Verilog代码遇vlog-13069错误:期望IDENTIFIER,求排查
Verilog编译错误排查:vlog-13069语法错误
编译错误输出
vlog -work work -stats=none C:/intelFPGA/18.1/lab1-1.v Model Technology ModelSim - Intel FPGA Edition vlog 10.5b Compiler 2016.10 Oct 5 2016 -- Compiling module combinational_circuit ** Error: (vlog-13069) C:/intelFPGA/18.1/lab1-1.v(4): near "1": syntax error, unexpected INTEGER NUMBER, expecting IDENTIFIER or TYPE_IDENTIFIER or NETTYPE_IDENTIFIER.
错误解读
这个错误明确指向代码第4行:编译器在解析时遇到了整数1,但此处它期望的是合法的标识符(比如信号名、变量名)、类型标识符或网络类型标识符。
问题根源
Verilog语法规定:标识符不能以数字开头,更不能直接使用纯数字作为信号/变量名称。你代码里第4行直接用数字1,2,3,4,5作为wire的名称,这是非法的。
修正后的代码
把wire的名称改成合法的标识符(比如以字母开头,结合数字),同时修改后续实例中对应的引用:
module combinational_circuit (A,B,C,D,Z); input A,B,C,D; output Z; wire w1,w2,w3,w4,w5; and a1 (w1,A,C,D); or o1 (w2,w1,B); nor n1 (w3,D,B); nand n2 (w4,A,w3); not n3 (w5,w4); xor x1 (Z,w2,w5); endmodule
内容的提问来源于stack exchange,提问作者user19253310
相关产品推荐
相关产品推荐

