CN101634975B - 一种实现dma数据传输的方法及装置 - Google Patents
一种实现dma数据传输的方法及装置 Download PDFInfo
- Publication number
- CN101634975B CN101634975B CN2009100419762A CN200910041976A CN101634975B CN 101634975 B CN101634975 B CN 101634975B CN 2009100419762 A CN2009100419762 A CN 2009100419762A CN 200910041976 A CN200910041976 A CN 200910041976A CN 101634975 B CN101634975 B CN 101634975B
- Authority
- CN
- China
- Prior art keywords
- dma
- transmission
- read
- write operation
- module
- 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
Landscapes
- Bus Control (AREA)
Abstract
本发明涉及实现DMA数据传输的方法及装置,其传输过程为:把总的DMA传输分割成若干个DMA传输单元后再逐个传输;每一DMA传输单元的传输完成后发送一个中断,然后获取中断并累计DMA传输数据量大小,同时查询是否存在I/O读写操作请求,若有则响应I/O读写请求,等I/O读写操作完成后清除中断标识,若无I/O读写操作请求则在本次DMA传输单元的传输完成后清除中断标识;中断标识清除后启动下一个DMA传输单元的传输,直至总的DMA传输完成。本发明在海量数据DMA过程中仍然能对设备进行快速的I/O读写操作。
Description
技术领域
本发明涉及一种不影响设备普通I/O读写操作快速实现的海量数据DirectMemory Access(直接存储器访问,以下简称DMA)传输的方法及装置。
背景技术
在含有中央处理器(以下简称CPU)的***中,为了提高***数据传输效率,在进行外设与存储器之间大量数据传输操作时,通常通过PCIE接口,采用DMA方式实现对海量数据的快速传输操作。DMA操作主要通过DMA控制器来实现,DMA控制器在传输数据时,通过硬件逻辑电路用固定顺序发地址和读/写信号来实现高速数据传输;在此过程中,数据不经过CPU而是直接在外设与存储器之间传输。
在现有技术中,在DMA数据传输过程中,DMA控制器占有PCIE总线,CPU对设备进行I/O读写操作。由于在DMA传输数据过程中PCIE总线被DMA控制器占有,所以该情况下是不能对设备进行I/O读写操作的,否则会造成***死机或者崩溃。在设备DMA传输过程中,如果需要进行I/O读写操作,目前的方法是等待DMA传输完成,释放总线控制权,CPU获取总线控制权后再完成I/O读写操作。目前的这种方法在DMA传输数据量大的情况下,I/O读写操作时间延迟将会非常严重。例如总线传输速度为100兆字节/秒,一次DMA传输为10兆字节数据,完成该次DMA操作时间约100毫秒,假设在DMA刚启动时应用程序需要对设备进行一次I/O读写操作,本次I/O读写操作必须等待本次DMA完成再进行,延迟时间至少100毫秒。在高速采集***中,延时100毫秒是非常严重的,所以解决或改善这个问题有深远的现实意义。
发明内容
本发明的目的主要是解决上述现有技术所存在的问题,提供一种实现DMA数据传输的方法及装置,在海量数据DMA过程中仍然能对设备进行快速的I/O读写操作。
本发明采用如下技术方案实现上述目的:实现DMA数据传输的方法,其传输过程为:DMA传输模块把DMA请求传输的总数据分割成若干个DMA传输单元后再通过通用DMA控制器逐个传输;每一DMA传输单元的传输完成后通用DMA控制器发送一个中断给DMA传输模块,然后DMA传输模块获取中断并累计DMA传输数据量大小,同时中断处理模块查询是否存在I/O读写操作请求,若有则响应I/O读写请求,等I/O读写操作完成后清除中断标识,若无I/O读写操作请求则中断处理模块直接清除中断标识;中断标识清除后启动下一个DMA传输单元的传输,直至DMA请求传输的总数据传输完成。
具体地,上述实现DMA数据传输的方法包括如下步骤:
步骤1:DMA传输控制模块收到DMA传输请求并根据DMA传输请求把发起DMA操作的源地址、目标地址、DMA传输的总大小和每个DMA传输单元的大小发送到DMA传输模块,同时设置每个DMA传输单元的大小;
步骤2:DMA传输模块根据设定好的每个DMA传输单元传输数据的大小把DMA请求传输的总数据请求分成一个或多个DMA传输单元;
步骤3:DMA传输模块根据顺序依次把各个DMA传输单元发送给通用DMA控制器进行DMA传输操作;同时I/O操作控制模块在DMA数据传输过程中,收到I/O读写操作请求,则把该I/O读写操作请求放入I/O队列中;
步骤4:通用DMA控制器每完成一个DMA传输单元的传输就会发送一个中断给DMA传输模块;DMA传输模块收到此中断后,判断DMA请求传输的总数据是否传输结束,并修改DMA传输模块的DMA参数寄存器里所存储的已完成数据传输数量,产生一个中断给中断处理模块;
步骤5:中断处理模块接收到DMA传输模块发送的中断后,若DMA请求传输的总数据没有传输完成则查询I/O队列,如果存在I/O读写操作请求,则I/O读写操作控制模块把I/O队列的I/O读写操作请求发送给I/O读写操作模块,等待I/O读写操作完成后,中断处理模块清除DMA中断标识,执行步骤6;如果无I/O读写操作请求,则中断处理模块直接清除DMA中断标识,执行步骤6;若DMA请求传输的总数据已经传输完成,清除DMA中断标识,DMA数据传输结束;
步骤6:DMA传输模块等待DMA中断标识被清除,当中断标识被清除后,则启动下一个DMA传输单元的传输,执行步骤7;
步骤7:执行步骤3、步骤4、步骤5、步骤6,直到DMA请求传输的总数据传输完成,结束。
优选地,步骤1所述DMA传输单元的大小按下面的方法计算:
***传输的速度为vMB/秒,每个I/O操作等待的最大时间为tmax秒,每次DMA传输的数据量为dMB,每个DMA传输单元的大小da为:da=v*tmax MB;当da>d则每个DMA传输单元的大小为d,当da≤d则每个DMA传输单元的大小为da。
本发明的实现DMA数据传输的装置,其特征在于:包括设备驱动模块和DMA模块;
所述设备驱动模块包括:DMA传输控制模块,用来为接收的DMA传输请求配置目的地址、源地址、DMA传输的总大小等信息,同时根据需要设置每个DMA传输单元的大小,所述DMA传输单元的大小按下面的方法计算:***传输的速度为vMB/秒,每个I/O操作等待的最大时间为tmax秒,每次DMA传输的数据量为dMB,每个DMA传输单元的大小da为:da=v*tmax MB;当da>d则每个DMA传输单元的大小为d,当da≤d则每个DMA传输单元的大小为da;最后把配置完成的请求发送给DMA传输模块;I/O读写操作控制模块,用于接收I/O读写操作请求,判断当前DMA请求传输的总数据是否已传输完成,并根据判断结果把I/O读写操作请求放入I/O队列或者直接发送给I/O读写操作模块;以及中断处理模块,用于响应DMA中断与清除DMA中断标识,当接收到中断后,若DMA请求传输的总数据没有传输完成则查询I/O队列,如果存在I/O读写操作请求,则等待I/O读写操作完成后,中断处理模块清除DMA中断标识;如果无I/O读写操作请求,则中断处理模块直接清除DMA中断标识;中断处理模块清除DMA中断标识过程:中断处理模块需要清除DMA中断标识时,发送一个I/O请求给主控模块,主控模块把该I/O请求发送到I/O读写控制模块,然后I/O读写模块发送到DMA传输模块,通过写DMA传输模块的中断寄存器实现清除中断。
所述DMA模块包括:DMA传输模块,包含DMA参数寄存器与中断寄存器,DMA参数寄存器用于统计DMA传输完成数量;DMA传输模块接收DMA传输控制模块发送的DMA传输请求,把DMA请求传输的总数据根据设定好的每个DMA传输单元传输数据的大小分割成若干个DMA传输单元后依次发送给通用DMA控制器进行DMA传输操作,并在每个DMA传输单元传输完成后产生DMA中断;I/O读写操作模块,用于接收I/O读写操作控制模块发送的I/O读写操作请求,并根据该I/O读写操作请求完成相应的读写操作;以及通用DMA控制器,用于根据DMA传输模块的要求完成相应数据传输操作。
所述设备驱动模块还包括:主控模块,用于接收***的DMA传输请求与I/O读写操作请求这两类请求,并把DMA传输请求发送给DMA传输控制模块,把I/O读写操作请求发送给I/O读写操作控制模块。
本发明与现有技术相比,具有如下优点及有益效果:由于每个海量DMA传输都分割成为小于或等于指定DMA传输单元大小的DMA传输单元。用户程序发送I/O读写操作请求,在完成1个DMA传输单元传输后,即可中断DMA传输,响应该I/O读写操作请求,大大提高了响应I/O读写操作的速度。例如假定总线传输速度200兆字节/秒,应用程序请求需要在0.005秒响应I/O读写操作请求,一次DMA传输10兆字节,通过计算,容易得知DMA传输单元大小应该为1兆字节,把该次DMA传输分为10个1兆字节大小的DMA传输单元。1兆字节数据传输5毫秒,响应该次I/O读写操作请求等待时间5毫秒,满足应用程序请求的要求。
附图说明
图1是本发明的设备驱动模块与DMA模块连接结构示意图;
图2是本发明的传输流程示意图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
实施例
如图1所示,本发明主要包括硬件模块与软件模块,硬件模块指DMA模块,软件模块指设备驱动模块。
在本实施例中,设备驱动模块指设备windows驱动。设备驱动模块包括主控模块、DMA传输控制模块、I/O读写操作控制模块以及中断处理模块。主控模块分别与DMA传输控制模块、I/O读写操作控制模块、中断处理模块连接;DMA传输控制模块与DMA模块的DMA传输模块连接;I/O读写操作控制模块与DMA模块的I/O读写操作模块连接;中断处理模块与DMA模块的DMA传输模块连接。
主控模块负责接收***发送的应用程序请求,并对应用请求的类型进行判断;所述应用程序请求即I/O Request Package(I/O请求包,以下简称IRP),IRP 的类型分为DMA传输请求(也称DMA IRP)与I/O读写操作请求(也称寄存器IRP);若是DMA IRP,主控模块将DMA IRP发送到DMA传输控制模块;若是I/O读写操作请求,则将其发送到I/O读写操作控制模块。DMA传输控制模块用来为接收的DMA传输请求配置目的地址、源地址、DMA传输的总大小等信息,同时根据需要设置每个DMA传输单元的大小,最后把配置完成的请求发送给DMA传输模块。I/O读写操作控制模块用于接收I/O读写操作请求,判断当前DMA请求传输的总数据是否已传输完成,并根据判断结果把I/O读写操作请求放入I/O队列或者直接发送给I/O读写操作模块。中断处理模块用于响应DMA中断与清除DMA中断标志。
DMA模块包括DMA传输模块、通用DMA控制器、I/O读写操作模块。DMA传输模块与通用DMA控制器连接;通用DMA控制器与外部设备的外部数据源连接;I/O读写操作模块与DMA传输模块、外部设备的外部数据源连接。DMA传输模块负责接收DMA传输控制模块发送的DMA传输请求,把DMA请求传输的总数据请求分割成若干个DMA传输单元后依次发送给通用DMA控制器进行DMA传输操作,并在每个DMA传输单元传输完成后产生DMA中断。通用DMA控制器主要根据DMA传输模块的要求完成DMA传输控制工作,例如总线申请、传输控制、释放总线等等。所述I/O读写操作模块接收I/O读写操作控制模块发送的I/O读写操作请求,并完成I/O读写操作请求的设备读写操作。I/O读写操作模块用于接收I/O读写操作控制模块发送的I/O读写操作请求,并根据该I/O读写操作请求完成相应的读写操作。
此外,DMA传输模块还设有DMA参数寄存器,用于存储DMA传输过程中已完成数据传输数量。
如图2所示,本发明整体实现DMA数据传输的方法步骤描述如下:
步骤1:驱动模块的DMA传输控制模块收到DMA传输请求(IRP),根据DMA传输请求把发起DMA操作的源地址、目标地址、DMA传输的总大小和每个DMA传输单元的大小发送到DMA传输模块;
步骤2:DMA传输模块根据设定的每个DMA传输单元传输数据的大小信息,把DMA请求传输的总数据请求分成一个或多个DMA传输单元,一个或多个DMA传输单元传输总和等于DMA请求传输的总数据请求的传输大小;
步骤3:DMA传输模块根据顺序依次把各个DMA传输单元发送给通用DMA控制器进行DMA传输操作;同时I/O操作控制模块在DMA数据传输过 程中,收到I/O读写操作请求(IRP),则把该I/O读写操作请求放入I/O队列中;
步骤4:通用DMA控制器每完成一个DMA传输单元的传输就会发送一个中断给DMA传输模块;DMA传输模块收到此中断后,判断DMA请求传输的总数据是否传输结束,判断方法是首先读取DMA传输模块的DMA参数寄存器(Fin)里所存储的已完成数据传输数量F,把此数量F和需要传输数据的总大小T(Total)比较,当F<T,则DMA请求传输的总数据没有传输完成,当F=T,则DMA请求传输的总数据已经传输完成;并修改DMA传输模块的DMA参数寄存器里所存储的已完成数据传输数量,产生一个中断给中断处理模块;
步骤5:中断处理模块接收到DMA传输模块发送的中断后,当DMA请求传输的总数据没有传输完成,查询I/O队列,如果存在I/O读写操作请求,则I/O读写操作控制模块把I/O队列的I/O读写操作请求发送给I/O读写操作模块。等待I/O读写操作完成后,中断处理模块清除DMA中断标识。如果无I/O读写操作请求,则中断处理模块直接清除DMA中断标识。当DMA请求传输的总数据传输完成,中断处理模块清除中断标识,转到步骤7;
步骤6:DMA传输模块等待DMA中断标识被清除,当中断标识被清除后,则启动下一个DMA传输单元的传输;
步骤7:执行步骤3、步骤4、步骤5、步骤6,直到DMA请求传输的总数据传输完成,结束。
通过以上步骤,在保证DMA传输的前提下,实现了快速设备I/O读写操作。
本发明可应用在PCIE_1总线的超高清图像采集设备。该设备通过高清摄像头采集数据,然后把采集的数据通过PCIE总线传输到PC机显示。摄像头采集的是1560x1920分辨率RGB图像,一帧图像大小约14兆字节大小,设备PCIE传输速率为150兆字节/秒,最多传输图像帧率10帧/秒。摄像头在采集过程中,需要不断调整传感器参数(例如调整快门、白平衡、RGB分量、曝光等),得到更加合适的图像。用户程序要求在0.008秒内响应I/O读写请求(例如调整快门、白平衡、RGB分量、曝光等);根据前面提供的计算公式,可以得到每个DMA传输单元传输的大小为1.2(150*0.008)兆字节,小于本次DMA传输大小14兆字节,所以每个DMA传输单元的大小为1.2兆字节,一个分为12个DMA传输单元,第12个DMA单元的大小为0.8(14-1.2*11)兆字节。以上可以看出,DMA过程中,应用程序的I/O读写请求延迟0.008秒完成;如果利用现有技术,以上响应需要延迟0.0933(14/150)秒完成。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (6)
1.一种实现DMA数据传输的方法,其特征在于传输过程为:DMA传输模块把DMA请求传输的总数据分割成若干个DMA传输单元后再通过通用DMA控制器逐个传输;每一DMA传输单元的传输完成后通用DMA控制器发送一个中断给DMA传输模块,然后DMA传输模块获取中断并累计DMA传输数据量大小,同时中断处理模块查询是否存在I/O读写操作请求,若有则中断处理模块响应I/O读写请求,等I/O读写操作完成后清除中断标识,若无I/O读写操作请求则中断处理模块直接清除中断标识;中断标识清除后启动下一个DMA传输单元的传输,直至DMA请求传输的总数据传输完成;具体包括如下步骤:
步骤1:DMA传输控制模块收到DMA传输请求并根据DMA传输请求把发起DMA操作的源地址、目标地址和DMA传输的总大小发送到DMA传输模块,同时设置每个DMA传输单元的大小,所述DMA传输单元的大小按下面的方法计算:***传输的速度为vMB/秒,每个I/O操作等待的最大时间为tmax秒,每次DMA传输的数据量为dMB,每个DMA传输单元的大小da为:da=v*tmaxMB;当da>d则每个DMA传输单元的大小为d,当da≤d则每个DMA传输单元的大小为da;
步骤2:DMA传输模块根据设定好的每个DMA传输单元传输数据的大小把DMA请求传输的总数据分成一个或多个DMA传输单元;
步骤3:DMA传输模块根据顺序依次把各个DMA传输单元发送给通用DMA控制器进行DMA传输操作;同时I/O操作控制模块在DMA数据传输过程中,收到I/O读写操作请求,则把该I/O读写操作请求放入I/O队列中;
步骤4:通用DMA控制器每完成一个DMA传输单元的传输操作就发送一个中断给DMA传输模块,DMA传输模块收到此中断后,判断DMA请求传输的总数据是否传输结束,并修改DMA传输模块的DMA参数寄存器里所存储的已完成数据传输数量;同时产生一个中断给中断处理模块;
步骤5:中断处理模块接收到DMA传输模块发送的中断后,若DMA请求传输的总数据没有传输完成则查询I/O队列,如果存在I/O读写操作请求,则I/O读写操作控制模块把I/O队列的I/O读写操作请求发送给I/O读写操作模块,等待I/O读写操作完成后,中断处理模块清除DMA中断标识,执行步骤6;如果无I/O读写操作请求,则中断处理模块直接清除DMA中断标识,执行步骤6;若DMA请求传输的总数据已经传输完成,则DMA数据传输结束;
步骤6:DMA传输模块等待DMA中断标识被清除,当中断标识被清除后,则启动下一个DMA传输单元的传输,执行步骤7;
步骤7:执行步骤3、步骤4、步骤5、步骤6,直到DMA请求传输的总数据传输完成。
2.根据权利要求1所述的实现DMA数据传输的方法,其特征在于:所述DMA传输请求和I/O读写操作请求均由主控模块接收,主控模块将DMA传输请求发送给DMA传输控制模块,而将I/O读写操作请求发送给I/O操作控制模块。
3.根据权利要求1所述的实现DMA数据传输的方法,其特征在于步骤5具体为:中断处理模块接收到DMA传输模块发送的中断后,首先读取DMA传输模块的DMA寄存器里所存储的已完成数据传输数量F,把此数量F和需要传输数据的总大小T比较,当F<T时则DMA请求传输的总数据没有传输完成,查询I/O队列,如果存在I/O读写操作请求,则I/O读写操作控制模块把I/O队列的I/O读写操作请求发送给I/O读写操作模块,等待I/O读写操作完成后,中断处理模块清除DMA中断标识;如果无I/O读写操作请求,则中断处理模块直接清除DMA中断标识;当F=T时则DMA请求传输的总数据已经传输完成,转到步骤6。
4.根据权利要求1所述方法实现DMA数据传输的装置,其特征在于:包括设备驱动模块和DMA模块;
所述设备驱动模块包括:
DMA传输控制模块,用来为接收的DMA传输请求配置目的地址、源地址、DMA传输的总大小等信息,同时设置每个DMA传输单元的大小,最后把配置完成的请求发送给DMA传输模块;所述DMA传输单元的大小按下面的方法计算:***传输的速度为vMB/秒,每个I/O操作等待的最大时间为tmax秒,每次DMA传输的数据量为dMB,每个DMA传输单元的大小da为:da=v*tmax MB;当da>d则每个DMA传输单元的大小为d,当da≤d则每个DMA传输单元的大小为da;
I/O读写操作控制模块,用于接收I/O读写操作请求,判断当前DMA请求传输的总数据是否已传输完成,并根据判断结果把I/O读写操作请求放入I/O队列或者直接发送给I/O读写操作模块;以及
中断处理模块,用于响应DMA中断与清除DMA中断标志,当接收到中断后,若DMA请求传输的总数据没有传输完成则查询I/O队列,如果存在I/O读写操作请求,则等待I/O读写操作完成后,中断处理模块清除DMA中断标识;如果无I/O读写操作请求,则中断处理模块直接清除DMA中断标识;
所述DMA模块包括:
DMA传输模块,用于接收DMA传输控制模块发送的DMA传输请求,把DMA请求传输的总数据根据设定好的每个DMA传输单元传输数据的大小分割成若干个DMA传输单元后依次发送给通用DMA控制器进行DMA传输操作,并在每个DMA传输单元传输完成后产生DMA中断;
I/O读写操作模块,用于接收I/O读写操作控制模块发送的I/O读写操作请求,并根据该I/O读写操作请求完成相应的读写操作;以及
通用DMA控制器,用于根据DMA传输模块的要求完成相应数据传输操作。
5.根据权利要求4所述的实现DMA数据传输的装置,其特征在于所述设备驱动模块还包括:主控模块,用于接收***的DMA传输请求与I/O读写操作请求这两类应用程序请求,并把DMA传输请求发送给DMA传输控制模块,把I/O读写操作请求发送给I/O读写操作控制模块。
6.根据权利要求4所述的实现DMA数据传输的装置,其特征在于所述DMA模块还设有用于存储DMA传输过程中已完成数据传输数量的DMA参数寄存器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100419762A CN101634975B (zh) | 2009-08-20 | 2009-08-20 | 一种实现dma数据传输的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100419762A CN101634975B (zh) | 2009-08-20 | 2009-08-20 | 一种实现dma数据传输的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101634975A CN101634975A (zh) | 2010-01-27 |
CN101634975B true CN101634975B (zh) | 2011-09-14 |
Family
ID=41594168
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100419762A Expired - Fee Related CN101634975B (zh) | 2009-08-20 | 2009-08-20 | 一种实现dma数据传输的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101634975B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102169467A (zh) * | 2010-06-22 | 2011-08-31 | 上海盈方微电子有限公司 | 一种离散式外设dma传输方法和*** |
US9195623B2 (en) | 2010-06-23 | 2015-11-24 | International Business Machines Corporation | Multiple address spaces per adapter with address translation |
US8635430B2 (en) | 2010-06-23 | 2014-01-21 | International Business Machines Corporation | Translation of input/output addresses to memory addresses |
US8615645B2 (en) | 2010-06-23 | 2013-12-24 | International Business Machines Corporation | Controlling the selectively setting of operational parameters for an adapter |
US9213661B2 (en) | 2010-06-23 | 2015-12-15 | International Business Machines Corporation | Enable/disable adapters of a computing environment |
US9342352B2 (en) | 2010-06-23 | 2016-05-17 | International Business Machines Corporation | Guest access to address spaces of adapter |
KR102145420B1 (ko) * | 2013-07-25 | 2020-08-18 | 삼성전자주식회사 | 데이터 전송 속도를 변경하는 스토리지 시스템 및 그것의 데이터 전송 속도 변경 방법 |
CN105260332B (zh) * | 2015-09-09 | 2018-04-20 | 北京三未信安科技发展有限公司 | 一种对cpld数据包进行有序存储的方法及*** |
CN106354556B (zh) * | 2016-08-26 | 2020-03-27 | 深圳市优必选科技有限公司 | 一种音频传输方法及电子装置 |
CN109525473B (zh) * | 2018-11-28 | 2021-05-04 | 深圳市元征科技股份有限公司 | 一种mcu扩展can方法、***、mcu及计算机介质 |
CN111506256B (zh) * | 2019-01-31 | 2023-03-28 | 睿宽智能科技有限公司 | 减少写入效能变化并防止io阻塞的方法 |
CN109857686B (zh) * | 2019-03-26 | 2020-12-29 | 北京简约纳电子有限公司 | 一种dma数据同步传输变异步传输的方法 |
CN111782562B (zh) * | 2020-07-22 | 2024-05-17 | Oppo广东移动通信有限公司 | 数据传输方法、dma控制器、npu芯片及计算机设备 |
CN113946527B (zh) * | 2021-09-30 | 2023-06-20 | 中国船舶集团有限公司第七二四研究所 | 一种基于PCIe总线的多通道DMA交互设计方法 |
CN115658571B (zh) * | 2022-11-16 | 2023-02-28 | 浪潮电子信息产业股份有限公司 | 一种数据传输方法、装置、电子设备及介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005092780A (ja) * | 2003-09-19 | 2005-04-07 | Matsushita Electric Ind Co Ltd | リアルタイムプロセッサシステム及び制御方法 |
JP2005128931A (ja) * | 2003-10-27 | 2005-05-19 | Kyocera Mita Corp | Dma転送装置 |
CN1333333C (zh) * | 2005-03-16 | 2007-08-22 | 西安电子科技大学 | 码流播放卡和码流采集卡的驱动方法 |
CN100527111C (zh) * | 2007-09-29 | 2009-08-12 | 北京时代民芯科技有限公司 | 一种片上dma电路及其实现方法 |
-
2009
- 2009-08-20 CN CN2009100419762A patent/CN101634975B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN101634975A (zh) | 2010-01-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101634975B (zh) | 一种实现dma数据传输的方法及装置 | |
US7640374B2 (en) | Data transfer apparatus by direct memory access controller | |
CN100464318C (zh) | 一种实现高效dma传输的dma控制器及传输方法 | |
US20050193155A1 (en) | Data transfer apparatus and transfer control program | |
CA2573156A1 (en) | Apparatus and method for supporting memory management in an offload of network protocol processing | |
CN1904868A (zh) | 用于包化总线的组合包 | |
US6889266B1 (en) | Method for delivering packet boundary or other metadata to and from a device using direct memory controller | |
CN101963947B (zh) | 通用序列总线传输转译器及大量传输方法 | |
CN108304334B (zh) | 应用处理器和包括中断控制器的集成电路 | |
US9875199B2 (en) | Data transfer control apparatus | |
US20060236001A1 (en) | Direct memory access controller | |
JP3020699B2 (ja) | 印刷装置 | |
CN113590512A (zh) | 可直连外设设备的自启动dma装置及应用 | |
US20050144338A1 (en) | Data transfer apparatus | |
CN114691023A (zh) | 读写设备的读写操作方法、读写设备及可读存储介质 | |
CN112286852B (zh) | 基于iic总线的数据通信方法和数据通信装置 | |
US7321438B2 (en) | Parallel processing for a first and second image data from one input image | |
CN115587076B (zh) | 数据解压***、图形处理***、组件、设备及解压方法 | |
US10448020B2 (en) | Intelligent MSI-X interrupts for video analytics and encoding | |
JPH10334037A (ja) | 通信dma装置 | |
JP2008502977A (ja) | バス・コントローラのための割り込み方式 | |
CN101976230B (zh) | 通用序列总线传输转译器及输入请求同步传输方法 | |
US9110856B2 (en) | Interface control apparatus, data storage apparatus and method for interface control | |
US7187385B2 (en) | Image processing apparatus | |
US20220237132A1 (en) | Data transmission method and ping-pong dma architecture |
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 | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: Kezhu road high tech Industrial Development Zone, Guangzhou city of Guangdong Province, No. 233 510670 Patentee after: Wei Chong group Limited by Share Ltd Address before: 510663 No. 6, color road, hi tech Industrial Development Zone, Guangdong, Guangzhou, China Patentee before: Guangdong Weichuangshixun Science and Technology Co., Ltd. |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110914 Termination date: 20180820 |