KyTyIIIa 0 5 марта, 2013 Опубликовано 5 марта, 2013 · Жалоба Имеется плис MAX II EPM240T100. Каким образом можно узнать, установлен ли бит защиты от считывания? С помощью функции "examine" Quartus'а, удается получить .pof-файл, и сам Quartus ничего не говорит о существовании какой-либо защиты. Возможно ли узнать, насколько этот .pof-файл соответствует содержимому плис (естественно, без учета заголовков самого Quartus)? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Костян 0 5 марта, 2013 Опубликовано 5 марта, 2013 · Жалоба Имеется плис MAX II EPM240T100. Каким образом можно узнать, установлен ли бит защиты от считывания? С помощью функции "examine" Quartus'а, удается получить .pof-файл, и сам Quartus ничего не говорит о существовании какой-либо защиты. Возможно ли узнать, насколько этот .pof-файл соответствует содержимому плис (естественно, без учета заголовков самого Quartus)? прошить этим файлом плис и сравнить функиональность Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 40 5 марта, 2013 Опубликовано 5 марта, 2013 · Жалоба У MAX II нет возможности считать состояние бита защиты. Можно посмотреть содержимое считанного pof-файла - если там имеется излишняя "регулярность", то бит защиты, скорее всего, взведен. Если нет, то можно действовать так, как предлагает коллега Костян (разумеется, заливать считанный pof нужно в чистую ПЛИС, иначе можно и без рабочего экземпляра остаться). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KyTyIIIa 0 5 марта, 2013 Опубликовано 5 марта, 2013 · Жалоба прошить этим файлом плис и сравнить функиональность Вариант, но сейчас других ПЛИС временно нет. Возможно есть какой-то другой софт (не от ALTER'ы, а от "сторонних" производителей), которые четко скажут - есть защита или нет? Собственно, большая функциональность от софта и не нужна. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jks 0 5 марта, 2013 Опубликовано 5 марта, 2013 · Жалоба Возможно есть какой-то другой софт (не от ALTER'ы, а от "сторонних" производителей), которые четко скажут - есть защита или нет? Собственно, большая функциональность от софта и не нужна. Есть такой софт. Называется WinHex. :) Искать опцию Type(5) в POF. Если младший бит установлен то значит секурити включен. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jks 0 5 марта, 2013 Опубликовано 5 марта, 2013 · Жалоба А такая последовательность JTAG команд что показывает? 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; Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KyTyIIIa 0 5 марта, 2013 Опубликовано 5 марта, 2013 · Жалоба Есть такой софт. Называется WinHex. :) Искать опцию Type(5) в POF. Если младший бит установлен то значит секурити включен. WinHex в наличии имеется, но вот с поиском "опции Type(5)" чувствую не справлюсь. Подскажите "на пальцах" как это делается. PS: открыв .pof в WinHex, заметна излишняя "регулярность" содержимого (много 00 и FF подряд). По видимому бит защиты установлен. Осталось только подтвердить это проверкой вышеуказанной опции Type(5). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jks 0 5 марта, 2013 Опубликовано 5 марта, 2013 · Жалоба WinHex в наличии имеется, но вот с поиском "опции Type(5)" чувствую не справлюсь. Подскажите "на пальцах" как это делается. PS: открыв .pof в WinHex, заметна излишняя "регулярность" содержимого (много 00 и FF подряд). По видимому бит защиты установлен. Осталось только подтвердить это проверкой вышеуказанной опции Type(5). если бит защиты установлен, то прошивка читается как 0, а EEPROM как записано в ПЛД. TYPE = 0x11 (17 dec) - CFM TYPE = 0x18 (24 dec) - EEPROM 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 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 40 6 марта, 2013 Опубликовано 6 марта, 2013 · Жалоба А такая последовательность JTAG команд что показывает? Ну, это все-таки SVF, а не POF. Не могли бы Вы объяснить процесс определения состояния бита защиты (по считанному POF'у) поподробнее, для особо догадливых? А то я ничего не понял :laughing: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KyTyIIIa 0 6 марта, 2013 Опубликовано 6 марта, 2013 · Жалоба Если я все правильно понял, то вот по этим данным можно судить, есть защита или нет: и, судя по "Data Bytes", никакой защиты нет (в данном случае), так? если бит защиты установлен, то прошивка читается как 0, а EEPROM как записано в ПЛД. TYPE = 0x11 (17 dec) - CFM TYPE = 0x18 (24 dec) - EEPROM Получается, что бит защиты влияет только на возможность считывания CFM, а на UFM нет? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jks 0 6 марта, 2013 Опубликовано 6 марта, 2013 · Жалоба Ну, это все-таки SVF, а не POF. Не могли бы Вы объяснить процесс определения состояния бита защиты (по считанному POF'у) поподробнее, для особо догадливых? А то я ничего не понял :laughing: Да особых знаний не надо. В спецификации указано что после установки бита защиты внутренняя память конфигурации не читается (точнее читается как "0"), а EEPROM память читается и на нее бит защиты не действует. Это скан без бита защиты Это скан с битом защиты по смещению 0x8D начинается POF запись с типом 0x11(17) - блок конфигурации далее 32 разряда длина блока 00001A0C потом собственно конфигурационные данные 12 байт служебные, опции размер битстрима в битах (0x0000D000). дальше конфигурация. Запись с типом 0x18 (24 dec) - данные EEPROM. Запись с типом 0x8 - контрольная сумма. Если я все правильно понял, то вот по этим данным можно судить, есть защита или нет: и, судя по "Data Bytes", никакой защиты нет (в данном случае), так? Запись с типом (5) влияет только при создании файла Quartus-ом. В ней указывается зашивать бит защиты или нет. Защита прошивается после программирования битстрима, по нулевому адресу. Получается, что бит защиты влияет только на возможность считывания CFM, а на UFM нет? Да Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KyTyIIIa 0 6 марта, 2013 Опубликовано 6 марта, 2013 · Жалоба А возможно ли раздобыть описание формата .pof ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jks 0 6 марта, 2013 Опубликовано 6 марта, 2013 · Жалоба А возможно ли раздобыть описание формата .pof ? http://www.alteraforum.com/forum/showthread.php?t=4947 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 40 6 марта, 2013 Опубликовано 6 марта, 2013 · Жалоба http://www.alteraforum.com/forum/showthread.php?t=4947 Спасибо!!! :a14: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 40 7 марта, 2013 Опубликовано 7 марта, 2013 · Жалоба Запись с типом (5) влияет только при создании файла Quartus-ом. В ней указывается зашивать бит защиты или нет. Защита прошивается после программирования битстрима, по нулевому адресу. Т.е. правильно ли я понимаю, что найдя эту запись в считанном из ПЛИС'ки по JTAG'у pof-файле, я все равно не смогу определить, залочена ли ПЛИС'ка или нет (и судить о возможной залоченности можно только по содержимому записи Type 0x11)? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться