spi-workbench – modellierung, analyse und optimierung ...€¦ · ßend kann eine globale...

5
SPI-Workbench – Modellierung, Analyse und Optimierung eingebetteter Systeme Ch. Haubelt, M. Jersak, K. Richter, K. Strehl, D. Ziegenbein R. Ernst, J. Teich und L. Thiele [email protected] In Proceedings of INFORMATIK 2005 – Informatik LIVE! by Armin B. Cremers, Rainer Manthey, Peter Martini, and Volker Steinhage (Eds.). In Lecture Notes in Informatics, Volume P-68, Number 2, c Gesellschaft f ¨ ur Informatik, Bonn, 2005. Abstract: Das SPI-Modell dient zur Repr¨ asentation von heterogenen eingebetteten Systemen. Basierend auf diesem Modell wurde in einem Forschungsverbund zwischen der TU Braunschweig, der Universit¨ at Erlangen-N¨ urnberg und der ETH Z¨ urich die systemweite Analyse und Optimierung eingebetteter Systeme untersucht und in der SPI-Workbench integriert. Besonderes Augenmerk wurde auf die dom¨ anen¨ ubergrei- fende Integration von Systemteilen gelegt. Dieser Beitrag wird die Ergebnisse dieses erfolgreichen Projektes zusammenfassen: Zun¨ achst wird die SPI-Workbench sowie die Idee von SPI eingef¨ uhrt. Anschließend wird die Analyse des Zeitverhaltens dis- kutiert. Zum Abschluss werden neue Ans¨ atze zur Entwurfsraumexploration basierend auf dem SPI-Modell vorgestellt. Die in dem SPI-Projekt entstandenen Ergebnisse stel- len ¨ uber den Projektzeitraum hinaus eine wesentliche Grundlage f¨ ur State-of-the-Art Forschung im Bereich Entwurf heterogener eingebetteter Systeme dar. 1 Einleitung Komplexe eingebettete Systeme wie mobile Kommunikationsger¨ ate, Industriesteuerun- gen, Medizintechnik, etc. sind von Natur aus meist heterogen. Ein Aspekt der Hetero- genit¨ at liegt in den unterschiedlichen Berechnungsmodellen, die diese Systeme oder Teile hieraus beschreiben. So beschreibt ein Modell eines Audiosystems ¨ uberwiegend die Trans- formation von Eingangsstr¨ omen in Ausgangsstr ¨ ome, w¨ ahrend eine Industriesteuerung auf Eingangsereignisse reagiert. Ein Beispiel f¨ ur ein System, das sowohl reaktive als auch transformative Komponenten enth¨ alt, ist das Mobiltelefon. Im Zusammenhang mit gemischt reaktiven/transformativen Systemen liegen Probleme in den Bereichen der Analyse, Synthese, Optimierung und Verifikation. Die hier vorgestell- ten Ergebnisse sind in einer Kooperation der TU Braunschweig (Prof. Ernst), der Uni- versit¨ at Erlangen-N¨ urnberg (Prof. Teich) und der ETH Z¨ urich (Prof. Thiele) entstanden. Innerhalb dieser Kooperation wurden Modelle und Methoden zum Entwurf gemischt re- aktiv/transformativer eingebetteter Systeme entwickelt. Das Ergebnis ist das SPI-Modell (System Property Intervals), das in der Lage ist, von vielen bekannten Modellen zu abstra- hieren. F ¨ ur dieses Modell wurden Methoden entwickelt, die entweder direkt aus bekannten Methoden abgeleitet oder g¨ anzlich neu entwickelt wurden. Die Philosophie besteht also darin, sowohl dom¨ anenspezifische Modelle und Analyseverfahren zu integrieren als auch neue Modelle einfach in das resultierende Entwurfssystem einbringen zu k¨ onnen (siehe

Upload: others

Post on 12-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SPI-Workbench – Modellierung, Analyse und Optimierung ...€¦ · ßend kann eine globale Analyse, Synthese, Optimierung oder Verifikation des Modells erfolgen. Abbildung 1). Die

SPI-Workbench – Modellierung, Analyse und Optimierungeingebetteter Systeme

Ch. Haubelt, M. Jersak, K. Richter, K. Strehl, D. ZiegenbeinR. Ernst, J. Teich und L. Thiele

[email protected]

In Proceedings of INFORMATIK 2005 – Informatik LIVE!by Armin B. Cremers, Rainer Manthey, Peter Martini, and Volker Steinhage (Eds.).

In Lecture Notes in Informatics, Volume P-68, Number 2, c© Gesellschaft fur Informatik, Bonn, 2005.

Abstract: Das SPI-Modell dient zur Reprasentation von heterogenen eingebettetenSystemen. Basierend auf diesem Modell wurde in einem Forschungsverbund zwischender TU Braunschweig, der Universitat Erlangen-Nurnberg und der ETH Zurich diesystemweite Analyse und Optimierung eingebetteter Systeme untersucht und in derSPI-Workbench integriert. Besonderes Augenmerk wurde auf die domanenubergrei-fende Integration von Systemteilen gelegt. Dieser Beitrag wird die Ergebnisse dieseserfolgreichen Projektes zusammenfassen: Zunachst wird die SPI-Workbench sowiedie Idee von SPI eingefuhrt. Anschließend wird die Analyse des Zeitverhaltens dis-kutiert. Zum Abschluss werden neue Ansatze zur Entwurfsraumexploration basierendauf dem SPI-Modell vorgestellt. Die in dem SPI-Projekt entstandenen Ergebnisse stel-len uber den Projektzeitraum hinaus eine wesentliche Grundlage fur State-of-the-ArtForschung im Bereich Entwurf heterogener eingebetteter Systeme dar.

1 Einleitung

Komplexe eingebettete Systeme wie mobile Kommunikationsgerate, Industriesteuerun-gen, Medizintechnik, etc. sind von Natur aus meistheterogen. Ein Aspekt der Hetero-genitat liegt in den unterschiedlichen Berechnungsmodellen, die diese Systeme oder Teilehieraus beschreiben. So beschreibt ein Modell eines Audiosystemsuberwiegend die Trans-formation von Eingangsstromen in Ausgangsstrome, wahrend eine Industriesteuerung aufEingangsereignisse reagiert. Ein Beispiel fur ein System, das sowohl reaktive als auchtransformative Komponenten enthalt, ist das Mobiltelefon.

Im Zusammenhang mit gemischt reaktiven/transformativen Systemen liegen Probleme inden Bereichen derAnalyse, Synthese, Optimierungund Verifikation. Die hier vorgestell-ten Ergebnisse sind in einer Kooperation der TU Braunschweig (Prof. Ernst), der Uni-versitat Erlangen-Nurnberg (Prof. Teich) und der ETH Zurich (Prof. Thiele) entstanden.Innerhalb dieser Kooperation wurden Modelle und Methoden zum Entwurf gemischt re-aktiv/transformativer eingebetteter Systeme entwickelt. Das Ergebnis ist dasSPI-Modell(System Property Intervals), das in der Lage ist, von vielen bekannten Modellen zu abstra-hieren. Fur dieses Modell wurden Methoden entwickelt, die entweder direkt aus bekanntenMethoden abgeleitet oder ganzlich neu entwickelt wurden. Die Philosophie besteht alsodarin, sowohl domanenspezifische Modelle und Analyseverfahren zu integrieren als auchneue Modelle einfach in das resultierende Entwurfssystem einbringen zu konnen (siehe

Page 2: SPI-Workbench – Modellierung, Analyse und Optimierung ...€¦ · ßend kann eine globale Analyse, Synthese, Optimierung oder Verifikation des Modells erfolgen. Abbildung 1). Die

Subsystem n(Sprache n)

Subsystem 2(Sprache 2)(Sprache 1)

Subsystem 1

Subsystem 2(Sprache 2)(Sprache 1)

Subsystem 1 Subsystem n(Sprache n)

ValidierungEntwurf &

Optimierung Analyse Synthese Verifikation

Abbildung 1: Domanenspezifischen Spezifikationen werden in dem SPI-Modell gekapselt. Anschlie-ßend kann eine globale Analyse, Synthese, Optimierung oder Verifikation des Modells erfolgen.

Abbildung 1). Die Ergebnisse der durchgefuhrten theoretischen Untersuchungen wurdenimplementiert und prototypisch in der SPI-Workbench integriert.

2 Das SPI-Modell

Zu Beginn des SPI-Projektes wurde das SPI-Modell (System Property Intervals) definiert[ZRE+02, STG+01, Str00, Zie02]. Die Besonderheit des SPI-Modells liegt vor allem inden Bereichen a) Modellierung von Kontroll- und Datenfluss und b) Modellierung vonunsicherem Verhalten durch Intervalle.

Ein einfaches SPI-Modell, bestehend aus drei Prozessen (P1,P2 undP3) welcheuber zweiKanale (C1 undC2) miteinander kommunizieren, ist in Abbildung 2 gegeben. Sowohl denKanalenCi als auch den ProzessenPi sind LatenzzeitenlatCi bzw.latPi zugeordnet, wel-che die Bearbeitungszeit eines Kanals bzw. Prozesses darstellen. Weiterhin sind ParametersCi und rCi den KanalenCi zugeordnet. Diese geben die Anzahl der produzierten bzw.konsumierten Daten bei Ausfuhrung des jeweiligen Prozesses an. Die Anzahl der Mar-ken, die in einem KanalCi gespeichert sind, werden durch den ParameterdCi modelliert.

P1 1C C2 P3P2

lat P2lat C1lat P1 lat C2 lat P3

C1s C1r sC2 r C2

C1d dC2P2aa P1 P2a

Abbildung 2: Einfaches Beispiel eines SPI-Prozessgraphen. Die ProzesseP1, P2, undP3 kommu-nizierenuber Kanale C1, C2. Die Parameterlat, s, r, undd sind durch Intervalle spezifiziert. DieAktivierungsfunktionenaPi beeinflussen die Ausfuhrung eines ProzessesPi.

694

Page 3: SPI-Workbench – Modellierung, Analyse und Optimierung ...€¦ · ßend kann eine globale Analyse, Synthese, Optimierung oder Verifikation des Modells erfolgen. Abbildung 1). Die

Performance Simulation - Can It Get The Job Done?Simulation is state of the art in MpSoC performance verification. Tools such as Mentor Seamless CVE(www.mentor.com/seamless) or Axys MaxSim (www.axysdesign.com/products/products_maxsim.asp)support hardware and software co-simulation of the complete system. The co-simulation times areextensive but as a major advantage performance verification and function verification can use the samesimulation environment, simulation patterns, and benchmarks. Simulation patterns are use cases thatsupport system understanding and debugging. However, there are critical, conceptual disadvantages ofsimulation-based performance verification.

HW and SW component integration includes resource sharing which is based on operating systems andnetwork protocols. Resource sharing results in a confusing variety of performance run-time dependencies.Consider the system in Figure 2. Although activated periodically, the execution sequence of the threeprocesses on the CPU is quite complex leading to output bursts. The figure does not even include datadependent process execution times. Finding simulation patterns leading to the high-lighted worst-casesituation is already challenging. Network arbitration (Figure 3) introduces an additional performancedependency (indicated by the green arrows) between the subsystems which is not reflected in the system

M2IP2M3

M1

DSPIP1

HWCPUSens

NoC

Subsystem 1

Subsystem 2

max execution time���� min bus load

M1

Network-on-ChipNetwork-on-Chip

min execution time���� max bus load

HW

P3

CPU

Figure 3 "Scheduling Anomaly": P3 is a driver process reading data from M1 and -duringbursts- iterating at maximum speed. Furthermore, P3 has a non-constant execution time, e.g. dueto input data dependencies. The shorter the process execution time, the shorter the distance ofpackets to be sent over the bus and the higher the transient bus load. So, the minimum executiontime corresponds to the maximum transient bus load slowing down communication of othercomponents.

Figure 2 "Performance Corner Cases": subsystem containing three tasks which are activatedperiodically. Scheduling is preemptive and follows static priorities. The execution sequence israther complex. Although activated periodically, P3 (with its input buffers filled) temporarily runsin burst mode with an execution frequency which is only limited by the available processorperformance. This burst execution will lead to a transient P3 output burst which is modulated byP1 execution. In the highlighted situation all processes request the CPU at the same time, resultingin longest possible, i.e. worst-case preemtion time for all lower priority processes.

worst-casesituation

P3

P1

burst

P2

jitter

burst

priority

output eventsinput events

T1

buffering

T3

T1

T2T2 T2

t t = tworst case

buffering

M1

HW

CPU

P1P3

P2

Sens

Abbildung 3: Obwohl das Betriebssystem die ProzesseP1, P2 und P3 strikt periodisch mit denPeriodenT1, T2 undT3 aktiviert, fuhrt die Ausfuhrungssequenz zu Bursts an den Ausgangen.

Die Aktivierung eines ProzessesPi wird durch die AktivierungsfunktionaPi bestimmt.Samtliche Parameterlat, s, r undd sind durch Intervalle reprasentiert. Dies bedeutet, dassentweder die genauen Werte nicht bekannt sind oder die Parameter ungenau spezifiziertwurden. Das SPI-Modell bildet die Basis fur die oben genannten Kooperationspartner.

3 Zeitanalyse

Die Heterogenitat eingebetteter Systeme ist nicht nur auf deren Verhaltensmodellierungbeschrankt, sondern findet sich in zunehmenden Maße auch bei den zu Grunde liegendenArchitekturen wieder. Hier kann ein Trend in Richtung verteilter Multiprozessorarchitek-turen festgestellt werden, welche oftmals viele programmierbare Prozessoren, Speicher-bausteinen und IP-Komponenten (Intellectual Property) auf einem einzelnen Chip inte-grieren. Bei diesen Architekturen wird das Ressourcesharing oftmals durch Einsatz vonEchtzeitbetriebssystemen realisiert.

Die Analyse des zeitlichen Verhaltens eines eingebetteten Systems, welches eine verteilteMulitprozessorrealisierung als Zielarchitektur verwendet, ist eine der heutigen Herausfor-derungen im Entwurf eingebetteter Systeme. Wie in Abbildung 3 dargestellt, kann derProzessP1 mehrere aufeinander folgende Ausfuhrungen von ProzessP3 verzogern. Erstanschließend wird ProzessP3 burstartig seine Eingaben abarbeiten. Selbst bei diesem klei-nen Beispiel erkennt man die Probleme bei der Analyse des Zeitverhaltens eingebetteterSysteme. State-of-the-Art in der Zeitverifikation ist die Verwendung simulationsbasierterMethoden. Allerdings haben simulationsbasierte Analyseansatze den Nachteil, dass diesenicht in der Lage sind, das kritische Zeitverhalten eines Systems zu bestimmen.

Im Rahmen des SPI-Projektes wurde ein anderer Ansatz mit dem Namen SymTA/S ent-wickelt und untersucht [RJE03, Jer05, Ric05], welcher die Analyse einer großen Teil-menge von SPI-Modellen erlaubt: Die grundlegende Idee basiert auf der Kopplung unter-schiedlicher Ablaufplanungsanalyseverfahren durch sog.Ereignisstrome. Ereignisstromebeschreiben das mogliche Eingabe/Ausgabe-Verhalten von Prozessen und werden durch

695

Page 4: SPI-Workbench – Modellierung, Analyse und Optimierung ...€¦ · ßend kann eine globale Analyse, Synthese, Optimierung oder Verifikation des Modells erfolgen. Abbildung 1). Die

P1

1C

P2

C2

P3

a P1

C1d

P2a

dC2

P2a

sC2

C1s

C1r

r C2

lat P2, 2

lat P2, 1

lat C1, 2

lat C1, 1

lat P1, 1

lat C2, 2

lat P3, 2

lat C2, 1

lat P3, 1

lat P1, 2

Abbildung 4: Beispiel einer ressourcenbeschrankten Spezifikation. Die Prozesse (Kanale) des SPI-Prozessgraphen konnen auf Komponenten der Architektur abgebildet werden. Die Ausfuhrungszei-tenlat hangen von der Bindung der Prozesse auf die Komponenten ab.

geeignete Ereignismodelle, wie z.B.periodischoder sporadisch, charakterisiert. Sym-TA/S unterstutzt hierbei die Kombination und Integration von unterschiedlichen Analy-seansatzen. Bei dieser Kombination kann es aber zu Inkompatibilitaten bezuglich der ver-wendeten Ereignisstrome kommen. Dieses Problem lost SymTA/S durch die Verwendungvon sog.EMIFs (Event Model InterFaces) und sog.EAFs(Event Adaptation Functions).

Ein weiterer Ansatz zur Zeitanalyse in eingebetteten Echtzeitsystemen wurde basierendauf dem sog.Network Calculusentwickelt und untersucht [TCGK02]. Hierbei werdenProzesse durch sog.Arrival Curvesund Ressourcen durch sog.Service Curvescharakteri-siert. Die Zeitanalyse erfolgt schließlichuber ein sog.Schedulingnetwork.

4 Entwurfsraumexploration

Das Problem der Hardware/Software-Partitionierung beschreibt die Aufgabe, Prozesse anRessourcen zu binden (Abbildung 4). Basierend auf dem SPI-Modell mit hierarchischerVerfeinerungen wurden zwei Ansatze untersucht: a) diehierarchische PartitionierungmitEvolutionaren Algorithmen und b) die sog.Pareto-Front-Arithmetik[Hau05]. Die hierar-chische Partitionierung codiert das zu partitionierende Problem als ganzes und verwendetEvolutionare Algorithmen zur Suche optimaler Losungen. Die genetischen Operatoren be-einflussen hierbei auch die Auswahl der Verfeinerungen fur Prozesse.

Bei der Pareto-Front-Arithmetik werden zunachst die Verfeinerungen der Prozesse einzelnoptimiert und spater diese Losungen kombiniert. Da diese Kombination im Zielfunktions-raum vorgenommen wird, bezeichnen wir diese Verfahren alsPareto-Front-Arithmetik.Das Ergebnis sind approximierte Losungen des Gesamtproblems. Dieses Verfahren fuhrtim Allgemeinen jedoch weder zu gultigen noch zu optimalen Ergebnissen. Dennoch sinddiese Ergebnisse hilfreich, um das oben genannte evolutionare Verfahren zu initialisieren.

696

Page 5: SPI-Workbench – Modellierung, Analyse und Optimierung ...€¦ · ßend kann eine globale Analyse, Synthese, Optimierung oder Verifikation des Modells erfolgen. Abbildung 1). Die

Im Rahmen des SPI-Projektes wurden die Verfahren zur Optimierung bei der Hardwa-re/Software-Partitionierung eingebetteter Systeme um Verfahren zur sog.stochastischenPareto-Front-Analyseerweitert [Tei01]. Hierbei wird nicht mehr mit exakten Werten son-dern mit Intervallen und Wahrscheinlichkeitsdichtefunktionen das Optimierungsproblemgelost. Die Idee hierbei ist, dass Zielgroßen im Allgemeinen nicht exakt bekannt sind son-dern, wie im SPI-Modell, meist nur untere und obere Schranken. Diese Verfahren wurdenerfolgreich in die Pareto-Front-Arithmetik integriert [Hau05].

5 Zusammenfassung

In diesem Bericht wurden einige zentrale Ergebnisse des SPI-Projekt zum Entwurf hetero-gener eingebetteter Systeme skizziert. Das SPI-Projekt war ein Verbundfoschungsprojektder TU Braunschweig, der Universitat Erlangen-Nurnberg und der ETH Zurich und wurdeim Rahmen des DFG-Schwerpunktprogramms

”Entwurf und Entwurfsmethodik eingebet-

teter Systeme“ durch die DFG gefordert.

Literatur

[Hau05] Christian Haubelt.Model-Based Design Space Exploration for Embedded Systems – ASystem Level Approach. Dissertation, Universitat Erlangen-Nurberg, 2005. In Druck.

[Jer05] Marek Jersak. Compositional Scheduling Analysis Using Standard Event Models. Dis-sertation, Technische Universitat Braunschweig, 2005.

[Ric05] Kai Richter.Compositional Performance Analysis for Complex Embedded Applications.Dissertation, Technische Universitat Braunschweig, 2005. In Druck.

[RJE03] Kai Richter, Marek Jersak und Rolf Ernst. A Formal Approach to MpSoC PerformanceVerification. IEEE Computer, 36:60–67, April 2003.

[STG+01] Karsten Strehl, Lothar Thiele, Matthias Gries, Dirk Ziegenbein, Rolf Ernst und JurgenTeich. FunState - An Internal Design Representation for Codesign.IEEE Transactionson Very Large Scale Integration (VLSI) Systems, 9(4):524–544, August 2001.

[Str00] Karsten Strehl.Symbolic Methods Applied to Formal Verification and Synthesis in Em-bedded Systems Design. Dissertation, ETH Zurich, Februar 2000.

[TCGK02] Lothar Thiele, Samarjit Chakraborty, Matthias Gries und Simon Kunzli. Design SpaceExploration of Network Processor Architectures.Network Processor Design: Issuesand Practices, 1:55–89, Oktober 2002.

[Tei01] Jurgen Teich. Pareto-Front Exploration with Uncertain Objectives. InProceedingsof the First Int. Conf. on Evolutionary Multi-Criterion Optimization, Lecture Notes inComputer Science (LNCS), Jgg. 1993, Seiten 314–328, Zurich, Switzerland, Marz 2001.

[Zie02] Dirk Ziegenbein.A Compositional Approach to Embedded System Design. Dissertation,Technische Universitat Braunschweig, Marz 2002.

[ZRE+02] Dirk Ziegenbein, Kai Richter, Rolf Ernst, Lothar Thiele und Jurgen Teich. SPI - ASystem Model for Heterogeneously Specified Embedded Systems.IEEE Transactionson Very Large Scale Integration (VLSI) Systems, 10(4):379–389, August 2002.

697