Podsumowanie – wielokrotnego użytku maska bitowa
Część sekcji Projektowanie RTL i weryfikacja ścieżki Verilog w Coddy. Lekcja 15 z 38.
Wyzwanie
ŚredniZbuduj układ czyszczący bity o szerokości WIDTH z nazwaną pętlą generate: każdy bit wyjściowy jest równy odpowiedniemu bitowi a AND odwrotności bitu b na tej pozycji. b jest maską czyszczącą. WIDTH jest dodatnie. Zablokowany testbench tworzy instancje dla wartości WIDTH 1, 4 i 8, używając mniej znaczących bitów a i b w węższych instancjach. Kolumny wyjściowe to y1, y4 i y8 w zapisie dziesiętnym.
Uzupełnij design.v i zachowaj nazwy modułów oraz portów. Zablokowany testbench.v dostarcza zmiany wejść i wyświetla wyjścia po ich ustabilizowaniu. Wybiera scenariusz za pomocą argumentu symulatora, takiego jak +CASE=1; standardowe wejście nie jest wymagane. Nie dodawaj do projektu wyświetlania, opóźnień ani kończenia symulacji. Oczekiwane wyjście to jeden wiersz wartości dziesiętnych dla każdej obserwacji, oddzielonych pojedynczą spacją i zakończonych znakiem nowej linii.
Spróbuj swoich sił
module dut #(parameter WIDTH=4) (input [WIDTH-1:0] a,b, output [WIDTH-1:0] y);
// Zaimplementuj układ parametryzowany.
assign y = 0;
endmoduleWszystkie lekcje w sekcji Projektowanie RTL i weryfikacja
1Niezawodna logika kombinacyjna RTL
Wartości domyślne zapobiegają zatrzaskomKoder priorytetowyWeryfikacja kodu one-hotBezpieczne dekodowanie casePodsumowanie — router żądań2Szerokości i arytmetyka ze znakiem
Zachowywanie bitów przeniesieniaPorównania ze znakiemArytmetyczne przesunięcia w prawoPrzepełnienie i nasyceniePodsumowanie — różnica ze znakiem3Wielokrotnego użytku RTL
Funkcje kombinacyjneParametry bezpieczne pod względem szerokościPętle generateWarunkowe generatePodsumowanie – wielokrotnego użytku maska bitowaPoćwicz samodzielnie: Kompilator Verilog online