Featured image of post 存储系统

存储系统

存储系统

基本概念与分类法

image-20220503184555649

image-20220503184640282

  • 主存——辅存:实现虚拟存储系统,解决了主存容量不够的问题

  • Cache——主存:解决了主存与CPU速度不匹配的问题

  • Cache与主存储器(主存、外存)可直接被CPU读写

存储介质

  • 半导体存储(主存、Cache)
  • 磁性材料(软盘、磁带、机械硬盘)
  • 光介质存储(光盘)

存取方式

  • 随机存取存储器(RAM):读写任何一个存储单元所需时间都相同,与存储单元所在的物理位置无关

  • 顺序存取存储器(SAM):读写一个存储单元所需时间取决于存储单元所在物理位置(磁带、复读机)

  • 直接存取存储器(DAM):既有随机存取特性,也有顺序存取特性。先直接选取所在区域,然后按顺序方式存取(机械硬盘)

信息可更改性

  • 读写存储器:可读可写(磁盘、内存、Cache)
  • 只读存储器:只读不能写(CD-ROM音乐专辑、蓝光光碟)

信息可保存性

  • 易失性存储器(主存、Cache)–断电后存储信息消失
  • 非易失性存储器(磁盘、光盘)–断电后存储信息依然保持

破坏性读出–信息读出后原信息被破坏(DRAM芯片,读出数据后要进行重写)

非破坏性读出–信息读出后原信息不被破坏(SRAM芯片、磁盘、光盘)

性能指标

  1. 存储容量:存储字数x字长(MDR尾数反应存储字长)
  2. 单位成本:每位价格 = 总成本/总容量
  3. 存储速度:数据传输率 = 数据宽度(存储字长)/存储周期

image-20220503200042315

image-20220503200132686

主存储器基本组成

image-20220503201308687

​ 而存储体由存储单元组成

image-20220503201359784

  • 每个存储单元的读与写由mos管与电容控制,mos管可以控制电路的导通与否,电容是否存储电荷又代表了这个存储元表示的是0还是1.

  • 从CPU向存储单元读取数据先通过地址总线将n位地址传给译码器,再由译码器通过字选线向存储单元施加高电平或低电平最终从MDR(图中绿色电路)输出数据,而这些数据再通过数据总线被CPU读取

image-20220503202448232

​ 控制电路负责控制当存储元电流稳定时再向MDR输出数据

  • 引脚的数目就取决于片选线、读/写线、数据线、地址线、供电引脚、接地引脚

存储芯片的描述:8K x 8位就代表总共有8个存储单元、8个字长

总容量 = 存储单元个数 x 存储字长

寻址

image-20220503203511618

image-20220503203540353

DRAM与SRAM

DRAM:动态RAM(用于主存),使用栅极电容存储信息

SRAM:静态RAM(用于Cache),使用双稳态触发器存储信息

注:现在的主存通常采用同步DRAM,即SDRAM芯片,双倍数据速率DDR,则为SDRAM的改进型

image-20220503204119407

双稳态:1时为A高B低;0时为A低B高,并且需要两根数据线读取数据

对比 双稳态 栅极电容
存储信息 触发器 电容
信息破坏性 非破坏 电容放电导致信息被破坏,需要重写操作
易失性 易失 易失
读写速度 慢(原因由信息破坏性导致的重写所致)
功耗 每个存储元制造成本高,集成度低,功耗高 集成度高,功耗低,成本低
发热
刷新? 不需要 需要
送行列地址 同时送 分两次送

刷新

栅极电容存储的电荷只能维持2ms,即使不断电2ms后信息也会丢失,所以需要定时刷新电荷(充电),会占用一个读写周期

  • 只要不断电,触发器的状态就不会改变,所以不需要刷新
  • 存储芯片独立完成,不需要CPU控制
  • 以行为单位刷新

行列译码器

随着存储容量需求的上升,单译码器很难连接百万级(1M)以上的选通线,这时行列地址译码器解决了这个问题,行/列移码器只需连接1024根选通线就能处理20位的地址信息

image-20220503205718159

  • 行列译码器选通线的数量=2n/2,n代表n位地址
  • 采用行列译码器与单元阵列排布可以节省引脚数量

刷新方式

  1. 每次读写完都刷新一行(分散刷新),系统存取周期翻倍
  2. 集中安排时间全部刷新(集中刷新),这段时间称为访存“死区”,系统存取周期不变
  3. 只需保证每行刷新一次,称为异步刷新,这个方法可以在译码阶段刷新

image-20220503210802208

注:未说明的情况下默认刷新周期为2ms

地址线复用技术

为了应对地址位数日益增长导致的地址译码器制造困难,提出了地址线复用技术,对于n位地址,将n/2个地址通过地址线分别送入行地址/列地址缓冲器

  • 降低了地址线的数目,从而减少了芯片引脚数
  • DRAM采用了该技术

ROM芯片(非易失性芯片)

Read-Only Memory 只读类型存储器,但其有些类型可读可写

注意U盘、SSD、虽然可以进行写操作,但其仍然基于EEPROM发展而来,本质上仍然属于只读存储器

  1. MROM—-掩模式只读存储器,生产后任何人不可重写(只读)

  2. PROM—-可编程只读存储器,生产后可用专门的PROM写入器写入信息,写过一次后就不可修改

  3. EPROM—-可擦除可编程只读存储器,用户可写,之后可以擦除数据

    • UVEPROM,使用紫外线擦除所有信息的EPROM

    • EEPROM,使用电擦除擦除特定字的EPROM

  4. Flash Memory—闪存,(u盘,sd卡),基于EEPROM发展而来,断电后可保存信息,且可以进行多次快速擦除重写

    • 注:由于闪存需要先擦除在写入,因此写速度比读速度更慢

    • 每个存储元只需使用单个mos管,位密度比RAM高

  5. SSD—-固态硬盘

    • 主控+存储单元(闪存芯片)
  6. BIOS芯片—-存储了自举装入程序,负责引导装入操作系统(开机)

    • 主存的一部分

逻辑上讲,主存由RAM+ROM组成,且二者常统一编址

且现在很多ROM也具有随机存取能力,比如EPROM与NOR Flash

image-20220521151806847

主存储器与CPU的连接

image-20220521151921663

多块存储芯片与CPU的连接

image-20220521152448766

位扩展

增加主存存储字长的一种方法

image-20220521152909046

​ 为了应对数据总线大于存储芯片字长的情况,设计了位扩展这一方法,使CPU将对应的地址总线同时发向N块存储芯片,这样数据总线就可以将N位I/O数据从数据总线返回CPU

字扩展

​ 增加主存的存储字数的一种方法

image-20220521153806640

基于线选法的改进,取一个地址位与片选线连接,并在其中一条支路设置非门(也称1-2译码器)

image-20220521154105663

扩展到n条线路后即是译码片选法:由n条线–>2n个选片信号

线选法 译码器片选法
n条线对应n个片选信号 n条线对应2n个片选信号
电路简单 电路复杂
地址空间不连续 地址空间连续

字位同时扩展

基于上述两种方法同时应用,可以增加主存容量的一种方法

image-20220521155857000

image-20220521155944925

多体并行存储器

image-20220522182918757

  • 采用“流水线”的方式并行存取(宏观并行,微观上串行)
  • 宏观上,一个存储周期内,m体交叉存储器可以提供的数据量为单个模块的m倍
  • 存取周期为T,存取时间(总线传输周期)为r,为了使流水线不间断运行,应保证模块数m>=T/r

image-20220522184019857

​ 每个模块都有相同的容量和存取速度,各模块都有独立的读写控制电路、地址寄存器、数据寄存器。它们既能并行工作,又能交叉工作。

​ 对于单体多字存储器

  • 每个存储单元存储m个字,总线宽度也为m个字,一次并行读出m个字
  • 每次只能同时取m个字,不能单独取其中某个字,指令和数据在主存内必须是连续存放的

image-20220522184722032

image-20220522184746379

“双通道”:低位交叉的多体存储器,可以使CPU的访存速度翻倍

“单纯的扩容”:在主板上将两根内存条插入到不同颜色的插槽中,相当于实现了高位交叉的多体存储器

总有些事情高于其他
Built with Hugo
主题 StackJimmy 设计
本站访客数人次 总访问量 本文阅读量