计算机系统结构
文章目录
第一章:计算机系统结构的基本概念
1.2 计算机系统结构的概念
1.2.1 计算机系统的层次结构
- 计算机系统=硬件/固件+软件
- 计算机语言从低级向高级发展
- 从计算机语言的角度,把计算机系统按功能划分成
多级层次结构。
虚拟机:由软件实现的机器
语言实现的两种基本技术:
- 翻译:先把N+1级程序全部转换成N级程序后,再去执行新产生的N级程序,在执行过程中N+1级程序不再被访问。
- 解释:每当一条N+1级指令被译码后,就直接去执行一串等效的N级指令,然后再去取下一条N+1级的指令,依此重复进行。
解释执行比编译后再执行所花的时间多,但占用的存储空间较少。
1.2.2 计算机系统结构的定义
-
计算机系统结构的经典定义
程序员所看到的计算机属性,即概念性结构与功能特性。
-
按照计算机系统的多级层次结构,不同级程序员所看到的计算机具有不同的属性。
-
透明性
在计算机技术中,把这种本来存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性。 -
Amdahl提出的系统结构
传统机器语言级程序员所看到的计算机属性。
-
广义的系统结构定义:指令集结构、组成、硬件
(计算机设计的3个方面)
计算机系统结构概念的实质:
确定计算机系统中软、硬件的界面,界面之上是软件实
现的功能,界面之下是硬件和固件实现的功能。
1.2.3 计算机组成和计算机实现
-
计算机系统结构:计算机系统的软、硬件的界面
即机器语言程序员所看到的传统机器级所具有的
属性。 -
计算机组成:计算机系统结构的逻辑实现
包含物理机器级中的数据流和控制流的组成以及逻辑设计等。
着眼于:物理机器级内各事件的排序方式与控制方式、各部件的功能以及各部件之间的联系 -
计算机实现:计算机组成的物理实现
包括处理机、主存等部件的物理结构,器件的集
成度和速度,模块、插件、底板的划分与连接,
信号传输,电源、冷却及整机装配技术等。
着眼于:器件技术(起主导作用)、微组装技术。 -
系列机
由同一厂家生产的具有相同系统结构、但具有
不同组成和实现的一系列不同型号的计算机。
一种体系结构可以有多种组成。
一种组成可以有多种物理实现。
1.2.4 计算机系统结构的分类
常见的计算机系统结构分类法有两种:Flynn分类法、冯氏分类法
- 冯氏分类法
- 用系统的最大并行度对计算机进行分类。
- 最大并行度:计算机系统在单位时间内能够处理
的最大的二进制位数。
- Flynn分类法
- 按照指令流和数据流的多倍性进行分类。
- 指令流:计算机执行的指令序列。
- 数据流:由指令流调用的数据序列。
- 多倍性:在系统受限的部件上,同时处于同一执
行阶段的指令或数据的最大数目。
1.3 定量分析技术
4个定量原理:
-
以经常性事件为重点
- 对经常发生的情况采用优化方法的原则进行选
择,以得到更多的总体上的改进。 - 优化是指分配更多的资源、达到更高的性能或
者分配更多的电能等。
- 对经常发生的情况采用优化方法的原则进行选
-
Amdahl定律
加快某部件执行速度所能获得的系统性能加速
比,受限于该部件的执行时间占系统中总执行时间
的百分比。系统性能加速比:

-
加速比依赖于两个因素
可改进比例:在改进前的系统中,可改进部分的执行时间在总的执行时间中所占的比例。
它总是小于等于1。例如:一个需运行60秒的程序中有20秒的运算可以加速, 那么这个比例就是20/60。
部件加速比:可改进部分改进以后性能提高的倍数。它是改进前所需的执行时间与改进后执行时间的比。
一般情况下部件加速比是大于1的。例如:若系统改进后,可改进部分的执行时间是2秒,
而改进前其执行时间为5秒,则部件加速比为5/2。改进后程序的总执行时间
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DW6MWGnJ-1639486688323)(C:\Users\13007\AppData\Roaming\Typora\typora-user-images\image-20211214200741851.png)]](https://i-blog.csdnimg.cn/blog_migrate/8c30ad683c0775a6c4518c54b4010033.png)
系统加速比为改进前与改进后总执行时间之比
-

-
例1.1 将计算机系统中某一功能的处理速度提高到原来的20倍,但该功能的处理时间仅占整个系统运行时间的40%,则采用此提高性能的方法后,能使整个系统的性能提高多少?
解 由题可知,可改进比例 = 40% = 0.4,
部件加速比 = 20
根据Amdahl定律可知:

采用此提高性能的方法后,能使整个系统的性能提高到原来的1.613倍。
-
例1.2 某计算机系统采用浮点运算部件后,使浮点运算速度提高到原来的20倍,而系统运行某一程序的整体性能提高到原来的5倍,试计算该程序中浮点操作所占的比例。
解 由题可知,部件加速比 = 20,系统加速比 = 5
根据Amdahl定律可知
由此可得:可改进比例 = 84.2%
即程序中浮点操作所占的比例为84.2%。 -
Amdahl定律:一种性能改进的递减规则
- 如果仅仅对计算任务中的一部分做性能改进,则改
进得越多,所得到的总体性能的提升就越有限。
- 如果仅仅对计算任务中的一部分做性能改进,则改
-
重要推论:如果只针对整个任务的一部分进行改
进和优化,那么所获得的加速比不超过
1/(1-可改进比例)
第二章 计算机指令集结构
2.1 指令集结构的分类
-
区别不同指令集结构的主要因素
CPU中用来存储操作数的存储单元的类型
-
CPU中用来存储操作数的存储单元的主要类型
- 堆栈
- 累加器
- 通用寄存器组
-
将指令集结构分为三种类型
- 堆栈结构
- 累加器结构
- 通用寄存器结构
根据操作数的来源不同,又可进一步分为:- 寄存器-存储器结构(RM结构)
(操作数可以来自存储器 ) - 寄存器-寄存器结构(RR结构)
(所有操作数都是来自通用寄存器组)
也称为load-store结构,这个名称强调:只有load指令和store指令能够访问存储器。
- 寄存器-存储器结构(RM结构)
2.2 寻址方式
2.3 指令集结构的功能设计
-
指令集结构的功能设计
- 确定软、硬件功能分配,即确定哪些基本功能应该由硬件实现,哪些功能由软件实现比较合适。
-
在确定哪些基本功能用硬件来实现时,主要考虑3个因素:速度、成本、灵活性
- 硬件实现的特点
速度快、成本高、灵活性差 - 软件实现的特点
速度慢、价格便宜、灵活性好
- 硬件实现的特点
-
对指令集的基本要求
完整性、规整性、高效率、兼容性- 完整性:在一个有限可用的存储空间内,对于任何可解的问题,编制计算程序时,指令集所提供的指令足够用。
- 规整性:主要包括对称性和均匀性。
- 高效率:指指令的执行速度快、使用频度高。
-
在设计指令集结构时,有两种截然不同的设计策略。
(产生了两类不同的计算机系统 )
-
CISC(复杂指令集计算机)
增强指令功能,把越来越多的功能交由硬件来实现,并且指令的数量也是越来越多。
-
RISC(精简指令集计算机)
尽可能地把指令集简化,不仅指令的条数少,而且指令的功能也比较简单。
-
2.4 操作数的类型和大小
2.5 指令格式的设计
2.6 MIPS指令集结构
第三章:流水线技术
3.1 流水线的基本概念
- 流水线技术
- 把一个重复的过程分解为若干个子过程,每个子过程由专门的功能部件来实现。
- 把多个处理过程在时间上错开,依次通过各功能段,这样,每个子过程就可以与其他的子过程并行进行。
- 流水线中的每个子过程及其功能部件称为流水线的级或段,段与段相互连接形成流水线。流水线的段数称为流水线的深度。
- 流水技术的特点
- 流水线把一个处理过程分解为若干个子过程(段),每个子过程由一个专门的功能部件来实现。 <

本文详细介绍了计算机系统结构的基础知识,包括计算机系统结构的层次性、定义、组成与实现,以及计算机指令集结构、流水线技术和存储系统。特别讨论了存储层次结构、Cache的工作原理、性能指标和优化策略,如不命中率、平均访存时间和替换算法。此外,还涉及了流水线技术中的吞吐率、瓶颈段和最大吞吐率的概念。
最低0.47元/天 解锁文章
1192

被折叠的 条评论
为什么被折叠?



