欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

Verilog hdl 宏定义编译报错

发布时间:2025/3/17 51 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Verilog hdl 宏定义编译报错 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

1、今天使用quartus 9.1 编译文本文件使用宏定义时编译器报错,不使用则正确。原因不明。

如下:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 //`define add 3'd0; //`define minus 3'd1; //`define band 3'd2; //`define bor 3'd3; //`define bnot 3'd4;注释掉这些宏定义 ,则没有问题了。 module alu(out,opcode,a,b); output[7:0] out; reg[7:0] out; input [2:0] opcode; input[7:0]a,b; always@(opcode or a or b) begin case(opcode) 3'd0: out=a+b;//这里直接使用,而不是用宏定义。原:'add:out=a+b;报错。改为add:....未定义明确的报错。 3'd1: out=a-b; 3'd2: out=a&b; 3'd3: out=a|b; 3'd4: out=~a; default: out=8'hx; endcase end endmodule

时序仿真,有延迟如图所示结果。



本文转自 lillian_trip 51CTO博客,原文链接:http://blog.51cto.com/xiaoqiaoya/1959606,如需转载请自行联系原作者

总结

以上是生活随笔为你收集整理的Verilog hdl 宏定义编译报错的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。