北航 计算机组成原理 第二部分:存储系统-2
存储系统(part2)
2.2 存储芯片内部结构
存储芯片结构(一维地址结构)
1024×2 :1024 个字单元,每个字单元 2 个二进制位。
D0 D1
A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
W0
译 码 电 路
W1 W2
W1203
2.2 存储芯片内部结构
存储芯片结构(一维地址结构)
1024* 1 :1024 个字单元,每个字单元 1 个二进制位。
辅助存储器
控制存储器
1.1 存储系统概述
存储器的性能指标
访问时间(Access Time):TA
随机访问存储器:访问时间指读或写操作所用时间,即从给定地 址到存储器完成读或写操作所需时间。 其他类型:指将读写机构定位到目标位置所需的时间。 存储周期(Cycle Time):TC 仅对RAM而言,指两次访问存储器单元之间的最小时间间隔。 TC > TA
W 127
D0 D1 D2 D3
行地 址
Y0
Y1
Y 31
列 地 址
Y译码
A7
A8
A9
A 10 A 11
2.2 存储芯片内部结构
一.存储系统概述 二.主存储器的组成与工作原理 三.高速缓冲存储器的结构与工作原理 四.辅助存储器(磁表面存储器) 五.虚拟存储系统
2.1 存储单元电路
基本要求
具有两种稳定(或半稳定)状态,用来表示 二进制的 1 和 0 ;
可以实现状态写入(或设置); 可以实现状态读去(或感知)。
A0 A1 A2
译 码 电 路
W0 W1 W2
存储单元 电路
存储器 地址
A9
W 1023
北航在线作业计算机组成原理答案2
第1题 某SRAM芯片,其存储容量为64K×16位,该芯片的地址线和数据线数目为___。
A、64,16
B、16,64
C、64,8
D、16,16
答案:D
第2题 常用的虚拟存储系统由___两级存储器组成。
A、主存—辅存
A、数据缓存
B、数据转换
C、状态设置
D、完成算术及逻辑运算
答案:D
多项选择题
第13题 在机器数___中,零的表示形式是唯一的。
A、原码和补码
B、反码
C、移码
D、补码
答案情况下,ROM和RAM在存储体中是统一编址的。
正确
错误
答案:正确
第20题 Cache是内存的一部分,它可以由指令直接访问。
正确
错误
答案:错误
正确
错误
答案:错误
第17题 控制存储器是用来存放微程序的存储器,它应该比主存储器速度快。
正确
错误
答案:正确
第18题 因为动态存储器是破坏性读出,所以必须不断地刷新。
正确
错误
答案:错误
第4题 下列元件中存取速度最快的是___。
A、Cache
B、寄存器
C、内存
D、外存
答案:B
第5题 对于没有外存储器的计算机来说,监控程序可以存放在___。
A、DRAM
B、SRAM
C、闪速存储器
D、EPROM
B、左端口与右端口的地址码相同
C、左端口与右端口的数据码不同
D、左端口与右端口的数据码相同
答案:B
第11题 主机、外设不能并行工作的是___。
北航北海学院计算机组成原理实验二
计算机组成原理实验报告实验名称双端口存储器原理实验班级:学号:姓名:指导教师:完成日期:成绩:一、实验目的1.了解双端口静态存储器IDT7132的工作特性及其使用方法2.了解半导体存储器怎样存储和读取数据。
3.了解双端口存储器怎样并行读写,并分析冲突产生的情况。
二、实验电路图3.2 双端口存储器实验电路图图3.2示出了双端口存储器的实验电路图。
这里使用一片IDT7132(2048×8位),两个端口的地址输入A8-A10引脚接地,因此实际使用的存储容量为256字节。
左端口的数据输出接数据总线DBUS,右端口的数据输出端接指令总线IBUS。
IDT7132有六个控制引脚:CEL#、LR/W#、OEL#、CER#、RR/W#、OER#。
CEL#、LR/W#、OEL#控制左端口读、写操作;CER#、RR/W#、OER#控制右端口的读写操作。
CEL#为左端口选择引脚,低电平有效;当CEL#=1时,禁止对左端口的读、写操作。
LR/W#控制对左端口的读写。
当LR/W#=1时,左端口进行读操作;LR/W#=0时,左端口进行写操作。
OEL#的作用等同于三态门,当OEL#=0时,允许左端口读出的数据送到数据总线DBUS上;当OEL#=1时,禁止左端口的数据放到DBUS。
因此,为便于理解,在以后的实验中,我们将OEL#引脚称为RAM_BUS#。
控制右端口的三个引脚与左端口的三个完全类似,这里不再赘述。
有两点需要说明:(1)右端口读出的数据(更确切的说法是指令)放到指令总线IBUS上而不是数据总线DBUS,然后送到指令寄存器IR。
(2)所有数据/指令的写入都使用左端口,右端口作为指令端口,不需要进行数据的写入,因此我们将右端口处理成一个只读端口,已将RR/W#固定接高电平,OER#固定接地。
这两点请同学好好理解。
存储器左端口的地址寄存器AR和右端口的地址寄存器PC都使用2片74LS163,具有地址递增的功能。
同时,PC在以后的实验当中也起到程序计数器的作用。
计算机组成原理-存储系统(2)虚拟存储器
❖ 主存的物理空间划分为等长的固定区域,称
为页面。页式管理以固定大小(通常为4KB) 的页面为单位。
程序按页面大小划分
主存用户空间的 页面数目
0页
第0页
1页
第1页
2页
第2页
3页
4页
第3页
5页
6页
6
页的管理----页表
程序的页号 0 1 2 3 4 5 6
主存的页号 0 2 3
1
装入位 1 1 1 0 0 0 1
701203042300321201701
7 0 01 23 04 2 2 2 23 00 01 2 7 7 0 1 12 30 42 3 3 3 30 11 12 7 0 7 0 1 2 23 04 23 0 0 0 01 22 27 0 1
27
✔ ✔ ✔ ✔ ✔
✔
页面常用的调度算法
❖LRU Algorithm
24
分页
❖ Pentium的分页方法:
把4GB的线性地址空间分位1024个页组, 每个页组有自己的页表,每个页表的长度为 4MB。每个页表包含了1024项,每项对应于 4KB大小的页面。
31
22 21
12 11
0
一级页表目录 二级页表目录 偏移量
•TLB:保持32个页表项。 25
分段和分页的组合
内存中—慢表
14
段式虚拟存储器
❖ 主存和辅存的管理按程序段为单位进行管理。
程序空间 大小
段1 1K 段2 2K
段3 3K 段4 1K 段5 2K
主存空间
段1 段5
地址 0 1K
3K
5K 段3
8K-1
段表
1 0 1 1K
计算机组成原理第十二讲(存储子系统二)
College of Computer Science, SWPU
磁表面存储器
调相制(PE)
I 0
0 0 1 1 0 1 t
写1时中间电流正跳变,写0时中间电流负跳变。 转变区多,有自同步能力。 用于常规磁带机。
调频制(FM)
I 0 0 0 1 1 0 1
t
写1时电流变二次,写0时电流变一次。起始变方向 转变区多,有自同步能力。 用于早期磁盘。
磁表面存储器
寻址信息 驱动器号、圆柱面号、磁头号、扇区号(记 录号)、交换量。 选择盘面
选择磁盘组 扇区数 选择磁道
选择起始扇区
计算机组成原理
College of Computer Science, SWPU
磁表面存储器
设某磁盘有两个记录面,存储区内直径为 2.36英寸,外直径为5英寸,道密度为1 250TPI(TPI:磁道数/英寸),内直径 处的位密度为52400bpi(bpi:位/英寸), 转速为2400rpm(rpm:转/分)。请解答: (1)每面有多少个磁道,每磁道能存储多 少字节? (2)数据传输率是多少? (3)磁盘的寻址信息?
计算机组成原理
College of Computer Science, SWPU
College of Computer Science, SWPU
磁表面存储器
群码制(GCR)——GCR(4,5) 记录码中连续的0不超过2个; 记录码按NRZ1方式写入。 转变区少,有自同步能力。 用于数据流磁带机。
计算机组成原理
College of Computer Science, SWPU
计算机组成原理
College of Computer Science, SWPU
北航计算机组成原理
北航计算机组成原理计算机组成原理是计算机科学与技术专业的一门重要课程,它主要研究计算机硬件组成的基本原理和方法。
北航计算机组成原理课程的目标是让学生深入了解计算机的工作原理,掌握计算机硬件的结构和功能,为后续的计算机体系结构、操作系统和编译技术等课程打下坚实的基础。
计算机是由许多硬件组件组成的,包括中央处理器(CPU)、内存、输入输出设备、存储设备等。
北航计算机组成原理课程首先介绍了计算机的基本组成和工作原理。
计算机的核心是中央处理器,它由运算器、控制器和寄存器组成。
运算器负责进行算术和逻辑运算,控制器负责指挥计算机的各个部件进行工作,寄存器用于存储数据和指令。
学生需要深入了解中央处理器的工作原理和各个部件之间的协作关系。
内存是计算机的重要组成部分,它用于存储数据和指令。
北航计算机组成原理课程介绍了内存的层次结构和存储器的工作原理。
内存按照访问速度和成本的不同可以分为多层次,包括高速缓存、主存和辅助存储器。
学生需要了解不同层次内存之间的数据传输和访问方式,以及如何提高访问速度和提高存储容量。
输入输出设备是计算机与外界交互的接口,包括键盘、鼠标、显示器、打印机等。
北航计算机组成原理课程介绍了输入输出设备的原理和接口技术。
学生需要了解输入输出设备的工作原理和数据传输方式,以及如何进行设备的控制和管理。
存储设备是计算机用于长期存储数据和程序的设备,包括硬盘、固态硬盘、光盘等。
北航计算机组成原理课程介绍了存储设备的原理和存储器的层次结构。
学生需要了解不同存储设备之间的特点和应用场景,以及如何进行数据的读写和管理。
北航计算机组成原理课程还介绍了计算机的指令系统和微程序设计。
指令系统是计算机硬件与软件之间的桥梁,它规定了计算机可以执行的指令和编程的方式。
微程序设计是一种指令系统的实现方式,它将指令分解为一系列微操作,并通过微指令控制计算机的各个部件。
学生需要了解指令系统的设计原则和微程序设计的实现方法。
北航计算机组成原理课程涵盖了计算机硬件的基本原理和方法。
北航计算机组成原理总复习
北航计算机组成原理总复习计算机组成原理是计算机科学与技术专业的一门重要课程,它主要研究计算机的基本原理、结构和工作原理。
下面将对北航计算机组成原理进行总复习,包括计算机的基本组成、存储器层次结构、指令系统和流水线技术等方面内容。
一、计算机的基本组成1.计算机硬件的五大基本组成部分:运算器、控制器、存储器、输入设备、输出设备。
2.计算机内部采用二进制表示,包括数据和指令都以二进制形式存储和处理。
3.计算机的性能指标:主频、存储容量、主存储器带宽、硬盘容量等。
二、存储器层次结构1.存储器层次结构的由低到高依次为:寄存器、高速缓存、主存储器、辅助存储器。
2.高速缓存的工作原理:利用时间和空间局部性原理,存放主存频繁访问的数据和指令,提高存储器访问速度。
3.主存储器的特点和访问方式:存储速度较快,采用随机访问方式。
三、指令系统1.指令系统的主要组成部分:操作码和地址码。
2.指令系统的类型:-RISC(精简指令集):指令长度固定,时间分布均匀,指令执行周期较短。
-CISC(复杂指令集):指令长度可变,时间分布不均匀,指令执行周期较长。
-MISC(微指令集):指令长度短,指令执行周期较短。
3.指令寻址方式:立即寻址、直接寻址、间接寻址、寄存器寻址等。
四、流水线技术1.流水线的概念:将指令的处理过程分成多个步骤,使多条指令可同时执行。
2.流水线的五个阶段:取指令、指令译码、执行指令、访存取数、写回结果。
3.流水线的优点:提高了指令的执行效率,缩短了执行时间。
4.流水线的冒险和解决方法:-结构冒险:通过优化硬件结构来解决,如增加多个运算器、加大寄存器容量等。
-数据冒险:通过转发、插入空指令、延迟加载等方法解决。
-控制冒险:通过分支预测和延迟分支等方法解决。
五、中断与异常1.中断:来自外部设备的信号,打断正常的程序执行。
-可屏蔽中断:可以根据需要屏蔽一些中断。
-不可屏蔽中断:无法屏蔽的中断,如计算机硬件故障等。
2.异常:指程序在执行过程中出现的错误或意外情况。
北航计算机组成原理总复习
CPU
Word
Block
Cache
Main Memory
9
高速缓冲存储器(Cache)的原理
Cache的基本结构
¾存储机构:保存数据,存取数据,一般采用SRAM构成。以Block
(若干字)为单位; ¾地址机构:地址比较机制,地址转换机制,地址标记(Tag),一
个Block具有一个Tag; ¾替换机制:记录Block的使用情况,替换策略,有效位(v)记录对
括寻址模式编码。有时操作数是隐含的。 ¾寻址方式数量:有时寻址方式可以是隐含的(由操作
码决定) 。 ¾寄存器数量 :确定寄存器编码的位数。 ¾地址范围:存储器直接寻址很少见,但变址(或基
址)寻址时,较大的寻址范围必须以较多的 displacement位数为前提。 ¾编址粒度(Address Granularity):字节编址或字编址。 字节编址方便,但要以更多的地址位数为代价。
¾先进先出法(FIFO,First-In-First-Out):最先装入数据的块被替换 ¾最小使用频率法 (LFU,Least-Frequently Used):记录每一个数据块
的使用频率,使用次数最少的被替换 ¾随机法(RAND,Random):随机选择一个数据块进行替换
15
16
Cache的容量
Cache的容量 ¾不作特殊申明时,Cache的容量指Cache所有数据块的容量 ¾Cache实际总的存储容量实际上还包含tag和valid bit的位数
3
存储单元电路
SRAM存储单元电路
DRAM存储单元电路
SRAM的特点 ¾触发器原理 ¾集成度低 ¾功耗大
DRAM的特点 ¾电容充放电原理 ¾集成度高 ¾功耗小 ¾需要刷新(读、放大、再写入)
计算机组成原理第3章 存储系统2
浮栅
G
Floating Gate G
G
D
G
计算机科学与技术学院 体系结构中心
S Schematic symbol
9
光擦可编程只读存储器(EPROM)
这种EPROM做成的片子封装 上方有一个石英玻璃窗口。
在强紫外线光照射下,使氧化 层变得具有导电性,且浮栅上 的电子变得更活跃,从而穿过 氧化层回到衬底中,使电路恢 复起始状态,即把原先写入的 “0”信息擦去。
加的编程电压大小。
I
-10 V
10 V
V GD
计算机科学与技术学院 体系结构中心
21
EEPROM(3)
在实现中,增加相邻的场效应管来实现存取
与EPROM相比,集成度低
BL
2 晶体管/per cell
寿命长
WL
105 erase/write cycles.
VDD
计算机科学与技术学院 体系结构中心
1989年Toshiba公司发明了NAND闪存,擦除写入时间较快, 与NOR闪存比较具有较高的密度和较低的位成本,10倍的擦除 次数。但I/O接口只允许顺序存取数据。 适用于高容量存储设 备,例如各种存储卡(MMC、Memory Stick)、U盘。 NAND闪存很少用作计算机的存储器。
计算机科学与技术学院 体系结构中心
Vcc 地
Vpp
片选,功率下 降/编程逻辑
Y译码
输出缓冲器 Y门
A0-A10 地址输入
X译码
2K×8位 存储矩阵
ห้องสมุดไป่ตู้
… ……
计算机科学与技术学院 体系结构中心
11
Intel 2716的工作模式
PD/PGM
北京航空航天大学计算机组成原理与体系结构复习重点
第8章 异常控制流
• 信号处理方式;分析可能的输出 • 几个特殊函数 • 进程控制:fork,wait,画图分析可能的输出
第9章 虚拟存储器
• 动态存储器分配中的概念: 碎片,放置、合并策略,垃圾收集
• 地址翻译;多级页表
计算机组成与体系结构 复习
第2章 信息的表示和处理
• 十进制、二进制、十六进制 • 整数:无符号数、有符号数(补码) • 浮点数:形式;编码、求值、舍入 • 32位和64位系统中各类型数据的长度 • 不同类型数据的转换(符号、长度) • 补码的不对称;正负;求正数负值的补码 • 整数运算:有无符号混合、比较、除法舍入、
第5章 优化程序性能
• 会利用数据流图中的关键路径分析程序性能 • 掌握提高并行性的方法:
循环展开,多个累计变量,重新结合变换 • 使用条件传送 • 写/读相关对程序性Βιβλιοθήκη 的影响第6章 存储器层次结构
• 高速缓存结构、访问、命中
第7章 链接
• 全局、本地符号的概念 • static • 强弱符号 • 重定位
逻辑/算术右移 • 大端、小端
第3章 程序的机器级表示
• 寄存器及其默认用法;eip • 栈帧结构;过程调用时的参数传递、返回地址 • 返回时leave指令;栈帧变化 • leal指令 • 引起缓冲区溢出的函数 • 数组访问:由汇编代码得到数组列数 • 结构体和联合体:对齐;嵌套;各字段偏移量 • switch语句:跳转表 • 指针运算的缩放
计算机组成原理第二版
计算机组成原理第二版
计算机的基本组成部分可以分为五个主要部分:中央处理器(CPU)、存储器、输入设备、输出设备和控制器。
这些组件共同协作,实现计算机的功能。
首先,中央处理器(CPU)是计算机的核心。
它包含算术逻辑单元(ALU)和控制单元(CU)。
ALU负责执行算术和逻辑
运算,而CU则负责控制和协调各个组件的工作。
其次,存储器在计算机中起到存储数据和指令的作用。
它分为主存储器和辅助存储器两部分。
主存储器包括随机访问存储器(RAM)和只读存储器(ROM),用于存储正在运行的程序
和数据。
辅助存储器则包括硬盘、光盘等,用于长期存储数据。
输入设备用于将外部信息输入到计算机中。
常见的输入设备包括键盘、鼠标和扫描仪等。
通过这些设备,用户可以向计算机输入数据和指令。
输出设备则用于将计算机处理后的结果显示给用户。
常见的输出设备有显示器、打印机和喇叭等。
通过这些设备,计算机可以将处理后的数据和信息以可读的形式呈现给用户。
最后,控制器起到协调各个组件工作的作用。
它通过时序信号和控制信号,控制中央处理器、存储器、输入输出设备等之间的数据传输和操作。
在计算机的运行过程中,中央处理器会读取存储器中的指令,
并对其进行解析和执行。
它还负责处理输入设备传来的数据,并将结果输出到输出设备。
总之,计算机的组成原理是一个复杂而庞大的系统。
了解这些基本组件的功能和工作原理,有助于我们更深入地理解计算机的运行过程。
北航计算机组成原理课件
操作码
操作数地址
11010101 10000100 01010001 10100000 程序:在此特指一段机器指令序列。
完成一定的功能,采用某种算法,具备一定的流程; 计算机按照程序所规定的流程和指令顺序,一条一条地执行指令,达到 完成程序所规定的功能的目的。 计算机采用程序计算器(Program Counter)来决定指令执行的顺序。
微操作信号 发生器 A B ID GR 存储器
IR
MAR
指令的执行过程
总线
Instruction Fetch
AC 微操作控制信号 PC MBR AC: 累加器 ALU:算术逻辑运算单元 A,B:缓冲器 GR: 通用寄存器 IR: 指令寄存器 ID: 指令译码器 PC: 程序计数器 MAR:地址寄存器 MBR:数据寄存器
08H
0AH 0CH 0EH 10H 12H 14H 16H 18H
ST
04H
Example
Y=ax2+bx-c 假定a,b,c,x均为已知数,且存放在内存中,求y。
指令
ADD
LD SUB MUL ST
操作码
00H
01H 02H 03H 04H
说明
AC (AC)+Mem(Add) AC Mem(Add)
1946年,冯· 诺依曼与同事开始研制 IAS,虽直到
1952年仍未完成,但该机结构被公认为随后发展 起来的通用计算机的原型。
Examples – PC (单总线结构)
普通PC(PC/XT)的内部结构
Examples – PC (多总线结构)
普通PC(Pentium)的内部结构
PCI Slots
运算器+控制器=CPU(Central Process Unit)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
14
3.2 Cache与主存之间的映射—全相联
❖全相联映射(Associative Mapping)
➢主存分为若干Block,Cache按同样大小分成若干Block,Cache中的Block 数目显然比主存的Block数少得多。
Block k-1 Set k
Block 2k-1
Block k-1
Block 2k-1
Block mk-1 19
3.2 Cache与主存之间的映射—组相联
❖组相联映射
➢主存的地址格式: 组内块地址 (tag) 组地址 块内偏移
➢Tag的内容:主存中与该Cache数据块对应的数据块的组内块地址。
❖组相联映射举例
有效位 tag
0 1 …… B-1 0 1 …… B-1
0 1 …… B-1
每组E行
组S-1
有效位 tag 有效位 tag
0 1 …… B-1 0 1 …… B-1
有效位 tag
0 1 …… B-1
Cache容量(字节数):B ×E ×S 12
3.1 高速缓冲存储器(Cache)的原理
❖Cache的读操作过程
➢程序运行时访问内存存在明显的局部性特征; ➢存在比主存普遍采用的DRAM速度更快的存储单元电路;
6
第二部分:存储系统
一. 存储系统概述 二. 主存储器的组成与工作原理 三. 高速缓冲存储器的结构与工作原理
1. 高速缓冲存储器(Cache)的原理 2. Cache与主存的映射 3. Cache的替换策略 4. Cache性能与其他 四. 辅助存储器(磁表面存储器) 五. 虚拟存储系统
比较 Hit
Block0 Block1
Blockn-1
18
3.2 Cache与主存之间的映射—组相联
❖组相联映射(Set Associative Mapping)
➢映射关系:Cache 分成 K 组,每组分成 L 块;主存的块 J 以下列原则映 射到 Cache 的组 I 中的任何一块。
I = J mod K ➢实际上主存与Cache都分成 K 组,主存每一组内的块数与Cache一组内的
换。
CPU
Word
Block
Cache
Main Memory
8
3.1 高速缓冲存储器(Cache)的原理
❖Cache要解决的问题
➢提供快速访问的能力; ➢具有存取数据的能力和与主存交换数据的能力; ➢由于CPU总是以主存地址访问存储器,所以Cache应具
备判断CPU当前要访问的内容是否在Cache中的能力, 并具有根据主存地址在Cache中访问相应单元的能力。 ➢具备在Cache容量不够的前提下替换Cache中的内容的 决策能力。
的将来仍将被访问
➢ 空间局部性(spatial locality):下次访问的存储单元很可能就
在刚刚访问的存储单元附近
4
存储访问的局部性原理 ❖程序示例
存储空间(M=3,N=4)
程序a 程序b
❖ 局部性分析
➢程序a:sum具有较好的时间局部性, 数组a的空间局部性较好;
➢程序b :sum具有较好的时间局部性, 数组a的空间局部性不好;
3.1 高速缓冲存储器(Cache)的原理
❖Cache结构示意
➢分S组 ➢每组E行 ➢每数据块包含B个字节
每行1个 每行1个 每行1个数据块(B个字节) 有效位 标记
有效位 tag 有效位 tag 组0
有效位 tag
0 1 …… B-1 0 1 …… B-1
0 1 …… B-1
有效位 tag 有效位 tag 组1
v Tag
Data Block
Block
v Tag
Data Block
v Tag
Data Block
v Tag
Data Block
Cache 的基本结构
Main Memory
Block
10
3.1 高速缓冲存储器(Cache)的原理
❖Cache的有关术语
➢数据块(block):Cache与主存的基本划分单位,也是主存与 Cache一次交换数据的最小单位,由多个字节(字)组成,取决与 主存一次读写操作所能完成的数据字节数。也表明主存于Cache之 间局部总线的宽度。
块数不一致, 主存组M内的某一块只能映射到Cache组M内,但可以是组M内 的任意一块。
Cache
Tag
Tag
Block 0 Set 0
Block k
Block 1 Set 1
Block k+1
Block 0 Block 1
Main Memory
Block k Block k+1
Block (m-1)k Block (m-1)k+1
1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000
处理器-DRAM存储器的性能差距
1000 100
10 1
“Moore’s Law”
µProc CPU 60%/yr.
开始
接收来自CPU的存 储器地址
Cache中包含 No 该数据块吗?
Yes
从Cache中读取数 据交CPU
从主存中读取数 据
在Cache 中分配一数据块
结束
当前数据交给CPU
从主存读取当前 数据块到Cache
13
第二部分:存储系统
一. 存储系统概述 二. 主存储器的组成与工作原理 三. 高速缓冲存储器的结构与工作原理
BLOCK 00001
BLOCK 00002
Cache
FFFFEFH FFFFF0H
FFFFFFH
BLOCK FFFFF
内存
17
3.2 Cache与主存之间的映射—全相联
Memory Address Block Number Offset
CACHE
Tag
Data
全 相 联 映 射 的
Cache 组 织
➢主存:1M Bytes ➢Cache:16K Bytes ➢Block:256 Bytes ➢Way : 4 Ways(Cache每组包含4个Block)
❖解答
➢Cache 组数= 214 ÷(28×22)= 24 =16 组 ➢主存每组块数= 220 ÷(28×24)= 28 =256 块/组 ➢主存地址:20 位,其中高8 位为组内块地址,中间4 位为组地址,低 8位
第二部分:存储系统
一. 存储系统概述 二. 主存储器的组成与工作原理 三. 高速缓冲存储器的结构与工作原理
1. 高速缓冲存储器(Cache)的原理 2. Cache与主存的映射 3. Cache的替换策略 4. Cache性能与其他 四. 辅助存储器(磁表面存储器) 五. 虚拟存储系统
1
Performance
9
3.1 高速缓冲存储器(Cache)的原理
❖Cache的基本结构
➢存储机构:保存数据,存取数据,一般采用SRAM构成。以Block (若干字)为单位;
➢地址机构:地址比较机制,地址转换机制,地址标标记(Tag), 一个Block具有一个Tag;
➢替换机制:记录Block的使用情况,替换策略,有效位(v)记录对 应数据块中的数据是否有效。
21
3.2 Cache与主存之间的映射—组相联
CACHE
组0
组1
组2
组F
00000H 000FFH 01000H 010FFH 02000H 020FFH 03000H 030FFH
FF000H FF0FFH
主存
00100H 001FFH 01100H 011FFH 02100H 021FFH 03100H 031FFH
7
3.1 高速缓冲存储器(Cache)的原理
❖ 在CPU与内存之间设置一个高速的容量相对小的存储机构,把CPU正 在访问的指令或数据附近一部分主存的内容复制在这个存储机构中, CPU直接访问该存储机构,提高了运行效率。这个存储机构就是高速
缓冲存储器(Cache)。 ❖Cache与主存之间按照数据块(Block)为单位进行数据交
FF100H FF1FFH
00200H 002FFH 01200H 012FFH 02200H 022FFH 03200H 032FFH
FF200H FF2FFH
00F00H 00FFFH 01F00H 01FFFH 02F00H 02FFFH 03F00H 03FFFH
FFF00H FFFFFH
22
为块内地址 ➢Cache的Tag应该为 8 位。
20
3.2 Cache与主存之间的映射—组相联
CACHE
组0
组1
组2
组F
00000H 000FFH 01000H 010FFH
主存
00100H 001FFH 01100H 011FFH
00200H 002FFH 01200H 012FFH
00F00H 00FFFH 01F00H 01FFFH
3.2 Cache与主存之间的映射—组相联
CACHE
03
组0
FF
组1
01
组2
02
03
组F
00000H 000FFH 01000H 010FFH 02000H 020FFH 03000H 030FFH
FF000H FF0FFH