VHDL中arith程序包和除法问题

beyondaymk   2009-3-18 10:52 楼主
1. 在vhdl代码中为什么有时要使用arith程序包呢?
2. msb_sum: INTEGER :=15;
  那么msb_sum /2应该等于7还是等于8呢?为什么?

回复评论 (4)

谁知道啊
点赞  2009-3-20 00:23
首先,不建议使用除法,除法一般是不能之间转换成电路的,只有加减和乘,这也是为什么你必须用一个附加包。
至于该问题,应该是7吧,和C语言里是一样的。对整数除2就是右移1位。

至于包,包里面有一些不常用的数据定义和运算,他们和C语言里的头文件一样。
点赞  2009-3-20 03:11
你的意思是不是说,要让除法转换成电路,就需要使用这个arith程序包啊???
点赞  2009-3-22 15:15
也对也不对,我说的也许你根本不感兴趣。

写代码和电路还很远呢。首先默认情况肯定不认除法。
假设arith里面定义了除法,那么引入这个库就允许你用除法。
至于是否就有了电路取决于arith里面写的那个除法是不是能综合的。
我记得应该是能的。
至于电路,它不光决定于你的代码,还决定于综合的过程。

也许你更喜欢下面这句话:
如果你要生成一个除法电路,引用这个包好了。
点赞  2009-3-24 02:07
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复