CN110209358B - 一种基于FPGA的NVMe设备存储速度提升方法 - Google Patents

一种基于FPGA的NVMe设备存储速度提升方法 Download PDF

Info

Publication number
CN110209358B
CN110209358B CN201910487224.2A CN201910487224A CN110209358B CN 110209358 B CN110209358 B CN 110209358B CN 201910487224 A CN201910487224 A CN 201910487224A CN 110209358 B CN110209358 B CN 110209358B
Authority
CN
China
Prior art keywords
state
sending
data
data packet
state machine
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
CN201910487224.2A
Other languages
English (en)
Other versions
CN110209358A (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.)
Harbin Institute of Technology
Original Assignee
Harbin Institute of Technology
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 Harbin Institute of Technology filed Critical Harbin Institute of Technology
Priority to CN201910487224.2A priority Critical patent/CN110209358B/zh
Publication of CN110209358A publication Critical patent/CN110209358A/zh
Application granted granted Critical
Publication of CN110209358B publication Critical patent/CN110209358B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种基于FPGA的NVMe设备存储速度提升方法,涉及数据存储技术领域,为解决现有技术中由于数据包发送时耗时较长,导致NVMe存储设备存储速度慢的问题,包括步骤一:NVMe SSD向FPGA发送读内存请求;步骤二:NVMe SSD获取FPGA回复的完成报文:步骤二一:流程控制模块向数据发送模块发送传输信号;步骤二二:数据发送模块根据接收到的数据包类型进行数据包封装和发送;步骤二三:数据包通过AXI‑Stream总线传输给PCIe硬核,最终数据传输给NVMe SSD;步骤三:NVMe SSD从完成报文中提取待存储数据。本发明采用的半背靠背发送策略与普通发送策略相比可以提升22%的数据传输速度。

Description

一种基于FPGA的NVMe设备存储速度提升方法
技术领域
本发明涉及数据存储技术领域,具体为一种基于FPGA的NVMe设备存储速度提升方法。
背景技术
随着相控阵雷达的性能不断提升,其产生的数据量也越来越大。在雷达测试领域,需要高速存储设备来存储雷达接收的原始回波信号,以便于后续的数据分析及整机功能验证。高性能的雷达对存储设备的速度、容量等性能提出了挑战,同时外场、机载的应用场景对存储设备的体积和功耗也提出了要求。
NVMe SSD是近几年来出现的新一代存储设备,借助PCIe总线的高传输速度,可以实现1GB/s以上的数据存储速度。利用FPGA配合NVMe SSD可以构建适用于雷达测试领域的便携式高速数据存储设备。FPGA控制NVMe SSD的核心技术是NVMe控制软件的编写,包括流程控制、数据传输等,其中数据传输模块的设计直接关系到设备的数据存储速度。
当前存储设备的速度主要受限于数据包发送的耗时,因此提升数据包的发送速度已被越来越多的人们所关注。
发明内容
本发明是为了解决现有技术中由于数据包发送时耗时较长,导致NVMe存储设备存储速度慢的问题,提供一种基于FPGA的NVMe设备存储速度提升方法。
本发明为了解决上述技术问题采取的技术方案是:一种基于FPGA的NVMe设备存储速度提升方法,包括以下步骤:
步骤一:NVMe SSD向FPGA发送读内存请求;
步骤二:NVMe SSD获取FPGA回复的完成报文:
步骤二一:流程控制模块向数据发送模块发送传输信号;
步骤二二:数据发送模块根据接收到的数据包类型进行数据包封装和发送;
步骤二三:数据包通过AXI-Stream总线传输给PCIe硬核,最终数据传输给NVMeSSD;
步骤三:NVMe SSD从完成报文中提取待存储数据。
进一步的,所述数据发送模块为数据包发送状态机。
进一步的,所述数据包发送状态机的状态包含:空闲状态、等待总线空闲状态、判断 TLP传输数量状态和发送状态。
进一步的,所述数据包发送状态机的状态之间的转换关系为:
当状态机处于空闲状态时,判断是否接收到开始发送信号,若是,跳转至等待总线空闲状态,若否,停留在当前状态;
当状态机处于等待总线空闲状态时,获取要发送的数据载荷,同时判断AXI-Stream总线是否空闲,若是,跳转至判断TLP传输数量状态,若否,停留在当前状态;
当状态机处于判断TLP传输数量状态时,判断要发送的TLP是否为完成报文且包含待存储的数据,若是,TLP传输数量为2,若否,TLP传输数量为1,然后跳转至发送状态;
当状态机处于发送状态时,通过AXI-Stream总线向PCIe硬核连续发送相应数量的TLP,并判断发送是否完成,若是,跳转至空闲状态,若否,停留在当前状态。
进一步的,所述数据包发送状态机内还设有数据包发送子状态机。
进一步的,所述数据包发送子状态机的状态包含:空闲状态、发送TLP包头状态、发送数据包的数据载荷状态、判断当前发送TLP数量状态和发送完成状态。
进一步的,所述数据包发送子状态机的状态之间的转换关系为:
当子状态机处于空闲状态时,判断数据包发送状态机是否处于发送状态,若是,跳转至发送TLP包头状态,若不是,停留在当前状态;
当子状态机处于发送TLP包头状态时,数据发送模块通过AXI-Stream总线将TLP的包头发送给PCIe硬核,同时记录当前发送的TLP数量,跳转至发送数据包的数据载荷状态;
当子状态机处于发送数据包的数据载荷状态时,数据发送模块通过AXI-Stream总线将数据包的数据载荷发送给PCIe硬核,并判断当前数据包的数据载荷是否即将发送完成,若是,跳转至判断当前发送TLP数量状态,若不是,停留在当前状态继续发送数据载荷;
当子状态机处于判断当前发送TLP数量状态时,发送当前TLP的最后一个时钟周期对应的数据载荷,同时判断当前发送的TLP数量与应发送的TLP数量是否相等,若是,跳转至发送完成状态,若不是,跳转至发送TLP包头状态,继续发送TLP。
当子状态机处于发送完成状态时,向数据包发送状态机发送完成信号,然后跳转至空闲状态。
进一步的,所述步骤二三中数据包在PCIe硬核中经过数据链路层和物理层的处理。
本发明的有益效果是:
1、本发明数据发送模块在保证数据包长度最大的情况下,利用半背靠背的TLP发送策略,提高PCIe总线的利用效率,以满足存储设备的数据写入速度需求,同时为设备后续升级留有速度余量。本发明中的半背靠背发送策略与普通发送策略相比可以提升22%的数据传输速度。
2、本发明采用不同读请求对应的完成报文之间保留5个时钟周期的发送间隔,用于执行判断、赋值、读取缓存等步骤,为流程中的其他步骤留出足够的执行时间,为设备后续升级留有足够的速度余量,提高了设计的可靠性,降低了开发难度。
附图说明
图1为本发明PCIe数据包发送模块的接口互联框图。
图2为本发明的数据发送状态转换图。
图3为本发明的FPGA发送数据时AXI-Stream接口波形图。
图4为本发明的数据发送子状态机的状态转换图。
具体实施方式
具体实施方式一:下面具体说明本实施方式,本实施方式,一种基于FPGA的NVMe设备存储速度提升方法,包括以下步骤:
步骤一:NVMe SSD向FPGA发送读内存请求;
步骤二:NVMe SSD获取FPGA回复的完成报文;
步骤二一:流程控制模块向数据发送模块发送传输信号;
步骤二二:数据发送模块根据接收到的数据包类型进行数据包封装和发送;
步骤二三:数据包通过AXI-Stream总线传输给PCIe硬核,最终数据传输给NVMeSSD;
步骤三:NVMe SSD从完成报文中提取待存储数据。
FPGA-NVMe存储设备由光纤数据接口模块、FPGA和NVMe SSD组成,其中FPGA 实现接口互联和对NVMe SSD的控制(包括生成读写命令、进行数据传输等)。利用FPGA 控制NVMeSSD的核心技术是NVMe控制软件的编写,包括流程控制、数据传输等,其中数据传输模块的设计直接关系到设备的数据存储速度。
FPGA与NVMe SSD借助PCIe总线进行数据传输,其数据包由物理层、数据链路层和事务层三部分组成。Xilinx FPGA集成的PCIe硬核提供现成的物理层和数据链路层实现功能,并通过AXI-Stream接口与用户逻辑进行数据交互。用户逻辑按照固定的时序和格式,通过AXI-Stream接口向PCIe硬核发送PCIe事务层数据包(TLP)即可实现PCIe数据包的发送。
与发送TLP相关的模块包括流程控制模块、发送数据源、数据发送模块和PCIe硬核,这些模块的接口互联框图如图1所示。数据发送模块接收流程控制模块的开始发送信号后,根据接收到的数据包类型进行数据包封装和发送,数据包通过AXI-Stream总线传输给PCIe 硬核,在PCIe硬核中经过数据链路层和物理层的处理,最终将数据传输给NVMe SSD。
NVMe SSD获取来自FPGA的待存储数据的过程如下:
(1)NVMe SSD向FPGA发送读内存请求,
(2)NVMe SSD获取FPGA回复的完成报文(Completion TLP),
(3)NVMe SSD从完成报文中提取待存储数据。
读取存储设备中NVMe SSD的PCIe配置寄存器中的Max_Payload_Size(MPS)字段,可知该NVMe SSD可以接收的TLP的最大数据载荷为128Byte。由于NVMe SSD发送的每个读请求申请读取的数据长度为256Byte,而每个完成报文的最大有效数据载荷为128Byte,因此需要发送两个完成报文才能完成一个读请求的回复。考虑到TLP包头、物理层和数据链路层的开销,计算出本发明中PCIe总线的最大数据传输效率为128/(128+12+8)=86%,该效率是一个理想的值。由于TLP的传输存在间隔,因此实际工程应用中的PCIe数据链路传输效率低于86%。
为了满足设备1GB/s的存储速度需求,必须保证FPGA发送完成报文的速度足够快,以保证发送数据载荷的速度大于1GB/s。结合数据发送模块可以看出,只要能提高 AXI-Stream总线的利用效率就能提高FPGA发送数据包的速度。本发明采用以下两种方法提高FPGA发送数据包的速度:
1、保证TLP数据载荷为最大(128Byte);
2、缩短FPGA发送TLP的间隔。
具体实施方式二:本实施方式是对具体实施方式一所述的一种基于FPGA的NVMe设备存储速度提升方法的进一步改进,本实施方式与具体实施方式一的区别是所述数据发送模块为数据包发送状态机。
具体实施方式三:本实施方式是对具体实施方式二所述的一种基于FPGA的NVMe设备存储速度提升方法的进一步改进,本实施方式与具体实施方式二的区别是所述数据包发送状态机包含子状态:空闲状态、等待总线空闲状态、判断TLP传输数量状态和发送状态。
具体实施方式四:本实施方式是对具体实施方式三所述的一种基于FPGA的NVMe设备存储速度提升方法的进一步改进,本实施方式与具体实施方式三的区别是所述数据包发送状态机的状态之间的转换关系为:
当状态机处于空闲状态时,判断是否接收到开始发送信号,若是,跳转至等待总线空闲状态,若否,停留在当前状态;
当状态机处于等待总线空闲状态时,获取要发送的数据载荷,同时判断AXI-Stream总线是否空闲,若是,跳转至判断TLP传输数量状态,若否,停留在当前状态;
当状态机处于判断TLP传输数量状态时,判断要发送的TLP是否为完成报文且包含待存储的数据,若是,TLP传输数量为2,若否,TLP传输数量为1,然后跳转至发送状态;
当状态机处于发送状态时,通过AXI-Stream总线向PCIe硬核连续发送相应数量的TLP,并判断发送是否完成,若是,跳转至空闲状态,若否,停留在当前状态。
如图4所示,图4中发送状态机的状态一至四分别对应空闲状态、等待总线空闲状态、判断TLP传输数量状态和发送状态。
具体实施方式五:本实施方式是对具体实施方式四所述的一种基于FPGA的NVMe设备存储速度提升方法的进一步改进,本实施方式与具体实施方式四的区别是所述数据包发送状态机内还设有数据包发送子状态机。
具体实施方式六:本实施方式是对具体实施方式五所述的一种基于FPGA的NVMe设备存储速度提升方法的进一步改进,本实施方式与具体实施方式五的区别是所述数据包发送子状态机的状态包含:空闲状态、发送TLP包头状态、发送数据包的数据载荷状态、判断当前发送TLP数量状态和发送完成状态。
具体实施方式七:本实施方式是对具体实施方式六所述的一种基于FPGA的NVMe设备存储速度提升方法的进一步改进,本实施方式与具体实施方式六的区别是所述数据包发送子状态机的状态之间的转换关系为:
当子状态机处于空闲状态时,判断数据包发送状态机是否处于发送状态,若是,跳转至发送TLP包头状态,若不是,停留在当前状态;
当子状态机处于发送TLP包头状态时,数据发送模块通过AXI-Stream总线将TLP的包头发送给PCIe硬核,同时记录当前发送的TLP数量,跳转至发送数据包的数据载荷状态;
当子状态机处于发送数据包的数据载荷状态时,数据发送模块通过AXI-Stream总线将数据包的数据载荷发送给PCIe硬核,并判断当前数据包的数据载荷是否即将发送完成,若是,跳转至判断当前发送TLP数量状态,若不是,停留在当前状态继续发送数据载荷;
当子状态机处于判断当前发送TLP数量状态时,发送当前TLP的最后一个时钟周期对应的数据载荷,同时判断当前发送的TLP数量与应发送的TLP数量是否相等,若是,跳转至发送完成状态,若不是,跳转至发送TLP包头状态,继续发送TLP。
当子状态机处于发送完成状态时,向数据包发送状态机发送完成信号,然后跳转至空闲状态。
在以上状态机中,空闲状态、发送TLP包头状态和发送数据包的数据载荷状态是简单的等待和判断状态,而判断当前发送TLP数量状态是数据包发送状态,其中包含了许多的子状态。本实施方式设计了一个发送总状态机处于判断当前发送TLP数量状态下的数据发送子状态机,如图3所示。
从发送子状态机中可以看出,这些TLP包是连续发送的,在前一个TLP发送完成后,紧接着的下一个时钟周期新的TLP包就开始发送了,这种连续的发送方式为背靠背发送。结合数据发送总状态机分析,从总状态机的空闲状态到发送状态之间间隔若干时钟周期,用于等待总线空闲和准备发送所需的数据载荷和参数,每一组TLP包的发送都是有间隔的。本发明将这种同一组数据包连续发送、不同组数据包间断发送的发送方式称为半背靠背传输。
本发明采用半背靠背的模式发送TLP,FPGA发送数据时AXI-Stream接口波形如图3所示。
图3中每个TLP从TxValid置1时开始,至TxLast为1时结束;当TxLast置0且TxValid为1时,开始一个新的TLP。从图中可以看出,同一个读请求对应的两个完成报文背靠背传输,每两个背靠背的TLP发送占用18个时钟周期;不同的读请求对应的完成报文之间间隔5个时钟周期发送,这5个空闲的时钟周期用于判断、赋值以及读取数据FIFO缓存等步骤的执行。
为了得到以上设计的可到达的数据传输速度,对数据发送过程中的数据链路进行分析:
(1)128比特位宽、125MHz时钟频率的AXI-Stream总线有效数据传输速率为2GB/s,根据图3计算出有效数据载荷传输速度为1.391GB/s;
(2)8B/10B编码的PCIe Gen2X4总线最大有效数据速度为2GB/s;
(3)在1.391GB/s的速度下,PCIe总线空闲的速度资源还有很多,PCIe数据包的物理层和数据链路层开销不会影响到PCIe总线的数据传输效率。
可以推断,基于PCIe Gen2X4高速串行总线,这种半背靠背的数据传输速度在理论上可以达到1.391GB/s,设计裕量为0.391GB/s。结合NVMe协议的其他开销,NVMe SSD的持续数据写入速度可以保证在1.2GB/s以上,能够满足存储设备的速度需求。若不使用半背靠背传输,则每个完成报文的数据包之间都会有5个时钟周期的间隔,那么数据传输速度理论上就只有1.14GB/s,设计裕量仅为0.14GB/s。考虑到NVMe协议的其他开销,则实现1GB/s的数据存储速度非常勉强。
具体实施方式八:本实施方式是对具体实施方式一所述的一种基于FPGA的NVMe设备存储速度提升方法的进一步改进,本实施方式与具体实施方式一的区别是所述步骤二三中数据包在PCIe硬核中经过数据链路层和物理层的处理。
需要注意的是,具体实施方式仅仅是对本发明技术方案的解释和说明,不能以此限定权利保护范围。凡根据本发明权利要求书和说明书所做的仅仅是局部改变的,仍应落入本发明的保护范围内。

Claims (4)

1.一种基于FPGA的NVMe设备存储速度提升方法,其特征在于包括以下步骤:
步骤一:NVMe SSD向FPGA发送读内存请求;
步骤二:NVMe SSD获取FPGA回复的完成报文:
步骤二一:流程控制模块向数据发送模块发送传输信号;
步骤二二:数据发送模块根据接收到的数据包类型进行数据包封装和发送;
步骤二三:数据包通过AXI-Stream总线传输给PCIe硬核,最终数据传输给NVMe SSD;
步骤三:NVMe SSD从完成报文中提取待存储数据;
所述数据发送模块为数据包发送状态机;
所述数据包发送状态机的状态包含:空闲状态、等待总线空闲状态、判断TLP传输数量状态和发送状态;
所述数据包发送状态机的状态之间的转换关系为:
当状态机处于空闲状态时,判断是否接收到开始发送信号,若是,跳转至等待总线空闲状态,若否,停留在当前状态;
当状态机处于等待总线空闲状态时,获取要发送的数据载荷,同时判断AXI-Stream总线是否空闲,若是,跳转至判断TLP传输数量状态,若否,停留在当前状态;
当状态机处于判断TLP传输数量状态时,判断要发送的TLP是否为完成报文且包含待存储的数据,若是,TLP传输数量为2,若否,TLP传输数量为1,然后跳转至发送状态;
当状态机处于发送状态时,通过AXI-Stream总线向PCIe硬核连续发送相应数量的TLP,并判断发送是否完成,若是,跳转至空闲状态,若否,停留在当前状态;
所述步骤二三中数据包在PCIe硬核中经过数据链路层和物理层的处理。
2.根据权利要求1所述的一种基于FPGA的NVMe设备存储速度提升方法,其特征在于:所述数据包发送状态机内还设有数据包发送子状态机。
3.根据权利要求2所述的一种基于FPGA的NVMe设备存储速度提升方法,其特征在于,所述数据包发送子状态机的状态包含:空闲状态、发送TLP包头状态、发送数据包的数据载荷状态、判断当前发送TLP数量状态和发送完成状态。
4.根据权利要求3所述的一种基于FPGA的NVMe设备存储速度提升方法,其特征在于,所述数据包发送子状态机的状态之间的转换关系为:
当子状态机处于空闲状态时,判断数据包发送状态机是否处于发送状态,若是,跳转至发送TLP包头状态,若不是,停留在当前状态;
当子状态机处于发送TLP包头状态时,数据发送模块通过AXI-Stream总线将TLP的包头发送给PCIe硬核,同时记录当前发送的TLP数量,跳转至发送数据包的数据载荷状态;
当子状态机处于发送数据包的数据载荷状态时,数据发送模块通过AXI-Stream总线将数据包的数据载荷发送给PCIe硬核,并判断当前数据包的数据载荷是否即将发送完成,若是,跳转至判断当前发送TLP数量状态,若不是,停留在当前状态继续发送数据载荷;
当子状态机处于判断当前发送TLP数量状态时,发送当前TLP的最后一个时钟周期对应的数据载荷,同时判断当前发送的TLP数量与应发送的TLP数量是否相等,若是,跳转至发送完成状态,若不是,跳转至发送TLP包头状态,继续发送TLP;
当子状态机处于发送完成状态时,向数据包发送状态机发送完成信号,然后跳转至空闲状态。
CN201910487224.2A 2019-06-05 2019-06-05 一种基于FPGA的NVMe设备存储速度提升方法 Active CN110209358B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910487224.2A CN110209358B (zh) 2019-06-05 2019-06-05 一种基于FPGA的NVMe设备存储速度提升方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910487224.2A CN110209358B (zh) 2019-06-05 2019-06-05 一种基于FPGA的NVMe设备存储速度提升方法

Publications (2)

Publication Number Publication Date
CN110209358A CN110209358A (zh) 2019-09-06
CN110209358B true CN110209358B (zh) 2022-07-15

Family

ID=67791109

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910487224.2A Active CN110209358B (zh) 2019-06-05 2019-06-05 一种基于FPGA的NVMe设备存储速度提升方法

Country Status (1)

Country Link
CN (1) CN110209358B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113472964B (zh) * 2021-06-05 2024-04-16 山东英信计算机技术有限公司 一种图像处理装置和***
CN115857805B (zh) * 2022-11-30 2023-06-27 合肥腾芯微电子有限公司 人工智能可计算存储***

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103294411A (zh) * 2013-04-28 2013-09-11 哈尔滨工业大学 具有大容量存储的低速载荷数据加载模块
CN104156336A (zh) * 2014-08-14 2014-11-19 浪潮电子信息产业股份有限公司 一种usb2.0接口芯片的控制方法
CN106095334A (zh) * 2016-06-03 2016-11-09 江苏科技大学 一种基于fpga的高速数据采集存储***
CN106941488A (zh) * 2017-03-09 2017-07-11 西安电子科技大学 基于fpga的多层协议数据包封装装置及方法
CN107908587A (zh) * 2017-10-19 2018-04-13 天津大学 基于usb3.0的实时数据采集传输装置
CN107995061A (zh) * 2017-11-30 2018-05-04 北京卓讯科信技术有限公司 多规格10Gbps网络信号长时采集与回放***和方法
CN108227614A (zh) * 2018-01-25 2018-06-29 郑州云海信息技术有限公司 一种基于fpga的数据流控制模块、控制方法及电路
CN108897703A (zh) * 2018-05-30 2018-11-27 郑州云海信息技术有限公司 一种基于pcie的高速数据传输***及方法
CN109446134A (zh) * 2018-09-18 2019-03-08 天津大学 一种基于fpga的usb高速接口
CN109478166A (zh) * 2016-07-08 2019-03-15 深圳市大疆创新科技有限公司 用于存储图像的方法和***

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9201599B2 (en) * 2004-07-19 2015-12-01 Marvell International Ltd. System and method for transmitting data in storage controllers

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103294411A (zh) * 2013-04-28 2013-09-11 哈尔滨工业大学 具有大容量存储的低速载荷数据加载模块
CN104156336A (zh) * 2014-08-14 2014-11-19 浪潮电子信息产业股份有限公司 一种usb2.0接口芯片的控制方法
CN106095334A (zh) * 2016-06-03 2016-11-09 江苏科技大学 一种基于fpga的高速数据采集存储***
CN109478166A (zh) * 2016-07-08 2019-03-15 深圳市大疆创新科技有限公司 用于存储图像的方法和***
CN106941488A (zh) * 2017-03-09 2017-07-11 西安电子科技大学 基于fpga的多层协议数据包封装装置及方法
CN107908587A (zh) * 2017-10-19 2018-04-13 天津大学 基于usb3.0的实时数据采集传输装置
CN107995061A (zh) * 2017-11-30 2018-05-04 北京卓讯科信技术有限公司 多规格10Gbps网络信号长时采集与回放***和方法
CN108227614A (zh) * 2018-01-25 2018-06-29 郑州云海信息技术有限公司 一种基于fpga的数据流控制模块、控制方法及电路
CN108897703A (zh) * 2018-05-30 2018-11-27 郑州云海信息技术有限公司 一种基于pcie的高速数据传输***及方法
CN109446134A (zh) * 2018-09-18 2019-03-08 天津大学 一种基于fpga的usb高速接口

Also Published As

Publication number Publication date
CN110209358A (zh) 2019-09-06

Similar Documents

Publication Publication Date Title
CN106951388B (zh) 一种基于PCIe的DMA数据传输方法及***
CN112860612B (zh) 互联裸芯与mpu的接口***及其通信方法
CN106951379B (zh) 一种基于axi协议的高性能ddr控制器及数据传输方法
CN110209358B (zh) 一种基于FPGA的NVMe设备存储速度提升方法
CN101162448A (zh) 一种usb高速数据隧道的硬件传输方法
CN104599227A (zh) 用于高速ccd数据存储的ddr3仲裁控制器及方法
CN104798010A (zh) 至少部分的串行存储协议兼容帧转换
CN103885840A (zh) 一种基于AXI4总线的FCoE协议加速引擎IP核
CN106294225A (zh) 一种数据读取方法、对端设备及控制器
CN112468378B (zh) 一种基于can总线的大容量数据传输设备及方法
CN116185499B (zh) 寄存器数据传输方法、寄存器缓存模块、智能设备和介质
CN219574799U (zh) 一种基于amba总线的多总线桥接器及其片上***
CN102546336A (zh) 一种基于VersaPHY的IEEE-1394b光总线协议转换器
CN102929828B (zh) 同时支持标准和非标准i2c接口的数据传输方法及装置
CN101251831B (zh) 支持主从设备互换的移动存储器和主从设备互换方法
CN103106177A (zh) 多核网络处理器的片上互联结构及其方法
CN110008162A (zh) 一种缓冲接口电路及基于该电路传输数据的方法和应用
CN108183705A (zh) 一种服务器***单向总线传输方法
CN114567445A (zh) 一种验签数据传输方法、装置、设备及介质
CN113051200A (zh) 一种基于双路的数据采集并行数据传输及存储的装置及方法
CN105446863A (zh) 具有记录能力的电子装置与电路状态记录方法
CN103218324B (zh) 基于嵌入式处理器之间的零延时数据传输装置及方法
CN115202257B (zh) 一种lpc总线协议转换及设备并行控制装置及方法
CN116155843B (zh) 一种基于pynq的脉冲神经网络芯片数据通信方法及***
CN117056274B (zh) 一种用于单核处理器的并行数据通信架构及方法

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