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,
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages211 Page
-
File Size-