PCIe Gen6 Transaction Layer整理(一)
2.1.2 Common Packet Header Fields for Flit Mode
2.1.2.1 FLit模式下的TLP规则:
- 存在0个或者多个1DW的Local TLP prefixes
- Type[7:0] 表示了TLP Header Base的类型和Size。TLP Header Base之后紧跟的0到7DW的Orthogonal Header Content (OHC) 内容则由OHC[4:0]指定。
- TLP data payload 的范围是0DW~1024DW
- 是否存在TLP Trailer由TS[2:0]指示
2.1.2.2 传输NOP TLP的要求
○如果在TLP传输处于活动状态时没有其他类型的TLP需要传输,则必须传输NOP TLP。接收器必须无影响地丢弃NOP TLP。NOP TLP主要用于保证链路传输的连续性和时序对齐 。
2.1.2.3 Flit Mode 和Non-Flit Mode TLP的明显差异
- Non-Flit模式下,在End-to-End TLP prefixes中的内容被整合到了header OHC中
- Flit Mode模式下,PH, Steering Tags, and AMA/AV fields 被整合到了OHC中
如图所示,type字段是Flit Mode TLP Header Type Encodings
2.1.2.4 TS 字段
The TS [2:0] field 表示的是Trailer Size,其编码如下:
• 000b – No Trailer
• 001b – 1DW Trailer containing ECRC
• 010b – 1DW Trailer – Content Reserved
• 011b – 2DW Trailer – Content Reserved
• 100b – 2DW Trailer – Content Reserved
• 101b – 3DW Trailer with IDE MAC if and only if OHC-C present and indicates IDE TLP; Else 3DW Trailer – Content
Reserved
• 110b – 4DW Trailer with IDE MAC and PCRC if and only if OHC-C present and indicates IDE TLP; Else 4DW Trailer
– Content Reserved
• 111b – 5DW Trailer – Content Reserved
TC 含义 Attr and Length fields in Flit Mode are the same as in Non-Flit Mode
2.1.2.5 TC, Attr 和Length字段
Flit Mode和Non-Flit Mode下,TC, Attr 和Length字段的含义一致。
2.1.2.6 OHC [4:0] 字段
The OHC [4:0] field 表示 “Orthogonal Header Content” (OHC)是否存在,其编码如下:
• 0 0000b = No OHC present
• x xxx1b = OHC-A present
• x xx1xb = OHC-B present
• x x1xxb = OHC-C present
• 0 0xxxb = No OHC-E present
• 0 1xxxb = OHC-E1 present
• 1 0xxxb = OHC-E2 present
• 1 1xxxb = OHC-E4 present
需要注意的是,OHC必须在header base之后,同一个TLP允许多个OHC同时存在,并且要按A-B-C-E 的顺序分布。
不同类型的TLP包含的OHC内容不同,接收端收到TLP时,会检查OHC的内容是否符合协议规范。如果收到的request,其OHC的内容不符合协议规范,则接收端会将其当做Unsupported Request处理。如果收到的Completion,其OHC的内容不符合协议规范,则接收端会将其当做Unexpected Completion处理。
2.1.2.7 OHC-A1
部分Memory Requests和部分地址路由的Messages会使用OHC-A1
The ER bit is Execute Requested, and the PMR bit is Privileged Mode Requested (see § Section 6.20 ). These bits are Reserved for all Requests other than Translation Requests (see § Section 10.2.2 and Page Requests (see § Section 10.4 ).
• When OHC-A1 is included with a TLP, if the PASID is not known or has not been assigned, then the PV ("PASID Valid") bit must be Clear.
• The ER and PMR bits are Reserved if PV is Clear.
• The PASID field is Reserved if PV is Clear.
• The NW bit is No Write (NW). This bit is Reserved for all Requests other than Translation Requests.
• OHC-A1 is required as specified in § Section 2.2.5.2 .
Last DW BE和1st DW BE含义见表格2-10。
2.1.2.8 OHC-A2
所有的IO Requests都必须使用OHC-A2. Last DW BE和1st DW BE含义见表格2-10。
2.1.2.9 OHC-A3
所有Configuration Requests都必须使用OHC-A3。如果DSV为0,则Destination Segment字段是Reserved。
2.1.2.10 OHC-A4
• When OHC-A4 is included with a TLP, if the PASID is not known or has not been assigned, then the PV ("PASID Valid") bit must be Clear.
• The PASID field is Reserved if PV is Clear.
• The Destination Segment field is Reserved if DSV is Clear.
• OHC-A4 must be included in ID Routed Messages when Destination Segment or PASID is required
2.1.2.11 OHC-A5
• LA[1:0] is Lower Address[1:0].
• The Destination Segment field is Reserved if DSV is Clear.
•OHC-A5常常用于Completions TLP。 OHC-A5 is required as specified in § Section 2.2.9.2 .
2.1.2.12 OHC-B
• OHC-B仅仅用于地址路由请求. 当OHC-B 用于其他类型的TLPs,其OHC-B 所有字段均是Reserved。
• When TLP Processing Hints (TPH) are used OHC-B must be included with the appropriate PH and ST values.
• The PH and ST fields are qualified by the HV [1:0] ("Hints Valid") field, defined as:
◦ 00b: PH [1:0], ST [15:0] are not valid and are Reserved
◦ 01b: PH [1:0] and ST [7:0] are valid, ST [15:8] is not valid and is Reserved
◦ 10b: Reserved encoding, Receivers must treat as 00b.
◦ 11b: PH [1:0] and ST [15:0] are valid
• AMA [2:0] is Reserved when AV is Clear
END
作者:IC小鸽
文章来源:IC小鸽
推荐阅读
更多 IC 设计干货请关注IC 设计专栏。欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。