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

миниатюрный аудио-видеорекордер mAVR

Отправлено Vasilij 05 марта 2005 г. 16:34
В ответ на: Ответ: не используйте эти примитивы. отправлено Mad Makc 04 марта 2005 г. 23:23

1) При использовании generate - например когда требуется из отдельных триггеров сделать сдвиговый регистр или что-то подобное:
Delay_Reg : for i in 0 to N - 1 generate
begin
DL_DFF : DFFE
port map(
d => FF_conn(i),
Clk => Clk,
clrn => '1',
prn => '1',
ena => CE,
q => FF_conn(i + 1)
);
end generate Delay_Reg;
FF_conn(0) <= DL_In;
DL_Out <= FF_conn(N);

2) Иногда так писать меньше (в случае DFFE):
process (Clk)
if rising_edge(Clk) then
if Ena = '1' then
X <= Y;
end if;
end if;
end process;

строку вида "if rising_edge(Clk) and Ena = '1' then " Quartus воспринимает некорректно

Хотя тут есть тонкий момент - возможно правильней было бы писать так : "if rising_edge(Clk) and Ena'LAST_VALUE = '1' then "

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

Ответы


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

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

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

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

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


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

E-mail: info@telesys.ru