(57)【特許請求の範囲】
【請求項１】
タイル型物理アドレスで保持される第１のデータとアレイ型物理アドレスで保持される第２のデータを有するメモリをアクセスしてデータの処理を行う処理装置であって、
上記第１のデータを処理する第１のプロセスと上記第２のデータを処理する第２のプロセスを有し、
上記第１のプロセスの場合にアレイ型物理アドレスで保持される第２のデータをアクセスするためにアレイ型物理アドレスをタイル型論理アドレスに変換し、この変換されたタイル型論理アドレスのアドレッシングによって上記メモリをアクセスすることを特徴とする処理装置。
【請求項２】
タイル型物理アドレスで保持される第１のデータとアレイ型物理アドレスで保持される第２のデータを有するメモリをアクセスしてデータの処理を行う処理装置であって、
上記第１のデータを処理する第１のプロセスと上記第２のデータを処理する第２のプロセスを有し、
上記第２のプロセスの場合にタイル型物理アドレスで保持される第１のデータをアクセスするためにタイル型物理アドレスをアレイ型論理アドレスに変換し、この変換されたアレイ型論理アドレスのアドレッシングによって上記メモリをアクセスすることを特徴とする処理装置。
【請求項３】
請求項１または２において、
上記第１のプロセスの場合に、アクセスするデータが第１のデータであるのか第２のデータであるのかに基づいて、タイル型論理アドレスでアクセスするか、アレイ型物理アドレスをタイル型論理アドレスに変換してアクセスするかを選択することを特徴とする処理装置。
【請求項４】
請求項１または２において、
上記第２のプロセスの場合に、アクセスするデータが第１のデータであるのか第２のデータであるのかに基づいて、アレイ型論理アドレスでアクセスするか、タイル型物理アドレスをアレイ型論理アドレスに変換してアクセスするかを選択することを特徴とする処理装置。
【請求項５】
請求項３または４において、
アクセスすべきデータが保持されているアドレス、または、データの保持されているメモリ領域を検出して、該検出結果と実行中のプロセスがタイル型論理アドレス、または、アレイ型論理アドレスのいずれでデータをアクセスするものであるかに応じて変換規則の選択を行うことを特徴とする処理装置。
【請求項６】
請求項１から５のうちのいずれか１項において、
上記第１のプロセスは画像データを処理するプロセスであり、上記第２のプロセスは上記画像データ以外のデータを処理するプロセスであることを特徴とする処理装置。
【請求項７】
請求項１から５のうちのいずれか１項において、
上記第１のプロセスは行列データを処理するプロセスであり、上記第２のプロセスは上記行列データ以外のデータを処理するプロセスであることを特徴とする処理装置。
【請求項８】
請求項１から７のうちのいずれか１項において、
上記タイル型物理アドレスに配置された第１のデータの領域の大きさを設定することを特徴とする処理装置。
【請求項９】
タイル型物理アドレスで保持される第１のデータとアレイ型物理アドレスで保持される第２のデータを有するメモリと、上記メモリをアクセスしてデータの処理を行う処理部とを有するデータ処理装置であって、
上記処理部は、上記第１のデータを処理する第１のプロセスと上記第２のデータを処理する第２のプロセスを有し、
上記第１のプロセスの場合にアレイ型物理アドレスで保持される第２のデータをアクセスするためにアレイ型物理アドレスをタイル型論理アドレスに変換し、この変換されたタイル型論理アドレスのアドレッシングによって上記メモリをアクセスすることを特徴とするデータ処理装置。
【請求項１０】
タイル型物理アドレスで保持される第１のデータとアレイ型物理アドレスで保持される第２のデータを有するメモリと、上記メモリをアクセスしてデータの処理を行う処理部とを有するデータ処理装置であって、
上記処理部は、上記第１のデータを処理する第１のプロセスと上記第２のデータを処理する第２のプロセスを有し、
上記第２のプロセスの場合にタイル型物理アドレスで保持される第１のデータをアクセスするためにタイル型物理アドレスをアレイ型論理アドレスに変換し、この変換されたアレイ型論理アドレスのアドレッシングによって上記メモリをアクセスすることを特徴とするデータ処理装置。
【請求項１１】
請求項９または１０において、
上記第１のプロセスの場合に、アクセスするデータが第１のデータであるのか第２のデータであるのかに基づいて、タイル型論理アドレスでアクセスするか、アレイ型物理アドレスをタイル型論理アドレスに変換してアクセスするかを選択することを特徴とするデータ処理装置。
【請求項１２】
請求項９または１０において、
上記第２のプロセスの場合に、アクセスするデータが第１のデータであるのか第２のデータであるのかに基づいて、アレイ型論理アドレスでアクセスするか、タイル型物理アドレスをアレイ型論理アドレスに変換してアクセスするかを選択することを特徴とするデータ処理装置。
【請求項１３】
請求項１１または１２において、
アクセスすべきデータが保持されているアドレス、または、データの保持されているメモリ領域を検出して、該検出結果と実行中のプロセスがタイル型論理アドレス、または、アレイ型論理アドレスのいずれでデータをアクセスするものであるかに応じて変換規則の選択を行うことを特徴とするデータ処理装置。
【請求項１４】
請求項９から１３のうちのいずれか１項において、
上記第１のプロセスは画像データを処理するプロセスであり、上記第２のプロセスは上記画像データ以外のデータを処理するプロセスであることを特徴とするデータ処理装置。
【請求項１５】
請求項９から１３のうちのいずれか１項において、
上記第１のプロセスは行列データを処理するプロセスであり、上記第２のプロセスは上記行列データ以外のデータを処理するプロセスであることを特徴とするデータ処理装置。
【請求項１６】
請求項９から１５のうちのいずれか１項において、
上記タイル型物理アドレスに配置された第１のデータの領域の大きさを設定することを特徴とするデータ処理装置。
【請求項１７】
請求項９から１６のうちのいずれか１項において、
上記処理部にはキャッシュメモリ部を有し、上記処理部とメモリとのデータのアクセスは、上記キャッシュメモリ部を介して行い、アドレッシングの変更は上記キャッシュメモリ部に保持されたデータに基づいて行うことを特徴とするデータ処理装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明はデータ処理システム，計算システム等（以下、データ処理システムという）のアドレス管理方式に係わり、特に、扱うデータが２次元的に配列されるデータの処理、例えば、行列計算，図形生成処理，画像処理等の高速化に関する。
【０００２】
【従来の技術】
２次元的広がりを持つデータに関する従来のアドレス管理方法は、画像管理に関する下記の文献に示されている。また、同様の内容がＵＳＰ５，２４７，６３２  にも記載されている。
【０００３】
Ｇａｒｙ  Ｎｅｗｍａｎｎ，  Ｍｅｍｏｒｙ  Ｍａｍａｇｅｍｅｎｔ  Ｓｕｐｐｏｒｔ  ｆｏｒ  Ｔｉｌｅｄ  Ａｒｒａｙ  Ｏｒｇａｎｉｚａｔｉｏｎ，  Ｃｏｍｐｕｔｅｒ  Ａｒｃｈｉｔｅｃｔｕｒｅ  Ｎｅｗｓ，  Ｖｏｌ．２０，Ｎｏ．４，Ｓｅｐｔｅｍｂｅｒ  １９９２，ｐｐ．  ２２−２９。
【０００４】
これらの文献によると、２次元的広がりを持つデータ（以下、２次元配列のデータという、但し、このデータは論理上、仮想上のものも含む）は、行方向だけでなく、列方向にも参照される。
【０００５】
一般に、２次元配列のデータの参照は、１つのデータの周囲のデータも併せて参照することが多い。
【０００６】
例えば、１つのデータが参照されると、このデータの２次元配列上の近傍のデータも、ある一定時間内に参照される場合が多い。
【０００７】
ここで、論理アドレスにはアレイ型とタイル型の２つのタイプがある。前者は２次元配列の行データの物理アドレスが連続となるように配置した場合のアドレスであり、後者は２次元配列の近傍データを含む正方形領域のデータが物理的に連続アドレスとなるように配置した場合のアドレスである。
【０００８】
従来技術では、アクセス元が発生するアレイ型のアドレスを、一旦、物理的配置に対応したタイル型のアドレスへ変換した後、通常の論理アドレスから物理アドレスへのアドレス変換によって物理アドレスを生成する。この際の変換規則はデータの物理的配置のみにより定められている。
【０００９】
【発明が解決しようとする課題】
従来技術によると、アドレス変換の規則、つまり、変換規則が物理的配置で決定されるため、タイル型配置のデータをアレイ型に参照することができないという問題があった。これは、アレイ型参照においても、結局途中でタイル型参照に変換されてしまうためである。
【００１０】
また、アドレス変換が２段階必要であり、アドレス変換に時間を要し、高速化を阻害すると共に、アドレス変換の段階に応じて管理が二重化され、複雑化するという問題があった。
【００１１】
これらの問題点は、一般のデータやプログラムなどを保持するメインメモリと描画・表示のための画像データを保持する画像用メモリ（フレームバッファ等）とが統合され、１つのメモリデバイス上で管理される将来のワークステーション（ＷＳ），パーソナルコンピュータ（ＰＣ），携帯用データ処理装置（ＰＤＡ）等のグラフィックス処理を行うもので顕著になる。
【００１２】
つまり、同一のデータ領域に対し、描画のためのアクセス，ＤＭＡ転送，ソフトウェアからの直接アクセスなどの複数のハードウェアまたはプロセスからのアクセスが生じる場合である。
【００１３】
特に、ソフトウェアからの直接アクセスでは、互換性を保つためにも従来システムでのソフトウェアインタフェースに対して影響が生じないようにデータのアクセス処理，アドレス変換処理を行わなければならない。さもなければ、専用のハードまたはソフトウェアを用いて、タイル型に配置されたデータをアレイ型に並べ替える必要があり、変換時間及び２倍のデータ領域が必要になる。
【００１４】
上述のＷＳ，ＰＣ，ＰＤＡ等のデータ処理装置では、ＣＰＵと描画等の画像データを処理する画像処理部とを１つの処理装置として内蔵し、それまでのメインメモリとフレームバッファとを１つのメモリにして、アクセスする小型プロセッサを用いた画像処理装置、及びそれを用いたシステムが求められている。
【００１５】
このようなシステムではメモリ量を小さくするために、画像用データ領域を  ＣＰＵと画像処理部とで共有し、ＣＰＵが画像データを参照する場合も画像データの無駄なコピーを作ることなくそのままの形で参照できる必要がある。
【００１６】
特に、データ配列が変わってもソフトウェア互換性を失わないように、アクセスする必要がある。
【００１７】
本発明の目的は、アドレッシングが異なる複数種類のデータが混在するメモリを高速にアクセスする処理装置及びそれを用いたデータ処理装置を提供することにある。
【００１８】
【課題を解決するための手段】
本発明は、タイル型アドレスで保持される第１のデータとアレイ型アドレスで保持される第２のデータを有するメモリをアクセスしてデータの処理を行う処理装置であって、上記処理装置が上記第１のデータを処理する第１のプロセスと上記第２のデータを処理する第２のプロセスに応じて、タイル型アドレスまたはアレイ型アドレスのアドレッシングによって上記メモリへのアクセスを行うことを特徴とする。
【００１９】
本発明の他の特徴は、タイル型アドレスで保持される第１のデータとアレイ型アドレスで保持される第２のデータを有するメモリと、上記メモリをアクセスしてデータの処理を行う処理部であって、上記処理部が上記第１のデータを処理する第１のプロセスと上記第２のデータを処理する第２のプロセスに応じて、タイル型アドレスまたはアレイ型アドレスのアドレッシングによって上記メモリへのアクセスを行うことを特徴とする。
【００２０】
また、参照先がタイル型に配置されたデータである場合、アレイ型の連続論理アドレスをタイル型配置に対応した連続しない複数の物理アドレスに区切って参照し、不連続な参照を制御できるアレイ型からタイル型アドレスへのアドレス変換を行うことを特徴とする。
【００２１】
さらに、アドレス変換テーブルの一部にデータ配置を示す情報を変換先読みバッフ（ＴＬＢ）に変換方式指定フラグとして保持し、アレイ型アドレスからタイル型アドレスへのアドレス変換を論理ページ内で指定することを特徴とする。
【００２２】
【作用】
それぞれのプロセスにおいて、最適にアドレッシングされたデータをダイレクトにアクセスすることができるので、データのアクセスの高速化が図れる。
【００２３】
さらに、１つのメモリにアドレッシングのことなるデータを混在することができるので、装置の小型化，コストの低減が達成される。
【００２４】
さらに、論理ページ単位で物理的配置情報を管理するので、異なるアドレッシングのデータが混在していても、変換回数の増加を防ぐことができる。
【００２５】
変換先読みバッファ（ＴＬＢ）を用いることで、データ参照の際に、まず、アドレス変換のための変換先読みバッファ（ＴＬＢ）の変換方式指定フラグを参照し、これがアレイ型配置を示していたらそのまま連続的に参照する物理アドレスを発生し、タイル型配置を示していたらそれに合致する一定間隔で不連続となる参照を行うように物理アドレスを発生するので、タイル型データ配置により高速化される描画部の発生したデータをＣＰＵからアレイ型のアドレス構成でアクセスでき、結果として、高速なアクセスが達成される。
【００２６】
【実施例】
以下に本発明の実施例を図面を用いて詳細に説明する。
【００２７】
図１に本発明のデータ処理装置の基本構成を示す概略図を示す。
【００２８】
このデータ処理装置は、主に、画像データを含むデータを処理する処理部１００と画像データを含むデータ，コマンド，プログラムなどを保持する記憶部２００及びこれらを接続するメモリバス４００とを有して構成される。
【００２９】
処理部１は、少なくとも、画像データではない一般のデータを処理するデータプロセッサ部１１０，プロセッサ部からの指示に従って画像データを処理するグラフィックプロセッサ部１２０，記憶部２へのアクセスを制御する入出力制御部１３０及びこれらを接続する内部バス１４０とを有して構成される。
【００３０】
記憶部２００は、一般のデータやプログラムを保持するプログラム領域２１０と画像に関するデータを保持するグラフィック領域２２０とを有して構成される。
【００３１】
さらに、このデータ処理装置は、ハードディスク，フロッピーディスク，ＲＯＭ，ＣＤ−ＲＯＭ等の他の記憶装置，ＣＲＴ，液晶表示装置等の表示装置，マウス，キーボード等の入力装置，プリンタ等の出力装置又は他のデータ処理装置とのデータの転送等を行うモデムなどの通信装置等の補助装置３００を入出力バス  ５００と入出力制御部を介して接続することができる。また、これらの補助装置はデータ処理装置に内蔵することも外付けすることも可能である。
【００３２】
ここで、記憶部２００に保持されるデータのアドレスの割付けを以下に説明する。
【００３３】
記憶部のプログラム領域２１０は、データやプログラムが必要に応じて保持され、そのアドレス割付けは、従来と同じである。この領域では、分岐処理や割込み処理等を除けば、通常、アドレス順にアクセスされることが多い。
【００３４】
これに対して、グラフィック領域２２０は、表示画面に対応してアクセスされることが多い。
【００３５】
つまり、図２（Ａ）に示すように、ある画像処理の中で、例えば、画素データＸ０を処理すると、次に処理する画素データは、その周辺近傍の画素データＸ１〜Ｘ８になることが多い。これは、画像データの処理は、表示する２次元配列の画素データを扱うからである。また、３次元の図形を表示する場合でも、実際に表示する表示装置は２次元平面の表示装置であるから、上述のような近傍の画素データを処理することが多くなる。
【００３６】
さらに、画像処理する対象は、表示領域や描画領域全体を１度に処理するよりも、描画または表示すべき物体や図形ごとに処理する場合が多いことにもある。なお、この図では１２×１２画素の画面例としている。
【００３７】
このような表示画面に対応した画素データをメモリに割り付ける際に、アドレス０からｎまでを１画面全体の配列で割り付けると図２（Ｂ）に示すような画素データの配列になる。このような配列において、近傍の画素データを順次処理する場合には、これら画素データの格納されるアドレスが離散しているのでそのアドレス計算に時間がかかり、処理する画素データの量が多いほど処理時間が増大する。
【００３８】
そこで、複数の画素データを所定の大きさの矩形領域（ブロック）ごとにまとめてアドレスを割り付ける。つまり、この図の例では、３×３の画素データのブロックをまとめて割り付けるために図２（Ｃ）に示すようなアドレスを割り付けている。
【００３９】
このように２次元配列の画素データをブロックごとにまとめてアドレスを割り付けることで、近傍の画素データのアドレス計算が容易になり、アクセスが高速になる。
【００４０】
ここで、ブロックの形状は矩形領域だけでなく他の形状の領域でもよく、その大きさも処理内容に応じて変えることができる。これらの設定は、プログラムなどのソフトウェアによっても、ハードウェアによっても設定できる。
【００４１】
具体的には横長、または、縦長の長方形領域で有り、ハードウェアの簡単化のためにそのサイズは２の冪乗に設定する。この形状は論理ページ毎に割り当てられるアドレス変換テーブルに配置情報として記録されでおり、その写しが高速化のための変換先読みバッファ（ＴＬＢ）に格納されている。これはオペレーティングシステムによりセットされる。または、特定用途向けにハードウェア括り付け論理で実現することも可能で、一定値、または、論理アドレスに上位ビット切り出し等の特定の操作を施して得られる。
【００４２】
ソフトウェアによる指定の具体的な指示方法を図８に示す、変換先読みバッファのエントリのフラグ領域２２１７にエンコードされて格納される。この情報はデータ参照時に対応するページの論理アドレスにより索引され、読みだされる。長方形領域の横幅が２のｎ０乗，縦が２のｍ０乗と指定されていたとすると、図５に示すとおり、アレイ型配列の論理アドレス２１００はタイル型配列の物理アドレス２１１０に変換される。この変換は図中アドレスのｙ０とｘ１の入れ替えにより実現できる。この入れ替えは、連続参照時、即ち、論理アドレスの増加分を一定とした時、物理アドレス側では連続には増加しないことを表す。つまり、２のｎ０乗マイナス１の時の増分が２の（ｍ０＋１）乗マイナス１の２の（ｎ０−１）乗倍を加算して次のアドレスを得る。
【００４３】
以下に、上記図２（Ｃ）のようにアドレスが割り付けられた記憶部をアクセスするデータ処理装置の動作を説明する。
【００４４】
図３（Ａ）に画面の２次元座標軸に基づいた２次元アドレス（Ｘ，Ｙ）を示す。この２次元アドレスは、データプロセッサ部のコマンドに与えられるパラメータとして用いられる。なお、ここでも１２×１２の大きさの例で示している。
【００４５】
データプロセッサ部は、この２次元アドレスを上述のアレイ型アドレス、つまり、論理アドレスに変換して処理を行う。図３（Ｂ）に２次元アドレスの配列に対応したこの論理アドレスを示す。
【００４６】
グラフィックプロセッサは、データプロセッサ部の指示に従って、記憶部をアクセスするが、このグラフィックプロセッサの論理アドレス、つまり、画像論理アドレスは、図３（Ｃ）に示すようにタイル型に配列されている。
【００４７】
記憶部のそれぞれの物理アドレスに割り付けられている画素データの配列は、上述のようにこの画像論理アドレスによって割り付けられている配列と同じである。つまり、画素データをアクセスするのは、データプロセッサ部よりもグラフィックプロセッサの方が頻度が高いので、記憶部の画像領域の画素データの配列はタイル型である。
【００４８】
図３（Ｄ）に、記憶部の物理アドレス，データ処理部の論理アドレス及びグラフィックプロセッサの画像論理アドレスとの対応関係を示す。
【００４９】
これによると、画像処理の高速化のために画素データに対して物理アドレスと画像物理アドレスを１対１に対応付けることで、グラフィックプロセッサと記憶部の画素領域との間は、アドレス変換を行わなくてもアクセスでき、さらに、対象とする画素データの近傍の画素データのアクセスが容易に、高速に行うことができる。
【００５０】
また、データプロセッサ部が画素データをアクセスするときは、データプロセッサ部の論理アドレスから画像論理アドレス又は物理アドレスに変換することで達成される。勿論、通常のデータをアクセスする際には、プログラム領域へのアクセスであるので、従来と同様のアドレス変換、つまり、論理アドレスから物理アドレスへの変換だけでよい。
【００５１】
このような動作を実行させるために、本発明のデータ処理装置では、データプロセッサ部がアクセスするデータが記憶部のどの領域にあるかを判別する領域判定部と、上記領域判定部でグラフィック領域と判定されれば論理アドレスをグラフィック領域の物理アドレス（タイル型アドレス）に変換し、プログラム領域と判定されれば論理アドレスを通常の物理アドレスに変換するアドレス変換部とを有する。
【００５２】
つまり、本発明のデータ処理装置では、データプロセッサ部に記憶部に格納されているデータの領域に応じてアドレス変換の処理内容を変える点に特徴がある。アドレス変換の処理内容を変えるとは、例えば、論理アドレスをアレイ型アドレスかタイル型アドレスのどちらかに変換することである。
【００５３】
また、本発明のデータプロセッサ部は、グラフィックプロセッサ部に画素データのアクセスを指示する場合にも、上述のアドレス変換を用いることができる。その場合には、グラフィックプロセッサ部へのアクセスかを判定する機能を上記領域判定部に設け、グラフィックプロセッサ部へのアクセスであれば、アドレス変換部は、論理アドレスをグラフィック領域の物理アドレス（タイル型アドレス）に変換する。
【００５４】
以上の実施例では、画像データのアクセスを示したが、例えば、データプロセッサ部で行列計算をする場合には、行列のデータを画素データと同様に２次元配列のタイル型アドレスで物理アドレスとして記憶部に保持し、上述のグラフィックプロセッサ部のように直接アクセスすることが可能になる。この場合、グラフィックプロセッサ部がこの行列データにアクセスするには、画像論理アドレスを物理アドレスに変換するアドレス変換部を必要とする場合がある。ただし、行列データと画素データとの物理アドレスであるタイル型アドレスの割り付けが同じであれば、アドレス変換のパラメータが若干異なるだけで、処理方法は同じにできる。
【００５５】
さらに、このデータ処理部にデータプロセッサ部のためにキャッシュメモリを適用する場合も同様に実現できる。なお、この場合には、入出力制御部にキャッシュミス時の記憶部へのデータアクセス処理の機能を付加する。
【００５６】
本発明のデータ処理装置の特徴は、異なるデータ配列に対応する論理アドレスから物理アドレスへの複数種のアドレス変換を行う点にある。
【００５７】
以下に、本発明を適用したデータ処理装置について、より具体的に説明する。
図４は本発明を応用したデータ処理装置の構成の一例である。
【００５８】
ここに示したデータ処理装置は、演算処理部分と画素発生部分などをワンチップに収めたメディアプロセッサ１０００，４枚のメモリモジュール１１００，外部サブシステム１２００とを有して構成されている。
【００５９】
メディアプロセッサ１０００とメモリモジュール１１００との間はアドレス  １９ビット，データ６４ビットのバスで、外部サブシステム１２００とはアドレス，データ共用の８ビットバスで夫々接続されている。
【００６０】
メディアプロセッサ１０００には演算処理部分であるＲＩＳＣコア１０１０，画素発生部分１０２０，バス制御部分１０３０，表示制御部分１０４０，浮動小数点演算機構１０５０、及び、周辺論理１０６０が内蔵されている。
【００６１】
ＲＩＳＣコア１０１０，画素発生部分１０２０，バス制御部分１０３０、及び、周辺論理１０６０は互いにアドレス３２ビット，データ３２ビットの内部バスで、ＲＩＳＣコア１０１０と浮動小数点演算機構１０５０は３２ビットデータバスで、バス制御部分１０３０と画素発生部分１０２０は専用の６４ビットデータバスで、更に、バス制御部分１０３０と表示制御部分１０４０も３２ビットデータバスで接続されている。
【００６２】
また、メモリモジュール１１００には入出力幅が３２ビットで容量が８Ｍビットの同期式ダイナミックメモリ１１１０が２個実装されている。
【００６３】
メモリにはＲＩＳＣコア１０１０が演算処理に使う領域以外に、画素発生部分１０２０が参照する画像やＲＩＳＣコア１０１０が演算処理以外の目的で参照する画像等を記憶する画像領域１１１１がある。
【００６４】
グラフィックス表示処理を実行させる場合、最初にアドレス，データ共用の８ビットバスで接続された外部サブシステム１２００からメモリモジュール１１００へ、図形の頂点に関する座標変換等を行う頂点計算プログラムや、図形に貼り付ける模様等の画像データが設定される。ＲＩＳＣコア１０１０は設定された頂点計算プログラムを元に、浮動小数点演算機構１０５０の演算器を使用して表示すべき図形の表示画面上での位置や貼り付ける模様の位置を計算し、画素発生部分  １０２０が解釈実行できるコマンドの形式に変換してメモリモジュール１１００に格納する。画素発生部分１０２０はこの格納されたコマンドを読みだし、解釈実行する。結果として、表示図形の各画素の値が決定され、しかるべき物理アドレス位置に格納される。このときの画像配置がタイル型となっている。これは塗りつぶしの多い図形描画に於ては横方向だけでなく、縦方向にもデータ参照が頻発するので、これを高速化したいがためである。このようにして発生されたメモリモジュール１１００の画像は表示制御部分１０４０により読みだされ、表示データ賭してモニタへ出力される。
【００６５】
画像領域１１１１は主に画素発生部分１０２０が発生した画素を格納する目的で使用される。
【００６６】
画素の発生は図形の塗りつぶしに代表されるように、２次元的近傍でのメモリアクセスが発生する確率が高い。そのため、画像領域１１１１の構成としては図５で説明するタイル型のアドレス配列になっているのが望ましい。
【００６７】
しかしながら、この領域にはＲＩＳＣコア１０１０からのアクセスもある。これは主に画素発生部分１０２０が発生した画像をチェック等のためにプログラムで参照する場合や、画素発生部分１０２０では不可能な画素発生処理をプログラムで行う場合等に発生する。
【００６８】
このプログラムからのアクセスは後に述べる理由により、タイル状ではなくアレイ状でなければならない。プログラムと実メモリの構成の違いを吸収するため、ＲＩＳＣコア１０１０には領域判定つきアドレス変換機構１０１１を持っている。
【００６９】
次に、図５を用いてアドレス配列について詳しく説明する。
【００７０】
ＲＩＳＣコア１０１０からのアクセスは論理アドレスＶＡ２１００に従い、アレイ型配列２０００の様になっている。
【００７１】
アレイの横幅は２＾ｎであり、高さは２＾ｍである。ＲＩＳＣコア１０１０からアドレスを連続的に出した場合のアクセスは図５に示した通り（２＾ｎ）−１で折り返すパタンとなる。
【００７２】
この論理アドレスと２次元アドレス（ｘ，ｙ）との関係は、ＶＡ２１００の下位ｎビットがｘ、それに続くｍビットがｙの値を示している。
【００７３】
原点のアドレスをｏｒｇ  とすると、ＶＡ２１００は以下の式で表される。
【００７４】
ＶＡ（ｘ，ｙ）＝ｏｒｇ  ＋（２＾ｎ）・ｙ＋ｘ
一方、メモリ状での連続なデータは物理アドレスＰＡ２１１０に従い、タイル型配列２０１０の様になっている。
【００７５】
タイルの横幅は２＾ｎ０であり、高さは２＾ｍ０である。
【００７６】
メモリ上で連続なアクセスは図５に示した通り横は（２＾ｎ０）−１で折り返し、縦は（２＾ｍ０）−１で折り返すタイル状のパタンとなる。タイルの横方向の並びは（２＾ｎ１）−１で折り返す。この物理アドレスと２次元アドレス（ｘ，ｙ）との関係は、ＰＡ２１１０の下位ｎ０ビットがｘ０、それに続くｍ０ビットが  ｙ０、更にｎ１ビットがｘ１，ｍ１ビットがｙ１と続く。
【００７７】
ここで、ｘ１，ｘ０はｘを上位ｎ１ビットと下位ｎ０ビットとに分割したもの、ｙ１，ｙ０はｙを上位ｍ１ビットと下位ｍ０ビットとに分割したものである。
原点のアドレスをｏｒｇ  とすると、ＰＡ２１１０は以下の式で表される。
【００７８】
ＰＡ（ｘ，ｙ）＝ｏｒｇ  ＋｛２＾（ｎ１＋ｍ０＋ｎ０）｝・ｙ１＋｛２＾（ｍ０＋ｎ０）｝・ｘ１＋（２＾ｎ０）・ｙ０＋ｘ０
アレイ型からタイル型へのアドレス変換はＶＡ２１００からＰＡ２１１０への変換である。
図６を用いてタイル型配列２０１０の実際の構成について詳しく述べる。
【００７９】
画素発生部１０２０が扱う論理的なアドレスは±４０９５画素が表現できる空間２００９である。
【００８０】
このうち、実際にメモリアドレスが割り当てられるのはタイル型配列２０１０の部分のみである。
【００８１】
更に、表示に供される部分は６４０×４８０画素の領域２０１１である。
【００８２】
領域２０１１内部の一つのタイル２０１２は横４画素，縦４画素の１６画素で構成されている。
【００８３】
各画素２０１３は３２ビット構成で、１６ビットの奥行き情報Ｚ，５ビットずつの色情報ＲＧＢ、及び、１ビットのフラグ情報Ｆからなっている。
【００８４】
図７はこの構成に於ける論理アドレスＶＡ２１０１から物理アドレスＰＡ２１１１への変換を解説したものである。
【００８５】
ＶＡ２１０１の下位４ビット２１０１（ａ）はタイル行内アドレスｘ０であり、変換されない。
【００８６】
アレイ行内タイル行アドレス２１０１（ｃ）及び２１０１（ｂ）はタイル内データが連続になるように並べ替えられ、２１１１（ｂ）及び２１１１（ｃ）となる。
【００８７】
原点アドレスｏｒｇ  ２１０１（ｅ）及び縦方向タイルアドレス２１０１（ｄ）は通常のアドレス変換機構２２００により、ｏｒｇ  ２１１１（ｅ）及び縦方向タイルアドレス２１１１（ｄ）へ変換される。
【００８８】
このとき領域判定により、２１０１（ｃ）及び２１０１（ｂ）の並べ替えが必要であることを示す判定結果２２０１も同時に出力される。
【００８９】
図８では画像領域の判定信号２２０１を生成する機構を変換先読みバッファ  （ＴＬＢ）のエントリを用いて説明する。
【００９０】
変換先読みバッファ（ＴＬＢ）のエントリフォーマット２２１０はフラグ情報ＦＬＡＧＳ２２１１，許可プロセス情報ＣＯＩＮ２２１２，物理ページ番号ＰＰＮ２２１３，論理ページ番号ＶＰＮ２２１４，空間番号ＳＰＮ２２１５，有効ビットＶ２２１６からなる。
【００９１】
このうち、アドレス付けに拘わる情報はフラグ情報ＦＬＡＧＳ２２１１  に含まれており、その詳細が表２２１７に示されている。
【００９２】
ＦＬＡＧＳ２２１１の５ビットの内、Ｇ−ＥＳＣはグラフィックスエスケープビットであり、これが１の時には残りの４ビットでタイル情報を示す。これが０の時には残りの４ビットは夫々別の意味で使用される。
【００９３】
タイル情報はタイルサイズ及び画素構成を示しており、図６で示したものに対応するのは太枠で囲んだ部分である。
【００９４】
ＲＩＳＣコア１０１０内部にはプロセス情報の一部としてアドレシングがタイル対応か否かのフラグを持っており、これがタイル対応でないことを示している時にのみ画像領域判定信号２２０１が有効になる。
【００９５】
図９（ａ）（ｂ）は本アドレス変換方式によるメモリのアクセスパタンを説明したものである。
【００９６】
図９（ａ）では、論理空間に於けるアレイ型配列２０００に対して画素発生部１０２０からタイルに沿ったアクセス２００１があった場合、物理空間に於けるタイル型配列２０１０上のアクセスパタン２０１１は連続的になる。
【００９７】
図９（ｂ）では、論理空間に於けるアレイ型配列２０００に対してＲＩＳＣコア１０１０からアレイ状のアクセス２００２があった場合、物理空間に於けるタイル型配列２０１０上のアクセスパタン２０１４は不連続になる。
【００９８】
図１０では図９（ｂ）におけるメモリ２０１０とキャッシュ２０２０間の転送をより詳細に説明する。
【００９９】
メモリ２０１０内のデータ配列は本質的に１次元状である。データ番号を図に示した様に０〜７とする。
【０１００】
このデータが画像領域にある場合画素発生部１０２０はこの１次元データをタイル状アドレス空間２０００として認識する。
【０１０１】
画素発生部の高速化のため、タイル２００１内のデータはメモリ状で近傍に位置する様に割り当てられている。
【０１０２】
即ち、図の例ではタイル内のデータが（０，１，２，３）（４，５，６，７）の様に構成される。
【０１０３】
一方、ＲＩＳＣコア１０１０はこれをアレイ型の配列として認識するため、図の例では（０，１，４，５，８，９，……）（２，３，６，７，……）の様にアクセスする。
【０１０４】
そこで、この不連続アクセスが連続な仮想アドレスで参照され、データ自体にも連続性を持たせるのが本データ転送方式の主眼点である。これを実現するため、キャッシュメモリ２０２０を構成するキャッシュライン２０２２内のデータ配列をキャッシュラインの転送時に並べ替える。
【０１０５】
即ち、図の例ではキャッシュラインを（０，１，４，５）（２，３，６，７）の様に構成する。
【０１０６】
ＲＩＳＣコアからのアクセスが連続化出来た代わりに、ライン転送によるメモリアクセスは不連続なものとなりオーバヘッドが生じる。しかし、これは転送時のみに起り、平均のオーバヘッドはこれにキャッシュのミス率を乗じたものとなるので小さい。本方式を用いなければ、毎サイクルアドレス変換のオーバヘッドを要するため、マシンサイクル時間の増加を招くので全体的に性能が低下する。
この不連続制御は図７に於けるアレイ行内タイル行アドレスの組み替えにより実現されるが、この組み替えが毎回行われたのでは性能低下を招くため、不連続なデータがキャッシュメモリ２０２０上で連続なアクセス２０２２に見えるようにするのが望ましい。図１１〜図１３を用いてこの方法を説明する。
【０１０７】
図１１はキャッシュメモリのミス判定部を示したものである。
【０１０８】
キャッシュラインが１６Ｂで、エントリ数が２０４８の時、キャッシュタグ  ２２２０のアドレスとしては物理アドレス２１１１（ｆ），判定部２２２１へ入力する上位アドレスとしては物理アドレス２１１１（ｇ）を用いることになる。
ところが、物理アドレス２１１１（ｆ）を生成するためにはアドレスの組み替えが必要である。そのためには領域判定の結果を待たねばならないため、遅延時間が大きくなり性能が低下する。
【０１０９】
そこで、物理アドレス２１１１（ｆ）の代わりに論理理アドレス２１０１（ｆ）を用いる方法を考案した。
【０１１０】
キャッシュメモリのラインサイズがタイル幅以下の場合は、図１１に示す様に物理アドレス２１１１（ｆ）がタイル行内アドレスｘ０を包含しない。
【０１１１】
この時、物理アドレス２１１１（ｆ）の代わりに論理理アドレス２１０１（ｆ）を用いることによる違いはデータが格納されるべきエントリの位置だけである。
この違いは論理引きキャッシュメモリでのエントリ位置の違いと同様であり問題ない。
【０１１２】
キャッシュメモリのラインサイズがタイル幅よりも大きい場合、物理アドレス２１１１（ｆ）はタイル行内アドレスｘ０を包含する。
【０１１３】
この時、物理アドレス２１１１（ｆ）の代わりに論理理アドレス２１０１（ｆ）を用いること、即ち、タイリングによるデータ入れ替えの影響はキャッシュメモリのエントリ位置のみならず、ライン内部のデータ配列にも及ぶ。
【０１１４】
ここで、ライン内部のデータ配列の並べ替えはキャッシュメモリのミス時のライン転送の際に行うことで並べ替えのオーバヘッドをライン転送オーバヘッドで吸収することが可能となる。
【０１１５】
図１２はキャッシュのライン転送時のメモリアドレス生成制御を説明したものである。
【０１１６】
キャッシュメモリがミスするとアドレス変換により、対応する物理アドレス  ＰＡ２１１１が求められる。
【０１１７】
タイルの横幅を１６Ｂ，タイルサイズを６４Ｂ，キャッシュラインサイズを  ３２Ｂ，データ転送単位を４Ｂと仮定する。
【０１１８】
物理アドレスＰＡ２１１１の下位２ビット（１：０）はデータ転送単位内アドレスであるので、アドレス指定不要である。
【０１１９】
物理アドレスＰＡ２１１１のビット（３：２）はタイル行内アドレスであるから、カウンタに従い変化する。この４ワードで１６Ｂとなるので、キャッシュラインの半分をアクセスできる。
【０１２０】
ビット（５：４）はタイル行アドレスである。アレイ型のアクセスを行うわけであるから、これは不変である。
【０１２１】
ビット（３１：６）はタイルアドレスである。この最下位ビット（６）はキャッシュラインの残りの半分をアクセスするためのタイル切り替えのために、カウンタに従い変化する。
【０１２２】
図中２２３０はライン転送時にメモリアドレスを生成するハードウェアを示したものである。
【０１２３】
インクリメンタ２２３１は上述したアドレス変化用のカウンタであり、キャッシュライン３２Ｂを８回転送することが可能なように３ビット幅である。転送開始時にはセレクタ２２３２により“０”が選択され、転送毎に７まで変動信号  ２２３３を生成する。
【０１２４】
変動信号２２３３の下位２ビットはタイル行内ワードアドレスを変化させるのに用いる。具体的には排他的論理和ゲート２２３４を用いて物理アドレスＰＡ２１１１のビット（３：２）と合成する。
【０１２５】
変動信号２２３３の上位１ビットはタイルアドレスを変化させるのに用いる。具体的には排他的論理和ゲート２２３５を用いて物理アドレスＰＡ２１１１のビット  （６）と合成する。
【０１２６】
このように求めた変動分と不変部からライン転送時のメモリアドレス２２３６が合成される。
【０１２７】
図１３はキャッシュのライン転送時のメモリアドレス生成順序を説明したものである。
【０１２８】
例題のキャッシュライン２０２２として、物理，論理アドレスともにアドレス１６から始まる３２Ｂを考える。このラインに含まれるワードの論理アドレス  ＶＡ２１０１の列は（１６，２０，２４，２８，３２，３６，４０，４４）、論理アドレスＰＡ２１１１の列は（１６，２０，２４，２８，８０，８４，８８，９２）である。
【０１２９】
キャッシュミスしたワードがＶＡ２１０１で４０，ＰＡ２１１１で８８のワードであった場合、図に示すとおりＶＡ２１０１で（４０，４４，３２，３６，２４，２８，１６，  ２０）、ＰＡ２１１１で（８８，９２，８０，８４，２４，２８，１６，２０）の順にアクセスすることになる。
【０１３０】
図１４はキャッシュメモリのラインサイズがタイル幅以下の場合のライン転送の様子を示したものである。
【０１３１】
この場合は図１１で説明したとおり、論理アドレスで指定されるエントリに対応するデータが格納される。即ち、タイル型配列２０１０内のデータ２０１４  （ａ）が、対応するキャッシュメモリのライン２０２２（ａ）へ転送される。
【０１３２】
図１４は下部にライン転送のタイムチャートを示す。
【０１３３】
物理メモリとしてクロック１０５１に同期して動作する同期型のＤＲＡＭを考える。
【０１３４】
キャッシュメモリがミスした時点で、バス制御部分１０３０からライン転送要求が出される。以下、その手順を示す。
【０１３５】
まず、同期型ＤＲＡＭ内部でデータをメモリラインバッファへ転送するためのコマンド信号１０９０及びアドレス信号１０７０を夫々１０９１（ａ），１０７１（ａ）のタイミングで出力する。
【０１３６】
次に２サイクル空けてデータの連続読み出しコマンド及び開始アドレスを夫々１０９１（ｂ），１０７１（ｂ）のタイミングで出力する。
【０１３７】
これら一連のコマンド及びアドレスに対応するデータはデータ信号１０８０を用いて、更に２サイクル空けた１０８１のタイミングで２サイクルに渡って転送される。
【０１３８】
図１５はキャッシュメモリのラインサイズがタイル幅に対して倍の大きさである場合のライン転送の様子を示したものである。
【０１３９】
この場合は、論理アドレスで指定されるエントリに隣り合う２つのタイルから夫々対応するデータが格納される。即ち、タイル型配列２０１０内のデータ２０１４（ａ）（ｂ）が、対応するキャッシュメモリのライン２０２２（ａ）（ｂ）へ転送される。
【０１４０】
図１５下部にライン転送のタイムチャートを示す。図１４と同様の転送を２回繰り返す形になる。即ち、先の転送にコマンド１０９２（ａ）（ｂ），アドレス  １０７２（ａ）（ｂ），データ１０８２（ａ）（ｂ）が加わる。
【０１４１】
図１６はキャッシュメモリのラインサイズがタイル幅の４倍の場合のライン転送の様子を示したものである。
【０１４２】
この場合は、論理アドレスで指定されるエントリに隣り合う２つのタイルから夫々対応するデータが格納される。即ち、タイル型配列２０１０内のデータ２０１４（ａ）（ｂ）（ｃ）（ｄ）が、対応するキャッシュメモリのライン２０２２（ａ）（ｂ）  （ｃ）（ｄ）へ転送される。
【０１４３】
図１６下部にライン転送のタイムチャートを示す。
【０１４４】
図１５と同様の転送を２回繰り返す形になる。即ち、先の転送にコマンド１０９３（ａ）（ｂ），１０９４（ａ）（ｂ），アドレス１０７３（ａ）（ｂ），１０７４（ａ）（ｂ），データ１０８３（ａ）（ｂ），１０８４（ａ）（ｂ）が加わる。
【０１４５】
図１７は本方式を用いた場合のソフトウェア整合性に関する効果の例である。
３０００（ａ）は従来のソフトウェアシステムを示す。
【０１４６】
画像領域を参照するアプリケーション３０１０（ａ），３０１０（ａ）から呼び出される画像領域アクセスのためのファームウェア関数３０２０（ａ）、及び、アレイ状に配置された画像領域３０３０（ａ）から構成される。
【０１４７】
３０００（ｂ）は従来のソフトウェアシステムの画像領域３０３０（ｂ）を画素発生部高速化のためにタイル型の配列にした場合を示している。
【０１４８】
この時、画像領域を参照するアプリケーション３０１０（ｂ）は変更がないが、３０１０（ｂ）から呼び出される画像領域アクセスのためのファームウェア関数は基本部３０２１（ｂ）にソフトウェアによるアドレス変換部３０２２（ｂ）が追加された形となる。
【０１４９】
ハードウェアに依存した形でファームウェア関数を作り直す必要がある。
【０１５０】
更に、ソフトウェアによる変換を行うため演算処理が増える上、キャッシュメモリのミスも頻発するため性能が低下する。
【０１５１】
３０００（ｃ）は本方式によるアドレス管理を行った場合を示している。
【０１５２】
画像領域の制御部分のみがハードウェアによるアドレス変換部３０３１（ｃ）を含むタイル型の画像領域３０３２（ｃ）となる。
【０１５３】
アプリケーション３０１０（ｃ），３０１０（ｃ）から呼び出される画像領域アクセスのためのファームウェア関数３０２０（ｃ）には変更がない。
【０１５４】
また、タイル型のデータの並べ替えのためのオーバヘッドをキャッシュメモリのライン転送で吸収しているので、性能低下も少ない。
【０１５５】
図１８は本方式を用いた場合のソフトウェア整合性に関する効果の別の例である。
【０１５６】
３１００（ａ）は従来のソフトウェアシステムを示す。
【０１５７】
これは、図１７で説明したシステムで、画像領域を参照するアプリケーション３０１０（ａ）に加えて３０１０（ａ）から呼び出される画像領域アクセスのためのファームウェア関数３０２０（ａ）もアプリケーション３１１０（ａ）として管理する場合である。
【０１５８】
３１００（ｂ）は従来のソフトウェアシステムの画像領域３１３０（ｂ）を画素発生部高速化のためにタイル型の配列にした場合を示している。
【０１５９】
この時、画像領域を参照するアプリケーション３１１０（ｂ）は基本部３１１１（ｂ）にソフトウェアによるアドレス変換部３１１２（ｂ）が追加されたものとなる。
【０１６０】
ハードウェアに依存した形でアプリケーションを作り直す必要がある。
【０１６１】
更に、ソフトウェアによる変換を行うため演算処理が増える上、キャッシュメモリのミスも頻発するため性能が低下する。
【０１６２】
３１００（ｃ）は本方式によるアドレス管理を行った場合を示している。
【０１６３】
画像領域の制御部分のみがハードウェアによるアドレス変換部３１３１（ｃ）を含むタイル型の画像領域３１３２（ｃ）となる。
【０１６４】
アプリケーション３０１０（ｃ）は変更がない。
【０１６５】
また、タイル型のデータの並べ替えのためのオーバヘッドをキャッシュメモリのライン転送で吸収しているので、性能低下も少ない。
【０１６６】
図１９はタイル型の配列を採用することによる画素発生部の高速化の効果を示している。
【０１６７】
図１９の４０００は図形サイズとタイルサイズを変化させたときの図形が含まれるタイルの平均枚数を示している。
【０１６８】
ここではタイルサイズを２５６画素，画素のサイズは１６ビットとする。
【０１６９】
また、画素発生部のキャッシュラインサイズとしてこれが完全に包含される  ５１２Ｂを仮定する。
【０１７０】
例えば縦横８画素ずつの６４画素の図形を発生する場合を考える。
【０１７１】
アレイ型の配列は縦１画素，横２５６画素のタイルに対応する。
【０１７２】
このときの平均タイル数は１６．９  である。画素のアクセス数６４に別タイルアクセスの起動レーテンシが加算される。
【０１７３】
起動レーテンシは図１４で説明したとおり、６サイクルである。
【０１７４】
必要なデータが順番に到着するとしても平均サイクル数は以下のとおりである。
【０１７５】
６４＋１６．９×６＝１６５．６
タイル型の配列として縦横１６画素ずつの２５６画素を考える。
【０１７６】
このときの平均タイル数は３．７５  である。画素のアクセス数６４に別タイルアクセスヘ起動レーテンシが加算される。
【０１７７】
別タイルのアクセスのペナルティをアレイ型の場合と同様に計算すると以下のようになる。
【０１７８】
６４＋３．７５×６＝８６．５
両者を比較するとタイル型の方が平均して１．９  倍も高速であることが分かる。
【０１７９】
本実施例では画像処理について説明したが、２次元近傍データを扱う他の例として、ブロック化された行列計算の高速化が挙げられる。近年、学会でも報告されている行列のブロック化技法は大きな行列をブロックに区切り、ブロック毎に計算を進めることによりデータのローカリティを高め、キャッシュメモリなどのデータバッファの効率を向上すると言う考え方である。しかしながら、この場合、物理的メモリの配置情報については触れられておらず、行列が大きいときに頻繁に起こる物理メモリアクセスの高速化については述べられていない。物理メモリアクセスはタイル型配置を採用することによって、近傍データのアクセスの高速化に寄与できる。しかるに、ＣＰＵは論理アドレスに対してアレイ型参照形態を取るため、物理的配置との整合性が悪く、データバッファの効率が悪い。即ち、ブロック化したプログラミングに於てもアレイ型のデータ領域がバッファリングされてしまう。本発明による不連続アドレス参照により、ブロック外データのバッファリングを抑制することが可能である。
【０１８０】
【発明の効果】
本発明によれば、画素データのアクセスを高速に行うことができる。
【０１８１】
また、画像処理の対象となる画素データの近傍の画素データの処理を簡単にかつ高速に実行することができる。
【０１８２】
また、記憶部に配列されているデータを異なる論理アドレスでアクセスすることができる。つまり、複数のプロセッサ部で管理する異なる論理アドレスに対して、共通する物理アドレスのデータを効率よくアクセスすることができる。
【０１８３】
同一のデータの処理に対して、ハードウェアまたはプロセス（ソフトウェア）毎に異なるアドレッシング、即ち、アレイ状の配列やタイル状の配列などを用いたプログラミングが可能となる。
【０１８４】
画像処理の速度が、アレイ型アドレスに配置した画素データの処理に比べて、タイル型アドレスに配置した画素データの処理が約２倍の処理速度で処理することができる。
【図面の簡単な説明】
【図１】本発明のデータまたは装置の一実施例。
【図２】データ配列の説明図。
【図３】アドレスの割り付けの説明図。
【図４】システム構成の一実施例。
【図５】アレイ型配列とタイル型配列の説明図。
【図６】画像領域論理空間の説明図。
【図７】２次元アドレス変換の一実施例。
【図８】変換テーブルの一実施例。
【図９】アクセスパタンと物理アドレスとの関係の説明図。
【図１０】アクセスパタンと物理アドレスとの関係の説明図。
【図１１】キャッシュメモリアドレス管理の一実施例。
【図１２】キャッシュメモリアドレス管理の一実施例。
【図１３】キャッシュメモリアドレス管理の一実施例。
【図１４】ライン転送方式の一実施例。
【図１５】ライン転送方式の一実施例。
【図１６】ライン転送方式の一実施例。
【図１７】ソフトウェアシステム構成の一実施例。
【図１８】ソフトウェアシステム構成の一実施例。
【図１９】図形当りの平均タイル数の説明図。
【符号の説明】
１０００…メディアプロセッサ、１０１０…ＲＩＳＣコア、１０１１…領域判定付きアドレス変換、１０２０…画素発生部、１０３０…バス制御部、１０４０…表示制御部、１０５０…浮動小数点演算機構、１０６０…周辺論理、１０５１…クロック信号、１０７０…アドレス信号、１１００…メモリモジュール、１１１０…同期式ＤＲＡＭ、１１１１，３０３０（ａ），３０３０（ｂ），３０３２（ｃ），３１３０（ａ），３１３０（ｂ），３１３２（ｃ）…画像領域、１２００…外部サブシステム、２０００…アレイ型配列、２００１…画素発生プロセスからのアクセスパタン、２００２…ＲＩＳＣコアからのアクセスパタン、２００９…描画プロセス論理空間、２０１０…タイル型配列、２０１１…表示領域、２０１２…タイル、２０１３…画素構成、２０１４，２０１４（ａ），２０１４（ｂ），２０１４（ｃ），２０１４（ｄ）…画素発生プロセスからの物理アクセスパタン、２０１５…ＲＩＳＣコアからの物理アクセスパタン、２０２０…キャッシュメモリ上の配列、２０２２…ＲＩＳＣコアからのキャッシュメモリアクセスパタン、２０２２（ａ），２０２２（ｂ），２０２２（ｃ），２０２２（ｄ）…キャッシュライン、２１００…アレイ型配列の論理アドレス、２１０１…アレイ論理アドレス、２１０１（ａ），２１１１（ａ）…タイル行内アドレス、２１０１（ｂ），２１１１（ｂ）…タイル横アドレス、２１０１（ｃ），２１１１（ｃ）…タイル内行アドレス、２１０１（ｄ），２１１１（ｄ）…タイル縦アドレス、２１０１（ｅ），２１１１（ｅ）…原点アドレス、２１０１（ｆ）…キャッシュタグ論理アドレス、２１１０…タイル型配列の論理アドレス、２１１１…タイル物理アドレス、２１１１（ｆ）…キャッシュタグ物理アドレス、２１１１（ｇ）…キャッシュ連想アドレス、２２００…アドレス変換バッファ、２２０１…画像領域判定信号、２２１０…アドレス変換テーブル詳細、２２１１…フラグ、２２１２…プロセス情報、２２１３…物理ページ番号、２２１４…論理ページ番号、２２１５…空間番号、２２１６…有効ビット、２２１７…フラグエンコードテーブル、２２２０…キャッシュタグメモリ、２２２１…キャッシュミス判定機構、３０００（ａ）…従来のソフトウェアシステム、３０００（ｂ）…タイル化された従来のソフトウェアシステム、３０００（ｃ）…本方式によるソフトウェアシステム、３０１０（ａ），３０１０（ｂ），３０１０（ｃ），３１１０（ａ），３１１０（ｃ）…アプリケーションプログラム、３０２０（ａ），３０２０（ｃ）…ファームウェア関数、３０２１（ｂ）…ファームウェア関数本体、３０２２（ｂ）…ソフトウェアアドレス変換部、３０３１（ｃ），３１３１（ｃ）…ハードウェアアドレス変換部、３１００（ａ）…従来のソフトウェアシステム、３１００（ｂ）…タイル化された従来のソフトウェアシステム、３１００（ｃ）…本方式によるソフトウェアシステム、３１１１（ｂ）…アプリケーションプログラム本体、３１１２（ｂ）…ソフトウェアアドレス変換部、４０００…図形当りの平均タイル数の表。
【図１】
0003619565.tif 000002
【図２】
0003619565.tif 000003
【図３】
0003619565.tif 000004
【図４】
0003619565.tif 000005
【図５】
0003619565.tif 000006
【図６】
0003619565.tif 000007
【図７】
0003619565.tif 000008
【図８】
0003619565.tif 000009
【図９】
0003619565.tif 000010
【図１０】
0003619565.tif 000011
【図１１】
0003619565.tif 000012
【図１２】
0003619565.tif 000013
【図１３】
0003619565.tif 000014
【図１４】
0003619565.tif 000015
【図１５】
0003619565.tif 000016
【図１６】
0003619565.tif 000017
【図１７】
0003619565.tif 000018
【図１８】
0003619565.tif 000019
【図１９】
0003619565.tif 000020