3.5 主存储器与CPU的连接

3.5 主存储器与CPU的连接


3.5 主存储器与CPU的连接
  主存储器用来存放计算机运行期间所需要的程序和数据,它起承上启下的作用,是存储系统的核心…

3.5 主存储器与CPU的连接

3.5 主存储器与CPU的连接

  主存储器用来存放计算机运行期间所需要的程序和数据,它起承上启下的作用,是存储系统的核心。存储器的主要性能指标有存储容量、存取时间、存储周期和存储器带宽。其中存储容量描述的是存储器能容纳的存储单元总数;存取时间又称为访问时间,描述的是从启动一次存储器操作到结束该操作所经历的时间;存储周期描述的是连续启动两次读操作所需间隔的最小时间;存储器带宽描述的是单位时间内存储器所存取的信息量。其中存取时间、存储周期和存储器带宽都反映主存的速度。
  要了解主存储器与CPU的连接,需要先了解主存储器的组成结构及各部分的作用等。
  1.主存储器的组成结构
  主存通常由存储体、地址译码驱动电路、I/O和读写电路等部分组成,其组成的框图如图3-7所示。

  其中,存储体是存储单元的集合,用来存放数据;地址译码驱动电路包含译码器和驱动器两部分,译码器将地址总线输入的地址码转换成与之对应的译码输出线上的有效电平,以表示选中了某一存储单元,然后由驱动器提供驱动电流去驱动相应的读写电路,完成对被选中存储单元的读写操作;I/O和读写电路包括读出放大器、写入电路和读写控制电路,用以完成被选中存储单元中各位的读出和写入操作。
  2.存储器的存储单元
  存储单元是一个比较模糊的概念,表示存放数据的单元。存放一个字的存储单元称为字存储单元,相应的单元地址叫字地址;而存储一个字节的存储单元称为字节存储单元,相应的单元地址叫字节地址。存放字(或字节)的主存空间称为主存单元,大量主存单元的集合构成存储体,为了区别存储体中的各个存储单元,必须需要将各存储单元逐一编号。这个编号就是其地址,地址和存储单元之间有一对一的对应关系。
  计算机中的存储单元是字存储单元还是字节存储单元是由计算机的结构确定的。对于按字节编址的计算机,其存储体的存储单元是字节存储单元,即最小寻址单位是一个字节;对于按字编址的计算机,其存储体的存储单元是字存储单元,即最小寻址单位是一个字。不管是字存储单元,还是字节存储单元,CPU对主存可访问操作的最小单位就是存储单元。
  3.数据的存放
  目前,大多数存储器采用字节编址,基于这种编址,数据在主存中有3种不同存放方法,如图3-8所示。设存储字长为64位(8个字节),即一个存取周期最多能够从主存读或写64位数据。图3-8中最左边一列表示字地址(16进制),字地址的最末3个二进制位必定为000(用于8个字节编址)。假设,读写的数据有4种不同长度,它们分别是字节(8位)、半字(16位)、单字(32位)和双字(64位)。

  
  图3-8(a)给出的是一种不浪费存储器资源的存放方法,从图中可以看出,4种不同长度的数据一个紧接着上一个存放。这样做主要存在两个问题,一是除了访问一个字节以外,当要访问一个双字、一个单字或一个半字时都有可能需要花费两个存取周期,因为从图3-8(a)中可以看出,一个双字、一个单字或一个半字都有可能跨越两个存储字存放,这使存储器的工作速度降低了一半;二是存储器的读写控制比较复杂。
  为了克服上述两个缺点,出现了如图3-8(b)所示的数据存放方法。这种存放方法规定,无论要存放的是字节、半字、单字或双字,都必须从一个存储字的起始位置开始存放,而多余的部分浪费不用。很明显,这种数据存放方法能很好地克服图3-8(a)存在的缺点,但它无疑是浪费了存储器资源。
  综合前两种数据存放方法的优缺点,出现了如图3-8(c)所示的折中方案。图3-8(c)所示的存放方法规定,双字数据的起始地址的最末3个二进制位必须为000(8的整倍数),单字数据的起始地址的最末两位必须为00(4的整倍数),半字数据的起始地址的最末一位必须为0(偶数)。这种存储方式能够保证无论访问双字、单字、半字或字节,都能在一个存取周期内完成,尽管存储器资源仍然有浪费,但是比图3-8(b)所示的存放方法要好得多。这种存放方法被称为边界对齐的数据存放方法。
  4.主存容量的扩展
  随着计算机应用的不断发展,对主存容量的要求会不断提高,那么主存容量的可扩展就变得异常重要。在实际的应用中也是如此,如对我们几年前买的电脑的主存进行升级,一般会选择多插一根内存条。其实是增加存储芯片的数量。因为主存储器是由一定数量的存储芯片构成,它可以通过增加存储芯片来扩展自己的容量。
  当然,由多个芯片构成的主存还需要与CPU连接,才能在CPU的正确控制下完成读写操作。要组成一个主存,首先要考虑选片的问题,然后就是如何把芯片连接起来的问题。根据存储器所要求的容量和选定的存储芯片的容量,就可以计算出所需芯片的总数,即:

  例如:存储器容量为8K×8,若选用1K×4的存储芯片,则需要:

  对主存容量进行扩展的方法主要有位扩展法、字扩展法和字位同时扩展法。
  (1)位扩展法。位扩展法只在位数方向扩展,即只加大字长,如使用8K×1的存储器芯片,要组成8K×8的存储器,就可以采用位扩展法。位扩展法的连接方式是将各存储芯片的地址线、片选线和读写线相应地并联起来,而将各芯片的数据线单独列出。它的连接方式如图3-9所示。
  在这种方法下,没有选片要求,也就是说选片输入端直接接地。当CPU访问该存储器时,其发出的地址和控制信号同时传给8个芯片,选中每个芯片的同一单元,相应单元的内容被同时读至数据总线的各位,或将数据总线上的内容分别同时写入相应单元。

  (2)字扩展法。字扩展法与位扩展法完全不同,它只在字方向扩展,而位数不变。如使用16K×8的存储器芯片,要组成64K×8的存储器,就可以采用字扩展法。字扩展将芯片的地址线、数据线、读写线并联,由片选信号来区分各个芯片。它的连接方式如图3-10所示。

3.5 主存储器与CPU的连接

    关于作者: admin

    这里可以再内容模板定义一些文字和说明,也可以调用对应作者的简介!或者做一些网站的描述之类的文字活着HTML!

    为您推荐

    发表评论

    电子邮件地址不会被公开。 必填项已用*标注

    评论列表 人参与

    联系我们

    联系我们

    8888-88888888

    在线咨询: QQ交谈

    邮箱: email@admin.com

    工作时间:周一至周五,9:00-17:30,节假日休息

    关注微信
    微信扫一扫关注我们

    微信扫一扫关注我们

    关注微博
    返回顶部