(57)【要約】      （修正有）【課題】ビデオメモリに格納する画像データの圧縮率を改善することが可能な画像表示装置を提供する。【解決手段】データをライン単位に一旦格納するラインバッファ２２０９と、データパターンと参照パターンを比較するパターンコンパレータ２２１１と、４種類の参照パターンを格納する参照パターンレジスタ２２１２と、パターンを比較した結果のＡＮＤ条件をとるランレングス判定前処理部２２０１と、入力されたランの存在を意味する信号の中から同一パターンの一致出力が何回連続するかを判定するランレングス判定回路２２０２と、参照パターンを選択する参照パターン切替回路２２１７と、参照パターンレジスタ２２１２とパターンコンパレータ２２１１とを比較して一致したデータパターンの出現回数を計数するデータパターン出現回数カウンタ２２１８と、その出現回数のデータを記憶するデータパターン出現回数レジスタ２２１９と、を備えて構成される。【選択図】      図１
2004193806.tif 000002
【特許請求の範囲】
【請求項１】
表示画面に表示する画像データをビデオメモリに格納し、適宜表示内容を変更して使用するために前記画像データの即時符号化が可能なランレングス判定回路を備えた画像表示装置において、
符号化の最小単位により構成され、異なる複数のパターンを格納する参照パターン格納手段と、前記画像データを所定のデータ長により構成される複数の固定長データに分割し、該固定長データの各データパターンと前記参照パターン格納手段に格納された参照パターンとを比較するデータパターン比較手段と、前記ビデオメモリに格納する画像の各データパターンの出現回数を計数する出現回数計数手段と、該出現回数計数手段により計数された計数値を格納する出現回数格納手段と、を備え、
外部の制御装置からソフトウェアの処理により前記出現回数格納手段に格納された各データパターンの出現回数を読み出し、該読み出された出現回数に基づいて前記参照パターン格納手段に格納された参照パターンを最適化して前記ビデオメモリに格納された画像データの圧縮率を改善することを特徴とする画像表示装置。
【請求項２】
前記ビデオメモリに格納された圧縮されたコードから格納データ数を演算する格納データ数演算手段と、該格納データ数演算手段により演算された格納データ数を記憶する格納データ数記憶手段と、を更に備え、
外部の制御装置からソフトウェアの処理により、前記格納データ数記憶手段により得られたデータに基づいて圧縮率を評価し、該評価に基づいて前記参照パターン格納手段に格納されている参照パターンを更新して更に最適化することを特徴とする請求項１に記載の画像表示装置。
【請求項３】
前記参照パターン格納手段に格納された参照パターンを切り替える参照パターン切替手段を更に備え、
全てのケースのデータパターンの出現回数を前記出現回数計数手段により計数して該計数結果を前記出現回数格納手段に記憶し、該出現回数格納手段に記憶された出現回数の大きな値のデータパターンから順次参照パターンとして前記参照パターン格納手段に設定し、前記格納データ数演算手段の結果に基づいて圧縮データが最小となる組み合わせを前記参照パターン切替手段により選択することを特徴とする請求項１又は２に記載の画像表示装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像表示装置に関し、さらに詳しくは、画像処理装置、画像形成装置が有するＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）やＬＣＤなどを使用した表示画面に表示する画像データの符号化／復号化を行う画像表示装置に関するものである。
【０００２】
【従来の技術】
従来から画像表示装置には、表示用の画像データを蓄積するビデオメモリが備えられているのが一般的である。このビデオメモリは、表示データをビットマップデータとして格納するので、エントロピー的冗長度がメモリの消費量に大きく影響することになる。例えば、６４０×４８０ｄｏｔのＶＧＡ（Ｖｉｄｅｏ  ＧｒａｐｈｉｃｓＡｒｒａｙ）画面のモノクロ表示であれば、背景色となる白データまたは黒データが何ラインも続く場合、そのままビットマップデータとして格納すると６４０×（ライン数）のメモリを占有することになる。このように表示用に限らず、一般に画像データの情報量は膨大であり、画像データをそのままの状態で取り扱って格納しようとすると、ビデオメモリに格納するデータ量が膨大となり、多くのメモリを必要とするためコスト的に負担が大きかった。
そこで、画像データをメモリに格納する場合、符号化圧縮してデータ量を削減し、その符号化した状態で画像データを取り扱う符号化方式が提案されている。例えば、ＭＨ（Ｍｏｄｉｆｉｅｄ  Ｈｕｆｆｍａｎ）符号化方式またはＭＭＲ（Ｍｏｄｉｆｉｅｄ  Ｍｏｄｉｆｉｅｄ  ＲＥＡＤ）符号化方式、自然画像用としてＪＰＥＧ、ＪＢＩＧなどの変換符号化方式、算術符号化方式を含んだ圧縮方式などがある。
また、２値化された画像データを対象とする画像表示装置の符号化復号化装置において、画像データを固定長データごとに分割して、パターン一致比較処理を並列処理し、さらに一致比較結果からランレングスを判定してエントロピー符号化する即時符号化方式では、ビデオメモリに表示画像を格納して、復号化時には画像情報をランレングスより上記処理の逆変換により元のビットマップデータに復号化し、表示データを形成する画像表示装置も提案されている。
また、２値化された画像データを対象とする画像表示装置の符号化復号化装置において、画像データを固定長データごとに分割して、パターン一致比較処理を並列処理し、さらに一致比較結果からランレングスを判定してエントロピー符号化を即時実行する画像表示装置において、データパターン比較手段に参照パターンを設定するレジスタを設けて、比較参照する所定の参照パターンの内容を外部からソフトウェアの処理によって変更し、実際に符号化圧縮されて格納されるデータ数を外部からソフトウェアの処理によってレジスタ経由で読み出せる構造を備える方法が提案されている。
【０００３】
また、特開平５−３１６３６９号公報には、用途に応じて複数のアルゴリズムを切り替えることができ、しかも高速で動作する画像の圧縮伸張装置を経済的に実現する技術について開示されている。それによると、  装置全体の制御を司るホストＣＰＵは、圧縮或いは伸張処理のための制御情報を生成或いは解釈し、ハードディスクに保存されている複数の画像処理装置用プログラムから適切なプログラムを選択し、符号化・復号を行う符号化・復号装置に転送する。符号化・復号装置は、それをダウンロードして実行する。次に、ホストＣＰＵは、ハードディスクより画像或いは圧縮データを取り出し、順次符号化・復号装置へと転送する。符号化・復号装置は、先のプログラムに従い送られたデータの処理を行う。そしてホストＣＰＵは、符号化・復号装置で処理されたデータを順次取り出し、ハードディスクへ出力するとしている。
【特許文献１】特開平５−３１６３６９号公報
【０００４】
【発明が解決しようとする課題】
しかしながら、従来の符号化圧縮方式は符号化の処理が複雑であり、判断処理や演算処理を行うので、例えば、算術符号化方式であるＱＭ−Ｃｏｄｅｒはプロセスが複雑で処理速度が遅いというように、符号化あるいは復号化の際に多くの処理時間を必要としていた。
また、従来の符号化圧縮方式は、ファクシミリ装置などで画像を伝送する分野で発達して来た技術であるため、圧縮率を改善するためにページ単位の処理を前提としている傾向がある。そのため、格納した画像データを部分的に取り出して復号化したり、さらに編集して格納する場合などに目的のデータ以外に多くの画像データを復号化する必要が生じ、無駄な時間を費やすことになってしまい、任意の部分を復号化したり編集するのには適していなかった。
さらに、従来の冗長度を改善する符号化方式では、同じデータパターンの連なり（ラン）の長さであるランレングスを逐次計数して符号化を行うため、ハードウェア化した符号化装置であっても、１つのランレングスを決定するのに数クロックあるいは数十クロックもの時間を必要とする。このような従来の符号化復号化方式をビデオメモリへの表示データ（画像データ）の格納に適用すると、ビットマップデータとして格納し、編集する方式に比べると何十倍あるいは何千倍もの処理時間が必要となり、描画速度を遅らせる結果となる。
また、２値化された画像データを対象とする画像表示装置の符号化復号化装置において、設定された各参照パターン毎のデータパターンの出現回数を確認する方法が無かったため、参照パターンの最適化は、カット・アンド・トライにより参照パターンを変更し圧縮率を評価して決定する方法だった。つまり、設定した参照パターンのどれがどの程度、圧縮率の改善に寄与しているかが判然としなかった。
また、特許文献１は用途に応じて複数のアルゴリズムを切り替えて圧縮、伸長を行うもので、本発明とはその主旨を異にするものである。
本発明は、かかる課題に鑑み、ビデオメモリに格納する画像の各データパターンの出現回数を外部の制御装置からソフトウェアの処理によって読み出すことにより、比較参照する所定のパターン（参照パターン）を最適化し、ビデオメモリに格納する画像データの圧縮率を改善することが可能な画像表示装置を提供することを目的とする。
【０００５】
【課題を解決するための手段】
本発明はかかる課題を解決するために、請求項１は、表示画面に表示する画像データをビデオメモリに格納し、適宜表示内容を変更して使用するために前記画像データの即時符号化が可能なランレングス判定回路を備えた画像表示装置において、符号化の最小単位により構成され、異なる複数のパターンを格納する参照パターン格納手段と、前記画像データを所定のデータ長により構成される複数の固定長データに分割し、該固定長データの各データパターンと前記参照パターン格納手段に格納された参照パターンとを比較するデータパターン比較手段と、前記ビデオメモリに格納する画像の各データパターンの出現回数を計数する出現回数計数手段と、該出現回数計数手段により計数された計数値を格納する出現回数格納手段と、を備え、外部の制御装置からソフトウェアの処理により前記出現回数格納手段に格納された各データパターンの出現回数を読み出し、該読み出された出現回数に基づいて前記参照パターン格納手段に格納された参照パターンを最適化して前記ビデオメモリに格納された画像データの圧縮率を改善することを特徴とする。
従来の画像データを固定長データごとに分割して、パターン一致比較処理を並列処理し、さらに一致比較結果からランレングスを判定してエントロピー符号化を即時実行する画像表示装置においては、設定された各参照パターン毎のデータパターンの出現回数を確認する方法が無かったため、参照パターンの最適化は、カット・アンド・トライにより参照パターンを変更し圧縮率を評価して決定する方法だった。そこで本発明では、ビデオメモリに格納する画像の各データパターンの出現回数を計数する出現回数計数手段と、この出現回数計数手段により計数された計数値を格納する出現回数格納手段とを備え、外部のコンピュータ等からソフトウェアの処理により出現回数を読み出し、そのデータに基づいて参照パターンを最適化して画像データの圧縮率を改善するものである。
かかる発明によれば、外部のコンピュータ等から出現回数を読み出ことができるので、そのデータに基づいて参照パターンを最適化して画像データの圧縮率を改善することができる。
【０００６】
請求項２は、前記ビデオメモリに格納された圧縮されたコードから格納データ数を演算する格納データ数演算手段と、該格納データ数演算手段により演算された格納データ数を記憶する格納データ数記憶手段と、を更に備え、外部の制御装置からソフトウェアの処理により、前記格納データ数記憶手段により得られたデータに基づいて圧縮率を評価し、該評価に基づいて前記参照パターン格納手段に格納されている参照パターンを更新して更に最適化することを特徴とする。
また、本発明ではビデオメモリのコードから格納データ数を演算する格納データ数演算手段と、この演算結果を記憶する格納データ数記憶手段を備えることにより、外部のコンピュータ等からソフトウェアの処理により、演算結果に基づいて圧縮率を評価し、評価の結果、参照パターンを更新する必要があれば更新して更に参照パターンを最適化する。
かかる発明によれば、外部のコンピュータ等からソフトウェアの処理により、演算結果に基づいて圧縮率を評価し、評価の結果、参照パターンを更新する必要があれば更新するので、更に参照パターンを最適化して圧縮率を改善することができる。
【０００７】
請求項３は、前記参照パターン格納手段に格納された参照パターンを切り替える参照パターン切替手段を更に備え、全てのケースのデータパターンの出現回数を前記出現回数計数手段により計数して該計数結果を前記出現回数格納手段に記憶し、該出現回数格納手段に記憶された出現回数の大きな値のデータパターンから順次参照パターンとして前記参照パターン格納手段に設定し、前記格納データ数演算手段の結果に基づいて圧縮データが最小となる組み合わせを前記参照パターン切替手段により選択することを特徴とする。
請求項１、２の発明は、外部のコンピュータ等からソフトウェアの処理により、所定の種類の参照パターンをパターン格納手段に格納して、その参照パターンとデータパターンを比較してデータパターンの出現回数を計数していた。この場合参照するパターンが限定されているので、圧縮率の改善には限度があった。そこで本発明では、全てのケースのデータパターンの出現回数を計数して記憶し、その出現回数の大きな値のデータパターンから順次参照パターンとしてパターン格納手段に格納して、前記格納データ数演算手段の結果に基づいて圧縮データが最小となる組み合わせを参照パターン切替手段により選択するものである。
かかる発明によれば、格納データ数演算手段の結果に基づいて圧縮データが最小となる組み合わせを参照パターン切替手段により選択するので、外部のコンピュータ等からソフトウェアの処理により最適化する必要がなく、ソフトウェアの負担を軽減することができる。
【０００８】
【発明の実施の形態】
以下、本発明を図に示した実施形態を用いて詳細に説明する。但し、この実施形態に記載される構成要素、種類、組み合わせ、形状、その相対配置などは特定的な記載がない限り、この発明の範囲をそれのみに限定する主旨ではなく単なる説明例に過ぎない。
本来ＶＧＡ表示画面の画面サイズは水平６４０ｄｏｔ、垂直４８０ｄｏｔであるが、本実施の形態では説明を簡略化するために一度に扱うデータ幅（１水平ラインのデータ）を６４ｂｉｔとし、符号化の最小単位を８ｂｉｔとして説明する。
図１は本発明の実施形態に係る画像表示装置の全体の構成を示すブロック図である。この画像表示装置は、データをライン単位に一旦格納するラインバッファ２２０９と、データパターンと参照パターンを比較するパターンコンパレータ２２１１と、４種類の参照パターンを格納する参照パターンレジスタ２２１２と、ラインバッファ２２０９の最小単位のデータパターンとパターンコンパレータ２２１１の４種類のパターンを比較した結果のＡＮＤ条件をとるランレングス判定前処理部２２０１と、入力されたランの存在を意味する信号の中から同一パターンの一致出力が何回連続するかを判定するランレングス判定回路２２０２と、コードレジスタにより圧縮コードを選択するコード決定回路２２０４と、ビットマップデータを検出するＢＭ判定回路２２０３と、参照パターンレジスタ２２１２の参照パターンを選択する参照パターン切替回路２２１７と、参照パターンレジスタ２２１２とパターンコンパレータ２２１１とを比較して一致したデータパターンの出現回数を計数するデータパターン出現回数カウンタ２２１８と、その出現回数のデータを記憶するデータパターン出現回数レジスタ２２１９と、ランレングスコードビットマップデータを識別するデータを付加する識別データ付加回路２２１３と、識別データを付加された画像データを記憶するビデオメモリ２２１４と、ビデオメモリ２２１４に格納された圧縮されたコードから格納データ数を演算する格納データ数演算回路２２１５と、格納データ数演算回路２２１５により演算された格納データ数を記憶する格納データ数レジスタ２２１６と、ブランク行を決定するブランク行決定回路２２０５と、ブランクの連なり（ラン）が存在することを検出するブランクランレングス判定前処理部２２０６と、ブランクの連なりを判定するブランクランレングス判定回路２２０７と、ブランク行決定回路２２０５、ブランクランレングス判定前処理部２２０６及びブランクランレングス判定回路２２０７に基づいてブランク数を決定するブランク数決定回路２２０８と、外部から入力して制御するコード変換用の設定データを格納するコードレジスタ２２１０と、を備えて構成される。
また、図２は、ラインバッファ２２０９を示した図である。また、図３は、データパターン比較手段（パターンコンパレータ２２１１）を示した図である。なお、本実施の形態の画像表示装置の画像データの符号化方式は、１水平ライン分のデータを一括して符号化するものとする。
【０００９】
次に本実施形態の画像表示装置の動作について説明する。画像表示装置のソフトウェア処理によって図示しない外部のホストＣＰＵ（中央処理装置）によって描画された画像データは一旦、図２に示す６４ｂｉｔのラインバッファ２２０９に格納される。１水平ラインの画像データは、符号化の最小単位である８ｂｉｔに区切られてＬＤ１、ＬＤ２、・・・ＬＤ８として図３に示すパターンコンパレータに並列接続される。本実施の形態では４種類のパターンコンパレータ２０１〜２０４を使用している。動作説明の一例として、参照パターンレジスタ２２１２に設定されているパターンを元に、パターンコンパレータ２０１は８ｂｉｔが全て０のパターンとの比較、パターンコンパレータ２０２は全て１のパターンとの比較、パターンコンパレータ２０３は１０の繰り返しのパターンとの比較、パターンコンパレータ２０４は０１の繰り返しのパターンとの比較を行っているものとする。そして各パターンコンパレータ２０１〜２０４の出力ＰＣ０１〜ＰＣ０８、ＰＣ１１〜ＰＣ１８、ＰＣ２１〜ＰＣ２８、ＰＣ３１〜ＰＣ３８は、入力されたデータパターンが全て参照パターンと一致した場合に真（１）となり、それ以外は偽（０）となる。
このパターンコンパレータの出力は、図１のランレングス判定前処理部２２０１に接続される。図４〜７にランレングス判定前処理部２２０１の回路を示す。図４のランレングス判定前処理部は、全て０の参照パターンとの比較結果ＰＣ０１〜ＰＣ０８を入力する。図５のランレングス判定前処理部は、全て１の参照パターンとの比較結果ＰＣ１１〜ＰＣ１８を入力する。図６のランレングス判定前処理部は、１０の繰り返しの参照パターンとの比較結果ＰＣ２１〜ＰＣ２８を入力する。図７のランレングス判定前処理部は、０１の繰り返しの参照パターンとの比較結果ＰＣ３１〜ＰＣ３８を入力する。
【００１０】
図４〜７に示すようにランレングス判定前処理部２２０１は、隣接する行のコンパレータ出力のＡＮＤ（論理積）をとり、そのＡＮＤ出力の隣接する出力とＡＮＤをとる。このＡＮＤ回路は１段階進む毎に１つ減少し、最後に１つのＡＮＤ出力であるＲＬ８０１〜ＲＬ８３１を得るようになっている。なお、本実施の形態では図４〜７に示すような回路を収束連鎖型論理積回路と呼ぶ。
パターンコンパレータ２２１１の出力および各段のＡＮＤ出力は、同じデータパターンの連なり（ラン）が存在することを意味しているが、図４〜７の段階ではそのデータパターンの連なりであるランの長さ（ランレングス）を判別することはできない。
以上のようにして得られた、ランの存在を意味するパターンコンパレータの出力と図４〜７の各段のＡＮＤ出力は、図１のランレングス判定回路２２０２に入力される。図８〜１１は、ランレングス判定回路２２０２の内部回路構成をに示した図である。図８のランレングス判定回路は、全て０の参照パターンとの比較出力ＰＣ０１〜ＰＣ０８を入力して図４の前処理部から出力される信号２Ｌ０１〜２Ｌ０７、３Ｌ０１〜３Ｌ０６、４Ｌ０１〜４Ｌ０５、５Ｌ０１〜５Ｌ０４、６Ｌ０１〜６Ｌ０３、７Ｌ０１〜７Ｌ０２を入力する回路である。他の３種類の前処理部出力も同様に図９〜１１に示すようなランレングス判定回路を設ける。ランレングス判定回路２２０２は、入力されたランの存在を意味する信号の中から同一パターンの一致出力が何回連続するかを判定する。この判定は、単独で真である部分を判別することにより行われ、基本的に３入力のＡＮＤ回路で注目する同じパターンの連なり（ラン）が真であり、隣接するランが偽であるとき同じパターンの連なりであるランの長さ（ランレングス）か確定するようになっている。
【００１１】
図８〜１１のランレングス判定出力ＲＬ１０１〜ＲＬ１３１、ＲＬ２０１〜ＲＬ２３１、ＲＬ３０１〜ＲＬ３３１、ＲＬ４０１〜ＲＬ４３１、ＲＬ５０１〜ＲＬ５３１、ＲＬ６０１〜ＲＬ６３１、ＲＬ７０１〜ＲＬ７３１および図４〜７の出力ＲＬ８０１〜ＲＬ８３１を「１行目のランレングス判定結果」とする。同様にＲＬ１０２〜ＲＬ１３２、ＲＬ２０２〜ＲＬ２３２、ＲＬ３０２〜ＲＬ３３２、ＲＬ４０２〜ＲＬ４３２、ＲＬ５０２〜ＲＬ５３２、ＲＬ６０２〜ＲＬ６３２、ＲＬ７０２〜ＲＬ７３２を「２行目のランレングス判定結果」、〜、ＲＬ１０８〜ＲＬ１３８を「８行目のランレングス判定結果」とする。
この「任意の行のランレングス判定結果」の中で同時に真となるランレングス判定出力は存在せず、また、他の３種類のパターンコンパレータ出力に対する「同一行のランレングス判定結果」も同時に真となることはない。すなわち、任意の行の唯一の種類の中の唯一のランレングス判定出力が真になるか、またはその行がどの種類のランレングスにも含まれない場合、その判定結果は全て偽になる。このようにしてランレングスが確定する。
「その行がランレングスに含まれない場合」とは、その行に関する全ての種類のパターンコンパレータ出力が偽であるような場合である。ランレングスで表わす符号に属さないデータとは例えば、ＬＤ１のパターンコンパレータ出力ＰＣ０１、ＰＣ１１、ＰＣ２１、ＰＣ３１が全て偽の場合、すなわちＬＤ１の画像データがどの参照パターンとも一致しなかった場合が該当し、本実施の形態ではこのような画像データはビットマップデータとしてそのままビデオメモリ２２１４に格納することになる。
このようにして得られたランレングス判定出力は図１のコード決定回路２２０４およびブランク行決定回路２２０５に接続される。ビットマップデータを検出する目的で図１に示すＢＭ判定回路２２０３を設けている。図１６にその内部回路を示す。例えば１行目がビットマップデータであるときＢＭ１が真になる。ＢＭ１〜ＢＭ８はランレングス判定結果の各行に対応しており、例えばＢＭ１が真のときは１行目のランレングス判定結果は全て偽であるし、１行目のランレングス判定結果のどれかが真のときはＢＭ１は偽である。従って、ＢＭ１が真のときはＬＤ１のデータはそのままビットマップデータとしてビデオメモリ２２１４に格納される。
【００１２】
本実施の形態では、ランレングスを表す符号（ランレングスコード）とビットマップデータを識別するためのデータをＭＳＢに１ｂｉｔ付加している。従って、格納するデータは各行９ｂｉｔになる。この識別データは、コード決定回路２２０４の出力に対して識別データ付加回路２２１３で付加される。識別データ付加回路２２１３にはＢＭ判定回路２２０３の出力ＢＭ１〜ＢＭ８が接続されている。例えばＢＭ１が真のとき、ＬＤ１のデータのＭＳＢ側に“１”が付加される。ＢＭ１が偽の時は、ランレングスコードのＭＳＢ側に“０”が付加される。
任意のｊ行目のラインに対応するデータＬＤｊがそれより上位の行のランレングス判定結果に含まれる場合、ｊ行のランレングス判定結果およびＢＭｊは全て偽となり、ｊ行に対応する符号は無いことになる。このようにして、ランレングスの存在する行とビットマップデータの存在する行の符号のみが識別データを付加されてビデオメモリ２２１４に格納される。
このようにして符号化した結果、格納するデータが何ｂｙｔｅになるかは決まっていないので、符号化する段階で毎回ブランク行を除外してビットマップデータとランレングスコードを抽出しなければならない。そのためにブランク行の分布を示す信号を図１のコード決定回路２２０４に接続する。
まず図１のランレングス判定回路２２０２の出力をブランク行決定回路２２０５に接続する。ブランク行決定回路２２０５は図１２〜１５および図１７で構成されており、ランレングス判定回路２２０２の出力を図１２〜１５の各回路に接続する。図１２〜１５の各回路の出力は、各行にランレングスコードが存在する場合に真となる。図１２〜１５の出力は図１７の各回路に接続される。更にＢＭ判定回路２２０３の出力ＢＭ１〜ＢＭ８も図１７の各回路に接続する。
図１７の出力ｎＢＭＲＬ２〜ｎＢＭＲＬ８は各行にランレングスコードが存在しなくて且つその行のデータがビットマップデータでも無い場合に真となる。つまりその行が上位のランレングスコードに含まれていてブランクであることを示している。ｎＢＭＲＬ２〜ｎＢＭＲＬ８が偽の場合はその行にランレングスコードかビットマップデータが存在することを意味する。
【００１３】
次に図１７の出力ｎＢＭＲＬ２〜ｎＢＭＲＬ８を図１のブランクランレングス判定前処理部２２０６に接続する。ブランクランレングス判定前処理部２２０６の回路構成を図１８の収束連鎖型論理積回路および図２０の収束連鎖型論理和回路に示す。
図１８の出力はランレングス判定前処理部２２０１と同様、ブランクの連なり（ラン）が存在することを意味している。この出力を図１のブランクランレングス判定回路２２０７に接続する。
図２０の出力でＮＣＯＲ２２は、２〜３行目にブランクが存在することを示している。同様にＮＣＯＲ３２は２〜４行目、ＮＣＯＲ４２は２〜５行目、ＮＣＯＲ５２は２〜６行目、ＮＣＯＲ６２は２〜７行目、ＮＣＯＲ７２は２〜８行目にブランクが存在することを示している。これらの出力は図１のコード決定回路２２０４に接続する。
ブランクランレングス判定回路２２０７は図１９に示すような回路で、ランレングス判定回路２２０２と同様、入力されたブランクランの存在を意味する信号の中から、ブランクが何回連続するかを判定するものである。
次に図１のブランク数決定回路２２０８にブランク行決定回路２２０５の出力とブランクランレングス判定前処理部２２０６の出力とブランクランレングス判定回路２２０７の出力を接続し、最終的な符号の並びを確定する為に必要な処理を行う。ブランク数決定回路２２０８は図２１〜２５で構成されている。
ブランク数決定回路２２０８は２行目から該当行までに何行のブランクが存在するかを表わす信号ＮＣＯＤＥ３＿１〜ＮＣＯＤＥ７＿６を出力する。例えばＮＣＯＤＥ３＿１は３行目までに１行だけブランクが存在することを意味しており、ＮＣＯＤＥ７＿６では７行目までに６行のブランクが存在することを表わしている。図２１は、３行目までのブランクを表す信号ＮＣＯＤＥ３＿１およびＮＣＯＤＥ３＿２を決定する論理回路ＮＣＯＤＥ３ＳＥＬ（２３０１）とその真理値表である。ここで、ＮＣＯＤＥ３ＳＥＬ（２３０１）に入力される信号のなかで、ＮＣＯＤＥ２＿１はｎＢＭＲＬ２と同じ意味である。つまり、２行目までに１行だけブランクが存在していることを示す信号である。図２２は、４行目までのブランクを表す信号ＮＣＯＤＥ４＿１、ＮＣＯＤＥ４＿２およびＮＣＯＤＥ４＿３を決定する論理回路ＮＣＯＤＥ４ＳＥＬ（２４０１）とその真理値表である。図２３は、５行目までのブランクを表す信号ＮＣＯＤＥ５＿１、ＮＣＯＤＥ５＿２、ＮＣＯＤＥ５＿３およびＮＣＯＤＥ５＿４と真理値表を決定する論理回路ＮＣＯＤＥ５ＳＥＬ（２５０１）を表す。図２４は、６行目までのブランクを表す信号ＮＣＯＤＥ６＿１〜ＮＣＯＤＥ６＿５と真理値表を決定する論理回路ＮＣＯＤＥ６ＳＥＬ（２６０１）を表す。図２５は、７行目までのブランクを表す信号ＮＣＯＤＥ７＿１〜ＮＣＯＤＥ７＿６と真理値表を決定する論理回路ＮＣＯＤＥ７ＳＥＬ（２７０１）を表す。
【００１４】
図１のコード決定回路２２０４に以上説明したラインバッファ２２０９、ＢＭ判定回路２２０３、ランレングス判定回路２２０２、ブランク行決定回路２２０５、ブランクランレングス判定前処理部２２０６、ブランク数決定回路２２０８の各出力を入力する。加えてコードレジスタ２２１０において、外部から入力して制御するコード変換用の設定データ（ａｌｌ０ｒｌ１〜ａｌｌ０ｒｌ８、ａｌｌ１ｒｌ１〜ａｌｌ１ｒｌ８、ａｌｌ２ｒｌ１〜ａｌｌ２ｒｌ８、ａｌｌ３ｒｌ１〜ａｌｌ３ｒｌ８）を入力し、符号化データＣＯＤＥ１〜ＣＯＤＥ８を得る。本実施例の形態にかかるコード決定回路２２０４は図２６〜３１で構成されている。
図２６は、ＣＯＤＥ１を決定する論理回路（ＥＮＣＯＤＥ１ＳＥＬ（２８０１）およびＥＮＣＯＤＥ１ＬＡＴＣＨ（２８０２））であり、図２７は、ＣＯＤＥ５を決定する論理回路（ＥＮＣＯＤＥ５ＳＥＬ（３００１）およびＥＮＣＯＤＥ５ＬＡＴＣＨ（３００２））、図２８は、ＣＯＤＥ８を決定する論理回路（ＥＮＣＯＤＥ８ＳＥＬ（２９０１）およびＥＮＣＯＤＥ８ＬＡＴＣＨ（２９０２））、図２９はその真理値表である。
また、ＣＯＤＥ２〜ＣＯＤＥ４、ＣＯＤＥ６およびＣＯＤＥ７を決定する回路は、入力される信号が異なるだけで構成としては図２８、図２９と同等のものであるので省略する。
これまでの説明で参照パターンレジスタ２２１２に設定された４種類の参照パターンを８ｂｉｔが全て０のパターン、８ｂｉｔが全て１のパターン、１０の繰り返しのパターン、０１の繰り返しのパターンとしていたが、参照パターンレジスタ２２１２の内容は、参照パターンの最適化のためにソフトウェアの処理によって外部のホストＣＰＵが設定を変更できる構造になっている。
データパターン出現回数カウンタ２２１８とデータパターン出現回数レジスタ２２１９を設けて、外部のホストＣＰＵがデータパターン出現回数レジスタ２２１９からデータを読み出せる構造になっている。また、格納データ数レジスタから圧縮コード数を読み出すことができるので、外部のホストＣＰＵはソフトウェアの処理により、最適な参照パターンを決定することができる。
【００１５】
本発明の第１の効果を実現するため、図１のデータパターン出現回数カウンタ２２１８とデータパターン出現回数レジスタ２２１９を設けている。受領データのデータパターンと参照パターンの一致したときにパターンコンパレータ２２１１から出力される信号ＰＣ０１〜ＰＣ０８、ＰＣ１１〜ＰＣ１８、ＰＣ２１〜ＰＣ２８、ＰＣ３１〜ＰＣ３８をデータパターン出現回数カウンタ２２１８で計数する。データパターン出現回数カウンタ２２１８で計数された値は、データパターン出現回数レジスタ２２１９に格納せれる。外部のホストＣＰＵが、データパターン出現回数レジスタ２２１９からデータを読み出せる構造になっている。
また、格納データ数演算回路２２１５と格納データ数レジスタ２２１６を設けており、コード決定回路２２０４の出力である符号化データＣＯＤＥ１〜ＣＯＤＥ８に対して識別データ付加回路２２１３で識別データを付加し、ビデオメモリ２２１４に格納されるデータを入力してデータ数を格納データ数演算回路２２１５に入力する。格納データ数演算回路２２１５では圧縮されたコードから格納データ数を演算し、格納データ数レジスタ２２１６に格納する。ホストＣＰＵは、格納データ数レジスタ２２１６から得られたデータからソフトウェアの処理により圧縮率を評価し、さらに最適化するために参照パターンレジスタ２２１２のデータを更新することができる。
また、本発明の第２の効果を実現するための構成は、図１の参照パターン切換回路２２１７で参照パターンを自動的に切換えて、参照パターンの最適化を自動化する機能を備えている。前記第１の効果を実現する発明ではホストＣＰＵが設定した４種類の参照パターンを用いたが、第２の効果を実現する発明では、受領データに含まれるデータパターンを全てのケースに対して計数する。比較するデータが８ｂｉｔの場合は２５６種類のパターンがあるが、４種類ずつ参照パターンレジスタ２２１２に設定し、データパターン出現回数カウンタ２２１８で計数する。全ての計数結果は、データパターン出現回数レジスタ２２１９に記憶される。
【００１６】
次に、データパターン出現回数レジスタ２２１９に記憶された出現回数の大きな値のデータパターンから順に参照パターンとして参照パターンレジスタ２２１２に設定し、格納データ数演算回路２２１５の結果から圧縮データ数が最小となる組み合せを選定する。
本実施の形態では、８ｂｙｔｅの表示データを８ｂｉｔ単位でパターン比較し符号化しているが、１ライン分のデータを１２８ｂｉｔ、２５６ｂｉｔまたはそれ以外のｂｉｔ数にしたり、符号化の最小単位を４ｂｉｔ、１６ｂｉｔ、３２ｂｉｔまたはそれ以外のｂｉｔ数にしても全く同じ方法で符号化することができる。１ライン分のｂｉｔ数と符号化の最小単位のｂｉｔ数は、ビデオメモリの構成や編集方法（ホストＣＰＵからのアクセス方法）あるいは扱う表示データの特性に合わせて最適化する必要がある。
なお、本実施の形態では表示画像データの符号化復号化方式を画像表示装置に適用する場合について説明してきたが、これに限られるものではなく、他の画像処理装置、画像形成装置の画像処理や画像形成の際の画像データの符号化復号化にも適用してもよい。
【００１７】
【発明の効果】
以上記載のごとく請求項１の発明によれば、外部のコンピュータ等から出現回数を読み出ことができるので、そのデータに基づいて参照パターンを最適化して画像データの圧縮率を改善することができる。
また請求項２では、外部のコンピュータ等からソフトウェアの処理により、演算結果に基づいて圧縮率を評価し、評価の結果、参照パターンを更新する必要があれば更新するので、更に参照パターンを最適化して圧縮率を改善することができる。
また請求項３では、格納データ数演算手段の結果に基づいて圧縮データが最小となる組み合わせを参照パターン切替手段により選択するので、外部のコンピュータ等からソフトウェアの処理により最適化する必要がなく、ソフトウェアの負担を軽減することができる。
【図面の簡単な説明】
【図１】全体の構成を示すブロック図である。
【図２】ラインバッファの構成を示す図である。
【図３】パターンコンパレータの構成を示す図である。
【図４】ランレングス判定前処理部を示す図である。
【図５】ランレングス判定前処理部を示す図である。
【図６】ランレングス判定前処理部を示す図である。
【図７】ランレングス判定前処理部を示す図である。
【図８】ランレングス判定回路を示す図である。
【図９】ランレングス判定回路を示す図である。
【図１０】ランレングス判定回路を示す図である。
【図１１】ランレングス判定回路を示す図である。
【図１２】ブランク行決定回路を示す図である。
【図１３】ブランク行決定回路を示す図である。
【図１４】ブランク行決定回路を示す図である。
【図１５】ブランク行決定回路を示す図である。
【図１６】ビットマップ判定回路を示す図である。
【図１７】ブランクランレングス判定前処理部を示す図である。
【図１８】ブランクランレングス判定回路を示す図である。
【図１９】ブランクランレングス判定前処理部を示す図である。
【図２０】ブランクランレングス判定前処理部を示す図である。
【図２１】３行目までのブランクを調べる内部回路ＮＣＯＤＥ３  ＳＥＬの構成および真理値表を示す図である。
【図２２】４行目までのブランクを調べる内部回路ＮＣＯＤＥ４  ＳＥＬの構成および真理値表を示す図である。
【図２３】５行目までのブランクを調べる内部回路ＮＣＯＤＥ５  ＳＥＬの構成および真理値表を示す図である。
【図２４】６行目までのブランクを表す信号ＮＣＯＤＥ６＿１〜ＮＣＯＤＥ６＿５と真理値表を決定する論理回路ＮＣＯＤＥ６ＳＥＬ（２６０１）を表す図である。
【図２５】７行目までのブランクを表す信号ＮＣＯＤＥ７＿１〜ＮＣＯＤＥ７＿６と真理値表を決定する論理回路ＮＣＯＤＥ７ＳＥＬ（２７０１）を表す図である。
【図２６】ＣＯＤＥ１を決定する論理回路（ＥＮＣＯＤＥ１ＳＥＬ（２８０１）およびＥＮＣＯＤＥ１ＬＡＴＣＨ（２８０２））回路図である。
【図２７】ＣＯＤＥ５を決定する内部回路ＥＮＣＯＤＥ５  ＳＥＬのおよび  ＥＮＣＯＤＥ５  ＬＡＴＣＨを示す図である。
【図２８】ＣＯＤＥ８を決定する内部回路ＥＮＣＯＤＥ８  ＳＥＬのおよびＥＮＣＯＤＥ８  ＬＡＴＣＨを示す図である。
【図２９】ＣＯＤＥ８を決定する内部回路ＥＮＣＯＤＥ８  ＳＥＬの真理値表を示す図である。
【符号の説明】
２２０１  ランレングス判定前処理部、２２０２  ランレングス判定回路、２２０９  ラインバッファ、２２１１  パターンコンパレータ、２２１２  参照パターンレジスタ、２２１７  参照パターン切替回路、２２１８  データパターン出現回数カウンタ、２２１９  データパターン出現回数レジスタ
【図１】
2004193806.tif 000003
【図２】
2004193806.tif 000004
【図３】
2004193806.tif 000005
【図４】
2004193806.tif 000006
【図５】
2004193806.tif 000007
【図６】
2004193806.tif 000008
【図７】
2004193806.tif 000009
【図８】
2004193806.tif 000010
【図９】
2004193806.tif 000011
【図１０】
2004193806.tif 000012
【図１１】
2004193806.tif 000013
【図１２】
2004193806.tif 000014
【図１３】
2004193806.tif 000015
【図１４】
2004193806.tif 000016
【図１５】
2004193806.tif 000017
【図１６】
2004193806.tif 000018
【図１７】
2004193806.tif 000019
【図１８】
2004193806.tif 000020
【図１９】
2004193806.tif 000021
【図２０】
2004193806.tif 000022
【図２１】
2004193806.tif 000023
【図２２】
2004193806.tif 000024
【図２３】
2004193806.tif 000025
【図２４】
2004193806.tif 000026
【図２５】
2004193806.tif 000027
【図２６】
2004193806.tif 000028
【図２７】
2004193806.tif 000029
【図２８】
2004193806.tif 000030
【図２９】
2004193806.tif 000031