Anzeige

Werkzeuge für das Systemdesign

Gratwanderung zwischen Zeit und Funktionalität

Mit der Zunahme an Komplexität von Embedded-Systemen steigt meist auch die Komplexität traditioneller Softwarewerkzeuge. Zu den daraus resultierenden Herausforderungen zählen das Programmieren unterschiedlicher Arten von Verarbeitungstechnologien, die in einem komplexen System zusammenarbeiten müssen, das Abwägen zwischen Funktionsanforderungen und Markteinführungszeit sowie zwischen Validierungstests und Robustheit. Des Weiteren müssen Entwickler sicherstellen, dass die Teammitglieder das für das Projekt benötigte Know-how mitbringen. Systementwickler benötigen daher weniger, aber produktivere Werkzeuge, die erlauben, mehr Zeit für das Entwickeln von Algorithmen aufzuwenden als auf die Integration von Hard- und Software.

Bild: National Instruments Germany GmbHBild: National Instruments Germany GmbH
Systemdesignsoftware vereinfacht die Programmierkomplexität für unterschiedliche Arten von Verarbeitungseinheiten. Die Abbildung zeigt die unterschiedlich hohe Komplexität einer Systemdesignsoftware und eines für ein Zielsystem spezifisches Low-Level-Prog

Software-Umgebungen für das Systemdesign dienen dem Entwurf und Test einer Bandbreite von Mess- und Steuersystemen. Sie bieten die Möglichkeiten der Integration mit vorhandener Software, IP und Hardware, während sie zugleich mit aktueller Technologie verwendet werden können. Diese Software-Umgebungen verfügen über die Werkzeuge, die zur Lösung der aktuell beim Systementwurf auftretenden Probleme benötigt werden. Diese Softwarewerkzeuge lassen sich in spezifische Hardwarearchitekturen und modulare Plattformen integrieren, sodass vom frühen Prototyp bis zum endgültigen Einsatz die Produktivität maximiert wird und Software wiederverwendet werden kann. Aufgrund der validierten Hard- und Softwareintegration entfällt die Notwendigkeit, spezialisierte Treiber und Middleware für alle Arten von I/O und Peripherien zu entwickeln. Auf diese Weise können Embedded-Designer schnell mit der Entwicklung ihrer spezifischen Anwendung beginnen. Folgende Funktionen und Funktionalität müssen Softwareumgebungen für das Systemdesign aufweisen:

  • • 1. Unterstützung einer Vielzahl von Verarbeitungselementen, z.B. Mikroprozessoren, FPGAs und GPUs
  • • 2. Bereitstellung eines vollständigen Satzes von Systembeschreibungsmethoden
  • • 3. Simulationsfunktionen
  • • 4. Werkzeuge für die Erstellung von Benutzeroberflächen
  • • 5. Bewältigung von Systemeinsatz und -wartung

Während sich die Verwendung von Field-Programmable Gate Arrays (FPGA) gemeinsam mit Mikroprozessoren (MPUs) als ideal für viele anspruchsvolle Steuer-, Regel- und Überwachungssysteme erwies, erforderten FPGA und MPU unterschiedliche Sprachen und spezielle Kenntnisse für die Programmierung. Heutzutage ermöglicht der Einsatz einer Systemdesignsoftware wie LabView die Systementwicklung für beide Verarbeitungselemente in einer einzigen Umgebung.

National Instruments Germany GmbH

Dieser Artikel erschien in Embedded Design I 2015 - 19.01.15.
Für weitere Artikel besuchen Sie www.embedded-design.net