(57)【特許請求の範囲】
【請求項１】
第１の方向に並んだ第１ピクセル及び第２ピクセルによりピクセルセットが構成され、前記第１の方向に並んだ複数の前記ピクセルセットにより１つのラインが構成され、前記第１の方向に直交する第２の方向に並んだ複数の前記ラインにより構成される表示画面に表示を行う画像表示装置において、
所定の解像度の２倍の倍解像度の画像を表示する場合、合成対象の２つの画像のうちの一方画像のピクセルデータの各々を、対応する前記ピクセルセットの前記第１ピクセルに割り当て、他方画像のピクセルデータの各々を、対応する前記ピクセルセットの前記第２ピクセルに割り当てることによって、合成対象の前記２つの画像のそれぞれのピクセルデータを交互に配置し、当該２つの画像を合成して、前記倍解像度の画像を表示し、
前記所定の解像度の画像を表示する場合、その対象となる１つの画像のピクセルデータの各々を、対応する前記ピクセルセットの前記第１ピクセルに割り当てるとともに、対応する前記ピクセルセットの前記第２ピクセルにも割り当てることによって、前記所定の解像度の画像を表示し、
表示対象の画像の各々には、予め、解像度設定情報及びピクセル指示情報が関連付けられ、
前記解像度設定情報は、当該解像度設定情報が関連付けられた画像に、前記所定の解像度で表示を行う標準解像度モード、あるいは、前記倍解像度で表示を行う倍解像度モードのいずれかを設定し、
前記ピクセル指示情報は、当該ピクセル指示情報が関連付けられた画像のピクセルデータを、前記ピクセルセットの前記第１ピクセルあるいは前記第２ピクセルのいずれに割り当てるかを指し示し、
前記倍解像度の画像を表示する場合、前記表示対象の画像である合成対象の前記２つの画像の各々には、前記解像度設定情報によって、前記倍解像度モードが設定され、
前記倍解像度の画像を表示する場合、合成対象の前記２つの画像のうちの前記一方画像は、前記ピクセル指示情報によって、ピクセルデータを前記第１ピクセルに割り当てることが指し示され、
前記倍解像度の画像を表示する場合、合成対象の前記２つの画像のうちの前記他方画像は、前記ピクセル指示情報によって、ピクセルデータを前記第２ピクセルに割り当てることが指し示され、
前記所定の解像度の画像を表示する場合、前記表示対象の画像である前記所定の解像度で表示される前記１つの画像には、前記解像度設定情報によって、前記標準解像度モードが設定され、
前記所定の解像度の画像を表示する場合、前記所定の解像度で表示される前記１つの画像に関連付けられた前記ピクセル指示情報は無視されることを特徴とする画像表示装置。
【請求項２】
合成対象の前記２つの画像は、それぞれ、前記表示画面を全て覆う大きさを持つ画像であり、
前記２つの画像に対応して設けられ、各々が、対応する前記画像に関連付けられる前記解像度設定情報を格納する２つの解像度設定情報格納レジスタと、
前記２つの画像に対応して設けられ、各々が、対応する前記画像に関連付けられる前記ピクセル指示情報を格納する２つのピクセル指示情報格納レジスタと、をさらに備え、
前記各解像度設定情報格納レジスタおよび前記各ピクセル指示情報格納レジスタは、外部からのアクセスによって、格納する情報を動的に変更可能である、請求項１記載の画像表示装置。
【請求項３】
合成対象の前記２つの画像は、それぞれ、前記表示画面のいずれの位置にでも配置可能な画像であり、
メモリをさらに備え、
前記メモリは、
前記２つの画像に対応して設けられ、各々が、対応する前記画像に関連付けられる前記解像度設定情報を格納する２つの解像度設定情報格納領域と、
前記２つの画像に対応して設けられ、各々が、対応する前記画像に関連付けられる前記ピクセル指示情報を格納する２つのピクセル指示情報格納領域と、を含む請求項１記載の画像表示装置。
【請求項４】
所定数の前記ピクセルセットの前記第１ピクセルに割り当てるピクセルデータを格納する、描画領域としての第１格納手段と、
前記所定数の前記ピクセルセットの前記第２ピクセルに割り当てるピクセルデータを格納する、描画領域としての第２格納手段と、をさらに備える請求項１から３のいずれかに記載の画像表示装置。
【請求項５】
前記第１格納手段および前記第２格納手段に対するリード要求及びライト要求を受領し、前記第１格納手段および前記第２格納手段に対するリード及びライトを行うリード／ライト制御手段と、
表示対象の画像に割り当てられた前記解像度設定情報に従って、前記リード／ライト制御手段に、前記ライト要求を発行するピクセルデータライト要求手段と、
前記第１格納手段及び前記第２格納手段からピクセルデータをリードするために、前記リード／ライト制御手段に、前記リード要求を発行するピクセルデータリード要求手段と、をさらに備える請求項４記載の画像表示装置。
【請求項６】
ライト対象の画像に関連付けられた前記解像度設定情報が前記高解像度モードを示している場合、前記ピクセルデータライト要求手段は、当該画像に関連付けられた前記ピクセル指示情報に従って、前記リード／ライト制御手段に、前記第１格納手段あるいは前記第２格納手段のいずれかへのライト要求を発行し、
ライト対象の画像に関連付けられた前記解像度設定情報が前記標準解像度モードを示している場合、前記ピクセルデータライト要求手段は、当該画像に関連付けられた前記ピクセル指示情報に拘らず、同一のピクセルデータを、前記第１格納手段および前記第２格納手段の双方の同じ位置にライトするように、前記リード／ライト制御手段に、ライト要求を発行し、
前記同じ位置は、前記表示画面上の同一座標に相当する位置を示し、前記表示画面上の座標は、前記ピクセルセット単位で設定される、請求項５記載の画像表示装置。
【請求項７】
前記ピクセルデータリード要求手段は、前記リード／ライト制御手段が前記第１格納手段及び前記第２格納手段から読み出したピクセルデータを受領し、時分割で順に後段に出力する、請求項５又は６記載の画像表示装置。
【請求項８】
表示対象の画像を構成する各ピクセルデータは、表示色を直接的または間接的に指定するカラーデータと、前記表示画面上の表示優先順位を示すデプスデータと、を含み、
前記ピクセルデータライト要求手段から前記第１格納手段へのライト要求を受領したとき、前記リード／ライト制御手段は、前記第１格納手段におけるライト対象の位置に格納されている前記デプスデータを読み出し、読み出した前記デプスデータと、前記ピクセルデータライト要求手段がライトを要求しているピクセルデータに含まれる前記デプスデータと、を比較し、前記ピクセルデータライト要求手段がライトを要求している前記ピクセルデータに含まれる前記デプスデータが示す前記表示優先順位が、読み出した前記デプスデータが示す前記表示優先順位より高い場合、前記ピクセルデータライト要求手段がライトを要求している前記ピクセルデータを前記第１格納手段におけるライト対象の前記位置にライトし、
前記ピクセルデータライト要求手段から前記第２格納手段へのライト要求を受領したとき、前記リード／ライト制御手段は、前記第２格納手段におけるライト対象の位置に格納されている前記デプスデータを読み出し、読み出した前記デプスデータと、前記ピクセルデータライト要求手段がライトを要求しているピクセルデータに含まれる前記デプスデータと、を比較し、前記ピクセルデータライト要求手段がライトを要求している前記ピクセルデータに含まれる前記デプスデータが示す前記表示優先順位が、読み出した前記デプスデータが示す前記表示優先順位より高い場合、前記ピクセルデータライト要求手段がライトを要求している前記ピクセルデータを前記第２格納手段におけるライト対象の前記位置にライトする、請求項５から７のいずれかに記載の画像表示装置。
【請求項９】
前記ピクセルデータリード要求手段から前記第１格納手段からのリード要求を受領した場合、前記リード／ライト制御手段は、当該リード要求に従って、前記第１格納手段におけるリード対象の位置からピクセルデータを読み出した後、前記第１格納手段におけるリード対象の前記位置に格納されている前記デプスデータを最も低い前記表示優先順位を示す値で初期化し、
前記ピクセルデータリード要求手段から前記第２格納手段からのリード要求を受領した場合、前記リード／ライト制御手段は、当該リード要求に従って、前記第２格納手段におけるリード対象の位置からピクセルデータを読み出した後、前記第２格納手段におけるリード対象の前記位置に格納されている前記デプスデータを最も低い前記表示優先順位を示す値で初期化する、請求項８記載の画像表示装置。
【請求項１０】
第１表示モードと第２表示モードとを切り替える表示モード切替手段をさらに備え、
前記表示モード切替手段によって前記第１表示モードが設定されている場合、前記解像度設定情報の内容に拘らず、表示対象の全ての画像について、各画像を構成するピクセルデータの各々を、対応する前記ピクセルセットの前記第１ピクセルに割り当てるとともに、対応する前記ピクセルセットの前記第２ピクセルにも割り当てることによって、前記所定の解像度で前記全ての画像を表示し、
前記表示モード切替手段によって前記第２表示モードが設定されている場合、表示対象の画像ごとに設定された前記解像度設定情報に従って、前記表示対象の画像ごとに、前記所定の解像度あるいは前記倍解像度で表示することを特徴とする請求項１から３のいずれかに記載の画像表示装置。
【請求項１１】
前記表示モード切替手段は、外部から動的に設定可能であって、前記第１表示モードを示すデータあるいは前記第２表示モードを示すデータが設定される表示モード制御レジスタを含む請求項１０記載の画像表示装置。
【請求項１２】
前記第１表示モードでは、前記解像度設定情報および前記ピクセル指示情報を、所定の画像表示を制御する情報として扱い、当該情報に従って、表示対象の画像を表示する請求項１０又は１１記載の画像表示装置。
【請求項１３】
前記所定の画像表示は、前記第１の方向及び／又は前記第２の方向の反転表示である、請求項１２記載の画像表示装置。
【請求項１４】
第１の方向に並んだＮ（２以上の整数）個のピクセルによりピクセルセットが構成され、前記第１の方向に並んだ複数の前記ピクセルセットにより１つのラインが構成され、前記第１の方向に直交する第２の方向に並んだ複数の前記ラインにより構成される表示画面に表示を行う画像表示装置において、
所定の解像度より高い解像度の画像を表示する場合、合成対象のＮ個の画像ごとに、重複しないように、前記ピクセルセットのうちのどの前記ピクセルにピクセルデータを割り当てるか予め設定され、その設定に従って、Ｎ個の前記各画像のピクセルデータを、対応する前記ピクセルセットのうちの対応する前記ピクセルに割り当てることによって、Ｎ個の前記画像を、ピクセルセット単位で表される同一座標に配置し、Ｎ個の前記画像を合成して、前記高い解像度の画像を表示し、
前記所定の解像度の画像を表示する場合、その対象となる１つの画像を構成するピクセルデータごとに、同一のピクセルデータを、対応する前記ピクセルセットの全ての前記ピクセルに割り当てることによって、前記所定の解像度の画像を表示することを特徴とする画像表示装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、解像度の調整が可能な画像表示装置、二次元ピクセルデータ配列を生成する方法、互換プロセッサ及びその関連技術に関する。
【背景技術】
【０００２】
特許文献１に示されるように、一般に、画面に映し出される画像の解像度の変更は、ドットクロックの周波数を変更することにより行われる。このため、画面に映し出される画像全体に対してのみ解像度の変更が可能である。
【０００３】
【特許文献１】特開平９−４４１１７号公報（図１）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、同一画面中に、低い解像度で十分な画像と、高い解像度が必要な画像と、が混在することもある。このような場合、上記のように、画面に映し出される画像全体でしか解像度の変更ができないならば、高い解像度に設定しなければならない。
【０００５】
そうすると、本来低解像度で十分な画像に対しても高解像度のデータを用意しなければならない。このため、データ量が大きくなって、必要なメモリ容量も大きくなる。これは、コストの上昇を招来する。また、データ量が大きくなると、プロセッサの処理負荷及びデータ転送のバス帯域への負荷も大きくなってしまう。
【０００６】
そこで、本発明の目的は、同一画面中の画像ごとに異なる解像度を設定できるようにして、メモリ容量の削減と処理負荷及びバス帯域への負荷の低減を可能にする画像表示装置、二次元ピクセルデータ配列を生成する方法、互換プロセッサ及びその関連技術を提供することである。
【課題を解決するための手段】
【０００７】
本発明の第１の観点によると、画像表示装置は、Ｎ個の画像データを合成してなる合成画像を表示画面に表示する。この画像表示装置において、一定順序で並んだ第０から第（Ｎ−１）までのＮ個のピクセルによりピクセルセットが構成され、第１の方向に並んだ前記ピクセルセットにより１つのラインが構成され、前記第１の方向に直交する第２の方向に並んだ複数の前記ラインにより前記表示画面が構成され、前記画像データの各々は、第Ｍの前記ピクセルを指し示すピクセル指示情報に関連付けられ、前記画像データを構成する各ピクセルデータを、それぞれに対応する前記ピクセルセットを構成する前記ピクセルであって、当該画像データに関連付けられた前記ピクセル指示情報が指し示す第Ｍの前記ピクセルに対するデータとして表示処理を行う。
【０００８】
Ｎ：２以上の整数
【０００９】
Ｍ：０から（Ｎ−１）のいずれかであって、前記画像データごとに異なる数
【００１０】
この構成によれば、合成対象の画像データごとに異なるピクセル指示情報に従って、ピクセルセットの各ピクセルにピクセルデータを割り当て、複数の画像データを合成する。つまり、合成対象の各画像データを１ピクセルずつインターリーブして表示処理を行うことにより、合成画像を生成する。従って、合成対象の各画像データの形式は、互いに完全同一のものとすることができる。
【００１１】
この場合、１ピクセルセットを構成するピクセルごとに任意の値をとることができるが、１ピクセルセットを構成する全ピクセルに対するデータとして、同一のピクセルデータを使用することもできる。つまり、同一の画像データを１ピクセルずつインターリーブして表示処理を行うことにより、合成画像を生成できる。この場合は、複数の同一画像データを用意する必要はなく、１つの画像データを用意すれば足りるので、メモリ容量の削減や処理負荷の低減が図れる。なお、１ピクセルセットを表示する際の時間は固定であるとする。
【００１２】
このように、１ピクセルセットを構成するピクセルごとに任意の値をとることができる場合（高い解像度）と比較して、低い解像度の表示を実現できるが、低い解像度の表示を行う場合であっても、高い解像度の表示を行う場合との間で、画像データの形式を互いに完全同一のものとすることができる。
【００１３】
なお、１ピクセルセットを表示する際の時間が固定であるとすると、１ピクセルセットを構成するピクセルの数Ｎが、合成画像の解像度を表す指標になる。例えば、Ｎ＝２の場合とＮ＝３の場合とでは、Ｎ＝３の方が解像度は高くなる。
【００１４】
上記画像表示装置において、例えば、第１の方向を水平方向とし、Ｎ＝２とすることもできる。
【００１５】
上記画像表示装置において、前記画像データの各々は、所定の解像度で表示を行う標準解像度モードあるいは前記所定の解像度より高い解像度で表示を行う高解像度モードのいずれかを示す解像度設定情報と関連付けられており、前記画像表示装置は、前記画像データが、前記標準解像度モードを示す前記解像度設定情報と関連付けられている場合には、前記ピクセル指示情報の内容に拘らず、前記ピクセルセットを構成する第０から第（Ｎ−１）の全ての前記ピクセルに対するデータとして、当該ピクセルセットに対応する同じ前記ピクセルデータを用いて表示処理を行い、前記画像データが、前記高解像度モードを示す前記解像度設定情報と関連付けられている場合には、当該画像データを構成する前記各ピクセルデータを、それぞれに対応する前記ピクセルセットを構成する前記ピクセルであって、当該画像データに関連付けられた前記ピクセル指示情報が指し示す第Ｍの前記ピクセルのデータとして表示処理を行う。
【００１６】
この構成によれば、解像度設定情報に従って、ピクセルデータの割り当てをピクセルセットを構成するピクセルごとに行い（高解像度モード）、あるいは、ピクセルデータの割り当てをピクセルセットごとに行う（標準解像度モード）ことで、解像度の切り替えを行っている。この場合、標準解像度モードでの表示を行うときは、複数の同一画像データを用意し、それぞれに解像度設定情報を関連付ける必要はなく、１つの画像データを用意して、その画像データに解像度設定情報を関連付ければよい。
【００１７】
関連付けられる解像度設定情報の内容に応じて、低い解像度で十分な画像に対しては標準解像度で表示され、高い解像度が必要な画像に対しては高解像度で表示されるので、解像度設定情報により、同一画面中の画像ごとに解像度を変えることで、画像データの大きさを最適化できる。従って、画像データを格納するメモリ容量の削減と処理負荷の軽減、更に画像データの転送ためのバス帯域への負荷の軽減を図ることができる。
【００１８】
上記画像表示装置において、第１表示モードと第２表示モードとを切り替える表示モード切替手段をさらに備え、前記第１表示モードが設定されている場合、前記画像データに関連付けられている前記解像度設定情報の内容に拘らず、前記ピクセルセットを構成する第０から第（Ｎ−１）の全ての前記ピクセルに対するデータとして、当該ピクセルセットに対応する同じ前記ピクセルデータを用いて表示処理を行う。
【００１９】
この構成によれば、第１表示モードを設定したときは、高解像度モードを搭載しておらず、常に標準解像度モードでの表示を行う前世代の画像表示装置を含む前世代のプロセッサのために作成されたソフトウェアをそのまま使用できる。従って、前世代のプロセッサに搭載されるソフトウェアとの後方互換性を維持しながらも、第２表示モードにて高解像度の表示が可能である。
【００２０】
上記画像表示装置において、前記表示モード切替手段は、外部から動的に設定可能であって、前記第１表示モードを示すデータあるいは前記第２表示モードを示すデータが設定される表示モード制御レジスタを含み、前記表示モード制御レジスタに設定されたデータの内容に従って、前記第１表示モードあるいは前記第２表示モードでの表示処理を実行する。
【００２１】
この構成によれば、外部（例えば、画像表示装置を内蔵するプロセッサに内蔵されるＣＰＵなど）で実行されるソフトウェアにより、第１表示モードと第２表示モードとの切り替えを動的に行うことができる。
【００２２】
上記画像表示装置において、Ｎ個の前記画像データに対応して設けられ、各々が、対応する前記画像データに関連付けられる前記解像度設定情報を格納するＮ個の解像度設定情報格納レジスタと、Ｎ個の前記画像データに対応して設けられ、各々が、対応する前記画像データに関連付けられる前記ピクセル指示情報を格納するＮ個のピクセル指示情報格納レジスタと、をさらに備え、前記解像度設定情報格納レジスタ及び前記ピクセル指示情報格納レジスタの各々は、外部からのアクセスによって、格納する情報を動的に変更可能である。
【００２３】
この構成によれば、外部（例えば、画像表示装置を内蔵するプロセッサに内蔵されるＣＰＵなど）で実行されるソフトウェアにより、Ｎ個の画像データ（例えば、実施の形態のバックグラウンドスクリーンの画像データ）に対して、標準解像度モードと高解像度モードとの切り替えや、ピクセル指示情報の内容の変更を動的に行うことができる。
【００２４】
上記画像表示装置において、メモリをさらに備え、前記メモリは、Ｎ個の前記画像データに対応して設けられ、各々が、対応する前記画像データに関連付けられる前記解像度設定情報を格納するＮ個の解像度設定情報格納領域と、Ｎ個の前記画像データに対応して設けられ、各々が、対応する前記画像データに関連付けられる前記ピクセル指示情報を格納するＮ個のピクセル指示情報格納領域と、を含む。
【００２５】
この構成によれば、外部（例えば、画像表示装置を内蔵するプロセッサに内蔵されるＣＰＵなど）で実行されるソフトウェアにより、解像度設定情報格納領域及び／又はピクセル指示情報格納領域の内容を動的に変更でき、Ｎ個の画像データ（例えば、実施の形態のスプライトの画像データ）に対して、標準解像度モードと高解像度モードとの切り替えや、ピクセル指示情報の内容の変更を動的に行うことができる。
【００２６】
上記画像表示装置において、前記第１表示モードでは、前記解像度設定情報および前記ピクセル指示情報を、所定の画像表示を制御する情報として扱って表示処理を行う。
【００２７】
この構成によれば、所定の画像表示を制御する情報の格納手段とこの情報を処理するためのデータパスをそのまま利用できるため、前世代の画像表示装置を含む前世代のプロセッサを基に、大きな回路変更を行うことなく機能拡張したプロセッサ(例えば、実施の形態のプロセッサ)を実現できる。
【００２８】
上記画像表示装置において、前記所定の画像表示は、前記第１の方向及び／又は前記第２の方向の反転表示である。
【００２９】
上記画像表示装置において、第０から第（Ｎ−１）の格納手段をさらに備え、前記画像データの前記ピクセルデータは、当該画像データに関連付けられた前記ピクセル指示情報が指し示す第Ｍの前記格納手段に格納される。
【００３０】
この構成によれば前世代の画像表示装置が備える格納手段と同じ構成の格納手段を加えるだけで、高解像度の画像表示を行うことが可能な画像表示装置（例えば、実施の形態のグラフィックスプロセッサ）を実現できる。
【００３１】
上記画像表示装置において、前記格納手段に対するリード要求及びライト要求を受領し、前記格納手段に対するリード及びライトを行うリード／ライト制御手段と、前記画像データの前記ピクセルデータを、当該画像データに関連付けられた前記ピクセル指示情報が指し示す第Ｍの前記格納手段にライトするために、前記リード／ライト制御手段に前記ライト要求を発行するピクセルデータライト要求手段と、第０から第（Ｎ−１）の前記格納手段から前記ピクセルデータをリードするために、前記リード／ライト制御手段に前記リード要求を発行するピクセルデータリード要求手段と、をさらに備える。
【００３２】
この構成によれば、簡単な回路構成によって格納手段に対する効率的なリード／ライトを行うことが可能になる。
【００３３】
上記画像表示装置において、前記画像データの各々は、所定の解像度で表示を行う標準解像度モードあるいは前記所定の解像度より高い解像度で表示を行う高解像度モードのいずれかを示す解像度設定情報と関連付けられており、前記ピクセルデータライト要求手段は、前記解像度設定情報が前記標準解像度モードを示している場合には、前記ピクセル指示情報の内容に拘らず、前記画像データの前記ピクセルデータを、第０から第（Ｎ−１）の全ての前記格納手段にライトするために、前記リード／ライト制御手段に前記ライト要求を発行し、前記解像度設定情報が前記高解像度モードを示している場合には、前記画像データの前記ピクセルデータを、当該画像データに関連付けられた前記ピクセル指示情報が指し示す第Ｍの前記格納手段にライトするために、前記リード／ライト制御手段に前記ライト要求を発行する。
【００３４】
この構成によれば、標準解像度モードの場合、第０から第（Ｎ−１）の全ての格納手段の該当位置に同一のピクセルデータが格納されるので、第０から第（Ｎ−１）の格納手段から、同一のピクセルデータが読み出され、その結果、高解像度モードの場合より低い解像度の表示が可能になる。一方、高解像度モードの場合、第０から第（Ｎ−１）の格納手段のそれぞれに任意のピクセルデータが格納されるので、第０から第（Ｎ−１）の格納手段から、それぞれのピクセルデータが読み出され、その結果、高い解像度の表示が可能になる。
【００３５】
上記画像表示装置において、第１表示モードと第２表示モードとを切り替える表示モード切替手段をさらに備え、前記ピクセルデータライト要求手段は、前記第１表示モードが設定されている場合、前記画像データに関連付けられている前記解像度設定情報の内容に拘らず、当該画像データの前記ピクセルデータを、第０から第（Ｎ−１）の全ての前記格納手段にライトするために、前記リード／ライト制御手段に前記ライト要求を発行する。
【００３６】
この構成によれば、第１表示モードの場合、第０から第（Ｎ−１）の全ての格納手段の該当位置に同一のピクセルデータが格納されるので、第０から第（Ｎ−１）の格納手段から、同一のピクセルデータが読み出され、その結果、標準解像度モードに相当する解像度での表示が可能になる。従って、第１表示モードを設定したときは、高解像度モードを搭載しておらず、常に標準解像度モードでの表示を行う前世代の画像表示装置を含む前世代のプロセッサのために作成されたソフトウェアをそのまま使用できる。このため、前世代のプロセッサに搭載されるソフトウェアとの後方互換性を維持しながらも、第２表示モードにて高解像度の表示が可能である。
【００３７】
上記画像表示装置において、前記ピクセルデータリード要求手段は、前記リード／ライト制御手段が第０から第（Ｎ−１）の前記格納手段から読み出した前記ピクセルデータを受領し、時分割で順に後段に出力する。
【００３８】
この構成によれば、第０から第（Ｎ−１）の格納手段から読み出した、ピクセルセットを構成する第０から第（Ｎ−１）のピクセルに対するピクセルデータを、時分割で順に後段に出力してピクセルセットを構成し、合成画像を生成できる。即ち、走査線の走査位置に基づいて画像処理を行う画像表示装置において、簡単な回路構成で高解像度の画像表示を達成できる。
【００３９】
上記画像表示装置において、前記画像データを構成する前記各ピクセルデータは、前記ピクセルの表示色を直接的または間接的に指定するカラーデータと、前記表示画面上の表示優先順位を示すデプスデータと、を含み、前記リード／ライト制御手段は、前記ピクセルデータライト要求手段からの前記ライト要求を受領したとき、前記格納手段におけるライト対象の位置に格納されている前記デプスデータを読み出し、読み出した前記デプスデータと、前記ピクセルデータライト要求手段がライトを要求している前記ピクセルデータに含まれる前記デプスデータと、を比較し、前記ピクセルデータライト要求手段がライトを要求している前記ピクセルデータに含まれる前記デプスデータが示す前記表示優先順位が、読み出した前記デプスデータが示す前記表示優先順位より高い場合、前記ピクセルデータライト要求手段がライトを要求している前記ピクセルデータを前記格納手段におけるライト対象の前記位置にライトする。
【００４０】
この構成によれば、ピクセルの書き込み順序にかかわらず、同じ位置にピクセルが重なる場合に、表示優先順位の高い方のピクセルを表示できる。
【００４１】
上記画像表示装置において、前記リード／ライト制御手段は、前記ピクセルデータリード要求手段からの前記リード要求に従って、前記格納手段におけるリード対象の位置から前記ピクセルデータを読み出した後、前記格納手段におけるリード対象の前記位置に格納されている前記デプスデータを最も低い前記表示優先順位を示す値で初期化する。
【００４２】
この構成によれば、読み出しが完了し、不要になったピクセルデータの初期化を行うことで、格納手段における、初期化されたピクセルデータの格納位置に、新たなピクセルデータをライトできる。従って、１ライン分の格納手段を必ずしも設ける必要はなく、１ライン分より容量の小さい格納手段を設けて、それを巡回的に使用することが可能である。よって、コストの低減を図ることができる。
【００４３】
本発明の第２の観点によると、二次元ピクセルデータ配列を生成する方法は、実効解像度の異なる画像を含む表示画面を形成する二次元ピクセルデータ配列を生成する方法であって、前記二次元ピクセルデータ配列の行方向に関して共通の解像度を持った画像データの夫々に、前記共通の解像度の倍の解像度を指示するフラグと、前記二次元ピクセルデータ配列の各行の奇数または偶数番目の要素を示すフラグと、が関連付けられ、前記方法は、前記共通の解像度の倍の解像度を指示するフラグがオフの場合、前記画像データの各ピクセルデータを、当該各ピクセルデータを表示すべき位置に対応する前記二次元ピクセルデータ配列の夫々の行の隣接する２つの要素に割り当てることにより、前記共通の解像度に対応する実効解像度の画像を表示するステップと、前記共通の解像度の倍の解像度を指示するフラグがオンの場合、前記画像データの各ピクセルデータを、前記奇数または偶数番目の要素を示すフラグの値に応じて、当該各ピクセルデータを表示すべき位置に対応する前記二次元ピクセルデータ配列の夫々の行の奇数または偶数番目の要素に割り当てることにより、前記共通の解像度の倍の解像度に対応する実効解像度の画像を表示するステップと、を含む。
【００４４】
この構成によれば、所定の解像度を持った画像データを用いて、実効解像度の異なる画像を含む表示画面を形成する二次元ピクセルデータ配列を生成できる。
【００４５】
本発明の第３の観点によると、互換プロセッサは、所定の解像度で画像を生成できる前世代のプロセッサで実行可能なソフトウェアが実行でき、前記所定の解像度の倍の解像度で画像を生成できる互換プロセッサであって、表示画面を形成し、行方向に関して前記所定の解像度の倍の解像度に相当する二次元ピクセルデータ配列を生成する画像表示手段と、所定のプログラムに従ってデータを処理し、前記画像表示手段へ、前記所定の解像度に相当する共通の解像度を持った画像データを出力するデータ処理手段と、前記前世代のプロセッサで実行可能なソフトウェアが実行可能な互換表示モードおよび前記二次元ピクセルデータ配列の行方向に関して前記所定の解像度の倍の解像度で画像データを表示できる拡張表示モードのいずれかを示す表示モード制御情報を格納する表示モード制御レジスタと、を備え、前記表示モード制御情報が前記拡張表示モードを示している場合、前記画像表示手段は、前記画像データの１つのフィールドに格納されている値を、前記二次元ピクセルデータ配列の奇数または偶数番目の列を示す情報として利用し、前記画像表示手段は、前記表示モード制御情報が前記拡張表示モードを示している場合、夫々奇数および偶数番目の列を示す情報が関連付けられた１対の画像データから、奇数番目の列を示す情報が関連付けられた画像データの各ピクセルデータを、当該各ピクセルデータを表示すべき位置に対応する前記二次元ピクセルデータ配列の夫々の行の奇数番目の要素に割り当て、偶数番目の列を示す情報が関連付けられた画像データの各ピクセルデータを、当該各ピクセルデータを表示すべき位置に対応する前記二次元ピクセルデータ配列の夫々の行の偶数番目の要素に割り当てることにより、前記所定の解像度の倍の解像度の合成画像を生成し、前記画像表示手段は、前記表示モード制御情報が前記互換表示モードを示している場合、前記画像データの各々のピクセルデータを、当該各ピクセルデータを表示すべき位置に対応する前記二次元ピクセルデータ配列の夫々の行の隣接する２つの要素に割り当てることにより、前記所定の解像度に対応する実効解像度の画像を表示する。
【００４６】
この構成によれば、前世代のプロセッサとの互換性を維持しつつ、この前世代のプロセッサより高い解像度で画像を表示できる互換プロセッサを、少ない変更で設計できる。 
【００４７】
上記互換プロセッサにおいて、前記表示モード制御情報が前記互換表示モードを示している場合、前記画像データの１つのフィールドの値は、画像反転を指示する情報として用いられる。
【発明を実施するための最良の形態】
【００４８】
以下、本発明の実施の形態について、図面を参照しながら説明する。なお、図中、同一または相当部分については同一の参照符号を付してその説明を援用する。また、本明細書及び図面において、信号のどのビットかを示す必要があるときは、信号名の後に、［ａ：ｂ］あるいは［ａ］を付する。［ａ：ｂ］は、その信号の第ａ番目のビットから第ｂ番目のビットを意味し、［ａ］は、その信号の第ａ番目のビットを意味する。１６進数の表現に関しては、１０進数と区別するために数字の末尾に「Ｈ」を付けて表記する。また、「０ｂ」は２進数を、「０ｘ」は１６進数を意味する。
【００４９】
図１は、本発明の実施の形態によるデータ処理装置としてのプロセッサ１０００の全体構成を示すブロック図である。図１に示すように、このプロセッサ１０００は、中央演算処理装置（ＣＰＵ：ｃｅｎｔｒａｌ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ）１、グラフィックスプロセッサ３、ピクセルプロッタ５、サウンドプロセッサ７、ＤＭＡ（ｄｉｒｅｃｔ  ｍｅｍｏｒｙ  ａｃｃｅｓｓ）コントローラ９、第１バスアービタ１３、第２バスアービタ１４、バックアップコントロール回路１５、メインメモリ１７、タイマ回路１９、Ａ／Ｄコンバータ（ＡＤＣ：ａｎａｌｏｇ  ｔｏ  ｄｉｇｉｔａｌ  ｃｏｎｖｅｒｔｅｒ）２０、入出力制御回路２１、外部メモリインタフェース回路２３、クロックドライバ２９、ＰＬＬ（ｐｈａｓｅ−ｌｏｃｋｅｄ  ｌｏｏｐ）回路２７、低電圧検出回路２５、第１バス３１、及び第２バス３３を含む。
【００５０】
ＣＰＵ１は、メモリＭＥＭに格納されたプログラムに従い、各種演算やシステム全体の制御を行う。ＣＰＵ１は、第１バス３１及び第２バス３３のバスマスタであり、それぞれのバスに接続された資源にアクセスが可能である。
【００５１】
ここで、本実施の形態では、メインメモリ１７及び外部メモリ４５を区別して説明する必要がないときは、「メモリＭＥＭ」と表記する。
【００５２】
本発明の特徴の１つであるグラフィックスプロセッサ３は、第１バス３１及び第２バス３３のバスマスタであり、メモリＭＥＭに格納されたデータを基に、グラフィックデータを合成し、さらにこれを基にテレビジョン受像機（図示せず）に合わせたビデオ信号ＶＤを生成して出力する。また、グラフィックスプロセッサ３は、第１バス３１を通じて、ＣＰＵ１により制御され、また、ＣＰＵ１に対して、割込み要求信号ＩＮＲＱを発生する機能を有する。
【００５３】
ここで、グラフィックデータは、バックグラウンドスクリーンとスプライトとビットマップスクリーンとから合成される。バックグラウンドスクリーンは、矩形の画素集合の二次元配列からなり、テレビジョン受像機の画面を全て覆う大きさを持つ。奥行きのある背景を形成できるように、バックグラウンドスクリーンとして、第１のバックグラウンドスクリーンと第２のバックグラウンドスクリーンとが用意される。以下、両者を区別する必要がないときは、単に「バックグラウンドスクリーン」と呼ぶ。スプライトは、テレビジョン受像機の画面のいずれの位置にでも配置可能な１つの矩形の画素集合からなる。バックグラウンドスクリーンやスプライトを構成する矩形の画素集合を、キャラクタと呼ぶ。例えば、キャラクタとして、８×８画素、８×１６画素、１６×８画素、及び１６×１６画素のサイズのものが用意される。ビットマップスクリーンは自由に大きさと位置を設定可能な二次元ピクセル配列からなる。
【００５４】
グラフィックスプロセッサ３は、バックグラウンドスクリーン及びスプライトについて、互換表示モードあるいは拡張表示モードのいずれかで、表示画像を生成する。
【００５５】
つまり、互換表示モードでは、常に標準解像度（例えば、８クロック／ピクセル）の表示画像が生成される。ここで、クロックは、特に明示しない限り、後述のクロックＣＫ４０を指す。
【００５６】
一方、拡張表示モードは、標準解像度で表示画像を生成するモード（標準解像度モード）に加えて、標準解像度を水平方向に２倍した倍解像度（例えば、４クロック／ピクセル）で表示画像を生成するモード（倍解像度モード）を有する。拡張表示モードにおいて、標準解像度モード及び倍解像度モードの設定は、スプライトごとに行うことができる。同様に、拡張表示モードにおいて、標準解像度モード及び倍解像度モードの設定は、バックグラウンドスクリーンに対しても行うことができる。
【００５７】
つまり、拡張表示モードでは、標準解像度のスプライト、倍解像度のスプライト、及び標準解像度のバックグラウンドスクリーンを混在した表示、並びに、標準解像度のスプライト、倍解像度のスプライト、及び倍解像度のバックグラウンドスクリーンを混在した表示などが可能である。もちろん、全て標準解像度の表示や全て倍解像度の表示も可能である。
【００５８】
従って、高い解像度での表示が不要な画像については、低い解像度で表示することにより、画像データのメモリＭＥＭ上でのサイズを削減できるとともに、描画処理負荷及びデータ転送のバス帯域への負荷を軽減できる。また、互換表示モードは、前世代のプロセッサと完全互換の表示モードであるため、前世代のプロセッサに搭載されるソフトウェアとの後方互換性を維持しながらも、拡張表示モードにて高解像度の表示が可能である。前世代のプロセッサについては後述する。
【００５９】
ピクセルプロッタ５は、第１バス３１を通じて、ＣＰＵ１により制御され、ＣＰＵ１から与えられたピクセルデータの描画を実行する。この場合、ピクセル単位での描画が可能である。ここで言うピクセルデータは、１ピクセルの表示色をＭビット（Ｍは１以上の整数）で表したデータである。本実施の形態では、Ｍ＝１〜８の例を挙げる。
【００６０】
また、ピクセルプロッタ５は、キャッシュシステムにより、高速な描画と効率的なバス（第１バス３１及び第２バス３３）の使用を実現している。さらに、ピクセルプロッタ５は、第１バス３１及び第２バス３３のバスマスタであり、キャッシュ（図示せず）からメモリＭＥＭへのライト及びメモリＭＥＭからキャッシュへのライトを自律的に行うことができる。
【００６１】
サウンドプロセッサ７は、第１バス３１及び第２バス３３のバスマスタであり、メモリＭＥＭに格納されたデータを基に、サウンドデータを合成し、さらにこれを基にオーディオ信号ＡＵを生成して出力する。
【００６２】
サウンドデータは、基本の音色となるＰＣＭ（パルスコードモジュレーション）データに対し、ピッチ変換及び振幅変調を行い合成される。振幅変調では、ＣＰＵ１によって指示されるボリューム制御の他に、楽器の波形を再現するためのエンベロープ制御の機能が用意される。
【００６３】
また、サウンドプロセッサ７は、第１バス３１を通じて、ＣＰＵ１により制御され、また、ＣＰＵ１に対して、割込み要求信号ＩＮＲＱを発生する機能を有する。
【００６４】
ＤＭＡコントローラ９は、外部バス４３に接続された外部メモリ４５から、メインメモリ１７へのデータ転送を司る。外部メモリ４５として、例えば、ＳＲＡＭ（ｓｔａｔｉｃ  ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）、ＤＲＡＭ（ｄｙｎａｍｉｃ  ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）、若しくはＲＯＭ（ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）等、任意のメモリを用いることができるし、その数も問わない。また、ＤＭＡコントローラ９は、データ転送の完了を通知するために、ＣＰＵ１に対する割込み要求信号ＩＮＲＱを発生する機能を有する。さらに、ＤＭＡコントローラ９は、第１バス３１及び第２バス３３のバスマスタであり、また、第１バス３１を通じてＣＰＵ１により制御される。
【００６５】
メインメモリ１７は、マスクＲＯＭ、ＳＲＡＭ、及び、ＤＲＡＭのうち、必要なものを備える。本実施の形態では、メインメモリ１７をＳＲＡＭで構成する。
【００６６】
バックアップコントロール回路１５は、後述の低電圧検出回路２５が低電圧を検知した場合に、メインメモリ１７を非活性化する。そして、メインメモリ１７には、バッテリ４１から電源電圧が供給される。従って、電源電圧Ｖｃｃ０及びＶｃｃ１の供給が停止された場合でも、ＳＲＡＭたるメインメモリ１７のデータが保持される。
【００６７】
第１バスアービタ１３は、第１バス３１の各バスマスタからの第１バス使用要求信号を受け付け、調停を行って、バスサイクル毎に１つのバスマスタに対して第１バス使用許可信号を発行する。具体的には、複数のバスマスタの第１バス３１に対する優先順位を定めた優先順位情報セットが複数用意され、第１バスアービタ１３は、複数の優先順位情報セットを順次的かつ巡回的に選択して、選択した優先順位情報セットに従って調停を行う。
【００６８】
各バスマスタは、第１バス使用許可信号を受領することによって第１バス３１の使用が許可される。ここで、第１バス使用要求信号及び第１バス使用許可信号は、図１では、第１バス調停信号ＦＡＢとして示されている。
【００６９】
第１バス３１は、例えば、８ビットのデータバス、１５ビットのアドレスバス、及びコントロールバスを含む（図示せず）。
【００７０】
第２バスアービタ１４は、第２バス３３の各バスマスタからの第２バス使用要求信号を受け付け、調停を行って、要求されたバイト数に対応する１または複数のバスサイクル毎に１つのバスマスタに第２バス使用許可信号を発行する。具体的には、複数のバスマスタの第２バス３３に対する優先順位を定めた優先順位情報セットが複数用意され、第２バスアービタ１４は、その複数の優先順位情報セットを順次的かつ巡回的に選択して、選択した優先順位情報セットに従って調停を行う。
【００７１】
各バスマスタは、第２バス使用許可信号を受領することによって第２バス３３の使用が許可される。ここで、第２バス使用要求信号及び第２バス使用許可信号は、図１では、第２バス調停信号ＳＡＢとして示されている。
【００７２】
第２バス３３は、例えば、１６ビットのデータバス、２７ビットのアドレスバス、及びコントロールバスを含む（図示せず）。
【００７３】
タイマ回路１９は、設定された時間間隔に基づき、ＣＰＵ１に対する割込み要求信号ＩＮＲＱを発生する機能を有する。時間間隔等の設定は、第１バス３１を介してＣＰＵ１によって行われる。
【００７４】
ＡＤＣ２０は、アナログ入力信号をデジタル信号に変換する。このデジタル信号は、第１バス３１を介してＣＰＵ１によってリードされる。また、ＡＤＣ２０は、ＣＰＵ１に対して、割込み要求信号ＩＮＲＱを発生する機能を有する。なお、外部からのアナログ信号は、例えば、６つのアナログポートＡＩＮ０〜５（図示せず）を介して、ＡＤＣ２０へ入力される。
【００７５】
入出力制御回路２１は、外部入出力装置や外部の半導体素子との通信等を、入出力信号を介して行う。入出力信号は、第１バス３１を介して、ＣＰＵ１からリード／ライトされる。また、入出力制御回路２１は、ＣＰＵ１に対して、割込み要求信号ＩＮＲＱを発生する機能を有する。なお、入出力信号は、例えば、プログラマブルな入出力ポートＩＯ０〜ＩＯ２３（図示せず）を介して入出力される。
【００７６】
低電圧検出回路２５は、電源電圧Ｖｃｃ０及びＶｃｃ１を監視し、いずれかの電源電圧がそれぞれについて定められた電圧以下になったときに、ＰＬＬ回路２７等のリセット信号ＬＰＷ、その他のシステム全体のリセット信号ＲＥＳを発行する。リセット信号ＬＰＷは、電源の投入時や切断時にシステムの保護と初期化を実行するために発行される。リセット信号ＲＥＳは、電源の投入時やシステムの再起動時にシステムを初期化するために発行される。リセット信号ＬＰＷがアクティブになるときは、リセット信号ＲＥＳも同時にアクティブになり、リセット信号ＬＰＷを解除しても、暫くはリセット信号ＲＥＳを解除しないように設定されている。
【００７７】
ここで、電源電圧Ｖｃｃ０は、例えば、＋２．５Ｖであり、主にプロセッサ１０００内のデジタル回路に供給される。また、電源電圧Ｖｃｃ１は、例えば、＋３．３Ｖであり、主にプロセッサ１０００内のアナログ回路及びＩ／Ｏ部に供給される。
【００７８】
ＰＬＬ回路２７は、水晶振動子３７より得られる正弦波信号を逓倍した高周波クロック信号ｃｋ４０を生成するとともに、そのクロック信号ｃｋ４０を２分周したクロック信号ｃｋ２０を生成する。
【００７９】
クロックドライバ２９は、ＰＬＬ回路２７より受け取ったクロック信号ｃｋ４０及びｃｋ２０を、十分な信号強度へ増幅して、それぞれ内部クロックＣＫ４０及びＣＫ２０として、各ブロックへ供給する。
【００８０】
外部メモリインタフェース回路２３は、第２バス３３を外部バス４３に接続するための機能を有する。
【００８１】
図１のプロセッサ１０００におけるデータの転送経路を説明する。例えば、バスマスタたるＣＰＵ１が、バススレイブとして第１バス３１に接続されている他の機能ブロック（グラフィックスプロセッサ３、ピクセルプロッタ５、サウンドプロセッサ７、ＤＭＡコントローラ９、第１バスアービタ１３、第２バスアービタ１４、等）を制御する場合は、これら機能ブロックの制御レジスタ等へのライトデータは、第１バスアービタ１３へ与えられ、調停後に、第１バス３１から、各機能ブロックに与えられ、一方、これら機能ブロックの制御レジスタ等からのリードデータは、調停後に、第１バス３１及び第１バスアービタ１３を介して、ＣＰＵ１に与えられる。但し、グラフィックスプロセッサ３、ピクセルプロッタ５、サウンドプロセッサ７、ＤＭＡコントローラ９は、第１バス３１のバスマスタとして、第１バスアービタ１３へバス使用要求を行う機能を備える。
【００８２】
バスマスタが、メインメモリ１７に対してアクセスする場合は、ライトデータは、第１バスアービタ１３に与えられ、調停後に、第１バス３１から、メインメモリ１７に与えられ、一方、リードデータは、調停後に、第１バス３１及び第１バスアービタ１３を介して、バスマスタに与えられる。また、バスマスタが、外部メモリ４５に対してアクセスする場合は、ライトデータは、第２バスアービタ１４に与えられ、調停後に、第２バス３３から、外部メモリインタフェース回路２３及び外部バス４３を介して、外部メモリ４５に与えられ、一方、リードデータは、調停後に、外部バス４３、外部メモリインタフェース回路２３、第２バス３３及び第２バスアービタ１４を介して、バスマスタに与えられる。
【００８３】
さて、次に、上記した互換表示モード、拡張表示モード、標準解像度モード、及び倍解像度モードについて詳しく説明していく。
【００８４】
後で詳細に述べるが、グラフィックスプロセッサ３は、表示モード制御情報ＣＨＲＭＯＤＥを格納する表示モード制御レジスタ１０１を内蔵している。表示モード制御情報ＣＨＲＭＯＤＥを、「０」に設定すると互換表示モードに入り、「１」に設定すると拡張表示モードに入る。
【００８５】
各スプライト及び各バックグラウンドスクリーンは、２ビットのフリップパラメータＦｓ［１：０］を持つ。フリップパラメータＦｓ［１：０］は、水平方向（左右）の反転表示、垂直方向（上下）の反転表示、水平及び垂直方向（左右上下）の反転表示、並びに非反転表示のいずれかを指示するパラメータである。
【００８６】
互換表示モードでは、フリップパラメータＦｓ［１：０］は、本来の目的通り、反転を示すパラメータとして機能する。しかし、拡張表示モードでは、フリップパラメータＦｓ［１：０］は、別の意味を持つ。この意味を説明する前に、後で詳述するピクセルバッファ７８Ｌ及び７８Ｒについて簡単に説明する（図６参照）。
【００８７】
ピクセルバッファ７８Ｌは、表示画面の１ラインを構成するピクセル数より少ない数のピクセルバッファ単位からなり、描画領域として用いられる。ピクセルバッファ単位は、１ピクセル分のデプス情報（４ビット）及びカラーコード（８ビット）を格納する。ピクセルバッファ７８Ｒは、ピクセルバッファ７８Ｌと同一構造である。
【００８８】
フリップパラメータＦｓ［１：０］の説明に戻って、拡張表示モードでは、フリップパラメータＦｓ［１］は、標準解像度モードと倍解像度モードとを切り替えるためのビットであり、フリップパラメータＦｓ［０］は、倍解像度モードにおいて、水平方向に並んだ２つのピクセルからなるピクセルセットの左側のピクセルあるいは右側のピクセルのいずれかを選択するためのビットである。
【００８９】
ここで、ピクセルセットは、一定順序で並んだ第０から第（Ｎ−１）までのＮ個のピクセルからなる。Ｎは、２以上の整数である。本実施の形態では、Ｎ＝２でピクセルを水平方向に並べている。従って、フリップパラメータＦｓ［０］は、倍解像度モードにおいて、表示画面の各ラインにおいて奇数番目または偶数番目のピクセルのいずれかを選択する為に利用される。水平方向に並んだピクセルセットにより１つのラインが構成され、垂直方向に並んだ複数のラインにより表示画面が構成される。
【００９０】
ピクセルセットの左側のピクセルを表示するためのデータ（デプス情報及びカラーコード）は、ピクセルバッファ７８Ｌに格納（描画）され、右側のピクセルを表示するためのデータ（デプス情報及びカラーコード）は、ピクセルバッファ７８Ｒに格納（描画）される。このことから、拡張表示モードでは、フリップパラメータＦｓ［０］は、ピクセルバッファ７８Ｌあるいは７８Ｒのいずれに描画を行うかを示すビットと言える。
【００９１】
ここで、１ピクセル分のデプス情報及びカラーコードをピクセルデータと呼ぶことにし、具体例を挙げて説明する。なお、上記したように、１スプライトは、１キャラクタからなる。一方、バックグラウンドスクリーンは、キャラクタの二次元配列からなる。以下、スプライトを構成するキャラクタ及びバックグラウンドスクリーンを構成するキャラクタを区別する必要のないときは、単に「キャラクタ」と呼ぶ。
【００９２】
表示モード制御情報ＣＨＲＭＯＤＥに「０」が設定され、互換表示モードでの表示を行う場合、全スプライト及び全バックグラウンドスクリーンについて、表示されるキャラクタのピクセルデータが、ピクセルセットの左側のピクセルに割り当てられ（つまり、ピクセルバッファ７８Ｌに書き込まれ）、同一のキャラクタの同一のピクセルデータが、同一のピクセルセットの右側のピクセルに割り当てられる（つまり、ピクセルバッファ７８Ｒに書き込まれる）。つまり、互換表示モードでは、同一のピクセルデータが、ピクセルバッファ７８Ｌ及び７８Ｒの双方の同じ位置に書き込まれる。
【００９３】
本実施の形態では、ピクセルセット単位で各キャラクタの表示画面上の座標（Ｘ，Ｙ）が設定されるので、ここで言う「同じ位置」とは、同一座標（Ｘ，Ｙ）に相当する位置を意味する。なお、この点は、拡張表示モードでも同じである。Ｘは水平座標、Ｙは垂直座標を示す。
【００９４】
図２（ａ）は、互換表示モードでのスプライトＳＰ１の表示例を示す図、図２（ｂ）は、互換表示モードでのスプライトＳＰ２の表示例を示す図である。図２（ａ）及び図２（ｂ）において、１つの正方形は、表示画面上の１ピクセルセットを示す。ビデオ信号ＶＤにおける１ピクセルセットを表示する際の時間は固定であるとする（例えば、８クロック／ピクセルセット）。また、スプライトＳＰ１及びＳＰ２の各々は、１６×１６画素（この「画素」は表示画面上のピクセルではなく、スプライトの構成要素としてのピクセルを意味）のキャラクタからなり、文字「Ａ」を表している。
【００９５】
図２（ａ）に示すように、互換表示モードでは、１ピクセルセットを構成する左右のピクセルに、同一のピクセルデータが割り当てられていることが分かる。つまり、互換表示モードでは、同一のピクセルデータが、ピクセルバッファ７８Ｌ及び７８Ｒの双方の同じ位置に書き込まれる。さらに、言い換えると、同一のキャラクタを隣り合わせに表示して、文字「Ａ」を表現している。これらの点は、図２（ｂ）のスプライトＳＰ２についても同様である。バックグラウンドスクリーンについてもスプライトと同様であり、互換表示モードでは、同一のピクセルデータが、ピクセルバッファ７８Ｌ及び７８Ｒの双方の同じ位置に書き込まれる。
【００９６】
さて、一方、表示モード制御情報ＣＨＲＭＯＤＥに「１」が設定され、拡張表示モードでの表示を行う場合、フリップパラメータＦｓ［１］が「０」に設定された（標準解像度モードが設定された）キャラクタについては、フリップパラメータＦｓ［０］の設定内容に関係なく、同一のピクセルデータが、ピクセルバッファ７８Ｌ及び７８Ｒの双方の同じ位置に書き込まれる。従って、このようなキャラクタについては、図２に示した互換表示モードと同様である。
【００９７】
しかし、表示モード制御情報ＣＨＲＭＯＤＥに「１」が設定され、拡張表示モードでの表示を行う場合でも、フリップパラメータＦｓ［１］が「１」に設定された（倍解像度モードが設定された）キャラクタについては、フリップパラメータＦｓ［０］に設定されている値に応じて、以下のように扱われる。
【００９８】
つまり、フリップパラメータＦｓ［０］に「０」が設定されている場合は、そのキャラクタのピクセルデータは、ピクセルバッファ７８Ｌに書き込まれ、フリップパラメータＦｓ［０］に「１」が設定されている場合は、そのキャラクタのピクセルデータは、ピクセルバッファ７８Ｒに書き込まれる。
【００９９】
図３（ａ）は、拡張表示モードにおいて、フリップパラメータＦｓ［１：０］＝０ｂ１０（倍解像度モード及びピクセルバッファ７８Ｌ描画）が設定されたスプライトＳＰ１の表示例を示す図、図３（ｂ）は、拡張表示モードにおいて、フリップパラメータＦｓ［１：０］＝０ｂ１１（倍解像度モード及びピクセルバッファ７８Ｒ描画）が設定されたスプライトＳＰ２の表示例を示す図である。
【０１００】
図３（ａ）及び図３（ｂ）において、１つの矩形は、表示画面上の１ピクセルを示す。また、ビデオ信号ＶＤにおける１ピクセルを表示する際の時間は固定であるとする（例えば、４クロック／ピクセル、つまり、８クロック／ピクセルセット）。また、スプライトＳＰ１及びＳＰ２の各々は、１６×１６画素（この「画素」は表示画面上のピクセルではなく、スプライトの構成要素としてのピクセルを意味）のキャラクタからなり、文字「Ａ」を表している。つまり、図３のスプライトＳＰ１及びＳＰ２のキャラクタのピクセルデータは、それぞれ、図２のスプライトＳＰ１及びスプライトＳＰ２のキャラクタのピクセルデータと同一である。
【０１０１】
図３（ａ）に示すように、拡張表示モードにおいて、スプライトＳＰ１のフリップパラメータＦｓ［１：０］＝０ｂ１０の場合、スプライトＳＰ１を構成するキャラクタの各ピクセルデータは、ピクセルバッファ７８Ｌに格納され、ピクセルセットの左側のピクセルとして表示される。一方、図３（ｂ）に示すように、拡張表示モードにおいて、スプライトＳＰ２のフリップパラメータＦｓ［１：０］＝０ｂ１１の場合、スプライトＳＰ２を構成するキャラクタの各ピクセルデータは、ピクセルバッファ７８Ｒに格納され、ピクセルセットの右側のピクセルとして表示される。
【０１０２】
第１のバックグラウンドスクリーン及び第２のバックグラウンドスクリーンも、それぞれ、フリップパラメータＦｓ［１：０］を持っており、スプライトと同様に扱われる。つまり、拡張表示モードの場合、第１のバックグラウンドスクリーン及び第２のバックグラウンドスクリーンのキャラクタのピクセルデータは、それぞれのフリップパラメータＦｓ［１：０］に応じて、ピクセルバッファ７８Ｌ及び７８Ｒに書き込まれる。
【０１０３】
さて、拡張表示モードにおいて、倍解像度モードが設定されたスプライトやバックグラウンドスクリーンの倍解像度表示を行う場合、グラフィックスプロセッサ３に内蔵される後述のビュードライバ８０は、表示のためにピクセルデータをピクセルバッファ７８Ｌ及び７８Ｒから読み出す。この際、ビュードライバ８０は、同一座標（Ｘ，Ｙ）に表示する、ピクセルバッファ７８Ｌからのピクセルデータとピクセルバッファ７８Ｒからのピクセルデータと、を同時に受け取り、ピクセルセットの左側のピクセルの出力タイミングで、ピクセルバッファ７８Ｌから受け取ったピクセルデータを、ピクセルセットの右側のピクセルの出力タイミングで、ピクセルバッファ７８Ｒから受け取ったピクセルデータを、後段に出力して倍解像度表示を行う。
【０１０４】
図４は、図３（ａ）のスプライトＳＰ１及び図３（ｂ）のスプライトＳＰ２を同一座標（Ｘ，Ｙ）に表示して倍解像度表示を行ったときの例示図である。図４に示すように、拡張表示モードにおいて、フリップパラメータＦｓ［１：０］＝０ｂ１０（倍解像度モード及びピクセルバッファ７８Ｌ描画）が設定されたスプライトＳＰ１のキャラクタのピクセルデータは、ピクセルセットの左側のピクセルに割り当てられ、フリップパラメータＦｓ［１：０］＝０ｂ１１（倍解像度モード及びピクセルバッファ７８Ｒ描画）が設定されたスプライトＳＰ２のキャラクタのピクセルデータは、ピクセルセットの右側のピクセルに割り当てられて、表示される。つまり、スプライトＳＰ１とスプライトＳＰ２とを同じ座標（Ｘ，Ｙ）に表示することにより、これらが合成されて表示される。その結果、図２（ａ）や図２（ｂ）に示した文字「Ａ」と比較して、解像度が２倍の表示（倍解像度表示）を実現できる。なお、上記のように、１ピクセルセットを表示する際の時間は、互換表示モードおよび拡張表示モードに関係なく固定である。
【０１０５】
さて、次に、図１のグラフィックスプロセッサ３の詳細を説明する。図５及び図６は、それぞれ、図１のグラフィックスプロセッサ３の内部構成の前段部分および後段部分を示すブロック図である。
【０１０６】
図５及び図６に示すように、グラフィックスプロセッサ３は、スプライトＤＭＡコントローラ５０、スプライトメモリ５２、スプライトジェネレータ５４、第１のバックグラウンドジェネレータ５６、第１のピクチャーパラメータミキサ５８、第２のバックグラウンドジェネレータ６０、第２のピクチャーパラメータミキサ６２、アドレスジェネレータ６４、ストリップジェネレータ６６、キャラクタフェッチャ６８、ピクセルジェネレータ７０、トランスペアレントコントローラ７２、ドロードライバ７４、ピクセルバッファコントローラ７６、ピクセルバッファ７８Ｌ、ピクセルバッファ７８Ｒ、ビュードライバ８０、カラーパレットコントローラ８２、キャラクタ用カラーパレット８４、ビットマップジェネレータ８６、ビットマップ用カラーパレット８８、ピクセルミキサ９０、カラーモジュレータ９２、ノイズジェネレータ９４、ウィンドウジェネレータ９６、ビデオエンコーダ９８、ビデオタイミングジェネレータ１００、ビデオポジションアジャスタ１０２、及びビデオファンクションジェネレータ１０４を含む。
【０１０７】
第１のバックグラウンドジェネレータ５６、第２のバックグラウンドジェネレータ６０、及びビデオファンクションジェネレータ１０４は、それぞれ、ＦＳＣレジスタ５７、ＦＳＣレジスタ６１、及び表示モード制御情報ＣＨＲＭＯＤＥを格納する表示モード制御レジスタ１０１を含む。
【０１０８】
スプライトメモリ５２は、２５６エントリ×５６ビットのローカルメモリであり、１つのエントリに１つのスプライトの各パラメータ（スプライトパラメータ、と呼ぶこともある。）が格納される。また、１つのエントリにおいて、各スプライトパラメータの格納位置は決まっている。
【０１０９】
図７は、図５のスプライトメモリ５２を構成する第０のエントリの構造を示す図である。図７に示すように、第０のエントリは、第１バス３１のアドレス空間にマッピングされる。図７を参照しながら、各スプライトパラメータについて説明する。
【０１１０】
各スプライトパラメータは、パレット情報Ｐ０［３：０］、１ピクセルのビット数Ｂ０［２：０］、デプス情報Ｚ０［３：０］、サイズ情報Ｓ０［１：０］、フリップ情報Ｆ０［１：０］、水平位置情報Ｘ０［８：０］、垂直位置情報Ｙ０［７：０］、及びアドレス情報Ａ０［２３：０］である。なお、ＸＨ０＝Ｘ０［８］、ＸＬ０＝Ｘ０［７：０］である。
【０１１１】
パレット情報Ｐ０は、パレットを指定する情報である。後述するが、本実施の形態では、キャラクタ用カラーパレット８４は、２５６色を格納するローカルメモリにより構成される。パレット情報Ｐ０は、カラーパレット８４のエントリを指し示す８ビットアドレスの上位４ビットに相当する。但し、選択されたカラーモードによっては、パレット情報Ｐ０の下位側からの１〜４ビットは、カラーコードの一部に置き換えられる。
【０１１２】
ビット数Ｂ０は、スプライトを構成するキャラクタの１ピクセルのビット数（ビット／ピクセル：カラーモード）である。
【０１１３】
デプス情報Ｚ０は、スプライトを構成するキャラクタの奥行きを示す情報である。デプス情報Ｚ０は、０Ｈ（最後面）〜ＦＨ（最前面）の範囲で指定できる。複数のピクセルが重なるときは、最も大きいデプス情報Ｚ０を持つピクセルが選択される。
【０１１４】
サイズ情報Ｓ０は、スプライトを構成するキャラクタのサイズを示す情報であり、キャラクタのサイズが、横８画素×縦８画素の場合、例えば、サイズ情報Ｓ０を「００」とする。
【０１１５】
フリップ情報Ｆ０は、スプライトを構成するキャラクタの反転情報であり、例えば、「００」が反転なし、「０１」が水平方向の反転、「１０」が垂直方向の反転、「１１」が水平及び垂直方向の反転、を示す。
【０１１６】
ただし、上記のように、フリップ情報Ｆ０は、互換表示モードでは、反転情報として機能するが、拡張表示モードでは、標準解像度モード／倍解像度モードの切替ビット、及び、倍解像度モードでの左右ピクセルの選択ビットとして機能する。
【０１１７】
水平位置情報Ｘ０は、キャラクタスクリーンの座標系におけるスプライトの水平座標であり、垂直位置情報Ｙ０は、キャラクタスクリーンの座標系におけるスプライトの垂直座標である。
【０１１８】
ここで、説明の便宜上、スプライトとバックグラウンドスクリーンとを合成して生成されたスクリーンを、キャラクタスクリーンと呼ぶ。
【０１１９】
アドレス情報Ａ０は、スプライトを構成するキャラクタのパターンデータ（キャラクタパターンデータ、と呼ぶこともある。）のメモリＭＥＭ上での格納位置を示す情報（先頭アドレス情報）である。キャラクタパターンデータは、キャラクタを構成する各ピクセルのカラーコードからなる。同様に、第１及び第２のバックグラウンドスクリーンを構成するキャラクタパターンデータは、キャラクタを構成する各ピクセルのカラーコードからなる。
【０１２０】
スプライトメモリ５２の第１〜第２５５のエントリの構造は、第０のエントリの構造と同じであり、説明を省略する。ただし、第１バス３１のアドレス空間へマッピングされるアドレスは異なる。
【０１２１】
図５に戻って、スプライトＤＭＡコントローラ５０は、メインメモリ１７上に配置された各スプライトパラメータをスプライトメモリ５２にＤＭＡ転送する。
【０１２２】
スプライトＤＭＡコントローラ５０は、データをリード／ライトするときは、アドレスＦＡ、及びリード／ライトコントロール信号ＦＷをスプライトメモリ５２に与える。これらの信号に従って、スプライトメモリ５２にライトデータＦＩが書き込まれ、あるいは、スプライトメモリ５２からリードデータＦＯが読み出される。
【０１２３】
スプライトＤＭＡコントローラ５０は、ＤＭＡ転送によるスプライトメモリ５２へのライトと、ＣＰＵ１からのスプライトメモリ５２へのアクセスと、スプライトジェネレータ５４からのスプライトメモリ５２のリードと、を調停し、スプライトメモリ５２へのアクセスを一元的に管理する。
【０１２４】
スプライトジェネレータ５４は、画像表示処理時では、アドレスＳＡを次々にインクリメントしていって、常にスプライトメモリ５２内の各エントリのデータを連続して読み出し、水平走査カウント信号ＨＰ及び垂直走査カウント信号ＶＰに従って、表示処理範囲内に位置する（ピクセルバッファ７８Ｌ及び７８Ｒに重なっている（重なりつつある））スプライトの各パラメータＢ０，Ｓ０，Ｆ０，Ｘ０，Ｙ０，Ｚ０，Ｐ０，Ａ０を第１のピクチャーパラメータミキサ５８に出力する。ここで、「スプライトがピクセルバッファ７８Ｌ及び７８Ｒに重なる」という意味は、ピクセルバッファ７８Ｌ及び７８Ｒが水平座標の或る範囲に関連付けられ、スプライトがこの範囲にオーバーラップするという意味である。
【０１２５】
ただし、スプライトジェネレータ５４から出力される垂直位置情報Ｙ０は、全ビットではなく下位５ビット、すなわちＹ０［４：０］となる。なお、アドレスＳＡは、スプライトＤＭＡコントローラ５０により、アドレスＦＡとして、スプライトメモリ５２に与えられる。
【０１２６】
また、スプライトジェネレータ５４は、ＣＰＵ１からアクセス可能なレジスタ（図示せず）を含み、このレジスタには、スプライトのアドレス情報の形式Ｔ０［２：０］が格納されている。アドレス情報の形式Ｔ０は、スプライトのキャラクタパターンデータのフェッチにおけるアドレッシングモードを示す情報である。スプライトジェネレータ５４は、上記各スプライトパラメータとともに、アドレス情報の形式Ｔ０も、第１のピクチャーパラメータミキサ５８に出力する。
【０１２７】
ここで、信号ＶＡＬＩＤと信号ＷＩＳＨという前段から後段へデータを伝送するときのハンドシェーク信号がある。信号ＶＡＬＩＤは、送り手から受け手へ伝達する制御信号で、送るデータが準備できるとデータと共にアクティブになる。信号ＷＩＳＨは逆に受け手から送り手へ伝達する制御信号であり、データが受け入れられる状態のときアクティブになる。両信号ＶＡＬＩＤ，ＷＩＳＨがアクティブの期間（１クロック）に１セットのデータが伝送される。
【０１２８】
第１のバックグラウンドジェネレータ５６には、第１バス３１を通じてＣＰＵ１からアクセス可能なレジスタ（ＦＳＣレジスタ５７のみ図示）が備えられており、それらのレジスタには、第１のバックグラウンドスクリーンの情報を記憶しているメインメモリ１７上の配列を指し示すポインタＬ１，Ｈ１，Ｕ１、並びに、第１のバックグラウンドスクリーンに適用される１ピクセルのビット数Ｂ１［２：０］、サイズ情報Ｓ１［１：０］、フリップ情報Ｆ１［１：０］、水平位置情報ＴＸ１［７：０］、垂直位置情報ＴＹ１［７：０］、デプス情報Ｚ１［３：０］、パレット情報Ｐ１［３：０］、アドレス情報の形式Ｔ１［２：０］、及びアトリビュートの所在Ｗ１が格納される。
【０１２９】
ポインタＬ１，Ｈ１，Ｕ１で指し示されるメインメモリ１７上の配列には、第１のバックグラウンドスクリーンに使用するキャラクタパターンデータのメモリＭＥＭ上での位置を示すアドレス情報Ａ１と、パレット情報Ｐ１及びデプス情報Ｚ１の２つのアトリビュート情報とが格納されている。このアドレス情報Ａ１は、アドレス情報の形式Ｔ１に従ったサイズ（１から３バイト）を持ち、このアトリビュート情報は、アトリビュートの所在Ｗ１で配列が指定されると有効になる。
【０１３０】
ここで、ビット数Ｂ１、サイズ情報Ｓ１、フリップ情報Ｆ１、デプス情報Ｚ１、パレット情報Ｐ１、及びアドレス情報の形式Ｔ１は、これらが、第１のバックグラウンドスクリーンを構成するキャラクタについてのものというだけで、上記のスプライトを構成するキャラクタについてのビット数Ｂ０、サイズ情報Ｓ０、フリップ情報Ｆ０、デプス情報Ｚ０、パレット情報Ｐ０、及びアドレス情報の形式Ｔ０と同様である。
【０１３１】
図８は、図５のＦＳＣレジスタ５７及び６１の構造を示す図である。図８に示すように、ＦＳＣレジスタ５７は、第１バス３１のアドレス空間にマッピングされ、フリップ情報Ｆ１、サイズ情報Ｓ１、及びビット数（カラーモード）Ｂ１が格納される。
【０１３２】
ただし、上記のように、フリップ情報Ｆ１は、互換表示モードでは、反転情報として機能するが、拡張表示モードでは、標準解像度モード／倍解像度モードの切替ビット、及び、倍解像度モードでの左右ピクセルの選択ビットとして機能する。
【０１３３】
図５に戻って、第１のバックグラウンドジェネレータ５６は、水平走査カウント信号ＨＰ及び垂直走査カウント信号ＶＰに従って、表示処理範囲内に位置する（ピクセルバッファ７８Ｌ及び７８Ｒに重なっている（重なりつつある））キャラクタの情報（つまり、配列の要素、さらに換言すると、キャラクタのアドレス情報Ａ１、デプス情報Ｚ１（Ｗ１に依存）及びパレット情報Ｐ１（Ｗ１に依存））を第１バス３１を通してメインメモリ１７から読み出して、第１のピクチャーパラメータミキサ５８へ出力するとともに、そのキャラクタの他の情報（ビット数Ｂ１、サイズ情報Ｓ１、フリップ情報Ｆ１、水平位置情報Ｘ１、垂直位置情報Ｙ１、デプス情報Ｚ１（Ｗ１に依存）、パレット情報Ｐ１（Ｗ１に依存）、及びアドレス情報の形式Ｔ１）も第１のピクチャーパラメータミキサ５８へ出力する。ただし、アトリビュートの所在Ｗ１は、後段では使用しないので送出しない。
【０１３４】
ここで、アトリビュートの所在Ｗ１が「０」の場合には、第１のバックグラウンドジェネレータ５６のレジスタに格納されているデプス情報Ｚ１及びパレット情報Ｐ１が出力され、Ｗ１が「１」の場合には、メインメモリ１７から読み出されたデプス情報Ｚ１及びパレット情報Ｐ１が出力される。また、水平位置情報Ｘ１及び垂直位置情報Ｙ１については、第１のバックグラウンドスクリーン全体の水平位置情報ＴＸ１及び垂直位置情報ＴＹ１から、各キャラクタの水平位置情報Ｘ１［８：０］及び垂直位置情報Ｙ１［４：０］が算出され、第１のピクチャーパラメータミキサ５８に出力される。
【０１３５】
加えて、第１のバックグラウンドジェネレータ５６は、第１のピクチャーパラメータミキサ５８へ信号ＶＡＬＩＤ及び緊急信号Ｅを出力し、また、第１のピクチャーパラメータミキサ５８から信号ＷＩＳＨが入力される。緊急信号Ｅは、後段にデータの受信を催促する信号であり、出力したデータが後段になかなか伝送されずにいるとき、アクティブにされる。
【０１３６】
具体的には、第１のバックグラウンドジェネレータ５６は、出力したデータの位置情報（水平位置情報Ｘ１及び垂直位置情報Ｙ１）と、水平走査カウント信号ＨＰ及び垂直走査カウント信号ＶＰにより示される位置情報と、の差が広がったことを検出して緊急信号Ｅをアクティブにする。
【０１３７】
第１のピクチャーパラメータミキサ５８は、スプライトジェネレータ５４が出力したスプライトを定義する信号Ｔ０，Ｂ０，Ｓ０，Ｆ０，Ｘ０，Ｙ０，Ｚ０，Ｐ０，Ａ０及び第１のバックグラウンドジェネレータ５６が出力した第１のバックグラウンドスクリーンを定義する信号Ｔ１，Ｂ１，Ｓ１，Ｆ１，Ｘ１，Ｙ１，Ｚ１，Ｐ１，Ａ１から、次の規則に従って、信号を選択／統合して、信号Ｔ２，Ｂ２，Ｓ２，Ｆ２，Ｘ２，Ｙ２，Ｚ２，Ｐ２，Ａ２として、第２のピクチャーパラメータミキサ６２に出力する。
【０１３８】
この場合、第１のピクチャーパラメータミキサ５８は、原則として、スプライトを定義する信号Ｔ０，Ｂ０，Ｓ０，Ｆ０，Ｘ０，Ｙ０，Ｚ０，Ｐ０，Ａ０を優先して選択する。ただし、第１のピクチャーパラメータミキサ５８は、緊急信号Ｅがアクティブのときは、第１のバックグラウンドスクリーンを定義する信号Ｔ１，Ｂ１，Ｓ１，Ｆ１，Ｘ１，Ｙ１，Ｚ１，Ｐ１，Ａ１を選択する。もちろん、緊急信号Ｅがアクティブでないときでも、スプライトを定義する信号Ｔ０，Ｂ０，Ｓ０，Ｆ０，Ｘ０，Ｙ０，Ｚ０，Ｐ０，Ａ０が入力されていない場合は、第１のバックグラウンドスクリーンを定義する信号Ｔ１，Ｂ１，Ｓ１，Ｆ１，Ｘ１，Ｙ１，Ｚ１，Ｐ１，Ａ１が選択される。
【０１３９】
また、第１のピクチャーパラメータミキサ５８は、信号ＶＡＬＩＤを、第２のピクチャーパラメータミキサ６２に与え、第２のピクチャーパラメータミキサ６２から、信号ＷＩＳＨが入力される。
【０１４０】
第２のバックグラウンドジェネレータ６０には、第１バス３１を通じてＣＰＵ１からアクセス可能なレジスタ（ＦＳＣレジスタ６１のみ図示）が備えられており、それらのレジスタには、第２のバックグラウンドスクリーンの情報を記憶しているメインメモリ１７上の配列を指し示すポインタＬ２，Ｈ２，Ｕ２、並びに、第２のバックグラウンドスクリーンに適用される１ピクセルのビット数Ｂ３［２：０］、サイズ情報Ｓ３［１：０］、フリップ情報Ｆ３［１：０］、水平位置情報ＴＸ３［７：０］、垂直位置情報ＴＹ３［７：０］、デプス情報Ｚ３［３：０］、パレット情報Ｐ３［３：０］、アドレス情報の形式Ｔ３［２：０］、及びアトリビュートの所在Ｗ３が格納される。
【０１４１】
ポインタＬ２，Ｈ２，Ｕ２で指し示されるメインメモリ１７上の配列には、第２のバックグラウンドスクリーンに使用するキャラクタパターンデータのメモリＭＥＭ上での位置を示すアドレス情報Ａ３と、パレット情報Ｐ３及びデプス情報Ｚ３の２つのアトリビュート情報とが格納されている。このアドレス情報Ａ３は、アドレス情報の形式Ｔ３に従ったサイズ（１から３バイト）を持ち、このアトリビュート情報は、アトリビュートの所在Ｗ３で配列が指定されると有効になる。
【０１４２】
ここで、ビット数Ｂ３、サイズ情報Ｓ３、フリップ情報Ｆ３、デプス情報Ｚ３、パレット情報Ｐ３、及びアドレス情報の形式Ｔ３は、これらが、第２のバックグラウンドスクリーンを構成するキャラクタについてのものというだけで、上記の第１のバックグラウンドスクリーンを構成するキャラクタについてのビット数Ｂ１、サイズ情報Ｓ１、フリップ情報Ｆ１、デプス情報Ｚ１、パレット情報Ｐ１、及びアドレス情報の形式Ｔ１と同様である。
【０１４３】
図８を参照して、ＦＳＣレジスタ６１は、第１バス３１のアドレス空間にマッピングされ、フリップ情報Ｆ３、サイズ情報Ｓ３、及びビット数（カラーモード）Ｂ３が格納される。
【０１４４】
ただし、上記のように、フリップ情報Ｆ３は、互換表示モードでは、反転情報として機能するが、拡張表示モードでは、標準解像度モード／倍解像度モードの切替ビット、及び、倍解像度モードでの左右ピクセルの選択ビットとして機能する。
【０１４５】
図５に戻って、第２のバックグラウンドジェネレータ６０は、水平走査カウント信号ＨＰ及び垂直走査カウント信号ＶＰに従って、表示処理範囲内に位置する（ピクセルバッファ７８Ｌ及び７８Ｒに重なっている（重なりつつある））キャラクタの情報（つまり、配列の要素、さらに換言すると、キャラクタのアドレス情報Ａ３、デプス情報Ｚ３（Ｗ３に依存）及びパレット情報Ｐ３（Ｗ３に依存））を第１バス３１を通してメインメモリ１７から読み出して、第２のピクチャーパラメータミキサ６２へ出力するとともに、そのキャラクタの他の情報（ビット数Ｂ３、サイズ情報Ｓ３、フリップ情報Ｆ３、水平位置情報Ｘ３、垂直位置情報Ｙ３、デプス情報Ｚ３（Ｗ３に依存）、パレット情報Ｐ３（Ｗ３に依存）、及びアドレス情報の形式Ｔ３）も第２のピクチャーパラメータミキサ６２へ出力する。ただし、アトリビュートの所在Ｗ３は、後段では使用しないので送出しない。
【０１４６】
ここで、アトリビュートの所在Ｗ３が「０」の場合には、第２のバックグラウンドジェネレータ６０のレジスタに格納されているデプス情報Ｚ３及びパレット情報Ｐ３が出力され、Ｗ３が「１」の場合には、メインメモリ１７から読み出されたデプス情報Ｚ３及びパレット情報Ｐ３が出力される。また、水平位置情報Ｘ３及び垂直位置情報Ｙ３については、第２のバックグラウンドスクリーン全体の水平位置情報ＴＸ３及び垂直位置情報ＴＹ３から、各キャラクタの水平位置情報Ｘ３［８：０］及び垂直位置情報Ｙ３［４：０］が算出され、第２のピクチャーパラメータミキサ６２に出力される
【０１４７】
加えて、第２のバックグラウンドジェネレータ６０は、第２のピクチャーパラメータミキサ６２へ信号ＶＡＬＩＤ及び緊急信号Ｅを出力し、また、第２のピクチャーパラメータミキサ６２から信号ＷＩＳＨが入力される。
【０１４８】
第２のピクチャーパラメータミキサ６２は、第１のピクチャーパラメータミキサ５８が出力したスプライト及び／又は第１のバックグラウンドスクリーンを定義する信号Ｔ２，Ｂ２，Ｓ２，Ｆ２，Ｘ２，Ｙ２，Ｚ２，Ｐ２，Ａ２及び第２のバックグラウンドジェネレータ６０が出力した第２のバックグラウンドスクリーンを定義する信号Ｔ３，Ｂ３，Ｓ３，Ｆ３，Ｘ３，Ｙ３，Ｚ３，Ｐ３，Ａ３から、次の規則に従って、信号を選択／統合して、信号Ｔｓ，Ｂｓ，Ｓｓ，Ｆｓ，Ｘｓ，Ｙｓ，Ｚｓ，Ｐｓ，Ａｓとして、アドレスジェネレータ６４に出力する。
【０１４９】
この場合、第２のピクチャーパラメータミキサ６２は、原則として、第１のピクチャーパラメータミキサ５８が出力した信号Ｔ２，Ｂ２，Ｓ２，Ｆ２，Ｘ２，Ｙ２，Ｚ２，Ｐ２，Ａ２を優先して選択する。ただし、第２のピクチャーパラメータミキサ６２は、緊急信号Ｅがアクティブのときは、第２のバックグラウンドスクリーンを定義する信号Ｔ３，Ｂ３，Ｓ３，Ｆ３，Ｘ３，Ｙ３，Ｚ３，Ｐ３，Ａ３を選択する。もちろん、緊急信号Ｅがアクティブでないときでも、第１のピクチャーパラメータミキサ５８から信号Ｔ２，Ｂ２，Ｓ２，Ｆ２，Ｘ２，Ｙ２，Ｚ２，Ｐ２，Ａ２が入力されていない場合は、第２のバックグラウンドスクリーンを定義する信号Ｔ３，Ｂ３，Ｓ３，Ｆ３，Ｘ３，Ｙ３，Ｚ３，Ｐ３，Ａ３が選択される。
【０１５０】
また、第２のピクチャーパラメータミキサ６２は、信号ＶＡＬＩＤを、アドレスジェネレータ６４に与え、アドレスジェネレータ６４から、信号ＷＩＳＨが入力される。
【０１５１】
アドレスジェネレータ６４は、第２のピクチャーパラメータミキサ６２からのアドレス情報の形式Ｔｓに従って、アドレス情報Ａｓを２７ビットの実アドレスＡｒに変換する回路である。アドレスジェネレータ６４には、ＣＰＵ１からアクセスできる１６×１６ビットのセグメントレジスタ（図示せず）があり、これにはアドレス情報Ａｓを変換する上で必要なベースアドレスやセグメントアドレスが格納されている。
【０１５２】
本実施の形態では、アドレス情報の形式Ｔｓにより示されるアドレッシングモードが、８種類用意される。即ち、８ビットキャラクタ番号モード、１６ビットキャラクタ番号モード、アラインメント付き１６ビットポインタモード、１６ビットアドレスポインタモード、２４ビットアドレスポインタモード、１６ビット拡張キャラクタ番号モード、１６ビット拡張アドレスポインタモード、及びアラインメント付き２４ビットポインタモードが用意される。
【０１５３】
８ビットキャラクタ番号モードは、キャラクタの選択を８ビットの番号Ａｓで行う。１６ビットキャラクタ番号モードは、キャラクタの選択を１６ビットの番号Ａｓで行う。これらのモードでは、セグメントレジスタの０番地に格納されたベースアドレス（２５６バイトアラインメント）を２７ビットにゼロ拡張したアドレスをベースに、第２のピクチャーパラメータミキサ６２からのビット数Ｂｓとサイズ情報Ｓｓとで示される１キャラクタの容量おきに配置された実アドレスＡｒが計算される。
【０１５４】
具体的には、実アドレスＡｒは、（ベースアドレス）＋（アドレス情報Ａｓが示すキャラクタの番号）×（ビット数Ｂｓが示す１ピクセルのビット数）×（サイズ情報Ｓｓが示す１キャラクタのピクセル数）／８、により算出される。なお、「８」で除算しているのは、実アドレスＡｒがバイトアドレスだからである。
【０１５５】
アラインメント付き１６ビットポインタモードは、キャラクタの選択を、１６ビットでアラインメント付きのポインタＡｓで行う。具体的には、アラインメント付き１６ビットポインタＡｓの上位３ビットで示されるセグメントレジスタに格納されたセグメントアドレス（２５６バイトアラインメント）を２７ビットにゼロ拡張したアドレスに、Ａｓの下位１３ビットのＬＳＢ側に３ビットの「０」を連接した１６ビットを加えて２７ビットの実アドレスＡｒとなる。
【０１５６】
１６ビットアドレスポインタモードは、キャラクタの選択を、１６ビットのポインタＡｓで行う。具体的には、１６ビットアドレスポインタＡｓの上位４ビットで示されるセグメントレジスタに格納されたセグメントアドレス（２５６バイトアラインメント）を２７ビットにゼロ拡張したアドレスに、Ａｓの下位１２ビットを加えて２７ビットの実アドレスＡｒとなる。
【０１５７】
２４ビットアドレスポインタモードは、キャラクタの選択を、２４ビットのポインタＡｓで行う。具体的には、２４ビットアドレスポインタＡｓの値を２７ビットにゼロ拡張したアドレスが２７ビットの実アドレスＡｒとなる。
【０１５８】
１６ビット拡張キャラクタ番号モードは、１６ビットキャラクタ番号モードを拡張したモードである。このモードでは、セグメントレジスタの０番地に格納された２７ビットのベースアドレス（２Ｋバイトアラインメント）をベースに、第２のピクチャーパラメータミキサ６２からのビット数Ｂｓとサイズ情報Ｓｓで示される１キャラクタの容量おきに配置された実アドレスＡｒが計算される。具体的な計算方法は、１６ビットキャラクタ番号モードと同様である。
【０１５９】
１６ビット拡張アドレスポインタモードは、１６ビットアドレスポインタモードを拡張したモードである。具体的には、１６ビットアドレスポインタＡｓの上位４ビットで示されるセグメントレジスタに格納された２７ビットのベースアドレス（２Ｋバイトアラインメント）と、Ａｓの下位１２ビットと、の和が実アドレスＡｒとなる。
【０１６０】
アラインメント付き２４ビットポインタモードは、２４ビットのポインタＡｓが、２７ビットの実アドレスＡｒの上位２４ビットとなり、下位３ビットは「０」で占められる（８バイトアラインメント）。
【０１６１】
以上のようにして、アドレスジェネレータ６４は、アドレス情報Ａｓを実アドレスＡｒ（以下、アドレス情報Ａｒと呼ぶ。）に変換し、他の信号Ｂｓ，Ｓｓ，Ｆｓ，Ｘｓ，Ｙｓ，Ｚｓ，Ｐｓとともに、ストリップジェネレータ６６に出力する。ただし、アドレス情報の形式Ｔｓは、後段で使われないので送出することはしない。
【０１６２】
また、アドレスジェネレータ６４は、信号ＶＡＬＩＤを、ストリップジェネレータ６６に与え、ストリップジェネレータ６６から、信号ＷＩＳＨが入力される。
【０１６３】
ストリップジェネレータ６６は、水平走査カウント信号ＨＰ及び垂直走査カウント信号ＶＰに従って、表示処理範囲内に位置する（ピクセルバッファ７８Ｌ及び７８Ｒに重なっている（重なりつつある））キャラクタを選択する。
【０１６４】
そして、ストリップジェネレータ６６は、選択したキャラクタ（二次元配列）から、今描画され表示されようとしている横一列の１次元配列（ストリップ、と呼ぶこともある。）を抽出する。例えば、キャラクタが、１６画素×１６画素であれば、横一列の１６画素がストリップである。
【０１６５】
以下、表示モード制御情報ＣＨＲＭＯＤＥの値が「０」であり、互換表示モードが設定されている場合と、表示モード制御情報ＣＨＲＭＯＤＥの値が「１」であり、拡張表示モードが設定されている場合と、に分けてより具体的に説明する。
【０１６６】
互換表示モードでは、ストリップジェネレータ６６は、垂直位置情報Ｙｓ、垂直方向の反転を示すフリップ情報Ｆｓ［１］、及び垂直走査カウント信号ＶＰに基づいて、抽出するストリップを特定する。このように、互換表示モードでは、フリップ情報Ｆｓ［１］が考慮されるので、Ｆｓ［１］＝１（つまり、垂直方向の反転）の場合は、入力されるキャラクタの垂直座標Ｙｓをキャラクタ内で垂直方向に反転（上下反転）した値に基づいて、ストリップの特定が行われる。
【０１６７】
そして、ストリップジェネレータ６６は、特定したストリップのアドレス情報（先頭アドレス）Ａｓｐを、キャラクタパターンデータのアドレス情報Ａｓ（先頭アドレス）、１ピクセルのビット数Ｂｓ、及びキャラクタのサイズ情報Ｓｓが示す横サイズを基に算出する。これがストリップの抽出である。ここでのストリップの抽出は、キャラクタパターンデータから、特定したストリップのカラーコードの抽出を意味するのではない。
【０１６８】
ストリップジェネレータ６６は、算出したアドレス情報Ａｓｐを、他の信号Ｂｓ，Ｓｓ，Ｆｓ［１：０］，Ｘｓ，Ｚｓ，Ｐｓとともに、キャラクタフェッチャ６８に出力する。ただし、垂直位置情報Ｙｓは、後段で使われないので送出することはしない。
【０１６９】
また、ストリップジェネレータ６６は、信号ＶＡＬＩＤを、キャラクタフェッチャ６８に与え、キャラクタフェッチャ６８から、信号ＷＩＳＨが入力される。
【０１７０】
一方、拡張表示モードでは、フリップ情報Ｆｓ［１］を無視して（考慮せずに）、ストリップを特定する。なぜなら、この場合、フリップ情報Ｆｓ［１］は、標準解像度モード及び倍解像度モードの切替ビットとして機能するからである。その他の点は、互換表示モードの場合と同様である。
【０１７１】
キャラクタフェッチャ６８は、アドレス情報Ａｓｐとして伝送されてきたキャラクタをカラーコードに変換する。具体的には、キャラクタフェッチャ６８は、アドレス情報Ａｓｐで指し示されるメモリＭＥＭ上の位置から、１ピクセルのビット数Ｂｓとサイズ情報Ｓｓが示す横サイズとで表される容量分のデータＤ（つまり、ストリップを構成する各ピクセルのカラーコード）をバイト単位で読み出し、バイト単位、リトルエンディアンの順序で順次ピクセルジェネレータ７０へ出力する。以下では、データＤを、ストリップパターンデータＤと呼ぶ。
【０１７２】
キャラクタフェッチャ６８は、ストリップパターンデータＤだけでなく、他の信号Ｂｓ，Ｓｓ，Ｆｓ［１：０］，Ｘｓ，Ｚｓ，Ｐｓも、ピクセルジェネレータ７０に出力する。また、キャラクタフェッチャ６８は、信号ＶＡＬＩＤを、ピクセルジェネレータ７０に与え、ピクセルジェネレータ７０から、信号ＷＩＳＨが入力される。
【０１７３】
ピクセルジェネレータ７０は、順番に入力されるバイトデータ（ストリップパターンＤの一部あるいは全部）をリトルエンディアンに並べ、その下位からＢｓが示す１ピクセルのビット数（Ｍビット／ピクセル：Ｍ＝１〜８）分のデータ（１ピクセルのカラーコード）を取り出す。そして、ピクセルジェネレータ７０は、取り出した１ピクセルのカラーコードを、パレット情報Ｐｓと合成して、８ビットのカラーコードＣを生成する。この場合の合成の方法は次の通りである。まず、８ビットの上位４ビットをパレット情報Ｐｓで埋め、次にビット数Ｍ分の下位を、取り出した１ピクセルのカラーコードで埋める。残ったビットは「０」で埋めるようにする。ビット数Ｍが５ビット以上のときは、取り出した１ピクセルのカラーコードにより、パレット情報Ｐｓが下位から侵食される。
【０１７４】
以上のようにして、ピクセルジェネレータ７０は、バイト単位で与えられるストリップパターンデータＤを基に、ピクセル単位のカラーコードＣ（以下、ピクセルカラーコードＣと呼ぶ。）を生成する。
【０１７５】
また、ピクセルジェネレータ７０は、キャラクタの水平位置情報Ｘｓに基づいて、ピクセルごとの水平位置情報Ｘｐを算出する。
【０１７６】
この場合、互換表示モードでは、フリップ情報Ｆｓ［０］が考慮され、Ｆｓ［０］＝１の場合は、水平方向の反転を示しているので、サイズ情報Ｓｓが示す水平サイズ分進んだところから逆に減少するように計算を行って、水平位置情報Ｘｐを求める。つまり、キャラクタが、水平方向に反転表示（左右反転表示）されるように、水平位置情報Ｘｐを求める。
【０１７７】
一方、拡張表示モードでは、フリップ情報Ｆｓ［０］を無視して（考慮せずに）、水平位置情報Ｘｐを求める。なぜなら、拡張表示モードでは、フリップ情報Ｆｓ［０］は、倍解像度モードでの左右ピクセルの選択ビットとして機能するからである。
【０１７８】
ピクセルジェネレータ７０は、以上のようにして求めたピクセルカラーコードＣ及び水平位置情報Ｘｐを、デプス情報Ｚｓ及びフリップ情報Ｆｓ［１：０］とともに、トランスペアレントコントローラ７２に出力する。この場合、フリップ情報Ｆｓ［１］を、切替ビットＣｍｂとして出力し、フリップ情報Ｆｓ［０］を、選択ビットＯｆｓとして出力する。ただし、ビット数Ｂｓ、サイズ情報Ｓｓ、及びパレット情報Ｐｓは、後段で使われないので送出はしない。また、ピクセルジェネレータ７０は、信号ＶＡＬＩＤを、トランスペアレントコントローラ７２に与え、トランスペアレントコントローラ７２から、信号ＷＩＳＨが入力される。
【０１７９】
トランスペアレントコントローラ７２は、ＣＰＵ１から間接的にアクセスできる１６エントリ×５ビットの透明制御メモリ（図示せず）を備える。後述のキャラクタ用カラーパレット８４は、２５６エントリ×１６ビットのローカルメモリにより構成され、これを１６エントリごとの１６ブロックとみなすと、各ブロックに最大１つの透明色を設定できる。透明制御メモリの各エントリは、キャラクタ用カラーパレット８４の各ブロックに対応している。ＣＰＵ１が、キャラクタ用カラーパレット８４のあるエントリに色データを書き込んだとき、その色が透明色であれば、そのエントリを含むブロックに対応する透明制御メモリのエントリは、ブロック内のどのエントリが透明色かを４ビットで記憶するとともに、残りの１ビット（以下、透明有効ビット、と呼ぶ。）に「１」をセットする。ここで、透明色に設定されているキャラクタ用カラーパレット８４のエントリに非透明の色データを書き込むと、透明有効ビットの値は「０」にクリアされ、そのエントリは透明色でなくなる。
【０１８０】
トランスペアレントコントローラ７２は、ピクセルジェネレータ７０から入力されたピクセルカラーコードＣの上位４ビット（つまり、パレット情報Ｐｓ）で透明制御メモリをアクセスし、アクセスしたエントリの透明有効ビットが「１」であって、かつ、アクセスしたエントリの残り４ビットとピクセルカラーコードＣの下位４ビットとが一致していれば、そのピクセルを透明と判断する。
【０１８１】
トランスペアレントコントローラ７２は、非透明と判断したピクセルの情報（水平位置情報Ｘｐ、デプス情報Ｚｓ、ピクセルカラーコードＣ、切替ビットＣｍｂ、及び選択ビットＯｆｓ）は、ドロードライバ７４へ出力し、透明と判断したピクセルの情報は、出力せず、ここで捨てる。また、トランスペアレントコントローラ７２は、信号ＶＡＬＩＤを、ドロードライバ７４に与え、ドロードライバ７４から、信号ＷＩＳＨが入力される。
【０１８２】
ドロードライバ７４は、水平位置情報Ｘｐと水平走査カウント信号ＨＰとから、その水平位置情報Ｘｐで表示位置が示されるピクセルがピクセルバッファ７８Ｌ及び７８Ｒと重なっているか否かを判断し、重なっている場合は、ピクセルバッファコントローラ７６に対して、そのピクセルのデプス情報Ｚｓ及びピクセルカラーコードＣを、ピクセルバッファ７８Ｌ及び／又は７８Ｒへ書き込むことを要求（つまり、描画要求）する。要求してから受諾されるまでに、水平走査カウント信号ＨＰが１ステップ進む可能性があるので、ドロードライバ７４は、１ピクセル少ないピクセルバッファ７８Ｌ及び７８Ｒの領域で重なりを判定する。
【０１８３】
より具体的には、ドロードライバ７４は、ピクセルがピクセルバッファ７８Ｌ及び７８Ｒと重なっていると判断したときは、レジスタ１０１から入力される表示モード制御情報ＣＨＲＭＯＤＥが「１」（つまり、拡張表示モード）、かつ、切替ビットＣｍｂが「１」（つまり、倍解像度モード）の場合、選択ビットＯｆｓが「０」を示していれば、ピクセルバッファ７８Ｌへのピクセルデータの書き込みを要求するために信号ＲＥＱ０をアサートし、選択ビットＯｆｓが「１」を示していれば、ピクセルバッファ７８Ｒへのピクセルデータの書き込みを要求するために信号ＲＥＱ１をアサートする。
【０１８４】
そして、ピクセルバッファコントローラ７６から、信号ＷＩＳＨが入力されたときに、水平位置情報Ｘｐ、デプス情報Ｚｓ、及びピクセルカラーコードＣを、ピクセルバッファコントローラ７６に出力する。
【０１８５】
一方、表示モード制御情報ＣＨＲＭＯＤＥ及び切替ビットＣｍｂの少なくとも一方が「０」の場合、つまり、互換表示モードの場合か、拡張表示モードであっても標準解像度モードの場合は、ピクセルバッファ７８Ｌ及び７８Ｒの双方の同一位置に同一ピクセルデータの書き込みを要求するために、信号ＲＥＱ０及びＲＥＱ１の双方をアサートする。
【０１８６】
そして、ピクセルバッファコントローラ７６から、信号ＷＩＳＨが入力されたときに、水平位置情報Ｘｐ、デプス情報Ｚｓ、及びピクセルカラーコードＣを、ピクセルバッファコントローラ７６に出力する。
【０１８７】
ピクセルバッファコントローラ７６は、ドロードライバ７４からのピクセルバッファ７８Ｌ及び／又は７８Ｒへの書き込み（描画）要求と、ビュードライバ８０からの読み出し要求と、を調停する。この場合、ビュードライバ８０からの読み出し要求が優先される。ピクセルバッファコントローラ７６は、調停の結果、許可した要求に応じた処理を実行する。この場合、ピクセルバッファコントローラ７６は、ピクセルバッファ７８Ｌ，７８Ｒにアクセスして、リードアドレスＢＲＡが指し示す位置からリードデータＢＯ０，ＢＯ１を読み出し、あるいは、ライトアドレスＢＷＡが指し示す位置にライトデータＢＩ０，ＢＩ１を書き込む。要求（書き込み／読み出し）ごとの処理の詳細は次の通りである。
【０１８８】
ピクセルバッファコントローラ７６は、信号ＲＥＱ０のみがアサートされ、ドロードライバ７４からのその書き込み要求を許可したときは、ピクセルバッファ７８Ｌから読み出したリードデータＢＯ０（デプス情報Ｚｐｂ０及びピクセルカラーコードＣｐｂ０）に含まれるデプス情報Ｚｐｂ０とドロードライバ７４から入力されたデプス情報Ｚｓとを比較する。
【０１８９】
そして、ピクセルバッファコントローラ７６は、比較結果に応じて、ピクセルバッファ７８Ｌに書き込むデータＢＩ０を、読み出したリードデータＢＯ０（デプス情報Ｚｐｂ０及びピクセルカラーコードＣｐｂ０）にするか入力されたデータ（デプス情報Ｚｓ及びピクセルカラーコードＣ）にするかを決める。この場合、デプス情報が大きい方が、ライトデータＢＩ０として、ピクセルバッファ７８Ｌに書き込まれる。なお、ピクセルバッファ７８Ｌに与えるリードアドレスＢＲＡ及びライトアドレスＢＷＡは、水平位置情報Ｘｐに基づいて生成される。
【０１９０】
信号ＲＥＱ１のみがアサートされ、ドロードライバ７４からのその書き込み要求を許可したときは、対象がピクセルバッファ７８Ｌではなく、ピクセルバッファ７８Ｒになるだけであり、同様の処理が行われる。また、信号ＲＥＱ１及びＲＥＱ１の双方がアサートされ、ドロードライバ７４からのその書き込み要求を許可したときは、対象がピクセルバッファ７８Ｌ及び７８Ｒの双方になるだけであり、同様の処理が行われる。
【０１９１】
一方、ピクセルバッファコントローラ７６は、信号ＲＥＱがアサートされ、ビュードライバ８０からの読み出し要求を許可したときは、ピクセルバッファ７８Ｌから読み出したリードデータＢＯ０（デプス情報Ｚｐｂ０及びピクセルカラーコードＣｐｂ０）並びにピクセルバッファ７８Ｒから読み出したリードデータＢＯ１（デプス情報Ｚｐｂ１及びピクセルカラーコードＣｐｂ１）をビュードライバ８０に出力する。
【０１９２】
なお、ビュードライバ８０へのリードデータＢＯ０及びＢＯ１の出力後に、ピクセルバッファ７８Ｌ及び７８Ｒの該当位置をクリアするために書き込むデータは０固定（最も奥の位置を示すデプス情報および０を示すカラーコードに対応）である。また、ピクセルバッファ７８Ｌ及び７８Ｒに与えるリードアドレスＢＲＡ及びライトアドレスＢＷＡは、ビュードライバ８０から入力されるアドレス情報Ｘａである。
【０１９３】
ピクセルバッファ７８Ｌは、デプスバッファ及びコードバッファからなり（図示せず）、それぞれ、１２８ピクセル×４ビット及び１２８ピクセル×８ビットである。ピクセルバッファ７８Ｌの１ピクセル分をピクセルバッファ単位（デプス情報Ｚｐｂ０を格納する４ビット及びピクセルカラーコードＣｐｂ０を格納する８ビットの計１２ビット）と呼ぶ。
【０１９４】
ピクセルバッファ７８Ｌは、走査位置（つまり、ビュードライバ８０による読み出し位置）のピクセルバッファ単位を末尾とし、その走査位置からピクセルバッファ７８Ｌの容量分先のピクセルバッファ単位が先頭となるように、デプス情報Ｚｐｂ０及びピクセルカラーコードＣｐｂ０をピクセル単位で順次的に格納する。走査位置が移動したときは、末尾のピクセルバッファ単位が先頭の格納位置になるように、ピクセルバッファ単位を巡回させる。
【０１９５】
ピクセルバッファ７８Ｒの構造及び動作は、ピクセルバッファ７８Ｌと同じであり、説明を省略する。
【０１９６】
ビュードライバ８０は、水平走査カウント信号ＨＰに基づいて、ピクセルバッファコントローラ７６に対して、ピクセルバッファ７８Ｌ及び７８Ｒからのデータの読み出しを要求する。この読み出し要求は、水平走査カウント信号ＨＰに基づいて生成したアドレス情報Ｘａと信号ＲＥＱとを、ピクセルバッファコントローラ７６に出力することにより行われる。ビュードライバ８０からの読み出し要求は、ピクセルバッファコントローラ７６により優先的に扱われるので、読み出し要求を待機させる信号は無い。
【０１９７】
そして、ビュードライバ８０は、読み出したデプス情報Ｚｐｂ０及びＺｐｂ１をデプス情報Ｚｐｂとして、読み出したピクセルカラーコードＣｐｂ０及びＣｐｂ１をピクセルカラーコードＣｐｂとして、カラーパレットコントローラ８２に出力する。つまり、ビュードライバ８０は、読み出したデプス情報Ｚｐｂ０及びピクセルカラーコードＣｐｂ０を、ピクセルセットの左側のピクセルのデータとして、読み出したデプス情報Ｚｐｂ１及びピクセルカラーコードＣｐｂ１を、ピクセルセットの右側のピクセルのデータとして、後段に出力する。
【０１９８】
さて、次に、ピクセルバッファコントローラ７６の動作について、タイミングチャートを用いて説明する。図９は、図６のピクセルバッファコントローラ７６の動作を説明するためのタイムチャートである。なお、正論理を採用する。また、拡張表示モードでの動作である。
【０１９９】
まず、ピクセルバッファ７８Ｌ及び７８Ｒへの書き込み処理を説明する。図９を参照して、ピクセルバッファコントローラ７６は、信号ＲＥＱがネゲートされ、かつ、信号ＲＥＱ０がアサートされると、ピクセルバッファ７８Ｌに対するピクセルデータの比較・書き込み処理を開始する。この場合、信号ＲＥＱ＝０が条件とされているのは、画像表示のためのピクセルバッファ７８Ｌ及び７８Ｒからの読み出しが、書き込みに対して優先されるためである。
【０２００】
ここで、信号ＲＥＱがネゲートされ、かつ、信号ＲＥＱ０がアサートされるサイクルを、比較・書き込み処理開始サイクルと呼ぶ。
【０２０１】
ピクセルバッファコントローラ７６は、比較・書き込み処理開始サイクルの次のサイクルで、ピクセルバッファ７８ＬのリードアドレスＢＲＡ［６：０］（比較・書き込み処理開始サイクルの水平座標Ｘｐと同一）からの読み出しを行う。このとき読み出されたデータＢＯ０［１１：０］のビット［１１：８］は、既にピクセルバッファ７８Ｌに書き込まれているピクセルのデプス値である。
【０２０２】
ピクセルバッファコントローラ７６は、このデプス値ＢＯ０［１１：８］と、書き込み対象のピクセルのデプス値Ｚｓ［３：０］（比較・書き込み処理開始サイクルのデプス値Ｚｓ）と、を比較して、Ｚｓ≧ＢＯ０［１１：８］であれば、データＢＯ０［１１：０］を読み出したサイクルの次のサイクルで、比較・書き込み処理開始サイクルのピクセルデータ｛Ｚｓ［３：０］，Ｃ［７：０］｝をライトデータＢＩ０［１１：０］として、ピクセルバッファ７８ＬのライトアドレスＢＷＡ［６：０］（＝データＢＯ０［１１：０］を読み出したサイクルのリードアドレスＢＡ［６：０］）に書き込む。
【０２０３】
一方、比較の結果、Ｚｓ＜ＢＯ０［１１：８］であれば、ピクセルバッファコントローラ７６は、読み出されたデータＢＯ０［１１：０］を、データＢＯ０［１１：０］を読み出したサイクルの次のサイクルで、そのままライトデータＢＩ０［１１：０］として、ピクセルバッファ７８ＬのライトアドレスＢＷＡ［６：０］（＝データＢＯ０［１１：０］を読み出したサイクルのリードアドレスＢＡ［６：０］）に書き込む。つまり、この場合は、ピクセルバッファ７８Ｌのデータは変化しない。
【０２０４】
ピクセルバッファコントローラ７６は、ピクセルバッファ７８Ｒに対しても、同様の比較・書き込み処理を行う。
【０２０５】
図９を参照して、上記のことをより具体的に説明する。サイクルＴ３にて、ピクセルバッファコントローラ７６は、信号ＲＥＱがネゲートされ、かつ、信号ＲＥＱ０がアサートされると、ピクセルバッファ７８Ｌに対するピクセルデータの比較・書き込み処理を開始する。
【０２０６】
ピクセルバッファコントローラ７６は、比較・書き込み処理開始サイクルＴ３の次のサイクルＴ４で、ピクセルバッファ７８ＬのリードアドレスＢＲＡ＝１５Ｈ（比較・書き込み処理開始サイクルＴ３の水平座標Ｘｐと同一）からの読み出しを行う。このとき読み出されたデータＢＯ０［１１：０］＝２３５Ｈのビット［１１：８］＝２Ｈは、既にピクセルバッファ７８Ｌに書き込まれているピクセルのデプス値である。
【０２０７】
ピクセルバッファコントローラ７６は、このデプス値ＢＯ０［１１：８］＝２Ｈと、書き込み対象のピクセルのデプス値Ｚｓ［３：０］＝５Ｈ（比較・書き込み処理開始サイクルＴ３のデプス値Ｚｓ）と、を比較する。ピクセルバッファコントローラ７６は、Ｚｓ≧ＢＯ０［１１：８］であるので、データＢＯ０［１１：０］を読み出したサイクルＴ４の次のサイクルＴ５で、比較・書き込み処理開始サイクルＴ３のピクセルデータ｛Ｚｓ［３：０］，Ｃ［７：０］｝＝｛５Ｈ，０５Ｈ｝をライトデータＢＩ０［１１：０］＝５０５Ｈとして、ピクセルバッファ７８ＬのライトアドレスＢＷＡ［６：０］＝１５Ｈ（＝データＢＯ０［１１：０］を読み出したサイクルＴ４のリードアドレスＢＲＡ［６：０］）に書き込む。
【０２０８】
一方、サイクルＴ３にて、ピクセルバッファコントローラ７６は、信号ＲＥＱがネゲートされ、かつ、信号ＲＥＱ１がアサートされると、ピクセルバッファ７８Ｒに対するピクセルデータの比較・書き込み処理を開始する。
【０２０９】
ピクセルバッファコントローラ７６は、比較・書き込み処理開始サイクルＴ３の次のサイクルＴ４で、ピクセルバッファ７８ＲのリードアドレスＢＲＡ＝１５Ｈ（比較・書き込み処理開始サイクルＴ３の水平座標Ｘｐと同一）からの読み出しを行う。このとき読み出されたデータＢＯ１［１１：０］＝２３６Ｈのビット［１１：８］＝２Ｈは、既にピクセルバッファ７８Ｒに書き込まれているピクセルのデプス値である。
【０２１０】
ピクセルバッファコントローラ７６は、このデプス値ＢＯ１［１１：８］＝２Ｈと、書き込み対象のピクセルのデプス値Ｚｓ［３：０］＝５Ｈ（比較・書き込み処理開始サイクルＴ３のデプス値Ｚｓ）と、を比較する。ピクセルバッファコントローラ７６は、Ｚｓ≧ＢＯ１［１１：８］であるので、データＢＯ１［１１：０］を読み出したサイクルＴ４の次のサイクルＴ５で、比較・書き込み処理開始サイクルＴ３のピクセルデータ｛Ｚｓ［３：０］，Ｃ［７：０］｝＝｛５Ｈ，０５Ｈ｝をライトデータＢＩ１［１１：０］＝５０５Ｈとして、ピクセルバッファ７８ＲのライトアドレスＢＷＡ［６：０］＝１５Ｈ（＝データＢＯ１［１１：０］を読み出したサイクルＴ４のリードアドレスＢＲＡ［６：０］）に書き込む。
【０２１１】
サイクルＴ６にて、ピクセルバッファコントローラ７６は、信号ＲＥＱがネゲートされ、かつ、信号ＲＥＱ０がアサートされると、ピクセルバッファ７８Ｌに対するピクセルデータの比較・書き込み処理を開始する。
【０２１２】
ピクセルバッファコントローラ７６は、比較・書き込み処理開始サイクルＴ６の次のサイクルＴ７で、ピクセルバッファ７８ＬのリードアドレスＢＲＡ＝１７Ｈ（比較・書き込み処理開始サイクルＴ６の水平座標Ｘｐと同一）からの読み出しを行う。このとき読み出されたデータＢＯ０［１１：０］＝Ｄ１０Ｈのビット［１１：８］＝ＤＨは、既にピクセルバッファ７８Ｌに書き込まれているピクセルのデプス値である。
【０２１３】
ピクセルバッファコントローラ７６は、このデプス値ＢＯ０［１１：８］＝ＤＨと、書き込み対象のピクセルのデプス値Ｚｓ［３：０］＝５Ｈ（比較・書き込み処理開始サイクルＴ６のデプス値Ｚｓ）と、を比較する。Ｚｓ＜ＢＯ０［１１：８］であるので、ピクセルバッファコントローラ７６は、読み出されたデータＢＯ０［１１：０］＝Ｄ１０Ｈを、読み出した次のサイクルＴ８で、そのままライトデータＢＩ０［１１：０］として、ピクセルバッファ７８ＬのライトアドレスＢＷＡ［６：０］＝１７Ｈ（＝データＢＯ０［１１：０］を読み出したサイクルＴ７のリードアドレスＢＲＡ［６：０］）に書き込む。
【０２１４】
一方、サイクルＴ６にて、ピクセルバッファコントローラ７６は、信号ＲＥＱがネゲートされ、かつ、信号ＲＥＱ１がアサートされると、ピクセルバッファ７８Ｒに対するピクセルデータの比較・書き込み処理を開始する。
【０２１５】
ピクセルバッファコントローラ７６は、比較・書き込み処理開始サイクルＴ６の次のサイクルＴ７で、ピクセルバッファ７８ＲのリードアドレスＢＲＡ＝１７Ｈ（比較・書き込み処理開始サイクルＴ６の水平座標Ｘｐと同一）からの読み出しを行う。このとき読み出されたデータＢＯ１［１１：０］＝Ｄ１１Ｈのビット［１１：８］＝ＤＨは、既にピクセルバッファ７８Ｒに書き込まれているピクセルのデプス値である。
【０２１６】
ピクセルバッファコントローラ７６は、このデプス値ＢＯ１［１１：８］＝ＤＨと、書き込み対象のピクセルのデプス値Ｚｓ［３：０］＝５Ｈ（比較・書き込み処理開始サイクルＴ６のデプス値Ｚｓ）と、を比較する。Ｚｓ＜ＢＯ１［１１：８］であるので、ピクセルバッファコントローラ７６は、読み出されたデータＢＯ１［１１：０］＝Ｄ１１Ｈを、読み出した次のサイクルＴ８で、そのままライトデータＢＩ１［１１：０］として、ピクセルバッファ７８ＲのライトアドレスＢＷＡ［６：０］＝１７Ｈ（＝データＢＯ１［１１：０］を読み出したサイクルＴ７のリードアドレスＢＲＡ［６：０］）に書き込む。
【０２１７】
以降、上記のような比較・書き込み処理が繰り返される。
【０２１８】
ところで、サイクルＴ０〜Ｔ８においては、信号ＲＥＱ０と信号ＲＥＱ１とは、同じタイミングでアサートされている。これは、表示モード制御情報ＣＨＲＭＯＤＥ＝１（つまり、拡張表示モード）の場合、切替ビットＣｍｂ＝０（標準解像度モード）のピクセルがドロードライバ７４に入力されると、信号ＲＥＱ０及び信号ＲＥＱ１の双方がアサートされるからである。
【０２１９】
一方、サイクルＴ１２〜Ｔ１６では、信号ＲＥＱ０のみがアサートされている。これは、表示モード制御情報ＣＨＲＭＯＤＥ＝１（つまり、拡張表示モード）の場合、切替ビットＣｍｂ＝１（倍解像度モード）のピクセルがドロードライバ７４に入力されると、選択ビットＯｆｓの値にしたがって、信号ＲＥＱ０あるいは信号ＲＥＱ１のいずれか一方がアサートされるためである。
【０２２０】
次に、ピクセルバッファ７８Ｌ及び７８Ｒからの読み出し処理を説明する。図９を参照して、信号ＲＥＱがアサートされると、画像表示のためのピクセルデータの読み出し処理が開始される。読み出しは、常にピクセルバッファ７８Ｌ及びピクセルバッファ７８Ｒの双方から行われる。ここで、信号ＲＥＱがアサートされたサイクルを読み出し処理開始サイクルと呼ぶ。
【０２２１】
ピクセルバッファコントローラ７６は、読み出し開始サイクルの次のサイクルで、ピクセルバッファ７８Ｌ及び７８ＲのリードアドレスＢＲＡ［６：０］（読み出し処理開始サイクルの水平座標Ｘａと同一）から、データＢＯ０［１１：０］及びＢＯ１［１１：０］を読み出す。
【０２２２】
そして、ピクセルバッファコントローラ７６は、読み出したデータＢＯ０［１１：０］及びＢＯ１［１１：０］を、読み出しのサイクルの次のサイクルで、データＢＯ０［１１：８］をデプス値Ｚｐｂ０［３：０］として、データＢＯ０［７：０］をピクセルカラーコードＣｐｂ０［７：０］として、データＢＯ１［１１：８］をデプス値Ｚｐｂ１［３：０］として、データＢＯ１［７：０］をピクセルカラーコードＣｐｂ１［７：０］として、ビュードライバ８０に出力する。
【０２２３】
読み出し処理開始サイクルの次のサイクルにおいて、ピクセルバッファ７８Ｌ及び７８ＲのリードアドレスＢＲＡ［６：０］から、画像表示のために読み出されたデータは、さらにその次のサイクルで、ピクセルバッファ７８Ｌ及び７８ＲのライトアドレスＢＷＡ（＝データＢＯ０及びＢＯ１を読み出したサイクルのリードアドレスＢＲＡ）に、ライトデータＢＩ０＝ＢＩ１＝０００Ｈを書き込むことで初期化される。
【０２２４】
図９を参照して、上記のことをより具体的に説明する。サイクルＴ２にて、信号ＲＥＱがアサートされると、画像表示のためのピクセルデータの読み出し処理が開始される。読み出し処理は、常にピクセルバッファ７８Ｌ及びピクセルバッファ７８Ｒの双方から行われる。
【０２２５】
ピクセルバッファコントローラ７６は、読み出し開始サイクルＴ２の次のサイクルＴ３で、ピクセルバッファ７８Ｌ及び７８ＲのリードアドレスＢＲＡ［６：０］（読み出し処理開始サイクルＴ２の水平座標Ｘａと同一）＝０５Ｈから、データＢＯ０［１１：０］＝４７５Ｈ及びＢＯ１［１１：０］＝４７５Ｈを読み出す。
【０２２６】
ピクセルバッファコントローラ７６は、読み出したデータＢＯ０［１１：０］＝４７５Ｈ及びＢＯ１［１１：０］＝４７５Ｈを、さらに次のサイクルＴ４で、データＢＯ０［１１：８］＝４Ｈをデプス値Ｚｐｂ０［３：０］として、データＢＯ０［７：０］＝７５ＨをピクセルカラーコードＣｐｂ０［７：０］として、データＢＯ１［１１：８］＝４Ｈをデプス値Ｚｐｂ１［３：０］として、データＢＯ１［７：０］＝７５ＨをピクセルカラーコードＣｐｂ１［７：０］として、ビュードライバ８０に出力する。
【０２２７】
読み出し処理開始サイクルＴ２の次のサイクルＴ３において、ピクセルバッファ７８Ｌ及び７８ＲのリードアドレスＢＲＡ＝０５Ｈから、画像表示のために読み出されたデータＢＯ０＝４７５Ｈ及びＢＯ１＝４７５Ｈは、さらにその次のサイクルＴ４で、ピクセルバッファ７８Ｌ及び７８ＲのライトアドレスＢＷＡ＝０５Ｈ（＝データＢＯ０及びＢＯ１を読み出したサイクルＴ３のリードアドレスＢＲＡ）に、ライトデータＢＩ０＝ＢＩ１＝０００Ｈを書き込むことで初期化される。
【０２２８】
以降、上記のような読み出し処理が繰り返される。
【０２２９】
さて、次に、ビュードライバ８０の動作について、タイミングチャートを用いて説明する。図１０は、図６のビュードライバ８０の動作を説明するためのタイムチャートである。なお、正論理を採用する。また、拡張表示モード、かつ、倍解像度モードでの動作である。
【０２３０】
図１０を参照して、ビュードライバ８０は、クロックＣＫ２０＝１（ハイレベル）、かつ、水平走査カウントＨＰ［１：０］＝０１の場合に、クロックＣＫ４０の次の立下りで、信号ＲＥＱをアサートし、クロックＣＫ４０のさらに次の立下りで（つまり、１クロック後に）、信号ＲＥＱをネゲートする。
【０２３１】
信号ＲＥＱがアサートされてから、クロックＣＫ４０の２クロック後に、ビュードライバ８０は、ピクセルバッファコントローラ７６から、ピクセルカラーコードＣｐｂ０、デプス値Ｚｐｂ０、ピクセルカラーコードＣｐｂ１、及びデプス値Ｚｐｂ１を受領する。
【０２３２】
そして、ビュードライバ８０は、クロックＣＫ２０＝１（ハイレベル）かつ水平走査カウントＨＰ［１：０］＝１１の場合に、クロックＣＫ４０の次の立下りで、ピクセルカラーコードＣｐｂ０及びデプス値Ｚｐｂ０を、ピクセルカラーコードＣｐｂ及びデプス値Ｚｐｂとして後段に出力する。
【０２３３】
さらに、ビュードライバ８０は、クロックＣＫ２０＝１（ハイレベル）かつ水平走査カウントＨＰ［１：０］＝０１の場合に、クロックＣＫ４０の次の立下りで、ピクセルカラーコードＣｐｂ１及びデプス値Ｚｐｂ１を、ピクセルカラーコードＣｐｂ及びデプス値Ｚｐｂとして後段に出力する。
【０２３４】
図１０を参照して、上記のことをより具体的に説明する。ビュードライバ８０は、クロックＣＫ２０＝１（ハイレベル）、かつ、水平走査カウントＨＰ［１：０］＝０１の場合に、クロックＣＫ４０の次の立下りＥ１で、信号ＲＥＱをアサートし、クロックＣＫ４０のさらに次の立下りＥ２で、信号ＲＥＱをネゲートする。
【０２３５】
クロックＣＫ４０の立下りＥ１で信号ＲＥＱがアサートされてから、２クロック後のクロックＣＫ４０の立下りＥ３で、ビュードライバ８０は、ピクセルバッファコントローラ７６から、ピクセルカラーコードＣｐｂ０＝０２Ｈ、デプス値Ｚｐｂ０＝２Ｈ、ピクセルカラーコードＣｐｂ１＝１２Ｈ、及びデプス値Ｚｐｂ１＝ＡＨを受領する。
【０２３６】
そして、ビュードライバ８０は、クロックＣＫ２０＝１（ハイレベル）かつ水平走査カウントＨＰ［１：０］＝１１の場合に、クロックＣＫ４０の次の立下りＥ５で、ピクセルカラーコードＣｐｂ０＝０２Ｈ及びデプス値Ｚｐｂ０＝２Ｈを、ピクセルカラーコードＣｐｂ及びデプス値Ｚｐｂとして後段に出力する。
【０２３７】
さらに、ビュードライバ８０は、クロックＣＫ２０＝１（ハイレベル）かつ水平走査カウントＨＰ［１：０］＝０１の場合に、クロックＣＫ４０の次の立下りＥ９で、ピクセルカラーコードＣｐｂ１＝１２Ｈ及びデプス値Ｚｐｂ１＝ＡＨを、ピクセルカラーコードＣｐｂ及びデプス値Ｚｐｂとして後段に出力する。
【０２３８】
以降、上記のような処理が繰り返される。
【０２３９】
以上のように、ビュードライバ８０は、クロックＣＫ４０の４サイクルで、ピクセルバッファ７８Ｌに書き込まれたキャラクタ（例えば、図３（ａ）のスプライトＳＰ１）の１ピクセル分のデータを出力し、連続した次の４サイクルで、ピクセルバッファ７８Ｒに書き込まれたキャラクタ（例えば、図３（ｂ）のスプライトＳＰ２）の１ピクセル分のデータを出力して、２つのキャラクタを合成した合成画像（例えば、図４の合成画像）、つまり、倍解像度画像を生成する。この場合、解像度は、４クロック／ピクセルになる。なお、言うまでもないが、倍解像度画像の為の２つのキャラクタを作成するには、その倍解像度画像の偶数番目のコラムのみからなる画像データと、その倍解像度画像の奇数番目のコラムのみからなる画像データとを作成すればよい。
【０２４０】
一方、互換表示モードの場合や、拡張表示モードでも標準解像度モードが設定されている場合は、ビュードライバ８０は、クロックＣＫ４０の４サイクルで、ピクセルバッファ７８Ｌに書き込まれたキャラクタの１ピクセル分のデータを出力し、連続した次の４サイクルで、ピクセルバッファ７８Ｒに書き込まれた同一キャラクタの１ピクセル分の同一データを出力して、つまり、クロックＣＫ４０の８サイクルで、１ピクセル分の同一のデータを出力して、１つの画像（例えば、図２（ａ）の画像）、つまり、標準解像度画像を生成する。この場合、解像度は、実質的には、８クロック／ピクセルである。
【０２４１】
図６に戻って、キャラクタ用カラーパレット８４は、２５６エントリ×１６ビットのローカルメモリであり、各エントリのデータは、色相（６ビット）／色飽和度（４ビット）／明度（６ビット）を示している。つまり、１エントリが１色に対応し、１６ビットで１色を表現する。
【０２４２】
色相は０〜４７までの整数で、色飽和度は０〜１５までの整数で、明度は０〜４７までの整数である。透明色の設定は、色相に４８〜６３の値を設定することにより行う。
【０２４３】
カラーパレットコントローラ８２は、ビュードライバ８０から入力されるピクセルカラーコードＣｐｂをアドレスＰ１Ａとして、キャラクタ用カラーパレット８４にアクセスし、キャラクタ用カラーパレット８４から取得したデータＰ１０を、色相Ｈｃ、色飽和度Ｓｃ、及び明度Ｌｃに分解して、デプス情報Ｚｓ（以下、このデプス情報Ｚｓをデプス情報Ｚｃと呼ぶ。）とともに、ピクセルミキサ９０に出力する。この場合の出力レートは、本実施の形態では、８クロック／ピクセルとする。
【０２４４】
ここで、色相Ｈｃ、色飽和度Ｓｃ、明度Ｌｃ、及びデプス情報Ｚｃからなるデータを、「ピクセルデータＰＤＣ」と呼ぶこともある。
【０２４５】
カラーパレットコントローラ８２が出力するピクセルデータＰＤＣにより表されるピクセルの二次元配列が、上述したキャラクタスクリーン（スプライト＋バックグラウンドスクリーン）である。
【０２４６】
ビットマップジェネレータ８６は、後述のビデオタイミングジェネレータ１００が生成した水平走査カウント信号ＨＣ及び垂直走査カウント信号ＶＣに従って、メモリＭＥＭに格納されたビットマップデータを読み出して、ビットマップスクリーンを構成するピクセルデータＰＤＢ（色相Ｈｂ、色飽和度Ｓｂ、明度Ｌｂ、及びデプス情報Ｚｂからなるデータ）を生成して、その水平解像度に応じた出力レートで、ピクセルミキサ９０に出力する。なお、ビットマップスクリーンの水平解像度はプログラマブルである。
【０２４７】
ビットマップ用カラーパレット８８は、キャラクタ用カラーパレット８４と同じ構成を有する。ただし、透明色の設定は、色相に４７、色飽和度に０、明度に０の値を設定することにより行う。
【０２４８】
ピクセルミキサ９０は、カラーパレットコントローラ８２から入力されるキャラクタスクリーンのピクセルデータＰＤＣとビットマップジェネレータ８６から入力されるビットマップスクリーンのピクセルデータＰＤＢとを合成する。ピクセルミキサ９０は、表示画面（テレビフレーム）上での奥行きを示すデプス情報Ｚｃ，Ｚｂに基づいて、出力するピクセルデータ（色相、色飽和度、及び明度からなるデータ）を決定する。つまり、ピクセルミキサ９０は、最も手前を指す（デプス情報が最も大きい）ピクセルデータを出力する。ただし、デプス情報が手前を示している場合でも、色相が透明色を示している場合には、他方のピクセルデータが選択され、出力される。
【０２４９】
ここで、ピクセルミキサ９０が出力するピクセルデータを構成する色相、色飽和度、及び明度を、それぞれ、色相Ｈｍ、色飽和度Ｓｍ、及び明度Ｌｍと表記する。
【０２５０】
ウィンドウジェネレータ９６は、ビットマップスクリーンと合成されたキャラクタスクリーン（ウィンドウジェネレータ９６の説明において、これを単に「スクリーン」と呼ぶ。）に特殊効果を与えるための回路であり、スクリーンをマスク領域と非マスク領域に分割する。マスク領域に対しては、後述のカラーモジュレータ９２で特殊効果を与えることができる。このウィンドウジェネレータ９６は、ＣＰＵ１からアクセスできるレジスタを備えており、１水平ラインにおけるマスク開始点の座標、マスク終了点の座標、及びスクリーン左端の論理を設定できる。スクリーン左端の論理とは、左端の状態、つまり、左端がマスクありかマスクなしかを示す論理である。
【０２５１】
ウィンドウジェネレータ９６は、設定されたスクリーン左端の論理に従って、信号ＷＩＮの出力を開始し、信号ＷＩＮは、水平走査カウント信号ＨＰがマスク開始点と一致するとアサートされ、マスク終了点に一致するとネゲートされる。また、信号ＷＩＮがマスク開始点またはマスク終了点に一致するたびに、ＣＰＵ１に対し割り込みを発生でき、マスク開始点及びマスク終了点を逐次的に変更できるようになっている。これにより、スクリーンのマスク領域を様々な形状に設定することができる。
【０２５２】
ノイズジェネレータ９４は、カラーモジュレータ９２で実現する視覚的色効果の１つを演出するためのノイズを生成する。具体的には、ノイズジェネレータ９４は、Ｍ系列（ポリノミナルカウンタ）を用いたデジタル擬似乱数系列発生器であり、Ｍ系列の下位３ビットをノイズ成分Ｎ［２：０］として出力する。なお、ノイズジェネレータ９４は、リセット信号ＬＰＷでリセットされ、異常なループで巡回しないようにしている。
【０２５３】
カラーモジュレータ９２は、入力された色（色相Ｈｍ／色飽和度Ｓｍ／明度Ｌｍ）に種々の視覚的効果を与える回路である。カラーモジュレータ９２は、信号ＷＩＮがアサートされているときに、活性化され、ネゲートされているときに非活性化される。
【０２５４】
カラーモジュレータ９２は、ＣＰＵ１からアクセスできる様々なレジスタ及びフラグを備えており、これで視覚的効果を設定することができる。設定できる効果として次の４つがある。
【０２５５】
第１は、色相、色飽和度、及び明度の各要素を固定できる。各要素の値は、対応するレジスタ（図示せず）に設定する。このレジスタの値は、対応するフラグ（図示せず）がオンのとき有効になる。このフラグは、要素ごとに設けられているので、固定値を使用するか否かを要素ごとに設定できる。
【０２５６】
第２は、ハーフトーン表示を行うべく、対応するフラグ（図示せず）をオンにすることで、明度Ｌｍと色飽和度Ｓｍの値をそれぞれ半分にすることができる。
【０２５７】
第３は、ネガ／ポジを反転することができる。具体的には、色相Ｈｍに値２４を加算し結果が４７を越えたら０に巡回するように値４８を引き、明度Ｌｍを値４７から引くことで明暗を逆にする。
【０２５８】
第４は、輝度に適当なノイズを加えることができる。具体的には、明度Ｌｍの下位３ビットとノイズジェネレータ９４からのノイズ成分Ｎ［２：０］とをビット単位で排他的論理和演算する。この演算を行うか否かを設定できるフラグ（図示せず）が、３ビットのそれぞれに対して設けられており、これによりノイズが加わる量を加減できる。
【０２５９】
ここで、カラーモジュレータ９２により、視覚的効果を与えた後の色相Ｈｍ、色飽和度Ｓｍ、及び明度Ｌｍを、それぞれ色相Ｈｆ、色飽和度Ｓｆ、及び明度Ｌｆと呼ぶ。ただし、この視覚的効果は、必ずしも与えられるものではないため、カラーモジュレータ９２が、視覚的効果を与えずにそのまま出力する色相Ｈｍ、色飽和度Ｓｍ、及び明度Ｌｍも、それぞれ色相Ｈｆ、色飽和度Ｓｆ、及び明度Ｌｆと表記する。
【０２６０】
ビデオエンコーダ９８は、カラーモジュレータ９２から入力された色情報（色相Ｈｆ、色飽和度Ｓｆ、及び明度Ｌｆ）と、ビデオタイミングジェネレータ１００から入力されたタイミング情報（複合同期信号ＳＹＮ、複合ブランキング信号ＢＬＫ、バーストフラグ信号ＢＳＴ、及びライン交番信号ＬＡ等）と、を入力される信号ＶＳに対応したコンポジットビデオ信号ＶＤに変換する。信号ＶＳは、テレビジョン方式（ＮＴＳＣ／ＰＡＬ）を指示する信号である。なお、ライン交番信号ＬＡは、信号ＶＳにより、テレビジョン方式として、ＰＡＬが指示されたときに使用される。ビデオエンコーダ９８の詳細は、次の通りである。
【０２６１】
ビデオエンコーダ９８は、値４７の次が値０になるように巡回する６ビットで４８進のカウンタを有しており、このカウンタは、４３ＭＨｚのクロックＣＫ４０に応じて、ＮＴＳＣは４つずつ、ＰＡＬは５つずつ進む。従って、ＮＴＳＣは、１２回で１周し、ＰＡＬは９．６回で１周する。
【０２６２】
このカウンタは、ちょうどサブキャリアの周期で巡回するので、サブキャリア発振器とみなせ、このカウンタの値は位相を表すことになる。なお、ＮＴＳＣの場合、カウンタの下位２ビットが変化しなくなるので、これが漸近的に０になるようにして、同一のパターンに集束するようにしている。
【０２６３】
ビデオエンコーダ９８は、色相Ｈｆとこのサブキャリアの位相とを加算し、サブキャリアを色相Ｈｆで位相変調した波（つまり、位相変調波）を作成する。そして、ビデオエンコーダ９８は、この位相変調波の位相データを波形ＲＯＭで振幅データに変換する。さらに、ビデオエンコーダ９８は、その振幅データと色飽和度Ｓｆとを掛け合わせ、色飽和度Ｓｆで振幅変調した信号（つまり、変調色信号）にする。一方、ビデオエンコーダ９８は、明度Ｌｆに、値８のオフセットを加え輝度信号とする。
【０２６４】
ビデオエンコーダ９８は、この変調色信号と輝度信号とを加えて、デジタルのコンポジットビデオ信号とし、これをＡＤコンバータ（図示せず）でアナログ信号に変換し、アナログのコンポジットビデオ信号ＶＤとして外部に出力する。
【０２６５】
ビデオエンコーダ９８は、複合ブランキング信号ＢＬＫがアサートされているときは、輝度信号を黒レベル＝値８にし、複合同期信号ＳＹＮがアサートされているときは、輝度信号を同期レベル＝値０にする。また、ビデオエンコーダ９８は、色相及び色飽和度を、複合ブランキング信号ＢＬＫがアサートされているときは値０に、バーストフラグ信号ＢＳＴがアサートされているときは一定の値になるように制御する。従って、これらの場合は、カラーモジュレータ９２から入力された色相Ｈｆ及び色飽和度Ｓｆは使用しない。さらに、ビデオエンコーダ９８は、複合ブランキング信号ＢＬＫがアサートされているときは、輝度信号に変調色信号を加えず、輝度信号のみをコンポジットビデオ信号ＶＤとして出力する。ただし、ビデオエンコーダ９８は、複合ブランキング信号ＢＬＫがアサートされている場合でも、所定のタイミングでカラーバースト信号を出現させる。
【０２６６】
ビデオタイミングジェネレータ１００は、クロックＣＫ４０を基に、水平走査カウント信号ＨＣ及び垂直走査カウント信号ＶＣ、並びに、複合同期信号ＳＹＮ、複合ブランキング信号ＢＬＫ、バーストフラグ信号ＢＳＴ、及びライン交番信号ＬＡ等のタイミング信号を生成する。
【０２６７】
ビデオタイミングジェネレータ１００は、分周器で構成され、信号ＶＳに従って、つまり、ＮＴＳＣかＰＡＬかで、分周率を変えている。ビデオタイミングジェネレータ１００の生成するタイミングは、ＣＰＵ１によって設定変更が可能であるが、初期設定では、ＮＴＳＣの場合に、ＣＫ４０の２７３０クロックを１水平周期とし、２６３水平周期を１垂直周期とする。また、ＰＡＬでは、ＣＫ４０の２７２４クロックを１水平周期とし、３１４水平周期を１垂直周期とする。
【０２６８】
このような分周率にしたのは、ＮＴＳＣ／ＰＡＬの標準信号に近い水平／垂直周波数と、標準信号に合わせたインターリーブ方式と、を提供するためである。ＮＴＳＣは、ライン／フレームともインターリーブが１８０度、ＰＡＬは、ラインインターリーブを２７０度にしている。ただし、ＰＡＬのフレームインターリーブは、標準と違って１８０度にしている。これはノンインターレース方式において、サブキャリアが輝度に与えるドット妨害を軽減するためである。
【０２６９】
ここで、図示していないが、ビデオタイミングジェネレータ１００は、水平周期を設定するためのレジスタ、水平同期パルスの左端を設定するレジスタ、等価パルスの右端を設定するレジスタ、水平同期パルスの右端を設定するレジスタ、カラーバーストの左端を設定するレジスタ、カラーバーストの右端を設定するレジスタ、ビデオフィールドの左端を設定するレジスタ、垂直同期パルスの右端を設定するレジスタ、ビデオフィールドの右端を設定するレジスタ、垂直周期を設定するためのレジスタ、ビデオフィールドの下端を設定するレジスタ、カラーバーストの下端を設定するレジスタ、等価パルスの上端を設定するレジスタ、垂直同期パルスの上端を設定するレジスタ、垂直同期パルスの下端を設定するレジスタ、等価パルスの下端を設定するレジスタ、カラーバーストの上端を設定するレジスタ、及び、ビデオフィールドの上端を設定するレジスタを具備する。従って、ＣＰＵ１は、これらのレジスタにアクセスすることで、コンポジットビデオ信号ＶＤのフォームを調整できる。
【０２７０】
ビデオポジションアジャスタ１０２は、表示画面（テレビフレーム）に対するキャラクタスクリーンの位置を調整する。具体的には次の通りである。
【０２７１】
ビデオポジションアジャスタ１０２は、入力される水平走査カウント信号ＨＣ及び垂直走査カウント信号ＶＣに対して、それぞれオフセットを与え、水平走査カウント信号ＨＰ及び垂直走査カウント信号ＶＰを生成する。水平走査カウント信号ＨＰ及び垂直走査カウント信号ＶＰは、上記のように、キャラクタスクリーンの生成に関わる各機能ブロックに対して出力される。オフセットは、ビデオポジションアジャスタ１０２に内蔵される制御レジスタ（図示せず）に対し、ＣＰＵ１がアクセスすることで設定される。
【０２７２】
ここで、上記のように、ビットマップジェネレータ８６では、ビデオタイミングジェネレータ１００で生成された水平走査カウント信号ＨＣ及び垂直走査カウント信号ＶＣが使用される。従って、ビデオポジションアジャスタ１０２により、キャラクタスクリーンとビットマップスクリーンとの相対的な位置関係の調整が可能になる。
【０２７３】
ビデオファンクションジェネレータ１０４は、水平走査カウント信号ＨＰ及び垂直走査カウント信号ＶＰを基に、キャラクタスクリーンの１フレーム分の描画終了タイミングを認識し、そのタイミングでマスク不可割込み信号ＮＭＩ（Ｎｏｎ−Ｍａｓｋａｂｌｅ  Ｉｎｔｅｒｒｕｐｔ）をＣＰＵ１に与える。これにより、ＣＰＵ１は、キャラクタスクリーンの１フレーム分の描画終了を認識できる。また、ビデオファンクションジェネレータ１０４は、水平走査カウント信号ＨＰ及び垂直走査カウント信号ＶＰが、制御レジスタ（図示せず）に設定された値と一致したときに、割込み要求信号ＩＲＱ（Ｉｎｔｅｒｒｕｐｔ  Ｒｅｑｕｅｓｔ）を発生させる。この制御レジスタに対して、ＣＰＵ１はアクセス可能であり、割込み要求信号ＩＲＱの発生タイミングを制御できる。さらに、ビデオファンクションジェネレータ１０４は、ライトペン入力信号ＬＰ０，ＬＰ１のエッジで、水平走査カウント信号ＨＰ及び垂直走査カウント信号ＶＰの値をラッチする。ＣＰＵ１は、第１バス３１を通じてラッチされた値を読み出すことができる。なお、マスク不可割込み信号ＮＭＩ及び割込み要求信号ＩＲＱは、グラフィックスプロセッサ３からＣＰＵ１への割込み要求信号ＩＮＲＱを構成するものである。
【０２７４】
表示モード制御レジスタ１０１には、第１バス３１を通じて、ＣＰＵ１が自由にアクセス可能であり、表示モード制御情報ＣＨＲＭＯＤＥの値を動的に変更可能である。
【０２７５】
なお、スプライトＤＭＡコントローラ５０、第１のバックグラウンドジェネレータ５６、及び第２のバックグラウンドジェネレータ６０は、第１バス３１へのバス要求機能を備えており、メインメモリ１７から能動的にデータを取得できる。また、キャラクタフェッチャ６８及びビットマップジェネレータ８６は、第１バス３１及び第２バス３３へのバス要求機能を備えており、メインメモリ１７及び外部メモリ４５から能動的にデータを取得できる。
【０２７６】
さて、次に、図１のプロセッサ１０００との間で後方互換性が維持される前世代のプロセッサについて、異なる点を中心に簡単に説明する。前世代のプロセッサの構成要素を示すときには、構成要素の名称の前に、「前世代」なる語を付する。
【０２７７】
前世代のプロセッサの構成は、図１のプロセッサ１０００の構成と同様である。また、前世代のグラフィックスプロセッサの構成は、図５及び図６に示したグラフィックスプロセッサ３の構成と同様である。ただし、前世代のビデオファンクションジェネレータは、表示モード制御レジスタを備えていない。したがって、前世代のプロセッサは、プロセッサ１０００の互換表示モードに相当する標準解像度での表示のみを行うことができる。ただし、プロセッサ１０００と同様に、ビットマップスクリーンについては解像度の調整は可能である。
【０２７８】
従って、前世代のグラフィックスプロセッサは、１つのピクセルバッファのみを有している。この前世代のピクセルバッファの構成及び動作は、ピクセルバッファ７８Ｌの構成及び動作と同様である。
【０２７９】
また、前世代のグラフィックスプロセッサでは、フリップパラメータＦｓは、反転のための情報のみとして機能する。従って、前世代のストリップジェネレータは、垂直位置情報Ｙｓ、垂直方向の反転を示すフリップ情報Ｆｓ［１］、及び垂直走査カウント信号ＶＰに基づいて、抽出するストリップを特定する。このように、前世代では、必ずフリップ情報Ｆｓ［１］が考慮されるので、Ｆｓ［１］＝１（つまり、垂直方向の反転）の場合は、入力されるキャラクタの垂直座標Ｙｓをキャラクタ内で垂直方向に反転（上下反転）した値に基づいて、ストリップの特定が行われる。この点、プロセッサ１０００の互換表示モードと同様である。ただし、前世代では、フリップ情報Ｆｓ［１］は後段で使用されないため、後段に出力されるフリップ情報は、フリップ情報Ｆｓ［０］だけである。
【０２８０】
従って、前世代のキャラクタフェッチャには、フリップ情報Ｆｓ［０］が入力され、そこから、フリップ情報Ｆｓ［０］が、後段に出力される。この点、フリップ情報Ｆｓ［１：０］が入出力されるプロセッサ１０００のキャラクタフェッチャ６８とは異なる。
【０２８１】
前世代のピクセルジェネレータは、必ずフリップ情報Ｆｓ［０］を考慮し、Ｆｓ［０］＝１の場合は、水平方向の反転を示しているので、サイズ情報Ｓｓが示す水平サイズ分進んだところから逆に減少するように計算を行って、水平位置情報Ｘｐを求める。この点、プロセッサ１０００の互換表示モードと同様である。ただし、前世代では、フリップ情報Ｆｓ［０］は後段で使用されないため、後段には出力されない。
【０２８２】
従って、前世代のトランスペアレントコントローラには、プロセッサ１０００のトランスペアレントコントローラ７２のように、ビットＣｍｂ及びＯｆｓの入出力は行われない。
【０２８３】
また、前世代では、ピクセルバッファは１つであるので、前世代のドロードライバは、前世代のピクセルバッファコントローラに書き込み要求するときには、信号ＲＥＱをアサートする。
【０２８４】
従って、前世代のピクセルバッファコントローラは、前世代のドロードライバからの信号ＲＥＱによる書き込み要求と、前世代のビュードライバからの信号ＲＥＱによる読み出し要求と、を調停して、調停結果に応じて、前世代のピクセルバッファにアクセスする。
【０２８５】
前世代のビュードライバは、前世代のピクセルバッファからの読み出し要求を行い、読み出されたピクセルカラーコードＣｐｂとデプス情報Ｚｐｂとを後段に出力する。この点、ピクセルカラーコードＣｐｂ０、デプス情報Ｚｐｂ０、ピクセルカラーコードＣｐｂ１、及びデプス情報Ｚｐｂ１を後段に出力するビュードライバ８０と異なる。従って、前世代では、プロセッサ１０００での１ピクセルセットが１ピクセルに相当することになり、プロセッサ１０００の倍解像度の半分の解像度で表示されることになる。
【０２８６】
他の点については、前世代のプロセッサは、プロセッサ１０００と同様であり説明を省略する。つまり、拡張表示モードによる表示処理を除けば、プロセッサ１０００は、前世代のプロセッサと同様のものである。
【０２８７】
さて、以上のように、本実施の形態では、表示モード制御情報ＣＨＲＭＯＤＥにより、互換表示モードと拡張表示モードとを切り替えることができる。従って、互換表示モードを設定したときは、拡張表示モードを搭載しておらず、常に標準解像度モードでの表示を行う前世代のプロセッサのために作成されたソフトウェアをそのまま使用できる。その結果、前世代のプロセッサに搭載されるソフトウェアとの後方互換性を維持しながらも、拡張表示モードにて高解像度の表示が可能である。
【０２８８】
この表示モード制御情報ＣＨＲＭＯＤＥは、表示モード制御レジスタ１０１にセットされるところ、この制御レジスタ１０１には、第１バス３１を通じてＣＰＵ１が自由にアクセスできる。その結果、ＣＰＵ１によって、互換表示モードと拡張表示モードとの切り替えを動的に行うことができる。
【０２８９】
とろこで、例えば、図１のプロセッサ１０００は、電源投入の後の初期化動作において、表示モード制御レジスタ１０１の表示モード制御情報ＣＨＲＭＯＤＥを、互換表示モードを示す「０」に初期化する。図１のプロセッサ１０００の拡張表示モードで動作する非互換ソフトウェアは、そのスタートアップルーチン等で互換表示モードを拡張表示モードへ切り換える命令、すなわち表示モード制御情報ＣＨＲＭＯＤＥを拡張表示モードを示す「１」に書き換える命令を実行する。これにより、以後の非互換ソフトウェアの実行において、フリップパラメータＦｓ［１：０］は、夫々、切替ビットＣｍｂおよび選択ビットＯｆｓとして機能することとなる。これに対して、図１のプロセッサ１０００が開発される以前に作成され、前世代のプロセッサでのみ動作する互換ソフトウェアは、互換表示モードを拡張表示モードへ切り換える命令を持たないため、表示モード制御情報ＣＨＲＭＯＤＥは互換表示モードを示す「０」のままであり、フリップパラメータＦｓ［１：０］の機能は、反転情報として処理される。従って、図１のプロセッサ１０００は、互換ソフトウェアを前世代のプロセッサと同様に実行することとなる。
【０２９０】
また、本実施の形態では、拡張表示モードにおいては、フリップパラメータＦｓ[１]に従って、ピクセルデータの割り当てをピクセルセットを構成するピクセルごとに行い（倍解像度モード）、あるいは、ピクセルデータの割り当てをピクセルセットごとに行う（標準解像度モード）ことで、解像度の切り替えを行っている。
【０２９１】
従って、低い解像度で十分な画像に対しては標準解像度モードを設定し、高い解像度が必要な画像に対しては倍解像度モードを設定することにより、同一画面中の画像ごとに解像度を変えることができ、画像データの大きさを最適化できる。これにより、画像データを格納するメモリ容量の削減とプロセッサ１０００の処理負荷の軽減、更に画像データの転送ためのバス帯域への負荷の軽減を図ることができる。
【０２９２】
さらに、本実施の形態では、拡張表示モードにおける倍解像度モードにおいては、フリップパラメータＦｓ[０]＝０のときは、ピクセルセットを構成する左側のピクセルにピクセルデータが割り当てられ（ピクセルデータがピクセルバッファ７８Ｌに格納され）、フリップパラメータＦｓ[０]＝１のときは、ピクセルセットを構成する右側のピクセルにピクセルデータが割り当てられる（ピクセルデータがピクセルバッファ７８Ｒに格納される）。
【０２９３】
このように、フリップパラメータＦｓ[０]に従って、ピクセルセットを構成する左右のピクセルにピクセルデータを割り当て、２つのキャラクタ（２つの画像データ）を合成する。つまり、合成対象の２つのキャラクタを１ピクセルずつインターリーブして表示処理を行うことにより、合成画像を生成する。従って、合成対象の各キャラクタ（各画像データ）の形式は、互いに完全同一のものとすることができる。
【０２９４】
また、互換表示モードの場合や、拡張表示モードでも標準解像度モードの場合のキャラクタ（画像データ）の形式と、拡張表示モードでの倍解像度モードの場合のキャラクタ（画像データ）の形式と、を互いに完全同一のものとすることができる。
【０２９５】
さらに、本実施の形態では、第１のバックグラウンドスクリーン及び第２のバックグラウンドスクリーンに対応して、ＦＳＣレジスタ５７及び６１が設けられている。フリップパラメータＦ１[１：０]及びＦ３[１：０]が格納されるＦＳＣレジスタ５７及び６１には、ＣＰＵ１が第１バス３１を通じて自由にアクセスできる。このため、第１のバックグラウンドスクリーン及び第２のバックグラウンドスクリーンに対して、標準解像度モードと倍解像度モードとの切り替えや、倍解像度モードでの左右ピクセルの選択の変更を動的に行うことができる。
【０２９６】
さらに、本実施の形態では、スプライトメモリ５２を備えており、各エントリには、１スプライトのフリップパラメータＦ０[１：０]が格納される。従って、ＣＰＵ１は、第１バス３１を通じてこれらの内容を動的に変更でき、各スプライトに対して、標準解像度モードと倍解像度モードとの切り替えや、倍解像度モードでの左右ピクセルの選択の変更を動的に行うことができる。
【０２９７】
さらに、本実施の形態では、フリップパラメータＦｓ[１：０]の格納手段（ＦＳＣレジスタ５７，６１、スプライトメモリ５２）とこの情報を処理するためのデータパスをそのまま利用できるため、前世代のプロセッサを基に、大きな回路変更を行うことなく機能拡張したプロセッサ１０００を実現できる。
【０２９８】
さらに、本実施の形態では、２つのピクセルバッファ７８Ｌ及び７８Ｒを設けて高解像度の表示を実現している。このように、前世代のグラフィックスプロセッサが備えるピクセルバッファと同じ構成のピクセルバッファを追加するだけで、高解像度の画像表示を行うことが可能なグラフィックスプロセッサ３を実現できる。
【０２９９】
さらに、本実施の形態では、互換表示モードの場合や、拡張表示モードでの標準解像度モードの場合は、ピクセルバッファ７８Ｌ及び７８Ｒの双方の同一位置に同一のピクセルデータが格納されるので、ピクセルバッファ７８Ｌ及び７８Ｒの双方から、同一のピクセルデータが読み出され、その結果、標準解像度モードに相当する解像度での表示が可能になる。
【０３００】
さらに、本実施の形態では、デプス情報の比較結果に基づいて、ピクセルバッファ７８Ｌ，７８Ｒへの書き込みを行うので、ピクセルの書き込み順序にかかわらず、同じ位置にピクセルが重なる場合に、表示優先順位の高い方のピクセルデータをピクセルバッファ７８Ｌ，７８Ｒに書き込むことができる。
【０３０１】
さらに、本実施の形態では、ビュードライバ８０による読み出しが完了し、不要になったピクセルデータの初期化を行うことで、ピクセルバッファ７８Ｌにおける、初期化されたピクセルデータの格納位置に、新たなピクセルデータをライトできる。従って、１ライン分のバッファを必ずしも設ける必要はなく、１ライン分より容量の小さいピクセルバッファ７８Ｌを設けて、それを巡回的に使用することが可能である。ピクセルバッファ７８Ｒについても同様である。よって、コストの低減を図ることができる。
【０３０２】
さらに、本実施の形態では、ドロードライバ７４、ピクセルバッファコントローラ７６、及びビュードライバ８０を設けることで、簡単な回路構成によってピクセルバッファ７８Ｌ及び７８Ｒに対する効率的なリード／ライトを実現している。
【０３０３】
さらに、本実施の形態では、ピクセルバッファ７８Ｌ及び７８Ｒから読み出した、ピクセルセットを構成する左右のピクセルに対するピクセルデータを、時分割で順に後段に出力してピクセルセットを構成し、合成画像を生成する。即ち、走査線の走査位置に基づいて画像処理を行うグラフィックスプロセッサ３において、簡単な回路構成で高解像度の画像表示を達成できる。
【０３０４】
なお、本発明は、上記の実施の形態に限られるものではなく、その要旨を逸脱しない範囲で種々の態様において実施することが可能であり、例えば、以下のような変形も可能である。
【０３０５】
（１）上記では、カラーパレット８４，８８を通じて表示色を指定する間接指定方式を採用した。つまり、キャラクタパターンデータやビットマップデータをカラーコードで表した。ただし、色の表現形式はこれに限定されず、直接指定方式を採用し、例えば、キャラクタパターンデータやビットマップデータを色相Ｈ／色飽和度Ｓ／明度Ｌ等の色情報で表した場合でも、本発明を同様に適用できる。
【０３０６】
（２）上記では、ピクセルセットを２つのピクセルで構成した。ただし、ピクセルセットを構成するピクセル数は、これに限定されず、３以上でもよい。１ピクセルセットを表示する際の時間が固定であるとすると、ピクセルセットを構成するピクセル数が大きくなれば解像度も高くなる。この場合も、１ピクセルセットを構成するピクセル数と同数のピクセルバッファを実装する。
【０３０７】
（３）上記では、１ライン分より少ないピクセルに対応する容量を持つピクセルバッファを２つ設けた。ただし、これに代えて、１ライン分のラインバッファを２つ設けたり、あるいは、１フレーム分のフレームバッファを２つ設けることもできる。
【０３０８】
（４）上記では、ピクセルセットを２つのピクセルで構成し、選択ビットＯｆｓによって、いずれかのピクセルを選択した。この場合、１ピクセルに１ピクセルデータを割り当てた（均等配分）。ただし、ピクセルセットを３以上のピクセルで構成して、ピクセルデータを不均等に配分することもできる。例えば、ピクセルセットを３ピクセルで構成し、左及び中央の２ピクセルに同一ピクセルデータを割り当て、右の１ピクセルに１ピクセルデータを割り当てたり、あるいは、左及び右の２ピクセルに同一ピクセルデータを割り当て、中央の１ピクセルに１ピクセルデータを割り当てたりできる。
【図面の簡単な説明】
【０３０９】
【図１】本発明の実施の形態によるデータ処理装置としてのプロセッサ１０００の全体構成を示すブロック図。
【図２】（ａ）互換表示モードでのスプライトＳＰ１の表示例を示す図。（ｂ）互換表示モードでのスプライトＳＰ２の表示例を示す図。
【図３】（ａ）拡張表示モードにおいて、フリップパラメータＦｓ［１：０］＝０ｂ１０が設定されたスプライトＳＰ１の表示例を示す図。（ｂ）拡張表示モードにおいて、フリップパラメータＦｓ［１：０］＝０ｂ１１が設定されたスプライトＳＰ２の表示例を示す図。
【図４】図３（ａ）のスプライトＳＰ１及び図３（ｂ）のスプライトＳＰ２を同一座標に表示して倍解像度表示を行ったときの例示図。
【図５】図１のグラフィックスプロセッサ３の内部構成の前段部分を示すブロック図。
【図６】図１のグラフィックスプロセッサ３の内部構成の後段部分を示すブロック図。
【図７】図５のスプライトメモリ５２を構成する第０のエントリの構造を示す図。
【図８】図５のＦＳＣレジスタ５７及び６１の構造を示す図。
【図９】図６のピクセルバッファコントローラ７６の動作を説明するためのタイムチャート。
【図１０】図６のビュードライバ８０の動作を説明するためのタイムチャート。
【符号の説明】
【０３１０】
１…ＣＰＵ、３…グラフィックスプロセッサ、１７…メインメモリ、４５…外部メモリ、５０…スプライトＤＭＡコントローラ、５２…スプライトメモリ、５４…スプライトジェネレータ、５６…第１のバックグラウンドジェネレータ、５７，６１…ＦＳＣレジスタ、５８…第１のピクチャーパラメータミキサ、６０…第２のバックグラウンドジェネレータ、６２…第２のピクチャーパラメータミキサ、６４…アドレスジェネレータ、６６…ストリップジェネレータ、６８…キャラクタフェッチャ、７０…ピクセルジェネレータ、７２…トランスペアレントコントローラ、７４…ドロードライバ、７６…ピクセルバッファコントローラ、７８Ｌ，７８Ｒ…ピクセルバッファ、８０…ビュードライバ、８２…カラーパレットコントローラ、８４…キャラクタ用カラーパレット、８６…ビットマップジェネレータ、８８…ビットマップ用カラーパレット、９０…ピクセルミキサ、９２…カラーモジュレータ、９８…ビデオエンコーダ、１００…ビデオタイミングジェネレータ、１０１…表示モード制御レジスタ、１０２…ビデオポジションアジャスタ、１０００…プロセッサ。
【図１】
0005282183.tif 000002
【図２】
0005282183.tif 000003
【図３】
0005282183.tif 000004
【図４】
0005282183.tif 000005
【図５】
0005282183.tif 000006
【図６】
0005282183.tif 000007
【図７】
0005282183.tif 000008
【図８】
0005282183.tif 000009
【図９】
0005282183.tif 000010
【図１０】
0005282183.tif 000011