第五章 存储系统 5.1 存储器的构成 5.2 存储系统的构成 5.3 Cache 5.4 虚拟存储器.

Slides:



Advertisements
Similar presentations
第七章 半导体存储器 《数字电子技术》7.1 概述 7.2 只读存储器( ROM ) 7.5 用存储器实现组合逻辑函数 7.4 存储器的扩展 7.3 随机存储器( RAM ) 7.6 集成芯片简介及应用举例.
Advertisements

第6章 存储系统 6. 1 存储器的分类与性能评价 6. 2 存储器访问的局部性原理与 层次结构存储系统 6. 3 半导体存储器
计算机硬件设备图片 go 珠海市第四中学 信息技术组.
第四章 存储系统 4-1 存储系统概论 4-2 RAM(随机读写存储器) 4-3 ROM(只读存储器) 4-4 高速缓冲存储器(Cache)
第5章 多级结构的存储系统 5.1 三级结构存储系统概述 主存储器 虚拟存储器 CPU 高速缓存 三级结构的存储系统.
第5章 存储器 本章学习主要内容为: 存储器的分类及性能指标。 存储器的分级结构。 常用存储芯片与CPU的接口特性。 存储器的接口设计。
计算机原理及系统结构 第三十一讲 主讲教师:赵宏伟                 学时:64.
第3章 存储系统.
第二章 微型计算机系统 2.1基本术语和基本概念 硬件与软件
第6章 半导体存储器 6.1 概述 6.2 随机读写存储器(RAM) 6.3 只读存储器(ROM) 6.4 存储器的扩展
实验四 利用中规模芯片设计时序电路(二).
第6章 存储系统 计算机教学实验中心.
第4章 主存储器 4.1 主存储器概述 4.2 读/写存储器 4.3 非易失性存储器 4.4 DRAM的研制与发展
第2章 主机 李渊林 本章要点   CPU 主板 2.3   内存 2.4 机箱和电源.
计算机导论 第4讲 微型计算机硬件系统 1.
第四章 存储体系.
第6章 存储器和高速缓存技术.
半导体存储器 第四章 半导体存储器.
第五章 存储器 本章要点: ♦ 现代高档微机系统的存储器体系结构 ♦ 半导体存储器的分类与选用原则 ♦ 存储器芯片与CPU的接口特性
第一节 存储器的构成 第二节 存储系统的构成 第三节 Cache 第四节 虚拟存储器
3.1 存储器的构成 3.2 存储系统的构成 3,3 Cache 3,4 虚拟存储器
§3 高速缓冲存储器(Cache) 工作原理和基本结构 地址映象与变换 Cache存储器的LRU替换算法的硬件实现
第七章 单片机存储器的扩展.
第 5 章 存 储 器 中国科学技术大学 何克东.
主讲教师:唐大仕 第5讲 计算机硬件 主讲教师:唐大仕
第 4 章 記憶單元.
第5章 中央處理單元與主記憶體 5-1 中央處理單元-CPU 5-2 主記憶體.
版权所有,引用请注明出处 第四章、存储系统 原著 谭志虎 主讲(改编) 蒋文斌.
基本硬體介紹 1.主機板 2.CPU(運算中心) 3.記憶體(RAM-短暫記憶資料處) 4. 硬碟(HDD儲存資料處) 5.顯示卡(接螢幕)
第五章 存储系统 半导体存储器概述 系统内存扩充 高速缓冲存储器 虚拟存储器 PC系列机中的主存储器 习题与思考 上一章 目 录 帮助
第六章 存贮器 6.1 存储器概述 6.2 随机存取存储器(RAM) 6.3 只读存储器(ROM) 6.4 CPU与存储器的连接.
4.1 概述 4.2 主存储器 4.3 高速缓冲存储器 4.4 辅助存储器.
第 6 章 存储系统 6.1 概述 存储器的层次结构 存储器的分类 存储器的基本组成
第5章 存储系统.
第四章 存 储 器 4.1 概述 4.2 主存储器 4.3 高速缓冲存储器 4.4 辅助存储器.
5 Computer Organization (計算機組織).
存储设备介绍 广州创龙电子科技有限公司 Guangzhou Tronlong Electronic Technology Co., Ltd.
计算机组成原理 武汉科技大学 计算机科学与技术学院
第2章 電腦硬體的架構及功能.
第3章 存储系统 本章内容: 存储器概述 随机读写存储器 只读存储器和闪速存储器 高速存储器 cache存储器 虚拟存储器 存储保护.
微机原理与接口技术 第5章 80X86_88存储系统 黄强 深圳大学 信息工程学院.
微机原理与接口技术 第5章 存储器 朱华贵 2015年11月05日.
计算机维修与维护 第三章 内存储器 教学目的: 教学重点(难点): 教学用具:各种类型内存储器若干 教学课时:2课时
computer organization principle
第5章 半导体存储器 存储器基本概念 随机存取存储器(RAM) 只读存储器(ROM) 存储器连接与扩充应用 微机系统的内存结构.
第4章 存 储 器 4.1 概述 4.2 主存储器 4.3 高速缓冲存储器 4.4 辅助存储器 本章主要知识点小结.
逆向工程-汇编语言
CPU结构和功能.
第12章 半导体存储器 孙卫强.
Computer Inside/Outside
第2章 计算机基本硬件介绍及选购 2.1 主板 2.2 中央处理器CPU 2.3 内存.
任务一:初识计算机 任务二:学习计算机中的信息表示 P /4/7.
第7章 半导体存储器 7.1半导体存储器的特点和分类 半导体存储器的特点 集成度高,体积小 可靠性高,价格低
第6章 存储器接口 6.1 存储器概述 6.2 半导体存储器 6.3 MCS-51单片机存储器扩展.
第5章 存储器 5.1 存储器概述 5.2 半导体存储芯片结构及使用 位系统的存储器接口.
(Random Access Memory)
第二章 补充知识 2.1 总线和三态门 一、总线(BUS) 三总线结构 数据总线DB(Data Bus)
第七章 半导体存储器.
猜數字遊戲.
第10章 存储器接口 罗文坚 中国科大 计算机学院
第六章 記憶體.
第八章 总线技术 8.1 概述 8.2 局部总线 8.3 系统总线 8.4 通信总线.
7.1 AT89C51最小应用系统 从本质上讲,单片机本身就是一个最小应用系统。由于晶振、开关等器件无法集成到芯片内部,这些器件又是单片机工作所必需的器件,因此,由单片机与晶振电路及由开关、电阻、电容等构成的复位电路就是单片机的最小应用系统。如图7-1所示,AT89C51片内有Flash程序存储器,由它构成的最小应用系统简单可靠。
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
第三章 半导体存储器及其接口 第一节 概述 第二节 半导体存储器 第三节 半导体存储器与CPU接口 一、存储器的分类
第 7 章 存储器.
第九章 存储器和可编程逻辑器件 本章主要内容 半导体存储器 只读存储器 随机存取存储器 存储器容量的扩展 可编程逻辑器件
電腦硬體(一) 電腦的外觀 電腦的周邊設備 鍵盤 滑鼠 磁碟機 2019/9/9 明誠中學製作.
第四章:内存储器接口的基本技术 主讲教师:范新民.
第三章 计算机体系结构.
Presentation transcript:

第五章 存储系统 5.1 存储器的构成 5.2 存储系统的构成 5.3 Cache 5.4 虚拟存储器

存储器芯片分类 RAM –SRAM Static random access memory –DRAM Dynamic random access memory ROM Read only memory

1. SRAM 存储器芯片结构

SRAM 存储器芯片结构

SRAM 芯片的引脚信号 SRAM 芯片的控制信号: ADD – 地址信号,在芯片手册中通常表示为 A0 , A1 , A2 , … 。 CS – 芯片选择,低电平时表示该芯片被选中。 WE – 写允许,低电平表示写操作,高电平表示读操作。 Dout – 数据输出信号,在芯片手册中通常表示为 D0 , D1 , D2 , … 。 Din – 数据输入信号。 OE – 数据输出允许信号。

SRAM 时序 读周期: – 地址有效  CS 有效  数据输出  CS 复位  地址撤销 写周期: – 地址有效  CS 有效  数据有效  CS 复位(数据输入)  地址撤销

SRAM 产品实例 —— K6R400V1D CMOS SRAM 1Mx4Bit With OE#

Timing Specification

Functional Description

Package Dimensions

2. DRAM 存储器芯片结构

DRAM 存储器芯片结构

DRAM 芯片的引脚信号

DRAM 时序(一) 读周期: – 行地址有效  行地址选通  列地址有效  列地址选通  数据输出  行选通、 列选通及地址撤销

DRAM 时序(二) 写周期: – 行地址有效  行地址选通  列地址、数据有效  列地址选通  数据输入  行 选通、列选通及地址撤销

DRAM 时序(三) 刷新周期: –RAS only :刷新行地址有效  RAS 有效  刷新行地址和 RAS 撤销 –CAS befor RAS : CAS 有效  RAS 有效  CAS 撤销  RAS 撤销 –hidden :(在访存周期中) RAS 撤销  RAS 有效

DRAM 时序(四) 刷新周期: –RAS only :刷新行地址有效  RAS 有效  刷新行地址和 RAS 撤销 –CAS befor RAS : CAS 有效  RAS 有效  CAS 撤销  RAS 撤销 –hidden :(在访存周期中) RAS 撤销  RAS 有效

DRAM 时序(五) 刷新周期: –RAS only :刷新行地址有效  RAS 有效  刷新行地址和 RAS 撤销 –CAS befor RAS : CAS 有效  RAS 有效  CAS 撤销  RAS 撤销 –hidden :(在访存周期中) RAS 撤销  RAS 有效

DRAM 接口电路

RAM 芯片技术 快速页式 DRAM (页:单元行) EDO DRAM EDRAM 缓存型 四位元型 SDRAM —— 采用统一时钟,重叠访问 Rambus DRAM —— 采用新的接口,用消息传递的异步通信协议

SDRAM 标准的接口命令 表示为 CKE 、 nCS 、 nRAS 、 nCAS 、 nWE 信号的组合 模式寄存器设置( MRS ) – 地址线上传输设置命令 存储器激活( ACT ) – 传送行地址 读( READ )或写( WRITE ) – 传送列地址和体地址 预充电所有存储体( PALL ) 预充电一个存储体( PRE ) 自动刷新( CBR ) 关电( PWRDN ) 自我刷新( SLFRSH ) – 睡眠时的刷新 退出关电( PWRDNX ) 无操作( NOP )

SDRAM 接口命令的编码

SDRAM 的时序 预充电 激活 读数据猝发

DDR 与 DDR2

3. ROM 存储器芯片结构

ROM 存储器芯片结构

熔丝式 ROM —— PROM

可擦写 ROM —— EPROM

MOS 晶体管与 EPROM 单元的两种工作状态

电可擦写 ROM——EEPROM 及 Flash 存储器

Flash 存储器 1 transister per cell NOR type –Word read –Word program ( 10 us ) –Block erase ( 0.5 s ) NAND type –Page read ( 10 us ) –Page program ( 200 us ) –Block erase ( 2m s )

NOR and NAND type Flash

Flash 芯片结构

NVRAM

相联存储器 —— 框图

相联存储器 —— 单元结构

相联存储器 —— 阵列的构成

相联存储器 —— 访问实例

5.2 存储器的构成

位扩展 芯片的地址线数: 18 存储器的结构 256Kx32 容量: 1MB CPU 的有效地址位数: 20 位字节地址 每个芯片的地址范围相同 kx1 ……256kx1

位扩展

字扩展

存储器芯片引脚数 : 18 存储器结构: 2Mx8 CPU 有效地址线数: 21 每个芯片的地址范围不同 256Kx8 …...

字扩展

问题 字扩展中,求每个芯片的地址范围 字扩展中,求整个存储器的地址范围 如果用超出存储器地址范围的地址访存,会 出现什么情况?

字位扩展

例 1 某计算机的主存地址空间中,从地址 到 3FFF 16 为 ROM 存储区域,从 到 5FFF 16 为保留地址区域,暂时 不用,从 到 FFFF 16 为 RAM 地址区域。 RAM 的控制信 号为 CS# 和 WE# , CPU 的地址线为 A15~A0 ,数据线为 8 位 的线路 D7~D0 ,控制信号有读写控制 R/W# 和访存请求 MREQ# ,要求: (1) 画出地址译码方案。 (2) 如果 ROM 和 RAM 存储器芯片都采用 8K×1 的芯片,试画 出存储器与 CPU 的连接图。 (3) 如果 ROM 存储器芯片采用 8K×8 的芯片, RAM 存储器芯 片采用 4K×8 的芯片,试画出存储器与 CPU 的连接图。 (4) 如果 ROM 存储器芯片采用 16K×8 的芯片, RAM 存储器 芯片采用 8K×8 的芯片,试画出存储器与 CPU 的连接图。

(1) 画出地址译码方案 解: (1)

(2) 如果 ROM 和 RAM 存储器芯片都采用 8K×1 的芯片,试画出存储器 与 CPU 的连接图。 解: (2) 8KB 的存储区域可以用 8 片存储器芯片构成一组实现。 8K×1 的存储器芯片的 地址线需要 13 条,即 A12~0 。

(3) 如果 ROM 存储器芯片采用 8K×8 的芯片, RAM 存储器芯片采用 4K×8 的芯片,试画出存储器与 CPU 的连接图。 解:( 3 )

(4) 如果 ROM 存储器芯片采用 16K×8 的芯片, RAM 存储器芯片采用 8K×8 的芯片,试画出存储器与 CPU 的连接图。 解:( 4 )

例 2 某计算机系统的主存采用 32 位字节地址空间和 64 位数据线访问存 储器,若使用 64M 位的 DRAM 芯片组成该机所允许的最大主存空间, 并采用内存条的形式,问: (1) 若每个内存条为 64M×32 位,共需多少内存条? (2) 每个内存条内共有多少片 DRAM 芯片? (3) 主存共需多少 DRAM 芯片? (4) CPU 如何有选择地访问各内存条? 解: (1) 主存最大空间为 2 32 =4GB ,每个内存条的容量为 64×4B = 256MB ,主存需要的内存条数量为 4GB/256MB=16 条。 (2) 每个芯片的容量为 8MB ,内存条需要的芯片数量为 256MB/8MB = 32 片。 ( 3 ) 整个主存需要的内存芯片数量是 16×32=512 片。 (4) 由于 CPU 字长为 64 位,内存条需要进行位扩展,即 2 个 32 位 的内存条构成一组 64 位的存储单元组, 16 个内存条构成 8 组,为 选择这 8 组内存条, CPU 地址中需要用最高 3 位地址作为产生选 择信号的地址码。

例 3 假定计算机系统需要 512 字节 RAM 和 512 字节 ROM 容 量。使用的 RAM 芯片是 128 字 ×8 位, ROM 芯片为 512 字 ×8 位。 RAM 芯片有 CS* 及 WE* 控制端, ROM 芯片有 CS* 控 制端, CPU 有地址线 A15~A0 、数据线 D7~D0 、读写控制 线 RW* 等,试确定各存储器芯片的地址区间,指出存储 器以及各存储器芯片需要的地址线数量,并画出存储器 与 CPU 的连接图。 解:各存储器芯片的地址区间:

存储器的总容量为 1KB ,需要 10 条地址线。 RAM 芯片需要 7 条信号线 (2 7 =128) , ROM 芯片需要 9 条 地址线 (2 9 =512) 。 存储器与 CPU 的连接图 CPU MREQ# A 15 ~A 0 R/W# D 7 ~D 0 128x8 WE A CS D 7 ~D 0 128x8 WE A CS D 7 ~D 0 128x8 WE A CS D 7 ~D 0 128x8 WE A CS D 7 ~D 0 512x8 A CS D 7 ~D decodeA7A8A9A7A8A9 A 6 ~A 0 A 8 ~A 0 &

全译码与部分译码 全译码 – 所有 CPU 高位地址线均参与对存储单元的译码寻址 – 低位地址线对芯片内各存储单元的译码寻址 片内译码 – 高位地址线对存储芯片的译码寻址 片选译码 – 每个存储单元的地址都是唯一的 不存在地址重复 部分译码 – 部分高位地址线参与对存储单元的译码寻址 – 存在地址段内容重叠 每个单元有多个地址 0 M-1 nM M

全译码的实现 与门 地址比较器 A21 A22 A23 A24 A25 A26 A27 A28 A29 A30 A31 > = < A17 A18 A19 A20 CE10 CE9 CE8 CE7 CE6 CE5 CE4 CE3 CE2 CE1 CE0 MREQ

字选择与字节选择 字选择 – 以字为单位访问存储器 – 位数等于存储器的字长 – 低位地址不需要 字节选择 – 可以以字节为单位访问存储器 – 低位地址用于选择字节

字节选择的实现 A0 A1

字位扩展中的字节选择 A0 A1 A0 A1 A0 A1 A26 A24 A25 MREQ A31 A29 A30 ≤1 A28 A27

习题

5.3 Cache 访存局部性 – 时间局部性 – 空间局部性 层次化结构 –cache – 主存 – 辅存

Cache 的基本概念 命中、命中率、失效、失效率、块、命中访问 时间、失效访问时间 (miss penalty)

Cache 设计问题 地址映象 替换策略 更新策略 容量

地址映象与变换 1. 直接映象

1. 直接映象 块地址的概念 存储容量、块数、块容量与地址格式中区号、块号、块内地址位 数的关系。 访问 cache

1. 直接映象

直接映像 cache 的实现

例 设有一个 cache 的容量为 2K 字,每个块为 16 字,求 (1) 该 cache 可容纳多少个块? (2) 如果主存的容量是 256K 字,则有多少个块? (3) 主存的地址有多少位? cache 地址有多少位? (4) 在直接映像方式下,主存中的第 i 块映像到 cache 中哪一个块中? (5) 进行地址映像时,存储器的地址分成哪几段?各段分别有多少位? 解: (1) cache 中有 2048/16=128 个块。 (2) 主存有 256K/16=16384 个块。 (3) 主存容量为 256K=2 18 字,字地址有 18 位。 cache 容量为 2K=2 11 字,字地址为 11 位。 (4) 在直接映像方式下,主存中的第 i 块映像到 cache 中第 i mod 128 个 块中。 (5) 区号 7 位,块号为 7 位,块内字地址为 4 位。 区号 块号块内地址

2. 全相联映像

N = 区内块数,阴影区表示查找范围

全相联映像的实现

2. 全相联映像

3. 组相联映像 n 路组相联:组内有 n 块

3. 组相联映像 N = 区内块数,阴影区表示查找范围,根据组号在块表中寻找组,组 内相联查找。

组相联映像的实现 区号组号块号块内

组相联映像的实现

3. 组相联映像 例:设有 8 个块,分成 2 个组

3. 组相联映像 例:设有 8 个块,分成 4 个组

替换策略及更新策略 替换策略 – 随机法 – 先进先出法 – 近期最少使用法 近期最久未使用法

替换策略及更新策略 先进先出替换策略

替换策略及更新策略 近期最久未使用替换策略

替换策略及更新策略 颠簸现象 Cache QoS

替换策略及更新策略 3. 更新策略 cache 命中时 – 写直达法 – 写回法 cache 失效时 – 按写分配法 – 不按写分配法 习题 : 22 , 23 , 27 , 33 , 34

5.4 虚拟存储器 作用 – 分隔地址空间 – 解决主存的容量问题 – 程序的重定位 与 cache 的区别 – 替换策略 – 实现方式

5.4 虚拟存储器 分类 – 页式 – 段式 – 段页式

页式虚拟存储器 页、页框架、基号、页表、虚页号

页式虚拟存储器 与块表的区别:基号,表长,查找方式,装入位 问题:页表过长

例:某计算机的页式虚存管理中采用长度为 32 字的页面。 页表内容如下表所示,求当 CPU 程序按下列 2 进制虚拟字 地址访存时产生的实际字地址。 (1) (2) (3)

答:页面长度为 32 字,则页内地址 5 位, 8 位地址码中的高 3 位为虚页号,从表中查出 2 位实页号,与页内地址合并构 成 7 位实际物理内存的地址。 (1) 虚页号为 000 ,查得实页号 01 ,与页内地址 合并, 得 。 (2) 虚页号为 100 ,查得实页号 10 ,与页内地址 合并, 得 。 (3) 虚页号为 001 ,查得该页未装入内存,没有相应的内存 地址。

Questions 页式虚拟存储器采用什么地址映像方式? 页表为什么大? 页表放在哪里?用什么方式查找?

二级页表 Two-level Page Tables 32-bit address: P1 indexP2 indexpage offest 4 bytes 4KB K PTEs ° 2 GB virtual address space ° 4 MB of PTE2 – paged, holes ° 4 KB of PTE1

倒排页表 Inverted Page Tables –IBM System 38 (AS400) implements 64-bit addresses. –48 bits translated V.Page P. Frame hash Virtual Page =

段式虚拟存储器 段表:段基址、段长、装入位、访问方式

Questions 段式虚拟存储器如何解决页式虚拟存储 器中的问题? 段式虚拟存储器存在什么问题? In all affairs it’s a healthy thing now and then to hang a question mark on the things you have long taken for granted Bertrand Russell

段页式虚拟存储器

Questions 段页式虚拟存储器的页表有多大? 段页式虚拟存储器有什么问题? 学而不思则罔 思而不学则殆

虚存管理策略 虚存设计的关键 – 页面失效问题 – 地址变换速度 快表 TLB – 段表和页表的 cache – 根据基号、段号、页号对快表进行全相联查找 – 引用位 —— TLB 替换标志, OS 定期清除 – 浊位 —— 数据修改标志 一级 TLB 与二级 TLB –Intel P4 has 128 entries TLB –AMD Opteron L1 TLBs have 40 entries L2 TLB have 512 entries

TLB 的查找

习题 43