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

Gowin Analyzer Oscilloscope + Tang Nano 9K

1 час назад, andrewkrot сказал:

ft.7z

Сохраните пожалуйста из FT_Prog файл в виде XML Template File.

Был удачный опыт подмены FT2232D более распространенной микросхемой FT2232H в программаторе TI XDS100+RS232 V1.0:

 

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


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

4 часа назад, andrewkrot сказал:

Спасибо за информацию, но это к сожалению мне не сильно помогло. Но в итоге похоже проблема решилась путём модификации USB-дескрипторов прошивки https://github.com/sipeed/RV-Debugger-BL702/. Однако обо всём по-порядку.

После экспериментов с моим кабелем на базе FT2232H оказалось, что Gowin Programmer (Version 1.9.8.05 build(20302)) не хочет его признавать от слова "совсем" как только я меняю строковый дескриптор iProduct у FTDI. Ему нужно, чтобы это обязательно была строка "Dual RS232-HS", достаточно убрать HS и всё перестаёт работать. Роль дескриптора iManufacturer изучать не стал, т.к. по большому счёту разницы нет. Предполагаю, что содержимое EEPROM (само по себе) особой роли не играет. Итоговый дамп EEPROM под спойлером.

Скрытый текст

Device: 0 [Loc ID:0x361] 

Word  MSB
0000: 0800 0403 6010 0700 2D80 0000 0000 0A9A   ....`...-.......
0008: 1CA4 0000 0000 0000 0046 030A 0046 0054   .........F...F.T
0010: 0044 0049 031C 0044 0075 0061 006C 0020   .D.I...D.u.a.l. 
0018: 0052 0053 0032 0033 0032 002D 0048 0053   .R.S.2.3.2.-.H.S
0020: 0000 0000 0000 0000 0000 0000 0000 0000   ................
0028: 0000 0000 0000 0000 0000 0000 0000 0000   ................
0030: 0000 0000 0000 0000 0000 0000 0000 0000   ................
0038: 0000 0000 0000 0000 0000 0000 0000 368D   ..............6.

 

XML-шаблон - ft2232h-template.xml

Далее я попытался перенести эти дескрипторы в прошивку RV-Debugger-BL702 и это помогло - кабель стал определяться в Gowin Programmer и через него удалось запрограммировать SRAM. Но embedded flash не прошивалась ни в какую, в том числе и через openFPGALoader. Оказалось, что в комплекте исходников прошивки лежит файл examples/usb/usb2uartjtag/jtag_process.c.gowin, которым нужно заменить examples/usb/usb2uartjtag/jtag_process.c и пересобрать прошивку. После чего всё начинает работать как ожидалось.

Модифицированный examples/usb/usb2uartjtag/usb_descriptor.c, правильный jtag_process.c и главное собранный файл прошивки (main.bin) в архиве RV-Debugger-BL702.zip. При сборке есть такой нюанс, что необходим комплект компилятора с расширениями (SiFive freedom tools) - https://github.com/sifive/freedom-tools/releases

Перепрошивка Tang Nano выполняется с помощью программы из репозитория https://github.com/sipeed/RV-Debugger-BL702/ (директория tools, нужно распаковать chip.zip с перезаписью):

./bflb_mcu_tool --chipname bl702 --port /dev/ttyACM0 --xtal 32M --firmware main.bin

Для перевода платы в режим программирования на Tang Nano 9K необходимо перед подключением платы через USB-C замкнуть:

TangNano9K-Boot.thumb.JPG.31d69edd8b4157c0b6c5c0ae95c6bd24.JPG

Для Tang Nano 4K:

TangNano4K-Boot.thumb.JPG.9664c3d819e68999ebb8c9d14fa1f881.JPG

 

 

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


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

17.05.2022 в 15:55, makc сказал:

Пробовал-ли кто-нибудь заставить работать Gowin Analyzer Oscilloscope с Tang Nano 9K или каким-либо другим нестандартным кабелем USB<=>JTAG?

...

Но среды Gowin Programmer и Gowin Analyzer Oscilloscope его признавать не хотят.

Хм-м...

Вот только что получил от курьера Tang Nano 9K.

Gowin Programmer заработал "из коробки" : подключаем плату,  запускаем программер, там Edit - Cable Setting - USB Cable Setting - Query (возвращает Cable found: USB Debugger A/0/353/null (USB location:353) ) - Save

Затем сканиую цепочку, определяется GW1N-9C/GW1NR-9C, Device ID Code считываестя штатно.

Все это под виндой.

ЧЯДНТ? :)

 

Завтра попробую накидать проект под GAO и проверить.

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


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

Только что, StewartLittle сказал:

Затем сканиую цепочку, определяется GW1N-9C/GW1NR-9C, Device ID Code считываестя штатно.

Все это под виндой.

Возможно всё дело именно в виндовой версии, которая ведёт себя иначе, чем версия под Linux. Какая версия программера, кстати говоря?

1 минуту назад, StewartLittle сказал:

Завтра попробую накидать проект под GAO и проверить.

Работать будет. Проблемы начинаются с того, что кабель просто не определяется.

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


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

1 минуту назад, makc сказал:

Возможно всё дело именно в виндовой версии, которая ведёт себя иначе, чем версия под Linux. Какая версия программера, кстати говоря?

Работать будет. Проблемы начинаются с того, что кабель просто не определяется.

Сейчас проверю под центосом или убунтой.

Версия 1.9.8.05 build(20302)

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


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

2 минуты назад, StewartLittle сказал:

Сейчас проверю под центосом или убунтой.

Версия 1.9.8.05 build(20302)

Да, у меня такая же. Причём запускать нужно под sudo, т.к. он выгружает модули ядра для ftdi, которые мешают работе. В принципе достаточно попробовать выполнить sudo ./programmer_cli --scan-cables и если кабель найдется, то всё хорошо.

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


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

1 минуту назад, StewartLittle сказал:

Да, под центосом "No USB Cable conection" :(

О том и речь... Правда Sipeed вместо решения проблемы предложили костыль в виде использования openFPGALoader - https://wiki.sipeed.com/hardware/en/tang/Tang-Nano-Doc/flash-in-linux.html
Но это не решает проблемы с использованием анализатора, с чего всё, собственно, и началось.

Но решение есть! :-) См. выше.

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


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

1 минуту назад, makc сказал:

О том и речь... Правда Sipeed вместо решения проблемы предложили костыль в виде использования openFPGALoader - https://wiki.sipeed.com/hardware/en/tang/Tang-Nano-Doc/flash-in-linux.html
Но это не решает проблемы с использованием анализатора, с чего всё, собственно, и началось.

ЕМНИП, на самой первой Tang Nano была возможность подключить внешний JTAG.

Для TN9K я еще не смотрел, у них не так?

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


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

3 минуты назад, StewartLittle сказал:

ЕМНИП, на самой первой Tang Nano была возможность подключить внешний JTAG.

На 4К и 9К для этого нужно снять резисторы-перемычки. После этого можно подключить, но проще перепрошить BL702.

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


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

18.05.2022 в 18:03, makc сказал:

проще перепрошить BL702

Отпишитесь, если получится.

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


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

21 минуту назад, rloc сказал:

Отпишитесь, если получится.

Получилось без проблем. См. пост выше по теме:

 

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


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

Добрый день! Есть плата tang nano 9k, ОС W7, версия GW 1.9.8.05. Плата определяется, прошивается в режиме SRAM Program, Gowin Analyzer запускается. Пытаюсь прошить внешнюю SPI (P25Q32H) через exFlash Erase, Program или режим thru GAO-Bridge. Программатор делает вид что прошивает:


Info:    "exFlash Erase,Program thru GAO-Bridge" starting on device-1...
Warn:    Compatible cable found
Info:    Loading GAO-Bridge...
Info:    try to program spi flash: 0x856016!
Info:    Erasing 109 sectors from address 0x000000 to 0x06d000...
Info:    Program flash finished.
Info:    Cost 10.57 second(s)

Результат: прошивка или не запускается или не прошивается. статусный регистр не информативный -  Status register is: 0x00039020. 
 

В ВИКИ сипида (https://wiki.sipeed.com/hardware/en/tang/Tang-Nano-Doc/questions.html) потом уже прочитал "1.4. Download slowly#
Don't choose Operation containing Verify". 

Кто-нибудь сталкивался с таким? Прошивка BL702, режим verify или что то еще? как то её прошили первый раз

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


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

48 минут назад, lelik сказал:

Результат: прошивка или не запускается или не прошивается. статусный регистр не информативный -  Status register is: 0x00039020. 

На сколько я понимаю, на Tang Nano 9K эта флешка стоит для хранения пользовательских данных, например, прошивки микроконтроллера в ПЛИС. При этом сама ПЛИС всегда грузится в режиме Autoboot из внутреннего флеша:

image.thumb.png.d904553931b324370bbd9c78d3d8b4b6.png

Поэтому я не понимаю, чего и как вы хотите добиться в этих условиях? Чтобы она грузилась из внешней флешки? Тогда нужно менять конфигурацию пинов MODE[1:0] (перепаивать резисторы).

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


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

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...