1. 在vhdl代码中为什么有时要使用arith程序包呢?
2. msb_sum: INTEGER :=15;
那么msb_sum /2应该等于7还是等于8呢?为什么?
首先,不建议使用除法,除法一般是不能之间转换成电路的,只有加减和乘,这也是为什么你必须用一个附加包。
至于该问题,应该是7吧,和C语言里是一样的。对整数除2就是右移1位。
至于包,包里面有一些不常用的数据定义和运算,他们和C语言里的头文件一样。
你的意思是不是说,要让除法转换成电路,就需要使用这个arith程序包啊???
也对也不对,我说的也许你根本不感兴趣。
写代码和电路还很远呢。首先默认情况肯定不认除法。
假设arith里面定义了除法,那么引入这个库就允许你用除法。
至于是否就有了电路取决于arith里面写的那个除法是不是能综合的。
我记得应该是能的。
至于电路,它不光决定于你的代码,还决定于综合的过程。
也许你更喜欢下面这句话:
如果你要生成一个除法电路,引用这个包好了。