计算机系统的硬件结构——主存储器

笔记以及图片来源于
存储容量的拓展
计算机组成原理(哈工大刘宏伟)

存储容量的扩展

单个存储芯片的地址空间是有限的,因此需要进行存储容量的扩展,主要有以下三种扩展方式
在这里插入图片描述

位扩展

增加存储字长,只在位数方向拓展(加大子长)
在这里插入图片描述
位扩展的连接方式是将各存储芯片的地址线,片选线(CS)和读/写(WE)线相应地并联起来而将个芯片的数据线单独列出。当CPU访问该存储器时,将发出的地址和控制信号同时传给8个芯片,选中每个芯片的同一单元,其单元的内容被同时读至总线的相应位,或将总线上的内容分别同时写入相应单元。

字扩展

增加存储器字的数量,仅在字数方向拓展,而位数不变。
在这里插入图片描述

扩充了两根地址线,也就是说有四种不同的状态
第一种方式: 存储器的容量/存储芯片的容量=芯片数量
第二种方式 :分析

字拓展芯片的地址线,数据线,读/写线并联,由片选信号来区分各个芯片,在同一时间内四个芯片只能有一个芯片被选中。

计算题: 如用16K*8
由于存储空间是连续的,第二篇存储芯片的最低地址,在第一片存储芯片的最高地址上再加上1,并且最高地址与最低地址之间的差值是固定的,以此类推可得
在这里插入图片描述而我们需要寻找的地址就在第二片最高地址和最低地址之间。

字和位同时拓展

字和位同时拓展是指既增加存储字的数量,又增加存储字长。当构成一个容量较大的存储器时,往往需要在字数和位数方向上同时拓展。

1MB = 2的20次方
一个字节 = 8位
在这里插入图片描述

存储器的校验

编码的最小距离

任意两组合法代码之间二进制位的最少差异。

编码的检测能力和纠错能力和最小距离有关。

L - 1 = D + C (D≥C)

L —— 编码的最小距离
D —— 检测错误的位数
C —— 纠正错误的位数

汉明码的组成
  • 汉明码采用奇偶检验
  • 汉明码采用分组校验
  • 汉明码的分组是一种非划分方式

在这里插入图片描述

将以上数据分为三组,每组有1位校验位,共包括4位数据位,根据错误的校验码和重叠的情况,能够很快的找到出现差错的位置。在这里插入图片描述
​那么如何进行分组呢?
第1组 XXXX1
第2组 XXX1X
第3组 XX1XX
第4组 X1XXX
第5组 1XXXX

既根据二进制编码的位置 ,对应1,2,4,8

汉明码的组成

汉明码的组成需要增添k位检测位
在这里插入图片描述
检测位的位置
在这里插入图片描述
检测位的取值
检测位的取值与该位所在检测“小组”承担的奇偶校验任务有关。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

汉明码的纠错过程

形成新的检测位Pi,其位数与增添的检测位有关。

对于按“偶校验”配置的汉明码,不出错时,所有的校验位的值为1。

在这里插入图片描述
为什么能确定出错位置不是6而是1呢?

因为位置7在第一组中也出现了,然而第一组的校验结果是正确的。

故可知是第六位出错,可纠正为0100101,故要求传送的信息为0101。

如果是按照奇校验的方法则刚好相反。

提高访存速度的的措施

  • 采用高速器件
  • 采用层次结构Cache —— 主存
  • 调整主存结构
单体多字系统

原假设存储字长等于机器字长,也就是说CPU一次从存储器当中只能取出一条指令(与机器字长相等的数据)

单体多字系统:把存储器的存储字长加长(增加存储器的带宽),比如,CPU为16位,存储字长我们可以设计成64位,CPU每一次访问存储器,都可以访问出4个机器字(4条指令),下一次再取指令时,就可以从数据寄存器当中读取指令。
在这里插入图片描述

单体多字系统的缺陷:

(1)CPU如果需要存储16位数据,需要先把数据放在单字长寄存器中,再放入数据寄存器中,然后再存储到存储体中,我们可能只想要写入16位,但是其他的48位也会被写入,并且这48位数据很可能是错的,如果需要改善这种情况,还需要用硬件来实现这个功能,因此比较复杂。

(2)指令和数据在主存内必须是连续存放的,一旦遇到转移指令或者操作数不能连续存放,则方法的效果就不明显。

多体并行系统
  1. 高位交叉
    顺序对存储体进行编码(编完第一个存储体,再编第二个存储体),前两位00为存储体的编号,后四位为存储体中的地址的编号,每一个存储体都有单独的数据寄存器和地址寄存器,能独立处理读写信号,从而达到4个存储体并行工作的效果。
    在这里插入图片描述

不足:如果按序存储和按序读取,那么4个存储体中,可能存在有一个存储体非常繁忙,而其他几个存储体非常空闲的情况。

这种方式适合存储器容量扩展,但是并不适合提高存储器带宽。

  1. 低位交叉——用于带宽访问速度提高

对高位交叉进行改进,横向对存储体进行编码(各个体轮流编址),前四位为存储体中的地址的编号,后两位为存储体的地址。

低位交叉的特点: 在不改变存取周期的前提下,增加存储器的带宽

在这里插入图片描述

上图显示了,低位用来选择存储体,高位选择每个存储体对应的存储单元。

低位交叉的特点:不改变存取周期的前提下,增加存储器的带宽。
在这里插入图片描述

设四体低位交叉存储器,存取周期为 T,总线传输周期为 τ ,为实现流水线方式存取,应满足 T = 4 τ 。
在这里插入图片描述

连续读取 4 个字所需的时间为 t1 = T + (4 - 1) τ

若采用高位交叉编址,则连续读取n个字所需时间为 t2 = nT

高性能存储芯片

(1)SDRAM (同步 DRAM)
在系统时钟的控制下进行读出和写入—— CPU 无须等待
(2)RDRAM
由 Rambus 开发,主要解决 存储器带宽 问题
(3)带 Cache 的 DRAM
在 DRAM 的芯片内 集成 了一个由 SRAM 组成的 Cache ,有利于猝发式读取 (连续的存储单元进行读取)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值