Повторение — счётчик событий
Часть раздела Проектирование и верификация RTL путешествия по Verilog на Coddy. Урок 20 из 38.
Задание
СреднеПодсчитывайте восходящие переходы синхронного сигнала sig в 4-битном счётчике. При достижении 15 значение должно оставаться равным 15. Синхронный rst очищает счётчик и предыдущий уровень. Высокий уровень sig сразу после сброса считается событием восходящего перехода. Столбцы вывода: count. Все управляющие сигналы и данные стабильны перед каждым восходящим фронтом тактового сигнала; результаты наблюдаются после него.
Завершите design.v и сохраните имена его модулей и портов. Заблокированный testbench.v задаёт изменения входных сигналов и выводит результаты после их стабилизации. Он выбирает сценарий с помощью аргумента симулятора, например +CASE=1; стандартный ввод не требуется. Не добавляйте в design вывод, задержки или завершение симуляции. Ожидаемый вывод — одна строка десятичных значений для каждого наблюдения, разделённых одним пробелом и заканчивающихся символом новой строки.
Попробуйте сами
module dut (input clk, input rst, input sig, output reg [3:0] count);
// Замените этот заполнитель на ваш дизайн.
initial count = 0;
endmoduleВсе уроки раздела Проектирование и верификация RTL
1Надёжная комбинационная RTL-логика
Значения по умолчанию предотвращают защёлкиПриоритетные кодировщикиПроверка One-HotБезопасное декодирование caseПовторение — маршрутизатор запросов4Управляемая последовательная RTL-логика
Приоритет сброса и разрешенияСчётчики с насыщениемКонвейеризация данных и validОбнаружение дискретизированных фронтовПовторение — счётчик событий2Разрядности и знаковая арифметика
Сохранение битов переносаСравнения знаковых чиселАрифметические сдвиги вправоПереполнение и насыщениеПовторение — знаковая разностьПотренируйтесь самостоятельно: Онлайн-компилятор Verilog