1. PCIE分为下列层次:
DEVICE CORE/SOFTWARE LAYER
TRANSACTION
DATA LINK
PHYSICAL
2.
DEVICE CORE/SOFTWARE LAYER
这一次,其实就是具体的功能层,例如,网卡的功能,这就需要网卡的硬件部分以及网卡的驱动
3.
TRANSACTION LAYER
有四种REQUEST
MEMORY,IO,CONFIGURATION(前三种,PCI/PCI-X也有),MESSAGE(这种是只有PCIE才新增的)
4.
POSTED与NON-POSTED的区分
NON-POSTED:就是需要有COMPLETION的
反之,POSTED:就是发出去后,没有COMPLETION的
MEM-READ, IO,CONFIGURATION都是NON-POSTED的
MEM-WR,MESSAGE都是POSTED
5.
ECRC--TL
原来是END TO END CRC的意思
ECRC只在目标端检测,在路径当中的SWITCH可检测与报告,但不能改动TLP中的ECRC
6.
LCRC--DLL
LINK CRC的意思
LCRC只在LINK之间,就是PORT与PORT这间
7.
DEVICE CORE/SOFTWARE LAYER: DATA
TL: HEADER + DATA + ECRC
DLL: SEQUENCE NUM + HEADER + DATA + ECRC + LCRC
PHY L: START + SEQUENCE NUM + HEADER + DATA + ECRC + LCRC + END
8.
BDF: BUS,DEVICE,FUNCTION
是作为MEM READ返回的目标的
PCIE中还多了一个TAG
BDF+TAG
9.
LOCK-READ的用途
READ-MODIFY-WRITE如SEM
只有CPU/ROOT COMPLEX才有使用LOCK-READ的权利
10.
NON-POSTED
意思中有,只有上一次的REQUEST被正确执行了,才能做下一次的REQUEST
也只有CPU/PROCESSOR才有NON-POSTED的权利
11.
MESSAGE
替代了原来PCI中的SIDEBAND
用作,中断,电源管理,以及错误统计
12.
QoS
TC: TRAFFIC CLASS, 三个BIT来表示
对应的有
VC: VIRTUAL CHANNEL, 就是BUFFER
SWTICH在INPUT PORTS之间,也有权重之分
13.
TRANSACTION ODERING
只在相同的VC之间有关系
如果TC/VC不同,则没有ORDERING的关系
14.
DLLP是用来做FLOW CONTROL的
有两种DLLP
FLOW CONTROL DLLP
FLOW CONTROL UPDATE DLLP
类似USB3中的LCRD