仅对英特尔可见 — GUID: ncd1552184862890
Ixiasoft
仅对英特尔可见 — GUID: ncd1552184862890
Ixiasoft
11.4.1.4. 对象清单文件句法
HLS库对象清单文件是一个XML文件,它将库对象中的RTL模块映射到可由HLS代码调用的函数。 Intel® HLS Compiler使用清单文件中定义的属性将RTL模块集成到组件流水线中。
以下实例显示了实现双精度平方根函数的RTL模块的简单对象清单文件。RTL模块通过Verilog包装器以VHDL实现。
以下对象清单文件适用于名为my_fp_sqrt_double(第 2 行)的RTL模块,该模块通过名为my_sqrtfd(第2行)的C接口实现可调用函数。
1: <RTL_SPEC> 2: <FUNCTION name="my_sqrtfd" module="my_fp_sqrt_double"> 3: <ATTRIBUTES> 4: <IS_STALL_FREE value="yes"/> 5: <IS_FIXED_LATENCY value="yes"/> 6: <EXPECTED_LATENCY value="31"/> 7: <CAPACITY value="31"/> 8: <HAS_SIDE_EFFECTS value="no"/> 9: <ALLOW_MERGING value="no"/> 10: <PARAMETER name="WIDTH" value="64"/> 11: </ATTRIBUTES> 12: <INTERFACE> 13: <AVALON port="clock" type="clock"/> 14: <AVALON port="resetn" type="resetn"/> 15: <AVALON port="ivalid" type="ivalid"/> 16: <AVALON port="iready" type="iready"/> 17: <AVALON port="ovalid" type="ovalid"/> 18: <AVALON port="oready" type="oready"/> 19: <INPUT port="datain" width="64"/> 20: <OUTPUT port="dataout" width="64"/> 21: </INTERFACE> 22: <REQUIREMENTS> 23: <FILE name="my_fp_sqrt_double_s5.v" /> 24: <FILE name="fp_sqrt_double_s5.vhd" /> 25: </REQUIREMENTS> 26: <RESOURCES> 27: <ALUTS value="2057"/> 28: <FFS value="3098"/> 29: <RAMS value="15"/> 30: <MLABS value="43"/> 31: <DSPS value="1.5"/> 32: </RESOURCES> 33: </FUNCTION> 34: </RTL_SPEC>
XML元素 | 描述 |
---|---|
RTL_SPEC | 对象清单文件中的顶层元素。该文件中只能有一个这样的顶层元素。 |
功能性 | 定义RTL模块实现的HLS函数功能的元素。name属性内的FUNCTION元素指定函数名称。 您可能有多个FUNCTION元素,每个元素声明一个可以从 HLS组件调用的不同函数。 同一个RTL模块可以通过指定不同的参数来实现多个功能。要在同一模块使用不同参数组合,请为每个参数组合创建单独的FUNCTION标记。 |
ATTRIBUTES | 该元素包含描述RTL模块各种特征(例如,延迟)的其他XML元素。 实例RTL模块采用一个名为WIDTH的PARAMETER设置,其值为64。 请参阅ATTRIBUTES的XML元素了解更多特定于ATTRIBUTES元素的更多详细信息。 如果您使用不同模块,或使用同一RTL模块但具有不同的PARAMETER设置来创建多个基于RTL的函数,则您必须为每个函数创建单独的FUNCTION元素。 |
INTERFACE | 该元素包含描述RTL模块接口的其他XML元素。 该实例对象清单文件显示了每个RTL模块必须提供的流接口信号(即,clock,resetn,ivalid,iready,ovalid和oready)。 resetn信号为低电平有效。其同步性取决于目标器件:
信号名称必须与RTL模块属性文件中指定的信号名称相匹配。如果RTL代码和RTL模块属性文件中的信号名称不同,则在库创建期间会发生错误。 |
REQUIREMENTS | 指定一个或多个RTL资源文件的元素(即.v,.sv,.vhd,.hex和.mif)。这些文件的指定路径与对象清单文件的位置相关。每个RTL资源文件都成为相关Platform Designer组件的一部分,这些组件与整个HLS组件相对应。 HLS库不支持.qip文件。 |
RESOURCES | 此为可选元素,指定RTL模块使用的FPGA资源估算值。如果不指定此元素,则HLS资源估算报告中RTL模块使用的FPGA资源估算值默认为零。 |