Hochschule Kempten      
Fakultät Elektrotechnik      
Digitaltechnik       Fachgebiet Elektronik, Prof. Vollrath      

Digitaltechnik

01 Einführung

Prof. Dr.

Jörg Vollrath

Load external pictures


Ein kurze Videozusammenfassung der Vorlesung



Länge: 4:45 min

Digitaltechnik


0,1

Schalter, LED
Schiebeschalter,
7 Segment

Computer, Tastatur,
Bildschirm

Nao Roboter
Die Digitaltechnik baut auf Grundlage der 2 Zustände 0,1 und deren Verknüpfungen komplexe Systeme auf. Die komplexesten Systeme sind im Moment (2017) Roboter mit Spracherkennung und Kamera, die sich unterhalten können und sich selbstständig im Raum bewegen können.
Durch die Digitaltechnik kann man lernen, wie man reale Dinge auf Kombinationen von 0,1 abbildet und komplexe Probleme so lange in Teilprobleme mit Eingängen, Ausgängen und Verknüpfungen (Zustandsmaschinen) zerlegt, bis Sie lösbar sind.
Man lernt ein planbares, schrittweises Vorgehen zur Problemlösung.
Einen wesentlichen Anteil in der Digitaltechnik haben die Verifikation und der Test der Lösung .

Übersicht



Reichardt: Kap 1, 2.2, 2.5, 9.2

Organisation

  • Prof. Dr.-Ing. Jörg Vollrath
    Sprechstunde: T227 Mo 10:00-10:45 Voranmeldung per email
    Joerg.vollrath@hs-kempten.de
    Joerg.vollrath@ieee.org
  • Digitaltechnik
    • Vorlesung 2 SWS: Mi 11:45-13:15 T138
    • Praktikum 2 SWS:
      • Di 8:00-9:30 T219b
      • wöchentlich wechselnd
    • Klausur: 50min Digitaltechnik
      • Nichtprogramierbarer Taschenrechner
      • Unterlagen, Bücher

Area: Electronics

Analog

Digital

Microcontroller

Software

Circuits FPGA RaspberryPi JavaScript


Raspberry Pi 2 Model B v1.1 top new (bg cut out)
Schematic
VHDL
IoT Node.JS
Integrated Circuits Vision Electronics Laboratory Big Data
Data converter
Control Telepresence
Open Access E-Learning

Open Access E-Learning

Vorlesung Inhalt

Digitaltechnik

Die Digitaltechnik bildet Probleme in Nuller und Einsen, Wahr und Falsch und ihre Verknüpfungen ab. Dabei werden komplexe Probleme solange in Teilprobleme zerlegt, bis Sie lösbar sind.
Ein typisches Beispiel wäre der künstliche Mensch, Roboter oder Androide.

Digitaltechnik: Lernziele

Praktische Ausführungen der Digitaltechnik

Mikroprozessor
596px-80486 open
Field Programmable Gate Array (FPGA)
Altera-cyclone-1-fpga-HD
Links ist ein Mikropozessor zu sehen. In der Mitte ist die Abdeckung entfernt und man sieht einen Siliziumchip. Der Siliziumchip ist einige 100 Quadratmillimeter gross. Der Chip ist aufgeklebt und mit sehr feinen Golddrähten nach aussen verbunden. Innerhalb des Gehäuses werden die Anschlüsse auf die Anschlussbeine am Außenbereich des Gehäuses verteilt. Das Gehäuse nennt man pin grid array (PGA).
Heutzutage verwendet man als Gehäuse ball grid arrays (BGA) bei denen die Unterseite des Gehäuses mit Lötpunkten bedeckt ist.
Der Siliziumchip hat unterschiedlich strukturierte Gebiete entsprechend der Funktion. Grosse gleichmäßige Flächen entstehen bei Speicherstrukturen. Sehr unregelmäßige Muster realisieren Logikfunktionen. Bei modernen Prozessoren ist die Strukturgröße der Transistoren kleiner als die Lichtwellenlänge, so dass man nur noch die Verdrahtung sehen kann.
Ein Mikroprozessor hat mehrere Millionen/Milliarden Transistoren.

Rechts sieht man den Chip eines programmierbaren Logikbausteins (field programmable gate array, FPGA).
Es besteht aus sehr vielen programmierbaren Logikfunktionen und programmierbaren Verbindungsbahnen.
Deshalb sieht die Struktur sehr regelmäßig aus. Am Rand kann man blaue Rechtecke sehen, an den später mit Golddrähten die Verbindung nach aussen hergestellt wird.

Neben Speicherbausteinen sind Mikroprozessoren und FPGAs die typischen Realisierungen der Digitaltechnik.

Anwendungen der Digitaltechnik

CD, DVD

Mikrocomputer, Tablet, Mobile Phone
CD icon test
Inkrementalgeber
Inkrementalgeber
Inkrementalgeber mit gabellichtschranke

Praktikum Hardware: Digilent Electronic Explorer


Electronic Explorer
Der Electronic Explorer ist ein USB gesteuertes elektronisches Labor mit Spannungsversorgung, analogen Signalgeneratoren, digitalen Kanälen und einem 4 Kanal-Oszilloskop.
Auf dem Steckbrett kann man analoge und digitale Schaltungen aufbauen.
Im Praktikum werden ein Inverter und einige Logikfunktionen aufgebaut und vermessen.

Praktikum Software: Digilent Waveforms







Die Bedienoberfläche klassischer elektrischer Geräte wird in Software abgebildet.
Mit der Steuerzentrale in der Mitte kann man die Fenster zur Bedienung des Oszilloskops, des Signalgenerators und der Spannungsversorgung (Links von oben nach unten) oder der Digitalen Geräte (Rechts) aufrufen.
Durch eine Bildschirmkopie aller benutzten Geräte kann man einfach die Einstellungen eines Messaufbaus dokumentieren.

NAND Funktion: Messung und LTSPICE



Baustein CD4007 Verdrahtungsplan
Pin729410 11 3 121214
VerbindungGNDVP+5GNDAWG1
OSC1
VP+ AWG2
OSC3
1OSC2VP+
In der Digitaltechnik baut man Logikschaltungen nach einem Schaltplan auf und misst die Funktion der Schaltung (Verifikation).
Einfachste Digitalschaltungen werden immer noch mit Logikbausteinen aufgebaut.
Hier wird der Schaltungssimulator LTSPICE (kostenlos) benutzt, um eine NAND Funktion als Schaltplan darzustellen.
Links sieht man den Transistorschaltplan mit den Eingängen AWG1_OSC1 und AWG2_OSC3 und dem Ausgang OSC2.
Die Namen entsprechen der Verdrahtung eines Schaltungsaufbaus. Die Eingänge werden mit dem Oszilloskop (OSC1,3) und den Signalgeneratoren (AWG1,2) verbunden und der Ausgang mit dem Kanal 2 des Oszilloskops (OSC2) gemessen.
Die Versorgungsspannung VP+ wird verbunden und eine Masseverbindung (0 V) hergestellt.
Dieser Schaltplan wird mit einer Verdrahtung und einem Transistorbaustein (CD4007), wie vorher auf dem Electronic Explorer board zu sehen war, realisiert.
Rechts ist das Oszilloskopbild einer Messung zu sehen. In der Messung werden an den Eingängen alle möglichen Kombinationen nacheinander angelegt und der Ausgang beobachtet.
Nur wenn beide Eingänge "1" sind ergibt sich hier eine "0" am Ausgang.
Typischerweise sieht man in der Digitaltechnik nur zwei Signalpegel "1" und "0", 3.3 V und 0 V, 1 V und 0 V oder VDD und GND.

BASYS3: Field Programmable Logic (FPGA) Board

Programme zum Entwurf und zur Konfiguration der Logik
Vivado


  • FPGA Baustein in der Mitte der Platine
  • Unten: Schiebeschalter, Taster, LEDs und 7-Segmentanzeige
  • Oben: USB Port zur Programmierung, serial, VGA port (Videoausgang)
  • Rechts, Links: Buchsenleisten für Erweiterungen (PMOD)

USB Port
JTAG and data
Platform Flash Clock 100MHz
Xilinx Artix-7 FPGA: XC7A35T-1CPG236C
4-digit 7-Segment, 16 LED, 16 switches, 5 buttons VGA port 12 bit 4 Pmod ports
Für komplexere Digitalschaltungen werden FPGAs eingesetzt.
FPGAs können im Gegensatz zu Mikroprozessoren viele Aufgaben parallel mit hoher zeitlicher Genauigkeit durchführen.
Man sieht den sehr kleinen FPGA-Baustein in der Mitte der Platine.
Die Digitalschaltung wird beim Systemstart mit einem Flash-Speicherbaustein konfiguriert.
Für die Entwicklung stehen Developmentboards zur Verfügung, wie hier gezeigt (BASYS3 von Digilent).
Für ein Produkt wird dann eine kostengünstigere spezielle Platine angefertigt.
Das gezeigte Experimentierboard wird im Praktikum eingesetzt.

Praktikum Software

LTSPICE Programm zur Logiksimulation

Vivado
Design, Simulation und Implementierung von Digitalschaltungen in einem FPGA.

LTSPICE stellt ein grafisches Eingabefenster für den Schaltplan zur Verfügung und ein Ausgabefenster für den simulierten Signalverlauf.
Die Schaltung kann mit geeigneten Eingangssignalen simuliert werden.
Damit verifiziert man die geplante Funktionsweise.

Xilinx Vivado ist eine Programmierumgebung für Hardware description languages (HDL, VHDL, Verilog), wie sie auch bei Programmiersprachen Verwendung findet.
Diese integrierten Entwicklungsumgebungen (Integrated development environment, IDE) stellen Projekte, mit zugehörigen Dateien hierarchisch dar.
Weiterhin stellen Sie Werkzeuge zum Erstellen, Übersetzen und Debuggen des Codes zur Verfügung.
Fehlermeldungen und Warnungen werden dabei in einem Status- oder Logfenster ausgegeben.

Literatur

Lehrbuch Digitaltechnik



Digital Design (VHDL):

An Embedded Systems Approach Using VHDL

  • Peter J. Ashenden,
  • Morgan Kaufmann, 77.00 Euro

FPGA Prototyping by VHDL Examples:

Xilinx Spartan-3 Version

  • Chu, Wiley, 68.99.-Euro

Halbleiterschaltungstechnik

  • Tietze, Schenk, Springer, 90.- Euro

Mikroprozessorentwurf

Motorola68040die

Systementwurf integrierter Schaltungen


Im Bild wird der typische Ablauf eines Systementwurfs dargestellt.
In der Mitte oben sieht man den Startpunkt.
  1. Design entry:
    Mittels einer Hardwarebeschreibungssprache VHDL wird eine Digitalschaltung beschrieben.
  2. Logic synthesis:
    Bei der Logiksynthese wird die VHDL Beschreibung in Logikblöcke abgebildet.
  3. System partitioning:
    Das System wird in Teilschaltungen zerlegt.
  4. Prelayout simulation:
    Eine erste Simulation des zeitlichen Verhaltens überprüft die Funktionalität und kann bei Fehlern zur Wiederholung der Schritte 1-3 führen.
  5. Floor planning:
    Eine grobe Abschätzung der Fläche und Platzierung von Teilschaltungen auf einem Chip wird durchgeführt
  6. Placement:
    Die Schaltungsblöcke werden geometrisch platziert
  7. Routing:
    Die Schaltungsblöcke werden mit Leitungen verbunden
  8. Circuit extraction:
    Aus der Geometriebeschreibung werden die Schaltung und die parasitären Elemente extrahiert.
  9. Postlayout simulation:
    Mit diesen realitätsnäheren Daten wird die Schaltung noch einmal simuliert.
    Bei Fehlern oder ungenügender Leistung werden die Schritte 5-7 mit anderen Randbedingungen wiederholt.

Für alle diese Schritte stehen Softwaretools zur Automatisierung zur Verfügung.
Man spricht von electronic design automation (EDA) Werkzeugen.

Man kann rechts in der Spalte sehen, wie aus einer VHDL Beschreibung Teilschaltungen gebildet werden, die dann in größer Blöcke (gestrichelte Linie) mit Ein- und Ausgängen (A,B: Interface) zerlegt werden. Die Blöcke werden auf einem Chip nebeneinander plaziert. Jeder Block besteht aus Zeilen von Logikzellen (Logic cells). Diese werden durch CMOS-Transistoren (NFET, PFET) realisiert.

Ziele


Sie verstehen den Unterschied zwischen analogen und digitalen Systemen.
Sie kennen verschiedene Repräsentationen von logischen Zuständen.

Analog versus Digital

Natürliche Zahlen und ganze Zahlen
Analog:
Grüne Kurve
Physikalische Größe
Anzeige mit Zeiger

Digital:
Orangene Punkte
Wertdiskret und Zeitdiskret
Rundung, Quantisierung

Praxisbezug: Analoge und digitale Systeme

AnalogDigital
Bild Negativ-2
Fotoemulsion
Digitale Kamera, JPEG
Video VHS-Kassette 01 KMJ
VHS Kassette
CD icon test
DVD, Blu Ray
Ton Platte
Schallplatte, Kassette
CD icon test
CD, MP3
Telefon Telefon-W49
Analoges Telefon
ISDN, VoIP

Digitale Systeme in der Elektrotechnik

Digitaltechnik Definition

Repräsentation von logischen Zuständen

TechnologieZustand 0Zustand 1
Relais Logik, Schalter Schaltkreis offen Schaltkreis geschlossen
Complementary Metal Oxide Semiconductor (CMOS) Logik 0..1.5V 3.5V..5.0V
Transistor-Transistor Logik (TTL) 0-0.8V 2.0-5.0V
Glasfaser Licht aus Licht ein
Dynamischer Speicher Kapazität entladen Kapazität geladen
Magnetische Disk Fluss in Richtung „Nord“ Fluss in Richtung „Süd“
Compact Disk (CD) Kein Pit Pit
Rewriteable Compact Disk Dye im kristallisierten Zustand Dye im nicht kristallisiertem Zustand

Lochkarte

Lochkarte z7-z10 denis apel cc
Bei der Lochkarte werden 0 und 1 durch Loch oder kein Loch repräsentiert.
Die Lochkarte kann mechanisch (Schalter) oder optisch (Lichtschranke) ausgelesen werden.
Ziffern oder Zeichen werden durch die Kombination mehrerer Löcher in einer Spalte dargestellt.
Man spricht von einer Kodierung oder Abbildung (mapping).

Fragen und Arbeitsauftrag


Was sind die Eigenschaften digitaler Systeme?
Was sind die Vorteile digitaler Systeme?
Welche Elemente hat ein digitales System?
Wie können logische Zustände dargestellt werden?

Arbeitsauftrag für Sie:
Software laden:
Waveforms, Digilent: www.digilentinc.com
LTSPICE, Linear Technologies:
Vivado, Xilinx:

Lesen:
Bücherei: Bücher anschauen -> Reichardt: Kap 1,2,3
Internet: -> Wikipedia: Digitaltechnik, Boolesche Algebra, Gajski, Wahrheitstabelle

Rechnen und Arbeiten:

Weitere Bilder

Mikroprozessor
CPU Pentium Pro
Motorola68040die

Fragen

02 Verknüpfungen

Begriffe

Begriff/Bauteil Kenn ich nicht Kenne ich Verstehe ich Kann ich erklären Kann ich anwenden
Mikroprozessor
Mikroprozessor, FPGA, Nao, Schalter, LED, Schiebeschalter, 7 Segment Display Digitaltechnik, Zustände, Roboter, Eingänge, Ausgänge, Verknüpfungen, Verifikation, Test, Digilent Basys Board, Electronic Explorer, Inkrementalgeber, LTSPICE, Lehrbücher Digitaltechnik, Analoge Größen, Digitale Größen, logische Zustände, Lochkarte,


Submit


Alt BASYS2: Field Programmable Logic (FPGA) Board

Programme zum Entwurf und zur Konfiguration der Logik
XILINX Vivado, Digilent Adept


  • FPGA Baustein in der Mitte der Platine
  • Unten: Schiebeschalter, Taster, LEDs und 7-Segmentanzeige
  • Links: PS2 Port, USB Port zur Programmierung
  • Oben: Buchsenleisten für Erweiterungen (PMOD)
  • Rechts: VGA port (Videoausgang)

Für komplexere Digitalschaltungen werden FPGAs eingesetzt.
FPGAs können im Gegensatz zu Mikroprozessoren viele Aufgaben parallel mit hoher zeitlicher Genauigkeit durchführen.
Man sieht den sehr kleinen FPGA-Baustein in der Mitte der Platine.
Die Digitalschaltung wird beim Systemstart mit einem Flash-Speicherbaustein konfiguriert.
Für die Entwicklung stehen Developmentboards zur Verfügung, wie hier gezeigt (BASYS2 von Digilent).
Für ein Produkt wird dann eine kostengünstigere spezielle Platine angefertigt.
Das gezeigte Experimentierboard wird im Praktikum eingesetzt.

Alt: Praktikum Software

LTSPICE Programm zur Logiksimulation

Xilinx ISE Webpack 12.4
Design, Simulation und Implementierung von Digitalschaltungen in einem FPGA.

LTSPICE stellt ein grafisches Eingabefenster für den Schaltplan zur Verfügung und ein Ausgabefenster für den simulierten Signalverlauf.
Die Schaltung kann mit geeigneten Eingangssignalen simuliert werden.
Damit verifiziert man die geplante Funktionsweise.

Xilinx ISE Webpack ist eine Programmierumgebung für Hardware description languages (HDL, VHDL, Verilog), wie sie auch bei Programmiersprachen Verwendung findet.
Diese integrierten Entwicklungsumgebungen (Integrated development environment, IDE) stellen Projekte, mit zugehörigen Dateien hierarchisch dar.
Weiterhin stellen Sie Werkzeuge zum Erstellen, Übersetzen und Debuggen des Codes zur Verfügung.
Fehlermeldungen und Warnungen werden dabei in einem Status- oder Logfenster ausgegeben.