EDS - SS19
(G. Kemnitz, C. Giesemann)
Die Vorlesung führt in den rechnergestützten Entwurf digitaler Schaltungen ein. Behandelt werden das logische und das Zeitverhalten, Automaten und andere Verhaltensmodelle für sequentielle Schaltungen, Rechenwerke, Simulation, Synthese und Logikoptimierung. Im begleitenden Praktikum digitaler Schaltungsentwurf I werden digitale Schaltungen entworfen, simuliert, in programmierbare Logikschaltkreise programmiert und ausprobiert.
Inhalt der Lehrveranstaltung
- Zwei einführende Beispiele: einen Entwurf mit Standardschaltkreisen und einen VHDL-Entwurf für FPGAs.
- Simulation: VHDL, ereignisgesteuerte Simulation, Laufzeittoleranz, ...
- Synthese und Schaltungsoptimierung: synthesegerechte Beschreibung, asyncrone Eingabe, KV-Diagramm, ROBDD.
- Rechenwerke und Operationsabläufe: Addierer, ..., Automaten, serielle Schnittstelle, ...
- Vom Transistor zur Schaltung: MOS-Transistoren, Gatter, Layout, Verzögerung, ...
- Rechner: CORDIC, Minimalprozessor, Pipeline.
Zielgruppe: Bachelor Informatik
Credits: (ECTS): 6
Foliensätze, Handouts für den Ausdruck und Beispielprogramme
Foliensätze [F], Handouts für den Ausdruck [H] und Beispielprogramme [P]
- [F1] [H1] Einführung
- Standardschaltkreise: Entwurf eines Zählers, Test der Zählfunktion, Zustandsregister, Leiterplattenentwurf.
- VHDL + FPGA: Einfache Gatterschaltung, Zähler und Ampelsteuerung, Simulation.
- [F2] [H2] [P2] Simulation
- Einführung in VHDL: Hallo Welt, Signale, Datentypen, imperative Modelle, ereignisgesteuerte Simulation.
- Strukturbeschreibung: Schnittstellen, Instanziierung und Verbinden von Teilschaltungen, Testrahmen.
- Laufzeittoleranz: Glitches, Simulation von Zeittoleranzen, Laufzeitanalyse.
- Speicher: Latches, Register, Verarbeitung + Abtastung, Register-Transfer-Funktionen, adressierbare Speicher.
- [F3] [H3] Synthese und Schaltungsoptimierung
- Synthese: Verarbeitungsfunktionen, Register-Transfer-Funktionen, typische Beschreibungsfehler, Constraints.
- Asyncrone Eingabe: Abtastung, Initialisierung, Entprellen, asynchrone Schnittstellen mit und ohne Übertragung des Sendertaktes.
- Schaltungsoptimierung: Energieverbrauch, Schaltungsumformung, KV-Diagramm, Verfahren von Quine und McCluskey, reduziertes geordnetes binäres Entscheidungsdiagramm (ROBDD).
- [F4] [H4] [P4] Rechenwerke und Operationsabläufe
- Rechenwerke: Addierer, Subtrahierer, Zähler etc. Multiplizierer, Komparatoren, Block-Shifter.
- Automaten: Entwurf mit KV-Diagrammen, Beschreibung in VHDL, redundante Zustände, Spezifikation und Entwurf.
- Operationsabläufe: serielle Schnittstelle, serieller Addierer, Dividierer.
- [F5] [H5] Vom Transistor zur Logikschaltung
- Gatterentwurf: MOS-Transistoren als Schalter, FCMOS-Gatter, deaktivierbare Treiber, Transfergatter und Multiplexer, geometrischer Entwurf.
- Signalverzögerung: Inverter, Logikgatter, Puffer.
- Latches und Register.
- Blockspeicher: SRAM, Mehrport- und Assoziativspeicher, DRAM, Festwertspeicher.
- Programmierbare Logikschaltkreise.
- [F6] [H6] [P6] Rechnerstrukturen
- CORDIC: Algorithmus, Simulation des Algrithmus, Umstellung auf Festkommazahlen, Entwurf als Rechenwerk, Testrahmen.
- MiPro (Minimalprozessor): Funktion und Befehlssatz, Assembler und Disassembler, Prozessorzustand, Simulationsmodell, Testrahmen, Testbeispiele.
- RISC-Prozessor: Pipeline-Verarbeitung, Simulationsmodell, Testbeispiele.
Große Übungen
- [G1] 11.04.2019 Labor, Gruppe 1: 8:30 bis 10:00, Gruppe 2: 10:15 bis 11:45, Schaltungsentwurf mit Standardschaltkreisen.
- [G2] 18.04.2019 Labor, Gruppe 1: 8:30 bis 10:00, Gruppe 2: 10:15 bis 11:45, Schaltungsentwurf in VHDL mit FPGA, [EDS_GU2.zip]
- [G3] 16.05.2019, Hörsaal, Signaldarstellung, Simulation, Zeittoleranzen, Abtastprozesse, ...
- [G4] 06.06.2019, Hörsaal, Synthese, Laufzeit, KV, Quine/McCluskey, OBDD.
- [G5] [PG5] 20.06.2019 Labor, Gruppe 1: 8:30 bis 10:00, Gruppe 2: 10:15 bis 11:45, Test einer UART [uart.zip] [USB-LOGI-500].
- [G6] 04.07.2019, Hörsaal, Automaten, FCMOS.
- 18.07.2019, Hörsaal, Rechnen der Klausur vom Vorjahr.
Hausübungen
- [HA1] , Abgabe 18.04.2019
- [HA2] , Abgabe 02.05.2019 (Bearbeitungszeit 2 Wochen), Programmdateien: [PHA2], Links zum Download des Simulators und des Wave-Viewers: [ghdl] [GTKWave].
- [HA3] , Abgabe 08.05.2019, Programmdateien: [PHA3]
- [HA4] , Abgabe 16.05.2019, Programmdateien: [PHA4]
- [HA5] , Abgabe 29.05.2019
- [HA6] , Abgabe 06.06.2019
- [HA7] , Abgabe 20.06.2019
- [HA8] , Abgabe 27.06.2019, Programmdateien: [PHA8]
- [HA9] , Abgabe 04.07.2019
ghdl unter Debian 9.8 und unter Ubuntu 18.04.2
Man kann ghdl aus den debian repos gcc-6-base in der version 6.3.0 herunterladen und installieren. Quellen:
- packages.debian.org/stretch/amd64/gcc-6-base/download
- packages.debian.org/stretch/amd64/libgnat-6/download
Zur Vermeidung von Konflikten durch das gcc-Downgrade von Version 6.5 auf Version 6.3 empfielt sich die Installation in einer virtuellen Maschiene.
Ergebnisse:
Den Leistungsnachweis für die Hausübungen gibt es ab insgesamt 50 Übungspunkte. Ab 100 HP (Hausübungspunkten) gibt es 2 BP (Bonuspunkte), sonst ab 88 HP gibt es 1.5 BP, sonst ab 76 HP gibt es 1 BP und sonst ab 64 HP gibt es 0.5 BP für die Prüfungsklausur.
Matrn | Ü1 | Ü2 | Ü3 | Ü4 | Ü5 | Ü6 | Ü7 | Ü8 | Ü9 | Sum | LNE | BP |
---|---|---|---|---|---|---|---|---|---|---|---|---|
498618 | 7 | 8 | 14 | 6 | 13 | 7.5 | 5.5 | 4 | 7 | 72 | ja | 0.5 |
499183 | 6.5 | 9 | 13 | 8 | 8.5 | 4.5 | 8 | 7.5 | 10 | 75 | ja | 0.5 |
504195 | - - | 8 | - - | - - | 4.5 | 4.5 | 9 | 8 | - - | 34 | nein | - - |
493046 | 10 | - - | - - | 9 | 6 | 8 | 6 | 8.5 | 8 | 55.5 | ja | 0 |
509190 | 5.5 | 14 | - - | - - | - - | - - | - - | - - | 7 | 26.5 | nein | - - |
502289 | 9.5 | - - | - - | - - | - - | - - | - - | - - | - - | 9.5 | nein | - - |
503314 | 9 | 12 | 9 | 9 | 11 | 6 | - - | 2 | 4 | 62 | ja | 0 |
497404 | 7 | 13.5 | 14 | - - | - - | - - | - - | - - | - - | 34.5 | nein | - - |
447423 | 9.5 | 15 | 14 | 9 | 14.5 | 11.5 | 6 | 8 | - - | 87.5 | ja | 1 |
504872 | 5.5 | 18 | 13 | 11 | 15 | 10.5 | 6 | 6.5 | 10 | 95.5 | ja | 1.5 |
285076 | 7 | - - | - - | - - | - - | - - | - - | - - | - - | 7 | nein | - - |
477981 | 5.5 | 10.5 | - - | - - | - - | - - | - - | - - | - - | 16 | nein | - - |
510741 | 7 | 16 | 13.5 | 11 | 13 | 8 | 1.5 | 7 | 4 | 81 | ja | 1 |
403067 | 10 | 18 | 14 | 11 | 14.5 | 8 | - - | - - | - - | 75.5 | ja | 0.5 |
494102 | 9 | 17 | 14 | 9 | 8.5 | - - | - - | - - | - - | 57.5 | ja | 0 |
479684 | 6 | 18 | - - | 7 | 8.5 | 10.5 | - - | - - | - - | 50 | ja | 0 |
475415 | 3 | 13 | - - | 11 | 12 | 8.5 | - - | - - | 7.5 | 55 | ja | 0 |
397793 | 9.5 | 17 | 14 | 11 | 14.5 | 11 | 8.5 | 12 | 10.5 | 108 | ja | 2 |
508821 | 6.5 | 8 | 13.5 | 7 | 13 | 8 | 5 | 7.5 | 11 | 79.5 | ja | 1 |
480431 | - - | 8 | - - | - - | - - | - - | - - | - - | - - | 8 | nein | - - |
499516 | 9.5 | 17 | 14 | 12.5 | 13 | 12 | 8.5 | - - | 12 | 98.5 | ja | 1.5 |
476038 | 3 | 6 | 13.5 | 7 | 10.5 | 8 | - - | 8 | 5.5 | 61.5 | ja | 0 |
504126 | 3 | 12.5 | 12.5 | 11 | 15 | 10.5 | 6.5 | 7 | 9 | 87 | ja | 1 |
501570 | 10 | 13.5 | 14 | - - | - - | - - | - - | - - | - - | 37.5 | nein | - - |
510789 | - - | 8 | - - | - - | - - | - - | - - | - - | - - | 8 | nein | - - |
502784 | 4.5 | - - | - - | - - | - - | - - | - - | - - | - - | 4.5 | nein | - - |
495938 | 6 | 15 | - - | - - | - - | - - | - - | - - | - - | 21 | nein | - - |
485821 | 6.5 | - - | 7 | 5.5 | 4.5 | - - | - - | - - | - - | 23.5 | nein | - - |
502021 | 9.5 | 15.5 | 13 | 9 | 14.5 | 11.5 | 6 | 8 | - - | 87 | ja | 1 |
511106 | 4.5 | - - | - - | - - | - - | - - | - - | - - | - - | 4.5 | nein | - - |
508539 | 6 | - - | - - | - - | - - | - - | - - | - - | - - | 6 | nein | - - |
432438 | 9.5 | 18 | 9 | 9 | 8 | - - | - - | - - | - - | 53.5 | ja | 0 |
509303 | 5 | - - | - - | - - | - - | - - | - - | - - | - - | 5 | nein | - - |
487115 | 2.5 | 14.5 | 13.5 | 8 | 9.5 | 8 | 4.5 | - - | - - | 60.5 | ja | 0 |
505684 | 4.5 | 13.5 | 9 | 13 | 13 | 8 | 7 | 5 | 10 | 83 | ja | 1 |
474940 | 9.5 | 10 | 13.5 | 12.5 | 14 | 12 | 8.5 | 6 | 6 | 92 | ja | 1.5 |
Literatur
- G. Kemnitz: Technische Informatik Band 2: Entwurf digitaler Schaltungen. Springer. 2011.
- P. J. Ashenden: Designer's Guide to VHDL. Morgan Kaufmann Publishers. 2008.
- J. Reichert, B. Schwarz: VHDL-Synthese: Entwurf digitaler Schaltungen und Systeme. Oldenbourg. 2009
- VHDL-Books
Aktuelles
Die Prüfungsklausur zum Entwurf digitaler Schaltungen findet am 09.10.2019 um 9:00 statt, Dauer 90 min. Erlaubte Hilfsmittel für die Prüfung sind eigene Ausarbeitungen und Taschenrechner. Zu den eigenen Ausarbeitungen zählen Mitschriften, die ausgeteilten Foliensätze mit eigenen Kommentaren, die zurückgegebenen korrigierten Hausübungen, selbst angefertigte schriftliche Prüfungsvorbereitungen und Bücher mit Lesezeichen und Notizzetteln. Handys sind während der Prüfung auszuschalten. Laptops und andere elektronische Hilfsmittel sind nicht zugelassen.