CN117435538A - 一种PCIe转SRIO的桥接系统 - Google Patents
一种PCIe转SRIO的桥接系统 Download PDFInfo
- Publication number
- CN117435538A CN117435538A CN202311536541.1A CN202311536541A CN117435538A CN 117435538 A CN117435538 A CN 117435538A CN 202311536541 A CN202311536541 A CN 202311536541A CN 117435538 A CN117435538 A CN 117435538A
- Authority
- CN
- China
- Prior art keywords
- pcie
- module
- srio
- data
- dma
- 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
Links
- 230000002093 peripheral effect Effects 0.000 title description 4
- 238000006243 chemical reaction Methods 0.000 claims abstract description 32
- 230000005540 biological transmission Effects 0.000 claims abstract description 16
- 238000000034 method Methods 0.000 claims abstract description 14
- 238000012546 transfer Methods 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 9
- 230000003993 interaction Effects 0.000 claims description 7
- 238000011161 development Methods 0.000 abstract description 3
- 238000012360 testing method Methods 0.000 abstract description 3
- 238000004891 communication Methods 0.000 abstract description 2
- 238000012545 processing Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
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/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
-
- 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/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- 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)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Bus Control (AREA)
Abstract
本申请提供一种PCIe转SRIO的桥接系统,包括:PCIe‑SRIO桥接模块,PCIe‑SRIO桥接模块至少包括:PCIe从端模块,配置用于接收PCIe数据,并将PCIe数据发出;AXI协议转换模块配置用于接收PCIe从端模块发出的PCIe数据,并将PCIe数据转换为SRIO数据,并发出;SRIO主端模块,配置用于接收AXI协议转换模块发出的SRIO数据,并向外部其它设备发出SRIO数据;该桥接系统还包括配置模块,所述配置模块用于执行系统初始化配置以及数据传输的调度工作。该方案作为快速解决PCIe与SRIO之间数据通信的硬件及软件的实现方法,可以适应于对FPGA硬件资源有限、成本控制有要求、开发团队规模较小、测试覆盖能力不足的场合,方便简单、可操作性强。
Description
技术领域
本申请涉及PCle总线技术领域,具体涉及一种PCIe转SRIO的桥接系统。
背景技术
PCIe总线是目前在各类计算机中大规模应用的一种高速串行局部总线,PCIe在兼容PCI总线的同时,大大提升了数据传输速率与效率,更能有效地保证传输的可靠性。SRIO是一种面向嵌入式系统的高速串行互联总线,总线系统架构灵活,不局限于传统PC的树型架构,各处理单元之间能够对等通信。数据传输速度快,带宽利用效率高,系统的拓补结构更灵活。
在现有计算机系统中,可以通过桥接芯片或者基于现场可编程阵列FPGA实现PCIe与SRIO的桥接,但这些手段都存在如桥接芯片价格昂贵,占用FPGA逻辑资源较多等问题,导致在实现PCIe与SRIO的桥接的过程中具有开发成本较高、测试难度高、硬件成本高等问题。
发明内容
鉴于现有技术中的上述缺陷或不足,本申请旨在提供一种PCIe转SRIO的桥接系统,包括:
PCIe-SRIO桥接模块,所述PCIe-SRIO桥接模块至少包括:
PCIe从端模块,所述PCIe从端模块配置用于接收PCIe数据,并将所述PCIe数据发出;
AXI协议转换模块,所述AXI协议转换模块配置用于接收所述PCIe从端模块发出的所述PCIe数据,并将所述PCIe数据转换为SRIO数据,并发出;
SRIO主端模块,所述SRIO主端模块配置用于接收所述AXI协议转换模块发出的所述SRIO数据,并向外部其它设备发出所述SRIO数据;
该桥接系统还包括配置模块,所述配置模块用于执行系统初始化配置以及数据传输的调度工作。
根据本申请实施例提供的技术方案,所述SRIO主端模块还配置用于接收所述外部其它设备发送的所述SRIO数据,并将所述SRIO数据发送至所述AXI协议转换模块,所述AXI协议转换模块还配置用于将所述SRIO数据转换为所述PCIe数据,并将所述PCIe数据发送至所述PCIe从端模块。
根据本申请实施例提供的技术方案,所述PCIe从端模块至少包括DMA传输控制器模块,所述DMA传输控制器模块用于实现该桥接系统与外部的数据交互。
根据本申请实施例提供的技术方案,所述PCIe-SRIO桥接模块还包括DMA读取控制器模块、以及DMA写入控制器模块;所述DMA读取控制器模块配置用于从DMA传输控制器模块解析并读取所述PCIe数据,所述DMA写入控制器模块配置用于将所述DMA传输控制器模块的所述PCIe数据写入所述PCIe-SRIO桥接模块。
根据本申请实施例提供的技术方案,所述DMA读取控制器模块还配置用于将所述SRIO主端模块接收到的所述SRIO数据写入所述PCIe-SRIO桥接模块。
根据本申请实施例提供的技术方案,所述DMA写入控制器模块还配置用于将所述DMA传输控制器模块写入的所述PCIe数据发送至所述AXI协议转换模块。
根据本申请实施例提供的技术方案,所述DMA读取控制器模块还配置用于将从所述DMA传输控制器模块解析并读取的所述PCIe数据发送至所述AXI协议转换模块,以及将所述SRIO主端模块接收到的所述SRIO数据发送至所述AXI协议转换模块。
根据本申请实施例提供的技术方案,所述PCIe-SRIO桥接模块还包括数据缓存模块,所述数据缓存模块配置用于PCIe与SRIO总线进行数据交互过程中,对中间过程数据进行暂存。
根据本申请实施例提供的技术方案,所述DMA写入控制器模块具有门铃接口;所述数据缓存模块还配置用于向所述DMA写入控制器模块发送门铃信息包。
根据本申请实施例提供的技术方案,所述门铃信息包、与DMA写入控制器模块写入的所述PCIe数据处于同一个发送判定的状态机。
综上所述,本申请提出一种PCIe转SRIO的桥接系统,包括:PCIe-SRIO桥接模块,PCIe-SRIO桥接模块至少包括:PCIe从端模块,配置用于接收PCIe数据,并将PCIe数据发出;AXI协议转换模块配置用于接收PCIe从端模块发出的PCIe数据,并将PCIe数据转换为SRIO数据,并发出;SRIO主端模块,配置用于接收AXI协议转换模块发出的SRIO数据,并向外部其它设备发出SRIO数据;该桥接系统还包括配置模块,所述配置模块用于执行系统初始化配置以及数据传输的调度工作。
本申请与现有技术相比,有益效果在于:本申请通过自主设计的具有PCIe-SRIO桥接模块以及配置模块的桥接系统,将如Microblaze处理器、ddr等非必要模块均删去,去繁就简作为一种快速解决PCIe与SRIO之间数据通信的硬件及软件的实现方法,可以适应于对FPGA硬件资源有限、成本控制有要求、开发团队规模较小、测试覆盖能力不足的场合,方便简单、可操作性强。
附图说明
图1为本申请实施例提供的PCIe转SRIO的桥接系统的结构示意图。
图中所述文字标注表示为:
1、PCIe主端模块;2、PCIe-SRIO桥接模块;3、PCIe从端模块;4、写入数据;5、读取数据;6、AXI协议转换模块;7、SRIO主端模块;8、外部其它设备;9、SRIO从端模块;10、门铃信息包;11、数据缓存模块;12、DMA传输控制器模块。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
诚如背景技术中提到的,针对现有技术中的问题,本申请提出了一种PCIe转SRIO的桥接系统,请参考图1所示,包括:
PCIe-SRIO桥接模块2,所述PCIe-SRIO桥接模块2至少包括:
PCIe从端模块3,所述PCIe从端模块3配置用于接收PCIe数据,并将所述PCIe数据发出;
AXI协议转换模块6,所述AXI协议转换模块6配置用于接收所述PCIe从端模块3发出的所述PCIe数据,并将所述PCIe数据转换为SRIO数据,并发出;
SRIO主端模块7,所述SRIO主端模块7配置用于接收所述AXI协议转换模块6发出的所述SRIO数据,并向外部其它设备8发出所述SRIO数据;
该桥接系统还包括配置模块,所述配置模块用于执行系统初始化配置以及数据传输的调度工作。
具体地,将某块板卡作为板卡基体,在所述板卡基体上,中央处理器(CentralProcessing Unit,简称CPU)是该板卡的处理器核心,该CPU内的PCIe模块为PCIe主端模块1,所述PCIe-SRIO桥接模块2中的PCIe模块即为所述PCIe从端模块3,所述PCIe从端模块3负责与所述PCIe主端模块1进行通讯,所述SRIO主端模块7用于与外部其它设备8进行数据交互,外部其它设备8上也具有CPU,该CPU内的SRIO模块即为SRIO从端模块9,所述SRIO主端模块7向外部其它设备8发出的所述SRIO数据即发送至所述SRIO从端模块9;外部其它设备8指所述板卡基体通过SRIO接口连接的、且同样具有SRIO接口的设备。
具体地,所述AXI协议转换模块6负责将所述PCIe数据转换为可供所述SRIO主端模块7接收的格式(AXI协议),也负责将所述SRIO数据转换为可供所述PCIe从端模块3接收的格式(AXI协议),从而实现数据格式的统一。
具体地,所述配置模块用于配置SRIO ID、以及中断控制等。
使用本申请提出的PCIe转SRIO的桥接系统,在执行发送动作时,具体过程为:所述PCIe主端模块1向所述PCIe从端模块3发送PCIe数据后,所述PCIe从端模块3将接收到的PCIe数据,先转换为AXI格式数据,然后通过DMA写数据(NWRITE)或DMA写数据流(SWRITE)操作,将转换为AXI格式的数据发送至所述AXI协议转换模块6,所述AXI协议转换模块6将数据转换为SRIO数据数据包,通过所述SRIO主端模块7发送出去,然后外部其它设备8的所述SRIO从端模块9接收到该SRIO数据数据包,至此完成了整个发送任务。
进一步地,本申请提出的PCIe转SRIO的桥接系统可以通过简单复制,配置形成多路,实现在节省资源的前提下,配置多样化的技术效果,所述该PCIe转SRIO的桥接系统可以满足大小端设置、也满足32/64位数据位宽的配置。
在一可选的实施例中,所述SRIO主端模块7还配置用于接收所述外部其它设备8发送的所述SRIO数据,并将所述SRIO数据发送至所述AXI协议转换模块6,所述AXI协议转换模块6还配置用于将所述SRIO数据转换为所述PCIe数据,并将所述PCIe数据发送至所述PCIe从端模块3。
使用本申请提出的PCIe转SRIO的桥接系统,在执行接收动作时,具体过程为:所述PCIe主端模块1向所述PCIe从端模块3发送读数据请求(RDMA),所述SRIO从端模块9反方向先转换为AXI格式的数据,再由DMA控制器将数据发送至所述PCIe从端模块3的数据空间,转换为AXI格式的数据包后,经由所述PCIe从端模块3发送至所述PCIe主端模块1。
至此,使用本申请提出的PCIe转SRIO的桥接系统完成了发送数据以及接收数据的任务,即实现了PCIe数据包和SRIO数据包的双向转换,可以看出本申请在实现PCIe与SRIO的桥接方面方法简单,系统简捷,成本低、满足多种应用场景,适应性强、可操作性优良。
在一可选的实施例中,所述PCIe从端模块3至少包括DMA传输控制器模块12,所述DMA传输控制器模块12用于实现该桥接系统与外部的数据交互。
在一可选的实施例中,所述PCIe-SRIO桥接模块2还包括DMA读取控制器模块、以及DMA写入控制器模块;所述DMA读取控制器模块配置用于从DMA传输控制器模块12解析并读取所述PCIe数据,所述DMA写入控制器模块配置用于将所述DMA传输控制器模块12的所述PCIe数据写入所述PCIe-SRIO桥接模块2。
在一可选的实施例中,所述DMA读取控制器模块还配置用于将所述SRIO主端模块7接收到的所述SRIO数据写入所述PCIe-SRIO桥接模块2。
在一可选的实施例中,所述DMA写入控制器模块还配置用于将所述DMA传输控制器模块12写入的所述PCIe数据发送至所述AXI协议转换模块6。
在一可选的实施例中,所述DMA读取控制器模块还配置用于将从所述DMA传输控制器模块12解析并读取的所述PCIe数据发送至所述AXI协议转换模块6,以及将所述SRIO主端模块7接收到的所述SRIO数据发送至所述AXI协议转换模块6。
在一可选的实施例中,所述PCIe-SRIO桥接模块2还包括数据缓存模块11,所述数据缓存模块11配置用于PCIe与SRIO总线进行数据交互过程中,对中间过程数据进行暂存。
在一可选的实施例中,所述DMA写入控制器模块具有门铃接口;所述数据缓存模块11还配置用于向所述DMA写入控制器模块发送门铃信息包10。
在一可选的实施例中,所述门铃信息包10、与DMA写入控制器模块写入的所述PCIe数据处于同一个发送判定的状态机。
具体地,由于DMA指令数据包与门铃信息包10是平等关系,因此有可能出现DMA指令数据包没发送完毕就插入发送门铃信息包10的情况,因此,本申请将门铃接口引入DMA写入控制器模块,发送判定与写入数据(NWRITE、SWRITE)放入同一个状态机,以此来保证发送顺序。
具体地,基于XDMA驱动,实现所述PCIe从端模块3向SRIO主端模块7发送NWRITE、NREAD、门铃信息包10;通过DMA写数据(NWRITE)实现所述PCIe主端模块1向所述SRIO从端模块9的主动数据发送,之后发送一个门铃信息包10,触发所述SRIO从端模块9中断,去进行相应处理;通过DMA读数据(读取数据NREAD)实现所述PCIe主端模块1向所述SRIO从端模块9主动索要数据,当数据传送完成时,所述第一DMA传输控制器模块将发送传输完成中断,通知所述PCIe主端模块1进行后续处理。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。以上所述仅是本申请的优选实施方式,应当指出,由于文字表达的有限性,而客观上存在无限的具体结构,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进、润饰或变化,也可以将上述技术特征以适当的方式进行组合;这些改进润饰、变化或组合,或未经改进将发明的构思和技术方案直接应用于其他场合的,均应视为本申请的保护范围。
Claims (10)
1.一种PCIe转SRIO的桥接系统,其特征在于,包括:
PCIe-SRIO桥接模块(2),所述PCIe-SRIO桥接模块(2)至少包括:
PCIe从端模块(3),所述PCIe从端模块(3)配置用于接收PCIe数据,并将所述PCIe数据发出;
AXI协议转换模块(6),所述AXI协议转换模块(6)配置用于接收所述PCIe从端模块(3)发出的所述PCIe数据,并将所述PCIe数据转换为SRIO数据,并发出;
SRIO主端模块(7),所述SRIO主端模块(7)配置用于接收所述AXI协议转换模块(6)发出的所述SRIO数据,并向外部其它设备(8)发出所述SRIO数据;
该桥接系统还包括配置模块,所述配置模块用于执行系统初始化配置以及数据传输的调度工作。
2.根据权利要求1所述的PCIe转SRIO的桥接系统,其特征在于:所述SRIO主端模块(7)还配置用于接收所述外部其它设备(8)发送的所述SRIO数据,并将所述SRIO数据发送至所述AXI协议转换模块(6),所述AXI协议转换模块(6)还配置用于将所述SRIO数据转换为所述PCIe数据,并将所述PCIe数据发送至所述PCIe从端模块(3)。
3.根据权利要求2所述的PCIe转SRIO的桥接系统,其特征在于:所述PCIe从端模块(3)至少包括DMA传输控制器模块(12),所述DMA传输控制器模块(12)用于实现该桥接系统与外部的数据交互。
4.根据权利要求3所述的PCIe转SRIO的桥接系统,其特征在于:所述PCIe-SRIO桥接模块(2)还包括DMA读取控制器模块、以及DMA写入控制器模块;所述DMA读取控制器模块配置用于从DMA传输控制器模块(12)解析并读取所述PCIe数据,所述DMA写入控制器模块配置用于将所述DMA传输控制器模块(12)的所述PCIe数据写入所述PCIe-SRIO桥接模块(2)。
5.根据权利要求4所述的PCIe转SRIO的桥接系统,其特征在于:所述DMA读取控制器模块还配置用于将所述SRIO主端模块(7)接收到的所述SRIO数据写入所述PCIe-SRIO桥接模块(2)。
6.根据权利要求4所述的PCIe转SRIO的桥接系统,其特征在于:所述DMA写入控制器模块还配置用于将所述DMA传输控制器模块(12)写入的所述PCIe数据发送至所述AXI协议转换模块(6)。
7.根据权利要求5所述的PCIe转SRIO的桥接系统,其特征在于:所述DMA读取控制器模块还配置用于将从所述DMA传输控制器模块(12)解析并读取的所述PCIe数据发送至所述AXI协议转换模块(6),以及将所述SRIO主端模块(7)接收到的所述SRIO数据发送至所述AXI协议转换模块(6)。
8.根据权利要求6所述的PCIe转SRIO的桥接系统,其特征在于:所述PCIe-SRIO桥接模块(2)还包括数据缓存模块(11),所述数据缓存模块(11)配置用于PCIe与SRIO总线进行数据交互过程中,对中间过程数据进行暂存。
9.根据权利要求8所述的PCIe转SRIO的桥接系统,其特征在于:所述DMA写入控制器模块具有门铃接口;所述数据缓存模块(11)还配置用于向所述DMA写入控制器模块发送门铃信息包(10)。
10.根据权利要求9所述的PCIe转SRIO的桥接系统,其特征在于:所述门铃信息包(10)、与所述DMA写入控制器模块写入的所述PCIe数据处于同一个发送判定的状态机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311536541.1A CN117435538A (zh) | 2023-11-17 | 2023-11-17 | 一种PCIe转SRIO的桥接系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311536541.1A CN117435538A (zh) | 2023-11-17 | 2023-11-17 | 一种PCIe转SRIO的桥接系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117435538A true CN117435538A (zh) | 2024-01-23 |
Family
ID=89547999
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311536541.1A Pending CN117435538A (zh) | 2023-11-17 | 2023-11-17 | 一种PCIe转SRIO的桥接系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117435538A (zh) |
-
2023
- 2023-11-17 CN CN202311536541.1A patent/CN117435538A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101181150B1 (ko) | PCIe 인터페이스 상에서 SATA 대량 저장 장치 에뮬레이션 | |
CN114168520B (zh) | 光纤通信总线装置、设备和系统 | |
US9430432B2 (en) | Optimized multi-root input output virtualization aware switch | |
CN108107827B (zh) | 一种基于zynq平台软核的srio控制方法 | |
CN101317364A (zh) | 一种实现业务板和主控板通信的装置和方法 | |
CN110297797B (zh) | 异构协议转换装置和方法 | |
CN109165178B (zh) | 一种基于RapidIO的弹上系统SoC芯片间高速通信方法 | |
CN116069711B (zh) | 直接内存访问控制器、异构设备、内存访问方法及介质 | |
CN110837486A (zh) | 一种基于FPGA的FlexRay-CPCIe通信模块 | |
CN101452430B (zh) | 多处理器之间的通信方法与包括多处理器的通信装置 | |
WO2024113704A1 (zh) | 一种pcie数据传输方法及相关装置 | |
CN110971621B (zh) | 基于sdio接口的嵌入式多cpu互联电路、互联方法及驱动方法 | |
US8090893B2 (en) | Input output control apparatus with a plurality of ports and single protocol processing circuit | |
CN116414758A (zh) | 面向高速可扩展互联裸芯与PCIe主设备的并行式转换接口 | |
CN117435538A (zh) | 一种PCIe转SRIO的桥接系统 | |
CN115982071A (zh) | 一种面向ddr3控制器的片上网络转换接口 | |
CN114281499A (zh) | 一种总线互连时的中断传递处理方法及系统 | |
CN117938574B (zh) | 一种用于星载设备间通信的SpaceWire总线节点控制器IP核 | |
CN113609067B (zh) | 一种32路rs485接口卡的实现系统 | |
CN115543908B (zh) | 基于FPGA的Aurora总线数据交互系统 | |
CN113472964B (zh) | 一种图像处理装置和系统 | |
CN218996035U (zh) | 一种配合xmda使用的rdma高速数据传输系统 | |
JP4930554B2 (ja) | 入出力制御装置 | |
CN101710310A (zh) | 一种amba接口电路 | |
CN117251396A (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 |