1.
DATA LINK LAYER主要负责
一,TLP的错误检测, (类似USB中的LGOOD, LBAD, LRTY ?), 主要是检测TLP的SEQUENCE NUMBER与LCRC
二,FLOW CONTROL, 类似USB中的LCRD, LCRD1/LCRD2
三,LINK POWER MANAGEMENT,类似USB中的LGOUx, LAU, LXU,LPMA
2.
DATA LINK LAYER PACKET只在两个DEVICE之间的DATA LINK LAYER之间产生与消耗,TL并不知道有DLLP这回事情
3.
TLP错误检测,是在两个PORT与PORT的LINK之间的,使用ACK与NAK
如果发送端收到ACK DLLP,则发送端会将REPLY BUFFER中所有的ACK 所指定的SEQUENCE NUM及之前的TLP都清掉
还有一种情况就是返回NAK,表示TLP(SEQNUCE NUMBER与LCRC)有错误
4.
看下来,PCIE的LINK LAYER与USB3的DATA LINK LAYER,基本上,是类似的