[go: up one dir, main page]

DE602004007927T2 - Integrierter schaltkreis, der mithilfe verschiedener kommunikationsprotokolle kommunizieren kann - Google Patents

Integrierter schaltkreis, der mithilfe verschiedener kommunikationsprotokolle kommunizieren kann Download PDF

Info

Publication number
DE602004007927T2
DE602004007927T2 DE602004007927T DE602004007927T DE602004007927T2 DE 602004007927 T2 DE602004007927 T2 DE 602004007927T2 DE 602004007927 T DE602004007927 T DE 602004007927T DE 602004007927 T DE602004007927 T DE 602004007927T DE 602004007927 T2 DE602004007927 T2 DE 602004007927T2
Authority
DE
Germany
Prior art keywords
circuit
integrated circuit
memory
interface
protocols
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
DE602004007927T
Other languages
English (en)
Other versions
DE602004007927D1 (de
Inventor
Richard Beckett
Robert Sheffield Jr.
Pak-Lung Seto
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 DE602004007927D1 publication Critical patent/DE602004007927D1/de
Application granted granted Critical
Publication of DE602004007927T2 publication Critical patent/DE602004007927T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4295Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using an embedded synchronisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Communication Control (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Optical Communication System (AREA)
  • Networks Using Active Elements (AREA)
  • Polysaccharides And Polysaccharide Derivatives (AREA)

Description

  • Diese Offenbarung betrifft einen integrierten Schaltkreis, der dazu in der Lage ist, unter Benutzung unterschiedlicher Kommunikationsprotokolle zu kommunizieren.
  • Bei einer üblichen Datenspeicheranordnung weist ein Computerknoten einen Hostbus-Adapter (HBA) auf. Der HBA kommuniziert über eine oder mehrere Kommunikationsverbindungen mit einem Datenspeichersystem, wobei ein Kommunikationsprotokoll benutzt wird, das der oder den Verbindungen zugeordnet ist. Typischerweise weist der HBA mehrere Chips mit integrierten Schaltkreisen auf, um eine Kommunikation zwischen dem HBA und dem Datenspeichersystem auszuführen, und kann nur ein einzelnes, vorbestimmtes Kommunikationsprotokoll benutzen, um mit dem Datenspeichersystem zu kommunizieren. Wenn also bei dieser üblichen Anordnung beispielsweise das Datenspeichersystem nicht unter Benutzung dieses vorbestimmten Protokolls mit dem HBA kommunizieren kann, können ein oder mehrere externe Kommunikationsprotokoll-Konverter, Übersetzer und/oder Expander zwischen den HBA und das Datenspeichersystem gekoppelt werden, um eine Kommunikation zwischen dem HBA und dem Datenspeichersystem zu erlauben.
  • US-Patentschrift 6,038,400 erörtert eine Schnittstellenschaltung, die mehreren unterschiedlichen Protokollen gemäß arbeiten kann.
  • Das Dokument US2003033477 offenbart ein Verfahren, das besonders bei eingebetteter RAID-Firmware für verschiedene Speicherprotokolle wie SCSI-(Small Computer System Interface)-, FC-(Fibre Channel)-, Serial-Advanced-Technology-Attachment-(SATA)-, Parallel-Advanced-Technology-Attachment-(PATA) und Serial-Attached-Small-Computer-System-Interface-(SAS)-Steuerungen nützlich ist.
  • Die vorliegende Erfindung stellt ein Verfahren bereit, wie es in Anspruch 1 aufgeführt ist, ein computerlesbares Speichermedium, wie es in Anspruch 7 aufgeführt ist, und eine Vorrichtung, wie sie in Anspruch 8 aufgeführt ist, und ein System, wie es in Anspruch 18 aufgeführt ist.
  • Merkmale und Vorteile von Ausführungsformen des beanspruchten Gegenstands werden im Zuge der nachfolgenden detaillierten Beschreibung sowie unter Bezugnahme auf die Figuren deutlich, wobei gleiche Bezugszeichen gleiche Bauteile bezeichnen, und wobei:
  • 1 eine Darstellung ist, die eine Systemausführungsform zeigt.
  • 2 ist eine Darstellung, die einen integrierten Schaltkreis in der Systemausführungsform aus 1 detaillierter zeigt.
  • 3 ist eine Darstellung, die eine Schnittstellenschaltung des integrierten Schaltkreises aus 2 detaillierter zeigt.
  • 4 ist ein Ablaufdiagramm, das Vorgänge zeigt, die gemäß der Ausführungsform durchgeführt werden können.
  • Obwohl die nachfolgende detaillierte Beschreibung unter Bezugnahme auf veranschaulichende Ausführungsformen erfolgen soll, werden für Fachleute viele Alternativen, Modifikationen und Variationen derselben auf der Hand liegen. Der beanspruchte Gegenstand ist deshalb breit aufzufassen, und ist nur durch die begleitenden Ansprüche definiert.
  • Detaillierte Beschreibung
  • 1 zeigt eine Systemausführungsform 100 des beanspruchten Gegenstands. Das System 100 kann einen Host-Prozessor 12 aufweisen, der an einen Chipsatz 14 gekoppelt ist. Der Host-Prozessor 12 kann beispielsweise einen Intel®-Pen tium®-IV-Mikroprozessor aufweisen, der vom Inhaber der vorliegenden Anmeldung erhältlich ist. Natürlich kann der Host-Prozessor 12 alternativ auch einen anderen Typ Mikroprozessor umfassen, beispielsweise einen Mikroprozessor, der von einer anderen Quelle als dem Inhaber der vorliegenden Anmeldung erhältlich ist, ohne von dieser Ausführungsform abzuweichen.
  • Der Chipsatz 14 kann ein Host-Brücke/Hub-System umfassen, das den Host-Prozessor 12, einen Systemspeicher 21 und ein Benutzerschnittstellensystem 16 aneinander und an ein Bussystem 22 koppeln kann. Der Chipsatz 14 kann auch ein Eingabe-/Ausgabe-(I/O)-Brücke/Hub-System (nicht dargestellt) aufweisen, das das Host-Brücke/Bus-System an den Bus 22 koppeln kann. Der Chipsatz 14 kann Chips mit integrierten Schaltkreisen umfassen, z.B. solche, die aus Chipsätzen mit integrierten Schaltkreisen ausgewählt sind, welche von dem Inhaber der vorliegenden Anmeldung erhältlich sind (z.B. Grafikspeicher- und I/O-Steuerungshub-Chipsätze), obwohl auch oder alternativ andere Chips mit integrierten Schaltkreisen benutzt werden können, ohne von dieser Ausführungsform abzuweichen. Das Benutzerschnittstellensystem 16 kann z.B. eine Tastatur, eine Zeigeeinrichtung, und ein Anzeigesystem umfassen, wodurch ein menschlicher Benutzer Kommandos in das System 100 eingeben und dessen Betrieb überwachen kann.
  • Der Bus 22 kann einen Bus umfassen, der der Peripheral Component Interconnect (PCI) ExpressTM Basisspezifikation, Revision 1.0, veröffentlicht am 22. Juli 2002, erhältlich von der PCI Special Interest Group, Portland, Oregon, USA (im Folgenden als „PCI-ExpressTM-Bus" bezeichnet) entspricht. Alternativ kann der Bus 22 stattdessen einen Bus umfassen, der der PCI-X-Spezifikation Rev. 1.0a, 24. Juli 2000, erhältlich von der genannten PCI Special Interest Group, Portland, Oregon, USA (im Folgenden als „PCI-X-Bus" bezeichnet), entspricht. Auch kann der Bus 22 alternativ andere Typen und Konfigurierungen von Bussystemen umfassen, ohne von dieser Ausführungsform abzuweichen.
  • Eine Steuerungskarte 20 kann an einen Massenspeicher 28 gekoppelt sein und dessen Betrieb steuern. In dieser Ausführungsform kann der Massenspeicher 28 z.B. ein oder mehrere redundante Arrays unabhängiger Platten (Redundant Array of Independent Disks – RAID) 29 umfassen. Die RAID-Ebene, die von dem RAID 29 implementiert sein kann, kann 0, 1 oder größer als 1 sein. Das RAID 29 kann beispielsweise eine oder mehrere Plattenmassenspeichereinrichtungen und/oder eine oder mehrere Peripherieeinrichtungen (in 1 kollektiv oder einzeln durch den Block mit Bezugszeichen 52 gezeigt) umfassen, die in einer Protokolldomäne 50 enthalten sind. „Protokolldomäne" im hier verwendeten Sinne bezeichnet eine oder mehrere Vorrichtungen, die gemäß einem Kommunikationsprotokoll kommunizieren können.
  • Der Prozessor 12, der Systemspeicher 21, der Chipsatz 14, der Bus 22 und ein Schaltkreiskartenschlitz 30 können in einer Platine enthalten sein, z.B. einer Systemhauptplatine 32. Der Massenspeicher 28 kann in einem oder mehreren jeweiligen Gehäusen enthalten sein, die von dem Gehäuse getrennt sein können, in dem die Hauptplatine 32 und die in der Hauptplatine 32 enthaltenen Bauteile enthalten sind.
  • Die Karte 20 kann über eine oder mehrere Netzkommunikationsverbindungen 44 an den Massenspeicher 28 gekoppelt sein. Wie im Folgenden erörtert werden soll, kann die Karte 20 unter Benutzung z.B. des Serial-Advanced-Technology-Attachment-(S-ATA)-Protokolls und/oder des Serial-Attached-Small-Computer-Systems-Interface-(SAS)-Protokolls über die Verbindungen 44 Daten und/oder Kommandos mit dem Massenspeicher 28 austauschen. Natürlich kann die I/O-Steuerungskarte 20 mit dem Massenspeicher 28 Daten und/oder Kommandos alternativ unter Benutzung anderer und/oder zusätzlicher Kommunikationsprotokolle austauschen, ohne von dieser Ausführungsform abzuweichen.
  • Gemäß dieser Ausführungsform kann, wenn die Steuerungskarte 20 ein S-ATA-Protokoll benutzt, um Daten und/oder Kommandos mit dem Massenspeicher 28 auszutauschen, dieses dem Protokoll entsprechen oder mit dem Protokoll kompatibel sein, das in „Serial ATA: High Speed Specialized AT Attachment", Revision 1.0, veröffentlicht am 29. August 2001 von der Serial ATA Working Group, beschrieben ist. Wenn die Steuerungskarte 20 ferner alternativ ein SAS-Protokoll benutzt, um Daten und/oder Kommandos mit dem Massenspeicher 28 auszutauschen, kann dieses mit dem Protokoll übereinstimmen oder kompatibel sein, das in „Information Technology-Serial Attached SCSI (SAS)", Working Draft American National Standard of International Committee For Information Technology Standards (INCITS) T10 Technical Committee, Projekt T10/1562-D, Revision 2b, veröffentlicht am 19. Oktober 2002 vom American National Standards Institute, (im Folgenden als „SAS-Standard" bezeichnet) und/oder später veröffentlichten Versionen des SAS-Standards beschrieben ist.
  • Abhängig beispielsweise davon, ob der Bus 22 einen PCI-ExpressTM-Bus oder einen PCI-X-Bus umfasst, kann der Schaltkreiskartenschlitz 30 beispielsweise einen PCI-ExpressTM-Bus oder einen PCI-X-Bus umfassen, der mit dem Erweiterungsschlitz oder einer Schnittstelle 36 kompatibel ist oder dieser entspricht. Die Schnittstelle 36 kann eine Bussteckverbindung 37 umfassen, die elektrisch und mechanisch mit einer passenden Bussteckverbindung 34 verbunden sein kann, die in einem Erweiterungsschlitz oder einer Schnittstelle 35 in der Schaltkreiskarte 20 enthalten sein kann.
  • Die Schaltkreiskarte 20 kann einen integrierten Schaltkreis 40, eine Betriebsmoduswählerschaltung 42, einen computer lesbaren Startcodespeicher 39, und einen computerlesbaren Speicher 38 umfassen. Alternativ, wenngleich nicht in den Figuren gezeigt, kann der integrierte Schaltkreis 40 einen Speicher 38 und/oder einen Speicher 39 umfassen. Im hier verwendeten Sinne bezeichnet ein „integrierter Schaltkreis" eine Halbleitereinrichtung und/oder mikroelektronische Einrichtung, beispielsweise einen Halbleiterchip mit integrierten Schaltkreisen. Die Speicher 38 und/oder 39 können einen oder mehrere der folgenden Speichertypen umfassen: Halbleiter-Firmware-Speicher, programmierbaren Speicher, nicht flüchtigen Speicher, Lesespeicher, elektrisch programmierbaren Speicher, Schreib-/Lesespeicher, Flash-Speicher, Magnetplattenspeicher, und/oder optischen Plattenspeicher. Entweder zusätzlich oder alternativ können die Speicher 38 und/oder 39 jeweils andere und/oder später entwickelte Typen computerlesbarer Speicher umfassen.
  • Im Speicher 38 können maschinenlesbare Firmware-Programmbefehle gespeichert sein. Wie unten beschrieben, kann der integrierte Schaltkreis 40 auf diese Befehle zugreifen und sie ausführen. Bei Ausführung durch den integrierten Schaltkreis 40 können diese Befehle bewirken, dass der integrierte Schaltkreis 40 die Vorgänge durchführt, die hier als vom integrierten Schaltkreis 40 durchgeführt beschrieben werden.
  • Der Schlitz 30 und die Karte 20 sind so aufgebaut, dass die Karte 20 in den Schlitz 30 einführbar ist. Wenn die Karte 20 richtig in den Schlitz 30 eingeführt wird, werden die Steckverbindungen 34 und 36 elektrisch und mechanisch aneinander gekoppelt. Wenn die Steckverbindungen 34 und 36 derart miteinander verbunden sind, ist die Karte 20 elektrisch an den Bus 22 gekoppelt, und kann über den Bus 22 und den Chipsatz 14 mit dem Systemspeicher 21, dem Host-Prozessor 12, und/oder dem Benutzerschnittstellensystem 16 Daten und/oder Kommandos austauschen.
  • Alternativ, und ohne von dieser Ausführungsform abzuweichen, kann die wirksame Schaltung der Karte 20 nicht in der Karte 20 enthalten sein, sondern stattdessen in anderen Strukturen, Systemen und/oder Einrichtungen enthalten sein. Diese anderen Strukturen, Systeme und/oder Einrichtungen können beispielsweise in der Hauptplatine 32 enthalten sein, die an den Bus 22 gekoppelt ist, und können mit anderen Bauteilen im System 100 Daten und/oder Kommandos austauschen (beispielsweise mit dem Systemspeicher 21, dem Host-Prozessor 12 und/oder dem Benutzerschnittstellensystem 16).
  • 2 ist eine Darstellung des integrierten Schaltkreises 40. In dieser Ausführungsform kann der integrierte Schaltkreis 40 eine Prozessorschaltung 202, eine I/O-Schnittstellenschaltung 204, eine Speichersteuerungsschaltung 232, eine Speichersteuerungsschaltung 230, einen Prozessorbus 206, und eine Busbrückenschaltung 208 umfassen. Die Prozessorschaltung 202, die I/O-Schnittstellenschaltung 204, die Speichersteuerungsschaltung 232, die Speichersteuerungsschaltung 230, der Prozessorbus 206, und die Busbrückenschaltung 208 können an den Bus 206 gekoppelt sein und über diesen Daten und/oder Kommandos austauschen. Die Busbrückenschaltung 208 kann den Prozessorbus 206 an einen I/O-Bus 254 koppeln, und kann erlauben, dass Einrichtungen, die an den Bus 206 gekoppelt sind, mit Einrichtungen, die an den Bus 254 gekoppelt sind, Daten und/oder Kommandos austauschen, wobei eine Isolation des jeweiligen Adressraums der Busse 206 und 254 voneinander erlaubt ist. Die Speichersteuerungsschaltung 230, eine Host-Bus-Schnittstellenschaltung 210, eine Startcodespeicherschnittstelle 242, und eine Peripherieschnittstellenschaltung 244 können ebenfalls an den Bus 254 gekoppelt sein, und können über den Bus 254 Daten und/oder Kommandos untereinander austauschen. Die Speichersteuerungsschaltung 230 kann an den Speicher 38 gekoppelt sein. Die Startcodespeicherschnittstelle 242 kann an den Speicher 39 gekoppelt sein. Die Speichersteuerungsschaltung 230 kann an einen computerlesbaren Speicher 228 gekoppelt sein. Der Speicher 228 kann beispielsweise einen statischen Schreib-/Lesespeicher (SRAM) mit mehreren Anschlüssen umfassen, obwohl der Speicher 228 andere computerlesbare Speichertypen umfassen kann, ohne von dieser Ausführungsform abzuweichen. Die Host-Bus-Schnittstellenschaltung 210 kann an die Host-Bus-Schnittstelle 35 gekoppelt sein.
  • Die Moduswählerschaltung 42 kann an eine allgemein verwendbare I/O-Schnittstellenschaltung 248 gekoppelt sein, die in einer Schnittstellenschaltung 246 enthalten sein kann. Die Schnittstellenschaltung 246 kann andere und/oder zusätzliche Typen von Schnittstellenschaltungen (nicht dargestellt) umfassen, ohne von dieser Ausführungsform abzuweichen. Die Schnittstellenschaltung, die in der Schnittstelle 246 enthalten ist, kann über eine Peripherieschnittstellenschaltung 244 an den Bus 254 gekoppelt sein, welche erlauben kann, dass die Schnittstellenschaltung in der Schnittstelle 246 an den Peripheriebus in der Schaltung 246 gekoppelt sein kann, um mit Einrichtungen, die an den Bus 254 gekoppelt sein können, Daten und/oder Kommandos auszutauschen.
  • Die Startcodespeicherschnittstellenschaltung 242 kann erlauben, dass Programmbefehle, die in Speicher 39 gespeichert sind, von einer Prozessorschaltung 202 aus diesem abgerufen und ausgeführt werden, nachdem der integrierte Schaltkreis 40 beispielsweise zurückgesetzt wurde. Genauer ausgedrückt, kann die Prozessorschaltung 202 über den Bus 206, die Brückenschaltung 208, den Bus 254, und die Schnittstellenschaltung 242 ein oder mehrere Kommandos an den Speicher 39 bereitstellen, was bewirken kann, dass diese Programmbefehle aus dem Speicher 39 abgerufen und über die Schnittstelle 242, den Bus 254, die Brückenschaltung 208 und den Bus 206 an die Schaltung 202 bereitgestellt werden.
  • Der integrierte Schaltkreis 40 kann auch eine Leistungsüberwachungs-(Performance Monitoring – PMON)-Schaltung 226 umfassen. Die PMON-Schaltung 226 kann z.B. den Austausch von Daten und/oder Kommandos überwachen, der über den Bus 206 und/oder den Bus 254 ausgeführt wird, und oder andere und/oder zusätzliche Vorgänge, die von anderen Schaltungen im integrierten Schaltkreis 40 ausgeführt werden, und kann wenigstens teilweise auf Grundlage einer solchen Überwachung bestimmen, ob der integrierte Schaltkreis 40 fehlerfrei arbeitet. Die PMON-Schaltung 226 kann die Resultate ihrer Überwachungsaktivitäten z.B. der Prozessorschaltung 202 und/oder externen Einrichtungen mitteilen, z.B. über Schaltung 210 dem Host-Prozessor 12.
  • Die Prozessorschaltung 202 kann eine Prozessorkernschaltung aufweisen, die mehrere Prozessorkerne 216 und 218 umfassen kann. Im hier verwendeten Sinne kann ein „Prozessorkern" festverdrahtete Schaltungen, programmierbare Schaltungen, und/oder Zustandsautomatenschaltungen umfassen. Außerdem kann im hier verwendeten Sinne „Schaltung" beispielsweise einzeln oder in Kombination festverdrahtete Schaltungen, programmierbare Schaltungen, und/oder Zustandsautomatenschaltungen und/oder Firmware umfassen, welche Befehle speichert, die von programmierbaren Schaltungen ausgeführt werden. In dieser Ausführungsform kann jeder Prozessorkern 216 und 218 eine jeweilige Schaltung umfassen, die mit der Intel® XScaleTM Kern-Mikroarchitektur kompatibel ist oder übereinstimmt, die im „Intel® XScaleTM Core Developers Manual", veröffentlicht im Dezember 2000 vom Inhaber der vorliegenden Anmeldung, beschrieben ist. Natürlich kann, wie oben erwähnt, die Schaltung 202 auch andere Prozessorkernschaltungstypen umfassen, ohne von dieser Ausführungsform abzuweichen.
  • In dieser Ausführungsform können die Prozessorkerne 216 und 218 beispielsweise jeweils einen computerlesbaren Programm befehlsspeicher 220 bzw. 224 umfassen, der jeweils einen Satz von Mikrocodeprogrammbefehlen enthält, die die jeweiligen Prozessorkerne 216 und 218 ausführen können. Die Ausführung dieser jeweiligen Programmbefehlssätze durch die Prozessorkerne 216 und 218 kann beispielsweise bewirken, dass die Schaltung 202, der Kern 216 und/oder der Kern 218 Vorgänge ausführen, die hier als jeweils von der Schaltung 202, dem Kern 216 und/oder dem Kern 218 ausgeführt beschrieben werden. Wenigstens ein Teil dieser jeweiligen Programmbefehlssätze kann z.B. aus dem Startcodespeicher 39 abgerufen werden, nachdem beispielsweise der integrierte Schaltkreis 40 zurückgesetzt wurde. Der Prozessorkern 216 kann auch einen Cache-Speicher der Ebene 2 222 umfassen, der von dem Prozessorkern 216 beim Ausführen der Vorgänge benutzt werden kann, die hier als vom Prozessorkern 216 ausgeführt beschrieben werden.
  • Die Schnittstellenschaltung 204 kann eine Protokollmaschinenschaltung 250A, 250B, ... 250N und eine physikalische Schichtschnittstellenschaltung 252A, 252B, ... 252N umfassen. Wie unten beschrieben, kann jede einzelne Protokollmaschinenschaltung 250A, 250B, ... 250N einer jeweiligen physikalischen Schichtschnittstellenschaltung 252A, 252B, ... 252N zugeordnet sein und Daten und/oder Kommandos mit dieser austauschen. So kann beispielsweise die Protokollmaschinenschaltung 250A der physikalischen Schichtschnittstellenschaltung 252A zugeordnet sein und Daten und/oder Kommandos mit dieser austauschen, die Protokollmaschinenschaltung 250B der physikalischen Schichtschnittstellenschaltung 252B zugeordnet sein und Daten und/oder Kommandos mit dieser austauschen, und die Protokollmaschinenschaltung 250N der physikalischen Schichtschnittstellenschaltung 252N zugeordnet sein und Daten und/oder Kommandos mit dieser austauschen. In dieser Ausführungsform können der jeweilige Aufbau und Betrieb der einzelnen Protokollmaschinenschaltungen 250A, 250B, ... 250N identisch sein. Außerdem können in dieser Ausführungsform der jeweilige Aufbau und Betrieb der einzelnen Schnittstellen 252A, 252B, ... 252N identisch sein.
  • Ohne von dieser Ausführungsform abzuweichen, kann die jeweilige Anzahl von Protokollmaschinen 250A, 250B, ... 250N, der physikalischen Schichtschnittstellen 252A, 252B, ... 252N und Verbindungen 44 variieren. In dieser Ausführungsform allerdings entspricht die Anzahl der Protokollmaschinen 250A, 250B, ... 250N der Anzahl der physikalischen Schichtschnittstellen 252A, 252B, ... 252N. Auch kann in dieser Ausführungsform jede der physikalischen Schichtschnittstellen 252A, 252B, ... 252N an eine jeweilige Verbindung 44 gekoppelt sein; deshalb kann in dieser Ausführungsform die Anzahl der physikalischen Schichtschnittstellen 252A, 252B, ... 252N gleich der Anzahl von Verbindungen 44 sein.
  • Die Hostbusschnittstellenschaltung 210 kann eine jeweilige Schnittstellenschaltung umfassen, die dazu benutzt werden kann, zu erlauben, dass der integrierte Schaltkreis 40 gemäß einem von mehreren unterschiedlichen Hostbusprotokollen, mit denen der Bus 22 übereinstimmen oder kompatibel sein kann, Daten und/oder Kommandos mit anderen Einrichtungen austauschen kann, die an den Bus 22 gekoppelt sein können. Beispielsweise kann die Schaltung 210 in dieser Ausführungsform eine PCI-X-Busschnittstellenschaltung 212 und eine PCI-ExpressTM-Busschnittstellenschaltung 214 umfassen. Das heißt, wie im Folgenden erörtert werden soll, es kann wenigstens teilweise in Abhängigkeit von dem Busprotokoll, mit dem der Bus 22 übereinstimmen oder kompatibel sein kann, ein bestimmter Betriebsmodus des integrierten Schaltkreises 40 ausgewählt werden, in dem nur eine einzige, jeweils passende der jeweiligen Schnittstellenschaltungen in Schaltung 210 dazu aktiviert werden kann, Daten und/oder Kommandos mit Einrichtungen auszutauschen, die an den Bus 22 gekoppelt sein können, während andere jeweilige Schnittstellenschaltungen in der Schaltung 210 deaktiviert sein können.
  • Obwohl nicht in den Figuren gezeigt, können in dieser Ausführungsform die Speichersteuerungsschaltung 232 und/oder eine DMA-Schaltung 234 an den Bus 254 gekoppelt sein. In dieser Ausführungsform kann die Speichersteuerungsschaltung 232 eine Speicherdirektzugriffs-(Direct Memory Access – DMA)-Schaltung 234 umfassen. Die Speichersteuerungsschaltung 232 kann die Speicherung von Daten in, und das Abrufen von Daten aus dem Speicher 228 steuern. Beispielsweise kann die Speichersteuerungsschaltung 232 in dieser Ausführungsform Kommandos und/oder Daten mit z.B. der Prozessorschaltung 202, der Schnittstellenschaltung 204, der Schnittstellenschaltung 210 und/oder der Speichersteuerungsschaltung 230 austauschen. Wenigstens teilweise auf Grundlage dieser Kommandos kann die Speichersteuerungsschaltung 232 Daten und/oder Kommandos mit dem Speicher 228 austauschen. Dies kann bewirken, dass der Speicher 228 entsprechend den Kommandos und/oder Daten, die an die Speichersteuerungsschaltung 232 geliefert werden, Daten speichert und/oder abruft. Außerdem kann abhängig von dem ausgewählten Betriebsmodus des integrierten Schaltkreises 40 die DMA-Schaltung 234 auf Grundlage von Kommandos und/oder Daten, die von der Schaltung 234 von anderen Schaltungen in dem integrierten Schaltkreis 40 empfangen wurden, den Austausch von Daten und/oder Kommandos, die von der I/O-Schnittstellenschaltung 204 empfangen werden oder gesendet werden sollen, über eine oder mehrere Verbindungen 44 zwischen der I/O-Schnittstelle 204 und den anderen Schaltungen im integrierten Schaltkreis 40 steuern. Ohne von dieser Ausführungsform abzuweichen, kann die DMA-Schaltung 234 auch nicht in der Schaltung 232 enthalten sein, sondern kann stattdessen eine Schaltung umfassen, die separat von der Schaltung 232 ausgebildet ist, und an die Schaltung 232 und den Bus 254 gekoppelt ist.
  • In dieser Ausführungsform kann die Speichersteuerungsschaltung 230 eine RAID-vorgangsbezogene Schaltung 240 umfassen.
  • Die Schaltung 240 kann beispielsweise eine DMA-Schaltung 238 und eine RAID-Berechnungsschaltung 236 umfassen. Die Speichersteuerungsschaltung 230 kann die Speicherung von Daten in dem externen Speicher 38 und das Abrufen von Daten aus demselben steuern. In dieser Ausführungsform beispielsweise kann die Speichersteuerungsschaltung 230 Kommandos und/oder Daten z.B. mit der Prozessorschaltung 202, der Schnittstellenschaltung 210 und/oder der Speichersteuerungsschaltung 232 austauschen. Wenigstens teilweise auf Grundlage dieser Kommandos kann die Speichersteuerungsschaltung 230 Daten und/oder Kommandos mit dem Speicher 38 austauschen. Dies kann bewirken, dass der Speicher 38 gemäß den Kommandos und/oder Daten, die an die Speichersteuerungsschaltung 232 geliefert werden, Daten speichert und/oder abruft. Außerdem kann die DMA-Schaltung 238 abhängig von dem ausgewählten Betriebsmodus des integrierten Schaltkreises 40 auf Grundlage der Kommandos und/oder Daten, die von der Schaltung 238 von anderen Schaltungen im integrierten Schaltkreis 40 empfangen wurden, den Austausch von RAID-bezogenen Daten zwischen diesen anderen Schaltungen in dem integrierten Schaltkreis 40 steuern. Im hier verwendeten Sinne bezeichnen „RAID-bezogene Daten" Daten, die an Vorgängen, welche beim Implementieren und/oder Verwalten eines RAID, z.B. RAID 29, beteiligt sind, als Resultat derselben erzeugt werden, als Eingabe und/oder Operanden dabei benutzt werden, und/oder beim Ausführen und/oder Unterstützen derselben benutzt werden. Die RAID-Berechnungsschaltung 236 kann eine arithmetische Beschleunigungsschaltung (nicht dargestellt) umfassen, die dazu in der Lage sein kann, eine oder mehrere arithmetische Operationen unter Benutzung und/oder Beteiligung RAID-bezogener Daten durchzuführen, wie z.B. logische Exklusiv-ODER-Operationen, die aus den ursprünglichen Benutzerdaten RAID-Paritätsdaten erzeugen können, oder die ursprünglichen Benutzerdaten aus solchen RAID-Paritätsdaten wiederherstellen können. Ohne von dieser Ausführungsform abzuweichen, können die DMA-Schaltung 238 und/oder die RAID-Be rechnungsschaltung 236 auch nicht in der Schaltung 230 enthalten sein, sondern können stattdessen eine Schaltung umfassen, die separat von der Schaltung 230 ausgebildet ist, und an die Schaltung 230 und den Bus 254 gekoppelt ist. Ebenfalls ohne von dieser Ausführungsform abzuweichen, kann der integrierte Schaltkreis 40 auch keine RAID-Berechnungsschaltung 236 umfassen, und die arithmetischen und/oder logischen Operationen, die von der Schaltung 236 durchgeführt werden, können stattdessen von dem Prozessorkern 216 durchgeführt werden.
  • Wie zuvor erwähnt, kann der jeweilige Aufbau der Protokollmaschinen 250A, 250B, ... 250N identisch sein. 3 ist eine Darstellung, die die Protokollmaschine 250A illustriert. Die Protokollmaschine 250A kann eine Schnittstellenschaltung 302, eine Datentransportschichtschaltung 203, eine Anschlussschichtschaltung 306, eine Verbindungssicherungsschichtschaltung 308, und eine SAS-Verbindungsschichtschaltung 310 umfassen. Obwohl in den Figuren nicht gezeigt, kann die Schaltung 302 die Schaltungen 304, 306, 308 und 310 an den Bus 206 koppeln, damit die Schaltungen 304, 306, 308 und/oder 310 Daten und/oder Kommandos mit dem Prozessorkern 218 austauschen können. Die SAS-Verbindungsschichtschaltung 310 kann an die physikalische Schichtschaltung 252A gekoppelt sein und Daten/oder Kommandos mit dieser austauschen. Die Transportschichtschaltung 304 kann an die Anschlussschichtschaltung 306 gekoppelt sein und Daten und/oder Kommandos mit dieser austauschen. Die Anschlussschichtschaltung 306 kann auch an die Verbindungssicherungsschichtschaltung 308 gekoppelt sein und Daten und/oder Kommandos mit dieser austauschen. Die SAS-Verbindungsschicht 310 kann an die Verbindungssicherungsschichtschaltung 308 und die Anschlussschichtschaltung 306 gekoppelt sein und Daten und/oder Kommandos mit diesen austauschen.
  • In dieser Ausführungsform kann die Transportschichtschalturig 304 eine SMP-(Serial Management Protocol)-Trans portschichtschaltung 312, eine ATA-(Serial Advanced Technology Attachment)-STP-(Tunneled Protocol)-Transportschichtschaltung 314, und eine SCSI-(Serial Small Computer System Interface)-SSP-(Simple Signature Protocol)-Transportschichtschaltung 316 umfassen. In dieser Ausführungsform kann außerdem die Anschlussschichtschaltung 306 eine Verbindungsverwaltungsschaltung 318 umfassen. Des Weiteren kann die Verbindungssicherungsschichtschaltung 308 in dieser Ausführungsform eine SMP-Verbindungsschichtschaltung 320, eine STP-Verbindungsschichtschaltung 322, und eine SSP-Verbindungsschichtschaltung 324 umfassen. In dieser Ausführungsform kann die SAS-Verbindungsschichtschaltung 310 eine Außerband-(Out of Band – OOB)-Signalverwaltungsschaltung 326 und eine S-ATA-Verbindungsgeschwindigkeits-Aushandlungssteuerschaltung 328 umfassen.
  • Soweit nicht anders angegeben, versteht es sich, dass die Schaltungen 304, 306, 308 und 310 übliche SAS-Kommunikationsprozesse, -abläufe und -verfahren implementieren können. Soweit nicht anders angegeben, versteht es sich beispielsweise, dass die Schaltungen 312, 314 und 316 jeweils übliche SMP-Transportschicht-, STP-Transportschicht- bzw. SSP-Transportschicht-Protokolle, Prozesse, Abläufe und Verfahren implementieren können, und auch jeweilige Signalsätze erzeugen können, die das Ausführen solcher Protokolle, Prozesse, Abläufe und Verfahren bewirken können. Auch kann die Schaltung 306 beispielsweise übliche SAS-Anschlusssteuerungsprotokolle, -abläufe, -prozesse und -verfahren implementieren, und kann auch jeweilige Signale erzeugen, die das Ausführen solcher Protokolle, Prozesse, Abläufe und Verfahren bewirken können. Ferner können beispielsweise die Schaltungen 320, 322 und 324 übliche SMP-Verbindungsschicht-, STP-Verbindungsschicht- und SSP-Verbindungsschicht-Protokolle, Abläufe, Prozesse und Verfahren implementieren, und auch jeweilige Signalsätze erzeugen, die das Ausführen solcher Protokolle, Prozesse, Abläufe und Verfahren bewirken können. Außerdem kann beispielsweise die Schaltung 310 übliche SAS-Verbindungssicherungsschichtprotokolle, -abläufe, -prozesse und -verfahren implementieren, um z.B. die Übertragungsschnittstelle 252A zu steuern, und kann jeweilige Signalsätze erzeugen, die das Ausführen solcher Protokolle, Prozesse, Abläufe und Verfahren bewirken können. Natürlich sind abhängig von den jeweiligen Protokollen, über die der integrierte Schaltkreis 40 zu kommunizieren in der Lage ist, viele Variationen, Modifikationen und Alternativen möglich, ohne von dieser Ausführungsform abzuweichen.
  • In dieser Ausführungsform kann jede physikalische Schichtschnittstellenschaltung 252A, 252B, ... 252N eine jeweilige analoge Front-End-(AFE)-Schaltung 253A, 253B, ... 253N umfassen, die Daten und/oder Steuerungssignale über eine jeweilige Verbindung 44 von dem Massenspeicher 28 empfangen und/oder an diesen senden kann. In dieser Ausführungsform kann die physikalische Schichtschnittstellenschaltung 252A eine AFE-Schaltung 253A umfassen, die über eine der Verbindungen 44 Daten und/oder Steuerungssignale von einem oder mehreren Massenspeichereinrichtungen, die in einer oder mehreren Einrichtungen 52 enthalten sind, empfangen kann und/oder an diese übertragen kann.
  • Wie zuvor erwähnt, können eine oder mehrere Einrichtungen 52 in einer Protokolldomäne 50 enthalten sein. In dieser Ausführungsform kann die Protokolldomäne 50 entweder eine SAS-Domäne oder eine S-ATA-Domäne sein. Wenn die Protokolldomäne 50 eine SAS-Domäne ist, können eine oder mehrere Einrichtungen 52 dazu in der Lage sein, über eine der Verbindungen 44 unter Benutzung eines SAS-Protokolls zu kommunizieren. Wenn umgekehrt die Protokolldomäne 50 eine S-ATA-Domäne ist, können eine oder mehrere Einrichtungen 52 dazu in der Lage sein, über eine der Verbindungen 44 unter Benutzung eines S-ATA-Protokolls zu kommunizieren.
  • Wie im Folgenden erörtert, kann der integrierte Schaltkreis 40 in dieser Ausführungsform wenigstens teilweise in Abhängigkeit von dem ausgewählten Betriebsmodus des integrierten Schaltkreises 40 dazu in der Lage sein, zu erkennen, ob eine oder mehrere Einrichtungen 52 dazu in der Lage sind, über ein SAS-Kommunikationsprotokoll oder über ein S-ATA-Kommunikationsprotokoll zu kommunizieren. Wenigstens teilweise auf Grundlage dieser Erkennung durch den integrierten Schaltkreis 40 kann der integrierte Schaltkreis 40 wenigstens teilweise auswählen, ob mit einer oder mehreren Einrichtungen 52 unter Benutzung eines SAS- oder eines S-ATA-Kommunikationsprotokolls zu kommunizieren ist, um es dem integrierten Schaltkreis 40 zu ermöglichen, mit einer oder mehreren Einrichtungen 52 zu kommunizieren.
  • Gemäß dem SAS- und dem S-ATA-Protokoll kann beispielsweise während der Initialisierung der Kommunikationsverbindung zwischen dem integrierten Schaltkreis 40 und dem Massenspeicher 28 z.B. nach einem Zurücksetzen des Systems 100 über eine der Verbindungen 44 eine OOB-Signalfolge zwischen der AFE-Schaltung 253A und einer oder mehreren Einrichtungen 52 ausgetauscht werden. Entsprechend dem S-ATA-Protokoll kann für den Fall, dass eine oder mehrere Einrichtungen 52 dazu in der Lage sind, unter Benutzung des S-ATA-Protokolls zu kommunizieren, und sie direkt über eine der Verbindungen 44 an die AFE-Schaltung 253A gekoppelt sind (d.h. wenn eine oder mehrere Einrichtungen 52 nicht über einen SAS-Expander an die AFE-Schaltung 253A gekoppelt sind), erwartet werden, dass eine oder mehrere Einrichtungen 52 während einer S-ATA-OOB-Signalfolge eine vorbestimmte, spezielle primitive Signalfolge (in 1 durch den Block mit Bezugszeichen 54 bezeichnet), die z.B. ein vorbestimmtes Kommatextzeichen, wie z.B. ein K28,5-Textzeichen umfassen kann, an die AFE-Schaltung 253A übertragen. Im hier verwendeten Sinne umfasst eine „Signalfolge" ein oder mehrere Signale. Gemäß dem SAS-Protokoll kann umgekehrt für den Fall, dass eine oder mehrere Einrichtungen 52 dazu in der Lage sind, unter Benutzung des SAS-Protokolls zu kommunizieren, erwartet werden, dass eine oder mehrere Einrichtungen 52 diese spezielle Signalfolge 54 während einer SAS-OOB-Signalfolge nicht an die AFE-Schaltung 253A übertragen, sondern stattdessen während dieser Signalfolge eine vorbestimmte COMSAS-Signalfolge 56 an die AFE-Schaltung 253A übertragen. Wenn also die AFE-Schaltung 253A während einer solchen OOB-Signalfolge von einer oder mehreren Einrichtungen 52 die Signalfolge 54 empfängt, aber nicht die vorbestimmte COMSAS-Signalfolge 56 empfängt, kann dies anzeigen, dass die Protokolldomäne 50 eine S-ATA-Domäne ist, eine oder mehrere Einrichtungen 52 direkt über eine der Verbindungen 44 an die AFE-Schaltung 253A gekoppelt sind, und eine oder mehrere Einrichtungen 52 dazu in der Lage sind, über ein S-ATA-Protokoll mit dem integrierten Schaltkreis 40 zu kommunizieren. Wenn die AFE-Schaltung 253A umgekehrt während einer solchen OOB-Signalfolge von einer oder mehreren Einrichtungen 52 die COMSAS-Signalfolge 56 empfängt, aber nicht die Signalfolge 54, kann dies anzeigen, dass die Protokolldomäne 50 eine SAS-Domäne ist, und eine oder mehrere Einrichtungen 52 dazu in der Lage sind, über ein SAS-Protokoll mit dem integrierten Schaltkreis 40 zu kommunizieren.
  • Gemäß dieser Ausführungsform kann die physikalische Schichtschnittstellenschaltung 252A während der Initialisierung der Kommunikationsverbindung Signale an die OOB-Verwaltungsschaltung 320 bereitstellen, die die OOB-Signale anzeigen, die die AFE-Schaltung 253A von einer oder mehreren Einrichtungen 52 empfangen hat. Die OOB-Verwaltungsschaltung 320 kann die Signale prüfen, die ihr von der Schnittstellenschaltung 252A bereitgestellt wurden, um zu detektieren, ob die AFE-Schaltung 253A während einer OOB-Signalfolge von einer oder mehreren Einrichtungen 52 die Signalfolge 54 oder die COMSAS-Signalfolge 56 empfangen hat. Sobald die OOB-Verwaltungsschaltung 320 detektiert hat, dass die AFE-Schaltung 253A während einer OOB-Signal folge die Signalfolge 54 oder die COMSAS-Signalfolge 56 empfangen hat, kann die OOB-Verwaltungsschaltung 320 ein oder mehrere Signale an den Prozessorkern 218 bereitstellen, das oder die anzeigen können, ob die AFE-Schaltung 253A die Signalfolge 54 oder die COMSAS-Signalfolge 56 empfangen hat.
  • Nach Abschluss dieser OOB-Signalfolge kann der Prozessorkern 218 wenigstens teilweise auf Grundlage dessen, ob die OOB-Verwaltungsschaltung 320 detektiert hat, dass die AFE-Schaltung 253A während der OOB-Signalfolge die Signalfolge 54 und/oder die COMSAS-Signalfolge 56 empfangen hat oder nicht empfangen hat, bestimmen, ob eine oder mehrere Einrichtungen 52 direkt über eine der Verbindungen 44 an den integrierten Schaltkreis 40 gekoppelt sind, und dazu in der Lage sind, mit dem integrierten Schaltkreis 40 über ein SAS-Protokoll zu kommunizieren. Wenn die Schaltung 320 beispielsweise detektiert hat, dass die AFE-Schaltung 253A während dieser OOB-Signalfolge von einer oder mehreren Einrichtungen 52 die Signalfolge 54 empfangen hat, aber nicht die COMSAS-Signalfolge 56, kann der Prozessorkern 218 bestimmen, dass eine oder mehrere Einrichtungen 52 direkt über eine der Verbindungen 44 an den integrierten Schaltkreis 40 gekoppelt sind, und dazu in der Lage sind, mit dem integrierten Schaltkreis 40 über ein S-ATA-Protokoll zu kommunizieren. Wenn umgekehrt die Schaltung 320 detektiert hat, dass die AFE-Schaltung 253A während dieser OOB-Signalfolge die COMSAS-Signalfolge 56 empfangen hat, aber nicht die Signalfolge 54, kann der Prozessorkern 218 bestimmen, dass eine oder mehrere Einrichtungen 52 dazu in der Lage sind, mit dem integrierten Schaltkreis 40 über ein SAS-Protokoll zu kommunizieren.
  • Abhängig von den jeweiligen Kommunikationsprotokollen, über die der integrierte Schaltkreis 40 zu kommunizieren in der Lage ist, können natürlich das Textzeichen 54 und/oder das Signal 56 variieren, ohne von dieser Ausführungsform abzu weichen. Abhängig von den jeweiligen Kommunikationsprotokollen, über die der integrierte Schaltkreis 40 und/oder eine oder mehreren Einrichtungen 52 zu kommunizieren in der Lage sind, kann außerdem die Art und Weise, wie der integrierte Schaltkreis 40 das oder die Kommunikationsprotokolle bestimmt, über das oder die eine oder mehrere Einrichtungen zu kommunizieren in der Lage sind, variieren, ohne von dieser Ausführungsform abzuweichen.
  • Wenn der Prozessorkern 218 bestimmt, dass eine oder mehreren Einrichtungen 52 direkt über eine der Verbindungen 44 an die AFE-Schaltung 253A gekoppelt sind, und in der Lage dazu sind, über ein S-ATA-Protokoll mit dem integrierten Schaltkreis 40 zu kommunizieren, kann der Prozessorkern 218 ein oder mehrere jeweilige Signale an die Schaltungen 304, 306, 308, 310 und 252A ausgeben. Dies kann bewirken, dass die Schaltungen 250A und 252A dazu aktiviert werden, zu erlauben, dass der integrierte Schaltkreis 40 direkt über eine der Verbindungen 44 mit einer oder mehreren Einrichtungen 52 unter Benutzung des S-ATA-Protokolls kommuniziert. Genauer ausgedrückt, kann dies bewirken, dass beispielsweise die Schaltungen 312, 316, 318, 320 und 324 für ihre Beteiligung an der Kommunikation zwischen dem integrierten Schaltkreis 40 und einer oder mehrerer Einrichtungen 52 deaktiviert werden, und kann auch bewirken, dass die Schaltungen 314, 322 und 328 dafür aktiviert werden, sich aktiv an der Ausführung der Kommunikation zwischen dem integrierten Schaltkreis 40 und einer oder mehrerer Einrichtungen 52 zu beteiligen. Alternativ kann die Schaltung 310 wenigstens teilweise in Reaktion auf die Signalisierung der Schaltung 310 durch den Prozessorkern 218 der Schaltung 306 und/oder der Schaltung 318 signalisieren; dies kann bewirken, dass die Schaltung 318 für ihre Beteiligung an der Kommunikation zwischen dem integrierten Schaltkreis 40 und einer oder mehrerer Einrichtungen 52 deaktiviert wird.
  • Das Signalisieren der Schaltung 252A durch den Prozessorkern 218 kann wenigstens teilweise bewirken, dass die Sende- und/oder Empfangssignalisierungspegel der AFE-Schaltung 253A so eingestellt werden, dass sie mit den S-ATA-Sende- und/oder Empfangssignalisierungspegeln übereinstimmen oder kompatibel sind. Das heißt, dies kann bewirken, dass die AFE-Schaltung 253A die Spannungs- und/oder Strompegel von Signalen, die von der AFE-Schaltung 253A an eine oder mehrere Einrichtungen 52 übertragen werden, derart anpasst, dass sie mit S-ATA-Sende- und/oder Empfangssignalisierungspegeln übereinstimmen oder kompatibel sind, und/oder es kann bewirken, dass die AFE-Schaltung 253A Signale detektiert, die von der AFE-Schaltung 253A empfangen werden, deren Spannungs- und/oder Strompegel mit empfangenen S-ATA-Spannungs- und/oder Strompegel übereinstimmen oder kompatibel sind.
  • Das Signalisieren der Schaltung 310 durch den Prozessorkern 218 kann bewirken, dass die Schaltung 328 dafür aktiviert wird, übliche S-ATA-Kommunikationsverbindungsgeschwindigkeits-Aushandlungsprotokolle, -abläufe, -prozesse und -verfahren zu implementieren, um mit einer oder mehreren Einrichtungen 52 die passende Geschwindigkeit für die Kommunikation auszuhandeln, die über eine der Verbindungen 44 zwischen einer oder mehreren Einrichtungen 52 und dem integrierten Schaltkreis 40 ausgeführt werden soll. Die Schaltung 310 kann ein oder mehrere Signale erzeugen und an die Schnittstelle 252A übertragen, die das Ausführen solcher Protokolle, Abläufe, Prozesse und Verfahren bewirken können.
  • Wenn im Betrieb des Systems 100 die Schaltung 318 dafür aktiviert wird, aktiv an der Ausführung der Kommunikation zwischen dem integrierten Schaltkreis 40 und einer oder mehreren Einrichtungen 52 beteiligt zu sein, kann die Schaltung 318 wenigstens teilweise Verbindungsverwaltungsfunktionen implementieren, die wenigstens teilweise ein Timeout der Kommunikation zwischen dem integrierten Schaltkreis 40 und einer oder mehreren Einrichtungen 52 verhindern. Wenn im Betrieb des Systems 100 umgekehrt die Schaltung dafür deaktiviert wird, sich aktiv an der Ausführung einer solchen Kommunikation zu beteiligen, kann der Prozessorkern 218 ein oder mehrere Signale an die Schaltung 250A bereitstellen, die bewirken können, dass die Schaltung 250A eine S-ATA-Hostfunktion übernimmt, was die Aufrechterhaltung dieser Kommunikation ohne Timeout bewirken kann.
  • Wenn umgekehrt der Prozessorkern 218 bestimmt, dass eine oder mehrere Einrichtungen 52 dazu in der Lage sind, über ein SAS-Protokoll mit dem integrierten Schaltkreis 40 zu kommunizieren, kann der Prozessorkern 218 ein oder mehrere jeweilige Signale an die Schaltungen 304, 306, 308, 310 und 252A ausgeben. Dies kann bewirken, dass die Schaltung 250A und 252A dafür aktiviert werden, zu erlauben, dass der integrierte Schaltkreis über eine der Verbindungen 44 unter Benutzung eines SAS-Protokolls mit einer oder mehreren Einrichtungen 52 kommuniziert. Genauer ausgedrückt, das Signalisieren der Schaltung 304, der Schaltung 306 und der Schaltung 308 kann jeweils bewirken, dass die Schaltung 314 dafür deaktiviert wird, sich aktiv an der Kommunikation zwischen dem integrierten Schaltkreis 40 und einer oder mehreren Einrichtungen 52 zu beteiligen, die Schaltung 318 dafür aktiviert wird, sich aktiv an dieser Kommunikation zu beteiligen, und die Schaltung 322 dafür deaktiviert wird, sich an dieser Kommunikation zu beteiligen. Abhängig davon, ob die Kommunikation zwischen einer oder mehreren Einrichtungen 52 und dem integrierten Schaltkreis 40 über ein SMP- oder ein SSP-SAS-Protokoll ausgeführt wird, kann das Signalisieren der Schaltung 304 durch den Prozessorkern 218 außerdem bewirken, dass die Schaltung 312 oder 316 jeweils dafür aktiviert wird, sich aktiv an dieser Kommunikation zu beteiligen. Außerdem kann das Signalisieren der Schaltung 252A durch den Prozessorkern 218 wenigstens teilweise bewirken, dass die Sende- und/oder Empfangssignalpegel der AFE-Schaltung 253A so eingestellt werden, dass sie mit den SAS-Sende- und/oder Empfangssignalpegeln übereinstimmen oder kompatibel sind. Das heißt, es kann bewirken, dass die AFE-Schaltung 235A die Spannungs- und/oder Strompegel von Signalen, die von der AFE-Schaltung 253A an eine oder mehrere Einrichtungen 52 übertragen werden, derart anpasst, dass sie mit den SAS-Sende- und/oder Empfangssignalpegeln übereinstimmen oder kompatibel sind, und/oder es kann auch bewirken, dass die AFE-Schaltung 253A Signale detektiert, die von der AFE-Schaltung 253A empfangen werden, und deren Spannungs- und/oder Strompegel mit empfangenen SAS-Sende- und/oder Empfangssignalpegeln übereinstimmen oder kompatibel sind. Ferner kann das Signalisieren der Schaltung 310 durch den Prozessorkern 218 bewirken, dass die Schaltung 328 dafür deaktiviert wird, übliche S-ATA-Kommunikationsverbindungsgeschwindigkeits-Aushandlungsprotokolle, -abläufe, -prozesse und -verfahren zu implementieren, wie zuvor beschrieben.
  • In dieser Ausführungsform kann wenigstens teilweise auf Grundlage von und/oder als Resultat von einem oder mehreren Signalen, die von einer Wählerschaltung 42 an eine GPIO-Schnittstellenschaltung 248 bereitgestellt werden, von einem oder mehreren Signalen, die von dem Hostprozessor 12 an die Hostbusschnittstellenschaltung 210 bereitgestellt werden, und/oder von einer Ausführung durch die Prozessorschaltung 202 oder einer oder mehreren Programmbefehlen, die in Speicher 39 gespeichert sind, ein Betriebsmodus des integrierten Schaltkreises 40 ausgewählt werden. Wenigstens teilweise in Abhängigkeit von dem ausgewählten Betriebsmodus des integrierten Schaltkreises 40 kann der integrierte Schaltkreis 40 gemäß einer oder mehreren Betriebskenngrößen arbeiten, die dem ausgewählten Betriebsmodus entsprechen können. Beispielsweise können diese Betriebskenngrößen wenigstens teilweise in Abhängigkeit von dem ausgewählten Betriebsmodus des integrierten Schaltkreises 40 beinhalten, welche der Busschnittstellen 212 und 214 dafür aktiviert oder deaktiviert wird, mit dem Bus 22 zu kommunizieren, und/oder welche Protokollmaschinen 250A, 250B, ... 250N dafür aktiviert oder deaktiviert wird, mit dem Massenspeicher 28 zu kommunizieren. Außerdem oder alternativ können diese Betriebskenngrößen beispielsweise umfassen, ob ein oder mehrere Kommunikationsprotokolle, die von einer oder mehreren Protokollmaschinen 250A, 250B, ... 250N implementiert sind, wenigstens teilweise auf Grundlage des Erkennens von einem oder mehreren Kommunikationsprotokollen ausgewählt werden, über die eine oder mehrere Einrichtungen (wie z.B. eine oder mehrere Einrichtungen 52) im Massenspeicher 28 kommunizieren können, oder ob die Kommunikation zwischen dem integrierten Schaltkreis und diesen Einrichtungen über ein oder mehrere vorbestimmte Protokolle auszuführen ist. Auch können diese Betriebskenngrößen zusätzlich oder alternativ umfassen, ob die DMA-Schaltung 234 dafür aktiviert wird, den Austausch von Daten und/oder Kommandos, die von der I/O-Schnittstelle 204 über eine oder mehrere Verbindungen 44 empfangen werden oder über diese gesendet werden sollen, zwischen der I/O-Schnittstelle 240 und den anderen Schaltungen im integrierten Schaltkreis 40 zu steuern, oder dafür deaktiviert wird. Diese Betriebskenngrößen können auch beinhalten, ob der Prozessorkern 216 und/oder die RAID-vorgangsbezogene Schaltung 240 dafür aktiviert werden, einen oder mehrere Vorgänge zum Implementieren und/oder Verwalten eines RAID, z.B. RAID 29, durchzuführen, oder dafür deaktiviert werden.
  • Beispiele solcher Operationen, die beim Implementieren und/oder Verwalten eines RAID beteiligt sein können, sind z.B. in der parallelen US-Patentanmeldung, Seriennummer 10/301,028 (Attorney Docket Nr. 42390.P14962), namens „Integrated Circuit Having Multiple Modes of Operation", eingereicht am 20. November 2002, offenbart. Natürlich sind viele Modifikationen, Variationen und Alternativen möglich, ohne von dieser Ausführungsform abzuweichen.
  • In dieser Ausführungsform kann die Wählerschaltung 42 eine oder mehrere Drahtbrücken und/oder einen oder mehrere DIP-(Dual In-line Package)-Schalter 43 umfassen, die in mehreren unterschiedlichen Konfigurierungen eingestellt werden können (z.B. durch eine nicht dargestellte Bedienungsperson), um wenigstens teilweise den ausgewählten Betriebsmodus des integrierten Schaltkreises 40 auszuwählen. Das heißt, die mehreren unterschiedlichen Konfigurierungen der Drahtbrücke und/oder der Schalter 43 können einer oder mehreren unterschiedlichen Betriebskenngrößen des oder der unterschiedlichen Betriebsmodi des integrierten Schaltkreises 40 entsprechen. Wenn die Drahtbrücke(n) und/oder der oder die DIP-Schalter 43 in einer bestimmten Konfigurierung eingestellt werden, kann die Wählerschaltung 42 ein oder mehrere Steuersignale erzeugen, die einer oder mehreren unterschiedlichen Betriebskenngrößen integrierten Schaltkreises 40 entsprechen können, die durch diese jeweilige Konfigurierung eingestellt werden. Beispielsweise nach einem Zurücksetzen des integrierten Schaltkreises 40 können das oder die Steuersignale an die Prozessorkerne 216 und 218 geliefert werden. In Reaktion darauf kann der Prozessorkern 216 gemäß dem ausgewählten Betriebsmodus aktiviert oder deaktiviert werden; außerdem kann der Prozessorkern 218 entsprechend geeigneten Steuersignalen arbeiten und/oder diese erzeugen und an die Schnittstellenschaltungen 204, 210, 232 und/oder 236 liefern, was bewirken kann, dass diese Schaltungen gemäß dem ausgewählten Betriebsmodus arbeiten. Alternativ oder zusätzlich können das oder die Steuersignale von der Wählerschaltung 42 auch an Schaltung 210, Schaltung 234 und/oder Schaltung 240 geliefert werden. Dies kann bewirken, dass die Busschnittstellenschaltung 212, die Busschnittstellenschaltung 214, die Schaltung 240 und/oder die Schaltung 234 gemäß dem Betriebsmodus des integrierten Schaltkreises 40 aktiviert oder deaktiviert werden, der dem oder den Steuersignalen entspricht, oder von diesen angezeigt wird.
  • Alternativ oder zusätzlich kann der ausgewählte Betriebsmodus des integrierten Schaltkreises 40 wenigstens teilweise auf Grundlage und/oder als Resultat von einem oder mehreren Signalen ausgewählt werden, die den ausgewählten Betriebsmodus anzeigen, und die vom Hostprozessor 12 an die Hostbusschnittstellenschaltung 210 bereitgestellt werden können. In Reaktion auf das oder die Signale kann der Prozessorkern 216 gemäß dem ausgewählten Betriebsmodus aktiviert oder deaktiviert werden; außerdem kann der Prozessorkern 218 gemäß geeigneten Steuersignalen arbeiten und/oder diese erzeugen und an die Schnittstellenschaltungen 204, 210, 232 und/oder 236 liefern, was bewirken kann, dass diese Schaltungen gemäß dem ausgewählten Betriebsmodus arbeiten.
  • Ebenfalls kann alternativ oder zusätzlich in dieser Ausführungsform der ausgewählte Betriebsmodus des integrierten Schaltkreises 40 wenigstens teilweise auf Grundlage und/oder als Resultat der Ausführung eines oder mehrerer Programmbefehle, die im Speicher 39, im Speicher 220 und/oder im Speicher 224 gespeichert sind, durch die Prozessorschaltung 202 ausgewählt werden. Das heißt, gemäß dieser Ausführungsform können jeweils unterschiedliche Betriebsmodi des integrierten Schaltkreises 40 jeweils unterschiedlichen Firmware-Programmbefehlssatz-Images zugeordnet sein, die, wenn sie wenigstens teilweise von dem Prozessorkern 216 und dem Prozessorkern 218 ausgeführt werden, bewirken können, dass die jeweiligen Betriebsmodi ausgewählt werden, die diesen jeweiligen Images zugeordnet sind, und auch bewirken können, dass der integrierte Schaltkreis 40 in den jeweiligen Betriebsmodi arbeitet. In dieser Ausführungsform kann nur ein einziges solches Firmware-Programmbefehlssatz-Image in Speicher 39, Speicher 220 und/oder Speicher 224 gespeichert sein. Das einzelne Firmware-Programmbefehlssatz-Image kann einen oder mehrere Firmware-Programmbefehle umfassen, die beispielsweise nach einem Zurücksetzen des integrierten Schaltkreises 40 von den Prozessorkernen 216 und 218 ausgeführt werden können. Dies kann bewirken, dass der Prozessorkern gemäß dem ausgewählten Betriebsmodus aktiviert oder deaktiviert wird. Außerdem kann es bewirken, dass der Prozessorkern 218 gemäß geeigneten Steuersignalen arbeitet und/oder diese erzeugt und an die Schnittstellenschaltungen 204, 210, 232 und/oder 236 liefert, was bewirken kann, dass diese Schaltungen gemäß dem ausgewählten Betriebsmodus arbeiten.
  • Der Speicher 39, der Speicher 220 und/oder der Speicher 224 können Programmbefehle umfassen, die bei Ausführung durch den integrierten Schaltkreis 40 unter anderem bewirken können, dass der integrierte Schaltkreis 40 Vorgänge gemäß einer Ausführungsform durchführt. 4 ist ein Ablaufdiagramm, das diese und andere Vorgänge 400 zeigt, die im System 100 ausgeführt werden können, gemäß einer Ausführungsform. In dieser Ausführungsform können die Vorgänge 400 im System 100 ausgeführt werden, nachdem ein Betriebsmodus des integrierten Schaltkreises 40 ausgewählt wurde, wobei ein oder mehrere der Kommunikationsprotokolle, die von einer oder mehreren der Protokollmaschinen 250A, 250B, ... 250N (z.B. von Protokollmaschine 250A) implementiert werden, wenigstens teilweise auf Grundlage des Erkennens eines oder mehrerer solcher Kommunikationsprotokolle, über die eine oder mehrere Einrichtungen (z.B. eine oder mehrere Einrichtungen 52) im Massenspeicher 28 kommunizieren können, ausgewählt wurden.
  • Die Vorgänge 400 können damit beginnen, dass der integrierte Schaltkreis 40 wenigstens teilweise wenigstens ein Kommunikationsprotokoll erkennt, über das wenigstens eine Einrichtung außerhalb des integrierten Schaltkreises 40 (z.B. eine oder mehrere Einrichtungen 52) zu kommunizieren in der Lage sein können, wie durch Vorgang 402 in 4 gezeigt. In dieser Ausführungsform kann das Erkennen des wenigstens einen Kommunikationsprotokolls wenigstens teilweise durch den integrierten Schaltkreis 40, über das wenigstens eine Einrichtung außerhalb des integrierten Schaltkreises 40 kommunizieren kann, als Resultat von Vorgang 402, wenigstens teilweise auf einem Bestimmen dessen, ob die OOB-Verwaltungsschaltung 320 detektiert hat, dass die AFE-Schaltung 253A während der OOB-Signalfolge die Signalfolge 54 und/oder die COMSAS-Signalfolge 56 empfangen hat oder nicht, durch den Prozessorkern 218 beruhen, wie zuvor beschrieben. Wenn beispielsweise, wie zuvor erwähnt, die Schaltung 320 detektiert hat, dass die AFE-Schaltung 253A während der OOB-Signalfolge von einer oder mehreren Einrichtungen 52 die Signalfolge 54 empfangen hat, aber nicht die COMSAS-Signalfolge 56, kann der Prozessorkern 218 bestimmen, dass eine oder mehrere Einrichtungen 52 direkt über eine der Verbindungen 44 an die AFE-Schaltung 253A gekoppelt sind, und dazu in der Lage sind, über ein S-ATA-Protokoll mit dem integrierten Schaltkreis 40 zu kommunizieren; wenigstens teilweise als Resultat dieser Bestimmung durch den Prozessorkern 218 kann der integrierte Schaltkreis als Resultat von Vorgang 402 wenigstens teilweise erkennen, dass eine oder mehrere Einrichtungen 52 dazu in der Lage sind, über ein S-ATA-Protokoll zu kommunizieren. Wenn umgekehrt die Schaltung 320 detektiert hat, dass die AFE-Schaltung 253A während der OOB-Signalfolge von einer oder mehreren Einrichtungen 52 die COMSAS-Signalfolge 56 empfangen hat, aber nicht die Signalfolge 54, kann der Prozessorkern 218 bestimmen, dass eine oder mehrere Einrichtungen 52 dazu in der Lage sind, über ein SAS-Protokoll mit dem integrierten Schaltkreis 40 zu kommunizieren; wenigstens teilweise als Resultat dieser Bestimmung durch den Prozessorkern 218 kann der integrierte Schaltkreis als Resultat von Vorgang 402 wenigstens teilweise erkennen, dass eine oder mehrere Einrichtungen 52 dazu in der Lage sind, über ein SAS-Protokoll zu kommunizieren.
  • Anschließend kann der integrierte Schaltkreis 40 wenigstens teilweise das wenigstens eine Kommunikationsprotokoll auswählen, das zum Kommunizieren mit der wenigstens einen Einrichtung zu benutzen ist, wie durch Vorgang 404 in 4 gezeigt. Nachdem beispielsweise in dieser Ausführungsform als Resultat von Vorgang 402 das wenigstens eine Kommunikationsprotokoll erkannt wurde, über das eine oder mehrere Einrichtungen 52 kommunizieren können, kann der Prozessorkern 218 ein oder mehrere jeweilige Signale an die Schaltungen 304, 306, 308, 310 und 252A ausgeben. Wenn als Resultat des Vorgangs 402 der integrierte Schaltkreis 40 erkannt hat, dass eine oder mehrere Einrichtungen 52 über ein S-ATA-Protokoll kommunizieren können, kann dies bewirken, dass die Schaltungen 250A und 252A dazu aktiviert werden, zu erlauben, dass der integrierte Schaltkreis 40 direkt über eine der Verbindungen 44 unter Benutzung eines S-ATA-Protokolls mit einer oder mehreren Einrichtungen 52 kommuniziert. Wenn der integrierte Schaltkreis 40 umgekehrt als Resultat des Vorgangs 402 erkannt hat, dass eine oder mehrere Einrichtungen 52 über ein SAS-Protokoll kommunizieren können, kann dies bewirken, dass die Schaltungen 250A und 252A dafür aktiviert werden, zu erlauben, dass der integrierte Schaltkreis 40 unter Benutzung eines SAS-Protokolls mit einer oder mehreren Einrichtungen 52 kommuniziert.
  • Zusammengefasst kann eine Systemausführungsform also eine Schaltkarte mit einem integrierten Schaltkreis umfassen. Die Schaltkarte kann an einen Bus koppelbar sein. Der integrierte Schaltkreis kann dazu in der Lage sein, wenigstens teilweise wenigstens ein Kommunikationsprotokoll zu erkennen, über das wenigstens eine Einrichtung außerhalb des integrierten Schaltkreises in der Lage zu kommunizieren ist. Der integrierte Schaltkreis kann auch dazu in der Lage sein, gemäß mehreren unterschiedlichen Kommunikationsprotokollen zu kommunizieren. Der integrierte Schaltkreis kann ferner dazu in der Lage sein, wenigstens teilweise das wenigstens eine Kommunikationsprotokoll auszuwählen, das zum Kommunizieren mit der wenigstens einen Einrichtung zu benutzen ist.
  • Eine Vorrichtungsausführungsform kann einen integrierten Schaltkreis aufweisen, der dazu in der Lage ist, wenigstens teilweise ein Kommunikationsprotokoll zu erkennen, über das wenigstens eine Einrichtung außerhalb des integrierten Schaltkreises in der Lage zu kommunizieren ist. Der integrierte Schaltkreis kann auch dazu in der Lage sein, gemäß mehreren unterschiedlichen Kommunikationsprotokollen zu kommunizieren. Der integrierte Schaltkreis kann ferner dazu in der Lage sein, wenigstens teilweise das wenigstens eine Kommunikationsprotokoll auszuwählen, das zum Kommunizieren mit der wenigstens einen Einrichtung zu benutzen ist.
  • Vorteilhafterweise kann der integrierte Schaltkreis dieser Ausführungsformen verbesserte Kommunikationsfähigkeiten bieten, und kann unter Benutzung mehrerer Kommunikationsprotokolle kommunizieren. Außerdem können vorteilhafterweise das oder die Kommunikationsprotokolle, die von diesem integrierten Schaltkreis benutzt werden, wenigstens teilweise auf Grundlage dessen, dass der integrierte Schaltkreis wenigstens teilweise das oder die Kommunikationsprotokolle erkennt, über die eine oder mehrere externe Einrichtungen in der Lage zu kommunizieren sind, wenigstens teilweise von dem integrierten Schaltkreis ausgewählt werden. Ferner kann dies vorteilhafterweise einem einzelnen integrierten Schaltkreis gemäß dieser Ausführungsformen erlauben, direkt unter Benutzung mehrerer unterschiedlicher Kommunikationsprotokolle mit einem Datenspeichersystem zu kommunizieren. So kann es beispielsweise möglich sein, den integrierten Schaltkreis dieser Ausführungsformen zu benutzen, um direkt über eine oder mehrere Kommunikationsverbindungen mit einer oder mehreren Einrichtungen in SAS- und/oder S-ATA-Protokolldomänen im Datenspeichersystem zu kommunizieren, ohne einen oder mehrerer externe Kommunikationsprotokoll-Konverter, Übersetzer und/oder Expander (wie z.B. einen oder mehrere SAS-Expander) zu benutzen, die zwischen den integrierten Schaltkreis und das Datenspei chersystem gekoppelt sind, obwohl solche Protokoll-Konverter, Übersetzer und/oder Expander benutzt werden können, ohne von diesen Ausführungsformen abzuweichen. Vorteilhafterweise können diese Merkmale dem integrierten Schaltkreis dieser Ausführungsformen erlauben, im Vergleich zum Stand der Technik eine erhöhte Vielseitigkeit und Nützlichkeit aufzuweisen, und können die Auslegungskosten beim Verwenden dieses integrierten Schaltkreises gegenüber dem Stand der Technik senken.
  • Ebenfalls können vorteilhafterweise zwecks Berücksichtigung wenigstens einer der Funktionen von einer oder mehreren Ausführungsformen die Schaltung 302 und die Schaltungen im integrierten Schaltkreis 40, die außerhalb der Schaltung 250A angeordnet sind, im konzeptuellen, verhaltensbezogenen und/oder funktionalen Sinne wenigstens teilweise zusammen betrachtet werden, indem sie wenigstens teilweise ein einzelnes Steuerelement umfassen, um zu steuern, welches Kommunikationsprotokoll von dem integrierten Schaltkreis 40 zu benutzen ist, um mit der wenigstens einen Einrichtung zu kommunizieren. So kann vorteilhafterweise in wenigstens dieser einen oder diesen Ausführungsformen dieses Steuerelement beispielsweise einzeln oder in jeder beliebigen Kombination festverdrahtete Schaltungen, programmierbare Schaltungen, Zustandsautomatenschaltungen, und/oder Firmware umfassen, welche Befehle speichert, die von den programmierbaren Schaltungen ausgeführt werden.
  • Die hier verwendeten Begriffe und Ausdrücke wurden als beschreibende und nicht einschränkende Begriffe benutzt, und es ist nicht vorgesehen, durch die Benutzung dieser Begriffe und Ausdrücke etwaige Äquivalente der gezeigten und beschriebenen Merkmale (oder Teile derselben) auszuschließen, und man wird erkennen, dass innerhalb des Umfangs der Ansprüche verschiedene Modifikationen möglich sind. Ohne also von dieser Ausführungsform abzuweichen, kann das System 100 mehr oder weniger Elemente aufweisen, als in den Figuren gezeigt wurden und als zuvor im System 100 enthalten beschrieben wurden. Alternativ kann die Schaltung 204 außerdem eine Protokollmaschinenschaltung umfassen, die den integrierten Schaltkreis in die Lage versetzen kann, mit dem Massenspeicher 28 unter Benutzung eines Fibre-Channel-Protokolls zu kommunizieren, das mit der Schnittstelle/dem Protokoll übereinstimmt oder kompatibel ist, die/das in der Spezifikation ANSI Standard Fibre Channel (FC) Physical and Signaling Interface-3 X3.303:1998 beschrieben ist. Andere Modifikationen, Variationen und Alternativen sind ebenfalls möglich. Entsprechend ist vorgesehen, dass die Ansprüche alle diese Äquivalente abdecken.

Claims (18)

  1. Verfahren, umfassend: Auswählen einen von mehreren Betriebsmodi eines einzelnen integrierten Schaltkreises (40), der zwischen einem Hostbus (22) und einem Satz eines oder mehrerer Speichervorrichtungen (29) gekoppelt ist; und auf Grundlage des ausgewählten Betriebsmodus, Aktivieren mindestens eines der folgenden: eines von mehreren Speicherprotokollen zum Kommunizieren mit dem Satz einer oder mehrerer Speichervorrichtungen, und eines oder mehrerer Vorgänge zum Verwalten eines RAID-(Redundant Array of Independent Disks)Systems (29), das den Satz einer oder mehrerer Speichervorrichtungen aufweist.
  2. Verfahren nach Anspruch 1, ferner umfassend: Aktivieren oder Deaktivieren eines von mehreren Hostbusprotokollen auf Grundlage des ausgewählten Betriebsmodus.
  3. Verfahren nach Anspruch 1, ferner umfassend: Aktivieren oder Deaktivieren eines DMA-(Direct Memory Access)Vorgangs auf Grundlage des ausgewählten Betriebsmodus, wobei der DMA-Vorgang das Steuern eines Austauschs von Befehlen und Daten aufweist.
  4. Verfahren nach Anspruch 1, wobei das Auswählen Folgendes umfasst: Speichern eines oder mehrerer Programmbefehle, wobei der eine oder die mehreren Programmbefehle mit einem der mehreren Betriebsmodi verbunden sind; Ausführen des einen oder der mehreren Programmbefehle.
  5. Verfahren nach Anspruch 1, wobei das Auswählen Folgendes umfasst: Erkennen eines oder mehrerer Speicherprotokolle, die von dem Satz von Speichervorrichtungen benutzt werden.
  6. Verfahren nach Anspruch 1, wobei das Auswählen Folgendes umfasst: Lesen einer Eingabevorrichtung (43), um zu erkennen, welche von mehreren unterschiedlichen Konfigurationen ausgewählt wird, wobei jede der mehreren Konfigurationen einem der mehreren Betriebsmodi des einzelnen integrierten Schaltkreises (40) entspricht.
  7. Computerlesbares Speichermedium mit darauf gespeicherten Befehlen, die bei Ausführung von einer Maschine dazu führen, dass die Maschine dazu fähig ist, die Verfahrensschritte nach einem der Ansprüche 1 bis 6 auszuführen.
  8. Vorrichtung, umfassend: einen einzelnen integrierten Schaltkreis (40), der zwischen einem Hostbus und einem Satz eines oder mehrerer Speichervorrichtungen (29) gekoppelt ist und für mehrere Betriebsmodi konfiguriert werden kann, wobei der einzelne integrierte Schaltkreis (40) Folgendes aufweist: eine Prozessorschaltung (202), die mit einer internen Busschaltung (206, 254) gekoppelt und konfiguriert ist, um ein oder mehrere Steuersignale zu erzeugen, die einem ausgewählten der mehreren Betriebsmodi des integrierten Schaltkreises (40) entsprechen, eine Hostbus-Schnittstellenschaltung (210), die mit dem Hostbus (22) gekoppelt ist und mit der internen Busschaltung (206, 254) gekoppelt und konfiguriert ist, um das eine oder die mehreren Steuersignale über die interne Busschaltung (206, 254) zu empfangen, wobei die Hostbus-Schnittstellenschaltung (206, 254) mittels mehrerer Hostbusprotokolle kommunizieren kann und konfiguriert ist, um in Abhängigkeit des ausgewählten der mehreren Betriebsmodi mittels eines der mehreren Hostbusprotokolle zu kommunizieren, eine Eingabe-/Ausgabe-(I/O)Schnittstellenschaltung (204), die mit dem Satz von Speichervorrichtungen (29) gekoppelt ist und mit der internen Busschaltung (206, 254) gekoppelt und konfiguriert ist, um das eine oder die mehreren Steuersignale über die interne Busschaltung (206, 254) zu empfangen, wobei die I/O-Schnittstellenschaltung (204) mittels mehrerer Speicherprotokolle kommunizieren kann und konfiguriert ist, um in Abhängigkeit des ausgewählten der mehreren Betriebsmodi mittels eines der mehreren Speicherprotokolle zu kommunizieren, und eine RAID-vorgangsbezogene Schaltung (240), die mit der internen Busschaltung (206, 254) gekoppelt und konfiguriert ist, um das eine oder die mehreren Steuersignale von der Prozessorschaltung (202) zu empfangen, und die zum Ausführen einer der mehreren Vorgänge, die an der Ausführung eines RAID beteiligt sind, in Abhängigkeit von dem ausgewählten der mehreren Betriebsmodi aktiviert oder zum Nichtausfuhren davon deaktiviert wird.
  9. Vorrichtung nach Anspruch 8, wobei: die Prozessorschaltung (202) einen ersten Prozessorkern (216) und einen zweiten Prozessorkern (214) aufweist, wobei der erste Prozessorkern (216) ein erste Steuersignal an die Hostbus-Schnittstellenschaltung (210) und ein zweites Steuersignal an die I/O-Schnittstellenschaltung liefert und der zweite Prozessorkern (214) ein drittes Steuersignal an die RAID-vorgangsbezogene Schaltung (240) liefert.
  10. Vorrichtung nach Anspruch 8, wobei: die Hostbusschaltung (210) eine erste Schaltung (214) und eine zweite Schaltung (212) aufweist; die erste Schaltung (214) die Kommunikation über den Hostbus mittels PCI-(Peripheral Component Interconnect)Express herstellt; die zweite Schaltung (212) die Kommunikation über den Hostbus mittels PCI-X herstellt.
  11. Vorrichtung nach Anspruch 8, wobei: die I/O-Schnittstellenschaltung (204) mehrere Protokollmotoren (250A, 250B, ..., 250N) und eine entsprechende Schnittstellenschaltung für die physikalische Schicht (252A, 252B, ..., 250N) aufweist, um jedes der mehreren Speicherprotokolle umzusetzen, wobei jeder Protokollmotor (250A, 250B, ..., 250N) über die entsprechende Schaltung für die physikalische Schicht (252A, 252B, ..., 252N) gemäß den mehreren unterschiedlichen Protokollen kommunizieren kann.
  12. Vorrichtung nach Anspruch 8, wobei: die mehreren Speicherprotokolle SAS (Serial Small Computer Interface); SATA (Serial Advanced Technology Attachment) und/oder FC (Fibre Channel) aufweisen.
  13. Vorrichtung nach Anspruch 8, wobei der einzelne integrierte Schaltkreis (40) ferner Folgendes umfasst: eine GPIO-(General Purpose Input Output)Schnittstelle (248), die zum Empfangen eines Steuersignals, das außerhalb des einzelnen integrierten Schaltkreises (40) erzeugt wird, konfiguriert ist; und eine periphere Schnittstellenschaltung (246), um die GPIO-Schnittstelle (248) mit der internen Busschaltung (206, 254) kommunikativ zu koppeln; wobei die Prozessorschaltung (202) konfiguriert ist, um das eine oder die mehreren Steuersignale in Antwort auf das Steuersignal, das über die GPIO-Schnittstelle (248) empfangen wird, zu erzeugen.
  14. Vorrichtung nach Anspruch 13, ferner umfassend: eine externe Wählerschaltung (42), die mit dem integrierten Schaltkreis (40) über die GPIO-Schnittstelle (248) gekoppelt ist, wobei das Steuersignal auf einer physikalischen Konfiguration mindestens entweder einer Drahtbrücke oder eines DIP-(dual in-line package)Schalters (43) beruht.
  15. Vorrichtung nach Anspruch 8, wobei: der integrierte Schaltkreis (40) einen Speicher (39, 220, 224) aufweist, um einen oder mehrere Programmbe fehle zu speichern, wobei der eine oder die mehreren Programmbefehle zum Bestimmen des ausgewählten der mehreren Betriebsmodi des integrierten Schaltkreises (40) benutzt werden; und die Prozessorschaltung (202) konfiguriert ist, um auf den Speicher (39, 220, 224) über die interne Busschaltung (206, 254) zuzugreifen, um den einen oder die mehreren Programmbefehle zu bestimmen und das eine oder die mehreren Steuersignale auf Grundlage des einen oder der mehreren Programmbefehle zu erzeugen.
  16. Vorrichtung nach Anspruch 15, wobei: der eine oder die mehreren Programmbefehle, die in dem Speicher (39, 220, 224) gespeichert sind, einen Programmbefehlssatz aufweisen, der mit einem der mehreren Betriebsmodi in Verbindung steht; und die Prozessorschaltung (202) konfiguriert ist, um den Programmbefehlssatz, der in dem Speicher (39, 220, 224) gespeichert ist, auszuführen und das eine oder die mehreren Steuersignale auf Grundlage der Ausführung zu erzeugen.
  17. Vorrichtung nach Anspruch 8, wobei: die I/O-Schnittstellenschaltung (204) konfiguriert ist, um jedes der mehreren Speicherprotokolle zu erkennen, die von dem Satz eines oder mehrerer Speichervorrichtungen empfangen werden, mit denen die I/O-Schnittstellenschaltung (204) kommunizieren kann, und um der Prozessorschaltung (202) ein erkanntes Speicherprotokoll anzuzeigen; und die Prozessorschaltung (202) konfiguriert ist, um die Anzeige über die interne Busschaltung (206, 254) zu empfangen und das eine oder die mehreren Steuersignale auf Grundlage des erkannten Speicherprotokolls zu erzeugen.
  18. System, umfassend: Kopplungsmittel zum Koppeln eines einzelnen integrierten Schaltkreises (40) mit einem Satz einer oder mehrerer Speichervorrichtungen (29), wobei das Kopplungsmittel eine Verknüpfung umfasst, die konfiguriert ist, um die Kommunikation zwischen SAS- und SATA-Vorrichtungen herzustellen; und der einzelne integrierte Schaltkreis (40) einen einzelnen integrierten Schaltkreis (40) gemäß der Vorrichtung nach einem der Ansprüche 8 bis 17 umfasst.
DE602004007927T 2003-05-20 2004-04-16 Integrierter schaltkreis, der mithilfe verschiedener kommunikationsprotokolle kommunizieren kann Expired - Lifetime DE602004007927T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/442,705 US7093033B2 (en) 2003-05-20 2003-05-20 Integrated circuit capable of communicating using different communication protocols
PCT/US2004/012021 WO2004104844A2 (en) 2003-05-20 2004-04-16 Integrated circuit capable of communicating using different communication protocols
US442705 2006-05-26

Publications (2)

Publication Number Publication Date
DE602004007927D1 DE602004007927D1 (de) 2007-09-13
DE602004007927T2 true DE602004007927T2 (de) 2008-04-17

Family

ID=33476625

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602004007927T Expired - Lifetime DE602004007927T2 (de) 2003-05-20 2004-04-16 Integrierter schaltkreis, der mithilfe verschiedener kommunikationsprotokolle kommunizieren kann

Country Status (7)

Country Link
US (1) US7093033B2 (de)
EP (1) EP1636705B1 (de)
CN (1) CN100412835C (de)
AT (1) ATE368893T1 (de)
DE (1) DE602004007927T2 (de)
TW (1) TWI281612B (de)
WO (1) WO2004104844A2 (de)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7058703B2 (en) * 2002-03-08 2006-06-06 Intel Corporation System management controller (SMC) negotiation protocol for determining the operational mode of SMCs
US7206989B2 (en) * 2002-11-20 2007-04-17 Intel Corporation Integrated circuit having multiple modes of operation
US7543085B2 (en) * 2002-11-20 2009-06-02 Intel Corporation Integrated circuit having multiple modes of operation
US7093033B2 (en) * 2003-05-20 2006-08-15 Intel Corporation Integrated circuit capable of communicating using different communication protocols
US20050015655A1 (en) * 2003-06-30 2005-01-20 Clayton Michele M. Intermediate station
US8539096B2 (en) * 2003-09-26 2013-09-17 Lsi Corporation Systems and methods for configuring ports of an SAS domain
US20050138154A1 (en) * 2003-12-18 2005-06-23 Intel Corporation Enclosure management device
US7376147B2 (en) * 2003-12-18 2008-05-20 Intel Corporation Adaptor supporting different protocols
US7155546B2 (en) * 2003-12-18 2006-12-26 Intel Corporation Multiple physical interfaces in a slot of a storage enclosure to support different storage interconnect architectures
US7353302B2 (en) * 2003-12-31 2008-04-01 Intel Corporation Selectable communication control between devices communicating using a serial attached SCSI (SAS) protocol
US7363395B2 (en) * 2003-12-31 2008-04-22 Intel Corporation Intermediate device capable of communicating using different communication protocols
US7418646B2 (en) * 2004-03-02 2008-08-26 Intel Corporation Integrated circuit using wireless communication to store and/or retrieve data and/or check data
FR2875026A1 (fr) * 2004-09-03 2006-03-10 St Microelectronics Sa Dispositif programmable d'interface de commande
US7949806B2 (en) * 2004-11-18 2011-05-24 International Business Machines Corporation Apparatus and method to provide an operation to an information storage device including protocol conversion and assigning priority levels to the operation
US20070011333A1 (en) 2005-06-30 2007-01-11 Victor Lau Automated serial protocol initiator port transport layer retry mechanism
US7970953B2 (en) * 2005-06-30 2011-06-28 Intel Corporation Serial ATA port addressing
US7805543B2 (en) * 2005-06-30 2010-09-28 Intel Corporation Hardware oriented host-side native command queuing tag management
US7747788B2 (en) * 2005-06-30 2010-06-29 Intel Corporation Hardware oriented target-side native command queuing tag management
US8135869B2 (en) * 2005-06-30 2012-03-13 Intel Corporation Task scheduling to devices with same connection address
US20070005833A1 (en) * 2005-06-30 2007-01-04 Pak-Lung Seto Transmit buffers in connection-oriented interface
US7734839B1 (en) * 2005-08-25 2010-06-08 American Megatrends, Inc. Method and integrated circuit for providing enclosure management services utilizing multiple interfaces and protocols
US7525957B2 (en) * 2005-09-01 2009-04-28 Emulex Design & Manufacturing Corporation Input/output router for storage networks
US7676604B2 (en) * 2005-11-22 2010-03-09 Intel Corporation Task context direct indexing in a protocol engine
US7752343B2 (en) * 2006-02-22 2010-07-06 Emulex Design & Manufacturing Corporation Method and apparatus for auto-protocol discrimination between fibre channel, SAS and SATA devices
US7529877B2 (en) * 2006-03-13 2009-05-05 Lsi Corporation Apparatus and methods for simplified SSP link layer processing
US8312103B2 (en) * 2006-08-31 2012-11-13 Itron, Inc. Periodic balanced communication node and server assignment
US20080074285A1 (en) * 2006-08-31 2008-03-27 Guthrie Kevin D Interface between meter and application (IMA)
US9058306B2 (en) * 2006-08-31 2015-06-16 Dell Products L.P. Redundant storage enclosure processor (SEP) implementation for use in serial attached SCSI (SAS) environment
US7814245B2 (en) * 2006-10-05 2010-10-12 Lsi Corporation Apparatus and methods for improved SATA device interaction without a SAS expander
US7653775B2 (en) * 2007-04-09 2010-01-26 Lsi Logic Corporation Enhancing performance of SATA disk drives in SAS domains
CN101359309B (zh) * 2007-08-03 2012-03-07 中兴通讯股份有限公司 串行附接小型计算机系统接口硬盘状态指示装置及方法
US8005999B1 (en) * 2007-09-27 2011-08-23 Emc Corporation Data storage system with PCI-E extended reach capability
US8447892B1 (en) 2007-09-27 2013-05-21 Emc Corporation PCI-E extended reach with receive detect circuitry
US8417858B2 (en) * 2008-05-07 2013-04-09 Emulex Design & Manufacturing Corporation System and method for enabling multiple processors to share multiple SAS wide ports
DE102008046577A1 (de) * 2008-09-10 2010-03-11 Fujitsu Siemens Computers Gmbh Anschlussvorrichtung zum Anschluss einer Mehrzahl von Peripheriegeräten und Betriebsverfahren
US8373709B2 (en) * 2008-10-03 2013-02-12 Ati Technologies Ulc Multi-processor architecture and method
US8260976B1 (en) 2009-01-30 2012-09-04 American Megatrends, Inc. Multiple frequency state detection for serial I/O interfaces
US10200476B2 (en) 2011-10-18 2019-02-05 Itron, Inc. Traffic management and remote configuration in a gateway-based network
US8904108B2 (en) 2012-10-31 2014-12-02 Lsi Corporation Methods and structure establishing nested Redundant Array of Independent Disks volumes with an expander
US8756345B2 (en) 2012-10-31 2014-06-17 Lsi Corporation Methods and structure for managing protection information with a serial attached SCSI expander
US9135198B2 (en) 2012-10-31 2015-09-15 Avago Technologies General Ip (Singapore) Pte Ltd Methods and structure for serial attached SCSI expanders that self-configure by setting routing attributes of their ports based on SMP requests
US8904119B2 (en) 2012-10-31 2014-12-02 Lsi Corporation Method and structures for performing a migration of a logical volume with a serial attached SCSI expander
US8782292B2 (en) 2012-10-31 2014-07-15 Lsi Corporation Methods and structure for performing a rebuild of a logical volume with a serial attached SCSI expander
US8943234B1 (en) 2013-08-05 2015-01-27 Lsi Corporation Multi-protocol storage controller
US10548142B2 (en) * 2015-10-16 2020-01-28 Intel IP Corporation SAS interference mitigation options
CN106933769A (zh) * 2015-12-30 2017-07-07 南车株洲电力机车研究所有限公司 一种用于列车串行通信链路层的配置装置和方法

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US74515A (en) * 1868-02-18 Improvement in grain-drills
US5345565A (en) 1991-03-13 1994-09-06 Ncr Corporation Multiple configuration data path architecture for a disk array controller
US5257391A (en) * 1991-08-16 1993-10-26 Ncr Corporation Disk controller having host interface and bus switches for selecting buffer and drive busses respectively based on configuration control signals
JPH0563749A (ja) * 1991-09-02 1993-03-12 Hitachi Ltd マルチプロトコル通信制御装置
WO1996041273A1 (de) 1995-06-07 1996-12-19 International Business Machines Corporation Vorrichtung und verfahren zur steuerung eines datenbusses
US5742602A (en) * 1995-07-12 1998-04-21 Compaq Computer Corporation Adaptive repeater system
US6038400A (en) * 1995-09-27 2000-03-14 Linear Technology Corporation Self-configuring interface circuitry, including circuitry for identifying a protocol used to send signals to the interface circuitry, and circuitry for receiving the signals using the identified protocol
FR2740238B1 (fr) * 1995-10-19 1997-12-05 Sgs Thomson Microelectronics Cellule integrable ddc dediee a un microprocesseur
US5841985A (en) * 1996-09-18 1998-11-24 Intel Corporation Method and apparatus for supporting multiple protocols on a network
EP0852448A1 (de) * 1997-01-02 1998-07-08 Nokia Mobile Phones Ltd. Teilnehmer-Endgerät für mobile Kommunikationen
US6504851B1 (en) * 1997-11-21 2003-01-07 International Business Machines Corporation Dynamic detection of LAN network protocol
SE520126C2 (sv) * 1997-12-11 2003-05-27 Axis Ab I/U-Processor och metod för styrning av periferienheter
US6246671B1 (en) * 1998-03-17 2001-06-12 Adtran, Inc. ISDN terminal adapter-resident mechanism for automatically determining telecommunication switch type and generating associated service profile identifiers
US6115771A (en) * 1998-03-31 2000-09-05 Lsi Logic Corporation Method and system for converting computer peripheral equipment to SCSI-compliant devices
US6438678B1 (en) * 1998-06-15 2002-08-20 Cisco Technology, Inc. Apparatus and method for operating on data in a data communications system
US6625790B1 (en) 1998-07-08 2003-09-23 Microsoft Corporation Method and apparatus for detecting the type of interface to which a peripheral device is connected
US6253268B1 (en) * 1999-01-15 2001-06-26 Telefonaktiebolaget L M Ericsson (Publ) Method and system for multiplexing a second interface on an I2C interface
US6334160B1 (en) * 1999-01-28 2001-12-25 Hewlett-Packard Co. Apparatus and method for providing multiple protocols through a common connector in a device
JP3592950B2 (ja) * 1999-03-11 2004-11-24 株式会社東芝 周波数逓倍回路
US6633933B1 (en) * 1999-09-30 2003-10-14 Oak Technology, Inc. Controller for ATAPI mode operation and ATAPI driven universal serial bus mode operation and methods for making the same
US6721872B1 (en) * 1999-10-25 2004-04-13 Lucent Technologies Inc. Reconfigurable network interface architecture
US6690655B1 (en) * 2000-10-19 2004-02-10 Motorola, Inc. Low-powered communication system and method of operation
DE10056198A1 (de) 2000-11-13 2002-02-14 Infineon Technologies Ag Kommunikationssystem zum Austausch von Daten unter Verwendung eines zusätzlichen Prozessors
US6643654B1 (en) * 2001-06-25 2003-11-04 Network Appliance, Inc. System and method for representing named data streams within an on-disk structure of a file system
US6748488B2 (en) * 2001-09-28 2004-06-08 Sun Microsystems, Inc. Storage array having multiple erasure correction and sub-stripe writing
US7318112B2 (en) * 2001-10-11 2008-01-08 Texas Instruments Incorporated Universal interface simulating multiple interface protocols
US6845420B2 (en) * 2001-10-11 2005-01-18 International Business Machines Corporation System for supporting both serial and parallel storage devices on a connector
US6871244B1 (en) * 2002-02-28 2005-03-22 Microsoft Corp. System and method to facilitate native use of small form factor devices
US7193993B2 (en) * 2002-05-23 2007-03-20 Intel Corporation Integrated medium access control device and physical layer device
US6886057B2 (en) * 2002-06-06 2005-04-26 Dell Products L.P. Method and system for supporting multiple bus protocols on a set of wirelines
US6895447B2 (en) * 2002-06-06 2005-05-17 Dell Products L.P. Method and system for configuring a set of wire lines to communicate with AC or DC coupled protocols
US8005505B2 (en) * 2002-06-25 2011-08-23 Hewlett-Packard Development Company, L.P. Identifying remote, external devices and facilitating communication therewith
US20040015762A1 (en) * 2002-07-22 2004-01-22 Finisar Corporation Scalable system testing tools
US7907607B2 (en) * 2002-08-02 2011-03-15 Null Networks Llc Software methods of an optical networking apparatus with integrated modules having multi-protocol processors and physical layer components
US7543085B2 (en) * 2002-11-20 2009-06-02 Intel Corporation Integrated circuit having multiple modes of operation
US7107381B2 (en) * 2002-11-20 2006-09-12 Pmc-Sierra, Inc. Flexible data transfer to and from external device of system-on-chip
US7206989B2 (en) * 2002-11-20 2007-04-17 Intel Corporation Integrated circuit having multiple modes of operation
US7093033B2 (en) * 2003-05-20 2006-08-15 Intel Corporation Integrated circuit capable of communicating using different communication protocols

Also Published As

Publication number Publication date
HK1086084A1 (en) 2006-09-08
ATE368893T1 (de) 2007-08-15
TW200426593A (en) 2004-12-01
WO2004104844A3 (en) 2005-03-17
CN100412835C (zh) 2008-08-20
WO2004104844A2 (en) 2004-12-02
EP1636705A2 (de) 2006-03-22
TWI281612B (en) 2007-05-21
CN1791868A (zh) 2006-06-21
US7093033B2 (en) 2006-08-15
US20050015532A1 (en) 2005-01-20
EP1636705B1 (de) 2007-08-01
DE602004007927D1 (de) 2007-09-13

Similar Documents

Publication Publication Date Title
DE602004007927T2 (de) Integrierter schaltkreis, der mithilfe verschiedener kommunikationsprotokolle kommunizieren kann
DE60319125T2 (de) Integrierte schaltung mit mehreren betriebsarten
DE69414105T2 (de) Vorrichtung und verfahren zur automatischen erkennung und konfiguration eines peripheriegeräts
DE69330533T2 (de) Systemkonfigurationsänderung in einem Rechnersystem
DE69031705T2 (de) Zum Anschluss einer Erweiterungseinheit geeignetes Rechnersystem
DE69803087T2 (de) Integriertes bimodales einzelchip-steuergerät
DE69209538T2 (de) Automatische Konfiguration einer Einheit für koppelbare Rechner
DE69523005T2 (de) Koppelbare Rechnervorrichtung und -verfahren
DE69913553T2 (de) Konfigurierung von systemeinheiten
DE69828074T2 (de) Direkt-speicherzugriff / transaktionen auf ein bus mit niedriger pinanzahl
DE3650092T2 (de) E/a-steuerung mit zwei funktionen.
DE102004057756B4 (de) USB-Steuerungseinrichtung mit OTG-Steuerungseinheit
DE112007000688B4 (de) Fehlerverwaltungstopologien
DE102007009300A1 (de) Rechnersystem und Verfahren zum Betreiben eines Rechnersystems
DE102004053801A1 (de) Dynamische Rekonfiguration von PCI-Expresslinks
DE102008003681A1 (de) Stromverteilungssystem einschließlich eines Steuermoduls und eines Verfahrens zum Verwenden des Systems
DE19525013A1 (de) Multiprozessorsystem
DE10234991A1 (de) Hostcontrollerdiagnose für einen seriellen Bus
DE102004013113A1 (de) Plattenarraysystem und Fehlerinformations-Steuerungsverfahren
DE2921897A1 (de) Hardware/firmware-dialogsteuerlogik- system
DE112005000932T5 (de) Netzwerkschnittstellen-Controllerschaltung
DE102017121465A1 (de) Datenprotokoll zum verwalten von peripheriegeräten
DE112004002492B4 (de) Verfahren zum Signalisieren eines Befehlsstatus eines PCI/PCI-X-Standart-Hot-Plug-Controllers (SHPC) und Computer-Brücken-Vorrichtung
DE112017003302T5 (de) Verfahren, Vorrichtung und System für dynamische Optimierung der Signalintegrität an einem Bus
DE69428878T2 (de) Selbstbeschreibendes Datenverarbeitungssystem

Legal Events

Date Code Title Description
8381 Inventor (new situation)

Inventor name: BECKETT, RICHARD, PHOENIX, AZ, US

Inventor name: SHEFFIELD, ROBERT JR., CHANDLER, AZ, US

Inventor name: SETO, PAK-LUNG, SHREWSBURY, MA, US

8364 No opposition during term of opposition