计算机组成原理第二章(第八讲)

上传人:今*** 文档编号:111115527 上传时间:2019-11-01 格式:PPT 页数:18 大小:370.50KB
返回 下载 相关 举报
计算机组成原理第二章(第八讲)_第1页
第1页 / 共18页
计算机组成原理第二章(第八讲)_第2页
第2页 / 共18页
计算机组成原理第二章(第八讲)_第3页
第3页 / 共18页
计算机组成原理第二章(第八讲)_第4页
第4页 / 共18页
计算机组成原理第二章(第八讲)_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《计算机组成原理第二章(第八讲)》由会员分享,可在线阅读,更多相关《计算机组成原理第二章(第八讲)(18页珍藏版)》请在金锄头文库上搜索。

1、计算机组成原理,第一章 计算机系统概论 第二章 运算方法和运算器 第三章 存储系统 第四章 指令系统 第五章 中央处理器 第六章 总线系统 第七章 外围设备 第八章 输入输出系统 第九章 并行组织,目录, 上一讲回顾,1.浮点加减法运算(掌握计算方法,例题25) 1.0 操作数的检查; 2.比较阶码大小并完成对阶; 3.尾数进行加或减运算; 4.结果规格化并进行舍入处理。 2.浮点乘除法运算(掌握计算方法,例题27) 1.0 操作数检查; 2.阶码加/减操作; 移移补 (mod 2n1) 移移补 (mod 2n1) 3.尾数乘/除操作; 4.结果规格化及舍入处理。,1.流水线原理 计算机的流水

2、处理过程同工厂中的流水装配线类似。为了实现流水,首先必须把输入的任务分割为一系列的子任务,使各子任务能在流水线的各个阶段并发地执行。将任务连续不断地输入流水线,从而实现了子任务的并行。因此流水处理大幅度地改善了计算机的系统性能,是在计算机上实现时间并行性的一种非常经济的方法。 在流水线中,原则上要求各个阶段的处理时间都相同。若某一阶段的处理时间较长,势必造成其他阶段的空转等待。因此对子任务的划分,是决定流水线性能的一个关键因素,它取决于操作部分的效率、所期望的处理速度,以及成本价格等等。 假定作业 T 被分成 k 个子任务,可表达为 TT1,T2,Tk 各个子任务之间有一定的优先关系:若ij,

3、则必须在 Ti 完成以后,Tj才能开始工作。具有这种线性优先关系的流水线称为线性流水线。线性流水线处理的硬件基本结构如图所示 :,2.6.3 浮点运算流水线,从图2.16可以看出,浮点数加减法由0操作数检查、对阶操作、尾数操作、结果规格化及舍入处理共4步完成,因此流水线浮点加法器可由4个过程段组成。图2.18仅示出了除0操作数检查之外的3段流水线浮点加法器框图。,假设有两个规格化的浮点数 X=1.100022 Y=1.110024 当此二数相加时,因X具有较小的阶码,首先应使它向Y对阶,从而得到X=0.011024,然后尾数再相加,其结果要进行规格化,将尾数向右移1位,阶码加1。即规格化的结果

4、为1.000125。 在图2.18所示的流水线浮点加法器框图中,标出了上述例子在每一个过程段和锁存器L中保存的流水运算结果值。 例29上述演示中 ,(1)假设每个过程段所需的时间为:求阶差 170ns,对阶 260ns,相加390ns,规格化 480ns,缓冲寄存器L的延时为 tl10ns,求 4 级流水线加法器的加速比为多少?(2)如果每个过程段的时间相同,即都为75ns,(包括缓冲寄存器时间),加速比是多少? 解: (1)加法器的流水线时钟周期至少为 90ns10ns100ns 如果采用同样的逻辑电路,但不是流水线方式,则浮点加法所需的时间为 1234 300ns 因此,4级流水线加法器的

5、加速比为 Ck300/1003 (2) 当每个过程段的时间都是75ns时,加速比为 Ck300/754,2.流水线浮点加法器,例30 已知计算一维向量,的求和表达式如下: 试用4段的浮点加法流水线来实现一维向量的求和运算,这4段流水线是阶码比较、对阶操作、尾数相加、规格化。只要求画出向量加法计算流水时空图。,运算流水线对向量计算显示出很大的优越性,即流水线被填“满”时具有较高的加速比和吞吐率。我们用字母 C,S,A,N 分别表示流水线的阶码比较、对阶操作、尾数相加、规格化四个段,那么向量加法计算的流水时空图如下图所示 。图中左面表示Xi,Yi两个元素输入流水线的时间,右面表示求和结果Zi输出流

6、水线的时间。每隔一个时钟周期,流水线便吐出一个运算结果。,1.CPU之外的浮点运算器 80x87是美国Intel公司为处理浮点数等数据的算术运算和多种函数计算而设计生产的专用算术运算处理器。由于它们的算术运算是配合8086CPU进行的,所以又称为协处理器。 现以80x87浮点运算器为例,说明其特点和内部结构。 (1)以异步方式与80386并行工作,80x87相当于386的一个I/O部件,本身有它自己的指令,但不能单独使用,它只能作为386主CPU的协处理器才能运算。因为真正的读写主存的工作不是80x87完成,而是由386执行的。如果386从主存读取的指令是80x87浮点运算指令,则它们以输出的

7、方式把该指令送到80x87,80x87接受后进行译码并执行浮点运算。80x87进行运算期间,386可取下一条其他指令予以执行,因而实现了并行工作。如果在80x87执行浮点运算指令过程中386又取来了一条80x87指令,则80x87以给出“忙”的标志信号加以拒绝,使386暂停向80x87发送命令。只有待80x87完成浮点运算而取消“忙”的标志信号以后,386才可以进行一次发送操作。 (2)可处理包括二进制浮点数、二进制整数、和压缩十进制数串三大类7种数据,其中浮点数的格式符合IEEE754标准。7种数据类型在寄存器中表示如下:,2.6.4 浮点运算器实例,此处S为一位符号位,0代表正,1代表负。

8、三中浮点数阶码的基值均为2。阶码值用移码表示,尾数用原码表示。浮点数有32位、64位、80位三种。80x87从存储器取数和向存储器写数时,均用80位的临时实数和其他6种数据类型执行自动转换。全部数据在80x87中均以80位临时数据的形式表示。因此80x87具有80位字长的内部结构,并有八个80位字长以“先进后出”方式管理的寄存器组,又称寄存器堆栈。,图2.20示出80x87的内部结构逻辑框图。由图看出,它不仅仅是一个浮点运算器,还包括了执行数据运算所需要的全部控制路线。就运算部分讲,有处理浮点数指数部分的部件和处理尾数部分的部件,还有加速移位操作的移位器路线,它们通过指数总线和小数总线与八个8

9、0位字长的寄存器堆栈相连接。这些寄存器按“先进后出”方式工作,此时栈顶被用作累加器;也可以按寄存器的编号直接访问任何一个寄存器。,1.浮点运算流水线(掌握) (1)流水线原理 画时空图,加速比与吞吐率的计算 (2)流水线浮点加法器 2.浮点运算器实例(了解),本 讲 总 结,第2章学习要求-1,掌握数据的定点格式,定点数的表达范围,有符号数和无符号数; 掌握浮点格式的表达,熟悉浮点数的规格化,掌握规格化单精度浮点数与实数的相互转换; 理解真值和机器数,熟练掌握定点整数、小数的补码、反码、原码和移码表示法; 掌握BCD码、ASCII码的编码规律; 区别汉字输入编码、汉字内码和字模码; 理解检验码

10、的作用,掌握奇偶校验以及检错能力。,奔腾CPU将浮点运算器包含在芯片内。浮点运算部件采用流水线设计。 指令执行过程分为8段流水线。前4 段为指令预取(DF)、指令译码(D1)、地址生成(D2)、取操作数(EX),在U、V流水线中完成;后4段为执行1(X1)、执行2(X2)、结果写回寄存器堆(WF)、错误报告(ER),在浮点运算器中完成。一般情况下,由U流水线完成一条浮点数操作指令。 浮点部件内有浮点专用加法器、乘法器和除法器,有8个80位寄存器组成的寄存器堆,内部的数据总线为80位宽。因此浮点部件可支持IEEE754标准的单精度和双精度格式的浮点数。另外还使用一种称为临时实数的80位浮点数。对

11、于浮点数的取数、加法、乘法等操作,采用了新的算法,其执行速度是80486的10倍多。,2.CPU之内的浮点运算器,第2章学习要求-2,掌握补码的加法运算和减法运算规律; 理解乘法运算和除法运算有关知识; 掌握多功能算数/逻辑运算单元先行进位等有关内容; 掌握溢出的概念,理解上溢(正溢)和下溢(负溢)的概念以及符号位检测方法; 了解内部总线和外部总线、单向总线和双向总线的概念; 理解浮点加减法的操作过程,了解其中对阶、规格化、舍入处理的作用; 了解IEEE754标准的4种舍入处理方法。,第二章 小结, 本章小结,数据可区分为数值型数据和非数值型数据。 根据基数和位的权数可将数据表示成二进制数(基数R为2),八进制数(基数R为8),十六进制数(基数R为16)等。数制之间可根据基数和位的权数实现相互之间的转换。 数的表示单位是位、字节和字。 定点表示法和浮点表示法可实现数据的有效表示,可根据精度及表示范围不同采用不同的表示方法。 带符号数的表示要注意符号的表示方法和小数点的位置。 计算机中数的表示方法有四种:原码表示法、补码表示法、反码表示法、移码表示法。 十进制的数据表示方法有:8421码等。 英文字符最常用的是ASCII码。 汉字的编码有输入码、内码、字型码等。 主要的数据校验码有:奇偶校验码、循环冗余校验码和海明校验码等。,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号