清空或者覆盖sdram数据
时间:10-02
整理:3721RD
点击:
现在我有两种图像模式要进行切换,有一个问题是:在切换到另外一种模式的时候必须要清空前一种模式保存在SDRAM中的数据,或者把前一种模式数据进行覆盖,清空我没有想到什么方法(有好方法请告诉我,谢谢),但覆盖我设计了一种方案,如下:
在切换到另外一种模式,在读sdram数据的时候,我让这种模式的数据先填满sdram再读数据,那么读到的数据就是这种模式的数据(千兆网模块读的),但现在有一个问题是:按理论值,以40M的时钟进行每8bit写数据到sdram,假设sdram是4096column*512row*2bank*32bit,那么覆盖原来数据只要的时间应该是4096column*512row*2bank*32bit/8bit/40M =0.42s,那为什么我在读模块用很长的时间延时(譬如4.2s)后再读的话,为什么还是在这个模块中保留有上个模块的数据呢?如果我延时42s读的话(时间很长了)就没有以前的数据了,按照理论时间不应该要这么长时间的呀,为什么呢?是不是在fpga设计中有延时很大的模块还是什么的,请大家指点,很急,做了好几天了,一点进展都没,郁闷死了!
在切换到另外一种模式,在读sdram数据的时候,我让这种模式的数据先填满sdram再读数据,那么读到的数据就是这种模式的数据(千兆网模块读的),但现在有一个问题是:按理论值,以40M的时钟进行每8bit写数据到sdram,假设sdram是4096column*512row*2bank*32bit,那么覆盖原来数据只要的时间应该是4096column*512row*2bank*32bit/8bit/40M =0.42s,那为什么我在读模块用很长的时间延时(譬如4.2s)后再读的话,为什么还是在这个模块中保留有上个模块的数据呢?如果我延时42s读的话(时间很长了)就没有以前的数据了,按照理论时间不应该要这么长时间的呀,为什么呢?是不是在fpga设计中有延时很大的模块还是什么的,请大家指点,很急,做了好几天了,一点进展都没,郁闷死了!
我也是刚接触SDRAM,不知我们是不是同行,我是搞LED显示屏的。
你的问题提的不够清楚,如果要想填充SDRAM的话和千兆网应该没有关系,只要把0x00000000写入SDRAM就可以了。如果SDRAM的时钟为100MHz,只要几十毫秒就可以了。至于你延时42秒,如果不刷新SDRAM会不会数据丢失呢?
兄弟,你还没看懂我的意思、、、
很像是新数据没有成功写进SDRAM
你用你的仿真平台去看下你的数据是否写进去了。
