基于PCIe总线的处理层设计方法、结构及应用技术

技术编号:28130156 阅读:17 留言:0更新日期:2021-04-19 11:50
本发明专利技术属于SoC技术领域,具体涉及一种基于PCIe总线的处理层设计方法、结构及应用,包括如下步骤:利用应用接口层TLP生成器子模块提供的参数和数据生成TLP包,然后发送传输给处理层;TLP包进入处理层后,在发送端VC多路复用器模块中判断是否向VC发送模块发送;VC发送模块对需要进行发送的TLP包进行流量控制管理,随后ECRC生成器模块将校验字段加入TLP包中并经过链路从发送端发送到接收端,TLP包被接收端接收到的时候,开始用ECRC解析器模块进行校验,将校验后没有错误的TLP包通过缓存处理发送至接收端VC多路复用器模块,通过对PCIe总线的处理层进行设计,对相应的模块进行优化,改进了数据传输过程中出错的风险,提高了数据包的收发速率。数据包的收发速率。数据包的收发速率。

【技术实现步骤摘要】
基于PCIe总线的处理层设计方法、结构及应用


[0001]本专利技术属于SoC
,具体涉及一种基于PCIe总线的处理层设计方法、结构及应用。

技术介绍

[0002]随着信息技术的不断发展,计算机的运行速度相比于过去有了极大的提高,总线对于数据传输的性能已经成为衡量计算机系统性能的重要指标。PCIe总线作为高速总线的一种,在继承 PCI、PCI

X 总线特点的基础上,采用端到端的方式进行连接,将之前的并行数据传输方式转变为串行数据传输方式,减少了外部系统对数据传输的干扰,解决了并行数据各个比特传输延时不相等以及时钟到达接收端和发送端时延不相等而导致的时钟传播时延和数据传播时延不一致的问题,使得数据传输速率大大提高,能够与高频处理器的运行速度相匹配,使得传输效率和带宽有所增加。同时,串行线路在布局布线时相较于并行线路更加方便,适合规模较大且较为复杂的SoC系统开发,节约了更多的工艺成本。PCIe数据通路可配置,根据不同的业务需求,接口模式可供选择,包括1x、2x、4x、8x和16x等。
[0003]本专利技术在深入了解PCIe总线协议的基础上实现了PCIe总线内部结构的设计,其中最主要的是实现PCIe处理层的设计。在满足PCIe协议的情况下,实现了最优化的调整并使其满足本设计的要求。

技术实现思路

[0004]针对现有技术的不足,本专利技术提供了基于PCIe总线的处理层设计方法、结构及应用,通过对PCIe总线的处理层(包括VC仲裁模块、ECRC校验模块等)进行设计,对相应的模块进行优化,改进了数据传输过程中出错的风险,提高了数据包的收发速率。
[0005]本专利技术通过以下技术方案予以实现:一种基于PCIe总线的处理层设计方法,包括如下步骤:步骤1):利用应用接口层TLP生成器子模块提供的参数和数据生成TLP包,然后发送传输给处理层;步骤2):所述TLP包进入所述处理层后,在发送端VC多路复用器模块中判断是否向VC发送模块发送;步骤3):所述VC发送模块对需要进行发送的所述TLP包进行流量控制管理,随后ECRC生成器模块将校验字段加入所述TLP包中并经过链路从发送端发送到接收端,步骤4):所述TLP包被接收端接收到的时候,开始用ECRC解析器模块进行校验,将校验后没有错误的所述TLP包通过缓存处理发送至接收端VC多路复用器模块。
[0006]优选的,所述步骤2)具体的包括如下内容:所述TLP包进入所述处理层后,利用所述发送端VC多路复用器模块判断此所述TLP包是否用于配置,若是,则将该所述TLP包发送给配置空间模块;
若不是,则将该所述TLP包发送给所述VC发送模块。
[0007]优选的,所述步骤3)中所述VC发送模块对需要进行发送的TLP进行流量控制时,具体的包括如下内容:根据VC的优先级,待发送的所述TLP包在VC仲裁器模块中排队并等待被发送;通过所述VC仲裁器模块之后,发送之前待发送的所述TLP包时,还需经过ECRC生成器模块进行进一步拓展,加入校验字段,以便进行数据纠错检查;所述ECRC生成器模块将校验字段加入所述TLP包中,将该封装好的完整所述TLP包再通过数据链路层、物理层和链路,从发送端传输到接收端。
[0008]优选的,所述步骤4)具体的包括如下内容:所述TLP包被接收端接收后,开始用ECRC解析器进行校验;若校验结果没有错误,则该所述TLP包将被送入TC/VC映射模块,使得所述TLP包被转发到相应的VC接收模块;若校验结果有错误,则直接丢弃该所述TLP包,并告知发送端此所述TLP包是错误的,需要发送端重新发送一个正确的所述TLP包。
[0009]优选的,所述步骤3)中所述TLP包被发送到流量控制模块进行流量控制,以防溢出。
[0010]优选的,所述TLP包通过缓存处理,发送至所述接收端VC多路复用器模块,若所述TLP包是配置数据包,则发送到配置空间;若所述TLP包不是配置数据包,则发送给上一层的应用接口模块。
[0011]一种基于PCIe总线的处理层设计结构,包括由上述的所述发送端VC多路复用器模块、所述VC发送模块、所述VC仲裁器模块、所述ECRC生成器模块、所述ECRC解析器模块、所述TC/VC映射模块、所述VC接收模块和所述接收端VC多路复用器模块构成。
[0012]一种基于Power PC架构的SoC电路的应用,包括通过上述所述的基于PCIe总线的处理层设计结构在所述SoC电路的应用。
[0013]本专利技术的有益效果为:通过对PCIe总线的处理层(包括VC仲裁模块、ECRC校验模块等)进行设计,对相应的模块进行优化,改进了数据传输过程中出错的风险,提高了数据包的收发速率;而且进行实测时,基于PCIe总线的处理层设计应用于一款基于Power PC架构的SoC电路。该SoC电路基于AXI总线和局部总线与片内外设通信,基于本专利技术的PCIe高速总线与相关外设相连,用于收发高带宽和高速的数据。在设计阶段,基于SoC的仿真验证平台对PCIe高速总线进行验证,施加固定或随机的数据进行功能仿真。该SoC电路采用40nm工艺,整体封装采用SiP封装形式。经实际测试,PCIe总线在三温实验下,可正常工作,可实现数据包的高收发速率。
附图说明
[0014]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0015]图1为本专利技术中基于PCIe总线的处理层设计结构的原理框架图。
[0016]图中:101

发送端VC多路复用器模块、102

VC发送模块、103

ECRC生成器模块、104

ECRC解析器模块、105

接收端VC多路复用器模块、106

TC/VC映射模块、107

VC仲裁器模块、108

VC接收模块。
具体实施方式
[0017]为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0018]实施例一:请参阅图1所示:本专利技术提供了一实施例,具体公开提供了一种基于PCIe总线的处理层设计方法,包括如下步骤:步骤1:利用应用接口层TLP生成器子模块提供的参数和数据生成TLP包,然后发送传输给处理层;步骤2:TLP包进入处理层后,在发送端VC多路复用器模块101中判断是否向VC发送模块102发送;步骤3:VC发送模块102对需要进行发送的TLP包进行流量控制管理,随后ECR本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于PCIe总线的处理层设计方法,其特征在于,包括如下步骤:步骤1):利用应用接口层TLP生成器子模块提供的参数和数据生成TLP包,然后发送传输给处理层;步骤2):所述TLP包进入所述处理层后,在发送端VC多路复用器模块中判断是否向VC发送模块发送;步骤3):所述VC发送模块对需要进行发送的所述TLP包进行流量控制管理,随后ECRC生成器模块将校验字段加入所述TLP包中并经过链路从发送端发送到接收端,步骤4):所述TLP包被接收端接收到的时候,开始用ECRC解析器模块进行校验,将校验后没有错误的所述TLP包通过缓存处理发送至接收端VC多路复用器模块。2.根据权利要求1所述的一种基于PCIe总线的处理层设计方法,其特征在于,所述步骤2)具体的包括如下内容:所述TLP包进入所述处理层后,利用所述发送端VC多路复用器模块判断此所述TLP包是否用于配置,若是,则将该所述TLP包发送给配置空间模块;若不是,则将该所述TLP包发送给所述VC发送模块。3.根据权利要求1所述的一种基于PCIe总线的处理层设计方法,其特征在于,所述步骤3)中所述VC发送模块对需要进行发送的TLP进行流量控制时,具体的包括如下内容:根据VC的优先级,待发送的所述TLP包在VC仲裁器模块中排队并等待被发送;通过所述VC仲裁器模块之后,发送之前待发送的所述TLP包时,还需经过ECRC生成器模块进行进一步拓展,加入校验字段,以便进行数据纠错检查;所述ECRC生成器模块将校验字段加入所述TLP包中,将该封装好的完整所述TLP...

【专利技术属性】
技术研发人员:董利桂江华魏江杰殷庆会
申请(专利权)人:中国电子科技集团公司第五十八研究所
类型:发明
国别省市:

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

1