JP3034293B2 - 可変長符号の固定長変換回路 - Google Patents
可変長符号の固定長変換回路Info
- Publication number
- JP3034293B2 JP3034293B2 JP2284975A JP28497590A JP3034293B2 JP 3034293 B2 JP3034293 B2 JP 3034293B2 JP 2284975 A JP2284975 A JP 2284975A JP 28497590 A JP28497590 A JP 28497590A JP 3034293 B2 JP3034293 B2 JP 3034293B2
- Authority
- JP
- Japan
- Prior art keywords
- bits
- data
- bit
- variable
- 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 - Fee Related
Links
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
【発明の詳細な説明】 [発明の目的] (産業上の利用分野) 本発明は可変長符号の固定長変換回路に関し、特に、
画像圧縮のためのハフマン符号を固定長データに変換す
るものに好適の可変長符号の固定長変換回路に関する。
画像圧縮のためのハフマン符号を固定長データに変換す
るものに好適の可変長符号の固定長変換回路に関する。
(従来の技術) 近時、電子機器におけるディジタル技術の進歩は著し
い。ディジタル画像処理技術の分野においては、画像圧
縮技術の進歩に目覚ましいものがある。この画像圧縮技
術は、ディジタル伝送及び記録等の効率を向上させるた
めに、より小さいビットレイトで画像を符号化する技術
である。この技術としては、予測符号化技術及び直交符
号化技術(「TV画像の多次元信号処理」吹抜敬彦著、日
刊工業新聞社刊に詳述)等がある。更に、これらの符号
化によって圧縮された符号に対して、可変長符号化を施
すことによって、更に一層の画像圧縮が可能である。可
変長符号化は符号の発生頻度に応じて、符号化のビット
幅を変化させるものであり、固定長符号に比してビット
レイトを小さくすることができる。
い。ディジタル画像処理技術の分野においては、画像圧
縮技術の進歩に目覚ましいものがある。この画像圧縮技
術は、ディジタル伝送及び記録等の効率を向上させるた
めに、より小さいビットレイトで画像を符号化する技術
である。この技術としては、予測符号化技術及び直交符
号化技術(「TV画像の多次元信号処理」吹抜敬彦著、日
刊工業新聞社刊に詳述)等がある。更に、これらの符号
化によって圧縮された符号に対して、可変長符号化を施
すことによって、更に一層の画像圧縮が可能である。可
変長符号化は符号の発生頻度に応じて、符号化のビット
幅を変化させるものであり、固定長符号に比してビット
レイトを小さくすることができる。
次に、可変長符号の一例としてハフマン符号の生成方
法を第12図を参照して説明する。第12図(a)はハフマ
ン符号の生成過程を示し、第12図(b)はハフマン符号
の木を示している。
法を第12図を参照して説明する。第12図(a)はハフマ
ン符号の生成過程を示し、第12図(b)はハフマン符号
の木を示している。
いま、t個の固定長符号S1,S2,…,Stをハフマン符号
に変換するものとする。第12図はt=6の場合の例を示
している。先ず、これらの符号S1乃至S6をその発生頻度
(生起確率)が大きい順に並べる。符号S1乃至S6の生起
確率は、第12図(a)に示すように、夫々0.35,0.20,0.
15,0.15,0.10,0.05であり、符号S1乃至S6の順に並べら
れている。次に、生起確率が最も小さい方から2つの符
号を1組として、その合成確率(2つの生起確率の和)
を求める。第12図では、符号S6,S5の生起確率が小さ
く、その合成確率は0.15である。
に変換するものとする。第12図はt=6の場合の例を示
している。先ず、これらの符号S1乃至S6をその発生頻度
(生起確率)が大きい順に並べる。符号S1乃至S6の生起
確率は、第12図(a)に示すように、夫々0.35,0.20,0.
15,0.15,0.10,0.05であり、符号S1乃至S6の順に並べら
れている。次に、生起確率が最も小さい方から2つの符
号を1組として、その合成確率(2つの生起確率の和)
を求める。第12図では、符号S6,S5の生起確率が小さ
く、その合成確率は0.15である。
次に、この1組と他の符号について、生起確率(又は
合成確率)が大きい順に並べ変える。次いで、生起確率
(又は合成確率)が最も小さい方から2つの符号(又は
組)を新たな1組として、その合成確率を求める。以
後、これらの処理を繰返し、第12図(a)に示すよう
に、合成確率が1となるまで並び変えを行う。
合成確率)が大きい順に並べ変える。次いで、生起確率
(又は合成確率)が最も小さい方から2つの符号(又は
組)を新たな1組として、その合成確率を求める。以
後、これらの処理を繰返し、第12図(a)に示すよう
に、合成確率が1となるまで並び変えを行う。
次に、第12図(a)に基づいて、第12図(b)に示す
符号の木を作成する。そして、この符号の木の枝分かれ
に従って“0"と“1"を割当てる。第12図(b)では、上
側の枝を“0"、下側の枝を“1"にしている。この枝分か
れに沿ってハフマン符号を得る。例えば、固定長符号S4
は、第12図の太線で示すように、“0"の枝を通り、“1"
の枝を通り、最後に“0"の枝を通ることによって、“01
0"というハフマン符号に変換される。このようにして求
めた符号S1乃至S6のハフマン符号を下記第1表に示す。
符号の木を作成する。そして、この符号の木の枝分かれ
に従って“0"と“1"を割当てる。第12図(b)では、上
側の枝を“0"、下側の枝を“1"にしている。この枝分か
れに沿ってハフマン符号を得る。例えば、固定長符号S4
は、第12図の太線で示すように、“0"の枝を通り、“1"
の枝を通り、最後に“0"の枝を通ることによって、“01
0"というハフマン符号に変換される。このようにして求
めた符号S1乃至S6のハフマン符号を下記第1表に示す。
この第1表に示すように、生起確率が高い場合には短
いビット長のハフマン符号に変換され、生起確率が低い
場合には長いビット長のハフマン符号に変換される。こ
れにより、全体ではビットレイトを低減することができ
る。
いビット長のハフマン符号に変換され、生起確率が低い
場合には長いビット長のハフマン符号に変換される。こ
れにより、全体ではビットレイトを低減することができ
る。
ところで、近時、画像データの圧縮方法の標準化が検
討されている。この標準的な画像圧縮技術によると、第
13図に示すように、画像データをハフマン符号化した後
に、その下位ビットに付加データを付加するようになっ
ている。付加データは有効ビットのみを付加する。例え
ば、十進表現の“1"と“15"とでは2進表現におけるビ
ット数が異なる(1ビット,4ビット)ように、有効ビッ
トのみによって構成された付加データもハフマン符号と
同様に可変長符号である。なお、付加データは下記ビッ
ト側が有効ビットとなることから、付加データについて
はLSB(最下位ビット)から順に配列するLSBファースト
でハフマン符号に付加している。
討されている。この標準的な画像圧縮技術によると、第
13図に示すように、画像データをハフマン符号化した後
に、その下位ビットに付加データを付加するようになっ
ている。付加データは有効ビットのみを付加する。例え
ば、十進表現の“1"と“15"とでは2進表現におけるビ
ット数が異なる(1ビット,4ビット)ように、有効ビッ
トのみによって構成された付加データもハフマン符号と
同様に可変長符号である。なお、付加データは下記ビッ
ト側が有効ビットとなることから、付加データについて
はLSB(最下位ビット)から順に配列するLSBファースト
でハフマン符号に付加している。
このような可変長の符号化データを記録する場合に
は、記録素子の入力フォーマットに基づいて可変長の符
号化データを固定長に変換して記録する必要がある。例
えば、記録素子としてICカードを採用した場合には、入
出力は1バイト単位で行われており、符号化データを8
ビットの固定長に変換しなければならない。
は、記録素子の入力フォーマットに基づいて可変長の符
号化データを固定長に変換して記録する必要がある。例
えば、記録素子としてICカードを採用した場合には、入
出力は1バイト単位で行われており、符号化データを8
ビットの固定長に変換しなければならない。
第14図はこのような可変長のハフマン符号データを8
ビットの固定長データに変換する従来の可変長符号の固
定長変換回路を示すブロック図である。なお、第14図に
おいては各部の信号の状態も図示しており、MはMSB
(最上位ビット)を示し、LはLSBを示している。ま
た、有効データは斜線にて示している。
ビットの固定長データに変換する従来の可変長符号の固
定長変換回路を示すブロック図である。なお、第14図に
おいては各部の信号の状態も図示しており、MはMSB
(最上位ビット)を示し、LはLSBを示している。ま
た、有効データは斜線にて示している。
入力端子1,2には夫々独立に生成されたハフマン符号
データ及び付加データを入力する。ハフマン符号データ
をハフマン符号レジスタ3に与えて格納し、付加データ
を付加データレジスタ4に与えて格納する。ハフマン符
号レジスタ3は最大ビット長のハフマン符号を格納可能
なビット幅を有し、付加データレジスタ4は最大ビット
長の付加データを格納可能なビット幅を有している。こ
のため、各レジスタ3,4には第14図の斜線にて示す有効
データ5の外に無効データ6が格納される。
データ及び付加データを入力する。ハフマン符号データ
をハフマン符号レジスタ3に与えて格納し、付加データ
を付加データレジスタ4に与えて格納する。ハフマン符
号レジスタ3は最大ビット長のハフマン符号を格納可能
なビット幅を有し、付加データレジスタ4は最大ビット
長の付加データを格納可能なビット幅を有している。こ
のため、各レジスタ3,4には第14図の斜線にて示す有効
データ5の外に無効データ6が格納される。
各レジスタ3,4の出力は信号7に示すように合成され
てシリアル変換シフタ8に与えられる。シリアル変換シ
フタ8は、付加データの有効データをシリアル変換した
後に、この有効データがハフマン符号の有効データと連
続するようにシフトする。このシフトには、付加データ
の有効ビット数の情報が必要であり、シリアル変換シフ
タ8は付加データの最大ビット数から有効ビット数を減
算してシフト量を求めている。シリアル変換シフタ8は
付加データをシリアルに変換した後クロックに応じて1
ビットずつシフトしており、変換処理にはシフトするビ
ット数分の時間が必要である。
てシリアル変換シフタ8に与えられる。シリアル変換シ
フタ8は、付加データの有効データをシリアル変換した
後に、この有効データがハフマン符号の有効データと連
続するようにシフトする。このシフトには、付加データ
の有効ビット数の情報が必要であり、シリアル変換シフ
タ8は付加データの最大ビット数から有効ビット数を減
算してシフト量を求めている。シリアル変換シフタ8は
付加データをシリアルに変換した後クロックに応じて1
ビットずつシフトしており、変換処理にはシフトするビ
ット数分の時間が必要である。
シリアル変換シフタ8からは、信号9の斜線部にて示
すように、出力データ列の中央に付加データ及びハフマ
ン符号の有効ビットが形成され、LSB及びMSB側に無効ビ
ットが形成されたデータが出力される。このデータを余
りビット付加回路10を介して固定長変換回路11に与え
る。固定長変換回路11は順次入力されるシリアルデータ
を8ビットのパラレル固定長データに変換して出力端子
12から出力される。固定長変換回路11はパラレル変換に
よって得たデータが8ビットに満たない場合には、この
データの各ビット(以下、余りビットという)を余りビ
ット付加回路10に出力する。例えば、固定長変換回路11
に入力されるハフマン符号及び付加データの有効ビット
の合計ビット数が26ビットである場合には、固定長変換
回路11からは3組の8ビット固定長データが出力端子12
に出力され、2ビットの余りビットが余りビット付加回
路10に帰還される。
すように、出力データ列の中央に付加データ及びハフマ
ン符号の有効ビットが形成され、LSB及びMSB側に無効ビ
ットが形成されたデータが出力される。このデータを余
りビット付加回路10を介して固定長変換回路11に与え
る。固定長変換回路11は順次入力されるシリアルデータ
を8ビットのパラレル固定長データに変換して出力端子
12から出力される。固定長変換回路11はパラレル変換に
よって得たデータが8ビットに満たない場合には、この
データの各ビット(以下、余りビットという)を余りビ
ット付加回路10に出力する。例えば、固定長変換回路11
に入力されるハフマン符号及び付加データの有効ビット
の合計ビット数が26ビットである場合には、固定長変換
回路11からは3組の8ビット固定長データが出力端子12
に出力され、2ビットの余りビットが余りビット付加回
路10に帰還される。
余りビット付加回路10は、信号13の二重斜線部にて示
すように、前データの余りビット14を次のデータの有効
ビットの先頭に付加して固定長変換回路11に与えてい
る。こうして、固定長変換回路11からは、ハフマン符号
及び付加データのビット数に拘らず、8ビット長のパラ
レルデータが順次出力される。なお、出力端子12から出
力される所定の固定長データの先頭は、ハフマン符号の
有効ビット数、余りビット数及び最大ビット長から算出
して求めるようになっている。
すように、前データの余りビット14を次のデータの有効
ビットの先頭に付加して固定長変換回路11に与えてい
る。こうして、固定長変換回路11からは、ハフマン符号
及び付加データのビット数に拘らず、8ビット長のパラ
レルデータが順次出力される。なお、出力端子12から出
力される所定の固定長データの先頭は、ハフマン符号の
有効ビット数、余りビット数及び最大ビット長から算出
して求めるようになっている。
ところで、処理を簡単化するために、シリアル変換シ
フタ8は付加データの有効ビットをシフトするときに、
入力されるデータをシリアルに変換するようにしてい
る。このため、固定長変換処理に長時間を要してしま
う。したがって、例えば、電子スチルカメラの画像デー
タ圧縮用として採用した場合には、メモリカードに対す
る書込みに長時間を要してしまうことから、比較的早い
速度で連写することができないという問題点があった。
フタ8は付加データの有効ビットをシフトするときに、
入力されるデータをシリアルに変換するようにしてい
る。このため、固定長変換処理に長時間を要してしま
う。したがって、例えば、電子スチルカメラの画像デー
タ圧縮用として採用した場合には、メモリカードに対す
る書込みに長時間を要してしまうことから、比較的早い
速度で連写することができないという問題点があった。
(発明が解決しようとする課題) このように、上述した従来の可変長符号の固定長変換
回路においては、変換処理に長時間を要してしまうとい
う問題点があった。
回路においては、変換処理に長時間を要してしまうとい
う問題点があった。
本発明はかかる問題点に鑑みてなされたものであっ
て、高速処理を可能にすることができる可変長符号の固
定長変換回路を提供することを目的とする。
て、高速処理を可能にすることができる可変長符号の固
定長変換回路を提供することを目的とする。
[発明の構成] (課題を解決するための手段) 本発明の請求項1に係る可変長符号の固定長変換回路
は、順次入力される一対のパラレル可変長符号の合成デ
ータを所定ビット数のパラレル固定長符号に変換して出
力する可変長符号の固定長変換回路において、有効ビッ
トがいずれも下位ビット側に配列された前記一対の可変
長符号の一方をシフトさせて他方の可変長符号と合成す
ることにより双方の有効ビットが連続した合成データを
得る第1のシフト手段と、この第1のシフト手段からの
合成データを前記他方の可変長符号の無効ビット数に基
づいてシフトさせることにより前記合成データの有効ビ
ットを上位ビット側に配列させる第2のシフト手段と、
入力されるデータを上位の所定ビットとその他の下位の
ビットとに分割して夫々パラレル出力すると共に前記そ
の他の下位のビットのビット数が前記上位の所定ビット
のビット数よりも少なくなった場合には前記その他の下
位のビットを余りビットとしてそのビット数の情報を出
力する出力手段と、前記余りビットのビット数の情報に
基づいて前記第2のシフト手段からの合成データをこの
余りビットのビット数だけ下位ビット側にシフトする第
3のシフト手段と、前記余りビットが発生するまでは前
記その他の下位のビットを選択的に前記出力手段に与え
余りビットが発生するとこの余りビットを前記第3のシ
フト手段の出力の上位ビット側に付加して前記出力手段
に与える選択手段とを具備したものであり、 本発明の請求項2に係る可変長符号の固定長変換回路
は、前記第1のシフト手段に代えて、前記一対の可変長
符号のうちの有効ビットが上位ビット側に配列された一
方の可変長符号と有効ビットが下位ビット側に配列され
た他方の可変長符号とを合成することにより双方の有効
ビットが連続した合成データを得て前記第2のシフト手
段に与える第1の合成手段を具備したものであり、 本発明の請求項3に係る可変長符号の固定長変換回路
は、請求項2に係る可変長符号の固定長変換回路におい
て、前記第1の合成手段及び第2のシフト手段に代え
て、前記一対の可変長符号のうちの有効ビットが上位ビ
ット側に配列された一方の可変長符号を有効ビットが上
位ビット側に配列された他方の可変長符号の無効ビット
数に基づいたシフト量でシフトした後に前記他方の可変
長符号に合成して前記第3のシフト手段に与える第2の
合成手段を具備したものであり、 本発明の請求項4に係る可変長符号の固定長変換回路
は、請求項2に係る可変長符号の固定長変換回路におい
て、前記第2及び第3のシフト手段に代えて、前記一対
の可変長符号のうちの他方の可変長符号の無効ビット数
及び前記余りビット数に基づいたシフト量だけ前記第1
の合成手段からの合成データをシフトして前記選択手段
に与える第4のシフト手段を具備したものである。
は、順次入力される一対のパラレル可変長符号の合成デ
ータを所定ビット数のパラレル固定長符号に変換して出
力する可変長符号の固定長変換回路において、有効ビッ
トがいずれも下位ビット側に配列された前記一対の可変
長符号の一方をシフトさせて他方の可変長符号と合成す
ることにより双方の有効ビットが連続した合成データを
得る第1のシフト手段と、この第1のシフト手段からの
合成データを前記他方の可変長符号の無効ビット数に基
づいてシフトさせることにより前記合成データの有効ビ
ットを上位ビット側に配列させる第2のシフト手段と、
入力されるデータを上位の所定ビットとその他の下位の
ビットとに分割して夫々パラレル出力すると共に前記そ
の他の下位のビットのビット数が前記上位の所定ビット
のビット数よりも少なくなった場合には前記その他の下
位のビットを余りビットとしてそのビット数の情報を出
力する出力手段と、前記余りビットのビット数の情報に
基づいて前記第2のシフト手段からの合成データをこの
余りビットのビット数だけ下位ビット側にシフトする第
3のシフト手段と、前記余りビットが発生するまでは前
記その他の下位のビットを選択的に前記出力手段に与え
余りビットが発生するとこの余りビットを前記第3のシ
フト手段の出力の上位ビット側に付加して前記出力手段
に与える選択手段とを具備したものであり、 本発明の請求項2に係る可変長符号の固定長変換回路
は、前記第1のシフト手段に代えて、前記一対の可変長
符号のうちの有効ビットが上位ビット側に配列された一
方の可変長符号と有効ビットが下位ビット側に配列され
た他方の可変長符号とを合成することにより双方の有効
ビットが連続した合成データを得て前記第2のシフト手
段に与える第1の合成手段を具備したものであり、 本発明の請求項3に係る可変長符号の固定長変換回路
は、請求項2に係る可変長符号の固定長変換回路におい
て、前記第1の合成手段及び第2のシフト手段に代え
て、前記一対の可変長符号のうちの有効ビットが上位ビ
ット側に配列された一方の可変長符号を有効ビットが上
位ビット側に配列された他方の可変長符号の無効ビット
数に基づいたシフト量でシフトした後に前記他方の可変
長符号に合成して前記第3のシフト手段に与える第2の
合成手段を具備したものであり、 本発明の請求項4に係る可変長符号の固定長変換回路
は、請求項2に係る可変長符号の固定長変換回路におい
て、前記第2及び第3のシフト手段に代えて、前記一対
の可変長符号のうちの他方の可変長符号の無効ビット数
及び前記余りビット数に基づいたシフト量だけ前記第1
の合成手段からの合成データをシフトして前記選択手段
に与える第4のシフト手段を具備したものである。
(作用) 本発明の請求項1においては、第1のシフト手段によ
って一対のパラレル可変長符号のうちの一方がシフトさ
れて他方に合成され、双方の有効ビットが連続した合成
データが生成されて第2のシフト手段に与えられる。第
2のシフト手段は有効ビットを上位ビット側にシフトさ
せ、第3のシフト手段は余りビットのビット数分だけ下
位ビット側にシフトさせる。第3のシフト手段の出力を
選択手段を介して出力手段に与え、出力手段は上位の所
定ビットを固定長符号として出力する。残りの下位ビッ
トは選択手段を介して出力手段に帰還されて順次所定ビ
ットの固定長符号に変換されて出力される。第3のシフ
ト手段出力の有効ビットの先頭は余りビット分だけ下位
ビット側にシフトしており、出力手段からの余りビット
は選択手段によって次のデータの上位ビットに付加され
て出力手段に与えられる。第1乃至第3のシフト手段及
び選択手段によって、シリアル変換することなく合成デ
ータの有効ビットをデータの先頭にシフトしており、固
定長変換に要する時間が短い。
って一対のパラレル可変長符号のうちの一方がシフトさ
れて他方に合成され、双方の有効ビットが連続した合成
データが生成されて第2のシフト手段に与えられる。第
2のシフト手段は有効ビットを上位ビット側にシフトさ
せ、第3のシフト手段は余りビットのビット数分だけ下
位ビット側にシフトさせる。第3のシフト手段の出力を
選択手段を介して出力手段に与え、出力手段は上位の所
定ビットを固定長符号として出力する。残りの下位ビッ
トは選択手段を介して出力手段に帰還されて順次所定ビ
ットの固定長符号に変換されて出力される。第3のシフ
ト手段出力の有効ビットの先頭は余りビット分だけ下位
ビット側にシフトしており、出力手段からの余りビット
は選択手段によって次のデータの上位ビットに付加され
て出力手段に与えられる。第1乃至第3のシフト手段及
び選択手段によって、シリアル変換することなく合成デ
ータの有効ビットをデータの先頭にシフトしており、固
定長変換に要する時間が短い。
本発明の請求項2においては、第1の合成手段が双方
の有効ビットが連続した合成データを生成して第2のシ
フト手段に与えている。これにより、第1のシフト手段
を不要にして、回路規模を低減している。
の有効ビットが連続した合成データを生成して第2のシ
フト手段に与えている。これにより、第1のシフト手段
を不要にして、回路規模を低減している。
本発明の請求項3において、第2の合成手段は一方の
可変長符号をシフトさせて他方の可変長符号と合成する
ことにより、双方の有効ビットが連続し、且つこの有効
ビットが上位ビット側に配列された合成データを得て第
3のシフト手段に与えている。これにより、第1の合成
手段及び第2のシフト手段を省略して回路規模を低減し
ている。
可変長符号をシフトさせて他方の可変長符号と合成する
ことにより、双方の有効ビットが連続し、且つこの有効
ビットが上位ビット側に配列された合成データを得て第
3のシフト手段に与えている。これにより、第1の合成
手段及び第2のシフト手段を省略して回路規模を低減し
ている。
本発明の請求項4においては、第4のシフト手段が他
方の可変長符号の無効ビット数及び余りビット数に基づ
いて第1の合成手段からの合成データをシフトさせるこ
とにより、第3のシフト手段の出力と同様の出力を得て
いる。これにより、第2及び第3のシフト手段を省略し
て回路規模を低減している。
方の可変長符号の無効ビット数及び余りビット数に基づ
いて第1の合成手段からの合成データをシフトさせるこ
とにより、第3のシフト手段の出力と同様の出力を得て
いる。これにより、第2及び第3のシフト手段を省略し
て回路規模を低減している。
(実施例) 以下、図面に基づいて本発明の実施例を詳細に説明す
る。第1図は本発明の第1の実施例に係る可変長符号の
固定長変換回路を示すブロック図である。本実施例は最
大ビット長が16ビットのハフマン符号と最大ビット長が
11ビットの付加データとからなる画像データを8ビット
長のパラレル固定長データに変換する例を示している。
る。第1図は本発明の第1の実施例に係る可変長符号の
固定長変換回路を示すブロック図である。本実施例は最
大ビット長が16ビットのハフマン符号と最大ビット長が
11ビットの付加データとからなる画像データを8ビット
長のパラレル固定長データに変換する例を示している。
ROM22はハフマン符号とハフマン符号のビット長を格
納しており、入力端子21を介して入力される画像データ
によってアドレスが指定されてこの画像データをハフマ
ン符号に変換して出力する。また、ROM24には可変長の
付加データを格納しており、入力端子23を介して入力さ
れるデータを可変長の付加データに変換して出力する。
ROM22の出力はフリップフロップ(以下、FFという)25
に与え、FF25はクロック端に入力されるクロックCK1の
タイミングでROM22の出力をシフト回路27に出力する。
一方、ROM24の出力はFF26に与えており、FF26はクロッ
ク端に入力されるクロックCK1のタイミングでROM24の出
力をシフト回路28に出力するようになっている。
納しており、入力端子21を介して入力される画像データ
によってアドレスが指定されてこの画像データをハフマ
ン符号に変換して出力する。また、ROM24には可変長の
付加データを格納しており、入力端子23を介して入力さ
れるデータを可変長の付加データに変換して出力する。
ROM22の出力はフリップフロップ(以下、FFという)25
に与え、FF25はクロック端に入力されるクロックCK1の
タイミングでROM22の出力をシフト回路27に出力する。
一方、ROM24の出力はFF26に与えており、FF26はクロッ
ク端に入力されるクロックCK1のタイミングでROM24の出
力をシフト回路28に出力するようになっている。
シフト回路28は1ビットシフタSa1乃至10ビットシフ
タSa10及びこれらのシフタSa1乃至Sa10の出力を選択的
に出力するセレクタSEaによって構成している。シフト
回路28はFF26からのデータをそのまま出力するか又は制
御信号に基づいて1乃至10ビットMSB側にシフトして出
力するようになっている。また、シフト回路27は1ビッ
トシフタSb1乃至13ビットシフタSb13及びこれらのシフ
タSb1乃至Sb13の出力を選択的に出力するセレクタSEbに
よって構成している。シフト回路27は入力されたデータ
をそのまま出力するか又は制御信号に基づいて1乃至13
ビットMSB側にシフトして出力するようになっている。
タSa10及びこれらのシフタSa1乃至Sa10の出力を選択的
に出力するセレクタSEaによって構成している。シフト
回路28はFF26からのデータをそのまま出力するか又は制
御信号に基づいて1乃至10ビットMSB側にシフトして出
力するようになっている。また、シフト回路27は1ビッ
トシフタSb1乃至13ビットシフタSb13及びこれらのシフ
タSb1乃至Sb13の出力を選択的に出力するセレクタSEbに
よって構成している。シフト回路27は入力されたデータ
をそのまま出力するか又は制御信号に基づいて1乃至13
ビットMSB側にシフトして出力するようになっている。
第2図は第1図中の各シフト回路を構成するシフタ及
びセレクタを説明するためのブロック図であり、5ビッ
トのシフト回路を示している。第1図中の各シフト回路
は第2図のシフト回路と同様の構成となっている。
びセレクタを説明するためのブロック図であり、5ビッ
トのシフト回路を示している。第1図中の各シフト回路
は第2図のシフト回路と同様の構成となっている。
入力端子40乃至44には夫々データのMSB乃至LSBを与え
られる。0ビット目のセレクタ45には入力端子40乃至44
からMSB乃至LSBの全データを入力する。1ビット目のセ
レクタ46は端子41乃至44から下位第4ビット乃至LSBの
下位4ビットを入力する。1ビット目のセレクタ46は入
力された4ビットのデータを上位4ビットのデータに変
換し、“0"のLSBを付加して出力するようになってい
る。2ビット目のセレクタ47は入力端子42乃至44から入
力データの下位3ビットを入力し、このデータを上位3
ビットのデータに変換し“0"のLSB及び下位第2ビット
を付加して出力する。同様に、3ビット目のセレクタ48
は入力データの下位2ビットを入力し、このデータを上
位2ビットに変換し下位3ビットには“0"を付加して出
力する。また、4ビット目のセレクタ49は入力データの
LSBを取入れ、このデータをMSBに変換して下位4ビット
には“0"を付加して出力するようになっている。
られる。0ビット目のセレクタ45には入力端子40乃至44
からMSB乃至LSBの全データを入力する。1ビット目のセ
レクタ46は端子41乃至44から下位第4ビット乃至LSBの
下位4ビットを入力する。1ビット目のセレクタ46は入
力された4ビットのデータを上位4ビットのデータに変
換し、“0"のLSBを付加して出力するようになってい
る。2ビット目のセレクタ47は入力端子42乃至44から入
力データの下位3ビットを入力し、このデータを上位3
ビットのデータに変換し“0"のLSB及び下位第2ビット
を付加して出力する。同様に、3ビット目のセレクタ48
は入力データの下位2ビットを入力し、このデータを上
位2ビットに変換し下位3ビットには“0"を付加して出
力する。また、4ビット目のセレクタ49は入力データの
LSBを取入れ、このデータをMSBに変換して下位4ビット
には“0"を付加して出力するようになっている。
各セレクタ45乃至49には制御信号が与えられており、
この制御信号に基づくセレクタの出力が選択的に出力さ
れる。例えば、制御信号によって2ビット目のセレクタ
47を選択すると、入力データの下位3ビットは2ビット
目のセレクタ47によって上位3ビットに変換され、更に
下位2ビットとして“0"が付加されて出力される。すな
わち、入力端子42乃至44から入力されるデータが2ビッ
トMSB側にシフトされて出力されることになる。制御信
号によって各セレクタを選択することにより、入力デー
タを0乃至4ビットだけMSB側にシフトすることができ
る。
この制御信号に基づくセレクタの出力が選択的に出力さ
れる。例えば、制御信号によって2ビット目のセレクタ
47を選択すると、入力データの下位3ビットは2ビット
目のセレクタ47によって上位3ビットに変換され、更に
下位2ビットとして“0"が付加されて出力される。すな
わち、入力端子42乃至44から入力されるデータが2ビッ
トMSB側にシフトされて出力されることになる。制御信
号によって各セレクタを選択することにより、入力デー
タを0乃至4ビットだけMSB側にシフトすることができ
る。
第1図のシフト回路28のセレクタSEaにはROM24から付
加データのビット数を示すデータを入力しており(図示
省略)、セレクタSEaはこのデータに基づいて1ビット
シフタSa1乃至10ビットシフタSa10のうちの1つの出力
を選択的に出力するようになっている。これにより、付
加データの有効ビットをMSB側にシフトし、セレクタSEa
の出力はFF25の出力と合成されてシフト回路27に与えら
れる。シフト回路27はFF25出力を上位16ビットのデータ
として取入れ、セレクタSEa出力を下位11ビットとして
取入れており、FF25出力の有効ビットとセレクタSEa出
力の有効ビットとは連続した状態となる。
加データのビット数を示すデータを入力しており(図示
省略)、セレクタSEaはこのデータに基づいて1ビット
シフタSa1乃至10ビットシフタSa10のうちの1つの出力
を選択的に出力するようになっている。これにより、付
加データの有効ビットをMSB側にシフトし、セレクタSEa
の出力はFF25の出力と合成されてシフト回路27に与えら
れる。シフト回路27はFF25出力を上位16ビットのデータ
として取入れ、セレクタSEa出力を下位11ビットとして
取入れており、FF25出力の有効ビットとセレクタSEa出
力の有効ビットとは連続した状態となる。
シフト回路27の1ビットシフタSb1乃至13ビットシフ
タSb13は、夫々、入力された27ビットのデータをMSB側
に1乃至13ビットシフトしてセレクタSEbに出力する。
セレクタSEbにはROM22からハフマン符号の有効ビット数
のデータが与えられており、セレクタSEbはこのデータ
に基づくシフタSb1乃至Sb13の出力を選択的に出力する
ことにより、ハフマン符号及び付加データの有効ビット
をMSB側にシフトするようになっている。シフト回路27
の出力をFF29を介してシフト回路30に与える。FF29はク
ロック端に入力されるクロックCK1のタイミングでシフ
ト回路27の出力をシフト回路28に出力するようになって
いる。
タSb13は、夫々、入力された27ビットのデータをMSB側
に1乃至13ビットシフトしてセレクタSEbに出力する。
セレクタSEbにはROM22からハフマン符号の有効ビット数
のデータが与えられており、セレクタSEbはこのデータ
に基づくシフタSb1乃至Sb13の出力を選択的に出力する
ことにより、ハフマン符号及び付加データの有効ビット
をMSB側にシフトするようになっている。シフト回路27
の出力をFF29を介してシフト回路30に与える。FF29はク
ロック端に入力されるクロックCK1のタイミングでシフ
ト回路27の出力をシフト回路28に出力するようになって
いる。
シフト回路30は1ビットシフタSc1乃至7ビットシフ
タSc7及びこれらの各シフタSc1乃至Sc7の出力を選択的
に出力するセレクタSEcによって構成している。1ビッ
トシフタSc1乃至7ビットシフタSc7は夫々入力されたデ
ータを1ビット乃至7ビットLSB側にシフトしてセレク
タSEcに出力する。セレクタSEcは余りビットの情報が与
えられており、この情報に基づいてシフタSc1乃至Sc7を
選択することにより、余りビットに基づいたシフト量だ
けFF29出力をLSB側にシフトさせるようになってい。シ
フト回路30からの34ビットの出力をデータI1としてセレ
クタ31に与える。セレクタ31の出力をFF32に与え、FF32
はクロック端にクロックCK1よりも短い周期のクロックC
K0を入力して、このクロックCK0のタイミングでセレク
タ31出力の上位8ビットを出力端子33に出力し、下位26
ビットをデータI2としてセレクタ31に帰還させる。
タSc7及びこれらの各シフタSc1乃至Sc7の出力を選択的
に出力するセレクタSEcによって構成している。1ビッ
トシフタSc1乃至7ビットシフタSc7は夫々入力されたデ
ータを1ビット乃至7ビットLSB側にシフトしてセレク
タSEcに出力する。セレクタSEcは余りビットの情報が与
えられており、この情報に基づいてシフタSc1乃至Sc7を
選択することにより、余りビットに基づいたシフト量だ
けFF29出力をLSB側にシフトさせるようになってい。シ
フト回路30からの34ビットの出力をデータI1としてセレ
クタ31に与える。セレクタ31の出力をFF32に与え、FF32
はクロック端にクロックCK1よりも短い周期のクロックC
K0を入力して、このクロックCK0のタイミングでセレク
タ31出力の上位8ビットを出力端子33に出力し、下位26
ビットをデータI2としてセレクタ31に帰還させる。
第3図は第1図中のセレクタ31の具体的な構成を示す
ブロック図である。
ブロック図である。
セレクタ31は選択回路SE1乃至SE34によって構成して
いる。セレクタ31の各選択回路SE1乃至SE34の各入力端
0には夫々シフト回路30からのデータI1のMSB乃至LSBを
与え、選択回路SE1乃至SE26の入力端1には夫々FF32か
らのデータI2のMSB乃至LSBを与える。選択回路SE1乃至S
E7は余りビットに基づく制御信号ss0によって制御さ
れ、選択回路SE8乃至SE34は余りビットに基づく制御信
号ss1によって制御される。選択回路SE1乃至SE34は、制
御信号ss0,ss1によって、制御信号入力端がsハイレベ
ル(以下、“H"という)になると入力端1を選択し、ロ
ーレベル(以下、“L"という)になると入力端0を選択
するようになっている。
いる。セレクタ31の各選択回路SE1乃至SE34の各入力端
0には夫々シフト回路30からのデータI1のMSB乃至LSBを
与え、選択回路SE1乃至SE26の入力端1には夫々FF32か
らのデータI2のMSB乃至LSBを与える。選択回路SE1乃至S
E7は余りビットに基づく制御信号ss0によって制御さ
れ、選択回路SE8乃至SE34は余りビットに基づく制御信
号ss1によって制御される。選択回路SE1乃至SE34は、制
御信号ss0,ss1によって、制御信号入力端がsハイレベ
ル(以下、“H"という)になると入力端1を選択し、ロ
ーレベル(以下、“L"という)になると入力端0を選択
するようになっている。
次に、このように構成された可変長符号の固定長変換
回路の動作について第4図の説明図を参照して説明す
る。第4図(a)乃至(h)は夫々第1図中のa乃至h
点に現れるデータの状態を示している。なお、第4図で
は破線にて有効ビットを示している。
回路の動作について第4図の説明図を参照して説明す
る。第4図(a)乃至(h)は夫々第1図中のa乃至h
点に現れるデータの状態を示している。なお、第4図で
は破線にて有効ビットを示している。
ROM22は入力端子21を介して入力される画像データを
ハフマン符号に変換してFF25に出力する。また、ROM24
はROM22からのハフマン符号に付加する付加データをFF2
6に出力する。FF25,26のクロック端にはクロックCK1が
与えられており、FF25,26はクロックCK1のタイミング
で、第4図(a),(b)に夫々示すハフマン符号デー
タ及び付加データを出力する。なお、第4図ではROM22
からのハフマン符号データの有効ビットを下位10ビット
とし、ROM24からの付加データの有効ビットを下位4ビ
ットとしている。
ハフマン符号に変換してFF25に出力する。また、ROM24
はROM22からのハフマン符号に付加する付加データをFF2
6に出力する。FF25,26のクロック端にはクロックCK1が
与えられており、FF25,26はクロックCK1のタイミング
で、第4図(a),(b)に夫々示すハフマン符号デー
タ及び付加データを出力する。なお、第4図ではROM22
からのハフマン符号データの有効ビットを下位10ビット
とし、ROM24からの付加データの有効ビットを下位4ビ
ットとしている。
FF26からの付加データをシフト回路28に与える。シフ
ト回路28のセレクタSEaにはROM24から付加データの無効
ビット数(“7")を示すデータが与えられており、セレ
クタSEaは7ビットシフタSa7の出力を選択的に出力す
る。こうして、第4図(c)に示すように、付加データ
の有効ビットはMSB側に7ビットシフトされる。FF25の
出力とセレクタSEaの出力とを合成し、第4図(d)に
示すように、ハフマン符号データと付加データの有効ビ
ットが連続した状態でシフト回路27に与える。シフト回
路27のセレクタSEbにはROM22からハフマン符号データの
無効ビット数(“6")を示すデータが与えられており、
セレクタSEbは6ビットシフタSb6の出力を選択する。こ
うして、シフト回路27においてデータは6ビットMSB側
にシフトし、ハフマン符号データの有効ビットの先頭ビ
ットがMSBとなってFF29に与えられる(第4図
(e))。
ト回路28のセレクタSEaにはROM24から付加データの無効
ビット数(“7")を示すデータが与えられており、セレ
クタSEaは7ビットシフタSa7の出力を選択的に出力す
る。こうして、第4図(c)に示すように、付加データ
の有効ビットはMSB側に7ビットシフトされる。FF25の
出力とセレクタSEaの出力とを合成し、第4図(d)に
示すように、ハフマン符号データと付加データの有効ビ
ットが連続した状態でシフト回路27に与える。シフト回
路27のセレクタSEbにはROM22からハフマン符号データの
無効ビット数(“6")を示すデータが与えられており、
セレクタSEbは6ビットシフタSb6の出力を選択する。こ
うして、シフト回路27においてデータは6ビットMSB側
にシフトし、ハフマン符号データの有効ビットの先頭ビ
ットがMSBとなってFF29に与えられる(第4図
(e))。
FF29はクロックCK1のタイミングで入力された27ビッ
トのデータをシフト回路30に出力する。こうして、1ク
ロックでROM22,24の出力がシフト回路30まで転送され
る。シフト回路30のセレクタSEcには、余りビット数の
データが与えられており、セレクタSEcは余りビット数
に基づくシフタSc1乃至Sc7を選択する。いま、第4図
(f)の梨地模様に示すように、前データの余りビット
数が6ビットであるものとする。この場合には、セレク
タSEcは6ビットシフタSc6の出力を選択し、シフト回路
30は入力されたデータを6ビットLSB側にシフトしてセ
レクタ31に出力する。セレクタ31は、制御信号ss0,ss1
によって、選択回路SE1乃至SE6の制御入力端が“H"とな
り、選択回路SE7乃至SE34の制御入力端が“L"となっ
て、前データの余りビットを上位6ビットとし、シフト
回路30の出力を上位7ビット乃至LSBとしてFF32に出力
する。(第4図(f))。
トのデータをシフト回路30に出力する。こうして、1ク
ロックでROM22,24の出力がシフト回路30まで転送され
る。シフト回路30のセレクタSEcには、余りビット数の
データが与えられており、セレクタSEcは余りビット数
に基づくシフタSc1乃至Sc7を選択する。いま、第4図
(f)の梨地模様に示すように、前データの余りビット
数が6ビットであるものとする。この場合には、セレク
タSEcは6ビットシフタSc6の出力を選択し、シフト回路
30は入力されたデータを6ビットLSB側にシフトしてセ
レクタ31に出力する。セレクタ31は、制御信号ss0,ss1
によって、選択回路SE1乃至SE6の制御入力端が“H"とな
り、選択回路SE7乃至SE34の制御入力端が“L"となっ
て、前データの余りビットを上位6ビットとし、シフト
回路30の出力を上位7ビット乃至LSBとしてFF32に出力
する。(第4図(f))。
FF32はクロック端に入力されるクロックCK0のタイミ
ングで入力された34ビットのデータの上位8ビット(第
4図(h))を出力端子33に出力し、下位26ビット(第
4図(g))をセレクタ31にデータI2として帰還させ
る。セレクタ31は、制御信号ss0,ss1によって、選択回
路SE1乃至SE34の制御入力端が“H"となり、データI2の
うちの上位12ビットの有効データと下位22ビットの無効
データをFF32に出力する。FF32はクロックCK0のタイミ
ングで上位8ビットの有効データと下位26ビットをセレ
クタ31に帰還させる。これにより、4ビットの余りビッ
トがセレクタ31に帰還されることになる。
ングで入力された34ビットのデータの上位8ビット(第
4図(h))を出力端子33に出力し、下位26ビット(第
4図(g))をセレクタ31にデータI2として帰還させ
る。セレクタ31は、制御信号ss0,ss1によって、選択回
路SE1乃至SE34の制御入力端が“H"となり、データI2の
うちの上位12ビットの有効データと下位22ビットの無効
データをFF32に出力する。FF32はクロックCK0のタイミ
ングで上位8ビットの有効データと下位26ビットをセレ
クタ31に帰還させる。これにより、4ビットの余りビッ
トがセレクタ31に帰還されることになる。
次のタイミングでは、シフト回路30は上位第5ビット
目以降に有効ビットを有するデータをセレクタ31にデー
タI1として与える。セレクタ31はシフト回路30の出力の
上位ビットに余りビットを付加して出力する。こうし
て、次のクロックCK0のタイミングでFF32から出力端子3
3に8ビットのパラレルの固定長データが出力される。
目以降に有効ビットを有するデータをセレクタ31にデー
タI1として与える。セレクタ31はシフト回路30の出力の
上位ビットに余りビットを付加して出力する。こうし
て、次のクロックCK0のタイミングでFF32から出力端子3
3に8ビットのパラレルの固定長データが出力される。
このように、本実施例においては、クロックCK1のタ
イミングでROM22,24の出力を所定量だけシフトして転送
し、クロックCK0のタイミングで8ビットの固定長デー
タとして出力しており、可変長符号データから固定長デ
ータへの変換時間を著しく短縮することができる。
イミングでROM22,24の出力を所定量だけシフトして転送
し、クロックCK0のタイミングで8ビットの固定長デー
タとして出力しており、可変長符号データから固定長デ
ータへの変換時間を著しく短縮することができる。
第5図は本発明の第2の実施例に係る可変長符号の固
定長変換回路を示すブロック図である。第5図において
第1図と同一の構成要素には同一符号を付して説明を省
略する。
定長変換回路を示すブロック図である。第5図において
第1図と同一の構成要素には同一符号を付して説明を省
略する。
本実施例が第1の実施例と異なる点は、シフト回路28
を省略し、ROM24に代えてROM51を採用した点である。RO
M51は付加データを格納しており、入力端子23を介して
入力されるデータに基づいた付加データをFF26を介して
シフト回路27に出力する。ROM51からの付加データは上
位ビット側が有効ビットであり、下位ビット側が無効ビ
ットとなっている。
を省略し、ROM24に代えてROM51を採用した点である。RO
M51は付加データを格納しており、入力端子23を介して
入力されるデータに基づいた付加データをFF26を介して
シフト回路27に出力する。ROM51からの付加データは上
位ビット側が有効ビットであり、下位ビット側が無効ビ
ットとなっている。
このように構成された実施例の動作について第6図を
参照して説明する。第6図(a),(b),(d)乃至
(h)は夫々第5図中のa,b,d乃至h点に現れるデータ
の状態を示している。第6図では斜線部分によって有効
ビットを示している。なお、第6図ではハフマン符号デ
ータの有効ビット数は10ビットであり、付加データの有
効ビット数は4ビットである。
参照して説明する。第6図(a),(b),(d)乃至
(h)は夫々第5図中のa,b,d乃至h点に現れるデータ
の状態を示している。第6図では斜線部分によって有効
ビットを示している。なお、第6図ではハフマン符号デ
ータの有効ビット数は10ビットであり、付加データの有
効ビット数は4ビットである。
本実施例においては、ROM51の出力はFF26からクロッ
クCK1のタイミングで出力される。ROM51からの付加デー
タの有効ビットは上位ビット側に配列されており、FF26
からは、第6図(b)に示すように、上位4ビットが有
効ビットで下位7ビットが無効ビットの付加データが出
力される。このデータは第1図のシフト回路28の出力
(第4図(c)参照)と同様であり、以降の動作は第1
図の実施例と同様である。
クCK1のタイミングで出力される。ROM51からの付加デー
タの有効ビットは上位ビット側に配列されており、FF26
からは、第6図(b)に示すように、上位4ビットが有
効ビットで下位7ビットが無効ビットの付加データが出
力される。このデータは第1図のシフト回路28の出力
(第4図(c)参照)と同様であり、以降の動作は第1
図の実施例と同様である。
本実施例においてはシフト回路28を削減して回路構成
を簡略化することができるという利点がある。
を簡略化することができるという利点がある。
第7図は本発明の第3の実施例に係る可変等符号の固
定長変換回路を示すブロック図である。第7図において
第5図と同一の構成要素には同一符号を付して説明を省
略する。
定長変換回路を示すブロック図である。第7図において
第5図と同一の構成要素には同一符号を付して説明を省
略する。
ROM52はハフマン符号データを格納しており、入力端
子21を介して入力される画像データによってアドレスが
指定されて、この画像データに基づくハフマン符号デー
タを出力する。ROM52からのハフマン符号データは上位
ビット側が有効ビットであり、下位ビット側が無効ビッ
トとなっている。ROM52の出力をFF25を介してデータI3
として合成回路54に与える。
子21を介して入力される画像データによってアドレスが
指定されて、この画像データに基づくハフマン符号デー
タを出力する。ROM52からのハフマン符号データは上位
ビット側が有効ビットであり、下位ビット側が無効ビッ
トとなっている。ROM52の出力をFF25を介してデータI3
として合成回路54に与える。
一方、ROM51からの最大11ビット長の付加データをFF2
6を介してシフト回路53に与える。シフト回路53は第2
図のシフト回路と同様の構成であり、ROM52から無効デ
ータの情報を入力して、FF26の出力をハフマン符号デー
タの無効ビット数だけMSB側にシフトして合成回路54に
出力するようになっている。これにより、シフト回路53
からはビット数が27ビットの付加データがデータI4とし
て合成回路54に与えられる。
6を介してシフト回路53に与える。シフト回路53は第2
図のシフト回路と同様の構成であり、ROM52から無効デ
ータの情報を入力して、FF26の出力をハフマン符号デー
タの無効ビット数だけMSB側にシフトして合成回路54に
出力するようになっている。これにより、シフト回路53
からはビット数が27ビットの付加データがデータI4とし
て合成回路54に与えられる。
第8図は第7図中の合成回路54の具体的な構成を示す
ブロック図である。
ブロック図である。
合成回路54は選択回路Se1乃至Se16によって構成して
いる。選択回路Se1乃至Se16の入力端0には夫々FF25か
らのハフマン符号データのMSB乃至LSB(上位第16ビッ
ト)を与える。また、選択回路Se1乃至Se16の入力端1
には夫々シフト回路53からの付加データのMSB乃至上位
第16ビット(下位第12ビット)を与える。選択回路Se1
乃至Se16の制御入力端sにはハフマン符号データの有効
ビット数に基づく制御信号ssを与えており、選択回路Se
1乃至Se16は制御入力端sが“H"となることにより入力
端1を選択し、“L"になると入力端0を選択するように
なっている。これにより、合成回路54はFF25からのハフ
マン符号データの有効ビットとシフト回路53からの付加
データとを合成するようになっている。こうして、合成
回路54からは選択回路Se1乃至Se16の出力を上位16ビッ
トとし、シフト回路53の出力の下位11ビットを下位ビッ
トとするデータがFF29に出力される。
いる。選択回路Se1乃至Se16の入力端0には夫々FF25か
らのハフマン符号データのMSB乃至LSB(上位第16ビッ
ト)を与える。また、選択回路Se1乃至Se16の入力端1
には夫々シフト回路53からの付加データのMSB乃至上位
第16ビット(下位第12ビット)を与える。選択回路Se1
乃至Se16の制御入力端sにはハフマン符号データの有効
ビット数に基づく制御信号ssを与えており、選択回路Se
1乃至Se16は制御入力端sが“H"となることにより入力
端1を選択し、“L"になると入力端0を選択するように
なっている。これにより、合成回路54はFF25からのハフ
マン符号データの有効ビットとシフト回路53からの付加
データとを合成するようになっている。こうして、合成
回路54からは選択回路Se1乃至Se16の出力を上位16ビッ
トとし、シフト回路53の出力の下位11ビットを下位ビッ
トとするデータがFF29に出力される。
次に、このように構成された第3の実施例の動作につ
いて第9図を参照して説明する。第9図(a)乃至
(c),(e)乃至(h)は夫々第7図のa,b,c,e乃至
h点に現れるデータの状態を示している。第9図の斜線
部は有効ビットを示している。なお、第9図はハフマン
符号の有効ビットが10ビットであり、付加データの有効
ビットが4ビットの例を示している。
いて第9図を参照して説明する。第9図(a)乃至
(c),(e)乃至(h)は夫々第7図のa,b,c,e乃至
h点に現れるデータの状態を示している。第9図の斜線
部は有効ビットを示している。なお、第9図はハフマン
符号の有効ビットが10ビットであり、付加データの有効
ビットが4ビットの例を示している。
ROM52,51からのハフマン符号データ及び付加データは
夫々FF25,26を介して出力される。これらのデータは第
9図(a),(b)に示すように、有効ビットがMSB側
に配列されている。これらのデータから第9図(e)に
示すデータを得るために、先ず、付加データをシフト回
路53に与えてシフトさせている。すなわち、シフト回路
53はハフマン符号データの無効ビット数のデータ
(“6")を取入れて、付加データをMSB側に6ビットだ
けシフトされ、下位ビットに無効データを付加して27ビ
ットのデータI4を合成回路54に出力する。
夫々FF25,26を介して出力される。これらのデータは第
9図(a),(b)に示すように、有効ビットがMSB側
に配列されている。これらのデータから第9図(e)に
示すデータを得るために、先ず、付加データをシフト回
路53に与えてシフトさせている。すなわち、シフト回路
53はハフマン符号データの無効ビット数のデータ
(“6")を取入れて、付加データをMSB側に6ビットだ
けシフトされ、下位ビットに無効データを付加して27ビ
ットのデータI4を合成回路54に出力する。
合成回路54にはハフマン符号データの有効ビット数に
基づいた制御信号ssを与える。これにより、合成回路54
の選択回路Se1乃至Se10の制御入力端sは“L"となって
選択回路Se1乃至Se10は入力端0を選択し、選択回路Se1
1乃至Se16の制御入力端sは“H"となって選択回路Se11
乃至Se16は入力端1を選択する。すなわち、選択回路Se
1乃至Se10からはFF25からのハフマン符号データの有効
ビットが出力され、選択回路Se11乃至Se16からのシフト
回路53からの付加データが出力される。こうして、第9
図(e)に示すデータが合成回路54からFF29に与えられ
る。
基づいた制御信号ssを与える。これにより、合成回路54
の選択回路Se1乃至Se10の制御入力端sは“L"となって
選択回路Se1乃至Se10は入力端0を選択し、選択回路Se1
1乃至Se16の制御入力端sは“H"となって選択回路Se11
乃至Se16は入力端1を選択する。すなわち、選択回路Se
1乃至Se10からはFF25からのハフマン符号データの有効
ビットが出力され、選択回路Se11乃至Se16からのシフト
回路53からの付加データが出力される。こうして、第9
図(e)に示すデータが合成回路54からFF29に与えられ
る。
以降の動作は第2の実施例と同様である。
本実施例においては、第2の実施例と同様の効果が得
られると共に、付加データのみをシフトすればよく回路
構成を小規模化することができるという利点がある。
られると共に、付加データのみをシフトすればよく回路
構成を小規模化することができるという利点がある。
第10図は本発明の第4の実施例に係る可変長符号の固
定長変換回路を示すブロック図である。第10図において
第5図と同一の構成要素には同一符号を付して説明を省
略する。
定長変換回路を示すブロック図である。第10図において
第5図と同一の構成要素には同一符号を付して説明を省
略する。
本実施例は第2の実施例のシフト回路27に代えてシフ
ト回路60を採用し、シフト回路30を省略した点が第2の
実施例と異なる。第2の実施例においては、シフト回路
27によってハフマン符号データと付加データとの有効ビ
ットをMSB側にシフトした後に、シフト回路30によって
余りビット分だけLSB側にシフトさせているが、本実施
例ではシフト回路60が余りビットを考慮してMSB側にシ
フトさせるようにしている。シフト回路60は他のシフト
回路と同様の構成であり、FF25,26からハフマン符号デ
ータ及び付加データの有効ビットが連続したデータを入
力する。シフト回路60には余りビットの情報が与えられ
ており、シフト回路60はハフマン符号データの無効ビッ
ト数から余りビット数を減算してシフト量を求め、入力
されたデータをMSB側(シフト量が負の場合にはLSB側)
にシフトさせる。更に、シフト回路60はシフトしたデー
タのLSB側に無効ビットを付加し34ビットのデータをFF2
9に出力するようになっている。
ト回路60を採用し、シフト回路30を省略した点が第2の
実施例と異なる。第2の実施例においては、シフト回路
27によってハフマン符号データと付加データとの有効ビ
ットをMSB側にシフトした後に、シフト回路30によって
余りビット分だけLSB側にシフトさせているが、本実施
例ではシフト回路60が余りビットを考慮してMSB側にシ
フトさせるようにしている。シフト回路60は他のシフト
回路と同様の構成であり、FF25,26からハフマン符号デ
ータ及び付加データの有効ビットが連続したデータを入
力する。シフト回路60には余りビットの情報が与えられ
ており、シフト回路60はハフマン符号データの無効ビッ
ト数から余りビット数を減算してシフト量を求め、入力
されたデータをMSB側(シフト量が負の場合にはLSB側)
にシフトさせる。更に、シフト回路60はシフトしたデー
タのLSB側に無効ビットを付加し34ビットのデータをFF2
9に出力するようになっている。
このように構成された第4の実施例の動作について第
11図の説明図を参照して説明する。第11図(a),
(b),(d)乃至(h)は夫々第10図中のa,b,d乃至
h点に現れるデータの状態を示している。第11図では斜
線部にて有効ビットを示している。
11図の説明図を参照して説明する。第11図(a),
(b),(d)乃至(h)は夫々第10図中のa,b,d乃至
h点に現れるデータの状態を示している。第11図では斜
線部にて有効ビットを示している。
FF25は第11図(a)に示すように有効ビットがLSB側
に配列されたハフマン符号データを出力し、FF26は第11
図(b)に示すように有効ビットがMSB側に配列された
付加データを出力する。これらのデータは合成されてシ
フト回路60に入力される(第11図(d))。シフト回路
60はハフマン符号データの無効ビット数から余りビット
数を減算してシフト量を求め、このシフト量で入力され
たデータをシフトする(第11図(e))。FF29はこのデ
ータをクロックCK1のタイミングでセレクタ31に出力す
る。以降の動作は第2の実施例と同様である。
に配列されたハフマン符号データを出力し、FF26は第11
図(b)に示すように有効ビットがMSB側に配列された
付加データを出力する。これらのデータは合成されてシ
フト回路60に入力される(第11図(d))。シフト回路
60はハフマン符号データの無効ビット数から余りビット
数を減算してシフト量を求め、このシフト量で入力され
たデータをシフトする(第11図(e))。FF29はこのデ
ータをクロックCK1のタイミングでセレクタ31に出力す
る。以降の動作は第2の実施例と同様である。
本実施例においては、第2の実施例と同様の効果を有
すると共に、シフト回路を省略することにより、回路構
成を更に一層簡略化することができるという利点を有す
る。
すると共に、シフト回路を省略することにより、回路構
成を更に一層簡略化することができるという利点を有す
る。
[発明の効果] 以上説明したように本発明によれば、高速処理を可能
にすると共に、回路規模を縮小することができるという
効果を有する。
にすると共に、回路規模を縮小することができるという
効果を有する。
第1図は本発明の第1の実施例に係る可変長符号の固定
長変換回路を示すブロック図、第2図はシフト回路を説
明するためのブロック図、第3図はセレクタ31の具体的
な構成を示すブロック図、第4図は第1の実施例の動作
を説明するための説明図、第5図は本発明の第2の実施
例に係る可変長符号の固定長変換回路を示すブロック
図、第6図は第2の実施例の動作を説明するための説明
図、第7図は本発明の第3の実施例に係る可変長符号の
固定長変換回路を示すブロック図、第8図は第7図中の
合成回路54の具体的な構成を示すブロック図、第9図は
第3の実施例の動作を説明するための説明図、第10図は
本発明の第4の実施例に係る可変長符号の固定長変換回
路を示すブロック図、第11図は第4の実施例の動作を説
明するための説明図、第12図はハフマン符号を説明する
ための説明図、第13図は画像データを示す説明図、第14
図は従来の可変長符号の固定長変換回路を示すブロック
図である。 22,24……ROM、 25,26,29,32……FF、 27,28,30……シフト回路、 31……セレクタ。
長変換回路を示すブロック図、第2図はシフト回路を説
明するためのブロック図、第3図はセレクタ31の具体的
な構成を示すブロック図、第4図は第1の実施例の動作
を説明するための説明図、第5図は本発明の第2の実施
例に係る可変長符号の固定長変換回路を示すブロック
図、第6図は第2の実施例の動作を説明するための説明
図、第7図は本発明の第3の実施例に係る可変長符号の
固定長変換回路を示すブロック図、第8図は第7図中の
合成回路54の具体的な構成を示すブロック図、第9図は
第3の実施例の動作を説明するための説明図、第10図は
本発明の第4の実施例に係る可変長符号の固定長変換回
路を示すブロック図、第11図は第4の実施例の動作を説
明するための説明図、第12図はハフマン符号を説明する
ための説明図、第13図は画像データを示す説明図、第14
図は従来の可変長符号の固定長変換回路を示すブロック
図である。 22,24……ROM、 25,26,29,32……FF、 27,28,30……シフト回路、 31……セレクタ。
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭55−953(JP,A) 特開 昭56−114043(JP,A) 特開 昭63−250221(JP,A) 特開 昭64−81479(JP,A) 特開 平2−148919(JP,A)
Claims (4)
- 【請求項1】順次入力される一対のパラレル可変長符号
の合成データを所定ビット数のパラレル固定長符号に変
換して出力する可変長符号の固定長変換回路において、 有効ビットがいずれも下位ビット側に配列された前記一
対の可変長符号の一方をシフトさせて他方の可変長符号
と合成することにより双方の有効ビットが連続した合成
データを得る第1のシフト手段と、 この第1のシフト手段からの合成データを前記他方の可
変長符号の無効ビット数に基づいてシフトさせることに
より前記合成データの有効ビットを上位ビット側に配列
させる第2のシフト手段と、 入力されるデータを上位の所定ビットとその他の下位の
ビットとに分割して夫々パラレル出力すると共に前記そ
の他の下位のビットのビット数が前記上位の所定ビット
のビット数よりも少なくなった場合には前記その他の下
位のビットを余りビットとしてそのビット数の情報を出
力する出力手段と、 前記余りビットのビット数の情報に基づいて前記第2の
シフト手段からの合成データをこの余りビットのビット
数だけ下位ビット側にシフトする第3のシフト手段と、 前記余りビットが発生するまでは前記その他の下位のビ
ットを選択的に前記出力手段に与え余りビットが発生す
るとこの余りビットを前記第3のシフト手段の出力の上
位ビット側に付加して前記出力手段に与える選択手段と
を具備したことを特徴とする可変長符号の固定長変換回
路。 - 【請求項2】前記第1のシフト手段に代えて、前記一対
の可変長符号のうちの有効ビットが上位ビット側に配列
された一方の可変長符号と有効ビットが下位ビット側に
配列された他方の可変長符号とを合成することにより双
方の有効ビットが連続した合成データを得て前記第2の
シフト手段に与える第1の合成手段を具備したことを特
徴とする請求項1に記載の可変長符号の固定長変換回
路。 - 【請求項3】前記第1の合成手段及び第2のシフト手段
に代えて、前記一対の可変長符号のうちの有効ビットが
上位ビット側に配列された一方の可変長符号を有効ビッ
トが上位ビット側に配列された他方の可変長符号の無効
ビット数に基づいたシフト量でシフトした後に前記他方
の可変長符号に合成して前記第3のシフト手段に与える
第2の合成手段を具備したことを特徴とする請求項2に
記載の可変長符号の固定長変換回路。 - 【請求項4】前記第2及び第3のシフト手段に代えて、
前記一対の可変長符号のうちの他方の可変長符号の無効
ビット数及び前記余りビット数に基づいたシフト量だけ
前記第1の合成手段からの合成データをシフトして前記
選択手段に与える第4のシフト手段を具備したことを特
徴とする請求項2に記載の可変長符号の固定長変換回
路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2284975A JP3034293B2 (ja) | 1990-10-22 | 1990-10-22 | 可変長符号の固定長変換回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2284975A JP3034293B2 (ja) | 1990-10-22 | 1990-10-22 | 可変長符号の固定長変換回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04157926A JPH04157926A (ja) | 1992-05-29 |
JP3034293B2 true JP3034293B2 (ja) | 2000-04-17 |
Family
ID=17685507
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2284975A Expired - Fee Related JP3034293B2 (ja) | 1990-10-22 | 1990-10-22 | 可変長符号の固定長変換回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3034293B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002543460A (ja) * | 1999-04-27 | 2002-12-17 | ミスチェンコ、ヴァレンティン・アレクサンドロヴィッチ | 情報を暗号化する方法およびその方法を実現するための装置 |
WO2003084077A1 (fr) * | 2002-03-25 | 2003-10-09 | Allied-Telesis, K.K. | Procede et dispositif de conversion de donnees de longueur variable/fixe |
-
1990
- 1990-10-22 JP JP2284975A patent/JP3034293B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH04157926A (ja) | 1992-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5801650A (en) | Decoding apparatus and method | |
US5809176A (en) | Image data encoder/decoder system which divides uncompresed image data into a plurality of streams and method thereof | |
US5138316A (en) | Variable length code demodulating apparatus and address control method thereof | |
EP0098153B1 (en) | Digital data code conversion circuit for variable-word-length data code | |
US4989000A (en) | Data string compression using arithmetic encoding with simplified probability subinterval estimation | |
US4646148A (en) | Process of compressing a succession of digital data and device for carrying out the same | |
EP0535571A2 (en) | Modified Huffman encode/decode system with simplified decoding for imaging systems | |
US6954555B2 (en) | Variable length coding unit and variable length decoding unit | |
EP1158807B1 (en) | Data stream conversion apparatus and method, variable length coded data stream generation apparatus and method, and camera system | |
US5146220A (en) | Data conversion method and apparatus for converting undefined length data to fixed length data | |
JP3034293B2 (ja) | 可変長符号の固定長変換回路 | |
US7676527B2 (en) | Processor | |
US6324306B1 (en) | Variable length code decoder and moving picture decoder having variable length code decoder | |
US4325056A (en) | BCD To binary converter | |
JP3134362B2 (ja) | 可変長/固定長符号化回路 | |
JPS63133724A (ja) | 入力信号を伝送又は記憶するシステム | |
JPH07312556A (ja) | 可変長符号の復号化処理装置 | |
JP3441613B2 (ja) | 逐次型順序変換装置 | |
US5801840A (en) | Apparatus for decoding codes with less memory capacity | |
US11838525B2 (en) | Image compression circuitry and image compression method | |
EP0470793A2 (en) | Digital signal orthogonal transformer apparatus | |
JP2950005B2 (ja) | 情報記録装置および情報再生装置 | |
JPS6226101B2 (ja) | ||
JP3083153B2 (ja) | 符号化回路 | |
EP1001540A2 (en) | Block coding method and apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |