VHDL乘除法及转换

时间:2022-01-12 14:08:40

首先鄙视一下这个不智能的语言

1.要进行乘法与除法,数据类型必须是signed

2.两个16位的数相乘,结果必须是32位的

3.乘以2的n次幂的数可以直接乘,之后截位也比较方便,(其实直接移位就可以)。

4.乘以非2的n次幂的整数,可以用加法代替乘法。

5.乘以小于1的小数的时候,可以先乘以2的n次幂使之变为整数,然后再截去最后n位。

6.乘以大于1的小数的时候,按4、5两步结合处理。

7.除法~~~换成乘法算吧

8.integer转换成signed必须经过两步,首先变成std_logic_vector,再变成signed。