2019-计算机组织与结构-存储结构的解释

1. 存储结构

  1. 存储器由一定数量的单元构成,每个单元可以被唯一标识,每个单元都有存储一个数值的能力。
    1. 地址:单元的唯一标识符(采用二进制)
    2. 地址空间:可唯一标识的单元总数
    3. 寻址能力:存储在每个单元中的信息的位数
      • 大多数存储器是字节寻址的,而执行科学计算的计算机通常是64位寻址的,也就是264
  2. 寻址能力的影响因素:归根结底是因为设计时的地址的长度。
    1. 地址总线的根数
    2. 寻址机制的不同
  3. 计算机的内存真正能真正使用的内存大小的影响因素:
    1. 地址空间
    2. 寻址能力
    3. 最终是由上面两个之一来决定的。
    4. 例子:4G内存的电脑加上8G的内存条,不会变快,因为寻址能力不会变强,被制约。
  4. 地址空间越大,容量会越大吗?
    • 不一定,每个单元(屋子)的大小一定。
    • 容量是指

2. 主存结构

  1. 主存存储器由多达2n个可寻址的字组成,每个字有一个n位的地址。
  2. 比如一个存储器是64M *16位的,那么就是16位的数据,64MB是容量(地址数量)。
  3. 一个字节(1 B = 8 b),(1KB = 210B = 213b)
  4. 1K * 4 位的DRAM,其中1K是存储单元个数(1024)、大小4位

3. 概念汇总

  1. :数据存储的最小单位,一个位只能存储0或1。
  2. 字节:(B/Byte)
    • 1 B = 8 b
  3. :在计算机中,一串数码是作为一个整体来处理或运算的,称为一个字。字的位数称为字长;字通常分若干个字节。
    • 表示机器CPU的处理能力:也就是CPU在单位时间内能处理的最大二进制数的位数
    • Eg.如果字长为32位,则1字 = 32bit = 4B,指令长度为
  4. 存储单元:CPU访问存储器的最小单位,每个存储单元都有一个地址。
  5. 存储字长:存储器中一个存储单元(存储地址)所存储的二进制代码的位数。
  6. 存储容量:存储容量是主存中能存放二进制代码的总位数,即存储容量 = 存储单元个数 * 存储字长,也可以用字节总数来表示。
  7. 地址线:存储单元的个数 = 2地址线的条数
  8. 数据线:数据线确定存储字长,数据线的条数=字长的位数。
  9. 寻址范围:寻址范围是一个数字范围,不带有单位
  10. 寻址空间:寻址空间的大小是寻址范围的大小。
  11. 按字节寻址:一组地址线的不同状态对应一个字节的地址,存储空间的最小编址单位是字节。
  12. 按字寻址:一组地址线的每个不同状态对应一个字的地址,存储空间的最小编址单位是字。
    • 一个字由若干个字节构成,因此计算机在寻址过程中会区分字里面的字节,所以需要占用一根地址线,来字内寻址。(不是重点)

3.1. 一些例子

  1. 对于24位地址线的主存,若字长为32位,则按字节寻址的范围为16M(224B = 16M),按字寻址的范围为4M(16M * 8 / 32)

4. Cache和主存储器之间的映射

  1. 注意每一行中的读取哪一个字是地址中最后一个字地址的作用。

4.1. 如何计算不同情况下的标签

  1. 对于word的长度,每一块多少字,每一行多少字有关。
  2. 对于Line的长度:
    1. 容量除以上面的字长
    2. 直接告诉
  3. 对于set的长度:
    1. 直接告诉结果
    2. 总行数/组行数
    3. 数据区大小/路数/字大小
  4. 对于tag的长度:容量必须的长度-set的长度-Line的长度。
  5. 总长度位数计算:
    1. 主存地址空间大小
    2. 容量
    3. 主存块数*每块大小

4.1.1. 直接映射

  1. 直接映射的标签组成
    • Tag + Line + Word

4.1.2. 全相联映射

  1. 全相联映射的标签组成
    • Tag + Word

4.1.3. 组相联映射

  1. 组相联映射的标签组成
    • Tag + Set + Word

4.2. 替换策略

  1. 对于LRU:就是看最近被用到次数最少的进行替换
  2. 对于FIFO:就是先进先出,哪怕刚被用到。

5. 参考

  1. 按字寻址与按字节寻址

2019-计算机组织与结构-存储结构的解释
https://spricoder.github.io/2020/01/16/2019-COA19/2019-COA19-%E5%AD%98%E5%82%A8%E7%BB%93%E6%9E%84%E7%9A%84%E8%A7%A3%E9%87%8A/
作者
SpriCoder
发布于
2020年1月16日
许可协议