У меня следующая проблема:
У меня есть сумматор, выход которого имеет 5 бит. Я хочу отправить этот вывод в 8-битный регистр.
Я объявил входной сигнал регистра как tot_sig, а вывод сумматора как add_out. И регистр, и сумматор объявлены как отдельные компоненты в моей сущности.
В карте портов сумматора я попытался написать следующее:
add_out => tot_sig(4 downto 0)
Но это не сработает (ISE говорит мне, что tot_sig и add_out имеют разные размеры).
Поэтому я подумал о том, чтобы объявить 2 сигнала, которые были бы одинаковыми, но разных размеров. Сначала я объявил бы сигнал, называемый посредником, который будет 4-битной шиной. Затем я бы добавил посредника к байту (изначально установленному как «00000000») (total_sig). Затем байт total_sig будет подключен на входе регистра.
Я беспокоюсь, что это может вызвать защелку. Может это? Я пытался придумать более простые решения, но не смог прийти ни к какому.
Любое решение, которое могло бы работать без необходимости объявления другого сигнала, было бы лучше.
Спасибо за вашу помощь и время.
Я использую Xilix ISE Design Suite версии 14.6.