FPGA中如何调用嵌入式乘法器硬核?
时间:10-02
整理:3721RD
点击:
我们知道不同的FPGA内部都嵌入了一定数量的乘法器,我们程序中直接用*号好像不能调用这些乘法器?
如何设置可以直接*,就可以调用这些乘法器,一定要调用IP吗?
如何设置可以直接*,就可以调用这些乘法器,一定要调用IP吗?
一定要。没记错的话,这个需要几个时钟周期才能出结果。
一般用IP调。
可以直接用代码调用FPGA内嵌乘法器:将std_logic_vector类型信号转换为有符号信号,然后直接使用如下VHDL代码得到两个数的乘积(记住,a和b是两个输入,其类型都是std_logic_vector,乘积是输出,类型也是std_logic_vector)。
product<=std_logic_vector(signed(a)*signed(b));
不过要记得声明IEEE数字标准类型库(numeric standard library):
use ieee.numeric_std.all;
这种方法可以使FPGA内部资源使用率显著减少。
