2 dimensional laufzeitrekonfigurierbares System ALadyn Online Adaptivitt und
2 -dimensional laufzeitrekonfigurierbares System ALadyn: Online Adaptivität und modellbasierte Entwurfsunterstützung Lars Braun, Philipp Graf, Michael Hübner, Tobias Schwalb, Jürgen Becker, Klaus D. Müller-Glaser Institut für Technik der Informationsverarbeitung Universität Karlsruhe (TH) Prof. Dr. -Ing. Klaus D. Müller-Glaser Prof. Dr. -Ing. Jürgen Becker Institut für Technik der Informationsverarbeitung 2008 10/16/2021 1
Agenda 4 Motivation und Umfeld 4 Hardware-System 4 Online Routing von Funktionsblöcken 4 2 D – Online Platzierung 4 2 D Busmakros und Verdrahtung 4 High-Level Fehlerdiagnose des No. C 4 Modellbasierte Entwurfsunterstützung 4 UML Gesamtmodell und Werkzeugkette 4 Co-Debugging Modelle 4 Modellbasiertes Testen für heterogene Modelle 4 Kooperationen 4 Veröffentlichungen 4 Zusammenfassung/Ausblick Institut für Technik der Informationsverarbeitung 2008 10/16/2021 2
• Umfeld • • SB BM BM SB Positionierung zur Laufzeit Variable Bitbreite • Umfassend modellbasierte Entwicklung Zusätzliche Steuersignale • Modellierung Architektur Ressourcenbedarf so gering wie möglich Positionierung zur. FE Laufzeit • Modellierung Funktionalität / Verhalten • • Positionierung der Änderung • und Anpassung der • • Topologie Variable Bitbreite Modellierung Werkzeugkette Positionierung der Switch Boxen Modell. Länge und auf Platzierung • Automatisierte Systemerzeugung • • Routing der Verlauf Bus. Makros getriebene der FEs anpassbar SB Modellierungsnotation • Der angepasste • Generierung der Funktionseinheiten BM BM Entwicklung Systemsichten zur • Laufzeit Caching von vorgerouteten und Werkzeug • Rückabbildung Laufzeitdaten auf Funktionseinheiten kette Funktions. Modellebene Einheit • Zielsysteme CPU/FPGA, Echtzeit • Positionierung • Frühe Modellierung von Tests für zur Laufzeit • Generierung zur Laufzeit funktionale und nicht-funktionale Debugging auf Laufzeitsystem • Anpassen der Bitbreite und der Modellebene SB Eigenschaften BM während der Laufzeit • Testdurchführung Funktionalität durch Instrumentierung des heterogenen Zielsystems (CPU/FPGA) Funktions- • Automatisierung Funktionsund Auswertung Einheit Testergebnisse Modellbasierter Test Institut für Technik der Informationsverarbeitung 2008 10/16/2021 3
Online Routing von Funktionsblöcken Innovation: • Höhere Flexibilität durch Anpassbarkeit an die physikalische Chipfläche und Anforderung der funktionalen Blöcke zur Laufzeit BM bei der dynamischen Allokation durch eine • Zusätzlicher Freiheitsgrad architekturunabhängig Beschreibung der Funktionsblöcke + • Granularität der Makroblöcke veränderbar • Einfache Anpassung der Funktionalen Einheiten auf verändernde Problemstellungen Laufzeitsystem x & Forschungsschwerpunkte: Bitstream-packer + • Vorhalten von Pre-Routed Modulen (Bitstom Caching) / • Strategien um einen Trade-off zu finden zwischen BM Online Routed Pre-Routed Modulen x • Methoden zur Integration in ein Laufzeitsystem • Erweiterung des Verteilungsmanagements um eine situationsgerechte Qo. S-basierende Echtzeitfähigkeit zu gewährleisten / • Netzlistenbasierende Beschreibungsform für Funktionen / Algorithmen Institut für Technik der Informationsverarbeitung 2008 10/16/2021 - 4
Physikalisch realisierte 2 D – Online Platzierung • Auslesen der aktuellen Konfiguration • Verändern der Dynamischen Bereiches • Schreiben der aktuellen Konfiguration Institut für Technik der Informationsverarbeitung 2008 10/16/2021 5
2 D Rekonfiguration auf Virtex 4 FPGAs Änderungen zu Virtex 2 Architektur 4 Rekonfigurierbare Blöcke mit einer einheitlichen Höhe von 16 CLBs 4 Framelänge immer Gleich 4 Anzahl der Frames variiert Innovation: Einführung der 2 dimensionalen On-Line Platzierung • Bessere Ausnutzung der Rekonfigurationsfläche • Flächenbedarf und Platzierung direkt auf Funktionsgröße angepasst • Generischer Ansatz für eine Vielzahl von Anwendungen • Weiterer Freiheitsgrad zur Adaptivität im Vergleich zum 1 -D Systemansatz • Ausnutzung der Virtex 4 Struktur Institut für Technik der Informationsverarbeitung 2008 10/16/2021 6
Rekonfigurierbare Switchstruktur für Online Routebare No. C Beispiel für einen 8 Bit Switch: X Logic MUX X Slice 0 LUT Input[0] Input[1] Input[2] Von / Zu Input[3] MUX X Pro LUT 1 Bit in 4 Richtungen routbar Für 8 Bit 8 LUTs Pro Ausgang 8 LUTs / 1 CLB Insgesamt 5 Ausgänge 5 CLBs Von / Zu X X Glue oberen Nachbar Output 0 LUT MUX Von / Zu Innovation: linkem Nachbar µC Multiplexer direkt überrechten • Manipulation der LUTNachbar basierten Rekonfigurationsinterface (ICAP) Input[0] • Informationen der LUTs ist in 2 Frames gespeichert schnelle Umschaltzeiten Input[1] zwischen Kontroller und Switch nötig Geringerer • Keine direkten Verbinungen Output 1 Von / Zu Input[2] Leitungsoverhead auf der Chipfläche Funktionaler Einheit Input[3] ICAP Von / Zu Rekonfigurierbarer Switch MUX unterem Nachbar Reconfigurable LUT Institut für Technik der Informationsverarbeitung 2008 10/16/2021 7
2 D Offline Busmakros § Notwendige Toolunterstützung für weitere Forschungstätigkeit im Bereich 2 D Platzierung und Verdrahtung § Herausforderung: m Bisher kein Toolsupport für 2 -dimensionale Kommunikationsprimitive (Bus. Makro) Ziel: (Semi-) Automatisierte Generierung von Verbindungsleitungen für 2 D Module • Einfache Erzeugung von zwei Dimensionalen Bus- Makros • Programm durch GUI oder durch Programmaufruf mit Parameterübergabe ausführbar • Einbindung des Tools in andere Programme möglich • Einführung von gesperrten Gebieten (z. B. Power. PC) • Variable Bitbreite der Makros • Gute und schnelle Heuristik zur Wegfindung (A*) Institut für Technik der Informationsverarbeitung 2008 10/16/2021 8
Online 2 D Verdrahtung des No. C Innovation: Einführung der 2 dimensionalen On-Line Verdrahtung • Bessere Ausnutzung der Rekonfigurationsfläche SB • Wegfindungsalgorithmus von Offline Laufzeitsystem Busmakro Tool bekannt und erprobt • Integration des Network-on-Chip (No. C) Ansatzes um Inter-Modulkommunikation zu ermöglichen Funktions • Generischer Ansatz für. Einheit eine Vielzahl von Anwendungen • Verschiedene Topologien durch Switch-Ansatz realisierbar • Weiterer Freiheitsgrad zur Adaptivität im Vergleich zum 1 -D Systemansatz Institut für Technik der Informationsverarbeitung 2008 10/16/2021 9
High-Level Fehlerdiagnose des No. C • SB BM • BM BM Funktions. Einheit • Laufzeitsystem SB BM Funktions. Einheit SB Von / Zu oberen Nachbar Funktions. Einheit • • Monitor Von / Zu linkem Nachbar Von / Zu rechten Nachbar Von / Zu unterem Nachbar Von / Zu Funktionaler Einheit • • Implementierung eines Monitoring systems in jede Router Einheit Daten des Monitors über Readbackfunktionalität der ICAP Bestimmung des Datendurchsatzes Bestimmen von Bottlenecks Dynamische Anpassung von Routing-Ressourcen aufgrund erhöhten Datendurchsatzes Möglichkeit der Umstrukturierung des Netzwerkes bei Fehlerfall durch das Laufzeitsystem Weiterer Freiheitsgrad bei der lokalen und globalen Selbstheilung des Systems Institut für Technik der Informationsverarbeitung 2008 10/16/2021 10
Gesamtarchitektur und Werkzeugkette SB Funktions. Einheit BM Funktions. Einheit SB BM BM SB BM Modellgetriebene Entwicklung und Werkzeugkette BM Funktions. Einheit Laufzeitsystem SB Funktions. Einheit Institut für Technik der Informationsverarbeitung 2008 Debugging auf Modellebene Modellbasierter Test 10/16/2021 11
Phase 2: Architektur- und Funktionsmodellierung für Aladyn Ansatz: 4 Weitgehend modellbasierte Entwicklung 4 Top-Level Modellierung auf Basis der Unified Modeling Language 4 Integration weiterer Notationen durch Modelltransformation in die UML Modellierung: 4 Top-Level SW-Architektur (UML) 4 Template für Verteilungsmanager (UML) 4 Schnittstelle Funktionstypen (UML) 4 Eigenschaften Realisierungsalternativen (UML) 4 Eigenschaften Funktionsanforderungen (UML) 4 Realisierungsalternativen für Teilfunktionen (UML/Simulink/Stateflow) Institut für Technik der Informationsverarbeitung 2008 10/16/2021 12
Integrierte Werkzeugkette (AP 5) 4 Ziel: Integriertes, stark gekoppeltes Gesamtmodell 4 Prozessmodellierung • Modellverarbeitung, Codeerzeugung, Compile, Synthese, Deployment, Debuggerkonfiguration • Geeignete Syntax • Ausführbarkeit des Modells 4 Plattformmodellierung • Evaluation Standards auf Anwendbarkeit (IP-XACT) • Integration in UML Metamodell 4 Integration als Gesamtmodell Institut für Technik der Informationsverarbeitung 2008 10/16/2021 13
Prozessmodellierung und GUI Institut für Technik der Informationsverarbeitung 2008 10/16/2021 14
Werkzeugkette für Aladyn-Projekt input. File = “architecture. xmi“ filter = “<<auto>>“ Load. XMI Gen. Cpp Merge. FS Compile. GCC Deploy. SW Merge. Models Load. MDL input. File = “fensterheber. mdl“ filter = “<<auto>>“ root = “/behavior/mdl“ Gen. Embedded. Coder Gen. JVHDLGen Extract. Compress. Slots Synthesize Institut für Technik der Informationsverarbeitung 2008 10/16/2021 15
Repräsentation Werkzeugkette in abstrakter Syntax der UML 16 10/16/2021 Aktionstyp Bibliothek Parameter Verknüpfung Ausgang Eingang Aktion Werkzeugkette Prozesselement Operation, mögliche Parameter in Signatur Class Literal. Value. Action an Input. Pin Data. Flow Output. Pin Input. Pin Call. Operation. Action Procedure / Group. Action Abbildung auf UML Actions Institut für Technik der Informationsverarbeitung 2008
Modelldebugging auf FPGAs 4 Ziel 4 Auch bei modellgetriebener Entwicklung Darstellung und Manipulation des Systemzustands auf Basis der Entwurfsnotation 4 Derzeit Visualisierung des Modellzustands für Modelle 4 ausgeführt auf FPGA • Nicht-Echtzeit • Aus Modell generierbare Schnittstelle 4 ausgeführt auf CPU • Echtzeit/Nicht-Echtzeit 4 Nachverfolgung Migration zwischen Ausführungseinheiten (AP 6. 1) 4 Verbleibende Ziele Antragsphase 4 Generierbare Echtzeitschnittstelle für auf FPGA ausgeführte Modelle (AP 6. 2) 4 Kompatibilität Schnittstelle zu • IP-XACT, Nexus 5001 4 Spezielle Visualisierung für die Konfiguration des Laufzeitsystems Institut für Technik der Informationsverarbeitung 2008 10/16/2021 17
Benutzeroberfläche von Model. Scope Institut für Technik der Informationsverarbeitung 2008 10/16/2021 18
Modellbasiertes Testen 4 Automatisiertes Testen 4 Testansätze zentral für Robustheit von Entwurfsprozessen 4 Wiederholbarkeit, Nachvollziehbarkeit, Regressionstests 4 Testfall = Stimulation + erwartete Ergebnisse 4 Modellnahe Syntax von Testfällen ermöglicht gute Dokumentation 4 Ziel: Gemischte Tests aus Software- und Hardwarenachrichten 4 Generativer Ansatz Institut für Technik der Informationsverarbeitung 2008 10/16/2021 19
Modellbasiertes Testen Use Case Diagramme 4 …strukturieren Testfälle 4 Jeder Anwendungsfall entspricht einem Testfall Sequenzdiagramme 4 …beschreiben Systemstimulation 4 …beschreiben erwartete Systemantwort 4 …besitzen reiche Syntax 4 …können parametrisiert werden 4 …können sich gegenseitig beinhalten Institut für Technik der Informationsverarbeitung 2008 10/16/2021 20
Modellbasiertes Testen: Architektur und Arbeitspakete 4 Echtzeit Trace In-Circuit Emulator 4 Methodenaufrufe Hi. L-System under Test HW: CAN, I/O FPGA AP 7. 2 CPU AP 7. 1 HW Monitoring: Display, CAN, SPI, I 2 C, … Test-Treiber RTAI, FPGA jedem Zeitpunkt 4 Sender und Empfänger von Nachrichten in Sequenzdiagrammen 4 Mit Trace-Schnittstelle für FPGAs 4 Parameter Übertragung der Konzepte auf In-Circuit Emulator Run control 4 Trace-Protokoll ermöglicht FPGA Rekonstruktion PCI PR-Box der Aufrufstacks zu Message to Message from hardwarerealisierte Funktionen 4 Minimale Instrumentierung zur Hi. L Laufzeit SW Monitoring Com. Client Socket Message Adapter Socket Tester 4 Möglichkeit Parameter/Rückgabewerte zu Com. Client rekonstruieren. Socket Message Adapter 4 Damit testbar: Socket 4 Softwarerealisierung einzelner GUI: Selection of test cases, start 4 Data- (Monitor-) conversion Report generation Funktionen Funktionalität Verteilungsmanager Report. Generator HTML, MS Word Institut für Technik der Informationsverarbeitung 2008 10/16/2021 21
Testreports in XML/HTML 4 Testreportgenerierung nach XML 4 Weiterverarbeitung z. B. zu HTML mit XSLT Institut für Technik der Informationsverarbeitung 2008 10/16/2021 22
Kooperationen 4 Prof. Dr. -Ing. Renate Merker, TU Dresden Entwicklung von Partitionierungsstrategien im Bereich dynamisch rekonfigurierbarer Systeme Anknüpfungspunkt: Reduzierte Rekonfigurationskosten und Verlustleistung durch Map-Werkzeug 4 Prof. Dr. Sandor Fekete, Technische Universität Braunschweig, Prof. Dr. -Ing. Jürgen Teich, Universität Erlangen-Nürnberg Re. Co. Nodes - Optimierungsmethodik zur Steuerung hardwarekonfigurierbarer Knoten Anknüpfungspunkt: ESM als Integrationsplattform 4 Prof. Dr. -Ing. Andreas Herkersdorf und Dr. -Ing. Walter Stechele, Dipl. -Ing. Christopher Claus, TU München Reconfigurable Hardware Acceleration for Video-based Driver Assistance Anknüpfungspunkt: On-Line Visualisierung der physikalischen Konfiguration für Debug Zwecke Institut für Technik der Informationsverarbeitung 2008 10/16/2021 23
Publikationen 4 Becker, J. ; Hübner, M. ; Hettich, G; Constapel, R. ; Eisenmann, J. ; Luka, J. : Dynamic and Partial FPGA Exploitation Proceedings of the IEEE on Special Automotive Hardware, Spring 2007 4 Braun, L. ; Perschke, T. ; Schatz, V. ; Bach, S. ; Hübner, M. ; Becker, J. : Circuit Switched Run-Time Adaptive Network-on-Chip for Image Processing Applications FPL 2007, Amsterdam, The Netherlands 4 Braun, L. ; Sander, O. ; Becker, J. : An Exploitation of Data Reallocation by Performing Internal FPGA Self. Reconfiguration Mechanisms ARC 2008, London, GB 4 Graf, P. ; Reichmann, C. ; Müller-Glaser, K. D. : A Model-Based Design Approach for a Dynamically Configurable Hardware/Software-Architecture“, 3 rd Workshop on Object-oriented Modeling of Embedded Real-Time Systems (OMER 3), Paderborn, Oktober 2005 4 Graf, P. ; Müller-Glaser, K. D. : Eine Architektur für die modellbasierte Fehlersuche in der Software eingebetteter Systeme“, Modellierung 2006, Workshop: Modellbasierte Entwicklung von eingebetteten Fahrzeugfunktionen, Innsbruck, März 2006 4 Graf, P. ; Müller-Glaser, K. D. : Dynamic Mapping of Runtime Information Models for Debugging Embedded Software“, 17 th IEEE International Workshop on Rapid System Prototyping, Chania, Juni 2006 4 Graf, P. ; Müller-Glaser, K. D. : Gaining Insight into Executable Models during Runtime: Architecture and Mappings IEEE Distributed Systems Online, vol. 8, no. 3, 2007 4 Graf, P. ; Reichmann, C. ; Müller-Glaser, K. D. : Nonintrusive Black- and White-Box Testing of Embedded Systems Software against UML Models 18 th IEEE International Workshop on Rapid System Prototyping, Porto Alegre, Mai 2007 4 Graf, P. ; Hübner, M. ; Müller-Glaser, K. D. , Becker, J: A Graphical Model-Level Debugger for Heterogenous Reconfigurable Architectures 17 th International Conference of Field Programmable Logic and Applications (FPL), Amsterdam, August 2007 4 Graf, P. ; Müller-Glaser, K. D. : Model. Scope: Inspecting Executable Models during Run-time 30 th international conference on Software engineering, Leipzig, Mai 2008 4 Hübner, M. ; Schuck, C. ; Becker, J. : Elementary Block Based 2 -Dimensional Dynamic and Partial Reconfiguration for Virtex-II FPGAs RAW 2006, Rhodos, Greece 4 Hübner, M. ; Becker, J. : Dynamic and Partial Reconfigurable Hardwaresystemarchitecture with Real. Time On-Demand Functionality Design and Test in Europe Conference, Ph. D Forum DATE 2007, Nice, France 2007 4 Hübner M. ; Braun, L. ; Becker, J. ; Claus, C. ; Stechele, W. : On-Line Visualization of the Physical Configuration of a Xilinx Virtex-II FPGA ISVLSI 2007, Porto Alegre, Brazil 4 Hübner, M. ; Braun, L. ; Göhringer, D. ; Becker, J. : Run-time Reconfigurable Apaptive Multilayer Network-on-Chip for FPGAbased Systems RAW 2008, Miami, Florida, USA 4 Hübner, M. ; Ullmann, M. ; Becker, J. : Real-time Configuration Code Decompression for Dynamic FPGA Self. Reconfiguration - extended version, International Journal on Embedded Systems (IJES), vol. 1, no. 3/4, 2006, pp. 263 -273. 4 Paulsson, K. ; Hübner, M. ; Becker, J. : Strategies to On- Line Failure Recovery in Self- Adaptive Systems based on Dynamic and Partial Reconfiguration, AHS 2006, Istanbul, Turkey 4 Paulsson, K. ; Hübner, M. ; Becker, J. : On-Line Optimization of FPGA Power-Dissipation by Exploiting Run-time Adaption of Communication Primitives„ SBCCI 2006, Brazil 4 Paulson, K. , Auer, G. , Dreschmann, M. , Chen, L. ; Hübner, M. ; Becker, J. : Implementation of a Virtual Internal Configuration Access Port (JCAP) for Enabling Partial Self- Reconfiguration on Xilinx Spartan III FPGAs FPL 2007, Amsterdam, The Netherlands 4 Piontek, T. ; Albrecht, C. ; Koch, R. ; Maehle, E. ; Hübner, M. ; Becker, J. : Communication Architectures for Dynamically Reconfigurable FPGA Designs RAW 2007, Long Beach, California USA Institut für Technik der Informationsverarbeitung 2008 10/16/2021 24
Zusammenfassung 4 2 -dimensionales physikalisches Platzieren von Funktionsblöcken zur Laufzeit 4 Erhöhte Flexibilität und Architekturunabhängigkeit 4 Laufzeitadaptive No. C Architektur mit 2 D On-Line Routing 4 Adaptives Network-on-Chip: „Configurable Topology-on-Chip “Taskgraphsynchronisierte On-Demand Topologie 4 Ermöglicht funktionsangepasste Verdrahtung zur Laufzeit 4 High-Level Fehlerdiagnose / Monitoring und Debugging durch Auswertung der gewonnenen Informationen 4 Wiederherstellung der Hardwarefunktionalität unter Ausnutzung der neuen Freiheitsgrade On. Line Platzierung und Verdrahtung (2 dimensional) 4 Schnittstelle zu High-Level Tools für Debugging 4 Durchgehende Modellierung 4 Erweiterung und Integration Modellierung: Plattform, Funktion, Prozesse 4 Modellierung und Ausführbarkeit Werkzeugketten 4 Debugging auf Modellebene 4 Integration konfigurierbarer Hardware in Debugger 4 Erweiterung auf dynamisch rekonfigurierendes System und Echtzeitfähigkeit 4 Testmethodik 4 Syntaktisch mächtige Definition von Tests durch UML Sequenzdiagramme 4 Prozessorartige und rekonfigurierbare Ausführungseinheiten als Datenquellen Institut für Technik der Informationsverarbeitung 2008 10/16/2021 25
Ausblick 4 Laufzeitadaptives, hardwarerekonfigurierbares System ALadyn: Weiterführung des Ansatzes 4 Anwendung mit weiteren Applikationsbeispielen: Videodatenverarbeitung, Automotive Applikationen, Fehlerredundante Systeme mit Fault Recovery Mechanismen 4 Erweiterung des Systemansatzes zur Anwendung mit neuen FPGA Architekturen 4 Ausnutzung der (eingeschränkten) 2 dimensionalen dynamischen und partiellen Rekonfiguration von Virtex-4 / Virtex-5 FPGAs 4 Erster Schritt: JCAP (Spartan-III) (FPL 2007, Amsterdam) 4 Durchgängige Standardisierung der API von der Modellierungs- bis zur Hardwareebene 4 Untersuchung der Nutzbarkeit von UML Action Semantics zur Verhaltensbeschreibung von Hard- und Software 4 Weitere Sichten des Debuggers 4 Implizite Zustandsautomaten 4 Zustand Verteilungsmanager 4 Weiterführung und Erweiterung der im SPP 1148 entstandenen Kooperationen Institut für Technik der Informationsverarbeitung 2008 10/16/2021 26
Fragen und Diskussion . . . ? Institut für Technik der Informationsverarbeitung 2008 10/16/2021 27
- Slides: 27