Aleksey25 0 January 28, 2024 Posted January 28, 2024 (edited) · Report post Здравствуйте. Подскажите, пожалуйста, кто-нибудь сталкивался с импортом пакетов, которые размещены в отдельной директории, а не в папке с файлом, в который нужно импортировать ? В сети попадались несколько вариантов, например « import my_project.packages.my_package::*; » где my_project и packages - имена директории , my_package - сам пакет. Но при компиляции выдается ошибка синтаксиса. После долгих поисков, пришел к мнению, что SystemVerilog не поддерживает импорт пакетов из других директории. Получается нужно использовать include, верно? Edited January 28, 2024 by Aleksey25 Quote Share this post Link to post Share on other sites More sharing options...
Zversky 23 January 28, 2024 Posted January 28, 2024 · Report post Вы за какую среду спрашиваете? Mentor при моделировании это делает без вопросов. Есть подозрение, что и с другими средами вопросов быть не должно. Quote Share this post Link to post Share on other sites More sharing options...
Aleksey25 0 January 28, 2024 Posted January 28, 2024 · Report post Как раз Questa при моделировании и выдает ошибку. Quote Share this post Link to post Share on other sites More sharing options...
dxp 213 January 28, 2024 Posted January 28, 2024 · Report post Если хотите скомпилировать пакет вместе с файлом, который его использует, то исходный код пакета надо включить, например, с помощью `include. Если файл с пакетом находится в другой директории,, нежели исходный, то компилятор может его не найти, тогда нужно компилятору указать пути поиска (+incdir+...). Пакеты до компиляции проекта можно откомпилировать в отдельную библиотеку, которую подключать к vopt как обычно с ключом -L. Тогда ничего включать с помощью `include уже не надо, достаточно только import. Quote Share this post Link to post Share on other sites More sharing options...
Aleksey25 0 January 29, 2024 Posted January 29, 2024 · Report post Спасибо за совет. Буду пробовать. Quote Share this post Link to post Share on other sites More sharing options...
one_eight_seven 7 January 29, 2024 Posted January 29, 2024 · Report post Можно обойтись и без компиляции в отдельную библиотеку, а скомпилировать в work. Вопрос в том, что скомпилирован пакет долен быть раньше, чем файл, в который он импортируется. А компиляция пакета не отличается от любой другой компиляции. Компилятору должно быть известно, где найти все файлы, необходимые для текущей компиляции. Quote Share this post Link to post Share on other sites More sharing options...