[计算机系统结构]概论

计算机系统层次结构由高到低依次为:应用语言机器级高级语言机器级汇编语言机器级操作系统机器级传统语言机器级微程序机器级

从使用语言的角度,一台由软、硬件组成的通用计算机系统可以被看成是按功能划分多层机器级组成的层次结构。

弗林提出的对计算机系统机型分类的依据,是按照指令流数据流的多倍性对计算机系统进行分类的。(1)

系统结构是对计算机系统中各级界面的定义及其上下的功能分配。

计算机系统结构研究的是软、硬件之间的功能分配以及对传统机器级界面的确定。(1)

从计算机原理上看,软件的功能可以用硬件或固件完成,硬件的功能也可以用软件模拟完成。(1)

计算机组成是计算机系统结构的逻辑实现,计算机实现是计算机组成的物理实现。(1)

计算机组成指的是计算机系统结构的逻辑实现,包括机器级内部的数据流和控制流的组成以及逻辑设计

计算机组成着眼于机器内部各事件的排序方式与控制机构各部件的功能及各部件之间的联系

计算机系统设计的主要任务包括系统结构组成、和实现的设计。(1)

软件移植的模拟方式是用机器语言程序解释,其解释程序存储在主存中。(1)

从多级层次结构出发,计算机系统设计方式包括“由上到下”,“由下到上”,“从中间开始向两边”设计。(1)

计算机功能分别用硬件和软件实现的优缺点:提高硬件功能比例可提高解题速度,减少程序所需的存储空间,但会增加硬件成本,降低硬件利用率和计算机系统的灵活性和适应性。提高软件功能比例可降低硬件成本,提高系统的灵活性和适应性,但解题速度会下降,软件设计费用和所需的存储器用量增加;总结来说:硬件的优点是提升执行速度,减少程序的存储空间,增加硬件成本和降低硬件利用率、灵活性、适应性;软件的优点是降低硬件成本,提高灵活性和适应性,但降低执行速度和增加软件存储空间。

并行性包含同时性和并发性二重含义:同时性指两个或多个时间在同一时刻发生,并发性是指两个或多个时间在同一间隔发生

开发并行性的途径有时间重叠资源重复资源共享等。

计算机系统分类,弗林分类法:单指令流单数据流(SISD)单指令流多数据流(SIMD)多指令流单数据流(MISD)多指令流多数据流(MIMD)四大类。

计算机的运算类指令运算器结构主要是按照计算机有什么样的数据表示来确定的

自定义数据表示包括标志符数据表示和数据描述符两类。

数据描述符和标志符的差别在于标志符是和每个数据相连的,合存在一个存储单元中,描述单个数据的类型特征;数据描述符则是与数据分开存放,用于描述所要访问的数据是整块的还是单个的,访问该数据块或数据元素所要的地址以及其他信息等。

前3位为“000”,表示该字为数据;前3位为“101”,表示该字为数据描述符。

阶码部分可用原码、补码或增码表示。

所谓规格化正尾数,就是正尾数小数点后的第1个r^m进制数位不是0的数。

减少运算中的精度损失关键是要处理好运算中尾数超出字长的部分,使之精度损失最小。

处理浮点数尾数下溢的集中处理方法:截断法、舍入法、恒置“1”法、查表舍入法。(1)

可表现浮点数规格化数应当是可表示的个数与可表示尾数的个数的乘积。(1)

多数计算机都将主存、寄存器、堆栈分类编址,分别有面向主存、面向寄存器、面向堆栈的寻址方式。面向主存的寻址主要访问主存少量访问寄存器。面向寄存器的寻址主要访问寄存器,少量访问主存和堆栈。面向堆栈的寻址主要访问堆栈,少量访问主存或寄存器。

程序在主存中的定位技术:静态再定位、动态再定位、虚实地址映像表。

在目的程序装入主存时,由装入程序用软件方法把目的程序的逻辑地址变换成物理地址,程序执行时,物理地址不再改变,称这种定位方式为静态再定位

在执行每条指令时才形成访存物理地址的方法称为动态再定位

指令系统是指程序设计者看计算机的主要属性,是软、硬件的主要界面,它在很大程度上决定了计算机具有的基本功能。

指令系统的设计包括指令功能指令格式的设计。

指令类型一般分非特权型和特权型两类。非特权型指令只供应用程序员使用,也可以供系统程序员使用。非特权型指令包括:算术逻辑运算,数据传送,浮点运算,字符串,十进制运算,控制转移及系统控制等子类特权型指令只供系统程序员使用,用户无权使用,用户只有通过访管指令调用操作系统,再由操作系统执行特权指令。

编译程序设计者要求指令系统应具有:规整性、对称性、独立性和全能型、正交性、可组合性、可扩充性。系统结构设计者还希望:指令码密度适中、兼容性、适应性。

指令系统的设计应能同时协调兼顾编译程序设计者系统结构设计者两者的要求。

从指令的格式来看,指令是由操作码地址码两部分组成的。(1)

指令系统的改进是以不删改原有指令系统为前提的,通过增加少量强功能新指令代替常用指令串。

访存地址由段号段内地址两部分组成。

在机器指令系统的设计、发展和改进上有复杂指令系统计算机(CISC)、精简指令系统计算机(RISC)两种不同的途径和方向。(1)

如何进一步增强原有指令的功能以及设置为复杂的新指令以取代原先由软件子程序完成的功能,实现软件功能的硬化。按此方向发展,机器指令系统日益庞大和复杂。这种途径设计为复杂指令系统计算机(CISC)

如何通过减少指令种数和简化指令功能来降低硬件设计的复杂度,提高指令的执行速度。这种途径为:精简指令系统计算机(RISC)

RISC技术好处有:简化指令系统设计、提高计算机的执行速度和效率、降低设计成本、可直接支持高级语言的实现,简化编译程序的设计。

RISC不足有:由于指令少使复杂功能需要多条指令才能完成,加重汇编语言程序设计的负担、对浮点运算的执行和虚拟存储器的支持虽有加强但仍有不足、RISC计算机编译程序比CISC难写

对存储系统的基本要求是大容量、高速度、低价格

能并行读出多个CPU的单体多字和多体单字、多体多字的交叉访问主存系统被称为并行主存系统。(2)

CPU中止正在执行的程序,转去处理随机提出的请求,待处理完后,再回到原先被打断的程序继续恢复执行的过程称为中断。

中断可分为内部中断、外部中断、软件中断三类。

程序性中断是包括指令和数据的格式错、程序执行中出现异常(非法指令、目态下使用管态指令、主存访问方式保护、寻址超过主存容量、各种溢出、除数为0、有效位为0等)以及程序的事件记录、监督程序对事件的检测引起的中断等。

外部中断来自计算机外部,它包括各种定时器中断、外部信号中断及中断键中断。

中断系统的功能包括中断请求的保存和清除、优先级的确定、中断断点及现场的保护、对中断请求的分析和处理以及中断返回等。主要是要有高的中断响应速度,即从发出中断请求到进入中断处理程序的中断响应时间要短。

总线按在系统中的位置分芯片级、板级和系统级。

总线按用法可分为专用和非专用

总线传输方向可以有单向传输和双向传输两种。(1)

信息在总线上的传送方法基本上可分为同步和异步两种。

总线控制的优先次序有串行链接、定时查询和独立请求。(1)

I/O系统包括输入/输出设备、设备控制器及与输入/输出操作有关的软、硬件

在高性能多用户计算机系统中,用户程序输入/输出应用用户向系统发出输入/输出请求,经操作系统来调度分配设备,并进行具体的输入输出处理。(1)

输入/输出设备分外存和传输设备两大类。

输入/输出设备根据通道数据传送期中信息传送方式的不同分为:字节多路通道、数组多路通道、选择通道三类。(2)

虚拟存储器的存储管理方式:段式、页式、段页式。(1)

命中率是评价存储性能的重要指标。

Cache将主存地址变换成Cache地址的方式:全相联联映、直接映像、组相联映像。(1)

解决中央处理机写Cache使主存内容跟不上Cache对应内容变化造成不一致的关键问题是选择好更新主存内容的算法,一般有:写回法、写直达法。(1)

解释一条机器指令的微操作可归并成:取指令、分析和执行

单功能流水线只能实现单一功能的流水,如只能实现浮点加减的流水线。

多功能流水线指的同一流水线的各个段之间可以有多种不同的连接方式,以实现多种不同的运算或功能。

标量流水处理器的性能主要是吞吐率,加速比,效率

吞吐率是流水线单位时间里能流出的任务数或结果数

流水线单位时间能流出的任务数或结果数称为吞吐率,流水线中设备实际使用时间占整个运行时间的比值称为效率。(1)

流水线的效率是指流水线中设备的实际使用时间占整个运行时间之比,也称流水线设备的时间利用率。

按多功能流水线的各功能段能否允许同时用于多个不同功能连接,可将流水线分为静态流水线和动态流水线。(1)

构成计算机系统的多个处理机之间的流水称为系统级流水,处理机的各部件之间的流水则称为处理机级流水,部件内部的各个处理子部件之间的流水称为部件级流水。(2)

从流水线中各个功能段之间是否有反馈回路的角度,可以把流水线分为线性流水线和非线性流水线。(1)

超长指令字结构是将水平型微码和超标量处理两者相结合。

超标量超流水线处理机是超标量流水线和超流水线处理机的结合。(1)

一般可采取让多个流水线功能部件并行,流水线链接,加快条件语句和稀疏矩阵处理,加快向量的规约操作等方法来提高向量流水处理的性能。

多处理机是指两台以上的处理机,共享I/O子系统,机间经共享主存或高速通信网络通信,在统一操作系统控制下,协同求解大而复杂问题的计算机系统。

多处理机有紧耦合和松耦合两种不同的构形。

依据结构和应用母的不同,多处理机可分为同构性多处理机异构形多处理机分布型多处理机。(1)

松耦合多处理机每台处理机都有一个容量较大的局部存储器,用于存储经常用的指令和数据,以减少紧耦合系统中存在的访主存冲突。(1)

并行算法是指可同时执行的多个进程的集合,各进程可互相作用、协调和并发操作。

按运算基本对象,并行算法可分为数值型非数值型两类。(1)

并行程序设计语言的基本要求是:能使程序员在其程序中灵活、方便地表示出各类并行性,能在各种并行/向量计算机系统中高效实现。

并行进程的特点是这些进程在时间上重叠执行,一个进程未结束另一个进程已开始。

数据驱动计算的操作是按输入数据的可用性决定的次序进行,需求驱动计算的操作则按数据需求所决定的次序进行。(1)

一个复杂的大程序可以分解成多个在逻辑上相当独立的模块,这些模块可以是主程序子程序过程也可以是数据块。(1)

数据流计算机存在的问题:(1)如果题目本身数据相关性很强,可并行成分不多时效率反而更慢。(2)给数据建立、识别、处理标记需要花费较多的辅助开销和存储空间。(3)计算机不保存数组,处理大型数组会造成存储空间浪费和增加流量开销。(4)数据流语言的变量代表数值,而不是存储单元位置,使程序员无法控制存储分配。(5)计算机互联网络设计困难,输入/输出系统不够完善。(6)计算机没有程序计数器,给诊断和维护带来困难。

从计算机执行程序的并行性看,有低到高的并行性等级可分为指令内部指令之间任务或进程之间作业或程序之间四级。

按静态使用频度改进指令系统着眼于减少目标程序所占用的识别,按动态使用频度改进指令系统着眼于减少目标程序的引用。(1)

程序状态字对应用程序员是透明的,对系统程序员是不透明的。(1)

虚拟存储器的页式管理是把主存空间程序空间机械等分成固定大小的页,按页顺序编号。(1)

流水线按处理的级别可分为部件级、处理机级、系统级。(1)

任务在流水线中流动顺序的安排和控制有顺序流动方式和异步流动方式。(1)

为了高速有效地处理向量数据,分布式存储器阵列处理机要求能把数据合理地分配到各个处理单元的局部存储器中。(1)

尾数采用什么进制会影响到数的可表示范围、精度及数在数轴上分布的离散程度。(1)

数据表示指的是能由计算机硬件识别和引用的数据类型进行操作的指令运算部件。(1)

在主存—辅存存储层次结构中,从CPU上看,速度接近于主存,容量是辅存的。(1)

细粒度并行算法一般指向量或循环级的并行。(1)

数据驱动的数据流方式中,数据令牌是一种表示某一操作数参数已准备就绪的标志。(1)

页数虚拟存储器中的CPU要用到的指令或数据不在主存时会发生页面失效。(1)

流水处理机"先写后读"相关的解决方法包括推后后续指令对相关单元的读设置相关直接通路。(1)

与阵列处理机相比,流水线处理机利用的是时间重叠方式而不是资源重复方式的并行技术。(1)

计算机仿真是用微程序解释,其解释程序存储于控制寄存器中。(1)

选择通道适合连接多台高优先级的高速设备,此时的通道“数据宽度”为可变长块。(1)

CRAY-1向量处理机有一个显著特点是只要不出现功能部件冲突源寄存器冲突,均可使用数据相关的向量指令能在大部分时间并行执行。(2)

任务粒度的大小会影响多处理机的性能,对于处理机之间通信较少的应用程序宜用细粒度处理,而要求冗长的计算宜用粗粒度处理。(1)

根据机器内部对函数表达式所用不同的存储方式划分,归约机的规约方式可以分为串规约和图规约两类。(1)

当Cache块失效,将主存块装入Cache又出现Cache冲突时,Cache存储器采用的替换算法有先进先出算法(FIFO),近期最少使用算法(LRU)。(1)

中断响应次序是用排队器硬件实现,中断处理次数可以通过设置中断屏蔽等级寄存器的值加以改变。(1)

交换开关的连接方式包括直连、交换、上播、下播。(1)

标量流水线处理机解决全局相关问题的方法包括猜测法、加快和提前形成条件码、延迟转移和加快短循环程序的处理。(1)

对称多处理机的各个处理器的地位是均等的,可以同等地访问共享存储器、I/O设备和运行操作系统。(1)

超标量处理机是利用资源重复,设置多个执行部件寄存器堆端口,而超流水线处理机则是侧重开发时间并行性,在公共的硬件上采用较短的时钟周期来提高速度。(1)

多级立方体网络交换开关的控制方式主要有级控制、单元控制和部分级控制。(1)

阵列处理机的构形主要有采用分布式存储器阵列构形和采用集中式共享存储器阵列构形。(1)

组相联映像指的是各组之间是直接映像,而组内各块之间是全相联映像。(1)

根据对数据令牌的处理方式不同,数据流计算机可划分为静态和动态两种类型。(1)

程序访问的局部性包括时间上和空间上的两个局部性。(1)

在SIMD系统的互联网络中的设计目标中,为了降低成本,要求结构不要过分复杂;为满足算法和应用的需求要求互连要灵活。(1)

多处理机操作系统有3种类型:主从型、各自独立型、浮动型。(1)

传统的Von Neuman型计算机采用控制驱动方式;而非Von Neuman型归约机则基于需求驱动方式。