САПР Altera Quartus II / Intel Quartus Prime, язык Verilog HDL и кое-что про VHDL, FPGA Cyclone III, Cyclone IV, MAX II, MAX10. Платы разработчика серии Марсоход, Марсоход2, Марсоход3.
К каждой нашей FPGA или CPLD плате мы всегда делаем самый первый проект очень простым. Обычно это что-то вроде двоичного счетчика, отображающего биты на светодиодах платы. Не будет исключением и плата MA3128 на базе CPLD Altera серии MAX3000 EPM3128ATC100. Все-таки начинать изучение чего-то нового, новой платы всегда лучше с чего-то простого.
Плата МА3128 это простейший контроллер на базе CPLD Alterа. Плата предназначена для установки на микрокомьютеры Raspberry для расширения их функциональных возможностей. Плата, например, позволит подключить маломощные шаговые двигатели или сервомашинки к Raspberry или управлять какими-то другими устройствами.
Недавно я занимался портированием системы Syntacore RISC-V на плату Марсоход3. В принципе, это было не очень трудно, так как на этой плате используется емкий FPGA чип MAX10 с 50ю тысячами логических элементов. А можно ли запустить хоть какой-то RISC-V на более слабом FPGA чипе? Попробую плату Марсоход3bis. На этой плате, как и на плате Марсоход3, стоит Intel MAX10, но здесь всего 8 тысяч логических элементов. На плате Марсоход3bis стоит микросхема FPGA 10M08SAE144C8. Так получится или нет?
К сожалению, в сложившейся ситуации доступ россиян к загрузке программного обеспечения САПР Quartus Web и Quartus Prime с сайта Intel запрещено. Вы все еще можете пробовать скачать это ПО используя VPN.
Здесь, конечно, далеко не все версии. Во-первых, я выложил только Quartus Web и Quartus Prime Lite версии. Это те версии, которые не требовали и не требуют платежей. Во-вторых, я выделил несколько ключевых версий, которые вероятно нам могут понадобиться:
версии 8.0 и 9.1 - это очень старые версии, которые работали еще с первыми Altera Cyclone. Увы я думаю в ближайшее время даже эти раритеты будут использоваться из старых остатков на складах.
версия 13.0 - самая последняя версия с поддержкой Cyclone II и MAX3000
версия 13.1 - Cyclone III
версия 15.1 - поддерживает MAX10 и у этой версии с нашей платой Марсоход3bis нет проблемы с "too close CLK to PIN27" Эта проблема обсуждалась у нас на форуме.
версия 17.1 - нужна так как для нее выполнен проект Syntacore RISC-V для платы Марсоход3.
версия 21.1 - последняя версия САПР Intel Quartus Prime.
Надеюсь скачивание ПО с Яндекс диска сделает нашу работу хоть чуть чуть проще.
Что будет дальше я пока не знаю. У нас есть некоторый запас микросхем для производства плат Марсоход3, Марсоход3bis, но недостает некоторых компонентов, в частности генераторов. Мы пытаемся решить этот вопрос. Возможно мы сможем покупать микросхемы FPGA Intel из других источников.
Так же мы рассматриваем возможность использования ПЛИС от китайской компании GOWIN. Получится ли у нас - покажет время.
В этом видео ролике я показываю, как запустить простую RISC-V программу в плате Марсоход3. Программа написана для системы Syntacore RISC-V SCR1.
В оригинальных синтакоровских исходниках есть простой пример sw/hello, но он уж совсем простой и скучный - эта программа запускается и выводит в консоль, через последовательный порт сообщение "Hello SCR1" и все.
Я сделал свою программу helloEx. Она чуть похитрее. Её исходники есть на нашем github в папке sw/helloEx. Дальше расскажу, что делает эта программа и как запускить её в нашей FPGA RISC-V системе.
Подробнее...