Jump to content

    
Sign in to follow this  
DuHast

Компиляция проекта из quartus_sh

Recommended Posts

Всем добрый день. Столкнулся со следующей проблемой.

Часто компиляцию проектов осуществляют запуском из командной строки

quartus_sh.exe -t Myscript.tcl

где в tcl скрипте я открывая проект, очищают его и запускаю компиляцию командой execute_flow -compile. И всё это работало, пока я не попытался таким образом откомпилировать проект с включенным SignalTap. Компиляция вылетает при синтезе с руганью на какой-то файл в db, который, судя по названию, имеет отношение к SignalTap. Из квартуса проект компилится без проблем. Сравнение репортов при обычной и скриптов компиляции показывает, что при последней IP ядро SignalTap не используется вообще.

У кого какие мысли, как победить эту проблему?

Share this post


Link to post
Share on other sites
On 3/15/2019 at 8:42 PM, DuHast said:

Сравнение репортов при обычной и скриптов компиляции показывает,

Так выложите интересные места в репортах

Тогда и мысли появятся.

Можно текст ошибки в гугле поискать

Share this post


Link to post
Share on other sites
On ‎3‎/‎15‎/‎2019 at 12:42 PM, DuHast said:

Всем добрый день. Столкнулся со следующей проблемой.

Часто компиляцию проектов осуществляют запуском из командной строки

quartus_sh.exe -t Myscript.tcl

где в tcl скрипте я открывая проект, очищают его и запускаю компиляцию командой execute_flow -compile. И всё это работало, пока я не попытался таким образом откомпилировать проект с включенным SignalTap. Компиляция вылетает при синтезе с руганью на какой-то файл в db, который, судя по названию, имеет отношение к SignalTap. Из квартуса проект компилится без проблем. Сравнение репортов при обычной и скриптов компиляции показывает, что при последней IP ядро SignalTap не используется вообще.

У кого какие мысли, как победить эту проблему?

разбейте execute_flow -compile на составляющие.

execute_module -tool map
execute_module -tool fit
execute_module -tool asm

Share this post


Link to post
Share on other sites
15 hours ago, Sergey_Bekrenyov said:

разбейте execute_flow -compile на составляющие.

execute_module -tool map
execute_module -tool fit
execute_module -tool asm

Не помогло. Вылетает именно на map.

При синтезе из графической среды Quartus в каталоге db создаёт шифрованный модуль sld_reserved_MyProject_auto_signaltap_0_1_7c89.v, который вызывается другим модулем из того же каталога bd.  При компиляции  из шела этот файл не создаётся и компиляция вылетает с сообщением, что модуль sld_reserved_MyProject_auto_signaltap_0_1_7c89 не определён.

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

Share this post


Link to post
Share on other sites
5 hours ago, DuHast said:

Не помогло. Вылетает именно на map.

При синтезе из графической среды Quartus в каталоге db создаёт шифрованный модуль sld_reserved_MyProject_auto_signaltap_0_1_7c89.v, который вызывается другим модулем из того же каталога bd.  При компиляции  из шела этот файл не создаётся и компиляция вылетает с сообщением, что модуль sld_reserved_MyProject_auto_signaltap_0_1_7c89 не определён.

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

А прямо в Quartus запустить tcl?

 

 

Quote

где в tcl скрипте я открывая проект, очищают его

папку db руками удалить? + incremental_db

Share this post


Link to post
Share on other sites
32 minutes ago, Sergey_Bekrenyov said:

А прямо в Quartus запустить tcl?

Не получается, пишет, что project_clean только из шела запустить можно.

32 minutes ago, Sergey_Bekrenyov said:

папку db руками удалить? + incremental_db

я эти каталоги в скрипте после project_clean  и так удаляю командой file delete.

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

Share this post


Link to post
Share on other sites
7 minutes ago, DuHast said:

Не получается, пишет, что project_clean только из шела запустить можно.

закомментируйте его пока

Quote

В любом случае здесь ручное вмешательство не подойдёт.

Вам надо понять, что происходит. Без ручного вмешательства пока никак.

 

У меня в одном проекте qsf генерируют скриптами. Так вот пока в GUI map не сделаешь - tcl не работает ни в shell, ни в GUI. Причем именно в GUI надо map делать

Share this post


Link to post
Share on other sites
53 minutes ago, Sergey_Bekrenyov said:

закомментируйте его пока

Закоментировал, скрипт из GUI отработал корректно.

57 minutes ago, Sergey_Bekrenyov said:

У меня в одном проекте qsf генерируют скриптами. Так вот пока в GUI map не сделаешь - tcl не работает ни в shell, ни в GUI. Причем именно в GUI надо map делать

Ну так у меня тоже самое. Если сделать map в GUI, то всё остальное можно запускать и из шела, но я не хочу GUI, я хочу, чтобы мой скрипт запускался диспетчером задач в ночь с пятницы на субботу и за выходные собирал набор прошивок из блоков написанных за неделю. Оно , в общем-то так и работало, пока stp файл в проект не добавил.

Share this post


Link to post
Share on other sites
24 minutes ago, DuHast said:

Закоментировал, скрипт из GUI отработал корректно.

Ну так у меня тоже самое. Если сделать map в GUI, то всё остальное можно запускать и из шела, но я не хочу GUI, я хочу, чтобы мой скрипт запускался диспетчером задач в ночь с пятницы на субботу и за выходные собирал набор прошивок из блоков написанных за неделю. Оно , в общем-то так и работало, пока stp файл в проект не добавил.

значит те же грабли :) Какой Quartus?

Share this post


Link to post
Share on other sites

Доброго времени суток!

Когда-то давно сталкивался с подобным, когда изучал возможности параллельной компиляции проекта на нескольких ПК с разными seed. Мне тогда помог саппорт. Версию квартуса, да и сам совет я уже не помню за давностью лет, но направление предлагаю такое же. Форум альтеровский интеловский ну и саппорт.

Share this post


Link to post
Share on other sites
15 hours ago, Sergey_Bekrenyov said:

значит те же грабли :) Какой Quartus?

16.1 Arria10. Но, повторюсь, в той же версии и с тем же кристаллом на тестовом проекте повторить этот глюк у меня не вышло.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this