24
1 Einleitung
ren ähnlichen Diagrammen in diesem Buch) verwenden wir Rechtecke mit abgerundeten Ecken zur Darstellung gespeicherter Informationen und herkömmliche
Rechtecke für Transformationen von Informationen. Insbesondere kann die Speicherung zentral in einer Entwurfsdatenbank erfolgen. Diese Datenbank ermöglicht
es, einen Überblick über die Entwurfsmodelle zu behalten. Normalerweise sollten
die Entwurfsdaten einer Versionsverwaltung unterliegen, die z.B. mittels der Werkzeuge CVS [87], SVN [108] oder git (siehe https://www.git-scm.com) verfügbar ist.
Eine gute Entwurfsdatenbank sollte auch eine Schnittstelle zur Entwurfsverwaltung
besitzen, die es erlaubt, einen Überblick über die Anwendbarkeit von Entwurfswerkzeugen und -folgen zu erhalten. Diese Schnittstelle kann als graphische Benutzerschnittstelle (engl. Graphical User Interface (GUI)) realisiert werden, um die
Benutzung zu vereinfachen. Die Entwurfsdatenbank und die Benutzerschnittstelle
können zu einer integrierten Entwicklungsumgebung (engl. Integrated Development Environment (IDE)) zusammengefasst werden, die auch design framework
genannt wird (siehe z.B. [346]). Eine integrierte Entwicklungsumgebung verwaltet
die Abhängigkeiten zwischen den Werkzeugen und der Entwurfsinformation.
Die Verwendung der Datenbank ermöglicht es, Entwurfsentscheidungen in einem iterativen Ablauf zu treffen. Für jeden Schritt muss die Information über das
Entwurfsmodell abgerufen und anschließend bewertet werden.
In den einzelnen Entwurfsdurchläufen werden Anwendungen auf Ausführungsplattformen abgebildet, zudem werden neue (partielle) Entwurfsinformationen erzeugt. Dies beinhaltet die Abbildung von Operationen auf nebenläufige Tasks,
die Abbildung von Operationen auf Hardware oder Software (Hardware/SoftwarePartitionierung genannt), die Übersetzung und das Scheduling.
Entwürfe sollten in Hinblick auf verschiedene Ziele wie Rechenleistung (Performanz), Verlässlichkeit, Energieverbrauch, thermisches Verhalten usw. bewertet
(evaluiert) werden. Der aktuelle Stand der Technik garantiert nicht, dass irgendeiner
dieser Entwurfsschritte korrekt ist. Daher ist es auch erforderlich, einen Entwurf
zu validieren. Die Validierung umfasst den Abgleich von Zwischenversionen und
der endgültigen Version von Entwurfsbeschreibungen mit anderen Beschreibungen.
Jeder neue Entwurf sollte bewertet und validiert werden.
Da die Effizienz eingebetteter Systeme besonders wichtig ist, sind Optimierungen erforderlich. Dabei ist eine Vielzahl von Optimierungen verfügbar, beispielsweise High-Level-Transformationen (wie z.B. erweiterte Schleifentransformationen)
und Energieoptimierungen.
Wenn Überlegungen zur Testbarkeit schon in frühen Entwurfsphasen berücksichtigt werden sollen, müssen Tests in die dargestellten Entwurfsiterationen integriert
werden. In Abb. 1.8 wurde die Testerzeugung als optionaler Schritt während der
Entwurfsiterationen hinzugefügt (dargestellt durch das gestrichelte Rechteck). Wenn
die Testerzeugung nicht Bestandteil der einzelnen Entwurfsiterationen ist, dann muss
sie nach Fertigstellung des Entwurfs durchgeführt werden. Am Ende jedes einzelnen
Schrittes sollte die Datenbank aktualisiert werden.
Die Details des Informationsflusses zwischen Datenbank, Anwendungsabbildung,
Bewertung, Validierung, Optimierung, Testbarkeitsüberlegungen und der Speicherung von Entwurfsinformationen können durchaus abweichen. Abhängig von der
Précédent

- 47/485

Suivant