72
Aufgabe Technologie-Abbildung Abbildung der Ergebnisse einer von der Technologie unabhängigen Optimierung einer Booleschen Netzliste auf gewählte Zielstruktur, in welcher die Technologie des Schaltkreisherstellers zu berücksichtigen ist 4. Synthese digitaler Schaltungen 4.1 Technologieabbildung Vorlesung Einführung in ASIC-Design WS 2009/10 Prof. Dr.-Ing. Dietmar Fey Lehrstuhl Informatik 3 - Rechnerarchitektur 1 Zellen einer Technologie-Bibliothek eines bestimmten Herstellers Eigenschaften der durch die Abbildung ermittelten Logikfelder Programmierung der Ausgangszellen flexible Produkttermnutzung Notwendigkeit der Partitionierung in Teilfelder

4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

  • Upload
    lynhan

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

� Aufgabe Technologie-AbbildungAbbildung der Ergebnisse einer von der Technologie unabhängigen Optimierung einer Booleschen Netzliste auf gewählte Zielstruktur, in welcher die Technologie des Schaltkreisherstellers zu berücksichtigen ist

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

1

Zellen einer Technologie-Bibliothek eines bestimmten Herstellers

Eigenschaften der durch die Abbildung ermittelten Logikfelder

• Programmierung der Ausgangszellen• flexible Produkttermnutzung• Notwendigkeit der Partitionierung in Teilfelder

Page 2: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

wichtig: Abbildung erfolgt unter Optimierung einer zugrunde liegenden Kostenfunktion

keine abstrakte Zielfunktion wie die Zahl der Produktterme bei zweistufiger Logik oder die Anzahl der Literale bei mehrstufiger Logikberücksichtigt werden

• Fläche• Zeit

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

2

• Zeit

Im Folgenden wird ein Verfahren zur Technologie-Abbildung für die mehrstufige Logik behandelt

für zellenbasierte Entwürfe

Minimierung bei Technologie-Abbildung ⇒ exponentieller Aufwandbei größeren Schaltungen sind daher Heuristiken notwendig

Page 3: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

Strategie bei der Technologie-Abbildung:

⇒ Rückführung Boolesches Netz auf gemeinsame standardisierte Form

gewählte Standard-Beschreibung: NAND-Gatter mit zwei Eingängen

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

3

anschließend: Überprüfung welche Elemente der Bibliothek können Teile der Schaltung ersetzen

Frage der Überdeckung von Teilen der Schaltung mit Bibliothekselementen unter Berücksichtigung der Kostenfunktion

Page 4: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

Multiplexer NAND

&&

1 &

&

S

A

Beispiel: Überdeckung einer Schaltung mit Bibliothekselementen

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

4XOR

NAND

&

1

&

&

&

1

&

&1

&

=1

A

B

Page 5: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

Vorgehen bei der Transformation von Knoten des Booleschen Netzes in NAND-Gatter mit zwei Eingängen

zunächst alle Gatter mit mehr als zwei Eingängen in Zusammenschaltungen von Gattern mit zwei Eingängen umwandeln

≥1⇒

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

5

&

&

&

≥1

≥1

≥1

Page 6: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

Problem: Festlegung der Reihenfolge der Klammerung

• Assoziativgesetz gestattet hier mehrere Möglichkeiten

x1x2x3 → (x1x2)x3 bzw. x1(x2 x3) bzw. (x1x3)x2

• optimale Lösung würde Berücksichtigung aller möglichen Kombinationen erfordern

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

6

Kombinationen erfordern

• Auswahl der Klammerungsreihenfolge erfolgt heuristisch, dabei Berücksichtigung möglichst geringer Verzögerungen, z.B. ist

(x1x2)(x3x4) (((x1x2)x3)x4) vorzuziehen

2 Stufen 3 Stufen

Page 7: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

Transformation UND-Gatter in NAND-Gatter• Ausgang NAND-Gatter einfach invertieren

Transformation ODER-Gatter in NAND-Gatter• Anwenden von De Morgan

& ⇒ & 1

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

7

durch Umwandlung entstandene Inverterketten auflösen

≥1 ⇒ &

1

1

⇒1 1

Page 8: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

Beispiel: Umwandlung Boolesches Netz in NAND-Struktur

x1

x2

x3y2 = x2 ∨ x3

y1 = x1 ∨ x2

f = y1 y2 ∨ x4 x5 ∨ x6

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

8

x3

x4 x5 x6

≥1

&1

1

x1

x2

x3

x4

x5

x6

&

≥1

f≥1

Page 9: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

Beispiel: Umwandlung Boolesches Netz in NAND-Struktur

≥1

&1

1

x1x2

x3x4x5x6

&

≥1 f≥1

≥1≥1

≥1

&&

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

9

1x6&

& & 1

&

1

1

1 1

≥1

&

1

1

1

& 1

1

&1

1

&1

1

&

1

1

1&

Page 10: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

Zusammenfassen nachfolgender Inverterketten

&

1

1

1& 1

& 1&

1

1&

1

&1

1

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

10

1&

1

&1

&

&&

1&

&

1

1

Page 11: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

Exakte Überdeckungsbestimmung

Ziel: Überdeckung der NAND-Struktur mit Bibliothekselementen

Untersuchung aller NAND-Gatter nacheinander inklusive einer Teilmenge der Vorgänger, inwieweit diese sich mit NAND-Repräsentation eines Bibliothekselementes deckt

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

11

Repräsentation eines Bibliothekselementes deckt

für jede mögliche Überdeckung festhalten

Kosten

Eingaben

Ausgaben

Page 12: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

Beispiel: Kostenmaßstab sei die Flächezu überdeckende NAND-Struktur

&

1&&

&1

1&

1

x1

x2

x3x4

f1

f2

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

12

Zellbibliothek in NAND-Form

x4f2

Gatter Symbol NAND-Darstellung Kosten

&

1

1 &

&

& 1

&

1inv

nand2

nand3

oai21

&

1

&

&≥1

1

2

3

3

Page 13: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

Aufstellung aller möglichen Überdeckungen

KostenGatter Symbol NAND-Darstellung

inv

nand2

nand3

&1

&

&

& 1

&

1

&

1

&

≥1

1

2

3

&

1&

&

&

1

1&

1

x1

x2

x3

x4

f1

f2

g1

g2

g3

g4

g5

g6

g7 g8

g9

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

13

oai21&

1&&≥1

3

KostenGatter Überdeckung durch

g1 1

Eingaben Ausgabe überdeckt

inv m1 x1 g1 g1

g2 1inv m2 x2 g2 g2

g3 2nand2 m3 g1, g2 g3 g3

g4 2nand2 m4 x1, x2 g4 g4

g5 2nand2 m5 g3, g4 g5 g53oai21 m6 x1, x2, g4 g5 g1, g2, g3, g5

g6 1inv m7 g4 g6 g6g7 2nand2 m8 g6, x3 g7 g7

3nand3 m9 x1, x2, x3 g7 g4, g6, g7g8 1inv m10 g7 g8 g8g9 2nand2 m11 g8, x4 g9 g9

3nand3 m12 g6, x3, x4 g9 g7, g8, g9

x4

Page 14: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

Nach systematischer Aufstellung aller Überdeckungs-Möglichkeiten ist die optimale Technologie-Abbildung aufzufinden

jede mögliche Überdeckung eines Teils der Schaltung wird durch eine Boolesche Variable mi repräsentiert, die Kosten ki

verursachtmi = 1 ⇔ für entsprechende Teilschaltung wird mi verwendet

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

14

mi = 1 ⇔ für entsprechende Teilschaltung wird mi verwendetmi = 0 ⇔ mi wird nicht verwendet

für jedes Gatter gj muss es mi geben, welches gj überdeckt

sei üj eine Bedingung, die ausdrückt, ob gj überdeckt wird, d.h.

eine ODER-Verknüpfung aller mi, die gj überdecken

damit alle Gatter überdeckt werden muss gelten

ii

j mü ∨=

1=∧ jj

ü

Page 15: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

In der Gleichung * bleibt jedoch noch ein Problem unberücksichtigt

• Ursache: wenn mehrere NAND-Gatter durch ein Bibliothekselement

� Dadurch lässt sich das Problem der optimalen Technologie-Abbildung mit minimalen Kosten wie folgt formal formulieren:

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

*1)(...min ==⋅ ∨∧∧∑ iij

jj

ii

i müNdukm

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

15

• Ursache: wenn mehrere NAND-Gatter durch ein Bibliothekselement überdeckt werden, so ist nur noch der Ausgang des letzten überdeckten NAND-Gatters verfügbar

• Folge: ein Gatterausgang gj kann von einem anderen Bibliothekselement nicht mehr als Eingang verwendet werden

• Beispiel: Überdeckung der Gatter g4 g6 g7 durch NAND3-Gatter (m9 = 1) ⇒ Ausgang g4 nicht mehr als Eingang in g5 nutzbar

Page 16: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

• Lösung: Formulierung einer weiteren logischen einzuhaltenden Bedingung, einer sogenannten Verfügbarkeitsbedingung, die gelten muss, wenn ein entsprechendes Bibliothekselement verwendet wird

• dabei ist vi(mk) ein Boolescher Ausdruck, der die

)()( kiikii mvmmvm ∨≡⇒

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

16

• dabei ist vi(mk) ein Boolescher Ausdruck, der die notwendigen Bedingungen bei der Eingabe des durch mirepräsentierten Bibliothekselementes ausdrückt

• Erweiterung der Nebenbedingung der Gleichung *

1))(()(...min =⇒∧⋅ ∧∨∧∑ kiii

iij

ii

i mvmmNdukm

Page 17: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

• Fortsetzung des Beispiels von vorhin

– für m1 m2 sind Eingaben immer verfügbar, da primäre Eingänge der Schaltung ⇒ v1 = v2 = 1

– anders bei m3: benötigt die Ausgaben von g1 und g2; werden nur erzeugt, wenn m1 = 1 und m2 = 1 gilt: d.h. m3 ⇒ m1 m2 bzw. (¬ m3 ∨ m1) (¬ m3 ∨ m2)

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

17

• Überdeckungsbedingungen und Verfügbarkeitsbedingungen ergeben dann folgenden Ausdruck (binäres Überdeckungsproblem):

(m1 ∨ m6) ... ( m11 ∨ m12) (¬ m3 ∨ m1) ... (¬ m10 ∨ m8 ∨ m9) ... (¬ m12 ∨ m7 ) = 1

Page 18: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

• für diesen Ausdruck ist eine Belegung zu finden, die minimale Kosten verursacht

gegeben für m4 = m6 = m7 = m12 = 1 mi = 0 für i ∈{1,2,3,5,8,9,10,11}

anfallende Kosten: k4 + k6 + k7 + k12 = 9

• Ergebnis: kostenminimale Überdeckung

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

18

nand3

inv

nand2

oai21

&

1&

&

&

1

1&

1

x1

x2

x3

x4

f1

f2

1

2

3

4

5

6

7 8

9

Page 19: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

Da das binäre Überdeckungsproblem NP-vollständig ist, greift man zur Lösung der Technologieabbildung auf heuristische Verfahren zurück

Verfahren:

Schaltungsgraph wird in Bäume partitioniert

4. Synthese digitaler Schaltungen4.1 Technologieabbildung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

19

Schaltungsgraph wird in Bäume partitioniert

für die einzelnen Partitionen wird jeweils getrennt eine minimale Überdeckung mit Bibliothekselementen gesucht

Problem: Auffinden einer geeigneten Partitionierung

Page 20: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2 Layoutsynthese 4.2.1 Partitionierung

4.2.1.1 Einführung

4.2.1.2 Begriffsbestimmungen

4.2.1.3 Optimierungsziele– Externe Verbindungen

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

20

– Bounded-Size-Partitionierung

4.2.1.4 Partitionierungsalgorithmen– Kernighan-Lin (KL)-Algorithmus– Erweiterungen des Kernighan-Lin-Algorithmus– Fiduccia-Mattheyses (FM)-Algorithmus– Simulated-Annealing (SA)-Algorithmus

Page 21: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2 Layoutsynthese 4.2.1 Partitionierung - Einführung

VerhaltensentwurfLogischer Entwurf

Floorplanning

ENTITY test isport a: in bit;

end ENTITY test;Partitionierung

Systemspezifikation

Architekturentwurf

Schaltungsentwurf

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

21

Layoutsynthese

Layoutverifikation

Chip

Platzierung

Verdrahtung

Kompaktierung

Herstellung

Schaltungsentwurf

Verpackung/Test

Page 22: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2 Layoutsynthese 4.2.1 Partitionierung - Einführung

Die Aufgabe der Partitionierung besteht darin

eine Schaltung in Teilschaltungen, sog. Partitionen oder Blöcke, aufzuteilen (zu partitionieren),

wobei oft die Verknüpfungen der Blöcke untereinander zu minimieren sind.

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

22

minimieren sind.

Page 23: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2 Layoutsynthese 4.2.1 Partitionierung - Einführung

Gesamtschaltung: 1

2

4

5

3

6

7 8

Schnittlinie c1

Schnittlinie c2

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

23

Schnittlinie c1: vier externe Verbindungen

5

6

48

7 23

1

56

48

7 2

3 1

Block A Block B Block A Block B

Schnittlinie c2: zwei externe Verbindungen

Page 24: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2 Layoutsynthese 4.2.2 Partitionierung - Begriffsbestimmungen

5 6

4

1

3 3

4

5 61

Teilgraph G1: Knoten 3, 4, 5.Block (Partition)

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

24

2 2

Teilgraph G2: Knoten 1, 2, 6.

Geschnittene Kanten bzw.

Schnittmenge (Cutset):

(1,3), (2,3), (5,6),

Zellen

Page 25: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2 Layoutsynthese 4.2.3 Partitionierung - Optimierungsziele

Minimierung der Anzahl der externen Verbindungen

und / oder

Gleichmäßige bzw. vorgegebene Flächengröße der Blöcke (Bounded-Size-Partitionierung)

min)( →=∑Ψ∈e

ewZ

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

25

Blöcke (Bounded-Size-Partitionierung)Wegen Packungsüberlegungen, Gehäuserestriktionen

Häufig Wunsch: Partitionen annähernd gleicher Größe

iV

Asi

≤∑∈ν

υ)(

Vk

sViV

i

1)( ≤=∑

∈νυ

Page 26: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2 Layoutsynthese 4.2.4 Partitionierungsalgorithmen

Partitionierungsalgorithmen

Kernighan-Lin (KL)-Algorithmus

Erweiterungen des Kernighan-Lin-Algorithmus

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

26

Fiduccia-Mattheyses (FM)-Algorithmus

Simulated-Annealing (SA)-Algorithmus

Page 27: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

Gegeben ist ein Graph mit insgesamt 2n Knoten und gewichteten Kanten zwischen beliebigen Knoten.

Gesucht ist die Aufteilung des Graphen in zwei Teilgraphen (Blöcke)

• mit jeweils n Knoten (Zellen) mit minimalen Schnittkosten (Summe der Gewichte aller geschnittenen Kanten).

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

27

(Summe der Gewichte aller geschnittenen Kanten).

2

5

6

3

1

4

7

8

Beispiel: n = 4

Block A Block B

Page 28: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

Kosten D(v) eines Knotens v

D(v) = ∑vextern - ∑vintern

wobei

∑vextern die Anzahl der von der Schnittlinie geschnittenen Kanten des Knotens v und

∑v die Anzahl der nicht von der

2

5

6

3

1

4

7

8Knoten 3:

D(3) = 3-1=2

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

28

∑vintern die Anzahl der nicht von der Schnittlinie erfassten Kanten des Knotens sind

Hohe Kosten (positiver D-Wert) geben damit einen bestimmten Drang an, die Teilmenge zu wechseln,

während niedrige Kosten (negativer D-Wert) ein gewisses „Bleiberecht“ verkörpern.

4 8D(3) = 3-1=2

Knoten 7:

D(7) = 2-1=1

Page 29: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

Gewinnwert zweier Knoten a und b

∆g = D(a) + D(b) - 2* c(a,b),

wobei

D(a), D(b) die Kosten der Knoten a, b

c(a,b) = 1, wenn zwischen a und b eine Kante

2

5

6

3

1

4

7

8

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

29

c(a,b) = 1, wenn zwischen a und b eine Kante existiert, andernfalls gilt c(a,b) = 0.

∆g gibt damit an, wie sinnvoll es hinsichtlich der Schnittkosten des Graphen ist, die beiden betrachteten Knoten auszutauschen.

Je größer ∆g ist, umso mehr wird die Gesamtanzahl der geschnittenen Kanten verringert.

4 8

Page 30: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

Beispiel:

2

5

6

3

1

4

7

8Knoten 3:

D(3) = 3-1=2

Knoten 7:

D(7) = 2-1=1

∆g (3,7) = D(3) + D(7) - 2* c(a,b) = 2 + 1 – 2 = 1

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

30

D(3) = 3-1=2

=> Der Austausch der Knoten 3 und 7 würde die Schnittkosten um 1 verringern

2

5

6

3

1

4

7

8

Page 31: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

Weiteres Knotenpaar auswählen

2

5

6

3

1

4

7

8Knoten 3:

D(3) = 3-1=2

Knoten 5:

D(5) = 2-1=1

∆g (3,5) = D(3) + D(5) - 2* c(a,b) = 2 + 1 – 0 = 3

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

31

4 8D(3) = 3-1=2

=> Der Austausch der Knoten 3 und 5 würde die Schnittkosten um 3 verringern.

2

5

6

3

1

4

7

8

Page 32: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

Gewinnwert zweier Knoten a und b

Das Ziel besteht darin,

die zwei Knoten a und b zu finden, deren Gewinnwert ∆g am größten von allen

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

32

Gewinnwert ∆g am größten von allen möglichen Knotenkombinationen ist,

und diese dann auszutauschen.

Page 33: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

Maximaler positiver Gewinn Gm eines Passes

Der maximale positive Gewinn Gm gibt die Folge von m Vertauschungen innerhalb eines Passes an, die zu einer maximalen Schnittkostenminimierung des Graphen führt.

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

33

Konkret ergibt sich Gm aus den aufaddierten Gewinnwerten ∆g von m hintereinander erfolgten Vertauschungen innerhalb eines Passes.

Page 34: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

Kernighan-Lin-Algorithmus

Schritt 0: V = Menge der 2n Knoten{A, B} sei eine willkürliche Anfangspartitionierung

Schritt 1:

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

34

Schritt 1: i = 1Berechnung von D(v) für alle Knoten v∈V

Schritt 2: Auswahl von ai und bijmit maximalem Gewinnwert ∆gi = D(ai) + D(bi) – 2 * c(aibi)Vertauschen und Fixieren von ai und bi

Page 35: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

Schritt 3: Wenn alle Knoten fixiert sind, weiter mit Schritt 4, andernfallsNeuberechnung der D-Werte für alle Knoten, welche nicht fixiert und mit ai und bi verbunden sindi = i + 1Weiter mit Schritt 2

Schritt 4:

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

35

Schritt 4: Bestimmung der Vertauschungssequenz 1 bis m (1 ≤ m ≤ i), so dass maximiert wirdWenn Gm > 0, weiter mit Schritt 5, andernfalls ENDE

Schritt 5: Durchführen aller m Vertauschungen, Beseitigen aller KnotenfixierungenWeiter mit Schritt 1.

∑ ==

m

i im gG1∆

Page 36: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

Beispiel KL-Algorithmus:

2

5

6

3

1

7D(1) = 1 D(5) = 1D(2) = 1 D(6) = 2

Kosten D(v) jedes Knotens:

Auswahl der Knoten für

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

36

3

4

7

8

Schnittkosten: 9Nicht fixiert: 1,2,3,4,5,6,7,8

D(2) = 1 D(6) = 2D(3) = 2 D(7) = 1D(4) = 1 D(8) = 1

Auswahl der Knoten für maximalen Gewinnwert

Page 37: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

2

5

6

3

1

7

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

37

3

4

7

8

Schnittkosten: 9Nicht fixiert: 1,2,3,4,5,6,7,8

D(1) = 1 D(5) = 1D(2) = 1 D(6) = 2D(3) = 2 D(7) = 1D(4) = 1 D(8) = 1

∆g1 = 2+1-0 = 3Austausch (3,5)G1 = ∆g1 =3

Auswahl der Knoten für maximalen Gewinnwert

Positiver Gewinn des Passes

Kosten D(v) jedes Knotens:

Gewinnwert bei Knotentausch

Page 38: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

2

5

6

3

1

4

7

8

2

5

6

3

1

4

7

8

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

38

Schnittkosten: 9Nicht fixiert: 1,2,3,4,5,6,7,8

D(1) = 1 D(5) = 1D(2) = 1 D(6) = 2D(3) = 2 D(7) = 1D(4) = 1 D(8) = 1

∆g1 = 2+1-0 = 3Austausch (3,5)G1 = ∆g1 =3

Auswahl der Knoten für maximalen Gewinnwert

Positiver Gewinn des Passes

Gewinnwert bei Knotentausch

Page 39: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

2

5

6

3

1

4

7

8

2

5

6

3

1

4

7

8

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

39

Schnittkosten: 9Nicht fixiert: 1,2,3,4,5,6,7,8

Schnittkosten: 6Nicht fixiert: 1,2,4,6,7,8

D(1) = 1 D(5) = 1D(2) = 1 D(6) = 2D(3) = 2 D(7) = 1D(4) = 1 D(8) = 1

∆g1 = 2+1-0 = 3Austausch (3,5)G1 = ∆g1 =3

Page 40: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

2

5

6

3

1

4

7

8

2

5

6

3

1

4

7

8

2

5

6

3

1

4

7

8

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

40

Schnittkosten: 9Nicht fixiert: 1,2,3,4,5,6,7,8

Schnittkosten: 6Nicht fixiert: 1,2,4,6,7,8

D(1) = 1 D(5) = 1D(2) = 1 D(6) = 2D(3) = 2 D(7) = 1D(4) = 1 D(8) = 1

∆g1 = 2+1-0 = 3Austausch (3,5)G1 = ∆g1 =3

D(1) = -1 D(6) = 2D(2) = -1 D(7)=-1D(4) = 3 D(8)=-1

∆g2 = 3+2-0 = 5Austausch (4,6)G2 = G1+∆g2 =8

Auswahl der Knoten für maximalen Gewinnwert

Positiver Gewinn des Passes

Gewinnwert bei Knotentausch

Page 41: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

2

5

6

3

1

4

7

8

2

5

6

3

1

4

7

8

2

5

6

3

1

4

7

8

2

5

6

3

1

4

7

8

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

41

Schnittkosten: 9Nicht fixiert: 1,2,3,4,5,6,7,8

Schnittkosten: 6Nicht fixiert: 1,2,4,6,7,8

Schnittkosten: 1Nicht fixiert: 1,2,7,8

Schnittkosten: 7Nicht fixiert: 2,8

D(1) = 1 D(5) = 1D(2) = 1 D(6) = 2D(3) = 2 D(7) = 1D(4) = 1 D(8) = 1

∆g1 = 2+1-0 = 3Austausch (3,5)G1 = ∆g1 =3

D(1) = -1 D(6) = 2D(2) = -1 D(7)=-1D(4) = 3 D(8)=-1

∆g2 = 3+2-0 = 5Austausch (4,6)G2 = G1+∆g2 =8

D(1) = -3 D(7)=-3D(2) = -3 D(8)=-3

∆g3 = -3-3-0 = -6Austausch (1,7)G3= G2 +∆g3 = 2 Positiver Gewinn

des Passes

Auswahl der Knoten für maximalen Gewinnwert

Gewinnwert bei Knotentausch

Page 42: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

2.4.1 Kernighan-Lin (KL)-Algorithmus: Beispiel

2

5

6

3

1

4

7

8

2

5

6

3

1

4

7

8

2

5

6

3

1

4

7

8

2

5

6

3

1

4

7

8

2

5

6

3

1

4

7

8

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

42

Schnittkosten: 9Nicht fixiert: 1,2,3,4,5,6,7,8

Schnittkosten: 9Nicht fixiert: –

Schnittkosten: 6Nicht fixiert: 1,2,4,6,7,8

Schnittkosten: 1Nicht fixiert: 1,2,7,8

Schnittkosten: 7Nicht fixiert: 2,8

D(1) = 1 D(5) = 1D(2) = 1 D(6) = 2D(3) = 2 D(7) = 1D(4) = 1 D(8) = 1

∆g1 = 2+1-0 = 3Austausch (3,5)G1 = ∆g1 =3

D(1) = -1 D(6) = 2D(2) = -1 D(7)=-1D(4) = 3 D(8)=-1

∆g2 = 3+2-0 = 5Austausch (4,6)G2 = G1+∆g2 =8

D(1) = -3 D(7)=-3D(2) = -3 D(8)=-3

∆g3 = -3-3-0 = -6Austausch (1,7)G3= G2 +∆g3 = 2

D(2) = -1 D(8)=-1

∆g4 = -1-1-0 = -2Austausch (2,8)G4 = G3 +∆g4 = 0

Page 43: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

D(1) = 1 D(5) = 1D(2) = 1 D(6) = 2D(3) = 2 D(7) = 1D(4) = 1 D(8) = 1

∆g1 = 2+1-0 = 3Austausch (3,5)G1 = ∆g1 =3

D(1) = -1 D(6) = 2D(2) = -1 D(7)=-1D(4) = 3 D(8)=-1

∆g2 = 3+2-0 = 5Austausch (4,6)G2 = G1+∆g2 =8

D(1) = -3 D(7)=-3D(2) = -3 D(8)=-3

∆g3 = -3-3-0 = -6Austausch (1,7)G3= G2 +∆g3 = 2

D(2) = -1 D(8)=-1

∆g4 = -1-1-0 = -2Austausch (2,8)G4 = G3 +∆g4 = 0

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

43

Maximaler positiver Gewinn Gm = 8 bei m = 2.

Page 44: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

D(1) = 1 D(5) = 1D(2) = 1 D(6) = 2D(3) = 2 D(7) = 1D(4) = 1 D(8) = 1

∆g1 = 2+1-0 = 3Austausch (3,5)G1 = ∆g1 =3

D(1) = -1 D(6) = 2D(2) = -1 D(7)=-1D(4) = 3 D(8)=-1

∆g2 = 3+2-0 = 5Austausch (4,6)G2 = G1+∆g2 =8

D(1) = -3 D(7)=-3D(2) = -3 D(8)=-3

∆g3 = -3-3-0 = -6Austausch (1,7)G3= G2 +∆g3 = 2

D(2) = -1 D(8)=-1

∆g4 = -1-1-0 = -2Austausch (2,8)G4 = G3 +∆g4 = 0

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

44

Maximaler positiver Gewinn Gm = 8 bei m = 2.

Da Gm > 0, werden die m Vertauschungen (3,5) und (4,6) durchgeführt.

2

5

6

3

1

4

7

8

Page 45: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Kernighan-Lin (KL)-Algorithmus

D(1) = 1 D(5) = 1D(2) = 1 D(6) = 2D(3) = 2 D(7) = 1D(4) = 1 D(8) = 1

∆g1 = 2+1-0 = 3Austausch (3,5)G1 = ∆g1 =3

D(1) = -1 D(6) = 2D(2) = -1 D(7)=-1D(4) = 3 D(8)=-1

∆g2 = 3+2-0 = 5Austausch (4,6)G2 = G1+∆g2 =8

D(1) = -3 D(7)=-3D(2) = -3 D(8)=-3

∆g3 = -3-3-0 = -6Austausch (1,7)G3= G2 +∆g3 = 2

D(2) = -1 D(8)=-1

∆g4 = -1-1-0 = -2Austausch (2,8)G4 = G3 +∆g4 = 0

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

45

Maximaler positiver Gewinn Gm = 8 bei m = 2.

Da Gm > 0, weiterer Pass notwendig, bis Gm ≤ 0 während aller Vertauschungen.

Da Gm > 0, werden die m Vertauschungen (3,5) und (4,6) durchgeführt.

2

5

6

3

1

4

7

8

Page 46: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen – Fiduccia-Mattheyses (FM)-Algorithmus

Gegeben ist ein Graph mit Knoten (Zellen) und gewichteten Kanten zwischen beliebigen Knoten.

Gesucht ist die Aufteilung des Graphen in zwei Teilgraphen (Blöcke) A und B derart,

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

46

Teilgraphen (Blöcke) A und B derart, dass die Anzahl der Netze zwischen beiden Teilgraphen minimiert und gleichzeitig ein vorgegebenes Größenverhältnis der durch die Teilgraphen repräsentierten Blöcke eingehalten wird.

Page 47: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Fiduccia-Mattheyses (FM)-Algorithmus

Gewinnwert einer Zelle ∆g(c)

∆g(c) = FS(c) – TE(c)

wobei

FS(c) die Anzahl der mit der Zelle c verbundenen 1

3

4

2

5

ab

cd

e

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

47

FS(c) die Anzahl der mit der Zelle c verbundenen Netze darstellt, die nicht mit anderen Zellen im gegenwärtigen Block der Zelle c verbunden sind (durch die Schnittlinie kommend nur die Zelle c verbinden) und

TE(c) die Anzahl der mit der Zelle c verbundenen Netze ist, die nicht die Schnittlinie kreuzen

Je höher der Gewinnwert ∆g(c) einer Zelle cist, umso sinnvoller ist es hinsichtlich einer Minimierung der Schnittmenge, diese Zelle in den anderen Block zu verschieben.

Zelle 2:

FS(2) = 0 TE(2) = 1 ∆g(2) = -1Netz b nicht, Netz ada nicht nurmit 2, sondern auch mit 1 verbunden

Zelle 4:

FS(4) = 1 TE(4) = 1 ∆g(2) = -1

Netz c Netz e

Page 48: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Fiduccia-Mattheyses (FM)-Algorithmus

Gewinnwert ∆g(c) aller Zellen

Zelle 1: FS(1) = 2 TE(1) = 1 ∆g(2) = 1

Zelle 2: FS(2) = 0 TE(2) = 1 ∆g(2) = -1

Zelle 3: FS(3) = 1 TE(3) = 1 ∆g(3) = 0

Zelle 4: FS(4) = 1 TE(4) = 1 ∆g(4) = 01

3

4

2

5

ab

cd

e

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

48

Zelle 4: FS(4) = 1 TE(4) = 1 ∆g(4) = 0

Zelle 5: FS(5) = 1 TE(5) = 0 ∆g(5) = 1

1

3

4

2

5

ab

cd

e

Ergebnis der Zellverschiebung

bei Auswahl Zelle 1

Page 49: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Fiduccia-Mattheyses (FM)-Algorithmus

Maximaler positiver Gewinn Gm eines Passes

Der maximale positive Gewinn Gm gibt die Folge von m Verschiebungen innerhalb eines Passes an, die zu einer maximalen Schnittkostenminimierung führt.

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

49

Konkret ergibt sich Gm aus den aufaddierten Gewinnwerten ∆g von m hintereinander erfolgten Verschiebungen innerhalb eines Passes.

Pass: Folge von Verschiebungen angewandt auf beliebige Anfangsverteilung bis jeder Knoten aus G genau einmal für eine mögliche Verschiebung ausgewählt wurde.

Page 50: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Fiduccia-Mattheyses (FM)-Algorithmus

Verhältnisfaktor und Gleichgewichtskriterium

Da beim FM-Algorithmus die Zellen einzeln verschoben werden, ist eine Berücksichtigung der Partitionierungsgrößen bei jeder Zellenverschiebung notwendig.

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

50

Ansonsten könnte eine Partition völlig veerschwinden zw. Gegenüber der anderen zu klein werden.

Mittels eines sog. Verhältnisfaktors r wird ein angestrebtes Größenverhältnis der Flächen A und B ausgedrückt:

BBBBAAAAAAAA

rrrr+

=

Page 51: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Fiduccia-Mattheyses (FM)-Algorithmus

Verhältnisfaktor und Gleichgewichtskriterium

Mit einem vom Verhältnisfaktor r ableitbaren Gleichgewichtskriterium lässt sich jede Zellenverschiebung auf Einhaltung des durch r vorgegebenen Größenverhältnisses beider Teilflächen verifizieren.

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

51

maxmax sVrAsVr +⋅≤≤−⋅

Page 52: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Fiduccia-Mattheyses (FM)-AlgorithmusBasiszelle

Die zur Verschiebung ausgewählte Zelle wird als Basiszelle bezeichnet.

Diese besitzt den maximalen Zellengewinnwert ∆g(c) unter allen verschiebbaren Zellen und verletzt durch ihre Verschiebung nicht

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

52

Zelle 1: FS(1) = 2 TE(1) = 1 ∆g(2) = 1

Zelle 2: FS(2) = 0 TE(2) = 1 ∆g(2) = -1

Zelle 3: FS(3) = 1 TE(3) = 1 ∆g(3) = 0

Zelle 4: FS(4) = 1 TE(4) = 1 ∆g(4) = 0

Zelle 5: FS(5) = 1 TE(5) = 0 ∆g(5) = 1

verschiebbaren Zellen und verletzt durch ihre Verschiebung nichtdas Gleichgewichtskriterium.

Basiszelle

Zelle 1 erfüllt

Gleichgewichtskriterium besser

als Zelle 5

(s. später Folie 57)

Page 53: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen – Fiduccia-Mattheyses (FM)-Algorithmus

Fiduccia-Mattheyses-Algorithmus

Schritt 0: Errechnen des Gleichgewichtskriteriums

Schritt 1: Ermitteln des Gewinns ∆g1 jeder Zelle

Schritt 2: i = 1•

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

53

• Auswahl der Basiszelle c1 mit maximalem Gewinnwert ∆g1, Verschiebung dieser Zelle

Schritt 3: • Fixierung der Basiszelle ci

• Gewinnwert-Aktualisierung der Zellen, die durch kritische Netze mit der Basiszelle ci verbunden sind

Page 54: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen – Fiduccia-Mattheyses (FM)-Algorithmus

Schritt 4:• Wenn alle Zellen fixiert sind, weiter mit Schritt 5, andernfalls• Auswahl der nächsten Basiszelle ci mit maximalem Gewinnwert

∆gi und Verschiebung dieser Zelle• i = i + 1, weiter mit Schritt 3

Schritt 5:

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

54

Schritt 5: • Ermitteln der besten Verschiebungsfolge c1, c2, .., cm (1 ≤ m ≤ i)

, so dass maximiert wird• Wenn Gm > 0, weiter mit Schritt 6, andernfalls ENDE

Schritt 6: • Durchführen aller m Vertauschungen, Beseitigen aller

Zellenfixierungen• Neuer Pass, dazu weiter mit Schritt 1

∑ ==

m

i im gG1∆

Page 55: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen – Fiduccia-Mattheyses (FM)-Algorithmus

Beispiel:

3

4

2A B

ab

cd

e

Gegeben:Verhältnisfaktor r = 0,375s(Zelle_1) = 2 s(Zelle_2) = 4 s(Zelle_3) = 1 s(Zelle_4) = 4

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

55

1 5d

s(Zelle_5) = 5.

Schritt 0 : Errechnen des Gleichgewichtskriteriums

0,375 * 16 – 5 = 1 ≤≤≤≤ | A | ≤≤≤≤ 11 = 0,375 * 16 + 5

maxmax sVrAsVr +⋅≤≤−⋅

Page 56: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen – Fiduccia-Mattheyses (FM)-Algorithmus

1

3

4

2

5

A B

ab

cd

e

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

56

Schritt 1 : Ermitteln der Gewinnwerte jeder ZelleZelle 1:

• Zwei Netze (c, d) sind nur mit Zelle 1 in deren Block verbunden und passieren die Schnittline, d.h. FS(Zelle_1) = 2

• Ein Netz (a) ist mit Zelle 1 verbunden und wird nicht geschnitten, d.h. TE(Zelle_1) = 1

• ∆g(Zelle_1) = 2 - 1 =1, d.h. Anzahl der geschnittenen Netze reduziert sich um eins (von drei auf zwei), sollte Zelle 1 von A nach B verschoben werden

Page 57: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen – Fiduccia-Mattheyses (FM)-Algorithmus

Analoge Berechnung der anderen Zellen:• Zelle 1: FS(Zelle_1) = 2 TE(Zelle_1) = 1 ∆g(Zelle_1) = 1• Zelle 2: FS(Zelle_2) = 0 TE(Zelle_2) = 1 ∆g(Zelle_2) = -1• Zelle 3: FS(Zelle_3) = 1 TE(Zelle_3) = 1 ∆g(Zelle_3) = 0 • Zelle 4: FS(Zelle_4) = 1 TE(Zelle_4) = 1 ∆g(Zelle_4) = 0• Zelle 5: FS(Zelle_5) = 1 TE(Zelle_5) = 0 ∆g(Zelle_5) = 1

Schritt 2 : Auswahl der Basiszelle und Verschiebung

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

57

Schritt 2 : Auswahl der Basiszelle und VerschiebungMögliche Basiszellen: Zelle 1 und Zelle 5Gleichgewichtskriterium nach Verschiebung von Zelle 1: A = s(2) = 4Gleichgewichtskriterium nach Verschiebung von Zelle 5: A = s(1) + s(2) + s(5) = 11 .Beide Verschiebungen verletzen somit nicht das Gleichgewichtskriterium 1 ≤ A ≤ 11

Zelle 1 wird aufgrund der besseren Erfüllung als Basiszelle ausgewählt und verschoben.

Page 58: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen – Fiduccia-Mattheyses (FM)-Algorithmus

Schritt 3 : Zellenfixierung und Gewinnwert-AktualisierungZelle 1 fixieren, neue Anordnung:

3

4

2A B

ab

c

e

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

58

Gewinnwert aktualisieren von allen verschiebbaren Zellen, die mit Zelle 1 verbunden sind:

• Zelle 2: FS(Zelle_2) = 2 TE(Zelle_2) = 0 ∆g(Zelle_2) = 2• Zelle 3: FS(Zelle_3) = 0 TE(Zelle_3) = 1 ∆g(Zelle_3) = -1• Zelle 4: FS(Zelle_4) = 0 TE(Zelle_4) = 2 ∆g(Zelle_4) = -2• Zelle 5: FS(Zelle_5) = 0 TE(Zelle_5) = 1 ∆g(Zelle_5) = -1

Nach Iteration i = 1: zwei Partitionen A1 = { 2 }, B1 = { 1,3,4,5 }, davon fixiert { 1 }

1 5d

Page 59: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen – Fiduccia-Mattheyses (FM)-Algorithmus

Schritt 4 : Auswahl und Verschiebung einer Basiszelle; Zellenfixierung; Gewinnwert-Aktualisierung

Iteration i = 2• Gemäß obigem Schritt 3: Zelle 2 mit maximalem Gewinnwert ∆g2 = 2

A = 0, d.h. Gleichgewichtskriterium nicht erfüllt• Zelle 3 mit nächstem maximalen Gewinnwert ∆g2 = -1

A = 5, d.h. Gleichgewichtskriterium erfüllt • Zelle 5 mit nächstem maximalen Gewinnwert ∆g2= -1

A = 9, d.h. Gleichgewichtskriterium erfüllt

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

59

2A = 9, d.h. Gleichgewichtskriterium erfüllt

• Zelle 3 wird verschobenMengenverteilung A2 = { 2,3 }, B2 = { 1,4,5 }, davon fixiert { 1,3 }

1

3

4

2

5

A B

a b

cd

e Zelle 2: FS(2) = 1 TE(2) = 0 ∆g(2) = 1

Zelle 4: FS(4) = 1 TE(4) = 1 ∆g(4) = 0

Zelle 5: FS(5) = 0 TE(5) = 1 ∆g(5) = -1

Page 60: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen – Fiduccia-Mattheyses (FM)-Algorithmus

Iteration i = 3 • ∆g3(Zelle_2) = 1 ∆g3(Zelle_4) = 0 ∆g3(Zelle_5) = -1• Zelle 2 mit maximalem Gewinnwert ∆g3 = 1

A = 1, d.h. Gleichgewichtskriterium erfüllt • Zelle 2 wird verschoben, Mengenverteilung A3 = { 3 }, B3 = { 1,2,4,5 },

davon fixiert { 1,2,3 }

Iteration i = 4 •

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

60

• ∆g4(Zelle_4) = 0 ∆g4(Zelle_5) = -1, wie vorher, da verschobene Zelle 2 nicht mit Zelle 4 und Zelle 5 verbunden

• Zelle 4 mit maximalem Gewinnwert ∆g4 = 0, A = 5, d.h. Gleichgewichtskriterium erfüllt

• Mengenverteilung A4 = { 3,4 }, B4 = { 1,2,5 }, davon fixiert {1,2,3,4}

Iteration i = 5 • ∆g5(Zelle_5) = -1, wie vorher• Zelle 5 mit maximalem Gewinnwert ∆g5 = -1,

A = 10, d.h. Gleichgewichtskriterium erfüllt• Mengenverteilung A5 = { 3,4,5 }, B5 = { 1,2 }, alle Zellen fixiert• Pass 1 beendet; weiter mit Schritt 5.

Page 61: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen – Fiduccia-Mattheyses (FM)-Algorithmus

Schritt 5 : Ermittlung der besten Verschiebungsfolge 1 … mG1 = ∆g1 = 1G2 = ∆g1 + ∆g2 = 0G3 = ∆g1 + ∆g2 + ∆g3 = 1G4 = ∆g1 + ∆g2 + ∆g3 + ∆g4 = 1G = ∆g + ∆g + ∆g + ∆g + ∆g = 0.

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

61

G5 = ∆g1 + ∆g2 + ∆g3 + ∆g4 + ∆g5 = 0.

Maximaler positiver Gewinn in Iterationen 1, 3 und 4.

Aufgrund des ausgewogeneren Gleichgewichtskriteriums (A = 5) wird Iteration 4 gewählt, d.h. m = 4.

Page 62: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen – Fiduccia-Mattheyses (FM)-Algorithmus

Schritt 6 : Verschiebung der ersten m Zellen tatsächlich durchführen

Da m = 4, werden nur die ersten vier ausgewählten Zellen (Zellen 1, 3, 2, 4) verschoben.Ergebnis von Pass 1:Mengenverteilung A = 3,4, B = 1,2,5, Schnittkosten von 3 auf 2 reduziert.

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

62

3 auf 2 reduziert.

B

1

3

4

2

5

Aa

b

cd

e

1

3

4

2

5

A B

ab

cd

e

Page 63: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Simulated Annealing

KL-Algorithmen finden lokales Optimum abhängig von AusgangssituationZiel von Simulated Annealing

Globales Optimum zu findenDurch „Heraushüpfen“ aus lokalem Optimum durch zeitweises Zulassen verschlechternder Bedingungen

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

63 Lösungszustände

KostenAnfangslösung

Lokales Optimum Globales

Optimum

Page 64: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Simulated Annealing

begin T = T0 , i = 0 /* Initialisierung */ cur_part = init_part /* Anfangspartitionierung */ cur_cost = COST(cur_part) /* Anfangsqualität */ repeat

repeat i = i + 1 ai = SELECT(A), bi = SELECT(B) trial_part = EXCHANGE(ai, bi, cur_part) /* Tauschversuch */ trial_cost = COST(trial_part) ∆cost = trial_cost – cur_cost

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

64

∆cost = trial_cost – cur_cost if( ∆cost < 0 ) then /* wenn Verbesserung */

cur_cost = trial_cost /* Tauschdurchführung */ cur_part = MOVE(ai, bi)

else /* ansonsten */ r = RANDOM(0,1) /* Zufallszahl */

if( r < Tecost∆−

) then /* bedingter */ cur_cost = trial_cost /* Tausch */ cur_part = MOVE(ai, bi)

until ( Abbruchkriterium, z.B. Gleichgewicht bei T, erreicht ) T = α * T /* 0 < α < 1 */ /* Temperatur-Reduktion */

until ( T < Tmin ) end

Page 65: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Simulated Annealing

Gegeben: Schaltung mit sechs Zellen und sechs Netzen, wobei alle Zellen identische Größe besitzen, sowie Netzliste mit Netzgewichten

Gesucht: Aufteilung in zwei Blöcke A und B mit jeweils drei Zellen und minimalen Kosten

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

65

w6 = 4N6 = (2, 3, 6)

w5 = 1N5 = (1, 5)

w4 = 3N4 = (4, 5)

w3 = 2N3 = (2, 3, 6)

w2 = 2N2 = (1, 2, 5, 6)

w1 = 4N1 = (1, 4, 5)

GewichteNetze1 4

2 5

3 6

N5

N1

N2

N3

N6

N4

Page 66: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Simulated Annealing

Parameter des SA-Algorithmus

Anfangstemperatur: T0 = 10, Abbruch bei T < 3,5

Anfangspartitionierung: init_part A{1,2, 3}, B{4, 5, 6}

Anzahl der Austauschversuche pro Temperaturschritt T: 4

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

66

Temperaturabnahme: α = 0,7

Austauschfunktion EXCHANGE(): Paarweiser Tausch der Zellen zwischen A und B

Minimierung der Zielfunktion COST(): Summe der Netzgewichte der geschnittenen Netze

Page 67: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Simulated Annealing

Ergebnisse der einzelnen Iterationen

Zähler i

T ai, bi cur_cost trial_cost Zufallszahl r

T

cost

e∆−

Tausch

1 10,00 3,4 13 16 0,21713 0,74082 Ja 2 10,00 2,3 16 16 0,66138 1 Ja 3 10,00 4,6 16 13 Ja 4 10,00 1,2 13 2 Ja 5 7,00 2,5 2 16 0,11209 0,13534 Ja

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

67

5 7,00 2,5 2 16 0,11209 0,13534 Ja 6 7,00 1,5 16 13 Ja 7 7,00 1,4 13 15 0,33190 0,75148 Ja 8 7,00 2,6 15 15 0,12564 1 Ja 9 4,90 1,3 15 16 0,70105 0,81540 Ja 10 4,90 3,4 16 13 Ja 11 4,90 1,6 13 2 Ja 12 4,90 5,6 2 16 0,49375 0,05743 Nein 13 3,43 1,3 2 13 0,86493 0,04048 Nein 14 3,43 2,5 2 16 0,34371 0,01688 Nein 15 3,43 1,6 2 13 0,73232 0,04048 Nein 16 3,43 1,2 2 13 0,02093 0,04048 Ja

Page 68: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Simulated Annealing

Veranschaulichung ausgewählter Iterationen i:i = 4 (T = 10): Selektierte Zellen zum Tausch sind 1, 2;cur_cost = 13, trial_cost = 2, d.h. Tausch wird akzeptiert

Zähler i

T ai, bi cur_cost trial_cost Zufallszahl r

T

cost

e∆−

Tausch

1 10,00 3,4 13 16 0,21713 0,74082 Ja

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

68

1 10,00 3,4 13 16 0,21713 0,74082 Ja 2 10,00 2,3 16 16 0,66138 1 Ja 3 10,00 4,6 16 13 Ja 4 10,00 1,2 13 2 Ja 5 7,00 2,5 2 16 0,11209 0,13534 Ja 6 7,00 1,5 16 13 Ja 7 7,00 1,4 13 15 0,33190 0,75148 Ja 8 7,00 2,6 15 15 0,12564 1 Ja 9 4,90 1,3 15 16 0,70105 0,81540 Ja 10 4,90 3,4 16 13 Ja 11 4,90 1,6 13 2 Ja 12 4,90 5,6 2 16 0,49375 0,05743 Nein 13 3,43 1,3 2 13 0,86493 0,04048 Nein 14 3,43 2,5 2 16 0,34371 0,01688 Nein 15 3,43 1,6 2 13 0,73232 0,04048 Nein 16 3,43 1,2 2 13 0,02093 0,04048 Ja

Page 69: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Simulated Annealing

Veranschaulichung ausgewählter Iterationen i:i = 5 (T = 7):

• Selektierte Zellen zum Tausch sind 2, 5; cur_cost = 2, trial_cost= 16, d.h. Zufallszahl wird generiert: 0,11209

• 0,11209 < e-14/7 = 0,13534, d.h. Tausch wird akzeptiert. Zähler i

T ai, bi cur_cost trial_cost Zufallszahl r

T

cost

e∆−

Tausch

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

69

i r e 1 10,00 3,4 13 16 0,21713 0,74082 Ja 2 10,00 2,3 16 16 0,66138 1 Ja 3 10,00 4,6 16 13 Ja 4 10,00 1,2 13 2 Ja 5 7,00 2,5 2 16 0,11209 0,13534 Ja 6 7,00 1,5 16 13 Ja 7 7,00 1,4 13 15 0,33190 0,75148 Ja 8 7,00 2,6 15 15 0,12564 1 Ja 9 4,90 1,3 15 16 0,70105 0,81540 Ja 10 4,90 3,4 16 13 Ja 11 4,90 1,6 13 2 Ja 12 4,90 5,6 2 16 0,49375 0,05743 Nein 13 3,43 1,3 2 13 0,86493 0,04048 Nein 14 3,43 2,5 2 16 0,34371 0,01688 Nein 15 3,43 1,6 2 13 0,73232 0,04048 Nein 16 3,43 1,2 2 13 0,02093 0,04048 Ja

Page 70: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Simulated Annealing

Veranschaulichung ausgewählter Iterationen i:i = 12-15 (T = 4,9 bzw. T = 3,43):

• trial_cost jeweils größer als cur_cost und Zufallszahl r jeweils größer als , d.h. Vertauschungen nicht akzeptiert

Zähler i

T ai, bi cur_cost trial_cost Zufallszahl r

T

cost

e∆−

Tausch

1 10,00 3,4 13 16 0,21713 0,74082 Ja

Tte /cos∆−

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

70

1 10,00 3,4 13 16 0,21713 0,74082 Ja 2 10,00 2,3 16 16 0,66138 1 Ja 3 10,00 4,6 16 13 Ja 4 10,00 1,2 13 2 Ja 5 7,00 2,5 2 16 0,11209 0,13534 Ja 6 7,00 1,5 16 13 Ja 7 7,00 1,4 13 15 0,33190 0,75148 Ja 8 7,00 2,6 15 15 0,12564 1 Ja 9 4,90 1,3 15 16 0,70105 0,81540 Ja 10 4,90 3,4 16 13 Ja 11 4,90 1,6 13 2 Ja 12 4,90 5,6 2 16 0,49375 0,05743 Nein 13 3,43 1,3 2 13 0,86493 0,04048 Nein 14 3,43 2,5 2 16 0,34371 0,01688 Nein 15 3,43 1,6 2 13 0,73232 0,04048 Nein 16 3,43 1,2 2 13 0,02093 0,04048 Ja

Page 71: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

4.2.4 Partitionierungsalgorithmen –Simulated Annealing

In der 4. Iteration (i = 4) erreicht der SA-Algorithmus einen Kostenwert von 2, welcher den besten erzielbaren Wert darstellt.

Dieser repräsentiert die Summe der Netzgewichte der geschnittenen Netze (hier Netz 2 mit w2 = 2).

Wie dem detaillierten Ablauf zu entnehmen ist, wurde

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

71

Wie dem detaillierten Ablauf zu entnehmen ist, wurde dieses Optimum durch die vorherige Akzeptanz von einer schlechteren Lösung in der 1. Iteration erreicht.

Die beste Lösung entspricht einer Partitionierung von A{2, 3, 6} und B{1, 4, 5}.

Page 72: 4. Synthese digitaler Schaltungen - informatik.uni … · 2 Im Folgenden wird ein Verfahren zur Technologie-Abbildung für ... Logischer Entwurf Floorplanning ENTITY test is port

1 4

N5

N1

N4

1 4

N5

N1

N4

A B B

4.2.4 Partitionierungsalgorithmen –Simulated Annealing

Die beste Lösung entspricht einer Partitionierung von A {2,3,6} und B {1,4,5}

Vorlesung Einführung in ASIC-DesignWS 2009/10

Prof. Dr.-Ing.Dietmar Fey

LehrstuhlInformatik 3 -Rechnerarchitektur

72

Anfangspartitionierung:A {1,2,3}, B {4,5,6}Kosten: 13

Erzielte Lösung:A {2,3,6}, B {1,4,5}Kosten: 2

2 5

3 6

N2

N3

N6

2 5

3 6

N2

N3

N6

A