第四章_寄存器

第四章 存储器
★ 重点掌握
1 存储器的分类(各类存储体的特点、主要用途)
2 存储系统的层次结构
3 主存储器的概念及基本组成框图
4 高速缓冲存储器的概念
5 利用高速缓存提高系统运行速度所基于的原理
6 高速缓存与主存之间的映射方式和方法
7 辅助存储器及主要类别
1.主存储器的基本组成

包括(存储体M,各种逻辑部件及控制电路)等。
主存储器的示意图如下:

在这里插入图片描述

在这里插入图片描述

2. 存储体

我们看主存储体中的存储体:把存储体放大来看,先给一个示意图,方便理解:
存储体的组成:在这里插入图片描述

存储体由许多存储单元组成,每个存储单元又包含若干个存储元件,每个存储元件可以寄存一位二进制代码0/1

对于其组成我们可以这样来记忆:

  1. 工作党:存储体 == 大型公司存储单元 == 公司中不同部门存储元件 == 部门中每个员工的工位0/1就是工位上有没有人
  2. 学生党:存储体 == 系学生宿舍楼存储单元 == 每个宿舍存储元件 == 宿舍中的床位0/1就是床位上有没有人
  3. 依次类推…
存储单元:以8位二进制作为一个存储单元,也就是一个字节

一个存储单元可以存储一串二进制代码,称这串二进制代码为一个存储字,代码位数位就是存储字长
存储单元有编号,这些编号称为存储单元的地址号。存储单元按地址寻访。这些地址都是二进制的形式。

MAR

存储器地址寄存器。保存了存储单元的地址(编号)。其位数反映存储单元的个数。
为什么这么说呢?
比如有16个存储单元,而存储单元的地址是用二进制表示的,那么用4位二进制数就可以表示。
MAR的位数就是4位。
那么相反,如果我们知道MAR有4位,那么存储单元就有 2 4 2^4 24,16个存储单元。
所以MAR反映存储单元的个数。

MDR

存储器数据寄存器,其位数反映存储字长。
存放的是:存储器中从存储某单元读出、或要写入某存储单元的数据(代码)。
如果MDR=8,每个存储单元进行访问时,数据是8位,存储字长8位。

主存储器和CPU的联系

要想完成一个完整的取或存操作,CPU(控制器)还得给主存加以各种控制信号
(读命令、写命令、地址译码驱动信号等)。
现代计算机中:
1.主存由半导体集成电路构成
2.驱动器、译码器和读写电路均在存储芯片中
3.MAR和MDR在CPU芯片中
4.存储芯片和CPU芯片可以通过总线(系统总线)连接
5.地址总线用来指出存储单元地址号。

一个16K×32位的存储器,其地址线和数据线的总和是()。
16k = 2 14 2^{14} 214,所以地址线为14根,32位即 数据线位数=32.

-------------------------------------------------------------------------------------------------------------
存储器(中)

在这里插入图片描述

  1. 每个 2114上的数据线与cpu上的四位地址线连接,满足cpu8为数据的要求.
  2. CS 片选器连接两个2114保证同时工作, WE读写信号也接上.
  3. 内扩展的关键就是将两个芯片当作一个来使用,同时读写操作,将两个芯片的片选,
    用相同的信号进行连接.

在这里插入图片描述

  1. 这两个芯片接法虽然相同 但是不可以同时工作,否则造成数据混乱。
  2. 通过第11根地址线A10 当作片选信号,CS=0选择芯片1工作,CS=1选择芯片2工作.
  3. A10 通过非门取反. 实现切换.。

在这里插入图片描述

  1. cpu与芯片的连接的几个关键点,数据线/ 地址线/ 读写命令线/ 片选线的连接。

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

-------------------------------------------------------------------------------------------------------------
存储器(下)

在这里插入图片描述
主存地址长度: 主存中存储单元个数为 2 10 2^{10} 210,则主存地址长度就是10
Cache地址长度:Cache中存储单元个数为 2 10 2^{10} 210,则Cache地址长度就是10
t:主存地址长度 - Cache地址长度
c:Cache可以被分为 2 c 2^{c} 2c
m:主存可以被分为 2 m 2^{m} 2m
b:块长为 2 b 2^{b} 2b(按访存地址计算)
m = t + c
m=主存地址长度 - b
主存地址长度 = t + c + b

2.全相联映射在这里插入图片描述

计算方法与上面的一样.

3.组相联映射在这里插入图片描述

2 c 2^{c} 2c 表示Cache的总块数
2 q 2^{q} 2q 表示Cache分组个数(分组个数=分块个数/组内块数)
2 r 2^{r} 2r 表示组内包含的块数(r=1,每组包含2块,叫做二路组相联)
s = t + r
q = c - r

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值