Georg Wilhelm Friedrich Hegel - Die Wissenschaft der Logik. Die subjektive Logik (1834)
Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie...
Transcript of Minimierung von Logik-Funktionen unter Ausnutzung der ... · Präsentation der Projektarbeit Folie...
Dresden, 31.03.2016
Minimierung von Logik-Funktionen unter Ausnutzung der Shannon-Zerlegung
Markus Petke
Präsentation der Projektarbeit Folie Nr. 2
Gliederung
• Motivation
• Grundlagen
• Implementierung
• Fazit und Ausblick
31.03.2016
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
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
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
Präsentation der Projektarbeit Folie Nr. 6
Beispiel Shannon-Expansion
31.03.2016
Präsentation der Projektarbeit Folie Nr. 7
Entwickeln nach 𝑥2
31.03.2016
Präsentation der Projektarbeit Folie Nr. 8
Entwickeln nach 𝑥1
31.03.2016
Präsentation der Projektarbeit Folie Nr. 9
Entwickeln nach 𝑥0
31.03.2016
Präsentation der Projektarbeit Folie Nr. 10
Distributivgesetz
31.03.2016
Präsentation der Projektarbeit Folie Nr. 11
Nutzung zur Minimierung
• Wahrheitstabelle als Grundlage
• Zerlegung in Teilfunktionen und Vergleich
• Gegebenenfalls Vereinfachung
31.03.2016
Präsentation der Projektarbeit Folie Nr. 12
Vergleiche und Ergebnisse
31.03.2016
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
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
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
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
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
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
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
Präsentation der Projektarbeit Folie Nr. 20
• Abspaltung von Variablenpaaren
• Zerlegung funktioniert
• Einige Heuristiken implementiert
• Als Zusatzinformation
31.03.2016
Präsentation der Projektarbeit Folie Nr. 2131.03.2016
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
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
Präsentation der Projektarbeit Folie Nr. 24
Vielen Dank für die Aufmerksamkeit
31.03.2016