DE102020133572A1 - Speichervorrichtung und Speichersystem mit demselben - Google Patents

Speichervorrichtung und Speichersystem mit demselben Download PDF

Info

Publication number
DE102020133572A1
DE102020133572A1 DE102020133572.5A DE102020133572A DE102020133572A1 DE 102020133572 A1 DE102020133572 A1 DE 102020133572A1 DE 102020133572 A DE102020133572 A DE 102020133572A DE 102020133572 A1 DE102020133572 A1 DE 102020133572A1
Authority
DE
Germany
Prior art keywords
dbi
data
bit
mode
signal
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
DE102020133572.5A
Other languages
English (en)
Inventor
Jaewoo Park
Youngdon CHOI
Junghwan Choi
Changsik YOO
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.)
Samsung Electronics Co Ltd
Industry University Cooperation Foundation IUCF HYU
Original Assignee
Samsung Electronics Co Ltd
Industry University Cooperation Foundation IUCF HYU
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 Samsung Electronics Co Ltd, Industry University Cooperation Foundation IUCF HYU filed Critical Samsung Electronics Co Ltd
Publication of DE102020133572A1 publication Critical patent/DE102020133572A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/0264Arrangements for coupling to transmission lines
    • H04L25/0272Arrangements for coupling to multiple lines, e.g. for differential transmission
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1048Data bus control circuits, e.g. precharging, presetting, equalising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/14Channel dividing arrangements, i.e. in which a single bit stream is divided between several baseband channels and reassembled at the receiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • H04L25/49Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
    • H04L25/4917Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using multilevel codes
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Dc Digital Transmission (AREA)

Abstract

Eine Speichervorrichtung und ein Speichersystem mit demselben sind vorgesehen. Die Speichervorrichtung kann enthalten: eine Datenbusinversions(DBI)-Modus-Auswählvorrichtung, die konfiguriert ist, ein erstes Multi-Bit-DBI-Signal aus einer Mehrzahl an Multi-Bit-DBI-Signalen, die jeweils einer Mehrzahl an DBI-Modi entsprechen, gemäß Multi-Bit-Daten auszuwählen; einen Multi-Modus-DBI-Kodierer, der konfiguriert ist, kodierte Multi-Bit-Daten durch eine DBI-Kodierung der Multi-Bit-Daten gemäß dem ersten Multi-Bit-DBI-Signal zu erzeugen; und einen Sendeempfänger, der konfiguriert ist, ein Datensymbol, das den kodierten Multi-Bit-Daten entspricht, durch einen Datenkanal zu übertragen und ein DBI-Symbol, das dem ersten Multi-Bit-DBI-Signal entspricht, durch einen DBI-Kanal zu übertragen.

Description

  • Hintergrund
  • 1. Gebiet
  • Die Ausführungsformen beziehen sich auf eine Speichervorrichtung und insbesondere auf eine Speichervorrichtung und ein Speichersystem mit demselben.
  • 2. Beschreibung der verwandten Technik
  • Ein Speichersystem kann eine Übertragungsvorrichtung und eine Empfangsvorrichtung enthalten und die Übertragungsvorrichtung und die Empfangsvorrichtung können Daten durch eine Mehrzahl an Datenkanälen übertragen und empfangen. Um einen Leistungsverbrauch für das Übertragen und Empfangen von Daten zu reduzieren, kann ein Datenkodierverfahren, wie eine Datenbusinversion (DBI), verwendet werden. In allen Einzelheiten kann eine Übertragungsvorrichtung Übertragungsdaten durch selektives Invertieren von mindestens einigen Bits von Daten durch Verwenden des DBI-Kodierverfahrens erzeugen und kann ein DBI-Signal, das angibt, dass die mindestens einigen Bits der Daten invertiert sind, zusammen mit den Übertragungsdaten übertragen, was zur Reduzierung des Gesamtleistungsverbrauchs für eine Datenübertragung beitragen kann.
  • Kurzfassung
  • Ausführungsformen richten sich auf eine Speichervorrichtung, die enthält: eine Datenbusinversions(DBI)-Modus-Auswählvorrichtung, die konfiguriert ist, ein erstes Multi-Bit-DBI-Signal aus einer Mehrzahl an Multi-Bit-DBI-Signalen, die jeweils einer Mehrzahl an DBI-Modi entsprechen, gemäß Multi-Bit-Daten auszuwählen; einen Multi-Modus-DBI-Kodierer, der konfiguriert ist, kodierte Multi-Bit-Daten durch eine DBI-Kodierung der Multi-Bit-Daten gemäß dem ersten Multi-Bit-DBI-Signal zu erzeugen; und einen Sendeempfänger, der konfiguriert ist, ein Datensymbol, das den kodierten Multi-Bit-Daten entspricht, durch einen Datenkanal zu übertragen und ein DBI-Symbol, das dem ersten Multi-Bit-DBI-Signal entspricht, durch einen DBI-Kanal zu übertragen.
  • Ausführungsformen richten sich außerdem auf eine Speichervorrichtung, die enthält: einen Sendeempfänger, der konfiguriert ist, ein Datensymbol und ein Datenbusinversions(DBI)-Symbol jeweils durch einen Datenkanal und einen DBI-Kanal zu empfangen, kodierte Multi-Bit-Daten aus dem empfangenen Datensymbol zu erzeugen und ein Multi-Bit-DBI-Signal aus dem empfangenen DBI-Symbol zu erzeugen; und einen Multi-Modus-DBI-Dekodierer, der konfiguriert ist, Multi-Bit-Daten durch eine DBI-Dekodierung der kodierten Multi-Bit-Daten gemäß dem Multi-Bit-DBI-Signal zu erzeugen.
  • Ausführungsformen richten sich außerdem auf ein Speichersystem, das enthält: eine Übertragungsvorrichtung, die konfiguriert ist, eine Mehrzahl an Multi-Bit-Datenteilen bzw. Teilen von Multi-Bit-Daten gemäß einem Multi-Bit-DBI-Signal mittels Datenbusinversion (DBI) zu kodieren, eine Mehrzahl an Datensymbolen, die einer Mehrzahl an kodierten Multi-Bit-Datenteilen entsprechen, durch eine Mehrzahl an Datenkanälen zu übertragen, und ein DBI-Symbol, das dem Multi-Bit-DBI-Signal entspricht, durch einen DBI-Kanal zu übertragen; und eine Empfangsvorrichtung, die konfiguriert ist, die Mehrzahl an Datensymbolen durch die Mehrzahl an Datenkanälen zu empfangen, das DBI-Symbol durch den DBI-Kanal zu empfangen, und die Mehrzahl an Multi-Bit-Datenteilen aus der Mehrzahl an Datensymbolen gemäß dem Multi-Bit-DBI-Signal mittels DBI zu dekodieren.
  • Ausführungsformen richten sich außerdem auf ein Berechnungssystem, das enthält: einen Prozessor; und einen Speicher, der konfiguriert ist, durch eine Mehrzahl an Datenkanälen und mindestens einen Datenbusinversions(DBI)-Kanal mit dem Prozessor zu kommunizieren. Datensymbole, die Multi-Bit-Daten entsprechen, können jeweils durch die Mehrzahl an Datenkanälen übertragen und empfangen werden, ein DBI-Symbol, das einem Multi-Bit-DBI-Signal, das einen aus einer Mehrzahl an DBI-Modi angibt, entspricht, kann durch den mindestens einen DBI-Kanal übertragen und empfangen werden und die Multi-Bit-Daten können gemäß dem Multi-Bit-DBI-Signal mittels DBI kodiert sein.
  • Ausführungsformen richten sich außerdem auf eine Speichervorrichtung, die enthält: eine Datenbusinversions(DBI)-Modus-Auswählvorrichtung, die konfiguriert ist, ein 2-Bit-DBI-Signal, das einem von vier DBI-Modi entspricht, gemäß 2-Bit-Daten auszuwählen; einen DBI-Kodierer, der konfiguriert ist, kodierte 2-Bit-Daten durch eine DBI-Kodierung der 2-Bit-Daten gemäß dem ausgewählten 2-Bit-DBI-Signal zu erzeugen; und einen Sendeempfänger, der konfiguriert ist, ein Datensymbol, das den kodierten 2-Bit-Daten entspricht, durch einen Datenkanal zu übertragen und ein DBI-Symbol, das dem 2-Bit-DBI-Signal entspricht, durch einen DBI-Kanal zu übertragen.
  • Ausführungsformen richten sich außerdem auf ein Speichersystem, das enthält: eine Übertragungsvorrichtung, die konfiguriert ist, eine Mehrzahl an 2-Bit-Datenteilen gemäß einem 2-Bit-DBI-Signal mittels Datenbusinversion (DBI) zu kodieren, eine Mehrzahl an Datensymbolen, die einer Mehrzahl an kodierten 2-Bit-Datenteilen entsprechen, durch eine Mehrzahl an Datenkanälen zu übertragen, und ein DBI-Symbol, das dem 2-Bit-DBI-Signal entspricht, durch einen DBI-Kanal zu übertragen; und eine Empfangsvorrichtung, die konfiguriert ist, die Mehrzahl an Datensymbolen durch die Mehrzahl an Datenkanälen zu empfangen, das DBI-Symbol durch den DBI-Kanal zu empfangen, und die 2-Bit-Daten aus der Mehrzahl an Datensymbolen gemäß dem 2-Bit-DBI-Signal mittels DBI zu dekodieren.
  • Figurenliste
  • Die Merkmale werden einem Fachmann durch die ausführliche Beschreibung von Ausführungsbeispielen in Bezug auf die beigefügten Zeichnungen deutlich werden, wobei:
    • 1 ein Blockdiagramm ist, das ein Speichersystem nach einem Ausführungsbeispiel zeigt;
    • 2 ein Graph ist, der ein Beispiel für Spannungspegel für jeweilige Datensymbole in dem PAM-4-Schema nach einem Ausführungsbeispiel zeigt;
    • 3 ein Beispiel für Kosten für Datensymbole in dem PAM-4-Schema nach einem Ausführungsbeispiel zeigt;
    • 4 eine Tabelle ist, die ein Beispiel für eine Mehrzahl an DBI-Modi nach einem Ausführungsbeispiel zeigt;
    • 5 ein Schaltbild ist, das ein Beispiel für einen ersten Multi-Modus-DBI-Kodierer nach einem Ausführungsbeispiel zeigt;
    • 6 eine Tabelle ist, die ein Beispiel für den Betrieb des in 5 gezeigten ersten Multi-Modus-DBI-Kodierers zeigt;
    • 7A ein Diagramm ist, das ein Beispiel für eine PAM-4-Datenübertragung, auf die keine DBI-Kodierung angewandt wird, nach einem Vergleichsbeispiel zeigt;
    • 7B eine Tabelle ist, die ein Beispiel für Übertragungskosten nach dem Vergleichsbeispiel aus 7A zeigt;
    • 8A ein Diagramm ist, das ein Beispiel für eine PAM-4-Datenübertragung, auf die eine 2-Bit-DBI-Kodierung angewandt wird, nach einem Ausführungsbeispiel zeigt;
    • 8B ein Diagramm ist, das ein Beispiel für Übertragungskosten nach dem Beispiel aus 8A zeigt;
    • 9 ein Blockdiagramm ist, das ein Beispiel für die DBI-Modus-Auswählvorrichtung nach einem Ausführungsbeispiel zeigt;
    • 10 eine Tabelle ist, die ein Beispiel für den Betrieb der in 9 gezeigten DBI-Modus-Auswählvorrichtung zeigt;
    • 11 ein Blockdiagramm ist, das ein Speichersystem nach einem Ausführungsbeispiel zeigt;
    • 12 eine Tabelle ist, die ein Beispiel für eine Mehrzahl an DBI-Modi nach dem Ausführungsbeispiel aus 11 zeigt;
    • 13 ein Blockdiagramm ist, das ein Speichersystem gemäß einem ersten Kanalgruppierungsschema nach einem Ausführungsbeispiel zeigt;
    • 14 ein Blockdiagramm ist, das ein Speichersystem gemäß einem zweiten Kanalgruppierungsschema nach einem Ausführungsbeispiel zeigt;
    • 15 ein Blockdiagramm ist, das eine Speichervorrichtung nach einem Ausführungsbeispiel zeigt;
    • 16 ein Blockdiagramm ist, das eine Datenverarbeitungsvorrichtung nach einem Ausführungsbeispiel zeigt;
    • 17 ein Flussdiagramm eines Datenübertragungsverfahrens nach einem Ausführungsbeispiel ist;
    • 18 ein Flussdiagramm eines Datenempfangsverfahrens nach einem Ausführungsbeispiel ist; und
    • 19 ein Blockdiagramm ist, das ein Berechnungssystem nach einem Ausführungsbeispiel zeigt.
  • Ausführliche Beschreibung
  • 1 ist ein Blockdiagramm, das ein Speichersystem 10 nach einem Ausführungsbeispiel zeigt.
  • Bezugnehmend auf 1 kann das Speichersystem 10 eine Übertragungsvorrichtung 100 und eine Empfangsvorrichtung 200 enthalten. Die Übertragungsvorrichtung 100 kann einen Multi-Modus-DBI-Kodierer 110, eine DBI-Modus-Auswählvorrichtung 120, einen Datenübermittler 130 und einen DBI-Übermittler 140 enthalten. Die Empfangsvorrichtung 200 kann einen Datenempfänger 210, einen DBI-Empfänger 220 und einen Multi-Modus-DBI-Dekodierer 230 enthalten. Die Übertragungsvorrichtung 100 und die Empfangsvorrichtung 200 können durch eine Mehrzahl an Datenkanälen DQ und mindestens eine DBI-Leitung oder einen DBI-Kanal DBI_L miteinander kommunizieren. In einem Ausführungsbeispiel können der Datenübermittler 130 und der Datenempfänger 210 ein Daten-Sendeempfänger sein und der DBI-Übermittler 140 und der DBI-Empfänger 220 können ein DBI-Sendeempfänger sein.
  • In einem Ausführungsbeispiel können die Anzahl an Multi-Modus-DBI-Kodierern 110 und die Anzahl an Datenübermittlern 130 der Anzahl an Datenkanälen DQ entsprechen. Wenn zum Beispiel die Datenkanäle DQ 8 Datenkanäle enthalten, kann die Übertragungsvorrichtung 100 8 Multi-Modus-DBI-Kodierer 110 und 8 Datenübermittler 130 enthalten. In einem Ausführungsbeispiel können die Anzahl an DBI-Modus-Auswählvorrichtungen 120 und die Anzahl an DBI-Übermittlern 140 der Anzahl an DBI-Kanälen DBI_L entsprechen. Wenn zum Beispiel der mindestens eine DBI-Kanal DBI_L einen DBI-Kanal enthält, kann die Übertragungsvorrichtung 100 eine DBI-Modus-Auswählvorrichtung 120 und einen DBI-Übermittler 140 enthalten.
  • In einem Ausführungsbeispiel können die Anzahl an Datenempfängern 210 und die Anzahl an Multi-Modus-DBI-Dekodierern 230 der Anzahl an Datenkanälen DQ entsprechen. Wenn zum Beispiel die Datenkanäle DQ 8 Datenkanäle enthalten, kann die Empfangsvorrichtung 200 8 Datenempfänger 210 und 8 Multi-Modus-DBI-Dekodierer 230 enthalten. In einem Ausführungsbeispiel kann die Anzahl an DBI-Empfängern 220 der Anzahl an DBI-Kanälen DBI_L entsprechen. Wenn zum Beispiel der mindestens eine DBI-Kanal DBI_L einen DBI-Kanal enthält, kann die Empfangsvorrichtung 200 einen DBI-Empfänger 220 enthalten.
  • In einem Ausführungsbeispiel kann die Übertragungsvorrichtung 100 eine Datenverarbeitungsvorrichtung sein und die Empfangsvorrichtung 200 kann eine Speichervorrichtung sein. In einem Ausführungsbeispiel kann die Übertragungsvorrichtung 100 jedoch eine Speichervorrichtung sein und die Empfangsvorrichtung 200 kann eine Datenverarbeitungsvorrichtung sein. Außerdem können sowohl die Übertragungsvorrichtung 100 als auch die Empfangsvorrichtung 200 in einer Ausführungsform Speichervorrichtungen sein. In der vorliegenden Spezifikation kann der Begriff „Speichervorrichtung“ jegliche Vorrichtung enthalten, die eine Mehrzahl an Speicherzellen enthält. Zum Beispiel können die Speicherzellen dynamische Direktzugriffsspeicher(DRAM)-Zellen sein.
  • In einem Ausführungsbeispiel können die Übertragungsvorrichtung 100 und die Empfangsvorrichtung 200 Daten gemäß einem Pulsamplitudenmodulations(PAM)-Schema übertragen und empfangen. In einem Ausführungseispiel ist die Übertragungsvorrichtung 100 dazu imstande, eine in Multi-Bit-Daten enthaltene Mehrzahl an Bits innerhalb einer einzeln Symbolperiode durch Erzeugen eines Symbols mit einer von unterschiedlichen Spannungspegeln aus den Multi-Bit-Daten durch Verwenden des PAM-Schemas zu übertragen, wodurch die Datenübertragungsgeschwindigkeit des Speichersystems 10 verbessert wird. Zum Beispiel können die Übertragungsvorrichtung 100 und die Empfangsvorrichtung 200 Daten gemäß einem PAM-4-Schema übertragen und empfangen. Ein Verfahren zum Übertragen und Empfangen von Daten gemäß dem PAM-4-Verfahren wird unten mit Bezug auf 2 und 3 beschrieben.
  • Der Multi-Modus-DBI-Kodierer 110 kann Multi-Bit-Daten empfangen. Außerdem kann der Multi-Modus-DBI-Kodierer 110 ein Multi-Bit-DBI-Signal DBI_MD von der DBI-Modus-Auswählvorrichtung 120 empfangen und Multi-Bit-Daten DATA gemäß dem empfangenen Multi-Bit-DBI-Signal DBI_MD kodieren, wodurch kodierte Multi-Bit-Daten E_DATA erzeugt werden. Die Multi-Bit-Daten DATA können N-Bit-Daten sein, wobei N eine ganze Zahl von 2 oder größer sein kann. In einem Ausführungsbeispiel können die Multi-Bit-Daten DATA 2-Bit-Daten sein („00“, „01“, „10“ oder „11“). Eine ausführliche Beschreibung des Betriebs des Multi-Modus-DBI-Kodierers 110 wird unten mit Bezug auf 5 bis 7B beschrieben.
  • Die DBI-Modus-Auswählvorrichtung 120 kann ein Multi-Bit-DBI-Signal DBI_MD aus einer Mehrzahl an Multi-Bit-DBI-Signalen, die jeweils einer Mehrzahl an DBI-Modi entsprechen, gemäß den Multi-Bit-Daten DATA auswählen. In einem Ausführungsbeispiel kann das Multi-Bit-DBI-Signal DBI_MD ein 2-Bit-Signal sein, wenn die Multi-Bit-Daten DATA 2-Bit-Daten enthalten. In einem Ausführungsbeispiel kann das Multi-Bit-DBI-Signal DBI_MD ein 3-Bit-Signal sein, wenn die Multi-Bit-Daten DATA 3-Bit-Daten enthalten. Die Multi-Bit-Daten DATA können jedoch 3-Bit-Daten sein und das Multi-Bit-DBI-Signal DBI_MD kann ein 2-Bit-Signal sein. Eine ausführliche Beschreibung des Betriebs der DBI-Modus-Auswählvorrichtung 120 wird unten mit Bezug auf 4 beschrieben.
  • Der Datenübermittler 130 kann ein Datensymbol D_SB aus den kodierten Multi-Bit-Daten E_DATA erzeugen und das erzeugte Datensymbol D_SB durch einen Datenkanal DQ an die Empfangsvorrichtung 200 übertragen. Zum Beispiel kann der Datenübermittler 130 das Datensymbol D SB mit einem Spannungspegel aus einem ersten bis vierten Spannungspegel (z.B. V0 bis V3 in 2) durch Verwenden des PAM-4-Schemas aus den kodierten Multi-Bit-Daten E-DATA erzeugen. Der DBI-Übermittler 140 kann ein DBI-Symbol DBI_SB aus dem Multi-Bit-DBI-Signal DBI_MD erzeugen und ein erzeugtes DBI-Symbol DBI_SB durch einen DBI-Kanal DBI_L an die Empfangsvorrichtung 200 übertragen. Zum Beispiel kann der DBI-Übermittler 140 das DBI-Symbol DBI _SB mit einem aus einem ersten bis vierten Spannungspegel durch Verwenden des PAM-4-Schemas aus dem Multi-Bit-DBI-Signal DBI_MD erzeugen.
  • Der Datenempfänger 210 kann das Datensymbol D_SB durch den Datenkanal DQ von der Übertragungsvorrichtung 100 empfangen und die kodierten Multi-Bit-Daten E_DATA aus dem empfangen Datensymbol D_SB erzeugen. Zum Beispiel kann der Datenempfänger 210 die kodierten Multi-Bit-Daten E_DATA durch Verwenden des PAM-4-Schemas aus dem Datensymbol D_SB mit einem aus dem ersten bis vierten Spannungspegel erzeugen. Der DBI-Empfänger 220 kann das DBI-Symbol DBI SB durch den DBI-Kanal DBI_L von der Übertragungsvorrichtung empfangen und das Multi-Bit-DBI-Signal DBI_MD aus dem empfangenen DBI-Symbol DBI SB erzeugen. Zum Beispiel kann der DBI-Empfänger 220 das Multi-Bit-DBI-Signal DBI_MD durch Verwenden des PAM-4-Schemas aus dem DBI-Symbol DBI SB mit einem aus dem ersten bis vierten Spannungspegel erzeugen.
  • 2 ist ein Graph, der ein Beispiel für Spannungspegel für jeweilige Datensymbole in dem PAM-4-Schema nach einem Ausführungsbeispiel zeigt. In 2 stellt die horizontale Achse Zeit dar und die vertikale Achse stellt Spannung dar.
  • Bezugnehmend auf 1 und 2 zusammen können die Multi-Bit-Daten DATA 2-Bit-Daten sein und der Datenübermittler 130 kann 2-Bit-Daten pro Symbolperiode übertragen. Zum Beispiel kann ein erstes Symbol mit einem ersten Spannungspegel V0, der Daten „00“ entspricht, in einer ersten Symbolperiode SP0 erzeugt werden, ein Symbol mit einem zweiten Spannungspegel VI, der Daten ,,01" entspricht, kann in einer zweiten Symbolperiode SP1 erzeugt werden, ein Symbol mit einem dritten Spannungspegel V2, der Daten „10“ entspricht, kann in einer dritten Symbolperiode SP2 erzeugt werden und ein Symbol mit einem vierten Spannungspegel V3, der Daten „11“ entspricht, kann in einer vierten Symbolperiode SP3 erzeugt werden. In der ersten bis vierten Symbolperiode SP0 bis SP3 erzeugte Symbole können gemäß Daten variieren.
  • 3 zeigt ein Beispiel für Kosten für Datensymbole in dem PAM-4-Schema nach einem Ausführungsbeispiel.
  • Bezugnehmend auf 1 bis 3 zusammen können zum Beispiel in dem PAM-4-Schema 2-Bit-Daten „00“, „01“, „10“ und „11“ jeweils Symbolen 0, 1, 2 und 3 entsprechen. 3 zeigt ein äquivalentes Schaltbild eines Übertragungstreibers TX für jedes Symbol und ein Beispiel für DC-Verbrauchsströme gemäß äquivalenten Widerständen des Übertragungstreibers TX. Bei der Übertragung eines jeden Symbols können „Übertragungskosten“ oder „Kosten“ von einem Verbrauchsstrom des Übertragungstreibers TX, das heißt, ein Übertragungsverbrauchsstrom, definiert werden. Zum Beispiel kann der Übertragungstreiber TX im Datenübermittler 130 enthalten sein.
  • Wenn zum Beispiel ein Symbol 0, das Daten „00“ entspricht, übertragen wird, kann der DC-Verbrauchsstrom des Übertragungstreibers TX 0 VDD sein. Wenn zum Beispiel ein Symbol 1, das Daten „01“ entspricht, übertragen wird, kann der DC-Verbrauchsstrom des Übertragungstreibers TX 5/18 VDD sein. Wenn zum Beispiel ein Symbol 2, das Daten,,10" entspricht, übertragen wird, kann der DC-Verbrauchsstrom des Übertragungstreibers TX 8/18 VDD sein. Wenn zum Beispiel ein Symbol 3, das Daten „11“ entspricht, übertragen wird, kann der DC-Verbrauchsstrom des Übertragungstreibers TX 9/18 VDD sein. Somit können Kosten, die Daten „00“, „01“, „10“ und „11“ entsprechen, jeweils als 0, 5, 8 und 9 definiert werden.
  • In dem vorliegenden Ausführungsbeispiel unterscheiden sich Kosten von unterschiedlichen Symbolen, die unterschiedlichen Daten entsprechen, voneinander und insbesondere die Kosten des Symbols 0 sind am niedrigsten und die Kosten des Symbols 3 sind am höchsten. Um die Gesamtübertragungskosten zu reduzieren, ist es somit wünschenswert, die Anzahl an Symbolen 1, Symbolen 2 und Symbolen 3 aus übertragenen Symbolen zu reduzieren und die Anzahl an Symbolen 0 zu erhöhen. Somit kann eine DBI-Kodierung an den Multi-Bit-Daten DATA gemäß dem Multi-Bit-DBI-Signal DBI_MD, die jedem einer Mehrzahl an DBI-Modi entsprechen, durchgeführt werden.
  • 4 ist eine Tabelle, die ein Beispiel für eine Mehrzahl an DBI-Modi nach einem Ausführungsbeispiel zeigt.
  • Bezugnehmend auf 4 können die DBI-Modi einen ersten bis vierten DBI-Modus MD0 bis MD3 enthalten und der erste bis vierte DBI-Modus MD0 bis MD3 können jeweils einem ersten bis vierten Multi-Bit-DBI-Signal DBI_MD[1:0] entsprechen. Das erste bis vierte Multi-Bit-DBI-Signal DBI MD[1:0] können je ein 2-Bit-Signal sein und das erste bis vierte Multi-Bit-DBI-Signal DBI_MD[1:0] können jeweils einem DBI-Symbol DBI SB 0, 1, 2 und 3 entsprechen.
  • Zum Beispiel kann ein erster DBI-Modus MD0 ein DBI-Kodierungsschema angeben, das nicht alle Bits von Multi-Bit-Daten invertiert, und ein erstes Multi-Bit-DBI-Signal DBI_MD<0> kann als „00“ angegeben sein. Zum Beispiel kann ein zweiter DBI-Modus MD1 ein DBI-Kodierungsschema angeben, das lediglich das niedrigstwertige Bit (LSB) von Multi-Bit-Daten invertiert, und ein zweites Multi-Bit-DBI-Signal DBI MD<1> kann als „01“ angegeben sein. Zum Beispiel kann ein dritter DBI-Modus MD2 ein DBI-Kodierungsschema angeben, das lediglich das höchstwertige Bit (MSB) von Multi-Bit-Daten invertiert, und ein drittes Multi-Bit-DBI-Signal DBI MD<2> kann als „10“ angegeben sein. Zum Beispiel kann ein vierter DBI-Modus MD3 ein DBI-Kodierungsschema angeben, das alle Bits von Multi-Bit-Daten invertiert, und ein viertes Multi-Bit-DBI-Signal DBI_MD<3> kann als „11“ angegeben sein.
  • 5 ist ein Schaltbild, das ein Beispiel für einen ersten Multi-Modus-DBI-Kodierer 110a nach einem Ausführungsbeispiel zeigt. 6 ist eine Tabelle, die ein Beispiel für den Betrieb des in 5 gezeigten ersten Multi-Modus-DBI-Kodierers 110a zeigt.
  • Bezugnehmend auf 4 bis 6 zusammen, kann der erste Multi-Modus-DBI-Kodierer 110a zum Beispiel einem Beispiel für den Multi-Modus-DBI-Kodierer 110 aus 1 entsprechen. Zum Beispiel kann der erste Multi-Modus-DBI-Kodierer 110a erste Multi-Bit-Daten DATAO und ein Multi-Bit-DBI-Signal DBI_MD empfangen und kodierte erste Multi-Bit-Daten E_DATA0 durch Kodieren der ersten Multi-Bit-Daten DATAO mittels DBI gemäß dem empfangenen Multi-Bit-DBI-Signal DBI_MD erzeugen. Wie in 4 gezeigt, kann das Multi-Bit-DBI-Signal DBI_MD eines aus einem ersten bis vierten Multi-Bit-DBI-Signal (d.h. 00, 01, 10 und 11), die jeweils dem ersten bis vierten DBI-Modus MD0 bis MD3 entsprechen, sein.
  • In einem Ausführungsbeispiel kann der erste Multi-Modus-DBI-Kodierer 110a ein erstes XOR-Gate 111 und ein zweites XOR-Gate 112 enthalten. Das erste XOR-Gate 111 kann eine XOR-Operation an einem LSB-Signal der ersten Multi-Bit-Daten DATA0 (d.h. DATA[0]) und einem LSB-Signal des Multi-Bit-DBI-Signals DBI_MD (d.h. DBI MD[0]) durchführen, wodurch ein LSB-Signal der kodierten ersten Multi-Bit-Daten E_DATA0 (d.h. E_DATA0[0]) ausgegeben wird. Das zweite XOR-Gate 112 kann eine XOR-Operation an einem MSB-Signal der ersten Multi-Bit-Daten DATAO (d.h. DATA[1]) und einem MSB-Signal des Multi-Bit-DBI-Signals DBI_MD (d.h. DBI MD[1]) durchführen, wodurch ein MSB-Signal der kodierten ersten Multi-Bit-Daten E_DATA0 (d.h. E_DATA0[1]) ausgegeben wird.
  • Wenn zum Beispiel die ersten Multi-Bit-Daten DATAO 00 sind und das Multi-Bit-DBI-Signal DBI_MD 00 ist, geben das erste und zweite XOR-Gate 111 und 112 jeweils 0 aus. Wenn zum Beispiel die ersten Multi-Bit-Daten DATAO 01 sind und das Multi-Bit-DBI-Signal DBI_MD 01 ist, können das erste und zweite XOR-Gate 111 und 112 jeweils 0 ausgeben. Wenn zum Beispiel die ersten Multi-Bit-Daten DATAO 10 sind und das Multi-Bit-DBI-Signal DBI_MD 10 ist, können das erste und zweite XOR-Gate 111 und 112 jeweils 0 ausgeben. Wenn zum Beispiel die ersten Multi-Bit-Daten DATAO 11 sind und das Multi-Bit-DBI-Signal DBI_MD 11 ist, können das erste und zweite XOR-Gate 111 und 112 jeweils 0 ausgeben.
  • 7A ist ein Diagramm, das ein Beispiel für eine PAM-4-Datenübertragung, auf die keine DBI-Kodierung angewandt wird, nach einem Vergleichsbeispiel zeigt, und 7B ist eine Tabelle, die ein Beispiel für Übertragungskosten nach dem Vergleichsbeispiel aus 7A zeigt.
  • Bezugnehmend auf 3, 7A und 7B zusammen können ein erster und zweiter Übertragungstreiber TX0 und TX1 jeweils ein erstes und zweites Datensymbol D_SB0 und D_SB1 aus ersten und zweiten Multi-Bit-Daten DATAO und DATA1 ausgeben.
  • Wenn keine DBI-Kodierung angewandt wird, können die Gesamtübertragungskosten für das Datensymbol D SB der Summe der Übertragungskosten für ein erstes Datensymbol D_SB0 und der Übertragungskosten für ein zweites Datensymbol D_SB1 entsprechen.
  • Wenn zum Beispiel die ersten und zweiten Multi-Bit-Daten DATA0 und DATA1 „00“ sind, sind die Übertragungskosten für das erste und zweite Datensymbol D_SB0 und D_SB1 0. Wenn außerdem sowohl die ersten als auch die zweiten Multi-Bit-Daten DATA0 und DATA1 „01“ sind, sind die Übertragungskosten für sowohl das erste als auch das zweite Datensymbol D_SB0 und D_SB1 5 und somit sind die Gesamtübertragungskosten für das Datensymbol D_SB 10. Wenn außerdem sowohl die ersten als auch die zweiten Multi-Bit-Daten DATAO und DATA1 „10“ sind, sind die Übertragungskosten für sowohl das erste als auch das zweite Datensymbol D_SB0 und D_SB1 8 und somit sind die Gesamtübertragungskosten für das Datensymbol D_SB 16. Wenn außerdem sowohl die ersten als auch die zweiten Multi-Bit-Daten DATA0 und DATA1 „11“ sind, sind die Übertragungskosten für sowohl das erste als auch das zweite Datensymbol D_SB0 und D_SB1 9 und somit sind die Gesamtübertragungskosten für das Datensymbol D_SB 18.
  • 8A ist ein Diagramm, das ein Beispiel für eine PAM-4-Datenübertragung, auf die eine 2-Bit-DBI-Kodierung angewandt wird, nach einem Ausführungsbeispiel zeigt, und 8B ist ein Diagramm, das ein Beispiel für Übertragungskosten nach dem Beispiel aus 8A zeigt.
  • Bezugnehmend auf 3, 8A und 8B zusammen kann das Multi-Bit-DBI-Signal DBI_MD ein 2-Bit-Signal sein und das Multi-Bit-DBI-signal DBI_MD kann einem aus dem ersten bis vierten DBI-Modus entsprechen. Ein erster und zweiter Multi-Modus-DBI-Kodierer 110a und 110b können im Multi-Modus-DBI-Kodierer 110 aus 1 enthalten sein und die DBI-Modus-Auswählvorrichtung 120 kann der DBI-Modus-Auswählvorrichtung 120 aus 1 entsprechen. Außerdem können ein erster und zweiter Datenübermittler 130a und 130b im Datenübermittler 130 aus 1 enthalten sein.
  • Der erste Multi-Modus-DBI-Kodierer 110a kann kodierte erste Multi-Bit-Daten E_DATA0 durch Kodieren der ersten Multi-Bit-Daten DATAO mittels DBI gemäß dem Multi-Bit-DBI-Signal DBI_MD erzeugen. Der zweite Multi-Modus-DBI-Kodierer 110b kann kodierte zweite Multi-Bit-Daten E_DATA1 durch Kodieren der zweiten Multi-Bit-Daten DATA1 mittels DBI gemäß dem Multi-Bit-DBI-Signal DBI_MD erzeugen.
  • Der erste Datenübermittler 130a kann ein erstes Datensymbol D_SB0, das den kodierten ersten Multi-Bit-Daten E_DATA0 entspricht, an einen ersten Datenkanal (z.B. DQ0 aus 13) übertragen, und der zweite Datenübermittler 130b kann ein zweites Datensymbol D_SB1, das den kodierten zweiten Multi-Bit-Daten E_DATA1 entspricht, an einen zweiten Datenkanal (z.B. DQ1 aus 13) übertragen. Der DBI-Übermittler 140 kann ein DBI-Symbol DBI_SB, das dem Multi-Bit-DBI-Signal DBI_MD entspricht, an einen DBI-Kanal (z.B. DBI_L aus 1) übertragen.
  • Im vorliegenden Ausführungsbeispiel, wenn Daten durch Anwenden einer 2-Bit-DBI-Kodierung übertragen werden, können das erste und zweite Datensymbol D_SB0 und D_SB1 durch einen ersten und zweiten Datenkanal übertragen werden und das DBI-Symbol DBI_SB kann gleichzeitig durch den DBI-Kanal übertragen werden. Somit können die Gesamtübertragungskosten der Summe der Übertragungskosten für das erste Datensymbol D_SB0, der Übertragungskosten für das zweite Datensymbol D_SB1 und der Übertragungskosten für das DBI-Symbol DBI_SB entsprechen.
  • Wenn zum Beispiel sowohl erste als auch zweite Multi-Bit-Daten DATAO und DATA1 „00“ sind, kann ein erster DBI-Modus ausgewählt werden. Somit können der erste und zweite Multi-Modus-DBI-Kodierer 110a und 110b die ersten und zweiten Multi-Bit-Daten DATAO und DATA1 im ersten DBI-Modus mittels DBI kodieren, wodurch die kodierten ersten und zweiten Multi-Bit-Daten E_DATA0 und E_DATA1 jeweils als „00“ und „00“ ausgegeben werden. Der erste und zweite Datenübermittler 130a und 130b können ein erstes und zweites Datensymbol D_SB0 und D_SB1, die jeweils den kodierten ersten und zweiten Multi-Bit-Daten E_DATA0 und E_DATA1 entsprechen, als 0 ausgeben. Zu dieser Zeit sind die Übertragungskosten für das Datensymbol D_SB 00 0 und die Übertragungskosten für ein DBI-Symbol DBI_SB 0 sind 0 und somit sind die Gesamtübertragungskosten 0.
  • Wenn zum Beispiel sowohl erste als auch zweite Multi-Bit-Daten DATA0 und DATA1 „Öl“ sind, kann ein zweiter DBI-Modus ausgewählt werden. Somit können der erste und zweite Multi-Modus-DBI-Kodierer 110a und 110b die ersten und zweiten Multi-Bit-Daten DATAO und DATA1 im zweiten DBI-Modus mittels DBI kodieren, wodurch die kodierten ersten und zweiten Multi-Bit-Daten E_DATA0 und E_DATA1 jeweils als „00“ und „00“ ausgegeben werden. Der erste und zweite Datenübermittler 130a und 130b können das erste und zweite Datensymbol D_SB0 und D_SB1, die jeweils den kodierten ersten und zweiten Multi-Bit-Daten E _DATA0 und E_DATA1 entsprechen, als 0 ausgeben. Zu dieser Zeit sind die Übertragungskosten für das Datensymbol D_SB 00 0 und die Übertragungskosten für ein DBI-Symbol DBI_SB 1 sind 5 und somit sind die Gesamtübertragungskosten 5. Wie oben beschrieben, wenn sowohl die ersten als auch die zweiten Multi-Bit-Daten DATA0 und DATA1 „01“ sind, verglichen mit dem Fall, in dem keine wie in 7B gezeigte DBI-Kodierung angewandt wird, können die Gesamtübertragungskosten von 10 auf 5 reduziert werden.
  • Wenn zum Beispiel sowohl erste als auch zweite Multi-Bit-Daten DATAO und DATA1 „10“ sind, kann ein dritter DBI-Modus ausgewählt werden. Somit können der erste und zweite Multi-Modus-DBI-Kodierer 110a und 110b die ersten und zweiten Multi-Bit-Daten DATAO und DATA1 im dritten DBI-Modus mittels DBI kodieren, wodurch die kodierten ersten und zweiten Multi-Bit-Daten E DATA0 und E_DATA1 jeweils als „00“ und „00“ ausgegeben werden. Der erste und zweite Datenübermittler 130a und 130b können das erste und zweite Datensymbol D_SB0 und D SB1, die jeweils den kodierten ersten und zweiten Multi-Bit-Daten E _DATA0 und E_DATA1 entsprechen, als 0 ausgeben. Zu dieser Zeit sind die Übertragungskosten für das Datensymbol D_SB 00 0 und die Übertragungskosten für ein DBI-Symbol DBI SB 2 sind 8 und somit sind die Gesamtübertragungskosten 8. Wie oben beschrieben, wenn sowohl die ersten als auch die zweiten Multi-Bit-Daten DATA0 und DATA1 „10“ sind, verglichen mit dem Fall, in dem keine wie in 7B gezeigte DBI-Kodierung angewandt wird, können die Gesamtübertragungskosten von 16 auf 8 reduziert werden.
  • Wenn zum Beispiel sowohl erste als auch zweite Multi-Bit-Daten DATAO und DATA1 „11“ sind, kann ein vierter DBI-Modus ausgewählt werden. Somit können der erste und zweite Multi-Modus-DBI-Kodierer 110a und 110b die ersten und zweiten Multi-Bit-Daten DATA0 und DATA1 im vierten DBI-Modus mittels DBI kodieren, wodurch die kodierten ersten und zweiten Multi-Bit-Daten E_DATA0 und E_DATA1 jeweils als „00“ und „00“ ausgegeben werden. Der erste und zweite Datenübermittler 130a und 130b können das erste und zweite Datensymbol D_SB0 und D_SB1, die jeweils den kodierten ersten und zweiten Multi-Bit-Daten E_DATA0 und E_DATA1 entsprechen, als 0 ausgeben. Zu dieser Zeit sind die Übertragungskosten für das Datensymbol D_SB 00 0 und die Übertragungskosten für ein DBI-Symbol DBI_SB 3 sind 9 und somit sind die Gesamtübertragungskosten 9. Wie oben beschrieben, wenn sowohl die ersten als auch die zweiten Multi-Bit-Daten DATAO und DATA1 „11“ sind, verglichen mit dem Fall, in dem keine wie in 7B gezeigte DBI-Kodierung angewandt wird, können die Gesamtübertragungskosten von 18 auf 9 reduziert werden.
  • Nach einem Ausführungsbeispiel, da eine DBI-Kodierung durch Verwenden des Multi-Bit-DBI-Signals DBI_MD an sowohl den ersten als auch den zweiten Multi-Bit-Daten DATAO und DATA1 durchgeführt wird, verglichen mit einem Fall, in dem keine DBI-Kodierung angewandt wird, können die Gesamtübertragungskosten deutlich reduziert werden. In der Zwischenzeit, wenn eine DBI-Kodierung an den ersten und zweiten Multi-Bit-Daten DATAO und DATA1 durch Verwenden eines 1-Bit-DBI-Signals durchgeführt wird, werden die Gesamtübertragungskosten lediglich dann reduziert, wenn sowohl die ersten als auch die zweiten Multi-Bit-Daten DATAO und DATA1 „11“ sind, und die Übertragungskosten, wenn sowohl die ersten als auch die zweiten Multi-Bit-Daten DATAO und DATA1 ,,01" oder „10“ sind, werden zu jenen des Falls, in dem keine DBI-Kodierung angewandt wird, identisch sein. Nach dem vorliegenden Ausführungsbeispiel können die Gesamtübertragungskosten jedoch durch Durchführen einer DBI-Kodierung an den ersten und zweiten Multi-Bit-Daten DATAO und DATA1 durch Verwenden eines 2-Bit-DBI-Signals insgesamt deutlich reduziert werden.
  • 9 ist ein Blockdiagramm, das ein Beispiel für die DBI-Modus-Auswählvorrichtung 120 nach einem Ausführungsbeispiel zeigt.
  • Bezugnehmend auf 9 kann die DBI-Modus-Auswählvorrichtung 120 einen Datensymbolzähler 121 und einen DBI-Modus-Mapper bzw. DBI-Modus-Zuordner 122 enthalten. Der Datensymbolzähler 121 kann eine Mehrzahl an Multi-Bit-Datenteilen, z.B. erste bis achte Multi-Bit-Daten DATAO bis DATA7, empfangen, die Anzahl von jedem einer Mehrzahl an Datenmustern in den ersten bis achten Multi-Bit-Daten DATAO bis DATA7 zählen und ein erstes bis viertes Zählsignal CNTO bis CNT3 erzeugen. Zum Beispiel können die Datenmuster „00“, „01“, „10“ und „11“ enthalten.
  • Der DBI-Modus-Zuordner 122 kann die Gesamtübertragungskosten, die der Summe von Übertragungskosten für Datensymbole und Übertragungskosten für ein DBI-Symbol entsprechen, in Bezug auf jeden des ersten bis vierten DBI-Modus DBI_MD0 bis DBI_MD3 basierend auf dem ersten bis vierten Zählsignal CNT0 bis CNT3 berechnen. Als nächstes kann der DBI-Modus-Zuordner 122 einen DBI-Modus, der den Mindestübertragungskosten aus den Gesamtübertragungskosten entspricht, für den ersten bis vierten DBI-Modus DBI_MD0 bis DBI_MD3 auswählen und ein Multi-Bit-DBI-Signal DBI_MD, das dem ausgewählten DBI-Modus entspricht, ausgeben.
  • 10 ist eine Tabelle, die ein Beispiel für den Betrieb der in 9 gezeigten DBI-Modus-Auswählvorrichtung 120 zeigt.
  • Nachfolgend wir der Betrieb der DBI-Modus-Auswählvorrichtung 120 mit Bezug auf 9 und 10 zusammen ausführlich beschrieben. Zunächst werden der Betrieb des Datensymbolzählers 121 und des DBI-Modus-Zuordners 122 für einen ersten Fall CASE0 beschrieben.
  • Im ersten Fall CASE0 können alle der ersten bis achten Multi-Bit-Daten DATA0 bis DATA7 „11“ sein. Zu dieser Zeit kann der Datensymbolzähler 121 0, die der Anzahl an Datenmustern „00“ in den ersten bis achten Multi-Bit-Daten DATA0 bis DATA7 entspricht, als ein erstes Zählsignal CNT0 ausgeben, 0, die der Anzahl an Datenmustern ,,01" in den ersten bis achten Multi-Bit-Daten DATA0 bis DATA7 entspricht, als ein zweites Zählsignal CNT1 ausgeben, 0, die der Anzahl an Datenmustern „10“ in den ersten bis achten Multi-Bit-Daten DATA0 bis DATA7 entspricht, als ein drittes Zählsignal CNT2 ausgeben und 8, die der Anzahl an Datenmustern „11“ in den ersten bis achten Multi-Bit-Daten DATA0 bis DATA7 entspricht, als ein viertes Zählsignal CNT3 ausgeben.
  • In einem ersten DBI-Modus DBI_MD0 ist die Übertragungszählung des DBI-Symbols DBI_SB, das dem ersten Multi-Bit-Daten-Signal DBI 00 entspricht, 0. Wenn das Datenmuster „11“ im ersten DBI-Modus DBI_MD0 mittels DBI kodiert wird, wird das Datenmuster „11“ erzeugt und die Übertragungskosten für Datensymbole, die dem Datenmuster „11“ entsprechen (z.B. D_SB0 bis D_SB7 aus 13), sind 72 (=9*8). Somit sind die Gesamtübertragungskosten für den ersten DBI-Modus DBI_MD0 72 (=0+72).
  • In einem zweiten DBI-Modus DBI_MD1 ist die Übertragungszählung des DBI-Symbols DBI SB, das einem zweiten Multi-Bit-DBI-Signal 01 entspricht, 5. Wenn das Datenmuster „11“ im zweiten DBI-Modus DBI_MD1 mittels DBI kodiert wird, wird das Datenmuster „10“ erzeugt und die Übertragungskosten für Datensymbole, die dem Datenmuster „10“ entsprechen (z.B. D_SB0 bis D_SB7 aus 13), sind 64 (=8*8). Somit sind die Gesamtübertragungskosten für den zweiten DBI-Modus DBI_MD1 69 (=5+64).
  • In einem dritten DBI-Modus DBI_MD2 ist die Übertragungszählung des DBI-Symbols DBI_SB, das einem dritten Multi-Bit-DBI-Signal 10 entspricht, 8. Wenn das Datenmuster „11“ im dritten DBI-Modus DBI MD2 mittels DBI kodiert wird, wird das Datenmuster „Öl“ erzeugt und die Übertragungskosten für Datensymbole, die dem Datenmuster „01“ entsprechen (z.B. D_SB0 bis D_SB7 aus 13), sind 40 (=5*8). Somit sind die Gesamtübertragungskosten für den dritten DBI-Modus DBI_MD2 48 (=8+40).
  • In einem vierten DBI-Modus DBI_MD3 ist die Übertragungszählung des DBI-Symbols DBI_SB, das einem vierten Multi-Bit-DBI-Signal 11 entspricht, 9. Wenn das Datenmuster „11“ im vierten DBI-Modus DBI_MD3 mittels DBI kodiert wird, wird das Datenmuster „00“ erzeugt und die Übertragungskosten für Datensymbole, die dem Datenmuster „00“ entsprechen (z.B. D_SB0 bis D_SB7 aus 13), sind 0 (=0*8). Somit sind die Gesamtübertragungskosten für den vierten DBI-Modus DBI MD3 9 (=9+0).
  • Somit kann der DBI-Modus-Zuordner 122 die jeweiligen Gesamtübertragungskosten für den ersten bis vierten DBI-Modus DBI_MD0 bis DBI_MD3 als 72, 69, 48 und 9 berechnen und den vierten DBI-Modus DBI_MD3, der den Mindestübertragungskosten (das heißt 9) entspricht, aus den berechneten Gesamtübertragungskosten auswählen. Zu dieser Zeit ist das DBI-Symbol DBI_SB, das dem vierten DBI-Modus DBI_MD3 entspricht, 3.
  • Als nächstes werden Operationen des Datensymbolzählers 121 und des DBI-Modus-Zuordners 122 für einen zweiten Fall CASE1 beschrieben.
  • Im zweiten Fall CASE1 können alle der ersten bis achten Multi-Bit-Daten DATAO bis DATA7 „10“ sein. Zu dieser Zeit kann der Datensymbolzähler 121 0, die der Anzahl an Datenmustern „00“ in den ersten bis achten Multi-Bit-Daten DATA0 bis DATA7 entspricht, als ein erstes Zählsignal CNT0 ausgeben, 0, die der Anzahl an Datenmustern „01“ in den ersten bis achten Multi-Bit-Daten DATA0 bis DATA7 entspricht, als ein zweites Zählsignal CNT1 ausgeben, 8, die der Anzahl an Datenmustern „10“ in den ersten bis achten Multi-Bit-Daten DATA0 bis DATA7 entspricht, als ein drittes Zählsignal CNT2 ausgeben und 0, die der Anzahl an Datenmustern „11“ in den ersten bis achten Multi-Bit-Daten DATAO bis DATA7 entspricht, als ein viertes Zählsignal CNT3 ausgeben.
  • Im ersten DBI-Modus DBI_MD0 ist die Übertragungszählung des DBI-Symbols DBI_SB, das dem ersten Multi-Bit-Daten-Signal DBI 00 entspricht, 0. Wenn das Datenmuster „10“ im ersten DBI-Modus DBI_MD0 mittels DBI kodiert wird, wird das Datenmuster „10“ erzeugt und die Übertragungskosten für Datensymbole, die dem Datenmuster „10“ entsprechen (z.B. D_SB0 bis D_SB7 aus 13), sind 64 (=8*8). Somit sind die Gesamtübertragungskosten für den ersten DBI-Modus DBI_MD0 64 (=0+64).
  • Im zweiten DBI-Modus DBI MD1 ist die Übertragungszählung des DBI-Symbols DBI_SB, das einem zweiten Multi-Bit-DBI-Signal 01 entspricht, 5. Wenn das Datenmuster „10“ im zweiten DBI-Modus DBI_MD1 mittels DBI kodiert wird, wird das Datenmuster „11“ erzeugt und die Übertragungskosten für Datensymbole, die dem Datenmuster „11“ entsprechen (z.B. D_SB0 bis D_SB7 aus 13), sind 72 (=9*8). Somit sind die Gesamtübertragungskosten für den zweiten DBI-Modus DBI_MD1 77 (=5+72).
  • Im dritten DBI-Modus DBI_MD2 ist die Übertragungszählung des DBI-Symbols DBI_SB, das einem dritten Multi-Bit-DBI-Signal 10 entspricht, 8. Wenn das Datenmuster „10“ im dritten DBI-Modus DBI_MD2 mittels DBI kodiert wird, wird das Datenmuster „00“ erzeugt und die Übertragungskosten für Datensymbole, die dem Datenmuster „00“ entsprechen (z.B. D_SB0 bis D_SB7 aus 13), sind 0 (=0*8). Somit sind die Gesamtübertragungskosten für den dritten DBI-Modus DBI_MD2 8 (=8+0).
  • Im vierten DBI-Modus DBI_MD3 ist die Übertragungszählung des DBI-Symbols DBI_SB, das einem vierten Multi-Bit-DBI-Signal 11 entspricht, 9. Wenn das Datenmuster „10“ im vierten DBI-Modus DBI MD3 mittels DBI kodiert wird, wird das Datenmuster „Öl“ erzeugt und die Übertragungskosten für Datensymbole, die dem Datenmuster „01“ entsprechen (z.B. D_SB0 bis D_SB7 aus 13), sind 40 (=5*8). Somit sind die Gesamtübertragungskosten für den vierten DBI-Modus DBI_MD3 49 (=9+40).
  • Somit kann der DBI-Modus-Zuordner 122 die jeweiligen Gesamtübertragungskosten für den ersten bis vierten DBI-Modus DBI_MD0 bis DBI_MD3 als 64, 77, 8 und 49 berechnen und den dritten DBI-Modus DBI_MD2, der den Mindestübertragungskosten (das heißt 8) entspricht, aus den berechneten Gesamtübertragungskosten auswählen. Zu dieser Zeit ist das DBI-Symbol DBI_SB, das dem dritten DBI-Modus DBI_MD2 entspricht, 2.
  • 11 ist ein Blockdiagramm, das ein Speichersystem 10A nach einem Ausführungsbeispiel zeigt.
  • Bezugnehmend auf 11 kann das Speichersystem 10A eine Übertragungsvorrichtung 100A und eine Empfangsvorrichtung 200A enthalten und die Übertragungsvorrichtung 100A und die Empfangsvorrichtung 200A können über eine Mehrzahl an Datenkanälen DQ und mindestens eine DBI-Leitung oder einen DBI-Kanal DBI L miteinander kommunizieren. Das Speichersystem 10A entspricht einem modifizierten Beispiel für das in 1 gezeigte Speichersystem 10 und die oben mit Bezug auf 1 bis 10 gegebenen Beschreibungen können auch auf das vorliegende Ausführungsbeispiel angewandt werden.
  • Die Übertragungsvorrichtung 100A kann eine Mehrzahl an Multi-Modus-DBI-Kodierern 110A und eine DBI-Modus-Auswählvorrichtung 120A enthalten. In einer Ausführungsform können Multi-Bit-Daten 3-Bit-Daten DATA[2:0] („000“, „001“, „010“, „011“, „100“, „101“, „110“, und „111“) sein und ein Multi-Bit-DBI-Signal DBI_MD[2:0] kann ein 3-Bit-Signal sein. Somit kann die Übertragungsvorrichtung 100A ferner eine Mehrzahl an PAM-8-Datenübermittlern 130A und einen PAM-8-DBI-Übermittler 140A enthalten.
  • 12 ist eine Tabelle, die ein Beispiel für eine Mehrzahl an DBI-Modi nach dem Ausführungsbeispiel aus 11 zeigt.
  • Bezugnehmend auf 11 und 12 zusammen kann die DBI-Modus-Auswählvorrichtung 120A ein 3-Bit-DBI-Signal DBI MD[2:0] aus einer Mehrzahl an 3-Bit-DBI-Signalen, die jeweils den DBI-Modi entsprechen, gemäß den 3-Bit-Daten DATA[2:0] auswählen. Zum Beispiel können die DBI-Modi erste bis achte DBI-Modi MD0 bis MD7 enthalten.
  • Der erste DBI-Modus MD0 gibt zum Beispiel ein DBI-Kodierungsschema an, das nicht alle Bits der 3-Bit-Daten DATA[2:0] invertiert, und kann als „000“ angegeben werden.
  • Zum Beispiel kann der zweite DBI-Modus MD1 ein DBI-Kodierungsschema angeben, das lediglich das LSB der 3-Bit-Daten DATA[2:0] invertiert, und kann als „001“ angegeben werden. Zum Beispiel kann der dritte DBI-Modus MD2 ein DBI-Kodierungsschema angeben, das lediglich das mittelwertige Bit (CSB) der 3-Bit-Daten DATA[2:0] invertiert, und kann als „010“ angegeben werden. Zum Beispiel kann der vierte DBI-Modus MD3 ein DBI-Kodierungsschema angeben, das lediglich das CSB und das LSB der 3-Bit-Daten DATA[2:0] invertiert, und kann als ,,011" angegeben werden.
  • Zum Beispiel kann ein fünfter DBI-Modus MD4 ein DBI-Kodierungsschema angeben, das lediglich das MSB der 3-Bit-Daten DATA[2:0] invertiert, und kann als „100“ angegeben werden. Zum Beispiel kann ein sechster DBI-Modus MD5 ein DBI-Kodierungsschema angeben, das lediglich das MSB und das LSB der 3-Bit-Daten DATA[2:0] invertiert, und kann als „101“ angegeben werden. Zum Beispiel kann ein siebter DBI-Modus MD6 ein DBI-Kodierungsschema angeben, das lediglich das MSB und das CSB der 3-Bit-Daten DATA[2:0] invertiert, und kann als „110“ angegeben werden. Zum Beispiel kann der achte DBI-Modus MD7 ein DBI-Kodierungsschema angeben, das alle Bits der 3-Bit-Daten DATA[2:0] invertiert, und kann als „111“ angegeben werden.
  • Erneut bezugnehmend auf 11 können die Multi-Modus-DBI-Kodierer 110A jeweils eine Mehrzahl an Teilen von 3-Bit-Daten DATA[2:0] empfangen. Außerdem können die Multi-Modus-DBI-Kodierer 110A ein 3-Bit-DBI-Signal DBI MD[2:0] von der DBI-Modus-Auswählvorrichtung 120A empfangen und die 3-Bit-Daten DATA[2:0] gemäß dem empfangenen Multi-Bit-DBI-Signal DBI MD[2:0] mittels DBI kodieren, wodurch eine Mehrzahl an Teilen von kodierten 3-Bit-Daten EDATA[2:0] erzeugt wird.
  • Die PAM-8-Datenübermittler 130A können jeweils eine Mehrzahl an Datensymbolen D_SB durch Verwenden des PAM-8-Schemas aus den kodierten 3-Bit-Daten DATA[2:0] erzeugen und die erzeugten Datensymbole D_SB durch die Datenkanäle DQ an die Empfangsvorrichtung 200A übertragen. In diesem Fall kann jedes der Datensymbole D_SB einen aus einem ersten bis achten Spannungspegel abhängig von entsprechenden kodierten 3-Bit-Daten E_DATA[2:0] aufweisen. Der PAM-8-DBI-Übermittler 140A kann das DBI-Symbol DBI_SB mit einem aus dem ersten bis achten Spannungspegel durch Verwenden des PAM-8-Schemas aus dem 3-Bit-DBI-Signal DBI_MD[2:0] erzeugen und das erzeugte DBI-Symbol DBI_SB durch einen DBI-Kanal DBI_L an die Empfangsvorrichtung 200A übertragen.
  • Die Empfangsvorrichtung 200A kann eine Mehrzahl an PAM-8-Datenempfängern 210A, einen PAM-8-DBI-Empfänger 220A und eine Mehrzahl an Multi-Modus-DBI-Dekodierern 230A enthalten. Die PAM-8-Datenempfänger 220A können jeweils die Datensymbole D_SB durch die Datenkanäle DQ von der Übertragungsvorrichtung 100A empfangen und jeweils eine Mehrzahl an Teilen von kodierten 3-Bit-Daten E_DATA[2:0] durch Verwenden des PAM-8-Schemas aus den Datensymbolen D_SB erzeugen. Der PAM-8-DBI-Empfänger 220A kann das DBI-Symbol DBI_SB durch den DBI-Kanal DBI_L von der Übertragungsvorrichtung 100A empfangen und das 3-Bit-DBI-Signal DBI_MD[2:0] durch Verwenden des PAM-8-Schemas aus dem empfangenen DBI-Symbol DBI SB erzeugen.
  • 13 ist ein Blockdiagramm, das ein Speichersystem 20 gemäß einem ersten Kanalgruppierungsschema nach einem Ausführungsbeispiel zeigt.
  • Bezugnehmend auf 13 kann das Speichersystem 20 eine Übertragungsvorrichtung 300 und eine Empfangsvorrichtung 400 enthalten. Die Übertragungsvorrichtung 300 kann einen Multi-Modus-DBI-Kodierer 310 enthalten. Zum Beispiel kann der Multi-Modus-DBI-Kodierer 310 die Multi-Modus-DBI-Kodierer 110 und die Datenübermittler 130 aus 1 enthalten. Obwohl nicht gezeigt, kann die Übertragungsvorrichtung 300 ferner eine DBI-Modus-Auswählvorrichtung, die dem DBI-Kanal DBI_L entspricht, enthalten. Die Empfangsvorrichtung 400 kann einen Multi-Modus-DBI-Dekodierer 410 enthalten. Zum Beispiel kann der Multi-Modus-DBI-Dekodierer 410 die Datenempfänger 210 und die Multi-Modus-DBI-Dekodierer 230 aus 1 enthalten.
  • Gemäß dem ersten Kanalgruppierungsschema kann zum Beispiel ein DBI-Kanal DBI_L 8 Datenkanälen zugeordnet sein. Zum Beispiel können die Übertragungsvorrichtung 300 und die Empfangsvorrichtung 400 durch acht Datenkanäle DQ0 bis DQ7 und den einen DBI-Kanal DBI_L miteinander kommunizieren. Der Multi-Modus-DBI-Kodierer 310 kann ein erstes bis achtes Datensymbol D_SB0 bis D_SB7 aus ersten bis achten Multi-Bit-Daten DATAO bis DATA7 erzeugen und das erzeugte erste bis achte Datensymbol D_SB0 bis D_SB7 durch die 8 Datenkanäle DQ0 bis DQ7 an die Empfangsvorrichtung 400 übertragen. Die Übertragungsvorrichtung 300 kann das DBI-Symbol DBI_SB, das dem ersten bis achten Datensymbol D_SB0 bis D_SB7 entspricht, erzeugen und das erzeugte DBI-Symbol DBI_SB durch den einen DBI-Kanal DBI_L an die Empfangsvorrichtung 400 übertragen.
  • Der Multi-Modus-DBI-Dekodierer 410 kann das erste bis achte Datensymbol D_SB0 bis D_SB7 durch die 8 Datenkanäle DQ0 bis DQ7 von der Übertragungsvorrichtung 300 empfangen und das DBI-Symbol DBI_SB durch den einen DBI-Kanal DBI_L von der Übertragungsvorrichtung 300 empfangen. Der Multi-Modus-DBI-Dekodierer 410 kann die ersten bis achten Multi-Bit-Daten DATAO bis DATA7 jeweils durch Verwenden des empfangenen DBI-Symbols DBI_SB aus dem ersten bis achten Datensymbol D_SB0 bis D_SB7 erzeugen.
  • 14 ist ein Blockdiagramm, das ein Speichersystem 30 gemäß einem zweiten Kanalgruppierungsschema nach einem Ausführungsbeispiel zeigt.
  • Bezugnehmend auf 14 kann das Speichersystem 30 eine Übertragungsvorrichtung 500 und eine Empfangsvorrichtung 600 enthalten. Die Übertragungsvorrichtung 500 kann einen Multi-Modus-DBI-Kodierer 510 enthalten. Zum Beispiel kann der Multi-Modus-DBI-Kodierer 510 die Multi-Modus-DBI-Kodierer 110 und die Datenübermittler 130 aus 1 enthalten. Obwohl nicht gezeigt, kann die Übertragungsvorrichtung 500 ferner eine erste DBI-Modus-Auswählvorrichtung, die einem ersten DBI-Kanal DBI0_L entspricht, und eine zweite DBI-Modus-Auswählvorrichtung, die einem zweiten DBI-Kanal DBI1_L entspricht, enthalten. Die Empfangsvorrichtung 600 kann einen Multi-Modus-DBI-Dekodierer 610 enthalten. Zum Beispiel kann der Multi-Modus-DBI-Dekodierer 610 die Datenempfänger 210 und die Multi-Modus-DBI-Dekodierer 230 aus 1 enthalten.
  • Gemäß dem zweiten Kanalgruppierungsschema kann zum Beispiel ein DBI-Kanal DBI L 4 Datenkanälen zugeordnet sein. Zum Beispiel können die Übertragungsvorrichtung 500 und die Empfangsvorrichtung 600 durch die acht Datenkanäle DQ0 bis DQ7 und zwei DBI-Kanäle DBIO_L und DBI1_L miteinander kommunizieren. Der Multi-Modus-DBI-Kodierer 510 kann ein erstes bis viertes Datensymbol D_SB0 bis D_SB3 aus ersten bis vierten Multi-Bit-Daten DATAO bis DATA3 erzeugen und das erzeugte erste bis vierte Datensymbol D SB0 bis D_SB3 durch den ersten bis vierten Datenkanal DQ0 bis DQ3 an die Empfangsvorrichtung 600 übertragen. Die erste DBI-Modus-Auswählvorrichtung kann ein erstes Multi-Bit-DBI-Signal aus den ersten bis vierten Multi-Bit-Daten DATAO bis DATA3 erzeugen. Die Übertragungsvorrichtung 500 kann ein erstes DBI-Symbol DBI0_SB aus dem ersten Multi-Bit-DBI-Signal erzeugen und das erzeugte erste DBI-Symbol DBI0_SB durch den ersten DBI-Kanal DBI0_L an die Empfangsvorrichtung 600 übertragen.
  • Der Multi-Modus-DBI-Dekodierer 610 kann das erste bis vierte Datensymbol D_SB0 bis D_SB3 durch den ersten bis vierten Datenkanal DQ0 bis DQ3 von der Übertragungsvorrichtung 500 empfangen und das erste DBI-Symbol DBI0_SB durch den ersten DBI-Kanal DBI0_L von der Übertragungsvorrichtung 500 empfangen. Der Multi-Modus-DBI-Dekodierer 610 kann die ersten bis vierten Multi-Bit-Daten DATAO bis DATA3 jeweils durch Verwenden des empfangenen ersten DBI-Symbols DBI0_SB aus dem ersten bis vierten Datensymbol D_SB0 bis D_SB3 erzeugen.
  • Der Multi-Modus-DBI-Kodierer 510 kann ein fünftes bis achtes Datensymbol D_SB4 bis D SB7 aus fünften bis achten Multi-Bit-Daten DATA4 bis DATA7 erzeugen und das erzeugte fünfte bis achte Datensymbol D_SB4 bis D_SB7 durch einen fünften bis achten Datenkanal DQ4 bis DQ7 an die Empfangsvorrichtung 600 übertragen. Die zweite DBI-Modus-Auswählvorrichtung kann ein zweites Multi-Bit-DBI-Signal aus den fünften bis achten Multi-Bit-Daten DATA4 bis DATA7 erzeugen. Die Übertragungsvorrichtung 500 kann ein zweites DBI-Symbol DBI1_SB aus dem zweiten Multi-Bit-DBI-Signal erzeugen und das erzeugte zweite DBI-Symbol DBI1_SB durch den zweiten DBI-Kanal DBI1_L an die Empfangsvorrichtung 600 übertragen.
  • Der Multi-Modus-DBI-Dekodierer 610 kann das fünfte bis achte Datensymbol D_SB4 bis D_SB7 durch den fünften bis achten Datenkanal DQ4 bis DQ7 von der Übertragungsvorrichtung 500 empfangen und das zweite DBI-Symbol DBI1_SB durch den zweiten DBI-Kanal DBI1_L von der Übertragungsvorrichtung 500 empfangen. Der Multi-Modus-DBI-Dekodierer 610 kann die fünften bis achten Multi-Bit-Daten DATA4 bis DATA7 jeweils durch Verwenden des empfangenen zweiten DBI-Symbols DBI1_SB aus dem fünften bis achten Datensymbol D SB4 bis D_SB7 erzeugen.
  • 15 ist ein Blockdiagramm, das eine Speichervorrichtung 700 nach einem Ausführungsbeispiel zeigt.
  • Bezugnehmend auf 15 kann die Speichervorrichtung 700 einen Multi-Modus-DBI-Kodierer 710, eine DBI-Modus-Auswählvorrichtung 720, einen Sendeempfänger 730, ein Speicherzellenarray 740 und einen Multi-Modus-DBI-Dekodierer 750 enthalten. Die Speichervorrichtung 700 kann der Übertragungsvorrichtung 100 oder der Empfangsvorrichtung 200 aus 1, der Übertragungsvorrichtung 100A oder der Empfangsvorrichtung 200A aus 11, der Übertragungsvorrichtung 300 oder der Empfangsvorrichtung 400 aus 13 oder der Übertragungsvorrichtung 500 oder der Empfangsvorrichtung 600 aus 14 entsprechen und die oben mit Bezug auf 1 bis 14 gegebenen Beschreibungen können auch auf das vorliegende Ausführungsbeispiel angewandt werden.
  • Das Speicherzellenarray 740 kann eine Mehrzahl an Speicherzellen enthalten. In der vorliegenden Spezifikation kann der Begriff „Speichervorrichtung“ jegliche Vorrichtung enthalten, die eine Mehrzahl an Speicherzellen enthält. Zum Beispiel können die Speicherzellen dynamische Direktzugriffsspeicher(DRAM)-Zellen sein. Zum Beispiel kann die Speichervorrichtung DRAM enthalten, wie einen synchronen dynamischen Direktzugriffsspeicher mit doppelter Datenrate (DDR SDRAM), einen LPDD (LPDDR) SDRAM mit doppelter Datenrate mit niedriger Leistung, einen Grafik-SDRAM mit doppelter Datenrate (GDDR) und einen dynamischen Rambus-Direktzugriffsspeicher (RDRAM). Die Speichervorrichtung kann außerdem einen nichtflüchtigen Speicher enthalten, wie einen Flash-Speicher, einen magnetischen RAM (MRAM), einen ferroelektrischen RAM (FeRAM), einen Phasenübergangs-RAM (PRAM) und einen resistiven RAM (ReRAM).
  • Der Multi-Modus-DBI-Kodierer 710 und die DBI-Modus-Auswählvorrichtung 720 können im Speicherzellenarray 740 gespeicherte Multi-Bit-Daten DATA empfangen. Die DBI-Modus-Auswählvorrichtung 720 kann ein Multi-Bit-DBI-Signal DBI_MD aus einer Mehrzahl an Multi-Bit-DBI-Signalen, die jeweils einer Mehrzahl an DBI-Modi entsprechen, gemäß den Multi-Bit-Daten DATA auswählen und das ausgewählte Multi-Bit-DBI-Signal DBI_MD an den Multi-Modus-DBI-Kodierer 710 übermitteln. Der Multi-Modus-DBI-Kodierer 710 kann kodierte Multi-Bit-Daten E_DATA durch Kodieren der Multi-Bit-Daten DATA mittels DBI gemäß dem Multi-Bit-DBI-Signal DBI_MD erzeugen. Zum Beispiel kann der Multi-Modus-DBI-Kodierer 710 den Multi-Modus-DBI-Kodierer 110 aus 1 enthalten und die DBI-Modus-Auswählvorrichtung 720 kann die DBI-Modus-Auswählvorrichtung 120 aus 1 enthalten.
  • Der Sendeempfänger 730 kann das Datensymbol D_SB mit einem aus einer Mehrzahl an Spannungspegeln durch Verwenden eines PAM-Schemas aus den kodierten Multi-Bit-Daten E_DATA erzeugen und das erzeugte Datensymbol D_SB durch den Datenkanal DQ übertragen. Außerdem kann der Sendeempfänger 730 das DBI-Symbol DBI SB mit einem aus den Spannungspegeln durch Verwenden eines PAM-Schemas aus dem Multi-Bit-DBI-Signal DBI_MD erzeugen und das erzeugte DBI-Symbol DBI_SB durch den DBI-Kanal DBI_1 übertragen. Zum Beispiel kann der Sendeempfänger 730 den Datenübermittler 130 und den DBI-Übermittler 140 aus 1 enthalten.
  • Außerdem kann der Sendeempfänger 730 das Datensymbol D_SB durch den Datenkanal DQ empfangen und kodierte Multi-Bit-Eingabedaten E_DATAi aus dem empfangenen Datensymbol D_SB erzeugen. Außerdem kann der Sendeempfänger 730 das DBI-Symbol DBI_SB durch den DBI-Kanal DBI_L empfangen und ein Multi-Bit-Eingabe-DBI-Signal DBI_MDi aus dem empfangenen DBI-Symbol DBI_SB erzeugen. Zum Beispiel kann der Sendeempfänger 730 den Datenempfänger 210 und den DBI-Empfänger 220 aus 1 enthalten.
  • Der Multi-Modus-DBI-Dekodierer 750 kann Multi-Bit-Eingabedaten DATAi durch Dekodieren der kodierten Multi-Bit-Eingabedaten E DATAi mittels DBI in einem aus einer Mehrzahl an DBI-Modi ausgewählten DBI-Modus gemäß dem Multi-Bit-Eingabe-DBI-Signal DBI_MDi erzeugen. Die erzeugten Multi-Bit-Eingabedaten DATAi können im Speicherzellenarray 740 gespeichert sein. Zum Beispiel kann der Multi-Modus-DBI-Dekodierer 750 den Multi-Modus-DBI-Dekodierer 230 aus 1 enthalten.
  • 16 ist ein Blockdiagramm, das eine Datenverarbeitungsvorrichtung 800 nach einem Ausführungsbeispiel zeigt.
  • Bezugnehmend auf 16 kann die Datenverarbeitungsvorrichtung 800 einen Multi-Modus-DBI-Kodierer 810, eine DBI-Modus-Auswählvorrichtung 820, einen Sendeempfänger 830, einen Verarbeitungskern 840 und einen Multi-Modus-DBI-Dekodierer 850 enthalten. Die Speichervorrichtung 800 kann der Übertragungsvorrichtung 100 oder der Empfangsvorrichtung 200 aus 1, der Übertragungsvorrichtung 100A oder der Empfangsvorrichtung 200A aus 11, der Übertragungsvorrichtung 300 oder der Empfangsvorrichtung 400 aus 13 oder der Übertragungsvorrichtung 500 oder der Empfangsvorrichtung 600 aus 14 entsprechen und die oben mit Bezug auf 1 bis 14 gegebenen Beschreibungen können auch auf das vorliegende Ausführungsbeispiel angewandt werden.
  • Der Verarbeitungskern 840 kann einen Einzelkernprozessor oder einen Mehrkernprozessor enthalten. Zum Beispiel kann der Verarbeitungskern 840 enthalten: einen Allzweckprozessor, eine zentrale Verarbeitungseinheit (CPU), eine Grafikverarbeitungseinheit (GPU), einen Digitalsignalprozessor (DSP), einen Mikrocontroller (MCU), einen Mikroprozessor, einen Netzwerkprozessor, einen eingebetteten Prozessor, ein Field Programmable Gate Array (FPGA), einen anwendungsspezifischen Prozessor mit Befehlssatz (ASIP), einen Prozessor mit einer anwendungsspezifischen integrierten Schaltung (ASIC) etc. Zum Beispiel kann der Verarbeitungskern 840 als ein Common Processor Package, ein Mehrkernprozessor-Package, ein Ein-Chip-System(SoC)-Package, ein System-In-Package(SiP)-Package, ein Ein-Package-System(SOP)-Package etc. verpackt sein.
  • Der Multi-Modus-DBI-Kodierer 810 und die DBI-Modus-Auswählvorrichtung 820 können durch einen internen Datenbus mit dem Verarbeitungskern 840 elektrisch verbunden sein und können die Multi-Bit-Daten DATA unter der Steuerung des Verarbeitungskerns 840 empfangen. Zum Beispiel kann der Verarbeitungskern 840 die Multi-Bit-Daten DATA von einem internen Pufferspeicher an den Multi-Modus-DBI-Kodierer 810 und an die DBI-Modus-Auswählvorrichtung 820 übertragen werden. Die DBI-Modus-Auswählvorrichtung 820 kann ein Multi-Bit-DBI-Signal DBI_MD aus einer Mehrzahl an Multi-Bit-DBI-Signalen, die jeweils einer Mehrzahl an DBI-Modi entsprechen, gemäß den Multi-Bit-Daten DATA auswählen und das ausgewählte Multi-Bit-DBI-Signal DBI_MD an den Multi-Modus-DBI-Kodierer 810 übermitteln. Der Multi-Modus-DBI-Kodierer 810 kann kodierte Multi-Bit-Daten E_DATA durch Kodieren der Multi-Bit-Daten DATA mittels DBI gemäß dem Multi-Bit-DBI-Signal DBI_MD erzeugen. Zum Beispiel kann der Multi-Modus-DBI-Kodierer 810 den Multi-Modus-DBI-Kodierer 110 aus 1 enthalten und die DBI-Modus-Auswählvorrichtung 820 kann die DBI-Modus-Auswählvorrichtung 120 aus 1 enthalten.
  • Der Sendeempfänger 830 kann das Datensymbol D SB mit einem aus einer Mehrzahl an Spannungspegeln durch Verwenden eines PAM-Schemas aus den kodierten Multi-Bit-Daten E_DATA erzeugen und das erzeugte Datensymbol D_SB durch den Datenkanal DQ übertragen. Außerdem kann der Sendeempfänger 830 das DBI-Symbol DBI_SB mit einem aus den Spannungspegeln durch Verwenden eines PAM-Schemas aus dem Multi-Bit-DBI-Signal DBI_MD erzeugen und das erzeugte DBI-Symbol DBI_SB durch den DBI-Kanal DBI L übertragen bzw. senden. Zum Beispiel kann der Sendeempfänger 830 den Datenübermittler 130 und den DBI-Übermittler 140 aus 1 enthalten.
  • Außerdem kann der Sendeempfänger 830 das Datensymbol D_SB durch den Datenkanal DQ empfangen und kodierte Multi-Bit-Eingabedaten E_DATAi aus dem empfangenen Datensymbol D SB erzeugen. Außerdem kann der Sendeempfänger 830 das DBI-Symbol DBI_SB durch den DBI-Kanal DBI_L empfangen und ein Multi-Bit-Eingabe-DBI-Signal DBI_MDi aus dem empfangenen DBI-Symbol DBI_SB erzeugen. Zum Beispiel kann der Sendeempfänger 830 den Datenempfänger 210 und den DBI-Empfänger 220 aus 1 enthalten.
  • Der Multi-Modus-DBI-Dekodierer 850 kann Multi-Bit-Eingabedaten DATAi durch Dekodieren der kodierten Multi-Bit-Eingabedaten E_DATAi mittels DBI gemäß dem Multi-Bit-Eingabe-DBI-Signal DBI_MDi erzeugen. Der Multi-Modus-DBI-Dekodierer 850 kann durch einen internen Datenbus mit dem Verarbeitungskern 840 elektrisch verbunden sein. Der Multi-Modus-DBI-Dekodierer 850 kann die Multi-Bit-Eingabedaten DATAi an den internen Pufferspeicher übertragen und der Verarbeitungskern 840 kann die Multi-Bit-Eingabedaten DATAi durch Zugreifen auf den internen Pufferspeicher lesen. Zum Beispiel kann der Multi-Modus-DBI-Dekodierer 850 den Multi-Modus-DBI-Dekodierer 230 aus 1 enthalten.
  • 17 ist ein Flussdiagramm eines Datenübertragungsverfahrens nach einem Ausführungsbeispiel.
  • Bezugnehmend auf 17 ist ein Datenübertragungsverfahren nach dem vorliegenden Ausführungsbeispiel ein Verfahren zum Übertragen von Daten durch eine Speicherschnittstelle, wie einem Datenkanal, und kann zum Beispiel in der Übertragungsvorrichtung 100 aus 1 durchgeführt werden. Das Datenübertragungsverfahren nach dem vorliegenden Ausführungsbeispiel kann außerdem zum Beispiel in der Übertragungsvorrichtung 100A aus 11, der Übertragungsvorrichtung 300 aus 13, der Übertragungsvorrichtung 500 aus 14 und der Speichervorrichtung 700 aus 15 oder der Datenverarbeitungsvorrichtung 800 aus 16 durchgeführt werden. Die oben mit Bezug auf 1 bis 16 gegebenen Beschreibungen können auf das vorliegende Ausführungsbeispiel angewandt werden.
  • In Operation S110 wählt die Übertragungsvorrichtung 100 ein erstes Multi-Bit-DBI-Signal aus einer Mehrzahl an Multi-Bit-DBI-Signalen, die jeweils einer Mehrzahl an DBI-Modi entsprechen, gemäß Multi-Bit-Daten aus. Zum Beispiel können die Multi-Bit-Daten 2-Bit-Daten oder 3-Bit-Daten sein und das erste Multi-Bit-DBI-Signal kann ein 2-Bit-Signal oder ein 3-Bit-Signal sein.
  • In Operation S120 erzeugt die Übertragungsvorrichtung 100 kodierte Multi-Bit-Daten durch Kodieren der Multi-Bit-Daten mittels DBI in einem aus den DBI-Modi ausgewählten DBI-Modus gemäß dem ersten Multi-Bit-DBI-Signal. Zum Beispiel kann die Übertragungsvorrichtung 100 die kodierten Multi-Bit-Daten durch selektives Invertieren einer in den Multi-Bit-Daten enthaltenen Mehrzahl an Bits gemäß dem ersten Multi-Bit-DBI-Signal erzeugen.
  • In Operation S130 überträgt die Übertragungsvorrichtung 100 ein Datensymbol und ein DBI-Symbol jeweils durch einen Datenkanal und einen DBI-Kanal. Zum Beispiel kann die Übertragungsvorrichtung 100 ein Datensymbol mit einem aus einer Mehrzahl an Spannungspegeln durch Verwenden eines PAM-Schemas aus den kodierten Multi-Bit-Daten erzeugen und das erzeugte Datensymbol durch den Datenkanal übertragen. Zum Beispiel kann die Übertragungsvorrichtung 100 ein DBI-Symbol mit einem aus einer Mehrzahl an Spannungspegeln durch Verwenden eines PAM-Schemas aus dem Multi-Bit-DBI-Signal erzeugen und das erzeugte DBI-Symbol durch den DBI-Kanal übertragen.
  • 18 ist ein Flussdiagramm eines Datenempfangsverfahrens nach einem Ausfuhrungsbeispiel.
  • Bezugnehmend auf 18 ist das Datenempfangsverfahren nach dem vorliegenden Ausführungsbeispiel ein Verfahren zum Empfangen von Daten durch eine Speicherschnittstelle, wie einem Datenkanal, und kann in der Empfangsvorrichtung 200 aus 1 durchgeführt werden. Das Datenempfangsverfahren nach dem vorliegenden Ausführungsbeispiel kann außerdem zum Beispiel in der Empfangsvorrichtung 200A aus 11, der Empfangsvorrichtung 400 aus 13, der Empfangsvorrichtung 600 aus 14 und der Speichervorrichtung 700 aus 15 oder der Datenverarbeitungsvorrichtung 800 aus 16 durchgeführt werden. Die oben mit Bezug auf 1 bis 16 gegebenen Beschreibungen können auf das vorliegende Ausführungsbeispiel angewandt werden.
  • In Operation S210 empfängt die Empfangsvorrichtung 200 ein Datensymbol und ein DBI-Symbol jeweils durch einen Datenkanal und einen DBI-Kanal. Zum Beispiel kann die Empfangsvorrichtung 200 eine Mehrzahl an Datensymbolen parallel durch eine Mehrzahl an Datenkanälen empfangen und die Empfangsvorrichtung 200 kann mindestens ein DBI-Symbol durch mindestens einen DBI-Kanal empfangen.
  • In Operation S220 erzeugt die Empfangsvorrichtung 200 jeweils kodierte Multi-Bit-Daten und ein Multi-Bit-DBI-Signal aus dem Datensymbol und dem DBI-Symbol. In allen Einzelheiten kann die Empfangsvorrichtung 200 kodierte Multi-Bit-Daten gemäß dem Spannungspegel des Datensymbols durch Verwenden eines PAM-Schemas erzeugen. Außerdem kann die Empfangsvorrichtung 200 ein Multi-Bit-DBI-Signal gemäß dem Spannungspegel des DBI-Symbols durch Verwenden eines PAM-Schemas erzeugen.
  • In Operation S230 erzeugt die Empfangsvorrichtung 200 Multi-Bit-Daten durch Dekodieren der kodierten Multi-Bit-Daten mittels DBI in einem aus einer Mehrzahl an DBI-Modi ausgewählten Modus gemäß dem Multi-Bit-DBI-Signal. Zum Beispiel kann die Empfangsvorrichtung 200 die Multi-Bit-Daten durch selektives Invertieren einer in den kodierten Multi-Bit-Daten enthaltenen Mehrzahl an Bits gemäß dem Multi-Bit-DBI-Signal erzeugen.
  • 19 ist ein Blockdiagramm, das ein Berechnungssystem 1000 nach einem Ausführungsbeispiel zeigt.
  • Bezugnehmend auf 19 kann das Berechnungssystem 1000 als eine einzelne elektronische Vorrichtung oder auf zwei oder mehr elektronische Vorrichtungen verteilt implementiert sein. Zum Beispiel kann das Berechnungssystem 1000 als mindestens eines aus verschiedenen elektronischen Vorrichtungen, wie einem Tischcomputer, einem Laptop, einem Tablet, einem Smartphone, einem autonomen Fahrzeug, einer Digitalkamera, einer tragbaren Vorrichtung, einer medizinischen Vorrichtung, einem Serversystem, einem Datencenter, einer Drohne, einer Handspielekonsole, einer Internet-der-Dinge(IoT)-Vorrichtung etc., implementiert sein.
  • Das Berechnungssystem 1000 kann einen Host 1100, ein Beschleunigungsteilsystem 1200 und eine Zwischenverbindung 1300 enthalten. Der Host 1100 kann den Gesamtbetrieb des Beschleunigungsteilsystems 1200 steuern und das Beschleunigungsteilsystem 1200 kann unter der Steuerung des Hosts 1100 operieren. Der Host 1100 und das Beschleunigungsteilsystem 1200 können durch die Zwischenverbindung 1300 miteinander verbunden sein. Verschiedene Signale und Daten können durch die Zwischenverbindung 1300 zwischen dem Host 1100 und dem Beschleunigungsteilsystem 1200 übertragen und empfangen werden.
  • Der Host 1100 kann einen Host-Prozessor 1110, einen Host-Speichercontroller 1120, einen Host-Speicher 1130 und eine Schnittstelle 1140 enthalten. Der Host-Prozessor 1110 kann den Gesamtbetrieb des Berechnungssystems 1000 steuern. Der Host-Prozessor 1110 kann den Host-Speicher 1130 durch den Host-Speichercontroller 1120 steuern. Zum Beispiel kann der Host-Prozessor 1110 Daten aus dem Host-Speicher 1130 lesen oder Daten in den Host-Speicher 1130 schreiben. Der Host-Prozessor 1110 kann das durch die Zwischenverbindung 1300 verbundene Beschleunigungsteilsystem 1200 steuern. Zum Beispiel kann der Host-Prozessor 1110 einen Befehl an das Beschleunigungsteilsystem 1200 übertragen, um dem Beschleunigungsteilsystem 1200 eine Aufgabe zuzuordnen.
  • Der Host-Prozessor 1110 kann ein Allzweckprozessor oder ein Hauptprozessor sein, der allgemeine Berechnungen im Zusammenhang mit verschiedenen Operationen des Berechnungssystems 1000 durchführt. Zum Beispiel kann der Host-Prozessor 1110 eine zentrale Verarbeitungseinheit (CPU) oder ein Anwendungsprozessor (AP) sein.
  • Der Host-Speicher 1130 kann ein Hauptspeicher des Berechnungssystems 1000 sein. Der Host-Speicher 1130 kann vom Host-Prozessor 1110 verarbeitete Daten speichem oder kann vom Beschleunigungsteilsystem 1200 empfangene Daten speichern. Zum Beispiel kann der Host-Speicher 1130 einen DRAM enthalten. In einer weiteren Umsetzung kann der Host-Speicher 1130 einen flüchtigen Speicher, wie einen SRAM, und/oder einen nichtflüchtigen Speicher, wie einen Flash-Speicher, einen PRAM, einen RRAM und einen MRAM, enthalten.
  • In einem Ausführungsbeispiel können der Host-Prozessor 1110 und der Host-Speicher 1130 durch eine Mehrzahl an Datenkanälen und mindestens einen DBI-Kanal miteinander kommunizieren. Datensymbole, die Multi-Bit-Daten entsprechen, können jeweils durch eine Mehrzahl an Datenkanälen übertragen und empfangen werden. Außerdem kann ein DBI-Symbol, das einem Multi-Bit-DBI-Signal, das einen aus einer Mehrzahl an DBI-Modi angibt, entspricht, durch den DBI-Kanal übertragen und empfangen werden. In diesem Fall können die Multi-Bit-Daten gemäß dem Multi-Bit-DBI-Signal mittels DBI kodiert werden. Der Host-Prozessor 1110 und der Host-Speicher 1130 können mit Bezug auf die in 1 bis 18 gezeigten Ausführungsformen implementiert werden.
  • Die Schnittstelle 1140 kann derart konfiguriert sein, dass der Host 1100 dadurch mit dem Beschleunigungsteilsystem 1200 kommuniziert. Der Host-Prozessor 1110 kann Steuersignale und -daten an das Beschleunigungsteilsystem 1200 übertragen und Signale und Daten durch die Schnittstelle 1140 vom Beschleunigungsteilsystem 1200 empfangen. In einem Ausführungsbeispiel können der Host-Prozessor 1110, der Host-Speichercontroller 1120 und die Schnittstelle 1140 als ein einzelner Chip implementiert sein.
  • Das Beschleunigungsteilsystem 1200 kann eine bestimmte Funktion unter der Steuerung des Hosts 1100 durchführen. Zum Beispiel kann das Beschleunigungsteilsystem 1200 für eine bestimmte Anwendung spezialisierte Berechnungen unter der Steuerung des Hosts 1100 durchführen. Das Beschleunigungsteilsystem 1200 kann in einer von verschiedenen Formen, wie einem Modul, einer Karte, einem Package, einem Chip oder einer Vorrichtung, die mit dem Host 1100 physikalisch oder elektrisch verbunden sind oder über einen Draht oder drahtlos mit dem Host 1100 verbunden sind, implementiert sein. Zum Beispiel kann das Beschleunigungsteilsystem 1200 als eine Grafikarte oder eine Beschleunigungskarte implementiert sein. Zum Beispiel kann das Beschleunigungsteilsystem 1200 basierend auf einem Field Programmable Gate Array (FPGA) oder einer anwendungsspezifischen integrierten Schaltung (ASIC) implementiert sein.
  • In einem Ausführungsbeispiel kann das Beschleunigungsteilsystem 1200 basierend auf einer von verschiedenen Packaging-Techniken implementiert werden. Zum Beispiel kann das Beschleunigungsteilsystem 1200 durch Verwenden von Packaging-Techniken wie Ball Grid Arrays (BGAs), einem Multi-Chip-Package (MCP), einem Ein-Package-System (SOP), einem System-In-Package (SiP), Package-On-Package (POP), Chip-Scale-Packages (CSPs), einem Wafer-Level-Package (WLP) oder einem Panel-Level-Package (PLP) implementiert werden. Zum Beispiel können einige oder alle Komponenten des Beschleunigungsteilsystems 1200 durch Kupfer-zu-Kupfer-Bonding verbunden sein. Zum Beispiel können einige oder alle Komponenten des Beschleunigungsteilsystems 1200 durch ein Zwischenstück, wie ein Siliziumzwischenstück, ein organisches Zwischenstück, ein Glaszwischenstück oder ein aktives Zwischenstück, verbunden sein. Wenn zum Beispiel einige oder alle Komponenten des Beschleunigungsteilsystems 1200 gestapelt sind, können die Komponenten basierend auf einer Siliziumdurchkontaktierung (TSV) gestapelt sein. Zum Beispiel können einige oder alle Komponenten des Beschleunigungsteilsystems 1200 durch einen Hochgeschwindigkeits-Verbindungskanal (z.B. eine Siliziumbrücke) verbunden sein.
  • Das Beschleunigungsteilsystem 1200 kann einen dedizierten Prozessor 1210, einen lokalen Speichercontroller 1220, einen lokalen Speicher 1230 und eine Host-Schnittstelle 1240 enthalten. Der dedizierte Prozessor 1210 kann unter der Steuerung des Host-Prozessors 1110 operieren. Zum Beispiel kann der dedizierte Prozessor 1210 als Reaktion auf einen Befehl des Host-Prozessors 1110 Daten durch den lokalen Speichercontroller 1220 aus dem lokalen Speicher 1230 lesen. Der dedizierte Prozessor 1210 kann Daten durch Verarbeiten einer Berechnung basierend auf den gelesenen Daten verarbeiten. Der dedizierte Prozessor 1210 kann verarbeitete Daten an den Host-Prozessor 1110 übertragen oder kann die verarbeiteten Daten in den lokalen Speicher 1230 schreiben.
  • Der dedizierte Prozessor 1210 kann für eine bestimmte Anwendung spezialisierte Berechnungen basierend auf im lokalen Speicher 1230 gespeicherten Werten durchführen. Zum Beispiel kann der dedizierte Prozessor 1210 Berechnungen, die für Anwendungen wie eine künstliche Intelligenz, eine Streaming-Analyse, eine Videotranskodierung, eine Datenindizierung, eine Datenkodierung/-dekodierung und Datenverschlüsselung spezialisiert sind, durchführen. Somit kann der dedizierte Prozessor 1210 verschiedene Arten von Daten, wie Bilddaten, Sprachdaten, Bewegungsdaten, biometrische Daten und Schlüsselwerte, verarbeiten. Zum Beispiel kann der dedizierte Prozessor 1210 mindestens eines von einer Grafikverarbeitungseinheit (GPU), einer neuronalen Verarbeitungseinheit (NPU), einer Tensorverarbeitungseinheit (TPU), einer Visionsverarbeitungseinheit (VPU), einem Bildsignalprozessor (ISP) und einem Digitalsignalprozessor (DSP) enthalten.
  • Der dedizierte Prozessor 1210 kann einen Prozessorkern enthalten oder kann eine Mehrzahl an Prozessorkernen, wie einen Doppelkern, einen Vierfachkern und einen Sechsfachkern, enthalten. In einem Ausführungsbeispiel kann der dedizierte Prozessor 1210 eine größere Anzahl an Kernen als der Host-Prozessor 1110 für eine auf Parallelismus spezialisierte Berechnung enthalten. Zum Beispiel kann der dedizierte Prozessor 1210 eintausend oder mehr Kerne enthalten. In diesem Fall können die Kerne Daten mit wenig bis keiner Abhängigkeit voneinander parallel verarbeiten.
  • In einem Ausführungsbeispiel kann der dedizierte Prozessor 1210 ein auf eine Bilddatenberechnung spezialisierter Prozessor sein. In diesem Fall kann der dedizierte Prozessor 1210 eine Berechnung durch Lesen von im lokalen Speicher 1230 gespeicherten Bilddaten durch den lokalen Speichercontroller 1220 durchführen. Der dedizierte Prozessor 1210 kann ein Berechnungsergebnis des Host-Prozessors 1110 übertragen oder kann das Berechnungsergebnis im lokalen Speicher 1230 speichern. Der Host-Prozessor 1110 kann das übertragene Berechnungsergebnis im Host-Speicher 1130 oder einem Frame-Puffer, der einem separaten Speicher zugeordnet ist, speichern. Im Frame-Puffer gespeicherte Daten können an eine separate Anzeigevorrichtung übertragen werden.
  • In einem Ausführungsbeispiel kann der dedizierte Prozessor 1210 ein Prozessor sein, der auf eine Trainingsberechnung, die auf einem neuronalen Netzwerk basiert, und eine Inferenzberechnung spezialisiert ist. Der dedizierte Prozessor 1210 kann neuronale Netzwerkparameter (z.B. neuronale Netzwerkmodellparameter, Gewichtungen, Vorspannungen etc.) aus dem lokalen Speicher 1230 lesen, um eine Trainingsberechnung oder eine Inferenzberechnung durchzuführen. Die neuronalen Netzwerkparameter können vom Host-Prozessor 1110 vorgesehene Werte, vom dedizierten Prozessor 1210 verarbeitete Werte oder zuvor gespeicherte Werte sein. Zum Beispiel kann der Host-Prozessor 1110 Gewichtungsparameter für eine Inferenzberechnung an den dedizierten Prozessor 1210 übermitteln. In diesem Fall können die Gewichtungsparameter durch eine Trainingsberechnung des Host-Prozessors 1110 aktualisierte Parameter sein. Der dedizierte Prozessor 1210 kann ein Training oder eine Inferenz, die auf neuronalen Netzwerkparametern des lokalen Speichers 1230 basieren, durch eine Matrixproduktberechnung und eine kumulative Berechnung durchführen. Der dedizierte Prozessor 1210 kann ein Berechnungsergebnis an den Host-Prozessor 1110 übertragen oder kann das Berechnungsergebnis im lokalen Speicher 1230 speichern.
  • Der lokale Speichercontroller 1220 kann den Gesamtbetrieb des lokalen Speichers 1230 steuern. In einem Ausführungsbeispiel kann der lokale Speichercontroller 1220 im lokalen Speicher 1230 zu speichernde Daten verarbeiten und die verarbeiteten Daten in den lokalen Speicher 1230 schreiben. In einer weiteren Umsetzung kann der lokale Speichercontroller 1220 aus dem lokalen Speicher 1230 gelesene Daten verarbeiten. Zum Beispiel kann der lokale Speichercontroller 1220 eine Fehlerkorrekturcode(ECC)-Kodierung und ECC-Dekodierung durchführen oder eine Datenverschlüsselung und Datenentschlüsselung durchführen.
  • Der lokale Speicher 1230 kann exklusiv vom dedizierten Prozessor 1210 verwendet werden. Der lokale Speicher 1230 kann zum Beispiel einen DRAM enthalten. Als ein weiteres Beispiel kann der lokale Speicher 1230 mindestens einen flüchtigen Speicher, wie einen SRAM, und einen nichtflüchtigen Speicher, wie einen Flash-Speicher, einen PRAM, einen RRAM und einen MRAM, enthalten. Der lokale Speicher 1230 kann zum Beispiel in verschiedenen Formen, wie einem Plättchen, einem Chip, einem Package-Modul, einer Karte und einer Vorrichtung, die auf einem einzelnen Substrat mit dem dedizierten Prozessor 1210 angebracht werden sollen oder basierend auf einem separaten Connector mit dem dedizierten Prozessor 1210 verbunden werden sollen, ausgebildet sein.
  • In einem Ausführungsbeispiel kann der lokale Speicher 1230 eine Struktur aufweisen, die 32 oder mehr Datenpins enthält. Zum Beispiel kann der lokale Speicher 1230 1024 oder mehr Datenpins zum Vorsehen einer weiten Bandbreite enthalten. In einem Ausführungsbeispiel kann die Busbreite pro Chip des lokalen Speichers 1230 größer sein als die Busbreite pro Chip des Host-Speichers 1130.
  • In einem Ausführungsbeispiel kann der lokale Speicher 1230 basierend auf einem Grafikspeicher mit doppelter Datenrate (GDDR), einem hohen Bandbreitenspeicher (HBM), einem Hybridspeicherwürfel (HMC) oder einer weiten I/O-Schnittstelle operieren. Allerdings kann der lokale Speicher 1230 basierend auf verschiedenen Standard-Schnittstellen operieren.
  • In einem Ausführungsbeispiel kann der lokale Speicher 1230 eine Logikschaltung enthalten, die zur Durchführung von Berechnungen imstande ist. Die Logikschaltung kann lineare Berechnungen, Vergleichsberechnungen, Kompressionsberechnungen, Datenumwandlungsberechnungen, arithmetische Berechnungen etc. an aus dem lokalen Speicher 1230 gelesenen Daten oder in den lokalen Speicher 1230 zu schreibenden Daten durchführen. Dementsprechend kann die Größe der von der Logikschaltung verarbeiteten Daten reduziert werden. Wenn die Größe der Daten reduziert wird, kann die Effizienz der Bandbreite zwischen dem lokalen Speicher 1230 und dem lokalen Speichercontroller 1220 verbessert werden.
  • In einem Ausführungsbeispiel können der dedizierte Prozessor 1210 und der lokale Speicher 1230 durch eine Mehrzahl an Datenkanälen und mindestens einen DBI-Kanal miteinander kommunizieren. Datensymbole, die Multi-Bit-Daten entsprechen, können jeweils durch eine Mehrzahl an Datenkanälen übertragen und empfangen werden. Außerdem kann ein DBI-Symbol, das einem Multi-Bit-DBI-Signal, das einen aus einer Mehrzahl an DBI-Modi angibt, entspricht, durch den DBI-Kanal übertragen und empfangen werden. In diesem Fall können die Multi-Bit-Daten gemäß dem Multi-Bit-DBI-Signal mittels DBI kodiert werden. Der dedizierte Prozessor 1210 und der lokale Speicher 1230 können mit Bezug auf die in 1 bis 18 gezeigten Ausführungsformen implementiert sein.
  • Die Host-Schnittstelle 1240 kann derart konfiguriert sein, dass das Beschleunigungsteilsystem 1200 dadurch mit dem Host 1100 kommuniziert. Das Beschleunigungsteilsystem 1200 kann Signale und Daten an den Host 1100 übertragen und Steuersignale und -daten durch die Host-Schnittstelle 1240 vom Host 1100 empfangen. In einem Ausführungsbeispiel können der dedizierte Prozessor 1210, der lokale Speichercontroller 1220 und die Host-Schnittstelle 1240 als ein einzelner Chip implementiert sein.
  • Die Zwischenverbindung 1300 kann einen Datenübertragungspfad zwischen dem Host 1100 und dem Beschleunigungsteilsystem 1200 vorsehen und als ein Datenbus oder eine Datenverknüpfung dienen. Der Datenübertragungspfad kann über einen Draht oder drahtlos ausgebildet sein. Die Schnittstelle 1140 und die Host-Schnittstelle 1240 können basierend auf einem vorbestimmten Protokoll durch die Zwischenverbindung 1300 miteinander kommunizieren. Zum Beispiel können die Schnittstelle 1140 und die Host-Schnittstelle 1240 basierend auf einem von verschiedenen Standardprotokollen, wie einem Advanced Technology Attachment (ATA), einem Serial ATA (ATA), einem externen SATA (e-SATA), einer Small Computer Small Interface (SCSI), einem Serial Attached SCSI (SAS), einer Peripheral Component Interconnection (PCI), einem PCI-Express (PCIe), einem NVM-Express (NVMe), einer Advanced Extensible Interface (AXI), einer ARM Microcontroller Bus Architecture (AMBA), IEEE 1394, einem Universal Serial Bus (USB), oder Protokollen für eine Secure Digital (SD) Card, eine Multi-Media-Karte (MMC), eine eingebettete Multi-Media-Karte (eMMC), einen Universal-Flash-Speicher (UFS), einen Compact Flash (CF) und Gen-Z, miteinander kommunizieren. In einem Ausführungsbeispiel können die Schnittstelle 1140 und die Host-Schnittstelle 1240 basierend auf einer Inter-Vorrichtungskommunikationsverknüpfung, wie einer kohärenten Beschleunigungsprozessorschnittstelle (openCAPI), kohärenten Cache-Zwischenverbindungen für Beschleuniger (CCIX), einem Compute Express Link (CXL) und NVLINK, miteinander kommunizieren. In einem Ausführungsbeispiel können die Schnittstelle 1140 und die Host-Schnittstelle 1240 basierend auf einer drahtlosen Kommunikationsverbindungstechnik, wie LTE, 5G, LTE-M, NB-IoT, LPWAN, Bluetooth, Near Field Communication (NFC), Zigbee, Z-Wave und WLAN, miteinander kommunizieren.
  • In einem Ausführungsbeispiel kann das Beschleunigungsteilsystem 1200 ferner einen Sensor enthalten, der zur Erfassung von Bilddaten, Sprachdaten, Bewegungsdaten, biometrischen Daten und Umgebungsinformationen imstande ist. In einem Ausführungsbeispiel kann der Sensor, wenn ein Sensor im Beschleunigungsteilsystem 1200 enthalten ist, basierend auf der oben beschriebenen Packaging-Technik mit anderen Komponenten (z.B. dem dedizierten Prozessor 1210 und dem lokalen Speicher 1230) verbunden sein. Das Beschleunigungsteilsystem 1200 kann durch einen Sensor erfasste Daten basierend auf bestimmten Berechnungen verarbeiten.
  • Obwohl 19 zeigt, dass der dedizierte Prozessor 1210 einen lokalen Speicher 1230 durch einen lokalen Speichercontroller 1220 verwendet, kann der dedizierte Prozessor 1210 eine Mehrzahl an lokalen Speichern durch den einen lokalen Speichercontroller 1220 verwenden. In einem weiteren Ausführungsbeispiel kann der dedizierte Prozessor 1210 lokale Speicher, die jeweils einer Mehrzahl an lokalen Speichercontrollern entsprechen, verwenden.
  • Die oben mit Bezug auf 1 bis 19 beschriebenen Ausführungsformen können synchrone dynamische Grafik-Direktzugriffsspeicher mit doppelter Datenrate eines sechsten Typs (GDDR6) oder synchrone dynamische Grafik-Direktzugriffsspeicher mit doppelter Datenrate eines siebten Typs (GDDR7) sein.
  • Hierin sind Ausführungsbeispiele offenbart worden und obwohl spezifische Begriffe verwendet werden, werden sie lediglich als in einem allgemeinen und beschreibenden Sinn und nicht zu Beschränkungszwecken verwendet und sollen auch nicht derart interpretiert werden. In einigen Fällen, wie ein für die vorliegende Anmeldung zuständiger Fachmann erkennen wird, können Merkmale, Eigenschaften und/oder Elemente, die in Verbindung mit einer bestimmten Ausführungsform beschrieben werden, alleine oder in Kombination mit Merkmalen, Eigenschaften und/oder Elementen, die in Verbindung mit anderen Ausführungsformen beschrieben werden, verwendet werden, sofern nicht spezifisch anders angegeben. Somit versteht es sich für einen Fachmann, dass verschiedene Änderungen in Form und Details darin vorgenommen werden können, ohne dabei vom Umfang der vorliegenden Erfindung, wie sie in den nachfolgenden Ansprüchen dargelegt ist, abzuweichen.

Claims (20)

  1. Speichervorrichtung, aufweisend: eine Datenbusinversions(DBI)-Modus-Auswählvorrichtung, die konfiguriert ist, ein erstes Multi-Bit-DBI-Signal aus einer Mehrzahl an Multi-Bit-DBI-Signalen, die jeweils einer Mehrzahl an DBI-Modi entsprechen, gemäß Multi-Bit-Daten auszuwählen; einen Multi-Modus-DBI-Kodierer, der konfiguriert ist, kodierte Multi-Bit-Daten durch eine DBI-Kodierung der Multi-Bit-Daten gemäß dem ersten Multi-Bit-DBI-Signal zu erzeugen; und einen Sendeempfänger, der konfiguriert ist, ein Datensymbol, das den kodierten Multi-Bit-Daten entspricht, durch einen Datenkanal zu übertragen und ein DBI-Symbol, das dem ersten Multi-Bit-DBI-Signal entspricht, durch einen DBI-Kanal zu übertragen.
  2. Speichervorrichtung nach Anspruch 1, wobei: die Multi-Bit-Daten 2-Bit-Daten enthalten, und jedes der Mehrzahl an Multi-Bit-DBI-Signalen ein 2-Bit-Signal enthält.
  3. Speichervorrichtung nach Anspruch 2, wobei die Mehrzahl an DBI-Modi enthält: einen ersten DBI-Modus, in dem alle Bits der 2-Bit-Daten nicht invertiert sind; einen zweiten DBI-Modus, in dem lediglich ein niedrigstwertiges Bit (LSB) der 2-Bit-Daten invertiert ist; einen dritten DBI-Modus, in dem lediglich ein höchstwertiges Bit (MSB) der 2-Bit-Daten invertiert ist; und einen vierten DBI-Modus, in dem alle Bits der 2-Bit-Daten invertiert sind.
  4. Speichervorrichtung nach Anspruch 2, wobei der Sendeempfänger enthält: einen Daten-Sendeempfänger, der konfiguriert ist, das Datensymbol mit einem Spannungspegel aus einem ersten bis vierten Spannungspegel durch Verwenden eines Pulsamplitudenmodulations(PAM)-4-Schemas aus den 2-Bit-Daten zu erzeugen; und einen DBI-Sendeempfänger, der konfiguriert ist, das DBI-Symbol mit einem Spannungspegel aus dem ersten bis vierten Spannungspegel durch Verwenden des PAM-4-Schemas aus dem ersten Multi-Bit-DBI-Signal zu erzeugen.
  5. Speichervorrichtung nach Anspruch 1, wobei: die Multi-Bit-Daten 3-Bit-Daten enthalten, jedes der Mehrzahl an Multi-Bit-DBI-Signalen ein 3-Bit-Signal enthält, und der Sendeempfänger enthält: einen Daten-Sendeempfänger, der konfiguriert ist, das Datensymbol mit einem Spannungspegel aus einem ersten bis achten Spannungspegel durch Verwenden eines Pulsamplitudenmodulations(PAM)-8-Schemas aus den 3-Bit-Daten zu erzeugen; und einen DBI-Sendeempfänger, der konfiguriert ist, das DBI-Symbol mit einem Spannungspegel aus dem ersten bis achten Spannungspegel durch Verwenden des PAM-8-Schemas aus dem ersten Multi-Bit-DBI-Signal zu erzeugen.
  6. Speichervorrichtung nach Anspruch 1, wobei die DBI-Modus-Auswählvorrichtung ferner konfiguriert ist, das erste Multi-Bit-DBI-Signal derart auszuwählen, dass ein Übertragungsstromverbrauch für das Datensymbol minimiert wird.
  7. Speichervorrichtung nach Anspruch 1, wobei: der Datenkanal eine Mehrzahl an Datenkanälen enthält, der Multi-Modus-DBI-Kodierer eine Mehrzahl an Multi-Modus-DBI-Kodierern enthält, die konfiguriert sind, jeweils eine Mehrzahl an kodierten Multi-Bit-Datenteilen durch eine DBI-Kodierung einer Mehrzahl an Multi-Bit-Datenteilen gemäß dem ersten Multi-Bit-DBI-Signal zu erzeugen, und der Sendeempfänger eine Mehrzahl an Daten-Sendeempfängern enthält, die konfiguriert sind, eine Mehrzahl an Datensymbolen, die den kodierten Multi-Bit-Daten entsprechen, jeweils durch die Mehrzahl an Datenkanälen zu übertragen.
  8. Speichervorrichtung nach Anspruch 7, wobei die DBI-Modus-Auswählvorrichtung ferner konfiguriert ist, eine Anzahl von jedem einer Mehrzahl an Datenmustern in den Multi-Bit-Daten zu zählen und basierend auf den gezählten Anzahlen das erste Multi-Bit-DBI-Signal derart auszuwählen, dass ein Übertragungsstromverbrauch für die Mehrzahl an Datensymbolen minimiert wird.
  9. Speichervorrichtung nach Anspruch 7, wobei: die DBI-Modus-Auswählvorrichtung enthält: eine erste DBI-Modus-Auswählvorrichtung, die konfiguriert ist, das erste Multi-Bit-DBI-Signal aus der Mehrzahl an Multi-Bit-DBI-Signalen gemäß einem Datenmuster von ersten Multi-Bit-Daten aus den Multi-Bit-Daten auszuwählen; und eine zweite DBI-Modus-Auswählvorrichtung, die konfiguriert ist, ein zweites Multi-Bit-DBI-Signal aus der Mehrzahl an Multi-Bit-DBI-Signalen gemäß einem Datenmuster von zweiten Multi-Bit-Daten aus den Multi-Bit-Daten auszuwählen, und die Mehrzahl an Multi-Modus-DBI-Kodierern enthält: einen ersten Multi-Modus-DBI-Kodierer, der konfiguriert ist, erste kodierte Multi-Bit-Daten durch eine DBI-Kodierung der ersten Multi-Bit-Daten gemäß dem ersten Multi-Bit-DBI-Signal zu erzeugen; und einen zweiten Multi-Modus-DBI-Kodierer, der konfiguriert ist, zweite kodierte Multi-Bit-Daten durch eine DBI-Kodierung der zweiten Multi-Bit-Daten gemäß dem ersten Multi-Bit-DBI-Signal zu erzeugen.
  10. Speichervorrichtung nach Anspruch 9, wobei der Sendeempfänger ferner enthält: einen ersten DBI-Sendeempfänger, der konfiguriert ist, ein erstes DBI-Symbol, das dem ersten Multi-Bit-DBI-Signal entspricht, durch einen ersten DBI-Kanal zu übertragen; und einen zweiten DBI-Sendeempfänger, der konfiguriert ist, ein zweites DBI-Symbol, das dem zweiten Multi-Bit-DBI-Signal entspricht, durch einen zweiten DBI-Kanal zu übertragen.
  11. Speichervorrichtung nach Anspruch 1, ferner aufweisend einen Multi-Modus-DBI-Dekodierer, wobei: der Sendeempfänger ferner konfiguriert ist, ein Eingabedatensymbol durch den Datenkanal zu empfangen und ein Eingabe-DBI-Symbol durch den DBI-Kanal zu empfangen, und der Multi-Modi-DBI-Dekodierer konfiguriert ist, Multi-Bit-Eingabedaten durch eine DBI-Dekodierung von kodierten Multi-Bit-Eingabedaten, die dem Eingabedatensymbol entsprechen, gemäß einem Multi-Bit-Eingabe-DBI-Signal, das dem Eingabe-DBI-Symbol entspricht, zu erzeugen.
  12. Speichervorrichtung nach Anspruch 1, ferner aufweisend ein Speicherzellenarray, das konfiguriert ist, die Multi-Bit-Daten zu speichern, wobei das Speicherzellenarray eine Mehrzahl an DRAM-Zellen enthält.
  13. Speichervorrichtung, aufweisend: einen Sendeempfänger, der konfiguriert ist, ein Datensymbol und ein Datenbusinversions(DBI)-Symbol jeweils durch einen Datenkanal und einen DBI-Kanal zu empfangen, kodierte Multi-Bit-Daten aus dem empfangenen Datensymbol zu erzeugen und ein Multi-Bit-DBI-Signal aus dem empfangenen DBI-Symbol zu erzeugen; und einen Multi-Modus-DBI-Dekodierer, der konfiguriert ist, Multi-Bit-Daten durch eine DBI-Dekodierung der kodierten Multi-Bit-Daten gemäß dem Multi-Bit-DBI-Signal zu erzeugen.
  14. Speichervorrichtung nach Anspruch 13, wobei: die Multi-Bit-Daten 2-Bit-Daten enthalten, und das Multi-Bit-DBI-Signal ein 2-Bit-Signal enthält.
  15. Speichervorrichtung nach Anspruch 14, wobei das Multi-Bit-DBI-Signal einen einer Mehrzahl an DBI-Modi darstellt, wobei die Mehrzahl an DBI-Modi enthält: einen ersten DBI-Modus, in dem alle Bits der 2-Bit-Daten nicht invertiert sind; einen zweiten DBI-Modus, in dem lediglich ein niedrigstwertiges Bit (LSB) der 2-Bit-Daten invertiert ist; einen dritten DBI-Modus, in dem lediglich ein höchstwertiges Bit (MSB) der 2-Bit-Daten invertiert ist; und einen vierten DBI-Modus, in dem alle Bits der 2-Bit-Daten invertiert sind.
  16. Speichervorrichtung nach Anspruch 13, wobei der Sendeempfänger enthält: einen Sendeempfänger, der konfiguriert ist, die kodierten Multi-Bit-Daten durch Verwenden eines Pulsamplitudenmodulations(PAM)-4-Schemas aus dem Datensymbol mit einem Spannungspegel aus einem ersten bis achten Spannungspegel Daten zu erzeugen; und einen DBI-Sendeempfänger, der konfiguriert ist, das Multi-Bit-DBI-Signal durch Verwenden des PAM-4-Schemas aus dem DBI-Symbol mit einem Spannungspegel aus dem ersten bis vierten Spannungspegel zu erzeugen.
  17. Speichervorrichtung nach Anspruch 13, wobei: der Datenkanal eine Mehrzahl an Datenkanälen enthält, der Sendeempfänger eine Mehrzahl an Daten-Sendeempfängern enthält, die konfiguriert sind, eine Mehrzahl an Datensymbolen durch die Mehrzahl an Datenkanälen zu empfangen und eine Mehrzahl an kodierten Multi-Bit-Datenteilen aus den empfangenen Datensymbolen zu erzeugen, und der Multi-Modus-DBI-Dekodierer eine Mehrzahl an Multi-Modus-DBI-Dekodierern enthält, die konfiguriert sind, jeweils eine Mehrzahl an Multi-Bit-Datenteilen durch eine DBI-Dekodierung der kodierten Multi-Bit-Daten gemäß dem Multi-Bit-DBI-Signal zu erzeugen.
  18. Speichervorrichtung nach Anspruch 13, wobei: der Datenkanal eine Mehrzahl an Datenkanälen enthält, der DBI-Kanal einen ersten DBI-Kanal und einen zweiten DBI-Kanal enthält, der Sendeempfänger enthält: eine Mehrzahl an Daten-Sendeempfängern, die konfiguriert sind, eine Mehrzahl an Datensymbolen, die ein erstes und zweites Datensymbol enthalten, durch die Mehrzahl an Datenkanälen zu empfangen und kodierte erste und zweite Multi-Bit-Daten jeweils aus dem empfangenen ersten und zweiten Datensymbol zu erzeugen; einen ersten DBI-Sendeempfänger, der konfiguriert ist, ein erstes DBI-Symbol durch den ersten DBI-Kanal zu empfangen und ein erstes Multi-Bit-DBI-Signal aus dem empfangenen ersten DBI-Symbol zu erzeugen; und einen zweiten DBI-Sendeempfänger, der konfiguriert ist, ein zweites DBI-Symbol durch den zweiten DBI-Kanal zu empfangen und ein zweites Multi-Bit-DBI-Signal aus dem empfangenen zweiten DBI-Symbol zu erzeugen, und der Multi-Modus-DBI-Dekodierer enthält: einen ersten Multi-Modus-DBI-Dekodierer, der konfiguriert ist, erste Multi-Bit-Daten durch eine DBI-Dekodierung der kodierten ersten Multi-Bit-Daten gemäß dem ersten Multi-Bit-DBI-Signal zu erzeugen; und einen zweiten Multi-Modus-DBI-Dekodierer, der konfiguriert ist, zweite Multi-Bit-Daten durch eine DBI-Dekodierung der kodierten zweiten Multi-Bit-Daten gemäß dem zweiten Multi-Bit-DBI-Signal zu erzeugen.
  19. Speichervorrichtung nach Anspruch 13, ferner aufweisend ein Speicherzellenarray, das konfiguriert ist, die Multi-Bit-Daten zu speichern, wobei das Speicherzellenarray eine Mehrzahl an DRAM-Zellen enthält.
  20. Speichersystem, aufweisend: eine Übertragungsvorrichtung, die konfiguriert ist, eine Mehrzahl an Multi-Bit-Datenteilen gemäß einem Multi-Bit-DBI-Signal mittels Datenbusinversion (DBI) zu kodieren, eine Mehrzahl an Datensymbolen, die einer Mehrzahl an kodierten Multi-Bit-Datenteilen entsprechen, durch eine Mehrzahl an Datenkanälen zu übertragen, und ein DBI-Symbol, das dem Multi-Bit-DBI-Signal entspricht, durch einen DBI-Kanal zu übertragen; und eine Empfangsvorrichtung, die konfiguriert ist, die Mehrzahl an Datensymbolen durch die Mehrzahl an Datenkanälen zu empfangen, das DBI-Symbol durch den DBI-Kanal zu empfangen, und die Mehrzahl an Multi-Bit-Datenteilen aus der Mehrzahl an Datensymbolen gemäß dem Multi-Bit-DBI-Signal mittels DBI zu dekodieren.
DE102020133572.5A 2020-06-02 2020-12-15 Speichervorrichtung und Speichersystem mit demselben Pending DE102020133572A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200066716A KR20210149543A (ko) 2020-06-02 2020-06-02 메모리 장치 및 이를 포함하는 메모리 시스템
KR10-2020-0066716 2020-06-02

Publications (1)

Publication Number Publication Date
DE102020133572A1 true DE102020133572A1 (de) 2021-12-02

Family

ID=78509288

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020133572.5A Pending DE102020133572A1 (de) 2020-06-02 2020-12-15 Speichervorrichtung und Speichersystem mit demselben

Country Status (5)

Country Link
US (2) US11218343B2 (de)
KR (1) KR20210149543A (de)
CN (1) CN113764006A (de)
DE (1) DE102020133572A1 (de)
TW (1) TWI760199B (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210149543A (ko) * 2020-06-02 2021-12-09 삼성전자주식회사 메모리 장치 및 이를 포함하는 메모리 시스템
KR20220140234A (ko) * 2021-04-09 2022-10-18 삼성전자주식회사 멀티 레벨 신호 시스템에서 최적 전이 코드를 생성하기 위한 신호 처리 방법 및 반도체 장치
US11656958B2 (en) * 2021-04-29 2023-05-23 Mellanox Technologies, Ltd. Redundancy data bus inversion sharing
US11494126B1 (en) * 2021-05-07 2022-11-08 Western Digital Technologies, Inc. Toggle mode (TM) coding with circuit bounded array memory
US11394589B1 (en) 2021-05-17 2022-07-19 Micron Technology, Inc. Techniques for communicating multi-level signals
KR102582152B1 (ko) * 2022-11-14 2023-09-22 한양대학교 산학협력단 Pam 3 신호를이용한 데이터 반전 회로

Family Cites Families (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100423898B1 (ko) * 2001-06-16 2004-03-22 삼성전자주식회사 크로스오버 성능이 개선된 유니버셜 시리얼 버스 저속트랜시버
KR100643498B1 (ko) * 2005-11-21 2006-11-10 삼성전자주식회사 반도체 메모리에서의 데이터 버스 반전 회로 및 데이터버스 반전 방법
US7936289B2 (en) * 2006-04-04 2011-05-03 Samsung Electronics Co., Ltd. Method, device, and system for data communication with preamble for reduced switching noise
KR100877680B1 (ko) * 2006-04-04 2009-01-09 삼성전자주식회사 반도체 장치 사이의 단일형 병렬데이터 인터페이스 방법,기록매체 및 반도체 장치
KR100782327B1 (ko) * 2006-05-27 2007-12-06 삼성전자주식회사 반도체 장치 사이의 단일형 병렬데이터 인터페이스 방법,기록매체 및 반도체 장치
US8552891B2 (en) * 2006-05-27 2013-10-08 Samsung Electronics Co., Ltd. Method and apparatus for parallel data interfacing using combined coding and recording medium therefor
KR100799684B1 (ko) * 2006-09-14 2008-02-01 삼성전자주식회사 통신 시스템 및 통신 시스템 제어방법
WO2009134568A2 (en) * 2008-04-02 2009-11-05 Rambus Inc. Encoding data with minimum hamming weight variation
KR101688050B1 (ko) * 2009-12-22 2016-12-21 삼성전자 주식회사 반도체 장치 및 반도체 장치의 리드 또는 라이트 동작 수행 방법
WO2011090523A1 (en) * 2010-01-20 2011-07-28 Rambus Inc. Multiple word data bus inversion
US8879654B2 (en) * 2010-03-10 2014-11-04 Micron Technology, Inc. Communication interface with configurable encoding based on channel termination
US8495437B2 (en) * 2011-09-06 2013-07-23 Samsung Electronics Co., Ltd. Semiconductor memory device
US8942309B1 (en) * 2012-05-04 2015-01-27 Rambus Inc. Signal output improvement using data inversion and/or swapping
KR101964261B1 (ko) * 2012-05-17 2019-04-01 삼성전자주식회사 자기 메모리 장치
US8854236B2 (en) * 2012-05-18 2014-10-07 Micron Technology, Inc. Methods and apparatuses for low-power multi-level encoded signals
KR20140032787A (ko) * 2012-09-07 2014-03-17 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 메모리 시스템 및 그것의 제어 방법
US9529749B2 (en) * 2013-03-15 2016-12-27 Qualcomm Incorporated Data bus inversion (DBI) encoding based on the speed of operation
WO2014193574A1 (en) * 2013-05-13 2014-12-04 Rambus Inc. Buffer circuit with data bit inversion
KR102123524B1 (ko) * 2013-09-09 2020-06-16 에스케이하이닉스 주식회사 반도체 장치
US9172567B2 (en) * 2013-11-25 2015-10-27 Qualcomm Incorporated Methods and apparatus to reduce signaling power
US9621303B2 (en) * 2014-01-29 2017-04-11 Marvell Israel (M.I.S.L) Ltd. Method and apparatus for valid encoding
US9252802B2 (en) * 2014-02-07 2016-02-02 Qualcomm Incorporated Encoding for partitioned data bus
TWI798912B (zh) * 2014-05-23 2023-04-11 南韓商三星電子股份有限公司 搜索方法、電子裝置及非暫時性電腦可讀記錄媒體
US9252997B1 (en) * 2014-07-10 2016-02-02 Qualcomm Incorporated Data link power reduction technique using bipolar pulse amplitude modulation
KR101785066B1 (ko) * 2014-07-31 2017-10-12 삼성전자주식회사 플렉서블 디바이스의 인터페이싱 방법 및 플렉서블 디바이스
US9614698B2 (en) * 2014-08-27 2017-04-04 Samsung Display Co., Ltd. Transmitter switching equalization for high speed links
KR102358548B1 (ko) * 2014-10-15 2022-02-04 삼성전자주식회사 디바이스를 이용한 화면 처리 방법 및 장치
KR20160076889A (ko) * 2014-12-23 2016-07-01 에스케이하이닉스 주식회사 반도체장치 및 반도체시스템
US10365833B2 (en) * 2016-01-22 2019-07-30 Micron Technology, Inc. Apparatuses and methods for encoding and decoding of signal lines for multi-level communication architectures
US9959935B2 (en) * 2016-04-12 2018-05-01 Samsung Electronics Co., Ltd. Input-output circuit for supporting multiple-input shift register (MISR) function and memory device including the same
US9922686B2 (en) * 2016-05-19 2018-03-20 Micron Technology, Inc. Apparatuses and methods for performing intra-module databus inversion operations
US10692555B2 (en) * 2016-06-29 2020-06-23 Samsung Electronics Co., Ltd. Semiconductor memory devices enabling read strobe mode and related methods of operating semiconductor memory devices
KR102479212B1 (ko) * 2016-08-17 2022-12-20 삼성전자주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 이의 동작 방법
US10846258B2 (en) * 2016-09-30 2020-11-24 Intel Corporation Voltage modulated control lane
KR20180057028A (ko) * 2016-11-21 2018-05-30 에스케이하이닉스 주식회사 데이터 반전 회로
KR20180063475A (ko) * 2016-12-02 2018-06-12 삼성전자주식회사 반도체 장치의 오류 검출 코드 생성 회로, 이를 포함하는 메모리 컨트롤러 및 반도체 메모리 장치
KR102441578B1 (ko) * 2017-10-27 2022-09-07 삼성전자주식회사 다중 데이터 버스 반전 동작을 수행하는 방법 및 메모리 장치
US10491238B2 (en) * 2018-01-24 2019-11-26 Nvidia Corp. Maximum transition avoidance (MTA) encoding
US10832632B2 (en) * 2018-03-14 2020-11-10 Samsung Display Co., Ltd. Low power architecture for mobile displays
US11159153B2 (en) * 2018-03-29 2021-10-26 Nvidia Corp. Data bus inversion (DBI) on pulse amplitude modulation (PAM) and reducing coupling and power noise on PAM-4 I/O
US10657094B2 (en) * 2018-03-29 2020-05-19 Nvidia Corp. Relaxed 433 encoding to reduce coupling and power noise on PAM-4 data buses
US10491435B2 (en) * 2018-03-29 2019-11-26 Nvidia Corp. Unrelaxed 433 encoding to reduce coupling and power noise on PAM-4 data buses
US11036578B2 (en) * 2018-04-12 2021-06-15 Samsung Electronics Co., Ltd. Semiconductor memory devices and memory systems including the same
KR20190124914A (ko) * 2018-04-27 2019-11-06 삼성전자주식회사 다이나믹 랜덤 억세스 메모리 장치 및 이 장치를 구비하는 메모리 시스템
US10664432B2 (en) * 2018-05-23 2020-05-26 Micron Technology, Inc. Semiconductor layered device with data bus inversion
US10623200B2 (en) * 2018-07-20 2020-04-14 Nvidia Corp. Bus-invert coding with restricted hamming distance for multi-byte interfaces
KR102629405B1 (ko) * 2018-11-09 2024-01-25 삼성전자주식회사 반도체 메모리 장치, 메모리 시스템 및 반도체 메모리 장치의 동작 방법
KR20210076606A (ko) * 2019-12-16 2021-06-24 삼성전자주식회사 SoC, 메모리 장치, 전자 장치 및 전자 장치의 데이터 저장 방법
KR20210081534A (ko) * 2019-12-24 2021-07-02 삼성전자주식회사 반도체 메모리 장치 및 메모리 시스템
KR20210149543A (ko) * 2020-06-02 2021-12-09 삼성전자주식회사 메모리 장치 및 이를 포함하는 메모리 시스템
KR20220031791A (ko) * 2020-09-03 2022-03-14 삼성전자주식회사 메모리 장치와 그 동작 방법, 및 메모리 시스템
KR20220034561A (ko) * 2020-09-11 2022-03-18 삼성전자주식회사 멀티 레벨 신호 생성을 위한 송신기 및 이를 포함하는 메모리 시스템
US11652567B2 (en) * 2020-12-01 2023-05-16 Micron Technology, Inc. Replacement scheme for a pulse amplitude modulated bus
US11824563B2 (en) * 2021-03-10 2023-11-21 Samsung Electronics Co., Ltd. Encoding and decoding apparatuses and methods for implementing multi-mode coding
US11757567B2 (en) * 2021-03-10 2023-09-12 Samsung Electronics Co., Ltd. Devices and methods for encoding and decoding to implement a maximum transition avoidance coding with minimum overhead

Also Published As

Publication number Publication date
CN113764006A (zh) 2021-12-07
US11627021B2 (en) 2023-04-11
US20220123967A1 (en) 2022-04-21
TWI760199B (zh) 2022-04-01
KR20210149543A (ko) 2021-12-09
TW202147131A (zh) 2021-12-16
US11218343B2 (en) 2022-01-04
US20210377080A1 (en) 2021-12-02

Similar Documents

Publication Publication Date Title
DE102020133572A1 (de) Speichervorrichtung und Speichersystem mit demselben
DE102011084751B4 (de) Datenverarbeitungsbauelement, -system und -verfahren
DE102017128939A1 (de) System und Verfahren zum dynamischen und adaptiven Zusammenführen von Interrupts
DE102019116213A1 (de) Qualität von für Enterprise-Halbleiterlaufwerke optimierten dienstbasierten Arbitrierungen
DE102011052959A1 (de) Halbleiterspeichervorrichtung
EP3754563A1 (de) Technologien zur durchführung einer in-speicher-trainingsdatenerweiterungen für künstliche intelligenz
DE102012108093A1 (de) Speicherchip, Speichersystem und Verfahren zum Zugreifen auf den Speicherchip
US9912352B1 (en) Hamming distance based binary representations of numbers
DE112022000580T5 (de) Reduzierung der Latenzauswirkungen von Fehlerprüfung und Korrektur auf dem Chip (ECC)
DE112017004966T5 (de) Erweiterte anwendung eines fehlerprüfungs- und korrekturcodes in einem speicher
DE102020132763A1 (de) Undirektionaler informationskanal zur überwachung einer drift eines bidirektionalen informationskanals
US20230171007A1 (en) Translation device, test system including the same, and memory system including the translation device
DE112021000776T5 (de) Verwaltung von schreib-operationen in einer nichtflüchtigen speichervorrichtung unter verwendung eines variablen vor-lese-spannungspegels
CN118103907A (zh) 用于堆叠式存储器裸片的内部及外部数据传送
US11614884B2 (en) Memory device with microbumps to transmit data for a machine learning operation
DE102019117475A1 (de) Cache-kohärente Eingabe-/Ausgabesteuerungen mit hohem Durchsatz
DE112020006053T5 (de) Aktiver eingabe/ausgabe-expander eines speicher-untersystems
DE102008025196B4 (de) Systeme, Verfahren und Vorrichtungen zum Senden von Datenmaskenbits an eine Speichervorrichtung
DE112017005197T5 (de) Hybrid-Komprimierungsschema zur effizienten Speicherung synaptischer Gewichte in neuromorphen Hardware-Kernen
US20230041801A1 (en) Transmission of data for a machine learning operation using different microbumps
DE102022004129A1 (de) Zurückkopier-lösch-befehl zur durchführung einer scan- und leseoperation in einer speichervorrichtung
CN112908373B (zh) 用于使用微凸块执行机器学习操作的系统
US20240071448A1 (en) Configurable data protection circuitry for memory devices
DE102017112353A1 (de) Speichervorrichtung zum Durchführen eines internen Prozesses und Betriebsverfahren dafür
DE112020002794B4 (de) Effiziente fehlerkorrektur von durch binäre symmetrieinvariante produktcodes codierten codewörtern

Legal Events

Date Code Title Description
R012 Request for examination validly filed