FPGA & Verilog БлогFPGA chips

САПР Altera Quartus II / Intel Quartus Prime, язык Verilog HDL и кое-что про VHDL, FPGA Cyclone III, Cyclone IV, MAX II, MAX10. Платы разработчика серии Марсоход, Марсоход2, Марсоход3.


m3gw angle2

Мы разработали новую плату на базе китайского чипа Gowin GW1NR-UV9QN88PC6/I5.

Используемая нами микросхема Gowin FPGA имеет встроенные ресурсы:

  • до 71 User IO pin
  • 8640 LUT
  • 6480 FF
  • 17280 bit SSRAM
  • 468kb BSRAM
  • 608Kb User Flash
  • 5 DSP Blocks
  • 2 PLL
  • встроенный генератор OSC
  • встроенные блоки сериализаторов OSER/ISER, ELVDS/TLVDS, ODDR/IDDR

Плата Марсоход3GW визуально довольно похожа на платы Марсоход3, она такой же геометрии и основные компоненты расположены так же. Но чип FPGA другой. Что ещё есть на плате?

Еще один пример FPGA проекта для платы MCY112.

На этом демонстрационном видео показано, что на плату MCY112 можно установить плату расширения VGA от микрокомпьютера Raspberry Pi. На нашей плате как раз есть совместимые с распбери GPIO разъемы. Затем после загрузки ПЛИС можно через последовательный порт специальной программой на питоне записывать в видеопамять изображения.

Я передаю в плату изображения котиков. Надеюсь все любят котиков!

PicoSoc

На страницах нашего сайта marsohod.org я уже показывал примеры проектов системы на кристалле с процессором RISC-V. Я запускал те проекты на платах Марсоход3 и Марсоход3бис с ПЛИС Intel MAX10. Ядро микроконтроллера там было от российской компании Syntacore. Я уверен, что в какой-то мере тот процессор можно запустить и на нашей новой плате MCY112. Тем не менее, сейчас я хочу испытаь другой вариант RISC-V процессора. Это будет PICORV32, взятый мною вот здесь https://github.com/YosysHQ/picorv32

Посмотрим, что из этого получится.

flash

На плате MCY112 установлено 2 одинаковых чипа флэш памяти W25Q16, 2 Мегабайта в каждом чипе.
Первый чип (1) предназначен для хранения пользовательских данных, например, для хранения программы процессора RISC-V.
Второй чип (2) может использоваться для автозагрузки FPGA Cyclone после подачи питания на плату.
В этой статье я расскажу, как программировать оба чипа.

 mcy112 leds

Самый простой проект, который можно придумать для любой FPGA платы это мигание светодиодами. Это своего рода минимальная программа "Hello World!", которую пишут начинающие программисты на C/C++. Для всех наших плат ранее мы делали подобные проекты. Не будет исключением и плата MCY112 построенная на ПЛИС Cyclone EP1C12Q240C8.

Я было даже подумал снять демонстрационное видео про этот проект, но снимать там особо нечего.
Видео-то я снял, только смотреть я думаю его будет скучно. Поэтому просто сделал простую GIF анимацию.