如何提高DDR3的效率

2019-07-15 23:35发布

现在因为项目需要,要用DDR3来实现一个4入4出的vedio frame buffer。因为片子使用的是lattice的,参考设计什么的非常少。需要自己调用DDR3控制器来实现这个vedio frame buffer。可是购买的Lattice的DDR3控制器个人感觉比较奇葩。当配置DDR3控制器的时候,这里两片DDR3构成32位位宽。选择burst length为8的时候,控制器必须进行32个comand burst(也就是一次操作就要操作32*8*32 bit的数据)才能达到最高的带宽利用率,约为94%左右。当选择burst length为1的时候,不管怎样,即使是进行bank交替操作,ddr3的带宽利用率也只有20%-30%左右。
     这里就觉得比较纠结。burst length太大,frame buffer的输出端当要对输入的视频帧进行截取一部分的时候会变相降低DDR3带宽利用率,这样的话总的带宽就不够。burst length太小,整体的带宽利用率就更悲催了。请问各位前辈有没有什么好的方法能够在这种应用用最大化的利用DDR3的带宽?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
jiuri1989
1楼-- · 2019-07-16 03:35
1.优化数据存储结构,就是把有可能同时用到的数据到一起;
2.看设计是否适合加个Cache
偶是糕富帅
2楼-- · 2019-07-16 08:16
自己写一个控制器,你这个应用里效率能到90%~95%

一周热门 更多>