主存储器

Download Report

Transcript 主存储器

计算机组成原理第四章
知识点一:存储系统层次结构和评价方法
主讲教师:吴非
问题引入
数据和指令存在哪里?计算机里为什么使用存储系统?
如何评价其性能?
学习建议
系统观:与指令系统的设计以及优化建立联系,程序局
部性原理是程序优化的指南,存储系统的设计正是局部性
原理的体现。
构造观:通过存储系统的设计思想,分析存储层次体系
架构,理解程序局部性原理,掌握存储性能评价方法。
1. 存储器分类

存储介质
半导体(MOS、TTL,易失)
磁性(非易失)、光盘(激光、非易失)

存储方式(存储时间与物理地址的关系)
随机:无关(随机存储器,只读存储器)
串行:有关(顺序存储器,直接存储器)

存储功能和速度
寄存器,主存储器、高速缓冲存储器、辅助存储
器 (外存储器)
2.存储系统的层次结构
存储器的目标: 大容量、高速度、低价格
存储容量
CPU寄存器
Cache(SRAM
)
主存(DRAM)
内存
磁盘
存储速度
访问频率
单位成本
磁带、光盘
外存/辅存
2.存储系统的层次结构
 三级存储架构:高速缓存,主存储器,辅存存储器
 目标:主存储器为核心,缓存(cache)速度,辅存容
量
CPU

主存:存储当前使
寄存器
用的程序和数据
 辅存:后备程序和
高速缓存
数据
主存
 高速缓存:存储当
前经常使用的数据
辅助存储系统 磁盘高速缓存
和程序
硬盘
磁带、光盘、网络存储
3.分层结构的理论基础:程序局部性原理

存储的内容:数据,指令



数据: 数组, 结构体, 变量, 指针
指令:顺序访问的指令, 循环体, 子函数
程序局部性:程序仅访问内存很小一部分空
间


空间局部性: 如果内存某个区域刚刚被访问,不
久的将来其相邻区域很有可能被访问 (顺序指令,
数组)
时间局部性:如果内存某个区域刚刚被访问,不久
的将来该区域可能会被重复访问(循环, 局部变量
)

例:假定数组元素在主存按行优先顺序顺序存放。试改变下列
函数中循环的顺序,使得其数组元素的访问与排列顺序一致,
并说明为什么修改后的程序比原来的程序执行时间短。
修改后:
修改前:
int sum_array ( int
int sum_array ( int
a[N][N])
a[N][N])
{
{
int i, j, sum=0;
int i, j, sum=0;
for (i=0; i < N; i++)
for (i=0; i < N; i++)
for (j=0; j < N; j++)
for (j=0; j < N; j++)
sum+=a[i][j];
sum+=a[j][i];
return sum;
return sum;
}
} 修改后程序的数组元素的访问与排列顺序一致,使得空间局部
性比原程序好,故执行时间更短。
4.存储器主要技术指标

存储容量


存储器所能存储的二进制信息的位数
存储速度

存储时间:存储器访问时间, 读出时间或写
入时间
存储周期:连续两次访问存储器所需要的最小
时间间隔
存储器带宽:单位时间内存储器存取的信息量

存储器的可靠性


知识点一 回顾

存储器的种类

存储层次结构和组织方式
 程序局部性原理
 存储器性能评价方法