一、Memory Read包
本系统中:CPU会发出Read包。
1、CPU发过来的包格式
Field Name |
Header Byte/Bit |
Function |
|||
Length [9:0] |
Byte 3 Bit 7:0 Byte 2 Bit 1:0 |
单位是DW |
|||
Attr (Attributes) |
Byte 2 Bit 5:4 |
00,PCI才不是0 |
|||
EP (Poisoned Data) |
Byte 2 Bit 6 |
要求驱动发包这里必须都是0,否则没意义 |
|||
TD (TLP Digest Field Present) |
Byte 2 Bit 7 |
0,不摘要(要求驱动不能发摘要) |
|||
TC (Traffic Class) |
Byte 1 Bit 6:4 |
000 |
|||
Type[4:0] |
Byte 0 Bit 4:0 |
00000b = Memory Read or Write |
|||
Fmt 1:0 (Format) |
Byte 0 Bit 6:5 |
00b = Memory Read (3DW w/o data) |
|||
1st DW BE 3:0 (First DW Byte Enables) |
Byte 7 Bit 3:0 |
要求驱动发包必须DW对齐
|
|||
Last BE 3:0 (Last DW Byte Enables) |
Byte 7 Bit 7:4 |
||||
Tag 7:0 |
Byte 6 Bit 7:0 |
不一定 |
|||
Requester ID 15:0 |
Byte 5 Bit 7:0 Byte 4 Bit 7:0 |
全是0 |
|||
Address 31:2 |
Byte 15 Bit 7:2 Byte 14 Bit 7:0 Byte 13 Bit 7:0 Byte 12 Bit 7:0 |
地址 |
二、Memory Write包
本系统中:CPU、板卡会发出Write包。
1、CPU发过来的包格式
Field Name |
Header Byte/Bit |
Function |
|||
Length [9:0] |
Byte 3 Bit 7:0 Byte 2 Bit 1:0 |
单位是DW |
|||
Attr (Attributes) |
Byte 2 Bit 5:4 |
00,PCI才不是0 |
|||
EP (Poisoned Data) |
Byte 2 Bit 6 |
要求驱动发包这里必须都是0,否则没意义 |
|||
TD (TLP Digest Field Present) |
Byte 2 Bit 7 |
0,不摘要(要求驱动不能发摘要) |
|||
TC (Traffic Class) |
Byte 1 Bit 6:4 |
000 |
|||
Type[4:0] |
Byte 0 Bit 4:0 |
00000b = Memory Read or Write |
|||
Fmt 1:0 (Format) |
Byte 0 Bit 6:5 |
10b = Memory Write (3DW w/ data) |
|||
1st DW BE 3:0 (First DW Byte Enables) |
Byte 7 Bit 3:0 |
要求驱动发包必须DW对齐
|
|||
Last BE 3:0 (Last DW Byte Enables) |
Byte 7 Bit 7:4 |
||||
Tag 7:0 |
Byte 6 Bit 7:0 |
不一定 |
|||
Requester ID 15:0 |
Byte 5 Bit 7:0 Byte 4 Bit 7:0 |
全是0 |
|||
Address 31:2 |
Byte 15 Bit 7:2 Byte 14 Bit 7:0 Byte 13 Bit 7:0 Byte 12 Bit 7:0 |
地址 |