Распиновка jtag для altera

Прошивка через JTAG: схема, распиновка, инструкция

JTAG — это аббревиатура, которая расшифровывается как «Joint Test Action Group», в переводе это значит специализированный интерфейс для отладки и программирования. Данный микропроцессорный интерфейс служит, как понятно из названия, для отладки и мониторинга работы процессора.

Что касается спутников ресиверов, то JTAG дает возможность перепрошить микросхему flash-памяти, если нет возможность прошить ресивер стандартным способом, через кабель к компьютеру. Сегодня мы разберем прошивку через JTAG-интерфейс на примере спутникового ресивера Globo X90 для его восстановления. Ранее мы уже научились прошивать его через кабель (см. предыдущую часть)

Зачем нужен JTAG

Самый большой плюс в JTAG — это возможность внутрисхемного программирования микросхем памяти ресиверов. С его помощью восстанавливать потерянное или испорченное содержимое флэш-памяти, при этом не выпаивая микросхем и без необходимости использования программаторов. То есть JTAG нужен именно тогда, когда неисправен загрузчик , что делает невозможным заливку ПО штатным способом.

Минусом является тот факт, что интерфейс JTAG, в большинстве своём, на всех ресиверах разный — единый стандарт существует, но каждый производитель его модифицирует по-своему. Globo X90 работает на процессоре ALI 3329С .

Прошивка через JTAG куда сложней обычной процедуры, поэтому к ней прибегают только в самом крайнем случае, когда ресивер совсем не подаёт признаков жизни: не загружается, не горит индикация, прошили другой прошивкой, либо после прошивки у вас только черный экран

JTAG прошивка по шагам

Для того, что бы запрограммировать флэш ресивера с помощью JTAG кроме собственно «пациента», т.е. ресивера, который нам необходимо «оживить», нам нужно иметь следующее:

1. Собрать интерфейс (переходник) от порта ресивера к порту ПК

Собрать адаптер для JTAG не так сложно, как кажется на первый взгляд. Для Globo X90, да и вообще для всех ресиверов, предпочтительным вариантом сборки является вариант на микросхеме 74HC244N (её еще называют даташит). Распиновка JTAG:

Так выглядит собранная схема:

Со стороны ресивера это будет специальный разъём, он иногда даже так и подписан — JTAG

Второй «конец», который уходит в сторону ПК — это обычный LPT-кабель, который можно купить в любом компьютерном магазине. О том, как можно собрать всё это хозяйство:

2 . Найти LPT-порт на ПК

Параллельный порт на компьютере сейчас можно увидеть только в музее, поэтому можно докупить специальный LPT-PCI контроллер , который позволяет подключить ваш JTAG к системному блоку ПК, у которого нет LPT порта (а это будет в 99,9% случаев).

3. Скачать программу для прошивки

Для реанимации ресиверов Globo и всех их клонов, а так же для Евросатов/Евроскаев потребуется специальный программатор. Что касается программного обеспечения, то на данных процессорах используется программа EJTAG_TT_1.0.6.17 (Я.Диск)

4. Установить драйвер, если у вас Windows XP

Если вы используете Windows XP, то необходимо установить драйвер giveio.sys (Я.Диск). Скопируйте файл драйвера GIVEIO.sys в папку C:\Windows\system32\drivers\ если, конечно, система у Вас установлена на диск С: и Вы не меняли пути установки Windows. Запустите файл install.reg.

5. Скачиваем прошивку

Нужна сама прошивка, т.е. то, что мы будем заливать во Flash-память. Здесь есть два варианта

  1. Только загрузчик (лоадер) — файл с расширением .bin. это та часть содержимого флэш ресивера, которая обеспечивает загрузку в него ПО(софта) через порт. Если мы имеем случай, когда нам для заливки нужен только загрузчик(лоадер) ресивера, то поступаем одним из двух способов – или скачиваем готовый файл с загрузчиком, или делаем его самостоятельно. Для этого в HEX-редакторе отрезаем от файла ПО первые 65536 байт и сохраняем как отдельный файл *.bin. Это и есть загрузчик.
  2. Полный дамп . Дамп для JTAG, в случае, с ресиверами Globo — это обычный дамп, который используется для прошивки. Единственное, необходимо будет сменить расширение файла с *.abs на *.bin

6. Переводим ресивер в отладочный режим

Для прошивки также потребуется перевод ресивера в режим отладки, он же Debug Mode. Способы его перевода зависят от конкретной модели приставки, конкретно для Globo X90 cсоединить (замкнуть) перемычкой предназначенные для этого контактные площадки на плате, где стоит обозначение JP1 . Так же бывает, что надписи JP1 на ресивере нет, тогда нужно выпаять резистор R32

Обратите внимание на точки подключения. Они должны совпадать с тем, как вы собрали переходник. В некоторых Globo-ресиверах бывает обратная последовательность — не перепутайте. На некоторых ресиверах можно сделать обычную перемычку для перевода в отладочный режим

Можно использовать перемычку с IDE-винчестеров

Так это будет выглядеть:

7. Настраиваем EJTAG и прошиваем

Настройки в нашей JTAG tool выставляем так же как на скриншоте:

Если EJTAG не увидит ресивер, попробуйте поменять тип флеш памяти в последнем столбике. Вообще, здесь можно пробовать менять любые параметры, чтобы ресивер определился

В некоторых мануалах пишут, что предварительно нужно стирать флеш — делать этого не стоит, ни поблочно, ни полностью, перед записью программа сама сотрёт столько памяти, сколько ей надо записать, она умеет это делать. Далее жмём «коннект» . В окне программы должен побежать текст лога.

Если после нажатия кнопки «коннект», у вас выходит ошибка «флэш ID нету в *.ini –файле», то попробуйте поменять настройки в программе, как и советовали выше, нужно попробовать все вариации галочек и точек в настройках. Если и это не приведет к успеху, то тут стоит насторожиться — проверить питание процессора, напряжение с БП — есть вероятность того, что флеш-память уже «умерла», тогда никакой JTAG уже не поможет. Следующим шагом жмём «Записать» и в окне проводника выбираем нужный файл с дампом или загрузчиком (лоадером)

При необходимости, как мы и писали выше, EJTAG сотрёт самостоятельно нужный блок памяти и начнет запись.

Здесь есть небольшой нюанс — достаточно залить около 50-70% прошивки через JTAG (желательно, конечно, полностью), но если у вас оборвалась прошивка на этом этапе, то можно попробовать прошивать стандартно (через порт), т.к. дальше уже идут списки каналов, спутники и так далее, т.е. то, что вы зальете и обычный прошивкой.

8. Убираем перемычку, отключаем Debug Mode

Не забудьте в конце прошивки корректно завершить программу EJAG, отключить от сети ресивер и аккуратно отключить JTAG-интерфейс. Так же снять перемычку для входа в отладочный режим. Далее подключаем ресивер уже через ком-порт и заливаем в него софт обычным способом.

Ручной поиск транспондера у спутника

Если вы заливаете «голую» прошивку, то есть необходимость вбить вручную нужные вам транспондеры. У некоторых ресиверов есть функция ручного ввода транспондеров. Для этого

  1. Нажмите «Меню» на пульте
  2. Далее выберите «Установка»
  3. Следующий пункт «Настройка антенны и поиск каналов»
  4. Нажмите желтую кнопку на пульте (PVR) и попадаете в режим редактирования транспондеров.

Источник

Распиновка jtag для altera

Здесь приведены цоколевки попадавшихся мне интерфейсов JTAG.

[JTAG10]

Эта версия JTAG используется для подключения микроконтроллеров AVR (например, ATmega16) к внутрисхемному эмулятору JTAGICE mkII. Никакие нагрузочные резисторы в целевой плате не нужны. Резисторы, показанные на схеме необходимы для развязки, если ножки микроконтроллера с этими сигналами используются в пользовательской программе (чего следует избегать). Для подключения необходим минимум из 6 проводов — TCK, TDO, TDI, TMS, VTref and GND. Опциональным является сигнал nSRST, но его лучше развести. Сигнал nTRST не используется, он зарезервирован для совместимости с другим железом. Пример подключения к целевой плате и программирование см. [4, 5, 6].

[JTAG14]

Эта версия может использоваться вместе с микроконтроллерами AT91SAM7 на некоторых отладочных платах, например Tahoe — AT91SAM7LIGHT, отладочная плата, OrCAD (FREE) (site:svn.berlios.de). Для подключения к отладчику J-LINK необходим переходник с JTAG20 на JTAG14.

[JTAG20]

Полная, стандартная версия JTAG, использующаяся на большинстве отладочных плат — например AT91SAM7X-EK от Atmel или sam7-ex256 от Olimex. Для подключения к эмулятору J-LINK переходник не нужен.

[ARM-20 JTAG]

Эта разводка используется на большинстве систем, основанных на микроконтроллерах ARM.

1 VREF VSUPPLY 2
3 nTRST GND 4
5 TDI GND 6
7 TMS GND 8
9 TCK GND 10
11 RTCK GND 12
13 TDO GND 14
15 nSRST GND 16
17 DBGRQ GND 18
19 DGBACK GND 20

[ARM-14 JTAG]

Урезанная версия ARM-20.

1 VREF GND 2
3 nTRST GND 4
5 TDI GND 6
7 TMS GND 8
9 TCK GND 10
11 TDO nSRST 12
13 VREF GND 14

[MIPS EJTAG]

JTAG на устройствах с микроконтроллерами MIPS, которые можно найти на электронике с Wi-Fi.

1 nTRST GND 2
3 TDI GND 4
5 TDO GND 6
7 TMS GND 8
9 TCK GND 10
11 nSRST 12
13 DINT VREF 14

[Toshiba MIPS]

1 nTRST 2
3 TDI GND 4
5 TDO GND 6
7 TMS GND 8
9 TCK GND 10
11 VREF GND 12
13 nSRST 14
15 16
17 18
19 20

[Philips MIPS]

1 nTRST GND 2
3 TDI GND 4
5 TDO GND 6
7 TMS GND 8
9 TCK GND 10
11 nSRST GND 12
13 GND 14
15 GND 16
17 GND 18
19 GND 20

[AVR JTAG]

Широко используемая цоколевка, совместимая с AVR, Altera JTAG и др.

1 TCK GND 2
3 TDO VREF 4
5 TMS nSRST 6
7 nTRST 8
9 TDI GND 10

[Altera ByteBlaster]

Широко используемая цоколевка, совместимая с AVR, Altera JTAG и др.

1 TCK GND 2
3 TDO VREF 4
5 TMS 6
7 8
9 TDI GND 10

[Maxim MAXQ JTAG]

Цоколевка, частично совместимая с AVR JTAG.

1 TCK GND 2
3 TDO VREF 4
5 TMS nSRST 6
7 VSUPPLY 8
9 TDI GND 10

[Actel FlashPro3 JTAG]

1 TCK GND 2
3 TDO 4
5 TMS VJTAG 6
7 VPUMP TRST 8
9 TDI GND 10

[PLD-JTAG]

1 VCC
2 TDO
3 TDI
4 nSRST
5
6 TMS
7 GND
8 TCK

[Cypress Ultra-isr]

1 GND TMS 2
3 JTAGEN TCK 4
5 ISR TDI 6
7 VREF 8
9 TDO GND 10

[Lattice JTAG ispDOWNLOAD 2x5pin]

1 TCK 2
3 TMS GND 4
5 TDI VREF 6
7 TDO GND 8
9 nTRST nISPEN 10

[Lattice JTAG ispDOWNLOAD 9pin]

1 VCC
2 TDO
3 TDI
4 ispEN#
5 nTRST
6 TMS
7 GND
8 TCK
9

[TI MSP430]

Цоколевка JTAG Texas Instruments для микроконтроллеров MSP430.

1 TDO VREF 2
3 TDI 4
5 TMS TCLK 6
7 TCK VPP 8
9 GND 10
11 nSRST 12
13 14

[Xilinx JTAG]

Xilinx Parallel IV 14pin JTAG.

1 VGND VREF 2
3 GND TMS 4
5 GND TCK 6
7 GND TDO 8
9 GND TDI 10
11 GND 12
13 GND 14

[Xilinx JTAG 9pin]

Xilinx Parallel III и IV 9pin JTAG.

1 VREF
2 GND
3
4 TCLK
5
6 TDO
7 TDI
8
9 TMS

[Linksys WRT54G(S) — используется как EJTAG]

Цоколевки интерфейсов JTAG, используемые на роутерах Linksys WRT54G / WRT54GS.

1 nTRST GND 2
3 TDI GND 4
5 TDO GND 6
7 TMS GND 8
9 TCK GND 10
11 nSRST GND 12

[Bosch EDC16/MED9 car ECU]

Bosch EDC16 BDM JTAG.

1 PORRESET ? 2
3 TMS NC 4
5 DSCK GND 6
7 DSDI DSDO 8
9 +12V VLFS1 10
11 +5V VLFS0 12
13 NC NC 14

[Motorola PowerPC BDM port]

1 VLFS0 SRESET 2
3 GND DSCK 4
5 GND VLFS1 6
7 HRESET DSDI 8
9 VCC DSDO 10

[Какую цоколевку JTAG выбрать?]

Если Вы разрабатываете электронное устройство на основе микроконтроллера ARM или MIPS, то рекомендуется выбрать соответствующий коннектор (EJTAG или ARM JTAG), чтобы сохранить совместимость со стандартным инструментарием разработки. В других случаях рекомендуется выбрать цоколевку JTAG, рекомендованную производителем Вашего чипа, или выбрать AVR/Byteblaster JTAG (который совместим со многими продуктами на рынке), или стандартный 8pin коннектор PLD JTAG.

Если у Вас в устройстве есть несколько чипов с JTAG, то нужно либо предоставить для каждого отдельный коннектор JTAG (это самое простое, но не экономное решение), либо соединить интерфейсы JTAG в цепочку (в этом случае коннектор JTAG будет только один). Обычно JTAG поддерживает множество устройств в одной цепочке JTAG, но многие инструменты не поддерживают эту возможность. Ознакомьтесь с документацией на Ваши средства разработки, перед тем как соединять устройства в цепочку JTAG.

Источник

Adblock
detector