VHDL-Web-Projekte zum Lehrbuch: Technische Informatik 2: Entwurf digitaler Schaltungen.
|
Das Buch enthält in der Regel nur die wichtigen Code-Ausschnitte der Beispielbeschreibungen.
Auf dieser Web-Seite stehen die zugehörigen kompletten Programmdateien und
Testrahmen, getestet mit dem Simulator ghdl.
Den Simulator gibt es sowohl für Linux als auf für Windows
hier frei im Web. Er ist auch
auf den Rechnern im Übungsraum installiert, die während der
betreuten Laborzeiten genutzt werden. Für die graphische Signaldarstellung
ist zusätzlich GTKWave zu installieren.
Die Beschreibungen
zu den Web-Projekten stehen im Script und Hinweise zur Übersetzung und Ausführung
sind in der jeweiligen Hilfe-Datei zum Projekt zu finden.
|
Zum Experimentieren mit den im Buch beschrieben VHDL-Entwürfen ist das nachfolgende zip-Archiv auf den Rechner herunterzuladen und mit Verzeichnissen zu entpacken. Es enthält alle im Buch beschriebenen Dateien und zusätzlich für jeden Abschnitt einen Hilfetext mit den Befehlen zur Durchführung der Simulation und zur Visualisierung der Ergebnisse. Die gleichfalls enthaltenen Sav-Dateien enthalten die Visualisierungseinstellungen für GTKWAVE (angezeigte Signale, angezeigtes Zeitfenster etc.). Die Bibliothek Tuc ist bereits übersetzt im Archiv enthalten, so dass der Abschnitt zur Bibliothek übersprungen werden kann. Es sei empfohlen, für jedes Beispiel die Beschreibung im Buch zu lesen, die vorbereiteten Simulationen auszuprobieren und danach mit den Beispielen zu experimentieren (Veränderung und Erweiterung der Testeingaben, Änderung der beschrieben Funktionen und Strukturen etc.). Viel Spass beim Experimentieren!
Zip-Archiv mit allen Dateien: [zip_EVHDL.zip]
Zu den einzelnen Kapiteln:
Die Bibliothek TUC stellt für die Beispiele im Buch Datentypen und Unterprogramme
für die Ein- und Ausgabe, für arithmetische Operationen, die kontrollierte Beendigung
der Simulation mit mehreren Prozessen und für die Bereitstellung von
Pseudo-Zufallstests bereit. Sie enthält die nachfolgenden Packages.
1.1 Modellbildung und Simulation
1.1.4 VHDL als formale Beschreibungsplattform
1.2 Funktion, Struktur und Simulation
1.2.3 Imperative Funktionsmodelle
1.2.4 Ereignisgesteuerte Simulation
1.2.5 Strukturbeschreibung; 1.2.6 Testrahmen
1.3 Laufzeittoleranzen
1.3.1 Glitches
1.3.2 Das Verzögerungsmodell einer Signalzuweisung
1.3.3 Simulation mit Halte- und Verzögerungszeiten
1.5 Asynchrone Eingabe
1.5.2 Entprellen von Tasten
1.6 Sequentielle Schaltungen
1.6.2 Vom Zustandsgraph zur VHDL-Beschreibung
1.6.4 Entwurf eines Zahlenschlosses
1.6.5 Operationsablaufgraph
-->
2.1 Register-Transfer-Synthese
Die Synthese erfolgt mit dem Entwurfssystem ISE in folgenden Schritten:
- Neues Projekt anlegen
- VHDL-Datei mit "Add Source" einbinden
- Wenn verwendet, die Bibliothek Tuc anlegen und mit "Add Source" die genutzten Packages einbinden
- Unter "Processes" "Synthesize - XST" und Entwurfsziel
"View RTL Schematic" auswählen und Synthese starten
Um nicht für jedes Beispiel, ein neues Projekt anlegen und die Tuc-Bibliothek neu erzeugen
zu müssen, genügt es, die VHDL-Datei im Projekt auszutauschen und die Synthese neu zu starten.
Eine detailliertere Anleitung enthält die Praktikumsanleitung des ersten [
VHDL-Praktikums.
2.1.2 Kombinatorische Schaltungen
2.1.3 Kombinatorische Schaltungen mit Abtastregistern
2.1.4 Latches
2.1.6 Entwurfsfehler und Fehlervermeidung
2.1.7 Zusammenfassung und Übungsaufgaben
2.2 Schaltungsvereinfachung auf Basis der Schaltalgebra
2.2.4 KV-Diagramm
2.2.6 Zusammenfassung und Übungsaufgaben
2.5 Addierer
2.5.1 Ripple-Addierer
- Iterative Beschreibung eines Ripple-Addierers (Abb. 2.81):
[RippleAdd.vhdl]
2.5.2 Serieller Addierer
2.5.4 Hierarchischer Addierer
2.6 Weitere Rechenwerke
2.6.5 Dividierer
2.6.9 Zusammenfassung und Übungsaufgaben
3.1 Imperative Beschreibungsmittel
3.1.2 Fallunterscheidungen
3.1.3 Schleifen
3.1.4 Funktionen
3.1.5 Unreine Funktionen und globale Variablen
3.1.7 Prozeduren
3.1.8 Nebenläufige Prozeduraufrufe
3.1.9 Zusammenfassung und Übungsaufgaben
3.2 Anwendungsspezifische Datentypen
3.2.1 Zahlentypen
Testrahmen zu Beispiel 3.2 (Typenverträglichkeit)
3.2.4 Attribute von elementaren Datentypen
3.2.5 Felder
3.2.6 Zuordnungslisten für Feldelemente
3.2.9 Zusammenfassung und Übungsaufgaben
3.3 Ein- und Ausgabe
3.3.4 Zusammenfassung und Übungsaufgaben
3.4 Beschreibungsschablonen für digitale Schaltungen
3.4.1 Auslagerung kombinatorischer Funktionen in Packages
3.4.3 Blockspeicher
3.4.4 Ein objektorientiertes FIFO-Modell
3.4.5 Schrittweise Modellentwicklung -- Beispiel UART
3.4.6 Entwicklung eines CORDIC-Rechenwerks
3.4.7 Zusammenfassung und Übungsaufgaben
3.5 Funktionsbausteine für den Testrahmen
3.5.1 Pseudo-Zufallstest und Mehrversionsvergleich
3.5.2 Vorab berechnete Eingaben und Soll-Werte
3.5.3 Spezifikationstest
3.5.4 Zusammenfassung und Übungsaufgaben
4.1 Entwurf und Modellierung von CMOS-Gattern
4.1.3 Signale mit mehreren Quellen und der Typ std_logic
4.1.9 Zusammenfassung und Übungsaufgaben
4.2 Zeitverhalten
4.2.1 Zeitdiskrete Simulation
4.2.5 Simulation mit geschalteten Transistorbreiten
4.3 Speicherzellen, Latches und Register
4.3.6 Taktversorgung
4.4 Schreib-Lese-Speicher
4.4.1 SRAM
4.4.3 Assoziativspeicher
5.2 FIR-Filter mit Blockspeichern
5.3 Points-of-Interest-Berechnung
5.4 Entwurf eines RISC-Prozessors
1.3.5 Zusammenfassung und Übungsaufgaben
1.4 Register
1.4.6 Zusammenfassung und Übungsaufgaben
1.5.5 Zusammenfassung und Übungsaufgaben
1.6.7 Zusammenfassung und Übungsaufgaben
Autor: gkemnitz, Letzte Änderung: 10.07.2024 09:57:44