PCIe进阶之TL:Common Packet Header Fields TLPs with Data Payloads Rules
1 Transaction Layer Protocol - Packet Definition
TLP有四种事务类型:Memory、I/O、Configuration 和 Messages,两种地址格式:32bit 和 64bit。
构成 TLP 时,所有标记为 Reserved 的字段(有时缩写为 R)都必须全为0。接收者Rx必须忽略此字段中的值,PCIe Switch 必须对其进行原封不动的转发。请注意,对于某些字段,既有指定值又有 Reserved值,在这些情况下,按 Reserved 值的方式处理。
1.1 Common Packet Header Fields
所有 TLP 的 prefix 和 header 都包含以下定义字段,如下图所示:
- Fmt[2:0]:Format of TLP,bits 7:5 of byte 0
- Type[4:0]:Type of TLP,bits 4:0 of byte 0
Fmt 字段还指示是否存在一个或多个 TLP Prefix,Type 字段指示相关的 TLP Prefix 的类型。
TLP header 的 Fmt 和 Type 字段确定了 TLP header 是 3DW 还是 4DW,还确定了header 之后是否包含有效数据。
TLP header