[an error occurred while processing this directive]
первый ответ :)
(«Телесистемы»: Конференция «Программируемые логические схемы и их применение»)
[an error occurred while processing this directive]

Отправлено yes 24 января 2001 г. 16:35
В ответ на: For yes - модель задержки в Verilog (+) отправлено Stewart Little 24 января 2001 г. 13:31

честно говоря я думал что _ДОЛЖНО_ работать так как работает Verilog

то есть переписав один в один PROCESS modeler

initial
begin
ndr<= #100 1;
#30;
ndr<= #30 1'bz;
end

должо получится в обеих случаях (и в Vlog и в VHDL)
через 60нс переходит в Z
еще через 40нс (через 100нс после запуска) перейдет в 1

по смыслу - происходят независимые процессы - в результате одного из них сигнал переключается в Z, а в результате другого в 1

---------------------

то что в VHDL присваивания с after отменяют друг друга - для меня неожиданность :) - сейчас промоделирую пример

BTW как в VHDL можно наблюдать за сигналами (аналог функции $monitor)???

---------------------

в первом примере на Верилоге
(BTW `timescale - должна быть без ;)

результат будет таким

0 a=x b=x
10 a=1 b=x
15 a=0 b=x
20 a=1 b=x
25 a=0 b=x
30 a=z b=x
40 a=z b=z

поведение регистра a - как описано
а b - не меняется потому что воздействие короче 10 нс не проходит через инерциальную задержку в wire #10 b=a;
^^^^
-----------------------------

по поводу третьего примера с мультиплексором - попробую придумать как можно подругому....


Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru