JP2922571B2 - データ変換回路 - Google Patents

データ変換回路

Info

Publication number
JP2922571B2
JP2922571B2 JP2089233A JP8923390A JP2922571B2 JP 2922571 B2 JP2922571 B2 JP 2922571B2 JP 2089233 A JP2089233 A JP 2089233A JP 8923390 A JP8923390 A JP 8923390A JP 2922571 B2 JP2922571 B2 JP 2922571B2
Authority
JP
Japan
Prior art keywords
data
bit
bits
length
code
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
Application number
JP2089233A
Other languages
English (en)
Other versions
JPH03289765A (ja
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2089233A priority Critical patent/JP2922571B2/ja
Priority to US07/679,320 priority patent/US5146220A/en
Publication of JPH03289765A publication Critical patent/JPH03289765A/ja
Application granted granted Critical
Publication of JP2922571B2 publication Critical patent/JP2922571B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/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
    • H03M7/425Conversion 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 for the decoding process only

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、MH(モディファイドハフマン)符号化或い
はMR(モディファイドリード)符号化された最長13ビッ
トの不定長の符号データを8ビット固定長のデータに変
換するデータ変換回路に関するものである。
[従来の技術] 従来、この種のデータ変換回路では、第2図に示すよ
うに、ビツトパターンCと符号長Lとから成る不定長の
1符号を入力データとして入力し、所定のシリアルデー
タSに変換して出力するパラレルシリアル変換部21と、
そのシリアルデータSを目的とする固定長のパラレルデ
ータDに変換して出力するシリアルパラレル変換部22と
から成り、不定長のMH,MR符号を固定長のバイトパツク
に変換するように構成されている。
[発明が解決しようとしている課題] しかしながら、MH符号は、最長31ビツトの符号長を持
つものがあり、上記従来例のように、一旦シリアルデー
タに変換すると、最低でも13パルスのクロツクを必要と
するため、変換処理の時間が長くなり、高速なバイトパ
ツクを行うことができないという欠点があつた。
本発明は、上記課題を解決するためになされたもの
で、MH(モディファイドハフマン)符号化或いはMR(モ
ディファイドリード)符号化された最長13ビットの不定
長の符号データを、高速に且つ小規模な構成で8ビット
固定長のデータに変換するデータ変換回路を提供するこ
とを目的とする。
[課題を解決するための手段] 上記目的を達成するために、本発明は、MH(モディフ
ァイドハフマン)符号化或いはMR(モディファイドリー
ド)符号化された最長13ビットの不定長の符号データを
8ビット固定長のデータに変換するデータ変換回路にお
いて、データ長が8ビット以下の不定長の符号データ
は、そのLSBを先頭とし、空きビットを「0」とした8
ビット長のデータとして入力し、また、データ長が9ビ
ット以上の不定長の符号データは、その符号データの後
端をMSBとし、そこから8ビット以外の「0」のビット
を除いた8ビット長のデータとして入力する第1入力手
段と、前記第1入力手段から入力される8ビット長のデ
ータの元となっている不定長の符号データのデータ長を
表す符号長データを入力する第2入力手段と、前記第2
入力手段からの符号長データに応じて前記第1入力手段
から入力する8ビット長のデータをビットシフトして出
力するシフト出力手段と、前記第1入力手段から先に入
力された8ビット長のデータの有効ビットに前記シフト
出力手段によりビットシフトされて出力された8ビット
長のデータを結合し、8ビット固定長のデータに変換し
て出力する出力手段とを備え、前記シフト出力手段は、
ビットシフトすべき8ビット長のデータが9ビット以上
のデータ長の不定長の符号データから「0」のビットを
除いたデータである場合、除いた「0」のビット数分の
間隔を先に入力された8ビット長のデータの有効ビット
とビットシフトすべき8ビット長のデータとの間に設け
るように8ビット長のデータをビットシフトすることを
特徴とする。
[実施例] 以下、添付図面を参照して本発明に係る好適な一実施
例を詳細に説明する。
<構成の説明(第1図,第3図,第4図)> 第1図は、本実施例における回路の構成を示すブロツ
ク図である。図において、11は4ビツト加算器であり、
S3〜S0は加算結果出力、COはキヤリー出力である。12は
3ビツトのDフリツプフロツプ(F/F)であり、後述す
るF/F17中の有効ビツト数の値を一時保存している。13
は第3図に示すAND回路31,32とOR回路33とから構成され
るセレクタ回路が3回路より成るセレクタであり、後述
する符号長データのL3ビツト(SA/SB)により3ビツト
入力A0〜A2,B0〜B2の選択を行う。
14はバレルシフタ回路であり、第4図に詳細を示すよ
うに、パラレル8ビツト入力データD7〜D0を制御入力デ
ータS2〜S0の値に従つて所定の出力Y14〜Y0に平行移動
させる回路である。第4図において41はバイナリー入力
S2〜S0をデコードし、8本のアクテイブハイ出力の何れ
か1本を「1」にするものであり、例えばS2〜S0を「10
0」とすると、入力データD7〜D0は出力Y11〜Y4に出力さ
れ、他の出力は「0」となる。
15は8ビツトセレクタであり、上述の第3図に示すセ
レクタ回路が8回路より成る。16は7ビツトセレクタで
あり、同様に第3図のセレクタ回路が7回路より成る。
17は7ビツトDF/Fであり、バイトパツクした符号データ
列の最終バイトにおいて8ビツトに満たない符号データ
列を一時保持する。18は制御部であり、上述した各部11
〜17の動作タイミングを制御する。
I1は制御部18に入力されるストローブ信号であり、入
力データが有効であることを示す信号である。L3〜L0は
符号長データであり、入力するMH又はMR符号の1符号長
を示している。C7〜C0はMH又はMR符号であり、7ビツト
以下の符号はLSBを先頭、空きビツトを「0」とし、8
ビツト以上の符号は符号の後端をMSBとし、そこから8
ビツト分の符号より成る。
I0はリセツト入力信号であり、12,17に示すフリツプ
フロツプを初期化する。B7〜B0示すフリツプフロツプを
初期化する、B7〜B0はバイトパツクされた符号データで
ある。O1はストローブクロツクであり、符号データ出力
B7〜B0が有効であることを示す信号である。
ST2,ST1は制御部18の入力であり、4ビツト加算機11
から出力されるキヤリー出力C0と加算結果S3がそれぞれ
入力される。SW1,SW2はセレクタ15に対する出力選択信
号であり、SW3はセレクタ16に対する出力選択信号であ
る。そして、LTはDF/F12,17に対するデータ更新クロツ
クである。
<動作の説明(第5図〜第7図)> 次に、本実施例における動作を第5図〜第7図を参照
して以下に説明する。
第5図は、上述の各回路のタイミングチヤートを示す
ものであり、第6図は、そのデータフローである。ま
た、第7図は、本実施例における動作概要を説明するた
めの図である。
まず、フアクシミリ装置に用いられる画像符号化方式
であるMH,MR符号では、1符号が最長13ビツトで構成さ
れている。しかし、符号長が9ビット以上の符号の全て
において、そのビツトパターンの最終ビツトから8ビツ
ト分を除くと、必ず「0」のビツトパターンであるとい
う特徴を持つている。そこで、本実施例における1符号
の入力コードフオーマツトは、4ビツトの符号長フイー
ルドと8ビツトのビツトパターンフイールドとの計12ビ
ツトから成るものとする。
従つて、1符号の符号長が8ビツト以下のものは、上
述のビツトパターンフイールドのビツト0を符号の先頭
ビツトとし、空きビツトを「0」とする。そして、符号
長が9ビツト以上のものは、上述のビツトパターンフイ
ールドのビツト7を符号の最終ビツトとし、8ビツト分
をビツトパターンにより記述する。
すなわち、上述の符号データを入力信号として連続す
る符号列をバイト単位に区切るとすると、第7図に示す
4通りに場合分けされる。
まず、第7図の(1)は、最終バイト中の有効ビツト
数L2′〜L0′と入力符号長L3〜L0との加算結果が8未満
の場合である。
例えば、L2′〜L0′=4,L3〜L0=2の場合、L3=0で
あり、セレクタ13はL2′〜L0′を選択する。この結果、
入力符号データのC1,C0は、バレルシフタ14の出力Y5,Y4
に表われる。ここで、制御部がセレクタ15の選択信号SW
1,SW2の両方を「1」、そして、セレクタ16の選択信号S
W3を「1」にすることで、レジスタ17の入力には、ビツ
ト0〜3を旧コードとし、ビツト4,5を入力符号とする
新しい保存データが与えられる。
また、レジスタ12には、加算器11によつて上述のL2
〜L0′とL3〜L0との和が既に入力されており、ラツチ信
号LTを入力することにより、2つのレジスタ12,!7の内
容が更新される。
以上の動作時のデータの経路を示したものが、第6図
に示す(1)であり、図において斜線部は更新されたデ
ータを表わしている。
次に、第7図の(2)は、L3〜L0<8かつ8≦(L3
L0)+(L2′+L0′)≦15の場合である。
例えば、L2′〜L0′=4,L3〜L0=6の場合、セレクタ
13の出力には、上述の(1)と同様に、L2′〜L0′が出
力される。この結果、入力符号データのC5〜C0は、バラ
レルシフタ14の出力Y9〜Y4に出力される。またL2′〜
L0′とL3〜L0との和S3〜S0=1(1010B)及びキヤリー
出力C0=0となり、C0とS3とから1バイトの符号データ
が出力可能なことが判定できる。
ここで、制御部18がSW1=1,SW2=1とすることで、バ
イト出力B7〜B0からビツト0〜3を旧コート、ビツト4
〜7を符号データのC0〜C3とする1バイトの符号が出力
される。また同時に、SW3=0とすることで、レジスタ1
7にはビツト0,1をC4,C5とするデータが与えられてお
り、レジスタ12には上述の符号長の和の下3ビツト、つ
まり010Bが与えられている。そして、信号LTにより2つ
のレジスタの内容がそれぞれ更新される。
以上の動作時のデータの経路を示したものが、第6図
に示す(2)である。
第7図の(3)は、8≦L3〜L0≦15かつ8≦(L3
L0)+(L2′+L0′)≦15の場合であり、入力符号C7
C0には、点線で示す省略した「0」が存在している。
例えば、L2′〜L0′=100B,L3〜L0=1010Bの場合、L3
=1であるため、セレクタ13の出力には、加算器11から
の出力S0〜S2が表われる。この結果、入力符号C7〜C
0は、バレルシフタ14の出力Y13〜Y6に出力される。つま
り、この時点で、入力符号C7〜C0において省略した
「0」符号が挿入されたことになる。
一方、加算器11の出力S3=1、C0=0であることか
ら、この入力符号C7〜C0をバイトパツクすることによ
り、1バイトの符号データが出力可能であることが判別
できる。
SW1,SW2=1,SW3=0とすることにより、セレクタ15の
出力には、レジスタ17の内容とバレルシフタ14の出力Y7
〜Y0をORしたものが得られ、一方、セレクタ16の出力Y6
〜Y0には、バレルシフタ14のY14〜Y8が出力される。こ
の状態で、出力データB7〜B0が有効であることを信号O1
により示すと共に、レジスタ12,17の内容を更新する信
号LTを出力する。
なお、以上説明した第7図の(2)と(3)の場合
は、第5図及び第6図においては、(2)として同様に
扱つている。
第7図の(4)は、8≦L3〜L0≦15かつ16≦(L3
L0)+(L2′〜L0′)の場合であり、バイトパツクによ
り2バイトの符号が出力される。
例えば、L3〜L0=1100B,L2′〜L0′=110Bの場合を例
に説明する。
まず、入力データがL3=1であることから、セレクタ
13の出力には、加算器11からの出力が表われる。また、
加算器11の出力C0=1,S3=0であることから、2バイト
目の出力符号データが作られることが判別できる。
そこで、制御部18が第1バイト目の出力としてSW1=
0,SW2=1とすることにより出力B7〜B0には、レジスタ1
7の内容だけが出力される。次に、第2バイト目の出力
としてSW1=1,SW2=0,SW3=0とすることにより出力B7
〜B0には、バレルシフタ14の出力Y〜Y0だけが出力さ
れ、また、セレクタ16の出力には、バレルシフタ14の出
力Y14〜Y6が出力される。
この状態でレジスタ12,17の更新クロツクLTを出力す
ることにより、レジスタ12,17がそれぞれ更新される。
上述した動作は、第5図,第6図においては、(3)
として示すものである。
従来例では、パラレル−シリアル変換を行うために、
少なくとも1符号ビツトに対して1駆動クロツクを必要
とし、1バイトの符号データを出力するには、少なくと
も8クロツクの処理時間を要するが、本実施例によれ
ば、1駆動クロツクで1バイトの符号データを作ること
が可能となり、高速なMH又はMR符号のバイトデータ変換
が実現できる。
また、本実施例における回路構成は、LSI化に適した
ものである。
[他の実施例] 本実施例では、入力符号長が8ビツトを越える場合、
その符号ビツトパターン入力を最終ビツトから8ビツト
分のC7〜C0としたが、これを全ビツトパターンを入力す
る方法をとると、第8図(a)に示すように、第1図に
比較してセレクタ13は不用となり、バレルシフタ84は最
長符号長を13ビツトとすると、20ビツトの出力端子を必
要とし、また、セレクタ85は構成を第8図(b)に示す
ように、3入力セレクタとすることにより、本実施例と
同様な動作が可能となる。
また、第1図において、セレクタ16の入力A6〜A0に
は、セレクタ15の出力Y6〜Y0を入力したが、第9図に示
すように、セレクタ96を3入力のセレクタで構成し、こ
の3入力にバレルシフタ14のY7〜Y0,Y8〜Y14,とレジス
タ17の出力の3つを直接入力するようにしても、同様な
作用効果が得られる。
[発明の効果] 以上説明したように、本発明によれば、MH(モディフ
ァイドハフマン)符号化或いはMR(モディファイドリー
ド)符号化された最長13ビットの不定長の符号データを
8ビット固定長のデータに変換する際に、最長13ビット
の不定長の符号データそのままではなく、データ長が8
ビット以下の不定長の符号データは、そのLSBを先頭と
し、空きビットを「0」とした8ビット長のデータとし
て入力し、また、データ長が9ビット以上の不定長の符
号データは、その符号データの後端をMSBとし、そこか
ら8ビット以外の「0」のビットを除いた8ビット長の
データとして入力するので、入力されたデータをビット
シフトするための構成を小規模にすることができ、ま
た、ビットシフトすべき8ビット長のデータが9ビット
以上のデータ長の不定長の符号データから「0」のビッ
トを除いたデータである場合、除いた「0」のビット数
分の間隔を先に入力された8ビット長のデータの有効ビ
ットとビットシフトすべき8ビット長のデータとの間に
設けるように8ビット長のデータをビットシフトするの
で、入力字に除去された「0」ビットを、特別な回路構
成を設けることなく、ビットシフト動作により効率良く
再生することができる。
【図面の簡単な説明】
第1図は本実施例における回路の構成を示すブロツク
図、 第2図は従来例での構成を示すブロツク図、 第3図はセレクタ回路の詳細構成を示す図、 第4図は本実施例におけるバレルシフタの回路構成を示
す図、 第5図は本実施例における動作を説明するためのタイン
ミグチヤート、 第6図は本実施例における動作を説明するためのデータ
フロー、 第7図は本実施例における動作概念を説明するための
図、 第8図(a)(b)及び第9図は他の実施例における構
成を示す図である。 図中、11……4ビツト加算器、12……3ビツト符号長レ
ジスタ、13……3ビツトの2入力セレクタ、14……バレ
ルシフタ、15……8ビツトの2入力セレクタ、16……7
ビツトの2入力セレクタ、17……7ビツトの符号レジス
タ、18……制御部である。

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】MH(モディファイドハフマン)符号化或い
    はMR(モディファイドリード)符号化された最長13ビッ
    トの不定長の符号データを8ビット固定長のデータに変
    換するデータ変換回路において、 データ長が8ビット以下の不定長の符号データは、その
    LSBを先頭とし、空きビットを「0」とした8ビット長
    のデータとして入力し、また、データ長が9ビット以上
    の不定長の符号データは、その符号データの後端をMSB
    とし、そこから8ビット以外の「0」のビットを除いた
    8ビット長のデータとして入力する第1入力手段と、 前記第1入力手段から入力される8ビット長のデータの
    元となっている不定長の符号データのデータ長を表す符
    号長データを入力する第2入力手段と、 前記第2入力手段からの符号長データに応じて前記第1
    入力手段から入力する8ビット長のデータをビットシフ
    トして出力するシフト出力手段と、 前記第1入力手段から先に入力された8ビット長のデー
    タの有効ビットに前記シフト出力手段によりビットシフ
    トされて出力された8ビット長のデータを結合し、8ビ
    ット固定長のデータに変換して出力する出力手段とを備
    え、 前記シフト出力手段は、ビットシフトすべき8ビット長
    のデータが9ビット以上のデータ長の不定長の符号デー
    タから「0」のビットを除いたデータである場合、除い
    た「0」のビット数分の間隔を先に入力された8ビット
    長のデータの有効ビットとビットシフトすべき8ビット
    長のデータとの間に設けるように8ビット長のデータを
    ビットシフトすることを特徴とするデータ変換回路。
JP2089233A 1990-04-05 1990-04-05 データ変換回路 Expired - Fee Related JP2922571B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2089233A JP2922571B2 (ja) 1990-04-05 1990-04-05 データ変換回路
US07/679,320 US5146220A (en) 1990-04-05 1991-04-02 Data conversion method and apparatus for converting undefined length data to fixed length data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2089233A JP2922571B2 (ja) 1990-04-05 1990-04-05 データ変換回路

Publications (2)

Publication Number Publication Date
JPH03289765A JPH03289765A (ja) 1991-12-19
JP2922571B2 true JP2922571B2 (ja) 1999-07-26

Family

ID=13965031

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2089233A Expired - Fee Related JP2922571B2 (ja) 1990-04-05 1990-04-05 データ変換回路

Country Status (2)

Country Link
US (1) US5146220A (ja)
JP (1) JP2922571B2 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0799812B2 (ja) * 1990-03-26 1995-10-25 株式会社グラフイックス・コミュニケーション・テクノロジーズ 信号符号化装置および信号復号化装置、並びに信号符号化復号化装置
JP2601960B2 (ja) * 1990-11-15 1997-04-23 インターナショナル・ビジネス・マシーンズ・コーポレイション データ処理方法及びその装置
GB2260428B (en) * 1991-10-11 1995-03-08 Sony Broadcast & Communication Data Formatter
US5361370A (en) * 1991-10-24 1994-11-01 Intel Corporation Single-instruction multiple-data processor having dual-ported local memory architecture for simultaneous data transmission on local memory ports and global port
US5499382A (en) * 1993-09-20 1996-03-12 Nusinov; Eugene B. Circuit and method of bit-packing and bit-unpacking using a barrel shifter
DE69425209T2 (de) * 1993-09-20 2001-03-15 Codex Corp., Mansfield Verbindungsverfahren und -anordnung für inhaltsadressierbaren Speicher
JP2715871B2 (ja) * 1993-12-20 1998-02-18 日本電気株式会社 可変長符号化方法
JPH07200252A (ja) * 1993-12-28 1995-08-04 Nec Corp バレルシフタ回路
US5631645A (en) * 1993-12-29 1997-05-20 Zenith Electronics Corporation Symbol to byte converter
KR0183173B1 (ko) * 1995-12-13 1999-05-15 윤종용 버퍼 메모리 제어 장치
US5793984A (en) * 1996-04-01 1998-08-11 8×8, Inc. Method of computer representation of data
KR100335138B1 (ko) * 1998-12-30 2002-11-27 엘지정보통신주식회사 비디오코더의가변부호화기및이를이용한코딩방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1211219A (en) * 1982-06-30 1986-09-09 Hideo Kuroda Digital data code conversion circuit for variable- word-length data code
JPS59148467A (ja) * 1983-02-14 1984-08-25 Canon Inc デ−タ圧縮装置
US4914675A (en) * 1988-01-28 1990-04-03 General Electric Company Apparatus for efficiently packing data in a buffer
US4963867A (en) * 1989-03-31 1990-10-16 Ampex Corporation Apparatus for packing parallel data words having a variable width into parallel data words having a fixed width

Also Published As

Publication number Publication date
US5146220A (en) 1992-09-08
JPH03289765A (ja) 1991-12-19

Similar Documents

Publication Publication Date Title
JP2986076B2 (ja) データを圧縮及び圧縮解除するための方法及び装置
JP2922571B2 (ja) データ変換回路
JP3142853B2 (ja) 符号ワードをパッキングおよびアンパッキングするための装置
US5227789A (en) Modified huffman encode/decode system with simplified decoding for imaging systems
US5696791A (en) Apparatus and method for decoding a sequence of digitally encoded data
JP3227292B2 (ja) 符号化装置、符号化方法、復号化装置、復号化方法、符号化復号化装置及び符号化復号化方法
JP3294026B2 (ja) 高速可変長復号化装置
JPH0799812B2 (ja) 信号符号化装置および信号復号化装置、並びに信号符号化復号化装置
JP2819174B2 (ja) デジタル・サンプルのコード化装置およびコード化法、およびビデオ信号処理システム
JP2746109B2 (ja) ハフマン符号復号化回路
US5309156A (en) Variable-length code decoding device
JPH0333914A (ja) データアンパック装置
JP3063180B2 (ja) 可変長符号復号回路
US6496602B2 (en) Sorting device of variable-length code
JPS59215117A (ja) ラン長符号化デ−タ復号装置
JPH11215008A (ja) 復号回路
JPH07200252A (ja) バレルシフタ回路
WO1996032780A1 (fr) Dispositif et procede de conversion-decodage de codes et support d'enregistrement
JPH01314023A (ja) ディジタル信号処理回路
JP3054787B2 (ja) 可変長符号の復号装置
US5801840A (en) Apparatus for decoding codes with less memory capacity
JP3021329B2 (ja) 可変長復号化方法及びその装置
JPH07177040A (ja) 可変長符号化装置
JP3088785B2 (ja) 可変長符号の復号装置
JP2999561B2 (ja) データ圧縮及び復元装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees