DE19681711B4 - Intelligente I/O-Schaltung zum Verbinden einer mit einem ersten Busprotokoll kompatiblen Einrichtung mit einem externen Bus - Google Patents

Intelligente I/O-Schaltung zum Verbinden einer mit einem ersten Busprotokoll kompatiblen Einrichtung mit einem externen Bus Download PDF

Info

Publication number
DE19681711B4
DE19681711B4 DE19681711T DE19681711T DE19681711B4 DE 19681711 B4 DE19681711 B4 DE 19681711B4 DE 19681711 T DE19681711 T DE 19681711T DE 19681711 T DE19681711 T DE 19681711T DE 19681711 B4 DE19681711 B4 DE 19681711B4
Authority
DE
Germany
Prior art keywords
bus
intelligent
configuration
circuit
local processor
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
DE19681711T
Other languages
English (en)
Other versions
DE19681711T1 (de
Inventor
Byron Phoenix Gillespie
Marc Tempe Goldschmidt
Terry Gilbert Sych
Bruce Tigard Young
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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of DE19681711T1 publication Critical patent/DE19681711T1/de
Application granted granted Critical
Publication of DE19681711B4 publication Critical patent/DE19681711B4/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
    • 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/10Program control for peripheral devices
    • G06F13/105Program control for peripheral devices where the programme performs an input/output emulation function
    • 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/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/404Coupling between buses using bus bridges with address mapping

Abstract

Intelligente I/O-Schaltung (9) zum Verbinden einer Einrichtung (15), die nach einem ersten Busprotokoll arbeiten kann, mit einem ein zweites Busprotokoll aufweisenden externen Bus (7), wobei die intelligente I/O-Schaltung (9) mehrere Konfigurationsregister zum Speichern von Konfigurationsinformationen aufweist, wobei die intelligente I/O-Schaltung aufweist:
a) einen lokalen Prozessorbus (13) mit dem ersten Busprotokoll;
b) eine mit dem lokalen Prozessorbus (13) gekoppelte Speichersteuereinrichtung (25) zur Steuerung des Zugriffes auf einen lokalen Speicher (27), wobei der lokale Speicher enthält:
erste Programmittel zum Übersetzen eines Zweites-Busprotokoll-Konfigurationszyklus in einen Erstes-Busprotokoll-Konfigurationszyklus und wobei die Erstes-Busprotokoll-Konfigurationszyklen für die Einrichtung (15) verständlich sind;
zweite Programmittel zur Lieferung geeigneter Handshake-Signale zu dem externen Bus (7);
dritte Programmittel, zum Überprüfen, daß die mehreren Konfigurationsregister von einem externen Busteilnehmer gemäß einer vorgegebenen Hardware-Abbildung modifiziert wurden, wobei die Abbildung von dem zweiten Busprotokoll definiert ist, und zum Wiederherstellen derjenigen Register, die unter Verletzung der Hardware-Abbildung modifiziert worden sind, wobei...

Description

  • Die vorliegende Erfindung betrifft intelligente I/O-Schaltungen.
  • Die WO 95/34861 A1 beschreibt eine Brücken-Schaltung zum verbinden eines EISA-Bus mit einem SCSI-Bus. Die Schaltung weist einen Mikroprozessor auf und ermöglicht durch dessen Steuerung einen blockierungsfreien Datenaustausch zwischen den Bustypen.
  • Aus der WO 95/34065 A2 ist eine Verbindungsschaltung für den Anschluss einer IDE-Erweiterungskarte an einem PCI-Erweiterungssteckplatz bekannt.
  • 1 zeigt ein Computersystem gemäß dem Stand der Technik mit einer Anzahl verschiedener Einrichtungen. Bei diesem Computersystem ist eine erste PCI-kompatible Einrichtung (z.B. eine von einer ersten Firma, FIRMA1, hergestellte SCSI-Steuereinrichtung) mit einem primären PCI-Bus gekoppelt. Eine PCI/PCI-Brücke sorgt für eine Schnittstelle zwischen dem primären PCI-Bus und einem sekundären PCI-Bus. Eine derartige PCI/PCI-Brücke ist z.B. aus der US 5712986 A bekannt. Eine weitere PCI-kompatible Einrichtung (z.B. eine von einer zweiten Firma, FIRMA2, hergestellte zweite SCSI-Steuereinrichtung) ist mit diesem sekundären PCI-Bus gekoppelt.
  • Eine mit dem primären Bus gekoppelte PCI-Bus/lokaler Prozessorbus-Brücke (z.B. eine von PLX Technologies, Inc. hergestellte PLX 9036 oder 9060) schafft eine Schnittstelle zwischen dem primären PCI-Bus und einem lokalen Prozessor bus. Eine (von einer dritten Firma, FIRMA3, hergestellte) SCSI-Steuereinrichtung ist mit dem lokalen Prozessorbus gekoppelt und ist mit dem lokalen Prozessorbusprotokoll kompatibel. Jedoch ist die von der FIRMA3 hergestellte SCSI-Steuereinrichtung nicht mit dem PCI-Bus kompatibel.
  • Es gibt verschiedene Nachteile dieses Computersystems. Zunächst benötigt jede dieser drei SCSI-Steuereinrichtungen bei diesem Beispiel einen separaten Treiber (d.h. diese Einrichtungen werden von verschiedenen Befehlen gesteuert, welche in einem speziellen Befehlssatz für jede Steuereinrichtung definiert sind). Beispielsweise weist die SCSI-Steuereinrichtung der FIRMA1 einen FIRMA1-Treiber auf; die SCSI-Steuereinrichtung der FIRMA2 weist ihren eigenen separaten FIRMA2-Treiber auf, und die SCSI-Steuereinrichtung der FIRMA3 weist ihren einzigartigen FIRMA3-Treiber auf. Ein bestimmter Treiber steuert nur die diesem Treiber zugeordnete Einrichtung. Umgekehrt versteht eine bestimmte Einrichtung nur den zu dieser Einrichtung gehörigen Treiber. Obwohl die Einrichtung ähnliche Funktionen ausführen kann, ist ein Treiber von einem Hardware-Anbieter spezifisch für von diesem Anbieter hergestellte Einrichtungen. Obwohl die von der FIRMA1 und FIRMA2 hergestellten SCSI-Steuereinrichtungen beide PCI-kompatible Einrichtungen sind, versteht die SCSI-Steuereinrichtung der FIRMA2 die von dem Treiber für die SCSI-Steuereinrichtung der FIRMA1 verwendeten Befehle nicht und umgekehrt.
  • Zweitens übersetzt der bekannte Brücken (z.B. PLX 9036)-Chip nur PCI-Buszyklen in lokale Prozessorbuszyklen und umgekehrt. Beispielsweise enthält die PLX 9036 Konfigurationsregister, auf die ein Hostprozessor zugreifen kann, wenn der Hostprozessor einen Kofigurationszyklus für die PLX 9036 einleitet. Jedoch sind mit dem lokalen Prozessorbus gekoppelte Einrichtungen keine wahren PCI-Einrichtungen. Beispielsweise ist die von der FIRMA3 hergestellte SCSI-Steuer einrichtung nicht PCI-kompatibel und wird nicht einmal in dem PCI-Adreßraum erkannt.
  • Außerdem erfordert bei bekannten Computersystemen die Anbindung einer Einrichtung an den (primären oder sekundären) PCI-Bus (d.h. um die Einrichtung PCI-kompatibel zu gestalten) eine komplexe Schnittstellenschaltung. Üblicherweise ist diese Schnittstellenschaltung eine anwendungsspezifische integrierte Schaltung (ASIC), welche die elektrischen Anforderungen, die Busprotokollanforderungen und den Konfigurationsraum implementiert, wie sie in dem PCI-Busprotokoll angegeben sind. Diese Schnittstellenschaltung, welche üblicherweise in eine anwendungsspezifische integrierte Schaltung (ASCI) integriert ist, ist im allgemeinen kostspielig im Design und in der Herstellung und verbraucht physikalischen Platz entweder auf einer Grundplatine oder einer I/O-Karte.
  • Dementsprechend ist es Aufgabe der Erfindung, eine intelligente I/O-Schaltung zur Verfügung zu stellen, welche in einer intelligenten Multifunktionsbrücke integriert ist, welche eine nicht PCI-kompatible Einrichtung mit einem PCI-Bus verbindet und eine virtuelle Funktion für den PCI-Bus derart emuliert, daß eine von einer Firma hergestellte nicht PCI-kompatible Einrichtung von einem Treiber einer von einer anderen Firma hergestellten PCI-kompatiblen Einrichtung gesteuert werden kann.
  • Diese Aufgabe wird erfindungsgemäß durch eine intelligente I/O-Schaltung mit den Merkmalen des Anspruchs 1 bzw. des Anspruch 4, des Anspruchs 10 oder des Anspruchs 11 gelöst.
  • KURZE ZUSAMMENFASSUNG DER ERFINDUNG
  • Gemäß einem Aspekt der Erfindung wird eine intelligente I/O-Schaltung zur Verfügung gestellt, um eine nicht PCI- kompatible Einrichtung über eine intelligente Brückeneinrichtung mit mehreren Funktionen mit einem PCI-Bus zu verbinden. Das PCI-Busprotokoll benötigt einen definierten Satz von Konfigurationsregistern für alle Funktionen, welche sich auf dem Bus befinden. Die vorliegende Erfindung stellt ein Verfahren und eine Einrichtung zur Verfügung, um den PCI-Konfigurationsadreßraum für eine Multifunktions-PCI-Einrichtung direkt in den Adreßraum eines anderen, konventionelleren Busses auf der Rückseite der Multifunktionseinrichtung abzubilden. Die vorliegende Erfindung ermöglicht es, daß Register auf dem Rückseitenbus für alle acht Funktionen, welche in einer einzigen Multifunktions-PCI-"Einrichtung" gemäß der Definition des PCI-Busprotokolls vorhanden sein können, in den PCI-Konfigurationsraum abgebildet werden.
  • Ein Adreßübersetzer ist zwischen dem PCI-Bus und einem lokalen Prozessorbus angeordnet, um PCI-Adressen in lokale Prozessoradressen zu übersetzen und umgekehrt. Es wird eine mit dem primären PCI-Bus gekoppelte Einrichtungsauswahlerfassungsschaltung zur Verfügung gestellt, um zu erfassen, ob ein Konfigurationszyklus auf den PCI-Bus für jene bestimmte Einrichtung ist. Sobald erfaßt wird, daß der aktuelle Konfigurationszyklus für jene Einrichtung ist, benachrichtigt diese Einrichtungsauswahlerfassungsschaltung eine Konfigurationssteuereinrichtung. Diese Konfigurationssteuereinrichtung entaktiviert den Adreßübersetzer, so daß Zugriffe eines Busmasters auf den primären PCI-Bus blockiert werden. Die Konfigurationssteuereinrichtung signalisiert außerdem einem Interrupt-Generator, daß er ein Interrupt an einen lokalen Prozessor erzeugen soll, welcher mit dem lokalen Prozessorbus gekoppelt ist. Die Konfigurationssteuereinrichtung befiehlt außerdem einem "Versuche erneut"-Generator, PCI-Wiederholungszyklen an den PCI-Bus in dem Fall anzulegen, daß ein Host oder ein anderer PCI-Busmaster an dem PCI-Bus einen Zugriff auf den lokalen Prozessorbus versucht.
  • Gemäß einem anderen Aspekt der Erfindung wird ein Verfahren und eine Einrichtung zur Verfügung gestellt, um virtuelle Funktionen in einer PCI-Multifunktionseinrichtung zur Verfügung zu stellen. Ein mit dem lokalen Prozessorbus gekoppelter lokaler Prozessor wird mit Hilfe von Emulationssoftware in die Lage versetzt, andere existierende PCI-Einrichtungen zu emulieren.
  • Bei einer beispielhaften Ausführungsform ist die PCI-Multifunktionseinrichtung ein Intel 80960 RP-Chip (hier als der "P2P" bezeichnet). Immer wenn der P2P einen Konfigurationszyklus sieht, während sein IDSEL# angelegt ist, bildet der P2P den Konfigurationszyklus in Speicheradressen auf dem lokalen Prozessorbus ab. Eine mit dem lokalen Bus gekoppelte Speichersteuereinrichtung dekodiert den Offset in dem Konfigurationsraum und antwortet dementsprechend für eine ausgewählte Funktion (d.h. schreibt und liest die entsprechende Hardwareabbildung des Konfigurationsraumes für eine bestimmte Funktion). Die Speichersteuereinrichtung unterbricht dann den lokalen Prozessor, welcher wiederum den Konfigurationsraum liest und dementsprechend antwortet.
  • Ein mit dem lokalen Prozessorbus gekoppelter lokaler Speicher speichert Emulationssoftware für die Übersetzung eines Befehlssatzes einer PCI-Einrichtung in einen Befehlssatz einer alternativen, anderen PCI-Einrichtung. Außerdem enthält dieser lokaler Speicher zusätzliche Software, welche sicherstellt, daß bestimmte für eine bestimmte Funktion vorgesehene, geschützte Abschnitte des Konfigurationsraumes (d.h. die 256-Byte-Hardwareabbildung für jede Funktion) nicht von einem Host-Prozessor oder einem anderen PCI-Master an dem primären PCI-Bus überschrieben werden. Der lokale Prozessor (z.B. der Intel 80960 JF) kann in irgendeinen Abschnitt des 2-Kilobyte-Fensters des Konfigurationsraumes schreiben, da er eine virtuelle PCI-Funktion emuliert. Wenn jedoch ein Hostprozessor in einen geschützten Abschnitt des Konfigurationsraumes geschrieben hat, stellt der lokale Prozessor, welcher diese Korrektursoftware ausführt, die richtigen Werte (d.h. die vorherigen Werte) in dem Konfigurationsraum wieder her.
  • Außerdem liefert bei einer beispielhaften Ausführungsform ein in dem lokalen Speicher gespeicherter Softwarecode dem primären PCI-Bus die richtigen Handshake-Signale, um eine Instruktion oder einen Befehl zu beenden.
  • Folglich stellt die Erfindung ein Verfahren und eine Einrichtung zur Verfügung, um eine nicht PCI-kompatible Einrichtung mit einem PCI-Bus zu verbinden, und außerdem ein Verfahren und eine Einrichtung, um virtuelle Funktionen über die PCI-Multifunktionseinrichtung zur Verfügung zu stellen. Andere Merkmale und Vorteile der Erfindung sind der folgenden detailllierten Beschreibung und den beigefügten Zeichnungen zu entnehmen.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegende Erfindung ist mit Hilfe der im folgenden gegebenen detaillierten Beschreibung und der zugehörigen Zeichnungen der bevorzugten Ausführungsbeispiele der Erfindung besser zu verstehen, wobei die Ausführungsbeispiele jedoch nicht dazu dienen sollen, die Erfindung auf die speziellen Ausführungsbeispiele zu beschränken, sondern lediglich der Erläuterung und dem Verständnis dienen.
  • 1 zeigt ein bekanntes Computersystem.
  • 2 zeigt ein Blockschaltbild, welches ein Computersystem veranschaulicht, in dem die vorliegende Erfindung implementiert sein kann.
  • 3 zeigt ein Blockschaltbild, welches die Komponenten einer PCI-kompatiblen Multifunktionseinrichtung zeigt.
  • 4 zeigt ein Ausführungsbeispiel der vorliegenden Erfindung.
  • 5 zeigt die von der vorliegenden Erfindung verwendeten Verarbeitungsschritte.
  • 6 zeigt ein alternatives Ausführungsbeispiel der vorliegenden Erfindung.
  • 7 zeigt die von der Schaltung in der Speichersteuereinrichtung zur Erzeugung des Chipauswahlsignals ausgeführten Verarbeitungsschritte.
  • 8 zeigt die von der Schaltung in der Speichersteuereinrichtung zur Erzeugung des Ausgabefreigabesignals ausgeführten Schritte.
  • 9 zeigt die von der Schaltung in der Speichersteuereinrichtung zur Erzeugung eines Schreibfreigabesignals ausgeführten Schritte.
  • 10 zeigt die von der vorliegenden Erfindung verwendeten Verarbeitungsschritte, um virtuelle Funktionen über eine intelligente Multifunktionsbrücke zur Verfügung zu stellen.
  • Unter Bezugnahme auf die Figuren werden nun beispielhafte Ausführungsformen der Erfindung beschrieben. Die beispielhaften Ausführungsformen sollen die Aspekte der Erfindung veranschaulichen und sollen nicht als Beschränkung des Schutzumfangs der Erfindung aufgefaßt werden. Die beispielhaften Ausführungsformen sind in erster Linie unter Bezugnahme auf Blockschaltbilder oder Flußdiagramme beschrieben. Im Hinblick auf die Flußdiagramme sei angemerkt, daß jeder Block in den Blockdiagrammen sowohl einen Verfahrensschritt als auch ein Einrichtungselement zur Ausführung des Verfahrensschrittes repräsentiert. Je nach der Implementierung kann das zugehörige Einrichtungselement als Hardware, Software, Firmware oder als Kombination davon realisiert werden.
  • 2 zeigt ein Blockschaltbild eines Computersystems, in dem die Lehre der vorliegenden Erfindung realisiert werden kann. Ein Hostprozessor 3 ist mit einem Chipsatz 5 gekoppelt, welcher eine Speichersteuereinrichtung, eine Cache-Steuereinrichtung und eine Hostbus/PCI-Bus-Brücke enthält. Ein Hauptspeicher (z.B. DRAMs) 4 ist zur Speicherung von Programmen vorgesehen, welche von dem Hostprozessor 3 ausgeführt werden. Der Hauptspeicher 4 ist mit dem Chipsatz 5 gekoppelt, und Zugriffe auf den Hauptspeicher 4 werden von der Speichersteuereinrichtung in dem Chipsatz 5 gesteuert.
  • Der Chipsatz 5 ist mit einem primären PCI-Bus 7 gekoppelt. Dieser primäre PCI-Bus 7 kann eine Anzahl von PCI-kompatiblen Einrichtungen, beispielsweise eine Einrichtung 8, versorgen.
  • Eine intelligente Brücke 9 (z.B. der Intel 80960 RP-Chip, welcher hier als "P2P" bezeichnet wird) ist mit dem primären PCI-Bus 7 und einem sekundären PCI-Bus 11 gekoppelt. Der P2P bietet dem Computersystem eine Reihe von Funktionen (d.h. der P2P ist eine PCI-Multifunktionseinrichtung). Zunächst übersetzt der P2P 9 PCI-Buszyklen auf dem primären PCI-Bus 7 in entsprechende PCI-Zyklen auf dem sekundären PCI-Bus 11 und umgekehrt. Zweitens übersetzt der P2P 9 PCI-Buszyklen in Zyklen des lokalen Prozessorbusses 13 und umgekehrt, und zwar über einen Adreßübersetzer, welcher im folgenden detaillierter beschrieben wird. Der P2P 9 enthält außerdem einen Prozessor, welcher dazu dient, Eingabe- und Ausgabe(I/O)-Operationen zu bearbeiten. Der P2P-Chip enthält außerdem einen lokalen Bus 13 (z.B. den Intel-80960-Prozessorbus 13). Eine nicht PCI-kompatible Einrichtung 15 kann mit dem lokalen Prozessorbus 13 gekoppelt sein.
  • Der sekundäre PCI-Bus 11 enthält ebenfalls mehrere PCI-kompatible Einrichtungen, wie Einrichtung 12.
  • 3 zeigt als Blockschaltbild die Hauptkomponenten des P2P 9, sofern sie die vorliegende Erfindung betreffen. Wie im Vorangegangenen bemerkt, koppelt eine PCI/PCI-Brücke 21 den primären PCI-Bus 7 mit dem sekundären PCI-Bus 11. Ferner übersetzt die PCI/PCI-Brücke 21 PCI-Buszyklen auf dem primären PCI-Bus 7 in Buszyklen auf dem sekundären PCI-Bus 11 und umgekehrt. In der Konfiguration, in der dem P2P 9 2 Kilobyte Konfigurationsraum zugewiesen sind, sind der PCI/PCI-Brücke 21 256 zusammenhängende Bytes (welche der Funktion 0 entsprechen) innerhalb des 2-Kilobyte-Fensters zugeteilt.
  • Eine Adreßübersetzungseinheit (ATU) 23, welche üblicherweise die Funktion 1 hat, wenn der P2P-Prozessor 9 konfiguriert wird, verbindet den primären PCI-Bus 7 mit dem lokalen Prozessorbus 13. Eine Speichersteuereinrichtung 25 koppelt einen lokalen Speicher 27 mit dem lokalen Prozessorbus 13 und steuert Speicherzugriffe in den und aus dem lokalen Speicher 27.
  • Ein lokaler Prozessor 29 (z.B. ein Intel 80960 JF) ist ebenfalls mit dem lokalen Prozessorbus 13 gekoppelt. Dieser lokale Prozessor 29 führt in dem lokalen Speicher 27 gespeicherte Programme aus und weist üblicherweise ein spezielles Betriebssystem auf, welches auf die Bearbeitung eines Eingabe/Ausgabe(I/O)-Befehlssatzes (d.h. von I/O-Befehlen) zugeschnitten ist.
  • Wie im Vorangegangenen bemerkt, kann eine nicht PCI-kompatible Einrichtung 15 mit dem lokalen Prozessorbus 13 gekoppelt sein. Obwohl diese Einrichtung 15 mit dem Protokoll des lokalen Prozessorbusses 13 kompatibel sein muß (z.B. kompatibel mit dem Prozessorbusprotokoll des Intel 80960), ermöglicht es die vorliegende Erfindung, daß diese nicht PCI-kompatible Einrichtung 15 als PCI-kompatible Einrichtung funktioniert und dem Hostprozessor 3 und jedem beliebigen anderen PCI-Busmaster an dem primären PCI-Bus 7 oder dem sekundären PCI-Bus 11 als PCI-kompatible Einrichtung erscheint.
  • 4 zeigt ein Ausführungsbeispiel der vorliegenden Erfindung, bei dem die Hauptaspekte der vorliegenden Erfindung in der ATU 23 implementiert sind.
  • Bei diesem Ausführungsbeispiel enthält die ATU 23 einen Adreßübersetzer 35, welcher die PCI-Buszyklen von dem primären PCI-Bus 7 für den lokalen Prozessorbus 13 übersetzt und umgekehrt. Oft werden bei diesem Übersetzungsprozeß lediglich die oberen Bits der Adresse eines Buszyklus auf dem primären PCI-Bus ersetzt.
  • Die vorliegende Erfindung enthält bei der Implementierung in der ATU 23 außerdem einen Einrichtungsauswahldetektor 37, welcher mit dem primären PCI-Bus 7 gekoppelt ist, um ein IDSEL#-Signal und die beiden niedrigeren Bits der Adresse (d.h. AD[1 : 0]) von dem primären PCI-Bus 7 zu empfangen. Wenn das IDSEL#-Signal angelegt ist und die beiden niedrigeren Bits 00 sind (d.h. AD[1 : 0] = 00), erkennt der P2P 9, daß der aktuelle PCI-Konfigurationszyklus für diese Einrichtung bestimmt ist.
  • Sobald der Einrichtungsauswahldetektor 37 erfaßt, daß der PCI-Konfigurationszyklus für den P2P 9 ist, benachrichtigt er eine Konfigurationssteuereinrichtung 39, daß der P2P 9 ausgewählt ist. Der Einrichtungsauswahldetektor 37 schreibt außerdem ein vorgegebenes Bitmuster in ein Modusregister 41. Dieses Bitmuster zeigt dem lokalen Prozessor 29 an, daß der Hostprozessor 3 diesen vorliegenen PCI-Konfigurationszyklus eingeleitet hat. Der Einrichtungsauswahldetektor 37 entaktiviert außerdem den Adreßübersetzer 35, so daß Adressen von dem primären PCI-Bus 7 solange nicht in Adressen des lokalen Prozessorbusses 13 übersetzt werden, bis der Adreßübersetzer 35 erneut aktiviert wird.
  • Die Konfigurationssteuereinrichtung 39 steuert einen Interrupt-Generator 43. Der mit dem lokalen Prozessorbus 13 gekoppelte Interrupt-Generator 43 erzeugt ein Interrupt an den lokalen Prozessor 29. Die Konfigurationssteuereinrichtung 39 steuert außerdem den "Versuche erneut"-Generator 45. Der "Versuche erneut"-Generator 45 legt einen "Versuche er neut"-Zyklus an den primären PCI-Bus 7 an, so daß ein lokaler Prozessor genügend Zeit hat, um den Status der Konfigurationsregister des P2P 9 zu überprüfen und zu überprüfen, daß nur die autorisierten Bits geändert wurden.
  • Wenn von dem lokalen Prozessor festgestellt wird, daß bestimmte geschützte Felder in dem Konfigurationsraum von dem Hostprozessor geändert wurden, und zwar unter Verletzung des PCI-Konfigurationsraum-Hardwareabbildungsprotokolls, wie es in der PCI-Busprotokoll-Veröffentlichung 2.1 definiert ist, führt der lokale Prozessor in dem lokalen Speicher 27 gespeicherte Korrektursoftware aus.
  • Das PCI-Busprotokoll definiert die Organisation der Konfigurationsraumregister für jede PCI-kompatible Einrichtung und legt jeder Einrichtungsfunktion eine spezielle Satzstruktur oder Schablone (d.h. Hardwareabbildung) auf dem 256-Byte-Raum auf. Dieser Konfigurationsraum ist in einen vordefinierten Kopfteilbereich und in einen einrichtungsabhängigen Bereich unterteilt. Der einrichtungsabhängige Bereich enthält einrichtungsspezifische Informationen. Die PCI-kompatible Einrichtung implementiert diejenigen Register, welche für diese Anwendung erforderlich und relevant sind.
  • Der vordefinierte Kopfteilbereich enthält Felder, welche die Einrichtung einzigartig identifizieren und es der Einrichtung ermöglichen, artmäßig gesteuert zu werden. Der vordefinierte Kopfteilbereich des Konfigurationsraumes ist in zwei Bereiche unterteilt. Die ersten 16 Bytes sind für alle Einrichtungsarten gleich definiert. Die verbleibenden Bytes können je nach der von der Einrichtung unterstützten Basisfunktion unterschiedliche Layouts aufweisen. Ein (beim Offset 0Eh angeordnetes) Kopfteiltypfeld definiert, welches spezielle Layout zur Verfügung gestellt wird.
  • Alle PCI-kompatiblen Einrichtungen behandeln Konfigurationsraum-Schreiboperationen an reservierte Register als Nicht-Operationen. Mit anderen Worten, der Zugriff wird auf dem Bus normal beendet, und die Daten werden gelöscht. Lesezugriffe auf reservierte oder nicht implementierte Register werden normal beendet, und ein Datenwert von 0 wird zurückgegeben.
  • Figure 00140001
    TABELLE 1
  • Tabelle 1 zeigt das Layout eines vordefinierten Kopfteilbereichs des Typs 00h des 256-Byte-Konfigurationsraums. Einrichtungen ordnen beliebige einrichtungsspezifische Register hinter diesem vorgegebenen Kopfteil in dem Konfigurationsraum an. Alle PCI-kompatiblen Einrichtungen unterstützen die Lieferanten-ID-, Einrichtungs-ID-, Befehls-, Status, Revisions-ID-, Klassencode- und Kopfteiltyp-Felder in dem Kopfteil. Wahlweise können je nach der Funktionalität der Einrichtung andere Register in einem vordefinierten Kopfteil des Typs 00h implementiert werden (d.h. sie können als reservierte Register behandelt werden.). Wenn eine Einrichtung eine Funktion unterstützt, die ein Register betrifft, implementiert die Einrichtung dieses an dem definierten Ort und mit der definierten Funktionalität.
  • Für weitere Informationen betreffend den Konfigurationsraumkopfteil, seine verschiedenen Felder und eine Beschreibung jedes dieser Felder wird auf die "PCI Local Bus Specification", überarbeitete Ausgabe 2.1, Kapitel 6, Seiten 185–218 verwiesen.
  • Da die Erfassung und Korrektur eines möglichen Fehlers in den Konfigurationsregistern wenigstens mehrere PCI-Buszyklen erfordert, sieht die vorliegende Erfindung den "Versuche erneut"-Generator vor, um solange neue primäre PCI-Buszugriffe auf den P2P 9 zu blockieren, bis der Status der Konfigurationsregister überprüft ist.
  • 5 zeigt die von diesem Ausführungsbeispiel der vorliegenden Erfindung verwendeten Verarbeitungsschritte. Vor der Ausführung der folgenden Verarbeitungsschrittes wird eine Kopie des Konfigurationsraumes (d.h. aller Konfigurationsregister) angefertigt. Diese Kopie soll sicherstellen, daß der Konfigurationsraum wiederhergestellt werden kann, wenn eine unautorisierte Schreiboperation indem Konfigurationsraum aufgetreten ist. Die in 5 dargestellten Verarbeitungsschritte beginnen, wenn ein Host oder ein anderer Busmaster einen Konfigurationszyklus an den primären PCI-Bus 7 anlegt. Als zweites erfaßt ein Einrichtungsauswahldetektor 37 den PCI-Konfigurationszyklus (Verarbeitungsschritt 30).
  • Danach übersetzt der Adreßübersetzer 35 diesen PCI-Konfigurationszyklus in den Adreßraum des lokalen Prozessorbusses 13 (d.h. die lokalen Speicheradressen) (Verarbeitungsschritt 32). Die vorliegende Erfindung führt den Buszyklus dann auf dem lokalen Bus aus (Verarbeitungsschritt 34). Dieser Buszyklus kann eine Schreiboperation in den Konfigurationsraum (d.h. ein Modifizierbefehl) oder ein Lesezyklus (d.h. ein Lese-Konfigurationsraum-Befehl) sein. Nach der Ausführung des Buszyklus auf dem lokalen Bus beendet die vorliegende Erfindung den PCI-Konfigurationszyklus auf dem PCI-Bus.
  • Die vorliegende Erfindung aktiviert dann den "Versuche erneut"-Mechanismus (Verarbeitungsschritt 35). Der "Versuche erneut"-Generator 45 entaktiviert den Adreßübersetzer 35 und legt für alle nachfolgenden Zugriffsanforderungen für den lokalen Prozessorbus 13 einen "Versuche erneut"-Zyklus an den primären PCI-Bus 7. Der "Versuche erneut"-Generator 45 blockiert Zugriffe auf den sekundären PCI-Bus nicht, da der "Versuche erneut"-Generator 45 lediglich Zugriffe auf den Raum des lokalen Prozessorbusses blockiert.
  • Ein "Versuche erneut"-Zyklus zeigt dem Hostprozessor an, daß die Zieleinrichtung zu dieser Zeit nicht bereit ist, die Anforderung oder den Befehl zu verarbeiten. Der "Versuche erneut"-Zyklus ist kein Fehler oder keine Unterbrechung, da er den Hostprozessor instruiert, es zu einer späteren Zeit erneut zu versuchen.
  • Als nächstes unterbricht der Interrupt-Generator 43 den lokalen Prozessor 29 (Verarbeitungsschritt 46), welcher wiederum den Prüf- und Korrekturprogrammcode ausführt, um zu überprüfen, daß die Konfigurationsregister von dem Hostprozessor 3 richtig aktualisiert wurden (Verarbeitungsschritt 47).
  • Dieser Prüfungs- und Korrekturcode (im Verarbeitungsschritt 47) paßt die Konfigurationsregister an die Hardwareabbildung des PCI-Busprotokolls an. Dieser Code wird unter Bezugnahme auf Tabelle 2 im folgenden beschrieben.
  • Viele der in dem PCI-Konfigurationsraum definierten Register sind ein Gemisch von Lese/Schreib(RW)-Bits, Nur-Lese(RO)-Bits und sogar von einigen Lese-Lösche(RC)-Bits. (Ein Lese-Lösche-Bit kann dadurch gelesen oder gelöscht wer den, daß eine 1 an diese Bitposition geschrieben wird. Das Schreiben einer 0 an ein Lese-Lösche-Bit hat keine Wirkung.) Ein gutes Beispiel für diese Art von Registern sind die Befehls- und Statusregister in dem PCI-Konfigurationsraum. Da jedes dieser Register 16 Bits enthält und sie in einem einzigen 32-Bit-Doppelwort ausgerichtet sind, ist es für Software möglich, auf beide Register gleichzeitig zuzugreifen. Dieser Zugriff enthält alle drei Bittypen (d.h. RW-, RO- und RC-Bits). Die vorliegende Erfindung verwendet einen Prüfungs- und Korrekturcode (z.B. Firmware), welcher die von dem Host in das Register geschriebenen Daten untersucht und die Register richtig aktualisiert, und zwar unter Verwendung der Kopie der Originaldaten und einer Schablone, welche zeigt, welche Bits von welchem Typ sind. Tabelle 2 zeigt das Format eines beispielhaften Status/Befehlsregisters.
  • Figure 00180001
    TABELLE 2
  • Die Firmware enthält eine Maske, welche zeigt, welche Bits RC-Bits sind (F1000000h) und eine Maske, welche zeigt, welche Bits RW-Bits sind (00000357h).
  • Die Firmware bestimmt den neuen Registerwert mit Hilfe der folgenden Booleschen Funktion: Neu = RW·geschriebene + RC*aktuell·/geschrieben·/RW·/RC·aktuell
  • Wenn der Host beispielsweise 1FFOO1FEh an die obigen Register schreibt (welche aktuell auf 32800307 gesetzt sind), wird der neue Registerwert wie folgt berechnet:
    Figure 00190001
  • Dieses Ergebnis wird dann an den für diese Register verwendeten Speicherort geschrieben, und nun kann die nächste Transaktion von dem PCI-Bus angenommen werden.
  • Wie im Vorangegangenen angegeben, wird bei diesem Ausführungsbeispiel vor einen Konfigurationszyklus der Konfigurationsraum der intelligenten Brücke 9 in den lokalen Speicher 27 gespeichert. Wenn von der auf dem lokalen Prozessor 29 ausführenden Prüfungs- und Korrektursoftware festgestellt wird, daß die geschützten Konfigurationsregister von einer Hostprozessor-Konfigurations-Schreiboperation verletzt wurden, dann greift die Prüf- und Korrektursoftware auf die in dem lokalen Speicher befindliche Kopie des Konfigurationsraumes zu und stellt die Originalwerte in diesen Konfigurationsregistern wieder her.
  • Wie oben erwähnt, stellt die vorliegende Erfindung die vorherigen Werte der Konfigurationsregister wieder her, wenn die PCI-Hardwareabbildung des Konfigurationskopfteilraumes von einer unautorisierten Schreiboperation verletzt wurde (Verarbeitungsschritt 48). Bei diesem Schritt wird die Kopie des Konfigurationsraumes zum Wiederherstellen der vorherigen Werte verwendet.
  • Die vorliegende Erfindung entaktiviert dann den "Versuche erneut"-Mechanismus, so daß nachfolgende Zugriffsanforderungen an den lokalen Prozessorbus 13 angenommen werden (Verarbeitungsschritt 49).
  • 6 zeigt ein alternatives Ausführungsbeispiel der Erfindung, bei dem die Hauptaspekte der Erfindung primär in der Speichersteuereinrichtung 25 implementiert sind. Bei diesem Ausführungsbeispiel dekodiert die Speichersteuereinrichtung 25 die Speicheradressen des lokalen Busses, nachdem sie von dem Konfigurationszyklus auf den primären PCI-Bus 7 abgebildet wurden. Die Speichersteuereinrichtung 25 empfängt ein Quellensignal 51, welches der Speichersteuereinrichtung 25 die Quelle des Speicherzugriffes anzeigt (d.h. ob diese Zugriffe von dem lokalen Prozessor 29 oder von dem Hostprozessor 3 initialisiert wurden oder nicht). Die Speichersteuereinrichtung 25 empfängt außerdem ein Lese/Schreibsignal (R/W) 53, einen Satz von Bytefreigabe(BE)-Signalen 55 und alle Bits der Speicheradressen. Die Speichersteuereinrichtung 25 liefert als Antwort auf die Signale drei Signale an den lokalen Speicher 27 (z.B. SRAM). Zu diesen Signalen gehört ein Chipauswahl(CS)-Signal 57, ein Ausgabefreigabe(OE)-Signal 58 und ein Schreibfreigabe(WE)-Signal 59. Die von der Speichersteuereinrichtung 25 zur Erzeugung dieser Signale ausgeführten Schritte werden im folgenden unter Bezugnahme auf die 79 beschrieben.
  • Speichersteuereinrichtungen von bekannten Computersystemen verwenden üblicherweise nur die höheren Bits einer Speicheradresse, und die niedrigeren Bits der Speicheradresse werden dem lokalen Speicher 27 direkt zur Verfügung gestellt. Der Speichersteuereinrichtung 25 der vorliegenden Erfindung werden jedoch alle Bits einer Speicheradresse zur Verfügung gestellt.
  • 7 zeigt die von der Schaltung in der Speichersteuereinrichtung 25 zur Erzeugung des Chipauswahl(CS)-Signals 57 ausgeführten Schritte. Zunächst wird festgestellt, ob die Speicheradresse in einem vorgegebenen Bereich liegt (Entscheidungsblock 65). Falls NEIN, wird nichts weiter un ternommen. Falls JA, wird das Chipauswahl(CS)-Signal aktiviert (Schritt 67).
  • 8 zeigt die von der Speichersteuereinrichtung 25 zur Erzeugung des Ausgabefreigabe(OE)-Signals 58 ausgeführten Schritte. Zunächst wird festgestellt, ob das Chipauswahl(CS)-Signal 57 aktiviert ist (Entscheidungsblock 71). Falls NEIN, wird nichts weiter unternommen. Falls JA, wird außerdem festgestellt, ob der Befehl ein Lesebefehl ist (Entscheidungsblock 73) oder nicht. Falls NEIN (d.h. der Befehl ist ein Schreibbefehl), wird nichts weiter unternommen. Falls JA, lege das Ausgabefreigabe(OE)-Signal an (Schritt 75).
  • 9 zeigt die von der Speichersteuereinrichtung 25 zur Erzeugung eines Schreibfreigabe(WE)-Signals 59 ausgeführten Schritte. Zunächst wird festgestellt, ob das Chipauswahlsignal 57 aktiviert ist (Entscheidungsblock 77). Falls NEIN, wird nichts weiter unternommen. Falls JA, wird ferner festgestellt, ob der Befehl ein Schreibbefehl ist, oder nicht (Entscheidungsblock 79). Falls NEIN, wird nichts weiter unternommen. Falls JA, wird außerdem festgestellt, ob die Bytefreigabesignale 55 angelegt sind (Entscheidungsblock 81). Falls NEIN, wird nichts weiter unternommen.
  • Falls JA, wird außerdem festgestellt, ob die Quelle des Befehls der lokale Prozessor 29 ist (Entscheidungsblock 83). Falls JA, lege das Schreibfreigabesignal 59 an (Schritt 89). Falls NEIN, wird außerdem festgestellt, ob der Konfigurationsraum, wie er von dem Hostprozessor aktualisiert wurde, mit einer vorgegebenen Hardwareabbildung übereinstimmt (Entscheidungsblock 85). Wenn der Hostprozessor versucht, die Konfigurationsregister unter Verletzung der PCI-Konfigurationsraum-Hardwareabbildung zu modifizieren (d.h. in ein geschütztes Konfigurationsregister zu schreiben), wird nichts weiter unternommen. Wenn der Hostprozessor die Konfi gurationsregister ohne Verletzung der PCI-Konfigurationsraum-Hardwareabbildung modifiziert hat, lege das Schreibfreigabe-Signal an (Schritt 89).
  • Bei diesem Ausführungsbeispiel ist keine Kopie des Konfigurationsraumes nötig, da die vorliegende Erfindung bei der Implementierung in der Speichersteuereinrichtung 20 einen Schreibbefehl an ein geschütztes Konfigurationsregister ignoriert (d.h. die Speichersteuereinrichtung prüft die in der PCI-Busprotokollspezifikation angegebene, vorgegebene Hardwareabbildung, bevor in das Konfigurationsregister geschrieben wird). Folglich speichert das zweite Ausführungsbeispiel anders als das vorherige Ausführungsbeispiel keine Kopie des Konfigurationsraumes in den lokalen Speicher, bevor ein Konfigurationszyklus von der intelligenten Brücke angenommen wird.
  • 10 zeigt die von der vorliegenden Erfindung verwendeten Verarbeitungsschritte, um virtuelle Funktionen (d.h. um die Funktionalität anderer Einrichtungen zu emulieren) mit einer intelligenten Multifunktionsbrücke zu ermöglichen. Wie im Vorangegangenen erwähnt, ermöglicht es die vorliegende Erfindung einer nicht PCI-kompatiblen Einrichtung 15 über den P2P-Prozessor 9 an einen PCI-kompatiblen Bus angeschlossen zu werden. Die vorliegende Erfindung verwendet von dem lokalen Prozessor 29 ausgeführte Emulationssoftware, welche die Befehle eines Einrichtungstreibers übersetzt, welche für die nicht PCI-kompatible Einrichtung 15 unverständliche sind. Die Emulationssoftware, welche im Microbefehlscode realisiert werden kann (z.B. Firmware), übersetzt den Befehlssatz des Einrichtungstreibers der emulierten Einrichtung in Befehle, welche für die nicht PCI-kompatible Einrichtung 15 verständlich sind.
  • Speziell führt die vorliegende Erfindung ein Emulationsprogrammcode auf dem lokalen Prozessor 29 aus, um die Syntax der emulierten Einrichtung zu interpretieren und die gewünschte Funktion zu bestimmen (Verarbeitungsschritt 121). Bei diesem Schritt decodiert die vorliegende Erfindung einen Befehl von dem mit der emulierten Einrichtung verbundenen Einrichtungstreiber und bestimmt die gewünschte Funktion (z.B. für eine SCSI-Steuereinrichtung kann ein erster Befehl ein SCSI-Plattenlaufwerk anweisen, Informationen an einen bestimmten Sektor zu schreiben, während ein zweiter Befehl das SCSI-Plattenlaufwerk anweisen kann, von einem bestimmten Sektor zu lesen).
  • Als nächstes übersetzt die vorliegende Erfindung die Syntax der emulierten Einrichtung in die Syntax der tatsächlichen Einrichtung (Verarbeitungsschritt 125). Mit anderen Worten bestimmt die Emulationssoftware der vorliegenden Erfindung die nötigen Befehle, welche für die nicht PCI-kompatible Einrichtung verständlich sind, welche die gewünschte Funktion erzielt, wie im Verarbeitungsschritt 121 bestimmt ist.
  • Zuletzt führt die vorliegende Erfindung den Syntax (z.B. Befehle) für die tatsächliche Einrichtung aus. Die tatsächliche Einrichtung führt dann als Antwort auf den Syntax die gewünschte Funktion aus (Verarbeitungsschritt 127).
  • Diese Verarbeitungsschrittfolge zur Ermöglichung virtueller Funktionen über die intelligente Multifunktionsbrücke kann nach dem Schritt 49 der 5 ausgeführt werden.
  • Die Abbildung der Syntax der emulierten Einrichtung auf die Syntax der tatsächlichen Einrichtung kann trivial sein (z.B. kann nichts zu tun sein), da die bestimmte Funktion hardwaremäßig implementiert ist (z.B. Schreiben eines bestimmten Bits in ein Register). Wenn die Abbildung zwischen der Syntax der emulierten Einrichtung und der Syntax der tatsächlichen Einrichtung nicht einfach ist, kann der Emula tionscode mehrere Verarbeitungsschritte enthalten, um den Befehl der emulierten Einrichtung genau zu emulieren (z.B. ein bestimmter Befehl des Grafiktreibers). Beispielsweise kann es sein, daß ein bestimmter Lese- und Schreibbefehl der emulierten Einrichtung an einen anderen Speicherplatz gerichtet werden muß oder daß ein Befehl der emulierten Einrichtung übersetzt oder in eine Anzahl verschiedener Befehle der tatsächlichen Einrichtung abgebildet werden muß. Ein spezielles Beispiel zur Emulation einer Funktionalität ist in einer im Vorangegangenen eingereichten Patentanmeldung mit dem Titel "A Circuit and Method for Emulating the Functionality of an Advanced Programmable Interrupt Controller", Aktenzeichen; Anwaltsaktenzeichen Nummer 042390.P3299, eingereicht am 20. Dezember 1995, beschrieben.
  • Es wurden hier verschiedene Hardware- und Softwarefunktionen beschrieben. Je nach Implementierung können viele Hardwarefunktionen mit Hilfe von Software emuliert werden. Genauso können Softwarefunktionen mit Hilfe von Hardwarekomponenten ausgeführt werden, welche eine fest verdrahtete Schaltung aufweisen, die zur Ausführung der Funktionen konfiguriert ist. Bei anderen Ausführungsformen können einige der Hard- oder Softwarefunktionen mit Hilfe von Firmware oder mit anderen Computersystemimplementierungstechnologien konfiguriert werden.
  • Die hier beschriebenen beispielhaften Ausführungsformen dienen lediglich der Veranschaulichung der Prinzipien der Erfindung und sollen nicht als Beschränkung des Schutzumfangs der Erfindung aufgefaßt werden. Stattdessen können die Prinzipien der Erfindung auf einen breiten Bereich von Systemen angewendet werden, um die hier beschriebenen Vorteile und weitere Vorteile zu erzielen oder um andere Ziele genauso zu verwirklichen.

Claims (11)

  1. Intelligente I/O-Schaltung (9) zum Verbinden einer Einrichtung (15), die nach einem ersten Busprotokoll arbeiten kann, mit einem ein zweites Busprotokoll aufweisenden externen Bus (7), wobei die intelligente I/O-Schaltung (9) mehrere Konfigurationsregister zum Speichern von Konfigurationsinformationen aufweist, wobei die intelligente I/O-Schaltung aufweist: a) einen lokalen Prozessorbus (13) mit dem ersten Busprotokoll; b) eine mit dem lokalen Prozessorbus (13) gekoppelte Speichersteuereinrichtung (25) zur Steuerung des Zugriffes auf einen lokalen Speicher (27), wobei der lokale Speicher enthält: erste Programmittel zum Übersetzen eines Zweites-Busprotokoll-Konfigurationszyklus in einen Erstes-Busprotokoll-Konfigurationszyklus und wobei die Erstes-Busprotokoll-Konfigurationszyklen für die Einrichtung (15) verständlich sind; zweite Programmittel zur Lieferung geeigneter Handshake-Signale zu dem externen Bus (7); dritte Programmittel, zum Überprüfen, daß die mehreren Konfigurationsregister von einem externen Busteilnehmer gemäß einer vorgegebenen Hardware-Abbildung modifiziert wurden, wobei die Abbildung von dem zweiten Busprotokoll definiert ist, und zum Wiederherstellen derjenigen Register, die unter Verletzung der Hardware-Abbildung modifiziert worden sind, wobei die Hardware-Abbildung nicht-beschreibbare Bits in der intelligenten I/O-Schaltung spezifiziert; c) einen mit dem lokalen Prozessorbus (13) gekoppelten lokalen Prozessor (29) zum Ausführen von Programmbefehlen; und d) eine Adreßübersetzungseinheit (23) zum Koppeln des externen Busses (7) mit dem lokalen Prozessorbus (13) und zur Schaffung einer Schnittstelle zwischen dem externen Bus (7) und dem lokalen Prozessorbus (13).
  2. Intelligente I/O-Schaltung nach Anspruch 1, dadurch gekennzeichnet, daß die Adreßübersetzungseinheit (23), die Speichersteuereinrichtung (25), der lokale Prozessor (29) und der lokale Prozessorbus (13) auf einem Chip integriert sind.
  3. Intelligente I/O-Schaltung nach Anspruch 1, dadurch gekennzeichnet, daß die Adreßübersetzungseinheit (23) ferner aufweist: eine mit dem externen Bus (7) gekoppelte Einrichtung (37) zum Erfassen, daß ein von dem externen Busteilnehmer erzeugter Konfigurationszyklus auf dem externen Bus an die intelligente I/O-Schaltung (9) gerichtet ist; eine mit der Erfassungseinrichtung gekoppelte Einrichtung (43) zum Erzeugen eines Interrupts an den lokalen Prozessor (29) nach der Beendigung der Konfiguration; eine mit der Interrupt-Erzeugungseinrichtung (43) gekoppelte Einrichtung (45) zum Anlegen eines Neuversuchs an den externen Bus, bis der lokale Prozessor (29) die Ausführung des Korrektur- und Prüfprogrammes abschließt, wobei das Programm auf dem lokalem Prozessor (29) ausgeführt wird.
  4. Intelligente I/O-Schaltung (9) zum Bilden einer Schnittstelle einer mit einem ersten Busprotokoll kompatiblen Einrichtung (15) zu einem externen Bus (7) mit einem zweiten Busprotokoll, wobei die intelligente I/O-Schaltung mehrere Konfigurationsregister (41) zum Speichern von Konfigurationsinformationen aufweist, wobei die intelligente I/O-Schaltung aufweist: a) eine Adreßübersetzungseinheit (23) zum Übersetzen von Buszyklen zwischen dem ersten Busprotokoll und dem zweiten Busprotokoll, wobei die Adreßübersetzungseinheit (23) ferner ein Quellensignal zur Verfügung stellt; b) einen mit einem lokalen Prozessorbus (13) gekoppelten lokalen Prozessor (29) zum Ausführen von Programmbefehlen; c) einen lokalen Speicher (27) mit ersten Programmitteln zum Prüfen einer vorgegebenen Hardware-Abbildung, wie sie durch das zweite Busprotokoll definiert ist, und um auf der Basis der Hardware-Abbildung festzustellen, ob ein externer Busteilnehmer auf ein Zielkonfigurationsregister zugreifen kann oder nicht; mit zweiten Programmitteln zum Speichern des aktuellen Zustands der Konfigurationsregister; mit dritten Programmitteln, um auf der Basis einer vorgegebenen Hardware-Abbildung zu bestimmen, ob ein externer Busteilnehmer auf die Konfigurationsregister zugreifen kann; und mit vierten Programmitteln zum Speichern eines vorherigen Werts in ein Konfigurationsregister, in welches von einem externen Busteilnehmer unter Verletzung der Hardware-Abbildung geschrieben worden ist; und d) eine mit dem lokalen Prozessorbus (13) gekoppelte Speichersteuereinrichtung (25) zum Steuern des Zugriffs auf den lokalen Speicher (27).
  5. Intelligente I/O-Schaltung nach Anspruch 4, dadurch gekennzeichnet, daß die Hardware-Abbildung von dem PCI-Busprotokoll definiert ist.
  6. Intelligente I/O-Schaltung nach Anspruch 4, gekennzeichnet durch eine Brückenschaltung zum Verbinden des externen Busses (7) mit einem zweiten externen Bus (11).
  7. Intelligente I/O-Schaltung nach Anspruch 4, dadurch gekennzeichnet, daß das zweite Busprotokoll ein PCI-Busprotokoll ist.
  8. Intelligente I/O-Schaltung nach Anspruch 4, dadurch gekennzeichnet, daß der lokale Prozessor (29) ein Intel-80960-JF-Prozessorchip ist.
  9. Intelligente I/O-Schaltung nach Anspruch 4, dadurch gekennzeichnet, daß die Speichersteuereinrichtung (25) ferner aufweist: eine Einrichtung zum selektiven Steuern der Zugriffe auf einen Speicher, welche auf ein Lese/Schreibsignal, ein Bytefreigabesignal, mehrere Adreßsignale und ein erstes Signal anspricht; eine mit der Einrichtung zum selektiven Steuern des Speichers gekoppelte Einrichtung (43) zum Erzeugen eines Interrupts an einen lokalen Prozessor (29); und Programmittel zum Feststellen, ob ein Zielkonfigurationsregister durch einen externen Busteilnehmer zugreifbar ist oder nicht.
  10. Intelligente I/O-Schaltung zum Emulieren von Funktionen und zur Herstellung der Bustauglichkeit einer nicht kompatiblen Einrichtung (15), wobei die intelligente I/O-Schaltung eine Speichersteuereinrichtung (25) enthält, wobei die Speichersteuereinrichtung aufweist: a) eine auf ein Quellensignal ansprechende Einrichtung zur Erzeugung eines ersten Signals, welches die Quelle eines Konfigurationsbefehls anzeigt; b) eine Einrichtung zum selektiven Steuern der Zugriffe auf einen Speicher, welche auf ein Lese/Schreibsignal, meh rere Bytefreigabesignale, mehrere Adreßsignale und das erste Signal anspricht; c) eine mit der Einrichtung zum selektiven Steuern des Speichers gekoppelte Einrichtung (43) zum Erzeugen eines Interrupts an einen lokalen Prozessor (29); d) eine Einrichtung zum Erfassen eines aktuellen Zustandes mehrerer Konfigurationsregister; e) eine Einrichtung zum Speichern des aktuellen Zustandes dieser Konfigurationsregister; f) eine Einrichtung zum Bestimmen, ob die Konfigurationsregister durch einen Host-Prozessor (3) zugreifbar sind oder nicht; und g) eine Einrichtung zum Wiederherstellen eines vorherigen Wertes in einem Konfigurationsregister, in welches von dem Host-Prozessor (3) unter Verletzung einer vorgegebenen Hardware-Abbildung geschrieben worden ist.
  11. Intelligente I/O-Schaltung zum Emulieren von Funktionen und zur Herstellung der Bustauglichkeit einer nicht kompatiblen Einrichtung (15), wobei die intelligente I/O-Schaltung eine Adreßübersetzungseinheit (23) enthält, wobei die Adreßübersetzungseinheit aufweist: a) eine Einrichtung zum Erfassen, daß ein Konfigurationszyklus auf einem externen Bus an die intelligente I/O-Schaltung gerichtet ist; b) eine mit der Erfassungseinrichtung gekoppelte Einrichtung (43) zum Erzeugen eines Interrupts an einen lokalen Prozessor (29), welches eine Modifikation der Konfigurationsregister durch einen externen Busteilnehmer ermöglicht, c) eine mit der Interrupterzeugungseinrichtung (43) gekoppelte Einrichtung zum Anlegen eines Neuversuchs an den externen Bus, bis der lokale Prozessor (29) seine Korrektur und Überprüfung des Konfigurationsregisters beendet hat; und d) in einem lokalen Speicher (27) angeordnete Softwaremittel zum Überprüfen und Wiederherstellen des Konfigurationsregisters nach der Modifikation durch den externen Busteilnehmer.
DE19681711T 1995-12-28 1996-12-27 Intelligente I/O-Schaltung zum Verbinden einer mit einem ersten Busprotokoll kompatiblen Einrichtung mit einem externen Bus Expired - Lifetime DE19681711B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/580,130 US5751975A (en) 1995-12-28 1995-12-28 Method and apparatus for interfacing a device compliant to a first bus protocol to an external bus having a second bus protocol and for providing virtual functions through a multi-function intelligent bridge
US08/580,130 1995-12-28
PCT/US1996/020815 WO1997024677A1 (en) 1995-12-28 1996-12-27 A method and apparatus for interfacing a device compliant to first bus protocol to an external bus

Publications (2)

Publication Number Publication Date
DE19681711T1 DE19681711T1 (de) 1998-12-03
DE19681711B4 true DE19681711B4 (de) 2004-09-02

Family

ID=24319841

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19681711T Expired - Lifetime DE19681711B4 (de) 1995-12-28 1996-12-27 Intelligente I/O-Schaltung zum Verbinden einer mit einem ersten Busprotokoll kompatiblen Einrichtung mit einem externen Bus

Country Status (8)

Country Link
US (1) US5751975A (de)
KR (1) KR100292833B1 (de)
AU (1) AU1431997A (de)
DE (1) DE19681711B4 (de)
GB (1) GB2324182B (de)
HK (1) HK1016302A1 (de)
TW (1) TW327684B (de)
WO (1) WO1997024677A1 (de)

Families Citing this family (89)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6330629B1 (en) * 1993-02-11 2001-12-11 Hitachi, Ltd. Information processing system
US5859988A (en) * 1995-09-29 1999-01-12 Intel Corporation Triple-port bus bridge
GB2308902B (en) * 1996-01-04 2000-03-29 Motorola Inc Peripheral module and microprocessor system
US5991546A (en) * 1996-09-17 1999-11-23 Cmd Technology, Inc. System and method for interfacing manually controllable input devices to a universal computer bus system
US5898859A (en) * 1996-10-01 1999-04-27 Intel Corporation Address shadow feature and methods of using the same
US6125418A (en) * 1996-11-27 2000-09-26 Compaq Computer Corporation Method and apparatus for enabling a computer user to convert a computer system to an intelligent I/O system
US5832246A (en) * 1996-12-03 1998-11-03 Toshiba America Information Systems, Inc. Virtualization of the ISA bus on PCI with the existence of a PCI to ISA bridge
US6091705A (en) * 1996-12-20 2000-07-18 Sebring Systems, Inc. Method and apparatus for a fault tolerant, software transparent and high data integrity extension to a backplane bus or interconnect
SG74611A1 (en) * 1997-02-14 2000-08-22 Canon Kk Data communication apparatus and method
DE69840972D1 (de) 1997-02-14 2009-08-27 Canon Kk Vorrichtung, System und Verfahren zur Datenübertragung und Vorrichtung zur Bildverarbeitung
EP0859326A3 (de) * 1997-02-14 1999-05-12 Canon Kabushiki Kaisha Vorrichtung, System und Verfahren zur Datenübertragung und Vorrichtung zur Bildverarbeitung
US5953535A (en) * 1997-03-28 1999-09-14 International Business Machines Corporation Using intelligent bus bridges with pico-code to service interrupts and improve interrupt response
US5875313A (en) * 1997-04-08 1999-02-23 National Instruments Corporation PCI bus to IEEE 1394 bus translator employing write pipe-lining and sequential write combining
US5937172A (en) * 1997-04-14 1999-08-10 International Business Machines Corporation Apparatus and method of layering cache and architectural specific functions to permit generic interface definition
US6061755A (en) * 1997-04-14 2000-05-09 International Business Machines Corporation Method of layering cache and architectural specific functions to promote operation symmetry
US5951661A (en) * 1997-08-15 1999-09-14 Compaq Computer Corporation Bus protocol violation monitor systems and methods
US6275888B1 (en) * 1997-11-19 2001-08-14 Micron Technology, Inc. Method for configuring peer-to-peer bus bridges in a computer system using shadow configuration registers
US6023736A (en) * 1997-12-19 2000-02-08 International Business Machines Corporation System for dynamically configuring I/O device adapters where a function configuration register contains ready/not ready flags corresponding to each I/O device adapter
US5941972A (en) 1997-12-31 1999-08-24 Crossroads Systems, Inc. Storage router and method for providing virtual local storage
USRE42761E1 (en) 1997-12-31 2011-09-27 Crossroads Systems, Inc. Storage router and method for providing virtual local storage
US6243775B1 (en) 1998-01-20 2001-06-05 Micron Technology, Inc. System for extending the available number of configuration registers
US6108733A (en) * 1998-01-20 2000-08-22 Micron Technology, Inc. Method for extending the available number of configuration registers
US6272576B1 (en) 1998-01-20 2001-08-07 Micron Technology, Inc. Method for extending the available number of configuration registers
US6094699A (en) * 1998-02-13 2000-07-25 Mylex Corporation Apparatus and method for coupling devices to a PCI-to-PCI bridge in an intelligent I/O controller
US6081863A (en) * 1998-03-13 2000-06-27 International Business Machines Corporation Method and system for supporting multiple peripheral component interconnect PCI buses by a single PCI host bridge within a computer system
US6360289B2 (en) * 1998-04-14 2002-03-19 Micron Technology, Inc. System for autonomous configuration of peer devices
US6266770B1 (en) 1998-04-14 2001-07-24 Micron Technology, Inc. Method for autonomous configuration of peer devices
US6065087A (en) * 1998-05-21 2000-05-16 Hewlett-Packard Company Architecture for a high-performance network/bus multiplexer interconnecting a network and a bus that transport data using multiple protocols
US6101557A (en) * 1998-05-29 2000-08-08 International Business Machines Corporation Method and system for remote function control and delegation within multifunction bus supported devices
US6243774B1 (en) 1998-06-30 2001-06-05 International Business Machines Corporation Apparatus program product and method of managing computer resources supporting concurrent maintenance operations
US6820157B1 (en) 1998-06-30 2004-11-16 International Business Machines Corporation Apparatus, program product and method of replacing failed hardware device through concurrent maintenance operation
US6119191A (en) * 1998-09-01 2000-09-12 International Business Machines Corporation Performing PCI access cycles through PCI bridge hub routing
US6449677B1 (en) * 1998-09-03 2002-09-10 Compaq Information Technologies Group, L.P. Method and apparatus for multiplexing and demultiplexing addresses of registered peripheral interconnect apparatus
US7058563B1 (en) * 1998-09-23 2006-06-06 Microsoft Corporation Device driver auto-load
US6574588B1 (en) * 1998-09-23 2003-06-03 Microsoft Corporation Solid-state memory device that emulates a known storage device
US6175889B1 (en) * 1998-10-21 2001-01-16 Compaq Computer Corporation Apparatus, method and system for a computer CPU and memory to high speed peripheral interconnect bridge having a plurality of physical buses with a single logical bus number
US6182182B1 (en) 1998-10-28 2001-01-30 Adaptec, Inc. Intelligent input/output target device communication and exception handling
GB2347829A (en) * 1998-12-30 2000-09-13 Gen American Royalty Inc Communication protocol translator for consumer electronic networks
US6427199B1 (en) 1999-01-19 2002-07-30 Motorola, Inc. Method and apparatus for efficiently transferring data between peripherals in a selective call radio
US6732208B1 (en) 1999-02-25 2004-05-04 Mips Technologies, Inc. Low latency system bus interface for multi-master processing environments
JP4030216B2 (ja) * 1999-03-09 2008-01-09 インターナショナル・ビジネス・マシーンズ・コーポレーション マイクロプロセッサとマイクロプロセッサを含むシステム及びマイクロプロセッサのバスサイクル制御方法
US6457091B1 (en) 1999-05-14 2002-09-24 Koninklijke Philips Electronics N.V. PCI bridge configuration having physically separate parts
US6581125B1 (en) 1999-05-14 2003-06-17 Koninklijke Philips Electronics N.V. PCI bridge having latency inducing serial bus
JP2001014269A (ja) * 1999-06-29 2001-01-19 Toshiba Corp コンピュータシステム
JP2001016278A (ja) * 1999-06-30 2001-01-19 Toshiba Corp シリアル信号伝送装置
US6574691B1 (en) 1999-07-28 2003-06-03 Koninklijke Philips Electronics N.V. Apparatus and method for interfacing a non-sequential 486 interface burst interface to a sequential ASB interface
US6490642B1 (en) 1999-08-12 2002-12-03 Mips Technologies, Inc. Locked read/write on separate address/data bus using write barrier
US6393500B1 (en) 1999-08-12 2002-05-21 Mips Technologies, Inc. Burst-configurable data bus
US6604159B1 (en) 1999-08-12 2003-08-05 Mips Technologies, Inc. Data release to reduce latency in on-chip system bus
US6493776B1 (en) 1999-08-12 2002-12-10 Mips Technologies, Inc. Scalable on-chip system bus
US6681283B1 (en) 1999-08-12 2004-01-20 Mips Technologies, Inc. Coherent data apparatus for an on-chip split transaction system bus
US6442643B1 (en) * 1999-09-30 2002-08-27 Conexant Systems, Inc. System and method for resolving data transfer incompatibilities between PCI and Non-PCI buses
CA2284947C (en) 1999-10-04 2005-12-20 Storagequest Inc. Apparatus and method for managing data storage
US6629157B1 (en) * 2000-01-04 2003-09-30 National Semiconductor Corporation System and method for virtualizing the configuration space of PCI devices in a processing system
US6611912B1 (en) * 2000-02-04 2003-08-26 Advanced Micro Devices, Inc. Method and apparatus having a system BIOS write configuration data of a riser card to a controller configuration space when connecting the riser card to a motherboard
US6529978B1 (en) 2000-02-23 2003-03-04 International Business Machines Corporation Computer input/output (I/O) interface with dynamic I/O adaptor processor bindings
AU2001251536A1 (en) * 2000-04-13 2001-10-30 Stratus Technologies International, S.A.R.L. Fault-tolerant maintenance bus, protocol, and method for using the same
US6970957B1 (en) * 2000-04-24 2005-11-29 Microsoft Corporation Dynamically configuring resources for cycle translation in a computer system
US6687779B1 (en) 2000-07-14 2004-02-03 Texas Instruments Incorporated Method and apparatus for transmitting control information across a serialized bus interface
US6581114B1 (en) 2000-07-14 2003-06-17 Texas Instruments Incorporated Method and system for synchronizing serial data
US6954209B2 (en) * 2000-12-06 2005-10-11 Hewlett-Packard Development Company, L.P. Computer CPU and memory to accelerated graphics port bridge having a plurality of physical buses with a single logical bus number
US6901475B2 (en) * 2000-12-07 2005-05-31 Micron Technology, Inc. Link bus for a hub based computer architecture
US20020178316A1 (en) * 2001-05-23 2002-11-28 Schmisseur Mark A. System and method for defining private functions of a multi-function peripheral device
US6842806B2 (en) * 2001-05-29 2005-01-11 Sun Microsystems, Inc. Method and apparatus for interconnecting wired-AND buses
US20040225814A1 (en) * 2001-05-29 2004-11-11 Ervin Joseph J. Method and apparatus for constructing wired-AND bus systems
US7149838B2 (en) * 2001-05-29 2006-12-12 Sun Microsystems, Inc. Method and apparatus for configuring multiple segment wired-AND bus systems
US6823418B2 (en) * 2001-06-29 2004-11-23 Intel Corporation Virtual PCI device apparatus and method
US6826628B2 (en) * 2001-10-26 2004-11-30 O2Micro International Limited PCI-PCMCIA smart card reader
US20030097503A1 (en) * 2001-11-19 2003-05-22 Huckins Jeffrey L. PCI compatible bus model for non-PCI compatible bus architectures
US6883057B2 (en) * 2002-02-15 2005-04-19 International Business Machines Corporation Method and apparatus embedding PCI-to-PCI bridge functions in PCI devices using PCI configuration header type 0
US20040049618A1 (en) * 2002-09-10 2004-03-11 Schmisseur Mark A. Configuration of private devices and device functions
WO2004040462A1 (ja) * 2002-10-29 2004-05-13 Workbit Corporation デバイスコントローラ
US7103697B2 (en) 2003-01-08 2006-09-05 Emulex Design & Manufacturing Corporation Flow-through register
WO2004088522A1 (ja) * 2003-03-31 2004-10-14 Fujitsu Limited バスブリッジ装置、バスブリッジ方法および入出力制御装置
US7062590B2 (en) * 2003-08-29 2006-06-13 Lsi Logic Corporation Methods and structure for PCI bus broadcast using device ID messaging
JP4052265B2 (ja) * 2004-03-05 2008-02-27 日本電気株式会社 情報処理装置とデバイスドライバのロード方法並びにプログラム
US7596652B2 (en) * 2004-05-14 2009-09-29 Intel Corporation Integrated circuit having processor and bridging capabilities
US20070088857A1 (en) * 2005-09-30 2007-04-19 Travis Schluessler Using sequestered memory for host software communications
JP4869714B2 (ja) * 2006-01-16 2012-02-08 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、信号伝送方法、およびブリッジ
JP2007200169A (ja) * 2006-01-30 2007-08-09 Hitachi Ltd ストレージシステム及び記憶制御方法
US8214296B2 (en) * 2006-02-14 2012-07-03 Microsoft Corporation Disaggregated secure execution environment
CN101981554B (zh) * 2008-03-25 2013-08-21 惠普开发有限公司 用于将pcie sr-iov功能转换成表现为传统功能的系统和方法
US8549203B2 (en) 2010-10-29 2013-10-01 Qualcomm Incorporated Multi-protocol bus interface device
US8719843B2 (en) * 2011-07-27 2014-05-06 Intel Corporation Virtualizable and forward-compatible hardware-software interface
US8943257B2 (en) * 2011-09-30 2015-01-27 Intel Corporation Protocol neutral fabric
KR20140113175A (ko) 2013-03-15 2014-09-24 삼성전자주식회사 버스 프로토콜 검사기, 이를 포함하는 시스템 온 칩 및 버스 프로토콜 검사 방법
KR101782852B1 (ko) * 2015-06-14 2017-10-23 아던트 시스템즈 아이엔씨 엔드포인트 에뮬레이션을 이용한 빈 엔드포인트 슬롯의 초기 열거법
US10395722B2 (en) 2017-09-29 2019-08-27 Intel Corporation Reading from a mode register having different read and write timing
CN111240908B (zh) * 2019-12-31 2023-07-25 西安翔腾微电子科技有限公司 处理器接口的验证方法、验证系统、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995034065A2 (en) * 1994-06-08 1995-12-14 Intel Corporation Disk drive connector interface for use on pci bus
WO1995034861A1 (en) * 1994-06-14 1995-12-21 Unisys Corporation High speed deadlock free bridge circuit

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5086426A (en) * 1987-12-23 1992-02-04 Hitachi, Ltd. Communication network system having a plurality of different protocal LAN's
US5311576A (en) * 1992-01-27 1994-05-10 At&T Bell Laboratories Adjunct processor embedded in a switching system
US5574869A (en) * 1992-03-30 1996-11-12 Intel Corporation Bus bridge circuit having configuration space enable register for controlling transition between various modes by writing the bridge identifier into CSE register
US5446868A (en) * 1992-09-11 1995-08-29 R. J. Reynolds Tobacco Company Network bridge method and apparatus
US5392407A (en) * 1992-12-24 1995-02-21 Ncr Corporation Multi-port processor with peripheral component interconnect port and rambus port
US5522050A (en) * 1993-05-28 1996-05-28 International Business Machines Corporation Bus-to-bus bridge for a multiple bus information handling system that optimizes data transfers between a system bus and a peripheral bus
US5446869A (en) * 1993-12-30 1995-08-29 International Business Machines Corporation Configuration and RAM/ROM control of PCI extension card residing on MCA adapter card
US5548730A (en) * 1994-09-20 1996-08-20 Intel Corporation Intelligent bus bridge for input/output subsystems in a computer system
US5568619A (en) * 1995-01-05 1996-10-22 International Business Machines Corporation Method and apparatus for configuring a bus-to-bus bridge

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995034065A2 (en) * 1994-06-08 1995-12-14 Intel Corporation Disk drive connector interface for use on pci bus
WO1995034861A1 (en) * 1994-06-14 1995-12-21 Unisys Corporation High speed deadlock free bridge circuit

Also Published As

Publication number Publication date
KR100292833B1 (ko) 2001-08-07
KR19990076835A (ko) 1999-10-25
GB9812475D0 (en) 1998-08-05
GB2324182B (en) 2000-11-08
DE19681711T1 (de) 1998-12-03
WO1997024677A1 (en) 1997-07-10
TW327684B (en) 1998-03-01
AU1431997A (en) 1997-07-28
GB2324182A (en) 1998-10-14
US5751975A (en) 1998-05-12
HK1016302A1 (en) 1999-10-29

Similar Documents

Publication Publication Date Title
DE19681711B4 (de) Intelligente I/O-Schaltung zum Verbinden einer mit einem ersten Busprotokoll kompatiblen Einrichtung mit einem externen Bus
DE112005002298B4 (de) Leistungssteigerung einer Adreßübersetzung unter Verwendung von Übersetzungstabellen, die große Adreßräume umfassen
DE112005002405B4 (de) Fehlerverarbeitung für Direktspeicherzugriffs-Adreßübersetzung
DE69723286T2 (de) Echtzeitprogramm-sprachbeschleuniger
DE69834401T2 (de) Businterfacesystem und verfahren
DE112005002304B4 (de) Adreßumsetzung für Eingabe/Ausgabe- Vorrichtungen mittels hierarchischer Umsetzungstabellen
DE10047266B4 (de) Verfahren und Vorrichtung zum Booten einer Workstation von einem Server
DE69627814T2 (de) System zum bereitstellen eines bios für den hauptrechner
DE60100848T2 (de) Virtuelles rom für geräte-aufzählung
DE10297433B4 (de) Speicherverwaltungseinheit, Verfahren zum Bereitstellen einer Speicherzugriffssicherheit auf der Basis einer linearen Adresse und Prozessor
DE69732181T2 (de) Verfahren und gerät zum zwischenspeichern von systemverwaltungsinformationen mit anderen informationen
DE2902465A1 (de) Datenverarbeitungsanordnung
EP0500973B1 (de) EEPROM und Verfahren zum Ändern einer Initialisierungsroutine im EEPROM
DE4026912A1 (de) Computersystem
DE102007031269A1 (de) Verfahren zum Zugreifen auf Steuerregister über eine Speichervorrichtung
DE102004057756A1 (de) USB "On-the-go"-Steuerung
EP0182044A2 (de) Einleitungsapparat für eine Datenverarbeitungsanlage mit mehreren Ein- und Ausgängen und ein mit einer gemeinsamen Sammelleitung verbundenes Speichersteuergerät
DE60025788T2 (de) Flexibles Mehrzweck-Ein/Ausgabesystem
DE2460011C2 (de) Datenverarbeitungsanlage mit einer E/A-Emulatorfunktion
DE112006000634T5 (de) Verfahren und Vorrichtung zur unabhängigen und gleichzeitigen Datenübertragung auf Host-Controller
DE112007000688T5 (de) Fehlerverwaltungstopologien
DE102019132476A1 (de) Modul mit einer Serialisierereinheit und verbesserter Kompatibilität zu Deserialisierereinheiten unterschiedlicher Baureihen
DE19960574A1 (de) PCI-Fehlerbehebungsvorrichtung,-Verfahren und -System
DE4238099C2 (de) Mikroprozessor mit mehreren Betriebsmoden
DE102005001430A1 (de) Verfahren zur Beschreibung von Speicherinhalten und zur Beschreibung des Transfers von Speicherinhalten

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8125 Change of the main classification

Ipc: G06F 13/42

8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee