Technische Informatik I

Werbung
Technische Informatik I
Prof. Dr. M. Radetzki
Universität Stuttgart
Vorlesung im Sommersemester 2009
Folienmaterial mit freundlicher Genehmigung von
Dr. D. Stoffel, TU Kaiserslautern
Folie 1-1
Einführung
Vorlesungstermine
Termine:
• montags,
• dienstags,
11.30 – 13.00 Uhr, V38.01
11.30 – 13.00 Uhr, V38.01
Achtung!
Nicht an jedem Termin findet eine Vorlesung statt!
Die jeweils nächsten Termine werden in der Vorlesung
bekanntgegeben.
Terminvorschau außerdem auf der Vorlesungs-Webseite:
http://www.iti.uni-stuttgart.de
→ Kurse
→ Sommersemester 2009
→ Vorlesung Technische Informatik I
Folie 1-2
Einführung
Übungen - Ablauf
•
•
•
•
Gruppenübungen (Tutorien)
5 Übungsgruppen
Insgesamt 5 Übungstermine pro Gruppe
Übungsblätter können von der Übungswebseite
heruntergeladen werden
• Übungen werden von der Abteilung Parallele Systeme (Prof.
Simon) durchgeführt
http://www.ipvs.uni-stuttgart.de
→ Abteilungen: Parallele Systeme
→ Lehre: Lehrveranstaltungen
→ Technische Informatik 1 Übung
→ Materialien
Folie 1-3
Einführung
Online-Anmeldung zu den Übungen
Zu den Übungen ist eine Online-Anmeldung erforderlich. Die
Anmeldungs-Webseite ist über die Übungs-Webseite erreichbar:
http://uebungsgruppen.informatik.uni-stuttgart.de
→Technische Informatik
→ Übungen zu Technische Informatik I
Dienstags,
15:45-17:15 Uhr in 0.363, 14-tägig
Dienstags,
17:30-19:00 Uhr in 0.108, 14-tägig
Donnerstags, 14:00-15:30 Uhr in 0.463, 14-tägig
Die Online-Anmeldung wird ab
Dienstag, 21.04.2009, 14:00 Uhr
freigeschaltet.
Anmeldung möglich bis Freitag, 24.04.2009, 18:00 Uhr!
Folie 1-4
Einführung
Sonstiges
Kriterien für Erwerb des Übungsscheins:
• Anwesenheitspflicht und aktive Mitarbeit in der Übung als
Voraussetzung für die Zulassung zur Scheinklausur
• Scheinklausur in der letzten Vorlesungswoche
(lernen Sie vorlesungsbegleitend!)
• Auch wenn Sie den Schein nicht brauchen: die Inhalte dieser
Vorlesung machen 50% der Prüfungsklausur aus!
Skript/Folien:
• Tafelanschrieb mitschreiben!
• Buch „Technische Informatik 1“ in der Inf.-Bibliothek.
• Folien stehen über die Vorlesungs-Webseite zur Verfügung.
• Benutzername und Passwort am Ende dieser Vorlesung.
Folie 1-5
Technische Informatik I
Technische Informatik I
Prof. Dr. Martin Radetzki
Universität Stuttgart
Kapitel 1
Einführung
Folie 1-1
Einführung
Informationstechnik – Technische Informatik
Informationstechnische Systeme
halten Einzug in viele Bereiche
des täglichen Lebens:
PC, Handy, Multimedia,
Automobil etc.
Überall im Alltag stoßen wir auf technische Systeme, die Information speichern,
übertragen und verarbeiten.
Folie 1-2
Einführung
Technische Informatik
Die Technische Informatik ist ein wichtiges Grundgebiet der
Informatik.
Ihr Gegenstand sind die Techniken, die die
Speicherung,
Übertragung und
Verarbeitung
von Information ermöglichen.
Was ist Information ? „etwas Wissbares“ (S. Wendt)
Was ist „wissbar“ ? …
(unsere intuitive Vorstellung soll uns genügen)
Information wird in physikalisch realisierbaren Mustern symbolisiert: „Daten“
(In der Informatik betrachten wir meistens nur die Daten, nicht die symbolisierte
Information.)
Folie 1-3
Einführung
Speicherung
von Information (oder „Daten“) in technischen Systemen
Speichermedien sind beispielsweise:
Hauptspeicher eines Computers (RAM), Festplatte eines Computers, FlashSpeicher, CDs, DVDs, Plastikkarte mit Magnetstreifen, Leitz-Ordner
Wie realisiere ich elektronische Speichermedien physikalisch?
Mit dieser Frage beschäftigen sich beispielsweise Mikroelektronik oder
Halbleiterphysik.
Folie 1-4
Einführung
Speicherung
von Information (oder „Daten“) durch technische Systeme
Es kommen wichtige Fragen hinzu:
Wie strukturiert, wie repräsentiert man die Information, so dass man:
• sie möglichst einfach (und schnell) abspeichern kann?
• sie möglichst einfach (und schnell) wieder abrufen kann?
• möglichst wenig Ressourcen benötigt?
Solche Fragen werden z.B. in der Datenbanktechnik behandelt, wo es darum geht,
große Mengen von Daten zu verwalten,
oder z.B. in der Rechnerarchitektur, wo man sich Speicherhierarchien
(Register→Cache→Hauptspeicher→Festplatte →Magnetband) überlegt, um eine
möglichst schnelle und dennoch kostengünstige Informationsverarbeitung zu
gewährleisten.
Folie 1-5
Einführung
Übertragung
von Information (oder „Daten“) durch technische Systeme
Information (Daten) wird heute in Kommunikationsnetzwerken übertragen, in
denen unterschiedliche Übertragungsstrecken zusammengeschaltet sind. Damit
beschäftigt sich die Kommunikationstechnik.
Beispiele für Übertragungsstecken:
Richtfunk, Kupferkabel, Glasfaserkabel,
per Satellit etc.
Wie realisiert man Kommunikationsnetzwerke mit guten physikalischen
Übertragungseigenschaften?
Aber auch:
Wie repräsentiert („kodiert“) man Information, so dass man in möglichst kurzer
Zeit unter Aufwendung möglichst geringer Ressourcen möglichst viel
Information übertragen und möglichst einfach weiterverarbeiten kann?
Folie 1-6
Einführung
Verarbeitung
von Information (oder „Daten“) durch technische Systeme
Information (Daten) wird in technischen Systemen unterschiedlicher Art
verarbeitet.
Der Informationsverarbeitung in technischen Systemen liegt stets ein formales
Verfahren zugrunde, also eine Abfolge von vorher festgelegten elementaren
Verfahrensschritten.
Im Unterschied dazu verarbeitet der Mensch Information häufig ohne ein (ihm
bewusstes) formales Verfahren.
Folie 1-7
Einführung
Beispiele
informationsverarbeitender Systeme
Der Getränkeautomat
Eingabe von Daten in Form von
unterschiedlichen Münzen und mit einer
Tastatur zur Auswahl einer Getränkesorte
Ausgabe einer Getränkedose und von
Wechselgeld entsprechend der eingeworfenen
Geldsumme
Der Getränkeautomat muss ein einfaches formales Verfahren besitzen, mit
dem er für jede Eingabe entscheidet, ob eine Getränkedose bestimmten Typs
ausgegeben wird und wieviel Wechselgeld zurückgegeben wird.
Folie 1-8
Einführung
Beispiele
informationsverarbeitender Systeme
Das Überdruckventil eines Schnellkochtopfs
Eingabe ist der Dampfdruck im Inneren des Topfes.
Ausgabe ist ein Pfeifgeräusch, das ertönt, wenn der Druck einen bestimmten
Schwellenwert übersteigt, sowie das Auslösen des Ventils, um den Dampf
entweichen zu lassen.
Das Überdruckventil kann z. B. durch eine einfaches mechanisches Verfahren
basierend auf einer Feder realisiert werden.
Folie 1-9
Einführung
Beispiele
informationsverarbeitender Systeme
Der Computer
Eingabe von Daten über Tastatur, Maus, Netzwerk und andere periphere Geräte
Ausgabe von Daten über Monitor, Lautsprecher, Netzwerk, Drucker und andere
periphere Geräte
Durch Programmierbarkeit können je nach Anwendung und Art der Ein-/Ausgabedaten unterschiedliche formale Verfahren zur Informationsverarbeitung
„implementiert“ werden:
z.B.
•
•
•
•
Verfahren zur Lösung mathematischer Probleme
Verfahren zur Steuerung von produktionstechnischen Anlagen
Verfahren zur Unterstützung verwaltungstechnischer und betrieblicher Abläufe
Verfahren zur Unterstützung von Entwurfsprozessen (CAD)
Folie 1-10
Einführung
Verarbeitung
von Information (oder „Daten“) durch technische Systeme
Wie realisiert man informationsverarbeitende Systeme?
Wie realisiert man die physikalischen Vorgänge, die informationsverarbeitenden
Prozessen zugrunde liegen?
Dies ist eine Fragestellung der Mikroelektronik, der Elektronik und der
Schaltungstechnik.
Wie strukturiert man die Information und ihre Verarbeitung?
Welche informationellen Strukturen und welche Formalismen legt man
informationsverarbeitenden Systeme zugrunde?
Dies ist eine Fragestellung der Informatik.
Folie 1-11
Einführung
Verarbeitung
von Information (oder „Daten“) durch technische Systeme
Beispiel: Formalismus zur Darstellung nichtnegativer ganzer Dezimalzahlen als
Dualzahl
Man gibt zur Identifikation einer Zahl jeweils diejenigen Zweierpotenzen an, deren
Summe die gemeinte Zahl ist. Zum Beispiel ist mit 11001 die Zahl fünfundzwanzig
gemeint, weil 1·24 + 1·23 + 0·22 + 0·21 + 1·20 = 16 + 8 + 1 = 25 ist.
Für ein physikalisches System zur Darstellung einer Dualzahl gibt es viele
Möglichkeiten, z.B. eine Folge von Speicherzellen (Bits) in einem Register, eine
Folge von Leuchtdioden, eine Lochkarte, etc.
Zum Verständnis der Funktion eines solchen Systems benötigt man beides:
•
Kenntnis der elektrotechnisch/physikalischen Realisierung,
•
Kenntnis des zugrundeliegenden Formalismus, mit dem eineInterpretation
verbunden ist. Diese muss man kennen, wenn man das System seinem Zweck
entsprechend einsetzen will.
Folie 1-12
Einführung
Die Trennung zwischen den informationellen Strukturen eines informationstechnischen Systems, die man mit bestimmten Formalismen beschreiben kann und
den Techniken zu ihrer physikalischen Realisierung ist unvermeidlich, wenn man
große, komplexe Systeme entwerfen will.
Beispiel: Computerprogramm
Ein Programm ist zunächst lediglich eine Beschreibung eines technischen Systems. Es
ist selbst nicht zu Wechselwirkungen mit seiner Umwelt fähig. Im Bereich software
engineering beschäftigt man sich mit den Strukturen eines Programms. Sie sind nicht
mit den Strukturen des durch das Programm beschriebenen Systems zu verwechseln.
Das beschriebene System wird realisiert, indem man das Programm in ein programmierbares System einbringt, so dass es sich gemäß dem Programm verhalten kann.
Während man das Programm entwirft, braucht man sich nicht mit den technischen
Realisierungen zu beschäftigen, für die es viele Möglichkeiten gibt. Während man die
technischen Realisierungen entwirft, braucht man sich nicht mit den Programmen
beschäftigen, die später darauf abgearbeitet werden sollen.
Nur durch diese Trennung ist es möglich, große Systeme zu entwerfen.
Folie 1-13
Einführung
Thema der Vorlesung "Technische Informatik I"
physikalische/elektrotechnische
Hilfsmittel,
einfache Bausteine zur Realisierung
informationstechnischer Systeme
mathematische Hilfsmittel
(Formalismen)
zur Beschreibung
informationstechnischer Systeme
Methodik für den Entwurf komplexer
informationstechnischer Systeme
In dieser Vorlesung betrachten wir die elektrotechnischen Grundlagen
der technischen Informatik und die Anwendung ihrer Formalismen auf
den Entwurf digitaler Schaltungen.
Folie 1-14
Einführung
Beispiel: Signale
Information kann in unterschiedlichen physikalischen Erscheinungsformen
übermittelt werden, z.B. mittels
Schallwellen, Spannungs- und Stromschwankungen in einem Leiter, elektromagnetischen Wellen.
Die Prozesse der räumlichen und zeitlichen Änderung dieser physikalischen
Größen beschreiben wir mathematisch durch Signale.
Auf Signale und ihre Klassifikation wird später noch genauer eingegangen.
Die meisten technischen Systeme zur Informationsverarbeitung verbinden
Information mit bestimmten Objekten, z.B. Münzen (Getränkeautomat) oder
binäre Zahlen (Computer). Kennzeichen dieser Objekte ist, dass sie voneinander
unterscheidbar (diskret) und somit abzählbar sind.
Folie 1-15
Einführung
Digital versus analog
Digitale und analoge Signale
+5
+5
1
0
1
V
V
Zeit
Zeit
–5
Digital:
es können nur diskrete Werte
angenommen werden (hier werden
sogar nur zwei Werte unterschieden,
es handelt sich deshalb um ein
binäres Signal)
–5
Analog:
Werte variieren kontinuierlich über
den gesamten Wertebereich
Folie 1-16
Einführung
Vorteile digitaler Systeme
Analoges System: kleine Schwankungen am Eingang können zu großen
Schwankungen am Ausgang führen
Digitales System: höhere Robustheit und Genauigkeit, kleine Signalschwankungen
werden „wegabstrahiert“
einzelne Systemkomponenten können leichter zusammengesetzt
werden
Computer benutzen intern digitale Schaltungen.
Die reale physikalische Welt ist analog. Interface-Schaltungen (z.B. Sensoren und
Aktuatoren) sind daher meist analog.
Folie 1-17
Einführung
Digitale Hardware
Binäre Systeme
• Zwei diskrete Werte:
on, 5 Volt, high, Strom fließt, magnetischer Nordpol, "1"
off, 0 Volt, low, kein Strom fließt, magnetischer Südpol, "0"
• Vorteile binärer Systeme:
sehr gut durch Gesetze der mathematischen Logik beschreibbar,
vor allem: technologisch leicht realisierbar
Beispiel:
WENN
WENNdie
dieAmpel
Ampelfür
fürdie
dieHauptstraße
Hauptstraßegrün
grünist
ist
UND
die
Ampel
für
die
einmündende
Straße
UND die Ampel für die einmündende Straßerot
rotist
ist
UND
UND45
45Sekunden
Sekundenseit
seitdem
demletzten
letztenWechsel
Wechselvergangen
vergangensind,
sind,
DANN
wird
die
Ampel
für
die
Hauptstraße
gelb
DANN wird die Ampel für die Hauptstraße gelb
Folie 1-18
Einführung
Beispiel einer Implementierung
Beispiel einer Implementierung eines informationstechnischen
Systems mit Hilfe eines Netzwerkes von Schaltern:
Jeder Schalter wird von einem Steuersignal bedient.
Man kann mit einem solchen Schalternetzwerk die Gültigkeit
logischer Aussagen bestimmen.
Hauptstraße
grün
True
einmündende
Straße rot
45 s seit
letztem Wechsel
Hauptstraße
wird gelb
WENN
WENNdie
dieAmpel
Ampelfür
fürdie
dieHauptstraße
Hauptstraßegrün
grünist
ist
UND
die
Ampel
für
die
einmündende
Straße
UND die Ampel für die einmündende Straßerot
rotist
ist
UND
UND45
45Sekunden
Sekundenseit
seitdem
demletzten
letztenWechsel
Wechselvergangen
vergangensind,
sind,
DANN
wird
die
Ampel
für
die
Hauptstraße
gelb
DANN wird die Ampel für die Hauptstraße gelb
Folie 1-19
Einführung
Gliederung
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Einführung
Physikalische und mathematische Grundbegriffe
Das elektrostatische Feld
Elektrischer Strom und elektrische Netzwerke
Elektromagnetische Vorgänge
Halbleiterbauelemente
Digitale Grundschaltungen
Optimierung von Schaltnetzen
Bausteine digitaler Entwürfe
Automaten als Verhaltensmodelle sequenzieller Netzwerke
Schaltwerke
Funktionseinheiten sequenzieller Systeme
Aufbau eines Rechners
Entwurfsautomatisierung
Folie 1-20
Einführung
Literatur (1)
Manfred Albach:
Grundlagen der Elektrotechnik I
2004, Pearson Studium Verlag, ISBN 3-8273-7106-6, 292 S.
Wolfram Schiffmann, Robert Schmitz:
Technische Informatik 1
5. Aufl., 2004, Springer-Verlag, ISBN 3-540-40418-7, 337 S.
Bernd Becker, Rolf Drechsler, Paul Molitor:
Technische Informatik
Eine Einführung.
2005, Pearson Studium Verlag, ISBN 3-8273-7092-2, 390 S.
Randy Katz:
Contemporary Logic Design
1994, Benjamin/Cummings-Verlag, ISBN 0-8053-2703-7.
Folie 1-21
Einführung
Literatur (2)
U. Schöning:
Logik für Informatiker
1995, Spektrum Lehrbuch, Akademischer Verlag, ISBN 3-86025-684-X.
S. Wendt:
Nichtphysikalische Grundlagen der Informationstechnik
Interpretierte Formalismen
1991, Springer-Verlag, ISBN 3-540-54452-6, 487 S.
Folie 1-22
Technische Informatik I
Prof. Dr. Martin Radetzki
Universität Stuttgart
Kapitel 2
Physikalische und mathematische Grundbegriffe
Folie 2-1
Physikalische und mathematische Grundbegriffe
Physikalische Größen
Die Physik befasst sich mit messbaren Eigenschaften von Naturvorgängen
und den zwischen ihnen bestehenden gesetzmäßigen Beziehungen.
Eigenschaften werden durch den Begriff „Physikalische Größe“
bezeichnet.
Physikalische Größen sind beispielsweise:
•
•
•
•
•
Länge (gemessen in Meter,m)
Zeit (gemessen in Sekunde,s)
Kraft (gemessen in Newton,N)
elektrische Spannung (gemessen in Volt,V)
...
Physikalische Größen sind durch mathematische Gleichungen, so
genannte Größengleichungen, miteinander verknüpft. Diese Gleichungen
beschreiben physikalische Gesetzmäßigkeiten, beispielsweise:
Spannung = elektrischer Widerstand mal Stromstärke
U=R•I
(Ohm'sches Gesetz)
Folie 2-2
Physikalische und mathematische Grundbegriffe
Physikalische Größen
Der Wert einer physikalischen Größe ist das Produkt aus einem
Zahlenwert und einer Einheit:
Wert der Größe = Zahlenwert • Einheit
Bsp.: U = 5,2 V bedeutet:
gemessene Spannung U beträgt das 5,2fache eines Volt.
Zahlenwert = 5,2
Einheit = V
Zur besonderen Kennzeichnung der Einheit wird die eckige Klammer
verwendet.
Bsp.: [I] = A bedeutet:
die Einheit der elektrischen Stromstärke I ist Ampere.
Folie 2-3
Physikalische und mathematische Grundbegriffe
Basisgrößenarten
In der Physik werden 7 Basisgrößenarten verwendet. Sie sind voneinander
unabhängig. Von ihnen lassen sich alle anderen Größen ableiten. Die
Basiseinheiten sind im internationalen Système International d’Unités (SI)
festgelegt.
übliches
Formelzeichen
SI-Basiseinheit
Länge
l
das Meter (m)
Masse
m
das Kilogramm (kg)
Zeit
t
die Sekunde (s)
elektrische Stromstärke
I
das Ampere (A)
Temperatur
T, ϑ
das Kelvin (K)
Stoffmenge
n
das Mol (mol)
Lichtstärke
IV
die Candela (cd)
MKSA-System
Basisgrößenart
Für die Beschreibung mechanischer sowie elektromagnetischer Vorgänge
reichen die vier SI-Basisgrößen des MKSA-Systems (Meter, Kilogramm,
Sekunde, Ampere) aus.
Folie 2-4
Physikalische und mathematische Grundbegriffe
Abgeleitete Einheiten
Aus den Basiseinheiten lassen sich durch Multiplikation, Division und
Potenzierung abgeleitete Einheiten bilden, die ihrerseits einen eigenen
Namen bzw. ein eigenes Zeichen besitzen können.
Beispiele:
[Ladung] = Coulomb
[Q] = C
mit 1 C = 1 As
[Kraft] = Newton
[F] = N
mit 1 N = 1 kg m/s2
[Frequenz] = Hertz
[f] = Hz
mit 1 Hz = 1/s
Die Dimension dim x einer Größe x gibt den Zusammenhang
zwischen x und den Basisgrößen an. Sie wird als Produkt von
Potenzen der Basisgrößen-Formelzeichen angegeben.
Beispiel: Die Dimension der Geschwindigkeit v (= Weg/Zeit) lautet
dim v = l t–1
Folie 2-5
Physikalische und mathematische Grundbegriffe
Weitere Einheiten
Neben den SI-Einheiten existieren noch einige andere Einheiten für die
Anwendung in speziellen Gebieten. Ihr Zusammenhang mit den SIEinheiten wird experimentell ermittelt. Die für uns wichtigen Beispiele sind
das Elektronenvolt (eV) und die atomare Masseneinheit (u).
Ein Elektronenvolt (eV) entspricht der kinetischen Energie, die ein
Elektron beim Durchlaufen einer Potenzialdifferenz von 1 V im Vakuum
gewinnt.
1eV = 1,6021892 · 10–19 J
Die atomare Masseeinheit u wird angegeben in kg und entspricht 1/12 der
Masse eines Kohlenstoffisotops 12C.
1u = 1,66057 · 10–27 kg
Folie 2-6
Physikalische und mathematische Grundbegriffe
SI-Vorsätze
Ist der Zahlenwert einer physikalischen Größe unpraktisch groß
oder klein, so kann eine Zehnerpotenz der Einheit verwendet
werden.
Die Zehnerpotenz wird durch einen der folgenden Vorsätze
gekennzeichnet:
Potenz Name Zeichen
Potenz Name Zeichen
1015
Peta
P
10-3
Milli
m
1012
Tera
T
10-6
Mikro
µ
109
Giga
G
10-9
Nano
n
106
Mega
M
10-12
Piko
p
103
Kilo
k
10-15
Femto
f
Folie 2-7
Physikalische und mathematische Grundbegriffe
SI-Vorsätze
Der Vorsatz wird so gewählt, dass der Zahlenwert der Größe
zwischen 0,1 und 1000 liegt.
Bsp.: Ein Radiosender sendet auf einer Frequenz von 106 300 000 Hertz
106 300 000 Hz = 106 300 kHz = 106,3 MHz
Anmerkung:
Eine Besonderheit bildet die SI-Basiseinheit Kilogramm (kg). Die Vorsätze
werden nicht auf kg, sondern auf die Einheit Gramm (g) angewendet.
Beispielsweise werden 10-3 g als mg und nicht als µkg bezeichnet.
Folie 2-8
Physikalische und mathematische Grundbegriffe
Skalare und vektorielle Größen
Physikalische Größen sind entweder Skalare oder Vektoren.
Skalare Größen sind durch Zahlenwert und Einheit vollständig
charakterisiert.
Beispiele skalarer Größen:
Zeit t, Temperatur T, elektrische Ladung Q, Masse m, ...
Vektorielle Größen haben neben Zahlenwert und Einheit auch noch
eine Richtung.
Beispiele vektorieller Größen:
Geschwindigkeit v, Kraft F, elektrische Feldstärke E, ...
Benötigt man von einer vektoriellen Größe A nur Zahlenwert und
Einheit, also den Betrag des Vektors A, so schreibt man |A| oder nur
kurz A.
Folie 2-9
Physikalische und mathematische Grundbegriffe
Freie und gebundene Vektoren
In der Physik unterscheidet man zwischen freien Vektoren und
gebundenen Vektoren.
Bei freien Vektoren spielt die Position ihres Anfangspunktes keine
Rolle, d.h. sie können frei im Raum verschoben werden.
Gebundene Vektoren sind an ihren Anfangspunkt gebunden und
somit ortsabhängig.
Bsp.:
die Feldvektoren der elektrischen Feldstärke. Sie sind im
Allgemeinen von Ort zu Ort nach Betrag und Richtung verschieden.
Vektoren, die in einem festen Punkt (z.B. dem Koordinatenursprung)
beginnen, können überhaupt nicht verschoben werden und heißen
Ortsvektoren.
Axiale Vektoren tragen die Information eines Drehsinns. Ihre
Richtung verläuft parallel (oder antiparallel) zur Drehachse. Das
Vorzeichen kennzeichnet den Drehsinn.
Folie 2-10
Physikalische und mathematische Grundbegriffe
Negativer Vektor, Einheitsvektor, Nullvektor
Unter einem Vektor -a versteht
man einen Vektor mit dem
gleichen Betrag wie +a, aber
mit entgegengesetzter Richtung.
Ein Vektor vom Betrag 1 wird
Einheitsvektor genannt. Jeder
Vektor kann aus einem Betrag
(seiner Länge) und einem in
Richtung des Vektors
zeigenden Einheitsvektor
dargestellt werden.
Der Nullvektor 0 ist ein Vektor mit Betrag 0. Er hat keine Richtung.
Für den Nullvektor ist auch die Schreibweise 0 (ohne Vektorpfeil)
gebräuchlich.
Folie 2-11
Physikalische und mathematische Grundbegriffe
Addition und Subtraktion von Vektoren
Vektoraddition a+b:
Parallelverschiebung und
"Aneinanderhängen".
Die Vektoraddition ist
kommutativ:
Vektorsubtraktion –b:
Bildung von –b, danach
Vektoraddition:
r
r r r
a − b = a + ( −b )
r r r r
a+b =b +a
Folie 2-12
Physikalische und mathematische Grundbegriffe
Multiplikation von Vektor und Skalar
Die Multiplikation eines Vektors mit einem Skalar ergibt wieder
einen Vektor gleicher (oder entgegegengesetzter) Richtung.
a
b = ·a ,
b = ·a ,
>0
<0
Folie 2-13
Physikalische und mathematische Grundbegriffe
Skalarprodukt ("inneres Produkt")
Das Skalarprodukt a·b zweier Vektoren a und b ist ein Skalar und
ist definiert als:
a·b = |a|·ea · |b|·eb = a·b·cos
Folie 2-14
Physikalische und mathematische Grundbegriffe
(Skalarprodukt)
Das Skalarprodukt ist kommutativ:
a·b = b·a
Das Skalarprodukt ist distributiv bezüglich der
Vektoraddition und Vektorsubtraktion:
a·(b + c) = a·b + a·c
Für parallele bzw. senkrecht aufeinander stehende Vektoren a und b
gelten folgende Spezialfälle:
a·b = ab
wenn a und b parallel sind
a·b = 0
wenn a und b senkrecht zueinander sind
a·b = –ab
wenn a und b antiparallel sind
Folie 2-15
Physikalische und mathematische Grundbegriffe
Vektorprodukt ("Kreuzprodukt", "äußeres Produkt")
Das Vektorprodukt a×b zweier Vektoren a und b ist ein Vektor c
definiert durch:
Betrag:
|c| = |a|·|b|·sin
= ab sin
Richtung: c steht senkrecht auf der von a und b
aufgespannten Ebene und zwar so, dass
a, b und c ein Rechtssystem bilden.
Folie 2-16
Physikalische und mathematische Grundbegriffe
(Vektorprodukt)
Das Vektorprodukt ist nicht kommutativ:
a×b = – b×a
Das Vektorprodukt ist distributiv bezüglich der
Vektoraddition und Vektorsubtraktion:
a×(b + c) = a×b + a×c
Für parallele bzw. senkrecht aufeinander stehende Vektoren a und b
gelten folgende Spezialfälle:
a×b = 0
wenn a und b parallel sind
a×b = ab ec
wenn a und b senkrecht zueinander stehen
a×b = 0
wenn a und b antiparallel sind
Folie 2-17
Physikalische und mathematische Grundbegriffe
Kartesisches Koordinatensystem
Die Koordinatenachsen sind
zueinander orthogonal.
Die Einheitsvektoren ex, ey und ez
verlaufen parallel zu den Koordinatenachsen und bilden ein Rechtssystem.
Ein Raumpunkt P wird bezogen auf
den Koordinatenursprung 0 durch einen
Ortsvektor r der Länge r = | r |
beschrieben.
r = x ex + y ey + z ez
r
r = r = x2 + y2 + z2
Folie 2-18
Physikalische und mathematische Grundbegriffe
Vektoroperationen im kartesischen Koordinatensystem
Mit a = ax ex + ay ey + az ez und b = bx ex + by ey + bz ez lassen sich die
Vektoroperationen in kartesischen Koordinaten wie folgt berechnen:
Vektoraddition: a + b = (ax + bx) ex + (ay + by) ey + (az + bz) ez
Vektorsubtraktion: a – b = (ax – bx) ex + (ay – by) ey + (az – bz) ez
Multiplikation mit Skalar:
Skalarprodukt:
a =
a x ex + a y ey + a z ez
a · b = axbx + ayby + azbz
Vektorprodukt: a × b = (aybz – azby) ex + (azbx – axbz) ey + (axby – aybx) ez
Folie 2-19
Physikalische und mathematische Grundbegriffe
Beispiele krummliniger Koordinatensysteme
Zylinderkoordinaten
Ein Raumpunkt P wird durch die Koordinaten , und z beschrieben.
Die (ortsabhängigen) Einheitsvektoren e , e und ez bilden in jedem
Raumpunkt ein orthogonales Rechtssystem.
Folie 2-20
Physikalische und mathematische Grundbegriffe
Beispiele krummliniger Koordinatensysteme
Kugelkoordinaten
Ein Raumpunkt P wird durch die Koordinaten r, ϑ und beschrieben.
Die (ortsabhängigen) Einheitsvektoren er, eϑ und e bilden in jedem
Raumpunkt ein orthogonales Rechtssystem.
Folie 2-21
Technische Informatik I
Prof. Dr. Martin Radetzki
Universität Stuttgart
Kapitel 3
Das elektrostatische Feld
Folie 3-1
Elektrostatisches Feld
Bohr'sches Atommodell
Niels Bohr (1885-1962)
–
–
0 + 0 Atomkern, ∅ ~ 10-14 m
+0+
0+
–
+
Proton
–
Elektron
0
Neutron
Elektronenhülle, ∅ ~ 10-10 m (!)
–
Folie 3-2
Elektrostatisches Feld
Elektrische Ladung
Die kleinste (nicht weiter teilbare) Ladungsmenge heißt
Elementarladung e = 1.6021892·10-19 As
Protonen tragen die Ladung +e.
Elektronen tragen die Ladung –e.
Da die Anzahl der Protonen und Elektronen in den Atomen gleich groß ist,
verhalten sich Atome nach außen elektrisch neutral.
Ladungen sind stets ein Vielfaches der Elementarladung.
In einem abgeschlossenen System ist die Summe der Ladungen stets
konstant.
Ladungen gleichen Vorzeichens stoßen sich gegenseitig ab.
Ladungen unterschiedlichen Vorzeichens ziehen sich gegenseitig an.
Folie 3-3
Elektrostatisches Feld
Coulomb'sches Gesetz
Durch Messung hat Charles Augustin de
Coulomb (1736-1806) für die Kraft F zwischen
zwei Punktladungen Q1 und Q2 festgestellt:
Q1Q2
F~ 2
r
Die Proportionalitätskonstante ist 1/4 0. Der Faktor 0 heißt
elektrische Feldkonstante und beträgt 0 = 8,854·10-12 As/Vm.
Mit der Festlegung eines
Einheitsvektors er in Richtung
von Q1 nach Q2 ergibt sich der
Kraftvektor nach Betrag und
Richtung zu:
r
F=
1 Q1Q2 r
er
2
4πε 0 r
Folie 3-4
Elektrostatisches Feld
Elektrisches Feld
Die Ladung Q2 erfährt durch das Vorhandensein der Ladung Q1 eine
Kraftwirkung. Die Kraftwirkung ist direkt proportional zu Q2 und abhängig
vom Ort der Ladung Q2.
Man sagt, die ruhende Ladung Q1 ruft ein elektrisches Feld hervor, das sich
durch Kraftwirkung auf Probeladungen Q2 bemerkbar macht.
r
F=
r
1 Q1 r
e ⋅ Q2 = E ⋅ Q2
2 r
4πε 0 r
r
E=
1 Q1 r
e
2 r
4πε 0 r
Die Größe E wird elektrische Feldstärke genannt und hat die Einheit V/m.
Der Zusammenhang zwischen der Kraft F auf eine Ladung Q in einem
elektrischen Feld und der elektrischen Feldstärke E lautet
r r
F = E ⋅Q
Folie 3-5
Elektrostatisches Feld
(Elektrisches Feld)
Der Begriff elektrische Feldstärke bezeichnet einen Vektor in einem speziellen
Raumpunkt. Die Gesamtheit der Feldvektoren im Raum wird als elektrisches
Feld bezeichnet.
Eine positive Punktladung ruft eine radial nach außen gerichtete elektrische
Feldstärke hervor. Bei einer negativen Punktladung zeigt der Feldstärkevektor
zur Punktladung hin.
Die Kraft auf eine positive Punktladung hat die gleiche Richtung wie die
elektrische Feldstärke an der Stelle der Punktladung. Bei einer negativen
Punktladung zeigen Feldstärke und Kraft in entgegengesetzte Richtungen.
Auf die Ladung Q2 wirkt eine Kraft infolge des durch Q1 hervorgerufenen
elektrischen Feldes. Q2 erzeugt aber ihrerseits ein elektrisches Feld, das eine
gleich große, entgegengesetzt gerichtete Kraft F1 = E2Q1 = –F2 auf die
Punktladung Q1 ausübt.
Folie 3-6
Elektrostatisches Feld
Überlagerung von Feldern
Die Gesamtfeldstärke einer aus mehreren Ladungen bestehenden Anordnung
ergibt sich durch lineare Überlagerung der Beiträge der Einzelladungen:
r
r r
1
ri
E ( rP ) =
Qi 3
∑
4πε 0 i =1, 2,... ri
mit
r r r
ri = rP − rQi
und
r
ri = ri
Bsp.: Das Feld dreier
Punktladungen Q1, Q2 und
Q3 in einem Raumpunkt P:
Folie 3-7
Elektrostatisches Feld
Darstellung von Feldern
Als Feldlinien bezeichnet man
Raumkurven, bei denen die Tangente
in jedem Punkt in Richtung der
elektrischen Feldstärke zeigt.
Die Dichte der in einem Feldlinienbild eingezeichneten Feldlinien
kann in vielen Fällen so gewählt werden, dass sie ein Maß für den
Betrag der Feldstärke darstellt.
Die Feldlinien beginnen immer bei positiven Ladungen und enden auf
negativen Ladungen.
Folie 3-8
Elektrostatisches Feld
Beispiele von Feldlinienbildern
Feldlinienbilder zweier Punktladungen
Folie 3-9
Elektrostatisches Feld
(Beispiele für Feldlinienbilder)
Feldlinienbild einer einzelnen positiven Punktladung.
Zur Vereinfachung nimmt man an, dass sich die zugehörigen negativen
Ladungen auf einer unendlich fernen Hülle befinden.
Folie 3-10
Elektrostatisches Feld
(Beispiele für Feldlinienbilder)
Elektrisches Feld zwischen zwei mit den Ladungen +Q und –Q
geladenen Platten.
Folie 3-11
Elektrostatisches Feld
Arbeit
Wenn eine Kraft einen Körper auf einem bestimmten Weg verschiebt,
so verrichtet sie am Körper Arbeit.
Unter der physikalischen Größe der Arbeit W versteht man das
Produkt aus Kraft F und Weg s.
Die verrichtete Arbeit W vergrößert die Energie des Körpers um W.
SI-Einheit der Arbeit bzw. der Energie:
[W] = [F]·[s] = N·m = Joule (J) = W·s = kg·m2/s2
Wenn W die verrichtete Arbeit, F die konstante Kraft, die in
Wegrichtung wirkt und s der vom Körper zurückgelegte Weg ist,
dann gilt W = F · s.
Bilden Kraft- und Wegrichtung einen Winkel , dann darf nur die
Kraftkomponente in Wegrichtung mit dem Weg multipliziert werden:
W = F · s · cos , oder, in vektorieller Schreibweise: W = F · s.
Folie 3-12
Elektrostatisches Feld
(Arbeit)
Im allgemeinen Falle, wenn die Kraft nicht konstant, sondern nach
Betrag und Richtung ortsabhängig ist, dann ist die Arbeit das
Wegintegral der Kraft:
r r
W = ∫ F ds
P2
P1
Merke:
• Die Arbeit ist eine skalare Größe!
• Das Integral zählt die durch die Kraft verrichtete Arbeit.
• Bewegt man den Körper gegen die Kraft, so wird die aufzuwendende
Arbeit aufgrund der Eigenschaften des Skalarprodukts negativ.
Folie 3-13
Elektrostatisches Feld
Arbeit im elektrischen Feld
Auf eine Punktladung Q wirkt in einem
äußeren, durch andere Ladungen
hervorgerufenen elektrischen Feld eine
(ortsabhängige) Kraft. Verschiebt man
P
die Punktladung gegen die Feldkraft von 1
einem Punkt P1 zu einem Punkt P2, so
beträgt die aufzuwendende Arbeit:
P2
P2
r r
r r
= ∫ F ⋅ ds = Q ∫ E ⋅ ds
P2
WP1 → P2
P1
P1
Verschiebt man die Punktladung auf einem anderen Weg von P2 wieder
zurück nach P1, so ist die aufzuwendende Arbeit
P1
r r
r r
= ∫ F ⋅ ds = Q ∫ E ⋅ ds
P1
WP2 → P1
P2
P2
Folie 3-14
Elektrostatisches Feld
Konservatives Feld (Energieerhaltung)
Im elektrischen Feld wechselt das Vorzeichen der Arbeit bei Umkehrung des
Weges (Vertauschung von Start- und Endpunkt), deshalb gilt:
WP1 → P2 → P1
⎛ P2 r r ⎞ ⎛ P1 r r ⎞
⎛ P2 r r P2 r r ⎞
= ⎜ Q ∫ E ⋅ ds ⎟ + ⎜ Q ∫ E ⋅ ds ⎟ = Q ⎜ ∫ E ⋅ ds − ∫ E ⋅ ds ⎟ = 0
⎜ P
⎟ ⎜ P
⎟
⎜P
⎟
P
1
⎝ 1
⎠ ⎝ 2
⎠
⎝ 1
⎠
Darüber hinaus ist die genaue Wahl des Weges für die Arbeit unerheblich, es
kommt lediglich auf den Start- und Endpunkt an. Deshalb gilt für jeden
beliebigen geschlossenen Weg von einem beliebigen Startpunkt zu sich selbst:
r r
∫ E ⋅ ds = 0
(Ein geschlossener Integrationsweg wird durch einen
Ring im Integralzeichen gekennzeichnet.)
Diese Eigenschaft bezeichnet man als Konservativität: auf einem „Rundweg“
wird weder Energie gewonnen noch verloren; vgl. Radfahren: die beim
Bergauffahren investierte Energie wird bei der Abfahrt wieder gewonnen,
wenn man von Reibungsverlusten absieht.
Folie 3-15
Elektrostatisches Feld
Elektrostatisches Potential
Jeder Punkt des Raumes in einem
(elektrostatischen) konservativen
Feld kann durch eine skalare
Größe charakterisiert werden,
die (elektrostatisches) Potential
genannt wird, so dass gilt:
P0
ϕ2
P2
ϕ1
P1
W12 = Q ⋅ (ϕ1 − ϕ 2 )
Das Potential ist auf einen Punkt P0 bezogen (Bezugspunkt). Der Bezugspunkt
und sein Potentialwert können frei gewählt werden, da sich nur durch Addition
eines konstanten Werts auf ϕ1 und ϕ2 auswirken und so wie oben auch im
Folgenden stets nur Potentialdifferenzen verwendet werden.
Übliche Vereinbarungen für den Bezugspunkte mit (P0)= 0:
• Erdoberfläche (Äquipotentialfläche, siehe Folie 3-18)
• "Masse" in Schaltungen, z.B. Minuspol der Batterie oder Gehäuse
• eine gedachte unendliche ferne Hülle
Folie 3-16
Elektrostatisches Feld
Berechnung des elektrostatischen Potentials
P0
W12 = W10 + W02
P1
P2
ϕ1
r r
r r
= Q ∫ E ⋅ ds + Q ∫ E ⋅ ds
P0
ϕ2
P2
P1
P0
⎛ P0 r r P0 r r ⎞
= Q⎜ ∫ E ⋅ ds − ∫ E ⋅ ds ⎟ ≡ Q ⋅ (ϕ1 − ϕ 2 )
⎜P
⎟
P2
⎝ 1
⎠
Es folgt: Das elektrostatische Potential (P) an einem Punkt P ist der Quotient
aus der Arbeit, die nötig ist, um eine Ladung Q von einem Punkt P0 mit dem
Bezugspotential (P0)=0 zum Punkt P zu bringen, und der Ladung Q:
Pi
r r
r r
W0i
ϕ i = ϕ ( Pi ) = ∫ E ⋅ ds = − ∫ E ⋅ ds = −
Q
Pi
P0
P0
Folie 3-17
Elektrostatisches Feld
Äquipotentialflächen
Auf Äquipotentialflächen ist
das Potential konstant. Bewegt
man Ladungen entlang dieser
Flächen, so ändert sich ihre
potentielle Energie nicht.
Die elektrischen Feldlinien
stehen senkrecht auf den
Äquipotentialflächen.
Äquipotentiallinien sind die
Schnittlinien der Äquipotentialflächen mit der Zeichenebene.
Zeichenkonvention:
Der Abstand zwischen jeweils
benachbarten Linien entspricht
einer festen Potentialdifferenz.
(Potential einer Punktladung Q:)
Q
1
⋅
ϕ (r) =
4πε 0 r
Folie 3-18
Elektrostatisches Feld
Elektrische Spannung
Die Potentialdifferenz zwischen zwei beliebigen Punkten P1 und P2 in einem
elektrischen Feld E wird als elektrische Spannung U bezeichnet.
r r
U12 = ϕ ( P1 ) − ϕ ( P2 ) = ∫ E ⋅ ds
P2
P1
Die Einheit der elektrischen Spannung ist das Volt: 1 V = 1 J/As = 1 kg m2/As3
(nach Alessandro Giuseppe Antonio Anastasio Graf von Volta, 1745–1827).
Die potentielle Energie, die eine Ladung Q im Punkt P1 gegenüber dem Punkt
P2 besitzt, ist gegeben durch das Produkt aus der Spannung zwischen P1 und
P2 und der Ladung Q:
W12 = Q ⋅ U12
Folie 3-19
Elektrostatisches Feld
Elektrisches Feld geladener Platten
Wenn der Abstand der
Platten klein ist im Vergleich
zu den Abmessungen der
Platten, ist das elektrische
Feld, wie in b) skizziert,
nahezu homogen, d.h. die
elektrische Feldstärke ist in
Betrag und Richtung überall
gleich. Außerdem ist das
Streufeld am Rande der Platten und im Außenraum vernachlässigbar klein.
gegeben:
A = Innenfläche einer Platte
Q = Ladung auf einer Platte
gesucht:
E = Feldstärke (Betrag des
homogenen elektrischen Feldes)
Folie 3-20
Elektrostatisches Feld
Elektrisches Feld geladener Platten
+
+ + + +
...
Die elektrische Feldstärke kann berechnet werden,
indem die Fläche der ebenen Platte als kleiner
Ausschnitt der Oberfläche einer sehr großen Kugel
(Radius r
∞) aufgefasst wird.
+
+
+
+
+
+
+
Plattenfläche A
+
Das Feld außerhalb einer Kugel mit gleichmäßig
auf A: Ladung Q
+
über die Oberfläche verteilter Ladung ist das
+
gleiche, als wäre die gesamte Ladung im
+
Mittelpunkt der Kugel konzentriert (Punktladung!).
+
Die äquivalente Mittelpunktladung ist:
+
+
2
...
Kugeloberfläche
4π r
QKugel = Q ⋅
es folgt:
A
= Q⋅
A
1 QKugel
1 Q ⋅ 4π r 2 1 Q
E=
=
=
2
2
4πε 0 r
4πε 0 A ⋅ r
ε0 A
Folie 3-21
Elektrostatisches Feld
Spannung zwischen geladenen Platten
Da das Feld homogen ist, berechnet sich die Spannung zu:
r r d
∫ E ⋅ ds = ∫ Edx = Ed
rechte Platte
U=
linke Platte
Mit
1 Q
E=
ε0 A
0
ergibt sich
1 d
U=
Q
ε0 A
Die Spannung U ist also nur von den geometrischen Abmessungen (Fläche A
und Plattenabstand d) sowie der Ladung Q abhängig.
Folie 3-22
Elektrostatisches Feld
Influenz
In das homogene Feld zwischen den beiden
Platten bringen wir einen aus zwei dünnen
leitenden Scheiben bestehenden ungeladenen
Körper.
Auf die Ladungsträger in den Scheiben werden
infolge des elektrischen Feldes Kräfte ausgeübt.
Die freien Elektronen werden zur positiven
Platte hin angezogen, auf der gegenüberliegenden Seite entsteht ein entsprechender
Elektronenmangel. Man spricht von
influenzierten Ladungen.
(Nachweisbar durch getrenntes Herausnehmen
der Scheiben und Messung der Ladungen).
Das elektrische Feld der influenzierten Ladungen kompensiert das äußere
Feld im Innern des Leiters. Der Leiter ist im Innern feldfrei.
Folie 3-23
Elektrostatisches Feld
Nichtleitende Materie im elektrischen Feld
Bringt man ein nichtleitendes homogenes Material (ein Dielektrikum) in ein
elektrisches Feld ein, so wird die elektrische Feldstärke geschwächt.
Im Versuch mit den geladenen Platten sinkt bei gleichbleibender Ladung die
Spannung zwischen den Platten ab.
Vakuum
Nichtleiter
Leiter
Folie 3-24
Elektrostatisches Feld
Dielektrische Polarisation
Die Ursache für dieses Verhalten liegt im inneren Aufbau des isolierenden
Materials. Im Gegensatz zu einem Leiter sind die Elektronen zwar nicht frei
beweglich, dennoch tritt eine Ladungsverschiebung innerhalb der atomaren
Strukturen auf. Infolge des von außen angelegten elektrischen Feldes wirken
Kräfte auf die Ladungsträger, die dazu führen, dass Atome bzw. Moleküle in
der einen Richtung negativ und in der entgegengesetzten Richtung positiv
polarisiert werden.
Die Ursachen für die Polarisation sind vielfältig.
Ein Beispiel: Verschiebungspolarisation, Elektronenpolarisation
Folie 3-25
Elektrostatisches Feld
Nichtleitende Materie im elektrischen Feld
1 Q
E=
ε0 A
im Vakuum
1 Q
E=
,εr > 1
ε 0ε r A
im Dielektrikum
E=0
im Leiter
Folie 3-26
Elektrostatisches Feld
Dielektrizitätszahl
Stoff
r
für verschiedene Materialien
r
Stoff
r
Trockene Luft
1,000594
Polyäthylen
2,3
Bariumtitanat
1000 ... 4000
Polystyrol
2,3 ... 2,7
Bernstein
2,8
Porzellan
6,0 ... 8,0
Gummi
2,6
Quarz
3,5 ... 4,5
Hartpapier
5,0 ... 6,0
Quarzglas
4
Papier
1,2 ... 3,0
Destilliertes Wasser
81
Folie 3-27
Elektrostatisches Feld
Kapazität
Wir haben bereits beim Plattenkondensator gesehen, dass die elektrische
Spannung U zwischen den Platten der gespeicherten Ladung ±Q
proportional ist. Diese Proportionalität gilt unabhängig von der Geometrie
der Anordnung.
Q~U
Q = CU
Unter der Kapazität C versteht man das Verhältnis aus der aufgenommenen
Ladung Q zu der angelegten Spannung U. Sie ist ein Maß für die Fähigkeit
eines Körpers, Ladungen zu speichern.
Die Einheit der Kapazität ist das Farad: 1 F = 1 As/V = 1 C/V.
(Nach Michael Faraday, 1791-1867).
Kondensatoren sind Bauelemente zur Ladungsspeicherung mit definierter
Kapazität C.
Schaltsymbol des Kondensators:
Folie 3-28
Elektrostatisches Feld
Kapazität des Plattenkondensators
U=
1 d
Q
ε 0ε r A
A⎞
⎛
Q = ⎜ ε 0ε r ⎟U
d⎠
⎝
Die Kapazität des Plattenkondensators berechnet
sich zu
A
A
C = ε 0ε r = ε
d
d
Die Kapazität des (idealen) Plattenkondensators hängt also nur von der
Fläche der Platten, dem Abstand der Platten und von den Materialeigenschaften ab, nicht aber von der auf den Platten befindlichen
Ladung.
Folie 3-29
Elektrostatisches Feld
Parallelschaltung von Kondensatoren
Alle oberen und alle unteren Kondensatorplatten liegen jeweils auf gleichem
Potential, d.h., die Spannung U ist für alle Kondensatoren gleich. Für den
Gesamtkondensator (Ersatzschaltbild) muss Qges = CgesU gelten.
n
n
n
k =1
k =1
k =1
Qges = ∑ Qk = ∑ CkU = U ∑ Ck = U Cges
n
Cges = ∑ Ck
k =1
Folie 3-30
Elektrostatisches Feld
Reihenschaltung von Kondensatoren
Die gesamte an den Eingangsanschlüssen vorhandene Spannung
(Potentialdifferenz) Uges setzt sich als Summe der Teilspannungen über den
einzelnen Kondensatoren zusammen. Bringt man auf die beiden äußeren, mit
den Anschlussklemmen verbundenen, Platten eine Ladung ±Q, dann werden
auf allen inneren Kondensatoren ebenfalls Ladungen ±Q influenziert.
n
Q
1
1
= ∑U k = ∑
= Q∑
=Q
Cges
k =1 Ck
k =1 Ck
k =1
n
U ges
n
n
1
1
=∑
Cges k =1 Ck
Folie 3-31
Elektrostatisches Feld
Praktische Ausführungsformen von Kondensatoren
Vielschichtkondensator
Die Schichten wirken wie eine Parallelschaltung von Kondensatoren.
Besteht jeder Kondensatoranschluss aus n Platten, dann sind 2n-1
Kondensatoren parallel geschaltet.
Folie 3-32
Elektrostatisches Feld
(Praktische Ausführungsformen von Kondensatoren)
Drehkondensator
In Abhängigkeit von der
Rotorposition ändert sich
die überdeckte Fläche und
damit auch die Kapazität.
Wickelkondensator
Zwei Metallfolien,
dazwischen zwei Kunststofffolien. Durch das Aufwickeln
tragen beide Seiten der
Metallfolie zur Kapazität bei.
Folie 3-33
Elektrostatisches Feld
Im Kondensator gespeicherte Energie
Die in einem Kondensator gespeicherte elektrische Energie ist proportional
zum Produkt aus der Kapazität C und dem Quadrat der angelegten
Spannung U.
1
1
2
We = CU = QU
2
2
Diese Beziehung ist unabhängig von der speziellen Geometrie des
Kondensators. (Alle geometrischen Einflüsse sind in der Kapazität C
berücksichtigt).
Bemerkung: W = Q ·U gilt nur, wenn die Spannung konstant ist. Wird
elektrische Arbeit verrichtet, sinkt die Spannung durch Entladung
(dies wird im folgenden Abschnitt behandelt).
Folie 3-34
Technische Informatik I
Prof. Dr. Martin Radetzki
Universität Stuttgart
Kapitel 4
Elektrischer Strom
und elektrische Netzwerke
Folie 4-1
Elektrischer Strom und elektrische Netzwerke
Elektrischer Strom
Elektrode 1
+Q
1
r
E
Elektrode 2
-Q
2<
1
Zwischen zwei Elektroden mit den Ladungen +Q und –Q besteht ein
elektrisches Feld. Die Elektrode 1 liegt auf dem Potential 1, die Elektrode 2
liegt auf dem Potential 2. Zwischen den Elektroden besteht demnach die
Spannung U12 = 1– 2.
Folie 4-2
Elektrischer Strom und elektrische Netzwerke
(Elektrischer Strom)
Elektrode 1
I
+Q
Verbindet man die Elektroden durch eine
leitende Verbindung, in der sich die
Elektronen frei bewegen können, so findet
ein Ladungsausgleich statt, und zwar
solange, bis zwischen den Elektroden keine
Spannung mehr vorhanden ist.
Elektrode 2
-Q
Die Bewegung der Ladungsträger bezeichnet man als elektrischen Strom.
Definition der Stromrichtung:
Ein positiver Strom fließt von der Elektrode höheren Potentials zur Elektrode
niedrigeren Potentials (technische Stromrichtung).
Die Elektronen bewegen sich entgegengesetzt zur technischen Stromrichtung!
Folie 4-3
Elektrischer Strom und elektrische Netzwerke
Elektrische Stromstärke
Die elektrische Stromstärke ist die Ladungsmenge Q, die in einer Zeitspanne
t durch die leitende Verbindung von der Elektrode 1 zur Elektrode 2 fließt.
ΔQ
I=
Δt
Die elektrische Stromstärke ist eine SI-Basiseinheit. Ihre Einheit ist das
Ampere (nach André Marie Ampère, 1775 – 1836).
SI-Basiseinheit der Stromstärke: [I] = A = Ampere
Wenn die Stromstärke zeitlich nicht konstant ist, dann gibt obige Beziehung
lediglich die mittlere Stromstärke während des Zeitabschnittes t an. Die
momentane Stromstärke zu einem Zeitpunkt t erhält man als
Δ Q dQ
=
I (t ) = lim
Δt →0 Δt
dt
Folie 4-4
Elektrischer Strom und elektrische Netzwerke
Ladungsträgerbewegung im Leiter
Bei Metallen sind die Elektronen auf der äußersten Schale nur sehr schwach
gebunden. Sie können sich quasi frei innerhalb des Atomverbandes bewegen.
Ohne äußere Einflüsse bewegen sich die Atome ungeordnet mit gleicher
Wahrscheinlichkeit in alle Richtungen. Der Mittelwert über alle Bewegungen
ist Null, das heißt, ein elektrischer Strom ist nicht feststellbar.
Folie 4-5
Elektrischer Strom und elektrische Netzwerke
(Ladungsträgerbewegung im Leiter)
In einem elektrischen Feld
erfahren die Elektronen
eine Kraft und damit eine
permanente Beschleunigung entgegengesetzt zum
Feldstärkevektor. Ihre
Bewegung wird immer
wieder durch Stöße mit den
ortsfesten Atomen und an
den Unregelmäßigkeiten im
Gitteraufbau unterbrochen.
An den Stoßstellen werden die Elektronen gestreut, d.h., sie werden
abgebremst und ändern ihre Richtung, wobei sie kinetische Energie verlieren.
Im Mittel erlangen sie aber durch das elektrische Feld eine mittlere
r
Driftgeschwindigkeit:
r
v e = − μe E µe: Beweglichkeit der Elektronen
Folie 4-6
Elektrischer Strom und elektrische Netzwerke
Stromdichte
Wir betrachten einen Ausschnitt
aus einem stromführenden Leiter.
Der Leiterquerschnitt habe die
Fläche A. Im Leiter befinden
sich positive Ladungsträger mit
einer Driftgeschwindigkeit vx in xRichtung.
Die Stromdichte J gibt den Strom bezogen auf die
durchströmte Fläche an. Sie hat die Einheit A/m2:
Die Raumladungsdichte gibt die pro Volumenelement zum Ladungstransport zur Verfügung stehende
Ladung an. Sie hat die Einheit As/m3.
J=
ΔQ
ΔI
ΔQ Δx
=
=
⋅
= ρ v , vektoriell:
ΔA ΔAΔt ΔAΔx Δt
ΔI
J=
ΔA
ΔQ
ρ=
ΔV
r
r
J = ρv
Folie 4-7
Elektrischer Strom und elektrische Netzwerke
Ohm'sches Gesetz in differentieller Form
Bezeichnen wir mit n die Anzahl der freien Ladungsträger pro Volumen
(Ladungsträgerkonzentration), dann lässt sich die zum Ladungstransport
zur Verfügung stehende Raumladungsdichte ausdrücken als
ρ = − en
r
r
r
r
Mit v e = − μe E und J = ρ v ergibt sich für die Stromdichte:
r
r
r
J = neμe E = κ E
Die Größe heißt
spezifische Leitfähigkeit
und hat die Einheit
[
J ] A/m
[κ ] = =
[E ] V/m
1
=
m
ACHTUNG:
und
2
ρR =
R
1
κ
Ohm'sches Gesetz in
differentieller Form
Der Kehrwert von heißt
spezifischer Widerstand
und hat die Einheit
[ρ ] = [E ] = V/m2
[J ] A/m
= m
sind grundverschiedene Größen!
Folie 4-8
R
Elektrischer Strom und elektrische Netzwerke
Temperaturabhängigkeit des spezifischen Widerstands
Der spezifische Widerstand ist im Allgemeinen temperaturabhängig. Für die
meisten technischen Anwendungen kann man die Temperaturabhängigkeit
durch eine lineare Näherung hinreichend genau beschreiben.
ρ R (T ) = ρ R (20°C) ⋅ [1 + α (T − 20°C)]
kurz:
ρ R (T ) = ρ R (20°C) ⋅ [1 + α ΔT ]
Ursache für die Temperaturabhängigkeit:
Bei höherer Temperatur schwingen die Atome im Gitter stärker; die Wahrscheinlichkeit, dass Elektronen mit Atomen zusammenstoßen, steigt. Daher ist
bei allen reinen Metallen der Temperaturkoeffizient positiv und liegt in etwa
derselben Größenordnung. Bei Legierungen dominiert der Effekt, dass Elektronen am unregelmäßigen Gitteraufbau gestreut werden. Der spezifische Widerstand von Legierungen ist daher grundsätzlich größer. Die Bewegungen der
Gitteratome spielen bei Legierungen für die Streuung der Elektronen kaum eine
Rolle, so dass der Temperaturkoeffizient deutlich geringer ist.
Folie 4-9
Elektrischer Strom und elektrische Netzwerke
Leitfähigkeit, Widerstand und Temperaturkoeffizient
verschiedener Materialien bei 20°C
Leiter
Aluminium
Chromnickel
· m-1 mm2
35
0,91
R
·m
-1mm-2
· 103 K
0,0287
3,8
1,1
0,2
Eisen
10
0,10
6,1
Gold
44
0,022
3,9
Graphit
0,125
8
-0,2
Konstantan*)
2
0,5
0,0035
Manganin*)
2,3
0,43
0,02
Kupfer
56
0,0178
3,9
Messing
12,5
0,08
1,5
Silber
62,5
0,016
3,8
Wolfram
18
0,055
4,1
*) Konstantan:
Manganin:
Legierung aus 54% Cu, 45%Ni, 1% Mn
Legierung aus 84% Cu, 4% Ni, 12% Mn
Folie 4-10
Elektrischer Strom und elektrische Netzwerke
Strom und Spannung an einem stromdurchflossenen Leiter
r r
E, J
Für die Spannung gilt:
r r
U = ϕ 1 − ϕ 2 = ∫ E ds = E ⋅ l
U
Mit
I
E = J = ρR J = ρR
κ
A
1
l
U = ρR I
A
ergibt sich
Ohm'sches Gesetz in
integraler Form!
l
R = ρR
A
Folie 4-11
Elektrischer Strom und elektrische Netzwerke
Ohm'sches Gesetz in integraler Form
Das Ohm'sche Gesetz (nach Georg Simon Ohm, 1789 – 1854) beschreibt eine
empirische Erfahrung:
Die an einem Leiter anliegende Spannung ist der durch den Leiter fließenden
Stromstärke proportional.
U
U = R⋅I
R
I
(Schaltsymbol eines el. Widerstandes)
Der Proportionalitätsfaktor R heißt elektrischer Widerstand.
Er hat die Einheit [R] = V/A = = Ohm.
In vielen Fällen bietet es sich an, dass man nicht den
Widerstand, sondern seinen Kehrwert G = 1/R verwendet.
G heißt elektrischer Leitwert und besitzt die Einheit 1/
= A/V.
1
G=
R
Folie 4-12
Elektrischer Strom und elektrische Netzwerke
(Ohm'sches Gesetz in integraler Form)
Temperaturabhängigkeit des elektrischen Widerstands:
R(T ) = ρ R ( 20°C) ⋅
l
⋅ [1 + α (T − 20°C)]
A
R(T ) = R( 20°C) ⋅ [1 + α (T − 20°C)]
Bsp.:
Ein Kupferdraht habe bei 20°C
einen Widerstand von 1 . Wie
groß ist sein Widerstand bei
100°C?
1
⎡
⎤
R(100°C) = R( 20°C) ⋅ ⎢1 + 3,9 3 ⋅ 80K ⎥ ≈ 1,31Ω
10 K
⎣
⎦
Folie 4-13
Elektrischer Strom und elektrische Netzwerke
Leistung des elektrischen Stroms
Beim Transport von Ladung durch einen Leiter infolge eines elektrischen
Feldes wird an den Ladungsträgern Arbeit verrichtet. Diese Energie wird dem
Energieinhalt des elektrischen Feldes entnommen und im Leiter als
Wärmeenergie umgesetzt.
Die Leistung gibt die verrichtete Arbeit pro
Zeiteinheit an.
Sie hat die Einheit [P] = VA = Watt (W)
(nach James Watt, 1736 – 1819).
ΔW dW
=
P(t ) = lim
Δt →0 Δt
dt
Für einen elektrischen Widerstand R gilt:
U
1
R
I
2<
1
2
U
P = UI = I 2 R =
R
Folie 4-14
Elektrischer Strom und elektrische Netzwerke
Festwiderstände - Bauformen
Folie 4-15
Elektrischer Strom und elektrische Netzwerke
Weitere Widerstandsformen
Einstellbare Widerstände (Potentiometer):
Ein Schleifkontakt wird über das nicht isolierte Widerstandsmaterial
bewegt, und damit ein bestimmter Bruchteil des insgesamt möglichen
Widerstands abgegriffen.
Bauformen:
• Schiebewiderstand (linear angeordneter Widerstandskörper)
• Drehwiderstand (ringförmig angeordneter Widerstandskörper)
Temperaturabhängige Widerstände
• NTC (negative temperature coefficient), oder Heißleiter: er hat bei
Raumtemperatur einen hohen Widerstand, im Betrieb erhitzt er sich und
hat einen niedrigen Widerstand. (Verwendung beispielsweise zur
Begrenzung von Einschaltströmen).
• PTC (positive temperature coefficient), oder Kaltleiter:
Temperaturverhalten genau umgekehrt wie beim NTC.
Folie 4-16
Elektrischer Strom und elektrische Netzwerke
Elektrische Netzwerke
Zur Beschreibung elektronischer Schaltungen verwendet man elektrische
Netzwerke. Man verwendet für die elektronischen Bauelemente einfache
Modelle (Ersatzschaltbilder), in denen das Verhalten der realen Bauelemente
durch integrale Größen wie z. B. Widerstand R und Kapazität C modelliert
werden.
Ein zentraler Begriff bei der Behandlung von Netzwerken ist der des
Zweipols. Unter einem Zweipol versteht man ein Bauelement mit zwei
Anschlussklemmen. Aus Sicht des Netzwerkes spielt nur noch das
Klemmenverhalten (d. h. der Zusammenhang zwischen Strom und
Spannung) am betreffenden Bauelement eine Rolle.
Zur vollständigen Beschreibung eines elektrischen Netzwerkes (Schaltkreis)
kommt zum Klemmenverhalten der einzelnen Bauelemente auch ihre
Verknüpfung hinzu (Schaltungstopologie).
Folie 4-17
Elektrischer Strom und elektrische Netzwerke
Schaltbilder
Die grafische Darstellung von Netzwerken bezeichnet man als Schaltbilder.
Zur Darstellung der Bauelemente werden Schaltsymbole verwendet. Die
leitenden Verbindungen zwischen den Bauelementen werden als ideale, d.h.
widerstandslose, Leiter angesehen und spielen bei der Rechnung keine Rolle.
Kreuzen sich Verbindungslinien, so
gelten sie nur als verbunden, wenn dies
durch einen Punkt ("Lötpunkt")
markiert ist. Diese Verbindungspunkte
heißen Knoten des Netzwerkes. Die
Bauelemente zwischen den Knoten
stellen zusammen mit ihren leitenden
Verbindungen Zweige des Netzwerks
dar.
Folie 4-18
Elektrischer Strom und elektrische Netzwerke
Zählpfeile
Strom und Spannung sind skalare Größen. Dennoch werden ihnen in
Schaltungen Pfeile zugeordnet. Diese Pfeile dienen der Zählweise und dürfen
nicht mit Vektoren verwechselt werden.
Ein Spannungspfeil in Richtung der elektrischen Feldstärke zeigt positive
Spannungen an. Er zeigt von einem Punkt höheren Potentials zu einem Punkt
niedrigeren Potentials.
Ein Strompfeil in Bewegungsrichtung der positiven Ladungsträger zeigt
positive Ströme an. Er wird in die Verbindungslinie eingezeichnet, die den
Strom führt.
U
1
R
I
2
<
1
für U > 0
Folie 4-19
Elektrischer Strom und elektrische Netzwerke
Spannungs- und Stromquellen
Ein Kondensator produziert nur solange einen Strom, bis seine gesamte
Ladung abgeflossen ist. Als Gleichstromquelle ist er nicht geeignet.
Eine Gleichstromquelle muss die von den Platten abfließenden Ladungen
immer wieder nachliefern.
Folie 4-20
Elektrischer Strom und elektrische Netzwerke
Ideale Spannungs- und Stromquellen
I
U
Gleichspannung
i(t)
u(t)
Gleichstrom
zeitlich veränderliche Spannung
zeitlich veränderlicher Strom
Bei einer idealen Spannungsquelle hängt die Ausgangsspannung nicht vom
angeschlossenen Netzwerk ab, (sondern nur der gelieferte Strom).
Bei einer idealen Stromquelle hängt der Ausgangsstrom nicht vom
angeschlossenen Netzwerk ab, (sondern nur die gelieferte Spannung).
Folie 4-21
Elektrischer Strom und elektrische Netzwerke
Zählpfeilsysteme
An Verbrauchern werden Strom und Spannung in der gleichen Richtung
gezählt (Verbraucherzählpfeilsystem).
An Spannungs- und Stromquellen sind Spannung und Strom entgegengesetzt
gerichtet (Generatorzählpfeilsystem).
Hintergrund: Quellen liefern Energie, Verbraucher nehmen sie auf.
Folie 4-22
Elektrischer Strom und elektrische Netzwerke
Netzwerkanalyse
Ziel der Netzwerkanalyse ist die Berechnung aller Ströme und Spannungen
an den einzelnen Bauelementen.
Bsp.: Wie groß sind die Spannungen an den Widerständen R1 bis R5 und wie
groß sind die Ströme durch die Widerstände? Wie groß ist der Strom, den die
Gleichspannungsquelle liefert?
Das Ohm'sche Gesetz alleine reicht für die Beantwortung dieser Fragen nicht
aus.
Folie 4-23
Elektrischer Strom und elektrische Netzwerke
Kirchhoff'sche Gleichungen
Maschenregel
r r
∫ E ⋅ ds = 0
⇒ U R1 + U R 3 − U R 4 = 0
∑U = 0
Masche
Die Summe aller Spannungen beim Umlauf in einer
geschlossenen Masche ist Null.
Spannungen, deren Zählpfeil dabei entgegen der
Umlaufrichtung verläuft, werden negativ gezählt.
Folie 4-24
Elektrischer Strom und elektrische Netzwerke
Kirchhoff'sche Gleichungen: Knotenregel
Knotenregel
Ein Schaltungsknoten
hat keine Kapazität.
Alle Ladung, die in ihn
hineinfließt, muss auch
wieder aus ihm
herausfließen.
⇒
I R1 − I R 3 − I R 5 = 0
∑I = 0
Knoten
Die Summe aller in einen Knoten hineinfließenden
Ströme ist Null.
Ströme, deren Zählrichtung vom Knoten wegzeigt,
werden dabei negativ gezählt.
Folie 4-25
Elektrischer Strom und elektrische Netzwerke
Reihenschaltung von Widerständen
Alle Widerstände werden vom selben Strom
durchflossen. Anwendung der Maschenregel
liefert:
n
n
U ges = ∑U k =∑ Rk I = Rges I
k =1
k =1
n
Rges = ∑ Rk
k =1
n
1
1
=∑
Gges k =1 Gk
Folie 4-26
Elektrischer Strom und elektrische Netzwerke
Parallelschaltung von Widerständen
An allen Widerständen liegt dieselbe Spannung.
Anwendung der Knotenregel liefert:
n
I ges
n
U
U
= ∑ I k =∑
=
Rges
k =1
k =1 Rk
n
1
1
=∑
Rges k =1 Rk
n
Gges = ∑ Gk
k =1
Folie 4-27
Elektrischer Strom und elektrische Netzwerke
Spannungsteiler
Mit einer Reihenschaltung
von Widerständen kann man
eine gegebene Spannung U
mit hoher Genauigkeit in
kleinere Teilspannungen
aufteilen.
Es gilt:
U1 R1
=
U 2 R2
und
U2
R2
=
U
R1 + R2
Folie 4-28
Elektrischer Strom und elektrische Netzwerke
Spannungsabfall am Widerstand
Die an einem Widerstand entstehende Teilspannung wird als Spannungsabfall
bezeichnet.
Bsp.: Potentialverlauf an einer Reihenschaltung. Definiert man das
Bezugspotential = 0 für die rechte Klemme (Minuspol der Spannungsquelle),
dann besitzt die linke Klemme das Potential = U. Innerhalb der Widerstände
nimmt das Potential linear ab.
Folie 4-29
Elektrischer Strom und elektrische Netzwerke
Belasteter Spannungsteiler
Schließt man an den
Spannungsteiler einen
Verbraucher an, zum
Beispiel ein Spannungsmessgerät (Voltmeter), so
entspricht der gemessene
Wert nicht mehr dem oben
berechneten, d.h.
U2
R2
≠
U
R1 + R2
In die Berechnung muss noch der Widerstand des Verbrauchers (hier
der Innenwiderstand des Messgerätes) berücksichtigt werden.
Im Beispiel:
U2
R2 ⋅ RM
=
U
R1 (R2 + RM ) + R2 ⋅ RM
Folie 4-30
Elektrischer Strom und elektrische Netzwerke
(Belasteter Spannungsteiler)
U2
R2 ⋅ RM
=
U
R1 (R2 + RM ) + R2 ⋅ RM
Auswertung des Beispiels
für (R1+R2) = 10 k ,
0 ≤ R2 ≤ 10 k
und
verschiedene Werte von RM.
Man sieht: mit kleinerem Innenwiderstand RM geht die Linearität
zwischen der Potentiometerstellung und der Ausgangsspannung verloren.
Folie 4-31
Elektrischer Strom und elektrische Netzwerke
Stromteiler
Mit einer Parallelschaltung von
Widerständen kann ein
Gesamtstrom I in mehrere
Teilströme aufgeteilt werden.
Es gilt:
I1 R2 G1
=
=
I 2 R1 G2
und
I2
R1
G2
=
=
I
R1 + R2 G1 + G2
Folie 4-32
Elektrischer Strom und elektrische Netzwerke
Reale Spannungsquelle - Ersatzschaltbild
Wird eine reale Spannungsquelle durch
einen Verbraucher belastet, dann ruft
der Strom einen Spannungsabfall und
damit interne Verluste hervor. Man
modelliert dies durch einen mit der
Quellenspannung U0 in Reihe
liegenden Innenwiderstand Ri.
Man kann die Quelle vollständig
charakterisieren durch ihre Leerlaufspannung und ihren Kurzschlussstrom:
Leerlaufspannung:
U = UL = U0
Kurzschlussstrom:
IK = U0 / Ri
Im Kurzschlussbetrieb werden beide Klemmen leitend verbunden. Die
gesamte Leistung wird dann am Innenwiderstand umgesetzt!
Folie 4-33
Elektrischer Strom und elektrische Netzwerke
Reale Stromquelle - Ersatzschaltbild
Wird eine reale Stromquelle durch
einen Verbraucher belastet, dann ruft
die Spannung über dem Verbraucher
eine Reduzierung des Stroms und
damit interne Verluste hervor. Man
modelliert dies durch einen parallel
zum Quellenstrom I0 liegenden
Innenwiderstand Ri.
Man kann die Quelle vollständig
charakterisieren durch ihre Leerlaufspannung und ihren Kurzschlussstrom:
Leerlaufspannung:
UL = I0 Ri
Kurzschlussstrom:
I = IK = I0
Im Leerlaufbetrieb ist kein Verbraucher angeschlossen. Die gesamte
Leistung wird dann am Innenwiderstand umgesetzt!
Folie 4-34
Elektrischer Strom und elektrische Netzwerke
Äquivalente Quellen
Spannungs- und Stromquelle können ineinander umgerechnet werden. Dazu
muss sichergestellt werden, dass beide Quellen die gleiche Leerlaufspannung
und den gleichen Kurzschlussstrom aufweisen. Beide Forderungen sind
erfüllt, wenn für Quellenspannung und Quellenstrom gilt:
U0 = I0 Ri
Folie 4-35
Elektrischer Strom und elektrische Netzwerke
Überlagerungsprinzip
Enthält eine Schaltung mehrere Quellen, dann können die Ströme und
Spannungen in den einzelnen Zweigen durch Überlagerung von
Teillösungen berechnet werden. Voraussetzung: lineare Beziehungen
zwischen Strom und Spannung an den Netzwerkelementen.
Berechnung von Teillösungen:
• nur eine einzige Quelle wird betrachtet
• alle anderen Stromquellen werden durch Leerlauf ersetzt (I = 0)
• alle anderen Spannungsquellen werden durch Kurzschluss ersetzt (U = 0)
Berechnung der Gesamtlösung aus den Teillösungen:
• alle Teilströme eines Zweiges werden addiert
• alle Teilspannungen eines Zweiges werden addiert
Folie 4-36
Elektrischer Strom und elektrische Netzwerke
(Überlagerungsprinzip) Beispiel
Bsp.:
Wie groß ist der Strom I2 durch R2?
Folie 4-37
Elektrischer Strom und elektrische Netzwerke
(Überlagerungsprinzip Beispiel)
Teillösung a)
Setze I0 = 0,
d.h., ersetze die Stromquelle
durch Leerlauf.
U0
I 2a =
R1 + R2
Teillösung b)
Setze U0 = 0,
d.h., ersetze die Spannungsquelle
durch Kurzschluss.
R1 I 0
I 2b =
R1 + R2
Folie 4-38
Elektrischer Strom und elektrische Netzwerke
(Überlagerungsprinzip Beispiel)
Zusammengesetzte Gesamtlösung:
U 0 + R1 I 0
I 2 = I 2a + I 2b =
R1 + R2
Folie 4-39
Elektrischer Strom und elektrische Netzwerke
Aufladung eines Kondensators
R
t=0
i(t)
U0
u(t)
Für die Ladung q(t) am Kondensator gilt:
Mit
i (t ) =
Der Kondensator sei
zunächst ungeladen. Zum
Zeitpunkt t=0 werde der
Schalter geschlossen.
dq
dt
folgt daraus:
Anwendung der Maschenregel:
und damit die Differentialgleichung:
C
Gesucht:
Das zeitliche Verhalten der
Spannung u(t) und des
Stromes i(t) in der
gezeigten Schaltung.
q(t ) = Cu(t )
du
dt
Ri (t ) + u(t ) = U 0
i (t ) = C
du
RC
+ u(t ) = U 0
dt
Folie 4-40
Elektrischer Strom und elektrische Netzwerke
(Aufladung eines Kondensators)
du
+ u(t ) = U 0
dt
Lineare inhomogene Differentialgleichung:
RC
Zugehörige homogene Differentialgleichung:
du
RC
+ u (t ) = 0
dt
Lösungsansatz (z.B. durch Separation der Variablen):
u(t ) = K ⋅ e
−
t
RC
Dabei ist K eine aus den Randbedingungen
noch zu bestimmende Konstante.
Eine offensichtliche spezielle Lösung der inhomogenen
Differentialgleichung ist:
u(t ) = U 0
Damit ergeben sich alle Lösungen zu
u(t ) = K ⋅ e
−
t
RC
+ U0
Folie 4-41
Elektrischer Strom und elektrische Netzwerke
(Aufladung eines Kondensators)
Bestimmung der Konstanten K aus den Randbedingungen:
Zum Zeitpunkt t=0 wird der Schalter geschlossen. Der Kondensator soll zu
diesem Zeitpunkt noch ungeladen sein, d.h. u(0) = 0.
Einsetzen in u(t ) = K ⋅ e
−
t
RC
+ U0
ergibt K = – U0
Damit ergibt sich für die Spannung am Kondensator:
t
−
⎛
⎞
RC ⎟
⎜
u (t ) = U 0 ⎜1 − e ⎟
⎝
⎠
du
Für den Strom i(t) erhält man aus i (t ) = C
dt
t
U 0 − RC
U0
e
i (t ) =
Anfangsstrom: i (0) =
R
R
Folie 4-42
Elektrischer Strom und elektrische Netzwerke
(Aufladung eines Kondensators)
u(t)
U0
t
−
⎛
⎞
RC
u(t ) = U 0 ⎜⎜1 − e ⎟⎟
⎝
⎠
63% ·U0
U0
t
t
du U 0 − RC
=
e
dt RC
=RC
i(t)
U0
R
t
Die Zeitkonstante = RC ist ein Maß dafür, wie schnell die Kondensatorspannung ihren Endwert erreicht. Nach t = 1 erreicht sie ca. 63% ihres
Endwertes; nach t = 3 sind es bereits ca. 95%.
Folie 4-43
Technische Informatik I
Prof. Dr. Martin Radetzki
Universität Stuttgart
Kapitel 6
Halbleiterbauelemente
Folie 7-1
Halbleiterbauelemente
Mikroelektronik – 1970 bis heute
Keine andere Technologie macht eine so rasante Entwicklung durch wie die
Mikroelektronik – und das seit vielen Jahrzehnten!
Intel 1101 256-bit SRAM
Intel 4004 4-bit-Mikroprozessor
(1971, ca. 2500 Transistoren, ca.
100kHz, 30mm2, 4 Designer)
Folie 6-2
Halbleiterbauelemente
Prozessortechnologie 2007: Beispiel
2006: AMD Athlon-64-FX, ca. 3 000 000 kHz Taktfrequenz,
ca. 227 400 000 Transistoren, ca. 230 mm² Chipfläche.
Folie 6-3
Halbleiterbauelemente
Batch production
Auf einer Silizium-Scheibe (engl. wafer) kann eine Vielzahl von
Kopien einer Schaltung gleichzeitig hergestellt werden.
Folie 6-4
Halbleiterbauelemente
In 2003 überstieg die Zahl der jährlich produzierten Transistoren weltweit die
Marke von einer Trillion (1018) Transistoren. Damit werden im Schnitt für
jeden Menschen auf der Erde jährlich 100 Millionen Transistoren produziert.
Umsätze in der Mikroelektronik - global
(Milliarden US$)
200
150
100
50
0
1982
1984
1986
1988
1990
1992
1994
1996
1998
2000
2002
Jahr
Folie 6-5
Halbleiterbauelemente
Moore's Gesetz - Transistorzahlen
Die Anzahl der Transistoren pro CPU-Typ verdoppelt sich etwa alle 26 Monate.
Quelle: http://www.intel.com/technology/mooreslaw/
Folie 6-6
Halbleiterbauelemente
Moore's Gesetz - Taktfrequenzen
CPU-Taktfrequenzen verdoppeln sich ca. alle 34 Monate.
10,000
4004
1,000
8008
Taktfrequenz (MHz)
8080
8086
100
80286
Intel386
Intel486
10
Pentium
Pentium Pro/II/III
Pentium 4
1
1970
1975
1980
1985
1990
1995
2000
2005
Jahr
Die Transistoren werden kleiner; dadurch werden sie auch schneller,
verbrauchen weniger Energie und kosten weniger pro Stück.
Folie 6-7
Halbleiterbauelemente
Grade der Integration
Man klassifiziert integrierte Schaltungen nach dem Grad ihrer Integration,
d.h. nach der Größenordnung, in der sich die Anzahl ihrer Gatter bewegen.
Small Scale Integration
SSI
~ 10 Gatter
z.B. 7404 InverterBaustein
Medium Scale Integration
MSI
~ 1000 Gatter
z.B. 74161 ZählerBaustein
Large Scale Integration
LSI
~10.000 Gatter
z.B. einfacher 8-bitMikroprozessor
Very Large Scale
Integration
VLSI > 10.000 Gatter z.B. heutige
Prozessoren,
Systems-on-Chip
Folie 6-8
Halbleiterbauelemente
Leiter – Halbleiter - Nichtleiter
Leiter
Halbleiter
Nichtleiter (Isolatoren)
Wir betrachten im weiteren Verlauf das Element Silizium. Es ist
wirtschaftlich das bedeutendste Halbleitermaterial. Die physikalischen
Zusammenhänge sind mit nur geringen Modifikationen auf andere
Halbleitermaterialien übertragbar.
Folie 6-9
Halbleiterbauelemente
Modell des Siliziumatoms
Die erste Schale hat 2 Elektronen, die zweite 8 und die dritte ("Valenzschale")
hat 4 Elektronen (Valenzelektronen). Sie ist nicht vollständig aufgefüllt, da sie
bis zu 8 Elektronen aufnehmen kann.
Folie 6-10
Halbleiterbauelemente
Kovalente Bindung im Siliziumkristall
Jedes Siliziumatom teilt sich mit seinen vier Nachbarn je ein Elektron.
Folie 6-11
Halbleiterbauelemente
Diamantgitter
Die Struktur des Siliziumkristalls ist dieselbe wie beim Diamant (Kristall des
Kohlenstoffs). Größe der Einheitszelle (Seitenlänge): 5,43·10−10 m.
Anzahl der Atome pro Einheitszelle: 8.
Folie 6-12
Halbleiterbauelemente
Herstellung von Silizium-Wafern
Das Ausgangsmaterial für die IC-Prozesstechnologie ist monokristallines Silizium in
hoher Reinheit. Es wird mit der sogenannten
Czochralski-Methode hergestellt. Dazu wird
ein Impfkristall (engl. seed crystal) in geschmolzenes Silizium abgesenkt. Beim Herausziehen aus der Schmelze lagern sich Siliziumatome an. Es wächst ein Kristall, dessen
Gitterstruktur durch die des Impfkristalls vorgegeben ist.
Das Ziehen des Kristalls geschieht unter
Rotation. Dadurch entstehen zylinderförmige
Kristalle, die in Scheiben, sogenannte Wafer,
gesägt werden.
Folie 6-13
Halbleiterbauelemente
Energieniveaus am Beispiel des Wasserstoffatoms
n=3
–1,51eV
EH / eV
0 eV
n=∞
n=3
n=2
n=1
–13,6eV
–5 eV
n=2
–3,4eV
–10 eV
Die möglichen Energien, die das Elektron
des Wasserstoffatoms einnehmen kann,
13,6 eV
sind quantisiert:
EH = −
Für n
n
n=1
2
∞ ist das Elektron nicht mehr an den Atomkern gebunden.
Folie 6-14
Halbleiterbauelemente
Atome in Wechselwirkung miteinander
EH / eV
In einem Kristall sind die
0 eV
Atome nahe beieinander
angeordnet und stehen in
Wechselwirkung miteinander. Die Elektronen müssen dabei unterschiedliche
Energiezustände einneh- –5 eV
men (Pauli-Prinzip).
Bei N Atomen gibt es 2N
mögliche Energieniveaus
für die Elektronen.
–10 eV
Die Energieniveaus lassen
sich durch Energiebänder
veranschaulichen, in denen
sehr viele Energieniveaus
dicht beieinander liegen.
Kristall
(N Atome)
2-atomiges
Molekül
einzelnes
Atom
Atomabstand
Folie 6-15
Halbleiterbauelemente
Bändermodell
E
(Elektronenenergie)
Eoben
Leitungsband
EC
EC
EV
EV
EG
Valenzband
Eunten
x
(Ortskoordinate im Halbleiterkristall)
Bändermodell
(stark vereinfacht)
Bändermodell
Die inneren 10 Elektronen der Siliziumatome sind sehr stark an den
Atomkern gebunden. Sie werden durch die inneratomaren Kräfte kaum
gestört. Es genügt daher, die Energiezustände, die aus der Valenzschale
entstanden sind, sowie die Energiezustände, die aus den höheren
Energieniveaus des Siliziumatoms, entstanden sind, zu betrachten.
Man spricht von Valenzband und Leitungsband.
Folie 6-16
Halbleiterbauelemente
Leitungsvorgang im Halbleiterkristall
Durch thermische Anregung entstehen freie Elektronen und Löcher.
Folie 6-17
Halbleiterbauelemente
Löcherleitung
Löcher können wandern und damit Ladung transportieren.
Sie wirken wie positiv geladene Ladungsträger.
Folie 6-18
Halbleiterbauelemente
Leitungsvorgänge im Bändermodell
(Leitungsband leer)
EC
EC
EC
EV
EV
EV
(Valenzband
komplett gefüllt)
keine Leitung
thermische Erzeugung eines
Elektron-Loch-Paares
Leitungsvorgang
In einem reinen Halbleiterkristall kann elektrischer Strom fließen, wenn
thermisch erzeugte Ladungsträger zur Verfügung stehen. Elektronen und
Löcher entstehen dabei gleichzeitig ("Generation") und tragen auch
gleichzeitig zum Stromtransport bei. Elektronen fließen im Leitungsband.
Löcher fließen im Valenzband. Ein reiner Halbleiter besitzt also eine gewisse
Eigenleitfähigkeit (bei Silizium ca. 10-2/( m), Germanium ca. 1/( m)).
Elektronen und Löcher können (unter Abgabe von Energie) auch wieder
miteinander verschmelzen ("Rekombination").
Folie 6-19
Halbleiterbauelemente
Klassifizierung der Materialien: Nichtleiter und Halbleiter
Obwohl für Halbleiter entwickelt, lässt sich das Bändermodell (mit geringen
Modifikationen) auf alle Materialien übertragen. Der Hauptunterschied liegt
nicht in der Natur der Energiebänder, sondern in der Größe der Bandlücke
(engl. band gap) , d.h. im Abstand von Valenzband zu Leitungsband.
EC
EC
EG
EG
EG ~ 8 eV (SiO2)
EG ~ 5 eV (Diamant)
EV
Nichtleiter:
thermische Anregung unwahrscheinlich,
nur wenige Elektron-/Lochpaare werden
generiert.
EV
EG = 1,12 eV (Si)
EG = 0,67 eV (Ge)
(bei Zimmertemperatur)
Halbleiter:
thermische Anregung relativ leicht
möglich, eine mittlere Zahl von
Elektron-/Lochpaaren werden
generiert.
Folie 6-20
Halbleiterbauelemente
(Klassifizierung der Materialien:) Leiter
EG
EV
EC
EC
Bandabstand EG sehr klein
oder
sich überlappende Bänder
Bei Metallen ist der Bandabstand entweder sehr klein, oder Valenzband und
Leitungsband überlappen sich sogar. Eine thermische Anregung ist mit
geringem Energieaufwand möglich. Es stehen daher sehr viele Ladungsträger
zur Verfügung. Metalle sind ausgesprochen gute Leiter.
Folie 6-21
Halbleiterbauelemente
Dotierung des Halbleiters
Man kann die Leitfähigkeit des Halbleiters gezielt durch den Einbau von
Fremdatomen ins Kristallgitter (sog. Störstellen) verändern, und zwar um
Größenordnungen. Für die Halbleitermaterialien Silizium und Germanium,
die 4 Valenzelektronen haben, werden zumeist folgende Elemente
verwendet:
Elemente mit 5 Valenzelektronen:
Arsen (As)
Antimon (Sb)
Phosphor (P)
Elemente mit 3 Valenzelektronen:
Bor (B)
Aluminium (Al)
Indium (In)
Der Einbau von Fremdatomen wird Dotieren (engl. doping) genannt.
Die Konzentrationen der Fremdatome (sog. Dotierungsgrad) liegt zwischen
1013 und 1020 Fremdatomen/cm3.
Folie 6-22
Halbleiterbauelemente
Dotierung mit 5-wertigen Elementen (n-Dotierung)
Beim Einbau von 5-wertigen Elementen (sog.
Donatoren) in das Kristallgitter gehen nur 4
Valenzelektronen eine kovalente Bindung ein. Das
fünfte Elektron ist nur lose an den Kern gebunden,
d.h. es kann mit geringem Energieaufwand ins
Leitungsband gehoben werden. Wenn das passiert,
bleibt im Gitter ein positiv geladener Atomrumpf
zurück.
Die Energieniveaus der Donatoren (ED) liegen nur
geringfügig (~ 0,05 eV) unter der Leitungsbandkante.
P+
T
0K
EC
ED
EC
ED
EC
ED
EV
EV
EV
steigende Temperatur
Störstellenreserve
Zimmertemperatur
Störstellenerschöpfung
Folie 6-23
Halbleiterbauelemente
Dotierung mit 3-wertigen Elementen (p-Dotierung)
Beim Einbau von 3-wertigen Elementen (sog.
Akzeptoren) in das Kristallgitter gehen 3 Valenzelektronen eine kovalente Bindung ein. Dem
Fremdatom fehlt ein weiteres Elektron für die
Bindung an alle Nachbaratome. Es "besitzt ein
Loch", in das unter geringem Energieaufwand
Nachbarelektronen springen können. Wenn das
passiert, stellt das Akzeptoratom eine ortsfeste
negative Ladung dar.
Die Energieniveaus der Akzeptoren (EA) liegen nur
geringfügig (~ 0,05 eV) über der Valenzbandkante.
B−
T
0K
EC
EC
EC
EA
EV
EA
EV
EA
EV
steigende Temperatur
Störstellenreserve
Zimmertemperatur
Störstellenerschöpfung
Folie 6-24
Halbleiterbauelemente
Störleitung
Bei Zimmertemperatur sind alle Störstellen (Akzeptoren oder Donatoren) ionisiert. Die
Leitfähigkeit ist im Wesentlichen durch die Dotierung festgelegt. Man spricht (im
Gegensatz zur Eigenleitung eines undotierten Halbleiters) von Störstellenleitung.
n
ND
2,0
In einem n-dotierten Halbleiter
herrscht dann ein Elektronenüberschuss. Es werden gleichzeitig
mehr Löcher durch Rekombination
aufgefüllt. Ihre Zahl geht dadurch
zurück. Im n-Halbleiter bezeichnet
man die Elektronen daher als
Majoritätsträger, die Löcher als
Minoritätsträger.
Störstellenreserve
1,5
Störstellenerschöpfung
1,0
0,5
Eigenleitung
100
200
300
400
500
600
T
K
Schematische Darstellung der Majoritätsträgerkonzentration für n-dotiertes Silizium.
(ND=1015 cm-3)
In einem p-dotierten Halbleiter sind
die Verhältnisse gerade umgekehrt.
Die Löcher sind die Majoritätsträger,
die Elektronen die Minoritätsträger.
Folie 6-25
Halbleiterbauelemente
pn-Übergang
Die Funktion der meisten Halbleiterbauelemente beruht darauf, dass im Halbleiter
Zonen unterschiedlicher Dotierung existieren.
Wir betrachten zunächst den Fall, dass ein p-dotierter und ein n-dotierter Halbleiter in
Kontakt gebracht werden. Wir nehmen an, dass alle Störstellen (Akzeptoren und
Donatoren) ionisiert sind.
Im p-Halbleiter sind die Löcher als
Majoritätsträger in großer Zahl
vorhanden, im n-Halbleiter
entsprechend die Elektronen. Aufgrund
des Konzentrationsunterschiedes
bewegen sich Löcher vom p-Halbleiter
p-Halbleiter
n-Halbleiter
in den n-Halbleiter und Elektronen vom
n-Halbleiter in den p-Halbleiter. Dort
sind sie jeweils Minoritätsträger.
Diese Ladungsträgerbewegung geschieht als thermische Diffusion.
Die Löcher, die im n-Halbleiter ankommen, rekombinieren dort mit Elektronen.
Die Elektronen, die im p-Halbleiter ankommen, rekombinieren dort mit Löchern.
Da die ionisierten Störstellenatome an ihre Orte im Kristallgitter gebunden sind,
entsteht eine Raumladungszone, in der so gut wie keine beweglichen Ladungsträger
vorhanden sind (Sperrschicht, Verarmungszone).
Folie 6-26
Halbleiterbauelemente
pn-Übergang im thermischen Gleichgewicht
Sperrschicht
pBahngebiet
nBahngebiet
p-Halbleiter
Raumladungsdichte
n-Halbleiter
(x)
x
elektrische Feldstärke
E(x)
elektrisches Potential
(x)
UD
x
Die Raumladungszone (x) erzeugt
ein elektrisches Feld E(x). Dieses
wirkt der thermischen Diffusion der
Ladungsträger entgegen. Es entsteht
ein Gleichgewicht, bei dem sich der
Diffusionsstrom und Driftstrom
(Strom aufgrund des elektrischen
Feldes) kompensieren.
Das elektrische Feld verursacht eine
Potentialdifferenz zwischen nHalbleiter und p-Halbleiter, die
sogenannte Diffusionsspannung
UD. Ihr Wert ist abhängig von der
Dotierung und liegt meistens bei
etwa 0,7 Volt.
x
Folie 6-27
Halbleiterbauelemente
pn-Übergang im Bändermodell (1)
Sperrschicht
pBahngebiet
Energie der Elektronen, E
p-Halbleiter
nBahngebiet
n-Halbleiter
eUD
EC
eUD
EV
x
Der Potentialunterschied (die Diffusionsspannung) sorgt für eine "Verbiegung" der Bänder. Elektronen im
p-Bahngebiet (dort Minoritätsträger)
besitzen nun eine potentielle Energie
gegenüber dem n-Bahngebiet. In der
Sperrschicht werden sie durch das
elektrische Feld in positiver x-Richtung beschleunigt. ("Sie rutschen die
Leitungsbandkante hinab.")
Für die Löcher im n-Bahngebiet (dort
ebenfalls Minoritätsträger) kann man
eine ähnliche Betrachtung anstellen.
Sie besitzen eine positive potentielle
Energie gegenüber dem p-Bahngebiet.
In der Sperrschicht werden sie durch
das elektrische Feld in negativer xRichtung beschleunigt. ("Sie steigen
wie Luftblasen an der Valenzbandkante empor.")
Folie 6-28
Halbleiterbauelemente
pn-Übergang im Bändermodell (2)
Sperrschicht
pBahngebiet
Energie der Elektronen, E
p-Halbleiter
Für die Majoritätsträger (Elektronen
im n-Bahngebiet und Löcher im pBahngebiet) ist es schwierig, auf die
jeweils andere Seite zu diffundieren.
Sie müssen mindestens die
thermische Energie eUD besitzen,
um die Potentialbarriere des
elektrischen Feldes der Sperrschicht
zu überwinden. Es fließt ein
geringer Diffusionsstrom.
nBahngebiet
n-Halbleiter
eUD
EC
eUD
EV
Im thermischen Gleichgewicht
halten sich beide Ströme die Waage,
d.h. die thermische Diffusion der
Majoritätsträger kompensiert den
Driftstrom der Minoritätsträger.
x
Folie 6-29
Halbleiterbauelemente
pn-Übergang: Anlegen einer Spannung – Sperrpolung
Sperrschicht
pBahngebiet
nBahngebiet
p-Halbleiter
−
elektrisches Potential
U+UD
UD
n-Halbleiter
U
+
(x)
x
Legen wir eine negative Spannung
zwischen p-Halbleiter und n-Halbleiter an (der p-Halbleiter wird an den
Minuspol angeschlossen, der n-Halbleiter an den Pluspol), dann werden
die freien Ladungsträger von den
Elektroden angezogen. Das elektrische Feld wird größer und die Raumladungszone wird breiter. Der pnÜbergang ist in Sperrrichtung
gepolt. Nur Minoritätsträger, die
durch thermische Generation entstehen, können zu einem Stromfluss
beitragen. Dieser Sperrstrom ist von
der Spannung unabhängig, jedoch
abhängig von der Temperatur. Er ist
sehr klein (im Bereich von µA).
Folie 6-30
Halbleiterbauelemente
pn-Übergang: Anlegen einer Spannung – Flusspolung
Sperrschicht
pBahngebiet
nBahngebiet
p-Halbleiter
+
elektrisches Potential
UD
U−UD
n-Halbleiter
U
−
(x)
x
Legen wir eine positive Spannung
zwischen p-Halbleiter und n-Halbleiter an (der p-Halbleiter wird an
den Pluspol angeschlossen, der nHalbleiter an den Minuspol), dann
verringert sich das elektrische Feld
und die Raumladungszone wird
schmaler. Man sagt, der pn-Übergang ist in Flussrichtung oder
Durchlassrichtung gepolt.
Die Ladungsträger können nun mit
wesentlich geringerem Energieaufwand den Übergang passieren.
Der Diffusionsstrom vom p- ins nGebiet überwiegt den entgegengerichteten Driftstrom. Es fließt ein
positiver "Nettostrom".
Folie 6-31
Halbleiterbauelemente
Diode
Schaltsymbol der Diode
Der pn-Übergang lässt Stromfluss nur in
Durchlasspolung zu. (In Sperrrichtung
fließt lediglich der vernachlässigbar
kleine Sperrstrom, im Bereich von µA).
Ein pn-Übergang stellt eine Diode dar.
Die Kennlinie der idealen Diode ergibt
sich aus der Kennliniengleichung
I
I = I S ( eU / U T −1)
U
UT : sog. Temperaturspannung.
UT ≈ 25.2 mV bei Raumtemperatur.
IS : Sättigungsstrom in Sperrrichtung.
US
I
I
R=
US
Modell mit
Schleusenspannung
U
US
ΔU
ΔI
U
Modell mit
Schleusenspannung
und Bahnwiderstand
In vielen Fällen kann eine reale
Diodenkennlinie durch zwei
Geradenstücke angenähert werden.
Dabei ist der Schnittpunkt der Tangente
an die Kurve die sogenannte
Schleusenspannung US.
US ≈ 0,7 V bei Si, bei Raumtemperatur.
Folie 6-32
Halbleiterbauelemente
Bipolartransistor
Der Transistor wurde 1947 in den Bell Laboratories von Shockley, Bardeen und
Brattain erfunden. Er heißt Bipolartransistor, weil in ihm beide Ladungsträgertypen
(Elektronen und Löcher) zum Stromtransport beitragen.
Der Transistor besteht aus drei Zonen unterschiedlich dotierten Halbleitermaterials.
Beim npn-Transistor werden zwei n-dotierte Gebiete durch ein p-dotiertes Gebiet
getrennt. Beim pnp-Transistor werden zwei p-dotierte durch ein n-dotiertes Gebiet
getrennt. Es ergibt sich jeweils eine Abfolge von zwei nebeneinanderliegenden pnÜbergängen.
Die Zonen haben die Bezeichnungen Emitter (E), Basis (B) und Kollektor (C).
C
C
C
p
n
B
p
C
B
B
n
B
p
n
E
E
npn-Transistor
E
E
pnp-Transistor
Folie 6-33
Halbleiterbauelemente
(Bipolartransistor)
Die pn-Übergänge stellen Halbleiterdioden dar. Man spricht von der Basis-EmitterDiode (BE-Diode) und der Basis-Kollektor-Diode (BC-Diode).
Im Normalbetrieb wird die BE-Diode in Durchlassrichtung, die BC-Diode in
Sperrrichtung gepolt.
Beim npn-Transistor werden in dieser
Beschaltung Elektronen vom Emitter in
IC
das Basisgebiet injiziert. Die
UCB > 0
IB
Elektronen, die in der Basis nicht mit
UCE > 0
Löchern rekombinieren, können in die
Sperrschicht der BC-Diode
UBE > 0
IE
diffundieren. Dort werden sie durch
das elektrische Feld "abgesaugt" und
zum Kollektor transportiert.
Damit die injizierten Elektronen den Kollektor erreichen können, bevor sie mit Löchern
in der Basis rekombinieren, wird die Basisweite sehr klein gewählt.
Die Basis injiziert ihrerseits Löcher in den Emitter, die dort mit Elektronen
rekombinieren. Durch eine entsprechend schwache Dotierung der Basis sorgt man
dafür, dass der Basisstrom IB viel kleiner ist als der Emitterstrom IE.
Folie 6-34
Halbleiterbauelemente
Ströme (npn-Transistor)
n
p
n
IE
IC
E
C
IB
Stromanteile im npn-Transistor
bei Normalbetrieb:
•
•
B
Elektronen als Emitterstrom IE aus dem Emitterbereich in die Basis. Der größte
Teil gelangt als Transferstrom zum Kollektor und bildet den Kollektorstrom IC.
Ein kleiner Teil rekombiniert mit Löchern in der Basis.
Löcher als Löcherstrom aus dem Basisbereich in den Emitter. Zusammen mit
den in der Basis rekombinierenden Elektronen bildet er den Basisstrom IB.
Folie 6-35
Halbleiterbauelemente
Stromverstärkung (npn-Transistor)
Mit der an der BE-Diode anliegenden Spannung in Durchlassrichtung kann die Rate der
vom Emitter in die Basis injizierten Elektronen und damit auch die Rate der am
Kollektor ankommenden Elektronen gesteuert werden. Der Kollektorstrom IC wird also
durch die Spannung UBE gesteuert. Die Basis wirkt dabei als Steuerelektrode.
Da der gesteuerte Kollektorstrom wesentlich größer ist als der Basisstrom, stellt der
Bipolartransistor ein Halbleiterbauelement mit Verstärkereigenschaften dar. Das
Verhältnis von Kollektorstrom zu Basisstrom im Normalbetrieb wird bezeichnet
als
IC
Der Wert von BN liegt typischerweise
Stromverstärkung
BN =
zwischen 100 und 200, ist also sehr
IB
viel größer als 1.
Integrierter npn-Transistor
Weil der Transistor (nur!) im Prinzip
symmetrisch aufgebaut ist, kann man
die Anschlüsse von Kollektor und
Emitter vertauschen. In einem solchen
Rückwärtsbetrieb (Inversbetrieb) ist die
Stromverstärkung allerdings viel
kleiner (≈1).
Folie 6-36
Halbleiterbauelemente
Kennlinien des Bipolartransistors (Beispiel)
IB
IB = 100 µA
IC
100 µA
10 mA
IB = 80 µA
80 µA
8 mA
IB = 60 µA
60 µA
6 mA
IB= 40 µA
40 µA
4 mA
IB= 20 µA
20 µA
2 mA
IB= 0 µA
0
0,2V
0,4V 0,6V
0,8V UBE
0
Eingangskennlinie
5V
10V
Ausgangskennlinien
Beispiel: Kennlinien für einen npn-Transistor
Folie 6-37
UCE
Halbleiterbauelemente
Betriebsbereiche des npn-Transistors
Gesperrter Bereich:
Beide pn-Übergänge sind gesperrt (UBE < US; –UCB < US; US: Schleusenspannung).
Über den Transistor fließen trotz angelegter Ausgangsspannung UCE > 0 nur sehr kleine
Restströme. Der Transistor hat einen hohen Kollektor-Emitter-Widerstand – er entspricht einem geöffneten Schalter. (Im Kennlinienfeld der vorigen Folie: Kennlinie für
IB=0µA).
Linearer Bereich:
Der Basis-Emitter-Übergang ist leitend, der Basis-Kollektor-Übergang ist gesperrt
(UBE > US; –UCB < US). Die Injektion von Elektronen in die Basis wird durch die BasisEmitter-Spannung gesteuert, der Kollektorstrom IC hängt kaum von UCE ab. (Dieser
Bereich wird in der Verstärkertechnik verwendet).
Gesättigter Bereich:
Beide pn-Übergänge sind leitend (UBE > US; –UCB > US). Dies wird erreicht, wenn die
Kollektor-Emitter-Spannung UCE kleiner als die Basis-Emitter-Spannung UBE gewählt
wird. Dann injizieren sowohl Emitter als auch Kollektor Elektronen in die Basis –
Kollektor- und Basisstrom steigen stark an. Dies entspricht einem niedrigen Widerstand
– in der Digitaltechnik verwendet man den Transistor in diesen Zustand wie einen
geschlossenen Schalter.
Folie 6-38
Halbleiterbauelemente
Bipolartransistor als gesteuerter Schalter
Durch Änderung der Basis-Emitter-Spannung UBE kann der Strom IC gesteuert
werden. Damit eignet sich der Bipolartransistor als gesteuerter Schalter.
IC
IB, EIN > 0
Für die Anwendung als Schalter kommen
zwei Arbeitspunkte in Frage:
1.
Arbeitspunkt "EIN": Bei Ansteuerung
mit einer hohen Basis-Emitter-Spannung
fällt auch bei hohem Strom IC nur eine
geringe Kollektor-Emitter-Spannung ab.
Der Transistor hat einen niedrigen
Kollektor-Emitter-Widerstand.
2.
Arbeitspunkt "AUS": Bei Ansteuerung
mit einer kleinen Basis-EmitterSpannung fließt so gut wie kein Strom IC.
Der Transistor hat einen hohen
Kollektor-Emitter-Widerstand.
Arbeitspunkt "EIN":
Hoher Strom bei niedriger
Spannung
niedriger Widerstand
Arbeitspunkt "AUS":
Niedriger Strom bei hoher
Spannung
hoher Widerstand
IB, AUS = 0
0
UCE
Folie 6-39
Halbleiterbauelemente
Isolierschicht-Feldeffekttransistor (MOSFET)
MOSFETs sind die wichtigsten Bauelemente heutiger integrierter Digitalschaltungen.
MOS steht für Metall-Oxid-Silizium-Kapazität. FET steht für Feld-Effekt-Transistor.
Es gibt n-Kanal- und p-Kanal-MOSFETs.
Wesentlicher Bestandteil des MOSFETs ist der MOS-Kondensator. Er besteht aus der
Gate-Elektrode ("Metall"), dem Dielektrikum aus Siliziumdioxid ("Oxid") und dem
Substrat ("Silizium"). Das Substrat ist mit dem Anschluss "Bulk" verbunden.
Gate (G)
Isolierschicht
SiO2
Source
(S)
schematischer Aufbau
Substrat
p-Silizium
Drain
(D)
Bulk
Folie 6-40
Halbleiterbauelemente
MOS-Kapazität
G
UGB > 0
UGB < Uth
p-Si
B
Verhalten der MOS-Kapazität eines
n-Kanal-MOSFET:
Bei Anlegen einer positiven
Spannung UGB zwischen Gate und
Bulk bildet sich im n-KanalMOSFET an der Grenzfläche
zwischen Substrat und Oxid eine
negative Influenzladung. Sofern die
Spannung nicht zu groß ist, besteht
diese Influenzladung lediglich aus
einer negativen Raumladungszone
(Verarmungszone, Sperrschicht).
Verhalten der MOS-Kapazität eines p-Kanal-MOSFET:
Sie verhält sich prinzipiell wie die des n-Kanal-MOSFET, allerdings sind die
Polaritäten der Spannungen und Ladungen umzukehren.
Im Folgenden betrachten wir die Verhältnisse beim n-Kanal-MOSFET. Die
Bedingungen für den p-Kanal-MOSFET können daraus leicht abgeleitet werden.
Folie 6-41
Halbleiterbauelemente
(MOS-Kapazität)
G
UGB > Uth
p-Si
B
(Verhalten der MOS-Kapazität eines
n-Kanal-MOSFET: )
Überschreitet die Spannung UGB die sogenannte Schwellspannung Uth, (engl.
threshold voltage) dann kann die Gate-Ladung nicht mehr alleine durch die
Raumladung im p-Silizium kompensiert werden. Es bildet sich eine dünne Schicht
freier Elektronen (entstanden aus thermischer Generation), genannt Kanal. An der
Oberfläche des p-Siliziums hat eine Umkehr (Inversion) des Leitungstyps
stattgefunden. Der Kanal ist n-leitend geworden (Inversionskanal). Es existieren
nun freie Ladungsträger, die für Stromtransport zur Verfügung stehen.
Folie 6-42
Halbleiterbauelemente
Schwellspannung Uth
Die Schwellspannung Uth ist abhängig von der Geometrie der Anordnung, der Substratdotierung, dem Gatematerial sowie von festen Flächenladungen an der Si-SiO2-Grenzfläche. Sie lässt sich bei der Herstellung in gewissen Grenzen einstellen. Sie kann sogar
negativ werden: Wird unterhalb der Isolierschicht ein leitender Kanal eingebracht (z.B.
durch Ionenimplantation), dann fließt bereits bei UGS= 0 ein Strom, wenn an den Kanal
eine Spannung UDS angelegt wird. Eine negative Schwellspannung Uth bedeutet also:
Erst wenn die Gate-Source-Spannung negativ ist und unterhalb von Uth liegt, wird ein
solcher Transistor ausgeschaltet. Ansonsten leitet er.
n-Kanal-MOSFETs werden nach dem Vorzeichen ihrer Schwellspannung klassifiziert
in zwei Typen:
Uth > 0:
selbstsperrend, "Anreicherungstyp", engl. "enhancement mode"
Uth < 0:
selbstleitend, "Verarmungstyp", engl. "depletion mode"
Für p-Kanal-MOSFETs gilt Entsprechendes. Es ändern sich nur die Vorzeichen aller
Spannungen und Ströme.
Folie 6-43
Halbleiterbauelemente
Integrierter n-Kanal-MOSFET
Source (S)
Gate (G)
UGS > Uth
Drain (D)
SiO2
n
D
Raumladungszone
G
n
S
p-Substrat
n-Kanal
Schaltsymbol
n-Kanal-MOSFET
L
Ein integrierter n-Kanal-MOSFET besteht aus einem p-Substrat mit zwei stark ndotierten Zonen im Abstand L (Kanallänge) voneinander. Die n-Zonen bilden Source
und Drain des Transistors. Über dem Kanalgebiet befindet sich die Isolierschicht (SiO2)
und darüber die Gate-Elektrode. Der Bulk-Anschluss ist meist mit dem niedrigsten
Potential in der gesamten Schaltung (z.B. 0V, Masse) verbunden.
Legt man eine positive Gate-Source-Spannung UGS > Uth an, so bildet sich die
Raumladungszone und der n-leitende Kanal aus.
Legt man dann eine positive Drain-Source-Spannung UDS an, so fließt ein Strom. Der
MOSFET verhält sich dann wie ein spannungsgesteuerter Widerstand.
Folie 6-44
Halbleiterbauelemente
Integrierter p-Kanal-MOSFET
Source (S)
Gate (G)
Drain (D)
D
UGS < Uth
SiO2
p
Raumladungszone
G
p
n-Substrat
UB
p-Kanal
S
Schaltsymbol
p-Kanal-MOSFET
Der p-Kanal-MOSFET ist entsprechend aus n-Substrat und p-dotierten Zonen für
Source und Drain aufgebaut. Der Bulk-Anschluss ist meist mit dem höchsten
Potential in der gesamten Schaltung verbunden (z.B. Betriebsspannung UB).
Um die Inversion einzuleiten, ist eine negative Gate-Source-Spannung UGS < Uth
notwendig. Eine negative Drain-Source-Spannung UDS führt zu einem Stromfluss
durch den Transistor.
Folie 6-45
Halbleiterbauelemente
Abschnüreffekt (pinch-off) beim n-Kanal-MOSFET
UGS > Uth
UDS > UGS−Uth
G
S
n
D
Raumladungszone
n
p
Kanal
"pinch-off"
Mit zunehmender Spannung wird die influenzierte Ladung im Kanal ortsabhängig.
Durch den Spannungsabfall im Kanal wird am Kanalende kaum noch Ladung
influenziert. Der Kanal wird "abgeschnürt" (engl.: "pinched off"). Dies führt dazu,
dass der Strom ID nicht mehr weiter ansteigen kann, sondern einen Sättigungswert
annimmt. Dieser hängt von der Gate-Source-Spannung UGS ab.
Folie 6-46
Halbleiterbauelemente
Betriebsbereiche des n-Kanal-MOSFET
Sperrbereich:
UGS < Uth
ID
ID = 0
UDS
Der Transistor sperrt, es fließt kein nennenswerter
Drainstrom. Das Kanalgebiet hat einen sehr hohen
Widerstand.
UGS
Widerstandsbereich oder ohm'scher Bereich:
UGS > Uth
UDS < UGS − Uth = UDS,sat
U DS ⎞
⎛
I D = β ⎜U GS − U th −
⎟U DS
2 ⎠
⎝
mit
β = μe
ε 0ε r W
tox L
Der Faktor enthält Geometriegrößen (Kanalbreite W, Kanallänge L, Dicke
des Gateoxids tox) sowie Materialgrößen (Beweglichkeit µe der Elektronen,
Dielektrizitätszahl r des Gateoxids).
Der Transistor verhält sich wie ein spannungsgesteuerter Widerstand. Sein
Leitwert ändert sich in Abhängigkeit von UGS.
Folie 6-47
Halbleiterbauelemente
(Betriebsbereiche des n-Kanal-MOSFET)
ID
Sättigungsbereich oder Abschnürbereich:
UGS > Uth
UDS
UDS ≥ UGS − Uth = UDS,sat
UGS
I D,sat =
β
2
(U GS − U th )2
mit
β = μe
ε 0ε r W
tox L
Der Drainstrom ändert sich nicht mehr bei weiterer Erhöhung der DrainSource-Spannung UDS über den Wert UDS,sat= UGS − Uth hinaus.
Betriebsbereiche des p-Kanal-MOSFET
Für die Betriebsbereiche des p-Kanal-MOSFET gilt Entsprechendes; es
sind dabei lediglich die Vorzeichen der Spannungen und Ströme sowie die
Vergleichsoperatoren (<, ≤, >, ≥) umzukehren.
Folie 6-48
Halbleiterbauelemente
Kennlinien des MOSFET (Beispiel)
WiderstandsBereich
ID
ID
0,8 mA
UGS= 3,0 V
0,8 mA
Sättigungsbereich
UGS= 2,6 V
UDS=6 V
0,6 mA
0,6 mA
0,4 mA
0,4 mA
UGS= 2,2 V
0,2 mA
0,2 mA
Uth= 1 V
Sperrbereich UGS= 1,8 V > Uth
UGS= 0,5 V < Uth
0
1V
2V
3 V UGS
Transferkennlinie
0
4V
2V
6V
8V
Ausgangskennlinien
Beispiel: Kennlinien für einen n-Kanal-MOSFET
Folie 6-49
UDS
Halbleiterbauelemente
MOSFET als gesteuerter Schalter
Durch Änderung der Gate-Source-Spannung UGS kann der Strom ID gesteuert werden.
Damit eignet sich auch der MOSFET als gesteuerter Schalter.
ID
Für die Anwendung als Schalter kommen
zwei Arbeitspunkte in Frage:
UGS, EIN > Uth
1.
Arbeitspunkt "EIN": Bei Ansteuerung
mit einer Spannung UGS > Uth ist der
Transistor leitend, d.h. bei hohem
Drainstrom fällt eine geringe DrainSource-Spannung ab. Der Transistor hat
einen niedrigen Drain-SourceWiderstand.
2.
Arbeitspunkt "AUS": Bei Ansteuerung
mit einer Spannung UGS < Uth sperrt der
Transistor. Es fließt so gut wie kein ID.
Der Transistor hat einen hohen DrainSource-Widerstand.
Arbeitspunkt "EIN":
Hoher Strom bei niedriger
Spannung
niedriger Widerstand
Arbeitspunkt "AUS":
Niedriger Strom bei hoher
Spannung
hoher Widerstand
UGS, AUS < Uth
0
UDS
Folie 6-50
Halbleiterbauelemente
Schaltkreisfamilien
Schaltkreisfamilien sind Kollektionen standardisierter digitaler Bausteine, die die
gleiche Basistechnologie verwenden und gleiche elektronische Kenngrößen besitzen.
Man kann aus ihnen auf einfache Weise größere Digitalschaltungen zusammensetzen.
In den frühen Jahren der Mikroelektronik wurden integrierte Digitalschaltungen
zunächst mit Bipolartransistoren aufgebaut. Die ersten Schaltkreisfamilien hießen
RTL (Resistor-Transistor Logic), DTL (Diode-Transistor Logic), TTL (TransistorTransistor Logic) und ECL (Emitter-Coupled Logic). TTL und ECL werden auch
heute noch in bestimmten Anwendungen eingesetzt.
Der Großteil der integrierten Digitalschaltungen, aus denen informationstechnische
Systeme heute aufgebaut werden, basieren auf der MOS-Technik. Hier hat sich
insbesondere die CMOS-Technologie durchgesetzt (CMOS=Complementary MOS).
Dazu mehr im nächsten Kapitel.
Folie 6-51
Halbleiterbauelemente
Vergleich Bipolartechnologie vs. MOS-Technologie
Vorteile der Bipolartechnologie:
•
•
•
Fähigkeit, große Ströme zu treiben (dadurch sind schnelle Umladevorgänge
möglich).
Die Basis-Emitter-Schleusenspannung von ca. 0,7 V ist sehr stabil und
reproduzierbar einzustellen und nur wenig von der Prozesstechnologie abhängig.
Kurze Umschaltzeiten und damit hohe Arbeitsfrequenzen möglich.
Vorteile der MOS-Technologie:
•
•
•
Weil das Gate isoliert ist, fließt im stationären Fall kein Strom ins Gate. Dadurch
niedrige Leistungsaufnahme.
Der stromführende Kanal ist durch den Transistoraufbau bereits isoliert. Dadurch
ist keine zusätzliche Isolation notwendig. Ein MOS-Transistor ist ein sehr
platzsparendes Bauelement und erlaubt daher hohe Integrationsdichten.
Schwellspannung Uth ist einstellbar.
Die Weiterentwicklung der Technologie führt allerdings auch bei der MOS-Technik
zu immer schnelleren Bauelementen, so dass der Geschwindigkeitsvorsprung der
Bipolartechnik allmählich verschwindet.
Folie 6-52
Technische Informatik I
Kapitel 7
Digitale Grundschaltungen
Folie 7-1
Digitale Grundschaltungen
Informationsverarbeitung in digitalen Schaltungen
Die technische Informationsverarbeitung beruht auf der Kodierung der
Information durch zwei Werte (binäre Kodierung). Die Information wird
dabei durch physikalische Größen wie z.B. Strom oder Spannung
repräsentiert. Die Prozesse der räumlichen und zeitlichen Änderung dieser
physikalischen Größen beschreiben wir mathematisch durch Signale. Man
benötigt eine eindeutige Zuordnung der beiden binären Informationswerte zu
den Werten der Signale. Man spricht von Signalpegeln, denen die
Informationswerte zugeordnet sind.
In den herkömmlichen Schaltkreisfamilien (TTL, CMOS) wird die
Information in den Werten der elektrischen Spannung kodiert. Man
identifiziert einen hohen Spannungspegel, genannt Hi, und einen niedrigen
Spannungspegel, genannt Lo, mit den logischen Werten 0 oder false und 1
oder true. Es gibt zwei Möglichkeiten der Zuordnung:
positive Logik:
negative Logik:
0 (false) Lo, 1 (true) Hi
0 (false) Hi, 1 (true) Lo
Im Folgenden verwenden wir in unseren Beispielen positive Logik.
Folie 7-2
Digitale Grundschaltungen
Implementierung digitaler Systeme mit gesteuerten Schaltern
In vielen Bausteinfamilien der 1970er und 1980er Jahre betrug der Hi-Wert
des Spannungspegels 5V. Für heutige hochintegrierte Transistoren, die viel
geringere Bauelementeabmessungen haben (das Gateoxid z.B. ist nur noch
wenige Atomlagen dick), wären diese Spannungen zu hoch. Mit der
fortschreitenden Miniaturisierung der geometrischen Abmessungen werden
auch die Betriebsspannungen (und damit der Hi-Pegel) kleiner. Typische
Werte sind heutzutage 3V, 1.8V, 1.5V oder darunter.
Mit dem Bipolartransistor und dem MOSFET stehen uns steuerbare Schalter
zur Verfügung. Das einfachste Modell dieser Bauelemente in positiver Logik
sieht demnach so aus:
Bipolartransistor:
C
B = Lo
B = Hi
C
C
OFF
B
E
E
ON
E
Folie 7-3
Digitale Grundschaltungen
Implementierung digitaler Systeme mit gesteuerten Schaltern
MOSFET:
D
G = Lo
G = Hi
D
D
G
nMOS
OFF
S
S
S
D
D
D
ON
G
pMOS
ON
S
S
OFF
S
Folie 7-4
Digitale Grundschaltungen
Implementierung digitaler Systeme mit gesteuerten Schaltern
gesteuerter Schalter
Ein gesteuerter Schalter verbindet zwei Punkte in
Abhängigkeit von einem Steuersignal.
Normally Open
wenn das Steuersignal 0 (false) ist, ist der Schalter offen
wenn das Steuersignal 1 (true) ist, ist der Schalter geschlossen
Normally Closed
wenn das Steuersignal 0 (false) ist, ist der Schalter geschlossen
wenn das Steuersignal 1 (true) ist, ist der Schalter offen
True
Steuersignal
geschlossener
Schalter
True
Steuersignal
False
offener
Schalter
False
Normally Closed
Normally Open
offener
Schalter
geschlossener
Schalter
Folie 7-5
Digitale Grundschaltungen
Netzwerke von Schaltern
Beispiel:
WENN Ampel für Hauptstraße grün
UND Ampel für einmündende
Straße rot
True
UND 45 s seit letztem Wechsel
DANN Ampel für Hauptstraße
wird gelb
Beispiel:
WENN 45 s seit letztem Wechsel
ODER (Fußgänger drückt
UND NICHT weniger als 10s
seit letztem Wechsel)
Hauptstraße grün
UND
DANN Hauptstraße wird gelb
Hauptstraße
grün
einmündende
Straße rot
45 s seit
letztem Wechsel
Hauptstraßenampel
wird gelb
weniger als 10 s
seit Wechsel
Fußgänger
drückt
Hauptstraße
grün
True
Hauptstraßenampel wird gelb
True
45 s seit
letztem Wechsel
Knoten im Schwebezustand (floating):
was passiert, wenn Hauptstraße nicht grün?
Ausgang im Schwebezustand und nicht auf False
Wichtige Prinzipien in einem Schalternetzwerks: Für alle Werte der Steuersignale gilt:
(1) alle Ausgänge müssen über irgendeinen Pfad entweder mit True oder
mit False verbunden sein (kein Schwebezustand)
(2) kein Ausgang ist gleichzeitig mit True und False verbunden (keine Konflikte)
Folie 7-6
Digitale Grundschaltungen
Implementierung von AND- und OR-Funktion durch Schalter
A
False
B
A
output
True
AND-Operation
(Konjunktion)
Serienschaltung zu TRUE
B
False
output
True
OR-Operation
(Disjunktion)
Parallelschaltung zu TRUE
Folie 7-7
Digitale Grundschaltungen
Schaltlogik
Ein Netzwerk aus normally open- und normally closed-Schaltern, das für jede
binäre Wertekombination an den Steuersignalen einen binären Signalwert true
oder false auf den Ausgang durchschaltet, kann durch eine aussagenlogische
Formel beschrieben werden.
Die Wertekombination an den Steuersignalen entspricht der Belegung der
Formel. Der binäre Signalwert am Ausgang des Netzwerks entspricht dem
Wahrheitswert der Formel.
Schreibweisen in der Digitaltechnik:
a + b statt a ∨ b
a · b oder ab statt a ∧ b
a' oder a statt ¬a
a = 1 statt A(a) = 1
f = g statt f ≡ g
f ⊕ g statt f ↔ g
Schalternetzwerke, die
grundlegende logische
Operationen (UND, ODER,
NICHT …) realisieren, werden zu
„Gattern“ zusammengefasst. Sie
dienen als Bauelemente einer
digitalen Schaltung.
Folie 7-8
Digitale Grundschaltungen
Logische Gatter und Schaltlogik
Gattersymbol
x
NOT (Negation)
AND (Konjunktion)
OR (Disjunktion)
x
y
x
y
Wahrheitstabelle
x
0
1
x
z
z
x
0
0
1
1
x
0
0
1
1
x
1
0
y
0
1
0
1
z
0
0
0
1
y
0
1
0
1
z
0
1
1
1
Schalternetzwerk
true
x
false
x
false
x·y
true
x
y
false
x +y
true
x
Folie 7-9
y
Digitale Grundschaltungen
NAND, NOR
Wahrheitstabelle
Gatter
NAND
x
y
z
x
0
0
1
1
y
0
1
0
1
z
1
1
1
0
Schalternetzwerk
true
x ·y
false
x
NOR
x
y
z
x
0
0
1
1
y
0
1
0
1
z
1
0
0
0
y
true
x +y
false
x
In der Praxis:
y
NAND- und NOR-Gatter kommen in der Praxis häufiger vor als
AND und OR.
technologisch einfacher realisierbar!
Auch NOT-Gatter (Inverter) können durch NAND oder NOR realisiert werden.
(NOT ist NAND oder NOR mit zusammengeschlossenen Eingängen)
Folie 7-10
Digitale Grundschaltungen
XOR, XNOR
XOR: x oder y aber nicht beides („Antivalenz“, „exclusive OR“)
XNOR: x und y sind gleich („Äquivalenz“)
XNOR-Gatter
XOR-Gatter
x
y
Wahrheitstabelle
x y
0 0
0 1
1 0
1 1
x ⊕ y = x y' + x' y
z
z
0
1
1
0
x
y
Wahrheitstabelle
x y
0 0
0 1
1 0
1 1
z
z
1
0
0
1
(x ⊕ y)' = x y + x' y'
Folie 7-11
Digitale Grundschaltungen
Gattersymbole
übliches Symbol
(amerikanisch)
nach DIN 40900
a
b
y
OR
a
b
≥1
y
a
b
y
AND
a
b
&
y
a
1
XOR
a
b
=1
NAND
a
b
&
y
y
NOR
a
b
≥1
y
y
XNOR
a
b
=1
y
a
a
b
a
b
a
b
a
b
y
Inverter (NOT)
y
y
y
y
Folie 7-12
Digitale Grundschaltungen
Logische Grundschaltungen mit gesteuerten Schaltern
Inverterschaltung mit Lastwiderstand
UB
UB
RL
RL
Steuersignal
Lo
Steuersignal
Ua = UB = Hi
Hi
Ua = 0V = Lo
Folie 7-13
Digitale Grundschaltungen
Inverter mit Bipolartransistor
UB
UB
RL
RL
IC
IC
Ua
Ue
Ua,2
Ue,2
Der Ausgang eines Gatters muss in der Lage sein, ein gleichartiges Gatter
korrekt anzusteuern. Das bedeutet, dass die Ausgangsspannung Ua gültige
Hi- und Lo-Spannungspegel erzeugen muss.
Folie 7-14
Digitale Grundschaltungen
Inverter mit Bipolartransistor
IC
UB
UB
RL
RL
ON
IC
Ua
Ue
OFF
Inverterschaltung
mit bipolarem Transistor
0
UB UCE =Ua
Kennlinienfeld des Bipolartransistors
mit Lastgeraden für RL
Folie 7-15
Digitale Grundschaltungen
(Inverter mit Bipolartransistor)
Arbeitspunkt "OFF":
Liegt an den Eingangsklemmen des Inverters ein Lo-Pegel
(d.h. für Ue = UBE < US ≈ 0,7V), so sperrt der Transistor. Es fließt ein
vernachlässigbar kleiner Kollektorstrom. Am Lastwiderstand RL fällt keine
nennenswerte Spannung ab. An den Ausgangsklemmen stellt sich der hohe
Spannungspegel Hi ein (im Sperrbereich des Kennlinienfeldes).
Arbeitspunkt "ON":
Liegt an den Eingangsklemmen des Inverters ein Hi-Pegel
(d.h. für Ue = UBE > 0,7V), so leitet der Transistor. Der Lastwiderstand
begrenzt dabei den Strom. (Würde der Transistor ideal leiten, so wäre der
Strom IC=UB/RL.) Der Transistor befindet sich im gesättigten Bereich (die
Basis-Kollektor-Diode ist in Flussrichtung gepolt). Es fällt die
Sättigungsspannung UCE,sat über dem Transistor ab. Diese Spannung ist
kleiner als die Schleusenspannung US und entspricht damit einem Lo-Pegel.
Ein an die Ausgangsklemmen angeschlossener Bipolartransistor (z.B. der
eines nachfolgenden Gatters) würde also sperren.
Folie 7-16
Digitale Grundschaltungen
Inverter in nMOS-Technik
UB
UB
nMOSLasttransistor
nMOSLasttransistor
ID
nMOSSchalttransistor
ID
Ua
Ue
nMOSSchalttransistor
CG
Ua,2
Ue,2
Inverter in nMOS-Technik
nachgeschalteter zweiter Inverter
Die Ausgangsspannung des ersten Inverters muss zwar keinen stationären
Strom an das nachgeschaltete Gatter liefern. Sie muss allerdings die GateKapazität CG des Eingangstransistors aufladen. Diese Kapazität wird
durch den eingezeichneten Kondensator modelliert.
Folie 7-17
Digitale Grundschaltungen
Inverter in nMOS-Technik
UB
ID
nMOSLasttransistor
ID
nMOSSchalttransistor
ON
Ua
UGS–Uth
Ue
OFF
0
Inverterschaltung
in statischer nMOS-Technik
mit Lasttransistor
UB–Uth
UB UDS =Ua
Kennlinienfeld des nMOSFET mit
Lastkennlinie des Lasttransistors
Folie 7-18
Digitale Grundschaltungen
(Inverter in nMOS-Technik)
Arbeitspunkt "OFF":
Liegt an den Eingangsklemmen des Inverters ein Lo-Pegel
(d.h. für Ue = UGS < Uth), so sperrt der Schalttransistor. Der Lasttransistor
lädt die nachfolgende Eingangskapazität CG. Dabei steigt die Ausgangsspannung an, allerdings nicht bis UB sondern nur bis UB–Uth, denn der
Lasttransistor sperrt ebenfalls, sobald seine Gate-Source-Spannung unter die
Schwellspannung fällt. Der Drainstrom des Schalttransistors ID ist 0. Der
Endwert der Ausgangsspannung Ue = UB–Uth ist ein Hi-Pegel.
Arbeitspunkt "ON":
Liegt an den Eingangsklemmen des Inverters ein Hi-Pegel
(d.h. für Ue = UGS > Uth), so leitet der Schalttransistor. Der Lasttransistor
leitet ebenfalls. Über die Wahl der Kanallängen L und Kanalbreiten W der
beiden Transistoren können ihre Widerstände eingestellt werden. Der Lasttransistor muss einen hohen, der Schalttransistor einen niedrigen Widerstand
besitzen, so dass im Arbeitspunkt "ON" die Ausgangsspannung Ua kleiner
ist als die Schwellspannung Uth des Eingangstransistors des nachfolgenden
Gatters. Diese Ausgangsspannung stellt einen Lo-Pegel dar.
Folie 7-19
Digitale Grundschaltungen
Inverter in CMOS-Technik
+5V
Hi
+5V
Lo
Eingang ist Hi
Lasttransistor sperrt
Schalttransistor leitet
Ausgang mit Lo verbunden
Lo
Hi
Eingang ist Lo
Lasttransistor leitet
Schalttransistor sperrt
Ausgang mit Hi verbunden
Folie 7-20
Digitale Grundschaltungen
Übertragungskennlinie eines CMOS-Inverters
Eingangsspannung Lo
Ua
5V
Inverterausgangsspannung Ua ist Funktion
der Eingangsspannung Ue
Eingangsspannung steigt von 0V auf 5V:
Ausgang behält 5V für einen gewissen
Bereich von Eingangsspannungswerten
bei, danach sinkt die Ausgangsspannung
schnell ab.
4V
3V
2V
1V
Ein wesentlicher Strom fließt nur beim
Umschalten, im undefinierten Spannungspegelbereich.
ID
0
1V
2V
3V
4V
5V Ue
Eingangsspannung Hi
Ein Logikgatter ist zunächst einmal eine elektronische Schaltung, die mit
analogen Strömen und Spannungen arbeitet.
Die Aussagenlogik beschreibt das Verhalten digitaler Systeme
im eingeschwungenen (stationären) Zustand.
Folie 7-21
Digitale Grundschaltungen
Zeitverhalten logischer Gatter (1)
Ue
t
Ua
t
Antwort eines Inverters auf einen Rechteckimpuls
Folie 7-22
Digitale Grundschaltungen
Zeitverhalten logischer Gatter (2)
Die zeitliche Verzögerung bei der
Berechnung logischer Funktionen
durch digitale Gatterschaltungen
wird im allgemeinen durch eine
summarische Größe namens
Gatterlaufzeit modelliert.
Ue
50%
t
Ua
50%
t
tpdL
tpdH
tpdL : propagation delay (Lo)
Gatterlaufzeit
(propagation delay):
tpdH : propagation delay (Hi)
tpd = ½ (tpdL+tpdH)
Folie 7-23
Digitale Grundschaltungen
CMOS-Transistorschaltungen für logische Gatter
pull-up-Netzwerk
a
+5V
b
+5V
a
+5V
Inverter
b
ab
a
GND
a
a+b
GND
GND
NAND-Gatter
NOR-Gatter
pull-down-Netzwerk
Folie 7-24
Digitale Grundschaltungen
Funktionsweise eines CMOS-NAND-Gatters
"1"
"0"
"1"
+5V
"1"
+5V
"0"
a = 1, b = 1
Pull-up-Netzwerk sperrt
Pull-down-Netzwerk leitet
Ausgang mit Lo verbunden
"1"
a = 0, b = 1
Pull-up-Netzwerk öffnet Pfad zu Hi
Pull-down-Netzwerk hat keinen Pfad zu Lo
Ausgang mit Hi verbunden
Kann man das NAND-Gatter in ein AND-Gatter verwandeln, indem man im
Transistornetzwerk des NAND-Gatters +5V und Masse vertauscht? Nein!
Folie 7-25
Digitale Grundschaltungen
Kondensatoraufladung über nMOS-Transistor
MOS-Transistoren sind keine
idealen Schalter!
UB = +5 V
nMOS im
T1 pullup-Netzwerk?
Im nebenstehenden Beispiel sei die
UGS1
Gatekapazität von T3 (modelliert
T3
durch CG) zunächst ungeladen.
Schließt man das Gate von nMOSTransistor T1 an die BetriebsspanUa
CG
T2
nung UB an, so wird CG aufgeladen,
solange die Spannung Ua an der
0V
Gatekapazität kleiner ist als UB−Uth.
Sobald Ua= UB−Uth, fällt die Spannung UGS1 unter die Schwellspannung Uth und
T1 schaltet ab. Die Aufladung kommt zum Erliegen und die Spannung Ua bleibt
auf dem Wert Ua= UB−Uth.
"Ein nMOS-Transistor leitet den Hi-Pegel nur mit einem
Potentialverlust von Uth weiter."
Folie 7-26
Digitale Grundschaltungen
Kondensatorentladung über nMOS-Transistor
Die Entladung des Kondensators
auf den Lo-Pegel über einen
nMOS-Transistor ist hingegen
ohne Potentialunterschied möglich.
Legt man im nebenstehenden
Beispiel das Gate des Transistors
T1 auf Masse und das Gate von T2
auf die Betriebsspannung, so sperrt
T1 und T2 leitet. Die Gatekapazität
CG der nachfolgenden Stufe T3
wird vollständig auf den
Signalpegel Lo entladen.
UB = +5 V
T1
T3
T2
Ua
CG
0V
nMOS-Transistor im
pulldown-Netzwerk: OK
"Ein nMOS-Transistor leitet den Lo-Pegel ohne
Potentialunterschied weiter."
Folie 7-27
Digitale Grundschaltungen
CMOS-Technologie
Für den pMOS-Transistor gilt Entsprechendes, allerdings jeweils für den
komplementären Signalpegel. Zusammenfassend kann man sagen:
•
•
Ein nMOS-Transistor eignet sich dafür, die 0 weiterzuleiten (aber nicht
die 1), d.h. er eignet sich als pull-down-Transistor.
Ein pMOS-Transistor eignet sich dafür, die 1 weiterzuleiten (aber nicht
die 0), d.h. er eignet sich als pull-up-Transistor.
"Pull-up-Netzwerk":
besteht aus pMOS-Transistoren
"Pull-down-Netzwerk":
besteht aus nMOS-Transistoren
Ein AND-Gatter kann daher in CMOS-Technik nicht einfach durch
Vertauschung von Masse und Betriebsspannung aus einem NAND-Gatter
gewonnen werden.
Ein AND-Gatter muss durch NAND und Inverter realisiert werden.
Komplementärer Aufbau von Pull-up- und Pull-down-Netzwerk:
("complementary MOS", "CMOS")
• Einer Reihenschaltung im pull-up-Netzwerk entspricht eine Parallelschaltung im
pull-down-Netzwerk und umgekehrt.
• Für jede Signalbelegung existiert ein Pfad entweder nach Hi oder nach Lo.
Folie 7-28
Digitale Grundschaltungen
CMOS-Gatter – allgemeiner Aufbau
pMOS
pull-upNetzwerk
Ausgang
y
…
Eingänge
x1
x2
…
UB
…
xn
nMOS
pull-downNetzwerk
0V
Folie 7-29
Digitale Grundschaltungen
CMOS-Komplexgatter
Beispiel:
Implementierung der
Schaltfunktion
UB
a
pull-up-
b
c
Netzwerk
d
y = a ⋅b + c ⋅ d
Komplexgatter:
Schaltung realisiert eine
komplexe Schaltfunktion.
Hier: Funktion genannt
"AND-OR-INVERT-22"
oder
"AOI22"
y
a
pull-down-
c
b
Netzwerk
d
0V
Implementierungsaufwand: 8 Transistoren
Folie 7-30
Digitale Grundschaltungen
CMOS-Komplexgatter
(Beispiel)
Ineffiziente Implementierung derselben Schaltfunktion aus einzelnen
CMOS-Primitivgattern:
AND
a
b
c
d
2
OR
4
2
2
2
4
y
4
AND
Implementierungsaufwand: 20 Transistoren
Mit Komplexgattern (engl. compound gates) lassen sich bestimmte
Funktionen kompakt und effizient implementieren.
Folie 7-31
Digitale Grundschaltungen
Informationsverarbeitung mit digitalen Schaltungen
Beispiel: Schaltung zur Addition von zwei 1-Bit-Dualzahlen
a
„Halbaddierer“:
Eingangssignale: a, b
Ausgangssignale: s (sum), co (carry out)
b
s
Halbaddierer
a
b
co
s
0
0
0
0
0
1
0
1
1
0
0
1
1
1
1
0
co
Folie 7-32
Digitale Grundschaltungen
Beispiel
Beispiel: Schaltung zur Addition von drei 1-Bit-Dualzahlen
„Volladdierer“:
Eingangssignale: a, b, ci (carry in)
Ausgangssignale: s (sum), co (carry out)
a
b
ci
s
Volladdierer
co
a
b
ci
co
s
0
0
0
0
0
0
0
1
0
1
0
1
0
0
1
0
1
1
1
0
1
0
0
0
1
1
0
1
1
0
1
1
0
1
0
1
1
1
1
1
Folie 7-33
Digitale Grundschaltungen
Beispiel
Beispiel: 4-bit-Addierer aus Halb- und Volladdierern
a3
b3
Volladdierer
co,3
ci,3
a2
b2
a1
b1
a0
b0
Volladdierer
Volladdierer
Halbaddierer
co,2
co,1
co,0
ci,2
ci,1
0011
0101
1 1 1
1000
s3
s2
s1
s0
Kleine Funktionseinheiten (Halbaddierer, Volladdierer) werden aus Gattern
zusammengesetzt, größere Funktionseinheiten (4-bit-Addierer) werden aus
kleineren Funktionseinheiten zusammengesetzt.
Folie 7-34
Digitale Grundschaltungen
Aussagenlogische Formeln
Übersetzung der Spezifikation in ein System aussagenlogischer Formeln
Beispiel: Volladdierer
Einfacher Fall: Spezifikation durch Wahrheitstabelle
Aus der Wahrheitstabelle kann man unmittelbar die
kanonische Disjunktive Normalform (DNF) und die
kanonische Konjunktive Normalform (KNF) ablesen.
z.B. kanonische DNF für co:
co = a'bci + ab'ci + abci' + abci
Praxis: Spezifikation durch abstrakte Beschreibung,
sog. „Synthesewerkzeuge“ können aus einer abstrakten
Spezifikation eine Darstellung als System Boolescher
Gleichungen erzeugen.
a
b
ci
co
s
0
0
0
0
0
0
0
1
0
1
0
1
0
0
1
0
1
1
1
0
1
0
0
0
1
1
0
1
1
0
1
1
0
1
0
1
1
1
1
1
Folie 7-35
Digitale Grundschaltungen
Gatternetzliste
co = a'bci + ab'ci + abci' + abci
(kanonische DNF)
Implementierung der kanonischen DNF als Gatternetzliste
a
4 UND-Gatter (3 Eingänge)
1 ODER-Gatter (4 Eingänge)
3 Inverter
b
co
ci
Netz: Verbund elektrisch zusammengeschlossener Drähte
Netzliste: Auflistung aller Gatter-Eingänge und -Ausgänge und der
Netze, mit denen sie verbunden sind
Folie 7-36
Digitale Grundschaltungen
Optimierung
Es gelten die Rechenregeln der Aussagenlogik!
Beispiel: carry-out des Volladdierers
Idempotenz
co = a'bci + ab'ci + abci' + abci
= a'bci + ab'ci + abci' + abci + abci
= a'bci + abci + ab'ci + abci' + abci
= (a' + a)bci + ab'ci + abci' + abci
= (1)bci + ab'ci + abci' + abci
= bci + ab'ci + abci' + abci + abci
= bci + ab'ci + abci + abci' + abci
Für eine systematische Vorgehensweise
benötigen wir
weitere formale
Hilfsmittel !
= bci + a(b'+b)ci + abci' + abci
= bci + a(1)ci + abci' + abci
Assoziativität
= bci + aci + ab(ci' + ci)
= bci + aci + ab(1)
= bci + aci + ab
Folie 7-37
Digitale Grundschaltungen
Gatternetzliste
co = ab + aci + bci
(minimierte DNF)
Implementierung der minimierten DNF
3 UND-Gatter (2 Eingänge)
1 ODER-Gatter (3 Eingänge)
0 Inverter
a
b
co
ci
„zweistufige“ Schaltung
Ebene 1
Ebene 2
Implementierungen, die unmittelbar aus einer DNF oder KNF hervorgehen
heißen „zweistufig“ . Zweistufige Schaltungen besitzen nur zwei „Gatterebenen“,
d.h. Signale durchlaufen von den Eingängen zu den Ausgängen höchstens zwei
Gatter (Inverter werden nicht gezählt).
Folie 7-38
Digitale Grundschaltungen
Gatternetzliste
Liegt eine Formel nicht als DNF oder KNF
vor, spricht man in der Digitaltechnik oft
von einer „faktorisierten“ Form
co = a (b + ci) + bci
Implementierung der faktorisierten Form
2 UND-Gatter (2 Eingänge)
2 ODER-Gatter (2 Eingänge)
0 Inverter
a
b
co
ci
Ebene 1
Ebene 2
„mehrstufige“ Schaltung
Ebene 3
Wie bewerte ich das
zeitliche Verhalten der
Schaltung?
Folie 7-39
Digitale Grundschaltungen
Signallaufzeiten
Alle Schaltvorgänge sind mit einer Verzögerung behaftet!
a
b
i
k
j
ci
co
Annahme:
alle Gatter haben eine
Verzögerungszeit von 1ns
a
b
ci
i
j
k
co
Nach 3ns führt der
Signalwechsel am
Eingang zu dem
entsprechenden
Signalwechsel am
Ausgang
0 ns
1ns
2ns
3ns
Folie 7-40
Digitale Grundschaltungen
Signallaufzeiten
Alle Schaltvorgänge sind mit einer Verzögerung behaftet!
a
b
i
k
j
ci
co
Annahme:
alle Gatter haben eine
Verzögerungszeit von 1 ns
a
b
ci
i
j
k
co
"Glitch": Signale k und co
wechseln kurzeitig den
Wert. Erst nach 3 ns liegt
am Ausgang der korrekte
Wahrheitswert "stabil" an.
0 ns
1ns
2ns
3ns
Folie 7-41
Digitale Grundschaltungen
Glitches und Hazards
Kurze, temporäre Signalwechsel:
Glitch: tatsächlich auftretender temporäre Signalwechsel,
Hazard: Möglichkeit einer Schaltung, einen Glitch zu produzieren (bei
bestimmten Werten der Eingangssignale)
1
1
statischer
1-Hazard
0
1
0
0
1
0
statischer
0-Hazard
Eingangssignalwechsel verursacht
Ausgangssignalwechsel von 1 nach 0 nach 1
Eingangssignalwechsel verursacht
Ausgangssignalwechsel von 0 nach 1 nach 0
1
0
1
0
dynamische Eingangssignalwechsel verursacht doppelten
Wechsel:
1 Hazards
von 0 nach 1 nach 0 nach 1 oder
von 1 nach 0 nach 1 nach 0
0
Folie 7-42
Digitale Grundschaltungen
Hazards und Glitches
•
Hazards führen zu Komplikationen bei der Analyse des Zeitverhaltens einer
Schaltung.
•
Glitches führen zu Komplikationen bei "asynchronen" Schaltungen.
•
Glitches erhöhen die Leistungsaufnahme einer digitalen Schaltung (häufig
um ca. 30 – 50%)
Erinnerung: Aussagenlogik erfasst lediglich das Verhalten digitaler Systeme
im eingeschwungenen (stationären) Zustand.
Folie 7-43
Digitale Grundschaltungen
Analyse des Zeitverhaltens (engl. "timing analysis")
Signalverzögerung einer Schaltung:
Im allgemeinen gilt: Zur Abschätzung der Signalverzögerung einer Schaltung
untersucht man den längsten Pfad. Der längste Pfad ist derjenige Pfad, entlang
dessen die Summe aller Verzögerungen für die Verbindungsleitungen und
Gatterbausteine maximal ist. (Dies gilt auch, falls Glitches auftreten.)
Nimmt man an, dass die Verbindungsleitungen verzögerungsfrei sind und alle
Gatter die gleiche Verzögerungszeit haben, so ist der längste Pfad derjenige Pfad,
der die meisten Gatter durchläuft.
Diese Art der Analyse führt zwar oft zu einer Überschätzung der Signallaufzeiten,
eine genauere Analyse ist aber (auch wegen Hazards) sehr komplex.
Folie 7-44
Digitale Grundschaltungen
Design Trade-offs
Fanin: Anzahl der Eingänge eines Gatters
Fanout: Anzahl der Gatter, die von einem Gatterausgang angesteuert werden
Ziel der meisten Hardwarerealisierungen:
• möglichst geringer Flächenbedarf
(Anzahl der Gatter, Anzahl der Eingänge pro Gatter)
• möglichst schnelle Signallaufzeiten
für die meisten Technologien gilt:
•
•
•
•
•
•
•
Schaltungsfläche beeinflusst Herstellungskosten
Weniger Gatter, weniger Signale ⇒ weniger Fläche
Weniger Gattereingänge ⇒ schnellere Gatter
Maximale Anzahl der Gattereingänge (Fanin) ist beschränkt
Weniger Gatterebenen (Stufen) ⇒ mehr Gatter ⇒ größere Fläche
Weniger Gatterebenen (Stufen) ⇒ schnellere Schaltung
Minimale Signalverzögerung ⇒ mehr Fläche erforderlich
Folie 7-45
Digitale Grundschaltungen
Schaltnetz und Schaltwerk
Bisher haben wir nur Schalternetzwerke betrachtet, deren Ausgangswerte (nach
einer gewissen Verzögerungszeit) allein von den zuletzt angelegten Signalwerten
bestimmt werden.
Beispiel: Addierer
Kombinatorische Schaltung oder Schaltnetz:
Die Ausgangssignale hängen nur von den gegenwärtigen Eingangssignalen ab,
d.h. eine kombinatorische Schaltung bildet eine Signalbelegung an den Eingängen auf eine Signalbelegung an den Ausgängen ab.
Kombinatorische Schaltungen können wir mit den Mitteln der Aussagenlogik
und der Booleschen Algebra beschreiben.
Mit kombinatorischen Schaltungen allein können wir aber noch keinen
Computer bauen…
Folie 7-46
Digitale Grundschaltungen
Schaltnetz und Schaltwerk
Sequenzielle Schaltung oder Schaltwerk:
Die Ausgangssignale hängen von den gegenwärtigen und allen vorangegangenen Eingangssignalen ab (Schaltung hat Gedächtnis), d.h. eine
sequenzielle Schaltung bildet eine Folge von Signalbelegungen an den
Eingängen in eine Folge von Signalbelegungen an den Ausgängen ab.
Auch sequenzielle Schaltungen können durch Netzwerke von Schaltern
realisiert werden.
Beispiele: Steuerung für Ampel mit Kontaktschleife, Prozessor
Sequenzielle Schaltungen werden durch endliche Automaten modelliert. Dazu
später mehr.
Auch sequenzielle Schaltungen können durch Netzwerke von Schaltern
realisiert werden.
Folie 7-47
Technische Informatik I
Kapitel 8
Optimierung von Schaltnetzen
Folie 8-1
Boolesche Funktionen
Optimierung von
Schaltnetzen
Netzwerke logischer Gatter lassen sich durch Boolesche Funktionen beschreiben.
Eine Boolesche Funktion ist eine Abbildung
f : {0, 1}n → {0, 1}
Man kann schreiben: y = f (xn-1, xn-2, ..., x1, x0).
Dabei sind xn-1, xn-2, ..., x1, x0 die n Eingangsvariable der Funktion, und y ist der
Funktionswert bzw. der Ausgang bzw. die Ausgangsvariable der Funktion.
{0, 1}n wird oft als n-dimensionaler Boolescher Raum aufgefasst.
Folie 8-2
Optimierung von
Schaltnetzen
Boolesche Bündelfunktion
Das Verhalten eines digitalen Schaltnetzes kann durch Bündel Boolescher
Funktionen dargestellt werden. Jeder der m Ausgänge yi, 0 ≤ i ≤ m-1, wird durch
eine Boolesche Funktion fi : {0, 1}n → {0, 1} beschrieben.
Alternativ kann das Verhalten des Schaltnetzes auch durch eine (einzelne)
Boolesche Bündelfunktion f : {0, 1}n → {0, 1}m beschrieben werden.
xn-1
xn-2
x0
digitales
Schaltnetz
ym-1
ym-2
y0
Die n Eingangssignale der Schaltung entsprechen den n Eingangsvariablen der
Funktion. Die m Ausgangssignale der Schaltung entsprechen den m
Ausgangsvariablen der Funktion.
Die Signalbelegungen am Eingang der Schaltung entsprechen den Punkten des ndimensionalen Booleschen Raumes {0, 1}n .
Folie 8-3
Optimierung von
Schaltnetzen
Für Boolesche Funktionen können die Formalismen der Aussagenlogik angewendet
werden (siehe Vorlesung Logik, sowie Anhang A). Wir stellen Boolesche Funktionen
durch „Boolesche Ausdrücke“ dar, die entsprechend den Syntaxregeln der
Aussagenlogik aufgebaut sind und verwenden dafür die gleichen Begriffe.
Beispielsweise betrachten wir im folgenden die Disjunktive Normalform (DNF) und
die Konjunktive Normalform (KNF) zur Darstellung Boolescher Funktionen. Auf
eventuelle Begriffsunterschiede zwischen Digitaltechnik und Aussagenlogik weisen
wir gegegebenfalls hin.
Folie 8-4
Disjunktive Normalform
Optimierung von
Schaltnetzen
Definitionen (Monom, DNF, kanonische DNF)
Ein Produktterm oder Monom ist eine Formel von einer der folgenden Formen:
i) 1
ii) ein Literal
iii) eine Konjunktion von Literalen, wobei keine Variable mehr als einmal
auftritt
Eine disjunktive Normalform (DNF) oder
eine Summe von Produkten (engl. sum of products, SOP)
ist eine Formel von einer der folgenden Formen
i) 0
ii) ein Produktterm
iii) eine Disjunktion von Produkttermen
Ein Monom einer SOP für eine Formel f, das für jede in f auftretende Variable
von f ein Literal enthält, heißt Minterm von f. Eine DNF für eine Formel f, die
ausschließlich aus Mintermen besteht, heißt kanonische Mintermform oder
kanonische disjunktive Normalform.
Folie 8-5
Konjunktive Normalform
Optimierung von
Schaltnetzen
Definitionen (Klausel, KNF, kanonische KNF)
Ein Summenterm oder eine Klausel ist eine Formel von einer der folgenden
Formen:
i) 0
ii) ein Literal
iii) eine Disjunktion von Literalen, wobei keine Variable mehr als einmal
auftritt
Ein konjunktive Normalform (KNF) oder ein Produkt von Summen (engl.
product of sums, POS) ist eine Formel von einer der folgenden Formen:
i) 1
ii) ein Summenterm
iii) eine Konjunktion von Summentermen
Eine Klausel einer KNF für eine Formel f, die für jede in f auftretende Variable
ein Literal enthält, heißt Maxterm von f. Eine KNF für eine Formel f, die
ausschließlich aus Maxtermen besteht, heißt kanonische Maxtermform oder
kanonische konjunktive Normalform.
Folie 8-6
Hauptsatz der Schaltalgebra
Optimierung von
Schaltnetzen
Satz (Anhang A)
Für jede aussagenlogische Formel f gibt es eine äquivalente Formel in DNF und
eine äquivalente Formel in KNF.
Entsprechende Formulierung in der Digitaltechnik:
Hauptsatz der Schaltalgebra:
Jede boolesche Funktion f: {0, 1}n → {0, 1} läßt sich als Disjunktion von
Produkttermen (DNF) und Konjunktion von Summentermen (KNF) darstellen.
Also kann eine beliebige Funktion als Schaltnetz realisiert werden, wenn eine
Realisierung für Konjunktion (AND), Disjunktion (OR) und Negation (NOT)
bekannt ist.
Folie 8-7
Optimierung von
Schaltnetzen
Minterme und Maxterme
x1
x2
x3
f
Terme
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
0
1
0
M0 = x1 + x2 + x3
kanonische DNF: f = m1 + m3 + m6
m1 = x1’ ⋅ x2’ ⋅ x3
M2 = x1 + x2’ + x3
m3 = x1’ ⋅ x2 ⋅ x3
M4 = x1’ + x2 + x3
M5 = x1’ + x2 + x3’
m6 = x1 ⋅ x2 ⋅ x3’
M7 = x1’ + x2’ + x3’
kanonische KNF: f = M0·M2·M4·M5·M7
Kurzschreibweise: f(x1, x2, x3) = Σm(1,3,6) Kurzschreibweise: f(x1, x2, x3) = ΠM(0,2,4,5,7)
Kanonische DNF und KNF können auch als Mengen von Mintermen bzw.
Maxtermen aufgefasst werden. Die kanonische DNF enthält die Minterme, die zu
den Einsstellen der Funktion gehören, die sog. Einsstellenminterme, die
kanonische KNF enthält die Maxterme, die zu den Nullstellen der Funktion
gehören, die sog. Nullstellenmaxterme.
Folie 8-8
Optimierung von
Schaltnetzen
Zweistufige Boolesche Darstellungen
Summe von Produkten, Produkte von Summen und DeMorgan-Regel
Beispiel:
f' = a'b'c' + a'b'c + a'bc'
berechne f aus f' mit DeMorgan-Regel:
(f')' = (a'b'c' + a'b'c + a'bc')'
f = (a + b + c) (a + b + c') (a + b' + c)
f' = (a + b' + c' )(a' + b + c)(a' + b + c')(a' + b' + c)(a' + b' + c')
berechne f aus f' mit DeMorgan-Regel:
(f')' = {(a + b' + c')(a' + b + c)(a' + b + c')(a' + b' + c)(a' + b' + c')}'
f = a'bc + ab'c' + ab'c + abc' + abc
Folie 8-9
Zweistufige Boolesche Darstellungen
Optimierung von
Schaltnetzen
Vier alternative zweistufige
Implementierungen von f:
a
b
f1
c
kanonische DNF
(Minterme)
minimierte DNF
f2
kanonische KNF
(Maxterme)
f3
minimierte KNF
f4
Folie 8-10
Zweistufige Boolesche Darstellungen
Optimierung von
Schaltnetzen
Umwandlungen zwischen zweistufigen Darstellungsarten
1.
kanonische DNF in kanonische KNF:
übertrage Mintermkurzschreibweise in Maxtermkurzschreibweise,
ersetze die Mintermindizes durch die nicht aufgetretenen Indizes
z.B.: f(a,b,c) = Σm(3,4,5,6,7) = ΠM(0,1,2)
2.
kanonische KNF in kanonische DNF:
übertrage Maxtermkurzschreibweise in Mintermkurzschreibweise,
ersetze die Maxtermindizes durch die nicht aufgetretenen Indizes
z.B.: f(a,b,c) = ΠM(0,1,2) = Σm(3,4,5,6,7)
Folie 8-11
Zweistufige Boolesche Darstellungen
Optimierung von
Schaltnetzen
Umwandlungen zwischen zweistufigen Darstellungsarten
3.
kanonische DNF (KNF) von f in kanonische DNF (KNF) von f':
in Mintermkurzschreibweise: liste alle in f noch nicht benutzten Indizes auf
z.B.: f(a,b,c) = Σm(3,4,5,6,7)
= ΠM(0,1,2)
4.
f'(a,b,c) = Σm(0,1,2)
= ΠM(3,4,5,6,7)
kanonische DNF(KNF) von f in kanonische KNF(DNF) von f':
übertrage in Maxtermkurzschreibweise, nehme gleiche Indizes wie in f
z.B.: f(a,b,c) = Σm(3,4,5,6,7)
= ΠM(0,1,2)
f'(a,b,c) = ΠM(3,4,5,6,7)
= Σm(0,1,2)
Folie 8-12
Terminologie
Optimierung von
Schaltnetzen
In der Digitaltechnik ist die folgende Terminologie üblich:
• eine KNF heißt auch Produkt von Summen (POS)
• eine DNF heißt auch Summe von Produkten (SOP)
Definition: (Implikant)
Ein Monom (=Produktterm) p, d.h. eine Konjunktion von Literalen, heißt
Implikant für eine Funktion f, genau dann wenn gilt:
p=1⇒f=1
Man sagt, ein Monom p1 "überdeckt" ein Monom p2, wenn p2 = 1 ⇒ p1 = 1
gilt.
Beispiel: f = abc + a'bc + ad + be + cf
Offensichtlich sind abc, a'bc, ad, be, cf Implikanten für f. Die Funktion f
überdeckt ihre Implikanten. Es gibt aber noch weitere Implikanten, z.B. bc.
Der Implikant bc überdeckt den Implikanten abc.
Folie 8-13
Terminologie
Optimierung von
Schaltnetzen
Definition: (Primimplikant)
Ein Implikant heißt Primimplikant für eine Funktion f, wenn jeder Produktterm,
der durch Wegstreichen eines Literals des Implikanten entsteht, kein Implikant
für f ist.
Ein Primimplikant ist also ein Implikant, der von keinem anderen Implikanten
überdeckt wird.
Beispiel: f = abc + abc'
abc ist kein Primimplikant von f, denn durch Wegstreichen von c entsteht der
Produktterm ab, der ebenfalls Implikant ist. Der Implikant ab ist ein Primimplikant,
denn weder a noch b sind Implikanten.
Terminologie für den dualen Fall:
Man bezeichnet einen Summenterm q als Implikat für f, genau dann wenn gilt:
f = 1 ⇒ q = 1. Ein Implikat heißt Primimplikat für eine Funktion f, wenn jeder
Summenterm, der durch Wegstreichen eines Literals des Implikats entsteht, kein
Implikat für f ist.
Folie 8-14
Bestandsaufnahme
Optimierung von
Schaltnetzen
Schaltnetzentwurf
Bisher wurden die folgenden Schritte zum Entwurf eines digitalen
Schaltnetzes betrachtet
Spezifikation des Schaltnetzentwurfs durch Wahrheitstabelle
Ableiten der kanonischen DNF oder kanonischen KNF
Umformung durch Anwendung der Rechenregeln der Booleschen
Algebra (oder Aussagenlogik)
offene Fragen:
• systematische Vorgehensweise zur Optimierung von zweistufigen oder
mehrstufigen Schaltungen
• Anpassung der Schaltung an die vorhandenen Gattertypen
Folie 8-15
Zweistufige Schaltungen
Optimierung von
Schaltnetzen
Betrachte hier die Optimierung von zweistufigen Schaltungen:
• zweistufige Schaltungen haben in der Regel kurze Signallaufzeiten
• für zweistufige Schaltungen existiert eine systematische Vorgehensweise,
die auch bei mehrstufigen Schaltungen eine Rolle spielt
• für zweistufige Schaltungen existieren kostengünstige
Implementierungsstile
Ziel der zweistufigen Minimierung:
SOP oder POS mit minimaler Anzahl von Produkt- bzw. Summentermen. (Unter
den Darstellungen mit gleicher Anzahl von Produkt- bzw. Summentermen wähle
diejenige mit den wenigsten Literalen.)
Folie 8-16
Optimierung von
Schaltnetzen
Beispiel
Carry-out des Volladdierers (Wdh. aus Kap. 7)
Minterme können gemäß folgender
Regel zusammengefasst werden:
x'y + xy = y
co = a'bci + ab'ci + abci' + abci
= a'bci + ab'ci + abci' + abci + abci
= a'bci + abci + ab'ci + abci' + abci
= (a' + a)bci + ab'ci + abci' + abci
= (1)bci + ab'ci + abci' + abci
= bci + ab'ci + abci' + abci + abci
= bci + ab'ci + abci + abci' + abci
= bci + a(b'+b)ci + abci' + abci
= bci + a(1)ci + abci' + abci
= bci + aci + ab(ci' + ci)
Vermutung:
wiederholte Anwendung dieser
Regel kann offensichtlich
wichtiger Bestandteil eines
Optimierungsverfahrens für
zweistufige Schaltungen sein
= bci + aci + ab(1)
= bci + aci + ab
systematische Vorgehensweise?
Folie 8-17
Zusammenfassen von Monomen
Optimierung von
Schaltnetzen
naheliegende Idee für Optimierungsverfahren:
fasse Minterme zu möglichst wenigen Monomen (Produkttermen) zusammen.
Zwei Monome mi und mj können genau dann zu einem einzigen Monom m*
zusammengefasst werden, wenn
mi = mj (Spezialfall, Anwendung der Idempotenzregel)
oder
mi ≠ mj und Regel x'y + xy = y anwendbar ist.
Für das neue Monom m* gilt dann: m* = mi + mj
Folie 8-18
Zweistufige Minimierung
Optimierung von
Schaltnetzen
Gegeben sei eine Boolesche Funktion f in kanonischer DNF.
Betrachte die Menge aller Einsstellen-Minterme F = { m1, m2, …} von f
und die Relation
"kann zu einem Monom zusammengefasst werden",
d.h.
R = {(mi, mj) | mi, mj ∈ F und
mi + mj = y wobei y ein beliebiges Monom ist}.
Welchen Typs ist R?
reflexiv?
ja,
denn mi + mi = mi (Idempotenz) für alle Monome mi ∈ F
symmetrisch?
ja,
denn mi + mj = mj + mi für alle mi, mj ∈ F
transitiv?
nein,
Gegenbeispiel: mi = ab, mj = ab', mk = a'b'
⇒ Verträglichkeitsrelation
Folie 8-19
Zweistufige Minimierung
Optimierung von
Schaltnetzen
Minterme, die zu einem einzigen Monom zusammengefasst werden können, stehen
in einer Verträglichkeitsrelation zueinander.
⇒
zu einem Monom zusammenfassbare Minterme bilden eine
Verträglichkeitsklasse
⇒
jeder Minterm ist in einer Verträglichkeitsklasse enthalten
⇒
die Verträglichkeitsklassen können sich "überlappen"
⇒
gesucht sind Mengen von Verträglichkeitsklassen, die eine Überdeckung
der Menge aller Minterme darstellen
Folie 8-20
Zweistufige Minimierung
Optimierung von
Schaltnetzen
Die Rechenregel x'y + xy = y kann nicht nur auf Minterme, sondern iterativ auch
auf die durch diese Regel entstehenden Monome angewendet werden.
Definition
Sei F eine Menge von Monomen. Dann ist Conss(F) definiert als
Conss(F) = F ∪ {y | zwei Monome von der Form x'y und xy in F
existieren}
Außerdem schreiben wir:
Conss0(F) = F
Conssn+1(F) = Conss(Conssn(F)) für n ≥ 0.
Und schließlich sei
Conss*(F) =
U Conssn(F)
n≥0
Folie 8-21
Zweistufige Minimierung
Optimierung von
Schaltnetzen
Durch die iterative Anwendung der Regel x'y + xy = y können auch mehr als zwei
Minterme zu einem Monom zusammengefasst werden.
Gilt für Minterme m1, m2, …, mk, dass m1 + m2 + … + mk = y, wobei y ein Monom
ist, dann wird jedes mi, i = 1, 2, …, k, und keine weiteren Minterme durch y
überdeckt.
Beachte: k ist immer eine Zweierpotenz
Gegeben sei eine Boolesche Funktion f in kanonischer DNF.
Betrachte die Menge aller Minterme F = {m1 m2 …} von f und die
Verträglichkeitsrelation
R* = "werden von dem gleichen Monom y, y ∈Conss*(F) überdeckt",
d.h.
R* = {(mi, mj) | mi, mj ∈ F
und es existiert ein y ∈Conss*(F) mit mi ⇒ y und mj ⇒ y}
Folie 8-22
Zweistufige Minimierung
Optimierung von
Schaltnetzen
Die minimale DNF erhält man wie folgt:
1)
2)
3)
bestimme Conss*(F)
bestimme die Menge der maximalen Verträglichkeitsklassen τ = {C1, C2…}
bezüglich R*
bestimme eine Teilmenge τ' von τ, die F überdeckt und eine minimale
Anzahl von Elementen aus τ enthält.
Es gilt:
Die Verträglichkeitsklassen entsprechen den Implikanten,
die maximalen Verträglichkeitsklassen entsprechen den Primimplikanten der
Funktion.
Die minimale DNF besteht dann gerade aus den Primimplikanten, die zu einer
minimalen Überdeckung τ' gehören.
Folie 8-23
Zweistufige Minimierung
Satz von Quine:
Optimierung von
Schaltnetzen
Eine minimale Summe von Produkten für eine
boolesche Funktion besteht ausschließlich aus
Primimplikanten.
Es müssen also nur die maximalen Verträglichkeitsklassen betrachtet werden.
Zur Minimierung einer zweistufigen Schaltung sind also die folgenden Schritte
notwendig:
1) Bestimmung der Primimplikanten der Funktion
2) Bestimmung einer minimalen Überdeckung aller Einsstellen-Minterme
durch die Primimplikanten
Diese Vorgehensweise wurde erstmals durch C. Quine und E. McCluskey in den
50-er Jahren vorgeschlagen und ist als "Quine-McCluskey-Methode" bekannt.
Folie 8-24
Quine-McCluskey-Methode
Optimierung von
Schaltnetzen
Phase 1: Bestimmung der Primimplikanten:
gegeben: kanonische DNF für Funktion f
gesucht: alle Primimplikanten
Lösung:
- berechne Conss*(F) (enthält alle Verträglichkeitsklassen)
- bestimme die maximalen Verträglichkeitsklassen durch Streichung
alle Verträglichkeitsklassen, die in anderen enthalten sind
Eine tabellarische Darstellung erleichtert die systematische Durchführung dieser
Schritte.
Folie 8-25
Optimierung von
Schaltnetzen
Quine-McCluskey-Methode
Tabellarische Methode zur systematischen Bestimmung der Primimplikanten
ƒ(a, b, c ,d) = Σm(0, 4, 5, 6, 7, 8, 9, 10, 13, 15)
Schritt 1: trage in Spalte 1 die binär dargestellten
Indizes aller Einsstellen-Minterme von f,
sortiert nach Anzahl der Einsen, ein.
Implikantentabelle
Spalte 1
0000
0100
1000
0101
0110
1001
1010
0111
1101
1111
Folie 8-26
Optimierung von
Schaltnetzen
Quine-McCluskey-Methode
Tabellarische Methode zur systematischen Bestimmung der Primimplikanten
ƒ(a, b, c ,d) = Σm(0, 4, 5, 6, 7, 8, 9, 10, 13, 15)
Schritt 1: trage in Spalte 1 die binär dargestellten
Indizes aller Einsstellen-Minterme von f,
sortiert nach Anzahl der Einsen, ein.
Implikantentabelle
Spalte 1
0000 √
Schritt 2: fasse Terme zusammen:
Vergleiche Elemente von Gruppen mit n
und n+1 Einsen. Ist nur 1 Bit verschieden,
sind sie benachbart. Eliminiere Variable
und trage Term in nächste Spalte ein.
z.B.: 0000 und 0100 ergibt 0-00
0000 und 1000 ergibt -000
Markiere zusammengefasste Terme mit √,
nicht zusammengefasste mit *. Mit *
markierte Terme sind Primimplikanten,
0100 √
1000 √
0101
0110
1001
1010
√
√
√
√
0111 √
1101 √
1111 √
Spalte 2
0-00
-000
01001-0
10010-0
01-1
-101
0111-01
-111
11-1
Wiederhole, bis keine Terme mehr
zusammengefasst werden können.
Folie 8-27
Optimierung von
Schaltnetzen
Quine-McCluskey-Methode
Tabellarische Methode zur systematischen Bestimmung der Primimplikanten
ƒ(a, b, c ,d) = Σm(0, 4, 5, 6, 7, 8, 9, 10, 13, 15)
Schritt 1: trage in Spalte 1 die binär dargestellten
Indizes aller Einsstellen-Minterme von f,
sortiert nach Anzahl der Einsen, ein.
Implikantentabelle
Spalte 1
0000 √
Schritt 2: fasse Terme zusammen:
Vergleiche Elemente von Gruppen mit n
und n+1 Einsen. Ist nur 1 Bit verschieden,
sind sie benachbart. Eliminiere Variable
und trage Term in nächste Spalte ein.
z.B.: 0000 und 0100 ergibt 0-00
0000 und 1000 ergibt -000
Markiere zusammengefasste Terme mit √,
nicht zusammengefasste mit *. Mit *
markierte Terme sind Primimplikanten,
0100 √
1000 √
0101
0110
1001
1010
√
√
√
√
0111 √
1101 √
1111 √
Spalte 2
0-00 *
-000 *
Spalte 3
01-- *
-1-1 *
01001-0
10010-0
√
√
*
*
01-1
-101
0111-01
√
√
√
*
-111 √
11-1 √
Wiederhole, bis keine Terme mehr
zusammengefasst werden können.
Folie 8-28
Bestimmung der Primimplikanten
Optimierung von
Schaltnetzen
Nachteil dieser Methode:
Ausgangspunkt ist die kanonische DNF (oder kanonische KNF). Die Anzahl der
Minterme bzw. Maxterme einer Funktion wächst im allgemeinen exponentiell
mit der Anzahl der Variablen. Rechenzeit! Speicherbedarf!
Folie 8-29
Bestimmung der Primimplikanten
Optimierung von
Schaltnetzen
Wie bestimmt man alle Primimplikanten, wenn eine (nicht-kanonische) DNF
oder KNF gegeben ist?
Bei der Berechnung von Conss* wurde die Rechenregel
x'y + xy = x'y + xy + y
benutzt.
Beobachtung: dies ist ein Spezialfall der sog. "Konsensusregel"
x'y + xz = x'y + xz + yz
(Spezialfall: y = z.)
Dualer Fall: (x' + y)(x + z) = (x' + y)(x + z)(y + z)
(bekannt aus der Vorlesung Logik als Resolutionsregel der
Aussagenlogik, bzw. siehe Anhang A.)
Folie 8-30
Optimierung von
Schaltnetzen
Bestimmung der Primimplikanten
Erkenntnis: der aus der Aussagenlogik bekannte Resolutionskalkül hat in der
Digitaltechnik noch eine andere nützliche Interpretation:
Bestimmung aller Primimplikanten oder Primimplikate ausgehend von einer
beliebigen DNF bzw. KNF
In Aussagenlogik und Digitaltechnik sind unterschiedliche Begriffe
gebräuchlich, obwohl die zugrunde liegenden Formalismen oft identisch sind.
x'y + xz = x'y + xy + yz
(x' + y)(x + z) = (x' + y)(x + z)(y + z)
"Konsensusterm"
"Resolutionsregel" oder "Konsensusregel"
Folie 8-31
Aussagenlogik und Digitaltechnik
Aussagenlogik
Optimierung von
Schaltnetzen
Digitaltechnik
"Resolutionsregel"
"Konsensusregel"
Darstellung grundlegender
Konzepte in der Literatur
meist auf Basis von KNF
Darstellung grundlegender
Konzepte in der Literatur
meist auf Basis von DNF
"Resolutionskalkül"
"Verfahren des iterativen Konsensus"
"Resolvente"
"Konsensusterm"
ziehe alle Schlussfolgerungen
berechne Primimplikanten
(oder Primimplikate)
Folie 8-32
Verfahren des iterativen Konsensus
Optimierung von
Schaltnetzen
Schreibweise: wir betrachten eine Funktion f dargestellt als DNF. Die Menge der in
dieser DNF-Darstellung enthaltenen Monome bezeichnen wir im folgenden
ebenfalls mit "f".
Wdh.:
(s. Anhang A)
Res(f) = f ∪ {r | r ist Resolvente zweier Klauseln in f}
dualer Fall:
Cons(f) = f ∪ {r | r ist Konsensusterm zweier Monome in f}
also:
Cons(f) = f ∪ {yz | es existieren zwei Monome von der Form
x'y und xz in f}
Cons*(f) sei analog zu Conss*(f) definiert. Dann enthält Cons*(f) alle
Primimplikanten von f.
Folie 8-33
Verfahren des iterativen Konsensus
Optimierung von
Schaltnetzen
Berechnung der Primimplikanten einer Funktion f, die als DNF dargestellt ist:
1. berechne die Konsensusterme für alle bislang noch nicht untersuchten
Paare von Produkttermen und füge sie zur SOP hinzu
2. streiche alle Terme, die von anderen Termen überdeckt werden.
wiederhole 1. und 2., bis keine neuen Konsensusterme mehr entstehen.
Die Produktterme der DNF sind dann die Primimplikanten von f.
Entspricht Resolutionskalkül der Aussagenlogik!
Folie 8-34
Überdeckungsproblem
Optimierung von
Schaltnetzen
Quine-McCluskey-Methode
Phase 2: Lösung des Überdeckungsproblems:
gegeben: die Einsstellenminterme und die Primimplikanten der Funktion f
gesucht: eine Menge von Primimplikanten, die alle Einsstellen und keine
Nullstellen der Funktion bei optimalen Kosten überdeckt
Lösung:
mittels Überdeckungsmatrix:
Die Überdeckungsmatrix A = (aij) ist eine Matrix, die angibt, wie die
Einsstellenminterme mi der Funktion f von den Primimplikanten pj überdeckt
werden. Jede Spalte der Matrix entspricht einem Einsstellenminterm mi von f und
jede Zeile entspricht einem der Primimplikanten pj von f. Ein Element aij der
Matrix hat den Eintrag x, falls mi von pj überdeckt wird. Sonst hat A keine
Einträge.
Folie 8-35
Optimierung von
Schaltnetzen
Überdeckungsproblem
Beispiel:
zu überdeckende Minterme: m4, m5, m6, m8, m9, m10, m13
(wir wollen also in diesem Fall nicht alle Minterme aus dem
vorigen Beispiel überdecken, dazu später mehr)
Primimplikanten: wie im vorigem Beispiel
0-00
-000
10010-0
1-01
01--1-1
4
x
5
6
8
9
x
x
x
x
x
x
13
x
x
x
10
x
x
x
Überdeckungsmatrix
Folie 8-36
Optimierung von
Schaltnetzen
Überdeckungsproblem
Lösung des Überdeckungsproblems durch Überdeckungsmatrix
0-00
-000
10010-0
1-01
01--1-1
4
x
5
6
8
9
x
x
x
x
x
x
13
x
x
x
10
x
x
x
Beobachtung: m6 und m10 werden nur von den Primimplikanten 10-0 und 01-überdeckt. Sie müssen also notwendigerweise in jeder Überdeckung enthalten
sein.
Definition: (Kernimplikant)
Wird eine Einsstelle nur von einem einzigen Primimplikanten überdeckt,
heißt dieser Kernimplikant.
streiche Kernimplikanten
Folie 8-37
Optimierung von
Schaltnetzen
Überdeckungsproblem
Lösung des Überdeckungsproblems durch Überdeckungsmatrix
0-00
-000
10010-0
1-01
01--1-1
4
x
5
6
8
9
x
x
x
x
10
x
x
x
x
x
13
x
x
x
streiche von Kernimplikanten überdeckte Minterme
Dies ist die 1. Regel zur Reduktion der Überdeckungsmatrix
Folie 8-38
Optimierung von
Schaltnetzen
Überdeckungsproblem
Lösung des Überdeckungsproblems durch Überdeckungsmatrix
pj
pi
0-00
-000
10010-0
1-01
01--1-1
4
x
5
6
8
9
x
x
x
x
10
x
x
x
x
x
13
x
x
x
2. Regel zur Reduktion einer Überdeckungsmatrix
Zeilendominanz
Sei pi eine Zeile, die alle Einträge einer Zeile pj enthält. Außerdem seien die
Kosten für pi nicht größer als die Kosten für pj. Dann kann die Zeile pj
entfernt werden.
(Kosten eines Primimplikanten: Anzahl der Literale)
Folie 8-39
Optimierung von
Schaltnetzen
Überdeckungsproblem
3. Regel zur Reduktion einer Überdeckungsmatrix: Spaltendominanz
Hat eine Spalte si einer Überdeckungsmatrix in allen Zeilen einen Eintrag, für die
auch eine Spalte sj einen Eintrag besitzt, dann wird Spalte si von Spalte sj dominiert
und kann entfernt werden.
0-00
-000
10010-0
1-01
01--1-1
4
x
5
6
8
9
x
x
x
x
x
x
13
x
x
x
10
x
x
x
Beachte: In diesem Beispiel bestimmen die Reduktionsregeln allein bereits
eindeutig eine Menge von Primimplikanten, die alle Einsstellenminterme
überdecken. Im allgemeinen können jedoch nicht überdeckte Einsstellen
übrigbleiben. Es müssen dann alle möglichen Überdeckungen untersucht
und die günstigste identifiziert werden.
(⇒ Algorithmen zur Lösung von Überdeckungsproblemen)
Folie 8-40
Optimierung von
Schaltnetzen
Überdeckungsproblem
noch ein Beispiel:
1
2
3
4
5
6
1
X
X
2
X
X
3
4
X
X
X
X
X
X
5
6
X
X
X
X
X
Annahme:
Kosten für 1 und 3 kleiner als Kosten für 2
Kosten für 4 gleich Kosten für 5
Folie 8-41
Optimierung von
Schaltnetzen
Überdeckungsproblem
1
2
3
4
5
6
1
X
X
2
X
X
3
4
X
X
X
X
X
X
⇓
Annahme:
Kosten für 1 und 3
kleiner als Kosten für 2 1
2
Kosten für 4 gleich
3
Kosten für 5
4
5
2
X
X
3
5
X
X
X
X
5
6
X
X
X
X
X
Das Überdeckungsproblem ist ein
"Standardproblem" der Informatik,
für dessen Lösung eine Reihe von
Algorithmen existieren.
Zeilendominanz
nach iterativer Anwendung aller Reduktionsregeln
keine weitere Vereinfachung möglich!
Folie 8-42
Boolesche Würfel
Optimierung von
Schaltnetzen
Im folgenden werden wir Boolesche Funktionen durch Würfel beschreiben. Es wird
eine spezielle Darstellung Boolescher Würfel, sog. Karnaugh-Veitch (KV)Diagramme, eingeführt.
Beachte !!
KV-Diagramme dienen hauptsächlich der Veranschaulichung der vorstehend
beschriebenen Vorgehensweise. Industrielle Optimierungsverfahren beruhen nicht
auf KV-Diagrammen! Stattdessen verwenden sie abgewandelte Versionen der
Quine-McCluskey-Methode, die nicht immer das exakte Minimum finden, dafür
aber gegenüber der exakten Methode Rechenzeit einsparen.
KV-Diagramme eignen sich also nicht als Grundlage für CAD-Werkzeuge. Sie
erlauben uns allenfalls, manuell kleine Beispiel mit bis zu 6 Variablen zu
untersuchen.
Folie 8-43
Optimierung von
Schaltnetzen
Boolesche Würfel
0
1
XYZ
111
011
X
1-dimensionaler Würfel
010
XY
11
01
110
Y
Y
00
noch eine Möglichkeit
zur Darstellung einer
Booleschen Funktion
001
Z
101
000
10
100
X
X
n Eingangsvariable ⇒
n-dimensionaler „Würfel“
3-dimensionaler Würfel
2-dimensionaler Würfel
WXYZ
1011
1111
0111
0011
1010
1110
0010
0110
Y
1001
0101
0001
1101
Z
1100
W
0000
X
1000
0100
4-dimensionaler Würfel
Folie 8-44
Optimierung von
Schaltnetzen
Boolesche Würfel
Boolesche Funktion: Abbildung der Punkte des Booleschen Raums auf 1 oder 0
Einsstellenmenge : ausgefüllte Knoten
Nullstellenmenge: nicht ausgefüllte Knoten
Würfel der Dimension 1
f
01
11
a ist 1
b variiert
b
00
10
g = (a + a')b' = b'
a
f = a(b + b') = a
g
01
11
b
a variiert
b ist 0
00
10
a
Folie 8-45
Optimierung von
Schaltnetzen
Boolesche Würfel
Beispiel mit 3 Variablen: Carry-Out des Volladdierers
(a' + a)bcin
011
a b cin
cout
0
0
1
1
0
0
1
1
0
0
0
1
0
1
1
1
0
0
0
0
1
1
1
1
0
1
0
1
0
1
0
1
111
010
110
001
b
101
cin
000
a
ab(cin' + cin)
Die Einsstellenmenge
wird von Teilwürfeln
niedrigerer Dimension
überdeckt
100
a(b + b')cin
cout = bcin + ab + acin
Folie 8-46
Optimierung von
Schaltnetzen
Boolesche Würfel
Teilwürfel mit Dimension größer 1
f(a,b,c) = Σm(4,5,6,7)
011
111
Einsstellenmenge bildet eine rechteckige Fläche,
d.h. einen zweidimensionalen Würfel
010
110
b
stellt einen Ausdruck mit einer Variablen dar
(3 Dimensionen - 2 Dimensionen)
001
101
c
000
a
100
a ist 1
b und c variieren
Diesen Teilwürfel
repräsentiert der Implikant a
Folie 8-47
Boolesche Würfel
Optimierung von
Schaltnetzen
in einem 3-dimensionalen Booleschen Raum:
entspricht ein 0-dimensionaler Würfel einem Produktterm mit 3 Literalen
entspricht ein 1-dimensionaler Würfel einem Produktterm mit 2 Literalen
entspricht ein 2-dimensionaler Würfel einem einzelnen Literal
entspricht ein 3-dimensionaler Würfel dem konstanten Term 1
allgemein:
ein m-dimensionaler Teilwürfel in einem n-dimensionalen booleschen
Raum (n-dimensionaler Würfel) (m < n) entspricht einem Produktterm mit
n - m Literalen
Optimierungsstrategie:
fasse alle Einsstellen (und keine Nullstellen) in möglichst
wenig Teilräumen mit möglichst großer Dimension zusammen
Folie 8-48
Boolesche Würfel
Optimierung von
Schaltnetzen
Stellt man Boolesche Funktionen als Mengen von Würfeln im Booleschen Raum
dar, ergibt sich aus der Anschauung die folgende Optimierungsstrategie
Optimierungsstrategie:
1) fasse alle Einsstellen (und keine Nullstellen) in möglichst
wenig Teilräumen mit möglichst großer Dimension zusammen
→ diese entsprechen den Primimplikanten der Funktion
2) bestimme eine Menge von Würfeln, die alle Einsstellen kostenminimal
überdeckt
Anschaulich, aber schwierig: Würfel mit mehr als 3 Dimensionen kann man nicht
zeichnen!
Ein KV-Diagramm ist eine modifizierte Würfeldarstellung, die für bis zu 6
Dimensionen praktikabel ist.
Folie 8-49
Optimierung von
Schaltnetzen
Kanaugh-Veitch (KV)-Diagramme (K-map)
a
0
b
KV-Diagramm
mit 2 Variablen
1
1
00
cd
0
0
1
a
ab
2
00
01
11
10
0
4
12
8
1
5
13
9
3
7
15
11
2
6
14
10
3
01
a
ab
c
KV-Diagramm
mit 3 Variablen
00
01
11
11
10
10
0
1
c
0
2
6
4
1
3
7
5
b
d
KV-Diagramm
mit 4 Variablen
b
Zählschema: 00, 01, 11, 10
(Gray Code — nur ein Bit ändert sich von einem
Codewort zum nächsten)
KV-Diagramme können auf unterschiedliche Weise gezeichnet werden!
(siehe Übung)
Folie 8-50
Optimierung von
Schaltnetzen
KV-Diagramme
ab
00
c
01
11
111
011
a
10
010
0
000
010
110
100
1
001
011
111
101
110
b
001
101
c
b
000
a
100
"Abwickeln" eines Würfels
in KV-Diagramm
Folie 8-51
Optimierung von
Schaltnetzen
KV-Diagramme
a
0
1
0
0
1
1
0
1
b
a
0
1
0
1
1
1
0
0
b
a fest
b variiert
b fest
a variiert
f=a
g = b'
a
ab
00
cin
01
11
c
0
1
0
0
0
1
1
1
b
cout = ab + bcin + acin
a
ab
10
00
01
11
10
0
0
0
1
1
1
0
0
1
1
0
1
b
f(a, b, c) = a
Folie 8-52
Optimierung von
Schaltnetzen
KV-Diagramme
a
ab
01
00
c
0
1
0
0
1
11
0
0
2
4
1
3
f(a, b, c) = Σm(0,4,5,7)
1
6
0
1
10
1
7
5
b
ab
c
f = b'c' + ac
Im KV-Diagramm reichen Nachbarschaften
auch von links nach rechts und von oben
nach unten
a
00
01
11
10
0
0
1
1
0
1
1
0
1
1
2
0
3
6
7
0
f': ersetze Einsstellen durch Nullstellen
4
f'(a, b, c) = Σm(1,2,3,6)
5
f' = bc' + a'c
b
Folie 8-53
Optimierung von
Schaltnetzen
KV-Diagramme
a
ab
00
01
11
10
00
1
0
0
1
01
0
1
0
0
cd
f(a, b, c, d) = Σm(0, 2, 3, 5, 6, 7, 8, 10, 11, 14, 15)
f = c + a'bd + b'd'
überdecke die Einsstellen
mit möglichst wenigen und
möglichst großen Teilwürfeln
d
11
1
1
1
1
10
1
1
1
1
c
b
1011
1111
0111
0011
1010
1110
0010
0110
1001
c
d
0000
1100
a
b
1101
0101
0001
Illustration von Nachbarschaften
in 4-dimensionalem KV-Diagramm
1000
0100
Folie 8-54
Optimierung von
Schaltnetzen
KV-Diagramme
bc
bc
de
00
a =0
01
01
11
10
0
4
12
8
1
11
10
00
5
3
7
2
6
13
15
14
a=0
9
1
01
11
10
00
01
11
16
20
28
17
19
18
1
1
bc
de
00
10
1
1
10
10
11
1
11
11
01
1
01
bc
a =1
00
de
00
21
23
22
29
31
30
24
a=1
26
KV-Diagramm mit 5 Variablen
11
1
01
11
10
1
1
1
01
25
27
00
de
00
10
1
1
1
10
ƒ(a,b,c,d,e) = Σm(2,5,7,8,10,
13,15,17,19,21,23,24,29 31)
= ce + ab'e + bc'd'e'
+ a'c'de'
Folie 8-55
Optimierung von
Schaltnetzen
KV-Diagramm
cd
ef
cd
ef
00
ab =00
01
01
11
10
0
4
12
8
1
11
10
00
5
3
7
2
6
13
15
14
11
00
ab =01
01
11
10
01
11
16
20
28
19
18
21
23
22
11
10 1
cd
ef
00
00
ab =01
29
31
30
10
24
25
27
ƒ(a, b, c, d, e, f) =
Σm(2,8,10,18,24,26,34,
37,42,45,50,53,58,61)
ab =11
01
11
10
01
11
48
52
60
49
51
50
53
55
54
61
63
62
10
ab =10
00
01
10 1
11
10
35
34
1
32
36
44
37
39
38
45
47
46
10
40
43
42
1
01
10
41
01
11
10
1
11
58
11
00
00
ab =11
56
59
01
33
= d'ef' + ade'f+ a'cd'f'
57
00
10
1
cd
cd
ef
11
11
26
00
01
01
cd
00
1
ef
ef
10
1
10
00
17
11
01
cd
ef
01
00
ab =00
KV-Diagramm
mit 6 Variablen
9
00
Selbst für geübte
Designer wird es jetzt
unübersichtlich!
1
1
cd
ef
00
01
11
00
ab =10
01
1
1
11
10
1
1
Folie 8-56
10
Unvollständig spezifizierte Funktionen
Optimierung von
Schaltnetzen
Funktionen mit n Variablen haben 2n mögliche Eingangsbelegungen.
Für eine gegebene Funktion können möglicherweise nicht alle
Kombinationen auftreten oder nicht alle Kombinationen sind von
Interesse. Dies kann bei der Minimierung ausgenutzt werden!
z.B.: Inkrementieren einer binär kodierten Dezimalziffer (BCD)
BCD (binary coded decimal)-Ziffern kodieren
die Dezimalziffern 0 - 9 mit den Bitmustern
00002 - 10012
a
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
b
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
c
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
d
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
w
0
0
0
0
0
0
0
1
1
0
X
X
X
X
X
X
x
0
0
0
1
1
1
1
0
0
0
X
X
X
X
X
X
y
0
1
1
0
0
1
1
0
0
0
X
X
X
X
X
X
z
1
0
1
0
1
0
1
0
1
0
X
X
X
X
X
X
Nullstellenmenge von w
Einsstellenmenge von w
Don't care-Menge (DC) von w
Diese Eingangsbelegungen sollten in
der Praxis nicht auftreten, der
zugehörige Ausgangswert ist „don‘t care“.
Folie 8-57
Unvollständig spezifizierte Funktionen
Optimierung von
Schaltnetzen
Wie berücksichtigt man die DC-Menge bei der zweistufigen Minimierung?
DCs können wie 0 oder 1 behandelt werden, je nachdem was vorteilhafter ist
⇒ bei der Berechnung von Primimplikanten: behandle DCs wie Einsstellen,
dadurch entstehen mehr Möglichkeiten zur Überdeckung der "echten" Einsstellen
⇒ bei der Lösung des Überdeckungsproblems: behandle DCs wie Nullstellen
Beispiel:
Kurzschreibweise für DC-Minterme
ƒ(a, b, c, d) = Σm(4, 5, 6, 8, 9, 10, 13) + Σd(0, 7, 15)
wird bei der Berechnung der Primimplikanten behandelt wie
ƒ(a, b ,c ,d) = Σm(0, 4, 5, 6, 7, 8, 9, 10, 13, 15)
wird bei der Lösung des Überdeckungsproblems behandelt wie
ƒ(a, b, c, d) = Σm(4, 5, 6, 8, 9, 10, 13)
vgl. Beispiel zur QuineMcCluskey-Methode!
Folie 8-58
Optimierung von
Schaltnetzen
Zweistufige Minimierung mit DCs
Entwurfsbeispiel: BCD-Inkrementierer
a
ab
00
01
11
10
00
0
0
X
1
01
0
0
X
0
cd
w
a
ab
d
11
0
1
X
X
10
0
0
X
X
00
01
11
10
00
0
1
X
0
01
0
1
X
0
cd
x
c
d
11
1
0
X
X
10
0
1
X
X
c
b
b
a
ab
00
01
11
10
00
0
0
X
0
01
1
1
X
0
cd
y
a
ab
d
11
0
0
X
X
10
1
1
X
X
c
00
01
11
10
00
1
1
X
1
01
0
0
X
0
cd
z
d
11
0
0
X
X
10
1
1
X
X
c
b
b
Folie 8-59
Optimierung von
Schaltnetzen
Zweistufige Minimierung mit DCs
a
ab
00
01
11
10
00
0
0
X
1
01
0
0
X
0
cd
w
a
ab
d
11
0
1
X
X
10
0
0
X
X
00
01
11
10
00
0
1
X
0
01
0
1
X
0
cd
x
c
d
11
1
0
X
X
10
0
1
X
X
c
b
b
a
ab
00
01
11
10
00
0
0
X
0
01
1
1
X
0
cd
y
a
ab
d
11
0
0
X
X
10
1
1
X
X
c
00
01
11
10
00
1
1
X
1
01
0
0
X
0
cd
z
d
11
0
0
X
X
10
1
1
X
X
c
b
w = bcd + ad'
x = bc' + bd' + b'cd
b
y = a'c'd + cd'
z = d'
Folie 8-60
Heuristiken
Optimierung von
Schaltnetzen
Viele Minimierungsprobleme lassen sich in der Praxis aufgrund zu hohen
Rechenaufwands nicht exakt lösen.
Es werden deshalb Verfahren verwendet, die auf den Anspruch verzichten, stets die
optimale Lösung zu finden. Dafür können solche Verfahren aber wesentlich
schneller sein. Durch geschicktes Raten oder durch eine aus der Anschauung
begründbare Strategie werden Lösungen ermittelt, die dem Optimum möglichst
nahe sind. Solche Ratestrategien werden auch als "Heuristiken" bezeichnet.
Heuristiken können auch innerhalb eines exakten Verfahrens angewendet werden,
um die theoretische worst-case-Komplexität des Verfahrens so oft wie möglich zu
vermeiden.
Beispiel: Mengenüberdeckungsproblem
Zur Bestimmung der minimalen Überdeckung wähle immer die größte noch
verfügbare Teilmenge aus.
"Greedy-Heuristik" (engl. greedy: gierig, gefräßig, habgierig)
Folie 8-61
CAD-Werkzeuge für
die zweistufige Minimierung
Optimierung von
Schaltnetzen
ESPRESSO-Methode
Problem bei Quine-McCluskey: Komplexität
• Anzahl der Primimplikanten kann exponentiell mit Anzahl der
Eingangsvariablen wachsen.
• Rechenaufwand zur Lösung des Überdeckungsproblems kann exponentiell
mit der Größe der Überdeckungsmatrix wachsen.
ESPRESSO: höhere Rechengeschwindigkeit, aber nur heuristische
(näherungsweise) Lösung
• generiert nicht alle Primimplikanten
• wählt eine Hülle (Menge von Implikanten, die alle Einsstellen überdecken)
als Ausgangsbasis
• löst Überdeckungsproblem durch lokale Modifikationen der Hülle
Folie 8-62
CAD-Werkzeuge für
die zweistufige Minimierung
Optimierung von
Schaltnetzen
Public domain Werkzeug ESPRESSO: Eingabe und Ausgabe
ƒ(A,B,C,D) = ∑ m(4,5,6,8,9,10,13) + d(0,7,15)
Eingabe für ESPRESSO
.i 4
.o 1
.ilb a b c d
.ob f
.p 10
0100 1
0101 1
0110 1
1000 1
1001 1
1010 1
1101 1
0000 0111 1111 .e
-- # inputs
-- # outputs
-- input names
-- output name
-- number of product terms
-- a'bc'd'
-- a'bc'd
-- a'bcd'
-- ab'c'd'
-- ab'c'd
-- ab'cd'
-- abc'd
-- a'b'c'd' don't care
-- a'bcd don't care
-- abcd don't care
-- end of list
Ausgabe von ESPRESSO
.i 4
.o 1
.ilb a b c d
.ob f
.p 3
1-01 1
10-0 1
01-- 1
.e
ƒ = ac'd + ab'd' + a'b
Folie 8-63
Optimierung von
Schaltnetzen
ESPRESSO
Beispiel: lokale Modifikation der Hülle
a
ab
00
01
11
10
00
1
1
0
0
01
1
1
1
1
cd
a
ab
00
01
11
10
00
1
1
0
0
01
1
1
1
1
cd
d
11
0
0
1
d
1
c
11
0
0
1
1
10
1
1
1
1
c
10
1
1
1
1
b
Ausgangssituation
4 Primimplikanten, keine
redundanten Terme!
(Hülle ist „prim“ und „irredundant“)
b
„reduziere“
Implikanten
(aber so, dass immer noch
alle Einsstellen überdeckt sind)
Folie 8-64
Optimierung von
Schaltnetzen
ESPRESSO
Beispiel (Forts.): lokale Modifikation der Hülle
a
ab
00
01
11
10
00
1
1
0
0
01
1
1
1
1
cd
a
ab
00
01
11
10
00
1
1
0
0
01
1
1
1
1
cd
d
11
0
0
1
d
1
c
11
0
0
1
1
10
1
1
1
1
c
10
1
1
1
b
„Expandiere“ zu (anderen)
Primimplikanten
1
b
Ein Primimplikant wird redundant
und kann aus der Hülle entfernt
werden.
jetzt nur 3 Primimplikanten!
Folie 8-65
Optimierung von
Schaltnetzen
ESPRESSO
ESSPRESSO-Heuristik
Try-and-Error-Methode:
- reduziere Würfel (beseitige Überlappungen)
- expandiere Würfel (möglichst in eine andere Richtung
als die, aus der vorher reduziert wurde)
- entferne redundante Würfel
wiederhole diesen Vorgang viele Male,
behalte die beste erzeugte Lösung
Wie überprüft man, ob ein Würfel in eine bestimmte Richtung reduziert bzw.
expandiert werden kann? Abbildung auf Tautologieproblem! (Dualfall des SATProblems).
Innerhalb von ESPRESSO wird also viele Male das Tautologieproblem gelöst.
Folie 8-66
Mehrstufige Schaltungen
Optimierung von
Schaltnetzen
Zweistufige Schaltungen bestehen aus zwei Gatterebenen,
z.B.: AND-OR, OR-AND, NAND-NAND, NOR-NOR
In mehrstufigen Schaltungen bestehen keine (prinzipiellen)
Einschränkungen hinsichtlich
- Zahl der Gatterebenen
- Wahl der Gattertypen
⇒ die bisher betrachteten Entwurfs- und Optimierungsverfahren sind für
mehrstufige Schaltungen nicht ausreichend
Folie 8-67
Optimierung von
Schaltnetzen
Mehrstufige Schaltlogik
optimierter SOP-Ausdruck:
x = adf + aef + bdf + bef + cdf + cef + g
6 x 3-fach AND-Gatter, 1 x 7-fach OR-Gatter (zu hoher Fanin!)
25 Leitungen (19 Literale und 6 interne Verbindungen)
a
d
f
a
e
f
b
d
f
b
e
f
c
d
f
c
e
f
g
1
2
a
b
c
1
3
d
e
2
7
4
5
6
x
3
4
x
f
g
faktorisierter Ausdruck:
x = (a + b + c) (d + e)f + g
1 x 3-fach OR-Gatter, 2 x 2-fach OR Gatter,
1 x 3-fach AND-Gatter
10 Leitungen (7 Literale plus 3 interne Verbindungen)
Folie 8-68
Mehrstufige Schaltlogik
Optimierung von
Schaltnetzen
Optimierung mehrstufiger Schaltungen
Optimierungsziel: mehrstufige Gatternetzliste mit möglichst wenig Gattern und
möglichst kleinen Fanins.
Im Unterschied zum zweistufigen Fall existiert bei mehrstufigen Schaltungen keine
einheitliche Sichtweise auf das Optimierungsproblem. Es kommt eine Vielfalt von
Heuristiken zum Einsatz. Ziel ist es meist "geschickte" Faktorisierungen zu finden,
die zu kompakten Ausdrücken führen. Außerdem sollen möglichst große
Teilausdrücke für mehrere Schaltungsausgänge gleichzeitig verwendet werden.
Manche Algorithmen führen die Faktorisierung auf ein Minimierungsproblem für
zweistufige Schaltungen zurück.
Folie 8-69
Optimierung von
Schaltnetzen
Mehrstufige Schaltlogik
Optimierung:
Minimiere Anzahl der Literale (technologieunabhängig):
faktorisiere so aus, dass Gatter und Verbindungen eingespart werden und dass
Schaltlogik mehrfach benutzt werden kann, beachte zeitliche Anforderungen
(Faktorisierung reduziert meist Fanin, erhöht aber Anzahl der Schaltungsebenen)
Faktorisierte Form:
Summe von Produkten von Summen von Produkten . . .
a
•
b
b'
+
x = (ab + b'c) (c + d(e + ac')) + (d + e)(fg)
•
c
a
•
c'
y = (d + e)(fg) + h
+ f3
•
f1
f
+
g
d
e
h
•
c
d
e
faktorisierte Form:
f2
+
f4
•
x
f6 = (d + e)(fg)
• f6
+f
5
gemeinsam nutzbare Schaltlogik:
+
y
Folie 8-70
Verknüpfungsbasen
Optimierung von
Schaltnetzen
Wahl von Gattertypen zur Implementierung
Nach dem Hauptsatz der Schaltalgebra läßt sich jede beliebige Schaltfunktion
durch die drei Grundverknüpfungen {AND, OR, NOT} eindeutig darstellen.
{AND, OR, NOT} ist eine Verknüpfungsbasis oder ein Basissystem der
zweiwertigen Booleschen Algebra.
weitere wichtige Basissysteme (siehe Anhang A):
{NAND}, {NOR}, {AND, NOT}, {OR, NOT}, {AND, XOR, 1}
Eine Gatterbibliothek, die als Grundlage für die Schaltungsimplementierung
dienen soll, muss mindestens eines dieser Basissysteme enthalten.
Die Basissysteme {NAND} und {NOR} sind aus technischen Gründen (siehe
Kap. 7) besonders wichtig!
Folie 8-71
Optimierung von
Schaltnetzen
Wahl des Gattertypen
NAND- und NOR-Netzwerke
DeMorgan's Gesetz:
(a + b)' = a'·b'
(a·b)' = a' + b'
andere Schreibweise: a + b = (a' · b')'
(a·b) = (a' + b')'
"Bubble" bedeutet Negation
OR/NAND-Äquivalenz
a
0
0
1
1
a b b
1 0 1
1 1 0
0 0 1
0 1 0
a +b
0
1
1
1
a· b
0
1
1
1
a +b
1
1
1
0
a · b
1
1
1
0
a
b
= a
a
b
=
b
a
b
Folie 8-72
Optimierung von
Schaltnetzen
Wahl des Gattertypen
AND/NOR-Äquivalenz
a
0
0
1
1
a b b
1 0 1
1 1 0
0 0 1
0 1 0
a · b
0
0
0
1
a+b
0
0
0
1
a · b
1
0
0
0
a +b
1
0
0
0
a
b
=
a
b
a
b
=
a
b
Netzwerke
Netzwerkebestehend
bestehendaus
ausANDs
ANDsund
undORs
ORs
können
könnenalso
alsodurch
durchEinfügen
Einfügengeeigneter
geeigneterInverter
InverterininNetzwerke,
Netzwerke,
die
diejeweils
jeweilsnur
nuraus
ausNANDs
NANDsoder
oderNORs
NORsbestehen,
bestehen,umgewandelt
umgewandelt
werden.
(Manuelles
Verfahren:
"Bubble-Methode")
werden. (Manuelles Verfahren: "Bubble-Methode")
Folie 8-73
Optimierung von
Schaltnetzen
Wahl des Gattertypen
Beispiel: bilde AND/OR-Netzwerk auf NAND/NAND-Netzwerk ab
NAND
a
a
b
b
z
c
d
NAND
z
NAND
c
d
Eine DNF kann also durch NAND-Gatter implementiert werden, indem im
zugehörigen AND/OR-Netzwerk alle Gatter durch NAND-Gatter ersetzt werden.
dualer Fall:
KNF lässt sich unmittelbar durch NOR-Gatter implementieren, indem
alle Gatter durch NOR-Gatter ersetzt werden
Folie 8-74
Optimierung von
Schaltnetzen
Mehrstufige Schaltlogik
Beispiel
f = a(b + cd) + bc'
ursprüngliches
AND-OR-Netzwerk
Einfügen von 2 Invertern
vor OR-Gattern,
1 Inverter wird
zurückgeschoben
mit NAND-Gattern
neuzeichnen
Einfügen von 2 Invertern vor ORGattern → NAND-Netzwerk
Ebene 1
c
d
b
a
b
c'
c
d
b
a
b
c'
c
d
b'
a
b
c'
G1
Ebene 2
Ebene 3
Ebene 4
G3
G4
G5
f
G4
G5
f
G2
G1
G3
G2
G1
G3
G4
G5
G2
Folie 8-75
f
Mehrstufige Schaltlogik: mehr als zwei Ebenen
Optimierung von
Schaltnetzen
noch ein Beispiel: Umwandlung in NAND-Netzwerk
a
b
c
a
f
x
b
c
f
x
d
d
(a) ursprüngliche Schaltung
(b) einfügen von Doppelinvertern
a
x
a
b
c
f
x'
d'
(c)
b
c
f
x'
d'
verteile Inverter,
Konflikte möglich
(d) füge Inverter ein, um Konflikte
zu lösen
Folie 8-76
Wahl des Gattertypen
Optimierung von
Schaltnetzen
Die Wahl der Gattertypen in einer kombinatorischen Schaltung hat großen Einfluss
auf die Qualität der Implementierung. Es sind unterschiedliche Bausteine zur
Implementierung verschiedener Gatterfunktionen im Handel erhältlich.
Für den Entwurf integrierter mikroelektronischer Schaltungen stellen die Hersteller
unterschiedliche "Zellen" (= Gatter) zur Verfügung, deren Implementierungskosten
hinsichtlich Fläche und Signallaufzeiten bekannt sind. Die von einem Halbleiterhersteller unterstützten Zellen werden in einer Zellbibliothek zusammengefasst und
von den CAD-Werkzeugen berücksichtigt.
Für ein und denselben Gattertyp (z.B. Inverter) können mehrere Varianten zur
Verfügung stehen. Auf dem kritischen Pfad verwendet man Zellen, die möglichst
schnell sind, dafür aber mehr Fläche benötigen, abseits des längsten (kritischen)
Pfads können langsamere und kleinere Gatter zum Einsatz kommen.
Neben AND, OR, NOT, NAND, NOR, XOR, XNOR gibt es weitere Gatterbausteine, die komplexere Funktionen implementieren, sog. Komplexgatter.
Eine (möglichst) optimale Überdeckung der Schaltung durch die verfügbaren Zellen
einer Bibliothek zu bestimmen, ist Aufgabe des technology mappings.
Folie 8-77
Logiksynthese
Optimierung von
Schaltnetzen
"Logiksynthese":
Schritt 1: technologieunabhängige Optimierung (minimiere Anzahl der Literale)
Schritt 2: technology mapping (Wahl der Gattertypen)
Public Domain Synthesetool SIS (enthält auch ESPRESSO):
Die in SIS implementierten Algorithmen sind Kern weit verbreiteter kommerzieller
Synthesewerkzeuge (z.B. SYNOPSYS).
Datei beschreibt Volladdierer:
INORDER = a b ci;
OUTORDER = co sum;
co = a*b*ci + a*b!ci + a*!b*ci + !a*b*ci;
sum = a*b*ci + a*!b*!ci + !a*b*!ci + !a*!b*ci;
Folie 8-78
Logiksynthese
Optimierung von
Schaltnetzen
Beispiel: Optimierung eines Volladdierers mit SIS
% sis
UC Berkeley, SIS 1.3 (compiled Tue Apr 7 14:35:02 MET DST 1998)
sis> re full.adder
sis> p
"read equations"
{co} = a b ci + a b ci' + a b' ci + a' b ci
{sum} = a b ci + a b' ci' + a' b ci' + a' b' ci
sis> pf
{co} = a b' ci + b (ci (a' + a) + a ci')
{sum} = ci (a' b' + a b) + ci' (a b' + a' b)
zweistufige Minimierung
sis> sim1 *
("simplify")
sis> p
{co} = a b + a ci + b ci
{sum} = a b ci + a b' ci' + a' b ci' + a' b' ci
sis> pf
{co} = ci (b + a) + a b
{sum} = ci (a' b' + a b) + ci' (a b' + a' b)
sis> gd *
sis> pf
"good decomposition"
{co} = a [2] + b ci
{sum} = a' [3]' + a [3]
[2] = ci + b
[3] = b' ci' + b ci
bis jetzt technologieunabhängig!
Folie 8-79
Logiksynthese
sis> rlib msu.genlib
sis> map
sis> pf
[361] = b' ci' + a'
[328] = b'
[329] = ci'
{co} = [328]' [329]' + [361]'
[3] = b ci' + b' ci
{sum} = [3] a' + [3]' a
sis> pg
[361]
1890:physical 32.00
[328]
1310:physical 16.00
[329]
1310:physical 16.00
{co}
1890:physical 32.00
[3]
2310:physical 40.00
{sum} 2310:physical 40.00
sis> pat
... using library delay model
{sum} : arrival=( 2.2 2.2)
{co}
: arrival=( 2.2 2.2)
[328] : arrival=( 1.2 1.2)
[361] : arrival=( 1.2 1.2)
[329] : arrival=( 1.2 1.2)
[3]
: arrival=( 1.2 1.2)
ci
: arrival=( 0.0 0.0)
b
: arrival=( 0.0 0.0)
a
: arrival=( 0.0 0.0)
sis> quit
%
Optimierung von
Schaltnetzen
lese Gatterbibliothek ein und
führe Technologieabbildung durch
Gatter zur Implementierung
der verschiedenen Knoten
und ihr Flächenbedarf
Angabe des Zeitverhaltens
Einheitsverzögerung plus 0.2
Zeiteinheiten pro Nachfolgeknoten
("print arrival times")
Folie 8-80
Optimierung von
Schaltnetzen
Logiksynthese
Ergebnis der Optimierung mit SIS:
(VLSI Standardzellen-Entwurf)
[3]
b
ci
sum
2310
a
2310
a
b
ci
+
[361]
&
&
1890
[328]
+
co
1890
b
1310
[329]
ci
1310
Beachte: OR-AND-INVERT
äquivalent zu INVERT-AND-OR
Zellbibliothek ("msu.genlib")
Nummer Name
1310
inv
Funktion
A'
1120
1130
1140
nor2
nor3
nor4
(A+B)'
(A+B+C)'
(A+B+C+D)'
1220
1230
1240
nand2
nand3
nand4
(A• B)'
(A• B• C)'
(A• B• C• D)'
1660 and2/nand2 [A• B, (A• B)']
1670 and3/nand3 [A• B• C, (A• B• C)']
1680 and4/nand4 [A• B• C• D, (A• B• C• D)']
1760 or2/nor2
1770 or3/nor3
1780 or4
[A+B, (A+B)']
[A+B+C, (A+B+C)']
(A+B+C+D)
1870
1880
1860
1890
aoi22
aoi21
oai22
oai21
(A• B + C• D)'
(A + B• C)'
[(A + B)(C + D)]'
[A (B + C)]'
1970
1810
1910
1930
ao22
ao222
ao2222
ao33
A•
A•
A•
A•
2310 xor2
2350 xnor2
B + D• E
B + C• D + E• F
B + C• D + E• F + G• H
B• C + D• E• F
A• B' + A'• B
A• B + A'• B'
Folie 8-81
Technische Informatik I
Kapitel 9
Bausteine digitaler Entwürfe
Folie 9-1
Bausteine digitaler Entwürfe
Vorbemerkung
In diesem Kapitel betrachten wir Bausteine für den Entwurf digitaler
Schaltungen. Wir beschränken uns auf Bausteine, die kombinatorische
Schaltungen implementieren. Größere Funktionseinheiten mit
sequentiellem Verhalten sind Gegenstand von Kap. 12.
Bereits betrachtet wurden Gatter: AND, NAND, OR, NOT, NOR, XOR,
XNOR, AOI
Thema dieses Kapitels:
• programmable logic devices (PLD): PLA und PAL
• spezielle Logikbausteine:
Multiplexer und Dekoder,
tri-state-Gatter,
ROM (read only memory)
Folie 9-2
Bausteine digitaler Entwürfe
PALs und PLAs
Programmable Array Logic (PAL) und Programmable Logic Array (PLA)
Vorgefertigte Bausteine bestehend aus vielen AND/OR-Gattern (oder NOR, NAND),
"personalisierbar“ durch das Herstellen oder Löschen von Verbindungen
Eingänge
Feld von AND-Gattern
Produktterme
Feld von OR-Gattern
Ausgänge
Blockdiagramm: programmierbare Felder für SOP-Ausdrücke
Folie 9-3
Bausteine digitaler Entwürfe
PALs und PLAs
Unterschied zwischen Programmable Array Logic (PAL) und
Programmable Logic Array (PLA)
PAL-Konzept:
eingeschränkte Topologie des OR-Feldes,
AND-Feld programmierbar, OR-Feld fest verdrahtet
Jede Spalte im OR-Feld hat nur
zu einer eingeschränkten Menge
von Produkttermen Zugang
PLA-Konzept: AND- und OR-Ebene sind programmierbar
aber: programmierbare Verbindungen ( ) sind langsamer als fest
verdrahtete ( )
Folie 9-4
Bausteine digitaler Entwürfe
PALs und PLAs
Personalisierungsmatrix
Beispiel
Gleichungen
f0 = a + b'c'
f1 = ac' + ab
f2 = b'c' + ab
f3 = b'c + a
mehrfach
genutzte
Terme
Eingänge
ab
1
1 -
Ausgänge
f 1 f2
0
1
1
bc
-
0 1
0
0
0
1
ac
1
- 0
0
1
0
0
bc
-
0 0
1
0
1
0
a
1
-
-
1
0
0
1
Produktterme
a b c
f0
f3
0
Eingangsseite:
1 = tritt im Term unkomplementiert auf
0 = tritt im Term komplementiert auf
- = tritt im Term nicht auf
Ausgangsseite:
1 = Term tritt in Summe auf
0 = Term tritt in Summe nicht auf
Folie 9-5
Bausteine digitaler Entwürfe
PALs und PLAs
Beispiel (Forts.)
a b
c
Vor der Programmierung sind alle
denkbaren Verbindungen hergestellt
f0
f1
f2
f3
Folie 9-6
Bausteine digitaler Entwürfe
PALs und PLAs
Beispiel (Forts.)
a
b
c
Unerwünschte Verbindungen werden gelöscht
(mittels eines Programmiergerätes werden Sicherungen
durchgebrannt)
ab
b'c
ac'
b'c'
a
Beachte:
es gibt auch programmierbare Felder,
bei denen Verbindungen nicht gelöscht,
sondern hergestellt werden.
f0
f1
f2
f3
Folie 9-7
Bausteine digitaler Entwürfe
PALs und PLAs
Alternative Darstellung für Strukturen mit hohem Fanin
nicht alle Verbindungsdrähte
müssen gezeichnet werden
a
b
c
d
ab
a'b'
cd'
Implementierung von:
f0 = ab + a'b'
f1 = cd' + c'd
c'd
ab + a'b' cd' + c'd
Folie 9-8
Bausteine digitaler Entwürfe
PALs und PLAs
Entwurfsbeispiel
a
b
c
abc
Funktionsgenerator für AND, OR,
NAND, NOR, XOR, XNOR
mit 3 Eingängen
a
b
c
a
b
Schaltung mit mehreren Ausgängen
c
f1 = abc
abc
f2 = a + b + c
abc
abc
f3 = abc
abc
f4 = a + b + c
abc
abc
f5 = a xor b xor c
abc
f6 = a xnor b xnor c
f1
f2
f3
f4
f5
Folie 9-9
f6
Bausteine digitaler Entwürfe
PALs und PLAs
Entwurfsbeispiel
BCD → Gray-Code Konvertierung einer Dezimalziffer
a
ab
a
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
b
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
c
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
d
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
w
0
0
0
0
0
1
1
1
1
1
X
X
X
X
X
X
x
0
0
0
0
1
1
0
0
0
0
X
X
X
X
X
X
y
0
0
1
1
1
1
1
1
0
0
X
X
X
X
X
X
z
0
1
1
0
0
0
0
1
1
0
X
X
X
X
X
X
minimierte Funktionen:
w = a + bd + bc
x = bc'
y=b+c
z = a'b'c'd + bcd + ad' + b'cd'
00
01
11
10
00
0
0
X
1
01
0
1
X
1
11
0
1
X
X
cd
a
ab
00
01
11
10
00
0
1
X
0
01
0
1
X
0
11
0
0
X
X
10
0
0
X
X
cd
d
d
c
c
10
0
1
X
X
b
b
KV-Diagramm für w
a
ab
a
ab
00
01
11
10
00
0
1
X
0
01
0
1
X
0
11
1
1
X
X
cd
KV-Diagramm für x
00
01
11
10
00
0
0
X
1
01
1
0
X
0
11
0
1
X
X
10
1
0
X
X
cd
d
c
d
c
10
1
1
X
X
b
KV-Diagramm für y
b
KV-Diagramm für z
Folie 9-10
Bausteine digitaler Entwürfe
PALs und PLAs
a
b c
d
Realisierung durch PAL
4 Produktterme pro OR-Gatter
w
x
y
z
Folie 9-11
Bausteine digitaler Entwürfe
PALs und PLAs
Implementierung des Codewandlers aus einzelnen Gattern
a'
b
d
2
b
c
2
3
1
b
c'
2
x
b'
2
y
5 Standardbausteine statt 1
PLA/PAL Baustein!
w
a'
b'
c'
d
4
b
c
d
3
a
d'
5
b'
c
d'
3
4
Beispiel für kommerziell verfügbare
TTL-Standardbausteine:
1: TTL7404: 16 Inverter
2, 5: TTL7400: 4 2-fach NAND-Gatter
3: TTL7410: 3 3-fach NAND-Gatter
4: TTL7420: 2 4-fach NAND-Gatter
Folie 9-12
z
Bausteine digitaler Entwürfe
PALs und PLAs
Komparator für zwei 2-Bit-Zahlen
a
ab
01
11
10
00
1
0
0
0
01
0
1
0
0
00
01
11
10
00
0
1
1
1
01
1
0
1
1
cd
d
11
0
0
1
0
10
0
0
0
1
c
b
c
d
a
ab
00
cd
a
abcd
abcd
abcd
d
11
1
1
0
1
abcd
10
1
1
1
0
ac
c
b
KV-Diagramm für EQ
(ab = cd)
01
11
10
00
0
0
0
0
01
1
0
0
0
bd
00
01
11
10
00
0
1
1
1
01
0
0
1
1
cd
bd
a
ab
00
cd
KV-Diagramm für NE
(ab ≠ cd)
a
ab
ac
b
abd
bcd
d
11
1
1
0
1
c
abd
d
11
0
0
0
0
10
0
0
1
0
bcd
c
10
1
1
0
0
b
KV-Diagramm für LT
(ab < cd)
b
KV-Diagramm für GT
(ab > cd)
EQ NE LT
Folie 9-13
GT
Bausteine digitaler Entwürfe
FPGAs
Field programmable gate arrays
FPGAs sind programmierbare Bausteine, die auch die Implementierung
mehrstufiger Schaltungen erlauben.
I/O-Block
I/O-Block
I/O-Block
I/O-Block
I/O-Block
a
x
c
y
clock
I/O-Block
a
b
CLB
I/O-Block
a
b
c
I/O-Block
b
CLB
y
clock
d
x
c
CLB
y
clock
d
x
CLB (computational logic block):
implementiert "Teilschaltung" von
4-5 Variablen
d
Verdrahtungskanäle
a
b
c
CLB
I/O-Block
x
y
clock
Verdrahtungskanäle
I/O-Block
a
b
c
b
CLB
I/O-Block
x
y
d
c
x
y
d
Programmierung:
- CLBs mit Funktionen belegen
- Verbindungsstrukturen
personalisieren
a
b
CLB
CLB
a
b
clock
c
clock
d
a
I/O-Block
x
y
clock
d
c
a
b
CLB
x
y
clock
c
CLB
d
x
y
clock
d
(Beispiel: Xilinx XC2000 Serie)
Folie 9-14
Bausteine digitaler Entwürfe
Multiplexer/Demultiplexer
Multiplexer und Demultiplexer in digitalen Systemen
A
Demultiplexer
Y
Multiplexer
B
Z
A
Y
Demultiplexer
B
Multiplexer
Z
Mux/Demux können Verbindungen zwischen mehreren Punkten herstellen
Folie 9-15
Bausteine digitaler Entwürfe
Multiplexer/Demultiplexer
Verbindungen zwischen mehreren Punkten
a0
sa
a1
b0
b1
MUX
MUX
A
B
DEMUX
s0
sb
einer von mehreren Eingängen wird auf
einen Ausgang durchgeschaltet
Demultiplexer:
Sum
ss
Multiplexer:
ein Eingang wird auf einen von mehreren
Ausgängen durchgeschaltet
s1
Teilsystem für Addition:
z.B.: sa = 1, sb = 0, ss = 1
addiere a1 und b0 und gebe Ergebnis an s1
Folie 9-16
Bausteine digitaler Entwürfe
Multiplexer
allgemeines Konzept:
2n Dateneingänge, n Steuereingänge, 1 Ausgang
verbindet 2n Punkte mit einem einzigen Punkt,
Belegung des Steuersignals ist binärer Index des mit dem Ausgang
verbundenen Eingangs.
n = 1:
z = a'i0 + ai1
Zwei Darstellungen für eine 2:1 Mux
Wahrheitstabelle sind gebräuchlich.
a
0
1
z
i0
i1
i1
0
0
0
0
1
1
1
1
i0
0
0
1
1
0
0
1
1
a
0
1
0
1
0
1
0
1
Folie 9-17
z
0
0
1
0
0
1
1
1
Bausteine digitaler Entwürfe
Multiplexer
i0
i1
2:1
mux
z = a'i0 + ai1
z
a
i0
i1
i2
i3
4:1
mux
8:1
mux
i4
i5
i6
i7
z = a'b'i0 + a'bi1 + ab'i2 + abi3
b
a
i0
i1
i2
i3
z
z
z = a'b'c'i0 + a'b'ci1 + a'bc'i2 + a'bci3 +
ab'c'i4 + ab'ci5 + abc'i6 + abci7
2n -1
allgemein: z = Σ mkik
k=0
a
b
c
Mintermkurzschreibweise für 2n :1 Mux
Folie 9-18
Bausteine digitaler Entwürfe
Multiplexer
Kaskadierung von Multiplexern
i0
i1
i2
i3
0 4:1
1 mux
2
3s s
i4
i5
i6
i7
0 4:1
1 mux
2
3s s
1
1
b
Steuersignale b und c selektieren
gleichzeitig ein Signal aus i0-i3 und i4-i7
8:1
mux
0 2:1
mux
1 s
0
Steuersignal a entscheidet, welcher
Mux mit z verbunden wird
z
i0
0
i1
1 s
c
0
c
i2
0
i3
1 s
1
a
alternative Implementierung
eines 8:1 Mux
0
c
i4
0
i5
1 s
z
2
3 s0
a
c
i6
0
i7
1 s
c
Folie 9-19
s1
b
Bausteine digitaler Entwürfe
Multiplexer
Multiplexer als allgemeiner Logikbaustein
2n-1 : 1 Multiplexer kann jede Funktion aus n Variablen implementieren
n-1 Steuervariable, verbleibende Variable ist Dateneingang des Mux
Beispiel:
f(a, b, c) = m0 + m2 + m6 + m7
= a'b'c' + a'bc' + abc' + abc
= a'b'(c') + a'b(c') + ab'(0) + ab(1)
1
0
1
0
0
0
1
1
0
1
2
3
4
5
6
7
f
8:1
MUX
s2 s1 s0
a
b
c
a
0
0
0
0
1
1
1
1
b
0
0
1
1
0
0
1
1
c
0
1
0
1
0
1
0
1
f
1
0
1
0
0
0
1
1
c
c
0
1
c
c
0
1
0
1
2
3
4:1
MUX
s1
s0
a
"Lookup Table (LUT)"
(LUTs sind oft Bestandteil der CLBs eines FPGAs)
Folie 9-20
b
f
Bausteine digitaler Entwürfe
Dekoder/Demultiplexer
Dekoder (Demultiplexer): 1 Dateneingang, n Steuereingänge, 2n Ausgänge
Steuereingänge (bezeichnet mit „select“ oder „s“)
binärer Index des Ausgangs, auf den der Eingang durchgeschaltet wird
Dateneingang wird mit „enable“ oder „g“ bezeichnet
1:2 Dekoder:
o0 = g s'; o1 = g s
2:4 Dekoder:
o0 = g s0' s1'
3:8 Dekoder:
o0 = g s0' s1' s2'
o1 = g s0' s1' s2
o2 = g s0' s1 s2'
o1 = g s0' s1
o3 = g s0' s1 s2
o2 = g s0 s1'
o4 = g s0 s1' s2'
o3 = g s0 s1
o5 = g s0 s1' s2
o6 = g s0 s1 s2'
o7 = g s0 s1 s2
Folie 9-21
Bausteine digitaler Entwürfe
Dekoder/Demultiplexer
Dekoder als logisches Bauelement
g=d
3:8
dec
s2
a
s1
b
s0
0
1
2
3
4
5
6
7
abc
abc
abc
abc
abc
abc
abc
abc
Dekoder erzeugt geeignete
Minterme je nach Wahl der
Steuersignale
c
Beispiel:
f1 = a'bc'd + a'b'cd + abcd
f2 = abc'd' + abc
f3 = (abcd)'
Folie 9-22
Bausteine digitaler Entwürfe
Dekoder/Demultiplexer
Dekoder als logisches Bauelement (Beispiel)
4:16
dec
g
s 3 s 2 s 1 s0
a
b
c
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
a bcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
f1
f2
f3
d
Folie 9-23
Bausteine digitaler Entwürfe
Tri-State-Gatter
dritter Wert: "Z" — unendlicher Widerstand, keine Verbindung
Tri-State-Gatter: Ausgangssignale sind "0", "1", und "Z",
Eingangssignal a, zusätzlicher Eingang: output enable (oe)
f
a
oe
a
X
0
1
oe
0
1
1
f
Z
0
1
falls oe = 1, arbeitet Gatter wie ein Buffer (Signal wird elektrisch
verstärkt, bleibt logisch unverändert)
falls oe = 0, ist das Gatter vom Ausgang abgetrennt!
Es können also mehrere Gatter an die gleiche Leitung angeschlossen
werden, solange sichergestellt ist, dass nur für ein Gatter oe = 1 gilt
100
Signalverlauf
a
oe
f
"Z"
"Z"
Folie 9-24
Bausteine digitaler Entwürfe
Read-Only Memory (ROM)
ROM: zweidimensionales Feld von Nullen und Einsen
Zeile entspricht "Wort"; Index heißt "Adresse"
Zeilenbreite entspricht Bitbreite oder Wortbreite
Adresse ist Eingabe, ausgewähltes Wort ist Ausgabe
+5V +5V +5V +5V
n
2 -1
Dec
i
Wort 0011
j
Wort 1010
0
Bits
0
n-1
Adresse
Interner Aufbau
Folie 9-25
Bausteine digitaler Entwürfe
Read-Only Memory
Beispiel
f0 = a'b'c + ab'c' + ab'c
f1 = a'b'c + a'bc' + abc
f2 = a'b'c' + a'b'c + ab'c'
f3 = a'bc + ab'c' + abc'
Adresse
ROM
8 Worte mit je
4 Bits
a b c
Adresse
f0
f1
f2
a
b
c
f0
f
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
0
1
1
0
0
0
1
1
0
0
0
0
1
1
f2
f
1
1
0
0
1
0
0
0
0
0
0
1
1
0
1
0
3
Wortinhalte
f3
Ausgänge
Folie 9-26
Bausteine digitaler Entwürfe
Read-Only Memory
Ähnlich
Ähnlichwie
wiePLAPLAStruktur,
aber
Struktur, abermit
mit
Dekoder
als
Dekoder als
AND-Feld!
AND-Feld!
Speicherfeld
Dekoder
2n Wortzeilen
n Adressleitungen
2n Worte mit
m Bits
m Ausgänge
ROM vorteilhaft bei
(1) kurzen Entwurfszeiten (keine Minimierung der Funktionen nötig)
(2) Benutzung der meisten möglichen Eingangskombinationen (z.B. Codewandler)
Problem bei ROM: Größe verdoppelt sich für jeden zusätzlichen Eingang,
keine don‘t cares
PLA vorteilhaft wenn
(1) Optimierungswerkzeug wie ESPRESSO verfügbar ist
(2) relativ wenig unterschiedliche Minterme
(3) viele Minterme von Ausgängen gemeinsam genutzt werden
Folie 9-27
Bausteine digitaler Entwürfe
Kombinatorische Entwurfsaufgabe
Darstellung von BCD-Zahlen auf LCD-Anzeige mit 7 Segmenten
analysiere Problemstellung:
Eingabe: BCD-Zahl (4 Bit)
Ausgabe: Steuersignale für die Anzeige
4 Eingangssignale: a, b, c, d
LCD-Anzeige
(7 Segmente)
7 Ausgangssignale: c0 — c6
C0 C1 C2 C3 C4 C5 C6
C0
C5
C6
C4
C1
C2
Steuersignaldekoder
C3
C C C C C C C
0 1 2 3 4 5 6
Blockdiagramm
a
b
c
d
Folie 9-28
Bausteine digitaler Entwürfe
Kombinatorische Entwurfsaufgabe
LCD-Steuerung
a
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
b
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
c
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
d
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
c0
1
0
1
1
0
1
1
1
1
1
x
x
x
x
x
x
c1
1
1
1
1
1
0
0
1
1
1
x
x
x
x
x
x
c2
1
1
0
1
1
1
1
1
1
1
x
x
x
x
x
x
c3
1
0
1
1
0
1
1
0
1
0
x
x
x
x
x
x
c4
1
0
1
0
0
0
1
0
1
0
x
x
x
x
x
x
c5
1
0
0
0
1
1
1
0
1
1
x
x
x
x
x
x
c6
0
0
1
1
1
1
1
0
1
1
x
x
x
x
x
x
Formuliere Problem durch Wahrheitstabelle
Wähle Implementierungsstil:
falls ROM: fertig!
wegen don‘t cares ist aber PLA/PAL
attraktiv
Optimiere Entwurf:
Zweistufig:
manuell mit KV-Diagramm
oder
ESPRESSO
Mehrstufig:
SIS
Folie 9-29
Bausteine digitaler Entwürfe
Kombinatorische Entwurfsaufgabe
a
ab
00
01
11
10
00
1
0
X
1
01
0
1
X
1
11
1
1
X
X
ac
a
ab
00
01
11
10
00
1
1
X
1
01
1
0
X
1
11
1
1
X
X
cd
d
c
1
1
X
10
X
1
0
X
11
10
00
1
0
X
1
01
0
1
X
0
X
1
01
1
1
X
1
11
1
1
X
X
10
0
1
X
X
X
X
a
ab
01
11
10
00
1
0
X
1
01
0
0
X
0
00
01
11
10
00
1
1
X
1
01
0
1
X
1
cd
11
0
0
X
b
KV-Diagramm für C3
c0 = a + bd + c + b'd'
c1 = a + c'd' + cd + b'
c2 = a + b + c' + d
1
1
X
X
X
b
00
01
11
10
00
0
1
X
1
01
0
1
X
1
cd
d
d
11
0
0
X
X
11
1
0
X
X
10
1
1
X
X
c
c
10
a
ab
d
c
1
X
KV-Diagramm für C2
a
00
cd
X
c
1
1
d
X
d
10
1
b
ab
01
0
00
KV-Diagramm für C1
a
1
10
b
00
11
11
c
b
cd
01
d
KV-Diagramm für C0
ab
LCD-Steuerung
00
cd
c
10
a
ab
10
0
1
X
X
b
b
KV-Diagramm für C4
KV-Diagramm für C5
c3 = b'd' + cd' + bc'd + b'c
c4 = b'd' + cd'
c5 = a + c'd' + bd' + bc'
c6 = a + cd' + bc' + b'c
KV-Diagramm für C6
14 verschiedene
Produktterme!
Folie 9-30
Bausteine digitaler Entwürfe
Kombinatorische Entwurfsaufgabe
LCD-Steuerung
Increment
1
0
First
fuse
numbers
4
8
12
16
20
24
28
0
32
64
96
128
160
192
224
19
256
288
320
352
384
416
448
480
18
512
544
576
608
640
672
704
736
17
768
800
832
864
896
928
960
992
16
1024
1056
1088
1120
1152
1184
1216
1248
15
1280
1312
1344
1376
1408
1440
1472
1504
14
1536
1568
1600
1632
1664
1696
1728
1760
13
1792
1824
1856
1888
1920
1952
1984
2016
12
2
16H8PAL-Baustein
kann die Funktion
implementieren
3
4
5
6
7
8
9
11
Note: Fuse number = first fuse number + increment
Folie 9-31
Bausteine digitaler Entwürfe
Kombinatorische Entwurfsaufgabe
Increment
LCD-Steuerung
012 3
4
8
10
12
14
16
18
20
24
27
1
2
First
fuse
numbers
14H8PAL
kann die Funktion
nicht implementieren
23
0
28
56
84
22
1
112
140
21
168
196
20
224
252
19
280
308
18
336
364
17
392
420
16
448
476
504
532
15
3
4
5
6
7
8
9
10
14
11
13
Note: Fuse number = first fuse number + increment
Folie 9-32
Bausteine digitaler Entwürfe
Kombinatorische Entwurfsaufgabe
LCD-Steuerung
.i 4
.o 7
.ilb a b c d
.ob c0 c1 c2 c3 c4 c5 c6
.p 16
0000 1111110
0001 0110000
0010 1101101
0011 1111001
0100 0110011
0101 1011011
0110 1011111
0111 1110000
1000 1111111
1001 1110011
1010 ------1011 ------1100 ------1101 ------1110 ------1111 ------.e
Eingabe für
ESPRESSO
c0 = bc'd + cd + b'd' + bcd' + a
c1 = b'd + c'd' + cd + b'd'
c2 = b'd + bc'd + c'd' + cd + bcd'
c3 = bc'd + b'd + b'd' + bcd'
c4 = b'd' + bcd'
c5 = bc'd + c'd' + a + bcd'
c6 = b'c + bc' + bcd' + a
.i 4
.o 7
.ilb a b c d
.ob c0 c1 c2 c3 c4 c5 c6
.p 9
-10- 0000001
-01- 0001001
-0-1 0110000
-101 1011010
9 unterschiedliche Produktterme!
--00 0110010
--11 1110000
63 Literale, 20 Gatter
-0-0 1101100
1--- 1000011
Achtung:
-110 1011111
.e
In Kap. 8 wurde lediglich die exakte Optimierung für
Ausgabe von einstellige Funktionen (1 Ausgang!) betrachtet. Bei
mehrstelligen Funktionen müssen die Einsstellen aller
ESPRESSO
Ausgänge mit möglichst wenig Implikanten überdeckt
werden. Dies wird durch die Heuristiken in
ESPRESSO berücksichtigt. Deswegen liefert
ESPRESSO eine bessere Lösung als die exakte
Minimierung der einzelnen einstelligen
Funktionen.
Folie 9-33
Bausteine digitaler Entwürfe
Kombinatorische Entwurfsaufgabe
LCD-Steuerung
a
b c
d
bc'
b'c
b'd
bc'd
c'd'
cd
b'd'
a
bcd'
Implementierung mit PLA
C0 C1 C2
C3
C4 C5 C6
Folie 9-34
Bausteine digitaler Entwürfe
Kombinatorische Entwurfsaufgabe
LCD-Steuerung
x = c' + d'
y = b'c'
c0 = c3 + a'bx' + ady
52 Literale
33 Gatter
c1 = y + a'c5' + c'd'c6
c2 = c5 + a'b'd + a'cd
c3 = c4 + bdc5 + a'b'x'
mehrstufige Implementierung,
Optimierung mit SIS
c4 = d'y + a'cd'
c5 = c'c4 + ay + a'bx
c6 = ac4 + cc5 + c4'c5 + a'b'c
Folie 9-35
Technische Informatik I
Kapitel 10
Automaten als Verhaltensmodelle
sequenzieller Schaltungen
Folie 10-1
Automaten
Sequenzielle Schaltungen
Viele Schaltungen zeichnen sich dadurch aus, dass die Ausgabe der Schaltung nicht
nur von der aktuellen Eingabe, sondern auch von früheren Eingaben abhängt.
Solche Schaltungen lassen sich mathematisch nicht einfach durch eine Relation
oder Funktion modellieren; denn es werden nicht Elemente einer Menge auf
Elemente einer anderen oder der gleichen Menge abgebildet.
Häufig lässt sich dann jedoch das Schaltungsverhalten dadurch modellieren, dass
eine Folge (Sequenz) bestehend aus Elementen einer Menge auf eine Folge
(Sequenz) bestehend aus Elementen einer anderen oder der gleichen Menge
abgebildet wird. In diesem Fall spricht man von einer sequenziellen Schaltung.
Die Implementierung einer sequenziellen Schaltung erfordert die Möglichkeit,
frühere Eingaben (oder einen Zustand, der Informationen über frühere Eingaben
enthält) abzuspeichern.
Im Gegensatz dazu werden Schaltungen ohne Speicherfähigkeit, deren Ausgabe nur
von der aktuellen Eingabe abhängt, als kombinatorisch bezeichnet. Schaltnetze sind
kombinatorisch, und ihr mathematisches Modell sind (boolesche) Schaltfunktionen.
Folie 10-2
Automaten
Beispiel
Betrachtet wird ein Akkumulator. Der Akkumulator speichert intern ein Zahl. Zu
Beginn ist diese Zahl Null. Als Eingaben erhält er Zahlen aus N0 (Menge der
natürlichen Zahlen mit Null), die er zu der gespeicherten Zahl hinzuaddiert. Als
Ergebnis gibt er jeweils die gespeicherte Zahl aus.
x
akku= akku + x
y = akku
y
(x0, x1, x2, …) → (y0, y1, y2, …)
z.B.: (x0 = 3, x1 = 2, x2 = 4, x3 = 1, …) → (y0 = 0, y1 = 3, y2 = 5, y3 = 9, y4 = 10, …)
Folie 10-3
Automaten
Sequenzielle Schaltungen
Woraus resultiert das „Gedächtnis“ einer sequenziellen Schaltung?
y
x
z
b
a
„a hängt ab von b“
z+
Rückkopplung
Aus den Eingaben und dem aktuellen "Zustand" z wird ein nachfolgender Zustand z+
der Schaltung bestimmt. Die Ausgabe berechnet sich aus dem aktuellen Zustand
oder "Momentanzustand" und der Eingabe.
Beispiel (Forts.): der Zustand z ist durch den Inhalt des Akkus gegeben.
Folie 10-4
Automaten
Automaten
Sequenzielle Schaltungen können mathematisch durch Automaten modelliert werden.
Definition (Halbautomat, Medvedev-Automat)
Das Quadrupel M = (I, S, S0, δ) heißt deterministischer Halbautomat. Dabei
bezeichnet:
I eine Menge von erlaubten Eingabewerten
S eine Menge von Zuständen
S0 ⊆ S eine Menge von erlaubten Anfangszuständen
δ : S × I → S eine Übergangsfunktion.
Ist die Übergangsfunktion definiert als eine Abbildung δ : S × I → 2S , so heißt H
nicht-deterministischer Halbautomat. Ein Zustand kann also für ein und dieselbe
Eingabe mal in den einen, mal in den anderen Zustand aus einer Menge von
Zuständen übergehen.
Sind die Mengen S und S0 endlich, heißt H endlicher Halbautomat.
Folie 10-5
Automaten
Automaten
Erweitert man den Halbautomaten um eine Ausgabe, erhält man einen
(Voll)automaten. Dazu gibt es zwei Möglichkeiten:
Definition (Mealy-Automat)
Ein Mealy-Automat A = (I, O, S, S0, δ, λ) ist ein Halbautomat H erweitert um:
eine Menge O von Ausgabewerten
eine Ausgabefunktion λ : S × I → O.
Definition (Moore-Automat)
Ein Moore-Automat A = (I, O, S, S0, δ, λ) ist ein Halbautomat H erweitert um:
eine Menge O von Ausgabewerten
eine Ausgabefunktion λ : S → O.
Statt Mealy-Automat und Moore-Automat sagt man auch Mealy-„Maschine“
bzw. Moore-„Maschine“.
Folie 10-6
Automaten
Beispiel (Forts.)
x
y=z
z
z+ = z + x
y
y = λ(z) = z
z+ = δ (x , z) = x + z
z+
Die Ausgabe hängt nur vom Momentanzustand ab ⇒ Moore-Maschine
Wir wandeln den Akkumulator ab, so dass er als Ausgabe das Produkt aus der
aktuellen Eingabe und dem Akkuinhalt ausgibt.
x
y=z·x
z
z+ = z + x
y
z+
y = λ(z) = z · x
z+ = δ (x , z) = x + z
Die Ausgabe hängt vom Momentanzustand und der Eingabe ab ⇒ Mealy-Maschine
Folie 10-7
Automaten
Zustandsdiagramme
Endliche Automaten lassen sich durch „Zustandsgraphen“ oder
„Zustandsdiagramme“ darstellen:
• jeder Zustand entspricht einem Knoten des Graphen
• jede gerichtete Kante entspricht einem möglichen Zustandsübergang
Es ist üblich jeden Knoten mit dem zugehörigen Zustand zu beschriften. Bei
Moore-Automaten wird jede Kante mit der logischen Bedingung für den
Übergang und jeder Knoten mit der zugehörigen Ausgabe beschriftet. Bei
Mealy-Automaten wird jede Kante mit der zugehörigen logischen Bedingung
und der Ausgabe beschriftet.
Beispiel (Forts.)
S1= 5
[5]
S1= 5
3
3 / 15
S2= 8
[8]
S2= 8
zwei Zustände des Akkumulators (Moore)
zwei Zustände des abgewandelten
Akkumulators (Mealy)
Folie 10-8
Automaten
Beispiel
Getränkeautomat
Funktionsweise des Getränkeautomaten:
- Ausgabe einer Getränkedose nach Einwurf von 1,50 Euro
- Annahme von 50 Cent und 1 Euro Münzen
- kein Wechselgeld (Überzahlung wird aber akzeptiert)
- nur eine Getränkesorte
Folie 10-9
Automaten
Beispiel
Getränkeautomat
Münzerkenner
M
Steuerung
(Automat)
Reset
A
Mechanismus
zur Ausgabe einer
Getränkedose
Blockdiagramm
Mögliche Werte von Signal M: (Münzsorte)
0 (keine Münze eingeworfen)
C (50 Cent eingeworfen)
E (1 Euro eingeworfen)
Mögliche Werte von Signal A: (Ausgabe)
j (Ausgabe soll erfolgen)
n (Ausgabe soll nicht erfolgen)
Außerdem kann das Reset-Signal gesetzt werden, um den Automaten in
einen wohldefinierten Anfangszustand zu setzen.
Folie 10-10
Automaten
Beispiel
Getränkeautomat
Liste mögliche Eingabesequenzen auf:
3 × 50 Cent
1 Euro, 50 Cent
50 Cent, 1 Euro
1 Euro, 1 Euro
2 × 50 Cent, 1 Euro
Zeichne Zustandsdiagramm:
Eingangsignal M: 0, C, E
Ausgangssignal A: j, n
Konvention:
Reset-Zustand wird durch
Pfeil markiert
„0+C+E“: Signal ist 0
oder C oder E
Folie 10-11
Automaten
Beispiel
Getränkeautomat
Reset
Eigentlich müsste man
noch von jedem Knoten
eine Kante zum Anfangszustand zeichnen mit der
Übergangsbedingung, dass
das Reset-Signal gesetzt
ist. Dies lässt man aber zur
besseren Übersichtlichkeit
weg.
0
0+C+E C
0
S0
[n]
0
C
C
0
E
S1
S2
[n]
[n]
E 0+C+E 0+C+E C
E
0+C+E
S3
S4
S5
S6
[n]
[j]
[j]
[j]
E
0+C+E
S7
S8
[j]
[j]
Zustandsdiagramm (Moore)
für Getränkeautomat
(Annahme: der Ausgabemechanismus gibt eine weitere Dose erst aus, nachdem
A zwischenzeitig wieder den Wert n angenommen hat. Das Geld geht also
verloren. Der Automat ist erst nach einem Reset wieder funktionsfähig.)
Folie 10-12
Automaten
Beispiel
Getränkeautomat
Reset
Lasse zur besseren
Übersichtlichkeit die
Schlingen im
Zustandsdiagramm weg.
S0
[n]
C
C
C
E
S1
S2
[n]
[n]
E
C
E
S3
S4
S5
S6
[n]
[j]
[j]
[j]
E
S7
S8
[j]
[j]
Zustandsdiagramm (Moore) für
Getränkeautomat
Folie 10-13
Automaten
Beispiel
Getränkeautomat
Reset
Momentanzustand
0 Cent
[n]
Eingabe
M
Folgezustand
Ausgabe
A
0 Cent
0
C
E
0 Cent
50 Cent
1 Euro
n
n
n
50 Cent
0
C
E
50 Cent
1 Euro
1,5 Euro
n
n
n
1 Euro
0
C
E
1 Euro
1,5 Euro
1,5 Euro
n
n
n
1,5 Euro
0
C
E
1,5 Euro
1,5 Euro
1,5 Euro
j
j
j
C
50 Cent
[n]
E
C
1Euro
E
[n]
C+E
1,5 Euro
[j]
benutze Zustände
mehrfach
Zustandsdiagramm nach
Zustandsreduktion
("Schlingen" sind nicht gezeichnet)
Zustandstafel
Folie 10-14
Automaten
Äquivalente Automaten
Definition (Äquivalenz zweier Automaten)
Gegeben seien zwei deterministische Moore- oder zwei deterministische MealyAutomaten MA= (IA, OA, SA, S0,A, δA, λA) und MB = (IB, OB, SB, S0,B, δB, λB).
MA und MB befänden sich jeweils in einem ihrer Anfangszustände aus S0,A bzw.
S0,B.
MA und MB heißen äquivalent genau dann, wenn MA und MB für eine beliebige
Eingabefolge (x0, x1, x2, …), mit x0, x1, x2 … ∈ I und I = IA = IB, dieselbe
Ausgabefolge (y0, y1, y2, …), mit y0, y1, y2 … ∈ O und O = OA = OB erzeugen.
Beispiel:
Der Getränkeautomat nach der Zustandsreduktion ist zum ursprünglichen
Automaten äquivalent.
Folie 10-15
Automaten
Äquivalenz von Moore- und Mealy-Automat
Kann man einen Mealy-Automaten in einen Moore-Automaten umwandeln
und umgekehrt?
Ein/Ausgabeverhalten eines Moore-Automaten M:
x0, x1, x2,…
S0, S1, S2, S3,…
y0, y1, y2, y3,…
Ein-/Ausgabeverhalten eines Mealy-Automaten M´:
x0, x1, x2…
S0´, S1´, S2´, S3´,…
y1´, y2´, y3´,…
Das Ein-/Ausgabeverhalten kann nicht exakt das gleiche sein, da die Ausgabefolge
des Moore-Automaten ein Element mehr enthält, nämlich y0, die Ausgabe im
Anfangszustand. Ein Moore-Automat M und ein Mealy-Automat M´ werden als
äquivalent bezeichnet, wenn ausgehend von einem jeweiligen Anfangszustand S0
und S0´ für die gleiche Eingabefolge x0, x1, … gilt: yn = yn´ für alle n ≥ 1.
Folie 10-16
Automaten
Äquivalenz von Moore- und Mealy-Automat
Kann man einen Moore-Automaten in einen Mealy-Automaten umwandeln und
umgekehrt?
Moore nach Mealy:
Zu jedem Moore-Automaten M = (I, O, S, S0, δ, λ) gibt es einen äquivalenten
Mealy-Automaten, M´ = (I, O, S, S0, δ, λ´) mit
λ´ = λ (δ (x, z)), x ∈ I und z ∈S
A
x
B
A
x / yB
B
[yB]
[yA]
Moore
Mealy
Folie 10-17
Automaten
Beispiel
Getränkeautomat
Reset
Reset / n
0
0 Cent
MealyAutomat
0/n
MooreAutomat
0 Cent
[n]
0/n
C
0
50 Cent
C/n
50 Cent
E
E/n
[n]
C
C/n
1 Euro
E
[n]
1 Euro
0
C+E
E/j
0/n
C+E / j
1,5 Euro
1,5 Euro
[j]
0+C+E
Werte der Ausgangssignale sind mit
Zuständen assoziiert
0+C+E / j
Werte der Ausgangssignale sind mit
Übergängen assoziiert
Folie 10-18
Automaten
Äquivalenz von Moore- und Mealy-Automat
Mealy nach Moore:
Idee: jede Kombination aus momentaner Ausgabe und Nachfolgezustand der
Mealy-Maschine wird zu einem Nachfolgezustand der Moore-Maschine. Die
Ausgabe der Moore-Maschine gibt dann den Teil des Zustands aus, der der
Ausgabe der ursprünglichen Mealy-Maschine entspricht.
Also:
Zu jedem Mealy-Automaten M = (I, O, S, S0, δ, λ) gibt es einen äquivalenten
Moore-Automaten, M´ = (I, O, S´ = S × O, S0´ = S0 × O, δ´, λ´) und es gilt:
S´ ist die Menge aller Paare z´ = (z, y) mit z ∈ S und y = λ(x, z), x ∈ I.
δ´ setzt sich aus der Übergangsfunktion δ und der Ausgabefunktion λ des MealyAutomaten zusammen, δ´ = (δz´, δy´) = (δ (x, z), λ(x, z)).
λ´(z´) des Moore-Automaten gibt den „Teil“ des Zustands z´= (z, y) aus, der der
Ausgabe der Mealy-Maschine entspricht, d.h. λ´(z´) = y.
Folie 10-19
Automaten
Äquivalenz von Moore- und Mealy-Automat
Mealy nach Moore
A
xA / yC
C
xB / yC´
Mealy
B
A
xA
(C, yC)
[yC]
[yA]
Moore
B
[yB]
xB
(C, yC´)
[yC´]
Folie 10-20
Automaten
Zustandsreduktion
Die Kosten für die Implementierung eines Automaten (z.B. Schaltwerk) hängen
stark von der Anzahl der Zustände des Automaten ab.
Problem ("Zustandsreduktion" oder "Zustandsminimierung")
Gegeben: Zustandsdiagramm oder Zustandstafel eines endlichen
deterministischen Automaten M
Gesucht: Zustandsdiagramm oder Zustandstafel eines zu M äquivalenten
Automaten mit einer minimalen Anzahl von Zuständen
•
•
entwerfe Automaten zunächst, ohne auf Anzahl der Zustände Rücksicht zu
nehmen
führe anschließend Zustandsreduktion durch
Folie 10-21
Automaten
Beispiel
Automat zur Paritätsprüfung
0
[0]
1
S1
[1]
S0
S0, S2 sind äquivalente
Zustände:
S0
1
0
[0]
beide erzeugen Ausgangssignal 0
beide gehen bei Eingabe 1
nach S1 und bei Eingabe 0
zu sich selbst
0
1
0
S1
[1]
1
1
S2
[0]
unterschiedliche Zustandsdiagramme möglich:
0
• identisches Ausgangsverhalten für alle Eingangssequenzen
• Automaten sind äquivalent, erfordernaber unterschiedliche Implementierung
Folie 10-22
Automaten
Äquivalente Zustände
Definition (Äquivalente Zustände)
Zwei Zustände eines deterministischen Automaten heißen äquivalent genau dann,
wenn der mit diesen Zuständen initialisierte Automat in beiden Fällen für jede
mögliche Eingabesequenz die gleiche Ausgabesequenz erzeugt.
Satz
Zwei Zustände eines deterministischen Automaten sind äquivalent genau dann,
wenn für jede mögliche Eingabe die gleiche Ausgabe erzeugt wird und die
jeweiligen Nachfolgezustände äquivalent sind.
naheliegende Idee für Zustandsminimierung:
fasse äquivalente Zustände zu einem Zustand zusammen
Folie 10-23
Automaten
Zustandsreduktion
wie bestimmt man die Äquivalenzklassen?
(Vorläufiger) Algorithmus:
• stelle Zustandstafel auf
• identifiziere Zustände mit gleichen Ausgangssignalen
• gehen solche Zustände in die gleichenFolgezustände über, sind sie äquivalent
• fasse als äquivalent identifizierte Zustände zu einem einzigen Zustand (mit neuem
Namen) zusammen
• wiederhole diese Schritte, bis keine weiteren Zustände mehr zusammengefasst
werden können
Folie 10-24
Automaten
Beispiel
Zustandsreduktion durch Zeilenzusammenfassung in Zustandstafel
(vorläufiges Verfahren)
Automat zur Erkennung einer Zeichenkette:
Der Automat besitzt ein Eingangssignal x und ein Ausgangssignal y.
Er beobachtet die Eingabesequenz und betrachtet jeweils Gruppen von 4 Bits. Es
ist y = 1, falls die aktuelle Gruppe aus den Signalen 1010 oder 0110 besteht.
Beispiel für eine Eingangs-/Ausgangsfolge:
x = 0010
y = 0000
0110 1100 1010 0011
0001 0000 0001 0000
. . .
. . .
Anmerkung:
Automat identifiziert Zeichenkette ⇒ Automatentheorie spielt wichtige Rolle in
der Theorie formaler Sprachen!
Folie 10-25
Automaten
Beispiel
Zustandsreduktion durch Zeilenzusammenfassung in Zustandstafel
(vorläufiges Verfahren)
Reset
1/0
0/0
0/0
0/0
0/0
1/0
1/0 0/0
1/0
0/0
0/0
1/0
0/0
1/0
1/0
0/1
0/0
1/0
0/0 1/0
1/0
0/1
1/0
0/0
1/0
0/0 1/0
0/0
1/0
1/0
Folie 10-26
Automaten
Beispiel
Zustandsreduktion durch Zeilenzusammenfassung
(vorläufiges Verfahren)
Eingabefolge
Ausgabe
x =0 x =1
S0
S1
S1
S3
S2
S4
0
0
0
0
S2
S3
S5
S7
S6
S8
0
0
0
0
01
10
S4
S5
S9
S 11
S10
S12
0
0
0
0
11
000
S6
S7
S13
S0
S14
S0
0
0
0
0
001
010
011
S8
S9
S 10
S0
S0
S0
S0
S0
S0
0
0
1
0
0
0
100
101
S 11
S 12
S0
S0
S0
S0
0
1
0
0
110
111
S 13
S 14
S0
S0
S0
S0
0
0
0
0
Reset
0
1
00
Konfiguriere Zustandstafel
so, dass jede Eingabe für
Folgezustand und Ausgabe
jeweils einer Spalte
entspricht. Dadurch steht in
jeder Zeile für jeden
Momentanzustand, welche
Folgezustände und
Ausgaben möglich sind.
Momentanzustand
Folgezustand
x =0 x =1
Folie 10-27
Automaten
Beispiel
Zustandsreduktion durch Zeilenzusammenfassung
(vorläufiges Verfahren)
Eingabefolge
Momentanzustand
Folgezustand
x =0 x =1
Ausgabe
x =0 x =1
S0
S1
S1
S3
S2
S4
0
0
0
0
S2
S3
S5
S7
S6
S8
0
0
0
0
01
10
S4
S5
S9
S 11
S´10
S´10
0
0
0
0
11
000
S6
S7
S13
S0
S14
S0
0
0
0
0
001
010
S8
S9
S´10
S0
S0
S0
S0
S0
S0
0
0
1
0
0
0
S 11
S 13
S 14
S0
S0
S0
S0
S0
S0
0
0
0
0
0
0
Reset
0
1
00
011 oder 101
100
110
111
Folie 10-28
Automaten
Beispiel
Zustandsreduktion durch Zeilenzusammenfassung
(vorläufiges Verfahren)
Eingabefolge
Momentanzustand
Folgezustand
x =0 x =1
Ausgabe
x =0 x =1
S0
S1
S1
S3
S2
S4
0
0
0
0
S2
S3
S5
S´7
S6
S´7
0
0
0
0
01
10
S4
S5
S´7
S´7
S´10
0
0
11
S6
S´7
S´7
S0
S´10
S´7
S0
0
0
0
0
0
0
S´10
S0
S0
1
0
Reset
0
1
00
nicht 011 oder 101
011 oder 101
Folie 10-29
Automaten
Beispiel
Eingangsfolge
endgültige
endgültigereduzierte
reduzierte
Zustandstafel
Zustandstafel
Momentanzustand
S0
S1
S2
S3'
S4'
S7'
S10'
Reset
0
1
00 oder 11
01 oder 10
nicht (011 oder 101)
011 oder 101
Folgezustand
x=0 x=1
S1
S3'
S4'
S7'
S7'
S0
S0
S2
S4'
S3'
S7'
S10'
S0
S0
Ausgang
x=0 x=1
0
0
0
0
0
0
1
Reset
S0
0/0
S1
entsprechendes
entsprechendes
Zustandsdiagramm
Zustandsdiagramm
S2
1/0
0/0
1/0
0/0
1/0
S7'
0,1/0
0/0
S4'
S3'
0,1/0
1/0
S10'
0/1
1/0
Folie 10-30
0
0
0
0
0
0
0
Automaten
Zustandsreduktion
Zustandsreduktion durch Zeilenzusammenfassung
einfache Methode, aber:
liefert nicht immer die minimale Zustandstafel!
0
S0
[0]
Beispiel: Paritätsprüfer mit 3 Zuständen
Folgezustand
Momentanzustand x = 0 x = 1 Ausgabe
S
0
S0
S1
0
S1
S
1
S2
1
0
S
S2
S1
2
kann
kannSS00und
undSS22nicht
nichtzusammenfassen!
zusammenfassen!
1
0
S1
[1]
1
1
S2
[0]
0
Folie 10-31
Automaten
Zustandsreduktion
Zustandsreduktion durch Implikationstafel
neues Beispiel: Spezifikation eines Automaten
Eingangssignal x und Ausgangssignal y
Ausgangssignal ist 1, immer wenn eine Eingangsfolge 010 oder 110
an den Eingängen beobachtet wurde
Momentanzustand
Eingabefolge
Reset
0
1
00
01
10
11
S0
S1
S2
S3
S4
S5
S6
Folgezustand
x =0 x =1
S1
S3
S5
S0
S0
S0
S0
S2
S4
S6
S0
S0
S0
S0
Ausgabe
x =0 x =1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
Folie 10-32
Automaten
Zustandsreduktion
Zustandsreduktion durch Implikationstafel
Enumeriere alle möglichen Zustandspaare und stelle die Bedingungen auf,
unter denen die Zustände eines Paares äquivalent sind
S0
In jedes Feld:
Trage für jede Eingabe
die Folgezustände für
das Zustandspaar ein.
Die Folgezustandspaare müssen äquivalent sein, damit das
Zustandspaar selbst
auch äquivalent ist.
S1
S1
S2
S2
S3
S3
S4
S4
S5
S5
S6
S6
S0
S1
S2
S3
S4
S5
S6
Äquivalenzrelation ist reflexiv und
symmetrisch:
kann Halbmatrix und Diagonale
weglassen
S0
S1
S2
S3
S4
Implikationstafel
Folie 10-33
S5
Automaten
Zustandsreduktion
Zustandsreduktion durch Implikationstafel
S1
S1-S3
S2-S4
S2
S1-S5 S3-S5
S2-S6 S4-S6
S3
S1-S0 S3-S0 S5-S0
S2-S0 S4-S0 S6-S0
S2 und S4 haben unterschiedliches Ein-/Ausgabeverhalten
Also können
S1 und S0 nicht
zusammengefaßt
werden
S4
S5
S6
S1-S0 S3-S0 S5-S0 S0-S0
S2-S0 S4-S0 S6-S0 S0-S0
S0-S0
S0-S0
S0 S1 S2 S3 S4 S5
anfängliche Implikationstafel
Folie 10-34
Automaten
Zustandsreduktion
Zustandsreduktion durch Implikationstafel
S1
Untersuche jedes Feld: streiche Zustandspaare, deren Äquivalenzbedingungen offensichtlich verletzt sind.
S2
Implikationstafel nach erstem Durchlauf
S4
zweiter Durchlauf bringt keine neue Information:
S5
S3
S3 und S5 sind äquivalent
S4 und S6 sind äquivalent
Also sind S1 und S2 auch äquivalent!
Eingangsfolge
reduzierte
reduzierte
Zustandstafel
Zustandstafel
Reset
0 oder 1
00 oder 10
01 oder 11
S3-S5
S4-S6
S0-S0
S0-S0
S0-S0
S0-S0
S6
S0
Momentanzustand
S0
S'1
S'3
S'4
S1
S2
Folgezustand
x =1
x =0
S'1
S'3
S0
S0
S3
S4
S5
Ausgabe
x =0 x =1
S'1
S'4
S0
S0
Folie 10-35
0
0
0
1
0
0
0
0
Automaten
Zustandsreduktion
Zustandsreduktion durch Implikationstafel
betrachte noch einmal Paritätsprüfer:
S1
S2
S0 – S2
S1 – S1
S0
S0 ist äquivalent zu S2,
da kein markiertes Zustandspaar
erreicht werden kann!
S1
Implikationstafel
Folie 10-36
Automaten
Zustandsreduktion
Zustandsreduktion durch Implikationstafel
Algorithmus
1. Stelle Implikationstafel auf.
2. Betrachte Feld für Si, Sj: falls Ausgänge unterschiedlich sind, markiere Feld
mit "X", sonst liste für alle Eingangskombinationen die implizierten
Folgezustandspaare auf.
3. Gehe von oben nach unten und links nach rechts durch die Implikationstafel:
falls ein Feld für Si, Sj das Folgezustandspaar Sm, Sn enthält und das Feld für
das Folgezustandspaar mit "X" markiert ist, dann markiere auch das Feld für
Si, Sj mit "X".
4. Wiederhole Schritt 3, bis keine neuen Felder mehr mit "X" markiert werden.
5. Jedes unmarkierte Feld gibt ein äquivalentes Zustandspaar an.
Folie 10-37
Automaten
Zustandsreduktion
Zustandsreduktion durch Implikationstafel
Ausfüllen der Implikationstafel:
•
Eintragxij — Zeile entspricht Si, Spalte entspricht Sj
•
Si ist äquivalent mit Sj, falls Ausgänge identisch und Folgezustände
äquivalent sind
•
xij enthält die Folgezustände von Si, Sj, die äquivalent sein müssen, damit Si
und Sj äquivalent sind
•
wennSi und Sj unterschiedliches Ausgangsverhalten haben, wird xij gestrichen
Beispiel:
S0 geht für 0 in S1 über, für 1 in S2
S1 geht für 0 in S3 über, für 1 in S4
also: Feld für S0 und S1 enthält Einträge:
S0
S1-S3
S2-S4
S1
S1-S3 (Übergang für 0)
S2-S4 (Übergang für 1)
Folie 10-38
Automaten
Zustandsreduktion
Gegeben sei ein endlicher deterministischer Automat M mit einer
Zustandsmenge S. Betrachte für die Zustände in S die Relation R "sind
äquivalent", d.h. R = {(Si, Sj) | Si und Sj sind äquivalent mit Si, Sj ∈ S}.
Welchen Typs ist R?
offensichtlich reflexiv, symmetrisch und transitiv
⇒ Äquivalenzrelation
Zustandsreduktion:
bestimme die Zerlegung (Partition) der Zustandsmenge in ihre
Äquivalenzklassen, jede Äquivalenzklasse ergibt einen Zustand im
reduzierten Automaten
Eine Zerlegung in Äquivalenzklassen ist eindeutig, das Zustandsdiagramm
des reduzierten Automaten ist daher eine eindeutige (kanonische)
Darstellung des Automaten. (Zustandsdiagramme sind isomorph.)
Folie 10-39
Technische Informatik I
Kapitel 11
Schaltwerke
Folie 11-1
Schaltwerke
Schaltwerke
Endliche Automaten dienen zur Modellierung von digitalen „sequenziellen
Schaltungen“ oder „Schaltwerken“.
Eine sequenzielle Schaltung mit n Eingangssignalen, m Ausgangssignalen und
k Zustandssignalen wird als endlicher Automat modelliert mit:
I ⊆ {0, 1}n als Menge der möglichen Eingaben
O ⊆ {0, 1}m als Menge der möglichen Ausgaben
S ⊆ {0, 1}k , S0 ⊆ S, als Zustands- und Anfangszustandsmenge
δ: S × I → S als Übergangsfunktion
λ : S → O (Moore) bzw. λ : S × I → O (Mealy) als Ausgabefunktion
Die Übergangs- und Ausgabefunktion sind offensichtlich Boolesche
Funktionen und können als kombinatorische Schaltung implementiert
werden.
Folie 11-2
Schaltwerke
Schaltung mit Rückkopplung
Wie implementiert man das Gedächtnis des Automaten in einem Schaltwerk?
x1
n („primäre“)
x2
Eingangssignale
xn
z1
z2
y1
y2
kombinatorische
Schaltung
implementiert δ und λ
zk
m („primäre“)
Ausgangssignale
ym
z1+
z2+
z k+
k Zustandssignale
Durch die Rückkopplung des Nachfolgezustandes auf den Momentanzustand wird
ein Gedächtnis implementiert. Die zeitlichen Abläufe in einem System mit
Rückkopplung sind jedoch schwer analysierbar und das Verhalten hängt stark von
den detaillierten Signallaufzeiten zur Berechnung der Nachfolgezustände ab.
Folie 11-3
Schaltwerke
Getaktete Schaltwerke
Wie implementiert man das Gedächtnis des Automaten in einem Schaltwerk?
x1
n („primäre“)
x2
Eingangssignale
xn
z1
z2
y1
y2
kombinatorische
Schaltung
implementiert δ und λ
zk
m („primäre“)
Ausgangssignale
ym
z1+
z2+
z k+
k Zustandssignale
Takt
getaktete "Binärspeicher", speichern
für jede Zustandsvariable den Wert 0
oder 1
Folie 11-4
Schaltwerke
Getaktete Schaltwerke
Getaktetes Schaltwerk: Übergangs- und Ausgabefunktion werten nur Eingaben
aus, die zu einem bestimmten Zeitpunkt, dem "Taktzeitpunkt" in einem
Binärspeicher abgespeichert wurden. Liegt der Taktzeitpunkt an jedem
Binärspeicher gleichzeitig an, dann heißt das Schaltwerk synchron.
In der Praxis entwirft man meist getaktete und synchrone Schaltwerke. Nichtsynchrone Signale werden durch Einfügen von getakteten Binärspeichern
synchronisiert.
Das Taktsignal (engl.: Clock) ist ein periodisches (oszillierendes) Signal. Das
„Taktereignis“ bestimmt, wann der Inhalt des Speichers durch den
Nachfolgezustand aktualisiert wird. Das Taktereignis kann in einer steigenden
oder fallenden Signalflanke oder in einem hohen oder niedrigen Signalpegel
bestehen.
Für die Realisierung der Binärspeicher gibt es verschiedene technische
Möglichkeiten: (flankengesteuerte) „Flipflops“ und (pegelgesteuerte) „Latches“
Folie 11-5
Schaltwerke
Flankengesteuertes D-Flipflop
Beispiel: flankengesteuertes D-Flipflop
Der Inhalt des Speichers wird bei steigender
Taktflanke mit dem Wert des Eingangs d
(Folgezustand) aktualisiert. Der Ausgang q gibt
den jeweils gespeicherten Wert
(Momentanzustand) aus.
D
Clk
(Takt)
Q
Schaltsymbol
Timing-Diagramm:
d
Clk
q
Folie 11-6
Schaltwerke
Beispiel
Ein endlicher Automat kann durch ein Schaltwerk implementiert werden, wenn man
den Elementen von I, O, S und S0 binäre Zahlen zuordnet. Diesen Vorgang nennt
man Kodierung.
Beispiel: Getränkeautomat
Kodierung der Eingabe: Die drei Werte 0, C, E des Signals m können durch eine
zweistellige binäre Zahl kodiert werden. Wir wählen:
0: 00
C: 01
E: 10
(11 wird nicht „gebraucht“!)
Kodierung der Ausgabe: Es genügt eine einstellige binäre Zahl. Wir wählen:
n: 0
j: 1
Kodierung der Zustände: Für die vier Zustände des reduzierten Automaten
benötigen wir zwei Zustandsbits.
0 Cent: 00
50 Cent: 01
1 Euro: 10
1,5 Euro: 11
Folie 11-7
Schaltwerke
Beispiel
Getränkeautomat
Schaltwerk
Münzerkenner
m
a
q
d
Mechanismus
zur Ausgabe einer
Getränkedose
Blockdiagramm
Folie 11-8
Schaltwerke
Beispiel
Unvollständig spezifiziertes Schaltwerk
Momentanzustand Eingänge
Folgezustand Ausgang
q1 q0
m1
m0
d 1 d0
a
0
0
0
1
1
0
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
0
1
X
0
1
1
X
1
1
1
X
1
1
1
X
0
0
0
X
0
0
0
X
0
0
0
X
1
1
1
X
1
1
0
1
0
X
1
0
1
X
0
1
1
X
1
1
1
X
Der Münzerkenner kann / darf
niemals das Signal 11 erzeugen
(siehe Kodierung). Also kann
die Eingabe 11 nicht auftreten.
Die Maschine kann für 11 einen
beliebigen (´X´) Nachfolgezustand annehmen.
⇒ die Übergangs- und
Ausgabefunktion haben eine
Don't Care-Menge,
"unvollständig spezifizierter"
Automat
kodierte Zustandstafel (unvollständig spezifiziert)
Folie 11-9
Schaltwerke
Unvollständig spezifiziertes Schaltwerk
Die Tatsache, dass uns für bestimmte Zustände das Verhalten des Automaten „egal“
ist, führt dazu, dass Übergangs- und Ausgabefunktion unvollständig spezifiziert
werden. Für bestimmte Zustände und bestimmte Eingaben existieren keine
Anforderungen hinsichtlich des Nachfolgezustands.
Während des Entwurfs können die durch die unvollständige Spezifikation
gegebenen Freiheitsgrade zur Optimierung ausgenutzt werden. Für die reale
Implementierung wird die Möglichkeit ausgesucht, die unter Kostengesichtspunkten
am günstigsten ist.
Wir legen im vorliegenden Fall (willkürlich) fest, dass der Automat bei Eingabe 11
in den Nachfolgezustand 00 übergeht.
Vergleiche dazu den Begriff des nicht-deterministischen Automaten: dort gilt, dass
ein Zustand für eine Eingabe in einen Zustand aus einer Menge von Zuständen
übergeht.
Folie 11-10
Schaltwerke
Beispiel
Momentanzustand Eingänge
Folgezustand Ausgang
q1 q0
m1
m0
d1
d0
a
0
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
0
1
0
0
1
1
0
1
1
1
0
1
1
1
0
0
1
0
0
1
0
1
0
0
1
1
0
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
0
0
1
1
0
1
1
Die Übergangsfunktion
und Ausgabefunktion
sind durch eine kombinatorische Schaltung
implementierbar. Die
kodierte Zustandstafel
ist die Wahrheitstabelle
für δ und λ.
kodierte Zustandstafel (vollständig spezifiziert)
Folie 11-11
Schaltwerke
Beispiel
Implementierung der Steuerung des Getränkeautomaten durch sequenzielle
Schaltung
m0
m1
a
d0
d1
q0
q1
D
längste Signallaufzeit durch
den kombinatorischen
Schaltungsteil bestimmt die
Taktperiode!
D
Takt
Folie 11-12
Schaltwerke
Moore- und Mealy-Version bei Schaltwerken
Moore-Schaltwerk
x1
x2
xn
z1
z2
kombinatorische
Schaltung
z1+
z2+
implementiert δ
zk
D
z k+
komb.
Schaltung
y1
y2
impl. λ
ym
Takt
Moore-Schaltwerk: Zustandssignale synchronisiert
Ausgangssignale synchronisiert
Folie 11-13
Schaltwerke
Moore- und Mealy-Version bei Schaltwerken
Mealy-Schaltwerk
x1
x2
xn
z1
z2
y1
y2
kombinatorische
Schaltung
ym
z1+
z2+
implementiert δ und λ
zk
D
z k+
Takt
Mealy-Schaltwerk: Zustandssignale synchronisiert
Ausgangssignale nicht synchronisiert ("asynchron")
Folie 11-14
Schaltwerke
Moore- und Mealy-Version bei Schaltwerken
Synchronisation der Ausgänge verwandelt Mealy-Maschine M in Moore-Maschine M´
z´ = (z, y)
x1
x2
xn
z1
z2
zk
D
λ´(z´) = y
y1
y2
kombinatorische
Schaltung
ym
implementiert δ´
z1+
z2+
δ´ = (δz´, δy´)
= (δ(x, z), λ(x, z)).
D
z k+
Takt
Äquivalente Moore-Maschine zur Mealy-Maschine der vorigen Folie
Folie 11-15
Schaltwerke
Binärspeicher
Im folgenden betrachten wir Möglichkeiten zur Realisierung von Binärspeichern, die
dazu dienen, den Momentanzustand eines Schaltwerks zu speichern. Diese Speicher
müssen zwischen vom Zustand 0 auf 1 umschalten (engl. flip) und von 1 auf 0
zurückfallen (engl. flop) können.
Es werden drei Typen von Flipflops (dt.: bistabile Kippschaltungen) unterschieden:
• ungetaktete Flipflops
• taktpegelgesteuerte Flipflops (Latches)
speichern neuen Wert, während das Taktsignal einen bestimmten Wert hat
• takflankengesteuerte Flipflops (oft nur als „Flipflops“ oder als „Register“ bezeichnet)
speichern einen neuen Wert, während das Taktsignal seinen Wert ändert
Folie 11-16
Schaltwerke
Binärspeicher
Einfache Schaltung mit Rückkopplung
Speicherelement erzeugt durch Zusammenschaltung von Gattern:
einfachster Gatterbaustein: Inverter
andere Möglichkeit: über Kreuz geschaltete NOR- und NAND-Gatter
"1"
"0"
kaskadierte Inverter:
statische Speicherzelle (allerdings ohne
Schreibzugriff…)
Folie 11-17
Schaltwerke
R-S-Flipflop (ungetaktet)
wie kaskadierte Inverter,
allerdings mit der Fähigkeit
den Ausgang auf 0 (reset)
oder 1 (set) zu stellen
r
s
über Kreuz
geschaltete NORGatter
r
q
r = 1, s = 0: q = 0 und q' = 1
r = 0, s = 1: q = 1 und q' = 0
r = 0, s = 0: speichern (hold)
r = 1, s = 1: ??
s
\q
Timing-Diagramm
Reset
Hold
Set
Reset
Set
100
r
s
q
\q
verbotener
Zustand
verbotener
Zustand
Folie 11-18
Wettlauf
Schaltwerke
R-S-Latch
taktpegelgesteuert ("level-sensitive")
\s
Schaltungsdiagramm:
\q
Schreibweise:
\r bedeutet: r ist "active low",
d.h. Rücksetzen bei "0"
\r
q
\en
Timing-Diagramm:
Reset
Set
100
\s
\r
\en
q
\q
Folie 11-19
Schaltwerke
D-Latch (Data, Delay)
taktpegelgesteuert ("level-sensitive")
Schaltungsdiagramm:
\q
d
\en
Funktionstabelle:
\en
d
0
0
1
0
1
X
q
q
Schaltsymbol:
\q
0 1
1 0
hold
D
Q
EN
Q
optional
Folie 11-20
Schaltwerke
Taktung und zeitliches Verhalten von Flipflops
Terminologie
Tsu
Th
Eingangssignal
Takt
Um
Umdas
dasTaktereignis
Taktereignisherum
herum
gibt
es
ein
"Zeitfenster",
gibt es ein "Zeitfenster",innerinnerhalb
dessen
sich
das
Eingangshalb dessen sich das Eingangssignal
signalnicht
nichtverändern
veränderndarf,
darf,um
um
korrekt
verarbeitet
zu
werden
korrekt verarbeitet zu werden
Takt:
Periodisches Ereignis, verursacht Zustandsänderung
des Speicherelementes
"steigende Flanke", "fallende Flanke",
"Pegel high", "Pegel low"
Setup-Zeit (Tsu)
minimale Zeitdauer, die das Eingangssignal stabil
sein muss, bevor das Taktereignis eintrifft
Hold-Zeit (Th)
minimale Zeitdauer, die das Eingangssignal stabil
bleiben muss, nachdem das Taktereignis eingetroffen
ist
Folie 11-21
Schaltwerke
Taktflankengesteuertes D-Flipflop
implementiert als Master-Slave-Flipflop
vorderflankengesteuert (positive/rising edge triggered)
Slave
Master
Q
D
Q
Q
D
D
CLK
EN
EN
D
Q
Clk
EN
hinterflankengesteuert (negative/falling edge triggered)
Slave
Master
Q
D
Q
Q
D
D
CLK
Schaltsymbol
Schaltsymbol
D
EN
Q
Clk
Folie 11-22
Schaltwerke
Zeitliches Verhalten bei Taktflankensteuerung
Typische Timing-Spezifikationen
74LS74: Flipflop
mit positiver
Flankensteuerung
•
•
•
•
Setup-Zeit
Hold-Zeit
Minimale Taktbreite
Verzögerungszeiten
(low nach high, high
nach low, maximal
und durchschnittlich)
D
Clk
Q
Tsu
20
ns
Th
5
ns
Tw
25
ns
Tplh
25 ns
13 ns
T su
20
ns
Th
5
ns
T phl
40 ns
25 ns
Alle Messungen beziehen sich auf das Taktereignis,
d.h. die steigende Flanke des Taktes
Folie 11-23
Schaltwerke
Vergleich von pegel- und flankengesteuerten D-Flipflops
zwei Arten von Binärspeichern:
7474
D
Q
Clk
flankengesteuertes
Flipflop (positive Flanke)
Flipflops (FFs): übernehmen Eingangswert bei Eintreffen
der Ereignisflanke als gespeicherten Wert.
Latches: übernehmen Eingangswert als gespeicherten Wert,
solange das Taktsignal einen bestimmten Pegel
besitzt. (Latch ist "transparent".)
Timing-Diagramm
7476
D
D
Q
EN
Clk
pegelgesteuertes
Latch
Clk
Q
7474
Q 7476
Verhalten ist gleich, außer wenn Eingang
sich ändert, während Takt high ist
Folie 11-24
Schaltwerke
Vergleich von vorder- und hinterflankengest. D-Flipflops
auch: „positive“ bzw. „negative“ Flankensteuerung
100
d
Clk
qpos
\qpos
qneg
\qneg
FF mit positiver
Flankensteuerung
FF mit negativer
Flankensteuerung
Positive Flankensteuerung
Negative Flankensteuerung
liest Eingänge bei steigender Flanke
Ausgänge wechseln nach steigender Flanke
liest Eingänge bei abfallender Flanke
Ausgänge wechseln nach fallender Flanke
Folie 11-25
Schaltwerke
Darstellung der Funktionalität eines RS-Flipflops
s
r
Übergangsfunktion
q
RS-Latch
KV - Diagramm für q+:
q+
s
sr
00
01
11
10
0
0
0
X
1
1
1
0
X
1
q
Die Übergangsfunktion ist von
Vorhandensein und Art der
Taktsteuerung unabhängig.
r
Zustandstafel
s
r
q
charakteristische Gleichung:
q+
q+ = s + r'q
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
0
1
1
X
X
HOLD
RESET
SET
VERBOTEN
Bei Speicherelementen wird
die Übergangsfunktion auch
als "charakteristische
Gleichung" bezeichnet.
Folie 11-26
Schaltwerke
JK-Flipflop (hier: ohne Takt; auch getaktet verfügbar)
Wie beseitigt man den verbotenen Zustand?
kopple Ausgangssignal zurück,
um sicherzustellen, dass r und s
niemals gleichzeitig 1 sind
Idee:
R
k
\Q
RSLatch
j
S
Q
j = k = 1: Toggle
Zustandstafel
charakteristische Gleichung:
j
k
q
q+
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
0
1
1
1
0
q+ = q k' + q' j
HOLD
RESET
SET
Toggle
\q
Schaltsymbol
J
Q
K
Q
Folie 11-27
q
Schaltwerke
Übersicht über die Flipflop-Typen
RS-Latch (Reset-Set):
Als Speicherelement nicht empfehlenswert wegen verbotenem Zustand!
jedoch fundamentaler Baustein für andere Flipfloptypen
JK-Flipflop (Jump-Kill):
breit einsetzbares Bauelement, getrennte Steuersignale für Setzen und Rücksetzen
oft nützlich
D-Flipflop (Data, Delay):
minimiert Verdrahtungsaufwand, in VLSI-Technologien bevorzugt,
einfachste Entwurfstechnik, am besten für Speicherregister geeignet
T-Flipflop (Toggle):
existieren nicht als eigenständige Bauelemente, werden aus einem der anderen
Flipfloptypen zusammengesetzt.
Eingang T=1: Ausgang wechselt. Eingang T=0: Ausgang bleibt konstant.
Gut für Zähler geeignet
Die verschiedenen Flipflop-Typen lassen sich mit Hilfe von kombinatorischer
Logik ineinander umformen. Die Art der Taktauswertung (pegelgesteuert oder
flankengesteuert) wird davon nicht beeinträchtigt.
Folie 11-28
Schaltwerke
Gegenseitige Implementierung von FF-Typen
"charakteristische Gleichungen":
RS:
q+ = s + r'q
D:
q+ = d
JK:
q+ = jq' + k'q
T:
q+ = tq' + t'q
Bestimme Ansteuerfunktion zur Implementierung von FF-Typ X mittels FF-Typ Y
durch Gleichsetzen der charakteristischen
Gleichungen von X und Y sowie
ggf. Fallunterscheidung zwischen
q = 0 und q = 1.
Implementierungen
d
J Q
Clk
K Q
q
k
D
j
D-FF implementiert mit JK-FF
(beide flankengesteuert)
Q
Clk Q
JK-FF implementiert mit D-FF
(beide flankengesteuert)
Folie 11-29
Schaltwerke
Schaltungwerksrealisierungen mit verschiedenen FF-Typen
Ansteuerungstabelle (hier für die 4 bekannten FF-Typen)
q
0
0
1
1
q+
0
1
0
1
r
X
0
1
0
s
0
1
0
X
j
0
1
X
X
k
X
X
1
0
t
0
1
1
0
d
0
1
0
1
"Ansteuerungstabelle":
Welche Eingaben sind notwendig, um
bestimmte Zustandsänderungen zu erzielen?
Vorgehensweise zur Implementierung eines Schaltwerks mit einem
vorgegebenen Flipflop-Typ
Falls D-Flipflop: Ansteuerfunktion ergibt sich aus den Folgezustandsspalten der
kodierten Zustandstafel.
Ansonsten:
• erweitere die Zustandstafel um Spalten für die Ansteuerung jedes Zustandsflipflops
• lies für jede Zeile und jedes Zustandsbit qi den Folgezustand qi+ ab
• entnimm der Ansteuertabelle die zum Paar (qi, qi+) gehörenden Werte der FF-Eingänge
(für den vorgegebenen FF-Typ)
• trage diese Werte in die zugehörigen neuen Spalten ein
Aus den neuen Spalten kann die Ansteuerfunktionen der Flipflops als Bündel
von Schaltfunktionen abgelesen und unter Nutzung der Don‘t Care‘s minimiert werden.
Folie 11-30
Schaltwerke
Beispiel: Getränkeautomat mit JK-FF
q
0
0
1
1
Momentanzustand Eingänge
j
0
1
X
X
q+
0
1
0
1
k
X
X
1
0
neue Spalten:
Folgezustand Ausgang
Flipflop-Ansteuerung
q1 q0
m1
m0
d1
d0
a
j1
k1
0
0
0
1
1
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
0
1
0
0
1
1
0
1
1
1
0
1
1
1
0
0
1
0
0
1
0
1
0
0
1
1
0
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
0
0
1
0
0
1
1
0
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
0
0
0
1
0
0
0
1
j0
k0
0
1
0
0
X
X
X
X
0
1
1
0
X
X
X
X
X
X
X
X
0
1
0
1
X
X
X
X
0
0
0
1
Folie 11-31
Technische Informatik I
Kapitel 12
Funktionseinheiten sequenzieller Systeme
Folie 12-1
Funktionseinheiten sequenzieller Systeme
Kapitelübersicht
Latches und Flipflops
bereits in Kap. 11 betrachtet
Register
• Speicherregister
• Schieberegister
Zähler
Random Access Memory (RAM)
• statisches RAM
• dynamisches RAM
Folie 12-2
Funktionseinheiten sequenzieller Systeme
Register
Speicherregister (lineare Speicher)
+
Fasse mehrere Flipflops gemäß der gegebenen
Darstellungsbreite zusammen
/Clr
D3
D
S
Q3
Q
R Q
D2
D
S
D
S
Q
Q1
Q
R Q
D0
D
S
TTL-Baustein
Q2
R Q
D1
Beispiel:
4-Bit Register aus 4 D-FFs
gemeinsames Takt- und Clear-Signal
Q0
asynchroner Reset:
Q wird 0 für Clr = 1,
unabhängig vom
Taktsignal
171
12
13
11
5
4
14
CLK
CLR
D3
D2
D1
D0
Q3
Q3
Q2
Q2
Q1
Q1
Q0
Q0
9
10
7
6
2
3
1
15
Q
Clk
R Q
"TTL 74171 Quadruple D-type FF with Clear"
(mit Angabe der Pinbelegung)
Folie 12-3
Funktionseinheiten sequenzieller Systeme
Register
Varianten von
Speicherregistern
Enable für Eingangssignale (Load)
Enable für Tri-State-Ausgänge
377
11
1
18
17
14
13
8
7
4
3
CLK
EN
D7
D6
D5
D4
D3
D2
D1
D0
Q7
Q6
Q5
Q4
Q3
Q2
Q1
Q0
19
16
15
12
9
6
5
2
"74377 Octal D-type FFs
with Enable"
11
18
17
14
13
8
7
4
3
374
CLK
H
QH
G
QG
F
QF
E
QE
D
QD
C
QC
B
QB
A
QA
OE
1
19
16
15
12
9
6
5
2
"74374 Octal D-type FFs
with Tri-state Outputs"
D-FFs mit postiver Flankensteuerung,
active low input enable (EN),
D-FFs mit positiver Flankensteuerung,
active low output enable (OE)
bei EN auf low und Taktübergang von
low nach high werden die Daten in
das Register geladen
wenn OE auf low ist, kann Registerinhalt
ausgelesen werden, sonst hohe Impedanz
Folie 12-4
Funktionseinheiten sequenzieller Systeme
Schieberegister
Oft sind Datentransfers zwischen benachbarten Zellen nötig
⇒ Speicher + Fähigkeit, Daten zwischen den Speicherelementen zu zirkulieren
+
Q2
Q3
Q4
Q1
\Reset
Schieberichtung
Schiebe
J SQ
CLK
K RQ
Q1
J SQ
CLK
K RQ
Q2
J SQ
CLK
K RQ
Q3
J SQ
CLK
K RQ
Q4
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
1
Schiebe
Schiebe
Shift
\Reset
+
hier: Realisierung mit Master Slave FF
Schiebe Flipflopinhalt bei jedem
Übergang des shift-Signals von
low auf high zum rechten Nachbarn
(gehe vom äußerst rechten Element
zum äußerst linken Element)
Master Slave FFs: lese Eingänge während
Takt high ist; ändere Ausgänge bei
Dieses Schieberegister ist nicht initialisierbar!
fallender Flanke
(externe Ein- und Ausgänge?)
Folie 12-5
Funktionseinheiten sequenzieller Systeme
Ein-/Ausgänge eines Schieberegisters
unterschiedliche Varianten und Ansteuerungsmöglichkeiten:
serielle oder parallele Eingänge
serielle oder parallele Ausgänge
Schieberichtung: links oder rechts
S1
S0
194
LSI
D
C
B
A
QD
QC
QB
QA
RSI
CLK
CLR
74194 4-bit bidirektionales
universelles Schieberegister
Implementierung:
serielle Ein-/Ausgänge:
parallele Ein-/Ausgänge:
Beispiel für einen universellen Schieberegisterbaustein:
- serielle Eingänge: LSI, RSI
- parallele Eingänge: A, B, C, D
- parallele Ausgänge: QA, QB, QC, QD
- clear-Signal
- positive Flankensteuerung
S1,S0 bestimmen den Schiebemodus
S1 = 1, S0 = 1: paralleles Laden von A, B, C, D in QA, QB, QC, QD
bei steigender Taktflanke (synchonous load)
S1 = 1, S0 = 0: schiebe bei steigender Taktflanke nach links
LSI ersetzt D
S1 = 0, S0 = 1: schiebe bei steigender Taktflanke nach rechts
RSI ersetzt A
S1 = 0, S0 = 0: speichere Zustand (hold)
keine Rückkopplung der ersten und letzten Stufe,
sondern externe Anschlüsse
Multiplexlogik am Eingang jedes internen FFs
Folie 12-6
Funktionseinheiten sequenzieller Systeme
Register
Beispiel: Parallel/Serien-Wandlung
Sender
D7
D6
D5
D4
Clock
parallele
Eingänge
(8 bit)
D3
D2
D1
D0
Empfänger
S1
S0 194
LSI
D
QD
C
QC
B
QB
A
QA
RSI
CLK
CLR
S1
S0 194
LSI
D
QD
C
QC
B
QB
A
QA
RSI
CLK
CLR
D7
D6
D5
D4
S1
S0 194
LSI
D
QD
C
QC
B
QB
A
QA
RSI
CLK
CLR
S1
S0 194
LSI
D
QD
C
QC
B
QB
A
QA
RSI
CLK
CLR
D3
D2
D1
D0
parallele
Ausgänge
(8 bit)
serielle
Übertragung
parallel einlesen:
Sender: S0 = S1 = 1
(1 Takt lang)
seriell übertragen:
Sender und Empfänger:
S0 = 1, S1 = 0
(8 Takte lang)
parallel auslesen:
Empfänger: S0 = 0, S1 = 0
(1 Takt lang)
z.B. Terminal → Telefonleitung → Rechner
Folie 12-7
Funktionseinheiten sequenzieller Systeme
Zähler
durchlaufe eine wohldefinierte Folge von Zuständen in Abhängigkeit
von einem Zählsignal
Merkmale von Zählern:
•
Steuersignal für Zählrichtung:
3 Bit Aufwärtszähler: 000, 001, 010, 011, 100, 101, 110, 111, 000, ...
3 Bit Abwärtszähler: 111, 110, 101, 100, 011, 010, 001, 000, 111, ...
•
Art des Zählcodes ist beliebig. (z.B.: binär, BCD, Gray-Code)
•
Steuersignale für Zählen/Laden/Anhalten
•
Synchrone/Asynchrone Nullstellmöglichkeit
Ein Schieberegister kann auch als Zähler aufgefasst werden.
Nachteil: pro Zählschritt ein Register (1000, 0100, 0010, 0001)
Folie 12-8
Funktionseinheiten sequenzieller Systeme
RAM-Speicherbausteine
Flipflops sind Schaltungen, mit denen sich 1 Bit Information speichern lässt.
Durch reguläre Anordnung von n Flipflops (Speicherzellen) und geeignete
Ansteuerung der Flipflopeingänge lassen sich Speicherbausteine für n Bit
Information realisieren. Die einzelnen Speicherzellen lassen sich beliebig
lesen und schreiben (engl. random access memory, RAM).
Flipflop-basierte Speicher halten die Information prinzipiell beliebig lange.
Man nennt sie SRAMs (engl. static RAMs).
Zur Speicherung von Information bietet sich auch die Ladung eines
Kondensators an. Über einen MOS-Transistor wird der Kondensator
aufgeladen oder entladen. Das Auslesen zerstört also die Information – sie
muss im Anschluss wieder neu eingeschrieben werden.
Ohne weitere Maßnahmen geht die Ladung des Kondensators durch
Leckströme verloren. Der Speicherinhalt muss daher regelmäßig aufgefrischt
(ausgelesen und neu eingeschrieben) werden. Man spricht deshalb von
DRAMs (engl., dynamic RAMs).
Folie 12-9
Funktionseinheiten sequenzieller Systeme
Static Random Access Memory (SRAM)
Reguläre Anordnung und Ansteuerung einzelner Flipflops erlaubt Realisierung mittelgroßer
Speicherbausteine. Beispiel: 256 Worte × 4 Bit, 4 Millionen Worte × 1 Bit.
Kein Refresh nötig, dafür aber relativ hoher Platzverbrauch (mehrere Transistoren pro Bit).
Dataj
Dataj
Data/Data: "Bitleitung"
Word Enable: "Wortleitung"
Word Enablei
Worte = Zeilen
Statische RAM-Zelle
Fasse mehrere Bits
zu Worten
zusammen.
Statische RAM-Zelle
1 Byte = 8 Bit
Statische RAM-Zelle
hier: jede Speicherzelle
besteht aus 6 Transistoren
Spalten = Bits
Betrachte im folgenden eine 1024 × 4 Architektur
Folie 12-10
Funktionseinheiten sequenzieller Systeme
Static Random Access Memory (SRAM)
Beispiel eines SRAM-Speicherbausteins
Chipauswahlleitung (active low):
bestimmt, ob Speicherinhalt geändert
werden kann
Write-Enable (active low)
bestimmt, ob gelesen oder geschrieben wird
10 Adressleitungen
4 bidirektionale Datenleitungen
1024 x 4 SRAM
CS
WE
A9
A8
A7
IO3
A6
IO2
A5
IO1
A4
IO0
A3
A2
A1
A0
Folie 12-11
Funktionseinheiten sequenzieller Systeme
SRAM - Speicherorganisation
A9
Speichermatrix
A8
Wähle
Zeile aus
64 x 64
quadratisches
Feld
A7
A6
Zeilendekoder
64 x 16
A5
64 x 16
64 x 16
64 x 16
⇒ besser
implementierbar
A4
A3
Wähle innerhalb einer
Zeile aus
A2
A1
Spaltendekoder
Leseverstärker u.
MUXs/DEMUXs
Leseverstärker
A0
CS
Datenpuffer
WE
I/O0
I/O1
I/O2
I/O3
Folie 12-12
Funktionseinheiten sequenzieller Systeme
Dynamic Random Access Memory (DRAM)
Speicherelement: 1 Transistor + 1 Kondensator
Lesen: aktiviere Wortleitung, stelle fest, ob Bitleitung
sich ändert
Wortleitung
Schreiben: aktiviere Wortleitung, setze Bitleitung auf 0
oder 1
Beachte:
Bitleitung
DRAM erlaubt höhere
Speicherkapazität auf einem
Chip als SRAM,
Lese- und Schreiboperationen
sind dafür aber langsamer!
Lesen zerstört Speicherinhalt
Speicherinhalt geht mit der Zeit (Millisekunden)
verloren: Auffrischen der Speicherzellen notwendig
Interne Schaltungen lesen Wort und schreiben es
gleich zurück
Beispiel: Speicher in einem PC
Hauptspeicher: DRAM
Cache: SRAM
Folie 12-13
Technische Informatik I
Kapitel 13
Aufbau eines Rechners
Folie 13-1
Struktur eines Computers
Aufbau eines
Rechners
Von Neumann - Rechner
• Rechner (Computer): Prozessoreinheit + Speicher (+ Ein-/Ausgabeeinheiten)
• Prozessoreinheit: Steuerwerk + Datenpfad (Operationswerk)
• Steuerwerk: endlicher Zustandsautomat
Eingabe: Maschinenbefehle, Datenpfadbedingungen
Ausgabe: Steuersignale für Registertransfers
Befehlsinterpretation: Befehl holen (Instruction Fetch), dekodieren, ausführen
• Datenpfad: funktionale Einheiten + Register
Funktionale Einheiten: ALU, Multiplizierer, Addierer, etc.
Register: Schieberegister, Speicherregister
Rechnerentwurf ist Beispiel für den Entwurf eines komplexen digitalen Systems.
Folie 13-2
Aufbau eines
Rechners
Struktur eines Computers
Darstellung als Blockdiagramm (ohne Ein-/Ausgabeeinheit)
Addresse
Central
Processing
Unit
(CPU)
Prozessor
Lesen/Schreiben
Speicher
Befehle, Daten
Operationstyp
Steuerwerk
Steuerungsbedingungen
Organisation der einzelnen
Verarbeitungsschritte und
ihrer zeitlichen Abfolge
Datenpfad
(Operationswerk)
Verarbeitung der
Daten
Folie 13-3
Struktur eines Computers
Aufbau eines
Rechners
Beispiel für Durchführung eines Befehls
Befehl: Addiere Rx zu Ry und lege Ergebnis in Rz ab
Schritt 1: hole den Befehl ADD aus dem Speicher und lade ihn ins Befehlsregister
Schritt 2: dekodiere den Befehl
Befehl im Befehlsregister ist ADD
Quelloperanden sind Rx, Ry
Zieloperand ist Rz
Schritt 3: führe Befehl aus
schicke Rx, Ry zur ALU
bereite ALU vor, ADD-Funktion auszuführen
addiere Rx zu Ry
schicke ALU-Ergebnis zu Rz
Folie 13-4
Struktur eines Computers
Aufbau eines
Rechners
unterschiedliche Arten von Befehlen
• Datenmanipulation (Registertransfer)
Addieren, Subtrahieren, etc.
Übertragung von Register zu Register
• Daten speichern
Lade/Speichere Daten aus/im Speicher
• Steuern
bedingte und unbedingte Verzweigungen
Aufrufen und Zurückkehren aus einer Unterroutine
Folie 13-5
Aufbau eines
Rechners
Struktur eines Computers
Steuerwerk
Elemente des Steuerwerks (Control Unit, Instruction Unit) sind die
üblichen Bestandteile von Schaltwerken:
•
•
•
•
Zustandsregister
Schaltlogik zur Berechnung der Nachfolgezustände
Schaltlogik zur Berechnung der Ausgangssignale
(Steuersignale für den Datenpfad)
plus zusätzliche Steuerregister:
•
Befehlsregister (Instruction Register (IR)):
speichert Befehl,
während er dekodiert wird
•
Programmzähler (Program Counter (PC)):
enthält Adresse des nächsten
auszuführenden Befehls
Folie 13-6
Aufbau eines
Rechners
Struktur eines Computers
Steuerwerk
0
Reset
Initialisiere
Maschine
Zustandsdiagramm
• Rücksetzen
holen
• Befehl holen
unterschiedlicher
Ablauf für jeden
Befehlstyp
• dekodieren
• ausführen
3 Arten von Befehlen:
Verzweigung
ausführen
• verzweigen
• laden/speichern
Zweig
genommen
lade/
ausspeichere führen
Registertransfer
ausführen
Zweig
nicht genominkremenmen
tiere PC
• Registertransfers
Folie 13-7
Aufbau eines
Rechners
Struktur eines Computers
Datenpfad
Cin
Arithmetische Schaltungen
entworfen auf
hierarchische und
iterative Weise
Ain
Bin
VA
Jedes Bit im Datenpfad
ist funktional gleich
4-bit
8-bit
16-bit
32-bit
64-bit
Datenpfade
Die arithmetischen Operationen
eines Prozessors werden in der
ALU (arithmetic logic unit)
zusammengefasst.
Sum
Cout
Ain
Bin
Sum
HA
Cout
HA
Cin
Hierarchischer Aufbau
eines Volladdierers
Folie 13-8
Aufbau eines
Rechners
Struktur eines Computers
Datenpfad
Blockdiagramm einer ALU
32
32
- Addition
- Subtraktion
- shift links
- shift rechts
- Komplement
-…
B
A
ALU
Operation
32
Cout S
32
Leitungsbündel
aus 32 Leitungen
Folie 13-9
Aufbau eines
Rechners
Struktur eines Computers
Blockdiagramm / Register-Transfer-Ebene
Speicherpfad
Ladepfad
Akkumulator (AC)
AC := AC <op> Mem
AC
Kontrollfluss
Datenfluss
n Bit breit
"single address
instructions"
AC impliziter Operand
A
FSM
B
ALU
MAR
Opcode
S
IR
FSM (finite state
machine):
Steuerwerk
SpeicherAdresse
Speicher
n Bit breit,
m Wörter
PC
Befehlspfad
Memory Address Register
hält die Adresse während des
Speicherzugriffs
Folie 13-10
Struktur eines Computers
Aufbau eines
Rechners
Blockdiagramm / Register-Transfer-Ebene
betrachte den Befehl: AC := AC + Mem<address>
1. Befehl holen (instruction fetch):
kopiere PC nach MAR
initiiere Lesesequenz für Speicher
schiebe Daten vom Speicher zum IR
2. Befehl dekodieren (instruction decode):
Op-code Bits von IR sind Eingangssignale des Steuerwerks
restliche IR Bits kodieren die Adresse des Operanden
Befehl: Einadressformat (n bit)
Operationscode
(Art des Befehls)
Angabe des (der) Operanden
Folie 13-11
Struktur eines Computers
Aufbau eines
Rechners
Blockdiagramm / Register-Transfer-Ebene
betrachte den Befehl: AC := AC + Mem<address>
3. Operand holen (Operand Fetch):
schiebe Operandenadresse von IR nach MAR
initiiere Lesesequenz für Speicher
4. Befehl ausführen (Instruction Execute):
Daten auf dem Ladepfad verfügbar
schiebe Daten zu ALU-Eingängen
konfiguriere ALU für ADD-Operation
schiebe Ergebnis von S nach AC
5. Programmverwaltung (Housekeeping):
inkrementiere PC, so dass PC auf nächsten Befehl zeigt
Folie 13-12
Aufbau eines
Rechners
Struktur eines Computers
Steuereinheit: übertrage Daten von einem Register zum anderen
setze geeignete Steuersignale
Notation für den Registertransfer
Befehl holen:
Befehl decodieren:
Befehl ausführen:
Setze Steuersignal
PC → MAR;
Memory Read;
Memory → IR;
Registertransfers
-- kopiere PC nach MAR
-- setze READ-Signal des Speichers
-- lade IR aus dem Speicher
IF IR<op code> = ADD_FROM_MEMORY
THEN
IR<addr> → MAR;
Memory Read;
-- kopiere Operandenadresse nach MAR
-- setze READ-Signal des Speichers
Memory → ALU B;
AC → ALU A;
ALU ADD;
-- leite Speicherinhalt an ALU B
-- leite AC an ALU A
-- befehle ALU, ADD auszuführen
ALU S → AC;
-- leite ALU-Ergebnis an AC
PC+1;
-- inkrementiere PC
Folie 13-13
Register-Transfer (RT) - Ebene
Aufbau eines
Rechners
Die hier verwendete Beschreibung des Aufbau eines Rechners ist im Vergleich
zur Beschreibung eines digitalen Systems auf Gatterebene abstrakter.
Digitale Systeme werden häufig auf der Register-Transfer-Ebene (RT-Ebene)
spezifiziert. Die RT-Beschreibung fasst das System als ein komplexes
Schaltwerk auf und gibt an, welche Übergänge in einem einzelnen Zeitschritt
stattfinden. Gegenüber der bisher verwendeten Beschreibung auf Gatterebene
("Bitebene") sind Abstraktionen möglich:
•
Mehrere Flipflops werden zu Register zusammengefasst und das Verhalten
des Systems durch Transfers von der Quell- zur Zielseite beschrieben.
⇒ "Register-Transfer-Ebene"
Beispiel: Abarbeitung eines Befehls im Prozessorkern
•
Bitvektoren zur Darstellung von Registerinhalten und Bitvektor-Operationen
zur Verknüpfung dieser Inhalte werden ebenfalls als primitive, vordefinierte
Datentypen angesehen ("Wortebene").
Folie 13-14
Aufbau eines
Rechners
Steuerwerk und Datenpfad
Aufteilung der CPU des Von Neumann-Rechners
Umgebung
Daten
Befehle
Operationswerk
(Datenpfad)
Steuerungsbedingungen
Ergebnis
Operationstyp
Steuerwerk
Die Aufteilung großer digitaler Systeme in Operationswerk (data path) und
Steuerwerk (control) ist ein wichtiges Grundprinzip zur Beherrschung der
Komplexität beim Entwurf.
Folie 13-15
Technische Informatik I
Kapitel 14
Entwurfsautomatisierung
Folie 14-1
Entwurfsautomatisierung
Entwurfsstile
Dieses Kapitel gibt einen ersten Einblick in den rechnergestützten Entwurf eines
mikroelektronischen Systems.
Layoutebene
Transistorebene
Gatterebene
1
x
y
Abstraktion
x
verschiedene
Siliziumschichten
implementieren
Transistoren
y
Abstraktion
x
y
x y
0 1
1 0
0
Implementierung logischer Funktionen durch MOS-Transistoren
Je nach geplanter Stückzahl und Anwendungsbereich der zu entwerfenden
Schaltung wählt man zwischen unterschiedlichen Entwurfsstilen aus.
Folie 14-2
Entwurfsautomatisierung
ASICs
Viele Entwurfsaufgaben können durch Standard-ICs (z.B. Standardbausteine wie in
Kap. 9, 11, 12, Mikrocontroller, Mikroprozessoren), die von zahlreichen Herstellern
angeboten werden, gelöst werden.
Oft ist es aber vorteilhaft, für die gegebene Anwendung einen speziellen Chip zu
entwickeln. Solche ASICs (application specific integrated circuits) werden mit
CAD-Werkzeugen entworfen, die eine Vielzahl von Entwurfsschritten
vollautomatisch durchführen.
Ein klassischer Entwurfsstil für ASICs ist der Standardzellenentwurf. Der gesamte
Entwurf wird in relativ kleine Einheiten (z.B. Gatter, Flipflops), so genannte
"Standardzellen", aufgeteilt, die getrennt entworfen werden können. Der
Abstraktionsgrad für die Zellaufteilung ist die logische Ebene (Gatterebene). Die
Zellen haben alle die gleiche Höhe, lediglich ihre Breite kann variieren. Die Zellen
werden meistens manuell entworfen und in einer Zellbibliothek zusammengefasst.
Für den Standardzellenentwurf stehen ausgereifte CAD-Werkzeuge zur Verfügung.
Folie 14-3
Entwurfsautomatisierung
Standardzellen-Layout
VDD
vertikales
Verdrahtungsraster
GND
horizontaler
Verdrahtungskanal
I/O Pads
horizontaler
Verdrahtungskanal
horizontaler
Verdrahtungskanal
Zellen
(AND, OR, NAND,
NOR, XOR, NOT,
AOI, Flipflop)
horizontaler
Verdrahtungskanal
GND
VDD
Struktur eines Standardzellenentwurfs
Folie 14-4
Entwurfsautomatisierung
CAD-basierter Entwurf
Hardwarebeschreibungssprachen (VHDL, Verilog) gestatten die Spezifikation
des Entwurfs auf höherer Ebene. Synthesewerkzeuge setzen die Spezifikation
automatisch in eine detaillierte Beschreibung des physikalischen Entwurfs um.
Beispiel: Addierer
1. Schritt:
Abstrakte Spezifikation durch spezielle Beschreibungssprachen
für Hardware (VHDL, Verilog)
entity VHDL is
port(
A, B : in INTEGER range 0 to 7;
C : out INTEGER range 0 to 7;
);
end VHDL;
architecture VHDL_1 of VHDL is
begin
C <= A + B;
end VHDL_1;
Folie 14-5
Entwurfsautomatisierung
Logiksynthese
2. Schritt: Logiksynthese
- Übersetzung der Spezifikation in unoptimierte Netzliste aus elementaren
logischen Grundfunktionen (UND, ODER, NICHT)
Je nachdem, welcher Abstraktionsgrad für die Spezifikation gewählt wurde, ist
dieser Schritt mehr oder weniger aufwändig. In der heutigen industriellen
Praxis ist der Abstraktionsgrad noch relativ nahe an der Struktur der
entstehenden Netzliste, so dass dieser Abbildungsschritt relativ einfach ist.
Andernfalls, wenn die Spezifikation das Verhalten des Systems auf hoher
Abstraktionsebene beschreibt, sind Techniken der "High-Level"-Synthese
erforderlich.
- "Technologieunabhängige" Optimierung der Netzliste
Information über den konkreten Implementierungsstil, wie beispielsweise die
Eigenschaften der Standardzellen einer gegebenen Bibliothek, wird noch nicht
benutzt. In der Regel wird nur die Anzahl der Literale in den zugrunde
liegenden Booleschen Gleichungen minimiert.
Folie 14-6
Entwurfsautomatisierung
Logiksynthese
(Forts.)
- Anpassung der optimierten technologieunabhängigen Darstellung an
Implementierungsstil (technology mapping)
Im Falle des Standardzellenentwurfs: Darstellung der Netzliste durch Elemente
der Zellbibliothek, Optimierungen (Fläche, Laufzeit) unter Ausnutzung der
physikalischen Eigenschaften der gegebenen Standardzellen
(technologieabhängige Optimierung)
1-bit Addierer auf Gatterebene
Folie 14-7
Entwurfsautomatisierung
Layoutgenerierung
3. Schritt: physikalischer Entwurf (Layoutgenerierung)
- Platzierung der Zellen auf dem Chip
- Verdrahtung der platzierten Zellen
- Dimensionierung der Transistoren zur Optimierung von Fläche und Signallaufzeit,
(große Gatter sind schnell, kleine Gatter sind langsam).
Polysiliziumbahn
VDD
Transistor
Diffusionsgebiete
VSS
Ai Bi
Carry_ini
Carry_outi Si
1-bit Addierer auf physikalischer Ebene
Folie 14-8
Entwurfsautomatisierung
Verifikation
Simulation
Aus einzelnen kombinatorischen und sequenziellen Schaltungskomponenten werden
hochkomplexe Systeme zusammengesetzt. Das Zusammenwirken zwischen den
Komponenten ist oft schwer zu durchschauen, so dass „Entwurfsfehler“ (design bugs)
niemals auszuschließen sind.
Daher ist die „Verifikation“ der spezifizierten Komponenten und des Gesamtsystems
sehr wichtig.
Verifikation durch Simulation:
Erstelle ein Modell des Systems. Lege Stimuli an die Eingänge des
System(modell)s an und untersuche das Verhalten des Modells für diese
Eingaben.
Simulation auf allen Entwurfsebenen zur Validierung der Korrektheit
des Entwurfs
Folie 14-9
Entwurfsautomatisierung
Verifikation
Formale Verifikation
Simulation macht nur Stichproben ⇒ unvollständig!
"Formale" Verifikation: mathematisch exakt, vollständiger Beweis der Korrektheit,
gewinnt industriell stark an Bedeutung
Verifikation durch formale Verifikation:
Erstelle ein Modell des Systems. Formuliere eine wünschenswerte Eigenschaft des
Systems in einer Sprache wie Prädikatenlogik. Untersuche, ob das System(modell)
die Eigenschaft (ausgedrückt als prädikatenlogische Formel) erfüllt.
Praxis: die Verifikation großer Systeme durch Prädikatenlogik ist meist nicht
handhabbar. (Man bedenke die grundsätzliche Nicht-Entscheidbarkeit!)
Deswegen beschränkt man sich in der Praxis auf "einfachere" Logiken wie bestimmte
temporale Logiken oder Aussagenlogik.
Diese Techniken sind Gegenstand der Vorlesung
„Hardware Verification and Quality Assessment“.
Folie 14-10
Entwurfsautomatisierung
Verifikation
Beispiel: Äquivalenzvergleich
Formaler Äquivalenzvergleich zur Verifikation der Optimierungsschritte: Bugs
in Synthesesoftware und manuelle Eingriffe des Designers können zu Fehlern in
der Implementierung führen.
Schaltung vor
Optimierung
a
b
1?
...
Schaltung nach
Optimierung
Schaltungen sind äquivalent und Implementierung korrekt, wenn Ausgangssignal nicht erfüllbar ist. Werkzeuge zum Äquivalenzvergleich beruhen auf
Verfahren zur Überprüfung der Erfüllbarkeit einer Booleschen Funktion
(„SAT-solving“).
Folie 14-11
Technische Informatik I
Prof. Dr. Martin Radetzki
Universität Stuttgart
Anhang N
Analyse umfangreicher elektrischer Netzwerke
Folie 4-1
Elektrischer Strom und elektrische Netzwerke
Netzwerkanalyse
Ziel der Netzwerkanalyse ist die Berechnung aller Ströme und Spannungen
an den einzelnen Bauelementen.
Bsp.: Wie groß sind die Spannungen an den Widerständen R1 bis R5 und wie
groß sind die Ströme durch die Widerstände? Wie groß ist der Strom, den die
Gleichspannungsquelle liefert?
Wir benötigen zur Beantwortung dieser Fragen das Ohm'sche Gesetz sowie
die Kirchhoffschen Gesetze (Maschenregel und Knotenregel).
Folie 4-2
Elektrischer Strom und elektrische Netzwerke
Kirchhoff'sche Gleichungen
Maschenregel
r r
∫ E ⋅ ds = 0
⇒ U R1 + U R 3 − U R 4 = 0
∑U = 0
Masche
Die Summe aller Spannungen beim Umlauf in einer
geschlossenen Masche ist Null.
Spannungen, deren Zählpfeil dabei entgegen der
Umlaufrichtung verläuft, werden negativ gezählt.
Folie 4-3
Elektrischer Strom und elektrische Netzwerke
Kirchhoff'sche Gleichungen: Knotenregel
Knotenregel
Ein Schaltungsknoten
hat keine Kapazität.
Alle Ladung, die in ihn
hineinfließt, muss auch
wieder aus ihm
herausfließen.
⇒
I R1 − I R 3 − I R 5 = 0
∑I = 0
Knoten
Die Summe aller in einen Knoten hineinfließenden
Ströme ist Null.
Ströme, deren Zählrichtung vom Knoten wegzeigt,
werden dabei negativ gezählt.
Folie 4-4
Elektrischer Strom und elektrische Netzwerke
Analyse umfangreicher Netzwerke
Beobachtung:
Mit Hilfe des Ohm'schen Gesetzes allein können in den Zweigen eines
Netzwerkes von den Größen (Ströme und Spannungen) alle bis auf eine
bestimmt werden.
Beispiele:
Folie 4-5
Elektrischer Strom und elektrische Netzwerke
Analyse umfangreicher Netzwerke
•
•
•
In jedem Zweig eines Netzwerks verbleibt eine Unbekannte.
Hat das Netzwerk z Zweige, so benötigt man z linear unabhängige *
Gleichungen zur Berechnung der z Unbekannten.
Zur Aufstellung der z Gleichungen stehen uns die Maschenregel und die
Knotenregel (Kirchhoff'sche Sätze) zur Verfügung.
Systematische Vorgehensweise beim Aufstellen der Gleichungen:
1. Schritt: Darstellen des Netzwerkgraphen
2. Schritt: Festlegen der Zählrichtungen für Strom und Spannung
3. Schritt: Aufstellen der Knotengleichungen
4. Schritt: Aufstellen der Maschengleichungen
* Eine Gleichung ist linear unabhängig von anderen Gleichungen, wenn sie
sich nicht durch lineare Überlagerung wie Addition oder Subtraktion aus
anderen Gleichungen herleiten lässt.
Folie 4-6
Elektrischer Strom und elektrische Netzwerke
1. Darstellen des Netzwerkgraphen
Das Netzwerk wird ohne die
Komponenten nochmals als
Netzwerkgraph dargestellt.
Die Knoten und Zweige des
Netzwerkgraphen stellen die
Struktur der Schaltung dar.
Folie 4-7
Elektrischer Strom und elektrische Netzwerke
2. Festlegen der Zählrichtungen
1.
2.
3.
Für jeden Zweig wird vereinbart, in welcher Richtung der Strom positiv
gezählt werden soll. (Diese Festlegung ist willkürlich und hat keinen
Einfluss auf das Ergebnis.)
An Verbraucher-Zweipolen wird die Zählrichtung für die Spannung in
Richtung des Stromes festgelegt.
An Erzeuger-Zweipolen wird die Zählrichtung entgegen der
Stromrichtung festgelegt.
U1
U0
U5
U4
U3
U2
Folie 4-8
Elektrischer Strom und elektrische Netzwerke
3. Aufstellen der Knotengleichungen
Besitzt ein Netzwerk k Knoten, so können k–1 linear unabhängige
Knotengleichungen aufgestellt werden. Von den k Knoten bleibt also einer
unberücksichtigt. (Die Auswahl des unberücksichtigten Knotens hat keinen
Einfluss auf das Ergebnis).
Beispiel:
–I4
=0
K1: +I0 –I1
K2:
+I1
–I3
–I5 = 0
K3:
–I2 +I3 +I4
=0
K4:
–I0
+I2
+I5 = 0
Die Gleichung für Knoten 4
ergibt sich als negative Summe
der anderen Gleichungen – ist also
linear abhängig von den anderen –
und wird nicht weiter betrachtet.
Folie 4-9
Elektrischer Strom und elektrische Netzwerke
4. Aufstellen der Maschengleichungen
Besitzt ein Netzwerk z Zweige und k Knoten, so müssen zusätzlich zu den k–1
Knotengleichungen noch m = z – (k–1) Maschengleichungen aufgestellt
werden. Diese Maschengleichungen müssen so ausgewählt werden, dass die
resultierenden Gleichungen linear unabhängig sind.
Es gibt verschiedene systematische Ansätze, sicherzustellen, dass die
Maschengleichungen linear unabhängig sind. Man sorgt dafür, dass in jeder
Masche ein Zweig enthalten ist, der in keiner anderen Masche vorkommt.
Wir betrachten im Folgenden zwei Methoden:
1. Methode des vollständigen Baumes
2. Methode der Auftrennung der Maschen
Folie 4-10
Elektrischer Strom und elektrische Netzwerke
4.1 – Maschengleichungen anhand des vollständigen Baumes
Zunächst verbindet man alle k Netzwerkknoten entlang der Zweige so
miteinander, dass keine geschlossene Masche entsteht. Die erzeugte Struktur
ist ein vollständiger Baum des Graphen und enthält k–1 Zweige.
Vollständiger Baum
(Beispiel 1)
Vollständiger Baum
(Beispiel 2)
Die im vollständigen Baum fehlenden z – (k–1) = m Zweige des
ursprünglichen Netzwerkes heißen Verbindungszweige.
Folie 4-11
Elektrischer Strom und elektrische Netzwerke
(4.1 – Maschengleichungen anhand des vollständigen Baumes)
Für das Aufstellen der Maschengleichungen wählt man die Maschen so, dass
jeder Verbindungszweig in genau einer Masche enthalten ist.
Maschen für die drei Verbindungszweige (Beispiel 2 der vorherigen Folie)
Maschengleichungen:
M1: –U0 +U1
+U5 = 0
M2:
+U2 +U3
–U5 = 0
M3: –U0
–U3 +U4 +U5 = 0
Folie 4-12
Elektrischer Strom und elektrische Netzwerke
(4.1 – Maschengleichungen anhand des vollständigen Baumes)
Nach Anwendung des Ohm'schen Gesetzes stehen nun z Bestimmungsgleichungen für die z unbekannten Größen des Netzwerkes zur Verfügung.
Im Beispiel:
Knotengleichungen:
Maschengleichungen
nach Anwendung des
Ohm'schen Gesetzes:
K1:
K2:
K3:
M1:
M2:
M3:
+I0
–I1
+I1
–I4
–I2
+R1 I1
–I3
+I3
–I5
+I4
=0
=0
=0
+R5 I5 = U0
+R2 I2 +R3 I3
–R5 I5 = 0
–R3 I3 +R4 I4 +R5 I5 = U0
Mit Hilfe dieser Gleichungen können die z = 6 Zweigströme I0 ... I5
berechnet werden und daraus dann die Zweigspannungen.
Folie 4-13
Elektrischer Strom und elektrische Netzwerke
4.2 Maschengleichungen durch Auftrennen der Maschen
Die Methode "Auftrennen der Maschen" ist eine weitere Möglichkeit, auf
systematische Weise linear unabhängige Maschengleichungen zu erhalten.
Man wählt zunächst einen beliebigen Maschenumlauf und stellt die
zugehörige Gleichung auf. Diese Masche wird jetzt an einem beliebigen
Zweig aufgetrennt, der in folgenden Maschen nicht mehr verwendet werden
darf. Mit dem verbleibenden Netzwerk verfährt man genauso, d.h., man wählt
den nächsten Maschenumlauf, stellt die Gleichung auf, und trennt die Masche
wieder auf.
Die fortgesetzte Anwendung dieser Methode liefert ebenfalls die benötigten
m = z – (k–1) Gleichungen.
Folie 4-14
Herunterladen