FPGA: GoWin (Китайская ПЛИС), первые проекты.

 

Ноябрь 2020 года.

 

    Новость китайцы начали выпускать ПЛИС....

ПЛИСы интересные в них есть своя изюминка если сравнивать в именитыми игроками:

Intel(Altera), Xilinx, Lattice.

Посмотрел семинар, решил поиграться с плисиной.

Заказал плату на ebay.com Tang Nano, купил USB-C кабель.

 

На плате оказался установлен программатор на микросхеме CH552T.

Windows7-64 сама нашла драйвера, что очень удивило.

Зарегистрировался на сайте www.gowinsemi.com, скачал среду разработки,

всего 300 Мбайт (на диск разворачивается в ~ 1 Гбайт).

Установил на ПК среду, понадобился лицензионный ключ.

Сначала запросил ключ на сайте www.gowinsemi.com, от туда тишина.

Запросил ключ у http://icgamma.ru, ребята прислали ключ. Спасибо !

Создал проект мигания светодиодом, загрузил в плату - работает.

Проект грузиться в SRAM и при выключении питания ПЛИС все забывает.

Хорошо загрузим в строенную Flash и тут началось...

Загружаю прошивку в embeded Flash, а в ответ ошибка записи и тишина от платы,

не работает и все тут...

 

 

 

Потратив два дня перерыв документацию и не получил результата, пришел к выводу,

что где то глюк и не понятно где...

Решил подойти по другому. 

Прошить через программатор командной строки и о чудо заработало !

programmer_cli --device GW1N-1 --operation_index 5 --fsFile led_blink.fs

Что интересно если вызвать подсказку у programmer_cli.exe то --operation_index содержит

куда больше вариантов чем, представлено в графической оболочке.

Исходники и скрипт на GitHub.

 

Проект передатчик фиксированного пакета по UART.

 

    Понадобился для тестирования UART приемников автономный передатчик,

который может периодически передавать в UART порт известные данные.

При чем желательно чтобы умел работать на нескольких скоростях.

Так был реализован данный проект.

Передатчик умеет передавать раз в секунду строку "Hello1234567890\n",

передача идет одновременно на нескольких скоростях на нескольких выводах.

Передача осуществляется на фиксированных скоростях:

115200, 57600, 38400, 19200, 9600, 4800, 2400, 1200 бит/с, формат 8N1.

Один отдельный вывод работает на фиксированной скорости.

Т.е. достаточно только подключиться к нужному выводу.

 

Почему не микроконтроллер ?

Все просто, не в каждом микроконтроллере можно встретить большое количество USART модулей.

Реализации с программный USARTом и мультиплексированием оставим в покое,

т.к. время затраченное на подобную реализацию куда больше чем тот же проект на ПЛИС.

К тому же на ПЛИС можно сделать передатчик на нестандартные скорости,

которые не каждый USART позволит выставить.

 

Для чего еще можно приспособить ?

Например, если заменить передаваемую строку на пакет в формате Pelco-D,

то можно проводить тестирование камер и систем управления, этакий пульт дистанционного управления на ПЛИС :) и т.п.

 

Исходники gowin_tang_nano_prj/uart_testerна GitHub.


Предварительный итог:

ПЛИСы интересные, стоят того чтобы их изучать и применять.

Уже есть идеи куда применить, осталось прикупить сами микросхемы.

 

Достоинства:

+ Среда мало занимает места на диске.

+ Свой синтезатор, фиттер (что тоже удивило).

+ Скорость работы - высокая по сравнению с другими производителями (походу intel, xilinx 

забыли что так можно делать).

+ Есть ПЛИСы с CPU ядрами типа Cortex-M3, Risc-V, BLE (у других производителей жирные Cortex-Ax

для работы под Linux :( ).

+ Обещают низкие цены (посмотрим).

+ Наличие IP Ядер.

+ Наличие ПЛИС с SDRAM/DDR памятью на борту, MIPI и прочими интерфейсами.

  

Из недостатков:

Все еще несколько сырое... И среда и документация и поддержка...

- Среда находится в beta версии.

- Нет форума где можно задать вопросы.

- Нет FAQ.

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

- Доставаемость - пока под вопросом, придется искать где купить.

 

 

И тем не менее, результаты работы с GoWin FGPA оставили положительные эмоции,

похоже что ребята решили взяться за ПЛИСы всерьёз и надолго.

Если так и дальше пойдет, то надо учить китайский.

Что у нас, в России ? :

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

Воронеж осваивает производство устаревшие плис от Alter-ы... и предлагает использовать устаревший

софт (где сегодня под старый Quartus брать машины с ...XP и т.п. ?)

.....

.....

.....

китайцы тем временем, под руководством коммунистической партии планомерно захватывают мир.