Efficient protocol design flow for embedded systems

Effizienter Protokoll-Entwurfsprozess für eingebettete Systeme

  • It is predicted that, in the next years, wireless sensor networks could be massively deployed in a wide variety of application areas, such as agriculture, logistics, automation, or infrastructure monitoring. An extremely low power consumption, high dependability, and low cost are common requirements for sensor nodes in all these applications. This can be achieved only by tiny, power-efficient microcontrollers and communication systems integrated on a single chip. Formal description techniques, such as SDL (Specification and Description Language), are suitable to formally prove properties of models designed in these languages. Code generators facilitate the automatic transformation of SDL models into software implementations, while preserving the properties of the model and, thus, achieving high system dependability. The implementations consist of the translated state machine behavior and, additionally, require a run-time environment for model execution. The objective of this work was to investigate an integrated design flow forIt is predicted that, in the next years, wireless sensor networks could be massively deployed in a wide variety of application areas, such as agriculture, logistics, automation, or infrastructure monitoring. An extremely low power consumption, high dependability, and low cost are common requirements for sensor nodes in all these applications. This can be achieved only by tiny, power-efficient microcontrollers and communication systems integrated on a single chip. Formal description techniques, such as SDL (Specification and Description Language), are suitable to formally prove properties of models designed in these languages. Code generators facilitate the automatic transformation of SDL models into software implementations, while preserving the properties of the model and, thus, achieving high system dependability. The implementations consist of the translated state machine behavior and, additionally, require a run-time environment for model execution. The objective of this work was to investigate an integrated design flow for embedded systems, which should allow the development of efficient and dependable system implementations from abstract SDL specifications. In this thesis, concepts for minimal SDL run-time environment have been devised and realized by an example implementation. Not only pure software implementations should be considered, but starting from these also the hardware/software (HW/SW) partitioning of the system should be supported. For this purpose, a cosimulation framework that allows the coupling of an instruction set simulator (ISS) with a functional SDL simulation has been investigated and prototypically implemented within the scope of this thesis. By shifting functionality to dedicated hardware components it is possible to take computational load from the microcontroller and to decrease the overall energy consumption by reducing the clock frequency and lowering the supply voltage. Due to the use of SDL, the design flow lends itself particularly to the implementation of communication protocols, and is limited to applications with soft real-time requirements. For an SDL-based design flow targeted to resource-constrained embedded systems, concepts and real implementations of minimal SDL run-time environments were lacking. Available software tools, indeed, enable the transformation of SDL models into C code, however for an efficient implementation, an integration into existing real-time operating systems (RTOS) for small microcontrollers is essential. A prototypical implementation of a run-time library for the Reflex RTOS has been created to validate our general concepts. It is about 30 % faster and consumes less than half of the program memory compared to the operating system independent run-time environment of the tool vendor Telelogic. For simple SDL models, the application requires in total less than 8 kbytes program memory and 1 kbyte RAM. For the evaluation of design alternatives that realize different hardware/software partitionings, instruction set simulators are particularly suitable. They facilitate the identification of performance bottlenecks of the HW/SW system. Test stimuli are required in order to measure the performance and response time of systems under design. The development of an environment that generates such test signals can be a laborious task. Thus, it is reasonable, especially in the design of protocols, to use an SDL simulation of a communication network to generate these test stimuli. Such an SDL model already exists and is the basis for the implementation. The protocol implementation simulated by the ISS then becomes part of the network simulation. An efficient coupling of SDL simulations with instruction set simulators had to be investigated, and a solution is presented in this thesis. Based on the general concepts, a cosimulation framework for the ISS TSIM for the LEON2 processor was realized by the author. The joint SDL and instruction set simulation is very fast, which could be demonstrated by connecting a software implementation of the complex IEEE 802.15.3 medium access control (MAC) protocol with an SDL simulation of a network consisting of four devices. The real execution time for 10 seconds of simulation time amounted to just 50 seconds. The overall design flow was validated by means of a HW/SW implementation of the IEEE 802.15.3 wireless MAC protocol. The author designed a complete SDL model of the protocol and integrated it into Reflex. By using our cosimulation environment for the TSIM simulator, the model was partitioned into hardware and software. For the hardware part, a dedicated protocol accelerator was designed by the author. This hardware component was integrated on a single chip with the LEON2 processor and, finally, manufactured. It could be shown that the presented methodology enables the design and implementation of efficient HW/SW systems. Consequently, it can be applied to the development of dependable and energy-efficient wireless sensor nodes and other embedded systems.show moreshow less
  • Es wird vorausgesagt, dass in einigen Jahren eine riesige Menge von drahtlos kommunizierenden Sensorknoten in den verschiedensten Anwendungsgebieten, etwa der Landwirtschaft, Logistik, Automatisierung oder der Überwachung von Infrastruktur, Einzug halten könnten. Diesen Geräten ist gemeinsam, dass sie einen äußerst geringen Stromverbrauch, hohe Zuverlässigkeit und geringe Kosten aufweisen müssen. Dies ist nur mit kleinen, Strom sparenden Mikrocontrollern und auf einem einzigen Chip integrierten Kommunikationssystemen erreichbar. Formale Beschreibungssprachen, wie SDL (Specification and Description Language), eignen sich dazu, Eigenschaften von in dieser Sprache beschriebenen Modellen formal zu beweisen. Durch Code-Generatoren wird die automatische Umsetzung von SDL-Modellen in eine Software-Implementation unterstützt, welche die Eigenschaften des Modells erhalten soll und somit eine hohe Zuverlässigkeit des Systems erreicht. Neben der Umsetzung des Zustandsmaschinenverhaltens wird auch eine Laufzeitumgebung zur Ausführung benötigt.Es wird vorausgesagt, dass in einigen Jahren eine riesige Menge von drahtlos kommunizierenden Sensorknoten in den verschiedensten Anwendungsgebieten, etwa der Landwirtschaft, Logistik, Automatisierung oder der Überwachung von Infrastruktur, Einzug halten könnten. Diesen Geräten ist gemeinsam, dass sie einen äußerst geringen Stromverbrauch, hohe Zuverlässigkeit und geringe Kosten aufweisen müssen. Dies ist nur mit kleinen, Strom sparenden Mikrocontrollern und auf einem einzigen Chip integrierten Kommunikationssystemen erreichbar. Formale Beschreibungssprachen, wie SDL (Specification and Description Language), eignen sich dazu, Eigenschaften von in dieser Sprache beschriebenen Modellen formal zu beweisen. Durch Code-Generatoren wird die automatische Umsetzung von SDL-Modellen in eine Software-Implementation unterstützt, welche die Eigenschaften des Modells erhalten soll und somit eine hohe Zuverlässigkeit des Systems erreicht. Neben der Umsetzung des Zustandsmaschinenverhaltens wird auch eine Laufzeitumgebung zur Ausführung benötigt. Die Zielstellung dieser Arbeit war es, einen durchgängigen Entwurfsprozess für eingebettete Systeme auf der Basis von SDL zu untersuchen, der es erlaubt, von abstrakten Spezifikationen in SDL zu effizienten und zuverlässigen Systemimplementationen zu gelangen. Es wurden neue Konzepte für minimale Laufzeitumgebungen erarbeitet und beispielhaft umgesetzt. Es sollte jedoch nicht nur die Generierung von reinen Software-Implementationen betrachtet werden, sondern von diesen ausgehend auch die Hardware/Software- (HW/SW-) Partitionierung der Systeme unterstützt werden. Zu diesem Zweck wurde im Rahmen dieser Arbeit ein Cosimulations-Ansatz zur Kopplung eines Befehlssatzsimulators (Instruction Set Simulator, ISS) mit einer abstrakten SDL-Simulation untersucht und prototypisch implementiert. Durch die Verlagerung von Funktionen in eigens dafür entworfene HW-Komponenten ist es möglich, Last vom Mikrocontroller zu nehmen und den Gesamtenergieverbrauch des eingebetteten Systems durch das Absenken der Taktfrequenz und Versorgungsspannung zu verringern. Wegen der Verwendung von SDL eignet sich der Entwurfsprozess besonders für die Implementierung von Kommunikationsprotokollen und ist auf Anwendungen mit weichen Echtzeitanforderungen beschränkt. Für eine SDL-basierte Entwurfsmethodik ausgerichtet auf extrem ressourcenbeschränkte eingebettete Systeme fehlten bislang Konzepte und tatsächliche Implementationen von minimalen SDL-Laufzeitumgebungen. Verfügbare Werkzeuge erlauben zwar die Übersetzung von SDL-Modellen in C-Code, für eine effiziente Implementation ist jedoch die Integration in vorhandene Mikrocontroller-Echtzeitbetriebssysteme (RTOS) erforderlich. Eine prototypische Implementation einer Laufzeitbibliothek für das RTOS Reflex wurde entwickelt, um die allgemeinen Konzepte zu validieren. Verglichen mit der betriebssystem-unabhängigen Laufzeitumgebung des Werkzeugherstellers Telelogic ist diese Implementation um ca. 30 % schneller und benötigt weniger als die Hälfte des Programmspeichers. Bei kleinen SDL-Systemen benötigt die gesamte Applikation weniger als 8 kB Programmspeicher und 1 kB RAM. Zur Bewertung von Entwurfsalternativen, die unterschiedliche HW/SW-Partitionierungen realisieren, eignen sich besonders Befehlssatzsimulatoren. Diese erlauben die taktgenaue Simulation der Ausführung von Programmen auf einem Prozessor, häufig auch von Modellen eigener HW-Komponenten, und sind um Größenordnungen schneller als reine HW-Simulationen. Mit ihnen lassen sich zeitkritische Teile eines HW/SW-Systems identifizieren. Um Reaktionen des zu evaluierenden Systems hervorzurufen und dessen Performance messen zu können, werden Teststimuli benötigt. Die Entwicklung einer Umgebung, welche solche Testsignale erzeugt, kann sehr aufwändig sein. Daher ist es naheliegend, gerade im Bereich der Entwicklung von Protokollen, die Teststimuli durch die Simulation eines Kommunikationsnetzes in SDL zu erzeugen. Ein solches SDL-Modell liegt ja bereits der Implementierung zu Grunde. Die im ISS ausgeführte Protokollimplementierung wird dann Teil der Netzwerksimulation. Die möglichst effiziente Kopplung von SDL-Simulationen mit dem ISS musste untersucht werden und wurde im Rahmen dieser Arbeit gelöst. Basierend auf den allgemeinen Konzepten wurde eine Cosimulation mit dem ISS TSIM für den LEON2-Prozessor vom Autor realisiert. Die gemeinsame Simulation ist sehr schnell, was anhand der Kopplung einer SW-Implementation des sehr komplexen MAC-Protokolls IEEE 802.15.3 mit einer SDL-Simulation eines aus vier Stationen bestehenden Netzes nachgewiesen wurde. Die reale Simulationszeit für 10 Sekunden simulierte Zeit betrug gerade einmal 50 Sekunden. Der gesamte Entwurfsprozess wurde anhand einer HW/SW-Implementierung des im Standard IEEE 802.15.3 festgelegten drahtlosen Medienzugriffsprotokolls validiert. Dazu wurde vom Autor ein komplettes SDL-Modell des Protokolls entwickelt, dieses in Reflex integriert und in einem HW/SW-Codesign-Prozess partitioniert. Dabei wurde die Cosimulationsumgebung mit dem TSIM-Simulator verwendet. Für die HW-Partition wurde vom Autor ein Protokollbeschleuniger entworfen. Dieser wurde gemeinsam mit dem LEON2-Prozessor auf einem Chip integriert und gefertigt. Somit wurde nachgewiesen, dass die vorgestellte Methodik geeignet ist, um effiziente HW/SW-Systeme zu entwerfen und zu implementieren. Sie kann folglich zur Entwicklung von zuverlässigen und Strom sparenden drahtlosen Sensorknoten und anderen eingebetteten Systemen angewendet werden.show moreshow less

Download full text files

Export metadata

Additional Services

Search Google Scholar Stastistics
Metadaten
Author: Daniel Dietterle
URN:urn:nbn:de:kobv:co1-opus-7848
Referee / Advisor:Prof. Dr.-Ing. Rolf Kraemer
Document Type:Doctoral thesis
Language:English
Year of Completion:2009
Date of final exam:2009/02/25
Release Date:2009/07/10
Tag:Cosimulation; IEEE 802.15.3; Protocol Engineering
Cosimulation; IEEE 802.15.3; Model-based design; Protocol engineering
GND Keyword:Eingebettetes System
Institutes:Fakultät 1 MINT - Mathematik, Informatik, Physik, Elektro- und Informationstechnik / FG Systeme
Institution name at the time of publication:Fakultät für Mathematik, Naturwissenschaften und Informatik (eBTU) / LS Systeme
Einverstanden ✔
Diese Webseite verwendet technisch erforderliche Session-Cookies. Durch die weitere Nutzung der Webseite stimmen Sie diesem zu. Unsere Datenschutzerklärung finden Sie hier.