🐳
南软佛脚玩乐指南
Github
  • 欢迎
  • 南软
    • 课程&培养方案介绍
  • 佛脚
    • 微积分 I/II
    • CPL
    • 计算系统基础
    • 软件工程与计算 I
    • 离散数学
    • 需求与商业模式创新
      • 商业模式部分笔记
      • 需求部分笔记
      • 往年卷
    • 线性代数
    • 互联网计算
      • 01-计算机网络及其参考模型
      • 02-物理层
      • 03-数据链路层
      • 04-网络层
      • 05-传输层
      • 06-应用层
      • 07-路由
      • 08-路由协议
      • 09-VLAN
      • 10-广域网 & PPP
      • 11-网络安全 & ACL
      • 12-DHCP
      • 20-复习
      • 21-常见报文汇总
      • 22-往年卷要点汇总
      • 名词解释
      • 大作业要求
      • 实验考试要求
      • 小测及答案
    • 计算机组织结构
      • 01-概述
      • 02-计算机的顶层视图
      • 03-数据表示
      • 04-校验码
      • 05-整数运算
      • 06-浮点运算
      • 07-BCD运算
      • 08-内部存储器
      • 09-Cache
      • 10-外部存储器
      • 11-RAID
      • 12-虚拟存储器
      • 13-指令系统
      • 14-指令流水线
      • 15-控制器
      • 16-总线
      • 17-输入输出
      • 20-复习
      • 机考
        • 2024-12
        • 2020-12
    • 数据结构与算法
    • 密码学原理
    • 计算机系统基础实验选修
  • 玩乐
    • 吃喝
      • 鼓楼周边
      • 仙林周边
      • 南京市内
    • 旅游
      • 春日赏花
      • 宁杭线
  • 交通
  • 指南
    • 获取下载密码
    • 添砖加瓦
由 GitBook 提供支持
在本页
  • 存储器
  • 半导体存储器
  • 位元 Memory Cell
  • 分类
  • RAM
  • 动态RAM DRAM
  • 静态RAM SRAM
  • DRAM vs SRAM
  • 高级的DRAM架构
  • ROM
  • 只读存储器 ROM
  • 可编程ROM PROM
  • 可擦除PROM EPROM
  • 电可擦除PROM EEPROM
  • Flash Memory
  • 从位元到主存
  • 寻址单元
  • 储存阵列
  • 寻址
  • 刷新
  • 芯片
  • 模块组织
  • 内存条&插槽
  • 其他
  • 交叉编址
  • 大端/小端
在GitHub上编辑
  1. 佛脚
  2. 计算机组织结构

08-内部存储器

本讲关注存储器层次架构中的“主存”部分

存储器

由一定数量的单元构成,每个单元可被唯一标识,每个单元具有储存一个数值的能力

  • 地址:单元的唯一标识

  • 地址空间:单元总数

  • 寻址能力:单元储存信息的位数

半导体存储器

位元 Memory Cell

  • 半导体存储器的基本元件,储存1位数据

  • 特性

    • 呈现两种稳态/半稳态:对应0&1

    • 至少能被写入1次

    • 能被读取

分类

类型
种类
可擦除性
擦除级别
写机制
易失性

随机存取存储器 RAM

读-写存储器

电可擦除

字节级

电

易失

只读存储器 ROM

只读存储器

不可擦除

-

掩膜(光刻)

非易失

可编程ROM PROM

主要进行读操作的存储器

不可擦除

-

电

非易失

可擦除PROM EPROM

主要进行读操作的存储器

紫外线可擦除

芯片级

电

非易失

电可擦除PROM EEPROM

主要进行读操作的存储器

电可擦除

字节级

电

非易失

快闪存储器

主要进行读操作的存储器

电可擦除

块级

电

非易失

RAM

  • 可快速读/写

  • 易失:供电中断后数据消失

动态RAM DRAM

  • 在电容器上用电容充电的方式储存数据:有电荷1,无电荷0

  • 需要周期性充电刷新:电容漏电

  • 通过阈值判断为1或0

  • 地址复用:22n2^{2n}22n的地址只需用nnn根线,先传行,再传列

静态RAM SRAM

  • 使用触发器、逻辑门储存二进制值

  • 有电源就可以维持数据

  • 行列独立:SRAM的储存线性排列,2n2^{n}2n的地址用nnn根线

DRAM vs SRAM

  • 相同:易失,需持续供电

  • 不同

    • DRAM比SRAM具有更简单、更小的位元,但需要能刷新的电路

    • DRAM密度更高,价格更低,功耗低:结构简单,元件少

    • DRAM速度慢:需要刷新

  • DRAM用于大容量存储器(主存),SRAM用于高速缓存

高级的DRAM架构

同步DRAM SDRAM

  • 传统DRAM是异步的

    • 处理器向内存提供地址、控制信号:在xx读/写数据

    • DRAM执行内部功能,处理器等待存取时间的延迟

    • 在延迟后DRAM读/写

  • SDRAM的读写受系统时钟控制,以总线的最高速度运行,无需插入等待状态

  • 在SDRAM处理读写时,CPU可完成其他工作

  • 每周期向CPU传送一次数据

双速率DRAM Double-Data-Rate SDRAM DDR

  • 每个时钟周期发送两次数据,一次在时钟脉冲的上升沿,一次在下降沿

  • DDR->DDR2->DDR3->DDR4:提高RAM芯片的操作频率和预取缓冲区

ROM

只读存储器 ROM

  • 非易失

  • 只能写入一次,此后可读不可写

  • 应用:防止数据篡改的场景(微程序设计、系统编程、函数表……)

  • 问题

    • 无出错处理机会:写错即报废

    • 用户无法写入数据

可编程ROM PROM

  • 非易失

  • 只能写入一次,此后可读不可写

  • 与ROM的不同

    • 写入时用特殊设备

    • 电写入

  • 对比

    • ROM:大批量生产

    • PROM:灵活

可擦除PROM EPROM

  • 光擦除

    • 紫外线下

    • 所有单元重置

    • 耗时约20min

  • 电写入

  • 比PROM更贵,能多次改写

电可擦除PROM EEPROM

  • 电擦除

  • 随时写入

  • 擦除范围小:字节级

  • 耗时相对较短,写需几百微秒

  • 比EPROM更贵,密度低,支持小容量芯片

Flash Memory

  • 电擦除

  • 擦除时间在EPROM和EEPROM之间

  • 擦除范围在EPROM和EEPROM之间:块级擦除

  • 密度达到EPROM

  • 价格在EPROM和EEPROM之间

从位元到主存

寻址单元

  • 由若干相同地址的位元组成

  • 寻址模式:Byte(常用)/Word

储存阵列

  • 方形结构

    • 若1∗22n1*2^{2n}1∗22n的长方形,需要1个22n2^{2n}22n大小的译码器

    • 若2n∗2n2^n*2^n2n∗2n的正方形,则需要2个2n2^{n}2n大小的译码器,更省

    • 方形结构连线长度更短,访存更快

  • 随机访问:读取地址->定位行->定位列->选中的耗时相同

寻址

  • 地址译码器

  • nnn位地址,2n2^n2n种输出

刷新

  • 都是逐行刷新

  • 行数越多,刷新开销越大

集中式刷新

  • 停止读写操作,逐行刷新

    • 逐行:DRAM看成正方形的行数

  • 刷新时无法操作内存

  • 刷新次数:单个DRAM芯片的行数

    • 并行刷新,与DRAM芯片的个数无关

分散式刷新

  • 在每个储存周期中,当完成读写操作时刷新

  • 增加储存周期的时间

异步刷新:常用

  • 将刷新周期分配给所有行,使得每一行在刷新周期内仅被刷新一次

  • 每行各自以刷新周期为间隔刷新

  • 效率高

芯片

  • 芯片引脚

    • Address:A0 –A19

    • Data:D0 – D7

    • Vcc:电源

    • Vss:地线

    • CE:芯片允许引脚

    • Vpp:程序电压

    • WE:写允许

    • OE:读允许

    • RAS:行地址选通

    • CAS:列地址选通

数据线不编码、不复用,有几位数据就是几根数据线,几个引脚。

模块组织

位拓展

  • 拓展位数

  • 8块4k*1bit=>4k*8bit

  • 数据线增加,地址线不变

字拓展

  • 拓展地址范围

  • 8块4k*8bit=>32k*8bit

  • 地址线增加,数据线不变

字、位同时拓展

  • 位拓展+字拓展

内存条&插槽

  • 插槽:组合多个储存模块

其他

  • 存储器地址寄存器(MAR)的位数取决于设计的最大地址空间而非当前实际安装的内存容量

  • 注意选择题里面说xx区域是RAM区还是ROM区

交叉编址

  • 在不改变存取周期的前提下,提高存储器带宽,因为可以在一个访问周期下,访问多个不同的存储体

  • 访存一次要走4步,4个储存块交叉访问完美利用时间

  • 当访存地址在相邻的四次访存中,出现在同一存储块内,就会发生访存冲突

大端/小端

  • 数据:12345678H,假设左侧地址低

    • 大端:12|34|56|78

    • 小端:78|56|34|12

  • 现代计算机常用小端

    • 低字节内存地址低

    • 拓展不用改变数据的起始地址

上一页07-BCD运算下一页09-Cache

最后更新于3个月前