Скоростная передача данных в режиме Synchronous FIFO
Я решил повторить проект "Скоростная передача данных" платы Марсоход3 теперь уже на плате Марсоход3GW2 с FPGA Gowin.
Работает!
Изучаем САПР Altera Quartus II / Intel Quartus Prime, язык описания аппаратуры Verilog HDL и кое-что про VHDL. Программируем FPGA Altera / Intel Cyclone III, Cyclone IV, MAX II, MAX10. Экспериментируем с платами разработчика FPGA серии Марсоход, Марсоход2, Марсоход3. А еще разбираемся с FPGA Gowin.
Я решил повторить проект "Скоростная передача данных" платы Марсоход3 теперь уже на плате Марсоход3GW2 с FPGA Gowin.
Работает!
Что-то похожее я уже когда-то делал с нашей платой Марсоход2RPI и Распбери Пи3. Но теперь у нас другая FPGA плата на Cyclone III и другой микрокомпьютер Raspberry Pi5. И даже современная ОС теперь уже будет 64-bit Bookworm.
Смогу ли я загружать FPGA из микрокомпьютера и сделать взаимодействие между CPU микрокомпьютера и платой FPGA?
(Для лиги лени сразу напишу ответ: да, смогу).
Подробнее можно прочитать далее в этой статье.
Вероятно вы слышали о "Школе синтеза цифровых схем". Это образовательная инициатива, созданная для быстрого освоения современных подходов к проектированию цифровых микросхем. Каждый желающий может записаться на курсы школы и пройти обучение.
Школа готовит программу лабораторных работ для изучения FPGA. Они опубликованы на Github: https://github.com/yuri-panchul/basics-graphics-music
Особенность этих лабораторных работ в том, что они адаптированы для совершенно разных FPGA плат, у них разные производители, используется разная ёмкость FPGA чипов, разные вендоры FPGA.
Мы сделали форк этих лаб https://github.com/marsohod4you/basics-graphics-music и адаптировали лабораторные работы и на нашу плату Марсоход3GW2.
Здесь я немного расскажу о некоторых учебных работах.
Интерфейс HyperBus был разработан компанией Cypress в 2014 году. В настоящее время уже многие компании выпускают микросхемы использующие HyperBUS. Это и микросхемы памяти и флэш память и микроконтроллеры с поддержной этого интерфейса.
Основное преимущество микросхем памяти с интерфейсом HyperBUS это маленький размер корпуса (24 Balls TFBGA, 5x5-1 Ball Footprint), небольшое количество сигналов для управления и передачи данных. Всё это упрощает разработку миниатюрных устройств использующих HyperRAM память.
Поизучаем HyperRAM.
Некоторые инженеры до сих пор избегают использования в своих проектах китайских FPGA, например, китайской компании Gowin из-за того, что кажется, что лишены привычных инструментов разработки. Если Вы привыкли к использованию ПЛИС Altera / Intel, то один из найважнейших инструментов для вас это SignalTap. Он позволяет заглянуть внутрь микросхемы и записать выборку сигналов и потом посмотреть осцилограммы сигналов. Возможно ли такое для микросхем Gowin? Конечно, да. В этой статье я расскажу, как пользоваться инструментом GAO - Gowin Analyzer Oscilloscope. Я думаю использование GAO изменит мнение разработчиков и они станут чаше использовать микросхемы Gowin в проектах. Эти микросхемы не хуже альтеровских, а иногда даже лучше: меньше размером, имеют встроенную память PSRAM, производительность не хуже и т.д.
Будет много картинок.
Чтобы рассказ получился более содержательным я буду использовать хоть и простой, но настоящий проект двоичного счетчика для FPGA платы Marsohod3GW2. На плате стоит микросхема Gowin GW1NR-LV9QN88PC6/I5.
Проект возьмем на github https://github.com/marsohod4you/Marsohod3GW/tree/Marsohod3GW2_GW1NR-LV9QN88PC6I5 бранч Marsohod3GW2_GW1NR-LV9QN88PC6I5, папка проекта _clk_counter.
Подробнее...