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

[Vivado] конфликт SysMon при создании прошивки для US+

Описание прjблемы: при заливке битстрима в VU13P, она оканчивается неудачей с формулировкой ошибки:

ERROR: [Labtools 27-3165] End of startup status: LOW

На этапе сборки битстрима из RTL нет никаких критикал-варнингов, за которые можно было бы зацепиться, чтобы понять в чём дело,

гугл выдавал советы:

  • понизить частоту JTAG
  • усилить питание по линии Vint из-за вероятных просадок во время конфига

 

Методом последовательного исключения (от голого проекта с обёрткой с постепенным добавлением начинки) было установлено, что как только в проект добавляется SysMon, то это вызывает незаливаемость битстрима, притом на этапе сборки битстрима никаких подозрительных вещей не выводится в лог,

 

встречался ли кто-то с таким и как это лечится, если лечится?*..

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


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

Приветствую!

 

С таким не встречался, но как гипотеза:

Может вы в настойках SysMon накрутили низкие пороги (в отличие от дефолтных) и при загрузке они срабатывают и сбрасывают прошивку?

 

Удачи! Rob.

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


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

это мысль....

в скрипте стоит:

set_property BITSTREAM.CONFIG.OVERTEMPSHUTDOWN enable [current_design]

и как я понимаю,  это строчка действует только, если в проект добавлен SysMon

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


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

это как-то странно...

 

выяснил, что причиной послужила совокупность факторов: в tcl:

set_property BITSTREAM.CONFIG.OVERTEMPSHUTDOWN ENABLE [current_design]

а в параметрах SYSMONE4:

  .INIT_50(16'hAF7B), //ALM[0]  upper alarm trigger 70°C - Vref_int
  .INIT_54(16'hAA5F), //ALM[0]  lower alarm reset   60°C - Vref_int
  .INIT_53(16'hB723), //OT      upper alarm limit   85°C - Vref_int
  .INIT_57(16'hAF7B), //OT      lower alarm reset   70°C - Vref_int

брал пример из верилог-референса UG580, там правда для US (SYSMONE1), а у меня  SYSMONE4 и коэф. при формулах немного иные, но не настолько же!

вот как было задано в UG580 для SYSMONE1:

  .INIT_50(16'hB723),// Temp upper alarm trigger 85°C - For On-Chip Reference
  .INIT_54(16'hAA5F),// Temp lower alarm reset   60°C - For On-Chip Reference
  .INIT_53(16'hCB93),// OT   upper alarm limit  125°C - For On-Chip Reference
  .INIT_57(16'hAF7B),// OT   lower alarm reset   70°C - For On-Chip Reference

что интересно - не работает также и с дефолтными (из UG580 значениями регистров 0x50,0x54, 0x53,0x57)!!!

 

UPD:

изучаю дальше UG580 - пишут как раз про разницу поведения для регистров 0x54, 0x57 для SYSMONE4

 

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


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

Победил проблему!!!

 

конфиг в UG580 рабочий, НО только для SYSMONE1, а для SYSMONE4 надо принимать во внимание следующее:

Quote

In SYSMONE4 for UltraScale+ devices only, temperature alarms can operate in a mode similar to the supply sensor alarms. When bit 0 of 0x54 or 0x57 is set High, the respective alarm is enabled when the temperature range falls below the target temperature as specified in bits 15:1 in these registers.

в итоге всё заволось после минорной правки бита 0 в 0x57:

  .INIT_57(16'hAF7С), //OT      lower alarm reset   70°C - Vref_int

 

с другой стороны непонятно - как так получается, что я проинитил регистр значением, но по какой-то причине не хочу включать ОТ....

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


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

Кстати, столкнулся со странностью на Kintex US - в проекте, где инстанцированы SYSMON и блок SPI для конфигурационной флешки (т.е. используется STARTUP, через который выходит SPI CLK) - пин DONE остается в нуле после загрузки. При этом Internal Done status - high, Done pin - low. И чип работает. Всякие тестовые проекты, где нет ни того, ни другого - DONE поднимается.

Подозреваю, какая-то кривизна со STARTUP, но пока нет времени разобраться.

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


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

Приветствую!

13 hours ago, Doka said:

Победил проблему!!!

Мелкая неприятность, а не проблема оказалась :smile:  Хотя когда FPGA на плате за 30-50K уе. вдруг отказывается грузиться тот еще мандраж бывает.:swoon:

 

Удачи! Rob.

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


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

2 hours ago, Flood said:

Кстати, столкнулся со странностью на Kintex US - в проекте, где инстанцированы SYSMON и блок SPI для конфигурационной флешки (т.е. используется STARTUP, через который выходит SPI CLK) - пин DONE остается в нуле после загрузки. При этом Internal Done status - high, Done pin - low. И чип работает. Всякие тестовые проекты, где нет ни того, ни другого - DONE поднимается

Pin Done - это тристейт выход и если его снаружи кто то тянет вниз то соответственно он будет в нуле. Может быть проблема в этом? Хотя обчно (по крайней мере в более ранних версиях так было) внутреннее состояние читается прямо с пина.

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


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

1 час назад, vitus_strom сказал:

Pin Done - это тристейт выход и если его снаружи кто то тянет вниз то соответственно он будет в нуле.

Снаружи никого нет, кроме пуллапа и входа светодиодного драйвера.

На тестовых прошивках DONE поднимается, на описываемой - нет. Думаю, проблема в STARTUP и клоке - внутреннее состояние DONE не переключается наружу, т.к. на выходном триггере нет клока. Ну или что-то в этом роде.

Пока нет возможности разобраться, т.к. проблема в данном случае достаточно косметическая - некорректная индикация.

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


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

да возможно проблемы с настройкой стартапа (отсутствие лока, настройка цикла выстваления, отстутствие клока для стартапа).

Но как правило с дефолтными настройками должно работать.

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


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

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

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

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

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

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

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

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

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

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