МАРСОХОД

Open Source Hardware Project

FPGA & Verilog БлогFPGA chips

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


Больше разных плат в интернет магазине

marsohod internet shop boxes

Хочу обратить внимание наших читателей, что произошли некоторые изменения в нашем интернет магазине.

  • Самая первая плата Марсоход с CPLD MAX2 теперь может комплектоваться не только микросхемой EPM240T100C5 с 240 логическими элементами, но и с чипом EPM570T100C5, где 570 логических элементов. Это существенное улучшение по ресурсам. Все имеющиеся проекты для этой платы можно без труда портировать на новую микросхему, так как схема платы осталась такой-же. Это не очень свежая новость, платы с 570м чипом мы уже продаем пару месяцев, но все равно, нужно об этом написать, вдруг, кто-то не знал или не заметил. При заказе платы в магазине тип микросхемы можно указать в выпадающем списке.

  • Точно так же, теперь плата Марсоход2bis может комплектоваться не только Cyclone IV E EP4CE6E22C8 c 6-ю тысячами логических элементов, но и Cyclone IV E EP4CE10E22C8 с 10-ю тысячами логических элементов. Таким образом плата Марсоход2bis по ресурсам FPGA становится в один ряд с платой Марсоход2 (Cyclone III). Учитывая то, что микросхемы Cyclone III постепенно исчезают из поставок и, кроме того, последние версии САПР Quartus Prime уже давно не поддерживают Cyclone III, вероятно совсем скоро плата Марсоход2bis с Cyclone IV станет нашей основной заменой для платы Марсоход2. Практически все проекты платы Марсоход2 можно будет портировать на Марсоход2bis с Cyclone IV с 10ю тысячами логических элементов. Как портировать проекты я недавно писал. Страница описания платы Марсоход2bis так же обновлена.

  • Мы знаем, что у Cyclone IV все же на 2 пользовательских вывода меньше, чем у Cyclone III, поэтому на Марсоход2bis нет одного светодиода и одной кнопочки по сравнению с платой Марсоход2. Чтобы компенсировать это неудобство мы выпустили шилд семисегментного индикатора. Эта плата расширения подойдет и к Марсоход2 / Марсоход2bis и к Марсоход3 / Марсоход3bis. Этот шилд теперь можно купить в нашем магазине.

Шилд 7-ми сегментного индикатора, установленный на плату Марсоход2bis выглядит вот так:

shield 3x7seg onboard

Перейти на страницу интернет магазина FPGA плат!

buy button

 

Управление Marble Machine v2

Я уже как-то писал про свой хобби проект Marble Machine - это такая штука, напечатанная на 3D принтере. Машина перемещает металлические шары, поднимает их вверх на подъемниках и потом они скатываются по желобам вниз. Недавно сделал вторую версию этой электро-маханической машины. Теперь здесь два подъемника, а значит используются два шаговых двигателя. Кроме того, теперь здесь есть электро-магнитный кран. Катушка взята из первого попавшегося под руки автомобильного рэле. Катушка подключается через драйвер двигателя, такой же, какой используется для шаговых двигателей.

На видео выше демонстрация этой машины. Завораживающее зрелище получается. Ниже расскажу, как я делал проект FPGA для платы управления Марсоход3bis.

Проект FPGA для платы Марсоход2bis и платы расширения с 7-ми сегментным индикатором

shield 3x7seg onboard FPGA

Сделали новую плату расширения для наших плат. Шилд дает новые возможности отображения информации для плат Марсоход2 / Марсоход2bis и плат Марсоход3 / Марсоход3bis. Он позволяет отображать 4 символа на семисегментном индикаторе с динамическим управлением. Так же добавляются четыре пользовательских кнопочки.

Дальше есть небольшое описание FPGA проекта, который демонстрирует работу этой платы расширения.

О переносе FPGA проектов с одной платы на другую

port fpga project
Представим себе, что мы увидели какой-то интересный FPGA проект и захотели запустить его на своей плате, но, проблема - плата у нас другая и микросхема FPGA у нас другая. Как перенести тот проект на нашу плату? Возможен ли такой перенос/портирование и трудно ли его выполнить?

В общем случае портирование FPGA проектов - это не очень простая задача. Зависит от многих факторов. Иногда это возможно, иногда нет. Самое главное: ресурсы платы (установленные компоненты, разъемы, интерфейсы) и ресурсы FPGA чипа (количество доступных логических элементов, объем встроенной памяти, PLL, умножители). К примеру, если исходный проект использует SDR память платы, а на нашей плате этой памяти нет или меньше, чем нужно, то что тут можно сделать? В таком случае полный перенос проекта не возможен. Или, к примеру, для проекта требуется минимум 12 тысяч логических элементов FPGA, а на нашей плате их всего 10, тоже не очень хорошо. В общем, по ресурсам имеющейся платы и FPGA нужно смотреть можно ли реализовать в ней проект или нет. Если же платы хотя бы примерно похожи и емкости чипа хватает, то можно пробовать делать перенос проекта.

У нас на сайте уже накопилось довольно много разных проектов для разных плат серии Марсоход. В этой статье я хочу рассказать, как производить портирование проекта с платы Марсоход2 c FPGA Cyclone III на плату Марсоход2bis, Cyclone IV. Я буду портировать проект "Простой текстовый терминал".

В этом проекте реализован текстовый видеоадаптер 56 строк по 180 символов, формируется видеосигнал 1440x900, 60Гц и картинка отображается на VGA дисплее. Плата принимает символы из последовательного порта и печатает их в экран. При этом, если приходит символ 0x0D, это "Enter"/"перевод каретки", то производится скроллирование экрана. Кроме того, терминал понимает символ табуляции 0x09.

Марсоход2 и Марсоход2bis визуально почти ничем не отличаются, но и на самом деле они производятся на одной и той же печатной плате. Главное отличие этих плат обусловлено установленными чипами.

Плата Марсоход2, FPGA Cyclone III, чип EP3C10E144C8, 10 тысяч логических элементов, 414Кбит встроенной памяти, 2 PLL, 23 (18x18) или 46 (9x9) встроенных умножителей.

Плата Марсоход2bis, FPGA Cyclone IV E, чип EP4CE6E22C8, 6 тысяч логических элементов, 270Кбит встроенной памяти, 2 PLL, 15 (18x18) или 30 (9x9) умножителей.

Плата Марсоход2bis немного дешевле, она в базовой комплектации имеет менее емкий чип. К тому же у Cyclone IV меньше I/O выводов, из-за этого на этой плате три светодиода и одна кнопка, у платы Марсоход2 есть 4 светодиода и две кнопки. Но зато Cyclone IV поддерживается современным программным обеспечением Intel Quartus Prime Lite 18.1 Edition, а для Cyclone III последняя версия квартуса - это Quartus II v13.1.

Посмотрим, смогу ли я перенести проект "Простой текстовый терминал" на плату Марсоход2bis?

Подборка проектов для платы Марсоход2bis

title

В этой статье я расскажу про несколько совсем простых проектов платы Марсоход2bis. С готовыми проектами обычно легче начинать свой собственный, так как в исходном готовом проекте уже сделаны все важные настройки, задан тип микросхемы FPGA, сделаны назначения контактов ввода/вывода микросхемы, есть модуль верхнего уровня в котором описаны входные и выходные сигналы ПЛИС.

Исходные тексты приведенных ниже проектов можно получить на нашей странице github: https://github.com/marsohod4you/marsohod2bis

Внутри этого репозитория для каждого отдельного FPGA проекта создана отдельная папка, например, counter_verilog - это папка проекта для счетчика, vga_colors - папка проекта генерации VGA сигналов. Здесь есть еще проект сдвигового регистра, hello-world, serial-port эхо, а так же проект генератора сигналов и оцифровки сигнала с помощью АЦП платы. Проекты созданы в среде Intel Quartus Prime 18.1 Lite Edition, должны работать и более поздних версиях квартуса.

Далее есть краткое описание каждого из проектов.


ВКонтакте  facebook  GitHub  YouTube  Twitter
Вы здесь: Начало