资讯详情

SDRAM 控制器(一)

1、基础知识

SDRAM(synchronous Dynamic Random ),同步动态随机存储器是指内存工作需要同步时钟,其标准是发送内存命令和接收数据。动态是指需要不断刷新以确保数据不丢失(电容器存储),随机是指存储位置可以随机指定和自由存储。

  • 同步(Synchronous )指内存工作需要同步时钟,内部命令的发送和数据的传输都是基于它的
  • 动态(Dynamic )指存储阵列 需要不断刷新,以确保数据不丢失
  • 随机(Random )指数据不是线性依次存储,而是自由指定地址 数据读写

SDRAM的框架:SDRAM是存储单元(Memory Cell)使用矩阵排列,矩阵中有列地址(Row Address)及行地址(Column Address),为了读取或写入,SDRAM此时,控制器将首先传输列的地址RAS设置为信号Active状态,在存取行地址之前需要几个执行周期,这段时间是RAS至CAS和CAS信号需要几个时钟才能开始稳定地写数据。这段时间是CAS延迟时间(CL)。

表中的每个单元格可以与存储阵列中的单个存储单元进行类比。如果我们想实现存储阵列中某个存储单元的数据读写操作,我们地址和列地址(先行后列)准确定位存储单元,然后进行数据读写操作,这就是所谓的

对于 SDRAM,将类比于单元格的存储空间称为存储单元,N(行列数乘积)存储单元构成存储阵列,称为逻辑Bank(Logical Bank,Bank)。SDRAM 内部分为几个 Bank。若干 Bank 分割的原因是基于技术和成本;第二,因为 SDRAM 工作原理有限,单一 Bank 可能会造成非常严重的寻址冲突。

这样,在对 SDRAM 读写数据时,首先要确定 Bank 地址,然后依次确定行地址和列地址,然后进行数据读写操作,一次只能一 Bank 操作存储单元。

型号-4Meg*16*4banks

4banks:bank个数

Meg:单个bank存储单元中包含的个数

x4、x8、x16 分别表示位宽 4bit、8bit、16bit;#符号表示信号低电平有效;短 划线 - 表示 x8 和 x4 引脚功能与 x16 引脚功能相同。

CLK:SDRAM工作时钟,所有输入信号都在CLK测试上升沿,也就是说,我们给它SDRAM必须给出任何命令CLK保持稳定的上升边缘,避免SDRAM当我们得到我们给出的命令时,我们会犯错误

CKE:时钟使信号屏蔽系统时钟,冻结当前操作,高电平有效

CS#:低电平有效,片选信号,使所有输入输出端口

RAS#:行选通信号,行地址

CAS#:列出通信号,列出地址

WE#:低电平有效,能写作

DQM:数据掩码信号,高电平,上升沿,数据总线高阻态

BA[1:0]:Bank地址线

A12——A0存储地址当我们选择不同的命令和不同的含义时SDRAM某个Bank的Row地址需要12条地址线(A0~A11);当选择Col地址只用A0~A8这9根线;A该信号可用于控制Auto-precharge

DQ [15:0]:双向数据总线:

DQ0——DQ7 宽数据输入输出端口

SDRAM 它包含一个逻辑控制单元,包括模式寄存器和命令解 码器。外部通过 CS_N、RAC_N、CAS_N、WE_N 这四个信号构成命令信号和地址总线向逻辑控制单元输入命令。命令通过命令解码器解码后,将控制参数保存到模式寄存器中,然后控制逻辑操作。

地址信息通过地址总线输入,地址信息在逻辑控制单元的逻辑控制中起辅助作用。此外,重复使用的地址总线和 Bank 控制逻辑、行地址复用器、列地址计数定 内部设备,如设备、列地址解码器,共同作用,精确选定存储阵列中与行列地址相对应的存储单元,进而进行数据存取操作。

禁止命令 (Command Inhibit) ,其他数据手册也称为取消设备选择命令 (Device Deselect)。不论 SDRAM 该命令可以在任何状态下执行;执行此命令后,SDRAM 芯片不被选中,新命令不能写入,但已执行的命令不受影响。

无操作命令(No-operation),也叫空命令,NOP命令。不论 SDRAM 这个命令可以写在什么状态? 入,该命令给被选中的 SDRAM 芯片传输空操作信息的目的是防止 SDRAM 其他命令在空闲或等待时写入。

寄存器命令的配置模式(Load Mode Register),也被称为 Mode Reigister Set。这个命令只有一切 Bank 只有在空闲时才能写入,否则配置会出错,执行此命令后,SDRAM 必须等待相应的响应时间 tRSC(Register Set Cycle),只有在模式寄存器配置周期后,才能写入新的命令。

写下这个命令对 SDRAM 配置模式寄存器时,需要地址总线 A0-A11 设置辅助寄存器的模式,A0-A11 不同对应的寄存器配置不同的模式,未使用的地址总线设置为低电平。

突发(Burst)是指相邻存储单元在同一行中连续传输数据的方式。连续传输涉及存储单元(列)的数量为突然长度(Burst Length,简称 BL)。地址总线低三位 A0-A2 是突发长度的控制位,SDRAM 芯片的突发长度可设置为 1、2、4、8 和整页,单位为字节,整页表示一次突发传输一整行的数据量。

M0 M1 M2:配置突发长度(五个突发长度)

M3:突发类型(0:顺序突发类型) 1:突发隔行) 一般为0

M4 M5 M六、列出潜伏期

M7 M8:运行模式 00

M9:当 A9 低电平时,SDRAM 的读/写操 均采用突发方式,发长度由突发长度寄存器(A0-A2)设定;当 A9 高电平时, SDRAM 的读操作依然采用突发方式,突发长度由突发长度寄存器(A0-A2)设定,但 SDRAM 的写操作不在使用突发方式,每一个写命令只能写入一个数据。

        M10 M11 M12:0

        预充电的作用就是关闭指定的Bank 或者全部Bank 中激活的行,预充电命令执行后,必须等待对应的等待时间 tRP(tRP(Precharge command Period),预充电命令周期),相对应的 Bank 将可以被重新操作。

        预充电命令(Precharge)命令包括两类:全部预充电(Precharge All)和指定Bank 预充电 (Precharge Bank),当 A10 为高电平发送预充电命令时,执行全部预充电命令,对所有的 Bank 进行预充电;当 A10 为高电平发送预充电命令时,只对由 BA[1:0]选定的 Bank 进行预充电。

        SDRAM 只有通过刷新操作才能保证数据的可靠性,SDRAM 的刷新操作是周期性的,在两次刷新的间隔可以进行数据的相关操作。我们在看SDRAM芯片参数时,经常会看到4096 Refresh Cycles/64ms或8192 Refresh Cycles/64ms的标识,这里的4096与8192就代表 这个芯片中每个Bank的行数。

        刷新命令一次仅对一行有效,也就是说在64ms内这两种规格的 芯片分别需要完成4096次和8192次刷新操作。这4096操作可以平均15.625μs刷新一次,也可以一次全部刷新完,却决于你的数据读写时序。         如果突发长度BL=4,那么也就是说一次就传送4笔数据。 但是,如果其中的第二笔数据是不需要的,怎么办?还要传输吗?为了屏蔽不需要的数据,人们采用了数据掩码(Data I/O Mask,简称DQM)技术。通过DQM,内存可以控制I/O端口取消哪些输出或输入的数据。为了精确屏蔽一个数据总线位宽中的每个字节,每个DQM信号线对应一个字节(8bit)。

2、模块设计

 

 

标签: sd电容器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台