MAR位数对应着存储单元的个数
MDR位数和存储字长相等
$2^{10}=1024=1K$MAR位数=PC位数
现代计算机要求存储系统满足大容量、高速度和低成本三项基本要求
由干制造工艺限制,很难在同一种存储器中都达到这些要求,三者不可兼得,为此采用分层(级)存储体系
并通过管理软件和辅助硬件将不同性能的存储器组合成有机的整体,称为计算机的存储层次或存储体系
概念 高速缓存 (Cache)
又称快存,用速度较快的存储器构成,可在2ns内可完成一次数据存取,目前容量一般为几MB左右,用来临时存放指令和数据。
概念 主存
用来存放运行期间的大量程序和数据,目前容量在几GB左右,速度稍慢,可在10ns内完成一次存取
概念 辅存 (即辅助存储器,又称外存储器,简称外存)
一般由磁表面存储器、光存储器构成,用来存放系统程序、大型文件、数据库等,目前容量在数百GB左右
速度为ms级。
概念 虚拟存储器
现代计算机通常采用cache一主存一辅存层次结构。
在CPU和主存之间增加一个高速缓冲存储器,由纯硬件实现,提高CPU访问程序和数据的速度
主存一辅存采用虚拟存储器技术,由软件和硬件实现,扩充主存的容量。
补充 三种存储器构成三级存储器管理,各级职能和要求不同
Cache追求速度,以和CPU速度匹配
辅存追求容量大,
主存介于两者之间,对容量,速度都有一定要求
概念 按构成存储器的器件和存储介质分类
可分为磁介质存储器、电子介质存储器、纸介质存储器、光介质存储器等
概念 按存取方式分类
可分为随机存储器
(Random Access Memory, RAM)
只读存储器 (Read Only Memory, ROM)
串行访问存储器 (Sequential Access Memory,SAM)
概念 按在计算机中的作用分类
可分为主存储器 (简称主存,又称内存)
辅助存储器(简称外存或辅存)
缓冲存储器(简称缓存) 等。
概念 按信息的可保护性分类
可分为易失性存储器和非易失性存储器
RAM都是易失性存储器
ROM都是非易失性存储器
概念 存储器存取时间
从存储器读出/写入一个存储单元信息,或从存储器读出/写入一次信息
(信息可能是一个字节或一个字) 所需要的平均时间,称为存储器的取数时间/存数时间
概念 存储器存取周期
存储器进行一次完整的读写操作所需要的全部时间,称为存取周期。具体地说,存取周期是连续启
动两个独立的存储器操作(如两个连续的读操作)之间所需要的最小时间间隔。一般大于存取时间
概念存储器存取带宽
单位时间可写入存储器或从存储器取出的信息的最大数量,称为数据传输率或称为存储器传输带宽
单位为字节/秒 (B/s,Bps) 或位/秒 (b/s,bps).
操作/状态 | 写1 | 读1 | 写0 | 读0 |
---|---|---|---|---|
地址线和MOS管 | 高电压接通MOS管 | 高电压接通MOS管 | 高电压接通MOS管 | 高电压接通MOS管 |
数据线 | 高电压(主动) | 高电压(被动) | 低电压(主动) | 低电压(被动) |
电容 | 充电 | 放电 | 稳态 | 稳态 |
利用存储元构成存储体
主存结构: 包括存储体,MAR,MDR,时序控制逻辑
概念 寻址方式/编址方式: 前提每个存储单元有一个地址
例子
总容量为1KB
数据存储方式
01234567H
RAM (Random Access Memory)
被称为随机存取存储器。可以向 RAM 写入数据,也可以从 RAM 读出数据
RAM 的一个明显的特点是: 它是易失性存储器
一般来说RAM有两种: SRAM、DRAM
SRAM
SRAM 存储1个位,需要 6 个晶体管,因此 SRAM 存储器的集成度低,但读写的速度快,所以价格贵。因为速度快SRAM 经常用作 Cache
DRAM
DRAM单个位的构成简单,集成度高,容量大,但需要刷新电路,读写速度比静态存储器慢,价格低廉。特别是价格低廉,使动态存储器成为计算机中使用最多的存储器
Dynamid Random Access Memory
MOS管接通
Static Random Access Memory
SRAM和DRAM的对比
类型 | SRAM | DRAM |
---|---|---|
用途 | Cache | 内存 |
破坏性读出 | 否 | 是 |
数据是否再生 | 否 | 是 |
运行速度 | 快 | 慢 |
集成度 | 低 | 高 |
发热量 | 大 | 小 |
存储成本 | 高 | 低 |
是否易失 | 断电易失 | 断电易失 |
是否需要刷新送行列地址 | 不需要同时 | 需要异步 |
DRAM的地址复用技术
对n位行地址、m位列地址,仅需要2+2m根选择线,适合容量大的存储芯片
引入位片式结构之后如何刷新? 在什么时候刷新?
刷新方式
利用硬件重新写入电容,占用1个存取周期
刷新周期: 2ms(每2ms之内重新写入)
刷新方式: 按行刷新! 每次刷新一行存储单元
假设DRAM内部结构排列成128x128的形式,存取周期0.5us,那么2ms内共 2ms/0.5us = 4000 个周期
是在信息保存允许的时间范围内,集中一段时间对所有基本存储单元一行一行地顺序进行刷新,这段时间称为刷新时间。刷新时间=存储矩阵行数x存取周期 (刷新一行所需要的时间)
假设DRAM内部结构排列成128x128的形式,存取周期0.5us,,那么2ms内共 2ms/0.5us = 4000 个周期
分散刷新是每隔一段时间刷新一次,把刷新操作分散到每个存取周期内进行,此时系统的存取周期$t_C$。被分为两段,前半段时间$t_A$,进行读写操作或保持,后半段时间$t_R$,进行刷新操作,即$t_C=t_A+t_R$,刷新操作与CPU操作无关。在一个系统存取周期内刷新存储矩阵中的一行。
假设DRAM内部结构排列成128x128的形式,存取周期0.5us,那么2ms内共 2ms/0.5us = 4000 个周期
异步刷新则是结合前两种刷新方式,在一个指令周期中,利用CPU不进行访问存储器操作时进行刷新。先根据
刷新的行数对刷新间隔(如2ms) 进行分割,分割后的每段时间中,再分成两部分,前一段时间用于读/写或保持,后一段时间用于刷新。
ROM (Read Olny Memory)
ROM 是非易失型存储器,工作时需要电源,当电源消失,存储的信息不会丢失,所以 ROM 可以保存需要长久保存的信息,如程序代码。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。