Lecture8浮点运算和浮点运算器.ppt_第1页
Lecture8浮点运算和浮点运算器.ppt_第2页
Lecture8浮点运算和浮点运算器.ppt_第3页
Lecture8浮点运算和浮点运算器.ppt_第4页
Lecture8浮点运算和浮点运算器.ppt_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

问题 n1.5103 + 2.0104=? n1.5103 2.0104=? nX = 0.1101 201 Y = (0.1010) 211 nX +Y=? X Y=? 浮点数运算 课程结构 主要内容 n浮点数加减法 n浮点数乘除法 n浮点数运算流水线 x = Mx 2 Ex y = My 2 Ey (1) 求阶差 (2) 对阶原则 E = Ex Ey = Ex= Ey 已对齐 Ex Ey Ex Ey x 向 y 看齐 y 向 x 看齐 x 向 y 看齐 y 向 x 看齐 小阶向大阶看齐 Mx 1, My 1, Mx 1, My 1, = 0 0 0 Ex1 Ey+1 Ex+1 Ey1 1 对阶 左移会溢出; 右移只会影响 精度 例x = 0.1101 201 y = (0.1010) 211 阶和尾数都用补码表示,求 x + y 解:x补 = 00, 01; 00.1101 y补 = 00, 11; 11.0110 (1) 对阶 E补 = Ex补 Ey补= 00, 01 11, 01 11, 10 阶差为负( 2) Mx 2 Ex+ 2 对阶x补 = 00, 11; 00.0011 + 求阶差 阶为什 么用2位 符号位 ? 如果阶 用移码 会怎么 样? 2 尾数求和 Mx补 = 00.0011 My补 = 11.0110 11.1001 x+y补 = 00, 11; 11. 1001 + 对阶后的Mx补 尾数为 什么用2 位符号 位? x补 = 00, 01; 00.1101 y补 = 00, 11; 11.0110 x补 = 00, 11; 00.0011 (1) 规格化数的定义 (2) 规格化数的判断 r = 2 |M| 1 1 2 M0 真值 原码 补码 反码 规格化形式M 0规格化形式 真值 原码 补码 反码 0.1 0.1 0.1 0.1 原码 不论正数、负数,第一数位为1 补码 符号位和第 一数位不同 0.1 1.1 1.0 1.0 3 规格化 (3) 左规 (4) 右规 尾数左移一位,阶码减 1,直到数符和第一数位不同为止 上例 x+y补 = 00, 11; 11. 1001 左规后 x+y补 = 00, 10; 11. 0010 x + y = ( 0.1110)210 当 尾数溢出时,需 右规 即尾数出现 01. 或 10. 时 尾数右移一位,阶码加 1 当 尾数没溢出且未规格化时,需 左规 3 规格化 例 x = 0.1101 210 y = 0.1011 201 求 x +y(除阶符、数符外,阶码取 3 位,尾数取 6 位) 解:x补 = 00, 010; 00. 110100 y补 = 00, 001; 00. 101100 对阶 尾数求和 E补 = Ex补 Ey补 = 00, 010 11, 111 100, 001 阶差为 +1 My 1, Ey+1 y补 = 00, 010; 00. 010110 Mx补 = 00. 110100 My补 = 00. 010110对阶后的My补 01. 001010 + + 尾数溢出需右规 右规 x +y补 = 00, 010; 01. 001010 x +y补 = 00, 011; 00. 100101 右规后 x +y = 0. 100101 211 4. 舍入 在 对阶 和 右规 过程中,可能出现 尾数末位丢失 引起误差,需考虑舍入 (1) 0 舍 1 入法 (2) 恒置 “1” 法 4 舍入 设机器数为补码,尾数为 规格化形式,并假设阶符取 2 位,阶码的数值部分取 7 位,数符取2 位,尾数取 n 位,则该 补码 在数轴上的表示为 上溢下溢上溢 对应 负浮点数 对应 正浮点数 00,1111111;11.00 0 00,1111111;00.11 1 11,0000000;11.011 1 11,0000000;00.100 0 2127(1) 2-128(2-1+ 2-n) 2-1282-1 2127(12-n) 最小负数 最大负数 最小正数 最大正数 0 阶码 01, 阶码 01, 阶码 10, 按机器零处理 5 溢出判断 浮点加减运算小结 n方法:阶码相同时,尾数直接加减;阶码不同时,先对阶 ,再进行尾数加减。加减完成后需要规格化。 n步骤: 首先进行0操作数的检查,看有无简化操作的可能; 1. 比较阶码大小并完成对阶(小阶向大阶对齐); 2. 尾数进行加或减运算; 3. 结果规格化并进行舍入处理 4. 溢出判断 浮点加减运算流程 主要内容 n浮点数加减法 n浮点数乘除法 n浮点数运算流水线 浮点乘法和除法运算 n设有两个浮点数和: 2EM 2EM n2(EE)(MM) n2(EE)(MM) n乘除运算分为四步 0操作数检查 阶码加减操作 尾数乘除操作 结果规格化和舍入处理 阶码运算 n浮点数的阶码运算(移码的运算规则) nx移+y移=2n+x+y移 (n为不含符号位时整数的位数) x移+y移 =x补+2n+y补+2n =x+y补+2n+2n =x+y移+2n 两边同时加2n,有 尾数运算 n尾数处理 n截断 n舍入 n尾数用原码表示时 n只要尾数最低为1或者移出位中有1数值位,使最低位置1 n0舍1入 n尾数用补码表示时 n丢失的位全为0,不必舍入 (对真值没有影响)。 n丢失的最高位为0,以后各位不全为0时;或者最高为1,以后各 位全为0时,不必舍入。 n丢失的最高位为1,以后各位不全为0时,则在尾数的最低位入1( 加1)的修正操作。 0.xxxx;xxxx 0.xxx1;xx1x 0.xxx1;1xxx 机器数 真值 舍入后真值 0.10,01 1.10,01 -0.0111 -0.10 1.10,10 -0.0110 -0.10 0.10,11 0.1011 0.11 1.10,11 -0.0101 -0.01 1.11,11 -0.0001 0 1.01,11 -0.1001 -0.10 举例 例 设有浮点数250.0110011,23( 0.1110010),阶码用4位移码表示,尾数(含符号位)用8位补码 表示。求浮。要求用补码完成尾数乘法运算,运算结 果尾数保留高8位(含符号位),并用尾数低位字长值处理舍入 操作。 移码采用双符号位,尾数补码采用单符号位,则有 M补0.0110011, M补1.0001110, E移01 011, E补00 011, E移00 011, 浮00 011, 0.0110011, 浮01 011, 1.0001110 解: 移码采用双符号位,尾数补码采用单符号位,则有 M补0.0110011, M补1.0001110, E移01 011, E补00 011, E移00 011, 浮00 011, 0.0110011, 浮01 011, 1.0001110 (1)判断操作是否为”0”,求阶码和 EE移E移E补00 01100 01100 110, 值为移码形式2。 (2) 尾数乘法运算可采用补码阵列乘法器实现,即有 M补M补0.0110011补1.0001110补 1.1010010,1001010补 (3) 规格化处理 乘积的尾数符号位与最高数值位符号相同,不是规格化的数,需要左 规,阶码变为00 101(-3), 尾数变为 1.0100101,0010100。 (4) 舍入处理 尾数为负数,取尾数高位字长,按舍入规则,舍去低位字长,故尾数 为1.0100101 。 最终相乘结果为 浮00 101,1.0100101 其真值为 23(0.1011011) 主要内容 n浮点数加减法 n浮点数乘除法 n浮点数运算流水线 流水线基本概念流水线基本概念 1. 1. 产品生产流水线产品生产流水线 (1) (1) 一个问题一个问题 假设某产品的生产需要假设某产品的生产需要4 4道工序,该产品生产车间以道工序,该产品生产车间以 前只有前只有1 1个工人,个工人,1 1套生产该产品的机器。该工人工作套生产该产品的机器。该工人工作 8 8小时,可以生产小时,可以生产120120件(即每件(即每4 4分钟生产分钟生产1 1件,每道件,每道 工序需工序需1 1分钟)。分钟)。 要将该产品日产量提高到要将该产品日产量提高到480480件,如何能实现目标?件,如何能实现目标? (2) (2) 两种解决方案两种解决方案 方案一:增加方案一:增加3 3名工人、名工人、3 3套设备。套设备。 方案二:产品生产采用流水线方式,分为方案二:产品生产采用流水线方式,分为4 4道工序;道工序; 增加增加3 3名工人,每人负责一道工序。名工人,每人负责一道工序。 流水线基本概念流水线基本概念 (3) (3) 两种方案的工作过程对比两种方案的工作过程对比 两种方案中,单件产品的生产时间均不变。两种方案中,单件产品的生产时间均不变。 但在稳定情况下,但在稳定情况下, 方案一:每方案一:每4 4分钟,分钟,4 4件产品同时进入流水线,件产品同时进入流水线,4 4 件成品同时离开流水线,需要增加件成品同时离开流水线,需要增加3 3套设备。套设备。 方案二:每分钟,方案二:每分钟,1 1件产品进入流水线,件产品进入流水线,1 1件成品件成品 离开流水线,不需要增加任何设备。离开流水线,不需要增加任何设备。 流水线基本概念流水线基本概念 (4) (4) 方案二的主要特点方案二的主要特点 每件产品还是要经过每件产品还是要经过4 4道工序处理,单件产品的加工道工序处理,单件产品的加工 时间并没有改变,但它将各个工人的操作时间重叠时间并没有改变,但它将各个工人的操作时间重叠 在一起,使得每件产品的产出时间从表面上看是从在一起,使得每件产品的产出时间从表面上看是从 原来的原来的4 4分钟缩减到分钟缩减到1 1分钟,提高了产品的产出率。分钟,提高了产品的产出率。 流水线基本概念流水线基本概念 提高并行性的两个渠道 n空间并行性:增加冗余部件,如增加多操作部件处理 机和超标量处理机 n时间并行性:改善操作流程如:流水线技术 流水线原理 n在流水线中必须是连续的任务,只有不断的提供任务才能充 分发挥流水线的效率 n把一个任务分解为几个有联系的子任务。每个子任务由一个 专门的功能部件实现 n在流水线中的每个功能部件之后都要有一个缓冲寄存器,或 称为锁存器 n流水线中各段的时间应该尽量相等,否则将会引起“堵塞”和 “断流”的现象 n流水线需要有装入时间和排空时间,只有当流水线完全充满 时,才能充分发挥效率 流水线原理 设过程段 Si所需的时间为i,缓冲寄存器的延时为 l,线性流水线的时钟周期定义为 maxilml 流水线处理的频率为 f1/。 流水线原理 n一个具有k 级过程段的流水线处理 n 个任务需要的时 钟周期数 Tkk(n1), 所需要的时间为: TTk 而同时,顺序完成的时间为:Tnk nk级线性流水线的加速比: Ck TL nk . Tk k(n1) 流水线浮点运算器 Aa2P, Bb2q 在4级流水线加法器中实现上述浮点加法时,分为以下操 作: (1) 求阶差 (2) 对阶 (3) 相加 (4) 规格化 小结 n浮点数加减法的过程 n对阶、尾数加减、规格化(左规,右规)(含溢出判断)、 舍入处理 n浮点数乘除法的过程 n阶码加减、尾数乘除、规格化(含溢出判断)、舍入处理 n流水线概念及浮点运算器中的流水线 作业8

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论