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

JTAG User Code @ Quartus - не могу понять (с)

Всем добра.


Задача ставится так: есть некая прошивка с незадействованным JTAG User Code, который по умолчанию выставлен во все тяж... единички


image.thumb.png.ae776322ee0c31a9a70c5d5cde45b46c.png

Сгенерировалась некая прошивка. Берём и меняем код на, скажем,

image.thumb.png.a7af3ab6ed23b86816041dec134e4603.png

Запускаем только ассемблер, как сказано здесь 

image.thumb.png.750af46dec8ec82c0c3fe6b1c0449553.png

и сравниваем полученный pof с предыдущим

image.thumb.png.5c1d72de1a9738f9dbbd0fb04354d9cf.png

Вопрос: откуда число 16?

Был JTAG User Code 0xFFFFFFFF - 32 единички
Поменяли на 0x12345678: это 1 (1) + 1 (2) + 2 (3) + 1 (4) + 2 (5) + 2 (6) + 3 (7) + 1 (8) = 13  единичек
Нулей (изменённых бит) равно 32 - 13 = 19.
Изменений в прошивке 16. 
Либо я не то посчитал, либо что-то тут не сходится.

Прошу помощи клуба.

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


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

8 часов назад, MaratZuev сказал:

Вопрос: откуда число 16?

 

Сделал сейчас такой же эксперимент, задав код 12345678. Тотал Коммандер показал два отличия, хотя по факту их много. Посмотрите скрин, сами поймёте. Первое отличие - собственно юзер-код, второе - 2 байта КС в конце файла.

884916548_--1.thumb.png.42641d3595df59e0d87744f06e628ac2.png

1276278052_--2.thumb.png.76cdecee55175cd559a2bf5eb9f5ed9d.png

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


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

4 hours ago, Zig said:

Может контрольная сумма изменилась?

Да, Вы правы.

3 hours ago, MrGalaxy said:

Посмотрите скрин, сами поймёте. Первое отличие - собственно юзер-код, второе - 2 байта КС в конце файла.

По вашему сравнению всё понятно, кроме: 1) какой чип и 2) какой файл сравниваете (уверен, что pof, но на вс. случай переспрошу - засерили вы ненужную информацию в пути файла, а нужную, как имя и расширение, не показали).
И, самое главное, а у меня-то что этот регистр по всему чипу разбросан (в то время как у Вас он консолидирован (по кр. мере в прошивке))?

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


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

16 минут назад, MaratZuev сказал:

1) какой чип и 2) какой файл сравниваете

Микросхема EPF10K50, файл .pof.

16 минут назад, MaratZuev сказал:

 у меня-то что этот регистр по всему чипу разбросан

Как он в чипе расположен даже не знаю где посмотреть. Chip planner отказывается что-то отображать.

 

ЗЫ. На втором скрине видно название файла: Timer_12345678.pof.  :smile:

Я замазал название папки - обозначение блока.

Изменено пользователем MrGalaxy

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


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

57 minutes ago, MrGalaxy said:

Как он в чипе расположен даже не знаю где посмотреть.

Я по прошивке: у Вас он воедино собран в ней, в моей же разбросан: что за странность?

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


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

20 минут назад, MaratZuev сказал:

Я по прошивке: у Вас он воедино собран в ней, в моей же разбросан: что за странность?

А меня другая странность удивила: контрольная сумма не совпадает ни с одной, вычисленной Тотал Коммандером и ВинХексом.

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


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

13 hours ago, MaratZuev said:

Вопрос: откуда число 16?

Изменений в прошивке 16. 
Либо я не то посчитал, либо что-то тут не сходится.

Прошу помощи клуба.

А кто вам сказал, что в 2 разных прогонах результаты синтеза/P&R во всех "нетронутых" частях должны быть одинаковы? Здесь нет полного детерминизма.

 

Алгоритмы эти таковы, что малое изменение в одном углу в общем случае может приводить к другим веткам принятия решений в алгоритме, и как результат - другие результаты в, казалось бы, несвязанных частях дизайна. Особенно, если включено что-то типа принудительной ротации seed'а в вызовах генерации random(), и прочие методы "растряски" процедур синтеза/роутинга.

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


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

3 hours ago, Raven said:

в 2 разных прогонах результаты синтеза/P&R

Во втором прогоне работает только ассемблер

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


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

18 часов назад, MaratZuev сказал:

Вопрос: откуда число 16?

Был JTAG User Code 0xFFFFFFFF - 32 единички
Поменяли на 0x12345678: это 1 (1) + 1 (2) + 2 (3) + 1 (4) + 2 (5) + 2 (6) + 3 (7) + 1 (8) = 13  единичек
Нулей (изменённых бит) равно 32 - 13 = 19.
Изменений в прошивке 16. 

У вас всегда такие нестандартные задачи :)

Почему вы думаете, что тотал коммандер показывает число изменившихся бит? Если чему-то количество изменений соответствует, то числу измененных байт.

Регистр usercode каким-то образом закодирован во фрейме недокументированного формата. Этот формат, а также размер фрейма, для разных поколений и типов альтеровских микросхем будет разным.

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


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

13 часов назад, Raven сказал:

малое изменение в одном углу в общем случае может приводить к другим веткам принятия решений в алгоритме, и как результат - другие результаты в, казалось бы, несвязанных частях дизайна

Сказано же, что менялся только user code, проект остался прежним.

14 часов назад, MaratZuev сказал:

Я по прошивке: у Вас он воедино собран в ней, в моей же разбросан: что за странность?

У Вас случайно режим компрессии не включён при формировании файла прошивки? У меня - нет.

9 часов назад, Flood сказал:

Если чему-то количество изменений соответствует, то числу измененных байт.

https://electronix.ru/forum/index.php?app=forums&module=forums&controller=topic&id=158779&do=findComment&comment=1719641

 

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


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

12 hours ago, MaratZuev said:

Во втором прогоне работает только ассемблер

Да, тут я оказался невнимателен. Моя ошибка. Что ж, тогда вопрос переходит в плоскость формата SOF/POF файлов и алгоритма работы Quartus assembler. Вы их знаете, чтобы так удивляться множественным отличиям?

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


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

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

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

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

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

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

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

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

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

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