jenya7 0 29 марта, 2022 Опубликовано 29 марта, 2022 (изменено) · Жалоба Есть большая разница как сделать? Так process (CLK, RST) begin if RST = '1' then --do something elsif (rising_edge(CLK)) then --do something end if; end process; Или так process (CLK, RST) begin if (rising_edge(CLK)) then if RST = '1' then --do something elsif --do something end if; end if; end process; Изменено 29 марта, 2022 пользователем jenya7 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrew_b 16 29 марта, 2022 Опубликовано 29 марта, 2022 · Жалоба Асинхронный или синхронный в зависимости от потребности и архитектуры целевой ПЛИС. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jenya7 0 29 марта, 2022 Опубликовано 29 марта, 2022 (изменено) · Жалоба 1 hour ago, andrew_b said: Асинхронный или синхронный в зависимости от потребности и архитектуры целевой ПЛИС. я понимаю. лично мне нравится второй вариант синхронный. но есть у него какие то преимущества? не хочется переписывать кучу модулей. темплейт дает <optional_label>: process(reset, clk) is -- Declaration(s) begin if(reset = '1') then -- Asynchronous Sequential Statement(s) elsif(rising_edge(clk)) then -- Synchronous Sequential Statement(s) end if; end process; вот я наштамповал а теперь сижу и думаю а правильно ли это. Изменено 29 марта, 2022 пользователем jenya7 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrew_b 16 29 марта, 2022 Опубликовано 29 марта, 2022 · Жалоба Нравится/не нравится -- не является каким-либо значимым критерием в инженерном подходе. Оба сброса имеют имеют право на жизнь. Про преимущества и недостатки обоих -- google://, пока Роскомзапрет его не забанил. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 29 марта, 2022 Опубликовано 29 марта, 2022 · Жалоба WP272: Get Smart About Reset: Think Local, Not Global (c) Ken Chapman Synchronous Resets? Asynchronous Resets? I am so confused! How will I ever know which to use? (c) Clifford E. Cummings Don Mills Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nick_K 0 29 марта, 2022 Опубликовано 29 марта, 2022 · Жалоба Разницы нет, если только для платформы нет каких-либо ограничений. Иногда бывает, что ПЛИС не содержит понятия, к примеру, синхронный сброс. В таком случае будет дополнительная логика на входах сброса (флоп + гейты). В таком случае могут быть сложности с утилизацией/плейсментом/деревом/таймингом. Для ненапряжных проектах по сути не играет роли. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
yes 7 29 марта, 2022 Опубликовано 29 марта, 2022 · Жалоба по-моему, для ПЛИС синхронный меньше ресурсов жрет (если его больше одного в системе) ну и для ПЛИС сброс не по логике работы, а инициализация - просто трата ресурсов. ПЛИС (кроме старых актелов, насколько я знаю) в загружаемой прошивке содержит значение, в которое поставит этот (любой) триггер на старте - по дефолту 0, но есть атрибут типа INIT который и 1 позволяет чтобы с симулятором совпадало, то при объявлении дописать :=0; ну или какое-то другое VHDL ------------------------------- а в АЗИКЕ по-моему, надо делать синхронизацию сброса по тактовым сигналам (которых сильно не один, обычно), чтоб не было проблем с REMOVAL / RECOVERY. это в стародавние времена можно было потребовать от разработчиков платы соблюдения CLOCK / RESET времянки, а сейчас не поймут... ------------------------------- ну то есть асинхронный сброс по любому хуже единственное преимущество, что кремния занимает триггер с асинхронным сбросом процентов на 20 меньше, чем с синхронным - это в АЗИКЕ, естестественно и еще случай, когда такта нет, а сброс нужен - но такого тоже уже лет 20 не видел... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 45 29 марта, 2022 Опубликовано 29 марта, 2022 · Жалоба В зависимости от архитектуры ПЛИС, реализация синхронного сброса может "отъедать" один комбинаторный вход LUT. А для асинхронного сброса в ПЛИС, как правило, используются специальные глобальные ресурсы разводки. Я обычно стараюсь делать в проекте один общий глобальный асинхронный сброс. Причем, чтобы сигнал этого сброса выставлялся асинхронно, а снимался синхронно (пары триггеров на это не жаль). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 29 марта, 2022 Опубликовано 29 марта, 2022 · Жалоба 3 hours ago, StewartLittle said: Я обычно стараюсь делать в проекте один общий глобальный асинхронный сброс. Причем, чтобы сигнал этого сброса выставлялся асинхронно, а снимался синхронно (пары триггеров на это не жаль). также как и я ))) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flip-fl0p 4 30 марта, 2022 Опубликовано 30 марта, 2022 · Жалоба 10 часов назад, Maverick_ сказал: также как и я ))) Так это же базовые правила - на все асинхронные сбросы ставить reset bridge. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
krux 8 30 марта, 2022 Опубликовано 30 марта, 2022 · Жалоба подаем сброс асинхронно, снимаем синхронно. все верно, я также делаю. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jenya7 0 30 марта, 2022 Опубликовано 30 марта, 2022 · Жалоба а что значит "снимаем синхронно"? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 45 30 марта, 2022 Опубликовано 30 марта, 2022 · Жалоба 1 час назад, jenya7 сказал: а что значит "снимаем синхронно"? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 30 марта, 2022 Опубликовано 30 марта, 2022 · Жалоба 11 hours ago, Flip-fl0p said: Так это же базовые правила - на все асинхронные сбросы ставить reset bridge. Я знаю ))) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Мур 1 2 апреля, 2022 Опубликовано 2 апреля, 2022 · Жалоба В этом вопросе я прежде всего смотрю на строение макроячейки конкретного семейства. Если там уже учтена аппаратная возможность синхронного сброса, то все красиво и экономно с синхронным описанием .... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться