Сохранение ширины портов
Вопрос
Я пытаюсь повторно использовать сетевые списки в других дизайнах без успеха.
У меня есть компонент, который переведен в список сети:
entity c is
port (... sel : in std_logic_vector(31 downto 0); ... );
В дизайне я использую Just Sel (4 до 0). Инструменты синтеза замечает это поведение и дает предупреждение:
'Предупреждение: XST: 647 - Ввод SEL <31: 5> никогда не используется ..
Я генерирую список сети со свойствами:
- сохранить иерархию = правда
- Добавить буферы ввода/вывода = выключить
Всякий раз, когда я хочу создавать этот список сетевых изделий как модуль черного ящика в другой схеме, я получил ошибку:
Ошибка: ngdbuild: 76 - Нельзя объединить в блок, потому что один или несколько контактов на блоке, включая вывода «sel <11>», не были найдены в файле.
Как я могу сохранить размер SEL? Я должен упомянуть, что SEL должна быть шириной 32 млн. Столб, так как он подключен к автобусу.
Решение
Вы можете попробовать привести в неиспользованные входные порты до нуля.
Другие советы
Можете ли вы использовать компонент напрямую, а не как предварительно синтезированный черный ящик?
Вы можете заставить вещи работать, поместив атрибут Keep (см. Руководство по инструментам синтезатора) на порт. Я когда -либо пробовал это только по сигналам, но это может сработать.
Такая задача часто описывается как «нажатие на веревку» синтезатора, так как это очень больно, чтобы она не была такой же. :)