Menu
Coddy logo textTech

Проектирование мультиплексора 2 в 1

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

challenge icon

Задание

Мультиплексор (MUX) — это цифровая схема, которая выбирает один из нескольких входов и передает его на один выход на основе сигнала выбора. Представьте его как селектор данных — у вас есть несколько входящих сигналов, и вы выбираете, какой из них пойдет на выход.

В этом проекте вы создадите мультиплексоры разных размеров, используя операторы if-else и case.

Мультиплексор 2-в-1

Мультиплексор 2-в-1 — это простейшая форма. Он имеет два входа данных (in0 и in1), один вход выбора (sel) и один выход (out). Когда sel равен 0, выход соответствует in0. Когда sel равен 1, выход соответствует in1. Вы реализуете это с помощью оператора if-else внутри блока always @(*).

Пример: Если in0 = 0, in1 = 1 и sel = 1, то out = 1.

Мультиплексор 2-в-1 выбирает один из двух входов и передает его на выход в зависимости от сигнала выбора.

Таблица истинности

 

selout
0out = in0
1out = in1

Когда sel равен 0, выход соответствует in0. Когда sel равен 1, выход соответствует in1.

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

  1. Создайте модуль с именем mux2to1
  2. Добавьте вход in0 (1 бит)
  3. Добавьте вход in1 (1 бит)
  4. Добавьте вход sel (1 бит)
  5. Добавьте выход out (1 бит, тип reg)
  6. Добавьте блок always @(*)
  7. Внутри добавьте оператор if-else:
    • Если sel == 0, установите out = in0
    • Иначе, установите out = in1
  8. Закройте модуль с помощью endmodule

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

// Шаг 1: Создайте модуль с именем mux2to1


  // Шаг 2: Добавьте вход in0
  
  // Шаг 3: Добавьте вход in1
  
  // Шаг 4: Добавьте вход sel
  
  // Шаг 5: Добавьте выход out (тип reg)
  

  // Шаг 6: Добавьте блок always @(*)
  

    // Шаг 7: Добавьте оператор if-else
    // Если sel == 0, out = in0
    // Иначе, out = in1
    

// Шаг 8: Endmodule

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