вопросы по Verilog
Re: вопросы по Verilog
Может дело в конкретной ПЛИС, моя программа
module q1 (clk2, clk1);
input clk1;
output clk2;
assign clk2 = clk1;
endmodule
При моделировании в Quartus работает, задержка между сигналами 4.032 ns
Вы какую среду используете?
module q1 (clk2, clk1);
input clk1;
output clk2;
assign clk2 = clk1;
endmodule
При моделировании в Quartus работает, задержка между сигналами 4.032 ns
Вы какую среду используете?
Re: вопросы по Verilog
я делаю конечный автомат в Active-hdl щас. И вот,что выдает
- Вложения
-
- клок.png
- (38.27 КБ) 792 скачивания
Re: вопросы по Verilog
Добрый день, подскажите пожалуйста почему не компилится программа
module first_project(
input [1:0] data,
input clk,
output [1:0] out
);
reg [1:0] count;
always
case (clk)
1'b0:
begin
count[0] <= data[0];
assign out[0] = count[0];
end
1'b1:
begin
count[1] <= data[1];
assign out[1] = count[1];
end
endcase
endmodule
Error (10137): Verilog HDL Procedural Assignment error at habr.v(14): object "out" on left-hand side of assignment must have a variable data type
Error (10137): Verilog HDL Procedural Assignment error at habr.v(20): object "out" on left-hand side of assignment must have a variable data type
module first_project(
input [1:0] data,
input clk,
output [1:0] out
);
reg [1:0] count;
always
case (clk)
1'b0:
begin
count[0] <= data[0];
assign out[0] = count[0];
end
1'b1:
begin
count[1] <= data[1];
assign out[1] = count[1];
end
endcase
endmodule
Error (10137): Verilog HDL Procedural Assignment error at habr.v(14): object "out" on left-hand side of assignment must have a variable data type
Error (10137): Verilog HDL Procedural Assignment error at habr.v(20): object "out" on left-hand side of assignment must have a variable data type
Re: вопросы по Verilog
Кто правильно истолкует логику работы и отличие строчек:
assign led = (count > A-1) && (count < A+B-1)
assign led = (count >= A-1) && (count <= A+B-1)
assign led = (count > A-1) && (count < A+B-1)
assign led = (count >= A-1) && (count <= A+B-1)
- Meteor
- Друг Кота
- Сообщения: 3961
- Зарегистрирован: Пн июл 13, 2009 14:37:39
- Откуда: Московская область, наукоград.....
- Контактная информация:
Re: вопросы по Verilog
Насколько понимаю:
Если значение счетчика count больше чем А-1 и при этом мешьше чем А+В-1, то led=1. Иначе led=0
Аналогично, но если счетчик больше или равен A-1 и меньше или равен А+В-1, то тоже 1, иначе 0.
Отличия выделил жирным шрифтом
Tom91 писал(а):assign led = (count > A-1) && (count < A+B-1)
Если значение счетчика count больше чем А-1 и при этом мешьше чем А+В-1, то led=1. Иначе led=0
Tom91 писал(а):assign led = (count >= A-1) && (count <= A+B-1)
Аналогично, но если счетчик больше или равен A-1 и меньше или равен А+В-1, то тоже 1, иначе 0.
Отличия выделил жирным шрифтом
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Re: вопросы по Verilog
Тогда почему count <= count + 1 - работает на увеличение счётчика... И вообще если читать теорию то "<=" является неблокирующим присвоением, исходя из этого нижняя строчка вообще не должна давать горение светодиода.
Не особо понятно как применять "=" , "<=" , "<", ">", ">=" .
Не особо понятно как применять "=" , "<=" , "<", ">", ">=" .
- dimitriy91
- Вымогатель припоя
- Сообщения: 619
- Зарегистрирован: Ср июн 08, 2011 15:37:56
- Откуда: ДВ
Re: вопросы по Verilog
Добрый день, подскажите пожалуйста как можно использовать $fopen() в Quartus ?
Error (10174): Verilog HDL Unsupported Feature error at ... system function "$fopen" is not supported for synthesis
Самое интересно, на функцию $fdisplay() не ругается.
Error (10174): Verilog HDL Unsupported Feature error at ... system function "$fopen" is not supported for synthesis
Самое интересно, на функцию $fdisplay() не ругается.
"Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов