FPGA chips

Изучаем САПР 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, VHDL

Рискну затронуть такую холиварную тему: сравнение двух методов разработки, графический ввод схемы и текстовое описание проекта на языках HDL Verilog / VHDL.

Какой метод лучше?

Сразу скажу, что я сторонник текстового ввода, так что наверняка моя заметка может выглядеть предвзятой. Тем не менее, вот еще важные замечания по теме:

  1. проект может быть выполнен хорошо и продуманно не зависимо от того, какой метод использовался, точно так же плохой дизайн можно сделать и с использованием схемотехнического представления и при описании на Verilog / VHDL. То есть, качество проекта скорее зависит от квалификации программиста, чем от выбранного инструмента (хотя у программиста могут быть свои предпочтения и специфический опыт работы со средой проектирования).
  2. не зависимо от представления проекта в виде HDL текста или схемы, компилятор (теоретически) должен и обязан синтезировать одинаково оптимальный образ для прошивки в ПЛИС. В любом случае компилятор будет оптимизировать комбинационную логику, удалять неиспользуемые элементы, триггера, синтезировать и оптимизировать netlist.

Теперь все таки давайте рассмотрим недостатки и преимущества методов разработки в схеме или в текстовом виде.

Altera Quartus II v13

Наконец-то, хоть и с некоторым запозданием, дошли руки попробовать новый Altera Quartus II v13.0
Новая версия квартуса вышла в компании Altera еще 6-го мая, вчера я ее установил и попробовал откомпилировать свой проект для платы Марсоход2.
Я пока попробовал только 64х битный Quartus II, так как у меня стоит 64-х битная Windows 7.
Проект успешно откомпилировался, и я смог загрузить его в плату нашим программатором MBFTDI прямо из среды Quartus II Programmer.

Таким образом, наши существующие драйвера программатора MBFTDI подходят к новой версии квартуса.

Скачать их можно, как и раньше, в разделе загрузки на нашем сайте, ну или вот здесь:

Для их установки нужно всего лишь скопировать jtag_hw_mbftdi_blaster64.dll в папку c:\altera\13.0\quartus\bin64 или jtag_hw_mbftdi_blaster32.dll в папку c:\altera\13.0\quartus\bin - в зависимости от того, какая у вас стоит операционная система 32 или 64 бита.

Что еще новенького в новой версии Quartus II?

7 мая (25 апреля по старому стилю) 1895 года на заседании Русского физико-химического общества российский физик Александр Степанович Попов выступил с докладом и демонстрацией созданного им первого в мире радиоприемника, осуществив первый сеанс радиосвязи. Началась новая эпоха: радиосвязь, радиовещание, радиолокация, позже телевещание и спутниковая связь. Завтра, 7 мая,  мы отмечаем день радио!

Плата Марсоход2 с проволочной антенной как FM радиопередатчик

Мы сделали свой радиопередатчик, конечно, с использованием ПЛИС Altera Cyclone III на нашей плате Марсоход2. Все, что нужно для этого проекта – это кусок провода, подключенный в качестве антенны к единственному пину IO6 платы.

На этом видео видно, как с помощью программы терминала TeraTerm аудиофайл WAV формата, 22050Гц, 8бит, моно передается через последовательный порт в плату Марсоход2, которая передает его в эфир используя частотную модуляцию на частоте 90МГц. Бытовой приемник улавливает и воспроизводит передаваемую мелодию. Мелодия ловится даже в автомобиле, стоящем во дворе.

Конечно, нам сегодня это сделать гораздо проще, чем Попову. Ведь он был первопроходцем, а мы просто идем следом, хотя и на совершенно новом уровне знаний.

Считается, что любой периодический сигнал можно представить суммой других, более простых сигналов.

В радиотехнике обычно используют представление сигналов в виде суммы более простых функций от времени синусов или косинусов. Чтобы проиллюстрировать этот факт мы написали простую online программу - поэкспериментироуйте с ней.

Sine waves form square signal.
S(t)

Прямоугольные импульсы, меандр
Треугольные импульсы, ПИЛА

В этой интерактивной программе можно добавлять или убирать компонент-синусоиду. Для этого просто кликнете левую кнопку мыши на спектральной компоненте (палочка синего цвета на спектре). Таким образом, вы сможете синтезировать сигналы состоящие из разных "наборов" синосоидальных компонент.

Здесь можно увидеть, что прямоугольный сигнал, меандр, можно представить в виде суммы бесконечного числа нечетных гармоник убывающей амплитуды.

Треугольный сигнал так же может быть представлен в виде суммы нечетных гармоник, только фаза некоторых сигналов синусоиды сдвинута на 180 градусов.

Здесь на рисунке два графика.

Вверху - график сигнала. Это функция от времени. Например, это может быть изменение напряжения на нагрузке, подключенной к источнику сигналов.

Внизу спектральное представление сигнала. Показывает какие синусоидальные компоненты, с какой амплитудой и фазой присутствуют в оригинальном периодическом сигнале. Мы показываем только несколько первых, наиболее сильных компонет, другие (их бессчетное множество) гораздо меньшей амплитуды, но они так же вносят свой вклад в формирование итогового сигнала.

Понятие спектра очень важно для радиотехники., Дальше, опираясь на знания о спектре, можно рассуждать о принципах модуляции сигнала, задумываться о типах модуляции (амплитудной, частотной) для передачи сигнала на расстояние.

mars3

Сегодня день космонавтики - великий день.

Но самую интересную статью о космосе я прочитал буквально вчера на хабре: "Как мы искали Марс-3" - очень рекомендую.