Перейти к содержанию

    

USB программатор на ft2232h "Digilent JTAG-HS2" для Xilinx и программатор "MBFTDI" для Altera

По мотивам http://electronix.ru/forum/index.php?showtopic=114633 (ADA007)...

 

Высокоскоростной Программатор для Xilinx ISE и Программатор для Altera Quartus по одной схеме.

В архиве схема, плата, прошивка для еепром к ft2232h.

В каталоге "Программатор MBFTDI в среде Altera Quartus"

плагин для Quartus jtag_hw_mbftdi_blaster32.dll

с сайта Марсоход (marsohod.org).

Всё проверено лично и работает в Quartus 7 и выше

и в Xilinx ISE 14.6.

digilent_jtag_hs2_mblaster.rar

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Он еще и для Lattice подойдет, если EEPROM не ставить/не шить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Он еще и для Lattice подойдет, если EEPROM не ставить/не шить.

Отлично!

Тогда "3in1 PLD programmer" для начинающих.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
плагин для Quartus jtag_hw_mbftdi_blaster32.dll

 

А где нибудь есть дока по написанию таких плагинов?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Слегка недоработали. FT2232H c может 2 независимых интерфейса поднимать. А UART в хозяйстве лишним не бывает. Предлагаю на порте "B" поднять UART. Но чтобы это заработало сначала надо в FTproge сконфигать порт A как FIFO245 c драйвером D2XX, а порт B как RS232 UART с драйвером VCM. И только потом с помощью FTDI_User_Area_Writer.exe прописать данные в user space. И да (для пользователей винды), проверить в диспетчере устройств USB serial converter B - свойства - дополнительно - галка Загрузить VCP. Проверял лично для программатора digilent SMT1 - работает.

 

Он еще и для Lattice подойдет, если EEPROM не ставить/не шить.

 

Если это правда, но CS-ом вопрос решится.

Изменено пользователем Inanity

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Если это правда, но CS-ом вопрос решится.

Абсолютная правда - http://www.latticesemi.com/~/media/Documen...cument_id=35203

 

Я уже давно пользуюсь прошивкой через FTDI, ставя ее прямо на платы, если она по стоимости не особо заметна. И совершенно все равно, через какой канал из двух - в среде выбирается. Шьет все, и MachXO всех версий, и XP, XP2, ECP3 - это то, что я проверял. Также шьет и загрузочные флеши, шьет AES-ключи, и вообще, все шьет. Еепромку не ставлю вобще, ибо лишняя деталь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
А где нибудь есть дока по написанию таких плагинов?

имхо это reverse engineering товарищей с сайта МАРСОХОД marsohod.org,

так что все вопросы к ним.

 

Слегка недоработали. FT2232H c может 2 независимых интерфейса поднимать. А UART в хозяйстве лишним не бывает. Предлагаю на порте "B" поднять UART. Но чтобы это заработало сначала надо в FTproge сконфигать порт A как FIFO245 c драйвером D2XX, а порт B как RS232 UART с драйвером VCM. И только потом с помощью FTDI_User_Area_Writer.exe прописать данные в user space. И да (для пользователей винды), проверить в диспетчере устройств USB serial converter B - свойства - дополнительно - галка Загрузить VCP. Проверял лично для программатора digilent SMT1 - работает.

 

 

 

Если это правда, но CS-ом вопрос решится.

 

Плата сделана на основе FT2232H Breakout Board.

все ножки выведены на 22 пин IDC штырьки, что хочешь, то и подключай(3.3в уровень).

А в конфиг файле digilent-jtaghs2-2232h-ok.xml, в архиве, так и есть: порт A - FIFO245 , порт "B" - UART.

 

Абсолютная правда - http://www.latticesemi.com/~/media/Documen...cument_id=35203

 

Я уже давно пользуюсь прошивкой через FTDI, ставя ее прямо на платы, если она по стоимости не особо заметна. И совершенно все равно, через какой канал из двух - в среде выбирается. Шьет все, и MachXO всех версий, и XP, XP2, ECP3 - это то, что я проверял. Также шьет и загрузочные флеши, шьет AES-ключи, и вообще, все шьет. Еепромку не ставлю вобще, ибо лишняя деталь.

 

Отличная наводка! Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пытаюсь с помощью здешнего архива из платки с FT2232H получить Digilent Jtag HS2.

1. FT_Prog-om конфигурирую фт2232.

2. Запускаю FTDI_User_Area_Writer.exe , он переписывает 14 байт.

3. Передергиваю ЮСБ - показываю драйвера Digilent Jtag - в системе USB Serial converter A и B плюс COM XX в портах.

 

НО! Ни Аdept ни iMPACT платку как дигилент не опознает!

 

GUI --- Auto connect to cable...

INFO:iMPACT - Digilent Plugin: Plugin Version: 2.4.4

INFO:iMPACT - Digilent Plugin: no JTAG device was found.

AutoDetecting cable. Please wait.

*** WARNING ***: When port is set to auto detect mode, cable speed is set to default 6 MHz regardless of explicit arguments supplied for setting the baud rates

PROGRESS_START - Starting Operation.

Connecting to cable (Usb Port - USB21).

Checking cable driver.

Source driver files not found.

The Platform Cable USB is not detected. Please connect a cable.If a cable is connected, please disconnect

and reconnect to the usb port, follow the instructions in the 'Found New Hardware Wizard', then retry

the Cable Setup operation.

 

Платка рабочая. Я ею заливаю через Papilio loader.

может дело в еепроме 93с46, нужно может 93с55 ?

 

Может есть у кого полный дамп (с контр. суммой)из заведомо рабочего HS2 ? Я 93с46 попробую в прграммыторе зашить.

 

Мой дамп

0000: 0801 0403 6010 0200 FA80 0008 0000 129A ....`...........

0008: 28AC 1AD4 0000 0000 0046 0312 0044 0069 (........F...D.i

0010: 0067 0069 006C 0065 006E 0074 0328 0044 .g.i.l.e.n.t.(.D

0018: 0069 0067 0069 006C 0065 006E 0074 0020 .i.g.i.l.e.n.t.

0020: 0055 0053 0042 0020 0044 0065 0076 0069 .U.S.B. .D.e.v.i

0028: 0063 0065 031A 0032 0031 0030 0032 0034 .c.e...2.1.0.2.4

0030: 0039 0038 0035 0034 0036 0030 0036 0000 .9.8.5.4.6.0.6..

0038: 0001 92C7 356A 0152 3090 744A 6761 5A15 ....5j.R0.tJgaZ.

 

Изменено пользователем ololol

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Пытаюсь с помощью здешнего архива из платки с FT2232H получить Digilent Jtag HS2.

 

Вы уверены, что вам нужен именно HS2? Могу подсказать только по HS1, он немного проще. Хотя скорее всего разницы в подходе программирования нет.

Возможно с eeprom проблема. Для HS1 использовал 93LC56BT.

Изменено пользователем Inanity

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Вы уверены, что вам нужен именно HS2? Могу подсказать только по HS1, он немного проще. Хотя скорее всего разницы в подходе программирования нет.

Возможно с eeprom проблема. Для HS1 использовал 93LC56BT.

Да, я тоже склоняюсь к 93с56, но сейчас нет в наличии, подожду с Китая, и потом попробую...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Да, я тоже склоняюсь к 93с56, но сейчас нет в наличии, подожду с Китая, и потом попробую...

Adding an external 93C46 (93C56 or 93C66) EEPROM allows each of the chip‟s channels to be independently configured as a serial UART (RS232 mode), parallel FIFO (245) mode or fast serial (opto isolation).

The EEPROM should be a 16 bit wide configuration such as a Microchip 93LC46B or equivalent

 

Это условие выполняется?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Это условие выполняется?

 

Ну как бы микруха 93С46 и ORG в единице, то условие выполняется...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Ну как бы микруха 93С46 и ORG в единице, то условие выполняется...

The EEPROM should be a 16 bit wide configuration such as a Microchip 93LC46B or equivalent capable of a 1Mbit/s clock rate at VCC = +3.00V to 3.6V.

 

Microchip 93C46 4.5-5.5V

Не в этом ли дело?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Не в этом ли дело?

У меня не Микрочип, 2.5-5 в, она пишется и читается...

 

Мой дамп

0000: 0801 0403 6010 0200 FA80 0008 0000 129A ....`...........

0008: 28AC 1AD4 0000 0000 0046 0312 0044 0069 (........F...D.i

0010: 0067 0069 006C 0065 006E 0074 0328 0044 .g.i.l.e.n.t.(.D

0018: 0069 0067 0069 006C 0065 006E 0074 0020 .i.g.i.l.e.n.t.

0020: 0055 0053 0042 0020 0044 0065 0076 0069 .U.S.B. .D.e.v.i

0028: 0063 0065 031A 0032 0031 0030 0032 0034 .c.e...2.1.0.2.4

0030: 0039 0038 0035 0034 0036 0030 0036 0000 .9.8.5.4.6.0.6..

0038: 0001 92C7 356A 0152 3090 744A 6761 5A15 ....5j.R0.tJgaZ.

Изменено пользователем ololol

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Отпишусь по итогам, как говорится практика - критерий истины.

Данная перешивка не актуальна при использовании 94С46 , хоть она и указана на схеме в архиве.

Применять 93С56 (ну и я думаю выше-93с66, хотя я НЕ ПРОВЕРЯЛ!)

 

Всем спасибо за советы...

 

NFO:iMPACT - Digilent Plugin: found 1 device(s).

INFO:iMPACT - Digilent Plugin: opening device: "JtagHs2", SN:210249854606

INFO:iMPACT - Digilent Plugin: User Name: JtagHs2

INFO:iMPACT - Digilent Plugin: Product Name: Digilent JTAG-HS2

INFO:iMPACT - Digilent Plugin: Serial Number: 210249854606

INFO:iMPACT - Digilent Plugin: Product ID: 30900152

INFO:iMPACT - Digilent Plugin: Firmware Version: 010A

INFO:iMPACT - Digilent Plugin: JTAG Port Number: 0

INFO:iMPACT - Digilent Plugin: JTAG Clock Frequency: 10000000 Hz

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти