收藏 分销(赏)

计算机体系结构教材全套课件教学教程整本书电子教案全书教案课件汇编.ppt

上传人:天**** 文档编号:9437019 上传时间:2025-03-26 格式:PPT 页数:607 大小:9.23MB
下载 相关 举报
计算机体系结构教材全套课件教学教程整本书电子教案全书教案课件汇编.ppt_第1页
第1页 / 共607页
计算机体系结构教材全套课件教学教程整本书电子教案全书教案课件汇编.ppt_第2页
第2页 / 共607页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第一节 计算机体系结构的基本概念,第二节 计算机体系结构的演变,第三节 影响计算机体系结构因素,第四节 计算机体系结构中的并行性及其发展,第五节 计算机体系结构设计的基础,第六节 计算机系统的评价,第一节 计算机体系结构的基本概念,一、,提高计算机硬件性能的因素,1.,器件换代是计算机换代的基本标志,以器件的发展为标志,计算机系统经历了四代。,器件技术为计算机的发展提供了必不可少的物质基础,是推动计算机发展的基本因素。,2.,体系结构是现代计算机系统分类的基本依据,计算机的分类方法很多,普遍认可的是按性能与价格划分,由此可分为巨型机、大型机、中型机、小型机和微型机五大类。但该分类方法已不能正确地反映当前计算机的性能、应用和发展趋势等方面的现状。,第一节 计算机体系结构的基本概念,主要原因有:,一是相互之间的界限越来越模糊;,二是某一类机器的归属是动态变化的;,三是现代计算机的硬件处理核心基本相同;,四是该分类法没有真正体现计算机的本质特征。,第一节 计算机体系结构的基本概念,主要特征 嵌入式计算机 桌面计算机 服务器 超级计算机,应用范围 智能仪器、测控装置 面向个人 大规模信息处理 科学计算,对应关系 微型机应用微型化 小型机、微型机 大型机、中型机 巨型机,微处理器数目,1,2,个,1,4,个 几个几十个 几十个以上,系统价格 差异很大,500,5000,美元,5000,500,万,1,千万,1,亿,微处理器价格,0.01,100,美元,50,500 200,10000 200,10000,性能通用、,性价比、,图形等多媒体,性能专用、,价格、实时性、,可靠性,设计关键,设吞吐量、可,靠性、可扩性、,可测性计关键,性能专用、,吞吐量、,浮点计算,第一节 计算机体系结构的基本概念,二、广义计算机语言与虚拟计算机,1.,什么是计算机系统,一是指狭义的计算机系统。认为计算机系统是由运算器、控,制器、存储器、输入设备、输出设备五个部件组成,。,I/O,CPU,M/S,模式。,二是指本义的计算机系统。认为计算机系统是由硬件和软件,两部分组成,。,S,H,模式。,三是指广义的计算机系统。认为计算机系统是由人员、数,据、设备、程序、规程等五部分组成,只有把它们有机地结合在,一起才能完成各种任务,。,广义模式。,第一节 计算机体系结构的基本概念,2.,广义的计算机语言,计算机系统的根本功能在于信息处理,任何一个信息处理过程都是对某一层面而言。因此,,把描述控制流程的、有一定规则的字符集合称之为计算机语言。,而控制流程实现有三种方法:,全硬件的方法。,硬件和软件相结合的方法。,全软件的方法。,可见,计算机语言并不专属软件范畴,而是分属于计算机系统的各个层面,且有不同的作用,这就是计算机语言的广义性。,3.,虚拟计算机,计算机系统只对某一层次的观察者而存在,通过该层次的广义语言来体现它的功能,并为广义语言提供翻译手段,作用于信息处理和控制对象上,并从对象上获得必要的状态信息,这就是虚拟计算机。简言之,,由软件实现的机器即为虚拟计算机。,第一节 计算机体系结构的基本概念,观察者,广义语言,编译或解释器,硬件电路,状态信息,控制信息,虚拟计算机的组成,4.,透明性,虚拟计算机仅对这一层次的观察者而存在的。从某一,层次的观察者来看,只是通过该层次的语言来了解和使用,机器,不必关心其内层的那些机器是如何工作和如何实现,各自功能的。这一概念称为透明性,,即所谓透明性是指在,计算机技术中,一种本来存在的事物或原性,但从某种角,度看似乎不存在。,它是基于虚拟计算机的观点而形成的一,个概念。,第一节 计算机体系结构的基本概念,三、计算机体系结构及其范畴,1.,什么是计算机体系结构,计算机体系结构是,G.M.Amdahl,等人在,1964,年提出的。他,们提出计算机体系结构是程序员看到的计算机属性,然而不同,级程序员所看到的计算机属性显然不同。,Amdahl,等人提出的,程序员是指机器语言程序员,计算机属性是硬件的概念结构及,其功能特性,是计算机硬件的外特性。因此完整的计算机体系,结构的定义是:,机器语言程序员所必须了解的机器概念性结构和功能特性。,第一节 计算机体系结构的基本概念,2.,计算机体系结构范畴,计算机体系结构作为一门学科,主要是研究软件与硬件功能分配和对软件、硬件界面的确定,即哪些功能由软件完成,哪些功能由硬件完成,以及如何最佳最合理地实现分配给硬件的功能。它所包括的内容一般有:,数据表示,寻址方式,寄存器组织,指令系统,存储系统,中断机构,机器工作状态(如管态、目态等)的定义和切换,机器级的,I/O,结构,信息保护,第一节 计算机体系结构的基本概念,第一节 计算机体系结构的基本概念,四、计算机组成与实现,1.,计算机组成,什么是计算机组成。,计算机组成是计算机体系结构的逻辑实现,包括机器内部的,数据流和控制流的组成以及逻辑设计等。,计算机逻辑设计的目的及其内容。,计算机逻辑设计是按所希望达到的性能价格比,最佳、,最合,理地把各种设备和部件组成计算机,以实现所确定的计算机,体系,结构。计算机组成的设计内容对传统机器程序员一般是透明的。,逻辑设计的内容主要包括:,数据通路宽度。,操作对功能部件的共享程度。,专用功能部件的设置。,功能部件的并行性。,缓冲和排队技术的。,控制部件组成方式。,可靠性技术。,性能优化技术。,第一节 计算机体系结构的基本概念,2,计算机实现,计算机实现是指计算机组成的物理实现。,主要内容有:,(,1,)处理机、主存储器等部件的物理结构。,(,2,)器件的物理性能,如电参数、传输速度、动态范围、,集成度等。,(,3,)器件、模块、插件和底板等的划分与连接。,(,4,)专用器件的设计、微组装技术。,(,5,)信号传输、制作、电源、冷却和装配等技术以及有,关的制造技术和工艺等。,第一节 计算机体系结构的基本概念,3,计算机体系结构、组成与实现间的关系,计算机体系结构、计算机组成和实现是三个不同的概念。,计算机体系结构、计算机组成和实现相互影响。,计算机体系结构、组成和实现,的界限模糊,。,第一节 计算机体系结构的基本概念,第一节 计算机体系结构的基本概念,四、计算机体系结构的特性,1.,计算机体系结构的层次性,计算机系统是硬件和软件的统一体,直接反映结构上的,层次性。如果依据虚拟计算机的观点来看,不同层次的观察,者看到的计算机系统无论功能还是结构都不相同,即就有如,图所示计算机系统的层次结构。,机器指令时序,微程序控制 寄存器传送门,指令系统,CPU,机器语言程序,键盘命令和,OS,原语,操作系统 运行程序,汇编语言,汇编程序 运行程序,高级语言,编译解释 运行程序,应用语言,应用程序 信息处理系统,硬操作时序,硬联逻辑 逻辑线路内核,M0,硬联逻辑,问题规范,数学模型 系统配置,M7,系统分析,M6,应用程序机器,M5,高级语言机器,M4,汇编语言机器,M3,操作系统机器,M2,机器语言机器,M1,微程序控制,系统分析员,用户,高级语言程序员,低级语言程序员,操作员,虚拟机,逻辑设计员 物理机,机器语言程序员,硬件设计员,问题分析,应用软件,系统软件,计算机组成与结构,第一节 计算机体系结构的基本概念,2.,计算机体系结构的等级性,计算机系统分为巨型、中型、小型、微型等若干等级。一台计算机体系结构的等级将随时间而下移。各型机器的性能、价格随时间变化的趋势大致可以用图说明。由图可见,,各型机器所具备的性能随时间是在动态地下移的,但价格却在相当长一段时间内基本不变。,第一节 计算机体系结构的基本概念,巨型机,大型机,中型机,小型机,微型机,价格,虚线为等性能线,t-3 t-2 t-1 t t+1,年代,图,1.3,计算机体系结构等级与性能、价格的关系,3.,计算机体系结构的系列性,系列机是指由同一个厂家生产的体系结构相同、组成和实现,不同的一系列不同型号的机器。简言之,体系结构相同的机器即,为系列机。而把不同公司厂家生产的具有相同系统结构的计算机,称为兼容机。,系列机软件兼容是指同一个软件,(,目标程序,),可以不加修改地,运行于系统结构相同的各档次的机器,而且所得结果一致。软件,兼容有向上兼容与向下兼容和向前兼容与向后兼容两种类型。,对系列机而言,必须保证做到软件向后兼容,力争做到软件,向上兼容。,第一节 计算机体系结构的基本概念,第一节 计算机体系结构的基本概念,机器档次 高,向后兼容,向前兼容,向下兼容,向上兼容,当前机器,4.,计算机系统结构的模拟仿真性,模拟是指用机器语言程序解释实现程序移植的方法,,被模拟,的,B,机称为虚拟机,,A,机称为宿主机。,用微程序直接解释另一种机器的指令系统称为仿真,。,仿真与模拟的主要区别在于解释所用的语言。仿真是用微程,序解释,其解释程序在微程序存储器中;模拟是用机器语言解释,,其解释程序在主存储器中。另外仿真的速度要比模拟快,但实现,难度要大。,第一节 计算机体系结构的基本概念,第一节 计算机体系结构的基本概念,B,虚拟机,A,宿主机,M4,以上的应用级,M5,高级语言级,M2,机器语言级,M4,汇编语言级,M1,微程序级,M2,机器语言级,M3 OS,级,M3 OS,级,图,1-5,在,A,机器语言级上实现,B,机器指令系统,第二节 计算机体系结构的演变,一,、,计算机体系结构的基本模型,1.,计算机工作的原理,存储程序、顺序控制原理的基本点是指令驱动,即程,序由指令组成,并和数据一起存放在计算机存储器中。机,器一经启动,就能按照程序指定的逻辑顺序把指令从存储,器中读出来逐条执行,自动完成由程序所描述的处理工作。,2,计算机体系结构的框架,运算器,存储器,控制器,输入设备,输出设备,第二节 计算机体系结构的演变,典型的冯,诺依曼型计算机的硬件结构框架,第二节 计算机体系结构的演变,以存储器为中心的计算机硬件结构框架,存储器,控制器,运算器,输入设备,输出设备,I/O,主机,中央处理器,CPU,算术逻辑运算,单元,ALU,控制单元,CU,主存储器,M.M,I/O,接口,I/O,设备,第二节 计算机体系结构的演变,现代计算机的基本结构框架,第二节 计算机体系结构的演变,3.,冯,诺依曼型计算机的特点,机器以运算器为中心。,由控制器集中控制。,采用存储程序的思想。,指令和数据在存贮器中同等对待均采用二进制编码。,存储器是一个顺序、线性编址的一维空间,每个存储单,元的二进制的位数是固定的,地址是唯一定义的。,指令为低级机器语言(二进制),驱动机器进行操作。,软件与硬件完全分开。,二、计算机体系结构存在的主要问题及其改进,1.,冯,诺依曼型结构存在的主要问题,由于机器以运算器为中心,使得低速的输入,/,输出和高速的运算不得不,相互等待,串行进行。,由于采用控制器集中控制使控制器的负担过重,从而严重影响了机器,速度和设备利用率的提高。,由于采用存储程序控制的思想,当前后指令需要的数据相关时,顺序,执行是必须的。但实际程序中的许多前后指令的数据互不相关,因此,单纯的顺序执行指令就难以最大限度地发挥系统的并行处理能力。,由于指令和数据混存于同一存储器中,在程序执行过程中,指令可能,被当作数据而被修改。不利于程序调试,、,再入性,、,递归调用,不利于,指令和数据并行存取,,,不利于采用重叠方式来提高速度,第二节 计算机体系结构的演变,由于存贮单元是按顺序、线性编址的,一维线性空间的表示与栈、树、图、,多维数组等非线性、多维、离散的数据结构相矛盾。,由于存贮单元是按一级直接寻址访问,导致存贮空间极为有限,外围译码,电路又极为复杂。,操作数并不表示它本身是何种数据类型,而是由操作码指出。因此每增加,一种操作数类型,就要增加一组处理这种数据类型的指令。这样,一方面,不仅使指令系统日益庞大复杂,另一方面由于高级语言中操作符与数据类,型无关。使得机器指令与高级语言之间存在的语义差距过去只好通过编译,程序来弥补,从而加重了编译的负担,增大辅助开销。,软件与硬件截然分开,硬件结构的完全固定,会使得无法更合理地进行软,硬功能分配,难以优化系统结构。当求解的问题和应用要求变化时,会使,性能价格比明显下降。,第二节 计算机体系结构的演变,2.,冯,诺依曼型计算机结构的改进,机器以运算器为中心改为以主存为中心,让系统的输入,/,输出与,CPU,的操作并行,多种输入,/,输出并行。,存储程序顺序控制的思想改为存储程序激发控制的思想。,计算机系统增设许多高级数据表示,使得数据不带类型标志改为自,身带有数据类型标志,增强指令具有对多种数据类型操作的通用性,,简化指令系统,缩小高级语言与机器语言的距离。,强调软硬结合,硬件结构逻辑的可编程性。,依靠知识逻辑推理而不依靠精确的数值运算,从而出现了处理非数,值化信息的智能计算机。,为实现各种特定任务,出现了各种不同的计算机系统。,存储器组成多样化、复杂化。对于指令与数据等同问题,对于存 储,的线性直接寻址的问题,对于存储器带宽问题。,为解决局部存在的问题,而采用了许多技术措施。,第二节 计算机体系结构的演变,第二节 计算机体系结构的演变,3,现代计算机体系结构的主要特点,(,1,)软硬件功能分配更加科学合理。,(,2,)计算过程的并行处理能力强。,(,3,)存储器的组织结构更加适合计算机系统的需要。,(,4,)高性能的微处理器得以实现。,(,5,)多处理机组织结构的计算机占据统治地位。,第二节 计算机体系结构的演变,三、计算机体系结构的演变过程,1,计算机体系结构的生命周期,硬件,系统软件,应用软件,消亡,5,7,年,5,7,年,5,7,年,第二节 计算机体系结构的演变,2,计算机体系结构的演变过程,年 代 器件 体系结构技术 软件技术 典型机器,第一代,(,1945,1954,),电子管、,继电器和,绝缘导线互连,程序控制,I/O,、,定点数据表示,机器语言,和汇编语言,普林斯顿,ISA,ENIAC,IBM701,第二代,(1955,1964,),晶体管、,磁芯和,印刷电路,浮点数据表示、,寻址技术、,中断和,I/O,处理机,UnivacLARC,CDC-1604,IBM7030,高级语言、,编译和批处理,监控程序,第三代,(1965,1974),SSI,和,MSI,、,多层印刷电路,和微程序,IBM360/370,DEC PDP-8,多道程序和,分时操作系,流水线、高速缓存、,先行处理和系列机,第四代,(,1975,1990,),SI,、,VLSI,和,半导体存储器,向量处理、,分布式存储器和,指令级并行技术,并行和,分布处理,Cray-1,IBM3090,DEC VAX9000,可扩展并行,和分布处理,线程级并行技术、,SMP,、,MP,、,MPP,和网络,高性能微处理器,和大规模高蜜度,电路,第五代,(1991,),SGI Cray T3E,IBMxServer,SUN E10000,第三节 影响计算机体系结构的因素,一、影响计算机体系结构的基本因素,1,软件对计算机体系结构的影响,软件是推动计算机体系结构发展的关键因素。,一是操作系统。操作系统与硬件关系最为密切,,,如网络,操,作系统的主要功能是提供计算机之间的通信和,资,源共享,,要,求计算机的体系结构内必须配置通信接口部,件,。,二是语言处理系统。为实现软件的移植,则要求计算机,体系结构具有系列性和模拟仿真性,;,再是统一高级语言,,不仅要求语言标准化,也要求计算机体系结构在处理程序设,计语言上具有相同的属性。,第三节 影响计算机体系结构的因素,2,并行处理技术对计算机体系结构的影响,并行处理技术是推动计算机体系结构发展的关键因素。,实现并行处理的技术不同,就形成了不同的计算机体系,结构,,如,时间重叠的流水线并行处理技术的应用就产生了流,水线计算机,重复设置功能部件的并行处理技术的应用就产,生了阵列计算机,资源共享并行处理技术的应用就产生了多,计算机系统。计算机体系结构从低级向高级发展的过程也就,是并行处理技术不断发展的过程。,第三节 影响计算机体系结构的因素,3,应用对计算机体系结构的影响,应用需求是促使计算机系统结构发展的根本动力。,不同的应用对计算机体系结构的设计提出了不同的要求,,如果现有的计算机不能满足应用要求,则需要设计和采用新,的计算机体系结构。因为对计算机应用来讲,计算效率高低,是一个关键问题。,专用的体系结构的高效率与通用的体系结构的广泛市场,呈,均势,二者相辅相成。,4,器件对计算机系统结构的影响,器件是促使计算机体系结构发展的最活跃的因素。,器件是组成计算机的最基本单元,通常所讲的第几代计算机,则是以器件为划分标准。器件的性能、使用方法改变,影响体系结构及组成设计方法。器件性能,/,价格提高,使新结构、新组成、新技术从理论变为现实,提高计算机体系结构的性能,,,使新结构、新组成下移。,5,价格对计算机体系结构的影响,性能价格比是计算机体系结构的重要参数,。,全面地评价一个计算机体系结构时,既要考虑性能又要考虑价格。,第三节 影响计算机体系结构的因素,第三节 影响计算机体系结构的因素,二、编译技术与计算机体系结构的关系,在,所有软件中,编译程序与计算机体系结构的相互影响最,强,,相互间的影响关系是通过指令系统结构来反映。具备哪些,特性的指令结构可以生成高质量的目标代码,以设计出合理的,指令,集结构;如何才能容易地为指令系统结构编写出相应高效,的编,译器,以充分发挥计算机性能。,第三节 影响计算机体系结构的因素,1,现代编译程序的结构,一是要保证编译的目标代码正确,使所有有效的程序能够,被正确地编译;二是编译出的目标代码在目标机器上的执行速,度要尽可能高,代码的容量要尽可能小;三是编译的速度、对,程序调试的支持以及各种语言之间互操作的可能性等。,高度依赖机器而不依赖语言,依赖关系 过程结构 功能,语言预处理,高级优化,局部与全局优化,代码生成,依赖语言而与机器独立,将语言转换到一般中间形式,较多依赖语言而大部分与机器独立,过程展开和循环变换等,较少依赖语言而开始依赖机器,(如寄存器个数,/,类型),含全局和局部优化、寄存器分配,仔细选择指令,机器相关的优化,第三节 影响计算机体系结构的因素,2,现代编译程序优化转换的类型,高级优化。高级优化是对源始程序进行优化,并将优化转,换结果送到后续的优化扫描中。,局部优化。局部优化是一系列在线性的程序段(也称为基,本块)中进行的优化转换。,全局优化。全局优化是在局部优化的基础上,考虑到各种,分支情况,对循环和分支进行一系列的优化转换。,基于机器的优化。基于机器的优化目的是充分利用机器结,构的某些特点进行代码优化转换。,优化转换类型,优化转换方法,说 明,高级优化:处于或接近源代码级别,与机器独立无关。,过程集成,用过程体代替过程调用语句,局部优化,:,线性代码序列内的优化。,消去公共子表达式,设法找出在同一表达式中出现的公共子表达式,并把第一次公共子表达式计算出的值存放在一个临时变量中,利用该临时变量值消去表达式中的其他相同公共子表达式的计算。,常数传递,将所有被赋值为常数的变量用该常数的值代替。,降低堆栈的高度,对表达式进行重新组织,尽量减少表达式求值时所需的资源。,全局优化(含寄存器分配),:,非线性代码序列的优化,其中寄存器分配是提高实现机器代码速度等方面的核心问题。,消去公共子表达式,和局部优化中的消去公共子表达式优化类似。,拷贝传递,如果变量,A,已经赋值为,X,,则用,X,代替所有地方的,A,。,代码移动,如果循环体中的某段代码在每次循环中均是计算相同的值,则将这段代码移到循环的外部。,消去索引变量,简化,/,消去在循环体中的数组地址计算。,基于机器的优化,:,依赖于机器的特点,降低计算量,如:用加操作和移位操作来代替一个常数的乘操作。,流水线调度,重新组织指令序列以提高流水线性能。,分支偏移的优化,选择能够达到分支目标的最短分支偏移量。,第三节 影响计算机体系结构的因素,第三节 影响计算机体系结构的因素,三算法对计算机系统结构的影响,计算机具有高性能是相对于某一类算法而言,而算法的优,劣是相对,于某一计算机体系结构而言。计算机体系结构设计应,针对某,些应用领域,研究一类算法,(,不是一个算法,),的基础上,,构造出一个,适合该类算法的计算机体系结构。算法设计也应依,据某种计算机体,系结构开展研究,构造出一个适合该类计算机,体系结构的算法。,专用与通用计算机一直是计算机体系结构的,研究的方向和,同一问题的处理算法有许多研究者在设计的主要,原因就在此。,并行算法的优劣直接依赖于并行计算机的体系结构,,,串行,算法构则相对独立。,第三节 影响计算机体系结构的因素,指令流(,Instruction Stream,)是指机器执行的指令序列。,数据流(,Data Stream,)是指根据指令操作要求依次存取数据的序列。,多倍性(,Multiplicity,)是指在系统最受限制的部件上,同时处于该部件执行阶段的指令或数据的最大可能个数。,F,l,y,n,n,分,类,法,|,多,倍,性,分,类,法,一、计算机体系结构的分类,1.Flynn,分类法,多倍性分类法,第三节 影响计算机体系结构的因素,单指令流单数据流,MM,PU,CU,IS,SI DS,单指令流多数据流,CU,PU,n,PU,2,PU,1,MM,n,MM,2,MM,1,IS,SI,DS2,DS3,DS1,第三节 影响计算机体系结构的因素,多指令流单数据流,PU,2,PU,1,CU,n,CU,2,CU,1,PU,N,MM,n,MM,2,MM,1,IS1,IS1,DS1,IS2,IS2,DS2,ISn,ISn,DSn,第三节 影响计算机体系结构的因素,多指令流多数据流,CU,n,CU,2,CU,1,PU,n,PU,2,PU,1,MM,n,MM,2,MM,1,IS1,IS1,DS1,IS2,IS2,DS2,ISn,ISn,DSn,第三节 影响计算机体系结构的因素,2.,冯氏分类法,最大并行度分类法,最大并行度,Pm,是指计算机系统在单位时间内能够处理的,最大的二进制位数。,字串位串,字并位串,字串位并,字并位并,128,64,32,1,字宽(,n,位),位片宽(字),1 32 64,3.Handler,分类法,型号定义法,T(,系统型号,)=,f(k,,,k,,,d,,,d,,,w,,,w,),式中:,k,处理控制器,PCU,的数目;,k,可组成流水线的,PCU,数目;,d,每个,PCU,所控制的,ALU,(或,PE,)数目;,d,可组成流水线的,ALU,数目;,w,ALU,或,PE,的字长;,w,在,ALU,或一个,PE,中的流水段数目。,第三节 影响计算机体系结构的因素,第四节 计算机系统结构中的并行性及其发展,一、并行性与并行处理,1.,并行性及其度量,并行性是指问题中具有可以同时进行运算或操作的特性。,并行性实际上包括同时性和并发性两层含义。同时性指的是,两个或多个事件在同一时刻发生。并发性指的是两个或多个事件,在同一时间间隔内发生。,度量标准主要,4,个,:,指令级并行度:计算机每个时钟周期完成的指令条数,当,ILP,1,时为高度并行,需要特殊的并行处理技术来支持。,线程级并行度:计算机在线程级并行时线程粒度的大小,。,数据级并行度:数据处理的字并数或数据流通路条数。,多机级耦合度:计算机之间或计算机部件之间的数据关联或,功能关联的程度,用于体现进程或作业之间的并行性。,第四节 计算机系统结构中的并行性及其发展,2.,并行处理与并行算法,并行处理是信息处理过程中并行性开发的一种有效形式,,通过发掘解题过程中的并行事件,使并行性达到较高的级别,,进入并行处理领域,提高计算机系统的性能价格比。,并行算法是指实现并行性事件或实现并行处理的算法。,并行性原理就是要以并行算法为基础,通过并行处理技,术实现各个级别上的并行性。,第四节 计算机系统结构中的并行性及其发展,3.,并行计算机及其种类,具有并行处理能力的计算机称为并行计算机。可分为,4,种,实现基本形式可以采用,SISD,、,SIMD,和,MIMD,。,(,1,)流水线计算机:实现部件重叠时间并行,实现形式属于,SISD,。,(,2,)阵列计算机:实现资源重复空间并行,实现形式属于,SIMD,。,(,3,)多处理机:实现资源共享异步并行,实现形式属于,MIMD,。,(,4,)数据流处理机:实现数据组织处理并行,实现形式属于,MIMD,。,第四节 计算机系统结构中的并行性及其发展,二、并行性等级的划分,1.,按执行程序层次划分,指令内部并行。指令内部各操作之间的并行,主要取决于硬件及其组成的设计。,指令之间并行。多条指令并行执行,主要解决和处理指令之间存在的相互关联。,线程之间并行。多个线程并行执行,线程运行过程中只需要少量的资源,开销很小。,任务或进程之间并行。多个任务或程序段并行执行,主要涉及如何进行任务分解。,作业或程序之间并行。多个作业或多道程序的并行执行,关键是硬软件资源的分配,。,第四节 计算机系统结构中的并行性及其发展,2.,按处理数据层次划分,位串字串。只对一个字的一位处理,没有并行性。,位并字串。同时对一个字的全部位进行处理,开始出现并,行性。,位片串字并。同时对许多字的多个位(称多位片)进行处,理,开始进入并行处理领域。,全并行。同时对许多字的全部或部分位组进行处理。,第四节 计算机系统结构中的并行性及其发展,3.,按信息加工步骤划分,存储器操作并行。存储器操作可以采用单体多字、多体单,字或多体多字方式在一个存储周期内访问多个字。,处理器操作步骤并行。处理器操作步骤可以是一条指令的,取指、分析和执行等操作步骤,也可以是如浮点加法的求阶差、,对阶、尾加、舍入和规格化等具体操作的执行步骤。,处理器操作并行。为支持向量或数组运算,可以通过重复设,置大量处理单元,使它们在同一控制器控制下同时按同一条指令,的要求对多个数据进行操作。,线程、任务或作业并行。多个处理机同时对多条指令及其有,关的多个数据组进行处理,构成多指令流多数据流计算机。,1.,时间重叠,(Time,Inteleaving,),第四节 计算机系统结构中的并行性及其发展,引入时间因素,让多个处理过程在时间上错开,轮流重叠使用同一套硬件设备的各部分,以加快硬件使用周期来提高处理速度。,引入空间因素,通过重复设置硬件资源来提高系统可靠性或性能。,2.,资源重复,(Resource Replication),3.,资源共享,(Resource Sharing),资源共享是利用软件的方法让多个用户按一定时间顺序轮流地使,用一套资源,以提高系统资源利用率,也可以相应提高整个系统,的性能。,三、提高计算机系统并行性的技术途径,第四节 计算机系统结构中的并行性及其发展,四、多机系统及其耦合度,1.,多处理机系统与多计算机系统,多机系统是多处理机系统和多计算机系统统的总称。而,多计算机系统是由多台独立的计算机组成的系统,多处理机,系统是由多台处理机组成的单一计算机系统。多计算机系统,和多处理机系统的差别:,一是在操作系统方面,二是在存储器方面,三是在信息交换方面,四是在并行性的级别方面,第四节 计算机系统结构中的并行性及其发展,2.,多机系统的耦合度,耦合度是用来反映多机系统中各机器之间物理连接的紧密,程度和交互作用能力的强弱的概念。多机系统的耦合度可以分,为最低耦合、松散耦合和紧密耦合。,最低耦合,:,没有物理连接 最低耦合系统,松散耦合:,通过通道或通信线路实现互连 松散耦合系统,紧密耦合:,通过总线或高速开关互连 紧密耦合系统,第四节 计算机系统结构中的并行性及其发展,五、多处理机系统,1.,多处理机系统的种类,按组织形式来分,多处理机系统可分为三种。,一是异构型多处理机系统:又称非对称型多机系统,是指由多个不同类型的,至少担负不同功能的处理机组成的多处理机系统。,二是同构型多处理机系统:又称对称型多处理机系统,是指由多个同类型的,且完成同样功能的处理,(,器,),机组成的多处理机系统。,三是分布处理系统:是指有大量分散、重复的处理机资源,(,一般是具有独立功能的单处理机,),相互连接在一起,在操作系统的全局控制下统一协调工作,。,第四节 计算机系统结构中的并行性及其发展,2.,多处理机系统间的比较,主要有分工方式、,工作方式、控制形式,是不同的。,项目,同构型多处理机系统,异构型多处理机系统,分布处理系统,目的,提高性能(可靠性和速度),提高系统使用效率,兼顾性能与效率,技术途径,资源重复(机间互联),时间重叠,(,功能专用,),资源共享(网络化),组成,同类型、同功能,不同类型、不同功能,不限制,分工方式,任务分布,功能分布,资源分布,工作方式,一个作业由多机协同并行地完成,一个作业由多机协同串行地完成,一个作业由一台机完成必要时可由它机协助,控制形式,一般是浮动控制,一般是专用控制,一般是分布控制,耦合度,紧密,紧密、松散,松散、紧密,互联要求,快速、灵活、可重构,专用,快速、灵活、简单、通用,第四节 计算机系统结构中的并行性及其发展,六、计算机系统结构实现并行处理系统的历程,1.,实现并行性的基本思想,计算机系统中可以通过时间重叠、资源重复、资源共享等,技术途径,在不同等级上实现并行性,提高计算机系统的并行,处理能力,使计算机系统由低性能向高性能发展。但仅在单处,理机下来提高并行性,只能是在处理机内的功能部件指令级,、,数据级,并行。摆脱单处理机的束缚,发展各种不同耦合度的多,计算机系统,才有可能达到更高,(,程序级,、,进程级,),的并行处理,水平。,因此,从单处理机和多计算机系统两极出发,遵循不同,的发展途径,实现了,3,种不同类型的多处理机系统。,第四节 计算机系统结构中的并行性及其发展,多道程序、分时系统、虚存,部件冗余,单机系统,重叠方式、先行控制、缓存,多终端远程终端,多存储体多操作部件,流水线:指令、操作、宏,智能终端,并行处理机,相联处理机,向量处理机,分布处理系统,同构多机系统,异构多机系统,局部计算机网,可重构、容错,多处理机,高级语言、数,据库多处理机,通信处理机远程网络,紧密耦合系统,松散耦合系统,专用外围机,多计算机系统,2,单处理机实现并行处理的历程,3,多计算机实现并行处理的历程,第五节 计算机系统结构设计的基础,一、计算机系统结构设计的原则,1,计算机系统设计的基本原则,计算机系统设计的主要任务包括计算机系统结构、计算机,组成、计算机实现三个方面。应遵循的基本原则有:,确定计算机系统的功能是计算机系统设计的基础。,软件和硬件合理分配是计算机系统设计的关键。,计算机系统结构应符合发展需要是计算机系统设计的方向。,第五节 计算机系统结构设计的基础,2,软硬件取舍的基本原则,软硬件功能分配的核心是软硬件的取舍,而软硬件取舍,的指导思想就是综合权衡,一般应遵循以下基本原则。,性能价格比高的原则,充分利用组成与实现技术的原则,软硬件相互支持的原则,第五节 计算机系统结构设计的基础,二、计算机系统结构设计的方法,1,计算机系统结构设计的主要方法,计算机系统由多级层次组成,从哪一层开始设计就构成,三种不同的设计方法。,(,1,),“,由下往上,”,设计。,(,2,),“,由上往下,”,设计。,(,3,),“,由中间开始,”,设计。,第五节 计算机系统结构设计的基础,2.,计算机体系结构设计的等级方法,按计算机体系结构的等级性来设计计算机系统应遵循三个,基本思想。,一是在本等级范围内以合理的价格获得尽可以好的性能,,逐渐向高档机发展,称最佳性能价格比设计。,二是只求保持一定的使用性能而争取最低价格,称最低价,格设计,其结果往往是低档向下分化出新的计算机等级。,三是以获取最高性能为主要目标而不惜增加价格,称最,高性能设计,其结果是产生当时最高等级的计算机。,第五节 计算机系统结构设计的基础,三、软件可移植性及其实现的基本方法,软件的可移植性指的是软件不修改或只经少量修改就可由一台机器搬到另一台机器上运行,同一软件可应用于不同的环境。,实现软件移植的基本方法有:,(,1,)通用程序设计语言的方法,所有程序员均用通用程序设计语言进行程序设计,在各种类型的计算机上,建立一层由该语言所定义的虚拟机就能方便地把一个程序从一台机器移植到另一台机器。,通用程序设计语言程序,解 释,宏汇编,编 译,编 译,机器,1,机器,2,机器,3,机器,M,(2),强力逼近的方法。,为每一台机器上的每一种语言都设计一个编译程序或解释程序,程序员不管选用何种语言,总可得到一个有效的翻译程序,在由那个语言所定义的虚拟机上都能运行。,第五节 计算机系统结构设计的基础,语言,1,语言,1,语言,L,机器,1,机器,1,机器,M,第五节 计算机系统结构设计的基础,(3),通用计算机语言的方法。,设计一台由通用计算机语言所确定的虚拟机,用这台虚拟机实现各种语言层,为各种计算机语言编写编译程序或解释程序,以把各种计算机语言程序转换为通用计算机语言程序。,机器,1,语言,1,语言,2,语言,L,机器,1,机器,M,通用计算机语言程序,第五节 计算机系统结构设计的基础,(4),仿真与模拟和系列化的方法。,仿真与模拟和系列化不仅是目前计算机系统结构的基本,特性之一,也是实现软件移植的基本方法。,(5),计算机网络的方法。,利用异种机器联网的优势,将程序通过网络传送至能执,行的机器上运行,其结果再由网络传送回来。该方法效率高,,不需要预处理,也不存在同步问题,为程序移植提供了一个,简单而又方便的解决方法。但网络的投资大,且时间开销也,较大。,第五节 计算机系统结构设计的基础,四、计算机体系结构设计的定量原理,1.,大概率事件优先原理,大概率事件优先原理是计算机系统结构设计中最常用的原理。其基本思想是:对于大概率事件,(,最常见的事件,),,赋予它优先的处理权和资源使用权,以获得全局的最优结果。,第五节 计算机系统结构设计的基础,2,Amdahl,定律,Amdahl,定律是指加快某部件执行速度所获得的系统性能加速比,受限于该部件在系统中的重要性。它有两个方面的作用,一是用来确定系统中对性能限制最大的部件,二是用来计算由于改进某些部件而获得的系统,加速比。,系统加速比是指改进后的机器比改进前的机器快多少倍。机器系统的加速比,Sn,就是:,系统加速比,(,Sn,)=,改进后系统性能,/,改进前系统性能,=,改进前总执行时间,/,改进后总执行时间,=T0/Tn,第五节 计算机系统结构设计的基础,系统加速比与两个因素有关:一是计算机执行某个任务的总时间中可被改进部分的时间所占的百分比,记为,Fe,,它总小于,1,;另一个是改进部分采用改进措施后比没有采用改进措施前性能提高的倍数,记为,Se,,它总大于,1,。因此有改进后整个任务的执行时间为:,Tn,=T0(1,Fe)+T0 Fe/Se=T0(1,Fe+Fe,/Se),而改进后整个系统的加速比,Sn,为:,Sn,=T0/Tn=1/(1,Fe)+Fe/Se,式中,(1,Fe),表示不可改进部分,,,当,Fe,为,0,,即没有可改进部分时,,Sn,为,1,,所以性能的提高幅度受改进部分所占比例的限制。当,Se-,时,,Sn,=1/(1,Fe),,可获取性能改善的极限值也受到,Fe,值的约束。,3.,程序访存的局部性原理,程序访存的局部性原理是指一个程序用,90,的执行时间去执,行仅占,10,的程序代码。它是构造存储器体系的基础。,4.20,-80,原理,20,-80,原理是指大约有,20,的指令使用频率比较高,使,用量约占整个程序的,80,;而有,80,左右的指令很少使用,使用,量约占整个程序的,20,。它标明各种指令的使用频度相差很大,,是设计精简指令计算机的基础之一。,第五节 计算机系统结构设计的基础,第五节 计算机系统结构设计的基础,二、,CPU,性能分析,执行程序所花的,CPU,时间,(,Tcpu,),可从两个方面进行描述。,一是用程序机器指令使用的,CPU,时钟周期数(,Nc,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服