Проектирование на SystemVerilog

ЗАПИСАТЬСЯ НА ОБУЧЕНИЕ

Описание курса

Данный курс представляет собой введение в язык описания аппаратуры SystemVerilog и его применение для создания синтезируемого кода. В курсе представлены все необходимые и доступные в SystemVerilog языковые конструкции: типы данных, структуры, объединения, массивы, процедурные блоки. Рассматриваются процедуры разработки задач и функций, а также создания их библиотек. Полученные знания позволят проектировать системы любой сложности. Курс сочетает в себе содержательные теоретические лекции и полезные практические лабораторные работы для закрепления ключевых понятий.

Данный двухдневный курс позволит приобрести ценные практические навыки. Студенты, имеющие опыт разработки на Verilog, смогут создавать более эффективные RTL проекты.

Продолжительность

2 дня

Кому будет полезен курс?

Разработчикам логики на ПЛИС

Что нужно знать заранее?

Иметь опыт проектирования на Verilog или пройти курс "Проектирование на Verilog"

Программное обеспечение

Vivado Design Suite
QuestaSim Simulator

По завершении курса вы будете иметь все необходимые навыки для того чтобы:

Знать особенности и достоинства использования SystemVerilog для создания RTL проекта
Определять новые типы данных, поддерживаемые в SystemVerilog
Использовать перечисляемые типы данных для кодирования конечных автоматов (FSM)
Использовать структуры, объединения и массивы
Создавать новые процедурные блоки и анализировать результаты синтеза
Использовать дополнительные возможности задач, функций и пакетов
Упростить работу с модулями при помощи интерфейсов
Разрабатывать более эффективные коды на SystemVerilog для моделирования и синтеза FPGA проекта
Создавать и оптимизировать проекты на SystemVerilog под конкретные кристаллы FPGA Xilinx
Синтезировать и выполнять анализ проектов на SystemVerilog в среде Vivado Design Suite
Загружать готовый проект на SystemVerilog в отладочную плату

Структура курса

День 1
Введение в SystemVerilog
Типы данных
Демонстрация: Целочисленный тип данных в SystemVerilog
Лабораторная работа 1: Использование перечисляемых типов данных для построения конечных автоматов, синтез и анализ результатов
Структуры, объединения и массивы
Лабораторная работа 2: Структуры и объединения. Изучаются упакованные и неупакованные структуры и правила доступа к их элементам
Дополнительные операторы SystemVerilog
Процедурные выражения и управление потоком
Лабораторная работа 3: Процедурные блоки always_ff и always_comb. Использование новых процедурных блоков always_comb, always_ff и always_latch для получения желательных результатов синтеза

День 2
Функции, задачи и пакеты
Лабораторная работа 4: Пакеты. Создание нового пакета и его импорт в модуль
Интерфейсы
Лабораторная работа 5: Интерфейсы и загрузка проекта. Использование интерфейса для упрощения взаимодействия модулей. Загрузка проекта и верификация схемных решений
Использование ресурсов FPGA Xilinx

ЗАПИСАТЬСЯ НА ОБУЧЕНИЕ