sdram之乒乓操作

在实时显示时,为了保证画面显示的完整性需要对SDRAM进行乒乓操作。

SDRAM 中有 4 个bank ,地址分别为00 01 10 11,后面将用 0 1 2 3来描述

bank 0和1 作为第一个乒乓块,简称 P_1

bank 2和3 作为第二个乒乓块,简称 P_2

乒乓操作的步骤

1、将第 1 帧数据存入 P_2 中, 当 P_2 中完整的存储了第 1 帧图像数据后,然后进入乒乓操作。

2、将第 2 帧数据存入 P_1 , 同时从 P_2 中读取存储的第 1 帧数据。

此时共有3种状态

第 1 帧数据已经读取完毕,但是第 2 帧数据还没有存储完成 

第 1 帧数据没有读取完成,但是第 2 帧数据已经存储完成

第 1 帧数据读取完成、第 2 帧数据存储完成

该怎么办呢?如何处理?总结如下

对于存储:只要一帧图像数据存储完成,则立刻切换到另一个乒乓块继续存储,而与是否读取完成无关。(因此如果存储的速度和读取的速度不相同,就会出现存储和读取位于同一个乒乓块,或者位于不同乒乓块)

对于读取:读取一帧数据完成后,只要存储数据和读取数据同时处于一个乒乓块,则切换到另一个乒乓块继续进行读取,否则不切换,继续在原乒乓块进行读取。


 

SDRAM每次只能操作一个命令,存储和读取需要交替进行,否则会给 SDRAM 外部的缓存fifo或者ram造成很大的压力,因此进行设计的时候需要对读写进行优先级的判断

读请求和写请求不是同时的,则是什么请求就执行什么请求

如果读请求和写请求是同时的,则就要看上一次的状态,上一次是读,则执行写,上一次是写则执行读。

 

转载于:https://www.cnblogs.com/aslmer/p/6097882.html

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值