动态RAM(DRAM)
因为该存储器必须定时刷新,才能维持其中的信息不变;
DRAM的存储元
由MOS晶体管和电容组成的记忆电路;
电容上的电量来表现存储的信息;
充电—1,放电—0。
结构形式
四管存储元
单管存储元
读操作
字线选中存储元;
若存储元中保存数据“0”,即Cs上无电荷;
则位线上无电流,读出0;
若存储元中保存数据“1”,即Cs上无电荷;
则位线上有电流,读出1;
写操作,是通过位线上的电流对Cs的充电(写1)、放电(写0)的过程;
外部地址引脚比SRAM减少一半;
存储芯片集成度高,体积小;
送地址信息时,分行地址和列地址分别传送;
内部结构:比SRAM复杂
刷新电路
用于存储元上的信息刷新,以行为单位;
刷新计数器的位数与行译码器的输出位数相同;
行、列地址锁存器
用于保存完整的地址信息;
使用行选通信号 和列选通信号 锁存地址;
DRAM控制电路的构成
地址多路开关
刷新时需要提供刷新地址,非刷新时需提供读写地址;
刷新定时器
间隔固定的时间提供一次刷新请求;
刷新地址计数器
刷新按行进行,用于提供对所要刷新的行进行计数;
仲裁电路
对同时产生的来自CPU的访问存储器的请求和来自刷新定时器的刷新请求的优先权进行裁定;
定时发生器
提供行地址选通/RAS、列地址选通/CAS和写信号/WE。
DRAM的读写周期与SRAM相似,差别在于:
行、列地址分开传送;
在同一个读写周期内地址会发生变化;
列选通信号 要滞后于行选通信号 一段时间;
DRAM读周期和写周期步骤
行选通信号有效,锁存行地址
写入数据有效
列选通信号有效,锁存列地址
读写控制信号有效
读出数据有效
刷新的原因
DRAM的基本存储元——电容,会随着时间和温度而减少;
必须定期地对所有存储元刷新,以保持原来的信息。
刷新(再生)
在固定时间内对所有存储单元,通过“读出(不输出)—写入”的方式恢复信息的操作过程;
刷新方式
以存储矩阵的行为单位刷新;
刷新周期
从上一次对整个M刷新结束到下一次对整个M全部刷新一遍为止的时间。
DRAM的刷新方式
集中式刷新
在一个刷新周期内,利用一段固定时间,依次对存储矩阵的所有行逐一刷新,在此期间停止对存储器的读/写操作;
存在死区时间,会影响CPU的访存操作;
分散式刷新
也称异步式刷新;
在一个刷新周期内,分散地刷新存储器的所有行;
既不会产生明显的读写停顿,也不会延长系统的存取周期;
单个存储芯片的容量有限,实际存储器由多个芯片扩展而成;
存储器(存储芯片)与CPU的连接
数据、地址、控制三总线连接;
关注存储芯片与CPU的外部引脚
存储器容量扩充方式
位扩展、字扩展、字位扩展
存储芯片的外部引脚
数据总线:位数与存储单元字长相同,用于传送数据信息;
地址总线:位数与存储单元个数为2n关系,用于选择存储单元;
读写信号/WE:决定当前对芯片的访问类型;
片选信号/CS:决定当前芯片是否正在被访问;
CPU与存储器连接的外部引脚
数据总线:位数与机器字长相同,用于传送数据信息;
地址总线:位数与系统中可访问单元个数为2n的关系;
读写信号/WE:决定当前CPU的访问类型;
访存允许信号/MREQ:决定是否允许CPU访问存储器;
存储单元数不变,每个单元的位数(字长)增加;
例如:由1K×4的存储芯片构成1K×8的存储器
存储芯片与CPU的引脚连接方法:
地址线:各芯片的地址线直接与CPU地址线连接;
数据线:各芯片的数据线分别与CPU数据线的不同位连接;
片选及读写线:各芯片的片选及读写信号直接与CPU的访存及读写信号连接;
CPU对该存储器的访问是对各位扩展芯片相同地址单元的同时访问。
字扩展:每个单元位数不变,总的单元个数增加。
例如:用1K×8的存储芯片构成2K×8的存储器
存储芯片与CPU的引脚连接方法:
地址线:各芯片的地址线与CPU的低位地址线直接连接;
数据线:各芯片的数据线直接与CPU数据线连接;
读写线:各芯片的读写信号直接与CPU的读写信号连接;
片选信号:各芯片的片选信号由CPU的高位地址和访存信号产生;
CPU对该存储器的访问是对某一字扩展芯片的一个单元访问。
16K×8的存储芯片:地址线14根,数据线8根,/CS,/WE
CPU的引脚:地址线16根,数据线8根,/MERQ,/WE
CPU的最高2位地址和/MREQ信号产生4个芯片的片选信号;
4个存储芯片构成存储器的地址分配:
第1片 00 00 0000 0000 0000
00 11 1111 1111 1111 即 0000H~3FFFH
第2片 01 00 0000 0000 0000
01 11 1111 1111 1111 即 4000H~7FFFH
第3片 10 00 0000 0000 0000
10 11 1111 1111 1111 即 8000H~BFFFH
第4片 11 00 0000 0000 0000
11 11 1111 1111 1111 即 C000H~FFFFH
字位扩展:每个单元位数和总的单元个数都增加。
例如:用1K×4的存储芯片构成2K×8的存储器
扩展方法
先进行位扩展,形成满足位要求的存储芯片组;
再使用存储芯片组进行字扩展。
要求:能够计算出字位扩展所需的存储芯片的数目。
例如:用L×K的芯片构成M×N的存储系统;
所需芯片总数为M/L×N/K 片。
【练习】 用2M×8的SRAM芯片构成一个16M×8的存储器,请回答以下问题:
共需要几块芯片,进行如何扩展?
8片2M×8的SRAM芯片进行字扩展;
各芯片的数据线怎么连?
各芯片的数据线均直接与8位系统数据总线连接;
各芯片的地址线怎么连?
各芯片的地址线均直接与最低21位的系统地址线连接;
各芯片的读写、片选信号线怎么连?
各芯片的读写信号直接与系统的读写控制线连接;
各芯片的片选信号由剩余的高3位系统地址线和访存允许信号/MREQ译码产生;
保证CPU发出不同地址,访问不同芯片;
做题思路:
审题确定所需扩展的类型,选择合适的存储芯片;
原则:尽量作简单的扩展(位扩展—字扩展—字位扩展)
分析存储芯片和CPU的引脚特性(地址范围、地址线数目、容量要求等),确定引脚的连接;
尤其是在进行字扩展时,特别注意片选信号的产生。
3-8译码器74LS138、双2-4译码器74LS139
画出逻辑连接图,作必要的分析说明。
用于地址译码的3-8译码器;
输入3位地址信号,译码产生8个不同的选通输出;
外部的结构图
引脚作用:
输入信号A、B、C引入所要译码的三位地址信号
输出信号/Y0 ~ /Y7 对应每一个存储单元,低电平有效
使能信号G1、/G2A、/G2B :当且仅当G1=1、/G2A =0 、/G2B =0时,译码器正常工作
用于地址译码的2-4译码器;
输入2位地址信号,译码产生4个不同的选通输出;
外部的结构图
引脚作用:
输入信号A、B引入所要译码的两位地址信号;
输出信号/Y0 ~ /Y3 对应每一个存储单元,低电平有效;
使能信号/G :当且仅当/G=0时,译码器正常工作;
**例1.设CPU有16根地址线,8根数据线,用/MREQ作访存控制现有下列芯片:1K×4RAM;4K×8RAM;8K×8RAM;2K×8ROM;4K×8ROM;8K×8ROM及74LS138等电路要求:构成地址为600067FFH的系统程序区、地址为68006BFFH的用户程序区,选择芯片并画出逻辑连接图。
**
存储器地址段分析:
A15 … A11 A10 A9 … … A0
0110 0 0 0 0 0000 0000
0110 0 1 1 1 1111 1111
0110 1 0 0 0 0000 0000
0110 1 0 1 1 1111 1111
存储芯片选择
系统程序区:1片2K×8ROM
用户程序区:2片1K×4RAM,做位扩展
芯片及引脚分析
2K×8ROM
地址线:A0~A10
数据线:D0~D7
控制线:/CS
1K×4RAM
地址线:A0~A9
数据线:D0~D3
控制线:/CS、/WE
CPU
地址线:A0~A15
数据线:D0~D7
控制线:/WE、/MREQ
存储器设计的连接要点
地址线的连接
用CPU的低位地址线与芯片地址线直接连接;
数据线的连接
用CPU的对应位数据线与芯片的数据线直接连接;
读/写控制信号线的连接
用CPU的读/写控制信号线直接与存储芯片直接连接;
片选线的连接
一般使用CPU的高位地址线的和CPU的访存允许控制信号线/MREQ,经译码器译码后产生各芯片的片选信号。
关键点:保证从每个芯片的角度来看,都完全使用了CPU引脚(直接或间接连接);
SDRAM(同步动态存储器)
需要与系统时钟相同步的外部时钟;
非同步DRAM,CPU需先与主存进行时钟同步,再读写数据;
同步DRAM,主存在系统时钟控制下工作,无需同步等待时间;
采用多存储体结构,多个存储体紧密配合,高速读写数据;
SDRAM连续读写时,最高可达到一个CLK一个数据;
DDR DRAM(双数据传输率同步动态存储器)
在SDRAM基础上,采用延时锁相环技术提供数据选通信号,对数据进行精确定位;
每个时钟的上升、下降沿两次传输数据,数据传输率提高1倍;
DDR2拥有两倍于DDR的预读取能力(4bit数据读预取);
DDR3在DDR2基础上,具有更高工作频率、更好的通用性;
校验方法:“写入—读出”;
F为数据校验部件,不同校验方式,设计有所区别;
存储器实验中,靠指令读写验证扩展的存储区域的正确性