Powtórka – prosty komparator
Część sekcji Podstawy ścieżki Verilog w Coddy. Lekcja 54 z 90.
Wyzwanie
Komparator 2-bitowy to układ, który porównuje dwie 2-bitowe liczby binarne i określa, czy jedna jest większa od drugiej, mniejsza od niej czy jej równa.
Co zrobić:
Zbuduj komparator 2-bitowy, używając instrukcji if-else.
Jak to działa:
- Gdy
a > b,greaterpowinno mieć wartość 1, alessiequalpowinny mieć wartość 0 - Gdy
a < b,lesspowinno mieć wartość 1, agreateriequalpowinny mieć wartość 0 - Gdy
a == b,equalpowinno mieć wartość 1, agreaterilesspowinny mieć wartość 0
Spróbuj swoich sił
module comparator (
input [1:0] a,
input [1:0] b,
output reg greater,
output reg less,
output reg equal
);
always @(*) begin
// TODO: Dodaj instrukcje if-else, aby porównać a i b
// Ustaw greater = 1, jeśli a > b
// Ustaw less = 1, jeśli a < b
// Ustaw equal = 1, jeśli a == b
end
endmoduleWszystkie lekcje w sekcji Podstawy
1Wprowadzenie
Czym jest VerilogSprzęt a oprogramowanieTwój pierwszy modułKomentarzePoziomy abstrakcji projektu4Operatory, część 1
Operatory arytmetyczneOperator moduloOperatory porównaniaPowtórka — prosta matematykaOperatory bitowe7Przypisania i bramki
Przypisanie ciągłePrzypisanie z operatoramiWbudowane prymitywy bramekBramki AND, OR i NOTBramki XOR i XNORPodsumowanie — układ z bramek logicznych10Podejmowanie decyzji
Instrukcja ifIf-elsePowtórka – prosty komparatorInstrukcja caseCaseX i CaseZPowtórka – projektowanie ALU13Odmierzanie czasu i opóźnienia
Czym są opóźnieniaOpóźnienia bramekOpóźnienia przypisańDyrektywa timescaleGenerowanie zegaraPodsumowanie — kontrola czasu2Typy danych
Typ WireTyp RegLiczby całkowite i rzeczywisteWektoryTabliceParametryPowtórka — deklarowanie sygnałów5Operatory — część 2
Operatory logiczneOperatory redukcjiOperatory przesunięciaOperator konkatenacjiOperator warunkowyPowtórzenie — wyzwanie z operatorami11Pętle
Pętla forPętla whilePętla repeatPętla nieskończonaInstrukcja wyłączaniaPowtórka — wzorce pętli3System liczbowy
Reprezentacja binarnaLiczby o określonej szerokościLiczby o nieokreślonej szerokościLiczby ujemneWartości specjalne X i ZPodsumowanie — formaty liczb6Moduły
Struktura modułuPorty wejściowe i wyjściowePorty dwukierunkoweInstancjonowanie modułuMapowanie portów według nazwMapowanie portów według kolejnościPodsumowanie — zbuduj moduł9Bloki proceduralne
Blok alwaysBlok initialLista czułościPrzypisanie blokującePrzypisanie nieblokującePodsumowanie — always a initial12Projekt multipleksera
Projekt multipleksera 2 do 1Projekt multipleksera 4 do 115Sterownik sygnalizacji świetlnej
Definiowanie stanówLogika maszyny stanówPoćwicz samodzielnie: Kompilator Verilog online