16ysa 发表于 2011-9-1 21:54:13

关于sdram的乒乓操作的问题请教

看了几篇利用sdram乒乓操作做为数据的缓冲,发现都是说用一片sdram的不同bank来实现乒乓操作。

可是一片sdram只有一组数据线,读写操作是不能同时执行的。

难道是在这个bank中写一个数据,然后读另一个bank的一个数据,如此反复?

请大家指教

skycomm 发表于 2011-9-2 15:42:45

因为sdram的时钟可以比较高(即带宽比较宽),低时钟是可以用乒乓操作 读写是要分开的

16ysa 发表于 2011-9-2 20:51:53

回复【1楼】skycomm
-----------------------------------------------------------------------

我是不太明白怎么个时序关系,是写完一帧的图像,再读前一帧的图像?
还是在写这真图像的同时,去读前一帧的图像? 如果是这样的话是不是就需要写一个数据马上切换状态,去读前一帧的一个数据,读完再回来写?

skycomm 发表于 2011-9-3 11:24:22

应该一边写一边读,不一定等一帧图像刷新完成, 因为数据更新比较快 (>30帧)人眼是不会分辨出的

NJ8888 发表于 2011-9-3 12:08:40

对于突发访问,乒乓操作意义不大,随机访问,省的是若干时钟的TXXX(我忘了,懒得查),全页突发,这个时间占得比例不大,提高性能有限

wzhansen 发表于 2011-9-3 12:18:49

乒乓操作主要是保证数据流,用SDRAM是可以实现的,主要是利用读写FIFO,你可以参考一下SDRAM的4端口设计,不过需要修改一下.

ffbiao 发表于 2012-8-14 16:27:04

wzhansen 发表于 2011-9-3 12:18 static/image/common/back.gif
乒乓操作主要是保证数据流,用SDRAM是可以实现的,主要是利用读写FIFO,你可以参考一下SDRAM的4端口设计,不过 ...

楼主能否给出代码

mysunmax 发表于 2012-8-14 16:34:54

我感觉用两片sdram 在写A的时候去读B当写完A的时候再去写B此时 读A   
用一片的话,在写的时候就不能读了。

ffbiao 发表于 2012-8-15 10:26:51

我个人认为用一片sdram应该实现不了实时的乒乓操作???一般人用法:用两个小fifo做读写前端,用作缓冲,但是相对的速度没有两片的实现的乒乓操作实时和高速,这个设计我也是刚刚开始摸索中,请多多指教

cmdrainsy 发表于 2012-9-4 20:14:20

看到坛子里好多高手 用FPGA+1片SDRAM 驱动显示器 不知道怎么在读取数据刷新屏幕时更新显示数据

NJ8888 发表于 2012-9-4 21:21:43

cmdrainsy 发表于 2012-9-4 20:14 static/image/common/back.gif
看到坛子里好多高手 用FPGA+1片SDRAM 驱动显示器 不知道怎么在读取数据刷新屏幕时更新显示数据 ...

整页读FIFO,保证扫描需求带宽,剩下的用来写(整页突发停止方式)

bad_fpga 发表于 2012-9-4 22:26:03

NJ8888 发表于 2012-9-4 21:21 static/image/common/back.gif
整页读FIFO,保证扫描需求带宽,剩下的用来写(整页突发停止方式)

NJ8888是FPGA高手

huatong 发表于 2012-9-5 23:34:12

NJ8888 发表于 2012-9-4 21:21 static/image/common/back.gif
整页读FIFO,保证扫描需求带宽,剩下的用来写(整页突发停止方式)

高手啊,我正想做,不过我的方法是突发读,写不使用突发方式,用FIFO一行一行的读,连SDRAM的刷新也不要了,反正我只用一页做显存.

goodthinger 发表于 2012-9-6 14:52:46

NJ8888 发表于 2012-9-4 21:21 static/image/common/back.gif
整页读FIFO,保证扫描需求带宽,剩下的用来写(整页突发停止方式)

我现在的项目就是这样做的,不过之前用的是800*600的屏还好,后面换成1024*768的屏了,速度就跟不上了,扫描需求带宽太大,扫描频率为66.6M,正在改进呢!

NJ8888 发表于 2012-9-6 20:18:02

goodthinger 发表于 2012-9-6 14:52 static/image/common/back.gif
我现在的项目就是这样做的,不过之前用的是800*600的屏还好,后面换成1024*768的屏了,速度就跟不上了, ...

这种状况,用两个完全独立SDRAM干或是用DDR2等

liurangzhou 发表于 2012-9-6 20:31:05

wzhansen 发表于 2011-9-3 12:18 static/image/common/back.gif
乒乓操作主要是保证数据流,用SDRAM是可以实现的,主要是利用读写FIFO,你可以参考一下SDRAM的4端口设计,不过 ...

全页操作会使带宽最大

liurangzhou 发表于 2012-9-6 20:33:28

huatong 发表于 2012-9-5 23:34 static/image/common/back.gif
高手啊,我正想做,不过我的方法是突发读,写不使用突发方式,用FIFO一行一行的读,连SDRAM的刷新也不要了,反 ...

我现在做的是三个端口,8位宽的SDRAM刷800X600,16位像素。一个用于刷屏的端口,256的突发长度,另两个端口单像素操作读写

goodthinger 发表于 2012-9-7 11:45:06

NJ8888 发表于 2012-9-6 20:18 static/image/common/back.gif
这种状况,用两个完全独立SDRAM干或是用DDR2等

用两个独立的SDRAM不行呢,因为写SDRAM不是连续写的,它更新显示的话只更新一部分,不会更新整幅图像,还有就是单点更新,效率太低了

只能用DDR了,可是不让改硬件啊,让我优化,郁闷呢!

goodthinger 发表于 2012-9-7 11:47:28

liurangzhou 发表于 2012-9-6 20:33 static/image/common/back.gif
我现在做的是三个端口,8位宽的SDRAM刷800X600,16位像素。一个用于刷屏的端口,256的突发长度,另两个端 ...

我做的和你的差不多,不过我的SDRAM是16位的,你的8位宽的带宽能够用啊?
单像素写很浪费时间的哦,你是怎么做的呢?请教一下!

liurangzhou 发表于 2012-9-7 18:48:48

goodthinger 发表于 2012-9-7 11:47 static/image/common/back.gif
我做的和你的差不多,不过我的SDRAM是16位的,你的8位宽的带宽能够用啊?
单像素写很浪费时间的哦,你是 ...

用8位为为了节省引脚,增加了不少麻烦!如果不采用单像素读写的话,对某一像素点进行操作比较困难,我开始有过尝试

goodthinger 发表于 2012-9-10 09:01:05

liurangzhou 发表于 2012-9-7 18:48 static/image/common/back.gif
用8位为为了节省引脚,增加了不少麻烦!如果不采用单像素读写的话,对某一像素点进行操作比较困难,我开 ...

单像素读写是什么意思呢?不是对显示屏的某点数据进行更新么?请指点一下,谢谢!

NJ8888 发表于 2012-9-10 20:54:12

goodthinger 发表于 2012-9-10 09:01 static/image/common/back.gif
单像素读写是什么意思呢?不是对显示屏的某点数据进行更新么?请指点一下,谢谢! ...

比如透明,半透明要读回像素在回写,也许你可以用显存中一个映射来操作。

geff 发表于 2012-9-11 15:18:38

NJ8888 发表于 2012-9-4 21:21 static/image/common/back.gif
整页读FIFO,保证扫描需求带宽,剩下的用来写(整页突发停止方式)

用FPGA整页读取,那样FIFO的大小一般都很大,我用的SDRAM的column地址线是A0~A7(16bits),那就意味要生成256*2Byte的资源去实现这个FIFO.
我不清楚在FPGA里的资源情况,但是要换成CPLD就相当浪费资源了。
所以是不是用更小的突发长度读数据更合算呢?

longwu03272009 发表于 2012-10-10 18:49:31

mark,正在学习这部分

huangwei858 发表于 2013-3-5 23:29:28

goodthinger 发表于 2012-9-6 14:52 static/image/common/back.gif
我现在的项目就是这样做的,不过之前用的是800*600的屏还好,后面换成1024*768的屏了,速度就跟不上了, ...

大师,你好啊,看到您的帖子,我心宽了,我现在正在双SDRAM,不知道怎么把两个SDRAM连续控制起来,而且数据不错,数据也是图片,求大师请教啊,393310689。。

nnimo 发表于 2013-3-7 17:06:06

DDR2 的IP core如何解决啊?
页: [1]
查看完整版本: 关于sdram的乒乓操作的问题请教