Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Xilinx JTAG на базе FTDI
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Среды разработки - обсуждаем САПРы
alexadmin
Современные киты от Xilinx и Digilent имеют встроенный USB JTAG на базе микросхемы FTDI FT*32H. Хочется в своей плате сделать такое же решение. Идея понятна, повторить схему, скопировать настройки FTDI. Больше вроде ничего не надо. Но есть ряд непонятных моментов:
1) FTDI чипы в этих платах имеют стандартный VID/PID. Как Vivado опознает, что это именно программатор, по полю Manufacturer Description?2) На схемах трех китов, что я смотрел, подключение сигналов JTAG (TCK, TDI, TDO, TMS + доп. управление) к шине данных FTDI везде разное. Как драйвер или кто там разбирает где что?3) Я вообще плохо понимаю, как они эмулируют работу JTAG в режиме FT245 FIFO (выбран в настройках FTDI), но это уже вопрос теоретический.
Может быть кто-то уже делал подобное?
Caruso
А вы пробовали читать конфигурационную EEPROM чипа FTDI от от Xilinx и Digilent? Mprog.exe может это сделать?
Doka
самому любопытно как это работает,
детально не разбирался, но у trenz-electronic в описании аналогичного продукта есть строчки:
Цитата
user EEPROM content stored Xilinx JTAG license
Without this license the on-board JTAG will not be accessible any more with any Xilinx tools


alexadmin
Цитата(Caruso @ Jul 12 2018, 17:13) *
А вы пробовали читать конфигурационную EEPROM чипа FTDI от от Xilinx и Digilent? Mprog.exe может это сделать?


Да. Читает (FT_Prog). Собственнно оттуда я и выяснил, что VID/PID оригинальные, а отличаются. Manuf.Desc. Но ответа на второй вопрос это не дает. У Digilent хотя бы используется универсальный модуль (SMT2) и там все неизменно. Но вот с платами Xilinx... Правда есть предположение, что первые цифры серийного номера могут определять аппаратную конфигурацию. Было бы интересно считать EEPROM у VCU1525, ZCU104. Ни у кого в столе не валяются? sm.gif

Цитата(Doka @ Jul 12 2018, 17:33) *
самому любопытно как это работает,
детально не разбирался, но у trenz-electronic в описании аналогичного продукта есть строчки:


Очень интересно. Нашел еще https://forums.xilinx.com/t5/Configuration/...ado/td-p/817466
Цитата
M_PROG writes only VISIBLE part of EEPROM and ERASES the user EEPROM without warning .. so if you use M_PROG on anything with Digilent Serial included, then it would render that device useless.

В FT_Prog в самом интерфейсе ничего кроме серийного номера не вижу, но в дампе, который так же любезно предоставляется просматривается еще текст...
alexadmin
Цитата(alexadmin @ Jul 12 2018, 17:50) *
В FT_Prog в самом интерфейсе ничего кроме серийного номера не вижу, но в дампе, который так же любезно предоставляется просматривается еще текст...


Покурив доки обнаружил что область User area в eeprom, можно читать/писать функциями d2xx драйвера. Похоже так вивада и делает. Ну либо можно работать с бинарным дампом, полностью копируя образ eeprom без участия ft_prog.

Anton1990
Цитата(alexadmin @ Jul 12 2018, 16:26) *
Современные киты от Xilinx и Digilent имеют встроенный USB JTAG на базе микросхемы FTDI FT*32H. Хочется в своей плате сделать такое же решение. Идея понятна, повторить схему, скопировать настройки FTDI. Больше вроде ничего не надо. Но есть ряд непонятных моментов:
1) FTDI чипы в этих платах имеют стандартный VID/PID. Как Vivado опознает, что это именно программатор, по полю Manufacturer Description?2) На схемах трех китов, что я смотрел, подключение сигналов JTAG (TCK, TDI, TDO, TMS + доп. управление) к шине данных FTDI везде разное. Как драйвер или кто там разбирает где что?3) Я вообще плохо понимаю, как они эмулируют работу JTAG в режиме FT245 FIFO (выбран в настройках FTDI), но это уже вопрос теоретический.
Может быть кто-то уже делал подобное?

Вставлю свои пять копеек.
Есть модули с микросхемами FT. Паяешь на свою плату разводишь jtag и программируешь плис прямо из вивадо. Как то по ошибке на таком модуле стер пзу (FT_PROG). Опечалился. Потом взял новый такой же модуль слил с него прошивку, и залил ее в стертый модуль. НО восстановленный модуль работать так и не стал!
dm.pogrebnoy
Цитата(Anton1990 @ Jul 13 2018, 18:33) *
Вставлю свои пять копеек.
Есть модули с микросхемами FT. Паяешь на свою плату разводишь jtag и программируешь плис прямо из вивадо. Как то по ошибке на таком модуле стер пзу (FT_PROG). Опечалился. Потом взял новый такой же модуль слил с него прошивку, и залил ее в стертый модуль. НО восстановленный модуль работать так и не стал!

Чем шили? User area через FT_prog не шьётся, нужны дополнительные танцы с бубном. Посмотрите те две темы на которые я дал ссылки, там вся информация уже есть.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.