对于使用串流数据的大部分设计,默认 RTL FIFO 深度 2 足矣。每次仅处理一个采样的串流数据。
对于执行实现所需的 FIFO 深度大于 2 的多速率设计,必须判定(并使用 STREAM 指令设置)完成 RTL 仿真所需的深度。如果 FIFO 深度不足,RTL 协同仿真将停滞。
由于在 GUI 指令窗格内无法查看串流对象,因此在该窗格内无法直接应用 STREAM 指令。
对于包含已声明的 hls::stream<>
对象(或者实参列表中已使用或包含该对象)的函数,右键单击并执行以下操作:
- 选中 STREAM 指令。
- 使用串流变量的名称手动填充
variable
字段。
或者可以:
- 在
directives.tcl
文件中手动指定 STREAM 指令,或 - 在
source
中添加该指令作为编译指示。