4 / 36 · Теория
Декодеры и сигналы разрешения
Преобразуйте двоичный адрес в один активный выход.
Уроки доступны бесплатно. Запишитесь, чтобы сохранять прогресс.
Цели урока
- Преобразуйте двоичный адрес в один активный выход.
Один адрес — один выход
Декодер 2-to-4 отображает 00,01,10,11 в 0001,0010,0100,1000. В y[3:0] крайний справа — y[0]. При en=0 задайте 0000. Ровно один выход активен лишь при en=1; включите это условие в проверку.
always_comb begin
y = 4'b0000;
if (en) begin
case (address)
2'b00: y = 4'b0001;
2'b01: y = 4'b0010;
2'b10: y = 4'b0100;
2'b11: y = 4'b1000;
default: y = 4'b0000;
endcase
end
endПрисваивание на каждом пути
Комбинационный выход должен зависеть только от текущих входов. Начальное присваивание 0000 определяет отключённый путь. Пропуск может непреднамеренно вывести защёлку, сохраняющую прошлое значение. Показан фрагмент логики, не полный top: перед использованием объявите порты address, en, y и их ширины.
Попробуйте сами
Каков y при en=1, address=10? А при en=0?
Прочитать объяснение
При разрешении 0100, установлен только y[2]. При запрете 0000.
✓ Изучено