Menu
Coddy logo textTech

2 To 1 Mux Design

Часть раздела Основы путешествия по 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. Create модуль named mux2to1
  2. Add input in0 (1 бит)
  3. Add input in1 (1 бит)
  4. Add input sel (1 бит)
  5. Add output out (1 бит, type reg)
  6. Add блок always @(*)
  7. Внутри Add оператор if-else:
    • Если sel == 0, установить out = in0
    • Else, установить 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

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

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