特权同学

经典三星SDR SDRAM读写verilog代码分享

0
阅读(6286)

最近有点忙,很久没有写东西了,今天把自己的 FPGA开发板SF-EP1C的SDRAM部分代码上传和大家分享,以后还会陆续把逻辑分析仪设计的代码以及SD卡读写的代码上传共享。过阵子特权同学还 会与EDN合作接着做一次FPGA板子的助学活动,希望大家支持。

 

 该工程对三星SDR SDRAM(K4S641632)进行读写,工程内部分为PLL以及复位处理模块、 写SDRAM逻辑模块、读SDRAM逻辑模块、SDRAM读写封装模块、读写缓存FIFO模块、串口发生模 块等,RTL视图如下:

 


 

首先由写SDRAM逻辑模块在上电 延时后从SDRAM的0地址开始写入递增数据, 随后通过内部FIFO依次送入SDRAM;SDRAM的所有地址写完数据后,启动SDRAM读逻辑,从0地址开始读出SDRAM内的数据放入缓 存FIFO中,然后串口模块把该FIFO中的数据依次上传 到PC机(串口线接到PC机,使用串口调试助手 观察即可)。整个过程主要就是测试SDRAM读写,内部逻辑大都使用25MHz的时钟,SDRAM读写使用了100MHz,通过PLL进行设置。

该工程基于altera的Quartus II 8.1i进行设计,使用更高版本的软件均可。工程内包括了时序分析、测试用例脚本。

 代码里除了PLL配置、FIFO配置使用了IP core,SDRAM控制等部分全部使用基本verilog语法编写, 适合于altera的cyclone系列EP1C3T144C8器件。

功能仿真、时序分析、板级调试均验证无误,代码注释详细。       

 

 

下载时按顺序命名,然后解压即可。

 

1.rar1816001862780.rar

2.rar1816588274945.rar

3.rar1817804305600.rar

4.rar1818236112103.rar

5.rar1819081483172.rar