27.01.2013 Aufrufe

[Geben Sie hier die Überschrift ein] - MPC

[Geben Sie hier die Überschrift ein] - MPC

[Geben Sie hier die Überschrift ein] - MPC

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>MPC</strong>-WORKSHOP JULI 2012<br />

Abbildung 4: Prinzipieller Designflow in Cadence Encounter.<br />

globalNetConnect können <strong>ein</strong>em globalen Netz zum<br />

Beispiel <strong>die</strong> jeweiligen Pins (in der verwendeten<br />

Technologie mit vdd! und gnd! bezeichnet) der Standardzellen<br />

zugeordnet werden. Das Platzieren der zuvor<br />

definierten Strukturen schließt das Power Planning<br />

ab.<br />

Im nächsten Schritt werden <strong>die</strong> in der Netzliste aufgeführten<br />

Standardzellen auf dem Floorplan platziert.<br />

Hier gibt es bereits verschiedene Möglichkeiten der<br />

Optimierung. Zum Beispiel kann das Platzieren mit<br />

dem Ziel möglichst optimaler zeitlicher Bedingungen<br />

erfolgen (Timing Driven Place and Route). In <strong>die</strong>sem<br />

Fall werden <strong>die</strong> Leitungslängen zeitlich kritischer Signale<br />

angepasst und <strong>die</strong> zugehörenden Standardzellen<br />

entsprechend platziert.<br />

Der Abschnitt Clock Tree-Synthese <strong>die</strong>nt ebenfalls<br />

der zeitlichen Optimierung und ist nicht zwingend erforderlich,<br />

jedoch im Sinne <strong>ein</strong>es qualitativ hochwertigen<br />

Designs sehr zu empfehlen. Hierbei werden in<br />

<strong>die</strong> Taktnetze weitere Standardzellen wie Buffer und<br />

Inverter <strong>ein</strong>gefügt, um das Taktsignal gleichmäßig<br />

über <strong>die</strong> gesamte Chipfläche zu verteilen. Wichtig für<br />

<strong>die</strong>sen Teil ist das Erzeugen <strong>ein</strong>er Datei, in welcher<br />

<strong>die</strong> zur Verfügung stehenden Standardzellen spezifiziert<br />

sind. Mit <strong>die</strong>ser Datei kann schließlich <strong>ein</strong> Clock<br />

Tree erzeugt werden. In Abbildung 7 ist zu sehen, wie<br />

in <strong>ein</strong>em Skript <strong>die</strong>ser Schritt erfolgen kann.<br />

Es ist zudem zu sehen, wie Teile des Designflows<br />

mittels Steuerflags im Skript übersprungen werden<br />

können. Diese Flags werden ebenfalls global definiert.<br />

Dadurch wird <strong>ein</strong> Skript flexibel und es kann vom<br />

Nutzer bestimmt werden, welche Schritte ausgeführt<br />

werden sollen.<br />

Einen weiteren wichtigen Abschnitt stellt <strong>die</strong> Signalführung<br />

(Signal Routing) dar. In <strong>die</strong>sem Schritt werden<br />

<strong>die</strong> Standardzellen entsprechend der Vorgaben der<br />

Netzliste mit<strong>ein</strong>ander verbunden. Hierbei gibt es ebenfalls<br />

verschiedene Optimierungsmöglichkeiten. Das<br />

Routing selbst kann zum Beispiel wieder nach zeitli-<br />

Abbildung 5: Befehle zum Design Import im Skript.<br />

chen Kriterien erfolgen. Eine weitere Möglichkeit<br />

stellt <strong>die</strong> Post Route-Optimierung dar. Hierbei werden<br />

verschiedene Routings getestet und schließlich das mit<br />

dem besten Zeitverhalten genutzt. Der Aufwand bei<br />

<strong>die</strong>sem Schritt kann sehr hoch s<strong>ein</strong>, da für das Routing<br />

sehr viele Lösungen möglich sind.<br />

In der Design-Endbearbeitung werden <strong>die</strong> Lücken<br />

zwischen den Standardzellen und eventuell vorhandenen<br />

IO-Pads mit sogenannten Filler-Zellen gefüllt. Zu<br />

<strong>die</strong>sem Schritt zählt auch das Erzeugen von Berichten,<br />

um <strong>ein</strong>en Überblick über <strong>die</strong> Qualität des erzeugten<br />

Designs zu erhalten. Es können Berichte zum Beispiel<br />

bezüglich der Konnektivität, der Geometrie, des Zeitverhaltens<br />

sowie zu verschiedenen Statistiken ausgegeben<br />

werden.<br />

Im abschließenden Schritt, dem Design-Export, werden<br />

alle für <strong>die</strong> Weiterverarbeitung benötigten Dateien<br />

erzeugt. Hierzu zählen <strong>ein</strong>e neue Netzliste, in der <strong>die</strong><br />

Verzögerungszeiten aufgrund der Leitungslängen berücksichtigt<br />

werden, <strong>ein</strong>e SDF Timing Datei (Standard<br />

Delay Format) sowie <strong>die</strong> Layoutdaten im GDSII<br />

(Graphical Design System 2) oder dem neueren OA-<br />

SIS (Open Artwork System Interchange Standard)<br />

Format.<br />

IV. FAZIT<br />

Mit <strong>ein</strong>em Skript, welches <strong>die</strong> dargestellten Schritte<br />

abdeckt, kann <strong>ein</strong> Design weitgehend automatisch erzeugt<br />

werden. Für den Anwender ergeben sich dadurch<br />

<strong>ein</strong>ige deutliche Vorteile. Das Erstellen <strong>ein</strong>es<br />

Designs nimmt weniger Zeit in Anspruch. Änderungen<br />

können schneller umgesetzt und getestet werden.<br />

Ein Skript kann auf verschiedene Projekte angewendet<br />

werden. Dabei kann <strong>ein</strong>e <strong>ein</strong>fache Anpassung durch<br />

Anwendung von Variablen erzielt werden. Der Designflow<br />

ist durch das Skript stärker vorgegeben als<br />

bei Arbeiten mit der Benutzeroberfläche und kann<br />

somit leichter <strong>ein</strong>gehalten werden. Der Aufwand zur<br />

Erstellung <strong>ein</strong>es ersten Skriptes ist aufgrund der automatischen<br />

Befehlsmitschnittfunktion in der Benutzeroberfläche<br />

von Encounter gering. Zudem sind <strong>die</strong> Befehle<br />

in Encounter ausführlich dokumentiert, so dass<br />

der Befehlsmitschnitt leicht editiert und zu <strong>ein</strong>em<br />

Skript ausgebaut werden kann.<br />

55

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!