2013-05-08 82 views
0

我正在为浮点加法器编写舍入方案。我不知道为什么会发生一些值,我尝试阅读手册但无法弄清楚。要编码,我可以考虑if .. elsecase声明,但Verilog中有更好的编码方式吗?
ģ - 保护 的R - 回合 的S - 粘滞位理解舍入IEEE Floating PointNumber

G R S Value 

0 X X Value; 
1 0 0 Value = ? 
1 0 1 Value = ? 
1 1 0 Value = ? 
1 1 1 Value + 1; 
+0

我不得不把它变成平均值,但它也会很好地知道其他方案 – chitranna 2013-05-08 05:58:43

+0

您能否为了读者的利益,包括您所说的G,R和S的含义?这是最后一位还是尾数的任何一位,你已经对指数等做了什么? – 2013-05-08 06:06:15

+0

@ChristopherCreutzig是的,这是结果的最后一位。我已经照顾指数。 – chitranna 2013-05-08 06:42:27

回答

2

要舍入到最接近的偶数:

当GRS为1 0 0,数量为两个浮点数之间恰好中途数字(粘性位为零的事实意味着如果您计算了所有位,则它们全部为零,因此结果确实在值和值+ 1的中间)。回合到一个。

当G R S为1 0 1或1 1 0时,该数字高于中点。围捕。