|
verilog这个程序的错误什么意思啊?
module tryfunct(clk,n,result,reset);
input clk,reset;
input [3:0] n;
output [31:0] result;
reg [31:0] result;
always @(posedge clk)
begin
if(!reset)
result<=0;
else
result<=n*factorial(n)/((n*2)+1);
end
function [31:0] factorial;
input [3:0] operand;
reg [3:0] index;
begin
factorial=1;
for(index=2;index<=operand;index=index+1) //说这行有错
factorial=index*factorial;
end
endfunction
endmodule
Error: Verilog HDL For Statement error at tryfunct.v(18): must use only constant expressions in terminating conditions
Error: Can't elaborate top-level user hierarchy |
|