一个简单地的例子来回顾PCIe总线的结构、事务层、数据链路层和物理层

前面的一系列文章简要地介绍了pcie总线的结构、事务层、数据链路层和物理层。下面我们用一个简单地的例子来回顾并总结一下。
如下图所示,requester的应用层(软件层)首先向其事务层发送如下信息:32位(或者64位)的memory地址,事务类型(transaction type),数据量(以dw为单位),tc(traffic class,即优先级),字节使能(byte enable)和属性信息(attributes)等。
然后接收端的事务层使用这些信息创建了一个mrd tlp(memory read的事务层包),并将requester的id(bdf,bus & device & function)写入到该tlp的header中,以便completer根据这一bdf将completion信息返回给requester。然后这个tlp会根据其tc的值被放到对应的vc buffer中,flow control逻辑便会检车接收端的对应的接收vc buffer空间是否充足。一旦接收端的vc buffer空间充足,tlp便会准备被向接收端发送。
注:tlp的header实际上有两种,32位的地址对应的是3dw的header,64为的地址对应的是4dw的header。这在后续的文章中会详细介绍。
当tlp到达数据链路层(data link layer)时候,数据链路层会为其添加上12位的序列号(sequence number)和32位的lcrc。并将添加上这些信息之后的tlp(即dllp)在replay buffer中做一个备份,并随后将其发送至物理层。
物理层接收到dllp之后,为其添加上起始字符(start & end characters,又叫帧字符,frame characters),然后依次进行解字节(strip byte)、扰码(scramble)、8b/10b编码并进行串行化,随后发送至相邻的pcie设备的物理层。
接收端pcie设备(即completer)的物理层接收到数据之后,依次执行与发送端相反的操作。并从数据中恢复出时钟,然后将恢复出来的dllp发送至数据链路层。
completer的数据链路层首先检查dllp中的lcrc,如果存在错误,则向requester发送一个nak类型的dllp,该dllp包含了其接受到的dllp中的序列号(sequence number)。requester的数据链路层接收到来自completer的nak dllp之后,从中找到序列号(sequence number),并根据序列号在replay buffer找到对应的dllp,然后将其重新发送至completer。如果completer的数据链路层没有检查到lcrc的错误,也会向requester发送一个ack类型的dllp,该dllp同样包含了其接收到的dllp中的序列号。requester的数据链路层接收到之一ack dllp之后,便会根据其中的序列号在replay buffer中找到对应的dllp的备份,并将其丢弃(discard)。
当接收端pcie涉笔(即completer)的数据链路层正确的接收到了来自requester的dllp(包含tlp的)时,随后将其进一步发送至事务层,事务层检查ecrc(可选的),并对tlp进行解析,然后将解析后的信息发送至应用层(软件层)。
如下图所示,completer的应用层会根据接受到的信息进行相应的处理,处理完成后会将数据发送至事务层,事务层根据这一信息创建一个新的tlp(即cpld,completion with data)。并根据先前接收到的tlp中的bdf信息,找到原来的requester,然后将cpld发送至该requester。这一发送过程与requester向completer发送tlp(mrd request)的过程基本是一致的。所以这里就不在重复了。
注:如果completer不能够返回有效数据给requester,或者遇到错误,则其返回的就不是cpld了,而是cpl(completion without data),requester接收到cpl的tlp之后便会知道发生了错误,其应用层(软件层)会进行相应的处理。

一文讲透三极管
TD-SCDMA频率规划和组网模式浅谈
一加5什么时候上市?一加5配备一大波黑科技,死磕小米6,即将发布
物联网PaaS平台有哪些?盘点国内外知名物联网平台
骨传导耳机怎么样?四款好用骨传导耳机推荐
一个简单地的例子来回顾PCIe总线的结构、事务层、数据链路层和物理层
常见的谐波源及谐波处理方案
发展历程大盘点:蔚来汽车为何会会越做越大,究竟有何底气?
林创欧洲行|石神宋:市场亟待开发,解决物流是关键
面向机柜I/O接口用的8016系列矩形连接器
地下车库一氧化碳CO探测器监测系统规范
中国联通700M拍卖价格远超C波段
热水器温度智能控制系统设计
智信通助力汽车金融风云变,聚焦贷后风控新手段!
安森美半导体配合中国便携医疗设备趋势的医疗半导体方案
随手就能拍大片的OPPO Reno6系列发布,京东618正在火热预售中
高温超导体新的际遇
艾默生变频器及PLC在恒液位控制中的应用
电磁铁电源JCP-10/120HA的技术参数
北京 6月16日-17日《产品EMC正向设计与检视》公开课火热报名中!