【计算机组成原理】(唐朔飞)笔记-存储器
4.1概述
4.1.1 存储器分类
由于I/O设备不断增多,如果他们与存储器交换信息都通过CPU来实现,将大大降低CPU的工作效率。为此出现了I/O与存储器的直接存取方式(DMA)
1.按存储介质分类
存储介质是指能寄存”0″ “1”两种代码并能区别两种状态的物质或元器件。存储介质主要有半导体器件,磁性材料和光盘等。
(1)半导体存储器 TTL、MOS(易失)
(2)磁表面存储器 磁头、载磁体(非易失)
(3)磁芯存储器 硬磁材料、环状元件(非易失)
(4)光盘存储器 激光、磁光材料(非易失)
2. 按存取方式分类
(1)存取时间与物理地址无关(随机访问)
随机存储器 在程序的执行过程中可读可写
只读存储器 在程序的执行过程中只读
(2)存取时间与物理地址有关(串行访问)
顺序存取存储器 磁带
直接存取存储器 磁盘
主存可以直接与CPU交换信息。
辅存是主存的后援,用来存放暂时不用的程序和数据。
缓存用在速度不同的部件之中,例如,CPU与主存之间可以设置一个快速缓存,起到缓冲作用。
4.1.2 存储器的层次结构
1.存储器三个特性
CPU内可以有十几个,几十个寄存器,速度最快,位价最高,容量最小。主存存放将要参与运行的程序和数据,其速度与CPU差距较大,为了使他们速度更好的匹配,插入了比主存速度更快,容量更小的Cache(也在CPU内)。
辅存不能直接与CPU交换信息,只能和主存交换信息,所以速度比主存慢的多。
2.缓存-主存层次和主存-辅存层次与缓存,主存,辅存三级存储系统
在主存-辅存这一层次不断发展中,演化出了虚拟存储系统。在此系统中,程序员编程的地址范围与虚拟存储器的地址空间相对应。例如,机器指令地址码为24位,则虚拟存储器的存储单元可达16M。可是这个数与内存的实际存储单元个数相比,要大得多,称这类指令地址码叫虚地址(虚存地址、虚拟地址)或叫逻辑地址,而把主存的实际地址称作物理地址或实地址。物理地址是程序在执行过程中能够真正访问的地址,也是真实存在于主存的存储地址。对具有虚拟存储器的计算机系统而言,編程时可用的地址空间远远大于主存空间,使程序员以为自己占有一个容量极大的主存,其实这个主存并不存在,这就是我们将其称之为虚拟存储器的原因。对虚拟存储器而言,**其逻辑地址变换为物理地址的工作,是由计算机系统的硬件设备和操作系统自动完成的,对程序员是透明的。**当虚地址的内容在主存时,机器便可立即使用;若虚地址的内容不在主存,则必须先将此虚地址的内容传递到主存的合适单元后再为机器所用。
4.2主存储器
4.2.1 概述
1.主存基本组成
主存储器实际上,根据MAR中的地址访问某个存储单元时,还需经过地址译码、驱动等电路,才能找到所需访问的单元。读出时,需经过读出放大器,才能将被选中单元的存储字送到MDR。写入时,MDR中的数据也必须经过写入电路才能真正写入到被选中的单元中。可见,主存的实际结构如图4所示。
2.主存与CPU的联系
现代计算机的主存都由半导体集成电路构成,图中的驱动器、译码器和读写电路均制作在存储芯片中,而MAR和MDR制作在CPU芯片内。存储芯片和CPU芯片可通过总线连接。
读取和存储一个信息字的过程
当要从存储器读出某一信息字时,首先由CPU将该字的地址送到MAR,经地址总线送至主存,然后发读命令。主存接到读命令后,得知需将该地址单元的内容读出,便完成读操作,将该单元的内容读至数据总线上,至于该信息由MDR送至什么地方,这已不是主存的任务,而是由CPU决定的。若要向主存存入一个信息字时,首先CPU将该字所在主存单元的地址经MAR送到地址总线,并**将信息字送入MDR,**然后向主存发写命令,主存接到写命令后,便将数据线上的信息写入到对应地址线指出的主存单元中。
3.主存单元地址分配
主存各存储单元的空间位置是由单元地址号来表示的,而地址总线是用来指出存储单元地址号的(地址总线决定了字节寻址的范围),根据该地址可读出一个存储字。不同的机器存储字长也不同,为了满足字符处理的需要,常用8位二进制数表示一个字节,因此存储字长都取8的倍数。通常计算机系统既可按字寻址,也可按字节寻址。
例如IBM370机其字长为32位,它可按字节寻址,即它的每一个存储字包含4个可独立导址的字节,其地址分配如图4.5(a)所示。字地址是用该字高位字节的地址来表示,故其字地址是4的整数倍,正好用地址码的末两位来区分同字的4个字节的位置(00,01,10,11)。但对PDP-11机而言,其字地址是2的整数倍,它用低位字节的地址来表示字地址,如图4.5(b)所示。
由图4.5(a)所示,对24位地址线的主存而言,按字节寻址的范围是16M,按字寻址的范围为4M。由图4.5(b)所示,对24位地址线而言,按字节寻址的范围仍为16M,但按字寻址的范围为8M。
存储容量:可以是存放二进制代码的总位数,也可以是存放的字节总数:比如256MB–按字节寻址的地址线位数应对应28位。存储容量可以用b,也可以用B来表示。
存取时间:又叫存储器的访问时间( Memory Access Time),它是指启动次存储器操作(读或写)到完成该操作所需的全部时间。存取时间分读出时间和写入时间两种。读出时间是从存储器接收到有效地址开始,到产生有效输出所需的全部时间。写入时间是从存储器接收到有效地址开始,到数据写入被选中单元为止所需的全部时间
4.2.2 半导体存储芯片简介
- 译码驱动能把地址总线送来的地址信号翻译成对应存储单元的选择信号,该信号在读写电路的配合下完成对被选中单元的读写操作。
- 读写电路包括读出放大器和写入电路,用来完成读写操作。
- 存储芯片通过地址总线、数据总线和控制总线与外部连接。
- 地址线是单向输入的,其位数与芯片容量有关。
- 数据线是双向的(有的芯片可用成对出现的数据线分别作输入或输出),其位数与芯片可读出或写入的数据位数有关。
- 地址线和数据线的位数共同反映存储芯片的容量。如地址线为10根,数据线为4根,则芯片容量为2^10×4=4K.
- 控制线主要有读/写控制线与片选线两种。**读/写控制线(WE,OE)**决定芯片进行读/写操作,片选线(CE/CS)用来选择存储芯片。由于存储器是由许多芯片组成,需用片选信号来确定哪个芯片被选中(多路选择器/138译码器)。例如,一个64K×8位的存储器可用32片16K×1位存储芯片组成。但每次读出一个存储字时,只需选中8片。
2. 半导体存储芯片的译码驱动方式
- 线选法。
图是一个16×1字节线选法存储芯片的结构示意图。它的特点是用一根字选择线(字线),直接选中一个存储单元的各位(如一个字节)。这种方式结构较简单,但只适于容量不大的存储芯片。如当地址线A3A2A1A0为0000时,则第1根字线被选中,对应图中的第一行八位代码便可直接读出或写入。
- 重合法
图是一个1K×1位重合法结构示意图。显然,只要用64根选择线(X,Y两个方向各32根),便可选择32×32矩阵中的任一位。例如当地址线为全0时,译码输出X0和Y0有效,选中矩阵中的第0行、第0列那位。由于被选单元是由X、Y两个方向的地址决定的,故称重合法。当欲构成1K×1字节的存储器时只需用8片图示芯片即可。
4.2.3随机存储器
静态RAM
假设触发器已存有“1”信号,即A点为高电平。当需读出时,只要使行列地址选择信号均为有效,则使T5、T6、T7、T8均导通,A点高电平通过T6后,再由位线A通过T8作为读出放大器的输入信号,在读选择有效时,将“1”信号读出。
由于静态RAM是触发器存储信息,因此即使信息读出后,它仍保持其原状态,不需要再生。但电源掉电时,原存信息丢失,故它属易失性半导体存储器。
写入时可以不管触发器原状态如何,只要将写入代码送至DIN端,在写选择有效时,经两个写放大器,使两端输出为相反电平。当行、列地址选择有效时,使T5,T6,T7,T8导通,并使A与A’点置成完全相反的电平。这样,就把欲写入的信号写入到该单元电路中。如欲写入“1”,即DIN=1,经两个写放大器使位线A为高电平,位线A为低电平,结果使A点为高,A’点为低,即写入了“1”信息。
静态RAM读、写时序
图是2114RAM芯片读周期时序,在整个读周期中WE非始终为高电平(故图中省路)。读周期tRC是指对芯片进行两次连续读操作的最小间隔时间。读时间tA表示从地址有效到数据稳定所需的时间,显然读时间小于读周期。图中tCO是从片选有效到输出稳定的时间。可见只有当地址有效经tA后,且当片选有效经tCO后,数据才能稳定输出,这两者必须同时具备。根据tA和tCO的值,便可知当地址有效后,经tA-tCO时间必须给出片选有效信号,否则信号不能出现在数据线上。
写周期tWC是对芯片进行连续两次写操作的最小间隔时间。写周期包括滞后时间tAW、写入时间tW和写恢复时间tWR。在有效数据出现前,RAM的数据线上存在着前一时刻的数据Dout(如读操作图所示的维持时间),故在地址线发生变化后,CS非、WE非均需滞后tAW再有效,以避免将无效数据写入到RAM的错误。但写允许WE非失效后,地址必须保持一段时间,叫做写恢复时间。此外,RAM数据线上的有效数据(即CPU送至RAM的写入数据DIN)必须在CS非、WE非失效前的tDW时刻出现,并延续一段时间tDH(此刻地址线仍有效,tWR>tDH)以保证数据可靠写入。
动态RAM
常见的动态RAM基本单元电路有三管式和单管式两种,它们的共同特点都是靠电容存储电荷的原理来寄存信息的。若电容上存有足够多的电荷表示存”1”,电容上无电荷表示存“0”。电容上的电荷一般只能维持1~2ms,因此却使电源不掉电,信息也会自动消失。为此,必须在2ms内对其所有存储单元恢复一次原状态,这个过程叫再生或刷新。由于它与静态RAM相比,具有集成度更高,功耗更低等特点,目前被各类计算机广泛应用
(1)动态RAM的基本电路
三管MOS动态RAM基本单元电路:读出时,先对预充电管T4置一预充电信号(在存储矩阵中,每一列共用一个T4管),使读数据线达高电平VDD。然后由读选择线打开T2,若T1的极间电荷Cg存有足够多的电荷(被认为原存“1”),使T1导通,则因T2、T1导通接地,使读数据线降为零电平,读出“0”信息。若Cg没足够电荷(原存”0″),则T1截止,读数据线为高电平不变,读出“1”信息。可见,由读出线的高低电平可区分其是读“1”,还是读“0”,只是它与原存信息反相。
写入时,将写入信号加到写数据线上,然后由写选择线打开T3,这样,Cg便能随输入信息充电(写“1”)或放电(写“0”)。
单管MOS动态RAM基本单元电路:读出时,字线上的高电平使T导通,若Cs有电荷,经T管在数据线上产生电流,可视为读出“1”。若Cs无电荷,则数据线上无电流,可视为读出“0”。读操作结東时,Cs的电荷已泄放完毕,故是破坏性读出,必须再生。
写入时,字线为高电平使T导通,若数据线上为高电平,经T管对Cs充电,使其存“1”;若数据线为低电平,则Cs经T放电,使其无电荷而存“0”。
动态RAM和静态RAM的比较
4.2.4只读存储器
对半导体ROM而言,基本器件为两种:MOS型和TTL型
MOS型掩膜ROM。
PROM是可以实现一次性编程的只读存储器。
EPROM是一种可擦除,可编程只读存储器。(多次编程)
PD非/Progr是功率下降/编程输入端,在读出时为低电平。
今天的文章计算机组成原理唐朔飞目录_计算机组成原理存储器设计例题分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/82269.html