Longiel 2 December 6, 2021 Posted December 6, 2021 · Report post Просто ситуацию сначала ещё выявить надо. Тем более всё это любит вылазить очень не вовремя и подленько) Баги же бывают тоже сообразительные и не очень. Сообразительные баги сидят долго и не шевелятся. Но по своей природе они должны показывать себя или хотя бы намекать на это - иначе в чём смысл их существования? Вот и вылазят они порой думая что уже можно, что девайс уже пошёл в серию и можно издеваться над пользователем, а тут вдруг оказывается что это всё ещё какая-то отладка и смотрит на него внимательное и суровое лицо разраба) Разрабы тоже, правда, разные бывают, но это уже отдельная тема... Quote Share this post Link to post Share on other sites More sharing options...
warrior-2001 0 December 7, 2021 Posted December 7, 2021 · Report post Добрый день! А можно больше конкретики? Примеры ваших скриптов с датой и временем. Куда закидываете эту информацию в проект? Если пользоваться сквозным маршрутов проектирования и использовать Quartus/Vivado только для синтеза прошивки - очень неудобно получается использовать описанные выше механизмы. А дату и время приходится вбивать скриптами ещё на этапе первичной компиляции проекта из HLD Designer в Precision RTL. Можно конечно создать IP блок памяти и скриптом из Quartus/Vivado выполнять инициализацию этой памяти нужными параметрами (дата, время, номер ревизии), но как-то это не совсем удобно. Либо я не смог написать простой скрипт для этого. Quote Share this post Link to post Share on other sites More sharing options...
des00 9 December 7, 2021 Posted December 7, 2021 · Report post 1 hour ago, warrior-2001 said: Если пользоваться сквозным маршрутов проектирования и использовать Quartus/Vivado только для синтеза прошивки - очень неудобно получается использовать описанные выше механизмы. А дату и время приходится вбивать скриптами ещё на этапе первичной компиляции проекта из HLD Designer в Precision RTL. в квартусе можно назначить парметр в топе снаружи. Потом скриптом его назначить добавить в *.qsf set_global_assignment -name PRE_FLOW_SCRIPT_FILE "quartus_sh:get_time.tcl" get_time.tcl project_open -revision <project_name> <project_name> set t [clock seconds] set_parameter -name pCOMPILATION_TIME $t export_assignments ну и в коде просто используете pCOMPILATION_TIME в вивадо по идее должно быть что-то аналогичное Quote Share this post Link to post Share on other sites More sharing options...
RobFPGA 8 December 7, 2021 Posted December 7, 2021 · Report post 3 minutes ago, des00 said: в вивадо по идее должно быть что-то аналогичное Да, в Vv отдельные стандартные хуки tcl можно вешать в начале и в конце синтеза и каждого этапа P&R. Нестандартные хуки можно вешать почти на каждую встроенную tcl команду Vv. Quote Share this post Link to post Share on other sites More sharing options...
des00 9 December 7, 2021 Posted December 7, 2021 · Report post 1 hour ago, RobFPGA said: Да, в Vv отдельные стандартные хуки tcl можно вешать в начале и в конце синтеза и каждого этапа P&R. я не про хуки, я про возможность изменить значение параметра в RTL коде средствами вивадо. в квартусе это делается через set_parameter Quote Share this post Link to post Share on other sites More sharing options...
RobFPGA 8 December 7, 2021 Posted December 7, 2021 · Report post Just now, des00 said: я не про хуки, я про возможность изменить значение параметра в RTL коде средствами вивадо. в квартусе это делается через set_parameter Ааа, да в Vv тоже можно задавать значения paramters|globals для top перед синтезом. И как раз это в комбинации с хуком pre_sythesis и используется для установки текущих атрибутов сборки (дата/время/хеш). Quote Share this post Link to post Share on other sites More sharing options...