欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    微机原理存储器和高速缓存技术课件.ppt

    • 资源ID:1525372       资源大小:1.62MB        全文页数:110页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    微机原理存储器和高速缓存技术课件.ppt

    第四章 存储器和高速缓存技术,4.1 存储器和存储器件4.2 存储器的连接4.3 虚拟存储器4.4 高档微机中的高速缓存技术,2,4.1存储器和存储器件,除采用磁、光原理的辅存外,其它存储器主要都是采用半导体存储器本章介绍采用半导体存储器及其组成主存的方法,3,存储器的逻辑结构示意图,4,高,小,快,存储器三个主要特性的关系,存储器的层次结构,5,1、主存和高速缓存之间的关系,Cache引入:为解决cpu和主存之间的速度差距,提高整机的运算速度,在cpu和主存之间插入的由高速电子器件组成的容量不大,但速度很高的存储器作为缓冲区。Cache特点存取速度最快,容量小,存储控制和管理由硬件实现。,6,Cache工作原理程序访问的局部性,在较短时间内由程序产生的地址往往集中在存储器逻辑地址空间的很小范围内。(指令分布的连续性和循环程序及子程序的多次执行)这种对局部的存储器地址频繁访问,而对此范围以外的地址范围甚少的现象就成为程序访问的局部性。数据分布不如指令明显,但对数组的访问及工作单元的选择可使存储地址相对集中。,7,2、主存与辅存之间的关系,主存:(半导体材料组成)优:速度较快缺:容量居中,单位成本高,价格居中。辅存:(光盘,磁盘)优:容量大,信息长久保存,单位成本低.缺:存取速度慢CPU正在运行的程序和数据存放在主存暂时不用的程序和数据存放在辅存辅存只与主存进行数据交换,8,缓存 主存层次和主存 辅存层次,虚拟存储器,虚地址,逻辑地址,实地址,物理地址,主存储器,(速度),(容量),9,虚拟存储器(Virtual Memory),虚拟存储器指的是为了扩大容量,把辅存当作主存使用,它将主存和辅存的地址空间统一编址,形成一个庞大的存储空间。程序运行时,用户可以访问辅存中的信息,可以使用与访问主存同样的寻址方式,所需要的程序和数据由辅助软件和硬件自动调入主存,这个扩大了的存储空间,就称为虚拟存储器。之所以称为虚拟存储器,是因为这样的主存并不是真实存在的。 在一个虚拟存储系统中,展现在CPU面前的存储器容量并不是实存容量加上辅存容量,而是一个比实存大得多的虚拟空间,它与实存和辅助空间的容量无关,取决于机器所能提供的虚存地址码的长度。 可分为页式虚拟存储器、段式虚拟存储器和段页式虚拟存储器,10,选择存储器件的考虑因素,(1)易失性 (2)只读性(3)位容量 (4)功耗(5)速度 (6)价格(7)可靠性,11,4.1 主存储器,4.1.1 半导体存储器的分类按制造工艺双极型:速度快、集成度低、功耗大MOS型:速度慢、集成度高、功耗低按使用属性随机存取存储器RAM:可读可写、断电丢失只读存储器ROM:正常只读、断电不丢失,12,半导体存储器的分类,半导体存储器,只读存储器 (ROM),随机存取存储器(RAM),静态RAM(SRAM)动态RAM(DRAM) 非易失RAM(NVRAM),掩膜式ROM一次性可编程ROM(PROM) 紫外线擦除可编程ROM(EPROM)电擦除可编程ROM(EEPROM)闪烁存储器FLASH ROM(EEPROM),13,1.读写存储器RAM,14,2.只读存储器ROM,掩膜ROM:信息制作在芯片中,不可更改PROM:允许一次编程,此后不可更改EPROM:用紫外光擦除,擦除后可编程;并允许用户多次擦除和编程EEPROM(E2PROM):采用加电方法在线进行擦除和编程,也可多次擦写Flash Memory(闪存):能够快速擦写的EEPROM,但只能按块(Block)擦除,15,半导体存储器芯片的结构, 存储体存储器芯片的主要部分,用来存储信息 地址译码电路根据输入的地址编码来选中芯片内某个特定的存储单元 片选和读写控制逻辑选中存储芯片,控制读写操作,16, 存储体,每个存储单元具有一个唯一的地址,可存储1位(位片结构)或多位(字片结构)二进制数据存储容量与地址、数据线个数有关:芯片的存储容量2MN存储单元数存储单元的位数 M:芯片的地址线根数 N:芯片的数据线根数,17,存储矩阵,字结构:同一芯片存放一个字的多位,如8位。 优点是:选中某个单元,其包含的各位信息可从同一芯片读出,缺点是芯片外引线较多,成本高.适合容量小的静态RAM. 位结构:同一芯片存放多个字的同一位. 优点是芯片的外引线少,缺点是需要多个芯片组和工作.适合动态RAM 和大容量静态RAM,一个基本单元电路只能存放一位二进制信息,为保存大量信息,存储器中需要将许多基本单元电路按一定的顺序排列成阵列形式,这样的阵列称为存储矩阵.排列方式:字结构和位结构.,18,2、地址译码器,功能:接收系统总线传来的地址信号,产生地址译码信号后,选中存储矩阵中的某个或几个基本存储单元.从结构类型上分类:单译码,双译码单译码方式适合小容量的存储器例如:地址线12根对应4096个状态,需要4096根译码线双译码方式适合大容量存储器(也称为矩阵译码器)分X、Y两个方向的译码例如:地址线12根X、Y方向各6根,64*64=4096个状态,128根译码线,19, 地址译码电路,单译码结构双译码结构双译码可简化芯片设计主要采用的译码结构,20, 片选和读写控制逻辑,片选端CS*或CE*有效时,可以对该芯片进行读写操作输出OE*控制读操作。有效时,芯片内数据输出该控制端对应系统的读控制线写WE*控制写操作。有效时,数据进入芯片中该控制端对应系统的写控制线,21,随机存取存储器,静态RAMSRAM 2114SRAM 6264,动态RAMDRAM 4116DRAM 2164,22,4.1.2 静态RAM,1.六管静态存储电路SRAM的基本存储单元是触发器电路每个基本存储单元存储二进制数一位许多个基本存储单元形成行列存储矩阵SRAM一般采用“字结构”存储矩阵:每个存储单元存放多位(4、8、16等)每个存储单元具有一个地址,23,静态RAM的六管基本存储单元,集成度低,但速度快,价格高,常用做Cache。,T1和T2组成一个双稳态触发器,用于保存数据。T3和T4为负载管。如A点为数据D,则B点为数据/D。,T1,T2,A,B,T3,T4,+5V,行选择线有效(高电 平)时,A 、B处的数据信息通过门控管T5和T6送至C、D点。,行选择线,列选择线,列选择线有效(高电 平)时,C 、D处的数据信息通过门控管T7和T8送至芯片的数据引脚I/O。,24,SRAM的主要特点,静态RAM存储电路MOS管较多,集成度不高,同时由于T1、T2管必定有一个导通,因而功耗较大。静态RAM的优点是不需要刷新电路,从而简化了外部控制逻辑电路,此外静态RAM存取速度比动态RAM快,因而通常用作微型计算机系统中的高速缓存(Cache)。,25,2. 静态RAM的结构,典型的RAM的示意图,26,3. 静态RAM芯片举例,常用的静态RAM芯片主要有6116、 6264、 62256、 628128等。下面重点介绍6116,2114芯片。,27,SRAM芯片2114,存储容量为1024418个引脚:10根地址线A9A04根数据线I/O4I/O1片选CS*读写WE*,28,Intel 6116,6116芯片内部的存储体是一个由128128 16384个静态存储电路组成的存储矩阵。 A0A10 11根地址线供对其进行行、列地址译码,以便对211 2048个存储单元进行选址。6116有8根数据输入/输出线I/O0I/O7 ,每条列选择线控制8位。,29,6116芯片引脚图,30,图4.5 6116芯片内部功能框图,31,6116芯片的工作方式,32,SRAM芯片6264,存储容量为8K828个引脚:13根地址线A12A08根数据线D7D0片选CS1*、CS2读写WE*、OE*,33,4.2.3 动态RAM,DRAM的基本存储单元是单个场效应管及其极间电容必须配备“读出再生放大电路”进行刷新每次同时对一行的存储单元进行刷新每个基本存储单元存储二进制数一位许多个基本存储单元形成行列存储矩阵DRAM一般采用“位结构”存储体:每个存储单元存放一位需要8个存储芯片构成一个字节单元每个字节存储单元具有一个地址,34,DRAM芯片2164,存储容量为64K116个引脚:8根地址线A7A01根数据输入线DIN1根数据输出线DOUT行地址选通RAS*列地址选通CAS*读写控制WE*,35,3动态RAM的刷新 所有的DRAM都是利用电容存储电荷的原理来保存信息, 虽然利用MOS管栅源极间的高阻抗可以使电容上的电荷得以维持,但由于电容总存在泄露现象,时间长了其存储的电荷会消失,从而使其所存信息自动丢失。所以,必须定时对DRAM的所有基本存储元电路补充电荷,即进行刷新操作,以保证存储的信息不变。所谓刷新,就是不断地每隔一段时间(一般每隔2 ms)对DRAM的所有单元进行读出,经读出放大器放大后,再重新写入原电路中,以维持电容上的电荷,进而使所存信息保持不变。虽然每次进行的正常读/写存储器的操作也相当于进行了刷新操作,但由于CPU对存储器的读/写是随机的,并不能保证2 ms 时间内能对存储器中的所有单元都进行一次读/写操作, 以达到刷新效果。所以,对DRAM必须设置专门的外部控制电路和安排专门的刷新周期来系统地对DRAM进行刷新。,36,DRAM工作时,除了正常的读/写操作之外,还要定时刷新, 这就需要设置专门的控制电路来管理DRAM芯片的工作,许多半导体生产厂家推出了专用的DRAM控制器。DRAM控制器有多种,随所支持的DRAM芯片型号的不同而不同,如Intel 8203是专门用于支持DRAM 2118(16 K1)、2164(64 K1)芯片的DRAM控制器。但不论是哪一种DRAM控制器,它都是CPU与DRAM存储器之间的接口电路,由它把CPU的信号转换成适合DRAM芯片的信号,解决DRAM芯片地址的两次打入(行地址打入和列地址打入)及刷新操作中的刷新定时、刷新计数、冲突裁决等问题。,37,MOS型SRAM与DRAM芯片比较 *DRAM芯片的优点: DRAM集成度远高于SRAM(DRAM采用3管或单管MOS存储元); DRAM地址引脚减少了一半(采用双地址时序方式时); DRAM功耗是SRAM的1/6(DRAM采用单管MOS存储元时); DRAM成本是SRAM的1/4(需增加辅助电路)。,*DRAM芯片的缺点: DRAM速度比SRAM低(使用动态元件电容); DRAM需配置再生电路,增加了一部分功耗。,*芯片应用: 高速度、小容量MEM常用SRAM芯片构成,如Cache; 大容量MEM常用DRAM芯片构成,如主存。,38,4.1.4 只读存储器,EPROMEPROM 2716EPROM 2764,EEPROMEEPROM 2717AEEPROM 2864A,39,半导体只读存储器组成与原理(非易失性),1、基本结构,特点及类型,40,2、一次性可编程存储器PROM,41,1、掩模ROM(MROM) *特征:用户不可修改信息; 存储元状态:用元件有/无表示“1”/“0”; 数据读出:字选线加电压,位线电压为所选存储元的数据。,42,2、可编程ROM(PROM) *特征:用户可一次性修改信息(电写入); *存储元状态:用二极管/熔丝的通/断表示“1”/“0”;,*数据写入:字线X加电压,若写0 VD=V地熔丝熔断, 若写1 VD=V中熔丝不断; *数据读出:字线X加电压、VD=V中, 用检测VD变化的方法可得数据。,43,3、可擦除可编程ROM(EPROM) *特征:用户可多次修改信息(电写入、光擦除); *存储元状态:用浮置雪崩注入MOS管/叠栅注入MOS管的浮置栅是否带负电荷表示“1”/“0”(以叠栅注入MOS管为例);,*写数据“1”(写入): 如右图,脉冲宽度约50ms;,*数据读出:如右图,读出周期us级。,*写数据“0” (擦除):用紫外线照射1020分钟(浮置栅上电子获得光子能量电子穿过SiO2层与基体电荷中和)整个芯片一起擦除;,44,4、电可擦除可编程ROM(E2PROM) *特征:用户可多次修改信息(电写入、电擦除); *存储元状态:用浮栅隧道氧化层MOS管的浮置栅是否带负电荷表示“1”/“0”;,*写数据/数据读出: 如下图,写脉冲宽度约10ms,读出周期us级; 擦除精度可为块(一般同一行存储元的GC互连); 因擦/写时间较长、电压较高,故常用做ROM(只读出)。,45,5、快擦写存储器(FLASH) *特征:用户可多次修改信息(电写入、电擦除); *存储元状态与结构:与EPROM类似,氧化层更薄(擦除快);,*数据写入:写入“1”与EPROM相同,脉冲宽度约10us, 写入“0”与E2PROM相同,脉冲宽度约100us; 擦除精度只能为块(一般同一行存储元的GC互连)。,46,EPROM芯片2716,存储容量为2K824个引脚:11根地址线A10A08根数据线DO7DO0片选/编程CE*/PGM读写OE*编程电压VPP,47,EPROM芯片2764,存储容量为8K828个引脚:13根地址线A12A08根数据线D7D0片选CE*编程PGM*读写OE*编程电压VPP,48,EPROM芯片27256,49,EEPROM,用加电方法,进行在线(无需拔下,直接在电路中)擦写(擦除和编程一次完成)有字节擦写、块擦写和整片擦写方法并行EEPROM:多位同时进行串行EEPROM:只有一位数据线,50,EEPROM芯片2817A,存储容量为2K828个引脚:11根地址线A10A08根数据线I/O7I/O0片选CE*读写OE*、WE*状态输出RDY/BUSY*,51,EEPROM芯片2864A,存储容量为8K828个引脚:13根地址线A12A08根数据线I/O7I/O0片选CE*读写OE*、WE*,52,4.2半导体存储器与CPU的连接,SRAM、EPROM与CPU的连接译码方法同样适合I/O端口,53,4.2.1 存储芯片与CPU的连接,存储芯片的数据线 存储芯片的地址线 存储芯片的片选端 存储芯片的读写控制线,54,CPU与存储器的连接时应注意的问题,1CPU总线的带负载能力2存储器的组织、地址分配与片选问题3CPU的时序与存储器的存取速度之间的配合,55,55,1CPU总线的负载能力,通常CPU总线的负载能力是一个TTL器件或20个MOS器件。一般小型系统中,CPU可直接与存储器芯片相连。而在较大系统中,当总线负载数超过限定时应当加接驱动器。地址线、控制线是单向的,故采用单向驱动器,如74LS244,Intel8282等,而数据线是双向传动的,故采用双向驱动器,如74LS245、Intel8286/8287等。,56,56,2存储器与CPU之间的时序配合,选用存储芯片时,必须考虑它的存取速度和CPU速度的匹配问题,即时序配合。为了使CPU能与不同速度的存储器相连接,一种常用的方法是使用“等待申请”信号。该方法是在CPU设计时设置一条“等待申请”输入线。若与CPU连接的存储器速度较慢,使CPU在规定的的读/写周期内不能完成读/写操作,则在CPU执行访问存储器指令时,由等待信号发生器向CPU发出“等待申请”信号,使CPU在正常的读/写周期之外再插入一个或几个等待周期Tw,以便通过改变指令的时钟周期数使系统速度变慢,从而达到与慢速存储器匹配的目的。,57,57,3存储芯片的选用和地址分配,存储芯片类型和芯片型号的选择因素存放对象存储容量存取速度结构价格。,58,58,片选控制方法,存储芯片,存储模块,存储体,位扩展:因每个字的位数不够而扩展数据输出线的数目;字扩展:因总的字数不够而扩展地址输入线的数目,所以也称为地址扩展;,59,1. 存储芯片数据线的处理,若芯片的数据线正好8根:一次可从芯片中访问到8位数据全部数据线与系统的8位数据总线相连若芯片的数据线不足8根:一次不能从一个芯片中访问到8位数据利用多个芯片扩充数据位这个扩充方式简称“位扩充”,60,存储芯片的位扩展:,用64K1bit的芯片扩展实现64KB存储器,进行位扩展时,模块中所有芯片的地址线和控制线互连形成整个模块的地址线和控制线,而各芯片的数据线并列(位线扩展)形成整个模块的数据线(8bit宽度)。,存储器容量的扩展,61,位扩充,2114(1),A9A0,I/O4I/O1,片选,D3D0,D7D4,A9A0,2114(2),A9A0,I/O4I/O1,多个位扩充的存储芯片的数据线连接于系统数据总线的不同位数其它连接都一样这些芯片应被看作是一个整体常被称为“芯片组”,进行位扩展时,模块中所有芯片的地址线和控制线互连形成整个模块的地址线和控制线,而各芯片的数据线并列(位线扩展)形成整个模块的数据线(8bit宽度)。,62,62,存储芯片的字扩展:,用8K8bit的芯片扩展实现64KB存储器,进行字扩展时,模块中所有芯片的地址线、控制线和数据线互连形成整个模块的低位地址线、控制线和数据线 , CPU的高位地址线(扩展的字线)被用来译码以形成对各个芯片的选择线 片选线 。,63,2. 存储芯片地址线的连接,芯片的地址线通常应全部与系统的低位地址总线相连寻址时,这部分地址的译码是在存储芯片内完成的,我们称为“片内译码”,64,片内译码,A9A0,存储芯片,65,3. 存储芯片片选端的译码,存储系统常需利用多个存储芯片扩充容量也就是扩充了存储器地址范围进行“地址扩充”,需要利用存储芯片的片选端对多个存储芯片(组)进行寻址这个寻址方法,主要通过将存储芯片的片选端与系统的高位地址线相关联来实现这种扩充简称为“地址扩充”或“字扩充”,66,地址扩充(字扩充),片选端,D7D0,A19A10,A9A0,译码器,0000000001,0000000000,进行字扩展时,模块中所有芯片的地址线、控制线和数据线互连形成整个模块的低位地址线、控制线和数据线 , CPU的高位地址线(扩展的字线)被用来译码以形成对各个芯片的选择线 片选线 。,67,片选端常有效,A19A15A14A0 全0全1,D7D0,27256EPROM,A14A0,令芯片(组)的片选端常有效不与系统的高位地址线发生联系芯片(组)总处在被选中的状态虽简单易行、但无法再进行地址扩充,会出现“地址重复”,68,地址重复,一个存储单元具有多个存储地址的现象原因:有些高位地址线没有用、可任意使用地址,出现地址重复时,常选取其中既好用、又不冲突的一个“可用地址”例如:00000H07FFFH选取的原则:高位地址全为0的地址,高位地址译码才更好,69, 译码和译码器,译码:将某个特定的“编码输入”翻译为唯一“有效输出”的过程译码电路可以使用门电路组合逻辑译码电路更多的是采用集成译码器常用的2:4译码器74LS139常用的3:8译码器74LS138常用的4:16译码器74LS154,70,存储地址译码电路74LS138经常用来作为存储器的译码电路。,74LS138引脚,71,74LS138的真值,72, 全译码,所有的系统地址线均参与对存储单元的译码寻址包括低位地址线对芯片内各存储单元的译码寻址(片内译码),高位地址线对存储芯片的译码寻址(片选译码)采用全译码,每个存储单元的地址都是唯一的,不存在地址重复译码电路可能比较复杂、连线也较多,73,全译码示例,74, 部分译码,只有部分(高位)地址线参与对存储芯片的译码每个存储单元将对应多个地址(地址重复),需要选取一个可用地址可简化译码电路的设计但系统的部分地址空间将被浪费,75,部分译码示例,76, 线选译码,只用少数几根高位地址线进行芯片的译码,且每根负责选中一个芯片(组)虽构成简单,但地址空间严重浪费必然会出现地址重复一个存储地址会对应多个存储单元多个存储单元共用的存储地址不应使用,77,线选译码示例,注意: A14 A1300的情况不能出现00000H01FFFH的地址不可使用,78,CPU与存储器典型连接,1. 设计地址译码电路,步骤:(1)确定(扩展)地址线数(2)确定地址分配(3)画地址分配图和位图(4)画出地址译码电路图并连接,实用中,应尽可能选择大容量片,以简化电路和减少板卡面积。,79,2、 存储器芯片的扩展存储器芯片扩展的方法有以下两种:1存储器芯片的位扩充适用场合:存储器芯片的容量满足存储器系统的要求,但其字长小于存储器系统的要求。例1 用1K4的2114芯片构成lK8的存储器系统。分析: 由于每个芯片的容量为1K,故满足存储器系统的 容量要求。但由于每个芯片只能提供4位数据,故需用2片这样的芯片,它们分别提供4位数据至系统的数据总线,以满足存储器系统的字长要求。,80,设计要点:l 将每个芯片的10位地址线按引脚名称一一并联,按次序逐根接至系统地址总线的低10位。l 数据线则按芯片编号连接,1号芯片的4位数据线依次接至系统数据总线的D0-D3,2号芯片的4位数据线依次接至系统数据总线的D4-D7。l 两个芯片的 端并在一起后接至系统控制总线的存储器写信号(如CPU为8086/8088,也可由 和 M或IO/ 的组合来承担)。l 引脚也分别并联后接至地址译码器的输出,而地址译码器的输入则由系统地址总线的高位来承担。,81,具体连线见图 当存储器工作时,系统根据高位地址的译码同时选中两个芯片,而地址码的低位也同时到达每一个芯片,从而选中它们的同一个单元。在读/写信号的作用下,两个芯片的数据同时读出,送上系统数据总线,产生一个字节的输出,或者同时将来自数据总线上的字节数据写入存储器。,82,根据硬件连线图,我们还可以进一步分析出该存储器的地址分配范围如下:(假设只考虑16位地址) 地 址 码 芯 片 的 地 址 范 围A15 . A12 A11 A10 A9 . A0 0 0 0 0 0 0 0 0 H : : : : 0 0 1 1 0 3 F F H表示可以任选值,在这里我们均选0。这种扩展存储器的方法就称为位扩展,它可以适用于多种芯片等。,83,例2、用1K1(8102)的芯片构成lK8的存储器系统。,84,2存储器芯片的字扩充适用场合:存储器芯片的字长符合存储器系统的要求,但其容量太小。例3用2K8的2716存储器芯片组成8K8的存储器系统。分析:由于每个芯片的字长为8位,故满足存储器系统的字长要求。但由于每个芯片只能提供2K个存储单元,故需用4片这样的芯片,以满足存储器系统的容量要求。设计要点:同位扩充方式相似。l 先将每个芯片的11位地址线按引脚名称一一并联,然后按次序逐根接至系统地址总线的低11位。l将每个芯片的8位数据线依次接至系统数据总线的D0-D7。,85,l四个芯片的 端并在一起后接至系统控制总线的存储器读信号(这样连接的原因同位扩充方式),l 它们的 引脚分别接至地址译码器的不同输出,地址译码器的输入则由系统地址总线的高位来承担。连线见图,86,同样,根据硬件连线图,我们可以进一步分析出该存储器的地址分配范围如下表:(假设只考虑16位地址)地 址 码 芯片的地址范围 对应芯片编号A15 . A13 A12 A11 A10 A9 . A0 0 0 0 0 0 0 0 0 0 H : : 2716-1 0 0 1 1 1 0 7 F F H 0 1 0 0 0 0 8 0 0 H : : 2716-2 0 1 1 1 1 0 F F F H 1 0 0 0 0 1 0 0 0 H : : 2716-3 1 0 1 1 1 1 7 F F H 1 1 0 0 0 1 8 0 0 H : : 2716-4 1 1 1 1 1 1 F F F H表示可以任选值,在这里我们均选0。,87,当存储器工作时,根据高位地址的不同,系统通过译码器分别选中不同的芯片,低位地址码则同时到达每一个芯片,选中它们的相应单元。在读信号的作用下,选中芯片的数据被读出,送上系统数据总线,产生一个字节的输出。这种扩展存储器的方法就称为字扩展,它同样可以 适用于多种芯片,如可以用8片27128(16k8)组成一 个128K8的存储器等。3同时进行位扩充与字扩充 适用场合:存储器芯片的字长和容量均不符合存储器系 统的要求,这时就需要用多片这样的芯片同时进行位扩 充和字扩充,以满足系统的要求。,88,例4 用1K4的2114芯片组成2K8的存储器系统。分析:由于芯片的字长为4位,因此首先需用采用位扩充的方法,用两片芯片组成1K8的存储器。再采用字扩充的方法来扩充容量,使用两组经过上述位扩充的芯片组来完成。设计要点:每个芯片的10根地址信号引脚应接至系统地址总线的低10位,每组两个芯片的4位数据线分别接至系统数据总线的高/低四位。地址码的A10、A11经译码后的输出,分别作为两组芯片的片选信号,每个芯片的控制端直接接到CPU的读/写控制端上,以实现对存储器的读/写控制。,89,硬件连线如图,90,当存储器工作时,根据高位地址的不同,系统通过译码器分别选中不同的芯片组,低位地址码则同时到达每一个芯片组,选中它们的相应单元。在读/写信号的作用下,选中芯片组的数据被读出,送上系统数据总线,产生一个字节的输出,或者将来自数据总线上的字节数据写入芯片组。同样,根据硬件连线图,我们也可以进一步分析出该存储器的地址分配范围如下:(假设只考虑16位地址)地 址 码 芯片组的地址范围 对应芯片组编号A15 . A13 A12 A11 A10 A9 . A0 0 0 0 0 0 0 0 0 H : : 2114-1 0 0 1 1 0 3 F F H 0 1 0 0 0 4 0 0 H : : 2114-2 0 1 1 1 0 7 F F H表示可以任选值,在这里我们均选0。,91,思考:从以上地址分析可知,此存储器的地址范围是0000H-07FFH。如果系统规定存储器的地址范围从0800H开始,并要连续存放,对以上硬件连线图该如何改动呢? 由于低位地址仍从0开始,因此低位地址仍直接接至芯片组。于是,要改动的是译码器和高位地址的连接。我们可以将两个芯片组的片选输入端分别接至译码器的Y2和Y3输出端,即当A11、A10为10时,选中2114-1,则该芯片组的地址范围为 0800H-0BFFH,而当A11、A10为11时,选中2114-2,则该芯片组的地址范围为 0C00H-0FFFH。同时,保证高位地址为0(即A15-A12为0)。这样,此存储器的地址范围就是0800H-0FFFH了。(具体连线自己考虑),92,例5 一个存储器系统包括2KRAM和8KROM,分别用1K4的2114芯片和2K8的2716芯片组成。要求ROM的地址从1000H开始,RAM的地址从3000H开始。完成硬件连线及相应的地址分配表。 分析:该存储器的设计可以参考本节的例3和例4。所不同的是,要根据题目的要求,按规定的地址范围,设计各芯片或芯片组片选信号的连接方式。整个存储器的硬件连线如图所示。,93,根据硬件连线图,我们可以分析出该存储器的地址分配范围如下。(假设只考虑16位地址),94,地 址 码 芯片的地址范围 对应芯片编号A15 A14 A13 A12 A11 A10 A9 . A0 0 0 0 1 0 0 0 0 1 0 0 0 H : : 2716-1 0 0 0 1 0 1 1 1 1 7 F F H 0 0 0 1 1 0 0 0 1 8 0 0 H : : 2716-2 0 0 0 1 1 1 1 1 1 F F F H 0 0 1 0 0 0 0 0 2 0 0 0 H : : 2716-3 0 0 1 0 0 1 1 1 2 7 F F H 0 0 1 0 1 0 0 0 2 8 0 0 H : : 2716-40 0 1 0 1 1 1 1 2 F F F H,95,地 址 码 芯片的地址范围 对应芯片编号A15 A14 A13 A12 A11 A10 A9 . A0 0 0 1 1 0 0 0 0 3 0 0 0 H : : 2114-1 0 0 1 1 0 0 1 1 3 3 F F H 0 0 1 1 1 0 0 0 3 8 0 0 H : : 2114-2 0 0 1 1 1 0 1 1 3 B F F H,96,4.4高速缓存Cache及其工作原理,在慢速的DRAM和快速CPU之间插入速度较快、容量较小的SRAM,起到缓冲作用,又不使成本上升过高。,原因:程序访问的局部性。对局部范围的存储器地址频繁访问,而对此范围以外的地址则访问甚少的现象,就称为程序访问的局部性。 加之循环程序段和子程序段要重复执行多次。,方法:不断地将与当前指令集相关联的一个不太大的后继指令集从内存读到Cache,然后再与CPU高速传送,从而达到速度匹配。,Cache的工作原理,97,Cache的工作原理,操作:CPU对数据请求时,通常先访问Cache;不命中再访问存储器,获取的同时,也把它拷进Cache 。,命中率: Cache空间与主存空间保持适当比例的映射关系,命中率还会较高的。,CPU访问Cache和内存关系图,98,Cache的组织方式,地址映像:CPU把内存数据复制到Cache时,将内存地址经某种函数处理后,写入Cache标志字段的过程。,地址变换:在程序执行时,把主存地址变换为访问Cache地址的过程。,Cache与内存的三种映像关系 1.全相联映像方式 要将主存的全部地址写入Cache的标志字段。内存的一个区块可以映像到Cache的任何一个地方。,99,1.全相联映像方式,全相联映像规则图 联映像地址变换过程,比较:主存的整个地址与Cache中的每一个单元的标志字段比较。,优点:冲突概率最低,Cache利用率最高。缺点:全比较而使查表速度难以提高,且控制线路复杂,成本太高。适宜小容量Cache。,100,2.直接映像方式,内存中每一块只能一一对应到Cache的(唯一的)相应位置上。仅将主存的区段号写入Cache的标志字段。,比较:仅主存区段号=标志字段内容?,访问:主存区段内偏移地址去访问Cache一个单元。,唯一对应映像关系,101,直接映像优点:硬件控制电路简单,只需容量较少的按地址访问的区号标志表存储器,且访问Cache与访问区号表、比较区号表的操作同时进行。直接映像缺点:最致命Cache块冲突率高。只要两个或以上的经常使用的块恰好被映像到Cache同一个块位置上时,就会使Cache的命中率急剧下降。,2.直接映像方式,102,3. 组相联映像方式,内存的一个区块可以映像到Cache几个特定的区块中。 原理:将Cache空间和内存地址空间都分成组,各组之间是直接映像,但组内各块则是全相联映像。 当分组中每一组块数为“1”时,就成了直接映像;当每一组块数和Cache块数相同时就成了全相联映像。 优点:是命中率比直接映像方式稍高。 缺点: 是控制器比较复杂。,103,Cache 的数据更新方法,问题提出: Cache与内存数据不一致。 数据传送时,Cache更新,内存未变; DMA传送时,内存更新,Cache未变。 1. Cache已更新,内存未更新 (1)通写方式 CPU写Cache时,Cache控制器立即写对应内存。,104,Cache 的数据更新方法,问题提出: Cache与内存数据不一致。 数据传送时,Cache更新,内存未变; DMA传送时,内存更新,Cache未变。 1. Cache已更新,内存未更新 (1)通写方式 (2)缓冲通写方式 Cache和内存之间增加一个缓冲器。 要改写的数据先存在缓冲器中,在CPU进入下一个操作时,缓冲器的内容才被写入内存。,105,Cache 的数据更新方法,问题提出: Cache与内存数据不一致。 数据传送时,Cache更新,内存未变; DMA传送时,内存更新,Cache未变。 1. Cache已更新,内存未更新 (1)通写方式 (2)缓冲通写方式 (3)回写方式 Cache每个区块都设置一个更新标记位, CPU对Cache中某一块写入后,更新标志位置“1”。 当Cache中区块要被新的内存区块替换时,如更新位=1时,则Cache控制器先把Cache现有的内容写入内存相应位置,并把更新标志清“0”,再做替换。,106,4.3 虚拟存储器,4.3.1 页式虚拟存储器4.3.2 段式虚拟存储器4.3.3 段页式虚拟存储器,返 回,107,4.3.1 页式虚拟存储器,将虚拟空间与主存空间都划分为若干大小相同的页,虚存的页称为虚页,主存的页称为实页。用户编程时也将程序的逻辑空间分为若干(虚)页。相应的虚地址可分为两部分:高位段是虚页号,低位段是页内地址。,返 回,108,4.3.2 段式虚拟存储器,将用户程序按其逻辑结构(如模块划分)分为若干段,各段大小可变。 相应的段式虚拟存储器也随程序的需要动态地分段,并将各段的起始地址与段的长度写入段表之中。编程使用的虚地址就包含两部分:高位是段号,低位是段内地址。,返 回,109,4.3.3 段页式虚拟存储器,段页式虚拟存储管理方式采用了用分段来组织其逻辑地址空间,用分页来管理物理存储空间结构的综合的存储管理策略。这种虚拟存储器方式是把主存空间按页划分,程序按其逻辑结构分段,每段再分为若干大小与实页相同的页。相应地建立段表与页表,分级查表实现虚实地址的转换。以页为单位调进或调出主存,按段共享与保护程序及数据。,返 回,110,本章结束,谢谢合作!,

    注意事项

    本文(微机原理存储器和高速缓存技术课件.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开