Mikrobefehl

Mikrobefehl

Der Mikrobefehl ist eine elementare Anweisung zur Steuerung eines Mikroprogrammsteuerwerks, welches zur Steuerung eines Rechenwerks in Mikroprozessoren und Mikrocontrollern integriert ist. Mehrere Mikrobefehle werden zu einem Mikrocodebefehlssatz zusammengefasst, der umgangssprachlich als Mikrocode eines Mikroprogrammsteuerwerks bezeichnet wird.

Funktionsweise

Durch eine inhärent codierte Adressierungsvorschrift in einem Teil des Mikrobefehls wird auf den nächsten zu verarbeitenden Mikrobefehl innerhalb eines adressierbaren Mikrobefehlssatzes verwiesen, so dass strukturierte Abläufe in sich wiederholenden Mikrobefehlssequenzen programmiert werden können. Auf diese Weise ist es möglich, den komplexen Befehlsumfang eines CISC-Prozessors (CISC, Complex Instruction Set Computer) als Mikrobefehlssequenz darzustellen. Der Mikrobefehlssatz kann somit als Firmware des Mikroprogrammsteuerwerks verstanden werden. Der Mikrocode eines integrierten Rechenwerks befindet sich in einem abgetrennten Speicherbereich mit kurzer Zugriffszeit. Der Mikrocode fungiert als niedrigstes Steuerprogramm, programmiert in der Sprache der Mikrobefehle, um Maschinenbefehle in eine Reihe von Schaltoperationsanweisungen zu übersetzen.

Der Mikrobefehl besteht aus einer Aneinanderreihung von Bits, die bei der Abarbeitung innerhalb eines Mikrocodebefehlszyklus die Steuerung im Mikrocodeprogrammsteuer- und Rechenwerk bewirken. Dabei kann jedes einzelne Bit als diskrete Schaltanweisung (Pikobefehl) verstanden werden, die eine Schaltaktivität je nach Bit-Wert einleitet oder unterbindet. Alternativ können mehrere nicht unabhängige Bits in Bitfelder gruppiert als codierte Binärzahl (Nanocode) aufgefasst werden. Deren Bitkombination kann unter Umständen Multiplexer-Schaltungen dazu anweisen, zugeordnete Steuer- oder Rechenschaltungen (Nanoprogramm) zu aktivieren.

Ein Mikrobefehl(-santeil) wird als „horizontal mikrobefehlscodiert“ bezeichnet, wenn die Ausführung des Befehlsanteils mit unabhängiger Einzelbit-Steuermöglichkeit innerhalb eines Abarbeitungstakts erfolgt. In diesem Fall ist der Zustandsübergang des Rechenautomaten unabhängig von der Ausführungsreihenfolge der Schaltanweisungen innerhalb eines Mikrobefehls.

Ein Mikrobefehl(-santeil) wird als „vertikal mikrobefehlscodiert“ bezeichnet, wenn die Ausführung des Befehlsanteils aufgrund einer abhängigen Einzelbit-Steuermöglichkeit in Zwischentakten erfolgt (Nanoprogramm). Auf diese Weise kann eine zeitliche Abfolge von ineinandergreifenden Einzelbit-Steuerungen ausgenutzt oder eine Auswertung einer bitgruppierierungsabhängigen Steuerung ermöglicht werden. In diesem Fall ist der Zustandsübergang des Rechenautomaten abhängig von der Ausführungsreihenfolge der Schaltanweisungen innerhalb eines Mikrobefehls.

Besteht ein Mikrobefehl aus horizontal wie auch vertikal codierten Anteilen, so bezeichnet man diesen auch als "diagonal mikrobefehlscodiert".

Ein Mikrobefehlszyklus kann in mehrere Phasen unterteilt sein, in denen horizontal und vertikal mikrobefehlscodierte Steuerungsanweisungen gleichzeitig aktiv sind. Ist der Mikrocode-Speicherbereich veränderbar, so kann ein Mikrocode-Programm (auch Mikroprogramm) nachträglich verändert und geladen werden um Hardware-Funktionalitäten anzupassen, zu korrigieren oder zu optimieren.

Ein aus Mikrobefehlen (engl. Micro Instruction) in Binärcode zusammengestelltes Mikroprogramm wird als Mikrocode (engl.Microcode) bezeichnet. Das Vorgehen bei der Programmierung im Sinne der Zusammenstellung der Mikrobefehle zu einem Mikroprogramm wird als Mikroprogrammierung bezeichnet, die unmittelbare Erstellung eines Steuerprogramms in Binärcode als Mikrocodierung (engl. Microcoding). Gegebenenfalls werden Programmierwerkzeuge verwendet, die als Mikroassembler (engl. Microassembler) bezeichnet werden. Mit diesen Hilfsmitteln ist es möglich, auf übersichtliche Weise Mikrobefehlssequenzen zu verwalten und diese in Binärcode zu übersetzen. Die Bedeutung der Mikrobefehle für die Steuerung einer virtuellen Recheneinheit wird mit dem Mikrocodesimulator MikroSim auf didaktische Weise vermittelt.

Literatur

  • H. P. Gumm, M. Sommer: Einführung in die Informatik. Oldenbourg, 8. Auflage 2009, ISBN 978-3-486-58724-1
  • K. Wüst: Mikroprozessortechnik: Grundlagen, Architekturen und Programmierung von Mikroprozessoren, Mikrocontrollern und Signalprozessoren. Vieweg+Teubner Verlag, 3. Auflage 2008, ISBN 978-3-834-80461-7
  • H. Bähring: Mikrorechner-Technik, Band 1, Mikroprozessoren und Digitale Signalprozessoren. Springer, 3. Auflage 2002, ISBN 3-540-41648-x
  • H. Bähring: Mikrorechner-Technik, Band 2, Busse, Speicher, Peripherie und Mikrocontroller. Springer, 3. Auflage 2002, ISBN 3-540-43693-6
  • Bringschulte, Ungerer: Mikrocontroller und Mikroprozessoren. Springer 2002, ISBN 3-540-43095-4

Weblinks


Wikimedia Foundation.

Игры ⚽ Нужно решить контрольную?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Mikrobefehl — Mikrobefehl,   Informatik: Mikroprogrammierung …   Universal-Lexikon

  • Mikrobefehl — Mi|kro|be|fehl der; [e]s, e <zu ↑mikro...> Steuerinformation für die Ausführung von Elementaroperationen (EDV) …   Das große Fremdwörterbuch

  • MikroSim — Das Programm MikroSim ist eine Lernsoftware für das Betriebssystem Microsoft Windows zur hardware unspezifischen Erläuterung der allgemeinen Funktionsweise und Steuerabläufe einer virtuellen Rechenmaschine. Es lassen sich in allgemein… …   Deutsch Wikipedia

  • Mikroprogrammierung — Als Mikroprogrammierung wird die Methode und das Vorgehen verstanden Schalt , Rechen und Steuerabläufe in einem Rechenwerk, insbesondere einem integrierten Rechenwerk (Mikrocontroller, Mikroprozessor) unterhalb der Ausführungsebene von… …   Deutsch Wikipedia

  • Nanocode — Als Nanocode wird der in den Mikrocode eingebundene Teilcode eines zwei oder mehrstufig arbeitenden Mikroprogrammsteuerwerks bezeichnet. Ein vollständig horizontal codierter Mikrobefehl enthält keine Nanobefehle, sondern ist gänzlich aus… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”