CN115328827A - 基于pcie的存储系统、方法及电子设备 - Google Patents

基于pcie的存储系统、方法及电子设备 Download PDF

Info

Publication number
CN115328827A
CN115328827A CN202211260737.8A CN202211260737A CN115328827A CN 115328827 A CN115328827 A CN 115328827A CN 202211260737 A CN202211260737 A CN 202211260737A CN 115328827 A CN115328827 A CN 115328827A
Authority
CN
China
Prior art keywords
data
module
buffer
controller
pcie
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
Application number
CN202211260737.8A
Other languages
English (en)
Other versions
CN115328827B (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.)
Emposat Co Ltd
Original Assignee
Emposat 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 Emposat Co Ltd filed Critical Emposat Co Ltd
Priority to CN202211260737.8A priority Critical patent/CN115328827B/zh
Publication of CN115328827A publication Critical patent/CN115328827A/zh
Application granted granted Critical
Publication of CN115328827B publication Critical patent/CN115328827B/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/16Handling requests for interconnection or transfer for access to memory bus
    • 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/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • 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/32Handling requests for interconnection or transfer for access to input/output bus using combination of interrupt and burst mode transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)

Abstract

本申请提供一种基于PCIE的存储系统、方法及电子设备,能够解决相关技术中采用TLP协议传输的PCIE接口方案处理数据复杂且效率低下的问题,从而提高存储系统处理数据的效率。该基于PCIE的存储系统包括:缓存器、存储控制器、DMA传输控制器和基于AXI协议的PCIE接口;其中,存储控制器连接于所述缓存器,DMA传输控制器连接于所述存储控制器和PCIE接口;PCIE接口用于接收基于AXI协议的突发写读操作指令,所述存储控制器用于根据所述突发写读操作指令将接收的数据写入所述缓存器以及从所述缓存器中读取所述数据以向DMA传输控制器发送所述数据;DMA传输控制器用于基于AXI协议处理所述数据并通过DMA传输处理后的所述数据至所述PCIE接口,以使所述PCIE接口输出处理后的所述数据。

Description

基于PCIE的存储系统、方法及电子设备
技术领域
本申请涉及存储领域,尤其涉及一种基于PCIE的存储系统、方法及电子设备。
背景技术
目前,随着科技的不断发展,高速数据采集、视频图像处理、航天设备遥控遥测等领域,对高速大容量的数据的传输、存储技术有了更高的要求。在此环境下,具有极高带宽、优良性能、高传输速率的PCIE总线技术脱颖而出,成为现代高速存储设计系统中的重要一环。
PCIE全程PCI Express,是由英特尔提出的第三代高性能I/O总线和接口标准。PCIE能够应用于移动设备、台式电脑、工作站、服务器和通信平台等IO设备互联。PCIE的传输是基于高速LVDS差分信号的双通道传输模式,每一通道即一对收发差分信号,通过8B10B编码方式完成数据传输和校验。
目前工程中使用的PCIE传输方案接口,是PCIE的TLP协议传输。常规PCIE在FPGA数据处理层面,需要对TLP协议有更深层次的理解。TLP指令有多个事务类型,包括IO读写、MEM读写和配置读写,每次操作都要对TLP解析,时序要求更高,处理周期更长,对用户来说操作体验差,而且不便于升级维护。除此之外,TLP协议处理数据更加复杂,FPGA逻辑资源要求更高,有可能导致工作时,FPGA温度升高,对基带设备的散热是一种考验。
发明内容
本申请实施例提供一种基于PCIE的存储系统、方法及电子设备,能够解决相关技术中采用TLP协议传输的PCIE接口方案处理数据复杂且效率低下的问题,从而提高存储系统处理数据的效率。
为达到上述目的,本申请采用如下技术方案:
第一方面,提供一种基于PCIE的存储系统,其特征在于,包括缓存器、存储控制器、DMA传输控制器和基于AXI协议的PCIE接口;其中,所述存储控制器连接于所述缓存器,所述DMA传输控制器连接于所述存储控制器和所述PCIE接口;
所述PCIE接口用于接收基于AXI协议的突发写读操作指令,所述存储控制器用于根据所述突发写读操作指令将接收的数据写入所述缓存器以及从所述缓存器中读取所述数据以向DMA传输控制器发送所述数据;所述DMA传输控制器用于基于AXI协议处理所述数据并通过DMA传输处理后的所述数据至所述PCIE接口,以使所述PCIE接口输出处理后的所述数据。
可选地,所述DMA传输控制器包括数据处理模块、数据传输模块和第一控制模块;其中,所述数据处理模块连接于所述数据传输模块和所述第一控制模块,所述数据传输模块连接于所述第一控制模块,所述数据传输模块和所述第一控制模块均连接于所述PCIE接口;
所述数据处理模块用于对所述存储控制器发送的数据进行处理,并将处理后的所述数据传输至所述数据传输模块;
所述第一控制模块用于接收所述PCIE接口传输的数据输出指令并向所述数据传输模块发送所述数据输出指令;
所述数据传输模块用于根据所述数据输出指令向所述PCIE接口输出处理后的所述数据。
可选地,所述DMA传输控制器还包括:
中断产生模块,连接于与所述第一控制模块、所述数据传输模块和所述PCIE接口;所述中断产生模块用于根据所述第一控制模块和所述数据传输模块产生中断。
可选地,所述DMA传输控制器还包括:
第一FIFO缓冲模块,连接于所述存储控制器和所述数据处理模块;所述第一FIFO缓冲模块用于对所述存储控制器发送的所述数据进行缓冲处理并向所述数据处理模块发送缓冲处理后的所述数据。
可选地,所述存储控制器包括写入模块、读取模块和第二控制模块;其中,所述写入模块连接于所述读取模块和所述第二控制模块所述读取模块,所述读取模块连接于所述第一FIFO缓冲模块,所述第二控制模块连接于所述缓存器;
所述第二控制模块用于基于所述突发写读操作指令控制所述写入模块将数据写入所述缓存器并在所述数据写入所述缓存器后向所述读取模块发送标志位;
所述第二控制模块用于基于所述突发写读操作指令和所述标志位控制所述读取模块从所述缓存器中读取所述数据并向所述DMA传输控制器发送所述数据。
可选地,所述存储控制器还包括:
第二FIFO缓冲模块,连接于所述写入模块;所述第二FIFO缓冲模块用于对接收的外部数据进行处理,并向所述写入模块发送处理后的所述外部数据;其中,处理后的所述外部数据为所述数据。
可选地,还包括:
FPGA电路板,所述存储控制器、所述DMA传输控制器和所述PCIE接口均集成于所述FPGA电路板上;其中,所述缓存器为外挂的高速访问存储器。
第二方面,提供一种基于PCIE的存储方法,包括:
通过PCIE接口接收基于AXI协议的突发写读操作指令;
根据所述写读操作指令将数据写入缓存器后并读取所述数据;
基于AXI协议处理读取后的所述数据;
通过DMA传输处理后的所述数据至所述PCIE接口;
通过所述PCIE接口输出处理后的所述数据。
可选地,所述根据所述写读操作指令将数据写入缓存器后并读取所述数据,包括:
根据所述写读操作指令将数据写入缓存器;
在所述数据写入所述缓存器后生成标志位;
根据所述突发写读操作指令和所述标志位从所述缓存器读取所述数据。
第三方面,提供一种电子设备,其特征在于,包括第一方面中任意一种可能的实现方式所述的基于PCIE的存储系统。
第四方面,提供一种计算机可读存储介质,包括:计算机程序或指令;当该计算机程序或指令在计算机上运行时,使得该计算机执行第二方面中任意一种可能的实现方式所述的存储方法。
基于上述基于PCIE的存储系统,基于AXI协议的PCIE接口,基于AXI协议的PCIE接口指定一个目标地址,这个目标地址对应系统存储控制空间的地址,表示对该空间进行读写突发操作,突发长度自定,适用于大批量数据传输,从而提高数据传输效率。且基于AXI协议的PCIE接口相对TLP协议包处理更加简单快捷,同时便于理解,对于后期维护升级提供更多的便利。
本申请提供的基于PCIE的存储方法、存储介质及电子设备,与基于PCIE的存储系统属于同一发明构思,因此具有相同的有益效果,在此不再赘述。
附图说明
图1是本申请一示例性实施例提供的一种基于PCIE的存储系统的示意框图;
图2为本申请一示例性实施例提供的另一种基于PCIE的存储系统的示意框图;
图3是本申请一示例性实施例提供的一种基于PCIE的存储方法的流程示意图;
图4为本申请一示例性实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合示意图对本发明的具体实施方式进行更详细的描述。根据下列描述和权利要求书,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。
本申请实施例的技术方案可以应用于各种通信系统,例如无线保真(wirelessfidelity, WiFi)系统,车到任意物体(vehicle to everything,V2X)通信系统、设备间(device-todevie,D2D)通信系统、车联网通信系统、第4代(4th generation,4G)移动通信系统,如长期演进(long term evolution,LTE)系统、全球互联微波接入(worldwideinteroperability for microwave access,WiMAX)通信系统、第五代(5th generation,5G)移动通信系统,如新空口(new radio,NR)系统,以及未来的通信系统,如第六代(6thgeneration,6G) 移动通信系统等。
本申请将围绕可包括多个设备、组件、模块等的系统来呈现各个方面、实施例或特征。应当理解和明白的是,各个系统可以包括另外的设备、组件、模块等,并且/或者可以并不包括结合附图讨论的所有设备、组件、模块等。此外,还可以使用这些方案的组合。
另外,在本申请实施例中,“示例地”、“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用示例的一词旨在以具体方式呈现概念。
本申请实施例中,“信息(information)”,“信号(signal)”,“消息(message)”,“信道(channel)”、“信令(singaling)”有时可以混用,应当指出的是,在不强调其区别时,其所要表达的含义是一致的。“的(of)”,“相应的(corresponding,relevant)”和“对应的(corresponding)”有时可以混用,应当指出的是,在不强调其区别时,其所要表达的含义是一致的。
下面将结合图1-图2对本申请实施例提供的基于PCIE的存储系统进行具体阐述。
示例性地,图1是本申请一示例性实施例提供的一种基于PCIE的存储系统的示意框图。如图1所示,该基于PCIE的存储系统10包括:缓存器11、存储控制器12、DMA传输控制器13和基于AXI协议的PCIE接口14。其中,存储控制器12连接于所述缓存器,DMA传输控制器13连接于存储控制器12和PCIE接口12。
PCIE接口12用于接收基于AXI协议的突发写读操作指令,存储控制器12用于根据所述突发写读操作指令将接收的数据写入缓存器11以及从缓存器11中读取所述数据以向DMA传输控制器13发送所述数据。DMA传输控制器13用于基于AXI协议处理所述数据并通过DMA传输处理后的所述数据至PCIE接口14,以使PCIE接口14输出处理后的所述数据。
示例性地,图2是本申请一示例性实施例提供的另一种基于PCIE的存储系统的示意框图。如图2所示,DMA传输控制器13包括数据处理模块131、数据传输模块132和第一控制模块133。其中,数据处理模块131连接于数据传输模块132和第一控制模块133,所述数据传输模块132连接于第一控制模块133,数据传输模块132和控制模块133均连接于PCIE接口12。
数据处理模块131用于对存储控制器12发送的数据进行处理,并将处理后的所述数据传输至数据传输模块132。
数据处理模块131可以根据PCIE接口传送来的控制指令对存储控制器12发送的数据进行处理,所述控制指令用于完成数据传输前一些参数的配置,如中断大小配置指令、传输速率配置指令、软复位指令、启动指令等。由于从缓存器11读出来的数据是无帧概念的,数据处理模块131对存储控制器12发送的数据的处理是将这些数据进行组帧,并配置初始值,配置初始值包括配置DMA传输起始地址、末尾地址、MSI-X中断的地址和数据。数据处理模块131在完成数据处理后,将处理后的所述数据传输至数据传输模块132。
第一控制模块133用于接收PCIE接口14传输的数据输出指令,并向数据传输模块132发送所述数据输出指令。数据传输模12块用于根据所述数据输出指令向PCIE接口14输出处理后的所述数据。
具体的,所述数据输出指令可以包括AXI突发长度信息和起始地址DMA信息。PCIE接口14是使用AXI协议的接口,使用AXI协议的接口传输有突发长度概念,相当于一次传输的数据长度。DMA传输控制器13传输数据是在某片地址范围内完成数据搬运,这个区域范围就得由起始地址和结束地址来界定。通过PCIE接口14输出处理后的所述数据可以存储在与PCIE接口14连接的终端设备中。
可选地,DMA传输控制器13还包括:中断产生模块134,连接于与第一控制模块133、数据传输模块132和PCIE接口14。中断产生模块134用于根据第一控制模块133述数据传输模块132产生中断。
其中,中断的含义是告诉终端设备有一个进程需要处理,第一控制模块133可以根据控制指令中包含的中断大小信息控制中断产生模块134执行中断操作。中断大小信息是指数据传输模块132发送一定长度数据后会产生中断,中断大小就是特指上述的数据传输模块132发送的数据长度。当数据传输模块132传输一定长度的数据后,会产生一个握手信号,中断产生模块134会根据这个握手信号产生PCIE接口中断时序(可以理解为中断指令),然后终端设备会检测到中断信号。可选地,中断产生模块134采用MSI-x中断类型执行中断操作。通过采取中断措施可以防止存储空间数据循环写会覆盖之前的数据。
可选地,DMA传输控制器13还包括:
第一FIFO缓冲模块135,连接于存储控制器12和数据处理模块131。第一FIFO缓冲模块135用于对存储控制器122发送的所述数据进行缓冲处理并向数据处理模块131发送缓冲处理后的所述数据。
可选地,存储控制器12包括写入模块121、读取模块122和第二控制模块123;其中,写入模块121连接于读取模块122、第二控制模块123和读取模块122,读取模块122连接于第一FIFO缓冲模块135,第二控制模块123连接于缓存器11。
第二控制模块123用于基于所述突发写读操作指令控制写入模块121将数据写入缓存器11并在所述数据写入缓存器11后向读取模块122发送标志位。其中,标志位就是一种握手信号,写入模块121将数据写入缓存器11后生成握手信号,告诉读取模块122缓存器11中已经存储了数据,可以进行数据的读取了。
第二控制模块123用于基于所述突发写读操作指令和所述标志位控制读取模块122从缓存器11中读取所述数据并向DMA传输控制器13发送所述数据。
可选地,存储控制器12还包括:
第二FIFO缓冲模块124,连接于写入模块121。第二FIFO缓冲模块124用于对接收的外部数据进行处理,并向所述写入模块发送处理后的所述外部数据;其中,处理后的所述外部数据为所述数据。
可选地,还包括:
FPGA电路板,存储控制器12、DMA传输控制器13和PCIE接口14均集成于所述FPGA电路板上。其中,缓存器11为外挂的高速访问存储器。
基于图1-图2中任一项所示出的示例性地,基于PCIE的存储系统,采用基于AXI协议的PCIE接口,FPGA使用该集成IP,直接操作的是基于AXI协议的PCIE接口,基于AXI协议的PCIE接口指定一个目标地址,这个目标地址对应系统存储控制空间的地址,表示对该空间进行读写突发操作,突发长度自定,适用于大批量数据传输。且基于AXI协议的PCIE接口相对TLP协议包处理更加简单快捷,同时便于理解,对于后期维护升级提供更多的便利。
因为AXI协议自身的特点(大批量数据传输),所以适用高速数传,本申请采用PCIEx4,单lane速率5Gb,理论速率可达到20Gb。经过数据传输测试,本申请基带设备速率能达到1.2GB,完全优于市场上基带1Gb+的性能。
另外,现有技术中对缓存器(比如DDR3)进行块读块写,对一块数据连续的写满再写另外一块数据,读的开始则是基于一块地址写满再读。而本申请,则是通过写入模块对第二控制模块(比如DDR3控制器)进行AXI的突发写操作,写完后将完成的标志位flag传递给读取模块,读取模块根据这个握手信号对第二控制模块直接读取操作,中间无等待时间,数据处理更快,实时性更高。
因此,本申请采用时写时读处理,尽可能快速处理数据,解决了原有设备数据采集速率过低问题,大幅度提高带宽传输,同时性能也更加稳定、实时性更好。
以上结合图1-图2详细说明了本申请实施例提供的存储系统。以下结合图3详细说明用于执行本申请实施例提供的基于PCIE的存储方法,图3是本申请一示例性实施例提供的一种基于PCIE的存储方法的流程示意图。
如图3所示,该基于PCIE的存储方法包括步骤S11至S15,其中:
S11,通过PCIE接口接收基于AXI协议的突发写读操作指令。
S12,根据所述写读操作指令将数据写入缓存器后并读取所述数据。
具体的,步骤S12包括如下步骤:
S121,根据所述写读操作指令将数据写入缓存器。
S122,在所述数据写入所述缓存器后生成标志位。
S123,根据所述突发写读操作指令和所述标志位从所述缓存器读取所述数据。
S13,基于AXI协议处理读取后的所述数据。
S14,通过DMA传输处理后的所述数据至所述PCIE接口。
S15,通过所述PCIE接口输出处理后的所述数据。
此外,基于PCIE的存储方法的技术效果,可以分别参考图1-图2中任一项所示出的基于PCIE的存储系统的技术效果,此处不再赘述。
示例性地,图4为本申请一示例性实施例提供的一种电子设备的结构示意图。该电子设备可以是终端设备或网络设备,也可以是可设置于终端设备或网络设备的芯片(系统)或其他部件或组件。如图4所示,电子设备1200可以包括处理器1201。可选地,电子设备1200还可以包括存储器1202和/或收发器1203。其中,处理器1201与存储器1202和收发器1203耦合,如可以通过通信总线连接。
下面结合图4对电子设备1200的各个构成部件进行具体的介绍:
其中,处理器1201是电子设备1200的控制中心,可以是一个处理器,也可以是多个处理元件的统称。例如,处理器1201是一个或多个中央处理器(central processing unit,CPU),也可以是特定集成电路(application specific integrated circuit,ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路,例如:一个或多个微处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(fieldprogrammable gate array,FPGA)。
可选地,处理器1201可以通过运行或执行存储在存储器1202内的软件程序,以及调用存储在存储器1202内的数据,执行电子设备1200的各种功能。
在具体的实现中,作为一种实施例,处理器1201可以包括一个或多个CPU,例如图4中所示出的CPU0和CPU1。
在具体实现中,作为一种实施例,电子设备1200也可以包括多个处理器,例如图2中所示的处理器1201和处理器1204。这些处理器中的每一个可以是一个单核处理器(single-CPU),也可以是一个多核处理器(multi-CPU)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
其中,所述存储器1202用于存储执行本申请方案的软件程序,并由处理器1201来控制执行,具体实现方式可以参考上述方法实施例,此处不再赘述。
可选地,存储器1202可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器1202可以和处理器1201集成在一起,也可以独立存在,并通过电子设备1200的接口电路(图4中未示出)与处理器1201耦合,本申请实施例对此不作具体限定。
收发器1203,用于与其他通信装置之间的通信。例如,电子设备1200为终端设备,收发器1203可以用于与网络设备通信,或者与另一个终端设备通信。又例如,电子设备1200为网络设备,收发器1203可以用于与终端设备通信,或者与另一个网络设备通信。
可选地,收发器1203可以包括接收器和发送器(图4中未单独示出)。其中,接收器用于实现接收功能,发送器用于实现发送功能。
可选地,收发器1203可以和处理器1201集成在一起,也可以独立存在,并通过电子设备1200的接口电路(图4中未示出)与处理器1201耦合,本申请实施例对此不作具体限定。
需要说明的是,图4中示出的电子设备1200的结构并不构成对该电子设备的限定,实际的电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
此外,电子设备1200的技术效果可以参考上述系统实施例所述的基于PCIE的存储系统的技术效果,此处不再赘述。
本申请实施例还提供一种芯片系统,包括:处理器,所述处理器与存储器耦合,所述存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得该芯片系统实现上述任一方法实施例中的方法。
可选地,该芯片系统中的处理器可以为一个或多个。该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
可选地,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请并不限定。示例性的,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
示例性的,该芯片系统可以是现场可编程门阵列(field programmable gatearray,FPGA),可以是专用集成芯片(application specific integrated circuit,ASIC),还可以是系统芯片(system on chip,SoC),还可以是中央处理器(central processorunit,CPU),还可以是网络处理器(network processor,NP),还可以是数字信号处理电路(digital signal processor,DSP),还可以是微控制器(micro controller unit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。
应理解,在本申请实施例中的处理器可以是中央处理单元(central processingunit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random accessmemory,RAM)可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
上述实施例,可以全部或部分地通过软件、硬件(如电路)、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行所述计算机指令或计算机程序时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系,但也可能表示的是一种“和/或”的关系,具体可参考前后文进行理解。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a, b, c, a-b, a-c, b-c, 或a-b-c,其中a,b,c可以是单个,也可以是多个。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种基于PCIE的存储系统,其特征在于,包括缓存器、存储控制器、DMA传输控制器和基于AXI协议的PCIE接口;其中,所述存储控制器连接于所述缓存器,所述DMA传输控制器连接于所述存储控制器和所述PCIE接口;
所述PCIE接口用于接收基于AXI协议的突发写读操作指令,所述存储控制器用于根据所述突发写读操作指令将接收的数据写入所述缓存器以及从所述缓存器中读取所述数据以向DMA传输控制器发送所述数据;所述DMA传输控制器用于基于AXI协议处理所述数据并通过DMA传输处理后的所述数据至所述PCIE接口,以使所述PCIE接口输出处理后的所述数据。
2.根据权利要求1所述的存储系统,其特征在于,所述DMA传输控制器包括数据处理模块、数据传输模块和第一控制模块;其中,所述数据处理模块连接于所述数据传输模块和所述第一控制模块,所述数据传输模块连接于所述控制模块,所述数据传输模块和所述第一控制模块均连接于所述PCIE接口;
所述数据处理模块用于对所述存储控制器发送的数据进行处理,并将处理后的所述数据传输至所述数据传输模块;
所述第一控制模块用于接收所述PCIE接口传输的数据输出指令并向所述数据传输模块发送所述数据输出指令;
所述数据传输模块用于根据所述数据输出指令向所述PCIE接口输出处理后的所述数据。
3.根据权利要求2所述的存储系统,其特征在于,所述DMA传输控制器还包括:
中断产生模块,连接于与所述第一控制模块、所述数据传输模块和所述PCIE接口;所述中断产生模块用于根据所述控制模块和所述数据传输模块产生中断。
4.根据权利要求3所述的存储系统,其特征在于,所述DMA传输控制器还包括:
第一FIFO缓冲模块,连接于所述存储控制器和所述数据处理模块;所述第一FIFO缓冲模块用于对所述存储控制器发送的所述数据进行缓冲处理并向所述数据处理模块发送缓冲处理后的所述数据。
5.根据权利要求4所述的存储系统,其特征在于,所述存储控制器包括写入模块、读取模块和第二控制模块;其中,所述写入模块连接于所述读取模块和所述第二控制模块所述读取模块,所述读取模块连接于所述第一FIFO缓冲模块,所述控制模块连接于所述缓存器;
所述第二控制模块用于基于所述突发写读操作指令控制所述写入模块将数据写入所述缓存器并在所述数据写入所述缓存器后向所述读取模块发送标志位;
所述第二控制模块用于基于所述突发写读操作指令和所述标志位控制所述读取模块从所述缓存器中读取所述数据并向所述DMA传输控制器发送所述数据。
6.根据权利要求5所述的存储系统,其特征在于,所述存储控制器还包括:
第二FIFO缓冲模块,连接于所述写入模块;所述第二FIFO缓冲模块用于对接收的外部数据进行处理,并向所述写入模块发送处理后的所述外部数据;其中,处理后的所述外部数据为所述数据。
7.根据权利要求1至6中任一项所述的存储系统,其特征在于,还包括:
FPGA电路板,所述存储控制器、所述DMA传输控制器和所述PCIE接口均集成于所述FPGA电路板上;其中,所述缓存器为外挂的高速访问存储器。
8.一种基于PCIE的存储方法,其特征在于,包括:
通过PCIE接口接收基于AXI协议的突发写读操作指令;
根据所述写读操作指令将数据写入缓存器后并读取所述数据;
基于AXI协议处理读取后的所述数据;
通过DMA传输处理后的所述数据至所述PCIE接口;
通过所述PCIE接口输出处理后的所述数据。
9.根据权利要求8所述的存储方法,其特征在于,所述根据所述写读操作指令将数据写入缓存器后并读取所述数据,包括:
根据所述写读操作指令将数据写入缓存器;
在所述数据写入所述缓存器后生成标志位;
根据所述突发写读操作指令和所述标志位从所述缓存器读取所述数据。
10.一种电子设备,其特征在于,包括权利要求1至7中任一项所述的基于PCIE的存储系统。
CN202211260737.8A 2022-10-14 2022-10-14 基于pcie的存储系统、方法及电子设备 Active CN115328827B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211260737.8A CN115328827B (zh) 2022-10-14 2022-10-14 基于pcie的存储系统、方法及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211260737.8A CN115328827B (zh) 2022-10-14 2022-10-14 基于pcie的存储系统、方法及电子设备

Publications (2)

Publication Number Publication Date
CN115328827A true CN115328827A (zh) 2022-11-11
CN115328827B CN115328827B (zh) 2023-06-02

Family

ID=83913607

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211260737.8A Active CN115328827B (zh) 2022-10-14 2022-10-14 基于pcie的存储系统、方法及电子设备

Country Status (1)

Country Link
CN (1) CN115328827B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070016702A1 (en) * 2005-07-14 2007-01-18 Quantum Corporation, A Delaware Corporation Data flow control and bridging architecture enhancing performance of removable data storage systems
CN104901859A (zh) * 2015-06-11 2015-09-09 东南大学 一种axi/pcie总线转换装置
CN107203484A (zh) * 2017-06-27 2017-09-26 北京计算机技术及应用研究所 一种基于FPGA的PCIe与SRIO总线桥接系统
CN107766269A (zh) * 2017-10-18 2018-03-06 深圳市亿威尔信息技术股份有限公司 一种隔离交换装置及方法
CN109412914A (zh) * 2018-08-31 2019-03-01 南京理工大学 流数据与axi接口通信装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070016702A1 (en) * 2005-07-14 2007-01-18 Quantum Corporation, A Delaware Corporation Data flow control and bridging architecture enhancing performance of removable data storage systems
CN104901859A (zh) * 2015-06-11 2015-09-09 东南大学 一种axi/pcie总线转换装置
CN107203484A (zh) * 2017-06-27 2017-09-26 北京计算机技术及应用研究所 一种基于FPGA的PCIe与SRIO总线桥接系统
CN107766269A (zh) * 2017-10-18 2018-03-06 深圳市亿威尔信息技术股份有限公司 一种隔离交换装置及方法
CN109412914A (zh) * 2018-08-31 2019-03-01 南京理工大学 流数据与axi接口通信装置

Also Published As

Publication number Publication date
CN115328827B (zh) 2023-06-02

Similar Documents

Publication Publication Date Title
US11567895B2 (en) Method, apparatus and system for dynamic control of clock signaling on a bus
EP3706010B1 (en) Enabling sync header suppression latency optimization in the presence of retimers for serial interconnect
CN110647480B (zh) 数据处理方法、远程直接访存网卡和设备
US11599490B1 (en) Packet queueing for network device
KR101988260B1 (ko) 임베디드 멀티미디어 카드, 및 이의 동작 방법
CN107533525B (zh) 具有独立接口路径的存储器设备的通用管芯实现
WO2017084400A1 (zh) 一种NVMe网络化存储的实现方法、终端、服务器及系统
KR102111741B1 (ko) 임베디드 멀티미디어 카드 및 이의 동작 방법
TWI607308B (zh) 用於基於記憶體資料判定比較資訊之設備、系統與方法
CN105703883B (zh) 在统一协议通信中交换错误信息的装置、方法和系统
US20220004516A1 (en) System, Apparatus And Method For Extended Communication Modes For A Multi-Drop Interconnect
CN107077441B (zh) 用于提供使用rdma和主动消息的异构i/o的方法和装置
KR101887126B1 (ko) Or 체인 버스를 위한 향상된 데이터 버스 반전 인코딩
US11088967B2 (en) Shared resources for multiple communication traffics
CN107111564B (zh) 用于对连接器进行串接的适配器
CN108052473B (zh) 串行通信装置
WO2016000339A1 (zh) 一种芯片互连的方法、芯片及装置
WO2016095435A1 (zh) 一种多芯片级联的方法、芯片和装置、存储介质
CN105786735A (zh) 一种直接内存存取dma控制器及数据访问方法
US6567881B1 (en) Method and apparatus for bridging a digital signal processor to a PCI bus
US20110072168A1 (en) Data transfer system with different operating modes
WO2022032990A1 (zh) 一种命令信息传输方法、系统、装置及可读存储介质
CN116483259A (zh) 一种数据处理方法以及相关装置
CN115328827A (zh) 基于pcie的存储系统、方法及电子设备
KR20160076970A (ko) 크로스-다이 인터페이스 스누프 또는 글로벌 관측 메시지 오더링

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