DE69928187T2 - System zum Anschluss eines Computers an mehreren Ein/Ausgabemitteln - Google Patents

System zum Anschluss eines Computers an mehreren Ein/Ausgabemitteln Download PDF

Info

Publication number
DE69928187T2
DE69928187T2 DE69928187T DE69928187T DE69928187T2 DE 69928187 T2 DE69928187 T2 DE 69928187T2 DE 69928187 T DE69928187 T DE 69928187T DE 69928187 T DE69928187 T DE 69928187T DE 69928187 T2 DE69928187 T2 DE 69928187T2
Authority
DE
Germany
Prior art keywords
data
fifo
pci
memory
stream
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.)
Expired - Lifetime
Application number
DE69928187T
Other languages
English (en)
Other versions
DE69928187D1 (de
Inventor
Uoc H. Long Beach Nguyen
Otto Huntington Beach Sperber
Khanh Q. Irvine Tran
David K. West Hills Bovaird
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.)
Xerox Corp
Original Assignee
Xerox Corp
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 Xerox Corp filed Critical Xerox Corp
Publication of DE69928187D1 publication Critical patent/DE69928187D1/de
Application granted granted Critical
Publication of DE69928187T2 publication Critical patent/DE69928187T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Record Information Processing For Printing (AREA)
  • Bus Control (AREA)

Description

  • Die vorliegende Erfindung betrifft Peripheriegeräte an einem gemeinsamen Bus und legt speziell ein System zum Anschließen eines Computers an eine Vielzahl von E/A-Einrichtungen offen.
  • Das Dokument US 5,677,644 (Silverbrook u. a.) vom 14. Oktober 1997 legt ein Peripheriegerät offen, das an einen Datenbus angeschlossen ist, wobei das Gerät an DMA-Übertragungen beteiligt ist und einen FIFO und einen Adressgenerator umfasst. Der Industrienorm-PCI-Bus (Peripheral Component Interconnect) verbindet einen Computer mit den anderen Applikations-Steckkarten im System. Der Computer erhält u. a. eine CPU, einen Hauptspeicher und einen Cache-Speicher, die alle über einen Schnittstellen-Chip mit FIFO an den Bus angeschlossen sind, wobei es sich jeweils um handelsübliche Standardkomponenten handelt. Bei einer „post write"-Übertragung von einer beliebigen Komponente am PCI-Bus zum Hauptspeicher verschickt die Komponente die Adresse, in die die Daten geschrieben werden sollen, und lädt die Daten in den FIFO. Anschließend kann die Komponente mit einer anderen Aktivität fortfahren, wobei davon ausgegangen wird, dass die Daten schließlich über DMA-Übertragung in den Hauptspeicher gelangen. Bei einem „read" oder „pre-fetch"-Vorgang muss die Komponente zuerst die Adresse im Speicher angeben, aus der die Daten kommen müssen, und anschließend so lange warten, bis die Daten aus dem FIFO verfügbar sind. Wenn der Computer weiß, welche Daten die Komponente benötigt, kann bei einem "Pre-fetch" zum Beschleunigen dieses Vorgangs der FIFO im Voraus geladen werden.
  • Um einen schnellen Farbdrucker anzutreiben, der vier Farben druckt, müssen vier E/A-Ports vorhanden sein, die Daten mit hoher Geschwindigkeit vom Hauptspeicher des Computers über ein FIFO-Register im Schnittstellen-Chip zum Drucker zu transportieren. Dabei ist es dieser einzige FIFO – zusammen mit den Anforderungen der CPU und des Speicherprotokolls –, der den Datendurchsatz begrenzt. Der Chip-Satz sollte so modifiziert werden, dass für jede Farbe des Druckers ein zusätzlicher FIFO vorhanden ist. Allerdings ist der gesamte Computer-Chip-Satz ein Industriestandard, so dass eine Abwandlung des Chip-Satzes keine Alternative darstellt. Es stellt sich folglich die Frage, wie das System so modifiziert werden kann, dass ein höherer Datendurchsatz ermöglicht wird.
  • Entsprechend der vorliegenden Erfindung umfasst ein System mit einem Datenbus zum Anschluss eines Computers an eine Vielzahl von E/A-Einrichtungen des Weiteren:
    eine zusätzliche Speichereinrichtung, die an den Bus angeschlossen ist, um einen zusätzlichen Weg für die Datenübertragung zwischen dem Computer und den E/A-Einrichtungen bereitzustellen, wobei die zusätzliche Speichereinrichtung aufweist:
    einen Speicher und
    eine Anzahl von DMA-Kanälen, wobei jeder Kanal eine Datenspeichereinrichtung zum Übertragen von Daten zwischen dem Speicher und dem Bus umfasst, wobei jede Datenspeichereinrichtung:
    • a. zu einer E/A-Einrichtung gehört und
    • b. dazu ausgelegt ist, die Adresse des Speicherplatzes zu berechnen, auf die von der dazugehörigen E/A-Einrichtung zugegriffen wird.
  • Wir schaffen somit eine Modifizierung an einer standardmäßigen PCI-Datenbusanordnung, die einen schnellen Drucker antreibt, wodurch eine höhere Datenrate ermöglicht wird, indem ein zusätzlicher Busspeicher und dessen E/A am Bus in die Lage versetzt werden, als Mittler zwischen dem CPU-Hauptspeicher und den an den Drucker angeschlossenen E/A-Ports zu fungieren.
  • Bei der Herstellung von Dokumentkopien wird das Dokument zuerst von dem CPU-Hauptspeicher mit einer niedrigeren FIFO-Geschwindigkeit zu dem zusätzlichen Speicher-Untersystem übertragen und anschließend mit höherer Busgeschwindigkeit auf dem PCI-Bus vom Speicher-Untersystem zu den Drucker-E/A-Ports gesendet.
  • Natürlich ist in beiden Fällen die zum Übertragen des gesamten Dokuments vom Computerspeicher benötigte Zeit durch die Geschwindigkeit des FIFOs begrenzt, so dass sich scheinbar kein Vorteil ergibt, wenn dem System ein Speicher-Untersystem hinzugefügt wird. Dies trifft allerdings nur auf die erste Kopie zu. Wenn der Drucker mehr als eine Kopie anfertigt, wird die für jede zusätzliche Kopie benötigte Zeit viel geringer, da die Übertragung nur über den schnelleren Bus vom Speicher-Untersystem zu den Drucker-Ports erfolgt.
  • Wenn jedoch in der Praxis der Drucker zusätzliche Kopien von einem aktuellen Dokument anfertigt und der Computer ansonsten nicht weiter ausgelastet ist, kann der Computer die nächsten Dokumente bereits in das Speicher-Untersystem laden. Somit werden vom Drucker alle Kopien des Dokuments über den PCI-Bus aus dem Speicher-Untersystem empfangen, und die Daten können je nach Bedarf des Druckers in Echtzeit zugeführt werden.
  • Ein Beispiel eines erfindungsgemäßen Systems wird nun anhand der beiliegenden Zeichnung beschrieben, worin:
  • 1 ein Blockdiagramm des Systems zeigt.
  • 1 zeigt die Anordnung sämtlicher Komponenten, die an den PCI-Bus 10 angeschlossen sind. Der Industriestandard-Computer 11 hat eine CPU, einen Hauptspeicher und einen FIFO und besteht aus einem Chip oder einem Chipsatz. Andere typische Komponenten sind an den Bus angeschlossen, zum Beispiel ein Platten-E/A-Modul 12. Diese Komponenten können als Master oder Slave betrachtet werden. Die Master verfolgen die Speicheradressen während der Lese- und Schreibvorgänge, während die Slaves dies nicht tun. Folglich fordert ein Slave eine Datenmenge an, die bei einer Startadresse im Speicher beginnt, und erwartet, diese in der richtigen Reihenfolge zu erhalten. Der Master greift auf die Datenblöcke zu und überträgt sie und verfolgt die Speicheradresse, so dass die Daten in der richtigen Reihenfolge gesendet werden. Vier Drucker-E/A-Karten 13, jeweils eine pro Farbe, bilden Master-Komponenten und sind direkt wie in der Abbildung am Drucker 14 befestigt.
  • Zu diesen Standardkomponenten hinzugefügt ist ein Speicher-Untersystem 20, das über den PCI-Bus-Master 24 mit einer Reihe von FIFOs 23, in diesem Beispiel acht, an den Bus angeschlossen ist, wobei vier den Vier-Drucker-E/A-Karten 13 zugeordnet sind, bei denen es sich um Slave-Komponenten handelt. Wenn die Drucker E/A-Einrichtung Daten in das Speicher-Untersystem 20 schreiben soll, gibt sie eine Start-Speicherstelle im Speicher-Untersystem an und stellt den Datenblock in den FIFO. Anschließend kann die E/A etwas anderes tun, während die Daten mittels DMA zum Speicher-Untersystem übertragen werden. Wenn die E/A-Einrichtung Daten empfangen muss, sendet sie ebenfalls die Adresse des Blocks und wartet so lange, bis die Daten in den FIFO geladen sind. Daraufhin werden die Daten aus dem FIFO im Burst-Modus zur E/A-Einrichtung gesendet. Das Speicher-Untersystem 20 und die FIFOs 23 sind über einen internen Bus 22 angeschlossen.
  • Wenn sich der PCI-Bus-Master 24 im Zugriffsstatus befindet oder andere Informationen vorliegen, erfolgt ein direkter Lesevorgang eines Wortes, eines halben Wortes oder eines Bytes, was nicht im Burst-Modus stattfindet. Wenn die Statusinformationen zahlreicher sind und mehrere Worte umfassen, kann der Burst-Modus zum Einsatz kommen. Dies wird als Burst Random Access bezeichnet. Wenn Bilddaten gedruckt werden sollen, findet dies normalerweise in Form von sehr vielen sequentiellen Daten statt, und der Burst-Modus wird aufgenommen.
  • Bei dem Beispiel aus 1 werden acht Hochgeschwindigkeitsdatenströme aktiviert. Ein Datenstrom wird als PCI-Schreibstrom zum Speichern von Daten in dem Speicher-Untersystem definiert und ein PCI-Lesestrom zum Lesen von Daten aus dem Speicher-Untersystem. Ein Datenstrom wird durch die Übertragungsrichtung (PCI-Schreib- oder -Lesestrom), einen Bereich von 512 bis 4 MByte und eine Startadresse definiert. Es werden aufeinander folgende Daten aufgenommen. Deshalb werden von den FIFOs 23 aktuelle Adressbits beibehalten. Weiterhin verfügt die Implementierung über den PCI-Konfigurationsspeicher, der für das Plug & Play erforderlich ist. Die Implementierung entspricht der PCI-Spezifikation Version 2.x und darüber.
  • Als zusätzliche Form der Datenüberprüfung hat der PCI-Master einen PCI-Adressbereichskomparator 25, in dem im Speicher-Untersystem ein Adressbereich für die Daten gespeichert ist, die von jeder Drucker-E/A-Karte 13 oder zu ihr übertragen werden können. Bevor die Übertragung zugelassen wird, wird jede Adresse im Hinblick auf ihre Richtung und Position überprüft.
  • Nun folgt eine genauere Beschreibung der Erfindung:
  • 1. PCI-Schreibströme
  • Wenn ein PCI-Master einen Burst-Schreibvorgang in das Speicher-Untersystem vornimmt,
    • a. wird die PCI-Adresse mit den Adressen der acht Bereiche verglichen, um festzustellen, ob die Adresse UND die Richtung mit den Programmierten identisch sind,
    • b. werden die Daten im Strom-FIFO gepuffert, das heißt sämtliche Schreibvorgänge werden eingegeben (posted). Die PCI-Adresse wird jedoch nicht zwischengespeichert.
    • c. Ausnahmen
    • – Wenn der FIFO am Anfang des PCI-Burst-Vorgangs voll ist, wird an den PCI-Initiator ein Wiederholungsversuchszyklus (Retry) ausgegeben. Es könnte auch eine Abschalt-Rückmeldung (Disconnect Acknowledge) zum Einsatz kommen; es wird jedoch davon ausgegangen, dass der PCI-Master mit der gleichen Adresse zurückkommt.
    • – Wenn der FIFO in der Mitte des PCI-Burst-Schreibvorgangs voll wird, wird eine Ziel-nicht-bereit-Rückmeldung (Target-not-Ready Acknowledge) oder die Disconnect-Rückmeldung ausgegeben. Wenn von dem Chip die Rückmeldung Ziel-nicht-bereit ausgegeben wird, hält der gesamte PCI-Bus so lange an, bis der Speicher-Schreibvorgang einsetzt und einige Daten den Strom-FIFO verlassen haben. Wenn eine Disconnect-Rückmeldung ausgegeben wird, gibt der PCI-Bus-Master den PCI-Bus frei und kommt später mit der gleichen Adresse wie zuvor zurück.
    • d. Meist erfolgt das Schreiben in den Speicher zu einem späteren Zeitpunkt und ist von der PCI-Übertragung abgekoppelt.
  • Die Richtung wird zusammen mit der Adresse ebenfalls überprüft, da es denkbar ist, dass zwei Ströme den gleichen Adressbereich, aber verschiedene Richtungen haben.
  • 2. PCI-Leseströme
  • Alle Lesestromdaten werden zuvor abgerufen (pre-fetch). Das Pre-fetching findet so lange statt, wie Platz in den internen FIFOs vorhanden ist. Wenn ein PCI-Master einen Burst-Lesevorgang an dem Speicher-Untersystem ausführt,
    • a. wird die PCI-Adresse mit den Adressen der acht Bereiche verglichen, um festzustellen, ob die Adresse UND die Richtung mit den Programmierten identisch sind,
    • b. werden Daten meist bereits in den Strom-FIFOs vorhanden sein, und der Burst-Lesevorgang findet auf dem PCI-Bus mit höchster Geschwindigkeit statt.
    • c. Ausnahmen
    • – Wenn der FIFO leer ist, wird ein erneuter Versuchszyklus an den PCI-Initiator ausgegeben. Ein Disconnect Acknowledge könnte ebenfalls verwendet werden, es wird jedoch davon ausgegangen, dass der PCI-Master mit derselben Adresse zurückkommt.
    • – Wenn der FIFO in der Mitte des PCI-Burst-Lesevorgangs leer wird, wird eine Target-not-Ready- oder eine Disconnect-Rückmeldung ausgegeben. Wenn von dem Chip Target-not-Ready ausgegeben wird, hält der gesamte PCI-Bus so lange an, bis der Speicher-Schreibvorgang einsetzt und einige Daten den Strom-FIFO verlassen haben. Wenn eine Disconnect-Rückmeldung ausgegeben wird, gibt der PCI-Bus-Master den PCI-Bus frei und kommt später mit der gleichen Adresse wie zuvor zurück.
    • d. Meistens erfolgt das Speicherlesen zu einem früheren Zeitpunkt, losgelöst von der PCI-Übertragung.
  • Das Pre-fetching basiert auf dem FIFO-Status; ein Speicher-Lesevorgang findet so lange statt, bis der FIFO voll ist.
  • 3. PCI-Nichtstrom- oder direkte Schreibvorgänge
  • (PCI Non/Stream or Random Writes)
  • Bei einem direkten PCI-Schreibvorgang (random PCI write) wird die PCI-Adresse mit den acht Adressbereichen verglichen. Wenn die Initiator-Adresse nicht unter den Adressbereichen ist, sich aber dennoch in dem dem Speicher zugewiesenen Bereich befindet, werden die Adresse und die Daten in dem Direktschreib-FIFO zwischengespeichert. Ein direkter PCI-Schreibvorgang wird immer eingegeben (posted). Das Schreiben in den Speicher erfolgt zu einem späteren Zeitpunkt, unabhängig von dem PCI-Schreibzyklus.
  • 4. PCI-Nichtstrom- oder direkte Lesevorgänge
  • (PCI Non/Stream or Random Reads)
  • Bei einem direkten PCI-Lesevorgang wird die PCI-Adresse wiederum mit den acht Adressbereichen und auch dem gesamten Bereich des Speichers verglichen. Wenn die Adresse nicht eine der Bereiche ist, sondern innerhalb des diesem Speicher zugewiesenen Bereichs liegt, wird sobald wie möglich ein Speicherzyklus gestartet. Die Daten aus dem Speicherfeld werden in den Direktlese-FIFO geschrieben und bald danach zum PCI-Bus übertragen. Bei einem Direktlesevorgang erfolgt kein Pre-fetching – anders als bei Stromlesevorgängen, die stets zuvor abgerufen werden. Während des Wartens auf direkte Lesedaten aus dem Speicher kann der Chip Folgendes ausgeben:
    • – eine PCI-Wiederholungsversuch-Rückmeldung, wobei der PCI-Bus-Master den Bus freigibt und später mit der gleichen Adresse zurückkommt, oder
    • – eine PCI-„Ziel nicht bereit"-Meldung, wobei der PCI-Bus-Master wartet und den PCI-Bus weiter in Beschlag nimmt.
  • 5. Nichtlinearer bzw. Blockübertragungsmodus
  • Mindestens zwei Ströme verfügen über diese Fähigkeit. Der Blockübertragungsmodus ist der Modus, bei dem Daten in Form eines Blocks vorliegen, zum Beispiel als Quadrat mit 32 Byte × 32 Byte oder als Rechteck mit 32 Byte × 16 Byte. Diese Datenform ist für bestimmte Bildbearbeitungsfunktionen, wie zum Beispiel das Drehen oder die JPEG-Komprimierung usw., erforderlich.
  • Die Blockgröße (Länge und Breite) ist programmierbar; die Form (quadratisch oder rechteckig) ist durch die programmierte Länge und Breite implizit definiert.
  • Wenn der Blockmodus für einen PCI-Schreibstrom programmiert ist, haben die Eingabedaten die Form einer Abtastzeile, und der Inhalt des Speichers hat eine Blockform. Der Lesestrom sollte als Nicht-Konvertierung (non-conversion) programmiert sein.
  • Wenn der Blockmodus für einen PCI-Lesestrom programmiert ist, hat der Inhalt des Speichers eine Abtastzeilenform und die Lesedaten haben eine Blockform. Der Schreibstromkanal sollte als Nicht-Konvertierung programmiert sein.
  • 6. CCB-Abruf
  • Ein verketteter Steuerblock (chained control block – CCB) entsteht durch die Steuerbegriffe, die notwendig sind, damit der Stromkanal funktioniert. Der CCB enthält die Quellenadresse, die Zieladresse, die Richtung (Stromlese- oder -schreibvorgang), den Überragungs-Zählwert, die Paketgröße usw. Diese Informationen werden benötigt, damit der Chip das Posted Write bzw. das Pre-fetch der Stromlesedaten ausführen kann.
  • Der erste CCB eines Stromkanals wird immer von einem PCI-Bus-Master aufgestellt. Wenn der CCB verkettet programmiert ist, ruft der Chip automatisch den nächsten CCB ab und führt ihn aus. Es wird angenommen, dass die CCBs bereits von einem PCI-Bus-Master im Speicher-Untersystem gespeichert wurden. Durch zuvor definierte PCI-Direktschreibzugriffe werden die CCBs in den Speicher geschrieben.
  • Ein CCB kann ebenfalls angehalten werden, d. h. seine Ausführung hängt vom Status eines Steuerbits ab, der von einem PCI-Bus-Master eingestellt werden kann. Die CCB-Kette/Pause ist in dem XSB1- und dem XPCI-Chip implementiert.
  • DIE INTELLIGENTE SPEICHERSTEUERUNG
  • Die intelligente Speichersteuerung erledigt die folgenden Aufgaben:
    Buszuteilung für Dienstanforderungen der acht Ströme, der direkten PCI-Schreib- und/oder -Lesevorgänge und der acht CCB-Abrufanforderungen.
  • Herstellen einer Schnittstelle zu den DRAMs zum:
    • – Burst-Schreiben von Daten (Seitenmodus) aus den eingegebenen PCI-Schreib-FIFOs in den Speicher,
    • – Burst-Lesen von Daten (Seitenmodus) oder Vorabrufen (Pre-fetching) von Daten für die PCI-Lesestrom-FIFOs,
    • – direktes Schreiben oder Lesen von Daten bei PCI-Direktspeicherzugriffen,
    • – feststehenden Burst-Lesen bei CCB-Abrufanfragen der acht Ströme,
    • – Auffrischen des Speichers (Refresh/Cas-before-Ras)
  • 1. Arbitration (Buszuteilung) der Anforderungen
  • Der Arbitrator 24 empfängt als Eingabegrößen:
    • – acht Anforderungen von den acht Strom-FIFOs; diese Anforderungen sind FIFO-NotFull für die PCI-Lesestrom-FIFOs bzw. FIFONotEmpty für die PCI-Schreibstrom-FIFOs,
    • – eine Anforderung eines direkten PCI-Lesevorgangs,
    • – den FIFONotEmpty des direkten PCI-Schreib-FIFOs,
    • – acht CCB-Abrufanforderungen,
    • – den DRAM-Refresh.
  • Die Priorität der Buszuteilung sieht wie folgt aus:
    • – Anforderung für DRAM-Refresh (höchste Priorität)
    • – der ausstehende direkte PCI-Lesevorgang
    • – der FIFONotFull der PCI-Lesestrom-FIFOs
    • – der ausstehende direkte PCI-Schreibvorgang
    • – der FIFONotEmpty der PCI-Schreibstrom-FIFOs
    • – die acht CCB-Abrufanforderungen von den acht Strom-FIFOs
  • 2. DRAM-Steuerung
    • a. DRAM-Übertragungsarten
    • – Für den gesamten dazugehörigen Strom wird auf den DRAM im Seitenmodus zugegriffen, wobei die niedrigen Adressbits von dem Chip beibehalten werden; die Daten werden gespeichert oder von den Strom-FIFOs ausgelesen.
    • – Der CCB-Abruf ist ein Burst-Lesevorgang von vier feststehenden Wörtern; die Daten werden im internen CCB-Statik-RAM gespeichert.
    • – Der RAS bleibt aktiv und wird nur dann deaktiviert, wenn sich die Zeilenadresse des nächsten Zugriffs von der vorherigen unterscheidet.
    • – Die DRAM-Steuerung ist in der Lage, nicht verschachtelte sowie verschachtelte Bänke (interleaved banks) zu bearbeiten (mindestens zwei Bänke).
    • b. Physische DRAM-Schnittstellen
    • – Die DRAM-Steuerung sollte in der Lage sein, eine Schnittstelle direkt zu den verschiedenen Arten von DRAMs herzustellen, z. B. normale, EDO und Synchron-DRAMs. Nach dem Zurücksetzen ist die Art des DRAMs programmierbar.
    • – Die DRAM-Technologie ist ebenfalls programmierbar, so dass DRAMs mit 256 KBit, 1 MBit, 4 MBit oder 16 MBit verwendet werden können.
    • – Die Breite der DRAM-Schnittstelle sollte mindestens 32 Bit betragen.
  • DIREKTE OPERATIONEN IM VERGLEICH MIT STROMOPERATIONEN
  • (Random versus Stream Operations)
  • Bei der normalen PCI-Aktivität kann eine CPU direkt auf die Daten zugreifen, die sich im Strom befinden. Dabei sind zwei Probleme zu lösen:
    • 1. Wie ist zwischen einem Direktzugriff und einem Stromzugriff zu unterscheiden?
    • 2. Datenkonsistenz von Daten, die sich in einem der Strom-FIFOs im Chip befinden, wenn auf jene Daten direkt zugriffen wird.
  • 1. Unterschied zwischen Stromzugriff und Direktzugriff
  • Es gibt verschiedene Möglichkeiten, den Stromzugriff vom Direktzugriff zu unterscheiden, unter anderem durch die:
    • – Beschränkung: In den aktiven Strombereichen ist kein Direktzugriff zulässig. Ein Strom ist aktiv, wenn Daten in jenen Speicherbereich hinein oder aus diesem heraus übertragen werden. Jeglicher Zugriff auf diese aktiven Bereiche wird als Stromzugriff betrachtet.
    • – Speicherabbildung: Der Speicherplatz des Chips wird in zwei Bereiche unterteilt, einen für den Strom- und einen anderen für den Direktzugriff.
  • 1a. Unterscheidung durch Beschränkungen
  • Die CPU sollte nur auf die Daten zugreifen bzw. den Status der Stromdatenübertragung ertragen, wenn die Übertragung abgeschlossen ist.
  • Der Stromadressbereich sowie der Operationsstatus (abgeschlossen, in Arbeit, etc.) werden aus ChipO ersichtlich. Deshalb muss die CPU den Status des Stromkanals überprüfen, bevor auf die Stromdaten zugegriffen wird.
  • Die Beschränkung löst ebenfalls das Problem der Datenkonsistenz, wenn die CPU auf Daten zugreift, die sich vorübergehend in den internen FIFOs des Chips befinden.
  • Jeder Zugriff auf Daten, die sich aktuell nicht in einem der acht Bereiche der Strom-FIFOs befinden, wird als direkter Zugriff betrachtet. Der interne Adresskomparator ist in der Lage, diese Bedingung mühelos zu erkennen.
  • Wenn die Schreibadresse als direkte Adresse erkannt wird, das heißt, es ist keine aus den acht Bereichen, werden die Schreibdaten in den Direktschreib-FIFO eingegeben, und das Schreiben in den Speicher erfolgt nach der Arbitration der Anforderung.
  • Wenn die Leseadresse nicht eine von acht Bereichen ist, das heißt, sie wird als direkt erkannt, gibt es zwei Möglichkeiten:
    • a. bei einem direkten Pre-fetch-Lesevorgang: Der Chip gibt ein Retry bzw. Disconnect Acknowledge aus und stellt die benötigten Daten sobald wie möglich in den Direktlese-FIFO ein, oder
    • b. bei einem Lesevorgang ohne Vorabruf: Der Chip gibt ein Target not Ready aus und der PCI-Master muss solange warten, bis die Speicherlesedaten aus den DRAMs ausgelesen sind.
  • Wenn die direkte Lese- oder Schreibaddresse in einen der acht Stromadressenbereiche fällt, betrachtet der Chip diesen Zugriff als Stromzugriff, und die Daten werden aus dem FIFO bereitgestellt.
  • 1b. Unterscheidung durch Adressabbildung
  • Bei diesem Verfahren könnte das höchste Adressbit verwendet werden, um zwischen Strom- und direkten/E/A-Zugriffen zu unterscheiden. Tatsächlich ist der gesamte PC-Speicherplatz in zwei Räume unterteilt, in einen für Stromdaten und in einen für E/A- oder Direktzugriffe.
  • 2. Datenkonsistenz
  • Wenn softwareseitig keine Einschränkung dahingehend vorgesehen ist, wann ein PCI-Bus-Master direkt auf den Speicher zugreifen kann, muss die Frage der Datenkonsistenz gelöst werden. Es gibt zwei Hauptfälle:
    • A. Ein Direktzugriff, der dieselbe Adresse von Daten hat, die gegenwärtig in einem der acht Strom-FIFOs vorliegen.
    • B. Ein Stromzyklus, der die gleiche Adresse von Daten hat, die gegenwärtig in einem der Direktlese-Schreib-FIFOs vorliegen.
  • Der Adressvergleichsblock des Chips kann ohne weiteres erkennen, ob eine bestimmte Adresse in einen der acht Bereiche oder in einen der acht Strom-FIFOs fällt.
  • Die folgenden Fälle sind abgedeckt:
  • A. Direktzugriff mit denselben Daten, die sich bereits in Strom-FIFOs befinden.
    • 1. Einzelner direkter PCI-Schreibzugriff auf Daten, die sich bereits an folgendem Ort befinden:
    • – im Stromlese-FIFO
    • – im Stromschreib-FIFO
    • – sowohl im Stromlese- als auch -schreib-FIFO
    • 2. Einzelner direkter Lesezugriff auf Daten, die sich bereits an folgender Stelle befinden:
    • – im Stromlese-FIFO
    • – im Stromschreib-FIFO
    • – sowohl im Stromlese- als auch im -schreib-FIFO
    • 3. Direkter PCI-Burst-Schreibzugriff auf Daten, die sich bereits an folgender Stelle befinden:
    • – im Stromlese-FIFO
    • – im Stromschreib-FIFO
    • – sowohl im Stromlese- als auch im -schreib-FIFO
    • 4. Direkter PCI-Burst-Lesezugriff auf Daten, die sich bereits an folgender Stellte befinden:
    • – im Stromlese-FIFO
    • – im Stromschreib-FIFO
    • – sowohl im Stromlese- als auch im -schreib-FIFO
  • B. Stromzugriff mit denselben Daten, die sich bereits in Direktzugriffs-FIFOs befinden.
    • 1. Direkter PCI-Stromschreibzugriff auf Daten, die sich bereits an folgender Stelle befinden:
    • – im Stromlese-FIFO
    • – im Stromschreib-FIFO
    • – sowohl im Stromlese- als auch im -schreib-FIFO
    • 2. Direkter PCI-Stromlesezugriff auf Daten, die sich bereits folgender Stelle befinden:
    • – im Stromlese-FIFO
    • – im Stromschreib-FIFO
    • – sowohl im Stromlese- als auch im -schreib-FIFO
  • A. Direktzugriff mit Daten, die sich bereits im Strom-FIFO befinden:
  • a. Einzelner Nicht-Burst-PCI-Direktschreibzugriff
  • Wenn die direkte Adresse ein „Treffer" ist, d. h. es sind Daten vorhanden, die der gleichen Adresse in einem oder mehreren Strom-FIFOs entsprechen. Es gibt verschiedene Fälle:
    • – Wenn dieselben Daten auch in dem Stromlese-FIFO vorhanden sind: werden die Daten im Stromlese-FIFO aktualisiert und die PCI-Schreibdaten in den direkten Schreib-FIFO eingegeben.
    • – Wenn sich die gleichen Daten auch im Stromschreib-FIFO befinden: werden die Daten im Stromschreib-FIFO aktualisiert und das Einschreiben in den Speicher wird gelöscht. Das Aktualisieren erfolgt ohnehin zu einem späteren Zeitpunkt durch den Schreib-Strom.
    • – Wenn sich die gleichen Daten sowohl im Stromlese- als auch im -schreib-FIFO befinden:
    werden die Daten sowohl im Stromschreib- als auch im -lese-FIFO aktualisiert, und das Einschreiben in den Speicher, das dem PCI-Schreibvorgang entspricht, wird gelöscht. Die Speicherdaten werden ohnehin zu einem späteren Zeitpunkt von dem PCI-Schreibvorgang aktualisiert.
  • Anmerkung: Wenn der Direktschreib-FIFO mehr als einen eingegebenen Schreibvorgang akzeptieren kann und wenn es mehrere aufeinander folgende Schreib- und Lesevorgänge für dieselbe Adresse gibt, kann nicht garantiert werden, dass die ausgelesenen Daten die letzte Version darstellen.
  • Der Direktschreib-FIFO könnte so implementiert sein, dass nur ein Direktschreibvorgang eingegeben wird, und die Software stellt sicher, dass der eingegebene direkte Schreibvorgang ausgeführt wird, bevor ein direkter Lesevorgang an derselben Stelle stattfindet.
  • b. PCI-Burst-Direktschreibzugriff
  • Wenn die direkte Adresse ein „Treffer" ist, das heißt, es sind Daten vorhanden, die derselben Adresse in einem oder mehreren Strom-FIFOs entsprechen, dann gibt es zwei Hauptfälle:
    • i. Die Burst-Daten sind vollständig in dem Strom-FIFO enthalten:
    • – Wenn sich das gleiche Datenpaket auch in dem Strom-FIFO befindet: Das Datenpaket im Stromlese-FIFO wird aktualisiert, und die Burst-PCI-Schreibdaten werden in den Direktschreib-FIFO eingegeben.
    • – Wenn sich das gleiche Datenpaket auch in dem Stromschreib-FIFO befindet. Die Paketdaten im Stromschreib-FIFO werden aktualisiert und die Schreiboperation in den Speicher wird gelöscht. Die Aktualisierung erfolgt ohnehin später durch den Schreibstrom.
    • – Wenn sich die gleichen Daten sowohl im Stromlese- als auch im -schreib-FIFO befinden, werden die Paketdaten im Stromschreib-FIFO aktualisiert, und das Einschreiben in den Speicher, das dem PCI-Schreibvorgang entspricht, wird ge löscht. Die Speicherdaten werden ohnehin zu einem späteren Zeitpunkt von dem PCI-Schreibvorgang aktualisiert.
  • Anmerkung: Wenn der Direktschreib-FIFO mehr als einen eingegebenen Schreibvorgang akzeptieren kann und wenn es mehrere aufeinander folgende Schreib- und Lesevorgänge für dieselbe Adresse gibt, kann nicht garantiert werden, dass die ausgelesenen Daten die letzte Version darstellen.
  • Der Direktschreib-FIFO könnte so implementiert sein, dass nur ein Direktschreibvorgang eingegeben wird, und die Software stellt sicher, dass der eingegebene direkte Schreibvorgang ausgeführt wird, bevor ein direkter Lesevorgang an derselben Stelle stattfindet.
    • ii. Die Burst-Daten sind teilweise innerhalb und teilweise außerhalb des Strom-FIFOs vorhanden:
    • – Wenn sich das „Treffer"-Datenpaket auch in dem Stromlese-FIFO befindet: Der Teil, der sich mit dem Paket in dem Stromlese-FIFO überlappt, wird aktualisiert, und der gesamt Burst wird in den Direktschreib-FIFO eingegeben.
    • – Wenn sich das Datenpaket ebenfalls im Stromschreib-FIFO befindet: Der Teil, der sich mit dem Paket in dem Stromlese-FIFO überlappt, wird aktualisiert, und der gesamte Burst in den Direktschreib-FIFO eingegeben. Der Speicher-Schreibzyklus wird nicht wie im vorherigen Fall gelöscht.
    • – Wenn sich das Datenpaket sowohl im Stromlese- UND -schreib-FIFO befindet, wird der Teil, der sich mit dem Paket in beiden Strom-FIFOs überlappt, aktualisiert, und der gesamte Burst wird zum Direktschreib-FIFO geschickt. Der Speicher-Schreibzyklus wird nicht wie im vorherigen Fall gelöscht.
  • c. Einzelner (Nicht-Burst) Direkt-PCI-Lesezugriff
  • Wenn die direkte Adresse ein „Treffer" ist, das heißt, es sind Daten vorhanden, die der gleichen Adresse in einem oder mehreren Strom-FIFOs entsprechen, gibt es mehrere Fälle:
    • – Wenn die Datenadresse ein „Treffer" auf einem Stromlese-FIFO ist, das heißt, die Daten befinden sich in einem der Stromlese-FIFOs: Jene Daten werden von dem Stromlese-FIFO zum Direktlese-FIFO „kopiert" und der PCI-Direktlesevorgang geht vom Direktlese-FIFO aus. Dazu wird keine DRAM-Operation benötigt.
    • – Wenn die Datenadresse ein „Treffer" im Stromschreib-FIFO ist, werden die Daten aus dem Stromschreib-FIFO in den Direktlese-FIFO „kopiert" und der PCI- Direktlesevorgang geht von dem Direktlese-FIFO aus. Dazu wird keine DRAM-Operation benötigt.
    • – Wenn die gleichen Daten sowohl in einem der Stromlese- als auch in einem der Stromschreib-FIFOs vorhanden sind: Dieser Fall sollte nicht eintreten. Wenn die Daten sowohl in Lese- als auch in Schreib-Strömen vorhanden sind, überlappen sich die Ströme, das heißt, die Daten werden aus demselben Speicherraum ausgelesen und in diesen eingeschrieben. Wenn ein solcher Fall erkannt wird, könnte eine Fehlerunterbrechung generiert werden.
  • d. PCI-Burst-Direktlesezugriff
  • Wenn die direkte Adresse ein „Treffer" ist, das heißt, es sind Daten in einem oder mehreren Strom-FIFOs vorhanden, die derselben Adresse entsprechen, gibt es zwei Hauptfälle:
    • i. Die Burst-Daten sind vollständig in dem Strom-FIFO enthalten:
    • – Wenn sich dasselbe Datenpaket auch in dem Stromlese-FIFO befindet: Der Teil, der überlappt wird, wird aus dem Stromlese-FIFO in den Direktlese-FIFO „kopiert" und der Rest des Bursts wird aus dem Speicher ausgelesen. Die PCI-Lesedaten können zu dem PC-Bus-Master geschickt werden, unmittelbar nachdem die Daten in den Strom-FIFO verschoben wurden, und gleichzeitig wird sobald wie möglich ein Speicherlesevorgang gestartet. Wenn der nicht überlappte Teil des zu lesenden Datenpakets verspätet ist (nicht rechtzeitig aus dem Speicher in den Direktlese-FIFO geholt wird), gibt der Chip solange die Meldung „Target not Ready" aus, bis alle Daten abgerufen sind.
    • – Wenn sich das gleiche Datenpaket auch in dem Stromschreib-FIFO befindet: Der überlappte Teil des Datenpakets wird aus dem Stromschreib-FIFO in den Direktlese-FIFO „kopiert", und der PCI-Direkt-Burst-Lesevorgang kann sofort beginnen, gleichzeitig wird ein Speicherlesezyklus sobald wie möglich in Gang gesetzt. Wenn der nicht überlappte Teil des gelesenen Datenpakets verspätet ist (nicht rechtzeitig aus dem Speicher in den Direktlese-FIFO geholt wird), gibt der Chip die Meldung „Target not Ready" solange aus, bis alle Daten abgerufen sind.
    • – Wenn sich das gleiche Datenpaket sowohl in den Stromlese- UND -schreib-FIFOs befindet, wird das Datenpaket in dem Stromschreib-FIFO aktualisiert, und der Speicherschreibvorgang, der dem PCI-Schreibvorgang entspricht, wird aufgehoben. Die Speicherdaten werden zu einem späteren Zeitpunkt ohnehin durch den PCI-Stromschreibvorgang aktualisiert.
  • B. Stromzugriff mit Daten, die sich bereits im/in Direkt-FIFO(s) befinden
  • a. PCI-Stromschreibzyklus
  • Wenn die Stromschreibadresse ein „Treffer ist, das heißt, es sind Daten, die der gleichen Adresse entsprechen, in einem der beiden Direkt-FIFOs oder in beiden vorhanden. Beim Stromzugriff erfolgt der Treffer bei der Adresse nur dann, wenn die Stromdaten bereits aus dem Speicher in den Chip geholt wurden. Es gibt mehrere untergeordnete Fälle:
    • – Wenn sich die gleichen Daten auch in dem Direktlese-FIFO befinden: Die Daten, die gerade aus dem Speicher in den Stromschreib-FIFO geholt wurden, werden aktualisiert, und das PCI-Stromschreiben erfolgt wie gewöhnlich.
    • – Wenn sich die gleichen Daten auch im Direktschreib-FIFO befinden: Die Daten im Direkt-FIFO sind implizit neuer als die im Speicher. Deshalb werden die Stromdaten aus dem Speicher in den Strom-FIFO geholt und anschließend mit den Daten aus dem Direktschreib-FIFO aktualisiert.
    • – Wenn sich die gleichen Daten sowohl im Stromlese- als auch -schreib-FIFO befinden, werden die Daten sowohl im Direktschreib- als auch -lese-FIFO aktualisiert, und das PCI-Stromschreiben erfolgt wie gewöhnlich.
  • b. PCI-Stromlese-Zyklus
  • Wenn die Stromleseadresse ein „Treffer" ist, das heißt, es sind Daten, die der gleichen Adresse entsprechen, in einem der beiden Direkt-FIFOs oder in beiden vorhanden. Beim Stromzugriff erfolgt der Treffer bei der Adresse nur dann, wenn die Stromdaten bereits aus dem Speicher in den Chip geholt wurden. Es gibt mehrere untergeordnete Fälle:
    • – Wenn sich die gleichen Daten auch in dem Direktlese-FIFO befinden: Die Daten, die sich im Direkt-FIFO befinden, sind implizit älter als die Daten, die gerade durch den Stromzugriff abgerufen wurden. Deshalb werden die Daten im Direkt-FIFO mit den Daten aus dem Stromzugriff aktualisiert. Beide Zugriffe, Direkt- und Stromzugriff, laufen wie üblich ab.
    • – Wenn sich die gleichen Daten auch im Direktschreib-FIFO befinden: Die Daten im Direkt-FIFO sind implizit neuer als die im Speicher. Deshalb werden die Stromdaten aus dem Speicher in den Strom-FIFO geholt und anschließend mit den Daten aus dem Direktschreib-FIFO aktualisiert. Die beiden Zugriffe, ein Direktschreib- und ein Stromlesezugriff, laufen wie üblich ab.
    • – Wenn sich die gleichen Daten sowohl im Stromlese- als auch im -schreib-FIFO befinden, werden die Daten sowohl im Direktschreib- als auch -lese-FIFO aktualisiert, und die PCI-Zugriffe erfolgen wie gewöhnlich.

Claims (6)

  1. System mit einem Datenbus (10) zum Anschluss eines Computers (11) an eine Vielzahl von E/A-Einrichtungen (13), wobei das System des Weiteren umfasst: eine zusätzliche Speichereinrichtung, die an den Bus angeschlossen ist, um einen zusätzlichen Weg für die Datenübertragung zwischen dem Computer und den E/A-Einrichtungen bereitzustellen, wobei die zusätzliche Speichereinrichtung aufweist: einen Speicher (20), gekennzeichnet durch die Speichereinrichtung, die weiterhin aufweist: eine Anzahl von DMA-Kanälen, wobei jeder Kanal eine Datenspeichereinrichtung (23) zum Übertragen von Daten zwischen dem Speicher und dem Bus umfasst, wobei jede Datenspeichereinrichtung: a. zu einer E/A-Einrichtung gehört und b. dazu ausgelegt ist, die Adresse des Speicherplatzes zu berechnen, auf die von der dazugehörigen E/A-Einrichtung zugegriffen wird.
  2. System nach Anspruch 1, welches weiterhin umfasst: einen Arbitrator, der auf einen Befehl aus dem Computer reagiert, um festzustellen, welche Datenspeichereinrichtung Zugriff auf den Datenbus hat, so dass Daten vom Computer durch die dazugehörige Datenspeichereinrichtung zum Speicher und anschließend vom Speicher durch die dazugehörige Datenspeichereinrichtung zu der E/A-Einrichtung gelangen können.
  3. System nach Anspruch 1 oder 2, wobei: eine Datenspeichereinrichtung dazu ausgelegt ist, Daten zu erhalten, die von der dazugehörigen E/A-Einrichtung aus dem Speicher benötigt werden, bevor von der dazugehörigen E/A-Einrichtung die Datenanforderung empfangen wird.
  4. System nach einem der Ansprüche 1 bis 3, wobei: eine Datenspeichereinrichtung dazu ausgelegt ist, das Laden von Daten in den Speicher anzufordern und die Daten in die dazugehörige Datenspeichereinrichtung zu laden, bevor die Daten in den Speicher geladen werden.
  5. System nach einem der Ansprüche 1 bis 4, wobei: eine Datenanforderung aus einer E/A-Einrichtung für eine Datenübertragung in eine der beiden Richtungen eine Speicherstellenadresse umfasst, und wobei das System weiterhin einen Komparator aufweist, der die Speicheradresse prüft um festzustellen, ob sie sich innerhalb des korrekten Adressbereiches für jene E/A-Einrichtung befindet.
  6. System nach einem der vorhandenen Ansprüche, wobei: die E/A-Einrichtung Drucker-E/A-Schnittstellen umfasst.
DE69928187T 1998-08-27 1999-08-23 System zum Anschluss eines Computers an mehreren Ein/Ausgabemitteln Expired - Lifetime DE69928187T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US141398 1993-10-22
US09/141,398 US6163818A (en) 1998-08-27 1998-08-27 Streaming memory controller for a PCI bus

Publications (2)

Publication Number Publication Date
DE69928187D1 DE69928187D1 (de) 2005-12-15
DE69928187T2 true DE69928187T2 (de) 2006-06-01

Family

ID=22495527

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69928187T Expired - Lifetime DE69928187T2 (de) 1998-08-27 1999-08-23 System zum Anschluss eines Computers an mehreren Ein/Ausgabemitteln

Country Status (4)

Country Link
US (1) US6163818A (de)
EP (1) EP0982661B1 (de)
JP (1) JP2000105736A (de)
DE (1) DE69928187T2 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6515672B1 (en) * 1999-12-23 2003-02-04 Intel Corporation Managing prefetching from a data buffer
WO2002069160A2 (en) * 2001-02-28 2002-10-31 Crossroads Systems, Inc. Method and system for reconciling extended copy command target descriptor lengths
JP2005267148A (ja) * 2004-03-18 2005-09-29 Konica Minolta Business Technologies Inc メモリ制御装置
WO2006131899A2 (en) * 2005-06-09 2006-12-14 Nxp B.V. Memory controller and method for coupling a network and a memory

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5459823A (en) * 1990-07-05 1995-10-17 Canon Kabushiki Kaisha Graphics engine for true colour 2D graphics
JPH04363746A (ja) * 1990-07-06 1992-12-16 Nec Corp Dma機能を有するマイクロコンピュータシステム
CA2160499A1 (en) * 1994-11-30 1996-05-31 Patrick Maurice Bland Bridge between buses in a system having a plurality of buses with different memory addressing capacities and having an arrangement for reallocating memory segments within the system memory map
US5590377A (en) * 1995-06-07 1996-12-31 Ast Research, Inc. Automatic control of distributed DMAs in a PCI bus system supporting dual ISA buses
JP3576647B2 (ja) * 1995-08-11 2004-10-13 株式会社東芝 コンピュータシステム
US5768550A (en) * 1995-11-21 1998-06-16 International Business Machines Corporation Bus interface logic system
US5774680A (en) * 1995-12-11 1998-06-30 Compaq Computer Corporation Interfacing direct memory access devices to a non-ISA bus
US5884050A (en) * 1996-06-21 1999-03-16 Digital Equipment Corporation Mechanism for high bandwidth DMA transfers in a PCI environment
US5933654A (en) * 1996-09-24 1999-08-03 Allen-Bradley Company, Llc Dynamic buffer fracturing by a DMA controller
US5978866A (en) * 1997-03-10 1999-11-02 Integrated Technology Express, Inc. Distributed pre-fetch buffer for multiple DMA channel device
US6023738A (en) * 1998-03-30 2000-02-08 Nvidia Corporation Method and apparatus for accelerating the transfer of graphical images

Also Published As

Publication number Publication date
EP0982661B1 (de) 2005-11-09
EP0982661A1 (de) 2000-03-01
JP2000105736A (ja) 2000-04-11
DE69928187D1 (de) 2005-12-15
US6163818A (en) 2000-12-19

Similar Documents

Publication Publication Date Title
DE69834739T2 (de) Ausgleichen von daten die zwischen verschiedenen leitern fliessen die auf unterschiedlichen frequenzen operieren
DE60026539T2 (de) Ein-/ausgabeadressübersetzung in einer brücke in unmittelbarer nähe eines lokalen ein-/ausgabebuses
DE60037174T2 (de) Puffersystem für externen speicherzugriff
DE4208924B4 (de) Verfahren zur Kommunikation zwischen Prozessoren und Parallelverarbeitungscomputer hierfür
DE69233655T2 (de) Mikroprozessorarchitektur mit der Möglichkeit zur Unterstützung mehrerer verschiedenartiger Prozessoren
DE10316725B4 (de) Datenverwaltungsverfahren für ein Distributed Shared Memory-System
DE102018113447A1 (de) Speichervorrichtung zum Koppeln mit einem Host und Verfahren zum Betreiben des Hosts und der Speichervorrichtung
DE102007032307A1 (de) Dedizierter Mechanismus zur Seitenabbildung in einer GPU
CN1019236B (zh) 数字数据处理系统高速缓冲存储器内容的失效标记
DE2523372B2 (de) Eingabe-ZAusgabe-Anschlußsteuereinrichtung
DE10056827A1 (de) Duale Verwendung von Cache-Verbindungen
DE10234992A1 (de) Retry-Mechanismus für blockierende Schnittstellen
DE10219623A1 (de) System und Verfahren zur Speicherentscheidung unter Verwendung von mehreren Warteschlangen
DE112012004926B4 (de) Gemeinsame Speichernutzung durch Prozessoren
DE10030148A1 (de) Brückenvorrichtung
DE19882975B4 (de) Zugreifen auf eine Nachrichtenaustauscheinheit von einem sekundären Bus aus
DE602004010399T2 (de) Neuadressierbare virtuelle dma-steuer und statusregister
DE2828741A1 (de) Einrichtung fuer die weiterleitung von speicherzugriffsanforderungen
DE202017103915U1 (de) Zweiphasige Befehlspuffer zum Überlappen von IOMMU-Abbildung und Lesevorgängen zweitrangiger Datenspeicher
DE69928187T2 (de) System zum Anschluss eines Computers an mehreren Ein/Ausgabemitteln
DE19782017B4 (de) Verfahren und Computersystem zur Durchführung einer Burst-Leseoperation eines Bus-Masters aus einem Systemspeicher
EP0075714A2 (de) Onchip Mikroprozessorcachespeicher und Verfahren zu seinem Betrieb
DE4114053A1 (de) Computersystem mit cachespeicher
DE3832758C2 (de) Verfahren zum Adressieren eines im Rückschreib-Modus betriebenen virtuellen Cache-Speichers
EP0782739B1 (de) Controller zur aufbereitung von kodierten bildinformationen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition