Echtzeit

Viele der kleinen Mikrocontroller und der eingebetteten Systeme benötigen echtzeitfähige Software. Dies heißt nicht, dass das System besonders schnell sein muss. Es muss aber definierten zeitlichen Rahmenbedingungen genügen.

Beispielsweise ist dies der Fall, wenn ein Analog-Digital-Wandler ein Signal periodisch abtastet und digitalisiert. Ist der Controller zu langsam um garantiert alle Messwerte zu verarbeiten, dann gehen Daten verloren. Daraus können gravierende Folgen entstehen.

Meist ist jedoch nicht die Geschwindigkeit des Controllers schuld, wenn Probleme mit der Echtzeit auftreten. Die Interrupt-Latenz und die Interrupt-Priorität sind wichtige Begriffe in diesem Zusammenhang. Eine zu hohe Interrupt-Latenz führt bei einem Echtzeit-System früher oder später zu schwer lokalisierbaren Fehlern. Eine weitere Ursache kann eine falsch gesezte Interrupt-Priorität sein. Diese Fehler treten meist nur mit einer sehr kleinen Wahscheinlichkeit auf. Je später diese Fehler im Projekt auftauchen, um so schwieriger und kostspieliger lässt sich das Problem beheben.

Um so wichtiger ist dieser Thematik besondere Aufmerksamkeit zu widmen und das bereits in der Design-Phase.

Meine Kompetenzen im Überblick

  • Design von echtzeitfähigen Systemen
  • Umsetzung für diverse Mikrocontroller
  • Linux-Treiberentwicklung