Menu
Coddy logo textTech

Projekt multipleksera 2 do 1

Część sekcji Podstawy ścieżki Verilog w Coddy. Lekcja 64 z 90.

challenge icon

Wyzwanie

Multiplekser (MUX) to układ cyfrowy, który wybiera jedno z kilku wejść i przekazuje je na pojedyncze wyjście na podstawie sygnału wyboru. Możesz wyobrazić go sobie jako selektor danych. Masz wiele wejść, a następnie wybierasz, które z nich trafia na wyjście.

W tym projekcie zbudujesz multipleksery o różnych rozmiarach, używając instrukcji if-else i case.

Multiplekser 2 do 1

Multiplekser 2 do 1 to najprostsza postać multipleksera. Ma dwa wejścia danych (in0 i in1), jedno wejście wyboru (sel) i jedno wyjście (out). Gdy sel ma wartość 0, wyjście przyjmuje wartość in0. Gdy sel ma wartość 1, wyjście przyjmuje wartość in1. Zaimplementujesz to za pomocą instrukcji if-else wewnątrz bloku always @(*).

Przykład: Jeśli in0 = 0, in1 = 1 i sel = 1, to out = 1.

Multiplekser 2 do 1 wybiera jedno z dwóch wejść i przekazuje je na wyjście na podstawie sygnału wyboru.

Tabela prawdy

 

selout
0out = in0
1out = in1

Gdy sel ma wartość 0, wyjście przyjmuje wartość in0. Gdy sel ma wartość 1, wyjście przyjmuje wartość in1.

Co należy zrobić:

  1. Utwórz moduł o nazwie mux2to1
  2. Dodaj wejście in0 (1 bit)
  3. Dodaj wejście in1 (1 bit)
  4. Dodaj wejście sel (1 bit)
  5. Dodaj wyjście out (1 bit, typ reg)
  6. Dodaj blok always @(*)
  7. Wewnątrz dodaj instrukcję if-else:
    • Jeśli sel == 0, ustaw out = in0
    • W przeciwnym razie ustaw out = in1
  8. Zamknij za pomocą endmodule

Spróbuj swoich sił

// Krok 1: Utwórz moduł o nazwie mux2to1


  // Krok 2: Dodaj wejście in0
  
  // Krok 3: Dodaj wejście in1
  
  // Krok 4: Dodaj wejście sel
  
  // Krok 5: Dodaj wyjście out (typu reg)
  

  // Krok 6: Dodaj blok always @(*)
  

    // Krok 7: Dodaj instrukcję if-else
    // Jeśli sel == 0, out = in0
    // W przeciwnym razie out = in1
    

// Krok 8: Endmodule

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator Verilog online