module tryfunc(result,num,clk,reset);<br /> output[31:0] result; <br /> input[3:0] num; <br /> input clk,reset;<br /> reg[31:0] result;<br /> function[31:0] m6;<br /> input[3:0] n;<br /> reg[3:0] n;<br /> reg[4:0] i;<br /> <br /> begin<br /> m6=1;<br /> for (i=2;i<=n;i=i+1)<br /> m6=m6*i;<br /> end<br /> endfunction<br /> <br /> [email=always@(posedge]always@(posedge[/email] clk)<br /> begin<br /> if (!reset)<br /> result<=0;<br /> else<br /> result<=m6(num);<br /> end<br /> <br />endmodule<br />在函数中为什么i只有声明位4位时才能编译并且仿真也正确,理论上分析不是3位就可以了吗???? |
|