Anbieter zum Thema
Entwicklungswerkzeuge, die ein hartes Echtzeitsystem nicht in seiner Funktion beeinträchtigen und dem Entwickler dennoch Einblick ins Innere gewähren, sind schwierig zu realisieren, denn mal eben kurz einen Breakpoint zu setzen geht dann nicht mehr. Bei weichem Echtzeitverhalten kann manchmal schon durch Hinzufügen eines Puffers, wie z.B. einem Cache in einem Prozessor, dafür gesorgt werden, dass die gewünschte durchschnittliche Vorhersagbarkeit erreicht wird. Deswegen ist in der Praxis der Entwicklungsaufwand für harte Systeme ein Vielfaches größer als für Weiche.

Ein gutes Beispiel für ein hartes Echtzeitsystem ist eine elektrische Motorregelung, also ein Frequenzumrichter (Bild 1). Das System stellt eine Regelschleife dar, in der kontinuierlich und im Takt der Motordrehungen Sensorsignale geliefert, verarbeitet und neue Pulsweitenmodulationseinstellungen ausgegeben werden müssen. Eine Verletzung des erforderlichen harten Echtzeitverhaltens wäre fatal und könnte zu großem Schaden führen, insbesondere wenn der Motor sicherheitsrelevante Systeme antreibt.
Echtzeitanforderungen für Mikrocontroller
Ein Mikrocontroller mit gutem Echtzeitverhalten hat also folgendes Profil:
- ein gutes Interrupt-System mit schneller, garantierter Reaktion und Priorisierung;
- eine schnelle CPU, insbesondere wenn die Berechnungen zwischen zwei Ereignissen aufwändig sind. Im Falle des Frequenzumrichters handelt es sich oft um komplexe Matrixoperationen, immer häufiger auch mit Gleitkommaarithmetik;
- geeignete Peripherie und Schnittstellen, die ebenfalls ein garantiertes Zeitverhalten bereitstellen. Beispiele sind Echtzeit-Ethernet, CAN, aber auch (wenn auch weniger beachtet) der Isochron- oder Interrupt-Modus von USB.
Viele SH-2A-MCUs sind speziell für Motorsteuerungen entwickelt und beinhalten daher ein aufwändiges Interrupt-System mit 15 Registerbänken, die binnen 30 ns reagieren. Das neueste Produkt ist der SH7216F, der eine Gleitkomma-Recheneinheit besitzt. Die Timer geben die notwendige PWM aus, sogar mit geregelter Totzeitkompensation, und zwei 12-Bit-A/D-Wandler messen die Phasenströme binnen einer Mikrosekunde. Neben zahlreichen seriellen Schnittstellen stehen auch Ethernet, CAN und USB zur Verfügung.
Schneller Speicher: MONOS-Flash
Schneller Speicher, ohne Wartezyklen, ist ebenfalls von großer Bedeutung für ein gutes hartes Echtzeitverhalten. Weiches Echtzeitverhalten kann oft damit leben, dass im Falle eines „Cache Miss“ erst Code nachgeladen werden muss, wie gesagt, schlimmstenfalls würde das Video kurz ruckeln. Harte Echtzeitsysteme profitieren aber sehr von Speicher, der schlicht schnell genug ist, Code und Daten immer sofort abzuliefern – der also deterministisch oder kausal ist, nach dem Grundsatz, dass das Anlegen einer bestimmten Adresse immer zur Ausgabe desselben Wortes innerhalb derselben Zeit führt. Ein solcher Speicher ist also geradezu mathematisch ideal und verursacht keinerlei nichtdeterministisches Verhalten im System.
(ID:357926)