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

  1. Zwei einführende Beispiele: einen Entwurf mit Standardschaltkreisen und einen VHDL-Entwurf für FPGAs.
  2. Simulation: VHDL, ereignisgesteuerte Simulation, Laufzeittoleranz, ...
  3. Synthese und Schaltungsoptimierung: synthesegerechte Beschreibung, asyncrone Eingabe, KV-Diagramm, ROBDD.
  4. Rechenwerke und Operationsabläufe: Addierer, ..., Automaten, serielle Schnittstelle, ...
  5. Vom Transistor zur Schaltung: MOS-Transistoren, Gatter, Layout, Verzögerung, ...
  6. 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
    1. Standardschaltkreise: Entwurf eines Zählers, Test der Zählfunktion, Zustandsregister, Leiterplattenentwurf.
    2. VHDL + FPGA: Einfache Gatterschaltung, Zähler und Ampelsteuerung, Simulation.
  • [F2] [H2] [P2] Simulation
    1. Einführung in VHDL: Hallo Welt, Signale, Datentypen, imperative Modelle, ereignisgesteuerte Simulation.
    2. Strukturbeschreibung: Schnittstellen, Instanziierung und Verbinden von Teilschaltungen, Testrahmen.
    3. Laufzeittoleranz: Glitches, Simulation von Zeittoleranzen, Laufzeitanalyse.
    4. Speicher: Latches, Register, Verarbeitung + Abtastung, Register-Transfer-Funktionen, adressierbare Speicher.
  • [F3] [H3] Synthese und Schaltungsoptimierung
    1. Synthese: Verarbeitungsfunktionen, Register-Transfer-Funktionen, typische Beschreibungsfehler, Constraints.
    2. Asyncrone Eingabe: Abtastung, Initialisierung, Entprellen, asynchrone Schnittstellen mit und ohne Übertragung des Sendertaktes.
    3. Schaltungsoptimierung: Energieverbrauch, Schaltungsumformung, KV-Diagramm, Verfahren von Quine und McCluskey, reduziertes geordnetes binäres Entscheidungsdiagramm (ROBDD).
  • [F4] [H4] [P4] Rechenwerke und Operationsabläufe
    1. Rechenwerke: Addierer, Subtrahierer, Zähler etc. Multiplizierer, Komparatoren, Block-Shifter.
    2. Automaten: Entwurf mit KV-Diagrammen, Beschreibung in VHDL, redundante Zustände, Spezifikation und Entwurf.
    3. Operationsabläufe: serielle Schnittstelle, serieller Addierer, Dividierer.
  • [F5] [H5] Vom Transistor zur Logikschaltung
    1. Gatterentwurf: MOS-Transistoren als Schalter, FCMOS-Gatter, deaktivierbare Treiber, Transfergatter und Multiplexer, geometrischer Entwurf.
    2. Signalverzögerung: Inverter, Logikgatter, Puffer.
    3. Latches und Register.
    4. Blockspeicher: SRAM, Mehrport- und Assoziativspeicher, DRAM, Festwertspeicher.
    5. Programmierbare Logikschaltkreise.
  • [F6] [H6] [P6] Rechnerstrukturen
    1. CORDIC: Algorithmus, Simulation des Algrithmus, Umstellung auf Festkommazahlen, Entwurf als Rechenwerk, Testrahmen.
    2. MiPro (Minimalprozessor): Funktion und Befehlssatz, Assembler und Disassembler, Prozessorzustand, Simulationsmodell, Testrahmen, Testbeispiele.
    3. 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:

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Ü9SumLNEBP
49861878146137.55.54772ja0.5
4991836.591388.54.587.51075ja0.5
504195- -8- -- -4.54.598- -34nein- -
49304610- -- -96868.5855.5ja0
5091905.514- -- -- -- -- -- -726.5nein- -
5022899.5- -- -- -- -- -- -- -- -9.5nein- -
50331491299116- -2462ja0
497404713.514- -- -- -- -- -- -34.5nein- -
4474239.51514914.511.568- -87.5ja1
5048725.51813111510.566.51095.5ja1.5
2850767- -- -- -- -- -- -- -- -7nein- -
4779815.510.5- -- -- -- -- -- -- -16nein- -
51074171613.5111381.57481ja1
4030671018141114.58- -- -- -75.5ja0.5
4941029171498.5- -- -- -- -57.5ja0
479684618- -78.510.5- -- -- -50ja0
475415313- -11128.5- -- -7.555ja0
3977939.517141114.5118.51210.5108ja2
5088216.5813.5713857.51179.5ja1
480431- -8- -- -- -- -- -- -- -8nein- -
4995169.5171412.513128.5- -1298.5ja1.5
4760383613.5710.58- -85.561.5ja0
504126312.512.5111510.56.57987ja1
5015701013.514- -- -- -- -- -- -37.5nein- -
510789- -8- -- -- -- -- -- -- -8nein- -
5027844.5- -- -- -- -- -- -- -- -4.5nein- -
495938615- -- -- -- -- -- -- -21nein- -
4858216.5- -75.54.5- -- -- -- -23.5nein- -
5020219.515.513914.511.568- -87ja1
5111064.5- -- -- -- -- -- -- -- -4.5nein- -
5085396- -- -- -- -- -- -- -- -6nein- -
4324389.518998- -- -- -- -53.5ja0
5093035- -- -- -- -- -- -- -- -5nein- -
4871152.514.513.589.584.5- -- -60.5ja0
5056844.513.5913138751083ja1
4749409.51013.512.514128.56692ja1.5

Literatur

  1. G. Kemnitz: Technische Informatik Band 2: Entwurf digitaler Schaltungen. Springer. 2011.
  2. P. J. Ashenden: Designer's Guide to VHDL. Morgan Kaufmann Publishers. 2008.
  3. J. Reichert, B. Schwarz: VHDL-Synthese: Entwurf digitaler Schaltungen und Systeme. Oldenbourg. 2009
  4. 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.

Vergangene Semester

EDS - SS18

SS 2018

EDS - SS17

SS 2017

EDS - SS16

SS 2016

EDS - SS15

SS 2015

EDS - SS14

SS 2014

EDS - SS13

SS 2013