Menu
CoddyTech

Повторение — создание модуля

Часть раздела Основы путешествия по Verilog на Coddy. Урок 36 из 90.

challenge icon

Задание

В этом задании объединено всё, что вы изучили в этой главе. Вы создадите модуль с нуля и создадите его экземпляр.

Что нужно сделать:

Часть 1: Создайте модуль под названием flipflop с такими портами:

  • 1-битный вход под названием clk
  • 1-битный вход под названием d
  • 1-битный вход под названием reset
  • 1-битный выход под названием q (используйте reg, присваиваемый в блоке always)

Модуль должен работать следующим образом:

  • Когда reset равен 1, q становится равным 0
  • В противном случае при каждом фронте тактового сигнала q становится равным d

Часть 2: Создайте экземпляр модуля flipflop в модуле top, сопоставив порты по именам

Подключите порты к следующим сигналам:

  • Порт clk → сигнал clock
  • Порт d → сигнал data
  • Порт reset → сигнал reset_signal
  • Порт q → сигнал out

Попробуйте сами

// Часть 1: Создайте модуль flipflop

  // TODO: Добавьте порты

  // TODO: Добавьте блок always с posedge clk и posedge reset
  
  // Если reset равен 1, q <= 0
  
  // Иначе q <= d


// Часть 2: Модуль top с созданием экземпляра
module top (
  input clock,
  input data,
  input reset_signal,
  output out
);

  // TODO: Создайте экземпляр flipflop с именем ff1
  
  // Используйте сопоставление портов по имени: .clk(clock), .d(data), .reset(reset_signal), .q(out)

endmodule

Все уроки раздела Основы

Потренируйтесь самостоятельно: Онлайн-компилятор Verilog