资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,计算机组成原理教学课件,王 诚 教授,清华大学计算机系,2009,年,10,月,第,1,章 计算机系统概述,(为何要学习这门课程,怎么学,如何要求,,课程主要内容简介),1.1,计算机系统的基本组成及其层次结构,1.2,计算机硬件的个功能部件及其功能,1.3,计算机系统主要的技术与性能指标,1.4,计算机的体系结构、组成和实现概述,1.5,计算机发展进步、分类和拓展应用进程,为什么要学习,计算机组成原理,这门课程,计算机组成原理是计算机专业本科生的一门统设必修的专业,基础课程,。在我们系强调培养计算机应用型人才,是把这门课程作为计算机系统平台的内容之一来安排的。,不是只有设计计算机硬件系统的人才要学这门课,计算机专业的人员都应该对其有所了解。,选择了计算机专业,终生要与计算机系统打交道、,要使用好计算机,就应该学习这门课,否则就算不上一名合格的计算机专业人员。总不该把计算机硬件系统看作为电视机一样的产品,开一下电源选选台能看节目了就行了。,计算机中有许多知识是到处都会用到的,是学习后续多门课程,(,系统结构,操作系统,编译原理,高级语言程序设计,计算机网络,数据库,),的基础,将来工作中如何想清楚、如何解决遇到的许多问题都会涉及到计算机的硬件问题。,1,课程有多难,能不能学好,说计算机组成原理课程不是太难学是不能令人信服的,说根本无法学好也缺乏足够的理由和证据。,从,计算机组成原理,的内容来讲,实在没有太多难懂的原理,与生活中遇到的许多很平常的现象大有同工异曲之处,它不像数学,没有多少理论推导,也没有物理学中的高深理论,不用冥思苦想,,接受它的规定和实现方案即可,。如果说难,难就难在计算机中的问题是我们平时从未接触到、更没亲眼看见过事物,,尚未碰到先怕三分,把本来简单的问题折腾复杂了,;,教师缺乏计算机系统设计的工程背景,进一步加剧了这个矛盾。,学生应该根据自己的实际水平和将来的工作要求,恰当地确定对自己学习这门课程的要求。,2,课程教学定位和教学要求,计算机组成原理课程教学应该建立在硬、软件组成大体完整的系统平台之上,无疑这是一门硬件内容为主的课程,但需要兼顾一点基础软件的课程,认为课程内容只限于纯硬件,(,裸机,),是很过时的认识,至少需要了解,汇编语言,以及计算机系统操作使用方面的基础知识,把,学习,和,使用,硬件结合起来。,教学过程中,要把学习原理知识和应用原理,解决实际问题,结合起来,避免泛泛地讲解书本内容,解决问题可以首先从看别人怎么用已知原理,设计实现实用,系统,再考虑自己能做些什么,实际工作,才会使学习更有趣味,更有用。学生可以对自己提出主要学懂基本原理并能通过考试为,底线要求,,和还有一定应用能力的,正常要求,。,3,这里说的计算机系统(,computer system,),是指,电子,数字,通用,计算机系统,三个定语各自表明了计算机系统的一个方面的特性。,“,电子,”一词表明使用电子线路(不同于机械、继电器等)来实现计算机硬件的关键逻辑功能;,“,数字,”一词表明使用的电子线路是数字式电路(不同于模拟电路),运算和处理的数据是二进制的离散数据(不同于连续的电压或电流量);,“,通用,”一词表明计算机本身功能多样,(,并非专用于某种特定功能,),,具有完成各种运算或数据处理能力,。,1,、计算机系统概述,4,计算机系统由硬件和软件两大部分组成,。,硬件,指由中央处理器、存储器以及外围设备等组成的实际装置,,硬件的作用是完成每条,指令,规定的功能,。,指令,是计算机运行的最小的功能单位,,指令,是,指,示计算机硬件执行某种运算、处理功能的命,令,。,软件,是为了使用计算机而编写的各种系统的和用户的程序,程序由一个序列的,计算机,指令,组成。,指令是用于设计程序的一种计算机语言,。,一台计算机提供的全部指令构成该计算机的,指令系统,。指令系统的设计质量关系到厂家和用户的利益。,硬、软件系统相互依存,分工互动,缺一不可,如同一个健全人的物质性的肉体和精神性的智力与思维。,计算机系统概述,5,汇编语言层,操作系统层,指令系统层,微体系结构层,数字逻辑层,高级语言层,应用层,计算机系统的层次结构,可以从,6,个层次,分析和看待计算机系统的基本组成。,最低的层属于,硬件部分,,硬件系统用于实现每条指令的功能,解决程序中指令间的衔接系。,上面的层属于,软件部分,,软件由按一定规则组织起来的许多条指令组成,完成一定的数据运算或者事务处理功能。,指令系统,处在硬件系统和软件系统之间,是硬、软件之间的接口部分,对两部分都有重要影响。,微体系结构层,软 件 系 统,硬 件 系 统,计算机系统的层次结构,6,软件是为了使用计算机而编写的各种系统的和用户的程序,程序由一个序列的,计算机,指令,组成。,在计算机系统的层结构中给出的基本软件包括操作系统和个级别的计算机语言。,操作系统主要完成对系统中的硬、软件资源的管理与调度分配,并向程序设计人员和计算机的操作者提供各种服务。,个级别的语言是,机器语言,(二进制代码语言)、,汇编语言,(符号语言)和,高级语言,(算法语言),使用它们设计程序的难易程度和工作效率差别很大。,计算机中的基本软件系统,7,以计算从,1,到,10,的累加和为例,看一看,3,个级别语言的程序例子,并简单介绍该机器语言程序在计算机内部的执行过程。,BASIC,程序,汇编语言程序,机器语言程序,(16,进制,),10 sum=0 2000:sub R15,R15 01FF,20 for i=1 to 10 sub R1,R1 0111,30 sum=,sum+i,mvrd,R0,0A 8800 000A,40 next i inc R1 0910,50 print sum add R15,R1 00F1,60 end,cmp,R1,R0 0310,jrnz,2004 47FC,cala,0664 CE00 0064,ret 8F00,三个级别的程序设计语言语言,15,数据运算部件,计算机控制部件,数据存储,部件,接口线路,数据输入设备,接口线路,结果输出设备,数据总线,地址总线,控制总线,计算机主机,计算机,外围设备,计算机的,CPU,硬件系统由,5,个功能部件组成,是,课程的核心内容,、计算机中的基本硬件系统,8,硬件系统由,5,个功能部件,组成。,数据输入设备,分担对程序和原始数据的输入功能,,数据存储部件,分担对程序和数据的存储功能,,数据运算部件,分担对数据的运算处理功能,,结果输出设备,分担对运算处理结果的输出功能。,控制器部件,则是依照每条指令的运行功能的需要,向各个部件或设备提供它们协调运行所需要的控制信号,在整个硬件系统中起到指挥、协调和控制的作用。图中间部位给出的是计算机的,种类型的总线,,可以看出,计算机的个功能部件正是通过这种类型的总线被有机地连接在一起,从而构成一台完整的、可以协调运行(执行程序)的计算机硬件系统。,计算机中的基本硬件系统,8,可以,把计算机想象为一个加工处理数据的工厂,,则数据运算部件就是,数据加工车间,,数据存储部件就是存放原材料、半成品和产品的,库房,,输入设备相当于,运入原材料的卡车,,输出设备相当于,运出最终产品的卡车,,控制部件则相当于承担领导指挥功能的,厂长和各个职能办公室,。在领导的正确指挥下,如果能够源源不断地取得原材料,工厂内又有存放的场所,车间能够对这些原材料进行指定的加工处理,加工后的产品可以畅通地运出去销售,则这个工厂(计算机)就纳入正常运行的轨道。,前面说的还只限于硬件,,当然号,必须有配套的软件系统,,例如工厂就需要有管理制度、运营策略等。,计算机中的基本硬件系统,8,(,1,)计算机的字长,在计算机系统内部,通常选用多少个二进制位来表示一个数据或一条指令是一个关键技术指标,例如,16,、,32,或者,64,位,这个位数被称为计算机的字长。例如在,32,位字长的计算机系统中,一个整数、一条指令通常都用,32,位二进制数表示,叫做一个字,运算器、存储器、数据和地址总线等通常都被设计成,32,位。字长对计算机的处理能力和运行性能有明显影响,字长较长有利于提高计算机的性能,但需要使用更多的硬件,计算机系统的价格也会高一些。,、计算机系统的主要技术与性能指标,7,(,2,),CPU,的速度,衡量,CPU,速度,通常有两种方式。,第一种方式是使用,CPU,主频,即每一秒钟提供给,CPU,的时钟脉冲的个数,通常用赫兹(,Hz,)表示,例如,500MHz,。但对不同厂家、不同系列的计算机系统,只用,CPU,主频来说明其运行速度则未必准确。,第二种方式是使用,CPU,每一秒钟能执行的指令条数,单位是,MIPS,(,million instructions per second,),其计算公式可以通过如下方式推导出来,,T=CPIT_ICI,,这里的,T,是执行一个程序占用的时间,,CPI,是执行一条指令平均使用的,CPU,时钟个数,,T_IC,是一个,CPU,时钟的时间长度,是,CPU,主频,f,的倒数,1/f,,,I,是这个程序的指令条数,,3,个数值的乘积就等于这个程序总的运行时间,T,。由此得到:,I=T/(CPI1/f)=,Tf,/CPI.,计算机系统的主要技术与性能指标,7,CPU,的速度,(,续,),当取,T=1s,,并假定,f,为,300MHz,,,CPI,为,4,,则计算出,CPU,系统的性能为,300/4,,即,75,个,MIPS,,即每秒执行,75,个百万条整数运算指令。若有办法使这台计算机的,CPI,尽量靠近,1,,则其运行性能就可以提高近,4,倍,这正是精简指令系统计算机(,RISC,)所追求的目标。,若进一步细化,可安如下办法计算出一个程序中全部指令的平均,CPI,:按照指令的执行步骤数对全部指令进行分类,同类指令的条数,这,类指令的,CPI,,再对各类指令的计算机结果求累加和,则累加和除以总指令条数就得到平均,CPI,,可以表示为,CPI,平均,=,CPI,j,I,j,/I,,这里的,j,是指令的种类编号(从,0n,)。,可以用,MFLOPS,表示对浮点数指令的运算速度。,计算机系统的主要技术与性能指标,7,(,3,)存储容量和读写速度,计算机中的存储器通常包括内存储器和外存储器两大类。,内存储器又被称为主存储器,通常用半导体器件实现,读写速度快,价格较高,通常容量要小一些,例如几百,MB,或几到十几,GB,,可供,CPU,通过指令直接访问。,外存储器又称辅助存储器、海量存储器等,主要包括磁盘设备、光盘设备、磁带设备等,读写速度要慢得多,价格较低,容量很大,例如几十、几百,GB,或几十,TB,,外存储器上的信息需要经过操作系统成批量地(而不是以字为单位)与内存储器进行交换。,内存储器的读写周期通常为几十,ns,到一二百,ns,,读写外存储器中的几百个字节数据的时间通常要几到十几,ms,,而连续读出辅存中的一大批数据所用时间平均到每个数据上可能要更短得多。,通常还关心单位时间内能够对主存储器读写数据的总量,单位时间内能对辅助存储器交换设据的总量。,当前的计算机系统中都采取了许多增加存储器容量和速度的技术措施。,计算机系统的主要技术与性能指标,7,(,4,)输入输出设备的入出速度,计算机的输入输出设备是计算机系统中比较复杂的部分,不同设备组成和运行原理各不相同,与计算机主机的连接与控制方式也多有差异,在电子线路之外还涉及到精密机械、光学、激光、电磁转换等许多知识。,不同的输入输出设备的运行速度各不相同,例如针式打印机每秒只能打印几个字符,而激光打印机则可以打印多行甚至几页打印纸的信息,键盘输入则主要取决于人员打字的速度。显示器的屏幕大小、分辨率高低、显示字符还是图形的不同内容、屏幕刷新频率等都对系统性能有重要影响。,目前的输入输出设备包含的种类特别多,远远超出了传统入出设备的概念,特别是随着多媒体技术的发展和应用,大量的电子设备已经成为现代
展开阅读全文