
В далеком 2015 году, в нашей статье Первый проект для VE-EP4CE10E. Часть 1. мы рассказывали о установке связки IDE Eclipse и свободного компилятора GNU ARM GCC. В принципе, за это время, появился фирменный пакет для разработки от компании ST Microelectronics под названием System Workbench For STM32. В одной из статей мы обязательно расскажем о нем. Но у нас проекты не только для контроллеров STM32. Поэтому начиная новый проект, мы решили обновить используемые нами инструменты до актуальной версии. Как оказалось, за 5 лет многие пункты нашей статьи устарели, поэтому представляем Вашему вниманию обновленную инструкцию:

Во время написания нашей статьи Реализация упрощенного протокола TCP с использованием NIOS II неожиданно вышла новая версия Intel® Quartus® Prime Design Software v19.1. Не долго думая мы решили перейти на новую версию пакета разработки от компании Intel. В принципе никто ни каких подводных камней не ожидал. Все прошлые версии Intel® Quartus® обновлялись без каких-либо проблем. Но в этот раз все пошло не по плану )))) Как оказалось, теперь для установки требуется Windows Subsystem for Linux. Если вам интересен процесс установки новой версии пакета Intel® Quartus®, добро пожаловать под кат!

В данном проекте мы создадим систему на основе софт процессора Nios II, ядро Ethernet-интерфейса с поддержкой скоростей 10/100/1000, контроллер SGDMA, контроллер SDRAM и другие аппаратные компоненты для передачи и приема TCP пакетов. В дизайн добавлены два модуля фазовой автоподстройки частоты для генерации тактовых сигналов с различными частотами, чтобы тактировать трехскоростную систему Ethernet (которая реализует функцию MAC) для работы на скорости 10/100/1000 Мбит/с. После сборки аппаратной системы и загрузки схемы в ПЛИС, мы запустим прикладную программу, написанную на языке Си. На основе входных сигналов от платы наша программа устанавливает и закрывает TCP-соединение, передает и принимает кадры данных от порта Ethernet платы. Кадры Ethernet передаются на основе протокола Stop and Wait, а таймер процессора NIOS используется для повторной передачи кадров после таймаута.

После некоторых раздумий я решил написать статью о симуляции Verilog проектов с помощью пакета программ icarus-verilog. Мне кажется, что это лучший способ «быстро попробовать» возможности симуляции. Конечно, среда симуляции ModelSim компании Mentor Graphics (или ModelSim-Altera Edition) - это мощное средство, но освоить ее несколько труднее.
Сейчас мы быстренько скачаем из интернета icarus-verilog, установим его и попробуем что нибудь просимулировать...
Первое, что нужно сделать – это посетить сайт http://www.icarus.com/eda/verilog/ - отправная точка для изучения Icarus Verilog. Это свободный проект, то есть при желании можно даже посмотреть исходные тексты всех программ, и компилятора и симулятора Verilog. Здесь есть ссылки на документацию и откуда скачивать файлы для установки. Конечно, есть пакеты программ и для Linux и для Windows.

На нашем сайте уже было несколько ознакомительных статей по языку описания аппаратуры Verilog.
Конечно, в тех ознакомительных статьях было невозможно рассказать все. Именно поэтому я продолжаю освещать некоторые возможности и особенности языка Verilog.
Сейчас речь пойдет о специальных ключевых словах языка Verilog, используемых для симуляции проектов. Симуляция очень важный этап разработки. Перед проверкой проекта в чипе FPGA или CPLD очень желательно промоделировать поведение всех его модулей.

Программируемые логические интегральные схемы (ПЛИС) появились полтора десятилетия назад как альтернатива программируемым логическим матрицам (ПЛМ). От последних ПЛИС отличаются как по архитектуре, так и по технологии изготовления.
ПЛМ представляет собой матрицу многовходовых (несколько десятков входов) логических элементов с триггерами, в которых перемычками программируются конституенты единиц дизъюнктивных нормальных форм функций этих элементов. Вначале перемычки выполнялись в виде пережигаемых тонких проводничков. Теперь перемычки выполняются в виде МОП-транзистора с плавающим затвором, как в электрически перепрограммируемом ПЗУ, т.е. ПЛМ изготовляются по технологии флэш-памяти. Большие ПЛМ (CPLD) отличаются только тем, что несколько ПЛМ собраны на одном кристалле и объединены программируемым полем связей.
- Формирование HDMI изображения с использованием NIOS II.
- Создание процессора со свободной архитектурой RISC-V. Часть 2.
- Создание процессора со свободной архитектурой RISC-V. Часть 1.
- Эмуляция EDID информации HDMI интерфейса на FPGA.
- Разработка системы стереоскопического зрения.
- Несколько слов об отладке 1Gb Ethernet-проектов на ПЛИС.