CN102231142B - 一种带有仲裁器的多通道dma控制器 - Google Patents
一种带有仲裁器的多通道dma控制器 Download PDFInfo
- Publication number
- CN102231142B CN102231142B CN2011102049358A CN201110204935A CN102231142B CN 102231142 B CN102231142 B CN 102231142B CN 2011102049358 A CN2011102049358 A CN 2011102049358A CN 201110204935 A CN201110204935 A CN 201110204935A CN 102231142 B CN102231142 B CN 102231142B
- Authority
- CN
- China
- Prior art keywords
- dma
- register
- passage
- channel
- priority
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Abstract
本发明公开了一种带有仲裁器的多通道DMA控制器。现有控制器传输速度比较慢,不适合高速数据传输场合。本发明包括DMA引擎、2个主设备接口、从设备接口、通道仲裁器和寄存器堆。所述的主设备接口与总线相连,与DMA引擎相连;所述的从设备接口与总线相连,与DMA引擎相连;所述的通道仲裁器与DMA引擎相连,与多路开关相连,包括的寄存器有:仲裁策略寄存器、轮转算法寄存器、状态寄存器、固定优先级寄存器、轮转优先级寄存器;所述的寄存器堆与DMA引擎相连,与多路开关相连,分为主控制状态寄存器和各通道寄存器。本发明DMA传输速度较快,更加适合高速数据传输场合,拓展了应用范围。
Description
技术领域
本发明涉及一种DMA控制器,尤其涉及一种带有仲裁器的多通道DMA控制器。
背景技术
在以CPU为主控设备的数据处理系统和SOC芯片中,数据的传输通常采用3 种方式.①轮询方式:CPU周期性检测从设备的状态,在适当的时间从源设备中取出数据并写入目的设备.采用这种方式时,将占用大量的处理器时间,且数据传输速度受CPU指令执行时间的限制.②中断方式:当从设备需要进行数据传输时,向CPU发出中断请求,CPU响应后执行数据传输任务.采用这种方式时,CPU不必主动查询从设备状态,节省了部分处理器时间,但传输过程仍受CPU控制,并未提高数据传输速度.③直接存储器存取(direct memory access,DMA)方式。DMA是指数据传送时不需要CPU的介入,I/O设备和存储器之间直接进行大量数据信息交换的传输方法。它是由硬件设备代替CPU接管总线并负责数据传输,省去了由CPU负责传输时所必须的寻址指令。DMA传输方式与轮询及中断方式相比,具有传输速度快、I/O响应时间短、CPU额外开销小的明显优点,可使整个系统的性能大大提高。
图1是现有技术中常见的DMA系统的总体框图。CPU、DMA控制器、片内外存储器和高速I/O连接在高速总线上,各种低速外设连接在低速总线上,并且通过总线桥和高速总线相连。总线上的设备如果要进行DMA传输,则向DMA控制器发起请求,DMA控制器在获得总线使用权后,控制源设备和目的设备进行传输,并在传输结束后归还总线使用权。DMA传输过程中无需CPU参与,节省CPU的额外开销。
中国专利(申请号:200910080751,公开号:101504633)公开了一种多通道DMA控制器,该DMA控制器包括多个DMA通道模块和一个多路复用模块,每个DMA通道模块分别包括一个数据缓冲存储及其控制模块和一组控制寄存器,所有通道的数据缓冲存储及其控制模块都连接到一个多路复用模块。这种DMA控制器可以在一定程度上降低片上系统上总线仲裁块和存储单元的开销,并提高系统的重用性。
该中国专利所述设备有以下不足:①只有一个多路复用模块来进行多通道控制,无法应付多个通道同时发起DMA传输的情况,也没有灵活的仲裁策略可供选择;②每次DMA基本传输基本需要两个周期,传输速度比较慢,不适合高速数据传输场合。
发明内容
本发明的目的是克服现有技术的不足,提供一种可以工作在两组总线上的,带有仲裁器的多通道DMA控制器,以提高DMA传输的传输速度,提供更加灵活和合理的DMA多通道仲裁策略。
本发明包含六个子模块:DMA引擎、2个主设备接口、从设备接口、通道仲裁器和寄存器堆,其中:
所述的DMA引擎与DMA控制器中各个模块相连,负责控制和协调DMA控制器各模块的工作。
所述的主设备接口与总线相连,与DMA引擎相连。其接受DMA引擎的配置,并以总线上主设备身份控制源设备和目的设备之间完成DMA传输。
所述的从设备接口与总线相连,与DMA引擎相连。CPU可以通过从设备接口向DMA控制器中读写数据,配置DMA控制器中各种寄存器,检查当前DMA控制器状态。
所述的通道仲裁器与DMA引擎相连,与多路开关相连,包括的寄存器有:仲裁策略寄存器、轮转算法寄存器、状态寄存器、固定优先级寄存器、轮转优先级寄存器。通道仲裁器接受DMA引擎的配置,并在多个DMA 通道同时发起DMA 请求时,进行通道仲裁。通道仲裁器可以根据各通道的优先级选择下一个进行数据传输的通道,各通道的优先级可以事先确定,也可以由CPU和DMA控制器由特定的仲裁策略确定。
所述的寄存器堆与DMA引擎相连,与多路开关相连,分为主控制状态寄存器和各通道寄存器。主控制状态寄存器用于配置整个DMA传输设置;各通道寄存器可以修改和配置各通道源地址、目的地址、传输数据帧大小、工作模式以及优先级设置。
进一步地,上述带有仲裁器的多通道DMA控制器还具有以下特点:主设备接口包括一个AHB主设备接口,一个FIFO缓存,其中:
所述的AHB主设备接口和一组AHB总线相连,用于以主设备身份控制源设备和目的设备之间完成DMA传输;DMA引擎通过地址、传输数据、工作模式信息对AHB主设备接口进行配置。
所述的FIFO缓存接收从AHB主设备接口读入的数据,并向AHB主设备接口发送写出的数据,FIFO缓存设有FIFO空满标志位,防止溢出。
进一步地,上述带有仲裁器的多通道DMA控制器还具有以下特点: DMA引擎包括一个中断控制器、一个配置单元、一组配置寄存器,其中:
所述的配置单元接收来自从设备接口的信号,按照CPU的要求,修改或者读取配置寄存器、寄存器堆和通道仲裁器中的寄存器,实现改变通道配置、修改仲裁策略、配置传输信息的功能。
所述的中断控制器接收来自DMA传输发起设备的请求,然后向CPU发送中断,使CPU可以配置DMA控制器,并释放总线使用权。
所述的配置寄存器包含着DMA传输所需的配置信息,它可以由CPU通过从设备接口和配置单元直接修改,也可以通过MUX读取通道仲裁得到的通道配置信息,配置寄存器的内容输出给主设备接口,用于完成DMA传输。
本发明还提供一种基于带有仲裁器的多通道DMA控制器的通道仲裁策略,包括以下步骤:
(1)当两个或两个以上的通道同时发起DMA传输要求时,通道仲裁器开始工作。
(2)读取仲裁策略寄存器,确定要使用的仲裁算法:若使用轮转算法,则从步骤(3)到(5);若使用固定优先级,则从步骤(6)到(7);若使用不同服务分配比的轮转优先级算法,则从步骤(8)到(12)。
(3)读取轮转算法寄存器中的轮转顺序和状态寄存器中的前次仲裁结果。
(4)确定本次仲裁结果,确定的方法是根据轮转顺序和前次仲裁结果,确定本次轮转的优先级,然后选择本次进行传输的通道。
(5)输出仲裁结果,并将其保存在状态寄存器中,跳到步骤(13)。
(6)读取固定优先级寄存器中的优先级顺序。
(7)确定并输出仲裁结果,跳到步骤(13)。
(8)检查轮转优先级寄存器中是否有正在执行的优先级组顺序,若有跳到步骤(9),若没有跳到步骤(10)。
(9)根据已经有的值,确定并输出本次仲裁结果,跳到步骤(13)。
(10)读取轮转优先级寄存器中的服务分配比和不同优先级组的内容。
(11)计算并保存不同优先级组的顺序,计算的办法是通过调节不同优先级组出现的次数,确保最后得到要求的服务分配比。
(12)根据计算得到的值,确定并输出本次仲裁结果,跳到步骤(13)。
(13)根据仲裁结果,操作MUX使对应通道导通,将对应通道的源地址、目的地址、传输数据帧大小、工作模式信息输送到DMA引擎中。
本发明还提供一种基于带有仲裁器的多通道DMA控制器的二级流水线DMA传输方式,即使用DMA控制器的两个主设备接口,其中一个主设备接口通过读数据总线和源地址总线,从源设备读取数据,放入公共FIFO缓存,另一个主设备接口通过写数据总线和目的地址总线,将公共FIFO缓存中的数据写入目的设备。同时,DMA控制器也可以通过修改配置寄存器,选择只用一个主设备接口,进行传统的时分复用的DMA传输。
采用本发明的技术方案后,当多个DMA通道同时发起DMA传输请求时,通道仲裁器可以提供灵活、公平和多样的仲裁策略,满足了不同服务的要求;采用二级流水线的DMA传输,与传统的DMA传输相比,速度提高近一倍,更加适合高速数据传输场合,拓展了应用范围。
附图说明
图1是现有技术常见的DMA系统的总体框图;
图2是本发明改进的DMA系统的总体框图;
图3是本发明的DMA控制器的系统模块图;
图4是DMA控制器中主设备接口的结构和连接关系图;
图5是DMA控制器中通道仲裁器的工作流程图;
图6是DMA控制器中DMA引擎和从设备接口的结构和连接关系图。
具体实施方式
以下结合附图和具体实施方式对本发明做进一步的详细说明。
图2是本发明改进的DMA系统的总体框图。如图所示,系统中具有两组总线,两组总线的数据线分别作为读数据总线和写数据总线,两组总线的地址线分别作为源地址总线和目的地址总线。
图2还示出整个系统的结构,包括CPU、DMA控制器、片内外存储器、高速I/O、总线桥和低速外设,其中:
CPU连接在高速总线上,处理DMA控制器发送的DMA传输请求,赋予DMA控制器总线使用权。
DMA控制器连接在高速总线上,处理设备发起的DMA传输请求,向CPU申请总线使用权,全程负责DMA传输,在传输结束后归还总线使用权。
片内外存储器连接在高速总线上,包括片内RAM控制器、片内Flash控制器和存储器控制器,可以作为DMA传输的源设备或者目的设备。
高速I/O连接在高速总线上,包括USB控制器、蓝牙控制器等高速数据传输接口,可以作为DMA传输的源设备或者目的设备。
低速外设连接在低速总线上,并且通过总线桥和高速总线相连,包括I2C控制器、UART控制器等低速数据传输接口,可以作为DMA传输的源设备或者目的设备。
应当指出,上述结构可以使用在多种总线协议中,例如,AMBA总线和Wishbone总线等。AMBA总线规范是ARM公司设计的一种用于高性能嵌入式系统的总线标准;Wishbone总线是一种片上系统IP核互联体系结构,由OpenCores组织提出和维护。本发明中以AMBA总线规范为例,说明系统工作原理和过程。
图3是本发明的DMA控制器的系统模块图。如图所示,DMA控制器由DMA引擎、2个主设备接口、从设备接口、通道仲裁器和寄存器堆组成,其中:
DMA引擎是DMA控制器的核心模块,它控制和协调DMA控制器各模块的工作,修改或读取各种寄存器,根据各通道所配置的工作模式及预设优先级完成各种传输任务。
主设备接口是DMA控制器和总线之间的接口,用于在DMA控制器获得总线使用权后,以主设备身份控制源设备和目的设备之间完成DMA传输;系统中共有两个主设备接口,主设备接口1对应的一组总线是源地址总线和读数据总线,用于从源设备读取数据,主设备接近欧2对应的一组总线是目的地址总线和写数据总线,用于向目的设备写入数据。
从设备接口是DMA控制器和总线之间的接口,用于CPU向DMA控制器中读写数据,CPU以此修改或者读取DMA控制器中各种寄存器,检查当前DMA控制器状态或者配置DMA控制器以使DMA传输开始。系统共有两组总线,DMA控制器可以任选从设备接口1或者从设备接口2中的一个,与CPU进行通信。
通道仲裁器用于当多个DMA 通道同时发起DMA 请求时,进行通道仲裁。优先级仲裁器可以根据各通道的优先级选择下一个进行数据传输的通道,仲裁机制可以固定确定,也可以由CPU和DMA控制器由特定的仲裁策略确定。
寄存器堆分为主控制状态寄存器和各通道寄存器。主控制状态寄存器用于配置整个DMA传输设置;各通道寄存器可以修改和配置各通道源地址、目的地址、传输数据帧大小、工作模式以及优先级设置。
图4是DMA控制器中主设备接口的结构和连接关系图。如图所示,主设备接口包括一个AHB主设备接口,一个FIFO缓存,其中:
AHB主设备接口和一组总线相连,用于以主设备身份控制源设备和目的设备之间完成DMA传输;hrdata和hwdata是读写数据线,haddr是地址线,hresp表示从设备响应类型,hgrant表示总线的grant信号,hready表示当前传输完成,hlock用于总线锁定,hbusreq用于总线请求,hprot、hwrite、hsize、hburst和htrans都用于设置传输选项;DMA引擎通过地址、传输数据、工作模式信息等对AHB主设备接口进行配置。
FIFO缓存接收从AHB主设备接口传来的读数据hrdata,并发送到写数据hwrata,FIFO缓存设有FIFO空满标志位,防止溢出;DMA控制器中有两个主设备接口,分别用于从源设备读取数据和向目的设备写入数据,故两个主设备接口的FIFO缓存共用。
主设备接口根据DMA引擎的配置和读取的主控制状态寄存器中的值确定传输源地址、目的地址、传输数据帧大小、工作模式等,并由AHB主设备接口进行传输,传输中得到数据暂存在FIFO缓存中。
本发明的DMA控制器采用二级流水线传输方式,即具有两个主设备接口,可以同时在两组总线上传输数据,其中一个主设备接口从源设备读取数据,放入公共FIFO缓存,另一个主设备接口将公共FIFO缓存中的数据写入目的设备,与传统的使用一条总线进行DMA传输的方法相比,此方法节省一半时间。应当指出,DMA控制器也可以通过修改配置寄存器,选择只用一个主设备接口,进行传统的DMA传输。
图5是DMA控制器中通道仲裁器的工作流程图,包括如下步骤:
(1)当两个或两个以上的通道同时发起DMA传输要求时,通道仲裁器开始工作。
(2)读取仲裁策略寄存器,确定要使用的仲裁算法:若使用轮转算法,则从步骤(3)到(5);若使用固定优先级,则从步骤(6)到(7);若使用不同服务分配比的轮转优先级算法,则从步骤(8)到(12)。
(3)读取轮转算法寄存器中的轮转顺序和状态寄存器中的前次仲裁结果。
(4)确定本次仲裁结果,确定的方法是根据轮转顺序和前次仲裁结果,确定本次轮转的优先级,然后选择本次进行传输的通道。
(5)输出仲裁结果,并将其保存在状态寄存器中,跳到步骤(13)。
(6)读取固定优先级寄存器中的优先级顺序。
(7)确定并输出仲裁结果,跳到步骤(13)。
(8)检查轮转优先级寄存器中是否有正在执行的优先级组顺序,若有跳到步骤(9),若没有跳到步骤(10)。
(9)根据已经有的值,确定并输出本次仲裁结果,跳到步骤(13)。
(10)读取轮转优先级寄存器中的服务分配比和不同优先级组的内容。
(11)计算并保存不同优先级组的顺序,计算的办法是通过调节不同优先级组出现的次数,确保最后得到要求的服务分配比。
(12)根据计算得到的值,确定并输出本次仲裁结果,跳到步骤(13)。
(13)根据仲裁结果,操作MUX使对应通道导通,将对应通道的源地址、目的地址、传输数据帧大小、工作模式信息输送到DMA引擎中。
应当指出,工作流程中涉及到的仲裁策略寄存器、轮转算法寄存器、固定优先级寄存器和轮转优先级寄存器都可以通过从设备接口由CPU修改,这可以为仲裁过程提供多种选择。
轮转算法的示例如下,假设从轮转算法寄存器中读到的轮转顺序是通道2、通道1、通道0、通道3、通道2,从状态寄存器中读到的前次仲裁结果是通道1,则本次仲裁的优先级顺序是通道0、通道3、通道2、通道1。
不同分配比的轮转优先级算法的示例如下,假设从轮转优先级寄存器中读到的服务分配比是“通道0:通道1:通道2:通道3=4:3:2:1”,不同优先级组的内容是:
优先级组A:通道0、通道1、通道2、通道3;
优先级组B:通道1、通道2、通道3、通道0;
优先级组C:通道2、通道3、通道0、通道1;
优先级组D:通道3、通道0、通道1、通道2;
则在后面10个单位时间内,选择优先级组的次序应该是:优先级组A、优先级组B、优先级组A、优先级组C、优先级组B、优先级组A、优先级组D、优先级组A、优先级组B、优先级组C。
图6是DMA控制器中DMA引擎和从设备接口的结构和连接关系图。如图所示,DMA引擎主要由中断控制器、配置单元、配置寄存器组成,其中:
配置单元是DMA引擎的核心部分,它接收来自从设备接口的信号,按照CPU的要求,修改或者读取配置寄存器、寄存器堆和通道仲裁器中的寄存器,实现改变通道配置、修改仲裁策略、配置传输信息的功能。
中断控制器接收来自DMA传输发起设备的请求,然后向CPU发送中断,使CPU可以配置DMA控制器,并释放总线使用权。
配置寄存器包含着DMA传输所需的配置信息,它可以由CPU通过从设备接口和配置单元直接修改,也可以通过MUX读取通道仲裁得到的通道配置信息,配置寄存器的内容输出给主设备接口,用于完成DMA传输。
DMA引擎接收来自DMA传输发起设备的请求,向CPU发送中断,DMA传输发起设备也可以直接向CPU中断。CPU通过从设备接口修改配置寄存器等,然后赋予DMA控制器总线使用权。DMA引擎在得到总线使用权后,将配置寄存器中的值传输给主设备接口,控制主设备接口完成DMA传输,传输完成后交出总线使用权,并向CPU发送中断。
从设备接口是DMA控制器和总线之间的接口,用于CPU向DMA控制器中读写数据,CPU以此修改或者读取DMA控制器中各种寄存器,检查当前DMA控制器状态或者配置DMA控制器以使DMA传输开始。hrdata和hwdata是读写数据线,haddr是地址线,hready_resp和hready表示传输完成,hresp表示从设备响应类型,hsel是从设备选中信号,hwrite、hsize和htrans都用于设置传输选项。
以上所述仅为本发明的具体实施方式,并不用以限制本发明,任何本发明所属领域内的技术人员,在本发明揭露的技术范围内,所作的修改或替换,都应涵盖在本发明的保护范围之内。
Claims (4)
1.一种带有仲裁器的多通道DMA控制器,包括DMA引擎、通道仲裁器、寄存器堆、两个主设备接口和两个从设备接口,其特征在于:
所述的DMA引擎与通道仲裁器、寄存器堆、两个主设备接口、两个从设备接口均有连接,负责控制和协调DMA控制器各部分的工作;
所述的主设备接口与总线相连,与DMA引擎相连;其接受DMA引擎的配置,并以总线上主设备身份控制源设备和目的设备之间完成DMA传输;
所述的从设备接口与总线相连,与DMA引擎相连;CPU可以通过从设备接口向DMA控制器中读写数据,配置DMA控制器中各种寄存器,检查当前DMA控制器状态;
所述的通道仲裁器与DMA引擎相连,与多路开关相连,包括的寄存器有:仲裁策略寄存器、轮转算法寄存器、状态寄存器、固定优先级寄存器和轮转优先级寄存器;通道仲裁器接受DMA引擎的配置,并在多个DMA 通道同时发起DMA 请求时,进行通道仲裁;通道仲裁器可以根据各通道的优先级选择下一个进行数据传输的通道,各通道的优先级可以事先确定,也可以由CPU和DMA控制器由通道仲裁策略确定;
所述的寄存器堆与DMA引擎相连,与多路开关相连;寄存器堆分为主控制状态寄存器和各通道寄存器;主控制状态寄存器用于配置整个DMA传输设置;各通道寄存器可以修改和配置各通道源地址、目的地址、传输数据帧大小、工作模式以及优先级设置。
2.根据权利要求1所述的多通道DMA控制器,其特征在于:所述的主设备接口包括一个AHB主设备接口,一个FIFO缓存,其中:
所述的AHB主设备接口和一组AHB总线相连,用于以主设备身份控制源设备和目的设备之间完成DMA传输;DMA引擎通过地址、传输数据、工作模式信息对AHB主设备接口进行配置;
所述的FIFO缓存接收从AHB主设备接口读入的数据,并向AHB主设备接口发送写出的数据,FIFO缓存设有FIFO空满标志位,防止溢出。
3.根据权利要求1所述的多通道DMA控制器,其特征在于:所述的DMA引擎包括一个中断控制器、一个配置单元、一组配置寄存器,其中:
所述的配置单元接收来自从设备接口的信号,按照CPU的要求,修改或读取配置寄存器、寄存器堆和通道仲裁器中的寄存器;
所述的中断控制器接收来自DMA传输发起设备的请求,然后向CPU发送中断,使CPU可以配置DMA控制器,并释放总线使用权;
所述的配置寄存器包含着DMA传输所需的配置信息,它可以由CPU通过从设备接口和配置单元直接修改,也可以通过MUX读取通道仲裁得到的通道配置信息,配置寄存器的内容输出给主设备接口,用于完成DMA传输。
4.根据权利要求1所述的多通道DMA控制器,其特征在于:所述的通道仲裁策略,包括以下步骤:
(1)当两个或两个以上的通道同时发起DMA传输要求时,通道仲裁器开始工作;
(2)读取仲裁策略寄存器,确定要使用的仲裁算法:若使用轮转算法,则执行步骤(3)到(5);若使用固定优先级,则执行步骤(6)到(7);若使用不同服务分配比的轮转优先级算法,则执行步骤(8)到(12);
(3)读取轮转算法寄存器中的轮转顺序和状态寄存器中的前次仲裁结果;
(4)确定本次仲裁结果,确定的方法是根据轮转顺序和前次仲裁结果,确定本次轮转的优先级,然后选择本次进行传输的通道;
(5)输出仲裁结果,并将其保存在状态寄存器中,跳到步骤(13);
(6)读取固定优先级寄存器中的优先级顺序;
(7)确定并输出仲裁结果,跳到步骤(13);
(8)检查轮转优先级寄存器中是否有正在执行的优先级组顺序,若有跳到步骤(9),若没有跳到步骤(10);
(9)根据已经有的值,确定并输出本次仲裁结果,跳到步骤(13);
(10)读取轮转优先级寄存器中的服务分配比和不同优先级组的内容;
(11)计算并保存不同优先级组的顺序,计算的方法是通过调节不同优先级组出现的次数,确保最后得到要求的服务分配比;
(12)根据计算得到的值,确定并输出本次仲裁结果,跳到步骤(13);
(13)根据仲裁结果,操作MUX使对应通道导通,将对应通道的源地址、目的地址、传输数据帧大小、工作模式信息输送到DMA引擎中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011102049358A CN102231142B (zh) | 2011-07-21 | 2011-07-21 | 一种带有仲裁器的多通道dma控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011102049358A CN102231142B (zh) | 2011-07-21 | 2011-07-21 | 一种带有仲裁器的多通道dma控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102231142A CN102231142A (zh) | 2011-11-02 |
CN102231142B true CN102231142B (zh) | 2013-12-11 |
Family
ID=44843706
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011102049358A Expired - Fee Related CN102231142B (zh) | 2011-07-21 | 2011-07-21 | 一种带有仲裁器的多通道dma控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102231142B (zh) |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103106164A (zh) * | 2011-11-09 | 2013-05-15 | 深圳市德赛微电子技术有限公司 | 一种高效dma控制器 |
CN102495817A (zh) * | 2011-12-08 | 2012-06-13 | 成都林海电子有限责任公司 | 一种基于pci总线的高速数据传输方法 |
CN102567256B (zh) * | 2011-12-16 | 2015-01-07 | 龙芯中科技术有限公司 | 处理器系统及其多通道内存拷贝dma加速器和方法 |
CN103425434B (zh) * | 2012-05-14 | 2016-12-14 | 国民技术股份有限公司 | 一种多通道读/写ram的电路和方法 |
CN102841870B (zh) * | 2012-08-10 | 2015-04-15 | 无锡众志和达数据计算股份有限公司 | 基于高速串行总线的通用dma结构及预读方法 |
CN102841871B (zh) * | 2012-08-10 | 2015-06-17 | 无锡众志和达数据计算股份有限公司 | 基于高速串行总线的DMA结构的pipeline读写方法 |
CN103793342B (zh) * | 2012-11-02 | 2017-02-08 | 中兴通讯股份有限公司 | 一种多通道直接内存存取dma控制器 |
WO2014081457A1 (en) * | 2012-11-21 | 2014-05-30 | Coherent Logix Incorporated | Processing system with interspersed processors dma-fifo |
CN103970709A (zh) * | 2014-04-29 | 2014-08-06 | 国家电网公司 | 一种fft协处理器与主处理器通信方法 |
CN103995797A (zh) * | 2014-05-30 | 2014-08-20 | 国家电网公司 | 一种fft协处理器与主处理器通信方法 |
CN104572529A (zh) * | 2015-02-09 | 2015-04-29 | 浪潮电子信息产业股份有限公司 | 一种适用异构多核dsp的高效总线仲裁系统 |
CN104750639A (zh) * | 2015-04-09 | 2015-07-01 | 东南大学 | 基于amba总线的增强型dma控制器 |
CN105320632B (zh) * | 2015-09-23 | 2018-05-29 | 南京磐能电力科技股份有限公司 | 一种自主仲裁的高速差分总线实现方法 |
US9727506B2 (en) * | 2015-10-01 | 2017-08-08 | Sony Corporation | Communication system, communication system control method, and program |
US10303632B2 (en) * | 2016-07-26 | 2019-05-28 | Micron Technology, Inc. | Accessing status information |
US10114776B2 (en) * | 2016-11-03 | 2018-10-30 | Microchip Technology Incorporated | System arbiter with programmable priority levels |
CN106844250B (zh) * | 2017-02-14 | 2019-09-24 | 山东师范大学 | 一种混合调度的总线仲裁器和仲裁方法 |
CN106951388B (zh) * | 2017-03-16 | 2020-06-30 | 湖南博匠信息科技有限公司 | 一种基于PCIe的DMA数据传输方法及系统 |
CN107193767B (zh) * | 2017-05-25 | 2020-05-19 | 北京计算机技术及应用研究所 | 一种双控制器存储系统缓存镜像的数据传输系统 |
CN109240954A (zh) * | 2017-07-10 | 2019-01-18 | 恩智浦美国有限公司 | 具有触发序列发生器的dma控制器 |
CN108279927B (zh) * | 2017-12-26 | 2020-07-31 | 芯原微电子(上海)股份有限公司 | 可调整指令优先级的多通道指令控制方法及系统、控制器 |
CN109062661B (zh) * | 2018-07-10 | 2021-10-26 | 中国电子科技集团公司第三十八研究所 | 一种在线仿真调试器的多通道仲裁电路及其调度方法 |
CN109194442A (zh) * | 2018-08-08 | 2019-01-11 | 济南浪潮高新科技投资发展有限公司 | 一种串口数据转发装置、方法及系统 |
CN109471816B (zh) * | 2018-11-06 | 2021-07-06 | 西安微电子技术研究所 | 一种基于描述符的pcie总线dma控制器及数据传输控制方法 |
CN109766299A (zh) * | 2019-02-21 | 2019-05-17 | 苏州佳世达电通有限公司 | 一种电子装置及其数据传输方法 |
CN110765053B (zh) * | 2019-10-23 | 2023-03-10 | 山东华芯半导体有限公司 | 一种n-m axi总线控制器及其可配置仲裁机制实现方法 |
CN110990310B (zh) * | 2019-12-19 | 2020-11-24 | 山东方寸微电子科技有限公司 | 一种设备端sd控制器、控制方法及电子设备 |
CN112765059A (zh) * | 2021-01-20 | 2021-05-07 | 苏州浪潮智能科技有限公司 | 一种基于fpga的dma设备及dma数据搬移方法 |
CN112817885A (zh) * | 2021-01-29 | 2021-05-18 | 联想(北京)信息技术有限公司 | 一种数据访问控制方法、可编程逻辑器件及电子设备 |
CN113064709B (zh) * | 2021-04-09 | 2023-04-07 | 思澈科技(上海)有限公司 | 一种适用于mcu芯片的任务调度方法及系统 |
CN113301285A (zh) * | 2021-05-11 | 2021-08-24 | 深圳市度信科技有限公司 | 多通道数据传输方法、装置及系统 |
CN113468084B (zh) * | 2021-05-28 | 2023-08-29 | 北京时代民芯科技有限公司 | 一种多模式dma数据传输系统 |
CN116028404A (zh) * | 2021-10-26 | 2023-04-28 | 北京希姆计算科技有限公司 | 一种dma配置方法和配置电路 |
CN114490460B (zh) * | 2022-03-31 | 2022-06-28 | 成都启英泰伦科技有限公司 | 一种用于asic的flash控制器及其控制方法 |
CN115114201A (zh) * | 2022-06-27 | 2022-09-27 | 山东云海国创云计算装备产业创新中心有限公司 | 一种fsi控制器和包括其的bmc芯片 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1498369A (zh) * | 2001-03-30 | 2004-05-19 | 使用带有软高速缓存的芯片上系统的系统与方法 | |
CN1954304A (zh) * | 2004-03-10 | 2007-04-25 | 思科技术公司 | Pvdm(分组语音数据模块)通用总线协议 |
CN1961300A (zh) * | 2004-06-30 | 2007-05-09 | 英特尔公司 | 使用集成dma引擎进行高性能易失性磁盘驱动器存储器访问的装置和方法 |
CN101504633A (zh) * | 2009-03-27 | 2009-08-12 | 北京中星微电子有限公司 | 一种多通道dma控制器 |
CN101901200A (zh) * | 2010-08-11 | 2010-12-01 | 烽火通信科技股份有限公司 | 一种基于双AHB Master接口的片上DMA控制器实现方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6701405B1 (en) * | 1999-10-01 | 2004-03-02 | Hitachi, Ltd. | DMA handshake protocol |
US8218770B2 (en) * | 2005-09-13 | 2012-07-10 | Agere Systems Inc. | Method and apparatus for secure key management and protection |
CN100470525C (zh) * | 2007-03-07 | 2009-03-18 | 威盛电子股份有限公司 | 直接存储器访问控制装置及控制其传输的方法 |
CN100527111C (zh) * | 2007-09-29 | 2009-08-12 | 北京时代民芯科技有限公司 | 一种片上dma电路及其实现方法 |
-
2011
- 2011-07-21 CN CN2011102049358A patent/CN102231142B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1498369A (zh) * | 2001-03-30 | 2004-05-19 | 使用带有软高速缓存的芯片上系统的系统与方法 | |
CN1954304A (zh) * | 2004-03-10 | 2007-04-25 | 思科技术公司 | Pvdm(分组语音数据模块)通用总线协议 |
CN1961300A (zh) * | 2004-06-30 | 2007-05-09 | 英特尔公司 | 使用集成dma引擎进行高性能易失性磁盘驱动器存储器访问的装置和方法 |
CN101504633A (zh) * | 2009-03-27 | 2009-08-12 | 北京中星微电子有限公司 | 一种多通道dma控制器 |
CN101901200A (zh) * | 2010-08-11 | 2010-12-01 | 烽火通信科技股份有限公司 | 一种基于双AHB Master接口的片上DMA控制器实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102231142A (zh) | 2011-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102231142B (zh) | 一种带有仲裁器的多通道dma控制器 | |
EP2600254B1 (en) | Device directed memory barriers | |
CN103198856B (zh) | 一种ddr控制器及请求调度方法 | |
CN104520932B (zh) | 闪存存储器控制器 | |
JP4895183B2 (ja) | メモリコントローラ | |
US8103816B2 (en) | Technique for communicating interrupts in a computer system | |
CN108279927B (zh) | 可调整指令优先级的多通道指令控制方法及系统、控制器 | |
CN109308283B (zh) | 一种SoC片上系统及其外设总线切换方法 | |
WO2002069158A1 (en) | A multi-service system-on-chip | |
GB2460735A (en) | Bus Fabric for Embedded System Comprising Peer-to-Peer Communication Matrix | |
KR20120092176A (ko) | 멀티프로세서 완전 상호접속 방법 및 시스템 | |
CN106933760A (zh) | 一种基于axi协议的dma控制器及数据上传方法 | |
CN101133386A (zh) | 用于主机控制器上的独立和并发数据传送的方法和装置 | |
US20100017544A1 (en) | Direct memory access controller and data transmitting method of direct memory access channel | |
JP2012008919A (ja) | 情報処理装置 | |
US6859852B2 (en) | Immediate grant bus arbiter for bus system | |
CN110188059A (zh) | 数据有效位统一配置的流控式fifo缓存结构及方法 | |
CN100517283C (zh) | 先进高性能系统总线连接装置及先进高性能系统总线装置 | |
US8244994B1 (en) | Cooperating memory controllers that share data bus terminals for accessing wide external devices | |
CN102591817B (zh) | 一种多总线桥控制器及其实现方法 | |
US20160314086A1 (en) | Secure digital host controller virtualization | |
US20140075082A1 (en) | Multi-core integrated circuit configurable to provide multiple logical domains | |
CN105930222B (zh) | 错误响应电路、半导体集成电路以及数据传输控制方法 | |
US7668996B2 (en) | Method of piggybacking multiple data tenures on a single data bus grant to achieve higher bus utilization | |
CN109522056A (zh) | VxWorks系统下大容量存储设备的主机控制器驱动实现方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20131211 Termination date: 20150721 |
|
EXPY | Termination of patent right or utility model |