Можно ли полностью скомпилировать модуль, а затем создать его экземпляр в тестовом стенде отдельно? - PullRequest
0 голосов
/ 27 апреля 2018

Можно ли сделать полностью скомпилированную и автономную версию модуля RTL, как снимок в терминах Cadence, а затем позднее создать экземпляр этого скомпилированного модуля в тестовом стенде? В конечном счете, выполняется еще один шаг компиляции для создания окончательного снимка, который содержит первоначально доставленный снимок, но теперь создается в тестовом стенде.

Если это так, есть ли какие-то особые соображения при компиляции исходного снимка, чтобы включить это, и как бы вы создали экземпляр такого скомпилированного объекта в тестовом стенде?

1 Ответ

0 голосов
/ 27 апреля 2018

Да. Но у каждого инструмента моделирования есть немного разные подходы к процессу компиляции. Большинство инструментов разбивают этот поток на несколько этапов: синтаксический анализ, оптимизация, разработка и инициализация (упомянутый вами снимок - последний шаг). Не все инструменты дают вам доступ ко всем отдельным шагам.

Есть несколько способов достичь того, что вы просите, но выбор действительно зависит от того, почему вы хотите это сделать, и с какими ограничениями вы готовы работать.

Вы можете проанализировать исходный код вашего модуля в библиотеке, а затем повторно использовать эту же библиотеку для компиляции множества различных тестовых стендов. Но обычно трудоемкой частью является оптимизация.

Questa предоставляет то, что вы ищете, в том, что они называют потоком Pre-compiled Design Unit (PDU). Вы можете оптимизировать свой RTL-модуль и сохранить его обратно в библиотеку, и Questa просто выбирает оптимизированный модуль вместо неоптимизированного во время разработки. Особые соображения заключаются в том, что вам нужно сохранить любые сигналы от оптимизации, которые могут иметь иерархические ссылки из тестового стенда.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...