minimierung nach quine mccluskey - userpages.uni …unikorn/lehre/gdra/ss15/02%20bin... ·...

17
Minimierung nach Quine Mc Cluskey Grundlagen der Rechnerarchitektur Logik und Arithmetik 41 F(A,B,C,D) = !A !B !C !D + !A !B !C D + !A B !C !D + !A B !C D + !A B C !D + !A B C D + A !B !C !D + A !B !C D + A !B C D+ A B C D Notiere die Funktion als Binärelemente und fasse diese zu Gruppen zusammen # A B C D Gruppe Die Binärelemente werden nach den in ihnen vorkommenden Einsen in jeweilige Gruppen eingeteilt.

Upload: buicong

Post on 25-Sep-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

Minimierung nach Quine ‐Mc Cluskey

Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 41

F(A,B,C,D) = !A !B !C !D + !A !B !C D + !A B !C !D +!A B !C D + !A B C !D + !A B C D +A !B !C !D + A !B !C D + A !B C D +A B C D

Notiere die Funktion alsBinärelemente und fasse diese zuGruppen zusammen

# A B C D Gruppe

Die Binärelemente werden nach den in ihnen vorkommenden Einsen in jeweilige Gruppen eingeteilt.

Minimierung nach Quine ‐Mc Cluskey

Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 42

# A B C D OK

0 0 0 0 0

1 0 0 0 1

4 0 1 0 0

8 1 0 0 0

5 0 1 0 1

6 0 1 1 0

9 1 0 0 1

7 0 1 1 1

11 1 0 1 1

15 1 1 1 1

# A B C D OK # A B C D OK

Ermitteln der Primterme

Minimierung nach Quine ‐Mc Cluskey

Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 43

# A B C D OK

m9 + m11 1 0 ‐ 1 P1

m7 + m15 ‐ 1 1 1 P2

m11 + m15 1 ‐ 1 1 P3

m0 + m1 + m4 + m5 0 ‐ 0 ‐ P4

m0 + m1 + m8 + m9 ‐ 0 0 ‐ P5

m4 + m5 + m6 + m7 0 1 ‐ ‐ P6

Ermitteln der Primtermtabelle

m0 m1 m4 m5 m6 m7 m8 m9 m11 m15

P1

P2

P3

P4

P5

P6

Minimierung nach Quine ‐Mc Cluskey

Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 44

Finden einer minimalen Überdeckung durch wiederholte Spalten und Zeilendominanzprüfung

m0 m1 m4 m5 m6 m7 m8 m9 m11 m15

P1 X X

P2 X X

P3 X X

P4 X X X X

P5 X X X X

P6 X X X X

Minimierung nach Quine ‐Mc Cluskey

Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 45

Finden einer minimalen Überdeckung durch wiederholte Spalten und Zeilendominanzprüfung

m6 m8 m11 m15

P1 X

P2 X

P3 X X

P4

P5 X

P6 X

Minimierung nach Quine ‐Mc Cluskey

Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 46

Finden einer minimalen Überdeckung durch wiederholte Spalten und Zeilendominanzprüfung

m6 m8 m11 m15

P3 X X

P5 X

P6 X

Minimierung nach Quine ‐Mc Cluskey

Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 47

Finden einer minimalen Überdeckung durch wiederholte Spalten und Zeilendominanzprüfung

m6 m8 m11

P3 X

P5 X

P6 X

Logische BausteineAddierwerke

Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 48

Addition eines einzigen BitsEingang Ausgang

a b CarryIn CarryOut Sum

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

Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 49

+a

b

CarryIn

CarryOut

Sum

Ripple‐Carry‐Adder

Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 50

+a0

b0

CarryIn

CarryOut

Sum

+a1

b1

CarryIn

CarryOut

Sum

+a2

b2

CarryIn

CarryOut

Sum

Problem: Berechnung benötigt O(n) Gatterlaufzeit.

Carry‐Lookahead‐Adder

Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 51

Beobachtung 1: wenn zwei Binärzahlen a(0)...a(n‐1) und b(0)...b(n‐1) addiert werden, dann findet ein Übertrag an der Stelle i statt, wenn

Also können wir als „Carry‐Generierer“ g(i) definieren:

Beobachtung 2: ein Übertrag von der Stelle i‐1 wird von der Stelle i an die nächste Stelle i+1 weiter geleitet, wenn

Also können wir als „Carry‐Propagierer“ p(i) definieren:

Carry‐Lookahead‐Adder

Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 52

Mittels der Generate‐ und Propagate‐Ausdrücke lässt ich dann für jede Stelle i der Carry (Übertrag) für die Stelle i+1 definieren:

Für einen 4‐Stelligen Addierer ergibt sich damit:

Wie hilft uns das jetzt weiter?

Carry‐Lookahead‐Adder

Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 53

Wie hilft uns das jetzt weiter?

Expandieren durch Substitution:

Laufzeit: O(1), aber die hohe Anzahl der benötigten Gatter limitiert die Größe eines solchen Bausteins. (Lösung: zusammenfassen mehrerer CLA zu einer Gruppe)

∙∙∙∙

Logische BausteineSequentielle Schaltungen

Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 54

Sequentielle Schaltungen

Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 55

Kombinatorische Schaltungen Sequentielle Schaltungen……

n Eingänge m Ausgänge

Ausgänge hängen nur von den Eingängen ab. Wie schon gezeigt, ist dies durch eine Wahrheitstabelle beschreibbar.

Zustand ……

n Eingänge m Ausgänge

Ausgänge hängen von den Eingängen und dem aktuellen Zustand des Bausteins ab. Wie kann man dieses Verhalten beschreiben?

Zustandsautomat

Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 56

Zustand 00

Zustand 01

Zustand 10

Eingabe 00 / Ausgabe 11Eingabe 10 / Ausgabe 01Eingabe 11 / Ausgabe 10

Eingabe 11 / Ausgabe 00

Eingabe 01 / Ausgabe 00

2‐Bit E

ingabe

2‐Bit AusgabeEin Beispiel:

Speichern von Zuständen

Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 57Bildquelle: David A. Patterson und John L. Hennessy, „Computer Organization and Design“, Fourth Edition, 2012

R S altes Q neues Q0 0 00 0 10 1 00 1 11 0 01 0 1

Speichern eines Bits am Beispiel R‐S‐Latch (S=Set, R=Reset)

Beobachtung: das Speichern von Zustand erfordert Rückkopplungen (d.h. Ausgang ist wieder Eingang) in der Schaltung.