ANG 发表于 2010-6-27 23:36:11

在verilog中关于除法运算

本帖最后由 fpgaw 于 2010-7-6 19:46 编辑

在verilog中,除法相关的运算符那么这两种运算综合后是什么样子的呢?另外比如某些特殊的除数的除法则可以用移位来实现,比如" /32 " 可以使用来替代。 以上两种方法在综合成硬件时候有什么不同呢

ngtim 发表于 2010-6-28 01:12:21

如果能用&gt;&gt;5,当然要用&gt;&gt;5,虽然不是这么写的。<br>
<br>
除法在很多综合器上是不能综合的,需要自己写实现。<br>
尽量避免除法。

longtim 发表于 2010-6-28 02:02:21

如果除数是2^n,那么综合器应该会自动把&ldquo;/ &rdquo;运算优化成&ldquo; &gt;&gt;&rdquo;运算吧

UFO 发表于 2010-6-28 02:19:03

照理说是的,但最好直接写成移位。软件有时候会犯傻的。

derksyq 发表于 2011-12-6 23:04:48

Altera的FPGA 有内置硬件除法器吗,我用移位相减法发现位数多了 速度有点慢,有硬件除法器算64位除以32位 大概要多少ns 时钟100M( 硬件速度等级10,与时钟匹配)移位相减法编译都特别慢 硬件除法器实现最好小于320ns(精确到整数位)
页: [1]
查看完整版本: 在verilog中关于除法运算