JPH03186923A - データ圧縮システム - Google Patents
データ圧縮システムInfo
- Publication number
- JPH03186923A JPH03186923A JP29998590A JP29998590A JPH03186923A JP H03186923 A JPH03186923 A JP H03186923A JP 29998590 A JP29998590 A JP 29998590A JP 29998590 A JP29998590 A JP 29998590A JP H03186923 A JPH03186923 A JP H03186923A
- Authority
- JP
- Japan
- Prior art keywords
- data
- compaction
- encoder
- statistical
- decoder
- 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
Links
- 230000009467 reduction Effects 0.000 title claims description 15
- 238000000034 method Methods 0.000 claims description 111
- 230000008569 process Effects 0.000 claims description 99
- 238000005056 compaction Methods 0.000 claims description 84
- 238000007906 compression Methods 0.000 claims description 22
- 238000004904 shortening Methods 0.000 claims description 22
- 230000006835 compression Effects 0.000 claims description 20
- 230000006837 decompression Effects 0.000 claims description 4
- 238000012545 processing Methods 0.000 abstract description 29
- 239000013256 coordination polymer Substances 0.000 abstract description 28
- 238000012546 transfer Methods 0.000 description 9
- 230000003044 adaptive effect Effects 0.000 description 7
- 239000000872 buffer Substances 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000015654 memory Effects 0.000 description 5
- 238000013144 data compression Methods 0.000 description 3
- 230000009977 dual effect Effects 0.000 description 3
- 239000003607 modifier Substances 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 101100243951 Caenorhabditis elegans pie-1 gene Proteins 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 244000309464 bull Species 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/42—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Multi Processors (AREA)
- Image Processing (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
A、産業上の利用分野
本発明は一般に条件付き2進ソースの算術圧縮コーディ
ング、特にスルーブツトを増すための算術圧縮システム
のフォーマツ[・互換性に関する。 B、従来の技術 所要のスループット・データ速度を維持するために、多
くの場合、複数の並列短縮システムを必要とする。短縮
装置の符号器及び復号器の各々はそれに向けられたデー
タを既知の最大時間内に処理せねばならない。短縮は複
数の並列装置により実行されるから、スルーブツト・デ
ータ速度は最も遅い装置により制限される。 それゆえ、本発明の目的は既知の最大時間内にデータを
コード化し復号することができるデータ短縮システムを
提供することである。 各短縮装置は複数のデータ・セットを処理し、各符号器
から得られた修飾子情報はデータ・セットの全域で保持
されねばならない。データ・セットの順序も該処理を通
じて同しに維持されねばならない。 修飾子データは算術コーディング・システムの統計的な
表から得られる。復号の場合、各復号器から得られた修
飾子情報もデータ・セットの全域で保持されねばならな
い。標準的な方法は、特定のフォーマットが所与のデー
タ速度で得られるように1つの短縮装置に1つの統計表
を包含させることにより、修飾子保持問題を解決するこ
とである。そして、並列に設置されている圧縮装置の数
によりスループット・データ速度が決定される。各圧縮
装置はデータの一部を処理するから、圧縮装置の数が大
きければ大きいほどデータ速度は早くなる。それゆえ、
所要のスルーブツトにより並列短縮装置の数が決まる。 各符号器の統計的な表の学習曲線は後にデータを処理す
る、即ち圧縮するから、短縮装置の数は圧縮されたデー
タのフォーマットを決定する。以前は、より多くの短縮
装置が統計表に加えられ、その結果、データ・フォーマ
ットが変更された。以前にコード化された媒体はもはや
確実には復号できなかった。もし、後で、より高速のデ
ータ速度が要求されれば、より多くの短縮装置を用いる
新しいフォーマットが設定される。より多くの並列接続
短縮装置が供給する新しいフォーマットは前のフォーマ
ットでコード化されたデータの復号を妨げる。その逆も
成立つ。 従って、本発明前は、データ速度の増加により、前のシ
ステムと改良されたシステムの間の上方及び下方の互換
性は排除された。 ゆえに、本発明のもう1つの目的は全システムについて
同じフォーマットを保持しつつ更に高速のデータ速度を
取得できるデータ短縮システムを提供することである。 降走技東卯五I 下記の参照文献は異なる状況の2進算術コーデイング・
プロセスを示す。 Arithmetic Codin 、 G、 G、
Langdon、 Jrl、 et al。 IBM Journal Re5earch and
Development、 Volume23、 Nu
mber 2. March、 1979. Page
149−1.62゜Method for Carr
−0ver Control in a FIFOA
rithmetic Code 5trin 、IBM
TechnicalDisclosure Bull
etin、 Volume 23. Number ]
、June。 1.980. Pages 310−31.2゜D
elockin Method for Us
e with an Ada tiveAr+
thmet+c Encoder Decoder
、 IBM TecbnicalDisclosu
re Bulletin、Volume 23.
Number 6,1980゜Pages 25
28−2529゜ UniversalModelinandCodin。 TEEE Transaction on Tn
formationIT−27,Number 1.
Ja、nuary、1981゜5tatistics
Co11ection for ComJ、J、
R+5sanen。 Theory、 Volume Pages 12−23、 ress+on Codinp TechnicaI Number ]、0゜ with Rando+n1zin featur
e、 IBMDisclosure Bullet
in、Volume 24゜March、 1,98
2. Page 49]7゜A Sim le
General Binar 5ource
Code、 G、G。 Langdon、 Jrl、 et al、、
IEEE Transaction onInform
ation Theory、Volume IT−
28,Number 5゜September、
1982.Pages 800−803、Contr
ol Character In5ertion
int。 Arithmetcall Encoded 5
trin s。 IBM Technical Di、5closure Bulletin、 V
olume 25.Number 4Septem
ber、 1982. Pages 2051−
2052゜0 A Double−Ada tive File
Com ression Al orlth
m。 G、G、 Langdon、Jr、、 et al
、、IEEE Transactions onCo
mmunications、Volume C0M−3
1,Number ]1.。 November、 1983.Pages 12
53−5゜An Introduction to
Arithmetic Codin 、G、G。 Langdon、Jr、、IBM Journal
Re5earcl+ andDevelopment、
Volume 2B、 Number 2.
March、 1,984゜Pages 135−
149゜ 0verla ad 5tat】st】cs M
emor Access for勇狙更すress
ion、 IBM Technical Disc
losureBulletin、 Volume 2
7. Number IB、 June、 19
84゜Pages 87]−872゜ 11nited 5tates Patent 4,4
67.317.旧gh 5peedArjthPAet
ic Compression Coding Usi
ng ConcurrentValue Updati
ng、 G、G、 Langdon、 Jr、、
et al。 C1発明が解決しようとする課題 異なるスループット速度を持つシステムの間の短縮プロ
セスのフォーマット互換性に関する本発明は前記参照文
献のどれにも開示されていない。 本発明の目的は既知の最大時間内にデータをコー11 ド化し復号することができるデータ短縮システムを提供
することである。 本発明のもう1つの目的は全システムについて同じフォ
ーマットを保持しつつ更に高速のデータ速度を取得でき
るデータ短縮システムを提供することである。 本発明のもう1つの目的は異なるスループット速度を用
いる短縮プロセスでフォーマット互換性が維持される高
機能の2進算術コード化プロセスを提供することである
。 本発明のもう1つの目的はコード化及び復号プロセスの
」二方及び下方フォーマット互換性を可能にする改良さ
れた短縮方式を提供することである。 本発明のもう1つの目的は増大したスルーブツト速度及
び標準的なスループット速度のどちらでコード化された
媒体も復号できる上方及び下方フォーマット互換性を提
供すると同時に今日のレコード処理システムが要求する
より高い速度でデータを圧縮し処理するためにデータに
固有のスループット速度に適応できる短縮プロセッサを
提供することである。 本発明のもう1つの目的は並列短縮装置の付加により増
大したスループット速度を持つ短縮システムに予測可能
スルーブツト速度及びフォーマット互換性を提供すると
同時に複数の並列短縮システムを利用し且つデータ・ス
トリームに適応可能な圧縮方式を提供することである。 01課題を解決するための手段 本発明のデータ短縮システムは最初にデータ・ストリー
ムを等しいサイズの管理可能なエンティティ、即ちデー
タ・セットに分割する。次に、これらのデータ・セット
の各々は圧縮するためにデマルチプレクサを介して複数
の符号器に分配される。符号器の各々は複数の統計表を
含み、所要のハードウェアを減らし且つより高いスルー
ブツト構成に拡張すると同時に、装置の付加によりスル
ープットが増大した2進算術符号器とのフォーマット互
換性を可能にする。短縮されたデータ・セットは再びマ
ルチプレクサで順序付けられる。 該データを復号するため該短縮されたセットはデマルチ
プレクサに送られ、短縮されたデータ・セラ13 1・の各々を複数の復号器の1つに分配する。復号器の
各々は複数の統計表も含み、複数の復号器の増大したス
ルーブツトとのフォーマット互換性を可能にしつつ、同
様に所要のハードウェアを減らし、より高いスルーブツ
ト構成に拡張するとともに、低いスルーブツト構成に対
する下方互換性を与える。短縮解除されたデータ・セッ
トはマルチプレクサにより再び順序付けられ、最初のフ
ォーマットになるようにアセンブルし直される。 このように、本発明に従って多重短縮プロセッサを用い
てフォーマット互換性を維持しつつ所望のブタ速度を保
持することができる。各短縮プロセッサにより並列処理
するためにデータは先ず等しいサイズのデータ・セット
に分割される。n個の短縮プロセッサの各短縮プロセッ
サはm統計表(ST)を含む。データ・セットの数はq
であり、iはセットの番号、即ち0.1.2 、、、
、(1−1である。セットiは統計表5TJにを用いて
短縮プロセッサCPjにより処理される。j及びkは下
式により決定される: 4 j −i 王ジュー1In k= (i/n)(ジューpm 各CPにM STを持つN CPシステムの場合、Nよ
りも小さい数のDPシステムの可能な構成は:m 2M n ≦ N により規定される。M、N、m及びnは全てOよりも大
きい整数である。nはN CPシステムで最大の中から
使用されるCPの数であり、mは各CPで最大Mの中か
ら使用されるSTの数である。 本発明のもう1つの目的はコード化及び復号プロセスの
上方及び下方フォーマット互換性を可能にする改良され
た短縮方式を提供することである。 本発明はレコードを管理可能なエンティティ即ちセット
に分割し、拡張又は短縮することができる短縮システム
により該データを処理し、該データ・ストリームを所望
の最大可変データ速度で処理する。 連続するデータ転送で用いる符号器及び復号器の数は転
送されるデータの速度によって決まり、連続する符号器
及び復号器の各々はそれぞれ短縮及び短縮解除を並列に
処理する。使用される符号器及び復号器の数は所要の最
大データ速度により増減できる。 符号器と復号器の数及びそれぞれが含む統計表の数を適
切に選択することにより、データ・フォーマットの互換
性が維持される。 本発明のもう1つの目的は増大したスループット速度及
び標準的なスループット速度のどちらでコード化された
媒体も復号できる上方及び下方フォーマット互換性を提
供すると同時に今日のレコード処理システムが要求する
より高い速度でデータを圧縮し処理するためにデータに
固有のスループット速度に適応できる短縮プロセッサを
提供することである。 適応圧縮は相互に排他的な2つのモード:少なくとも2
つの同じバイトが現われると必ず同じ文字のランを除去
するラン・モード、及びそれ自身の統計によりデータ・
バイトを直列化し各バイトをコード化するバイト・モー
ドのうちの1つで実行される。 両モードの結果は統計表で統計を集めるために使用され
る。統計はバイト内のビットのパターンを確立するため
に集められ、前の経験に基づいて次のピッ1・を予測す
る確率として記憶される。適応圧縮プロセスは、適応デ
ータ統計を用いて、コード・ストリングから最初のデー
タが回復されるようにデータ・ビットのストリングをコ
ード・ストリングに写像する。圧縮の量は正確なビット
予測に正比例する。 本発明のもう1つの目的は並列短縮装置の付加により増
大したスルーブツト速度を持つ短縮システムに予測可能
スループット速度及びフォーマット互換性を提供すると
同時に複数の並列短縮システムを利用し且つデータ・ス
トリームに適応可能な圧縮方式を提供することである。 本発明のもう1つのアプリケーションは可変長ストリン
グの入力記号を固定長コードに変換するレンペル・ジブ
(Lempel−Ziv)プロセスに関する。このプロ
セスは圧縮及び圧縮解除プロセスの間に空の記号ストリ
ングの表、即ち辞書で開始し、該表を構築する適応圧縮
プロセスである。このようなシステムのスループットは
複数の符号器及び復号器を用いて高めることができる。 レンペル・ジブ・プロセスのより完全な説明は下記の論
文を参照されたい:17 A Universal Al orithm
for Se uential DataCOm
reSSiOn”、 J、Ziv、 et al、
、IEEE Transactionson Info
rmation Theory、 Vol、IT−3
,May 1977゜pages 337−343゜ ’Com ression of Indivi
dual Se uences viaVaria
ble−Rate Codin 、J、Zjv、et
al、、IEEETransactions on
Information Theory、Vol、
IT−24゜No、5.September 197
8.pa、ge 5306゜開m要 磁気テープ駆動機構で用いる算術2進圧縮コーディング
装置間のフォーマット互換性は、たとえ異なる数の圧縮
装置/圧縮解除装置がより高いスルーブツトをシステム
を通じて取得を要求されても保持することができる。装
置の各々はそれに送られるデータを既知の最大時間で処
理せねばならない。短縮装置の各々は短縮装置毎に選択
された数の統計表を含む。各々が2つの統計表を持つこ
とができる8つの短縮プロセッサが選択される。従って
、フォーマット互換性はそれぞれに2つの統計表を持つ
4つの短縮プロセッサを用いて保持し、又は符号器/復
号器8 の各々に1つの統計表を持つ8つの短縮プロセッサを用
いてスループットを2倍にすることができる。 各々の速度短縮を用いて磁気テープ上に短縮されたデー
タは各々のテープ駆動機構を用いて復号することができ
、互換性は保証される。 E、実施例 本発明は磁気テープ・システム、特にIBM 3490
磁気テープ装置における使用が望ましい。ゆえに、木明
細書に記載された最良のモードは磁気テープ・システム
に関するものであるが、本発明はどんな記憶装置、通信
、即ち伝送システムにも適応できる、即ちデータ処理シ
ステムのどの部分にも利用される。 該データ処理システムによりデータのストリームは例え
ば記憶のために短縮され、後にその利用のために検索さ
れ短縮解除される。 本発明は情報処理された大抵のタイプのデータを短縮し
て十分に小さいデータ・ブロックにする効率的な方法を
カバーする。本発明により提供される手順はIBM 3
4.80磁気テープ装置の最新のハードウェアに付加で
きる。その結果、システムは本発明による=19 利点を提供すると同時に必要なときにホスト・データ処
理システムのユーザとデータを交換し続けながら本発明
による利点を提供する。 第1図の複数の並列に接続された短縮プロセッサ(CP
)1〜4(参照番号17)で示す短縮装置は、拡張フォ
ーマットが選択されている時、チャネル書込み動作中に
データを短縮し、チャネル読取り動作中にデータを短縮
解除する。データ短縮は2進算術短縮(BAC)プログ
ラムの変更版を用いて実行される。該プログラムは論文
:An Introduction to Arith
metic廁戯躯、 by GICnn G、Lang
don、Jr、、TBM Journal ofRes
earch and Development、 Vo
lume 28. Number 2゜March 1
984に説明されている。各短縮プロセッサによりデー
タは1..25 Mb/s の速度でコード化される
。 並列に付加された各短縮プロセッサは追加の1.25M
b/sコード化速度を可能にする、従ってデータ処理速
度は増大する。追加の各短縮プロセッサは短縮システム
全体の統計フォーマットに影響する。本発明により、短
縮プロセスのスループットが短縮プロセッサの付加によ
って増大できると同時に現在の設計が当該増大を受入れ
る方法が示される。短縮プロセッサの数の増加は、例え
ば本実施例とのフォーマット互換性を保持しつつ、後で
詳細に説明するように統計的な表を本実施例に付加する
ことにより適応させることができる。 第1図に示すように、複数のチャネル・アダプタ(CA
)1.2は、短縮装置16に配置された複数の短縮プロ
セッサ17を介して利用装置、例えばテープ記録媒体に
接続される。短縮プロセッサ17の各々はフォーマット
化されていないデータをAバス2oを介してチャネル・
アダプタ12がら受取る。その詳細は後で説明する。短
縮プロセッサ17は送られたデータのストリームを同一
サイズのブロック、即ちデータのセットに分割する。そ
して個々のデータ・セットは短縮プロセッサ17の各々
にある個々の符号器に送られ、個々のセットは異なる符
号器で順次に圧縮される。そして短縮されたデータ・セ
ットは再びアセンブルされフォーマット化されてテープ
媒体、即ち第1図に示す利用装置に書込まれる。 第1図では、複数のチャネル・アダプタ12を相1 互接続して利用装置とインタフェースさせる標準的な読
取り及び書込み、この場合、記録テープ媒体から及び該
媒体への読取り及び書込みフォーマット制御の流れに複
数の短縮プロセッサ17が挿入される。 並列接続された短縮プロセッサ17とインタフェースさ
せるために、ホスト処理装置からのデータ・ストリーム
が複数のチャネル・アダプタ12のなかの1つに送付さ
れる。チャネル・アダプタ・コマンド・セット、拡張フ
ォーマットはデータ・ストリームをCA 12のインタ
フェースを介してAバス20及びライン21に沿って複
数の短縮プロセッサ17に転送するように指図する。A
バス20からのデータ・ストリームは短縮プロセッサ1
7の全てに送られ、短縮プロセッサへのデータの受取り
及び短縮プロセッサからのデータの分配を制御するのは
A−mout信号である。その手順は第2図及び第3図
で詳細に説明する。短縮プロセッサ17はフォーマット
化されていないデータを活動状態のCA 32から受取
る。短縮装置16として示されたタンデム装置のような
短縮プロセッサ17はフォーマット化されていないデー
2 タをデータ・ストリームから分離して同一サイズのブロ
ック即ちデータ・セットにする。次に個々のデータ・セ
ットは各短縮プロセッサ] ’7に送られ、各々のセッ
トは順次にコード化され短縮される。処理されたデータ
・セットはテープ媒体、利用装置に書込む前にフォーマ
ット化するために、それらの最初のシーケンスになるよ
うに再アセンブルされ、Bバスに送られる。第2図は2
つの処理装置の概要図及びそれらの相互接続を示す。 第2図で、短縮プロセッサ毎にデータストリームがAバ
ス20から入出力制御部に送られる。第2図には短縮プ
ロセッサCPI及びCF2だけが示されている。第2図
で、データ・ストリームはI10制御部A−]及びI1
0制御部A−2に送られる。例えば、I10制御部A−
]はCPIに送られるデータ・セットを決定する。A−
moot信号は、ある特定の期間にどのI10制御部が
活動状態であるかを判定する。各処理装置、例えばCP
Iは回転式デマルチプレクサ/マルチプレクサ装置25
(DMX/MX A−1)のセクションも含む。 回転式デマルチプレクサ/マルチプレクサ装置253 及び処理装置CP2の回転式デマルチプレクサ/マルチ
プレクサ装置処理装置29 (DMX/MX A−2)
を接続する破線及び斜線の部分27は、短縮プロセッサ
の各々への1つのデータ・セットの転送を効率的に制御
する1つの回転式デマルチプレクサ及びマルチプレクサ
装置を形成するために、全ての処理装置のハトウェアが
相互接続されることを示す。CPIは符号器36及び復
号器38も含む。符号器36の出力及び復号器38の入
力はもう1つの回転式マルチプレクサ/デマルチプレク
サ37 (MX/DMX B−1)、即ち符号器36の
再順序化ハードウェア、及び復号器38の分離ハードウ
ェアに接続される。CPlの回転式マルチプレクサ/デ
マルチプレクサ37のような、回転式MX/DMX装置
の全ての相互接続は、破線及び斜線部分39で示すよう
に、そのマルチプレクサ/デマルチプレクサ機能を実行
するように作用する。よって、第1図に示すように並列
に動作する短縮プロセッサ17は各処理装置の上部即ち
Aセクションの入出力制御部、回転式デマルチプレクサ
及びマルチプレクサ、並びに各短縮プロセッサ17の下
部即ち 4 Bセクションの入出力制御部、回転式デマルチプレクサ
及びマルチプレクサを含む。 Aパスからのデータ・ストリームは各短縮プロセッサ1
7の各I10制御部に送られる。A−mout信号はど
の短縮プロセッサがデータ・ストリームからそのデータ
・セットを取得すべきかを指示する。回転式デマルチプ
レクサ及びマルチプレクサはその短縮プロセッサ内の符
号器及び復号器に該データ・セットを分配する。例えば
、初期設定では、CPIは第1のデータ・セット(良好
な実施例では512バイト)を取得し、そして/l−m
out信号が活動化されCF2は第2のデータ・セット
を取得する。CF3は次のデータ・セットを取得し、次
いでCF2はそのデータ・セットを取得する。そして、
次のデータ・セットはCPIに転送されシーケンスを続
行する。第1図及び第2図の短縮プロセッサに含まれた
実際のハードウェアは第3図に示す。 第3図に示すように、各々の短縮プロセッサ17特にC
PIは事象カウンタ132、インタフェース制御部13
4及び記憶装置136を含む。これらの装5 置はCPIの上部即ちAセクションに特有のものである
。CPIの下部即ちBセクションも事象カウンタ138
、記憶装置140及びインタフェース制御部142を含
む。CPIは符号器114、復号器124及び速度整合
バッファ144も含む。事象バッファ、例えば132お
よび138は上部及び下部のインタフェースのため処理
装置の各々で使用され、それぞれのデータ・セットの、
処理装置への分割及び処理装置からの合併を制御し検査
する。符号器114は2つの統計表113及び115を
含み、復号器124も2つの統計表123及び125を
含む。 第3図では、CPlは初期化プロセス又は前の処理装置
、即ちCF2からの制御の移動により活動化されると仮
定する。前述のように、A−mout信号は1つのCP
装置から次のCP装置に制御を移動する。書込みサイク
ルでは、即ちホストからのデータ・ストリームが短縮さ
れてテープ媒体に書込まれるときは、データ・ストリー
ムは短縮プロセッサのAセクションにある全ての記憶装
置に送られる。記憶装置136は1つのデータ・セット
即ち512バイトを受取った6 ことを事象カウンタ132に知らせる。そして事象カウ
ンタ132はCPIがそのデータのセクション即ちlデ
ータ・セットを受取ったので次のデータ・セットはCF
2が受取るべきことをインタフェース制御部134に知
らせる。書込みサイクルでは、データ・セットは第3図
に示す実線を通じて送られる。第3図に示す種々のライ
ンのコードには、異なる短縮プロセッサのハードウェア
を制御する制御ラインを示す単線の実線146、書込み
データの流れ(WDF)を表わす複線の実線148があ
る。破線の複線コード150による信号転送はCPIに
よる読取りデータの流れ(RDF)を示す。 データ・セットはそれを短縮するために記憶装置136
から符号器114に送付される。符号器114は統計表
11−3及び115を用いてデータ・セットを短縮する
。短縮プロセスの終了後、符号器114は短縮されたデ
ータ・セットを速度整合バッファ144及び記憶装置1
40に送付する。速度整合バッファ144に送付された
、短縮されたデータは符号器114の出力と復号器12
4の出力を整合させるように記憶される。短縮されたば
かりのデータは短縮解除のため速度整合バッファ14.
4から復号器124に送付される。復号器124は短縮
解除されたデータを検査のため記憶装置136に返送す
る。 短縮されたデータは記憶装置14.0に転送され、事象
カウンタ138及びインタフェース制御部142による
制御を待ち、短縮されたデータ・セットがテープ媒体へ
の転送のためにBバスに乗せることができることを知ら
せる。 読取リサイクル、即ちテープ媒体からデータを検索する
データ検索サイクルでは、短縮されたデータ・セットは
テープ媒体から受取り記憶装置140に送付する。短縮
されたデータ情報のビットは短縮されたデータ・セット
全体を受取るまで記憶装置]40内に記憶される。短縮
されたデータ・セット全体を受取った時点で、短縮され
たデータ・セットを分離する区切信号は事象カウンタ]
38を活動化し、事象カウンタ]38はインタフェース
制御部142を活動化してB−mout信号ラインで制
御を次の処理装置、CF2に移動する。CF2はその短
縮プロセス内で8 使用するためにそのデータ・セットを受取る。RDF信
号経路に従って、記憶された短縮データ・セットは復号
器124に転送され、復号器124で該データ・セット
は短縮解除され、記憶装置]36が512バイトのデー
タ・セットを受取ったことを合図するまでライン141
で記憶装置]36に送付され、記憶される。そして制御
はインタフェース制御部134に移され、記憶装置13
Gが該データ・セットをAバス20でチャネル・アダプ
タ12に転送できるようにする。短縮解除されたデータ
が転送された後、事象カウンタ132はA−mout信
号ラインを介して制御をCF2に移すようにインタフェ
ース制御部■34に合図する。この動作により、次のデ
ータ・セットはCF2の記憶装置AからAバスに、そし
テ最終的にはチャネル・アダプタに転送できる。短縮プ
ロセッサ1〜4の制御及びシーケンス動作のより完全な
説明は米国特許出願第441127号(1,989年1
年月1月2出w4)明細書を参照されたい。 テープ媒体システムにおけるデータの処理の詳細な説明
は米国特許第4435762号に記載されている。 9 単一の短縮プロセッサは、データ・ストリームを短縮し
且つ圧縮されていないデータの所与のデータ速度を維持
するには、速さが十分ではない。本発明による速度の増
加はデータ圧縮装置の数の増加とおおよそ比例する。媒
体に書込まれたデータも、圧縮に用いたのと同じ装置数
を用いて同じように高速で短縮解除される。512バイ
ト・ブロックのデータ・セットの各々は別々の短縮プロ
セッサで個々に圧縮される。このように、第1のデータ
・セットは短縮プロセッサ1に、第2のデータ・セット
は短縮プロセッサ2に送られ、以下同様に、第4のデー
タ・セットが短縮プロセッサ4で圧縮されるまで続く。 第5のデータ・セットはCPlに戻る。 第3図には、2進算術コードにより2進情報を復号する
際に次のビットに関して最後のビット値に基づいた統計
表のアクセスを必要とするタイム・クリティカル帰還経
路がある。もし回避されなければ、この問題は各ビット
の復号に必要なサイクル・タイムを減速させる。隣接す
る位置から1よりも多くの統計を読出し且つ正しい統計
表を選択する先読み手0 法は、連続するビット毎に異なるレベルのトリーのアク
セス及び同時に2つのレベルの可能な統計の読出しと組
合わされる。後で説明するコード化方式のプロセス流れ
図は第4図に示す。 データを短縮するだめの2進算術コード・プログラムは
圧縮を威し遂げるために2進統計を必要とする。これは
コード化又は復号されたピッ1へ毎に統計を取出すこと
を必要とする。統計は線形化されたトリーに記憶される
。ビットのコード化はコード化される8ビツト毎に一度
だけ各トリー・レベルのアクセスを必要とする。8ビツ
ト・ザイクルでは統計は一度使用されると再び使用され
ることはないから、事前取出し、即ちスキューのアクセ
スとビットのコド化又は復号をオーバラップさせる先読
みが用いられる。統計表(El、) 11.3が第1即
ちモジューロ0のデータ・セットを処理している間に、
統計表(E2)115は圧縮装置に送られたモジューロ
8のパケットのうちのモジューロ4のデータのパケット
を処理する。 第3図は復号器124の2つの統計表123及び■ 125も示す。統計表123及び125は、符号器11
4に統計表113及び115が接続されるのと同じよう
に、復号器]24に接続される。符号器及び復号器の統
計表の全てのランダム・アクセス・メモリは、本発明の
良好な実施例に符号器及び復号器が実際に4つずつある
とき、8つの符号器及び復号器がオンラインであるよう
に見える。符号器及び復号器毎の統計表の二重化は、各
々が1つの統計表を持つ8つの符号器及び復号器による
フォーマット互換性を成し遂げる。8つの符号器及び復
号器は、第1図に示す4つの符号器及び復号器のスルー
プットを2倍にし、同時に符号器及び復号器毎に1つの
統計表の使用は、本発明の実施例の4つの符号器及び復
号器並びにその各々の2つの統計表によるフォーマット
互換性を可能にする。 このように、本発明に従って、複数の短縮プロセッサを
用いて所望のデータ速度を保持し、しかもフォーマツ[
・互換性も維持することができる。データは最初、各短
縮プロセッサにより並列処理するために等しいサイズの
データ・セットに分割される。各短縮プロセッサはn短
縮プロセッサに対しm統計表(ST)を含む。データ・
セットの数はqに等しく、1はセット番号、即ち、0,
1,2. 、、、、q−1である。セットiは統計表S
T Jにを用いて短縮プロセッサCP jにより処理さ
れる。この場合: j = i モジコー11n k = (ilo) モジューロ mである。 各CPでM STを持つN CPについては、データ処
理システムにおける数Nよりも少ないCPの可能な構成
は: m −阿 n=N により規定される。M、 N、 m及びnは全て0より
も大きい整数である。nはN CPシステムにおける最
大数の中から使用されたCPの数であり、mは最大数C
Pの中から使用されたSTの数である。 図示の良好な実施例では、Nは8 CPに等しく、には
CP毎の2 STに等しい。可能な構成はnが4に等し
く、mが2に等しい場合である。スループ3 ットの増加は8 CPを使用し、各CPがl STを用
いる場合、即ちnが8に等しく mが1に等しい場合に
可能である。8 CP、即ちNが8に等しい場合のもう
1つの可能性はHが8に等しく、可能な構成は: n=8.m=1 n=4.m=2 n=2.m=4 n=1.m=8 である。 8 CPの場合で、Nが4に等しい時の可能な構成は: n=8.m=1 n−4m=ln −4l、m=4 である。 従って、全てのスルーブツト速度の増加を通じてフォー
マット互換性を維持しつつ、現在要求されているスルー
プット速度及び後に所望されるスループット速度を選択
することによるデータ・スループッ4 トの増加を通じてフォーマット互換性を維持することが
できる。より高いスループット速度、及びより低いスル
ープット速度の短縮のト方及び上方互換性は保証される
。 適応短縮は2つの相互に排他的なモードの1つで符号器
にあるバイト毎に実行される。第1のモードは]以上の
反復が検出されたとき同じ文字の順次反復を圧縮するラ
ン・モードである。これらはラン・モード・シーケンス
をセットすることにより識別される。 第2のモードは集積された統計により個々のバイトをコ
ード化するバイト・モードである。このパイ1〜・モー
ドは前の2つのバイトが異なる時、即ちバイト・モード
が非反復を表わした後に用いられる。 このモードはラン文字が該文字に等しいときに識別され
る。両モードの結果は、どの統計表が当該時点で活動化
されるかにより該統計表からの統計を集積するために使
用される。コード化プログラムはデータ・バイト毎の統
計に適応する。ラン・モード処理では、統計はバイト反
復の見込みに基づいている。 バイト・モード処理では、最初、各バイトの各ビットは
確率が等しいものと仮定する。統計はビット単位で更新
され、統計表の2進トリー構造に記憶される。統計は入
力データ・ストリングの各レコードを受取る前にリセッ
トされる。従って、各レコードは独立して処理される。 第4図に関連して後で説明するように、該プログラムは
データ圧縮を最大化するのにどのモードが有効かを動的
に決定する。正確な原データがコード・ストリングから
回復されるように、プログラムは適応データ統計を用い
てデータ・ビットのストリングをコード・ストリングに
写像する。圧縮される量は連続するバイト反復の数及び
一般的なバイト値の数の多さに正比例する。符号器及び
復号器は、該システムの最大データ速度を満たすのに必
要な並列短縮プロセッサの最大数として選択できる、同
数の統計表を用いる。第4図〜第15図による短縮処理
は前述の論文Arithmetic Codin及びA
n Introductionto Arithmet
ic Codin ’mびに米国特許第44.673
17号明細書に詳細に記載されている。これらの出版物
及R− び米国特許明細書は符号器及び復号器毎に1つの統計表
が使用される本発明によるコード化及び復号プロセスを
ずっと詳細に説明している。 第4図の短縮コード化プロセスの流れ図では、2つの前
のバイトが同じ時のラン・モード・シーケンスである。 バイト・モードはラン・モードが見っがらない時に使わ
れるモードである。ラン・モードは1以上の反復が検出
されると同じ文字の順次反復を圧縮する。ラン・モード
が見つからない時、即ちバイト・モードが開始されると
、個々のバイトは集積された統計によりコード化され、
前の2バイトが異なる、即ちラン・モードが見つからな
いとき、又はラン・モードが非反復を表示してから使用
される。 モードの結果はどちらも統計を集積するために使用され
る。コード化プロセスはバイト毎の統計に適応する。ラ
ン・モード処理の場合、統計はバイト反復の見込みに基
づいている。ビット・モード即ち非ラン・モードの場合
、最初に各バイトの各ビットは同じ確率であると仮定す
る。統計はビット単位で更新され且つ2進トリー・デー
タ構造で記憶される。統7 計は3ビツト・フィールドのフォーマットをとり、1ビ
ツトはどのビット値がより見込みがあるかを表わし、他
の2ビツトは値1〜4を持つ数である。前記値は最も見
込みのあるビット値を生じる相対的な確率を示し、値1
は同じ見込みの値を表わし、値4は最も見込みのある値
を表わす。ホストから受取った各々の論理的なブロック
の始まりで統計はリセットされるので、論理的なブロッ
クはそれぞれ独立して処理される。該プロセスはデータ
圧縮を最大化するためにどのモードが有効かを動的に決
定する。該プロセスは、適応データ統計を用いて、デー
タ・ビットのストリングをコード・ストリングに写像し
、正確な原データがコード・ストリングから回復できる
ようにする。圧縮される量は連続するバイト反復の数及
び一般的なバイト値の数の多さに正比例する。 第4図の流れ図はデータ・セットのコード化プロセス全
体を示す。前述のように、データ・セットは最後のセッ
ト(データ・ストリームからデータ・セットに分離され
た後の残りのバイト)以外は512バイトである。デー
タ・セット毎に、符号器は既知8 の状態に初期化される。統計表はデータ・セット毎には
初期化されず、むしろチャネル・レコード毎に初期化さ
れるだけである。ラン文字レジスタは初期化される。ラ
ン・モード・レジスタは各データ・セットの始まりでリ
セットされる。該セットの中から各々のバイトが取出さ
れ、文字レジスタにロードされる。もしラン・モードが
セットされれば、ラン文字レジスタと文字レジスタが比
較される。もしそれらが等しければ、第6図に示す反復
事象コード化が実行される。さもなければ、第7図に示
す非反復事象コード化が実行され且つ第5図に示す文字
コード化プロセスが実行される。もしラン・モードがセ
ットされなかったならば、文字コード化プロセスは直ち
に開始される。 該セットのバイトはラン・モードでコード化されている
から、ラン・モードは決定されている。ラン文字レジス
タと文字レジスタが比較され、もしそれらが等しtプれ
ば、ラン・モードがセットされる。さもなければ、ラン
・モードはリセットされ、ラン文字レジスタは次のラン
・モード事象の文字・レジス夕情報にセットされる。 該データ・セットの全てのバイトが処理されるまで該プ
ロセスは反復される。非反復事象コード化はラン・モー
ドで処理しているデータ・セットを終了させるために実
行される。ラン・モードがセットされてもリセットされ
ても、符号器内の符号レジスタの内容は符号の一部とし
てシフI・アウトされる。 第4図の流れ図はブロック200で初期化、即ちプログ
ラムを開始する異なるレジスタをリセットすることによ
り始まる。次のブロック204では、データ・セラ]・
から次のバイトを取得し、それを文字レジスタに入れる
。判定ブロック20Bはラン・モード・シーケンスがセ
ットされているかどうかを判定する。もしセットされて
いなければ、゛ノー“のライン208からブロック21
0に進み、このバイトをコード化する。次にブロック2
12で、該文字は前の文字と同じかどうかを検査する。 もし同じでなければ、ブロック214で、ラン・モード
をリセ・ントシ、且つラン文字レジスタを文字レジス、
夕に等しくなるようにセットする。プロセスは続行し、
次の0 バイトを取得するためにブロック204に戻る。判定ブ
ロック206で、もしラン・モードがセットされていれ
ば、”イエス”のラインから次の判定ブロック220に
進み、ラン文字レジスタの情報が文字レジスタの情報と
同じがどうかを検査する。もし同じならば、イエス・ラ
イン222からブロック224に進み、反復された事象
をコード化する。そして、ブロック212に該文字が最
後の文字に等しいがどうかを検査する。もし等しければ
、ブロック2」8で、ラン・モードがセットされ、次の
データを取得するためにシーケンスの始めに戻る。ラン
・モード・シーケンスは、前のバイトが同じであり且つ
符号器が2進算術コード化プロセスに従ってこの類似の
データを短縮する場合に用いられる。判定ブロック22
0で、もしこのバイトの文字が同じでないならば、ノー
・ラインからブロック226に進み、非反復事象がコー
ド化され、ブロック2]0で文字がコード化される。ラ
ン文字レジスタは文字レジスタに等しくないから、判定
ブロック212からノー・ラインを経由してブロック2
14に進み、ラン・モー1 ドをリセットする。ラン・モード文字はセットされてい
ないから、プロセスは各バイトを検査する同じモードで
継続する。この時点では、それはビット・モードであり
、バイトの各ビットは、このバイトの非類似ビットを短
縮するように処理される。プロセスはコード化されるデ
ータ・セットにある全てのバイ]・を検査し続
ング、特にスルーブツトを増すための算術圧縮システム
のフォーマツ[・互換性に関する。 B、従来の技術 所要のスループット・データ速度を維持するために、多
くの場合、複数の並列短縮システムを必要とする。短縮
装置の符号器及び復号器の各々はそれに向けられたデー
タを既知の最大時間内に処理せねばならない。短縮は複
数の並列装置により実行されるから、スルーブツト・デ
ータ速度は最も遅い装置により制限される。 それゆえ、本発明の目的は既知の最大時間内にデータを
コード化し復号することができるデータ短縮システムを
提供することである。 各短縮装置は複数のデータ・セットを処理し、各符号器
から得られた修飾子情報はデータ・セットの全域で保持
されねばならない。データ・セットの順序も該処理を通
じて同しに維持されねばならない。 修飾子データは算術コーディング・システムの統計的な
表から得られる。復号の場合、各復号器から得られた修
飾子情報もデータ・セットの全域で保持されねばならな
い。標準的な方法は、特定のフォーマットが所与のデー
タ速度で得られるように1つの短縮装置に1つの統計表
を包含させることにより、修飾子保持問題を解決するこ
とである。そして、並列に設置されている圧縮装置の数
によりスループット・データ速度が決定される。各圧縮
装置はデータの一部を処理するから、圧縮装置の数が大
きければ大きいほどデータ速度は早くなる。それゆえ、
所要のスルーブツトにより並列短縮装置の数が決まる。 各符号器の統計的な表の学習曲線は後にデータを処理す
る、即ち圧縮するから、短縮装置の数は圧縮されたデー
タのフォーマットを決定する。以前は、より多くの短縮
装置が統計表に加えられ、その結果、データ・フォーマ
ットが変更された。以前にコード化された媒体はもはや
確実には復号できなかった。もし、後で、より高速のデ
ータ速度が要求されれば、より多くの短縮装置を用いる
新しいフォーマットが設定される。より多くの並列接続
短縮装置が供給する新しいフォーマットは前のフォーマ
ットでコード化されたデータの復号を妨げる。その逆も
成立つ。 従って、本発明前は、データ速度の増加により、前のシ
ステムと改良されたシステムの間の上方及び下方の互換
性は排除された。 ゆえに、本発明のもう1つの目的は全システムについて
同じフォーマットを保持しつつ更に高速のデータ速度を
取得できるデータ短縮システムを提供することである。 降走技東卯五I 下記の参照文献は異なる状況の2進算術コーデイング・
プロセスを示す。 Arithmetic Codin 、 G、 G、
Langdon、 Jrl、 et al。 IBM Journal Re5earch and
Development、 Volume23、 Nu
mber 2. March、 1979. Page
149−1.62゜Method for Carr
−0ver Control in a FIFOA
rithmetic Code 5trin 、IBM
TechnicalDisclosure Bull
etin、 Volume 23. Number ]
、June。 1.980. Pages 310−31.2゜D
elockin Method for Us
e with an Ada tiveAr+
thmet+c Encoder Decoder
、 IBM TecbnicalDisclosu
re Bulletin、Volume 23.
Number 6,1980゜Pages 25
28−2529゜ UniversalModelinandCodin。 TEEE Transaction on Tn
formationIT−27,Number 1.
Ja、nuary、1981゜5tatistics
Co11ection for ComJ、J、
R+5sanen。 Theory、 Volume Pages 12−23、 ress+on Codinp TechnicaI Number ]、0゜ with Rando+n1zin featur
e、 IBMDisclosure Bullet
in、Volume 24゜March、 1,98
2. Page 49]7゜A Sim le
General Binar 5ource
Code、 G、G。 Langdon、 Jrl、 et al、、
IEEE Transaction onInform
ation Theory、Volume IT−
28,Number 5゜September、
1982.Pages 800−803、Contr
ol Character In5ertion
int。 Arithmetcall Encoded 5
trin s。 IBM Technical Di、5closure Bulletin、 V
olume 25.Number 4Septem
ber、 1982. Pages 2051−
2052゜0 A Double−Ada tive File
Com ression Al orlth
m。 G、G、 Langdon、Jr、、 et al
、、IEEE Transactions onCo
mmunications、Volume C0M−3
1,Number ]1.。 November、 1983.Pages 12
53−5゜An Introduction to
Arithmetic Codin 、G、G。 Langdon、Jr、、IBM Journal
Re5earcl+ andDevelopment、
Volume 2B、 Number 2.
March、 1,984゜Pages 135−
149゜ 0verla ad 5tat】st】cs M
emor Access for勇狙更すress
ion、 IBM Technical Disc
losureBulletin、 Volume 2
7. Number IB、 June、 19
84゜Pages 87]−872゜ 11nited 5tates Patent 4,4
67.317.旧gh 5peedArjthPAet
ic Compression Coding Usi
ng ConcurrentValue Updati
ng、 G、G、 Langdon、 Jr、、
et al。 C1発明が解決しようとする課題 異なるスループット速度を持つシステムの間の短縮プロ
セスのフォーマット互換性に関する本発明は前記参照文
献のどれにも開示されていない。 本発明の目的は既知の最大時間内にデータをコー11 ド化し復号することができるデータ短縮システムを提供
することである。 本発明のもう1つの目的は全システムについて同じフォ
ーマットを保持しつつ更に高速のデータ速度を取得でき
るデータ短縮システムを提供することである。 本発明のもう1つの目的は異なるスループット速度を用
いる短縮プロセスでフォーマット互換性が維持される高
機能の2進算術コード化プロセスを提供することである
。 本発明のもう1つの目的はコード化及び復号プロセスの
」二方及び下方フォーマット互換性を可能にする改良さ
れた短縮方式を提供することである。 本発明のもう1つの目的は増大したスルーブツト速度及
び標準的なスループット速度のどちらでコード化された
媒体も復号できる上方及び下方フォーマット互換性を提
供すると同時に今日のレコード処理システムが要求する
より高い速度でデータを圧縮し処理するためにデータに
固有のスループット速度に適応できる短縮プロセッサを
提供することである。 本発明のもう1つの目的は並列短縮装置の付加により増
大したスループット速度を持つ短縮システムに予測可能
スルーブツト速度及びフォーマット互換性を提供すると
同時に複数の並列短縮システムを利用し且つデータ・ス
トリームに適応可能な圧縮方式を提供することである。 01課題を解決するための手段 本発明のデータ短縮システムは最初にデータ・ストリー
ムを等しいサイズの管理可能なエンティティ、即ちデー
タ・セットに分割する。次に、これらのデータ・セット
の各々は圧縮するためにデマルチプレクサを介して複数
の符号器に分配される。符号器の各々は複数の統計表を
含み、所要のハードウェアを減らし且つより高いスルー
ブツト構成に拡張すると同時に、装置の付加によりスル
ープットが増大した2進算術符号器とのフォーマット互
換性を可能にする。短縮されたデータ・セットは再びマ
ルチプレクサで順序付けられる。 該データを復号するため該短縮されたセットはデマルチ
プレクサに送られ、短縮されたデータ・セラ13 1・の各々を複数の復号器の1つに分配する。復号器の
各々は複数の統計表も含み、複数の復号器の増大したス
ルーブツトとのフォーマット互換性を可能にしつつ、同
様に所要のハードウェアを減らし、より高いスルーブツ
ト構成に拡張するとともに、低いスルーブツト構成に対
する下方互換性を与える。短縮解除されたデータ・セッ
トはマルチプレクサにより再び順序付けられ、最初のフ
ォーマットになるようにアセンブルし直される。 このように、本発明に従って多重短縮プロセッサを用い
てフォーマット互換性を維持しつつ所望のブタ速度を保
持することができる。各短縮プロセッサにより並列処理
するためにデータは先ず等しいサイズのデータ・セット
に分割される。n個の短縮プロセッサの各短縮プロセッ
サはm統計表(ST)を含む。データ・セットの数はq
であり、iはセットの番号、即ち0.1.2 、、、
、(1−1である。セットiは統計表5TJにを用いて
短縮プロセッサCPjにより処理される。j及びkは下
式により決定される: 4 j −i 王ジュー1In k= (i/n)(ジューpm 各CPにM STを持つN CPシステムの場合、Nよ
りも小さい数のDPシステムの可能な構成は:m 2M n ≦ N により規定される。M、N、m及びnは全てOよりも大
きい整数である。nはN CPシステムで最大の中から
使用されるCPの数であり、mは各CPで最大Mの中か
ら使用されるSTの数である。 本発明のもう1つの目的はコード化及び復号プロセスの
上方及び下方フォーマット互換性を可能にする改良され
た短縮方式を提供することである。 本発明はレコードを管理可能なエンティティ即ちセット
に分割し、拡張又は短縮することができる短縮システム
により該データを処理し、該データ・ストリームを所望
の最大可変データ速度で処理する。 連続するデータ転送で用いる符号器及び復号器の数は転
送されるデータの速度によって決まり、連続する符号器
及び復号器の各々はそれぞれ短縮及び短縮解除を並列に
処理する。使用される符号器及び復号器の数は所要の最
大データ速度により増減できる。 符号器と復号器の数及びそれぞれが含む統計表の数を適
切に選択することにより、データ・フォーマットの互換
性が維持される。 本発明のもう1つの目的は増大したスループット速度及
び標準的なスループット速度のどちらでコード化された
媒体も復号できる上方及び下方フォーマット互換性を提
供すると同時に今日のレコード処理システムが要求する
より高い速度でデータを圧縮し処理するためにデータに
固有のスループット速度に適応できる短縮プロセッサを
提供することである。 適応圧縮は相互に排他的な2つのモード:少なくとも2
つの同じバイトが現われると必ず同じ文字のランを除去
するラン・モード、及びそれ自身の統計によりデータ・
バイトを直列化し各バイトをコード化するバイト・モー
ドのうちの1つで実行される。 両モードの結果は統計表で統計を集めるために使用され
る。統計はバイト内のビットのパターンを確立するため
に集められ、前の経験に基づいて次のピッ1・を予測す
る確率として記憶される。適応圧縮プロセスは、適応デ
ータ統計を用いて、コード・ストリングから最初のデー
タが回復されるようにデータ・ビットのストリングをコ
ード・ストリングに写像する。圧縮の量は正確なビット
予測に正比例する。 本発明のもう1つの目的は並列短縮装置の付加により増
大したスルーブツト速度を持つ短縮システムに予測可能
スループット速度及びフォーマット互換性を提供すると
同時に複数の並列短縮システムを利用し且つデータ・ス
トリームに適応可能な圧縮方式を提供することである。 本発明のもう1つのアプリケーションは可変長ストリン
グの入力記号を固定長コードに変換するレンペル・ジブ
(Lempel−Ziv)プロセスに関する。このプロ
セスは圧縮及び圧縮解除プロセスの間に空の記号ストリ
ングの表、即ち辞書で開始し、該表を構築する適応圧縮
プロセスである。このようなシステムのスループットは
複数の符号器及び復号器を用いて高めることができる。 レンペル・ジブ・プロセスのより完全な説明は下記の論
文を参照されたい:17 A Universal Al orithm
for Se uential DataCOm
reSSiOn”、 J、Ziv、 et al、
、IEEE Transactionson Info
rmation Theory、 Vol、IT−3
,May 1977゜pages 337−343゜ ’Com ression of Indivi
dual Se uences viaVaria
ble−Rate Codin 、J、Zjv、et
al、、IEEETransactions on
Information Theory、Vol、
IT−24゜No、5.September 197
8.pa、ge 5306゜開m要 磁気テープ駆動機構で用いる算術2進圧縮コーディング
装置間のフォーマット互換性は、たとえ異なる数の圧縮
装置/圧縮解除装置がより高いスルーブツトをシステム
を通じて取得を要求されても保持することができる。装
置の各々はそれに送られるデータを既知の最大時間で処
理せねばならない。短縮装置の各々は短縮装置毎に選択
された数の統計表を含む。各々が2つの統計表を持つこ
とができる8つの短縮プロセッサが選択される。従って
、フォーマット互換性はそれぞれに2つの統計表を持つ
4つの短縮プロセッサを用いて保持し、又は符号器/復
号器8 の各々に1つの統計表を持つ8つの短縮プロセッサを用
いてスループットを2倍にすることができる。 各々の速度短縮を用いて磁気テープ上に短縮されたデー
タは各々のテープ駆動機構を用いて復号することができ
、互換性は保証される。 E、実施例 本発明は磁気テープ・システム、特にIBM 3490
磁気テープ装置における使用が望ましい。ゆえに、木明
細書に記載された最良のモードは磁気テープ・システム
に関するものであるが、本発明はどんな記憶装置、通信
、即ち伝送システムにも適応できる、即ちデータ処理シ
ステムのどの部分にも利用される。 該データ処理システムによりデータのストリームは例え
ば記憶のために短縮され、後にその利用のために検索さ
れ短縮解除される。 本発明は情報処理された大抵のタイプのデータを短縮し
て十分に小さいデータ・ブロックにする効率的な方法を
カバーする。本発明により提供される手順はIBM 3
4.80磁気テープ装置の最新のハードウェアに付加で
きる。その結果、システムは本発明による=19 利点を提供すると同時に必要なときにホスト・データ処
理システムのユーザとデータを交換し続けながら本発明
による利点を提供する。 第1図の複数の並列に接続された短縮プロセッサ(CP
)1〜4(参照番号17)で示す短縮装置は、拡張フォ
ーマットが選択されている時、チャネル書込み動作中に
データを短縮し、チャネル読取り動作中にデータを短縮
解除する。データ短縮は2進算術短縮(BAC)プログ
ラムの変更版を用いて実行される。該プログラムは論文
:An Introduction to Arith
metic廁戯躯、 by GICnn G、Lang
don、Jr、、TBM Journal ofRes
earch and Development、 Vo
lume 28. Number 2゜March 1
984に説明されている。各短縮プロセッサによりデー
タは1..25 Mb/s の速度でコード化される
。 並列に付加された各短縮プロセッサは追加の1.25M
b/sコード化速度を可能にする、従ってデータ処理速
度は増大する。追加の各短縮プロセッサは短縮システム
全体の統計フォーマットに影響する。本発明により、短
縮プロセスのスループットが短縮プロセッサの付加によ
って増大できると同時に現在の設計が当該増大を受入れ
る方法が示される。短縮プロセッサの数の増加は、例え
ば本実施例とのフォーマット互換性を保持しつつ、後で
詳細に説明するように統計的な表を本実施例に付加する
ことにより適応させることができる。 第1図に示すように、複数のチャネル・アダプタ(CA
)1.2は、短縮装置16に配置された複数の短縮プロ
セッサ17を介して利用装置、例えばテープ記録媒体に
接続される。短縮プロセッサ17の各々はフォーマット
化されていないデータをAバス2oを介してチャネル・
アダプタ12がら受取る。その詳細は後で説明する。短
縮プロセッサ17は送られたデータのストリームを同一
サイズのブロック、即ちデータのセットに分割する。そ
して個々のデータ・セットは短縮プロセッサ17の各々
にある個々の符号器に送られ、個々のセットは異なる符
号器で順次に圧縮される。そして短縮されたデータ・セ
ットは再びアセンブルされフォーマット化されてテープ
媒体、即ち第1図に示す利用装置に書込まれる。 第1図では、複数のチャネル・アダプタ12を相1 互接続して利用装置とインタフェースさせる標準的な読
取り及び書込み、この場合、記録テープ媒体から及び該
媒体への読取り及び書込みフォーマット制御の流れに複
数の短縮プロセッサ17が挿入される。 並列接続された短縮プロセッサ17とインタフェースさ
せるために、ホスト処理装置からのデータ・ストリーム
が複数のチャネル・アダプタ12のなかの1つに送付さ
れる。チャネル・アダプタ・コマンド・セット、拡張フ
ォーマットはデータ・ストリームをCA 12のインタ
フェースを介してAバス20及びライン21に沿って複
数の短縮プロセッサ17に転送するように指図する。A
バス20からのデータ・ストリームは短縮プロセッサ1
7の全てに送られ、短縮プロセッサへのデータの受取り
及び短縮プロセッサからのデータの分配を制御するのは
A−mout信号である。その手順は第2図及び第3図
で詳細に説明する。短縮プロセッサ17はフォーマット
化されていないデータを活動状態のCA 32から受取
る。短縮装置16として示されたタンデム装置のような
短縮プロセッサ17はフォーマット化されていないデー
2 タをデータ・ストリームから分離して同一サイズのブロ
ック即ちデータ・セットにする。次に個々のデータ・セ
ットは各短縮プロセッサ] ’7に送られ、各々のセッ
トは順次にコード化され短縮される。処理されたデータ
・セットはテープ媒体、利用装置に書込む前にフォーマ
ット化するために、それらの最初のシーケンスになるよ
うに再アセンブルされ、Bバスに送られる。第2図は2
つの処理装置の概要図及びそれらの相互接続を示す。 第2図で、短縮プロセッサ毎にデータストリームがAバ
ス20から入出力制御部に送られる。第2図には短縮プ
ロセッサCPI及びCF2だけが示されている。第2図
で、データ・ストリームはI10制御部A−]及びI1
0制御部A−2に送られる。例えば、I10制御部A−
]はCPIに送られるデータ・セットを決定する。A−
moot信号は、ある特定の期間にどのI10制御部が
活動状態であるかを判定する。各処理装置、例えばCP
Iは回転式デマルチプレクサ/マルチプレクサ装置25
(DMX/MX A−1)のセクションも含む。 回転式デマルチプレクサ/マルチプレクサ装置253 及び処理装置CP2の回転式デマルチプレクサ/マルチ
プレクサ装置処理装置29 (DMX/MX A−2)
を接続する破線及び斜線の部分27は、短縮プロセッサ
の各々への1つのデータ・セットの転送を効率的に制御
する1つの回転式デマルチプレクサ及びマルチプレクサ
装置を形成するために、全ての処理装置のハトウェアが
相互接続されることを示す。CPIは符号器36及び復
号器38も含む。符号器36の出力及び復号器38の入
力はもう1つの回転式マルチプレクサ/デマルチプレク
サ37 (MX/DMX B−1)、即ち符号器36の
再順序化ハードウェア、及び復号器38の分離ハードウ
ェアに接続される。CPlの回転式マルチプレクサ/デ
マルチプレクサ37のような、回転式MX/DMX装置
の全ての相互接続は、破線及び斜線部分39で示すよう
に、そのマルチプレクサ/デマルチプレクサ機能を実行
するように作用する。よって、第1図に示すように並列
に動作する短縮プロセッサ17は各処理装置の上部即ち
Aセクションの入出力制御部、回転式デマルチプレクサ
及びマルチプレクサ、並びに各短縮プロセッサ17の下
部即ち 4 Bセクションの入出力制御部、回転式デマルチプレクサ
及びマルチプレクサを含む。 Aパスからのデータ・ストリームは各短縮プロセッサ1
7の各I10制御部に送られる。A−mout信号はど
の短縮プロセッサがデータ・ストリームからそのデータ
・セットを取得すべきかを指示する。回転式デマルチプ
レクサ及びマルチプレクサはその短縮プロセッサ内の符
号器及び復号器に該データ・セットを分配する。例えば
、初期設定では、CPIは第1のデータ・セット(良好
な実施例では512バイト)を取得し、そして/l−m
out信号が活動化されCF2は第2のデータ・セット
を取得する。CF3は次のデータ・セットを取得し、次
いでCF2はそのデータ・セットを取得する。そして、
次のデータ・セットはCPIに転送されシーケンスを続
行する。第1図及び第2図の短縮プロセッサに含まれた
実際のハードウェアは第3図に示す。 第3図に示すように、各々の短縮プロセッサ17特にC
PIは事象カウンタ132、インタフェース制御部13
4及び記憶装置136を含む。これらの装5 置はCPIの上部即ちAセクションに特有のものである
。CPIの下部即ちBセクションも事象カウンタ138
、記憶装置140及びインタフェース制御部142を含
む。CPIは符号器114、復号器124及び速度整合
バッファ144も含む。事象バッファ、例えば132お
よび138は上部及び下部のインタフェースのため処理
装置の各々で使用され、それぞれのデータ・セットの、
処理装置への分割及び処理装置からの合併を制御し検査
する。符号器114は2つの統計表113及び115を
含み、復号器124も2つの統計表123及び125を
含む。 第3図では、CPlは初期化プロセス又は前の処理装置
、即ちCF2からの制御の移動により活動化されると仮
定する。前述のように、A−mout信号は1つのCP
装置から次のCP装置に制御を移動する。書込みサイク
ルでは、即ちホストからのデータ・ストリームが短縮さ
れてテープ媒体に書込まれるときは、データ・ストリー
ムは短縮プロセッサのAセクションにある全ての記憶装
置に送られる。記憶装置136は1つのデータ・セット
即ち512バイトを受取った6 ことを事象カウンタ132に知らせる。そして事象カウ
ンタ132はCPIがそのデータのセクション即ちlデ
ータ・セットを受取ったので次のデータ・セットはCF
2が受取るべきことをインタフェース制御部134に知
らせる。書込みサイクルでは、データ・セットは第3図
に示す実線を通じて送られる。第3図に示す種々のライ
ンのコードには、異なる短縮プロセッサのハードウェア
を制御する制御ラインを示す単線の実線146、書込み
データの流れ(WDF)を表わす複線の実線148があ
る。破線の複線コード150による信号転送はCPIに
よる読取りデータの流れ(RDF)を示す。 データ・セットはそれを短縮するために記憶装置136
から符号器114に送付される。符号器114は統計表
11−3及び115を用いてデータ・セットを短縮する
。短縮プロセスの終了後、符号器114は短縮されたデ
ータ・セットを速度整合バッファ144及び記憶装置1
40に送付する。速度整合バッファ144に送付された
、短縮されたデータは符号器114の出力と復号器12
4の出力を整合させるように記憶される。短縮されたば
かりのデータは短縮解除のため速度整合バッファ14.
4から復号器124に送付される。復号器124は短縮
解除されたデータを検査のため記憶装置136に返送す
る。 短縮されたデータは記憶装置14.0に転送され、事象
カウンタ138及びインタフェース制御部142による
制御を待ち、短縮されたデータ・セットがテープ媒体へ
の転送のためにBバスに乗せることができることを知ら
せる。 読取リサイクル、即ちテープ媒体からデータを検索する
データ検索サイクルでは、短縮されたデータ・セットは
テープ媒体から受取り記憶装置140に送付する。短縮
されたデータ情報のビットは短縮されたデータ・セット
全体を受取るまで記憶装置]40内に記憶される。短縮
されたデータ・セット全体を受取った時点で、短縮され
たデータ・セットを分離する区切信号は事象カウンタ]
38を活動化し、事象カウンタ]38はインタフェース
制御部142を活動化してB−mout信号ラインで制
御を次の処理装置、CF2に移動する。CF2はその短
縮プロセス内で8 使用するためにそのデータ・セットを受取る。RDF信
号経路に従って、記憶された短縮データ・セットは復号
器124に転送され、復号器124で該データ・セット
は短縮解除され、記憶装置]36が512バイトのデー
タ・セットを受取ったことを合図するまでライン141
で記憶装置]36に送付され、記憶される。そして制御
はインタフェース制御部134に移され、記憶装置13
Gが該データ・セットをAバス20でチャネル・アダプ
タ12に転送できるようにする。短縮解除されたデータ
が転送された後、事象カウンタ132はA−mout信
号ラインを介して制御をCF2に移すようにインタフェ
ース制御部■34に合図する。この動作により、次のデ
ータ・セットはCF2の記憶装置AからAバスに、そし
テ最終的にはチャネル・アダプタに転送できる。短縮プ
ロセッサ1〜4の制御及びシーケンス動作のより完全な
説明は米国特許出願第441127号(1,989年1
年月1月2出w4)明細書を参照されたい。 テープ媒体システムにおけるデータの処理の詳細な説明
は米国特許第4435762号に記載されている。 9 単一の短縮プロセッサは、データ・ストリームを短縮し
且つ圧縮されていないデータの所与のデータ速度を維持
するには、速さが十分ではない。本発明による速度の増
加はデータ圧縮装置の数の増加とおおよそ比例する。媒
体に書込まれたデータも、圧縮に用いたのと同じ装置数
を用いて同じように高速で短縮解除される。512バイ
ト・ブロックのデータ・セットの各々は別々の短縮プロ
セッサで個々に圧縮される。このように、第1のデータ
・セットは短縮プロセッサ1に、第2のデータ・セット
は短縮プロセッサ2に送られ、以下同様に、第4のデー
タ・セットが短縮プロセッサ4で圧縮されるまで続く。 第5のデータ・セットはCPlに戻る。 第3図には、2進算術コードにより2進情報を復号する
際に次のビットに関して最後のビット値に基づいた統計
表のアクセスを必要とするタイム・クリティカル帰還経
路がある。もし回避されなければ、この問題は各ビット
の復号に必要なサイクル・タイムを減速させる。隣接す
る位置から1よりも多くの統計を読出し且つ正しい統計
表を選択する先読み手0 法は、連続するビット毎に異なるレベルのトリーのアク
セス及び同時に2つのレベルの可能な統計の読出しと組
合わされる。後で説明するコード化方式のプロセス流れ
図は第4図に示す。 データを短縮するだめの2進算術コード・プログラムは
圧縮を威し遂げるために2進統計を必要とする。これは
コード化又は復号されたピッ1へ毎に統計を取出すこと
を必要とする。統計は線形化されたトリーに記憶される
。ビットのコード化はコード化される8ビツト毎に一度
だけ各トリー・レベルのアクセスを必要とする。8ビツ
ト・ザイクルでは統計は一度使用されると再び使用され
ることはないから、事前取出し、即ちスキューのアクセ
スとビットのコド化又は復号をオーバラップさせる先読
みが用いられる。統計表(El、) 11.3が第1即
ちモジューロ0のデータ・セットを処理している間に、
統計表(E2)115は圧縮装置に送られたモジューロ
8のパケットのうちのモジューロ4のデータのパケット
を処理する。 第3図は復号器124の2つの統計表123及び■ 125も示す。統計表123及び125は、符号器11
4に統計表113及び115が接続されるのと同じよう
に、復号器]24に接続される。符号器及び復号器の統
計表の全てのランダム・アクセス・メモリは、本発明の
良好な実施例に符号器及び復号器が実際に4つずつある
とき、8つの符号器及び復号器がオンラインであるよう
に見える。符号器及び復号器毎の統計表の二重化は、各
々が1つの統計表を持つ8つの符号器及び復号器による
フォーマット互換性を成し遂げる。8つの符号器及び復
号器は、第1図に示す4つの符号器及び復号器のスルー
プットを2倍にし、同時に符号器及び復号器毎に1つの
統計表の使用は、本発明の実施例の4つの符号器及び復
号器並びにその各々の2つの統計表によるフォーマット
互換性を可能にする。 このように、本発明に従って、複数の短縮プロセッサを
用いて所望のデータ速度を保持し、しかもフォーマツ[
・互換性も維持することができる。データは最初、各短
縮プロセッサにより並列処理するために等しいサイズの
データ・セットに分割される。各短縮プロセッサはn短
縮プロセッサに対しm統計表(ST)を含む。データ・
セットの数はqに等しく、1はセット番号、即ち、0,
1,2. 、、、、q−1である。セットiは統計表S
T Jにを用いて短縮プロセッサCP jにより処理さ
れる。この場合: j = i モジコー11n k = (ilo) モジューロ mである。 各CPでM STを持つN CPについては、データ処
理システムにおける数Nよりも少ないCPの可能な構成
は: m −阿 n=N により規定される。M、 N、 m及びnは全て0より
も大きい整数である。nはN CPシステムにおける最
大数の中から使用されたCPの数であり、mは最大数C
Pの中から使用されたSTの数である。 図示の良好な実施例では、Nは8 CPに等しく、には
CP毎の2 STに等しい。可能な構成はnが4に等し
く、mが2に等しい場合である。スループ3 ットの増加は8 CPを使用し、各CPがl STを用
いる場合、即ちnが8に等しく mが1に等しい場合に
可能である。8 CP、即ちNが8に等しい場合のもう
1つの可能性はHが8に等しく、可能な構成は: n=8.m=1 n=4.m=2 n=2.m=4 n=1.m=8 である。 8 CPの場合で、Nが4に等しい時の可能な構成は: n=8.m=1 n−4m=ln −4l、m=4 である。 従って、全てのスルーブツト速度の増加を通じてフォー
マット互換性を維持しつつ、現在要求されているスルー
プット速度及び後に所望されるスループット速度を選択
することによるデータ・スループッ4 トの増加を通じてフォーマット互換性を維持することが
できる。より高いスループット速度、及びより低いスル
ープット速度の短縮のト方及び上方互換性は保証される
。 適応短縮は2つの相互に排他的なモードの1つで符号器
にあるバイト毎に実行される。第1のモードは]以上の
反復が検出されたとき同じ文字の順次反復を圧縮するラ
ン・モードである。これらはラン・モード・シーケンス
をセットすることにより識別される。 第2のモードは集積された統計により個々のバイトをコ
ード化するバイト・モードである。このパイ1〜・モー
ドは前の2つのバイトが異なる時、即ちバイト・モード
が非反復を表わした後に用いられる。 このモードはラン文字が該文字に等しいときに識別され
る。両モードの結果は、どの統計表が当該時点で活動化
されるかにより該統計表からの統計を集積するために使
用される。コード化プログラムはデータ・バイト毎の統
計に適応する。ラン・モード処理では、統計はバイト反
復の見込みに基づいている。 バイト・モード処理では、最初、各バイトの各ビットは
確率が等しいものと仮定する。統計はビット単位で更新
され、統計表の2進トリー構造に記憶される。統計は入
力データ・ストリングの各レコードを受取る前にリセッ
トされる。従って、各レコードは独立して処理される。 第4図に関連して後で説明するように、該プログラムは
データ圧縮を最大化するのにどのモードが有効かを動的
に決定する。正確な原データがコード・ストリングから
回復されるように、プログラムは適応データ統計を用い
てデータ・ビットのストリングをコード・ストリングに
写像する。圧縮される量は連続するバイト反復の数及び
一般的なバイト値の数の多さに正比例する。符号器及び
復号器は、該システムの最大データ速度を満たすのに必
要な並列短縮プロセッサの最大数として選択できる、同
数の統計表を用いる。第4図〜第15図による短縮処理
は前述の論文Arithmetic Codin及びA
n Introductionto Arithmet
ic Codin ’mびに米国特許第44.673
17号明細書に詳細に記載されている。これらの出版物
及R− び米国特許明細書は符号器及び復号器毎に1つの統計表
が使用される本発明によるコード化及び復号プロセスを
ずっと詳細に説明している。 第4図の短縮コード化プロセスの流れ図では、2つの前
のバイトが同じ時のラン・モード・シーケンスである。 バイト・モードはラン・モードが見っがらない時に使わ
れるモードである。ラン・モードは1以上の反復が検出
されると同じ文字の順次反復を圧縮する。ラン・モード
が見つからない時、即ちバイト・モードが開始されると
、個々のバイトは集積された統計によりコード化され、
前の2バイトが異なる、即ちラン・モードが見つからな
いとき、又はラン・モードが非反復を表示してから使用
される。 モードの結果はどちらも統計を集積するために使用され
る。コード化プロセスはバイト毎の統計に適応する。ラ
ン・モード処理の場合、統計はバイト反復の見込みに基
づいている。ビット・モード即ち非ラン・モードの場合
、最初に各バイトの各ビットは同じ確率であると仮定す
る。統計はビット単位で更新され且つ2進トリー・デー
タ構造で記憶される。統7 計は3ビツト・フィールドのフォーマットをとり、1ビ
ツトはどのビット値がより見込みがあるかを表わし、他
の2ビツトは値1〜4を持つ数である。前記値は最も見
込みのあるビット値を生じる相対的な確率を示し、値1
は同じ見込みの値を表わし、値4は最も見込みのある値
を表わす。ホストから受取った各々の論理的なブロック
の始まりで統計はリセットされるので、論理的なブロッ
クはそれぞれ独立して処理される。該プロセスはデータ
圧縮を最大化するためにどのモードが有効かを動的に決
定する。該プロセスは、適応データ統計を用いて、デー
タ・ビットのストリングをコード・ストリングに写像し
、正確な原データがコード・ストリングから回復できる
ようにする。圧縮される量は連続するバイト反復の数及
び一般的なバイト値の数の多さに正比例する。 第4図の流れ図はデータ・セットのコード化プロセス全
体を示す。前述のように、データ・セットは最後のセッ
ト(データ・ストリームからデータ・セットに分離され
た後の残りのバイト)以外は512バイトである。デー
タ・セット毎に、符号器は既知8 の状態に初期化される。統計表はデータ・セット毎には
初期化されず、むしろチャネル・レコード毎に初期化さ
れるだけである。ラン文字レジスタは初期化される。ラ
ン・モード・レジスタは各データ・セットの始まりでリ
セットされる。該セットの中から各々のバイトが取出さ
れ、文字レジスタにロードされる。もしラン・モードが
セットされれば、ラン文字レジスタと文字レジスタが比
較される。もしそれらが等しければ、第6図に示す反復
事象コード化が実行される。さもなければ、第7図に示
す非反復事象コード化が実行され且つ第5図に示す文字
コード化プロセスが実行される。もしラン・モードがセ
ットされなかったならば、文字コード化プロセスは直ち
に開始される。 該セットのバイトはラン・モードでコード化されている
から、ラン・モードは決定されている。ラン文字レジス
タと文字レジスタが比較され、もしそれらが等しtプれ
ば、ラン・モードがセットされる。さもなければ、ラン
・モードはリセットされ、ラン文字レジスタは次のラン
・モード事象の文字・レジス夕情報にセットされる。 該データ・セットの全てのバイトが処理されるまで該プ
ロセスは反復される。非反復事象コード化はラン・モー
ドで処理しているデータ・セットを終了させるために実
行される。ラン・モードがセットされてもリセットされ
ても、符号器内の符号レジスタの内容は符号の一部とし
てシフI・アウトされる。 第4図の流れ図はブロック200で初期化、即ちプログ
ラムを開始する異なるレジスタをリセットすることによ
り始まる。次のブロック204では、データ・セラ]・
から次のバイトを取得し、それを文字レジスタに入れる
。判定ブロック20Bはラン・モード・シーケンスがセ
ットされているかどうかを判定する。もしセットされて
いなければ、゛ノー“のライン208からブロック21
0に進み、このバイトをコード化する。次にブロック2
12で、該文字は前の文字と同じかどうかを検査する。 もし同じでなければ、ブロック214で、ラン・モード
をリセ・ントシ、且つラン文字レジスタを文字レジス、
夕に等しくなるようにセットする。プロセスは続行し、
次の0 バイトを取得するためにブロック204に戻る。判定ブ
ロック206で、もしラン・モードがセットされていれ
ば、”イエス”のラインから次の判定ブロック220に
進み、ラン文字レジスタの情報が文字レジスタの情報と
同じがどうかを検査する。もし同じならば、イエス・ラ
イン222からブロック224に進み、反復された事象
をコード化する。そして、ブロック212に該文字が最
後の文字に等しいがどうかを検査する。もし等しければ
、ブロック2」8で、ラン・モードがセットされ、次の
データを取得するためにシーケンスの始めに戻る。ラン
・モード・シーケンスは、前のバイトが同じであり且つ
符号器が2進算術コード化プロセスに従ってこの類似の
データを短縮する場合に用いられる。判定ブロック22
0で、もしこのバイトの文字が同じでないならば、ノー
・ラインからブロック226に進み、非反復事象がコー
ド化され、ブロック2]0で文字がコード化される。ラ
ン文字レジスタは文字レジスタに等しくないから、判定
ブロック212からノー・ラインを経由してブロック2
14に進み、ラン・モー1 ドをリセットする。ラン・モード文字はセットされてい
ないから、プロセスは各バイトを検査する同じモードで
継続する。この時点では、それはビット・モードであり
、バイトの各ビットは、このバイトの非類似ビットを短
縮するように処理される。プロセスはコード化されるデ
ータ・セットにある全てのバイ]・を検査し続
【づる。
コード化されたばかりの情報を復号する復号プロセスは
第11図に示す。第4図の個々のブロックの幾つかのプ
ロセスの流れは第5図〜第8図に示す。 第5図は第4図のブロック210の文字コード化手順を
示す。バイトが反復されない、非ラン・モードのとき、
各バイトは第4図に示すブロックのコド化文字によりコ
ード化される。文字バッファに記憶されているバイトの
8ビットの各々について、統計が取出されてから、第8
図に示すコード化手順によりコード化される。そして、
更新された統計は統計表に再び記憶される。バイトをコ
ード化するために、DBITレジスタは先ずバイトの最
上位ビット・にセットされる。ブロック236に示すよ
うに、最初の2 ビットの統計が取出されるアドレス、ADDRが1にセ
ットされる。ブロック238で、ビットはアドレスAD
DR及び第8図に示すビット・コード化プロセスを用い
てコード化される。次の最上位ビットをコード化するた
めに、ブロック240に示ずように、ADDRアドレス
を1ビツト左シフトしてDBITを書込むことにより新
しい統計表アドレスが生成される。ブロック242に示
すように、 DBITは文字レジスタの次の最上位ビッ
トにセットされる。ブロック244に示すように、前記
プロセスは8回反復され、文字のビットの全てをコード
化する。 第6図は第4図に示すブロック224の反復事象コード
化プロセスを示す。統計表のアドレス0はラン・モード
として使用される。ラン・モードがセットされると、ブ
ロック246に示すように、アドレスADDRはOに、
DBITは1にそれぞれセットされ、反復されたビット
がコード化されることを表わす。そして、第8図のビッ
ト・コード化プロセスが実行され、ブロック248に示
すように、反復事象をコード化する。 3 第7図は第4図のブロック226の非反復事象コード化
プロセスを示す。ラン・モードがセットされると、ブロ
ック250に示す最初のステップで、統計表のアドレス
ADDRは0に、 DBIT文字はOにそれぞれセット
され、ラン文字に等しくないビットはコド化されること
を表わす。統計表のアドレスOはラン・モードについて
使用される。そして、ブロック252に示すように第8
図のビット・コード化プロセスが実行され、第4図に示
すようにラン・モードの中断が起き且つ文字コード化ブ
ロック2 ]、 Oで非ラン文字がコード化されること
を示す。 第8図のビット・コード化プロセスは、第5図のビット
・コード化ブロック238、第6図のビット・コード化
ブロック248及び第7図のビット・コド化ブロック2
52で使用される。該プロセスの最初のステップ254
で、統計MおよびKはアドレスADDRにより指定され
たアドレスで統計表から取出される。M統計は推測され
た値を示す1ビツト値であり、統計には2ビツトの確率
値である。Kは1から4までの数をとることができる。 M、K及びDBTT4 はコード計算ブロック256でのプロセスを使用して該
ビットをコード化するために用いられる。コード計算プ
ロセスは第9図に示す。次にブロック258で、統計を
更新してデータに適応させる。これは第10図に示す統
計計算プロセスで実行される。新しい統コ1゛がM及び
Kで11算されてから、ブロック260に示すように、
統計値はアドレスADDRにより指定されたアドレスで
統計表に記憶される。 第9図のコード計算プロセスに示すように、コード化プ
ロセスは確率の合計を生成する。合計はコード、即ち符
号器の出力である。合計は合計レジスタCで加算及びシ
フト動作を行うことにより生成される。正規化レジスタ
として、レジスタAも使用される。本発明の良好な実施
例ではAレジスタ及びCレジスタはどちらも4ビツトで
ある。第4図の初期化ステップで、Aレジスタ及びCレ
ジスタはどちらも0に初期化される。第9図のコード計
算プロセスの最初のステップは、ブロック600に示す
ように、確率最大の記号MPSをコード化するか、又は
確率最小の記号LPSをコード化するかを決定する。も
しDB5 ITが推測値Mに等しければMPSがコード化され、さ
もなければLPSがコード化される。LPSが選択され
ると、AレジスタはOにリセットされ(ブロック6]2
)、Cレジスタはに同左シフトされ、0が書込まれる(
ブロック614)。シフト・プロセスによりCレジスタ
から出るビットは連結されてビット・ストリングになる
。短縮されたデータはCレジスタから出るこのビット・
ストリングであり、このストリングに追加の操作が実行
される。 最大確率記号(MPS)の場合は、PFと呼ばれる確率
係数がKから生成される。PFは4ビツト値であり、A
レジスタ及びCレジスタで算術演算を実行するために使
用される。もしに=1ならPFは1000にセットされ
る。もしに=2ならPFは0100にセットされる。も
しに=3ならPFはooioにセットされる。もしに=
4ならPFの表は0001にセットされる。PF値はC
レジスタの内容に付加される。もしCレジスタからの桁
上げがあれば、該桁上げは前に生成されたコード・ビッ
トを介して伝達される。新しい4ビツト合計は再びCレ
ジスタに記憶される。更6 に、Aレジスタの内容からPFが差引かれ、新しい差は
再びAレジスタに記憶される。減算プロセスでAレジス
タに借りが生じたなら、Aレジスタ及びCレジスタはど
ちらも1ビツトずつ左シフ]・され、0が書込まれる。 Cレジスタからシフトされたビットは前のコード・ビッ
トと連結され、短縮されたデータをつくる。 Cレジスタからシフトアウトされたビットは確率の合計
であるから、Cレジスタからの桁上げは全合計に伝達さ
れねばならない。全合計を符号器に記憶することは実際
的ではないので、符号器から送イ1済みのコードの桁上
げは出力を介して伝達しなくてもよいように、桁上げ伝
達が制御されねばならない。 これは詰込みビットによって行われる。Cレジスタから
出る合計は8ビツト・バイトとして連結され、符号器か
ら送出される。8ビツトの全1の値を持つコード・ビッ
トが検出される毎に、4ビツトの0が全1バイトの後に
挿入され、Cレジスタからの桁上げが全lバイトに伝達
されるのを阻止する。もしCレジスタからの桁上げがあ
れば、詰込まれた4ピッ7 トのOは1つだけ増加する、従って桁上げが全1コド・
バイトに伝達されるのを阻止する。バイト詰込みの1つ
の利点は、コード・ストリームへの特別の文字コードの
挿入が可能なことである。次の4ビツトの2つの組合せ
、即ち0000及び0001の一方だけが全1ビツトに
続くことができるから、コード化プロセスによりこれら
の2つの値以外の値が生成されていないので、2バイト
の特別文字を挿入できる。これらの特別文字は、異なる
短縮データ・セットを分離する、セット区切りの端であ
る。 第10図で、統計表に基づいた確率計算が短縮される(
米国特許第4463342号参照)。モンテカルロ・カ
ウンタ、CNTは統計表M及びKに何が行われるかを決
定するために使用される。モンテカルロ手法は、タスク
を実行するか又は実行しない決定が、決定論的なアプロ
ーチではなく擬似ランダム数から決定された回答に基づ
く場合に用いる。CNTカウンタは4ビツト2進アツプ
(UP)・カウンタである。CNTカウンタは第4図の
初期化ステップでOにリセットされる。第10図のブロ
ック500に示すように、8 最初のステップは、最大確率記号MPSが処理されたか
最小確率記号LPSが処理されたかを判定することであ
る。DBITとM統計が等しいときはMPSである。 さもなければr、psである。もしLPSが処理された
なら、間違った推測であり、該推測値発生の確率値は。 直ちに減少すべきである。判定ブロック528で、もし
Kが既に1ならば、ブロック532で、統計Mは逆転さ
れ、推測値の反対の値が保管される。もしMPSが処理
されたならば、正しい推測であり、この推測値発生の確
率値は増加すべきであるが、増加は常にKの最大値に達
するのが速すぎ誤り推測のペナルティがずっと高くなる
から、常にそうするとは限らない。それゆえ、モンテカ
ルロ・カウンタを用いてKをランダムに増加させる。も
し判定ブロック510でKが1に等しく、ブロック51
6でCNTカウンタの2つの下位ビットが1であれば、
ブロック518で、Kは増加される。もしに統計値が2
に等しく(ブロック512)、カウンタCNTの3つの
下位ビットが1に等しければ(ブロック513)、ブロ
ック518でKは増加される。もし統計Kが3に等 9
− しく(ブロック514)、CNTカウンタの4ビツト全
てが1に等しければ(ブロック524)、値には増加さ
れる。もしKが4に等しければ、Kは既に最大値である
から、そのままである。Kの値にかかわらず、MPSの
場合、CNTカウンタはブロック504及び518で増
加される。 第11図〜第15図は復号プロセスの処理の流れを示す
。第11図はチャネル・アダプタに送られたデータ・セ
ットの復号プロセス全体の流れ図を表わす。本発明の良
好な実施例では、データ・セットは最後のセット即ち残
りの部分の外は512バイトである。各データ・セット
について、例えば、第3図の復号器124は最初、既知
の状態になるように初期化される。統計表は各データ・
セット毎には初期化されず、チャネル・ストリームのレ
コード毎に初期化されるだけである。各データ・セット
の始まりでラン文字レジスタは初期化され、ラン・モー
ド表示はリセットされる。復号器のCレジスタは短縮さ
れたデータの最初のバイトの最上位ビットでロードされ
る。非ラン・モードでは復号プロセスは一度に0 1ビット復号する。8ビツト毎に1バイトにアセンブル
され、チャネル・データのバイトとして送られる。ラン
・モードの場合、反復バイトはチャネル・データのバイ
トとして送出され、当該データ・セットの全ての短縮さ
れたデータが使用され且つデータ・セットの全てのビッ
トが復号されるまでプロセスは継続する。ブロック30
8で、もしラン・モードがセットされていれば、ラン事
象を復号するブロック322に進む。ラン事象復号は第
13図に示すように処理され、 DBITレジスタに値
が戻される。もしDBITが1なら(ブロック324)
、反復されたビットはラン・モードでコード化されてお
り、それゆえラン文字は文字レジスタに複写され、(ブ
ロック326)、ブロック314で送出される。もしD
BI’#+<0なら、文字復号ブロック310は第12
図に示すように処理される。データ・バイトは復号され
て文字レジスタに送り込まれ、該バイトは文字レジスタ
から送出される。ブロック316で、もしラン文字レジ
スタが文字レジスタに等しければ、ブロック238に進
み、ラン・モードをセットする。もしラン文字が文字に
等しくなければ、ラン・モードはリセットされ(ブロッ
ク318)、文字レジスタはラン文字レジスタに複写さ
れる(ブロック320)6全ての短縮されたデータが使
用され且つチャネル・データのセットの全てのバイトが
短縮解除されるまでプロセスは継続する。 第11図のブロック310の文字復号プロセスは第3−
2図に示す。例えば、第11図のブロック308で、バ
イトが反復されないときはラン・モードは継続されない
ことを示し、ノー・ラインを経由してブロック310に
進む。即ち、第12図のブロック330で、最初のビッ
トの統計が取出されるアト1ノスADDRはlにセット
される。非ラン・モードでは、各ビットは第12図に示
す文字復号プロセスにより復号される。復号されるバイ
トの8ビツトの各々について統計が取出され、第14図
に示す復号プロセスによりビットが復号される。そして
更新された統計は再び統計表に記憶される。最初のビッ
トの統計が取出されるアドレスは、前述のようにブロッ
ク330で1にセットされる。ブロック332で、復号
ビットはDBITレジスタに入力される。DBITレジ
スタで復号された最初のビットは文字レジスタの最上位
ビットに記憶される。次のビットの復号のため、ブロッ
ク334で、アドレスADDRをlビット左シフトする
ことにより新しい統計表アドレスが生成すると同時に当
該ビットにDBIT−を書込む。復号された次のビット
は文字レジスタの次の最上位ビットに記憶される。これ
は、ブロック336で、文字レジスタの文字を左シフト
し該レジスタにDBITを書込むことにより行われる。 判定ブロック338に示すように、前記プロセスは8回
反復され、全てのビットを復号して文字レジスタに入れ
る。 第1]図のブロック322のラン事象復号は第13図に
示す。統計表のアドレス0はラン・モードに使用される
。それゆえ、第13図のブロック340でアドレスAD
DRはOにセットされる。そして復号されるビットはブ
ロック342でDBITレジスタに入力され、ラン事象
を復号するためにビット復号が実行される。 第12図のブロック332のビット復号プロセス3 は第14図に示す。ブロック350で、ADDR信号に
より指定されたアト1ノスで統計M及びKが統計表から
取出される。統計Mは推測値を示す1ビツト値であり、
統計には2ビツトの確率値である。統計には、1から4
までの数を選択できる。統計M及びKは第15図に示す
データ・ビット言1算のプロセスを用いてビットを復号
するのに使用される。ブロック352のデータ・ビット
計算プロセスで、ビットが復号されI)BITレジスタ
に記憶される。そしてブロック354で、復号されるデ
ータに統計を適応させるように統計は更新される。これ
は第1O図に示す統計計算プロセスで行われる。統計M
及びKで新しい統計が計算された後、ブロック356で
、統計M及びKはADDR信号により指定されたアドレ
スで再び統計表に記憶される。 第15図は第14図のブロック352のデータ・ビット
計算プロセスを示す。復号プロセスはコード化プロセス
と同じタイプのAレジスタ及びCレジスタを使用する。 Aレジスタは正規化レジスタでありコード化プロセスと
同じように使用される。本発明4 の良好な実施例では、Aレジスタ及びCレジスタはどち
らも4ビットを有する。復号サイクルのための第4図の
初期化ステップでは、Aレジスタ及び←レジスタはどち
らも0になるように初期化される。そして短縮データの
最初の4ビツトはCレジスタにシフトされる。第15図
のブロック700の最初のステップはデータ・ビットを
計算するため最大確率記号(MPS)がコード化された
か最小確率記号(LPS)がコード化されたかを判定す
る。Cレジスタで減算が試行され、MPSがコード化さ
れたかLPSがコード化されたかを判定する。確率係数
PFは統計Kから生成される。PFはAレジスタ及びC
]ノジスタで算術演算を実行するために使用される4ビ
ツト値である。確率係数PFは第9図のコード計算プロ
セスの場合と同様に統計Kから変換される。 Cレジスタの内容からPFを引き、もしCレジスタに借
りが要求されれば、LPSがコード化されているに相違
なく、さもなければ、MPSがコード化されている。判
定ブロック700の結果がLPSなら、ブロック710
でAレジスタはOにリセットされ、プロツク712でC
レジスタかに同左シフトされる。Cレジスタから出るビ
ットは破棄され、Cレジスタに短縮されたデータが書込
まれる。LPSがあることは判定されているから、コー
ド化プロセスで間違った推測がなされたに相違なく、ブ
ロック714でDBITはMの値の逆数にセットされる
。MPSが決定されている場合は、コード化プロセスで
正しい推測がなされているに相違ないから、ブロック7
01で、DBITレジスタは値Mにセットされる。ブロ
ック702でCレジスタの内容から確率係数PFを引く
。新しい4ビツト差は再びCレジスタに記憶される。P
F−tIAレジスタの内容から引き、新しい差は再びA
レジスタに記憶される。判定ブロック704で、もし引
算のプロセスでAレジスタに借りがあれば、ブロック7
06及び708で、Aレジスタ及びCレジスタはどちら
も1ビツトずつ左シフトされる。Aレジスタは0を書込
み、Cレジスタは短縮されたデータのビットが書込まれ
る。Cレジスタからシフトされたビットは破棄される。 短縮データをCレジスタにシフトするとき、桁上6 げを防ぐための詰込みビットは除去されねばならない(
第6図のコード計算プロセス参照)。詰込みビットは、
次のコード・バイトの最上位4ビツト全O又は0001
−があとに続く全1バイトにより識別される。もし全1
バイトに続く4ビツトが全0であれば、動作は行われず
、4個のOビットが破棄されるだけである、即ちCレジ
スタへのシフトは行われない。もし全1バイトに続く4
ビツトが0001であれば、Cレジスタの内容は1増加
され、再びCレジスタに記憶される。この場合、4ビツ
ト0001も破棄され、Cレジスタにはシフトされない
。もし全1バイトに続く4ビツトが全0でもなく 00
01でもなければ、全1バイト及び後続のバイトはコー
ド・ストリムに挿入された特別の文字である。これらの
特別の文字は、セットの間を区切るか又はレコードの終
りを識別する、セット文字の終り又はレコード文字の終
りである。コード・ストリームでセット文字又はレコー
ド文字の終りが現われると、全てのデータ・ビットが復
号され且つCレジスタの内容が全0になる、即ちコード
化プロセスの開始条件になるまで7 復号プロセスは継続される。 短縮解除即ち復号シーケンスのチャネル速度は最もタイ
ム・クリティカルである。トリーの1番目のレベルのデ
ータ・ビットは、次に最も高いトリー・レベルのビット
を復号するのに必要なトリー・アドレスを引算するため
に復号しなければならない。統計表アクセス時間が復号
サイクル時間に等しい、単なるオーバラップの場合、2
つの隣接する統計位置が■番目のレベルのデータ・ビッ
トの可能な結果毎に1つ取出される。下位のアドレス・
ビットが既知であるとき、前記下位のビットは制御信号
になり、所要の統計を選択し短縮装置に送付する。同時
に、統計適応プロセスは該統計を操作し適切なデータ・
レジスタでそれを置換える。そしてデータ・レジスタは
統計表に再書込みされる。2つの独立したデータ・レジ
スタ・メモリ装置の要求は2重ボート・メモリの使用に
より解決することができる。2重ボート・メモリは2つ
の異なるメモリ・アドレスに対し読取り書込みを同時に
行う。1つのトリー・レベルで読取りもう1つのトリー
・レベルで書込むとき、8 レベルのアドレスは異なることが保証される。それゆえ
、統計表は読取り中は決して更新されない。 本発明による短縮装置で使用されるプロセスの流れの更
に詳細な説明は米国特許第4286256号、同第44
.63342号及び同第4.467317号明細書を参
照されたい。本発明による短縮装置はこれらの3特許の
改良である。主たる改良点として、2つの統計表が符号
器及び復号器の各々に包含され、統計表の2重化は共有
のハードウェア、即ち1つの符号器又は復号器の使用を
可能にするとともに、システムに互換性のあるフォーマ
ットを2倍のスループット・データ速度で可能にする。 ハードウェアの数が少なI−1れば少ないほど費用は安
くなる。 第4図のコード化プロセスはたぶん前述の米国特許第4
467317号明細書により最もよく理解される。 該特許で使用されているように、第】のレジスタはレジ
スタCであり、第2のレジスタはレジスタAである。良
好な実施例では、レジスタA及びCの各々は4ビツトを
有し、各々がシフト・レジスタとして作用するようにプ
ログラムされている。レジスタC9 は、コード化サイクルでは圧縮されたデータを含むが、
復号サイクルでは圧縮されないデータを含む。 第15図において、ブロック700で最大確率記号(M
PS)が示され、ブロック702で圧縮中に計算された
合計からの差をとり、圧縮されないデータを生成する外
は、復号プロセスはコード化プロセスにきわめて類似し
ている。Aレジスタ制御はコード化サイクルの場合と同
じである。Aレジスタで借りの発生は正規化を生じるが
、借りの不足は制御動作を起こさせない。復号中、判定
ブロック700からLPSが決定されると、Aレジスタ
はブロックでリセットされ、Clノジスタはにビット左
シフトされ、0よりもむしろ復号される圧縮データが書
込まれる。 F6発明の効果 本発明によれば、既知の最大時間内にデータをコード化
し復号することができるデータ短縮システムが提供され
る。 本発明によれば、全システムについて同じフォーマット
を保持しつつ更に高速のデータ速度を取得できるデータ
短縮システムが提供される。 n 更に本発明によれば、異なるスルーブツト速度を用いる
短縮プロセスでフォーマット互換性が維持される高機能
の2進算術コード化プロセスが提供される。 更に本発明によれば、コード化及び復号プロセスの上方
及び下方フォーマット互換性を可能にする改良された短
縮方式が提供される。 更に本発明によれば、増大したスループット速度及び標
準的なスルーブツト速度のどちらでコード化された媒体
も復号できる上方及び下方フォーマット互換性を提供す
ると同時に今日のレコード処理システムが要求するより
高い速度でデータを圧縮し処理するためにデータに固有
のスループット速度に適応できる短縮プロセッサが提供
される。 最後に本発明によれば、並列短縮装置の付加により増大
したスループット速度を持つ短縮システムに予測可能ス
ループット速度及びフォーマット互換性を提供すると同
時に複数の並列短縮システムを利用し且つデータ・スト
リームに適応可能な圧縮方式が提供される。 1
第11図に示す。第4図の個々のブロックの幾つかのプ
ロセスの流れは第5図〜第8図に示す。 第5図は第4図のブロック210の文字コード化手順を
示す。バイトが反復されない、非ラン・モードのとき、
各バイトは第4図に示すブロックのコド化文字によりコ
ード化される。文字バッファに記憶されているバイトの
8ビットの各々について、統計が取出されてから、第8
図に示すコード化手順によりコード化される。そして、
更新された統計は統計表に再び記憶される。バイトをコ
ード化するために、DBITレジスタは先ずバイトの最
上位ビット・にセットされる。ブロック236に示すよ
うに、最初の2 ビットの統計が取出されるアドレス、ADDRが1にセ
ットされる。ブロック238で、ビットはアドレスAD
DR及び第8図に示すビット・コード化プロセスを用い
てコード化される。次の最上位ビットをコード化するた
めに、ブロック240に示ずように、ADDRアドレス
を1ビツト左シフトしてDBITを書込むことにより新
しい統計表アドレスが生成される。ブロック242に示
すように、 DBITは文字レジスタの次の最上位ビッ
トにセットされる。ブロック244に示すように、前記
プロセスは8回反復され、文字のビットの全てをコード
化する。 第6図は第4図に示すブロック224の反復事象コード
化プロセスを示す。統計表のアドレス0はラン・モード
として使用される。ラン・モードがセットされると、ブ
ロック246に示すように、アドレスADDRはOに、
DBITは1にそれぞれセットされ、反復されたビット
がコード化されることを表わす。そして、第8図のビッ
ト・コード化プロセスが実行され、ブロック248に示
すように、反復事象をコード化する。 3 第7図は第4図のブロック226の非反復事象コード化
プロセスを示す。ラン・モードがセットされると、ブロ
ック250に示す最初のステップで、統計表のアドレス
ADDRは0に、 DBIT文字はOにそれぞれセット
され、ラン文字に等しくないビットはコド化されること
を表わす。統計表のアドレスOはラン・モードについて
使用される。そして、ブロック252に示すように第8
図のビット・コード化プロセスが実行され、第4図に示
すようにラン・モードの中断が起き且つ文字コード化ブ
ロック2 ]、 Oで非ラン文字がコード化されること
を示す。 第8図のビット・コード化プロセスは、第5図のビット
・コード化ブロック238、第6図のビット・コード化
ブロック248及び第7図のビット・コド化ブロック2
52で使用される。該プロセスの最初のステップ254
で、統計MおよびKはアドレスADDRにより指定され
たアドレスで統計表から取出される。M統計は推測され
た値を示す1ビツト値であり、統計には2ビツトの確率
値である。Kは1から4までの数をとることができる。 M、K及びDBTT4 はコード計算ブロック256でのプロセスを使用して該
ビットをコード化するために用いられる。コード計算プ
ロセスは第9図に示す。次にブロック258で、統計を
更新してデータに適応させる。これは第10図に示す統
計計算プロセスで実行される。新しい統コ1゛がM及び
Kで11算されてから、ブロック260に示すように、
統計値はアドレスADDRにより指定されたアドレスで
統計表に記憶される。 第9図のコード計算プロセスに示すように、コード化プ
ロセスは確率の合計を生成する。合計はコード、即ち符
号器の出力である。合計は合計レジスタCで加算及びシ
フト動作を行うことにより生成される。正規化レジスタ
として、レジスタAも使用される。本発明の良好な実施
例ではAレジスタ及びCレジスタはどちらも4ビツトで
ある。第4図の初期化ステップで、Aレジスタ及びCレ
ジスタはどちらも0に初期化される。第9図のコード計
算プロセスの最初のステップは、ブロック600に示す
ように、確率最大の記号MPSをコード化するか、又は
確率最小の記号LPSをコード化するかを決定する。も
しDB5 ITが推測値Mに等しければMPSがコード化され、さ
もなければLPSがコード化される。LPSが選択され
ると、AレジスタはOにリセットされ(ブロック6]2
)、Cレジスタはに同左シフトされ、0が書込まれる(
ブロック614)。シフト・プロセスによりCレジスタ
から出るビットは連結されてビット・ストリングになる
。短縮されたデータはCレジスタから出るこのビット・
ストリングであり、このストリングに追加の操作が実行
される。 最大確率記号(MPS)の場合は、PFと呼ばれる確率
係数がKから生成される。PFは4ビツト値であり、A
レジスタ及びCレジスタで算術演算を実行するために使
用される。もしに=1ならPFは1000にセットされ
る。もしに=2ならPFは0100にセットされる。も
しに=3ならPFはooioにセットされる。もしに=
4ならPFの表は0001にセットされる。PF値はC
レジスタの内容に付加される。もしCレジスタからの桁
上げがあれば、該桁上げは前に生成されたコード・ビッ
トを介して伝達される。新しい4ビツト合計は再びCレ
ジスタに記憶される。更6 に、Aレジスタの内容からPFが差引かれ、新しい差は
再びAレジスタに記憶される。減算プロセスでAレジス
タに借りが生じたなら、Aレジスタ及びCレジスタはど
ちらも1ビツトずつ左シフ]・され、0が書込まれる。 Cレジスタからシフトされたビットは前のコード・ビッ
トと連結され、短縮されたデータをつくる。 Cレジスタからシフトアウトされたビットは確率の合計
であるから、Cレジスタからの桁上げは全合計に伝達さ
れねばならない。全合計を符号器に記憶することは実際
的ではないので、符号器から送イ1済みのコードの桁上
げは出力を介して伝達しなくてもよいように、桁上げ伝
達が制御されねばならない。 これは詰込みビットによって行われる。Cレジスタから
出る合計は8ビツト・バイトとして連結され、符号器か
ら送出される。8ビツトの全1の値を持つコード・ビッ
トが検出される毎に、4ビツトの0が全1バイトの後に
挿入され、Cレジスタからの桁上げが全lバイトに伝達
されるのを阻止する。もしCレジスタからの桁上げがあ
れば、詰込まれた4ピッ7 トのOは1つだけ増加する、従って桁上げが全1コド・
バイトに伝達されるのを阻止する。バイト詰込みの1つ
の利点は、コード・ストリームへの特別の文字コードの
挿入が可能なことである。次の4ビツトの2つの組合せ
、即ち0000及び0001の一方だけが全1ビツトに
続くことができるから、コード化プロセスによりこれら
の2つの値以外の値が生成されていないので、2バイト
の特別文字を挿入できる。これらの特別文字は、異なる
短縮データ・セットを分離する、セット区切りの端であ
る。 第10図で、統計表に基づいた確率計算が短縮される(
米国特許第4463342号参照)。モンテカルロ・カ
ウンタ、CNTは統計表M及びKに何が行われるかを決
定するために使用される。モンテカルロ手法は、タスク
を実行するか又は実行しない決定が、決定論的なアプロ
ーチではなく擬似ランダム数から決定された回答に基づ
く場合に用いる。CNTカウンタは4ビツト2進アツプ
(UP)・カウンタである。CNTカウンタは第4図の
初期化ステップでOにリセットされる。第10図のブロ
ック500に示すように、8 最初のステップは、最大確率記号MPSが処理されたか
最小確率記号LPSが処理されたかを判定することであ
る。DBITとM統計が等しいときはMPSである。 さもなければr、psである。もしLPSが処理された
なら、間違った推測であり、該推測値発生の確率値は。 直ちに減少すべきである。判定ブロック528で、もし
Kが既に1ならば、ブロック532で、統計Mは逆転さ
れ、推測値の反対の値が保管される。もしMPSが処理
されたならば、正しい推測であり、この推測値発生の確
率値は増加すべきであるが、増加は常にKの最大値に達
するのが速すぎ誤り推測のペナルティがずっと高くなる
から、常にそうするとは限らない。それゆえ、モンテカ
ルロ・カウンタを用いてKをランダムに増加させる。も
し判定ブロック510でKが1に等しく、ブロック51
6でCNTカウンタの2つの下位ビットが1であれば、
ブロック518で、Kは増加される。もしに統計値が2
に等しく(ブロック512)、カウンタCNTの3つの
下位ビットが1に等しければ(ブロック513)、ブロ
ック518でKは増加される。もし統計Kが3に等 9
− しく(ブロック514)、CNTカウンタの4ビツト全
てが1に等しければ(ブロック524)、値には増加さ
れる。もしKが4に等しければ、Kは既に最大値である
から、そのままである。Kの値にかかわらず、MPSの
場合、CNTカウンタはブロック504及び518で増
加される。 第11図〜第15図は復号プロセスの処理の流れを示す
。第11図はチャネル・アダプタに送られたデータ・セ
ットの復号プロセス全体の流れ図を表わす。本発明の良
好な実施例では、データ・セットは最後のセット即ち残
りの部分の外は512バイトである。各データ・セット
について、例えば、第3図の復号器124は最初、既知
の状態になるように初期化される。統計表は各データ・
セット毎には初期化されず、チャネル・ストリームのレ
コード毎に初期化されるだけである。各データ・セット
の始まりでラン文字レジスタは初期化され、ラン・モー
ド表示はリセットされる。復号器のCレジスタは短縮さ
れたデータの最初のバイトの最上位ビットでロードされ
る。非ラン・モードでは復号プロセスは一度に0 1ビット復号する。8ビツト毎に1バイトにアセンブル
され、チャネル・データのバイトとして送られる。ラン
・モードの場合、反復バイトはチャネル・データのバイ
トとして送出され、当該データ・セットの全ての短縮さ
れたデータが使用され且つデータ・セットの全てのビッ
トが復号されるまでプロセスは継続する。ブロック30
8で、もしラン・モードがセットされていれば、ラン事
象を復号するブロック322に進む。ラン事象復号は第
13図に示すように処理され、 DBITレジスタに値
が戻される。もしDBITが1なら(ブロック324)
、反復されたビットはラン・モードでコード化されてお
り、それゆえラン文字は文字レジスタに複写され、(ブ
ロック326)、ブロック314で送出される。もしD
BI’#+<0なら、文字復号ブロック310は第12
図に示すように処理される。データ・バイトは復号され
て文字レジスタに送り込まれ、該バイトは文字レジスタ
から送出される。ブロック316で、もしラン文字レジ
スタが文字レジスタに等しければ、ブロック238に進
み、ラン・モードをセットする。もしラン文字が文字に
等しくなければ、ラン・モードはリセットされ(ブロッ
ク318)、文字レジスタはラン文字レジスタに複写さ
れる(ブロック320)6全ての短縮されたデータが使
用され且つチャネル・データのセットの全てのバイトが
短縮解除されるまでプロセスは継続する。 第11図のブロック310の文字復号プロセスは第3−
2図に示す。例えば、第11図のブロック308で、バ
イトが反復されないときはラン・モードは継続されない
ことを示し、ノー・ラインを経由してブロック310に
進む。即ち、第12図のブロック330で、最初のビッ
トの統計が取出されるアト1ノスADDRはlにセット
される。非ラン・モードでは、各ビットは第12図に示
す文字復号プロセスにより復号される。復号されるバイ
トの8ビツトの各々について統計が取出され、第14図
に示す復号プロセスによりビットが復号される。そして
更新された統計は再び統計表に記憶される。最初のビッ
トの統計が取出されるアドレスは、前述のようにブロッ
ク330で1にセットされる。ブロック332で、復号
ビットはDBITレジスタに入力される。DBITレジ
スタで復号された最初のビットは文字レジスタの最上位
ビットに記憶される。次のビットの復号のため、ブロッ
ク334で、アドレスADDRをlビット左シフトする
ことにより新しい統計表アドレスが生成すると同時に当
該ビットにDBIT−を書込む。復号された次のビット
は文字レジスタの次の最上位ビットに記憶される。これ
は、ブロック336で、文字レジスタの文字を左シフト
し該レジスタにDBITを書込むことにより行われる。 判定ブロック338に示すように、前記プロセスは8回
反復され、全てのビットを復号して文字レジスタに入れ
る。 第1]図のブロック322のラン事象復号は第13図に
示す。統計表のアドレス0はラン・モードに使用される
。それゆえ、第13図のブロック340でアドレスAD
DRはOにセットされる。そして復号されるビットはブ
ロック342でDBITレジスタに入力され、ラン事象
を復号するためにビット復号が実行される。 第12図のブロック332のビット復号プロセス3 は第14図に示す。ブロック350で、ADDR信号に
より指定されたアト1ノスで統計M及びKが統計表から
取出される。統計Mは推測値を示す1ビツト値であり、
統計には2ビツトの確率値である。統計には、1から4
までの数を選択できる。統計M及びKは第15図に示す
データ・ビット言1算のプロセスを用いてビットを復号
するのに使用される。ブロック352のデータ・ビット
計算プロセスで、ビットが復号されI)BITレジスタ
に記憶される。そしてブロック354で、復号されるデ
ータに統計を適応させるように統計は更新される。これ
は第1O図に示す統計計算プロセスで行われる。統計M
及びKで新しい統計が計算された後、ブロック356で
、統計M及びKはADDR信号により指定されたアドレ
スで再び統計表に記憶される。 第15図は第14図のブロック352のデータ・ビット
計算プロセスを示す。復号プロセスはコード化プロセス
と同じタイプのAレジスタ及びCレジスタを使用する。 Aレジスタは正規化レジスタでありコード化プロセスと
同じように使用される。本発明4 の良好な実施例では、Aレジスタ及びCレジスタはどち
らも4ビットを有する。復号サイクルのための第4図の
初期化ステップでは、Aレジスタ及び←レジスタはどち
らも0になるように初期化される。そして短縮データの
最初の4ビツトはCレジスタにシフトされる。第15図
のブロック700の最初のステップはデータ・ビットを
計算するため最大確率記号(MPS)がコード化された
か最小確率記号(LPS)がコード化されたかを判定す
る。Cレジスタで減算が試行され、MPSがコード化さ
れたかLPSがコード化されたかを判定する。確率係数
PFは統計Kから生成される。PFはAレジスタ及びC
]ノジスタで算術演算を実行するために使用される4ビ
ツト値である。確率係数PFは第9図のコード計算プロ
セスの場合と同様に統計Kから変換される。 Cレジスタの内容からPFを引き、もしCレジスタに借
りが要求されれば、LPSがコード化されているに相違
なく、さもなければ、MPSがコード化されている。判
定ブロック700の結果がLPSなら、ブロック710
でAレジスタはOにリセットされ、プロツク712でC
レジスタかに同左シフトされる。Cレジスタから出るビ
ットは破棄され、Cレジスタに短縮されたデータが書込
まれる。LPSがあることは判定されているから、コー
ド化プロセスで間違った推測がなされたに相違なく、ブ
ロック714でDBITはMの値の逆数にセットされる
。MPSが決定されている場合は、コード化プロセスで
正しい推測がなされているに相違ないから、ブロック7
01で、DBITレジスタは値Mにセットされる。ブロ
ック702でCレジスタの内容から確率係数PFを引く
。新しい4ビツト差は再びCレジスタに記憶される。P
F−tIAレジスタの内容から引き、新しい差は再びA
レジスタに記憶される。判定ブロック704で、もし引
算のプロセスでAレジスタに借りがあれば、ブロック7
06及び708で、Aレジスタ及びCレジスタはどちら
も1ビツトずつ左シフトされる。Aレジスタは0を書込
み、Cレジスタは短縮されたデータのビットが書込まれ
る。Cレジスタからシフトされたビットは破棄される。 短縮データをCレジスタにシフトするとき、桁上6 げを防ぐための詰込みビットは除去されねばならない(
第6図のコード計算プロセス参照)。詰込みビットは、
次のコード・バイトの最上位4ビツト全O又は0001
−があとに続く全1バイトにより識別される。もし全1
バイトに続く4ビツトが全0であれば、動作は行われず
、4個のOビットが破棄されるだけである、即ちCレジ
スタへのシフトは行われない。もし全1バイトに続く4
ビツトが0001であれば、Cレジスタの内容は1増加
され、再びCレジスタに記憶される。この場合、4ビツ
ト0001も破棄され、Cレジスタにはシフトされない
。もし全1バイトに続く4ビツトが全0でもなく 00
01でもなければ、全1バイト及び後続のバイトはコー
ド・ストリムに挿入された特別の文字である。これらの
特別の文字は、セットの間を区切るか又はレコードの終
りを識別する、セット文字の終り又はレコード文字の終
りである。コード・ストリームでセット文字又はレコー
ド文字の終りが現われると、全てのデータ・ビットが復
号され且つCレジスタの内容が全0になる、即ちコード
化プロセスの開始条件になるまで7 復号プロセスは継続される。 短縮解除即ち復号シーケンスのチャネル速度は最もタイ
ム・クリティカルである。トリーの1番目のレベルのデ
ータ・ビットは、次に最も高いトリー・レベルのビット
を復号するのに必要なトリー・アドレスを引算するため
に復号しなければならない。統計表アクセス時間が復号
サイクル時間に等しい、単なるオーバラップの場合、2
つの隣接する統計位置が■番目のレベルのデータ・ビッ
トの可能な結果毎に1つ取出される。下位のアドレス・
ビットが既知であるとき、前記下位のビットは制御信号
になり、所要の統計を選択し短縮装置に送付する。同時
に、統計適応プロセスは該統計を操作し適切なデータ・
レジスタでそれを置換える。そしてデータ・レジスタは
統計表に再書込みされる。2つの独立したデータ・レジ
スタ・メモリ装置の要求は2重ボート・メモリの使用に
より解決することができる。2重ボート・メモリは2つ
の異なるメモリ・アドレスに対し読取り書込みを同時に
行う。1つのトリー・レベルで読取りもう1つのトリー
・レベルで書込むとき、8 レベルのアドレスは異なることが保証される。それゆえ
、統計表は読取り中は決して更新されない。 本発明による短縮装置で使用されるプロセスの流れの更
に詳細な説明は米国特許第4286256号、同第44
.63342号及び同第4.467317号明細書を参
照されたい。本発明による短縮装置はこれらの3特許の
改良である。主たる改良点として、2つの統計表が符号
器及び復号器の各々に包含され、統計表の2重化は共有
のハードウェア、即ち1つの符号器又は復号器の使用を
可能にするとともに、システムに互換性のあるフォーマ
ットを2倍のスループット・データ速度で可能にする。 ハードウェアの数が少なI−1れば少ないほど費用は安
くなる。 第4図のコード化プロセスはたぶん前述の米国特許第4
467317号明細書により最もよく理解される。 該特許で使用されているように、第】のレジスタはレジ
スタCであり、第2のレジスタはレジスタAである。良
好な実施例では、レジスタA及びCの各々は4ビツトを
有し、各々がシフト・レジスタとして作用するようにプ
ログラムされている。レジスタC9 は、コード化サイクルでは圧縮されたデータを含むが、
復号サイクルでは圧縮されないデータを含む。 第15図において、ブロック700で最大確率記号(M
PS)が示され、ブロック702で圧縮中に計算された
合計からの差をとり、圧縮されないデータを生成する外
は、復号プロセスはコード化プロセスにきわめて類似し
ている。Aレジスタ制御はコード化サイクルの場合と同
じである。Aレジスタで借りの発生は正規化を生じるが
、借りの不足は制御動作を起こさせない。復号中、判定
ブロック700からLPSが決定されると、Aレジスタ
はブロックでリセットされ、Clノジスタはにビット左
シフトされ、0よりもむしろ復号される圧縮データが書
込まれる。 F6発明の効果 本発明によれば、既知の最大時間内にデータをコード化
し復号することができるデータ短縮システムが提供され
る。 本発明によれば、全システムについて同じフォーマット
を保持しつつ更に高速のデータ速度を取得できるデータ
短縮システムが提供される。 n 更に本発明によれば、異なるスルーブツト速度を用いる
短縮プロセスでフォーマット互換性が維持される高機能
の2進算術コード化プロセスが提供される。 更に本発明によれば、コード化及び復号プロセスの上方
及び下方フォーマット互換性を可能にする改良された短
縮方式が提供される。 更に本発明によれば、増大したスループット速度及び標
準的なスルーブツト速度のどちらでコード化された媒体
も復号できる上方及び下方フォーマット互換性を提供す
ると同時に今日のレコード処理システムが要求するより
高い速度でデータを圧縮し処理するためにデータに固有
のスループット速度に適応できる短縮プロセッサが提供
される。 最後に本発明によれば、並列短縮装置の付加により増大
したスループット速度を持つ短縮システムに予測可能ス
ループット速度及びフォーマット互換性を提供すると同
時に複数の並列短縮システムを利用し且つデータ・スト
リームに適応可能な圧縮方式が提供される。 1
第1図は本発明に従って複数の並列接続された短縮プロ
セッサを有する周辺サブシステムの概要ブロック図であ
る。 第2図は第1図の2つの短縮プロセッサの相互接続の概
要図である。 第3図は第1図に示す1つの短縮プロセッサの詳細なブ
ロック図である。 第4図乃至第8図は第3図の符号器により実行される異
なる手順の流れ図である。 第9図は第3図に示す符号器の出力として確率の合計を
生成するコード化プロセスの流れ図である6第10図は
第3図の統計表に基づいた確率計算の流れ図である。 第11図乃至第15図は第3図の符号器の処理の流れ図
である。 12・・・・チャネル・アダプタ、16・・・・短縮装
置、17・・・・短縮プロセッサ、20・・・・Aバス
、25.29・・・・デマルチプレクサ/マルチプレク
サ、36・・・・符号器、38・・・・復号器、113
・・・・統計表、2 114・・・・符号器、115・・・・統計表、123
・・・・統計表、124・・・・復号器、125・・・
・統計表、132・・・・事象カウンタ、134・・・
・インタフェース制御部、136・・・記憶装置、13
8・・・・事象カウンタ、140・・・・記憶装置、1
42・・・・インタフェース制御部、144・・・・速
度整合バッファ。
セッサを有する周辺サブシステムの概要ブロック図であ
る。 第2図は第1図の2つの短縮プロセッサの相互接続の概
要図である。 第3図は第1図に示す1つの短縮プロセッサの詳細なブ
ロック図である。 第4図乃至第8図は第3図の符号器により実行される異
なる手順の流れ図である。 第9図は第3図に示す符号器の出力として確率の合計を
生成するコード化プロセスの流れ図である6第10図は
第3図の統計表に基づいた確率計算の流れ図である。 第11図乃至第15図は第3図の符号器の処理の流れ図
である。 12・・・・チャネル・アダプタ、16・・・・短縮装
置、17・・・・短縮プロセッサ、20・・・・Aバス
、25.29・・・・デマルチプレクサ/マルチプレク
サ、36・・・・符号器、38・・・・復号器、113
・・・・統計表、2 114・・・・符号器、115・・・・統計表、123
・・・・統計表、124・・・・復号器、125・・・
・統計表、132・・・・事象カウンタ、134・・・
・インタフェース制御部、136・・・記憶装置、13
8・・・・事象カウンタ、140・・・・記憶装置、1
42・・・・インタフェース制御部、144・・・・速
度整合バッファ。
Claims (14)
- (1)包含する短縮プロセッサの数がnであり、各短縮
プロセッサは1つの符号器と1つの復号器を有し、前記
符号器と復号器の各々が保有する統計表の数はmであり
、各短縮プロセッサはコード化するために等しいサイズ
のデータ・セットを処理する、算術2進短縮システムで
あって、 q=コード化されるデータ・セットの数 i=セット数 であり、 セットiは統計表にを使用する短縮プロセッサjにより
処理され、j及びkは j=iモジューロn k=(i/n)モジユーロm により規定され、 各短縮システムにM統計表を有するN短縮プロセッサ・
システムの場合、短縮システムで短縮プロセッサの数が
Nよりも少ない構成は、 m≧M n≧N により規定され、m、n、M及びNは0よりも大きい整
数であり、nは該システムにある短縮プロセッサの最大
数Nのうちから使用された短縮プロセッサの数、mは各
短縮プロセッサにある最大数Mのうちから使用された統
計表の数である データ短縮システム。 - (2)請求項(1)記載のデータ短縮システムであって
、 コード化するための該等しいサイズのデータ・セットが
512バイトであるデータ短縮システム。 - (3)請求項(1)記載のデータ短縮システムであって
、 n=4、m=2であるデータ短縮システム。 - (4)請求項(1)記載のデータ短縮システムであって
、 N=8、M=2であるデータ短縮システム。 - (5)請求項(1)記載のデータ短縮システムであって
、 N=8、M=2、n=4且つm=2であるデータ短縮シ
ステム。 - (6)請求項(1)記載のデータ短縮システムであつて
、 N=8、M=2、n=8且つm=1であるデータ短縮シ
ステム。 - (7)データ・セット情報を圧縮するデータ短縮システ
ムであって、 データを圧縮する少なくとも1つの符号器、データを圧
縮解除する少なくとも1つの復号器、各符号器に関連し
た複数の統計表、及び 各復号器に関連した複数の統計表、 を含み、 前記統計表の各々はそれらの関連した符号器又は復号器
がそれぞれに送られた1つのデータ・セットの全てを処
理するときの統計プロセスを表わすステートメントを記
憶し、それらの関連した符号器又は復号器の前記統計表
の各々は、その関連した符号器又は復号器の各統計表が
、その関連した符号器又は復号器が該データ・セットを
処理するにつれて、後続するデータ・セットを次々と受
入れるように、順次に動作可能であり、前記複数の統計
表の各々は、後続するデータ・セクションが各記憶装置
に送られるにつれて、学習プロセスのように始まりから
終りまでそしてまた始まりから順次に1つのデータ・セ
ットからの統計データを記憶するように動作可能であり
、 それによって、1つの復号器に関連した1つの統計表は
、1つの符号器に関連した1つの統計表の統計プロセス
により圧縮された1つのデータ・セットの圧縮解除の統
計を記憶する データ短縮システム。 - (8)請求項(7)記載のデータ短縮システムであって
、 該短縮システムは算術2進圧縮システムを使用し該記憶
装置は圧縮及び圧縮解除の処理で生じた統計を記憶する データ短縮システム。 - (9)請求項(7)記載のデータ短縮システムであって
、 4つの符号器及び4つの復号器を含み、各符号器及び各
復号器は2つの記憶装置を含む データ短縮システム。 - (10)請求項(7)記載のデータ短縮システムであつ
て、 8つの符号器及び8つの復号器を含み、各符号器及び各
復号器は1つの記憶装置を含む データ短縮システム。 - (11)複数の短縮プロセッサを含む算術2進短縮シス
テムであって、短縮プロセッサの各々は1つの符号器と
1つの復号器を有し、前記符号器及び復号器の各々は複
数の統計表を有し、各短縮プロセッサはコード化のため
に等しいサイズのデータ・セットを処理し、 前記統計表の各々はそれらの関連した符号器と復号器が
それらのデータ・セットを処理するときの統計収集プロ
セスを表わすステートメントを記憶し、後続するデータ
・セットがそれらの関連した符号器又は復号器に送られ
るにつれて各データ・セットの統計を記憶するように動
作可能であり、 それによって、1つの復号器に関連した1つの統計表は
1つの符号器に関連した1つの統計表の統計収集プロセ
スにより圧縮された1つのデータ・セットの圧縮解除の
統計を記憶する データ短縮システム。 - (12)請求項(11)記載のデータ短縮システムであ
って、 等しいサイズのデータ・セットは512バイトを含む データ短縮システム。 - (13)請求項(11)記載のデータ短縮システムであ
って、 4つの符号器と4つの復号器を含み、各々の符号器及び
復号器は2つの統計表を含む データ短縮システム。 - (14)請求項(1)記載のデータ短縮システムであっ
て、 フォーマット互換性のためにN=mxnの関係が維持さ
れる データ短縮システム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US44168189A | 1989-11-22 | 1989-11-22 | |
| US441681 | 1989-11-22 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH03186923A true JPH03186923A (ja) | 1991-08-14 |
| JPH0774985B2 JPH0774985B2 (ja) | 1995-08-09 |
Family
ID=23753862
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2299985A Expired - Fee Related JPH0774985B2 (ja) | 1989-11-22 | 1990-11-07 | データ圧縮システム |
Country Status (3)
| Country | Link |
|---|---|
| EP (1) | EP0429306B1 (ja) |
| JP (1) | JPH0774985B2 (ja) |
| DE (1) | DE69028601T2 (ja) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6643765B1 (en) | 1995-08-16 | 2003-11-04 | Microunity Systems Engineering, Inc. | Programmable processor with group floating point operations |
| CN108134805B (zh) * | 2014-08-08 | 2021-04-30 | 安科讯(福建)科技有限公司 | 一种数据同步压缩还原算法及装置 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6228895A (ja) * | 1985-07-31 | 1987-02-06 | 東芝テック株式会社 | 電子キヤツシユレジスタ |
| JPS62191914A (ja) * | 1986-02-18 | 1987-08-22 | Fuji Facom Corp | デ−タ蓄積装置 |
| JPS636172A (ja) * | 1986-06-26 | 1988-01-12 | 三菱レイヨン株式会社 | 樹脂補強用繊維 |
| JPH01119119A (ja) * | 1987-11-02 | 1989-05-11 | Oki Electric Ind Co Ltd | イメージデータの帯域圧縮装置 |
-
1990
- 1990-11-07 JP JP2299985A patent/JPH0774985B2/ja not_active Expired - Fee Related
- 1990-11-21 DE DE1990628601 patent/DE69028601T2/de not_active Expired - Lifetime
- 1990-11-21 EP EP19900312698 patent/EP0429306B1/en not_active Expired - Lifetime
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6228895A (ja) * | 1985-07-31 | 1987-02-06 | 東芝テック株式会社 | 電子キヤツシユレジスタ |
| JPS62191914A (ja) * | 1986-02-18 | 1987-08-22 | Fuji Facom Corp | デ−タ蓄積装置 |
| JPS636172A (ja) * | 1986-06-26 | 1988-01-12 | 三菱レイヨン株式会社 | 樹脂補強用繊維 |
| JPH01119119A (ja) * | 1987-11-02 | 1989-05-11 | Oki Electric Ind Co Ltd | イメージデータの帯域圧縮装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0774985B2 (ja) | 1995-08-09 |
| EP0429306A2 (en) | 1991-05-29 |
| DE69028601D1 (de) | 1996-10-24 |
| DE69028601T2 (de) | 1997-03-13 |
| EP0429306A3 (en) | 1992-09-23 |
| EP0429306B1 (en) | 1996-09-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5109226A (en) | Parallel processors sequentially encoding/decoding compaction maintaining format compatibility | |
| US5175543A (en) | Dictionary reset performance enhancement for data compression applications | |
| JP2534465B2 (ja) | デ―タ圧縮装置および方法 | |
| US5488364A (en) | Recursive data compression | |
| US8504710B2 (en) | System and methods for accelerated data storage and retrieval | |
| US5627995A (en) | Data compression and decompression using memory spaces of more than one size | |
| US9792308B2 (en) | Content estimation data compression | |
| EP0443255A2 (en) | Method and apparatus for carrying-over control in arithmetic entropy coding | |
| US20100274926A1 (en) | High-speed inline data compression inline with an eight byte data path | |
| JPH07283739A (ja) | 短ブロックのデータを圧縮、伸長するための方法、及び装置 | |
| JP2001522548A (ja) | 損失のないデジタルデータ圧縮方法および圧縮装置 | |
| KR19980081237A (ko) | 데이터 압축/복원 방법 및 압축 장치 | |
| CN1426629A (zh) | 使用多个编码器的优化无损压缩的方法和装置 | |
| US7796059B2 (en) | Fast approximate dynamic Huffman coding with periodic regeneration and precomputing | |
| JPH03186923A (ja) | データ圧縮システム | |
| US7683809B2 (en) | Advanced lossless bit coding | |
| JP7767561B2 (ja) | 受信したデータを処理する装置 | |
| CN112738124B (zh) | 硬件友好的数据压缩方法、压缩器 | |
| CN113346913B (zh) | 使用减量的出现次数的数据压缩 | |
| CN116505952A (zh) | 红外码压缩方法、装置、智能设备及存储介质 | |
| JP7849406B2 (ja) | ストレージシステム | |
| US5745603A (en) | Two dimensional context model obtained without a line buffer for arithmetic coding | |
| Bassiouni et al. | Enhancing arithmetic and tree-based coding | |
| JPH03104421A (ja) | データ圧縮方式、データ圧縮装置およびデータ復元装置 | |
| JPH02218224A (ja) | データ転送方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080809 Year of fee payment: 13 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080809 Year of fee payment: 13 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090809 Year of fee payment: 14 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090809 Year of fee payment: 14 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100809 Year of fee payment: 15 |
|
| LAPS | Cancellation because of no payment of annual fees |