计算机系统结构的基本概念 .ppt
《计算机系统结构的基本概念 .ppt》由会员分享,可在线阅读,更多相关《计算机系统结构的基本概念 .ppt(152页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、计算机系统结构的计算机系统结构的基本概念基本概念 现在学习的是第1页,共152页1.1 计算机系统层次结构计算机系统层次结构1.1.1按功能划分的多级层次结构现代计算机是通过执行指令来解决问题的,它由软件和硬件两大部分组成。描述一个任务如何实现的指令序列称为程序,所有程序在执行前都必须转换成计算机能识别以及直接执行的机器指令。这些机器指令与机器硬件直接对应,并能被其直接识别和执行,然而使用机器语言编程既不方便,也无法适应解题需要和计算机应用范围的扩大。现在学习的是第2页,共152页这个问题可从两方面去解决,前提是都需要设计一个比机器指令更方便使用或编程的指令集合,由它构成新的语言,例如汇编语言
2、。汇编语言是一种符号语言,给程序员编程提供了方便,尽管每个语句仍基本上与机器指令对应,却并不能被机器直接识别和执行;用汇编语言开发的程序需要某种转换才能在实际机器上执行。转换的方式有以下两种:现在学习的是第3页,共152页翻译翻译(translation):在执行汇编语言源程序之前生成一个等价的机器语言指令序列来替换它,生成的程序全部由机器指令组成,计算机执行等效的机器语言源程序来代替原来的汇编语言源程序。即把源程序先转换成目标程序,而后再在机器上执行目标程序以获得结果。解释解释(interpretation):用机器指令写一个程序,将汇编语言源程序作为输入数据,按顺序检查它的每条指令,然后直
3、接执行等效的机器指令序列来解决问题。现在学习的是第4页,共152页汇编语言源程序可以在机器上运行并获得结果,是因为有汇编程序的支持。在汇编语言程序设计者看来,就好像有了一台用汇编语言作为机器语言的机器。这里的机器是指能存储和执行程序的算法和数据结构的集合体。我们把以软件(Software)为主实现的机器,称之为虚拟机器,而把由硬件(Hardware)和固件(Firmware)实现的机器称为实际机器。显然,虚拟机器的实现是构筑在实际机器之上的。下图给出了虚拟机器与实际机器之间构成的一个简单的层次结构。现在学习的是第5页,共152页图1.1虚拟机器和实际机器层次结构举例现在学习的是第6页,共152
4、页语言与虚拟机之间存在着重要的对应关系,每种机器都有由它能执行的指令组成的机器语言。同时,语言也定义了机器,即机器要能执行这种语言所写的程序。有n层不同的语言,就对应有n层不同的虚拟机。在图1.2中我们给出了典型的现代计算机的多级层次结构。例如,汇编语言(L3)是面向机器的一种符号语言,其语法、语义结构仍然和二进制机器语言的基本相同,但与解题所需的差别较大,于是进一步出现了面向题目和过程的高级语言(L4);现在学习的是第7页,共152页在高级语言的基础上还出现了面向应用的应用语言(L5),因此我们可以得到多个层次的虚拟机器;而对于实际机器级若采用微程序(L0)控制,它又可分解成传统机器级M1和
5、微程序级M0;虽然目前很多机器上的操作系统(L2)已不再用汇编语言编写,而是用面向系统软件的高级语言,如C语言,但从实质上看,操作系统是传统机器的引伸,它要提供传统机器所没有但为汇编语言和高级语言的使用和实现所需的某些基本操作和数据结构,如文件管理、进程管理、中断管理、作业控制、存储管理和输入输出等等,它们在许多机器上是经机器语言程序解释实现的。因此,操作系统级放在传统机器级之上,汇编语言级之下。现在学习的是第8页,共152页图1.2计算机系统的多级层次结构现在学习的是第9页,共152页把计算机系统按功能划分为多个层次结构后,对各机器级的程序员而言,只要熟悉和遵守该级语言的规范准则,所编写的程
6、序总能在此机器级上运行并得到结果,而不用了解该机器级是如何实现的。各机器级的实现主要靠翻翻译译或或解解释释,或者是这两者的结合。翻译是先用转换程序将高一级机器级上的程序整个地变换成低一级机器级上可运行的等效程序,然后再在低一级机器级上实现的技术。解释则是在低一级机器级上用它的一串语句或指令来仿真高一级机器级上的一条语句或指令的功能,通过对高一级程序中的每条语句或指令逐条解释来实现的技术。现在学习的是第10页,共152页计算机系统采用何种实现方式,要从效率、速度、价格、资源状况、可靠性等多方面因素全盘考虑,对软件、硬件及固件的取舍进行综合平衡。软件和硬件在逻辑功能上是等效的,同一逻辑功能既可以用
7、软件也可以用硬件或固件实现,从原理上讲,软件实现的功能完全可以用硬件或固件完成,同样,硬件实现的逻辑功能也可以由软件的模拟来完成,只是性能、价格以及实现的难易程度不同而已。现在学习的是第11页,共152页例如,在计算机中实现十进制乘法这一功能,既可以用硬件来实现,也可以用软件来完成。用硬件实现,需设计十进制乘法机器指令,用硬件电路来实现该指令,其特点是完成这一功能的速度快,但需要更多的硬件。而用软件来实现这个功能,则要采用加法、移位等指令通过编程来实现,其特点是实现的速度慢,但不需增加硬件。现在学习的是第12页,共152页 软、硬件的功能分配比例可以在很宽的范围内变化,这种变化是动态的,如图1
8、.3所示,软硬功能分配的比例随不同时期以及同一时期的不同机器的变化而变化。由于软、硬件是紧密相关的,软硬界面常常是模糊不清的,在计算机系统的功能实现上,有时候很难分清哪些功能是由硬件完成的,哪些功能是由软件完成的。在满足应用的前提下,软硬功能分配比例的确定,主要是看能否充分利用硬件、器件技术的现状和进展,使计算机系统达到较高的性能价格比。对于计算机系统的用户,还要考虑他所直接面对的应用语言所对应的机器级的发展状况。现在学习的是第13页,共152页图1.3软硬件功能分配现在学习的是第14页,共152页从目前软硬件技术的发展速度及实现成本上看,随着器件技术的高速发展,特别是半导体集成技术的高速发展
9、,以前由软件来实现的功能,越来越多的由硬件来实现,总的来说,软件硬化是目前计算机系统发展的主要趋势。现在学习的是第15页,共152页1.1.2按功能划分层次的好处从概念和功能上把一个复杂的计算机系统看成是由多个机器级构成的层次结构,可以有如下的好处:首先,有利于理解软件、硬件和固件在系统中的地位和作用;从系统层次的划分中,可以看出,微程序机器级(M0)、传统机器级(M1)、操作系统机器级(M2)不是为应用程序员解题设计的,而是为运行支持更高层次机器级程序所必须的解释程序和翻译程序而设计的,以便能设计和实现新的虚拟机器级。现在学习的是第16页,共152页在这之上的机器级(M3M5级)则主要是为应
10、用程序设计人员解决各类实际应用问题而设计的。其次,系统按层次进行划分,有利于理解各种语言的实质和实现途径;计算机各层次的语言总是通过低一级的语言翻译或解释来实现的,这就说明相邻机器级之间的语义差别不能太大。再次,系统按层次进行划分,有利于推动计算机系统结构的发展;例如,可以重新分配软、硬件的比例,为虚拟机器的各个层次提供更多更好的硬件支持,改变硬件及器件快速发展而软件却日益复杂、开销过大的状况。现在学习的是第17页,共152页可以用硬件和固件来实现高级语言和操作系统而形成高级语言机器和操作系统机器。再如,用真正的机器来取代各级虚拟机,摆脱各级功能都在同一台实际机器上实现的状况,发展多处理机系统
11、、分布处理系统、计算机网络等系统结构。最后,系统按层次进行划分,有利于理解计算机系统结构的定义。把计算机按功能划分成多个不同的层次结构,从各个层次的功能划分和实现去了解计算机系统,有助于更深入的了解系统结构的定义。现在学习的是第18页,共152页1.2 计算机系统结构计算机系统结构“计算机系统结构”这个名词来源于英文ComputerArchitecture,也译成“计算机体系结构”。architecture这个词原来用在建筑领域,原意“建筑、建筑学”,60年代这个名词被引入计算机领域,“计算机系统结构”一词已经得到普遍应用,它研究的内容不但涉及计算机硬件,也涉及计算机软件,已经成为一门学科。现
12、在学习的是第19页,共152页1.2.1计算机系统结构的定义计算机系统结构这个词是Amdahl(Gene.Amdahl吉恩.阿姆达尔)等人在1964年介绍IBM360时提出的。他们把系系统统结结构构定定义义为为由由程程序序设设计计者者所所看看到到的的一一个个计计算算机机系系统统的的属属性性,即即概概念念性性结结构构和和功功能能特特性性。这实际上是计算机系统的外特性。按照计算机层次结构,不同程序设计者所看到的计算机具有不同的属性。在在计计算算机机技技术术中中,一一种种本本来来是是存存在在的的事事物物或或属属性性,但但从从某某种种角角度度看看却却好好象象不不存存在在,称称为为透透明明性性。通常,在
13、一个计算机系统中,低层机器级的概念性结构和功能特性,对高级语言程序员来说是透明的。现在学习的是第20页,共152页概念性结构概念性结构指的是计算机系统中所有部件之间的逻辑连接结构功能特性功能特性 主要指的是计算机系统的如下功能:数据表示,寻址方式,寄存器组织,指令系统,存储系统,中断机构,I/O结构现在学习的是第21页,共152页例如使用高级语言的程序员所看到的计算机属性主要是软件子系统和固件子系统的属性,包括程序语言以及操作系统、数据库管理系统、网络软件等用户界面。例如,IBM370系列机的中央处理器都具有相同的基本指令系统,指令的解释过程在不同档次机器中的处理方式不相同,但对程序设计者而言
14、,所看到的数据形式都是相同的32位字长。现在学习的是第22页,共152页同样,对于其不同档次机器,在组成与实现时,数据通路宽度(数据总线)可以分别采用8位、16位、32位或64位,但对于程序员而言,数据总线宽度是透明的,即在设计程序时不需要考虑数据总线宽度的位数。Amdahl等人提出的系统结构定义中的程序设计者是指机器语言或编译程序设计者所看到的计算机属性,是硬件子系统的概念结构及其功能特性。现在学习的是第23页,共152页1.2.2计算机系统结构研究的内容计算机系统结构研究的主要内容是计算机系统中各级之间界面的定义及其上下的功能分配。在这里,我们主要讨论传统机器级的系统结构,即从机器语言程序
15、员的角度所看到的计算机系统结构,如图1.4所示。现在学习的是第24页,共152页图1.4计算机系统软硬件交界面现在学习的是第25页,共152页界面之上的功能由软件实现;界面之下的功能由硬件/固件实现。所以本书是研究软、硬件功能的分配以及对机器级界面的确定,即由机器语言设计者或编译程序设计者所看到的机器物理系统的抽象或定义。它是机器语言程序设计者或是编译程序生成系统为使其所设计或生成的程序能在机器上正确运行,所需看到和遵循的计算机属性。它不包括机器内部的数据流和控制流、逻辑设计或器件设计等。现在学习的是第26页,共152页 因此,因此,计算机系统结构计算机系统结构 研究的是软、硬件之间的功能分配
16、以研究的是软、硬件之间的功能分配以及对传统机器级界面的确定,提供机器语及对传统机器级界面的确定,提供机器语言、汇编语言程序设计者或编译程序生成言、汇编语言程序设计者或编译程序生成系统为使其所设计或生成的程序能在机器系统为使其所设计或生成的程序能在机器上正确运行,应看到和遵循的计算机属性。上正确运行,应看到和遵循的计算机属性。现在学习的是第27页,共152页对于目前的通用型机器,计算机系统结构(传统机器程序员所看到的属性)一般包括:(1)机机器器内内的的数数据据表表示示,包括硬件能直接识别和处理的数据类型和格式等;(2)寻寻址址方方式式,包括最小寻址单位,寻址方式的种类、表示和地址计算等;(3)
17、寄寄存存器器组组织织,包括操作数寄存器、变址寄存器、控制寄存器及某些专用寄存器的定义、数量和使用约定;现在学习的是第28页,共152页(4)指指令令系系统统,包括机器指令的操作类型和格式、指令间的排序方式和控制机构等;(5)存存储储系系统统,包括最小编址单位、编址方式、主存容量和最大可编址空间等;(6)中中断断机机构构,包括中断的类型、中断分级、中断处理程序的功能和入口地址等;(7)机机器器工工作作状状态态的的定定义义及及切切换换,如在管态,处理机可以使用系统的全部指令和全部资源,而在目态,处理机只能执行用户程序;现在学习的是第29页,共152页(8)输输入入输输出出机机构构,包括输入输出设备
18、的连结方式,处理机/存储器与输入输出设备间数据传送的方式与格式、传送的数据量、以及输入输出操作的结束与出错标志等;(9)信信息息保保护护,包括信息保护方式和硬件对信息保护的支持等。现在学习的是第30页,共152页1.3 计算机组成计算机组成1.3.1计算机组成的定义计计算算机机组组成成(Computer Organization,又又称称计计算算机机设设计计)是是指指计计算算机机系系统统的的逻逻辑辑实实现现。包包括括机机器器内内部部的的数数据据流流和和控控制制流流的的组组成成以以及及逻逻辑辑设设计计等等。它着眼于机器内各事件的排序方式与控制机构、各部件的功能以及各部件间的联系。现在学习的是第3
19、1页,共152页计算机组成的设计是按所希望达到的性能价格比,最佳、最合理的把各种设备和部件组成计算机,以实现所确定的计算机系统结构。对传统机器程序员来说,计算机组成的设计内容一般是透明的。现在学习的是第32页,共152页1.3.2计算机组成设计计算机组成的任务是在计算机系统结构确定分配给硬件子系统的功能及其概念结构之后,研究各组成部分的内部构造和相互联系,以实现机器指令级的各种功能和特性。这种相互联系包括各功能部件的配置、相互连接和相互作用。各功能部件的性能参数相互匹配是计算机组成合理的重要标志,因而相应地就有许多计算机组织方法。例如,为了使存储器的容量大、速度快,人们研究出存储体系。在存储体
20、系中,又有虚拟存储器、高速缓存、多模块交叉工作、多寄存器组和堆栈等技术。现在学习的是第33页,共152页再如,为了使输入输出设备与处理机间的信息流量达到平衡,人们研究出通道、外围处理机等方式。为了提高处理机速度,人们研究出先行控制、流水线、多执行部件等方式。在各功能部件的内部结构研究方面,产生了许多组合逻辑、时序逻辑的高效设计方法和结构。现在学习的是第34页,共152页一般来讲,计算机组成设计要确定的内容应包括:(1)数数据据通通路路的的宽宽度度,指数据总线上一次能并行传送的信息位数;(2)专专用用部部件件的的设设置置,包括设置哪些专用部件,如乘除法专用部件、浮点运算部件、字符处理部件、地址运
21、算部件等,每种专用部件的个数等等,这些都决于所需达到的机器速度、专用部件的使用频度及允许的价格等;现在学习的是第35页,共152页(3)各各种种操操作作对对部部件件的的共共享享程程度度,若共享程度太高,由于共享部件的分时使用将会降低操作的速度;若对同一功能部件设置多个以降低共享度,但系统的价格会随之升高。(4)功功能能部部件件的的并并行行度度,如功能部件的控制和处理方式是采用顺序串行方式,还是采用重叠、流水、分布处理方式;(5)控控制制机机构构的的组组成成方方式式,如控制机构是采用硬连线控制还是微程序控制,是采用单机处理还是多机处理或功能分布处理;现在学习的是第36页,共152页(6)缓缓冲冲
22、和和排排队队技技术术,包括如何在部件间设置多大容量的缓冲器来弥补它们的速度差异,对于等待要求处理的事件如何排队,如随机、先进先出、先进后出、优先级、循环队等不同方式;(7)预预估估、预预判判技技术术,如采用何种原则来预测未来的行为,以优化性能和优化处理;(8)可可靠靠性性技技术术,如采用什么样的冗余技术和容错技术来提高可靠性。现在学习的是第37页,共152页1.4 计算机实现计算机实现1.4.1计算机实现的定义计计算算机机实实现现(Computer Implementation)是是指指计计算算机机组组成成的的物物理理实实现现。它包括处理机、主存等部件的物理结构,器件的集成度和速度,信号传输,
23、器件、模块、插件、底板的划分与连接,专用器件的设计。电源、冷却、装配等技术以及有关的制造技术和工艺等。它着眼于器件技术和微组装技术。其中,器件技术在实现技术中起着主导作用。现在学习的是第38页,共152页1.4.2器件技术研究的内容器件技术研究的内容包括:处理机、主存等部件的物理结构,器件的集成度和速度,专用器件的设计,信号传输等。例如,集成电路采用TTL类型还是MOS类型,最小光刻线条的尺寸,连线采用铝连线还是铜连线,集成电路内部的电容、电阻的设计,集成电路上的晶体管采用什么样的材料和工艺,如不同场合下可以选用硅、硅锗合金、砷化镓等等,其带来的物理特性、响应特性、功耗也各有不同。随着时间的推
24、移,芯片的封装技术已经历了好几代的变迁,从DIP、QFP、PGA、BGA到CSP,再到MCM等等。现在学习的是第39页,共152页计算机所用的基本器件已经从初期的电子管、晶体管、中小规模集成电路、大规模集成电路,发展到现在的超大规模集成电路(VLSI),其生产工艺从上世纪70年代的10微米发展到现在的0.09微米的水平,只用了不到30年的时间。其所能达到的集成度可以在一个芯片上集成上亿个晶体管。例如,在处理器方面,英特尔公司的第一个CPU的集成度为2000多个晶体管,而在1999年,英特尔公司推出的PentiumIII处理器的集成度就达到2400万个晶体管,到了2000年,采用Willamet
25、te核心,使用0.18微米生产工艺的Pentium4处理器的集成度就达到3400万个晶体管;现在学习的是第40页,共152页而其后推出的采用Northwood核心,使用0.13微米生产工艺的Pentium42.53GHz处理器其集成度达到5500万个晶体管,最新的PentiumEE955处理器更是集成了3.76亿个晶体管。并且,AMD公司的Athlon64X2处理器的集成度也达到2.33亿个晶体管。现在学习的是第41页,共152页计算机所用的基本器件不仅由分立器件发展到集成电路,其速度也有显著的提高。器件的发展是推动系统结构和组成前进的关键因素和主要动力。随着生产工艺以及材料工艺的进展,单个器
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机系统结构的基本概念 计算机系统 结构 基本概念
限制150内