我为基本的浮点加法器编写了一个verilog代码。该算法包括一个63位比较器,以获得结果的符号。
if (a[62:0]>b[62:0])
sign_result = a[63];
else
sign_result = b[63];
是否有减小比较器或任何其他方法的大小并仍然得到符号结果?
答案 0 :(得分:0)
如果您拥有的代码比您真正需要的更多,那么您只能优化您获得的逻辑。然后诀窍是说服编译器理解你不需要的位,这样就可以优化它们。
您可以将答案与a
进行比较,而不是将b
与0
进行比较,而不是将其视为符号位吗?
答案 1 :(得分:0)
您的比较器基本上会复制您的添加操作,必须根据您的描述进行签名。你的号码是什么格式的?它们可能已经签名了,那么为什么你的加法器只是给出正确的正面或负面结果呢?为什么你需要一个比较器呢?