Изучаем САПР Altera Quartus II / Intel Quartus Prime, язык описания аппаратуры Verilog HDL и кое-что про VHDL. Программируем FPGA Altera / Intel Cyclone III, Cyclone IV, MAX II, MAX10. Экспериментируем с платами разработчика FPGA серии Марсоход, Марсоход2, Марсоход3. А еще разбираемся с FPGA Gowin.
Поскольку я начал изучать этот очень быстрый симулятор Verilog HDL - Verilator, то подумал, мне, чтобы лучше понять и освоить его нужен конкретный проект. Но ведь у меня их много! Почему бы мне не попробовать симулировать скажем Amber SoC - систему на кристалле с процессором ARM v2a? Когда-то я занимался этим проектом и запустил эту SoC в плате Марсоход2 и даже какой-то Linux у меня там стартовал. Я когда-то даже симулировал этот проект в Icarus Verilog, но работала та симуляция чрезвычайно медленно. Это то, что нужно. Я попробую теперь симулировать этот же Amber SoC с помощью Verilator. Посмотрим насколько он окажется быстрее.
Я уже писал про симуляцию Verilog HDL проектов в ModelSim и с помощью Icarus Verilog. Однако, конечно, существуют и другие средства. Один из самых быстрых симуляторов, и к тому же свободный и бесплатный, - это Verilator. У него есть свои особенности:
Verilator позволяет преобразовать Verilog модули в C++ классы, которые потом компилируются в обычную исполняемую программу. Запускаем получившуюся программу - запускаем симуляцию. Это позволяет достичь очень высокой производительности.
Verilator, может обрабатывать только синтезируемый Verilog, то есть именно тот код, из которого потом получается "прошивка" для FPGA. Поведенческие модели, всякие присвоения с задержками вроде A = #5 ~A; работать не будут.
Из пункта 2 следует, что тестбенч для симуляции нужно будет писать не на самом верилоге, как обычно, а на C++. Впрочем, в некотором смысле это даже плюс.
Ниже я приведу несколько очень простых примеров использования симулятора Verilator. Я умышленно буду все упрощать, возможно даже слишком упрощать, чтобы было лучше понятно, что из себя представляет Verilator.
Для этого в среде САПР Intel Quartus Prime выбираем пункт меню File -> New Project Wizard.. Появляется новое окно диалога, в котором задаются некоторые параметры нового проекта.
В этой обзорной статье я постараюсь рассказать какие действия выполняются тем или иным пунктом меню САПР Quartus Prime. Я сделаю акцент только на самых часто используемых действиях, так что это будет не полное руководство, а скрорее краткий справочник. Тем не менее, такое, даже поверхностное знакомство поможет лучше ориентироваться в программе начинающим разработчикам. Некоторые пункты меню САПР Quartus являются совсем тривиальными, такими же как и в других программах вроде офисных пакетов, а некоторые очень специфичными. В целом среда Quartus не является очень сложной для освоения.
Установка САПР Quartus Prime Lite на компьютер с операционной системой Windows не является сложной. Все что нужно сделать - это запустить программу инсталлятора (где ее взять написано вот здесь) и все время нажимать кнопку "Next".
Далее рассказывается о процессе установки и приведены скриншоты программы.
Подробнее...