(57)【特許請求の範囲】
【請求項１】
自然画像データと図形データが分けられて記憶される画像メモリから、前記図形データがパレットデータである場合にこの図形データを輝度・色差信号に変換するＣＬＵＴ変換ステップと、
このＣＬＵＴ変換ステップにより変換された図形データの表示画面上における一部の矩形のブロック領域のデータを順次読み出す読み出しステップと、
この読み出しステップにより読み出されたデータに垂直方向の低域通過フィルター処理を行う低域通過処理ステップと、
この低域通過処置ステップにより低域通過処理を行った図形データと、前記画像メモリに記憶されている前記自然画像データを共に前記画像メモリの表示領域に記憶する表示用データ記憶ステップとを備えて成ることを特徴とするフリッカ低減方法。
【請求項２】
自然画像データと図形データが分けられて記憶される画像メモリから、前記図形データがパレットデータである場合にこの図形データを輝度・色差信号に変換するＣＬＵＴ変換ステップと、
このＣＬＵＴ変換ステップにより変換された図形データの表示画面上における一部の矩形のブロック領域のデータを順次読み出す読み出しステップと、
この読み出しステップにより読み出されたデータに複数タップのデジタルフィルターにより垂直方向の低域通過フィルター処理を行う低域通過処理ステップと、
この低域通過処置ステップにより低域通過処理を行った図形データと、前記画像メモリに記憶されている前記自然画像データを共に前記画像メモリの表示領域に記憶する表示用データ記憶ステップとを備えて成ることを特徴とするフリッカ低減方法。
【請求項３】
自然画像データと図形データが分けられて記憶される画像メモリから前記図形データがパレットデータである場合にこの図形データを輝度・色差信号に変換するＣＬＵＴ変換ステップと、
このＣＬＵＴ変換ステップにより変換された図形データの表示画面上における一部の矩形のブロック領域のデータを順次読み出す読み出しステップと、
この読み出しステップにより読み出されたデータとこのデータを表示画面上垂直方向にずらせたデータとを加算したデータを生成する加算データ生成ステップと、
この加算データ生成ステップにより生成された加算データと前記画像メモリに記憶されている前記自然画像データを共に前記画像メモリの表示領域に記憶する表示用データ記憶ステップとを備えて成ることを特徴とするフリッカ低減方法。
【請求項４】
前記加算データ生成ステップにおいて、垂直方向にずらせて加算するデータを大きくすることにより実質的な低域通過特性を変更することを特徴とする請求項３記載のフリッカ低減方法。
【請求項５】
自然画像データと図形データが分けられて記憶される画像メモリと、
この画像メモリに記憶された前記図形データがパレットデータである場合にこの図形データを輝度・色差信号に変換するＣＬＵＴ変換回路と、
このＣＬＵＴ変換回路により変換された図形データの表示画面上における一部の矩形のブロック領域のデータを順次読み出すバッファメモリと、
このバッファメモリに記憶されたデータに垂直方向の低域通過フィルター処理を行う垂直フィルター部と、
この垂直フィルター部により垂直方向の低域通過フィルター処理をしたデータを、前記画像メモリに記憶されている前記自然画像データを共に前記画像メモリの表示領域に記憶する表示用データ記憶手段とを備えて成ることを特徴とするフリッカ低減回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、フリッカ低減方法に係わり、特に、文字などの図形と自然画像を１画面に表示する場合のフリッカ低減方法およびその装置に関する。
【０００２】
【従来の技術】
近年、電話回線を通信媒体として利用した双方向サービスが盛んに行われている。双方向サービスには、自宅で商品を購入する事ができるオンラインショッピングや、文字データにより情報交換を行うパソコン通信などが実施されている。今後は、映画やＴＶ番組をリクエストすると、選択した番組を受信者個別に提供するビデオ・オン・デマンドなどのサービスが予定されている。
【０００３】
また、日本では、デジタル放送が2000年から開始される予定である。BSデジタル放送では、衛星の１つの中継器に標準画質の映像信号が複数と情報を多重することが可能である。デジタル放送の最大の特長ともいうべきデータ放送では、いつでも視聴することが可能な天気予報やニュース、電子的番組ガイドをユーザーに提供することが検討されている。更に、このデータ放送は、伝送容量の大きさを利用し、色々なサービスが提供されるに違いない。
【０００４】
これらのサービスを受ける受信機は、従来の単に映像を映し出すだけの機器ではなく、高速なＣＰＵやリアルタイムＯＳを搭載した複雑なシステムである。このような受信機では、複数の映像に対してデジタル映像信号処理を施し拡大・縮小して映像信号を表示する。即ち、本来の映像（自然画像）に、文字など作成した図形を重畳して表示することがある。この２種の画像は、周波数成分の点から見ると、大きく異なる。前者は高い垂直周波数成分が少ないのに対して、後者では高い垂直周波数成分が非常に多い。ここでは、高い垂直周波数成分が少ない前者の画像を自然画像とし、高い垂直周波数成分が多い後者の画像を図形と定義して区別する。
【０００５】
ところで、上記の受信機の表示形態には大きく分けて２通りの方法がある。走査線を１本置きに表示するインターレース(飛び越し)走査方式と、走査線を１本づつ表示するプログレッシブ(順次)走査方式である。
【０００６】
前者のインターレース方式は、プログレッシブ方式に比べてデータ伝送容量が半分になるメリットがあるが、図形のように垂直の周波数が高い場合には、インターラインフリッカ妨害として、画面がちらついて見える。一方、プログレッシブ方式では、このインターラインフリッカは発生せず、高精細な画像を表示できる反面、伝送容量及び内部動作周波数も倍になる。このようなことから、主に画像を表示するＴＶでは、インターレース方式を採用し、文字など図形を表示するパソコンでは、プログレッシブ方式が採用されている。
【０００７】
しかし、先に説明したように、デジタル放送が開始されると、データ放送などにより文字情報など高い周波数成分を有する図形をＴＶで表示することになり、インターレース方式のフリッカ妨害が問題となる。
【０００８】
この問題を解決する為に、フリッカフリーフィルターが採用された。このフリッカーフリーフィルターは、垂直低域のデジタルフィルターによる実現される。垂直低域のデジタルフィルターを通すことによってフリッカが軽減されるが、代わりに鮮明感がなくなる。即ち、文字情報はこのフィルターにより文字が見やすくなり問題が解決されるが、自然画像は元々垂直の高域成分が少ないために、フィルターを通すことで更にぼやけた画像になってしまう。
【０００９】
この問題を解決するべく例えば、特開平10-23463に開示されているように、文字領域と自然画領域でフリッカーフリーフィルターを通すか否かを選択できるフリッカ低減回路が考えられた。
【００１０】
しかし上記構成では、文字領域が複数の矩形領域であった場合に制御が複雑になり、更に、モニタに表示するデータ列(ラスターイメージ)で垂直フィルターをかけるには、水平数ライン分のラインメモリが必要になる問題点がある。しかも、従来のNTSC方式であれば、水平910画素であるので、必要になるラインメモリも比較的少なくて済んだが、デジタルＴＶでは、主にHD(高精細)である為に、水平1920画素となり、従来よりも倍以上のメモリ容量が必要となる。
【００１１】
【発明が解決しようとする課題】
上述のように、従来のフリッカ低減回路では、文字の領域が多くあった場合に複雑な制御が必要であり、又、垂直フィルターをかける為に水平数ライン分のラインメモリが必要になって、特に表示が高精細のデジタルＴＶでは容量の大きなラインメモリが必要となる問題点がある。
【００１２】
したがって、この発明は上記問題点を解決し、 文字領域が多くあった場合でも制御が簡単であり、しかも容量の大きなラインメモリを必要としないフリッカ低減方法及びその装置を提供することを目的とする。
【００１３】
【課題を解決するための手段】
上記目的を達成するために、本願の方法発明の基本的な特徴によれば、自然画像データと図形データが分けられて記憶される画像メモリから、前記図形データがパレットデータである場合にこの図形データを輝度・色差信号に変換するＣＬＵＴ変換ステップと、このＣＬＵＴ変換ステップにより変換された図形データの表示画面上における一部の矩形のブロック領域のデータを順次読み出す読み出しステップと、この読み出しステップにより読み出されたデータに垂直方向の低域通過フィルター処理を行う低域通過処理ステップと、この低域通過処置ステップにより低域通過処理を行った図形データと、前記画像メモリに記憶されている前記自然画像データを共に前記画像メモリの表示領域に記憶する表示用データ記憶ステップとを備えて成ることを特徴とするフリッカ低減方法を提供する。
したがって、この発明では、画像メモリの表示領域と図形データが格納されている部品領域を分けて管理し、部品領域から図形データを矩形領域のブロック転送（ＢｉｔＢＬＴ）により表示領域にコピーする際に、垂直方向の低域通過フィルター処理を行うことによりフリッカ低減がなされる。この発明では、大きな容量のラインメモリを必要としない。
【００１４】
また、本願の方法発明の他の基本的な特徴によれば、自然画像データと図形データが分けられて記憶される画像メモリから、前記図形データがパレットデータである場合にこの図形データを輝度・色差信号に変換するＣＬＵＴ変換ステップと、このＣＬＵＴ変換ステップにより変換された図形データの表示画面上における一部の矩形のブロック領域のデータを順次読み出す読み出しステップと、この読み出しステップにより読み出されたデータに複数タップのデジタルフィルターにより垂直方向の低域通過フィルター処理を行う低域通過処理ステップと、この低域通過処置ステップにより低域通過処理を行った図形データと、前記画像メモリに記憶されている前記自然画像データを共に前記画像メモリの表示領域に記憶する表示用データ記憶ステップとを備えて成ることを特徴とするフリッカ低減方法を提供する。
【００１５】
また、本願の方法発明の更に他の基本的な特徴によれば、自然画像データと図形データが分けられて記憶される画像メモリから前記図形データがパレットデータである場合にこの図形データを輝度・色差信号に変換するＣＬＵＴ変換ステップと、このＣＬＵＴ変換ステップにより変換された図形データの表示画面上における一部の矩形のブロック領域のデータを順次読み出す読み出しステップと、この読み出しステップにより読み出されたデータとこのデータを表示画面上垂直方向にずらせたデータとを加算したデータを生成する加算データ生成ステップと、この加算データ生成ステップにより生成された加算データと前記画像メモリに記憶されている前記自然画像データを共に前記画像メモリの表示領域に記憶する表示用データ記憶ステップとを備えて成ることを特徴とするフリッカ低減方法を提供する。
【００１６】
この発明では、矩形領域ブロック転送の際に転送元データと転送先データを一定の比率で混合することによりフリッカー低減が実現できる。したがって、この発明によれば、垂直フィルター部、具体的には低域通過フィルター処理を行うためのメモリを全く必要としない利点がある。
【００１７】
また、本願の発明の基本的な特徴によれば、自然画像データと図形データが分けられて記憶される画像メモリと、この画像メモリに記憶された前記図形データがパレットデータである場合にこの図形データを輝度・色差信号に変換するＣＬＵＴ変換回路と、このＣＬＵＴ変換回路により変換された図形データの表示画面上における一部の矩形のブロック領域のデータを順次読み出すバッファメモリと、このバッファメモリに記憶されたデータに垂直方向の低域通過フィルター処理を行う垂直フィルター部と、この垂直フィルター部により垂直方向の低域通過フィルター処理をしたデータを、前記画像メモリに記憶されている前記自然画像データを共に前記画像メモリの表示領域に記憶する表示用データ記憶手段とを備えて成ることを特徴とするフリッカ低減回路を提供する。
【００１８】
要するに本願の発明は、画像メモリの表示領域に図形データを転送する前に、デジタルフィルタによってあるいは、図形データを１ラインずらせた図形データを加算することによって、実質的に垂直フィルタ処理を行うものである。
【００１９】
【発明の実施の形態】
図１に、本発明のフリッカ低減方法に用いる一実施例の回路の構成を示す。
【００２０】
グラフィックプロセッサ１０１は、中央制御ユニット（ＣＰＵ）１０２の制御の下に画像入力端子１０３から入力される映像（自然画像）を処理し文字などの図形を重畳し、接続されている画像メモリ１０４の表示領域に記憶させ、画像出力端子１０５から表示する画像を出力する機能を有する。
【００２１】
グラフィックプロセッサ１０１は、画像入力端子１０３から入力された映像信号から同期信号の抽出、画像出力端子１０５に出力する信号の同期信号の生成などを行う同期処理部１０６と、画像入力端子１０３から入力された映像信号の処理を行う映像信号処理部１０７と、画像メモリ１０４に対して矩形領域のブロック転送や矩形領域の単色塗りつぶし等の処理を行うアクセラレータ１０８と、画像メモリ１０４とグラフィックプロセッサ１０１内の各回路との間に立って競合処理や画像メモリ１０４のリフレッシュ動作等を行うメモリインターフェース（メモリＩ／Ｆ）１０９と、画像メモリ１０４の表示領域のデータをラスターイメージに変換するラスターユニット１１１と、映像信号の各種変換を行う映像ポスト処理部１１２と、これらグラフィックプロセッサ１０１内の各回路と上記ＣＰＵ１０２との間に立って各回路からの割り込み要求をＣＰＵ１０２に送りＣＰＵ１０２からの制御を各回路に伝えるＣＰＵインターフェース（ＣＰＵ―Ｉ／Ｆ）１１３とから構成される。
【００２２】
グラフィックプロセッサ１０１は、ＣＰＵ―Ｉ／Ｆ１１３に接続されるＣＰＵ１０２によって制御されており、ＣＰＵ１０２は、ＣＰＵ―Ｉ／Ｆ１１３を経由してグラフィックプロセッサ１０１の内部及び画像メモリ１０４にアクセスすることになる。ＣＰＵ１０２からのアクセスには、大きく分けて２つあり、１つはレジスタアクセスであり、もう一つは画像メモリ１０４に対するアクセスである。ＣＰＵ１０２からのアドレスによって、２つのアクセスが区別されており、アドレスマップにはメモリアクセス領域とレジスタアクセス領域がある。レジスタアクセスによって、グラフィックプロセッサ１０１内の各回路が持つレジスタにRead/Writeを行い、グラフィックプロセッサ１０１の動作を決定する。一方、メモリアクセスによって、グラフィックプロセッサ１０１に接続されている画像メモリ１０４へのRead/Write動作が行われる。
【００２３】
画像メモリ１０４には、高速の同期型ＤＲＡＭ(ＳＤＲＡＭ)やＲＤＲＡＭ等が用いられ、バンド幅の広い特性を有するデバイスが要求される。
【００２４】
同期処理部１０６は、画像入力端子１０３から入力される映像信号の同期信号の抽出や画像出力端子１０５に出力する画像信号の同期信号の生成、グラフィックプロセッサ１０１内の各回路へのクロック及び同期信号の分配を行う。グラフィックプロセッサ１０１内の各回路では、同期処理部１０６からのこれらの信号を元にして水平・垂直のカウンタ等を生成し画像処理等を行う。
【００２５】
ＣＰＵ―Ｉ／Ｆ１１３は、メモリ領域へのアクセスの場合には、Read/Writeの種別、アドレス、データをメモリＩ／Ｆ１０９に出力する。一方、レジスタ領域のアクセスの場合には、メモリアクセスの場合と同様にRead/Writeの種別、アドレス、データをグラフィックプロセッサ１０１内の各回路に出力する。
【００２６】
またＣＰＵ―Ｉ／Ｆ１１３は、グラフィックプロセッサ１０１内の各回路から発生する割り込み信号をまとめてＣＰＵ１０２に送出する。割り込み信号は、例えば垂直同期信号であり、この割り込み信号を利用してフレーム毎の映像を更新し、点滅しているような画像を表示するアプリケーションなどに利用される。
【００２７】
一方、ＭＰＥＧ２等によって圧縮された信号を外部のMPEGデコーダによって復元されたデジタル映像信号が画像入力端子１０３から映像入力処理部１０７に入力される。この映像入力処理部１０７では、クロックの同期化、メモリＩ／Ｆ１０９に対する信号変換等を行い、信号変換された映像（自然画像）のデータはメモリＩ／Ｆ１０９を通して、一旦画像メモリ１０４に書き込まれる。書き込まれたデータは、次に述べるようにラスターユニット１１１によって読み出され表示される。
【００２８】
ラスターユニット１１１は、画像出力端子１０５に出力するために画像メモリ１０４の表示領域に記憶されているデータをラスターイメージに変換する。ラスターユニット１１１は内部にバッファを有しており、画像メモリ１０４から高速で読み出されたデータは一旦この内部バッファに書き込まれる。書き込まれたデータは表示するクロックで１画素づつ途切れなく出力され、映像ポスト処理部１１２に入力される。
【００２９】
映像ポスト処理部１１２では、映像信号のマトリックス変換、インタレース変換、デジタルーアナログ変換等が行われ、自然画像と文字等の図形が混在した画像が画像出力端子１０５に出力される。出力された画像は、図示しない外部モニタによってユーザに画像として提示される。
【００３０】
アクセラレータ１０８は、画像メモリ１０４に対して、矩形領域の単色塗りつぶし(Ｆｉｌｌ)や、メモリ内の矩形領域のブロック転送(ＢｉｔＢＬＴ)を行うための回路が内蔵されており、基本的にＣＰＵ１０２からの指示によって動作する。例えば、CPUからブロック転送の実行指示があると、予め設定されたアドレスのデータをメモリＩ／Ｆ１０９を介して画像メモリ１０４から読み込み、アクセラレータ１０８内の内部バッファに一時格納される。格納されたデータは所望の処理が行われて、メモリＩ／Ｆ１０９に出力され、画像メモリ１０４の表示領域に書き込まれる。
【００３１】
またアクセラレータ１０８には垂直フィルターが内蔵されており転送するデータのフリッカーを除去することも可能である。このアクセラレータ１０８については以下に詳しく説明する。
【００３２】
メモリＩ／Ｆ１０９は、各ユニットからのメモリアクセスを一手に集め、競合(アービトレーション)処理や、画像メモリ１０４に対するリフレッシュ動作などを行う。このメモリＩ／Ｆ１０９は非常に重要であり、先に説明したラスターユニット１１１からは途切れなく映像信号を出力する必要があるため、ラスターユニット１１１からのアクセスは決められた範囲内で必ず応答しなければならない。また、映像入力処理部１０７からの信号も途切れなく画像メモリ１０４に書き込まなければならない。このような競合を処理しなければならないのである。
【００３３】
図２にアクセラレータ１０８のブロック構成を示す。このアクセラレータ１０８は、矩形領域の単一色塗りつぶし(Fill)、矩形領域のブロック転送(BitBLT)の機能を有する。BitBLT機能には、オプション機能として、転送先のデータと任意の比率で混合するブレンド機能、出力データに垂直のフィルター処理機能、フリッカー除去機能、特定の色を透明(書き込まない)にする機能、転送元と転送先の色を変換する色空間変換機能などを持つ。
【００３４】
アクセラレータ１０８は、画像メモリ１０４上の転送元のデータが一時記憶されるバッファＲＡＭ２０１ａと、転送先のデータが一時記憶されるバッファＲＡＭ２０１ｂと、これらバッファＲＡＭに記憶された図形データがパレットデータである場合に輝度・色差信号に変換するＣＬＵＴ変換回路２０２ａ，２０２ｂと、これらのＣＬＵＴ変換回路出力かバッファＲＡＭ２０１ａ，２０１ｂの出力かを選択するセレクタ２０３ａ，２０３ｂと、これらセレクタ出力を所定の割合で加算するブレンド処理部２０４と、このブレンド処理部２０４出力を垂直方向の低域通過フィルター処理を行う垂直フィルター部２０５と、セレクタ２０３ａ，２０３ｂ出力を比較する比較器２０６と、矩形領域を単一色塗りつぶしするときに動作するＦｉｌｌエンジン２０７と、垂直フィルター部２０５出力かブレンド処理部２０４出力かＦｉｌｌエンジン２０７出力かを選択するセレクタ２０８と、内部レジスタ２１１を有しセレクタ２０３ａ、２０３ｂ，２０８とブレンド処理部２０４と比較器２０６とＦｉｌｌエンジン２０７に制御信号等を送る内部コントローラ２１２とから成る。
【００３５】
ブレンド処理部２０４は、セレクタ２０３ａ，２０３ｂの各出力をＫＡ，ＫＢ倍する係数器２１３ａ，２１３ｂとこれら係数器の出力を加算する加算器２１４とから成る。また、垂直フィルター部２０５は、ブレンド処理部２０４出力を入力とするバッファＲＡＭ２１５，２１６と、これらバッファＲＡＭの出力をそれぞれＫＣ，ＫＤ倍する係数器２１７，２１８と、ブレンド処理部２０４の出力をＫＥ倍する係数器２１９と、これら係数器出力を加算する加算器２２０とから成る。バッファＲＡＭ２１５，２１６は、例えば１２８バイトの長さを有する。
【００３６】
内部コントローラ２１２は、アクセラレータ１０８全体を制御するコントロール回路であり、基本的には、ＣＰＵ―Ｉ／Ｆ１１３からのアドレス、データ、Read/Writeの種別により内部レジスタ２１１の書き込み、読み出しを行う。内部レジスタ２１１は、アクセラレータの動作を決定するために各回路から参照される。例えば、内部レジスタの所定のビットが１であればセレクタ２０８におて、垂直フィルター部２０５の垂直フィルター処理を行った出力を選択し、０であれば垂直フィルター部２０５を通らない信号を選択するようにする。
【００３７】
また、内部コントローラ２１２は、ＣＰＵ１０２から設定された転送先／転送元のプレーン幅、開始アドレスを元にメモリＩ／Ｆ１０９に対する読み出し又は書き込みのアドレス、データなどを計算し、メモリＩ／Ｆ１０９にデータ転送要求を行う。要求された転送データは、メモリＩ／Ｆ１０９により画像メモリ１０４から読み出し又は書き込みがなされる。画像メモリ１０４から読み出されたデータは、アクセラレータ１０８のバッファＲＡＭ２０１ａ又は２０１ｂに格納される。バッファＲＡＭは２つ存在し、ブレンド動作時に２つ利用される。１つは転送元データ用のバッファＲＡＭ２０１ａであり、もう１つは転送先の読み込み用のバッファＲＡＭ２０１ｂである。通常のブロック転送では基本的にバッファＲＡＭ２０１ａのみが使用される。
【００３８】
バッファＲＡＭ２０１ａから出力されたデータはＣＬＵＴ変換回路２０２ａに入力される。ＣＬＵＴ変換回路２０２ａはＲＡＭで構成されており、いわゆるパレットメモリである。画像メモリ１０４に格納されている図形データがパレットデータであれば、このデータはＣＬＵＴ変換回路２０２ａにおいて色差信号Ｙ,Ｐｒ,Pｂ(4：2：2)のデータに変換される。画像メモリ１０４上に格納されている図形データが色差信号形式のデータであれば、ＣＬＵＴ変換回路２０２ａを通さず、セレクタ２０３ａはバッファ２０１ａ出力を選択しブレンド処理部２０４に出力するよう内部コントローラ２１２が制御する。このＣＬＵＴ変換を行うか否かはＣＰＵ１０２によって設定される。
セレクタ２０３ａから出力されたデータは、ブレンド処理部２０４の係数器２１３ａに入力される。ブレンドオプションが設定された場合は、同時に係数値も設定され係数値と信号が、乗算されて加算器２１４に入力される。係数器２１３ａと係数器２１３ｂの係数値がそれぞれ、ＫＡ、ＫＢとすると、ＫＡ＝（１−ＫＢ）という関係が成立ち、入力された信号のGain(振幅)が１以上にならないようにされる。ブレンドオプションが設定されていない場合には、係数器２１３ａ，２１３ｂの係数値が１，０となり、係数器２１３ａの入力がそのまま出力される。
【００３９】
一方、バッファＲＡＭ２０１ｂはバッファＲＡＭ２０１ｂと基本的に同様に動作する。ＣＬＵＴ変換回路２０２ｂ,セレクタ２０３ｂ,係数器２１３ｂも各々ＣＬＵＴ変換回路２０２ａ,セレクタ２０３ａ,係数器２１３ａと同様に動作する。これらの回路の動作は独立に設定可能である。
【００４０】
ブレンド処理部２０４の加算器２１４では、係数器２１３ａと係数器２１３ｂの出力するデータを加算する。ブレンドオプションが設定されていない場合は、係数器２１３ａの係数値が１となり、この係数器２１３ａの出力データが垂直フィルター部２０５とセレクタ２０８に入力される。
【００４１】
ブレンドオプションが設定された場合には、係数器２１３ａの出力と係数器２１３ｂの出力が混合されることになる。このとき、加算器２１４出力は基本的にゲインは１を超えない筈であるが、演算誤差により１を超えてしまう場合がある。デジタルでは信号を表すのに２の補数表現を利用するため、正の数であるにも拘わらず負の数になってしまう、いわゆるオーバフローが生ずることがある。これを避けるためにオーバフロー回路を挿入する場合もある。
【００４２】
加算器２１４出力は、垂直フィルター部２０５とセレクタ２０８に入力される。垂直フィルター部２０５は、３タップの垂直デジタルフィルターにより構成されている。バッファＲＡＭ２１５には、２ライン前のデータが格納され、バッファＲＡＭ２１６には、１ライン前のデータが格納されている。また、係数器２１７，２１８，２１９は、それぞれ、1/4(0.25),1/2(0.5),1/4(0.25)が各係数値ＫＣ，ＫＤ，ＫＥとして設定されている。これらの係数値はビットシフトによって簡単に得ることができる。加算器２２０にて係数器出力の総和をとられて、フリッカが除去された図形データになる。
【００４３】
ここで、ＣＰＵ１０２よりアクセラレータ１０８の垂直フィルター制御をレジスタに設定することにより、上記フリッカが除去された垂直フィルター部２０５の出力データか又は加算器２１４の出力データを選択することになる。これは、文字などの図形データのときには、フリッカが除去された垂直フィルター部２０５の出力信号を選択することによりインターレース走査のモニタでもちらつきを軽減することができる。一方、自然画像データの場合には加算器２１４出力を選択するように設定され、シャープな映像を出力することが可能になる。この制御レジスタの設定はアクセラレータ１０８のプレーン幅等を設定する時に同時に設定される。
【００４４】
一方、アクセラレータ１０８の大きなもう１つの機能である矩形領域の単色塗りつぶし(Fill)を受け持つのがFillエンジン２０７である。これは、内部レジスタ２１１に設定された、開始アドレス、プレーン幅、色値から画像メモリ１０４に書き込むべきアドレスとデータを演算し、画像メモリ１０４上のアドレスに色値を書き込むことになる。Fillエンジン２０７の出力は、セレクタ２０８に入力され、内部コントローラ２１２によってセレクタ２０８がFillエンジン２０７の出力を選択し、メモリＩ／Ｆ１０９に出力されて、画像メモリ１０４に書き込まれる。
【００４５】
比較器２０６は、透明化転送を指定された場合に利用される回路である。セレクタ２０３ａの出力はこれから書き込もうとするデータであり、このデータと内部コントローラ２１２内の内部レジスタ２１１の所定位置の値が一致した場合は、セレクタ２０８から出力されたデータが画像メモリ１０４に書き込まれないよう、メモリＩ／Ｆ１０９に対してライトイネーブル信号を各データ毎に出力する。透明化転送が指定されない場合にはライトイネーブル信号は常にアクティブになりセレクタ２０８から出力されたデータを画像メモリ１０４に書き込むように指示をする。
【００４６】
図３及び図４を用いて画像メモリ１０４に書き込まれるデータの様子を更に詳しく説明する。
図３は画像メモリ１０４のデータが格納されているメモリマップ３０１を示しており、その部分のデータが表示される表示領域３０２と、文字データの一時記憶，データの演算などに用いられる作業領域３０３と、アイコンやマーク等の図形データが格納されている部品領域３０４とに分けられている。
【００４７】
表示領域３０２のデータはグラフィックプロセッサ１０１のラスターユニットに常に読み込まれ、したがって表示されるデータが記憶される。部品領域３０４には、アイコンやマークなどの画面を構成する部品が図形データとして格納されており、この部品領域３０４にあるデータをアクセラレータ１０８の矩形ブロック転送機能を用いて表示領域３０２にコピーすることによりその図形がモニタ上に表示されることになる。部品領域３０４には様々な大きさのデータが格納されており、これらの情報はブロック転送の動作開始前にパラメータとしてＣＰＵ１０２から与えられる。
【００４８】
作業領域３０３は、その名の示す通り表示領域３０２に移すデータを作成するために、様々な演算を行うためのワークエリアである。
【００４９】
ここで、図４（ａ）に示す文字「Ａ」がブロック転送（BitBLT）される場合について述べる。
【００５０】
まず、BitBLTを実行する前にＣＰＵ１０２は、転送元の情報である部品領域３０４ａにあるプレーン幅ＳＰＷ及び画像メモリ１０４上の部品領域３０４ａのスタートアドレスＳＴＡＤＲを内部レジスタ２１１に設定する。
【００５１】
次に転送する幅ＡＲＷと高さＡＲＨを内部レジスタ２１１に設定する。更に転送先のプレーン幅ＤＰＷ、画像メモリ１０４上の転送先(この場合は表示領域)のプレーン幅を設定する。また、転送先のスタートアドレスＤＴＡＤＲを設定する。このスタートアドレスＤＴＡＤＲの値によって表示する位置を指定できる。最後に転送時のオプションであるブレンド機能、CLUT変換、垂直フィルター機能の有無を設定する。各パラメータの設定終了すると、アクセラレーション開始レジスタに対して１を書き込み、それに従い、所望のBitBLT動作が実行される。一連の動作が終了するとＣＰＵ１０２に動作終了を通知するために、割り込み信号をＣＰＵ―Ｉ／Ｆ１１３に送出する。
【００５２】
この場合のBitBLT転送では、転送元データは、図４（ａ）に示す「Ａ」文字が格納されている。図では、部品の大きさよりも若干大きめに領域をとってあるため、転送元の余白部４０１が存在する。転送する幅は、転送元の黒太枠で囲んだ部分即ち図４（ｂ）である。従って、図４（ｃ）に示すように、転送先には完全な「Ａ」の文字は転送されず、下の部分がカットされた画像になる。
【００５３】
図５（ａ）に文字「天」の文字データを図５（ｂ）に点線部分５０１で見た信号の大きさ（レベル）を示す。この文字データは垂直フィルター部２０５にて垂直フィルター処理がなされると、図６（ａ）（ｂ）に示すようになる。データは２次元的（格子状）に配列されており各格子にデータがあるかないかで文字を表現することができる。大きな◯が信号レベル１とし、小さな○が大きなレベルの半分のレベルであることを示す。左から３番目の列の文字データをレベルに変換したものが、図５（ｂ）に示す信号レベルである。このようにフィルター処理をする前には縦(垂直)に高い周波数成分が存在するため、ちらつきとなってしまう。然るに垂直フィルター処理を行うと図６（ｂ）に示す通り、縦(垂直)のレベル差が小さくなり、高周波成分が少なくなってちらつきを抑えることができる。この場合のタップ係数は、1/4,1/2,1/4である。図７に、このタップ係数時の垂直フィルター部２０５における正規化した周波数特性を示す。横軸は周波数であり、縦軸はゲインを示す。垂直フィルター部のタップ数を増やすことによって垂直フィルターとしての低域通過特性を改善することができる。
【００５４】
以上説明したようにこの実施例では、文字などの図形データは垂直フィルター処理を行ってから画像メモリの表示領域に記憶させるので、フリッカの少ない画面が得られる。しかも、垂直フィルター処理を行う部分では、１２８バイトあるいは６４、２５６バイトなどの長さの短いメモリを用いることができ、容量の大きなラインメモリを必要としない。
【００５５】
尚、上記実施例では垂直ローパスフィルターのタップ係数にビットシフトを用いる構成になっているが、これに限定されるものではなく、乗算器を用い、任意にタップ係数を変更できるようにしてもよい。その場合のタップ係数は、ＣＰＵより指定され内部レジスタに格納される。
【００５６】
ところで上記実施例では、垂直フィルター処理を行う回路がアクセラレータ内に設けられており、図形データについてはこの回路によって垂直フィルター処理を行っていた。しかし、垂直フィルター処理を行う回路は必ずしも必要ではない。垂直フィルター処理のための回路を有しない本発明の他の実施例について次に説明する。この実施例では図形データとこの図形データを表示画面上垂直方向にずらせたデータとを加算することにより、簡易的に垂直フィルター処理を行いフリッカーを低減するものである。
【００５７】
図８に本発明のこの実施例のアクセラレータ８００の構成を示した。バッファＲＡＭ８０１ａ，８０１ｂ、ＣＬＵＴ変換回路８０２ａ，８０２ｂ、セレクタ８０３ａ，８０３ｂ、ブレンド処理部８０４、比較器８０６、Ｆｉｌｌエンジン８０７、セレクタ８０８、内部レジスタ８１１、内部コントローラ８１２、係数器８１３ａ，８１３ｂ、加算器８１４は図２におけるバッファＲＡＭ２０１ａ，２０１ｂ、ＣＬＵＴ変換回路２０２ａ，２０２ｂ、セレクタ２０３ａ，２０３ｂ、ブレンド処理部２０４、比較器２０６、Ｆｉｌｌエンジン２０７、セレクタ２０８、内部レジスタ２１１、内部コントローラ２１２、係数器２１３ａ，２１３ｂ、加算器２１４と同様に動作する。
【００５８】
この実施例の動作を図９及び図１０により説明する。図９は画像メモリ１０４内のメモリマップであり、表示領域９０１と作業領域９０２と部品領域９０３から成っている。図１０はこの実施例のフローチャートを示す図である。転送元データ「Ａ」を画像メモリの表示領域に基本ＢｉｔＢＬＴを行う。即ち、画像メモリ１０４の部品領域９０３にある「Ａ」の文字データをメモリＩ／Ｆ１０９を介してバッファＲＡＭ８０１ａに少しずつ入力し、ＣＬＵＴ変換回路８０２ａ（又はこの回路を通さないで）、セレクタ８０３ａ、係数器８１３ａ（この場合に係数ＫＡは１）、加算器８１４、セレクタ８０８を通して再びメモリＩ／Ｆ１０９を介して画像メモリ１０４の表示領域９０１に記憶させる。「Ａ」の文字データの表示領域９０１への基本ブロック転送が完了したら、図１０の処理１００２において転送元データ「Ａ」のスタートラインを表示画面上１ライン分ずらせてブランド係数０．５にてブレンドＢｉｔＢＬＴを行う。即ち、画像メモリ１０４の表示領域９０１から読み出した「Ａ」の信号を順次例えばバッファＲＡＭ８０１ａに入れ、一方部品領域９０３から１ライン文ずらせた「Ａ」の信号を順次読み出し、メモリＩ／Ｆ１０９を介してバッファＲＡＭ８０１ｂに入れる。そして図８の係数器８１３ａ，８１３ｂの係数値を０．５として加算した値を画像メモリ１０４の表示領域９０１の、先に「Ａ」が記憶されていた位置に再び記憶させる。これにより、タップ数が２、タップ係数が1/2(0.5),1/2(0.5)の垂直フィルタ処理を施したことと等価になる。
【００５９】
図１１にこの実施例において実質的になされた垂直フィルター処理の周波数特性を示す。図７に比べて必ずしも理想的ではないが、文字等の図形データから高周波成分が除去されていることがわかる。このように、アクセラレータ内に垂直フィルター回路がなくても簡易にフリッカ除去が可能になる。このようにずらせて加算するデータの数を大きくすれば、実質的な低域通過特性を変更し、理想的な特性を得るようにすることができる。
【００６０】
【発明の効果】
以上説明したように本発明によれば、大容量のラインメモリを用いることなく、あるいは垂直フィルターを構成するメモリを全く用いることなく、図形表示によって生じるフリッカを低減できる。
【図面の簡単な説明】
【図１】本発明の一実施例の方法を説明するための回路構成図。
【図２】本発明一実施例である図１におけるアクセラレータ１０８の回路構成図。
【図３】図１における図形メモリ１０４の構成を示す図。
【図４】本発明一実施例の画像メモリ内の転送動作を説明するための図。
【図５】図１，図２の回路構成において垂直フィルター処理を行う前のデータを示す図。
【図６】図１，図２の回路構成において垂直フィルター処理を行った後のデータを示す図。
【図７】図２のアクセラレータの垂直フィルター部２０５における低域通過特性を示す図。
【図８】本発明の他の実施例の方法に用いるアクセラレータの構成を示す図。
【図９】図８のアクセラレータを用いたときの画像メモリ内における転送動作を説明するための図。
【図１０】本発明の他の実施例方法の図９における動作手順を説明する為のフローチャート。
【図１１】図８のアクセラレータ８００における低域通過特性を示す図。
【符号の説明】
１０１・・・グラフィックプロセッサ、１０２・・・中央制御ユニット（ＣＰＵ）、１０４・・・画像メモリ、１０６・・・同期処理部、１０７映像入力処理部、１０８，８００・・・アクセラレータ、２０１ａ，２０１ｂ，２１５，２１６，８０１ａ，８０１ｂ・・・バッファＲＡＭ、１０９・・・メモリＩ／Ｆ、１１１・・・ラスターユニット、１１２・・・映像ポスト処理部、１１３・・・ＣＰＵ―Ｉ／Ｆ、２０２ａ，２０２ｂ，８０２ａ，８０２ｂ・・・ＣＬＵＴ変換回路、２０３ａ，２０３ｂ，２０８，８０３ａ，８０３ｂ，８０８・・・セレクタ、２０４，８０４・・・ブレンド処理部、２０７，８０６・・・比較器、２１１，８１１・・・内部レジスタ、２１２，８１２・・・内部コントローラ
【図１】
0003660830.tif 000002
【図２】
0003660830.tif 000003
【図３】
0003660830.tif 000004
【図４】
0003660830.tif 000005
【図５】
0003660830.tif 000006
【図６】
0003660830.tif 000007
【図７】
0003660830.tif 000008
【図８】
0003660830.tif 000009
【図９】
0003660830.tif 000010
【図１０】
0003660830.tif 000011
【図１１】
0003660830.tif 000012