接收报文接口 - 1.3 简体中文

UltraScale+ 器件 Integrated Block for PCI Express 产品指南 (PG213)

Document ID
PG213
Release Date
2022-11-16
Version
1.3 简体中文

核可提供独立接收报文接口,以供用户应用用于接收表示已接收到来自链路的报文的指示信息。当启用接收报文接口时,集成块会发出表示已收到来自链路的报文的信号,包括设置 cfg_msg_received_type[4:0] 输出以指示报文类型(请参阅下表)以及脉冲 cfg_msg_received 信号并保持 1 个或多个周期。cfg_msg_received 的断言有效持续时间是由接收到的报文类型来确定的(请参阅 表 1)。当 cfg_msg_received 处于高电平有效状态时,集成块会在 cfg_msg_received_data 总线上传输与总线上的报文关联的任意参数(每次 8 位)。在 表 2 表中列出了在 cfg_msg_received 断言有效的每个周期内,针对各报文类型在此总线上传输的参数。对于供应商定义的报文,集成块仅传输通过此接口的任意关联有效载荷的第一个 Dword。当使用的有效载荷较大时,应使用完成器请求接口来交付报文。

表 1. 接收报文接口上的报文类型编码
cfg_msg_received_type[4:0] 报文类型
0 ERR_COR
1 ERR_NONFATAL
2 ERR_FATAL
3 Assert_INTA
4 Deassert_ INTA
5 Assert_INTB
6 Deassert_ INTB
7 Assert_INTC
8 Deassert_ INTC
9 Assert_INTD
10 Deassert_ INTD
11 PM_PME
12 PME_TO_Ack
13 PME_Turn_Off
14 PM_Active_State_Nak
15 Set_Slot_Power_Limit
16 时延容限报告 (LTR)
17 最优化闪存刷新/填充 (OBFF)
18 解锁
19 Vendor_Defined 类型 0
20 Vendor_Defined 类型 1
21 ATS 无效请求
22 ATS 无效完成
23 ATS 页面请求
24 ATS PRG 响应
25 - 31 保留
表 2. 接收报文接口上的报文参数
报文类型 cfg_msg_received 断言有效的周期数 cfg_msg_received_data[7:0] 上传输的参数
ERR_COR、ERR_NONFATAL、ERR_FATAL 2

周期 1:请求器 ID、总线编号

周期 2:请求器 ID、器件/功能编号

Assert_INTx、Deassert_INTx 2

周期 1:请求器 ID、总线编号

周期 2:请求器 ID、器件/功能编号

PM_PME、PME_TO_Ack、PME_Turn_off、PM_Active_State_Nak 2

周期 1:请求器 ID、总线编号

周期 2:请求器 ID、器件/功能编号

Set_Slot_Power_Limit 6

周期 1:请求器 ID、总线编号

周期 2:请求器 ID、器件/功能编号

周期 3:有效载荷的位 [7:0]

周期 4:有效载荷的位 [15:8]

周期 5:有效载荷的位 [23:16]

周期 6:有效载荷的位 [31:24]

时延容限报告 (LTR) 6

周期 1:请求器 ID、总线编号

周期 2:请求器 ID、器件/功能编号

周期 3:嗅探时延的位 [7:0]

周期 4:嗅探时延的位 [15:8]

周期 5:无嗅探时延的位 [7:0]

周期 6:无嗅探时延的位 [15:8]

最优化闪存刷新/填充 (OBFF) 3

周期 1:请求器 ID、总线编号

周期 2:请求器 ID、器件/功能编号

周期 3:OBFF 代码

解锁 2

周期 1:请求器 ID、总线编号

周期 2:请求器 ID、器件/功能编号

Vendor_Defined 类型 0 不存在数据时为 4 个周期,存在数据时则为 8 个周期。

周期 1:请求器 ID、总线编号

周期 2:请求器 ID、器件/功能编号

周期 3:供应商 ID[7:0]

周期 4:供应商 ID[15:8]

周期 5:有效载荷的位 [7:0]

周期 6:有效载荷的位 [15:8]

周期 7:有效载荷的位 [23:16]

周期 8:有效载荷的位 [31:24]

Vendor_Defined 类型 1 不存在数据时为 4 个周期,存在数据时则为 8 个周期。

周期 1:请求器 ID、总线编号

周期 2:请求器 ID、器件/功能编号

周期 3:供应商 ID[7:0]

周期 4:供应商 ID[15:8]

周期 5:有效载荷的位 [7:0]

周期 6:有效载荷的位 [15:8]

周期 7:有效载荷的位 [23:16]

周期 8:有效载荷的位 [31:24]

ATS 无效请求 2

周期 1:请求器 ID、总线编号

周期 2:请求器 ID、器件/功能编号

ATS 无效完成 2

周期 1:请求器 ID、总线编号

周期 2:请求器 ID、器件/功能编号

ATS 页面请求 2

周期 1:请求器 ID、总线编号

周期 2:请求器 ID、器件/功能编号

ATS PRG 响应 2

周期 1:请求器 ID、总线编号

周期 2:请求器 ID、器件/功能编号

以下时序图显示了接收报文接口上的 Set_Slot_Power_Limit 报文的示例。此报文含有关联的有效载荷(含 1 个 Dword)。对于此报文,参数通过 6 个连续周期进行传输。在每个周期内,cfg_msg_received_data 总线上都会显示以下信息:

  • 周期 1:请求器 ID 的总线编号
  • 周期 2:请求器 ID 的器件/功能编号
  • 周期 3:有效载荷 Dword 的位 [7:0]
  • 周期 4:有效载荷 Dword 的位 [15:8]
  • 周期 5:有效载荷 Dword 的位 [23:16]
  • 周期 6:有效载荷 Dword 的位 [31:24]
图 1. 接收报文接口

集成块会在 cfg_msg_received 输出上的连续脉冲之间插入 1 个间隙,其长度至少为 1 个时钟周期。不存在对通过接收报文接口交付的报文指示信息应用反压的机制。使用此接口时,用户逻辑必须始终随时准备好接收报文指示信息。