DE102023114911A1 - Intelligente erkennung einer kabeltopologie - Google Patents

Intelligente erkennung einer kabeltopologie Download PDF

Info

Publication number
DE102023114911A1
DE102023114911A1 DE102023114911.3A DE102023114911A DE102023114911A1 DE 102023114911 A1 DE102023114911 A1 DE 102023114911A1 DE 102023114911 A DE102023114911 A DE 102023114911A DE 102023114911 A1 DE102023114911 A1 DE 102023114911A1
Authority
DE
Germany
Prior art keywords
mezzanine
board
boards
processor
solder pads
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.)
Pending
Application number
DE102023114911.3A
Other languages
English (en)
Inventor
Vincent Nguyen
Minh H. Nguyen
Kuan-Wei Chen
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.)
Hewlett Packard Enterprise Development LP
Original Assignee
Hewlett Packard Enterprise Development LP
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 Hewlett Packard Enterprise Development LP filed Critical Hewlett Packard Enterprise Development LP
Publication of DE102023114911A1 publication Critical patent/DE102023114911A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K7/00Constructional details common to different types of electric apparatus
    • H05K7/14Mounting supporting structure in casing or on frame or rack
    • H05K7/1422Printed circuit boards receptacles, e.g. stacked structures, electronic circuit modules or box like frames
    • H05K7/1427Housings

Abstract

Ein Aspekt der vorliegenden Anmeldung beschreibt ein System, das eine Mehrzahl von gestapelten Mezzanine-Platinen, die kommunikativ mit einer Hauptplatine verbunden sind, sowie ein Metallgehäuse aufweist, das die Hauptplatine und die Mezzanine-Platinen umgibt. Eine jeweilige Mezzanine-Platine kann eine Anzahl von Lötpads und das Metallgehäuse eine Mehrzahl von Metallstreifen aufweisen, wobei ein jeweiliger Metallstreifen zum Kontakt mit einem Lötpad einer entsprechenden Mezzanine-Platine bestimmt ist. Das System kann außerdem ein Logikmodul aufweisen, das auf der jeweiligen Mezzanine-Platine positioniert ist, um eine Position der jeweiligen Mezzanine-Platine auf Basis eines Kontaktmusters zwischen den Metallstreifen und den Lötpads der jeweiligen Mezzanine-Platine zu bestimmen.

Description

  • HINTERGRUND
  • Diese Offenbarung bezieht sich allgemein auf einen Multiprozessor-Server mit mehreren Mezzanine-Platinen. Genauer gesagt bezieht sich diese Offenbarung auf die automatische Erkennung der Verbindungstopologie der Mezzanine-Platinen.
  • KURZBESCHREIBUNG DER FIGUREN
    • 1 zeigt einen beispielhaften Multi-Socket-Server gemäß einem Aspekt.
    • 2 zeigt eine beispielhafte Mezzanine-Platine, die in einem Multi-Socket-Server verwendet wird, gemäß einem Aspekt.
    • 3 zeigt beispielhafte elektrische Verbindungen zwischen den Lötpads auf einer Prozessor-Mezzanine-Platine und dem Servergehäuse gemäß einem Aspekt.
    • 4A zeigt eine beispielhafte Anordnung von mehreren Metallstreifen, die an einem Servergehäuse befestigt sind, ohne die Mezzanine-Platinen zu zeigen.
    • 4B zeigt eine beispielhafte Kopplung zwischen den Metallkontaktfingern und den Lötpads auf den Mezzanine-Platinen gemäß einem Aspekt.
    • 5A-5B zeigen eine beispielhafte Anordnung der Lötpads und Metallstreifen gemäß einem Aspekt.
    • 6 zeigt ein Beispiel für die Kommunikation zwischen den Mezzanine-Platinen und der Hauptplatine gemäß einem Aspekt.
    • 7 zeigt ein Flussdiagramm, das einen beispielhaften Prozess zur Erkennung von Verbindungsfehlern in einem Multi-Socket-Server gemäß einem Aspekt illustriert.
    • 8 zeigt ein Flussdiagramm, das ein beispielhaftes Verfahren zur Erkennung der Topologie einer Mehrzahl miteinander verbundener und gestapelter Leiterplatten gemäß einem Aspekt darstellt.
  • In den Figuren beziehen sich gleiche Ziffern auf gleiche Elemente der Figur.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die folgende Beschreibung soll den Fachmann in die Lage versetzen, die Beispiele herzustellen und zu verwenden, und wird im Zusammenhang mit einer bestimmten Anwendung und deren Anforderungen gegeben. Verschiedene Modifikationen der gezeigten Beispiele sind für den Fachmann leicht erkennbar, und die hierin definierten allgemeinen Grundsätze können auf andere Beispiele und Anwendungen angewandt werden, ohne von Geist und Umfang der vorliegenden Offenbarung abzuweichen. Daher ist der Anwendungsbereich der vorliegenden Offenbarung nicht auf die gezeigten Beispiele beschränkt, sondern soll den größtmöglichen Anwendungsbereich erhalten, der mit den hier offenbarten Grundsätzen und Merkmalen vereinbar ist.
  • Die steigende Nachfrage nach Hochleistungsservern in einem Rechenzentrum kann es erforderlich machen, dass ein Server mehrere Prozessoren enthält, die zusammenarbeiten, um Rechenaufgaben zu erledigen. Ein Multi-Prozessor-Server kann auch als Multi-Socket-Server bezeichnet werden, da jeder Prozessor seinen eigenen Socket haben kann. Wenn die Anzahl der Prozessoren/Sockets in einem Server zunimmt, passen sie nicht mehr auf eine einzige gedruckte Leiterplatte (PCB). Um mehrere Prozessoren/Sockets unterzubringen, können Mezzanine-Platinen erforderlich sein. Wenn in einem Server mehr als vier Sockets vorhanden sind, können mehrere (z.B. zwei oder drei) Mezzanine-Platinen verwendet werden, um diese Sockets unterzubringen. Um in das Servergehäuse (z.B. ein 1 U- oder 2U-Gehäuse) zu passen, können die Mezzanine-Platinen zudem vertikal übereinandergestapelt werden.
  • Die Verbindungen zwischen Prozessoren auf verschiedenen Mezzanine-Platinen werden häufig über Kabel realisiert, da die Kaskadierung von Mezzanine-Platinen über direkt miteinander verbundene Steckverbinder aufgrund der begrenzten Größe der Steckverbinder und der Herausforderung der Signalintegrität nicht möglich ist. Es ist wünschenswert, über einen Mechanismus zu verfügen, mit dem die Kabelverbindungen zwischen den Mezzanine-Platinen (d.h. welches Kabel mit welcher Platine verbunden ist) während der Herstellungstests oder der Nachrüstung im Feld validiert werden können. Andernfalls kann das System eine ungültige Topologie aufweisen, die zu Interoperabilitätsproblemen führen kann. Bestehende Ansätze zur Lösung dieses Problems stützen sich auf Kabel und Platinen mit unterschiedlichen Steckertypen, um Fehlanschlüsse zwischen den Platinen zu verhindern. Nach der Kabelinstallation kann das System-BIOS (Basis-Eingabe-/Ausgabesystem) den Kohärenzbus (d.h. die Kabel) als In-Band-Erkennungsmechanismus während des Selbsttests beim Einschalten (POST) verwenden, um die Topologie zu überprüfen. So kann beispielsweise eine Platine mit einem Steckertyp und eine andere Platine mit einem anderen Steckertyp ausgestattet sein. Nur ein Kabel mit zwei solchen unterschiedlichen Steckertypen kann diese beiden Platinen verbinden. Durch die Angabe des Steckertyps auf jeder Platine und durch die Bereitstellung spezieller Kabel mit den spezifischen Steckertypen können Fehlverbindungen zwischen den Platinen verhindert werden. Wenn einbauende Techniker Server testen oder nachrüsten, würden sie nicht versehentlich zwei Platinen verbinden, die nicht verbunden werden sollen, da die nicht übereinstimmenden Steckertypen einen solchen Vorgang verhindern würden. Diese Ansätze haben jedoch auch Nachteile, da die verschiedenen Arten von Platinen und Kabeln die Lieferkette für die Herstellung der Server komplizierter und teurer machen können. Es ist wünschenswert, identische Leiterplattenbaugruppen (PCBAs) für die Herstellung von Prozessor-Mezzanine-Platinen in den Servern und identische Kabel für die Verbindungen zwischen den Platinen zu verwenden, um die einmaligen Entwicklungskosten (NRE) und die Lagerhaltungseinheiten (SKUs) der Kabel und PCBAs zu reduzieren.
  • Diese Offenbarung beschreibt eine Lösung zur automatischen Erkennung der Positionierungsreihenfolge von mehreren gestapelten Mezzanine-Platinen innerhalb eines Servers. Jede Mezzanine-Platine kann mehrere (z.B. zwei oder mehr) Lötpads in der Nähe der Vorderkante aufweisen. Das Metallgehäuse, das die Mezzanine-Platinen und die Hauptplatine umgibt, kann eine Reihe von Metallstreifen umfassen, die an den Gehäuseseitenwänden befestigt sind. Jeder Metallstreifen kann mit einem entsprechenden Lötpad auf einer Mezzanine-Platine in Kontakt stehen und so das entsprechende Lötpad erden. Darüber hinaus kann jedes Lötpad mit einem bestimmten Stift eines komplexen programmierbaren Logikbausteins (CPLD) auf der Mezzanine-Platine gekoppelt sein. Folglich kann die Erdung des Lötpads den Spannungspegel dieses bestimmten Stiftes herabsetzen. Durch die Anordnung der Metallstreifen in einem speziellen Muster, so dass jede Mezzanine-Platine eine eindeutige Kombination von geerdeten und nicht geerdeten Lötpads aufweisen kann, kann die Stapelreihenfolge der Mezzanine-Platinen automatisch erkannt werden.
  • Gemäß einigen Aspekten kann ein Multi-Socket- oder Multi-Prozessor-Server mehrere Mezzanine-Platinen aufweisen, wobei jede Mezzanine-Platine einen oder mehrere Sockets umfasst. Die Mezzanine-Platinen haben die gleiche Art von Kabelanschlüssen und die gleichen Firmware-Pakete, was die Verbindungen zwischen den Mezzanine-Platinen erleichtern kann.
  • 1 zeigt einen beispielhaften Multi-Socket-Server gemäß einem Aspekt. Der Multi-Socket-Server 100 kann ein Gehäuse 102, eine Hauptplatine 104 und eine Reihe von Mezzanine-Platinen (z.B. die Platinen 106 und 108) umfassen, die miteinander und mit der Hauptplatine 104 verbunden sind. Der Multi-Socket-Server 100 kann auch andere Komponenten (z.B. die Komponente 110) enthalten. Zu diesen anderen Komponenten können eine Stromversorgung, Lüfter usw. gehören. Jede Mezzanine-Platine kann die gleiche Art von Kabelanschlüssen aufweisen, so dass jede Mezzanine-Platine mit jeder anderen Mezzanine-Platine verbunden werden kann. Während der Installation kann der einbauende Techniker die Mezzanine-Platinen beliebig miteinander verbinden, ohne eine bestimmte Anschlussreihenfolge zu beachten. Die Reihenfolge der Kabelanschlüsse kann z.B. von oben nach unten, von unten nach oben oder zufällig sein. Dies ermöglicht eine einfache Installation, kann aber zu einer ungültigen Prozessortopologie führen. Wenn bei Tests oder Upgrades eine Mezzanine-Platine ausgetauscht werden muss, muss man außerdem wissen, welche Platine im Servergehäuse ausgetauscht werden muss. Daher ist es wünschenswert, die Verbindungsreihenfolge und -topologie zwischen den Mezzanine-Platinen und der Hauptplatine nach der Installation (d.h. nach dem Anschließen der Kabel) zu erkennen, so dass die Firmware auf jeder Mezzanine-Platine korrekt konfiguriert werden kann und die Hauptplatine, falls eine Mezzanine-Platine ausgetauscht werden muss, den Benutzer benachrichtigen kann, welche Mezzanine-Platine (z.B. die obere, mittlere oder untere in dem in 1 dargestellten Beispiel) ausgetauscht werden muss. Obwohl es möglich ist, dass der einbauende Techniker die Kabel in einer bestimmten Reihenfolge und Topologie (z.B. Top-Down- oder Bottom-Up-Topologie) anschließt, so dass die Reihenfolge der Kabelanschlüsse für die Hauptplatine deterministisch ist, kann eine solche Anforderung den Installationsprozess umständlich machen und die Installationszeit und -kosten erhöhen. Vorzugsweise sollte die Verbindungstopologie von Mezzanine-Platinen automatisch erkannt werden, auch wenn die Mezzanine-Platinen in zufälliger Reihenfolge angeschlossen sind.
  • Zur Erleichterung der automatischen Erkennung der Verbindungsreihenfolge und Topologie mehrerer Mezzanine-Platinen und der Hauptplatine können das Servergehäuse und jede Mezzanine-Platine modifiziert werden. Genauer gesagt kann jede Mezzanine-Platine mehrere vordefinierte Lötpads enthalten (die zusammen als Topologieerkennungs-Lötpad-Anordnung bezeichnet werden können), und das Gehäuse (das typischerweise ein Metallgehäuse umfasst) kann mehrere Metallstreifen enthalten, die an vordefinierten Stellen platziert sind, um die Lötpads zu erden, wenn sie in Kontakt sind. Die Anordnung der Metallstreifen kann so gestaltet werden, dass Topologieerkennungs-Lötpad-Anordnungen auf Mezzanine-Platinen an verschiedenen Stellen (z.B. oben, in der Mitte oder unten in 1) unterschiedliche Erdungsmuster aufweisen können. Das Erdungsmuster der Topologieerkennungs-Lötpad-Anordnung kann von einer Logikeinheit (z.B. einem CPLD oder einem feldprogrammierbaren Gate-Array (FPGA)) auf der Mezzanine-Platine erkannt werden, die wiederum Signale an eine entsprechende Logikeinheit auf der Hauptplatine senden kann, damit die Hauptplatine die Kabelverbindungstopologie bestimmen kann, die die Verbindung zwischen den Mezzanine-Platinen sowie die Verbindung zwischen den Mezzanine-Platinen und der Hauptplatine anzeigt.
  • 2 zeigt eine beispielhafte Mezzanine-Platine, die in einem Multi-Socket-Server verwendet wird, gemäß einem Aspekt. Die Mezzanine-Platine 200 kann eine Reihe von Komponenten enthalten, wie z.B. die Sockets 202 und 204, einen komplexen programmierbaren Logikbaustein (CPLD) 206, eine Reihe von Speichersteckplätzen (z.B. den Speichersteckplatz 208), eine Reihe von externen Eingangs-/Ausgangsanschlüssen (z.B. externer E/A-Anschluss 210), eine Reihe von internen E/A-Anschlüssen (z.B. interner E/A-Anschluss 212) und eine Reihe von Speicheranschlüssen (z.B. Speicheranschluss 214). Es wird darauf hingewiesen, dass die externen E/A-Anschlüsse es der Mezzanine-Platine 200 ermöglichen, sich mit externen Peripheriegeräten zu verbinden, und die internen E/A-Anschlüsse es der Mezzanine-Platine 200 ermöglichen, sich mit der Hauptplatine und anderen Mezzanine-Platinen zu verbinden.
  • Zusätzlich zu diesen Komponenten kann die Mezzanine-Platine 200 eine Anzahl von Lötpads enthalten, die für die automatische Erkennung der Kabelanschlusstopologie verwendet werden können. Diese Lötpads (z.B. die Lötpads 216 und 218) können eine Topologieerkennungs-Lötpad-Anordnung bilden, die die automatische Erkennung der Verbindungstopologie der Mezzanine-Platinen erleichtern kann. In dem in 2 gezeigten Beispiel sind die Lötpads 216 und 218 in der Nähe der Vorderkante der Mezzanine-Platine 200 oder angrenzend an diese positioniert. Es wird angemerkt, dass die Vorderkante der Mezzanine-Platine 200 sich auf die Kante bezieht, die der Vorderseite (oder der dem Benutzer zugewandten Seite) des Servergehäuses zugewandt ist. 2 zeigt außerdem, dass die Lötpads 216 und 218 von der Vorderseite der Platine aus gesehen nahe der linken bzw. rechten Kante angeordnet sind. Diese Anordnung ermöglicht einen einfachen Zugang zu diesen Lötpads durch Metallstreifen, die an den Seitenwänden des Servergehäuses angebracht sind. Die Lötpads 216 und 218 sind beide (z.B. über Metallbahnen oder Übertragungsleitungen) mit dem CPLD 206 verbunden. Gemäß einigen Aspekten können die Lötpads 216 und 218 jeweils mit einem Stift des CPLD 206 gekoppelt sein, so dass, wenn ein Lötpad geerdet ist, der Spannungspegel des entsprechenden Stiftes von seinem standardmäßig hohen Pegel auf den Massepegel heruntergezogen werden kann. Ein bestimmtes Lötpad kann durch einen am Servergehäuse befestigten Metallstreifen geerdet werden, der aus Metall besteht und normalerweise geerdet ist. Eine Mehrzahl von Metallstreifen, die am Servergehäuse angebracht sind, können nach einem vorgegebenen Muster angeordnet werden, so dass die Lötpads 216 und 218 je nach Position der Mezzanine-Platine (z.B. die obere, mittlere oder untere Position, wie in 1 dargestellt) ein vorgegebenes, eindeutiges Erdungsmuster aufweisen können. Zum Beispiel können beide Lötpads geerdet oder ungeerdet sein, oder eins der Lötpads kann geerdet sein, während das andere ungeerdet ist. In einem Beispiel kann das linke Lötpad (z.B. Lötpad 216) der oberen Mezzanine-Platine im Servergehäuse ungeerdet und das rechte Lötpad (z.B. Lötpad 218) geerdet sein; bei der mittleren Mezzanine-Platine im Servergehäuse kann das linke Lötpad (z.B. das Lötpad 216) geerdet und das rechte Lötpad (z.B. Lötpad 218) ungeerdet sein; und bei der unteren Mezzanine-Platine im Servergehäuse können beide Lötpads (z.B. Lötpads 216 und 218) geerdet sein. Wenn der Erdungszustand eines Lötpads mit einem einzigen Bit dargestellt werden kann (z.B. mit dem Bitwert „1“, der den ungeerdeten Zustand anzeigt, und dem Bitwert „0“, der den geerdeten Zustand anzeigt). Folglich können die Erdungsmuster der Lötpads auf der oberen, mittleren und unteren Mezzanine-Platine als „10“, „01“ bzw. „00“ dargestellt werden. Diese Erdungsmuster können dann zur Identifizierung der Positionen der Mezzanine-Platinen verwendet werden. Mit anderen Worten, die Verwendung von zwei Lötpads kann eine Zwei-Bit-Kennung bilden, die vom System zur Bestimmung von vier unterschiedlichen Positionen verwendet werden kann. Es wird darauf hingewiesen, dass in dem obigen Beispiel das Bitmuster „11“ nicht verwendet wird. Eine größere Anzahl von Lötpads kann den Bereich dieser Kennung erweitern und mehr unterscheidbare Positionen der Mezzanine-Platinen berücksichtigen. CPLD 206 kann das Erdungsmuster erkennen, um die Position der Mezzanine-Platine 200 zu bestimmen.
  • Da das Gehäuse des Servers aus Sicherheitsgründen in der Regel geerdet ist, kann die Erdung eines Lötpads durch die Herstellung einer direkten elektrischen Verbindung oder eines Pfads zwischen dem Lötpad und dem Gehäuse erreicht werden. 3 veranschaulicht beispielhafte elektrische Verbindungen zwischen den Lötpads auf einer Prozessor-Mezzanine-Platine und dem Servergehäuse gemäß einem Aspekt. Zur Vereinfachung der Darstellung zeigt 3 nur eine Teilansicht des Gehäuses und der Mezzanine-Platine, und es sind nicht alle Komponenten innerhalb des Servergehäuses oder auf der Mezzanine-Platine dargestellt. In 3 umfasst das Gehäuse 300 eine Prozessor-Mezzanine-Platine 302, die einen CPLD 304 und elektrisch mit dem CPLD 304 verbundene Lötpads 306 und 308 enthalten kann. Zwei Metallstreifen (oder Finger) 310 und 312 sind an gegenüberliegenden Seitenwänden des Gehäuses 300 angebracht und stehen in direktem Kontakt mit den Lötpads 306 bzw. 308. Da die Metallstreifen 310 und 312 elektrisch leitfähig sind und einen geringen spezifischen Widerstand aufweisen, kann ein elektrisch leitender Pfad zwischen jedem Lötpad und dem Servergehäuse hergestellt werden, wodurch die Lötpads 306 und 308 geerdet werden. Die geerdeten Lötpads 306 und 308 können ihrerseits den Spannungspegel der entsprechenden Stifte des CPLD 304 herabsetzen, so dass der CPLD 304 das Vorhandensein der Metallstreifen 306 und 308 durch Erkennen des Spannungspegels der entsprechenden Stifte erkennen kann.
  • 4A zeigt eine beispielhafte Anordnung mehrerer Metallstreifen, die an einem Servergehäuse befestigt sind, gemäß einem Aspekt, ohne die Mezzanine-Platinen zu zeigen. In diesem Beispiel kann das Servergehäuse 400 drei vertikal gestapelte Mezzanine-Platinen aufnehmen. Die linke Seite von 4A zeigt die isometrische Rückansicht des Gehäuses 400 mit einer Seitenwand des Gehäuses 400, während die rechte Seite die isometrische Rückansicht des Gehäuses 400 mit der anderen Seitenwand zeigt.
  • Die linke Seite von 4A zeigt, dass eine Halterung 404 an einer Seitenwand 402 des Gehäuses 400 befestigt ist. Von der Vorderseite des Gehäuses 400 aus gesehen, befindet sich die Seitenwand 402 auf der rechten Seite. Die Halterung 404 kann ein L-förmiges Metallteil mit zwei verbundenen Segmenten sein. Ein Segment kann an der Seitenwand 402 angebracht sein, und das andere Segment erstreckt sich in Richtung des Innenraums des Gehäuses 400. In dem in 4A dargestellten Beispiel sind zwei Metallstreifen 406 und 408 an der Halterung 404 befestigt. Jeder Metallstreifen kann eine Anbringungsbasis zur Befestigung des Metallstreifens an der Halterung 404 und einen L-förmigen Kontaktfinger zur Herstellung eines Kontakts mit einem Lötpad auf der Prozessor-Mezzanine-Platine (z.B. dem in 2 gezeigten Lötpad 216) aufweisen. Der Metallstreifen 406 kann zum Beispiel eine Befestigungsbasis 442 und einen L-förmigen Kontaktfinger 444 umfassen. Gemäß einem Aspekt kann der Metallstreifen 406 eine einteilige Konstruktion aufweisen. Alternativ können die Befestigungsbasis 442 und der L-förmige Kontaktfinger 444 zusammengeschweißt werden. Die Anbringungsbasis 442 kann mit einem geeigneten Befestigungsmechanismus, z.B. mit einer Schraube oder durch Schweißen, an der Halterung 404 befestigt werden. Der L-förmige Kontaktfinger 444 kann sich in Richtung der Prozessor-Mezzanine-Platine (z.B. der in 2 gezeigten Mezzanine-Platine 200) erstrecken, um ein Lötpad auf der Platine zu kontaktieren. Der Metallstreifen 406 kann so angeordnet werden, dass der L-förmige Kontaktfinger 444 gegen die Oberfläche der Mezzanine-Platine drücken kann, wenn eine entsprechende Mezzanine-Platine im Gehäuse 400 installiert wird. Dies kann durch Ausrichten des L-förmigen Kontaktfingers 444 auf die Oberfläche der Mezzanine-Platine geschehen. Die längliche Form des Kontaktfingers 444 kann es dem Kontaktfinger 444 ermöglichen, sich innerhalb eines bestimmten Bereichs vertikal zu bewegen, wenn die Mezzanine-Platine während der Installation in das Gehäuse 410 unter den Metallstreifen 406 geschoben wird. Einem Aspekt zufolge kann der L-förmige Kontaktfinger 444 auch eine Vertiefung 446 aufweisen, die einen guten Kontakt zwischen dem Metallstreifen 406 und dem Lötpad auf der Mezzanine-Platine gewährleisten kann. Gemäß einigen Aspekten kann jedes Lötpad auf der Mezzanine-Platine eine entsprechende Vertiefung aufweisen, um die Vertiefung 446 aufzunehmen, damit der Metallstreifen 406 einrasten kann.
  • In dem in 4A dargestellten Beispiel kann jede Halterung drei Segmente umfassen (d.h. das obere Segment 452, das mittlere Segment 454 und das untere Segment 456 der Halterung 404), an denen die Metallstreifen befestigt werden können. Die Position jedes Segments entspricht der Position einer Mezzanine-Platine im Gehäuse 400. So entspricht beispielsweise das obere Segment 452 einer oberen Mezzanine-Platine, das mittlere Segment 454 einer mittleren Mezzanine-Platine und das untere Segment 456 einer unteren Mezzanine-Platine. Die Hauptplatine hingegen befindet sich in der Regel unterhalb der unteren Mezzanine-Platine. In der linken Zeichnung von 4A sind die Metallstreifen 406 und 408 an den oberen und unteren Segmenten 452 bzw. 456 der Halterung 404 befestigt. Dies bedeutet, dass die Metallstreifen 406 und 408 in Kontakt mit den Lötpads auf der oberen bzw. unteren Mezzanine-Platine stehen.
  • Die rechte Seite von 4A zeigt, dass ein Stützbügel 412 an einer Seitenwand 410 des Gehäuses 400 befestigt ist. Von der Vorderseite des Gehäuses 400 aus gesehen, befindet sich die Seitenwand 410 auf der linken Seite. Die rechte Seite zeigt die Metallstreifen 414 und 416, die an der Halterung 412 befestigt sind. Genauer gesagt können die Metallstreifen 414 und 416 an den mittleren bzw. unteren Segmenten der Halterung 412 befestigt werden. Dementsprechend können die Metallstreifen 414 und 416 in Kontakt mit den Lötpads auf der mittleren bzw. unteren Mezzanine-Platine stehen.
  • 4B zeigt eine beispielhafte Kopplung zwischen den Metallkontaktfingern und den Lötpads auf den Mezzanine-Platinen gemäß einem Aspekt. In 4B ist das Servergehäuse von der Vorderseite aus gesehen. Die rechte Seite von 4B entspricht der linken Seite von 4A, und die linke Seite von 4B entspricht der rechten Seite von 4A. 4B zeigt einen Teil eines Servergehäuses mit übereinander gestapelten Mezzanine-Platinen 418, 420 und 422. Genauer gesagt befindet sich die Mezzanine-Platine 418 oben, die Mezzanine-Platine 420 in der Mitte und die Mezzanine-Platine 422 unten im Servergehäuse (z.B. im in 4A dargestellten Servergehäuse 400). Es wird darauf hingewiesen, dass die im Servergehäuse enthaltene Hauptplatine in 4B nicht dargestellt ist und normalerweise unter der unteren Mezzanine-Platine 422 angeordnet ist.
  • Die rechte Seite von 4B zeigt, wie die Halterung 404 mit der Seitenwand 410 des Gehäuses verbunden ist. Die Metallstreifen 406 und 408 sind an den oberen bzw. unteren Segmenten der Halterung 404 angebracht. 4B zeigt auch, dass die Montageorte der Halterung 404 und der Metallstreifen 406 und 408 so gewählt werden können, dass die L-förmigen Kontaktfinger der Metallstreifen 406 und 408 im Wesentlichen mit der oberen Oberfläche der oberen und unteren Mezzanine-Platinen 418 bzw. 422 ausgerichtet sind. Genauer gesagt steht der Kontaktfinger des Metallstreifens 406 in direktem Kontakt mit dem Lötpad 424 auf der oberen Mezzanine-Platine 418, und der Kontaktfinger des Metallstreifens 408 steht in direktem Kontakt mit dem Lötpad 428 auf der unteren Mezzanine-Platine 422. Das Lötpad 426 auf der mittleren Mezzanine-Platine 420 hat dagegen keinen Kontakt mit einem Kontaktfinger. Infolgedessen sind die Lötpads 424 und 428 geerdet, während der Lötpad 426 ungeerdet bleibt.
  • Die linke Seite von 4B zeigt die Halterung 412, die mit der Seitenwand 402 des Gehäuses verbunden ist. Die Metallstreifen 414 und 416 sind an den mittleren bzw. unteren Segmenten der Halterung 412 befestigt. Die Halterung 412 und die Metallstreifen 414 und 416 sind so angeordnet, dass die L-förmigen Kontaktfinger der Metallstreifen 414 und 416 im Wesentlichen mit der Oberseite der mittleren bzw. unteren Mezzanine-Platine 420 und 422 ausgerichtet sind. Genauer gesagt steht der Kontaktfinger des Metallstreifens 414 in direktem Kontakt mit dem Lötpad 432 auf der mittleren Mezzanine-Platine 420, und der Kontaktfinger des Metallstreifens 416 steht in direktem Kontakt mit dem Lötpad 434 auf der unteren Mezzanine-Platine 422. Das Lötpad 430 der oberen Mezzanine-Platine 418 hat dagegen keinen Kontakt mit einem Kontaktfinger. Infolgedessen sind die Lötpads 432 und 434 geerdet, während der Lötpad 430 ungeerdet bleibt.
  • Wie aus der Kombination der linken und rechten Seite von 4B und unter Bezugnahme auf die entsprechende rechte und linke Seite von 4A ersichtlich ist, sind die Metallstreifen 414 und 416 am mittleren bzw. unteren Segment der Halterung 412 und die Metallstreifen 406 und 408 am oberen bzw. unteren Segment 452 und 456 der Halterung 404 befestigt. Folglich ist bei der oberen Mezzanine-Platine 418 das linke Lötpad 430 nicht geerdet und das rechte Lötpad 424 geerdet, bei der mittleren Mezzanine-Platine 420 ist das linke Lötpad 432 geerdet und das rechte Lötpad 426 nicht geerdet, und bei der unteren Mezzanine-Platine 422 sind sowohl das linke als auch das rechte Lötpad 434 und 428 geerdet. Wie bereits erwähnt, können diese Lötpads mit einem CPLD (z.B. dem in 2 gezeigten CPLD 206) auf jeder Mezzanine-Platine verbunden werden. Jedes Paar Lötpads (z.B. Lötpads 430 und 424, Lötpads 432 und 426 und Lötpads 434 und 428) kann mit einem Paar dedizierter CPLD-Stifte der jeweiligen Mezzanine-Platine (z.B. Mezzanine-Platine 418, Mezzanine-Platine 420 und Mezzanine-Platine 422) verbunden werden. Jeder CPLD-Stift kann einen Standard-Hochspannungswert haben. Wenn ein Lötpad geerdet ist, wird der Spannungspegel an einem angeschlossenen CPLD-Stift heruntergezogen oder verringert. Wenn wir den Hochspannungszustand eines CPLD-Stiftes als „1“ und den Niederspannungszustand als „0“ bezeichnen, kann der Zustand der CPLD-Stifte auf der oberen Mezzanine-Platine 418 als „10“ dargestellt werden, wobei „1“ dem nicht geerdeten Lötpad 430 und „0“ dem geerdeten Lötpad 424 entspricht. In ähnlicher Weise kann der Zustand der CPLD-Stifte auf der mittleren Mezzanine-Platine 420 als „01“ und der Zustand der CPLD-Stifte auf der unteren Mezzanine-Platine 422 als „00“ dargestellt werden. Auf diese Weise kann die Position jeder Mezzanine-Platine auf Basis des Spannungspegels der CPLD-Stifte eindeutig kodiert werden. Daher kann jeder CPLD durch Überprüfung seines Stift-Zustands seine aktuelle Position innerhalb des Stapels bestimmen (z.B. oben, in der Mitte oder unten in dem in den 4A-4B dargestellten Beispiel). Einem Aspekt zufolge kann jeder CPLD seinen Stift-Zustand auch an die Hauptplatine melden (z.B. an einen CPLD auf der Hauptplatine) und so die Hauptplatine über seine aktuelle Position informieren. Es wird darauf hingewiesen, dass im vorliegenden Beispiel insgesamt drei Mezzanine-Platinen vorhanden sind und die Bitwerte „11“ nicht verwendet werden.
  • In dem in den 4A-4B hat jede Mezzanine-Platine zwei Lötpads, die in der Nähe von gegenüberliegenden Seitenwänden des Servergehäuses angeordnet sind, damit zwei separate Metallstreifen, die an diesen gegenüberliegenden Seitenwänden befestigt sind, mit den Lötpads in Kontakt kommen können. Im Allgemeinen gibt es verschiedene Möglichkeiten, die Lötpads und Metallstreifen anzuordnen. Beispielsweise können die Lötpads alle in der Nähe einer Seitenwand des Gehäuses angeordnet werden, und die an derselben Seitenwand angebrachten Metallstreifen können zur Erdung dieser Lötpads verwendet werden.
  • 5A-5B zeigen eine beispielhafte Anordnung der Lötpads und Metallstreifen gemäß einem Aspekt. 5A zeigt eine Mezzanine-Platine 502, die in einem Gehäuse 500 angeordnet ist. Die Mezzanine-Platine 502 enthält einen CPLD 504 und Lötpads 506 und 508, die mit dem CPLD 504 verbunden sind. Die Lötpads 506 und 508 können in der Nähe der linken Seitenwand des Gehäuses 500 angeordnet sein. 5A zeigt auch einen Metallstreifen 510 mit zwei Fingerkontakten, wobei jeder Fingerkontakt in direktem Kontakt mit einem Lötpad steht. Mit anderen Worten: Die Lötpads 506 und 508 sind beide durch den Metallstreifen 510 geerdet. Andererseits zeigt 5B eine Mezzanine-Platine 512, die innerhalb des Gehäuses 500 angeordnet ist. Die Mezzanine-Platine 512 kann mit der Mezzanine-Platine 502 identisch sein und einen CPLD 514 sowie Lötpads 516 und 518 enthalten, die in der Nähe der linken Seitenwand des Gehäuses 500 angeordnet sind. 5B zeigt, dass ein Metallstreifen 520 nur einen Fingerkontakt aufweist und dass der Fingerkontakt in direktem Kontakt mit dem Lötpad 518 steht. Das Lötpad 516 ist nicht mit einem Fingerkontakt verbunden. Infolgedessen ist das Lötpad 518 durch den Metallstreifen 520 geerdet, während das Lötpad 516 ungeerdet bleibt.
  • Wie aus den 5A-5B zu sehen ist, kann das Erdungsmuster der Lötpads auf jeder Mezzanine-Platine durch die Form (oder die Anzahl der Kontaktfingern) des entsprechenden Metallstreifens bestimmt werden. Durch die Anordnung der am Servergehäuse befestigten Metallstreifen in einem vorgegebenen Muster kann daher das Erdungsmuster der Lötpads auf der Mezzanine-Platine an jeder Stelle (z.B. oben, in der Mitte oder unten) vorgegeben werden. Folglich kann die Position einer Mezzanine-Platine auf Basis des Erdungsmusters bestimmt werden.
  • Es sind auch andere Varianten möglich. Zum Beispiel können zwei Lötpads (d.h. zwei Bits) verwendet werden, um bis zu vier verschiedene Platinenpositionen zu kodieren. Eine Erhöhung der Anzahl der Lötpads (z.B. auf drei oder vier) kann die Anzahl der möglichen Platinenpositionen erhöhen. So können beispielsweise mit drei Lötpads acht Platinenpositionen kodiert werden. Wenn andererseits die Anzahl der Mezzanine-Platinen im Servergehäuse abnimmt, kann sich auch die Anzahl der Lötpads auf jeder Mezzanine-Platine verringern. Wenn sich beispielsweise nur zwei Mezzanine-Platinen im Servergehäuse befinden, wird nur ein Lötpad auf jeder Platine benötigt. Darüber hinaus ist es möglich, die Metallstreifen nicht nur an den Seitenwänden des Servergehäuses zu befestigen, sondern auch an anderen Teilen (z.B. an der oberen oder unteren Abdeckung) des Servergehäuses, sofern die Positionen der Metallstreifen mit den Positionen der Mezzanine-Platinen übereinstimmen, damit die Metallstreifen mit den Lötpads auf der Oberfläche der Mezzanine-Platinen in Kontakt kommen können. Es wird darauf hingewiesen, dass die Größe und die Position der Lötpads von der Gestaltung der Platine abhängen können. Jedes Lötpad sollte ausreichend groß sein, um einen leichten Kontakt zwischen dem Lötpad und dem Kontaktfinger eines Metallstreifens zu ermöglichen. Die Metallstreifen und die Halterungen können aus verschiedenen metallischen Werkstoffen bestehen, insbesondere aus Aluminium, Stahl, rostfreiem Stahl, Messing, Kupfer, Zink, einer Legierung oder einer Kombination davon.
  • Sobald der CPLD auf jeder Mezzanine-Platine das Erdungsmuster der Lötpads erkennt, kann der CPLD die Position der Mezzanine-Platine im Stapel der Mezzanine-Platinen bestimmen. Dementsprechend kann der CPLD für jeden Prozessor auf der Mezzanine-Platine eine Socket-Nummer oder eine Kennung (ID) nach einem vorgegebenen Nummerierungsschema festlegen. So kann beispielsweise festgelegt werden, dass die Socket-Nummern mit binären Bits dargestellt werden und vom oberen Ende des Stapels zum unteren Ende des Stapels aufsteigen. In einem solchen Fall können den beiden Prozessoren auf der obersten Mezzanine-Platine die Socket-Nummern 001 und 010 zugewiesen werden, den Prozessoren auf der nächsten Mezzanine-Platine im Stapel die Socket-Nummern 011 und 100 usw. Es können auch andere Nummerierungsschemata verwendet werden. So können beispielsweise drei Bits für die Nummerierung von bis zu acht Prozessoren verwendet werden; bei mehr Prozessoren werden mehr Bits benötigt. Es ist auch möglich, dass die Socket-Nummern von unten nach oben aufsteigen, oder die Socket-Nummern können außer der Reihe sein, solange die Zuordnungen zwischen den Socket-Nummern und den Mezzanine-Platinenpositionen bekannt sind. Die bestimmten Socket-Nummern können über Kabel an die Hauptplatine und andere angeschlossene Mezzanine-Platinen übermittelt werden. Der CPLD kann auch jeder Mezzanine-Platinenposition eine eindeutige Platinennummer oder ID zuweisen. Beispielsweise kann die oberste Platine als Platine 1, die nächste als Platine 2 usw. nummeriert werden.
  • 6 zeigt eine beispielhafte Kommunikation zwischen den Mezzanine-Platinen und der Hauptplatine, gemäß einem Aspekt. In 6 ist eine Hauptplatine 600 mit den Prozessor-Mezzanine-Platinen 602, 604 und 606 verbunden. Die Hauptplatine 600 kann eine Logikeinheit zur Ausführung einer Reihe von Logikfunktionen enthalten, die zur Erkennung einer ungültigen Topologie oder Verbindung zwischen den Mezzanine-Platinen verwendet werden können. Einem Aspekt zufolge kann die Logikeinheit ein CPLD sein, z.B. CPLD 608. Andere Arten von programmierbaren Logikeinheiten, wie FPGAs, können ebenfalls verwendet werden. Jede Mezzanine-Platine kann auch eine Logikeinheit enthalten, die zur Erkennung der Position der Mezzanine-Platine und zur Einstellung der Socket-Nummern für die Prozessoren verwendet werden kann. Darüber hinaus kann jede Mezzanine-Platine einen Zwischen-Platinen-Anschluss für die Kommunikation mit anderen Mezzanine-Platinen enthalten. Der Anschluss kann einen Sender zum Senden von Signalen und einen Empfänger zum Empfangen von Signalen enthalten. Beispielsweise kann die Mezzanine-Platine 602 einen CPLD 610 (der mit dem in 2 gezeigten CPLD 206 identisch oder diesem ähnlich sein kann), einen Sender 612 und einen Empfänger 614 enthalten. Der Sender einer Platine kann (z.B. über ein Kabel) mit dem Empfänger einer anderen Platine verbunden werden. Es wird angemerkt, dass die Platine, die Informationen sendet, als vorgeschaltete Platine und die Platine, die Informationen empfängt, als nachgeschaltete Platine bezeichnet werden kann.
  • In dem in 6 gezeigten Beispiel ist der Sender 612 der Platine 602 mit dem Empfänger der Platine 604 gekoppelt (d.h. die Platine 604 ist der Platine 602 nachgeschaltet), der Sender der Platine 604 ist mit dem Empfänger der Platine 606 gekoppelt (d.h. die Platine 606 ist der Platine 604 nachgeschaltet), und der Sender der Platine 606 ist mit dem Empfänger der Platine 602 gekoppelt (d.h. die Platine 602 ist der Platine 606 nachgeschaltet). Nach der Installation der Kabel und nach dem Einschalten des Servers kann der CPLD jeder Mezzanine-Platine automatisch die Position der Platine im Platinenstapel erkennen und jedem Prozessor auf der Platine eine Socket-Nummer zuweisen. Der CPLD kann optional eine Platinennummer festlegen. Zusätzlich zu den Socket-Nummern kann der CPLD auch eine Port-Nummer für den Anschluss bestimmen. Dabei ist zu beachten, dass die Portnummer fest ist und von den Verbindungen zwischen dem Steckverbinder und anderen Komponenten auf der Platine abhängt. Gemäß einigen Aspekten kann die Portnummer eines Steckverbinders zwei Bits enthalten.
  • Die Socket- und Port-Informationen (die die Socket-Nummern für die Prozessoren und eine Port-Nummer für den Anschluss auf der entsprechenden Mezzanine-Platine umfassen können) können von der CPLD auf einer Mezzanine-Platine an die CPLD einer angeschlossenen, nachgeschalteten Mezzanine-Platine übermittelt werden. Darüber hinaus kann der CPLD auf der Mezzanine-Platine auch Socket- und Port-Informationen von einer angeschlossenen, vorgeschalteten Mezzanine-Platine empfangen. Beispielsweise kann der CPLD 610 der Mezzanine-Platine 602 seine eigenen Socket- und Port-Informationen über den Sender 612 an die Mezzanine-Platine 604 senden und Socket- und Port-Informationen von der Mezzanine-Platine 606 über den Empfänger 614 empfangen. CPLD 610 kann die empfangenen Socket- und Port-Informationen mit einer vorgegebenen Topologie vergleichen, um zu erkennen, ob die Verbindungen ungültig sind. Beispielsweise kann ein bestimmtes Design erfordern, dass verschiedene Mezzanine-Platinen in einer bestimmten Reihenfolge verbunden werden (z.B. Mezzanine-Platine 602 verbunden mit Mezzanine-Platine 604, die mit Mezzanine-Platine 606 verbunden ist, usw.). Durch Vergleich der von der Mezzanine-Platine 606 empfangenen Socket- und Port-Informationen kann CPLD 610 feststellen, ob die Verbindung zwischen den Mezzanine-Platinen 602 und 606 eine gültige Verbindung ist.
  • Darüber hinaus kann der CPLD jeder Mezzanine-Platine seine eigenen Socket- und Port-Informationen sowie die von einer vorgeschalteten Mezzanine-Platine empfangenen Socket- und Port-Informationen an den CPLD 608 der Hauptplatine 600 senden. Beispielsweise kann der CPLD 610 Socket- und Port-Informationen, die mit der lokalen Mezzanine-Platine (d.h. der Platine 602) verbunden sind, und Socket- und Port-Informationen, die mit einer entfernt gekoppelten Mezzanine-Platine (d.h. der Platine 606) verbunden sind, an CPLD 608 der Hauptplatine 600 senden. Gemäß alternativen Aspekten kann der CPLD jeder Mezzanine-Platine seine eigene Platinen-ID und die ID der entfernten Platine an den CPLD 608 senden, und der CPLD 608 kann den Prozessoren auf jeder Platine auf Basis der entsprechenden Platinen-ID Socket-Nummern zuweisen. Es wird darauf hingewiesen, dass eine beispielhafte Platinen-ID eine Seriennummer des Herstellers oder eine benutzerdefinierte Kennung aufweisen kann. In einem Beispiel kann die Platinen-ID eine Zwei-Bit-Kennung sein, die die Position der Platine im Stapel angibt, wobei „10“, „01“ und „00“ die obere, mittlere bzw. untere Position bezeichnen. Sobald der CPLD 608 die Socket- und Port-Informationen von allen Mezzanine-Platinen erhalten hat, kann er die Verbindungstopologie dieser Mezzanine-Platinen und ihre Positionen im Stapel bestimmen. Beispielsweise kann der CPLD 608 auf Basis der von der Mezzanine-Platine 602 empfangenen Socket- und Port-Informationen feststellen, dass sich die Platine 602 an der Spitze des Stapels befindet und sein Empfänger mit dem Sender der Platine 606 verbunden ist. In ähnlicher Weise kann der CPLD 608 auf Basis der von den Mezzanine-Platinen 604 und 606 empfangenen Socket- und Port-Informationen feststellen, dass sich die Platine 604 in der Mitte des Stapels befindet und sein Empfänger mit dem Sender der Platine 602 gekoppelt ist, und dass sich die Platine 606 am unteren Ende des Stapels befindet und sein Empfänger mit dem Sender der Platine 604 gekoppelt ist. Zusätzlich zur Bestimmung der Kabelverbindungen zwischen den Mezzanine-Platinen kann CPLD 608 der Hauptplatine 600 auch die Kabelverbindungen zwischen jeder Mezzanin-Platine und der Hauptplatine 608 auf Basis der von jeder Mezzanine-Platine empfangenen Socket- und Port-Informationen bestimmen. CPLD 608 kann ferner feststellen, ob die Verbindungstopologie der Mezzanine-Platine ungültig ist und eine Fehlermeldung für eine erkannte ungültige Verbindung protokollieren. Gemäß einigen Aspekten kann CPLD 608 auch eine Benachrichtigung an das System-BIOS senden, um den Boot-Vorgang zu stoppen und die Fehlermeldung anzuzeigen, die die ungültige Verbindung angibt.
  • 7 zeigt ein Flussdiagramm, das einen beispielhaften Prozess zur Erkennung von Verbindungsfehlern in einem Multi-Socket-Server gemäß einem Aspekt darstellt. Während des Betriebs werden die Hauptplatine (z.B. die Hauptplatine 104 in 1) und die Mezzanine-Platinen (z.B. die Mezzanine-Platinen 106 und 108 in 1) des Servers in ein Servergehäuse (z.B. das Servergehäuse 100 in 1) eingesetzt (Vorgang 702). Das Servergehäuse kann mehrere vorinstallierte Metallstreifen/-finger (z.B. die in 4A dargestellten Metallstreifen 406, 408, 414 und 416) enthalten, die mechanisch an einer oder mehreren Seitenwänden des Servergehäuses befestigt und elektrisch gekoppelt sind. Die Montageorte der Metallstreifen/-finger wurden so angeordnet, dass jeder Metallstreifen/-finger in direktem Kontakt mit einem Lötpad (z.B. Lötpad 216 oder 218 in 2) auf einer entsprechenden Mezzanine-Platine (z.B. Mezzanine-Platine 200 in 2) stehen kann und somit das Lötpad erdet. Das Lötpad ist elektrisch mit einem Stift auf einem Logikmodul (z.B. CPLD 206 in 2) der Mezzanine-Platine gekoppelt, und die Erdung des Lötpads kann dazu führen, dass der Spannungspegel des Stiftes von einem standardmäßig hohen Pegel heruntergezogen wird. Die Metallstreifen können so angeordnet werden, dass das Kontaktmuster zwischen den Metallstreifen und den Lötpads auf jeder Mezzanine-Platine einzigartig ist. Die Mezzanine-Platinen können dann über Kabel miteinander verbunden werden (Vorgang 704). Es ist zu beachten, dass die Mezzanine-Platinen identisch sein können, da sie den gleichen Typ von Kabelanschlüssen und Firmware-Paketen haben.
  • Nach der Installation und dem Anschluss der Hauptplatine und der Mezzanine-Platinen wird der Server eingeschaltet (Vorgang 706). Nach dem Einschalten kann das Logikmodul (z.B. ein CPLD- oder FPGA-Modul) auf jeder Mezzanine-Platine (z.B. CPLD 610 auf der Mezzanine-Platine 602 in 6) die Position der Mezzanine-Platine innerhalb des Stapels bestimmen (Vorgang 708). Genauer gesagt, kann das Logikmodul das Kontaktmuster zwischen den Metallstreifen und den Lötpads erkennen und dann die Position der Platine auf Basis des erkannten Kontaktmusters bestimmen. Das Logikmodul kann ferner die Socket-Nummern für die Prozessoren (z.B. die in 2 gezeigten Sockets 202 und 204) auf derselben Mezzanine-Platine auf Basis der ermittelten Platinenposition und eines vorgegebenen Nummerierungsschemas festlegen (Vorgang 710). Das Logikmodul kann optional eine eindeutige Platinenkennung (ID) für die Mezzanine-Platine auf Basis seiner Positionsinformationen zuweisen, und die Socket-Nummern oder IDs der Prozessoren können auf Basis der Platinenkennung gemäß einem vorgegebenen Algorithmus berechnet werden. Gemäß einigen Aspekten kann jede Mezzanine-Platine zwei Prozessoren enthalten, und die jedem Prozessor entsprechende Socket-Nummer kann durch eine Anzahl von Binärbits dargestellt werden.
  • Das Logikmodul auf jeder Mezzanine-Platine kann über Kabel, die die Mezzanine-Platinen miteinander verbinden, Socket- und Port-Informationen der lokalen Platine an eine entfernte nachgeschaltete Platine senden und von einer entfernten vorgeschalteten Platine Socket- und Port-Informationen der entfernten Platine empfangen (Vorgang 712). Es ist zu beachten, dass der Mezzanine-Platinenanschluss auf jeder Mezzanine-Platine einen Sender zum Übertragen von Informationen an eine nachgeschaltete Platine und einen Empfänger zum Empfangen von Informationen von einer vorgeschalteten Platine haben kann. Das Logikmodul auf jeder Mezzanine-Platine kann auch seine eigenen Socket-and-Port-Informationen und die Socket-and-Port-Informationen von einer vorgeschalteten Platine an ein Logikmodul auf der Hauptplatine (z.B. CPLD 608 auf der in 6 gezeigten Hauptplatine 600) senden (Vorgang 714).
  • Das Logikmodul (z.B. ein CPLD- oder FPGA-Modul) auf der Hauptplatine kann dann die Verbindungstopologie aller Mezzanine-Platinen auf Basis der von jeder Mezzanine-Platine empfangenen Socket- und Port-Informationen bestimmen (Vorgang 716) und feststellen, ob die Topologie ungültig ist oder ob eine Verbindung zwischen zwei Platinen ungültig ist (Vorgang 718). Die Feststellung, ob die Topologie ungültig ist, kann den Vergleich der erkannten Topologie mit einer vordefinierten bekannten Topologie umfassen. Einem Aspekt zufolge kann das System eine endliche Anzahl von gültigen Topologien definieren und speichern. Während des Bootens kann die erkannte Topologie mit den bekannten gültigen Topologien verglichen werden. Durch die Steuerung der Anzahl der gültigen Topologien kann Validierungsaufwand eingespart werden. Die Validierung der Kabelanschlusstopologie der Mezzanine-Platinen während des Systemstarts kann die Systemleistung sicherstellen. Liegt keine ungültige Kabelverbindung vor, setzt der Server den Boot-Vorgang fort (Vorgang 720). Wenn die Topologie ungültig ist oder eine ungültige Kabelverbindung festgestellt wird, stoppt das System den Boot-Vorgang und zeigt eine Fehlermeldung an, um auf die ungültige Verbindung hinzuweisen (Vorgang 722).
  • 8 zeigt ein Flussdiagramm, das einen beispielhaften Prozess zur Erkennung der Topologie einer Mehrzahl miteinander verbundener und gestapelter Leiterplatten gemäß einem Aspekt illustriert. Während des Betriebs kann ein Logikmodul auf einem entsprechenden Leiterplatte (z.B. CPLD 610 auf der in 6 gezeigten Mezzanine-Platine 602) eine Position der Leiterplatte bestimmen (Vorgang 802). Es ist zu beachten, dass die Leiterplatte eine Anzahl von Lötpads (z.B. die in 2 gezeigten Lötpads 216 und 218) enthalten kann und dass ein Lötpad durch einen Metallstreifen (z.B. den in 4A gezeigten Metallstreifen 406) geerdet werden kann, der an einem Metallgehäuse (z.B. dem in 4A gezeigten Gehäuse 400) befestigt ist, das die Leiterplatten umgibt. Um die Position der Leiterplatte zu bestimmen, kann das Logikmodul das Erdungsmuster der Lötpads auf den Leiterplatten ermitteln.
  • Das Logikmodul kann dann eine eindeutige Kennung für die Leiterplatte auf Basis ihrer ermittelten Position zuweisen (Vorgang 804). Beispielsweise können die Kennungen der Leiterplatten entlang der Stapelrichtung der Leiterplatten (z.B. von oben nach unten oder von unten nach oben) inkrementiert oder dekrementiert werden. Das Logikmodul kann ferner Informationen, die der eindeutigen Kennung der aktuellen Leiterplatte zugeordnet sind, an eine nachgeschaltete Leiterplatte übertragen (Vorgang 806) und von einer vorgeschalteten Leiterplatte Informationen empfangen, die einer Kennung der vorgeschalteten Leiterplatte zugeordnet sind (Vorgang 808). Das Logikmodul auf der Leiterplatte kann auch an ein Logikmodul auf einer Hauptplatine (z.B. CPLD 608 auf der in 6 gezeigten Hauptplatine 600), die mit der Mehrzahl von Leiterplatten kommunikativ verbunden ist, Informationen senden, die der Kennung der jeweiligen Leiterplatte und der Kennung der vorgeschalteten Leiterplatte zugeordnet sind (Vorgang 810). Das Logikmodul auf der Hauptplatine kann dann die Topologie der miteinander verbundenen und gestapelten Leiterplatten erkennen (Vorgang 812).
  • Allgemein beschreibt diese Offenbarung einen Multi-Socket-Server mit der Fähigkeit zur automatischen Erkennung der Kabelverbindungstopologie mehrerer gestapelter Mezzanine-Platinen. Zur Erleichterung der automatischen Erkennung der Position jeder Mezzanine-Platine innerhalb des Stapels kann jede Mezzanine-Platine eine Topologieerkennungs-Lötpad-Anordnung enthalten, das eine Anzahl von Lötpads umfasst, und das Servergehäuse kann eine Reihe von Metallstreifen enthalten, die an seinen Seitenwänden oder seinem Rahmen angebracht sind. Die Positionen der Lötpads und der Metallstreifen können so angeordnet werden, dass jeder Metallstreifen in direktem Kontakt mit einem Lötpad steht, was zu einer Erdung des Lötpads führt. Die Verteilung der Metallstreifen kann so konfiguriert werden, dass die Topologieerkennungs-Lötpad-Anordnung auf jeder Mezzanine-Platine ein eindeutiges Erdungsmuster aufweisen kann, das der Position der Platine im Stapel entspricht. Jede Mezzanine-Platine kann ein Logikmodul (z.B. ein CPLD-Bauelement oder ein FPGA-Bauelement) aufweisen, das das Erdungsmuster der Topologieerkennungs-Lötpad-Anordnung erkennen kann, um die Position der Platine zu ermitteln. Das Logikmodul auf jeder Platine kann ferner Socket-IDs für die Prozessoren auf der Platine zuweisen und diese Informationen an eine angeschlossene nachgeschaltete Platine übermitteln. Das Logikmodul kann dann die Socket-IDs der lokalen Platine und einer vorgeschalteten Platine an die Hauptplatine melden, damit ein Logikmodul auf der Hauptplatine die Verbindungstopologie aller Mezzanine-Platinen im Server bestimmen kann, um zu erkennen, ob eine ungültige Kabelverbindung besteht. Die automatische Erkennung der Kabelverbindungstopologie kann während des Boot-Vorgangs des Servers erfolgen, und der Boot-Vorgang kann angehalten werden, wenn eine ungültige Kabelverbindung erkannt wird.
  • Im Vergleich zu bestehenden Lösungen, die unterschiedliche Arten von Kabelanschlüssen auf jeder Mezzanine-Platine erfordern, können mit der beschriebenen Lösung alle Mezzanine-Platinen auf Basis eines gemeinsamen PCBA-Designs hergestellt werden. Die Mezzanine-Platinen können in Bezug auf Kabelanschlüsse und Firmware-Pakete identisch sein, was die NRE-Kosten senken kann. Darüber hinaus ist die beschriebene Lösung nicht auf bestimmte Kabeltypen oder PCBAs mit bestimmten Kabelanschlüssen angewiesen und bietet somit Flexibilität bei der Auswahl von Kabeln oder PCBAs. Folglich kann sie die SKUs von Kabeln und PCBAs reduzieren, um die Lagerkosten zu senken. Zu den weiteren Vorteilen gehören die Verringerung des Validierungsaufwands durch die Kontrolle der Anzahl gültiger Topologien und die Vereinfachung der Fehlersuche und Prüfung während der Herstellung oder Wartung der Vorrichtung durch die Bereitstellung vollständiger und detaillierter Kabelverbindungsinformationen zu den Mezzanine-Platinen.
  • In den dargestellten Beispielen gibt es drei Mezzanine-Platinen, und jede Platine enthält zwei Prozessoren. Der Server kann mehr oder weniger als drei Mezzanine-Platinen enthalten, und die Anzahl der Prozessoren auf jeder Platine kann mehr oder weniger als zwei betragen. Die Anzahl der Bits, die zur Darstellung der Socket-Nummern verwendet werden, kann in Abhängigkeit von der Gesamtzahl der Prozessoren im Server variieren. In den gezeigten Beispielen sind die Lötpads nahe an der Vorderkante jeder Platine dargestellt, um einen einfachen Kontakt der Metallstreifen von der Vorderseite zu ermöglichen. Je nach den Platzverhältnissen im Servergehäuse und dem Layout der einzelnen Mezzanine-Platinen sind auch andere Konfigurationen möglich. Beispielsweise ist es auch möglich, die Lötpads in der Nähe der hinteren Kante jeder Mezzanine-Platine anzuordnen oder sie entlang einer Seitenkante auszurichten.
  • Ein Aspekt der vorliegenden Anmeldung beschreibt ein System, das eine Mehrzahl von gestapelten Mezzanine-Platinen umfasst, wobei jede Mezzanine-Platine kommunikativ mit einer Hauptplatine und einem Metallgehäuse verbunden ist, das die Hauptplatine und die Mezzanine-Platinen umgibt. Eine jeweilige Mezzanine-Platine kann eine Anzahl von Lötpads enthalten, und das Metallgehäuse kann eine Mehrzahl von Metallstreifen enthalten, wobei ein jeweiliger Metallstreifen mit einer Lötfläche einer entsprechenden Mezzanine-Platine in Kontakt kommt. Das System kann ferner ein Logikmodul enthalten, das auf der jeweiligen Mezzanine-Platine positioniert ist, um eine Position der jeweiligen Mezzanine-Platine auf Basis eines Kontaktmusters zwischen den Metallstreifen und den Lötpads der jeweiligen Mezzanine-Platine zu bestimmen.
  • In einer Variante dieses Aspekts können die Lötpads auf der jeweiligen Mezzanine-Platine mit den entsprechenden Stiften des Logikmoduls elektrisch gekoppelt werden.
  • In einer Variante dieses Aspekts ist das Metallgehäuse geerdet, und der jeweilige Metallstreifen kann an einer Seitenwand des Metallgehäuse befestigt werden, wodurch das Lötpad, das mit dem jeweiligen Metallstreifen in Kontakt ist, geerdet wird.
  • In einer weiteren Variante kann der jeweilige Metallstreifen eine Anbringungsbasis, die über eine Halterung an der Seitenwand befestigt ist, und einen L-förmigen Kontaktfinger aufweisen, der mit dem Lötpad in Kontakt zu bringen ist.
  • In einer weiteren Variante können die Metallstreifen nach einem vorgegebenen Muster angeordnet werden, um ein eindeutiges Grundmuster für die Lötpads auf jeder Mezzanine-Platine zu erzeugen.
  • In einer Variante dieses Aspekts ist das Logikmodul zum Zuweisen einer eindeutigen Kennung für einen Prozessor auf der jeweiligen Mezzanine-Platine basierend auf der ermittelten Position bestimmt.
  • In einer weiteren Variante sind die Mezzanine-Platinen über Kabel miteinander kommunikativ verbunden, und eine jeweilige Mezzanine-Platine kann einen Sender enthalten, um die Kennung des Prozessors auf der jeweiligen Mezzanine-Platine an eine nachgeschaltete Mezzanine-Platine zu übertragen, und einen Empfänger, um von einer vorgeschalteten Mezzanine-Platine eine Kennung eines Prozessors auf der vorgeschalteten Mezzanine-Platine zu empfangen.
  • In einer weiteren Variante ist die jeweilige Mezzanine-Platine dazu bestimmt, die Kennung des Prozessors auf der jeweiligen Mezzanine-Platine und die empfangene Kennung des Prozessors auf der vorgeschalteten Mezzanine-Platine an die Hauptplatine zu senden, wodurch ein Logikmodul auf der Hauptplatine eine Verbindungstopologie der Mezzanine-Platine erkennen kann.
  • In einer weiteren Variante ist das Logikmodul auf der Hauptplatine zur Bestimmung dessen bestimmt, ob die erkannte Verbindungstopologie ungültig ist.
  • In einer Variante dieses Aspekts sind die Lötpads angrenzend an eine Kante der jeweiligen Mezzanine-Platine angeordnet, die einer Vorderseite des Metallgehäuse zugewandt ist.
  • Ein Aspekt der vorliegenden Anmeldung beschreibt ein Verfahren zum Erkennen einer Topologie einer Mehrzahl von miteinander verbundenen und gestapelten Leiterplatten. Das Verfahren kann umfassen: Bestimmen, durch ein Logikmodul auf einer jeweiligen Leiterplatte, einer Position der Leiterplatte; Zuweisen einer eindeutigen Kennung für die jeweilige Leiterplatte auf Basis der bestimmten Position; Übertragen von Informationen, die der eindeutigen Kennung zugeordnet sind, an eine nachgeschaltete Leiterplatte; Empfangen von Informationen von einer vorgeschalteten Leiterplatte, die einer Kennung der vorgeschalteten Leiterplatte zugeordnet sind; und Senden, an ein Logikmodul auf einer Hauptplatine, das kommunikativ mit der Mehrzahl von Leiterplatten verbunden ist, von Informationen, die der Kennung der jeweiligen Leiterplatte zugeordnet sind, und von Informationen, die der Kennung der vorgeschalteten Leiterplatte zugeordnet sind, wodurch dem Logikmodul auf der Hauptplatine die Erkennung der Topologie der miteinander verbundenen und gestapelten Leiterplatten erleichtert wird.
  • In einer Variante dieses Aspekts kann die Leiterplatte eine Anzahl von Lötpads enthalten, und ein jeweiliges Lötpad kann durch einen Metallstreifen geerdet sein, der an einem Metallgehäuse befestigt ist, das die Leiterplatten umgibt. Die Bestimmung der Position der Leiterplatte kann die Bestimmung eines Erdungsmusters der Lötpads auf den Leiterplatten umfassen.
  • In einer weiteren Variante sind die Lötpads elektrisch mit einer Anzahl vorbestimmter Stifte an dem Logikmodul gekoppelt. Die Bestimmung des Erdungsmusters der Lötpads kann die Bestimmung des Spannungspegels jedes Stiftes umfassen.
  • In einer Variante dieses Aspekts handelt sind die Leiterplatten Prozessor-Mezzanine-Platinen, die in einem Multi-Prozessor-Server enthalten sind, und das Verfahren kann ferner die Zuweisung einer eindeutigen Socket-Nummer für jeden Prozessor auf der Leiterplatte umfassen.
  • In einer weiteren Variante umfassen die der eindeutigen Kennung zugeordneten Informationen die eindeutige Socket-Nummer jedes Prozessors.
  • In einer Variante dieses Aspekts kann das Verfahren ferner umfassen, dass das Logikmodul auf einer Hauptplatine bestimmt, ob die erkannte Topologie ungültig ist.
  • In einer weiteren Variante kann die Bestimmung dessen, ob die erkannte Topologie ungültig ist, ein Vergleichen der erkannten Topologie mit einer Mehrzahl bekannter gültiger Topologien umfassen.
  • In einer weiteren Variante kann das Verfahren als Reaktion auf die Bestimmung dessen, dass die erkannte Topologie ungültig ist, auch das Anhalten eines Boot-Vorgangs und die Anzeige einer Fehlermeldung umfassen.
  • Ein Aspekt der vorliegenden Anmeldung beschreibt eine Prozessor-Mezzanine-Platine für einen Multiprozessor-Server. Die Prozessor-Mezzanine-Platine kann einen oder mehrere Prozessoren, eine Anzahl von Lötpads und ein Logikmodul enthalten, um eine Position der Prozessor-Mezzanine-Platine innerhalb einer Mehrzahl von gestapelten Prozessor-Mezzanine-Platinen auf Basis eines Kontaktmusters zwischen einer Mehrzahl von Metallstreifen und den Lötpads zu bestimmen. Die Metallstreifen sind an einem Metallgehäuse befestigt, das die mehreren gestapelten Prozessor-Mezzanine-Platinen umgibt.
  • In einer Variante dieses Aspekts sind die Lötpads mit Stiften des Logikmoduls verbunden, und ein Lötpad in Kontakt mit einem entsprechenden Metallstreifen ist geerdet, wodurch das Logikmodul das Kontaktmuster auf Basis eines Zustands der Stifte bestimmen kann.
  • Die im Abschnitt „Ausführliche Beschreibung“ beschriebenen Verfahren und Prozesse können als Code und/oder Daten verkörpert sein, die in einem computerlesbaren Speichermedium, wie oben beschrieben, gespeichert sein können. Wenn ein Computersystem den auf dem computerlesbaren Speichermedium gespeicherten Code und/oder die Daten liest und ausführt, führt das Computersystem die Verfahren und Prozesse aus, die als Datenstrukturen und Code verkörpert und in dem computerlesbaren Speichermedium gespeichert sind.
  • Außerdem können die oben beschriebenen Verfahren und Prozesse in Hardware-Module oder -Vorrichtungen integriert sein. Zu den Hardware-Modulen oder -Vorrichtungen können unter anderem anwendungsspezifische integrierte Schaltungen (ASIC), feldprogrammierbare Gate-Arrays (FPGAs), dedizierte oder gemeinsam genutzte Prozessoren, die ein bestimmtes Softwaremodul oder ein Stück Code zu einem bestimmten Zeitpunkt ausführen, sowie andere bekannte oder später entwickelte programmierbare Logikvorrichtungen gehören. Wenn die Hardware-Module oder -Vorrichtungen aktiviert werden, führen sie die in ihnen enthaltenen Verfahren und Prozesse aus.
  • Die vorstehenden Beschreibungen dienen lediglich der Veranschaulichung und Beschreibung. Sie erheben keinen Anspruch auf Vollständigkeit und beschränken den Anwendungsbereich dieser Offenbarung nicht auf die offenbarten Formen. Dementsprechend werden viele Modifikationen und Variationen für Fachleute auf dem Gebiet der Technik offensichtlich sein.

Claims (20)

  1. Ein System, das Folgendes umfasst: eine Mehrzahl von gestapelten Mezzanine-Platinen, wobei jede Mezzanine-Platine kommunikativ mit einer Hauptplatine gekoppelt ist; ein Metallgehäuse, das die Hauptplatine und die Mezzanine-Platinen umgibt, wobei eine jeweilige Mezzanine-Platine eine Anzahl von Lötpads umfasst und wobei das Metallgehäuse eine Mehrzahl von Metallstreifen umfasst, wobei ein jeweiliger Metallstreifen zum Kontakt mit einem Lötpad einer entsprechenden Mezzanine-Platine bestimmt ist; und ein Logikmodul, das auf der jeweiligen Mezzanine-Platine positioniert ist, um eine Position der jeweiligen Mezzanine-Platine auf Basis eines Kontaktmusters zwischen den Metallstreifen und den Lötpads der jeweiligen Mezzanine-Platine zu bestimmen.
  2. System nach Anspruch 1, bei dem die Lötpads auf der jeweiligen Mezzanine-Platine elektrisch mit entsprechenden Stiften des Logikmoduls gekoppelt sind.
  3. System nach Anspruch 1, bei dem das Metallgehäuse geerdet ist und bei dem der jeweilige Metallstreifen an einer Seitenwand des Metallgehäuses befestigt ist, wodurch das Lötpad in Kontakt mit dem jeweiligen Metallstreifen geerdet wird.
  4. System nach Anspruch 3, bei dem der jeweilige Metallstreifen eine Befestigungsbasis, die über eine Halterung an der Seitenwand angebracht ist, und einen L-förmigen Kontaktfinger, der mit dem Lötpad in Kontakt zu bringen ist, aufweist.
  5. System nach Anspruch 3, bei dem die Metallstreifen nach einem vorbestimmten Muster angeordnet sind, um ein eindeutiges Erdungsmuster für Lötpads auf jeder Mezzanine-Platine zu erzeugen.
  6. System nach Anspruch 1, bei dem das Logikmodul zum Zuweisen einer eindeutigen Kennung für einen Prozessor auf der jeweiligen Mezzanine-Platine auf Basis der ermittelten Position bestimmt ist.
  7. System nach Anspruch 6, bei dem die Mezzanine-Platinen über Kabel kommunikativ miteinander gekoppelt sind und bei dem eine jeweilige Mezzanine-Platine einen Sender, um die Kennung des Prozessors auf der jeweiligen Mezzanine-Platine an eine nachgeschaltete Mezzanine-Platine zu übertragen, und einen Empfänger aufweist, um von einer vorgeschalteten Mezzanine-Platine eine Kennung eines Prozessors auf der vorgeschalteten Mezzanine-Platine zu empfangen.
  8. System nach Anspruch 6, bei dem die jeweilige Mezzanine-Platine zum Senden der Kennung des Prozessors auf der jeweiligen Mezzanine-Platine und der empfangenen Kennung des Prozessors auf der vorgeschalteten Mezzanine-Platine an die Hauptplatine bestimmt ist, wodurch ein Logikmodul auf der Hauptplatine eine Verbindungstopologie der Mezzanine-Platine erkennen kann.
  9. System nach Anspruch 8, bei dem das Logikmodul auf der Hauptplatine zum Bestimmen dessen, ob die erkannte Verbindungstopologie ungültig ist, bestimmt ist.
  10. System nach Anspruch 1, bei dem die Lötpads angrenzend an eine Kante der jeweiligen Mezzanine-Platine angeordnet sind, die einer Vorderseite des Metallgehäuses zugewandt ist.
  11. Verfahren zum Erkennen einer Topologie einer Mehrzahl von miteinander verbundenen und gestapelten Leiterplatten, wobei das Verfahren umfasst: Bestimmen, durch ein Logikmodul auf einer jeweiligen Leiterplatte, einer Position der Leiterplatte; Zuweisen einer eindeutigen Kennung für die jeweilige Leiterplatte auf Basis der bestimmten Position; Übertragen von Informationen, die der eindeutigen Kennung zugeordnet sind, an eine nachgeschaltete Leiterplatte; Empfangen von Informationen von einer vorgeschalteten Leiterplatte, die einer Kennung der vorgeschalteten Leiterplatte zugeordnet sind; und Senden von Informationen, die der Kennung der jeweiligen Leiterplatte zugeordnet sind, und von Informationen, die der Kennung der vorgeschalteten Leiterplatte zugeordnet sind, an ein Logikmodul auf einer Hauptplatine, das kommunikativ mit der Mehrzahl von Leiterplatten verbunden ist, wodurch dem Logikmodul auf der Hauptplatine die Erkennung der Topologie der miteinander verbundenen und gestapelten Leiterplatten erleichtert wird.
  12. Verfahren nach Anspruch 11, bei dem die Leiterplatte eine Anzahl von Lötpads umfasst, wobei ein jeweiliges Lötpad durch einen Metallstreifen geerdet sein kann, der an einem Metallgehäuse befestigt ist, das die Leiterplatten umgibt, und wobei das Bestimmen der Position der Leiterplatte das Bestimmen eines Erdungsmusters der Lötpads auf den Leiterplatten umfasst.
  13. Verfahren nach Anspruch 12, bei dem die Lötpads mit einer Anzahl vorbestimmter Stifte an dem Logikmodul elektrisch gekoppelt sind und bei dem die Bestimmung des Erdungsmusters der Lötpads die Bestimmung eines Spannungspegels jedes Stifts umfasst.
  14. Verfahren nach Anspruch 11, bei dem die Leiterplatten Prozessor-Mezzanine-Platinen sind, die in einem Multiprozessor-Server enthalten sind, und wobei das Verfahren ferner das Zuweisen einer eindeutigen Socket-Nummer für jeden Prozessor auf der Leiterplatte umfasst.
  15. Verfahren nach Anspruch 14, bei dem die der eindeutigen Kennung zugeordneten Informationen die eindeutige Socket-Nummer jedes Prozessors umfassen.
  16. Verfahren nach Anspruch 11, das ferner eine Bestimmung dessen, ob die erkannte Topologie ungültig ist, durch das Logikmodul auf einer Hauptplatine umfasst.
  17. Verfahren nach Anspruch 16, bei dem die Bestimmung dessen, ob die erkannte Topologie ungültig ist, ein Vergleichen der erkannten Topologie mit einer Mehrzahl bekannter gültiger Topologien umfasst.
  18. Verfahren nach Anspruch 16, das ferner Folgendes umfasst: als Reaktion auf die Bestimmung dessen, dass die erkannte Topologie ungültig ist, Anhalten eines Boot-Vorgangs und Anzeigen einer Fehlermeldung.
  19. Prozessor-Mezzanine-Platine für einen Multiprozessor-Server, wobei die Prozessor-Mezzanine-Platine umfasst: einen oder mehrere Prozessoren; eine Anzahl von Lötpads und ein Logikmodul, um eine Position der Prozessor-Mezzanine-Platine innerhalb einer Mehrzahl von gestapelten Prozessor-Mezzanine-Platinen auf Basis eines Kontaktmusters zwischen einer Mehrzahl von Metallstreifen und den Lötpads zu bestimmen, wobei die Metallstreifen an einem Metallgehäuse befestigt sind, das die Mehrzahl von gestapelten Prozessor-Mezzanine-Platinen umgibt.
  20. Prozessor-Mezzanine-Platine nach Anspruch 19, bei der die Lötpads mit Stiften des Logikmoduls verbunden sind, wobei ein Lötpad in Kontakt mit einem entsprechenden Metallstreifen geerdet ist, wodurch das Logikmodul das Kontaktmuster auf Basis eines Zustands der Stifte bestimmen kann.
DE102023114911.3A 2022-08-16 2023-06-06 Intelligente erkennung einer kabeltopologie Pending DE102023114911A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/889,198 US20240064919A1 (en) 2022-08-16 2022-08-16 Intelligent cable topology detection
US17/889,198 2022-08-16

Publications (1)

Publication Number Publication Date
DE102023114911A1 true DE102023114911A1 (de) 2024-02-22

Family

ID=89808688

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102023114911.3A Pending DE102023114911A1 (de) 2022-08-16 2023-06-06 Intelligente erkennung einer kabeltopologie

Country Status (3)

Country Link
US (1) US20240064919A1 (de)
CN (1) CN117596811A (de)
DE (1) DE102023114911A1 (de)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4723178B2 (ja) * 2003-10-28 2011-07-13 エルピーダメモリ株式会社 メモリシステム及びメモリモジュール
US20090080163A1 (en) * 2007-05-17 2009-03-26 Lockheed Martin Corporation Printed wiring board assembly
US9167460B2 (en) * 2013-06-28 2015-10-20 Rogers Communications Inc. Detection of cable network interference on wireless network
US10888013B2 (en) * 2017-10-04 2021-01-05 Google Llc Managing a data center
TWI665834B (zh) * 2018-04-11 2019-07-11 和碩聯合科技股份有限公司 高速訊號連接器模組
US11456231B2 (en) * 2021-01-18 2022-09-27 Fortinet, Inc. Heatsink arrangement for integrated circuit assembly and method for assembling thereof

Also Published As

Publication number Publication date
US20240064919A1 (en) 2024-02-22
CN117596811A (zh) 2024-02-23

Similar Documents

Publication Publication Date Title
DE69725519T2 (de) Verbindung eines Doppelspannungsmoduls
DE112014006961T5 (de) Steckerelement, Buchsenelement und damit ausgestatteter Platinen-Steckverbinder
EP1784738B1 (de) Steckerplatine zum einsatz in einem einschubrahmen für peripheriegeräte
DE4017902A1 (de) Zusatzkarte mit automatischer anpassung an die schlitzposition
DE10210902A1 (de) Paralleltestplatine und zugehöriges Speichermodultestverfahren
DE102014216932A1 (de) Leiterplatte zum Montieren eines Überbrückungsmoduls und Leiterplatten-Anordnung
DE69636699T2 (de) Mutterplatinenanordnung mit einem einzigen Sockel zur Aufnahme einer einzigen integrierten Schaltungspackung oder mehrerer integrierter Schaltungspackungen
DE69825366T2 (de) Sicherungsplatte für Leiterplattenkabelverbinder
DE102016121598A1 (de) Basismodul und Luftfahrtcomputersystem mit dem Basismodul
EP1237395B1 (de) Leiterplattenanordnung
DE102023114911A1 (de) Intelligente erkennung einer kabeltopologie
DE69724166T2 (de) Einschub für elektronische Karten mit automatischem Einstecken und Trennen, Einschub und seine Aufnahmestruktur, Demontageverfahren von elektronischen Karten
DE102019119196A1 (de) Elektronische vorrichtung
EP2915017B1 (de) Anordnung für ein computersystem
EP3564824B1 (de) Schnittstellenanordnung auf einer systemplatine und computersystem
DE102018101903B3 (de) Elektrisches Gerät, Leiterplatte und Verfahren zur Erkennung eines Typs eines Gehäuses eines elektrischen Geräts
DE102013015358B4 (de) Numerisches Steuerungssystem mit einer abtrennbaren Filterschaltung
DE69727105T2 (de) Gerät für automatische Verbindungserkennung
DE102016105522B4 (de) Anzeigeeinheit
WO2016041777A1 (de) Anordnung zur kennzeichnung wenigstens eines anschlusses eines computersystems, anschlussmodul und beschriftungselement
DE112007001936B4 (de) Erweitertes Gehäusesubstrat und Verfahren zum Koppeln eines Substrates eines IC- Gehäuses mit einem Sockel
EP2149956A1 (de) Modulares elektrisches System und Verfahren zum Betrieb
DE102016210210A1 (de) Elektromechanischer schalter über leitungsverbinder
DE102019110732A1 (de) Elektronisches Gerät, insbesondere Computersystem, und Leiterplatte
DE202017104494U1 (de) Computersystem