[经验] 可用串口配置的SDRAM控制器,附实现工程、源码和仿真~~

mhanchen   2014-2-15 17:56 楼主
    自己写的SDRAM控制器,用的是黑金的DB2C5开发板,Hynix的SDRAM(HY57V641620ET-H),不过仿真时用了一个Sumsang的SDRAM(mt48lc1m16a1)仿真模型,代码编辑器用的gvim。配置模块用了标准的UART协议进行SDRAM数据、地址和命令的控制,用这个的朋友可以从串口助手向FPGA写入你想要的地址和命令,然后送到SDRAM。因为开发板上也只能用串口和PC连接,串口模块也是很久以前写的了,懒得改所以导致配置过程稍麻烦,用的时候需要耐心一点。仿真的话直接运行/sim/目录下的批处理文件就行了,当然你要先确认你的仿真器环境变量设置正确而且file list中的库文件目录和你的安装目录吻合。
    顺便有一个问题需要请教一下:我做实验是设置的模式是CL=3,而且仿真时没有问题,时序一切正常,但是用Signal TAP抓信号的时候发现SDRAM的tAC参数远大于DataSheet上的标准,这就导致我在读SDRAM时必须晚一个是时钟从数据线DQ上采数。也就是说我设置CL=3以后,三星的仿真模型是正常的,但是板上的Hynix片子出数要晚一个周期,Hynix的datasheet比较坑,我到现在也没找到原因,不知道哪位用过这两款芯片的能给解释一下,我觉得不应该是它们的参数意义不同。
sdram_ctrl.part01.rar (2.86 MB)
(下载次数: 22, 2014-2-15 17:53 上传)


sdram_ctrl.part03.rar (168.66 KB)
(下载次数: 12, 2014-2-15 17:53 上传)


sdram_ctrl.part02.rar (2.86 MB)
(下载次数: 31, 2014-2-15 17:55 上传)


        

回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复