CN116244232A - Dma装置和数据传输方法 - Google Patents

Dma装置和数据传输方法 Download PDF

Info

Publication number
CN116244232A
CN116244232A CN202310118495.7A CN202310118495A CN116244232A CN 116244232 A CN116244232 A CN 116244232A CN 202310118495 A CN202310118495 A CN 202310118495A CN 116244232 A CN116244232 A CN 116244232A
Authority
CN
China
Prior art keywords
data frame
data
descriptor
memory
space
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.)
Pending
Application number
CN202310118495.7A
Other languages
English (en)
Inventor
王强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Eswin Computing Technology Co Ltd
Guangzhou Quanshengwei Information Technology Co Ltd
Original Assignee
Beijing Eswin Computing Technology Co Ltd
Guangzhou Quanshengwei Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Eswin Computing Technology Co Ltd, Guangzhou Quanshengwei Information Technology Co Ltd filed Critical Beijing Eswin Computing Technology Co Ltd
Priority to CN202310118495.7A priority Critical patent/CN116244232A/zh
Publication of CN116244232A publication Critical patent/CN116244232A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本申请实施例提供一种DMA装置和数据传输方法,该DMA装置包括:第一DMA控制器、第一数据帧处理器、第二DMA控制器和第二数据帧处理器。本申请实施例的装置不仅实现了单一的数据搬移,而且准确识别和搬移与数据相关的控制信息。

Description

DMA装置和数据传输方法
技术领域
本申请涉及数据传输技术领域,尤其涉及一种DMA装置和数据传输方法。
背景技术
直接存储器访问(Direct Memory Access,DMA)可以将数据从一个地址空间搬移到另一个地址空间,提供用于在外设和存储器、存储器和存储器以及外设和外设高速数据传输。
相关技术中,DMA在数据读写过程中,需要使用很多关于数据传输的相关信息;但DMA只能单一的搬移数据,无法识别和搬移与数据相关的控制信息。因此DMA如何实现数据及数据相关控制信息的搬移是本领域技术人员亟需解决的技术问题。
发明内容
针对现有技术中的问题,本申请实施例提供一种DMA装置和数据传输方法。
具体地,本申请实施例提供了以下技术方案:
第一方面,本申请实施例提供了一种DMA装置,包括:
第一DMA控制器、第一数据帧处理器、第二DMA控制器和第二数据帧处理器;
所述第一DMA控制器用于接收数据读出请求,并将所述数据读出请求发送至所述第一数据帧处理器;所述数据读出请求中携带传输头描述符THD在内存中的位置信息;
所述第一数据帧处理器用于根据所述数据读出请求,从内存中获取所述THD和第一数据帧,并将所述THD和所述第一数据帧搬移至外部存储设备中;所述THD用于携带第一控制信息并指示待读出的数据帧信息;第一数据帧是需要从内存中搬移至外部存储设备中的数据帧;
所述第二DMA控制器用于接收数据写入请求,并将所述数据写入请求发送至所述第二数据帧处理器;所述数据写入请求携带接收头描述符RHD在外部存储设备中的位置信息;
所述第二数据帧处理器用于根据所述数据写入请求,从外部存储设备获取所述RHD和第二数据帧,并将所述RHD和所述第二数据帧搬移至内存中;所述RHD用于携带第二控制信息并指示待写入的数据帧信息;第二数据帧是需要从外部存储设备搬移至内存中的数据帧。
进一步地,所述第一数据帧处理器具体用于:
根据所述数据读出请求,从内存中获取传输头描述符THD,根据所述传输头描述符THD获取第一控制信息和指示信息;所述指示信息用于指示待读出的数据帧信息;
根据所述指示信息,获取待读出的数据帧;
将所述第一控制信息和所述待读出的数据帧搬移至外部存储设备中。
进一步地,所述第一数据帧处理器还用于:
发送数据帧标志符;所述数据帧标志符包括以下至少一项:数据帧开始标志符、数据帧中间标志符和数据帧结束标志符。
进一步地,所述第二数据帧处理器具体用于:
确定内存中的目标存储空间;所述目标存储空间用于所述第二数据帧处理器写入数据;
根据所述数据写入请求,从外部存储设备中获取接收头描述符RHD、接收数据帧描述符RPD和数据帧;所述接收数据帧描述符RPD用于指示所述目标存储空间的状态信息和/或所述目标存储空间的状态信息为已满的情况下的数据写入地址;
将所述接收头描述符RHD、接收数据帧描述符RPD和数据帧写入内存中的所述目标存储空间中。
进一步地,所述第二数据帧处理器具体用于:
将目标指针指向所述目标存储空间中的目标地址;所述目标地址为前一次数据传输结束时的地址;
根据所述目标地址和所述目标存储空间,确定目标存储空间中的剩余空间;
根据所述剩余空间,将所述接收头描述符RHD、接收数据帧描述符RPD和数据帧写入内存中的所述目标存储空间中。
进一步地,所述第二数据帧处理器具体用于:
在所述剩余空间大于或等于接收头描述符RHD占用空间的情况下,将所述接收头描述符RHD写入剩余空间中,并更新所述目标存储空间中的剩余空间;或,在所述剩余空间小于接收头描述符RHD占用空间的情况下,将所述目标指针指向目标存储空间的起始地址并更新接收数据帧描述符RPD,将所述接收头描述符RHD写入目标存储空间中,更新所述目标存储空间中的剩余空间;
在所述剩余空间大于或等于接收数据帧描述符RPD占用空间的情况下,将所述接收数据帧描述符RPD写入剩余空间中,并更新所述目标存储空间中的剩余空间;或,在所述剩余空间小于接收数据帧描述符RPD占用空间的情况下,将所述目标指针指向目标存储空间的起始地址并更新接收数据帧描述符RPD,将所述接收数据帧描述符RPD写入目标存储空间中,更新所述目标存储空间中的剩余空间;
在所述剩余空间大于或等于数据帧占用空间的情况下,将所述数据帧写入剩余空间中;或,在所述剩余空间小于数据帧占用空间的情况下,将所述目标指针指向目标存储空间的起始地址并更新接收数据帧描述符RPD,将所述数据帧写入目标存储空间中。
进一步地,DMA装置还包括:
DMA读写控制器、发送选择器、仲裁机、传输状态模块;
其中,所述DMA读写控制器与总线连接,所述DMA读写控制器用于通过所述总线从内存中获取待读出的数据帧和传输头描述符THD;和/或,和向内存中写入接收的数据帧、接收头描述符RHD和接收数据帧描述符RPD;
所述发送选择器的输入端与所述第一DMA控制器连接,所述发送选择器的输出端与所述第一数据帧处理器连接,用于确定发送数据的DMA通道;
所述仲裁机与所述第一数据帧处理器、传输状态模块、第二数据帧处理器和DMA读写控制器连接,用于确定当前的传输任务,更新传输状态模块;
所述传输状态模块用于指示当前的数据传输状态。
第二方面,本申请实施例还提供了一种数据传输方法,包括:
接收数据读出请求;所述数据读出请求中携带传输头描述符THD在内存中的位置信息;
根据所述数据读出请求,从内存中获取传输头描述符THD和数据帧,并将所述传输头描述符THD和数据帧搬移至外部存储设备中;所述传输头描述符THD用于携带第一控制信息并指示待读出的数据帧信息;
接收数据写入请求;所述数据写入请求携带接收头描述符RHD在外部存储设备中的位置信息;
根据所述数据写入请求,从外部存储设备获取接收头描述符RHD和数据帧,并将所述接收头描述符RHD和数据帧搬移至内存中;所述接收头描述符RHD用于携带第二控制信息并指示待写入的数据帧信息。
第三方面,本申请实施例还提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如第二方面所述数据传输方法。
第四方面,本申请实施例还提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第二方面所述数据传输方法。
第五方面,本申请实施例还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如第二方面所述数据传输方法。
本申请实施例提供的DMA装置和数据传输方法,当需要将内存中的数据及数据相关的第一控制信息搬移至外部存储设备时,DMA装置中的第一数据帧处理器从内存中获取传输头描述符THD,从而也就可以获取待搬运的数据帧信息及数据帧相关的第一控制信息,并将内存中的数据帧信息及数据帧相关的第一控制信息搬移至外部存储设备中;当需要将外部存储设备中的数据及数据相关的第二控制信息搬移至内存时,DMA装置中的第二数据帧处理器从外部存储设备中获取接收头描述符RHD,从而也就可以获取待搬运的数据帧信息及数据帧相关的第二控制信息,并将外部存储设备中的数据帧信息及数据帧相关的控制信息搬移至内存中,从而不仅实现了单一的数据搬移,而且准确识别和搬移与数据相关的控制信息。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的DMA装置的结构示意图;
图2是本申请实施例提供的数据帧标志符示意图;
图3是本申请实施例提供的DMA装置进行数据传输的流程示意图之一;
图4是本申请实施例提供的DMA装置进行数据传输的流程示意图之二;
图5是本申请实施例提供的电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例的DMA装置可以应用于数据和控制信息的搬运场景中,不仅实现了单一的数据搬移,而且准确识别和搬移与数据相关的控制信息。
相关技术中,DMA在数据读写过程中,需要使用很多关于数据传输的相关信息;但DMA只能单一的搬移数据,无法识别和搬移与数据相关的控制信息。因此DMA如何实现数据及数据相关控制信息的搬运是本领域技术人员亟需解决的技术问题。例如,私有协议MAC层的DMA在数据读写过程中,需要使用很多关于数据传输的相关信息。例如:数据起始的标识符、数据起始地址,数据的长度,数据传输的时间以及状态信息等。现有的DMA在配置完起始地址、目的地址以及数据长度,立即开始数据的读写操作,传输完成后等到下一次的数据传输。无法识别与数据相关的信息,只能单一的搬运数据,因此现有的DMA无法进行私有协议MAC层的数据传输。
本申请实施例的DMA装置,当需要将内存中的数据及数据相关的第一控制信息搬移至外部存储设备时,DMA装置中的第一数据帧处理器从内存中获取传输头描述符(Transmit Header Descriptor fields,THD),从而也就可以获取待搬运的数据帧信息及数据帧相关的第一控制信息,并将内存中的数据帧信息及数据帧相关的第一控制信息搬移至外部存储设备中;当需要将外部存储设备中的数据及数据相关的第二控制信息搬移至内存时,DMA装置中的第二数据帧处理器从外部存储设备中获取接收头描述符RHD,从而也就可以获取待搬运的数据帧信息及数据帧相关的第二控制信息,并将外部存储设备中的数据帧信息及数据帧相关的控制信息搬移至内存中,从而不仅实现了单一的数据搬移,而且准确识别和搬移与数据相关的控制信息。
下面结合图1-图5以具体的实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图1是本申请实施例提供的DMA装置的结构示意图。如图1所示,本实施例提供的方法,包括:
第一DMA控制器、第一数据帧处理器、第二DMA控制器和第二数据帧处理器;
第一DMA控制器用于接收数据读出请求,并将数据读出请求发送至第一数据帧处理器;数据读出请求中携带传输头描述符THD在内存中的位置信息;
第一数据帧处理器用于根据数据读出请求,从内存中获取THD和第一数据帧,并将THD和第一数据帧搬移至外部存储设备中;THD用于携带第一控制信息并指示待读出的数据帧信息;第一数据帧是需要从内存中搬移至外部存储设备中的数据帧;
第二DMA控制器用于接收数据写入请求,并将数据写入请求发送至第二数据帧处理器;数据写入请求携带接收头描述符RHD在外部存储设备中的位置信息;
第二数据帧处理器用于根据数据写入请求,从外部存储设备获取RHD和第二数据帧,并将RHD和第二数据帧搬移至内存中;RHD用于携带第二控制信息并指示待写入的数据帧信息;第二数据帧是需要从外部存储设备搬移至内存中的数据帧。
具体地,现有的DMA装置在数据读写过程中,需要使用很多关于数据传输的相关信息;但DMA只能单一的搬移数据,无法识别和搬移与数据相关的控制信息。
为了解决上述问题,本申请的DMA装置包括第一DMA控制器、第一数据帧处理器、第二DMA控制器和第二数据帧处理器。
其中,第一DMA控制器用于接收数据读出请求,并将数据读出请求发送至第一数据帧处理器;数据读出请求中携带THD在内存中的位置信息;第一数据帧处理器用于根据数据读出请求,从内存中获取传输头描述符THD和第一数据帧,并将传输头描述符THD和第一数据帧搬移至外部存储设备中;其中,第一数据帧是需要从内存中搬移至外部存储设备中的数据帧;传输头描述符THD用于携带第一控制信息并指示待读出的数据帧信息。可选地,内存通过总线与第一DMA控制器连接,第一DMA控制器连接和第一数据帧处理连接,第一数据帧处理与外部存储设备连接。
可选地,当需要将内存中的数据及数据相关的第一控制信息搬移至外部存储设备时,向DMA装置触发数据读出请求;可选地,数据读出请求可以为CPU触发的。DMA装置中的第一DMA控制器接收数据读出请求后,将数据读出请求发送至第一数据帧处理器;可选地,数据读出请求中携带传输头描述符THD在内存中的位置信息;从而使得第一数据帧处理器接收数据读出请求后,可以及时准确的获取传输头描述符THD在内存中的位置信息,进而从内存中获取传输头描述符THD;可选地,传输头描述符THD携带第一控制信息;可选地,第一控制信息是与待读出的数据帧相关的控制信息;可选地,传输头描述符THD还指示了数据帧相关信息;从而第一数据帧处理器从内存中获取传输头描述符THD后,也就可以进一步获取数据帧信息及数据帧相关的控制信息,从而将内存中的数据帧信息及数据帧相关的控制信息搬移至外部存储设备中,不仅实现了单一的数据搬移,而且准确识别和搬移与数据相关的控制信息。
示例性的,本申请实施例中DMA装置通过AHB总线读取内存中的传输头描述符THD并发送至外部存储设备中。可选地,传输头描述符THD中携带的第一控制信息包括以下至少一项:
数据帧状态信息(Status Information)、数据帧控制信息(ControlInformation)、数据帧传输时间(Data Frame Transmit Time)。
可选地,数据帧状态信息用于指示数据帧的传输状态,例如,数据帧的传输状态包括:已传输完成状态、正在传输状态、等待传输状态。可选地,第一数据帧处理器可以根据数据的传输过程,进行数据帧状态信息的更新,并发送至外部存储设备。
可选地,数据帧控制信息包括自定义的私有协议信息。可选地,第一数据帧处理器在搬运数据帧时,将数据帧控制信息也发送至外部存储设备,从而不仅实现了单一的数据搬移,而且准确识别和搬移与数据相关的控制信息。
可选地,数据帧传输时间用于指示是立刻进行数据帧和控制信息的读出和搬移,或等待目标时段后进行读出和搬移,或者无需读出。
可选地,传输头描述符THD中还可以包括其他类型的与读出数据相关的控制信息,本申请实施例中不做限制。可选地,第一数据帧处理器可以对获取的传输头描述符THD中的第一控制信息进行更新,并将更新后的第一控制信息和待搬运的数据一起发送至外部存储设备中。
可选地,传输头描述符THD指示的待读出的数据帧信息包括以下至少一项:
数据帧长度(Data Frame Length)、数据帧起始地址(Payload start PointerAddress);可选地,数据帧长度用于指示待读出的数据的长度信息;数据帧起始地址用于指示待读出的数据在内存中的地址。可选地,根据数据帧长度和数据帧起始地址,就可以准确的确定所要读出和搬运的数据。
可选地,第一DMA控制器包含4个状态:起始状态、被动状态、活跃状态、结束状态。可选地,状态转换流程如下:当软件配置开始发送一个新的数据帧时,第一DMA控制器从起始状态到被动状态:当外部反馈回一个可以发送的信号,第一DMA控制器从被动状态到活跃状态;当中断数据传输时,第一DMA控制器从活跃状态到被动状态;当数据在传输过程中发生错误时,第一DMA控制器从活跃状态到结束状态;当重新准备开始发送数据时,第一DMA控制器从结束状态到起始状态。
可选地,第二DMA控制器用于接收数据写入请求,并将数据写入请求发送至第二数据帧处理器;数据写入请求携带接收头描述符RHD在外部存储设备中的位置信息;第二数据帧处理器用于根据数据写入请求,从外部存储设备获取接收头描述符RHD和第二数据帧,并将接收头描述符RHD和第二数据帧搬移至内存中;接收头描述符RHD用于携带第二控制信息并指示待写入的数据帧信息;第二数据帧是需要从外部存储设备搬移至内存中的数据帧。可选地,内存通过总线与第二DMA控制器连接,第二DMA控制器连接和第二数据帧处理连接,第二数据帧处理与外部存储设备连接。
可选地,当需要将外部存储设备中的数据及数据相关的第二控制信息搬移至内存时,向DMA装置触发数据写入请求;可选地,数据写入请求可以为外部存储设备触发的。DMA装置中的第二DMA控制器接收数据写入请求后,将数据写入请求发送至第二数据帧处理器;可选地,数据写入请求中携带接收头描述符(Receive Header Descriptor,RHD)在外部存储设备中的位置信息,从而使得第二数据帧处理器接收数据写入请求后,可以及时准确的获取接收头描述符RHD在外部存储设备中的位置信息,进而从外部存储设备中获取接收头描述符RHD;可选地,接收头描述符RHD携带第二控制信息;可选地,第二控制信息是与待写入的数据帧相关的控制信息;可选地,接收头描述符RHD还指示了数据帧相关信息,从而第二数据帧处理器从外部存储设备中获取接收头描述符RHD后,也就可以进一步获取数据帧信息及数据帧相关的控制信息,从而将外部存储设备中的数据帧信息及数据帧相关的控制信息搬移至内存中,不仅实现了单一的数据搬移,而且准确识别和搬移与数据相关的控制信息。
示例性的,本申请实施例中DMA装置通过AHB总线将外部存储设备中的RHD信息写入到内存中。可选地,接收头描述符RHD中包括的控制信息包括以下至少一项:
数据帧状态信息、数据帧接收时间。例如,数据帧的传输状态包括:已传输完成状态、正在传输状态、等待传输状态。可选地,第二数据帧处理器可以根据数据的传输过程,进行数据帧状态信息的更新,并发送至内存。可选地,数据帧接收时间用于指示是否立刻进行数据帧和控制信息的写入,或等待目标时段后进行写入,或者无需写入内存中。可选地,接收头描述符RHD中还可以包括其他类型的与写入数据相关的控制信息,本申请实施例中不做限制。可选地,第二数据帧处理器可以对获取的接收头描述符RHD中的信息进行更新,并将更新后的RHD和待搬运的数据一起搬运至内存中。
可选地,接收头描述符RHD指示的待写入的数据帧信息包括以下至少一项:数据帧长度和数据帧起始指针;可选地,数据帧长度指示待写入的数据的长度等信息。可选地,数据帧起始指针地址用于指示待写入的数据的地址。
可选地,DMA装置还包括:
DMA读写控制器、发送选择器、仲裁机、传输状态模块;
其中,DMA读写控制器与总线连接,DMA读写控制器用于通过总线从内存中获取待读出的数据帧和传输头描述符THD;和/或,和向内存中写入接收的数据帧、接收头描述符RHD和接收数据帧描述符RPD;
发送选择器的输入端与第一DMA控制器连接,发送选择器的输出端与第一数据帧处理器连接,用于确定发送数据的DMA通道;
仲裁机与第一数据帧处理器、传输状态模块、第二数据帧处理器和DMA读写控制器连接,用于确定当前的传输任务,更新传输状态模块;
传输状态模块用于指示当前的数据传输状态。
具体地,本申请实施例中的DMA装置还包括DMA读写控制器、发送选择器、仲裁机、传输状态模块。
可选地,如图1所示,DMA读写控制器与总线和仲裁机连接,DMA读写控制器通过总线从内存中获取待读出的数据帧和传输头描述符THD;或,DMA读写控制器通过总线向内存中写入接收的数据帧、接收头描述符RHD和接收数据帧描述符RPD。可选地,对于DMA读写控制器一次只处理一个请求,当前请求完成后,将为下一次的请求提供服务。主要处理的请求包括:从内存中读写数据帧和向内存中写入数据帧。
可选地,仲裁机与第一数据帧处理器、传输状态模块、第二数据帧处理器和DMA读写控制器连接,用于确定当前的传输任务,更新传输状态模块,并将当前的传输状态发送至第一数据帧处理器、第二数据帧处理器和DMA读写控制器。
可选地,发送选择器的输入端与第一DMA控制器连接,发送选择器的输出端与第一数据帧处理器连接,发送选择器用于确定搬运数据的DMA通道。可选地,本申请实施例中针对不同THD和数据帧,发送选择器可以根据发送的类型自定义相应的配置,这样就可以定义多个DMA发送数据帧通道,多个DMA发送数据通道可以同时处于被动状态,但是在任何时刻只有一个通道可以进入活跃状态。
可选地,传输状态模块与仲裁机连接,传输状态模块主要作用是获取数据帧相关的信息并且更新到THD,本申请实施例只对数据发送完成信号做更新,当数据帧全部发送完成的情况下,通过硬件对该字段信息做更新,申明数据帧已经发送完成。传输状态模块包括如下状态转换:空闲状态到传输请求:收到传输请求,准备更新状态;传输请求到等待传输状态:状态更新,等待更新完成;等待传输状态到等待传输完成:主要更新发送数据帧是否完成;等待传输完成到空闲状态:传输完成,等待下一次更新请求。
上述实施装置,当需要将内存中的数据及数据相关的第一控制信息搬移至外部存储设备时,DMA装置中的第一数据帧处理器从内存中获取传输头描述符THD,从而也就可以获取待搬运的数据帧信息及数据帧相关的第一控制信息,并将内存中的数据帧信息及数据帧相关的第一控制信息搬移至外部存储设备中;当需要将外部存储设备中的数据及数据相关的第二控制信息搬移至内存时,DMA装置中的第二数据帧处理器从外部存储设备中获取接收头描述符RHD,从而也就可以获取待搬运的数据帧信息及数据帧相关的第二控制信息,并将外部存储设备中的数据帧信息及数据帧相关的控制信息搬移至内存中,从而不仅实现了单一的数据搬移,而且准确识别和搬移与数据相关的控制信息。
在一实施例中,第一数据帧处理器具体用于:
根据数据读出请求,从内存中获取传输头描述符THD,根据传输头描述符THD获取第一控制信息和指示信息;指示信息用于指示待读出的数据帧信息;
根据指示信息,获取待读出的数据帧;
将第一控制信息和待读出的数据帧搬移至外部存储设备中。
具体地,当需要将内存中的数据及数据相关的第一控制信息搬移至外部存储设备时,向DMA装置触发数据读出请求;可选地,数据读出请求可以为CPU触发的。DMA装置中的第一DMA控制器接收数据读出请求后,将数据读出请求发送至第一数据帧处理器;可选地,数据读出请求中携带传输头描述符THD在内存中的位置信息,从而使得第一数据帧处理器接收数据读出请求后,可以及时准确的获取传输头描述符THD在内存中的位置信息,进而从内存中获取传输头描述符THD;可选地,传输头描述符THD携带第一控制信息;可选地,第一控制信息是与待读出的数据帧相关的控制信息;其中,待读出的数据帧即为第一数据帧;可选地,传输头描述符THD还包括指示信息,指示信息用于指示待读出的数据帧信息,如数据帧长度和数据帧起始地址,从而使得第一数据帧处理器从内存中获取传输头描述符THD后,也就可以确定内存中待搬移的数据帧信息及数据帧相关的控制信息,并将内存中的数据帧信息及数据帧相关的控制信息搬移至外部存储设备中,从而不仅实现了单一的数据搬移,而且准确识别和搬移与数据相关的控制信息。
例如,如图3所示,DMA装置中的发送选择器选择DMA通道后,第一数据帧处理器从内存中获取传输头描述符THD后,也就可以确定内存中待搬移的数据帧信息及数据帧相关的控制信息,并将内存中的数据帧信息及数据帧相关的控制信息搬移至外部存储设备中,从而不仅实现了单一的数据搬移,而且准确识别和搬移与数据相关的控制信息。
上述实施装置,第一数据帧处理器根据数据读出请求中携带的传输头描述符THD在内存中的位置信息,可以及时准确的获取传输头描述符THD,进而根据传输头描述符THD确定内存中待搬移的数据帧信息及数据帧相关的控制信息,并将内存中的数据帧信息及数据帧相关的控制信息搬移至外部存储设备中,从而不仅实现了单一的数据搬移,而且准确识别和搬移与数据相关的控制信息。
在一实施例中,第一数据帧处理器还用于:
发送数据帧标志符;数据帧标志符包括以下至少一项:数据帧开始标志符、数据帧中间标志符和数据帧结束标志符。
具体地,第一数据帧处理器在将内存中的数据帧信息及数据帧相关的控制信息搬移至外部存储设备的过程中,还可以发送数据帧标志符,从而对搬移的数据进行准确的标注,使得外部存储设备根据数据帧标志符可以准确方便的识别传入数据的起始位置和结束位置,及确定数据的搬移状态,从而准确的接收搬移的数据。可选地,数据帧标志符包括数据帧开始标志符、数据帧中间标志符和数据帧结束标志符,其中数据帧开始标志符用于指示搬移数据帧的起始位置,数据帧中间标志符用于表示数据搬移中,数据帧结束标志符用于指示搬移数据帧的结束位置,使得外部存储设备根据数据帧标志符可以准确方便的识别传入数据的起始和结束位置,从而准确的接收搬移的数据。
可选地,第一数据帧处理器由第一DMA控制器触发,当第一DMA控制器处于活跃状态时,第一数帧处理器处于工作模式。通过DMA仲裁机和DMA读写控制器控制AHB总线读取内存中的数据。可选地,第一数帧处理器负责跟踪传输数据帧,读取THD并将数据从内存中移动到外部存储设备中,同时对传输的THD和数据帧信息做标记,指示数据帧的起始位置和结束位置,从而使得外部存储设备根据数据帧标志符可以准确方便的识别传入数据的起始和结束位置,从而准确的接收搬移的数据。
例如,如图2所示,在将内存中的数据帧信息及数据帧相关的控制信息搬移至外部存储设备的过程中,为了方便外部存储设备准确识别数据的起始和结束位置,从而使得外部存储设备可以准确的接收搬移的数据,DMA装置中的第一数据帧处理器发送数据帧标志符,包括:数据帧开始标志符:00,数据帧中间标志符:01,数据帧结束标志符:10;从而外部存储设备在接收到数据帧开始标志符的情况下,就可以识别搬移数据的起始位置,开始进行数据的接收和存储;外部存储设备在接收到数据帧结束标志符的情况下,停止进行数据的接收和存储。
上述实施装置,第一数据帧处理器在将内存中的数据帧信息及数据帧相关的控制信息搬移至外部存储设备的过程中,通过发送数据帧标志符,从而对搬移的数据进行准确的标注,使得外部存储设备根据标志符可以准确方便的识别数据的起始和结束位置,从而准确的接收搬移的数据。
在一实施例中,第二数据帧处理器具体用于:
确定内存中的目标存储空间;目标存储空间用于第二数据帧处理器写入数据;
根据数据写入请求,从外部存储设备中获取接收头描述符RHD、接收数据帧描述符RPD和数据帧;接收数据帧描述符RPD用于指示目标存储空间的状态信息和/或目标存储空间的状态信息为已满的情况下的数据写入地址;
将接收头描述符RHD、接收数据帧描述符RPD和数据帧写入内存中的目标存储空间中。
具体地,第二数据帧处理器在将外部存储设备中的数据帧信息及数据帧相关的控制信息搬移至内存中时,首先确定内存中的目标存储空间,从而也就可以确定搬移的数据应该存储在内存中的位置;可选地,CPU可以为第二数据帧处理器分配目标存储空间;进一步地,第二数据帧处理器根据数据写入请求,从外部存储设备中获取接收头描述符RHD、接收数据帧描述符RPD和数据帧;可选地,数据写入请求可以为外部存储设备触发的;可选地,将接收头描述符RHD携带第二控制信息;可选地,第二控制信息是与待写入的数据帧相关的控制信息;其中,待写入的数据帧即为第二数据帧;可选地,接收头描述符RHD还指示了数据帧相关信息,从而第二数据帧处理器从外部存储设备中获取接收头描述符RHD后,也就可以进一步获取数据帧信息及数据帧相关的控制信息,从而将外部存储设备中的数据帧信息及数据帧相关的控制信息搬移至内存中的目标存储空间中,不仅实现了单一的数据搬移,而且准确识别和搬移与数据相关的控制信息。
可选地,接收数据帧描述符RPD用于指示目标存储空间的状态信息和/或目标存储空间的状态信息为已满的情况下的数据写入地址;可选地,在内存中目标存储空间满了后,可以从存储空间的开始地址重新开始进行数据写入;可选地,接收数据帧描述符RPD初始默认值可以为空或默认值,第二数据帧处理器在进行数据搬移的过程中对接收数据帧描述符RPD进行更新并发送至内存,从而可以准确的确定搬移数据的写入地址。
例如,接收数据帧描述符RPD包括:数据帧状态信息、数据帧结束指针地址、数据帧起始指针地址;其中,数据帧状态信息用于指示目标存储空间的状态信息;可选地,目标存储空间的状态信息包括:目标存储空间已满和存储空间未满;可选地,数据帧起始指针地址用于指示目标存储空间的状态信息为已满的情况下的数据写入地址;可选地,目标存储空间的状态信息为已满的情况下的数据写入地址可以为目标存储空间的开始地址,也可以是内存中的其他地址,本申请实施例中不做限定。可选地,接收数据帧描述符RPD初始默认值可以为空或默认值,第二数据帧处理器在进行数据搬移的过程中对接收数据帧描述符RPD进行更新并通过AHB总线将特RPD信息写入到内存中,从而可以准确的标注和确定搬移数据的写入地址。
上述实施装置,第二数据帧处理器在将外部存储设备中的数据搬移至内存中时,通过确定内存中的目标存储空间,从而也就可以准确的确定搬移的数据应该存储在内存中的位置,进而就可以将外部存储设备中的数据帧信息及数据帧相关的控制信息搬移至内存中的目标存储空间中,不仅实现了单一的数据搬移,而且准确识别和搬移与数据相关的控制信息。
在一实施例中,第二数据帧处理器具体用于:
将目标指针指向目标存储空间中的目标地址;目标地址为前一次数据传输结束时的地址;
根据目标地址和目标存储空间,确定目标存储空间中的剩余空间;
根据剩余空间,将接收头描述符RHD、接收数据帧描述符RPD和数据帧写入内存中的目标存储空间中。
具体地,第二数据帧处理器中的指针指向目标存储空间中的目标地址;可选地,目标地址为前一次数据传输结束时的地址,也就是待搬移的数据可以从前一次数据传输结束时的地址对应的下一个地址开始进行存储;从而第二数据帧处理器根据存储空间中的目标地址和目标存储空间就可以确定剩余空间,并将接收头描述符RHD、接收数据帧描述符RPD和数据帧写入剩余空间中,从而不仅实现了单一的数据搬移,而且搬移与数据相关的控制信息。可选地,在内存中目标存储空间满了后,可以从存储空间的开始地址重新开始进行数据写入,并对接收数据帧描述符RPD进行更新并发送至内存,指示目标存储空间的状态信息为已满的情况下的数据写入地址。
上述实施装置,第二数据帧处理器中的指针指向目标存储空间中的目标地址,从而根据目标存储空间中的目标地址和目标存储空间就可以确定剩余空间,并将接收头描述符RHD、接收数据帧描述符RPD和数据帧写入剩余空间中,并且当剩余空间不足以存储待搬移的数据和控制信息时,可以更新接收数据帧描述符RPD,指示目标存储空间的状态信息为已满的情况下的数据写入地址,从而不仅实现了单一的数据搬移,而且搬移与数据相关的控制信息。
在一实施例中,第二数据帧处理器具体用于:
在剩余空间大于或等于接收头描述符RHD占用空间的情况下,将接收头描述符RHD写入剩余空间中,并更新目标存储空间中的剩余空间;或,在剩余空间小于接收头描述符RHD占用空间的情况下,将目标指针指向目标存储空间的起始地址并更新接收数据帧描述符RPD,将接收头描述符RHD写入目标存储空间中,更新目标存储空间中的剩余空间;
在剩余空间大于或等于接收数据帧描述符RPD占用空间的情况下,将接收数据帧描述符RPD写入剩余空间中,并更新目标存储空间中的剩余空间;或,在剩余空间小于接收数据帧描述符RPD占用空间的情况下,将目标指针指向目标存储空间的起始地址并更新接收数据帧描述符RPD,将接收数据帧描述符RPD写入目标存储空间中,更新目标存储空间中的剩余空间;
在剩余空间大于或等于数据帧占用空间的情况下,将数据帧写入剩余空间中;或,在剩余空间小于数据帧占用空间的情况下,将目标指针指向目标存储空间的起始地址并更新接收数据帧描述符RPD,将数据帧写入目标存储空间中。
具体地,如图4所示,第二数据帧处理器中的指针指向目标存储空间中的目标地址;可选地,目标地址为前一次数据传输结束时的地址,也就是待搬移的数据可以从前一次数据传输结束时的地址对应的下一个地址开始进行存储;从而第二数据帧处理器根据目标存储空间中的目标地址和目标存储空间就可以确定剩余空间,并将接收头描述符RHD、接收数据帧描述符RPD和数据帧写入剩余空间中;可选地,在将外部存储设备中的数据及数据相关的控制信息搬移至内存中的目标存储空间的剩余空间时,首先将接收头描述符RHD搬运至剩余空间中,在剩余空间大于或等于接收头描述符RHD占用空间的情况下,将接收头描述符RHD写入剩余空间中,并更新接收头描述符RHD搬运后目标存储空间中的剩余空间;或,在剩余空间小于接收头描述符RHD占用空间的情况下,且目标存储空间的起始地址对应的数据已经被读取且处于空闲状态的情况下,第二数据帧处理器将目标指针指向目标存储空间的起始地址并更新接收数据帧描述符RPD,指示目标存储空间的状态信息为已满的情况下的数据写入地址,从而继续进行接收头描述符RHD的写入。
可选地,第二数据帧处理器在将接收头描述符RHD搬运至内存中的目标存储空间后,可以继续对接收数据帧描述符RPD进行搬运;可选地,在剩余空间大于或等于接收数据帧描述符RPD占用空间的情况下,将接收数据帧描述符RPD写入剩余空间中,并更新接收头描述符RHD搬运后目标存储空间中的剩余空间;或,在剩余空间小于接收数据帧描述符RPD占用空间的情况下,且目标存储空间的起始地址对应的数据已经被读取且处于空闲状态的情况下,第二数据帧处理器将目标指针指向目标存储空间的起始地址并将更新后的接收数据帧描述符RPD写入目标存储空间中。
可选地,第二数据帧处理器在将接收数据帧描述符RPD搬运至内存中的目标存储空间后,可以继续对外部存储设备中的数据进行搬运;可选地,在剩余空间大于或等于数据帧占用空间的情况下,第二数据帧处理器将数据帧写入剩余空间中;或,在剩余空间小于数据帧占用空间的情况下,第二数据帧处理器将目标指针指向存储空间的起始地址并更新接收数据帧描述符RPD,从而继续进行数据帧的写入。
可选地,第二数据帧处理器也可以发送数据帧标志符;数据帧标志符包括以下至少一项:数据帧开始标志符、数据帧中间标志符和数据帧结束标志符。可选地,第二数据帧处理器在将外部存储设备中的数据帧信息及数据帧相关的控制信息搬移至内存的过程中,还可以发送数据帧标志符,从而对搬移的数据进行准确的标注,使得内存根据数据帧标志符可以准确方便的识别传入数据的起始位置和结束位置,及确定数据的搬移状态,从而准确的写入搬移的数据。可选地,数据帧标志符包括数据帧开始标志符、数据帧中间标志符和数据帧结束标志符,其中数据帧开始标志符用于指示搬移数据帧的起始位置,数据帧中间标志符用于表示数据搬移中,数据帧结束标志符用于指示搬移数据帧的结束位置,使得内存根据数据帧标志符可以准确方便的识别传入数据的起始和结束位置,从而准确的写入搬移的数据。
上述实施装置,当内存中目标存储空间的剩余空间不足以写入待搬移的数据和控制信息时,通过更新接收数据帧描述符RPD,从而指示目标存储空间的状态信息为已满的情况下的数据写入地址,从而实现了外部存储设备中的数据和控制信息在内存中的写入。
下面对本申请提供的数据传输方法进行描述,下文描述的数据传输方法与上文描述的DMA装置可相互对应参照。
本实施例提供的数据传输方法,包括:
接收数据读出请求;数据读出请求中携带传输头描述符THD在内存中的位置信息;
根据数据读出请求,从内存中获取THD和第一数据帧,并将THD和第一数据帧搬移至外部存储设备中;THD用于携带第一控制信息并指示待读出的数据帧信息;第一数据帧是需要从内存中搬移至外部存储设备中的数据帧;和/或,
接收数据写入请求;数据写入请求携带接收头描述符RHD在外部存储设备中的位置信息;
根据数据写入请求,从外部存储设备获取RHD和第二数据帧,并将RHD和第二数据帧搬移至内存中;RHD用于携带第二控制信息并指示待写入的数据帧信息;第二数据帧是需要从外部存储设备搬移至内存中的数据帧。
本申请实施例的装置,其用于执行前述任一方法实施例中的方法,其实现原理和技术效果类似,此次不再赘述。
图5示例了一种电子设备的实体结构示意图,该电子设备可以包括:处理器(processor)810、通信接口(Communications Interface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行数据传输方法,该方法包括:接收数据读出请求;数据读出请求中携带传输头描述符THD在内存中的位置信息;根据数据读出请求,从内存中获取THD和第一数据帧,并将THD和第一数据帧搬移至外部存储设备中;THD用于携带第一控制信息并指示待读出的数据帧信息;和/或,接收数据写入请求;数据写入请求携带接收头描述符RHD在外部存储设备中的位置信息;根据数据写入请求,从外部存储设备获取RHD和第二数据帧,并将RHD和第二数据帧搬移至内存中;RHD用于携带第二控制信息并指示待写入的数据帧信息。
此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本申请还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的数据传输方法,该方法包括:接收数据读出请求;数据读出请求中携带传输头描述符THD在内存中的位置信息;根据数据读出请求,从内存中获取THD和第一数据帧,并将THD和第一数据帧搬移至外部存储设备中;THD用于携带第一控制信息并指示待读出的数据帧信息;和/或,接收数据写入请求;数据写入请求携带接收头描述符RHD在外部存储设备中的位置信息;根据数据写入请求,从外部存储设备获取RHD和第二数据帧,并将RHD和第二数据帧搬移至内存中;RHD用于携带第二控制信息并指示待写入的数据帧信息。
又一方面,本申请还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的数据传输方法,该方法包括:接收数据读出请求;数据读出请求中携带传输头描述符THD在内存中的位置信息;根据数据读出请求,从内存中获取THD和第一数据帧,并将THD和第一数据帧搬移至外部存储设备中;THD用于携带第一控制信息并指示待读出的数据帧信息;和/或,接收数据写入请求;数据写入请求携带接收头描述符RHD在外部存储设备中的位置信息;根据数据写入请求,从外部存储设备获取RHD和第二数据帧,并将RHD和第二数据帧搬移至内存中;RHD用于携带第二控制信息并指示待写入的数据帧信息。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (10)

1.一种直接存储器访问DMA装置,其特征在于,包括:
第一DMA控制器、第一数据帧处理器、第二DMA控制器和第二数据帧处理器;
所述第一DMA控制器用于接收数据读出请求,并将所述数据读出请求发送至所述第一数据帧处理器;所述数据读出请求中携带传输头描述符THD在内存中的位置信息;
所述第一数据帧处理器用于根据所述数据读出请求,从内存中获取所述THD和第一数据帧,并将所述THD和所述第一数据帧搬移至外部存储设备中;所述THD用于携带第一控制信息并指示待读出的数据帧信息;所述第一数据帧是需要从内存中搬移至外部存储设备中的数据帧;
所述第二DMA控制器用于接收数据写入请求,并将所述数据写入请求发送至所述第二数据帧处理器;所述数据写入请求携带接收头描述符RHD在外部存储设备中的位置信息;
所述第二数据帧处理器用于根据所述数据写入请求,从外部存储设备获取所述RHD和第二数据帧,并将所述RHD和所述第二数据帧搬移至内存中;所述RHD用于携带第二控制信息并指示待写入的数据帧信息;所述第二数据帧是需要从外部存储设备搬移至内存中的数据帧。
2.根据权利要求1所述的DMA装置,其特征在于,所述第一数据帧处理器具体用于:
根据所述数据读出请求,从内存中获取传输头描述符THD,根据所述传输头描述符THD获取第一控制信息和指示信息;所述指示信息用于指示待读出的数据帧信息;
根据所述指示信息,获取待读出的数据帧;
将所述第一控制信息和所述待读出的数据帧搬移至外部存储设备中。
3.根据权利要求2所述的DMA装置,其特征在于,所述第一数据帧处理器还用于:
发送数据帧标志符;所述数据帧标志符包括以下至少一项:数据帧开始标志符、数据帧中间标志符和数据帧结束标志符。
4.根据权利要求1-3任一项所述的DMA装置,其特征在于,所述第二数据帧处理器具体用于:
确定内存中的目标存储空间;所述目标存储空间用于所述第二数据帧处理器写入数据;
根据所述数据写入请求,从外部存储设备中获取接收头描述符RHD、接收数据帧描述符RPD和数据帧;所述接收数据帧描述符RPD用于指示所述目标存储空间的状态信息和/或所述目标存储空间的状态信息为已满的情况下的数据写入地址;
将所述接收头描述符RHD、接收数据帧描述符RPD和数据帧写入内存中的所述目标存储空间中。
5.根据权利要求4所述的DMA装置,其特征在于,所述第二数据帧处理器具体用于:
将目标指针指向所述目标存储空间中的目标地址;所述目标地址为前一次数据传输结束时的地址;
根据所述目标地址和所述目标存储空间,确定目标存储空间中的剩余空间;
根据所述剩余空间,将所述接收头描述符RHD、接收数据帧描述符RPD和数据帧写入内存中的所述目标存储空间中。
6.根据权利要求5所述的DMA装置,其特征在于,所述第二数据帧处理器具体用于:
在所述剩余空间大于或等于接收头描述符RHD占用空间的情况下,将所述接收头描述符RHD写入剩余空间中,并更新所述目标存储空间中的剩余空间;或,在所述剩余空间小于接收头描述符RHD占用空间的情况下,将所述目标指针指向目标存储空间的起始地址并更新接收数据帧描述符RPD,将所述接收头描述符RHD写入目标存储空间中,更新所述目标存储空间中的剩余空间;
在所述剩余空间大于或等于接收数据帧描述符RPD占用空间的情况下,将所述接收数据帧描述符RPD写入剩余空间中,并更新所述目标存储空间中的剩余空间;或,在所述剩余空间小于接收数据帧描述符RPD占用空间的情况下,将所述目标指针指向目标存储空间的起始地址并更新接收数据帧描述符RPD,将所述接收数据帧描述符RPD写入目标存储空间中,更新所述目标存储空间中的剩余空间;
在所述剩余空间大于或等于数据帧占用空间的情况下,将所述数据帧写入剩余空间中;或,在所述剩余空间小于数据帧占用空间的情况下,将所述目标指针指向目标存储空间的起始地址并更新接收数据帧描述符RPD,将所述数据帧写入目标存储空间中。
7.根据权利要求1-3任一项所述的DMA装置,其特征在于,还包括:
DMA读写控制器、发送选择器、仲裁机、传输状态模块;
其中,所述DMA读写控制器与总线连接,所述DMA读写控制器用于通过所述总线从内存中获取待读出的数据帧和传输头描述符THD;和/或,和向内存中写入接收的数据帧、接收头描述符RHD和接收数据帧描述符RPD;
所述发送选择器的输入端与所述第一DMA控制器连接,所述发送选择器的输出端与所述第一数据帧处理器连接,用于确定发送数据的DMA通道;
所述仲裁机与所述第一数据帧处理器、传输状态模块、第二数据帧处理器和DMA读写控制器连接,用于确定当前的传输任务,更新传输状态模块;
所述传输状态模块用于指示当前的数据传输状态。
8.一种数据传输方法,其特征在于,所述方法应用于如权利要求1-7任一项所述的DMA装置,所述方法包括:
接收数据读出请求;所述数据读出请求中携带传输头描述符THD在内存中的位置信息;
根据所述数据读出请求,从内存中获取所述THD和第一数据帧,并将所述THD和所述第一数据帧搬移至外部存储设备中;所述THD用于携带第一控制信息并指示待读出的数据帧信息;所述第一数据帧是需要从内存中搬移至外部存储设备中的数据帧;和/或,
接收数据写入请求;所述数据写入请求携带接收头描述符RHD在外部存储设备中的位置信息;
根据所述数据写入请求,从外部存储设备获取所述RHD和第二数据帧,并将所述RHD和第二数据帧搬移至内存中;所述RHD用于携带第二控制信息并指示待写入的数据帧信息;所述第二数据帧是需要从外部存储设备搬移至内存中的数据帧。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求8所述的数据传输方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求8所述的数据传输方法。
CN202310118495.7A 2023-02-02 2023-02-02 Dma装置和数据传输方法 Pending CN116244232A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310118495.7A CN116244232A (zh) 2023-02-02 2023-02-02 Dma装置和数据传输方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310118495.7A CN116244232A (zh) 2023-02-02 2023-02-02 Dma装置和数据传输方法

Publications (1)

Publication Number Publication Date
CN116244232A true CN116244232A (zh) 2023-06-09

Family

ID=86634506

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310118495.7A Pending CN116244232A (zh) 2023-02-02 2023-02-02 Dma装置和数据传输方法

Country Status (1)

Country Link
CN (1) CN116244232A (zh)

Similar Documents

Publication Publication Date Title
US6871237B2 (en) System for controlling data transfer protocol with a host bus interface
US5317692A (en) Method and apparatus for buffer chaining in a communications controller
KR980007767A (ko) 비디오 데이터 전송, 라인 속도 변경, 데이터 구조 준비 및 가변 속도 클럭의 속도 결정 방법과 컴퓨터 판독가능 매체
US20060182040A1 (en) Device and method for diagnosis in multi-channel-CAN-applications
CN116244232A (zh) Dma装置和数据传输方法
CN113157465A (zh) 基于指针链表的消息发送方法及装置
CN112422485B (zh) 一种传输控制协议的通信方法及装置
WO2007096712A1 (en) A method and device for exchanging data using a virtual fifo data structure
US20030065735A1 (en) Method and apparatus for transferring packets via a network
CN116471242A (zh) 基于rdma的发送端、接收端、数据传输系统及方法
CN115904259A (zh) 非易失性存储器标准NVMe指令的处理方法及相关装置
CN116233036A (zh) 一种dma传输控制方法及装置
US5432910A (en) Coupling apparatus and method for increasing the connection capability of a communication system
CN112511441A (zh) 报文的处理方法及装置
CN113157610B (zh) 数据保存方法及装置、存储介质、电子装置
CN111200594B (zh) 接收数据的方法、装置、数据接收设备和存储介质
JPH09224066A (ja) 通信プロトコル並列処理装置
CN114741214B (zh) 一种数据传输方法、装置及设备
US10986040B2 (en) Network communication apparatus and method of the same
CN111124987B (zh) 一种基于pcie的数据传输控制系统和方法
CN117640881A (zh) 视频传输方法、系统、设备以及存储介质
US20100011140A1 (en) Ethernet Controller Using Same Host Bus Timing for All Data Object Access
KR100800704B1 (ko) 이동 통신 단말기의 메시지 전처리기 및 그 제어 방법
US7478137B1 (en) Lightweight messaging with and without hardware guarantees
JP2002189607A (ja) メモリ管理方法及び情報処理装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination