第3章 多层次存储器_第1页
第3章 多层次存储器_第2页
第3章 多层次存储器_第3页
第3章 多层次存储器_第4页
第3章 多层次存储器_第5页
已阅读5页,还剩69页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第三章第三章 多层次的存储器多层次的存储器2目录目录3.1 存储器概述存储器概述(理解)(理解)3.2 SRAM存储器存储器(理解)(理解)3.3 DRAM存储器存储器(掌握)(掌握)3.4 只读存储器只读存储器 (理解)(理解)3.5 存储器扩展存储器扩展(掌握)(掌握)3.6 CACHE存储器存储器(掌握)(掌握)3学习要求学习要求l理解存储系统的基本概念理解存储系统的基本概念l熟悉主存的主要技术指标熟悉主存的主要技术指标l掌握主存储器与掌握主存储器与CPUCPU的连接方法的连接方法l理解理解CacheCache的基本概念及工作原理的基本概念及工作原理l掌握掌握Cache-Cache-主存

2、地址映射方法主存地址映射方法 43.1 存储器概述存储器概述l3.1.1 存储器分类存储器分类 l3.1.2 存储器的分级结构存储器的分级结构l3.1.3 存储器的技术指标存储器的技术指标53.1.1 存储器分类(存储器分类(1/3)l按存储介质分按存储介质分半导体存储器:用半导体器件半导体存储器:用半导体器件(MOS管管)组成的存储器;组成的存储器;磁表面存储器:用磁性材料磁表面存储器:用磁性材料(磁化作用磁化作用)做成的存储器;做成的存储器;l按存取方式分按存取方式分随机存储器:存取时间和存储单元的物理位置无关;随机存储器:存取时间和存储单元的物理位置无关;顺序存储器:存取时间和存储单元的

3、物理位置有关;顺序存储器:存取时间和存储单元的物理位置有关;系统主存、系统主存、Cache软盘软盘硬盘硬盘磁带磁带半导体半导体存储器存储器磁带磁带63.1.1 存储器分类(存储器分类(2/3)l按存储内容可变性分按存储内容可变性分只读存储器只读存储器(ROM)u只能读出而不能写入的半导体存储器;只能读出而不能写入的半导体存储器;随机读写存储器随机读写存储器(RAM):u既能读出又能写入的半导体存储器;既能读出又能写入的半导体存储器;l按信息易失性分按信息易失性分易失性存储器:断电后信息即消失的存储器;易失性存储器:断电后信息即消失的存储器;非易失性存储器:断电后仍能保存信息的存储器;非易失性存

4、储器:断电后仍能保存信息的存储器;半导体半导体存储器存储器半导体半导体存储器存储器磁盘磁盘光盘光盘73.1.1 存储器分类(存储器分类(3/3)l按在计算机系统中的作用分按在计算机系统中的作用分主存储器主存储器u能够被能够被CPU直接访问,速度较快,用于保存系统当前运行直接访问,速度较快,用于保存系统当前运行所需的所有程序和数据;所需的所有程序和数据;辅助存储器辅助存储器u不能被不能被CPU直接访问,速度较慢,用于保存系统中的所有直接访问,速度较慢,用于保存系统中的所有的程序和数据;的程序和数据;高速缓冲存储器(高速缓冲存储器(Cache)u能够被能够被CPU直接访问,速度快,用于保存系统当前

5、运行中直接访问,速度快,用于保存系统当前运行中频繁使用的程序和数据;频繁使用的程序和数据;半导体存储器半导体存储器磁盘、光盘存储器磁盘、光盘存储器半导体存储器半导体存储器83.1.2 存储器的分级结构存储器的分级结构高速缓冲存储器:高速小容量半导高速缓冲存储器:高速小容量半导体存储器体存储器存放计算机运行期间的大量程序和数据存放计算机运行期间的大量程序和数据内存:内存:CPUCPU可直接访问可直接访问的存储器的存储器外存:大容量辅助存储器。外存:大容量辅助存储器。用来存放系统程序和大型数用来存放系统程序和大型数据文件及数据库。据文件及数据库。9CPU缓存缓存主存主存辅存辅存缓存主存层次缓存主存

6、层次主存辅存层次主存辅存层次3.1.2 存储器的分级结构存储器的分级结构l系统对存储器的要求:系统对存储器的要求:大容量、高速度、低成本大容量、高速度、低成本l三级存储系统结构三级存储系统结构加上加上cachecache的目的为提高速度的目的为提高速度降低了成本,扩大了容量降低了成本,扩大了容量在在CPUCPU看来,容量相当于辅存容量,速度相当于看来,容量相当于辅存容量,速度相当于CACHECACHE速度。速度。103.1.3 主存储器的技术指标主存储器的技术指标存储容量存储容量l存储容量:指存储器能存放二进制代码的总数。存储容量:指存储器能存放二进制代码的总数。存储容量存储容量=存储单元个数

7、存储单元个数存储字长存储字长u用用ab表示表示l要求:要求:已知存储容量,能计算出该存储器的地址线和数据线的根数。已知存储容量,能计算出该存储器的地址线和数据线的根数。l例如例如某机存储容量为某机存储容量为 2K16,则该系统所需的地址线为,则该系统所需的地址线为 根,根,数据线位数为数据线位数为 根。根。1116113.1.3 主存储器的技术指标主存储器的技术指标存储速度存储速度l存取时间存取时间(访问时间访问时间) 从启动一次访问操作到完成该操作为止所经历的时间;从启动一次访问操作到完成该操作为止所经历的时间;以以ns为单位,存取时间又分读出时间、写入时间两种。为单位,存取时间又分读出时间

8、、写入时间两种。l存取周期存取周期存储器存储器连续启动两次独立的访问操作连续启动两次独立的访问操作所需的最小间隔时间。所需的最小间隔时间。l存储器带宽存储器带宽每秒从存储器进出信息的最大数量;每秒从存储器进出信息的最大数量;单位为位单位为位/秒或者字节秒或者字节/秒。秒。12求存储器带宽的例子求存储器带宽的例子l设某存储系统的存取周期为设某存储系统的存取周期为500ns,每个存取周期可,每个存取周期可访问访问16位,则该存储器的带宽是多少?位,则该存储器的带宽是多少?存储带宽存储带宽= 每周期的信息量每周期的信息量 / 周期时长周期时长 = 16位位/(500 10-9)秒秒 = 3.2 10

9、7 位位/秒秒 = 32 106 位位/秒秒 = 32M位位/秒秒133.2 SRAM存储器存储器l3.2.0 主存储器的构成主存储器的构成l3.2.1 基本的静态存储元阵列基本的静态存储元阵列l3.2.2 基本的基本的SRAM逻辑结构逻辑结构143.2.0 主存储器的构成主存储器的构成l静态静态RAM(SRAM)由由MOS电路构成的电路构成的双稳触发器双稳触发器保存二进制信息;保存二进制信息;优点:优点:访问速度快,只要不掉电可以永久保存信息;访问速度快,只要不掉电可以永久保存信息;缺点:缺点:集成度低,功耗大,价格高;集成度低,功耗大,价格高;l动态动态RAM(DRAM)由由MOS电路中的

10、电路中的栅极电容栅极电容保存二进制信息;保存二进制信息;优点:优点:集成度高,功耗约为集成度高,功耗约为SRAM的的1/6,价格低;,价格低;缺点:缺点:访问速度慢,电容的放电作用会使信息丢失,要长访问速度慢,电容的放电作用会使信息丢失,要长期保存数据必须期保存数据必须定期刷新定期刷新存储单元;存储单元;主要种类有:主要种类有:SDRAM、DDR SDRAM主要用于构成主要用于构成CacheCache主要用于构成系统主存主要用于构成系统主存15l基本存储元基本存储元6个个MOS管形成一位存储元管形成一位存储元;非易失性的存储元非易失性的存储元l644位的位的SRAM结构图结构图存储体排列成存储

11、元阵列,不一定以存储单元形式组织;存储体排列成存储元阵列,不一定以存储单元形式组织;3.2.1 基本的静态存储元阵列基本的静态存储元阵列16六管六管SRAM存储元电路存储元电路 位线位线/D位线位线D2022年3月19日星期六1718存储体存储体读读写写电电路路MDR数据总线数据总线驱动器驱动器译码器译码器MAR 地址总线地址总线 控制电路控制电路读读写写SRAM存储器的逻辑结构简图存储器的逻辑结构简图19静态静态RAM芯片举例芯片举例Intel 2114 A0 A9 为地址码输入端。为地址码输入端。4 个个 I/O 脚为双向数据线,用于读脚为双向数据线,用于读出或写入数据。出或写入数据。R/

12、W 为读为读/写控制端。当写控制端。当 R/W = 1 时,从时,从 I/O 线读出数据;当线读出数据;当 R/W = 0 时,将从时,将从 I/O 线输入的数据写线输入的数据写入入RAM。VDDIntel 2114A7A8A9I/OI/OI/OI/OR/WA6A5A4A3A0A1A2CSGND1234567891817161514131211101 K 4 位位 SRAM Intel 2114 引脚图引脚图存储矩阵有存储矩阵有 1 K 1 K 个存储单元,每个单个存储单元,每个单元元4 4 位。位。1K = 21K = 21010,故需,故需 10 10 根地址输入线。根地址输入线。CS 为

13、片选控制端,低电平有效。为片选控制端,低电平有效。CS = 1 时,读时,读/写控制电路处于禁写控制电路处于禁止状态,不能对芯片进行读止状态,不能对芯片进行读/写操写操作。当作。当 CS = 0 时,允许芯片读时,允许芯片读/写写操作。操作。203.3 DRAM存储器存储器 l动态动态RAM(DRAM)因为该存储器必须定时刷新,才能维持其中的信息不变;因为该存储器必须定时刷新,才能维持其中的信息不变;lDRAM的存储元的存储元由由MOS晶体管和电容组成的记忆电路;晶体管和电容组成的记忆电路;u电容上的电量来表现存储的信息;电容上的电量来表现存储的信息;u充电充电1,放电,放电0。结构形式结构形

14、式u单管存储元单管存储元213.3.1 DRAM存储元的记忆原理存储元的记忆原理1. 读出时位线有电流读出时位线有电流 为为 “1”位线位线 (数据线)(数据线)CsT行线(字线)行线(字线)0 12. 写入时写入时CS 充电为充电为 “1” 放电放电 为为 “0”T无电流无电流有电流有电流22DRAM(主存主存)SRAM(cache)存储原理存储原理集成度集成度芯片引脚芯片引脚功耗功耗价格价格速度速度刷新刷新电容电容触发器触发器高高低低少少多多小小大大低低高高慢慢快快有有无无动态动态 RAM 和静态和静态 RAM 的比较的比较3.4 只读存储器只读存储器 由生产厂家事先编程,信息不能更改。由

15、生产厂家事先编程,信息不能更改。 行列选择线交叉处有行列选择线交叉处有 MOS 管为管为“1”,无,无 MOS 管为管为“0”出厂时是空白的,允许用户根据自己的需要确定出厂时是空白的,允许用户根据自己的需要确定ROMROM中的内容。中的内容。但只能允许但只能允许。VCC行线行线列线列线熔丝熔丝熔丝断熔丝断为为 “0”为为 “1”熔丝未断熔丝未断优点:可以进行优点:可以进行多次多次编程。编程。缺点:缺点: 。擦除重写时,必须从系统中拆下来,在。擦除重写时,必须从系统中拆下来,在紫紫外线外线灯下照射灯下照射2020分钟,擦除原有信息后,再用专门的编程器重分钟,擦除原有信息后,再用专门的编程器重新写

16、入新的程序或数据。新写入新的程序或数据。 EPROMEPROM芯片中的信息芯片中的信息的修改。的修改。 采用加采用加的方法来擦除芯片中的原有信息。的方法来擦除芯片中的原有信息。 编程和擦除。编程和擦除。 擦除和编程以擦除和编程以为单位,可方便地改写其中的任一部分内为单位,可方便地改写其中的任一部分内容。容。263.5 存储器扩展存储器扩展l单个存储芯片的容量有限,实际存储器由多个芯片扩展而成;单个存储芯片的容量有限,实际存储器由多个芯片扩展而成;l存储器(存储芯片)与存储器(存储芯片)与CPU的连接的连接数据、地址、读写控制三总线连接;数据、地址、读写控制三总线连接;l存储器容量扩充方式存储器

17、容量扩充方式位扩展、字扩展、字位扩展位扩展、字扩展、字位扩展MDRMARCPU主存主存 地址总线地址总线数据总线数据总线读读写写27存储芯片与存储芯片与CPU的引脚的引脚l 存储芯片的外部引脚存储芯片的外部引脚数据总线数据总线:位数与存储单元字长相同,用于传送数据信息;:位数与存储单元字长相同,用于传送数据信息;地址总线地址总线:位数与存储单元个数为:位数与存储单元个数为2n关系,用于选择存储单元;关系,用于选择存储单元;读写信号读写信号/WE:决定当前对芯片的访问类型;:决定当前对芯片的访问类型;片选信号片选信号/CS:决定当前芯片是否正在被访问决定当前芯片是否正在被访问;l CPU与存储器

18、连接的外部引脚与存储器连接的外部引脚数据总线数据总线:位数与机器字长相同,用于传送数据信息;:位数与机器字长相同,用于传送数据信息;地址总线地址总线:位数与系统中可访问单元个数为:位数与系统中可访问单元个数为2n的关系,用于选择的关系,用于选择访问单元;访问单元;读写信号读写信号/WE:决定当前:决定当前CPU的访问类型;的访问类型;28存储器容量的位扩展存储器容量的位扩展l存储单元数不变,每个单元的位数(字长)增加;存储单元数不变,每个单元的位数(字长)增加;l例如:由例如:由1K4的存储芯片构成的存储芯片构成1K8的存储器的存储器l存储芯片与存储芯片与CPU的引脚连接方法:的引脚连接方法:

19、地址线地址线:各芯片的地址线:各芯片的地址线直接直接与与CPU地址线连接;地址线连接;数据线数据线:各芯片的数据线:各芯片的数据线分别与分别与CPU数据线的不同位连接数据线的不同位连接;片选及读写线片选及读写线:各芯片的片选及读写信号:各芯片的片选及读写信号直接直接与与CPU的地址译码的地址译码及读写信号连接;及读写信号连接;l注意:注意:CPU对该存储器的访问是对该存储器的访问是对各位扩展芯片的同一单元的同时访问对各位扩展芯片的同一单元的同时访问。1K4存储芯片存储芯片A0A9D0D31K8存储器存储器A0A9D0D729D7D0CSWEA9A01K41K41010由由1K4的存储芯片构成的

20、存储芯片构成1K8的存储器的存储器30存储器容量的字扩展存储器容量的字扩展l字扩展:每个单元位数不变,总的单元个数增加。字扩展:每个单元位数不变,总的单元个数增加。l例如:用例如:用1K8的存储芯片构成的存储芯片构成2K8的存储器的存储器l存储芯片与存储芯片与CPU的引脚连接方法:的引脚连接方法:地址线地址线:各芯片的地址线与:各芯片的地址线与CPU的的低位地址线直接连接低位地址线直接连接;数据线数据线:各芯片的数据线:各芯片的数据线直接直接与与CPU数据线连接;数据线连接;读写线读写线:各芯片的读写信号:各芯片的读写信号直接直接与与CPU的读写信号连接;的读写信号连接;片选信号片选信号:各芯

21、片的片选信号:各芯片的片选信号由由CPU的高位地址译码产生的高位地址译码产生;l注意:注意: CPU对该存储器的访问是对该存储器的访问是对某一字扩展芯片的一个单元的访问对某一字扩展芯片的一个单元的访问。1K8存储芯片存储芯片A0A9D0D72K8存储器存储器A0A10D0D731 1K8 1K8 1D7D0A0A9108A10l低位的地址线与各芯片的地址线并联;低位的地址线与各芯片的地址线并联;l多余的高位地址线用来产生相应的片选信号。多余的高位地址线用来产生相应的片选信号。WE由由1K8的存储芯片构成的存储芯片构成2K8的存储器的存储器CSCS32l16K8的存储芯片:的存储芯片:地址线地址

22、线14根,数据线根,数据线8根,根,/CS,/WElCPU的引脚:的引脚:地址线地址线16根,数据线根,数据线8根,根,/WEl4个存储芯片构成存储器的地址分配:个存储芯片构成存储器的地址分配:第第1片片 00 00 0000 0000 0000 00 11 1111 1111 1111 即即 0000H3FFFH第第2片片 01 00 0000 0000 0000 01 11 1111 1111 1111 即即 4000H7FFFH第第3片片 10 00 0000 0000 0000 10 11 1111 1111 1111 即即 8000HBFFFH第第4片片 11 00 0000 000

23、0 0000 11 11 1111 1111 1111 即即 C000HFFFFH 用用16K8的芯片构成的芯片构成64K8的存储器的存储器16K816K816K816K80000H3FFFH4000H7FFFH8000H0BFFFH0FFFFH0C000H33译译码码器器A14A15/CS16K8 /WE/CS16K8 /WE/CS16K8 /WE/CS16K8 /WEA0A13/WED0D7D0D7D0D7D0D7D0D7存储芯片的字扩展连接图存储芯片的字扩展连接图34l字位扩展:每个单元位数和总的单元个数都增加。字位扩展:每个单元位数和总的单元个数都增加。l例如:用例如:用1K4的存储芯

24、片构成的存储芯片构成2K8的存储器的存储器l扩展方法扩展方法先进行位扩展,形成满足位要求的存储芯片组;先进行位扩展,形成满足位要求的存储芯片组;再使用存储芯片组进行字扩展。再使用存储芯片组进行字扩展。l要求:能够计算出字位扩展所需的存储芯片的数目。要求:能够计算出字位扩展所需的存储芯片的数目。例如:用例如:用LK的芯片构成的芯片构成MN的存储系统;的存储系统;u所需芯片总数为所需芯片总数为M/LN/K 片。片。存储芯片的字位扩展存储芯片的字位扩展1K4存储芯片存储芯片A0A9D0D32K8存储器存储器A0A10D0D735WEA8A9A0.D7D0A11A10CS0CS1CS2CS3片选片选译

25、码译码1K41K41K41K41K41K41K41K4用用 1K 4位位 存储芯片组成存储芯片组成 4K 8位位 的存储器的存储器8片片3674LS138译码器译码器l用于地址译码的用于地址译码的3-8译码器译码器;输入输入3位地址信号,译码产位地址信号,译码产生生8个不同的选通输出;个不同的选通输出;Y5Y6G2BG2AG1ABCY0Y1Y2Y3Y4Y7使能使能控制端控制端地址地址输入端输入端选选通通输输出出端端74LS139译码器译码器l用于地址译码的用于地址译码的2-4译码器译码器;输入输入2位地址信号,译码产位地址信号,译码产生生4个不同的选通输出;个不同的选通输出;37l存储器地址段

26、分析:存储器地址段分析: A15 A11 A10 A9 A0 0110 0 0 0 0 0000 0000 0110 0 1 1 1 1111 1111 0110 1 0 0 0 0000 0000 0110 1 0 1 1 1111 1111l存储芯片选择存储芯片选择系统程序区:系统程序区:1片片2K8ROM用户程序区:用户程序区:2片片1K4RAM,做位扩展,做位扩展 例例1.设设CPU有有16根地址线,根地址线,8根数据线,现有下列芯片:根数据线,现有下列芯片:1K4RAM;4K8RAM;8K8RAM;2K8ROM;4K8ROM;8K8ROM及及74LS138等电路等电路要求:构成要求:

27、构成地址为地址为600067FFH的系统程序区、地址为的系统程序区、地址为68006BFFH的用户程序区的用户程序区,选择芯片,选择芯片系统程序区系统程序区2K8位位用户程序区用户程序区1K8位位再做字扩展再做字扩展6000H67FFH6800H6BFFHWRRD1.1.设设CPUCPU共有共有1616位地址线、位地址线、8 8根数据线,设计一个根数据线,设计一个24KB24KB容量的容量的存储器,要求存储器,要求ROMROM区为区为8KB8KB,从,从2000H2000H开始,采用开始,采用2764(8K2764(8K8)8)芯片,芯片,RAMRAM区为区为16KB16KB,从,从4000H

28、4000H开始,采用开始,采用62646264(8K8K8 8)芯片)芯片CPUCPU读写控制信号:读写控制信号:(1)(1)需要需要27642764和和62646264芯片各多少片?芯片各多少片? (2)(2)写出每片的地址范围。写出每片的地址范围。 (3)(3)画出此存储器组成逻辑框图(包括画出此存储器组成逻辑框图(包括ROMROM和和RMRM区)。区)。OEOECECE其中其中62646264芯片的读、写及片选信号:芯片的读、写及片选信号:27642764只有读及片选信号:只有读及片选信号:(1) 2764(1) 2764芯片:芯片:8K8K8/8K8/8K8=18=1片。片。 6264

29、 6264芯片:芯片:16K16K8/8K8/8K8=28=2片。片。(2) (2) 2764EPROM2764EPROM芯片:芯片:2000H3FFFH 2000H3FFFH 0010 0000 0000 0000 0011 1111 1111 1111 0010 0000 0000 0000 0011 1111 1111 1111 第一片第一片6264RAM6264RAM芯片:芯片:4000H5FFFH4000H5FFFH 0100 0000 0000 0000 0101 1111 1111 1111 0100 0000 0000 0000 0101 1111 1111 1111 第二片第

30、二片6264RAM6264RAM芯片:芯片:6000H7FFFH6000H7FFFH 0110 0000 0000 0000 0111 1111 1111 1111 0110 0000 0000 0000 0111 1111 1111 11112.2.设某设某CPUCPU地址总线共有地址总线共有1616根,数据总线共有根,数据总线共有8 8根,已知系统中根,已知系统中存储器的划分如下:存储器的划分如下:ROMROM区:起始地址为区:起始地址为0000H0000H,大小为,大小为8K8KRAMRAM区:起始地址为区:起始地址为4000H 4000H ,16K16K的的RAMRAM区域区域现有现有

31、8K8K8 8位位ROMROM芯片,芯片,8K8K8 8位位RAMRAM芯片,且各芯片的信号如下芯片,且各芯片的信号如下:RAMRAM的读、写及片选信号:的读、写及片选信号:ROMROM的读、片选信号:的读、片选信号:CPUCPU读写制信号:读写制信号:试完成以下问题。试完成以下问题。(1 1)所需)所需ROMROM及及RAMRAM芯片各多少片?分析每个芯片的地址范围。芯片各多少片?分析每个芯片的地址范围。(2 2)画出此存储器组成逻辑框图。)画出此存储器组成逻辑框图。WRRDWEOE CEOECE(1)ROM(1)ROM芯片:芯片:1FFFH-0000H+1=2000H=8K1FFFH-00

32、00H+1=2000H=8K 因此需要因此需要ROMROM芯片芯片1 1片片 ROMROM芯片(芯片(0000H-1FFFH0000H-1FFFH) 0000 0000 0000 0000 0001 1111 1111 1111 0000 0000 0000 0000 0001 1111 1111 1111 RAM RAM芯片:芯片:16K16K16/8K16/8K16=216=2 因此需要因此需要RAMRAM芯片芯片2 2片。片。 第一片第一片RAMRAM芯片(芯片(4000H-5FFFH4000H-5FFFH) 0100 0000 0000 0000 0101 1111 1111 1111

33、 0100 0000 0000 0000 0101 1111 1111 1111 第二片第二片RAMRAM芯片(芯片(6000H-7FFFH6000H-7FFFH) 0110 0000 0000 0000 0111 1111 1111 1111 0110 0000 0000 0000 0111 1111 1111 1111 高速缓冲存储器高速缓冲存储器高速缓存的目的高速缓存的目的CacheCache的引入的引入n使用使用Cache的原因的原因nCPU速度越来越快,主存储器与速度越来越快,主存储器与CPU的速度差距越来越大,的速度差距越来越大,影响影响CPU的工作效率。的工作效率。nCache的

34、作用的作用n在在CPU和主存之间加一块高速的和主存之间加一块高速的SRAM(Cache););n主存中将要被访问的数据提前送到主存中将要被访问的数据提前送到Cache中;中;nCPU访存时,先访问访存时,先访问Cache,若没有再进行数据调度。,若没有再进行数据调度。CacheCache的读操作的读操作 访问访问Cache取出信息送取出信息送CPU将新的主存块将新的主存块调入调入Cache中中执块替换算法执块替换算法 腾出空位腾出空位 结束结束命中?命中?Cache满?满?CPU发出访问地址发出访问地址 开始开始是是否否是是否否 访问主存访问主存取出信息送取出信息送CPU高速缓存的工作过程高速

35、缓存的工作过程高速缓存的工作过程高速缓存的工作过程高速缓存的工作过程高速缓存的工作过程pCacheCache和主存交和主存交换信息时,换信息时,以块为以块为单位单位,一次读入一,一次读入一块或多块内容;每块或多块内容;每块由若干个存储单块由若干个存储单元组成;元组成;命中与未命中命中与未命中缓存共有缓存共有 C C 块块主存共有主存共有 M M 块块M M C C主存块主存块 调入调入 缓存缓存主存块与缓存块主存块与缓存块 建立建立 了对应关系了对应关系命中:命中:未命中:未命中:主存块与缓存块主存块与缓存块 未建立未建立 对应关系对应关系主存块主存块 未调入未调入 缓存缓存命中率:命中率:C

36、PU CPU 欲访问的信息在欲访问的信息在 Cache Cache 中的中的 比率比率Cache Cache 主存系统的效率主存系统的效率平均访问时间平均访问时间t ta a = =h h t tc c+ + (1(1h h) ) t tm m 设设 Cache Cache 命中率命中率 为为 h h,访问访问 CacheCache 的时间为的时间为 t tc c ,访问访问 主存主存 的时间为的时间为 t tm m 则则 e e = = 100% 100% t tc c h h t tc c+ + (1(1h h) ) t tm m1.CPU1.CPU执行一段程序时,执行一段程序时,cach

37、e cache 完成存取的次数是完成存取的次数是18001800次,主存完成存取的次数为次,主存完成存取的次数为200200次,已知次,已知cachecache的存储周的存储周期为期为40ns40ns,主存的存储周期为,主存的存储周期为200ns200ns, cachecache的命中率的命中率h h为()、为()、cache/cache/主存的平均访问时间为()主存的平均访问时间为()nsns。2.CPU2.CPU执行一段程序时,执行一段程序时,cachecache完成存取的次数为完成存取的次数为38003800次,次,主存完成存取的次数为主存完成存取的次数为200200次,已知次,已知ca

38、checache存取周期为存取周期为50ns50ns,主存为,主存为250ns250ns。cachecache的命中率为(),平均访问的命中率为(),平均访问时间为()时间为()nsns。主存与主存与CacheCache的地址映射的地址映射 l信息从主存信息从主存CacheCache中,如何定位?中,如何定位?CacheCache的容量小于主存,需要采用某种算法确定主存和的容量小于主存,需要采用某种算法确定主存和CacheCache中块的对应关系;中块的对应关系;l地址映射地址映射主存中数据块调入主存中数据块调入CacheCache中时,主存数据块与中时,主存数据块与CacheCache块之间

39、块之间的的映射映射关系;关系;l地址变换地址变换CPUCPU访存时,将主存地址变换成访存时,将主存地址变换成CacheCache地址的过程;地址的过程;l地址映射的方式地址映射的方式全相联映射、直接映射、组相联映射;全相联映射、直接映射、组相联映射;l地址映射地址映射主存中数据块调入主存中数据块调入CacheCache时,可以调入时,可以调入CacheCache的的任一空块任一空块;调入的同时,将调入的同时,将主存块号主存块号和和CacheCache的块号的块号同时写入块表;同时写入块表;l地址变换地址变换CPUCPU访存时,发出主存地址;访存时,发出主存地址;将将主存块号作为关键字主存块号作

40、为关键字,送入块表中检索每一个单元;,送入块表中检索每一个单元;命中时,读出对应单元中的命中时,读出对应单元中的CacheCache块号;块号;使用使用CacheCache块号块号和主存地址中的和主存地址中的块内地址块内地址访问访问CacheCache;全相联映射(全相联映射(Associative MappingAssociative Mapping)全相联映射的主存地址格式全相联映射的主存地址格式l设主存共分成设主存共分成2 2m m个块,每块单元数为个块,每块单元数为2 2b b个个主存地址格式:主存地址格式:CacheCache地址格式:地址格式:l块表的基本结构块表的基本结构单元数目

41、与单元数目与CacheCache的块数一致;的块数一致;每个单元保存:主存块号和每个单元保存:主存块号和CacheCache块号;块号;主存块号主存块号块内地址块内地址m m位位b b位位CacheCache块号块号块内地址块内地址b b位位c c位位全相联映射全相联映射CacheCache的特点的特点l优点优点灵活性好灵活性好( (最理想最理想) )uCacheCache中只要有空块,就可以调入所需要的主存数据块;中只要有空块,就可以调入所需要的主存数据块;l缺点缺点成本高成本高u块表单元字长为块表单元字长为m+cm+c位,需要较大容量的位,需要较大容量的CacheCache块表;块表;速度

42、太慢速度太慢u访问访问CacheCache时,需将所有单元比较一遍,才能最后判出所时,需将所有单元比较一遍,才能最后判出所需主存中的字块是否在需主存中的字块是否在CacheCache中;中;l一般较少使用。一般较少使用。 【例例1 1】设主存容量设主存容量1MB1MB,CacheCache容量容量16KB16KB,块的大小为,块的大小为512B512B,采用,采用全相联映射方式全相联映射方式。l 写出写出CacheCache的地址格式。的地址格式。l 写出主存的地址格式。写出主存的地址格式。l 主存地址为主存地址为CDE8FHCDE8FH的单元,在的单元,在CacheCache中的什么位中的什

43、么位置?置?【例例1 1】设主存容量设主存容量1MB1MB,CacheCache容量容量16KB16KB,块的大小为,块的大小为512B512B,采用采用全相联映射方式全相联映射方式。l 写出写出CacheCache的地址格式的地址格式 CacheCache地址格式地址格式 CacheCache的容量的容量16KB16KB 块的大小为块的大小为512B512B 块号为块号为14149 95 5位位l 写出主存的地址格式写出主存的地址格式 主存的地址格式为主存的地址格式为 主存容量主存容量1MB1MB 块的大小为块的大小为512B512B 块号为块号为20209 91111位位 Cache Ca

44、che地址为地址为1414位位 块块内地址为内地址为9 9位位 Cache Cache共共3232块块Cache块号块号块内地址块内地址13 13 主存主存地址为地址为2020位位 块内地址为块内地址为9 9位位 主存主存共共20482048块块主存块号主存块号块内地址块内地址19 19 8 08 08 08 0【例例1 1】设主存容量设主存容量1MB1MB,CacheCache容量容量16KB16KB,块的大小为,块的大小为512B512B,采用采用全相联映射方式全相联映射方式。l 主存地址为主存地址为CDE8FHCDE8FH的单元,在的单元,在CacheCache中的什么位置?中的什么位置

45、? 主存地址为主存地址为CDE8FHCDE8FH的单元可映射到的单元可映射到CacheCache中的任何一个字中的任何一个字块位置;块位置;uCDE8FH= 1100 1101 111CDE8FH= 1100 1101 1110 0 1000 11111000 1111 B B 其块内地址为:其块内地址为:010001111010001111。直接映射(直接映射(Direct MappingDirect Mapping)l映射关系映射关系主存中的每一块数据只能调入主存中的每一块数据只能调入CacheCache的特定块的特定块中;中;直接映射函直接映射函数数为:为:i = j mod 2i =

46、j mod 2c c l地址映射地址映射将主存按照将主存按照cachecache分区,主存中数据块调入分区,主存中数据块调入CacheCache时,时,只能调只能调入入CacheCache的特定块的特定块;同时,将同时,将区号区号写入块表中与写入块表中与CacheCache块号相同的单元;块号相同的单元;l地址变换地址变换CPUCPU访存时,发出主存地址;访存时,发出主存地址;从主存地址中截取出从主存地址中截取出CacheCache块号块号,访问块表的对应单元;,访问块表的对应单元;若该单元中数据与区号相同,则命中,否则未命中;若该单元中数据与区号相同,则命中,否则未命中;命中时,使用命中时,

47、使用CacheCache块号和块内地址块号和块内地址访问访问CacheCache;c c是是CacheCache号号的位数的位数主存块号为主存块号为j jCacheCache块号为块号为i i0 0区区1 1区区0 01 12 23 34 45 56 67 70 01 12 23 3直接映射直接映射直接映射方式下的主存地址格式直接映射方式下的主存地址格式l假定主存共假定主存共2 2m m块,块,CacheCache共共2 2c c块块,每块单元数为,每块单元数为2 2b b个个l直接映射中主存块与直接映射中主存块与CacheCache块的关系:块的关系:CacheCache地址格式为:地址格式

48、为:主存的地址格式为:主存的地址格式为:区号区号Cache块号块号块内地址块内地址m位位b位位t位位c位位CacheCache块号块号块内地址块内地址b b位位c c位位n块表的基本结构块表的基本结构n单元数目与单元数目与CacheCache的块数一致;的块数一致;n每个单元保存:区号;每个单元保存:区号;块表的大小应为块表的大小应为2c(m-c)位位l特点特点一个主存块只能调入一个主存块只能调入CacheCache的一个特定块中的一个特定块中 。l优点优点该映射函数实现简单,查找速度快;该映射函数实现简单,查找速度快;l缺点缺点灵活性差;灵活性差;u主存的字块只能对应特定的主存的字块只能对应

49、特定的CacheCache字块,即使字块,即使CacheCache中别中别的字块空着也不能占用。的字块空着也不能占用。直接映射直接映射CacheCache的特点的特点【例例2 2】设主存容量设主存容量1MB1MB,CacheCache容量容量16KB16KB,块的大小为,块的大小为512B512B,采用采用直接映射方式直接映射方式。主存地址为主存地址为CDE8FHCDE8FH的单元在的单元在CacheCache中的什么位置?中的什么位置? 主存地址主存地址CDE8FHCDE8FH11001100 11110101 1111110 0 10001000 11111111 对应于对应于CacheC

50、ache的第的第0111101111块,块内地址为块,块内地址为010001111010001111块号块号块内地址块内地址13 9 8 013 9 8 0CacheCache地址格式地址格式主存的地址格式主存的地址格式区号区号Cache块号块号块内地址块内地址19 14 13 9 8 019 14 13 9 8 0l组相联映射是直接映射和全相联映射的一种折中方案。组相联映射是直接映射和全相联映射的一种折中方案。l映射关系映射关系将主存分区,主存和将主存分区,主存和CacheCache中的块分为若干组,主存中的每中的块分为若干组,主存中的每一块只能映射到一块只能映射到CacheCache的特定组中,但是可调入到该组的任的特定组中,但是可调入到该组的任一块中;一块

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论