CN107832240B - 一种基于信息记录结构体的dma数据交互方法和装置 - Google Patents

一种基于信息记录结构体的dma数据交互方法和装置 Download PDF

Info

Publication number
CN107832240B
CN107832240B CN201711026587.3A CN201711026587A CN107832240B CN 107832240 B CN107832240 B CN 107832240B CN 201711026587 A CN201711026587 A CN 201711026587A CN 107832240 B CN107832240 B CN 107832240B
Authority
CN
China
Prior art keywords
state
information recording
recording structure
data
host
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.)
Active
Application number
CN201711026587.3A
Other languages
English (en)
Other versions
CN107832240A (zh
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 Tengling Technology Co ltd
Original Assignee
Beijing Tengling 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 Tengling Technology Co ltd filed Critical Beijing Tengling Technology Co ltd
Priority to CN201711026587.3A priority Critical patent/CN107832240B/zh
Publication of CN107832240A publication Critical patent/CN107832240A/zh
Application granted granted Critical
Publication of CN107832240B publication Critical patent/CN107832240B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本公开提供了一种基于信息记录结构体的DMA数据交互方法和装置。创建多个应用于DMA数据交互的信息记录结构体,该信息记录结构体至少可存放数据段的长度信息,计数信息,内存空间地址信息和处理状态信息。信息记录结构体使DMA数据交互过程中的传输信息能够固定快速分配,主机和FPGA可以通过对多个信息记录结构体中处理状态标志位的监测获取每段数据的处理状态,进而能够快速准确对每段数据做出相应处理,提高了DMA传输过程的数据处理效率。

Description

一种基于信息记录结构体的DMA数据交互方法和装置
技术领域
本公开涉及数据存储领域,特别是涉及一种基于信息记录结构体的DMA数据交互方法和装置。
背景技术
FPGA(Field-Programmable Gate Array,现场可编程门阵列)是一种可编程电路元器件,随着集成电路(IC)制造工艺的提升,FPGA芯片中的资源越来越多,运算能力和功能也越来越强大,因此,FPGA在信号采集,数据存储,雷达,通信等电子系统中的应用越来越广泛,当FPGA需要与计算机系统进行大量数据交换时,通常利用FPGA中的高速串行收发器来实现PCIE数据收发。
当利用PCIE总线实现FPGA与主机之间的数据传输时,通常采用DMA(DirectMemory Access,直接内存存取)传输方式来加快数据传输速度,降低CPU负担,DMA控制器可以将数据从一个地址空间(主机)搬移到另一个地址空间(FPGA),搬移过程不需要CPU参与,因此节省了CPU资源。
DMA数据读写过程需要用到很多数据传输的相关信息,如数据的存储地址,数据的长度,数据的计数等,比较理想的情况下,数据传输信息准备完毕后立即开始数据读写,数据读写完毕后立即准备下一次的数据传输信息。但现有技术中传输端无法及时获取每段数据的处理状态,包括传输信息是否准备完成,数据是否读写完成等,也就不能够快速准确对每段数据做出相应处理,使DMA传输过程的数据处理效率较低。
发明内容
为解决上述技术问题,本公开提供了一种应用于DMA数据交互的信息记录结构体和基于所述信息记录结构体的DMA数据交互方法,技术方案如下:
一种应用于DMA数据交互的信息记录结构体,所述信息记录结构体至少包括:
数据段的长度信息;
数据段的计数信息;
数据段的内存空间地址信息,用于记录数据段在主机内存的存放地址;
数据段的处理状态信息,用于标识所述数据段的处理情况,具体包括:
状态A1:用于主机到FPGA方向的DMA数据交互,标识信息记录结构体处于初始状态;
状态A2:用于主机到FPGA方向的DMA数据交互,标识主机已经将为数据段分配的内存空间地址信息写入信息记录结构体;
状态A3:用于主机到FPGA方向的DMA数据交互,标识FPGA已经读取内存空间中的数据段;
状态B1:用于FPGA到主机方向的DMA数据交互,标识信息记录结构体处于初始状态;
状态B2:用于FPGA到主机方向的DMA数据交互,标识FPGA已经将数据段写入内存空间中。
一种基于所述信息记录结构体的DMA数据交互方法,所述数据交互为主机到FPGA方向,所述方法包括:
主机将为数据段分配的内存空间地址信息写入信息记录结构体,并在写入完成后将信息记录结构体中的数据处理状态由状态A1修改为状态A2;
FPGA监测到信息记录结构体中的数据处理状态被修改为状态A2后,根据所述信息记录结构体中内存空间地址信息读取主机相应内存空间中的数据段,并在读取完成后将信息记录结构体中的数据处理状态由状态A2修改为状态A3;
主机监测到信息记录结构体中的数据处理状态被修改为状态A3后,释放所述数据段的所在的内存空间,并将信息记录结构体中的数据处理状态由状态A3修改回状态A1。
一种基于所述信息记录结构体的DMA数据交互方法,所述数据交互为FPGA到主机方向,所述主机预先分配出多段内存空间地址并将各段地址信息分别存放在各个信息记录结构体中,所述方法包括:
FPGA读取信息记录结构体以获取主机为数据段分配的内存空间地址信息;
FPGA将数据段写入所述内存空间地址,写入完成后将数据处理状态由状态B1修改为状态B2;
主机监测到信息记录结构体中的数据处理状态被修改为状态B2后,读取并清空所述内存空间中的数据段,并将数据处理状态由状态B2修改回状态B1。
一种基于所述信息记录结构体的DMA数据交互系统,所述数据交互为主机到FPGA方向,所述系统包括:
主机将为数据段分配的内存空间地址信息写入信息记录结构体,并在写入完成后将信息记录结构体中的数据处理状态由状态A1修改为状态A2;
FPGA监测到信息记录结构体中的数据处理状态被修改为状态A2后,根据所述信息记录结构体中内存空间地址信息读取主机相应内存空间中的数据段,并在读取完成后将信息记录结构体中的数据处理状态由状态A2修改为状态A3;
主机监测到信息记录结构体中的数据处理状态被修改为状态A3后,释放所述数据段的所在的内存空间,并将信息记录结构体中的数据处理状态由状态A3修改回状态A1。
一种基于所述信息记录结构体的DMA数据交互系统,所述数据交互为FPGA到主机方向,所述主机预先分配出多段内存空间地址并将各段地址信息分别存放在各个信息记录结构体中,所述系统包括:
FPGA读取信息记录结构体以获取主机为数据段分配的内存空间地址信息;
FPGA将数据段写入所述内存空间地址,写入完成后将数据处理状态由状态B1修改为状态B2;
主机监测到信息记录结构体中的数据处理状态被修改为状态B2后,读取并清空所述内存空间中的数据段,并将数据处理状态由状态B2修改回状态B1。
本公开提供了一种DMA传输过程中可使用的信息记录结构体和应用这种信息记录结构体后的数据交互方法。使DMA数据交互过程中的数据存放地址等传输信息能够固定快速分配,其中,在信息记录结构体中设置数据处理状态标志位,主机和FPGA可以通过对多个信息记录结构体中处理状态标志位的监测获取每段数据的处理状态,进而能够快速准确对每段数据做出相应处理,提高了DMA传输过程的数据处理效率。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本公开实施例信息记录结构体的一种结构示意图;
图2为本公开实施例信息记录结构体位于主机中一种示意图;
图3为本公开实施例信息记录结构体位于主机中的另一种示意图;
图4为本公开实施例基于信息记录结构体的DMA数据交互方法的一种流程图;
图5为本公开实施例基于信息记录结构体的DMA数据交互方法的另一种流程图;
图6为本公开实施例基于信息记录结构体的DMA数据交互系统的一种示意图;
图7为本公开实施例基于信息记录结构体的DMA数据交互系统的另一种示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
以上所述仅为本公开的较佳实施例而已,并不用以限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开保护的范围之内。
首先对本公开提供的信息记录结构体进行说明,图1是根据一示例性实施例示出的一种信息记录结构体的结构示意图。
如图1所示,信息记录结构体用于存放数据段的各种信息,其中至少包括:数据段的处理状态信息,数据段的长度信息,数据段的计数信息,数据段的地址信息。
其中,数据段的长度信息用于记录数据段的长度;
数据段的计数信息用于记录数据段在整体数据传输中的编号;
数据段的地址信息用于记录数据段在主机内存空间中的存放地址;
数据段的处理状态信息,用于标识所述数据段的处理情况,具体包括:
状态A1:用于主机到FPGA方向的DMA数据交互,标识信息记录结构体处于初始状态;
状态A2:用于主机到FPGA方向的DMA数据交互,标识主机已经将为数据段分配的内存空间地址信息写入信息记录结构体;
状态A3:用于主机到FPGA方向的DMA数据交互,标识FPGA已经读取内存空间中的数据段;
状态B1:用于FPGA到主机方向的DMA数据交互,标识信息记录结构体处于初始状态;
状态B2:用于FPGA到主机方向的DMA数据交互,标识FPGA已经将数据段写入内存空间中。
该信息记录结构体通常位于主机存储设备的驱动程序中,请参考图2,图2示出了主机的软件组成的示意图,主机可以是个人计算机,服务器计算机或其他具有计算能力的设备。主机可以通过CPU驱动中的信息记录机构体进行读写。
本公开需要在内存中创建多个信息记录结构体。具体地。在内存中划分出两片区域,分别用于FPGA到主机方向的DMA数据交互(也称上行DMA),和主机到FPGA方向的DMA数据交互(也称下行DMA)。
请参考图3,在内存的每片区域中划分若干小区域,在每个小区域创建一个信息记录结构体,每个信息记录结构体都可用于一个数据段的交互。如图所示,内存中的信息记录结构体需要创建多个,通过多个信息记录结构体的循环使用实现稳定快速的DMA双向交互。
举例说明,假设内存中创建了1024个信息记录结构体用于主机到FPGA方向的DMA数据交互,分别为信息记录结构体1,信息记录结构体2…信息记录结构体1024,数据交互开始后,信息记录结构体1-1024分别用于数据段1-1024的数据传输,当其中某个数据段传输完毕后,对应的信息记录结构体回归初始状态,并继续开始数据段1025的传输。以此类推,通过每个信息记录结构体的循环使用实现整体数据的有序快速传输。
请参考图4,为本公开实施例基于信息记录结构体的DMA数据交互方法的一种流程图,所述数据交互为主机到FPGA方向,其包括以下基本步骤:
S401,主机将为数据段分配的内存空间地址信息写入信息记录结构体,并在写入完成后将信息记录结构体中的数据处理状态由状态A1修改为状态A2;
其中,状态A1用于标识信息记录结构体处于初始状态,状态A2用于标识主机已经将为数据段分配的内存空间地址信息写入信息记录结构体。
信息记录结构体中的数据处理状态可以是一个标志位,主机或FPGA每次完成一个操作后,通过修改数据处理状态标志位来标识已经完成本次操作。主机和FPGA监控各个信息记录结构体,当发现数据处理状态发生变化后,开始进行下一步操作。
信息记录结构体位于主机内存中,主机和FPGA在使用信息记录结构体之前,需要先读取PCIE的bar空间,以获取信息记录结构体的基地址。
S402,FPGA根据信息记录结构体中内存空间地址信息读取主机相应内存空间中的数据段,并在读取完成后将信息记录结构体中的数据处理状态由状态A2修改为状态A3;
FPGA监测到信息记录结构体中的数据处理状态被修改为状态A2后,确定主机已经将内存空间地址信息写入信息记录结构体,读取主机相应内存空间中的数据段,并在读取完成后将信息记录结构体中的数据处理状态由状态A2修改为状态A3,其中,状态A3用于标识FPGA已经读取内存空间中的数据段。
S403,主机释放所述数据段的所在的内存空间,并将信息记录结构体中的数据处理状态由状态A3修改回状态A1。
主机监测到信息记录结构体中的数据处理状态被修改为状态A3后,释放所述数据段的所在的内存空间,以便下次使用。
在一实施例中,主机除了将为数据段分配的内存空间地址信息写入信息记录结构体外,也将其余的传输信息写入信息记录结构体,这里其余传输信息至少包括数据段长度信息和数据段计数信息。相应地,FPGA读取信息记录结构体中的其余传输信息并将信息记录结构体中的数据处理状态由状态A2修改为状态A3。
在一实施例中,主机将为数据段分配的内存空间地址写入信息记录结构体之前,需要先为数据段分配一段内存空间地址,并根据所述内存空间地址将数据段写入相应内存空间,以便FPGA在该内存空间获取数据。
请参考图5,为本公开实施例基于信息记录结构体的DMA数据交互方法的另一种流程图,所述数据交互为FPGA到主机方向,其包括以下基本步骤:
S501,FPGA读取信息记录结构体以获取主机为数据段分配的内存空间地址信息;
在FPGA向主机方向的DMA数据交互中,主机会预先分配出多段内存空间地址并将各段地址信息分别存放在各个信息记录结构体中,FPGA需要先读取信息记录结构体以获取一段内存空间地址,用来写入数据段。
S502,FPGA将数据段写入所述内存空间地址,写入完成后将数据处理状态由状态B1修改为状态B2;
状态B1用于标识信息记录结构体处于初始状态,状态B2用于标识FPGA已经将数据段写入内存空间中。
S503,主机读取并清空所述内存空间中的数据段,并将数据处理状态由状态B2修改回状态B1。
主机监测到信息记录结构体中的数据处理状态被修改为状态B2后,读取并清空所述内存空间中的数据段,以便内存空间的再次使用。
在一实施例中,FPGA将数据段写入所述内存空间地址,并将数据段的其余传输信息写入信息记录结构体,所述其余传输信息至少包括数据段长度信息和数据段计数信息,相应地,主机读取信息记录结构体中的其余传输信息并将数据处理状态由状态B2修改回状态B1。
请参考图6,为本公开实施例基于信息记录结构体的一种数据交互系统的结构示意图,所述数据交互为主机到FPGA方向。所述系统包括:第一写入模块610,第一读取模块620,内存释放模块630。
第一写入模块610:用于控制主机将为数据段分配的内存空间地址信息写入信息记录结构体,并在写入完成后将信息记录结构体中的数据处理状态由状态A1修改为状态A2;
第一读取模块620:用于控制FPGA监测到信息记录结构体中的数据处理状态被修改为状态A2后,根据所述信息记录结构体中内存空间地址信息读取主机相应内存空间中的数据段,并在读取完成后将信息记录结构体中的数据处理状态由状态A2修改为状态A3;
内存释放模块630:用于控制主机监测到信息记录结构体中的数据处理状态被修改为状态A3后,释放所述数据段的所在的内存空间,并将信息记录结构体中的数据处理状态由状态A3修改回状态A1。
请参考图7,为本公开实施例基于信息记录结构体的一种数据交互系统的结构示意图,所述数据交互为FPGA到主机方向。所述系统包括:第二读取模块710,第二写入模块720,数据清空模块730。
第二读取模块710:用于控制FPGA读取信息记录结构体以获取主机为数据段分配的内存空间地址信息;
第二写入模块720:用于控制FPGA将数据段写入所述内存空间地址,写入完成后将数据处理状态由状态B1修改为状态B2;
数据清空模块730:用于控制主机监测到信息记录结构体中的数据处理状态被修改为状态B2后,读取并清空所述内存空间中的数据段,并将数据处理状态由状态B2修改回状态B1。
本公开中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本公开的较佳实施例而已,并不用以限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开保护的范围之内。

Claims (10)

1.一种应用于DMA数据交互的信息记录结构体,其特征在于,所述信息记录结构体被循环使用,所述信息记录结构体至少包括:
数据段的长度信息;
数据段的计数信息;
数据段的内存空间地址信息,用于记录数据段在主机内存的存放地址;
数据段的处理状态信息,用于标识所述数据段的处理情况,具体包括:
状态A1:用于主机到FPGA方向的DMA数据交互,标识信息记录结构体处于初始状态;
状态A2:用于主机到FPGA方向的DMA数据交互,标识主机已经将为数据段分配的内存空间地址信息写入信息记录结构体;
状态A3:用于主机到FPGA方向的DMA数据交互,标识FPGA已经读取内存空间中的数据段;
状态B1:用于FPGA到主机方向的DMA数据交互,标识信息记录结构体处于初始状态;
状态B2:用于FPGA到主机方向的DMA数据交互,标识FPGA已经将数据段写入内存空间中。
2.一种基于权利要求1所述信息记录结构体的DMA数据交互方法,所述数据交互为主机到FPGA方向,其特征在于,所述方法包括:
主机将为数据段分配的内存空间地址信息写入信息记录结构体,并在写入完成后将信息记录结构体中的数据处理状态由状态A1修改为状态A2;
FPGA监测到信息记录结构体中的数据处理状态被修改为状态A2后,根据所述信息记录结构体中内存空间地址信息读取主机相应内存空间中的数据段,并在读取完成后将信息记录结构体中的数据处理状态由状态A2修改为状态A3;
主机监测到信息记录结构体中的数据处理状态被修改为状态A3后,释放所述数据段的所在的内存空间,并将信息记录结构体中的数据处理状态由状态A3 修改回状态A1。
3.根据权利要求2所述的方法,其特征在于,所述主机将为数据段分配的内存空间地址信息写入信息记录结构体,包括:
主机将为数据段分配的内存空间地址信息和数据段的其余传输信息写入信息记录结构体,所述其余传输信息至少包括数据段长度信息和数据段计数信息。
4.根据权利要求3所述的方法,其特征在于,所述将信息记录结构体中的数据处理状态由状态A2修改为状态A3,包括:
读取信息记录结构体中的其余传输信息并将信息记录结构体中的数据处理状态由状态A2修改为状态A3。
5.根据权利要求2所述的方法,其特征在于,所述主机将为数据段分配的内存空间地址信息写入信息记录结构体之前,还包括:
主机为数据段分配一段内存空间地址,并根据所述内存空间地址将数据段写入相应内存空间。
6.一种基于权利要求1所述信息记录结构体的DMA数据交互方法,所述数据交互为FPGA到主机方向,所述主机预先分配出多段内存空间地址并将各段地址信息分别存放在各个信息记录结构体中,其特征在于,所述方法包括:
FPGA读取信息记录结构体以获取主机为数据段分配的内存空间地址信息;
FPGA将数据段写入所述内存空间地址,写入完成后将数据处理状态由状态B1修改为状态B2;
主机监测到信息记录结构体中的数据处理状态被修改为状态B2后,读取并清空所述内存空间中的数据段,并将数据处理状态由状态B2修改回状态B1。
7.根据权利要求6所述的方法,其特征在于,所述FPGA将数据段写入所述内存空间地址,包括:
所述FPGA将数据段写入所述内存空间地址, 并将数据段的其余传输信息写入信息记录结构体,所述其余传输信息至少包括数据段长度信息和数据段计数信息。
8.根据权利要求7所述的方法,其特征在于,所述将数据处理状态由状态B2修改回状态B1,包括:
读取信息记录结构体中的其余传输信息并将数据处理状态由状态B2修改回状态B1。
9.一种基于权利要求1所述信息记录结构体的DMA数据交互系统,所述数据交互为主机到FPGA方向,其特征在于,所述系统包括:
第一写入模块:用于控制主机将为数据段分配的内存空间地址信息写入信息记录结构体,并在写入完成后将信息记录结构体中的数据处理状态由状态A1修改为状态A2;
第一读取模块:用于控制FPGA监测到信息记录结构体中的数据处理状态被修改为状态A2后,根据所述信息记录结构体中内存空间地址信息读取主机相应内存空间中的数据段,并在读取完成后将信息记录结构体中的数据处理状态由状态A2修改为状态A3;
内存释放模块:用于控制主机监测到信息记录结构体中的数据处理状态被修改为状态A3后,释放所述数据段的所在的内存空间,并将信息记录结构体中的数据处理状态由状态A3修改回状态A1。
10.一种基于权利要求1所述信息记录结构体的DMA数据交互系统,所述数据交互为FPGA到主机方向,所述主机预先分配出多段内存空间地址并将各段地址信息分别存放在各个信息记录结构体中,其特征在于,所述系统包括:
第二读取模块:用于控制FPGA读取信息记录结构体以获取主机为数据段分配的内存空间地址信息;
第二写入模块:用于控制FPGA将数据段写入所述内存空间地址,写入完成后将数据处理状态由状态B1修改为状态B2;
数据清空模块:用于控制主机监测到信息记录结构体中的数据处理状态被修改为状态B2后,读取并清空所述内存空间中的数据段,并将数据处理状态由状态B2修改回状态B1。
CN201711026587.3A 2017-10-27 2017-10-27 一种基于信息记录结构体的dma数据交互方法和装置 Active CN107832240B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711026587.3A CN107832240B (zh) 2017-10-27 2017-10-27 一种基于信息记录结构体的dma数据交互方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711026587.3A CN107832240B (zh) 2017-10-27 2017-10-27 一种基于信息记录结构体的dma数据交互方法和装置

Publications (2)

Publication Number Publication Date
CN107832240A CN107832240A (zh) 2018-03-23
CN107832240B true CN107832240B (zh) 2020-06-09

Family

ID=61649917

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711026587.3A Active CN107832240B (zh) 2017-10-27 2017-10-27 一种基于信息记录结构体的dma数据交互方法和装置

Country Status (1)

Country Link
CN (1) CN107832240B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109710560A (zh) * 2018-12-25 2019-05-03 杭州迪普科技股份有限公司 一种cpu与fpga交互确认的方法和装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1258362A (zh) * 1997-05-30 2000-06-28 三洋电机株式会社 通信dma装置
CN1658176A (zh) * 2004-02-21 2005-08-24 华为技术有限公司 数据通信的方法及设备
CN101452427A (zh) * 2008-11-19 2009-06-10 北京红旗胜利科技发展有限责任公司 一种dma数据传输系统及方法和一种中央处理器
CN102662775A (zh) * 2012-03-29 2012-09-12 奇智软件(北京)有限公司 一种进程通信方法和装置
CN102693198A (zh) * 2012-05-12 2012-09-26 北京忆恒创源科技有限公司 Dma传输方法及系统
CN106547709A (zh) * 2016-11-24 2017-03-29 盛科网络(苏州)有限公司 灵活配置多通道dma控制器的方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10025722B2 (en) * 2015-10-28 2018-07-17 International Business Machines Corporation Efficient translation reloads for page faults with host accelerator directly accessing process address space without setting up DMA with driver and kernel by process inheriting hardware context from the host accelerator

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1258362A (zh) * 1997-05-30 2000-06-28 三洋电机株式会社 通信dma装置
CN1658176A (zh) * 2004-02-21 2005-08-24 华为技术有限公司 数据通信的方法及设备
CN101452427A (zh) * 2008-11-19 2009-06-10 北京红旗胜利科技发展有限责任公司 一种dma数据传输系统及方法和一种中央处理器
CN102662775A (zh) * 2012-03-29 2012-09-12 奇智软件(北京)有限公司 一种进程通信方法和装置
CN102693198A (zh) * 2012-05-12 2012-09-26 北京忆恒创源科技有限公司 Dma传输方法及系统
CN106547709A (zh) * 2016-11-24 2017-03-29 盛科网络(苏州)有限公司 灵活配置多通道dma控制器的方法及装置

Also Published As

Publication number Publication date
CN107832240A (zh) 2018-03-23

Similar Documents

Publication Publication Date Title
CN108459974B (zh) 集成闪存的高带宽存储器设备
US10282132B2 (en) Methods and systems for processing PRP/SGL entries
US11048645B2 (en) Memory module, operation method therof, and operation method of host
EP2417528B1 (en) Command and interrupt grouping for a data storage device
DE112005001512B4 (de) Vorrichtung und Verfahren für den Hochleistungs- Zugriff auf einen flüchtigen Plattenlaufwerkspeicher unter Einsatz einer integrierten Direkt-Speicherzugriffs-Einrichtung
US9507533B2 (en) Command and data selection in storage controller systems
US9052835B1 (en) Abort function for storage devices by using a poison bit flag wherein a command for indicating which command should be aborted
KR20160049200A (ko) 데이터 저장 장치의 작동 방법, 이를 포함하는 모바일 컴퓨팅 장치, 및 이의 작동 방법
KR102545689B1 (ko) 버퍼를 갖는 컴퓨팅 시스템 및 그것의 동작 방법
CN107257953A (zh) 测量并向主机报告固态驱动器的输入和输出操作的等待时间
DE102020211544A1 (de) Steuerung, betriebsverfahren der steuerung und speichergerät mit derselben
DE102018110704A1 (de) Speicherungsvorrichtung für ein vorausgehendes Verwalten einer Schreibdaten zuzuweisenden physischen Adresse
CN113590512A (zh) 可直连外设设备的自启动dma装置及应用
CN107832240B (zh) 一种基于信息记录结构体的dma数据交互方法和装置
CN105264608B (zh) 存储数据的方法、内存控制器和中央处理器
CN105681222A (zh) 一种数据接收缓存方法、装置及通信系统
CN115840654B (zh) 消息的处理方法、系统、计算设备及可读存储介质
US10452574B2 (en) Read performance on a SATA storage device behind a host bus adapter
TWI629638B (zh) 儲存裝置及其任務執行方法、對應於儲存裝置的主機及其任務執行方法、以及應用於儲存裝置的控制單元
CN109710187A (zh) NVMe SSD主控芯片的读命令加速方法、装置、计算机设备及存储介质
CN101394458B (zh) 读写存储器的管理方法、装置及数码印刷设备
EP4033346B1 (en) Affinity-based cache operation for a persistent storage device
CN116860185B (zh) Sram阵列的数据访问装置、系统、方法、设备、芯片和介质
JP7363344B2 (ja) メモリ制御装置、および制御方法
CN107145507B (zh) 一种面向NandFLASH的多相机多图像并行处理的图像文件系统

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
GR01 Patent grant
GR01 Patent grant