默认情况下,AXI4‑Stream 接口始终作为已寄存的接口来实现,以便在将含有 AXI4‑Stream 接口的多个 HLS IP 块集成到更大的设计中时,确保不会创建组合反馈路径。对于 AXI4‑Stream 接口,提供了 4 种类型的寄存器模式,以控制接口寄存器的实现方式:
- “Forward”(正向)
- 仅寄存
TDATA
和TVALID
信号。 - “Reverse”(反向)
- 仅寄存
TREADY
信号。 - “Both”(双向)
- 寄存所有信号(
TDATA
、TREADY
和TVALID
)。这是默认方式。 - “Off”(关闭)
- 不寄存任何端口信号。
AXI4‑Stream 旁路信号被视为数据信号,随 TDATA
一起寄存。
建议: 将 HLS 生成的 IP 块与 AXI4‑Stream 接口相连时,应将至少 1 个接口实现为寄存接口,或者这些块应通过 AXI4‑Stream Register Slice 连接。
在设计中可通过 2 种基本方法来使用 AXI4‑Stream:
- 使用不含旁路的 AXI4‑Stream。
- 使用含旁路的 AXI4‑Stream。
第 2 种使用模型可提供额外功能,允许将属于 AXI4‑Stream 标准的可选旁路直接用于 C/C++ 代码中。