JPH0685568B2 - 圧縮コ−ドの復号装置 - Google Patents
圧縮コ−ドの復号装置Info
- Publication number
- JPH0685568B2 JPH0685568B2 JP59114835A JP11483584A JPH0685568B2 JP H0685568 B2 JPH0685568 B2 JP H0685568B2 JP 59114835 A JP59114835 A JP 59114835A JP 11483584 A JP11483584 A JP 11483584A JP H0685568 B2 JPH0685568 B2 JP H0685568B2
- Authority
- JP
- Japan
- Prior art keywords
- code
- shift
- decoding
- compressed
- decoded
- 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 - Lifetime
Links
Description
【発明の詳細な説明】 本発明はファクシミリや画像電子ファイル等に用いられ
る帯域圧縮符号化による圧縮コードの復号装置に関する
ものである。
る帯域圧縮符号化による圧縮コードの復号装置に関する
ものである。
従来のファクシミリ等の画像伝送装置や近年の光ディス
クや磁気ディスク等を用いた画像ファイル装置等におい
ては、画像データを圧縮して取扱うことにより、データ
量を減少せしめ伝送或いは蓄積動作の高速化、効率化を
計っている。
クや磁気ディスク等を用いた画像ファイル装置等におい
ては、画像データを圧縮して取扱うことにより、データ
量を減少せしめ伝送或いは蓄積動作の高速化、効率化を
計っている。
かかる画像圧縮とは、いわゆるコード変換操作の一種で
あり、代表的な圧縮方法であるモディファイド・ホフマ
ン(MH)符号化についで言えば、画像中の連続した白又
は黒画素のビットブロックを別の圧縮コードに対応させ
て表現するものである。この際、発生頻度の高い画素ビ
ットブロックに対しては短いコード長の圧縮コードを対
応させ、一方、発生頻度の低い画素ビットブロックに対
しては長いコード長の圧縮コードを対応させることによ
り、画素の組合せの発生頻度の偏りを利用し画像全体を
より少ないビット数の別のコード列で表現するものであ
る。
あり、代表的な圧縮方法であるモディファイド・ホフマ
ン(MH)符号化についで言えば、画像中の連続した白又
は黒画素のビットブロックを別の圧縮コードに対応させ
て表現するものである。この際、発生頻度の高い画素ビ
ットブロックに対しては短いコード長の圧縮コードを対
応させ、一方、発生頻度の低い画素ビットブロックに対
しては長いコード長の圧縮コードを対応させることによ
り、画素の組合せの発生頻度の偏りを利用し画像全体を
より少ないビット数の別のコード列で表現するものであ
る。
ところで、この画素ビットブロックに対する圧縮コード
の対応は経験則に基づいて決められたものであり、ま
た、その圧縮コードのコード長は不揃いなものである。
の対応は経験則に基づいて決められたものであり、ま
た、その圧縮コードのコード長は不揃いなものである。
また、MH符号化の規約として、1ライン毎の画像の同期
又は区切りを示すために、EOL(エンド・オブ・ライ
ン)符号が、上記圧縮符号とともに用いられる。そし
て、受信側の装置ではこのEOL符合に基づきライン同期
をとる構成が一般的に用いられている。従って、何らか
の原因により、復号動作に誤りを生じた場合には、復号
回路ではその後に入力するEOL符号を検出し、検出動作
に従って、復号動作を開始する。この様に、EOL符号は
復号動作に重要な機能を果すものであり、もし、EOL符
号の検出が誤ってなされると、それに続く復号動作に乱
れを生じ正確な画像再現がなされないことになる。
又は区切りを示すために、EOL(エンド・オブ・ライ
ン)符号が、上記圧縮符号とともに用いられる。そし
て、受信側の装置ではこのEOL符合に基づきライン同期
をとる構成が一般的に用いられている。従って、何らか
の原因により、復号動作に誤りを生じた場合には、復号
回路ではその後に入力するEOL符号を検出し、検出動作
に従って、復号動作を開始する。この様に、EOL符号は
復号動作に重要な機能を果すものであり、もし、EOL符
号の検出が誤ってなされると、それに続く復号動作に乱
れを生じ正確な画像再現がなされないことになる。
しかしながら、EOL符号は画像を表わすものではなく、
それを他の圧縮コードと同様に復号動作する必要はな
く、これを復号動作するのは時間の無駄となり、また、
圧縮コードのデコード用のロジックを複雑とするもので
ある。
それを他の圧縮コードと同様に復号動作する必要はな
く、これを復号動作するのは時間の無駄となり、また、
圧縮コードのデコード用のロジックを複雑とするもので
ある。
本発明は以上に鑑みてなされたもので、圧縮コードとと
もに入力するライン同期コードを確実に検出するととも
に、ライン同期コードを他の圧縮コードと同様に復号処
理することによる無駄時間を排除し、高速な復号動作を
達成する圧縮データの復号装置を提供することを目的と
し、詳しくは、画像の各ラインの終了を示すEOLコード
を含む不定長の圧縮コードを順次復号する圧縮コードの
復号装置において、連続して入力する圧縮コードを複数
連続して記憶する記憶手段と、前記記憶手段に記憶され
ている複数の圧縮コードをシフトすることにより、復号
済の圧縮コードを前記記憶手段から排出するとともに次
に復号すべき圧縮コードを前記記憶手段の所定位置にセ
ットするシフト手段と、前記記憶手段の所定位置にセッ
トされた圧縮コードを復号することによりラン長データ
及び圧縮コードのコード長データを出力する復号手段
と、前記復号手段で復号された圧縮コードがコード長よ
りもラン長の方が短い特定の圧縮コードでない場合には
前記シフト手段により前記コード長データに従ったシフ
トを順次実行せしめ、前記特定の圧縮コードである場合
には前記シフト手段により前記コード長データに従った
シフトを一度に実行せしめるシフト制御手段と、前記復
号手段で復号された圧縮コードが前記特定の圧縮コード
である場合に前記シフト手段により一度に実行される最
大シフト量に対応した前記記憶手段の前記所定位置から
1ビットずつずれた複数の異なる位置のいずれかに前記
EOLコードが存在しているか否かを検出する検出手段と
を有し、前記シフト制御手段は、前記検出手段により前
記EOLコードが検出されない場合には前記シフト手段に
より前記コード長データに従ったシフトを実行せしめ復
号済の圧縮コードを前記記憶手段から排出せしめ、一
方、前記検出手段により前記EOLコードが検出された場
合には前記シフト手段により前記コード長データに従っ
たシフトを実行せしめ復号済の圧縮コードを前記記憶手
段から排出せしめ、更に、前記EOLコードのコード長分
のシフトを前記シフト手段に実行せしめ前記復号済の圧
縮コードに続く前記EOLコードを前記記憶手段から排出
せしめる圧縮コードの復号装置を提供するものである。
もに入力するライン同期コードを確実に検出するととも
に、ライン同期コードを他の圧縮コードと同様に復号処
理することによる無駄時間を排除し、高速な復号動作を
達成する圧縮データの復号装置を提供することを目的と
し、詳しくは、画像の各ラインの終了を示すEOLコード
を含む不定長の圧縮コードを順次復号する圧縮コードの
復号装置において、連続して入力する圧縮コードを複数
連続して記憶する記憶手段と、前記記憶手段に記憶され
ている複数の圧縮コードをシフトすることにより、復号
済の圧縮コードを前記記憶手段から排出するとともに次
に復号すべき圧縮コードを前記記憶手段の所定位置にセ
ットするシフト手段と、前記記憶手段の所定位置にセッ
トされた圧縮コードを復号することによりラン長データ
及び圧縮コードのコード長データを出力する復号手段
と、前記復号手段で復号された圧縮コードがコード長よ
りもラン長の方が短い特定の圧縮コードでない場合には
前記シフト手段により前記コード長データに従ったシフ
トを順次実行せしめ、前記特定の圧縮コードである場合
には前記シフト手段により前記コード長データに従った
シフトを一度に実行せしめるシフト制御手段と、前記復
号手段で復号された圧縮コードが前記特定の圧縮コード
である場合に前記シフト手段により一度に実行される最
大シフト量に対応した前記記憶手段の前記所定位置から
1ビットずつずれた複数の異なる位置のいずれかに前記
EOLコードが存在しているか否かを検出する検出手段と
を有し、前記シフト制御手段は、前記検出手段により前
記EOLコードが検出されない場合には前記シフト手段に
より前記コード長データに従ったシフトを実行せしめ復
号済の圧縮コードを前記記憶手段から排出せしめ、一
方、前記検出手段により前記EOLコードが検出された場
合には前記シフト手段により前記コード長データに従っ
たシフトを実行せしめ復号済の圧縮コードを前記記憶手
段から排出せしめ、更に、前記EOLコードのコード長分
のシフトを前記シフト手段に実行せしめ前記復号済の圧
縮コードに続く前記EOLコードを前記記憶手段から排出
せしめる圧縮コードの復号装置を提供するものである。
本発明の詳細な説明を以下に述べる。
まず、本発明の実施例の概要を第1図に示す回路ブロツ
ク図を用いて説明する。
ク図を用いて説明する。
第1図において101は記憶回路であり、例えば画像を光
電的に読取るリーダや画像をフアイルする電子フアイ
ル、或いは電話線等の伝送路を介して画像上方を受信す
る受信機等から入力された既に別途手段を用いて画像信
号を圧縮符号化することにより得た謂る、MH(モデイフ
アイド・ホフマン)コードを、16ビツト(1ワード)単
位で順次読出し可能な形で記憶している回路で、例えば
RAM(ランダム・アクセス・メモリ)又はラツチ回路等
により実現できる回路である。又、記憶回路101に於け
るMHコードの記憶形式は、第2図(a)に一例を示す如
くである。即ち、MHコード本来の性質としてそのコード
長は不揃い(最小2ビツト〜最大13ビツト)であるが、
コード長に拘らず、1ビツトの空もなく、第2図(b)
の如くシリアルに連ねたビツト列を16ビツト毎に並列に
変換して並べた形式である。第2図(b)において、WB
及びBBは夫々白及び黒画素を示すMHコードで、WB及びBB
の後の数字はそのコードの示すランレングスを表わして
おり、例えば、WBBはランレングス8の白を示すMHコー
ドである。この形式に於いてMHコードの区切りとワード
(16ビツト)の区切りとは必ずしも一致していない。
又、記憶回路101は外部コントロールに依り、後続のワ
ードを順次、パラレル出力できる機能を有するものであ
る。
電的に読取るリーダや画像をフアイルする電子フアイ
ル、或いは電話線等の伝送路を介して画像上方を受信す
る受信機等から入力された既に別途手段を用いて画像信
号を圧縮符号化することにより得た謂る、MH(モデイフ
アイド・ホフマン)コードを、16ビツト(1ワード)単
位で順次読出し可能な形で記憶している回路で、例えば
RAM(ランダム・アクセス・メモリ)又はラツチ回路等
により実現できる回路である。又、記憶回路101に於け
るMHコードの記憶形式は、第2図(a)に一例を示す如
くである。即ち、MHコード本来の性質としてそのコード
長は不揃い(最小2ビツト〜最大13ビツト)であるが、
コード長に拘らず、1ビツトの空もなく、第2図(b)
の如くシリアルに連ねたビツト列を16ビツト毎に並列に
変換して並べた形式である。第2図(b)において、WB
及びBBは夫々白及び黒画素を示すMHコードで、WB及びBB
の後の数字はそのコードの示すランレングスを表わして
おり、例えば、WBBはランレングス8の白を示すMHコー
ドである。この形式に於いてMHコードの区切りとワード
(16ビツト)の区切りとは必ずしも一致していない。
又、記憶回路101は外部コントロールに依り、後続のワ
ードを順次、パラレル出力できる機能を有するものであ
る。
第1図において102は謂ゆるマルチ・プレクサ(データ
・セレクタ)である。また、103は28ビツト並列入力及
び出力を有するレジスタであり、記憶回路101から、マ
ルチ・プレクサ102を経て、レジスタ103の入力側に与え
られるMHコードを一時記憶する機能及び既にレジスタ10
3に記憶しているMHコードを出力として後述するMHコー
ド・デコード・ロジツク104及びMHコード・デコード・
テーブルROM(リード・オンリ・メモリ)105等に与える
役割りを有する。
・セレクタ)である。また、103は28ビツト並列入力及
び出力を有するレジスタであり、記憶回路101から、マ
ルチ・プレクサ102を経て、レジスタ103の入力側に与え
られるMHコードを一時記憶する機能及び既にレジスタ10
3に記憶しているMHコードを出力として後述するMHコー
ド・デコード・ロジツク104及びMHコード・デコード・
テーブルROM(リード・オンリ・メモリ)105等に与える
役割りを有する。
マルチ・プレクサ102及びレジスタ103とでデータのシリ
アル・シフト及びnビツトのジヤンプ・シフトが可能な
謂ゆるビツト・シフタを形成する。このビツト・シフタ
は後述するMHコード・デコード・ロジツク104及びMHコ
ード・デコードRM105の出力等によりコントロールさ
れ、前述の方法によりMHコードの境目に拘りなく記憶回
路101がレジスタ103内に記憶されたMHコードを必要なビ
ツト数だけシフトし記憶する機能を果すものである。第
3図(詳細は後述する)はこのビツトシフタの詳細な構
成を示す図であり、レジスタ103内に例示されたMHコー
ド列は第1図示の記憶回路101内に例示したMHコードが
適切なコントロールを経て、レジスタ103内に移動し、
更に白のランレングス8を示すMHコードWB1(10011)が
デコード可能な位置に来た状態を図示している。即ち第
3図示のレジスタ103の出力 即ち、LSB出力にMHコードの先頭ビツトが出力されてい
る状態をデコード可能な位置とし、今後「頭出し完了」
と称する。従つて第3図レジスタ103内のコードの配列
は白のランレングス8を示すMHコードWB8が「頭出し完
了」の状態にある事を示している。
アル・シフト及びnビツトのジヤンプ・シフトが可能な
謂ゆるビツト・シフタを形成する。このビツト・シフタ
は後述するMHコード・デコード・ロジツク104及びMHコ
ード・デコードRM105の出力等によりコントロールさ
れ、前述の方法によりMHコードの境目に拘りなく記憶回
路101がレジスタ103内に記憶されたMHコードを必要なビ
ツト数だけシフトし記憶する機能を果すものである。第
3図(詳細は後述する)はこのビツトシフタの詳細な構
成を示す図であり、レジスタ103内に例示されたMHコー
ド列は第1図示の記憶回路101内に例示したMHコードが
適切なコントロールを経て、レジスタ103内に移動し、
更に白のランレングス8を示すMHコードWB1(10011)が
デコード可能な位置に来た状態を図示している。即ち第
3図示のレジスタ103の出力 即ち、LSB出力にMHコードの先頭ビツトが出力されてい
る状態をデコード可能な位置とし、今後「頭出し完了」
と称する。従つて第3図レジスタ103内のコードの配列
は白のランレングス8を示すMHコードWB8が「頭出し完
了」の状態にある事を示している。
第1図において104はMH・コード・デコード・ロジツク
(以下ロジツク104と称する)であり、MHコードのコー
ド長よりMHコードの示すランレングスの方が短い以下の
4種のコード、即ち、白のランレングス1(MHコードで
000111、コード長=6>ランレングス=1)、白のラン
レングス2(MHコードで0111、コード長=4>ランレン
グス=2)、白のランレングス3(MHコードで1000、コ
ード長=4>ランレングス=3)及び黒のランレングス
1(MHコードで010、コード長=3>ランレングス=
1)をデコードする回路である。尚、以下の説明中、白
のランレングス1、白のランレングス2、白のランレン
グス3及び黒のランレングス1を夫々示す上述の4種の
MHコードをまとめてHSCコードと呼ぶことにする。
(以下ロジツク104と称する)であり、MHコードのコー
ド長よりMHコードの示すランレングスの方が短い以下の
4種のコード、即ち、白のランレングス1(MHコードで
000111、コード長=6>ランレングス=1)、白のラン
レングス2(MHコードで0111、コード長=4>ランレン
グス=2)、白のランレングス3(MHコードで1000、コ
ード長=4>ランレングス=3)及び黒のランレングス
1(MHコードで010、コード長=3>ランレングス=
1)をデコードする回路である。尚、以下の説明中、白
のランレングス1、白のランレングス2、白のランレン
グス3及び黒のランレングス1を夫々示す上述の4種の
MHコードをまとめてHSCコードと呼ぶことにする。
第1図において105はMH・コード・デコード・RM
(以下RM105と称する)であり、前述のロジツク104
がデコードを受持つ4種のMHコードを含む全てのMH・コ
ードを主としてデコードする回路である。
(以下RM105と称する)であり、前述のロジツク104
がデコードを受持つ4種のMHコードを含む全てのMH・コ
ードを主としてデコードする回路である。
ロジツク140及びROM105はMHコードの処理スピード、及
び方法の違いにより、デコードを受け持つMHコードを区
分しているのであるが、これら2つのデコーダによりレ
ジスタ103においてMHコードが「頭出し完了」する毎
に、該MHコードのランレングス、コード長及び黒又は白
の画像の色の別、そしてメイク・アツプ・コード又はタ
ーミネイト・コードの別、あるかないか等の出力をする
ものである。
び方法の違いにより、デコードを受け持つMHコードを区
分しているのであるが、これら2つのデコーダによりレ
ジスタ103においてMHコードが「頭出し完了」する毎
に、該MHコードのランレングス、コード長及び黒又は白
の画像の色の別、そしてメイク・アツプ・コード又はタ
ーミネイト・コードの別、あるかないか等の出力をする
ものである。
112はEOL検出回路で、レジスタ103にビツトシリアルに
格納されたMHコード中にライン同期のためのコード、即
ち、エンドオブライン(EOL)コードが存在するか否か
及びその格納位置を検出する。
格納されたMHコード中にライン同期のためのコード、即
ち、エンドオブライン(EOL)コードが存在するか否か
及びその格納位置を検出する。
第1図において108はランレングス・カウンタでカウン
ト数“0"から最大のメイク・アツプ・コードのランレン
グス、即ち“2560"以上のカウントが可能なバイナリ・
カウンタである。このランレングス・カウンタ108はロ
ジツク104又はROM105から出力されるMHコードのランレ
ングスをカウントし終える毎にカウント終了信号(本例
ではカウンタのリツプル・キヤリCR)を出力する。
ト数“0"から最大のメイク・アツプ・コードのランレン
グス、即ち“2560"以上のカウントが可能なバイナリ・
カウンタである。このランレングス・カウンタ108はロ
ジツク104又はROM105から出力されるMHコードのランレ
ングスをカウントし終える毎にカウント終了信号(本例
ではカウンタのリツプル・キヤリCR)を出力する。
109はフリツプ・フロツプであり、前述のランレングス
・カウンタ108からのカウント終了信号(リツプル・キ
ヤリCR)を受けて、その度毎に出力を反転させる。但
し、後述するようにメイク・アツプ・コードのカウント
終了信号では該出力は反転しないように制御される。こ
のフリププ・フロツプ109の出力が記憶回路101から読出
したMHコードをデコードして得られた画像信号である。
・カウンタ108からのカウント終了信号(リツプル・キ
ヤリCR)を受けて、その度毎に出力を反転させる。但
し、後述するようにメイク・アツプ・コードのカウント
終了信号では該出力は反転しないように制御される。こ
のフリププ・フロツプ109の出力が記憶回路101から読出
したMHコードをデコードして得られた画像信号である。
107はコード・レングス・カウンタでMH・コードの最大
コード長である。“13"以上をカウントできるバイナリ
・カウンタでレジスタ103内において「頭出し完了」し
ていたMH・コードをシリアルシフト或いはジヤンプ・シ
フトする事によつて、デコード済コードとして103レジ
スタから掃出してしまい、後続するMHコードを「頭出し
完了」の位置へシフトする際に、そのシフト量をカウン
トし制御するものである。
コード長である。“13"以上をカウントできるバイナリ
・カウンタでレジスタ103内において「頭出し完了」し
ていたMH・コードをシリアルシフト或いはジヤンプ・シ
フトする事によつて、デコード済コードとして103レジ
スタから掃出してしまい、後続するMHコードを「頭出し
完了」の位置へシフトする際に、そのシフト量をカウン
トし制御するものである。
106は4ビツトのアキユミユレータである。上述したよ
うにレジスタ103内に記憶回路101から取込まれたMHコー
ドはデコード済となると順次レジスタ103から掃出さ
れ、これにより、レジスタ103内に空ビツトができる。
そこでアキユミユレータ106がレジスタ103内の空ビツト
の数をカウントし、16ビツトの空ビツトができる毎に新
たなMHコードを記憶回路101から1ワード(16ビツト)
パラレルにレジスタ103内の空ビツトへ補充する。これ
によりレジスタ103からロジツク104又はRM105へ与え
るMHコードの列が途切れないように制御し、高速なデコ
ード動作を可能とする。
うにレジスタ103内に記憶回路101から取込まれたMHコー
ドはデコード済となると順次レジスタ103から掃出さ
れ、これにより、レジスタ103内に空ビツトができる。
そこでアキユミユレータ106がレジスタ103内の空ビツト
の数をカウントし、16ビツトの空ビツトができる毎に新
たなMHコードを記憶回路101から1ワード(16ビツト)
パラレルにレジスタ103内の空ビツトへ補充する。これ
によりレジスタ103からロジツク104又はRM105へ与え
るMHコードの列が途切れないように制御し、高速なデコ
ード動作を可能とする。
尚、110は第1図示のブロツク101〜109間の入出力信号
を制御する制御回路を図示したものである。
を制御する制御回路を図示したものである。
以上の如くしてMHコードを画像信号へ変換、即ちMHコー
ドの復号がなされる。復号された画像信号はプリンタ11
1に供給され、被記録材上に画像記録がなされる。尚、
プリンタ111からは1走査毎の同期信号である水平同期
信号HSYNCが出力され、このHSYNCは復号動作のタイミン
グに用いられる。
ドの復号がなされる。復号された画像信号はプリンタ11
1に供給され、被記録材上に画像記録がなされる。尚、
プリンタ111からは1走査毎の同期信号である水平同期
信号HSYNCが出力され、このHSYNCは復号動作のタイミン
グに用いられる。
次に本発明の実施例を更に具体的に説明する。本実施例
は、画像圧縮符号であるMHコードを復号した結果である
画像信号を何らの画像メモリを設けることなくレーザ・
ビーム・プリンタ等の高速プリンタに直接出力するのに
使用する謂ゆる“高速・リアル・タイム・MH・デコー
ダ”を提供するものである。従つて、MH・デコーダの処
理速度の高速性及びMH・デコーダの画像出力(本例は画
像周波数=+数MHzを想定)とレーザ・ビーム・プリン
タ等の高速プリンタとの同期の問題が解決されねばなら
ない。そこで、これらの問題点を解決する為に、以下に
述べる処理方法に基き所望の“高速・リアル・タイム・
MH・デコーダ”を実現する。
は、画像圧縮符号であるMHコードを復号した結果である
画像信号を何らの画像メモリを設けることなくレーザ・
ビーム・プリンタ等の高速プリンタに直接出力するのに
使用する謂ゆる“高速・リアル・タイム・MH・デコー
ダ”を提供するものである。従つて、MH・デコーダの処
理速度の高速性及びMH・デコーダの画像出力(本例は画
像周波数=+数MHzを想定)とレーザ・ビーム・プリン
タ等の高速プリンタとの同期の問題が解決されねばなら
ない。そこで、これらの問題点を解決する為に、以下に
述べる処理方法に基き所望の“高速・リアル・タイム・
MH・デコーダ”を実現する。
(1)MH・デコーダとプリンタの同期はMHコードのE
Lとプリンタの1ライン毎の同期信号である水平同期信
号とで行なう。
Lとプリンタの1ライン毎の同期信号である水平同期信
号とで行なう。
(2)第1図レジスタ103内において「頭出し完了」し
てデコード済となつたMHコードを掃出し、後続のMHコー
ドを「頭出し完了」の位置までシフトする方法として、
掃出すべきコードによつてジヤンプシフト及びシリアル
シフトの2種類の方法のうちのどちらかを使用するよう
にする。
てデコード済となつたMHコードを掃出し、後続のMHコー
ドを「頭出し完了」の位置までシフトする方法として、
掃出すべきコードによつてジヤンプシフト及びシリアル
シフトの2種類の方法のうちのどちらかを使用するよう
にする。
この2点を達成するための具体的な構成を図面を用いて
説明する。
説明する。
第8図は第1図に出力部の例として示したレーザ・ビー
ム・プリンタの一実施例の構成を示す斜視図である。
ム・プリンタの一実施例の構成を示す斜視図である。
このプリンタはレーザ光を用いた電子写真方式によるも
のであり、201はハウジングHa内に可回動に支持された
感光ドラムである。202はレーザ光Laを出射する半導体
レーザであり、出射されたレーザ光Laはビームエキスパ
ンダ203に入射せしめられ、所定のビーム径をもつたレ
ーザ光となる。更にレーザ光は鏡面を複数個有する多面
体ミラー204に入射される。多面体ミラー204は定速回転
モータ205により所定速度で回転される。多面体ミラー2
04によつてビームエキスパンダ203より出射したレーザ
光は実質的に水平に走査される。そしてf−θ特性を有
する結像レンズ206により、帯電器213により所定の極性
に帯電されている感光ドラム201上にスポツト光として
結像される。
のであり、201はハウジングHa内に可回動に支持された
感光ドラムである。202はレーザ光Laを出射する半導体
レーザであり、出射されたレーザ光Laはビームエキスパ
ンダ203に入射せしめられ、所定のビーム径をもつたレ
ーザ光となる。更にレーザ光は鏡面を複数個有する多面
体ミラー204に入射される。多面体ミラー204は定速回転
モータ205により所定速度で回転される。多面体ミラー2
04によつてビームエキスパンダ203より出射したレーザ
光は実質的に水平に走査される。そしてf−θ特性を有
する結像レンズ206により、帯電器213により所定の極性
に帯電されている感光ドラム201上にスポツト光として
結像される。
207は反射ミラー208によつて反射されたレーザ光を検知
するビーム検出器で、この検出信号により感光ドラム20
1上に所望の光情報を与えるため半導体レーザ202の変調
動作のタイミングを決定する。
するビーム検出器で、この検出信号により感光ドラム20
1上に所望の光情報を与えるため半導体レーザ202の変調
動作のタイミングを決定する。
感光ドラム201上に結像走査されたレーザ光により感光
ドラム201上に高解像度の静電潜像が形成される。この
潜像は現像器209により顕画化された後、カセツト210,2
11のいずれかに収納されている記録材に転写され、更に
定着器212を記録材が通ることにより像は記録材に定着
されハードコピーとして不図示の排出部に排出される。
ドラム201上に高解像度の静電潜像が形成される。この
潜像は現像器209により顕画化された後、カセツト210,2
11のいずれかに収納されている記録材に転写され、更に
定着器212を記録材が通ることにより像は記録材に定着
されハードコピーとして不図示の排出部に排出される。
第9図に第8図の半導体レーザを所定の画像信号により
変調するためのプリンタ回路の一実施例を示す。
変調するためのプリンタ回路の一実施例を示す。
復号処理されて入力端子INから入力された画像信号VIDE
Oは1走査分の画像信号群毎に少なくとも1走査分の画
素数に等しい数のビツト数を持つシフトレジスタ等から
なる第1ラインバツフア301及び第2ラインバツフア302
に、バツフアスイツチ制御回路303の制御により交互に
入力される。
Oは1走査分の画像信号群毎に少なくとも1走査分の画
素数に等しい数のビツト数を持つシフトレジスタ等から
なる第1ラインバツフア301及び第2ラインバツフア302
に、バツフアスイツチ制御回路303の制御により交互に
入力される。
更に、第1ラインバツフア301及び第2ラインバツフア3
02に入力された画像信号はビーム検出器304からのビー
ム検出信号をトリガ信号として1走査分毎に交互に読出
され、レーザドライバ305に加えられる。
02に入力された画像信号はビーム検出器304からのビー
ム検出信号をトリガ信号として1走査分毎に交互に読出
され、レーザドライバ305に加えられる。
レーザドライバ305はレーザ光の発光を制御すべく入力
した画像信号に基づき半導体レーザ306を変調制御す
る。
した画像信号に基づき半導体レーザ306を変調制御す
る。
ラインバツフアを2個有することにより次々に入力され
る画像信号をいずれかのラインバツフアに入力している
間に他方のラインバツフアに既に格納されている画像信
号をレーザドライバ305に出力するので高速な画像信号
の入力に対応可能である。
る画像信号をいずれかのラインバツフアに入力している
間に他方のラインバツフアに既に格納されている画像信
号をレーザドライバ305に出力するので高速な画像信号
の入力に対応可能である。
又、ビーム検出器304からのビーム検出信号は水平同期
信号HSYNCとして復号処理回路にも伝達され、後述の如
く復号処理とプリンタ動作との同期合せに用いられる。
信号HSYNCとして復号処理回路にも伝達され、後述の如
く復号処理とプリンタ動作との同期合せに用いられる。
尚、本プリンタにおいて復号化された画像信号は2つの
ラインバツフア、即ち、第1ラインバツフア301及び第
2ラインバツフア302によるダブルバツフア構成のバツ
フアを介して入力される。このダブルバツフア構成を用
いて復号動作に誤まりがあつた場合の補正動作を行な
う。つまり、復号回路により復号された画像信号を一方
のラインバツフアに格納中、復号動作に誤まりを生じた
場合、誤まりのあつた現ラインの画像信号によるプリン
ト動作を禁止し、他方のラインバツフアに既に格納され
ている前ラインの画像信号によりプリント動作する。
ラインバツフア、即ち、第1ラインバツフア301及び第
2ラインバツフア302によるダブルバツフア構成のバツ
フアを介して入力される。このダブルバツフア構成を用
いて復号動作に誤まりがあつた場合の補正動作を行な
う。つまり、復号回路により復号された画像信号を一方
のラインバツフアに格納中、復号動作に誤まりを生じた
場合、誤まりのあつた現ラインの画像信号によるプリン
ト動作を禁止し、他方のラインバツフアに既に格納され
ている前ラインの画像信号によりプリント動作する。
これにより、復号誤まりのあつた画像信号によるプリン
トがなされないので、再生画像への影響を除去できる。
尚、この補正動作により同一画像信号による画像が少な
くとも2ライン重復してしまうことになるが、本例に用
いた高解像度(例えば16Pel/mm)の記録動作においては
再生画像にそれほど影響を与えるものではない。
トがなされないので、再生画像への影響を除去できる。
尚、この補正動作により同一画像信号による画像が少な
くとも2ライン重復してしまうことになるが、本例に用
いた高解像度(例えば16Pel/mm)の記録動作においては
再生画像にそれほど影響を与えるものではない。
第4図において105は第1図示のMH・コード・テーブルR
OMであり、実際には複数個のRM(リード・オンリ・
メモリ)により構成されるものである。以下にRM105
の内容を模式的に説明すると、AD0〜AD13はRM105の
アドレス端子である。又0〜011はRM105の出力端
子である。ROM105の記憶内容のフオーマツトはレジスタ
103から供給されるデコードすべきMHコードのLSBビツト
をRM105のアドレス端子AD0にそろえ以下各MHコード
の各ビツトをMSB方向へ順次RM105のアドレス端子のA
D1からAD11までに与える。アドレス端子AD13にはMHコー
ドの識別を示す信号B/−ROM(黒=1、白=0)を与
えるものとする。尚、MHコードが12ビツトより短い場合
はその不足分のビツトは無視(DON′T CARE)する。
又、ELコードはメイクアツプコードとして扱う。又
ランレングス1792以上のメイクアツプコードの色別ビツ
ト(AD13)は無視(DON′T CARE)とする。
OMであり、実際には複数個のRM(リード・オンリ・
メモリ)により構成されるものである。以下にRM105
の内容を模式的に説明すると、AD0〜AD13はRM105の
アドレス端子である。又0〜011はRM105の出力端
子である。ROM105の記憶内容のフオーマツトはレジスタ
103から供給されるデコードすべきMHコードのLSBビツト
をRM105のアドレス端子AD0にそろえ以下各MHコード
の各ビツトをMSB方向へ順次RM105のアドレス端子のA
D1からAD11までに与える。アドレス端子AD13にはMHコー
ドの識別を示す信号B/−ROM(黒=1、白=0)を与
えるものとする。尚、MHコードが12ビツトより短い場合
はその不足分のビツトは無視(DON′T CARE)する。
又、ELコードはメイクアツプコードとして扱う。又
ランレングス1792以上のメイクアツプコードの色別ビツ
ト(AD13)は無視(DON′T CARE)とする。
ROM105には、以上によつて決めたアドレスの記憶データ
として各アドレスを与えたMHコードの内容を書き込んで
おき、各MHコードに対応した出力を出力端子O0〜O11に
出力する。即ち、出力端子0はデコードしたMHコード
がメイクアツプコードのときに「1」、ターミネイトコ
ードのときに「0」となる信号M/を出力する。出力端
子1はデコードしたMHコードがランレングス0の白コ
ード(00110101)又はランレングス0の黒コード(0000
110111)のときに「0」を出力し、その他の時「1」と
なる信号▲▼を出力する。
として各アドレスを与えたMHコードの内容を書き込んで
おき、各MHコードに対応した出力を出力端子O0〜O11に
出力する。即ち、出力端子0はデコードしたMHコード
がメイクアツプコードのときに「1」、ターミネイトコ
ードのときに「0」となる信号M/を出力する。出力端
子1はデコードしたMHコードがランレングス0の白コ
ード(00110101)又はランレングス0の黒コード(0000
110111)のときに「0」を出力し、その他の時「1」と
なる信号▲▼を出力する。
出力端子2〜5は各MHコードのコード長(ビツト
数)を2の補数表現した形式の4ビツト出力CL0〜CL3を
出力する。但し、出力端子5は該コード長のLSBであ
る。出力端子6〜11は各MHコードのランレングスを
2の補数表現した形式の6ビツト出力RL0〜RL5を出力す
る。但し、出力端子11は該ランレングスのLSBであ
る。尚、メイク・アツプ・コードに対してはランレング
スの2進数表現の上位6ビツトのみを出力端子6〜
11に割当てる。これはMHコードにおけるメイクアツプコ
ードは上位6ビツトのみでもそのランレングスを表現で
きるからである。第4図の402にランレングス8の白を
示すMHコードWB8(10011)をデコードした場合のROM105
の出力6〜11を例示する。(本実施例に用いるMHコ
ード表はCCITTYELLOW−BK Fascicle VII.2 Rec.T.
4 TABLE 1/T.4及びTABLE2/T.4による。) 第4図において104は第1図示のMHコード・デコード・
ロジツクであり、本実施例ではアンドゲート及びオアゲ
ートにより構成した検出ロジツクである。ロジツク104
の出力である▲▼信号はHSCコード、即ち、ラン
レングス1,2及び3の白を示すMHコード及びランレング
ス1の黒を示すMHコードを検出した時「0」となる。ま
た、出力▲〜▼は上述の4種のMHコード
(HSCコード)の各々のコード長を2進数で表現し、イ
ンバートして出力したものである。第4図404にランレ
ングス1の白を示すMHコード白1WB1(000111)をデコー
ドした場合の出力を例示する。
数)を2の補数表現した形式の4ビツト出力CL0〜CL3を
出力する。但し、出力端子5は該コード長のLSBであ
る。出力端子6〜11は各MHコードのランレングスを
2の補数表現した形式の6ビツト出力RL0〜RL5を出力す
る。但し、出力端子11は該ランレングスのLSBであ
る。尚、メイク・アツプ・コードに対してはランレング
スの2進数表現の上位6ビツトのみを出力端子6〜
11に割当てる。これはMHコードにおけるメイクアツプコ
ードは上位6ビツトのみでもそのランレングスを表現で
きるからである。第4図の402にランレングス8の白を
示すMHコードWB8(10011)をデコードした場合のROM105
の出力6〜11を例示する。(本実施例に用いるMHコ
ード表はCCITTYELLOW−BK Fascicle VII.2 Rec.T.
4 TABLE 1/T.4及びTABLE2/T.4による。) 第4図において104は第1図示のMHコード・デコード・
ロジツクであり、本実施例ではアンドゲート及びオアゲ
ートにより構成した検出ロジツクである。ロジツク104
の出力である▲▼信号はHSCコード、即ち、ラン
レングス1,2及び3の白を示すMHコード及びランレング
ス1の黒を示すMHコードを検出した時「0」となる。ま
た、出力▲〜▼は上述の4種のMHコード
(HSCコード)の各々のコード長を2進数で表現し、イ
ンバートして出力したものである。第4図404にランレ
ングス1の白を示すMHコード白1WB1(000111)をデコー
ドした場合の出力を例示する。
尚、HSCコードのデコード用にロジツク回路を用いたの
は高速処理のために現在のROMアドレス方式では時間的
に充分対応できないからである。
は高速処理のために現在のROMアドレス方式では時間的
に充分対応できないからである。
第3図示のビツトシフタの動作を表1及び表2を参照し
て説明する。
て説明する。
第3図102は第1図示のマルチプレクサであり、2個の
トライステートのマルチプレクサ1021及び1022からな
る。マルチプレクサ102へのアキユミユレータ106からの
制御線が「0」のときはマルチプレクサ1022側からレ
ジスタ103への出力A7〜A27はすべて、トライステートの
フローテイングとなることにより、無効となり、レジス
タ103にはマルチプレクサ1021側からの出力A0〜A27が有
効となり、レジスタ103の出力C0〜C27となる。その時マ
ルチプレクサ1021は入力線S0〜S2によりレジスタ103か
らの入力信号C0〜C27の選択動作をする。その選択のさ
れ方を表1に示す。例えばS0=S1=1、S2=0の場合は
レジスタ103の出力C3〜C27を取込み、夫々出力A0〜A24
として選択出力する。
トライステートのマルチプレクサ1021及び1022からな
る。マルチプレクサ102へのアキユミユレータ106からの
制御線が「0」のときはマルチプレクサ1022側からレ
ジスタ103への出力A7〜A27はすべて、トライステートの
フローテイングとなることにより、無効となり、レジス
タ103にはマルチプレクサ1021側からの出力A0〜A27が有
効となり、レジスタ103の出力C0〜C27となる。その時マ
ルチプレクサ1021は入力線S0〜S2によりレジスタ103か
らの入力信号C0〜C27の選択動作をする。その選択のさ
れ方を表1に示す。例えばS0=S1=1、S2=0の場合は
レジスタ103の出力C3〜C27を取込み、夫々出力A0〜A24
として選択出力する。
次にマルチプレクサ102への制御線が「1」の時は、
マルチプレクサ102の出力A0〜A6は制御線が「0」の
時と同じにマルチプレクサ1021から入力線S0〜S2により
選択的に与えられる。マルチプレクサ102からの出力A7
〜A27のうち表2でYで示す以外はマルチプレクサ1022
側が有効となり、マルチプレクサ1021側の出力A7〜A27
のうち表2でYで示す以外はフローテイングとなり無効
となる。又、マルチプレクサ1022からレジスタ103に与
えられる出力A7〜A27は表2に示す如く、マルチプレク
サ1022への入力線Σ0〜Σ2により選択されるが、但
し、表2においてYで示すビツトはマルチプレクサ1021
側から選択される。このYの数はマルチプレクサ1022へ
の入力線Σ0〜Σ2に対応して出力される入力線ST7〜S
T11によりマルチプレクサ1021のトライステート状態を
コントロールすることにより設定される。なお、第3図
のマルチプレクサ1021及び1022の回路は市販のマルチプ
レクサ(例えば米国フエアチヤイルド社製IC.F251等)
及びゲード回路等により容易に実現できる。又、マルチ
プレクサ102においてレジスタ103への出力としてA0〜A
27に選択された出力はクロツクCKによりレジスタ103に
ラツチされる。
マルチプレクサ102の出力A0〜A6は制御線が「0」の
時と同じにマルチプレクサ1021から入力線S0〜S2により
選択的に与えられる。マルチプレクサ102からの出力A7
〜A27のうち表2でYで示す以外はマルチプレクサ1022
側が有効となり、マルチプレクサ1021側の出力A7〜A27
のうち表2でYで示す以外はフローテイングとなり無効
となる。又、マルチプレクサ1022からレジスタ103に与
えられる出力A7〜A27は表2に示す如く、マルチプレク
サ1022への入力線Σ0〜Σ2により選択されるが、但
し、表2においてYで示すビツトはマルチプレクサ1021
側から選択される。このYの数はマルチプレクサ1022へ
の入力線Σ0〜Σ2に対応して出力される入力線ST7〜S
T11によりマルチプレクサ1021のトライステート状態を
コントロールすることにより設定される。なお、第3図
のマルチプレクサ1021及び1022の回路は市販のマルチプ
レクサ(例えば米国フエアチヤイルド社製IC.F251等)
及びゲード回路等により容易に実現できる。又、マルチ
プレクサ102においてレジスタ103への出力としてA0〜A
27に選択された出力はクロツクCKによりレジスタ103に
ラツチされる。
以上の様にビツト・シフタを構成し、記憶回路101より1
6ビツトパラレルに入力するMHコード信号に対する任意
のビツト数分のシフトを可能とする。これにより、コー
ド長の不揃いなMHコードを前述の「頭出し完了」状態に
することができる。
6ビツトパラレルに入力するMHコード信号に対する任意
のビツト数分のシフトを可能とする。これにより、コー
ド長の不揃いなMHコードを前述の「頭出し完了」状態に
することができる。
前述した如くMHコードが何であるかを判別するのはレジ
スタ103内を移動するコード列を監視する方法をとつて
いるが、その移動方法はビツト・シフタ102等により1
ビツトづつ移動するシリアルシフト及びHSCコードとし
て扱われるMHコードが検出された場合の最大6ビツトの
ジヤンプシフトが起る。即ち103レジスタ内のコード列
は最大でも6ビツト以下の移動しか1クロツク時間には
できないように制御されている。
スタ103内を移動するコード列を監視する方法をとつて
いるが、その移動方法はビツト・シフタ102等により1
ビツトづつ移動するシリアルシフト及びHSCコードとし
て扱われるMHコードが検出された場合の最大6ビツトの
ジヤンプシフトが起る。即ち103レジスタ内のコード列
は最大でも6ビツト以下の移動しか1クロツク時間には
できないように制御されている。
従つてEOLコード(000000000001)はレジスタ103内を移
動する際、前からの経過で誤つた移動量であつてもその
LSBビツトは必ずレジスタ103のC0〜C5に現われることに
なるのである。
動する際、前からの経過で誤つた移動量であつてもその
LSBビツトは必ずレジスタ103のC0〜C5に現われることに
なるのである。
さて、一般にMHコードを復号する際、そのコード体系か
らしてELコードの検出が極めて重要である。以下、
第1図示のEOL検出回路112を詳細に説明する。
らしてELコードの検出が極めて重要である。以下、
第1図示のEOL検出回路112を詳細に説明する。
即ち、EOLコードは画像1ライン毎の区切りのコードで
あると同時にそれに続く、MHコードの位置を示す役割を
持つているわけであるが、故にデコードの際EOLコード
を検出ミスすると直ちにそれに続く各MHコードの区切り
が不明となり1ライン分の画像がデコード不可能とな
り、又、続く各画像ラインのEOLもその検出法に依つて
は検出できなくなり、結局プリント出力した画像乱れが
殆んど使用できない程度まで波及することになる。
あると同時にそれに続く、MHコードの位置を示す役割を
持つているわけであるが、故にデコードの際EOLコード
を検出ミスすると直ちにそれに続く各MHコードの区切り
が不明となり1ライン分の画像がデコード不可能とな
り、又、続く各画像ラインのEOLもその検出法に依つて
は検出できなくなり、結局プリント出力した画像乱れが
殆んど使用できない程度まで波及することになる。
従つて、MHコード列の中でたとえ送・受信誤り等により
MHコードを多少誤つていてもEOLコードの検出に極力誤
りを起させないEOL検出方法が重要となるのである。
MHコードを多少誤つていてもEOLコードの検出に極力誤
りを起させないEOL検出方法が重要となるのである。
EOLコードが確実に検出されればコード誤りは画像1ラ
イン内で回復できる。
イン内で回復できる。
第10図はEOL検出回路112の詳細な構成を示す図である。
第10図に示すように12ビツトのELコード(00000000
0001)のLSBがレジスタ103のC0〜C5のどこにきても良い
ように少なくともレジスタの一度にシフト可能なシフト
量即ち6に対応する6種の検出ゲート1001で並列に設け
る。これによりレジスタ103内の格納データを監視する
ことによりELコードの検出漏れを防止している。そ
して、EOLコードを検出した検出ゲート1001からは夫々
▲▼〜▲▼の如く、EOLコードのレジ
スタ103内における位置を示す検出信号が出力される。
第10図に示すように12ビツトのELコード(00000000
0001)のLSBがレジスタ103のC0〜C5のどこにきても良い
ように少なくともレジスタの一度にシフト可能なシフト
量即ち6に対応する6種の検出ゲート1001で並列に設け
る。これによりレジスタ103内の格納データを監視する
ことによりELコードの検出漏れを防止している。そ
して、EOLコードを検出した検出ゲート1001からは夫々
▲▼〜▲▼の如く、EOLコードのレジ
スタ103内における位置を示す検出信号が出力される。
この方法によりEOLコード自身が誤りビツトを含んでい
ない限りEL検出を誤る事がなくなるのである。従つ
て画像コード誤りは必ず1ライン以内で回復可能であ
る。又EOLコード内に誤りビツトを含む確率は画像コー
ド内に誤りビツトを含む確率に比較しそのビツト数の割
合等からして極めて低く実用上無視できる程度である。
ない限りEL検出を誤る事がなくなるのである。従つ
て画像コード誤りは必ず1ライン以内で回復可能であ
る。又EOLコード内に誤りビツトを含む確率は画像コー
ド内に誤りビツトを含む確率に比較しそのビツト数の割
合等からして極めて低く実用上無視できる程度である。
第11図にはEOLコード検出のための検出ゲートの詳細を
示す。図の如く、12ビツトデータをパラレルに取込む構
成となつており、そのMSBを除いた11ビツトのデータを
反転ゲートINVを介し、前述のMSBとともに12入力のNAND
ゲート1002に印加する。これによりEOLコードのデコー
ドを行ない。EOLコードがデコードされた場合にはNAND
ゲート1002の出力がローレベルとなる。
示す。図の如く、12ビツトデータをパラレルに取込む構
成となつており、そのMSBを除いた11ビツトのデータを
反転ゲートINVを介し、前述のMSBとともに12入力のNAND
ゲート1002に印加する。これによりEOLコードのデコー
ドを行ない。EOLコードがデコードされた場合にはNAND
ゲート1002の出力がローレベルとなる。
第10図のEOL検出回路112の出力0EOL〜5EOLはコードレン
グスカウンタ107及びアキユムレータ106に伝えられる。
アキユムレータ106はこの信号により、EOLコードのコー
ド長分のシフトをレジスタ103になさしめるものであ
る。
グスカウンタ107及びアキユムレータ106に伝えられる。
アキユムレータ106はこの信号により、EOLコードのコー
ド長分のシフトをレジスタ103になさしめるものであ
る。
即ち、第10図示のEL検出回路112はその検出位置か
らして、レジスタ103にEOLコードの前にMHコード又は、
Fillビツトがまだ残つている状態で既にEOLを検出する
こともある。従つて、EOL検出回路112が検出するEOLコ
ードのうち信号▲▼以外のEOLコード検出信号
即ち▲▼〜▲▼を検出した場合には、
アキユムレータ106はレジスタ103におけるELコード
の前の残りコードがレジスタ103から前述のシフト動作
によつて掃出されたあと、ELコードのコード長分即
ち12ビツトのシフトをレジスタ103に更に行なわせる。
らして、レジスタ103にEOLコードの前にMHコード又は、
Fillビツトがまだ残つている状態で既にEOLを検出する
こともある。従つて、EOL検出回路112が検出するEOLコ
ードのうち信号▲▼以外のEOLコード検出信号
即ち▲▼〜▲▼を検出した場合には、
アキユムレータ106はレジスタ103におけるELコード
の前の残りコードがレジスタ103から前述のシフト動作
によつて掃出されたあと、ELコードのコード長分即
ち12ビツトのシフトをレジスタ103に更に行なわせる。
これにより、EOLコードを掃出し終え、復号すべき次ラ
インの先頭の画像MHコードの「頭出し完了」の状態とな
る。また、これにより、画像情報ではないEOLコードを
他の圧縮コードと同様に復号動作することによる時間無
駄も除去できる。
インの先頭の画像MHコードの「頭出し完了」の状態とな
る。また、これにより、画像情報ではないEOLコードを
他の圧縮コードと同様に復号動作することによる時間無
駄も除去できる。
次に第1図に示したブロツク図全体の詳細な説明を第5
図等を用いて行なう。第5図に揚げた回路の動作は複雑
であるので、説明を容易にするためにいくつかの条件設
定し、更に一般的と思われるMHコードの復号動作を例に
して、該回路の基本的動作の説明を行ない、その後、前
記設定条件の成立に関して説明するものとする。
図等を用いて行なう。第5図に揚げた回路の動作は複雑
であるので、説明を容易にするためにいくつかの条件設
定し、更に一般的と思われるMHコードの復号動作を例に
して、該回路の基本的動作の説明を行ない、その後、前
記設定条件の成立に関して説明するものとする。
復号されるべき、MHコード列の一例として第2図(b)
を用いる事とする。そして本回路の動作原理として、プ
リンタの水平同期信号HSYNCが来る前までに、第2図
(b)の先に現われるELコードは第3図示のレジス
タ103から前述のビツト・シフト動作により掃出され、
ELの次のMHコード(即ち、これからデコードしよう
とするラインの最初の画像信号のMHコード)である白の
ランレングス8を示すMHコードWB8がレジスタ103に前述
の如く「頭出し完了」の状態でプリンタからのHSYNC待
ちとなつているとする。
を用いる事とする。そして本回路の動作原理として、プ
リンタの水平同期信号HSYNCが来る前までに、第2図
(b)の先に現われるELコードは第3図示のレジス
タ103から前述のビツト・シフト動作により掃出され、
ELの次のMHコード(即ち、これからデコードしよう
とするラインの最初の画像信号のMHコード)である白の
ランレングス8を示すMHコードWB8がレジスタ103に前述
の如く「頭出し完了」の状態でプリンタからのHSYNC待
ちとなつているとする。
第6図は第5図回路の主要部のタイム・チヤートであ
る。第6図においてHSYNC601は前述のプリンタの主走査
方向の同期信号であり主走査1ライン毎に発生される。
これをタイム・チヤートの基準とし、この時刻をt0とす
る。CK600は基本クロツクであり、その周波数は画像周
波数と同じである。VEN602は主走査線内の有効画像区間
を規定する区間信号である。また、iNi603は区間信号VE
Nの始まる1クロツク(1ビツト)前のパルス、EOS604
は区間信号VENの最終クロツク(ビツト)のパルスであ
る。尚、前述した様に、圧縮コード(MHコード)を復号
した画信号に基づく記録動作をレーザ・ビーム・プリン
タで行なう場合、水平同期信号HSYNCはレーザ光による
ラスタスキヤンのスキヤンラインの所定位置に、レーザ
光が達したことを検知したビーム検知信号に基づくもの
であり、また、区間信号VENはレーザ光によりスキヤン
されて潜像形成のなされる感光体(ドラム)をレーザ光
がスキヤンしている区間に基づく。
る。第6図においてHSYNC601は前述のプリンタの主走査
方向の同期信号であり主走査1ライン毎に発生される。
これをタイム・チヤートの基準とし、この時刻をt0とす
る。CK600は基本クロツクであり、その周波数は画像周
波数と同じである。VEN602は主走査線内の有効画像区間
を規定する区間信号である。また、iNi603は区間信号VE
Nの始まる1クロツク(1ビツト)前のパルス、EOS604
は区間信号VENの最終クロツク(ビツト)のパルスであ
る。尚、前述した様に、圧縮コード(MHコード)を復号
した画信号に基づく記録動作をレーザ・ビーム・プリン
タで行なう場合、水平同期信号HSYNCはレーザ光による
ラスタスキヤンのスキヤンラインの所定位置に、レーザ
光が達したことを検知したビーム検知信号に基づくもの
であり、また、区間信号VENはレーザ光によりスキヤン
されて潜像形成のなされる感光体(ドラム)をレーザ光
がスキヤンしている区間に基づく。
これらから明らかなように第6図における各信号600〜6
04の時間的関係は一般に一定値に固定されるべきもので
ある。そして本例では、HSYNC601とiNi603の間を64クロ
ツクの固定長とする。またVEN602の区間は1ラインの画
素数となるが本例ではそれを4096ビツト(画素)とす
る。
04の時間的関係は一般に一定値に固定されるべきもので
ある。そして本例では、HSYNC601とiNi603の間を64クロ
ツクの固定長とする。またVEN602の区間は1ラインの画
素数となるが本例ではそれを4096ビツト(画素)とす
る。
第6図において、時刻t0では第5図の回路は画像出力の
各主走査毎のイニシヤル状態に設定されている。即ち、
前述の如く各ライン毎の先頭画像のMHコード(本例では
白のランレングス8を示すWB8(10011)がレジスタ103
に「頭出し完了」であり、該レジスタ103の出力C0〜C12
(本例では10011.0010.0001)はロジツク104、ROM105等
に与えられている。
各主走査毎のイニシヤル状態に設定されている。即ち、
前述の如く各ライン毎の先頭画像のMHコード(本例では
白のランレングス8を示すWB8(10011)がレジスタ103
に「頭出し完了」であり、該レジスタ103の出力C0〜C12
(本例では10011.0010.0001)はロジツク104、ROM105等
に与えられている。
又、同じくコードレングスカウンタ107の値は(−1)
=(1111B)となつている。この際(−1)は「頭出し
完了」を意味すると定義されている。又、各フリツプフ
ロツプ510,109,515はリセツト状態、フリツプフロツプ5
09はセツト状態にある。
=(1111B)となつている。この際(−1)は「頭出し
完了」を意味すると定義されている。又、各フリツプフ
ロツプ510,109,515はリセツト状態、フリツプフロツプ5
09はセツト状態にある。
フリツプフロツプ509がセツトされている(Q=1)こ
とはMHコードのEOLを検出した後、レジスタ103からEOL
コードの掃出しを完了した状態にある事を示す。また、
フリツプフロツプ510がセツトされている(Q=1)の
状態は後述するようにランレングス・ラツチ513がビジ
ー(BuSY)であることを示す。フリツプフロツプ515はB
/−ROM信号を出力Qとして出力する。このフリツプ・
フロツプ515の出力Qは1のときにこれから復号すべきM
H・コードの色が黒であることを示すB/−ROM信号であ
る。同じく出力Qが0のときは白であることを示す。
とはMHコードのEOLを検出した後、レジスタ103からEOL
コードの掃出しを完了した状態にある事を示す。また、
フリツプフロツプ510がセツトされている(Q=1)の
状態は後述するようにランレングス・ラツチ513がビジ
ー(BuSY)であることを示す。フリツプフロツプ515はB
/−ROM信号を出力Qとして出力する。このフリツプ・
フロツプ515の出力Qは1のときにこれから復号すべきM
H・コードの色が黒であることを示すB/−ROM信号であ
る。同じく出力Qが0のときは白であることを示す。
又、ランレングス・カウンタ108は停止しているとし、
その値は0であるとする。SFTEN605はコントロール線で
これが1であることはレジスタ103がデータ(MHコー
ド)をシフトさせて良い事を示す。又簡単の為、アキユ
ミユレータ106の出力信号Σ0〜Σ2及び信号は0で
あると仮定する。即ち、この仮定によりレジスタ103の2
8ビツト全てが有効なMHコード列であり、空のなり状態
を示すことになる。
その値は0であるとする。SFTEN605はコントロール線で
これが1であることはレジスタ103がデータ(MHコー
ド)をシフトさせて良い事を示す。又簡単の為、アキユ
ミユレータ106の出力信号Σ0〜Σ2及び信号は0で
あると仮定する。即ち、この仮定によりレジスタ103の2
8ビツト全てが有効なMHコード列であり、空のなり状態
を示すことになる。
さて、時刻t1になると第6図示のHSYNC信号601の立下が
りにより第5図示フリツプ・フロツプ509がリセツトさ
れ、第6図に613で示す▲▼信号が1となり、A
NDゲート508を介してSFTEN信号605が1となる。SFTEN信
号605が1の場合は、第6図示のカウインタ107がカウン
ト・イネーブルとなる。同時に時刻t1にはROM105のアド
レスにはレジスタ103の保持する出力C0〜C12が与えられ
る。(本例では10011××××××××)そしてRM10
5の出力のうちコード・レングスCL0〜CL3はゲート503及
びゲート504を経てコード・レングス・カウンタ107に与
えられている。又同時に▲▼信号607が0である
のでカウンタ107はロード・モードとなりt1のクロツク
によりCL0〜CL3の値がカウンタ107にロードされる。本
例ではランレングス8の白を示すMHコードWB8のコード
長5の2の補数である(−5)がロードされる。
りにより第5図示フリツプ・フロツプ509がリセツトさ
れ、第6図に613で示す▲▼信号が1となり、A
NDゲート508を介してSFTEN信号605が1となる。SFTEN信
号605が1の場合は、第6図示のカウインタ107がカウン
ト・イネーブルとなる。同時に時刻t1にはROM105のアド
レスにはレジスタ103の保持する出力C0〜C12が与えられ
る。(本例では10011××××××××)そしてRM10
5の出力のうちコード・レングスCL0〜CL3はゲート503及
びゲート504を経てコード・レングス・カウンタ107に与
えられている。又同時に▲▼信号607が0である
のでカウンタ107はロード・モードとなりt1のクロツク
によりCL0〜CL3の値がカウンタ107にロードされる。本
例ではランレングス8の白を示すMHコードWB8のコード
長5の2の補数である(−5)がロードされる。
又、RM105の出力RL0〜RL5及びM/ランレングス・ラ
ツチ513の入力として与えられる。同時にランレングス
・ラツチ513にはフリツプ・フロツプ515のQ出力もB/
−ROM信号620として入力されている。この時、RLCH信号
608が1によりラツチ513をラツチ・イネーブルに制御
し、t1のクロツクでD0〜D7の値をラツチ513にラツチす
る。
ツチ513の入力として与えられる。同時にランレングス
・ラツチ513にはフリツプ・フロツプ515のQ出力もB/
−ROM信号620として入力されている。この時、RLCH信号
608が1によりラツチ513をラツチ・イネーブルに制御
し、t1のクロツクでD0〜D7の値をラツチ513にラツチす
る。
同時に時刻t1ではフリツプ・フロツプ510は1にセツト
される。又フリツプ・フロツプ515は反転する。フリツ
プフロツプ510のQ出力であるBUSY信号609が1であるこ
とはラツチ513が有効なランレングスをラツチしている
事を示す。又、フリツプフロツプ515のQ出力であるB/
−ROM信号620が1であることは次にレジスタ103に
「頭出し完了」にすべきMHコードの示す色が黒である事
を示す。(又B/−RM620が0であるならば該色が白
である) SFTEN信号605はゲート505、ゲート506を経てS信号と
してマルチ・プレクサ102に与えられ、レジスタ103のデ
ータが1ビツトシフトするようにコントロールする。こ
れによりレジスタ103にあつたMHコードから必要なデー
タの後段への受渡しが終つたので該MHコードは使用済と
なり、SFTEN信号605によりカウント可能になつたカウン
タ107の制御下で第6図タイムチヤートに示す如くカウ
ンタ107からキヤリアウト信号CRO606が発生するまでビ
ツト・シフトが行なわれて、使用済のMHコードがレジス
タ103から掃出される。即ち本例では−5の設定された
カウンタ107の値が(−1)の値になるまでレジスタ103
の1ビツト・シフトを繰返し続行する。
される。又フリツプ・フロツプ515は反転する。フリツ
プフロツプ510のQ出力であるBUSY信号609が1であるこ
とはラツチ513が有効なランレングスをラツチしている
事を示す。又、フリツプフロツプ515のQ出力であるB/
−ROM信号620が1であることは次にレジスタ103に
「頭出し完了」にすべきMHコードの示す色が黒である事
を示す。(又B/−RM620が0であるならば該色が白
である) SFTEN信号605はゲート505、ゲート506を経てS信号と
してマルチ・プレクサ102に与えられ、レジスタ103のデ
ータが1ビツトシフトするようにコントロールする。こ
れによりレジスタ103にあつたMHコードから必要なデー
タの後段への受渡しが終つたので該MHコードは使用済と
なり、SFTEN信号605によりカウント可能になつたカウン
タ107の制御下で第6図タイムチヤートに示す如くカウ
ンタ107からキヤリアウト信号CRO606が発生するまでビ
ツト・シフトが行なわれて、使用済のMHコードがレジス
タ103から掃出される。即ち本例では−5の設定された
カウンタ107の値が(−1)の値になるまでレジスタ103
の1ビツト・シフトを繰返し続行する。
カウンタ107の値が(−1)になると今、使用済となつ
たMHコード(本例ではランレングス8の白を示すMHコー
ドWB8)の掃出しが終了し、次のMHコード(ランレング
ス6の黒を示すMHコードBB6)がレジスタ103において
「頭出し完了」となるがラツチ513にはまだ前のMHコー
ド(WB8)のランレングスが残つているためフリツプフ
ロツプ510はセツトのままである。従つて、カウンタ107
のCRO信号が1となることによりゲート511の出力は0に
なり、結局SFTEN信号605が0となることにより、カウン
タ107が停止する。同様にSFTEN信号605が0となること
によりS0〜S2信号も全て“0"となりレジスタ103がシフ
ト停止しデータがホールドされる。従つて「頭出し完
了」(BB6)の状態が時刻t2まで続く。
たMHコード(本例ではランレングス8の白を示すMHコー
ドWB8)の掃出しが終了し、次のMHコード(ランレング
ス6の黒を示すMHコードBB6)がレジスタ103において
「頭出し完了」となるがラツチ513にはまだ前のMHコー
ド(WB8)のランレングスが残つているためフリツプフ
ロツプ510はセツトのままである。従つて、カウンタ107
のCRO信号が1となることによりゲート511の出力は0に
なり、結局SFTEN信号605が0となることにより、カウン
タ107が停止する。同様にSFTEN信号605が0となること
によりS0〜S2信号も全て“0"となりレジスタ103がシフ
ト停止しデータがホールドされる。従つて「頭出し完
了」(BB6)の状態が時刻t2まで続く。
時刻t2に於いてiNi信号603により▲▼信号610が
0となり、ラツチ513に保持されていたランレングス
(本例では白の8ビツト)がマルチプレクサ514を経て
▲▼信号610によりカウンタ108へ移される。同時
にフリツプフロツプ510が▲▼信号610によりセツ
トされる。これによりラツチ513が空となり、ビジー(B
USY)が解消される。従つて、ゲート511の出力が1とな
り、前述と同様にSFTEN信号605が1となり、レジスタ10
3において「頭出し完了」となつているMHコードによつ
て得られたランレングスがラツチ513へラツチされる。
0となり、ラツチ513に保持されていたランレングス
(本例では白の8ビツト)がマルチプレクサ514を経て
▲▼信号610によりカウンタ108へ移される。同時
にフリツプフロツプ510が▲▼信号610によりセツ
トされる。これによりラツチ513が空となり、ビジー(B
USY)が解消される。従つて、ゲート511の出力が1とな
り、前述と同様にSFTEN信号605が1となり、レジスタ10
3において「頭出し完了」となつているMHコードによつ
て得られたランレングスがラツチ513へラツチされる。
以下同様にMHコードが順次デコードされる。
時刻t2でカウンタ108へロードされたランレングス(本
例では−5)に基づき、時刻t2の次のビツトから発生す
るVEN信号602によりカウンタ108はカウントを開始す
る。そしてカウンタ108の値が(−1)になつた時(本
例では時刻t3)CRI信号611を出す。又、ラツチ513から
のB/信号621により指定された画像の色別にフリツプ
フロツプ109をセツトする。これによりとりあえず第1
番目のMHコードが画像VIDEO(本例では白の8ビツト)
に変換できたわけである。
例では−5)に基づき、時刻t2の次のビツトから発生す
るVEN信号602によりカウンタ108はカウントを開始す
る。そしてカウンタ108の値が(−1)になつた時(本
例では時刻t3)CRI信号611を出す。又、ラツチ513から
のB/信号621により指定された画像の色別にフリツプ
フロツプ109をセツトする。これによりとりあえず第1
番目のMHコードが画像VIDEO(本例では白の8ビツト)
に変換できたわけである。
尚、VEN信号602の立上り後においては、iNi信号603は新
たなHSYNC601が到来する迄、0のままである。従つて、
VEN信号602の立上り後、例えば時刻t3においてはiNi信
号603に代つて、カウンタ108のカウントアツプを示すCR
I信号611によりフリツプ・フロツプ510をリセツトし、
そのビジー状態を解除せしめ、続くMHコードのデコード
により得たランレングスのラツチ513への取込みを可能
とする。
たなHSYNC601が到来する迄、0のままである。従つて、
VEN信号602の立上り後、例えば時刻t3においてはiNi信
号603に代つて、カウンタ108のカウントアツプを示すCR
I信号611によりフリツプ・フロツプ510をリセツトし、
そのビジー状態を解除せしめ、続くMHコードのデコード
により得たランレングスのラツチ513への取込みを可能
とする。
さて、ここまでの説明においては、MHコードのコード長
がランレングス長より等しいか、又は短かい場合であ
り、MHコードを「頭出し完了」の時点から、レジスタ10
3から掃出すべき使用済MHコードをマルチプレクサ102に
与えられる信号S0=1、S1=S2=0とすることによりシ
リアルシフトすれば、MHコードを途切れることなくデコ
ード続けられるわけである。しかし、一方、MHコードの
ランレングス長がコード長より短かい場合には前述の如
くシリアルシフトさせるとレジスタ103からコードを掃
出している間(シフト中)に、カウンタ108において、
該MHコードのランレングスのカウントが完了してしま
う。この時点において画像の途切れをなくすためには次
のランレングスをラツチ513からカウンタ108へ取る必要
がある。しかし、レジスタ103では次のMHコードに対す
る「頭出し完了」状態となつていないので、ラツチ513
には取込むべきランレングスがROM105より出力されてい
ないことになる。
がランレングス長より等しいか、又は短かい場合であ
り、MHコードを「頭出し完了」の時点から、レジスタ10
3から掃出すべき使用済MHコードをマルチプレクサ102に
与えられる信号S0=1、S1=S2=0とすることによりシ
リアルシフトすれば、MHコードを途切れることなくデコ
ード続けられるわけである。しかし、一方、MHコードの
ランレングス長がコード長より短かい場合には前述の如
くシリアルシフトさせるとレジスタ103からコードを掃
出している間(シフト中)に、カウンタ108において、
該MHコードのランレングスのカウントが完了してしま
う。この時点において画像の途切れをなくすためには次
のランレングスをラツチ513からカウンタ108へ取る必要
がある。しかし、レジスタ103では次のMHコードに対す
る「頭出し完了」状態となつていないので、ラツチ513
には取込むべきランレングスがROM105より出力されてい
ないことになる。
結局この場合、プリンタにおいて記録される画像が途切
れる事となり、リアルタイムで画像を出力することがで
きない事になる。この様な不都合は前述したHSCコー
ド、即ち、ランレングス1,2及び3の白を示すMHコード
とランレングス1の黒を示すMHコードのデコードの際に
生じる。
れる事となり、リアルタイムで画像を出力することがで
きない事になる。この様な不都合は前述したHSCコー
ド、即ち、ランレングス1,2及び3の白を示すMHコード
とランレングス1の黒を示すMHコードのデコードの際に
生じる。
そこで、この様な場合は、前述の4種のHSCコードであ
るMHコードだけはMHコード・デコード・ロジツク104を
用いて、ROM105からのコード長データCL0〜CL3によりデ
コードすべきコードをシリアル・シフトしたと等価に後
段の回路を動作せしめる。即ち、カウンタ107に(−
1)をロードできるようにロジツク104は▲▼信
号により、ロード値(−1)をつくりゲート504を介し
てカウンタ107にロードする。又、このときROM105から
の出力CL0〜CL3は▲▼信号によりゲート503にて
インヒビツトする。又、ロジツク104からの出力SF1とSF
2にデコードしたMHコードのコード長に対応したジヤン
プ量を▲▼〜▲▼として出力しS0〜S2を経
てマルチプレクサ102を動作する。これにより1ビツト
の時間で複数ビツトのシフトを行なうことが可能とな
り、換言すれば1ビツトの時間でデコードすべき次のコ
ードのレジスタ103における「頭出し完了」ができるよ
うになる。また、このジヤンプ量はアキユムレータ106
にも入力され、レジスタ103の空ビツト数に累積加算さ
れる。
るMHコードだけはMHコード・デコード・ロジツク104を
用いて、ROM105からのコード長データCL0〜CL3によりデ
コードすべきコードをシリアル・シフトしたと等価に後
段の回路を動作せしめる。即ち、カウンタ107に(−
1)をロードできるようにロジツク104は▲▼信
号により、ロード値(−1)をつくりゲート504を介し
てカウンタ107にロードする。又、このときROM105から
の出力CL0〜CL3は▲▼信号によりゲート503にて
インヒビツトする。又、ロジツク104からの出力SF1とSF
2にデコードしたMHコードのコード長に対応したジヤン
プ量を▲▼〜▲▼として出力しS0〜S2を経
てマルチプレクサ102を動作する。これにより1ビツト
の時間で複数ビツトのシフトを行なうことが可能とな
り、換言すれば1ビツトの時間でデコードすべき次のコ
ードのレジスタ103における「頭出し完了」ができるよ
うになる。また、このジヤンプ量はアキユムレータ106
にも入力され、レジスタ103の空ビツト数に累積加算さ
れる。
以上2通りのシフト方法により「頭出し完了」から「ラ
ンレングスラツチ」更に「ランレングスカウント」の一
連の動作を高速に繰返し、プリンタ部に供給する画像が
とぎれることなく復号を実行する。112はEOL検出回路で
レジスタ103の出力C0〜C11にEOLコードが現われたこと
を検出すると信号0EOLを出力する。そして一ラインの終
了を示すEOLコードがEOL検出回路112で検出されると、
タイミング合せ回路523を介してEOL検出回路112からの
信号0EOLにより、フリツプ・フロツプ509がセツトされ
▲▼信号613が0となる。これにより、結局SFT
EN信号605が0となり、次のHSYNCが来るまで、レジスタ
103は停止し、MHコードは「頭出し完了」の状態でHSYNC
待ちとなることとなる。この様に、プリンタと復号動作
との同期合せが良好に得られるものである。
ンレングスラツチ」更に「ランレングスカウント」の一
連の動作を高速に繰返し、プリンタ部に供給する画像が
とぎれることなく復号を実行する。112はEOL検出回路で
レジスタ103の出力C0〜C11にEOLコードが現われたこと
を検出すると信号0EOLを出力する。そして一ラインの終
了を示すEOLコードがEOL検出回路112で検出されると、
タイミング合せ回路523を介してEOL検出回路112からの
信号0EOLにより、フリツプ・フロツプ509がセツトされ
▲▼信号613が0となる。これにより、結局SFT
EN信号605が0となり、次のHSYNCが来るまで、レジスタ
103は停止し、MHコードは「頭出し完了」の状態でHSYNC
待ちとなることとなる。この様に、プリンタと復号動作
との同期合せが良好に得られるものである。
以上のように各ラインごとに繰返し走査が進行すれば画
像が形成されるのである。
像が形成されるのである。
次に第7図を用いてデコードエラー検出法について述べ
る。第7図示回路は第1図又は第5図の適当な位置に接
続される。第7図上において、801はインバータであ
る。また、802は加算器、803はラツチ、804はコンパレ
ータ、805はラツチ、806及び807はフリツプ・フロツプ
である。
る。第7図示回路は第1図又は第5図の適当な位置に接
続される。第7図上において、801はインバータであ
る。また、802は加算器、803はラツチ、804はコンパレ
ータ、805はラツチ、806及び807はフリツプ・フロツプ
である。
第7図820は第5図において、ラツチ513からマルチプレ
クサ514を介して出力される信号820と同じ信号であり、
前述の如く、MHコードを解読した結果のランレングスが
2の補数で表現されたものである。
クサ514を介して出力される信号820と同じ信号であり、
前述の如く、MHコードを解読した結果のランレングスが
2の補数で表現されたものである。
さて、加算器802とラツチ803とでアキユミユレータを構
成する。加算器802のLSBの下位からの桁上りは829信号
(1)により1にセツトされており、結局加算器802の
出力821はランレングス820の2の補数となる。従つて出
力821は該ランレングスの正整数を2進数表現したもの
である。又、ラツチ803への加算は第6図▲▼610
のタイミング、即ち第5図示のカウンタ108へカウント
すべきランレングスをロードするタイミングで加算が続
けられる。又、ラツチ803は主走査の各ライン毎に出力
される第6図HSYNC601信号601毎にクリヤされる。即ち
ラツチ803の出力822は各ライン毎のランレングスの累積
値を2進数で表わす。一方、ラツチ805は毎ラインの一
定ランレングス(本例では1ラインの画素数に対応する
4096)を信号824によりCPU等から知らされて保持してい
る。
成する。加算器802のLSBの下位からの桁上りは829信号
(1)により1にセツトされており、結局加算器802の
出力821はランレングス820の2の補数となる。従つて出
力821は該ランレングスの正整数を2進数表現したもの
である。又、ラツチ803への加算は第6図▲▼610
のタイミング、即ち第5図示のカウンタ108へカウント
すべきランレングスをロードするタイミングで加算が続
けられる。又、ラツチ803は主走査の各ライン毎に出力
される第6図HSYNC601信号601毎にクリヤされる。即ち
ラツチ803の出力822は各ライン毎のランレングスの累積
値を2進数で表わす。一方、ラツチ805は毎ラインの一
定ランレングス(本例では1ラインの画素数に対応する
4096)を信号824によりCPU等から知らされて保持してい
る。
コンパレータ804は今ラツチ803に累積されているランレ
ングス822(Aとする)とラツチ805からの正解値823
(Bとする)とを比較するコンパレータ回路である。
ングス822(Aとする)とラツチ805からの正解値823
(Bとする)とを比較するコンパレータ回路である。
フリツプ・フロツプ806は第6図示のEOS信号604の出力
時、即ち各ラインの最終ビツトに於いて、コンパレータ
804よりA=Bであることを示す信号831が出力されてい
ない時ANDゲート808の出力825によりセツトされる。即
ち、フリツプ・フロツプ806のセツトされることはラン
レングスの累積値Aが予定された正解値B(本例では40
96)に等しくなつたことを示し、MHコード又はそのデコ
ードに誤りがあつたことを示す。
時、即ち各ラインの最終ビツトに於いて、コンパレータ
804よりA=Bであることを示す信号831が出力されてい
ない時ANDゲート808の出力825によりセツトされる。即
ち、フリツプ・フロツプ806のセツトされることはラン
レングスの累積値Aが予定された正解値B(本例では40
96)に等しくなつたことを示し、MHコード又はそのデコ
ードに誤りがあつたことを示す。
フリツプ・フロツプ807はA>Bの状態になつた場合
に、コンパレータ804から出力される信号832を入力とす
るアンドゲート809の出力826によりランレングスの累積
途中でも直ちにセツトされる。即ち、フリツプフロツプ
のQ出力828はランレングスの累積値がラインの途中で
予定された正解値(本例では4096、即ち、VEN602の区間
の画素数)を越えてしまつた事を示し、これは1ライン
のデコードの途中において既に大巾なデコード誤りが生
じたことを表わすものである。
に、コンパレータ804から出力される信号832を入力とす
るアンドゲート809の出力826によりランレングスの累積
途中でも直ちにセツトされる。即ち、フリツプフロツプ
のQ出力828はランレングスの累積値がラインの途中で
予定された正解値(本例では4096、即ち、VEN602の区間
の画素数)を越えてしまつた事を示し、これは1ライン
のデコードの途中において既に大巾なデコード誤りが生
じたことを表わすものである。
又、フリツプ・フロツプ806及び807は第6図▲
▼信号613が“0"即ちEL(Eudof liue)がEOL検出回
路112により検出されHSYNC610の入力がなされるまでリ
セツトされず、HSYNC信号601の入力によりゲート810の
出力によりリセツトされる。従つて、各フリツプフロツ
プ806,807の出力827又は出力828を検知し別途のEOL検出
回路112により、EOL検知に専念させることによりデコー
ド誤り等による同期ズレを最小限に止める事ができる。
▼信号613が“0"即ちEL(Eudof liue)がEOL検出回
路112により検出されHSYNC610の入力がなされるまでリ
セツトされず、HSYNC信号601の入力によりゲート810の
出力によりリセツトされる。従つて、各フリツプフロツ
プ806,807の出力827又は出力828を検知し別途のEOL検出
回路112により、EOL検知に専念させることによりデコー
ド誤り等による同期ズレを最小限に止める事ができる。
尚、本例ではアキユムレータによりランレングスを累積
加算する例を示したが、これは所定数例えば4096から順
次ランレングス値を減算し減算カウンタからのボロウを
検出する方法等に置き換えることもできる。
加算する例を示したが、これは所定数例えば4096から順
次ランレングス値を減算し減算カウンタからのボロウを
検出する方法等に置き換えることもできる。
以上の様にデコード誤まりが生じ、フリツプフロツプ80
6又は807がセツトされると、その出力は第9図示のプリ
ンタプリンタ回路のバツフアスイツチ制御回路303に伝
達される。
6又は807がセツトされると、その出力は第9図示のプリ
ンタプリンタ回路のバツフアスイツチ制御回路303に伝
達される。
バツフアスイツチ制御回路303は前述した様に、ダブル
バツフア構成となつているプリンタのラインバツフアの
入出力を交互に選択するためのバツフア選択動作を行な
うものである。そして、フリツプフロツプ806又は807よ
りそのセツト信号、即ち、デコード誤まり検出信号を入
力すると、デコード誤まりの発生した現ラインの画像信
号を無効にし、エラーのあつたラインに代つて前ライン
の画像信号を再利用すべく、前ラインの画像信号の格納
されているラインバツフアの再読出しを行なう様、ライ
ンバツフアの選択制御を行なう。即ち、例えば第1ライ
ンバツフア301に復号中の画像信号を格納している時
に、デコード誤まりが発生した場合、第1ラインバツフ
ア301に現在格納中の画像信号を無効にし、現在、画像
信号の読出しがなされている第2ラインバツフア302の
読出しの終了後再び第2ラインバツフア302から同一の
画像信号の読出しを行なう。
バツフア構成となつているプリンタのラインバツフアの
入出力を交互に選択するためのバツフア選択動作を行な
うものである。そして、フリツプフロツプ806又は807よ
りそのセツト信号、即ち、デコード誤まり検出信号を入
力すると、デコード誤まりの発生した現ラインの画像信
号を無効にし、エラーのあつたラインに代つて前ライン
の画像信号を再利用すべく、前ラインの画像信号の格納
されているラインバツフアの再読出しを行なう様、ライ
ンバツフアの選択制御を行なう。即ち、例えば第1ライ
ンバツフア301に復号中の画像信号を格納している時
に、デコード誤まりが発生した場合、第1ラインバツフ
ア301に現在格納中の画像信号を無効にし、現在、画像
信号の読出しがなされている第2ラインバツフア302の
読出しの終了後再び第2ラインバツフア302から同一の
画像信号の読出しを行なう。
これにより、デコード誤りの生じた画像信号によるプリ
ント動作はなされずに、記録画像への影響を除去でき
る。尚、プリンタのラインバツフアの数は2本以上でも
同様に実行できる。又、この誤まり補正用のラインバツ
フアをデコード回路側に設けてもよい。
ント動作はなされずに、記録画像への影響を除去でき
る。尚、プリンタのラインバツフアの数は2本以上でも
同様に実行できる。又、この誤まり補正用のラインバツ
フアをデコード回路側に設けてもよい。
さて、前述の如く本例では、MHコード化された画像をデ
コードする際には、該MHコードの先頭ELを検知し、
その後に続くコードから該画像の第1ラインとして、デ
コードを開始し、実際の画像を再生する。なぜなら、MH
コード化された画像は、本件では図示していないが第1
図示の記憶回路101の前段に存在する、例えば画像メモ
リ等に蓄積されているものである。そこからCPU等によ
り、画像メモリの読出し開始アドレスを指定し、MHコー
ド化された画像を読出し、記憶回路101を介しデコーダ
回路に与える。
コードする際には、該MHコードの先頭ELを検知し、
その後に続くコードから該画像の第1ラインとして、デ
コードを開始し、実際の画像を再生する。なぜなら、MH
コード化された画像は、本件では図示していないが第1
図示の記憶回路101の前段に存在する、例えば画像メモ
リ等に蓄積されているものである。そこからCPU等によ
り、画像メモリの読出し開始アドレスを指定し、MHコー
ド化された画像を読出し、記憶回路101を介しデコーダ
回路に与える。
その際、画像メモリから読出されたMHコードは例えば、
画像ページの途中から読出した場合には必ずしも先頭に
ELコードが来ない。この場合でも正しくデコードを
開始できるように、デコード開始前に第1図示記憶回路
101をクリア状態にしておき、次に該メモリから読出し
たMHコードを記憶回路101が満杯(第2図の状態)にな
るまで読出し、次いでデコーダ内部へデータ(MHコー
ド)を送り始める。そして、第1番目のELコードが
検出できるまでは画像コードとして扱わず、次々にデー
タを送り続けELコードを検出することに専念する。
画像ページの途中から読出した場合には必ずしも先頭に
ELコードが来ない。この場合でも正しくデコードを
開始できるように、デコード開始前に第1図示記憶回路
101をクリア状態にしておき、次に該メモリから読出し
たMHコードを記憶回路101が満杯(第2図の状態)にな
るまで読出し、次いでデコーダ内部へデータ(MHコー
ド)を送り始める。そして、第1番目のELコードが
検出できるまでは画像コードとして扱わず、次々にデー
タを送り続けELコードを検出することに専念する。
そしてELコードが検出できた後には以後のコードを
画像情報として扱い、コード・レングス等によりシフト
量をコントロールしながらデコードしていくわけであ
る。このようにして第1番目のELコードを前述のEO
L検出回路112により見つける事により、MHコードの区切
りを判定し、又画像の同期的再生が可能となるのであ
る。
画像情報として扱い、コード・レングス等によりシフト
量をコントロールしながらデコードしていくわけであ
る。このようにして第1番目のELコードを前述のEO
L検出回路112により見つける事により、MHコードの区切
りを判定し、又画像の同期的再生が可能となるのであ
る。
さて、前述のデコード動作開始後、初めて入力する第1
のEOLコードを見つける動作を開始すると記憶回路101か
ら順次レジスタ103へデータが送られて来るが、その開
始前にレジスタ103に全て“0"が存在しているとすると
実際に記憶回路101から来たMHコード又はMHコードの一
部(途中)とつながつて、EOLコード(000000000001)
と誤検知されることとなる。それを避ける為、レジスタ
103の初期状態は全て“1"にセツトする。即ちレジスタ1
03のC0〜C27を全て“1"とする。これにより前述のE
Lの誤検知を避けることができる。
のEOLコードを見つける動作を開始すると記憶回路101か
ら順次レジスタ103へデータが送られて来るが、その開
始前にレジスタ103に全て“0"が存在しているとすると
実際に記憶回路101から来たMHコード又はMHコードの一
部(途中)とつながつて、EOLコード(000000000001)
と誤検知されることとなる。それを避ける為、レジスタ
103の初期状態は全て“1"にセツトする。即ちレジスタ1
03のC0〜C27を全て“1"とする。これにより前述のE
Lの誤検知を避けることができる。
レジスタ103を全て“1"にプリセツトする方法を説明す
る。第12図にはレジスタ103の構成の一例を示すもの
で、即ち、レジスタ103は28個のフリツプフロツプF/Fで
構成される。従つて、その全てのフリツプフロツプF/F
のプリセツト端子にCPU等からプリセツトパルス901を入
力し、全てのフリツプフロツプのQ出力を1とする。こ
こではフリツプフロツプF/Fは例えばアメリカTI社製のS
N74S74N等を使用することができる。
る。第12図にはレジスタ103の構成の一例を示すもの
で、即ち、レジスタ103は28個のフリツプフロツプF/Fで
構成される。従つて、その全てのフリツプフロツプF/F
のプリセツト端子にCPU等からプリセツトパルス901を入
力し、全てのフリツプフロツプのQ出力を1とする。こ
こではフリツプフロツプF/Fは例えばアメリカTI社製のS
N74S74N等を使用することができる。
以上、本実施例はMHコードの復号を例に説明したが、他
の圧縮方法によるコードの復号装置に適用することもで
き、また、復号後の画像信号はレーザ・ビーム・プリン
タ等のプリンタで画像記録される以外に、CRT等のデイ
スプレイにて表示したり、ビツトイメージとしてフアイ
ルしたりする等多様な用途に利用可能である。更に、本
実施例中で用いた数値はそれに限るものではなく、用途
や環境等において適宜選択されるものであることは言う
迄もない。
の圧縮方法によるコードの復号装置に適用することもで
き、また、復号後の画像信号はレーザ・ビーム・プリン
タ等のプリンタで画像記録される以外に、CRT等のデイ
スプレイにて表示したり、ビツトイメージとしてフアイ
ルしたりする等多様な用途に利用可能である。更に、本
実施例中で用いた数値はそれに限るものではなく、用途
や環境等において適宜選択されるものであることは言う
迄もない。
以上説明した様に圧縮コードの復号動作を確実に実行で
きるものであり、また、高速処理を必要とする画像処理
に対してもリアルタイムな復号動作を可能とするもので
ある。また、高速で且つ高品位な画像記録を必要とする
プリンタ等の出力部に対しても効果的に圧縮コードを復
号化し、供給することが可能となるものである。
きるものであり、また、高速処理を必要とする画像処理
に対してもリアルタイムな復号動作を可能とするもので
ある。また、高速で且つ高品位な画像記録を必要とする
プリンタ等の出力部に対しても効果的に圧縮コードを復
号化し、供給することが可能となるものである。
また、圧縮コードの復号動作或いは伝送に係わる異常を
確実に検出することができ、また、それによる影響を最
小限にすることができるものである。
確実に検出することができ、また、それによる影響を最
小限にすることができるものである。
また、圧縮コードを復号化して得た画像信号に基づきプ
リント動作する際、プリンタと復号処理部との同期が良
好に得られるものである。
リント動作する際、プリンタと復号処理部との同期が良
好に得られるものである。
また、復号動作の基準となるライン同期コードの検出を
確実に行ない、復号動作の同期ずれ等の不都合を除去で
きるものである。
確実に行ない、復号動作の同期ずれ等の不都合を除去で
きるものである。
また、1ページあるいは1ラインの途中から圧縮コード
が復号回路に供給されたとしても、復号動作におけるラ
イン同期を確実になさしめ復号誤り等を防止できるもの
である。
が復号回路に供給されたとしても、復号動作におけるラ
イン同期を確実になさしめ復号誤り等を防止できるもの
である。
以上説明した様に、本発明によると、画像の各ラインの
終了を示すEOLコードを含む不定長の圧縮コードを順次
復号する圧縮コードの復号装置において、連続して入力
する圧縮コードを複数連続して記憶する記憶手段に記憶
されている複数の圧縮コードをシフトすることにより、
復号済の圧縮コードを前記記憶手段から排出するととも
に次に復号すべき圧縮コードを前記記憶手段の所定位置
にセットし、所定位置にセットされた圧縮コードを復号
することによりラン長データ及び圧縮コードのコード長
データを出力するとともに、復号された圧縮コードがコ
ード長よりもラン長の方が短い特定の圧縮コードでない
場合にはコード長データに従ったシフトを順次実行せし
め、特定の圧縮コードである場合にはコード長データに
従ったシフトを一度に実行せしめるので、コード長より
もラン長の方が短い特定の圧縮コードの復号が行われた
場合でも、次に復号すべき圧縮コードを即座に記憶手段
の所定位置にセット可能となり、従って、特定の圧縮コ
ードに続く圧縮コードの復号を迅速に実行でき、また、
更に、復号された圧縮コードが特定の圧縮コードである
場合に一度に実行される最大シフト量に対応した記憶手
段の所定位置から1ビットずつずれた複数の異なる位置
のいずれかに前記EOLコードが存在しているか否かを検
出する検出手段を備え、この検出手段によりEOLコード
が検出されない場合にはコード長データに従ったシフト
を実行せしめ復号済の圧縮コードを記憶手段から排出せ
しめ、一方、検出手段によりEOLコードが検出された場
合にはコード長データに従ったシフトを実行せしめ復号
済の圧縮コードを記憶手段から排出せしめ、更に、EOL
コードのコード長分のシフトを実行せしめ復号済の圧縮
コードに続くEOLコードを記憶手段から排出せしめるの
で、復号済の圧縮コードに続くEOLコードを記憶手段か
ら迅速に排出できるので、EOLコードを他の圧縮コード
と同様に復号処理することによる無駄時間なしに、EOL
コードに続く圧縮コードの復号を実行でき、従って、高
速な復号動作を達成することが可能となる。
終了を示すEOLコードを含む不定長の圧縮コードを順次
復号する圧縮コードの復号装置において、連続して入力
する圧縮コードを複数連続して記憶する記憶手段に記憶
されている複数の圧縮コードをシフトすることにより、
復号済の圧縮コードを前記記憶手段から排出するととも
に次に復号すべき圧縮コードを前記記憶手段の所定位置
にセットし、所定位置にセットされた圧縮コードを復号
することによりラン長データ及び圧縮コードのコード長
データを出力するとともに、復号された圧縮コードがコ
ード長よりもラン長の方が短い特定の圧縮コードでない
場合にはコード長データに従ったシフトを順次実行せし
め、特定の圧縮コードである場合にはコード長データに
従ったシフトを一度に実行せしめるので、コード長より
もラン長の方が短い特定の圧縮コードの復号が行われた
場合でも、次に復号すべき圧縮コードを即座に記憶手段
の所定位置にセット可能となり、従って、特定の圧縮コ
ードに続く圧縮コードの復号を迅速に実行でき、また、
更に、復号された圧縮コードが特定の圧縮コードである
場合に一度に実行される最大シフト量に対応した記憶手
段の所定位置から1ビットずつずれた複数の異なる位置
のいずれかに前記EOLコードが存在しているか否かを検
出する検出手段を備え、この検出手段によりEOLコード
が検出されない場合にはコード長データに従ったシフト
を実行せしめ復号済の圧縮コードを記憶手段から排出せ
しめ、一方、検出手段によりEOLコードが検出された場
合にはコード長データに従ったシフトを実行せしめ復号
済の圧縮コードを記憶手段から排出せしめ、更に、EOL
コードのコード長分のシフトを実行せしめ復号済の圧縮
コードに続くEOLコードを記憶手段から排出せしめるの
で、復号済の圧縮コードに続くEOLコードを記憶手段か
ら迅速に排出できるので、EOLコードを他の圧縮コード
と同様に復号処理することによる無駄時間なしに、EOL
コードに続く圧縮コードの復号を実行でき、従って、高
速な復号動作を達成することが可能となる。
第1図は本発明の一実施例の概略構成を示す回路ブロツ
ク図、第2図(a)は記憶回路101におけるMHコードの
記憶型式を示す図、第2図(b)は複数のMHコードの連
続した状態を示す図、第3図はビツト・シフタの構成を
示す回路ブロツク図、第4図はMHコードのデコード回路
の構成を示す回路ブロツク図、第5図は第1図示の回路
ブロツク図の詳細な回路図、第6図は第5図示回路の各
部動作タイミングを示すタイミングチヤート図、第7図
はデコードエラー検出回路の構成を示す回路ブロツク
図、第8図はプリンタの一構成例を示す図、第9図は第
8図示プリンタの記録動作のための回路構成を示すブロ
ツク図、第10図はEOL検出回路の構成を示す回路ブロツ
ク図、第11図は第10図示の検出ゲートの構成を示す回路
図、第12図はレジスタの一構成例を示す回路図であり、
101は記憶回路、102はマルチプレクサ、103はレジス
タ、104はMHコード・デコード・ロジツク、104はMHコー
ド・テーブルROMである。
ク図、第2図(a)は記憶回路101におけるMHコードの
記憶型式を示す図、第2図(b)は複数のMHコードの連
続した状態を示す図、第3図はビツト・シフタの構成を
示す回路ブロツク図、第4図はMHコードのデコード回路
の構成を示す回路ブロツク図、第5図は第1図示の回路
ブロツク図の詳細な回路図、第6図は第5図示回路の各
部動作タイミングを示すタイミングチヤート図、第7図
はデコードエラー検出回路の構成を示す回路ブロツク
図、第8図はプリンタの一構成例を示す図、第9図は第
8図示プリンタの記録動作のための回路構成を示すブロ
ツク図、第10図はEOL検出回路の構成を示す回路ブロツ
ク図、第11図は第10図示の検出ゲートの構成を示す回路
図、第12図はレジスタの一構成例を示す回路図であり、
101は記憶回路、102はマルチプレクサ、103はレジス
タ、104はMHコード・デコード・ロジツク、104はMHコー
ド・テーブルROMである。
Claims (1)
- 【請求項1】画像の各ラインの終了を示すEOLコードを
含む不定長の圧縮コードを順次復号する圧縮コードの復
号装置において、 連続して入力する圧縮コードを複数連続して記憶する記
憶手段と、 前記記憶手段に記憶されている複数の圧縮コードをシフ
トすることにより、復号済の圧縮コードを前記記憶手段
から排出するとともに次に復号すべき圧縮コードを前記
記憶手段の所定位置にセットするシフト手段と、 前記記憶手段の所定位置にセットされた圧縮コードを復
号することによりラン長データ及び圧縮コードのコード
長データを出力する復号手段と、 前記復号手段で復号された圧縮コードがコード長よりも
ラン長の方が短い特定の圧縮コードでない場合には前記
シフト手段により前記コード長データに従ったシフトを
順次実行せしめ、前記特定の圧縮コードである場合には
前記シフト手段により前記コード長データに従ったシフ
トを一度に実行せしめるシフト制御手段と、 前記復号手段で復号された圧縮コードが前記特定の圧縮
コードである場合に前記シフト手段により一度に実行さ
れる最大シフト量に対応した前記記憶手段の前記所定位
置から1ビットずつずれた複数の異なる位置のいずれか
に前記EOLコードが存在しているか否かを検出する検出
手段とを有し、 前記シフト制御手段は、前記検出手段により前記EOLコ
ードが検出されない場合には前記シフト手段により前記
コード長データに従ったシフトを実行せしめ復号済の圧
縮コードを前記記憶手段から排出せしめ、一方、前記検
出手段により前記EOLコードが検出された場合には前記
シフト手段により前記コード長データに従ったシフトを
実行せしめ復号済の圧縮コードを前記記憶手段から排出
せしめ、更に、前記EOLコードのコード長分のシフトを
前記シフト手段に実行せしめ前記復号済の圧縮コードに
続く前記EOLコードを前記記憶手段から排出せしめるこ
とを特徴とする圧縮コードの復号装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP59114835A JPH0685568B2 (ja) | 1984-06-05 | 1984-06-05 | 圧縮コ−ドの復号装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP59114835A JPH0685568B2 (ja) | 1984-06-05 | 1984-06-05 | 圧縮コ−ドの復号装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS60257667A JPS60257667A (ja) | 1985-12-19 |
| JPH0685568B2 true JPH0685568B2 (ja) | 1994-10-26 |
Family
ID=14647884
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP59114835A Expired - Lifetime JPH0685568B2 (ja) | 1984-06-05 | 1984-06-05 | 圧縮コ−ドの復号装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0685568B2 (ja) |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS58170280A (ja) * | 1982-03-31 | 1983-10-06 | Fujitsu Ltd | Mh符号解読方式 |
-
1984
- 1984-06-05 JP JP59114835A patent/JPH0685568B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPS60257667A (ja) | 1985-12-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4800441A (en) | Binary data compression and expansion processing apparatus | |
| US3895184A (en) | Facsimile system with buffered transmission and reception | |
| US4134133A (en) | Method for interline-coding facsimile signal | |
| CA1254999A (en) | Compression/decompression system and device for two-dimensional binary data from a picture field | |
| US4760461A (en) | Binary data compression and expansion processing apparatus | |
| JPH0134500B2 (ja) | ||
| GB2138604A (en) | Data decoding | |
| JPS59178077A (ja) | 2値画像のデ−タ圧縮方法 | |
| EP0212905B1 (en) | Decoding apparatus for image code | |
| US4837634A (en) | Apparatus for decoding image codes obtained by compression process | |
| US4918540A (en) | System for encoding or decoding analog video signals | |
| JPH0685568B2 (ja) | 圧縮コ−ドの復号装置 | |
| JPS6031423B2 (ja) | 圧縮デ−タ復元方式 | |
| JPH0646777B2 (ja) | 圧縮コ−ドの復号装置 | |
| JPH065890B2 (ja) | 圧縮コ−ドの復号装置 | |
| JPH0646776B2 (ja) | 圧縮コ−ドの復号装置 | |
| JPH0584697B2 (ja) | ||
| JPH0586698B2 (ja) | ||
| JPH0584698B2 (ja) | ||
| JP2774490B2 (ja) | 画像コードの復号装置 | |
| JPS6333350B2 (ja) | ||
| JPS6351429B2 (ja) | ||
| JP2774489B2 (ja) | 画像コードの復号装置 | |
| JPH05207303A (ja) | 符号化装置 | |
| JPS6235775A (ja) | 画像コ−ドの復号装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| EXPY | Cancellation because of completion of term |