【系统架构设计】计算机组成与体系结构(二)

计算机组成与体系结构

计算机系统组成

存储器系统

前言

存储器用来存放程序和数据的部件,是一个记忆装置,也是计算机能够实现"存储程序控制"的基础。在计算机系统中,规模较大的存储器往往分成若干级,称为存储器系统。

传统存储器系统一般分为 高速缓冲存储器(Cache)、主存、辅存 三级。

  • 主存:可由CPU直接访问,存取速度快,但容量小,一般用来存放当前正在执行的程序和数据
  • 辅存:在主机外部,存储容量大,价格较低,但存取速度较慢,一般用来存放暂时不参与运行的程序和数据,CPU不可以直接访问辅存,辅存中的程序和数据在需要时才传送到主存,因此它是主存的补充和后援;
  • Cache:存取速度比主存更快,但容量更小,用来存放当前最急需处理的程序和数据,以便快速地向CPU提供指令和数据。

因此,计算机采用多级存储器体系 ,确保能够获得尽可能高的存取速率,同时保持较低的成本 。而多层次存储体系之所以能用低投入换来较高的存取速率,得益于局部性原理

局部性原理 是指程序在执行时呈现出局部性规律,即在一较短的时间内,程序的执行仅局限于某个部分。相应地,它所访问的存储空间也仅局限于某个区域。程序局部性包括时间局部性空间局部性

  • 时间局部性:是指程序中的某条指令一旦执行,不久以后该指令可能再次执行。产生时间局部性的典型原因是由于程序中存在着大量的循环操作;
  • 空间局部性:是指一旦程序访问了某个存储单元,不久以后,其附近的存储单元也将被访问,即程序在一段时间内所访问的地址可能集中在一定的范围内,典型情况就是程序顺序执行

存储器中数据常用的存取方式顺序存储、直接存取、随机存取、相联存取四种。

  1. 顺序存取:存储器的数据以记录的形式进行组织,对数据的访问必须按照特定的线性顺序进行。存取时间是固定的磁带存储器采用的就是顺序存取的方式。
  2. 直接存取:使用一个共享的读写装置对所有的数据进行访问,与顺序存取相似 。但是,每个数据块都拥有唯一的地址标志,读写装置可以直接移动到目的数据块所在位置进行访问。存取时间也是可变的磁盘存储器采用直接存取的方式。
  3. 随机存取:存储器的每一个可寻址单元都有唯一的地址和读写装置,系统可以在相同的时间内对任意一个存储单元的数据进行访问 ,而与先前的访问序列无关。存取时间是固定的主存储器采用随机存储的方式。
  4. 相联存取:也是一种随机存取的形式,但是选择某一个单元进行读写是取决于内容而不是其地址 。与普通的随机存取方式一样,每个单元都有自己的读写装置,读写时间也是一个常数 。使用相联存取方式,可以对所有的存储单元的特定位进行比较,选择符合条件的单元进行访问。为提高地址映射的速度,Cache 采用相联存取的方式

ps: 随机存取和相联存取由于每个单元都有唯一的读写装置 ,因此存取时间是固定的;顺序存取访问路线是确定的 ,因此存取时间也是固定的;直接存取由于磁头起始位置不同等因素,存取时间可变。

主存储器

由于CPU 要频繁访问主存,主存的性能在很大程度上影响了整个计算机系统的性能。根据工艺和技术的不同,主存可分为随机存取存储器 和 只读存储器

  1. 随机存取存储器(Random Access Memory,RAM):既可以写入也可以读出,但断电不保存 ,因此只能用于暂存数据。RAM 又可分为DRAM (Dynamic RAM,动态RAM)和SRAM(Static RAM,静态RAM)两种:
  • DRAM :信息会随时间逐渐消失,因此需要定时对其进行刷新维持信息不丢失;
  • SRAM:在不断电情况下信息能够一直保持而不会丢失

DRAM 密度大于SRAM,且更加便宜,但SRAM速度快,电路简单(不用刷新电路),然而容量小,价格高

  1. 只读存储器(Read Only Memory,ROM):可以看作RAM一种特殊的形式,存储器内容只能随机读出而不能写入 。常用来存放那些不需要改变的信息 。由于信息一旦写入存储器就固定不变了,即使断电,写入的内容也不会丢失 ,所以又称为固定存储器。ROM一般用于存放系统程序BIOS(Basic Input Output System,基本输入输出系统)。

存储器存储数量(计算)

不同计算机存储器编址方式不同,主要有字编址和字节编址。内存一般以字节(8位)为单位,或者以字为单位(字的长度可大可小,例如16位或32位)。

例如:内存地址从AC000H 到C7FFFH,则共有C7FFFH-AC000H=1BFFFH个地址单元(转换为十进制为 112KB)。如果该内存地址按字(16bit)编址,则共有112KB * 16 位。假设该内存由28片存储器芯片构成,已知构成此内存的芯片每片有16KB 个存储单元,则该芯片每个存储单元存储(112KB * 16) /(28 * 16KB)=4位

辅助存储器(以磁盘为例)

硬盘存储器在硬盘中,信息分布呈以下层次:记录面、圆柱面、磁道、扇区

一台硬盘驱动器中有多个磁盘片,每个盘片有2个记录面 ,每个记录面对应一个磁头,所以记录面号就是磁头号 ,如图1-2(a)。所有的磁头安装在一个公用的传动设备或支架上,磁头一致地沿盘面径向移动,单个磁头不能单独移动。在记录面上,一条条磁道形成一组同心圆,最外圈的磁道为0号 ,往内侧磁道号逐渐增加,如图1-2(b)。在一个盘组中,各记录面上相同编号(位置)的各磁道构成一个柱面,如图1-2(c)。

每个磁道片有m个磁道,则该硬盘有m个柱面引入柱面的概念是为了提高硬盘的存储速度 。当主机要存入一个较大的文件时,若一条磁道存不完,就需要存放在几条磁道上。这时应该将一个文件尽可能存到同一个柱面上,如果仍存放不完,再存入相邻的柱面内

ps: 同一柱面,磁头不用移动。

通常将一条磁道划分若干段,每段称为一个扇区或扇段,每个扇区存放一个定长信息块。具体怎么划分一般由操作系统 决定。磁道上扇区编号从1开始

在磁盘上进行信息读写时,首先需要定位到目标磁道 ,这个过程称为寻道 。寻道消耗时间为寻道时间,定位到目标磁道后,需要定位到目标扇 区,此过程通过旋转盘片 完成,平均旋转半圈可到目标位置。故磁道访问时间为:
磁盘访问时间(存取时间) = 寻道时间 + 旋转延迟时间

Cache存储器

流水线

相关推荐
一只码代码的章鱼9 天前
操作系统 第九章 部分
系统架构
还债大湿兄10 天前
《王者荣耀》系统架构深度技术解析
系统架构
池佳齐11 天前
【软考高级系统架构论文】论湖仓一体架构及其应用
架构·系统架构
池佳齐11 天前
【软考高级系统架构论文】论软件设计方法及其应用
系统架构
大数据张老师11 天前
自动化性能回退机制——蓝绿部署与灰度发布
运维·系统架构·自动化·ai架构
孟猛202312 天前
股票账户的管理和交易
系统架构
hwj运维之路12 天前
大数据系统架构实践(一):Zookeeper集群部署
大数据·zookeeper·系统架构
劳埃德福杰13 天前
【系统规划与管理师第二版】1.3 新一代信息技术及发展
系统架构·软件工程·设计规范
范纹杉想快点毕业13 天前
Qt实现文本编辑器光标高亮技术
java·开发语言·c++·算法·系统架构
掘金-我是哪吒14 天前
分布式微服务系统架构第152集:JavaPlus技术文档平台日更
分布式·微服务·云原生·架构·系统架构