SDRAM control

来源:互联网 发布:三星网络电视看不了 编辑:程序博客网 时间:2024/05/23 10:43

FPGA学习——SDRAM 控制器设计(一)

2016年7月11日


       SDRAM:同步随机动态存储器(SYnchronous Dyamic Random Access Memory)。 同步是指芯片工作同步一个时钟,发送命令和传输数据;动态区别于静态,需要不断刷新存储阵列保证数据不丢失;随机是指数据可以自由寻址存储,不是必须线性依次存储。

       经过上面的描述,可以知道,SDRAM在一个时钟基准下进行所有操作。而基于其寻址的随意性,也注定了SDRAM的控制相比SRAM难度高一些。

                                           

       要想驱动SDRAM,首先要了解SDRAM,本文和大家一起认识一下SDRAM内存芯片的基本内部构造。

L-Bank

       Logical Bank,是SDRAM芯片内部的一种构造形式,可以理解为内部的存储“区”。基于技术难度,工作效率等方面的考虑,一颗SDRAM芯片内部分成了多个L-Bank。目前SDRAM中L-Bank数量一般为4个。

       因此,确定L-Bank是SDRAM寻址存储的第一步,然后是进行行寻址和列寻址。实际上,SDRAM的随机寻址功能主要基于L-Bank结构,就像一个表格一样,通过行列确定单元格,进行存储、读写操作。

RAW

       正如上一段提到的,逻辑Bank可以类比为一个表格,那么对于一颗确定的SDRAM,每一个L-Bank“表格”的行数和列数就是确定的。芯片一般将行地址和列地址引脚复用。比如Hynix公司的H57V256GTR,地址线一共有13根,其中[12:0]为行地址线,[8:0]为列地址线。

       寻址时,先进行行寻址,即确定工作行,并使其处于有效状态(Active)。实际操作中,行有效和L-Bank的选择可以同时进行,中间不需要特定的时间延迟。有一点要注意的是,行寻址的时候,并不发出是读或者写命令,只是准备好工作行。

Column

       行有效状态时,再确定列,就可以确定存储单元。行列地址虽然共用,但两者可以通过命令信号来区分:仍然以H57V256GTR为例,行有效状态时,13根地址线全部为行地址;列选通命令时,只有低9位是列地址线。列寻址的时候,会同时发出读或者写的命令。


       经过对上面三个的介绍,我们已经了解了一颗SDRAM的内部存储结构,也明白了SDRAM的“随机”来自于何处。


一秒看懂SDRAM Datasheet标题

256Mb Synchronous DRAM based on 4M x 4Bank x16 I/O

256M: 芯片总容量 256Mbit

4M x 4Bank:每个Bank的存储单元数量是4M,即4,194,304总共有4个Bank

16I/O: 芯片位宽是16bit

0 0
原创粉丝点击