-
Die
Erfindung betrifft eine Datenübertragungsvorrichtung
und ein Verfahren zum Verwenden derselben, und insbesondere eine
Datenübertragungsvorrichtung,
die einen Chipsatz mit Speichervorrichtungen innerhalb eines Computers
verbindet. Die Erfindung wird auch zum schnellen Hochfahren des
Computers angewendet.
-
Es
wird auf 1 Bezug genommen,
welche ein Blockdiagramm eines herkömmlichen Computers ist. Die
zentrale Verarbeitungseinheit (CPU) 70 greift auf Daten
von einer Speichereinheit 74 über einen North-Bridge-Chip 71 zu
und kommuniziert mit peripheren Geräten über einen South-Bridge-Chip 72. Der
South-Bridge-Chip 72 ist mit den externen Peripheriegeräten über eine
PCI-Schnittstelle 721, eine IDE-Schnittstelle 722 oder einen
Eingabe/Ausgabe-Chip 73 verbunden. Im Allgemeinen haben
Peripheriegeräte,
die mit dem Eingabe/Ausgabe-Chip 73 verbunden sind, wie
z.B. eine Diskette, eine Tastatur, eine Maus oder ein Joystick,
eine niedrige Datenübertragungsrate.
Ferner sind Peripheriegeräte,
die eine höhere Übertragungsrate
haben, mit der PCI-Schnittstelle 721 und
der IDE-Schnittstelle 722 verbunden. Beispielsweise kann
das Peripheriegerät eine
Graphikkarte oder eine Ethernet-Karte, die mit der PCI-Schnittstelle 721 verbunden
ist, oder eine Festplatte oder ein optisches Laufwerk sein, das
mit der IDE-Schnittstelle 722 verbunden ist.
-
Für ein Computersystem
ist die hauptsächliche
Speichervorrichtung eine Festplatte. Die Festplatte hat einen Vorteil
der großen
Speicherkapazität. Jedoch
ist die Zugriffsgeschwindigkeit der Festplatte viel kleiner als
die der Speichereinheit 74. Folglich kann sie, wenn die
CPU auf eine große
Datenmenge von der Festplatte zugreifen muss, eine ausreichende
Zugriffsgeschwindigkeit infolge der Begrenzungen der Übertragungsbandbreite
der IDE-Schnittstelle 722 und der Architektur des mechanischen
Zugriffs der Festplatte nicht erreichen. Somit ist die Gesamt-Betriebseffizienz
des Computers begrenzt. Weiterhin wird die Festplatte gewöhnlich verwendet, um
die notwendigen Daten zum Hochfahren des Computers zu speichern.
Infolge der geringen Zugriffsgeschwindigkeit der Festplatte ist
die Hochfahrzeit des Computers sehr lang.
-
Es
ist ein Ziel der vorliegenden Erfindung, eine Datenübertragungsvorrichtung
und ein Verfahren für
dieselbe bereitzustellen, die verwendet werden kann, um die Übertragungsbandbreite
flexibel einzustellen. Die vorliegende Erfindung kann verwendet
werden, um das Speichern von Daten in einer einzigen Speichervorrichtung
zu vermeiden, und um die Bandbreite der Schnittstelle zu erhöhen, um
die Datenübertragungsrate
und die Hochfahrgeschwindigkeit eines Computersystems zu erhöhen.
-
Zum
Erreichen des obigen Zieles stellt die Erfindung eine Datenübertragungsvorrichtung
bereit, welche angewendet wird, um mit einem Chipsatz eines Computersystems
zu kommunizieren. Die Datenübertragungsvorrichtung
weist eine erste Speichervorrichtung, eine zweite Speichervorrichtung und
eine Übertragungs-Steuereinheit
auf. Die Übertragungs-Steuereinheit
ist mit der ersten Speichervorrichtung und der zweiten Speichervorrichtung elektrisch
verbunden. Die Übertragungs-Steuereinheit wird
verwendet, um den Betrieb des Datentransfers zwischen dem Chipsatz,
der ersten Speichervorrichtung und der zweiten Speichervorrichtung
zu steuern. Wenn der Datentransferbetrieb zwischen dem Chipsatz
und der ersten Speichervorrichtung ausgeführt wird, prüft die Übertragungs-Steuereinheit,
ob eine Zielvorrichtung in der Lage ist, gesendete Daten vollständig zu
empfangen und zu verarbeiten, wobei die Zielvorrichtung der Chipsatz
oder die erste Speichervorrichtung ist. Wenn das Prüfergebnis
positiv ist, sorgt die Übertragungs-Steuereinheit unverzüglich dafür, dass
die Zielvorrichtung die Daten empfängt. wenn das Prüfergebnis
negativ ist, sendet die Übertragungs-Steuereinheit zunächst einen
Teil der Daten an die Zielvorrichtung und speichert einen verbleibenden
Teil der Daten vorübergehend
in der zweiten Speichervorrichtung. Die zweite Speichervorrichtung
sendet dann den verbleibenden, in der zweiten Speichervorrichtung
gespeicherten Teil der Daten an die Zielvorrichtung. Die Schnittstelle der Übertragungs-Steuereinheit und
des Chipsatzes ist eine PCI-Express (PCI-E)-Schnittstelle.
-
Zum
Erreichen des obigen Ziels stellt die Erfindung ein Datenübertragungsverfahren
bereit, welches angewendet wird, um mit einem Chipsatz eines Computersystems
zu kommunizieren. Das Datenübertragungsverfahren
weist die folgenden Schritte auf. Es wird eine Übertragungs-Steuereinheit bereitgestellt,
welche den Chipsatz steuert, um Daten zu einer ersten Speichervorrichtung
zu senden. Die Übertragungs-Steuereinheit
wird verwendet, um die von dem Chipsatz gesendeten Daten zu empfangen. Die Übertragungs-Steuereinheit
wird verwendet, um zu prüfen,
ob die erste Speichervorrichtung in der Lage ist, die von dem Chipsatz
gesendeten Daten vollständig
zu empfangen und zu verarbeiten. wenn das Prüfergebnis positiv ist, wird
die erste Speichervorrichtung verwendet, um die von dem Chipsatz
gesendeten Daten unter Steuerung der Übertragungs- Steuereinheit direkt zu empfangen. Wenn
das Prüfergebnis
negativ ist, wird ein erster Teil der Daten vorübergehend in einer zweiten
Speichervorrichtung gespeichert, ein zweiter, d.h. ein verbleibender
Teil der Daten wird direkt zu der ersten Speichervorrichtung gesendet,
und dann wird der erste Teil der Daten, der vorübergehend in der zweiten Speichervorrichtung
gespeichert wird, an die erste Speichervorrichtung gesendet, nachdem
die erste Speichervorrichtung den Empfang und die Verarbeitung des zweiten
Teiles der Daten beendet hat.
-
Zum
Erreichen des obigen Zieles stellt die vorliegende Erfindung auch
ein Verfahren zum schnellen Hochfahren eines Computersystems bereit.
Das Verfahren weist die folgenden Schritte auf. Es wird eine Übertragungs-Steuereinheit
bereitgestellt, die einen Chipsatz mit einer Speichereinheit verbindet.
Die Übertragungs-Steuereinheit
steuert den Betrieb des Datentransfers zwischen dem Chipsatz und
der Speichereinheit, wobei in der Speichereinheit die notwendigen
Boot-Daten gespeichert sind. Der Chipsatz wird verwendet, um auf
die notwendigen Boot-Daten von der Speichereinheit über die Übertragungs-Steuereinheit
zuzugreifen, wenn das Computersystem eingeschaltet wird. Wenn das Computersystem
ausgeschaltet ist, erhält
die Speichereinheit Strom von einer Backup-Energieversorgung. Wenn
das Computersystem jedoch eingeschaltet ist, erhält die Speichereinheit Strom
von einer Haupt-Energieversorgung des Computersystems.
-
In
der Datenübertragungsvorrichtung
und dem Verfahren der vorliegenden Erfindung prüft, wenn Daten zwischen dem
Chipsatz und der ersten Speichervorrichtung übertragen werden, die Übertragungs-Steuereinheit
vorab die Datenempfangsgeschwindigkeit der Zielvorrichtung und speichert dann flexibel
einen Teil der Daten in der zweiten Speichervorrichtung. Folglich
wird, sogar wenn die Datenempfangsgeschwindigkeit der Zielvorrichtung
nicht ausreichend ist, die Gesamt-Übertragungseffizienz des Computersystems
nicht beeinträchtigt.
Außerdem wird,
da die Schnittstelle der Übertragungs-Steuereinheit
und des Chipsatzes eine PCI-Express (PCI-E)-Schnittstelle ist, die Übertragungsbandbreite erhöht. Da die
notwendige Boot-Vorrichtung
in der zweiten Speichervorrichtung, d.h. einer Speichereinheit,
gespeichert werden kann, ist es überdies
nicht notwendig, auf die Boot-Daten von der Festplatte zuzugreifen,
sondern es kann auf die Boot-Daten direkt von der mit der Übertragungs-Steuereinheit
verbundenen Speichereinheit zugegriffen werden. Somit wird die Hochfahrgeschwindigkeit
des Computersystems erhöht.
-
Zahlreiche
weitere Eigenschaften, Vorteile und Details der vorliegenden Erfindung
werden in der folgenden ausführlichen
Beschreibung beschrieben.
-
Die
Erfindung wird mit Bezug auf Zeichnungen näher beschrieben. In den Zeichnungen
sind
-
1 ein
Blockdiagramm eines herkömmlichen
Computers;
-
2 ein
Blockdiagramm einer bevorzugten Ausführungsform gemäß der Erfindung;
-
3 ein
Flussdiagramm, das einen Datenübertragungsvorgang
gemäß der Erfindung
zeigt;
-
4 ein
Flussdiagramm, das einen anderen Datenübertragungsvorgang gemäß der Erfindung
zeigt; und
-
5 ein
Flussdiagramm, das einen Vorgang zum Ein-/Ausschalten eines Computersystems gemäß der Erfindung
zeigt.
-
Es
wird auf 2 Bezug genommen, welche ein
Blockdiagramm einer bevorzugten Ausführungsform gemäß der Erfindung
ist. Ein in der Erfindung bereitgestellter Chipsatz 10 weist
eine PCI-Express (PCI-E)-Schnittstelle
und einen South-Bridge- oder North-Bridge-Chipsatz auf. Der Chipsatz 10 ist
mit einer Übertragungs-Steuereinheit 20 elektrisch
verbunden. Die Übertragungsschnittstelle
zwischen der Übertragungs-Steuereinheit 20 und
dem Chipsatz 10 ist die PCI-E-Schnittstelle. Ferner integriert die Übertragungs-Steuereinheit 20 mehrere
PCI-E-Lanes, um die Übertragungsbandbreite
und die Datenverarbeitungsgeschwindigkeit zu erhöhen. Die Übertragungs-Steuereinheit 20 ist
in dieser Ausführungsform ein
Chip.
-
Die Übertragungs-Steuereinheit 20 ist
jeweils mit einer ersten Speichervorrichtung 21 und einer
zweiten Speichervorrichtung 22 verbunden, und sie wird
verwendet, um den Datentransfer zwischen dem Chipsatz 10,
der ersten Speichervorrichtung 21 und der zweiten Speichervorrichtung 22 zu
steuern. Zum Beispiel können
die Daten über
die Übertragungs-Steuereinheit 20 von
dem Chipsatz 10 zu der ersten Speichervorrichtung 21 oder
von der ersten Speichervorrichtung 21 zu dem Chipsatz 10 übertragen
werden. Die zweite Speichervorrichtung 22 stellt Speicherplatz
bereit, um die Daten vorübergehend zu
speichern, wenn der Datentransfer ausgeführt wird. Somit kann die Übertragungs-Steuereinheit 20 über die
zweite Speichervorrichtung 22 die Übertragungsbandbreite während des
Datentransfers flexibel einstellen.
-
In
dieser Ausführungsform
kann die erste Speichervorrichtung 21 eine Festplatte mit
einer IDE-, SATA-, 1394- oder SCSI-Schnittstelle sein. Die zweite Speichervorrichtung 22 ist
eine Speichereinheit, die eine höhere
Zugriffsgeschwindigkeit als die Festplatte hat. Während des
Datentransfers prüft
die Übertragungs-Steuereinheit 20 den
Zustand des Datenempfangs. Wenn die Zielvorrichtung belegt ist oder
keine ausreichende Empfangsrate bereitstellen kann, speichert die Übertragungs-Steuereinheit 20 die
Daten vorübergehend
in der zweiten Speichervorrichtung 22, d.h. in der Speichereinheit.
Die in dieser Ausführungsform
erwähnte
Zielvorrichtung ist der Chipsatz 10 oder die erste Speichervorrichtung 21.
-
Folglich
können über die Übertragungs-Steuereinheit 20 der
vorliegenden Erfindung eine Festplatte, die eine große Speicherkapazität hat, und
eine Speichereinheit, die eine höhere
Datenzugriffsrate hat, verbunden werden. Die Festplatte und die
Speichereinheit sind die in dieser Ausführungsform erwähnte erste
Speichervorrichtung 21 bzw. die zweite Speichervorrichtung 22.
Die zweite Speichervorrichtung 22 dieser Ausführungsform
ist eine Speichereinheit, die in einem Speichersockel eines Motherboards
eingesteckt ist, das für
die Übertragungs-Steuereinheit 20 erweitert
ist und mit dieser verbunden ist. Gemäß der Datenmenge, die zu übertragen
ist, kann diese Ausführungsform
mehrere erste Speichervorrichtungen 21 und mehrere zweite Speichervorrichtungen 22 aufweisen,
um die Datenübertragungsrate
zu erhöhen.
-
In
dieser Ausführungsform
ist die Schnittstelle zwischen dem Chipsatz 10 und der Übertragungs-Steuereinheit 20 eine
PCI-E-Schnittstelle; PCI-Ex1
bedeutet, dass die Schnittstelle eine Übertragungs-Lane mit einer Übertragungsrate
von 250 MB/s hat. Die PCI-E-Schnittstelle hat verschiedene Standards,
wie z.B. PCI-Ex1, PCI-Ex2, PCI-Ex4, PCI-Ex8, PCI-Ex16 und PCI-Ex32.
In einem Duplex-Übertragungsmodus
hat beispielsweise die PCI-Ex16-Schnittstelle
eine Übertragungsrate
von 8 GB/s, die viel höher
ist als die Zugriffsgeschwindigkeit einer üblichen Speichereinheit oder
Festplatte. Basierend auf dieser Tatsache kann in dieser Ausführungsform
das Basisdatenaustauschsystem (BIOS) eines Computersystems eingestellt
werden, die zweite Speichervorrichtung 22 zum Booten zu
verwenden. Die für
das Booten notwendigen Daten können vorab
in der zweiten Speichereinheit 22 gespeichert werden. Auf
diese Weise kann das Computersystem einen schnelleren Bootvorgang
aufweisen. Um zu verhindern, dass die in der zweiten Speichereinheit 22 gespeicherten
Daten entfernt werden, wenn das Computersystem ausgeschaltet wird,
weist diese Ausführungsform
eine Backup-Energieversorgung auf,
um Strom für
die zweite Speichervorrichtung 22 bereitzustellen, wenn
das Computersystem ausgeschaltet ist. Die zum Booten notwendigen
Daten können
mehrere Boot-Dateien, mehrere Registrierungsdateien, mehrere Ausführungsdateien
oder mehrere zugehörige
Dateien eines Betriebssystems (OS), wie z.B. des Windows-Systems,
des OS2-Systems oder des Linux-Systems sein. Die zum Booten notwendigen
Daten können
auch eine Boot-Imagedatei
sein.
-
Es
wird auf 3 Bezug genommen, die ein Flussdiagramm
ist, das einen Datenübertragungsvorgang
gemäß der Erfindung
zeigt. 3 zeigt den Vorgang des durch die Übertragungs-Steuereinheit 20 gesteuerten
Datentransfers von dem Chipsatz 10 zu der ersten Speichervorrichtung 21.
Der Datenübertragungsvorgang
weist die folgenden Schritte auf. Am Anfang beginnt der Chipsatz 10,
Daten für
die erste Speichervorrichtung 21 zu senden (S301). Dann
empfängt
die Übertragungs-Steuereinheit 20 die
von dem Chipsatz 10 gesendeten Daten (S303). Die Übertragungs-Steuereinheit 20 ermittelt,
ob die erste Speichervorrichtung 21 die gesamten Daten sofort
empfangen und verarbeiten kann (S305); mit anderen Worten prüft die Übertragungs-Steuereinheit 20,
ob die Datenmenge, die durch die erste Speichervorrichtung 21 empfangen
und verarbeitet werden kann, diejenige der Daten überschreitet,
die von dem Chipsatz 10 übertragen werden.
-
Wenn
das Ergebnis der Ermittlung ja ist, empfängt die erste Speichervorrichtung 21 die
von dem Chipsatz 10 gesendeten Daten sofort (S307). Anderenfalls
speichert die Übertragungs-Steuereinheit 20 einen
Teil der von dem Chipsatz 10 übertragenen Daten vorübergehend
in der zweiten Speichervorrichtung 22 (S309) und sendet
den verbleibenden Teil direkt zu der ersten Speichervorrichtung 21 (S311).
Nachdem die erste Speichervorrichtung 21 den Empfang des
Teils der Daten beendet hat, die von der Übertragungs-Steuereinheit 20 gesendet werden
(S313), wird der Teil der Daten, der vorübergehend in der zweiten Speichereinheit 22 gespeichert
wird, zu der ersten Speichervorrichtung 21 gesendet (S315).
-
Es
wird auf 4 Bezug genommen, die ein Flussdiagramm
ist, das einen anderen Datenübertragungsvorgang
gemäß der Erfindung
zeigt. 4 zeigt den Vorgang des durch die Übertragungs-Steuereinheit 20 gesteuerten
Datentransfers von der ersten Speichervorrichtung 21 zu
dem Chipsatz 10. Der Datenübertragungsvorgang weist die
folgenden Schritte auf. Am Anfang beginnt die erste Speichervorrichtung 21,
Daten für
den Chipsatz 10 zu senden (S401). Dann empfängt die Übertragungs-Steuereinheit 20 die
von der ersten Speichervorrichtung 21 gesendeten Daten
(S403). Die Übertragungs-Steuereinheit 20 ermittelt,
ob der Chipsatz 10 die gesamten Daten sofort empfangen
und verarbeiten kann (S405); mit anderen Worten prüft die Übertragungs-Steuereinheit 20,
ob die Datenmenge, die von dem Chipsatz 10 empfangen und
verarbeitet werden kann, diejenige der Daten übersteigt, die von der ersten Speichervorrichtung 21 übertragen
werden, und ob der Chipsatz 10 nicht belegt ist.
-
Wenn
das Ergebnis der Ermittlung ja ist, empfängt der Chipsatz 10 die
von der ersten Speichervorrichtung 21 gesendeten Daten
sofort (S407). Anderenfalls speichert die Übertragungs-Steuereinheit 20 einen Teil
der von der ersten Speichervorrichtung 21 gesendeten Daten
vorübergehend
in der zweiten Speichervorrichtung 22 (S409) und sendet den
verbleibenden Teil direkt zu dem Chipsatz 10 (S411). Nachdem
der Chipsatz 10 den Empfang des Teils der Daten beendet
hat, die von der Übertragungs-Steuereinheit 20 gesendet
werden (S413), wird der Teil der Daten, der vorübergehend in der zweiten Speichereinheit 22 gespeichert
wird, zu dem Chipsatz 10 gesendet (S415).
-
Dementsprechend
kann die in dieser Ausführungsform
bereitgestellte Übertragungs-Steuereinheit 20 den
Datentransfer zwischen dem Chipsatz 10 und der ersten Speichervorrichtung 21 entsprechend
der übertragenen
Datenmenge steuern. Wenn die Datenmenge kleiner ist als die, die
durch die Zielvorrichtung empfangen und verarbeitet werden kann, empfängt die
Zielvorrichtung die gesendeten Daten direkt. Wenn andererseits die
Datenmenge größer ist als
die, die durch die Zielvorrichtung empfangen und verarbeitet werden
kann, wird nur ein Teil der Daten übertragen, der durch die Zielvorrichtung
empfangen und verarbeitet werden kann. Der verbleibende Teil der
Daten wird vorübergehend
in der zweiten Speichervorrichtung 22 gespeichert. Nachdem
die Zielvorrichtung den Empfang und die Verarbeitung der von der Übertragungs-Steuereinheit 20 gesendeten Daten
beendet hat, wird der verbleibende Teil der Daten von der zweiten
Speichervorrichtung 22 zu der Zielvorrichtung gesendet.
Da die zweite Speichervorrichtung dafür vorgesehen ist, die Daten
vorübergehend
zu speichern, sie also eine Funktion ähnlich der eines Cash-Speichers
bereitstellt, wird die Übertragungsrate
der zwischen dem Chipsatz 10 und der ersten Speichervorrichtung 21 übertragenen
Daten verbessert.
-
Es
wird auf 5 Bezug genommen, die ein Flussdiagramm
ist, das einen Vorgang zum Ein-/Ausschalten eines Computersystems
gemäß der Erfindung
zeigt. Die zweite Speichervorrichtung 22 speichert vorab
notwendige Boot-Daten. Folglich greift, wenn das Computersystem
eingeschaltet wird, der Chipsatz 10 über die Übertragungs-Steuereinheit 20 auf
die notwendigen Boot-Daten
zu, die in der zweiten Speichervorrichtung 22 gespeichert
sind (S501). Somit kann auf die notwendigen Boot-Daten schnell zugegriffen werden. Das
Computersystem wird gemäß den Daten
aktiviert (S503). Das in dieser Ausführungsform bereitgestellte
Verfahren zum Hochfahren des Computersystems ist schneller als das
herkömmliche
Verfahren, bei dem die Boot-Daten von einer Festplatte erhalten
werden müssen.
Wenn der Computer ausgeschaltet werden muss oder in einen Schlafmodus
eintritt, werden die Boot-Daten vorab in der zweiten Speichervorrichtung
gespeichert (S505). Folglich kann, wenn das Computersystem das nächste Mal
eingeschaltet wird, auf die Bootdaten direkt von der zweiten Speichervorrichtung 22 zugegriffen
werden.