DE102019107002A1 - REDUCTION OF COUPLING AND PERFORMANCE NOISE AT A PAM-4 I / O INTERFACE - Google Patents
REDUCTION OF COUPLING AND PERFORMANCE NOISE AT A PAM-4 I / O INTERFACE Download PDFInfo
- Publication number
- DE102019107002A1 DE102019107002A1 DE102019107002.3A DE102019107002A DE102019107002A1 DE 102019107002 A1 DE102019107002 A1 DE 102019107002A1 DE 102019107002 A DE102019107002 A DE 102019107002A DE 102019107002 A1 DE102019107002 A1 DE 102019107002A1
- Authority
- DE
- Germany
- Prior art keywords
- level
- bits
- symbol
- tri
- data bus
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
- G06F13/4072—Drivers or receivers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Dc Digital Transmission (AREA)
Abstract
Verfahren zum Betreiben eines seriellen Datenbusses teilen eine Reihe von Datenbits in Sequenzen von einem oder mehreren Bits auf und kodieren die Sequenzen als N-Niveau-Symbole, welche dann als mehrere diskrete Spannungsniveaus übertragen werden. Diese Verfahren können zur Übertragung über serielle Datenleitungen eingesetzt werden, um eine Bandbreite zu verbessern und ein Übersprechen und andere Quellen von Rauschen zu verringern.Methods of operating a serial data bus divide a series of data bits into sequences of one or more bits and encode the sequences as N-level symbols, which are then transmitted as multiple discrete voltage levels. These techniques can be used for transmission over serial data lines to improve bandwidth and reduce crosstalk and other sources of noise.
Description
HINTERGRUNDBACKGROUND
Moderne Systeme mit einem hohen Durchsatz verwenden mehrere hochbandige Ein-/Ausgabeschnittstellen, um ein Signalisierungsnetzwerk zwischen Recheneinheiten, Speichereinheiten und Speichervorrichtungen zu bilden. So verbindet beispielsweise Peripheral Component Interconnect Express (PCI-E) mehrere Peripheriegeräte mit Zentraleinheiten (CPUs) und Grafikprozessoren (GPUs). Diese Schnittstellen können mehrere serielle Datenbusse umfassen, die mit hoher Frequenz arbeiten.High-throughput modern systems use multiple high-bandwidth I / O interfaces to form a signaling network between arithmetic units, storage units, and storage devices. For example, Peripheral Component Interconnect Express (PCI-E) connects multiple peripherals with central processing units (CPUs) and graphics processors (GPUs). These interfaces may include multiple serial data buses operating at high frequency.
Die Pulsamplitudenmodulation (PAM) kann auf einem mehrspurigen seriellen Datenbus verwendet werden, um mehrere Datenbits gleichzeitig zu übertragen, indem die Daten als unterschiedliche Spannungspegel bzw. Spannungsniveaus kodiert werden. Hier bezeichnet sich „Spur“ („lane“) eine einzelne Leitung eines seriellen Datenbusses. Ein „Datenburst“ bzw. „Datenblock“ bezieht sich auf Bits, die auf den Datenspuren eines seriellen Datenbusses in demselben Bustaktintervall, d.h. parallel, platziert sind.Pulse amplitude modulation (PAM) can be used on a multi-lane serial data bus to transmit multiple bits of data simultaneously by encoding the data as different voltage levels. Here, "lane" refers to a single line of a serial data bus. A "data burst" refers to bits that appear on the data tracks of a serial data bus in the same bus clock interval, i. parallel, are placed.
Ein Beispiel für eine PAM-Kommunikation ist PAM-4. Während jedes Bustaktintervalls kodiert PAM-4 zwei Datenbits (00, 01, 10, 11) auf jeder Datenspur eines seriellen Datenbusses als eines von vier verschiedenen Spannungsniveaus (Symbolen). Da in jedem Bustaktintervall auf jeder Datenspur zwei Bits kodiert werden, ermöglicht PAM-4 idealerweise die doppelte Bandbreite im Vergleich zur herkömmlichen Zwei-Niveau-Signalisierung bzw. Signalisierung mit einem von zwei Niveaus (z.B. PAM-2) auf seriellen Datenbussen, die mit vergleichbaren Bustaktfrequenzen arbeiten. PAM-4-Symbole verwenden vier verschiedene Spannungspegel bzw. Spannungsniveaus, so dass der Unterschied der Symbolwerte bezüglich der Spannungsniveaus in PAM-4 im Vergleich zu PAM-2 geringer ist. Dies macht die PAM-4-Kommunikation anfälliger für Störungen, wie Kopplungsrauschen zwischen Datenspuren auf einem seriellen Datenbus und Stromversorgungsrauschen, was das Signal-Rausch-Verhältnis (SNR) verringert.An example of a PAM communication is PAM-4. During each bus clock interval, PAM-4 encodes two bits of data (00, 01, 10, 11) on each data bus of a serial data bus as one of four different voltage levels (symbols). Since two bits are encoded on each data track in each bus clock interval, PAM-4 ideally allows twice the bandwidth of conventional two-level signaling on one of two levels (eg, PAM-2) on serial data buses Bus clock frequencies work. PAM-4 symbols use four different voltage levels so that the difference in symbol values with respect to the voltage levels in PAM-4 is lower compared to PAM-2. This makes PAM-4 communication more susceptible to disturbances such as coupling noise between data tracks on a serial data bus and power supply noise, which reduces the signal-to-noise ratio (SNR).
Ein Mechanismus zur Minderung dieser Rauscheffekte ist die Verwendung der Data Bus Inversion (DBI). Für einen gegebenen Datenburst bzw. Datenblock reduziert die DBI den Gesamtumfang der Spannungsniveauübergänge über die Datenspuren eines seriellen Datenbusses um bis zu der Hälfte, indem die Polarität der Bits in jedem Datenblock auf dem seriellen Datenbus intelligent eingestellt wird. Die DBI benötigt ein zusätzliches Metadatenbit pro Datenblock, um die Einstellung der Datenblock-Polarität (nicht invertierter Datenblock oder invertierter Datenblock) an den Empfänger zu übertragen. Dieses Metadatenbit wird oft auf einer zusätzlichen Leitung übertragen, die von den Datenspuren (jeweils auch eine Leitung, typischerweise) des seriellen Datenbusses getrennt ist.One mechanism for reducing these noise effects is the use of Data Bus Inversion (DBI). For a given data burst, the DBI reduces the total amount of voltage level transitions across the serial data bus data tracks by up to half by intelligently setting the polarity of the bits in each data block on the serial data bus. The DBI requires one additional metadata bit per data block to transmit the data block polarity setting (non-inverted data block or inverted data block) to the receiver. This metadata bit is often transmitted on an additional line separate from the data lanes (also one line, typically) of the serial data bus.
Viele serielle Datenbusse bestehen nur aus einer einzigen Datenspur zwischen Sender und Empfänger. Das Hinzufügen einer zusätzlichen Metadatenleitung kann somit zu einem bis zu 100%igen Overhead bei der Anzahl der für den seriellen Datenbus benötigten Leitungen führen.Many serial data buses consist of only one data track between sender and receiver. The addition of an additional metadata line can thus result in an up to 100% overhead in the number of lines required for the serial data bus.
Figurenlistelist of figures
Um die Diskussion über ein bestimmtes Element oder einen bestimmten Vorgang leicht zu identifizieren, beziehen sich die höchstwertigste(n) Ziffer(n) in einem Bezugszeichen auf die Figur, in der dieses Element zum ersten Mal eingeführt wird.
-
1 stellt einDatenkommunikationssystem 100 gemäß einer Ausführungsform dar. -
2 stellt eine Ausführungsform eines PAM-4-Senders 200 dar. -
3 stellt eine Ausführungsform einerSpannungswellenform 300 einer konventionellen PAM-4-Datenspur dar. -
4 stellt einen PAM-433-Encoder 400 gemäß einer Ausführungsform dar. -
5 stellt eine Ausführungsform einerSpannungswellenform 500 einer PAM-433 -Datenspur dar. -
6 stellt eine Ausführungsform einer Datenspur-Spannungswellenform 600 dar. -
7 stellt eine Ausführungsform einer Datenspur-Spannungswellenform 700 dar. -
8 stellt eine Ausführungsform einer Datenspur-Spannungswellenform 800 dar. -
9 stellt eine Ausführungsform einer Datenspur-Spannungswellenform 900 dar. -
10 stellt eine Ausführungsform einer PAM-433 -Routine 1000 dar. -
11 stellt eine Ausführungsform einer PAM-N-Routine 1100 dar. -
12 stellt eine Ausführungsform einer PAM-4433 -Kodierung 1200 dar. -
13 stellt eine Ausführungsform einer PAM-4433 -Routine 1300 dar. -
14 stellt eine Ausführungsform einer variablen PAM-433 -Kodierung 1400 dar. -
15 stellt eine Ausführungsform einer variablen PAM-433 -Routine 1500 dar. -
16 ist ein Blockdiagramm einesComputersystems 1600 mit einer GPU, in der Aspekte der Erfindung ausgestaltet sein oder ausgeführt werden können.
-
1 represents adata communication system 100 according to an embodiment. -
2 illustrates an embodiment of a PAM-4transmitter 200 represents. -
3 Figure 1 illustrates one embodiment of a voltage waveform300 a conventional PAM-4 data track. -
4 FIG. 4 illustrates a PAM-433encoder 400 according to one embodiment. -
5 Figure 1 illustrates one embodiment of a voltage waveform500 a PAM433 Data trace. -
6 FIG. 12 illustrates one embodiment of a data trace voltage waveform. FIG600 represents. -
7 FIG. 12 illustrates one embodiment of a data trace voltage waveform. FIG700 represents. -
8th FIG. 12 illustrates one embodiment of a data trace voltage waveform. FIG800 represents. -
9 FIG. 12 illustrates one embodiment of a data trace voltage waveform. FIG900 represents. -
10 represents an embodiment of a PAM433 -Routine 1000 represents. -
11 FIG. 5 illustrates one embodiment of a PAM-N routine. FIG1100 represents. -
12 represents an embodiment of a PAM4433 -encoding 1200 represents. -
13 represents an embodiment of a PAM4433 -Routine 1300 represents. -
14 represents an embodiment of a variable PAM433 -encoding 1400 represents. -
15 represents an embodiment of a variable PAM433 -Routine 1500 represents. -
16 is a block diagram of acomputer system 1600 with a GPU in which aspects of the invention may be embodied or practiced.
DETAILLIERTE BESCHREIBUNGDETAILED DESCRIPTION
Unter Bezugnahme auf
Der Datenprozessor
Der Datenprozessor
Dies ist eine vereinfachte Darstellung. In der Praxis gibt es typischerweise Encoder und Decoder an beiden Enden des Speicherbusses
Wenn beispielsweise die zwei Bits der in das Symbol zu kodierenden Daten (1,1) sind, erzeugen die Ausgänge des Senders
Der Symbolwert auf einer Datenspur entspricht somit dem aktuellen Stromverbrauch dieser Datenspur während eines Datenblocks. Daher können den Symbolwerten Gewichte zugeordnet werden, die ihre aktuellen Verbrauchskosten widerspiegeln. So kann beispielsweise dem Symbol für das Bitpaar (1,1) ein Gewicht von 0 zugeordnet werden; dem Symbol für das Bitpaar (1,0) kann ein Gewicht von 1 zugeordnet werden; dem Symbol für das Bitpaar (0,1) kann ein Gewicht von 2 zugeordnet werden; und dem Symbol für das Bitpaar (0,0) kann ein Gewicht von 3 zugeordnet werden.The symbol value on a data track thus corresponds to the current power consumption of this data track during a data block. Therefore, the symbol values can be assigned weights that reflect their current consumption costs. For example, the symbol for the bit pair (1,1) can be assigned a weight of 0; the symbol for the bit pair (1,0) can be assigned a weight of 1; the symbol for the bit pair (0,1) can be assigned a weight of 2; and the symbol for the bit pair (0,0) can be assigned a weight of 3.
In diesem Beispiel kann einem Datenblock auf einem achtspurigen seriellen Datenbus mit PAM-4-Kodierung ein Gesamtgewicht im Bereich von 0 bis 24 zugeordnet werden, was einem Stromverbrauchsbereich von z.B. 0 bis 120 mA entspricht. Das Gesamtgewicht für den Datenblock wäre 0, wenn alle Symbole im Datenblock jeweils das Bitpaar (1,1) kodierten, und das Gesamtgewicht für den Datenblock wäre 24, wenn alle Symbole im Datenblock jeweils das Bitpaar (
Unter Bezugnahme auf
Die Bezeichnung nΔV bezieht sich auf eine Spannungsänderung von n-Deltas gegenüber der Basisspannung Vb auf einer Datenspur eines seriellen Datenbusses zwischen den Taktintervallen. Unter Bezugnahme zurück auf
Höhere Spannungsdeltas erzeugen mehr Rauschen, weil sie zu höheren Stromschwankungen in der Datenspur führen. So können in
Eine Logiktabelle für einen PAM-433-Encoder 400 bei einer Ausführungsform ist in
Der PAM-433-Encoder 400 führt zu einer 33%igen Reduzierung des Worst-Case-Spannungsniveauschaltens auf der Datenleitung gegenüber herkömmlichen PAM-4-Encodern, ohne dass Metadaten übertragen werden müssen. Der PAM-433-Encoder 400 teilt eine Folge von Bits, die auf der Datenspur zu übertragen sind, in Folgen von fünf Datenbits auf: Die ersten beiden Bits von jeweils fünf Bits werden in ein Symbol mit vier möglichen Spannungsniveaus kodiert, und die letzten drei Bits der fünf Bits werden in zwei Symbole mit jeweils drei möglichen Spannungsniveaus kodiert.The PAM 433
Im Allgemeinen können die oben genannten Mechanismen auf PAM-N (Symbole, die N mögliche diskrete Spannungsniveaus verwenden) angewendet werden. So kann beispielsweise ein PAM-866-Schema bei der ersten Übertragung ein 3-Bit-Datensymbol und bei den folgenden beiden Übertragungen ein 5-Bit-Datensymbol übertragen (2,67 Bits pro Übertragung, 11,1% Overhead). PAM-866 kann das maximale Spannungsschalten von 7ΔV (PAM-8) auf 5ΔV reduzieren (28,5% Reduktion). Darüber hinaus können die Mechanismen auf andere beliebige Kombinationen von Datensymbolen (z.B. PAM-WXYZ) ausgedehnt werden, um eine höhere Zuverlässigkeit durch die Nutzung ähnlicher Mechanismen wie PAM-433 zu erreichen.In general, the above mechanisms can be applied to PAM-N (symbols that use N possible discrete voltage levels). For example, a PAM-866 scheme can transmit a 3-bit data symbol at the first transmission and a 5-bit data symbol at the following two transmissions (2.67 bits per transmission, 11.1% overhead). PAM-866 can reduce the maximum voltage switching from 7ΔV (PAM-8) to 5ΔV (28.5% reduction). In addition, the mechanisms can be extended to other arbitrary combinations of data symbols (e.g., PAM-WXYZ) to achieve higher reliability through the use of similar mechanisms as PAM-433.
Die
Für die in
Für die in
Unter Bezugnahme auf
Bei einigen Ausführungsformen umfassen die beiden Drei-Niveau-Symbole ein erstes Drei-Niveau-Symbol und ein zweites Drei-Niveau-Symbol. Die PAM-
Unter Bezugnahme auf
Unter Bezugnahme auf
Unter Bezugnahme auf
Unter Bezugnahme auf
Unter Bezugnahme auf
Wie dargestellt ist, verbindet der Systemdatenbus
Wie ebenfalls dargestellt ist, beinhaltet der Systemspeicher
Das Grafikverarbeitungssystem
Die GPU
Die GPU
Die GPU
Der On-Chip-GPU-Speicher
Als Beispiel kann die GPU-Programmierung
Der lokale Speicher
Die Anzeigevorrichtungen
Die oben beschriebenen spezifischen Spannungen, Stromstärken und andere Details dienen nur zur Veranschaulichung. Die Erfindung kann mit einer Vielzahl von spezifischen Spannungsniveaus, Strömen, Widerständen usw. ausgeführt werden. Und während die Erfindung vorstehend im Zusammenhang mit z.B. einem Prozessor beschrieben wurde, der Daten an einen Speicher überträgt, können die hier beschriebenen Signalisierungstechniken, wie PAM-
Die hierin verwendeten Begriffe sollten ihrer gewöhnlichen Bedeutung nach dem jeweiligen Stand der Technik oder der Bedeutung, die durch ihre Verwendung im Kontext angezeigt ist, entsprechen. Aber wenn eine ausdrückliche Definition bereitgestellt ist, gilt diese Bedeutung.The terms used herein should be in their ordinary meaning according to the current state of the art or the meaning indicated by their use in context. But if an explicit definition is provided, that meaning applies.
„Logik“ bezieht sich hier auf Speicherschaltungen von Maschinen, nichtflüchtige maschinenlesbare Medien und/oder Schaltungen, die in ihrer Material- und/oder Materialenergiekonfiguration Steuer- und/oder Verfahrenssignale und/oder Einstellungen und Werte (wie Widerstand, Impedanz, Kapazität, Induktivität, Strom/Spannungswerte usw.) umfassen, die eingesetzt werden können, um den Betrieb einer Vorrichtung zu beeinflussen. Elektronische Schaltungen wie Steuerungen, feldprogrammierbare Gate-Arrays, Prozessoren und Speicher (sowohl flüchtige als auch nichtflüchtige), welche durch einen Prozessor ausführbare Anweisungen umfassen, sind Beispiele für eine Logik. Die Logik schließt insbesondere reine Signale oder Software an sich aus (schließt jedoch Maschinenspeicher, die Software umfassen und dadurch Konfigurationen aus Materie ausbilden, nicht aus)."Logic" herein refers to memory circuits of machines, non-transitory machine-readable media, and / or circuits having in their material and / or material energy configuration control and / or process signals and / or settings and values (such as resistance, impedance, capacitance, inductance, Current / voltage values, etc.) that can be used to affect the operation of a device. Electronic circuits such as controllers, field programmable gate arrays, processors and memories (both volatile and non-volatile) that include processor executable instructions are examples of logic. In particular, the logic does not exclude pure signals or software (but does not exclude machine memory that includes software and thereby form configurations of matter).
Verschiedene hier beschriebene logische Funktionsoperationen können in einer Logik implementiert werden, auf die mit einem Substantiv oder einem Substantivausdruck Bezug genommen wird, was die genannte Operation oder Funktion widerspiegelt. So kann beispielsweise eine Assoziationsoperation von einem „Assoziator“ oder „Korrelator“ ausgeführt werden. Ebenso kann ein Schalten durch einen „Schalter“ und ein Auswählen durch einen „Selektor“ erfolgen usw..Various logical function operations described herein may be implemented in a logic referenced by a noun or noun term, which reflects the stated operation or function. For example, an association operation may be performed by an "associator" or "correlator." Similarly, switching through a "Switch" and a selection by a "selector" done etc ..
Dem Fachmann ist bekannt, dass die Logik über eine oder mehrere Vorrichtungen oder Komponenten verteilt sein kann und/oder aus Kombinationen von Speichern, Medien, Verarbeitungsschaltungen und Controllern, anderen Schaltungen usw. bestehen kann. Daher kann die Logik im Interesse der Klarheit und Korrektheit nicht immer deutlich in Zeichnungen von Geräten und Systemen dargestellt werden, obwohl sie darin inhärent vorhanden ist. Die hier beschriebenen Techniken und Verfahren können über eine Logik implementiert werden, die in einem oder mehreren Rechengeräten verteilt ist. Die jeweilige Verteilung und Wahl der Logik hängt von der Implementierung ab.It will be appreciated by those skilled in the art that the logic may be distributed over one or more devices or components and / or may consist of combinations of memories, media, processing circuitry and controllers, other circuitry, and so on. Therefore, for the sake of clarity and correctness, the logic may not always be clearly shown in drawings of devices and systems, although it is inherently present therein. The techniques and methods described herein may be implemented via logic distributed in one or more computing devices. The particular distribution and choice of logic depends on the implementation.
In dieser Offenbarung können verschiedene Einheiten (die unterschiedlich als „Einheiten“, „Schaltkreise“, andere Komponenten usw. bezeichnet werden können) als „konfiguriert“ beschrieben oder beansprucht werden, um eine oder mehrere Aufgaben oder Operationen auszuführen. Diese Formulierung - [Gebilde], welches konfiguriert ist, [um eine oder mehrere Aufgaben auszuführen] - wird hier verwendet, um sich auf eine Struktur zu beziehen (d.h. etwas Körperliches, wie eine elektronische Schaltung). Genauer gesagt, wird diese Formulierung verwendet, um anzuzeigen, dass diese Struktur so angeordnet ist, dass sie eine oder mehrere Aufgaben während des Betriebs erfüllt. Eine Struktur kann als „konfiguriert“ bezeichnet werden, um eine Aufgabe auszuführen, auch wenn die Struktur derzeit nicht betrieben wird. Eine „Kreditverteilungsschaltung, die konfiguriert ist, um Kredite auf eine Vielzahl von Prozessorkernen zu verteilen“, soll beispielsweise eine integrierte Schaltung umfassen, die eine Schaltung aufweist, welche diese Funktion während des Betriebs ausführt, auch wenn die betreffende integrierte Schaltung derzeit nicht eingesetzt wird (da z.B. keine Stromversorgung angeschlossen ist). So bezieht sich ein Gebilde, das als „konfiguriert“ beschrieben oder angegeben wird, um eine Aufgabe auszuführen, auf etwas Physisches bzw. Körperliches, wie z.B. eine Vorrichtung, eine Schaltung, einen Speicher, der Programmanweisungen speichert, die ausführbar sind, um die Aufgabe auszuführen, usw. Dieser Ausdruck wird hier nicht verwendet, um sich auf etwas Immaterielles zu beziehen.In this disclosure, various units (which may be referred to variously as "units," "circuits," other components, etc.) may be described as "configured" or claimed to perform one or more tasks or operations. This formulation - [entity], which is configured to perform one or more tasks - is used herein to refer to a structure (i.e., something physical, such as an electronic circuit). More specifically, this phrase is used to indicate that this structure is arranged to perform one or more tasks during operation. A structure may be referred to as "configured" to perform a task, even though the structure is not currently operating. For example, a "credit distribution circuit configured to distribute credits to a plurality of processor cores" is intended to include an integrated circuit having a circuit that performs this function during operation, even though the integrated circuit in question is not currently used (FIG. because eg no power supply is connected). Thus, an entity described or referred to as "configured" to perform a task refers to something physical, such as a mouse. a device, a circuit, a memory storing program instructions executable to perform the task, etc. This term is not used herein to refer to something immaterial.
Der Begriff „konfiguriert, um“ bedeutet nicht „konfigurierbar, um“. Ein unprogrammiertes FPGA zum Beispiel könnte nicht als „konfiguriert, um“ angesehen werden, um eine bestimmte Funktion auszuführen, obwohl es „konfigurierbar, um“ sein kann, um diese Funktion nach einer Programmierung auszuführen.The term "configured to" does not mean "configurable to". For example, an unprogrammed FPGA may not be considered "configured to" to perform a particular function, although it may be "configurable to" to perform this function after programming.
Das Angeben in den beigefügten Ansprüchen, eine Struktur ist „konfiguriert, um“ eine oder mehrere Aufgaben auszuführen, ist ausdrücklich dazu bestimmt, sich nicht auf 35 U.S.C. § 112(f) für dieses Anspruchselement zu berufen. Dementsprechend sollten Ansprüche in dieser Anmeldung, die nicht anderweitig das Konstrukt „Mittel zum“ [Ausführen einer Funktion] aufweisen, nicht gemäß 35 U.S.C. § 112(f) ausgelegt werden.The indication in the appended claims that a structure is "configured to perform" one or more tasks is expressly intended not to be limited to 35 U.S.C. § 112 (f) to appeal for this claim element. Accordingly, claims in this application that do not otherwise have the construct "means for" [performing a function] should not be used in accordance with 35 U.S.C. § 112 (f).
Der Begriff „abhängig von“ wird hier verwendet, um einen oder mehrere Faktoren zu beschreiben, die eine Bestimmung beeinflussen. Dieser Begriff schließt nicht aus, dass zusätzliche Faktoren die Bestimmung beeinflussen können. Das heißt, eine Bestimmung kann ausschließlich auf bestimmten Faktoren oder auf den bestimmten Faktoren sowie auf anderen, nicht spezifizierten Faktoren beruhen. Der Ausdruck „A wird abhängig von B bestimmt“ beschreibt, dass B ein Faktor ist, der zur Bestimmung von A verwendet wird oder die Bestimmung von A beeinflusst. Dieser Ausdruck schließt nicht aus, dass die Bestimmung von A auch auf einem anderen Faktor basieren kann, wie beispielsweise C. Dieser Ausdruck soll auch eine Ausführungsform abdecken, in der A ausschließlich auf der Grundlage von B bestimmt wird. Wie es hier verwendet wird, ist der Ausdruck „abhängig von“ gleichbedeutend mit dem Ausdruck „zumindest teilweise abhängig von“.The term "dependent on" is used herein to describe one or more factors that influence a determination. This term does not exclude that additional factors may influence the determination. That is, a determination may be based solely on certain factors or on the particular factors as well as on other unspecified factors. The expression "A depends on B" describes that B is a factor used to determine A or influence the determination of A. This expression does not exclude that the determination of A can also be based on another factor, such as C. This expression is also intended to cover an embodiment in which A is determined solely on the basis of B. As used herein, the term "dependent on" is synonymous with the term "at least partially dependent on".
Wie es hier verwendet wird, beschreibt der Ausdruck „abhängig von“ auch einen oder mehrere Faktoren, die einen Effekt auslösen. Dieser Ausdruck schließt die Möglichkeit nicht aus, dass zusätzliche Faktoren die Wirkung beeinflussen oder anderweitig auslösen können. Das heißt, eine Wirkung kann ausschließlich als Reaktion auf diese Faktoren oder als Reaktion auf die spezifizierten Faktoren sowie andere, nicht spezifizierte Faktoren erfolgen. Der Ausdruck „A wird abhängig von B ausgeführt“ besagt, dass B ein Faktor ist, der die Ausführung von A auslöst. Dieser Ausdruck schließt nicht aus, dass die Ausführung von A auch als Reaktion auf einen anderen Faktor, wie beispielsweise C, erfolgen kann. Dieser Ausdruck soll auch eine Ausführungsform abdecken, bei der A ausschließlich abhängig von B ausgeführt wird.As used herein, the term "dependent on" also describes one or more factors that trigger an effect. This term does not exclude the possibility that additional factors may influence or otherwise trigger the effect. That is, an effect may occur solely in response to these factors or in response to the specified factors as well as other unspecified factors. The expression "A depends on B" implies that B is a factor that triggers the execution of A. This expression does not exclude that the execution of A can also be in response to another factor, such as C. This expression is also intended to cover an embodiment in which A is performed exclusively depending on B.
Die Begriffe „erste(r/s)“, zweite(r/s)“ usw. werden als Bezeichnungen für Substantive verwendet, denen sie voranstehen, und implizieren keine Art von Reihenfolge (z.B. räumlich, zeitlich, logisch usw.), sofern es nicht anders angegeben ist. So können beispielsweise in einer Registerdatei mit acht Registern die Begriffe „erstes Register“ und „zweites Register“ verwendet werden, um auf zwei beliebige der acht Register zu verweisen, und nicht beispielsweise nur auf die logischen Register 0 und 1.The terms "first", "second", etc. are used as names for nouns that they precede, and do not imply any sort of order (eg, spatial, temporal, logical, etc.) if it is not stated otherwise. For example, in a register file with eight registers, the terms "first register" and "second register" may be used to refer to any two of the eight registers, not, for example, only
In den Ansprüchen wird der Begriff „oder“ als ein einschließendes Oder und nicht als ein ausschließendes Oder verwendet. So bedeutet beispielsweise der Ausdruck „mindestens einer von
Claims (18)
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862650168P | 2018-03-29 | 2018-03-29 | |
US62/650,168 | 2018-03-29 | ||
US15/929,094 | 2019-01-28 | ||
US15/929,094 US11966348B2 (en) | 2019-01-28 | 2019-01-28 | Reducing coupling and power noise on PAM-4 I/O interface |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102019107002A1 true DE102019107002A1 (en) | 2019-10-02 |
Family
ID=67910133
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102019107002.3A Pending DE102019107002A1 (en) | 2018-03-29 | 2019-03-19 | REDUCTION OF COUPLING AND PERFORMANCE NOISE AT A PAM-4 I / O INTERFACE |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110321312B (en) |
DE (1) | DE102019107002A1 (en) |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4486739A (en) * | 1982-06-30 | 1984-12-04 | International Business Machines Corporation | Byte oriented DC balanced (0,4) 8B/10B partitioned block transmission code |
US7260155B2 (en) * | 2001-08-17 | 2007-08-21 | Synopsys, Inc. | Method and apparatus for encoding and decoding digital communications data |
US20030152154A1 (en) * | 2002-02-14 | 2003-08-14 | Johnson Ryan C. | Coding and decoding system and method for high-speed data transmission |
US7391834B2 (en) * | 2002-10-01 | 2008-06-24 | Intel Corporation | Pulse amplitude modulated system with reduced intersymbol interference |
US7113550B2 (en) * | 2002-12-10 | 2006-09-26 | Rambus Inc. | Technique for improving the quality of digital signals in a multi-level signaling system |
CN100452744C (en) * | 2007-01-30 | 2009-01-14 | 杭州华三通信技术有限公司 | Physical layer data transmitting method and receiving method and physical layer chip |
US8627165B2 (en) * | 2008-03-24 | 2014-01-07 | Micron Technology, Inc. | Bitwise operations and apparatus in a multi-level system |
US8081705B2 (en) * | 2008-06-27 | 2011-12-20 | Crestron Electronics Inc. | Digital video physical layer using a multi-level data code |
US9244872B2 (en) * | 2012-12-21 | 2016-01-26 | Ati Technologies Ulc | Configurable communications controller |
US9270417B2 (en) * | 2013-11-21 | 2016-02-23 | Qualcomm Incorporated | Devices and methods for facilitating data inversion to limit both instantaneous current and signal transitions |
US9252997B1 (en) * | 2014-07-10 | 2016-02-02 | Qualcomm Incorporated | Data link power reduction technique using bipolar pulse amplitude modulation |
KR101713406B1 (en) * | 2015-03-27 | 2017-03-07 | 아이디에이씨 홀딩스, 인크. | Encoding method of real number m-ary signal, and encoding apparatus using the same |
-
2019
- 2019-03-19 DE DE102019107002.3A patent/DE102019107002A1/en active Pending
- 2019-03-28 CN CN201910242543.7A patent/CN110321312B/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN110321312B (en) | 2023-11-24 |
CN110321312A (en) | 2019-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102019108205B4 (en) | UNRELAXED 433 ENCODING TO REDUCE COUPLING AND POWER NOISE ON PAM-4 DATA BUSES | |
DE102019107849A1 (en) | 424 encoding schemes to reduce coupling and power noise on PAM-4 data buses | |
DE102019107670B4 (en) | RELAXED 433 ENCODING TO REDUCE COUPLING AND POWER NOISE ON PAM-4 DATA BUSES | |
DE602004004002T2 (en) | Method and storage system based on dual data strobe mode and simple data strobe mode with data inversion | |
DE10134472B4 (en) | Transmitting and receiving interface and method for data transmission | |
DE102019123711A1 (en) | CODING TO AVOID MAXIMUM TRANSITIONS | |
DE102019133129A1 (en) | MULTI-PHASE PROGRAMMING WITH SYMMETRIC GRAY CODING | |
DE1499722B1 (en) | DEVICE FOR THE MODIFICATION OF INFORMATION WORDS | |
DE102016125131A1 (en) | Efficient generation of stochastic spike patterns in nuclear-based neuromorphic systems | |
DE3508321A1 (en) | PROGRAMMABLE CIRCUIT FOR CONTROLLING A LIQUID CRYSTAL DISPLAY | |
US11966348B2 (en) | Reducing coupling and power noise on PAM-4 I/O interface | |
DE3043100A1 (en) | DATA PROCESSOR WITH DATA CORRECTION FUNCTION | |
DE102019118340A1 (en) | INVERTING CODING FOR A BUS WITH LIMITED HAMMING DISTANCE FOR INTERFACES WITH MULTIPLE BYTES | |
DE112020000461T5 (en) | SELF-REFERENTED SINGLE-ENDED-CHIP-TO-CHIP COMMUNICATION | |
DE102020113386A1 (en) | PROPORTIONAL AC-COUPLED EDGE-ENHANCING TRANSMISSION EQUALIZATION FOR MULTI-LEVEL PULSE AMPLITUDE-MODULATED SIGNALING | |
DE112017005197T5 (en) | Hybrid compression scheme for efficiently storing synaptic weights in neuromorphic hardware cores | |
DE102019107002A1 (en) | REDUCTION OF COUPLING AND PERFORMANCE NOISE AT A PAM-4 I / O INTERFACE | |
EP0769853B1 (en) | Logic block for a viterbi decoder | |
DE10110567B4 (en) | Data processing system with adjustable clocks for divided synchronous interfaces | |
DE102013016694B4 (en) | Coding and decoding of redundant bits to make adjustments for memory cells with sticking errors | |
DE112021003136T5 (en) | METHOD OF PERFORMING SYSTEM AND POWER MANAGEMENT VIA A SERIAL DATA COMMUNICATIONS INTERFACE | |
DE102019114978A1 (en) | DATA BUS INVERSION (DBI) WITH PULSE AMPLITUDE MODULATION (PAM) AND REDUCTION OF COUPLING AND POWER NOISE WITH PAM-4 INPUT / OUTPUT | |
DE2233164A1 (en) | CIRCUIT ARRANGEMENT FOR HIDING ANY SELECTABLE AREA OF A BIT SEQUENCE WHEN TRANSFERRED BETWEEN TWO REGISTERS | |
DE60109620T2 (en) | scrambler AND METHOD FOR PREVENTING DATA WORDS | |
DE112004001830B4 (en) | Data transmission system with reduced power consumption, method and transmission circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R016 | Response to examination communication |