我正在使用赛灵思的 vivado 进行 verilog 编程。
我想知道为什么我们使用某些输出 reg
例如,reg [3:0] encoder_output
我们使用它是因为我们的 16 到 4 编码器有 4 个输出,对吗?我假设我们使用reg
在需要“存储一些东西”时使用
我的想法对吗??
这是我的代码,据我所知,LED已定义
module sevenseg (LEDs,in);
output reg [6:0] LEDs;
input [3:0] in;
always@(in) begin
case(in)
0 : LEDs = 7'b1000000;
1 : LEDs = 7'b1111001;
2 : LEDs = 7'b0100100;
3 : LEDs = 7'b0110000;
4 : LEDs = 7'b0011001;
5 : LEDs = 7'b0001010;
6 : LEDs = 7'b0000010;
7 : LEDs = 7'b1111000;
8 : LEDs = 7'b0000000;
9 : LEDs = 7'b00010000;
default : LEDs = 7'b1111111;
endcase
end
endmodule
Run Code Online (Sandbox Code Playgroud)
这是编译错误
错误(10161):7seg2.v(39)处的Verilog HDL错误:未声明对象"LED"
错误:Quartus II 64位分析和综合不成功.1错误,1警告
错误(293001):Quartus II完全编译失败.3个错误,1个警告