PCIe(三):PCIe分层结构 | 您所在的位置:网站首页 › pcie协议简介 › PCIe(三):PCIe分层结构 |
PCIe分层结构
绝大多数的总线或者接口,都是采用分层实现的。PCIe也不例外,它的层次结构如下:
PCIe传输的数据从上到下,都是以packet的形式传输的,每个packet都是有其固定的格式的。 事务层的主要职责是创建(发送)或者解析(接收)TLP (Transaction Layer packet),流量控制,QoS,事务排序等。 数据链路层的主要职责是创建(发送)或者解析(接收)DLLP(Data Link Layer packet),Ack/Nak协议(链路层检错和纠错),流控,电源管理等。 物理层的主要职责是处理所有的Packet数据物理传输,发送端数据分发到各个Lane传输(stripe),接收端把各个Lane上的数据汇总起来(De-stripe),每个Lane上加扰(Scramble,目的是让0和1分布均匀,去除信道的电磁干扰EMI)去扰(De-scramble),以及8/10或者128/130编码解码,等等。 今天只讲个大概,这三层以后还会专门细讲。这里先贴个这三层的细节图,自己看:
接收方物理层是最先接收到这些数据的,然后执行逆操作;在数据链路层,校验序列号和LCRC,如果没错,剥掉序列号和LCRC,往事务层走;如果校验出差,通知对方重传;在事务层,校验ECRC,有错,数据抛弃,没错,去掉ECRC,获得数据。整个过程犹如脱衣睡觉,外套脱了,衬衫脱了,内衣也脱了,光溜溜钻进被窝。
每个Endpoint都需要实现这三层,每个Switch的每个Port也是需要实现这三层的:
|
CopyRight 2018-2019 实验室设备网 版权所有 |