5.8 Rapid Prototyping und Emulation
315
zwar helfen, Fehler im Entwurf zu entdecken, sie können aber die Fehlerfreiheit
des Systems nicht garantieren. Es ist nicht möglich, alle Kombinationen von
Eingaben und internen Zuständen zu simulieren.
Aufgrund dieser Einschränkungen gewinnt die formale Verifikation zunehmend
an Bedeutung (siehe Seite 316). Dennoch spielen hochentwickelte Simulationstechniken weiterhin eine wichtige Rolle bei der Validierung von Systemen (siehe
z.B. Braun et al. [66]). Es sind sowohl akademische Lösungen wie gem5 (siehe
http://gem5.org), SimpleScalar und OpenModelica wie auch kommerzielle Lösungen wie der Synopsys ® Virtualizer ™ (siehe http://synopsys.com) verfügbar. Netzwerke, wie sie für die Realisierung des Internets der Dinge benötigt werden, können
mit verschiedenen Werkzeugen simuliert werden, wie z.B. mit OMNET++ (siehe
https://omnetpp.org/).
5.8 Rapid Prototyping und Emulation
Simulationen beruhen auf Modellen, die Annäherungen von realen Systemen darstellen. Im Allgemeinen gibt es einige Unterschiede zwischen dem realen System
und dem Modell. Wir können diese Lücke verkleinern, indem wir einige Teile des
zu entwerfenden Systems präziser als in einem Simulator implementieren (z.B. als
reale, physische Komponente).
Definition 5.42: Die Ausführung eines Modells eines Systems, bei der mindestens
eine Komponente nicht durch eine Simulation auf einem Computer realisiert wird,
bezeichnen wir als Emulation [384].
Nach M c Gregor [384] ist das „Überbrücken der Glaubwürdigkeitslücke nicht der
einzige Grund für ein steigendes Interesse an Emulation – die obige Definition eines
Emulationsmodells bleibt auch gültig, wenn sie ins Gegenteil verkehrt wird – ein
Emulationsmodell ist ein Modell, in dem ein Teil des realen Systems durch ein Modell ersetzt wurde. Die Verwendung von Emulationsmodellen, um Regelungssysteme
unter realistischen Bedingungen zu testen, in denen das ... (reale System) ... durch
ein Modell ersetzt wird, ist von besonderem Interesse für all jene, die für die Bereitstellung, die Installation und die Inbetriebnahme verschiedenster automatisierter
Systeme verantwortlich sind.”
Um die Glaubwürdigkeit noch weiter zu erhöhen, können wir weitere simulierte
Komponenten durch reale Komponenten ersetzen. Diese Komponenten müssen dabei
nicht die im endgültigen System eingesetzten sein. Sie können auch selbst wieder
Näherungen des realen Systems sein, sollten aber präziser als eine Simulation sein.
Es ist mittlerweile üblich, über „Emulation” eines Computers auf einem anderen
Computer mit Hilfe von Software zu sprechen. In diesem Zusammenhang fehlt eine
präzise Definition des Begriffs „Emulation”. Dennoch passt diese Verwendung zu
unserer Definition, da der emulierte Computer nicht nur simuliert wird. Vielmehr
wird eine Geschwindigkeit erwartet, die die Simulationsgeschwindigkeit deutlich
übersteigt.
Précédent

- 334/485

Suivant