450 likes | 609 Views
第五章 存储器. ● 计算机的主要组成部件; ● 表征计算机的记忆功能; ● 存储数据和程序; ● 容量越大,计算机性能越好. 5.1 概述. 5.1.1 存储器的性能指标 1.容量 是指一个存储器芯片所能存储的二进制信息量 存储器芯片容量=存储单元数×每单元的数据位数 例: 2 K×8bit, 习惯以2 K 表示. 2. 最大存取时间 为访问一次存储器(对指定单元写入或读出)所需要的时间,这个时间的上限值即最大存取时间,一般为十几纳秒到几百纳秒。 3. 其他指标 可靠性、集成度、价格等. 5.1.2 存储器的分类. 一. 按用途分类
E N D
第五章 存储器 ●计算机的主要组成部件; ●表征计算机的记忆功能; ●存储数据和程序; ●容量越大,计算机性能越好
5.1 概述 5.1.1 存储器的性能指标 1.容量 是指一个存储器芯片所能存储的二进制信息量 存储器芯片容量=存储单元数×每单元的数据位数 例: 2K×8bit,习惯以2K表示
2. 最大存取时间 为访问一次存储器(对指定单元写入或读出)所需要的时间,这个时间的上限值即最大存取时间,一般为十几纳秒到几百纳秒。 3. 其他指标 可靠性、集成度、价格等
5.1.2 存储器的分类 一. 按用途分类 1. 内部存储器 也称内存. 位于计算机主机的内部. 用来存放当前正在使用的或经常使用的程序和数据, CPU可直接对它进行访问,存取速度快,一般是用半导体存储器件构成. 其大小受地址总线位数限制: 8086系统,地址线20根, 1 MB 80386系统,地址线32根,4GB PII系统,地址线36根, 64GB
2.外部存储器 也称外存,是辅助存储器. 大容量, 存取速度慢,要用专用设备来管理. 常见设备: 光盘、软盘、硬盘、优盘、磁带等
二、按制造工艺来分 1、双极型 2、CMOS型 3、HMOS型 三、按存储器性质分类 1. RAM 随机存取存储器 CPU能根据RAM的地址将数据随机地写入或读出. 电源切断后,所存数据全部丢失. (1)SRAM 静态RAM(Static RAM) SRAM存取速度快, 有电源存在内容就不会自动消失. (2)DRAM 动态RAM(Dynamic RAM) 信息寄存在电容上,1ms/1us后自动消失, 因此必须周期性的刷新(Refresh). 功耗小, 但速度比SRAM慢2~5倍
2. ROM只读存储器(Read Only Memory) ROM中的数据只能读出,不能写入,电源关掉, 数据也不会丢失,通常存放了操作系统的程序(BIOS)或用户固化的程序. (1) PROM 可编程ROM (2) EPROM可擦除,可编程ROM • EEPROM电可擦除可编程ROM • Flash Memory快擦写存储器 存储器的分类 见图5.1
5.2 随机存取存储器(RAM) 5.2.1 静态RAM(SRAM) 一、RAM原理 由MOS管组成双稳态触发电路,寄存“0”和“1”这样的信息。 不需要刷新,但功耗大,集成度低。 由地址译码器,存储矩阵,控制逻辑和三态数据缓冲器组成。图 5.3所示 (1)存储矩阵 (2)地址译码器 (3)控制逻辑和三态数据缓冲器
二、典型芯片 2114(1k×4位) 6116(2k×8位) 6264(8k×8位) 62128 (16k×8位) 62256 (32k×8位) 其中6264B8K×8的低 功耗CMOS SRAM. 最大存取时间为70ns~120ns. 图5.4
A12 ~ A0 OE CS1 CS2 6264 WE D7 ~ D0 与CPU的连接: 其中:OE 为输出允许 WE 为输入允许 CS1、CS2 为片选信号 RD WR
5.2.2 动态随机存取存储器(DRAM) 一、动态RAM的构成 ● 由许多基本存储单元按行和列组成矩阵; ● 由于寄存在电容上的信息会放电,故需定时刷新.集成度高,功耗低. ● 地址线分成行地址和列地址(分时复用). 行地址选通信号RAS, 列地址选通信号CAS. 即对DRAM访问时,先由行地址选通信号RAS把 行地址送入内部设置的行地址锁存器,再由列地址 选通信号CAS把列地址送入列地址锁存器,并由读写信号控制数据的读出或写入。
二、典型芯片intel2164 1、内部结构 4个128×128基本存储矩阵。 64K×1, 8条地址线。 A0~A7为地址线; RAS/CAS为行、列地址选择信号 WE为读写控制线; DIN数据输入; DOUT为数据输出
5.2.4 高速缓冲存储器 1、高速缓冲存储器的使用 DRAM存取时间慢,CPU速度快,使CPU效率降低; 而SRAM存取时间较快,可以大大提高CPU效率; CACHE技术: SRAM组成的高速缓冲器存放经常使用的代码数据; 速度快;提供接近零等待的性能; 不常访问的存放到DRAM;价格低 CACHE:容量通常为32K~256k; 在计算机存储系统中的地位:
cpu Cache 内存储器 主存储器 辅助存储器(硬盘) 外存储器 大容量存储器(移动硬盘、闪存)
CACHE的结构: 两部分组成: 一部分存放由主存储器来的数据; 另一部分存放该数据在存储器中的地址,Tag 结构: 全相联; 直接映像; 成组映像
5.3 只读存储器(ROM) 5.3.1 掩膜ROM和PROM 一、掩膜ROM: 片内信息由厂家完成,用户不能修改 二、 PROM 用户可以写入信息,但只能写一次 5.3.2 EPROM(可擦除的PROM) 一、 EPROM • 基本存储电路 • 典型芯片- Intel2764和Intel 27C512 8K×8 和64K×8的CMOS EPROM
二、EEPROM (电擦除可编程只读存储器) 特点: 1)编程简单,对硬件电路没有特殊要求。 2)采用+5V电擦除,可在写入的过程中自动 擦除,但擦除时间约10ms. 3)EEPROM器件一般都是并行总线传输的, 容量不很大。常用的芯片有2864 4)也有采用串行数据传送的,其容量很小, 但价格低、体积小。串行EEPROM应用也 越来越广泛 24C64 见图5.18
5.3.4 快擦写存储器(Flash Memory) 类似于EPROM 、非易失的,并采用与EPROM类似的算法进行编程。差别是,它的存储单元是电可擦除的,而且擦除的是整个存储器阵列或者是一个大的存储单元块,而不是一个字节、一个字节擦除的。
5.4 存储器的扩充及 CPU与存储器的连接 5.4.1存储器容量扩充 ■存储器芯片选择 一、类型选择 二、存储器芯片与CPU的时序配合
■ 扩充的方法 一、位数扩充 8K×8的SRAM芯片扩充形成8K×16的芯片组。 图 1 8K×8芯片组成8K×16芯片组 二、单元数扩充 8K×8芯片6264构成32K×8的存储区,需4片6264 图2 8K×8芯片扩充成32K×8芯片组
5.4.2 CPU与存储器连接 连接时的注意事项: (1)CPU总线的负载能力 (2)CPU的时序和存储器存取速度之间的配合 (3)存储器的地址分配和片选 (4)控制信号的连接 需要连接的信号: (1) 存储芯片上地址线、数据线、片选线、读写线 (2) 译码电路上的若干信号线
一. 存储器的地址选择(关系到译码器的连接) 1. 线性选择方式 ROM和RAM芯片, 只有当片选信号CS有效时,才能对该芯片进行操作. 例:RAM芯片Intel 6164 容量为8K×8位, 用二片SRAM 6164,组成16K × 8的存储器系统 画出该存储系统图并说明其每个芯片的地址范围 分析:因为8K=213 , 13根地址线 A12~A0,作为片内寻址; 剩余7根地址线中可用A13来作为片选
当A13=0, 选中 #1芯片. A13=1, 选中 #2 芯片. • 控制线M / IO 用来保证该线路只对存储器操作有效.
A19A18A17A16A15A14A13A12~A0 #1 0 0 0 0 0 0 0 0 ~ 0; (0000H~ 0 0 0 0 0 0 0 1 ~ 1; 1FFFH) #2 0 0 0 0 0 0 1 0 ~ 0; (2000H~ 0 0 0 0 0 0 1 1 ~ 1; 3FFFH) 注: …A15、A14选不同的值,对应地址范围不同,有重叠 把这种寻址方式称为线选方式. 线选方式的特点: 电路简单,节省译码线路, 但地址重叠,常用在简单的场合.
2. 全译码选择方式 它是对全部地址总线进行译码,无地址重叠. 例:设一个微机系统的RAM容量为4K,采用1K*8的RAM 芯片,安排在64K空间的最低4K位置,A9~A0作为片内寻 址,A15~A10译码后作为芯片寻址。 A15A14A13A12A11A10A9 ~ A0 #0 0 0 0 0 0 0 0 ~ 0 (0000H~ 0 0 0 0 0 0 1 ~ 1 03FFH) #1 0 0 0 0 0 1 0 ~ 0 (0400H~ 0 0 0 0 0 1 1 ~ 1 07FFH) #2 0 0 0 0 1 0 0 ~ 0 (0800H~ 0 0 0 0 1 0 1 ~ 1 0BFFH) #3 0 0 0 0 1 1 0 ~ 0 (0C00H~ 0 0 0 0 1 1 1 ~ 1 0FFFH)
3. 部分译码选择方式 它是将高位地址线中的几位经过译码后作为片选控制,地址部分重叠。 通常采用3:8译码器74LS138. A VCC G1 G2AG2B C B A 输出 B Y0 1 0 0 0 0 0 Y0=0 其余为 1 C Y1 1 0 0 0 0 1 Y1=0 其余为 1 G2A Y2 1 0 0 0 1 0 Y2=0 其余为 1 G2B Y3 1 0 0 0 1 1 Y3=0 其余为 1 G1 Y4 1 0 0 1 0 0 Y4=0 其余为 1 Y7 Y5 1 0 0 1 0 1 Y5=0 其余为 1 GND Y6 1 0 0 1 1 0 Y6=0 其余为 1 1 0 0 1 1 1 Y7=0 其余为 1 1 16 2 15 3 14 4 13 5 12 6 11 7 10 8 9 74LS138 真值表
A B Y0 C Y1 G2A Y2 G2B Y3 G1 例 设计一8K*8的存储器系统,采用2K*8的RAM芯片4片, 选用A10~A0作为片内寻址,用A13~A11作为74LS138 的译码输入,利用输出段 Y0~Y3作为片选信号. A11 当A15A14=0 0 时 A12 #1 0000H~07FFH A13#2 0800H~0FFFH #3 1000H~17FFH #4 1800H~1FFFH M/IO
C B A A15 A14 A13 A12 A11 A10……A0 #1 0 0 0 0 0 0 …… 0 0000H 0 0 0 0 0 1 …… 1 07FFH #2 0 0 0 0 1 0 …… 0 0800H 0 0 0 0 1 1 …… 1 0FFFH #3 0 0 0 1 0 0 …… 0 1000H 0 0 0 1 0 1 …… 1 17FFH
#1 A B Y0 C Y1 G2A Y2 G2B Y3 G1 A11 A12 A13 #2 M/IO #3 #4
W R Y0 A13 ~ A19 Y1 CS1 OE WE CS1 OE WE CS2 Y2 CS2 A0~A12 D0~D7 A0~A12 D0~D7 Y3 A0~A12 D0~D7 二. 存储器的数据线及控制线的连接 RD, WR, M/IO等信号的作用 例:用2片6264芯片与8086系统总线相连构成16K×8的存储系统, 画出该系统的连接图
构造一个存储系统的步骤: 1、计算所用RAM、ROM芯片数量 2、分析要扩展的是单元数、位数还是都要扩展 3、选择要采用的线性选择方式、部分译码 还是全译码 4、将数据线、地址线、控制线与CPU相连 5、写出地址范围
4. 1k×8 210 = 1k A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 0 00 1 0 0 0 0 0 0 0 0 0 0 0 0 0 00 1 0 0 1 1 1 1 1 1 1 1 1 1 2k×8 211 =2k A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 0 00 1 0 0 0 0 0 0 0 0 0 0 0 0 0 00 1 0 1 1 1 1 1 1 1 1 1 1 1
R A16 A17 A19 GND OE A15 CS1 A0~A14 D0~D7 A17 +5V A0~A14 D0~D7 5. 设计一片容量是32×8的EPROM芯片与8088CPU相连 假设起始地址是20000H,写出此芯片所占地址空间。 A19A18A17A16 A15A14A13A12A11… A8 A7…A4 A3…A0 0 0 1 0 0 0 0 0 0 … 0 0 …0 0…0 0 0 1 0 0 1 1 1 1 … 1 1 …1 1…0
8、 8000H~8700H 8800H~8FFFH 9000H~9FFFH A000H~A300H A400H~A7FFH A800H~ABFFH AC00H~AFFFH
A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 1 00 0 0 0 0 0 0 0 0 0 0 0 0 0 1 00 0 0 0 1 1 1 1 1 1 1 1 1 1 A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 1 00 0 1 0 0 0 0 0 0 0 0 0 0 0 1 00 0 1 0 1 1 1 1 1 1 1 1 1 1 A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 1 00 1 0 0 0 0 0 0 0 0 0 0 0 0 1 00 1 0 0 1 1 1 1 1 1 1 1 1 1
A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 1 01 0 0 0 0 0 0 0 0 0 0 0 0 0 1 01 0 0 0 1 1 1 1 1 1 1 1 1 1 A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 1 01 0 0 1 0 0 0 0 0 0 0 0 0 0 1 01 0 0 1 1 1 1 1 1 1 1 1 1 1 A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 1 01 0 1 0 0 0 0 0 0 0 0 0 0 0 1 01 0 1 0 1 1 1 1 1 1 1 1 1 1 A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 1 01 0 1 1 0 0 0 0 0 0 0 0 0 0 1 01 0 1 1 1 1 1 1 1 1 1 1 1 1
第五章 习题 补充 • 用1024×1位的RAM芯片组成16K×8位的存储器,需要多少芯片?在地址线中有多少位参与片内寻址?多少位组合成片选择信号?(设地址总线为16位) • 当从存储器偶地址单元读一个字节数据时,写出存储器的控制信号和它们的有效逻辑电平信号。(8086工作在最小模式) • 当要将一个字写入到存储器奇地址开始的单元中去,列出存储器的控制信号和它们的有效逻辑电平信号。(8086工作在最小模式)
4. 8088系统中有一存储器全译码电路如下图所示,A0~A11为片内地址。问此时芯片#1的寻址范围是__________________H,芯片#2的寻址范围是______________________H,