JP2001022638A - 情報処理システム - Google Patents

情報処理システム

Info

Publication number
JP2001022638A
JP2001022638A JP11190447A JP19044799A JP2001022638A JP 2001022638 A JP2001022638 A JP 2001022638A JP 11190447 A JP11190447 A JP 11190447A JP 19044799 A JP19044799 A JP 19044799A JP 2001022638 A JP2001022638 A JP 2001022638A
Authority
JP
Japan
Prior art keywords
data
unit
address
memory
processing unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP11190447A
Other languages
English (en)
Other versions
JP3639464B2 (ja
Inventor
Yuichi Abe
雄一 安部
Yasuhiro Nakatsuka
康弘 中塚
Shigeru Matsuo
松尾  茂
Tetsuya Shimomura
哲也 下村
Manabu Jo
学 城
Jun Sato
潤 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP19044799A priority Critical patent/JP3639464B2/ja
Publication of JP2001022638A publication Critical patent/JP2001022638A/ja
Application granted granted Critical
Publication of JP3639464B2 publication Critical patent/JP3639464B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Image Input (AREA)
  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【課題】 メモリアクセスに関して、異なったローカリ
ティ(局所性)を持つ処理部が混在した場合でも、それ
ぞれのローカリティに適したメモリアクセスを可能にす
る情報処理システムを提供する。 【解決手段】 同時アクセス可能で、それぞれ16バイ
ト単位で読み書き可能な、4つのモジュール0〜3で構
成され、64バイト単位で読み書き可能なユニファイド
メモリに、4つのパックから構成される64バイトの画
像データを格納する場合、リニアアクセスモード時に
は、4つのパック(0,0)、(0,1)(0,2)
(0,3)を、それぞれ、モジュール0、1、2、3に
格納する。また、タイルアクセスモード時には、4つの
パック(0,0)、(1,0)、(2,0)、(3,
0)を、それぞれ、モジュール0、1、2、3に格納す
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数の処理部が同
一のメモリにアクセスする情報処理システムに関し、特
に、ユニファイドメモリアーキテクチャ(UMA)を採
用したシステムにおけるメモリアクセスの高速化に関す
る。
【0002】
【従来の技術】情報処理システムにおける処理部は、そ
の行う処理によって、メモリアクセスに関して、様々な
ローカリティ(局所性)を持つ。ここでのローカリティ
とは、主に空間的な局所性を意味し、複数のデータから
構成されるデータ構造において、あるデータがアクセス
されると、その近くに配置されたデータも近い将来アク
セスされる可能性が高いという性質をいう。従来から、
処理によって異なるローカリティを有効に利用するため
の工夫がなされてきた。
【0003】例えば、特開平8−297605号公報に
は、メモリ空間を小矩形であるタイルに分割し、タイル
内でリニアになるようにメモリとキャッシュのアドレス
を管理して、CPUが画像領域にアクセスする際、タイ
ル単位にキャッシュに転送する方式が開示されている。
この方式では、テクスチャマッピングのように画像に対
して2次元的なローカリティを持った処理、即ち、次の
アクセスが画像の2次元的な全ての方向に対してなされ
る可能性がある処理では、2次元のタイルを単位にキャ
ッシングしているためヒット率が向上する。
【0004】一方、近年、システムLSIでは、メモリ
システムに、ユニファイドメモリ・アーキテクチャ(U
MA)が用いられている。ユニファイドメモリ(以下、
UMという)とは、従来、別々のメモリに格納されてい
たデータ(例えば、CPUの命令やデータと、表示画像
データやテクスチャ・データ等)を、統合して格納する
メモリをいう。
【0005】このようなUMAを採用した場合、UMに
対して、様々な処理部からアクセスが行われることにな
る。つまり、異なるローカリティを有する処理部からの
メモリアクセスが、同じUMをアクセスする場合が生じ
ることになる。
【0006】例えば、ビデオ入力した画像をUMに格納
し、この画像をテクスチャとしてテクスチャマッピング
に使用したり、或いはこの画像にフィルタを掛ける等の
処理を行うシステムを考えると、これらの各処理はメモ
リアクセスに関してそれぞれ独自のローカリティを有す
る。
【0007】図20は、これらの処理のローカリティを
説明する図である。
【0008】同図に示すように、ビデオ入力は、画素デ
ータが左上から右下へと順に送られてくる。つまり、ビ
デオ入力部は、メモリアクセスに関して、一次元的な
(リニアな)なローカリティを有する。
【0009】これに対して、テクスチャマッピングで
は、UMに格納された画素データを、はりつけ先の形状
等に応じて、縦、横、斜め、とあらゆる方向にアクセス
するため、メモリアクセスに関して、二次元的なローカ
リティを有する。また、UMに格納された画像に対して
フィルタリングを施すフィルタリング処理でも、一般
に、注目する画素の周囲数画素を重み付け平均するた
め、メモリアクセスに関して、二次元的なローカリティ
を有する。
【0010】この場合、UMに対しては、一次元的な
(リニアな)なローカリティを有する処理部と二次元的
なローカリティを有する処理部の両方がアクセスするこ
とになる。
【0011】リニアなローカリティを有する処理につい
ては、アドレスをリニアに管理し、リニアなアクセスや
リニアなキャッシング(バッファリング)を行えるのが
望ましい。また、二次元的なローカリティを有する処理
については、アドレスをタイル型に管理し、タイル型の
アクセスやタイル型のキャッシングを行えるのが望まし
い。
【0012】
【発明が解決しようとする課題】前記公報記載の技術で
は、CPUの命令などリニアなローカリティを有したデ
ータを格納してあるメモリ空間についてはアドレスをリ
ニアに管理している。つまり、図21に示すように、リ
ニアアクセス(及びリニアキャッシング)を行うか、タ
イルアクセス(及びタイルキャッシング)を行うかは、
アクセスするアドレス領域によって決められており、同
一のアドレス空間に対しリニア型アクセスとタイル型ア
クセスの両方を行うことはできなかった。
【0013】例えば、タイル型アドレス領域は、次のア
クセスが2次元的な全ての方向になされる可能性が高い
ことを前提として、タイル型アクセスによってのみアク
セス可能としている。この場合、テクスチャマッピング
のように2次元的なローカリティを有する処理は、効率
的なメモリアクセスが可能で、キャッシュのヒット率の
向上も期待できる。しかし、殆ど右となりの画素が次に
アクセスされるビデオ入力処理についても、タイル型ア
ドレス領域については、タイル型アクセスによって、ア
クセスしなければならず、リニアなローカリティを有し
た処理部のアクセス効率は低下してしまう。
【0014】本発明の目的は、メモリアクセスに関し
て、異なったローカリティ(局所性)を持つ処理部が混
在した場合でもそれぞれのローカリティに適したメモリ
アクセスを可能にする情報処理システムを提供すること
にある。
【0015】
【課題を解決するための手段】本発明に係る第1の情報
処理システムは、複数のモジュールで構成されるメモリ
と、当該メモリに対してアクセスを行う処理部と、当該
処理部から発行されたメモリのアドレスを、アクセスモ
ードに従って、各モジュール毎の個別のアドレスに変換
するアドレス変換部と、アクセスモード及びアドレスに
従って、メモリに読み書きされるデータを並び替えるデ
ータアライナ部とを具備することを特徴とする。
【0016】また、本発明に係る第2の情報処理システ
ムは、特定のサイズを有するデータ単位で読み書きする
ことが可能なモジュールを、N個備えたメモリと、当該
メモリとの間で、N個の前記データ単位からなるデータ
の読み書きを行う処理部と、当該処理部からのアクセス
要求を受けて、メモリに対してアクセスを行うメモリイ
ンタフェース部とを備える。そして、前記メモリインタ
フェース部は、前記処理部から受け取ったN個のデータ
単位のそれぞれが、異なるモジュールに格納されるよう
に、アクセスモードに応じて、各データ単位を格納する
モジュールと、各モジュールにおける格納位置を決定す
ることを特徴とする。
【0017】また、本発明に係る第3の情報処理システ
ムは、特定のサイズを有するデータ単位で、読み書きす
ることが可能なモジュールを、N個備えたメモリと、当
該メモリとの間で、N個のデータ単位からなるデータの
読み書きを行う処理部と、当該処理部がメモリにアクセ
スする際に発行したアドレスを、アクセスモードに従っ
て、各モジュール毎の個別アドレスにアドレス変換を行
うアドレス変換部と、処理部とメモリとの間でデータの
やり取りを行う際、アクセスモードに従って、当該デー
タを構成するデータ単位の並び替えを行うデータアライ
ナ部とを備えることを特徴とする。
【0018】この場合において、前記アドレス変換部
は、N×N個のデータ単位からなる2次元配列におい
て、同一X座標を有するデータ単位は、すべて異なるモ
ジュールに格納され、かつ、同一Y座標を有するデータ
単位は、すべて異なるモジュールに格納されるように、
アドレス変換を行い、前記データアライナ部は、前記ア
ドレス変換部の当該アドレス変換に応じて、データ単位
の並び替えを行うようにしてもよい。
【0019】また、本発明に係る第4の情報処理システ
ムは、それぞれ異なったローカリティを有する処理部
と、それぞれの処理部が共通にアクセスするユニファイ
ドメモリと、各処理部が使用するデータを一時的に貯め
ておくキャッシュ部と、各処理部からのアクセス要求を
受けて、ユニファイドメモリに対してメモリアクセスを
行うメモリインタフェース部と、各処理部から通知され
るアクセスモードに応じて、ユニファイドメモリへアク
セスするためのアドレスを変換するアドレス変換部と、
前記アクセスモードに応じて、ユニファイドメモリとや
り取りするデータを並べ替えるデータアライナ部とから
構成されることを特徴とする。
【0020】この場合において、前記ユニファイドメモ
リを複数のモジュールで構成し、前記アドレス変換部
は、当該各モジュール内に設けるようにしてもよい。ま
た、前記アドレス変換部は、前記メモリインタフェース
部内に設けるようにしてもよい。
【0021】また、本発明に係る第5の情報処理システ
ムは、それぞれ異なったローカリティを有する処理部
と、それぞれの処理部が共通にアクセスするユニファイ
ドメモリと、各処理部が使用するデータを一時的に貯め
ておくキャッシュ部と、各処理部からのアクセス要求を
受けて、ユニファイドメモリに対してメモリアクセスを
行うメモリインタフェース部と、各処理部から通知され
るアクセスモードに応じて、ユニファイドメモリへアク
セスするためのアドレスを変換するアドレス変換部と、
前記処理部と前記キャッシュ部との間に位置し、前記ア
クセスモードに応じて、前記処理部が読み出すデータの
選択を行うデータ選択部とから構成されることを特徴と
する。
【0022】なお、本発明に係る情報処理システムは、
例えば、通常の計算機システムとして、または、1チッ
プ構成のシステムLSIとして実装される。
【0023】また、前記処理部には、例えば、CPU、
ビデオ入力部、ビデオ出力部、テクスチャマッピング
部、フィルタリング部などが該当する。
【0024】
【発明の実施の形態】以下、図面を参照しつつ、本発明
の実施の形態について詳細に説明する。
【0025】図1は、本発明を適用したシステムLSI
の構成を示す図である。本システムLSIは、例えば、
1チップで構成される。
【0026】同図に示すように、本システムLSIは、
CPU100と、ビデオ入力部110と、テクスチャマ
ッピング部/フィルタリング部120と、コネクタ部1
01、111、121と、メモリインタフェース部13
0と、ユニファイドメモリ(以下、UMという)140
とを備える。
【0027】CPU100は、コネクタ部101に接続
され、ビデオ入力部110は、コネクタ部111に接続
され、テクスチャマッピング部/フィルタリング部12
0は、コネクタ121に接続されている。
【0028】コネクタ部101、111、121および
メモリインタフェース部130は、それぞれ、メモリバ
ス150に接続されている。ここでは、メモリバス15
0のデータ幅は、512ビットとする。また、各コネク
タ部101、111、121から出力されるアクセスモ
ード選択信号が、メモリインタフェース部130に入力
されている。
【0029】また、メモリインタフェース部130は、
UM140にも接続されている。
【0030】CPU100、ビデオ入力部110、テク
スチャマッピング部/フィルタリング部120は、それ
ぞれ、異なる処理を行う処理部である。なお、テクスチ
ャマッピング部とフィルタリング部は、ともに二次元的
なローカリティを有しているため、代表して一つの処理
部として示してある。
【0031】コネクタ部101、111、121は、各
処理部とメモリバス150との間のインターフェースを
とる機能ブロックである。コネクタ部101は、キャッ
シュ102を備え、コネクタ部111は、ライトバッフ
ァ(以下、Wバッファという)112を備え、コネクタ
部121は、キャッシュ122を備える。
【0032】キャッシュ102は、CPU100が最近
アクセスしたデータを保持する高速メモリである。例え
ば、CPU100がメモリ・リードを行う際、アクセス
対象データがキャッシュ102内にあれば、そのデータ
がCPU100に渡される。一方、アクセス対象データ
がキャッシュ102内になければ、メモリバス150お
よびメモリインタフェース部130を介して、UM14
0からアクセス対象データを含む1キャッシュライン分
のデータ(ここでは、512バイトのデータとする)が
読み出され、アクセス対象データがCPU100に渡さ
れると共に、読み出されたキャッシュラインデータがキ
ャッシュ102に保持される。
【0033】Wバッファ112は、ビデオ入力部110
から、例えば、画素単位で入力されるデータを順次格納
し、一杯になった時点で、Wバッファ112内のデータ
を、メモリバス150およびメモリインタフェース部1
30を介して、UM140に書き込む。Wバッファ11
2は、ビデオ入力部110とコネクタ部111との間の
データバス幅と、メモリバス150のデータバス幅との
間の差を吸収し、メモリバス150の使用回数を減らす
ためのバッファである。つまり、ビデオ入力データをU
M140に格納する場合、各画素データごとにメモリア
クセスを行っていたのでは、メモリバス150の利用頻
度が非常に高くなるので、複数の画素データをWバッフ
ァにためておいて、あるまとまった単位(ここでは、5
12バイトとする)で、UM140に書き込みを行う。
【0034】キャッシュ122は、テクスチャマッピン
グ部/フィルタリング部120から、例えば、画素単位
でのデータアクセス要求があった場合に、アクセス対象
データがキャッシュ122に既に読み込まれていれば、
キャッシュ122上のアクセス対象データをテクスチャ
マッピング部/フィルタリング部120に渡す。一方、
アクセス対象データがキャッシュ122上になければ、
メモリバス150およびメモリインタフェース部130
を介して、UM140にアクセスを行い、アクセス対象
データを含む1キャッシュライン分のデータ(ここで
は、512ビットのデータとする)を読み出し、要求さ
れたデータをテクスチャマッピング部/フィルタリング
部120に渡すと共に、読みだされたキャッシュライン
データを保持する。
【0035】メモリインタフェース部130は、各処理
部100、110、120からのアクセス要求を調停
し、メモリアクセス要求を出している処理部の中で、実
際にメモリバス150を使うことができる処理部を決定
する。
【0036】調停の結果、アクセスを許可された処理部
は、メモリバス150を通してメモリインタフェース部
130へアドレスとアクセスモード選択信号を送出し、
データの授受を行う。
【0037】メモリインタフェース部130は、受け取
ったアドレス等に従って、所定のタイミングでUM14
0にアクセスを行い、UM140に対してデータの読み
書きを行う。
【0038】メモリインターフェース部130は、アド
レス変換部131とデータアライナ部132とを備え
る。
【0039】アドレス変換部131は、メモリバス15
0からメモリインタフェース部130が受け取ったアド
レスを、アクセスモード選択信号に基づいて、UM14
0の物理アドレスへ変換する。メモリインタフェース部
130は、この物理アドレスを用いて、UM140とデ
ータの授受を行う。
【0040】メモリインタフェース部130がUM14
0とデータの授受を行う際、データアライナ部132
は、必要に応じて、データを所定のデータ単位で並びか
えて、メモリバス150上のデータ配列とUM140上
のデータ配列との間の変換を行う。
【0041】次に、UM140の構成について説明す
る。ここでは、UM140をDRAMを用いて構成した
場合について説明する。
【0042】図2は、UM140の構成を示す図であ
る。
【0043】同図に示すように、UM140は、2LM
の独立したモジュール500で構成される。例えば、出
力の場合、各モジュール500からは、2LWバイトのデ
ータが出力され、各モジュール500からの出力データ
が2LM個分集まって、全体で、UM140から出力され
る2(LW+LM)バイトのデータを構成する。
【0044】また、各モジュール500は、バンクセレ
クタ510、および、2LB個の独立したバンク520を
備える。バンクセレクタ510は、LBビットのバンクア
ドレス(Bアドレス)に基づいて、モジュール500の
出力として、2LB個のバンクのうちのいずれかの出力を
選択する。
【0045】また、各バンク520は、ローセレクタ5
21と、カラムセレクタ522と、センスアンプ523
と、2LR×2LC個のメモリセル524(1メモリセル
は、2LWバイト)とを備える。
【0046】ローセレクタ521は、LRビットのローア
ドレス(Rアドレス)に基づいて、2LR個の行データ
(2(LC+LW)バイトのデータ)の中から、1つの行デー
タを選択して、センスアンプ523に出力する。
【0047】センスアンプ523は、ローセレクタ52
1から出力された2(LC+LW)バイトの行データを検知・
増幅して、保持する。
【0048】カラムセレクタ522は、LCビットのカラ
ムアドレス(Cアドレス)に基づいて、センスアンプ5
23に格納されている2LC個のメモリセル・データの内
の1つを選択し、バンク520からの出力として、2LW
バイトのデータを出力する。
【0049】なお、図2に示したUM140では、すべ
てのモジュール500からの出力を平行にUM140外
部に出力しているが、各モジュール500からの出力を
入力とするセレクタを更に設け、別途供給されるモジュ
ールアドレスに基づいて、一部のモジュールからの出力
のみを、UM140の出力とするようにしてもよい。例
えば、UM140に4つのモジュール0〜3がある場
合、1ビットのモジュールアドレス(Mアドレス)が
「0」のとき、モジュール0および1の出力を出力し、
1ビットのモジュールアドレスが「1」のとき、モジュ
ール2および3の出力を出力するようにしてもよい。
【0050】次に、UM140の動作について説明す
る。これは、一般的なマルチバンク、マルチモジュール
構成のシンクロナスDRAMと同様の動作である。
【0051】UM140には、メモリインタフェース部
130から、バンクアドレス、ローアドレス、カラムア
ドレスなどのアドレスと、リード(読み出し)、ライト
(書込み)を表わすコマンドが入力される。なお、ライ
トの場合は、書き込むデータも入力される。
【0052】まず、リードの際の動作について説明す
る。
【0053】各バンク520では、バンクアドレスによ
って自分が指定されると、ローアドレスに対応する2
(LC+LW)バイトの行データが、センスアンプ523に読
み出される。
【0054】センスアンプ523に読み出された行デー
タは、カラムセレクタ522に入力される。カラムセレ
クタ522は、カラムアドレスに基づいて、センスアン
プ523に読みだされた行データの中から、2LWバイト
のデータを一つ選択し、バンク520から出力する。
【0055】各バンク520から出力された2LWバイト
のデータは、バンクセレクタ510に入力される。バン
クセレクタ510は、バンクアドレスに基づいて、2LB
個のバンク出力のうちから1つを選択して、モジュール
出力として出力する。
【0056】前述したように、各モジュール500から
出力された2LM個の2LWバイトのデータ、計2(LM+LW)
バイトがUM140より出力される。UM140から読
み出されたデータは、メモリインタフェース部130に
渡される。
【0057】なお、センスアンプ523に行データを読
み出すには、所定のサイクル数(例えば、6サイクル)
が必要であるが、センスアンプ523に既に読み出され
ているデータをアクセスする場合は、メモリセル524
から行データを読み出す必要はないので、高速に(例え
ば、2サイクルで)アクセスすることができる。従っ
て、ローカリティの高いデータは、同時にセンスアンプ
523に読み出されるようにすることが望ましい。
【0058】次に、ライトの際の動作について説明す
る。
【0059】各バンク520では、バンクアドレスで自
分が指定されると、ローアドレスに対応する2(LC+LW)
バイトの行データがセンスアンプ523に送られる。
【0060】UM140に入力された書込みデータは、
各モジュール500に入力され、バンクアドレスにより
指定されたバンクのセンスアンプ123上にある行デー
タのうち、カラムアドレスにより選択された2LWバイト
のデータが書込みデータにより書き換えられる。
【0061】ライトの場合も、リードの場合と同様に、
各バンクのセンスアンプ123に既に読み出されている
データは高速に(例えば、1サイクルで)アクセスする
ことができるので、ローカリティの高いデータは同時に
センスアンプに読み出されるようにすることが望まし
い。
【0062】以下では、UM140の構成として、LM=
2、LB=4、LR=8、LC=4、LW=4の場合を考える。すなわ
ち、UM140は、4(=22)個の独立したモジュー
ル500で構成される。また、各モジュール500は、
16(=24)個のバンク520を備え、各バンク52
0は、28×24個のメモリセル524を備える。また、
各メモリセル524は、24バイトのデータを格納す
る。この場合、各モジュール500からは、それぞれ、
16(=24)バイトのデータが出力されるので、UM
140からの出力は、4×16バイト=64バイト(=
512ビット)となる。
【0063】次に、本実施形態で扱われる画像について
説明する。
【0064】図3は、本実施形態で扱われる512×5
12画素サイズの画像の階層構造を示す図である。
【0065】画像データは、この階層的な区分に対応し
た形でメモリ上に格納される。実際にはこの階層とメモ
リ上のアドレスが対応することになり、この対応をアド
レスマッピングという。
【0066】同図に示すように、本実施形態において
は、512×512画素の画像1枚は、8×32のブロ
ックから構成されるものとする。また、各ブロックは、
4×4のセルから構成されるものとする。
【0067】そして、各セルは、16×4の画素から構
成される。更に、各画素は、R(赤)、G(緑)、B
(青)、α(透明度)各1バイトの4成分から構成され
る。すなわち、1画素は、4バイト=32ビットのデー
タから構成される。従って、512×512画素の画像
1枚は、1Mバイトのデータで構成される。
【0068】次に、前述したような画像データをUM1
40に格納する際のアドレスマッピングについて説明す
る。
【0069】図4は、画像データをUM140に格納す
る際のアドレスマッピングの例を示す図である。
【0070】ここでは、UM140のうち、4Mバイト
のメモリ領域(以下、画像領域という)が、画像データ
の格納に使われるものとする。この場合、画像領域は、
22ビットのアドレスによって、アクセスされる。
【0071】図4の例は、この22ビットのアドレス
と、UM140における、2ビットのモジュールアドレ
ス(M[1:0])、4ビットのバンクアドレス(B[3:0])、
8ビットのローアドレス(R[7:0])、4ビットのカラム
アドレス(C[3:0])、4ビットのバイトアドレス(W[3:
0])との間のアドレスマッピングを示している。
【0072】前述したように、512×512画素の画
像1枚は、1Mバイトなので、先頭の2ビットは、画像
領域内でアクセスすべき画像の先頭アドレスを表わして
いる。この2ビットは、B[3]、B[2]として使われる。こ
こで、B[2]という記述は、バンクアドレスの第2ビット
を表わす。ただし、Bの最下位ビットは、B[0]としてい
る。
【0073】次の8ビットは、最上位2ビットで指定さ
れた画像内でアクセスすべきブロックの先頭アドレスを
示している。ここで、上位5ビットは、画像の縦方向の
アドレスYで、下位3ビットは、画像の横方向のアドレ
スXである。この8ビットは、ローアドレスR[7]〜R
[0]として使われる。
【0074】同様に、その次の4ビットは、指定された
ブロック内でアクセスすべきセルの先頭アドレスを示し
ている。ここで、上位2ビットは、縦方向のアドレスY
で、下位2ビットは、横方向のアドレスXである。この
4ビットは、B[1]、C[3]、B[0]、C[2]として使われ
る。
【0075】最後の8ビットは、指定されたセル内部の
アドレスであるが、このうち上位2ビットは、セル内の
ライン(UM140から出力される64バイトのデータ
の単位)の先頭アドレスである。また、残り6ビット
は、ライン内のバイトアドレスであるが、UM140に
対しては、ライン単位でデータがアクセスされるので、
この6ビットのライン内バイトアドレスは、UM140
に入力する必要はない。
【0076】次に、図4に示したアドレスマッピング時
のセル内の画素のアドレス割付について具体的に説明す
る。
【0077】図5は、一つのセル(16×4画素)内の
画像データをメモリに格納する際の格納方式を説明する
図である。
【0078】同図に示すように、セル内の各画素には、
横方向(X方向)4画素のかたまり毎に、2次元のアド
レスが付与されている。ここでは、第一座標をY、第二
座標をXとして(Y,X)の形で記す。以下、この2次
元のアドレスが付与された4画素のかたまりを、パック
と呼ぶ。
【0079】パック(0,0)〜(3,3)が、(0,
0)〜(0,3),(1,0)〜(1,3),(2,
0)〜(2,3),(3,0)〜(3,3)の順に、U
M140に格納されているとすると、図4に示したアド
レス割付においては、同一のX座標を持つ4つのパック
が同一モジュール(モジュールアドレス:X)に格納さ
れる。
【0080】すなわち、パック(0,0)、(1,
0)、(2,0)、(3,0)がモジュール0に格納さ
れ、パック(0,1)、(1,1)、(2,1)、
(3,1)がモジュール1に格納され、パック(0,
2)、(1,2)、(2,2)、(3,2)がモジュー
ル2に格納され、パック(0,3)、(1,3)、
(2,3)、(3,3)がモジュール3に格納される。
【0081】この時、同一のY座標を持つ4つのパック
(例えば、パック(0,0)、(0,1)、(0,
2)、(0,3))は別々のモジュール500に格納さ
れているので、横並びの16画素に対しては同時にアク
セスできる。しかし、前述したように同一のX座標を持
つ4つのパック(例えば、パック(0,0)、(1,
0)、(2,0)、(3,0))は同一のモジュール5
00に格納されているので、4×4画素に対しては同時
にアクセスができない。つまり、この場合は、リニアア
クセスには適しているが、タイルアクセスには適してい
ない。
【0082】一方、パック(0,0)〜(3,3)が、
(0,0)〜(3,0),(0,1)〜(3,3),
(0,2)〜(3,2),(0,3)〜(3,3)の順
に、UM140に格納されているとすると、図4に示し
たアドレス割付においては、同一のY座標を持つ4つの
パックが同一モジュール(モジュールアドレス:Y)に
格納される。この場合、タイルアクセスには適している
が、リニアアクセスには適していない。
【0083】リニアアクセスとタイルアクセスの両方に
適したものにするためには、「同一セル内において、同
一X座標を有するパックは、すべて異なるモジュールに
格納されており、かつ、同一Y座標を有するパックは、
すべて異なるモジュールに格納されている」必要があ
る。
【0084】図6は、このような条件を満たした格納方
式を示す図である。同図において、縦方向(Y方向)に
並んだ4つのパックは、同一モジュールに格納される。
すなわち、パック(0,0)、(1,3)、(2,
2)、(3,1)は、モジュール0に格納され、パック
(0,1)、(1,0)、(2,3)、(3,2)は、
モジュール1に格納され、パック(0,2)、(1,
1)、(2,0)、(3,3)は、モジュール2に格納
され、パック(0,3)、(1,2)、(2,1)、
(3,0)は、モジュール3に格納される。
【0085】図6では、第0行目(Y=0)のパック
は、X座標が0,1,2,3と並んでいるが、第1行目
(Y=1)のパックは、X座標が0,1,2,3を一つ
ずらした形、つまり、3,0,1,2と並んでいる。同
様に第2行目、第3行目も、さらに一つづつずらした形
で並んでいる。
【0086】このような形でパックを格納すれば、「同
一セル内において、同一X座標を有するパックは、すべ
て異なるモジュールに格納され、同一Y座標を有するパ
ックは、すべて異なるモジュールに格納される」という
条件を満たし、リニアアクセスとタイルアクセスを両立
させることができる。
【0087】図7は、このような形でパックを格納する
場合のアドレス割付を示す図である。
【0088】同図に示すように、図4とほぼ同様のアド
レス割付になっているが、セル内のライン選択アドレス
が直接的にカラムアドレスとはなっておらず、新たな2
ビットのライン選択アドレスL[1],L[0]に代わっている
点が異なる。これはラインを選択する際にモジュール毎
に異なるカラムアドレスを指定する必要があるからであ
る。
【0089】したがって、図7に示すアドレスは、最終
的にメモリセルをアクセスするまでにアドレス変換する
必要がある。また、アクセスモードがリニアアクセスモ
ードかタイルアクセスモードかによって、アドレス変換
の方法が異なるため、アドレス変換する際にはアクセス
モード選択信号を考慮する必要がある。アドレス変換部
131が、このアドレス変換を行う。
【0090】さらに、このようにずらした形で格納され
たデータは、処理部でアクセスする際のデータ並びとは
異なるため、処理部にデータを渡す前に、UM140か
ら読み出したデータの並び替えをする必要がある。デー
タアライナ部132が、このデータの並び替えを行う。
【0091】次に、このアドレス変換とデータの並び替
えの方法について説明する。
【0092】図8は、アクセスモードがリニアアクセス
モードの場合の入力アドレス(ライン選択アドレス)に
対するアドレス変換結果およびデータアライメントの対
応を示す図である。
【0093】図8に示した表において、1列目はライン
選択アドレスの値、2列目はモジュール番号(モジュー
ルアドレス)を示しており、これらの組み合わせに対し
て、カラムアドレス(3列目)、UM140の各モジュ
ールに格納されているパックの座標(4列目)、画像本
来の画素の並びになるよう並び替えたときのパックの座
標(5列目)、及び、パックの並びを正しく並び替える
ための置換(6列目)を示している。
【0094】6列目にあるS1、S2の記号は、特定の
置換を表す。S1は、(0,1,2,3)という配列
を、(1,2,3,0)という配列へと変換する巡回置
換を示し、S2は、(0,1,2,3)という配列を
(2,3,0,1)という配列へと変換する巡回置換、
即ち、置換S1を2度施した置換S1*S1を示す。ま
た、1は、配列を変化させない恒等置換を示す。
【0095】図8においてアドレス変換に注目すると、
カラムアドレス[C1,C0]はライン選択アドレスの値と一
致している。
【0096】なお、図に示した置換は、読み出し時、す
なわち、各モジュール500に格納されている状態から
正しい状態に(元の画素配列のように)並べ替える際の
置換である。書込みの際は、6列目の逆置換を施せばよ
い。1の逆置換は1、S1の逆置換はS1*S2、S2
の逆置換はS2、S1*S2の逆置換は、S1である。
【0097】図9は、アクセスモードがタイルアクセス
モードの場合の入力アドレス(ライン選択アドレス)に
対するアドレス変換結果およびデータアライメントの対
応を示す図である。
【0098】図9に示した表の構成は、図8に示した表
の構成と同じで、1列目はライン選択アドレスの値、2
列目はモジュール番号を示しており、これらの組み合わ
せに対して、カラムアドレス(3列目)、UM140の
各モジュールに格納されているパックの座標(4列
目)、画像本来の画素の並びになるよう並び替えたとき
のパックの座標(5列目)、及び、パックの並びを正し
く並び替えるための置換(6列目)を表わしている。
【0099】図9においてアドレス変換に注目すると、
カラムアドレス[C1,C0]は2ビットの演算でモジュール
番号からライン選択アドレスの値を引いた値になってい
る。
【0100】なお、図8と図9の6列目はすべて同じ置
換になっており、この場合にはデータアライナ部132
は、アクセスモード選択信号を必要としない。
【0101】但し、一般に、「セル内において、同一X
座標を有するパックは、すべて異なるモジュールに格納
されており、同一Y座標を有するパックは、すべて異な
るモジュールに格納されている」という条件の格納方式
をとった場合には、モードによって異なる置換が必要な
場合もあり、その場合、データアライナ部132は、ア
クセスモード選択信号に応じて、異なる置換を行う。
【0102】次に、前述したアドレス変換を行うアドレ
ス変換部131とUM140内の各モジュール500と
の間の接続形態について説明する。
【0103】図10は、メモリインタフェース部130
内のアドレス変換部131とUM140内の各モジュー
ル500との間の接続形態を示す図である。
【0104】同図に示すように、アドレス変換部131
から、各モジュール500に対して、カラムアドレスの
上位2ビット[C3,C2]が共通に供給される。また、カ
ラムアドレスの下位2ビット[C1,C0]は、各モジュー
ル500に対して個別に供給される。
【0105】メモリインタフェース部130には、アク
セスを許可された処理部からメモリバス150を通し
て、アドレス及びアクセスモード選択信号が入力され
る。なお、同図では、メモリインタフェース部130に
渡されるアドレスのうち、カラムアドレスの上位2ビッ
ト[C3,C2]とライン選択アドレス2ビット[L1,L0]
のみを示してある。同図に示していないアドレスは、バ
ンクアドレス及びローアドレスとして、全てのモジュー
ル500に所定のタイミングでブロードキャストされ
る。
【0106】メモリインタフェース部130は、入力さ
れたアドレスのうち、カラムアドレスの上位2ビットに
ついては、各モジュール500にブロードキャストす
る。また、ライン選択アドレス2ビットとアクセスモー
ド選択信号に基づいて、図8及び図9で示したように、
カラムアドレスの下位2ビットを生成する。このカラム
アドレスの下位2ビットはモジュール500毎に異なる
ので、各モジュール500に個別に分配する。各モジュ
ール500は、これら4ビットのカラムアドレスに従
い、出力すべきデータをセンスアンプ123上から選択
する。
【0107】以上説明した実施形態では、アドレス変換
部131は、メモリインタフェース部130内に設けら
れていたが、アドレス変換部131を、各モジュール5
00に設けるようにしてもよい。
【0108】図11は、各モジュール500にアドレス
変換部131を置いた例を示す図である。同図に示すよ
うに、各モジュール500は、アドレス変換部131を
備える。また、アドレス変換部131は、モジュールア
ドレス・レジスタ(Mreg)1400を備えるMre
g1400は、各モジュールのモジュールアドレス(モ
ジュール番号)を格納するレジスタである。例えば、モ
ジュール0のMreg1400には、「0」が設定さ
れ、モジュール1のMreg1400には、「1」が設
定され、モジュール2のMreg1400には、「2」
が設定され、モジュール3のMreg1400には、
「3」が設定される。Mreg1400の値は、固定に
しても可変にしてもよい。
【0109】図11の場合、メモリインタフェース部1
30は、メモリバス150を介して受け取るアドレスを
すべてのモジュール500に所定のタイミングでブロー
ドキャストする。
【0110】各モジュール500のアドレス変換部13
1は、各Mreg1400に格納されたモジュールアド
レスと、メモリインタフェース部130から供給される
ライン選択アドレス及びアクセスモード選択信号とに基
づいて、カラムアドレスの下位2ビットを生成する。
【0111】なお、Mreg1400は、各モジュール
500内のアドレス変換部131に各モジュール500
のモジュールアドレス(モジュール番号)を知らせるた
めに設けられたものであるので、単に、各モジュール5
00のモジュールアドレスを示す信号を各モジュール5
00のアドレス変換部131に供給するようにしてもよ
い。
【0112】次に、データアライナ部132の構成につ
いて説明する。
【0113】図12は、データアライナ部132の構成
例を示す図である。
【0114】ここでは、簡単のため、メモリ読み出し方
向のデータアライナ部132のみを示す。なお、メモリ
書込み方向のデータアライナ部も、メモリ読み出し方向
の場合と同様にして、巡回置換を2段重ねることで作る
ことができる。
【0115】図12(a)に示すように、データアライ
ナ部132は、S1部1500と、S2部1510とを
備える。データアライナ部132は、ライン選択信号L
0、L1に従って、図8及び図9に示したように動作す
る。S1部1500およびS2部1510は、それぞ
れ、図8、図9の6列目に示してある置換S1、S2を
行うユニットである。
【0116】図12(b)に示すように、S1部150
0は、セレクタ1501〜1504を備える。セレクタ
1501〜1504は、選択信号L0(ライン選択アド
レスL[0])の「0」,「1」に対応して、セレクタの入
力のうち0,1の添え字が付いているほうを選択して出
力する。すなわち、S1部1500は、L0=「1」の
とき、3,0,1,2の並びを0,1,2,3へ巡回置
換する。
【0117】また、図12(c)に示すように、S2部
1510は、セレクタ1511〜1514を備える。セ
レクタ1511〜1514は、選択信号L1(ライン選
択アドレスL[1])の「0」,「1」に対応して、セレク
タの入力のうち0,1の添え字が付いているほうを選択
して出力する。すなわち、S2部1510は、L1=
「1」のとき、2,3,0,1の並びを、0,1,2,
3へ巡回置換する。
【0118】以上のような構成を有するデータアライナ
部132で適宜並び替えられた1ライン分のデータは、
キャッシュ102、122等に格納される。
【0119】図13は、キャッシュの1ラインに入るパ
ックの並びを示す図である。
【0120】図13(a)は、リニアキャッシングで、
ライン選択アドレスがYのときのキャッシュの内容を表
わしている。
【0121】図13(b)は、タイルキャッシングで、
ライン選択アドレスがXのときのキャッシュの内容を表
わしている。
【0122】次に、図6に示した方法とは異なる画像デ
ータの格納方式について説明する。
【0123】図14は、本発明の一実施形態における別
の画像格納方式を表す図である。図14に示す格納方式
では、同一のY座標を持つ4つのパック、即ち、横並び
の16画素に対して同時にアクセスするリニアアクセス
と、同一のX座標を持つ4つのパック、即ち、4×4画
素に対して同時にアクセスするタイルアクセスに加え
て、更に、2×2パック、即ち8×2画素の領域を同時
にアクセスするモードをサポートしている。以下、この
アクセスを行うモードを、8×2アクセスモードと呼
ぶ。
【0124】8×2アクセスモードにおいては、例え
ば、パック(0,0)、(0,1)、(1,0)、
(1,1)を同時にアクセスすることが可能になる。
【0125】同図において、縦方向(Y方向)に並んだ
4つのパックは、同一モジュールに格納される。すなわ
ち、パック(0,0)、(1,2)、(2,1)、
(3,3)は、モジュール0に格納され、パック(0,
1)、(1,3)、(2,0)、(3,2)は、モジュ
ール1に格納され、パック(0,2)、(1,0)、
(2,3)、(3,1)は、モジュール2に格納され、
パック(0,3)、(1,1)、(2,2)、(3,
0)は、モジュール3に格納される。
【0126】図15〜図17は、この場合のアドレス変
換とデータの並び替えの方法を示す図である。
【0127】図15〜図17に示した表の構成は、図
8、図9に示した表の構成と同じである。
【0128】図15は、アクセスモードがリニアアクセ
スモードの場合を示す図である。
【0129】図16は、アクセスモードがタイルアクセ
スモードの場合を示す図である。
【0130】図17は、アクセスモードが8×2アクセ
スモードの場合を示す図である。
【0131】なお、図15〜図17の置換の欄で、「0
⇔2」や「2⇔3」などの記述があるが、これは、それぞ
れ、(0,1,2,3)の中で、0と2、および、2と
3を交換する置換、すなわち、(0,1,2,3)から
(2,1,0,3)への置換、及び、(0,1,2,
3)から(0,1,3,2)への置換を表わしている。
【0132】次に、本発明の別の実施形態について説明
する。
【0133】図18は、本発明を適用した別のシステム
LSIの構成を示す図である。
【0134】同図に示すように、本システムLSIは、
データアライナ部132が、コネクタ部101、11
1、121に含まれている点で、図1に示したシステム
LSIと異なる。
【0135】各処理部とコネクタ部間のデータ幅がパッ
クのデータ幅以下の場合、必要なデータを含むパックを
選択して処理部に渡せばよいので(リードの場合)、デ
ータアライナ部132は、実質的にセレクタとなりデー
タを並べ替える処理は不要となる。したがって、この時
は、データアライナ部132をメモリインタフェース部
130に置くよりも小さな物量でシステムが構成でき
る。なお、この場合、キャッシュ102、122等に
は、各パックが、例えば、図8、図9、図15〜図17
の4列目に示した並びで格納されることになる。
【0136】また、更に、アドレス変換部131を各コ
ネクタ部101、111、121に含めるようにしても
よい。この場合、各処理部がメモリインタフェース部1
30に送るアドレスの一部がモジュール毎に異なること
になる。すなわち、各処理部からメモリインタフェース
部130に対して、アドレスの一部については、モジュ
ール毎に異なるアドレスが渡される。メモリインタフェ
ース部130は、各処理部から渡されたアドレスのう
ち、モジュール毎に異なるアドレスについては、モジュ
ール毎に個別に送り、残りのアドレスについては、全て
のモジュールにブロードキャストする。
【0137】最後に、一般のアプリケーションプログラ
ムが動作するシステムにおける本発明によるメモリ領域
の使用例について説明する。
【0138】図19は、本発明を適用したUM140の
メモリ領域の使用例を示す図である。
【0139】この場合、UM140を、CPU100上
で動作しているアプリケーションが直接アクセスする領
域1900と、表示画像やテクスチャなどを格納してお
く画像領域1910とに分けている。そして、一般のア
プリケーションが画像をテクスチャとして登録したり、
ビデオ入力を行う際には、必ず標準のライブラリ(関数
の集まり)を使用して、これらの処理を行うようにし、
これらのライブラリのドライバ(ライブラリ関数の実
体)に対してのみ、画像領域1910へのアクセスを許
可しておく。この場合、ドライバは、画像領域1910
にアクセスする際には、図6や図14に示したようなリ
ニアアクセスやタイルアクセスが可能な格納方式に即し
てアクセスする。
【0140】このようにしておけば、新しいシステムを
提供する際にはライブラリのドライバを共に提供するこ
とで、アプリケーションプログラムやコンパイラを変更
することなく、画像領域1910において異なるアクセ
ス方法(例えば、リニアアクセスとタイルアクセス)を
両立させることができる。
【0141】画像以外に音声などを扱う場合にも、一般
のアプリケーションプログラムが動作するシステムにお
いては、CPU上で動作しているアプリケーションがア
クセスする領域と、画像や音声などCPU以外のリソー
スがアクセスする領域とを分けておくことで、CPU以
外のリソースがアクセスする領域においてアプリケーシ
ョンプログラムやコンパイラを変更することなく、ある
特定の領域においてリニアアクセス(リニアキャッシン
グ)とタイルアクセス(タイルキャッシング)を両立さ
せることができる。
【0142】
【発明の効果】以上詳細に説明したように、本発明によ
れば、同一のアドレス空間に対して、リニアアクセスと
タイルアクセス等、異なるアクセス方法でアクセスする
ことが可能となり、これによって、メモリアクセスに関
して、異なったローカリティ(局所性)を持つ処理部が
混在した場合でも、それぞれのローカリティに適したメ
モリアクセスが可能になる。
【0143】その結果、異なったローカリティ(局所
性)を持つ処理部が混在した場合でも、メモリへのアク
セス効率の低下を防止できる。また、各処理部がキャッ
シュを備えている場合は、ヒット率の向上が期待でき、
処理速度の向上が図れる。
【図面の簡単な説明】
【図1】 本発明によるシステムLSIのブロック図で
ある。
【図2】 ユニファイドメモリの構成を示すブロック図
である。
【図3】 画像の階層構造を説明する図である。
【図4】 画像データをメモリに格納する際のアドレス
マッピングの例を示す図である。
【図5】 画像をメモリに格納する際の格納方式の例を
示す図である。
【図6】 本発明による画像格納方式を説明する図であ
る。
【図7】 本発明による画像格納方式で画像データを格
納する際のアドレスマッピングを示す図である。
【図8】 リニアアクセスモード時の入力アドレスに対
するアドレス変換結果およびデータアライメントの対応
を示す図である。
【図9】 タイルアクセスモード時の入力アドレスに対
するアドレス変換結果およびデータアライメントの対応
を示す図である。
【図10】 メモリインタフェース部130と各モジュ
ール500との間の接続形態を示す図である。
【図11】 各モジュール500にアドレス変換部13
1を置いた例を示す図である。
【図12】 データアライナ部の構成を示すブロック図
である。
【図13】 キャッシュ内のパックの配置を示す図であ
る。
【図14】 本発明による別の画像格納方式を説明する
図である。
【図15】 リニアアクセスモード時の入力アドレスに
対するアドレス変換結果およびデータアライメントの対
応を示す図である。
【図16】 タイルアクセスモード時の入力アドレスに
対するアドレス変換結果およびデータアライメントの対
応を示す図である。
【図17】 8×2アクセスモードの時の入力アドレス
に対するアドレス変換結果およびデータアライメントの
対応を示す図である。
【図18】 本発明による別のシステムLSIのブロッ
ク図である。
【図19】 一般のアプリケーションプログラムが動作
するシステムにおけるUMの使用例を示す図である。
【図20】 ローカリティの概念を説明する図である。
【図21】 従来方式によるメモリアクセスの概要を説
明する図である。
【符号の説明】
100 CPU 110 ビデオ入力部 120 テクスチャマッピング部/フィルタリング部 101,111,121 コネクタ部 130 メモリインタフェース部 131 アドレス変換部 132 データアライナ部 140 ユニファイドメモリ(UM)
───────────────────────────────────────────────────── フロントページの続き (72)発明者 松尾 茂 茨城県日立市大みか町七丁目1番1号 株 式会社日立製作所日立研究所内 (72)発明者 下村 哲也 茨城県日立市大みか町七丁目1番1号 株 式会社日立製作所日立研究所内 (72)発明者 城 学 茨城県日立市大みか町七丁目1番1号 株 式会社日立製作所日立研究所内 (72)発明者 佐藤 潤 東京都小平市上水本町五丁目20番1号 株 式会社日立製作所半導体グループ内 Fターム(参考) 5B047 AB04 EA09 EB01 EB06 EB13 5B060 AA13 AC13 GA06 GA11 GA16 MM13

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 複数のモジュールで構成されるメモリ
    と、 当該メモリに対してアクセスを行う処理部と、 当該処理部から発行されたメモリのアドレスを、アクセ
    スモードに従って、各モジュール毎の個別のアドレスに
    変換するアドレス変換部とアクセスモード及びアドレス
    に従って、メモリに読み書きされるデータを並び替える
    データアライナ部とを具備することを特徴とする情報処
    理システム。
  2. 【請求項2】 特定のサイズを有するデータ単位で読み
    書きすることが可能なモジュールを、N個備えたメモリ
    と、 当該メモリとの間で、N個の前記データ単位からなるデ
    ータの読み書きを行う処理部と、 当該処理部からのアクセス要求を受けて、メモリに対し
    てアクセスを行うメモリインタフェース部とを備え、 前記メモリインタフェース部は、 前記処理部から受け取ったN個のデータ単位のそれぞれ
    が、異なるモジュールに格納されるように、アクセスモ
    ードに応じて、各データ単位を格納するモジュールと、
    各モジュールにおける格納位置を決定することを特徴と
    する情報処理システム。
  3. 【請求項3】 特定のサイズを有するデータ単位で読み
    書きすることが可能なモジュールを、N個備えたメモリ
    と、 当該メモリとの間で、N個の前記データ単位からなるデ
    ータの読み書きを行う処理部と、 当該処理部がメモリにアクセスする際に発行したアドレ
    スを、アクセスモードに従って、各モジュール毎の個別
    アドレスにアドレス変換を行うアドレス変換部と、 処理部とメモリとの間でデータのやり取りを行う際、ア
    クセスモードに従って、当該データを構成する前記デー
    タ単位の並び替えを行うデータアライナ部とを備えたこ
    とを特徴とする情報処理システム。
  4. 【請求項4】 前記アドレス変換部は、 N×N個のデータ単位からなる2次元配列において、同
    一X座標を有するデータ単位は、すべて異なるモジュー
    ルに格納され、かつ、同一Y座標を有するデータ単位
    は、すべて異なるモジュールに格納されるように、アド
    レス変換を行い、 前記データアライナ部は、 前記アドレス変換部の当該アドレス変換に応じて、デー
    タ単位の並び替えを行うことを特徴とする請求項3に記
    載の情報処理システム。
  5. 【請求項5】 それぞれ異なったローカリティを有する
    処理部と、 それぞれの処理部が共通にアクセスするユニファイドメ
    モリと、 各処理部が使用するデータを一時的に貯めておくキャッ
    シュ部と、 各処理部からのアクセス要求を受けて、ユニファイドメ
    モリに対してメモリアクセスを行うメモリインタフェー
    ス部と、 各処理部から通知されるアクセスモードに応じて、ユニ
    ファイドメモリへアクセスするためのアドレスを変換す
    るアドレス変換部と、 前記アクセスモードに応じて、ユニファイドメモリとや
    り取りするデータを並べ替えるデータアライナ部と、か
    ら構成されることを特徴とする情報処理システム。
  6. 【請求項6】 前記ユニファイドメモリは、複数のモジ
    ュールから構成され、 前記アドレス変換部は、当該各モジュール内にあること
    を特徴とする請求項5に記載の情報処理システム。
  7. 【請求項7】 それぞれ異なったローカリティを有する
    処理部と、 それぞれの処理部が共通にアクセスするユニファイドメ
    モリと、 各処理部が使用するデータを一時的に貯めておくキャッ
    シュ部と、 各処理部からのアクセス要求を受けて、ユニファイドメ
    モリに対してメモリアクセスを行うメモリインタフェー
    ス部と、 各処理部から通知されるアクセスモードに応じて、ユニ
    ファイドメモリへアクセスするためのアドレスを変換す
    るアドレス変換部と、 前記処理部と前記キャッシュ部との間に位置し、前記ア
    クセスモードに応じて、前記処理部が読み出すデータの
    選択を行うデータ選択部とから構成されることを特徴と
    する情報処理システム。
JP19044799A 1999-07-05 1999-07-05 情報処理システム Expired - Fee Related JP3639464B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19044799A JP3639464B2 (ja) 1999-07-05 1999-07-05 情報処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19044799A JP3639464B2 (ja) 1999-07-05 1999-07-05 情報処理システム

Publications (2)

Publication Number Publication Date
JP2001022638A true JP2001022638A (ja) 2001-01-26
JP3639464B2 JP3639464B2 (ja) 2005-04-20

Family

ID=16258293

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19044799A Expired - Fee Related JP3639464B2 (ja) 1999-07-05 1999-07-05 情報処理システム

Country Status (1)

Country Link
JP (1) JP3639464B2 (ja)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004120585A (ja) * 2002-09-27 2004-04-15 Mitsubishi Electric Corp 車載用走行車線認識装置
JP2005215911A (ja) * 2004-01-29 2005-08-11 Hitachi Ltd 情報処理装置
US6982892B2 (en) * 2003-05-08 2006-01-03 Micron Technology, Inc. Apparatus and methods for a physical layout of simultaneously sub-accessible memory modules
JP2007510320A (ja) * 2003-10-04 2007-04-19 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 画像データを処理する方法及び装置
JP2008521097A (ja) * 2004-11-15 2008-06-19 エヌヴィディア コーポレイション ビデオ処理
JP2011501341A (ja) * 2007-10-16 2011-01-06 エス. アクア セミコンダクター, エルエルシー アクセスとプリチャージが独立したメモリ
JP4795434B2 (ja) * 2005-06-30 2011-10-19 インテル コーポレイション マイクロタイルメモリインターフェース
JP4796627B2 (ja) * 2005-07-05 2011-10-19 インテル・コーポレーション メモリチャネル内の各メモリデバイスの識別およびアクセス
JP4838843B2 (ja) * 2005-06-30 2011-12-14 インテル・コーポレーション マイクロタイル方式がイネーブルされたメモリの自動検出
JP4838844B2 (ja) * 2005-06-30 2011-12-14 インテル・コーポレーション 方法、記憶媒体、システムおよびプログラム
JP2012104161A (ja) * 2005-06-23 2012-05-31 Intel Corp メモリの微小タイリング
JP2012113732A (ja) * 2006-12-28 2012-06-14 Intel Corp マルチタイリングを用いたメモリアクセス
JP2012518831A (ja) * 2009-02-20 2012-08-16 シリコン・ハイヴ・ベー・フェー マルチモードアクセス可能な記憶装置
US8411096B1 (en) 2007-08-15 2013-04-02 Nvidia Corporation Shader program instruction fetch
US8427490B1 (en) 2004-05-14 2013-04-23 Nvidia Corporation Validating a graphics pipeline using pre-determined schedules
US8489851B2 (en) 2008-12-11 2013-07-16 Nvidia Corporation Processing of read requests in a memory controller using pre-fetch mechanism
US8624906B2 (en) 2004-09-29 2014-01-07 Nvidia Corporation Method and system for non stalling pipeline instruction fetching from memory
US8659601B1 (en) 2007-08-15 2014-02-25 Nvidia Corporation Program sequencer for generating indeterminant length shader programs for a graphics processor
US8683126B2 (en) 2007-07-30 2014-03-25 Nvidia Corporation Optimal use of buffer space by a storage controller which writes retrieved data directly to a memory
US8683184B1 (en) 2004-11-15 2014-03-25 Nvidia Corporation Multi context execution on a video processor
US9024957B1 (en) 2007-08-15 2015-05-05 Nvidia Corporation Address independent shader program loading
US9092170B1 (en) 2005-10-18 2015-07-28 Nvidia Corporation Method and system for implementing fragment operation processing across a graphics bus interconnect

Cited By (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7724921B2 (en) 2002-09-27 2010-05-25 Mitsubishi Denki Kabushiki Kaisha Vehicle-onboard driving lane recognizing apparatus
JP2004120585A (ja) * 2002-09-27 2004-04-15 Mitsubishi Electric Corp 車載用走行車線認識装置
US6982892B2 (en) * 2003-05-08 2006-01-03 Micron Technology, Inc. Apparatus and methods for a physical layout of simultaneously sub-accessible memory modules
US9019779B2 (en) 2003-05-08 2015-04-28 Micron Technology, Inc. Apparatus and methods for a physical layout of simultaneously sub-accessible memory modules
US7414875B2 (en) 2003-05-08 2008-08-19 Mircon Technology, Inc. Apparatus and methods for a physical layout of simultaneously sub-accessible memory modules
US7911819B2 (en) 2003-05-08 2011-03-22 Micron Technology, Inc. Apparatus and methods for a physical layout of simultaneously sub-accessible memory modules
US8553470B2 (en) 2003-05-08 2013-10-08 Micron Technology, Inc. Apparatus and methods for a physical layout of simultaneously sub-accessible memory modules
JP2007510320A (ja) * 2003-10-04 2007-04-19 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 画像データを処理する方法及び装置
US8068545B2 (en) 2003-10-04 2011-11-29 Trident Microsystems (Far East) Ltd. Method and apparatus for processing image data
JP2005215911A (ja) * 2004-01-29 2005-08-11 Hitachi Ltd 情報処理装置
US8427490B1 (en) 2004-05-14 2013-04-23 Nvidia Corporation Validating a graphics pipeline using pre-determined schedules
US8624906B2 (en) 2004-09-29 2014-01-07 Nvidia Corporation Method and system for non stalling pipeline instruction fetching from memory
JP2008521097A (ja) * 2004-11-15 2008-06-19 エヌヴィディア コーポレイション ビデオ処理
US8736623B1 (en) 2004-11-15 2014-05-27 Nvidia Corporation Programmable DMA engine for implementing memory transfers and video processing for a video processor
JP4906734B2 (ja) * 2004-11-15 2012-03-28 エヌヴィディア コーポレイション ビデオ処理
US8683184B1 (en) 2004-11-15 2014-03-25 Nvidia Corporation Multi context execution on a video processor
US9111368B1 (en) 2004-11-15 2015-08-18 Nvidia Corporation Pipelined L2 cache for memory transfers for a video processor
JP2012104161A (ja) * 2005-06-23 2012-05-31 Intel Corp メモリの微小タイリング
JP4838844B2 (ja) * 2005-06-30 2011-12-14 インテル・コーポレーション 方法、記憶媒体、システムおよびプログラム
JP4838843B2 (ja) * 2005-06-30 2011-12-14 インテル・コーポレーション マイクロタイル方式がイネーブルされたメモリの自動検出
JP4795434B2 (ja) * 2005-06-30 2011-10-19 インテル コーポレイション マイクロタイルメモリインターフェース
JP4796627B2 (ja) * 2005-07-05 2011-10-19 インテル・コーポレーション メモリチャネル内の各メモリデバイスの識別およびアクセス
US9092170B1 (en) 2005-10-18 2015-07-28 Nvidia Corporation Method and system for implementing fragment operation processing across a graphics bus interconnect
JP2012113732A (ja) * 2006-12-28 2012-06-14 Intel Corp マルチタイリングを用いたメモリアクセス
US8683126B2 (en) 2007-07-30 2014-03-25 Nvidia Corporation Optimal use of buffer space by a storage controller which writes retrieved data directly to a memory
US8659601B1 (en) 2007-08-15 2014-02-25 Nvidia Corporation Program sequencer for generating indeterminant length shader programs for a graphics processor
US8411096B1 (en) 2007-08-15 2013-04-02 Nvidia Corporation Shader program instruction fetch
US9024957B1 (en) 2007-08-15 2015-05-05 Nvidia Corporation Address independent shader program loading
JP2011501341A (ja) * 2007-10-16 2011-01-06 エス. アクア セミコンダクター, エルエルシー アクセスとプリチャージが独立したメモリ
US8489851B2 (en) 2008-12-11 2013-07-16 Nvidia Corporation Processing of read requests in a memory controller using pre-fetch mechanism
US8762686B2 (en) 2009-02-20 2014-06-24 Intel Corporation Multimode accessible storage facility
JP2012518831A (ja) * 2009-02-20 2012-08-16 シリコン・ハイヴ・ベー・フェー マルチモードアクセス可能な記憶装置

Also Published As

Publication number Publication date
JP3639464B2 (ja) 2005-04-20

Similar Documents

Publication Publication Date Title
JP2001022638A (ja) 情報処理システム
US4953101A (en) Software configurable memory architecture for data processing system having graphics capability
JP5715644B2 (ja) 高速仮想メモリシステムでデータを保存するためのシステムおよび方法
US6259459B1 (en) Apparatus and method for image data processing of pixel data in raster lines
EP1741089B1 (en) Gpu rendering to system memory
JP4511638B2 (ja) 内部メモリ及び外部メモリコントロールを具備したコンピュータシステムコントローラ
US5924111A (en) Method and system for interleaving data in multiple memory bank partitions
US7814294B2 (en) Memory device, memory controller and memory system
US7729200B2 (en) Memory device, memory controller and memory system
US20010010057A1 (en) Semiconductor integrated circuit, computer system, data processor and data processing method
US8918589B2 (en) Memory controller, memory system, semiconductor integrated circuit, and memory control method
US7649538B1 (en) Reconfigurable high performance texture pipeline with advanced filtering
WO2007149979A2 (en) Unified virtual addressed register file
US7286134B1 (en) System and method for packing data in a tiled graphics memory
CN114942831A (zh) 处理器、芯片、电子设备及数据处理方法
KR101801901B1 (ko) 데이터 구역성을 고려하여 액세스되는 메모리 장치 및 이를 포함하는 전자 시스템
US6928516B2 (en) Image data processing system and method with image data organization into tile cache memory
CN114442908B (zh) 一种用于数据处理的硬件加速***及芯片
JP4240610B2 (ja) 計算機システム
US6469705B1 (en) Cache addressing
JPH113324A (ja) メモリ内蔵のデータ処理装置及び処理システム
KR20000018627A (ko) 높은 멀티 비트 자유도의 반도체 메모리장치
CN117891750A (zh) 一种对gpu中图元顶点数据访存的加速架构和方法
JPH07110786A (ja) 半導体記憶装置
CN1086817C (zh) 将dram模块连接到交换机控制***中的dram上的方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040706

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040906

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050114

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080121

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090121

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090121

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100121

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees