计算机体系结构
一、计算机体系结构的发展
1.计算机体系结构概述
1984年,拜尔在一篇题为《计算机体系结构》文章中给出了一个含义广泛的定义:体系结构是由结构、组织、实现、性能四个基本方面组成的。
【注】计算机体系结构、计算机组织、计算机实现:
{
计
算
机
体
系
结
构
:
计
算
机
的
概
念
性
结
构
和
功
能
属
性
计
算
机
组
织
:
计
算
机
体
系
结
构
的
逻
辑
实
现
计
算
机
实
现
:
计
算
机
组
织
的
物
理
实
现
\begin{cases} 计算机体系结构:计算机的概念性结构和功能属性&\\ 计算机组织:计算机体系结构的逻辑实现& \\ 计算机实现:计算机组织的物理实现& \\ \end{cases}
⎩⎪⎨⎪⎧计算机体系结构:计算机的概念性结构和功能属性计算机组织:计算机体系结构的逻辑实现计算机实现:计算机组织的物理实现
2.计算机体系结构分类
(1)按处理机的数量分类(从宏观上):
宏
观
分
类
{
单
处
理
系
统
:
利
用
一
个
处
理
单
元
与
其
他
外
部
设
备
结
合
实
现
存
储
、
计
算
、
通
信
等
功
能
并
行
处
理
与
多
处
理
系
统
:
将
两
个
以
上
处
理
机
互
连
,
彼
此
通
信
协
调
,
便
于
求
解
大
问
题
的
计
算
机
系
统
分
布
式
处
理
系
统
:
物
理
上
远
距
离
而
松
耦
合
的
多
计
算
机
系
统
宏观分类 \begin{cases} 单处理系统:利用一个处理单元与其他外部设备结合实现存储、计算、通信等功能&\\ 并行处理与多处理系统:将两个以上处理机互连,彼此通信协调,便于求解大问题的计算机系统& \\ 分布式处理系统:物理上远距离而松耦合的多计算机系统& \\ \end{cases}
宏观分类⎩⎪⎨⎪⎧单处理系统:利用一个处理单元与其他外部设备结合实现存储、计算、通信等功能并行处理与多处理系统:将两个以上处理机互连,彼此通信协调,便于求解大问题的计算机系统分布式处理系统:物理上远距离而松耦合的多计算机系统
(2)按并行程度分类(从微观上):
微
观
分
类
{
F
l
y
n
n
:
按
指
令
流
和
数
据
流
的
多
少
将
计
算
机
系
统
分
为
单
指
令
流
单
数
据
流
(
S
I
S
D
)
,
单
指
令
流
多
数
据
流
(
S
I
M
D
)
,
(
M
I
S
D
)
和
(
M
I
M
D
)
四
种
马
泽
云
:
按
并
行
度
将
计
算
机
系
统
分
为
字
串
行
位
串
行
(
W
S
B
S
)
计
算
机
,
字
并
行
位
串
行
(
W
P
B
S
)
计
算
机
,
(
W
S
B
P
)
计
算
机
,
(
W
P
B
P
)
计
算
机
四
类
H
a
n
d
l
e
r
:
按
硬
件
并
行
程
度
和
计
算
并
行
程
度
将
硬
件
结
构
分
为
处
理
机
级
、
处
理
机
中
算
术
逻
辑
单
元
级
、
算
术
逻
辑
单
元
的
逻
辑
门
电
路
级
三
个
层
次
K
u
c
k
:
按
指
令
流
和
执
行
流
及
多
重
性
将
其
分
为
单
指
令
流
单
执
行
流
(
S
I
S
E
)
,
单
指
令
流
多
执
行
流
(
S
I
M
E
)
,
(
M
I
S
E
)
,
(
M
I
M
E
)
四
类
微观分类 \begin{cases} Flynn:按指令流和数据流的多少将计算机系统分为单指令流单数据流(SISD),单指令流多数据流(SIMD),(MISD)和(MIMD)四种&\\ 马泽云:按并行度将计算机系统分为字串行位串行(WSBS)计算机,字并行位串行(WPBS)计算机,(WSBP)计算机,(WPBP)计算机四类& \\ Handler:按硬件并行程度和计算并行程度将硬件结构分为处理机级、处理机中算术逻辑单元级、算术逻辑单元的逻辑门电路级三个层次& \\ Kuck:按指令流和执行流及多重性将其分为单指令流单执行流(SISE),单指令流多执行流(SIME),(MISE),(MIME)四类& \\ \end{cases}
微观分类⎩⎪⎪⎪⎨⎪⎪⎪⎧Flynn:按指令流和数据流的多少将计算机系统分为单指令流单数据流(SISD),单指令流多数据流(SIMD),(MISD)和(MIMD)四种马泽云:按并行度将计算机系统分为字串行位串行(WSBS)计算机,字并行位串行(WPBS)计算机,(WSBP)计算机,(WPBP)计算机四类Handler:按硬件并行程度和计算并行程度将硬件结构分为处理机级、处理机中算术逻辑单元级、算术逻辑单元的逻辑门电路级三个层次Kuck:按指令流和执行流及多重性将其分为单指令流单执行流(SISE),单指令流多执行流(SIME),(MISE),(MIME)四类
3.指令系统
(1)指令集体系结构分为:操作数在CPU中的存储方式、显式操作数数量、操作数位置、指令操作、操作数类型和大小。
(2)复杂指令集计算机(CISC)主要弊端:指令过于庞杂、复杂指令的解释过程会降低处理速度、编译程序冗长复杂从而难以优化、研制周期长、芯片成本高且出错率增大。
(3)精简指令集、指令系统的优化及指令的流水处理
R
I
S
C
的
关
键
技
术
{
重
叠
寄
存
器
窗
口
技
术
优
化
编
译
技
术
超
流
水
及
超
标
量
技
术
在
微
程
序
技
术
中
结
合
硬
布
线
逻
辑
与
微
程
序
RISC的关键技术 \begin{cases} 重叠寄存器窗口技术&\\ 优化编译技术& \\ 超流水及超标量技术& \\ 在微程序技术中结合硬布线逻辑与微程序& \\ \end{cases}
RISC的关键技术⎩⎪⎪⎪⎨⎪⎪⎪⎧重叠寄存器窗口技术优化编译技术超流水及超标量技术在微程序技术中结合硬布线逻辑与微程序
RISC采用的流水技术有三种:超流水线、超标量和超长指令字
(4)阵列处理机、并行处理机和多处理机
- 阵列处理机:将重复设置的多个处理单元按一定的方式连成阵列,在单个控制部件控制下对分配给自己的数据进行处理,并行完成一条指令所规定的的操作。
- 并行处理机:SIMD和MIMD是典型并行计算机,SIMD有共享存储器和分布存储器两种形式。
- 多处理机:由多台处理机组成,每台处理机都有属于自己的控制部件,共享一个主存储器和所有外部设备。
二、存储系统
1.存储的结构层次
CPU内部通用寄存器—>Cache—>主存储器—>联机磁盘存储器—>脱机光盘、磁盘存储器
2.存储器的分类
存 储 器 { 按 存 储 器 所 处 位 置 分 : 内 存 、 外 存 按 存 储 器 构 成 材 料 分 : 磁 存 储 器 、 半 导 体 存 储 器 、 光 存 储 器 按 存 储 器 工 作 方 式 分 : 读 写 存 储 器 、 只 读 存 储 器 按 访 问 方 式 分 : 按 地 址 访 问 的 存 储 器 、 按 内 容 访 问 的 存 储 器 按 寻 址 方 式 分 : 随 机 存 储 器 、 顺 序 存 储 器 、 直 接 存 储 器 存储器 \begin{cases} 按存储器所处位置分:内存、外存&\\ 按存储器构成材料分:磁存储器、半导体存储器、光存储器& \\ 按存储器工作方式分:读写存储器、只读存储器& \\ 按访问方式分:按地址访问的存储器、按内容访问的存储器& \\ 按寻址方式分:随机存储器、顺序存储器、直接存储器& \\ \end{cases} 存储器⎩⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎧按存储器所处位置分:内存、外存按存储器构成材料分:磁存储器、半导体存储器、光存储器按存储器工作方式分:读写存储器、只读存储器按访问方式分:按地址访问的存储器、按内容访问的存储器按寻址方式分:随机存储器、顺序存储器、直接存储器
3.相联存储器
相联存储器是一种按内容访问的存储器
4.高速缓存
高 速 缓 存 ( C a c h e ) { 组 成 部 分 : 控 制 部 分 和 存 储 器 部 分 地 址 映 像 方 法 : 直 接 映 像 、 全 相 连 映 像 、 组 相 连 映 像 替 换 算 法 : 随 机 替 换 算 法 、 先 进 先 出 算 法 、 近 期 最 少 使 用 算 法 。 优 化 替 换 算 法 性 能 分 析 : 命 中 率 是 其 重 要 指 标 , 容 量 越 大 , 命 中 率 越 高 多 级 C a c h e : 多 级 C a c h e 计 算 机 中 分 为 一 级 、 二 级 等 高速缓存(Cache) \begin{cases} 组成部分:控制部分和存储器部分&\\ 地址映像方法:直接映像、全相连映像、组相连映像& \\ 替换算法:随机替换算法、先进先出算法、近期最少使用算法。优化替换算法& \\ 性能分析:命中率是其重要指标,容量越大,命中率越高& \\ 多级Cache:多级Cache计算机中分为一级、二级等& \\ \end{cases} 高速缓存(Cache)⎩⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎧组成部分:控制部分和存储器部分地址映像方法:直接映像、全相连映像、组相连映像替换算法:随机替换算法、先进先出算法、近期最少使用算法。优化替换算法性能分析:命中率是其重要指标,容量越大,命中率越高多级Cache:多级Cache计算机中分为一级、二级等
5.虚拟存储器
虚拟存储器:把很大的程序分成许多较小的块,全部存储在辅存中,实现一边运行程序、一边进行所需程序块的调进或调出。
虚
拟
存
储
器
{
页
式
虚
拟
存
储
器
段
式
虚
拟
存
储
器
段
页
式
虚
拟
存
储
器
虚拟存储器 \begin{cases} 页式虚拟存储器&\\ 段式虚拟存储器& \\ 段页式虚拟存储器& \\ \end{cases}
虚拟存储器⎩⎪⎨⎪⎧页式虚拟存储器段式虚拟存储器段页式虚拟存储器
6.外存储器
外 存 储 器 { 磁 盘 存 储 器 : 存 取 速 度 较 快 、 存 储 容 量 较 大 , 是 目 前 广 泛 使 用 的 外 存 储 器 , 如 硬 盘 光 盘 存 储 器 : 采 用 聚 焦 激 光 束 在 盘 式 介 质 上 非 接 触 记 录 高 密 度 信 息 的 新 型 存 储 装 置 外存储器 \begin{cases} 磁盘存储器:存取速度较快、存储容量较大,是目前广泛使用的外存储器,如硬盘& \\ 光盘存储器:采用聚焦激光束在盘式介质上非接触记录高密度信息的新型存储装置& \\ \end{cases} 外存储器{磁盘存储器:存取速度较快、存储容量较大,是目前广泛使用的外存储器,如硬盘光盘存储器:采用聚焦激光束在盘式介质上非接触记录高密度信息的新型存储装置
7.磁盘阵列技术
磁盘阵列是由多台磁盘存储器组成的一个快速、大容量、高可靠的外存子系统,常见的磁盘阵列称为冗余磁盘阵列(RAID)。
三、输入/输出技术
1.微型计算机中常用的内存与接口的编址方法
编 址 方 法 { 独 立 编 址 方 法 : 两 者 完 全 独 立 且 相 互 隔 离 ; 缺 点 : 用 于 接 口 的 指 令 太 少 、 功 能 弱 统 一 编 址 方 法 : 内 存 和 接 口 地 址 统 一 在 公 共 的 地 址 空 间 ; 缺 点 : 内 存 地 址 不 连 续 编址方法 \begin{cases} 独立编址方法:两者完全独立且相互隔离;缺点:用于接口的指令太少、功能弱& \\ 统一编址方法:内存和接口地址统一在公共的地址空间;缺点:内存地址不连续& \\ \end{cases} 编址方法{独立编址方法:两者完全独立且相互隔离;缺点:用于接口的指令太少、功能弱统一编址方法:内存和接口地址统一在公共的地址空间;缺点:内存地址不连续
2.输入/输出的方式一:直接程序控制
两 种 情 况 { 无 条 件 传 送 : 外 设 可 以 无 条 件 随 时 接 收 C P U 发 来 的 输 出 数 据 , 也 可 以 向 C P U 提 供 需 要 的 输 入 数 据 程 序 查 询 方 式 : 通 过 C P U 执 行 程 序 来 查 询 外 设 的 状 态 , 判 断 外 设 是 否 准 备 好 接 收 或 传 送 数 据 ; 缺 点 : 降 低 了 C P U 效 率 , 缺 少 应 激 性 两种情况 \begin{cases} 无条件传送:外设可以无条件随时接收CPU发来的输出数据,也可以向CPU提供需要的输入数据& \\ 程序查询方式:通过CPU执行程序来查询外设的状态,判断外设是否准备好接收或传送数据;缺点:降低了CPU效率,缺少应激性& \\ \end{cases} 两种情况{无条件传送:外设可以无条件随时接收CPU发来的输出数据,也可以向CPU提供需要的输入数据程序查询方式:通过CPU执行程序来查询外设的状态,判断外设是否准备好接收或传送数据;缺点:降低了CPU效率,缺少应激性
3.输入/输出的方式二:中断方式
当I/O系统准备好后,发出中断请求信号通知CPU—>CPU保存正在执行程序的现场转入I/O中断服务程序的执行—>完成与I/O系统的数据交换—>再返回被打断的程序继续执行
中
断
处
理
方
法
{
多
中
断
信
号
线
法
中
断
软
件
查
询
法
菊
花
链
法
总
线
仲
裁
法
中
断
向
量
表
法
中断处理方法 \begin{cases} 多中断信号线法&\\ 中断软件查询法& \\ 菊花链法& \\ 总线仲裁法& \\ 中断向量表法& \\ \end{cases}
中断处理方法⎩⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎧多中断信号线法中断软件查询法菊花链法总线仲裁法中断向量表法
【注】进行中断优先级控制时解决的两种情况:
两
种
情
况
{
当
不
同
优
先
级
多
个
中
断
源
同
时
提
出
中
断
请
求
时
,
C
P
U
应
优
先
响
应
优
先
级
最
高
的
中
断
源
当
C
P
U
在
对
某
中
断
源
服
务
时
,
若
有
更
高
优
先
级
的
中
断
源
提
出
请
求
,
C
P
U
会
转
向
对
优
先
级
更
高
的
中
断
源
服
务
两种情况 \begin{cases} 当不同优先级多个中断源同时提出中断请求时,CPU应优先响应优先级最高的中断源& \\ 当CPU在对某中断源服务时,若有更高优先级的中断源提出请求,CPU会转向对优先级更高的中断源服务& \\ \end{cases}
两种情况{当不同优先级多个中断源同时提出中断请求时,CPU应优先响应优先级最高的中断源当CPU在对某中断源服务时,若有更高优先级的中断源提出请求,CPU会转向对优先级更高的中断源服务
4.输入/输出的方式三:直接存储器存取方式
直接存储器存取方式是一种告诉数据传输方式,数据不经过CPU就直接在存储器及输入/输出设备之间进行传输。
5.输入/输出的方式四:输入/输出处理机
IOP数据传输方式包括字节多路方式、选择传送方式和数组多路方式。
四、总线结构
1.总线定义
任何连接两个以上电子元器件的导线都可以称为总线
2.总线的分类
总线一般分为三类:内部总线、系统总线和外部总线
总
线
{
内
部
总
线
:
C
P
U
、
内
存
、
输
入
/
输
出
设
备
传
递
信
息
的
公
用
通
道
系
统
总
线
:
其
性
能
直
接
影
响
计
算
机
性
能
,
常
见
总
线
标
准
包
括
I
S
A
总
线
、
E
I
S
A
总
线
、
P
C
I
总
线
外
部
总
线
:
标
准
包
括
R
S
−
232
C
、
S
C
S
I
总
线
、
U
S
B
、
I
E
E
E
−
1394
、
I
E
E
E
−
488
等
总线 \begin{cases} 内部总线:CPU、内存、输入/输出设备传递信息的公用通道& \\ 系统总线:其性能直接影响计算机性能,常见总线标准包括ISA总线、EISA总线、PCI总线& \\ 外部总线:标准包括RS-232C、SCSI总线、USB、IEEE-1394、IEEE-488等& \\ \end{cases}
总线⎩⎪⎨⎪⎧内部总线:CPU、内存、输入/输出设备传递信息的公用通道系统总线:其性能直接影响计算机性能,常见总线标准包括ISA总线、EISA总线、PCI总线外部总线:标准包括RS−232C、SCSI总线、USB、IEEE−1394、IEEE−488等