(57)【特許請求の範囲】
【請求項１】
半導体チップの外部の演算処理回路から第１の画像データを入力し、前記半導体チップの外部の外部記憶回路から第２の画像データを入力する第１のインタフェースと、
半導体記憶回路と、
前記第１の画像データと、前記第２の画像データと、前記半導体記憶回路から読み出された第３の画像データとのうち一つを選択して出力する選択回路と、
前記選択回路から入力した画像データの画像処理を行って画像データを生成および出力する処理、並びに前記選択回路から入力した画像データを出力する処理のうち一方を選択して行う画像処理回路と、
前記画像処理回路から入力した画像データを前記半導体記憶回路に出力する第２のインタフェースと
を有し、
前記第１のインタフェース、前記半導体記憶回路、前記選択回路、前記画像処理回路および前記第２のインタフェースが同一の前記半導体チップ内に構成されている
画像処理装置。
【請求項２】
前記第１の画像データを画像処理して前記半導体記憶回路に書き込む場合に、前記選択回路が前記第１の画像データを選択し、前記画像処理回路が前記第１の画像データの前記画像処理を行うように制御する制御回路
をさらに有する請求項１に記載の画像処理装置。
【請求項３】
転送過程で画像処理を行わずに前記外部記憶回路から前記半導体記憶回路に画像データを転送する場合に、前記選択回路が前記第２の画像データを選択し、前記画像処理回路が前記選択回路から入力した前記第２の画像データを出力するように制御する制御回路
をさらに有する請求項１に記載の画像処理装置。
【請求項４】
転送過程で画像処理を行って前記外部記憶回路から前記半導体記憶回路に画像データを転送する場合に、前記選択回路が前記第２の画像データを選択し、前記画像処理回路が前記選択回路から入力した前記第２の画像データを画像処理して出力するように制御する制御回路
をさらに有する請求項１に記載の画像処理装置。
【請求項５】
転送過程で画像処理を行わずに前記半導体記憶回路内で画像データを転送する場合に、前記選択回路が前記第３の画像データを選択し、前記画像処理回路が前記選択回路から入力した前記第３の画像データを出力するように制御する制御回路
をさらに有する請求項１に記載の画像処理装置。
【請求項６】
転送過程で画像処理を行って前記外部記憶回路から前記半導体記憶回路に画像データを転送する場合に、前記選択回路が前記第３の画像データを選択し、前記画像処理回路が前記選択回路から入力した前記第３の画像データを画像処理して出力するように制御する制御回路
をさらに有する請求項１に記載の画像処理装置。
【請求項７】
前記第２のインタフェースは、前記半導体記憶回路の書き込みアドレスから読み出された画像データを、書き込みを行う前に入力して前記画像処理回路に出力し、
前記画像処理回路は、前記第２のインタフェースから入力した画像データと、前記選択回路から入力した画像データとを用いて画像処理を行って画像データを生成および出力する
請求項１に記載の画像処理装置。
【請求項８】
前記演算処理回路が出力した画像データをテクスチャ処理して前記第１の画像データとして前記第１のインタフェースに出力するテクスチャ処理回路
をさらに有する
請求項１に記載の画像処理装置。
【請求項９】
前記画像処理回路は、前記選択回路から入力した画像データと、前記第２のインタフェースから入力した画像データとを用いてαブレンディング処理を行う
請求項７に記載の画像処理装置。
【請求項１０】
半導体チップの外部の演算処理回路から第１の画像データを入力し、前記半導体チップの外部の外部記憶回路から第２の画像データを入力するインタフェースと、
半導体記憶回路と、
前記第２の画像データと、前記半導体記憶回路から読み出された第３の画像データとうち一方を選択して出力する第１の選択回路と、
前記第１の画像データと、前記第１の選択回路で選択された画像データとのうち一方を選択して出力する第２の選択回路と、
前記第２の選択回路から入力した画像データの画像処理を行って画像データを生成する画像処理回路と、
前記画像処理回路で生成された前記画像データと、前記第１の選択回路で選択して出力された前記画像データとのうち一方を選択して出力して前記半導体記憶回路に出力する第３の選択回路と
を有し、
前記インタフェース、前記半導体記憶回路、前記第１の選択回路、前記第２の選択回路、前記第３の選択回路および前記画像処理回路が同一の前記半導体チップ内に構成されている
画像処理装置。
【請求項１１】
前記画像処理回路は、前記半導体記憶回路の書き込みアドレスから読み出された画像データと、前記第２の選択回路から入力した画像データとを用いて画像処理を行って画像データを生成および出力する
請求項１０に記載の画像処理装置。
【請求項１２】
前記画像処理回路は、αブレンディング処理を行う
請求項１１に記載の画像処理装置。
【請求項１３】
前記演算処理回路が生成した画像データをテクスチャ処理して前記第１の画像データとして前記第１のインタフェースに出力するテクスチャ処理回路
をさらに有する
請求項１０に記載の画像処理装置。
【請求項１４】
演算処理回路と、
外部記憶回路と、
レンダリング回路と
を有し、
前記レンダリング回路は、
前記演算処理回路から第１の画像データを入力し、前記外部記憶回路から第２の画像データを入力する第１のインタフェースと、
半導体記憶回路と、
前記第１の画像データと、前記第２の画像データと、前記半導体記憶回路から読み出された第３の画像データとのうち一つを選択して出力する選択回路と、
前記選択回路から入力した画像データの画像処理を行って画像データを生成および出力する処理、並びに、前記選択回路から入力した画像データを出力する処理のうち一方を選択して行う画像処理回路と、
前記画像処理回路から入力した画像データを前記半導体記憶回路に出力する第２のインタフェースと
を有し、
前記第１のインタフェース、前記半導体記憶回路、前記選択回路、前記画像処理回路および前記第２のインタフェースが同一の前記半導体チップ内に構成されている
画像処理装置。
【請求項１５】
演算処理回路と、
外部記憶回路と、
レンダリング回路と
を有し、
前記レンダリング回路は、
前記演算処理回路から第１の画像データを入力し、前記外部記憶回路から第２の画像データを入力するインタフェースと、
半導体記憶回路と、
前記第２の画像データと、前記半導体記憶回路から読み出された第３の画像データとうち一方を選択して出力する第１の選択回路と、
前記第１の画像データと、前記第１の選択回路で選択された画像データとのうち一方を選択して出力する第２の選択回路と、
前記第２の選択回路から入力した画像データの画像処理を行って画像データを生成する画像処理回路と、
前記画像処理回路で生成された前記画像データと、前記第１の選択回路で選択して出力された前記画像データとのうち一方を選択して出力して前記半導体記憶回路に出力する第３の選択回路と
を有し、
前記インタフェース、前記半導体記憶回路、前記第１の選択回路、前記第２の選択回路、前記第３の選択回路および前記画像処理回路が同一の前記半導体チップ内に構成されている
画像処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
【発明の属する技術分野】
本発明は、画像処理装置に関し、メモリ間での画像データの転送処理に特徴を有する画像処理装置に関する。
【０００２】
【従来の技術】
種々のＣＡＤ(Computer Aided Design) システムや、アミューズメント装置などにおいて、コンピュータグラフィックスがしばしば用いられている。特に、近年の画像処理技術の進展に伴い、３次元コンピュータグラフィックスを用いたシステムが急速に普及している。
このような３次元コンピュータグラフィックスは、膨大な画像データをリアルタイムに処理するため、ＤＲＡＭなどの記憶回路に頻繁にアクセスを行う。
そのため、同一半導体チップ上にレンダリング回路とＤＲＡＭとを構築している。
レンダリング回路は、例えば、テクスチャ処理を行う回路としてテクスチャ回路の他に、αブレンド回路を有している。
αブレンド回路は、ＤＲＡＭへの画像データの書き込み時に、ピクセルデータ単位で、書き込みデータ（ソースデータ）と、書き込み先のアドレスから読み出したデータ（デスティネーションデータ）とを、ソースまたはデスティネーションのうち選択されたαデータを基に混合し、当該混合したデータを当該アドレスに書き込むαブレンディング処理を行う。
また、レンダリング回路は、ＤＲＡＭ内でデータをローカル転送するＤＲＡＭ内転送処理、並びに上記半導体チップの外部の外部メモリからのデータをＤＲＡＭ内に転送するホスト・ローカル間転送処理などのビットブリット(bitblt: bit block transfer)処理を行う。
従来のレンダリング回路では、上述したビットブリット処理でのデータ転送経路は、αブレンド回路とは独立して構成されている。
【０００３】
【発明が解決しようとする課題】
近年、画像処理の高速化の要請が高く、ビットブリット処理でのデータ転送過程で、αブレンディングなどの画像処理を行いたいという要請がある。
しかしながら、従来のレンダリング回路では、上述したように、ビットブリット処理でのデータ転送経路がαブレンド回路とは独立して構成されているため、上述した要請に応えられないという問題がある。
【０００４】
本発明は上述した従来技術の問題点に鑑みてなされ、ビットブリット処理過程で、αブレンディグなどの画像処理を行うことが可能な画像処理装置を提供することを目的とする。
【０００５】
【課題を解決するための手段】
上記の目的を達成するため、第１の発明の画像処理装置は、半導体チップの外部の演算処理回路から第１の画像データを入力し、前記半導体チップの外部の外部記憶回路から第２の画像データを入力する第１のインタフェースと、半導体記憶回路と、前記第１の画像データと、前記第２の画像データと、前記半導体記憶回路から読み出された第３の画像データとのうち一つを選択して出力する選択回路と、前記選択回路から入力した画像データの画像処理を行って画像データを生成および出力する処理、並びに、前記選択回路から入力した画像データを出力する処理のうち一方を選択して行う画像処理回路と、前記画像処理回路から入力した画像データを前記半導体記憶回路に出力する第２のインタフェースとを有し、前記第１のインタフェース、前記半導体記憶回路、前記選択回路、前記画像処理回路および前記第２のインタフェースが同一の前記半導体チップ内に構成されている。
【０００６】
第１の画像処理装置の作用は以下のようになる。
先ず、演算処理回路から入力された第１の画像データを画像処理して半導体記憶回路に書き込む場合の作用を説明する。
この場合には、演算処理回路からの第１の画像データが、第１のインタフェースに入力される。
そして、第１の選択回路が、当該第１の画像データを選択して画像処理回路に出力する。
そして、画像処理回路が、入力した第１の画像データを画像処理して第２のインタフェースに出力する。
そして、第２のインタフェースが、入力した第１の画像データを半導体記憶回路に出力する。
【０００７】
次に、外部記憶回路から半導体記憶回路に画像データを転送し、転送過程で画像処理を行わない場合の第１の発明の画像処理装置の作用を示す。
この場合には、第１のインタフェースが、当該画像処理装置の各構成要素が形成された半導体チップの外部の外部記憶回路から第２の画像データを入力する。
そして、選択回路が、上記入力された第２の画像データを選択して画像処理回路に出力する。
そして、画像処理回路が、前記選択回路から入力した画像データを画像処理を行うことなく出力する。
そして、第２のインタフェースが、前記画像処理回路から入力した画像データを半導体記憶回路に出力する。
【０００８】
次に、外部記憶回路から半導体記憶回路に画像データを転送し、転送過程で画像処理を行う場合の第１の発明の画像処理装置の作用を示す。
この場合には、第１のインタフェースが、外部記憶回路から第２の画像データを入力する。
そして、選択回路が、上記入力された第２の画像データを選択して画像処理回路に出力する。
そして、画像処理回路が、前記選択回路から入力した第２の画像データを画像処理を行って出力する。
そして、第２のインタフェースが、前記画像処理回路から入力した第２の画像データを半導体記憶回路に出力する。
【０００９】
次に、半導体記憶回路内で画像データを転送し、転送過程で画像処理を行わない場合の第１の発明の画像処理装置の作用を説明する。
半導体記憶回路から読み出された第３の画像データが、選択回路に入力される。
そして、当該第３の画像データが、選択回路で選択されて画像処理回路に出力される。
そして、画像処理回路が、前記選択回路から入力した第３の画像データを画像処理を行うことなく出力する。
そして、第２のインタフェースが、前記画像処理回路から入力した画像データを半導体記憶回路に出力する。
【００１０】
次に、半導体記憶回路内で画像データを転送し、転送過程で画像処理を行う場合の第１の発明の画像処理装置の作用を説明する。
半導体記憶回路から読み出された第３の画像データが、選択回路に入力される。
そして、当該第３の画像データが、選択回路で選択されて画像処理回路に出力される。
そして、画像処理回路が、前記選択回路から入力した第３の画像データを画像処理を行って出力する。
そして、第２のインタフェースが、前記画像処理回路から入力した画像データを半導体記憶回路に出力する。
【００１１】
第１の発明の画像処理装置は、好ましくは、前記第２のインタフェースは、前記半導体記憶回路の書き込みアドレスから読み出された画像データを、書き込みを行う前に入力して前記画像処理回路に出力し、前記画像処理回路は、前記第２のインタフェースから入力した画像データと、前記選択回路から入力した画像データとを用いて画像処理を行って画像データを生成および出力する。
また、第１の発明の画像処理装置は、好ましくは、前記演算処理回路が生成した画像データをテクスチャ処理して前記第１の画像データとして出力するテクスチャ処理回路をさらに有する。
また、第１の発明の画像処理装置は、好ましくは、前記画像処理回路は、前記選択回路から入力した画像データと、前記第２のインタフェースから入力した画像データとを用いてαブレンディング処理を行う。
【００１２】
第２の発明の画像処理装置は、半導体チップの外部の演算処理回路から第１の画像データを入力し、前記半導体チップの外部の外部記憶回路から第２の画像データを入力するインタフェースと、半導体記憶回路と、前記第２の画像データと、前記半導体記憶回路から読み出された第３の画像データとうち一方を選択して出力する第１の選択回路と、前記第１の画像データと、前記第１の選択回路で選択された画像データとのうち一方を選択して出力する第２の選択回路と、前記第２の選択回路から入力した画像データの画像処理を行って画像データを生成する画像処理回路と、前記画像処理回路で生成された前記画像データと、前記第１の選択回路で選択して出力された前記画像データとのうち一方を選択して出力して前記半導体記憶回路に出力する第３の選択回路とを有し、前記インタフェース、前記半導体記憶回路、前記第１の選択回路、前記第２の選択回路、前記第３の選択回路および前記画像処理回路が同一の前記半導体チップ内に構成されている。
【００１３】
第２の発明の画像処理装置の作用は以下のようになる。
先ず、演算処理回路から入力された第１の画像データを画像処理して半導体記憶回路に書き込む場合の作用を説明する。
この場合には、演算処理回路からの第１の画像データが、インタフェースに入力される。
そして、第２の選択回路が、当該入力された第１の画像データを選択して画像処理回路に出力する。
そして、画像処理回路が、入力した第１の画像データを画像処理して第３の選択回路に出力する。
そして、第３の選択回路が、入力した第１の画像データを選択して半導体記憶回路に出力する。
【００１４】
次に、外部記憶回路から半導体記憶回路に画像データを転送し、転送過程で画像処理を行わない場合の第２の発明の画像処理装置の作用を示す。
外部記憶回路から入力された第２の画像データが、インタフェースを介して、第１の選択回路に入力される。
そして、第１の選択回路が、入力した第２の画像データを選択して第３の選択回路に出力する。
そして、第３の選択回路が、入力した第２の画像データを選択して半導体記憶回路に出力する。
【００１５】
次に、外部記憶回路から半導体記憶回路に画像データを転送し、転送過程で画像処理を行う場合の第２の発明の画像処理装置の作用を示す。
外部記憶回路から入力された第２の画像データが、インタフェースを介して、第１の選択回路に入力される。
そして、第１の選択回路が、入力した第２の画像データを選択して第２の選択回路に出力する。
そして、第２の選択回路が、入力した第２の画像データを選択して画像処理回路に出力する。
そして、画像処理回路が、入力した第２の画像データを画像処理して第３の選択回路に出力する。
そして、前記第３の選択回路が、画像処理された前記第２の画像データを選択して半導体記憶回路に出力する。
【００１６】
次に、半導体記憶回路内で画像データを転送し、転送過程で画像処理を行わない場合の第２の発明の画像処理装置の作用を説明する。
半導体記憶回路から読み出された画像データが、第１の選択回路に入力される。
そして、第１の選択回路が、当該入力した画像データを選択して第３の選択回路に出力する。
そして、第３の選択回路が、当該入力した画像データを選択して半導体記憶回路に出力する。
【００１７】
次に、半導体記憶回路内で画像データを転送し、転送過程で画像処理を行う場合の第２の発明の画像処理装置の作用を説明する。
半導体記憶回路から読み出された第３の画像データが、第１の選択回路に入力される。
そして、第１の選択回路が、当該入力した第３の画像データを選択して第２の選択回路に出力する。
そして、前記第２の選択回路が、当該入力した第３の画像データを選択して画像処理回路に出力する。
そして、画像処理回路が、当該入力した第３の画像データを画像処理して第３の選択回路に出力する。
そして、第３の選択回路が、当該入力した画像処理された第３の画像データを選択して半導体記憶回路に出力する。
【００１８】
第３の発明の画像処理装置は、演算処理回路と、外部記憶回路と、レンダリング回路とを有し、前記レンダリング回路は、前記演算処理回路から第１の画像データを入力し、前記外部記憶回路から第２の画像データを入力する第１のインタフェースと、半導体記憶回路と、前記第１の画像データと、前記第２の画像データと、前記半導体記憶回路から読み出された第３の画像データとのうち一つを選択して出力する選択回路と、前記選択回路から入力した画像データの画像処理を行って画像データを生成および出力する処理、並びに、前記選択回路から入力した画像データを出力する処理のうち一方を選択して行う画像処理回路と、前記画像処理回路から入力した画像データを前記半導体記憶回路に出力する第２のインタフェースとを有し、前記第１のインタフェース、前記半導体記憶回路、前記選択回路、前記画像処理回路および前記第２のインタフェースが同一の前記半導体チップ内に構成されている。
第３の発明の画像処理装置は、第１の発明の画像処理装置と基本的に同じ作用を有する。
【００１９】
第４の発明の画像処理装置は、演算処理回路と、外部記憶回路と、レンダリング回路とを有し、前記レンダリング回路は、前記演算処理回路から第１の画像データを入力し、前記外部記憶回路から第２の画像データを入力するインタフェースと、半導体記憶回路と、前記第２の画像データと、前記半導体記憶回路から読み出された第３の画像データとうち一方を選択して出力する第１の選択回路と、前記第１の画像データと、前記第１の選択回路で選択された画像データとのうち一方を選択して出力する第２の選択回路と、前記第２の選択回路から入力した画像データの画像処理を行って画像データを生成する画像処理回路と、前記画像処理回路で生成された前記画像データと、前記第１の選択回路で選択して出力された前記画像データとのうち一方を選択して出力して前記半導体記憶回路に出力する第３の選択回路とを有し、前記インタフェース、前記半導体記憶回路、前記第１の選択回路、前記第２の選択回路、前記第３の選択回路および前記画像処理回路が同一の前記半導体チップ内に構成されている。
第４の発明の画像処理装置は、第２の発明の画像処理装置と基本的に同じ作用を有する。
【００２０】
【発明の実施の形態】
〔本発明の背景技術〕
先ず、本発明の背景となる画像処理装置について説明する。
図１は、本発明の背景となる画像処理装置３０１の構成図である。
図１に示すように、画像処理装置３０１は、例えば、ＣＰＵ３１１、メインメモリ３１２、ビデオ処理系３３９およびレンダリング回路３１４を有する。
レンダリング回路３１４は、メモリＩ／Ｆ回路３４４およびＤＲＡＭ３４７を有する。
なお、図示しないが、メモリＩ／Ｆ回路３４４の前段には、ＣＰＵ３１１との間にテクスチャ処理回路などがある。
レンダリング回路３１４は、例えば、Ｉ／Ｆ３５０，３５１、セレクタ３５２、αブレンド回路３５３、セレクタ３５４およびＩ／Ｆ３５５を有する。
【００２１】
図１に示すように、画像処理装置３０１では、αブレンディング処理を行う場合に、ＣＰＵ３１１から出力された画像データが、テクスチャ処理などを経て、プリミティブデータＳ３１１となり、プリミティブデータＳ３１１がＩ／Ｆ３５０を介してαブレンド回路３５３に入力される。
また、ＤＲＡＭ３４７の書き込みアドレスから読み出された画像データであるディスティネーションデータＳ３４７ｂおよびαデータが、αブレンド回路３５３に入力される。
そして、αブレンド回路３５３において、プリミティブソースデータＳ３１１と、ディスティネーションデータＳ３４７ｂとが、αデータが示す混合比で混合されて画像データＳ３５３が生成される。
そして、画像データＳ３５３が、セレクタ３５４で選択され、Ｉ／Ｆ３５５を介して、ＤＲＡＭ３４７の書き込みアドレスに書き込まれる。
【００２２】
また、画像処理装置３０１では、ＤＲＡＭ３４７内でデータをローカル転送するローカル転送処理（ビットブリット処理）を行う場合に、ＤＲＡＭ３４７の転送元アドレスから読み出された画像データが、Ｉ／Ｆ３５５を介してセレクタ３５２に入力され、セレクタ３５２で選択され、セレクタ３５４に出力される。さらに、当該画像データは、セレクタ３５４で選択され、Ｉ／Ｆ３５５を介して、ＤＲＡＭ３４７の転送先アドレスに書き込まれる。
【００２３】
また、画像処理装置３０１では、メインメモリ３１２からＤＲＡＭ３４７にデータを転送するホスト・ローカル間転送処理（ビットブリット処理）を行う場合に、メインメモリ３１２から読み出された画像データＳ３１２が、Ｉ／Ｆ３５０を介してセレクタ３５２に入力される。
そして、当該画像データＳ３１２が、セレクタ３５２で選択されてセレクタ３５４に出力される。さらに、当該画像データＳ３１２が、セレクタ３５４で選択され、Ｉ／Ｆ３５５を介して、ＤＲＡＭ３４７の転送先アドレスにに書き込まれる。
【００２４】
上述した画像処理装置３０１では、ビットブリット処理でのデータ転送経路がαブレンド回路３５３とは独立して構成されているため、ビットブリット処理によるデータ転送過程でαブレンディング処理を行うことができない。
【００２５】
第１実施形態
本実施形態は、第１および第３の発明に対応した実施形態である。
図２は、本実施形態の３次元コンピュータグラフィックスシステム１０のシステム構成図である。
３次元コンピュータグラフィックスシステム１０は、立体モデルを単位図形である三角形（ポリゴン）の組み合わせとして表現し、このポリゴンを描画することで表示画面の各画素の色を決定し、ディスプレイに表示するポリゴンレンダリング処理を行うシステムである。
また、３次元コンピュータグラフィックスシステム１０では、平面上の位置を表現する（ｘ，ｙ）座標の他に、奥行きを表すｚ座標を用いて３次元物体を表し、この（ｘ，ｙ，ｚ）の３つの座標で３次元空間の任意の一点を特定する。
【００２６】
図２に示すように、３次元コンピュータグラフィックスシステム１０は、例えば、ＣＰＵ１１、メインメモリ１２、Ｉ／Ｏインタフェース回路１３およびレンダリング回路１４が、メインバス１５を介して接続されている。
また、３次元コンピュータグラフィックスシステム１０は、ビデオ処理部１３９を有する。
ここで、３次元コンピュータグラフィックスシステム１０が第３の発明の画像処理装置に対応し、レンダリング回路１４が第１の発明の画像処理装置に対応している。
また、ＣＰＵ１１が本発明の演算処理回路に対応し、メインメモリ１２が本発明の外部記憶回路に対応している。
以下、各構成要素の機能について説明する。
【００２７】
ＣＰＵ１１は、たとえば、アプリケーションの進行状況などに応じて、メインメモリ１２から必要なグラフィックデータを読み出し、このグラフィックデータに対してクリッピング(Clipping)処理、ライティング(Lighting)処理などのジオメトリ(Geometry)処理などを行い、ポリゴンレンダリングデータを生成する。ＣＰＵ１１は、ポリゴンレンダリングデータＳ１１ｂを、メインバス１５を介してレンダリング回路１４に出力する。
また、ＣＰＵ１１は、レンダリング回路１４における画像処理を制御する。
具体的には、ＣＰＵ１１は、制御信号Ｓ１１ａを生成し、これをレンダリング回路１４に出力し、後述するように、レンダリング回路１４のメモリＩ／Ｆ回路１４４内のセレクタの選択切り換え、ビットブリット処理、並びにαブレンディング処理の有無などを制御する。
【００２８】
Ｉ／Ｏインタフェース回路１３は、必要に応じて、外部からポリゴンレンダリングデータなどを入力し、これをメインバス１５を介してレンダリング回路１４に出力する。
【００２９】
ここで、ポリゴンレンダリングデータは、ポリゴンの各３頂点の（ｘ，ｙ，ｚ，Ｒ，Ｇ，Ｂ，α，ｓ，ｔ，ｑ）のデータを含んでいる。
ここで、（ｘ，ｙ，ｚ）データは、ポリゴンの頂点の３次元座標を示し、（Ｒ，Ｇ，Ｂ，α）データは、それぞれ当該３次元座標における赤、緑、青の輝度値、並びにαブレンディング処理を行う際の混合値を示している。
（ｓ，ｔ，ｑ）データのうち、（ｓ，ｔ）は、対応するテクスチャの同次座標を示しており、ｑは同次項を示している。ここで、「ｓ／ｑ」および「ｔ／ｑ」に、それぞれテクスチャサイズＵＳＩＺＥおよびＶＳＩＺＥを乗じてテクスチャ座標データ（ｕ，ｖ）が得られる。テクスチャバッファ１４７ａに記憶されたテクスチャデータへのアクセスは、テクスチャ座標データ（ｕ，ｖ）を用いて行われる。
すなわち、ポリゴンレンダリングデータは、三角形の各頂点の物理座標値と、それぞれの頂点の色とテクスチャデータである。
【００３０】
以下、レンダリング回路１４について詳細に説明する。
図２に示すように、レンダリング回路１４は、ＤＤＡ(Digital DifferentialAnalyzerrizer) セットアップ回路１４１、トライアングルＤＤＡ回路１４２、テクスチャエンジン回路１４３、メモリインタフェース（Ｉ／Ｆ）回路１４４、ＣＲＴコントロール回路１４５、ＲＡＭＤＡＣ回路１４６、ＤＲＡＭ１４７およびＳＲＡＭ(Static RAM)１４８を有し、これが単体の半導体チップ上に構成されている。
すなわち、レンダリング回路１４は、ＤＲＡＭ混載構造を有している。
ここで、ＤＲＡＭ１４７が本発明の半導体記憶回路に対応している。
【００３１】
〔ＤＲＡＭ１４７〕
ＤＲＡＭ１４７は、テクスチャバッファ１４７ａ、ディスプレイバッファ１４７ｂ、ｚバッファ１４７ｃおよびテクスチャＣＬＵＴ(Color Look Up Table) バッファ１４７ｄとして機能する。
【００３２】
また、ＤＲＡＭ１４７には、より多くのテクスチャデータを格納するために、インデックスカラーにおけるインデックスと、そのためのカラールックアップテーブル値が、テクスチャＣＬＵＴバッファ１４７ｄに格納されている。
インデックスおよびカラールックアップテーブル値は、テクスチャ処理に使われる。すなわち、通常はＲ，Ｇ，Ｂそれぞれ８ビットの合計２４ビットでテクスチャ要素を表現するが、それではデータ量が膨らむため、あらかじめ選んでおいたたとえば２５６色等の中から一つの色を選んで、そのデータをテクスチャ処理に使う。このことで２５６色であればそれぞれのテクスチャ要素は８ビットで表現できることになる。インデックスから実際のカラーへの変換テーブルは必要になるが、テクスチャの解像度が高くなるほど、よりコンパクトなテクスチャデータとすることが可能となる。
これにより、テクスチャデータの圧縮が可能となり、内蔵ＤＲＡＭの効率良い利用が可能となる。
【００３３】
さらにＤＲＡＭ１４７には、描画と同時並行的に隠れ面処理を行うため、描画しようとしている物体の奥行き情報が格納されている。
なお、表示データと奥行きデータおよびテクスチャデータの格納方法としては、メモリブロックの先頭から連続して表示データが格納され、次に奥行きデータが格納され、残りの空いた領域に、テクスチャの種類毎に連続したアドレス空間でテクスチャデータが格納される。これにより、テクスチャデータを効率よく格納できることになる。
【００３４】
〔ＤＤＡセットアップ回路１４１〕
ＤＤＡセットアップ回路１４１は、後段のトライアングルＤＤＡ回路１４２において物理座標系上の三角形の各頂点の値を線形補間して、三角形の内部の各画素の色と深さ情報を求めるに先立ち、ポリゴンレンダリングデータＳ１１ｂが示す（ｚ，Ｒ，Ｇ，Ｂ，α，ｓ，ｔ，ｑ）データについて、三角形の辺と水平方向の差分などを求めるセットアップ演算を行う。
このセットアップ演算は、具体的には、開始点の値と終点の値と、開始点と終点との距離を用いて、単位長さ移動した場合における、求めようとしている値の変分を算出する。
ＤＤＡセットアップ回路１４１は、算出した変分データＳ１４１をトライアングルＤＤＡ回路１４２に出力する。
【００３５】
〔トライアングルＤＤＡ回路１４２〕
トライアングルＤＤＡ回路１４２は、ＤＤＡセットアップ回路１４１から入力した変分データＳ１４１を用いて、三角形内部の各画素における線形補間された（ｚ，Ｒ，Ｇ，Ｂ，α，ｓ，ｔ，ｑ）データを算出する。
トライアングルＤＤＡ回路１１は、各画素の（ｘ，ｙ）データと、当該（ｘ，ｙ）座標における（ｚ，Ｒ，Ｇ，Ｂ，α，ｓ，ｔ，ｑ）データとを、ＤＤＡデータ（補間データ）Ｓ１４２としてテクスチャエンジン回路１４３に出力する。
たとえば、トライアングルＤＤＡ回路１４２は、並行して処理を行う矩形内に位置する８（＝２×４）画素分のＤＤＡデータＳ１４２をテクスチャエンジン回路１４３に出力する。
【００３６】
〔テクスチャエンジン回路１４３〕
テクスチャエンジン回路１４３は、「ｓ／ｑ」および「ｔ／ｑ」の算出処理、テクスチャ座標データ（ｕ，ｖ）の算出処理、テクスチャバッファ１４７ａからの（Ｒ，Ｇ，Ｂ）データの読み出し処理等をパイプライン方式で行う。
なお、テクスチャエンジン回路１４３は、たとえば所定の矩形内に位置する８画素についての処理を同時に並行して行う。
【００３７】
テクスチャエンジン回路１４３は、ＤＤＡデータＳ１４２が示す（ｓ，ｔ，ｑ）データについて、ｓデータをｑデータで除算する演算と、ｔデータをｑデータで除算する演算とを行う。
テクスチャエンジン回路１４３には、たとえば図示しない除算回路が８個設けられており、８画素についての除算「ｓ／ｑ」および「ｔ／ｑ」が同時に行われる。
【００３８】
また、テクスチャエンジン回路１４３は、除算結果である「ｓ／ｑ」および「ｔ／ｑ」に、それぞれテクスチャサイズＵＳＩＺＥおよびＶＳＩＺＥを乗じて、テクスチャ座標データ（ｕ，ｖ）を生成する。
また、テクスチャエンジン回路１４３は、メモリＩ／Ｆ回路１４４を介して、ＳＲＡＭ１４８あるいはＤＲＡＭ１４７に、生成したテクスチャ座標データ（ｕ，ｖ）を含む読み出し要求を出力し、メモリＩ／Ｆ回路１４４を介して、ＳＲＡＭ１４８あるいはテクスチャバッファ１４７ａに記憶されているテクスチャデータを読み出すことで、（ｓ，ｔ）データに対応したテクスチャアドレスに記憶されたテクスチャデータである（Ｒ，Ｇ，Ｂ）データＳ１４８を得る。
ここで、ＳＲＡＭ１４８には、前述したようにテクスチャバッファ１４７ａに格納されているテクスチャデータが記憶される。
テクスチャエンジン回路１４３は、読み出した（Ｒ，Ｇ，Ｂ）データＳ１４８の（Ｒ，Ｇ，Ｂ）データと、前段のトライアングルＤＤＡ回路１４２からのＤＤＡデータＳ１４２に含まれる（Ｒ，Ｇ，Ｂ）データとを、それぞれ掛け合わせるなどして新たな（Ｒ，Ｇ，Ｂ）データを生成し、この生成した（Ｒ，Ｇ，Ｂ）データと、ＤＤＡデータＳ１４２に含まれる（ｘ，ｙ，ｚ，α）データとを格納した画素データＳ１４３を生成する。
テクスチャエンジン回路１４３は、この画素データＳ１４３をメモリＩ／Ｆ回路１４４に出力する。
【００３９】
なお、テクスチャバッファ１４７ａには、ＭＩＰＭＡＰ（複数解像度テクスチャ）などの複数の縮小率に対応したテクスチャデータが記憶されている。ここで、何れの縮小率のテクスチャデータを用いるかは、所定のアルゴリズムを用いて、前記三角形単位で決定される。
【００４０】
テクスチャエンジン回路１４３は、フルカラー方式の場合には、テクスチャバッファ１４７ａから読み出した（Ｒ，Ｇ，Ｂ）データを直接用いる。
一方、テクスチャエンジン回路１４３は、インデックスカラー方式の場合には、あらかじめ作成したカラールックアップテーブル（ＣＬＵＴ）をテクスチャＣＬＵＴバッファ１４７ｄから読み出して、内蔵するＳＲＡＭに転送および記憶し、このカラールックアップテーブルを用いて、テクスチャバッファ１４７ａから読み出したカラーインデックスに対応する（Ｒ，Ｇ，Ｂ）データを得る。
【００４１】
〔メモリＩ／Ｆ回路１４４〕
メモリＩ／Ｆ回路１４４は、ＤＲＡＭ１４７内でデータをローカル転送するローカル転送処理、並びにメインメモリ１２からのデータとＤＲＡＭ１４７との間でデータを転送するホスト・ローカル間転送処理などのビットブリット処理を行う。
本実施形態では、メモリＩ／Ｆ回路１４４が、上述したビットブリット処理によるデータ転送過程で、後述するようにαブレンディング処理を行うことができる。
【００４２】
メモリＩ／Ｆ回路１４４は、テクスチャエンジン回路１４３から入力した画像（画素）データＳ１４３に格納されたｚデータと、ｚバッファ１４７ｃに記憶されているｚデータとの比較を行い、入力した画像データＳ１４３によって描画される画像が、前回、ディスプレイバッファ１４７ｂに書き込まれた画像より、手前（視点側）に位置するか否かを判断し、手前に位置する場合には、画像データＳ１４３に対応するｚデータでｚバッファ１４７ｃに記憶されたｚデータを更新する。
また、メモリＩ／Ｆ回路１４４は、画像データＳ１４３に格納された（Ｒ，Ｇ，Ｂ）データを、必要に応じてαブレンディング処理を行った後に、ディスプレイバッファ１４７ｂに書き込む。当該αブレンディング処理については後に詳細に説明する。
さらに、メモリＩ／Ｆ回路１４４は、テクスチャエンジン回路１４３からテクスチャ座標データ（ｕ，ｖ）を含む読み出し要求を受けた場合には、ＤＲＡＭ１４７あるいはＳＲＡＭ１４８に記憶された（Ｒ，Ｇ，Ｂ）データＳ１４８を読み出す。
また、メモリＩ／Ｆ回路１４４は、ＣＲＴコントロール回路１４５から表示データを読み出す要求を受けた場合には、この要求に応じて、ディスプレイバッファ１４７ｂから一定の固まり、たとえば８画素あるいは１６画素単位で表示データを読み出す。
【００４３】
以下、メモリＩ／Ｆ回路１４４のαブレンド処理およびビットブリット処理に係わる構成について詳細に説明する。
図３は、メモリＩ／Ｆ回路１４４のαブレンド処理およびビットブリット処理に係わる構成を説明するための図である。
図３に示すように、メモリＩ／Ｆ回路１４４は、例えば、Ｉ／Ｆ（インタフェース）５０，５１、セレクタ５２、αブレンド回路５３、セレクタ５４、制御回路５５およびＩ／Ｆ５６を有する。
ここで、Ｉ／Ｆ５０が、本発明の第１のインタフェースに対応し、セレクタ５２が本発明の選択回路に対応し、αブレンド回路５３が本発明の画像処理回路に対応し、Ｉ／Ｆ５６が本発明の第２のインタフェースに対応し、制御回路５５が本発明の制御回路に対応している。
【００４４】
前述したように、ＣＰＵ１１において、ポリゴンレンダリングデータＳ１１ｂが生成され、当該ポリゴンレンダリングデータＳ１１ｂがメインバス１５を介してレンダリング回路１４に入力される。そして、当該ポリゴンレンダリングデータＳ１１ｂが、ＤＤＡセットアップ回路１４１、トライアングルＤＤＡ回路１４２およびテクスチャエンジン回路１４３における処理を経て、プリミティブデータＳ１４３（本発明の第１の画像データ）としてＩ／Ｆ５０に入力される。
Ｉ／Ｆ５０は、当該入力したプリミティブデータＳ１４３をセレクタ５２に出力する。
また、メインメモリ１２から読み出されたホスト・ローカル間転送用の画像データＳ１２（本発明の第２の画像データ）が、メインバス１５を介してＩ／Ｆ５０に入力される。
Ｉ／Ｆ５０は、当該入力した画像データＳ１２をセレクタ５２に出力する。
【００４５】
セレクタ５２は、制御回路５５からの制御信号（選択信号）Ｓ５５に基づいて、入力したプリミティブデータＳ１４３、画像データＳ１２、ＤＲＡＭ１４７から読み出されたローカル転送用の画像データＳ１４７ａ（第３の画像データ）とのうち一つを選択し、当該選択した画像データＳ５２をαブレンド回路５３に出力する。
αブレンド回路５３は、制御信号Ｓ５５がαブレンドオンを示す場合に、セレクタ５２から入力した画像データＳ５２と、ＤＲＡＭ１４７の書き込みアドレスから読み出されたディスティネーションデータＳ１４７ｂとを、画像データＳ５２およびデスティネーションデータＳ１４７ｂのうち選択されたデータ内のαデータが示す混合比で混合して画像データＳ５３を生成し、これをセレクタ５４に出力する。
また、αブレンド回路５３は、制御信号Ｓ５５がαブレンドオフを示す場合に、セレクタ５２から入力した画像データＳ５２を、そのまま画像データＳ５３としてセレクタ５４に出力する。
セレクタ５４は、制御信号（選択信号）Ｓ５５に基づいて、Ｉ／Ｆ５１を介してビデオ処理部１３９から入力した画像データＳ１３９と、αブレンド回路５３から入力した画像データＳ５３とのうち一方を選択し、当該選択した画像データＳ５４をＩ／Ｆ５６を介して、ＤＲＡＭ１４７の書き込みアドレスに書き込む。なお、本発明では、αブレンド回路５３の代わりに、その他の画像処理（フィルタリング処理）を行う画像処理回路を用いてもよい。
【００４６】
制御回路５５は、例えば、ＣＰＵ１１からの制御信号Ｓ１１ａに基づいて、セレクタ５２、αブレンド回路５３およびセレクタ５４を制御し、プリミティブデータＳ１４３を用いたαブレンディング処理およびビットブリット処理を行わせる。
本実施形態では、制御回路５５の制御に基づいて、ビットブリット処理の過程で、転送される画像データを用いたαブレンディング処理が行われる。
制御回路５５の処理については、メモリＩ／Ｆ回路１４４の動作例に関連付けて詳細に説明する。
【００４７】
以下、メモリＩ／Ｆ回路１４４の動作例について説明する。
〔第１の動作例〕
当該動作例では、プリミティブデータＳ１４３を用いてαブレンディング処理を行う場合を説明する。
当該動作例では、制御回路５５は、制御信号Ｓ１１ａに基づいて、セレクタ５２がプリミティブデータＳ１４３を選択し、αブレンド回路５３がαブレンディング処理をオンにし、セレクタ５４が画像データＳ５３を選択するように、制御信号Ｓ５５を生成する。
これにより、Ｉ／Ｆ５０を介して入力されたプリミティブデータＳ１４３が、セレクタ５２で選択され、画像データＳ５２としてαブレンド回路５３に出力される。
また、ＤＲＡＭ１４７の書き込みアドレスから読み出されたディスティネーションデータＳ１４７ｂ、並びにαデータが、αブレンド回路５３に入力される。
【００４８】
そして、αブレンド回路５３において、画像データＳ５２とディスティネーションデータＳ１４７ｂとが、αデータが示す混合比で混合されて画像データＳ５３が生成される。
そして、セレクタ５４において、画像データＳ５３が選択され、Ｉ／Ｆ５６を介して、ＤＲＡＭ１４７の書き込みアドレスに書き込まれる。
【００４９】
〔第２の動作例〕
当該動作例では、メインメモリ１２からＤＲＡＭ１４７にホスト・ローカル間転送を行い、当該転送過程でαブレンディング処理を行わない場合を説明する。
メインメモリ１２の転送元アドレスから読み出された画像データＳ１２が、メインバス１５およびＩ／Ｆ５０を介して、セレクタ５２に入力される。
そして、セレクタ５２が、画像データＳ１２を選択して画像データＳ５２としてαブレンド回路５３に出力する。
そして、αブレンド回路５３が、入力した画像データＳ１２（Ｓ５２）を、画像処理を行うことなく、そのまま画像データＳ５３としてセレクタ５４に出力する。
そして、セレクタ５４が、画像データＳ５３を選択し、Ｉ／Ｆ５６を介して、ＤＲＡＭ１４７の転送先アドレスに書き込む。
【００５０】
〔第３の動作例〕
当該動作例では、メインメモリ１２からＤＲＡＭ１４７にホスト・ローカル間転送を行い、当該転送過程でαブレンディング処理を行う場合を説明する。
メインメモリ１２の転送元アドレスから読み出された画像データＳ１２が、メインバス１５およびＩ／Ｆ５０を介して、セレクタ５２に入力される。
そして、セレクタ５２が、画像データＳ１２を選択して画像データＳ５２としてαブレンド回路５３に出力する。
また、ＤＲＡＭ１４７の書き込みアドレスから読み出されたディスティネーションデータＳ１４７ｂ、並びにαデータが、αブレンド回路５３に入力される。
【００５１】
そして、αブレンド回路５３において、画像データＳ５２とディスティネーションデータＳ１４７ｂとが、αデータが示す混合比で混合されて画像データＳ５３が生成される。
そして、セレクタ５４において、画像データＳ５３が選択され、Ｉ／Ｆ５６を介して、ＤＲＡＭ１４７の書き込みアドレスに書き込まれる。
これにより、メインメモリ１２からＤＲＡＭ１４７に画像データを転送する過程で、当該転送対象の画像データと、ディスティネーションデータとのαブレンディング処理を行うことができる。
【００５２】
〔第４の動作例〕
当該動作例では、ＤＲＡＭ１４７内でデータ転送を行い、当該転送過程でαブレンディング処理を行わない場合を説明する。
ＤＲＡＭ１４７の転送元アドレスから読み出された画像データＳ１４７ａが、Ｉ／Ｆ５６を介して、セレクタ５２に入力される。
そして、セレクタ５２において、画像データＳ１４７ａが選択され、画像データＳ５２としてαブレンド回路５３に出力される。
そして、αブレンド回路５３が、入力した画像データＳ５２を、そのまま画像データＳ５３としてセレクタ５４に出力する。
そして、セレクタ５４が、画像データＳ５３を選択し、Ｉ／Ｆ５６を介して、ＤＲＡＭ１４７の転送先アドレスに書き込む。
【００５３】
〔第５の動作例〕
当該動作例では、ＤＲＡＭ１４７内でデータ転送を行い、当該転送過程でαブレンディング処理を行う場合を説明する。
ＤＲＡＭ１４７の転送元アドレスから読み出された画像データＳ１４７ａが、Ｉ／Ｆ５６を介して、セレクタ５２に入力される。
そして、セレクタ５２において、画像データＳ１４７ａが選択され、画像データＳ５２としてαブレンド回路５３に出力される。
【００５４】
また、ＤＲＡＭ１４７の書き込みアドレス（転送先アドレス）から読み出されたディスティネーションデータＳ１４７ｂ、並びにαデータが、αブレンド回路５３に入力される。
そして、αブレンド回路５３において、画像データＳ５２とディスティネーションデータＳ１４７ｂとが、αデータが示す混合比で混合されて画像データＳ５３が生成される。
そして、セレクタ５４において、画像データＳ５３が選択され、Ｉ／Ｆ５６を介して、ＤＲＡＭ１４７の書き込みアドレスに書き込まれる。
これにより、ＤＲＡＭ１４７内でローカル転送する過程で、当該転送対象の画像データと、ディスティネーションデータとのαブレンディング処理を行うことができる。
【００５５】
〔ＣＲＴコントロール回路１４５〕
ＣＲＴコントロール回路１４５は、与えられた水平および垂直同期信号に同期して、図示しないＣＲＴに表示するアドレスを発生し、ディスプレイバッファ１４７ｂから表示データを読み出す要求をメモリＩ／Ｆ回路１４４に出力する。この要求に応じて、メモリＩ／Ｆ回路１４４は、ディスプレイバッファ１４７ｂから一定の固まりで表示データを読み出す。ＣＲＴコントローラ回路１４５は、ディスプレイバッファ１４７ｂから読み出した表示データを記憶するＦＩＦＯ回路を内蔵し、一定の時間間隔で、ＲＡＭＤＡＣ回路１４６に、ＲＧＢのインデックス値を出力する。
【００５６】
〔ＲＡＭＤＡＣ回路１４６〕
ＲＡＭＤＡＣ回路１４６は、各インデックス値に対応するＲ，Ｇ，Ｂデータを記憶しており、ＣＲＴコントローラ回路１４５から入力したＲＧＢのインデックス値に対応するデジタル形式のＲ，Ｇ，Ｂデータを、図示しないＤ／Ａコンバータ(Digital/Analog Converter)に転送し、アナログ形式のＲ，Ｇ，Ｂデータを生成する。ＲＡＭＤＡＣ回路１４６は、この生成されたＲ，Ｇ，ＢデータをＣＲＴに出力する。
【００５７】
次に、図２に示す３次元コンピュータグラフィックスシステム１０の全体動作例を説明する。
３次元コンピュータグラフィックスシステム１０においては、グラフィックス描画等のデータは、ＣＰＵ１１のメインメモリ１２、あるいは外部からのグラフィックスデータを受けるＩ／Ｏインタフェース回路１３からメインバス１５を介してレンダリング回路１４に与えられる。
なお、必要に応じて、グラフィックス描画等のデータは、ＣＰＵ１１等において、座標変換、クリップ処理、ライティング処理等のジオメトリ処理が行われる。
ジオメトリ処理が終わったグラフィックスデータは、三角形の各３頂点の頂点座標ｘ，ｙ，ｚ、輝度値Ｒ，Ｇ，Ｂ、描画しようとしている画素と対応するテクスチャ座標ｓ，ｔ，ｑとからなるポリゴンレンダリングデータＳ１１ｂとなる。
【００５８】
このポリゴンレンダリングデータＳ１１ｂは、レンダリング回路１４のＤＤＡセットアップ回路１４１に入力される。
ＤＤＡセットアップ回路１４１においては、ポリゴンレンダリングデータＳ１１ｂに基づいて、三角形の辺と水平方向の差分などを示す変分データＳ１４１が生成される。具体的には、開始点の値と終点の値、並びに、その間の距離を用いて、単位長さ移動した場合における、求めようとしている値の変化分である変分が算出され、変分データＳ１４１としてトライアングルＤＤＡ回路１４２に出力される。
【００５９】
トライアングルＤＤＡ回路１４２においては、変分データＳ１４１を用いて、、三角形内部の各画素における線形補間された（ｚ，Ｒ，Ｇ，Ｂ，α，ｓ，ｔ，ｑ）データが算出される。
そして、この算出された（ｚ，Ｒ，Ｇ，Ｂ，α，ｔ，ｑ）データと、三角形の各頂点の（ｘ，ｙ）データとが、ＤＤＡデータＳ１４２として、トライアングルＤＤＡ回路１４２からテクスチャエンジン回路１４３に出力される。
【００６０】
テクスチャエンジン回路１４３においては、ＤＤＡデータＳ１４２が示す（ｓ，ｔ，ｑ）データについて、ｓデータをｑデータで除算する演算と、ｔデータをｑデータで除算する演算とが行われる。そして、除算結果「ｓ／ｑ」および「ｔ／ｑ」に、それぞれテクスチャサイズＵＳＩＺＥおよびＶＳＩＺＥが乗算され、テクスチャ座標データ（ｕ，ｖ）が生成される。
【００６１】
次に、テクスチャエンジン回路１４３からメモリＩ／Ｆ回路１４４に対して生成されたテクスチャ座標データ（ｕ，ｖ）を含む読み出し要求が出力され、メモリＩ／Ｆ回路１４４を介して、ＳＲＡＭ１４８に記憶された（Ｒ，Ｇ，Ｂ）データＳ１４８が読み出される。
次に、テクスチャエンジン回路１４３において、読み出した（Ｒ，Ｇ，Ｂ）データＳ１４８の（Ｒ，Ｇ，Ｂ）データと、前段のトライアングルＤＤＡ回路１４２からのＤＤＡデータＳ１４２に含まれる（Ｒ，Ｇ，Ｂ）データとをそれぞれ掛け合わせるなどして新たな（Ｒ，Ｇ，Ｂ）データが生成され、この生成された（Ｒ，Ｇ，Ｂ）データと、ＤＤＡデータＳ１４２に含まれる（ｘ，ｙ，ｚ，α）データとを格納した画像（画素）データＳ１４３が生成される。
この画像データＳ１４３は、テクスチャエンジン回路１４３からメモリＩ／Ｆ回路１４４に出力される。
【００６２】
次に、図２示すメモリＩ／Ｆ回路１４４内で、ＣＰＵ１１からの制御信号Ｓ１１ａに基づいて、例えば、前述した第１〜５の動作例で説明した処理が行われ、ＤＲＡＭ１４７に画像データが書き込まれる。
【００６３】
また、図示しないＣＲＴに画像を表示する場合には、ＣＲＴコントロール回路１４５において、与えられた水平垂直同期周波数に同期して、表示アドレスが発生され、メモリＩ／Ｆ回路１４４へ表示データ転送の要求が出される。
メモリＩ／Ｆ回路１４４では、その要求に従い、一定のまとまった固まりで、表示データがＣＲＴコントロール回路１４５に転送される。
ＣＲＴコントロール回路１４５では、図示しないディスプレイ用ＦＩＦＯ(First In First Out)等にその表示データが貯えられ、一定の間隔でＲＡＭＤＡＣ１４６へＲＧＢのインデックス値が転送される。
【００６４】
以上説明したように、３次元コンピュータグラフィックスシステム１０によれば、レンダリング回路１４のメモリＩ／Ｆ回路１４４を図３に示す構成にしたことで、ビットブリット処理過程でαブレンディング処理を行うことができ、画像処理の高速化が図れる。
また、３次元コンピュータグラフィックスシステム１０によれば、図３に示す構成のメモリＩ／Ｆ回路１４４を用いることで、従来と同様、小規模なものにすることができる。
また、３次元コンピュータグラフィックスシステム１０によれば、レンダリング回路１４内にＤＲＡＭ１４７を設けたことで、メモリＩ／Ｆ回路１４４とＤＲＡＭ１４７との間のバス幅を広くすることができ、これらの間でデータ転送を高速に行うことができる。
【００６５】
第２実施形態
当該実施形態は、第２および第４の発明に対応した実施形態である。
本実施形態の３次元コンピュータグラフィックスシステムは、メモリＩ／Ｆ回路の構成を除いて、基本的に図２を用いて説明した第１実施形態の３次元コンピュータグラフィックスシステム１０と同じである。
以下、本実施形態の３次元コンピュータグラフィックスシステムのメモリＩ／Ｆ回路について説明する。
図４は、本実施形態のメモリＩ／Ｆ回路２４４のαブレンド処理およびビットブリット処理に係わる構成を説明するための図である。
図４に示すように、メモリＩ／Ｆ回路２４４は、例えば、Ｉ／Ｆ（インタフェース）６０，６１，６５、セレクタ７０，７１，７２、αブレンド回路７３および制御回路８０を有する。
ここで、Ｉ／Ｆ６０が本発明のインタフェースに対応し、セレクタ７１が本発明の第１の選択回路に対応し、セレクタ７０が本発明の第２の選択回路に対応し、セレクタ７２が本発明の第３の選択回路に対応し、αブレンド回路７３が本発明の画像処理回路に対応している。
【００６６】
本実施形態の３次元コンピュータグラフィックスシステムにおいても、第１実施形態と同様に、ＣＰＵ１１において、ポリゴンレンダリングデータＳ１１ｂが生成され、当該ポリゴンレンダリングデータＳ１１ｂがメインバス１５を介してレンダリング回路１４に入力される。そして、当該ポリゴンレンダリングデータＳ１１ｂが、ＤＤＡセットアップ回路１４１、トライアングルＤＤＡ回路１４２およびテクスチャエンジン回路１４３における処理を経て、図４に示すように、プリミティブデータＳ１４３（本発明の第１の画像データ）としてメモリＩ／Ｆ回路２４４のＩ／Ｆ６０に入力される。
Ｉ／Ｆ６０は、当該入力したプリミティブデータＳ１４３をセレクタ７０に出力する。
また、メインメモリ１２から読み出されたホスト・ローカル間転送用の画像データＳ１２（本発明の第２の画像データ）が、メインバス１５を介してＩ／Ｆ６０に入力される。
Ｉ／Ｆ６０は、当該入力した画像データＳ１２をセレクタ７０に出力する。
【００６７】
セレクタ７１は、制御回路８０からの制御信号（選択信号）Ｓ８０に基づいて、画像データＳ１２と、ＤＲＡＭ１４７から読み出されたローカル転送用の画像データＳ１４７ａとのうち一つを選択し、当該選択した画像データＳ７１をセレクタ７０およびセレクタ７２に出力する。
セレクタ７０は、プリミティブデータＳ１４３および画像データＳ７１のうち一つを選択し、当該選択した画像データＳ７０をαブレンド回路７３に出力する。
αブレンド回路７３は、セレクタ７０から入力した画像データＳ７０と、ＤＲＡＭ１４７の書き込みアドスから読み出されたディスティネーションデータＳ１４７ｂとを、画像データＳ７０およびデスティネーションデータＳ１４７ｂのうち選択されたデータ内のαデータが示す混合比で混合して画像データＳ７３を生成し、これをセレクタ７２に出力する。
セレクタ７２は、制御信号（選択信号）Ｓ８０に基づいて、Ｉ／Ｆ６１を介してビデオ処理部１３９から入力した画像データＳ１３９と、αブレンド回路７３から入力した画像データＳ７３とのうち一方を選択し、当該選択した画像データＳ７２をＩ／Ｆ６５を介して、ＤＲＡＭ１４７の書き込みアドレスに書き込む。なお、本発明では、αブレンド回路７３の代わりに、その他の画像処理（フィルタリング処理）を行う画像処理回路を用いてもよい。
【００６８】
制御回路８０は、例えば、ＣＰＵ１１からの制御信号Ｓ１１ａに基づいて、セレクタ７０，７１，７２およびαブレンド回路７３を制御し、プリミティブデータＳ１４３を用いたαブレンディング処理およびビットブリット処理を行わせる。
本実施形態では、制御回路８０の制御に基づいて、ビットブリット処理の過程で、転送される画像データを用いたαブレンディング処理が行われる。
制御回路８０の処理については、メモリＩ／Ｆ回路２４４の動作例に関連付けて詳細に説明する。
【００６９】
以下、メモリＩ／Ｆ回路２４４の動作例について説明する。
〔第１の動作例〕
当該動作例では、プリミティブデータＳ１４３を用いてαブレンディング処理を行う場合を説明する。
当該動作例では、制御回路８０は、制御信号Ｓ１１ａに基づいて、セレクタ７０がプリミティブデータＳ１４３を選択し、セレクタ７２が画像データＳ７３を選択するように、制御信号Ｓ８０を生成する。
これにより、Ｉ／Ｆ６０を介して入力されたプリミティブデータＳ１４３が、セレクタ７０で選択され、画像データＳ７０としてαブレンド回路７３に出力される。
また、ＤＲＡＭ１４７の書き込みアドレスから読み出されたディスティネーションデータＳ１４７ｂ、並びにαデータが、αブレンド回路７３に入力される。
【００７０】
そして、αブレンド回路７３において、画像データＳ７０とディスティネーションデータＳ１４７ｂとが、αデータが示す混合比で混合されて画像データＳ７３が生成される。
そして、セレクタ７２において、画像データＳ７３が選択され、Ｉ／Ｆ６５を介して、ＤＲＡＭ１４７の書き込みアドレスに書き込まれる。
【００７１】
〔第２の動作例〕
当該動作例では、メインメモリ１２からＤＲＡＭ１４７にホスト・ローカル間転送を行い、当該転送過程でαブレンディング処理を行わない場合を説明する。
メインメモリ１２の転送元アドレスから読み出された画像データＳ１２が、メインバス１５およびＩ／Ｆ６０を介して、セレクタ７１に入力される。
そして、セレクタ７１が、画像データＳ１２を選択して画像データＳ７１としてセレクタ７０およびセレクタ７２に出力する。
そして、セレクタ７２が、画像データＳ７１を選択して画像データ７２として、Ｉ／Ｆ６５を介してＤＲＡＭ１４７の転送先アドレスに書き込む。
【００７２】
〔第３の動作例〕
当該動作例では、メインメモリ１２からＤＲＡＭ１４７にホスト・ローカル間転送を行い、当該転送過程でαブレンディング処理を行う場合を説明する。
メインメモリ１２の転送元アドレスから読み出された画像データＳ１２が、メインバス１５およびＩ／Ｆ６０を介して、セレクタ７１に入力される。
そして、セレクタ７１が、画像データＳ１２を選択して画像データＳ７１としてセレクタ７０およびセレクタ７２に出力する。
そして、セレクタ７０が、画像データＳ７１を選択して画像データＳ７０としてαブレンド回路７３に出力する。
また、ＤＲＡＭ１４７の書き込みアドレスから読み出されたディスティネーションデータＳ１４７ｂ、並びにαデータが、αブレンド回路７３に入力される。
【００７３】
そして、αブレンド回路７３において、画像データＳ７０とディスティネーションデータＳ１４７ｂとが、αデータが示す混合比で混合されて画像データＳ７３が生成される。
そして、セレクタ７２において、画像データＳ７３が選択され、Ｉ／Ｆ６５を介して、ＤＲＡＭ１４７の書き込みアドレスに書き込まれる。
これにより、メインメモリ１２からＤＲＡＭ１４７に画像データを転送する過程で、当該転送対象の画像データと、ディスティネーションデータとのαブレンディング処理を行うことができる。
【００７４】
〔第４の動作例〕
当該動作例では、ＤＲＡＭ１４７内でデータ転送を行い、当該転送過程でαブレンディング処理を行わない場合を説明する。
ＤＲＡＭ１４７の転送元アドレスから画像データＳ１４７ａが、Ｉ／Ｆ６５を介して、セレクタ７１に入力される。
そして、セレクタ７１において、画像データＳ１４７ａが選択され、画像データＳ７１としてセレクタ７０およびセレクタ７２に出力される。
そして、セレクタ７２が、画像データＳ７１を選択して画像データＳ７２として、Ｉ／Ｆ５６を介して、ＤＲＡＭ１４７の転送先アドレスに書き込む。
【００７５】
〔第５の動作例〕
当該動作例では、ＤＲＡＭ１４７内でデータ転送を行い、当該転送過程でαブレンディング処理を行う場合を説明する。
ＤＲＡＭ１４７の転送元アドレスから読み出された画像データＳ１４７ａが、Ｉ／Ｆ６５を介して、セレクタ７１に入力される。
そして、セレクタ７１において、画像データＳ１４７ａが選択され、画像データＳ７１としてセレクタ７０およびセレクタ７２に出力される。
そして、セレクタ７０において、画像データＳ７１が選択され、画像データＳ７０としてαブレンド回路７３に出力される。
【００７６】
また、ＤＲＡＭ１４７の書き込みアドレス（転送先アドレス）から読み出されたディスティネーションデータＳ１４７ｂ、並びにαデータが、αブレンド回路７３に入力される。
そして、αブレンド回路７３において、画像データＳ７０とディスティネーションデータＳ１４７ｂとが、αデータが示す混合比で混合されて画像データＳ７３が生成される。
そして、セレクタ７２において、画像データＳ７３が選択され、Ｉ／Ｆ６５を介して、ＤＲＡＭ１４７の書き込みアドレスに書き込まれる。
これにより、ＤＲＡＭ１４７内でローカル転送する過程で、当該転送対象の画像データと、ディスティネーションデータとのαブレンディング処理を行うことができる。
【００７７】
なお、本実施形態の３次元コンピュータグラフィックスシステムの全体動作は、メモリＩ／Ｆ回路２４４の動作を除いて、第１実施形態で説明した３次元コンピュータグラフィックスシステム１０の全体動作と同じである。
【００７８】
以上説明したように、本実施形態の３次元コンピュータグラフィックスシステムによっても、第１実施形態と同様の効果が得られる。
【００７９】
【発明の効果】
以上説明したように、本発明の画像処理装置によれば、ビットブリット処理過程で、転送する画像データの画像処理を選択的に行うことができ、画像処理の高速化を図れる。
【図面の簡単な説明】
【図１】図１は、本発明の背景となる画像処理装置の構成図である。
【図２】図２は、本発明の実施形態となる３次元コンピュータグラフィックスシステムの全体構成図である。
【図３】図３は、図２に示すメモリＩ／Ｆ回路のαブレンド処理およびビットブリット処理に係わる構成を説明するための図である。
【図４】図４は、本発明の第２実施形態の３次元コンピュータグラフィックスシステムのメモリＩ／Ｆ回路のαブレンド処理およびビットブリット処理に係わる構成を説明するための図である。
【符号の説明】
１０…３次元コンピュータグラフィックスシステム、１１…ＣＰＵ、１２…メインメモリ、１４３…テクスチャエンジン回路、１４４…メモリＩ／Ｆ回路、１４７…ＤＲＡＭ、５０，５１，５６，６０，６１，６５…Ｉ／Ｆ、５２，５４，７０．７１，７２…セレクタ、５３，５７…αブレンド回路、５５，８０…制御回路
【図１】
0003741053.tif 000002
【図２】
0003741053.tif 000003
【図３】
0003741053.tif 000004
【図４】
0003741053.tif 000005