仅对英特尔可见 — GUID: rai1552184871252
Ixiasoft
仅对英特尔可见 — GUID: rai1552184871252
Ixiasoft
11.4.1.4.1. ATTRIBUTES的XML元素
XML元素 | 描述 |
---|---|
IS_STALL_FREE | 指示 Intel® HLS Compiler删除RTL模块周围的所有停顿逻辑。 将IS_STALL_FREE设置为"yes”以指示模块内部不产生停顿,并且无法正确处理传入的停顿。模块将忽略停顿输入。 如果您将IS_STALL_FREE设置为"no",则模块必须正确处理所有停顿和有效信号。 如果将IS_STALL_FREE设置为"yes”,您还必须将IS_FIXED_LATENCY设置为"yes”。此外,如果RTL模块具有内部状态,则必须正确处理ivalid=0输入。 |
IS_FIXED_LATENCY | 指示RTL模块是否具有固定延迟。 将IS_FIXED_LATENCY设置为"yes”,如果RTL模块总是需要已知数量的时钟周期来计算其输出。您分配给EXPECTED_LATENCY元素的值指定时钟周期数。 IS_FIXED_LATENCY的安全值是"no"。当您设置IS_FIXED_LATENCY="no",则EXPECTED_LATENCY值必须至少为1。 对于给定的RTL模块,您可以将IS_FIXED_LATENCY设置为"yes”,并且将IS_STALL_FREE设置为"no"。这样的模块在固定数量的时钟周期内产生输出,并正确处理停顿信号。 |
EXPECTED_LATENCY | 指定RTL模块的预期延迟。 如果您将IS_FIXED_LATENCY设置为"yes",则需要将EXPECTED_LATENCY值设置为模块的准确延迟。否则, Intel® HLS Compiler会生成错误的硬件。 对于具有可变延迟的模块, Intel® HLS Compiler将该模块周围的流水线平衡为您指定的EXPECTED_LATENCY值。对于可能停顿并需要例如iready信号的模块,EXPECTED_LATENCY值必须至少设置为1。 对于具有可变延迟的模块,指定值和实际延迟可能会有所不同,这样就可能会影响流水线内的停顿次数。但是,最终的硬件功能仍然正确。 |
CAPACITY | 指定此模块可同时处理的多个输入的数量。 您必须为CAPACITY指定一个值,如果您还设置了IS_STALL_FREE="no"和IS_FIXED_LATENCY="no"。否则,您无需为CAPACITY指定一个值。 如果CAPACITY严格少于EXPECTED_LATENCY,则在必要时 Intel® HLS Compiler自动在此模块后插入容量平衡FIFO缓冲区。 CAPACITY的保守但安全的值为1。 |
HAS_SIDE_EFFECTS | 指示RTL模块是否具有副作用。具有内部状态或与外部存储器通信的模块就是具有副作用的模块的实例。 将HAS_SIDE_EFFECTS设置为"yes"以指示模块有副作用。将HAS_SIDE_EFFECTS指定为"yes”会确保优化工作不会删除对具有副作用的模块的调用。 有副作用的无停顿模块(即IS_STALL_FREE="yes"和HAS_SIDE_EFFECTS="yes")必须妥善处理ivalid=0输入情况,因为模块偶尔可能会收到无效数据。 HAS_SIDE_EFFECTS的保守但安全的值是"yes"。 此元素以及ALLOW_MERGING元素允许 Intel® HLS Compiler执行某些优化。有关详细信息,请参阅ALLOW_MERGING和HAS_SIDE_EFFECTS元素之间的交互。。 |
ALLOW_MERGING | 表示编译器可以合并该RTL模块的多个实例。 将ALLOW_MERGING设置为"yes”以允许合并模块的多个实例。 Intel® 建议将ALLOW_MERGING设置为"yes"。 ALLOW_MERGING的安全值是"no”。 以HAS_SIDE_EFFECTS="yes”标记模块并不妨碍合并。此元素以及HAS_SIDE_EFFECTS元素允许 Intel® HLS Compiler执行某些优化。有关详细信息,请参阅ALLOW_MERGING和HAS_SIDE_EFFECTS元素之间的交互。。 |
PARAMETER | 指定RTL模块参数的值。 PARAMETER属性:
RTL模块参数的值可以使用value或type属性来指定 |