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

 
 
 
Reply to this topicStart new topic
> Левые данные в прошивке через пограмматор Квартуса
wolfman
сообщение Jun 18 2018, 19:12
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 529
Регистрация: 15-06-05
Из: Питер
Пользователь №: 6 032



Приветствую всех, две головы хорошо, а помощь сообщества лучше.

Итак понадобилось нашему заказчику поиметь контроль того, что же записано в загрузочную флешку ПЛИС. Подцепили альтеровскую мегафункцию и опа, ни jic(что понятно), ни pof, ни даже sof-файлы не совпадают с тем, что оказывается в загрузочной флешке.

Отличия имеем в заголовке файла, затем идёт блок идентичный тому, что находится в pof(sof) файлах, затем какая-то ещё информаци и в конце контрольная сумма.

Пробовали генерировать и прошивать различные виды файлов, результат один, куча левой информации.

Прикупили программатор на FTDI от проекта Марсоход и использовали их софт для прошивки по Active Serial и о чудо, файл зашитый и файл которым зашивали совпадают полностью без левых вставок. Проверяли на Картусах от 15.1 до 17.1.

Никто не сталкивался с таким?


--------------------
Россия это даже не страна.
Россия это секрет, завернутый в загадку и укрытый не проницаемой тайной...
Go to the top of the page
 
+Quote Post
inco
сообщение Jun 19 2018, 04:15
Сообщение #2


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

Группа: Свой
Сообщений: 161
Регистрация: 26-08-05
Из: Российская Империя
Пользователь №: 7 984



Тоже сталкивался с этим при записи и чтении прошивки файлы отличались заголовками. Даже не стал заморачиваться видно-же что квартус просто формирует новый файл со считанной прошивкой, соответственно и заголовок другой. При проверке прошивки всё совпадало и работало как положено.
Go to the top of the page
 
+Quote Post
wolfman
сообщение Jun 19 2018, 16:30
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 529
Регистрация: 15-06-05
Из: Питер
Пользователь №: 6 032



Цитата(inco @ Jun 19 2018, 14:45) *
Тоже сталкивался с этим при записи и чтении прошивки файлы отличались заголовками. Даже не стал заморачиваться видно-же что квартус просто формирует новый файл со считанной прошивкой, соответственно и заголовок другой. При проверке прошивки всё совпадало и работало как положено.

Отличия не только в заголовке и CRC, есть непонятные данные в середине файла.


--------------------
Россия это даже не страна.
Россия это секрет, завернутый в загадку и укрытый не проницаемой тайной...
Go to the top of the page
 
+Quote Post
Marat Zuev
сообщение Jun 19 2018, 19:56
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 8-05-18
Пользователь №: 103 834



Цитата(wolfman @ Jun 19 2018, 16:30) *
Отличия не только в заголовке и CRC, есть непонятные данные в середине файла.
На родном форуме никто таким вопросом не озадачивался?


--------------------
--
С наилучшими пожеланиями, Marat.
Go to the top of the page
 
+Quote Post
Denisnovel
сообщение Jun 19 2018, 20:39
Сообщение #5


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

Группа: Свой
Сообщений: 107
Регистрация: 31-12-07
Из: Фрязино М.О.
Пользователь №: 33 753



При конвертации файла вам нужно поставить галочку Create config data RPD. Это будет бинарный образ фрешки.
Go to the top of the page
 
+Quote Post
wolfman
сообщение Jun 20 2018, 07:35
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 529
Регистрация: 15-06-05
Из: Питер
Пользователь №: 6 032



Цитата(Denisnovel @ Jun 20 2018, 07:09) *
При конвертации файла вам нужно поставить галочку Create config data RPD. Это будет бинарный образ фрешки.

И получаем тоже самое, через сторонний софт и сторонний программатор всё чисто.


--------------------
Россия это даже не страна.
Россия это секрет, завернутый в загадку и укрытый не проницаемой тайной...
Go to the top of the page
 
+Quote Post
Alex11
сообщение Jun 20 2018, 17:52
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965



Я так и не понял, что именно требуется. Если нужен образ того, что будет зашито в ПЗУ - можно достать соответствующий раздел из pof-файла, там несложная разборка. Если проконтролировать правильность - это quartus и так делает.
Go to the top of the page
 
+Quote Post
wolfman
сообщение Jun 21 2018, 11:18
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 529
Регистрация: 15-06-05
Из: Питер
Пользователь №: 6 032



Цитата(Alex11 @ Jun 21 2018, 04:22) *
Я так и не понял, что именно требуется. Если нужен образ того, что будет зашито в ПЗУ - можно достать соответствующий раздел из pof-файла, там несложная разборка. Если проконтролировать правильность - это quartus и так делает.

Нужно периодически вычитывать данные из ПЗУ и сравнивать с файлом, например pof, в общем случае это не возможно, т.к. при прошивке Квартус и/или программатор кидает свои данные, отсечь можно только заголовок и CRC, остальные данные случайным образом гуляют по файлу и просто так их не отбросить.


--------------------
Россия это даже не страна.
Россия это секрет, завернутый в загадку и укрытый не проницаемой тайной...
Go to the top of the page
 
+Quote Post
Alex11
сообщение Jun 22 2018, 22:41
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965



Программатор Quartus'а не пишет ничего лишнего, только то, что лежит в соответствующем разделе pof'а. Если сравнивать две последовательные одинаковые трансляции, то они могут различаться, но если смотреть на прошивку из одного pof'а - все совпадает, опять же, контроль бы не работал. Считанный программатором pof может не совпадать с исходным, но только в части заголовка, хвоста и time stamp.
Go to the top of the page
 
+Quote Post
wolfman
сообщение Jun 23 2018, 20:12
Сообщение #10


Знающий
****

Группа: Свой
Сообщений: 529
Регистрация: 15-06-05
Из: Питер
Пользователь №: 6 032



Блин, вроде бы по русски пишу.

Ещё раз, берём программатор квартуса, чистим загрузочную микросхему, зашиваем pof. Вычитываем квартусом, вычитываем альтеровской мегафункцией. Результат одинаковый, разница в заголовке и CRC. Далее без отдельной очистки записываем тот же самый pof и вуаля, что квартусом, что через мегафункцию, вычитываем данные, которых нет в pof-файле и которые находятся в середине.

Далее берём сторонний программатор и сторонее ПО для прошивки, подсовываем тот же самый pof-файл, зашиваем, вычитываем через мегафункцию и через стороннее ПО и вуаля, вычитанное полностью совпадает с pof-файлом. Аналогично с другими форматами.


--------------------
Россия это даже не страна.
Россия это секрет, завернутый в загадку и укрытый не проницаемой тайной...
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 26th September 2018 - 03:44
Рейтинг@Mail.ru


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