CN112131154A - 一种通道与业务动态匹配的dma传输控制方法 - Google Patents
一种通道与业务动态匹配的dma传输控制方法 Download PDFInfo
- Publication number
- CN112131154A CN112131154A CN202011054986.2A CN202011054986A CN112131154A CN 112131154 A CN112131154 A CN 112131154A CN 202011054986 A CN202011054986 A CN 202011054986A CN 112131154 A CN112131154 A CN 112131154A
- Authority
- CN
- China
- Prior art keywords
- channel
- receiving
- data
- sending
- transmission
- 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.)
- Granted
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 143
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000012545 processing Methods 0.000 claims description 18
- 238000012546 transfer Methods 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 11
- 238000004806 packaging method and process Methods 0.000 claims description 6
- 238000012423 maintenance Methods 0.000 claims description 4
- 239000012634 fragment Substances 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 8
- 230000007704 transition Effects 0.000 description 6
- 230000001133 acceleration Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Communication Control (AREA)
Abstract
本发明涉及一种通道与业务动态匹配的DMA传输控制方法,包括:PCIe接口控制进行PCIe接口的接收与发送控制,接收数据时与接收通道的动态匹配,发送数据时与发送通道的动态匹配,以及空闲接收缓存与可用发送缓存不足时,进行流量控制;传输通道控制包括接收通道与发送通道控制,进行各路DMA传输通道数据传输过程的传输控制,控制当前通道数据的传输过程,并向PCIe接口控制与业务逻辑提供当前传输通道的传输状态,完成PCIe接口控制与传输通道以及业务逻辑与传输通道的动态匹配;业务逻辑完成各个业务逻辑,以及进行动态匹配包含相应业务数据的接收通道以及动态匹配当前可用的空闲发送通道。
Description
技术领域
本发明属于DMA技术领域,特别涉及一种FPGA逻辑实现的PCIe接口DMA传输控制方法。
背景技术
随着大数据时代的到来,越来越多的关键业务被移植到FPGA上,以提升系统的整体性能。为了适应海量业务的传输处理需求,很多系统使用包含FPGA的PCIe加速设备对业务数据进行传输处理加速。PCIe加速设备通常固化有限传输通道,为不同种类、不同优先级的业务提供具有针对性的传输控制服务。
在通常应用场景中,PCIe加速设备用于单一或很少种类的业务加速。此时,将一个或多个DMA传输通道与业务逻辑绑定,实现对业务数据的传输处理加速。
在特定应用场景中,待加速业务种类较多,无法进行DMA传输通道与业务逻辑的多对一或一对一绑定;各业务的使用频率不同,使得传输通道不能保持均衡的传输负载;同时,由于DMA传输通道与业务逻辑的高耦合,在业务逻辑变化时,不可避免地会导致相应DMA传输通道的更改;在输出与输入相关联的业务中,输入、处理与输出只能串行执行,影响系统整体性能。
发明内容
本发明是一种FPGA逻辑实现的,传输通道与业务逻辑多对多动态匹配的,适用于PCIe接口的DMA传输控制方法。
本发明一种通道与业务动态匹配的DMA传输控制方法,其中,包括:PCIe接口控制、传输通道控制以及业务逻辑;其中,PCIe接口控制进行PCIe接口的接收与发送控制,接收数据时与接收通道的动态匹配,发送数据时与发送通道的动态匹配,以及空闲接收缓存与可用发送缓存不足时,进行流量控制;传输通道控制包括接收通道与发送通道控制,进行各路DMA传输通道数据传输过程的传输控制,控制当前通道数据的传输过程,并向PCIe接口控制与业务逻辑提供当前传输通道的传输状态,完成PCIe接口控制与传输通道以及业务逻辑与传输通道的动态匹配;业务逻辑完成各个业务逻辑,以及进行动态匹配包含相应业务数据的接收通道以及动态匹配当前可用的空闲发送通道;PCIe接口控制包括:PCIe IP核、PCIe接收控制模块、PCIe发送控制模块、DMA相关寄存器与通用寄存器;PCIe IP核进行PCIe接口物理层与链路层的协议控制、数据缓存、中断控制以及配置空间的维护;PCIe接收控制模块进行事务层包的解析和处理、数据包的乱序处理、差错控制以及与接收通道的动态匹配;PCIe发送控制模块进行可用DMA发送通道的动态匹配、事务层包的封装以及根据配置自动裁剪事务层包;DMA相关寄存器,随数据一起通过DMA传输通道传输至业务逻辑与发送逻辑;PCIe接口数据接收、业务逻辑处理与PCIe接口数据发送同步进行,根据接口传输速率与业务处理速率的差异情况,调整传输通道与业务逻辑数量。
根据本发明的通道与业务动态匹配的DMA传输控制方法的一实施例,其中,PCIe接收控制模块收到宿主机的DMA传输请求;获取可用的DMA接收通道,若无可用通道,则向宿主机发送流量控制信息;根据最大读请求长度与最大负载长度,计算传输请求所需的PCIe读请求事务包数量,并发送相应数量的包给宿主机;接收并解析事务层包;判断当前包的合法性,若不合法,则丢弃处理,并报错;若当前包是合法的完成事务包,则处理接收顺序,转发完成事务包的数据到接收通道;判断接收是否完成,否则继续等待接收解析事务层包。
根据本发明的通道与业务动态匹配的DMA传输控制方法的一实施例,其中,PCIe接收控制模块,根据各接收通道的状态判断是否存在空闲的接收通道,从上次查找命中位置后面开始,找到匹配的空闲接收通道,使得满足条件的接收通道都有相同的机会被匹配,平衡了接收通道负载。
根据本发明的通道与业务动态匹配的DMA传输控制方法的一实施例,其中,PCIe发送控制模块收到宿主机的DMA接收请求;获取可用的发送通道;根据最大负载长度判断数据是否需要分片,并将各数据片依次封包发送;在收到宿主机的流量控制请求时,协助完成流量控制。
根据本发明的通道与业务动态匹配的DMA传输控制方法的一实施例,其中,PCIe接口控制获取可用的DMA发送通道,动态匹配发送通道,PCIe发送控制模块根据各接收通道的状态判断是否存在可用的发送通道;从上次查找命中位置后面开始,找到可用的发送通道,满足条件的发送通道都有相同的机会被匹配,平衡发送通道负载。
根据本发明的通道与业务动态匹配的DMA传输控制方法的一实施例,其中,传输通道控制包括多个接收通道寄存器、多个发送通道寄存器以及缓存与控制模块;接收通道寄存器的值由PCIe接口控制部分确定,包含当前至业务逻辑的传输控制信息;发送通道寄存器的值由业务逻辑部分确定,包含当前至PCIe接口控制部分的传输控制信息。
根据本发明的通道与业务动态匹配的DMA传输控制方法的一实施例,其中,上电以及复位与初始化后,接收通道处于空闲状态;接收通道接收PCIe接口数据时,进入接收数据状态,相应的接收计数器与接收通道长度寄存器相等时,指示接收通道接收PCIe数据完毕,通道进入接收数据完毕状态,接收通道开始向业务逻辑转发数据;接收通道接收到业务逻辑的数据发送请求时,进入发送数据状态,相应的发送计数器与接收通道长度寄存器相等时,指示接收通道完成业务数据的转发,接收通道重新进入空闲状态,可被选中用于新的PCIe数据接收。
根据本发明的通道与业务动态匹配的DMA传输控制方法的一实施例,其中,上电、复位与初始化后,发送通道处于空闲状态;发送通道接收到业务逻辑的数据发送请求时,进入接收数据状态,接收计数器与发送通道长度寄存器相等时,指示发送通道接收业务逻辑数据完毕,通道进入接收数据完毕状态,发送通道开始向PCIe接口转发数据;发送通道接收到发送接口的数据发送请求时,进入发送数据状态,发送计数器与发送通道长度寄存器相等时,指示发送通道完成业务数据的转发,发送通道重新进入空闲状态,可被选中用于业务数据接收。
根据本发明的通道与业务动态匹配的DMA传输控制方法的一实施例,其中,业务逻辑部分包括业务数据传输控制模块与多个业务逻辑模块;业务数据传输控制模块用于传输通道与业务逻辑的动态匹配,在接收通道向业务逻辑转发数据时,业务数据传输控制模块首先判断是否存在接收数据完毕且未被占用的接收通道,同时判断接收通道接收到的数据业务类型对应的业务逻辑是否空闲;当接收通道对应的数据类型对应多个业务逻辑时,按既定优先级或遍历算法确定业务逻辑的选用,在业务逻辑向发送通道转发数据时,业务数据传输控制模块需要判断是否存在空闲的发送通道,或存在通道优先级时,不高于业务优先级的且最高优先级的空闲发送通道。
根据本发明的通道与业务动态匹配的DMA传输控制方法的一实施例,其中,DMA相关寄存器包括起始地址寄存器、长度寄存器以及业务类型寄存器。
本发明提供一种通道与业务动态匹配的DMA传输控制方法,将DMA传输通道与业务分离,业务逻辑根据DMA传输通道的传输状态,使用特定算法动态匹配传输通道;在传输数据的同时传输数据状态,使得PCIe接口收发、DMA传输与业务处理可同步进行,提升系统的整体性能。
附图说明
图1是本发明的系统框图;
图2是PCIe接收控制模块的主要控制流程;
图3是PCIe发送控制模块的主要控制流程;
图4是PCIe接口控制部分主要的DMA相关寄存器与通用寄存器类型;
图5是接收通道的状态迁移图;
图6是发送通道的状态迁移图。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
图1是本发明的系统框图,如图1所示,本发明主要由PCIe接口控制,传输通道控制,以及业务逻辑三部分构成。
其中,PCIe接口控制部分主要完成PCIe接口的接收与发送控制,接收数据时与接收通道的动态匹配,发送数据时与发送通道的动态匹配,以及空闲接收缓存与可用发送缓存不足时的流量控制等;传输通道控制部分主要完成各路DMA传输通道数据传输过程的传输控制,以及传输状态的维护;业务逻辑部分除完成各个业务逻辑外,还要负责动态匹配包含相应业务数据的接收通道,以及动态匹配当前可用的空闲发送通道。
在设备正常工作时,PCIe接口数据接收、业务逻辑处理与PCIe接口数据发送可以同步进行。在理想情况下,设备可以连续接收、处理与发送数据。在实际工作中,根据接口传输速率与业务处理速率的差异情况,调整传输通道与业务逻辑数量,以提升系统整体性能。
如图1所示,(1)PCIe接口控制部分
PCIe接口控制部分由PCIe IP核、PCIe接收控制模块、PCIe发送控制模块、DMA相关寄存器与通用寄存器构成。其中,PCIe IP核由FPGA提供,主要实现PCIe接口物理层与链路层的协议控制,数据缓存,中断控制,以及配置空间的维护等功能;PCIe接收控制模块主要完成事务层包的解析和处理,数据包的乱序处理,差错控制,以及与接收通道的动态匹配等功能;PCIe发送控制模块主要完成可用DMA发送通道的动态匹配,事务层包的封装,以及根据配置自动裁剪事务层包等功能;DMA相关寄存器即传输数据状态相关的寄存器,包括起始地址寄存器、长度寄存器、业务类型寄存器等,并随数据一起通过DMA传输通道传输至业务逻辑与发送逻辑;通用寄存器包括系统控制、系统状态等寄存器,可被宿主机读写访问控制。
图2是PCIe接收控制模块的主要控制流程,如图2所示,PCIe接收控制模块收到宿主机的DMA传输请求;获取可用的DMA接收通道,若无可用通道,则向宿主机发送流量控制信息;根据最大读请求长度与最大负载长度,计算传输请求所需的PCIe读请求事务包数量,并发送相应数量的包给宿主机;接收并解析事务层包;判断当前包的合法性,若不合法,则丢弃处理,并报错;若当前包是合法的完成事务包,则首先处理接收乱序问题,然后转发完成事务包的数据到接收通道;判断接收是否完成,否则继续等待接收解析事务层包。
如图2所示,PCIe接收控制模块主要控制流程,获取可用的DMA接收通道,即PCIe接口控制部分动态匹配接收通道的过程。此时,PCIe接收控制模块首先根据各接收通道的状态判断是否存在空闲的接收通道;然后从上次查找命中位置后面开始,按一定的算法,如循环按序查看后面的接收通道,或只查找低于本次传输优先级的通道,直到找到匹配的空闲接收通道为止。该过程使得满足条件的接收通道都有相同的机会被匹配,平衡了接收通道负载。同时,该过程使用组合逻辑快速实现,在通道数不是很多时,可在1个时钟周期内完成匹配。
图3是PCIe发送控制模块的主要控制流程。如图3所示,PCIe发送控制模块收到宿主机的DMA接收请求;获取可用的发送通道;根据最大负载长度判断数据是否需要分片,并将各数据片依次封包发送;在收到宿主机的流量控制请求时,协助完成流量控制。
图4是PCIe接口控制部分主要的DMA相关寄存器与通用寄存器类型,其中,获取可用的DMA发送通道,即PCIe接口控制部分动态匹配发送通道的过程。此时,PCIe发送控制模块首先根据各接收通道的状态判断是否存在可用的发送通道;然后从上次查找命中位置后面开始,找到可用的发送通道。该过程同样使得满足条件的发送通道都有相同的机会被匹配,平衡了发送通道负载。同时,该过程使用组合逻辑快速实现,在发送通道数量不是很多时,可在1个时钟周期内完成匹配。
(2)传输通道控制部分
图5是接收通道的状态迁移图,如图5所示,接收通道控制模块控制传输过程在4种状态之间转换,
传输通道控制部分由若干接收通道寄存器、缓存与控制模块,以及若干发送通道寄存器、缓存与控制模块构成。其中,接收通道寄存器的值由PCIe接口控制部分确定,包含当前至业务逻辑的传输控制信息;发送通道寄存器的值由业务逻辑部分确定,包含当前至PCIe接口控制部分的传输控制信息;通道控制模块控制当前通道数据的传输过程,并向PCIe接口控制部分与业务逻辑部分提供当前传输通道的传输状态,以便完成PCIe接口控制部分与传输通道,以及业务逻辑部分与传输通道的动态匹配。
上电、复位与初始化后,接收通道处于空闲状态。接收通道接收PCIe接口数据时,进入接收数据状态。接收计数器与接收通道长度寄存器相等时,指示接收通道接收PCIe数据完毕,通道进入接收数据完毕状态,此时,接收通道可开始向业务逻辑转发数据。接收通道接收到业务逻辑的数据发送请求时,进入发送数据状态。发送计数器与接收通道长度寄存器相等时,指示接收通道完成业务数据的转发,通道重新进入空闲状态,可被选中用于新的PCIe数据接收。
图6是发送通道的状态迁移图,如图6所示,发送通道控制模块控制传输过程在4种状态之间转换。
上电、复位与初始化后,发送通道同样处于空闲状态。发送通道接收到业务逻辑的数据发送请求时,进入接收数据状态。接收计数器与发送通道长度寄存器相等时,指示发送通道接收业务逻辑数据完毕,通道进入接收数据完毕状态,此时,发送通道可开始向PCIe接口转发数据。发送通道接收到发送接口的数据发送请求时,进入发送数据状态。发送计数器与发送通道长度寄存器相等时,指示发送通道完成业务数据的转发,通道重新进入空闲状态,可被选中用于业务数据接收。
(3)业务逻辑部分
业务逻辑部分由业务数据传输控制模块与多个业务逻辑模块构成。
业务数据传输控制模块用于传输通道与业务逻辑的动态匹配。在接收通道向业务逻辑转发数据时,业务数据传输控制模块首先判断是否存在接收数据完毕且未被占用的接收通道,同时判断接收通道接收到的数据业务类型对应的业务逻辑是否空闲;当接收通道对应的数据类型对应多个业务逻辑时,按既定优先级或遍历算法确定业务逻辑的选用。在业务逻辑向发送通道转发数据时,业务数据传输控制模块需要判断是否存在空闲的发送通道,或存在通道优先级时,不高于业务优先级的、最高优先级的空闲发送通道。该过程使用组合逻辑快速实现,一般可在1个时钟周期内完成空闲通道的匹配。
本发明传输通道不再对应固定业务逻辑,业务逻辑根据各通道传输状态与数据业务类型,以及匹配算法,灵活匹配传输通道;传输数据的同时,传输数据状态,使得各部分传输处理得以同步进行。
采用本发明的传输控制方法,可以通过自定义策略灵活匹配业务逻辑与传输通道,实现对不同业务逻辑的差异性传输服务,并平衡各传输通道的传输负载,升高传输通道利用率;同时,使得数据传输与业务处理得以同步进行,并可通过调整数据传输通道与业务逻辑数量与比例,优化系统整体性能。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (10)
1.一种通道与业务动态匹配的DMA传输控制方法,其特征在于,包括:PCIe接口控制、传输通道控制以及业务逻辑;
其中,PCIe接口控制进行PCIe接口的接收与发送控制,接收数据时与接收通道的动态匹配,发送数据时与发送通道的动态匹配,以及空闲接收缓存与可用发送缓存不足时,进行流量控制;传输通道控制包括接收通道与发送通道控制,进行各路DMA传输通道数据传输过程的传输控制,控制当前通道数据的传输过程,并向PCIe接口控制与业务逻辑提供当前传输通道的传输状态,完成PCIe接口控制与传输通道以及业务逻辑与传输通道的动态匹配;业务逻辑完成各个业务逻辑,以及进行动态匹配包含相应业务数据的接收通道以及动态匹配当前可用的空闲发送通道;
PCIe接口控制包括:PCIeIP核、PCIe接收控制模块、PCIe发送控制模块、DMA相关寄存器与通用寄存器;PCIe IP核进行PCIe接口物理层与链路层的协议控制、数据缓存、中断控制以及配置空间的维护;PCIe接收控制模块进行事务层包的解析和处理、数据包的乱序处理、差错控制以及与接收通道的动态匹配;PCIe发送控制模块进行可用DMA发送通道的动态匹配、事务层包的封装以及根据配置自动裁剪事务层包;DMA相关寄存器,随数据一起通过DMA传输通道传输至业务逻辑与发送逻辑;
PCIe接口数据接收、业务逻辑处理与PCIe接口数据发送同步进行,根据接口传输速率与业务处理速率的差异情况,调整传输通道与业务逻辑数量。
2.如权利要求1所述的通道与业务动态匹配的DMA传输控制方法,其特征在于,PCIe接收控制模块收到宿主机的DMA传输请求;获取可用的DMA接收通道,若无可用通道,则向宿主机发送流量控制信息;根据最大读请求长度与最大负载长度,计算传输请求所需的PCIe读请求事务包数量,并发送相应数量的包给宿主机;接收并解析事务层包;判断当前包的合法性,若不合法,则丢弃处理,并报错;若当前包是合法的完成事务包,则处理接收顺序,转发完成事务包的数据到接收通道;判断接收是否完成,否则继续等待接收解析事务层包。
3.如权利要求1所述的通道与业务动态匹配的DMA传输控制方法,其特征在于,PCIe接收控制模块,根据各接收通道的状态判断是否存在空闲的接收通道,从上次查找命中位置后面开始,找到匹配的空闲接收通道,使得满足条件的接收通道都有相同的机会被匹配,平衡了接收通道负载。
4.如权利要求1所述的通道与业务动态匹配的DMA传输控制方法,其特征在于,PCIe发送控制模块收到宿主机的DMA接收请求;获取可用的发送通道;根据最大负载长度判断数据是否需要分片,并将各数据片依次封包发送;在收到宿主机的流量控制请求时,协助完成流量控制。
5.如权利要求1所述的通道与业务动态匹配的DMA传输控制方法,其特征在于,PCIe接口控制获取可用的DMA发送通道,动态匹配发送通道,PCIe发送控制模块根据各接收通道的状态判断是否存在可用的发送通道;从上次查找命中位置后面开始,找到可用的发送通道,满足条件的发送通道都有相同的机会被匹配,平衡发送通道负载。
6.如权利要求1所述的通道与业务动态匹配的DMA传输控制方法,其特征在于,传输通道控制包括多个接收通道寄存器、多个发送通道寄存器以及缓存与控制模块;接收通道寄存器的值由PCIe接口控制部分确定,包含当前至业务逻辑的传输控制信息;发送通道寄存器的值由业务逻辑部分确定,包含当前至PCIe接口控制部分的传输控制信息。
7.如权利要求1所述的通道与业务动态匹配的DMA传输控制方法,其特征在于,上电以及复位与初始化后,接收通道处于空闲状态;接收通道接收PCIe接口数据时,进入接收数据状态,相应的接收计数器与接收通道长度寄存器相等时,指示接收通道接收PCIe数据完毕,通道进入接收数据完毕状态,接收通道开始向业务逻辑转发数据;接收通道接收到业务逻辑的数据发送请求时,进入发送数据状态,相应的发送计数器与接收通道长度寄存器相等时,指示接收通道完成业务数据的转发,接收通道重新进入空闲状态,可被选中用于新的PCIe数据接收。
8.如权利要求1所述的通道与业务动态匹配的DMA传输控制方法,其特征在于,上电、复位与初始化后,发送通道处于空闲状态;发送通道接收到业务逻辑的数据发送请求时,进入接收数据状态,接收计数器与发送通道长度寄存器相等时,指示发送通道接收业务逻辑数据完毕,通道进入接收数据完毕状态,发送通道开始向PCIe接口转发数据;发送通道接收到发送接口的数据发送请求时,进入发送数据状态,发送计数器与发送通道长度寄存器相等时,指示发送通道完成业务数据的转发,发送通道重新进入空闲状态,可被选中用于业务数据接收。
9.如权利要求1所述的通道与业务动态匹配的DMA传输控制方法,其特征在于,业务逻辑部分包括业务数据传输控制模块与多个业务逻辑模块;
业务数据传输控制模块用于传输通道与业务逻辑的动态匹配,在接收通道向业务逻辑转发数据时,业务数据传输控制模块首先判断是否存在接收数据完毕且未被占用的接收通道,同时判断接收通道接收到的数据业务类型对应的业务逻辑是否空闲;当接收通道对应的数据类型对应多个业务逻辑时,按既定优先级或遍历算法确定业务逻辑的选用,在业务逻辑向发送通道转发数据时,业务数据传输控制模块需要判断是否存在空闲的发送通道,或存在通道优先级时,不高于业务优先级的且最高优先级的空闲发送通道。
10.如权利要求1所述的通道与业务动态匹配的DMA传输控制方法,其特征在于,DMA相关寄存器包括起始地址寄存器、长度寄存器以及业务类型寄存器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011054986.2A CN112131154B (zh) | 2020-09-29 | 2020-09-29 | 一种通道与业务动态匹配的dma传输控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011054986.2A CN112131154B (zh) | 2020-09-29 | 2020-09-29 | 一种通道与业务动态匹配的dma传输控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112131154A true CN112131154A (zh) | 2020-12-25 |
CN112131154B CN112131154B (zh) | 2024-06-18 |
Family
ID=73843211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011054986.2A Active CN112131154B (zh) | 2020-09-29 | 2020-09-29 | 一种通道与业务动态匹配的dma传输控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112131154B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112905517A (zh) * | 2021-03-09 | 2021-06-04 | 明峰医疗系统股份有限公司 | 一种基于fpga的可变包长度数据采集方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090063741A1 (en) * | 2007-08-29 | 2009-03-05 | Inventec Corporation | Method for dynamically allocating link width of riser card |
US20160294709A1 (en) * | 2013-12-20 | 2016-10-06 | Huawei Technologies Co., Ltd. | Data Transmission Method, Core Forwarding Device, and Endpoint Forwarding Device |
KR20160127449A (ko) * | 2015-04-27 | 2016-11-04 | 주식회사 태진인포텍 | 초고속 반도체 저장장치를 활용한 클러스터링 기반 분산 파일 시스템 |
CN108804232A (zh) * | 2018-06-26 | 2018-11-13 | 郑州云海信息技术有限公司 | 一种支持云端fpga部署的方法、主机服务器及系统 |
CN109471816A (zh) * | 2018-11-06 | 2019-03-15 | 西安微电子技术研究所 | 一种基于描述符的pcie总线dma控制器及数据传输控制方法 |
US20190138470A1 (en) * | 2016-07-01 | 2019-05-09 | Intel Corporation | Asymmetric lanes in a point-to-point interconnect |
CN109902043A (zh) * | 2019-01-30 | 2019-06-18 | 中国科学院声学研究所 | 一种基于fpga的国密算法加速处理系统 |
US20200226078A1 (en) * | 2019-01-15 | 2020-07-16 | Hitachi, Ltd. | Storage system |
-
2020
- 2020-09-29 CN CN202011054986.2A patent/CN112131154B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090063741A1 (en) * | 2007-08-29 | 2009-03-05 | Inventec Corporation | Method for dynamically allocating link width of riser card |
US20160294709A1 (en) * | 2013-12-20 | 2016-10-06 | Huawei Technologies Co., Ltd. | Data Transmission Method, Core Forwarding Device, and Endpoint Forwarding Device |
KR20160127449A (ko) * | 2015-04-27 | 2016-11-04 | 주식회사 태진인포텍 | 초고속 반도체 저장장치를 활용한 클러스터링 기반 분산 파일 시스템 |
US20190138470A1 (en) * | 2016-07-01 | 2019-05-09 | Intel Corporation | Asymmetric lanes in a point-to-point interconnect |
CN108804232A (zh) * | 2018-06-26 | 2018-11-13 | 郑州云海信息技术有限公司 | 一种支持云端fpga部署的方法、主机服务器及系统 |
CN109471816A (zh) * | 2018-11-06 | 2019-03-15 | 西安微电子技术研究所 | 一种基于描述符的pcie总线dma控制器及数据传输控制方法 |
US20200226078A1 (en) * | 2019-01-15 | 2020-07-16 | Hitachi, Ltd. | Storage system |
CN109902043A (zh) * | 2019-01-30 | 2019-06-18 | 中国科学院声学研究所 | 一种基于fpga的国密算法加速处理系统 |
Non-Patent Citations (1)
Title |
---|
王志奇: "基于PCIe接口的固态硬盘控制器设计与实现", 《中国优秀硕士学位论文全文数据库信息科技辑》, pages 137 - 42 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112905517A (zh) * | 2021-03-09 | 2021-06-04 | 明峰医疗系统股份有限公司 | 一种基于fpga的可变包长度数据采集方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112131154B (zh) | 2024-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220231962A1 (en) | System and method for facilitating data request management in a network interface controller (nic) | |
EP1841162B1 (en) | Method and system for an os virtualization-aware network interface card | |
US8249072B2 (en) | Scalable interface for connecting multiple computer systems which performs parallel MPI header matching | |
US8850085B2 (en) | Bandwidth aware request throttling | |
US6836808B2 (en) | Pipelined packet processing | |
US8718065B2 (en) | Transmission using multiple physical interface | |
US8543754B2 (en) | Low latency precedence ordering in a PCI express multiple root I/O virtualization environment | |
CN100464318C (zh) | 一种实现高效dma传输的dma控制器及传输方法 | |
US20020165897A1 (en) | Doorbell handling with priority processing function | |
US20170344506A1 (en) | Qos-aware io management for pcie storage system with reconfigurable multi-ports | |
US20060182040A1 (en) | Device and method for diagnosis in multi-channel-CAN-applications | |
CN100531129C (zh) | 用于在网络处理器中记帐的装置和方法 | |
US20180183733A1 (en) | Receive buffer architecture method and apparatus | |
US7466716B2 (en) | Reducing latency in a channel adapter by accelerated I/O control block processing | |
EP3058684A1 (en) | Network interface | |
CN112131154A (zh) | 一种通道与业务动态匹配的dma传输控制方法 | |
CN101122894A (zh) | 一种异步串行通讯控制器件 | |
KR102303424B1 (ko) | 랜덤 액세스 메모리를 포함하는 하나 이상의 처리 유닛을 위한 직접 메모리 액세스 제어 장치 | |
US10003551B2 (en) | Packet memory system, method and device for preventing underrun | |
CN116303221B (zh) | 一种多核处理器片上网络系统的数据传输方法 | |
CN101044727B (zh) | 使用直插式信用扩充器与主机总线适配器的方法及系统 | |
CN110765044B (zh) | 数据包传输装置及系统 | |
CN111026699A (zh) | 基于环形总线的多核网络通信方法、装置及系统 | |
US20080080511A1 (en) | Buffer cluster structure and arbiter scheme for multi-port upper-layer network processor | |
US10713198B2 (en) | Direct memory access control unit for a processing unit that includes a working memory |
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 |