DE602006000750T2 - Vorrichtung und Verfahren für einen Adressbus mit vierfacher Übertragungsrate - Google Patents

Vorrichtung und Verfahren für einen Adressbus mit vierfacher Übertragungsrate Download PDF

Info

Publication number
DE602006000750T2
DE602006000750T2 DE602006000750T DE602006000750T DE602006000750T2 DE 602006000750 T2 DE602006000750 T2 DE 602006000750T2 DE 602006000750 T DE602006000750 T DE 602006000750T DE 602006000750 T DE602006000750 T DE 602006000750T DE 602006000750 T2 DE602006000750 T2 DE 602006000750T2
Authority
DE
Germany
Prior art keywords
address
request
data
bus
pins
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE602006000750T
Other languages
English (en)
Other versions
DE602006000750D1 (de
Inventor
Darius D. Austin Gaskins
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Via Technologies Inc
Original Assignee
Via Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Via Technologies Inc filed Critical Via Technologies Inc
Publication of DE602006000750D1 publication Critical patent/DE602006000750D1/de
Application granted granted Critical
Publication of DE602006000750T2 publication Critical patent/DE602006000750T2/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4208Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
    • G06F13/4217Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with synchronous protocol
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Description

  • VERWEIS AUF VERWANDTE PATENTE
  • Diese Anmeldung beansprucht die Vorteile der vorläufigen US-Anmeldung, laufende Nr. 60/698150, eingereicht am 11.7.2005, die hiermit durch Bezugnahme für alle Absichten und Zwecke eingeschlossen ist.
  • Diese Anmeldung ist mit den folgenden gleichzeitig anhängigen US-Patenten verwandt, die alle den gleichen Abtretungsempfänger und die gleichen Erfinder aufweisen.
  • Figure 00010001
  • HINTERGRUND DER ERFINDUNG
  • GEBIET DER ERFINDUNG
  • Die Erfindung betrifft Prozessor-Adressbusse und insbesondere eine Vorrichtung und ein Verfahren für Quad-Pumped- bzw. Double-Pumped-Adressbusse, die das Problem von großen Gehäusen und unvernünftiger Leistungsaufnahme bei modernen Mikroprozessoren lösen, bei denen ein beträchtlicher Anteil der Anschlussstifte und der Leistung für die Adressbus-Schnittstelle des Mikroprozessors benötigt werden.
  • BESCHREIBUNG DES STANDS DER TECHNIK
  • In einem modernen Mikroprozessor, beispielsweise einem x86-kompatiblen Mikroprozessor, erfolgen Transaktionen (d. h. Lese- und Schreibtransaktionen) in und aus dem Speicher über einen Systembus. Diese Transaktionen umfassen eine Anforderungsphase, in der eine Adresse für eine Transaktion zusammen mit dem Transaktionstyp über eine Adresssignalgruppe geliefert werden. Die Adresssignalgruppe enthält in der Regel einen Adressbus, einen Satz zugeordneter Adressimpulssignale und einen Anforderungsbus. In einer bestimmten herkömmlichen Anordnung enthält die Adresssignalgruppe ungefähr 40 Signale, die an Anschlussstiften eines Gehäuses für das Mikroprozessorplättchen bereitgestellt werden müssen. In zahlreichen herkömmlichen Anordnungen werden mehrfache Double-Pumped-Busanforderungspakete auf der Adresssignalgruppe während eines einzigen Taktzyklus unterstützt (z. B. "A"- und "B"-Anforderungspakete). Zudem unterstützen zahlreiche herkömmliche Mikroprozessoranordnungen "Quad-Pumped"-Transaktionen, in denen eine gesamte Cache-Line (z. B. acht Vierfachwörter für eine 64-Byte-Cache-Line) über den Bus übertragen werden, und zwar in nur wenigen Taktzyklen (z. B. zwei Taktzyklen). Bei herkömmlichen Double-Pumped-Transaktionen werden die Signale der Adresssignalgruppe während eines jeden Taktzyklus zwei Mal angelegt.
  • Der Erfinder hat festgestellt, dass diese Anordnung der Adresssignalgruppe auf gewissen Anwendungsfeldern problematisch ist, bei denen die Gehäusegröße und/oder die Leistung beschränkt sind. Zudem wird jedes Mal, wenn eines dieser Signale auf den Bus getrieben wird, beispielsweise bei mehrmaligem Anlegen in einem gegebenen Taktzyklus, zusätzliche Leistung benötigt. Es ist daher erwünscht, einen Mechanismus bereitzustellen, durch den die Anzahl der Adresssignalgruppen-Anschlussstifte und die zugehörigen Leistungsanforderungen verringert werden, bei dem die Adressierfunktionalität jedoch erhalten bleibt. Um sich an unterschiedliche Anwendungsgebiete anzupassen, ist es zudem erwünscht, einen Mechanismus bereitzustellen, durch den die Adressierungsfähigkeit entweder im beschriebenen Double-Pumped-Modus oder in einem neuen Quad-Pumped-Modus konfiguriert werden kann. Dieser wird im Weiteren beschrieben.
  • WO 01/48621 offenbart eine Ausführungsform, die ein Quad-Pumped-Datensignal enthält, und eine davon verschiedene Ausführungsform, die ein Double-Pumped-Adresssignal enthält.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Aspekte der Erfindung findet man in den beigefügten unabhängigen Ansprüchen (Anspruch 1 und 7), die nun eingesehen werden sollten. Ausführungsformen der Erfindung findet man in den beigefügten abhängigen Ansprüchen.
  • Die Adressbus-Konfigurationslogik kann während einer ersten Phase des Zyklus des Bustaktsignals erste und zweite Adressdaten und erste und zweite Anforderungsdaten an die Adresssignalgruppen-Anschlussstifte anlegen, und sie kann während einer zweiten Phase des Zyklus des Bustaktsignals dritte und vierte Adressdaten und dritte und vierte Anforderungsdaten an die Adresssignalgruppen-Anschlussstifte anlegen. In einer Ausführungsform enthalten die Adresssignalgruppen-Anschlussstifte ein erstes Adressimpulssignal, das zum Zwischenspeichern der ersten und dritten Adress- und Anforderungsdaten verwendet wird, und ein zweites Adressimpulssignal, das zum Zwischenspeichern der zweiten und vierten Adress- und Anforderungsdaten verwendet wird. Die ersten und die zweiten Adressdaten können gemeinsam eine Adresse einer Transaktion enthalten, die ersten und die zweiten Anforderungsdaten können gemeinsam einen Typ der Transaktion enthalten, die dritten und vierten Adressdaten können gemeinsam ein Attribut der Transaktion enthalten, und die dritten und vierten Anforderungsdaten können gemeinsam eine Länge der Transaktion enthalten.
  • Der Mikroprozessor kann mit einer verringerten Anzahl Anschlussstifte implementiert werden, zu denen auch die Adresssignalgruppen-Anschlussstifte gehören, die einen Quad-Pumped-Adresstransaktionsmodus gemäß einer Ausführungsform der Erfindung unterstützen. Wahlweise kann ein vollständiger Satz von Adress- und Anforderungs-Anschlussstiften enthalten sein, die den herkömmlichen Double-Pumped-Adresstransaktionsmodus unterstützen. Werden beide Modi unterstützt, so kann die Adressbus-Konfigurationslogik einen Freigabeeingang enthalten, der ein Freigabesignal empfängt, wobei die Adressbus-Konfigurationslogik Adresssignalgruppen-Anschlussstifte so betreibt, dass sie eine Quad-Pumped-Abwicklung vornehmen, wenn das Freigabesignal angelegt wird, und den vollständigen Satz Anschlussstifte betreibt, damit eine Double-Pumped-Abwicklung erfolgt, wenn das Freigabesignal nicht angelegt wird.
  • Ein Mikroprozessor-Schnittstellensystem gemäß einer Ausführungsform der Erfindung enthält einen Systembus mit einem Bustakt und einer Adresssignalgruppe sowie zahlreiche Vorrichtungen, die mit dem Systembus verbunden sind. Jede Vorrichtung ist dafür ausgelegt, eine Quad-Pumped-Abwicklung auf dem Systembus vorzunehmen, in der zahlreiche Anforderungspakete nacheinander über die Adresssignalgruppe übertragen werden, und zwar während jeder Phase von mehreren Phasen eines Zyklus des Bustakts. In einer Ausführungsform enthalten die Vorrichtungen mindestens einen Mikroprozessor und einen oder mehrere Busagenten. Die Vorrichtungen können den Betrieb des Systembusses aushandeln, und zwar zwischen einem Double-Pumped-Adressmodus, damit eine Double-Pumped-Abwicklung erfolgt, und einem Quad-Pumped-Adressmodus, damit die Quad-Pumped-Abwicklung erfolgt.
  • Die ersten Adressdaten können während einer ersten Phase des Bustaktzyklus während erster und zweiter Anforderungspakete auf der Adresssignalgruppe gemultiplext sein, und die zweiten Adressdaten können während einer zweiten Phase des Bustaktzyklus während dritter und vierter Anforderungspakete auf der Adresssignalgruppe gemultiplext sein. Die Adresssignalgruppe kann einen Anforderungsbus enthalten, wobei die ersten Anforderungsdaten während einer ersten Phase des Bustaktzyklus während erster und zweiter Anforderungspakete auf dem Anforderungsbus gemultiplext werden, und wobei die zweiten Anforderungsdaten während einer zweiten Phase des Bustaktzyklus während dritter und vierter Anforderungspakete auf dem Anforderungsbus gemultiplext werden.
  • Die Quad-Pumped-Abwicklung kann erste und zweite Anforderungspakete während einer ersten Phase und dritte und vierte Anforderungspakete während einer zweiten Phase des Bustaktzyklus enthalten. Die ersten und zweiten Anforderungspakete können gemeinsam eine Transaktionsadresse und einen Transaktionstyp enthalten, und die dritten und vierten Anforderungspakete können gemeinsam einen Transaktionstyp und eine Transaktionslänge enthalten. Die Quad-Pumped-Abwicklung kann erste Adress- und Anforderungsdaten gemultiplext als erste und zweite Anforderungspakete während einer ersten Phase des Bustaktzyklus enthalten, und zweite Adress- und Anforderungsdaten gemultiplext als dritte und vierte Anforderungspakete während einer zweiten Phase des Bustaktzyklus.
  • Ein Verfahren zum Ausführen einer Quad-Pumped-Abwicklung auf einem Systembus gemäß einer Ausführungsform der Erfindung umfasst das Anlegen eines ersten Anforderungspakets an den Systembus während eines ersten Abschnitts einer ersten Phase eines Zyklus eines Systembustakts, das Anlegen eines zweiten Anforderungspakets an den Systembus während eines zweiten Abschnitts der ersten Phase des Zyklus des Systembustakts, das Anlegen eines dritten Anforderungspakets an den Systembus während eines ersten Abschnitts einer zweiten Phase des Zyklus des Systembustakts, und das Anlegen eines vierten Anforderungspakets an den Systembus während eines zweiten Abschnitts der zweiten Phase des Zyklus des Systembustakts.
  • Das Verfahren kann das Anlegen eines ersten Adressimpulses zum Zwischenspeichern der ersten und dritten Anforderungspakete enthalten, und das Anlegen eines zweiten Adressimpulses zum Zwischenspeichern der zweiten und vierten Anforderungspakete umfassen. Das Verfahren kann das Anlegen erster Adressdaten und erster Anforderungsdaten während der ersten Phase des Zyklus des Systembustakts umfassen, und das Anlegen zweiter Adressdaten und zweiter Anforderungsdaten während der zweiten Phase des Zyklus des Systembustakts. Das Verfahren kann das Anlegen einer Adresse einer Transaktion umfassen, das Anlegen eines Typs der Transaktion, das Anlegen eines Attributs der Transaktion und das Anlegen einer Länge der Transaktion. Das Verfahren kann das Multiplexen erster Adressdaten auf dem Systembus und das Multiplexen zweiter Adressdaten auf dem Systembus umfassen. Das Verfahren kann umfassen, dass zahlreiche mit dem Systembus verbundene Vorrichtungen aushandeln, ob der Systembus im Double-Pumped-Adressmodus oder im Quad-Pumped-Adressmodus betrieben wird.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die Vorzüge, Merkmale und Vorteile der Erfindung versteht man anhand der folgenden Beschreibung und der beiliegenden Zeichnungen besser.
  • Es zeigt:
  • 1 ein vereinfachtes Blockdiagramm eines herkömmlichen Mikroprozessor-Schnittstellensystems;
  • 2 eine zeitabhängige Darstellung der Wechselwirkung der Signale innerhalb der Adresssignalgruppe beschrieben anhand des herkömmlichen Mikroprozessor-Schnittstellensystems in 1, wenn Anforderungsphasen einer Bustransaktion ausgeführt werden;
  • 3 eine zeitabhängige Darstellung einer Anforderungsphase einer Quad-Pumped-Abwicklung gemäß einer Ausführungsform der Erfindung;
  • 4 eine Skizze einer Tabelle, die das Abbilden der Daten eines jeden Anforderungspakets A–D auf den Quad-Pumped-Adressbus während der Anforderungsphasen A und B einer Double-Pumped-Anforderungstransaktion gemäß einer beispielhaften Ausführungsform der Erfindung für einen x86-kompatiblen Mikroprozessor erläutert;
  • 5 ein vereinfachtes Blockdiagramm eines Mikroprozessor-Schnittstellensys tems, das einen Systembus mit einer Quad-Pumped-Adresssignalgruppe gemäß einer Ausführungsform der Erfindung enthält;
  • 6 ein Blockdiagramm einer Adressbus-Konfigurationslogik, die man dazu verwenden kann, die Adressbus-Konfigurationslogik in 5 gemäß einer beispielhaften Ausführungsform der Erfindung zu implementieren; und
  • 7 eine Skizze einer Tabelle, die eine Signalübereinstimmungsabbildung zwischen dem Double-Pumped-Adressmodus und dem Quad-Pumped-Adressmodus gemäß einer Ausführungsform der Erfindung für eine Systemvorrichtung (Mikroprozessor oder Busagent) erläutert, die beide Adressmodi unterstützt.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die folgende Beschreibung ist dafür gedacht, dass ein Fachmann die Erfindung so ausführen und verwenden kann, wie sie im Zusammenhang mit einer bestimmten Anwendung und deren Anforderungen bereitgestellt wird. Für Fachleute sind verschiedene Abwandlungen der bevorzugten Ausführungsform jedoch offensichtlich, und man kann die hier bestimmten allgemeinen Prinzipien auf andere Ausführungsformen anwenden. Es ist daher nicht beabsichtigt, dass die Erfindung auf die besonderen hier dargestellten und beschriebenen Ausführungsformen eingeschränkt ist, sondern ihr ist der breiteste Bereich zuzuerkennen, der mit den hier offenbarten Prinzipien und neuartigen Merkmalen verträglich ist.
  • Der Erfinder hat festgestellt, dass diese Anordnung der Adresssignalgruppe auf gewissen Anwendungsfeldern problematisch ist, bei denen die Gehäusegröße und/oder die Leistung beschränkt sind. Er hat dafür einen wählbaren Quad-Pumped/Double-Pumped-Adressbus entwickelt, der das Problem von großen Gehäusen und unvernünftiger Leistungsaufnahme bei modernen Mikroprozessoren löst, bei denen ein beträchtlicher Anteil der Anschlussstifte und der Leistung für die Adressbus-Schnittstelle des Mikroprozessors benötigt werden. Dies wird im Weiteren anhand von 1 bis 7 beschrieben.
  • 1 zeigt ein vereinfachtes Blockdiagramm eines herkömmlichen Mikroprozessor-Schnittstellensystems 100. Das Mikroprozessor-Schnittstellensystem 100 enthält einen Mikroprozessor 101 und einen Busagenten 103, der über eine Schnittstelle am Systembus 105 liegt. Der Busagent 103 repräsentiert jede beliebige Anzahl unterschiedlicher Busagenten, die Fachleuten geläufig sind, beispielsweise einen Speichercontroller, eine Host/PCI-Bridge (PCI = Peripheral Component Interconnect), einen Chipsatz usw. Der Systembus 105 enthält die Signale für das Ausführen von Datentransaktionen ein schließlich eines bidirektionalen Adressbusses A, eines bidirektionalen Datenbusses DATA und zahlreicher Steuersignale. In der dargestellten Ausführungsform weist der Bus A 33 Signale auf, die als A[35:3] wiedergegeben sind, und der DATA-Bus weist 64 Signale auf, die als DATA[63:0] wiedergegeben sind. Natürlich können der Adressbus und der Datenbus abhängig von der besonderen Konfiguration und Architektur jede beliebige geeignete Anzahl Signale aufweisen. Fachleuten ist geläufig, dass die geringstwertigen Adresssignale nicht erforderlich sind, um die Übertragung von Daten mit der Auflösung von Vierfachwörtern zu erlauben, wie dies Stand der Technik ist.
  • Zu den Steuersignalen gehört ein Differentialtaktbus BCLK[1:0], ein bidirektionaler Adressimpulsbus ADSTB[1:0] (der die Gültigkeit der Adressen aus dem Bus A anzeigt), ein Paar Datenimpulsbusse DSTBP[3:0] und DSTBN[3:0], ein bidirektionales Datenbus-Belegt-Signal DBSY (wird von der Einheit gesetzt, die Daten auf den DATA-Bus liefert), ein Daten-Fertig-Signal DRDY (wird von jeder Vorrichtung gesetzt, die während aller Taktzyklen Daten liefert, in denen Daten über den DATA-Bus übertragen werden) und einen Antwortbus RS, der den Typ der Transaktionsantwort liefert (z. B. keine Daten, normale Daten, implizites Zurückschreiben), die über den DATA-Bus abgeschlossen wird. In der dargestellten Ausführungsform besitzt der RS-Bus drei Signale, die als RS[2:0] wiedergegeben werden, und wird vom Busagenten 103 gesetzt.
  • Die für das herkömmliche Mikroprozessor-Schnittstellensystem 100 dargestellten Signale sind mit geringen Änderungen in nahezu allen modernen Mikroprozessoren vorhanden. Manche Prozessoren multiplexen Adressen und Daten über die gleiche Signalgruppe und liefern daher Steuersignale, die anzeigen, ob Daten oder Adressen vorliegen. Andere Mikroprozessoren verwenden unterschiedliche Adress- oder Datenbusbreiten oder Steuersignale mit anderen Bezeichnungen. Zudem können Adressen und/oder Daten über einen Bus mit geringerer Breite gemultiplext werden als dies bei dem herkömmlichen Mikroprozessor-Schnittstellensystem 100 dargestellt ist. Man darf nicht außer Acht lassen, dass im Wesentlichen alle Prozessoren Signale für die Kommunikation mit Busagenten liefern, um die Art von Transaktion anzuzeigen, die gefordert wird, die Parameter der Transaktion, und um die Daten zu übertragen bzw. zu empfangen.
  • In einem modernen Mikroprozessor kann man Daten jeweils in Cache-Line-Einheiten gemäß einer "Quad-Pumped"-Konfiguration übertragen (z. B. acht Vierfachwörter für eine 64-Byte-Cache-Line). Wird eine gesamte Cache-Line übertragen, so werden zwei Zyklen des Bustaktsignals BCLK[1:0] dazu verwendet, die acht zugeordneten Vier fachwörter in einer Cache-Line zu übertragen. Damit werden während eines jeden Zyklus des Bustakts BCLK[1:0] vier Vierfachwörter übertragen. Während dieser Art von Datenübertragung werden die Signale der Datenimpulsbusse DSTBP[3:0], DSTBN[3:0] geliefert, um die Gültigkeit der verschiedenen Vierfachwörter-Beats auf dem Datenbus anzuzeigen, so dass während eines einzelnen Bustakts vier Beats übertragen werden. In ähnlicher Weise werden Busanforderungspakete ("A" und "B") über die Adresssignalgruppe im Double-Pumped-Modus übertragen. Das Anforderungspaket A wird während einer ersten Hälfte eines Zyklus BCLK[1:0] übertragen, und das Anforderungspaket B wird während einer zweiten Hälfte von BCLK[1:0] übertragen. Quellensynchrone Adressimpulssignale ADSTB[1:0] werden geliefert, um die geforderten Paketdaten über die Adresssignalgruppe auf den Bus hinaus zu treiben.
  • 2 zeigt eine zeitabhängige Darstellung der Wechselwirkung der Signale innerhalb der Adresssignalgruppe, die die Anforderungsphasen einer Bustransaktion vornehmen, und die für das herkömmliche Mikroprozessor-Schnittstellensystem 100 beschrieben wird. Die Operationen bei derartigen Transaktionen und die zugehörigen Signale, die hier für einen x86-kompatiblen Mikroprozessor benannt werden, sind in zahlreichen Quellen beschrieben. Eine davon ist das Buch "The Unabridged Pentium® 4 IA32 Processor Genealogy, 1st Edition", von Tom Shanley. Zur Verdeutlichung: das Setzen der Steuersignale ist als logischer Lowpegel dargestellt. Fachleuten ist geläufig, dass das Setzen natürlich auch durch einen logischen Highpegel angezeigt werden kann. Zyklen des Differentialbustakts BCLK[1:0] sind oben quer über der zeitabhängigen Darstellung wiedergegeben, wobei BCLK[1] mit Hilfe einer gestrichelten Linie dargestellt ist, die mit umgekehrter Polarität bezüglich des Signals BCLK[0] zwischen ihren Zuständen wechselt.
  • Wie beschrieben werden die Anforderungspakete A und B während eines einzigen Zyklus von BCLK[1:0] im Double-Pumped-Modus über die Adresssignalgruppe übertragen. Die Vorrichtung, die eine Transaktion anstößt, treibt das Paket A hinaus und setzt zu dem Zeitpunkt, zu dem das Paket A gültig ist, ADSTB[1:0] auf Lowpegel. Somit wird ADSTB[1:0] von den Busvorrichtungen (z. B. dem Busagenten 103) dazu verwendet, das Paket A zwischenzuspeichern. Die anstoßende Vorrichtung treibt nun das Paket B hinaus und setzt zu dem Zeitpunkt, zu dem das Paket B gültig ist, ADSTB[1:0] auf Highpegel. Paket B wird mit der steigenden Flanke von ADSTB[1:0] zwischengespeichert. ADSTB[0] wird zum Zwischenspeichern der Anforderungspaketdaten verwendet, die auf A[16:3] und REQ[4:0] übertragen werden. ADSTB[1] wird zum Zwischenspei chern der Anforderungspaketdaten verwendet, die auf A[35:17] übertragen werden. Da die Pakete A und B während eines einzigen Zyklus von BCLK[1:0] über die gleiche Signalgruppe geliefert werden, bezeichnet man dies als Double-Pumped-Adressbus.
  • Ein Fachmann kann sehen, dass während des Anforderungsteils "A" des Zyklus die Adresssignale A[35:3] die Adresse der Transaktion enthalten und REQ[4:0] den Typ der geforderten Transaktion enthält (z. B. Speichercode lesen, Speicherdaten lesen, Speicher schreiben). Während des Anforderungsteils "B" des Zyklus liefert der Anforderungsbus REQ[4:0] für den Fall von Lese- und Schreibtransaktionen die Transaktionslänge, und A[35:3] liefert das Übertragungsattribut (z. B. nicht für den Cache bestimmt, write-combined, write-through, usw.), Byte-Freigaben und weitere Daten bezüglich der Transaktion.
  • Die Konfiguration der Adresssignalgruppe, die das beschriebene herkömmliche Mikroprozessor-Schnittstellensystem 100 verwendet, ist in gewissen Anwendungsbereichen problematisch, bei denen die Gehäusegröße und/oder die Leistung beschränkt sind. Im Einzelnen enthalten die Adresssignalgruppe A[35:3], ADSTB[1:0] und REQ[4:0] des Mikroprozessor-Schnittstellensystems 100 vierzig Signale, die an Anschlussstiften eines Gehäuses für das Mikroprozessorplättchen bereitgestellt werden müssen. Zudem wird jedes Mal, wenn eines dieser Signale auf den Bus getrieben wird, zusätzliche Leistung verbraucht.
  • Die Erfindung stellt eine neuartige Adresssignalgruppe bereit, die Quad-Pumped-Adressbus genannt wird, und die ungefähr die Hälfte (z. B. 22) der Adresssignalgruppen-Signale verwendet, die oben für einen Double-Pumped-Adressbus beschrieben sind, und die ungefähr die Hälfte der Leistung eines Double-Pumped-Adressbusses verbraucht. In einer Ausführungsform können der Mikroprozessor und ein oder mehrere Busagenten mit einer verringerten Anzahl Anschlussstifte implementiert werden, um die Gehäusegröße zu verringern und den Leistungsverbrauch während Adressanforderungstransaktionen im Quad-Pumped-Modus zu verringern. In einer anderen Ausführungsform können der Mikroprozessor und ein oder mehrere Busagenten jeweils mit der herkömmlichen Anzahl Anschlussstifte implementiert werden, von denen eine Untermenge der Adress- und Anforderungs-Anschlussstifte zum Verringern des Leistungsverbrauchs während der Adressanforderungstransaktionen im Quad-Pumped-Modus verwendet werden. Bei den Ausführungsformen, in denen sowohl Double-Pumped- als auch Quad-Pumped-Adressbusse unterstützt werden, kann während des Betriebs der Modus umge schaltet werden oder während der Initialisierung (z. B. beim Einschalten oder Zurücksetzen) von den Vorrichtungen ausgehandelt werden, die mit dem Systembus 505 verbunden sind (z. B. dem Mikroprozessor 501 und einem oder mehreren Busagenten 503). Für den Modusumschaltvorgang bei Betrieb kann man ein zusätzliches Signal auf dem Systembus zum Umschalten zwischen den Modi verwenden. Wahlweise kann man ein vorhandenes Signal auf dem Systembus für Modusumschaltvorgänge verwenden.
  • 3 zeigt eine zeitabhängige Darstellung, die eine Anforderungsphase einer Quad-Pumped-Transaktion gemäß einer Ausführungsform der Erfindung erläutert. In einem Quad-Pumped-Adressbus gemäß einer Ausführungsform der Erfindung wird eine Adresssignalgruppe mit verringerter Größe verwendet, zu der ein Adressbus AHI[2:0] und ALO[16:3] gehört, ein Anforderungsbus RQ[2:0] und zwei Adressimpulssignale ADSTBP und ADSTBN. Wahlweise kann man die Adress- und Anforderungssignale der verkleinerten Adresssignalgruppe gemeinsam als einen Adress- und Anforderungsbus ADR[19:0] betrachten. Wie die zeitabhängige Darstellung in 3 zeigt, wird die Anforderungsphase der Transaktion in zwei Phasen A und B unterteilt, damit vier Anforderungspakete A, B, C, D während eines einzigen Zyklus von BCLK[1:0] auf die Busse AHI, ALO und RQ getrieben werden. Die erste Hälfte des Signals BCLK[1:0] ist mit "A" bezeichnet. In dieser Zeitspanne werden die Anforderungspakete A und B getrieben. Die zweite Hälfte ist mit "B" bezeichnet. In dieser Zeitspanne werden die Anforderungspakete C und D getrieben. Die Signale ADSTBP und ADSTBN werden während des Zyklus jeweils zwei Mal gepulst. Die beiden fallenden Flanken von ADSTBP werden zum Zwischenspeichern der Anforderungspakete A bzw. C verwendet, und die beiden fallenden Flanken von ADSTBN werden zum Zwischenspeichern der Anforderungspakete B bzw. D verwendet, die über die Busse AHI, ALO und RQ geliefert werden. Da in einem einzigen Zyklus von BCLK[1:0] vier Pakete über die Adresssignalgruppe geliefert werden, wird die Adresssignalgruppe als Quad-Pumped-Adressbus bezeichnet.
  • 4 zeigt eine Skizze der Tabelle 400. Diese zeigt die Abbildung der Daten eines jeden Anforderungspakets A–D auf den Quad-Pumped-Adressbus während der Anforderungsphasen A und B einer Double-Pumped-Anforderungstransaktion gemäß einer beispielhaften Ausführungsform der Erfindung für einen x86-kompatiblen Mikroprozessor. In Tabelle 400 sind die Phasenbezeichner (A und B), die Paketbezeichner (A–D) und die zugehörigen Daten aufgelistet, die für jede Quad-Pumped-Anforderungstransaktion an die Signale AHI[2:0], ALO[16:3] und RQ[2:0] angelegt werden. Alternativ sind die Bussignale AHI, ALO und RQ als ein einziger Adress- und Anforderungsbus ADR[19:0] aufgelistet. Fachleuten ist klar, dass die dargestellte Zuordnung nur Beispielcharakter hat und dass zahlreiche andere Zuordnungskonfigurationen möglich sind und von der Erfindung in Betracht gezogen werden. Die Daten des Adressbusses A (d. h. die Signale A[35:3]) werden während der Anforderungsphase A als Adresssignale "AA" abgebildet, und während der Anforderungsphase B als "AB". In ähnlicher Weise werden die Anforderungsdaten (REQ[4:0]) während der Anforderungsphase A als Anforderungsdaten "REQA" abgebildet, und während der Anforderungsphase B als "REQB".
  • Während der Phase A der Double-Pumped-Anforderungstransaktion übertragen die Busse AHI, ALO und RQ (oder der Bus ADR) gemeinsam die Daten der Adresssignale AA[33:32, 30, 16:3] und die Daten der Anforderungssignale REQA[2:0] für das Anforderungspaket A. Die Busse AHI, ALO und RQ (oder der Bus ADR) übertragen gemeinsam die Daten der Adresssignale AA[35:34, 31], ein Paritätssignal APA (nicht dargestellt), die Daten der Adresssignale AA[29:17] und die Daten der Anforderungssignale REQA[4:3] für das Anforderungspaket B. Man beachte, dass das Signal RQ[2] für das Paket B nicht definiert oder anderweitig auf einen voreingestellten Pegel gesetzt wird. Dies ist in Tabelle 400 mit einem Strich "–" dargestellt. Während der Phase B übertragen die Busse AHI, ALO und RQ (oder der Bus ADR) gemeinsam die Daten der Adresssignale AB[33:32, 16:3] und die Daten der Anforderungssignale REQB[2:0] für das Anforderungspaket C. Die Busse AHI, ALO und RQ (oder der Bus ADR) übertragen gemeinsam die Daten der Adresssignale AB[35:34, 31], ein Paritätssignal APB, die Daten der Adresssignale AB[29:17] und die Daten der Anforderungssignale REQB[4:3] für das Anforderungspaket D. Wiederum ist das Signal RQ[2] für das Paket D nicht definiert oder wird anderweitig auf einen voreingestellten Pegel gesetzt. Anders formuliert überträgt der ALO-Bus die Daten der untersten 14 Adressbits während der Pakete A und C (d. h., AA[16:3] und AB[16:3]), und er überträgt die Daten der nächsten untersten 13 Adressbits und ein Paritätsbit während der Pakete B und D (d. h., AA[29:17] & APA und AB[29:17] & APB). Der AHI-Bus überträgt die Daten der drei oberen Bits während der Pakete A und C (z. B. AA[33:32, 30] und AB[[33:32, 30]), und er überträgt die Daten der verbleibenden drei oberen Bits während der Pakete B und D (z. B. AA[35:34, 31] und AB[[35:34, 31]). Der RQ-Bus überträgt die Daten der unteren drei Anforderungsbits während der Pakete A und C (d. h. REQA[2:0] und REQB[2:0]), und er überträgt die Daten der verbleibenden oberen zwei Anforderungsbits während der Pakete B und D (d. h. REQA[4:3] und REQB[4:3]).
  • In dem Mikroprozessor-Schnittstellensystem 100, das den Double-Pumped- Adressmodus verwendet, enthalten die Adresssignale A[35:3] die 33-Bit-Adresse der Transaktion, und die Anforderungssignale REQ[4:0] enthalten die Art der im Paket A geforderten Transaktion. Die Adresssignale A[35:3] liefern im Paket B die Attribute der Transaktion, und die Anforderungssignale REQ[4:0] die Transaktionslänge. Im Gegensatz dazu kann für einen Quad-Pumped-Modus gemäß einer Ausführungsform der Erfindung die 33-Bit-Adresse von den Adresssignalen AHI[2:0] und ALO[16:3] geliefert werden, und der 5-Bit-Transaktionstyp wird von den Anforderungssignalen RQ[2:0] in den Paketen A und B der Phase A geliefert. Das Attribut der Transaktion wird von den Adresssignalen AHI[2:0] und ALO[16:3] geliefert, und die Transaktionslänge wird von den Anforderungssignalen RQ[2:0] in den Paketen C und D der Phase B geliefert. Zusätzliche Bits kann man je nach Wunsch oder Bedarf definieren. Wird beispielsweise eine 37-Bit-Adresse verwendet (z. B. A[39:9]), so können dem AHI-Bus zwei zusätzliche Bits zugefügt werden (z. B. AHI[4:0]), um die gleiche Adresse zu übertragen.
  • 5 zeigt ein vereinfachtes Blockdiagramm eines Mikroprozessor-Schnittstellensystems 500, das einen Systembus 505 mit einer Quad-Pumped-Adresssignalgruppe gemäß einer Ausführungsform der Erfindung enthält. Das Mikroprozessor-Schnittstellensystem 500 enthält einen Mikroprozessor 501 und einen Busagenten 503, der über eine Schnittstelle am Systembus 505 liegt. Der Busagent 503 repräsentiert jede beliebige Anzahl unterschiedlicher Busagenten, wie dies oben für den Busagenten 103 beschrieben ist. Die Busse DATA, DSTBP, DSTBN und RS sind zusammen mit den Signalen DBSY, DRDY und BCLK[1:0] enthalten und arbeiten im Wesentlichen so, wie es beim herkömmlichen Mikroprozessor-Schnittstellensystem 100 beschrieben ist. Zusätzlich enthält der Mikroprozessor 501 eine Adressbus-Konfigurationslogik 507, und der Busagent 503 enthält die Adressbus-Konfigurationslogik 509. Die Adressbus-Konfigurationslogiken 507 und 509 stellen jeweils Schnittstellen für die Busse AHI, ALO und RQ (oder den ADR-Bus) und die Adressimpulssignale ADSTBP und ADSTBN her, damit Quad-Pumped-Anforderungsadresstransaktionen möglich sind, wie sie anhand von 3 und 4 beschrieben sind. Im Einzelnen werden Speicheradressen und Transaktionsanforderungsparameter für die Transaktionen über die bidirektionalen Busse AHI, ALO und RQ (oder den ADR-Bus) geliefert. Zusätzlich bieten die Signale der Busse AHI, ALO und RQ (oder des ADR-Busses) den Typ der Transaktion, der herkömmlicherweise über einen Anforderungsbus wie im herkömmlichen Mikroprozessor-Schnittstellensystem 100 gefordert wird, und der wie anhand von 4 beschrieben auf verschiedene Quad-Pumped-Adresspakete A, B, C, D abgebildet wird. Die Adressimpulse ADSTBP und ADSTBN dienen zum Zwischenspeichern zugehöriger Anforderungsdatenpakete während eines einzigen Zyklus von BCLK[1:0], siehe 3.
  • 6 zeigt ein Blockdiagramm einer Adressbus-Konfigurationslogik 601, die man dazu verwenden kann, die Adressbus-Konfigurationslogik 507 und/oder die Adressbus-Konfigurationslogik 509 gemäß einer beispielhaften Ausführungsform der Erfindung zu implementieren. Die Adressbus-Konfigurationslogik 601 enthält mindestens einen Eingang, an den ein Quad-Pumped-Adresskonfigurations-Freigabesignal QPADDR geliefert wird. Die Adressbus-Konfigurationslogik 601 stellt Eingänge und Ausgänge bereit, an die die Double-Pumped-Adresssignalgruppe A[35:3], ADSTB[1:0], REQ[4:0] angeschlossen ist, bzw. an die eine Quad-Pumped-Signalgruppe AHI[2:0], ALO[16:3], RQ[2:0] ADSTBP, ADSTBN gekoppelt ist. Ist bei Betrieb QPADDR gesetzt, so arbeitet eine Transaktionsanforderungsphase wie anhand von 35 beschrieben über die Quad-Pumped-Adresssignalgruppe. Ist QPADDR nicht gesetzt, so arbeitet eine Transaktionsanforderungsphase wie anhand von 12 beschrieben über die Double-Pumped-Adresssignalgruppe.
  • In einer Ausführungsform ist der Mikroprozessor 501 (und/oder der Busagent 503) mit einer verringerten Anzahl Anschlussstifte konfiguriert, wobei die Adressbus-Konfigurationslogik 507 (und/oder 509) die Adress- und Anforderungssignale auf den Bussen AHI, ALO und RQ (oder dem ADR-Bus) multiplext. Wahlweise ist der Mikroprozessor 501 (und/oder der Busagent 503) mit einem vollständigen Satz Anschlussstifte konfiguriert, so dass die Adressbus-Konfigurationslogik 507 (und/oder 509) entsprechend der Adressbus-Konfigurationslogik 601 konfiguriert ist, die gemäß einer Ausführungsform der Erfindung das Umschalten zwischen dem herkömmlichen Double-Pumped-Adressmodus und einem Quad-Pumped-Adressmodus ermöglicht. Die mit dem Systembus 505 verbundenen Vorrichtungen können so konfiguriert sein, dass sie stets im Quad-Pumped-Adressmodus arbeiten (z. B. durch feste Verdrahtung, durchgebrannte Widerstände usw.). Sie können auch so konfiguriert sein, dass der Betriebsmodus ausgehandelt wird, beispielsweise während der Initialisierung (z. B. Einschalten oder Zurücksetzen). In einer Ausführungsform legt beispielsweise der Mikroprozessor 501 ein oder mehrere Systembussignale (z. B. Adresssignale) an, und der Busagent 503 legt ein oder mehrere weitere Systembussignale während des Herstellens der Busverbindung (Bus-Strapping) an, um den Quad-Pumped-Adressmodus zu fordern. Der Quad-Pumped-Adressmodus kann gewählt werden, falls alle Vorrichtungen auf dem Systembus 505 den Quad-Pumped-Adressmodus unterstützen und diesen Modus während des Herstellens der Busverbindung aushandeln.
  • Fachleute wissen, dass man Signale mit anderen Signalen zusammenlegen kann, und dass man sie anders Abbilden kann als dies hier beschrieben ist. In einer Ausführungsform enthält die Adressbus-Konfigurationslogik 507, 509 und 601 Logik, Schaltungen und/oder Mikrocode. In einer anderen Ausführungsform enthält die Adressbus-Konfigurationslogik einen Durchbrennwiderstand, der während der Fertigung durchgebrannt wird, um eine bestimmte Adressbuskonfiguration zu erzeugen. In anderen Ausführungsformen werden Festwertspeicher, ein Mal beschreibbare Speicher usw. in Betracht gezogen.
  • 7 zeigt eine Skizze einer Tabelle 700, die eine Signalübereinstimmungsabbildung zwischen dem Double-Pumped-Adressmodus und dem Quad-Pumped-Adressmodus gemäß einer Ausführungsform der Erfindung für eine Systemvorrichtung (Mikroprozessor oder Busagent) erläutert, die beide Adressmodi unterstützt. Wie dargestellt werden die Signale REQ[2:0] des Double-Pumped-Modus auf die Signale RQ[2:0] (oder die Signale ADR[2:0]) des Quad-Pumped-Modus abgebildet. Die Signale REQ[4:3] des Double-Pumped-Modus werden nicht abgebildet, da sie im Quad-Pumped-Modus nicht verwendet werden. Die Signale A[16:3] des Double-Pumped-Modus werden auf die Signale ALO[16:3] (oder die Signale ADR[16:3]) des Quad-Pumped-Modus abgebildet. Das Signal A[30] des Double-Pumped-Modus wird auf das Signal AHI[0] (oder das Signal ADR[17]) des Quad-Pumped-Modus abgebildet. Die Signale A[18:17] des Double-Pumped-Modus werden auf die Signale AHI[2:1] (oder die Signale ADR[18:17]) des Quad-Pumped-Modus abgebildet. Die Signale A[34:31, 29:19] des Double-Pumped-Modus werden nicht abgebildet, da sie im Quad-Pumped-Modus nicht verwendet werden. Das Impulssignal ADSTB[0] wird auf das Signal ADSTBP abgebildet. Das Signal ADSTB[1] wird hingegen nicht abgebildet. Statt dessen ist gezeigt, dass das Signal A[35] des Double-Pumped-Modus auf das Signal ADSTBN des Quad-Pumped-Modus abgebildet wird.
  • Fachleuten ist geläufig, dass man die Signale auch anders abbilden kann, als dies hier dargestellt und beschrieben ist. Obgleich es beispielsweise möglich ist, das Signal ADSTB[1] auf das Signal ADSTBN abzubilden, können Fachleute erkennen, dass es einfacher ist, das Signal ADSTBN auf irgendeines der unbenutzten Adresssignale A[35:31] oder A[29:19] abzubilden. In verschiedenen Ausführungsformen kann man die Signale ADR[19:0], ADSTBN und ADSTBP auf irgendeine beliebige Kombination der Signale REQ[4:0], A[35:3] und ADSTB[1:0] abbilden.
  • Obwohl die Erfindung mit zahlreichen Einzelheiten anhand gewisser bevorzugter Ausführungsformen beschrieben ist, sind andere Versionen und Varianten möglich und werden in Betracht gezogen.

Claims (11)

  1. Mikroprozessor (501), umfassend: einen Systemtaktstift, der ein Bustaktsignal (BCLK[1:0]) empfängt; eine erste Anzahl Adressstifte und eine erste Anzahl Anforderungsstifte; eine zweite Anzahl Adressstifte und eine zweite Anzahl Anforderungsstifte; und eine Adressbus-Konfigurationslogik (601), umfassend einen Freigabeeingang, der ein Freigabesignal (QPADDR) empfängt, wobei die Logik die erste Anzahl Adressstifte und die erste Anzahl Anforderungsstifte anspricht, damit eine Quad-Pumped-Abwicklung erfolgt, wenn das Freigabesignal (QPADDR) angelegt wird, und die Logik die erste und zweite Anzahl Adressstifte und die erste und zweite Anzahl Anforderungsstifte anspricht, damit eine Double-Pumped-Abwicklung erfolgt, wenn das Freigabesignal (QPADDR) nicht angelegt wird, wobei die Adressbus-Konfigurationslogik (601) eine Anzahl Anforderungspakete an die erste Anzahl Adressstifte anlegt, und zwar für jede Phase einer Anzahl Phasen eines Zyklus des Bustaktsignals (BCLK[1:0]).
  2. Mikroprozessor (501) nach Anspruch 1, worin die Adressbus-Konfigurationslogik (601) während einer ersten Phase des Zyklus des Bustaktsignals (BCLK[1:0]) erste und zweite Adressdaten und erste und zweite Anforderungsdaten an die erste Anzahl Adressstifte und die erste Anzahl Anforderungsstifte anlegt, und die Logik während einer zweiten Phase des Zyklus des Bustaktsignals (BCLK[1:0]) dritte und vierte Adressdaten und dritte und vierte Anforderungsdaten an die erste Anzahl Adressstifte und die erste Anzahl Anforderungsstifte anlegt.
  3. Mikroprozessor (501) nach Anspruch 2, worin die erste Anzahl Adressstifte ein erstes Adressimpulssignal umfassen, das zum Zwischenspeichern der ersten und der dritten Adress- und Anforderungsdaten verwendet wird, und ein zweites Adressimpulssignal, das zum Zwischenspeichern der zweiten und vierten Adress- und Anforderungsdaten verwendet wird.
  4. Mikroprozessor (501) nach Anspruch 2, worin die ersten und zweiten Adressdaten gemeinsam eine Adresse einer Abwicklung enthalten, und die ersten und zweiten Anforderungsdaten gemeinsam einen Typ der Abwicklung enthalten, und die dritten und vierten Adressdaten gemeinsam ein Attribut der Abwicklung enthalten, und die dritten und vierten Anforderungsdaten gemeinsam eine Länge der Abwicklung enthalten.
  5. Mikroprozessor (501) nach Anspruch 1, wobei die Quad-Pumped-Abwicklung das Anlegen einer ersten Anzahl von Anforderungspaketen an die erste Anzahl Adressstifte umfasst, und zwar für jede Phase einer ersten Anzahl von Phasen eines Zyklus des Bustaktsignals (BCLK[1:0]).
  6. Mikroprozessor (501) nach Anspruch 5, wobei die Double-Pumped-Abwicklung das Anlegen einer zweiten Anzahl von Anforderungspaketen an die erste und zweite Anzahl Adressstifte umfasst, und zwar für jede Phase einer zweiten Anzahl von Phasen eines Zyklus des Bustaktsignals (BCLK[1:0]).
  7. Verfahren zum Ausführen einer Abwicklung auf einem Systembus (505), umfassend: das Aushandeln zwischen einer Anzahl von Vorrichtungen, die mit dem Systembus (505) verbunden sind, ob der Systembus in einem Double-Pumped-Adressmodus oder einem Quad-Pumped-Adressmodus betrieben wird; das Anweisen der Adressbus-Konfigurationslogik (601) innerhalb einer oder mehrerer Vorrichtungen der Anzahl Vorrichtungen, im Quad-Pumped-Adressmodus zu arbeiten, und das Ausführen der Abwicklung, umfassend: das Anlegen eines ersten Anforderungspakets an den Systembus (505) während eines ersten Abschnitts einer ersten Phase eines Zyklus eines Systembustakts (BCLK[1:0]); das Anlegen eines zweiten Anforderungspakets an den Systembus (505) während eines zweiten Abschnitts der ersten Phase des Zyklus des Systembustakts (BCLK[1:0]); das Anlegen eines dritten Anforderungspakets an den Systembus (505) während eines ersten Abschnitts einer zweite Phase des Zyklus des Systembustakts (BCLK[1:0]); und das Anlegen eines vierten Anforderungspakets an den Systembus (505) während eines zweiten Abschnitts der zweiten Phase des Zyklus des Systembustakts (BCLK[1:0]).
  8. Verfahren nach Anspruch 7, zudem umfassend: das Anlegen eines ersten Adressimpulses zum Zwischenspeichern der ersten und dritten Anforderungspakete; und das Anlegen eines zweiten Adressimpulses zum Zwischenspeichern der zweiten und vierten Anforderungspakete.
  9. Verfahren nach Anspruch 7, wobei das Anlegen eines ersten Anforderungspakets und das Anlegen eines zweiten Anforderungspakets gemeinsam das Anlegen von ersten Adressdaten und ersten Anforderungsdaten während der ersten Phase des Zyklus des Systembustakts (BCLK[1:0]) umfasst, und das Anlegen eines dritten Anforderungspakets und das Anlegen eines vierten Anforderungspakets gemeinsam das Anlegen von zweiten Adressdaten und zweiten Anforderungsdaten während der zweiten Phase des Zyklus des Systembustakts (BCLK[1:0]) umfasst.
  10. Verfahren nach Anspruch 9, wobei das Anlegen von ersten Adressdaten das Anlegen einer Adresse einer Abwicklung umfasst, und das Anlegen von ersten Anforderungsdaten das Anlegen eines Typs der Abwicklung umfasst, und das Anlegen von zweiten Adressdaten das Anlegen eines Attributs der Abwicklung umfasst, und das Anlegen von zweiten Anforderungsdaten das Anlegen einer Länge der Abwicklung umfasst.
  11. Verfahren nach Anspruch 7, wobei das Anlegen eines ersten Anforderungspakets und das Anlegen eines zweiten Anforderungspakets das Multiplexen erster Adressdaten auf den Systembus (505) umfasst, und das Anlegen eines dritten Anforderungspakets und das Anlegen eines vierten Anforderungspakets das Multiplexen zweiter Adressdaten auf den Systembus (505) umfasst.
DE602006000750T 2005-07-11 2006-04-03 Vorrichtung und Verfahren für einen Adressbus mit vierfacher Übertragungsrate Active DE602006000750T2 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US369896 2003-02-20
US69815005P 2005-07-11 2005-07-11
US698150P 2005-07-11
US11/369,896 US7502880B2 (en) 2005-07-11 2006-03-07 Apparatus and method for quad-pumped address bus

Publications (2)

Publication Number Publication Date
DE602006000750D1 DE602006000750D1 (de) 2008-04-30
DE602006000750T2 true DE602006000750T2 (de) 2009-04-09

Family

ID=36992764

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602006000750T Active DE602006000750T2 (de) 2005-07-11 2006-04-03 Vorrichtung und Verfahren für einen Adressbus mit vierfacher Übertragungsrate

Country Status (4)

Country Link
US (1) US7502880B2 (de)
EP (1) EP1750201B1 (de)
DE (1) DE602006000750T2 (de)
TW (1) TWI320890B (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7502880B2 (en) * 2005-07-11 2009-03-10 Via Technologies, Inc. Apparatus and method for quad-pumped address bus
US20080086594A1 (en) * 2006-10-10 2008-04-10 P.A. Semi, Inc. Uncacheable load merging
US9158691B2 (en) 2012-12-14 2015-10-13 Apple Inc. Cross dependency checking logic

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4796232A (en) * 1987-10-20 1989-01-03 Contel Corporation Dual port memory controller
US5255378A (en) * 1989-04-05 1993-10-19 Intel Corporation Method of transferring burst data in a microprocessor
US5537624A (en) * 1991-02-12 1996-07-16 The United States Of America As Represented By The Secretary Of The Navy Data repacking circuit having toggle buffer for transferring digital data from P1Q1 bus width to P2Q2 bus width
US5640517A (en) * 1993-06-22 1997-06-17 Dell Usa, L.P. Method and apparatus for masters to command a slave whether to transfer data in a sequential or non-sequential burst order
US5561780A (en) * 1993-12-30 1996-10-01 Intel Corporation Method and apparatus for combining uncacheable write data into cache-line-sized write buffers
US5644788A (en) * 1994-10-28 1997-07-01 Cyrix Corporation Burst transfers using an ascending or descending only burst ordering
US6470405B2 (en) 1995-10-19 2002-10-22 Rambus Inc. Protocol for communication with dynamic memory
EP0782079A1 (de) * 1995-12-18 1997-07-02 Texas Instruments Incorporated Stoss-Zugriff in Datenverarbeitungssystemen
US5960453A (en) 1996-06-13 1999-09-28 Micron Technology, Inc. Word selection logic to implement an 80 or 96-bit cache SRAM
US5901298A (en) * 1996-10-07 1999-05-04 Intel Corporation Method for utilizing a single multiplex address bus between DRAM, SRAM and ROM
US5835741A (en) * 1996-12-31 1998-11-10 Compaq Computer Corporation Bus-to-bus bridge in computer system, with fast burst memory range
US5919254A (en) * 1997-06-25 1999-07-06 Intel Corporation Method and apparatus for switching between source-synchronous and common clock data transfer modes in a multiple processing system
US5915126A (en) 1997-08-12 1999-06-22 International Business Machines Corporation Computer system memory controller and method of burst data ordering translation
US5944806A (en) * 1997-09-26 1999-08-31 Hewlett-Packard Company Microprocessor with versatile addressing
US6012116A (en) * 1997-12-31 2000-01-04 Sun Microsystems, Inc. Apparatus and method for controlling data, address, and enable buses within a microprocessor
US6275904B1 (en) 1998-03-31 2001-08-14 Intel Corporation Cache pollution avoidance instructions
US6356270B2 (en) * 1998-03-31 2002-03-12 Intel Corporation Efficient utilization of write-combining buffers
US6405280B1 (en) 1998-06-05 2002-06-11 Micron Technology, Inc. Packet-oriented synchronous DRAM interface supporting a plurality of orderings for data block transfers within a burst sequence
US6311245B1 (en) * 1998-06-05 2001-10-30 Micron Technology, Inc. Method for time multiplexing a low-speed and a high-speed bus over shared signal lines of a physical bus
US6434654B1 (en) * 1999-03-26 2002-08-13 Koninklijke Philips Electronics N.V. System bus with a variable width selectivity configurable at initialization
US6405285B1 (en) * 1999-06-25 2002-06-11 International Business Machines Corporation Layered local cache mechanism with split register load bus and cache load bus
US6505259B1 (en) * 1999-08-27 2003-01-07 Intel Corporation Reordering of burst data transfers across a host bridge
US6587862B1 (en) * 1999-09-07 2003-07-01 Spectral Logic Design Apparatus and method for direct digital frequency synthesis
US6523109B1 (en) * 1999-10-25 2003-02-18 Advanced Micro Devices, Inc. Store queue multimatch detection
US6609171B1 (en) 1999-12-29 2003-08-19 Intel Corporation Quad pumped bus architecture and protocol
US6414557B1 (en) * 2000-02-17 2002-07-02 Broadcom Corporation High noise rejection voltage-controlled ring oscillator architecture
US6671752B1 (en) * 2000-08-28 2003-12-30 International Business Machines Corporation Method and apparatus for bus optimization in a PLB system
DE10044799C1 (de) * 2000-09-11 2002-06-27 Clyde Bergemann Gmbh Kugelgelenk-Lagerung für eine Wasserlanze eines Wasserlanzenbläsers
US6721813B2 (en) * 2001-01-30 2004-04-13 Advanced Micro Devices, Inc. Computer system implementing a system and method for tracking the progress of posted write transactions
US6742160B2 (en) * 2001-02-14 2004-05-25 Intel Corporation Checkerboard parity techniques for a multi-pumped bus
US20030088799A1 (en) * 2001-11-05 2003-05-08 Bodas Devadatta V. Method and apparatus for regulation of electrical component temperature and power consumption rate through bus width reconfiguration
US6775759B2 (en) * 2001-12-07 2004-08-10 Micron Technology, Inc. Sequential nibble burst ordering for data
US6747657B2 (en) * 2001-12-31 2004-06-08 Intel Corporation Depth write disable for zone rendering
US6871752B2 (en) 2002-02-04 2005-03-29 Rexam Medical Packaging Inc. Rotary seal for clousure with on-stop
JP2004240713A (ja) 2003-02-06 2004-08-26 Matsushita Electric Ind Co Ltd データ転送方法及びデータ転送装置
US7206865B2 (en) * 2003-03-28 2007-04-17 Intel Corporation Apparatus and method for combining writes to I/O
US20040199723A1 (en) 2003-04-03 2004-10-07 Shelor Charles F. Low-power cache and method for operating same
US7188208B2 (en) * 2004-09-07 2007-03-06 Intel Corporation Side-by-side inverted memory address and command buses
US7502880B2 (en) * 2005-07-11 2009-03-10 Via Technologies, Inc. Apparatus and method for quad-pumped address bus

Also Published As

Publication number Publication date
EP1750201B1 (de) 2008-03-19
EP1750201A1 (de) 2007-02-07
US7502880B2 (en) 2009-03-10
TWI320890B (en) 2010-02-21
US20070011378A1 (en) 2007-01-11
DE602006000750D1 (de) 2008-04-30
TW200705198A (en) 2007-02-01

Similar Documents

Publication Publication Date Title
DE69028066T2 (de) Kombinierte synchrone und asynchrone Speichersteuerung
DE69027515T2 (de) Vorrichtung für Prioritätsarbitrierungskonditionierung bei gepufferter Direktspeicheradressierung
DE69634358T2 (de) Verzögerungsverringerung in der übertragung von gepufferten daten zwischenzwei gegenseitig asynchronen bussen
DE68922784T2 (de) Mehrfachbus-Mikrorechnersystem mit Busarbitrierung.
DE3114961C2 (de)
DE69018100T2 (de) Datenübertragung über Busadressleitungen.
DE69825915T2 (de) Verfahren und vorrichtung zur umschaltung zwischen quellen-synchron-takt/- und gemeinsam-takt-datenübertragungs-modi in einem mehragent-übertragungs-system
DE19580707C2 (de) PCI-ZU-ISA-Interrupt-Protokoll-Konverter und -Auswahlmechanismus
DE69120586T2 (de) Rechnersystem mit synchronem Bus
DE19882418B4 (de) System einer quellensynchronen Schnittstelle zwischen Master- und Slave-Einrichtungen und zugehöriges Verfahren
EP0592704B1 (de) Einrichtung für die wahlweise Datenübertragung und Dateiübertragung
DE69433130T2 (de) Rechnersystem mit verändertem lokalen Datenbus
DE19828620B4 (de) Während des Betriebs aufteilbarer Computerbus für einen verbesserten Betrieb mit sich ändernden Bustaktfrequenzen
DE112013005044T5 (de) Ausführen von eingehenden PCIE-Schreiboperationen in einen Speicher und Partnereinrichtungen per Dualcast
DE10296959T5 (de) System und Verfahren zum Steuern der Buszuteilung während Cache-Speicher-Burstzyklen
DE4018481C2 (de)
DE112013003766T5 (de) Schnelles Entzerren beim Verlassen eines Niedrigenergie-Teilbreite-Hochgeschwindigkeitsverbindungszustands
DE68924368T2 (de) Datenverarbeitungssystem mit verzögertem Cache-Schreibvorgang.
DE112008002273T5 (de) Optimale Lösung zur Steuerung von Datenkanälen
DE602006000750T2 (de) Vorrichtung und Verfahren für einen Adressbus mit vierfacher Übertragungsrate
DE69119147T2 (de) Erweiterungskarte mit mehreren Geschwindigkeiten
DE60205106T2 (de) Serielle Peripherieschnittstelle und Verwaltungsverfahren dafür
DE102005009806A1 (de) Pufferbaustein für ein Speichermodul, Speichermodul und Speichersystem
DE10061770B4 (de) Zugriffsregelung für Steuerchipsätzen bei Bustransaktion
DE3009530A1 (de) Datenverarbeitungssystem

Legal Events

Date Code Title Description
8364 No opposition during term of opposition