【技术实现步骤摘要】
本专利技术涉及网络通信领域,尤其涉及一种灵活配置多通道DMA控制器的方法及装置。
技术介绍
集成电路设计中,存储器用来存储各种数据。主机,例如:CPU则需要经常读写存储器,把数据从存储器的某个地址搬移至其他存储器地址或其他芯片的数据存储地址,此时,存储器读写操作会占用CPU大量的时间和进程,使得CPU的使用效率变低。在此需求下,DMA技术应运而生,CPU可以在初始化DMA控制器后,由DMA控制器自主完成数据的存取搬移操作,而不再需要CPU的介入,极大地减轻了CPU的负担,也提高了数据存取的效率。DMA技术有普通模式和描述符模式之分。如图1所示,普通模式处理简单,DMA控制器包含一组控制寄存器和状态、中断寄存器;CPU将待传输数据的源地址、目的地址和数据长度配置到控制寄存器,并启动DMA操作。由DMA控制器根据以上的配置一次性自动完成数据的搬移,并修改相应的状态寄存器或产生中断信号。CPU查询状态寄存器或者接收中断信号以获得DMA控制器的状态,并进行后续处理。如图2所示,基于描述符的DMA操作,则相对更灵活。每个描述符都可以看作是一次普通DMA操作所对应的配置寄存器组,包括待传输数据的源地址,目的地址以及数据长度等信息;而多个描述符可以通过链表的形式连接在一起,所以每个描述符会对应一块数据原始存储区域和一块数据目的存储区域。如图3所示,CPU配置完成相应的描述符后,DMA控制器会自动完成读取描述符,进行数据搬移,改写状态寄存器或产生相应中断;而CPU可以在适当的时机响应中断或者查询状态寄存器来进行后续的处理。同时,描述符模式的DMA操作可以实现所谓的分散/ ...
【技术保护点】
一种灵活配置多通道DMA控制器的方法,其特征在于,所述方法包括:主机按照数据的搬移方向配置描述符,所述描述符由若干个描述符参数构成,所述描述符参数包括:类型描述字段、数据存储地址、中断控制字段、状态标识字段以及链表控制信息字段;所述数据存储地址为数据存储原地址或数据存储目的地址;主机对DMA控制器初始化,所述初始化包括:所述主机将描述符的存储地址及存储格式配置给所述DMA控制器,并启动所述DMA控制器;所述DMA控制器根据所述描述符的存储格式从所述描述符的存储地址中读取并解析描述符;根据所述描述符参数编辑整理并搬移数据;更新所述描述符参数,并根据描述符的中断控制字段判断是否发出中断信号以通知主机。
【技术特征摘要】
1.一种灵活配置多通道DMA控制器的方法,其特征在于,所述方法包括:主机按照数据的搬移方向配置描述符,所述描述符由若干个描述符参数构成,所述描述符参数包括:类型描述字段、数据存储地址、中断控制字段、状态标识字段以及链表控制信息字段;所述数据存储地址为数据存储原地址或数据存储目的地址;主机对DMA控制器初始化,所述初始化包括:所述主机将描述符的存储地址及存储格式配置给所述DMA控制器,并启动所述DMA控制器;所述DMA控制器根据所述描述符的存储格式从所述描述符的存储地址中读取并解析描述符;根据所述描述符参数编辑整理并搬移数据;更新所述描述符参数,并根据描述符的中断控制字段判断是否发出中断信号以通知主机。2.根据权利要求1所述的灵活配置多通道DMA控制器的方法,其特征在于,所述类型描述字段包括:类型定义,专用描述字段;所述类型定义包括:接收报文类型、发送报文类型、表项配置类型、表项读取类型以及信息收集类型;所述接收报文类型以及所述发送报文类型对应的专用描述字段均包括:接口选择、报文开始标志、报文结束标志、报文数据长度、报文CRC;所述表项配置类型对应的专用描述字段包括:接口选择、表项地址、表项数据格式、配置数据长度以及配置控制;所述表项读取类型对应的专用描述字段包括:接口选择、表项地址、表项数据格式、读取数据长度以及读取控制;所述信息收集类型包括:接口选择、信息数据格式、信息数据长度以及信息收集控制。3.根据权利要求2所述的灵活配置多通道DMA控制器的方法,其特征在于,更新的所述描述符参数包括:当前描述符对应的状态标识字段、专用描述字段。4.根据权利要求1所述的灵活配置多通道DMA控制器的方法,其特征在于,所述链表控制字段包括:下一描述符的地址以及当前描述符对应的虚拟通道号。5.根据权利要求1所述的灵活配置多通道DMA控制器的方法,其特征在于,所述数据的搬移方向包括两种,其中一种为:从外部的存储器到交换芯片,其中另一种为:从交换芯片到外部的存储器;所述方法具体包括:若数据的搬移方向为从外部的存储器到交换芯片,则描述符的数据存储地址为数据存储源地址,主机配置描述符中的数据存储源地址、类型描述字段、中断控制字段、状态标识字段以及链表控制信息字段的具体参数值;主机对DMA控制器初始化并启动DMA控制器后,所述DMA控制器根据描述符的存储格式从所述描述符的存储地址读取描述符,解析描述符中对应的具体参数值;根据描述符中的数据存储源地址,DMA控制器从外部存储器读取待搬移的数据,并根据描述符中的描述符参数编辑整理所述数据后,将其发送给交换芯片;更新所述描述符中的状态标识字段及部分专用描述字段,并根据描述符的中断控制字段判断是否发出中断信号以通知主机;若数据的搬移方向为从交换芯片到外部的存储器,则描述符中的数据存储地址为数据存储目的地址,主机配置描述符中的数据存储目的地址、类型描述字段、中断控制字段、状态标识字段以及链表控制信息字段;主机对DMA控制器初始化并启动DMA控制器后,所述DMA控制器根据描述符的存储格式从所述描述符的存储地址读取描述符,解析描述符中对应的具体参数值;根据所述描述符中的描述符参数,收集交换芯片内部的所述待搬移的数据,并根据描述符中的描述符参数编辑整理所述数据后,将其发送到描述符指定的数据存储目的地址;更新所述描述符中的状态标识字段及部分专用描述字段,并根据描述符的中断控制字段判断是否发出中断信号以通知主机。6.一种灵活配置多通道DMA控制器的装置,其特征在于,所述装置包括:外部的存储器,主机,...
【专利技术属性】
技术研发人员:贾复山,袁春建,李磊,
申请(专利权)人:盛科网络苏州有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。