CPU Entwurf mit VHDL (Schwerpunkt VHDL) - Cheatsheet
Logische Grundfunktionen und Boolesche Algebra
Definition:
Grundsätzlich logische Operationen wie UND, ODER, NICHT, geschrieben in Boolescher Algebra. Grundlage für digitale Schaltkreise und logische Aussagen.
Details:
- UND (Konjunktion): \(A \cdot B\)
- ODER (Disjunktion): \(A + B\)
- NICHT (Negation): \(\overline{A}\)
- NAND: \(\overline{A \cdot B}\)
- NOR: \(\overline{A + B}\)
- XOR (Exklusives ODER): \(A \oplus B\)
- Grundlagen für Schaltkreisentwurf, z.B., Addierer, Multiplexer.
- Wichtig für Zustandsmaschinen und digitale Logik in CPUs.
Flip-Flops und Register
Definition:
Flip-Flops und Register sind grundlegende Speicherelemente in digitalen Schaltungen, die Zustände speichern können.
Details:
- Flip-Flops speichern 1 Bit Information.
- Register bestehen aus mehreren Flip-Flops und speichern mehrere Bits.
- Flip-Flops typischerweise synchron (gesteuert durch eine Taktflanke).
- Wichtige Typen: D-Flip-Flop, JK-Flip-Flop, T-Flip-Flop.
- Registerarten: Schieberegister, Parallelregister, zirkulare Register.
- VHDL-Syntax:
- Flip-Flop:
process (clk)
begin
if rising_edge(clk) then
q <= d;
end if;
end process;
- Register:
signal register : std_logic_vector(N-1 downto 0);
Grundstruktur einer VHDL-Datei
Definition:
Grundaufbau einer VHDL-Datei zur Implementierung von Hardwarebeschreibungen
Details:
- Library und Use-Anweisungen: Importieren von Bibliotheken und Paketen
- Entity-Deklaration: Definition der externen Schnittstellen (Eingänge/Ausgänge)
- Architecture-Deklaration: Beschreibung des internen Verhaltens und der internen Struktur
- Signal- und Komponentendeklarationen: Definition von Signalen und untergeordneten Einheiten
- Prozessblöcke und Concurrent Statements: Beschreibung des zeitlichen Verhaltens und der parallelen Abläufe
Entwurfsstrukturen: Entity und Architecture
Definition:
Definition and explanation of the topic - keep it extremly short and write it from the point of view of someone who already know, as you would do in a cheatsheet; sentence do not need to be grammatically correct, keep empty if any explanation is unnecessary, for exmaple for lists
Details:
Simulationstechniken und Timing-Analyse
Definition:
Techniken zur Überprüfung und Optimierung von VHDL-Designs hinsichtlich Funktionalität und Zeitverhalten.
Details:
- Simulation: Nachbildung des Designs unter verschiedenen Eingangsbedingungen.
- Timing-Analyse: Untersuchung der Signallaufzeiten und Ermittlung kritischer Pfade.
- Wichtige Tools: ModelSim, Synopsys VCS.
- Gängige Methoden: Unit Delay, Zero Delay, Inertial Delay.
- Ergebnisse helfen bei der Optimierung und Fehlererkennung vor der Synthese.
Erstellen von Testbenches
Definition:
Erstellen von Testbenches, um VHDL-Module zu verifizieren.
Details:
- Erlauben Simulation von VHDL-Designs vor der Synthese.
- Bestehen aus Signalen, die das Design unter Test (DUT) verbinden.
- DUT innerhalb eines Prozesses instanziieren.
- Testvektoren und erwartete Ergebnisse definieren.
- Timing-Simulation durchführen und Ergebnisse prüfen.
- Assertionen verwenden zum Prüfen von Bedingungen.
Befehlssatzarchitektur (ISA)
Definition:
Setzt von Anweisungen, die eine CPU ausführen kann, definiert die Schnittstelle zwischen Hardware und Software
Details:
- Kann RISC (Reduced Instruction Set Computer) oder CISC (Complex Instruction Set Computer) sein
- Enthält Operationen, Adressierungsmodi und Datentypen
- Beispiele: x86, ARM
- Ziel: Effizienz, Kompatibilität und Leistung
- Wichtig für das Design von CPUs mit VHDL
Implementierung und Verifikation des CPU-Designs
Definition:
Implementierung und Verifikation des CPU-Designs in der Vorlesung CPU Entwurf mit VHDL (Schwerpunkt VHDL).
Details:
- Implementierung: Entwurf und Beschreibung der CPU-Funktionalität in VHDL, Simulation zur Fehlerbereinigung
- Verifikation: Nachweis der korrekten Funktionsweise durch Testbenches und formale Methoden
- Kontinuierliche Prüfung: Statische Analyse, Simulation, formale Verifikation
- Design-Methoden: Bottom-up und Top-down Ansätze
- Werkzeuge: VHDL-Simulatoren wie ModelSim, Synthesetools wie Quartus
- Ziel: Erstellen eines zuverlässigen und effizienten CPU-Designs