Я совершенно новый для программирования Verilog, и я не понимаю, где инициализировать переменные reg
?Verilog reg assign?
Давайте посмотрим на следующие фрагменты: Edit: Warning at synthesize
module test (
output LED0
);
reg led = 1'b1;
assign LED0 = led;
endmodule
или
module test (
output LED0
);
reg led;
initial begin
reg led <= 1'b1;
end
assign LED0 = led;
endmodule
Дайте мне: Используя начальное значение привело, так как он никогда не назначается на линии: reg led = 1'b1;
Есть ли reg
типы, которые назначаются всегда в блоке @?
Другой пример:
module fourBitCounter
(input clk,
output [3:0]counter
);
wire clk;
initial begin
reg[3:0] counter = 4'b1;
end
[email protected] (posedge clk) begin
if(counter > 15)
counter <= 0;
else
counter <= counter + 1;
end endmodule
Здесь р имеет начальное значение 0, но я поставил перед 1 ... Что случилось? Спасибо!
Вы, вероятно, не хотите использовать 'reg' ключевое слово внутри и' initial' блок. – toolic
Вы правы. Но тот же результат, хотя ... –