11问答网
所有问题
verilog 为什么乘法器写的那么复杂? 不是这样写也可以吗 assign c = a * b;
如题所述
举报该问题
推荐答案 推荐于2016-12-01
现在很多的数据存储在ram里是以补码形式存储的,现在a和b都是补码表示,乘法之后还需要是补码,如果你用*号,那乘法之前需要求补码,乘法之后需要再求补码,岂不是很麻烦,还会占用额外的面积和延时。用verilog写一个wallance-booth乘法器,直接是补码乘法器,便可以直接乘法了。
综合工具里面一般都有乘法器,当然那是最优化的,面积和延时还有功耗都是最优的,但是不知道这些乘法器是不是补码乘法器,如果不是,还是需要代码里面做补码运算的。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://11.wendadaohang.com/zd/88vqM4S8F.html
其他回答
第1个回答 2011-10-31
直接用*其实就是调用了硬件内部的乘法器,可是有些不带乘法器的就只能用语言实现,也就会看到你所说的复杂代码了
第2个回答 2011-10-30
以前综合工具不支持乘法器。
相似回答
...乘不就
可以
了吗。我
verilog
里编写
a*b
即可,
为什么
要移位相加去乘...
答:
内部结构揭示: 看这张
乘法器的
内部结构图,就像一道解码的谜题,每个门电路都是一个个逻辑元件,它们通过精心布局,形成了一种独特的算法,实现了从a乘以b的运算,而这一切在
verilog
代码中,只需一行"
a*b
"即可体现。然而,这并非意味着我们可以直接依赖EDA工具的默认生成。实际上,乘法器有多种实现方法...
大家正在搜
verilog乘法器ip核
verilog实现乘法器
四位乘法器verilog
verilog8位乘法器
verilog二位乘法器
verilog乘法器优化
verilog乘法器代码
四位乘法器verilog原理
四位二进制乘法器verilog
相关问题
verilog中使用乘法运算符的问题
请教verilog的语句解析。assign a= (b=1)...
verilog语言问题三个。 一,M=A^B,N=A&B 那...
Verilog里面assign {cout,SUM}=A+B...
verilog中C<=(A-B)*(A-B)会出错吗?
verilog语言中 assign y=e?a:1’bz; ...
在verilog中,相乘表达式能够综合吗?比如c=b*a能够...