920 likes | 1.14k Views
第 3 章 存储系统. 本章内容: 存储器概述 随机读写存储器 只读存储器和闪速存储器 高速存储器 cache 存储器 虚拟存储器 存储保护. 3.1 存储器概述. 存储器是计算机中的记忆设备,它主要负责存放数据和程序。 构成存储器的存储介质,目前主要采用半导体器件和磁性材料。存储器中最小的存储单位就是一个双稳态半导体电路或一个 CMOS 晶体管或磁性材料的 存储元 ,它可存储一个二进制代码。由若干个存储元组成一个 存储单元 ,然后再由许多存储单元组成一个 存储器 。. 存储器的分类 -按存储介质分 半导体存储器:用半导体器件组成的存储器。
E N D
第3章 存储系统 本章内容: • 存储器概述 • 随机读写存储器 • 只读存储器和闪速存储器 • 高速存储器 • cache存储器 • 虚拟存储器 • 存储保护
3.1存储器概述 存储器是计算机中的记忆设备,它主要负责存放数据和程序。 构成存储器的存储介质,目前主要采用半导体器件和磁性材料。存储器中最小的存储单位就是一个双稳态半导体电路或一个CMOS晶体管或磁性材料的存储元,它可存储一个二进制代码。由若干个存储元组成一个存储单元,然后再由许多存储单元组成一个存储器。
存储器的分类 -按存储介质分 半导体存储器:用半导体器件组成的存储器。 磁表面存储器:用磁性材料做成的存储器。 -按存储方式分 随机存储器:存取时间和存储单元的物理位置无关。 顺序存储器:存取时间和存储单元的物理位置有关。 -按存储器的读写功能分 只读存储器(ROM):只能读出而不能写入的半导体存储器。 随机读写存储器(RAM):既能读出又能写入的半导体存储器。 -按信息的可保存性分 非永久记忆的存储器:断电后信息即消失的存储器。 永久记忆性存储器:断电后仍能保存信息的存储器。 -按在计算机系统中的作用分 主存储器、辅助存储器、高速缓冲存储器、控制存储器等。
内部存储器 外部存储器 CPU • 存储器的分级结构 Cache 三级存储模式
主存储器的技术指标: 1)存储容量:指主存能存放二进制代码的总数。 现代计算机中用半导体触发器的两个状态表示1和0,一个半导体触发器可以保存一个二进制数,称为一个bit(位),8个触发器可以保存八个二进制数,称为一个BYTE(字节)。两个字节称为一个WORD(字)。 2)存储速度 a.存取时间(访问时间) :指从一次读(写)操作命令发出到该操作完成将数据读到数据缓冲寄存器为止所经历的时间。以ns为单位,存取时间又分读出时间、读入时间两种。 b.存取周期 :指存储器连续启动两次独立的操作所需间隔的最小时间,以ns为单位,存取周期=存取时间+等待时间。 c.存储器带宽:每秒从存储器进出信息的最大数量,单位为位/秒或者字节/秒。如存取周期为500ns,每个存取周期可访问16位,则存储器带宽为: 16位/(500 ╳10-9)秒=3.2 ╳ 107 位/秒 = 32 ╳106 位/秒 = 32M位/秒
存储器与CPU的连接 CPU与存储器的信息交换主要依靠系统总线来完成,根据总线传递信息的不同,系统总线被分为数据总线,地址总线和控制总线三大类。 -数据总线DB(data bus):传输CPU与存储器之间的二进制数据,双向线。数据总线的位数决定了CPU一次可以和存储器交换数据的位数,是微型机的重要指标。 -地址总线AB(address bus):传输CPU送出的地址信息,用来确定和CPU交换数据的存储单元,单向线。地址总线的位数决定了CPU可以直接寻址的内存空间。 可寻址空间=2n (n为地址总线的位数) -控制总线CB(control bus):传输CPU发出的控制信号,包括片选信号、读/写信号,存储器/IO端口访问信号,双向线。
0# 1# 2# 3# 0# 1023# … … … 译码电路 译码电路 0 0 0 1 … … … A1 A0 A9 A0 -地址译码驱动方式:根据地址总线的信息选中存储元的过程。 单译码:译码器只有一个,译码器的输出称为字选择线,被选单元由字选择线直接选定,地址输入线有N根,则能够确定2n个字地址,该方式下译码输出线过多,只适用于容量较小的存储芯片。
双译码:译码器有两个,X译码器称为行译码器,决定选中某行,Y译码器称为列译码器,决定选中某列,被选单元由X、Y两个方向的译码输出决定。该方式可以极大的节省译码输出线。双译码:译码器有两个,X译码器称为行译码器,决定选中某行,Y译码器称为列译码器,决定选中某列,被选单元由X、Y两个方向的译码输出决定。该方式可以极大的节省译码输出线。
WR 0 A0 地址总线 1 A1 1 A2 0 A3 M/IO D0 控制总线 数据总线 处理器 1 1
半导体存储器的结构 -存储体:由存储元按照一定的规则排列而成的矩阵,存储体中的每一个单元只能存储一位二进制值。 -地址译码电路:包括地址寄存器和地址译码器,地址寄存器用来对地址总线的数据锁存,地址译码器对地址译码选中存储体中的某个确定的存储单元, -控制电路:给出读/写控制信号以及芯片选择信号确定对某个存储单元的具体操作。 -读/写电路:包括读/ 写放大器和数据寄存器,读写放大器对数据放大,数据寄存器暂存写入存储器或者从存储器中读出的数据。
行地址译码器 存储器 …… 读写放大器 数据寄存器 …… D15~D0 控制电路 …… 列地址译码器 地址寄存器 RD WR M/IO A19~A0 半导体存储器的结构
3.2 随机读写存储器 • 静态MOS存储器(SRAM) • 动态MOS存储器(DRAM) • 主存储器组成实例 • 高性能存储器 目前广泛使用的随机读写存储器是MOS管半导体存储器,根据存储信息原理的不同分静态存储器和动态存储器。 半导体存储器的优点是存取速度快,存储体积小以及可靠性高,价格低廉。半导体存储器的缺点是断电后不能保持信息。
SRAM存储器:静态RAM -六管存储元: • 信息保持:T1和T2管为工作管 若T1管截止,则A点为高电平,使T2管导通,此时B点处于低电平,而B点的低电平会使A点更加截止,这是稳定状态。 若T1管导通,则A点为低电平,使T2管截止,此时B点处于高电平,而B点的高电平会使A点更加导通,这是稳定状态。 电路有两种稳定状态,而且A和B点的电位总相反,假设以A点的高电平表示1,低电平表示0,那么这个触发器电路就能稳定的表示一个二进制数。 1 0 0 1
1 1 • SRAM存储器:静态RAM -六管存储元: T5~T8管为控制管,当存储元组成存储器时,必须能按照地址选择存储元对其进行操作,如果一个存储元被选中,则其X地址译码线和Y译码线均处于高电平。 X地址译码线为高电平时,就会使T5和T6管导通, Y地址译码线为高电平时,就会使T7和T8管导通,这样输入输出的I/O与I/O就会与A和B点相连,从而使A和B的信息0和1输出到I/O与I/O上,反之I/O与I/O上的信息0和1输入到A和B上。 1 1
0 1 1 0 • SRAM存储器:静态RAM -六管存储元: 写入:若某个存储元被选中,则该存储元的T5,T6,T7,T8管均导通,写1时,在I/O线上输入高电位,在I/O线上输入低电位,把高、低电位分别加在A,B点,使T1管截止,使T2管导通,将1写入存储元。 读出:若某个存储元被选中,则该存储元的T5,T6,T7,T8管均导通,A,B两点与位线D与D相连存储元的信息被送到I/O与I/O线上。I/O与I/O线接着一个差动读出放大器 ,从其电流方向可以判知所存信息是1还是0。
Inter2114,1K×4位,片上有4096个六管存储元电路,排成64×64方阵,地址线10位(A0~A9), 其中A3~A8(6根)用于行译码→64行,A0~A2,A9用于列译码→16条列选线, 每条线同时接4位(共16×4=64列)
存储器扩展 CPU对存储器进行读/写操作,首先由地址总线给出地址信号,然后要发出读操作或写操作的控制信号,最后在数据总线上进行信息交流,要完成地址线的连接、数据线的连接和控制线的连接。 存储器芯片的容量是有限的,为了满足实际存储器的容量要求,需要对存储器进行扩展。主要方法有: -位扩展:存储器的存储单元数不变,每个单元的位数(字长)增加。 例:由8K×1位的芯片构成8K×8位的存储器 分析:可用芯片8K×1:指8K个单元,每单元为1位。 存储器8K×8:8K个单元,每单元为8位。要13根地址线,8根数据线 方法:共需8片芯片, 地址总线(13根):将所有地址线并联入所有芯片; 数据总线(8根):每条数据线1片连1位 控制线:CE并联(全选),WE并联。
-字扩展:每单元位数不变,增加单元个数。 例:用16K×8的芯片构成64K×8的存储器 分析:可用芯片16K×8:16K个单元,每单元为8位。 存储器64K×8:64K个单元,每单元为8位。要16根地址线,8根数据线 方法:共需4片芯片, 数据总线:每片芯片的数据线分别与数据总线D0~D7相连 地址总线:每片芯片的是16K,需要14位地址线,将地址总线的低位地 址A0~A13连入各芯片,高两位通过译码器作片选信号 控制线:CE接高两位地址的译码输出,WE串联接入每个芯片。 4片地址分配: 第1片 00 00 0000 0000 0000 11 1111 1111 1111 即 0000H~3FFFH 第2片 01 00 0000 0000 0000 11 1111 1111 1111 即 4000H~7FFFH 第3片 10 00 0000 0000 0000 11 1111 1111 1111 即 8000H~BFFFH 第4片 11 00 0000 0000 0000 11 1111 1111 1111 即 C000H~FFFFH
-字位同时扩展法:一个存储器的容量假定为M×N位,若使用L×k 位的芯片(L<M,k<N),需要在字向和位向同时进行扩展,共需要(M/L)×(N/k)个存储器芯片。 例:用1K×4的芯片构成4K×8的存储器 分析:4K×8指4K个单元(12根地址线),每单元为8位(8根数据线)。 方法:1)共需2片芯片进行位扩展,构成1K*8的存储器。 地址总线:将地址线的A0~A9并联入所有芯片; 数据总线:1片芯片连数据线4位,共8位; 控制线:CE并联(全选),WE并联。 2)共需4组芯片(每组两片)进行字扩展,构成4K*8的存储器。 数据总线:每组芯片的数据线分别与数据总线D0~D7相连 地址总线:每组芯片的是1K,需要10位地址线,将地址总线的低 位地址A0~A9串连入各芯片,高两位地址通过译码器 作作为4组芯片的片选信号。 控制线:CE接高两位地址的译码输出,WE串联接入每个芯片。
存储片进行两次连续读操作时所必须间隔的时间,在整存储片进行两次连续读操作时所必须间隔的时间,在整 个读周期中,地址信号保持始终有效 从给出有效地址到外部数据总线上稳定地出现所读 出的数据信息所经历的时间 - 存储器的读周期 当CPU与存储器连接时,读出数据的过程如下: 1)cpu通过地址总线给出有效的地址信号,确定存储器的唯一单元 2)当主存由多片存储器构成时,给出片选信号,选中唯一一片的存储器 3)选中的存储单元的数据出现在数据总线上,cpu读入数据。 因此cpu的控制信号和与存储器的读、写周期配合问题非常重要
为了保证避免发生错误写入,地址信号有效有效在经过一为了保证避免发生错误写入,地址信号有效有效在经过一 段时间后,写信号才能有效。 为了在地址变化期间发生避免发生错误写入,写信号 在变为高电平经过一段时间后地址信号才能改变。 -存储器的写周期 当CPU与存储器连接时,写出数据的过程如下: 1)cpu通过地址总线给出有效的地址信号,确定存储器的唯一单元 2)当主存由多片存储器构成时,给出片选信号,选中唯一一片的存储器 3)cpu给出有效的写信号,并将写入存储器的数据放在数据总线上。 4)数据总线上的数据送存储单元。
【例1】下图是SRAM的写入时序图。其中R/W是读/写命令控制线,当R/W线为低电平时,存储器按给定地址把数据线上的数据写入存储器。请指出下图写入时序中的错误,并画出正确的写入时序图。【例1】下图是SRAM的写入时序图。其中R/W是读/写命令控制线,当R/W线为低电平时,存储器按给定地址把数据线上的数据写入存储器。请指出下图写入时序中的错误,并画出正确的写入时序图。 R/W线加负脉冲时,地址线和数据线的电平必须是稳定的。当R/W线达到低电平时,数据立即被存储。 因此,当R/W线处于低电平时,如果数据线改变了数值,那么存储器将存储新的数据⑤。 当R/W线处于低电平时地址线如果发生了变化那么同样数据将存储到新的地址②或③。
-单管存储元: • 写入:字选择线为“1”,T1管导通,写入信息由位线(数据线)存入电容C中; • 读出:字选择线为“1”,存储在电容C上的电荷,通过T1输出到数据线上,通过读出放大器即可得到存储信息。 • 刷新:电容C上存储的信息电荷有泄漏,随着时间增长会丢失信息,必须由外界按一定的规律给它充电,补充信息电荷,这一过程称为“刷新”。 • DRAM存储器:动态RAM 优点:单管电路的优点是管子少,集成度高,芯片面积小 缺点:刷新困难,读出的1和0需要读出放大器配合。
0 1 1 1 1 0 1 0 -四管存储元: • 写操作: I/O与I/O加相反的电 平,字选择线使T5和T6导通,信息送AB端。当T5,T6截止时,靠T1和T2管栅极电容的存储作用保留所写入的信息。 • 读操作: 先给出预充信号,使T9与T10管导通,位线D和D上的电容都达到电源电压。字选择线使T5和T6管导通时,假设存储的信息为“1”,电容C2的存储电荷使T2导通,D上的预充电荷经过T2泄漏,故D为“0”,而D上的预充电荷没有泄漏,仍为“1”,信号经过I/O与I/O输出。 • 刷新:读出时,D上的电荷通过A点向电容C2补充,完成刷新。
- DRAM的刷新 • 为什么要刷新? 因为靠电容存储电荷的原理保存信息,而电荷一般只能保持1~2ms,所以必须在2ms内对其所有存储单元通过读取动作(不输出读取结果)恢复一次原状态,该过程叫刷新或再生。 • 什么是刷新周期? 在刷新的过程中,依次使行选择线(字选择线)有效,每次再生一行,即可完成对整个存储器的刷新。从上一次对整个存储器刷新结束到下一次对整个存储器全部刷新一遍为止的时间称为刷新周期,一般2ms。 • 刷新的方式有哪些? 根据刷新方式的不同,刷新一般分为三种:一种是集中式刷新,一种是分散式刷新,一种是异步式刷新。
集中式刷新 指在一个刷新周期内,利用一段固定时间,依次对M的所有行逐一刷新,在此期间停止对M的读/写操作。 例:128*128的矩阵存储器,设读/写的周期为0.5us,刷新的时间为2ms。 则:每个刷新周期内有2000/0.5=4000个读/写工作周期,其中128个读周期用于刷新,此段时间不能访问存储器,4000-128=3872个用于读/写周期。 该方式主要适用于高速存储器。
分散式刷新: 把一个存储系统周期分为两半,周期前半段时间用来读/写操作或维持信息,周期后半段时间作为刷新时间。这样,每经过128个系统周期时间,整个存储器便全部刷新一遍。 例:128*128的矩阵存储器,设读/写的周期为0.5us,则存储器系统周期为1us(前0.5us用于读/写,后0.5us用于刷新)。每个存储器系统周期刷新一行,整个存储器刷新128行需要128us,比允许的2ms少的多,但系统速度慢
异步式刷新方式 是集中刷新和分散刷新结合,在2ms内将128行分散地刷新一遍,则每隔2ms/128刷新一行即可,可用每隔2ms/128时间产生一次刷新中断请求的办法处理,这种刷新方式称为异步式刷新。实际产品多数是集中刷新和分散刷新结合。 例:1M(512*2048)×1位DRAM的刷新方法,刷新周期定为8ms,读/写周期为0.5μs。 该存储器共512行,刷新的地址是A0~A8;在8ms中要进行512个周期的刷新,每个周期刷新一行2048个单元,即可对1M存储单元的刷新。可以采用的刷新方式是: 1)8ms进行512次的集中刷新方式 2)8ms÷512=15.5μs刷新一次的异步刷新方式,即在31读/写周期中进行一次刷新。
-DRAM的一般电气特征: 因为内部存储器的容量越大越大,所以地址线引入量也增大了,为降低成本并增加成品率,一般的DRAM芯片采用地址线减半的措施。 应有地址引入线 线实有地址引入线 64K×4 : 16 8 128K×4 : 17 9 256K×4 : 18 9 512K×4 : 19 10 1024K×4 : 20 10 · 片内增设行、列地址缓冲锁存器 · 在片外多路选择器件的引导下先在地址线上送入行地址,由RAS信号锁存,后在地址线上送入列地址,由CAS信号锁存。· 核心阵列(矩阵)与行、列地址译码、刷新放大器如常规。 · 刷新控制计数器用于产生刷新时所须的行地址。 · 输出为三态控制。 · 刷新周期2-64毫秒不等,
-DRAM存储芯片实例(续) 1)414256的基本组成:是512×512×4的存储器阵列。在此基础上设有读出放大器与I/O门控制电路、行地址缓冲器/译码器、列地址缓冲器/译码器、数据输入/输出缓冲器、刷新控制 /计数器以及时钟发生器等。 2)414256的存储器访问:行地址和列地址分两次输入。首先由信号锁存由地址线A8~A0输入的9位行地址,然后再由信号锁存由地址线A8~A0输入的9位列地址,经译码选中某一存储单元,在读/写控制信号的控制下,可对该单元的4位数据进行读出或者写入。 3)414256的刷新:由于动态存储器读出时须预充电,因此每次读/写操作均可进行一次刷新。MCM414256需要每8mS刷新一次。刷新时通过在512个行地址间进行集中式刷新,也可以采用分散刷新,也可以采用异步式刷新。
地址多路开关:刷新时需要提供刷新地址,非刷新时需提供读写地址,由多路开关进行选择。地址多路开关:刷新时需要提供刷新地址,非刷新时需提供读写地址,由多路开关进行选择。 刷新定时器:定时电路用来提供刷新请求。 刷新地址计数器:只用RAS(行地址选择)信号的刷新操作,需要提供刷新地址计数器。 定时发生器:提供行地址选通信号RAS、列地址选通信号CAS和写信号WE. 仲裁电路:对来自CPU的访问存储器的请求和来自刷新定时器的刷新请求的优先权进行裁定。 -存储器控制电路 DRAM存储器的刷新需要有硬件电路的支持,包括刷新计数器、刷新/访存裁决、刷新控制逻辑等。这些控制线路形成DRAM控制器,它将CPU的信号变换成适合DRAM片子的信号。
高性能的主存储器 DRAM芯片有两个发展趋势:一是进一步提高集成度,几乎一直以两年4倍的速度向前发展,从90年代末期的64M位到现在的512M位,而且价格亦是大幅度下降;二是提高存取速度,这包括采用更先进的半导体材料、改进工艺以及引入cache技术等,存取时间现在可达到6~7ns,甚至到3ns。下面介绍具有典型意义的EDRAM芯片,以及用它组成的内存条。 -EDRAM芯片 SRAM的特点是存取速度快,不需要刷新,但集成度不高容量小。DRAM的特点是集成度高容量大,但存取速度慢,需要刷新。EDRAM芯片又称增强型DRAM芯片,它在DRAM 芯片上集成了一个SRAM实现的小容量高速缓冲存储器,从而使DRAM芯片的性能得到显著改进。
第二步:内存地址的低9位,在列选通信号作用下经过A0~Al0地址引脚输入,作为列地址并被锁存。读允许信号有效时,512个4位组的SRAM cache中某一4位组被此列地址选中,其4位组经D0~D3送出芯片。
比较 第三步:下一次读取时,输入的行地址立即与最后读出行地址锁存器的内容相比较,若相符则SRAM cache命中,由输入的列地址从cache选择某一位组送出即可。只在比较不相符时,才需要如刚才所述那样驱动DRAM阵列。
以SRAM保存一行内容的办法,对成块传送非常有利。如果连续的地址高11位相同,意味着属于同一行地址,那么连续变动的 9位列地址就会使SRAM中相应位组连续读出,这称为猝发式读取。 EDRAM的这种结构还带来另外两个优点: -在SRAM读出期间可同时对DRAM阵列进行刷新。 -芯片内的数据输出路径与输入路径是分开的,允许在写操作完成的同时来启动同一行的读操作。 -EDRAM内存条 1片EDRAM的容量为1M×4位,8片这样的芯片可组成1M×32位的存储模块。 8个芯片共用片选信号Sel。行选通信号RAS、刷新信号Ref和地址输入信号A0~A10。两片1M×4位的EDRAM芯片的列选通信号CAS接在一起,形成一个1M×8位(1MB)的片组。4个片组成一个1M×32位(4MB)的存储模块。
存储地址(24位) 4个模块的片选信号 决定列选通信号CAS的有效性 行地址(11位) 列地址(9位) 块选(2位) 块内字地址(20位) 字节允许(2位)
这样的存储模块本身具有高速的成块存取能力。如果块的连续地址是高13位保持不变(A23~A22是模块选择,A21~A11是块内行地址),那么只有第一个存储字需要经过一个完整的存取周期(DRAM要6个总线时钟周期),后续存储字的存取,因其内容已在SRAM cache中,故存取周期大为缩短(SRAM要2个总线时钟周期)。读取4个32位的字,使用了6--2--2--2个总线时钟周期;存储器写入也有相似的速度提高。 这种模块内存储字完全顺序排放,以猝发式存取来完成高速成块存取的方式,在当代微型机中获得了广泛应用。PC通常是将这种由若干个DRAM芯片组成的模块做成电路插件板,称为内存条。 -几种新型存储器芯片简介 • CDRAM(带高速缓存动态存储器) 与EDRAM类似,在DRAM芯片上集成一定数量的高速SRAM,来提高存储器性能。
SDRAM(同步动态存储器) 与DRAM的最大不同是需要外部时钟。连续读写时可达到一个CLOCK一个数据,一般达到5-1-1-1(第1个数据需5个时钟,第2-4个数据一个时钟),比EDRAM的6-2-2-2快。 • DRDRAM(接口动态存储器) 与DRAM区别:引脚定义随命令而变,同一组引脚线可以被定义成地址或控制线,其引脚数仅为正常DRAM的1/3。 • DDR DRAM(双数据传输率同步动态存储器) 在SDRAM的基础上采用延时锁相环技术,在时钟脉冲的上升沿和下降沿都可传输数据,使数据传输率提高1倍,目前广泛的应用在PC机上。 • SL DRAM(同步链动态存储器) 在原DDR DRAM基础上发展起来,但Intel公司不支持这种标准,故未来一段时间不会成为主流产品。
允许用户编程写入一次。 利用特定电压的电信号擦除 掩模式ROM 只读存储器ROM (写入方式不同) 可编程PROM 制作集成电路时掩模固化程序 光可擦EPROM 利用紫外线或者X射线擦除 电可擦E2PROM 3.3 只读存储器和闪速存储器 • 只读存储器(ROM) 它的特点是可以随机的读出其中的内容,但不能写入,是一种非易失性存储器,掉电后存储在其中的信息不会丢失。一般用来存放监控程序、管理软件。
不导通 P沟道EPROM基本电路结构如右上图所示,在N型基片上生长了两个高浓度的P型区,分别引出源极(S)和漏极(D),在2极之间有一个硅极,被绝缘体SiO2包围。管子制作好后,栅极内没有电荷,所以管子内没有导电沟道,S极和D极之间不导电。 P沟道EPROM组成的基本存储元如右下图所示,当把EPROM用于存储矩阵时,这种存储矩阵的输出为全“1”。 -光擦可编程只读存储器(EPROM) 1)基本存储元电路 1 1
导通 2)EPROM的写入和擦除 由于EPROM的默认输出为1,所以只要考虑写入0和读出0的过程以及擦除的过程。 写入0时,在D极和S极之间加上25V高压,所选中的单元在电压的作用下被击穿,电子通过绝缘层注入到硅栅,高电压去除后,硅极被绝缘层包围电子无处泄漏,形成导电沟道。 读出时,字选线为高电平,EPROM内有导电沟道,从而EPROM存储元导通,位线输出为0。 EPROM芯片封装的上方有一个石英玻璃窗口,用紫外线照射这个窗口,硅栅上的电子形成光电流泄漏走,把写入的0抹去,存储单元恢复初始状态。 1 0
3)EPROM实例(2716) 2716为16K位(2K*8)的EPROM芯片,11条地址线,7条用于行译码,4条用于列译码,具有8位输出缓冲,正常工作电压VCC为5V,脱机编程时的写入电压VPP为25伏。为了减少功耗,2716可以工作在功耗降低模式下,将PD/PGM端置为高电平即可。
例:CPU的地址总线16根(A15—A0,A0为低位),双向数据总线8根(D7—D0),控制总线中与主存有关的信号有MREQ(允许访存, 低电平有效),R/W(高电平为读命令,低电平为写命令)。 主存地址空间分配如下:0—8K为系统程序区,由只读存储芯片组成;8K—32K为用户程序区;最后(最大地址)2K地址空间为系统程序工作区。上述地址为十进制,按字节编址。现有如下存储器芯片: EPROM:8K×8位(控制端CS) SRAM:16K×1位,2K×8位,4K×8位,8K×8位. 上述芯片中选择适当芯片设计该计算机主存储器,画出主存储器逻辑框图,注意画出选片逻辑(可选用门电路及3∶8译码器74LS138)与CPU的连接,说明选哪些存储器芯片,选多少片。
分析:CPU有16根地址线,可寻址64K空间。 系统程序区:0-8KB(8K×8),用1片EPROM。 用户程序区:8KB-32KB(3*8K*8),用3片8K×8RAM。 系统程序工作区:最后2K,用一片2K×8RAM。 主存地址空间分布如右图: 0K 8K 32k 64K 000 0 0000 0000 0000 ~ 000 1 1111 1111 1111 001 0 0000 0000 0000 ~ 001 1 1111 1111 1111 010 0 0000 0000 0000 ~ 010 1 1111 1111 1111 011 0 0000 0000 0000 ~ 011 1 1111 1111 1111 A15~A13片选, A12~A0片内存储单元选择 111 1 1000 0000 0000 ~ 111 1 1111 1111 1111 A15~A13片选,A12~A11必须为高电平,低11位片内存储单元选择
Y0 Y1 Y2 Y3 Y7 cs cs cs cs cs 采用74LS138芯片3∶8译码器,用Y0,Y1,Y2,Y3和Y7输出端,且对最后的2K×8位芯片还需加门电路译码。主存与CPU连接逻辑图如下图所示: … … …
3.4 高速存储器 由于CPU和主存储器在速度上不匹配,而且在一个CPU周期中可能需要用几个存储器字,这便限制了高速计算,为了使CPU不至因为等待存储器读写操作的完成而无事可做,可以采取一些加速CPU和存储器之间有效传输的特殊措施: -主存储器采用更高速的技术来缩短存储器的读出时间,或者 增加存储器的字长来增加一次读出的数据量。 -采用并行工作的双端口存储器。 -采用多模块交叉的存储技术 -采用高速缓冲存储器(cache)来缩短读出时间