数组指针优化

2 数组指针优化Performace Optimization -- Arrays and Pointers

 HLS默认内存模型假定为2端口BRAMs,可以对阵列进行整形和分区,以消除瓶颈。

May not be the most ideal memory for performance Cannot pipeline with a throughput of 1 

对于不能达到吞吐量为一的流水线,可能不是最佳方案。

Even with a dual-portRAM, we cannot perform all reads and writes in one cycle

即使使用双端口RAM,我们也不能在一个周期内执行所有读写操作

数组优化-维度 Array Optimization - Dimensions
数组优化-分区 Array Optimization - Partitioning
分区将数组拆分为在RTL中独立的内存块

Partitioning splits arrays into independent memory banks in RTL

数组可以被分区成任意维度
• Arrays can be partitioned on any dimension

 数组优化-重构 Array Optimization - Reshaping

 

Array entries into wider bitwidth containers

将数组放到更大位宽的容器中

Different arrays into a single physical memory

将不同的数组放入单个物理内存中

Read modify write is not allowed: read the whole word or write the whole word

不允许读-改-写:读取整个单词或写入整个单词

Similar to converting a RAM into a very wide register : great access, high throughput

类似于将RAM转换成非常宽的寄存器:访问量大,吞吐量高

 

resource可以设置单端口

 

 

PARTITION

 

 

 

 

 

 

 

 

 

 

 

 

 

Map

 

 

 

 

 

 

 

 

 

 

 

 

 

 

最后一节课没学

 

posted @ 2020-11-13 21:40  SunCY  阅读(123)  评论(0编辑  收藏  举报