【发布时间】:2017-12-08 04:16:11
【问题描述】:
我现在正在使用 FPGA spartan3,
我想计算下面公式表示的“结果”。 并且“结果”应该作为整数类型返回。所以我将所有变量都设置为整数类型,但它不起作用。
result <=((a*b*7894*7)/(w*temp_constant));
我已将 a、b、c、w、temp_constant 设置为变量
variable a : integer range 0 to 99;
variable b : integer range 0 to 9999;
variable w : integer range 0 to 200;
variable temp_constant : integer range 0 to 99;
但是运算符'/'在这个合成中不起作用。错误消息是 'Operator '/' 必须有常量操作数或第一个操作数必须是 2 的幂"'
【问题讨论】:
-
哇,这是一个相当复杂的计算。即使你让它合成,它也需要大量的资源并且有很长的延迟。不要期望高时钟频率。如果您来自软件:您无法像微控制器那样对 FPGA 进行编程。您需要实现流水线等。
标签: variables integer vhdl divider