Перейти к содержанию
    

Идентификация прошивки Плис(Altera, Quartus)

Просто ситуацию сначала ещё выявить надо. Тем более всё это любит вылазить очень не вовремя и подленько)

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добрый день!

А можно больше конкретики? Примеры ваших скриптов с датой и временем. Куда закидываете эту информацию в проект?

Если пользоваться сквозным маршрутов проектирования и использовать Quartus/Vivado только для синтеза прошивки - очень неудобно получается использовать описанные выше механизмы. А дату и время приходится вбивать скриптами ещё на этапе первичной компиляции проекта из HLD Designer в Precision RTL.

Можно конечно создать IP блок памяти и скриптом из Quartus/Vivado выполнять инициализацию этой памяти нужными параметрами (дата, время, номер ревизии), но как-то это не совсем удобно. Либо я не смог написать простой скрипт для этого.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

в вивадо по идее должно быть что-то аналогичное

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 minutes ago, des00 said:

в вивадо по идее должно быть что-то аналогичное

Да, в Vv отдельные  стандартные хуки tcl можно вешать в начале и в конце  синтеза и каждого этапа P&R. 
Нестандартные хуки можно вешать почти на каждую встроенную tcl команду Vv.  

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, RobFPGA said:

Да, в Vv отдельные  стандартные хуки tcl можно вешать в начале и в конце  синтеза и каждого этапа P&R.

я не про хуки, я про возможность изменить значение параметра в RTL коде средствами вивадо. в квартусе это делается через set_parameter

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Just now, des00 said:

я не про хуки, я про возможность изменить значение параметра в RTL коде средствами вивадо. в квартусе это делается через set_parameter

Ааа,  да  в  Vv тоже можно задавать  значения  paramters|globals  для top перед синтезом.  И как раз это в комбинации с хуком pre_sythesis и используется для установки текущих атрибутов сборки (дата/время/хеш).  

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...