Beruflich Dokumente
Kultur Dokumente
Constraint-basierten Entwurf
C. Katzschke1 , M. Olbrich1 , V. Meyer zu Bexten2 , M. Tristl2 , E. Barke1
1 Leibniz Universität Hannover, Institut für Mikroelektronische Systeme,
Kurzfassung
Mission Profiles beschreiben übergeordnete Stress-Informationen, die für den Entwurf integrierter Systeme eingesetzt
werden. Diese Profile werden verfeinert und zu Entwurfsconstraints transformiert. Wir präsentieren Methoden zur Pro-
pagierung von Constraints zwischen Entwurfsdomänen wie Package und Chip. Außerdem stellen wir unser zugehöriges
Constraint-Transformationssystem ConDUCT vor, in dem eine domänenübergreifende Methodik realisiert ist. Die vorge-
schlagenen Methoden werden auf Basis einer Analog/Mixed-Signal-Anwendung aus dem Automotive-Bereich demon-
striert.
Mission Profiles enthalten spezifische Anforderungen an 1.1 Von Mission Profiles zu Entwurfs-
die zu entwerfenden Systeme. Letztlich werden aus Mis- constraints
sion Profiles Entwurfsconstraints abgeleitet, da die Missi-
on Profiles auf unterschiedlichen Ebenen des Entwurfs im- Eine Beispielanwendung für Mission Profiles stellt die
mer weiter verfeinert werden. Die abgeleiteten Constraints Beziehung zwischen Umgebungstemperatur und dem er-
müssen über das gesamte Entwurfssystem weitergegeben forderlichen Strom eines Auto-Fensterhebers dar. Nor-
werden. Für digitale Constraints (z.B. Timing) existieren malerweise reichen geringe Ströme aus, um das Fen-
zwar bereits Austauschmethoden für verschiedene EDA- ster zu bewegen. Wenn es allerdings eingefroren ist und
Werkzeuge. Im Gegensatz dazu existieren solche Metho- der Motor blockiert, werden Ströme benötigt, die um ei-
den aber noch nicht für analoge Schaltungen aufgrund ne Größenordnung höher liegen. Diese kritische Situation
verschiedener Herausforderungen, die mit analogen Cons- wird durch Strom-Belastungsprofile in Abhängigkeit von
traints verbunden sind. Ein Aspekt ist die Heterogenität der der Temperatur modelliert.
Constraint-Typen (z.B. Strom und IR-Drop, geometrische In der Spezifikation wird die erforderliche Lebens-
Abstände und Breiten). Daher muss eine größere Anzahl dauer des Motortreiber-ICs für einen Fensterheber defi-
von Beziehungen zwischen Constraints unterschiedlicher niert. Der Wert für die angestrebte Lebensdauer, sowie
Typen und Domänen modelliert und berücksichtigt wer- die Strom/Temperatur-Stress-Profile sind Parameter zur
den. Berechnung oder Abschätzung der Stromdichte in den
Eine weitere Herausforderung besteht darin, dass die Pins, den Transistoren und Verbindungsleitungen. Eine
Constraints in unterschiedlichen Tools oft zueinander Möglichkeit, Stromdichte-Constraints zu gewinnen, stellt
inkompatibel sind, insbesondere bei unterschiedlichen Black’s Law dar [2]. Es beschreibt die Beziehung zwischen
Domänen, wie PCB, Package und Chip. Zwar existieren Lebensdauer, Temperatur und Stromdichte.
proprietäre Constraint-Systeme einzelner EDA-Anbieter, Eine zu hohe Stromdichte verursacht Elektromigrati-
aber die Propagierung und Abbildung von Constraints von on, welche dazu führt, dass Leitungen durch diffundieren-
einer Domäne in eine andere ist nicht zufriedenstellend de Elektronen an einigen Stellen dünner werden. Abb. 1
gelöst. Dieser Beitrag bietet einen Überblick über Proble- zeigt Leitungen, die durch Elektromigration zerstört wur-
me, die in einem Designflow entstehen, bei dem Cons- den. Dies stellt ein Beispiel für Ausfall-Mechanismen dar
traints in mehreren Domänen verwendet werden. Die Ver- und wir werden es zur Demonstration unserer Methodik in
teilung von Constraints und ihre Modifikation innerhalb ei- den folgenden Abschnitten verwenden. Andere Mechanis-
nes Entwurfssystems mit mehreren EDA-Werkzeugen er- men können in entsprechender Weise behandelt werden.
fordert gut überlegte Strategien. Darüber hinaus wird eine Im Folgenden wird angenommen, dass Constraints be-
Methode benötigt, um Regeln zum Abbilden unterschiedli- reits in verschiedenen Entwurfswerkzeugen existieren, wo-
cher Constraint-Typen von einer Domäne in eine andere zu bei jedes Tool für eine eigene Entwurfsdomäne zuständig
organisieren. Als Lösungsansatz wird ein entsprechendes ist. Anhand des Fensterheber-Beispiels werden wir in Ab-
schnitt 4 demonstrieren, wie ein Strom-Constraint in ein
Dieser Beitrag wurde gefördert als Teil des Projekts ResCar 2.0 Breiten-Constraint transformiert werden kann und wie ei-
(Förderkennzeichen 01 M 3195) durch das Bundesministerium für Bil-
dung und Forschung (BMBF).
ne Transformationsregel dafür aufgebaut sein muss.
Dies erlaubt die Bewertung der Systemeigenschafts-
größen als Funktion von Eigenschaftsgrößen der Kompo-
nenten und stellt sicher, dass geeignete Werte für Entwurfs-
Constraints der Komponenten gewählt werden.
K RINKE ET AL . zeigen in [7] die Erzeugung hierarchi-
scher Constraints, indem Bottom-Up- und gemischte Top-
Down/Bottom-Up-Transformationen und -Propagierungen
definiert werden. Constraints können dabei innerhalb der
gesamten Entwurfshierarchie propagiert werden.
Sowohl A RSINTESCU, D HANWADA als auch K RIN -
Abbildung 1 Durch Elektromigration zerstörte Alumini- KE bieten Lösungen innerhalb der Entwurfshierarchie. Im
umleitung [3] Gegensatz dazu konzentrieren wir uns auf Herausforde-
rungen und Methoden, die es erlauben, die Constraints
über Domänengrenzen hinweg weiterzugeben. Wir ver-
1.2 Stand der Technik wenden Petri-Netze zur Modellierung von Abhängigkeiten
Gemäß [5] definieren wir: zwischen Constraint-Transformationen. Es gibt ähnliche
Ansätze auf dem Gebiet der Workflow-Analyse. S ALIMI -
Definition 1 Constraint-Propagierung ist die Ableitung ei- FARD ET AL . [10] und VAN DER A ALST [12] liefern eine
nes oder mehrerer neuer Constraints aus einer gegebenen allgemeine Beschreibung für das Workflow-Management:
Menge von vorhandenen Constraints. Entwurfsschritte werden dabei auf modifizierte Petri-Netze
abgebildet, welche in diesem Zusammenhang Workflow-
Constraint-Transformation definieren wir als den Pro- Netze (WF-Netze) genannt werden. Aufgaben werden auf
zess, der Constraints mithilfe von Transformationsre- Transitionen im Petri-Netz abgebildet. Pre- und Post-
geln konvertiert. Im Rahmen der Constraint-Transforma- Bedingungen werden als Stellen dargestellt. Der logische
tion können Domänengrenzen überwunden werden. Die Workflow wird durch Pfeile im WF-Netz modelliert. WF-
Herausforderungen beim Constraint-Management und bei Netze können dann zur Überprüfung und Analyse des mo-
den Transformationen wurden bereits in unterschiedlichen dellierten Workflows verwendet werden.
Ansätzen behandelt:
A RSINTESCU behandelt in [1] Constraint-Transforma-
tionen nur in einem rein hierarchischen Top-Down-Ansatz. 2 Herausforderungen im
Dabei werden zwei Klassen von Constraints unterschie-
den, die Spezifikations- und die Parameter-Constraints. domänenübergreifenden
Spezifikations-Constraints k sind Eingaben für Transfor- Designflow
mationen auf gleicher Ebene. Parameter-Constraints p sind
Ergebnisse von Transformationen auf der gleichen Ebe- 2.1 Konsistenz
ne. Im Gegensatz zu J ERKE ET AL . [5] definiert A RSIN -
TESCU Constraint-Transformation als Anwendung einer
Häufig arbeiten in einem Projekt mehrere Designer
Transformationsfunktion F, die Parameter-Constraints aus gleichzeitig in unterschiedlichen Domänen. Während eini-
Spezifikations-Constraints auf der gleichen Ebene erzeugt: ge die Chips entwerfen, arbeiten andere an der Package-
Integration und dem PCB. Außerdem befinden sich De-
p = F(k) signer oft an unterschiedlichen Standorten. In einem
domänenübergreifenden Designflow müssen diese Aspek-
Darüber hinaus werden erzeugte Parameter-Constraints te berücksichtigt werden. Für alle Domänen müssen die
in Mengen unterteilt und an niedrigere Ebenen weiterge- Constraint-Informationen konsistent sein, und die Daten-
geben. Diese Weitergabe wird bei A RSINTESCU Propagie- integrität muss – wie bei allen anderen Designdaten –
rung genannt. Während der Propagierung werden gege- gewährleistet sein. Es ist wichtig, dass jedem Designer
bene Parameter-Constraints zu Spezifikations-Constraints die Daten auf dem aktuellen Stand zugänglich sind. Je
auf der nächst niedrigeren Ebene und bilden Ausgangs- nach verwendeter Verfahrensweise zur Reihenfolge von
punkte für weitere Transformationen zu noch niedrigeren Lese- und Schreib-Operationen innerhalb des verteilten
Ebenen. Systems unterscheidet man verschiedene Konsistenzty-
D HANWADA ET AL . entwickeln in [4] eine Idee un- pen [11]. Zur Verteilung der Informationen können ent-
ter Verwendung genetischer Algorithmen, die die allge- sprechende ereignisgesteuerte Update-Mechanismen ein-
meine Constraint-Transformations-Funktion ersetzt. Dies gesetzt werden. Unser Ansatz verwendet eine zentrale
wird als hierarchischer Top-Down-Ansatz vorgeschlagen. Datenbank zur persistenten Speicherung der Constraints,
Auf System-Ebene bilden Eigenschaftsgrößen Zielwerte um durch den vorhandenen Transaktionsmechanismus die
für den genetischen Algorithmus. Eigenschaftsgrößen von Konsistenz sicherzustellen.
Komponenten auf der nächst niedrigeren Ebene sind die
Eingabe für den genetischen Algorithmus. Sie werden 2.2 Versionskontrollsysteme
während des Algorithmus variiert, um die gewünschten Ei-
Darüber hinaus müssen bereits verwendete Versions-
genschaftsgrößen auf der System-Ebene zu erzielen.
kontrollsysteme berücksichtigt werden, die oft nur inner-
halb einzelner Tools angewendet werden. Constraint- oder Bei der domänenübergreifenden Verwendung erfordert
Designänderungen sollen nur dann weitergegeben wer- der Constraint-Typ eine zusätzliche Information darüber,
den, wenn die aktuelle Designversion und ihre Constraints in welchem Tool das Original-Constraint definiert wurde.
gültig sind. Wenn die lokale Designversion nicht aktuell ist, Constraints selbst sind Instanzen von Constraint-Typen.
kann nicht garantiert werden, dass die Designobjekte in der Constraint-Typen definieren, auf welche Art von Design-
aktuellen Version überhaupt noch existieren. Eine Weiter- objekten sich die jeweiligen Constraints beziehen und wie
gabe der Constraints würde dann keinen Sinn ergeben, da die Verifikationsfunktion bewertet wird. Die Verifikati-
sie Bezüge auf ungültige Designobjekte enthielten. on der Constraint-Einhaltung wird dem jeweiligen Tool
Auf der anderen Seite sollen auch eingehende Update- überlassen.
Informationen nur dann verwendet werden, wenn die kor- In der vorgestellten Darstellung (1) kann man das Cons-
rekte Version in Bearbeitung ist. Das Listing 1 zeigt eine traint zum maximalen Strom des Fensterhebers nun wie
Lösung für dieses Problem bei eingehenden Änderungen. folgt interpretieren:
Analog kann für ausgehende Änderungen vorgegangen
werden. Die Strategie ist im Software-Engineering bekannt t(c) = currentChipType
und kann als get latest [design version] before check in / M(c) = ID der Leitung, die den Strom führt
”
check out“ bezeichnet werden. P(c) = Wert in Ampere
C(c) = 0/
startIncomingUpdate ( server , design ,
constrChanges ) {
Eine Zuordnung auf das zugehörige Designelement bzw.
chosenConstr = selectConstr ( constrChanges ); Constraint-Member ist durch die Designtools selbst be-
localVersion = getCurrentVersion ( local , reits vorgenommen worden, wenn Constraints innerhalb
design ) ; der Tools Referenzen auf die Elemente speichern, auf
serverVersion = getCurrentVersion ( server ,
design ) ; die sie angewendet werden. Wenn Constraints außerhalb
der Tools neu generiert werden, können die assoziierten
if ( localVersion < serverVersion ) { Constraint-Member entweder durch vereinbarte Namens-
message (" Please update design first .") ; konventionen automatisiert ermittelt werden, wenn sie aus
abort () ;
} anderen Constraints entstehen, oder eine Zuordnung der
Constraint-Member muss manuell durchgeführt werden. In
importAndApplyUpdate ( server , design , unserem Beispiel besitzt das Strom-Constraint keine Kind-
chosenConstr );
Constraints, da es sich nicht um ein zusammengesetztes
}
Constraint handelt.
Listing 1 Schritte beim Import von Constraint-Updates Es muss sichergestellt werden, dass Constraints in der
Datenbank mit dem zugehörigen Designtool synchroni-
siert werden können. Zwischen verschiedenen Tools un-
3 Domänenübergreifendes terscheiden sich die Constraint-Modelle. Daher verwenden
wir ein erweitertes verallgemeinertes Constraint-Modell,
Constraint-Tool in dem sich Constraints aus anderen Constraints zusam-
mensetzen können. In den meisten Fällen ist allerdings die
ConDUCT steht für Constraint Delivering and Updating
” zugehörige Rekursionstiefe Eins oder Null. Das bedeutet,
Cross-domain Tool“. Constraints aus den Tools verschie-
dass ein Constraint nur direkte Kind-Constraints oder gar
dener Entwurfsdomänen können darin in einem Projekt
keine weiteren enthält. Solche zusammengesetzten Cons-
zusammengefasst werden. Es verwendet eine Datenbank,
traints werden auch Constraint-Sets genannt. Sie werden
welche ein eigenes Constraint-Modell implementiert. Die-
verwendet, um einfach Constraint-Sets gegen andere zu er-
ses Constraint-Modell ähnelt dem in [7] vorgestellten Mo-
setzen, um unterschiedliche Constraint-Sets zu testen oder
dell von K RINKE. Allerdings muss es zur Beschreibung
Technologie-Konfigurationen gegeneinander austauschen
von Domänenaspekten in folgender Weise erweitert wer-
zu können.
den:
pcb
Abbildung 3 Constraint-Transformation als Petri-Netz sip
chip
100000
φ1
8 Literatur
010000 [1] B. Arsintescu, Constraint Management and Trans-
φc formation, Doktorarbeit, Technical University Delft,
001100 1998.
φ2 φ3 [2] J. R. Black, Mass Transport of Aluminum by Momen-
tum Exchange with Conducting Electrons, In: Relia-
bility Physics Symposium, 1967. Sixth Annual, S.
000110 001001
148–159, 1967.
φ3 φ2 [3] J. R. Black, Electromigration Failure Modes in Alu-
minum Metallization for Semiconductor Devices,
000011 Proceedings of the IEEE, 57(9):1587–1594, 1969.
Abbildung 6 Erreichbarkeitsgraph für das Petri-Netz aus [4] N. Dhanwada, A. Doboli, A. Nunez-Aldana, R. Ve-
Abb. 5 muri, Hierarchical Constraint Transformation Based
on Genetic Optimization for Analog System Synthe-
sis, Integr. VLSI J., 39(3):267–290, Juni 2006.
pieren und die Transformationen φ2 and φ3 gleichzei- [5] G. Jerke, J. Lienig, J. Freuer, Constraint-Driven De-
tig zu ermöglichen. Mit einem gegebenen Strom-Cons- sign Methodology: A Path to Analog Design Automa-
traint imax erhalten wir die initiale Markierung des entspre- tion, In: H. E. Graeb, Hg., Analog Layout Synthesis,
chenden Constraint-Typs in der Chip-Domäne (Abb. 5). S. 269–297, Springer US, 2011.
Nun kann der zugehörige Erreichbarkeitsgraph erzeugt
[6] C. Katzschke, M.-P. Sohn, M. Olbrich, V. M. zu Bex-
werden (Abb. 6). Erhält ein Platz während der Trans-
ten, M. Tristl, E. Barke, Application of Mission Pro-
formationen ein Token, so bedeutet dies, dass ein Cons-
files to Enable Cross-Domain Constraint-Driven De-
traint erzeugt und zur Constraintmenge der entsprechenden
sign, In: Proceedings DATE, 2014.
Domäne hinzugefügt wird. Es werden im Beispiel die SiP-
Constraints mit den Typen currentSipType, widthSipType [7] A. Krinke, M. Mittag, G. Jerke, J. Lienig, Exten-
und impedanceSipType erzeugt. ded Constraint Management for Analog and Mixed-
Signal IC Design, In: European Conference on Cir-
cuit Theory and Design (ECCTD), S. 1–4, 2013.
7 Zusammenfassung [8] T. Murata, Petri Nets: Properties, Analysis and Ap-
plications, Proceedings of the IEEE, 77(4):541–580,
Domänenübergreifende Constraint-Transformationen er- 1989.
lauben die Erzeugung neuer Constraints. Dadurch können
[9] D. J. Pearce, P. H. J. Kelly, A Dynamic Topological
sie an alle Entwurfsdomänen weitergegeben werden, was
Sort Algorithm for Directed Acyclic Graphs, J. Exp.
die Sicherstellung aller Constraints ermöglicht. Proble-
Algorithmics, 11, Februar 2007.
me, wie Datenkonsistenz, die Verwendung von Versions-
kontrollsystemen innerhalb der Designtools und die Ab- [10] K. Salimifard, M. Wright, Petri Net-Based Modelling
bildung von Constraint-Objekten von einer zur anderen of Workflow Systems: An Overview, European Journal
Domäne müssen in einer domänenübergreifenden Metho- of Operational Research, 134(3):664 – 676, 2001.
dik berücksichtigt werden. [11] A. S. Tanenbaum, M. v. Steen, Distributed Systems:
Als Lösung stellen wir unser Tool ConDUCT vor, Principles and Paradigms (2nd Edition), Prentice-
das ein vereinheitlichtes Constraint-Modell verwendet und Hall, Inc., Upper Saddle River, NJ, USA, 2006.
regelbasierte Transformationen ermöglicht. Darüber hin- [12] W. M. van der Aalst, The Application of Petri Nets to
aus können Mengen von Transformationsregeln analysiert Workflow Management, Journal of Circuits, Systems
werden. Dazu werden spezielle Petri-Netze verwendet, um and Computers, 8(01):21–66, 1998.