Der Einschalt-Selbsttest (Power-On-Self-Test, POST) dient zum Testen der Integrität des SDRAM des Prozessors. Nach dem SDRAM-Test übergibt der POST die Steuerung entweder an das Standard-Boot-ROM-Image oder ein anderes Image. Der POST kann ebenfalls binäre Abbilder über den Service-Port herunterladen und sie in den FLASH-Speicher schreiben. Dies ermöglicht dem POST eine minimale Notfallwiederherstellung bei FLASH-Fehlern.
POST-Boot-Verhalten
ROM-Initialisierung
Einschalten
Nach dem Einschalten leuchtet die LED "ERR" (Abbildung 1). Zu diesem Zeitpunkt initialisiert der Code postInit die internen Register und Subsysteme des Prozessors, einschließlich des SDRAM-Controllers. In dieser Phase des POST dient der interne RAM des Prozessors als Mini-Stack. Die Kontrolle geht dann auf die Routine Ipostmain für die SDRAM-basierten Speichertests über.
Abbildung 1. ROM-Initialisierung
Start-POST
PLD und Service-Port-Initialisierung
IpostMain startet mit der Initialisierung des Service-Ports und der programmierbaren Geräte (Programmable Logic Devices, PLD). Falls der Vorgang erfolgreich ist, erlischt die LED "ERR", und die LED "RDY" wird eingeschaltet (Abbildung 2).
Abbildung 2. Start-POST
POST zeigt dann am Service-Port die Firmware-Version an.
== POST Version nnn ==
Einfacher Zugriffstest
Der einfache Zugriffstest prüft, ob der Prozessor grundlegende Lese- und Schreiboperationen im SDRAM ausführen kann. Dieser Test wird durch Aufleuchten der LED "FC1" angezeigt (Abbildung 3).
Abbildung 3. Einfacher Zugriff
Bitwalk-Test
Bei diesem Test erfolgt zuerst ein Ein-Bit- und anschließend ein Null-Bit-Durchlauf für jede SDRAM-Bank. Dieser Test wird durch Aufleuchten der LED "FC2" angezeigt (Abbildung 4).
Abbildung 4. Bitwalk-Test
Speichergröße
Dieser Test prüft, ob die Größe des SDRAM innerhalb des für das Produkt angegebenen Größenbereichs liegt. Dieser Test wird durch Aufleuchten der LED "FC2" angezeigt (Abbildung 5).
Abbildung 5. Speichergröße
Mustertest
Bei diesem Test werden eine Reihe von Diagnosemustern an jeder Speicherposition im SDRAM geschrieben und gelesen. Die Durchführung des Tests ist am wiederholten Aufleuchten der LED "SCSI2" zu erkennen (Abbildung 6). Dieser Test kann einige Sekunden in Anspruch nehmen.
Abbildung 6. Mustertest
Adresstest
Bei diesem Test werden Adress-Tags in den Speicher geschrieben und gelesen, um fehlerhafte SDRAM-Adresszeilen zu ermitteln. Die Durchführung des Tests ist am Aufleuchten der LED "SCSI3" zu erkennen (Abbildung 7). Anschließend verlagert sich der POST in den SDRAM und verschiebt seinen Stack vom internen RAM des Prozessors in das SDRAM. Die Kontrolle geht dann auf den SDRAM-basierten sekundären POST über.
Abbildung 7. Adresstest
Sekundärer POST
In dieser POST-Phase wird die Zwischenladeroutine bzw. das "Boot-ROM" lokalisiert und ausgeführt. Wenn Sie die Unterbrechungstaste <Strg><P> drücken, geht POST zum Service-Menü über. Einzelheiten hierzu finden Sie im Abschnitt POST-Service-Menü.
Identifizieren und Ausführen des Boot-ROM
Der POST prüft die primären Boot-ROM-Positionen des FLASH-Speichers, um festzustellen, ob der Speicher ein gültiges Boot-ROM enthält. Wenn das Boot-ROM gültig ist, geht die Steuerung darauf über. Ist das Boot-ROM-Image ungültig, wird die Boot-ROM-Prüfung an der Position des sekundären Boot-ROM wiederholt. Dieser Schritt wird durch Aufleuchten der LED "SCSI4" angezeigt (Abbildung 8).
Abbildung 8. Identifizieren und Ausführen
Starten des Boot-ROM
Wenn der POST ein Boot-ROM-Image startet, wird eine ähnliche Zeile wie die folgende angezeigt:
Bootrom (*FFF00100)(2)
Die Zahl in der ersten Klammer ist die Adresse des Boot-ROM-Startcodes. Die Zahl in der zweiten Klammer teilt dem Betriebssystem die Art des Starts, Warm- oder Kaltstart, mit. Der Boot-ROM-Code aktiviert bei der Neukonfiguration der PLD die LED "ERR" (Abbildung 9).
Abbildung 9. Starten des Boot-ROM
POST-Service-Menü
Das POST-Service-Menü wird aufgerufen, indem Sie den Knopf ohne Beschriftung zwischen dem Schalter "RST" und der LED "PWR" mit einem dünnen Gegenstand eindrücken.
Abbildung 10. NMI 1
Dieser Schalter kann jederzeit während der Speichertests gedrückt werden.
Abbildung 11. NMI 2
Nach Abschluss der Speichertests erscheint folgende POST-Anzeige:
== POST Version nnn ==
== POST MENU ==
A - Cold boot from [A]lternate bootrom B - Cold [B]oot from primary bootrom R - [R]eceive new boot image from serial port V - full [V]ersion information
A - Kaltstart von [A]lternativem Bootrom
Bei Auswahl dieser Option überträgt der POST die Steuerung auf das alternative Boot-ROM-Image an Adresse 0xFFE00100 und geht von einem Kaltstart aus.
Bei Auswahl dieser Option überträgt der POST die Steuerung auf das standardmäßige bzw. primäre Boot-ROM-Image an Adresse 0xFFF00100 und geht von einem Kaltstart aus. Wählen Sie nach dem Laden eines neuen Boot-ROM-Images diese Option, um den SNC zu starten.
R - [R] Neues Bootimage vom seriellen Anschluss empfangen
Bei dieser Option wird das Übertragungsprogramm ZMODEM gestartet, das eine einzelne binäre Imagedatei des Boot-ROM über den Service-Port an den POST überträgt. Andere Arten von binären Imagedateien werden nicht empfangen. Nach erfolgreicher Übertragung programmiert der POST das Image in die FLASH-Speichereinheit ein. Während des Wartens auf die Datei zeigt der POST Folgendes an:
**B000000023be50
An dieser Stelle kann der Bediener mit Hilfe des ZMODEM-Protokolls eine ".bin"-Datei zum POST übertragen. Weitere Informationen finden Sie in der Dokumentation zum Terminalemulator. Nach Abschluss der Dateiübertragung erscheint folgende POST-Anzeige:
File transfer and update PASSED ZMODEM Messages: Writing to flash:MMMMMMMM-NNNN
MMMMMMMM ist die Adresse, die in den FLASH-Speicher geschrieben wird, und NNNN ist die Länge des Images. An diesem Punkt wählen Sie Option B, Cold [B]oot from primary bootrom.
Falls Fehler auftreten, zeigt der POST die entsprechenden Meldung sowie die folgende Zeile an:
File transfer and update FAILED
V- Vollständige [V]ersions-Information
Mit diesem Befehl zeigt der POST die Versionsnummer des POST an sowie wann, auf welchem System und von welchem Benutzer der POST erstellt wurde. Die Anzeige sieht ungefähr so aus:
POST version 0402.02 Built Apr 4 2001, 15:24:06 on TANGLEFOOT by jimu
Fehleranzeigen
Wenn vom POST durchgeführte Tests fehlerhaft sind, leuchtet die LED "ERR" zusammen mit der betreffenden LED auf. Die Bedeutung der LED-Anzeigen finden Sie in der Beschreibung des normalen POST-Ablaufs. Am Service-Port können ebenfalls Fehlermeldungen angezeigt werden.