《计算机系统结构原理解析》
- 格式:doc
- 大小:12.51 KB
- 文档页数:5
计算机体系结构与并行处理计算机体系结构与并行处理是计算机科学领域中的重要概念。
本文将介绍计算机体系结构的基本原理、并行处理的概念及其应用,并附带题库类型的相关问题及解析。
一、计算机体系结构基本原理计算机体系结构是指计算机系统中各个硬件组件之间的结构关系和工作原理。
它包括计算机的各个层次结构,以及指令系统设计、存储器层次结构和总线结构等内容。
1. 数据通路与控制单元计算机体系结构中,数据通路用于处理和传输数据,控制单元则负责指导和协调各个硬件组件的工作。
数据通路包括算术逻辑单元(ALU)、寄存器、数据缓冲器等,而控制单元则由指令寄存器(IR)、程序计数器(PC)和控制逻辑组成。
2. 存储器层次结构存储器层次结构包括寄存器、高速缓存、主存和辅助存储器等。
其中,寄存器是CPU内部用于保存数据和指令的最快速的存储器。
高速缓存则位于CPU与主存之间,用于加速数据的读写。
主存是计算机中用于存储程序和数据的主要存储设备。
而辅助存储器则用于长期存储数据和程序。
3. 指令系统设计指令系统是计算机体系结构的核心部分,它规定了计算机所能执行的指令集和执行方式。
指令集包括数据传输指令、算术逻辑指令、控制转移指令等。
指令系统设计的关键是平衡指令的功能和数量,以满足计算机的多样化需求。
4. 总线结构总线是计算机中用于数据传输的公共通道。
总线结构包括数据总线、地址总线和控制总线等。
数据总线用于传输数据,地址总线用于定位数据在存储器中的位置,而控制总线则用于传输控制信号。
二、并行处理的概念及应用并行处理是指多个处理器同时执行多个任务或同一任务的不同部分,以提高计算机系统的性能和效率。
它可以分为粗粒度并行和细粒度并行。
1. 粗粒度并行粗粒度并行是指将一个任务分成多个子任务,由多个处理器分别执行。
每个处理器独立地处理自己的子任务,最后将结果合并。
粗粒度并行适用于需要处理的数据量大、计算复杂度高的任务,如科学计算和大规模数据处理。
2. 细粒度并行细粒度并行是指将一个任务分成多个子任务,并行执行它们的不同部分。
第一章计算机系统结构的基本概念1. 有一个计算机系统可按功能分成4 级,每级的指令互不相同,每一级的指令都比其下一级的指令在效能上强M 倍,即第i 级的一条指令能完成第i-1 级的M 条指令的计算量。
现若需第i 级的N 条指令解释第i+1 级的一条指令,而有一段第 1 级的程序需要运行Ks ,问在第 2 、3 和 4 级上一段等效程序各需要运行多长时间?答:第2 级上等效程序需运行:(N/M)*Ks 。
第 3 级上等效程序需运行:(N/M)*(N/M)*Ks 。
第4 级上等效程序需运行:(N/M)*(N/M)*(N/M)*Ks 。
note: 由题意可知:第i 级的一条指令能完成第i-1 级的M 条指令的计算量。
而现在第i 级有N 条指令解释第i+1 级的一条指令,那么,我们就可以用N/M 来表示N/M 表示第i+1 级需(N/M) 条指令来完成第i 级的计算量。
所以,当有一段第 1 级的程序需要运行Ks 时,在第 2 级就需要(N/M)Ks ,以此类推2. 硬件和软件在什么意义上是等效的?在什么意义上又是不等效的?试举例说明。
答:软件和硬件在逻辑功能上是等效的,原理上,软件的功能可用硬件或固件完成,硬件的功能也可用软件模拟完成。
但是实现的性能价格比,实现的难易程序不同。
在DOS 操作系统时代,汉字系统是一个重要问题,早期的汉字系统的字库和处理程序都固化在汉卡(硬件)上,而随着CPU硬盘、内存技术的不断发展,UCDOS把汉字系统的所有组成部份做成一个软件。
3. 试以实例说明计算机系统结构、计算机组成与计算机实现之间的相互关系与影响。
答:计算机系统结构、计算机组成、计算机实现互不相同,但又相互影响。
(1) 计算机的系统结构相同,但可采用不同的组成。
如IBM370 系列有115、125 、135、158 、168 等由低档到高档的多种型号机器。
从汇编语言、机器语言程序设计者看到的概念性结构相同,均是由中央处理机/ 主存,通道、设备控制器,外设 4 级构成。
计算机工作原理解析冯·诺依曼结构计算机系统由硬件系统和软件系统两大部分组成。
美藉匈牙利科学家冯·诺依曼结构(John von Neumann)奠定了现代计算机的基本结构,其特点是:1)使用单一的处理部件来完成计算、存储以及通信的工作。
2)存储单元是定长的线性组织。
3)存储空间的单元是直接寻址的。
4)使用低级机器语言,指令通过操作码来完成简单的操作。
5)对计算进行集中的顺序控制。
6)计算机硬件系统由运算器、存储器、控制器、输入设备、输出设备五大部件组成并规定了它们的基本功能。
7)彩二进制形式表示数据和指令。
8)在执行程序和处理数据时必须将程序和数据道德从外存储器装入主存储器中,然后才能使计算机在工作时能够自动调整地从存储器中取出指令并加以执行。
这就是存储程序概念的基本原理。
计算机指令计算机根据人们预定的安排,自动地进行数据的快速计算和加工处理。
人们预定的安排是通过一连串指令(操作者的命令)来表达的,这个指令序列就称为程序。
一个指令规定计算机执行一个基本操作。
一个程序规定计算机完成一个完整的任务。
一种计算机所能识别的一组不同指令的集合,管为该种计算机的指令集合或指令系统。
在微机的指令系统中,主要使用了单地址和二地址指令。
其中,第1个字节是操作码,规定计算机要执行的基本操作,第2个字节是操作数。
计算机指令包括以下类型:数据处理指令(加、减、乘、除等)、数据传送指令、程序控制指令、状态管理指令。
整个内存被分成若干个存储单元,每个存储单元一般可存放8位二进制数(字节编址)。
每个在位单元可以存放数据或程序代码。
为了能有效地存取该单元内存储的内容,每个单元都给出了一个唯一的编号来标识,即地址。
计算机的工作原理按照冯·诺依曼存储程序的原理,计算机在执行程序时须先将要执行的相关程序和数据放入内存储器中,在执行程序时CPU根据当前程序指针寄存器的内容取出指令并执行指令,然后再取出下一条指令并执行,如此循环下去直到程序结束指令时才停止执行。
第1章计算机系统结构的基本概念1.1 解释下列术语层次机构:按照计算机语言从低级到高级的次序,把计算机系统按功能划分成多级层次结构,每一层以一种不同的语言为特征。
这些层次依次为:微程序机器级,传统机器语言机器级,汇编语言机器级,高级语言机器级,应用语言机器级等。
虚拟机:用软件实现的机器。
翻译:先用转换程序把高一级机器上的程序转换为低一级机器上等效的程序,然后再在这低一级机器上运行,实现程序的功能。
解释:对于高一级机器上的程序中的每一条语句或指令,都是转去执行低一级机器上的一段等效程序。
执行完后,再去高一级机器取下一条语句或指令,再进行解释执行,如此反复,直到解释执行完整个程序。
计算机系统结构:传统机器程序员所看到的计算机属性,即概念性结构与功能特性。
在计算机技术中,把这种本来存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性。
计算机组成:计算机系统结构的逻辑实现,包含物理机器级中的数据流和控制流的组成以及逻辑设计等。
计算机实现:计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。
系统加速比:对系统中某部分进行改进时,改进后系统性能提高的倍数。
Amdahl定律:当对一个系统中的某个部件进行改进后,所能获得的整个系统性能的提高,受限于该部件的执行时间占总执行时间的百分比。
程序的局部性原理:程序执行时所访问的存储器地址不是随机分布的,而是相对地簇聚。
包括时间局部性和空间局部性。
CPI:每条指令执行的平均时钟周期数。
测试程序套件:由各种不同的真实应用程序构成的一组测试程序,用来测试计算机在各个方面的处理性能。
存储程序计算机:冯·诺依曼结构计算机。
其基本点是指令驱动。
程序预先存放在计算机存储器中,机器一旦启动,就能按照程序指定的逻辑顺序执行这些程序,自动完成由程序所描述的处理工作。
系列机:由同一厂家生产的具有相同系统结构、但具有不同组成和实现的一系列不同型号的计算机。
硬件:尽量别换平台更换顺序:硬盘光驱软驱内存显卡CPU 主板要换先换前面的软件以硬件为主,不要因为软件更换硬件。
不要频繁重装系统。
计算机系统结构研究内容:从外部来研究计算机系统使用者所看到的物理计算机的抽象软硬件功能分配及分界面的确定学习目的:建立计算机系统的完整概念学习计算机系统的分析方法和设计方法掌握新型计算机系统的基本结构及其工作原理与其他学科的交叉主要包括:计算机组成原理,计算机操作系统,汇编语言,数据结构, 微机原理,高级语言等第一章计算机系统结构的基本概念一,计算机系统的组成由硬件和软件组成.1_ 硬件:可视为多种资源:1)处理信息资源—CPU;2)存储信息资源—存储器;3)交换信息资源—I/O设备.1.1 计算机系统结构的概念二,计算机系统的多级层次结构(逐级或越级向下实现)2 软件:即程序1)系统软件:各用户共同使用,如OS,编译/解释程序,汇编程序,诊断程序等;2)应用软件:为解决用户问题编写的程序.微程序级L0实际机器机器语言级L1实际机器操作系统级L2虚拟机汇编语言级L3虚拟机高级语言级L4虚拟机应用语言级L5虚拟机系统软件软,硬交界面硬件固件执行方式应用程序包翻译(用户)编译/解释程序翻译(程序员)汇编程序翻译(汇编语言程序员)机器语言程序解释(操作员)微指令程序解释(机器语言程序员)(逻辑设计员)1 机器语言级:二进制语言是计算机中必不可少的语言.2 汇编语言级:用符号表示的机器语言.3关于操作系统:①OS是管理计算机系统的系统软件;②OS的若干命令又可视为机器语言指令功能的扩充;③OS虽已发展成用高级语言编写,但其属服务于高级语言,汇编语言等的功能,并最终用机器语言或微指令程序解释执行的.4 虚拟机:以软件为主实现的机器.5 实际机器:由硬件或固件实现的机器.6 固件:将微程序固化在器件上的硬件.三,计算机系统结构定义及其属性一个计算机系统可以看成是由若干机器级组成的,从低层的硬件直到高层的应用程序级,在每一级上都可以定义一个系统结构,而传统的讲,计算机系统结构是指处在软件,硬件之间界面的描述,它反映了计算机系统的外特性._定义一:Amdahl于1964年在推出IBM360系列计算机时提出:计算机系统结构是程序员所看到的计算机系统的属性,包括概念结构和功能特性.是对计算机系统中各机器级之间界面的划分和定义,以及对各级界面上,下进行功能分配,各级都有它自己的系统结构.定义二:计算机系统结构主要研究软硬件功能分配和对软硬件界面的确定计算机系统由软件,硬件和固器组成,它们在功能上是同等的.同一种功能可以用硬件实现,也可以用软件或固件实现.不同的组成只是性能和价格不同.本课程定义计算机系统结构或称计算机体系结构(Computer Architecture)是汇编语言程序员所见到的计算机属性,即软,硬件的交界面(是机器语言,汇编语言或编译程序设计者看到的机器物理系统计算机系统结构,计算机组成,计算机实现之间界限越来越模糊.三个层次:计算机实现——器件选择,机械,封装,印板,机箱,电源,冷却设计计算机组成——逻辑设计计算机系统结构——外特性设计系统结构的研究范围外特性——指令系统,数据表示,寻址方式,寄存器集界面设计——确定硬件功能.新型系统结构设计——并行性,数据流,推理机,神经网性能成本评价——运算速度,存储容量,I/O带宽计算机系统结构的外特性1)指令系统:反映了机器指令的类型和形式,指令间排序和控制机构.2)数据表示:反映了能由硬件直接识别和处理的数据类型和指令.3)操作数的寻址方式:反映了系统能寻址的最小单位(寻址单位),寻址方式和表示.4)寄存器的构成定义:反映了通用寄存器和专用寄存器的数量,定义和使用方式.5)中断系统结构:表示中断的类型,分级和中断响应的硬件功能以及例外条件.6)存储体系和管理:包括主存储器,编址方式,最大可编址空间..7)I/O结构:包括I/O设备的连接方式,处理机,存储器与I/O设备间的数据传递方式和格式,传递的数据量及传递操作结束的表示及出错提示等.8)机器工作状态的定义和切换:如系统态和用户态等.9)信息保护:包括保护方式及有关的硬件支持等.3研究计算机系统结构的目的1)重点是软,硬件的界面:计算机系统设计师的主要任务是合理地研究哪些功能应由硬件予以支持,而哪些功能应由软件来完成.2)目的:提高计算机系统的性能/价格比.四,与计算机组成和计算机实现的联系计算机系统结构,计算机组成,计算机实现是3个不同的概念.它们各自包含不同的内容,但又有紧密的关系.计算机系统结构指的是计算机系统的软,硬件的界面,即机器语言程序员所看到的传统机器级所具有的属性.___ 计算机组成指的是计算机系统结构的逻辑实现,包括五大功能部件组成以及逻辑设计等.它着眼于物理机器级内各事件的排序方式与控制方式,各部件的功能以及各部件的联系.___ 计算机实现指的是计算机组成的物理实现,包括处理机,主存等部件的物理结构,器件的集成度和速度,模块,插件,底板的划分与连接,信号传输,电源,冷却及整机装配技术等.它着眼于器件技术和微组装技术,其中器件技术在实现技术中占主导作用.【例1】①机器指令集的确定属于计算机系统结构._______ ②指令的实现,如取指令,取操作数,运算,送结果等具体操作及其排序方式属于计算机组成._______ ③实现指令集中所有指令功能的具体电路,器件的设计,装配技术等属于计算机实现.【例2】①确定是否有乘法指令属于._______ ②乘法指令是用专门的乘法器实现,还是经加法器用重复的相加和右移操作来实现,属于._______ ③乘法器,加法器的物理实现,如器件的选定(器件集成度,类型,数量,价格)及所用微组装技术等,属于计算机系统结构计算机组成计算机实现【例3】①主存容量与编址方式(按位,按字节,按字访问等)的确定属于.________ ②为达到所定性能价格比,主存速度应多快,在逻辑结构上需采用什么措施(如多体交叉存储等)属于._______ ③主存系统的物理实现,如存储器器件的选定,逻辑电路的设计,微组装技术的选定属于.计算机系统结构计算机组成计算机实现可以看出,具有相同计算机系统结构(如指令系统相同)的计算机因为速度要求不同等因素可以采用不同的计算机组成.例如,取指令,译码,取操作数,运算,存结果可以在时间上按顺序方式进行,也可以让它们在时间上按重叠方式进行以提高执行速度.____同样,一种计算机组成可以采用多种不同的计算机实现.例如,主存器件可以采用SRAM 芯片,也可以采用DRAM芯片.可以采用大规模集成电路单个芯片,也可以采用中小规模集成电路进行构建.显然,这取决于性能价格比的要求与器件技术的现状.五,计算机系统结构,组成和实现三者的相互影响1.2 计算机系统结构的发展一,从提高CPU的利用率出发对CPU的基本要求1)要有高速度,节省处理时间;2)要一直处于忙状态,充分发挥高速性;3)要忙在数据的处理上.1 任务单一化1)传统计算机的操作:CPU除完成运算,还要进行入,出管理的操作,由于入,出所用的时间较长,所以浪费CPU时间太多——经常处于等待中.2)改进办法:①减少I/O处理时间:(采用中断方式)对高速外设采用DMA方式.②下放I/O管理权限:I/O处理机,通道.3)对系统结构的影响:在计算机结构中,引入I/O处理机,由它来管理入,出,使CPU专注数据处理.2 操作重迭化1)一条指令的几个过程段①取指令②译码分析③执行2)传统机器的执行方式:存在的问题,未能充分发挥对CPU的利用率.取译码执行取译码执行第i条第i+1条t3)重迭执行:把一条指令解释为取指,译码和执行三个阶段,使之在同一时刻,不同的指令在不同的过程上.重迭执行可以提高指令的吞吐率,图示如下:第i条第i+1条第i+1条取译码执行取译码执行取译码执行t4)实现重迭操作需要的支持①必须有先行部件:指令执行时,需要提前取出后继指令,进行相应处理,这就是先行.具体部件主要包括:先行地址站(包括指令地址,操作数地址),先行数站,先行指令译码分析部件,先行操作码译码.②能解决对存储器的频繁访问,源源不断地取指令,存/取操作数(存放结果).最好采用存储器的多体结构.5)对系统结构的影响除要求存储器为多体结构外,对CPU内部的微观结构具有深刻的影响.3吞吐匹配化1)要求:存储器提供数据的速度要与CPU处理数据的速度匹配.2)存在的问题:存储器的速度往往比CPU的处理速度低1~2个数量级.3)解决的方法:①直接提高主存速度当存储器的速度达到一定数量级别时,进一步提高速度所花代价更高,因而不利于性能/价格比的提高.②在CPU与主存之间加入高速缓存(cache)此法有利于提高存储系统的性能/价格比.③借助于辅助硬件(MC:存储控制器件)使cache与主存构成一个整体.4 程序多道化——用户分时化1)单用户系统存在的问题①CPU的实际利用率往往很低——程序运行时间往往比信息入出时间少很多.②因编程不当而出现死循环时,更浪费CPU时间.2)办法:充分利用入出时间,采用程序多道化,让CPU分时轮流为各用户服务.3)需要解决的问题:①存贮容量不足问题:直接增加主存容量,但不会提高计算机的性/价比;采用虚拟存贮器:把高速辅存伪装成主存使用.②多用户复杂现场的保护与恢复问题:为此引入通信控制器(CC)来解决.综上所述,从提高对CPU的利用率出发,计算机应有如下结构:器件发展对组成技术的影响器件速度与处理机工作主频器件发展对提高处理机主频起决定性作用需要研究新的器件来提高主频器件速度与指令执行时间40多年来,器件速度提高小于104;指令执行加快108.系统结构和组成技术的作用器件速度的提高最慢,已经没有太大潜力二,从单机向多机发展1 问题的提出:当对单机系统采用上述四条途径都不能满足要求时,就要求用多机系统完成.如:遥感通信卫星,每秒发回100万个图象要素,要求计算机每秒处理10亿~100亿次数据处理速度.现在的银河机,事实上是多机完成的达到几十亿次2__ 多机系统的分类1)多处理机系统(SIMD)阵列式多处理机系统(处理机相同,但需严格排列)并行式多处理机系统(处理机相同)分布式多处理机系统(处理机不相同)2)多计算机系统(具有多个指令部件,属MIMD)1.3计算机系统的并行性发展并行计算机系统绝大部分为MIMD系统并行向量机(PVP,Parallel V ector Processor);对称多处理机(SMP,Symmetric Multiprocessor);大规模并行处理机(MPP,Massively Parallel Processor);机群(Cluster);分布式共享存储多处理机(DSM,Distributied Shared Memory)■并行计算机系统绝大部分为MIMD系统,包括:HPC:处于什么样的阶段机群高性能计算系统已经成熟,步入量产阶段国内曙光,联想,浪潮,还有大量小公司高性能计算应用的快速扩展阶段从去年开始,机群销量猛增,应用在科学计算和信息服务等所有领域高性能计算教育相对滞后,人才相对稀缺阶段北大,清华,科大等有限几所高校设置相应专业课程并行计算基本概念并行处理定义并行算法的定义与分类数据相关性与可并行化并行计算模型●并行处理用是指同时对多个任务或多条指令,或同时对多个数据项进行处理.●完成此项处理的计算机系统称为并行处理计算机系统.并行处理定义同时性(simultaneity)——两个或多个事件在同一时刻发生.并发性(concurrency)——两个或多个事件在同一时间间隔内发生.流水特性(pipelining)——在一个重叠的时间内所发生的流水事件.为什么要开发并行处理技术对单用户,可以提高加速比(Speedup Oriented);对多用户,可以提高吞吐率(Throughput Oriented).例1.天气预报1990年10次台风登陆,福建,浙江两省损失79亿元,死亡950余人.天气预报模式为非线性偏微分方程,预报台风暴雨过程,计算量为1014—1016次浮点运算,需要10GFlops—100GFlops的巨型机.用途:局部灾害性天气预报.例2.石油工业地震勘探资料处理油藏数值模拟测井资料处理地震勘探由数据采集,数据处理和资料解释三阶段组成.目前采用的三维地震勘探比较精确的反映地下情况,但数据量大,处理周期长.100平方公里的三维勘探面积,道距25米,60次覆盖,6秒长记录,2毫秒采样,一共采集2.88 1010个数据,约为116GB.叠加后数据为4.8 108个数据.用二维叠前深度偏移方法精确的产生地下深度图像,需要进行25 1012FLOP,采用100MFLOPs机器计算250天,1GFLOPs机计算25天,10GFLOPs机器35分.考虑到机器持续速度常常是峰值速度的10-30%,所以需要100GFlops的机器.Cray T932/32约为60GFLOPs.例3.航空航天研究三维翼型对飞机性能的影响.数值模拟用时间相关法解Navier-Stoker方程,网格分点为120 40 50,需内存160MB,6亿计算机上解12小时,如果在数分钟内完成设计,则需要千亿次计算机.例4.重大挑战性课题需求计算空气动力学:千亿次/秒(1011)图像处理: 百亿次/秒(1010)AI: 万亿次/秒(1012)例5.核武器核爆炸数值模拟,推断出不同结构与不同条件下核装置的能量释放效应.压力: 几百万大气压温度: 几千万摄氏度能量在秒级内释放出来.设计一个核武器型号,从模型规律,调整各种参数到优选,需计算成百上千次核试验.Los Alamos实验室要求计算一个模型的上限为8-10小时.千万次机上算椭球程序的计算模型需要40-60CPU小时.二维计算,每方向上网格点数取100,二维计算是一维的200倍,三维是一维的33000倍.若每维设1000网格点,则三维计算是一维的几十万倍之多.此时对主存储器容量要数十,数百亿字单元(64位).另外还有I/O能力的要求,可视化图形输出.解决方案只有开发并行处理技术才能满足要求:3T performance:Teraflops of Computing PowerTerabyte of Main MemoryTerabyte/s of I/O bandwidth并行算法的定义与分类算法是解题的精确描述,是一组有穷的规则,它规定了解决某一特定类型问题的一系列运算.并行计算时可同时求解的诸进程的集合,这些进程相互作用和协调动作,并最终获得问题的求解并行算法的定义与分类并行算法就是对并行计算过程的精确描述并行算法可以从不同的角度分类为数值计算并行算法和非数值计算并行算法同步并行算法和异步并行算法共享存储并行算法和分布存储并行算法问题规模问题规模有可分为输入输出规模,计算规模,内存需求,通信(同步)规模,分别表示问题求解所需要的I/O量,计算量,内存大小和通信量(包括通信次数与通信数据量). 问题规模根据消耗资源程度,又相应分为CPU密集应用,memory密集应用,disk密集应用和网络密集应用.不同类型的问题,性能瓶颈也往往不同.并行算法就是要又针对性的消除相应的瓶颈,从而达到缩短计算时间的目的.数据相关P1: A=B+CP2: D=A×B其中,变量A是导致P1和P2发生数据相关的原因.为了保证程序执行的语义正确性,变量A必须是先在P1中写入后方可从P2中读出,即必须先写后读.显然,P1和P2不能并行执行.数据反相关P1: A=B×CP2: C=E+DP1通过变量C数据相关于P2.为保证语义正确性,必须等P1将变量C读出后,P2方可向变量C进行写入操作,即必须先读后写.也不可并行化数据输出相关P1: A=B+CP2: A=D×E为保证语义正确性,必须保证P1先写入A,然后允许P2再写入A.除了上述3种相关外,还存在一种特殊情况,即两个程序段的输入变量互为输出变量."数据交换",此时,两者必须并行执行,方可保证语义的正确性.这就要求硬件机构能保证两者进行同步读写.但若两个处理机各带有局部存储器,则可降低同步要求.P1: A=BP2: B=A并行计算模型计算模型是对计算机的抽象计算模型为设计,分析和评价算法提供基础冯.偌依曼机就是一个理想的串行计算模型但现在还没有一个通用的并行计算模型PRAM模型LogP模型PRAM模型PRAM(Parallel Random Access Machine)模型,即并行随机存取模型,是一种抽象的并行计算模型.假设存在着一个容量无限大的共享存储器;每台处理器有简单的算术运算和逻辑判断功能;在任何时刻各处理器均可以通过共享存储单元交换数据.PRAM模型SIMD-PRAM计算模型控制单元P1LMP2LMPnLM互连网络全局共享存储器PRAM模型MIMD-PRAM计算模型控制器1P1LMP2LMPnLM互连网络全局共享存储器控制器2控制器nLogP 模型充分说明了互连网络的性能特点,而未涉及网络的结构.模型主要由4个参数描述.L(Latency) 源处理机与目的处理机进行消息(一个或几个字)通信所需要的等待或延迟时间的上限.o(overhead) 处理机准备发送或准备接受每个消息的时间开销(包括操作系统核心开销和网络软件开销),在这段时间里处理机不能执行其他操作.LogP 模型g(gap) 一台处理机连续两次发送或连续两次接受消息时的最小时间间隔,其倒数即为处理机的通信带宽.P(Processor) 处理机的个数.其它并行处理计算机技术1.数据流技术data flow以数据驱动机制代替控制流机制当功能部件输入端的操作数可用时就启动执行;可开发程序中所有的并行性,但费用昂贵,实际性能与功能部件数量,存储器带宽以及挂起和可用部件相匹配的程度有关.2.多线程每台处理机有多个控制线程,同时运行多个现场,是实现时延隐藏的一种有效机制.成本高.3.逻辑推理与规约结构逻辑推理:日本第五代机,面向逻辑语言,执行速度慢,软件与程序设计环境欠丰富.规约结构:Alice,PGR,面向函数语言,执行速度慢,软件与环境欠丰富.多处理机1,多处理机的定义两个或两个以上处理机(包括PU和CU),通过高速互连网络连接起来,在统一的操作系统管理下,实现指令以上级(任务级,作业级)并行.多处理机2,多处理机的一般模型__流水线机器通过若干级流水的时间并行技术来获得高性能.阵列处理机器由多台处理机组成,每台处理机执行相同的程序.这两类机器都是执行单个程序,可对向量或数组进行运算.这种系统结构能高效地执行适合于SIMD的程序,所以这类机器对某些应用问题非常有效.若干台独立的计算机组成,每台计算机能够独立执行自己的程序.Flynn称这种结构为MIMD(多指令流多数据流)结构.在多处理机系统中,处理机与处理机之间通过互连网络进行连接,从而实现程序之间的数据交换和同步.处理机之间的连接频带比较低,一般通过输入输出接口连接.例如,IBM公司的机器,都可以通过通道到通道的连接器CTC(Channel To Channel)把两个不同计算机系统的IOP连接起来.可以通过并行口或串行口把多台计算机连接起来.例如,用串行口加一个MODEL拨号上网,也可以直接连接;多台计算机之间的连接需要有多个接口.Ethernet通过网络接口连接多台计算机.速度达10Mb,100Mb,1Gb.Mynet已经达到1.28Gb和2.56Gb.松散耦合多处理机…CPUCPU1CPUn-1LMLM1IOPIOP1互连网络LMn-1IOPn-1处理机之间共享主存储器,通过高速总线或高速开关连接. 紧密耦合多处理机…M…CPUCPU1CPUn-1MAPMAPIOPIOP1CPU-MM-IOP互连网络MAPIOPd-1MMMM1MMm-1主存储器有多个独立的存储模块.每个CPU能够访问任意一个存储器模块,需要通过映象部件MAP把全局逻辑地址变换成局部物理地址.通过互连网络寻找合适的路径,并分解访问存储器的冲突.多个输入输出处理机IOP也连接载互连网络上,输入输出设备与CPU共享主存储器. MIMD计算机,它和SIMD计算机的阵列处理机相比,有很大的差别.它们的本质差别在于并行性级别的不同: MIMD多处理机要实现任务或作业一级的并行,而SIMD阵列处理机只实现指令一级的并行.多处理机的特点1.4 计算机系统的设计技术一, 软硬件取舍1,软件与硬件实现的特点硬件实现:速度快,成本高;灵活性差,占用内存少软件实现:速度低,复制费用低;灵活性好,占用内存多理论上,有两种极端实现方法:全硬件机器,包括操作系统,高级语言,应用程序等硬件只有1位加法和分支操作,其他都用软件实现关键问题:性能与价格的关系,软硬件实现在功能上等效硬件实现的比例越来越高软件所占的成本越来越高二,从价格因素考虑的软硬件取舍另外,还要从处理机速度和国家需要等方面来考虑.结论1:经常使用的基本功能适宜用硬件实现结论2:生产台数很多时适宜用硬件实现三,从改进性能考虑的软硬件取舍1,系统设计的定量原理1).加快经常性事件的速度这是广泛采用的设计原则,使经常性事件的处理速度加快能明显提高整个系统的性能.2).Amdahl定理系统中某一部件采用某种更快的执行方式后整个系统的性能与这种执行方式的使用频率或占总执行时间的比例有关.没有改进措施前执行任务时间改进措施后执行任务时间加速比=可改进部分占用时间改进前任务的执行时间Fe:总小于1改进前改进部分的执行时间改进后改进部分的执行时间.Se:总大于1(1-Fe)表示不可改进部分.改进后整个任务的执行时间Tn为:FeSeTn=T0(1- Fe+)T0是改进前的整个任务执行时间·改进后整个系统的加速比Sn为:1((1-Fe)+Sn=T0Tn=FeSe))例假设将某个系统的某个部件的处理速度加快10倍,但该部件的原处理时间仅为整个运行时间的40%,则采用加快措施后使整个系统的性能提高多少解: 由题意可知:Fe=0.4,Se=10,根据Amdahl定律,Sn=1/(0.6+0.4/10)=1/0.64≈1.563).访问的局部性原理实验表明:一个程序用90%的执行时间去执行10%的程序代码.4).CPU的性能CPU时间=(IC*CPI)/频率上式表明,CPU的性能取决于三个要素:①时钟频率;②每条指令所花的时钟周期数;③指令条数IC.时钟频率取决于硬件技术和组织;CPI取决于系统结构组织和指令集;指令数目取决于系统结构的指令集和编译技术.每条指令的平均时钟周期数CPI:CPI=CPU时钟周期数目/IC5),改进性能的主要途径面向目标代码改进:用一条指令代替一串指令方法:统计某条指令,某类指令或某个指令串的使用频度(动态和静态)增加数据传送指令的功能:增加运算型指令的功能:如函数运算指令等面向高级语言和编译程序改进:方法:统计语句使用频度例如:一般程序中赋值语句占30%以上,为此,许多处理机中设置了寄存器与寄存器,寄存器与存储器,存储器与存储器之间的成组传送指令,存储器到存储器之间的运算指令.方法:(1)增强对高级语言和编译程序支持的指令的功能(2)研制高级语言计算机面向操作系统改进:方法:系统结构设计要规整,消除例外情况寄存器定义要统一,操作要均匀,所有存储部件要对称四,计算机系统的设计方法1 从上到下的设计(层次结构中的上下).1)依据:用户的要求(包括性能及功能).方法1:由上向下(Top-Down)设计过程:由上向下面向应用的数学模型面向应用的高级语言。
1.1 概述数字计算机的发展经过了哪几个代?各代的基本特征是什么?略。
1.2 你学习计算机知识后,准备做哪方面的应用?略。
1.3 试举一个你所熟悉的计算机应用例子。
略。
1.4 计算机通常有哪些分类方法?你比较了解的有哪些类型的计算机?略。
1.5 计算机硬件系统的主要指标有哪些?答:机器字长、存储容量、运算速度、可配置外设等。
答:计算机硬件系统的主要指标有:机器字长、存储容量、运算速度等。
1.6 什么是机器字长?它对计算机性能有哪些影响?答:指CPU一次能处理的数据位数。
它影响着计算机的运算速度,硬件成本、指令系统功能,数据处理精度等。
1.7 什么是存储容量?什么是主存?什么是辅存?答:存储容量指的是存储器可以存放数据的数量(如字节数)。
它包括主存容量和辅存容量。
主存指的是CPU能够通过地址线直接访问的存储器。
如内存等。
辅存指的是CPU不能直接访问,必须通过I/O接口和地址变换等方法才能访问的存储器,如硬盘,u盘等。
1.8 根据下列题目的描述,找出最匹配的词或短语,每个词或短语只能使用一次。
(1)为个人使用而设计的计算机,通常有图形显示器、键盘和鼠标。
(2)计算机中的核心部件,它执行程序中的指令。
它具有加法、测试和控制其他部件的功能。
(3)计算机的一个组成部分,运行态的程序和相关数据置于其中。
(4)处理器中根据程序的指令指示运算器、存储器和I/O设备做什么的部件。
(5)嵌入在其他设备中的计算机,运行设计好的应用程序实现相应功能。
(6)在一个芯片中集成几十万到上百万个晶体管的工艺。
(7)管理计算机中的资源以便程序在其中运行的程序。
(8)将高级语言翻译成机器语言的程序。
(9)将指令从助记符号的形式翻译成二进制码的程序。
(10)计算机硬件与其底层软件的特定连接纽带。
供选择的词或短语:1、汇编器2、嵌入式系统3、中央处理器(CPU)4、编译器5、操作系统6、控制器7、机器指令8、台式机或个人计算机9、主存储器 10、VLSI答:(1)8,(2)3,(3)9,(4)6,(5)2,(6)10,(7)5,(8)4,(9)1,(10)7计算机系统有哪些部分组成?硬件由哪些构成? 答:计算机系统硬件系统和软件系统组成。
计算机组成原理与体系结构基础知识试题及解析计算机组成原理与体系结构基础知识试题及解析一、选择题1. 下面哪个不是计算机中的主要硬件组成部分?A. 中央处理器B. 内存C. 硬盘D. 显卡答案:D解析:显卡是计算机中的辅助硬件组成部分,用于处理图形输出。
而中央处理器、内存和硬盘是计算机的三大核心硬件组成部分。
2. 下面哪个不是计算机存储器的一种?A. 随机存取存储器(RAM)B. 只读存储器(ROM)C. 磁盘存储器D. 闪存存储器答案:C解析:磁盘存储器属于外部存储器,不属于计算机存储器的范畴。
计算机存储器主要包括RAM、ROM和闪存存储器。
3. 下面哪个不属于计算机指令的基本格式?A. 操作码+操作数B. 地址码+操作码C. 操作数+寄存器D. 机器码答案:B解析:计算机指令的基本格式通常为操作码+操作数。
其中操作码表示要执行的操作,操作数则是操作的对象。
地址码+操作码不符合常见的指令格式。
4. 下面哪个不属于计算机中的主要总线?A. 数据总线B. 地址总线C. 控制总线D. 系统总线答案:D解析:系统总线并非计算机中的主要总线,而是由数据总线、地址总线和控制总线组成的总线系统。
5. 下面哪个不是计算机系统中的输入设备?A. 键盘B. 鼠标C. 打印机D. 扫描仪答案:C解析:打印机是计算机系统中的输出设备,而键盘、鼠标和扫描仪属于输入设备。
二、填空题1. 操作系统负责管理计算机的资源,同时提供给用户一个__________的工作环境。
答案:友好2. 在计算机中,字长是指CPU一次能处理的二进制数据的位数,它也是计算机的__________。
答案:基本数据类型3. 计算机内存中保存的数据在计算机断电后会丢失,因此又称为__________。
答案:易失性存储器4. ALU(算术逻辑单元)是计算机中负责执行__________运算的部件。
答案:算术和逻辑5. 程序计数器是CPU中的一个寄存器,用来存储下一条指令的__________。
ComputerArchitecture计算机系统结构知识点详解Computer Architecture计算机系统结构1. Fundamentals of Computer Architecture 计算机系统结构的基本原理1.1 Layers of Computer System计算机的层次Application Language Machine M5 应⽤语⾔机High-Level Language Machine M4 ⾼级语⾔机Assembly Language Machine M3 汇编语⾔机Operating System Machine M2 操作系统机Conventional Machine M1 传统机Microprogram Machine M0 微程序机1. 每个层次执⾏相关的功能⼦集。
2. 每个层次要依赖于下⼀个低层去执⾏更原始的功能。
3. 这就将问题分解成更易处理的⼦问题。
4. 从M2到M5的层次是虚拟机。
5. 在传统机上的指令(算数、逻辑等)由微程序级的程序实现。
该程序是作为⼀个解释器,能理解⼀组简单的操作集合,称为微指令集。
1.2 Computer Architecture and Implementation计算机的系统结构和实现Computer Architecture 计算机系统结构Refers to those attributes of a system visible to a programmer, or those attributes have direct impact on logical execution of program.程序员可见,或者对程序执⾏有直接影响的属性Implementation 实现Two components: Organization and hardware. 两个组件:组织和硬件1. Organization(组织): includes high-level aspects of a computer’s design, such as: memory system, bus structure, internal CPU. 组织(组织):包括⾼级⽅⾯的计算机的设计,如:内存系统,总线结构、内部CPU。
《计算机系统结构原理解析》
计算机系统结构原理解析
计算机系统是由硬件、软件、人员和数据组成的复杂而庞大的系统,它涉及到许多方面的知识。
其中最基本、最重要的一部分就是计算机系统的结构。
计算机系统结构是指计算机硬件系统在逻辑上的组织形式和相互连接方式,是计算机系统的基本组成部分,对整个系统的性能和功能起着至关重要的作用。
本文将对计算机系统结构原理进行解析。
一、计算机系统结构的层次
计算机系统结构按照不同的分类方法可以分为不同的层次结构。
在概念上,一般将计算机系统结构分为五层,从下到上依次为:物理层、电子元件层、逻辑层、指令系统层和应用层。
其中,物理层是指计算机硬件的实际物理结构和连接方式,包括各种电路元件、器件、部件等。
电子元件层是指由电子元件构成的各种逻辑电路。
逻辑层是指逻辑电路组成的逻辑单元和运算器,它们负责逻辑控制和算术运算。
指令系统层是指指令的集合和对指令的执行操作,它们由操作系统和硬件组成。
应用层是指各种应用程序,如文本处理、图形处理、数据库管理等。
二、计算机系统结构的组成部分
计算机系统结构的组成部分分为五个方面:中央处理器(CPU)、存储器、输入输出设备、系统总线和操作系统。
1. 中央处理器(CPU):中央处理器是计算机系统的核心部件,它是计算机进行算术和逻辑运算的重要部分。
CPU主要由控制单元和算术逻辑单元两部分组成,控制单元用来控制程序执行的流程,而算术逻辑单元则用来完成各种算术和逻辑运算。
2. 存储器:存储器是用来存储数据和程序的设备。
针对不同的存取方式,存储器可以分为:随机存取存储器(RAM)和只读存储器(ROM)两种。
RAM 用来存储程序和数据,而ROM则是存储一些只读数据(如程序代码)。
RAM 和ROM的主要区别在于RAM可以进行写入和读出操作,而ROM只能读出操作。
3. 输入输出设备:输入输出设备是用来与计算机进行交互的设备。
比如,键盘用于输入字符、鼠标用于控制光标移动和点击操作、显示器用于显示计算机处理的结果等等。
4. 系统总线:系统总线是用来连接CPU、存储器和输入输出设备的公共通道,它负责在各个设备之间传输数据和控制信息。
5. 操作系统:操作系统是计算机系统的一部分,它提供系统调度和资源
管理功能。
操作系统负责将程序加载到内存中、分配CPU时间片、管理输入输出设备等等。
三、计算机系统结构的基本原理
计算机系统结构的设计需要满足一些基本原理,这些原理在很大程度上决定了计算机系统的性能和功能。
下面列举一些基本原理:
1. 简单性原理:计算机系统应该设计得尽可能简单。
简单的计算机系统结构可以提高计算机系统的可靠性和稳定性。
2. 模块化原理:计算机系统应该以模块化的方式进行设计。
模块化设计可以方便系统升级和维护。
3. 标准化原理:计算机系统的组件应该遵循统一的标准。
标准化可以提高计算机系统的可移植性和互操作性。
4. 层次化原理:计算机系统应该按照层次化的方式进行设计,每层之间应该尽量不相互干涉、不相互影响。
5. 并行性原理:计算机系统应该充分利用并行处理的特点,提高系统的性能。
四、计算机系统结构的发展趋势
随着科技的不断进步,计算机系统结构也在不断发展和变化。
根据近年来的发展趋势,计算机系统结构的发展主要包括三个方面:
1. 并行计算:为了提高计算机的运算速度,计算机系统结构的发展趋势之一就是采用并行计算技术,把多个处理器集合在一起,共同完成运算任务。
2. 大规模集成电路:随着集成电路技术的不断发展,计算机系统结构也越来越倾向于采用大规模集成电路设计。
这样可以大幅提高计算机系统的性能和效率。
3. 软硬件结合:计算机系统应该结合软硬件的优势,从而实现更高的性能和更好的用户体验。
比如,可以采用GPU加速、人工智能等技术,来提高计算机系统的性能和智能化水平。
结语
计算机系统结构是计算机领域的基础知识,对于计算机专业的学生、从业人员来说都非常重要。
本文简单阐述了计算机系统结构的层次、组成部分、
基本原理和发展趋势,相信可以对大家进一步了解计算机系统结构有所帮助。