Похожие моменты есть, но есть много и того, чего не картинках со стиранием не было:
Вложение 55894
Вид для печати
Похожие моменты есть, но есть много и того, чего не картинках со стиранием не было:
Вложение 55894
Попался вот такой файл: ftp://ftp.altera.com/outgoing/downlo...2at44_1532.bsd,
и в нём вроде как команды для программирования расписаны.
Скрытый текст
attribute INSTRUCTION_LENGTH of EPM3032AT44 : entity is 10;
attribute INSTRUCTION_OPCODE of EPM3032AT44 : entity is
"BYPASS (1111111111), "&
"EXTEST (0000000000), "&
"SAMPLE (0001010101), "&
"IDCODE (0001011001), "&
"USERCODE (0000000111), "&
"ISC_ENABLE (1100110010), "&
"ISC_DISABLE (0000000110), "&
"ISC_PROGRAM (0000010010), "&
"ISC_ERASE (0000001010), "&
"ISC_ADDRESS_SHIFT (0000001110), "&
"ISC_READ (0000010110), "&
"ISC_READ_H (0000011010), "&
"ISC_READ_L (0000011110), "&
"ISC_NOOP (0011111111)";
attribute INSTRUCTION_CAPTURE of EPM3032AT44 : entity is "0101010101";
attribute IDCODE_REGISTER of EPM3032AT44 : entity is
"0001"& --4-bit Version
"0111000000110010"& --16-bit Part Number (hex 7032)
"00001101110"& --11-bit Manufacturer's Identity
"1"; --Mandatory LSB
attribute USERCODE_REGISTER of EPM3032AT44 : entity is
"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
attribute REGISTER_ACCESS of EPM3032AT44 : entity is
"DEVICE_ID (IDCODE), "&
"ISC_DEFAULT[1] (ISC_ENABLE, ISC_DISABLE, ISC_NOOP, ISC_ERASE), "&
"ISC_PData[183] (ISC_PROGRAM), "&
"ISC_RData[183] (ISC_READ_L, ISC_READ_H, ISC_READ), "&
"ISC_Address[95] (ISC_ADDRESS_SHIFT)";[свернуть]
В общем получается, что при стирании выполнялись следующие команды: ISC_ENABLE, ISC_ADDRESS_SHIFT, ISC_READ, ISC_ERASE, ISC_DISABLE. Прочитать ID похоже нужно после сброса JTAG, а чем кактус занимался после этого, и зачем читал чего-то 10 раз - не ясно.
А если подсмотреть в предыдущем логе с Хелтека?
Если имеется ввиду cpld_erase.rar, то там чтения ID нет вообще, может оно было в большом провале. В файле только сброс JTAG(но ID не считывается), и далее ISC_ENABLE, ISC_ADDRESS_SHIFT, ISC_READ(видимо проверка чтобы не стирать пустую микросхему), ISC_ERASE, ISC_DISABLE. Ну а последняя команда с кодом 0 на исполнение видимо вообще не отправляется. У кактуса всё аналогично за исключением того, что ISC_ADDRESS_SHIFT и ISC_READ он выполняет по 10 раз, после сброса JTAG ID он всё же считывает, но что еще за 5 обменов до ISC_ENABLE сказать сложно, на исполнение они вроде не отправляются.
Просто у убитых он говорит что не может получить ID. Поэтому, я подумал что он его считывает. Получается, нам нужно орагнизовать правильный анлок JTAG через правильный вход в HV режим, подать те же команды и выйти.
хм, на сколько я вижу эту картину то смысл тут в том что:
1. микросхема переживает подачу 11.5v на вывод vpp (ранее считалось что это верная смерть);
2. при подаче "высокого" на vpp залоченный jtag разлачивается и начинает принимать команды так же как и в разлоченном состоянии;
Т.е. проблема как бы видится схожей с той проблемой где tl886cs или willem учили прошивать РФ2 которой надо повышенное напряжение программирования. Тогда там предложили поставить диод и транзистор и как токо программатор подавал vpp открывался транзистор и подавал свое "высокое" вместо vpp. Не помню проверенна ли была схема в действии, но если на отогнутую ногу подавали 22в то всетаки прошивалась рф2
Всем привет!
Разлочивал J-Tag на ATF1504, декларируемых как аналог MAX7k.
На единственный пин без защитного диода (по странному совпадению им оказался OE1 ) через резистор на 240 ом подал 12 вольт и шил через J-Tag как обычно.
12 вольт нужно для принудительного переключения выводов в режим J-Tag, не забыть снять/поставить галочку об использовании порта в режиме стандартных IO.
MAX3k/MAX7k с убиенным J-Tag пока не попадались,
всё оказалось элементарно))))
а через что шил ?
т.е. я так понял, возьму свою altera epm7000s с залоченным jtag подам через резюк 12в на ОЕ1 и подключу как обычно подключаю через программатор usb byteblaster к компу, дальше в квартусе сделать прошить новой прошивкой и всё ок должно быть ? :)
у меня 2 шт max 7128 :) залоченных.
попробую сегодня. прям интрига))) вдруг сработает :)))
кстати, а как определил что пин этот без защитного диода ?
Тестером от пина на VccIO, у Атмела стоят оба обратных защитных диода, в отличие от Альтер...
не. у меня не срабатывает такая фишка.
сигнал ОЕ1 так же как и все звонится на vccio
пробовал 12в давать и на ое2 и на гклрн %) всё так же, дейвас не определяется.
значит всё гораздо сложнее :)
я хз где у epm7128slc84 vpp :)))
HardWareMan, есть какие нибудь новости по поводу алгоритма разлочки жтага ?
Этого они как бы не скрывают.Цитата:
The OE1 pin (high–voltage pin during programming)
В пинауте дают такую ремаркуУ себя на сайте вот этоЦитата:
This JTAG pin applies to MAX 7000S devices only and this pin may function as either a JTAG port or a user I/O pin. If the
device is configured to use the JTAG ports for boundary-scan testing or for ISP, this pin is not available as a user I/O pin.
Буржуи похоже тоже не победили ещё)))
http://savepic.ru/8689858.png
И таки да, мы говорим об А. А про S я не в курсе, ребят. (с)
блин. значит мне ничего не светит =\
Немного поковырялся в файлах программатора All-03 на предмет разлочки, вообщем кому интересно, то продолжение темы тут - http://tslabs.info/forum/viewtopic.php?f=10&t=661
Поднимем темку. Появилась кучка EPM3032ALC44, скорее всего залочены... Чем дело кончилось? У кого-то получилось разлочить хоть что-то?
У меня результатов никаких. Сделал тумблер +12V на OE (44 нога). Смотрю осцылом ногу TDO. При включении от стандартного питания там то 0 (в большинстве случаев), то 1, в некоторых случаях. Когда пытаюсь в куктусе нажать Jtag Chain Debugger кнопку Start на TDO есть попытки посыла, но CPLD просаживает сигнал если она в 0 или не просаживает если в 1. На +12V поданные на OE никак не реагирует вообще.
1. Не 12В, а 11.5В Это прнципиально важно.
2. Беспорядчная подача HV на ОЕ убивает CPLD. Я убил уже пяток. Ее потом программатор и не видит.
Пробовал и 5 вольт и 11.5 и 12.5 - разницы не заметил, в смысле ничего не меняется. Ток кстати HV при этом не идет, либо идет но микроамеры.
- - - Добавлено - - -
Попробовать не запитывать VCCIO? Я с полностью подключенной пробовал. Запитать только VCCINT?
- - - Добавлено - - -
Подключил только 3-ю ногу VCCINT 3.3V, 42 ногу GND и JTAG 4 провода. OE пока не трогал. Какие-то шевеления на JTAG пошли, jtag debugger пишет "too many devices".
- - - Добавлено - - -
Нет, конечно без VCCIO и всех GND оно не взлетает, а когда подключаешь их - все.
Mick, а как у Вас дела с разлочкой? Ссылка выше на тему на tslabs не работает.
Ссылка теперь такая: http://forum.tslabs.info/viewtopic.php?f=40&t=661
Выходит, epm3032a может быть разлочена через jtag, а 3032(64)s, 7032(64)s - не могут.
Значит, будем разбираться с параллельным программатором...
Там кажется написано
Алгоритм вкратце такой.
Тоесть это означает только сам алгоритм, а подробности какое напряжение и какие команды, в какой последовательности - смотреть исходник от All-03. А лучше еще анализируя схему самого программатора.
А то типа подать напряжение и прицепить через Байт бластер - и все должно работать. Вот тут я думаю и не должно работать.
Ну собственно, каждый может поглядеть исходник и там увидите сами алгоритм. Но я нигде не писал каким должно быть подключение.
И да я тут поглядел. Микрухи EPM30xx и EPM70xxA появились в программаторе ALL-07, в ALL-03 их не было
Вот что было написано в описании на адаптер
for Altera EPM3032ALC44/TC44, EPM3064ALC44/TC44 and EPM7064AELC44/TC44
This is only for ALL07 (executable is A7064.exe) as ALL03 does NOT know any MAX7000AE nor MAX3000A.
This Adapter is necessary to program CPLDs with locked JTAG pins, so not a simple ISP Adapter.
Сама схема адаптера - http://matthieu.benoit.free.fr/all03...ADP-7064AE.PDF
Посмотрите сами что в основном используются JTAG ноги и OE.
Материалы по ALL-07 - http://matthieu.benoit.free.fr/hilos...programmer.htm
А может оно и на этом Hi-Lo ALL-07 не работает? Чистые с jtag шьет, а лоченые никто и не пробовал шить. Success story то нет, отзывов, пруфов.
Да, заявлено, но работает в реале или нет - хз?
У меня на Xeltek'е работает. Но сэйфпик убил все, однако можно назаписать еще.