|
Установлен ли "Security bit" ?, Как узнать |
|
|
|
Mar 5 2013, 11:09
|
Группа: Новичок
Сообщений: 5
Регистрация: 5-03-13
Пользователь №: 75 900

|
Имеется плис MAX II EPM240T100. Каким образом можно узнать, установлен ли бит защиты от считывания?
С помощью функции "examine" Quartus'а, удается получить .pof-файл, и сам Quartus ничего не говорит о существовании какой-либо защиты. Возможно ли узнать, насколько этот .pof-файл соответствует содержимому плис (естественно, без учета заголовков самого Quartus)?
|
|
|
|
|
Mar 5 2013, 11:54
|
Группа: Новичок
Сообщений: 5
Регистрация: 5-03-13
Пользователь №: 75 900

|
Цитата(Костян @ Mar 5 2013, 15:25)  прошить этим файлом плис и сравнить функиональность Вариант, но сейчас других ПЛИС временно нет. Возможно есть какой-то другой софт (не от ALTER'ы, а от "сторонних" производителей), которые четко скажут - есть защита или нет? Собственно, большая функциональность от софта и не нужна.
|
|
|
|
|
Mar 5 2013, 12:41
|
Местный
  
Группа: Свой
Сообщений: 249
Регистрация: 3-04-11
Из: .
Пользователь №: 64 084

|
Цитата(KyTyIIIa @ Mar 5 2013, 15:54)  Возможно есть какой-то другой софт (не от ALTER'ы, а от "сторонних" производителей), которые четко скажут - есть защита или нет? Собственно, большая функциональность от софта и не нужна. Есть такой софт. Называется WinHex.  Искать опцию Type(5) в POF. Если младший бит установлен то значит секурити включен.
|
|
|
|
|
Mar 5 2013, 14:39
|
Местный
  
Группа: Свой
Сообщений: 249
Регистрация: 3-04-11
Из: .
Пользователь №: 64 084

|
А такая последовательность JTAG команд что показывает? CODE
TRST ABSENT; ENDDR IDLE; ENDIR IRPAUSE; STATE IDLE; SIR 10 TDI (2CC); ! ISC_ENABLE RUNTEST IDLE 18003 TCK ENDSTATE IDLE; ! ! ! SIR 10 TDI (203); ! ISC_ADDRESS_SHIFT RUNTEST 93 TCK; SDR 14 TDI (0000); ! ADDR = 0000 SIR 10 TDI (205); ! ISC_READ RUNTEST 93 TCK; SDR 16 TDI (FFFF) TDO (6BFF) MASK (FBFF); ! 7BFF, 6BFF <===== ???? RUNTEST 53 TCK; ! ! ! SIR 10 TDI (201); ! ISC_DISABLE RUNTEST 18003 TCK; SIR 10 TDI (3FF); RUNTEST 18000 TCK; STATE IDLE;
|
|
|
|
|
Mar 5 2013, 15:41
|
Группа: Новичок
Сообщений: 5
Регистрация: 5-03-13
Пользователь №: 75 900

|
Цитата(jks @ Mar 5 2013, 16:41)  Есть такой софт. Называется WinHex.  Искать опцию Type(5) в POF. Если младший бит установлен то значит секурити включен. WinHex в наличии имеется, но вот с поиском "опции Type(5)" чувствую не справлюсь. Подскажите "на пальцах" как это делается. PS: открыв .pof в WinHex, заметна излишняя "регулярность" содержимого (много 00 и FF подряд). По видимому бит защиты установлен. Осталось только подтвердить это проверкой вышеуказанной опции Type(5).
|
|
|
|
|
Mar 5 2013, 15:56
|
Местный
  
Группа: Свой
Сообщений: 249
Регистрация: 3-04-11
Из: .
Пользователь №: 64 084

|
Цитата(KyTyIIIa @ Mar 5 2013, 19:41)  WinHex в наличии имеется, но вот с поиском "опции Type(5)" чувствую не справлюсь. Подскажите "на пальцах" как это делается.
PS: открыв .pof в WinHex, заметна излишняя "регулярность" содержимого (много 00 и FF подряд). По видимому бит защиты установлен. Осталось только подтвердить это проверкой вышеуказанной опции Type(5). если бит защиты установлен, то прошивка читается как 0, а EEPROM как записано в ПЛД. TYPE = 0x11 (17 dec) - CFM TYPE = 0x18 (24 dec) - EEPROM CODE template "POF_Record" description "POF Record" requires 0 "50 4F 46 00" fixed_start 12
multiple begin uint16 "Type" move -2 hexadecimal uint16 "Type [Hex]" uint32 "Size" IfEqual Type 17 char[10] char move (-10) hex 10 "Data Bytes" move -10 move size Else char[Size] char move (-size) hex size "Data Bytes" EndIf end
|
|
|
|
|
Mar 6 2013, 14:28
|
Группа: Новичок
Сообщений: 5
Регистрация: 5-03-13
Пользователь №: 75 900

|
Если я все правильно понял, то вот по этим данным можно судить, есть защита или нет:
и, судя по "Data Bytes", никакой защиты нет (в данном случае), так? Цитата(jks @ Mar 5 2013, 19:56)  если бит защиты установлен, то прошивка читается как 0, а EEPROM как записано в ПЛД.
TYPE = 0x11 (17 dec) - CFM TYPE = 0x18 (24 dec) - EEPROM Получается, что бит защиты влияет только на возможность считывания CFM, а на UFM нет?
|
|
|
|
|
Mar 6 2013, 14:50
|
Местный
  
Группа: Свой
Сообщений: 249
Регистрация: 3-04-11
Из: .
Пользователь №: 64 084

|
Цитата(Stewart Little @ Mar 6 2013, 15:54)  Ну, это все-таки SVF, а не POF. Не могли бы Вы объяснить процесс определения состояния бита защиты (по считанному POF'у) поподробнее, для особо догадливых? А то я ничего не понял  Да особых знаний не надо. В спецификации указано что после установки бита защиты внутренняя память конфигурации не читается (точнее читается как "0"), а EEPROM память читается и на нее бит защиты не действует. Это скан без бита защиты
Это скан с битом защиты
по смещению 0x8D начинается POF запись с типом 0x11(17) - блок конфигурации далее 32 разряда длина блока 00001A0C потом собственно конфигурационные данные 12 байт служебные, опции размер битстрима в битах (0x0000D000). дальше конфигурация. Запись с типом 0x18 (24 dec) - данные EEPROM. Запись с типом 0x8 - контрольная сумма. Цитата(KyTyIIIa @ Mar 6 2013, 18:28)  Если я все правильно понял, то вот по этим данным можно судить, есть защита или нет:
и, судя по "Data Bytes", никакой защиты нет (в данном случае), так? Запись с типом (5) влияет только при создании файла Quartus-ом. В ней указывается зашивать бит защиты или нет. Защита прошивается после программирования битстрима, по нулевому адресу. Цитата(KyTyIIIa @ Mar 6 2013, 18:28)  Получается, что бит защиты влияет только на возможность считывания CFM, а на UFM нет? Да
|
|
|
|
|
Mar 6 2013, 15:49
|
Группа: Новичок
Сообщений: 5
Регистрация: 5-03-13
Пользователь №: 75 900

|
А возможно ли раздобыть описание формата .pof ?
|
|
|
|
|
Mar 7 2013, 12:21
|

Лентяй
     
Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843

|
Цитата(jks @ Mar 6 2013, 18:50)  Запись с типом (5) влияет только при создании файла Quartus-ом. В ней указывается зашивать бит защиты или нет. Защита прошивается после программирования битстрима, по нулевому адресу. Т.е. правильно ли я понимаю, что найдя эту запись в считанном из ПЛИС'ки по JTAG'у pof-файле, я все равно не смогу определить, залочена ли ПЛИС'ка или нет (и судить о возможной залоченности можно только по содержимому записи Type 0x11)?
--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|