Визуальная электроника

Уровни абстракции Verilog HDL

Процедурные блоки

  • Пример ­ initial
  • Пример ­ always
  • Присваивание в процедурных блоках
    1. Пример ­ неверное присваивание
    2. Пример ­ правильное присваивание
  • Группы присваивания в процедурах
    1. Пример begin ­ end
    2. Пример fork ­ join
  • Группы присваивания в процедурах
    1. Пример begin ­ end
    2. Пример fork ­ join
  • Последовательные группы инструкций
    1. Пример − sequential
  • Параллельные группы инструкций
    1. Пример − parallel
    2. Пример − begin−end и fork − join
  • Блокирующие и неблокирующие присваивания
    1. Пример − блокирующие и неблокирующие инструкции
    2. Изображения сигналов к примеру выше
  • Операторы assign и deassign
    1. Пример − assign и deassign
  • Операторы force и release
    1. Пример − force и release

Условные операторы if ­ else

  • Пример простой if
  • Пример if ­ else
  • Пример вложенного if ­ else ­ if
  • Симуляция вложенного if ­ else ­ if
  • Параллельный if ­ else

Оператор выбора case

  • Нормальный case
    1. Пример ­ case
    2. Пример ­ case без default
    3. Пример ­ case с x и z
  • Операторы casez и casex
    1. Пример ­ casez
    2. Вывод симуляции ­ casez
    3. Пример ­ casex
    4. Вывод симуляции ­ casex
    5. Пример ­ сравнение case, casex и casez

Инструкции циклов

  • Цикл forever
    1. Пример ­ "холостой" тактовый генератор
  • Цикл repeat
    1. Пример ­ repeat
  • Цикл while
    1. Пример ­ while
  • Цикл for
    1. Пример ­ for

Инструкции постоянного присваивания

  • Пример ­ однобитовый сумматор
  • Пример ­ трехстабильный буфер

Задержка распространения сигнала

  • Пример ­ трехстабильный буфер

Управление процедурными блоками

  • Комбинационная логика в процедурах
    1. Пример ­ одноразрядный сумматор
    2. Пример ­ четырехразрядный сумматор
    3. Пример ­ устранение защелкивания учетом всех случаев
    4. Пример ­ устран. защелкивания обнулением переменных
  • Последовательная логика в процедурах
    1. Пример ­ неверный код ­ два тактовых сигнала
    2. Пример ­ D­триггер с асинх. сбросом и предустановкой
    3. Пример ­ D­триггер с синхр. сбросом и предустановкой
  • Процедуры не могут запускать сами себя
  • Конкуренция в процедурных блоках
  • Условия гонки

Именованные блоки

  • Пример ­ именованные блоки