DE10334423A1 - Übertragung von Daten in auswählbaren Übertragungsmodi - Google Patents

Übertragung von Daten in auswählbaren Übertragungsmodi Download PDF

Info

Publication number
DE10334423A1
DE10334423A1 DE10334423A DE10334423A DE10334423A1 DE 10334423 A1 DE10334423 A1 DE 10334423A1 DE 10334423 A DE10334423 A DE 10334423A DE 10334423 A DE10334423 A DE 10334423A DE 10334423 A1 DE10334423 A1 DE 10334423A1
Authority
DE
Germany
Prior art keywords
data
circuit
memory
transmission
compression
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.)
Ceased
Application number
DE10334423A
Other languages
English (en)
Inventor
Steven L. Pline
Andrew M. Spencer
Kenneth G. Eldredge
Michael Altree
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.)
Seagate Technology LLC
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of DE10334423A1 publication Critical patent/DE10334423A1/de
Ceased legal-status Critical Current

Links

Classifications

    • 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/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1684Details of memory controller using multiple buses

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Dram (AREA)
  • Memory System (AREA)

Abstract

Datenspeicherungssysteme und Verfahren zum Schreiben von Daten in eine Speicherkomponente und Lesen von Daten aus der Speicherkomponente sind offenbart. Die Systeme und Verfahren übertragen Daten in einem einer Anzahl auswählbarer Übertragungsmodi. Bei einer Implementierung weist die Speicherkomponente eine Speichersteuerung zum Verwalten von Daten innerhalb der Speicherkomponente auf. Die Speichersteuerung weist eine Schaltschaltung auf, die eine Mehrzahl von Daten-Eingangs/Ausgangs-(-I/O-)Anschlüssen und mehrere Sätze von Übertragungsanschlüssen aufweist. Eine Standardübertragungsschaltung ist mit einem Satz von Übertragungsanschlüssen verbunden und eine Schnell-Seriell-Übertragungsschaltung ist mit einem weiteren Satz von Übertragungsanschlüssen verbunden. Die Speichersteuerung weist ferner eine Kompressions/Dekompressionsmaschine auf, die Daten komprimiert.

Description

  • Die vorliegende Erfindung bezieht sich allgemein auf eine Datenspeicherung und -wiedergewinnung. Insbesondere bezieht sich die vorliegende Erfindung auf Systeme und Verfahren zum Schreiben von Daten an Speicherkarten und Lesen von Daten von Speicherkarten in einem einer Anzahl auswählbarer Datenübertragungsmodi.
  • Entwickler haben unterschiedliche Typen von Festkörperspeichervorrichtungen zum Speichern digitaler Daten hergestellt. Diese Speichervorrichtungen können in etwas gepackt sein, was als Speicherkarten bezeichnet wird, die sich in den letzten Jahren zunehmender Popularität erfreut haben. Speicherkarten werden in einer Vielzahl von Anwendungen verwendet, wie z. B. in Digitalkameras und Camcordern, Musikabspielgeräten, Personaldigitalassistenten (PDAs), Personalcomputern etc. Diese Speicherkarten weisen üblicherweise eine sehr kleine Größe auf und weisen spezifische physische Spezifizierungen oder Formfaktoren auf. Typische Speicherkarten haben eine Datenspeicherkapazität in einem Bereich von etwa 2 Megabytes (MB) bis etwa 1 Gigabyte (GB).
  • Obwohl viele Speicherkarten große Speichervolumina liefern, ist die Datenübertragungsrate zum Speichern großer Dateien in einen Speicher und Wiedergewinnen von Dateien aus einem Speicher manchmal ziemlich langsam. Wenn z. B. ein Photograf eine Digitalkamera verwendet, die in der Lage ist, 5 Bilder pro Sekunde aufzunehmen, und wenn jedes Bild etwa 5 MB Daten einnimmt, muß die Speicherkarte in der Lage sein, mit einer Rate von zumindest 25 MB pro Sekunde zu speichern. Existierende Speicherkarten sind zu derartigen Übertragungsraten nicht in der Lage. Bei einem anderen Beispiel können, wenn der Photograf etwa 100 Bilder in einem Speicher speichert und jedes Bild etwa 5 MB groß ist, die Bilder auf einer 512 MB-Speicherkarte gespeichert sein. Mit einer langsamen Datenübertragungsrate jedoch kann es bis zu 20 Minuten dauern, die Bilder in einen Computer hochzuladen.
  • Eine Lösung für die langsame Datenübertragungsrate besteht darin, für Host-Vorrichtungen (wie z. B. Digitalkameras) große Mengen eines statischen Direktzugriffsspeichers (SRAM) und dynamischen Direktzugriffsspeichers (DRAM) bereitzustellen. SRAM und DRAM sind flüchtige Speicher und können als Datenzwischenspeicher für nichtflüchtige Speichervorrichtungen wirken. Diese Datenzwischenspeicher speichern Daten zeitweilig, wenn dieselben an die Speichervorrichtungen geschrieben oder von den Speichervorrichtungen gelesen werden, so daß die Daten nicht verloren gehen. Aufgrund der langsamen Datenübertragungsrate in die nichtflüchtigen Speichervorrichtungen werden Daten jedoch unter Umständen in den Datenzwischenspeichern gesichert, was verhindert, daß der Benutzer zusätzliche Informationen speichern kann, bis die Daten schließlich in dem nichtflüchtigen Speicher gespeichert sind. Ein weiteres Problem bei dieser Lösung besteht darin, daß SRAM und DRAM relativ teuer sind und dazu neigen, die Kosten der Host-Vorrichtungen nach oben zu treiben. Als nächstes besteht in der Industrie ein Bedarf, eine Alternative mit höherer Leistung, einer schnelleren Datenübertragungsrate und niedrigeren Kosten zu der SRAM- und DRAM-Lösung zu schaffen und die zuvor genannten Mängel und Nachteile anzugehen.
  • Es ist die Aufgabe der vorliegenden Erfindung, eine Speichersteuerung, ein System, ein Verfahren, eine ausführbare Sequenz, eine Host-Vorrichtung oder eine Speicherkarte zu schaffen, mit deren Hilfe schneller und unkomplizierter auf vorhandene Speicherelemente in Hostvorrichtungen zugegriffen werden kann.
  • Diese Aufgabe wird durch eine Speichersteuerung gemäß Anspruch 1, ein System gemäß Anspruch 7 oder 24, ein Ver fahren gemäß Anspruch 29, eine ausführbare Sequenz gemäß Anspruch 33, eine Host-Vorrichtung gemäß Anspruch 34 oder eine Speicherkarte gemäß Anspruch 35 oder 36 gelöst.
  • Die vorliegende Offenbarung umfaßt ein Datenspeichersystem zum Übertragen von Daten in einem einer Anzahl auswählbarer Datenübertragungsmodi. Ein Ausführungsbeispiel des Datenspeichersystems weist eine Speichersteuerung auf, die Daten innerhalb einer Speicherkomponente verwaltet. Die Speichersteuerung umfaßt eine Schaltschaltung, die eine Mehrzahl von Daten-Eingangs/Ausgangs- (-I/O-) Anschlüssen und mehrere Sätze von Übertragungsanschlüssen aufweist. Eine Standardübertragungsschaltung ist mit einem Satz der Übertragungsanschlüsse verbunden und eine Schnell-Seriell-Übertragungsschaltung ist mit einem weiteren Satz verbunden. Die Speichersteuerung kann ferner eine Kompressions/Dekompressionsmaschine aufweisen, die in dem Datenübertragungspfad verbunden ist.
  • Ein weiteres Ausführungsbeispiel des Datenspeichersystems weist eine Speicherkarte auf, die entfernbar an einem Host angebracht ist. Die Speicherkarte weist zumindest eine Speicherbank und eine Speichersteuerung auf, die mit den Speicherbänken verbunden ist. Die Speichersteuerung weist eine Schaltschaltung auf, die zwischen einem Standardübertragungsmodus und einem Schnell-Seriell-Übertragungsmodus schaltet, sowie eine Kompressions/Dekompressionsmaschine, die Daten komprimiert und dekomprimiert.
  • Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf die beigefügten Zeichnungen näher erläutert, in denen gleiche Bezugszeichen in allen Ansichten entsprechende Teile bezeichnen. Es zeigen:
  • 1 ein Blockdiagramm einer allgemeinen Übersicht eines Ausführungsbeispiels eines Datenspeichersystems;
  • 2 ein Blockdiagramm, das ein exemplarisches Ausführungsbeispiel des Datenspeichersystems aus 1 darstellt;
  • 3 ein Blockdiagramm, das die Details eines Ausführungsbeispiels des Host darstellt, der in den 1 und 2 gezeigt ist;
  • 4A kombiniert ein Blockdiagramm, das die Details und 4B eines Ausführungsbeispiels der Speichersteuerung darstellt, die in den 1 und 2 gezeigt ist;
  • 5 ein Blockdiagramm eines Ausführungsbeispiels eines Abschnitts des Hosts, der in 3 gezeigt ist, wobei das Ausführungsbeispiel ein Beispiel einer Halb-Duplex-Konfiguration ist;
  • 6 ein Blockdiagramm eines Ausführungsbeispiels eines Abschnitts der Speichersteuerung aus 4, das konfiguriert ist, um in Verbindung mit dem Halb-Duplex-Ausführungsbeispiel aus 5 zu arbeiten;
  • 7 ein Blockdiagramm eines Ausführungsbeispiels eines Abschnitts des Hosts aus 3, wobei das Ausführungsbeispiel ein Beispiel einer Voll-Duplex-Konfiguration ist;
  • 8 ein Blockdiagramm eines Ausführungsbeispiels eines Abschnitts der Speichersteuerung aus 4, das konfiguriert ist, um in Verbindung mit dem Voll-Duplex-Ausführungsbeispiel aus 7 zu arbeiten;
  • 9 ein Blockdiagramm eines exemplarischen Ausführungsbeispiels der Kompressions/Dekompressionsmaschine aus 4;
  • 10 ein Blockdiagramm eines ersten Ausführungsbeispiels der Speichervorrichtungsschnittstelle aus 4;
  • 11 ein Blockdiagramm eines zweiten Ausführungsbeispiels der Speichervorrichtungsschnittstelle aus 4;
  • 12 ein Flußdiagramm, das die Schritte eines exemplarischen Datenschreibbefehls darstellt; und
  • 13 ein Flußdiagramm, das die Schritte eines exemplarischen Datenlesebefehls darstellt.
  • Die vorliegende Offenbarung beschreibt Systeme und Verfahren zum Überwinden der Mängel des Stands der Technik. Diese Systeme und Verfahren verbessern die existierenden Speicherkarten durch ein Erhöhen der Datenübertragungsrate, um schnellere Speicher- und Wiedergewinnungszeiten bereitzustellen, während gleichzeitig dem Formfaktor jeder der häufig verwendeten Speicherkarten, wie z. B. Secure DigitalTM, MultiMediaCardTM und Memory StickTM, entsprochen wird. Eine Speichersteuerung, wie sie hierin beschrieben ist, ist vorzugsweise in der Speicherkarte angeordnet und umfaßt eine Schaltschaltung, die die Auswahl eines Datenübertragungspfades aus mehreren parallelen Pfaden ermöglicht, entlang derer Daten übertragen werden. Ein derartiger Pfad umfaßt eine Schaltung, die Daten in einem Schnell-Seriell-Übertragungsmodus überträgt, bei dem Daten und ein Takt über ein Codierungs/Decodierungsverfahren (z. B. 8b/10b-Codierung) kombiniert oder getrennt werden. Die Speichersteuerung kann nicht nur konfiguriert sein, um unter einer Anzahl auswählbarer Datenübertragungspfade zu schalten, sondern die Speichersteuerung kann auch konfiguriert sein, um Daten in Echtzeit zu komprimieren, was die Speicherkapazität der Medien verbessert. Der Datenpfadschaltschaltungsaufbau kann als ein anderer Aspekt als der Kompressionsschaltungsaufbau betrachtet werden. Deshalb kann der Daten pfadschaltschaltungsaufbau unabhängig implementiert sein und in die Speichersteuerung mit oder ohne den Kompressionsschaltungsaufbau eingebaut sein und umgekehrt.
  • Eine Übersicht eines Ausführungsbeispiels eines Datenspeichersystems 100 ist in 1 gezeigt. Diese Figur stellt einen Host 102 dar, der mit einer Speichersteuerung 104 verbunden ist, die wiederum mit einem Speicher 106 verbunden ist. Der Host 102 kann jeder Typ von Benutzervorrichtung sein, der Daten von dem Speicher 106 liest und/oder Daten an den Speicher 106 schriebt. Der Host 102 kann z. B. ein Verarbeitungssystem in einer Digitalkamera sein, das in einem Datenschreibmodus in der Lage ist, ein Bild in digitaler Form zu erfassen und die digitalen Daten, die das erfaßte Bild darstellen, in den Speicher 106 zu schreiben. In einem Datenlesemodus kann das Digitalkameraverarbeitungssystem dann z. B. Daten aus dem Speicher 106 wiedergewinnen, um Daten in einen Computer hochzuladen oder Bilder auf einer Flüssigkristallanzeige (LCD) anzuzeigen. Alternativ kann der Host 102 ein Verarbeitungssystem eines Audioabspielgerätes sein, das Musikdaten von dem Speicher 106 liest und die Musik hörbar über einen Satz Lautsprecher abspielt. Das Audioabspielgerät-Verarbeitungssystem kann Datenschreibfähigkeiten umfassen, derart, daß Musik in dem Speicher 106 aufgezeichnet werden kann. Der Host 102 kann wahlweise als ein weiteres bekanntes System konfiguriert sein, das den Speicher 106 verwendet, wie z. B. ein Verarbeitungssystem eines Personaldigitalassistenten (PDA), ein Verarbeitungssystem eines Digitalcamcorders usw.
  • Die Speichersteuerung 104 ist elektrisch zwischen den Host 102 und den Speicher 106 geschaltet. Die Speichersteuerung 104 verwaltet die Übertragung von Daten von dem Host 102 an den Speicher 106 während eines Datenschreibbefehls und die Übertragung von Daten von dem Speicher 106 an den Host 102 während eines Datenlesebefehls. Bei den bevorzugten Ausführungsbeispielen sind die Speichersteuerung 104 und der Speicher 106 auf einem Typ Speicherkarte zusammengruppiert, die eine Steuerungsfunktionalität und eine Speicherfähigkeit umfaßt. Gemäß einem alternativen Ausführungsbeispiel jedoch kann die Speichersteuerung 104 innerhalb des Hosts 102 angeordnet sein. Bei diesem alternativen Ausführungsbeispiel können, wenn die Speichersteuerung 104 Daten unter Verwendung eines bestimmten Algorithmus komprimiert und die komprimierten Daten auf einer separaten Speicherkomponente speichert, die Daten nur durch den gleichen Host 102 zurückgelesen werden oder durch einen Host, der eine Speichersteuerung aufweist, die die gleichen Kompressions- und Dekompressionsalgorithmen aufweist.
  • 2 ist ein Ausführungsbeispiel des Datenspeichersystems 100, bei dem die Speichersteuerung 104 und der Speicher 106 auf einer Speicherkarte 200 enthalten sind. Die Speicherkarte 200 kann jede Größe, Form, Anschlußstiftkonfiguration und Speicherkapazität aufweisen. Die Speicherkarte 200 kann z. B. so gebildet sein, daß sie den gleichen Formfaktor und die gleichen Spezifizierungen wie jede der bekannten Speicherkarten aufweist, die auf dem heutigen Markt verwendet werden, wie z. B. MultiMediaCardTM, Secure DigitalTM und Memory StickTM. Die Speicherkarte 200 kann rückgerichtet mit diesen oder anderen Speichervorrichtungen kompatibel sein, die heute existieren, und kann mit denjenigen kompatibel sein, die in Zukunft entwickelt werden.
  • Der Speicher 106 ist in 2 als eine Mehrzahl von Speicherbänken 202 gezeigt, kann jedoch auch als eine einzelne Speicherbank 202 konfiguriert sein. Die Anzahl von Speicherbänken 202 kann von der Fähigkeit der bestimmten Speicherbänke 202, Daten zu übertragen, sowie von der Datenübertragungsrate des Speicherschnittstellenschaltungsaufbaus innerhalb der Speichersteuerung 104 abhängen. Die Anzahl kann ferner von der erwünschten Datenübertragungsrate abhängen, wie unten detaillierter beschrieben ist. Daten werden vorzugsweise zwischen der Speichersteuerung 104 und den Speicherbänken 202 in Blöcken oder Sektoren übertragen. Jeder Block oder Sektor von Daten kann z. B. eine vorbe stimmte Blockgröße aufweisen, wie z. B. 512 Bytes, um der Blockgröße zu entsprechen, mit der der Host 102 auf Daten zugreift. Die Speicherbänke 202 weisen Speicherkomponenten auf, die zu einer Hochleistungsübertragung von Datenblöcken mit schnellen Datenübertragungsgeschwindigkeiten in der Lage sind, wie z. B. einen Magnetdirektzugriffsspeicher (MRAM) oder eine Atomarauflösungsspeicherung (ARS).
  • Ferner in 2 dargestellt sind Schnittstellenleitungen 204 zwischen dem Host 102 und der Speichersteuerung 104. Die Schnittstellenleitungen 204 können Verbindungsanschlüsse, Anschlußstifte, Anschlußflächen, Leiter, usw. umfassen, die elektrisch die Anschlüsse des Hosts 102 mit den kompatiblen Anschlüssen der Speicherkarte 200 verbinden. Eine typische Speicherkarte enthält spezifische Anschlüsse, die eindeutig für das bestimmte System sind, und die nur mit einem Host gekoppelt sind, der eine kompatible Konfiguration aufweist. Trotz der Unterschiede bei dem Ort und der Nomenklatur der Anschlüsse und Leitungen unterschiedlicher Host/Kartensysteme umfassen die Schnittstellenleitungen 204 eines typischen Systems eine Mehrzahl von Datenleitungen D1, D2,... DN, zumindest eine Taktleitung (CLK), zumindest eine Befehlsleitung (CMD), zumindest eine Leistungsleitung (Vdd) und zumindest eine Masseleitung (GND). Die Spezifizierungen der meisten Speicherkarten erfordern normalerweise zumindest zwei Datenleitungen. Bei dem in 2 dargestellten Beispiel ist die Anzahl von Datenleitungen eine Anzahl N. Vorzugsweise weist das Datenspeichersystem 100 einen Formfaktor auf, der zumindest drei Datenleitungen aufweist, um ein Halb-Duplex-Differential-Senden und einen -Empfang zu ermöglichen, wie unten beschrieben ist. Wenn fünf oder mehr Datenleitungen verfügbar sind, kann eine Voll-Duplex-Differential-Sende- und -Empfangs-Konfiguration erzielt werden, wie ebenso unten beschrieben ist.
  • 3 stellt ein Blockdiagramm eines Ausführungsbeispiels des Hosts 102 dar. Das in 3 gezeigte Ausführungsbeispiel des Hosts 102 weist ein Benutzervorrichtungsverarbei tungssystem 300 auf, das einen Benutzerschaltungsaufbau und einen Direktzugriffsspeicher (RAM) sowie Betriebsinstruktionen aufweisen kann, die in Hardware und/oder Software konfiguriert sind. Der Benutzerschaltungsaufbau des Benutzervorrichtungsverarbeitungssystems 300 kann eine Datenquelle oder einen Schaltungsaufbau zum Erzeugen ursprünglicher Daten und/oder eine Zielvorrichtung oder einen – Schaltungsaufbau zum Verwenden von Daten, die aus dem Speicher 106 wiedergewonnen werden, umfassen. Bei dem Digitalkamerabeispiel kann das Benutzervorrichtungsverarbeitungssystem 300 einen Bilderfassungsschaltungsaufbau aufweisen, der digital Bilder erfaßt, die Bilder in digitale Daten umwandelt und die Digitalbilddaten zeitweilig in einem RAM speichert. Bei diesem gleichen Beispiel kann die Digitalkamera ferner eine LCD zum Anzeigen vorher erfaßter Bilder aufweisen, die aus Daten, die aus dem Speicher 106 wiedergewonnen werden, reproduziert werden. Das Benutzervorrichtungsverarbeitungssystem 300 weist eine Mehrzahl von Eingangs/Ausgangs- (I/O-) Anschlüssen zum Senden oder Empfangen von Daten auf. In einem Standardübertragungsmodus werden Daten entlang eines LANGSAMDATEN-Bus 302 zwischen dem Benutzervorrichtungsverarbeitungssystem 300 und einer Standardübertragungsschaltung 304 übertragen. Bei einem Schnell-Seriell-Übertragungsmodus werden Daten entlang eines SCHNELLDATEN-Bus 305 zwischen dem Benutzervorrichtungsverarbeitungssystem 300 und einer Schnell-Seriell-Übertragungsschaltung 306 übertragen. Zusätzliche parallele Verzweigungen können innerhalb des Hosts verbunden sein, wenn zusätzliche Übertragungsmodi erwünscht sind.
  • Die Standardübertragungsschaltung 304 enthält einen elektrischen Schaltungsaufbau zum Durchführen der Übertragung von Daten in einem Standardübertragungsmodus. Die Standardübertragungsschaltung 304 ist konfiguriert, um parallele Daten von dem Bus 302 während einer Datenschreibprozedur an Leitungen 308 zu übertragen und parallele Daten von den Leitungen 308 während einer Datenleseprozedur an den Bus 302 zu übertragen. Eine wesentliche Operation, die durch die Standardübertragungsschaltung 304 durchgeführt wird, besteht darin, die Daten von dem Langsam-Bus 302 auf die Breite zu formatieren, die durch die Leitungen 308 unterstützt wird. Andere Funktionen können ein Einwickeln der zu sendenden Daten mit einer zyklischen Redundanzprüfung (CRC) und ein Decodieren der CRC bezüglich der empfangenden Daten umfassen.
  • Die Schnell-Seriell-Übertragungsschaltung 306 enthält einen elektrischen Schaltungsaufbau, der in der Lage ist, Daten unter Verwendung eines Hochgeschwindigkeits-Differential-Seriell-Übertragungsprotokolls zu übertragen. Die Schnell-Seriell-Übertragungsschaltung 306 kann in der Lage sein, Daten mit einer Rate von zumindest 100 MB pro Sekunde zu übertragen. Mit einer derartigen Übertragungsrate können große Dateien in weniger als einer Sekunde heruntergeladen werden, was im Gegensatz zu Herunterladezeiten des Stands der Technik von mehreren Minuten steht.
  • Die Schnell-Seriell-Übertragungsschaltung 306 empfängt ein Systemtaktsignal CLK von einem Host-Steuerungslogikschaltungsaufbau 318 und multipliziert die Taktfrequenz unter Verwendung einer Phasenregelschleifen- (PLL-) Schaltung bis zu einer „Schnelltakt"-Geschwindigkeit. Die Schnell-Seriell-Übertragungsschaltung 306 weist ferner Zwischenspeicher zum zeitweiligen Halten von Daten während der Übertragung von Daten zwischen dem Benutzervorrichtungsverarbeitungssystem 300 und der Schnell-Seriell-Übertragungsschaltung 306 auf. Die Schnell-Seriell-Übertragungsschaltung 306 weist vorzugsweise einen Fehlererfassungs- und -korrekturschaltungsaufbau, einen Synchronisierungserfassungsschaltungsaufbau, einen Acht-Bit-zu-Zehn-Bit-Codierer und einen Zehn-Bit-zu-Acht-Bit-Decodierer auf, um eine Codierung von Takt und Daten zu ermöglichen, um eine Trennung von Takt und Daten zu ermöglichen und um eine Decodierung von Daten zu ermöglichen. Eine Seriell/Deseriell-Schaltung, die serielle Daten in parallele umwandelt und parallele Daten in seriel le umwandelt, ist vorzugsweise innerhalb der Schnell-Seriell-Übertragungsschaltung 306 enthalten.
  • Während eines Datenschreibbefehls sendet die Schnell-Seriell-Übertragungsschaltung 306 ein aufwärts umgesetztes Schnelltakt- (SCHNELL-CLK-) Signal an das Benutzervorrichtungsverarbeitungssystem 300. Wenn das Benutzervorrichtungsverarbeitungssystem 300 das SCHNELL-CLK-Signal empfängt, zieht die Schnell-Seriell-Übertragungsschaltung 306 serielle Daten von dem Benutzervorrichtungsverarbeitungssystem 300 entlang des SCHNELLDATEN-Bus 305 mit der Schnelltaktgeschwindigkeit.
  • Ferner weist die Schnell-Seriell-Übertragungsschaltung 306 zwei Differenzverstärker auf, die Daten entlang der Leitungen 310 senden und empfangen. Ein sendender Differenzverstärker wandelt digitale Daten in ein serielles Differentialformat um, wobei die seriellen Differentialdaten entlang einer positiven Sendeleitung (DT+) und einer negativen Sendeleitung (DT-) gesendet werden. Ein empfangender Differenzverstärker empfängt serielle Differentialdaten von einer positiven Empfangsleitung (DR+) und einer negativen Empfangsleitung (DR-) und wandelt die seriellen Differentialdaten in das digitale Format um. Zusätzlich zu den Leitungen DT- und DR- kann eine BESETZT-Leitung hinzugefügt werden, um ein Signal von der Speichersteuerung 104 bereitzustellen, wenn die Speichersteuerung 104 besetzt und nicht bereit ist, um mehr Daten zu empfangen. Die BESETZT-Leitung kann auch verwendet werden, um zu kommunizieren, daß ein Fehler aufgetreten ist. Wenn die Schnell-Seriell-Übertragungsschaltung 306 ein BESETZT-Signal empfängt, wird die Übertragung von Daten gestoppt, bis die Speichersteuerung 104 wieder bereit zum Empfang ist. Die BESETZT-Leitung, die für eine vorbestimmte Zeitmenge besetzt bleibt, kann einen Fehler anzeigen.
  • Eine Schaltschaltung 312 ist mit Leitungen 308 verbunden, die zu der Standardübertragungsschaltung 304 führen, und mit Leitungen 310, die zu der Schnell-Seriell-Übertragungsschaltung 306 führen. Die Leitungen 310 sind „DT+", „DT-", „DR+" und „DR-" genannt, wobei „DT" Daten darstellt, die von der Schnell-Seriell-Übertragungsschaltung 306 gesendet werden, und „DR" Daten darstellt, die durch die Schnell-Seriell-Übertragungsschaltung 306 empfangen werden. Die Schaltschaltung 312 weist eine Anzahl interner Schaltungselemente auf, die es ermöglichen, daß separate Pfade einer Datenübertragung ausgewählt werden. Daten können durch die Schaltschaltung 312 in einem Schnell-Seriell-Übertragungsmodus oder in einem Standardübertragungsmodus übertragen werden. Der Host 102 kann konfiguriert sein, um in dem Standardübertragungsmodus hochzufahren und auf einen Bedarf hin zu dem Schnell-Seriell-Übertragungsmodus zu schalten. In dem Schnell-Seriell-Übertragungsmodus sind die Schaltungselemente der Schaltschaltung 312 derart konfiguriert, daß Leitungen 314, die mit einem Ausgang der Schaltschaltung 312 verbunden sind, elektrisch mit Leitungen 310 gekoppelt sind, die zu der Schnell-Seriell-Übertragungsschaltung 306 führen. In dem Standardübertragungsmodus sind die Schaltungselemente derart konfiguriert, daß die Leitungen 314 elektrisch mit Leitungen 308 gekoppelt sind, die zu der Standardübertragungsschaltung 304 führen.
  • Leitungen 314 sind zwischen die Schaltschaltung 312 und ein Verbindungselement 316 geschaltet. Das Verbindungselement 316 weist die physischen Charakteristika auf, um eine ordnungsgemäße Verbindung mit dem Typ verwendeter Speicherkarte 200 zu ermöglichen. Das Verbindungselement 316 weist sowohl Ausgangsanschlüsse als auch I/O-Anschlüsse auf, die mit Schnittstellenleitungen 204 verbunden sind. Der CLK-, der Vdd- und der GND-Anschluß sind üblicherweise als Ausgangsanschlüsse zum Bereitstellen des Systemtaktsignals und der Leistungs- und Massespannung entlang der jeweiligen Schnittstellenleitungen 204 konfiguriert. Diese Ausgänge werden üblicherweise durch den Host-Steuerungslogikschaltungsaufbau 318 des Host 102 erzeugt.
  • Zusätzlich umfaßt das Verbindungselement 316 I/O-Anschlüsse, wie z. B. Datenanschlüsse D1, D2,..., DN, die Daten senden und empfangen. Ein Befehlsanschluß (CMD) kann als ein I/O-Anschluß zum Senden und Empfangen von Befehlen zwischen dem Host 102 und der Speichersteuerung 104 konfiguriert sein. Der CMD-Anschluß empfängt Antworten von der Speichersteuerung 104, die den Host 102 über den Status der Befehle benachrichtigt. Die Speichersteuerung 104 kann z. B. ein Signal an den Host 102 entlang der CMD-Leitung zurückgeben, um anzuzeigen, ob ein Befehl von dem Host 102 ordnungsgemäß empfangen wurde oder nicht. Wenn ein Fehler bei dem Senden des Befehls erfaßt wurde, kann die Speichersteuerung 104 eine Fehlerantwort mit einem Fehlercode, der den Typ des erfaßten Fehlers anzeigt, senden.
  • Die in 3 gezeigten Komponenten des Hosts 102 werden durch den Host-Steuerungslogikschaltungsaufbau 318 gesteuert. Der Host-Steuerungslogikschaltungsaufbau 318 liefert Steuerungssignale an das Benutzervorrichtungsverarbeitungssystem 300, die Standardübertragungsschaltung 304, die Schnell-Seriell-Übertragungsschaltung 306 und die Schaltschaltung 312. Der Host-Steuerungslogikschaltungsaufbau 318 liefert Signale an die verschiedenen Schaltungen, um entweder den Schnell-Seriell-Übertragungsmodus oder den Standardübertragungsmodus auszuwählen. Der Host 102 kann wahlweise zusätzliche Übertragungsschaltungen aufweisen, die ausgewählt werden sollen, wenn mehrere Übertragungsmodi erwünscht sind.
  • Ferner kann der Host-Steuerungslogikschaltungsaufbau 318 einen Schaltungsaufbau oder eine Software aufweisen, der/die in der Lage ist zu bestimmen, wann der Standardübertragungsmodus nicht ausreichend schnell ist, um große zu übertragende Datenmengen zu handhaben, und kann dadurch zu dem Schnell-Seriell-Übertragungsmodus schalten. Alternativ kann der Host-Steuerungslogikschaltungsaufbau 318 eine Benutzereingabe empfangen, die den Schnell-Seriell-Übertragungsmodus anfordert, wenn der Benutzer den Bedarf nach einer schnelleren Übertragungsrate antizipiert. Der Host-Steuerungslogikschaltungsaufbau 318 sendet ein Signal an entweder die Schnell-Seriell-Übertragungsschaltung 306 oder die Standardübertragungsschaltung 304, um die ordnungsgemäße Schaltung für eine Operation in dem ausgewählten Modus zu aktivieren. Der Host-Steuerungslogikschaltungsaufbau 318 signalisiert ferner der Schaltschaltung 312, die Schaltungselemente geeignet zu konfigurieren. Zusätzlich weist der Host-Steuerungslogikschaltungsaufbau 318 einen Oszillator oder einen anderen Typ von Taktungsvorrichtung zum Bereitstellen eines Referenztaktsignals, das als ein Systemtakt verwendet wird, auf. Der Host-Steuerungslogikschaltungsaufbau 318 liefert ferner Befehlssignale an die Speichersteuerung 104 entlang einer CMD-Leitung.
  • Bezug nehmend auf die 4A und 4B ist ein Ausführungsbeispiel der Speichersteuerung 104 gezeigt. Die Komponenten der Speichersteuerung 104 können gemeinsam, falls dies erwünscht ist, als eine anwendungsspezifische integrierte Schaltung (ASIC) hergestellt sein. Die D1-, D2-,..., DN-, CLK-, CMD-, Vdd- und GND-Schnittstellenleitung 204 sind entfernbar zwischen das Verbindungselement 316 des Hosts 102, wie oben beschrieben ist, und ein Verbindungselement 400 der Speichersteuerung 104 geschaltet. Das Verbindungselement 400 ist derart konfiguriert, daß es mit dem Verbindungselement 316 kompatibel ist. Anders ausgedrückt entspricht der Ort der Kontakte des Verbindungselementes 400 der Form und dem Ort der Kontakte innerhalb einer Aufnahmeeinrichtung (nicht gezeigt) des Verbindungselementes 316. Wenn die Speicherkarte 200 in die Aufnahmeeinrichtung eingesteckt ist, sind die Kontakte des Verbindungselementes 400 elektrisch mit den Kontakten des Verbindungselementes 316 gekoppelt. Das Verbindungselement 400 ist gemäß dem Formfaktor des bestimmten verwendeten Speicherkartensystems konfiguriert. Daten, die in dem Host 102 erzeugt werden, können über die Verbindungselemente an die Speicherkarte 200 gesendet werden. Wenn der Host 102 Daten von den Spei cherbänken 202 wiedergewinnt, werden die Daten von der Speicherkarte 200 über die Verbindungselemente an den Host 102 gesendet.
  • Die Speichersteuerung 104 weist ferner eine erste Schaltschaltung 404 auf, die auf die gleiche Weise wie die Schaltschaltung 312 des Hosts 102 konfiguriert sein kann. Die erste Schaltschaltung 404 der Speichersteuerung 104 empfängt und sendet Daten entlang der Leitungen 402, die zwischen das Verbindungselement 400 und die erste Schaltschaltung 404 geschaltet sind. Die erste Schaltschaltung 404 weist Schaltungselemente auf, die es ermöglichen, daß die Leitungen 402 mit den Leitungen 406 gekoppelt sind, die zwischen die erste Schaltschaltung 404 und eine Standardübertagungsschaltung 408 gekoppelt sind, oder mit Leitungen 410, die zwischen die erste Schaltschaltung 404 und eine Schnell-Seriell-Übertragungsschaltung 412 geschaltet sind. Die Leitungen 410 sind als „DR+", „DR-", „DT+" und „DT-" bezeichnet, wobei „DR" Daten darstellt, die von dem Host 102 empfangen werden, und „DT" Daten darstellt, die an den Host 102 gesendet werden. Die Symbole „+" und „-" stellen die positiven und negativen Leitungen dar, die bei dem oben erwähnten seriellen Differentialschema verwendet werden.
  • Die Standardübertragungsschaltung 408 und die Schnell-Seriell-Übertragungsschaltung 412 der Speichersteuerung können einen Schaltungsaufbau aufweisen, der der Standardübertragungsschaltung 304 bzw. der Schnell-Seriell-Übertragungsschaltung 306 des Hosts ähnelt. Ähnlich führen die Standardübertragungsschaltung 408 und die Schnell-Seriell-Übertragungsschaltung 412 im wesentlichen die gleiche Funktion wie die Schaltungen 304 und 306 durch.
  • Ein LANGSAMDATEN-Bus 414 ist mit I/O-Anschlüssen der Standardübertragungsschaltung 408 verbunden. Ein SCHNELLDATEN-Bus 415 ist mit I/O-Anschlüssen der Schnell-Seriell-Übertragungsschaltung 412 verbunden. Die Busse 414 und 415 sind außerdem mit einer zweiten Schaltschaltung 416 verbun den, die in Verbindung mit der ersten Schaltschaltung 404 wirkt, um entweder die Standardübertragungsschaltung 408 oder die Schnell-Seriell-Übertragungsschaltung 412 in den Datenübertragungspfad zu verbinden. Daten werden entlang eines Datenbus 417 zu einer Kompressions/Dekompressionsmaschine 418 übertragen, die einen Schaltungsaufbau zum Komprimieren von Daten während eines Datenschreibbefehls aufweist. Die Schaltschaltungen und die verschiedenen Datenübertragungspfade verlassen sich nicht auf die Operation der Kompressions/Dekompressionsmaschine 418, um die Datenpfadschaltungsprozeduren durchzuführen. Ähnlich verläßt sich die Kompressions/Dekompressionsmaschine 418 nicht auf die Operation der Datenpfadschaltungskonfiguration, um die Kompressions- und Dekompressionsprozeduren durchzuführen. Deshalb kann die Kompressions/Dekompressionsmaschine 418 ein optionales Merkmal sein, das zu dem hierin offenbarten Datenspeichersystem 100 hinzugefügt werden kann. Während eines Datenlesebefehls verwendet die Kompressions/Dekompressionsmaschine 418 einen Dekompressionsschaltungsaufbau, um Daten, die unter Verwendung eines Algorithmus komprimiert wurden, der dem Dekompressionsschaltungsaufbau bekannt ist, zu dekomprimieren. Die Schnelldatenübertragungsgeschwindigkeit der Schaltungsanordnung kann durch die Kompressions/Dekompressionsmaschine 418 verbessert werden, was es ermöglicht, daß langsamere Medien Daten mit der gleichen Hochgeschwindigkeitsrate annehmen. Da die Kompressions/Dekompressionsmaschine 418 weniger Informationen an den Speicher 106 zur Speicherung sendet, können die komprimierten Daten viel schneller als Daten gespeichert werden, die nicht komprimiert sind. Ein weiterer Vorteil eines Hinzufügens einer Kompressionsfunktionalität zu der Speichersteuerung 104 besteht darin, daß weniger Speicherraum in einem Speicher benötigt wird, was es dem Benutzer ermöglicht, mehr Daten zu speichern. Durch ein Komprimieren von Daten während des Schreibens von Daten in den Speicher 106 nehmen die Daten weniger Speicherraum in dem Speicher 106 ein. Deshalb kann die Speicherkapazität des Speichers 106 aufgrund dieser Kompression von Daten wirksam erhöht werden.
  • Die komprimierten Daten werden zwischen der Kompressions/Dekompressionsmaschine 418 und einem Zwischenspeicher 420 übertragen, der in der Lage ist, Daten mit der Schnellübertragungsrate zu handhaben. Während eines Schreibbefehls sendet der Zwischenspeicher 420 Daten an eine Speichervorrichtungsschnittstelle 422, die einen Schaltungsaufbau umfaßt, der in der Lage ist, die komprimierten Daten zur schnellen Speicherung zu organisieren. Die Speichervorrichtungsschnittstelle 422 kann einen Sequenzer zum Verteilen der seriellen Daten unter einer Mehrzahl von Pfaden aufweisen, die zu der Mehrzahl von Speicherbänken 202 führen. Vorzugsweise weist die Speichervorrichtungsschnittstelle 422 zusätzliche Zwischenspeicher zum zeitweiligen Halten der komprimierten Daten auf, wie dieselben an die Speicherbänke 202 übertragen werden. Die Speichervorrichtungsschnittstelle 422 weist ferner einen Fehlerkorrekturcode(ECC-) Schaltungsaufbau zum Hinzufügen einer Parität zu den komprimierten Daten auf, was, wenn von dem Speicher 106 zurückgelesen wird, die Erfassung und Korrektur von Fehlern ermöglicht. Die Reihenfolge der Kompressions/Dekompressionsmaschine 418 und der Speichervorrichtungsschnittstelle 422 kann umgekehrt sein. In einem derartigen Fall ist die Kompression von Daten die letzte Funktion, die vor einem Speichern der Daten in den Speicherbänken 202 durchgeführt wird, und die Dekompression von Daten ist die erste Funktion, die durchgeführt wird, wenn die Daten von den Speicherbänken 202 gelesen werden.
  • Die Speichersteuerung 104 der 4A und 4B weist ferner einen Speichersteuerungslogikschaltungsaufbau 424 auf, der eine Steuerungsfunktionalität für die Speichersteuerung 104 liefert. Der Speichersteuerungslogikschaltungsaufbau 424 empfängt Befehle von dem Host 102 entlang der CMD-Leitung und liefert Signale an die geeigneten Schaltungen zum Ausführen des angeforderten Befehls. Wenn ein Fehler bei dem Empfang des Befehls von dem Host 102 auftritt, gibt der Speichersteuerungslogikschaltungsaufbau 424 einen Fehlercode über die CMD-Leitung zurück an den Host 102, um den Host 102 über den Fehler zu informieren. Die CLK-Leitung liefert das Systemtaktsignal an den Speichersteuerungslogikschaltungsaufbau 424 zum Synchronisieren der Speichersteuerung 104 mit dem Host 102.
  • Der Speichersteuerungslogikschaltungsaufbau 424 liefert Signale an die erste Schaltschaltung 404, die Standardübertragungsschaltung 408, die Schnell-Seriell-Übertragungsschaltung 412 und die zweite Schaltschaltung 416, um zwischen dem Standardübertragungsmodus und dem Schnell-Seriell-Übertragungsmodus auszuwählen. Der Datenübertragungspfad geht durch die Schnell-Seriell-Übertragungsschaltung 412, wenn der Schnell-Seriell-Übertragungsmodus ausgewählt ist, und geht durch die Standardübertragungsschaltung 408, wenn der Standardübertragungsmodus ausgewählt ist. Der Speichersteuerungslogikschaltungsaufbau 424 aktiviert die geeignete Übertragungsschaltung 408 oder 412 und leitet die entsprechende Konfiguration in den Schaltschaltungen 404 und 416 ein.
  • Die Komponenten des Datenspeichersystems 100 können in Hardware, Software, Firmware oder einer Kombination derselben implementiert sein. Bei den offenbarten Ausführungsbeispielen können der Host-Steuerungslogikschaltungsaufbau 318 und der Speichersteuerungslogikschaltungsaufbau 424 in Firmware oder Software implementiert sein, die in einem Speicher gespeichert ist, und die durch ein geeignetes Instruktionsausführungssystem ausführbar ist. Wenn derselbe in Hardware implementiert ist, wie bei einem alternativen Ausführungsbeispiel, können die Prozessoren mit einer oder einer Kombination der folgenden Technologien implementiert sein, die in der Technik bekannt sind: einer diskreten Logikschaltung, die Logikgatter aufweist, zum Implementieren von Logikfunktionen auf Datensignale hin, einer ASIC, die geeignete Kombinationslogikgatter aufweist, einem programmierbaren Gatearray (PGA), einem frei programmierbaren Gatearray (FPGA), usw.
  • Im allgemeinen können Ausführungsbeispiele des Hosts 102 und der Speichersteuerung 104 so konfiguriert sein, wie in den 3, 4A und 4B, wie oben beschrieben ist, dargestellt ist. Die allgemeinen Komponenten des Hosts 102 und der Speichersteuerung 104 wurden beschrieben, wobei nun Bezug auf die 5 bis 11 genommen wird, die die einzelnen Komponenten des Hosts 102 und der Speichersteuerung 104 weiter definieren. Es wird darauf verwiesen, daß alternative Ausführungsbeispiele für die folgenden Komponenten durch Fachleute auf diesem Gebiet, die ein klares Verständnis der vorliegenden Offenbarung haben, realisiert werden können.
  • Die 5 und 6 stellen Ausführungsbeispiele von Abschnitten des Hosts 102 bzw. der Speichersteuerung 104 dar, wenn das Datenspeichersystem 100 konfiguriert ist, um in einem Halb-Duplex-Modus zu arbeiten. 5 stellt einen Abschnitt des Hosts 102 dar, der die Schaltungsanordnung bildet, und weist Details der Standardübertragungsschaltung 304, der Schnell-Seriell-Übertragungsschaltung 306 und der Schaltschaltung 312 auf. Die Ausgänge von der Schnell-Seriell-Übertragungsschaltung 306 sind in der Schaltschaltung 312 in einer Halb-Duplex-Anordnung verbunden, wobei die Leitungen DT+ und DR+ einen positiven Anschluß gemeinschaftlich verwenden und die Leitungen DT- und die DReinen negativen Anschluß gemeinschaftlich verwenden.
  • Die Schaltschaltung 312 weist eine Schaltersteuerungsschaltung 500 auf, die ein Signal von dem Host-Steuerungslogikschaltungsaufbau 318 empfängt, das den Datenübertragungsmodus anzeigt, in dem die Datenspeichervorrichtung 100 wirken soll. Sobald die Schaltersteuerungsschaltung 500 einen Befehl von dem Host-Steuerungslogikschaltungsaufbau 318 empfangen hat, behält die Schaltersteuerungsschaltung 500 den erwünschten Modus bei. Deshalb muß der Host-Steuerungslogikschaltungsaufbau 318 die Anforderung nur einmal ein leiten und die Schaltersteuerungsschaltung 500 hält den erwünschten Zustand, bis sie zu einem anderen Zustand umprogrammiert wird. Die Schaltersteuerungsschaltung 500 kann ein Register aufweisen, das den erwünschten Zustand hält. Die Schaltersteuerungsschaltung 500 liefert konstante Signale an eine Mehrzahl von Schaltern 502 und hält die Schalter 502 in dem erwünschten Zustand, bis ein unterschiedlicher Zustand angefordert wird.
  • Wenn der Standardübertragungsmodus angefordert wird, konfiguriert die Schaltersteuerungsschaltung 500 die Schalter 502 in einen derartigen Zustand, daß die Datenleitungen D1, D2,..., DN, die durch die Standardübertragungsschaltung 304 gelangen, elektrisch mit den Leitungen 314 verbunden sind, die zu dem Verbindungselement 316 führen. In der Standardübertragungsschaltung 304 werden Daten entlang des LANGSAMDATEN-Bus 302 in eine Langsam-Verarbeitungsschaltung 503 eingegeben, wo die parallelen oder seriellen Leitungen in ein Format umgewandelt werden, das eine Anzahl N von Datenleitungen D1, D2,..., DN aufweist. Die Datenleitungen D1, D2,..., DN sind mit Push-Pull- bzw. Gegentakt-Sende/Empfangsgeräten 504 verbunden. Die Push-Pull-Sende/Empfangsgeräte 504 weisen treibende Verstärker zum Treiben von Datensignalen in einer Richtung oder der anderen auf. Die Push-Pull-Sende/Empfangsgeräte 504 entlang der Datenleitungen D1, D2,..., DN sind ferner mit einem ersten Satz von Kontakten auf einer Seite der Schalter 502 verbunden. Wenn in den Standardübertragungsmodus geschaltet wird, ist der LANGSAMDATEN-Bus 302 mit den Datenleitungen 314 über die Push-Pull-Sende/Empfangsgeräte 504 verbunden.
  • In dem Schnell-Seriell-Übertragungsmodus konfiguriert die Schaltersteuerungsschaltung 500 Schalter 502 in einen alternativen Zustand, derart, daß die positiven und die negativen Leitungen von der Schnell-Seriell-Übertragungsschaltung 306 mit den Leitungen D2 und D3 der Datenleitungen 314 verbunden sind. Der positive Abschnitt des seriellen Differentialsignals ist mit der Datenleitung D2 verbun den und der negative Abschnitt ist mit D3 verbunden. Eine BESETZT-Leitung ist mit der Datenleitung Dl verbunden und empfängt ein Signal von der Speichersteuerung 104, wenn die Speichersteuerung 104 besetzt und nicht bereit zum Empfangen von mehr Daten ist. Ansprechend auf ein Besetzt-Signal wartet der Host 102 mit dem Senden zusätzlicher Daten, bis die Speichersteuerung 104 ein „Nicht Besetzt"-Signal sendet. Die verbleibenden Datenleitungen D4, D5,..., DN werden bei dem Halb-Duplex-Schnell-Seriell-Übertragungsmodus nicht verwendet. Obwohl 5 die Verwendung von Datenleitungen Dl, D2 und D3 in der gezeigten Anordnung darstellt, kann der Host derart konfiguriert sein, daß drei willkürliche Datenleitungen für die BESETZT-, die positive und die negative Leitung verwendet werden. Die Bestimmung dessen, welche Datenleitungen zu verwenden sind, kann auf den physischen Charakteristika des Hosts 102 basieren.
  • Ein zweiter Satz von Kontakten von Schaltern 502, die den BESETZT-, den positiven und den negativen Anschluß aufweisen, sind mit Differenzverstärkern 508 und 510 über Schalterpaare 512 bzw. 514 verbunden. Die Schaltersteuerungsschaltung 500 kann das Schalterpaar 512 schließen, wenn Daten gesendet werden, oder anders ausgedrückt, wenn Daten von dem Host 102 durch die Speichersteuerung 104 an den Speicher 106 geschrieben werden sollen. Wenn die Schaltersteuerungsschaltung 500 das Schalterpaar 512 schließt, wird DT+ mit der D2-Leitung verbunden und DT- wird mit der D3-Leitung verbunden. Wenn Daten von dem Speicher 106 gelesen werden, schließt die Schaltersteuerungsschaltung 500 das Schalterpaar 514, um die Leitungen DR+ und DR- mit D2 und D3 zu verbinden. Die Differenzverstärker 508 und 510 sind mit einer Schnellverarbeitungsschaltung 506 verbunden. Die Schnellverarbeitungsschaltung 506 weist eine Phasenregelschleifen- (PLL-) Schaltung auf, die das Taktsignal von der CLK-Leitung empfängt und ihren internen Takt mit dem Referenztaktsignal synchronisiert. Ferner multipliziert die PLL-Schaltung die Taktfrequenz zur Verwendung bei dem Schnell-Seriell-Übertragungsmodus. Die Schnellverarbei tungsschaltung 506 weist ferner eine Seriell/Deseriell-Schaltung auf, die Daten von einem Acht-Bit-Parallel-Format in z. B. ein serielles Format umwandelt oder umgekehrt. Beide Datensignale und Taktsignale sind in einen Datenstrom für die Übertragung von Daten in dem Schnell-Seriell-Übertragungsmodus eingebettet.
  • Während eines Datenschreibbefehls ist das Schalterpaar 512 geschlossen und die Schnellverarbeitungsschaltung 506 sendet Daten seriell durch den Differenzverstärker 508, der Differentialdaten entlang der Datenleitungen D2 und D3 ausgibt. Während eines Lesebefehls ist das Schalterpaar 514 geschlossen und der Differenzverstärker 510 empfängt Differentialdaten von den Datenleitungen D2 und D3 und sendet digitale Daten an die Schnellverarbeitungsschaltung 506.
  • Die Schalter 502 und die Schalterpaare 512 und 514 können jeden Typ elektrischer oder transistorbasierter Vorrichtung in Silizium oder etwas anderem umfassen, der alternative Verbindungen zwischen einem ersten Kontakt und einer Mehrzahl auswählbarer Kontakte liefert, oder der einen alternativen Offen- oder Geschlossen-Zustand liefert. Die alternativen Verbindungskonfigurationen der Schalter 502 liefern alternative Pfade von der Gruppe von Datenleitungen 314 zu mehreren Sätzen von Leitungen, z. B. Leitungen 302 oder den Leitungen DT- und der DR-.
  • Wahlweise kann das Datenspeichersystem 100 derart, wie oben beschrieben ist, konfiguriert sein, daß der Host 102 und die Speichersteuerung 104 mehr als zwei auswählbare Pfade aufweisen. Zusätzliche Pfade und Übertragungsschaltungen können hinzugefügt werden, was die Auswahl zusätzlicher Datenübertragungsmodi erlaubt. Bei dem Ausführungsbeispiel, bei dem zusätzliche Pfade enthalten sind, können die Schalter 502 konfiguriert sein, um zusätzliche Anschlüsse aufzuweisen, derart, daß die Leitungen 314 entlang anderer Pfade durch zusätzliche Übertragungsschaltungen verbunden sein können.
  • 6 ist ein Blockdiagramm eines Ausführungsbeispiels des Schaltungsabschnitts der Speichersteuerung 104, das entworfen ist, um in Verbindung mit der Halb-Duplex-Anordnung des Hosts 102 aus 5 zu arbeiten. Die erste Schaltschaltung 404 der Speichersteuerung kann im wesentlichen die gleiche wie die Schaltschaltung 312 des Hosts sein. Eine Schaltersteuerungsschaltung 600 empfängt einen Befehl von dem Speichersteuerungslogikschaltungsaufbau 424, zu dem erwünschten Datenübertragungsmodus zu schalten. Vorzugsweise sind die Schaltersteuerungsschaltungen 500 und 600 so synchronisiert, daß der Übertragungsmodus auf beiden Seiten konsistent ist. Um diesbezüglich eine Synchronisierung beizubehalten, sendet der Host-Steuerungslogikschaltungsaufbau 318 einen Befehl entlang der CMD-Leitung an den Speichersteuerungslogikschaltungsaufbau 424, der den Speichersteuerungsprozessor 424 anweist, die Schaltersteuerungsschaltung 600 aufzufordern, zu dem angeforderten Datenübertragungsmodus zu schalten. Die Schaltersteuerungsschaltung 600 behält ein konstantes Signal an Schaltern 602 bei, um die Schalter 602 in dem erwünschten Zustand zu halten. In dem Schnell-Seriell-Übertragungsmodus sind die Datenleitungen 402 elektrisch mit den Leitungen DR- und der DT- gekoppelt. In dem Standardübertragungsmodus sind die Datenleitungen 402 mit dem LANGSAMDATEN-Bus 414 über die Standardübertragungsschaltung 408 gekoppelt.
  • Push-Pull-Sende/Empfangsgeräte 604 und eine Langsamverarbeitungsschaltung 605 sind zwischen die Datenleitungen 402 und den LANGSAMDATEN-Bus 414 in der Standardübertragungsschaltung 408 geschaltet. Ein Anschluß jedes der Schalter 602 ist mit Schalterpaaren 612 und 614 verbunden. Das Schalterpaar 612 verbindet die Leitungen D2 und D3 der Datenleitungen 402 mit dem Differenzverstärker 608. Während eines Datenschreibbefehls in dem Schnell-Seriell-Übertragungsmodus ist das Schalterpaar 612 geschlossen und die Differentialsignale entlang der Leitungen DR+ und DRwerden in den Differenzverstärker 608 eingegeben, der ein Signal an den Eingang einer Schnellverarbeitungsschaltung 606 liefert. Während eines Datenlesebefehls in dem Schnell-Seriell-Übertragungsmodus schließt die Schaltersteuerungsschaltung 600 das Schalterpaar 614 und die Schnellverarbeitungsschaltung 606 liefert ein Ausgangssignal an einen zweiten Differenzverstärker 610. Der Differenzverstärker 610 sendet serielle Differentialausgangssignale entlang der Leitungen DT+ und der DT- an Leitungen D2 und D3 der Datenleitungen 402.
  • Die 5 und 6 stellen, wie oben beschrieben ist, ein Beispiel einer Halb-Duplex-Anordnung dar. Als eine Alternative zu der Halb-Duplex-Anordnung liefern die 7 und 8 ein Ausführungsbeispiel des Hosts 102 und der Speichersteuerung 104 in einem Voll-Duplex-Modus. Der Hauptunterschied zwischen den beiden Sätzen von Figuren besteht darin, daß bei der Halb-Duplex-Anordnung der 5 und 6 die positiven Leitungen DT+ und DR+ einen positiven Anschluß gemeinschaftlich verwenden und die negativen Leitungen DT- und DR- einen gemeinsamen negativen Anschluß gemeinschaftlich verwenden. Deshalb werden in den 5 und 6 Daten auf den gleichen Datenleitungen D2 und D3 entweder gesendet oder empfangen. Serielle Differentialdaten werden entlang der Datenleitungen D2 und D3 in einer Richtung oder der anderen übertragen. In den 7 und 8 sind die vier Ausgänge von den Differenzverstärkern 508, 510, 608 und 610 mit vier Datenleitungen D2, D3, D4 und D5 verbunden. Wie oben erwähnt ist, können alle der Datenleitungen D1, D2, ..., DN willkürlich als die spezifischen Datenleitungen für die Übertragung der Signale von DT+, DT-, DR+ und DRausgewählt sein. Mit der Verwendung dieser beiden zusätzlichen Datenleitungen kann ein serielles Differentialsignal entlang zweier Datenleitungen gesendet werden und ein weiteres serielles Differentialsignal kann gleichzeitig entlang zweier unterschiedlicher Datenleitungen empfangen werden.
  • In 7, die den Host 102 in dem Voll-Duplex-Modus zeigt, konfiguriert eine Schaltersteuerungsschaltung 700 fünf Schalter 702 basierend auf einer Anforderung nach einer Operation des Datenspeichersystems 100 in dem Standardübertragungsmodus oder dem Schnell-Seriell-Übertragungsmodus. Verglichen mit dem Halb-Duplex-Modus aus 5 zeigt 7 zwei zusätzliche Schalter 702, die zwischen den Datenleitungen 314 und den alternativen Pfaden durch die Standardübertragungsschaltung 304 und die Schnell-Seriell-Übertragungsschaltung 306 hinzugefügt sind. In dem Schnell-Seriell-Übertragungsmodus konfiguriert die Schaltersteuerungsschaltung 700 die Schalter 702, wie in 7 gezeigt ist, derart, daß die Leitungen D1, D2, D3, D4 und D5 mit der BESETZT-Leitung bzw. Datenanschlüssen DT+, DT-, DR+ und DR- verbunden sind. Die Schaltersteuerungsschaltung 700 schließt das Schalterpaar 712 während eines Schreibbefehls und schließt das Schalterpaar 714 während eines Lesebefehls. Die Schalterpaare 712 und 714 können optional in dem Voll-Duplex-Modus sein, da eine Sendung und ein Empfang gleichzeitig sein können. Aus diesem Grund können die Schalterpaare 712 und 714 entfernt oder durch eine Durchflußverbindung ersetzt werden.
  • 8 stellst die Speichersteuerung 104 in der Voll-Duplex-Anordnung dar und arbeitet in Verbindung mit der Voll-Duplex-Anordnung des Hosts 102 aus 7. 8 ähnelt 6 mit der Ausnahme, daß eine Schaltersteuerungsschaltung 800 fünf Schalter 802 anstelle von dreien konfiguriert. Differenzverstärker 608 und 610 sind in dem Voll-Duplex-Modus mit den Datenleitungen D2, D3, D4 und D5 verbunden, anstelle von nur zwei Datenleitungen wie bei dem Halb-Duplex-Modus. Diese Verbindungen werden durch Schalterpaare 812 und 814 hergestellt, die in dem Voll-Duplex-Modus wieder optional sein können.
  • 9 stellt ein Ausführungsbeispiel der Kompressions/Dekompressionsmaschine 418 dar. In einem Datenschreibmodus bewegen sich eingehende Daten zu der Kompressi ons/Dekompressionsmaschine 418 zu einer Dateneingangssteuerungsschaltung 900, einer Kompressionsschaltung 902 und einer Kompressionserfassungsschaltung 904. Die Kompressionsschaltung 902 komprimiert die eingehenden Daten und sendet die komprimierten Daten an die Dateneingangssteuerungsschaltung 900 und an die Kompressionserfassungsschaltung 904. Die Kompressionserfassungsschaltung 904, die die eingehenden Daten empfangen und die Daten durch die Kompressionsschaltung 902 komprimiert hat, vergleicht die beiden und bestimmt, ob die eingehenden Daten bereits vor der Kompression durch die Kompressionsschaltung 902 komprimiert wurden. Die Kompressionserfassungsschaltung 904 kann diese Bestimmung basierend auf der Tatsache durchführen, daß, wenn die Kompressionsschaltung 902 Daten, die bereits komprimiert wurden, komprimiert, der durch die Kompressionsschaltung 902 verwendete Algorithmus zur Kompression der Daten die Daten tatsächlich erweitern kann. Deshalb bestimmt, wenn die Daten nicht zu einer weiteren Kompression in der Lage sind, oder wenn die Daten durch die Kompressionsschaltung 902 anstelle komprimiert zu werden, erweitert werden, die Kompressionserfassungsschaltung 904, daß die Daten bereits komprimiert wurden.
  • Die Kompressionserfassungsschaltung 904 sendet ein Signal an die Dateneingangssteuerungsschaltung 900, das die Dateneingangssteuerungsschaltung 900 anweist, zwischen entweder den eingehenden Daten oder den komprimierten Daten von der Kompressionsschaltung 902 auszuwählen. Die Kompressionserfassungsschaltung 904 kann ein zusätzliches Signal an die Kompressionsschaltung 902 senden, um die Kompressionsschaltung 902 zu informieren, daß der verwendete Kompressionsalgorithmus nicht wirksam ist. Folglich kann die Kompressionsschaltung 902, wenn ihr der nicht wirksame Algorithmus berichtet wird, zu einem unterschiedlichen Algorithmus schalten. Die Kompressionserfassungsschaltung 904 benachrichtigt die Dateneingangssteuerungsschaltung 900, ob die eingehenden Daten bereits komprimiert wurden oder nicht. Wenn die eingehenden Daten bereits komprimiert wurden, ignoriert die Dateneingangssteuerungsschaltung 900 die Daten von der Kompressionsschaltung 902 und wählt die bereits komprimierten eingehenden Daten aus. Wenn die eingehenden Daten zuvor nicht komprimiert wurden, ignoriert die Dateneingangssteuerungsschaltung 900 die eingehenden Daten und wählt die komprimierten Daten aus der Kompressionsschaltung 902 aus. Die Dateneingangssteuerungsschaltung 900 überträgt die ausgewählten Daten gemeinsam mit einem Kompressionsanzeigesymbol, das anzeigen kann, ob die übertragenen Daten die komprimierten Daten von der Kompressionsschaltung 902 oder die bereits komprimierten eingehenden Daten sind. Das Kompressionsanzeigesymbol kann zusätzlich Informationen bezüglich des Typs des Algorithmus aufweisen, den die Kompressionsschaltung 902 verwendet hat, um die eingehenden Daten zu komprimieren.
  • Wenn Daten von dem Speicher 106 gelesen werden, werden die Daten in den Dekompressionsabschnitt der Kompressions/Dekompressionsmaschine 418 eingegeben. Gespeicherte Daten gehen zu einer Datenausgangssteuerungsschaltung 906, einer Dekompressionsschaltung 908 und einer Kompressionssymbolerfassungsschaltung 910. Die Kompressionssymbolerfassungsschaltung 910 erfaßt das Kompressionsanzeigesymbol, um zu bestimmen, ob die Kompressionserfassungsschaltung 904 die gespeicherten Daten komprimiert hat oder nicht, und, falls dies der Fall ist, den Algorithmus zu bestimmen, der verwendet wurde. Wenn die Kompressionssymbolerfassungsschaltung 910 bestimmt, wie die gespeicherten Daten komprimiert wurden, sendet die Kompressionssymbolerfassungsschaltung 910 ein Signal an die Dekompressionsschaltung 908, um die Dekompressionsschaltung 908 anzuweisen, wie die gespeicherten Daten zu dekomprimieren sind. Die Kompressionssymbolerfassungsschaltung 910 benachrichtigt ferner die Datenausgangssteuerungsschaltung 906, ob die gespeicherten Daten durch einen bekannten Kompressionsalgorithmus in der Kompressionsschaltung 902 komprimiert wurden oder nicht. Ansprechend darauf wählt die Datenausgangssteuerungsschaltung 906 entweder die nicht dekomprimierten Daten oder die durch die Dekompressionsschaltung 908 dekomprimierten Daten aus. Die Datenausgangssteuerungsschaltung 906 überträgt die ausgewählten Daten an den Ausgang der Kompressions/Dekompressionsmaschine 418.
  • Die 10 und 11 stellen zwei exemplarische Ausführungsbeispiele der Speichervorrichtungsschnittstelle 422 dar, die als eine Schnittstelle zwischen der Kompressions/Dekompressionsmaschine 418 der Speichersteuerung 104 und den Speicherbänken 202, wie in 4 gezeigt ist, wirkt. Bei einem Schreibbefehl überträgt die Speichervorrichtungsschnittstelle 422 Datenblöcke an die Speicherbänke 202 und bei einem Lesebefehl gewinnt die Speichervorrichtungsschnittstelle 422 Datenblöcke von den Speicherbänken 202 wieder. Bei dem Ausführungsbeispiel aus 10 überträgt die Speichervorrichtungsschnittstelle 422 serielle Daten von dem Zwischenspeicher 420 an eine Hochgeschwindigkeits-ECC-Schaltung 1000. Die ECC-Schaltung 1000 ist mit einem Hochgeschwindigkeitssequenzer 1002 verbunden, der Daten entlang einer Anzahl von Verzweigungen entlang Pfaden zu einer entsprechenden Anzahl von Zwischenspeichern 1004 sendet. Während eines Datenschreibbefehls empfängt die ECC-Schaltung 1000 Daten von dem Zwischenspeicher 420 und fügt Paritätsbits zu den Daten hinzu. Wenn die Daten von den Speicherbänken 202 gelesen werden, erfaßt die ECC-Schaltung 1000 die Daten nach Fehlern und korrigiert korrigierbare Fehler in den Daten und entfernt dann die Paritätsbits und sendet die korrigierten Daten zurück an den Zwischenspeicher 420.
  • Während des Datenschreibbefehls trennt der Hochgeschwindigkeitssequenzer 1002 die seriellen Daten von der ECC-Schaltung 1000 in mehrere parallele Pfade. Die Anzahl von Pfaden kann z. B. vier oder jede Zahl sein, derart, daß die Übertragungsrate jedes Zwischenspeichers 1004 mal der Anzahl von Zwischenspeichern ausreicht, um die Übertragung von Daten mit der hohen Geschwindigkeit während des Schnell-Seriell-Übertragungsmodus beizubehalten. Die Zwi schenspeicher 1004 speichern die Daten entlang der Pfade, die durch den Sequenzer 1002 getrennt sind, zeitweilig, bilden die Daten in Blöcke und übertragen die Datenblöcke in entsprechende Speicherbänke 202. Es wird darauf verwiesen, daß, wenn das Datenspeichersystem 100 in dem Standardübertragungsmodus ist, alle bis auf einen Zwischenspeicher 1004 untätig sein können, wenn sie nicht in Verwendung sind. In diesem Fall können Leistungseinsparungen aufgrund der Verwendung von nur einem Zwischenspeicher 1004 zu einem Zeitpunkt realisiert werden.
  • 11 stellt ein alternatives Ausführungsbeispiel der Speichervorrichtungsschnittstelle 422 dar, bei dem während eines Datenschreibbefehls ein segmentierter Hochgeschwindigkeitszwischenspeicher 1100 serielle Daten empfängt und die Daten an einen Hochgeschwindigkeitssequenzer 1102 überträgt, der die Daten in separate Blöcke entlang einer Anzahl separater Pfade unterteilt. Jeder Block von Daten wird in eine jeweilige ECC-Schaltung 1104 eingegeben, die eine Parität zu den Daten hinzufügt. Die Datenblöcke mit der hinzugefügten Parität werden in Speicherbänken 202 gespeichert. Während eines Datenlesebefehls gewinnen die ECC-Schaltungen 1104 Datenblöcke von den unterschiedlichen Speicherbänken 202 wieder, erfassen existierende Fehler, korrigieren die Fehler, entfernen die Paritätsbits und senden die Datenblöcke an den Sequenzer 1102, der dann die Blöcke wieder zusammensetzt und die Daten seriell wieder an den segmentierten Zwischenspeicher 1100 sendet.
  • Im folgenden wird Bezug auf die Verfahren zum Betreiben des Datenspeichersystems 100 genommen, das oben detailliert Bezug nehmend auf die 1 bis 11 beschrieben wurde. 12 stellt ein exemplarisches Ausführungsbeispiel eines Datenschreibbefehls dar, bei dem Daten, die in dem Host 102 erzeugt werden, in den Speicher 106 geschrieben werden. 13 stellt ein exemplarisches Ausführungsbeispiel eines Datenlesebefehls, durch den Host 102 angefordert, zum Lesen von Daten von dem Speicher 106 dar.
  • 12 stellt einen Datenschreibbefehl dar, der üblicherweise durch den Host 102 eingeleitet wird. Der erste Schritt beinhaltet ein Einleiten der Schaltschaltungen auf den Standardübertragungsmodus, wie in Block 1200 angezeigt ist. Wie in einem Entscheidungsblock 1202 gezeigt ist, wird ein Schritt eines Bestimmens, ob der Host 102 den Schnell-Seriell-Übertragungsmodus angefordert hat oder nicht, durchgeführt. Wenn der Schnell-Seriell-Übertragungsmodus angefordert wird, wird der in Block 1204 angezeigte Schritt durchgeführt. Der Host-Steuerungslogikschaltungsaufbau 318 und der Speichersteuerungslogikschaltungsaufbau 424 senden Signale an die Schaltersteuerungsschaltungen 500, 600, 700, 800 der Schaltschaltungen 312 und 404. Die Schaltersteuerungsschaltungen 500, 600, 700, 800 konfigurieren die Schalter 502, 602, 702, 802 zu einem Zustand, der die Übertragung von Daten in dem Schnell-Seriell-Übertragungsmodus erlaubt. Wenn kein Befehl für den Schnell-Seriell-Übertragungsmodus gemacht wurde, fährt der Fluß mit Block 1206 fort. Es sollte ersichtlich sein, daß der Standardübertragungsmodus ein Vorgabemodus sein kann, wobei das Datenspeichersystem 100 immer in diesem Modus verbleibt, es sei denn, der Schnell-Seriell-Übertragungsmodus wurde spezifisch angefordert. Das Datenspeichersystem 100 kann jedoch auf die entgegengesetzte Weise derart konfiguriert sein, daß der Schnell-Seriell-Übertragungsmodus der Vorgabemodus ist. Bei Ausführungsbeispielen, bei denen mehr als zwei Übertragungsmodi verfügbar sind, kann der Entscheidungsblock 1202 einen Auswahlschritt zum Auswählen unter einer Anzahl unterschiedlicher Übertragungsmodi aufweisen.
  • Das Datenschreibverfahren kann an diesem Punkt enden, wobei der Host 102 und die Speichersteuerung 104 Daten in den Speicher 106 in einem der zwei und mehr Datenübertragungsmodi schreiben. Wenn die Speichersteuerung 104 mit der Kompressions/Dekompressionsmaschine 418 konfiguriert ist, können die verbleibenden Schritte aus 12 in dem Datenschreibverfahren durchgeführt werden.
  • In Block 1206 komprimiert die Kompressionsschaltung 902 die Daten, die in die Kompressions/Dekompressionsmaschine 418 kommen. Dann vergleicht die Kompressionserfassungsschaltung 904 die eingehenden Daten mit den komprimierten Daten, die aus der Kompressionsschaltung 902 ausgegeben werden, wie in Block 1208 angezeigt ist. Die Kompressionserfassungsschaltung 904 verwendet diesen Vergleich, um zu bestimmen, ob die eingehenden Daten vor der Kompression durch die Kompressionsschaltung 902 komprimiert wurden oder nicht. Ein Entscheidungsblock 1210 zeigt den Schritt eines Bestimmens an, ob die eingehenden Daten bereits komprimiert wurden, und, falls dies der Fall ist, steuert den Fluß von Schritten zu Schritt 1212. Bei diesem Schritt signalisiert die Kompressionserfassungsschaltung 904 der Dateneingangssteuerungsschaltung 900, die eingehenden Daten und nicht die komprimierten Daten auszuwählen. Die Dateneingangssteuerungsschaltung 900 wählt die eingehenden Daten aus und fügt ferner eine Kompressionsanzeige hinzu, die anzeigt, daß die gegenwärtigen Daten, die in dem Speicher 106 gespeichert sind, „nicht komprimiert" sind, wie in Block 1214 angezeigt ist.
  • Wenn die Kompressionserfassungsschaltung 904 in dem Entscheidungsblock 1210 bestimmt, daß die eingehenden Daten vor der Kompression von Daten durch die Kompressionsschaltung 902 nicht komprimiert waren, fährt der Verfahrensfluß mit Block 1216 fort. In diesem Schritt signalisiert die Kompressionserfassungsschaltung 904 der Dateneingangssteuerungsschaltung 900, daß die eingehenden Daten zuvor nicht komprimiert wurden, und daß die neu komprimierten Daten ausgewählt werden sollen. Die Dateneingangssteuerungsschaltung 900 wählt die komprimierten Daten aus der Kompressionsschaltung 902 aus und fügt einen Kompressionsindikator (Block 1218) hinzu, der die vorliegenden Daten, die in den Speicher 106 geschrieben werden, als „komprimierte" Daten etikettiert. Nach den Auswahlschritten der Blöcke 1212 und 1216 und den Kompressionsanzeigehinzufügungsschritten der Blöcke 1214 und 1218 fährt ein Fluß mit Block 1220 fort, bei dem die ausgewählten Daten und der entsprechende Kompressionsindikator in den Speicher 106 gespeichert werden.
  • 13 stellt ein Ausführungsbeispiel eines Datenleseverfahrens dar. Blöcke 1306, 1308, 1310, 1312, 1314 und 1316 beziehen sich auf Schritte, die bei dem Abschnitt des Datenleseverfahrens enthalten sind, der eine Dekompression beinhaltet. Wenn das Datenspeichersystem 100 eine Kompressions/Dekompressionsmaschine 418 aufweist, kann diesen Schritten gefolgt werden. Wenn das Datenspeichersystem 100 keine Kompression und Dekompression umfaßt, können diese Schritte weggelassen werden. Ferner kann, wenn das Datenspeichersystem 100 die Schaltungsanordnung aufweist, die die Schaltschaltungen 312, 404 und 416, die Standardübertragungsschaltungen 304 und 408 und die Schnell-Seriell-Übertragungsschaltungen 306 und 412 umfaßt, den in den Blöcken 1300, 1302 und 1304 gezeigten Schritten gefolgt werden. Wenn das Datenspeichersystem 100 keine Schaltungsanordnung aufweist, können diese Schritte weggelassen werden. Deshalb können der Kompressions- und Dekompressionsschritt als separat von den Datenübertragungsmodusschaltungsschritten betrachtet werden. Als ein alternatives Ausführungsbeispiel können die Schritte der Kompression und Dekompression mit den Schritten der Datenübertragungsmodusschaltungsschritte umgekehrt werden, wenn das Datenspeichersystem 100 ein Ausführungsbeispiel aufweist, bei dem die Schaltungsanordnung zwischen dem Speicher 106 und der Kompressions/Dekompressionsmaschine 418 angeordnet ist.
  • 13 stellt die Schritte dar, die bei dem Schalten zwischen den unterschiedlichen Übertragungsmodi beinhaltet sind. Bei Block 1300 werden die Schaltschaltungen auf den Standardübertragungsmodus initialisiert. Der Host-Steuerungslogikschaltungsaufbau 318 und der Speichersteuerungslogikschaltungsaufbau 424 signalisieren den entsprechenden Schaltersteuerungsschaltungen 500, 600, 700 oder 800, die Schalter 502, 602, 702 und 802 und die Schalterpaare 512, 514, 612, 614, 712, 714, 812 und 814 derart zu konfigurieren, daß die Standardübertragungsschaltungen 304 und 408 in den Datenübertragungspfad gekoppelt sind. Bei einem Entscheidungsblock 1302 bestimmt das Datenspeichersystem 100, ob ein Befehl durchgeführt wurde oder nicht, in dem Schnell-Seriell-Übertragungsmodus zu arbeiten. Wenn der Entscheidungsblock 1302 bestimmt, daß der Schnell-Seriell-Übertragungsmodus angefordert wurde, fährt der Fluß mit Block 1304 fort, bei dem das Datenspeichersystem 100 die Schalter und Schalterpaare derart konfiguriert, daß die Schnell-Seriell-Übertragungsschaltungen 306 und 412 in den Datenübertragungspfad gekoppelt werden. Sobald der Datenübertragungsmodus eingerichtet wurde und die ordnungsgemäße Übertragungsschaltung in den Datenübertragungspfad geschaltet wurde, können die Daten, falls dies nötig ist, weiter dekomprimiert werden.
  • Das in 13 gezeigte Ausführungsbeispiel weist ferner einen Schritt auf, bei dem die Dekompressionsschaltung 908 die gespeicherten Daten von dem Speicher 106 dekomprimiert, wie in Block 1306 angezeigt ist. In Block 1308 erfaßt die Kompressionssymbolerfassungsschaltung 910 den Kompressionsindikator, der die gespeicherten Daten begleitet. In einem Entscheidungsblock 1310 bestimmt die Kompressionssymbolerfassungsschaltung 910 ferner, ob der Kompressionsindikator der „Komprimiert"-Indikator ist oder nicht. Falls dies der Fall ist, fährt der Fluß von Schritten mit Block 1312 fort, bei dem die Kompressionssymbolerfassungsschaltung 910 der Datenausgangssteuerungsschaltung 906 signalisiert, daß die dekomprimierten Daten von der Dekompressionsschaltung 908 ausgewählt werden sollen. Ansprechend wählt die Datenausgangssteuerungsschaltung 906 die dekomprimierten Daten aus. Die Schritte 1310 und 1312 können ferner Schritte eines Erfassens des Typs von Kompressionsalgorithmus, der während der Kompression von Daten verwendet wird, und eines Aufforderns der Dekompressionsschaltung 908, die Daten gemäß dem Typ von verwendeten Kompressionsalgorithmus zu dekomprimieren, umfassen. Wenn der Entscheidungsblock 1310 bestimmt, daß ein „Nicht-Komprimiert"-Indikator existiert, fährt der Fluß mit Block 1314 fort, bei dem die Kompressionssymbolerfassungsschaltung 910 der Datenausgangssteuerungsschaltung 906 signalisiert, die nicht dekomprimierten Daten direkt von dem Speicher 106 im Gegensatz zu den dekomprimierten Daten von der Dekompressionsschaltung 908 auszuwählen. An diesem Punkt entfernt die Datenausgangssteuerungsschaltung 906, die den geeigneten Satz von Daten ausgewählt hat, den Kompressionsindikator, der während einer Kompression hinzugefügt wurde, wie in Block 1316 angezeigt ist, und die Daten werden an den Host 102 übertragen (Block 1318).
  • Die Flußdiagramme der 12 und 13 zeigen die Architektur, Funktionalität und Operation möglicher Implementierungen der Datenschreib- und Datenlesesoftware. Diesbezüglich stellt jeder Block ein Modul, Segment oder einen Abschnitt eines Codes dar, der eine oder mehrere ausführbare Instruktionen zum Implementieren der einen oder der mehreren spezifizierten Logikfunktionen aufweist. Es wird außerdem darauf verwiesen, daß bei einigen alternativen Implementierungen die in den Blöcken notierten Funktionen außerhalb der in den 12 und 13 gezeigten Reihenfolge auftreten können. Die beiden Blöcke 1310 und 1312 z. B., die in 3 aufeinanderfolgend gezeigt sind, können tatsächlich im wesentlichen gleichzeitig ausgeführt werden oder die Blöcke können manchmal in der umgekehrten Reihenfolge ausgeführt werden, und zwar abhängig von der beinhalteten Funktionalität, wie im Folgenden weiter verdeutlicht wird.
  • Das Datenschreib- und das -leseverfahren können als ein Programm konfiguriert sein, das eine geordnete Auflistung ausführbarer Instruktionen zum Implementieren von Logikfunktionen aufweist, können in jedem computerlesbaren Medium zur Verwendung durch ein Instruktionsausführungssystem, ein -gerät oder eine -vorrichtung, wie z. B. ein computerbasiertes System, ein prozessorgesteuertes System oder ein anderes System, das die Instruktionen von dem Instruktionsausführungssystem, dem -gerät oder der -vor richtung holen und die Instruktionen ausführen kann, ausgeführt sein. In dem Kontext dieses Dokumentes kann ein „computerlesbares Medium" jedes Medium sein, das das Programm zur Verwendung durch das Instruktionsausführungssystem, das -gerät oder die -vorrichtung enthalten, speichern, kommunizieren, weiterleiten oder transportieren kann. Das computerlesbare Medium kann z. B. ein elektronisches, magnetisches, optisches, elektromagnetisches, Infrarot- oder Halbleitersystem, ein -gerät, eine -vorrichtung oder ein Ausbreitungsmedium sein. Spezifischere Beispiele des computerlesbaren Mediums umfassen folgende: eine elektrische Verbindung, die einen oder mehrere Drähte aufweist, einen Direktzugriffsspeicher (RAM), einen Nur-Lese-Speicher (ROM), einen löschbaren, programmierbaren Nur-Lese-Speicher (EPROM oder Flash-Speicher) und optische Fasern. Es wird angemerkt, daß das computerlesbare Medium selbst Papier oder ein anderes geeignetes Medium sein könnte, auf das das Programm gedruckt wird, wenn das Programm elektronisch z. B. durch ein optisches Abtasten des Papiers oder des anderen Mediums erfaßt, dann kompiliert, interpretiert oder anderweitig auf eine geeignete Weise, falls nötig, verarbeitet und dann in einem Computerspeicher gespeichert werden kann. Zusätzlich umfaßt der Schutzbereich der vorliegenden Erfindung ein Ausführen der Funktionalität der Ausführungsbeispiele der vorliegenden Offenbarung in einer Logik, die in hardware- und softwarekonfigurierten Medien ausgeführt ist.

Claims (40)

  1. Speichersteuerung (104) zum Verwalten von Daten innerhalb einer Speicherkomponente (200), wobei die Speichersteuerung (104) folgende Merkmale aufweist: eine Schaltschaltung (404), die eine Mehrzahl von Daten-Eingangs/Ausgangs- (-I/O-) Anschlüssen (402) und mehrere Sätze von Übertragungsanschlüssen (406, 410) aufweist; eine Standardübertragungsschaltung (408), die mit einem Satz von Übertragungsanschlüssen (406) verbunden ist; eine Schnell-Seriell-Übertragungsschaltung (412), die mit einem anderen Satz von Übertragungsanschlüssen (410) verbunden ist; und eine Kompressions/Dekompressionsmaschine (418), die mit der Standardübertragungsschaltung (408) und der Schnell-Seriell-Übertragungsschaltung (412) verbunden ist.
  2. Speichersteuerung gemäß Anspruch 1, die ferner folgende Merkmale aufweist: eine Speichervorrichtungsschnittstelle (422), die zwischen die Kompressions/Dekompressionsmaschine (418) und einen Speicher (106) geschaltet ist; und einen Logikschaltungsaufbau (424), der mit der Schaltschaltung (404), der Standardübertragungsschaltung (408), der Schnell-Seriell-Übertragungsschaltung (412), der Kompressions/Dekompressionsmaschine (418) und der Speichervorrichtungsschnittstelle (422) verbunden ist.
  3. Speichersteuerung gemäß Anspruch 2, bei der die Schaltschaltung (404) ferner eine Mehrzahl von Schaltern aufweist, wobei die Schalter konfiguriert sind, um die Daten-I/O-Anschlüsse (402) mit einem Satz der mehreren Sätze von Übertragungsanschlüssen zu verbinden.
  4. Speichersteuerung gemäß Anspruch 3, bei der der Logikschaltungsaufbau (424) konfiguriert ist, um ansprechend auf einen Befehl von einem Host (102), einen Schnelldatenübertragungsmodus einzuleiten, der Schaltschaltung (404) zu signalisieren, die Mehrzahl von Schaltern derart zu konfigurieren, daß die Daten-I/O-Anschlüsse (402) mit den Übertragungsanschlüssen verbunden sind, die mit der Schnell-Seriell-Übertragungsschaltung (412) verbunden sind.
  5. Speichersteuerung gemäß einem der Ansprüche 1 bis 4, bei der die Kompressions/Dekompressionsmaschine (418) folgende Merkmale aufweist: einen Kompressionsdetektor (904), der erfaßt, ob die Daten in einer komprimierten Form sind; eine Kompressionsmaschine (902), die eingehende Daten komprimiert, wenn der Kompressionsdetektor erfaßt, daß die Daten in keiner komprimierten Form sind; und eine Dateneingangssteuerungsschaltung (900), die zwischen den eingehenden Daten und den komprimierten Daten auswählt und ein Kompressionssymbol zu den ausgewählten Daten hinzufügt, um die Daten als entweder komprimiert oder nicht komprimiert zu identifizieren.
  6. Speichersteuerung gemäß einem der Ansprüche 1 bis 5, bei der die Kompressions/Dekompressionsmaschine (418) folgende Merkmale aufweist: einen Dekompressionsdetektor (910), der das Kompressionssymbol erfaßt, das zu den von dem Speicher wiedergewonnenen Daten hinzugefügt wird; eine Dekompressionsmaschine (908), die die von dem Speicher wiedergewonnenen Daten dekomprimiert; und eine Datenausgangssteuerungsschaltung (906), die zwischen den von dem Speicher wiedergewonnenen Daten und den dekomprimierten Daten auswählt.
  7. System zum Speichern von Daten, wobei das System folgende Merkmale aufweist: einen Host (102); und eine Speicherkomponente (200), die in elektrischer Kommunikation mit dem Host (102) steht, wobei die Speicherkomponente (200) folgende Merkmale aufweist: zumindest eine Speicherbank (202); und eine Speichersteuerung (104), die mit der zumindest einen Speicherbank (202) verbunden ist, wobei die Speichersteuerung (104) folgende Merkmale aufweist: eine Schaltschaltung (404), die zwischen einem Parallelübertragungsmodus und einem Schnell-Seriell-Übertragungsmodus schaltet; und eine Kompressions/Dekompressionsmaschine (418), die Daten komprimiert und dekomprimiert.
  8. System gemäß Anspruch 7, bei dem die Speicherkomponente (200) eine Speicherkarte ist.
  9. System gemäß Anspruch 8, bei dem die Speicherkarte einen Formfaktor aufweist, der mit Formfaktoren einer MultiMediaCardTM, Secure DigitalTM-Karte oder eines Memory StickTM oder einer anderen Speicherkarte kompatibel ist, die eine separate Befehls- und Datenleitung aufweisen.
  10. System gemäß einem der Ansprüche 7 bis 9, bei dem die Speichersteuerung (104) ferner eine Speichervorrichtungsschnittstelle aufweist, die komprimierte Daten, die in einem des Parallelübertragungsmodus und des Schnell-Seriell-Übertragungsmodus übertragen werden, zwischen der Kompressions/Dekompressionsmaschine (418) und der zumindest einen Speicherbank (202) überträgt.
  11. System gemäß einem der Ansprüche 7 bis 10, bei dem der Host (102) folgende Merkmale aufweist: ein Benutzervorrichtungsverarbeitungssystem (300), das eine Datenquelle und eine Zielschaltung aufweist; eine Schaltschaltung (312); eine Standardübertragungsschaltung (304), die zwischen das Benutzervorrichtungsverarbeitungssystem (300) und die Schaltschaltung (312) geschaltet ist; eine Schnell-Seriell-Übertragungsschaltung (306), die zwischen das Penutzervorrichtungsverarbeitungssystem (300) und die Schaltschaltung geschaltet ist; und eine Logikschaltung (318), die ein Steuerungssignal an die Schaltschaltung (312) liefert, um die Schaltschaltung (312) zu konfigurieren, um in einem des Parallelübertragungsmodus und des Schnell-Seriell-Übertragungsmodus zu arbeiten.
  12. System gemäß Anspruch 11, bei dem der Host (102) ferner ein Hostverbindungselement (316) aufweist, das mit der Standardübertragungsschaltung (304) über die Schaltschaltung (312) verbunden ist, wenn die Logikschaltung (318) die Schaltschaltung (312) konfiguriert, um in dem Parallelübertragungsmodus zu arbeiten, und mit der Schnell-Seriell-Übertragungsschaltung (306) über die Schaltschaltung (312) verbunden ist, wenn die Logikschaltung (318) die Schaltschaltung (312) konfiguriert, um in dem Schnell-Seriell-Übertragungsmodus zu arbeiten.
  13. System gemäß einem der Ansprüche 7 bis 12, bei dem die Speichersteuerung (104) ferner folgende Merkmale aufweist: eine Standardübertragungsschaltung (408); eine Schnell-Seriell-Übertragungsschaltung (412); eine Speichervorrichtungsschnittstelle; und einen Logikschaltungsaufbau.
  14. System gemäß Anspruch 13, bei dem der Logikschaltungsaufbau angepaßt ist, um Schalter innerhalb der Schaltschaltung (312) zu konfigurieren, um eine der Standardübertragungsschaltung (304) und der Schnell-Seriell-Übertragungsschaltung (306) in einen Datenübertragungspfad zu schalten, derart, daß das System in dem Parallelübertragungsmodus ist, wenn die Standardübertragungsschaltung (304) in dem Datenübertragungspfad ist, und in dem Schnell-Seriell-Übertragungsmodus ist, wenn die Schnell-Seriell-Übertragungsschaltung (306) in dem Datenübertragungspfad ist.
  15. System gemäß Anspruch 13 oder 14, bei dem die Standardübertragungsschaltung (304) Push-Pull-Sende/Empfangsgeräte aufweist.
  16. System gemäß einem der Ansprüche 13 bis 15, bei dem die Schnell-Seriell-Übertragungsschaltung (306) eine Verarbeitungsschaltung, einen sendenden Differenzverstärker (610) und einen empfangenden seriellen Differenzverstärker (608) aufweist.
  17. System gemäß Anspruch 16, bei dem die Verarbeitungsschaltung (606) folgende Merkmale aufweist: eine Phasenverriegelungsschleifenschaltung, die eine Systemtaktgeschwindigkeit erhöht; und eine Seriell/Deseriell-Schaltung.
  18. System gemäß Anspruch 16 oder 17, bei dem der sendende Differenzverstärker (610) konfiguriert ist, um serielle digitale Daten von der Verarbeitungsschaltung (606) zu ziehen und die seriellen digitalen Daten in ein serielles Differentialformat umzuwandeln, das positive und negative Komponenten umfaßt.
  19. System gemäß einem der Ansprüche 16 bis 18, bei dem der empfangende Differenzverstärker (608) konfiguriert ist, um serielle Differentialdaten zu empfangen, die seriellen Differentialdaten in ein serielles digitales Format umzuwandeln und die seriellen digitalen Daten in die Verarbeitungsschaltung (606) auszugeben.
  20. System gemäß einem der Ansprüche 13 bis 19, bei dem die Schaltschaltung (312) eine Mehrzahl von Schaltern aufweist, die angepaßt sind, um die Schnell-Seriell-Übertragungsschaltung (306) in einem Halb-Duplex-Modus zu konfigurieren.
  21. System gemäß Anspruch 20, bei dem in einem Schnell-Seriell-Übertragungsmodus die Schaltschaltung (312) angepaßt ist, um die Mehrzahl von Schaltern derart zu konfigurieren, daß die seriellen Differentialdaten entlang zweier Datenleitungen entweder gesendet oder empfangen werden.
  22. System gemäß einem der Ansprüche 13 bis 19, bei dem die Schaltschaltung (312) eine Mehrzahl von Schaltern aufweist, die angepaßt sind, um die Schnell-Seriell-Übertragungsschaltung (306) in einem Voll-Duplex-Modus zu konfigurieren.
  23. System gemäß Anspruch 22, bei dem in einem Schnell-Seriell-Übertragungsmodus die Schaltschaltung (312) angepaßt ist, um die Mehrzahl von Schaltern derart zu konfigurieren, daß serielle Differentialdaten gleichzeitig entlang vier Datenleitungen gesendet und empfangen werden.
  24. System zum Übertragen von Daten entlang Datenpfaden innerhalb einer Speicherkomponente (200), wobei das System folgende Merkmale aufweist: eine Einrichtung zum Schalten der Pfade einer Datenübertragung zu einem eines Parallelübertragungsmodus und eines Schnell-Seriell-Übertragungsmodus; eine Einrichtung zum Übertragen von Daten in dem Parallelübertragungsmodus; eine Einrichtung zum Übertragen von Daten in dem Schnell-Seriell-Übertragungsmodus; eine Einrichtung zum Komprimieren und Dekomprimieren von Daten; und eine Einrichtung zum Steuern der Einrichtung zum Schalten, um die Einrichtung zum Schalten in einem des Parallelübertragungsmodus und des Schnell-Seriell-Übertragungsmodus zu konfigurieren.
  25. System gemäß Anspruch 24, bei dem die Einrichtung zum Übertragen von Daten in dem Schnell-Seriell-Übertragungsmodus eine hohe Übertragungsrate aufweist, die höher als die Übertragungsrate ist, wenn der Pfad einer Datenübertragung zu dem Parallelübertragungsmodus geschaltet wird.
  26. System gemäß Anspruch 24 oder 25, bei dem die Einrichtung zum Steuern die Einrichtung zum Schalten ansprechend auf einen Befehl von einem Host (102) steuert.
  27. System gemäß einem der Ansprüche 24 bis 26, bei dem die Einrichtung (418) zum Komprimieren und Dekomprimieren von Daten folgende Merkmale aufweist: eine Einrichtung zum Erfassen, ob Daten bereits komprimiert wurden, und zum Senden der Daten an eine Einrichtung zum Speichern von Daten, wenn die Daten als komprimiert erfaßt werden; eine Einrichtung zum Durchführen eines Kompressionsalgorithmus bezüglich der Daten, wenn die Einrichtung zum Erfassen erfaßt, daß die Daten noch nicht komprimiert wurden; und eine Einrichtung zum Hinzufügen eines Kompressionsidentifizierers, der den für die Kompression der Daten verwendeten Algorithmus anzeigt, und zum Senden der komprimierten Daten und des Kompressionsidentifizierers an die Einrichtung zum Speichern von Daten.
  28. System gemäß Anspruch 27, bei dem die Einrichtung (418) zum Komprimieren und Dekomprimieren von Daten ferner folgende Merkmale aufweist: eine Einrichtung zum Wiedergewinnen von Daten von der Einrichtung zum Speichern von Daten, zum Erfassen, ob ein Kompressionsidentifizierer vorhanden ist, und zum Senden der Daten an die Einrichtung zum Schalten, wenn kein Kompressionsidentifizierer vorhanden ist; und eine Einrichtung zum Dekomprimieren der Daten, wenn ein Kompressionsidentifizierer vorhanden ist, und zum Senden der dekomprimierten Daten an die Einrichtung zum Schalten.
  29. Verfahren zum Übertragen von Daten zwischen einem Host (101) und einer Speicherkomponente (200), wobei das Verfahren folgende Schritte aufweist: Bestimmen, ob der Host (102) einen Schnell-Seriell-Übertragungsmodus anfordert; Konfigurieren einer Schaltschaltung (404), um eine Mehrzahl von Datenleitungen mit einer Mehrzahl von Schnell-Seriell-Übertragungsleitungen zu verbinden, wenn der Host (102) den Schnell-Seriell-Übertragungsmodus anfordert; und Konfigurieren der Schaltschaltung (404), um die Mehrzahl von Datenleitungen mit einer Mehrzahl von Parallelübertragungsleitungen zu verbinden, wenn der Host (102) den Schnell-Seriell-Übertragungsmodus nicht anfordert.
  30. Verfahren gemäß Anspruch 29, das ferner folgende Schritte aufweist: Bestimmen, ob Daten zuvor komprimiert wurden; Komprimieren der Daten, die zuvor nicht komprimiert wurden; und Übertragen der Daten an die Speicherkomponente (200).
  31. Verfahren gemäß Anspruch 30, das ferner den Schritt eines Hinzufügens eines Kompressionsidentifizierers gemeinsam mit den komprimierten Daten aufweist, um anzuzeigen, daß die Daten komprimiert wurden.
  32. Verfahren gemäß Anspruch 30 oder 31, das ferner folgende Schritte aufweist: Wiedergewinnen von Daten von der Speicherkomponente (200); Bestimmen, ob die wiedergewonnenen Daten einen Kompressionsidentifizierer aufweisen; wenn die wiedergewonnenen Daten einen Kompressionsidentifizierer aufweisen, Erfassen des Kompressionsalgorithmus, der zur Kompression der Daten verwendet wurde; Dekomprimieren der Daten unter Verwendung eines Dekompressionsalgorithmus, der reziprok zu dem Kompressionsalgorithmus ist; und Übertragen der dekomprimierten Daten an den Host (102).
  33. Ausführbare Sequenz, die auf einem computerlesbaren Medium gespeichert ist, wobei die ausführbare Sequenz folgende Merkmale aufweist: eine Logik, die konfiguriert ist, um Daten entlang eines Schnell-Seriell-Übertragungspfades zu übertragen; eine Logik, die konfiguriert ist, um Daten entlang eines Parallelübertragungspfades zu übertragen; eine Logik, die konfiguriert ist, um Daten zu speichern; eine Logik, die konfiguriert ist, um einen Datenübertragungspfad zwischen einem einer Mehrzahl von Pfaden durch die Logik, die konfiguriert ist, um Daten zu speichern, und einem einer Mehrzahl von Pfaden durch entweder die Logik, die konfiguriert ist, um Daten entlang eines Schnell-Seriell-Übertragungspfades zu übertragen, oder die Logik, die konfiguriert ist, um Daten entlang eines Parallelübertragungspfades zu übertragen, zu schalten; und eine Logik, die konfiguriert ist, um die Logik zu steuern, die konfiguriert ist, um zu schalten.
  34. Host-Vorrichtung (102), die einen Prozessor aufweist, der die ausführbare Sequenz gemäß Anspruch 33 ausführt.
  35. Speicherkarte (200), die eine Speichersteuerung (104) und eine Mehrzahl von Speicherbänken (202) aufweist, wobei die Speichersteuerung die ausführbare Sequenz gemäß Anspruch 33 ausführt.
  36. Speicherkarte (200) mit folgenden Merkmalen: einer Mehrzahl von Speicherbänken (202); einer Speichersteuerung (104), die mit der Mehrzahl von Speicherbänken (202) verbunden ist, wobei die Speichersteuerung (104) folgende Merkmale aufweist: eine Schaltschaltung (404), die Schaltungselemente (602, 802) aufweist, die in einem einer Mehrzahl auswählbarer Datenübertragungsmodi konfigurierbar sind, wobei jeder auswählbare Datenübertragungsmodus zumindest einen einer Mehrzahl von Datenübertragungspfaden (406, 410) aufweist; eine Standardübertragungsschaltung (408), die entlang eines ersten Satzes von Datenübertragungspfaden (406) verbunden ist; und eine Schnell-Seriell-Übertragungsschaltung (412), die entlang eines zweiten Satzes von Datenübertragungspfaden (410) verbunden ist.
  37. Speicherkarte (200) gemäß Anspruch 36, die ferner eine Kompressions/Dekompressionsmaschine (418) aufweist, die zwischen die Datenübertragungspfade und die Mehrzahl von Speicherbänken (202) geschaltet ist.
  38. Speicherkarte gemäß Anspruch 36 oder 37, die ferner einen Körper aufweist, der eine Formfaktor aufweist, der mit Formfaktoren einer MultiMediaCardTM, Secure DigitalTM-Karte oder eines Memory StickTM oder einer anderen Speicherkarte kompatibel ist, die eine separate Befehls- und Datenleitung aufweisen.
  39. Speicherkarte (200) gemäß einem der Ansprüche 36 bis 38, bei der die Speicherbänke (202) Atomarauflösungsspeicher- (ARS-) Vorrichtungen aufweisen.
  40. Speicherkarte (200) gemäß einem der Ansprüche 36 bis 38, bei der die Speicherbänke (202) Magnetdirektzugriffsspeicher- (MRAM-) Vorrichtungen aufweisen.
DE10334423A 2002-11-15 2003-07-28 Übertragung von Daten in auswählbaren Übertragungsmodi Ceased DE10334423A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/295651 2002-11-15
US10/295,651 US20040098545A1 (en) 2002-11-15 2002-11-15 Transferring data in selectable transfer modes

Publications (1)

Publication Number Publication Date
DE10334423A1 true DE10334423A1 (de) 2004-06-03

Family

ID=29735801

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10334423A Ceased DE10334423A1 (de) 2002-11-15 2003-07-28 Übertragung von Daten in auswählbaren Übertragungsmodi

Country Status (4)

Country Link
US (1) US20040098545A1 (de)
JP (1) JP2004171561A (de)
DE (1) DE10334423A1 (de)
GB (1) GB2395585B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112007002619B4 (de) 2006-10-31 2022-08-04 Mediatek Inc. Speichersteuerung mit einer Speicherverbindung mit zwei Betriebsmodi

Families Citing this family (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6471635B1 (en) * 2000-02-10 2002-10-29 Obtech Medical Ag Anal incontinence disease treatment with controlled wireless energy supply
US6464628B1 (en) * 1999-08-12 2002-10-15 Obtech Medical Ag Mechanical anal incontinence
CA2635435C (en) 2000-02-10 2010-05-25 Potencia Medical Ag Controlled urinary incontinence treatment
DE60128971T2 (de) 2000-02-10 2008-02-07 Potencia Medical Ag Mechanische Vorrichtung zur Impotenzbehandlung
WO2001050832A2 (en) * 2000-02-11 2001-07-19 Potencia Medical Ag Controlled impotence treatment
WO2001047441A2 (en) * 2000-02-14 2001-07-05 Potencia Medical Ag Penile prosthesis
ATE324087T1 (de) 2000-02-14 2006-05-15 Potencia Medical Ag Männliche impotentzprothesevorrichtung mit drahtloser energieversorgung
FI20035041A0 (fi) * 2003-03-31 2003-03-31 Nokia Corp Menetelmä tiedon tallentamiseksi muistiin, järjestelmä, elektroniikkalaite ja muistikortti
US6961269B2 (en) * 2003-06-24 2005-11-01 Micron Technology, Inc. Memory device having data paths with multiple speeds
US20040268046A1 (en) * 2003-06-27 2004-12-30 Spencer Andrew M Nonvolatile buffered memory interface
US7673080B1 (en) * 2004-02-12 2010-03-02 Super Talent Electronics, Inc. Differential data transfer for flash memory card
JP3989472B2 (ja) * 2004-07-30 2007-10-10 シャープ株式会社 画像データ処理回路およびそれを備えてなる画像処理装置
US20060069857A1 (en) * 2004-09-24 2006-03-30 Nec Laboratories America, Inc. Compression system and method
US8356127B2 (en) * 2004-12-09 2013-01-15 Rambus Inc. Memory interface with workload adaptive encode/decode
WO2006071884A2 (en) * 2004-12-27 2006-07-06 The Regents Of The University Of Michigan Oligonucleotide based therapeutics
DE602005023209D1 (de) * 2004-12-27 2010-10-07 Research In Motion Ltd Speicher-voll-pipeline
JPWO2006082793A1 (ja) * 2005-02-07 2008-06-26 松下電器産業株式会社 SD(SecureDigital)カード、ホストコントローラ
JP2006343815A (ja) * 2005-06-07 2006-12-21 Matsushita Electric Ind Co Ltd 通信装置、通信方法、通信システム
US20070006300A1 (en) * 2005-07-01 2007-01-04 Shay Zamir Method and system for detecting a malicious packed executable
JP2007287085A (ja) * 2006-04-20 2007-11-01 Fuji Xerox Co Ltd 画像処理装置及びプログラム
JP2007287084A (ja) * 2006-04-20 2007-11-01 Fuji Xerox Co Ltd 画像処理装置及びプログラム
JP4795138B2 (ja) * 2006-06-29 2011-10-19 富士ゼロックス株式会社 画像処理装置及びプログラム
JP4979287B2 (ja) 2006-07-14 2012-07-18 富士ゼロックス株式会社 画像処理装置及びプログラム
US7861140B2 (en) * 2006-10-31 2010-12-28 Globalfoundries Inc. Memory system including asymmetric high-speed differential memory interconnect
US20080104352A1 (en) * 2006-10-31 2008-05-01 Advanced Micro Devices, Inc. Memory system including a high-speed serial buffer
US20080120315A1 (en) * 2006-11-21 2008-05-22 Nokia Corporation Signal message decompressor
US7587571B2 (en) * 2006-11-29 2009-09-08 Qimonda Ag Evaluation unit in an integrated circuit
US7529149B2 (en) * 2006-12-12 2009-05-05 Mosaid Technologies Incorporated Memory system and method with serial and parallel modes
US20080228998A1 (en) * 2007-03-16 2008-09-18 Spansion Llc Memory storage via an internal compression algorithm
US8566695B2 (en) * 2007-03-30 2013-10-22 Sandisk Technologies Inc. Controlling access to digital content
EP2244760B8 (de) 2008-01-28 2022-07-20 Implantica Patent Ltd. Implantierbare drainagevorrichtung
WO2009096859A1 (en) 2008-01-29 2009-08-06 Milux Holding Sa A device for treating obesity
US8521979B2 (en) 2008-05-29 2013-08-27 Micron Technology, Inc. Memory systems and methods for controlling the timing of receiving read data
US7979757B2 (en) 2008-06-03 2011-07-12 Micron Technology, Inc. Method and apparatus for testing high capacity/high bandwidth memory devices
US8289760B2 (en) * 2008-07-02 2012-10-16 Micron Technology, Inc. Multi-mode memory device and method having stacked memory dice, a logic die and a command processing circuit and operating in direct and indirect modes
US8756486B2 (en) 2008-07-02 2014-06-17 Micron Technology, Inc. Method and apparatus for repairing high capacity/high bandwidth memory devices
US7855931B2 (en) 2008-07-21 2010-12-21 Micron Technology, Inc. Memory system and method using stacked memory device dice, and system using the memory system
US8127204B2 (en) 2008-08-15 2012-02-28 Micron Technology, Inc. Memory system and method using a memory device die stacked with a logic die using data encoding, and system using the memory system
EP2349170B1 (de) 2008-10-10 2023-09-27 Implantica Patent Ltd. Vorrichtung zur behandlung von weiblicher sexueller dysfunktion
CA2776467A1 (en) 2008-10-10 2010-04-15 Peter Forsell Fastening means for implantable medical control assembly
WO2010042058A1 (en) 2008-10-10 2010-04-15 Milux Holding S.A. An improved artificial valve
US20110196484A1 (en) 2008-10-10 2011-08-11 Milux Holding Sa Heart help method
EP2349025B1 (de) 2008-10-10 2015-09-16 Kirk Promotion LTD. System, vorrichtung und verfahren zur behandlung einer patientin mit sexueller dysfunktion
EP3909559A1 (de) 2008-10-10 2021-11-17 Medical Tree Patent Ltd Vorrichtung und system zur herzunterstützung
US10952836B2 (en) 2009-07-17 2021-03-23 Peter Forsell Vaginal operation method for the treatment of urinary incontinence in women
US9949812B2 (en) 2009-07-17 2018-04-24 Peter Forsell Vaginal operation method for the treatment of anal incontinence in women
JP5657242B2 (ja) 2009-12-09 2015-01-21 株式会社東芝 半導体装置及びメモリシステム
US8510487B2 (en) * 2010-02-11 2013-08-13 Silicon Image, Inc. Hybrid interface for serial and parallel communication
TWI401570B (zh) * 2010-03-30 2013-07-11 Imicro Technology Ltd 用於差分資料傳輸之快閃記憶卡
US8217813B2 (en) 2010-04-29 2012-07-10 Advanced Micro Devices, Inc. System and method for low-latency data compression/decompression
KR101649357B1 (ko) * 2010-05-10 2016-08-19 삼성전자주식회사 데이터 저장 장치, 그것의 동작 방법, 그리고 그것을 포함한 스토리지 서버
US8510518B2 (en) * 2010-06-22 2013-08-13 Advanced Micro Devices, Inc. Bandwidth adaptive memory compression
KR101728067B1 (ko) * 2010-09-03 2017-04-18 삼성전자 주식회사 반도체 메모리 장치
US8400808B2 (en) 2010-12-16 2013-03-19 Micron Technology, Inc. Phase interpolators and push-pull buffers
US9071243B2 (en) 2011-06-30 2015-06-30 Silicon Image, Inc. Single ended configurable multi-mode driver
US8760188B2 (en) 2011-06-30 2014-06-24 Silicon Image, Inc. Configurable multi-dimensional driver and receiver
US20130268726A1 (en) * 2011-07-01 2013-10-10 Xin Guo Dual Mode Write Non-Volatile Memory System
JP6230072B2 (ja) * 2012-02-05 2017-11-15 マシューズ リソーシーズ、インク. 搬送システムおよびその搬送システムによって輸送中の物品にデータを関連付ける方法
US8885435B2 (en) 2012-09-18 2014-11-11 Silicon Image, Inc. Interfacing between integrated circuits with asymmetric voltage swing
US9306563B2 (en) 2013-02-19 2016-04-05 Lattice Semiconductor Corporation Configurable single-ended driver
US9171597B2 (en) 2013-08-30 2015-10-27 Micron Technology, Inc. Apparatuses and methods for providing strobe signals to memories
US9141541B2 (en) 2013-09-20 2015-09-22 Advanced Micro Devices, Inc. Nested channel address interleaving
JP5784197B2 (ja) * 2014-08-13 2015-09-24 株式会社東芝 ホスト機器
US20180107535A1 (en) * 2014-12-31 2018-04-19 International Business Machines Corporation Vault redundancy reduction within a dispersed storage network
US20180107728A1 (en) * 2014-12-31 2018-04-19 International Business Machines Corporation Using tombstone objects to synchronize deletes
US10656866B2 (en) * 2014-12-31 2020-05-19 Pure Storage, Inc. Unidirectional vault synchronization to support tiering
US20180101434A1 (en) * 2014-12-31 2018-04-12 International Business Machines Corporation Listing types in a distributed storage system
US10095421B2 (en) 2016-10-21 2018-10-09 Advanced Micro Devices, Inc. Hybrid memory module bridge network and buffers
US10394468B2 (en) * 2017-02-23 2019-08-27 International Business Machines Corporation Handling data slice revisions in a dispersed storage network
US10698686B2 (en) 2017-11-14 2020-06-30 International Business Machines Corporation Configurable architectural placement control
US10592164B2 (en) 2017-11-14 2020-03-17 International Business Machines Corporation Portions of configuration state registers in-memory
US10496437B2 (en) 2017-11-14 2019-12-03 International Business Machines Corporation Context switch by changing memory pointers
US10635602B2 (en) 2017-11-14 2020-04-28 International Business Machines Corporation Address translation prior to receiving a storage reference using the address to be translated
US10558366B2 (en) 2017-11-14 2020-02-11 International Business Machines Corporation Automatic pinning of units of memory
US10642757B2 (en) 2017-11-14 2020-05-05 International Business Machines Corporation Single call to perform pin and unpin operations
US10761983B2 (en) * 2017-11-14 2020-09-01 International Business Machines Corporation Memory based configuration state registers
US10664181B2 (en) 2017-11-14 2020-05-26 International Business Machines Corporation Protecting in-memory configuration state registers
US10761751B2 (en) 2017-11-14 2020-09-01 International Business Machines Corporation Configuration state registers grouped based on functional affinity
US10901738B2 (en) 2017-11-14 2021-01-26 International Business Machines Corporation Bulk store and load operations of configuration state registers
US11030128B2 (en) 2019-08-05 2021-06-08 Cypress Semiconductor Corporation Multi-ported nonvolatile memory device with bank allocation and related systems and methods
US11593026B2 (en) 2020-03-06 2023-02-28 International Business Machines Corporation Zone storage optimization using predictive protocol patterns

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8006A (en) * 1851-04-01 Horseshoe-nail machine
JP2862177B2 (ja) * 1989-07-19 1999-02-24 株式会社東芝 Icカードおよびicカードの制御方法
JPH0361679U (de) * 1989-10-17 1991-06-17
JPH04117589A (ja) * 1990-09-07 1992-04-17 Sharp Corp Icカード
US5237460A (en) * 1990-12-14 1993-08-17 Ceram, Inc. Storage of compressed data on random access storage devices
JP3173171B2 (ja) * 1991-12-19 2001-06-04 カシオ計算機株式会社 情報転送システム
US5553306A (en) * 1992-12-29 1996-09-03 International Business Machines Corporation Method and apparatus for controlling parallel port drivers in a data processing system
US5488711A (en) * 1993-04-01 1996-01-30 Microchip Technology Incorporated Serial EEPROM device and associated method for reducing data load time using a page mode write cache
JPH07168671A (ja) * 1993-12-16 1995-07-04 Matsushita Electric Ind Co Ltd 入出力制御装置
JPH1020974A (ja) * 1996-07-03 1998-01-23 Fujitsu Ltd バス構造及び入出力バッファ
US6721860B2 (en) * 1998-01-29 2004-04-13 Micron Technology, Inc. Method for bus capacitance reduction
TW587252B (en) * 2000-01-18 2004-05-11 Hitachi Ltd Semiconductor memory device and data processing device
US6404647B1 (en) * 2000-08-24 2002-06-11 Hewlett-Packard Co. Solid-state mass memory storage device
JP2002086702A (ja) * 2000-09-12 2002-03-26 Canon Inc 記録機構、インクジェット記録装置及び記録装置付き撮像装置
US7089390B2 (en) * 2001-02-16 2006-08-08 Broadcom Corporation Apparatus and method to reduce memory footprints in processor architectures
US6854045B2 (en) * 2001-06-29 2005-02-08 Intel Corporation Hardware emulation of parallel ATA drives with serial ATA interface
US6845420B2 (en) * 2001-10-11 2005-01-18 International Business Machines Corporation System for supporting both serial and parallel storage devices on a connector
CA2464212A1 (en) * 2001-11-01 2003-05-08 Mattel, Inc. Digital audio device
US20030158991A1 (en) * 2002-02-01 2003-08-21 Klaus-Peter Deyring Transceiver circuitry for sending and detecting OOB signals on serial ATA buses

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112007002619B4 (de) 2006-10-31 2022-08-04 Mediatek Inc. Speichersteuerung mit einer Speicherverbindung mit zwei Betriebsmodi

Also Published As

Publication number Publication date
JP2004171561A (ja) 2004-06-17
GB0325847D0 (en) 2003-12-10
GB2395585B (en) 2005-08-03
GB2395585A (en) 2004-05-26
US20040098545A1 (en) 2004-05-20

Similar Documents

Publication Publication Date Title
DE10334423A1 (de) Übertragung von Daten in auswählbaren Übertragungsmodi
DE112017003334T5 (de) Lastreduzierte nichtflüchtige speicherschnittstelle
DE102007050406A1 (de) Speicherpuffer und Verfahren zum Puffern von Daten
DE69117592T2 (de) Datenspeicherung auf magnetband
DE69118250T2 (de) Zugriff für komprimierte daten
DE102011084751B4 (de) Datenverarbeitungsbauelement, -system und -verfahren
DE102011056563A1 (de) Datenkompressionsvorrichtungen, Betriebsverfahren dafür und Datenverarbeitungsgeräte einschließlich derselben
DE102018105943A1 (de) Kontextbewusste dynamische Befehlsplanung für ein Datenspeichersystem
DE112018004256T5 (de) Redundanzcodierstreifen basierend auf internen adressen von speichervorrichtungen
DE112017004268T5 (de) Befehlsbus mit doppelter datenrate
DE102011054333A1 (de) Verfahren zum Laden von Hilfsspannungsversorgungsleitungen in Datenspeichervorrichtungen und damit in Beziehung stehenden Vorrichtungen
DE102020116362B3 (de) Dynamische zuweisung von unterblöcken
DE102016220452B4 (de) Datenübertragung über ein Datenspeicherlaufwerk
DE102020211544A1 (de) Steuerung, betriebsverfahren der steuerung und speichergerät mit derselben
DE112010004194T5 (de) Erleichterung der Datenverdichtung während des Kopierens
DE102018131983A1 (de) Switch-unterstützte datenspeicher-netzwerkverkehrsverwaltung in einem rechenzentrum
DE69834220T2 (de) Serielle Datenübertragung zwischen einem Datenverarbeitungsgerät und einer externen Speicheranordnung
DE69935940T2 (de) Zielknoten, Datenkommunikationssystem, Kontrollverfahren eines Zielknotens und Verfahren zum Betreiben eines Datenkommunikationssystems
DE112017004916T5 (de) Verwendung von Kompression zur Kapazitätserhöhung eines speicherseitigen Caches mit grosser Blockgrösse
DE102015203202A1 (de) Speicher-Subsystem mit auf ein Wrapped-Lesen folgendem kontinuierlichen Lesen
DE112020005395T5 (de) Kapazitätserweiterung für speicher-untersysteme
DE102012107577A1 (de) Multiport-Speicherelement sowie Halbleitervorrichtung und System mit demselben
DE102012201534A1 (de) Vorrichtung zur zwischenspeicherung einer skalierbaren original-datei
DE102019133044A1 (de) Messung, Kalibrierung und Abstimmung des Speicherbus-Arbeitszyklus
DE60015939T2 (de) Verfahren und schaltung um an zwei enden getakten daten zu empfangen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8127 New person/name/address of the applicant

Owner name: SEAGATE TECHNOLOGY LLC, SCOTTS VALLEY, CALIF., US

8131 Rejection