EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 jacky401 于 2020-8-30 20:59 编辑 " i0 Q* c3 |% y' [4 P% J/ l4 Q
6 o2 g. I7 S, g* Q, X' l; ~目录 1 SDRAM简介 2 SDRAM工作原理 2.1 芯片初始化
' C1 ]% [1 Y' D" S. F3 [ 2.2 行激活
8 \; `% r* g% ~( F 2.3 列读写8 m2 d1 F& k- a. e2 L* [. t
2.4 数据输出(读); K8 T. p, g- A3 d
2.5 数据输入(写). X; A) }1 v( E
2.6 突发长度3 z) p `. I$ t" P) d( m
2.7 预充电5 |: Q' G: G. _
2.8 刷新7 e4 n! f0 H3 |. p/ x
2.9 数据掩码, E( }! l- n+ n- n
3 硬件设计0 f/ q( |) I) E( r
4 参考资料/ ]# A* I, V$ U* I X) I6 ?1 c
1 @* d# Y# X; G8 _ e
' y* G' i" L) D% g2 D ^( _
8 g4 M1 A7 F- v6 i; j5 c% G4 _
3 S" b' ^) ^2 b" L" u$ G% xSDRAM 工作原理详解
7 o2 @' e6 b e0 i! l1 `9 m& r7 H0 D( v; p5 \" X+ m" D+ [/ b6 E
SDRAM是一种可以指定任意地址进行读写的存储器,它具有存储容量大,读写速度快的特点,同时价格也相对低廉。因此,SDRAM常作为缓存,应用于数据存储量大,以及速度要求较高的场合,如复杂嵌入式设备的存储器等。 : C& _! B# ?3 V& m# m
1 SDRAM简介 SDRAM(Synchronous Dynamic Random Access Memory),同步动态随机存储器。同步是指内存工作需要同步时钟,内部的命令的发送与数据的传输都以它为基准;动态是指存储阵列需要不断的刷新来保证数据不丢失;随机是指数据不是线性依次存储,而是自由指定地址进行数据读写。 SDRAM具有空间存储量大、读写速度快、价格相对便宜等优点。然而由于SDRAM内部利用电容来存储数据,为保证数据不丢失,需要持续对各存储电容进行刷新操作;同时在读写过程中需要考虑行列管理、各种操作延时等,由此导致了其控制逻辑复杂的特点。 SDRAM的内部是一个存储阵列,你可以把它想象成一张表格。我们在向这个表格中写入数据的时候,需要先指定一个行(Row),再指定一个列(Column),就可以准确地找到所需要的“单元格”,这就是SDRAM寻址的基本原理。如图所示:
: d' [/ J* j Z/ V
5 z/ g/ B9 h; T 图1 SDRAM寻址原理
8 v1 ^" l" I7 Q0 D! }3 f& v9 w 图中的“单元格”就是SDRAM存储芯片中的存储单元,而这个“表格”(存储阵列)我们称之为L-Bank。通常SDRAM的存储空间被划分为4个L-Bank,在寻址时需要先指定其中一个L-Bank,然后在这个选定的L-Bank中选择相应的行与列进行寻址(寻址就是指定存储单元地址的过程)。 对SDRAM的读写是针对存储单元进行的,对SDRAM来说一个存储单元的容量等于数据总线的位宽,单位是bit。那么SDRAM芯片的总存储容量我们就可以通过下面的公式计算出来: SDRAM总存储容量 = L-Bank的数量×行数×列数×存储单元的容量
5 V0 W9 m* ~* m* v4 R. [ SDRAM存储数据是利用了电容的充放电特性以及能够保持电荷的能力。一个大小为1bit的存储单元的结构如下图所示,它主要由行列选通三极管,存储电容,刷新放大器组成。行地址与列地址选通使得存储电容与数据线导通,从而可进行放电(读取)与充电(写入)操作。
8 d8 s3 ] J: j7 F& F
, ~2 m: @! [2 X8 { 图2 SDRAM存储单元结构示意图 5 F/ Y0 A: b; ~! ~5 L# r
- R5 U+ O3 R6 i
下图为SDRAM的功能框图,SDRAM内部有一个逻辑控制单元,并且有一个模式寄存器为其提供控制参数。SDRAM接收外部输入的控制命令,并在逻辑控制单元的控制下进行寻址、读写、刷新、预充电等操作。
" v& p, z7 i: t! v. g) C. s
, P+ B* {. U2 T) @+ M( ]4 z2 } 图3 SDRAM功能框图 . k* T# Z5 {9 n9 N; Z3 b
2 SDRAM工作原理( G( K) v1 f h1 w! d2 h2 s$ }# w
|