微机原理与接口技术 第5章 存储器 朱华贵 2015年11月05日
本章主要内容 半导体存储器的分类 1 半导体存储器的主要技术指标 2 典型存储器芯片 3 存储器与系统的连接 4
存储器应用无处不在
存储器 什么是存储器? 存储器(Memory)是计算机系统中的记忆设备,用来存放程序和数据。计算机中的全部信息,都保存在存储器中。 存储器容量均以字节为单元,常用的单位有: 210字节=1024B=1KB 220字节=1024KB=1MB 230字节=1024MB=1GB 240字节=1024GB=1TB
存储器用来存放程序和数据,是计算机各种信息的存储和交流中心。存储器可与CPU、输入输出设备交换信息,起存储、缓冲、传递信息的作用。 衡量存储器有三个指标:容量、速度和价格/位。
微型计算机中存储器的作用 CPU 地址总线 AB 存 I/O 输 出 储 接 入 口 设 器 备 数据总线 DB 控制总线 CB
存储器的层次结构
存储器的层次结构 寄存器 微处理器内部的存储单元 高速缓存(Cache) 完全用硬件实现主存储器的速度提高 主存储器 存放当前运行程序和数据,采用半导体存储器构成 辅助存储器 磁记录或光记录方式 磁盘或光盘形式存放可读可写或只读内容 以外设方式连接和访问
现代微机的存储结构 CPU内 的寄存器 L1 数据Cache L1 代码Cache L2 Cache L3 Cache 内部存储器(内存) 外部存储器(外存) 外存Cache
存储访问的局部性原理 层次结构解决存储器件的容量、速度和价格矛盾 出色效率来源于存储器访问的局部性原理: 处理器访问存储器时,所访问的存储单元在一段时间内都趋向于一个较小的连续区域中 空间局部:紧邻被访问单元的地方也将被访问 时间局部:刚被访问的单元很快将再次被访问 程序运行过程中,绝大多数情况都能够直接从快速的存储器中获取指令和读写数据;当需要从慢速的下层存储器获取指令或数据时,每次都将一个程序段或一个较大数据块读入上层存储器,后续操作就可以直接访问快速的上层存储器
现代内存储器-内存条 现代内存技术发展:内存芯片→EDO DRAM →SDRAM→DDRSDRAM→DDR2→DDR3 Rambus内存条模块(RDRAM)
如何判别购买的内存条好坏? 1、产品做工是否精良? 做工水平直接会影响到性能、稳定以及超频。 2、查看SPD信息(SPD是内存模组上面的一个可擦写的ROM):能够直观反映出内存的性能及体制。它里面存放着内存可以稳定工作的指标信息以及产品的生产,厂家等信息。 SPD 小提示:用软件检测,常用Everest、CPU-Z等软件一查即可明白。
5.1 半导体存储器的分类 内存储器一般由一定容量的速度较快的半导体存储器组成,CPU可直接对内存执行读/写操作。 内存储器按存储信息的特性可分为随机存取存储器RAM(Random Access Memory)和只读存储器ROM(Read Only Memory)两类。
半导体存储器的分类 半导体存储器 随 机 读写 存储器 ( RAM ) 只读存储器 ( ROM ) 掩膜ROM(MROM) 一次性可编程ROM ( PROM) 紫外线可擦除的PROM ( EPROM) 电可擦除的PROM (E2PROM) 闪速存储器FlashROM 双极型RAM MOS型RAM 静 态 RAM ( SRAM ) 动 态 RAM ( DRAM ) 组 合 RAM ( IRAM ) 非易失RAM ( NVRAM )
5.2 半导体存储器的主要技术指标 存储容量 读写速度 可靠性 存储容量就是以字或字节为单位来表示存储器存储单元的总数。 半导体存储器的速度一般用存取时间和存储周期两个指标来衡量。 可靠性 通常指存储器对温度、电磁场等环境变化的抵抗能力和工作寿命。 指连续启动两次独立的存储器操作(例如连续两次读操作)所需间隔的最小时间。 又称存储器访问时间,是指从启动一次存储器操作到完成该操作所经历的时间。
半导体存储器芯片的结构 地址译码 数据缓冲 地 址 寄 存 译 码 存储体 控制电路 AB 数 据 读 写 电 路 DB OE WE CS CB
存储器的组成 存储器芯片具有大量存储单元 每个存储单元拥有一个地址 存储1/4/8/16/32位数据 存储器芯片结构: 存储单元数×每个存储单元的数据位数 =2M×N=芯片的存储容量 M=芯片地址线的个数 N=数据线的个数 举例 存储结构2K×8 16K位存储容量 11个地址引脚 8个数据引脚
5.3 典型存储器芯片介绍 1. Intel 2114 1K×4位的SRAM 六管存储元电路 单一的+5V电源供电 所有的引脚都与TTL电平兼容
5.3 典型存储器芯片介绍 2. Intel 6264 8K ×8位的SRAM 0.8µmCMOS工艺制造 单一的+5V电源供电 高速度、低功耗 全静态,无须时钟和定时选通信号 I/O端口是双向、三态控制,与TTL电平兼容
Intel 62系列 型号 容量 6264 8K×8bits 62128 16K×8bits 62256 32K×8bits 62512
5.3 典型存储器芯片介绍 3. Intel 51256 32K×8位的SRAM 工作方式 1 读操作 × 写操作 高阻态 未选 1 读操作 × 写操作 高阻态 未选 Intel 51256工作方式
5.3 典型存储器芯片介绍 4. Intel 2164 64K×1bit的DRAM 址线只有8位,16位的地址信号分为行地址和列地址,分两次送入芯片。
Intel 21系列 型号 容量 2164 64K×1bit 21256 256K×1bit 21464 64K×4bit
5.3 典型存储器芯片介绍 5. Intel 41256 256K×1位DRAM,存取时间200~300ns,地址线只有一半的位数,行地址和列地址分两次输入。 引脚 功能 A9~A0 地址线 D 数据输入 Q 数据输出 读/写信号 行地址选通信号 列地址选通信号 Vcc 电源(+5V) Vss 地
5.3 典型存储器芯片介绍 6. Intel 27128 128K(16K×8位)的EPROM 最大访问时间250ns,与高速8MHz的iPAX186兼容
27128的工作模式 引脚 模式 A9 VPP VCC D7-D0 读 L H X 数据输出 输出禁止 高阻 备用模式 编程禁止 编程模式 数据输入 INTEL编程 校验 电子标识符 VID 标识符输出
5.3 典型存储器芯片介绍 7. 28C64 28C系列是包含不同容量的E2PROM芯片。 与EPROM相比,E2PROM的优点是:编程与擦写所需的电流极小,速度快(10ms);擦写可以按字节分别进行。 型号 容量/KB 28C16 2 28C64 8 28C256 32 28C512 64
28C64的两种封装
5.3 典型存储器芯片介绍 8. K9F6408U0A 典型的NAND Flash芯片 数据宽度为8位,可复用,既可作为地址和数据的输入/输出引脚,又可作命令的输入引脚,根据时序采用分时循环 芯片内部存储单元按页和块的结构组织 写和读以页为单位,而擦除以块为单位。读、写和擦除操作均通过命令完成 写入每页的时间为200us,平均每写一个字节约400ns,即约20Mb/s。此芯片可擦写1百万次,掉电数据不丢失,数据可保存十年
5.4 存储器与系统的连接 CPU对存储器进行读/写操作时,首先由地址总线给出地址信号,然后要对存储器发出读操作或写操作的控制信号,最后在数据总线上进行信息交换。 存储器与系统之间通过AB、DB及有关的控制信号线相连接,设计系统的存储器体系时需要将这三类信号线正确连接。
5.4.1 存储器扩展 若干存储芯片和系统进行连接扩展,通常有三种方式: 位扩展 字扩展 字位扩展
位扩展(位并联法) 位扩展指用多个存储器器件对字长进行扩充。一个地址同时控制多个存储器芯片。
字扩展(地址串联法) 字扩展指的是增加存储器中字的数量。
字位扩展 实际存储器往往需要字向和位向同时扩充。 一个存储器的容量为M×N位,若使用L×K位存储器芯片,那么,这个存储器共需要(M/L)×(N/K)个存储器芯片。
5.4.2 存储器地址译码 存储单元的地址由片内地址信号线和片选信号线的状态共同决定。 常用的片选信号产生方法有以下三种: 全地址译码 部分地址译码 线选择译码 片选信号由地址线中所有不在存储器上的地址线译码产生,存储器芯片中的每一个存储单元只对应内存空间的一个地址 特点:寻址范围大,地址连续,不会发生因高位地址不确定而产生的地址重复现象 也称局部地址译码。片选信号不是由地址线中所有不在存储器上的地址线译码产生,而是只有部分高位地址线被送入译码电路产生片选信号。 特点:某些高位地址线被省略而不参加地址译码,简化了地址译码电路,但地址空间有重叠。 线选法是指高位地址线中的某一条作为存储器芯片的片选控制信号的译码方式。 优点:选择芯片不需要外加逻辑电路,译码线路简单。缺点:地址重叠区域多,适用于扩展容量较小的系统。
地址译码 示意图 译码(Decode) 将某个特定的编码输入翻译为有效输出的过程 存储器译码电路 可编程逻辑器件PLD 译码器 门电路组合
存储器地址分析 微处理器8088 8位数据总线D7~D0 20个地址总线A19~A0 32K×8结构的SRAM 15个地址总线A14~A0 示意图 微处理器8088 8位数据总线D7~D0 20个地址总线A19~A0 32K×8结构的SRAM 15个地址总线A14~A0 微处理器A19~A15=00001 存储器片选有效 地址范围:08000H~0FFFFH
138译码器 3个控制输入引脚:E3,E2和E1 都有效,才能实现译码功能 3个编码输入引脚:C,B和A 8种编码各对应一个译码输出引脚 示意图 3个控制输入引脚:E3,E2和E1 都有效,才能实现译码功能 3个编码输入引脚:C,B和A 8种编码各对应一个译码输出引脚 CBA=000编码使Y0*低有效,其他高电平无效 CBA=001编码使Y1*低有效,其他高电平无效 …… CBA=111编码使Y7低有效,其它高电平无效
译码器译码 Y0译码输出有效,必须: E3E2E1=100 A19A18A17=111 CBA=000 A16A15A14=000。 示意图 Y0译码输出有效,必须: E3E2E1=100 A19A18A17=111 CBA=000 A16A15A14=000。 结论:A19~A14=111000 地址范围:E0000H~E3FFFH 存储容量:16KB
译码方式 全译码 部分译码 全译码方式 使用全部微处理器地址总线 片内寻址:低位地址与存储器芯片地址引脚相连 地址唯一 片选寻址:高位地址经译码与存储器芯片片选引脚相连 部分译码方式 只使用部分微处理器地址总线进行译码 没有使用的地址信号对存储器芯片的工作不产生影响 全译码 地址唯一 空间连续 部分译码 地址重复 译码简单
全译码示例 A16 E3 138 IO/-M E2 2764 A19 A18 A17 E1 Y6 CE A15 C A14 B A13 A
全译码示例——地址分析 1C000H 1DFFFH 全0 全1 0 0 0 1 1 1 0 地址范围 A12~A0 0 0 0 1 1 1 0 地址范围 A12~A0 A19A18A17A16A15A14 A13
部分译码 只有部分(高位)地址线参与对存储芯片的译码 每个存储单元将对应多个地址(地址重复),需要选取一个可用地址 可简化译码电路的设计 但系统的部分地址空间将被浪费
部分译码示例 A17 A16 IO/-M A14 A13 A12 C B A 138 A11~A0 请看地址分析 -Y0 E3 -Y1 -CE -CE -CE -CE C B A 2732 2732 2732 2732 138 (1) (2) (3) (4) A11~A0 请看地址分析
部分译码示例——地址分析 1 2 3 4 ××10× A19~ A15 20000H~20FFFH 21000H~21FFFH 芯片 ××10× A19~ A15 20000H~20FFFH 21000H~21FFFH 22000H~22FFFH 23000H~23FFFH 全0~全1 000 001 010 011 一个可用地址 A11~A0 A14~ A12
线选译码 只用少数几根高位地址线进行芯片的译码,且每根负责选中一个芯片(组) 虽构成简单,但地址空间严重浪费 必然会出现地址重复 一个存储地址会对应多个存储单元 多个存储单元共用的存储地址不应使用
线选译码示例 A14 A12~A0 A13 (1) 2764 (2) CE 请看地址分析
线选译码示例——地址分析 切记: A14 A13=“00” 的情况不能出现, 此时 00000H~01FFFH 的地址将不能使用 1 2 芯片 ××××× A19~ A15 04000H~05FFFH 02000H~03FFFH 全0~全1 1 0 0 1 一个可用地址 A12~A0 A14 A13 切记: A14 A13=“00” 的情况不能出现, 此时 00000H~01FFFH 的地址将不能使用
16位存储结构 对称的两个存储体(Bank)所构成 偶存储体(A0=0) 对应所有的偶地址单元(0、2、4、……FFFEH) 示意图 对称的两个存储体(Bank)所构成 偶存储体(A0=0) 对应所有的偶地址单元(0、2、4、……FFFEH) 接微处理器低8位数据总线D7~D0 奇存储体(BHE*=0) 对应所有的奇地址单元(1、3、5、……FFFFH) 接微处理器高8位数据总线D15~D8 两个存储器芯片的片选端连接在一起
存储器地址译码电路设计步骤 存储器地址译码电路的设计一般遵循如下步骤: (1)根据系统中实际存储器容量,确定存储器在整个寻址空间中的位置; (2)根据所选用存储芯片的容量,画出地址分配图或列出地址分配表; (3)根据地址分配图确定译码方法; (4)选用合适器件,画出译码电路图。
片选控制端译码小结 存储芯片的片选控制端可以被看作是一根最高位地址线 在系统中,主要与地址发生联系:包括地址空间的选择(接系统的IO/-M信号)和高位地址的译码选择(与系统的高位地址线相关联) 对一些存储芯片通过片选无效可关闭内部的输出驱动机制,起到降低功耗的作用
5.4.3 8086CPU与存储器的连接
5.4.3 8086CPU与存储器的连接
1.CPU与存储器的接口 8086CPU有最小与最大两种工作模式。 最小模式的控制信号仅由8086产生。 最大模式需用总线控制器8288协同产生控制信号。
1.CPU与存储器的接口 最小模式 最大模式
2.存储器接口分析 ROM接口电路 只读存储器在计算机系统中的功能主要是存储程序、常数和系统参数等。目前常用的有27系列和28系列EPROM芯片。
【例5-1】设计一ROM扩展电路,容量为32K字,地址从00000H开始。EPROM芯片采用27256。
32K字EPROM的地址范围表 最小地址 最大地址 A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 最小地址 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 最大地址 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
2.存储器接口分析 RAM接口电路 随机读写存储器在计算机系统中的功能主要是:存储程序、变量等。常用的有61和62系列SRAM芯片。
2.存储器接口分析 与ROM接口电路不同,CPU对RAM不仅要进行16位读操作,还要进行写操作。写操作有3种类型:写16位数据、写低8位数据和写高8位数据。 A0 总线使用情况 16位数据进行字传送 1 高8位数据进行字节传送 低8位数据进行字节传送 无效
【例5-2】设计一RAM扩展电路,容量为32K字,地址从10000H开始。芯片采用62256。
32K字RAM的地址范围表 A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 最小地址 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 最大地址 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
3.存储器系统设计举例 【例5-3】某8086系统工作于最小模式下的存储器系统如图5-17所示。图中8086CPU芯片上的地址、数据信号线经锁存、驱动后成为地址总线A19-A0、数据总线D15-D0。两片EEPROM为27256。两片RAM为62256。译码器74138担任片选译码。
【例5-4】 某8086系统工作于最大模式下的存储器系统如图所示,图中8086CPU芯片上的地址、数据信号线经锁存、驱动后成为地址总线A19-A0、数据总线D15-D0。ROM是两片EPROM 27256。RAM是两片62256。译码器74138担任片选译码。
对存储器的要求: 1. 了解半导体存储器分类(一般了解即可)。 2. 掌握半导体存储器与微机系统的连接方法。 具体如下: 会据连线确定存储器的地址范围, 或给出地址范围会画出相应的连线。 可参看教材图例, 会确定各芯片的地址范围即可。
半导体存储器的分类 半导体存储器 双极型RAM 随 机 读写 存储器 ( RAM ) MOS型RAM 静 态 RAM ( SRAM ) 只读存储器 ( ROM ) 半导体存储器 掩膜ROM 可编程ROM ( PROM) 可擦除的PROM ( EPROM) 电可擦除的PROM (E2PROM) FlashROM 双极型RAM MOS型RAM 静 态 RAM ( SRAM ) 动 态 RAM ( DRAM ) 组 合 RAM ( IRAM ) 非易失RAM ( NVRAM )
例1 某内存芯片的其容量为 2K× 8 例2 某内存芯片的其容量为 1K×1 一个内存芯片的容量定义为: 容量 = 内存单元总数 × 每个单元存储的二进制位数 内存芯片容量表示: m×n , m-字单元数,n-单元位数 例1 某内存芯片的其容量为 2K× 8 该芯片有 2K ( 2048 ) 个内存单元; 每个单元存储 8 位二进制数。 例2 某内存芯片的其容量为 1K×1 该芯片有 1K ( 1024 ) 个内存单元; 每个单元存储 1 位二进制数。
内存芯片容量与内存芯片的地址线和数据线的关系 ◢ 单元总数由芯片的地址线数决定。 例如 10根地址线 210 1K 个单元 13根 213 8K 17根 217 128K ◢ 每个单元存储的二进制位数由芯片的数据线数决定。 例如 1根数据线 ,则每个单元存储 1位 4根 4位 8根 8位
注意: 例如 某计算机的内存大小为8KB ( 8K ×8 ) 1. 内存芯片的容量与计算机内存大小,的区别 ▲计算机内存大小指计算机实际配置内存容量, 可由多片内存芯片构成。 例如 某计算机的内存大小为8KB ( 8K ×8 ) 可由各种内存芯片构成: 1片 8K ×8 4片 2K ×8 2片 8K ×4 8片 2K ×4 8片 8K ×1 32片 2K ×1
例如 某计算机的内存大小为32KB ( 32K×8 ) M×N ▲位扩展——存储单元的位数扩展。方法:片子并接 ▲字扩展——存储单元位数扩展。 方法:地址扩充 内存容量扩展所需芯片数: 例如 某计算机的内存大小为32KB ( 32K×8 ) M×N 可由各种内存芯片构成:m×n 4片 8K ×8 16片 2K ×8 8片 8K ×4 32片 2K ×4 32片 8K ×1 128片 2K ×1
例如: 8088CPU的寻址能力为1M; 2. CPU的寻址能力和计算机内存大小的区别: ▲ 计算机的内存大小由实际配置的内存容量决定。 ▲ CPU的寻址能力由CPU的地址线数决定。 例如: 8088CPU的寻址能力为1M; 采用8088为CPU的PC机: 内存大小可为256K,512K等。
内存芯片 3 2 高 位 地址线 数据线 控制线 低位地址线 片选译码 1 半导体存储器与微机系统的连接
A12 PC 总线 74LS245 RAM 6116 A13 A14 A15 A16 A17 A18 A19 DACK1 MEMW IOW J2 D0 D1 D2 D3 D4 D5 D6 D7 A12 A13 A14 A15 A16 A17 A18 A19 DACK1 MEMW IOW MEMR IOR PC 总线 RD CS WE A1 A2 A3 A4 A5 A6 A7 A8 74LS245 RAM 6116 J4 J3 B1 B2 B3 B4 B5 B6 B7 B8 DIR G A0 A9 A10