计算机组成概述(2.2存储系统)


计算机组成原理——2.2 存储系统

一、主存存储器与CPU的连接

MDR和MAR都集成在CPU

单个存储芯片的容量可能不是很大,往往需要通过存储器芯片拓展技术,把多个芯片集成在一个内存条上,然后由多个内存条+主板上的ROM芯片,组成计算机所需要的主存空间。

内存条插槽就是存储器总线。内存条通过总线与主板相连,然后链接到CPU。

8x8位存储芯片原理图

由于单个存储芯片的容量是有限的,在字数或者字长上与实际的存储器要求都有差距。因此,需要在字和位两个方面进行扩充。通常采用的方法如下:

  • 位拓展法:使数据总线宽度=存储芯片宽度(数据总线)
  • 字拓展法:拓展主存字数(地址总线)
  • 字位同时拓展

1、位扩展

当 CPU的数据线数 与 存储芯片的数据位数 不相等时,就进行位扩展。(针对数据总线)

用多个存储芯片扩充存储字长

举个栗子:

  • 有一个8k*1位的芯片,8k对应了2的13次方

    所以需要13根地址线表示地址,将其和CPU连接起来

  • 假设现在数据总线有8位,那我们就可以链接八个这样的芯片

    每传进来一个八位的数据,就由这八块芯片,分别存储这八位数据的其中一位。

  • 由上可知,地址总线、读写控制信号线(WE)、片选信号(CS),由这八个芯片共同使用。

位扩展连线图

2、字扩展法

CPU的地址线数存储芯片的地址位数不相等时,就进行字扩展。(针对数据总线)

该方法把多出来的地址引脚接到译码器上,用译码器区分不同的片选信号,由这些片选信号来启动不同的存储芯片。

地址总线(部分)、数据总线、读写控制信号线(WE)由这些芯片共同使用。片选信号(CS)接上译码器使用

字拓展连接原理图

3、字位同时扩展

有了前面的理解,我们直接上原理图

字位同时扩展原理图

16k的存储,对应2的14次方。所以需要使用14条线来表示。

采用字位同时扩展时,各个芯片连接地址线的方式相同

但连接数据线的方式不同。且片选信号需要连接译码器。

二、存储芯片的地址分配和片选

CPU选择存储芯片的操作叫做片选

选中后,为选中的芯片按照地址码,选择相应的存储单元,用来存储数据。这个操作叫做字选

片内的字选,通常是由CPU送出的N条低位地址线完成的。

地址线直接连到所有存储芯片的地址输入端

N由片内存储容量$ 2^{N} $决定。

片选信号的产生分为线选法,译码片选法

1、线选法

使用专门的地址线直接链接(或者加个反相器),接到存储芯片上。

  • 由于是直接链接到存储芯片,当专用的地址线,**有两个及以上的片选信号发出时,会造成访问冲突。
  • 举个栗子,比如只有两个存储芯片,线选法就只能在专门的地址线,比如最高位两位,选择控制芯片.
  • 如果此时最高位同时为00,或者11,就会导致访问数据出现问题
  • 而且会导致存储地址不连续。00xxxxxx和11xxxxxx的地址就是不可用的,可以看出有一定的局限性

2、译码片选法

就是使用译码器,用来产生片选信号。可以通俗的理解为,把8421码转成单独的一个个片选输出

译码器

虽然在连接过程中,需要接入译码器芯片,但是n条线可以产生$ 2^{n} $个片选信号,二千地址空间连续,实用性更高

三、外存储器

磁表面存储器,是指把某些磁性材料薄薄地涂在铝或者塑料表面上,作为记忆载体,一次存储信息。磁盘、磁带、磁鼓存储器都是磁表面存储器

1、磁盘存储器

磁盘存储器的优点:

  • 存储容量大,位价格低。相同价位下,机械硬盘的存储容量会比固态硬盘的大

  • 存储介质可以重复使用

  • 记录信息可以长期保存而不丢失,可以脱机存档

  • 非破坏性读出,读出时不需要再生

缺点:

  • 存取速度慢
  • 机械结构比较复杂
  • 对工作环境要求比较高(容易受到强磁场的干扰)

1. 磁盘设备的组成

磁盘存储器原理图

由磁盘驱动器,磁盘控制器和盘片组成

  • 磁盘驱动器的核心部件是磁头和盘片。温彻斯特盘是一种可移动磁头,固定盘片的存储器
  • 磁盘控制器,硬盘和主机的接口,常见的有IDE、SCSI、SATA

SCSI存储流程

  • 存储区

    • 一块硬盘有很多个盘片,也就是记录面,每个记录面划分为若干个磁道,每条磁道划分为若干个扇区(也称为块)。扇区是磁盘读写的最小单位。磁盘按照块来存取
    • 磁头数-Heads:也就是记录面数,表示硬盘一共有多少个磁头。磁头用来读取、写入盘片的信息,一个记录面对应一个磁头

    • 柱面数-Cylinder:表示硬盘的每个盘片上有多少个磁道。这个名词可以理解为,有一叠盘片,这些盘片上,相同位置(编号)的磁道们构成一个圆柱的面

      说柱面号的时候,就是指明某一条磁道

    • 扇区数-Sectors:表示每个磁道有多少个扇区[1]

    盘片正反面都可以读写

2. 磁盘存储原理

  • 原理:磁头和磁性介质相对运动的时候,通过电磁转换完成读写操作
  • 编码方法:按照某种方案或者规律,把一连串的二进制信息变成存储介质上磁层中(磁层翻转状态)的序列,并让读写控制电路更容易、可靠地实现转换
  • 磁记录方式:通常采用调频方式(FM)和改进型调频(MFM)的记录方式

3. 磁盘的性能指标

  • 记录的密度

    是指盘片上,单位面积内记录的信息量。通常用道密度、位密度和面密度表示。

    • 道密度:沿磁盘半径方向,单位长度上的磁道数

    • 位密度:磁道单位长度上,能记录的二进制代码位数

    • 面密度:位密度 x 道密度

    • 补充:

      • 位密度:

        越内侧的磁道位密度越大。越靠外越小

        所以一个磁盘的存储性能受到最靠内侧磁道的制约

        不难理解,因为在最短的一个扇区内的存储上限很低

        越靠内磁道密度越大

      • 所以:磁盘所有磁道记录的信息量一定是相等的。并不是圆圈越大信息量越多。所以每个磁道的位密度都不相同(外圈长度更长)

  • 磁盘的容量

    • 非格式化容量

      磁记录表面可利用的磁化单元总数,由道密度和位密度计算来的

      (磁盘在物理上总共可以存储多少的数据)

    • 格式化容量

      按照某种特定的记录格式,能够存储的信息总量

      (会留出一部分空间用作其他用途。比如为了防止个别扇区损坏,影响整个磁盘的正常工作,会留出一部分备用扇区等等)

    非格式化空间大小 > 格式化容量

  • 平均存取时间

    由:

    寻道时间(磁头移动到对应的磁道,花费的时间)

    旋转延迟时间(磁头找到要读取的扇区,花费的时间)

    传输时间(传输数据花费的时间)

    三个部分相加而成。

    也就是,先找到磁道,再2找到对应的扇区位置,然后再写数据。

    由于寻道和找扇区的距离远近不一,所以寻道时间通常取平均值,旋转延迟时间可以取转半圈花费的时间

    因为我们要读取的扇区,在任何一个位置的概率都是相等的。按照概率计算数学期望的思想,平均来看,尧都区的扇区转到磁头臂的下方,其期望值接近转半圈的时间。

    补充:计算机发出读写命令也需要花时间,也就是磁盘控制器的延迟花费的时间

  • 数据传输率

    磁盘存储器在单位时间内,向主机传送数据的字节数。

    假设磁盘专属为 r转/秒,每条磁道的容量为 N字节,数据传输率计算方式如下(理论最大值):
    $$
    D_r = rN
    $$

4. 磁盘地址

主机会向磁盘控制器发出一个寻址的信息。磁盘的地址一般如下表分布:

驱动器号 柱面(磁道)号 盘面号 扇区号
一台电脑可以有多个磁盘 移动磁头臂来寻道 激活某个磁头 通过旋转,将特定扇区划过磁头下方

假设系统有

  • 4个驱动器,每个驱动器带1个磁盘
  • 每个磁盘有256个磁道、16个盘面
  • 每个盘面分为16个扇区

则每个扇区地址要18位数据表示

驱动器号 柱面(磁道)号 盘面号 扇区号
占2位 占8位 占4位 占4位

5. 硬盘的工作过程

硬盘主要操作为寻址、读盘、写盘。每个操作都对应一个控制字(控制命令)

硬盘工作的时候,先取控制字,再执行控制字

机械硬盘是机械式的部件,读写操作都是串行的,不能在同一个时刻又读又写,也不能在用一时刻读两组数据或写两组数据。

2、磁盘阵列

RAID(Redundant Array of Inexpensive Disks。 廉价磁盘冗余阵列 ):指将多个独立的物理磁盘组成一个独立的逻辑盘。数据在多个物理盘上分割交叉存储、并行访问。具有更好的存储性能、可靠性、安全性。

  • RAID0:无冗余和无校验的磁盘阵列
  • RAID1:镜像磁盘阵列
  • RAID2:采用纠错的汉明码的磁盘阵列
  • RAID3:位交叉奇偶校验的磁盘阵列
  • RAID4:块交叉奇偶校验的磁盘阵列
  • RAID5:无独立校验的奇偶校验磁盘阵列
  • RAID后面带的数字越大,冗余信息越少,可靠性越高

1、RAID0:无冗余和无校验的磁盘阵列

RAID0

逻辑上相邻的两个甚至多个扇区,在物理上存到两个或多个磁盘(类比上一篇介绍的低位交叉编址的多体存储器

也就是说,逻辑上相邻的数据块,把它们依次、分散存在物理上多个磁盘内。

看得出来,RAID0存储方式没有冗余的信息,也没有校验的功能[1]

2、RAID1:镜像磁盘阵列

就是存两份一样的数据

RAID1

虽然数据出问题的时候,可以通过比对信息,来恢复数据。但是冗余了一半的存储空间,确实有点太粗暴了,也不能并行访问

3、采用纠错的汉明码的磁盘阵列

这里每个盘的每块颜色存的不是一块数据,而是一个bit。逻辑上连续的几个bit在物理上分散存储在各个盘中。

而且,4 bit数据+3 bit汉明码,可以纠正一位错误信息。

RAID2

后面几种偷懒不写🐶 ,感兴趣可以看RAID百度百科了解更多

3、光盘存储器

用光学原理存储信息的装置。用聚焦光束对介质存信息

特点:

  • 存储密度高
  • 携带方便
  • 成本低、容量大
  • 存储时间长,更好保存
  • ……

蓝光波长较短,接近紫光,存储数据的话,信息密度更高。必入蓝光光盘

光盘类型如下:

  • CD-ROM:只读光盘,无法写入数据
  • CD-R:只能写进去一次信息,之后不可修改
  • CD-RW:可重复读写光盘
  • DVD-ROM:高容量的CD-ROM。DVD表示通用数字化多功能的光盘

4、固态硬盘SSD

是一种基于闪存技术的存储器,是一种ROM。它与U盘没有本质的区别,就是容量更大,存储性能更好。

一个SSD由一个或多个闪存芯片和闪存翻译层组成。闪存芯片替代传统旋转磁盘的机械驱动器。闪存翻译层相当于磁盘控制器的角色。

SSD


文章作者: 拓佑豪
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 拓佑豪 !
评论
  目录