Intel® 高层次综合编译器专业版Pro版: 参考手册

ID 683349
日期 12/04/2023
Public
文档目录

11.4.1.2.1. RTL模块接口信号

Intel® HLS Compiler需要RTL模块在输入和输出都支持readyLatency = 0的单个接口。

如图RTL模块接口中所示,RTL模块必须有四个端口:
  • ivalidiready作为输入就绪/有效接口
  • ovalidoready作为输出就绪/有效接口
下图说明了具有背压的输入数据传输的时序图。
图 21. 带背压的输入和输出数据传输时序图

对于具有固定延迟的RTL模块,输出信号(ovalidoready)可以具有恒定的高值,并且输入就绪信号(iready) 可以被忽略。

无停顿的RTL模块可能会收到无效的输入信号(ivalid为低电平)。该情况下,模块会忽略输入并在输出上产生无效数据。对于无内部状态的无停顿RTL模块,通过模块传播无效输入可能更容易。但是,对于具有内部状态的RTL模块,您必须小心处理ivalid = 0输入。

无停顿RTL组件实例时序图

考虑以下无停顿RTL组件的实例时序图:

图 22. 无停顿RTL组件的时序图
对于此组件,在RTL模块的对象清单文件中设置了以下ATTRIBUTE元素:
  • IS_STALL_FREE值="yes”
  • IS_FIXED_LATENCY值="yes”
  • EXPECTED_LATENCY值=“2”

非停顿RTL组件实例时序图

考虑以下无停顿RTL组件实例时序图:

图 23. 非无停顿RTL组件的时序图
对于此组件,在RTL模块的对象清单文件中设置了以下ATTRIBUTE元素:
  • IS_STALL_FREE值= "no"
  • IS_FIXED_LATENCY值= "no"
  • EXPECTED_LATENCY值= "4”