计算机组成技术第2章第2章电子计算机的基本结构2.1冯·诺依曼计算机模型2.2电子计算机的组成结构2.3计算机系统的分类2.4电子计算机的性能评价2.5电子计算机的特点与发展趋势计算机组成技术第2章2.1冯·诺依曼计算机模型2.1冯·诺依曼计算机模型(最初的)计算机组成技术第2章2.1冯·诺依曼计算机模型冯·诺依曼计算机模型的特点1.计算机由运算器、存储器、输入/输出设备和控制器组成,并以运算器为中心连接在一起。2.存储器由一组一维排列、线性编址的存储单元组成,每个存储单元的位数是相等且固定的,存储单元按地址访问。3.“程序”是由一条一条的指令有序排列而成,而指令由操作码和地址码两部分组成。计算机组成技术第2章2.1冯·诺依曼计算机模型冯·诺依曼计算机模型的特点(续)4.指令和数据均采用二进制数表示,并以二进制数形式进行运算。5.程序(指令)与数据是同等地不加区分地存储在同一个存储器中。6.设置“程序计数器PC”来指示下一条将要执行的指令的地址。每执行完一条指令,程序计数器就自动加1,指向下一条指令的存储单元。计算机组成技术第2章2.1冯·诺依曼计算机模型冯·诺依曼计算机模型的改进:以存储器为中心连接在一起计算机组成技术第2章2.2电子计算机的组成结构2.2.1电子计算机的基本组成1.概述从组成的角度看,电子计算机由控制单元、运算单元、存储器、输入单元和输出单元组成。在具体实现时,通常将控制单元和运算单元集成在一起,构成处理单元(ProcessingUnit,PU)。处理单元也称处理器(Processor)。计算机组成技术第2章2.2电子计算机的组成结构2.2.1电子计算机的基本组成2.处理单元的组成从逻辑上看,PU主要由算术逻辑单元ALU、控制单元CU以及一些暂存单元——寄存器组成。ALU是计算机的运算装置,它能够完成“加、减、乘、除”等算术运算和“与、或、非、异或”等逻辑运算。一个基本的ALU由加法器、移位电路和若干内部寄存器及相应的控制逻辑组成。计算机组成技术第2章2.2电子计算机的组成结构2.2.1电子计算机的基本组成2.处理单元的组成CU是PU的指挥机构,由程序计数器PC、存放当前指令的指令寄存器IR、解释指令的指令译码器ID、发出各种命令信号的控制信号发生器CSG及相应的控制逻辑组成。CU依据指令译码器产生的一系列操作命令/信号来指挥、协调PU乃至计算机系统中各个部件的工作。计算机组成技术第2章2.2电子计算机的组成结构寄存器分为数据寄存器、地址寄存器和标志寄存器等。最常用的数据寄存器是用于存放加法运算结果的累加寄存器ACC,8086中的累加寄存器命名为AX。地址寄存器有基址寄存器、变址寄存器等。常见的标志有进位标志CF、溢出标志OF、零标志ZF、符号标志SF和奇偶标志PF等,这些标志分别占据标志寄存器FR中的不同位。计算机组成技术第2章计算机系统硬件的基本组成计算机组成技术第2章2.2电子计算机的组成结构2.2.1电子计算机的基本组成3.硬件(Hardware)硬件指构成电子计算机的物理实体,如处理器、存储器、输入/输出控制器等芯片及其集成这些芯片的印制线路板——主板,外设等。其中存储器包括:可以被处理器直接访问的主存储器(简称主存,MainMemory)和不可被处理器直接访问的辅助存储器(简称辅存,SecondaryMemory)计算机组成技术第2章2.2电子计算机的组成结构2.2.1电子计算机的基本组成4.软件(Software)广义上,软件是“计算机程序、过程、规则及与这些程序、过程、规则有关的文档,以及从属于计算机系统运行的数据。”狭义上,软件指发挥电子计算机功能的各种程序及相应的数据。按照性质和功能的不同,软件分为系统软件、应用软件、支持软件、测试与维护软件等。计算机组成技术第2章2.2电子计算机的组成结构2.2.1电子计算机的基本组成5.固件(Firmware)对于那些不再需要改动而且经常被调用的软件,为了使其有更快的执行速度,可以将其存储在访问速度较快的只读存储器ROM芯片中。由于ROM芯片具有非易失性(即掉电后信息不会丢失),所以可以将软件“固化”在硬件(ROM芯片)中。这种吸收软件、硬件各自优点,性能介于软件和硬件之间(执行速度快于软件,灵活性优于硬件)的,以硬件形式出现的软件称为“固件”。计算机组成技术第2章2.2电子计算机的组成结构2.2.1电子计算机的基本组成2.2.2计算机体系结构、计算机组成与计算机实现“计算机体系结构”(ComputerArchitecture)是计算机科学与技术学科中最重要的概念之一。但这一概念并不是同计算机或计算机科学与技术学科一起与生俱来的,它是在第一台电子计算机诞生近20年后,由G.M.Amdahl等人于1964年在设计IBMSystem/360时提出的。计算机组成技术第2章Amdahl的定义…theattributesofa[computer]systemasseenbytheprogrammer,i.e.theconceptualstructureandfunctionbehaviour,asdistinctfromtheorganizationofthedataflowsandcontrols,thelogicdesign,andthephysicalimplementation.Amdahl,BlaawandBrooks(1964)计算机组成技术第2章2.2.2计算机体系结构、计算机组成与计算机实现计算机体系结构是指程序员所看到的机器的属性,即机器的概念性结构和功能表现。这里,程序员主要是指汇编程序员。同一厂家生产的具有相同计算机体系结构的计算机被称为系列计算机,简称系列机。IBMS/360是计算机历史上的第一个系列机DEC公司有:PDP-11,VAX-11系列CRAY公司有:CRAY系列超级计算机Intel公司有:80x86系列微处理器计算机组成技术第2章概念性的结构(1)主存储器主存控制器CPUIOPIOP打印机磁盘机卡片机磁带机终端计算机组成技术第2章概念性的结构(2)计算机组成技术第2章概念性的结构(3)计算机组成技术第2章功能特性数据表示:硬件能够直接认别和处理的数据类型和格式;寄存器组织:操作数寄存器、变址寄存器、控制寄存器及专用寄存器的定义、数量和使用规则等;指令系统:机器指令的操作类型、格式,指令间的排序和控制机制等;中断系统:中断类型、中断级别和中断响应方式等;存储系统:最小编址单位、编址方式、主存容量、最大寻址空间等;处理机工作状态:状态的定义和切换方式,如管态和目态;输入输出系统:连接方式、数据交换方式、数据交换过程的控制等;信息保护,包括信息保护方式和硬件对信息保护的支持等。计算机组成技术第2章2.2.2计算机体系结构、计算机组成与计算机实现软件兼容(SoftwareCompatibility):同一个程序可以不加修改地在具有相同体系结构的各档机器上正确运行,唯一区别仅仅在于运行时间长短不同。安达尔就是以软件兼容(统一机器语言)的方式解决了程序的可移植性问题。不同厂家生产的具有相同计算机体系结构的计算机被称为兼容计算机,简称兼容机。计算机组成技术第2章2.2.2计算机体系结构、计算机组成与计算机实现硬件和软件在逻辑功能上是等价的。软件的功能在原理上可以由硬件或固件来实现,硬件的功能在原理上也可以由软件的模拟来实现,这就是计算机软件/硬件的等价性原理。计算机组成(ComputerOrganization)是计算机体系结构的逻辑实现。一种计算机体系结构可以有多种不同的计算机组成。计算机实现(ComputerImplementation)是计算机组成的物理实现。一种计算机组成也可以有多种不同的计算机实现。计算机组成技术第2章2.2.2计算机体系结构、计算机组成与计算机实现计算机体系结构的核心是指令集(InstructionSet)。指令集就是软、硬件功能划分的界面。指令对程序员是不透明的,但是指令的实现对程序员是透明的。计算机指令集的设计不是孤立的,它必须考虑体系结构的逻辑实现。计算机体系结构+计算机组成=计算机系统结构(微体系结构)计算机组成技术第2章2.2电子计算机的组成结构2.2.1电子计算机的基本组成2.2.2计算机体系结构、计算机组成与计算机实现2.2.3计算机系统的层次结构为什么要分层?分工与协作,提高生产率。计算机组成技术第2章第5级:应用语言虚拟机第4级:高级语言虚拟机第3级:汇编语言虚拟机第2级:操作系统虚拟机第1级:机器语言机器第0级:微程序机器计算机系统的层次结构计算机组成技术第2章2.2电子计算机的组成结构2.2.3计算机系统的层次结构虚拟机(VirtualMachine):因为用户在使用计算机时,看到的就是这些软件的界面,他并不了解也不必了解物理计算机内部的结构及工作原理。这些软件的界面向用户提供了他期望让计算机实现的全部功能。换句话说,这些软件的界面就是计算机所具有功能的具体体现。虚拟机的实现有解释(Interpretation)和翻译(Translation)两种途径。计算机组成技术第2章透明性(Transparency)本来存在的事物或属性,从某种角度看似乎不存在。例如:浮点数表示、乘法指令对高级语言程序员、应用程序员透明对汇编语言程序员、机器语言程序员不透明例如:数据总线宽度、微程序对汇编语言程序员、机器语言程序员透明对硬件设计者、计算机维修人员不透明体系结构设计,可以理解为:决定哪些事物对程序员透明,哪些事物对程序员不透明计算机组成技术第2章2.3计算机系统的分类2.3.1综述根据数据表示原理,电子计算机分为模拟式和数字式。模拟式电子计算机所处理的电信号在时间上是连续的,称为模拟电信号。模拟计算机的处理过程均由模拟电路来实现,处理速度快,但是电路复杂,处理精度低,抗干扰能力差,目前已很少使用。数字式电子计算机所处理的电信号在时间上是离散的,称为数字量。例如用电平的“高/低”来表示数值“1/0”,这样就可以用一组触发器的输出电平来表示一个二进制数值。增加组合位数就能增大数的表示范围和精度。计算机组成技术第2章2.3计算机系统的分类2.3.1综述依据性能的高低,可以将计算机分为超级计算机、大型计算机、中型计算机、小型计算机、工作站和微型计算机。按照结构集成的不同方式,微型计算机分为单片机和单板机。按设计目的不同,计算机分为专用计算机和通用计算机。根据计算机的用途不同,计算机分为个人计算机、工业控制计算机(简称工控机)、军用计算机和嵌入式计算机计算机组成技术第2章2.3计算机系统的分类2.3.1综述2.3.2弗林分类法按照指令流和数据流分别具有的多倍性,弗林将计算机分为以下4类:1.单指令流单数据流SISD2.单指令流多数据流SIMD3.多指令流单数据流MISD4.多指令流多数据流MIMD计算机组成技术第2章2.4电子计算机的性能评价评价计算机系统性能的指标非常多。与计算机主机有关的性能评价指标包括:基本字长、主存储器容量、处理速度、存储器的存取周期、处理器主频、软件兼容性等。与计算机系统有关的性能评价指标包括:系统软件的配置、吞吐率、响应时间、辅助存储器容量、外围设备的配置、RASIS特性、可扩缩性等。计算机组成技术第2章2.4电子计算机的性能评价1.基本字长指处理器中的算术逻辑单元所输入的操作数的二进制位数,也是处理器内部数据寄存器所包含的二进制位数。一个字(Word)通常是由若干字节(Byte)组成的。一个字节包含8个二进制位,所以字长是8的整数倍。早期微型计算机的基本字长有8位、16位,目前主要是32位、64位。基本字长决定了计算机中数据表示的范围与精度,所以它是评价计算机性能最重要的指标。但是字长越大,处理器的价格就越高。所以低端的数字设备或工业控制计算机仍然大量使用字长为16位、甚至8位的微处理器。计算机组成技术第2章2.4电子计算机的性能评价2.主存储器容量用主存储器的存储单元个数乘以存储单元宽度来表示,如102416表示主