版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、钱晓捷,微机原理与接口技术钱晓捷,微机原理与接口技术第第4 4版版基于基于IA-32IA-32处理器和处理器和3232位汇编语言位汇编语言第第 6 6 章章存储系统存储系统6.1 6.1 存储系统层次结构存储系统层次结构6.2 6.2 主存储器主存储器6.3 6.3 高速缓冲存储器高速缓冲存储器CacheCache6.4 6.4 存储管理存储管理微机原理与接口技术第4版机械工业出版社6.1 6.1 存储系统层次结构存储系统层次结构存储系统存储系统容量越大越好容量越大越好速度较快越好速度较快越好价格(成本)越低越好价格(成本)越低越好当前制造工艺的存储器件:当前制造工艺的存储器件:工作速度较快的
2、存储器,单位价格却较高;工作速度较快的存储器,单位价格却较高;容量较大的存储器,虽然单位价格较低,但存容量较大的存储器,虽然单位价格较低,但存取速度又较慢取速度又较慢各种存储器件需要相互配合形成完整的存储系统各种存储器件需要相互配合形成完整的存储系统微机原理与接口技术第4版机械工业出版社6.1.1 6.1.1 技术指标技术指标1. 1. 存储容量存储容量主存存储容量:以字节主存存储容量:以字节B B(ByteByte)为基本单位)为基本单位半导体存储器芯片:以位半导体存储器芯片:以位b b (BitBit)为基本单位)为基本单位存储容量以存储容量以2 2101010241024规律表达规律表达
3、KBKB,MBMB,GBGB和和TBTB厂商常以厂商常以10103 310001000规律表达规律表达KBKB,MBMB,GBGB和和TBTB2. 2. 存取速度存取速度存取时间:发出读存取时间:发出读/ /写命令到数据传输操作完成写命令到数据传输操作完成所经历的时间所经历的时间存取周期:两次存储器访问所允许的最小时间存取周期:两次存储器访问所允许的最小时间间隔间隔存储器主要用容量、速度和成本来评价存储器主要用容量、速度和成本来评价 微机原理与接口技术第4版机械工业出版社6.1.2 6.1.2 层次结构层次结构寄存器寄存器处理器内部的存储单元处理器内部的存储单元高速缓存高速缓存(CacheCa
4、che)完全用硬件实现主存储器的速度提高完全用硬件实现主存储器的速度提高主存储器主存储器存放当前运行程序和数据,采用半导体存储器存放当前运行程序和数据,采用半导体存储器构成构成辅助存储器辅助存储器磁记录或光记录方式磁记录或光记录方式磁盘或光盘形式存放可读可写或只读内容磁盘或光盘形式存放可读可写或只读内容以外设方式连接和访问以外设方式连接和访问示意图示意图存储系统的层次结构存储系统的层次结构CPU寄存器寄存器大容量辅助存储器大容量辅助存储器辅助存储器辅助存储器主存储器主存储器高速缓存高速缓存每每位位成成本本减减少少容容量量增增加加存存取取时时间间增增加加处处理理器器存存取取频频度度减减少少返回返
5、回解决容量、速度和价格矛盾的方法解决容量、速度和价格矛盾的方法 微机原理与接口技术第4版机械工业出版社6.1.3 6.1.3 局部性原理局部性原理层次结构解决存储器件的容量、速度和价格矛盾层次结构解决存储器件的容量、速度和价格矛盾出色效率来源于存储器访问的局部性原理:出色效率来源于存储器访问的局部性原理:处理器访问存储器时,所访问的存储单元在一段处理器访问存储器时,所访问的存储单元在一段时间内都趋向于一个较小的连续区域时间内都趋向于一个较小的连续区域中中空间局部空间局部:紧邻被访问单元的地方也将被访问紧邻被访问单元的地方也将被访问时间局部时间局部:刚被访问的单元很快将再次被访问刚被访问的单元很
6、快将再次被访问程序运行过程中,绝大多数情况都能够直接从快程序运行过程中,绝大多数情况都能够直接从快速的存储器中获取指令和读写数据;当需要从慢速的存储器中获取指令和读写数据;当需要从慢速的下层存储器获取指令或数据时,每次都将一速的下层存储器获取指令或数据时,每次都将一个程序段或一个较大数据块读入上层存储器,后个程序段或一个较大数据块读入上层存储器,后续操作就可以直接访问快速的上层存储器续操作就可以直接访问快速的上层存储器微机原理与接口技术第4版机械工业出版社求平均值函数求平均值函数long mean(long d, long num)long mean(long d, long num) lon
7、g i,temp=0; long i,temp=0; for(i=0; inum; i+) temp=temp+di; for(i=0; inum; i+) temp=temp+di; temp=temp/num; temp=temp/num; return (temp); return (temp); 时间局部时间局部空间局部空间局部时间局部和空间局部时间局部和空间局部微机原理与接口技术第4版机械工业出版社6.2 6.2 主存储器主存储器主存储器由半导体存储器构成主存储器由半导体存储器构成按制造工艺,半导体存储器可分为按制造工艺,半导体存储器可分为“双极型双极型”器件:存取速度快、集成度低、
8、功器件:存取速度快、集成度低、功耗大、价格高等特点,主要用于高速存储场合耗大、价格高等特点,主要用于高速存储场合“MOSMOS型型”器件:集成度高、功耗低、价格便宜,器件:集成度高、功耗低、价格便宜,但速度较双极型器件慢,用于通用微机的主存但速度较双极型器件慢,用于通用微机的主存(RAMRAM和和ROMROM)按使用属性,半导体存储器可分为按使用属性,半导体存储器可分为读写存储器读写存储器RAMRAM只读存储器只读存储器ROMROM微机原理与接口技术第4版机械工业出版社6.2.1 6.2.1 读写存储器读写存储器读写存储器:可以读出也可以写入的存储器读写存储器:可以读出也可以写入的存储器半导体
9、存储器采用随机存取:可以从任意位置开半导体存储器采用随机存取:可以从任意位置开始读写,存取位置可以随机确定,只要给出存取始读写,存取位置可以随机确定,只要给出存取位置就可以读写内容,存取时间与所处位置无关位置就可以读写内容,存取时间与所处位置无关磁带存储器采用顺序存取:必须按照存储单元的磁带存储器采用顺序存取:必须按照存储单元的顺序读写,存取时间与所处位置密切相关顺序读写,存取时间与所处位置密切相关磁盘和光盘则采用直接存取:磁头以随机方式寻磁盘和光盘则采用直接存取:磁头以随机方式寻道,以数据块为单位顺序方式读写扇区道,以数据块为单位顺序方式读写扇区半导体读写存储器是挥发性(半导体读写存储器是挥
10、发性(VolatileVolatile)RAMRAM,即,即断电后原保存信息丢失断电后原保存信息丢失半导体读写存储器随机存取存储器地址半导体读写存储器随机存取存储器地址RAM微机原理与接口技术第4版机械工业出版社1. 1. 主要类型主要类型SRAMSRAM(静态(静态RAMRAM:Static RAMStatic RAM)以触发器为基本存储单元以触发器为基本存储单元不需要额外的刷新电路不需要额外的刷新电路速度快,但集成度低,功耗和价格较高速度快,但集成度低,功耗和价格较高DRAMDRAM(动态(动态RAMRAM:Dynamic RAMDynamic RAM)以单个以单个MOSMOS管为基本存储
11、单元管为基本存储单元要不断进行刷新(要不断进行刷新(RefreshRefresh)操作)操作集成度高、价格低、功耗小,但速度较集成度高、价格低、功耗小,但速度较SRAMSRAM慢慢NVRAMNVRAM(非易失非易失RAMRAM:Non-Volatile RAMNon-Volatile RAM)带有后备电池的带有后备电池的SRAMSRAM芯片芯片断电后由电池维持供电断电后由电池维持供电微机原理与接口技术第4版机械工业出版社2. 2. 存储结构存储结构存储器芯片具有大量存储单元存储器芯片具有大量存储单元每个存储单元拥有一个地址每个存储单元拥有一个地址存储存储1/4/8/16/321/4/8/16/
12、32位数据位数据存储器芯片结构:存储器芯片结构:存储单元数存储单元数每个存储单元的数据位数每个存储单元的数据位数 2 2M MN N芯片的存储容量芯片的存储容量M M芯片地址线的个数芯片地址线的个数N N数据线的个数数据线的个数存储结构存储结构2K816K位存储容量位存储容量11个地址引脚个地址引脚8个数据引脚个数据引脚微机原理与接口技术第4版机械工业出版社3. 3. 静态读写存储器静态读写存储器SRAMSRAM主要被用于小型微机系统主要被用于小型微机系统多为多为“存储单元数存储单元数8”8”的存储结构的存储结构6264 SRAM6264 SRAM芯片芯片芯片容量:芯片容量:64K64K位位存
13、储结构:存储结构:8K8K8 82828脚双列直插(脚双列直插(DIPDIP)1313个地址线:个地址线:A12A12A0A08 8个数据线:个数据线:D7D7D0D0控制引脚:控制引脚:CS1CS1* *,CS2CS2,OEOE* *,WEWE* *无连接:无连接:NCNC(No ConnectNo Connect)示意图示意图6264 SRAM6264 SRAM的引脚的引脚返回返回微机原理与接口技术第4版机械工业出版社SRAMSRAM的控制信号的控制信号片选片选(CSCS* *或或CECE* *)片选有效,才可以对芯片进行读片选有效,才可以对芯片进行读/ /写操作写操作无效时,数据引脚呈现
14、高阻状态,并可降低功无效时,数据引脚呈现高阻状态,并可降低功耗耗 读控制读控制(OEOE* *)芯片被选中有效,数据输出到数据引脚芯片被选中有效,数据输出到数据引脚对应存储器读对应存储器读MEMRMEMR* *写控制写控制(WEWE* *)芯片被选中的前提下,若有效,将数据写入芯片被选中的前提下,若有效,将数据写入对应存储器写对应存储器写MEMWMEMW* *示意图示意图6264 SRAM6264 SRAM的引脚功能表的引脚功能表返回返回微机原理与接口技术第4版机械工业出版社4. 4. 动态读写存储器动态读写存储器DRAMDRAMDRAMDRAM芯片用一组地址引脚传送两批地址芯片用一组地址引脚
15、传送两批地址第一批地址称第一批地址称行地址行地址用行地址选通信号用行地址选通信号RASRAS* *下降沿锁存下降沿锁存第二批地址称第二批地址称列地址列地址用列地址选通信号用列地址选通信号CASCAS* *下降沿锁存下降沿锁存一个信号一个信号WEWE* *实现读写控制实现读写控制数据输入引脚数据输入引脚DinDin数据输出引脚数据输出引脚DoutDout示意图示意图DRAMDRAM的引脚图的引脚图返回返回微机原理与接口技术第4版机械工业出版社5. DRAM5. DRAM的刷新的刷新DRAMDRAM内部内部有有“读出再生放大电路读出再生放大电路”的刷新电路的刷新电路设计有仅行地址有效的刷新周期设计
16、有仅行地址有效的刷新周期每次刷新一行存储单元每次刷新一行存储单元存储系统的外部刷新控制电路存储系统的外部刷新控制电路将刷新行地址同时送达所有将刷新行地址同时送达所有DRAMDRAM芯片芯片所有所有DRAMDRAM芯片同时进行一行的刷新芯片同时进行一行的刷新在一定时间间隔内启动一次刷新在一定时间间隔内启动一次刷新每次行地址增量每次行地址增量微机原理与接口技术第4版机械工业出版社6. 6. 高性能高性能DRAMDRAMFPM DRAMFPM DRAM(快页方式(快页方式DRAMDRAM)同一行的传送仅改变列地址同一行的传送仅改变列地址页内访问速度加快页内访问速度加快EDO DRAMEDO DRAM
17、(扩展数据输出(扩展数据输出DRAMDRAM)数据输出有效时间加长(扩展)数据输出有效时间加长(扩展)SDRAMSDRAM(同步(同步DRAMDRAM)公共的系统时钟,没有等待状态公共的系统时钟,没有等待状态支持猝发传送,内部采用交叉存储支持猝发传送,内部采用交叉存储DDR DRAMDDR DRAM(双速率(双速率DRAMDRAM)同步时钟前沿和后沿各进行一次数据传送同步时钟前沿和后沿各进行一次数据传送RDRAMRDRAM(Rambus DRAMRambus DRAM)RambusRambus公司专利技术,全新设计公司专利技术,全新设计微机原理与接口技术第4版机械工业出版社6.2.2 6.2.
18、2 只读存储器只读存储器正常的工作状态,正常的工作状态,ROMROM只能读出只能读出特殊的编程状态,多数特殊的编程状态,多数ROMROM芯片也能写入芯片也能写入有些有些ROMROM芯片需要特殊方法先将原数据擦除,芯片需要特殊方法先将原数据擦除,然后才能编程然后才能编程ROMROM芯片的集成度较高,但速度较芯片的集成度较高,但速度较DRAMDRAM还要还要慢,一般用来保存固定的程序或数据慢,一般用来保存固定的程序或数据ROMROM芯片数据可长期保存,掉电亦不丢失,芯片数据可长期保存,掉电亦不丢失,属于非易失性存储器件属于非易失性存储器件微机原理与接口技术第4版机械工业出版社1. 1. 主要类型主
19、要类型MROMMROM(掩膜(掩膜ROMROM)掩膜工艺直接制作掩膜工艺直接制作OTP-ROMOTP-ROM(一次性编程(一次性编程ROMROM)允许用户进行一次性编程允许用户进行一次性编程EPROMEPROM(可擦除可编程(可擦除可编程ROMROM)紫外光擦除、并可重复编程的紫外光擦除、并可重复编程的ROMROMEEPROMEEPROM(电擦除可编程(电擦除可编程ROMROM)擦除和编程(擦写)通过加电进行擦除和编程(擦写)通过加电进行Flash MemoryFlash Memory(闪速存储器)(闪速存储器)新型的电擦除可编程新型的电擦除可编程ROMROM快速擦除整片或数据块快速擦除整片或
20、数据块微机原理与接口技术第4版机械工业出版社2. EPROM2. EPROM2764 EPROM2764 EPROM存储容量存储容量64K64K位位存储结构存储结构8K8K8 81313个地址线:个地址线:A12A12A0A08 8个数据线:个数据线:O7O7O0O0控制信号控制信号片选:片选:CECE* *输出:输出:OEOE* *编程控制:编程控制:PGMPGM* *编程电源:编程电源:VppVpp微机原理与接口技术第4版机械工业出版社EPROMEPROM工作方式工作方式微机原理与接口技术第4版机械工业出版社3. Flash Memory3. Flash MemoryAT29C040AAT
21、29C040A存储结构:存储结构:512K512K8 8有有1919个地址引脚个地址引脚A18A18A0A08 8个数据引脚个数据引脚I/O7I/O7I/O0I/O03 3个控制引脚个控制引脚片选片选CSCS* *输出允许输出允许OEOE* *写允许写允许WEWE* *扇区(扇区(256256字节)擦写字节)擦写查询擦写是否完成查询擦写是否完成微机原理与接口技术第4版机械工业出版社6.2.3 6.2.3 存储器地址译码存储器地址译码存储器芯片与处理器的连接存储器芯片与处理器的连接存储器芯片有数据、地址、读写控制引脚存储器芯片有数据、地址、读写控制引脚处理器总线有数据、地址、读写控制信号处理器总
22、线有数据、地址、读写控制信号功能上多数可以直接相连功能上多数可以直接相连但是,地址信号需要译码但是,地址信号需要译码处理器地址总线个数多于存储器地址引脚个数处理器地址总线个数多于存储器地址引脚个数多个存储器芯片组成一定容量的存储系统多个存储器芯片组成一定容量的存储系统需要利用地址总线控制存储器片选信号需要利用地址总线控制存储器片选信号微机原理与接口技术第4版机械工业出版社1. 1. 地址译码地址译码译码(译码(DecodeDecode)将某个特定的编码输入翻译为有效输出的过程将某个特定的编码输入翻译为有效输出的过程存储器译码电路存储器译码电路可编程逻辑器件可编程逻辑器件PLDPLD译码器译码器
23、门电路组合门电路组合举例:多输入与非门实现译码举例:多输入与非门实现译码32K32K8 8结构的结构的SRAMSRAM:地址引脚:地址引脚1515个个A14A14A0A080888088处理器:处理器:2020个地址总线个地址总线A19A19A0A08 8位数据总线位数据总线示意图示意图简单的门电路译码简单的门电路译码返回返回微机原理与接口技术第4版机械工业出版社存储器地址分析存储器地址分析微机原理与接口技术第4版机械工业出版社译码方式译码方式全译码方式全译码方式使用全部微处理器地址总线使用全部微处理器地址总线片内寻址:低位地址与存储片内寻址:低位地址与存储器芯片地址引脚相连器芯片地址引脚相连
24、片选寻址:高位地址经译码片选寻址:高位地址经译码与存储器芯片片选引脚相连与存储器芯片片选引脚相连部分译码方式部分译码方式只使用部分微处理器地址总只使用部分微处理器地址总线进行译码线进行译码没有使用的地址信号对存储没有使用的地址信号对存储器芯片的工作不产生影响器芯片的工作不产生影响部分译码部分译码 地址重复地址重复 译码简单译码简单全译码全译码 地址唯一地址唯一 空间连续空间连续微机原理与接口技术第4版机械工业出版社2. 2. 译码器译码器3838译码器:译码器:138138译码器译码器3 3个控制输入引脚:个控制输入引脚:E3E3,E2E2* *和和E1E1* *都有效,才能实现译码功能都有效
25、,才能实现译码功能3 3个编码输入引脚:个编码输入引脚:C C,B B和和A A8 8种编码各对应一个译码输出引脚种编码各对应一个译码输出引脚CBACBA000000编码使编码使Y0Y0* *低有效,其他高电平无效低有效,其他高电平无效CBACBA001001编码使编码使Y1Y1* *低有效,其他高电平无效低有效,其他高电平无效CBACBA111111编码使编码使Y7Y7* *低有效,其它高电平无效低有效,其它高电平无效示意图示意图译码器译码器74LS13874LS138返回返回微机原理与接口技术第4版机械工业出版社译码器译码译码器译码Y0Y0* *译码输出有效,必须:译码输出有效,必须:lE
26、3E2E3E2* *E1E1* *100100A19A18A17A19A18A17111111lCBACBA000000A16A15A14A16A15A14000000。结论:结论:A19A19A14A14111000111000地址范围:地址范围:E0000HE0000HE3FFFHE3FFFH存储容量:存储容量:16KB16KB示意图示意图译码器译码示意图译码器译码示意图返回返回微机原理与接口技术第4版机械工业出版社3. 80863. 8086的的1616位存储结构位存储结构对称的两个存储体(对称的两个存储体(BankBank)所构成)所构成偶存储体偶存储体(A0A00 0)对应所有的偶地
27、址单元对应所有的偶地址单元(0 0、2 2、4 4、FFFEHFFFEH)接处理器低接处理器低8 8位数据总线位数据总线D7D7D0D0奇存储体奇存储体(BHEBHE* *0 0)对应所有的奇地址单元对应所有的奇地址单元(1 1、3 3、5 5、FFFFHFFFFH)接处理器高接处理器高8 8位数据总线位数据总线D15D15D8D8两个存储器芯片的片选端连接在一起两个存储器芯片的片选端连接在一起示意图示意图80868086的的1616位存储结构位存储结构返回返回微机原理与接口技术第4版机械工业出版社地址对齐(地址对齐(AlignAlign)高位地址高位地址A19A19A17A17111111,
28、片选信号有效,片选信号有效低位地址低位地址A16A16A1A10.00.0,那么:,那么:A0A00(0(地址地址E0000H)E0000H),BHEBHE* *0 0,访问,访问1616位数据位数据A0A00(0(地址地址E0000H)E0000H),BHEBHE* *1 1,访问低,访问低8 8位数据位数据A0A01(1(地址地址E0001H)E0001H),BHEBHE* *0 0,访问高,访问高8 8位数据位数据A0A01 1,BHEBHE* *1 1,无效的数据访问组合,无效的数据访问组合80868086存储器按存储器按1616位数据宽度组织位数据宽度组织支持支持8 8位和位和161
29、6位数据访问位数据访问偶地址开始的偶地址开始的1616位访问可以一次完成位访问可以一次完成奇地址开始的奇地址开始的1616位访问需要两次操作位访问需要两次操作地址对齐地址对齐:1616位数据以偶地址开始位数据以偶地址开始微机原理与接口技术第4版机械工业出版社4. Pentium4. Pentium的的6464位存储结构位存储结构PentiumPentium采用采用6464位数据总线和位数据总线和3232位地址总线位地址总线没有地址没有地址A2A2,A1A1和和A0A08 8个字节允许信号区别个字节允许信号区别8 8个个8 8位存储体位存储体支持支持64/32/16/864/32/16/8位数据
30、读写位数据读写地址对齐能够一次完成读写地址对齐能够一次完成读写6464位数据对齐模位数据对齐模8 8地址地址3232位数据对齐模位数据对齐模4 4地址地址1616位数据对齐偶地址位数据对齐偶地址示意图示意图PentiumPentium的的6464位存储结构位存储结构返回返回微机原理与接口技术第4版机械工业出版社 6.2.4 6.2.4 主存空间分配主存空间分配微机原理与接口技术第4版机械工业出版社最低最低1MB1MB主存主存系统系统RAMRAM区区地址最低端的地址最低端的640KB640KB空间空间由由DOSDOS进行管理进行管理显示显示RAMRAM区区128KB128KB主存空间保留给显示缓
31、冲存储区主存空间保留给显示缓冲存储区显示显示RAMRAM区并没有被完全使用区并没有被完全使用扩展扩展ROMROM区区I/OI/O接口电路卡上的接口电路卡上的ROMROM系统系统ROMROM区区ROM-BIOSROM-BIOS程序程序微机原理与接口技术第4版机械工业出版社扩展主存和扩充主存扩展主存和扩充主存扩展主存扩展主存XMSXMS1MB1MB后的后的RAMRAM主存空间主存空间只能在保护方式使用只能在保护方式使用遵循扩展主存使用规范遵循扩展主存使用规范XMSXMS驱动程序驱动程序HIMEM.SYSHIMEM.SYS扩充主存扩充主存EMSEMS遵循扩充主存使用规范遵循扩充主存使用规范EMSEM
32、S扩充主存不是直接访问的存储空间扩充主存不是直接访问的存储空间体交换技术,不需要保护方式支持体交换技术,不需要保护方式支持IA-32IA-32支持扩展主存支持扩展主存XMSXMS,不需扩充主存,不需扩充主存EMSEMSEMM386.EXEEMM386.EXE驱动程序驱动程序微机原理与接口技术第4版机械工业出版社高端主存区高端主存区HMAHMA和上位主存块和上位主存块UMBUMB高端主存区高端主存区HMAHMA实方式下,地址实方式下,地址A20A20开放,从开放,从100000H100000H到到10FFEFH10FFEFH之间约之间约64KB64KB的存储区域的存储区域8088/8086808
33、8/8086:地址自动回绕:地址自动回绕8028680286和和8038680386:地址不自动回绕:地址不自动回绕8048680486及以后有及以后有A20MA20M引脚引脚A20MA20M0 0,地址自动回绕,地址自动回绕A20MA20M1 1,地址不自动回绕,地址不自动回绕上位主存块上位主存块UMBUMB上位主存区上位主存区UMAUMA中未使用的区域中未使用的区域微机原理与接口技术第4版机械工业出版社ROMROM复制和影子主存复制和影子主存ROMROM复制复制系统系统ROMROM区的区的BIOSBIOS等程序等程序8086/80888086/8088在在F0000HF0000HFFFFF
34、HFFFFFH8028680286在在FF0000HFF0000HFFFFFFHFFFFFFHIA-32IA-32微处理器在微处理器在FFFFFFF0HFFFFFFF0HFFFFFFFFHFFFFFFFFH影子主存影子主存用作用作ROM-BIOSROM-BIOS的只读的的只读的RAMRAM区域区域启动后启动后ROM-BIOSROM-BIOS映射到映射到RAMRAM因为因为ROMROM芯片的读写速度比芯片的读写速度比RAMRAM芯片慢芯片慢微机原理与接口技术第4版机械工业出版社6.3 6.3 高速缓冲存储器高速缓冲存储器主存是一个影响性能的关键因素主存是一个影响性能的关键因素因为处理器的运行速度
35、提高,但由因为处理器的运行速度提高,但由DRAMDRAM组成的主组成的主存的存取时间较慢,跟不上处理器运行速度存的存取时间较慢,跟不上处理器运行速度SRAMSRAM速度较快,但其容量较小、价格较贵,无法速度较快,但其容量较小、价格较贵,无法大量用于微机系统大量用于微机系统Cache: a safe place for hiding or storing things.主存储器主存储器高速缓存高速缓存CacheCacheCPU字传送字传送块传送块传送解决方案:解决方案:高速缓存高速缓存高速缓冲存储器高速缓冲存储器CacheCache完全用硬件实现主存速完全用硬件实现主存速度的提高度的提高微机原理
36、与接口技术第4版机械工业出版社6.3.1 6.3.1 高速缓存的工作原理高速缓存的工作原理高速缓存:在相对容量较大而速度较慢的主高速缓存:在相对容量较大而速度较慢的主存存DRAMDRAM与高速处理器之间设置的少量但快速与高速处理器之间设置的少量但快速SRAMSRAM组成的存储器组成的存储器高速命中高速命中(Hit)(Hit):处理器读取主存的内容已包含在处理器读取主存的内容已包含在CacheCache中,可以中,可以直接读取直接读取CacheCache,不用访问主存,不用访问主存高速缺失高速缺失(Miss)(Miss):处理器读取主存的内容不在处理器读取主存的内容不在CacheCache中,需
37、要访问中,需要访问主存读取一个数据块主存读取一个数据块示意图示意图高速缓存的读操作高速缓存的读操作返回返回从从CPU接收地址接收地址RAY(命中(命中hit)N(失效(失效miss)开始开始Cache中含中含RA?从从Cache读读RA的字送的字送CPU从主存读含从主存读含RA的块的块向向CPU传送传送RA的字的字向向Cache传送含传送含RA的主存块的主存块结束结束微机原理与接口技术第4版机械工业出版社1. 1. 高速缓存的结构高速缓存的结构主存以字(字节)为寻址单位主存以字(字节)为寻址单位CacheCache以行(线以行(线LineLine,槽,槽SlotSlot)为寻址单位)为寻址单位
38、CacheCache行行包含包含B B个主存字,对应一个个主存字,对应一个主存块主存块CacheCache与主存间的数据传送以数据块为单位与主存间的数据传送以数据块为单位主存划分成主存划分成M M2 2n nB B个个“主存块主存块”CacheCache具有具有m m个个“CacheCache行行”CacheCache由数据存储器和标签存储器组成由数据存储器和标签存储器组成数据存储器数据存储器:高速缓存主存数据:高速缓存主存数据标签存储器标签存储器:保存数据所在主存的地址信息:保存数据所在主存的地址信息示意图示意图高速缓存高速缓存CacheCache和主存的组成结构和主存的组成结构返回返回微机
39、原理与接口技术第4版机械工业出版社2. 2. 高速缓存的容量和行大小高速缓存的容量和行大小高速缓存性能的主要指标是命中率(高速缓存性能的主要指标是命中率(Hit rateHit rate)命中率(命中率(Hit RateHit Rate):高速命中的概率:高速命中的概率对于高速缓存容量对于高速缓存容量希望它足够大,使存取时间接近高速缓存希望它足够大,使存取时间接近高速缓存希望它尽量小,使单位成本接近主存希望它尽量小,使单位成本接近主存受可用的芯片面积限制受可用的芯片面积限制同时还和运行的程序有关同时还和运行的程序有关对于对于CacheCache行大小行大小从很小增大,命中率开始会有提高从很小增
40、大,命中率开始会有提高进一步增大,命中率可能反而减小进一步增大,命中率可能反而减小微机原理与接口技术第4版机械工业出版社3. 3. 高速缓存的数量高速缓存的数量单级与多级单级与多级CacheCache片上高速缓存(片上高速缓存(On-chip CacheOn-chip Cache)第第1 1级高速缓存(级高速缓存(L1 CacheL1 Cache)第第2 2级高速缓存(级高速缓存(L2 CacheL2 Cache)第第3 3级高速缓存(级高速缓存(L3 CacheL3 Cache)统一与分离统一与分离CacheCache统一(统一(UnifiedUnified)CacheCache单个高速缓存
41、既用于高速缓冲保存指令单个高速缓存既用于高速缓冲保存指令也用于保存数据也用于保存数据分离(分离(SplitSplit)CacheCache一个专用于缓冲指令(一个专用于缓冲指令(I-CacheI-Cache)一个专用于缓冲数据(一个专用于缓冲数据(D-CacheD-Cache)微机原理与接口技术第4版机械工业出版社6.3.2 6.3.2 地址映射地址映射CacheCache通过地址映象通过地址映象(mapping)(mapping)的方法确定主的方法确定主存块与存块与CacheCache行之间的对应关系,确定一个行之间的对应关系,确定一个主存块应该存放到哪个主存块应该存放到哪个CacheCac
42、he行中行中全相联映象全相联映象(fully associative mapping)(fully associative mapping)可以将一个主存块存储到任意一个可以将一个主存块存储到任意一个CacheCache行行直接映象直接映象(direct mapping)(direct mapping)将一个主存块存储到唯一的一个将一个主存块存储到唯一的一个CacheCache行行组相联映象组相联映象(set associative mapping)(set associative mapping)可以将一个主存块存储到唯一的一个可以将一个主存块存储到唯一的一个CacheCache组的组的任意
43、一个行任意一个行直接映象、直接映象、2/4/82/4/8路组相联映象使用较多路组相联映象使用较多微机原理与接口技术第4版机械工业出版社1. 1. 直接映射(直接映射(Direct MappingDirect Mapping)将每个主存块固定地映射到某个将每个主存块固定地映射到某个CacheCache行行第第i i个个CacheCache行只能存储所有主存页的第行只能存储所有主存页的第i i个主存块个主存块硬件简单、易于实现,会发生冲突、利用率较低硬件简单、易于实现,会发生冲突、利用率较低高速缓存容量高速缓存容量m m2 2s s行行2 2s+ws+w字字CacheCache行行2 2w w个字
44、,具有个字,具有2 2s s行行主存容量主存容量M M2 2n n字字2 2n-wn-w主存块主存块2 2t t个主存页个主存页每个主存页的容量高速缓存容量每个主存页的容量高速缓存容量2 2s+ws+wn n位主存地址由位主存地址由3 3个部分组成:个部分组成:n nt ts sw w高高t t位作标签位作标签s s位地址作为索引位地址作为索引最低最低w w位区别字位区别字比较比较s s索引的一个标签存储器内容,说明是否命中索引的一个标签存储器内容,说明是否命中组成图组成图示例图示例图直接映射的组成直接映射的组成返回返回直接映射的示例直接映射的示例返回返回微机原理与接口技术第4版机械工业出版社
45、2. 2. 全相关映射(全相关映射(Full Associative MappingFull Associative Mapping)将一个主存块存储到任意一个将一个主存块存储到任意一个CacheCache行行使用灵活、利用率高,但实现电路比较复杂使用灵活、利用率高,但实现电路比较复杂高速缓存容量高速缓存容量m m2 2s s行行2 2s+ws+w字字主存容量主存容量M M2 2n n字字2 2n-wn-w主存块主存块标签存储器保存完整的主存地址,即:标签存储器保存完整的主存地址,即:t tn-wn-wn n位主存地址由位主存地址由2 2个部分组成:个部分组成:n nt tw w高高t t位作
46、标签位作标签最低最低w w位区别字位区别字当进行高速缓存操作时,高速缓存控制逻辑必须当进行高速缓存操作时,高速缓存控制逻辑必须比较全部标签存储器的内容,才能确定是否命中比较全部标签存储器的内容,才能确定是否命中组成图组成图示例图示例图全相关映射的组成全相关映射的组成返回返回全相关映射的示例全相关映射的示例返回返回微机原理与接口技术第4版机械工业出版社3. 3. 组合相关映射(组合相关映射(Set Associative MappingSet Associative Mapping)将多个将多个CacheCache行作为一个组(行作为一个组(SetSet),组内各个),组内各个CacheCach
47、e行采用全相关映射,各个组间采用直接映射行采用全相关映射,各个组间采用直接映射取直接映射的简单和全相关映射的灵活,而克服取直接映射的简单和全相关映射的灵活,而克服两者的不足两者的不足所有组中同位置所有组中同位置CacheCache行称为一路(行称为一路(WayWay)通常采用通常采用2 2、4 4、8 8或或1616个为一组个为一组 ,分别被称为,分别被称为2 2路、路、4 4路、路、8 8路或路或1616路组合相关映射路组合相关映射比较比较s s索引的索引的2 2、4 4、8 8或或1616个标签存储器内容,说个标签存储器内容,说明是否命中明是否命中组成图组成图示例图示例图只有一路(每组只有
48、一个只有一路(每组只有一个CacheCache行)就是直接相关映行)就是直接相关映射射只有一组(每个只有一组(每个CacheCache行都是一路)就是全相关映射行都是一路)就是全相关映射组合相关映射的组成组合相关映射的组成返回返回组合相关映射的示例组合相关映射的示例返回返回微机原理与接口技术第4版机械工业出版社6.3.3 6.3.3 替换算法替换算法直接映象只有一个直接映象只有一个CacheCache行可以选择行可以选择组合相关和全相关有多个组合相关和全相关有多个CacheCache行可以选择行可以选择替换算法有多种:替换算法有多种:1. 1. 随机法随机法(random)(random)随意
49、选择被替换的行,不依赖以前的使用情况随意选择被替换的行,不依赖以前的使用情况2. 2. 先进先出法先进先出法(FIFO: first in first out)(FIFO: first in first out)替换最早(存放时间最长)的行替换最早(存放时间最长)的行3. 3. 最近最少使用法最近最少使用法(LRU: least-recently used)(LRU: least-recently used)本指替换近期最少使用的行,实际实现的是替换最久没有本指替换近期最少使用的行,实际实现的是替换最久没有被使用的行被使用的行4. 4. 最不常用最不常用(LFU: least-frequent
50、ly used)(LFU: least-frequently used)替换使用次数最少的行替换使用次数最少的行微机原理与接口技术第4版机械工业出版社LRULRU替换算法替换算法LRULRU能较好地反映程序的局部性,因而其命中率较能较好地反映程序的局部性,因而其命中率较高,应用广泛;但实现的硬件较复杂高,应用广泛;但实现的硬件较复杂2 2路组相联:使用一个路组相联:使用一个U U位。某个位。某个CacheCache块被访问,块被访问,该块该块U U位置位置1 1;对应块;对应块U U位置位置0 0。替换。替换U U位为位为0 0的块的块4/8/164/8/16路组相联:运用堆栈型算法。最近访问
51、的路组相联:运用堆栈型算法。最近访问的块放上面,最下面存放最久没有访问的块。替换块放上面,最下面存放最久没有访问的块。替换最下面的块最下面的块微机原理与接口技术第4版机械工业出版社6.3.4 6.3.4 写入策略写入策略处理器对高速缓存的访问主要是读取访问处理器对高速缓存的访问主要是读取访问写入操作数的问题较复杂一些写入操作数的问题较复杂一些写命中写命中:写入的数据在高速缓存中:写入的数据在高速缓存中确认命中,才可以对确认命中,才可以对CacheCache块写入,写入后可能块写入,写入后可能导致与主存内容不一致导致与主存内容不一致要解决主存内容更新问题,保持数据的正确性要解决主存内容更新问题,
52、保持数据的正确性写未命中写未命中:指令对主存进行写入的操作数没:指令对主存进行写入的操作数没有在高速缓存中有在高速缓存中此时,写入的数据是否还要将其读回此时,写入的数据是否还要将其读回CacheCache呢?呢?微机原理与接口技术第4版机械工业出版社1. 1. 写命中的处理写命中的处理直写策略直写策略(write through)(write through)写入写入CacheCache的同时也写入主存(下一级存储器)的同时也写入主存(下一级存储器)优点:简单可靠优点:简单可靠缺点:总线操作频繁、影响工作速度缺点:总线操作频繁、影响工作速度解决方法:在解决方法:在CacheCache与主存间设
53、置一级与主存间设置一级/ /多级缓冲器,形多级缓冲器,形成实用的成实用的“缓冲直写缓冲直写”,提高速度,提高速度回写策略回写策略(write back)(write back)只写入只写入CacheCache,在被替换时才写回主存,在被替换时才写回主存优点:可以减少写入主存次数、提高速度优点:可以减少写入主存次数、提高速度缺点:硬件结构比较复杂缺点:硬件结构比较复杂实现方法:设置一个表明实现方法:设置一个表明CacheCache是否被修改的更新位是否被修改的更新位(updateupdate,污染位,污染位dirty bitdirty bit)。替换时只需将被修改)。替换时只需将被修改的的Cac
54、heCache块内容写入主存块内容写入主存微机原理与接口技术第4版机械工业出版社2. 2. 写未命中的处理写未命中的处理写未命中写未命中:指令对主存进行写入的操作数没有在:指令对主存进行写入的操作数没有在高速缓存中高速缓存中此时,写入的数据是否还要将其读回此时,写入的数据是否还要将其读回CacheCache呢?呢?写分配法写分配法( write allocate )( write allocate )先把数据所在的块调入先把数据所在的块调入CacheCache,然后再进行写入,然后再进行写入类似读失效的方式,也称类似读失效的方式,也称fetch on writefetch on write不写
55、分配法不写分配法( no-write allocate )( no-write allocate )直接把数据写入下一级存储器,不将相应的块调直接把数据写入下一级存储器,不将相应的块调入入CacheCache,也称,也称write aroundwrite around直写策略通常配合不写分配法直写策略通常配合不写分配法回写策略一般采用写分配法回写策略一般采用写分配法微机原理与接口技术第4版机械工业出版社3. 3. 数据一致性协议数据一致性协议系统存在多级、多个系统存在多级、多个CacheCache,一个主存数据可能具,一个主存数据可能具有多个副本,需要保持数据一致有多个副本,需要保持数据一致数
56、据一致性协议:用硬件方法解决高速缓存的数数据一致性协议:用硬件方法解决高速缓存的数据一致性问题据一致性问题MESIMESI协议协议是广泛应用的数据一致性协议是广泛应用的数据一致性协议修改修改M M:该:该CacheCache块已经被修改(与主存不同),而且只块已经被修改(与主存不同),而且只在这个在这个CacheCache中可用中可用唯一唯一E E:该:该CacheCache块与对应主存块相同,而且不存在于其块与对应主存块相同,而且不存在于其它它CacheCache中中共享共享S S:该:该CacheCache块与对应主存块相同,但可能存在于其块与对应主存块相同,但可能存在于其它它CacheC
57、ache中中无效无效I I:该:该CacheCache块包含的数据无效块包含的数据无效微机原理与接口技术第4版机械工业出版社6.3.5 804866.3.5 80486的的L1 CacheL1 Cache指令和数据共用指令和数据共用的的4 4路组合相关路组合相关CacheCache结构结构8KB8KB容量容量分成分成128128组,每组有组,每组有4 4路,每组每路路,每组每路为一行,每为一行,每行行为为1616个字节(个字节(128128位)位)每行对应每行对应2121位位标签标签,一个有效位,一个有效位每组中每组中4 4路对应路对应3 3位位LRULRU位,用于实现伪位,用于实现伪LRUL
58、RU替替换算法换算法采用采用4 4级级缓冲直写策略缓冲直写策略,允许,允许6 6个连续的写操个连续的写操作而无等待作而无等待写失效时,采用写失效时,采用不写分配法不写分配法,只将数据写入,只将数据写入主存,不进行主存,不进行CacheCache的回填的回填示意图示意图8048680486第一级高速缓存的结构第一级高速缓存的结构返回返回微机原理与接口技术第4版机械工业出版社6.3.6 Pentium6.3.6 Pentium的的L1 CacheL1 Cache指令和数据分离指令和数据分离的的2 2路组合相关路组合相关CacheCache结构结构指令指令CacheCache和数据和数据CacheC
59、ache都是都是8KB8KB,共,共16KB16KB8KB8KB容量分成容量分成128128组,每组组,每组2 2路,每行路,每行3232字节字节LRULRU算法,回写策略算法,回写策略( (可动态改变为直写策略可动态改变为直写策略) )微机原理与接口技术第4版机械工业出版社一次写一次写(write once)(write once)协议协议PentiumPentium采用采用MESIMESI协议,配合第一次直写,协议,配合第一次直写,以后回写,实现以后回写,实现L1L1和和L2 CacheL2 Cache的数据一致的数据一致操作操作L1L1状态状态L1L1数据数据L2L2数据数据 复位或清洗
60、后复位或清洗后 读入数据读入数据 第第1 1次直写次直写 再次回写再次回写 发生替换后发生替换后无效无效I I共享共享S S唯一唯一E E修改修改M M共享共享S S无效无效有效有效有效有效有效有效有效有效无效无效有效有效有效有效无效无效有效有效微机原理与接口技术第4版机械工业出版社6.4 6.4 存储管理存储管理存储器是计算机系统的重要资源,操作系统存储器是计算机系统的重要资源,操作系统的主要功能之一是存储管理:的主要功能之一是存储管理:如何动态地为多个任务分配存储器如何动态地为多个任务分配存储器IA-32IA-32处理器从硬件上支持并加速操作系统处理器从硬件上支持并加速操作系统的存储管理:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024人力资源管理实习基地实习实训合作协议范本7篇
- 2024年环保设施维护保养与节能减排服务协议3篇
- 2024年度航空航天配件验收及快速响应服务合同2篇
- 2024年度健身器材供应链铺货及分销合同3篇
- 2024年污水处理设备安装及运维服务协议版B版
- 2024事业单位职工培训进修聘用合同编制指南3篇
- 2025小家电采购合同范文
- 防火工程人工费施工合同
- 教育培训机构投资管理办法
- 福建省南平市2023-2024学年高二上学期期末考试历史试题(解析版)
- 收割机购销合同
- 医务人员医德医风诚信 档 案(模板)
- 脓毒症休克中西医详解
- 小兔子乖乖ppt课件.ppt
- 常压矩形容器设计计算软件
- 交流变换为直流的稳定电源设计方案
- PR6C系列数控液压板料折弯机 使用说明书
- 钢结构工程环境保护和文明施工措施
- 物业管理业主意见征询表
- 管道定额价目表
- 民国文献《潮州茶经》
评论
0/150
提交评论