-
Flüchtiger Speicher ist Speicher, dessen Zustand (und somit die darin gespeicherten Daten) unbestimmt ist, wenn die Leistungsversorgung der Vorrichtung unterbrochen ist. Dynamischer flüchtiger Speicher erfordert das Auffrischen der in der Vorrichtung gespeicherten Daten, um den Zustand zu erhalten. Ein Beispiel für dynamischen flüchtigen Speicher beinhaltet DRAM (Dynamic Random Access Memory) oder irgendeine Variante, wie etwa synchronen DRAM (SDRAM). Ein Speichersubsystem, wie hier beschrieben, kann mit einer Reihe von Speichertechnologien kompatibel sein, wie etwa DDR3 (Double Data Rate Version 3, Originalversion von JEDEC (Joint Electronic Device Engineering Council) am 27. Juni 2007). DDR4 (DDR Version 4, Anfangsspezifikation veröffentlicht im September 2012 von JEDEC), DDR4E (DDR Version 4), LPDDR3 (Low Power DDR Version 3, JESD209-3B, August 2013 von JEDEC), LPDDR4) LPDDR Version 4, JESD209-4, ursprünglich veröffentlicht von JEDEC im August 2014), WIO2 (Wide Input/Output Version 2, JESD229-2, ursprünglich veröffentlicht von JEDEC im August 2014, HBM (High Bandwidth Memory, JESD325, ursprünglich veröffentlicht von JEDEC im Oktober 2013, DDR5 (DDR Version 5, gegenwärtig diskutiert von JEDEC), LPDDR5 (gegenwärtig diskutiert von JEDEC), HBM2 (HBM Version 2), gegenwärtig diskutiert von JEDEC, oder andere oder Kombinationen von Speichertechnologien und Technologien, die auf Ableitungen oder Erweiterungen solcher Spezifikationen basieren.
-
Unregistered (U), Registered (R), Load-Reduced (LR) DDR5-Dual-In-Line-Speichermodul (DIMM)-Verbinder sind als ein oberflächenmontierter (SMT) Verbinder mit einem 1:1-Signal-zu-Masse-Verhältnis definiert. 1 zeigt ein Beispiel für eine DDR5-Pinbelegung mit einer Anordnung von Signalpins und Massepins mit einem 1:1-Signal-zu-Masse-Pin (S/G)-Verhältnis. Die SMT-Verbindersignalpins werden durch die Massepins als ein Massepin abgeschirmt, der zwischen zwei Daten (DQ)-Signalpins platziert ist, um das Nebensprechen zwischen Signalpins zu reduzieren.
-
2 zeigt eine weitere Ansicht eines Verbinderpindesigns. Signalpins verbinden DIMM-Goldfinger (GF) mit entsprechenden Hauptplatinen (MB)-SMT-Pads. Massepins sind zwischen Signalpins positioniert und verbinden andere DIMM-Goldfinger mit entsprechenden Hauptplatinen (MB)-SMT-Pads.
-
Figurenliste
-
- 1 zeigt ein Beispiel für eine Anordnung von Signalpins und Massepins.
- 2 zeigt eine weitere Ansicht eines Verbinderpindesigns.
- 3A - 3G zeigen Beispiele für eine Massepin- und Signalpinanordnung und -design.
- 4 zeigt ein Beispiel für Reduzierung von Nahnebensprechen (NEXT) und Fernnebensprechen (FEXT) unter Verwendung verschiedener Ausführungsformen.
- 5A und 5B stellen beispielhafte Prozesse dar.
- 6 stellt ein System dar.
- 7 stellt eine beispielhafte Umgebung dar.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Signale, die unter Verwendung unterschiedlicher Signalpins übertragen werden, können Nebensprechen erfahren, wodurch Signale, die auf einem Signalpin übertragen werden, eine Störbeeinflussung von Signalen verursachen können, die auf einem oder mehreren anderen Signalpins übertragen werden. In manchen Fällen kann Nebensprechen durch kapazitive, induktive oder leitfähige Kopplung verursacht werden. In manchen Fällen, wie in den Beispielen der 1 und 2, stellt ein Massepin möglicherweise keinen ausreichenden Schutz vor Nebensprechen zwischen Signalen bereit, die unter Verwendung von zwei oder mehr benachbarten Signalpins übertragen werden, und die Signalstörbeeinflussung kann unerwünschte Pegel erreichen.
-
Ein einzelner Massepin stellt möglicherweise keinen ausreichenden Schutz vor Nebensprechen zwischen umgebenden Signalpins bereit. Eine Lösung könnte das Hinzufügen von mehr Massepins zu separaten Signalpins und das Ändern der Positionen von Massepin- und/oder Signalpinverbindern auf einer Hauptplatine (MB) und der Positionen von DIMM-Goldfinger (GF)-Pads beinhalten. Jedoch definiert DDR5 eine Modul-Pinbelegung mit physischen Abständen zwischen Signalpinverbindungen und Massepinverbindungen zu Goldfingern (GF) sowie zu SMT-Pads. Dementsprechend ist für DDR5-konsistente Systeme das Hinzufügen von mehr Massepins zum Reduzieren von Nebensprechen möglicherweise nicht möglich, da es eine festgelegte physische Anordnung von Massepinverbindungen gibt.
-
Verschiedene Ausführungsformen stellen einen Massepin mit aufgeteilten parallelen Massepinbeinen bereit, wobei ein erstes Ende des Massepins in der Lage ist, mit einem Massepinverbinder verbunden zu werden, und ein zweites Ende des Massepins in der Lage ist, mit GF-Verbinderpositionen in einem DDR5-konsistenten DIM- und Hauptplatinen-Layout verbunden zu werden. Ein erstes Massepinbein kann so ausgerichtet sein, dass es sich parallel zu einem ersten Signalpin erstreckt, wohingegen ein zweites Massepinbein so ausgerichtet sein kann, dass es sich parallel zu einem zweiten, anderen Signalpin erstreckt. Bei manchen Beispielen kann ein Massepin mehr als zwei Beine beinhalten. Verschiedene Ausführungsformen stellen potenziell ein verbessertes Signal-zu-Masse-Verhältnis und verbesserte Kompatibilität mit DDR5-GF-Anordnungen, Kompatibilität mit dem DDR5-Hauptplatinen-Design von SMT-Pad-Layouts und Kompatibilität mit DDR5-DIMM-Designs bereit.
-
3A - 3G zeigen Beispiele für eine Massepin- und Signalpinanordnung und -design. 3A - 3G zeigen Beispiele für zwei Massepins an derselben Massepinposition, die mit einem DIMM-Goldfinger und einem MB-SMT-Pad verbunden sind. Bei manchen Beispielen kann der Massepinverbinder 302-1 die Beine 302-1-A und 302-1-B beinhalten. Ein erstes Massepinbein 302-1-A kann parallel zu einem Abschnitt eines ersten Signalpins 306-1 positioniert sein. Ein zweites Massepinbein 302-1-B kann parallel zu einem Abschnitt eines zweiten Signalpins 306-2 positioniert sein. Der Massepinverbinder 302-1 kann an einem Ende mit dem MB-SMT-Pad 304-2 und an einem anderen Ende mit dem DIMM-GF 308-2 gekoppelt sein. Der Signalpin 306-1 kann an einem Ende mit dem MB-SMT-Pad 304-1 und an einem anderen Ende mit dem DIMM-GF 308-1 gekoppelt sein. Der Signalpin 306-2 kann an einem Ende mit dem MB-SMT-Pad 304-3 und an einem anderen Ende mit dem DIMM-GF 308-3 gekoppelt sein.
-
Die Verwendung von zwei Massepinbeinen anstelle eines einzelnen Beins kann das Signal-zu-Masse-Verhältnis von 1:1 auf 1:2 (oder andere Signal-zu-Masse-Verhältnisse von 1:N, wobei N größer als 1 ist) ändern und das Nebensprechen zwischen Signalpins reduzieren, aber immer noch 1:1-S/G an Schnittstellen mit MB-SMT-Pads und DIMM-GF erhalten und die Verwendung von DDR5-konsistenten MB- und DIMM-Anordnungen ermöglichen. Bei anderen Beispielen können mehr als zwei Massepinverbinderbeine verwendet werden, wie etwa drei, vier oder mehr. Entsprechend kann ein Massepin mit zwei oder mehr Beinen mit einem einzigen SMT und einem einzigen DIMM-GF verbinden. Ein erstes Ende des Massepins kann mit einem federgespannten GF verbunden sein, der mit einem DIMM verbunden ist. Ein zweites Ende des Massepins kann mit einem SMT verbunden sein, der mit einer Hauptplatine verbunden ist und mit anderen Platinenleiterbahnen verbunden ist.
-
Verschiedene Ausführungsformen eines hier beschriebenen Massepins können in Verbindungen mit DIMMs und Hauptplatinen verwendet werden, die mindestens mit DDR3, DDR4, DDR5 sowie DDR4E, LPDDR4, LPDDR5 oder anderen oder Kombinationen von Speichertechnologien und Technologien, die auf Ableitungen oder Erweiterungen solcher Spezifikationen basieren, konsistent sind. Verschiedene Ausführungsformen eines hier beschriebenen Massepins können als ein Massepin zwischen einer beliebigen Kopplung von Vorrichtungen verwendet werden, die einen Massepin und zwei Signalpins beinhalten, um ein Signal-zu-Masse-Verhältnis von 1:N zu ändern, wobei N größer als 1 ist. Zum Beispiel kann eine erste Vorrichtung einen Beschleuniger oder Prozessor beinhalten, und eine zweite Vorrichtung kann eine Speichervorrichtung, einen anderen Prozessor oder eine Hauptplatine beinhalten.
-
Verschiedene Ausführungsformen des Massepins können durch Stanzen und Formen eines Metalls, wie etwa unter anderem eines oder mehrere von Folgenden: Kupfer, Bronze, Legierung (z. B. eine Kombination von zwei oder mehr Metallen), oder einem beliebigen elektrischen oder optischen Signalleiter hergestellt werden. Die Dicke der Massepins und der Abstand zwischen Seiten von Massepins können so eingestellt sein, dass Massepins keine Signalpins kontaktieren. Die Herstellung von ausgestanzten Pins kann die Massepindicke steuern, um sicherzustellen, dass die Schnittstelle zu SMT und GF innerhalb der erforderlichen Positionen liegt. Bei manchen Beispielen kann eine Dicke eines Querschnitts eines Massepinbeins ungefähr 0,1 mm betragen, obwohl andere Dicken verwendet werden können. Bei manchen Beispielen haben zwei Massepinverbinder, die parallel zu dem Signalpin verlaufen, eine Länge von ungefähr 2,6 mm. Ein Querschnitt eines Massepinbeins kann von der DIMM-GF-Verbindung zu der MB-SMT-Pad-Verbindung kreisförmig, oval, quadratisch, rechteckig oder eine beliebige Kombination davon sein.
-
Wie in 3A gezeigt, erweitert sich der Massepin auf zwei Massepineinzelleiter oder -beine, die zwischen Signalpins angeordnet sind, und die Massepins können ein 1:2-Signal-zu-Masse-Verhältnis für ein Gebiet entlang einer Länge der Signalpins bereitstellen. Wenn der Massepin ein einzelner Leiter oder ein einzelnes Bein ist, kann der Massepin ein 1:1-Signal-zu-Masse-Verhältnis bereitstellen.
-
3B - 3G stellen unterschiedliche Perspektiven von Massepin- und Signalpinanordnungen mit Verbindungen zu Goldfingern und SMT-Pads dar. Zum Beispiel stellt 3B ein Beispiel für eine Signalpin- und Massepinanordnung dar. Zum Beispiel stellt 3C ein Beispiel für neben dem Massepin 352 positionierten den Signalpin 350 mit mehreren Beinen dar. 3D stellt ein Beispiel für mehrere Signalpins 350-0 und 350-1 dar, die auf gegenüberliegenden Seiten der Massepins 352-0 und 352-1 angeordnet sind. Außerdem ist der Signalpin 350-1 zwischen den Massepins 352-1 und 352-2 positioniert. 3E bis 3G stellen andere beispielhafte Perspektiven des Signalpins 366-0 und der Massepins 362-1 dar, die in Bezug auf die SMT-Pads 360-0 und 360-1 und die Goldfingerverbindungen 364-0 und 364-1 ausgerichtet sind. Die Formen und Arten von Verbindungen von Signalpins und Massepins sind lediglich beispielhaft, und beliebige Formen und Verbindungen können verwendet werden.
-
4 zeigt ein Beispiel für Reduzierung von Nahnebensprechen (NEXT) und Fernnebensprechen (FEXT) unter Verwendung verschiedener Ausführungsformen im Vergleich zum Stand der Technik. Unter Verwendung verschiedener Ausführungsformen, die mehrere parallele Massepins parallel zu Signalpins bereitstellen, können NEXT und FEXT um ungefähr 3 bis 5 dB reduziert werden.
-
5A stellt einen beispielhaften Prozess dar, der zum Bilden einer Verbindung zwischen einer ersten und einer zweiten Vorrichtung verwendet werden kann. In 502 kann ein erster Verbinder einer ersten Vorrichtung mit einem Massepin mit mehreren parallelen Massepinabschnitten gekoppelt werden. Bei manchen Beispielen kann der Massepin zwei oder mehr parallele Massepins beinhalten. Bei manchen Beispielen kann die erste Vorrichtung eine Hauptplatine beinhalten, und der erste Verbinder kann ein SMT einer Hauptplatine sein.
-
In 504 kann der Massepin mit mehreren parallelen Massepinabschnitten mit einem ersten Verbinder einer zweiten Vorrichtung gekoppelt werden. Bei manchen Beispielen beinhaltet die zweite Vorrichtung eine Speichervorrichtung, und der erste Verbinder der zweiten Vorrichtung kann einen Goldfinger eines DIMM beinhalten.
-
In 506 kann ein erster Signalpin mit einem zweiten Verbinder der ersten Vorrichtung und einem zweiten Verbinder der zweiten Vorrichtung gekoppelt werden. Bei manchen Beispielen kann der zweite Verbinder einer Hauptplatine ein SMT beinhalten. Bei manchen Beispielen kann der zweite Verbinder einer Speichervorrichtung einen Goldfinger eines DIMM beinhalten.
-
In 508 kann ein zweiter Signalpin mit einem dritten Verbinder der ersten Vorrichtung und einem dritten Verbinder der zweiten Vorrichtung gekoppelt werden. Bei manchen Beispielen kann der dritte Verbinder einer Hauptplatine ein SMT beinhalten. Bei manchen Beispielen kann der dritte Verbinder einer Speichervorrichtung einen Goldfinger eines DIMM beinhalten. Der zweite und dritte Verbinder der Hauptplatine und der Speichervorrichtung können sich auf gegenüberliegenden Seiten des ersten Verbinders der Hauptplatine und der Speichervorrichtung befinden. Bei manchen Beispielen kann ein erster der zwei oder mehr parallelen Massepins parallel zu dem ersten Signalpin positioniert sein. Bei manchen Beispielen kann ein zweiter der zwei oder mehr parallelen Massepins parallel zu dem zweiten Signalpin positioniert sein. Bei manchen Beispielen können die zwei oder mehr parallelen Massepins ein Signal-zu-Masse-Verhältnis von ungefähr 1:N bereitstellen, wobei N größer als 1 ist.
-
5B stellt einen beispielhaften Prozess zum Nutzen einer Verbindung zwischen Vorrichtungen mit einem Massepin und Signalpins dar. In 550 können Signale in einem oder mehreren Signalpins übertragen werden, die zwischen mehreren Vorrichtungen gekoppelt sind. Eine der Vorrichtungen kann ein DIMM beinhalten, und eine andere der Vorrichtungen kann eine Hauptplatine beinhalten, aber es können beliebige elektrische Vorrichtungen verwendet werden, die Signale übertragen und empfangen.
-
In 552 kann ein Massepin mit mehreren Massepinfingern, die parallel zu Signalpins verlaufen, Schutz oder Reduzierung von Nebensprechen zwischen Signalen bereitstellen, die unter Verwendung von Signalpins übertragen werden, die durch die Massepinfinger separiert sind.
-
6 stellt ein System dar. Das System kann hier beschriebene Ausführungsformen verwenden, um Massepinverbindungen zum Verbinden von Vorrichtungen bereitzustellen und ein Signal-zu-Masse-Verhältnis von 1:N bereitzustellen, wobei N 1 oder mehr ist. Das System 600 beinhaltet einen Prozessor 610, der Verarbeitung, Betriebsverwaltung und Ausführung von Anweisungen für das System 600 bereitstellt. Der Prozessor 610 kann einen beliebigen Typ von Mikroprozessor, Zentralverarbeitungseinheit (CPU), Grafikverarbeitungseinheit (GPU), XPU, Verarbeitungskern oder anderer Verarbeitungshardware zum Bereitstellen von Verarbeitung für das System 600 oder eine Kombination von Prozessoren beinhalten. Eine XPU kann eines oder mehrere von Folgenden beinhalten: eine CPU, eine Grafikverarbeitungseinheit (GPU), eine Universal-GPU (GPGPU) und/oder andere Verarbeitungseinheiten (z. B. Beschleuniger oder programmierbare oder Festfunktions-FPGAs). Der Prozessor 610 steuert den Gesamtbetrieb des Systems 600 und kann ein oder mehrere programmierbare Universal- oder Spezialmikroprozessoren, Digitalsignalprozessoren (DSPs), programmierbare Steuerungen, anwendungsspezifische integrierte Schaltungen (ASICs), programmierbare Logikvorrichtungen (PLDs) oder dergleichen oder eine Kombination solcher Vorrichtungen sein oder beinhalten.
-
Bei einem Beispiel beinhaltet das System 600 eine Schnittstelle 612, die mit dem Prozessor 610 gekoppelt ist, die eine Schnittstelle mit höherer Geschwindigkeit oder eine Schnittstelle mit hohem Durchsatz für Systemkomponenten repräsentieren kann, die Verbindungen mit höherer Bandbreite benötigen, wie etwa das Speichersubsystem 620 oder die Grafikschnittstellenkomponenten 640 oder die Beschleuniger 642. Die Schnittstelle 612 repräsentiert eine Schnittstellenschaltung, die eine eigenständige Komponente sein oder auf einem Prozessor-Die integriert sein kann. Falls vorhanden, schließt die Grafikschnittstelle 640 an Grafikkomponenten an, um einem Benutzer des Systems 600 eine visuelle Anzeige bereitzustellen. Bei einem Beispiel kann die Grafikschnittstelle 640 eine High-Definition (HD)-Anzeige ansteuern, die einem Benutzer eine Ausgabe bereitstellt. High-Definition kann sich auf eine Anzeige mit einer Pixeldichte von ungefähr 100 PPI (Pixel pro Zoll) oder mehr beziehen und kann Formate, wie etwa Full-HD (z. B. 1080 p), Retina-Displays, 4K (Ultra-High-Definition oder UHD) oder andere beinhalten. Bei einem Beispiel kann die Anzeige eine Touchscreen-Anzeige beinhalten. Bei einem Beispiel generiert die Grafikschnittstelle 640 eine Anzeige basierend auf Daten, die in dem Speicher 630 gespeichert sind, oder basierend auf Operationen, die durch den Prozessor 610 ausgeführt werden, oder beides. Bei einem Beispiel generiert die Grafikschnittstelle 640 eine Anzeige basierend auf Daten, die in dem Speicher 630 gespeichert sind, oder basierend auf Operationen, die durch den Prozessor 610 ausgeführt werden, oder beides.
-
Die Beschleuniger 642 können eine programmierbare oder Festfunktions-Offload-Engine sein, auf die von einem Prozessor 610 zugegriffen werden kann oder die von diesem verwendet werden kann. Ein Beschleuniger unter den Beschleunigern 642 kann zum Beispiel Komprimierungsfähigkeit (DC-Fähigkeit), Kryptographiedienste, wie etwa Public-Key-Verschlüsselung (PKE), Chiffrierung, Hash-/Authentifizierungsfähigkeiten, Entschlüsselung oder andere Fähigkeiten oder Dienste bereitstellen. Bei einigen Ausführungsformen stellt zusätzlich oder alternativ ein Beschleuniger unter den Beschleunigern 642 Feldauswahlsteuerungsfähigkeiten, wie hier beschrieben, bereit. In einigen Fällen können die Beschleuniger 642 in einen CPU-Socket (z. B. einen Verbinder zu einer Hauptplatine oder Leiterplatte, die eine CPU beinhaltet und eine elektrische Schnittstelle mit der CPU bereitstellt) integriert sein. Die Beschleuniger 642 können zum Beispiel einen Einzel- oder Mehrkernprozessor, eine Grafikverarbeitungseinheit, einen Single- oder Multi-Level-Cache einer logischen Ausführungseinheit, Funktionseinheiten, die zum unabhängigen Ausführen von Programmen oder Threads verwendet werden können, anwendungsspezifische integrierte Schaltungen (ASICs), Neuronalnetzwerkprozessoren (NNPs), programmierbare Steuerlogik und programmierbare Verarbeitungselemente, wie etwa Field Programmable Gate Arrays (FPGAs), beinhalten. Die Beschleuniger 642 können mehrere neuronale Netzwerke, CPUs, Prozessorkerne, Universal-Grafikverarbeitungseinheiten bereitstellen, oder Grafikverarbeitungseinheiten können zur Verwendung durch künstliche Intelligenz (AI)- oder maschinelle Lern (ML)-Modelle verfügbar gemacht werden. Das AI-Modell kann zum Beispiel ein beliebiges oder eine Kombination von Folgenden verwenden oder beinhalten: ein Verstärkungslernschema, eines Q-Lernschema, Deep-Q-Lernen oder Asynchronous Advantage Actor-Critic (A3C), kombinatorisches neuronales Netzwerk, rekurrentes kombinatorisches neuronales Netzwerk oder ein anderes AI- oder ML-Modell. Mehrere neuronale Netze, Prozessorkerne oder Grafikverarbeitungseinheiten können zur Verwendung durch AI- oder ML-Modelle verfügbar gemacht werden.
-
Das Speichersubsystem 620 repräsentiert den Hauptspeicher des Systems 600 und stellt Speicher für Code, der von dem Prozessor 610 ausgeführt werden soll, oder Datenwerte, die beim Ausführen einer Routine verwendet werden sollen, bereit. Das Speichersubsystem 620 kann eine oder mehrere Speichervorrichtungen 630, wie etwa einen Nur-Lese-Speicher (ROM), einen Flash-Speicher, eine oder mehrere Arten von Direktzugriffsspeicher (RAM), wie etwa DRAM oder andere Speichervorrichtungen, oder eine Kombination solcher Vorrichtungen beinhalten. Der Speicher 630 speichert und hostet unter anderem das Betriebssystem (OS) 632, um eine Softwareplattform zur Ausführung von Anweisungen im System 600 bereitzustellen. Zusätzlich können Anwendungen 634 auf der Softwareplattform des OS 632 aus dem Speicher 630 ausgeführt werden. Die Anwendungen 634 repräsentieren Programme, die ihre eigene Betriebslogik zum Durchführen der Ausführung einer oder mehrerer Funktionen aufweisen. Die Prozesse 636 repräsentieren Agenten oder Routinen, die dem OS 632 oder einer oder mehreren Anwendungen 634 oder einer Kombination Hilfsfunktionen bereitstellen. Das OS 632, die Anwendungen 634 und die Prozesse 636 stellen Softwarelogik bereit, um Funktionen für das System 600 bereitzustellen. Bei einem Beispiel beinhaltet das Speichersubsystem 620 eine Speichersteuerung 622, die eine Speichersteuerung zum Generieren und Ausgeben von Befehlen an den Speicher 630 ist. Es versteht sich, dass die Speichersteuerung 622 ein physischer Teil des Prozessors 610 oder ein physischer Teil der Schnittstelle 612 sein könnte. Die Speichersteuerung 622 kann zum Beispiel eine integrierte Speichersteuerung sein, die in einer Schaltung mit dem Prozessor 610 integriert ist.
-
Obwohl nicht speziell veranschaulicht, versteht es sich, dass das System 600 einen oder mehrere Busse oder Bussysteme zwischen Vorrichtungen beinhalten kann, wie etwa einen Speicherbus, einen Grafikbus, Schnittstellenbusse oder andere. Busse oder andere Signalleitungen können Komponenten kommunikativ oder elektrisch miteinander koppeln oder die Komponenten sowohl kommunikativ als auch elektrisch koppeln. Busse können physische Kommunikationsleitungen, Punkt-zu-Punkt-Verbindungen, Brücken, Adapter, Steuerungen oder andere Schaltungsanordnungen oder eine Kombination beinhalten. Busse können zum Beispiel einen Systembus und/oder einen Peripheral Component Interconnect (PCI)-Bus und/oder einen Hyper Transport- oder Industriestandard-Architektur (ISA)-Bus und/oder einen Small Computer System Interface (SCSI)-Bus und/oder einen Universal Serial Bus (USB) oder einen Institute of Electrical and Electronics Engineers (IEEE)-Standard 1394 Bus (Firewire) beinhalten.
-
Bei einem Beispiel beinhaltet das System 600 die Schnittstelle 614, die mit der Schnittstelle 612 gekoppelt werden kann. Bei einem Beispiel repräsentiert die Schnittstelle 614 eine Schnittstellenschaltung, die eigenständige Komponenten und integrierte Schaltungsanordnungen beinhalten kann. Bei einem Beispiel sind mehrere Benutzerschnittstellenkomponenten oder Peripheriekomponenten oder beides mit der Schnittstelle 614 gekoppelt. Die Netzwerkschnittstelle 650 stellt dem System 600 die Fähigkeit bereit, mit entfernten Vorrichtungen (z. B. Servern oder anderen Rechenvorrichtungen) über ein oder mehrere Netzwerke zu kommunizieren. Die Netzwerkschnittstelle 650 kann einen Ethernet-Adapter, drahtlose Verbindungskomponenten, zellulare Netzwerkverbindungskomponenten, USB (Universal Serial Bus) oder andere drahtgebundene oder drahtlose standardbasierte oder proprietäre Schnittstellen beinhalten. Die Netzwerkschnittstelle 650 kann Daten zu einer Vorrichtung, die sich in demselben Datenzentrum oder Rack befindet, oder einer entfernten Vorrichtung übertragen, was das Senden von im Speicher gespeicherten Daten beinhalten kann. Die Netzwerkschnittstelle 650 kann Daten von einer entfernten Vorrichtung empfangen, was Speichern empfangener Daten in dem Speicher beinhalten kann. Verschiedene Ausführungsformen können in Verbindung mit der Netzwerkschnittstelle 650, dem Prozessor 610 und dem Speichersubsystem 620 verwendet werden.
-
Bei einem Beispiel beinhaltet das System 600 eine oder mehrere Eingabe/Ausgabe (E/A)-Schnittstelle(n) 660. Die E/A-Schnittstelle 660 kann eine oder mehrere Schnittstellenkomponenten beinhalten, über die ein Benutzer mit dem System 600 interagiert (z. B. Audioschnittstellen, alphanumerische, taktile/Berührungs- oder andere Schnittstellen). Die Peripherieschnittstelle 670 kann eine beliebige Hardwareschnittstelle beinhalten, die oben nicht speziell erwähnt ist. Peripheriegeräte beziehen sich im Allgemeinen auf Vorrichtungen, die abhängig von dem System 600 verbunden sind. Eine abhängige Verbindung ist eine Verbindung, bei der das System 600 die Softwareplattform oder Hardwareplattform oder beide bereitstellt, auf der die Operation ausgeführt wird und mit der ein Benutzer interagiert.
-
Bei einem Beispiel beinhaltet das System 600 das Speichersubsystem 680, um Daten auf eine nichtflüchtige Weise zu speichern. Bei einem Beispiel können sich in bestimmten Systemimplementierungen mindestens bestimmte Komponenten des Speichers 680 mit Komponenten des Speichersubsystems 620 überlappen. Das Speichersubsystem 680 beinhaltet eine oder mehrere Speichervorrichtungen 684, die ein beliebiges herkömmliches Medium zum Speichern großer Datenmengen auf nichtflüchtige Weise sein können oder beinhalten können, wie etwa eine oder mehrere magnetische, Festkörper- oder optische Platten oder eine Kombination. Der Speicher 684 hält Code oder Anweisungen und Daten 686 in einem persistenten Zustand (z. B. wird der Wert trotz Unterbrechung der Leistungsversorgung des Systems 600 beibehalten). Der Speicher 684 kann allgemein als ein „Speicher“ betrachtet werden, obwohl der Speicher 630 typischerweise der Ausführungs- oder Betriebsspeicher ist, um dem Prozessor 610 Anweisungen bereitzustellen. Während der Speicher 684 nichtflüchtig ist, kann der Speicher 630 flüchtigen Speicher beinhalten (z. B. ist der Wert oder Zustand der Daten unbestimmt, falls die Leistungsversorgung zum System 600 unterbrochen ist). Bei einem Beispiel beinhaltet das Speichersubsystem 680 eine Steuerung 682 zum Bilden einer Schnittstelle mit dem Speicher 684. Bei einem Beispiel ist die Steuerung 682 ein physischer Teil der Schnittstelle 614 oder des Prozessors 610 oder kann Schaltungen oder Logik sowohl im Prozessor 610 als auch in der Schnittstelle 614 beinhalten.
-
Ein flüchtiger Speicher ist ein Speicher, dessen Zustand (und damit die in ihm gespeicherten Daten) unbestimmt ist, wenn die Leistungsversorgung der Vorrichtung unterbrochen ist. Dynamischer flüchtiger Speicher erfordert das Auffrischen der in der Vorrichtung gespeicherten Daten, um den Zustand zu erhalten. Ein Beispiel für dynamischen flüchtigen Speicher beinhaltet DRAM (Dynamic Random Access Memory) oder irgendeine Variante, wie etwa synchrones DRAM (SDRAM). Ein anderes Beispiel für flüchtigen Speicher beinhaltet Cache oder statischen Direktzugriffsspeicher (SRAM). Ein Speichersubsystem, wie hier beschrieben, kann mit einer Reihe von Speichertechnologien kompatibel sein, wie etwa mit DDR3 (Double Data Rate Version 3, Originalversion von JEDEC (Joint Electronic Device Engineering Council) am 27. Juni 2007). DDR4 (DDR Version 4, anfängliche Spezifikation veröffentlicht im September 2012 von JEDEC), DDR4E (DDR Version 4), LPDDR3 (Low Power DDR Version 3, JESD209-3B, August 2013 von JEDEC), LPDDR4) LPDDR Version 4, JESD209-4, ursprünglich veröffentlicht von JEDEC im August 2014), WIO2 (Wide Input/Output Version 2, JESD229-2, ursprünglich veröffentlicht von JEDEC im August 2014, HBM (High Bandwidth Memory, JESD325, ursprünglich veröffentlicht von JEDEC im Oktober 2013, LPDDR5 (gegenwärtig diskutiert von JEDEC), HBM2 (HBM Version 2), gegenwärtig diskutiert von JEDEC, oder andere oder Kombinationen von Speichertechnologien und Technologien, die auf Ableitungen oder Erweiterungen derartiger Spezifikationen basieren. Die JEDEC-Standards sind unter www.jedec.org verfügbar.
-
Eine nichtflüchtige Speicher (NVM)-Vorrichtung ist ein Speicher, dessen Zustand bestimmt ist, selbst die Leistungsversorgung zu der Vorrichtung unterbrochen ist. Bei einigen Ausführungsformen kann die NVM-Vorrichtung eine blockadressierbare Speichervorrichtung umfassen, wie etwa NAND-Technologien oder insbesondere NAND-Flash-Speicher mit mehreren Schwellenpegeln (zum Beispiel Single-Level-Cell („SLC“), Multi-Level-Cell („MLC“), Quad-Level-Cell („QLC“), Tri-Level-Cell („TLC“) oder ein beliebiges anderes NAND). Eine NVM-Vorrichtung kann auch eine byteadressierbare dreidimensionale Write-in-Place-Crosspoint-Speichervorrichtung oder eine andere byteadressierbare Write-in-Place-NVM-Vorrichtung (auch als persistenter Speicher bezeichnet) umfassen, wie etwa Single- oder Multi-Level-Phasenwechselspeicher (PCM) oder Phasenwechselspeicher mit einem Switch (PCMS), Intel® Optane™-Speicher, NVM-Vorrichtungen, die Chalkogenid-Phasenwechselmaterial verwenden (zum Beispiel Chalkogenidglas), resistiven Speicher einschließlich Metalloxidbasis-, Sauerstoffleerstellenbasis- und Conductive Bridge Direktzugriffsspeicher (CB-RAM), Nanodrahtspeicher, ferroelektrischen Direktzugriffsspeicher (FeRAM, FRAM), magnetoresistiven Direktzugriffsspeicher (MRAM), der Memristortechnologie einbezieht, Spin Trans Torque (STT)-MRAM, eine Vorrichtung auf Basis von Spintronik-Magnetübergangsspeichers, eine Vorrichtung auf Basis des Magnettunnelübergangs (MTJ), eine Vorrichtung auf Basis von DW (Domänenwand) und SOT (Spin Orbit Transfer), eine Speichervorrichtung auf Basis von Thyristoren oder eine Kombination beliebiger der obigen oder anderer Speicher.
-
Eine (nicht dargestellte) Leistungsquelle stellt Leistung für die Komponenten des Systems 600 bereit. Insbesondere ist die Leistungsquelle typischerweise an eine oder mehrere Leistungsversorgungen in dem System 600 angeschlossen, um den Komponenten des Systems 600 Leistung bereitzustellen. Bei einem Beispiel beinhaltet die Leistungsversorgung einen AC/DC (Wechselstrom zu Gleichstrom)-Adapter zum Einstecken in eine Wandsteckdose. Solche AC-Leistungsversorgung kann eine Leistungsquelle für erneuerbare Energie sein (z. B. Solarenergie). Bei einem Beispiel beinhaltet die Leistungsquelle eine DC-Leistungsquelle, wie etwa einen externen AC-DC-Wandler. Bei einem Beispiel beinhaltet die Leistungsquelle oder die Leistungsversorgung drahtlose Ladehardware zum Laden über die Nähe zu einem Ladefeld. Bei einem Beispiel kann die Leistungsquelle eine interne Batterie, eine Wechselstromquelle, eine bewegungsbasierte Leistungsversorgung, eine Solarleistungsquelle oder eine Brennstoffzellenquelle beinhalten.
-
Bei einem Beispiel kann das System 600 unter Verwendung von miteinander verbundenen Rechen-Sleds von Prozessoren, Speichern, Speichern, Netzwerkschnittstellen und anderen Komponenten implementiert sein. Es können Hochgeschwindigkeits-Interconnects verwendet werden, wie etwa PCIe, Ethernet oder optische Interconnects (oder eine Kombination davon).
-
7 bildet eine Umgebung 700 ab, die mehrere Rechen-Racks 702 beinhaltet, die jeweils einen Top of Rack (ToR)-Switch 704, einen Pod-Manager 706 und mehrere gepoolte Systemeinschübe beinhalten. Die Umgebung kann hier beschriebene Ausführungsformen verwenden, um Massepinverbindungen zum Verbinden von Vorrichtungen bereitzustellen und ein Signal-zu-Masse-Verhältnis von 1:N bereitzustellen, wobei N 1 oder mehr ist. Im Allgemeinen können die gepoolten Systemeinschübe gepoolte Recheneinschübe und gepoolte Speichereinschübe beinhalten. Optional können die gepoolten Systemeinschübe auch gepoolte Speichereinschübe und gepoolte Eingangs-/Ausgangs (E/A)-Einschübe beinhalten. Bei der veranschaulichten Ausführungsform beinhalten die gepoolten Systemeinschübe einen gepoolten IntelⓇ-XEONⓇ-Rechenemschub 708 und einen gepoolten Intel®-ATOM™-Recheneinschub 710, einen gepoolten Speichereinschub 712, einen gepoolten Speichereinschub 714 und einen gepoolten E/A-Einschub 716 auf. Jeder der gepoolten Systemeinschübe ist über einen Hochgeschwindigkeits-Link 718, wie etwa einen Ethernet-Link und/oder einen optischen Siliciumphotonik (SiPh)-Link, mit dem ToR-Switch 704 verbunden.
-
Mehrere der Rechen-Racks 702 können über ihre ToR-Switches 704 (z. B. mit einem Pod-Level-Switch oder einem Datenzentrum-Switch) miteinander verbunden sein, wie durch Verbindungen mit einem Netzwerk 720 veranschaulicht ist. Bei einigen Ausführungsformen werden Gruppen von Rechen-Racks 702 als separate Pods über (einen oder mehrere) Pod-Manager 706 verwaltet. Bei einigen Ausführungsformen wird ein einziger Pod-Manager verwendet, um alle Racks in dem Pod zu verwalten. Alternativ können verteilte Pod-Manager für Pod-Verwaltungsoperationen verwendet werden.
-
Die Umgebung 700 beinhaltet ferner eine Verwaltungsschnittstelle 722, die zum Verwalten verschiedener Aspekte der Umgebung verwendet wird. Dies beinhaltet das Verwalten der Rack-Konfiguration mit entsprechenden Parametern, die als Rack-Konfigurationsdaten 724 gespeichert sind. Die Umgebung 700 kann für Rechen-Racks verwendet werden.
-
Ausführungsformen können hier in verschiedenen Typen von Rechen- und Networking-Ausrüstung implementiert sein, wie etwa Switches, Router, Racks und Blade-Server, wie etwa jenen, die in einem Datenzentrum und/oder einer Serverfarmumgebung eingesetzt werden. Die in Datenzentren und Serverfarmen verwendeten Server umfassen gereihte Serverkonfigurationen, wie etwa rackbasierte Server oder Blade-Server. Diese Server stehen über verschiedene Netzwerkbereitstellungen miteinander in Kommunikation, wie etwa Partitionierungssätze von Servern in Local Area Networks (LANs) mit geeigneten Switching- und Routingeinrichtungen zwischen den LANs, um ein privates Intranet zu bilden. Cloud-Hosting-Einrichtungen können zum Beispiel typischerweise große Datenzentren mit einer Vielzahl von Servern einsetzen. Ein Blade umfasst eine separate Rechenplattform, die dazu konfiguriert ist, Servertyp-Funktionen durchzuführen, das heißt einen „Server auf einer Karte“. Dementsprechend beinhaltet jedes Blade Komponenten, die bei herkömmlichen Servern üblich sind, einschließlich einer gedruckten Hauptleiterplatte (Hauptplatine), die interne Verdrahtungen (z. B. Busse) zum Koppeln geeigneter integrierter Schaltungen (ICs) bereitstellt, und anderer Komponenten, die auf der Platine montiert sind.
-
Verschiedene Beispiele können unter Verwendung von Hardwareelementen, Softwareelementen oder einer Kombination von beiden implementiert werden. Bei manchen Beispielen können Hardwareelemente Vorrichtungen, Komponenten, Prozessoren, Mikroprozessoren, Schaltungen, Schaltungselemente (z. B. Transistoren, Widerstände, Kondensatoren, Induktivitäten und so weiter), integrierte Schaltungen, ASICs, PLDs, DSPs, FPGAs, Speichereinheiten, Logikgatter, Register, Halbleitervorrichtung, Chips, Mikrochips, Chipsätze und so weiter beinhalten. Bei manchen Beispielen können Softwareelemente Softwarekomponenten, Programme, Anwendungen, Computerprogramme, Anwendungsprogramme, Systemprogramme, Maschinenprogramme, Betriebssystemsoftware, Middleware, Firmware, Softwaremodule, Routinen, Subroutinen, Funktionen, Verfahren, Prozeduren, Softwareschnittstellen, APIs, Befehlssätze, Rechencode, Computercode, Codesegmente, Computercodesegmente, Wörter, Werte, Symbole oder einer beliebigen Kombination davon beinhalten. Das Bestimmen, ob ein Beispiel unter Verwendung von Hardwareelementen und/oder Softwareelementen implementiert wird, kann gemäß einer beliebigen Anzahl von Faktoren variieren, wie etwa einer gewünschten Rechenrate, Leistungspegeln, Wärmetoleranzen, Verarbeitungszyklusbudget, Eingangsdatenraten, Ausgangsdatenraten, Speicherressourcen, Datenbusgeschwindigkeiten und anderen Design- oder Leistungsfähigkeitsbeschränkungen, wie für eine gegebene Implementierung gewünscht. Es wird angemerkt, dass Hardware-, Firmware- und/oder Softwareelemente hier kollektiv oder einzeln als „Modul“, „Logik“ bezeichnet werden können. Ein Prozessor kann eine oder mehrere Kombinationen aus einer Hardwarezustandsmaschine, digitaler Steuerlogik, Zentralverarbeitungseinheit oder beliebigen Hardware-, Firmware- und/oder Softwareelementen sein.
-
Einige Beispiele können unter Verwendung eines oder als ein Produkt oder mindestens ein computerlesbares Medium implementiert werden. Ein computerlesbares Medium kann ein nichttransitorisches Speichermedium zum Speichern von Logik beinhalten. Bei einigen Beispielen kann das nichttransitorische Speichermedium einen oder mehrere Typen computerlesbarer Speichermedien beinhalten, die elektronische Daten speichern können, einschließlich flüchtigen Speichers oder nichtflüchtigen Speichers, austauschbaren oder nicht austauschbaren Speichers, löschbaren oder nicht löschbaren Speichers, beschreibbaren oder wiederbeschreibbaren Speichers und so weiter. Bei einigen Beispielen kann die Logik verschiedene Softwareelemente, wie etwa Softwarekomponenten, Programme, Anwendungen, Computerprogramme, Anwendungsprogramme, Systemprogramme, Maschinenprogramme, Betriebssystemsoftware, Middleware, Firmware, Softwaremodule, Routinen, Subroutinen, Funktionen, Verfahren, Prozeduren, Softwareschnittstellen, API, Anweisungssätze, Rechencode, Computercode, Codesegmente, Computercodesegmente, Wörter, Werte, Symbole oder eine beliebige Kombination davon beinhalten.
-
Gemäß einigen Beispielen kann ein computerlesbares Medium ein nichttransitorisches Speichermedium zum Speichern oder Halten von Anweisungen beinhalten, die, wenn sie von einer Maschine, einer Rechenvorrichtung oder einem System ausgeführt werden, die Maschine, die Rechenvorrichtung oder das System veranlassen, Verfahren und/oder Operationen gemäß den beschriebenen Beispielen durchzuführen. Die Anweisungen können einen beliebigen geeigneten Typ von Code beinhalten, wie etwa Quellcode, kompilierten Code, interpretierten Code, ausführbaren Code, statischen Code, dynamischen Code und dergleichen. Die Anweisungen können gemäß einer vordefinierten Computersprache, Art und Weise oder Syntax implementiert werden, um eine Maschine, eine Rechenvorrichtung oder ein System anzuweisen, eine gewisse Funktion durchzuführen. Die Anweisungen können unter Verwendung einer beliebigen geeigneten höheren, niedrigeren, objektorientierten, visuellen, kompilierten und/oder interpretierten Programmiersprache implementiert werden.
-
Ein oder mehrere Aspekte mindestens eines Beispiels können durch repräsentative Anweisungen implementiert werden, die auf mindestens einem maschinenlesbaren Medium gespeichert sind, das verschiedene Logik innerhalb des Prozessors repräsentiert, die, wenn sie von einer Maschine, einer Rechenvorrichtung oder einem System gelesen werden, bewirken, dass die Maschine, die Rechenvorrichtung oder das System Logik zum Durchführen der hier beschriebenen Techniken herstellt. Derartige Repräsentationen, als „IP-Kerne“ bekannt, können auf einem dinghaften maschinenlesbaren Medium gespeichert sein und an verschiedene Kunden oder Herstellungseinrichtungen geliefert werden, um in die Fabrikationsmaschinen, die die Logik oder den Prozessor tatsächlich herstellen, geladen zu werden.
-
Das Vorkommen der Formulierung „ein Beispiel“ betrifft nicht notwendigerweise immer dasselbe Beispiel oder dieselbe Ausführungsform. Ein beliebiger hier beschriebener Aspekt kann mit einem beliebigen anderen hier beschriebenen Aspekt oder ähnlichen Aspekt kombiniert werden, unabhängig davon, ob die Aspekte mit Bezug auf dieselbe Figur oder dasselbe Element beschrieben sind. Eine Unterteilung, Weglassung oder Einschließung von in den begleitenden Figuren abgebildeten Blockfunktionen bedeutet nicht, dass die Hardwarekomponenten, Schaltungen, Software und/oder Elemente zum Implementieren dieser Funktionen notwendigerweise in Ausführungsformen unterteilt, weggelassen oder eingeschlossen sein müssen.
-
Einige Beispiele können unter Verwendung des Ausdrucks „gekoppelt“ und „verbunden“ mit ihren jeweiligen Ableitungen beschrieben sein. Diese Begriffe sind nicht notwendigerweise als Synonyme füreinander zu betrachten. Zum Beispiel können Beschreibungen unter Verwendung der Begriffe „verbunden“ und/oder „gekoppelt“ angeben, dass zwei oder mehr Elemente in direktem physischem oder elektrischem Kontakt miteinander stehen. Der Begriff „gekoppelt“ kann jedoch auch bedeuten, dass zwei oder mehr Elemente nicht in direktem Kontakt miteinander stehen, aber dennoch miteinander zusammenwirken oder interagieren.
-
Die Begriffe „erster“, „zweiter“ und dergleichen bezeichnen hier keine Reihenfolge, Menge oder Wichtigkeit, sondern werden verwendet, um ein Element von einem anderen zu unterscheiden. Die Begriffe „ein“, „eine“ und „eines“ bezeichnen hier keine Mengenbegrenzung, sondern bezeichnen vielmehr das Vorhandensein mindestens eines der genannten Elemente. Der Begriff „aktivgesetzt“, der hier in Bezug auf ein Signal verwendet wird, bezeichnet einen Zustand des Signals, in dem das Signal aktiv ist, und der erreicht werden kann, indem ein beliebiger Logikpegel, entweder logisch 0 oder logisch 1, auf das Signal angewendet wird. Die Begriffe „folgen“ oder „nach“ können sich auf unmittelbares Folgen oder nach einem anderen Ereignis oder Ereignissen unmittelbares Folgen beziehen. Andere Abfolgen von Schritten können auch gemäß alternativen Ausführungsformen durchgeführt werden. Darüber hinaus können abhängig von den jeweiligen Anwendungen zusätzliche Schritte hinzugefügt oder entfernt werden. Es kann eine beliebige Kombination von Änderungen verwendet werden, und Durchschnittsfachleute würden anhand dieser Offenbarung die vielen Variationen, Modifikationen und alternativen Ausführungsformen davon verstehen.
-
Disjunktive Ausdrucksweise, wie etwa die Formulierung „mindestens eines von X, Y oder Z“, wird, sofern nicht spezifisch anders angegeben, in dem Kontext verstanden, wie er allgemein verwendet wird, um darzustellen, dass ein Element, ein Begriff usw. entweder X, Y oder Z oder eine beliebige Kombination davon (z. B. X, Y und/oder Z) sein kann. Somit soll und sollte eine solche disjunktive Ausdrucksweise im Allgemeinen nicht implizieren, dass bestimmte Ausführungsformen erfordern, dass jeweils mindestens eines von X, mindestens eines von Y oder mindestens eines von Z vorhanden ist. Zusätzlich sollte konjunktive Sprache, wie etwa die Formulierung „mindestens eines von X, Y und Z“, sofern nicht spezifisch anders angegeben, auch als X, Y, Z oder eine beliebige Kombination davon verstanden werden, einschließlich „X, Y und/oder Z“.
-
Veranschaulichende Beispiele für die hier offenbarten Vorrichtungen, Systeme und Verfahren sind nachstehend bereitgestellt. Eine Ausführungsform der Vorrichtungen, Systeme und Verfahren kann eines oder mehrere und eine beliebige Kombination der nachstehend unten beschriebenen Beispiele beinhalten.
-
Flussdiagramme wie hier dargestellt liefern Beispiele für Abfolgen verschiedener Prozessaktionen. Die Flussdiagramme können Operationen, die von einer Software- oder Firmware-Routine auszuführen sind, ebenso angeben wie physische Operationen. Bei einigen Ausführungsformen kann ein Flussdiagramm den Zustand einer Zustandsmaschine (Finite State Machine, FSM) veranschaulichen, der in Hardware und/oder Software implementiert sein kann. Obgleich in einer speziellen Abfolge oder Reihenfolge gezeigt, kann die Reihenfolge der Aktionen, sofern nicht anders spezifiziert, modifiziert sein. Dementsprechend sollten die veranschaulichten Ausführungsformen nur als ein Beispiel verstanden werden, und der Prozess kann in einer anderen Reihenfolge durchgeführt werden, und manche Aktionen können parallel durchgeführt werden. Außerdem können eine oder mehrere Aktionen bei verschiedenen Ausführungsformen weggelassen werden; es sind also nicht alle Aktionen in jeder Ausführungsform erforderlich. Andere Prozessflüsse sind möglich.
-
Verschiedene hier beschriebene Komponenten können ein Mittel zum Durchführen der beschriebenen Operationen oder Funktionen sein. Jede hier beschriebene Komponente beinhaltet Software, Hardware oder eine Kombination von diesen. Die Komponenten können als Softwaremodule, Hardwaremodule, Spezialhardware (z. B. anwendungsspezifische Hardware, anwendungsspezifische integrierte Schaltungen (ASICs), Digitalsignalprozessoren (DSPs) usw.), eingebettete Steuerungen, festverdrahtete Schaltungsanordnungen und so weiter, implementiert sein.
-
Beispiel 1 beinhaltet eine Einrichtung, die Folgendes umfasst: einen ersten Signalpin; einen zweiten Signalpin; und mehrere parallele Massepins, die zwischen dem ersten und dem zweiten Signalpin positioniert sind, wobei die mehreren parallelen Massepins mit einem einzelnen Pinverbinder, der mit einer ersten Vorrichtung gekoppelt ist, und einem einzelnen Pinverbinder, der mit einer zweiten Vorrichtung gekoppelt ist, gekoppelt sind, wobei ein erstes Bein der mehreren parallelen Massepins parallel zu einem Abschnitt des ersten Signalpins positioniert ist und wobei ein zweites Bein der mehreren parallelen Massepins parallel zu einem Abschnitt des zweiten Signalpins positioniert ist.
-
Beispiel 2 beinhaltet ein oder mehrere Beispiele, wobei der einzelne Pinverbinder, der mit einer ersten Vorrichtung gekoppelt ist, einen oberflächenmontierten (SMT) Verbinder einer Hauptplatine umfasst.
-
Beispiel 3 beinhaltet ein oder mehrere Beispiele, wobei der einzelne Pinverbinder, der mit einer zweiten Vorrichtung gekoppelt ist, einen Goldfingerverbinder in einem Dual-In-Line-Speichermodul (DIMM) umfasst.
-
Beispiel 4 beinhaltet ein oder mehrere Beispiele, wobei die mehreren parallelen Massepins ein 1:N-Signal-zu-Masse-Verhältnis für Signale bereitstellen, die über mindestens einen Abschnitt des ersten und zweiten Signalpins übertragen werden, wobei N größer als 1 ist.
-
Beispiel 5 beinhaltet ein oder mehrere Beispiele, wobei die mehreren parallelen Massepins zwei oder mehr Massepins umfassen, die parallel zueinander ausgerichtet sind.
-
Beispiel 6 beinhaltet ein oder mehrere Beispiele, wobei die mehreren parallelen Massepins eines oder mehrere von Folgenden umfassen: Kupfer, Bronze oder eine Legierung.
-
Beispiel 7 beinhaltet ein oder mehrere Beispiele, wobei: der erste Signalpin mit einem ersten Pinverbinder, der mit der ersten Vorrichtung gekoppelt ist, und einem ersten Pinverbinder, der mit der zweiten Vorrichtung gekoppelt ist, gekoppelt ist und der zweite Signalpin mit einem zweiten Pinverbinder, der mit der ersten Vorrichtung gekoppelt ist, und einem zweiten Pinverbinder, der mit der zweiten Vorrichtung gekoppelt ist, gekoppelt ist.
-
Beispiel 8 beinhaltet ein oder mehrere Beispiele, wobei eine Anordnung von Pinverbindern konsistent mit der Double Data Rate Version 5 (DDR5) ist.
-
Beispiel 9 beinhaltet ein oder mehrere Beispiele und beinhaltet die erste Vorrichtung und die zweite Vorrichtung, wobei die erste Vorrichtung eine Hauptplatine umfasst und die zweite Vorrichtung ein Dual-In-Line-Speichermodul (DIMM) umfasst und eines oder mehrere von Folgenden umfasst: Zentralverarbeitungseinheit (CPU), XPU, Grafikverarbeitungseinheit (GPU), die mit der Hauptplatine und dazu gekoppelt sind, Daten unter Verwendung des ersten Signalpins und des zweiten Signalpins zu empfangen.
-
Beispiel 10 beinhaltet ein oder mehrere Beispiele und beinhaltet ein Verfahren, das Folgendes beinhaltet: Übertragen eines ersten Signals über einen ersten Signalpin von einer ersten Vorrichtung zu einer zweiten Vorrichtung; Übertragen eines zweiten Signals über einen zweiten Signalpin von der ersten Vorrichtung zu der zweiten Vorrichtung; und Bereitstellen einer Reduzierung von Nahnebensprechen und Fernnebensprechen zwischen dem ersten und dem zweiten Signal unter Verwendung eines Massepins mit mehreren parallelen Massepins, die mit einem einzelnen Pin mit der ersten Vorrichtung verbunden sind und mit einem zweiten einzelnen Pin mit der zweiten Vorrichtung verbunden sind.
-
Beispiel 11 beinhaltet ein oder mehrere Beispiele, wobei der erste Signalpin mit einem oberflächenmontierten (SMT) Verbinder einer Hauptplatine und einem Goldfingerverbinder in einem Dual-In-Line-Speichermodul (DIMM) gekoppelt ist und der zweite Signalpin mit einem zweiten SMT-Verbinder einer Hauptplatine und einem zweiten Goldfingerverbinder in einem DIMM gekoppelt ist.
-
Beispiel 12 beinhaltet ein oder mehrere Beispiele, wobei eine Anordnung von SMT-Verbindern und Goldfingerverbindern konsistent mit der Double Data Rate Version 5 (DDR5) ist.
-
Beispiel 13 beinhaltet ein oder mehrere Beispiele, wobei die mehreren parallelen Massepins ein 1:N-Signal-zu-Masse-Verhältnis für Signale bereitstellen, die über mindestens einen Abschnitt des ersten und zweiten Signalpins übertragen werden, wobei N größer als 1 ist.
-
Beispiel 14 beinhaltet ein oder mehrere Beispiele, wobei die mehreren parallelen Massepins zwei oder mehr Massepins umfassen, die parallel zueinander ausgerichtet sind.
-
Beispiel 15 beinhaltet ein oder mehrere Beispiele, wobei die mehreren parallelen Massepins eines oder mehrere von Folgenden umfassen: Kupfer, Bronze oder eine Legierung.
-
Beispiel 16 beinhaltet ein oder mehrere Beispiele, wobei die erste Vorrichtung eine Hauptplatine umfasst und die zweite Vorrichtung ein Dual-In-Line-Speichermodul (DIMM) umfasst und eines oder mehrere von Folgenden umfasst:
- Zentralverarbeitungseinheit (CPU), XPU, Grafikverarbeitungseinheit (GPU), die mit der Hauptplatine und dazu gekoppelt sind, Daten unter Verwendung des ersten Signalpins und des zweiten Signalpins zu empfangen.
-
Beispiel 17 beinhaltet ein oder mehrere Beispiele und beinhaltet ein System, das Folgendes umfasst: eine erste Vorrichtung, die eine Hauptplatine umfasst; eine zweite Vorrichtung, die ein Dual-In-Line-Speichermodul (DIMM) umfasst; einen ersten Signalpin; einen zweiten Signalpin; und mehrere parallele Massepins, die zwischen dem ersten und dem zweiten Signalpin positioniert sind, wobei die mehreren parallelen Massepins mit einem einzelnen Pinverbinder, der mit der ersten Vorrichtung gekoppelt ist, und einem einzelnen Pinverbinder, der mit der zweiten Vorrichtung gekoppelt ist, gekoppelt sind, wobei ein erstes Bein der mehreren parallelen Massepins parallel zu einem Abschnitt des ersten Signalpins positioniert ist und wobei ein zweites Bein der mehreren parallelen Massepins parallel zu einem Abschnitt des zweiten Signalpins positioniert ist.
-
Beispiel 18 beinhaltet ein oder mehrere Beispiele, wobei eine Anordnung von Pinverbindern konsistent mit der Double Data Rate Version 5 (DDR5) ist.
-
Beispiel 19 beinhaltet ein oder mehrere Beispiele, wobei die mehreren parallelen Massepins zwei oder mehr Massepins umfassen, die parallel zueinander ausgerichtet sind.
-
Beispiel 20 beinhaltet ein oder mehrere Beispiele, wobei die mehreren parallelen Massepins ein 1:N-Signal-zu-Masse-Verhältnis für Signale bereitstellen, die über mindestens einen Abschnitt des ersten und zweiten Signalpins übertragen werden, wobei N größer als 1 ist.