Embedded-Entwicklung

Erfolgreiches Design ohne Rücksicht auf sich ändernde Anforderungen

8. Juni 2010, 17:15 Uhr | Jon D. Pearson, Cypress Semiconductor
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 3

Definition des Timings

Das Timing gehört zu den kritischen Design-Anforderungen und unterliegt damit zwangsläufig Veränderungen, während das Projekt voranschreitet. Die wichtigste Festlegung in diesem Stadium betrifft das Timing der verschiedenen Funktionsblöcke. Nimmt der Temperaturerfassungs-Block seine Aktualisierungen asynchron vor und greift der Steuerungsteil lediglich auf den jeweils aktuellsten Wert zu oder löst das Vorliegen eines neuen Temperaturwertes einen Interrupt in der Steuerung aus? Diese Entscheidungen werden von unterschiedlichen Faktoren bestimmt – nämlich davon, wie schnell etwas geschieht und wie schnell darauf reagiert werden muss.

In der einfachsten Ausführung arbeiten alle Blöcke unabhängig voneinander und übermitteln jeweils ihre aktuellsten Daten an die Steuerungslogik (wenn es sich um Eingabe-Einheiten handelt) oder führen die neuesten Anweisungen der Steuerungslogik aus (im Falle von Ausgabe-Einheiten). Je weniger Vorgaben es für das Timing oder die Verarbeitungsreihenfolge gibt, umso besser. In diesem Schritt geht es darum, sämtliche Timing-Abhängigkeiten zu identifizieren und nach Möglichkeit zu eliminieren. Im Fall des Temperatur-Blocks wäre es eine Möglichkeit, Temperaturerfassungen durch die Steuerungslogik immer dann anzustoßen, wenn diese einen neuen Temperaturwert benötigt. Zweifellos wäre damit stets die aktuellste Information verfügbar – aber zu welchem Preis? Entweder muss die Steuerungslogik auf das Ende der Umwandlung warten, was das gesamte System ausbremsen würde, oder die Einheit, die die Umwandlung vornimmt, muss so schnell sein, dass das System nicht verlangsamt wird. Eine entsprechend teurere Lösung wäre dann nötig.

Es lohnt sich, etwas tiefer in die Materie einzusteigen und die normalen Betriebsbedingungen (wenn der Ofen heizt und ein neuer Temperaturwert die angeforderte Heizleistung verändert) von besonderen Situationen zu unterscheiden, in denen sofortiges Handeln nötig ist (z. B. Erkennung einer gefährlich hohen Temperatur, möglicherweise durch einen Kurzschluss ausgelöst). Für dringende und ungewöhnliche Situationen lassen sich Interrupts reservieren, auf die umgehend reagiert wird, während die regulären Temperaturwerte asynchron an die Steuerungslogik übertragen werden. Mit einer ähnlichen Situationsanalyse lassen sich die Timing-Grenzen für jeden Block festlegen, wobei das Worst-Case-Timing definiert wird, um die Einhaltung der Produktanforderungen zu gewährleisten, während jedem Funktionsblock dennoch der größtmögliche Freiraum gewährt wird.


  1. Erfolgreiches Design ohne Rücksicht auf sich ändernde Anforderungen
  2. Festlegung der Struktur
  3. Einrichten der Kommunikation
  4. Definition des Timings
  5. Schaffung der Voraussetzungen für austauschbare Features
  6. Für alles gerüstet – mit einem Baustein, in dem sich alles ändern kann

Lesen Sie mehr zum Thema


Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Cypress Semiconductor Corp.

Weitere Artikel zu Cypress Semiconductor GmbH

Weitere Artikel zu System-on-Chip/ASICs/ASSPs

Weitere Artikel zu Mikrocontroller