FPGA ------ SDRAM控制器(一)

一、SDRAM基础理论

1.SDRAM简介

SDRAM 的全称即同步动态随机存储器( Synchronous Dynamic Random Access Memory ,
这里的同步是指其时钟频率与对应控制器( CPU/FPGA )的系统时钟频率相同,并且内部命令
的发送与数据传输都是以该时钟为基准;动态是指存储阵列需要不断的刷新来保证数据不丢
失;随机指数据的读取和写入可以随机指定地址,而不是必须按照严格的线性次序变化。
sdram存储容量 = 数据位宽 * 存储单元数量(Bank数 * 行地址 * 列地址)

 eg: 128Mb = 2M * 4Banks *16 I/O

 2.SDRAM操作指令

SDRAM 的操作,是通过对应命令来实现的,这些命令由 CS_N,RAS_N,CAS_N,WE_N 这 四个控制信号组合成不同的状态以表示。同时,ADDR 总线和 DQM 总线作为辅助信号,提供与命令相对应的参数(设置模式寄存)或地址(读写命令)。下表为 SDRAM 工作中使用到的所有命令与对应的控制信号线的状态。

具体的命令详解和设置使用将在具体的时序操作中呈现。

二、SDRAM初始化  

在对SDRAM进行正常的操作之前,SDRAM必须被初始化。SDRAM的上电和初始化需要按照预先定义好的方式进行,非这些指定的操作之外的命令可能导致不可预知的操作。

当SDRAM的VDD和VDDQ上电,并且时钟稳定后,SDRAM首先需要延时等待100us,(程序中设置为200us提高可靠性)在这个等待期间,对于SDRAM只能赋给禁止命令(INHIBIT)或者空操作(NOP)命令。100us(程序中为200us)的延时之后,需要对SDRAM首先执行一次预充电命令,所有的 BANK 都必须被预充电,以使器件所有的 BANK 都处于空闲状态。进入空闲状态后,至少需要执行两个周期的自动刷新命令,自动刷新命令完成之后,就可以对

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值