„Mikroprogrammierung“ – Versionsunterschied
SimDoc (Diskussion | Beiträge) AZ: Die Seite wurde neu angelegt: Als Mikrocodeprogrammierung wird die Methode und das Vorgehen verstanden Schalt-, Rechen- und Steuerablä… |
(kein Unterschied)
|
Version vom 5. Oktober 2010, 15:18 Uhr
Als Mikrocodeprogrammierung wird die Methode und das Vorgehen verstanden Schalt-, Rechen- und Steuerabläufe in einem Rechenwerk, vorzugsweise einem integrierten Rechenwerk (Mikrocontroller, Mikroprozessor) unterhalb der Ausführungsebene von Maschinenbefehlen auf Mikrobefehlsebene festzulegen und zu regeln. Als Mikrocodeprogrammierung kann die Erstellung eines Mikrobefehlssatzes als Abfolge von Mikrobefehlsequenzen in einer Art Steuersprache für Schalter verstanden werden.
Mit der Mikrocodeprogrammierbarkeit eines Rechenwerks ist das Vorhandensein eines dazu angepassten Mikroprogrammsteuerwerks verbunden, welches durch die taktweise Abfolge der Mikrocodebefehlssequenz gesteuert wird. Die Möglichkeit einer flexibel programmierbaren Abfolgesteuerung von Mikrobefehlen setzt voraus, dass in jedem Mikrobefehl selbst eine Berechnungsvorschrift zum Verweis (d.h. Adressierung) auf den nächsten anzusteuernden Mikrobefehl enthalten ist.
Üblicherweise ist ein Maschinensprachebefehlssatz eines Prozessors bei der Fertigung beispielsweise aus Kompatibilitätsgründen vorgegeben und nicht veränderbar. Der den Maschinencode bildende Mikrobefehlssatz (kurz Mikrocode) ist in einem nicht flüchtigen (EP)ROM-Speicher inner- oder außerhalb des Rechenwerks untergebracht und wird ggf. bei der Initialisierung des Rechenwerks in das Mikroprogrammsteuerwerk geladen. Zur Optimierung von Schaltungsabläufen werden dennoch Möglichkeiten vorgesehen und Vorkehrungen getroffen, dass ein Mikrocode-Speicherinhalt korrigiert, verbessert oder angepasst wird, um kostspielige Redesigns im Sinne eines Mikrocode-Bugfixes zu umgehen.
In den Anfängen der Mikroprozessor-Ära war die Möglichkeit der Mikrocodeprogrammierung unumgänglich und gewünscht, um einzelne wohlmöglich zu einem Baustein-Redesign führen Implementierungsfehler bei der Mikrocodeprogrammierung zu verhindern. So sind Mikroprozessoren der Firma Intel ab dem Modell Pentium Pro (P6 mit Net-Burst-Architektur) im Mikrocode reprogrammierbar. Der als FDIV-Bug bekannt gewordene Rechenfehler auf Intel Pentium P5 Prozessoren konnte hingegen nicht durch einfache Mikrocodeprogrammierung behoben werden sondern nur durch CPU-Austausch. Mit der Mikrocodeprogrammierung ist die Möglichkeit gegeben, Rechnensteuerwerke mittels Mikrocode-Update für spezielle Betriebssysteme zu optimieren.
Literatur
- H.P.Gumm, M.Sommer: Einführung in die Informatik. Oldenburg, 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-8348-0461-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, Pheriperie und Mikrocontroller. Springer, 3. Auflage, 2002, ISBN 3-540-43693-6.
- Bringschulte, Ungerer: Mikrocontroller und Mikroprozessoren. Springer, 2002, ISBN 3-540-43095-4.
- Donald Ervin Knuth (Autor), R. Loos (Übersetzer): Arithmetik. Springer, 2001, ISBN 978-3-540-66745-2.
- R.H. Gütig, M. Erwig: Übersetzerbau. Springer,, 1999, ISBN 3-540-65389-9.
- J.-M. Muller et al.: Handbook of Floating-Point Arithmetic. Birkhäuser, 2009, ISBN 978-0-8176-4704-9.
- K. Zuse: Der Computer – mein Lebenswerk. Springer, 5. Auflage, 2010, ISBN 978-3-642-12095-4.
- Friedrich L. Bauer: Historische Notizen zur Informatik. Springer, 5. Auflage, 2009, ISBN 978-3-540-85789-1.
- Hans D. Hellig: Geschichten der Informatik. Springer, 2003, ISBN 978-3-540-00217-8.
Externe Web-Links
- Mikrocodesimulator MikroSim 2010. 0/1-SimWare, abgerufen am 3. Oktober 2010.
- P6 Family Processor Microcode Update, Feature Review. J. Molina, W. Arbaugh, 2000, abgerufen am 3. Oktober 2010.
- A Brief History of Microprogramming. M. Smotherman, 2010, abgerufen am 3. Oktober 2010.
- Computer Structures: Principles and Examples, Part 2, REGIONS OF COMPUTER SPACE, Section 1, MICROPROGRAM-BASED PROCESSORS, Seite 151 ff. McGraw-Hill Computer Science Series, abgerufen am 3. Oktober 2010.
- Intel(R) 64 and IA-32 Architectures Software Developer’s Manual, Volume 3A: System Programming Guide, Part 1, Chapter 9.11: "Microcode update facilities". Intel Cooperation, Dezember 2009, abgerufen am 3. Oktober 2010.
- Intel Microcode Update Utility for Linux. Abgerufen am 3. Oktober 2010.
- A microcode reliability update is available that improves the reliability of systems that use Intel processors. Abgerufen am 3. Oktober 2010.
- BIOS Update required when Missing Microcode message is seen during POST. Intel Cooperation, abgerufen am 3. Oktober 2010.