资源描述
,计算机组成原理,计算机组成原理,先修课程:,数字逻辑电路,课程性质:,专业必修课,学时分配:,课堂,64,学时,实验,16,学时,其他参考教材:,白中英 计算机组成原理 科学出版社,唐朔飞 计算机组成原理 高等教育出版社,后续课程:,计算机系统结构,课程历史沿革:,1987,年,中国计算机学会教育专业委员会推出我国计算机本科专业“,87,教程”,对,8,门重点课程(其中含计算机组成原理)提出了基本要求;,2002,年,中国计算机学会教育专业委员会、全国高等学校计算机教育研究会推出,中国计算机科学与技术学科教程,2002,,提出硬件课程包含“数字逻辑与数字系统”、“计算机组成”、“计算机体系结构”三大知识模块,;,2006,年,教育部高等学校计算机科学与技术教学指导委员会推出“高等学校计算机科学与技术专业发展战略报告暨专业规范”,仍然将“数字逻辑与数字系统”、“计算机组成”、“计算机体系结构”列为主干课程。,目 录,第,1,章 计算机系统概述,第,2,章 数据的表示和运算,第,3,章 存储器层次结构,第,4,章 指令系统,第,5,章 中央处理器,第,6,章 总线,第,7,章 输入输出系统,目 录,第,8,章 流水线处理技术,第,9,章并行计算机体系结构,第,1,章 计算机系统概论,1.1,计算机的发展历程,1.2,计算机系统的层次结构,1.3,计算机的性能指标,1.4,计算机的分类和应用,1.1,计算机的发展历程,根据制造计算机所使用的元器件的不同,电子计算机的发展依次经历了电子管时代、晶体管时代、中小规模集成电路时代、大规模和超大规模集成电路时代、甚大规模和极大规模集成电路时代等几个不同的发展阶段。,第一代,电子管计算机时代(,1946,1959,),电子管是封装在玻璃外壳内的一种电真空器件,如图,1.1,所示。世界上第一台电子数字计算机,ENIAC,(,Electronic Numerical Integrator And calculator,),,1946,年由美国宾夕法尼亚大学研制,字长,12,位,运算速度,5000,次,/,秒,使用,18800,个电子管、,1500,个继电器,功耗,150kw,,占地,170m2,,重达,30,吨,造价,100,万美元,如图,1.2,所示。,图,1.1,电子管,图,1.2,第一台电子数字计算机,ENIAC,第二代,晶体管计算机时代(,1959,1964,),晶体管,通常指的是晶体三极管,是用半导体材料制作出来、封装在一个金属壳内的带有三个管脚的小器件,,1958,年进入批量生产阶段。用它可以设计出实现反相功能的反相器线路,在此基础上,再实现出计算机使用的全部组合逻辑线路,和触发器、寄存器、计数器等各种时序逻辑线路。用分立的晶体管线路实现的计算机称为晶体管计算机。第二代计算机的体积和价格都下降了,使用的人也多起来了,计算机工业迅速发展,主要用于商业、大学教学和政府机关。,第三代,中小规模集成电路计算机时代(,1964,1970,),集成电路(,Integrated Circuit,,简称,IC,)是做在晶片上的一个完整的电子电路,这个晶片比手指甲还小,却包含了几千个晶体管元件。计算机的数据存储、运算、传输以及控制功能基本上都是由具有逻辑功能的各类门电路组成实现的,而门电路又是由晶体管、电阻、电容等组成,因此集成电路制造技术的发展可以实现将成百上千个门电路全部制作在一块极小的硅片上,这种技术的应用使得计算机的体积大大缩小,并且降低了功耗,提高了计算机的可靠性。第三代计算机的代表是,IBM,公司花了,50,亿美元开发的,IBM 360,系列。,第四代,大规模、超大规模集成电路计算机时代(,1970,至今),这个时代的计算机使用的元件依然是集成电路,不过,这种集成电路已经大大改善,它包含着几十万到上百万个晶体管,人们称之为大规模集成电路(,LargeScale lntegrated Circuit,,简称,LSI,)和超大规模集成电路(,Very Large Scale lntegrated Circuit,,简称,VLSI,)。,1975,年,美国,1BM,公司推出了个人计算机,PC,(,PersonaI Computer,),从此,人们对计算机不再陌生,计算机开始深入到人类生活的各个方面。,表,1.1,计算机发展历程中各个阶段的特点,年代,第一代,1946-1959,第二代,1959-1964,第三代,1964-1970,第四代,1970-,现在,电子器件,电子管,晶体管,集成电路,大规模、超大规模集成电路,存储器,延迟线,磁芯、磁鼓磁带、纸带,磁芯、磁鼓,磁带、磁盘,半导体存储器,磁芯、磁鼓,磁带、磁盘,半导体存储器,磁带、磁盘,光盘,处理方式,机器语言,汇编语言,监控程序,高级语言,实时处理,操作系统,实时,/,分时处理网络操作系统,应用领域,科学计算,科学计算,数据处理,过程控制,科学计算,系统设计等,科技工程领域,各行各业,运行速度,5000,至,3,万次,/,秒,几十万至,百万次,/,秒,百万至,几百万次,/,秒,几百万至,千亿次,/,秒,典型机型,ENIAC,EDVAC,IBM705,UNIVAC,IBM7094,CDC6600,IBM360,PDP 11,NOVA1200,ILLIAC-,VAX 11,IBM PC,1.2,计算机系统的层次结构,为了描述计算机系统的结构,首先要清楚地区分计算机结构和计算机组织两个概念。,计算机结构,:,对涉及机器语言或者汇编语言的程序设计人员所见到的计算机系统的属性,更多的情况下是指计算机的外特性。这些属性直接影响到程序的逻辑执行,主要包括指令集、表示各种数据类型的比特数、,I/O,机制以及内存访问技术等。,计算机组成,:,计算机各部件的具体组成以及它们之间的连接关系,实现机器指令级的各种功能和特性。从这一点上,计算机组成是计算机结构的逻辑实现。,图,1.3,计算机系统的层次结构,计算机系统通常包括硬件和软件两大部分,计算机的层次结构既是分配软硬件功能的一种模式描述,也是分析计算机系统的较好方法。,目前计算机系统层次结构分为六层,如图,1.3,所示。,1.2,计算机系统的层次结构,计算机硬件的基本组成,计算机系统的硬件部分从外观上看主要有主机、键盘、鼠标和显示器等组成;从逻辑功能上看,可以分为控制器、运算器、存储器、输入设备、输出设备五个部分,一般地又把运算器和控制器合称为中央处理器,(Central Processing Unit,CPU),。,计算机软件的分类,计算机软件,:计算机系统中的程序和文档。程序是对计算任务的处理对象和处理规则的描述;文档是为了便于了解程序所需的阐明性资料。计算机的软件按照面向对象的不同可以分为两类:系统软件和应用软件。,系统软件,:用于实现系统功能、管理系统的软件,为了便于人们使用计算机而设计。系统软件管理整个计算机系统,合理分配系统资源,确保计算机正确高效地运行。常用的系统软件有:操作系统、编译器、解释器、汇编器等。,应用软件:,面向用户的,针对某种特定应用而开发的软件。这类软件通常是实现用户的某类需求。例如安装在操作系统下的各类应用软件,用于企业的各类资源管理软件。,1.2.3,计算机的工作过程,计算机的工作过程就是将编制好的程序经过输入设备存放到主存储器中,并将程序存放的首地址传送到控制器中。,取指阶段,:首先,将指令从存储器读到指令寄存器。,分析阶段,:接着,它分析这条指令,指出指令要完成的操作,并指明操作数的地址。,执行阶段,:最后,根据指令分析的结果完成某种操作。,计算机的工作过程就是取指令、分析指令、执行指令,如此周而复始的过程。,1.3,计算机的性能指标,机器字长,:机器字长是指,CPU,一次能处理二进制数据的位数,实际上指该计算机中的运算器的位数。如某机器字长,32,位,表示该机器中,每次能完成两个,32,位二进制数的运算。通常,机器字长越长,计算机的运算能力越强,其运算精度也越高。,运算速度,:计算机的运算速度与很多因素有关,常用的性能指标如下:,(,1,),CPU,的主频,(,f,):,CPU,内部的工作频率,表示在,CPU,内数字脉冲信号震荡的速度,与,CPU,实际的运算能力并没有直接关系,但与,CPU,实际的运算速度存在一定的关系。因此,主频仅是,CPU,性能表现的一个方面,而不能代表,CPU,的整体性能。,外部工作频率,:简称外频。它是由主板为,CPU,提供的基准时钟频率,它表示的是系统总线的工作频率;而,倍频:,CPU,外频与主频相差的倍数。,主频,=,外频,倍频,(,2,),时钟周期(,T,),:,CPU,内部时钟频率的倒数。是,CPU,执行操作的最小时间元素。每个动作至少需要一个时钟周期。以,PC,系列微处理器为例,最初的,8086,和,8088,执行一条指令平均需要,12,个时钟周期,,CPU,的主频与,CPU,时钟周期互为倒数,即,(,3,),CPU,执行时间,:,CPU,执行某段程序所需的时间,通常用,t,CPU,表示。可以用下式来表示:,CPU,执行时间,CPU,时钟周期数,CPU,时钟周期长,(,4,),CPI,(,Cycles Per Instruction,):执行一条指令所需的时钟周期数。计算公式如下:,(,5,),MIPS,(,Million Instructions Per Second,):每秒执行多少百万条指令。定义为:,(,6,),MFLOPS,(,Million Floating-point Opereation Per Second,):每秒执行多少百万次浮点运算。定义为:,1.3.3,吞吐量和响应时间,(,1,)计算机范畴下的吞吐量分为两种:,网络范畴下的吞吐量,:在没有帧丢失的情况下,设备能够接受的最大速度。它的大小主要是由防火墙内网卡,及程序算法的效率决定的;,系统结构下的吞吐量,:在单位时间内,CPU,从存储设备中读取、处理、存储信息的量,单位是字节,/,秒(,B/S,),影响因素主要有存储设备的存取速度和,CPU,的性能,如主频、,CPI,等。,(,2,)响应时间,在操作系统中,指用户发出请求或指令到系统做出反应(响应)的时间。,例,1.,用一台,40MHz,处理机执行标准测试程序,它包含的混合指令数和相应所需的平均时钟周期数如下表所示:,求:有效,CPI,、,MIPS,速率、程序执行时间,t,CPU,。,指令类型,指令数,平均时钟周期数,整数运算,45000,1,数据传送,32000,2,浮点运算,15000,2,控制传送,8000,2,解:,CPI=,=(450001+320002+150002+80002)/,(,45000+32000+15000+8000,),=1.55(,周期,/,指令,),MIPS=f/(CPI10,6,),=(4010,6,)/(1.5510,6,)=25.81(,百万条指令,/,秒,),T=1/f=1/(4010,6,)(,秒,),t,CPU,=(450001+320002+150002+80002)/(4010,6,)=3.87510,3,(,秒,),1.4,计算机分类和应用领域,1.4.1,计算机分类,1.,按计算机信息的表示形式和对信息的处理方式分类,(,1,)数字计算机,该类计算机输入、处理、输出和存储的数据都是数字量,这些数据在时间上是离散的。,(,2,)模拟计算机,该类计算机输入、处理、输出和存储的数据都是模拟量,这些数据在时间上是连续的。模拟计算机由于受元器件质量影响,其计算精度较低,应用范围较窄,目前已很少生产。,2,按照计算机的用途分类,(,1,)通用计算机,通用计算机是为能解决各种问题,具有较强的通用性而设计的计算机。它具有一定的运算速度,有一定的存储容量,带有通用的外部设备,配备各种系统软件、应用软件。一般的数字式电子计算机多属此类。,(,2,)专用计算机,专用计算机是为解决某个或某类特定问题而设计的计算机。它的硬件和软件的配置依据解决特定问题的需要而定,并不求
展开阅读全文