在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2475|回复: 1

[讨论] 关于booth2乘法器设计的一些看法!

[复制链接]
发表于 2013-12-29 22:42:42 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
我们都知道booth2算法是要讨论相邻高位,本位,相邻低位的,其中得到的情况结果有0、B、2B、-B、-2B,像-B的实现就是取反加一,即~B+1;-2B的实现方法是(~(B<<1)) + 1的,最近看了一个例子,怎么也看不懂,例子部分代码如下:





  1. always @ (y or x)  begin
  2.                symb5=1'b0;
  3.             case(y[9:7])
  4.                 3'b000:    tpp5=17'b0;
  5.                 3'b001,
  6.                 3'b010:    tpp5={x[15],x};
  7.                 3'b011:    tpp5={x,1'b0};
  8.                 3'b100:    begin
  9.                              tpp5=~{x,1'b0};
  10.                              symb5=1'b1;
  11.                            end
  12.                 3'b101,   
  13.                 3'b110:    begin
  14.                               tpp5=~{x[15],x};
  15.                               symb5=1'b1;
  16.                            end
  17.                 3'b111:    tpp5={1'b0,16'b0};
  18.         endcase                                       
  19.         end


复制代码


根据作者写的代码,其中100、101、110这三种情况为什么都没有加 1 呢,而最后他总的代码仿真结果又是正确的,想了好久,不出其解,请坛友支支招,在此谢谢了!
发表于 2014-4-12 10:50:28 | 显示全部楼层
其实是加1了,加的1放在symb5上了,整个程序的设计应该是把所有需要加的1放入symb5中,将symb5当做一个部分积参与到后面的快速求和中。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

X

小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-6-22 10:19 , Processed in 0.017037 second(s), 12 queries , Gzip On, MemCached On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表