JPH10508170A - 連想メモリを使用するlzwデータ圧縮 - Google Patents

連想メモリを使用するlzwデータ圧縮

Info

Publication number
JPH10508170A
JPH10508170A JP8521063A JP52106396A JPH10508170A JP H10508170 A JPH10508170 A JP H10508170A JP 8521063 A JP8521063 A JP 8521063A JP 52106396 A JP52106396 A JP 52106396A JP H10508170 A JPH10508170 A JP H10508170A
Authority
JP
Japan
Prior art keywords
code
register
character
memory
address
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.)
Granted
Application number
JP8521063A
Other languages
English (en)
Other versions
JP3016868B2 (ja
Inventor
クーパー,アルバート,ビー.
Original Assignee
ユニシス コーポレーション
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 ユニシス コーポレーション filed Critical ユニシス コーポレーション
Publication of JPH10508170A publication Critical patent/JPH10508170A/ja
Application granted granted Critical
Publication of JP3016868B2 publication Critical patent/JP3016868B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3084Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
    • H03M7/3088Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method employing the use of a dictionary, e.g. LZ78
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)

Abstract

(57)【要約】 連想メモリ(11)を利用してLZWデータ圧縮を実行する。メモリのそれぞれのロケーションはプレフィクス・コード・フィールド(12)および文字フィールド(13)を含む。コード・フィールド(21)および文字フィールド(22)を含むレジスタ(20)は、メモリのロケーションと連想的に比較され、それらのマッチが存在するかどうかを決定する。マッチが見付かった場合は、そのマッチのアドレス(14)がレジスタのコード・フィールドに挿入され、次の入力文字がその文字フィールドに挿入される。レジスタのコード・フィールド内に存在するコードは、ストリングの圧縮されたコードとして送出(34)され、レジスタの内容はメモリの次に空のロケーション内に書き込まれる。次のサイクルは、レジスタのコード・フィールドをヌルにすることによって開始され、さらに上記のステップを繰り返す。

Description

【発明の詳細な説明】 連想メモリを使用するLZWデータ圧縮 本発明の背景 1.関連する技術分野 本発明は、データ圧縮(compression)および復元(decompression)に関する。 2.従来技術の説明 LZWは、至るところで普及しているデータを圧縮および復元(展開または伸 張)するためのプロセスであり、たとえばモデム通信用のCCITT V.42bis標準な どのアプリケーションにおいて、利用されている。LZWは、1985年12月 10日にテリー・エー・ウェルチ(Terry A.Welch)に対して発行された合衆国特 許第4,558,302号「高速データ圧縮および復元装置および方法」に説明されてい る。前記特許第4,558,302号は、ここで参照することにより本明細書の一部を構 成するものとなし、および本発明の譲受人に対して譲渡されている。 LZWデータ圧縮は、辞書を利用するが、これは、入力内で見つかったデータ 字(character「文字」)のストリング(string「文字列」)をストアして、入力ス トリームを辞書にストアされたストリングと比較して入力ストリームを検索して 、これと最長マッチ(match)するものを調べて決定するためである。伝統的には 、データ圧縮辞書は、ランダム・アクセス・メモリ(RAM)ストレージ内に実 装されている。ウェルチは前記特許第4,558,302号(第52滴、第30〜34行 目)において、コンテント・アドレッサブル(content-addressable「内容からア ドレスを得ることができる」)な、つまり、連想メモリをRAMのかわりに利用する ことができ、これは制御の複雑さを減少させるだろうと示唆している。しかし、 ウェルチはこれを達成するための方法については何ら説明しなかった。従来技術 においてLZW圧縮アルゴリズムの連想メモリ実装が今までに提供されたことは ないと信じられる。 一方、1982年12月28日にクラウス・イー・ホルツ(Klaus E.Holtz)に 対して発行された合衆国特許第4,366,551号「連想メモリ検索システム」は、連 想メモリを使用したストレージおよび検索システムを開示する。しかし、前記特 許第4,366,551号は、LZWアルゴリズムの連想メモリ実装について開示も示唆 もしなかった。前記特許第4,366,551号は、前記特許4,558,302号の再審査におい て引用され、そして克服されて、1994年1月4日に発行された再審査証明書 B 4,558,302号となっている。 本発明の概要 データ文字信号のストリームは、圧縮されたコード信号のストリーム内へ圧縮 されるが、これは、プレフィクス(prefix)コードを保持するレジスタ(register) の内容、つまり文字ペアを、プレフィクス・コードをストアする連想メモリの内 容、つまり複数の文字ペアと比較することによって行う。レジスタの文字部は逐 次的にデータ文字信号を保持するが、これは、データ文字信号の入力ストリーム から吸収(absorb)されたときに行われる。比較結果がヒット(hit)になった場合 は、ヒット・アドレスがレジスタ内のプレフィクス・コードに対して置換され、 次のデータ文字信号がレジスタ内の文字に対して置換される。このプロセスは、 ミス(miss)が発生するまで繰り返されるが、ミスが発生したときに、レジスタ内 のプレフィクス・コードは圧縮されたコード信号として送出される。アドレス・ カウンタは連想メモリ内の次に利用できる空の場所のアドレスを提供する。レジ スタの内容はこの場所にストアされ、アドレス・カウンタがインクリメント(inc rement「1増やす」)される。 図面の簡単な説明 図1は、本発明にしたがって実装されたデータ圧縮部(compressor)の説明ブロ ック図である。 図2は、図1の出力を復元するためのデータ復元部(decompressor)の説明ブ ロック図である。 好適実施形態の説明 本願発明の実施形態は、すべての単一の文字ストリングを含むように初期化さ れた辞書と、ヌル・ストリングのみを含むように初期化された辞書とのいずれの 辞書とでも動作させることができる。単一の文字ストリングで初期化された実施 形態を、まず説明する。 図1を参照するに、本発明にしたがって構成されたデータ圧縮部10が図示さ れている。データ圧縮部10は、コンテント・アドレッサブルなメモリ11を含 み、このメモリは、N個のロケーションであってそれぞれがプレフィクス・コー ドをストアするためのフィールド12と、一つの文字をストアするためのフィー ルド13を有するロケーションを有する。メモリ11は、さらに、メモリ・ロケ ーションのアドレスを示すためのアドレス・セクション14を含む。 圧縮部10は、[A]個の文字を有するアルファベットにわたるデータ文字信 号のストリームを圧縮する。たとえば、ASCIIコード化された表現においては、 アルファベット・サイズは256が利用される。圧縮部10の単一の文字ストリ ングで初期化された実施形態においては、メモリ11のうち最初の[A]個のロ ケーションが[A]個の単一の文字ストリングを含むように初期化されている。 単一の文字ストリングをストアしているロケーションのフィールド12内のプレ フィクス・コードは、ゼロにセットされ、そのフィールド13はその文字をバイ ナリ形式でストアする。たとえば、ASCIIコードでは、文字フィールド13は8 ビット幅である。プレフィクス・コード・フィールド12は、メモリ11のN個 のロケーションを収容するのに十分なビット数を有する。 メモリ11のロケーションのうち、ロケーション[A]+1から始まるものは 、その文字フィールド13のすべてが、上記アルファベットの文字のいずれとも 認識されない任意のビット・パターンへリセットされるよう初期化される。 データ圧縮部10は、さらに、コードをストアするためのフィールド21と、 文字をストアするためのフィールド22とを有するレジスタ20を含む。メモリ 11は、連想モード、つまり、読み出しモードで動作することがあるが、このと きは、レジスタ20の内容はメモリ11の内容と比較される。この動作は、参照 番号23によって示されている。レジスタ20の内容がメモリ11内のあるロケ ーションの内容とマッチする場合は、「ヒット」信号がヒット/ミス出力24に 示される。そのヒットが見つかったロケーションのアドレスは、出力25上のア ドレス・セクション14から提供される。出力25はレジスタ20のコード・フ ィールド21への入力を提供する。レジスタ20の内容がメモリ11内に見つか らなかった場合は、「ミス」が出力24に示される。 メモリ11は、書き込みモードで動作することもあるが、このときは、レジス タ20のコード・フィールド21および文字フィールド22の内容が、それぞれ 、メモリ11のアドレス入力26によってアドレスされたロケーションのプレフ ィクス・コード・フィールド12および文字フィールド13内へ書き込まれる。 メモリ・アドレスは、アドレス・カウンタ31からのアドレス入力に提供される 。コードおよび文字のメモリ11に対する書き込みモードでの入力は、それぞれ 参照番号27および28に示される。メモリ11の書き込み/読み出しモードは 、入力30によって選択される。 圧縮される文字の入力データ・ストリームは、入力32において、入力データ ・レジスタ33を通じてレジスタ20の文字フィールド22へ供給される。デー タ圧縮部10の圧縮されたコードは、出力ブロック34を通じてレジスタ20の コード・フィールド21から提供される。ヌル・コード入力40は、レジスタ2 0のコード・フィールド21をゼロにするために利用される。 制御ロジック(logic「論理回路」)41は、42において示されているように 、データ圧縮部10のコンポーネントのすべてに入力を提供する。制御ロジック 41は、メモリ出力24上のヒット/ミス信号を受信して書き込み/読み出し信 号をメモリ11へメモリ入力30を経由して提供する。 データ圧縮部10の単一の文字ストリングで初期化された実施形態における動 作においては、メモリ11の最初の[A]個のロケーションがすべてのありうる 単一の文字ストリングをストアするよう初期化される。これらの初期化されたロ ケーションにおいては、プレフィクス・コード・フィールド12はゼロへセット され、文字フィールド13は、該アルファベットのそれぞれの文字のバイナリ表 現へセットされる。アドレス・カウンタ31は[A]+1へセットされる。圧縮 される入力文字ストリームは、入力32に供給され、入力データ・レジスタ33 内にバッファされる。 データ圧縮部10のサイクルは以下のようにして行われる。 レジスタ20のコード・フィールド21は、ヌル・コード40によってゼロ化 される。文字フィールド22は、前のサイクルにおいて出力24に「ミス」表示 を出力することとなった文字をストアする。しかし、データ圧縮部10が最初の サイクルを開始する場合は、入力ストリームの最初の文字が入力データ・レジス タ33から文字フィールド22内へ置かれる。 制御ロジック41は、メモリ11を入力33経由で制御して、連想モードで動 作する。レジスタ20の内容は経路23を介してメモリ11の内容と比較され、 その場所がわかった場合は、「ヒット」が制御ロジック41への出力24にレジ スタ(register「登録」)される。「ヒット」が発生したアドレスが、レジスタ2 0のコード・フィールド内へロードされ、次の入力文字がキャラクタ・フィール ド22へロードされる。この手続きは、制御ロジック41への出力24に「ミス 」がレジスタされるまで繰り返す。これが発生したときは、レジスタ20のフィ ールド21に入っている(resident)コードは、出力ブロック34を通じてこのサ イクルの圧縮されたコード出力として提供される。 ついで、制御ロジック41は、メモリ11を制御して、制御入力30を介して 書き込みモードで動作して、入力27からのコードと入力28からの文字を、ア ドレス・カウンタ31によってアドレスされるロケーションのプレフィクス・コ ード・フィールド12および文字フィールド13内へ書き込む。次に、アドレス ・カウンタ31は1だけ増加され、コード・フィールド21はヌル・コード40 を通じてゼロ化される。 ついで、圧縮サイクルは完了し、データ圧縮部10は次のサイクルを実行する 準備ができる。 制御ロジック41は、データ圧縮部10のブロックのすべてに対する制御信号 を提供して、上記の動作を制御する。制御ロジック41は、従来通りの状態機 械ないし状態遷移機械(state machine)によって好都合に実装することができる 。 上記の動作のサイクルによって、入力ストリーム内の文字の入力ストリングは 、データ圧縮部10によって吸収され、その入力の最大長マッチが達成されるま でメモリ11の内容と比較される。この最大長マッチのプレフィクス・コードが 出力され、メモリは、入力ストリームの次に続く文字によって拡張(extend)され た最大長マッチを備えるメモリ11内の拡張されたストリングをストアすること によって、更新される。 このように、データ圧縮部10は、LZW圧縮を実行するが、その際にこの種 の圧縮に通常はつきもののRAM検索オーバヘッドが必要ない。そのかわりに、 レジスタ20の内容の、メモリ11の内容とのコンテント・アドレッサブル比較 が実行される。 図2を参照するに、図1のデータ圧縮部10の圧縮されたコード出力を復元す るためのデータ復元部50が図示されている。データ復元部50は、図1の出力 ブロック34からの圧縮されたコード出力を受信して、対応するデータ文字のス トリームを復元(recover)する。復元部50は上述した前記特許第4,558,302号と 同様の方法でRAM51を利用する。復元部50は、前記特許第4,558,302号の 図5と類似した形態で構成され、動作する。 圧縮されたコードは、入力52において受信され、入力コード・レジスタ53 内に保持される。レジスタ53からの入力コードは、RAMアドレス・レジスタ 54へ供給されて、RAMアドレス・レジスタ54内の圧縮されたコードによっ て表現されるロケーションのRAM51にアクセスする。RAM51の各ロケー ションは、プレフィクス・コード・フィールド55および文字フィールド56を 含む。 図1を参照して上で説明した方法と同様の方法で、RAM51は単一の文字ス トリングのすべてを含むように初期化される。このように、RAM51の最初の [A]個のロケーションが初期化され、そのプレフィクス・コード・フィールド 55はゼロをストアし、その文字フィールド56はアルファベットのそれぞれの 文字のバイナリ表現をストアする。 復元部50は、アドレス・カウンタ60も含むが、これは圧縮動作の開始時に [A]+1へ初期化される。アドレス・カウンタ60の出力は、RAM51へア クセスするためのRAMアドレス・レジスタ54への入力を提供する。RAM5 1は、図1のコンテント・アドレッサブル・メモリ11のN個のロケーションに 対応するN個のロケーションを含む。 RAM51は、文字のストリングが復元されつつあるときは読み出しモードで 動作され、RAM51が更新されているときは書き込みモードで動作される。読 み出しモードにおいては、RAMアドレス・レジスタ54によってアクセスされ るロケーション内のプレフィクス・コードは、経路61に供給され、アクセスさ れたロケーションからの文字はプッシュダウン(pushdown)スタック62へ経路6 3を介して供給される。経路61上のプレフィクス・コードは、RAMアドレス ・レジスタ54へ入力として供給される。スタック62は、復元されたストリン グの文字を保持するために利用されるが、これらは出力64に順次にポップ・ア ウト(pop out)される。 RAM51の書き込みモードにおいては、前コード・レジスタ(prior code re gister)70から提供されたコードが、経路71を介して、RAMアクセス・レ ジスタ54によってアクセスされるロケーションのプレフィクス・フィールド5 5内へ書き込まれる。スタック62は、文字を入力72を介して提供するが、こ れはこのアクセスされるロケーションの文字フィールド内へ書き込むためである 。復元サイクルが完了するときに、入力コード・レジスタ53内のコードは前コ ード・レジスタ70へ転送される。 復元部50は、制御ロジック73をさらに含んで、参照番号74で示すように 、復元部50のコンポーネントのすべてへの入力を制御する。ゼロ検出部75は 、RAM51のプレフィクス・コード出力61がゼロになるときを検出し、この 表示を制御ロジック73へ経路76を介して提供する。 「例外的な場合」の処理を説明するために、復元部50は比較部80を含むが、 これは、入力コード・レジスタ53内のコードをアドレス・カウンタ60の内容 と比較して、これらの量が等しいときに、制御ロジック73へ経路81を介して その表示を提供する。 動作にあたって、復元部50は復元サイクルを、入力52において受信された 各圧縮されたコードに対して実行し、出力64にこのコードに対応する文字スト リングを出力する。復元サイクルは通常は以下のように行われる。 レジスタ53の入力コードがRAMアドレス・レジスタ54へ供給されてRA M51へアクセスする。制御ロジック73は、RAM51を読み出しモードへ制 御する。アクセスされたロケーション内にストアされた文字は、出力63上へ読 み出され、スタック62内にプッシュされる。アクセスされたロケーションから のプレフィクス・コードは出力61へ読み出され、RAMアドレス・レジスタ5 4へ供給されて、次にアクセスされるロケーションをアドレスする。このプロセ スは、読み出しプレフィクス・コードがゼロであることをゼロ検出部75が検出 するまで続く。このこと、つまりゼロであることの検出が生起すると、スタック 62内へプッシュされた文字のストリングが逆の順序で出力64にポップ・アウ トされ、入力52で受信された圧縮されたコードに対応する復元されたストリン グを提供する。 ついで、制御ロジック73はRAM51を書き込みモードヘ制御して前コード ・レジスタ70の内容をアドレス・カウンタ60によってアクセスされるRAM ロケーション内へ書き込む。スタック62のトップにある文字は、このアクセス されたロケーションの文字フィールド56内へ、スタック出力72を介して書き 込まれる。文字フィールド56内へ書き込まれた文字は、現在復元されているス トリングの最初の文字であり、および、ストアされている拡張されたストリング の拡張文字(extension character)である。 復元サイクルの最後において、アドレス・カウンタ60は1だけ増加され、入 力コード・レジスタ53内のコードは前コード・レジスタ70へ転送される。そ して、復元部50は次のコードを受信する準備ができることになる。 復元部50の最初のサイクルにおいて、書き込み動作は実行されないが、これ は、この時点では前コードが前コード・レジスタ70内にないからである。これ に加えて、アドレス・カウンタ60は、このサイクルでは1だけ増加する処理は 行われない。 「例外的な場合」が発生するのは、図1の圧縮部が以前の圧縮サイクルにおい てストアされたストリングのコードを出力するときである。この場合に復元部に よって受信される圧縮されたコードは認識されないが、これは、復元部は、まだ それまでのところでは、このストリングをストアしていないからである。例外的 な場合が発生するのは、レジスタ53内に受信された圧縮された入力コードが、 アドレス・カウンタ60の内容と等しいときである。 例外的な場合の処理は、その後、以下のように実行される。前コード・レジス タ70内のコードは、RAMアドレス・レジスタ54へ経路90を介して転送さ れる。スタック62は、前記特許第4,558,302号で説明されている種類のもので あるが、これは、スタックからポップされた最後の文字がトップ・スタック・レ ジスタ内にそのまま入っているものである。通常の処理においては、この文字は 拡張文字を提供し、この後に文字が入力63で受信されたときに上書きされる。 例外的な場合の処理においては、この文字はスタックにプッシュされ、その後に 、そのときにRAMアドレス・レジスタ54内に入っているコードから復元され た文字が続く。このストリングは、その後、スタック62からポップされ、復元 されたストリングを出力64に提供する。アドレス・カウンタ60は、この時点 でRAM51をRAMアドレス・レジスタ54を介してアクセスしており、この 時点にスタック62のトップにある文字はアクセスされたロケーションの文字フ ィールドへ書き込まれる。この時点に前コード・レジスタ70内にあるコードは 、そのプレフィクス・コード・フィールド55内に書き込まれる。入力コード・ レジスタ53内のコードは、その後、前コード・レジスタ70へ転送され、アド レス・カウンタ60は1だけ増加されて、例外的な場合のサイクルは完了する。 前述したところからわかるように、前記特許第4,558,302号において説明され ているのと同様の方法で、ストリングが逆の順序でRAM51から入力コードに 対する応答において復元されることである。スタック62を用いて、復元された ストリングの順序を逆の順序にして、正しい順序の文字を提供する。 本発明の上記の実施形態は、図1のメモリ11および図2のRAM51をすべ ての単一の文字のストリングで初期化するとして説明されている。本発明は、ヌ ル・ストリングで初期化される実施形態に対しても適用できることがわかる。こ のような実施形態においては、全メモリ11および51がクリアされ、アドレス ・カウンタ31および60は1(ユニティ)のカウントから始まる。ある文字に 初めて出会ったときは、その文字は圧縮されないまま転送されるので、復元部は 圧縮部との同期を維持することができる点を除いて、処理は以前に説明したもの と同様の方法で行われる。これは、圧縮部10がゼロ・コードに続いて復元部5 0によって認識されかつ復元される文字を転送することによって、達成すること ができる。この実施形態においては、ゼロ・コードが入力コード・レジスタ53 においてゼロ検出部によって検出される。 このゼロ・コードおよび文字の転送は、レジスタ20の文字フィールド22か ら出力ブロック34への経路で達成される。出力ブロック34は、レジスタ20 のフィールド21からのゼロ・コードとフィールド22からの文字をアセンブル して、その出力の送出を行う。さらに、図2の入力コード・レジスタ53を変更 して、単一の文字をスタック62を介して出力64へ送出することができる。こ の文字は、RAM51内へゼロ・プレフィクス・コードとともにストアされるこ とになる。アドレス・カウンタ60を適切にインクリメントして、前述した単一 の文字のストリングで初期化された実施形態とのこれらの差異を調節することが できる。 上述した実施形態は、ソフトウェア、ファームウェア、ロジック(logic、「論 理回路」)、ハードウェア等あるいはこれらの組み合わせの形で実現することが できる。 本発明をその好適実施形態について説明してきたが、使用された用語は説明の ための用語であって、限定するための用語ではないこと、および、添付した請求 の範囲内での変更が、本発明の真の範囲と精神のより広い態様において可能であ ること、が理解されるべきである。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,DE, DK,ES,FR,GB,GR,IE,IT,LU,M C,NL,PT,SE),OA(BF,BJ,CF,CG ,CI,CM,GA,GN,ML,MR,NE,SN, TD,TG),AP(KE,LS,MW,SD,SZ,U G),AM,AT,AU,BB,BG,BR,BY,C A,CH,CN,CZ,DE,DK,EE,ES,FI ,GB,GE,HU,IS,JP,KE,KG,KP, KR,KZ,LK,LR,LT,LU,LV,MD,M G,MN,MW,MX,NO,NZ,PL,PT,RO ,RU,SD,SE,SG,SI,SK,TJ,TM, TT,UA,UG,UZ,VN

Claims (1)

  1. 【特許請求の範囲】 1.データ文字信号の入力ストリームを圧縮されたコード信号のストリームに圧 縮し、前記データ文字信号は[A]個の文字を含むデータ文字信号のアルファベ ットに属するデータ圧縮方法であって、 (a)複数のロケーションを有し、データ文字信号のストリングをストアする 連想メモリを利用するステップであって、各ロケーションはプレフィクス・コー ド・フィールドおよび文字フィールドを有し、各ロケーションはそれに関連付け られたアドレスを有し、該アドレスはストアされたストリングに対する圧縮され たコード信号を提供するステップと、 (b)前記メモリの[A]個のロケーションのプレフィクス・コード・フィー ルドをヌルにすることによって前記メモリを初期化して前記アルファベットの[ A]個の単一文字ストリングを含むようにし、および前記アルファベットのデー タ文字信号を前記[A]個のロケーションの文字フィールドにそれぞれ挿入する ステップと、 (c)コード・フィールドおよび文字フィールドを有するレジスタを利用する ステップと、 (d)前記レジスタの前記コード・フィールドをヌルにし、および入力データ 文字を前記レジスタの前記文字フィールドに挿入するステップと、 (e)前記レジスタの内容を前記メモリのロケーションの内容と連想的に比較 してそのマッチを決定するステップと、 (f)当該マッチが決定された場合は、当該マッチされたロケーションに対応 付けられたアドレスを前記レジスタの前記コード・フィールドに挿入し、および 、前記入力ストリームの次のデータ文字を前記レジスタの前記文字フィールドに 挿入するステップと、 (g)ステップ(e)および(f)をマッチが決定されなくなるまで繰り返し 、それにより前記入力ストリームとマッチする前記メモリ中の最大長のストアさ れたストリングを見付け出すステップと、 (h)ステップ(e)においてマッチが決定されなくなったときに、前記レジ スタのコード・フィールドの内容を圧縮されたコード信号として提供し、それに より前記最大長マッチのストアされたストリングの圧縮されたコード信号を提供 するステップと、 (i)前記レジスタの前記コード・フィールドおよび前記文字フィールドの内 容を、それぞれ、前記メモリ内の次に空のロケーシヨンのプレフィクス・コード ・フィールドおよび文字フィールドへ書き込み、それにより前記入力ストリーム 中の次に続くデータ文字信号により拡張された前記最大長マッチのストアされた ストリングを有する拡張ストリングを前記メモリに挿入し、前記次に空のロケー ションのアドレスにより前記メモリに挿入された前記拡張されたストリングに対 する圧縮コード信号を提供するステップと、 (j)前記レジスタの前記コード・フィールドをヌルにするステップと、 (k)圧縮に供されるデータ文字信号の入力ストリームがなくなるまでステッ プ(e)から(j)を繰り返すステップと を具えたことを特徴とするデータ圧縮方法。 2.請求項1に記載の方法であって、前記メモリの順次の空のロケーションにア クセスするための順次のアドレスを割り当ててステップ(i)の前記次に空のロ ケーションを提供し、前記順次のアドレスは[A]+1よりはじまるステップを さらに具えたことを特徴とする方法。 3.請求項1に記載の方法であって、 前記初期化ステップは、 前記[A]個のロケーションを除く前記メモリのロケーションの文字フ ィールドに、前記アルファベットのデータ文字信号のうちのひとつとして認識さ れない任意のビット・パターンを挿入するステップ をさらに具えたことを特徴とする方法。 4.請求項1に記載の方法であって、前記圧縮コード信号の前記ストリームを復 元して当該圧縮コード信号に対応する入力データ文字信号の前記ストリームを復 元するデータ復元方法をさらに具え、以下のステップ(o)から(y)は復元サ イクルを具え、前記データ復元方法は、 (l)データ文字信号のストリングをストアする複数のロケーションを有する 復元メモリを利用するステップであって、各ロケーションはプレフィクス・コー ド・フィールドおよび文字フィールドを有し、各ロケーションはそれに関連付け られたアドレスを有し、該アドレスは前記復元メモリにストアされたストリング に対する圧縮コード信号を提供するステップと、 (m)前記復元メモリの[A]個のロケーションのプレフィクス・コード・フ ィールドをヌルにすることによって前記復元メモリを初期化して前記アルファベ ットの[A]個の単一文字ストリングを含むようにし、および前記アルファベッ トのデータ文字信号を前記[A]個のロケーションの文字フィールドにそれぞれ 挿入するステップと、 (n)前記復元メモリの前記ロケーションにアクセスするためのアドレス・レ ジスタを利用するステップと、 (o)圧縮コード信号を入力コード・レジスタに受信するステップと、 (p)前記入力コード・レジスタの内容を前記アドレス・レジスタに転送する ステップと、 (q)現在の復元サイクルに先立つ復元サイクルにおいて受信した圧縮コード 信号を保持する前コード・レジスタを利用するステップと、 (r)前記アドレス・レジスタの内容に対応する、前記復元メモリのロケーシ ョンにアクセスするステップと、 (s)アクセスされたロケーションの文字フィールドの内容をスタックに挿入 して、アクセスされたロケーションの文字フィールドにおけるデータ文字信号を 前記スタックに挿入するステップと、 (t)アクセスされたロケーションのプレフィクス・コード・フィールドの内 容を前記アドレス・レジスタに挿入するステップと、 (u)前記アドレス・レジスタの内容がヌルになるまで、ステップ(r)から (t)までを繰返して、受信した圧縮コード信号に対応するデータ文字信号を前 記スタックに挿入するステップと、 (v)次に空のロケーションのアドレスを前記アドレス・レジスタに挿入する ステップと、 (w)前記アドレス・レジスタによってアクセスされた前記復元メモリのロケ ーションのそれぞれのプレフィクス・コード・フィールドおよび文字フィールド に更新プレフィクス・コードおよび更新文字を書き込み、前記前コード・レジス タにより更新プレフィクス・コードを供給し、前記スタックに挿入された最後の データ文字信号により更新文字を供給し、それにより前記連想メモリに挿入され た拡張ストリングに対応する拡張ストリングを前記復元メモリに挿入し、前記次 に空のロケーションのアドレスにより、前記復元メモリに挿入された前記拡張ス トリングに対する圧縮コード信号を提供するステップと、 (x)前記スタックの内容を出力して、受信した圧縮コード信号に対応するデ ータ文字信号のストリングを復元するステップと、 (y)前記入力コード・レジスタに受信された圧縮コード信号を前記前コード ・レジスタに転送するステップと、 (z)復元に供される圧縮コード信号のストリームがなくなるまでステップ( o)から(y)を繰り返すステップと を具えたことを特徴とする方法。 5.請求項4に記載の方法であって、前記復元メモリの順次の空のロケーション にアクセスするための順次のアドレスを割り当てて、ステップ(v)の前記次に 空のロケーションを提供し、前記順次の空のロケーション[A]+1よりはじま ることを特徴とする方法。 6.請求項4に記載の方法であって、前記出力するステップは、データ文字信号 が前記スタックに挿入された順序とは逆の順序で前記スタックからデータ文字信 号を出力するステップを具えたことを特徴とする方法。 7.請求項4に記載の方法であって、前記データ復元方法は、受信した圧縮コー ド信号が前記復元メモリにストアされている対応するストリングをもたず、それ により受信した圧縮コード信号は認識されないときに呼び出される例外処理方法 を有し、該例外処理方法は、 前記更新文字により拡張された前記前コード・レジスタにおける圧縮コード信 号に対応するストリングを有する例外拡張ストリングを生成するステップと、 前記例外拡張ストリングを出力して、前記認識されていない圧縮コード信号に 対応するストリングを出力するステップと、 前記例外拡張ストリングを前記復元メモリにストアし、前記認識されていない 圧縮コード信号により前記ストアされている例外拡張ストリングに対応する圧縮 コード信号を提供するステップとを具えたことを特徴とする方法。 8.請求項7に記載の方法であって、前記例外処理方法は、 前記更新文字を前記スタックに挿入するステップと、 前記前コード・レジスタの内容を前記アドレス・レジスタに転送するステップ と、 ステップ(r)から(x)を実行し、それにより前記例外拡張ストリングを生 成し、前記例外拡張ストリングを出力し、前記例外拡張ストリングに対する前記 認識されていない圧縮コード信号を提供するステップ(v)のアドレスで前記復 元メモリに前記例外拡張ストリングをストアするステップと、 ステップ(y)を以て前記復元方法を継続するステップと を具えたことを特徴とする方法。 9.請求項8に記載の方法であって、 ステップ(e)から(j)は圧縮サイクルを有し、および 前記圧縮方法は、先の圧縮サイクルを実行するのに続いて現在の圧縮サイクル を実行することを含み、現在の圧縮サイクルにおける前記圧縮方法により、先の 圧縮サイクルのステップ(i)において前記連想メモリに挿入された拡張ストリ ングの圧縮コード信号を提供するときに、前記圧縮方法によって前記認識されて いない圧縮コード信号を提供することを特徴とする方法。 10.請求項8に記載の方法であって、 前記復元メモリの順次の空のロケーションにアクセスするための順次のアドレ スを割り当てるアドレス・カウンタを利用して、ステップ(v)の前記次に空の ロケーションのアドレスを提供し、前記順次の空のロケーションは[A]+1よ りはじまるステップと、 前記入力コード・レジスタにおける受信した圧縮コード信号と前記アドレス・ カウンタの内容との間の比較に応じて前記例外処理方法を呼び出すステップと をさらに具えたことを特徴とする方法。 11.データ文字信号の入力ストリームを圧縮されたコード信号のストリームに 圧縮し、前記データ文字信号は[A]個の文字を含むデータ文字信号のアルファ ベットに属するデータ圧縮装置であって、 (a)複数のロケーションを有し、データ文字信号のストリングをストアする 連想メモリであって、各ロケーションはプレフィクス・コード・フィールドおよ び文字フィールドを有し、各ロケーションはそれに関連付けられたアドレスを有 し、該アドレスはストアされたストリングに対する圧縮されたコード信号を提供 する連想メモリと、 (b)前記メモリの[A]個のロケーションのプレフィクス・コード・フィー ルドをヌルにすることによって前記メモリを初期化して前記アルファベットの[ A]個の単一文字ストリングを含むようにし、および前記アルファベットのデー タ文字信号を前記[A]個のロケーションの文字フィールドにそれぞれ挿入する 手段と、 (c)コード・フィールドおよび文字フィールドを有するレジスタと、 (d)前記レジスタの前記コード・フィールドをヌルにし、および入力データ 文字を前記レジスタの前記文字フィールドに挿入する手段と、 (e)前記メモリおよび前記メモリを作動させる前記レジスタに結合され、前 記レジスタの内容を前記メモリのロケーションの内容と連想的に比較してそのマ ッチを決定する制御手段と、 (f)前記制御手段は、当該マッチが決定された場合は、当該マッチされたロ ケーションに関連付けられたアドレスを前記レジスタの前記コード・フィールド に挿入し、および、前記入力ストリームの次のデータ文字を前記レジスタの前記 文字フィールドに挿入するように動作することと、 (g)前記制御手段は、ステップ(e)および(f)を、マッチが決定されな くなるまで繰り返すように動作し、それにより前記入力ストリームとマッチする 前記メモリ中の最大長のストアされたストリングを見付け出すことと、 (h)前記制御手段は、ステップ(e)においてマッチが決定されなくなった ときに、前記レジスタのコード・フィールドの内容を圧縮されたコード信号とし て提供し、それにより前記最大長マッチのストアされたストリングの圧縮された コード信号を提供するように動作することと、 (i)前記制御手段は、前記レジスタの前記コード・フィールドおよび前記文 字フィールドの内容を、それぞれ、前記メモリ内の次に空のロケーションのプレ フィクス・コード・フィールドおよび文字フィールドヘ書き込み、それにより前 記入力ストリーム中の次に続くデータ文字信号により拡張された前記最大長マッ チのストアされたストリングを有する拡張ストリングを前記メモリに挿入し、前 記次に空のロケーションのアドレスにより前記メモリに挿入された前記拡張され たストリングに対する圧縮コード信号を提供するようにさらに動作することと、 (j)前記レジスタの前記コード・フィールドをヌルにする手段と、 (k)前記制御手段は、圧縮に供されるデータ文字信号の入力ストリームがな くなるまでステップ(e)から(j)を繰り返すように動作することと を具えたことを特徴とするデータ圧縮装置。 12.請求項11に記載の装置であって、前記メモリの順次の空のロケーション にアクセスするための順次のアドレスを割り当てて(i)の前記次に空のロケー ションを提供し、前記順次のアドレスは[A]+1よりはじまるアドレス・カウ ンタをさらに具えたことを特徴とする装置。 13.請求項11に記載の装置であって、 前記初期化手段は、 前記[A]個のロケーションを除く前記メモリのロケーションの文字フ ィールドに、前記アルファベットのデータ文字信号のうちのひとつとして認識さ れない任意のビット・パターンを挿入する手段 をさらに具えたことを特徴とする装置。 14.請求項11に記載の装置であって、前記圧縮コード信号の前記ストリーム を復元して当該圧縮コード信号に対応する入力データ文字信号の前記ストリーム を復元するデータ復元装置をさらに具え、(o)から(y)は復元サイクルを規 定し、前記データ復元装置は、 (l)データ文字信号のストリングをストアする複数のロケーションを有する 復元メモリであって、各ロケーションはプレフィクス・コード・フィールドおよ び文字フィールドを有し、各ロケーションはそれに関連付けられたアドレスを有 し、該アドレスは前記復元メモリにストアされたストリングに対する圧縮コード 信号を提供する復元メモリと、 (m)前記復元メモリの[A]個のロケーションのプレフィクス・コード・フ ィールドをヌルにすることによって前記復元メモリを初期化して前記アルファベ ットの[A]個の単一文字ストリングを含むようにし、および前記アルファベッ トのデータ文字信号を前記[A]個のロケーションの文字フィールドにそれぞれ 挿入する手段と、 (n)前記復元メモリの前記ロケーションにアクセスするためのアドレス・レ ジスタと、 (o)圧縮コード信号を受信する入力コード・レジスタと、 (p)前記入力コード・レジスタの内容を前記アドレス・レジスタに転送する 手段と、 (q)現在の復元サイクルに先立つ復元サイクルにおいて受信した圧縮コード 信号を保持する前コード・レジスタと、 (r)スタックと、 (s)前記復元メモリ、前記アドレス・レジスタ、前記入力コード・レジス タ、前記前コード・レジスタおよび前記スタックに結合され、前記復元メモリが 、前記アドレス・レジスタの内容に対応する、前記復元メモリのロケーションに アクセスするように動作する復元制御手段と、 (t)前記復元制御手段によって、アクセスされたロケーションの文字フィー ルドの内容をスタックに挿入して、アクセスされたロケーションの文字フィール ドにおけるデータ文字信号を前記スタックに挿入することと、 (u)前記復元制御手段によって、アクセスされたロケーションのプレフィク ス・コード・フィールドの内容を前記アドレス・レジスタに挿入することと、 (v)前記復元制御手段によって、前記アドレス・レジスタの内容がヌルにな るまで、ステップ(s)から(u)までを繰返して、受信した圧縮コード信号に 対応するデータ文字信号を前記スタックに挿入することと、 (w)前記復元制御手段によって、次に空のロケーションのアドレスを前記ア ドレス・レジスタに挿入し、および前記アドレス・レジスタによってアクセスさ れた前記復元メモリのロケーションのそれぞれのプレフィクス・コード・フィー ルドおよび文字フィールドに更新プレフィクス・コードおよび更新文字を書き込 み、前記前コード・レジスタにより更新プレフィクス・コードを供給し、前記ス タックに挿入された最後のデータ文字信号により更新文字を供給し、それにより 前記連想メモリに挿入された拡張ストリングに対応する拡張ストリングを前記復 元メモリに挿入し、前記次に空のロケーションのアドレスにより、前記復元メモ リに挿入された前記拡張ストリングに対する圧縮コード信号を提供するようにさ らに動作することと、 (x)前記復元制御手段によって、前記スタックの内容を出力して、受信した 圧縮コード信号に対応するデータ文字信号のストリングを復元するようにさらに 動作することと、 (y)前記復元制御手段によって、前記入力コード・レジスタに受信された圧 縮コード信号を前記前コード・レジスタに転送するようにさらに動作することと 、 (z)前記復元制御手段によって、復元に供される圧縮コード信号のストリー ムがなくなるまでステップ(o)から(y)を繰り返すように動作することと を具えたことを特徴とする装置。 15.請求項14に記載の装置であって、前記復元メモリの順次の空のロケーシ ョンにアクセスするための順次のアドレスを割り当てて、前記次に空のロケーシ ョンを提供し、前記順次の空のロケーション[A]+1よりはじまるアドレス・ カウンタをさらに具えたことを特徴とする装置。 16.請求項14に記載の装置であって、前記復元制御手段は、データ文字信号 が前記スタックに挿入された順序とは逆の順序で前記スタックからデータ文字信 号を出力するようにさらに動作するようにしたことを特徴とする装置。 17.請求項14に記載の装置であって、前記復元制御手段は、受信した圧縮コ ード信号が前記復元メモリにストアされている対応するストリングをもたず、そ れにより受信した圧縮コード信号は認識されないときに呼び出される例外処理モ ードにおいて、前記復元装置を動作させるように動作し、前記復元制御手段は前 記例外処理モードにおいて、 前記更新文字により拡張された前記前コード・レジスタにおける圧縮コード信 号に対応するストリングを有する例外拡張ストリングを生成し、 前記例外拡張ストリングを出力して、前記認識されていない圧縮コード信号に 対応するストリングを出力し、および 前記例外拡張ストリングを前記復元メモリにストアし、前記認識されていない 圧縮コード信号により前記ストアされている例外拡張ストリングに対応する圧縮 コード信号を提供するように動作するようにしたことを特徴とする装置。 18.請求項17に記載の装置であって、前記復元制御手段は、前記例外処理モ ードにおいて、 前記更新文字を前記スタックに挿入し、 前記前コード・レジスタの内容を前記アドレス・レジスタに転送し、 (s)から(x)までを実行し、それにより前記例外拡張ストリングを生成 し、前記例外拡張ストリングを出力し、および前記例外拡張ストリングに対する 前記認識されていない圧縮コード信号を提供する(w)のアドレスで前記復元メ モリに前記例外拡張ストリングをストアし、 (y)を以て前記復元方法を継続するように動作するようにしたことを特徴と する装置。 19.請求項18に記載の装置であって、 (e)から(j)によって圧縮サイクルを規定し、前記圧縮装置によって、先 の圧縮サイクルを実行するのに続いて現在の圧縮サイクルを実行し、現在の圧縮 サイクルにおける圧縮装置により、先の圧縮サイクルの(i)において前記連想 メモリに挿入された拡張ストリングの圧縮コード信号を提供するときに、前記圧 縮装置によって前記認識されていない圧縮コード信号を提供することを特徴とす る装置。 20.請求項18に記載の装置であって、 前記復元メモリの順次の空のロケーションにアクセスするための順次のアドレ スを割り当てるアドレス・カウンタであって、(w)の前記次に空のロケーショ ンのアドレスを提供し、前記順次の空のロケーションは[A]+1よりはじまる アドレス・カウンタと、 前記入力コード・レジスタにおいて受信された圧縮コード信号を、前記アドレ ス・カウンタの内容と比較する手段と、 前記入力コード・レジスタにおける受信した圧縮コード信号と前記アドレス・ カウンタの内容との間の比較に応じて前記例外処理モードを呼び出すように動作 することと をさらに具えたことを特徴とする装置。
JP8521063A 1994-12-29 1995-12-18 連想メモリを使用するlzwデータ圧縮 Expired - Fee Related JP3016868B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US366,356 1994-12-29
US08/366,356 1994-12-29
US08/366,356 US5642112A (en) 1994-12-29 1994-12-29 Method and apparatus for performing LZW data compression utilizing an associative memory
PCT/US1995/016615 WO1996021283A1 (en) 1994-12-29 1995-12-18 Lzw data compression using an associative memory

Publications (2)

Publication Number Publication Date
JPH10508170A true JPH10508170A (ja) 1998-08-04
JP3016868B2 JP3016868B2 (ja) 2000-03-06

Family

ID=23442676

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8521063A Expired - Fee Related JP3016868B2 (ja) 1994-12-29 1995-12-18 連想メモリを使用するlzwデータ圧縮

Country Status (14)

Country Link
US (2) US5642112A (ja)
EP (1) EP0800726B1 (ja)
JP (1) JP3016868B2 (ja)
KR (1) KR100292105B1 (ja)
CN (1) CN1110904C (ja)
AT (1) ATE178442T1 (ja)
AU (1) AU702620B2 (ja)
DE (1) DE69508796T2 (ja)
DK (1) DK0800726T3 (ja)
ES (1) ES2130696T3 (ja)
FI (1) FI972779A0 (ja)
GR (1) GR3030107T3 (ja)
RU (1) RU2159989C2 (ja)
WO (1) WO1996021283A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003510881A (ja) * 1999-09-21 2003-03-18 ユニシス コーポレーション データを展開するのに要する時間を短縮するための方法と装置

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6002718A (en) * 1995-10-27 1999-12-14 Hewlett-Packard Company Method and apparatus for generating runlength-limited coding with DC control
US6191711B1 (en) * 1999-02-25 2001-02-20 Nortel Networks Ltd. Binary data compression/decompression apparatus and method of operation for use with modem connections
US6320523B1 (en) * 1999-07-30 2001-11-20 Unisys Corporation Method and apparatus for reducing the time required for compressing data
US6728426B1 (en) 1999-08-23 2004-04-27 International Business Machines Corporation Compression of form images in gray-level
US6522784B1 (en) 2000-04-11 2003-02-18 International Business Machines Corporation Enhanced compression of gray-level images
US6348881B1 (en) 2000-08-29 2002-02-19 Philips Electronics No. America Corp. Efficient hardware implementation of a compression algorithm
US6426711B1 (en) * 2001-05-14 2002-07-30 Unisys Corporation Character table implemented data compression method and apparatus
US20030088537A1 (en) * 2001-08-08 2003-05-08 Nec Eluminant Technologies, Inc. High speed data compression and decompression apparatus and method
US6653950B2 (en) * 2001-09-13 2003-11-25 Unisys Corporation Data compression method and apparatus utilizing cascaded subdictionaries
US7185041B1 (en) 2001-10-05 2007-02-27 Unisys Corporation Circuit and method for high-speed execution of modulo division
US6466144B1 (en) * 2001-11-30 2002-10-15 Unisys Corporation Data decompressor for use with a data compressor implemented with limited length character tables and compact string codes
US6614368B1 (en) * 2002-01-16 2003-09-02 Unisys Corporation Data compression method and apparatus utilizing cascaded character tables
US6628211B1 (en) * 2002-03-19 2003-09-30 Unisys Corporation Prefix table implemented data compression method and apparatus
US6624762B1 (en) 2002-04-11 2003-09-23 Unisys Corporation Hardware-based, LZW data compression co-processor
US7136960B2 (en) * 2002-06-14 2006-11-14 Integrated Device Technology, Inc. Hardware hashing of an input of a content addressable memory (CAM) to emulate a wider CAM
DE10310858A1 (de) * 2003-03-11 2004-09-23 Bergische Universität Wuppertal Verfahren und Vorrichtung zur Kompression einer Zeichenkette
US7664173B2 (en) * 2004-06-07 2010-02-16 Nahava Inc. Method and apparatus for cached adaptive transforms for compressing data streams, computing similarity, and recognizing patterns
RU2004113857A (ru) * 2004-07-19 2005-12-20 Николай Михайлович Алексеев (RU) Способ сжатия информации, представленной в электронной форме
US7256715B1 (en) * 2005-01-07 2007-08-14 Altera Corporation Data compression using dummy codes
KR101100570B1 (ko) * 2006-11-17 2011-12-29 콸콤 인코포레이티드 내용 주소화 메모리
US8438558B1 (en) 2009-03-27 2013-05-07 Google Inc. System and method of updating programs and data
CN101572552B (zh) * 2009-06-11 2012-07-18 哈尔滨工业大学 基于内容可寻址存储器的高速无损数据压缩系统
US8427347B1 (en) 2011-03-30 2013-04-23 Altera Corporation Dynamic data compression and decompression
EP2843842A1 (en) * 2013-09-03 2015-03-04 Compact AG Method and system for LZW based decompression
US11169717B2 (en) * 2018-12-28 2021-11-09 Micron Technology, Inc. Unauthorized access command logging using a key for a protected region of memory

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5151697A (en) * 1990-10-15 1992-09-29 Board Of Regents Of The University Of Washington Data structure management tagging system
US5373290A (en) * 1991-09-25 1994-12-13 Hewlett-Packard Corporation Apparatus and method for managing multiple dictionaries in content addressable memory based data compression
US5339076A (en) * 1992-04-27 1994-08-16 Integrated Information Technology Data compression using content addressable memory
US5485526A (en) * 1992-06-02 1996-01-16 Hewlett-Packard Corporation Memory circuit for lossless data compression/decompression dictionary storage
US5469161A (en) * 1992-08-13 1995-11-21 International Business Machines Corporation Algorithm for the implementation of Ziv-Lempel data compression using content addressable memory
US5455576A (en) * 1992-12-23 1995-10-03 Hewlett Packard Corporation Apparatus and methods for Lempel Ziv data compression with improved management of multiple dictionaries in content addressable memory
US5369605A (en) * 1993-07-07 1994-11-29 Dell Usa, L.P. Incremental search content addressable memory for increased data compression efficiency
US5532693A (en) * 1994-06-13 1996-07-02 Advanced Hardware Architectures Adaptive data compression system with systolic string matching logic

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003510881A (ja) * 1999-09-21 2003-03-18 ユニシス コーポレーション データを展開するのに要する時間を短縮するための方法と装置

Also Published As

Publication number Publication date
WO1996021283A1 (en) 1996-07-11
US5642112A (en) 1997-06-24
CN1110904C (zh) 2003-06-04
CN1171868A (zh) 1998-01-28
RU2159989C2 (ru) 2000-11-27
DK0800726T3 (da) 1999-10-11
DE69508796D1 (de) 1999-05-06
JP3016868B2 (ja) 2000-03-06
GR3030107T3 (en) 1999-07-30
AU702620B2 (en) 1999-02-25
DE69508796T2 (de) 1999-08-19
FI972779A (fi) 1997-06-27
KR980701157A (ko) 1998-04-30
KR100292105B1 (ko) 2001-06-01
EP0800726A1 (en) 1997-10-15
FI972779A0 (fi) 1997-06-27
AU4525996A (en) 1996-07-24
EP0800726B1 (en) 1999-03-31
MX9704896A (es) 1997-10-31
US5838264A (en) 1998-11-17
ES2130696T3 (es) 1999-07-01
ATE178442T1 (de) 1999-04-15

Similar Documents

Publication Publication Date Title
JPH10508170A (ja) 連想メモリを使用するlzwデータ圧縮
US5485526A (en) Memory circuit for lossless data compression/decompression dictionary storage
EP0129439B1 (en) High speed data compression and decompression apparatus and method
JP3342700B2 (ja) ストリングリバーサル機構を具備した単一クロックサイクルデータ圧縮装置/圧縮解除装置
KR100332709B1 (ko) 스트링 검색이 포함되어 있는 즉각적인 사전 갱신을 갖춘 데이터
CN111294053B (zh) 硬件友好的数据压缩方法、系统及装置
JP3141002B2 (ja) 符号化方法及びデータ圧縮器
WO1993006661A1 (en) Fast data compressor with direct lookup table indexing into history buffer
JPH0869370A (ja) データ圧縮方法およびシステム
JPH07273667A (ja) 連想記憶メモリ内の複数辞書管理を改良したlempel−zivデータ圧縮のための装置、及び方法
US6404362B1 (en) Method and apparatus for reducing the time required for decompressing compressed data
JP4156381B2 (ja) 文字テーブルによって実施されるデータ圧縮の方法および装置
JP2003521140A (ja) データの圧縮に必要な時間を短縮するための方法および装置
US5406280A (en) Data retrieval system using compression scheme especially for serial data stream
JP3242795B2 (ja) データ処理装置及びデータ処理方法
CA2208049C (en) Method and apparatus for performing lzw data compression utilizing an associative memory
JPH0546357A (ja) テキストデータの圧縮方法および復元方法
JP3130324B2 (ja) データ圧縮方式
JP3171510B2 (ja) 辞書ベースのメモリ内のデータを圧縮および圧縮解除する方法
US6653949B1 (en) Data compression apparatus and method utilizing tandem coupled matrices
JP4380052B2 (ja) スライド辞書の故障検出方法及び故障検出装置
US20030102988A1 (en) Data compression method and apparatus utilizing cascaded subdictionaries
MXPA97004896A (en) Method and device for completing data lzw using an asociat memory
US6788226B1 (en) Data compressor with string code reassignment utilizing switched input coincidence elements
JPH06242923A (ja) データ圧縮処理装置およびデータ伸張処理装置

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081224

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091224

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091224

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101224

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111224

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees