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

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

4.4.3. Avalon® Memory-Mapped Host接口和加载-存储-单元(Load-Store Units)

当您的组件使用一个或多个 Avalon® Memory-Mapped Host接口时, Intel® HLS Compiler在接口和其余组件数据路径之间的数据路径中插入加载-存储单元(LSU)。插入的LSU类型取决于推断的存储器访问模式和存储器其它属性。

Intel® HLS Compiler还尝试通过将多个加载/存储操作合并为更宽的加载/存储操作来尽量减少创建的LSU数量。多个LSU可以共享一个存储器接口。

通常情况下, Intel® HLS Compiler为可变延迟MM Host接口创建突发合并LSU,以及为固定延迟MM Host接口创建流水线化的LSU。

关于LSU类型以及通常何时 Intel® HLS Compiler会实例化这些LSU类型,请参阅Load-Store Unit类型存储器访问合并和加载-存储单元

如果您的设计包含一个或多个可变延迟 Avalon® MM Host接口(例如,如果与片外存储器对接),您可以控制LSU类型以提高设计的性能和资源利用率。

组件与片上存储器交互时(如组件存储器(存储器属性)中所述),也会使用LSU。

使用高级设计报告来确定您组件具有的LSU类型,然后您可以根据需要应用这些LSU控制来实现需要的组件性能。

表 14.   Intel® HLS Compiler Pro版加载-存储单元控制摘要
模板

对象/参数/函数

描述
ihc::lsu 底层LSU类模板对象
ihc::style 指定加载-存储单元的类型。
ihc::static_coalescing 明确允许或阻止加载/存储操作与其它加载/存储操作的静态合并。
load 将从存储器来的数据加载到LSU。
store 将从LSU来的数据存储到存储器中。