您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 《计算机系统结构教程》电子教案第2章
第2章计算机系统结构中央处理器总线结构输入/输出系统通道处理机输入/输出处理机2.1中央处理器在计算机系统中,中央处理器(CPU)是整个计算机的核心,它的性能主要取决于数据处理、传输宽度和时钟频率。随着电子技术的进步,中央处理器发展非常迅猛,从早期的单核运算到现在的多核处理器,同时也使计算机的体系结构发生了很大的变化。2.1.1CPU的组成无论何种类型的CPU计算机系统,一个计算机系统主要由软件和硬件两大部分组成。计算机系统的硬件是指计算机系统中任何电子的、磁性的、光学的和机械的装置,它一般包括运算器、存储器、控制器和I/O部件等几部分。运算器和控制器等又称为中央处理器(CPU),如图2-1所示。1.PentiumCPUPentium采用了与80X86处理器完全不同的结构,Pentium有32位地址总线、64位数据总线,两条流水线(U、V流水线),两个8KB的Cache(8KB代码Cache和8KB数据Cache)。Pentium芯片引脚按其功能分为:时钟、数据总线、地址总线、总线控制、中断、超高速缓存窥视、页面超高速缓存控制、突发就绪、数据出错报告等。Pentium处理器体系上有4个大的突破:①采用了超标量流水线:Pentium有U和V两条指令流水线,每条流水线都有ALU(算术逻辑单元)、地址生成单元、Cache接口,同时可以执行两条整型指令;②独立的数据Cache和指令Cache:Pentium有两个8KB的Cache,一个作为数据Cache,另一个作为指令Cache,每个Cache均通向U和V流水线;③新的浮点单元:浮点单元在80486的基础上做了彻底改进,执行过程分8级流水线,一个时钟周期可完成一个浮点的运算;④分支预测:Pentium的BTB(分支目标缓冲器)动态预测程序分支,保证指令预取不会空置。2.双核处理器双核处理器就基于单个半导体的一个处理器上拥有两个一样功能的处理器核心,即是将两个物理处理器核心整合入一个内核中。双核架构并不是什么新技术,此前双核心处理器一直是服务器的专利,现在已在桌面计算机中。Intel处理器的双核构架如图1.4所示。2.1.2数据表示计算机中采用的数据类型主要有两类:(1)基本数据类型,包括位、串、整数、实数、字符和布尔量等;(2)结构数据类型,包括向量、数据、字符串、堆栈、队列、记录等。计算机如何存储器中用0和1表示这些数据,即计算机的数据表示。数据类型不同于数据,数据类型除了指一组值的集合外,还定义了可作用于这个集合上的操作集,如一组整数值的集合,连同定义在这个集合上可进行的加减乘除等算术操作,这个整数的集合就是整数数据类型。在选择计算机的数值的表示方式时,需要考虑以下几个因素:(1)要表示的数的类型(小数、整数、实数和复数);(2)可能遇到的数值范围;(3)数值精确度;(4)数据存储和处理所需要的硬件代价。1.定点数与浮点数计算机处理的数值数据多数带有小数,小数点在计算机中通常有两种表示方法,(1)约定所有数值数据的小数点隐含在某一个固定位置上,称为定点表示法,简称定点数;(2)小数点位置可以浮动,称为浮点表示法,简称浮点数。(1)定点数表示法(Fixed-point)定点格式即约定机器中所有数据的小数点位置是固定不变的。在计算机中通常采用两种简单的约定:将小数点的位置固定在数据的最高位之前,或固定在最低位之后。一般常称前者为定点小数,后者为定点整数。定点小数是纯小数,约定的小数点位置在符号位之后、有效数值部分最高位之前。若数据X的形式为X=X0.X1X2…Xn(其中X0为符号位,X1~Xn是数值的有效部分,也称为尾数,X1为最高有效位),则在计算机中的表示形式为:定点整数是纯整数,约定的小数点位置在有效数值部分最低位之后。若数据X的形式为X=X0X1X2…Xn(其中X0为符号位,X1~Xn是尾数,Xn为最低有效位),则在计算机中的表示形式为:(2)浮点数表示法(Floating-pointNumber)任意一个J进制数N,总可以写成:N=JE×M式中M称为数N的尾数,是一个纯小数;E为数N的阶码,是一个整数,J称为比例因子JE的底数。这种表示方法相当于数的小数点位置随比例因子的不同而在一定范围内可自由浮动,称为浮点表示法。浮点表示能扩大数据的表示范围,但浮点机在运算过程中,仍会出现溢出现象。图2-5给出了阶码占3位,尾数占5位(各包括1位符号位)时规格化浮点数的数值表示范围。2.向量数据表示在标量计算机中,由于没有专门的向量数据表示,在计算一个向量(相当于一维数组的计算)时,每取用一个数据元素,都要用到计算该元素的地址。而在向量机中,由于有了向量数据表示,就可以把一个向量用一个位串来表示出来。向量指令就是能够用一条指令对向量的全部元素进行运算的指令。3.自定义数据表示为了减少高级语言与机器语言之间的差别,采用了自定义数据表示,就是由数据本身来表明数据类型,这样可以使每种指令的种类大为减少,称为通用化指令。自定义数据表示有带标志符数据表示和数据描述符表示。(1)带标志符数据表示就是对每一个数据都附加一个标志符,由这个标志符来表示这个数据的类型。这种表示法的优点是:简化指令系统;易于对编程查错;自动类型转换;简单化编译;方便程序调试。缺点是增加存储空间又使指令执行速度变慢。(2)数据描述符表示,主要用来描述复杂和多维结构的数据类型,如向量、记录等。它与带标志符数据表示不同之处是:①标志符与每个数据相连,两者合存在一个存储单元中;而描述符则和数据分开存放;②要访问数据集中的元素时,先访问描述符,这至少增加一级寻址;③描述符看成是程序一部分,而不是数据的一部分。标志符则可看作是数据的一部分。2.1.3指令格式优化指令格式优化设计的主要目标有,(1)节省程序的存储空间;(2)指令格式要尽量规整,以减少硬件译码的复杂程度。指令格式优化后,不应该降低指令的执行速度(如由于一条指令在主存储器中存放时,跨越了多个存储字,在读取指令时增加了访问存储器的次数)。1.指令的组成一般的指令主要由两部分组成,操作码和地址码。2.Huffman编码法Huffman编码法是1952年由Huffman提出的一种可变字长编码(VLC)。采用Huffman编码法表示操作码,必须先知道各种指令在程序中出现的概率,这可通过对典型程序统计得到。根据Huffman编码法的原理,操作码的最短长度可通过下式计算:Pi表示第i种操作码在程序中出现的概率,一共有n种操作码。如果采用固定长操作码,n种操作码共需要个二进制位,因此固定长度操作码的信息冗余量为:nipipiH12lognpipiRni212loglog1n2log3.扩展编码法Huffman编码法能使操作码的平均长度最短,信息的冗余量最小。然而,这种编码方法所形成得操作码很不规整。这不利于硬件的译码,也不利于软件的编译,也很难与地址码配合,形成有规则长度的指令编码。在许多处理机中,采用了一种新的折中的方法,称为扩展编码法。这种方法是由固定长操作码与Huffman编码法相结合形成的。对于上节中有7条指令的模型机例子,如果采用扩展编码法编排操作码,可有多种方法。4.缩短地址码长度的方法在一般计算机系统中,逻辑地址空间的大小是确定的,缩短地址码长度的目的是要用一个比较短的地址码表示一个比较大的逻辑地址空间,同时也要求有比较灵活有效的寻址方式。缩短地址码长度的方法很多,现举几个常用的例子如下:(1)用间址寻址方式缩短地址码长度。在主存储器的低端开辟出一个专门用来存放地址区域,由于表示存储器低端部分的地址所需要的地址码长度可以很短,而一个存储字(一次访问存储器所能获得的数据)的长度通常与一个逻辑地址码的长度相当。(2)用变址寻址方式缩短地址码长度。由于程序的局部性,在变址寻址方式中使用的地址偏移量可以比较短。(3)用寄存器间接地址方式缩短地址码长度。由于寄存器的数量比较少,通常表示一个寄存器的地址只需要很少几位,而一个寄存器的字长足可以放下一个逻辑地址。寻址技术是指寻找数据及其它信息的地址的技术,它是软件与硬件的一个主要分界面。寻址技术要研究的主要内容包括编址方式、寻址方式和定位方式等。寻址技术研究的对象主要有寄存器、主存储器、堆栈和输入输出设备等。1.编址单位常用的编址单位有字编址、字节编址和位编址等。下面主要以主存储器的编址方式为例说明各种编址单位的优缺点。字编址是实现起来最容易的一种编址方式,因为每个编址单位与设备的访问单位一致,即每个编址单位所包含的信息量(如二进制位数)与访问一次设备(指读或写一次寄存器、主存储器或输入输出设备等)所获得的信息量是相同的。早期的大多数机器都采用这种编址方式,目前,仍在部分机器采用字编址方式。2.1.4寻址方式2.寻址方式寻找操作数及数据存储单元的方法称为寻址方式。在计算机中主要的寻址方式有如下几种类型:(1)立即数寻址直接在指令的地址码部分给出操作数,这种寻址方式不需要数据存储单元,指令的执行速度快。但只能用于源操作数寻址,数据的长度不能太长,大量使用立即数寻址方式会使程序的通用性下降。立即数寻址方式通常仅仅用来指定一些精度要求不高的整型常数。(2)寄存器寻址指令在执行过程中所需要的操作数来源于寄存器,运算结果也写回到寄存器中,这种寻址方式在所有的RISC计算机及大部分的CISC计算机中得到广泛应用。寄存器寻址方式的指令格式主要有:OPCROPCR,ROPCR,R,ROPCR,M(3)主存寻址主存寻址是所有计算机中都普遍采用的一类寻址方式,其寻址种类也最为复杂。主存寻址的指令格式主要有:OPCMOPCM,MOPCM,M,M(4)堆栈寻址堆栈寻址方式的地址是隐含的,在指令中不必给出操作数的地址。因此,指令的长度很短,一般的形式有:OPCOPCM2.2.1总线的分类计算机系统除中央处理器CPU外,还有存储器、系统总线、接口电路、外部设备等多个部分。总线主要有如下指标:(1)总线宽度。总线宽度通常指的是其一次操作可以传输的数据位数,通常算机系统的总线宽度不会超过其CPU的外部数据总线宽度。(2)总线频率。总线通常都有一个基本时钟,这个时钟是总线工作的最高频率时钟。(3)单个数据传输周期数。传输方式不同,每个数据传输所用的时钟周期数也不同。2.2总线结构根据总线的用途和应用场合,总线可分为下面各种类型:(1)系统总线,也称板级总线,用于计算机内部各个模块、器件之间的数据通信,是构成微型计算机系统的总线。(2)外总线,一般又称通信总线,用于计算机与各个外部设备、计算机、仪器仪表连接通信的总线,这种总线不是计算机所专有的,通常是借用电子、控制等领域已有的总线标准并加以应用而形成的。(3)内部总线,一般指集成电路内部或模块内部各个功能部件之间连接的总线,往往有独立的总线周期和总线时序,用户不能更改其总线特性。各级总线之间的关系示意如图2-8所示。一个计算机系统由微处理器、存储器、输入/输出等部分组成,计算机的各个部件均通过系统总线来连接。总线就是计算机之间、模块与模块之间传递信息的一束束信号线的集合,为各模块间和各部件间提供标准信息通路。计算机系统的结构有以处理器为中心的面向处理机的结构和以总线为中心的面向总线的结构。面向处理机的总线结构是将需要交换信息的模块通过总线建立点到点的连接,这也是当前计算机机总线的基本形式,如图2-9所示。2.2.2总线结构的特点面向总线的标准结构是以总线为中心,计算机的所有设备(包括CPU等)均看作总线挂接的外设,如图2-10所示。这种面向总线的结构有如下优点:(1)简化了硬、软件的设计:由于面向总线的结构总线是严格定义的,因此只需将按照标准设计的CPU、存储器和I/O设备以插件形式挂入总线,并辅以软件即可工作,不需专门设计存储器和I/O设备。(2)简化了系统结构:面向总线结构节省连接线,使系统清晰明了。系统中所有的插件板都采用统一信号线,可用短线连接,便于印刷成板,使系统设计制造简单。(3)便于系统扩充和更新:用户可根据自己的需要,选购相应的插件板,使计算机系统从规
本文标题:《计算机系统结构教程》电子教案第2章
链接地址:https://www.777doc.com/doc-6070938 .html