Golikov 0 3 октября, 2016 Опубликовано 3 октября, 2016 · Жалоба Понятно, что сигнал в условии поступает на вход разрешения записи в триггер, На самом деле не понятно, понятно только что при выполнении условия в схеме защелкивается новое значение, а без условия храниться старое. А дальше в зависимости от сложностей условия, времянки, других условий который могут быть уровнем выше, могут быть разные варианты в том числе и когда на вход триггера заводиться его выход через LUTы. Опять же наличие технологических элементов с разрешением и их отсутствие так же могут повлиять на результат физической реализации..... Мне кажется я понял к чему Вы... То есть на данный момент остается 2 рабочие версии происхождения reg <= reg; 1. Это по ошибке перенесенной из комбинатороных блоков защита от лача 2. Какая то среда синтеза или микросхема для которой существовал шаблон описания требующий указывать явно reg <= reg; для описания триггеров без енайбла, например, и оттуда опять же по ошибке эта конструкция расползлась на другие среды Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Serhiy_UA 1 3 октября, 2016 Опубликовано 3 октября, 2016 · Жалоба 2. Какая то среда синтеза или микросхема для которой существовал шаблон описания требующий указывать явно reg <= reg; для описания триггеров без енайбла, например, и оттуда опять же по ошибке эта конструкция расползлась на другие среды Возможно это так. В прилагаемой схеме (уже несколько старой) можно найти этому косвенное подтверждение. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Timmy 1 3 октября, 2016 Опубликовано 3 октября, 2016 · Жалоба Приведу пример, где запись reg <= reg имеет смысл. always @(posedge clk)begin if(condition1)rg <= s1; if(condition2)rg <= rg; end Таким образом, condition2 отменяет сделанные выше присваивания регистру. Других осмысленных вариантов что-то не приходит в голову. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 3 октября, 2016 Опубликовано 3 октября, 2016 · Жалоба Приветствую! 1. Это по ошибке перенесенной из комбинатороных блоков защита от лача 2. Какая то среда синтеза или микросхема для которой существовал шаблон описания требующий указывать явно reg <= reg; для описания триггеров без енайбла, например, и оттуда опять же по ошибке эта конструкция расползлась на другие среды 3. Стандарт компании на оформление кода забитый в tools для автоматической проверки при check_out Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Golikov 0 3 октября, 2016 Опубликовано 3 октября, 2016 · Жалоба 3. Стандарт компании на оформление кода забитый в tools для автоматической проверки при check_out Тогда обычно еще есть обоснование правил стандарта, и опять же хочется тогда их узнать. Таким образом, condition2 отменяет сделанные выше присваивания регистру. Других осмысленных вариантов что-то не приходит в голову. Да такое бы положение дел я бы понял, но те варианты использования что я встречал reg <= reg; пишутся именно как вариант на случай если никакие условия не сработают. То есть либо пишется в начале блока, либо под else в конце. То есть явно какая-то запись из раздела на всякий случай, но смысл.... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться