(57)【特許請求の範囲】
【請求項１】
表示装置に表示させる画像データを記憶するメモリとの間のデータ転送を制御するデータ転送装置であって、
前記画像データの、レンダリングエンジンから前記メモリへの高速転送を制御する高速転送制御手段と、
前記メモリに記憶された画像データの読み出しを制御する読み出し制御手段と、
前記メモリから読み出された画像データを記憶する第１の記憶手段と、
前記第１の記憶手段に記憶された画像データの、前記表示装置への低速転送を制御する第１の転送制御手段と、
前記表示装置以外の外部装置から供給される画像データを記憶する第２の記憶手段と、
前記外部装置から供給される画像データの、前記外部装置から前記第２の記憶手段への低速転送を制御する第２の転送制御手段と、を備え、
前記読み出し制御手段は、前記第２の記憶手段に記憶された画像データの、前記メモリへの書き込みをさらに制御し、
前記第２の記憶手段は、双方向性を有し、前記メモリから読み出される画像データも記憶し、
前記第２の転送制御手段は、前記メモリから読み出され、前記第２の記憶手段に記憶された画像データの、前記外部装置への低速転送も制御すること
を特徴とするデータ転送装置。
【請求項２】
前記第１および第２の記憶手段は、ラインバッファで構成されること
を特徴とする請求項１に記載のデータ転送装置。
【請求項３】
前記第１および第２の転送制御手段は、準同期型のアクセス制御を行うこと
を特徴とする請求項１または２に記載のデータ転送装置。
【請求項４】
前記読み出し制御手段および前記第１の転送制御手段は、同期信号に従って制御され、
前記高速転送制御手段は、前記読み出し制御手段により前記画像の読み出しが行われている期間を除くタイミングで前記メモリへの高速転送を制御され、
前記第２の転送制御手段は、前記第１の転送制御手段および前記高速転送制御手段それぞれと独立に制御されること
を特徴とする請求項１、２または３記載のデータ転送装置。
【請求項５】
前記第２の転送制御手段は、割り込みをトリガとして制御を行うこと
を特徴とする請求項１、２、３または４記載のデータ転送装置。
【請求項６】
表示装置に表示させる画像データを記憶するメモリとの間のデータ転送を制御するデータ転送装置におけるデータ転送方法であって、
前記データ転送装置は、
前記メモリから読み出される画像データを記憶する第１の記憶手段と、
双方向性を有し、前記表示装置以外の外部装置から供給される画像データを記憶して前記メモリに供給するとともに、前記メモリから読み出される画像データも記憶する第２の記憶手段とを備え、
前記表示装置に表示させる画像データの、レンダリングエンジンから前記メモリへの高速転送と、前記第１の記憶手段に記憶された画像データの、前記表示装置への低速転送と、前記外部装置からの画像データの、前記第２の記憶手段への低速転送と、を独立に制御するとともに、前記メモリから読み出され、前記第２の記憶手段に記憶された画像データの、前記外部装置への低速転送を、前記表示装置に表示させる画像データの、前記メモリへの高速転送とは独立に制御すること
を特徴とするデータ転送方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ転送装置およびデータ転送方法に関し、特に、例えば、コンピュータを用いた映像機器であるグラフィックコンピュータ、特殊効果装置、ビデオゲーム機などにおいて、ＣＲＴ（Cathode Ray Tube）などの表示装置に表示させる画像データを記憶するメモリ（フレームメモリ）との間のデータ転送を制御するデータ転送装置およびデータ転送方法に関する。
【０００２】
【従来の技術】
従来の、例えばビデオゲーム機などにおいては、３次元のオブジェクト（画像）を表示する場合に、そのオブジェクトを複数のポリゴン（単位図形）に分解し、これらのポリゴンそれぞれを描画することで、オブジェクト全体を描画するようになされている。従って、このようにして描画される画像は、ポリゴンの組合せにより定義されているということができる。
【０００３】
このようなビデオゲーム機では、例えば、フレームメモリ（例えば、ＶＲＡＭ（Video RAM（Random Access Memory）））に、画像データを書き込む一方、そのフレームメモリに記憶された画像データを、ＮＴＳＣ（National Television System Commitee）方式の同期信号などにしたがって読み出し、ＣＲＴなどのモニタに供給することにより、画像が表示されるようになされている。
【０００４】
ところで、ビデオゲーム機において、フレームメモリに対してアクセスするモードとしては、フレームメモリに画像データを書き込む（描画する）レンダリング処理を行うレンダリングプロセッサ（レンダリングエンジン）や、座標変換、光源計算、行列演算、ベクトル演算などのジオメトリ処理を行うＣＰＵ（Central Processing Unit）などが、フレームメモリにアクセスする場合の標準アクセスモードや、フレームメモリから、モニタに表示させる画像データを読み出すための表示アクセスモードなどがある。
【０００５】
従来においては、通常、標準アクセスモードにより、フレームメモリに画像データを書き込み、表示アクセスモードにより、フレームメモリから画像データを読み出すようになされている。また、フレームメモリに対する画像データの書き込みは、フレームメモリとして、トリプルポート（Triple Port）のＶＲＡＭを用い、同期型の表示アクセスモードと連動した入力モードによって行う場合もある。この場合、フレームメモリへの画像データの書き込みは、表示のための画像データの読み出しと連動して行われる。
【０００６】
【発明が解決しようとする課題】
ところで、近年のディジタル技術の進歩、発展により、標準アクセスモードによるデータ転送が、表示アクセスモードによるデータ転送に比較して高速に行うことができるようになり、これにより、表示アクセスモードによるデータ転送に余裕ができ、その結果、種々のアクセスモードを設定することが可能となった。
【０００７】
即ち、例えば、標準アクセスモードを、ＣＰＵやレンダリングプロセッサがフレームメモリにアクセスする場合と、比較的低速なメディアがフレームメモリにアクセスする場合とで共用することが可能となった。
【０００８】
しかしながら、最近では、ゲームの迫力や臨場感を高めるために処理の高速性が要求されるようになり、ＣＰＵやレンダリングプロセッサがフレームメモリに対して、ランダムかつバースト的にアクセスする必要が生じ、このため、標準アクセスモードを、低速なメディアが、フレームメモリに分散してアクセスする場合や、また、ビデオレート程度の書き込みを行う場合などと共用すると、ＣＰＵやレンダリングプロセッサと、フレームメモリとの間のデータ転送が不用意に分断され、これにより、著しく処理性能が劣化することがあった。
【０００９】
そこで、そのような低速なデータ転送や、分散して行われるデータ転送を、ＣＰＵやレンダリングプロセッサに行わせる方法がある。しかしながら、この方法により、少量の画像データを転送しても、画像については、転送先において、あるひとまとまりの画像データを受信するまでは処理（例えば、フィルタリングなど）を開始することができないことが多く、データの転送と同時に、そのデータに対して何らかの処理を施すことができるという、ＣＰＵやレンダリングプロセッサによるデータ転送のメリットを享受することは困難である。
【００１０】
本発明は、このような状況に鑑みてなされたものであり、装置の処理性能を向上させることができるようにするものである。
【００１１】
【課題を解決するための手段】
請求項１に記載のデータ転送装置は、表示装置に表示させる画像データの、メモリへの高速転送を制御する高速転送制御手段と、メモリに記憶された画像データの読み出しを制御する読み出し制御手段と、メモリから読み出された画像データを記憶する第１の記憶手段と、第１の記憶手段に記憶された画像データの、表示装置への低速転送を制御する第１の転送制御手段と、表示装置以外の外部装置から供給される画像データを記憶する第２の記憶手段と、外部装置からの画像データの、第２の記憶手段への低速転送を制御する第２の転送制御手段と、第２の記憶手段に記憶された画像データの、メモリへの書き込みを制御する書き込み制御手段とを備えることを特徴とする。
【００１２】
請求項５に記載のデータ転送方法は、データ転送装置が、メモリから読み出される画像データを記憶する第１の記憶手段と、表示装置以外の外部装置から供給される画像データを記憶し、メモリに供給する第２の記憶手段とを備え、表示装置に表示させる画像データの、メモリへの高速転送と、第１の記憶手段に記憶された画像データの、表示装置への低速転送と、外部装置からの画像データの、第２の記憶手段への低速転送とを独立に制御することを特徴とする。
【００１３】
請求項１に記載のデータ転送装置においては、高速転送制御手段は、表示装置に表示させる画像データの、メモリへの高速転送を制御し、読み出し制御手段は、メモリに記憶された画像データの読み出しを制御するようになされている。第１の記憶手段は、メモリから読み出された画像データを記憶し、第１の転送制御手段は、第１の記憶手段に記憶された画像データの、表示装置への低速転送を制御するようになされている。第２の記憶手段は、表示装置以外の外部装置から供給される画像データを記憶し、第２の転送制御手段は、外部装置からの画像データの、第２の記憶手段への低速転送を制御するようになされている。書き込み制御手段は、第２の記憶手段に記憶された画像データの、メモリへの書き込みを制御するようになされている。
【００１４】
請求項５に記載のデータ転送方法においては、データ転送装置が、メモリから読み出される画像データを記憶する第１の記憶手段と、表示装置以外の外部装置から供給される画像データを記憶し、メモリに供給する第２の記憶手段とを備えており、表示装置に表示させる画像データの、メモリへの高速転送と、第１の記憶手段に記憶された画像データの、表示装置への低速転送と、外部装置からの画像データの、第２の記憶手段への低速転送とを独立に制御するようになされている。
【００１５】
【発明の実施の形態】
図１は、本発明を適用したビデオゲーム機の一実施例の構成を示す平面図である。なお、図２に、その正面図（図１において、下方向から見た図）を、図３に、その右側面の側面図（図１において、向かって右方向から見た側面図）を、それぞれ示す。
【００１６】
ビデオゲーム機は、ゲーム機本体２、このゲーム機本体２と接続される略四角形状をなした接続端子部２６を備えた操作装置１７、および同じくゲーム機本体２と接続される記録装置３８とから構成されている。
【００１７】
ゲーム機本体２は、略四角形状に形成され、その中央の位置に、ゲームを行うためのプログラムやデータが記録されたゲーム用記録媒体を装着するディスク装着部３が設けられている。なお、本実施例では、ディスク装着部３には、例えば、図４に示すようなＣＤ（Compact Disc）−ＲＯＭ５１がゲーム用記録媒体として着脱可能になされている。但し、ゲーム用記録媒体は、ディスクに限定されるものではない。
【００１８】
ディスク装着部３の左側には、ゲームをリセットするときなどに操作されるリセットスイッチ４と、電源のオン／オフをするときに操作される電源スイッチ５とが設けられており、その右側には、ディスク装着部３を開閉するときに操作されるディスク操作スイッチ６が設けられている。さらに、ゲーム機本体２の正面には、操作装置１７および記録装置３８を１組として接続することのできる接続部７Ａ，７Ｂが設けられている。なお、本実施例では、２組の操作装置１７および記録装置３８を接続することができるように、接続部７Ａ，７Ｂが設けられているが、接続部は、２組以外の組数の操作装置１７および記録装置３８を接続することができる数だけ設けるようにすることが可能である。
【００１９】
接続部７Ａ，７Ｂは、図２および図３に示すように、２段に形成され、上段には記録装置３８と接続する記録挿入部８を設け、下段には操作装置１７の接続端子部２６と接続する接続端子挿入部１２を設けた構造となっている。
【００２０】
記録挿入部８の挿入孔は、横方向に長い長方形状に形成し、その下側の両端のコーナーを上側の両端のコーナーに比べて丸みを多くして、記録装置３８が逆に挿入できない構造となっている。さらに、記録挿入部８には、内部の電気的接続を得る接続端子（図示せず）を保護するためのシャッタ９が設けられている。
【００２１】
シャッタ９は、例えば、コイルねじりバネ状に形成されたスプリングなどの弾性体（図示せず）により常時外側に向けて付勢された状態で取り付けられている。従って、シャッタ９は、記録装置３８を差し込む時には記録装置３８を挿入する先端側で奥側に開けられ、記録装置３８を抜いた時には弾性体の付勢力により戻され、自動的に閉じた状態となって、内部の接続端子の防埃の役目をし、さらに外部の衝撃から守る役目をする。
【００２２】
接続端子挿入部１２は、図２および図３に示すように、横方向に長い長方形状をした挿入孔の下側の両端のコーナーを上側の両端のコーナーに比べて丸みを多くした形状にして操作装置１７の接続端子部２６が逆に入らない構造であり、且つ記録装置３８も入らないように挿入孔の形状を異にした構造となっている。このようにして、記録装置３８と操作装置１７の挿入孔の大きさ及び形状を異にして互いに入れ間違いのないようにした構造となっている。
【００２３】
操作装置１７は、図１に示すように、両手の掌で挟持して５本の指が自由自在に動いて操作できる構造をしており、左右対象に連設した丸型形状に形成された第１及び第２の操作部１８，１９、この第１及び第２の操作部１８，１９から角状に突出形成した第１及び第２の支持部２０，２１、第１及び第２の操作部１８，１９の中間位置の括れた部分に設けたセレクトスイッチ２２およびスタートスイッチ２３、第１及び第２の操作部１８，１９の前面側に突出形成した第３及び第４の操作部２４，２５、並びにゲーム機本体２とケーブル２７を介して電気的接続をする接続端子部２６とから構成されている。尚、ケーブル２７を介さなくともよい構成とすることもできる。
【００２４】
接続端子部２６は、ゲーム機本体２と電気的接続をするためのケーブル２７の先端に取り付けられており、図３に示すように、その左右の両側面には、凹凸状のある形状にして、いわゆるギザギザ模様にした滑り止め加工（例えば、ローレット加工など）が施されている把持部が設けられている。なお、接続端子部２６に設けられた把持部は、いわゆる抜き差し部を形成し、その大きさ、即ち、その幅Ｗと長さＬは、例えば、後述する記録装置３８の把持部と同一とされている。
【００２５】
記録装置３８は、例えばフラッシュメモリなどの不揮発性メモリを内蔵しており、その両側面には、例えば、接続端子部２６における場合と同様に構成される把持部（図３）が設けられ、ゲーム機本体２に対し、容易に着脱することができるようになされている。なお、記録装置３８には、例えば、ゲームを一時的に中断する場合に、そのときの状態が記憶されるようになされており、これにより、再起動の際に、そこからデータを読み出すことで、そのデータに対応した状態、即ち、中断時の状態から、ゲームを再開することができるようになされている。
【００２６】
以上のように構成されるビデオゲーム機によりゲームを行う場合においては、ユーザは、例えば、操作装置１７を、ゲーム機本体２に接続し、さらに、必要に応じて、記録装置３８も、ゲーム機本体２に接続する。また、ユーザは、ディスク操作スイッチ６を操作することにより、ゲーム用記録媒体としてのＣＤ−ＲＯＭ５１を、ディスク装着部３にセットし、電源スイッチ５を操作することにより、ゲーム機本体２の電源をオンにする。これにより、ゲーム機本体２においては、ゲームのための画像および音声が再生されるので、ユーザは、操作装置１７を操作することによりゲームを行う。
【００２７】
次に、図５は、図１のゲーム機本体２の電気的構成例を示している。
【００２８】
このゲーム機本体２は、各ブロックにおいてデータをやりとりするためのバスとして、メインバス１０１およびサブバス１０２の２種類のバスを有しており、このメインバス１０１とサブバス１０２とは、バスコントローラ１１６を介して接続されている。
【００２９】
メインバス１０１には、バスコントローラ１１６の他、例えばマイクロプロセッサなどからなるメインＣＰＵ（Central Processing Unit）１１１、例えばＲＡＭ（Random Access Memory）などでなるメインメモリ１１２、メインＤＭＡＣ（Direct Memory Access Controller）１１３、ＭＤＥＣ（MPEG Decorder）、およびＧＰＵ１１５が接続されている。
【００３０】
サブバス１０２には、バスコントローラ１１６の他、ＧＰＵ１１５、例えばメインＣＰＵ１１１と同様に構成されるサブＣＰＵ１２１、例えばメインメモリ１１２と同様に構成されるサブメモリ１２２、サブＤＭＡＣ１２３、オペレーティングシステムなどが格納されたＲＯＭ（Read Only Memory）１２４、ＳＰＵ（Sound Processing Unit）１２５、ＡＴＭ（Asynchronous Transmission Mode）通信部１２６、補助記憶装置１２７、および入力デバイス用Ｉ／Ｆ（Interface）１２８が接続されている。
【００３１】
なお、ここでは、メインバス１０１では、高速でデータのやりとりが行われるようになされており、サブバス１０２では、低速でデータのやりとりが行われるようになされている。即ち、低速でやりとりが可能なデータについては、サブバス１０２を用いることで、メインバス１０１の高速性を確保するようになされている。
【００３２】
バスコントローラ１１６は、メインバス１０１とサブバス１０２とを切り離したり、メインバス１０１にサブバス１０２を接続したりするようになされている。メインバス１０１とサブバス１０２とが切り離された場合、メインバス１０１上からは、メインバス１０１に接続されたデバイスのみにしかアクセスできず、また、サブバス１０２上からも、サブバスに接続されたデバイスのみにしかアクセスすることができないが、メインバス１０１にサブバス１０２が接続された場合には、メインバス１０１およびサブバス１０２のいずれからであっても、いずれのデバイスにもアクセスすることができる。なお、例えば、装置の電源がオンにされた直後などの初期状態においては、バスコントローラ１１６はオープン状態になっている（メインバス１０１とサブバス１０２とが接続された状態となっている）。
【００３３】
メインＣＰＵ１１１は、メインメモリ１１２に記憶されたプログラムにしたがって各種の処理を行うようになされている。即ち、メインＣＰＵ１１１は、例えば、装置が起動されると、バスコントローラ１１６を介して、サブバス１０２上にある（サブバス１０２に接続された）ＲＯＭ１２４からブートプログラムを読み出して実行する。これにより、メインＣＰＵ１１１は、補助記憶装置１２７からアプリケーションプログラム（ここでは、ゲームのプログラム）および必要なデータを、メインメモリ１１２やサブメモリ１１２にロードさせる。そして、メインＣＰＵ１１１は、このようにしてメインメモリ１１２にロードさせたプログラムを実行する。
【００３４】
メインＣＰＵ１１１は、ＧＴＥ（Geometry Transfer Engine）１１７を内蔵しており、このＧＴＥ１１７は、例えば複数の演算を並列に実行する並列演算機構を備え、メインＣＰＵ１１１からの要求に応じて、座標変換や、光源計算、行列演算、ベクトル演算などのジオメトリ処理を高速に行うようになされている。このように、ＧＴＥ１１７は、メインＣＰＵ１１１からの要求にしたがった処理（ジオメトリ処理）を行うことにより、表示すべき画像を構成するポリゴンのデータ（以下、適宜、ポリゴンデータという）を生成し、メインＣＰＵ１１１に供給する。メインＣＰＵ１１１は、ＧＴＥ１１７からポリゴンデータを受信すると、各ポリゴンデータをパケット化し、メインバス１０１を介して、ＧＰＵ１１５に転送する。
【００３５】
なお、メインＣＰＵ１１１は、キャッシュメモリ（Cache）１１９を内蔵しており、メインメモリ１１２にアクセスする代わりに、このキャッシュメモリ１１９にアクセスすることで、処理の高速化を図るようになされている。
【００３６】
メインメモリ１１２は、上述したように、プログラムなどを記憶する他、メインＣＰＵ１１１の動作上必要なデータなども記憶するようにもなされている。メインＤＭＡＣ１１３は、メインバス１０１上のデバイスを対象に、ＤＭＡ転送の制御を行うようになされている。但し、バスコントローラ１１６がオープン状態にあるときは、メインＤＭＡＣ１１３は、サブバス１０２上のデバイスをも対象として制御を行うようになされている。ＭＤＥＣ１１４は、メインＣＰＵ１１１と並列に動作可能なＩ／Ｏデバイスで、画像伸張エンジンとして機能するようになされている。即ち、ＭＤＥＣ１１４は、ＭＰＥＧ（Moving Picture Experts Group）符号化されて圧縮された画像データを復号化するようになされている。
【００３７】
ＧＰＵ（Graphic Processing Unit）１１５は、レンダリングプロセッサおよびＣＲＴＣ（CRT Controler）として機能するようになされている。即ち、ＧＰＵ１１５は、メインＣＰＵ１１１またはＰＰＰ１２０から送信されてくるパケットを受信し、そのパケットにポリゴンデータとして配置されている、例えば、ポリゴンの頂点の色データと奥行き（視点からの深さ）を示すＺ値に基づいて、ポリゴンに対応する画像データを、ＶＲＡＭ１１８に書き込む（描画する）レンダリング処理を行うようになされている。さらに、ＧＰＵ１１５は、ＶＲＡＭ１１８に書き込んだ画像データを読み出し、例えば、ＮＴＳＣ方式などに準拠したビデオ信号として出力するようにもなされている。なお、ＧＰＵ１１５は、必要に応じて、メインＤＭＡＣ１１３、あるいはサブバス１０２上のデバイスからもパケットを受信し、そのパケットに配置されている画像データを、ＶＲＡＭ１１８に書き込むようにもなされている。また、ＧＰＵ１１５は、必要に応じて、ＶＲＡＭ１１８に記憶されている画像データを読み出し、サブバス１０２上のデバイスに転送するようにもなされている。
【００３８】
ＶＲＡＭ１１８は、ＧＰＵ１１５から供給される画像データを記憶するようになされている。なお、ＶＲＡＭ１１８に記憶された画像データは、上述したように、ＧＰＵ１１５により読み出されるようになされている。
【００３９】
なお、ＶＲＡＭ１１８としては、例えば、複数フレーム分の記憶容量を有するＤＲＡＭ（Dynamic RAM）などを用いることができ、この場合、あるフレームの画像データの書き込みを行っているときに、他のフレームの画像データの読み出しを行うようにすることができ、これにより、処理の高速化を図ることができる。
【００４０】
サブＣＰＵ１２１は、サブメモリ１２２に記憶されたプログラムを読み出して実行することにより、各種の処理を行うようになされている。サブメモリ１２２には、メインメモリ１１２と同様に、プログラムや必要なデータが記憶されるようになされている。サブＤＭＡＣ１２３は、サブバス１０２上のデバイスを対象として、ＤＭＡ転送の制御を行うようになされている。なお、サブＤＭＡＣ１２３は、バスコントローラ１１６がクローズ状態にあるとき（メインバス１０１とサブバス１０２とが切り離されている状態にあるとき）のみ、バス権を獲得するようになされている。ＲＯＭ１２４は、上述したようにブートプログラムや、オペレーティングシステムなどを記憶している。なお、ＲＯＭ１２４には、メインＣＰＵ１１１およびサブＣＰＵ１２１の両方のプログラムが記憶されている。また、ＲＯＭ１２４は、ここでは、アクセス速度の遅いものが用いられており、そのため、サブバス１０２上に設けられている。
【００４１】
ＳＰＵ１２５は、サブＣＰＵ１２１またはサブＤＭＡＣ１２３から送信されてくるパケットを受信し、そのパケットに配置されているサウンドコマンドにしたがって、サウンドメモリ１２９から音声データを読み出すようになされている。そして、ＳＰＵ２５は、読み出した音声データを、図示せぬスピーカに供給して出力させるようになされている。ＡＴＭ通信部１２６は、例えば、図示せぬ公衆回線などを介して行われる通信の制御（ＡＴＭ通信の制御）を行うようになされている。これにより、ビデオゲーム機のユーザは、他のビデオゲーム機のユーザと直接、あるいは所定のセンタ局を介してデータのやりとりをすることで対戦することができるようになされている。
【００４２】
補助記憶装置１２７は、例えば、ディスクドライブなどで、ＣＤ−ＲＯＭ５１（図１、図４）に記録されている情報（プログラム、データ）を再生するようになされている。また、補助記憶装置１２７は、記録装置３８（図１）に対する情報の記録や読み出しも行うようになされている。入力デバイス用Ｉ／Ｆ１２８は、コントロールパッドとしての操作装置１７（図１）の操作に対応する信号や、他の装置によって再生された画像や音声などの外部入力を受け付けるためのインターフェイスで、外部からの入力に応じた信号を、サブバス１０２上に出力するようになされている。サウンドメモリ１２９は、音声データを記憶している。
【００４３】
以上のように構成されるゲーム機本体２においては、装置の電源がオンにされると、メインＣＰＵ１１１において、ブートプログラムがＲＯＭ１２４から読み出されて実行されることにより、補助記憶装置１２７にセットされたＣＤ−ＲＯＭ５１からプログラムおよびデータが読み出され、メインメモリ１１２およびサブメモリ１２２に展開される。そして、メインＣＰＵ１１１またはサブＣＰＵ１２１それぞれにおいて、メインメモリ１１２またはサブメモリ１２２に展開されたプログラムが実行されることにより、ゲームの画像、音声が再生される。
【００４４】
即ち、例えば、メインＣＰＵ１１１において、メインメモリ１１２に記憶されたデータにしたがって、所定の３次元画像を構成するポリゴンを描画するためのポリゴンデータが生成される。このポリゴンデータは、パケット化され、メインバス１０１を介してＧＰＵ１１５に転送される。
【００４５】
ＧＰＵ１１５は、メインＣＰＵ１１１からパケットを受信すると、そのパケットに配置されたポリゴンデータにしたがい、ＶＲＡＭ１１８に対して、ポリゴンの描画を行う。ＶＲＡＭ１１８に対する描画結果は、ＧＰＵ１１５において適宜読み出され、ビデオ信号として出力される。これにより、ゲームの画面（画像）が表示される。
【００４６】
一方、サブＣＰＵ１２１では、サブメモリ１２２に記憶されたデータにしたがって、音声の生成を指示するサウンドコマンドが生成される。このサウンドコマンドは、パケット化され、サブバス１０２を介して、ＳＰＵ１２５に供給される。ＳＰＵ１２５は、サブＣＰＵ１２１からのサウンドコマンドにしたがって、サウンドメモリ１２９から音声データを読み出して出力する。これにより、ゲームのＢＧＭ（Background Music）その他の音声が出力される。
【００４７】
次に、図６は、図５のＧＰＵ１１５の構成例を示している。
【００４８】
制御部２０２は、低速同期アクセス制御回路２０４、高速同期アクセス制御回路２０５、および低速ランダムアクセス制御回路２０８を制御するようになされている。制御レジスタ２０３は、制御部２０２の動作上必要なデータを記憶するようになされている。
【００４９】
低速同期アクセス制御回路２０４（第１の転送制御手段）は、ラインバッファ２０６に記憶された画像データを、Ｄ／Ａ変換器２１４を介して、表示装置としてのＣＲＴ２１５に、低速で転送するための制御（低速同期アクセスの制御）を行うようになされている。
【００５０】
高速同期アクセス制御回路２０５（読み出し制御手段）（書き込み制御手段）は、ＶＲＡＭ１１８に記憶された画像データの高速読み出しを制御するようになされている。また、高速同期アクセス制御回路２０５は、ラインバッファ２０７に、サブバス１０２を介して書き込まれた画像データを、ＶＲＡＭ１１８に書き込む制御も行うようになされている。
【００５１】
ラインバッファ２０６（第１の記憶手段）および２０７（第２の記憶手段）は、高速同期アクセス制御回路２０５によって、ＶＲＡＭ１１８から読み出された画像データを記憶するようになされている。なお、ラインバッファ２０７は、双方向性を有し、これにより、上述したように、サブバス１０２を介して供給される画像データを記憶するようにもなされており、この画像データは、高速同期アクセス制御回路２０５によって、ＶＲＡＭ１１８に書き込まれるようになされている。
【００５２】
低速ランダムアクセス制御回路２０８（第２の転送制御手段）は、ラインバッファ２０７に記憶された画像データを、サブバス１０２を介して転送し、また、サブバス１０２上に出力された画像データを、ラインバッファ２０７に転送して記憶させるようになされている。即ち、これにより、サブバス１０２上のデバイスとＶＲＡＭ１１８との間においては、ラインバッファ２０７を介して、低速ランダムアクセスによるデータの転送を行うことができるようになされている。
【００５３】
ここで、以上のブロックが準同期制御系を構成しており、また、制御部２０２、制御レジスタ２０３、低速同期アクセス制御回路２０４、高速同期アクセス制御回路２０５、およびラインバッファ２０６が、ＣＲＴ２１５の表示制御を行うＰＣＲＴＣ（Programable CRT Controler）２０１を構成している。
【００５４】
レンダリングエンジン２０９は、メインバス１０１を介して転送されてくるパケットを受信して、レンダリング処理、即ち、ＶＲＡＭ１１８に対する画像データの書き込みを行うようになされている。高速ランダムアクセス制御回路２１０（高速転送制御手段）は、レンダリングエンジン２０９からＶＲＡＭ１１８に対しての、画像データの高速転送を制御するようになされている。即ち、これにより、レンダリングエンジンとＶＲＡＭ１１８との間においては、高速ランダムアクセスによるデータの転送を行うことができるようになされている。
【００５５】
同期信号発生回路２１１は、例えば、ＮＴＳＣ方式のテレビジョン信号における水平同期信号および垂直同期信号を発生し、水平同期信号をＨカウンタ２１２に、垂直同期信号をＶカウンタ２１３に、それぞれ供給するようになされている。Ｈカウンタ２１２は、同期信号発生回路２１１からの水平同期信号をカウントするようになされている。Ｖカウンタ２１３は、Ｈカウンタ２１２のカウント動作に同期して動作し、同期信号発生回路２１１からの垂直同期信号をカウントするようになされている。Ｈカウンタ２１２およびＶカウンタ２１３におけるカウント値は、ＰＣＲＴＣ２０１に供給されるようになされている。なお、ＰＣＲＴＣ２０１の制御部２０２では、これらのカウント値に基づいて、ＶＲＡＭ１１８から読み出すべき画像データが認識され、その画像データを、Ｄ／Ａ変換器２１４を介してＣＲＴ２１５に転送するように、低速同期アクセス制御回路２０４および高速同期アクセス制御回路２０５が制御される。
【００５６】
Ｄ／Ａ変換器２１４は、ラインバッファ２０６から転送されてくる画像データをＤ／Ａ変換することでアナログ信号とし、ＣＲＴ２１５に供給するようになされている。ＣＲＴ２１５は、Ｄ／Ａ変換器２１４の出力に対応した画像（画面）を表示するようになされている。
【００５７】
なお、上述の図５においては、同期信号発生回路２１１、Ｈカウンタ２１２、Ｖカウンタ２１３、Ｄ／Ａ変換器２１４、およびＣＲＴ２１５の図示は省略してある。
【００５８】
以上のように構成されるＧＰＵ１１５では、レンダリングエンジン２０９において、メインバス１０１を介して、メインＣＰＵ１１１またはメインＤＭＡＣ１１３より供給されるパケットが受信され、そのパケットに基づいて、ＶＲＡＭ１１８に画像データが書き込まれる。このとき、レンダリングエンジン２０９からＶＲＡＭ１１８に対して高速ランダムアクセスが行われることにより、画像データが転送されるが、この高速ランダムアクセスの制御が、高速ランダムアクセス制御回路２１０によって行われる。
【００５９】
一方、Ｈカウンタ２１２またはＶカウンタ２１３では、同期信号発生回路２１１が発生する水平同期信号または垂直同期信号それぞれがカウントされ、そのカウント値が、制御部２０２に供給される。制御部２０２は、Ｈカウンタ２１２およびＶカウンタ２１３からのカウント値に基づいて、ＶＲＡＭ１１８から読み出すべき画像データを決定し、低速同期アクセス制御回路２０４および高速同期アクセス制御回路２０５を制御する。
【００６０】
これにより、高速同期アクセス制御回路２０５は、制御部２０２の制御にしたがって、ＶＲＡＭ１１８に高速同期アクセスし、そこから画像データを読み出す。さらに、高速同期アクセス制御回路２０５は、読み出した画像データを、ラインバッファ２０６に供給して記憶させる。そして、低速同期アクセス制御回路２０４は、ラインバッファ２０６に記憶された画像データを読み出し、Ｄ／Ａ変換器２１４を介して、ＣＲＴ２１５に供給する。これにより、ＣＲＴ２１５においては、ＶＲＡＭ１１８から読み出された画像データに対応する画面表示が行われる。
【００６１】
ところで、図６のＧＰＵ１１５においては、レンダリングエンジンによるＶＲＡＭ１１８への高速ランダムアクセスとは独立に、画面表示のために行われるＶＲＡＭ１１８への低速同期アクセス（表示アクセス）と同様の制御により、ＶＲＡＭ１１８に低速ランダムアクセスし、これにより、サブバス１０２上のデバイスとしての外部メディア２２１（表示装置以外の外部装置）（本実施例においては、ＡＴＭ通信部１２６や、補助記憶装置１２７、入力デバイス用Ｉ／Ｆ１２８など）から供給される画像データ（例えば、テクスチャデータや、動画データ、ＭＰＥＧ方式に準拠した画像データ、ビデオカメラで撮影された画像データや、ビデオテープレコーダによって再生された画像データなど）を、ＶＲＡＭ１１８に書き込むことができるようになされている。また、同様にして、ＶＲＡＭ１１８に記憶された画像データを読み出し、外部メディア２２１に供給することができるようになされている。
【００６２】
なお、低速同期アクセス（表示アクセス）は、同期信号発生回路２１１が出力する同期信号（水平同期信号および垂直同期信号）を、いわばトリガとして行われるのに対し、低速ランダムアクセスは、サブバス１０２上のバスマスタ２２２（本実施例においては、例えば、サブＣＰＵ１２１や、サブＤＭＡＣ１２３など）に対する、例えば割り込みをトリガとして行われる。
【００６３】
即ち、低速ランダムアクセス制御回路２０８は、バスマスタ２２２に対して割り込み信号を出力するようになされており、バスマスタ２２２は、割り込み信号を受信すると、外部メディア２２１を制御し、画像データを、サブバス１０２上に出力させる。さらに、バスマスタ２２２は、低速ランダムアクセス制御回路２０８を制御し、外部メディア２２１が出力した画像データを、ラインバッファ２０７に低速転送させる。ラインバッファ２０７に記憶された画像データは、高速同期アクセス制御回路２０５の制御の下、ＶＲＡＭ１１８に転送されて記憶される。
【００６４】
以上のようにして、ＶＲＡＭ１１８に記憶された、外部メディア２２１が出力した画像データは、レンダリングエンジン２０９によってＶＲＡＭ１１８に書き込まれた画像データと同様に読み出され、ラインバッファ２０６およびＤ／Ａ変換器２１４を介してＣＲＴ２１５に供給されて表示される。
【００６５】
なお、低速ランダムアクセスは、割り込みの他、例えば、ポーリング処理によるフラグ（例えば、バッファフルを示すフラグなど）チェックを行い、そのチェックの結果をトリガとして行うようにすることなども可能である。
【００６６】
また、上述の場合においては、外部メディア２２１が出力する画像データを、ＶＲＡＭ１１８に転送するようにしたが、その逆に、ＶＲＡＭ１１８に記憶された画像データを、外部メディア２２１に転送するようにすることも可能である。即ち、この場合、高速同期アクセス制御回路２０５において、ＶＲＡＭ１１８から画像データが読み出され、ラインバッファ２０７に供給されて記憶される。ラインバッファ２０７に記憶された画像データは、低速ランダムアクセス制御回路２０８の制御の下、サブバス１０２を介して外部メディア２２１に低速転送される。
【００６７】
次に、図７は、高速ランダムアクセス制御回路２１０が行う高速ランダムアクセス（図７（Ａ））、高速同期アクセス制御回路２０５が行う高速同期アクセス（図７（Ｂ））、低速同期アクセス制御回路２０４が行う低速同期アクセス（表示アクセス）（図７（Ｃ））、および低速ランダムアクセス制御回路２０８が行う低速ランダムアクセス（図７（Ｄ））のタイミングを示している。
【００６８】
高速ランダムアクセス制御回路２１０においては、レンダリングエンジン２０９がＶＲＡＭ１１８に画像データの書き込みを行う場合に、標準アクセスとしての高速ランダムアクセスの制御が行われる（図７（Ａ））。但し、高速ランダムアクセスは、高速同期アクセス制御回路２０５において高速同期アクセスの制御（図７（Ｂ））が行われている期間を除くタイミングで行われる。
【００６９】
一方、低速同期アクセスは、高速ランダムアクセスとは独立に、同期信号発生回路２１１が同期信号を出力するタイミングに同期して周期的に行われ（図７（Ｃ））、また、低速ランダムアクセスも、高速ランダムアクセスとは独立に行われる（図７（Ｄ））。さらに、低速同期アクセスと低速ランダムアクセスも、それぞれ独立に行われる。
【００７０】
以上のように、低速同期アクセス（表示アクセス）と同様の低速ランダムアクセスを、高速ランダムアクセスとは独立に行うことができるので、この低速ランダムアクセスを、例えば、低速なメディアが、ＶＲＡＭ１１８に分散してアクセスする場合や、また、ＶＲＡＭ１１８に対してビデオレート程度の低速レートで書き込みを行う場合などに用いることで、そのような処理を行うために、高速ランダムアクセスが妨げられることを防止することができ、その結果、装置の処理性能を向上させることが可能となる。
【００７１】
さらに、低速ランダムアクセスを行う場合において、ＶＲＡＭ１１８に対する画像データの書き込みおよび読み出しを、低速同期アクセス（ラインバッファ２０６を用いて行われる表示アクセス）における場合と同様にラインバッファ２０７を介して行うようにしたので、ラインの集まりで構成される矩形の画像の取扱いが容易となる。
【００７２】
以上、本発明を、ビデオゲーム機に適用した場合について説明したが、本発明は、その他、画像に特殊効果を与えるエフェクタや、ＣＡＤなどのコンピュータグラフィックス処理を行う装置その他に適用可能である。
【００７３】
また、本実施例においては、表示アクセス（低速同期アクセス）のためのラインバッファとして、１つのラインバッファ２０６だけを設けるようにしたが、この表示アクセスのためのラインバッファは、複数設けるようにすることが可能である。同様に、ラインバッファ２０７についても複数設けるようにすることが可能である。
【００７４】
さらに、本実施例においては、低速同期アクセスまたは低速ランダムアクセスのための記憶手段として、それぞれラインバッファ２０６または２０７を設けるようにしたが、この記憶手段は、ラインバッファに限定されるものではない。
【００７５】
【発明の効果】
請求項１に記載のデータ転送装置によれば、高速転送制御手段において、表示装置に表示させる画像データの、メモリへの高速転送が制御されるとともに、第１の転送制御手段において、第１の記憶手段に記憶された画像データの、表示装置への低速転送が制御される。さらに、第２の転送制御手段において、外部装置からの画像データの、第２の記憶手段への低速転送が制御される。従って、高速転送制御手段による高速転送制御、第１の転送制御手段による低速転送制御、および第２の転送制御手段による低速転送制御を独立に行うことで、装置の処理性能を向上させることが可能となる。
【００７６】
請求項５に記載のデータ転送方法によれば、表示装置に表示させる画像データの、メモリへの高速転送と、第１の記憶手段に記憶された画像データの、表示装置への低速転送と、外部装置からの画像データの、第２の記憶手段への低速転送とが独立に制御される。従って、装置の処理性能を向上させることが可能となる。
【図面の簡単な説明】
【図１】本発明を適用したビデオゲーム機の一実施例の構成を示す平面図である。
【図２】図１のビデオゲーム機の正面図である。
【図３】図１のビデオゲーム機の側面図である。
【図４】ＣＤ−ＲＯＭ５１を示す平面図である。
【図５】図１のゲーム機本体２の電気的構成例を示すブロック図である。
【図６】図５のＧＰＵ１１５の構成例を示すブロック図である。
【図７】高速ランダムアクセス、高速同期アクセス、低速同期アクセス（表示アクセス）、および低速ランダムアクセスのタイミングを示すタイミングチャートである。
【符号の説明】
１０１  メインバス，  １０２  サブバス，  １１１  メインＣＰＵ，  １１２  メインメモリ，  １１３  メインＤＭＡＣ，  １１４  ＭＤＥＣ，  １１５ＧＰＵ，  １１６  バスコントローラ，  １１７  ＧＴＥ，  １１８  ＶＲＡＭ，  １２１  サブＣＰＵ，  １２２  サブメモリ，  １２３  サブＤＭＡＣ，１２４  ＲＯＭ，  １２５  ＳＰＵ，  １２６  サウンドメモリ，  １２７  補助記憶装置，  １２８  入力デバイス用Ｉ／Ｆ，  ２０１  ＰＣＲＴＣ，  ２０２  制御部，  ２０３  制御レジスタ，  ２０４  低速同期アクセス制御回路（第１の転送制御手段），  ２０５  高速同期アクセス制御回路（読み出し制御手段）（書き込み制御手段），  ２０６，２０７  ラインバッファ（第１の記憶手段）（第２の記憶手段），  ２０８  低速ランダムアクセス制御回路（第２の転送制御手段），  ２０９  レンダリングエンジン，  ２１０  高速ランダムアクセス制御回路（高速転送制御手段），  ２１１  同期信号発生回路，  ２１２Ｈカウンタ，  ２１３  Ｖカウンタ，  ２１４  Ｄ／Ａ変換器，  ２１５  ＣＲＴ，  ２２１  外部メディア，  ２２２  バスマスタ
【図１】
0003758753.tif 000002
【図２】
0003758753.tif 000003
【図３】
0003758753.tif 000004
【図４】
0003758753.tif 000005
【図５】
0003758753.tif 000006
【図６】
0003758753.tif 000007
【図７】
0003758753.tif 000008