JPS5918735B2 - コ−ド・ワ−ド発生装置 - Google Patents

コ−ド・ワ−ド発生装置

Info

Publication number
JPS5918735B2
JPS5918735B2 JP52088910A JP8891077A JPS5918735B2 JP S5918735 B2 JPS5918735 B2 JP S5918735B2 JP 52088910 A JP52088910 A JP 52088910A JP 8891077 A JP8891077 A JP 8891077A JP S5918735 B2 JPS5918735 B2 JP S5918735B2
Authority
JP
Japan
Prior art keywords
register
state
line
code word
length
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.)
Expired
Application number
JP52088910A
Other languages
English (en)
Other versions
JPS5330211A (en
Inventor
リチヤ−ド・フエアバンクス・ア−ノルド
イツアツク・デイシヨン
ノ−マン・ケン・オウチ
マ−シヤル・アイ・シヨア
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS5330211A publication Critical patent/JPS5330211A/ja
Publication of JPS5918735B2 publication Critical patent/JPS5918735B2/ja
Expired 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/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/4025Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code constant length to or from Morse code conversion
    • 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/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/42Conversion 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

Description

【発明の詳細な説明】 本発明は、固定長ワードから可変長ワードヘのエンコー
デイング、及び可変長ワードから固定長ワードヘのデコ
ーディングに関する。
更に具体的には、本発明は、異なつたアルハベツトのサ
ブストリングの間で推移(transition)が生
じる時の不明瞭性を解決する機構に関する。これによつ
て、エンコーデイングにおける最適の可変長ワードの割
当てが可能となる。更に、可変長コード・ワードのコン
マ゜フリー(comma−free)のビット。ストリ
ームを解剖することがそれによつて可能となり、且つデ
コーディングにおいて可変長ワードとその固定長表現と
の間に存在する不明瞭性を解決することができる。固定
長から可変長へのエンコーデイングは、可変長コード・
ワードc(a)を固定長コード・ワードb(a)表現形
式へ割当てることを含む。
各々の固定長コード・ワードは源アルハベツト(sou
rcealp一habet)Aにおける文字aを表わす
。b(a)は、A1及びA2の双方における文字aを表
わすことができるので、エンコーデイング過程及びデコ
ーディング過程の双方において不明瞭性が生じる。
エンコーダは、最適の可変長コード割当てをするために
、1つのアルハベツトから他のアルハベツトヘの推移が
何時生じたかを決定しなけれぱならない。デコーダは、
コンマ・フリーのビット・ストリームを解剖するために
、又固定長コ−ド・ワードb(a)を、受取られた可変
長コード・ワードc(a)へ正しく割当てるために、ど
のアルハベツトがエンコーダによつて選択されたかを決
定しなければならない。等して固定長コード・ワードを
使用する文字アルハベツトを機械に貯蔵し、転送し且つ
処理することには、コスト及びパフオーマンス上の利益
が存在する。
利益としては、貯蔵セルや貯蔵レジスタのサイズ、デー
タ・バスのための導体の数、文次境界を追跡するための
情報上の総経費が逓減されること、又は不要となること
等がある。しかし可変長表現は、平均した圧縮コード・
ワード長が固定コード・ワード長より短い場合に、転送
及び貯蔵上魅力的である。英文テキストは、いくつかの
異なつたアルハベツトからの固定長コード・ワードによ
つて機械により記述される場合がある。
例えば、大文字A,B,・・・・・・Zのアルハベツト
が存在し、小文字A,b,・・・・・・zのアルハベツ
トが存在し、数字及び記号1,2,3・・・・・・?、
+のアルハベツトが存在する。長さLの固定長コードで
あつて、その容量2LがT(大文字の数及び小文字の数
その他を加えたもの。)より大であるか又は等しいよう
な固定長コードを構成することは可能である。しかし2
L<Tの場合、いくつかの固定長コード・ワードb(a
)は不明瞭となろう。コスト上の差引きを考えると、b
(a)の長さLの増加が、不明瞭性を解決するために使
用する機構よりもずつと高価になる場合がある。前述し
た如く、可変長コード・ワード表現が、固定長コード・
ワードを圧縮したものとなる場合に、固定長から可変長
へのエンコーデイングが魅力的となる。
圧縮は、源アルハベツトと関連した或る統計上の規則を
使用することによつて達成される。最も多く使用される
規則は、発生の相対的頻度に基づいて文字を配列し、最
も短い長さのコード・ワードを最も頻度の高い文字へ割
当てることである。これによつて、最もまれに発生する
文字は、非常に長いコード・ワードを有することになる
。コード・ワード長の上限はレジスタ・サイズの上限で
ある。長いレジスタの必要性を除くために、固定したレ
ジスタ長よりも長い可変長コード・ワードを有する頻度
の少ない文字は、クリアな(即ち、エンコードされない
)文字に゛よつて後続された特定の可変長接頭辞(Pr
efix)と共に転送されることなる。この事は、エン
コーダ出力が、頻度の高い可変長コード・ワード・シー
ケンスと特別のプレフイツクスを有する頻度の低い固定
長コード・ワードとから構成されることを意味する。エ
ンコーダ出力は、可変長ワードに関する限り、連続した
コンマ・フリーのビツト・ストリームと見なすことがで
きる。可変長ワードの間にコンマ、分離記号等を置くこ
とは、圧縮の利益を著しく減少させる。先行技術は、固
定長及び可変長のエンコーダについて多くの例を有して
いる。
例えば、米国特許第3237170号は、源アルハベツ
ト変化の相対的頻度の統計値に合せて可変長コード・ワ
ードの割当てを変化させるように働く適応性圧縮装置を
説明している。米国特許第3394352号は各固定長
ワードを異なつた構造のエンコーダへ並列に印加してい
る。この特許においては、多くのコード・ワードの中の
最短コード・ワードがデコーデイングを可能とするタグ
と共に使用される。前記米国特許第3237170号に
おいては、出力コード・ワードが変化するが、依然とし
て各各の人力文字と出力文字との間では、独特の1対1
の関係が維持される。同様の事は、前記米国特許第33
94352号についても言える。この特許では、出力タ
グは使用されるべきエンコーダもしくはデコーダを指定
する。これに対し、本発明が問題とすることは、先ずエ
ンコーダにおいて、次いでデコーダにおいて不明瞭な語
(Term)を解析することである。本発明はマルコフ
・プロセツサ(MarkOvprO一CessOr)が
記憶特性を有するという観点、及びその状態推移が、固
定長及び可変長コード・ワードのラン(Run)に関し
て実験的に引出された統計値を反映するように修正され
得るという観点に立脚するものである。
本発明は、文脈を設定し且つサブストリング・アルハベ
ツトを指定するために使用される。例えば、現在の固定
長コード・ワードが、K個の大文字のランを与えられる
ような大文字である可能性は小さい。他の例としては、
任意の長さの小文字のランの後に、b(a)を大文字へ
割当てる可能性も全く無視できよう。これらの観点に立
てば、不明瞭な文字が先行する語のランと同じアルハベ
ツトに属するか又は異なつたアルハベツトに属するかを
決定する1群の規則を作ることができる。実際の規則は
、実験的に引出された統計値と源アルハベツトとが変化
するのに応じて変化する。本発明のコード・ワード発生
装置は、固定長コード・ワードb(a)に応答して、ア
ルハベツトA1に対する可変長コード・ワードc(Ai
)、アルハベツトA2に対する可変長コード・ワードc
(Aj汲びこれらの可変長コード・ワードに関連するパ
ス信号Sを供給するエンコーデイング手段を含む。
AiはアルハベツトA1に属する文字を表わし、Ajは
アルハベツトA2に属する文字を表わす。パス信号Sは
マルコフ・プロセツサの状態推移パスi又はjを指定す
るもので、複数の異なつた状態(r種類)を取り得る状
態推移手段へ供給される。状態推移手段はパス信号Sに
応答して次の状態(p種類のうちの1つ、ただし1くp
<r)へ推移し、予め決められた状態推移が所定数続い
た時点でアルハベツトA1及びA2の切替えを行なう。
この切替えは制御信号gによつて示される。後述する実
施例では、g−0がアルハベツトA1に対応し、g=1
がアルハベツトA2に対応している。エンコーデイング
手段から供給されたc(Ai)及びc(Aj)は、この
信号gによりいずれか一方だけが選択されて出力される
。本発明は、実際の多数の機械状態が、表現目的のため
のより少ない数の状態へとマツプされることができると
いう事実を有利に利用するものである。
これは、同一アルハベツト中の文字のランは、機械を機
械状態のサブセツトの1つ又は他の1つに置くであろう
という事実に起因する。この事は、エンコーデイングも
しくはデコーデイングを遂行するのに必要なメモリ及び
処理の量を減少する。一連の可変長コード・ワードをコ
ンマ・フリーのビツト・ストリームとして受取るに当つ
て、デコーダはストリーム中の文字を解剖し且つ所与の
c(a)がb(Ai)を表わすかb(Aj)を表わすか
を決定するエンコーデイング論理とマルコフ・プロセツ
サとを含む。この点に関して、マルコフ●プロセツサは
、固定長ワード・ストリームをエンコードする時のマル
コフ・プロセツサと同じ状態のシーケンスをたどる。可
変長コード・ワードCは、所与のアルハベツトの各構成
要素へ1対1で割当て可能であることが知られている。
コード・ワードの長さLは、アルハベツト中の語の相対
的発生頻度Pに対して逆の関係を有する。アルハベツト
の語へ割当てられた可変長コード・ワードの平均の長さ
を最小化するアルゴリズムは、当技術分野において知ら
れるところである。例えば、米国特許第3675211
号、第3675212号、第3701111号を参照さ
れたい。これら特許は、全体的又は部分的にホフマン氏
の労作「ア・メソツド・フオ一・ザ・コンストラクシヨ
ン・オブ・ミニマム・リタンタンシ一1コーズ(AMe
thOdfOrtheCOnstructiOnOfM
inimumRedundancyCOde\PrOc
eedingsOfthelRESeptemberl
952、PageslO98−1011)に基づいてい
る。第1表を参照すると、そこには2つのアルハベツト
A1及びA2が示されている。
A,の各々の構成要素AiはAiεA1と示され、数字
1、2、3、・・・・・・7より構成される。同様にA
jεA2は小文字のローマ字より構成される。相対的頻
度P(Ai′X))次に最適長のホフマン・エンコード
可変長ワードC(Aj)が続く。コード・ワードC(A
i)の長さL(Ai)は便宜上次の列に示されている。
各エントリイについて期待される長さは積P(Ai)X
Ii.ai)から形成される。各々のホフマン・コード
は、各アルハベツトについて独立的に計算された。最小
平均のホフマン・コード・ワード長L(Ai)は、記号
当り0.34ビツトであり、L(Aj)は記号当り0.
25ビツトであることに注意されたい。源アルハベツト
に関して最適化されたコードは、ストリングが連鎖され
るときには最適化されないこととなる。更に頻度の少な
い構成要素の長さに注意すべきである。第2表を参照す
ると、そこにはアルハベツトで指定された固定長コード
・ワードのラン、不明瞭語、及び動作の規則が示される
本発明を説明するに当つては、ランやその統計値や源ア
ルハベツトは全く任意的なものとする。この表において
、各々の文字AiはアルハベツトA1の構成要素であり
、各々の文字AjはアルハベツトA2の構成要素である
。この表において、同一アルハベツト中の文字を表わす
固定長コード・ワードのランb(Ai)、b(Ai)、
・・・・b(Ai)は、次の文字をエンコードもしくは
デコードするために、機械が同一アルハベツト中にとど
まるべきことを意味する。
ランが1つの不明瞭文字7によつて中断される場合、機
械は同一アルハベツト中にとどまる。この点に関して、
不明瞭文字はアルハベツトの変化を示すものであるかも
知れない。2つの不明瞭語27によつて中断されたアル
ハベツトA1中のランについては、次の文字をエンコー
ドもしくはデコードするために他のアルハベツトA2へ
変化する。
4つの連続した不明瞭語2722によつて中断されたA
2中のランについては、他のアルハベツトA,への転移
がなされねばならない。
第3表は第2表の規則を実行する有限状態機械を表形式
にした、状態制御器に貯蔵される状態推移表を示し、第
1図は問題とするランを認識するのに適した有限機械状
態推移マツプである。
機械は、4の深度に至るまで記憶するのに十分な数の状
態を有しなければならない。この事は、4つの不明瞭語
によつて中断されたアルハベツトA2中の文字のランを
支配する推移規則を考慮する必要がある。状態推移表は
、装置が或る初期の内部状態にあるものとし、次いでラ
ンの各々の組合せについて新しい状態が定義され初期状
態からその状態へ装置が移行するものとして形成されて
いる。装置が初期状態から移行したかも知れない次の状
態の各々について、新しい状態を定義するこの過程が反
復される。第3表をグラフにしたものが第1図である。
第3表及び第1図は次のように解釈する。装置が初期状
態1にあり、文字b(Ai)がエンコーデイングのため
に受取られたと仮定すると、機械はパスiを介して状態
2へ移行する。
もしb(aりがエンコーデイングのために受取られたの
Jであれば、装置は同一の状態1にとどまる。
状態1から開始して、装置が一連の語b(Ai)b(A
i)、・・・・b(Ai)を受取つたならば、それは連
続的内部状態1,2,3,4を通過し状態5にとどまる
。同様に、装置が他の任意の内部状態にあり、b(Aj
)、・・・・b(Aj)のランを受けると、それは状態
1へ戻る。連続的機械状態を接続するパス(Path)
はSi又はSjとして示される。同一アルハベツト中の
語のランは、装置を状態1又は状態5のどちらかへ移行
させるので、内部の機構状態が接続される。これについ
ては、第2図と関連して説明することにする。第2図を
参照すると、機械の現在の状態を貯蔵するレジスタ7と
状態から状態への追跡機構が示される。
レジスタ7の内容は、エンコーデイングもしくはデコー
デイング装置の内部状態を示し、且つ読取り専用貯蔵装
置(ROS)9の内容にアクセスするために使用される
。ROS9の各アドレス位置には、次に取り得る2種類
の状態Si及びS1と、アルハベツトA1又はA2の選
択を指定するパラメータgとが記憶されている。Si又
はSjの選択は線1上の信号Sによつて指定される。R
OS9は、レジスタ7の内容によつてアクセスされる。
そのアドレスに貯蔵されたデータは、データ・レジスタ
11へ転送される。次の状態情報は線13及び15へ送
られ、パラメータgは線17を介して状態レジスタ19
へ伝えられ、線21を介してレジスタ状態制御器23の
外へ伝えられる。通路選択を表わす線1上の2進表示は
、次の状態アドレスがレジスタ11からレジスタJ■■
存在すれば、適当な左方列エントリイが選択される。も
し線1上に1が存在すれば適当な右方列エントリイが選
択される。第3図を参照すると、固定長から可変長への
エンコーダ51が線49を介して可変長から固定長への
デコーダ53へ接続されるプロツク図が示される。
エンコーダは、エンコーデイングROS33及び関連し
たアタセス手段と、状態から状態への追跡を行なうため
のレジスタ状態制御器23と可変長コード・ワードc(
a)を線49上に置くための出力シフト・レジスタ47
とを含む。デコーダ53は、デコーデイングROS65
と、シフトアクセス回路と、選択回路網68と、エンコ
ーダ論理状態制御器51′とを含む。各々の固定長のデ
コードされたワードb(a)は、選択回路網68を介し
てゲートされ、同時に出力通路25′及び制御器51′
へ印加される。エンコーデイングROS33とデコーデ
イングROS65の内容は、それぞれ第4表及び第5表
に示される。
レジスタ状態制御器23の詳細は第2図に示され、選択
回路網68及びエンコーダ論理状態制御器5『は第7図
に示される。第4表を参照すると、そこには1組の索引
テーブルが示される。
各々のb(Ai)について、対応するc(Ai)、長さ
L1パスSが見出される。同様の事は、各々のb(Aj
),c(Aj),L,Sについても言える。例えばb(
Ai)=7及びb(Aj)=3の間で不明瞭性が発見さ
れるかも知れない。これらの双方において、c(a)=
110である。更に或る固定コード・ワード、例えばb
(Ai)=4、5、6及びb(Aj)=011、2、4
、7はc(a)−111を有する。プレフイツクス11
1は不明瞭性を示すものではないが、固定コード・ワー
ドb(a)が直後に続いておりそれがエンコードされな
かつたことを示す。相反した場合が第5表のデコーデイ
ングROSの内容に示される。
ここでシーケンス111は固定コードにあるものとして
直接的に示される。迫加の例は、問題にしているc(a
),b(a)がクリア又は圧縮した文を表わすかどうか
を示す。第4図及び第5図を参照すると、そこには固定
長から可変長へのエンコーダ51の詳細とサイクルとが
示される。
この実施例において、各々の固定長ワードb(a)を表
わすビツトは、並列に且つワードごとに直列に印加され
るものと仮定する。線25上でパルス前縁を検出すると
、クロツキング配分回路網28のクロツキング動作を開
始するために、前縁検出器26によつて信号が与えられ
る。回路網28によつて与えられる主たるサイクルは第
5図に示される。サイクル4はANDゲート27を介し
て、アドレス・レジスタ31と出力レジスタ47の所定
部分へデータをゲートさせる。ゲート27の付勢時間は
エンコーデイング・サイクルを限定する。データがレジ
スタ31にロードされるや否や、エンコーデイングRO
S33の読取りサイクルが始まる。即ち、b(a)によ
つて限定されたロケーシヨンに貯蔵されたデータがアク
セスされ、ROSデータ・ロード・サイクル8の間にR
OSデータ・レジスタ35へ転送される。ROSデータ
・レジスタ35は、可変長フイールドc(Ai)、長さ
L1選択されるパスS1及びc(Aj)に関する対応フ
イールドと1対1になるように区分されている。エンコ
ーダ51は選択レジスタ37,39,41を含む。
選択レジスタ37は、線21上のg信号に応答して、2
つの可変長ワードのいずれが線45を介して出力レジス
タ47に置かれるべきかを決定する。もしg−0であれ
ば、c(Ai)が入れられる。もしg=1であれば、レ
ジスタ35中のc(Aj)がレジスタ47へ転送される
。選択レジスタ39は、シフトカウンタ43を制御する
ために、選択されたレジスタ35中のc(a)に対応す
る長さを選択する。同様の事は、パスSに関する選択レ
ジスタ41についても言える。データ・レジスタ35が
サイクル8の間にロードされ、適当な可変長ワード及び
関連したパラメータが選択された後に、出力レジスタ4
7がロード・サイクルOの間にロードされる。レジスタ
47の内容は、シフト・カウンタ43の内容を逓減させ
且つ線44を介してレジスタ47へシフト信号を与える
ことによつて、所定数の段だけシフトされ、逐次に線4
9へ印加される。第7図及び第6図を参照すると、そこ
にはレジスタ及び選択回路を詳細に示したデコーダの論
理回路とサイクルとが示される。
可変長ワードc(a)又はそれより頻度が少ないが、1
11をプレフイツクスとして有する固定長ワードb(a
)が逐次に線49上で受取られ、レジスタ55へシフト
される。レジスタ55の所定数位置の内容が線61を介
してアドレス・レジスタ63へロードされ、他の位置の
内容は線59を介して選択回路網68中の選択器7モ送
られる。各デコーデイング・サイクル中のシフト量は、
状態制御回路5『にあるエンコーダ論理回路中におかれ
たレジスタ39′の内容によつて決定される。レジスタ
39′は、線40′を介してシフト制御回路57へカウ
ントを通過させる。カウントOへ逓減されるが、各々の
逓減によつて、レジスタ55の内容が左から右へ1ポジ
シヨンずつシフトされる。その結果、レジスタ63の内
容は、Lの制御の下にシフトされたレジスタ55の所定
ビツト位置によつて支配されることになる。次いでレジ
スタ63の内容は、デコーデイングROS65へアクセ
スする。アドレス・レジスタ63によつて限定されたロ
ケーシヨンの内容は、b(Ai),C/C,b(Aj)
,C/Cを含む。各々のb(a)には、クリア又は圧縮
形態(即ち、C/C)で転送された文字であることを表
わす1ビツトが付加されていることを想起されたい。選
択回路網68は、レジスタ67中に含まれる2つのb(
a)の選択された1つが線25′上におかれるようにす
る、レジスタ及び選択器を含んでいる。この選択は、制
御回路5『から線21′を介して受取られた状態信号g
の2進値に依存する。取出された固定長ワードb(a)
は、エンコーダ論理状態制御回路5『中のエンコーデイ
ングROS33′へ印加される。
これによつて、所与の可変長コード・ワードc(a)又
は転送された固定長文字が線49へ印加された時に、デ
コーダ53をエンコーダと同じ状態にする。その結果、
線2『上の状態gは、c(a)が対応する固定長コード
・ワードb(a)を表わすために選択された時点におい
て、工ンコーダの状態と同じでなければならない。次の
第6表は、エンコーダ51及びデコーダ53の動作を示
す。最後に第6表に基いて、第3図、第4図及び第7図
に示されているエンコーダ51及びデコーダ53の動作
を説明する。
仮定により初期状態は1であるから、レジスタ状態制御
器23(第2図)のレジスタ7にはROS9のアドレス
として1が入つており、従つてSi=010)Sj=0
01及びg=1がデータ・レジスタ11へ読出される。
s・及びs・は各々線13及び15を介して選択器3へ
供給され、gは線17及び状態レジスタ19を介して線
21へ出力される。この状態でエンコーダ51の線25
へ最初の固定長コード・ワードb(a)=5が供給され
ると、検出器26での前縁検出により回路28が駆動さ
れて、最初のデータ・ロード・サイクル4を開始しAN
Dゲート27を条件付ける。
この結果、線25上のb(a)=5はANI)ゲート2
7及びW29を通つてアドレス・レジスタ31及び出力
レジスタ47へロードされる。次いでエンコード読取り
サイクル[F]が開始され、エンコーデイングROS3
3(第4表)のアドレス5のところから、g=Oに対応
するc(Ai)=111、L=6及びS=1(jを指定
)と、g=1に対応するC(Aj)=01L=1及びS
=1とが読取られ、次のROSデータ・ロード・サイク
ル8においてROSデータ・レジスタ35にロードされ
る。前述のように、このとき選択レジスタ37,39及
び41への線21上にはg=1の信号が存在しているか
ら、選択レジスタ37はc(Aj)=0を受取り、選択
レジスタ39はL=1を受取り、選択レジスタ41はS
=1を受取る。c(Aj)及びLは次のシフトレジスタ
・ロード・サイクルOにおいて各々線45及び40を介
して出力レジスタ47及びシフト・カウンタ43へ供給
される。Sは線1を介して第2図の選択器3へ供給され
、線15上のSj=001をレジスタ7の方へ通過させ
る。従つて次の状態も1であるから、前と同じ内容がデ
ータ・レジスタ11へ読出される。一方、エンコーダ5
1においては、L=1がシフト・カウンタ43に供給さ
れているので、シフト・カウンタ43はシフト・サイク
ルOにおいて1つのシフトパルスだけを線44へ出力す
る。
この結果、出力レジスタ47は1回だけ右シフトされ、
その右端のビツト位置にロードされていたc(a・)=
Oが線49へ出力される。J 次のデータ・ロード・サイクル4では、b(a)=6が
AND,ゲート27及び線29を介してアドレス・レジ
スタ31及び出力レジスタ47へロードされる。
これによりエンコーデイングROS33のアドレス6の
ところから、g−0に対応するc(a)=111、L=
6及びS=1と、g=1に対応するc(a・)−10.
.L−2及びS=1がJROSデータ・レジスタ35へ
読出される。
今回も線21上の信号はg−1であるから、選択レジス
タ37はc(Aj)=10を出力レジスタ47へ供給し
、選択レジスタ39はL=2をシフト・カウンタ43へ
供給し、選択レジスタ41はS=1をレジスタ状態制御
器23へ供給する。シフト・カウンタ43は線44へ2
つのシフト・パルス(L=2)を発生し、これにより出
力レジスタ47から可変長コード・ワードc(a)とし
て10が線49へ出力される。次の状態も1である。3
番目のb(a)=0はエンコーデイングROS3−3か
らg=0に対応するC(Ai)=001L=2及びS=
O(iを指定)と、g=1に対応するc(Aj)=11
1、L=6及びS=Oとを読出させる。
今回もg=1であるから、それに対応するc(Aj)=
111、L=6及びS=0が選択されて、出力レジスタ
47、シフト・カウンタ43及びレジスタ状態制御器2
3へ各々供給される。このとき出力レジスタ47にはb
(a)=0を表わす000が線29を介して別にロード
されているから、シフト・カウンタ43からの6個のシ
フト・パルス(L=6)により、可変長コード・ワード
c(a)=111000が線49へ出力される。−方、
レジスタ状態制御器23においては、線1上の信号S=
0により選択器3は線13上のSi−010をレジスタ
7の方へ通過させ(状態=2)これによりROS9のア
ドレス2の内容、Si=011、Sj=001及びg−
1がデータ・レジスタ11へ読出される。
以下同様にして、新しいb(a)が入力される度に状態
は2から、3、4、5へと推移する。
第4表から明らかなように、この間選択レジスタ41か
ら出力されるSはすべてOである。出力レジスタ47は
、3番目から6番目までの4つのb(a)に対しいずれ
も6ビツトの可変長コード・ワードc(a)を出力する
。これは第2表において不明瞭文字2が4つ続いたこと
に相当する。従つて第2表の規則により、A2からA,
への切替えを行う必要がある。この切替えは次のように
して実現される。7番目のb(a)=1が入力されたと
きには状態が5になつているので、ROS9からデータ
・レジスタ11にアドレス5の内容、Si=101、S
j=110及びg=0が読出されている。
従つて、b(a)=1によつてエンコーデイングROS
33から読出された2つの可変長コード・ワードc(A
i)=01及びc(Aj)=111のうち、選択レジス
タ37で選択されるのはアルハベツトA1に対するc(
Ai)=01である。選択レジスタ41はパスiを指定
する値S=0を選択しているから、次の状態も5(Si
=101)であり、従つて8番目のb(a)=1に対し
ても同じ可変長コード・ワードc(a)=01が出力さ
れる。デコーダ53においては、仮定により初期状態は
1であるから、レジスタ状態制御器23′は線2『へg
=1の信号を発生する。
この制御器23′を含む回路5『の動作は、これまで説
明したエンコーダ51の動作と同じである。デコーダ5
3は線49上の可変長コード・ワードc(a)のストリ
ング010111000・・・・をシフト・レジスタ5
5に受取り、そのうち最初の3ビツト010がデコーデ
イングROS65のアドレスとして線61を介してアド
レス・レジスタ63にロードされる。
この結果、g=Oに対応するb(Ai)=1及びc/c
=oとg=1に対応するb(Aj)=5及びc/c=0
とがレジスタ67に読出される。線21′1.の信号g
は1であるから、選択器77はレジスタ69からc/c
=0を受取り、レジスタ71からb(計)=5を受取る
。選択器コJモVは線59を介して次の3ビツト111も
受取つているが、c/c=0が圧縮を表わしているため
、b(Aj)=5を選択して固定長コード・ワードb(
a)として線25′へ出力する。
b(a)は回路5『にも供給される。前述のように、g
=1の状態でb(a)=5が入力されると、線『,2『
及び40′上の信号は各々S=1、g=1及びL=1に
なる。
線40′上の信号L=1はシフト制御回路57へ供給さ
れる。シフト制御回路57はこれに応答してシフト・レ
ジスタ55を1ビツトだけ右側へシフトさせる。この結
果、シフト・レジスタ55の最初の3ビツトが101に
なつてデコーデイングROS65をアドレス指定し、g
=Oに対応するb(Ai)=3及びc/c=0と、g=
1に対応するb(Aj)=6及びc/c=oとをレジス
タ67に読出す。線2『上の信号は依然としてg=1で
あるからレジスタ71はb(計)=6を選択し、選択器
77はレジスj夕69からのc/c=0に応答してb(
Aj)=6を線25′へ出力する。
これにより、線1″,21汲び40′上の信号は各々S
=1、g=1及びL=2になる。シフト制御回路57は
線40′上のL=2に応答してシフト・レジスタ55を
2ビツトだけ右側へシフトさせる。
この結果、シフト・レジスタ55からアドレス・レジス
タ63へ供給される3ビツトのアドレスが111に変わ
る。前述のように、111は単なるプレフイツクスに過
ぎず、それに続く3ビツト(上の例では000)が実際
のコード・ワードb(a)を表わしている。このb(a
)はシフト・レジスタ55から線59を介して選択器7
J■■ROS65から読出されてレジスタ69を介して
供給されるc/c=1に応答して、シフト・レジスタ5
5からの3ビツトを固定長コード・ワードb(a)とし
て線25′へ出力する。線25′上のb(a)=Oは線
40′上の信号をL=6にし、かくしてシフト・レジス
タ55は6ビツトだけ右側にシフトされる。
これにより、4番目の可変長コード・ワードc(a)=
111001のデコードが可能になる。3番目から6番
目までは、プレフイツクス111に続く3ビツトのb(
a)が直接シフト・レジスタ55から線59及び選択器
77を介して線25′へ出力される。
6番目の処理が終つた時点でシフト・レジスタ55に残
つている最初の3ビツトは010で、これはデコード開
始時のアドレスと同じであるが、今度は状態が5に推移
してg=0に変つているため、b(Ai)=1が選択さ
れる。
以下同様にしてデコーデイングが続けられる。
【図面の簡単な説明】
第1図は第2表の規則を実施する有限状態機械をグラフ
形式で示し、第2図は現在の機械状態を貯蔵するレジス
タ及び状態から状態への追跡機構を示し、第3図は固定
長ワードから可変長ワードへのエンコーダ及びデコーダ
をシステム関係で示し、第4図はレジスタを詳細に示し
たエンコーダを示し、第5図は第4図に関連するサイク
ル定義を示し、第6図は第7図に関連するサイクル定義
を示し、第7図はレジスタ及び選択回路を詳細に示した
デコーダを示したものである。 7・・・・・・状態レジスタ、23・・・・・ルジスタ
状態制御器、31・・・・・・アドレス・レジスタ、3
3・・・・・・エンコーデイングROSl35,37,
39,4l・・・・・・データ・レジスタ、43・・・
・・・シフト制御器、47・・・・・・出力シフト・レ
ジスタ。

Claims (1)

    【特許請求の範囲】
  1. 1 固定長コード・ワードb(a)に応答して、アルハ
    ベツトA_1に対する可変長コード・ワードc(a_i
    )、アルハベツトA_2に対する可変長コード・ワード
    c(a_i)及び各該可変長コード・ワードに関連する
    パス信号Sを供給するエンコーデイング手段(例えば3
    3)と、前記パス信号Sに応答して状態が推移し、予め
    決められた状態推移が所定数続いた時点で前記アルハベ
    ツトA_1及びA_2の切替えを行なう状態推移手段(
    例えば23)と、前記状態推移手段からの切替え制御信
    号gに応答して、前記エンコーデイング手段から供給さ
    れたc(a_i)及びc(a_j)のいずれか一方を選
    択して出力する出力手段(例えば37、47)と、を具
    備するコード・ワード発生装置。
JP52088910A 1976-09-02 1977-07-26 コ−ド・ワ−ド発生装置 Expired JPS5918735B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US000000720019 1976-09-02
US05/720,019 US4099257A (en) 1976-09-02 1976-09-02 Markov processor for context encoding from given characters and for character decoding from given contexts

Publications (2)

Publication Number Publication Date
JPS5330211A JPS5330211A (en) 1978-03-22
JPS5918735B2 true JPS5918735B2 (ja) 1984-04-28

Family

ID=24892323

Family Applications (1)

Application Number Title Priority Date Filing Date
JP52088910A Expired JPS5918735B2 (ja) 1976-09-02 1977-07-26 コ−ド・ワ−ド発生装置

Country Status (8)

Country Link
US (1) US4099257A (ja)
JP (1) JPS5918735B2 (ja)
AU (1) AU510455B2 (ja)
CA (1) CA1106975A (ja)
DE (1) DE2735319A1 (ja)
FR (1) FR2363830A1 (ja)
GB (1) GB1580570A (ja)
IT (1) IT1114120B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01297277A (ja) * 1988-05-25 1989-11-30 Matsushita Electric Ind Co Ltd 給紙装置

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4250548A (en) * 1979-01-02 1981-02-10 Honeywell Information Systems Inc. Computer apparatus
EP0023274A1 (de) * 1979-07-27 1981-02-04 Crypto Aktiengesellschaft Einrichtung zum Übertragen zusätzlicher Information bei gleichbleibender Grundtaktrate in einem Übertragungssystem und Verfahren zum Betrieb der Einrichtung
US4295125A (en) * 1980-04-28 1981-10-13 International Business Machines Corporation Method and means for pipeline decoding of the high to low order pairwise combined digits of a decodable set of relatively shifted finite number of strings
JPS5755669A (en) * 1980-09-05 1982-04-02 Ibm Dynamic data compressing system
US4494108A (en) * 1981-11-09 1985-01-15 International Business Machines Corporation Adaptive source modeling for data file compression within bounded memory
DE3278850D1 (en) * 1981-11-09 1988-09-01 Ibm Data translation apparatus translating between raw and compression encoded data forms
JPS59148467A (ja) * 1983-02-14 1984-08-25 Canon Inc デ−タ圧縮装置
CA1228925A (en) * 1983-02-25 1987-11-03 Yoshikazu Yokomizo Data decoding apparatus
JPS60116964A (ja) * 1983-11-28 1985-06-24 Masaaki Nagashima シ−ル装置用テ−プ
US4837634A (en) * 1984-06-05 1989-06-06 Canon Kabushik Kaisha Apparatus for decoding image codes obtained by compression process
US4741036A (en) * 1985-01-31 1988-04-26 International Business Machines Corporation Determination of phone weights for markov models in a speech recognition system
JPS645823U (ja) * 1987-06-30 1989-01-13
US4881075A (en) * 1987-10-15 1989-11-14 Digital Equipment Corporation Method and apparatus for adaptive data compression
USRE35781E (en) * 1989-01-31 1998-05-05 Mitsubishi Denki Kabushiki Kaisha Coding method of image information
JPH0834432B2 (ja) * 1989-01-31 1996-03-29 三菱電機株式会社 符号化装置及び符号化方法
US5173695A (en) * 1990-06-29 1992-12-22 Bell Communications Research, Inc. High-speed flexible variable-length-code decoder
JPH0479421A (ja) * 1990-07-18 1992-03-12 Toshiba Corp 可変長符号化装置および可変長復号化装置
GB2268666B (en) * 1992-06-24 1996-03-20 Sony Broadcast & Communication Serial data decoding
US5550540A (en) * 1992-11-12 1996-08-27 Internatioal Business Machines Corporation Distributed coding and prediction by use of contexts
US5537551A (en) * 1992-11-18 1996-07-16 Denenberg; Jeffrey N. Data compression method for use in a computerized informational and transactional network
JPH07262103A (ja) * 1994-03-24 1995-10-13 Fujitsu Ltd 符号復号化制御方式
US5838963A (en) * 1995-10-25 1998-11-17 Microsoft Corporation Apparatus and method for compressing a data file based on a dictionary file which matches segment lengths
US6973140B2 (en) 1999-03-05 2005-12-06 Ipr Licensing, Inc. Maximizing data rate by adjusting codes and code rates in CDMA system
US6785323B1 (en) 1999-11-22 2004-08-31 Ipr Licensing, Inc. Variable rate coding for forward link
US7236107B2 (en) * 2004-09-20 2007-06-26 Fujitsu Limited System and method for identifying optimal encoding for a given trace
TWI645698B (zh) * 2017-07-17 2018-12-21 財團法人工業技術研究院 資料發送裝置、資料接收裝置及其方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1238113A (ja) * 1969-03-07 1971-07-07
US3675212A (en) * 1970-08-10 1972-07-04 Ibm Data compaction using variable-length coding
US3675211A (en) * 1970-09-08 1972-07-04 Ibm Data compaction using modified variable-length coding
US3701108A (en) * 1970-10-30 1972-10-24 Ibm Code processor for variable-length dependent codes
US3701111A (en) * 1971-02-08 1972-10-24 Ibm Method of and apparatus for decoding variable-length codes having length-indicating prefixes
US3883847A (en) * 1974-03-28 1975-05-13 Bell Telephone Labor Inc Uniform decoding of minimum-redundancy codes

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01297277A (ja) * 1988-05-25 1989-11-30 Matsushita Electric Ind Co Ltd 給紙装置

Also Published As

Publication number Publication date
AU2814177A (en) 1979-03-08
CA1106975A (en) 1981-08-11
US4099257A (en) 1978-07-04
FR2363830B1 (ja) 1980-07-11
GB1580570A (en) 1980-12-03
FR2363830A1 (fr) 1978-03-31
IT1114120B (it) 1986-01-27
AU510455B2 (en) 1980-06-26
DE2735319A1 (de) 1978-03-09
JPS5330211A (en) 1978-03-22

Similar Documents

Publication Publication Date Title
JPS5918735B2 (ja) コ−ド・ワ−ド発生装置
US3717851A (en) Processing of compacted data
US5150430A (en) Lossless data compression circuit and method
CN106797446B (zh) 基于存储器的历史搜索
RU2117388C1 (ru) Способ и устройство кодирования и декодирования данных
JP2502469B2 (ja) 文字デ―タを圧縮し圧縮済みデ―タを展開するための静的辞書構造を提供する方法および手段
US4078260A (en) Apparatus for transposition sorting of equal length records in overlap relation with record loading and extraction
EP0155980A2 (en) Digital data compression method and means
KR950004759A (ko) 순차 데이터 압축 알고리즘 실행장치 및 방법과 데이터 압축장치 및 방법
CN108391129A (zh) 数据编码方法及装置
US5572208A (en) Apparatus and method for multi-layered decoding of variable length codes
US5216423A (en) Method and apparatus for multiple bit encoding and decoding of data through use of tree-based codes
EP0145396B1 (en) Codeword decoding
US5617089A (en) Huffman code decoding circuit
KR100486251B1 (ko) 가변 길이 코드 복호화 장치 및 방법
KR900005469A (ko) 시리얼 입출력 반도체 메모리
US4800535A (en) Interleaved memory addressing system and method using a parity signal
KR940010433B1 (ko) 가변길이 코드 디코딩장치
US4188669A (en) Decoder for variable-length codes
US7764205B2 (en) Decompressing dynamic huffman coded bit streams
KR100466455B1 (ko) 부호변환기와가변길이부호복호장치및복호방법
JPH0315221B2 (ja)
Brebner et al. Use of reconfigurability in variable-length code detection at video rates
JP2760790B2 (ja) データ処理装置
CA1105141A (en) Markov processor for context encoding from given characters and for character decoding from given contexts