关 闭

新闻中心

EEPW首页>工控自动化>设计应用> PCI Express协议实现与验证

PCI Express协议实现与验证

作者: 时间:2012-12-17 来源:网络 收藏

规范规定对于设备的设计采用分层结构,由下向上可分为物理层(Physical Layer)、数据链路层(Data Link Layer)和事务层(Transaction Layer),物理层又由逻辑子层和电气子层组成。沿纵向来看,各层又可分为发送和接收2块功能。发送功能块构成了设备的发送部分,处理向外的传输事务;接收功能块构成了设备的接收部分,处理向内的传输事务。典型层次结构如图2所示。

本文引用地址://m.amcfsurvey.com/article/202021.htm

b.jpg


作为的最高层,事务层主要负责以下任务,如:基于流水线的分割事务;处理事务包的机制;基于“信用”的流量控制;支持数据完整性。数据链路层位于事务层和物理层之间,为事务层TLP在链路中的传输提供可靠的传输机制。数据链路层完成的主要任务包括传递TLP、错误检测和裁决、初始化和电源管理、产生DLLP。
物理层位于PCI Express的最底层,决定了PCI Express总线接口的物理特性,如点对点串行连接、微差分信号驱动、热拨插、可配置带宽等。

2 PCI Express IP核设计
2.1 结构设计
从层次上来讲,PCI Express IP核实现了PCI Express协议定义的所有3个层次:事务、数据链路和物理的逻辑部分。从结构上来讲,PCI Express IP核主要由用户接口模块、发送数据包解析模块、电源管理模块、DLLP仲裁模块、TLP仲裁模块、重传缓冲模块、CRC生成模块、帧信息生成模块、数据链路层数据流仲裁模块、LTSSM状态机模块、SKP发生模块、LTSSM用有序集发生模块、物理层数据流仲裁模块、通道分配模块、通道合并模块、乱序模块、解乱序模块、PIPE接口模块、接收数据包解析模块和接收缓冲模块组成。本文重点介绍用户接口模块和发送数据包解析模块。
用户接口模块是用户逻辑与PCI Express IP核进行数据交互的桥梁,该模块分为发送接口和接收接口2部分。一方面,用户逻辑按照规定的时序通过该模块把欲发送的数据发送到PCI Express链路;另一方面,PCI Express IP核接收来自PCI Express链路上的数据,处理后通过该模块发送给用户逻辑。
发送数据包解析模块的主要任务之一负责解析TLP包,并提供给TLP仲裁模块进行传输。
发送数据包解析模块的第2个功能为实现流控机制。流控机制是PCI Express中最基本的机制之一,流控机制虽然是对本地缓存的一种有效保护,但对TLP的收发性能有很大的影响。流量的初始化和更新均使用DLLP来完成;初始化使用FC Initl和FC Init2DLLP来完成;更新使用FC Updata DLLP来完成。



关键词:ExpressPCI协议

评论


相关推荐

技术专区

关闭