首页 第二章 2.5定点运算器

第二章 2.5定点运算器

举报
开通vip

第二章 2.5定点运算器null2.5 定点运算器的组成与结构 2.5 定点运算器的组成与结构 2.计算机的基本逻辑运算按位求反,即求反运算使1变0,0变1。 若数x= x0x1x2…xn,则 。 2. 5. 1 逻辑运算1.逻辑数通常用“1”表示逻辑真,用“0”表示逻辑假的非数值数据。(1)逻辑非( )运算对两个数进行逻辑加,就是按位求它们的“或”, 若x= x0x1x2…xn,y= y0y1y2…yn,x∨y=Z= Z0Z1Z2…Zn,则 Zi=xi∨y...

第二章 2.5定点运算器
null2.5 定点运算器的组成与结构 2.5 定点运算器的组成与结构 2.计算机的基本逻辑运算按位求反,即求反运算使1变0,0变1。 若数x= x0x1x2…xn,则 。 2. 5. 1 逻辑运算1.逻辑数通常用“1” 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 示逻辑真,用“0”表示逻辑假的非数值数据。(1)逻辑非( )运算对两个数进行逻辑加,就是按位求它们的“或”, 若x= x0x1x2…xn,y= y0y1y2…yn,x∨y=Z= Z0Z1Z2…Zn,则 Zi=xi∨yi  (i=0,1,2,…,n)。 (2)逻辑加(∨或+)运算2.5.1 逻辑运算2.5.1 逻辑运算(3)逻辑乘(∧或·)运算对两数进行逻辑乘,就是按位求它们的“与”。若x= x0x1x2…xn,y= y0y1y2…yn,若x∧y=Z=Z0Z1Z2…Zn, 则Zi=xi∧yi  (i=0,1,2,…n)。(4) 逻辑异(⊕)运算 若x= x0x1x2…xn,y= y0y1y2…yn,x⊕y=Z= Z0Z1Z2…Zn, 则 Zi=xi⊕yi  (i=0,1,2,…n)。 对两数进行逻辑异,就是按位求它们的模2加。解: =0100 x∨y=1111 x∧y=0001 x⊕y=1110 【例2.29】 设两数x=1011,y=0101,求 ,x∨y,x∧y,x⊕y。2.计算机的基本逻辑运算2.5.1 逻辑运算2.5.1 逻辑运算3.逻辑运算的特点 ① 按位进行,各位的结果互不牵连;所以无借位, 进位,溢出等问题;③ 每一位都可看成一个逻辑变量。 所以无符号位, 数值位,阶码和尾数的区分。 ② 运算简单;2. 5. 2 多功能算术/逻辑运算单元(74181) 2. 5. 2 多功能算术/逻辑运算单元(74181) 由控制参数S3S2S1S0 将操作数Ai、Bi组成函数Xi、Yi,再送全加器相加,由于S3S2S1S0 有不同的组合,另加算逻运算控制端M,便可实现多种算逻运算。 1.设计多功能算术逻辑部件的基本思想null式中: i=0,1,2,3 是同一片ALU的二进制位数; n为多片组成ALU的每片进位输入,如n=0,4, 8 …。 算逻运算单元的逻辑式:Fi=Xi⊕Yi⊕Cn+i Cn+i+1=XiYi+YiCn+i+XiCn+i2.5. 2 多功能算术逻辑部件(74181)2.5. 2 多功能算术逻辑部件(74181) 2.逻辑表达式可以证明: Xi+Yi=Xi Xi ·Yi=Yi2. 5. 2 多功能算术逻辑部件(74181)2. 5. 2 多功能算术逻辑部件(74181) 2.逻辑表达式(2)全加器 可见,Xi既是一个操作数,又是进位传递函数; Yi既是一个操作数,又是进位产生函数。2. 5. 2 多功能算术逻辑部件(74181)2. 5. 2 多功能算术逻辑部件(74181) 2.逻辑表达式(3)74181 ALU片内进位递推公式Cn+4=G+PCn=Y1+X1Y0 +X1X0C0=Y2+X2Y1 +X2X1Y0 +X2X1X0C0=Y3+X3Y2 +X3X2Y1 +X3X2X1Y0 +X3X2X1X0C0null2. 5. 2 多功能算术逻辑部件(74181) 2.逻辑表达式(5)74181 ALU的工作方式2. 5. 2 多功能算术逻辑部件(74181)小结:同一个ALU电路,既可以用于负逻辑 数,也可用于正逻辑数——方便。使 用哪一种逻辑数,取决于数据通路的 电平配合——省器件,速度。2. 5. 2 多功能算术逻辑部件(74181) 3.74181 ALU实现的算术/逻辑运算(2)M,S3-S0控制的操作类型2. 5. 2 多功能算术逻辑部件(74181)null C16=G3+P3C12=G3+P3G2+P3P2G1+P3P2P1G0+P3P2P1P0C0由16片74181组成64位ALU特点:组(片)内并行进位,组(片)间串行进位。进一步提高速度的做法:使组间并行进位。C4=G0+P0C0 C8=G1+P1C4 C16=G3+P3C12C12=G2+P2C8 4.先行进位部件74182 CLAC8=G1+P1C4=G1+P1G0+P1P0C0 C12=G2+P2C8=G2+P2G1+P2P1G0+P2P1P0C0null 4.先行进位部件74182 CLA(1)74182 CLA进位逻辑式C16=G3+P3C12=G3+P3G2+P3P2G1+P3P2P1G0+P3P2P1P0C0=G*+P*C0写成一般表达式2. 5. 2 多功能算术逻辑部件(74181)2. 5. 2 多功能算术逻辑部件(74181) 4.先行进位部件74182 CLA2. 5. 2 多功能算术逻辑部件(74181)2. 5. 2 多功能算术逻辑部件(74181) 4.先行进位部件74182 CLA(2)74182 CLA与74181 ALU的配套使用例子:由2片74182和8片74181组成的32位ALUnull(2)74182 CLA与74181 ALU的配套使用例子:由2片74182和8片74181组成的32位ALUC7=y6+x6y5+x6x5y4+x6x5x4C4 C18=y17+x17y16+x17x16C16 C25=y24+x24C24C4=G0+P0C0 C16=G3+P3C12 C24=G5+P5G4+P5P4C162. 5. 2 多功能算术逻辑部件(74181)2. 5. 2 多功能算术逻辑部件(74181) 4.先行进位部件74182 CLA(2)74182 CLA与74181 ALU的配套使用Cn+x,Cn+y,Cn+z和P*,G*由74182产生。当n=0时, Cn+x=C4,Cn+y=C8,Cn+z=C12, C4,C8,C12同时形成。P*是三级先行进位的中组进位传递函数, G*是三级先行进位的中组进位产生函数。Pi(i=0~7),Gi (i=0~7) 由74181产生。2.5.3 内部总线2.5.3 内部总线总线—能为多个功能部件传送信息的一组传输线。 null(1) 总线的分类双向总线----可以双方向传送信息的总线, 如DB。 ① 按所处的位置不同分:内部总线----CPU内各部件之间互相连接的总线;② 按逻辑结构的不同分:单向总线----只能单方向传送信息的总线, 如AB、CB; 外部总线(系统总线)----系统内各大部件(CPU,MEM,I/O) 之间的连接总线。null(2).实现总线连接的三态缓冲器 三态:输出电平可具有“逻辑1”、“逻辑0”或高阻(浮空)状态。 null2.5.4 定点运算器的基本结构及组成实例 2.5.4 定点运算器的基本结构及组成实例 1.定点运算器的基本结构 特点:控制电路简单,操作速度比较慢。(1) 单总线结构的ALU双操作数分时经总线进入锁存器A和B,结果也通过单总线送回。null2.5.4 定点运算器的基本结构及组成实例 特点:操作速度较快。 例如:加法操作 (2). 双总线结构的ALU 两操作数通过各自的总线送到加法器运算,结果通过其中一总线送回。2.5.4 定点运算器的基本结构及组成实例 1.定点运算器的基本结构 null2.5.4 定点运算器的基本结构及组成实例 2.5.4 定点运算器的基本结构及组成实例 1.定点运算器的基本结构 特点:操作速度快,但所需总线多。 (3) 三总线结构的运算器两操作数和操作结果通过各自的总线传送。 例如:加法操作* 总线旁路器:使传送操作经它直接输出,速度快nullnull2.运算器组成实例 A L U2.6 浮点运算方法和浮点运算器 2.6 浮点运算方法和浮点运算器 ① 浮点加减法(2.51) (Ex<Ey ) 浮点数的运算包括了阶和尾数两部分的运算, 它们的运算可以使用任一种相应的定点运算进行。(Ex≥Ey) 或 null(2.52)(2.55)② 浮点乘法: ③ 浮点除法: ( ≠0)2. 6. 1 浮点加减法运算2.取大阶Max(Ex,Ey),尾数相加减。3.结果规格化 (尾数是规格化的数)4. 舍入处理:尾数右移时,为减少误差,需进行舍入处理。 5. 溢出及其处理1.对阶---使两个浮点数阶码取得一致的过程。2. 6. 1 浮点加减法运算2. 6. 1 浮点加减法运算2. 6. 1 浮点加减法运算1.对阶---使两个浮点数阶码取得一致的过程。(1)作用:对齐小数点。(2)原则:小阶向大阶看齐。若ΔE<0,将Mx右移,每右移一位,ΔE+1→ΔE,直到ΔE =0为止。(3) 方法:③ 定点机上的浮点运算,用程序实现对阶。② 直接利用比较、移位电路实现。① 利用加法、移位电路实现:求阶差 ΔE=Ex-Ey若ΔE>0,将My右移,每右移一位,ΔE-1→ΔE,直到ΔE =0为止;0.1011×102= 0.1011×102 = 0.0010(11)×104 0.1101×104=(1)1.0100×102 = 0.1101×104null2.取大阶Max(Ex,Ey),尾数相加减。null3.结果规格化 (尾数是规格化的数,以双符号位补码为例)用补码表示的规格化尾数为: 00. 1 x x x x··· 11. 0 x x x x··· 即符号位与最高数值位相异。 否则,须进行规格化。 [0.1111]补=0.1111√ [0.1001]补=0.1001√ [0.1000]补=0.1000√ [0.0111]补=0.0111× [- 0.0111]补=1.1001× [-0.1000]补=1.1000 × [-0.1001]补=1.0111√ [-0.1111]补=1.0001 √ [-1.0000]补=1.0000√null3.尾数规格化的方法 (以双符号位补码为例)可以证明:浮点加减运算右规的次数最多是一次。 (1)右规:① 条件:运算结果两尾符不相同时, 即N =S0’⊕S0 =1② 方法:尾数右移,阶码加1,即Max(Ex,Ey)+1。如 01. x x x x··· →00. 1x x x···,且 阶码+1 10. x x x x··· →11.0 x x x··· ,且阶码+1 即两位符号位相异时作右规处理。如 01. x x x x··· 10. x x x x··· 即两位符号位相异时作右规处理。null 3.尾数规格化的方法 (以双符号位补码为例)② 方法:尾数左移,阶码减1。(2)左规① 条件:结果非零且为正,尾数最高位M1=0, 或结果为负,尾数最高位 M1=1时, 即 NL = 0 (R≠0) +S0´S0M1*尾数为全0,不进行规格化。如 00. 0 x x x x···→00. 1x x x x ···,且阶码-1 11. 1 x x x x·· ·→11.0 x x x x···,且阶码 - 1 即符号位与最高数值位相同时作左规处理。null 总结 初级经济法重点总结下载党员个人总结TXt高中句型全总结.doc高中句型全总结.doc理论力学知识点总结pdf :尾数规格化处理包括两个方面 ⑴ 两位符号位相异(右规)   01. x x x x··· →00. 1x x x···,且 阶码+1 10. x x x x··· →11.0 x x x··· ,且阶码+1 ⑵ 符号位与最高数值位相同(左规)   00. 0 x x x x··· →00. 1x x x···,且 阶码-1   11. 1 x x x x··· →11.0 x x x··· ,且阶码-1nullc. 判断补码表示的尾数规格化的逻辑表达式为: N = (2.10)其中, Ms为数符,M1 为补码尾数的最高位。可见,当N=1时,尾数为规格化尾数。null4. 舍入 根据一定规则,将数的最低位或低位若干位舍去,而对保留位的数进行修正,称为舍入。② 多次舍入不造成误差积累。 :尾数右移时,为减少误差,需进行舍入处理。(1) 什么叫舍入?(2)对舍入方法的要求:① 单次舍入引起的误差不超过保留数最低位的位权;null 4. 舍入缺点:“1入时”需多做一次加法运算----费时,并可能引起右规的操作。 (3)常用的舍入法:① "0舍1入"法:凡舍去部分的最高位为1,则在保留数的最低位加1。 凡舍去部分的最高位为0,则不必修正。例:用“0舍1入”法舍入,保留5位(包括一位符号位)[X]原=1.10100111.1010[Y]补=1.10101001.1010 优点:舍入引起的误差小。[Y]补=1.1010100 Y=−0.0101100 (1入) Y=−0.0110 [Y]补=1.1010[Y]补=1.10101011.1011 [Y]补=1.1010101 Y=−0.0101011 (0舍) Y=−0.0101 [Y]补=1.1011null就近舍入,朝0舍入,朝+∞舍入,朝-∞舍入。 ② “恒置1”舍入法:只要有低位数字丢失,则在保留数的最低位置1。例:用“恒置1”法舍入,保留5位(包括一位符号位)[X]原=1.10100111.1011[Y]补=1.10101001.1011优点:舍入处理不用作加法运算,速度快。缺点:单次或很少有限次舍入所产生的误差大。③ IEEE754标准中,提供四种可选的舍入处理法:null 5. 溢出及其处理 若结果的阶码溢出,则将溢出标志置1,通知控制部件, 转中断处理或停机。当阶码用补码表示时 阶码的符号位为00、11时没有溢出。 阶码的符号位为01、10时溢出溢出只判断浮点数的阶码是否溢出,而不是判断浮点数的尾数。null 6.浮点加减法运算操作流程 null(2.53) ( 2.54 )[Ex+ Ey]移=[Ex]移+[Ey]补=2n+1+[Ex+ Ey]移 (mod 2n+1)移码相加减(计算阶码用) 移码双符号位的最高符号位恒用0参加加/减运算, 若运算结果双符号位S0´S0 则[Ex – Ey]移=[Ex]移+[– Ey]补 (mod 2n+1)null移码双符号位的最高符号位为0,运算结果上溢,大于所能表示的正数111,发生溢出 【例2.35】已知二进制数x=101,y= – 111,试用5位移码(包括2位符号位) 求[x+y]移和[x – y]移,并判断是否发生溢出。解:依定义:[x]移=01 101,[y]移=00 001, [y]补=11 001,[– y]补=00 111 [x+y]移= [x]移+[y]补=01 101+11 001=00 110移码双符号位的最高符号位为0,运算结果正确,x+y= – 010。 [x-y]移= [x]移+[– y]补=01 101+00 111=10 100null上式中(1)表示My右移一位后移出的最低位尾数。 【例2.34】 设二进制数x=2– 010×0.10010010,y=2– 011×(– 0.11110111),阶6位(包括2位阶符),尾数10位(包括2位尾符),用补码浮点运算求x+y的值。解:从给定条件得到2个操作数浮点表示的机器数为:[x]浮=111110,00.10010010[y]浮=111101,11.00001001(1) 求阶差并对阶[ΔE]补=[Ex]补+[– Ey]补=111110+000011=000001即ΔE=1,y的阶码小,应将My右移一位,Ey加1。[y]浮=111110,11.10000100 (1)null由于两位阶符为11,不是01,因此无溢出。 最终的结果为 x+y=2– 101×0. 10110100 (2)将对阶后的尾数相加(3)规格化处理并舍入 运算结果尾数不是规格化,此处应执行左规处理, 尾数左移3位 00.00010110(1)→ 00. 10110100 阶码减3, 用加二进制数[– 11]补=111101, 111110+ [– 11]补=111110+ 111101=111011 [x+y]浮=111011,00. 10110100(4)溢出检查2. 6. 2 浮点乘除法运算2. 6. 2 浮点乘除法运算则(2.52) 1.浮点乘法运算null浮点乘法运算包括以下四个步骤:(2.53) ( 2.54 )[Ex+ Ey]移=[Ex]移+[Ey]补=2n+1+[Ex+ Ey]移 (mod 2n+1) (2) 阶码相加(阶码用移码) 移码双符号位的最高符号位恒用0参加加/减运算, 若运算结果双符号位S0´S0 则[Ex – Ey]移=[Ex]移+[– Ey]补 (mod 2n+1) 对被乘数和乘数判零,若有操作数为零,则 乘积为零,无需运算。 null (3)尾数相乘 (4) 结果规格化用相应机器数的定点乘法算法进行【例2.36】 设有两个二进制浮点数x=2-101×0.0110011,y= 2011×(– 0.1110010),阶码用4位移码表示,尾数(包含1位符号位)用8位补码表示,用浮点乘法运算求x×y的值。要求写出运算过程,运算结果尾数保留高8位(含符号位),采用“0舍1入”法处理舍入操作。 null[Ex+ Ey]移=[Ex]移+[ Ey]补=00 010+00 011=00 101, 真值为– 3。 解: 移码采用双符号位,尾数补码采用单符号位。由于x不是规格化数,应变为规格化数,即x=2-110×0.1100110,则有[Ex]移=00 010 [Mx]补=0.1100110 [Ey]移=01 011 [My]补=1.0001110[x]浮=00 010,0.1100110, [y]浮=01 011,1.0001110(1) 求阶码之和null∴ x×y = 2 –11×(– 0.1011011) (2) 尾数相乘采用求补器的补码阵列乘法器实现,为My为负数,求补得|My|=0.1110010,|Mx|×|My| = 0.1100110×0.1110010 = 0.1011010,1101100由于结果已是规格化尾数,不必再规格化。 另外对低7位乘积进行舍入处理,此例采用“0舍1入”或“恒置1”法,结果相同。故有[x×y]浮= 00 101,1.01001012.6.3 浮点运算器流水线2.6.3 浮点运算器流水线包括四步:求阶差、对阶、尾数(加/减)运算和结果规格化处理。 (1) 浮点加减法运算步骤2.流水线原理 null(2)线性流水线时钟周期τ τ=max{τi}+τl =τm+τl (2.56)式中max{τi}表示取所有过程段中所需的最长操作时间。 从理论上说,一个具有 k级过程段的流水线处理n个任务所需的时钟周期数为:非流水线的硬件来处理n个任务所需的时钟周期数为:TL=n×k (2.58) Tk=k+(n – 1) (2.57)null流水线需在各个过程段之间设置高速缓冲寄存器L null2.6.3 浮点运算器的组成2.6.3 浮点运算器的组成 2.浮点流水运算部件 (3)K级线性流水线的加速比CKCk=TL / Tk=(n×k) / [k+(n – 1)] (2.59)当n>>k时,Ck→k 可见,理论上k级线性流水线处理速度几乎是非流水线处理速度的k倍。null【例2.37】 设由四级过程段组成浮点流水加/减法的运算过程,并设每个过程段所需的时间为:求阶差τ1=70ns,对阶τ2=60ns,相加τ3=90ns,规格化τ4=80ns,缓冲寄存器L的延时τL=10ns,求:(1) 4级流水线加法器的加速比是多少?(2) 如果每个过程段的时间都相同,设都为75ns(包括缓冲寄存器的延时)时,加速比又是多少? (2) 当每个过程段的时间都是75ns时, 则加速比为:Ck = 300/75 = 4 解:(1) 加法器的流水线时钟周期至少为:τ=90ns + 10ns如果采用通用的逻辑电路,但不是流水线方式,则浮点加法所需的时间为τ1 +τ2 + τ3 +τ4 = 300ns因此,4级流水线加法器的加速比为 Ck = 300/100 = 3本章小结: 本章小结: 浮点数包括阶和尾数两部分。阶包括阶符和阶码,用以指明小数点的实际位置,其位数决定了所能表示的浮点数的范围;尾数包括数符和尾数,数符表示数的正负,尾数的位数决定了浮点数表示数的精度。 表示数值数据通常包括进位计数制,小数点及数的正负三个要素。计算机广泛采用二进制,用定点表示和浮点表示解决小数点的问题,用机器数表示数的正负。 一个定点数由符号位和数值域两部分组成。定点数通常有纯小数和纯整数两种表示方法,但只要位数相同,它们所能表示的不同数的个数是相同的。本章小结:本章小结: 国际上采用的字符系统是七单位的ASCII码,它是用七位二进制代码表示字符信息,用于非数值数据的处理。汉字的表示方法包括汉字的输入编码、汉字内码和汉字字模码。 计算机中的机器数包括原码、反码、补码和移码四种形式,采用不同的机器数,就有不同的运算方法。原码表示便于乘除运算,补码表示便于加减运算,补码乘除运算也有较好算法,而移码主要用于表示浮点数的阶E,有利于比较两个阶(指数)的大小和对阶操作。本章小结:本章小结: 几乎所有的运算都可归结为加法运算,常用的二进制加法器是全加型加法器,其逻辑表达式为Si=Ai⊕Bi⊕Ci,Ci+1 = Ai Bi + (Ai⊕Bi) Ci 。由n位全加器组成的行波进位加法器,必须解决进位信号的快速传送,才能实现真正意义上的并行运算。进位的递推公式是并行进位的逻辑依据,计算从操作数的建立(稳定)到运算结果的稳定时间,以此为例建立整机概念中的时间概念是很重要的。定点运算中,常采用补码加减法,原码乘除法和补码乘除法。先行进位和阵列乘除法是提高运算速度的有效方法。 浮点运算由阶和尾数两部分的运算构成,浮点加减运算采用了流水线的并行处理技术,大大提高浮点运算速度。
本文档为【第二章 2.5定点运算器】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_967745
暂无简介~
格式:ppt
大小:1MB
软件:PowerPoint
页数:0
分类:工学
上传时间:2011-10-01
浏览量:17