存储系统

Posted li-code

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了存储系统相关的知识,希望对你有一定的参考价值。

存储系统

基本概念

功能:存储二进制信息

分类

  • 作用:
    • 高速缓存存储器(cache),使用SRAM
    • 主存储器(主存,内存),使用DRAM和ROM
    • 辅助存储器(辅存,外存)
  • 存储介质
    • 磁表面存储器:磁盘,磁带:顺序存储
    • 磁芯存储器:
    • 半导体存储器:ROM,RAM 随机存储
    • 光盘存储器:激光,磁光材料
  • 存取方式
    • 随机存储器
      • RAM:DRAM,SRAM
      • 在程序执行过程中可读可写
    • 只读存储器
      • ROM
      • 在程序执行过程中只读
    • 串行访问存储器
      • 顺序存取:磁带
      • 直接存取:磁盘
  • 信息可保存性
    • 断电后存储信息消失
      • 易失性:RAM
      • 非易失性:ROM
    • 读出时是否破坏信息
      • 破坏性读出:DRAM
      • 非破坏性读出:SDRAM

性能指标

  • 存储容量:存储字数 X 字长 (如1M X 8位)
  • 单位成本:每位价格=总成本/总容量
  • 存储带宽
  • 存储速度:数据传输速率=数据的宽度/存储周期
  • 存储周期:存储时间和恢复时间,它是指存储器进行一次完整的读写操作所需要的全部时间,即连续两次独立访问存储器操作之间所需要的最小时间间隔

存储器的层次结构

  • CPU -- Cache -- 主存 -- 辅存
  • Cache-主存层次:解决CPU与主存速度不匹配的问题
  • 主存-辅存层次:解决大容量的问题和数据的长期存储
  • 虚拟存储系统

半导体存储器

存储芯片的基本结构

  • 技术图片

  • 组成:
    • 存储矩阵:由大量相同的位存储单元阵列构成
    • 译码驱动:将来自地址总线的地址信号翻译成对应存储单元的选通信号,该信号在读写电路的配合下完成对被选中单元的读写操作
    • 读写电路:包括读写放大器和写入电路,用来完成读/写操作
    • 地址线:是单向输入的,其位数与存储字的个数有关
    • 数据线:双向,输入输出数据,其位数与读出或写入的数据位数有关
    • 片选线:CS CE,确定那个存储芯片被选中,可用于容量扩充
    • 读/写控制线:决定芯片进行读/写操作
      • WE: 低电平写,高电平读
      • OE:允许读,WE:允许写
  • 芯片的容量由地址线和数据线决定
    • 地址线 X 数据线:2^地址线 X 数据线

SRAM、DRAM的工作原理

  • SRAM:静态随机存取寄存器
    • 存储信息:0,1, 触发器(双稳态)
    • 破坏性读出:非
      • 读:查看触发器状态
      • 写:改变触发器状态
    • 需要刷新:不要,能保持两种稳定的状态
    • 送行列地址:同时送
    • 运行速度:快
    • 集成度:低,6个逻辑元件构成
    • 发热量:大
    • 存储成本:高
  • DRAM:动态随机存取寄存器
    • 存储信息:电容,充放电,读出后需要重新充电
    • 破坏性读出:是
      • 读:连接电容,检测电流变化
      • 写:给电容充/放电
    • 需要刷新:需要,电容上的电荷只能维持2ms
    • 送行列地址:分两次送
    • 运行速度:慢
    • 集成度:高,1个或3个逻辑元件组成
    • 发热量:小
    • 存储成本:低

DRAM的刷新

  • 多久刷新一次?
    • 刷新周期:一般为2ms
  • 每次刷新多少单元?
    • 以行为单位,每次刷新一行存储单元
  • 为甚麽要用行列地址?
    • 减少选通线的数量
  • 如何刷新?
    • 有硬件支持,读出一行的信息后重新写入,占用1个读/写周期
  • 在什么时刻刷新
    • 分散刷新:每次读写完都刷新一行
      • 系统的存取周期变为原来的2倍
      • 前一个存储周期用于正常读写
      • 后一个存储周期用于刷新某行
    • 集中刷新:2ms内集中安排时间全部刷新
      • 系统的存储周期还是原来的存储周期
      • 有一段时间专门用来刷新
      • 无法访问存储器,称为访存死区
    • 异步刷新
      • 2ms内每行刷新1次既可

RAM的读写周期

  • 读周期
  • 读出时间:从给定有效地址开始,到读出所选单元的内容并在外部数据并在外部数据总线上稳定地出现所需的时间,称为读出时间
  • 读周期:表示存储芯片进行两次连续读操作时所必须间隔的时间,它大于等于读出时间。
  • 在读周期中WE为高电平
  • 写周期
  • 在写操作中,WE和CS都为低电平

ROM的特点和基本类型

  • ROM:Read-Only-Memory,只读存储器
  • 存储内容由半导体制造商按用户提出的要求在芯片的生产过程中直接写入,无法修改
  • 具有非易失性
  • 分类:
    • 按模式只读存储器(MROM)
    • 一次可编程只读存储器(PROM): 存储内容由用户用专门的设备,一次性写入,之后无法修改
    • 可擦除可编程只读存储器(EPROM):修改次数有限,写入时间很长
      • 紫外线可擦除
      • 电擦除
    • 闪速存储器(Flash Memory):如U盘,写入速度快
    • 固态硬盘(Solid State Drives):按控制单元+FLASH芯片

主存的简单模型及连接原理

  • 主存的结构
  • 技术图片

  • 主存的简单模型
  • 主存中存储单元地址的分配
    • 大端存储
    • 小段存储

主存与CPU的连接原理

连接原理

  • 技术图片

  • 主存储器通过数据总线、地址总线和控制总线与CPU连接
  • 数据总线的位数与工作频率的乘积正比于数据传输率
  • 地址总线的位数决定了可寻址的最大内存空间
  • 控制总线(读/写)指出总线周期的类型和本次输入/输出操作完成的时刻

主存容量的扩展

  • 由于单个存储芯片的容量是有限的,它在字数或字长方面与实际存储器的要求有差距,因此需要在字和位两方面进行扩充才能满足实际存储器的容量需求
位扩展法
  • CPU的数据线数与存储芯片的数据位数不一定相等,此时必须对存储芯片扩位(进行位扩展,用多个存储器件对字长进行扩充,增加存储字长),使其数据位数与CPU的数据线数相等。
  • 位扩展的连接方式是将多个存储芯片的地址端、片选端和读写控制端相应并联,数据端分别引出
  • 仅采用位扩展时,各芯片连接地址线的方式相同,但连接数据线的方式不同,在某一时刻选中所有的芯片,所以片选信号CS要连接到所有芯片
字扩展法
  • 字扩展是指增加存储器中字的数量,而位数不变
  • 字扩展将芯片的地址线、数据线、读写控制线相应并联,而由片选信号来区分各芯片的地址范围
字位同时扩展法
  • 字位同时扩展既增加存储字的数量又增加存储字长
  • 采用字位同时扩展时,各芯片连接地址线的方式相同,但连接数据线的方式不同,而且需要通过片选信号CS或采用译码器设计连接到相应的芯片

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

线选法
  • 线选法用除片内寻址外的高位地址线直接分别接至各个存储芯片的片选端
  • 当某地址线信息为0时,就选中与之对应的存储芯片
  • 优点:
  • 不需要地址译码器,线路简单
  • 缺点:
  • 地址空间不连续
  • 选片的地址线必须分时为低电平
  • 不能充分利用系统的存储空间,造成地址资源的浪费
译码片选法
  • 译码片选法用除片内寻址外的高地址线通过地址译码器芯片产生片选信号
存储器与CPU的连接
  • 合理选择存储芯片
  • 地址线的连接
  • 数据线的连接
  • 读/写控制线的连接
  • 片选线的连接

主存单元分配

  • 主存地址分配
    • 按字节寻址
    • 按字寻址
    • 按半字寻址
    • 按双字寻址

双端口RAM和多模块存储器

错题集

  • 磁盘属于直接存取存储器,其速度介于随机存取和顺序存取之间
  • 相联存储器的基本原理是把存储单元所存内容的某一部分作为检索项去检索该存储器,并将存储器中与该检索项符合的存储单元内容进行读出或写入,它是按内容或地址进行寻址的。
  • 主存和辅存之间的数据调动是由硬件和操作系统共同完成的,仅对应用级程序员透明
  • DRAM采用地址复用技术,地址线减半

以上是关于存储系统的主要内容,如果未能解决你的问题,请参考以下文章

文件系统存储数据,与数据库系统存储数据的差别

存储系统

DPU — 功能特性 — 存储系统的硬件卸载

集群存储系统

分布式存储之MogileFS分布式文件系统简单应用

存储系统