下图显示了与核的请求器请求接口关联的信号。核将此接口上的每个 TLP 均作为 1 个 AXI4-Stream 数据包来交付。对于含有效载荷的 TLP,此数据包以 128 位描述符开头并后接数据。
请求器请求接口支持通过 2 种不同的数据对齐模式来进行有效载荷传输,此模式在
Vivado®
IDE 中执行核自定义期间进行设置。在 Dword 对齐模式下,用户逻辑必须紧接在描述符的最后一个 Dword 之后提供有效载荷的第一个 Dword。并且,还必须在 first_be[7:0]
中设置相应的位以指示第一个 Dword 中的有效字节,并在 last_be[7:0]
中设置相应的位(两者均为 s_axis_rq_tuser
总线的一部分)以指示有效载荷的最后一个 Dword 中的有效字节。在地址对齐模式下,用户逻辑必须在描述符的最后一个 Dword 之后的节拍中开始有效载荷的传输,其第一个 Dword 可位于数据路径上的任意可能的 Dword 位置内。用户应用使用 s_axis_rq_tuser
中的 addr_offset[3:0]
信号来传达数据路径上的第一个 Dword 的偏移。采用 Dword 对齐模式的情况下,用户应用还必须在 first_be[7:0]
中设置相应的位以指示第一个 Dword 中的有效字节,并在 last_be[7:0]
中设置相应的位以指示有效载荷的最后一个 Dword 中的有效字节。在已启用跨接的情况下,addr_offset[3:2]
、first_be[7:4]
和 last_be[7:4]
用于指示第 2 个 TLP 的信息,而 addr_offset[1:0]
、first_be[3:0]
和 last_be[3:0]
则用于指示该数据节拍上第 1 个 TLP 的信息。
在核中启用“Transaction Processing Hint Capability”(传输事务处理提示功能)的情况下,用户逻辑可以通过使用 s_axis_rq_tuser
总线中包含的 tph_*
信号来为任何存储器传输事务提供可选提示。要随请求提供提示,用户逻辑必须在数据包的第一拍内断言 tph_present
有效,并分别在 tph_st_tag[7:0]
和 tph_st_type[1:0]
上提供“TPH Steering Tag”(TPH 导向标签)和“Steering Tag Type”(导向标签类型)。
该接口还支持跨接选项,此选项允许在同一拍内跨接口传输最多 2 个 TLP。跨接选项只能配合 Dword 对齐模式一起使用,使用 128 位地址对齐模式时,不支持跨接选项。以下章节中的描述假定每拍 1 个 TLP。RQ 接口上的跨接选项 中描述了启用跨接选项的接口的操作。