电工学习网

 找回密码
 立即注册
查看: 5778|回复: 0
打印 上一主题 下一主题

定点数加/减的溢出检测

[复制链接]
跳转到指定楼层
楼主
发表于 2015-2-28 14:42:48 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
受字长限制,当运算结果超出数据类型所能表示数据范围的就会产生溢出错误,表现为当数据的补码只用一个符号位时,两个负数之和的结果为正数,或两个正数之和的结果为负数。
例:设x=0.1011,y=0.1100,求 定点数加/减的溢出检测
解:  定点数加/减的溢出检测
两个正数之和为负数,这显然不正常。但图1所示的运算电路不能检测出这种异常,而且会给出如本例给出的结果。
例:设 x=一0.1011,y=一0.1100,求
解:  定点数加/减的溢出检测
   定点数加/减的溢出检测
两个负数相加结果成了正数,运算结果同样是错误的,而图3.1所示的运算电路也不能检测出该错误。
综上所述,有必要对图3.1所示的电路进行改进,增设溢出检测电路,保证运算结果的正确性。设计检测方法时,需要关注溢出只可能发生同号数相加时,这个条件可以大大简化溢出检测方法。目前,常用的三种溢出检测方法如下:
1.根据操作数和运算结果的符号位是否一致进行检测
定点数加/减的溢出检测 , 定点数加/减的溢出检测 为参加运算两数的符号位, 定点数加/减的溢出检测 为结果的符号位,V为溢出标志位,基于该方法实现溢出检测的逻辑表达式如下式:
   定点数加/减的溢出检测
当运算结果的符号位与参加运算的两个数据的符号位不同时,V取值为1,表示发生溢出。对于减运算而言,不是减数 定点数加/减的溢出检测 本身的符号位,而应该是 定点数加/减的溢出检测 的符号,在应用时一定好注意这一点。
2.根据运算时最高数据位与符号位产生的进位位是否同步来判断
设运算时最高有效数据位产生的进位信号为 定点数加/减的溢出检测 ,符号位产生的进位信号为 定点数加/减的溢出检测 (本知识点中图1),基于该方法实现溢出检测的逻辑表达式如下式:
   定点数加/减的溢出检测
表明只要最高数据位和符号位不产生的进位不同步就产生溢出,其他情况下,表明运算没有产生溢出。
3.基于双符号位的溢出检测
此时,参与运算的数据采用双符号位,对应的补码称为变型补码,此时
   定点数加/减的溢出检测 。则
定点小数变型补码的定义为:
   定点数加/减的溢出检测
定点整数变形补码的定义如下:
   定点数加/减的溢出检测
运算结果的两个符号位相同时,表示没有溢出;相异时,则表示溢出。故表示溢出的逻辑表达式为:
   定点数加/减的溢出检测
其中,Sf1和Sf2分别是结果的第一符号位和第二符号位,只要两者不同就表明发生了溢出。另外,不论运算结果溢出与否,第一符号位(即Sf1)总对应结果的真实符号。
在图3.1的基础上,根据上述三种溢出检测方法增加适当的电路就可以实现溢出检测,详细内容可参加教材,教材中给出了第一种和第三种溢出检测的电路,第二种溢出检测电路实现简单,只需要对本知识点图3.1中的 定点数加/减的溢出检测 和进行异或运算即可。

四、并行进位
下面研究图3.1中多个FA间的进位情况。图中低位FA的进位输出连接到相邻高位FA的进位输入端。通过回顾数字逻辑电路中一位全加器的功能函数可知其进位逻辑表达式位:
定点数加/减的溢出检测 化简后得到: 定点数加/减的溢出检测
假定图1中的FA个数为4个,则从高位到低位四个进位位分别为:
定点数加/减的溢出检测
其中C4是最低进位位。从上述4个进位表达式不难看出, 定点数加/减的溢出检测 之间具有明显的串行关系,即要计算 定点数加/减的溢出检测 四必须先计算出 定点数加/减的溢出检测 ,而要得到个必先计算出 定点数加/减的溢出检测 须,依次类推。图3.1中多个FA之间的进位就是串行进位,这种进位方式会影响运算器的速度,且字长越长,对计算速度的影响就越大。
为提高运算器的速度,可改变进位方式,将公式3.1中具有相互依存关系的进位表达进行迭代,得到下列进位表达:
   定点数加/减的溢出检测
式3.2中的四个进位之间不再存在式3.1中的相互依存关系,而都是同时计算(因为它们都是参加运算数的各位及C4的函数),这种进位方式称位并行进位或先行进位。
要实现采用先行进位的快速运算器,多个FA中的进位之间不能再像图3.1中采用的连接方式,而是要分别采用基于公式3.2各逻辑表达式对应的进位产生电路依次产生从低位到高位FA所需要的进位输入端(不包括最低位FA的进位输入端,因为它连接到C4上)。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

电工学习网 ( )

GMT+8, 2024-4-28 03:05

Powered by © 2011-2022 www.diangon.com 版权所有 免责声明 不良信息举报

技术驱动未来! 电工学习网—专业电工基础知识电工技术学习网站。

栏目导航: 工控家园 | 三菱plc | 西门子plc | 欧姆龙plc | plc视频教程

快速回复 返回顶部 返回列表