我试图生成 128 个并行异或门,然后将它们的输出连接到 Verilog 中的 64 个异或门。我使用一个名为“EXOR”的模块。我的问题是:当我将此模块“EXOR”放入循环中时,程序给出语法错误“意外标记:'EXOR'”。我想将门命名为 exor0、exor1、...。
我该如何解决?
initial begin
for (i=0; i<128 ; i=i +1 )
EXOR exor[i](.I1(m[2*i]), .I2(m[2*i+1]), .o(t[i]));
end
initial begin
for (i=0; i<64 ; i=i +1 )
EXOR exor[i+128](.I1(t[2*i]), .I2(t[2*i+1]), .o(f[i]));
end
initial begin
for (i=0; i<32 ; i=i +1 )
EXOR exor[i+192](.I1(f[2*i]), .I2(f[2*i+1]), .o(g[i]));
end
Run Code Online (Sandbox Code Playgroud) 正如我从其他例子中看到的那样,我正在研究自动售货机项目并尝试构建状态机.我正在尝试建造的机器可以支付高达100美元的费用.它需要镍,硬币和四分之一.所以,我应该逐个定义大约2000个州.如何以更简单的方式构建FSM?我只是想要一个建议继续下去.
谢谢 :)