МАРСОХОД

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.


Некоторые итоги...

Эх лето, жара.. Лето почти закончилось и можно подвести некоторые итоги.

Самое главное - мы закончили цикл обучающих статей. Было всего пять уроков Verilog
И ВОТ! Теперь все пять уроков Verilog можно взять на нашем сайте одним файлом:

Еще на нашем сайте появились статьи "пошаговые инструкции" для Quartus II (вы их уже наверное читали?):

  1. Создание первого проекта, компиляция и прошивка платы Марсоход.
  2. Создание проекта двухбитного "сумматора" для платы Марсоход.
  3. Симуляция проекта в среде Quartus II.

На мой взгляд этих уроков и Verilog и Quartus должно быть достаточно, что бы пытливый читатель смог понять что к чему и начал сам делать проекты.

Удачи!

Пошаговая инструкция для Quartus II: Симуляция проекта

Какой бы проект для CPLD или FPGA мы ни делали: сложный или простой, всегда полезно произвести его симуляцию. Симуляция – это программное тестирование проекта, всегда делается до его проверки в железе. Микросхема имеет входы и выходы. Если мы зададим, например, последовательность и длительность входных импульсов, то система проектирования сможет просчитать результирующие сигналы на всех выходах. И не только на выходах! С помощью симуляции можно заглянуть внутрь всех модулей проекта и посмотреть на процессы, происходящие внутри чипа. Так, еще до тестирования в реальном чипе можно понять правильно работает проект или нет – ведь вы же знаете какие сигналы должны быть на выходах вашей микросхемы?

симуляция сигналов D-триггера

Этот урок про средство разработки Altera Quartus II и про симуляцию проекта. Дальше будет очень много картинок!

Введение в Verilog. Пятый урок, Синхронная логика.

Verilog HDL

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

Существует несколько видов триггеров. Наиболее важные для практического применения – это D-триггера. Вот графическое изображение D-триггера:

D-триггер (flipflop)

Введение в Verilog, Четвертый урок. Поведенческие блоки.

Урок Verilog

Раньше мы уже познакомились с постоянным назначением сигналов, оно выглядит, например, вот так:


wire a,b,c;
assign c = a & b;

Постоянные назначения весьма полезны, но и они имеют недостатки. Такой код, когда его много, не очень легко читать. Чтобы сделать язык Verilog более выразительным, он имеет так называемые "always" блоки. Они используются при описании системы с помощью поведенческих блоков (behavioral blocks). Использование поведенческих блоков очень похоже на программирование на языке С. Оно позволяет выразить алгоритм так, чтобы он выглядел как последовательность действий (даже если в конечном счете в аппаратуре это будет не так).

Индикатор температуры

В холле нашего офиса установлен вот такой  кондиционер:

Кондиционер

Нужно сказать, он очень хорошо охлаждает и имеет массу всяких наворотов, один из которых - светодиодный индикатор температуры входящего воздуха.

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


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