Download presentation
Presentation is loading. Please wait.
1
第6章 存储系统 计算机教学实验中心
2
主要内容 微型机存储系统的概念和体系结构 存储器的分类及其特点 半导体存储芯片的外部特性及其与系统的连接 存储器管理技术 高速缓存的一般概念
3
§6.1 概述 存储系统 存储器的分类及主要技术指标
4
微型机的存储系统 将两个或两个以上速度、容量和价格各不相同的存储器用硬件、软件或软硬件相结合的方法连接起来就构成存储系统。
系统的存储速度接近较快的存储器,容量接近较大的存储器。
5
微型计算机系统 主存储器 高速缓冲存储器 Cache存储系统 主存储器 磁盘存储器 虚拟存储系统
6
存储系统的层次结构 通用寄存器堆及 主存储器 指令、数据缓冲栈 高速缓存 联机外存储器 脱机外存储器
由上至下容量越来越大,速度越来越慢,价格越来越低
7
存储系统的主要技术指标 存储容量(S) 单位容量的平均价格(C) C =(C1×S1+C2×S2)/(S1+S2)
存取周期 T=H·T1+(1-H)T2 访问效率 E=T1/T 命中率
8
存储器的分类 高速缓冲存储器 主存储器 辅助存储器 内存储器——半导体存储器
9
半导体存储器 由能够表示“0”和“1”、具有记忆功能的一些物理器件组成。 能存放一位二进制数的物理器件称为一个存储元。
若干存储元构成一个存储单元。
10
半导体存储器 静态RAM 动态RAM 随机存取存储器(RAM) 只读存储器(ROM) 掩模ROM FLASH存储器(闪存)
一次编程型ROM(PROM) 可读写ROM EPROM EEROM
11
半导体存储器的主要技术指标 存储容量 存取时间和存取周期 存储器带宽—— 单位时间内存储器可读写的字节数
平均故障间隔时间(MTBF)—— 可靠性 功耗 CPU读写存储器的时间必须大于存储芯片的额定存取时间
12
§6.2 随机存取存储器 主要内容: SRAM与DRAM的主要特点 几种常用存储器芯片及其与系统的连接
13
一、静态存储器SRAM 特点: 存储元由双稳电路构成,存储信息稳定。
14
典型SRAM芯片 了解: 主要引脚功能 工作时序 与系统的连接使用
15
SRAM 6264芯片 容量:8K×8 芯片外部引线图
16
6264芯片的主要引线 地址线:A0~A12; 数据线:D0~D7; 输出允许信号:OE; 写允许信号:WE; 选片信号:CS1,CS2
17
6264的工作过程 读操作 写操作 工作时序
18
6264芯片与系统的连接 A0 A0 • • • • • • A12 A12 译码 电路 • • • D0~D7 D0~D7 MEMW WE
系统总线 • • ~ • • • A12 A12 MEMW WE MEMR OE 译码 电路 CS1 高位地址信号 • • • CS2 +5V
19
译码电路 将输入的二进制(地址)编码变换为一个特定的输出信号,即:
将输入的高位地址信号通过变换,产生一个有效的输出信号,该信号选中某一个存储器芯片,使该存储器芯片进入工作状态。 参与译码的高位地址信号决定了存储器的地址范围。
20
译码方式 全地址译码 部分地址译码
21
全地址译码 用全部的高位地址信号作为译码器的输入 存储器芯片的每一个存储单元都具有唯一的内存地址,即存储单元与地址编号是一对一的关系。
22
全地址译码例 A19 A18 6264 CS1 A17 A16 & A15 A14 1 A13 全部高位地址信号(A19-A13)都作为译码器输入。 低位地址信号(A12-A0)接到6264的地址引脚。 6264的地址范围 =?
23
部分地址译码 用部分高位地址信号(而不是全部)作为译码器的输入
存储器芯片的每一个存储单元具有多个内存地址,即存储单元与地址编号是一对多的关系。
24
部分地址译码例 A19 A17 6264 CS1 A16 & A15 A14 1 A13 A18不参加译码,从而使被选中芯片的每个单元都拥有两个地址。6264的地址范围=?
25
应用举例 将SRAM 6264芯片与系统连接,使其地址范围为:38000H~39FFFH。 使用74LS138译码器构成译码电路。
26
应用举例 & & A0 A0 • • • • • • • A12 A12 G1 Y0 A19 G2A A17 A16 G2B A15 A18
6264 D0~D7 D0~D7 A0 A0 • • • • • • • 系统总线 A12 A12 MEMW WE MEMR OE & G1 Y0 A19 CS1 G2A +5V A17 CS2 & A16 G2B A15 A18 C A14 B A13 A 74LS138
27
二、动态随机存储器DRAM 特点: 存储元主要由电容构成,由于电容存在的漏电现象而使其存储的信息不稳定,故DRAM芯片需要定时刷新。
28
典型DRAM芯片2164A 2164A:64K×1bit 采用行地址和列地址来确定一个单元; 行列地址分时传送。 共用一组地址信号线
地址信号线的数量仅 为同等容量SRAM芯 片的一半。 COL 1 ROW 存储矩阵
29
2164A的内部结构 . ... 行地址 存储矩阵 锁存 256×256 及译码 A0~A7 Dout RAS# 列放大器 控制 CAS#
列地址锁存 ... . 列放大器 Dout Din 控制 电路 A0~A7 RAS# CAS# WE#
30
主要引线 RAS:行地址选通信号。用于锁存行地址; CAS:列地址选通信号。 A0-A7:地址线 DIN: 数据输入 DOUT:数据输出
地址总线上先送上行地址,后送上列地址,它们 分别在RAS和CAS有效期间被锁存芯片中。 A0-A7:地址线 DIN: 数据输入 DOUT:数据输出 WE= 数据写入 WE= 数据读出 WE:写允许信号
31
工作时序 数据读出 数据写入 刷新,一次一行
32
2164A在系统中的连接 利用8片2164A构成64KB存储体; 通过选择控制芯片将存储体与系统相连。 简化的电路原理图
33
§6.3 只读存储器(ROM) 特点: 可随机读取数据,但不能随机写入; 掉电后信息不丢失
34
一、EPROM 特点: 可多次编程写入; 掉电后内容不丢失; 内容的擦除需用紫外线擦除器。
35
典型EPROM芯片2764 8K×8bit芯片,其引脚与SRAM 6264完全兼容; 地址信号:A0 ~ A12 数据信号:D0 ~ D7
输出信号:OE 片选信号:CE 编程脉冲输入:PGM
36
2764的工作方式 数据读出 编程写入 擦除 标准编程方式 快速编程方式 P249表 编程写入: 每出现一个编程脉冲就写入一个字节数据
37
二、EEPROM 特点: 可在线编程写入; 掉电后内容不丢失; 电可擦除。
38
工作方式 数据读出 编程写入 擦除 字节擦除:一次擦除一个字节 片擦除:一次擦除整片 字节写入: 每次写入一个字节
字节写入: 每次写入一个字节 自动页写入:每次写入一页(32字节) 字节擦除:一次擦除一个字节 片擦除:一次擦除整片
39
典型EEPROM芯片 98C64A: 容量8K×8; 13根地址线(A0 - A12); 8位数据线(D0 -D7);
输出允许信号(OE); 写允许信号(WE); 选片信号(CE); 状态输出端(READY/BUSY)。
40
98C64A的写入方法 方法1: 每写入一个字节都判断READY/BUSY端的状态,仅当该端为高电平时才可写入下一个字节。 方法2:
每写一个字节后,等待一段时间(≥10ms)再写下一个字节。 98C64A的写入时间为5-10ms
41
EEPROM芯片应用例 使用98C64A作为存储器芯片,芯片地址为30000H——31FFFH,现将其连接到8086系统,并向其8K个单元全部写入FFH。
42
三、闪速存储器(Flash) 特点: 无需后备电源; 可实现在线编程; 编程写入及擦除速度快。
43
典型Flash芯片 28F040: 容量:512K×8b 控制方式: 利用内部状态寄存器控制芯片的工作
44
Flash的工作方式 数据读出 编程写入: 擦 除 读单元内容 读内部状态寄存器内容 读芯片的厂家及器件标记 数据写入,写软件保护
擦 除 数据写入,写软件保护 字节擦除,块擦除,片擦除 擦除挂起
45
§6.4 存储器扩展技术 用多片存储芯片构成所需的内存容量,每个芯片在内存中占据不同的地址范围,任一时刻仅有一片(或一组)被选中。 位扩展
字扩展 字位扩展
46
存储器扩展技术 存储器芯片的存储容量等于: 单元数×每单元的位数 字节数 字长
47
位扩展 当存储器芯片的字长小于所需内存单元的字长时,则进行位扩展,使每个单元的字长满足要求。
48
位扩展例 … 用8片2164A(64K×1位 DRAM)芯片构成64KB存储器。 D0 D1 D7 A0~A7 A0~A7 A0~A7
WE# RAS# CAS# A0~A7 A0~A7 A0~A7 地址选择 行/列地址多路转换器 A0 ~ A15
49
位扩展原则 将每片的地址线、控制线并联,数据线分别引出。 位扩展特点: 存储器的单元数不变,位数增加。
50
字扩展 地址空间的扩展。芯片每个单元中的字长满足,但单元数不满足。 扩展原则:
每个芯片的地址线、数据线、控制线并联,仅片选端分别引出,以实现每个芯片占据不同的地址范围。
51
字扩展例 用64K×8的SRAM芯片构成128KB的存储器
52
字位扩展 根据内存容量及芯片容量确定所需存储芯片数; 进行位扩展以满足字长要求; 进行字扩展以满足容量要求。
若已有存储芯片的容量为L×K,要构成容量为M ×N的存储器,需要的芯片数为: (M / L) ×(N / K)
53
字位扩展例 用32K×1位SRAM芯片构成256KB的内存。
54
8086的16位存储器接口 数据总线为16位,但存储器按字节进行编址 用两个8位的存储体(BANK)构成 如何连接? A19-A0 体选信号
和读写控制 译码器 BANK0 偶数地址 BANK1 奇数地址 控制信号 如何产生? D7-D0 D15-D8 D15-D0
55
8086的16位存储器接口 读写数据有以下几种情况: 读写从偶数地址开始的16位的数据 读写从奇数地址开始的16位的数据
读写从偶数地址开始的8位的数据 读写从奇地址开始的8位的数据 8086读写16位数据的特点: 读16位数据时会读两次,每次8位。 读高字节时BHE=0,A0=1; 读低字节时BHE=1,A0=0 每次只使用数据线的一半:D15-D8 或 D7-D0 写16位数据时一次写入。 BHE和A0同时为0 同时使用全部数据线D15~D0
56
8086的16位存储器接口 两种译码方法 独立的存储体译码 独立的存储体写选通 每个存储体用一个译码器 缺点:电路复杂,使用器件多。
译码器共用,但为每个存储体产生独立的写控制信号 但无需为每个存储体产生独立的读信号,因为8086每次仅读1字节。对于字,8086会连续读2次。 电路简单,节省器件。
57
独立的存储体译码 64KB×8片 D15-D9 D7-D0 高位存储体 (奇数地址) A16-A1 A15-A0 注意这些信号线的连接
C B A Y0# Y7# CS# OE# WE# Vcc G1 G2A# G2B# BHE# 64KB×8片 MEMR# MEMW# D8-D0 D7-D0 低位存储体 (偶数地址) A15-A0 A19 A18 A17 C B A Y0# Y7# CS# Vcc G1 G2A# G2B# OE# WE# A0 MEMW#信号同时有效,但只有一个存储体被选中
58
独立的存储体写选通 64KB×8片 D15-D9 D7-D0 高位存储体 (奇数地址) A16-A1 A15-A0 ≥1 CS# OE#
BHE# OE# WE# MEMW# ≥1 A0 64KB×8片 MEMR# D8-D0 D7-D0 低位存储体 (偶数地址) A15-A0 A19 A18 A17 C B A Y0# Y7# CS# Vcc GND G1 G2A# G2B# OE# WE#
59
§6.5 高速缓存(Cache) 了解: Cache的基本概念; 基本工作原理; 命中率; Cache的分级体系结构
60
Cache的基本概念 由于CPU与主存之间在执行速度上存在较大的差异,为提高CPU的效率,并考虑到价格因素,基于程序的局部性原理,在CPU与主存之间增加的高速缓冲存储器 —— Cache技术
61
Cache的工作原理 Cache 主 存 CPU DB
62
Cache的命中率 Cache与内存的空间比一般为:1128
CPU读取指令或数据时首先在Cache中找,若找到则“命中”,否则为“不命中”。 命中率影响系统的平均存取速度 系统的平均存取速度= Cache存取速度×命中率+RAM存取速度×不命中率
63
Cache的读写操作 贯穿读出式 旁路读出式 读操作 写操作 写穿式 回写式
64
贯穿读出式 CPU对主存的所有数据请求都首先送到Cache,在Cache中查找。若命中,则切断CPU对主存的请求,并将数据送出;如果不命中,则将数据请求传给主存。 CPU Cache 主 存
65
旁路读出式 CPU向Cache和主存同时发出数据请求。如果命中,则Cache将数据回送给CPU,并同时中断CPU对主存的请求;若不命中,则Cache不做任何动作,由CPU直接访问主存。 Cache CPU 主 存
66
写穿式 从CPU发出的写信号送Cache的同时也写入主存。 Cache CPU 主 存
67
回写式(写更新) 数据一般只写到Cache,当Cache中的数据被再次更新时,将原更新的数据写入主存相应单元,并接受新的数据。 CPU
主 存
68
Cache的分级体系结构 一级Cache:容量一般为8KB---64KB 二级Cache:容量一般为128KB---2MB
69
IBM PC/XT的存储器空间分配 00000H RAM区 640KB 9FFFFH 保留区 128KB BFFFFH ROM区 256KB
FFFFFH
70
§6.6 外存储器 略
71
作业: 6.1 6.2 6.6 6.8 6.10 6.12 6.16 6.17 谢谢!
Similar presentations