计算机系统结构 复习笔记

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第一章概论本章重点:计算机系统的层次结构、计算机系统结构的定义、计算机系统的设计思路、系统结构并行性开发的方法和计算机系统的分类。本章难点:透明性分析。复习建议:本章在历年考试中,为必考的章节,但一般考察基本概念和基本知识;从题型来讲主要为单项选择题和填空题。建议学员在复习时注意基本概念的理解和掌握。第一节计算机系统的多级层次结构一、计算机系统的层次(1)从使用语言的角度,计算机系统可以被看成是按功能划分的多层机器级所组成的层次结构。层次结构由高到低依次为应用语言机器级、高级语言机器级、汇编语言机器级、操作系统机器级、传统机器语言机器级和微程序机器级,如图所示。(2)对各级机器级的理解对每一级编程的程序员来说,只要熟悉和遵守该级语言的使用规定,所编写的程序就能在此机器上运行并得到结果,而不用考虑该机器级是如何实现的。机器:能存储和执行相应语言程序的算法和数据结构的集合体。(3)各级机器的实现技术各级机器的实现主要采用翻译或解释技术来实现,或者两者结合。多级机器构成的层次结构推动了计算机系统结构的发展。第二节计算机系统结构、计算机组成和计算机实现一、计算机系统结构的定义★系统结构是对计算机系统中的各级界面的定义及其上下的功能分配。在多级的层级结构中,每层每级都有自己的系统结构。不同机器级的程序员所看到的计算机属性是不同的,这就是计算机系统不同层次的体现。系统结构就是要研究对于某级,哪些属性应透明,哪些不应透明。透明,即如果客观存在的事物或属性从某个角度看不到,则称对它是透明的。★计算机系统结构也称为计算机系统的体系结构(ComputerArchitecture),它指的是层次结构中传统机器级的系统结构,其界面之上的功能包括操作系统级、汇编语言级、高级语言级和应用语言级中所有软件的功能。界面之下的功能包括所有硬件和固件的功能。计算机系统结构是软件和硬件的交界面。就目前的通用机来说,计算机系统结构的属性应包括:★l硬件能直接识别和处理的数据类型和格式等的数据表示;l最小可寻址单位、寻址种类、地址计算等的寻址方式;l通用/专用寄存器的设置、数量、字长、使用约定等的寄存器组织;l二进制或汇编级指令的操作类型、格式、排序方式、控制机构等的指令系统;l主存的最小编址单位、编址方式、容量、最大可编址空间等的存贮系统组织l中断的分类与分级、中断处理程序功能及入口地址等的中断机构;l系统机器级的管态和用户态的定义和切换;l输入输出设备的连接、使用方式、流量、操作结束、出错指示等的机器级I/O结构;l系统各部分的信息保护方式和保护机构;【例题】下列对应用程序员不透明的是()(2012年单选题)A.标志符数据表示中的标志符B.输入输出系统硬件的功能C.虚拟地址到主存实地址的变换D.“执行”指令【答案】B【解析】对应用程序员来说只需要知道输入输出系统硬件的功能,就能进行应用系统的开发,而标志符、虚地址与实地址如何变换、“执行”指令均属于底层机器级所要确定的问题,对其是透明的。所以B选项正确。二、计算机组成的定义★计算机组成(ComputerOrganization)指的是计算机系统结构的逻辑实现,包括机器级内的数据流和控制流的组成以及逻辑设计等。它着眼于机器级内各事件的排序方式与控制机构、各部件的功能及各部件间的联系。计算机组成设计要解决的问题是在所希望达到的性能和价格下,怎样最佳、最合理地把各种设备和部件组织成计算机,以实现所确定的系统结构。【例题】主存的逻辑结构属于()(2012年单选题)A.计算机实现B.计算机组成C.计算机系统结构D.计算机应用【答案】B【解析】根据计算机系统结构的属性,主存的容量、编址方式、容量等属于计算机系统结构,为达到性能价格要求,主存速度为多少或者逻辑结构是否采用多体交叉属于计算机组成。所以B选项正确。三、计算机实现计算机实现指的是计算机组成的物理实现。包括处理机、主存等部件的物理结构,器件的集成度和速度,器件、模块、插件、底板的划分等。四、计算机系统结构、组成和实现的相互关系和影响(1)相同系统结构,可以有不同的组成;(2)一种组成可以有多种不同的实现方法;(3)采用不同的系统结构会使可以采用的组成技术产生差异;(4)组成也会影响结构。第三节计算机系统的软、硬件取舍及定量设计原理一、软、硬取舍的基本原则软、硬件的功能分配时计算机系统结构的主要任务,而软件和硬件在逻辑功能上又是等效的,只是它们在性能、价格、实现的难易程度上是不同的。原则1:在现有硬、器件的条件下,系统要有高的性能价格比。原则2:要考虑到准备采用和可能采用的组成技术,使它尽可能不要过多或不合理地限制各种组成、实现技术的采用。原则3:不能仅从“硬”的角度去考虑如何便于应用组成技术的成果和发挥器件技术的进展,还应从“软”的角度把为编译和操作系统的实现,以至高级语言程序的设计提供更多更好的硬件支持放在首位。(1)一般来说,提高硬件功能的比例可提高解题速度,减少程序所需的存储空间,但会增加硬件成本,降低硬件利用率和计算机系统的灵活性及适应性。(2)提高软件功能的比例可降低硬件成本,提高系统的灵活性、适应性,但解题速度会下降,软件设计费用和所需的存储量将增加。二、计算机系统的定量设计原理(1)哈夫曼(Huffman)压缩原理尽可能加速处理高概率的事件远比加速处理概率低的事件对性能的提高要显著。(2)Amdahl定律Amdahl定律定义了一台计算机系统采用某种改进措施所取得的加速比。Amdahl定律表明了性能提高量的递减规律,如果只对系统中的一部分进行性能改进,改进得越多,整体性能提高的增量却越小。也就是说,提高系统的整体性能应是各部分性能均能平衡地得到提高,不能只是其中某个功能部件性能的提高。(3)程序访问的局部性定律时间上的局限性是指现在正使用的信息可能不久还要使用,因为程序存在着循环;空间上的局限性是指最近的将来要用的信息很可能与现在正在使用的信息在程序位置上是邻近的,因为指令通常是顺序存放、顺序执行的。三、计算机系统设计的主要任务和方法(1)计算机系统设计的主要任务主要任务包括系统结构、组成和实现的设计,包括软硬件功能分配、计算机指令系统设计、功能组织、逻辑设计、集成电路设计等多方面的问题。(2)计算机系统的设计方法★“自上而下”的设计:先考虑如何满足应用要求。“自下而上”的设计:不考虑应用要求,只根据目前能用的器件来设计上层的机器级。“从中间向两边”的设计:这是目前通用机一般采用的方法。它可以克服“自上而下”和“自下而上”两种设计方法中,软、硬件设计分离和脱节的致命缺点。第四节软件、应用、器件的发展对系统结构的影响一、软件发展对系统结构的影响由于目前已积累了大量成熟的软件,加上软件生产率又很低,软件的排错比编写难,所以除非特殊情况,程序设计者一般不愿意在短时间里按新的系统结构、新的指令系统去重新设计软件。为此,在系统结构设计时,提出应在新的系统结构上解决好软件的可移植性问题。软件的可移植性(Portability)指的是软件不修改或只经少量修改就可由一台机器移到另一台机器上运行,同一软件可应用于不同的环境。实现软件移植的技术主要有统一高级语言、采用系列机、模拟和仿真。【例题】实现软件移植的基本技术有______、采用系列机、______。(2012年填空题)【答案】统一高级语言;模拟和仿真【解析】书本的原文P38-41。二、应用的发展对系统结构的影响计算机工业在处理性能和价格的关系上大致是两种趋势:维持价格,提高性能;维持性能,降低价格。从系统结构的观点看,各型计算机性能随时间的推移,其实就是在低档(型)机上引用甚至照搬高档(型)机的结构和组成。三、器件的发展对系统结构的影响器件的发展加速了结构的“下移”。大型机的各种数据表示、指令系统、操作系统很快出现在小、微型机上。器件的发展加速了大规模、高性能并行处理机MPP等新系统结构的发展。第五节系统结构中的并行性开发及计算机系统的分类一、并行性的概念与开发(1)并行性的含义★并行性:(parallelism)是指在同一时刻或是同一时间间隔内完成两种或两种以上性质相同或不相同的工作。实际上,并行性包括同时性与并发性。同时性:(simultaneity)是指两个或多个事件在同一时刻发生。并发性:(concurrency)是指两个或多个事件在同一时间间隔内发生的并行性。(2)并行的级别从计算机系统中执行程序的角度来看,并行性等级从低到高可以分为四级。它们分别是:指令内部、指令之间、任务或进程之间、作业或程序之间;从计算机系统中处理数据的并行性来看,并行性等级从低到高可以分为:位串字串、位并字串、位片串字并、全并行;并行性是贯穿于计算机信息加工的各个步骤和阶段的,从这个角度来看,并行性等级又可分为:存贮器操作并行、处理器操作步骤并行、处理器操作并行、指令任务作业并行。(3)并行的途径★实现并行性的途径有时间重叠、资源重复和资源共享等。时间重叠(time-interleaving):在并行性概念中引入时间因素,即多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。资源重复(resource-replication):在并行性概念中引入空间因素,通过重复设置硬件资源,可以大幅度提高并行处理能力。资源共享(ResourceSharing):它是指多个任务按一定时间顺序轮流使用同一套硬件设备,这样既降低了成本,又提高了计算机设备的利用率。时间重叠是实现并行性中的并发性。资源重复是实现并行性中的同时性。【例题】提高计算机系统并行性的主要技术途径有_______________、_______________和资源共享。(2012年填空题)【答案】时间重叠;资源重复【解析】教材的原文P48。二、计算机系统的分类(1)Flynn分类法★从并行性的角度对计算机系统分类的方法有多种,其中经典的分类方法是M.J.Flynn教授于1966年美国的提出的。先给出如下定义:指令流(instructionstream)——机器执行的指令序列。数据流(datastream)——由指令流调用的数据序列,包括输入数据和中间结果。多倍性(multiplicity)——在系统最受限制的元件上同时处于同一执行阶段的指令或数据的最大可能个数。按照指令流和数据流两种不同的组合,把计算机系统的结构分为以下四类:单指令流单数据流SISD(SingleInstructionStreamSingleDatastream)单指令流多数据流SIMD(SingleInstructionStreamMultipleDatastream)多指令流单数据流MISD(MultipleInstructionStreamSingleDatastream)多指令流多数据流MIMD(MultipleInstructionStreamMultipleDatastream)【例题】按弗林(Flynn)提出的计算机系统分类方法,并行处理机属于______系统。(2012年填空题)【答案】SIMD【解析】并行处理机又叫SIMD计算机。它是单一控制部件控制下的多个处理单元构成的阵列,所以又称为阵列处理机。第二章数据表示、寻址方式与指令系统本章重点:浮点数尾数基值的选择和下溢处理,自定义数据表示,再定位技术,操作码优化,指令字格式化,RISC思想及基本技术。本章难点:浮点数尾数基值选择,指令字格式的优化设计。第一节数据表示一、数据表示与数据结构(1)数据表示指的是能由机器硬件直接识别和引用的数据类型。例如,当机器设置有定点加、减、乘、除、移位、比较等一系列定点运算指令和相应的运算硬件,可以直接对定点数进行各种处理时,机器就有了定点数据表示。当机器设置有逻辑加、逻辑乘、按位相加、逻辑移位等一系列逻辑运算指令和相应的逻辑运算硬件,可以直接对逻辑数进行各种处理,机器就有了逻辑数据表示。若机器设置有浮点运算指令(如浮点加、减、乘、除、比较、存、取等)和相应的运算硬件,可以直接对浮点数进行各种处理,机器就有了浮点数据表示(2)串、队、栈、向量、阵列、链表

1 / 60
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功