Я всегда строю свой дизайн с заданиями по умолчанию, потому что это делает мой код меньше строк, и я думаю, что более читабельным. Однако я узнал, что задания по умолчанию могут иногда вызывать проблемы. Если для проектирования недостаточно места, инструмент (Vivado, ISE) можно удалить из этой части. То, что я имел в виду, - это задания по умолчанию, которые заполняют неписанные операторы else. Ниже приведен пример кода.
Я уже много раз проверял, что я видел мультиплеты для этих операторов в схеме, но я никогда не пробовал это с дизайном, который полностью потребляет свои ресурсы.
t_next <= t_reg;
if(start_i = '1') then
t_next <= (others => '0');
end if;
Кто-нибудь может сказать, что есть проблема в назначении по умолчанию? Должен ли я писать все остальное или достаточно написать задание по умолчанию для оператора else?