DE10339225A1 - Speichereinrichtung mit optimierter Kompression - Google Patents
Speichereinrichtung mit optimierter Kompression Download PDFInfo
- Publication number
- DE10339225A1 DE10339225A1 DE10339225A DE10339225A DE10339225A1 DE 10339225 A1 DE10339225 A1 DE 10339225A1 DE 10339225 A DE10339225 A DE 10339225A DE 10339225 A DE10339225 A DE 10339225A DE 10339225 A1 DE10339225 A1 DE 10339225A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- compression
- storage device
- controller interface
- microprocessor
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/08—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers from or to individual record carriers, e.g. punched card, memory card, integrated circuit [IC] card or smart card
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/40—Specific encoding of data in memory or cache
- G06F2212/401—Compressed data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Memory System (AREA)
Abstract
Die Erfindung betrifft eine Speichereinrichtung mit optimierter Kompression, die im wesentlichen aus einem Controller und mindestens einem Festkörperspeichermedium besteht, wobei der Controller eine Host/Controller-Schnittstelle, die zur Verbindung mit der Systemseite dient, einen Mikroprozessor, der die Befehle aus der Systemseite verarbeitet, und eine Flash/Controller-Schnittstelle, die zur Verbindung mit dem Festkörperspeichermedium dient, umfaßt. Zwischen der Host/Controller-Schnittstelle und der Flash/Controller-Schnittstelle ist ein Datenkompressions-/-dekompressionsmodul vorgesehen, durch den die zu speichernden Daten in einem vorbestimmten Verhältnis komprimiert werden können. Der Mikroprozessor entscheidet anhand des Typs der über die Host/Controller-Schnittstelle eingegebenen Daten die beste Kompressionskombination, mit der die Datenkompressionsschaltung die zu speichernden Daten zu minimierten Daten mit kleinster Speichereinheit komprimiert. Dadurch kann die Speicherkapazität erweitert werden, ohne die Hardware der Speichereinrichtung auszubauen.
Description
- Technisches Gebiet
- Die Erfindung betrifft eine Speichereinrichtung mit optimierter Kompression.
- Den Siliziumchips als Festkörperspeichermedium (wie Flash-Speicher) zu verwenden, ist immer populär. Da die Siliziumchip-Speicherkarte die Vorteile von niedrigem Stromverbrach, hoher Sicherheit, großer Speicherkapazität und kurzer Zugriffszeit aufweist, findet sie eine breite Anwendung auf Speichereinrichtungen wie CF-, MS-, SD-, MMC- oder SM-Karte und USB-Wechselplatte. Diese Speichereinrichtungen A(
6 ) bestehen aus einem Controller A1 und einem Festkörperspeichermedium A2. Der Controller A1 umfaßt eine Host/Controller-SchnittstelleA11, die zur Verbindung mit der Systemseite B dient, einen Mikroprozessor A12, der die Befehle aus der Systemseite verarbeitet, und eine Flash/Controller-Schnittstelle A13, die zur Verbindung mit dem Festkörperspeichermedium A2 dient. Die Systemseite B kann Daten in das Festkörperspeichermedium A2 schreiben und aus dem Festkörperspeichermedium A2 lesen. - Die Herstellungskosten sowohl der Speicherkarte als auch der USB-Wechselplatte sind von der Speicherkapazität des Festkörperspeichermediums abhängig. Zur Zeit sind auf dem Markt Speichereinrichtungen von 64 MB, 128 MB und 256 MB vorhanden. Je größer die Speicherkapazität ist, desto höher ist der Preis der Speichereinrichtung. Die Speicherkapazität des Festkörperspeichermediums ist jedoch wie CD-ROM durch das Herstellungsverfahren der Hardware begrenzt.
- Daher wurde die Speichereinrichtung (Speicherkarte und USB-Wechselplatte) mit einem Steckplatz für Speicherkarte entwickelt, um die Speicherkapazitätzu erweitern. Die weitere Speicherkarte zu beschaffen, bedeutet jedoch zusätzliche Kosten für den Benutzer.
- Die andere Maßnahme zur Erweiterung der Speicherkapazität der Speichereinrichtung ist eine Kompression der zu speichernden Daten. Zur Zeit kann die Kompression nur in einem Computersystem durchgeführt werden, in dem die zu speichernden Daten durch eine geeignete Kompressionssoftware (wie Winrar und Winzip) komprimiert und in einem internen Speicher (wie Festplatte) oder einem externen Speicher (wie CD-ROM, Diskette, Wechselplatte oder Speicherkarte) gespeichert werden.
- Der Erfindung zielt daher darauf, eine Speichereinrichtung anzubieten, die neben der Speicherfunktion noch eine Kompressionsfunktion aufweist, wobei die Kompression der Daten optimiert werden kann, so daß die Speicherkapazität der Speichereinrichtung erweitert wird, ohne die Hardware der Speichereinrichtung auszubauen.
- Der Erfindung liegt die Aufgabe zugrunde, eine Speichereinrichtung mit optimierter Kompression zu schaffen, wobei die zu speichernden Daten komprimiert werden können, so daß die Speicherkapazität erweitert wird, die Zugriffsgeschwindigkeit erhöht wird und die Kosten reduziert werden.
- Der Erfindung liegt eine weitere Aufgabe zugrunde, eine Speichereinrichtung mit optimierter Kompression zu schaffen, wobei die Kompression optimiert werden kann.
- Diese Aufgaben werden dadurch gelöst, daß die Speichereinrichtung im wesentlichen aus einem Controller und mindestens einem Festkörperspeichermedium besteht, wobei der Controller eine Host/Controller-Schnittstelle, die zur Verbindung mit der Systemseite dient, einen Mikroprozessor, der die Befehle aus der Systemseite verarbeitet, und eine Flash/Controller-Schnittstelle, die zur Verbindung mit dem Festkörperspeichermedium dient, umfaßt, dadurch gekennzeichnet, daß zwischen der Host/Controller-Schnittstelle und der Flash/Controller-Schnittstelle ein Datenkompressions-/-dekompressionsmodul vorgesehen ist, durch den die zu speichernden Daten in einem vorbestimmten Verhältnis komprimieren können, wodurch die Datenmenge, die in dem Festkörperspeichermedium gespeichert werden kann, erhöht wird, so daß eine Erweiterung der Speicherkapazität erreicht wird.
- Um die Kompression zu optimieren, enthält der Datenkompressions-/-dekompressionsmodul eine Datenkompressionsschaltung und eine Datendekompressionsschaltung. Der Mikroprozessor entscheidet anhand des Tpys der über die Host/Controller-Schnittstelle eingegebenen Daten die beste Kompressionskombination, durch die die zu speichernden Daten zu minimierten Daten mit kleinster Speichereinheit komprimiert werden können.
- Im folgenden wird die Erfindung anhand eines bevorzugten Ausführungsbeispiels und der beigefügten Zeichnungen näher erläutert.
- Kurze Beschreibung der Zeichnungen
-
1 zeigt eine Blockschaltung der Erfindung. -
2 zeigt einen Block des Festkörperspeichermediums. -
3 zeigt eine Blockschaltung des Datenkompressions-/-dekompressionsmoduls. -
4 zeigt einen Block des Festkörperspeichermediums mit komprimierten Daten. -
5A zeigt eine Blockschaltung des Datenkompressions-/-dekompressionsmoduls bei der Kompression. -
5B zeigt eine Blockschaltung des Datenkompressions-/-dekompressionsmoduls bei der Dekompression. -
6 zeigt eine Blockschaltung der herkömmlichen Lösung. - Wege zur Ausführung der Erfindung
- In
1 ist eine Blockschaltung der Erfindung gezeigt. Wie dargestellt, handelt es sich bei der Speichereinrichtung1 um eine Speicherkarte für tragbare Digitalgeräte oder eine USB-Wechselplatte oder eine andere Speichereinrichtung mit Festkörperspeichermedium (Flash-Speicher), die sich noch in der Entwicklung befindet. - Die Speichereinrichtung
1 besteht im wesentlichen aus einem Controller10 und mindestens einem Festkörperspeichermedium20 . Der Controller10 umfaßt eine Host/Controller-Schnittstelle104 , einen Mikroprozessor102 und eine Flash/Controller-Schnittstelle106 . Die Host/Controller-Schnittstelle104 dient zur Verbindung mit der Systemseite2 (tragbare Digitalgeräte oder Hostcomputer) und die Flash/Controller-Schnittstelle106 dient zur Verbindung mit dem Festkörperspeichermedium20 . Der Mikroprozessor102 verbindet die Host/Controller-Schnittstelle104 mit der Flash/Controller-Schnittstelle106 . - Die Speichereinrichtung
1 weist einen Datenkompressions-/-dekompressionsmodul108 auf, der sich zwischen der Host/Controller-Schnittstelle104 und der Flash/Controller-Schnittstelle106 befindet und mit dem Mikroprozessor102 elektrisch verbunden ist. In dem Controller10 sind weiterhin ein erster Datenpuffer110 und ein zweiter Datenpuffer120 vorgesehen, wobei der erste Datenpuffer110 den Datenkompressions-/-dekompressionsmodul108 mit der Host/Controller-Schnittstelle104 und der zweite Datenpuffer120 den Datenkompressions-/-dekompressionsmodul108 mit der Flash/Controller-Schnittstelle106 verbindet. Der erste und zweite Datenpuffer110 ,120 dienen zum Zwischenspeichern von Daten. - Beim Datenschreiben der Systemseite
2 in das Festkörperspeichermedium20 der Speichereinrichtung1 werden die Daten aus der Systemseite2 über die Host/Controller-Schnittstelle104 eingegeben und unter Steuerung des Mikroprozessors102 durch den Datenkompressions-/-dekompressionsmodul108 in geeignetem Verhältnis komprimiert. Die dadurch komprimierten Daten werden dann über die Flash/Controller-Schnittstelle106 in dem Festkörperspeichermedium20 gespeichert. Da die Daten komprimiert werden, können die gespeicherte Datenmenge um vielfach höher werden. - In diesem Ausführungsbeispiel werden die Daten vor der Kompression in dem ersten Datenpuffer
110 zwischengespeichert. Der Datenkompressions-/-dekompressionsmodul108 greift auf die Daten in dem ersten Datenpuffer110 zu, komprimiert diese Daten und dann speichert die komprimierten Daten in dem zweiten Datenpuffer120 . Die in dem zweiten Datenpuffer120 zwischengespeicherten Daten werden unter Steuerung des Mikroprozessors102 über die Flash/Controller-Schnittstelle106 in dem Festkörperspeichermedium20 gespeichert. - Beim Datenlesen der Systemseite
2 aus dem Festkörperspeichermedium20 der Speichereinrichtung1 werden die komprimierten Daten in dem Festkörperspeichermedium20 über der Flash/Controller-Schnittstelle106 in dem zweiten Datenpuffer120 zwischengespeichert. Der Datenkompressions-/-dekompressionsmodul108 greift auf die komprimierten Daten in dem zweiten Datenpuffer120 zu, dekomprimiert diese Daten und dann speichert die dekomprimierten Daten in dem ersten Datenpuffer110 . Danach werden die in dem ersten Datenpuffer110 zwischen gespeicherten Daten über die Host/Controller-Schnittstelle104 auf die Systemseite2 übertragen. - Wie aus
2 ersichtlich ist, wird beim Datenschreiben der Systemseite2 in das Festkörperspeichermedium20 der Speichereinrichtung1 neben den zu Speicherenden Daten auch die Steuerinformation gespeichert. Das Festkörperspeichermedium20 ist in vier Blöcke4 aufgeteilt. Im vorliegenden Ausführungsbeispiel hat jeder Block eine Kapazität von 528 Byte und weist jeweils einen Datenbereich42 (512 Byte, gleich wie bei einem Sektor der Festplatte) sowie einen Steuerinformationsbereich44 (16 Byte) auf. Die in dem Steuerinformationsbereich44 gespeicherte Steuerinformation enthält ein Status-Flag441 , einen Fehlerkorrektionskode442 und ein logisches Adressenregister443 . Neben der Steuerinformation besitzt der Steuerinformationsbereich44 noch einen freien Raum (444 in2 ), der in der Erfindung als Speicherraum für Kompressionsregister verwendet wird. - In den
3 bis5 wird die optimierte Kompression der Erfindung beschrieben. - Wie aus
3 ersichtlich ist, enthält der Datenkompressions-/-dekompressionsmodul 108 eine Datenkompressionsschaltung1082 sowie eine Vielzahl von algorithmischen Anweisungen1083a–1083n und Parametertabellen1084a–1084n , wobei eine algorithmische Anweisung eine algorithmische Methode der Kompression/Dekompression definiert. Jede algorithmische Methode der Kompression/Dekompression kann in Verbindung mit einer geeignetesten Parametertabelle die beste Kompressionskombination bilden, durch die die zu speicherenden Daten zu minimierten Daten mit kleinster Speichereinheit komprimiert werden können. - Zunächst entscheidet der Mikroprozessor
102 anhand des Tpys der über die Host/Controller-Schnittstelle104 eingegebenen Daten die beste Kompressionskombination. Der Mikroprozessor102 kann durch den Binärzustand der zu speicherenden Daten ihren Typ erfassen, d. h. durch den Anteil, die Verteilung oder die Wiederholung von 0 und 1-Bit. Nach der Erfassung des Typs der zu speicherenden Daten wird von den algorithmischen Anweisungen1083 und Parametertabellen1084 eine Kompressionskombination ausgewählt, die für den Typ der zu speicherden Daten am besten geeignet ist. Unter Steuerung des Mikroprozessors102 führt die Datenkompressionsschaltung diese Kompressionskombination aus, wodurch die zu speichernden Daten zu minimierten Daten mit kleinster Speichereinheit komprimiert und in dem zweiten Datenpuffer120 zwischengespeichert werden. Wenn die Flash/Controller-Schnittstelle106 angesteuert wird und die komprimierten Daten in dem Festkörperspeichermedium20 speichert, wird gleichzeitig eine Indexmarke für die beste Kompressionskombination von algorithmischer Anweisung und Parametertabelle in dem Festkörperspeichermedium20 gespeichert, wobei die komprimierten Daten in dem Datenbereich42 des Blockes4 und die Indexmarke in dem freien Raum444 des Blockes4 gespeichert wird. - Der Datenkompressions-/-dekompressionsmodul
108 enthält weiterhin eine Datendekompressionsschaltung1085 . Beim Datenlesen der Systemseite2 aus der Speichereinrichtung1 wird die Datendekompressionsschaltung1085 von dem Mikroprozessor102 angesteuert. Die Datendekompressionsschaltung1085 liest zunächst über die Flash/Controller-Schnittstelle106 die in dem freien Raum444 gespeicherte Indexmarke aus, durch die die verwendete algorithmische Anweisung und Parametertabelle erkannt werden können. Dementsprechend dekomprimiert die Datendekompressionsschaltung1085 die komprimierten Daten und die dekomprimierten Daten über die Host/Controller-Schnittstelle104 auf die Systemseite2 übertragen. - In
4 und5A ist ein Ausführungsbeispiel der optimierten Kompression gezeigt. - Wenn die zu speichernden Daten in dem ersten Datenpuffer
110 zwischengespeichert werden, führt der Mikroprozessor102 eine Auswertung des Binärzustandes der zu speichernden Daten durch und wählt entsprechend dem Ergebnis der Auswertung eine geeigneteste Kompressionskombination von algorithmischer Anweisung1083 und Parametertabelle1084 aus. Im vorliegenden Ausführungsbeispiel wird die Kompressionskombination (1 ,2 ) von der ersten algorithmischen Anweisung1083a und der zweiten Parametertabelle1084b verwendet. Anschließend wird die Datenkompressionsschaltung1082 in dem Datenkompressions-/-dekompressionsmodul108 angesteuert, die somit anhand der Kompressionskombination (1 ,2 ) die zu speichernden Daten komprimiert. Mit der Kompressionskombination (1 ,2 ) werden die zu speicherenden Daten im Verhältnis von 1/2 komprimiert. (Wenn die zu speichernden Daten einen Speicherraum von 512 Byte besetzen, besetzen sie nach der Kompression nur einen Speicherraum von 256 Byte.) Der Datenbereich42 eines Blockes4 wird von diesen Daten vollbesetzt. Nach der Kompression besetzen diese Daten nur die Hälfte des Datenbereiches. Dadurch kann die Speicherkapazität des Festkörperspeichermediums20 erweitert werden. - Beim Speichern der komprimierten Daten wird gleichzeitig eine Indexmarke (
1 ,2 ) für die erste algorithmische Anweisung und die zweite Parametertabelle in dem freien Raum444 des Steuerinformationsbereiches44 gespeichert, während das Status-Flag441 , der Fehlerkorrektionskode442 und das logische Adressenregister443 unverändertbleiben. Anhand der Indexmarke (1 ,2 ) kann eine entsprechende Dekompression durchgeführt werden. - In
4 und5B ist ein Ausführungsbeispiel der optimierten Dekompression gezeigt. - Beim Datenlesen der Systemseite
2 findet der Controller anhand des logischen Adressenregisters443 den Block4 des Festkörperspeichermediums, in dem die zu lesenden Daten gespeichert sind, und speichert die zu lesenden Daten in dem zweiten Datenpuffer120 . Anschließend wird die Datendekompressionsschaltung1085 von dem Mikroprozessor angesteuert, die somit anhand der Indexmarke (1 ,2 ) für die erste algorithmische Anweisung und die zweite Parametertabelle, die in den freien Raum444 desselben Blockes4 gespeichert ist, die komprimierten Daten dekomprimiert und in dem ersten Datenpuffer110 speichert. Die in dem ersten Datenpuffer zwischengespeicherten Daten werden dann auf die Systemseite2 übertragen. - Die vorstehende Beschreibung stellt nur ein bevorzugtes Ausführungsbeispiel der Erfindung dar und soll nicht als Definition der Grenzen und des Bereiches der Erfindung dienen. Alle gleichwertige Änderungen und Modifikationen gehören zum Schutzbereich dieser Erfindung.
-
- 1
- Speichereinrichtung
- 10
- Controller
- 104
- Host/Controller-Schnittstelle
- 102
- Mikroprozessor
- 106
- Flash/Controller-Schnittstelle
- 108
- Datenkompressions-/-dekompressionsmodul
- 1082
- Datenkompressionsschaltung
- 1083a–1083n
- algorithmische Anweisung
- 1084a–1084n
- Parametertabelle
- 1085
- Datendekompressionsschaltung
- 110
- erster Datenpuffer
- 120
- zweiter Datenpuffer
- 20
- Festkörperspeichermedium
- 2
- Systemseite
- 4
- Block
- 42
- Datenbereich
- 44
- Steuerinformationsbereich
- 441
- Status-Flag
- 442
- Fehlerkorrekionskode
- 443
- logisches Adressenregister
- 444
- freier Raum
Claims (7)
- Speichereinrichtung mit optimierter Kompression, die im wesentlichen aus einem Controller (
10 ) und mindestens einem Festkörperspeichermedium (20 ) besteht, wobei der Controller (10 ) eine Host/Controller-Schnittstelle (104 ), die zur Verbindung mit der Systemseite (2 ) dient, einen Mikroprozessor (102 ), der die Befehle aus der Systemseite (2 ) verarbeitet, und eine Flash/Controller-Schnittstelle (106 ), die zur Verbindung mit dem Festkörperspeichermedium (20 ) dient, umfaßt, dadurch gekennzeichnet, daß zwischen der Host/Controller-Schnittstelle (104 ) und der Flash/Controller-Schnittstelle (106 ) ein Datenkompressions-/-dekompressionsmodul (108 ) vorgesehen ist, der mit dem Mikroprozessor (102 ) elektrisch verbunden ist und eine Datenkompressionsschaltung (1082 ) sowie eine Vielzahl von algorithmischen Anweisungen (1083a–1083n ) und Parametertabellen (1084a–1084n ) enthält, und der Mikroprozessor (102 ) anhand des Tpys der über die Host/Controller-Schnittstelle (104 ) eingegebenen Daten die beste Kompressionskombination entscheidet, mit der die Datenkompressionsschaltung (1082 ) die zu speichernden Daten zu minimierten Daten mit kleinster Speichereinheit komprimiert. - Speichereinrichtung nach Anspruch 1, dadurch gekennzeichnet, daß in dem Festkörperspeichermedium (
20 ) eine Indexmarke für die verwendete Kompressionskombination von algorithmischer Anweisung und Parametertabelle gespeichert wird. - Speichereinrichtung nach Anspruch 2, dadurch gekennzeichnet, daß der Datenkompressions-/-dekompressionsmodul (
108 ) weiterhin eine Datendekompressionsschaltung (1085 ) enthält, die unter Steuerung des Mikroprozessors (102 ) entsprechend der in dem Festkörperspeichermedium (20 ) gespeicherten Indexmarke für die verwendete Kompressionskombination von algorithmischer Anweisung und Parametertabelle die komprimierten Daten dekomprimieren kann. - Speichereinrichtung nach Anspruch 1, dadurch gekennzeichnet, daß in der Speichereinrichtung (
1 ) ein erster Datenpuffer (110 ) vorgesehen ist, der mit der Host/Controller-Schnittstelle (104 ), dem Mikroprozessor (102 ) und dem Datenkompressions-/-dekompressionsmodul (108) elektrisch verbunden ist. - Speichereinrichtung nach Anspruch 1, dadurch gekennzeichnet, daß in der Speichereinrichtung (
1 ) einzweiter Datenpuffer (120 ) vorgesehen ist, der mit der Flash/Controller-Schnittstelle (106 ), dem Mikroprozessor (102 ) und dem Datenkompressions-/-dekompressionsmodul (108 ) elektrisch verbunden ist. - Speichereinrichtung nach Anspruch 1, dadurch gekennzeichnet, daß der Datenkompressions-/-dekompressionsmodul (
108 ) in dem Controller (10 ) eingebaut ist. - Speichereinrichtung nach Anspruch 1, dadurch gekennzeichnet, daß der Mikroprozessor (
102 ) durch den Binärzustand der zu speicherenden Daten ihren Typ erfassen kann.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW092115319A TWI220959B (en) | 2003-06-05 | 2003-06-05 | Storage device with optimized compression management mechanism |
| TW092115319 | 2003-06-05 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| DE10339225A1 true DE10339225A1 (de) | 2004-12-23 |
Family
ID=33488669
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE10339225A Withdrawn DE10339225A1 (de) | 2003-06-05 | 2003-08-26 | Speichereinrichtung mit optimierter Kompression |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US20040250009A1 (de) |
| JP (1) | JP2004362530A (de) |
| KR (1) | KR20040105529A (de) |
| DE (1) | DE10339225A1 (de) |
| TW (1) | TWI220959B (de) |
Families Citing this family (35)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3981066B2 (ja) * | 2003-11-07 | 2007-09-26 | 株式会社東芝 | ホスト機器、メモリカード、メモリ容量変更方法及びメモリ容量変更プログラム |
| US7162583B2 (en) * | 2003-12-29 | 2007-01-09 | Intel Corporation | Mechanism to store reordered data with compression |
| US7860749B2 (en) * | 2004-04-16 | 2010-12-28 | Sap Ag | Method, medium and system for customizable homepages for network-based auctions |
| US7877313B2 (en) * | 2004-04-16 | 2011-01-25 | Sap Ag | Method and system for a failure recovery framework for interfacing with network-based auctions |
| US7783520B2 (en) * | 2004-04-16 | 2010-08-24 | Sap Ag | Methods of accessing information for listing a product on a network based auction service |
| US7788160B2 (en) * | 2004-04-16 | 2010-08-31 | Sap Ag | Method and system for configurable options in enhanced network-based auctions |
| US7627500B2 (en) * | 2004-04-16 | 2009-12-01 | Sap Ag | Method and system for verifying quantities for enhanced network-based auctions |
| TWI228257B (en) * | 2004-05-06 | 2005-02-21 | Carry Computer Eng Co Ltd | Silicon storage media, controller, and access method thereof |
| US8095428B2 (en) | 2005-10-31 | 2012-01-10 | Sap Ag | Method, system, and medium for winning bid evaluation in an auction |
| US7895115B2 (en) | 2005-10-31 | 2011-02-22 | Sap Ag | Method and system for implementing multiple auctions for a product on a seller's E-commerce site |
| US7835977B2 (en) * | 2005-11-03 | 2010-11-16 | Sap Ag | Method and system for generating an auction using a template in an integrated internal auction system |
| US8095449B2 (en) | 2005-11-03 | 2012-01-10 | Sap Ag | Method and system for generating an auction using a product catalog in an integrated internal auction system |
| US8155315B2 (en) * | 2006-01-26 | 2012-04-10 | Rovi Solutions Corporation | Apparatus for and a method of downloading media content |
| US8560760B2 (en) | 2007-01-31 | 2013-10-15 | Microsoft Corporation | Extending flash drive lifespan |
| US7657572B2 (en) | 2007-03-06 | 2010-02-02 | Microsoft Corporation | Selectively utilizing a plurality of disparate solid state storage locations |
| US7692975B2 (en) | 2008-05-09 | 2010-04-06 | Micron Technology, Inc. | System and method for mitigating reverse bias leakage |
| US9772936B2 (en) * | 2008-07-10 | 2017-09-26 | Micron Technology, Inc. | Data collection and compression in a solid state storage device |
| US9141538B2 (en) * | 2010-07-07 | 2015-09-22 | Marvell World Trade Ltd. | Apparatus and method for generating descriptors to transfer data to and from non-volatile semiconductor memory of a storage drive |
| US8868852B2 (en) * | 2010-07-07 | 2014-10-21 | Marvell World Trade Ltd. | Interface management control systems and methods for non-volatile semiconductor memory |
| US9135168B2 (en) * | 2010-07-07 | 2015-09-15 | Marvell World Trade Ltd. | Apparatus and method for generating descriptors to reaccess a non-volatile semiconductor memory of a storage drive due to an error |
| US8725933B2 (en) * | 2011-07-01 | 2014-05-13 | Intel Corporation | Method to detect uncompressible data in mass storage device |
| EP2746953A4 (de) * | 2011-08-15 | 2014-08-20 | Spreadtrum Comm Shanghai Co | Bedarfsabhängiges funkrufverfahren für ein mobiles endgerät, steuerung und mobiles endgerät |
| US9053018B2 (en) * | 2012-06-29 | 2015-06-09 | International Business Machines Corporation | Compressed memory page selection based on a population count of a dataset |
| KR101997794B1 (ko) * | 2012-12-11 | 2019-07-09 | 삼성전자주식회사 | 메모리 제어기 및 그것을 포함한 메모리 시스템 |
| CN103051341B (zh) * | 2012-12-31 | 2016-01-27 | 华为技术有限公司 | 数据编码装置及方法、数据解码装置及方法 |
| KR101992274B1 (ko) * | 2013-01-02 | 2019-09-30 | 삼성전자주식회사 | 데이터 압축 방법과 상기 방법을 수행할 수 있는 장치들 |
| TWI493446B (zh) * | 2013-09-23 | 2015-07-21 | Mstar Semiconductor Inc | 記憶體管理方法及記憶體管理裝置 |
| KR102078853B1 (ko) * | 2013-11-27 | 2020-02-18 | 삼성전자 주식회사 | 메모리 시스템, 호스트 시스템 및 메모리 시스템에서의 라이트 동작 수행 방법 |
| TWI534814B (zh) * | 2014-10-20 | 2016-05-21 | 群聯電子股份有限公司 | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 |
| CN105630687B (zh) * | 2014-10-27 | 2019-01-08 | 群联电子股份有限公司 | 数据写入方法、存储器控制电路单元与存储器存储装置 |
| US9552384B2 (en) | 2015-06-19 | 2017-01-24 | HGST Netherlands B.V. | Apparatus and method for single pass entropy detection on data transfer |
| US10152389B2 (en) | 2015-06-19 | 2018-12-11 | Western Digital Technologies, Inc. | Apparatus and method for inline compression and deduplication |
| CN111984192A (zh) * | 2020-08-10 | 2020-11-24 | 杭州电子科技大学 | 一种带数据压缩解压的sd卡及其数据存储方法 |
| US11928346B2 (en) | 2021-10-05 | 2024-03-12 | International Business Machines Corporation | Storage optimization based on references |
| US20250192803A1 (en) * | 2023-12-11 | 2025-06-12 | Samsung Electronics Co., Ltd. | Systems and methods for compression of artificial intelligence |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5357614A (en) * | 1992-09-17 | 1994-10-18 | Rexon/Tecmar, Inc. | Data compression controller |
| US5374916A (en) * | 1992-12-18 | 1994-12-20 | Apple Computer, Inc. | Automatic electronic data type identification process |
| US7538694B2 (en) * | 1999-01-29 | 2009-05-26 | Mossman Holdings Llc | Network device with improved storage density and access speed using compression techniques |
| US6145069A (en) * | 1999-01-29 | 2000-11-07 | Interactive Silicon, Inc. | Parallel decompression and compression system and method for improving storage density and access speed for non-volatile memory and embedded memory devices |
| US6577254B2 (en) * | 2001-11-14 | 2003-06-10 | Hewlett-Packard Development Company, L.P. | Data compression/decompression system |
| US6847315B2 (en) * | 2003-04-17 | 2005-01-25 | International Business Machines Corporation | Nonuniform compression span |
-
2003
- 2003-06-05 TW TW092115319A patent/TWI220959B/zh not_active IP Right Cessation
- 2003-07-30 JP JP2003282464A patent/JP2004362530A/ja active Pending
- 2003-08-07 KR KR1020030054767A patent/KR20040105529A/ko not_active Withdrawn
- 2003-08-26 DE DE10339225A patent/DE10339225A1/de not_active Withdrawn
- 2003-08-27 US US10/648,201 patent/US20040250009A1/en not_active Abandoned
Also Published As
| Publication number | Publication date |
|---|---|
| JP2004362530A (ja) | 2004-12-24 |
| US20040250009A1 (en) | 2004-12-09 |
| TWI220959B (en) | 2004-09-11 |
| TW200428269A (en) | 2004-12-16 |
| KR20040105529A (ko) | 2004-12-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE10339225A1 (de) | Speichereinrichtung mit optimierter Kompression | |
| DE112014005521B4 (de) | Speichermodul und Verfahren zum Verwalten des Abbildens logischer Adressen auf physikalische Adressen | |
| DE60030876T2 (de) | Bereichsverwaltung eines nichtflüchtigen Speichers mit hoher Kapazität | |
| DE69027348T2 (de) | Speicherblockadressenermittlungsschaltkreis | |
| DE69804115T2 (de) | Datenübertragung auf einem nichtflüchtigen speichermedium | |
| DE69311554T2 (de) | Massenspeicherkarte mit eingangs- ausgangsfunktion. | |
| DE69527594T2 (de) | Flashspeicherkarte | |
| DE10345420A1 (de) | Speichereinrichtung mit erhöhter Übertragungsgeschwindigkeit | |
| DE69330196T2 (de) | Textkomprimierungstechnik unter Anwendung einer frequenzgeordneten Matrix von Wort-Nummern-Abbildungen | |
| DE60130593T2 (de) | Flash-Speicherarchitektur mit gleichzeitig programmierbaren mehrfachen hostfähigen Flash-Speicherbanken | |
| DE19882933B4 (de) | Flash-Speicher-Unterteilung für Lese-während-Schreiboperationen | |
| DE60006779T2 (de) | Verfahren zum schreiben eines geänderten bios codes in den rompeicherchip einer hostschnittstelle | |
| DE69027377T2 (de) | Verfahren zur Ausarbeitung einer unregelmässigen Vertauschung von mittels Verschlüsselung geschützten Daten | |
| DE102006024655B4 (de) | Speicherkarte und Speichersteuereinheit | |
| DE102009051339A1 (de) | Speichersystem und Speicherverfahren | |
| DE112013000734B4 (de) | Multiplex-Klassifizierung zum Komprimieren von Tabellendaten | |
| DE19540915A1 (de) | Redundante Anordnung von Festkörper-Speicherbausteinen | |
| DE19537305A1 (de) | Halbleiter-Platteneinrichtung und Speicherverwaltungsmethode | |
| DE69509024T2 (de) | Emulator mit Detektierungsmechanismus eines illegalen Zugriffs auf ein Spezialregister | |
| DE112004001255T5 (de) | Speichervorrichtung und Speichersystem | |
| DE69119149T2 (de) | Struktur zur direkten Speicher-zu-Speicher-Übertragung | |
| DE102022207672A1 (de) | Kodiervorrichtung, speichergerät und betriebsverfahren des speichergeräts | |
| DE112013001108T5 (de) | Schreiben von neuen Daten einer ersten Blockgrösse in eine zweite Blockgrösse, wobei ein Write-Write-Modus verwendet wird | |
| DE1524773A1 (de) | Verbessertes Adressierungssystem fuer Speichervorrichtungen elektronischer Datenverarbeitungsanlagen | |
| DE102006036837A1 (de) | Datenspeicherverwaltungsverfahren und -system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| ON | Later submitted papers | ||
| 8128 | New person/name/address of the agent |
Representative=s name: ZEITLER, VOLPERT, KANDLBINDER, 80539 MUENCHEN |
|
| 8110 | Request for examination paragraph 44 | ||
| 8139 | Disposal/non-payment of the annual fee |