Lehre.VHDL-Web-Projekte (Struktur)


VHDL-Web-Projekte zum Lehrbuch: Technische Informatik 2: Entwurf digitaler Schaltungen.

(G. Kemnitz)

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

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.

Kapitel 1: Modellbildung und Simulation

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

-->

Kapitel 2: Synthese und Logikoptimierung

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

Kapitel 3: VHDL im Detail

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

    Kapitel 4: Vom Transistor zur Schaltung

    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

    Kapitel 5: Komplexe Beispielentwürfe

    5.2 FIR-Filter mit Blockspeichern

    5.3 Points-of-Interest-Berechnung

    5.4 Entwurf eines RISC-Prozessors

    Kapitel 6: Lösungen zu den Übungsaufgaben

    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: 09.04.2024 17:10:43


     TU Clausthal 2020  Impressum