Verwendung der Case-Anweisung
Teil des Abschnitts Grundlagen der Verilog-Journey von Coddy. Lektion 66 von 90.
Aufgabe
Baue einen 4-zu-1-Multiplexer mit einer case-Anweisung anstelle von if-else.
Wahrheitstabelle
| sel | out |
|---|---|
| 00 | out = in0 |
| 01 | out = in1 |
| 10 | out = in2 |
| 11 | out = in3 |
Aufgabe:
- Erstelle ein Modul namens
mux4to1_case - Füge die Eingänge
in0,in1,in2,in3hinzu (je 1 bit) - Füge den Eingang
selhinzu (2 bits) - Füge den Ausgang
outhinzu (1 bit, Typreg) - Füge einen
always @(*)-Block hinzu - Füge darin eine
case (sel)-Anweisung hinzu - Füge Fälle für
2'b00,2'b01,2'b10,2'b11hinzu - Füge einen
default-Fall hinzu - Schließe mit
endcaseundendmoduleab
Probier es selbst
// TODO: Erstelle Modul namens mux4to1_case
// TODO: Füge Inputs hinzu: in0, in1, in2, in3 (je 1 Bit)
// TODO: Füge Input sel hinzu (2 Bits)
// TODO: Füge Output out hinzu (reg-Typ)
// TODO: Füge always @(*) Block hinzu
// TODO: Füge case (sel) hinzu
// TODO: Füge case 2'b00: out = in0; hinzu
// TODO: Füge case 2'b01: out = in1; hinzu
// TODO: Füge case 2'b10: out = in2; hinzu
// TODO: Füge case 2'b11: out = in3; hinzu
// TODO: Füge default: out = in0; hinzu
// TODO: Füge endcase hinzu
// TODO: endmodule hinzufügenAlle Lektionen in Grundlagen
1Einführung
Was ist VerilogHardware vs. SoftwareIhr erstes ModulKommentareAbstraktionsebenen des Designs4Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorVergleichsoperatorenWiederholung – einfache MathematikBitweise Operatoren7Zuweisungen und Gatter
Kontinuierliche ZuweisungZuweisung mit OperatorenIntegrierte Gatter-GrundelementeUND-, ODER- und NICHT-GatterXOR- und XNOR-GatterRückblick – Logikgatter-Schaltung10Entscheidungsfindung
If-AnweisungIf – ElseRückblick – Einfacher KomparatorCase-AnweisungCasex und CasezRückblick – ALU-Entwurf13Zeitsteuerung und Verzögerungen
Was sind Verzögerungen?GatterverzögerungenZuweisungsverzögerungenTimescale-DirektiveTakterzeugungZusammenfassung – Zeitsteuerung2Datentypen
Wire-TypReg-TypInteger und RealVektorenArraysParameterZusammenfassung – Signale deklarieren5Operatoren Teil 2
Logische OperatorenReduktionsoperatorenSchiebeoperatorenVerkettungsoperatorBedingter OperatorRückblick – Operatoren-Herausforderung11Schleifen
For-SchleifeWhile-SchleifeWiederholungsschleifeEndlosschleifeAnweisung deaktivierenRückblick – Schleifenmuster3Zahlensystem
Binäre DarstellungZahlen mit fester BreiteZahlen ohne feste BreiteNegative ZahlenSpezialwerte X und ZZusammenfassung – Zahlenformate6Module
ModulstrukturInput- und Output-PortsInout-PortsModulinstanziierungPortzuordnung nach NamenPortzuordnung nach ReihenfolgeRückblick – Ein Modul erstellenÜbe selbstständig: Online-Verilog-Compiler