Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie...

24
Dresden, 31.03.2016 Minimierung von Logik-Funktionen unter Ausnutzung der Shannon-Zerlegung Markus Petke

Transcript of Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie...

Page 1: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Dresden, 31.03.2016

Minimierung von Logik-Funktionen unter Ausnutzung der Shannon-Zerlegung

Markus Petke

Page 2: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 2

Gliederung

• Motivation

• Grundlagen

• Implementierung

• Fazit und Ausblick

31.03.2016

Page 3: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 3

Motivation

• Logik-Funktionen als Gatterschaltung realisiert

• Minimierung aus verschiedenen Gründen wichtig

• Platz

• Kosten

• Übersichtlichkeit

31.03.2016

Page 4: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 4

• Klassische Algorithmen basieren auf Zusammenfassung von Min-Termen keine

Erkennung von XOR möglich

• Anwendungsgebiet FPGAs

• Grundlage LUTs mit max. 6 Eingängen

• Konfiguration durch Wahrheitstabelle

31.03.2016

Page 5: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 5

Grundlagen Shannon-Zerlegung

• Auch Shannon-Expansion genannt

• Erstmals von George Boole aufgestellt

• Entwicklung von DNF aus beliebiger Funktion

• Zerlegung in Teilfunktionen

31.03.2016

Page 6: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 6

Beispiel Shannon-Expansion

31.03.2016

Page 7: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 7

Entwickeln nach 𝑥2

31.03.2016

Page 8: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 8

Entwickeln nach 𝑥1

31.03.2016

Page 9: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 9

Entwickeln nach 𝑥0

31.03.2016

Page 10: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 10

Distributivgesetz

31.03.2016

Page 11: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 11

Nutzung zur Minimierung

• Wahrheitstabelle als Grundlage

• Zerlegung in Teilfunktionen und Vergleich

• Gegebenenfalls Vereinfachung

31.03.2016

Page 12: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 12

Vergleiche und Ergebnisse

31.03.2016

Page 13: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 13

Beispiel Minimierung

• 4 Eingangsvariablen

• XOR dargestellt (siehe Tabelle nächste Folie)

• Espresso erkennt es nicht

31.03.2016

Page 14: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 1431.03.2016

Term x3 x2 x1 x0 F

0 0 0 0 0 0

1 0 0 0 1 0

2 0 0 1 0 0

3 0 0 1 1 0

4 0 1 0 0 1

5 0 1 0 1 1

6 0 1 1 0 1

7 0 1 1 1 1

8 1 0 0 0 1

9 1 0 0 1 1

10 1 0 1 0 1

11 1 0 1 1 1

12 1 1 0 0 0

13 1 1 0 1 0

14 1 1 1 0 0

15 1 1 1 1 0

Page 15: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 1531.03.2016

Term x3 x2 x1 x0 F

0 0 0 0 0 0

1 0 0 0 1 0

2 0 0 1 0 0

3 0 0 1 1 0

4 0 1 0 0 1

5 0 1 0 1 1

6 0 1 1 0 1

7 0 1 1 1 1

8 1 0 0 0 1

9 1 0 0 1 1

10 1 0 1 0 1

11 1 0 1 1 1

12 1 1 0 0 0

13 1 1 0 1 0

14 1 1 1 0 0

15 1 1 1 1 0

f0 = 00001111f1 = 11110000

Page 16: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 1631.03.2016

Term x2 x1 x0 F

0 0 0 0 0

1 0 0 1 0

2 0 1 0 0

3 0 1 1 0

4 1 0 0 1

5 1 0 1 1

6 1 1 0 1

7 1 1 1 1

f0 = 0 f1 = -1 f0 = ~f1

f0 = 0000f1 = 1111

Page 17: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 17

Implementierung

• Long als Eingabe

• Bis zu 64 Stellen (max. 6 Eingänge)

• Parser für DNF

31.03.2016

Page 18: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 18

• Zerlegung nach einer Variablen

• Nacheinander alle Variablen

• Teilfunktionen bewertet beste gewählt

• Wiederholen bis alle Variablen bearbeitet

• Teilfunktionen als Knoten eines Binärbaums gespeichert

31.03.2016

Page 19: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 1931.03.2016

Ergebnisfunktion einlesen

Erste Prüfung

Ergebnis ausgeben

F0, F1 ermitteln

Prioritäten festlegen

Beste Aufteilung

wählen

Neue Knoten in Baum einfügen

Nächsten Knoten wählen

Kompletter Baum

bearbeitet?

Ergebnis aus Baum

auslesen

F = 0 oder F = 1

nein ja

Page 20: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 20

• Abspaltung von Variablenpaaren

• Zerlegung funktioniert

• Einige Heuristiken implementiert

• Als Zusatzinformation

31.03.2016

Page 21: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 2131.03.2016

Page 22: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 22

Fazit

• Abspaltung einer Variablen liefert annehmbare Ergebnisse

• XOR werden zuverlässig erkannt

• Abspaltung von Variablenpaaren nur als Zusatzinfo

31.03.2016

Page 23: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 23

Ausblick

• Bewertungen ändern

• Abspaltungen von Variablenpaaren benötigen weitere Heuristiken

• Abspalten von mehr Variablen

Kosten/Nutzen-Faktor beachten

31.03.2016

Page 24: Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie Nr. 3 Motivation • Logik-Funktionen als Gatterschaltung realisiert • Minimierung

Präsentation der Projektarbeit Folie Nr. 24

Vielen Dank für die Aufmerksamkeit

31.03.2016