Socrocket - Eine flexible Erweiterbare Virtuelle Plattform Zum Entwurf Robuster Eingebetteter Systeme

Total Page:16

File Type:pdf, Size:1020Kb

Load more

SoCRocket - Eine flexible erweiterbare Virtuelle Plattform zum Entwurf robuster Eingebetteter Systeme Von der Carl-Friedrich-Gauß-Fakultät der Technische Universität Carolo-Wilhelmina zu Braunschweig zur Erlangung des Grades eines Doktoringenieurs (Dr.-Ing.) genehmigte Dissertation von Dipl.-Ing. Thomas Schuster geboren am 28.03.1976 in Räckelwitz Eingereicht am: 11.11.2014 Disputation am: 08.04.2015 1. Referent: Prof. Dr.-Ing. Mladen Berekovic 2. Referent: Prof. Dr.-Ing. Harald Michalik (2015) Erklärung der Selbstständigkeit Hiermit versichere ich, die vorliegende Arbeit selbstständig verfasst und keine anderen als die angegebenen Quellen und Hilfsmittel benutzt sowie die Zitate deutlich kenntlich gemacht zu haben. Braunschweig, den 15.05.15 Thomas Schuster Vorwort Diese Doktorarbeit ist der Ergebnis einer langjährigen und fruchtbaren Zusammenarbeit mit Prof. Dr.-Ing. Mladen Berekovic, den ich 2004 als Praktikant und späterer Angestellter am IMEC in Belgien kennenlernte und 2007 als Wissenschaftlicher Mitarbeiter an die Technische Universität Braunschweig begleitete. Ich möchte ihm hier ganz besonders für seine Unterstützung danken. Ganz besonderer Dank gebührt ebenfalls Prof. Dr.-Ing. Harald Michalik, der mich durch einen ge- meinsamen Projektantrag (2009), in Kontakt zur Europäischen Raumfahrtagentur (ESA) brachte und damit nicht nur wesentlich zur Finanzierung, sondern auch zur fachlichen Ausrichtung der vorliegenden Arbeit beitrug. Der Weg zur Entstehung dieser Arbeit war spannend, selten geradlinig und erwies sich als kniffliger Balanceakt zwischen Industrieprojekten, wissenschaftlicher Arbeit, Lehre und Pro- jektorganisation; ein Weg den ich ohne die Unterstützung meiner Kollegen am Lehrstuhl für Technische Informatik nicht hätte bewältigen können. Ganz herzlichen Dank an Rolf Meyer, der mir mit seinen großartigen Ideen und technischem Know-How während der Arbeit an SoCRocket zur Seite stand. Vielen Dank auch an Rainer Buchty, für seine wertvollen Anregung und die Durchsicht des Manuskripts, an Jan Wagner für seine Ideen zur Datenanalyse, Sören und Sönke Michalik für die fachlichen Diskussionen rund um GRLIB und Syed Abbas Ali Shah für die Zusammenarbeit auf dem Gebiet der Power-Simulation. Ich danke ebenfalls Luca Fossati von der ESA für das Teilen seiner Erfahrungen und die Zusammenarbeit in SoCRocket und Christian Sauer von Cadence der mein Verständnis moderner Entwurfsmethoden durch sein Mentoring wesentlich beeinflusst hat. Nicht zuletzt danke ich meiner Frau Kerstin, meinen Eltern, meinen Schwiegereltern und Oma Helene, ohne deren unermüdliche Unterstützung, Verständnis und auch gelegentliche Aufbauar- beit all dies nicht möglich gewesen wäre. Braunschweig, am 15. Mai 2015 Thomas Schuster i Kurzfassung Die moderne Halbleitertechnologie ermöglicht eine kostengünstige Fertigung von integrierten Schaltungen bestehend aus mehreren Milliarden Transistoren. Logik dieser Komplexität kann jedoch mit konventionellen Entwurfsmethoden, zum Beispiel auf Register-Transfer-Ebene, nicht effizient beschrieben werden. Grund ist der zur Erzeugung von synthetisierbaren Schaltungen erforderliche hohe Detailgrad, der eine sinnvolle Architekturexploration unmöglich macht. Um die vorhandenen technischen Möglichkeiten besser ausschöpfen zu können, werden heute drei Ansätze verfolgt: 1) die Integration immer größerer Speichermengen auf dem Chip, 2) die systematische Wiederverwendung von Logikkomponenten (IP-Reuse) und 3) die Erhöhung des Abstraktionsniveaus im Entwurfsprozess. Der Schwerpunkt dieser Arbeit liegt in der Erhöhung des Abstraktionsniveaus, speziell dem Entwurf von Systemen auf Basis von Virtuellen Plattformen (VPs), Transaction-Level-Modellierung (TLM) und SystemC. Es wird eine ganzheitliche Methode vorgestellt, mit der komplexe eingebettete Systeme effizient modelliert werden können. Ergebnis ist eine der RTL-Synthese nahezu gleichgestellte Genauigkeit bei wesentlich höherer Abstraktion, Flexibilität und Simulationsgeschwindigkeit. Die der vorliegenden Arbeit zu Grunde liegenden Konzepte sind seit geraumer Zeit Thema zahlreicher Forschungsaktivitäten. Die Akzeptanz und Umsetzung in die Praxis durch die In- dustrie ist bisher jedoch nur in Ausnahmefällen gelungen. Ganze Branchen, beispielsweise die Automobilindustrie oder der Luft- und Raumfahrtsektor, zögern in der Anwendung der neuen Methodik. Gründe dafür sind Standardisierungslücken, welche die Interoperabilität und Wieder- verwendbarkeit von TL-Modellen einschränken, die Abschreckung durch hohe Investitionen in Entwicklungswerkzeuge und der Mangel an geschultem Personal zur effizienten Umsetzung ab- strakter Entwurfsmethoden. Diesen Beschränkungen wird durch die Entwicklung einer vollständig offenen Virtuellen Plattform begegnet. Das SoCRocket-System orientiert sich dazu an existie- renden Standards wie IEEE 1666 SystemC/TLM2.0 und stellt Methoden zu deren effizientem Einsatz zur Verbesserung von Simulationsgeschwindigkeit und Simulationsgenauigkeit vor. So wird unter anderem gezeigt, wie moderne Multi-Kanal-Protokolle mit Split-Transfers durch Aus- gleich des Intertransaktions-Timings ohne die Einführung zusätzlicher Protokollphasen zeitlich genau modelliert werden können. Standardisierungslücken in den Bereichen Speichermodellierung und Systemkonfiguration werden durch standardoffene Lösungen geschlossen. Darüber hinaus wird neue Infrastruktur zur Modellierung von Signalkommunikation auf Transaktionsebene, der Verifikation von Komponenten und der Modellierung des Energieverbrauchs vorgestellt. Die entwickelte Methodik beruht auf der Kapselung der Grundfunktionalitäten des Systems – wie Busschnittstellen, Konfigurationsinformationen, Speicherelemente, Zeitverhalten oder Ener- giemodelle – in Bibliotheksbasisklassen. Neue Komponenten können durch Vererbung von diesen Basisklassen auf einfache Weise generiert werden. Systeme werden mit Hilfe von Templates erzeugt, die zur Laufzeit dynamisch konfiguriert werden. Dadurch lassen sich alle Systempara- meter, bis hin zur Abstraktion der Busschnittstelle, ohne erneute Übersetzung variieren. Zur Demonstration wurden die Kernkomponenten einer im europäischen Raumfahrtsektor maß- geblichen Hardwarebibliothek modelliert. Neben einem aus einer Integereinheit entwickelten LEON2/3-Prozessorsimulator mit Cachesystem und Memory-Management-Einheit entstanden ein Busmodell für AMBA 2.0, ein Speichercontroller und diverse Peripheriekomponenten wie Timer und Interruptcontroller. Alle Komponenten wurden zunächst in Unit-Tests verifiziert und anschließend in einem Systemprototypen integriert. Zur Verifikation der Funktion, so- wie Bestimmung von Simulationsgeschwindigkeit und zeitlicher Genauigkeit, wurde dieser für unterschiedliche Abstraktionsstufen konfiguriert und mit einem in VHDL beschriebenen RISC- Referenzentwurf (LEON3MP) verglichen. Das System mit losem Timing (LT) und blockierender iii iv Kommunikation ist im Durchschnitt 561-mal schneller als die RTL-Referenz und weist eine durchschnittliche Timing-Abweichung von 7,04% auf. Das System mit näherungsweise akkuratem Timing (AT) und nicht-blockierender Kommunikation ist 335-mal schneller. Die durchschnittliche Timing-Abweichung beträgt hier nur noch 3,03%, was einer Standardabweichung von 0.033 und damit einer sehr hohen statistischen Sicherheit entspricht. Die verschiedenen Abstraktionsniveaus können zur Realisierung mehrstufiger Architekturexplorationen eingesetzt werden. Dies wird am Beispiel einer hyperspektralen Bildkompression verdeutlicht, die auf ein Mehrprozessorsys- tem abgebildet wurde. Die dynamische Rekonfigurierbarkeit des Systems ermöglicht es, einen Entwurfsraum aus 1280 Prototypen in weniger als 24 Stunden vollständig zu durchsuchen. Abstract Modern semiconductor technology enables cost-efficient production of integrated circuits con- sisting of several billions of transistors. Logic of this complexity cannot be solely designed at register-transfer level anymore. Reason is the high degree of detail required for generating synthe- sizable circuits making reasonable architecture exploration impossible. Today, three approaches are being followed for better exploitation of the existing technological capacities: 1) integration of ever larger amounts of memory on the chip, 2) systematic reuse of logic building blocks (IP-Reuse), and 3) raising the abstraction level of the design process. The focus of this work is the raise of the abstraction level, especially for the design of systems based on Virtual Platforms (VPs), Transaction Level Modeling (TLM), and SystemC. A holistic method for efficient modeling of complex embedded systems is presented. Results are accuracies close to RTL synthesis but at much higher abstraction, flexibility, and simulation performance. The underlying concepts of this work have been subject to numerous research activities. However, general acceptance by the industry is still low, except some special cases like mobile communications. Whole domains, such as the automotive industry or aerospace, hesitate adapting the new methodology. The reasons for this are standardization gaps which limit interoperability and reuse of models, required high investments in new development tools, absence of experienced personnel for efficient application of abstract design methods, and lack of reliable simulation models. These problems are addressed by developing a completely open and extensible Virtual Platform. The SoCRocket system integrates existing standards like IEEE 1666 SystemC/TLM2.0, and introduces new methods for improvement of simulation performance and accuracy. It is shown,
Recommended publications
  • QEMU As a Platform for PLC Virtualization an Analysis from a Cyber Security Perspective

    QEMU As a Platform for PLC Virtualization an Analysis from a Cyber Security Perspective

    QEMU as a platform for PLC virtualization An analysis from a cyber security perspective HANNES HOLM, MATS PERSSON FOI Swedish Defence Research Agency Phone: +46 8 555 030 00 www.foi.se FOI-R--4576--SE SE-164 90 Stockholm Fax: +46 8 555 031 00 ISSN 1650-1942 April 2018 Hannes Holm, Mats Persson QEMU as a platform for PLC virtualization An analysis from a cyber security perspective Bild/Cover: Hannes Holm FOI-R--4576--SE Titel QEMU as a platform for PLC virtualization Title Virtualisering av PLC:er med QEMU Rapportnr/Report no FOI-R--4576--SE Månad/Month April Utgivningsår/Year 2018 Antal sidor/Pages 36 ISSN 1650-1942 Kund/Customer MSB Forskningsområde 4. Informationssäkerhet och kommunikation FoT-område Projektnr/Project no E72086 Godkänd av/Approved by Christian Jönsson Ansvarig avdelning Ledningssytem Detta verk är skyddat enligt lagen (1960:729) om upphovsrätt till litterära och konstnärliga verk, vilket bl.a. innebär att citering är tillåten i enlighet med vad som anges i 22 § i nämnd lag. För att använda verket på ett sätt som inte medges direkt av svensk lag krävs särskild överenskommelse. This work is protected by the Swedish Act on Copyright in Literary and Artistic Works (1960:729). Citation is permitted in accordance with article 22 in said act. Any form of use that goes beyond what is permitted by Swedish copyright law, requires the written permission of FOI. FOI-R--4576--SE Sammanfattning IT-säkerhetsutvärderingar är ofta svåra att genomföra inom operativa industriella informations- och styrsystem (ICS) då de medför risk för avbrott, vilket kan få mycket stor konsekvens om tjänsten som ett system realiserar är samhällskritisk.
  • Efficient Dual-ISA Support in a Retargetable, Asynchronous

    Efficient Dual-ISA Support in a Retargetable, Asynchronous

    Edinburgh Research Explorer Efficient Dual-ISA Support in a Retargetable, Asynchronous Dynamic Binary Translator Citation for published version: Spink, T, Wagstaff, H, Franke, B & Topham, N 2015, Efficient Dual-ISA Support in a Retargetable, Asynchronous Dynamic Binary Translator. in Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS), 2015 International Conference on. Institute of Electrical and Electronics Engineers (IEEE), pp. 103 - 112. https://doi.org/10.1109/SAMOS.2015.7363665 Digital Object Identifier (DOI): 10.1109/SAMOS.2015.7363665 Link: Link to publication record in Edinburgh Research Explorer Document Version: Peer reviewed version Published In: Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS), 2015 International Conference on General rights Copyright for the publications made accessible via the Edinburgh Research Explorer is retained by the author(s) and / or other copyright owners and it is a condition of accessing these publications that users recognise and abide by the legal requirements associated with these rights. Take down policy The University of Edinburgh has made every reasonable effort to ensure that Edinburgh Research Explorer content complies with UK legislation. If you believe that the public display of this file breaches copyright please contact [email protected] providing details, and we will remove access to the work immediately and investigate your claim. Download date: 28. Sep. 2021 Efficient Dual-ISA Support in a Retargetable, Asynchronous Dynamic Binary Translator Tom Spink, Harry Wagstaff, Björn Franke and Nigel Topham Institute for Computing Systems Architecture School of Informatics, University of Edinburgh [email protected], [email protected], [email protected], [email protected] Abstract—Dynamic Binary Translation (DBT) allows software compilation task farm [2], each JIT compilation worker may compiled for one Instruction Set Architecture (ISA) to be executed independently change its target ISA based on the encoding of on a processor supporting a different ISA.
  • 2015-Samos-13

    2015-Samos-13

    Efficient Dual-ISA Support in a Retargetable, Asynchronous Dynamic Binary Translator Tom Spink, Harry Wagstaff, Björn Franke and Nigel Topham Institute for Computing Systems Architecture School of Informatics, University of Edinburgh [email protected], [email protected], [email protected], [email protected] Abstract—Dynamic Binary Translation (DBT) allows software compilation task farm [2], each JIT compilation worker may compiled for one Instruction Set Architecture (ISA) to be executed independently change its target ISA based on the encoding of on a processor supporting a different ISA. Some modern DBT the code fragment it is operating on. Most DBT systems [3], systems decouple their main execution loop from the built-in [4], [5], [6], [7], [8], [9], [1], [10], [11], [12], [13], [14], [15] Just-In-Time (JIT) compiler, i.e. the JIT compiler can operate avoid dealing with this added complexity and do not provide asynchronously in a different thread without blocking program support for dual-ISAs at all. A notable exception is the ARM execution. However, this creates a problem for target architectures EMU RM HUMB with dual-ISA support such as ARM/THUMB, where the ISA of the port of Q [16], which supports both A and T currently executed instruction stream may be different to the one instructions, but tightly couples its JIT compiler and main processed by the JIT compiler due to their decoupled operation execution loop and, thus, misses the opportunity to offload and dynamic mode changes. In this paper we present a new the JIT compiler from the critical path to a separate thread.
  • Execution Time Analysis of Audio Algorithms

    Execution Time Analysis of Audio Algorithms

    Computer Engineering 2014 Mekelweg 4, 2628 CD Delft The Netherlands http://ce.et.tudelft.nl/ MSc THESIS Execution time analysis of audio algorithms Namitha Gopalakrishna Abstract Execution time analysis forms an important part of design space and hardware architectural exploration for hard real-time systems. Some approaches for execution time analysis require prerequisite knowl- edge of synchronous data flows or timed automata employed in model checkers. This is unsuitable for industry-level use as easy approaches without any prerequisite knowledge requirements are preferred by CE-MS-2014-11 them. Most of the existing proposals addressing execution time anal- ysis target 'fast' approaches rather than timing accuracy. Also, these existing proposals are validated with simple processors as major- ity of processors used for hard real-time embedded software are not so complex. However, for audio applications employing audio algo- rithms, modern processors with high performance are required, to be scalable with increasing audio algorithm complexity. Execution time analysis of audio algorithms on these modern processors is gaining importance as sampling frequencies are getting higher and deadlines getting shorter. In this thesis, we propose an industry acceptable model/simulation framework to perform execution time analysis of audio algorithms on modern mono core and multi-core processors (operating in asymmetric multiprocessing mode). Our framework combines open-source tools such as Gcov, POOSL modelling lan- guage (Parallel object-oriented specification language) and Gem5 which is a computer architecture simu- lator to determine WCET of an audio algorithm using dynamic means as static WCET techniques lead to huge overestimations. This solution framework was proposed after conducting experiments targeting execution time analysis at different abstraction levels and evaluating results based on accuracy, flexibility, hardware compatibility and scalability.