-
Die vorliegende Erfindung bezieht sich auf ein Rechnersystem und auf ein Verfahren zum Betreiben eines Rechnersystems.
-
In Rechnersystemen speichern Rechner über verschiedene Arten von Schnittstellen, die verschiedene physikalische und/oder logische Betriebsanforderungen aufweisen können, Daten in Speicherelemente, wie Festplattenlaufwerke, CD- oder DVD-Laufwerke, ZIP-Laufwerke und andere Speicherelemente mit hoher/niedriger Kapazität, oder gewinnen Daten aus den Speicherelementen zurück. Eine solche Schnittstelle, die in Rechnersystemen weit verbreitet ist, ist die Integrated-Drive-Electronics(IDE)-Schnittstelle. Die IDE-Schnittstelle wird allgemein auch als Advanced-Technology-Attachment(ATA)-Schnittstelle bezeichnet.
-
Ein Typ einer ATA-Schnittstelle, die als Parallel-ATA-Schnittstelle bekannt ist, überträgt Daten parallel und weist eine maximale Datenübertragungsgeschwindigkeit von 133 MB/s auf. Ein anderer Typ einer ATA-Schnittstelle ist eine Seriell-ATA-Schnittstelle, die eine höhere maximale Datenübertragungsgeschwindigkeit von 150 MB/s unterstützen kann.
-
Allgemein umfasst eine Hauptplatine in einem Rechner (Steck-)Verbinder bzw. Konnektoren und Steuereinheiten, welche die Parallel-ATA- und die Seriell-ATA-Schnittstelle unterstützen, um dem Benutzer eine Flexibilität zur Verfügung zu stellen, der den Rechner mit Parallel-ATA- und/oder Seriell-ATA-Speicherelementen verbinden kann. Wenn ein Benutzer Speicherelemente mit der Parallel-ATA-Schnittstelle und/oder der Seriell-ATA-Schnittstelle verbindet, kann es für den Benutzer erforderlich sein, über ein Setup-Menü eine bestimmte Speicherelementinformation in einem Complementary-Metal-Oxide-Semiconductor(CMOS)-RAM zu definieren, die während Boot-Vorgängen der Speicherelemente verwendet wird. Leider sind einige Benutzern nicht ausreichend mit dem Rechner vertraut, um das Setup-Menü zur Definition der Speicherelementinformation im CMOS-RAM richtig zu verwenden, die erforderlich sein kann, um einen normalen Boot-Vorgang der Speicherelemente zu ermöglichen.
-
Die
DE 102 14 701 A1 zeigt einen ATA-Controller mit wenigstens einem parallelen Port zum Verbinden wenigstens eines ATA-gemäßen Speichergeräts, wenigstens einem seriellen Port zum Verbinden wenigstens eines SATA-gemäßen Speichergeräts und einer Portumschalteinrichtung zum Umschalten auf wenigstens einen der parallelen und seriellen Ports, um einen Datentransfer zu und/oder von einem Speichergerät zu ermöglichen, das mit dem Port verbunden ist.
-
Die
US 6,754,793 B2 zeigt ein Verfahren zum Aktualisieren von Daten in einem Computersystem.
-
Die
US 6,016,402 A zeigt ein Rechnersystem mit einem BIOS-ROM zum Booten eines Betriebssystems.
-
Die
US 2004/0120353 A1 zeigt eine PC-Hauptplatine mit Parallel-ATA-Logik und Seriell-ATA-Logik.
-
Der Erfindung liegt das technische Problem zugrunde, ein Rechnersystem und ein Verfahren zum Betreiben eines Rechnersystems bereitzustellen, welche ohne einen erforderlichen Eingriff durch den Benutzer automatisch die Verbindungsinformationen für Speicherelemente setzen.
-
Die Erfindung löst dieses Problem durch Bereitstellung eines Rechnersystems mit den Merkmalen des Patentanspruchs 1 und eines Verfahrens zum Betreiben eines Rechnersystems mit den Merkmalen des Patentanspruchs 6.
-
Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben, deren Wortlaut hiermit durch Bezugnahme in die Beschreibung aufgenommen wird, um unnötige Textwiederholungen zu vermeiden.
-
Das Rechnersystem kann einen Basis-Eingabe-/Ausgabesystem(BIOS)-ROM, der einen BIOS-Code speichert, einen CMOS-RAM und einen Prozessor umfassen. Der CMOS-RAM speichert eine benutzerdefinierbare Geräteinformation, die anzeigt, ob das erste Speicherelement und/oder das zweite Speicherelement mit dem Verbinder verbunden ist/sind. Der Prozessor führt einen Einschaltselbsttest (Power-On-Self-Test – POST) entsprechend dem BIOS-Code im BIOS-ROM aus und speichert die Verbindungsinformation, die anzeigt, ob das erste Speicherelement und/oder das zweite Speicherelement mit dem Verbinder verbunden ist/sind, vom Register in den CMOS-RAM, wenn sich die benutzerdefinierbare Verbindungsinformation für das erste Speicherelement und/oder das zweite Speicherelement von der Verbindungsinformation im Register unterscheidet.
-
Der BIOS-ROM kann weiter ein Boot-Datei-Suchprogramm umfassen, das durch den Prozessor ausgeführt wird, um ein Masterbauelement für eine Boot-Datei zu finden, und das in den benutzerdefinierten Verbindungsinformationen im CMOS-RAM weitere Informationen speichert, die anzeigen, ob ein Parallel-ATA-Speicherelement oder ein Seriell-ATA-Speicherelement das Masterbauelement ist.
-
Vorteilhafte Ausführungsformen der Erfindung sind in den Zeichnungen dargestellt und werden nachfolgend beschrieben. Es zeigen:
-
1 ein Blockdiagramm eines Rechnersystems gemäß einigen Ausführungsformen der vorliegenden Erfindung,
-
2 ein Flussdiagramm von Verfahren zum Starten eines Rechnersystems unter Verwendung eines BIOS-Codes, der in einem BIOS-ROM gespeichert ist, und
-
3 ein Flussdiagramm von Verfahren zum Starten eines Rechnersystems unter Verwendung eines BIOS-Codes, wenn der in einem BIOS-ROM gespeicherte BIOS-Code einen Boot-Datei-Suchcode umfasst.
-
Es versteht sich, dass ein Element direkt auf/mit einem anderen Element oder über Zwischenelemente auf/mit dem anderen Element angeordnet, verbunden, gekoppelt oder benachbart sein kann, wenn in der Beschreibung angegeben ist, dass das Element „auf/mit” dem anderen Element „angeordnet”, „verbunden”, „gekoppelt” oder „benachbart” ist. Im Gegensatz dazu sind keine Zwischenelemente vorhanden, wenn ein Element als „direkt angeordnet”, „direkt verbunden”, „direkt gekoppelt” bzw. „direkt benachbart” auf/mit einem anderen Element bezeichnet wird.
-
1 ist ein Blockdiagramm eines Rechnersystems 100 gemäß einigen Ausführungsformen der vorliegenden Erfindung. Das Rechnersystem 100 umfasst einen Prozessor 102, d. h. eine zentrale Verarbeitungseinheit, eine North-Bridge 104, eine Grafiksteuereinheit 106, einen Hauptspeicher 108, eine South-Bridge 110, einen Taktgenerator 112, einen Verbinder 114, ein Parallel-ATA-Speicherelement 116 und ein Seriell-ATA-Speicherelement 118, die entsprechend über Verbinder 115 und 117 und Busse 122 und 124 verbunden sind, einen Basis-Eingabe/Ausgabesystem(BIOS)-ROM und eine Batterie oder eine andere Energieversorgung. Die Funktionalität der North-Bridge 104 und der South-Bridge 110 kann in einen oder mehrere Chips integriert sein oder kann in unabhängige Chips aufgeteilt sein. Das Rechnersystem 100 kann andere Bauelemente wie einen Cache-Speicher, ein Modem, eine parallele Schnittstelle, eine serielle Schnittstelle, eine Small-Computer-System-Interface(SCSI), eine Netzwerkschnittstellenkarte und verschiedene Busse und/oder Subsysteme umfassen.
-
Der Prozessor 102 ist mit der North-Bridge 104 verbunden. Die North-Bridge 104 verbindet die Grafiksteuereinheit 106, den Speicher 108 und einen Peripheral-Component-Interconnect(PCI)-Bus 124. Die South-Bridge 110 verbindet den PCI-Bus 124, periphere Bauelemente, integrierte Bauelemente und Subsysteme. Die Batterie oder die andere Energieversorgung kann mit der South-Bridge 110 verbunden sein.
-
Die North-Bridge 104 verbindet den Prozessor 102, die Grafiksteuereinheit 106, den Speicher 108 und Bauelemente, die mit dem PCI-Bus 124 verbunden sind und die Bauelemente umfassen, die mit der South-Bridge 110 verbunden sind. Allgemein kann ein nicht dargestellter PCI-Steckplatz vorhanden sein, um entfernbare periphere Bauelemente mit dem Rechnersystem 100 zu verbinden.
-
Die South-Bridge 110 verbindet den PCI-Bus 124 mit verschiedenen Bauelementen und Subsystemen. Die verschiedenen mit der South-Bridge 110 verbundenen Bauelemente können ein Modem, einen Drucker, eine Tastatur und/oder eine Maus umfassen, die mit dem Rechnersystem 100 über einen Low-Pin-Count(LPC)-Bus 122 und/oder einen anderen Bus, wie einen X-Bus oder einen Industry-Standard-Architecture(ISA)-Bus, verbunden sind. Die South-Bridge 110 kann eine Parallel-ATA-Steuereinheit 130 und eine Seriell-ATA-Steuereinheit 134 umfassen. Die Parallel-ATA-Steuereinheit 130 und die Seriell-ATA-Steuereinheit 134 verbinden das Parallel-ATA-Speicherelement 116 bzw. das Seriell-ATA-Speicherelement 118 unter Verwendung des Verbinders 114 mit dem Rest des Rechnersystems 100. Obwohl der Verbinder 114 als ein einzelner Block dargestellt ist, kann er selbstverständlich physikalisch als ein oder mehrere physikalische Verbinder implementiert werden, die jeweils eine Gruppe von leitenden Pins aufweisen, d. h. als Parallel-ATA-Schnittstellenverbinder und als separater Seriell-ATA-Schnittstellenverbinder. Das Parallel-ATA-Speicherelement 116 und das Seriell-ATA-Speicherelement 118 können als Festplattenlaufwerk(e), CD/DVD-Laufwerk(e), ZIP-Laufwerk(e), CDRW-Laufwerk(e) und/oder als andere Speicherelemente mit hoher/niedriger Kapazität ausgeführt sein, sind aber nicht darauf beschränkt.
-
Der Verbinder 114 umfasst 40 Pins, die dazu konfiguriert sind, Daten zwischen dem Parallel-ATA-Speicherelement 116 und der Parallel-ATA-Steuereinheit 130 zu übertragen, und einen General-Purpose-Input/Output(GPIO)-Pin, der ein Signal überträgt, das anzeigt, wenn bzw. ob das Parallel-ATA-Speicherelement 116 mit dem Verbinder 114 verbunden ist. Zudem umfasst der Verbinder 114 4 Pins, die dazu konfiguriert sind, Daten zwischen dem Seriell-ATA-Speicherelement 118 und der Seriell-ATA-Steuereinheit 134 zu übertragen, und einen anderen GPIO-Pin, der ein Signal überträgt, das anzeigt, wenn bzw. ob das Seriell-ATA-Speicherelement 118 mit dem Verbinder 114 verbunden ist. Daher kann der Verbinder 114 insgesamt 46 Pins umfassen, d. h. 44 Datenübertragungspins, welche die Steuereinheiten 130 und 134 und die Speicherelemente 116 und 118 verbinden, und 2 GPIO-Pins. Obwohl der Verbinder 114 zu Beschreibungszwecken mit 40 Datenübertragungspins für die parallele Schnittstelle und 4 Datenübertragungspins für die serielle Schnittstelle beschrieben wird, kann die Anzahl der Pins selbstverständlich davon abweichen.
-
Flexible-Printed-Circuit(FPC)-Verbinder 115 und 117 sind dazu konfiguriert, die Speicherelemente 116 und 118 mit dem Verbinder 114 zu verbinden. Wenn die Speicherelemente 116 und 118 mit dem entsprechenden FPC-Verbinder 115 bzw. 117 und dem Verbinder 114 verbunden sind, werden die entsprechenden GPIO-Anschlüsse des Verbinders 114 nach oben gezogen, beispielsweise durch Schaltkreise in der Bridge 110, dem Verbinder 114 und/oder in den Speicherelementen 116 und 118. Im Gegensatz dazu werden, wenn die Speicherelemente 116 und 118 nicht mit dem entsprechenden FPC-Verbinder 115 bzw. 117 und dem Verbinder 114 verbunden sind, die entsprechenden GPIO-Anschlüsse des Verbinders 114 nach unten gezogen. Folglich wird dadurch, dass einer oder beide GPIO-Anschlüsse des Verbinders 114 hochgezogen/hinuntergezogen ist/sind, angezeigt, ob ein oder beide Speicherelemente 116 und 118 mit dem Verbinder 114 verbunden ist/sind.
-
Die GPIO-Anschlüsse des Verbinders
114 sind mit einem GPIO-Register
132 in der South-Bridge
110 verbunden. In Abhängigkeit davon, ob die Speicherelemente
116 und
118 mit dem Verbinder
114 verbunden sind, wird das GPIO-Register
132 entsprechend auf logische Werte 00, 01, 10 oder 11 gesetzt. Tabelle 1 zeigt die Werte im GPIO-Register, wenn das Parallel-ATA-Speicherelement
116 und/oder das Seriell-ATA-Speicherelement
118 mit dem Verbinder
114 verbunden bzw. nicht verbunden sind. Tabelle 1
| Speicherelement angeschlossen oder nicht angeschlossen | GPIO [1:0] |
| Parallel-ATA nicht angeschlossen
Seriell-ATA nicht angeschlossen | 00 |
| Parallel-ATA nicht angeschlossen
Seriell-ATA angeschlossen | 01 |
| Parallel-ATA angeschlossen
Seriell-ATA nicht angeschlossen | 10 |
| Parallel-ATA angeschlossen
Seriell-ATA angeschlossen | 11 |
-
Daher speichert das GPIO-Register 132 in der South-Bridge 110 in Übereinstimmung mit einigen Ausführungsformen Informationen, die darstellen, ob das Parallel-ATA-Speicherelement 116 bzw. das Seriell-ATA-Speicherelement 118 oder beide Speicherelemente mit dem Rechnersystem 100 verbunden sind oder nicht. Wenn das Rechnersystem 100 hochgefahren wird, kann genau bestimmt werden, ob eines oder beide Speicherelemente 116 und 118 über den Verbinder 114 mit der South-Bridge 110 verbunden sind oder nicht.
-
Die South-Bridge 110 umfasst einen CMOS-RAM 136. Der CMOS-RAM 136 umfasst Systemkonfigurationsdaten. Die Systemkonfigurationsdaten umfassen Betriebsinformationen für Bauelemente im Rechnersystem 100 und andere Betriebs-/Umgebungsinformationen für das Rechnersystem 100, wie beispielsweise ein aktuelles Datum und/oder eine aktuelle Zeit, ob ein Floppy-Disk-Laufwerk angeschlossen ist oder nicht, Boot-Laufwerksinformationen, Festplattenlaufwerksinformationen und/oder Energiemanagementinformationen, sind aber nicht auf diese beschränkt. In Übereinstimmung mit einigen Ausführungsformen speichert das CMOS-RAM 136 Informationen, die identifizieren, ob das Parallel-ATA-Speicherelement 116 und/oder das Seriell-ATA-Speicherelement 118 mit dem Rechnersystem 100 verbunden ist/sind oder nicht, und die identifizieren, welches der angeschlossenen Speicherelemente 116 und 118 ein Master-Element und welches ein Slave-Element ist. Der CMOS-RAM 136 kann einen nichtflüchtigen Speicher für seine Daten zur Verfügung stellen, der Energie verwendet, die von einer Batterie oder einer anderen nicht unterbrechbaren Energieversorgung, die mit der South-Bridge 110 verbunden ist, bereitgestellt wird. Die im CMOS-RAM 136 gespeicherten Einstellinformationen können durch den Benutzer über ein BIOS-Setup-Menü eingestellt/modifiziert werden.
-
Der BIOS-ROM 120 speichert einen BIOS-Code, der einer internen Software entspricht, die Test- und Betriebsvorgänge des Rechnersystems 100 steuert.
-
In Übereinstimmung mit einigen Ausführungsformen des Rechnersystems 100 bestimmt der BIOS-Code, ob die im CMOS-RAM 136 gespeicherten Systemkonfigurationsinformationen, die anzeigen, ob die Speicherelemente 116 und 118 mit der South-Bridge 110 verbunden sind oder nicht, mit korrespondierenden Verbindungsinformationen übereinstimmen, d. h. identisch sind, die im GPIO-Register 132 gespeichert sind. Der BIOS-Code schreibt die im GPIO-Register 132 gespeicherten Verbindungsinformationen in das CMOS-RAM 136, wenn die Konfigurationsinformationen des GPIO-Registers 132 nicht mit den Verbindungsinformationen im CMOS-RAM 136 übereinstimmen, d. h. nicht identisch sind. Entsprechend bestimmt das Rechnersystem 100 automatisch genaue Verbindungsinformationen für die Speicherelemente 116 und 118 und stellt sie ein, wenn ein Benutzer nicht dazu in der Lage ist, die mit den Speicherelementen 116 und 118 korrespondierenden Verbindungsinformationen über das BIOS-Setup-Menü einzustellen, bzw. die Verbindungsinformationen falsch einstellt. Folglich kann das Rechnersystem 100 in Kenntnis der Verbindungszustände der Speicherelementen 116 und 118 richtig hochfahren.
-
Wenn das Parallel-ATA-Speicherelement 116 und das Seriell-ATA-Speicherelement 118 mit dem Rechnersystem 100 verbunden sind, wird eines der beiden Speicherelemente 116 und 118 als Master-Element gesetzt und das andere wird als Slave-Element gesetzt. Der CMOS-RAM 136 speichert die Master-/Slaveinformation des Parallel-ATA-Speicherelements 116 und des Seriell-ATA-Speicherelements 118. Die Master-/Slaveinformation kann durch den Benutzer modifiziert werden.
-
Wenn der BIOS-ROM 120 der vorliegenden Erfindung ein Boot-Datei-Suchprogramm umfasst, das nach einer Boot-Datei sucht, die verwendet werden kann, um wenigstens einen Teil eines Betriebssystems zu initialisieren, führt der Prozessor 102 das Boot-Datei-Suchprogramm aus, um in den Speicherelementen 116 und 118 nach der Boot-Datei zu suchen und um die Master-/Slaveinformation in den CMOS-RAM 136 zu schreiben, die anzeigt, dass eines der Speicherelemente 116 und 118, in dem die Boot-Datei gefunden wird, das Master-Element ist und das andere das Slave-Element ist.
-
Der Taktgenerator 112 erzeugt Taktsignale, die einen Zeitablauf des Rechnersystems 100 steuern. Die vom Taktgenerator 112 erzeugten Taktsignale umfassen ein erstes Taktsignal CLK1 für die Parallel-ATA-Steuereinheit 130 und ein zweites Taktsignal CLK2 für die Seriell-ATA-Steuereinheit 134. Der Prozessor 102 steuert den Taktgenerator 112, um die Bereitstellung des ersten und des zweiten Taktsignals CLK1 und CLK2 an die Parallel-ATA-Steuereinheit 130 bzw. die Seriell-ATA-Steuereinheit 134 in Reaktion darauf zu starten/anzuhalten, ob das Parallel-ATA-Speicherelement 116 und das Seriell-ATA-Speicherelement 118 angeschlossen sind oder nicht, wobei die Steuerung während eines Prozesses ausgeführt werden kann, der jedes Bauelement nach dem Einschalten initialisiert. Der Energieverbrauch des Rechnersystems 100 kann dadurch, dass das erste Taktsignal CLK1 nicht zur Verfügung gestellt wird, wenn das Speicherelement 116 nicht mit der Parallel-ATA-Steuereinheit 130 verbunden ist, und dadurch, dass das zweite Taktsignal CLK2 nicht zur Verfügung gestellt wird, wenn das Speicherelement 118 nicht mit der Seriell-ATA-Steuereinheit 134 verbunden ist, reduziert werden.
-
2 ist ein Flussdiagramm von Verfahren zum Starten eines Rechnersystems unter Verwendung von Codes, die in einem BIOS-ROM gespeichert sind. Während des Vorgang S200 führt der Prozessor 102 einen BIOS-Code-Befehl aus, der im BIOS-ROM 120 gespeichert ist. Der vom Prozessor 102 ausgeführte BIOS-Code führt einen Einschaltselbsttest (POST) aus.
-
Während eines Vorgangs 202 liest der BIOS-Code die im GPIO-Register 132 gespeicherten Verbindungsinformationen der Speicherelemente 116 und 118 und bestimmt, ob die im GPIO-Register 132 gespeicherten Verbindungsinformationen mit den im CMOS-RAM 136 gespeicherten Verbindungsinformationen überstimmen, d. h. identisch sind. Wenn die Verbindungsinformationen nicht übereinstimmen, d. h. nicht identisch sind, wird mit einem Vorgang S210 fortgesetzt. Während des Vorgangs S210 schreibt der BIOS-Code die im GPIO-Register 132 gespeicherten Speicherelementeverbindungsinformationen in den CMOS-RAM 136 und fährt dann mit einem Vorgang S204 fort. Wenn die Verbindungsinformationen während des Vorgangs S202 als übereinstimmend bestimmt werden, wird der Vorgang S204 ausgeführt.
-
Während des Vorgangs S204 steuert der BIOS-Code den Taktgenerator 112 in Reaktion auf die im CMOS-RAM 136 gespeicherten Verbindungsinformationen für die Speicherelemente 116 und 118. Wenn die Speicherelemente 116 und 118 mit dem Rechnersystem 100 verbunden sind, steuert der BIOS-Code den Taktgenerator 112, um das erste und das zweite Taktsignal CLK1 und CLK2 zu erzeugen. Wenn eines der Speicherelemente 116 und 118 mit dem Rechnersystem 100 verbunden ist, steuert der BIOS-Code den Taktgenerator 112, um ein mit dem verbundenen Speicherelement korrespondierendes Taktsignal zu erzeugen.
-
Während des Vorgangs S206 initialisiert der BIOS-Code das Parallel-ATA-Speicherelement 116 und/oder das Seriell-ATA-Speicherelement 118 in Reaktion auf ihre Verbindung mit dem Rechnersystem 100.
-
Während des Vorgangs S208 identifiziert der BIOS-Code einen Boot-Sektor, der mit einer Boot-Position eines Boot-Datei-Speicherelements korrespondiert. Die Boot-Position kann in einem Floppy-Disk-Laufwerk, einem Festplattenlaufwerk, einem CD-ROM-Laufwerk und/oder in einem anderen bootfähigen Datenspeicherelement angeordnet sein. Anschließend initiiert der BIOS-Code einen Teil eines Betriebssystems durch Aufrufen eines ausführbaren Boot-Sektor-Codes von der Boot-Position.
-
3 ist ein Flussdiagramm von Verfahren zum Starten eines Rechnersystems unter Verwendung eines BIOS-Codes, wenn der in einem BIOS-ROM gespeicherte BIOS-Code einen Boot-Datei-Suchcode umfasst. Bezugnehmend auf 3, werden die Master-/Slaveinformationen des Parallel-ATA-Speicherelements 116 und des Seriell-ATA-Speicherelements 118, die mit dem Rechnersystem 100 verbunden sind, automatisch gesucht und im CMOS-RAM eingestellt/definiert.
-
Während des Vorgang S300 führt der Prozessor 102 einen BIOS-Code-Befehl aus, der im BIOS-ROM 120 gespeichert ist. Der vom Prozessor 102 ausgeführte BIOS-Code führt einen Einschaltselbsttest (POST) aus.
-
Während eines Vorgangs S302 liest der BIOS-Code die im GPIO-Register 132 gespeicherten Verbindungsinformationen der Speicherelemente 116 und 118 und bestimmt, ob die im GPIO-Register 132 gespeicherten Verbindungsinformationen mit den im CMOS-RAM 136 gespeicherten Verbindungsinformationen identisch sind. Wenn die Verbindungsinformationen nicht identisch sind, wird mit einem Vorgang S310 fortgesetzt. Wenn die Verbindungsinformationen im Vorgang S302 identisch sind, führt das Verfahren einen Vorgang S304 aus.
-
Während des Vorgangs S310 bestimmt der BIOS-Code in Abhängigkeit von den im GPIO-Register 132 gespeicherten Verbindungsinformationen, ob das Parallel-ATA-Speicherelement und das Seriell-ATA-Speicherelement 118 mit dem Rechnersystem 100 verbunden sind. Wenn das Parallel-ATA-Speicherelement und das Seriell-ATA-Speicherelement 118 mit dem Rechnersystem 100 verbunden sind, fährt das Verfahren mit einem Vorgang S312 fort, ansonsten fährt das Verfahren mit einem Vorgang S314 fort.
-
Während des Vorgangs S312 bestimmt der BIOS-Code, ob die Boot-Datei im Parallel-ATA-Speicherelement 116 gespeichert ist. Wenn die Boot-Datei im Parallel-ATA-Speicherelement 116 gespeichert ist, werden während des Vorgangs S316 Informationen zum Setzen des Parallel-ATA-Speicherelements 116 als Master und des Seriell-ATA-Speicherelements 118 als Slave in den CMOS-RAM 136 geschrieben. Wenn die Boot-Datei nicht im Parallel-ATA-Speicherelement 116 gespeichert ist, werden während des Vorgangs S318 Informationen zum Setzen des Parallel-ATA-Speicherelements 116 als Slave und des Seriell-ATA-Speicherelements 118 als Master in den CMOS-RAM 136 geschrieben.
-
Während des Vorgangs S314 bestimmt der BIOS-Code in Abhängigkeit von der im GPIO-Register 132 gespeicherten Verbindungsinformation, ob das Parallel-ATA-Speicherelement 116 mit dem Rechnersystem 100 verbunden ist. Wenn das Parallel-ATA-Speicherelement 116 mit dem Rechnersystem 100 verbunden ist, schreibt der Vorgang S320 Informationen in den CMOS-RAM 136, die das Parallel-ATA-Speicherelement 116 als Master definieren. Wenn das Parallel-ATA-Speicherelement 116 nicht mit dem Rechnersystem 100 verbunden ist, schreibt der Vorgang S322 Informationen in den CMOS-RAM 136, die das Seriell-ATA-Speicherelement 118 als Slave definieren.
-
Während des Vorgangs S304 steuert der BIOS-Code den Taktgenerator 112 in Reaktion auf die im CMOS-RAM 136 gespeicherten Verbindungsinformationen für die Speicherelemente, um das erste und zweite Taktsignal CLK1 und CLK2 zu erzeugen.
-
Während des Vorgangs S306 initialisiert der BIOS-Code das Parallel-ATA-Speicherelement 116 und/oder das Seriell-ATA-Speicherelement 118, wenn diese mit dem Rechnersystem 100 verbunden sind, in Reaktion auf die im CMOS-RAM 136 gespeicherten Verbindungsinformationen.
-
Während des Vorgangs S308 initiiert der BIOS-Code einen Teil eines Betriebssystems durch Aufrufen eines Boot-Sektor-Codes in einer Master-Boot-Position, die eine Boot-Datei im Parallel-ATA-Speicherelement 116 und/oder im Seriell-ATA-Speicherelement 118 umfasst, um das Rechnersystem 100 zu booten.
-
Entsprechend einiger Ausführungsformen der vorliegenden Erfindung sucht das Rechnersystem, wenn ein Benutzer nicht in der Lage ist, die Verbindungsinformationen der Speicherelemente über das BIOS-Setup-Menü einzustellen, bzw. die Verbindungsinformationen falsch einstellt, automatisch exakte Verbindungsinformationen für die Speicherelemente und stellt sie ein, so dass das Rechnersystem richtig hochfahren kann.
-
Entsprechend einiger Ausführungsformen der vorliegenden Erfindung stellt ein Taktgenerator in Reaktion darauf, ob ein Parallel-ATA-Speicherelement und/oder ein Seriell-ATA-Speicherelement an eine korrespondierende Parallel-ATA-Steuereinheit und/oder Seriell-ATA-Steuereinheit angeschlossen ist oder nicht, der zugehörigen Parallel-ATA-Steuereinheit und/oder der Seriell-ATA-Steuereinheit selektiv Taktsignale zur Verfügung oder nicht zur Verfügung, um eine Erzeugung von unnötigen Taktsignalen zu vermeiden und dadurch den Energieverbrauch des Rechnersystems zu reduzieren.
-
Des Weiteren kann der BIOS-Code nach der im Parallel-ATA-Speicherelement und/oder im Seriell-ATA-Speicherelement gespeicherten Boot-Datei suchen, wenn der BIOS-ROM ein Boot-Datei-Suchprogramm umfasst, um die Master-/Slaveinformation der Speicherelemente in den CMOS-RAM zu speichern. Daher kann das Rechnersystem unter Verwendung eines angeschlossenen Speicherelements immer noch richtig hochfahren, wenn ein Benutzer die Verbindungsinformation über die Speicherelemente nicht richtig eingestellt hat.