System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种PCIe协议报文保序装置制造方法及图纸_技高网

一种PCIe协议报文保序装置制造方法及图纸

技术编号:40652067 阅读:17 留言:0更新日期:2024-03-13 21:29
本发明专利技术涉及一种PCIe协议报文保序装置,包括基本保序单元、基于基本保序单元构建PCIe交换设备的保序交换网络、基于基本保序单元构建PCIe终端设备的保序终端;基本保序单元包括译码缓存模块、序控制模块和错误处理模块。本发明专利技术能实现不同事务类型报文间的保序,使得报文调度和排序的延时降低,效率提高,且大幅降低序信息保存所需的片上存储器开销和面积,有利于提升芯片实现的性能;还能提高报文交换的效率,同时避免交换设备中多端口跨时钟域同步和信息比对失败导致报文乱序的风险。

【技术实现步骤摘要】

本专利技术涉及一种pcie协议报文保序装置,属于pcie。


技术介绍

1、pcie是一种高速串行计算机扩展总线标准,相对于此前旧的pci/pci-x总线协议,pcie采用了点到点的互连拓扑,取消了共享并行总线架构,在设备间提供独立的双向全双工的高速互连串行链路,支持多个设备间的并发访问。pcie总线的各个层次由硬件逻辑实现,协议共分为4层:物理层、数据链路层、事务层和应用层,如图1所示。

2、物理层实现了数据在高速串行链路的收/发,编码/解码,链路训练,状态机初始化和扰码等功能,pcie设备通过高速串行链路相互连接在一起。物理层创建和解码专门用于同步和管理链路的物理层序列报文(plp),接收和转发链路层报文(dllp)和事务层报文(tlp),上述plp/dllp/tlp经过一系列处理后,通过物理层中电气子层的高速串行链路在各个pcie设备间传输,目前已发布的pcie 6.0协议支持最高达64gt/s的数据传输速率。

3、数据链路层实现了链路管理、tlp错误检测,流量控制、功耗管理以及报文可靠传输等功能。数据链路层接收和转发来自事务层的tlp报文,并对其添加序列号和循环冗余校验码,创建和解析多种dllp,同时还实现了ack/nack应答机制来确认该报文是否被正确传输或重传校正。

4、事务层负责按照pcie协议定义的总线事务对tlp报文进行创建、发送和接收,包括接收来自于应用层的数据,并将其封装为tlp报文后,发向数据链路层;也包括接收从数据链路层发来的数据报文,然后转发到设备的应用层。此外事务层还实现了tlp报文的解码以及端到端校验,qos以及pcie“序”等功能。

5、上述三层协议都是pcie协议明确规范,要求设计者严格遵循。应用层则由用户根据自己的需求进行设计。

6、如图2所示,pcie系统以树形结构构建各个设备之间的互连拓扑,该系统中存在四种不同的设备类型:根联合体、桥设备、交换设备和终端设备。

7、pcie系统中,处理器通过根联合体与其他设备连接,根联合体作为拓扑结构的根,代表cpu与系统中其他设备通过pcie总线进行通信,根联合体的pcie端口被称为根端口;桥设备提供了与其他总线(pci/pci-x)的转接接口,允许将旧的pci和pci-x设备接入到pcie系统中。

8、交换设备用于连接多个设备,提供了pcie端口的扩展和汇聚能力,基于交换设备可将多个pcie设备连接到一个根端口上。如图3所示,交换设备内部通常包含一个usp端口(upstream port)和多个dsp端口(downstream port),其中usp负责与上游的根端口连接,dsp负责与下游的其他设备连接。交换设备提供tlp报文的交换和路由能力,即根据地址或其他路由信息识别tlp报文需要走的路径,使其按照指定路径在端口和端口之间传输。交换设备在进行tlp报文的路由和交换传输时,需要遵循pcie协议规范定义的保序规则,以保证系统的功能正确性。

9、终端设备处于pcie总线系统拓扑结构中的最末端,一般作为事务的发起者或者终结者,它通常是计算机内部的各种设备,例如显卡、网卡、声卡等。如图4所示,终端设备内部通常包括:物理层ip、控制器ip、用于数据搬运的dma模块(负责将数据搬运到处理器内存或其他设备中,或者从处理器内存或其他设备搬运到终端设备),中断控制逻辑,bar空间寄存器以及用户逻辑等。终端设备与系统中其他设备进行通信和tlp报文传输时,需要遵循上述pcie协议规范定义的保序规则,以保证系统的功能正确性。

10、pcie事务层定义tlp报文类型如下表所列,按照其总线行为又可以分为三大类型:p(posted,发出)、np(non-posted,非发出)和cpl(completion,完成),pcie tlp报文对应的事务类型见表1:

11、表1

12、 pcie tlp报文类型 事务类型 mrd np mrdlk np mwr p iord np iowr np cfgrd np cfgwr np msg p cpl/cpld cpl atomicop np

13、p类型表示tlp报文从源设备传输到目标设备后,当前事务即完成,不需要目标设备向源设备返回完成报文cpl/cpld;np类型表示tlp报文从源设备发送到目的设备后,目标设备需要向源设备返回完成报文cpl/cpld,当前事务才算完成。cpl类型用于结束np类型的事务,即通知请求者当前的np事务已经得到响应,该事务可以完成和结束。

14、pcie协议规范对上述p/np/cpl类型的报文传输顺序有着严格的定义,且与传统的pci总线兼容。需要遵循的保序规则如表2所示:

15、表2 pcie报文保序规则

16、

17、表2定义了p/np/cpl事务传输过程中需要遵守和保证的“序”规则,表格中的内容表示如下含义:

18、1)、是:表格所在行标识的tlp事务类型报文一定能够超越表格所在列标识的tlp事务类型报文;

19、2)、否:表格所在行标识的tlp事务类型报文一定不能够超越表格所在列标识的tlp事务类型报文;

20、3)、无要求:对表格所在行标识的tlp事务类型报文是否超越表格所在列标识的tlp事务类型报文无要求。

21、pcie协议通过上述事务传输保序规则保证其系统中各个部件的数据交互行为满足生产者/消费者模型要求,使所有事务的能够有序完成,避免系统死锁或数据传递错误等问题。

22、当前现有的技术方案中,如中国专利公开号cn109684269b:一种本文档来自技高网...

【技术保护点】

1.一种PCIe协议报文保序装置,其特征在于,包括:

2.根据权利要求1所述的一种PCIe协议报文保序装置,其特征在于:所述译码缓存模块,负责接收来自TLP输入接口的报文,解析和译码TLP报文头格式,根据译码结果将TLP报文头和有效载荷写入其所属种类对应的报文队列,将TLP序信息写入其所属种类对应的序队列,被写入的序队列和报文队列的写指针自增,向前级单元输出P/NP/CPL输入阻塞标志。

3.根据权利要求2所述的一种PCIe协议报文保序装置,其特征在于:所述P/NP/CPL输入阻塞标志,由译码缓存模块根据序队列和报文队列的读/写指针差值计算队列中缓存的有效序信息/报文数量,当序队列中存储的序信息数量或报文队列中缓存的报文数量达到阻塞阈值,需要通知外部前级模块暂停发送对应类型的P/NP/CPL报文,即对应P/NP/CPL输入阻塞标志置1,否则对应P/NP/CPL输入阻塞标志置0;

4.根据权利要求3所述的一种PCIe协议报文保序装置,其特征在于:所述序控制模块,根据P/NP/CPL三类报文到达基本保序单元的先后顺序维护事务相位值,包括P-NP相位值、P-CPL相位值和CPL-NP相位值,与输入TLP报文所属类型相关的2个相位值伴随该TLP报文的RO标志一同写入其所属种类对应的序队列;

5.根据权利要求4所述的一种PCIe协议报文保序装置,其特征在于:所述序控制模块的保序调度条件包括:NP报文调度条件、CPL报文调度条件和P报文调度条件,调度流程按照如下优先级顺序进行:

6.根据权利要求5所述的一种PCIe协议报文保序装置,其特征在于:所述NP报文调度条件,需并列满足下列具体条件:

7.根据权利要求6所述的一种PCIe协议报文保序装置,其特征在于:所述CPL报文调度条件,需在上述NP报文调度条件不满足的前提下,并列满足下列具体条件:

8.根据权利要求7所述的一种PCIe协议报文保序装置,其特征在于:所述P报文调度条件,需在上述NP报文调度条件和CPL报文调度条件均不满足的前提下,并列满足下列具体条件:

9.根据权利要求1所述的一种PCIe协议报文保序装置,其特征在于:USP/DSP端口接收方向的基本保序单元,负责接收和缓存来自USP/DSP端口的事务层接口接收方向输入的TLP报文,并按照保序方法调度出符合条件的P/NP/CPL类型,向中央仲裁选通器发起仲裁申请,申请得到应答后向其发送对应类型的TLP报文;

10.根据权利要求1所述的一种PCIe协议报文保序装置,其特征在于:应用层-事务层的接口处发送方向的基本保序单元,将应用层中多个相同种类的TLP传输通道聚合成3个统一的P/NP/CPL通道后,接入该基本保序单元,由基本保序单元按照保序方法调度出符合条件的P/NP/CPL报文,发往PCIe终端事务层传输接口,最终由PCIe终端设备物理层的高速串行链路发往其他PCIe设备;

...

【技术特征摘要】

1.一种pcie协议报文保序装置,其特征在于,包括:

2.根据权利要求1所述的一种pcie协议报文保序装置,其特征在于:所述译码缓存模块,负责接收来自tlp输入接口的报文,解析和译码tlp报文头格式,根据译码结果将tlp报文头和有效载荷写入其所属种类对应的报文队列,将tlp序信息写入其所属种类对应的序队列,被写入的序队列和报文队列的写指针自增,向前级单元输出p/np/cpl输入阻塞标志。

3.根据权利要求2所述的一种pcie协议报文保序装置,其特征在于:所述p/np/cpl输入阻塞标志,由译码缓存模块根据序队列和报文队列的读/写指针差值计算队列中缓存的有效序信息/报文数量,当序队列中存储的序信息数量或报文队列中缓存的报文数量达到阻塞阈值,需要通知外部前级模块暂停发送对应类型的p/np/cpl报文,即对应p/np/cpl输入阻塞标志置1,否则对应p/np/cpl输入阻塞标志置0;

4.根据权利要求3所述的一种pcie协议报文保序装置,其特征在于:所述序控制模块,根据p/np/cpl三类报文到达基本保序单元的先后顺序维护事务相位值,包括p-np相位值、p-cpl相位值和cpl-np相位值,与输入tlp报文所属类型相关的2个相位值伴随该tlp报文的ro标志一同写入其所属种类对应的序队列;

5.根据权利要求4所述的一种pcie协议报文保序装置,其特征在于:所述序控制模块的保序调度条件包括:np报文调度...

【专利技术属性】
技术研发人员:周恒钊李花芳陈欣民李慧鹏白松辉
申请(专利权)人:北京数渡信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1