Layout-Synthese - Detaillierte Verdrahtung: Kanalverdrahtung -

Post on 03-Jan-2016

28 views 0 download

description

Layout-Synthese - Detaillierte Verdrahtung: Kanalverdrahtung -. Peter Marwedel Universität Dortmund. 2008/07/09. Sortierung der Verdrahtungsregionen. Konsequenz. Verdrahtung bei einer Verdrahtungsebene. dann. Kanalverdrahtung in zwei Ebenen. sein. Kodierung des Kanalverdrahtungsproblems. - PowerPoint PPT Presentation

Transcript of Layout-Synthese - Detaillierte Verdrahtung: Kanalverdrahtung -

fakultät für informatikinformatik 12

technische universität dortmund

Universität DortmundUniversität Dortmund

Layout-Synthese- Detaillierte Verdrahtung: Kanalverdrahtung -

Peter MarwedelUniversität Dortmund

2008/07/09

- 2 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Sortierung der Verdrahtungsregionen

- 3 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Konsequenz

- 4 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Verdrahtung bei einer Verdrahtungsebene

dann

- 5 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Kanalverdrahtung in zwei Ebenen

sein.

- 6 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Kodierung des Kanalverdrahtungsproblems

- 7 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Kanalverdrahtung

- 8 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Horizontal constraints graph

- 9 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Intervallgraphen

Der HCG ist per Konstruktion ein Intervallgraph

- 10 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Restrictive routing

- 11 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Zusammenhang mit dem Färbungsproblem

- 12 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Der left-edge Algorithmus

- 13 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Der left-edge Algorithmus (2)

- 14 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Beispiel

- 15 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Berücksichtigung der vertikalen Segmente

(je Ebene eine Farbe)

- 16 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Vertical constraints graph

- 17 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

VCG

topologisches Sortieren.

- 18 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Left edge Algorithmus mit Berücksichtigung des VCG

Ohne Netz 3 ok; Mit Netz 3 Verdrahtung mittels left edge-Algorithmus nicht möglich. 2. horizont. Segment erforderlich.

Jeweils Start einer neuen Spur, wenn dies wegen des VCGs erforderlich ist.

http://foghorn.cadlab.lafayette.edu/cadapplets/ChannelRouter.html

- 19 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Dogleg-Kanalverdrahtung nach Deutsch

dogleg

- 20 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Aufbrechen aller Zyklen?

- 21 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

„Greedy channel router“ von Rivest und Fiduccia

Beliebige Zahl horizontaler Segmente pro Spalte und Netz.Durchlauf durch Kanal von links nach rechts

5

5

5

5

1

2

3

4

1

2

3

4

2

3

2

3

3

2

1

4

3

2

1

4

i:=1 (*Spaltennummer*)repeat (*von links nach rechts*) Erzeuge mögliche Top- und Bottom-Verbindungen: 1: Falls (Top[i]=Bottom[i]0) dann verbinde Top und Bottom

2: Falls (Top[i] Bottom[i]) und (Bottom[i] 0) und es existiert ein Konflikt, dann erzeuge kürzeste Verbindung

- 22 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

„Greedy channel router“ von Rivest und Fiduccia (2)

1

0

1

0

2

3

1

2

3

1

0

0

0

0

1

2

1

3

2

4

3

1

2

1

3

2

4

3

3: Falls (Top[i] 0) oder (Bottom[i] 0) dann bringe das Netz an diejenige nächste Spur, die entweder frei oder bereits vom Netz belegt ist. Hier wird nicht mit der belegten Spur verbunden!

Vereinigung von geteilten Netzen: Vollständige Suche nach Doglegs, die den größten Gewinn erbringen. Gewinn: pro vereinigtem Netz eine Spur sowie für jedes Netz, das beendet wird, eine weitere Spur.

Annäherung von geteilten Netzen: Äußere Spuren von geteilten Netzen rücken so weit, wie möglich, in die Mitte (Vorbereitung der Vereinigung).

0

0

0

0

1

2

1

2

1

2

1

2

- 23 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

„Greedy channel router“ von Rivest und Fiduccia (3)

Annäherung an den nächsten Anschluss: Dogleg nach oben, wenn der nächste Anschluss des Netzes sich oben befindet und in den nächsten k Spalten (k: Systemkonstante) kein Anschluss unten existiert. Entsprechend für unten.

Kanalverbreiterung: Verbreitere den Kanal, falls Top oder Bottom-Anschluss nicht möglich war.

Erzeuge horizontale Segmente für den Übergang zur nächsten Spalte; i:=i+1;until (i>rechter Kanalrand) und es existieren keine geteilten Netze

1

2

1

2

2

0

1

0

2

0

1

0

0

3

0

3

1

21

1

21

2

1 0

2

1 0

- 24 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Anwendungs-Beispiel:das schwierige Beispiel von Deutsch

- 25 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Anwendungs-Beispiel:das schwierige Beispiel von Deutsch (2)

- 26 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Switchbox-Routing

An allen 4 Seiten Anschlüsse. Eine Kanalverbreiterung ist dann nicht mehr möglich.Beispiele:

- 27 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

3-Lagen-Verdrahtung

1. Nicht reservierte Ebenen

b) VHV: kein Problem mit vertikalen Segmenten

b) VHV: kein Problem mit vertikalen Segmenten

2. reservierte Ebenena) HVH: geringe Kanalbreite

2. reservierte Ebenena) HVH: geringe Kanalbreite

3 Spuren

2 Spuren

1 Spur

Beispiel

- 28 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Neuere Router

YACR2:yet another channel router, Berkeley Hierarchical channel router

- 29 -technische universitätdortmund

fakultät für informatik

p. marwedel, informatik 12, 2008

Zusammenfassung

Sortierung von Verdrahtungsregionen

River routing

2-Lagen Kanalverdrahtung

• HCG

• Intervallgraphen, left edge-Algorithmus

• VCG

• Dogleg channel routing: Deutsch; Rivest&Fiduccia

Switchbox-Routing

3-Lagen-Verdrahtung