借助于DDR3实现大型矩阵90°的转置

借助于DDR3实现大型矩阵90°的转置,第1张

在实际应用中,可能会碰到大型矩阵转置的需求,尤其是对于图像应用,转置就是实现图像的90°旋转。

由于FPGA片内的RAM资源一般不足以缓存这样大规模的矩阵数据,所以一般都要借助于外部的存储器,一般是DDR3。我们需要按照行的方向组织数据写入DDR3,然后按照列的方向读出数据。那么如何高效的利用DDR3的带宽,是实现图像矩阵90°翻转的核心!

如下是一个大小为1920x1080的矩阵,存取DDR3的示意图。写入和读取都按照4x4的块来进行:

借助于DDR3实现大型矩阵90°的转置,借助于DDR3实现大型矩阵90°的转置,第2张

 

写入时,按照如下的数据组织方式,至少需要4行缓存:

借助于DDR3实现大型矩阵90°的转置,借助于DDR3实现大型矩阵90°的转置,第3张

 

读出时,按照如下的数据组织方式,也至少需要4行缓存:

借助于DDR3实现大型矩阵90°的转置,借助于DDR3实现大型矩阵90°的转置,第4张

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/dianzi/2539263.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-05
下一篇 2022-08-05

发表评论

登录后才能评论

评论列表(0条)

保存