(57)【要約】【課題】  現在使用している描画能力の測定が可能な画像処理装置を提供する。【解決手段】  ラインバッファ１２０Ａおよび１２０Ｂは、１ライン分の画像データを記憶する記憶容量を有している。バッファ切り換え部１４０は、水平同期信号ＨＳＹＮＣ＿Ｎに応じてラインバッファ１２０Ａおよび１２０Ｂを交互に書き込み用ラインバッファとして選択して描画回路１１０に接続し、描画回路１１０に描画処理の開始を指示するスタート信号を送る一方、書き込み用ラインバッファとしなかったラインバッファを読み出し用ラインバッファとして表示回路１３０に接続する。表示回路１３０は、読み出し用ラインバッファから１ライン分の画像データを読み出して表示装置２０２に送る。１ライン分の描画処理が完了すると、描画回路１１０はストップ信号を出力する。カウンタ１６１は、スタート信号の発生からストップ信号の発生までの描画時間のカウントを行う。【選択図】図１
2010256676.tif 000002
【特許請求の範囲】
【請求項１】
ライン単位で画像データを記憶する記憶手段と、
水平同期信号に応じて前記記憶手段から１ライン分の画像データを読み出して表示装置に出力する表示手段と、
前記水平同期信号の発生に応じて、前記記憶手段への１ライン分の画像データの書き込みを行う１ライン分の描画処理を開始し、１ライン分の描画処理を完了したときにストップ信号を出力する描画手段と、
前記水平同期信号の発生から前記ストップ信号の発生までの描画時間を計時する描画時間計時手段と、
を具備することを特徴とする画像処理装置。
【請求項２】
前記水平同期信号の発生周期である１ライン時間を計時する１ライン時間計時手段を具備することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
保持している最大値と前記１ライン時間計時手段により計時される１ライン時間とを比較し、１ライン時間の最大値を保持する最大値保持手段を具備することを特徴とする請求項２に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、１ライン分の記憶容量を有するラインバッファを利用して、画像データの描画および表示装置への表示を行う画像処理装置に関する。
【背景技術】
【０００２】
周知の通り、ゲーム機等のアミューズメント機器では、描画アプリケーションに従って静止画や動画の画像データをバッファに書き込む描画処理とバッファ内の画像データを読み出して表示装置に表示させる表示処理が同時並行的に進められる。近年、この種のアミューズメント機器の低価格化に関する要求が厳しくなってきたため、描画および表示のためのバッファとして１フレーム分の画像データを記憶可能な大容量のフレームバッファを採用することが困難になってきた。このため、１ライン分の画像データを記憶可能な容量のラインバッファを備え、このラインバッファを利用して、静止画や動画の画像データの描画と表示装置への表示を行うようにした画像処理装置が各種提案されるに至った（例えば特許文献１参照）。このようなラインバッファを備えた画像処理装置では、描画アプリケーションから指示された完全な静止画や動画を表示装置に表示させるためには、各ラインの静止画や動画のラインバッファへの書き込みを各々１水平走査期間相当の書き込み許容時間内に完了しなければならない。しかし、描画アプリケーションの実行に必要な描画能力に対して画像処理装置の描画能力が十分でない場合には、１ライン分の画像データのラインバッファへの書き込みが書き込み許容時間内に完了しないラインが発生し、本来、表示すべき静止画や動画の一部が欠けた画像が表示装置に表示されることとなる。このような描画性能を越える描画を画像処理装置に行わせて不完全な画像を表示させることは好ましいことではない。そこで、従来の画像処理装置では、１ライン分の描画処理中に書き込み許容時間を越えた場合にセットされるエラーフラグを設け、画像処理装置全体を制御するＣＰＵがこのエラーフラグを確認することにより描画性能を越える描画が行われたことを確認し、以後、そのような描画性能を越える描画が行われるのを回避する等の対策をとっていた。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２１５２５２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、上述した従来の技術では、エラーフラグの監視を行うことにより、描画アプリケーションの実行に必要な描画能力が画像処理装置の描画能力を越えているか否かを確認することはできるが、描画アプリケーションの実行に必要な描画能力が画像処理装置の描画能力に対してどの程度の余裕を有しているかを判断することができないという問題があった。
【０００５】
この発明は、以上説明した事情に鑑みてなされたものであり、現在使用している描画能力の測定が可能な画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
この発明は、ライン単位で画像データを記憶する記憶手段と、水平同期信号に応じて前記記憶手段から１ライン分の画像データを読み出して表示装置に出力する表示手段と、前記水平同期信号の発生に応じて、前記記憶手段への１ライン分の画像データの書き込みを行う１ライン分の描画処理を開始し、１ライン分の描画処理を完了したときにストップ信号を出力する描画手段と、前記水平同期信号の発生から前記ストップ信号の発生までの描画時間を計時する描画時間計時手段と、
を具備することを特徴とする画像処理装置を提供する。
【０００７】
かかる発明によれば、１ライン分の描画時間が計測されるので、使用されている描画能力の把握を行うことができる。
【図面の簡単な説明】
【０００８】
【図１】この発明による画像処理装置の一実施形態である画像表示ＬＳＩの構成を示すブロック図である。
【図２】同実施形態において発生される各種の同期信号と表示処理との関係を示す図である。
【図３】同実施形態の動作を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、図面を参照し、この発明の実施の形態を説明する。
図１は、この発明による画像処理装置の一実施形態である画像表示ＬＳＩ（Large Scale
Integrated circuit；大規模集積回路）１００の構成を示すブロック図である。なお、図１では、画像表示ＬＳＩ１００の機能の理解を容易にするため、同画像表示ＬＳＩ１００が搭載された実機２００と評価用ＰＣ（Personal Computer）３００が同画像表示ＬＳＩ１００とともに図示されている。
【００１０】
図１において、実機２００は、例えばアミューズメント機器である。図１では、この実機２００の一部の構成要素として、本実施形態による画像表示ＬＳＩ１００と、ＣＰＵ２０１と、表示装置２０２が示されている。実機２００本来の機能に着目すると、ＣＰＵ２０１は、アミューズメント機器としての機能を営むための各種のアプリケーションプログラムを実行し、実機２００内の各部を制御する装置である。具体的にはＣＰＵ２０１は描画アプリケーションを実行し、静止画や動画に関する描画コマンドを画像表示ＬＳＩ１００に供給する。画像表示ＬＳＩ１００は、このＣＰＵ２０１からの描画コマンドに従い、各種の静止画や動画を表示装置２０２に表示させる。
【００１１】
この例において、実機２００は、図１に示すように、ＣＰＵ２０１を評価用ＰＣ３００に接続することにより、評価用ＰＣ３００の制御下に置くことが可能である。この状態において、実機２００のＣＰＵ２０１は、評価用ＰＣ３００から所定の指令が与えられた場合に、描画アプリケーションと描画性能モニタを並列実行する。すなわち、実機２００のＣＰＵ２０１は、描画アプリケーションに従って描画コマンドを画像表示ＬＳＩ１００に供給して描画処理を行わせる一方、その間、描画性能モニタに従って各ラインの描画時間とそれらの描画時間の書き込み許容時間に対する余裕時間を示すデータを画像表示ＬＳＩ１００から取得して評価用ＰＣ３００に供給する。評価用ＰＣ３００では、この描画性能モニタの働きにより供給されるデータを集計して、画像表示ＬＳＩ１００が各ラインの描画にどれだけの時間を要しており、それが書き込み許容時間に対してどれだけの余裕を有しているかを示す描画余裕度グラフを作成し、評価用ＰＣ３００の表示装置に表示させる。
【００１２】
本実施形態の特徴は、このような描画余裕度グラフの作成に必要なライン毎の描画時間と余裕時間を測定して外部に出力する機能を備えた画像表示ＬＳＩ１００の構成にある。以下、この画像表示ＬＳＩ１００の構成について詳述する。
【００１３】
画像表示ＬＳＩ１００において、ＣＰＵインタフェース１０１は、ＣＰＵ２０１から描画コマンドを受け取って描画回路１１０に伝達する。また、ＣＰＵインタフェース１０１は、画像表示ＬＳＩ１００における描画処理の状況に関するデータを取得し、ＣＰＵ２０１に供給する機能を備えている。なお、この機能の詳細については後述する。
【００１４】
描画回路１１０は、ＣＰＵインタフェース１０１を介して与えられる描画コマンドに従って、静止画や動画の画像データをライン単位で順次生成する回路である。ラインバッファ１２０Ａおよび１２０Ｂは、各々、表示装置２０２における１ライン分（１水平走査期間分）の画像データを記憶するバッファである。表示回路１３０は、ラインバッファ１２０Ａおよび１２０Ｂから交互に１ライン分の画像データを読み出して表示装置２０２に供給する回路である。バッファ切り換え部１４０は、同期信号生成回路１５０が出力する水平同期信号ＨＳＹＮＣ＿Ｎに同期して、ラインバッファ１２０Ａおよび１２０Ｂを交互に選択し、選択したラインバッファを書き込み用ラインバッファとして描画回路１１０に接続し、描画回路１１０に対して１ライン分の描画処理の開始を指示するスタート信号を出力するとともに、残ったラインバッファを読み出し用ラインバッファとして表示回路１３０に接続し、読み出し用ラインバッファ内の１ライン分の画像データの表示装置２０２への出力を表示回路１３０に行わせる回路である。
【００１５】
同期信号生成回路１５０は、表示装置２０２の表示タイミングを制御する各種の同期信号を生成する回路である。図２は、この同期信号生成回路１５０が生成する各種の同期信号と表示装置２０２の表示動作との関係を示す図である。同期信号生成回路１５０は、水平同期カウンタと垂直同期カウンタ（いずれも図示略）を有している。水平同期カウンタは、同期信号生成回路１５０内において発生されるドットクロックＤＯＴＣＬＫをカウントし、カウント値が１水平走査期間相当の値に達したときにカウント値をリセットする動作を繰り返す。垂直同期カウンタは、水平同期カウンタが１水平走査期間相当のカウントを行う回数をカウントし、そのカウント値が１垂直走査期間を構成する水平走査期間数に達したときにカウント値をリセットする動作を繰り返す。同期信号生成回路１５０は、これらの水平同期カウンタおよび垂直同期カウンタの各カウント値に基づき、垂直同期信号ＶＳＹＮＣ＿Ｎ、水平同期信号ＨＳＹＮＣ＿Ｎおよびブランキング信号ＢＬＡＮＫ＿Ｎを生成する。
【００１６】
さらに詳述すると、同期信号生成回路１５０は、垂直走査期間の開始（垂直同期カウンタのリセット）から所定数の水平走査期間に亙って持続する非表示期間の間、垂直同期信号ＶＳＹＮＣ＿ＮをＬレベルとする。また、同期信号生成回路１５０は、各水平走査期間が始まるとき（水平同期カウンタがリセットされたとき）、所定時間に亙って水平同期信号ＨＳＹＮＣ＿ＮをＬレベルとする。また、同期信号生成回路１５０は、表示装置２０２に対する画像データの供給を行わない非表示期間の間、ブランキング信号ＢＬＡＮＫ＿ＮをＬレベルとする。より具体的には、図２に示すように、垂直走査期間の開始直後の所定数の水平走査期間と垂直走査期間の終了直前の所定数の水平走査期間は、水平走査期間全体に亙って非表示期間となる。従って、同期信号生成回路１５０は、これらの非表示期間においてブランキング信号ＢＬＡＮＫ＿ＮをＬレベルとする。また、全体として非表示期間でない各水平走査期間では、水平走査期間の開始直後の所定期間と水平走査期間の終了直前の所定期間が非表示期間となる。従って、同期信号生成回路１５０は、これらの非表示期間においてブランキング信号ＢＬＡＮＫ＿ＮをＬレベルとする。１垂直走査期間内において、非表示期間を除いた期間はボーダー期間と呼ばれる。このボーダー期間内の各水平走査期間では、表示回路１３０がドットクロックＤＯＴＣＬＫに同期して１ライン分のＲＧＢの画像データを表示装置２０２に供給する。しかし、その全ての画像データが表示装置２０２に表示されるのではなく、図示のようにボーダー期間の内側の表示期間に属する画像データのみが表示に用いられる。
【００１７】
描画時間計測回路１６０は、描画余裕度グラフの作成に必要な描画時間等のデータの計測を行う回路である。本実施形態における描画時間計測回路１６０は、図１に示すように、カウンタ１６１および１６２と、最大値保持部１６３および１６４と、減算器１６５と、余裕時間保持部１６６とを有する。
【００１８】
カウンタ１６１および１６２には、所定周期の計測用クロックφが与えられる。カウンタ１６１は、描画回路１１０に対して１ライン分の描画処理の開始を指示するスタート信号が与えられるときに、このスタート信号によってリセットされる。その後、カウンタ１６１は、計測用クロックφのカウントを行い、描画回路１１０が１ライン分の描画処理を完了してストップ信号を出力したとき、計測用クロックφのカウントを終了する。従って、カウント終了時におけるカウンタ１６１のカウント値は、描画回路１１０における１ライン分の描画時間を示すものとなる。最大値保持部１６３は、ストップ信号の発生時に、カウンタ１６１のカウント値と保持している最大値とを比較し、カウント値が最大値よりも大きい場合にカウント値により最大値を更新する。すなわち、最大値保持部１６３は、１ライン分の描画時間の最大値を保持することとなる。
【００１９】
カウンタ１６２は、計測用クロックφのカウントを常時行っており、上述したスタート信号が発生する毎に、このスタート信号によってリセットされる。最大値保持部１６４は、スタート信号の発生時にその時点におけるカウンタ１６２のカウント値（すなわち、リセット直前のカウント値）を保持している最大値と比較し、カウント値が最大値よりも大きい場合にカウント値により最大値を更新する。ここで、スタート信号は水平走査期間毎に１回ずつ発生するので、最大値保持部１６４は、１ライン時間（１水平走査期間の時間長）の最大値を保持することとなる。最大値保持部１６３に保持される１ライン分の描画時間の最大値と最大値保持部１６４に保持される１ライン時間の最大値の分解能は計測用クロックφの周期により定まる。従って、計測用クロックφの周期は十分に短いことが好ましい。なお、計測用クロックφとして、同期信号生成回路１５０が出力するドットクロックＤＯＴＣＬＫを利用してもよい。
【００２０】
減算器１６５は、最大値保持部１６４に保持された１ライン時間の最大値から最大値保持部１６３に保持された１ライン分の描画時間の最大値を減算し、減算結果を余裕時間として出力する。余裕時間保持部１６６は、減算器１６５によって出力された余裕時間を保持する。
【００２１】
ＣＰＵ２０１は、ＣＰＵインタフェース１０１を介することにより、最大値保持部１６３、１６４および余裕時間保持部１６６に保持された各データを読み出して評価用ＰＣ３００に供給するとともに、最大値保持部１６３、１６４および余裕時間保持部１６６に保持されたデータをリセットすることが可能である。
以上が本実施形態による画像表示ＬＳＩ１００の構成の詳細である。
【００２２】
図３は本実施形態の動作を示すフローチャートであり、図３（ａ）は１画面分の描画・表示に関連した動作を、図３（ｂ）は図３（ａ）のステップＳ２において行われる１ライン分の描画・表示に関連した動作を各々示している。以下、これらのフローチャートを参照し、本実施形態の動作を説明する。
【００２３】
図３（ａ）に示すように、１画面分の描画・表示の動作では、まず、同期信号生成回路１５０の垂直同期カウンタがリセットされ（ステップＳ１）、垂直走査期間が開始される。この垂直走査期間では、１ライン分の描画・表示の動作（ステップＳ２）と、同期信号生成回路１５０の垂直同期カウンタのカウント値を１だけ進める動作（ステップＳ３）と、垂直同期カウンタのカウント値が１画面相当のカウント値になったか否かの判断（ステップＳ４）が行われる。そして、垂直同期カウンタのカウント値が１画面相当のカウント値未満である間、ステップＳ２〜Ｓ４の動作が繰り返され、垂直同期カウンタのカウント値が１画面相当のカウント値になるとステップＳ４の判断結果が「ＹＥＳ」となり、１画面分の描画・表示の動作が終了する。そして、次の１画面分の描画・表示の動作が開始される。
【００２４】
図３（ｂ）に示すように、１ライン分の描画・表示の動作では、まず、同期信号生成回路１５０の水平同期カウンタがリセットされる（ステップＳ２１）。この水平同期カウンタのリセットに応じて水平同期信号ＨＳＹＮＣ＿Ｎが発生される。これによりラインバッファ切り換え部１４０は、ラインバッファ１２０Ａおよび１２０Ｂのうちそれまで書き込み用ラインバッファであったものを読み出し用ラインバッファに切り換え、それまで読み出し用ラインバッファであったものを書き込み用ラインバッファに切り換える（ステップＳ２２）。次にラインバッファ切り換え部１４０は、スタート信号を発生する。これにより、カウンタ１６１における描画時間のカウント値とカウンタ１６２における１ライン時間のカウント値がリセットされる（ステップＳ２３）。このとき、最大値保持部１６４は、リセット直前における１ライン時間のカウント値と保持している最大値とを比較し、カウント値が最大値よりも大きい場合にカウント値により最大値を更新する（ステップＳ２４）。また、スタート信号が発生されることにより、描画回路１１０は、書き込み用ラインバッファに対する１ライン分の描画を開始し、これに伴い、表示回路１３０は、読み出し用ラインバッファからの１ライン分の画像データの読み出しおよび表示装置２０２への供給を開始する（ステップＳ２５）。そして、描画回路１１０は、１ライン分の描画処理を完了すると（ステップＳ２６）、ストップ信号を出力してカウンタ１６１における描画時間のカウントを停止させる（ステップ２７）。このとき、ストップ信号が最大値保持部１６３に与えられることから、最大値保持部１６３では、その時点における描画時間のカウント値と保持している最大値とを比較し、カウント値が最大値を越える場合にはカウント値により最大値を更新する（ステップＳ２８）。
【００２５】
そして、画像表示ＬＳＩ１００は、水平同期カウンタのカウント値が１ライン相当のカウント値になるまで待機し（ステップＳ２９）、１ライン分の描画・表示の動作を終了する。
【００２６】
以上の動作が繰り返される間、ＣＰＵ２０１は、ＣＰＵインタフェース１０１を介することにより、最大値保持部１６３、１６４および余裕時間保持部１６６に保持された各データを読み出して評価用ＰＣ３００に供給するとともに、最大値保持部１６３、１６４および余裕時間保持部１６６に保持されたデータをリセットする動作を繰り返すことが可能である。
【００２７】
この読み出しおよびリセットの動作をｋ水平走査期間毎に行った場合、ｋ水平走査期間毎に、当該期間内における１ライン当たりの描画時間の最大値と、当該期間内における１ライン時間の最大値と、これらの１ライン時間の最大値と描画時間の最大値との差分である余裕時間がＣＰＵ２０１によって画像表示ＬＳＩ１００から取得され、評価用ＰＣ３００に提供される。評価用ＰＣ３００では、このようにしてＣＰＵ２０１から提供されるデータに基づいて、描画時間の１ライン時間（すなわち、書き込み許容時間）に対する余裕度を示す描画余裕度グラフを作成し、評価用ＰＣ３００の表示装置に表示させることができる。この場合の描画余裕度グラフの表示態様には各種のものが考えられるが、例えば表示装置２０２の画面を垂直方向にｋラインずつに区切り、図１に例示するように、各区間毎に描画時間の最大値を棒グラフ表示してもよい。その際、描画時間が１ライン時間に対してどの程度の余裕を有しているか分かりやすくするために、１ライン時間の位置を示す目印を棒グラフとともに表示してもよい。あるいは描画時間を示す棒と余裕時間を示す棒とを１本の棒に繋いで表示し、その際に描画時間を示す棒の表示色と余裕時間を示す棒の表示色を異ならせてもよい。
【００２８】
以上説明したように、本実施形態によれば、画像表示ＬＳＩ１００は、ライン毎の描画処理の所要時間を示す情報を出力するので、画像表示ＬＳＩ１００の外部において同画像表示ＬＳＩ１００において行われている描画処理の描画性能限界に対する余裕を定量的に把握することができ、例えば描画アプリケーションの開発時に画像表示ＬＳＩ１００の描画性能の限界を越える描画アプリケーションの開発を回避する等の対応が容易になるという効果がある。
【００２９】
＜他の実施形態＞
以上、この発明の実施形態を説明したが、この発明には、他にも各種の実施形態が考えられる。例えば次の通りである。
【００３０】
（１）上記実施形態では、評価用ＰＣ３００が実機２００のＣＰＵ２０１に接続された状態において描画余裕度グラフの作成に必要なデータを画像表示ＬＳＩ１００から採取して評価用ＰＣ３００に供給した。しかし、評価用ＰＣ３００が実機２００に接続されていない状態において、例えば描画余裕度グラフを実機２００のＣＰＵ２０１が作成し、表示装置２０２に表示させるように構成してもよい。
（２）上記実施形態では、描画時間とともに、１ライン時間の計測を行い、両者の差分である余裕時間を算出したが、描画時間のみを画像表示ＬＳＩ１００に計測させてもよい。
【符号の説明】
【００３１】
１００……画像表示ＬＳＩ、１０１……ＣＰＵインタフェース、１１０……描画回路、１２０Ａ，１２０Ｂ……ラインバッファ、１３０……表示回路、１４０……バッファ切り換え部、１５０……同期信号生成回路、１６０……描画時間計測回路、１６１，１６２……カウンタ、１６３，１６４……最大値保持部、１６５……減算器、１６６……余裕時間保持部。
【図１】
2010256676.tif 000003
【図２】
2010256676.tif 000004
【図３】
2010256676.tif 000005