реклама на сайте
подробности

 
 
> Вопросы по надежности, Регистрация ошибок
alxkon
сообщение Jun 25 2015, 12:31
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 16-11-10
Пользователь №: 60 920



Здравствуйте!

Столкнулся с такой задачей - плата на Cyclone V GX с NIOS-II и uCOS-2
С главной платой она общается по SPI, имеется также один сигнал для индикации наличия ошибок.
Теоретически возможны ошибки по:SEU, PLL lock
Более вероятны ошибки в софте - есть 3 WDT на Авалоне подключены к НИОСу для 3х важных тасков
Есть также внешний WDT, обновляется счетчиком, который делит системную, тоесть сработает он только после длительного пропадания тактовой.
Кроме разной переферии есть еепром на i2c.

До сих пор все ошибки нужно было показывать главному модулю через сигнал ошибки. тоесть все ошибки были протащены через ИЛИ без триггера, главный в свою очерить дергал PROGRAM для переконфигурации.

Возникло требование - при обнаружении ошибки уведомить главного, сохранить причину ошибки, ресетнуть само себя или сделать реконфигурацию (в случае SEU). И после этого предоставить информацию главному через SPI.

Пытаюсь понять:
1. Есть ли метод сохранить даные в ФПГА (без переделывания плат) даже после реконфигурации если питание не выключалось? Вроде бы есть 256 бит для ключа шифровки, но есть ли к нему доступ, да и батарейку ставить нельзя. Буду курить аппноты, но пока не понятно...

2.Пришла мысль - если нельзя сохранить даные при реконфигурации, то при простом ресете логики и NIOS можно определить и сохранить ресеты вачдогов и PLL, а SEU - методом исключения.

3. Как максимально надежно и параноидально оформить решение что бы наверняка защелкнуть сигналы ошибок + прочитать и сбросить их после? Теоретически и клок может сбоить

Буду рад любым подсказкам на эту тему.

Сообщение отредактировал antsu88 - Jun 25 2015, 12:33
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
EvgenyNik
сообщение Jun 25 2015, 14:25
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 597
Регистрация: 24-05-06
Из: г. Чебоксары
Пользователь №: 17 402



А если так: модуль общения по SPI делаете внешним для НИОСа, т.е. самописным и, скажем так, аппаратно-независимым от глюков в софт-процессорной части. Там же прикручиваете кольцевой fifo-буфер, куда скидываете через, допустим, порт PIO НИОСа код текущей операции. Важное дополнение - главный должен уметь блокировать запись в этот fifo (проводничок кинуть enable к плисине). Если главный видит флажок ошибки, то блокирует дальнейшую запись в буфер и по SPI выгребает "историю", а уж потом репрограммит плисину.
Но начал бы я с того, что установил бы триггер-защёлку в ПЛИС на сигнал ошибки. Вдруг, у Вас просто гонка нулей-единиц в логике, а Вы заморачиваетесь зря.


--------------------
Почему разработчики систем повышенной надёжности плохо справляются с простыми проектами? :)
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th August 2025 - 11:28
Рейтинг@Mail.ru


Страница сгенерированна за 0.01365 секунд с 7
ELECTRONIX ©2004-2016