JPH11203192A - 並列プロセッサおよび演算処理方法 - Google Patents
並列プロセッサおよび演算処理方法Info
- Publication number
- JPH11203192A JPH11203192A JP10007000A JP700098A JPH11203192A JP H11203192 A JPH11203192 A JP H11203192A JP 10007000 A JP10007000 A JP 10007000A JP 700098 A JP700098 A JP 700098A JP H11203192 A JPH11203192 A JP H11203192A
- Authority
- JP
- Japan
- Prior art keywords
- bus
- access request
- stored
- page
- access
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0811—Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/25—Using a specific main memory architecture
- G06F2212/251—Local memory within processor subsystem
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/25—Using a specific main memory architecture
- G06F2212/253—Centralized memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Bus Control (AREA)
- Memory System (AREA)
Abstract
(57)【要約】
【課題】 高い演算性能を発揮できる並列プロセッサを
提供する。 【解決手段】 共有メモリ24は、サブバンク41〜4
4に対してのページフォルトを発生するアクセス要求
を、コモンバス22に接続された複数のプロセッサエレ
メントから入力し、当該入力したアクセス要求に応じて
外部アクセスバス26を介してサブバンク41〜44と
外部メモリとの間でデータを転送中に他のアクセス要求
を入力したときに、前記他のアクセス要求をリクエスト
キュー125に記憶し、当該記憶しているアクセス要求
がページフォルトを発生しない場合に、当該記憶してい
るアクセス要求を制御回路33に実行させる。
提供する。 【解決手段】 共有メモリ24は、サブバンク41〜4
4に対してのページフォルトを発生するアクセス要求
を、コモンバス22に接続された複数のプロセッサエレ
メントから入力し、当該入力したアクセス要求に応じて
外部アクセスバス26を介してサブバンク41〜44と
外部メモリとの間でデータを転送中に他のアクセス要求
を入力したときに、前記他のアクセス要求をリクエスト
キュー125に記憶し、当該記憶しているアクセス要求
がページフォルトを発生しない場合に、当該記憶してい
るアクセス要求を制御回路33に実行させる。
Description
【0001】
【発明が属する技術分野】本発明は、複数のプロセッサ
エレメントおよび共有メモリがコモンバスを介して接続
された並列プロセッサおよび演算処理方法に関する。
エレメントおよび共有メモリがコモンバスを介して接続
された並列プロセッサおよび演算処理方法に関する。
【0002】
【従来の技術】近年、プログラム中の同時に実行可能な
複数の命令を1チップ内に組み込まれた複数のプロセッ
サエレメント(PE)で並列に実行し、プログラム全体
の実行時間の短縮を図る並列プロセッサの開発が行われ
ている。このような並列プロセッサのアーキテクチャと
して種々のものが提案されているが、それらの一つとし
て、1組のコモンバス(共有バス)に、複数のプロセッ
サエレメントおよび共有メモリを接続したものがある。
複数の命令を1チップ内に組み込まれた複数のプロセッ
サエレメント(PE)で並列に実行し、プログラム全体
の実行時間の短縮を図る並列プロセッサの開発が行われ
ている。このような並列プロセッサのアーキテクチャと
して種々のものが提案されているが、それらの一つとし
て、1組のコモンバス(共有バス)に、複数のプロセッ
サエレメントおよび共有メモリを接続したものがある。
【0003】図9は、従来の一般的な並列プロセッサ1
のシステム構成図である。図9に示すように、並列プロ
セッサ1は、1チップ内にコモンバス2、n個のプロセ
ッサエレメント31 〜3n 、共有メモリ4およびバスユ
ニット5が組み込まれており、コモンバス2にプロセッ
サエレメント31 〜3n 、共有メモリ4およびバスユニ
ット5が接続されている。また、バスユニット5は、外
部のチップインタフェース6を介してメインメモリ7に
接続されている。また、共有メモリ4のメモリセル領域
4aには、1個のデータポートI/Oが備えられてい
る。並列プロセッサ1では、プロセッサエレメント31
〜3n が、共有メモリ4に記憶されているデータにアク
セスするときに、コモンバス2およびデータポートI/
Oを介してデータが伝送される。
のシステム構成図である。図9に示すように、並列プロ
セッサ1は、1チップ内にコモンバス2、n個のプロセ
ッサエレメント31 〜3n 、共有メモリ4およびバスユ
ニット5が組み込まれており、コモンバス2にプロセッ
サエレメント31 〜3n 、共有メモリ4およびバスユニ
ット5が接続されている。また、バスユニット5は、外
部のチップインタフェース6を介してメインメモリ7に
接続されている。また、共有メモリ4のメモリセル領域
4aには、1個のデータポートI/Oが備えられてい
る。並列プロセッサ1では、プロセッサエレメント31
〜3n が、共有メモリ4に記憶されているデータにアク
セスするときに、コモンバス2およびデータポートI/
Oを介してデータが伝送される。
【0004】
【発明が解決しようとする課題】しかしながら、上述し
た並列プロセッサ1では、プロセッサエレメント31 〜
3n と共有メモリ4との間のデータ転送および共有メモ
リ4とメインメモリ7との間のデータ転送が共にコモン
バス2を介して行われ、しかも、共有メモリ4のメモリ
セル領域4aが1個のデータポートI/Oしか備えてい
ないため、以下に示すような理由から、プロセッサエレ
メント31 〜3n の待ち時間が長くなる可能性が高いと
いう問題がある。すなわち、共有メモリ4にページフォ
ルトが発生し、共有メモリ4とメインメモリ7との間で
ページの入れ替えを行っている間は、コモンバス2が使
用中であるため、プロセッサエレメント31 〜3n は共
有メモリ4にアクセスできない。従って、プロセッサエ
レメント31 〜3n から共有メモリ4に対してのアクセ
ス要求(リクエスト)は、ページ入れ替え処理が終了す
るまで待たされてしまい、並列プロセッサ1の演算性能
が低下する。
た並列プロセッサ1では、プロセッサエレメント31 〜
3n と共有メモリ4との間のデータ転送および共有メモ
リ4とメインメモリ7との間のデータ転送が共にコモン
バス2を介して行われ、しかも、共有メモリ4のメモリ
セル領域4aが1個のデータポートI/Oしか備えてい
ないため、以下に示すような理由から、プロセッサエレ
メント31 〜3n の待ち時間が長くなる可能性が高いと
いう問題がある。すなわち、共有メモリ4にページフォ
ルトが発生し、共有メモリ4とメインメモリ7との間で
ページの入れ替えを行っている間は、コモンバス2が使
用中であるため、プロセッサエレメント31 〜3n は共
有メモリ4にアクセスできない。従って、プロセッサエ
レメント31 〜3n から共有メモリ4に対してのアクセ
ス要求(リクエスト)は、ページ入れ替え処理が終了す
るまで待たされてしまい、並列プロセッサ1の演算性能
が低下する。
【0005】本発明は上述した従来技術の問題点に鑑み
てなされ、高い演算性能を発揮できる並列プロセッサお
よび演算処理方法を提供することを目的とする。
てなされ、高い演算性能を発揮できる並列プロセッサお
よび演算処理方法を提供することを目的とする。
【0006】
【課題を解決するための手段】上述した従来技術の問題
点を解決し、上述した目的を達成するために、本発明の
並列プロセッサは、それぞれ単数または複数のサブペー
ジを記憶する内部メモリを備え、当該内部メモリに記憶
されたデータを用いて演算処理を行う複数のプロセッサ
エレメントと、前記複数のプロセッサエレメントと接続
された第1のバスと、外部メモリと接続された第2のバ
スと、前記第1のバスおよび前記第2のバスの双方に接
続された共有メモリとを有し、前記共有メモリは、それ
ぞれサブページを記憶する複数のサブバンクからなる記
憶手段と、前記プロセッサエレメントからのアクセス要
求に応じて、前記プロセッサエレメントの内部メモリと
前記記憶手段との間の前記第1のバスを介したデータ転
送、および、前記記憶手段と前記外部メモリとの間の前
記第2のバスを介したデータ転送を制御する制御手段
と、前記記憶手段に対してのページフォルトを発生する
アクセス要求を前記複数のプロセッサエレメントから入
力し、当該入力したアクセス要求に応じて前記第2のバ
スを介して前記共有メモリと外部メモリとの間でデータ
を転送中に他のアクセス要求を入力したときに、前記他
のアクセス要求を記憶し、当該記憶しているアクセス要
求がページフォルトを発生しない場合に、当該記憶して
いるアクセス要求を前記制御手段に実行させるアクセス
要求管理手段とを有する。
点を解決し、上述した目的を達成するために、本発明の
並列プロセッサは、それぞれ単数または複数のサブペー
ジを記憶する内部メモリを備え、当該内部メモリに記憶
されたデータを用いて演算処理を行う複数のプロセッサ
エレメントと、前記複数のプロセッサエレメントと接続
された第1のバスと、外部メモリと接続された第2のバ
スと、前記第1のバスおよび前記第2のバスの双方に接
続された共有メモリとを有し、前記共有メモリは、それ
ぞれサブページを記憶する複数のサブバンクからなる記
憶手段と、前記プロセッサエレメントからのアクセス要
求に応じて、前記プロセッサエレメントの内部メモリと
前記記憶手段との間の前記第1のバスを介したデータ転
送、および、前記記憶手段と前記外部メモリとの間の前
記第2のバスを介したデータ転送を制御する制御手段
と、前記記憶手段に対してのページフォルトを発生する
アクセス要求を前記複数のプロセッサエレメントから入
力し、当該入力したアクセス要求に応じて前記第2のバ
スを介して前記共有メモリと外部メモリとの間でデータ
を転送中に他のアクセス要求を入力したときに、前記他
のアクセス要求を記憶し、当該記憶しているアクセス要
求がページフォルトを発生しない場合に、当該記憶して
いるアクセス要求を前記制御手段に実行させるアクセス
要求管理手段とを有する。
【0007】また、本発明の並列プロセッサは、好まし
くは、前記アクセス要求管理手段は、複数のアクセス要
求を記憶可能であり、複数のアクセス要求が記憶されて
いるときに、当該記憶されている複数のアクセス要求の
うちページフォルトを発生しないものを、先に記憶され
たページフォルトを発生するアクセス要求に先立て前記
制御手段に実行させる。
くは、前記アクセス要求管理手段は、複数のアクセス要
求を記憶可能であり、複数のアクセス要求が記憶されて
いるときに、当該記憶されている複数のアクセス要求の
うちページフォルトを発生しないものを、先に記憶され
たページフォルトを発生するアクセス要求に先立て前記
制御手段に実行させる。
【0008】また、本発明の演算処理方法は、それぞれ
単数のデータポートを持つ複数のサブバンクからなる記
憶領域を持ち複数のプロセッサエレメントからアクセス
される共有メモリに単数または複数のサブページを記憶
し、前記プロセッサエレメントからのアクセス要求に応
じて、前記プロセッサエレメントの内部メモリと前記共
有メモリとの間の第1のバスを介したデータ転送、およ
び、前記共有メモリと前記外部メモリとの間の第2のバ
スを介したデータ転送を制御し、前記プロセッサエレメ
ントが前記共有メモリ対してのページフォルトを伴うア
クセス要求を発生し、当該アクセス要求に応じて前記共
有メモリと外部メモリとの間で前記第2のバスを介して
データを転送中に、他のプロセッサエレメントがアクセ
ス要求を発生した場合に、前記他のプロセッサエレメン
トが発生したアクセス要求を記憶し、当該記憶している
アクセス要求がページフォルトを発生するか否かを判断
し、ページフォルトを発生しないと判断した場合に、前
記記憶しているアクセス要求を実行する。
単数のデータポートを持つ複数のサブバンクからなる記
憶領域を持ち複数のプロセッサエレメントからアクセス
される共有メモリに単数または複数のサブページを記憶
し、前記プロセッサエレメントからのアクセス要求に応
じて、前記プロセッサエレメントの内部メモリと前記共
有メモリとの間の第1のバスを介したデータ転送、およ
び、前記共有メモリと前記外部メモリとの間の第2のバ
スを介したデータ転送を制御し、前記プロセッサエレメ
ントが前記共有メモリ対してのページフォルトを伴うア
クセス要求を発生し、当該アクセス要求に応じて前記共
有メモリと外部メモリとの間で前記第2のバスを介して
データを転送中に、他のプロセッサエレメントがアクセ
ス要求を発生した場合に、前記他のプロセッサエレメン
トが発生したアクセス要求を記憶し、当該記憶している
アクセス要求がページフォルトを発生するか否かを判断
し、ページフォルトを発生しないと判断した場合に、前
記記憶しているアクセス要求を実行する。
【0009】
【発明の実施の形態】以下、本発明の実施形態に係わる
並列プロセッサについて詳細に説明する。図1は、本実
施形態の並列プロセッサ21のシステム構成図である。
図1に示すように、並列プロセッサ21は、例えば、第
1のバスとしてのコモンバス22、プロセッサエレメン
ト231 〜23n 、共有メモリ24、バスユニット25
および第2のバスとしての外部アクセスバス26を有す
る。
並列プロセッサについて詳細に説明する。図1は、本実
施形態の並列プロセッサ21のシステム構成図である。
図1に示すように、並列プロセッサ21は、例えば、第
1のバスとしてのコモンバス22、プロセッサエレメン
ト231 〜23n 、共有メモリ24、バスユニット25
および第2のバスとしての外部アクセスバス26を有す
る。
【0010】並列プロセッサ21では、コモンバス22
に、プロセッサエレメント231 〜23n および共有メ
モリ24が接続されている。また、外部アクセスバス2
6に、共有メモリ24およびバスユニット25が接続さ
れている。
に、プロセッサエレメント231 〜23n および共有メ
モリ24が接続されている。また、外部アクセスバス2
6に、共有メモリ24およびバスユニット25が接続さ
れている。
【0011】コモンバス22は128ビットのバス幅を
有し、外部アクセスバス26は32ビットのバス幅を有
している。コモンバス22は、外部アクセスバス26に
比べて4倍以上のデータ転送速度を持つ。なお、コモン
バス22と外部アクセスバス26とのバス幅を同じにす
ることも可能である。プロセッサエレメント231 〜2
3n は、例えば、並列プロセッサ1がMIMD(Multipl
e Instruction Multiple Data)型の並列プロセッサの場
合には、個々にプログラムカウンタを持ち、当該プログ
ラムカウンタによって指し示される図示しないインスト
ラクションメモリのアドレスに記憶された命令に応じた
処理を相互に独立して行う。プロセッサエレメント23
1 〜23n としては、例えば、RISC(Reduced Instr
uction Set Computer)型の汎用プロセッサが用いられ
る。
有し、外部アクセスバス26は32ビットのバス幅を有
している。コモンバス22は、外部アクセスバス26に
比べて4倍以上のデータ転送速度を持つ。なお、コモン
バス22と外部アクセスバス26とのバス幅を同じにす
ることも可能である。プロセッサエレメント231 〜2
3n は、例えば、並列プロセッサ1がMIMD(Multipl
e Instruction Multiple Data)型の並列プロセッサの場
合には、個々にプログラムカウンタを持ち、当該プログ
ラムカウンタによって指し示される図示しないインスト
ラクションメモリのアドレスに記憶された命令に応じた
処理を相互に独立して行う。プロセッサエレメント23
1 〜23n としては、例えば、RISC(Reduced Instr
uction Set Computer)型の汎用プロセッサが用いられ
る。
【0012】プロセッサエレメント231 〜23n は、
それぞれ複数のサブページ、例えば、3個のサブページ
を記憶可能な内部メモリとしてのサブバンク271 ,2
72,273 を備えている。ここで、サブページは、メ
インメモリ7上の連続したアドレスの記憶領域に記憶さ
れた512バイトのデータであり、4個の連続したアド
レスのサブページによって1ページが構成される。な
お、プロセッサエレメント231 〜23n が備えている
サブバンクの数を、相互に異なるようにすることも可能
である。プロセッサエレメント231 〜23n は、後述
するように、共有メモリ24からサブページを読み込ん
でサブバンク271 〜273 に記憶するが、プロセッサ
エレメント231 〜23n の相互間およびサブバンク2
71 〜273 の相互間で異なるページのサブページを記
憶できる。バスユニット25は、並列プロセッサ21の
外部に設けられたチップインタフェース6を介してメイ
ンメモリ7に接続されている。メインメモリ7は、4G
バイトの連続したアドレスを持つメモリ空間を有する。
それぞれ複数のサブページ、例えば、3個のサブページ
を記憶可能な内部メモリとしてのサブバンク271 ,2
72,273 を備えている。ここで、サブページは、メ
インメモリ7上の連続したアドレスの記憶領域に記憶さ
れた512バイトのデータであり、4個の連続したアド
レスのサブページによって1ページが構成される。な
お、プロセッサエレメント231 〜23n が備えている
サブバンクの数を、相互に異なるようにすることも可能
である。プロセッサエレメント231 〜23n は、後述
するように、共有メモリ24からサブページを読み込ん
でサブバンク271 〜273 に記憶するが、プロセッサ
エレメント231 〜23n の相互間およびサブバンク2
71 〜273 の相互間で異なるページのサブページを記
憶できる。バスユニット25は、並列プロセッサ21の
外部に設けられたチップインタフェース6を介してメイ
ンメモリ7に接続されている。メインメモリ7は、4G
バイトの連続したアドレスを持つメモリ空間を有する。
【0013】図2は、図1に示す共有メモリ24の構成
図である。図2に示すように、共有メモリ24は、例え
ば、コモンバス用制御回路31、外部バス用制御回路3
2、制御回路33、メモリ内部バス51,52、マルチ
プレクサ(MUX)53,54,55,56、第1の記
憶手段としてのメモリセル領域90、アドレスデコーダ
57,58,59,60、第2の記憶手段としてのタグ
データ領域120およびリクエストキュー125を有す
る。
図である。図2に示すように、共有メモリ24は、例え
ば、コモンバス用制御回路31、外部バス用制御回路3
2、制御回路33、メモリ内部バス51,52、マルチ
プレクサ(MUX)53,54,55,56、第1の記
憶手段としてのメモリセル領域90、アドレスデコーダ
57,58,59,60、第2の記憶手段としてのタグ
データ領域120およびリクエストキュー125を有す
る。
【0014】なお、本実施形態では、コモンバス用制御
回路31、外部バス用制御回路32および制御回路33
が制御手段として機能する。制御回路33は、コモンバ
ス用制御回路31、外部バス用制御回路32、マルチプ
レクサ53〜56、アドレスデコーダ57〜60を制御
する。また、制御回路33は、プロセッサエレメント2
31 〜23n からサブページ入れ替え要求信号(アクセ
ス要求)を入力した場合に、要求があったサブページが
メモリセル領域90に記憶されているか否か(ページヒ
ットの有無)をタグデータ領域120に記憶された特性
データとしてタグデータを参照して判断し、ページフォ
ルトが発生したと判断した場合には、図4を用いて後述
する方法で、メモリセル領域90に記憶されている複数
のページの中から、メインメモリ7からページインする
ページと入れ替えを行う対象とするページを決定する。
また、制御回路33は、プロセッサエレメント231 〜
23n から要求があったサブページを最初にメインメモ
リ7から共有メモリ24に転送するように、共有メモリ
24とメインメモリ7との間のページ転送を制御する。
回路31、外部バス用制御回路32および制御回路33
が制御手段として機能する。制御回路33は、コモンバ
ス用制御回路31、外部バス用制御回路32、マルチプ
レクサ53〜56、アドレスデコーダ57〜60を制御
する。また、制御回路33は、プロセッサエレメント2
31 〜23n からサブページ入れ替え要求信号(アクセ
ス要求)を入力した場合に、要求があったサブページが
メモリセル領域90に記憶されているか否か(ページヒ
ットの有無)をタグデータ領域120に記憶された特性
データとしてタグデータを参照して判断し、ページフォ
ルトが発生したと判断した場合には、図4を用いて後述
する方法で、メモリセル領域90に記憶されている複数
のページの中から、メインメモリ7からページインする
ページと入れ替えを行う対象とするページを決定する。
また、制御回路33は、プロセッサエレメント231 〜
23n から要求があったサブページを最初にメインメモ
リ7から共有メモリ24に転送するように、共有メモリ
24とメインメモリ7との間のページ転送を制御する。
【0015】コモンバス用制御回路31は、メモリ内部
バス51およびコモンバス22を介したプロセッサエレ
メント231 〜23n とメモリサブバンク41〜44と
の間のサブページの転送を制御する。具体的には、コモ
ンバス用制御回路31は、制御回路33から制御信号に
基づいて、制御信号S31を出力してアドレスデコーダ
57〜60を制御すると共に、マルチプレクサ53〜5
4の切り換え制御を行う。
バス51およびコモンバス22を介したプロセッサエレ
メント231 〜23n とメモリサブバンク41〜44と
の間のサブページの転送を制御する。具体的には、コモ
ンバス用制御回路31は、制御回路33から制御信号に
基づいて、制御信号S31を出力してアドレスデコーダ
57〜60を制御すると共に、マルチプレクサ53〜5
4の切り換え制御を行う。
【0016】外部バス用制御回路32は、メモリ内部バ
ス52および外部アクセスバス26を介したメモリサブ
バンク41〜44とメインメモリ7との間のページの転
送を制御する。具体的には、外部バス用制御回路32
は、制御回路33からの制御信号に基づいて、制御信号
S32を出力してアドレスデコーダ57〜60を制御す
ると共に、マルチプレクサ53〜54の切り換え制御を
行う。
ス52および外部アクセスバス26を介したメモリサブ
バンク41〜44とメインメモリ7との間のページの転
送を制御する。具体的には、外部バス用制御回路32
は、制御回路33からの制御信号に基づいて、制御信号
S32を出力してアドレスデコーダ57〜60を制御す
ると共に、マルチプレクサ53〜54の切り換え制御を
行う。
【0017】マルチプレクサ53〜56は、制御信号S
31,S32および制御回路33からの制御信号に基づ
いて、それぞれメモリサブバンク41〜44を、メモリ
内部バス51および52の何れか一方と接続する。
31,S32および制御回路33からの制御信号に基づ
いて、それぞれメモリサブバンク41〜44を、メモリ
内部バス51および52の何れか一方と接続する。
【0018】アドレスデコーダ57〜60は、制御信号
S31,S32をデコードして、それぞれメモリサブバ
ンク41〜44に対してのアクセスを制御する。
S31,S32をデコードして、それぞれメモリサブバ
ンク41〜44に対してのアクセスを制御する。
【0019】メモリセル領域90は、4個のメモリサブ
バンク41〜44に物理的に等分に分割されている。メ
モリサブバンク41〜44は、それぞれシングルデータ
ポートを備えている。また、メモリセル領域90は、そ
れぞれメモリサブバンク41〜44に対して等分に跨が
るように、m個のバンク800 〜80m-1 によって区切
られている。メモリサブバンク41〜44は、例えば、
それぞれm個のサブページを記憶可能な記憶容量を有す
る。なお、サブページは、画像データを含んでいる。メ
モリサブバンク41〜44は、それぞれマルチプレクサ
53〜56、メモリ内部バス51およびコモンバス22
を介して、プロセッサエレメント231 〜23n との間
で、データの入れ替えをサブページ単位で行う。ここ
で、データを入れ換えるとは、プロセッサエレメント2
31 〜23n からメモリサブバンク41〜44にデータ
を書き込む動作、メモリサブバンク41〜44からプロ
セッサエレメント231 〜23n にデータを読み出す動
作、および、その両方の動作を含む。
バンク41〜44に物理的に等分に分割されている。メ
モリサブバンク41〜44は、それぞれシングルデータ
ポートを備えている。また、メモリセル領域90は、そ
れぞれメモリサブバンク41〜44に対して等分に跨が
るように、m個のバンク800 〜80m-1 によって区切
られている。メモリサブバンク41〜44は、例えば、
それぞれm個のサブページを記憶可能な記憶容量を有す
る。なお、サブページは、画像データを含んでいる。メ
モリサブバンク41〜44は、それぞれマルチプレクサ
53〜56、メモリ内部バス51およびコモンバス22
を介して、プロセッサエレメント231 〜23n との間
で、データの入れ替えをサブページ単位で行う。ここ
で、データを入れ換えるとは、プロセッサエレメント2
31 〜23n からメモリサブバンク41〜44にデータ
を書き込む動作、メモリサブバンク41〜44からプロ
セッサエレメント231 〜23n にデータを読み出す動
作、および、その両方の動作を含む。
【0020】コモンバス22は128ビットのバス幅を
有することから、サブページが1回当たりのデータ転送
の単位となるコモンバス22を介したバスオペレーショ
ンでは、512バイトのサブページを転送するには、3
2(=512×8/128)回分のバストランザクショ
ンが最低限必要である。
有することから、サブページが1回当たりのデータ転送
の単位となるコモンバス22を介したバスオペレーショ
ンでは、512バイトのサブページを転送するには、3
2(=512×8/128)回分のバストランザクショ
ンが最低限必要である。
【0021】また、メモリサブバンク41〜44は、マ
ルチプレクサ53〜56、メモリ内部バス52および外
部アクセスバス26を介して、各バンク800 〜80
m-1 に記憶されるページ単位で、メインメモリ7との間
でデータを入れ替える。ここで、1ページは2Kバイト
であり、4個のサブページからなる。従って、プロセッ
サエレメント231 〜23n がアクセスしようとするサ
ブページの先頭アドレスが、図3に示すA番地、(A+
512)番地、(A+1024)番地あるいは(A+1
536)番地である場合には、メインメモリ7からA番
地から2Kバイトの連続したアドレスに記憶された1ペ
ージ分のデータを共有メモリ4に転送し、この1ページ
分のデータを4個のサブページに分割して、各バンク8
00 〜80m に記憶する。本実施形態では、メインメモ
リ7の4Gバイトのメモリ空間をを、32ビットのアド
レスで指し示している。ここで、この32ビットのアド
レスのうち、31〜11ビット目がページの先頭アドレ
スを示し、10〜0ビット目がページ内のアドレスを示
している。また、10ビット目および9ビット目がサブ
バンクを示している。
ルチプレクサ53〜56、メモリ内部バス52および外
部アクセスバス26を介して、各バンク800 〜80
m-1 に記憶されるページ単位で、メインメモリ7との間
でデータを入れ替える。ここで、1ページは2Kバイト
であり、4個のサブページからなる。従って、プロセッ
サエレメント231 〜23n がアクセスしようとするサ
ブページの先頭アドレスが、図3に示すA番地、(A+
512)番地、(A+1024)番地あるいは(A+1
536)番地である場合には、メインメモリ7からA番
地から2Kバイトの連続したアドレスに記憶された1ペ
ージ分のデータを共有メモリ4に転送し、この1ページ
分のデータを4個のサブページに分割して、各バンク8
00 〜80m に記憶する。本実施形態では、メインメモ
リ7の4Gバイトのメモリ空間をを、32ビットのアド
レスで指し示している。ここで、この32ビットのアド
レスのうち、31〜11ビット目がページの先頭アドレ
スを示し、10〜0ビット目がページ内のアドレスを示
している。また、10ビット目および9ビット目がサブ
バンクを示している。
【0022】メモリサブバンク41〜44に記憶されて
いるサブページは、全てのプロセッサエレメント231
〜23n で共有できるように、システム全体で、サブペ
ージのデータ量を統一することが望ましい。本実施形態
では、プロセッサエレメント231 〜23n のサブバン
ク271 のメモリ容量を512バイトとし、サブページ
のデータ量も512バイトとしている。ここで、外部ア
クセスバス26は32ビットのバス幅を有するため、ペ
ージがデータ転送の単位となる外部アクセスバス26を
介した1回当たりのバスオペレーションでは、2Kバイ
トのページを転送するために、512(=2048×8
/32)回分のバストランザクションが最低限必要であ
る。
いるサブページは、全てのプロセッサエレメント231
〜23n で共有できるように、システム全体で、サブペ
ージのデータ量を統一することが望ましい。本実施形態
では、プロセッサエレメント231 〜23n のサブバン
ク271 のメモリ容量を512バイトとし、サブページ
のデータ量も512バイトとしている。ここで、外部ア
クセスバス26は32ビットのバス幅を有するため、ペ
ージがデータ転送の単位となる外部アクセスバス26を
介した1回当たりのバスオペレーションでは、2Kバイ
トのページを転送するために、512(=2048×8
/32)回分のバストランザクションが最低限必要であ
る。
【0023】タグデータ領域120は、図2に示すよう
に、メモリサブバンク41〜44からなるメモリセル領
域90に記憶されたサブページの特性データとしてのタ
グデータを記憶する。タグデータ領域120は、バンク
800 〜80m-1 に対応したタグバンク1300 〜13
0m-1 を有し、タグバンク1300 〜130m-1 には、
それぞれバンク800 〜80m に記憶されているサブペ
ージの特性を示すデータが記憶されている。タグデータ
は、バリッド識別領域121、ダーディ識別領域122
およびページセレクタ領域123から構成される。
に、メモリサブバンク41〜44からなるメモリセル領
域90に記憶されたサブページの特性データとしてのタ
グデータを記憶する。タグデータ領域120は、バンク
800 〜80m-1 に対応したタグバンク1300 〜13
0m-1 を有し、タグバンク1300 〜130m-1 には、
それぞれバンク800 〜80m に記憶されているサブペ
ージの特性を示すデータが記憶されている。タグデータ
は、バリッド識別領域121、ダーディ識別領域122
およびページセレクタ領域123から構成される。
【0024】バリッド識別領域121は、各サブページ
のデータの有効性を示す1ビットのバリッドビットを、
サブページの数だけ備えている。例えば、バリッド識別
領域121には、有効なサブページに対応するバリッド
ビットにバリッドを示す「1」がセットされ、有効でな
い(無効な)サブページに対応するバリッドビットにイ
ンバリッドを示す「0」がセットされている。
のデータの有効性を示す1ビットのバリッドビットを、
サブページの数だけ備えている。例えば、バリッド識別
領域121には、有効なサブページに対応するバリッド
ビットにバリッドを示す「1」がセットされ、有効でな
い(無効な)サブページに対応するバリッドビットにイ
ンバリッドを示す「0」がセットされている。
【0025】ダーディ識別領域122は、各サブページ
のデータがダーティであるか否かを示す1ビットのダー
ティビットを、サブページの数だけ備えている。ここ
で、ダーティであるとは、当該サブページに、プロセッ
サエレメント231 〜23n から書き込みがあったこと
を意味し、当該サブページが記憶されている記憶領域を
開放するときに、当該サブページをメインメモリ7に書
き戻す必要がある。すなわち、ライトバックを行う必要
がある。例えば、ダーディ識別領域122には、ダーテ
ィなサブページに対応するダーティビットにバリッドを
示す「1」がセットされ、ダーティでないサブページに
対応するダーティビットにインバリッドを示す「0」が
セットされている。
のデータがダーティであるか否かを示す1ビットのダー
ティビットを、サブページの数だけ備えている。ここ
で、ダーティであるとは、当該サブページに、プロセッ
サエレメント231 〜23n から書き込みがあったこと
を意味し、当該サブページが記憶されている記憶領域を
開放するときに、当該サブページをメインメモリ7に書
き戻す必要がある。すなわち、ライトバックを行う必要
がある。例えば、ダーディ識別領域122には、ダーテ
ィなサブページに対応するダーティビットにバリッドを
示す「1」がセットされ、ダーティでないサブページに
対応するダーティビットにインバリッドを示す「0」が
セットされている。
【0026】ページセレクタ領域123は、バンク80
0 〜80m に記憶されているページの識別番号(例え
ば、ページの先頭アドレス)を示すページセレクタを有
する。
0 〜80m に記憶されているページの識別番号(例え
ば、ページの先頭アドレス)を示すページセレクタを有
する。
【0027】また、リクエストキュー125は、コモン
バス22およびメモリ内部バス51を介して入力した共
有メモリ4に対してのプロセッサエレメント231 〜2
3nから複数のアクセス要求が競合した場合に、これら
のアクセス要求をキューに蓄え、以下に示す手順で制御
回路33に出力して実行させる。
バス22およびメモリ内部バス51を介して入力した共
有メモリ4に対してのプロセッサエレメント231 〜2
3nから複数のアクセス要求が競合した場合に、これら
のアクセス要求をキューに蓄え、以下に示す手順で制御
回路33に出力して実行させる。
【0028】図4は、リクエストキュー125の構成図
である。図4に示すように、リクエストキュー125
は、キューエントリブロック300、制御回路310お
よびマルチプレクサ312を有する。キューエントリブ
ロック300は、6個のキューエントリバンク301〜
306を順に接続した構成をしている。キューエントリ
バンク301は、メモリ内部バス51と接続され、コモ
ンバス22およびメモリ内部バス51を介して、プロセ
ッサエレメント231 〜23nから、サブページ入れ替
え要求信号などのメモリセル領域90に対してのアクセ
ス要求を入力して記憶する。キューエントリバンク30
1は、制御回路310からの制御に応じて、記憶してい
るアクセス要求を後段のキューエントリバンク301あ
るいはマルチプレクサ312に出力する。
である。図4に示すように、リクエストキュー125
は、キューエントリブロック300、制御回路310お
よびマルチプレクサ312を有する。キューエントリブ
ロック300は、6個のキューエントリバンク301〜
306を順に接続した構成をしている。キューエントリ
バンク301は、メモリ内部バス51と接続され、コモ
ンバス22およびメモリ内部バス51を介して、プロセ
ッサエレメント231 〜23nから、サブページ入れ替
え要求信号などのメモリセル領域90に対してのアクセ
ス要求を入力して記憶する。キューエントリバンク30
1は、制御回路310からの制御に応じて、記憶してい
るアクセス要求を後段のキューエントリバンク301あ
るいはマルチプレクサ312に出力する。
【0029】キューエントリバンク302〜305は、
制御回路310からの制御に応じて、それぞれ前段のキ
ューエントリバンク301〜304からアクセス要求を
入力して記憶し、当該記憶したアクセス要求をそれぞれ
後段のキューエントリバンク303〜306あるいはマ
ルチプレクサ312に出力する。また、キューエントリ
バンク306は、制御回路310からの制御に応じて、
キューエントリバンク305からアクセス要求を入力し
て記憶し、当該記憶したアクセス要求をマルチプレクサ
312に出力する。
制御回路310からの制御に応じて、それぞれ前段のキ
ューエントリバンク301〜304からアクセス要求を
入力して記憶し、当該記憶したアクセス要求をそれぞれ
後段のキューエントリバンク303〜306あるいはマ
ルチプレクサ312に出力する。また、キューエントリ
バンク306は、制御回路310からの制御に応じて、
キューエントリバンク305からアクセス要求を入力し
て記憶し、当該記憶したアクセス要求をマルチプレクサ
312に出力する。
【0030】マルチプレクサ312は、制御回路310
からの制御に応じて、キューエントリバンク301〜3
06のうち何れか1つを制御回路33と接続し、当該接
続されたキューエントリバンクに記憶されているアクセ
ス要求を制御回路33に出力する。
からの制御に応じて、キューエントリバンク301〜3
06のうち何れか1つを制御回路33と接続し、当該接
続されたキューエントリバンクに記憶されているアクセ
ス要求を制御回路33に出力する。
【0031】以下、リクエストキュー125の動作につ
いて説明する。アクセス要求の先読みを行わない場合 図5は、アクセス要求の先読みを行わない場合のリクエ
ストキュー125の動作を説明するための図である。例
えば、プロセッサエレメント231 からコモンバス22
を介して共有メモリ24にアクセス要求Rj-1 が出力さ
れ、このアクセス要求Rj-1 によるコモンバス22を用
いたメモリセル領域90に対してのアクセス処理が行わ
れているときに、プロセッサエレメント232 〜23n
から、アクセス要求Rj+0 ,Rj+1 ,Rj+2 ,Rj+3 ,
Rj+4 ,Rj+5 が発生した場合を考える。ここで、アク
セス要求Rj+0 〜Rj+5 は、例えば、全てページフォル
トを伴わないアクセスであるとする。
いて説明する。アクセス要求の先読みを行わない場合 図5は、アクセス要求の先読みを行わない場合のリクエ
ストキュー125の動作を説明するための図である。例
えば、プロセッサエレメント231 からコモンバス22
を介して共有メモリ24にアクセス要求Rj-1 が出力さ
れ、このアクセス要求Rj-1 によるコモンバス22を用
いたメモリセル領域90に対してのアクセス処理が行わ
れているときに、プロセッサエレメント232 〜23n
から、アクセス要求Rj+0 ,Rj+1 ,Rj+2 ,Rj+3 ,
Rj+4 ,Rj+5 が発生した場合を考える。ここで、アク
セス要求Rj+0 〜Rj+5 は、例えば、全てページフォル
トを伴わないアクセスであるとする。
【0032】この場合には、図5(A)に示すように、
キューエントリバンク306,305,304,30
3,302,301に、それぞれアクセス要求Rj+0 ,
Rj+1,Rj+2 ,Rj+3 ,Rj+4 ,Rj+5 が記憶され
る。そして、アクセス要求Rj-1 によるコモンバス22
を用いたアクセス処理が終了すると、図4に示す制御回
路310からの制御によって、マルチプレクサ312を
介してキューエントリバンク306と制御回路33とが
接続され、キューエントリバンク306に記憶されてい
るアクセス要求Rj+0 が制御回路33に出力される。こ
れにより、アクセス要求Rj+0 に応じたメモリセル領域
90に対してのアクセス処理が開始される。また、制御
回路310からの制御によって、アクセス要求Rj+1 ,
Rj+2 ,Rj+3 ,Rj+4 ,Rj+5 が、それぞれキューエ
ントリバンク306,305,304,303,302
にシフト(転送)および記憶される。また、プロセッサ
エレメント231 〜23n からアクセス要求Rj+6 が、
コモンバス22およびメモリ内部バス51を介してキュ
ーエントリバンク301に記憶される。これにより、キ
ューエントリブロック300の記憶状態は、図5(B)
に示すようになる。
キューエントリバンク306,305,304,30
3,302,301に、それぞれアクセス要求Rj+0 ,
Rj+1,Rj+2 ,Rj+3 ,Rj+4 ,Rj+5 が記憶され
る。そして、アクセス要求Rj-1 によるコモンバス22
を用いたアクセス処理が終了すると、図4に示す制御回
路310からの制御によって、マルチプレクサ312を
介してキューエントリバンク306と制御回路33とが
接続され、キューエントリバンク306に記憶されてい
るアクセス要求Rj+0 が制御回路33に出力される。こ
れにより、アクセス要求Rj+0 に応じたメモリセル領域
90に対してのアクセス処理が開始される。また、制御
回路310からの制御によって、アクセス要求Rj+1 ,
Rj+2 ,Rj+3 ,Rj+4 ,Rj+5 が、それぞれキューエ
ントリバンク306,305,304,303,302
にシフト(転送)および記憶される。また、プロセッサ
エレメント231 〜23n からアクセス要求Rj+6 が、
コモンバス22およびメモリ内部バス51を介してキュ
ーエントリバンク301に記憶される。これにより、キ
ューエントリブロック300の記憶状態は、図5(B)
に示すようになる。
【0033】アクセス要求の先読みを行う場合 図6は、アクセス要求の先読みを行う場合のリクエスト
キュー125の動作を説明するための図である。例え
ば、図5を用いて前述したアクセス要求の先読みを行わ
ない場合と同様に、図6(A)に示すように、キューエ
ントリバンク306,305,304,303,30
2,301に、それぞれアクセス要求Rj+0 ,Rj+1 ,
Rj+2 ,Rj+3 ,Rj+4 ,Rj+5 が記憶される。また、
アクセス要求Rj-1 によってサブページ351にページ
フォルトを伴うアクセスが発生し、図1に示すメインメ
モリ7から外部アクセスバス26を介して図7に示すメ
モリセル領域90のバンク806 に、サブページ350
〜353によって構成されるページが転送されている。
キュー125の動作を説明するための図である。例え
ば、図5を用いて前述したアクセス要求の先読みを行わ
ない場合と同様に、図6(A)に示すように、キューエ
ントリバンク306,305,304,303,30
2,301に、それぞれアクセス要求Rj+0 ,Rj+1 ,
Rj+2 ,Rj+3 ,Rj+4 ,Rj+5 が記憶される。また、
アクセス要求Rj-1 によってサブページ351にページ
フォルトを伴うアクセスが発生し、図1に示すメインメ
モリ7から外部アクセスバス26を介して図7に示すメ
モリセル領域90のバンク806 に、サブページ350
〜353によって構成されるページが転送されている。
【0034】このとき、図4に示す制御回路310によ
って、キューエントリバンク301から306に向かっ
て順に、それぞれに記憶されているアクセス要求が即座
に実行可能であるか否かが判断される。これにより、制
御回路310によって、例えば、アクセス要求Rj+0 お
よびRj+1 がページフォルトを伴うものであり、即座に
は実行できないと判断され、次に、アクセス要求Rj+2
がページフォルトを伴わないアクセスであり、しかも、
バンク806 とは異なるバンク809 に記憶されている
サブページ362に対してのアクセスであることから、
即座に実行可能であると判断される。
って、キューエントリバンク301から306に向かっ
て順に、それぞれに記憶されているアクセス要求が即座
に実行可能であるか否かが判断される。これにより、制
御回路310によって、例えば、アクセス要求Rj+0 お
よびRj+1 がページフォルトを伴うものであり、即座に
は実行できないと判断され、次に、アクセス要求Rj+2
がページフォルトを伴わないアクセスであり、しかも、
バンク806 とは異なるバンク809 に記憶されている
サブページ362に対してのアクセスであることから、
即座に実行可能であると判断される。
【0035】そして、図4に示す制御回路310からの
制御によって、マルチプレクサ312を介してキューエ
ントリバンク304と制御回路33とが接続され、キュ
ーエントリバンク304に記憶されているアクセス要求
Rj+2 が制御回路33に出力される。これにより、アク
セス要求Rj+2 が実行され、サブページ362がコモン
バス22を介して、アクセス要求Rj+2 を発生したプロ
セッサエレメント231 〜23n に出力される。すなわ
ち、アクセス要求Rj+0 ,Rj+1 に先立って、アクセス
要求Rj+2 が実行される。このとき、例えば、アクセス
要求Rj-1 による外部アクセスバス26を介したメイン
メモリ7と共有メモリ24との間でのページ転送処理
と、アクセス要求Rj+2 によるコモンバス22を介した
共有メモリ24とプロセッサエレメント231 〜23n
との間のサブページの転送処理とは並行して行われる。
制御によって、マルチプレクサ312を介してキューエ
ントリバンク304と制御回路33とが接続され、キュ
ーエントリバンク304に記憶されているアクセス要求
Rj+2 が制御回路33に出力される。これにより、アク
セス要求Rj+2 が実行され、サブページ362がコモン
バス22を介して、アクセス要求Rj+2 を発生したプロ
セッサエレメント231 〜23n に出力される。すなわ
ち、アクセス要求Rj+0 ,Rj+1 に先立って、アクセス
要求Rj+2 が実行される。このとき、例えば、アクセス
要求Rj-1 による外部アクセスバス26を介したメイン
メモリ7と共有メモリ24との間でのページ転送処理
と、アクセス要求Rj+2 によるコモンバス22を介した
共有メモリ24とプロセッサエレメント231 〜23n
との間のサブページの転送処理とは並行して行われる。
【0036】アクセス要求Rj+2 が制御回路33に出力
されると、制御回路310からの制御によって、アクセ
ス要求Rj+3 ,Rj+4 ,Rj+5 が、それぞれキューエン
トリバンク304,303,302にシフト(転送)お
よび記憶される。また、プロセッサエレメント231 〜
23n からアクセス要求Rj+6 が、コモンバス22およ
びメモリ内部バス51を介してキューエントリバンク3
01に記憶される。なお、アクセス要求Rj+0 ,Rj+1
は、それぞれキューエントリバンク306,305に継
続して記憶される。これにより、キューエントリブロッ
ク300の記憶状態は、図6(B)に示すようになる。
されると、制御回路310からの制御によって、アクセ
ス要求Rj+3 ,Rj+4 ,Rj+5 が、それぞれキューエン
トリバンク304,303,302にシフト(転送)お
よび記憶される。また、プロセッサエレメント231 〜
23n からアクセス要求Rj+6 が、コモンバス22およ
びメモリ内部バス51を介してキューエントリバンク3
01に記憶される。なお、アクセス要求Rj+0 ,Rj+1
は、それぞれキューエントリバンク306,305に継
続して記憶される。これにより、キューエントリブロッ
ク300の記憶状態は、図6(B)に示すようになる。
【0037】なお、図6に示した例では、アクセス要求
Rj+0 ,Rj+1 がページフォルトを伴う要求であり、ア
クセス要求Rj+2 が即座に実行可能な要求である場合を
例示したが、例えば、アクセス要求Rj+0 ,RJ+1 ,R
j+2 ,Rj+3 ,Rj+4 がページフォルトを伴う要求であ
り、アクセス要求Rj+5 が即座に実行可能な要求である
場合には、アクセス要求Rj+0 ,RJ+1 ,Rj+2 ,R
j+3 ,Rj+4 に先立って、アクセス要求Rj+5 が制御回
路33に出力されて実行される。
Rj+0 ,Rj+1 がページフォルトを伴う要求であり、ア
クセス要求Rj+2 が即座に実行可能な要求である場合を
例示したが、例えば、アクセス要求Rj+0 ,RJ+1 ,R
j+2 ,Rj+3 ,Rj+4 がページフォルトを伴う要求であ
り、アクセス要求Rj+5 が即座に実行可能な要求である
場合には、アクセス要求Rj+0 ,RJ+1 ,Rj+2 ,R
j+3 ,Rj+4 に先立って、アクセス要求Rj+5 が制御回
路33に出力されて実行される。
【0038】多重アクセス 次に、図8に示すように、プロセッサエレメント233
からの読み出し要求に応じて、共有メモリ24のバンク
801 に記憶されたサブページ91〜94とメインメモ
リ7に記憶されたサブページ101〜104とがメモリ
内部バス52および外部アクセスバス26を介して入れ
替えられている最中に、プロセッサエレメント233 以
外のプロセッサエレメント234 から共有メモリ24の
バンク806 に記憶されたサブページ112に対しての
読み出し要求が発生した場合の並列プロセッサ21の処
理について説明する。
からの読み出し要求に応じて、共有メモリ24のバンク
801 に記憶されたサブページ91〜94とメインメモ
リ7に記憶されたサブページ101〜104とがメモリ
内部バス52および外部アクセスバス26を介して入れ
替えられている最中に、プロセッサエレメント233 以
外のプロセッサエレメント234 から共有メモリ24の
バンク806 に記憶されたサブページ112に対しての
読み出し要求が発生した場合の並列プロセッサ21の処
理について説明する。
【0039】この場合には、サブページ112に対して
の読み出し要求が、プロセッサエレメント234 からコ
モンバス22を介して共有メモリ24に出力され、この
読み出し要求が制御信号S70としてコモンバス用制御
回路31に出力される。このとき、サブページ112は
メモリサブバンク42に記憶されているため、コモンバ
ス用制御回路31からアドレスデコーダ58に制御信号
S31が出力され、マルチプレクサ54がメモリ内部バ
ス51に接続される。これによって、サブページ112
が、メモリ内部バス51およびコモンバス22を介し
て、プロセッサエレメント234 に出力される。
の読み出し要求が、プロセッサエレメント234 からコ
モンバス22を介して共有メモリ24に出力され、この
読み出し要求が制御信号S70としてコモンバス用制御
回路31に出力される。このとき、サブページ112は
メモリサブバンク42に記憶されているため、コモンバ
ス用制御回路31からアドレスデコーダ58に制御信号
S31が出力され、マルチプレクサ54がメモリ内部バ
ス51に接続される。これによって、サブページ112
が、メモリ内部バス51およびコモンバス22を介し
て、プロセッサエレメント234 に出力される。
【0040】並列プロセッサ21では、上述したサブペ
ージ112の転送処理と並行して、共有メモリ24のバ
ンク801 に記憶されたサブページ91〜94とメイン
メモリ7に記憶されたサブページ101〜104との入
れ替え処理が行われる。すなわち、並列プロセッサ21
では、プロセッサエレメント231 〜23n と共有メモ
リ24との間でのサブページの入れ替え処理と、共有メ
モリ24とメインメモリ7との間でのページ入れ替え処
理とを多重化できる。
ージ112の転送処理と並行して、共有メモリ24のバ
ンク801 に記憶されたサブページ91〜94とメイン
メモリ7に記憶されたサブページ101〜104との入
れ替え処理が行われる。すなわち、並列プロセッサ21
では、プロセッサエレメント231 〜23n と共有メモ
リ24との間でのサブページの入れ替え処理と、共有メ
モリ24とメインメモリ7との間でのページ入れ替え処
理とを多重化できる。
【0041】以上説明したように、並列プロセッサ21
によれば、プロセッサエレメント231 〜23n から共
有メモリ24に出力されたアクセス要求の出力順序では
なく、即座に実行可能なアクセス要求を、先に出力され
たアクセス要求に先立って実行できる。そのため、アク
セス要求に応じた処理を効率的に行うことができ、演算
性能を向上できる。
によれば、プロセッサエレメント231 〜23n から共
有メモリ24に出力されたアクセス要求の出力順序では
なく、即座に実行可能なアクセス要求を、先に出力され
たアクセス要求に先立って実行できる。そのため、アク
セス要求に応じた処理を効率的に行うことができ、演算
性能を向上できる。
【0042】また、画像処理などの分野では、同一のペ
ージ内のデータが、プロセッサエレメント231 〜23
n から連続してアクセスされる場合が多いが、並列プロ
セッサ21では、ページフォルトが発生した場合に、要
求が生じたサブページの他に当該サブページと連続した
アドレスを持つ他の3個のサブページもメインメモリ7
から共有メモリ24に読み込むため、次にページフォル
トが発生する可能性を低減できる。すなわち、画像処理
の特性から、要求があったサブページと連続したアドレ
スのサブページについても近い将来、プロセッサエレメ
ント231 〜23n からアクセスが発生する可能性が高
いため、これらのサブページを要求があったサブページ
と共にメインメモリ7から共有メモリ24に読み込むこ
とは、将来のページフォルトの発生率を低下させるのに
有効である。
ージ内のデータが、プロセッサエレメント231 〜23
n から連続してアクセスされる場合が多いが、並列プロ
セッサ21では、ページフォルトが発生した場合に、要
求が生じたサブページの他に当該サブページと連続した
アドレスを持つ他の3個のサブページもメインメモリ7
から共有メモリ24に読み込むため、次にページフォル
トが発生する可能性を低減できる。すなわち、画像処理
の特性から、要求があったサブページと連続したアドレ
スのサブページについても近い将来、プロセッサエレメ
ント231 〜23n からアクセスが発生する可能性が高
いため、これらのサブページを要求があったサブページ
と共にメインメモリ7から共有メモリ24に読み込むこ
とは、将来のページフォルトの発生率を低下させるのに
有効である。
【0043】また、並列プロセッサ21では、共有メモ
リ24のメモリセルとして1ポート構造のものを用い
て、プロセッサエレメント231 〜23n と共有メモリ
24との間でのサブページ入れ替え処理と、共有メモリ
24とメインメモリ7との間でのページ入れ替え処理と
を並行して行うことができるため、小さな回路規模で、
高速処理を実現できる。すなわち、共有メモリ24は、
シングルポートであるにも係わらずに、機能的に、2ポ
ートと略同じ性能を実現できる。
リ24のメモリセルとして1ポート構造のものを用い
て、プロセッサエレメント231 〜23n と共有メモリ
24との間でのサブページ入れ替え処理と、共有メモリ
24とメインメモリ7との間でのページ入れ替え処理と
を並行して行うことができるため、小さな回路規模で、
高速処理を実現できる。すなわち、共有メモリ24は、
シングルポートであるにも係わらずに、機能的に、2ポ
ートと略同じ性能を実現できる。
【0044】本発明は上述した実施形態には限定されな
い。例えば、上述した実施形態では、アクセス要求管理
手段として、キュー方式でアクセス要求を記憶するリク
エストキュー125を例示したが、アクセス要求管理手
段は、キュー方式ではなく、例えば、アクセス要求を入
力して所定のパターンで固定したアドレスに記憶し、制
御回路33に出力するまでシフトしない構成にしてもよ
い。
い。例えば、上述した実施形態では、アクセス要求管理
手段として、キュー方式でアクセス要求を記憶するリク
エストキュー125を例示したが、アクセス要求管理手
段は、キュー方式ではなく、例えば、アクセス要求を入
力して所定のパターンで固定したアドレスに記憶し、制
御回路33に出力するまでシフトしない構成にしてもよ
い。
【0045】また、上述した実施形態では、リクエスト
キュー125を、直列に接続された6段のキューエント
リバンクによって構成した場合を例示したが、直列に接
続するキューエントリバンクの数は任意である。但し、
この数が多い程、ページヒットを伴わないアクセス要求
がリクエストキュー125に記憶される確率が高くなる
ため、並列プロセッサ21の性能は向上する。
キュー125を、直列に接続された6段のキューエント
リバンクによって構成した場合を例示したが、直列に接
続するキューエントリバンクの数は任意である。但し、
この数が多い程、ページヒットを伴わないアクセス要求
がリクエストキュー125に記憶される確率が高くなる
ため、並列プロセッサ21の性能は向上する。
【0046】また、上述した実施形態では、図1に示す
プロセッサエレメント231 〜23n がサブページから
データを読み出す場合を例示したが、サブページにデー
タを書き込む場合でも、コモンバス22を介したサブペ
ージの転送処理および外部アクセスバス26を介したペ
ージの転送処理は同じである。
プロセッサエレメント231 〜23n がサブページから
データを読み出す場合を例示したが、サブページにデー
タを書き込む場合でも、コモンバス22を介したサブペ
ージの転送処理および外部アクセスバス26を介したペ
ージの転送処理は同じである。
【0047】また、上述した実施形態では、共有メモリ
24のメモリセル領域を4個のメモリサブバンク41〜
44に分割した場合を例示したが、メモリサブバンクの
数は任意である。従って、例えば、共有メモリ24のメ
モリセル領域を8個のメモリサブバンクに分割してもよ
い。この場合には、1ページは8個のサブページで構成
される。また、上述した実施形態では、単数のサブペー
ジのデータ量を512バイトとしたが、このデータ量は
特に限定されず、256バイトあるいは1024バイト
などであってもよい。
24のメモリセル領域を4個のメモリサブバンク41〜
44に分割した場合を例示したが、メモリサブバンクの
数は任意である。従って、例えば、共有メモリ24のメ
モリセル領域を8個のメモリサブバンクに分割してもよ
い。この場合には、1ページは8個のサブページで構成
される。また、上述した実施形態では、単数のサブペー
ジのデータ量を512バイトとしたが、このデータ量は
特に限定されず、256バイトあるいは1024バイト
などであってもよい。
【0048】また、図8を用いて説明した共有メモリ2
4とメインメモリ7との間のページ入れ替え処理は、最
初にサブバンク42に記憶されたサブページ92につい
ての入れ替え処理を行えば、その後、サブバンク41,
43,44に記憶されたサブページ91,93,94を
メインメモリ7との間でどの順序で入れ替えてもよい。
例えば、上述した実施形態では、要求があったサブペー
ジ92の次にアドレスをインクリメントする方向に、サ
ブページ93,94,91の順で入れ替えを行ったが、
アドレスをデクリメントする方向に、サブページ92の
次にサブページ91,94,93の順で入れ替えてもよ
い。
4とメインメモリ7との間のページ入れ替え処理は、最
初にサブバンク42に記憶されたサブページ92につい
ての入れ替え処理を行えば、その後、サブバンク41,
43,44に記憶されたサブページ91,93,94を
メインメモリ7との間でどの順序で入れ替えてもよい。
例えば、上述した実施形態では、要求があったサブペー
ジ92の次にアドレスをインクリメントする方向に、サ
ブページ93,94,91の順で入れ替えを行ったが、
アドレスをデクリメントする方向に、サブページ92の
次にサブページ91,94,93の順で入れ替えてもよ
い。
【0049】また、図8を用いて説明した共有メモリ2
4とメインメモリ7との間のページ入れ替え処理では、
サブページ91〜94を入れ替える順序のパターンは、
24(=4×3×2×1)通りある。従って、並列プロ
セッサ21では、共有メモリ24とメインメモリ7との
間で、この24通りのうちいずれの順序でサブページを
入れ替えてもよい。例えば、プロセッサエレメント23
1 〜23n からのアクセス要求を考慮せず、例えば、常
に、サブページ91,92,93,94の順でサブペー
ジを入れ替えてもよい。
4とメインメモリ7との間のページ入れ替え処理では、
サブページ91〜94を入れ替える順序のパターンは、
24(=4×3×2×1)通りある。従って、並列プロ
セッサ21では、共有メモリ24とメインメモリ7との
間で、この24通りのうちいずれの順序でサブページを
入れ替えてもよい。例えば、プロセッサエレメント23
1 〜23n からのアクセス要求を考慮せず、例えば、常
に、サブページ91,92,93,94の順でサブペー
ジを入れ替えてもよい。
【0050】また、本発明は、例えば、プロセッサエレ
メント231 〜23n の動作モードを判断したり、各プ
ロセッサエレメント231 〜23n のデータアクセスパ
ターンがメモリアドレスを増加および減少する方向の何
れであるかを判断する判断回路を設けることも可能であ
る。この場合には、当該判断回路の判断結果に基づい
て、共有メモリ24とメインメモリ7との間でのサブペ
ージの入れ替え順序を、プロセッサエレメント231 〜
23n のアクセス待ち時間が短くなるように、柔軟に設
定するように構成することができる。ここで、共有メモ
リ24におけるサブページの入れ替え順序を制御する手
段として、固定された論理回路の他に、条件に応じて入
れ替え順序を柔軟に変更できるシーケンサなどのプログ
ラム可能な回路を設けることが望ましい。
メント231 〜23n の動作モードを判断したり、各プ
ロセッサエレメント231 〜23n のデータアクセスパ
ターンがメモリアドレスを増加および減少する方向の何
れであるかを判断する判断回路を設けることも可能であ
る。この場合には、当該判断回路の判断結果に基づい
て、共有メモリ24とメインメモリ7との間でのサブペ
ージの入れ替え順序を、プロセッサエレメント231 〜
23n のアクセス待ち時間が短くなるように、柔軟に設
定するように構成することができる。ここで、共有メモ
リ24におけるサブページの入れ替え順序を制御する手
段として、固定された論理回路の他に、条件に応じて入
れ替え順序を柔軟に変更できるシーケンサなどのプログ
ラム可能な回路を設けることが望ましい。
【0051】また、上述した並列プロセッサ21では、
図2に示すように、1組のメモリ内部バス51およびコ
モンバス22を用いた場合を例示したが、メモリサブバ
ンクの数以下の複数組のメモリ内部バス51およびコモ
ンバス22を設けてもよい。この場合には、当該組の数
に応じて、プロセッサエレメント231 〜23n から共
有メモリ24の異なるサブバンクに同時にアクセスが可
能となり、さらなる高速処理を実現できる。
図2に示すように、1組のメモリ内部バス51およびコ
モンバス22を用いた場合を例示したが、メモリサブバ
ンクの数以下の複数組のメモリ内部バス51およびコモ
ンバス22を設けてもよい。この場合には、当該組の数
に応じて、プロセッサエレメント231 〜23n から共
有メモリ24の異なるサブバンクに同時にアクセスが可
能となり、さらなる高速処理を実現できる。
【0052】
【発明の効果】以上説明したように、本発明の並列プロ
セッサによれば、プロセッサエレメントが共有メモリに
アクセスするときの待ち時間を短縮でき、高い演算性能
を実現できる。また、本発明の演算処理方法によれば、
プロセッサエレメントが共有メモリにアクセスするとき
の待ち時間を短縮でき、プロセッサエレメントに高い演
算性能を実現させることが可能になる。
セッサによれば、プロセッサエレメントが共有メモリに
アクセスするときの待ち時間を短縮でき、高い演算性能
を実現できる。また、本発明の演算処理方法によれば、
プロセッサエレメントが共有メモリにアクセスするとき
の待ち時間を短縮でき、プロセッサエレメントに高い演
算性能を実現させることが可能になる。
【図1】図1は、本発明の実施形態の並列プロセッサの
システム構成図である。
システム構成図である。
【図2】図2は、図1に示す共有メモリの構成図であ
る。
る。
【図3】図3は、図2に示すメモリサブバンクに記憶さ
れるサブページを説明するための図である。
れるサブページを説明するための図である。
【図4】図4は、図2に示すリクエストキューの構成図
である。
である。
【図5】図5は、図2に示すリクエストキューのアクセ
ス要求の先読みを行わない場合の動作を説明するための
図である。
ス要求の先読みを行わない場合の動作を説明するための
図である。
【図6】図5は、図2に示すリクエストキューのアクセ
ス要求の先読みを行う場合の動作を説明するための図で
ある。
ス要求の先読みを行う場合の動作を説明するための図で
ある。
【図7】図7は、図6に示すリクエストキューの動作を
説明するためのサブバンクの記憶状態を示す図である。
説明するためのサブバンクの記憶状態を示す図である。
【図8】図8は、図1に示す並列プロセッサの多重アク
セス動作を説明するための図である。
セス動作を説明するための図である。
【図9】図9は、従来の一般的な並列プロセッサのシス
テム構成図である。
テム構成図である。
【符号の説明】 6…チップインタフェース、7…メインメモリ、22…
コモンバス、231 〜23n …プロセッサエレメント、
24…共有メモリ、25…バスユニット、26…外部ア
クセスバス、271 〜273 ,41〜44…サブバン
ク、31…コモンバス用制御回路、32…外部バス用制
御回路、33…制御回路、53〜56…マルチプレク
サ、57〜60…アドレスデコーダ、800 〜80m …
バンク、120…タグデータ領域、121…バリッド識
別領域、122…ダーディ識別領域、123…ページセ
レクタ領域、125…リクエストキュー、1300 〜1
30m-1 …タグバンク
コモンバス、231 〜23n …プロセッサエレメント、
24…共有メモリ、25…バスユニット、26…外部ア
クセスバス、271 〜273 ,41〜44…サブバン
ク、31…コモンバス用制御回路、32…外部バス用制
御回路、33…制御回路、53〜56…マルチプレク
サ、57〜60…アドレスデコーダ、800 〜80m …
バンク、120…タグデータ領域、121…バリッド識
別領域、122…ダーディ識別領域、123…ページセ
レクタ領域、125…リクエストキュー、1300 〜1
30m-1 …タグバンク
Claims (21)
- 【請求項1】それぞれ単数または複数のサブページを記
憶する内部メモリを備え、当該内部メモリに記憶された
データを用いて演算処理を行う複数のプロセッサエレメ
ントと、 前記複数のプロセッサエレメントと接続された第1のバ
スと、 外部メモリと接続された第2のバスと、 前記第1のバスおよび前記第2のバスの双方に接続され
た共有メモリとを有し、 前記共有メモリは、 それぞれサブページを記憶する複数のサブバンクからな
る記憶手段と、 前記プロセッサエレメントからのアクセス要求に応じ
て、前記プロセッサエレメントの内部メモリと前記記憶
手段との間の前記第1のバスを介したデータ転送、およ
び、前記記憶手段と前記外部メモリとの間の前記第2の
バスを介したデータ転送を制御する制御手段と、 前記記憶手段に対してのページフォルトを発生するアク
セス要求を前記複数のプロセッサエレメントから入力
し、当該入力したアクセス要求に応じて前記第2のバス
を介して前記共有メモリと外部メモリとの間でデータを
転送中に他のアクセス要求を入力したときに、前記他の
アクセス要求を記憶し、当該記憶しているアクセス要求
がページフォルトを発生しない場合に、当該記憶してい
るアクセス要求を前記制御手段に実行させるアクセス要
求管理手段とを有する並列プロセッサ。 - 【請求項2】前記アクセス要求管理手段は、複数のアク
セス要求を記憶可能であり、 複数のアクセス要求が記憶されているときに、当該記憶
されている複数のアクセス要求のうちページフォルトを
発生しないものを、先に記憶されたページフォルトを発
生するアクセス要求に先立て前記制御手段に実行させる
請求項1に記載の並列プロセッサ。 - 【請求項3】前記アクセス管理手段は、ページフォルト
を発生しない複数のアクセス要求が記憶されているとき
に、当該記憶されているページフォルトを発生しない複
数のアクセス要求のうち、先に記憶されたものから順に
前記制御手段に実行させる請求項1に記載の並列プロセ
ッサ。 - 【請求項4】前記アクセス管理手段は、キュー方式で、
前記複数のアクセス要求を記憶する請求項1に記載の並
列プロセッサ。 - 【請求項5】前記記憶手段は、複数の異なるサブバンク
の記憶領域内の単数のサブページを記憶する記憶領域か
らそれぞれ構成され、それぞれ単数のページを記憶する
複数のバンクを有し、 前記制御手段は、前記ページの入れ替えを前記バンクを
単位として行う請求項1に記載の並列プロセッサ。 - 【請求項6】前記複数のサブバンクと、前記第1のバス
および第2のバスのうち選択した一方とを接続する選択
手段をさらに有する請求項1に記載の並列プロセッサ。 - 【請求項7】前記制御手段は、前記共有メモリの前記記
憶手段と前記プロセッサエレメントとの間で転送される
サブページと、前記記憶手段と前記外部メモリとの間で
転送されるサブページとが異なる場合に、前記記憶手段
と前記プロセッサエレメントとの間でのサブページの転
送処理と、前記記憶手段と前記外部メモリとの間でのサ
ブページの転送処理とを並行して行うように制御する請
求項1に記載の並列プロセッサ。 - 【請求項8】前記第1のバスのデータ転送速度は、前記
第2のバスのデータ転送速度と同一、または、前記第2
のバスのデータ転送速度より速い請求項1に記載の並列
プロセッサ。 - 【請求項9】前記記憶手段の記憶領域の各サブバンク
に、それぞれ単数のデータポートが設けられている請求
項1に記載の並列プロセッサ。 - 【請求項10】前記制御手段は、同一のページを構成す
る複数のサブページを、それぞれ異なる前記サブバンク
に記憶する請求項1に記載の並列プロセッサ。 - 【請求項11】前記記憶手段の複数のサブバンクは、同
じ記憶容量を有する請求項1に記載の並列プロセッサ。 - 【請求項12】前記記憶手段のサブバンクの数と、前記
ページを構成するサブページの数とは同じである請求項
1に記載の並列プロセッサ。 - 【請求項13】前記プロセッサエレメントは、それぞれ
単数のサブページを記憶する複数のサブバンクを有する
請求項1に記載の並列プロセッサ。 - 【請求項14】前記ページを構成する複数のサブページ
は、前記外部メモリのアドレス空間で連続したアドレス
を持つ請求項1に記載の並列プロセッサ。 - 【請求項15】前記サブページのデータは、画像データ
であり、 前記複数のプロセッサエレメントは、前記画像データを
用いて画像処理を行う請求項1に記載の並列プロセッ
サ。 - 【請求項16】それぞれ単数のデータポートを持つ複数
のサブバンクからなる記憶領域を持ち複数のプロセッサ
エレメントからアクセスされる共有メモリに単数または
複数のサブページを記憶し、 前記プロセッサエレメントからのアクセス要求に応じ
て、前記プロセッサエレメントの内部メモリと前記共有
メモリとの間の第1のバスを介したデータ転送、およ
び、前記共有メモリと前記外部メモリとの間の第2のバ
スを介したデータ転送を制御し、 前記プロセッサエレメントが前記共有メモリ対してのペ
ージフォルトを伴うアクセス要求を発生し、当該アクセ
ス要求に応じて前記共有メモリと外部メモリとの間で前
記第2のバスを介してデータを転送中に、他のプロセッ
サエレメントがアクセス要求を発生した場合に、前記他
のプロセッサエレメントが発生したアクセス要求を記憶
し、当該記憶しているアクセス要求がページフォルトを
発生するか否かを判断し、ページフォルトを発生しない
と判断した場合に、前記記憶しているアクセス要求を実
行する演算処理方法。 - 【請求項17】複数のアクセス要求が記憶されていると
きに、当該記憶されている複数のアクセス要求のうちペ
ージフォルトを発生しないものを、先に記憶されたペー
ジフォルトを伴うアクセス要求に先立て実行する請求項
16に記載の演算処理方法。 - 【請求項18】ページフォルトを発生しない複数のアク
セス要求が記憶されているときに、当該記憶されている
ページフォルトを発生しない複数のアクセス要求のう
ち、先に記憶されたものから順実行する請求項16に記
載の演算処理方法。 - 【請求項19】キュー方式で、前記複数のアクセス要求
を記憶する請求項16に記載の演算処理方法。 - 【請求項20】前記共有メモリと前記プロセッサエレメ
ントとの間で転送されるサブページと、前記共有メモリ
と前記外部メモリとの間で転送されるサブページとが異
なる場合に、前記共有メモリと前記プロセッサエレメン
トとの間でのサブページの転送処理と、前記共有メモリ
と前記外部メモリとの間でのサブページの転送処理とを
並行して行う請求項16に記載の演算処理方法。 - 【請求項21】前記第1のバスのデータ転送速度は、前
記第2のバスのデータ転送速度と同一、または、前記第
2のバスのデータ転送速度より速い請求項16に記載の
演算処理方法。
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP10007000A JPH11203192A (ja) | 1998-01-16 | 1998-01-16 | 並列プロセッサおよび演算処理方法 |
| US09/228,653 US6381686B1 (en) | 1998-01-16 | 1999-01-12 | Parallel processor comprising multiple sub-banks to which access requests are bypassed from a request queue when corresponding page faults are generated |
| KR1019990000676A KR19990067880A (ko) | 1998-01-16 | 1999-01-13 | 병렬프로세서 및 연산처리방법 |
| EP99400094A EP0930574A2 (en) | 1998-01-16 | 1999-01-15 | Parallel processor and processing method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP10007000A JPH11203192A (ja) | 1998-01-16 | 1998-01-16 | 並列プロセッサおよび演算処理方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH11203192A true JPH11203192A (ja) | 1999-07-30 |
Family
ID=11653839
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP10007000A Pending JPH11203192A (ja) | 1998-01-16 | 1998-01-16 | 並列プロセッサおよび演算処理方法 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US6381686B1 (ja) |
| EP (1) | EP0930574A2 (ja) |
| JP (1) | JPH11203192A (ja) |
| KR (1) | KR19990067880A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8576911B2 (en) | 2007-06-21 | 2013-11-05 | Samsung Electronics Co., Ltd. | Method and apparatus for motion estimation |
| JP2020519996A (ja) * | 2017-05-15 | 2020-07-02 | グーグル エルエルシー | 高スループット内部通信プロトコルを用いる画像処理プロセッサ |
Families Citing this family (21)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6581089B1 (en) * | 1998-04-16 | 2003-06-17 | Sony Corporation | Parallel processing apparatus and method of the same |
| JP2002024084A (ja) * | 2000-07-12 | 2002-01-25 | Mitsubishi Electric Corp | 半導体集積回路装置および電子システム |
| EP1182559B1 (en) | 2000-08-21 | 2009-01-21 | Texas Instruments Incorporated | Improved microprocessor |
| US6944863B1 (en) * | 2000-12-21 | 2005-09-13 | Unisys Corporation | Queue bank repository and method for sharing limited queue banks in memory |
| US7107386B1 (en) * | 2001-08-08 | 2006-09-12 | Pasternak Solutions, Llc | Memory bus arbitration using memory bank readiness |
| DE10360998B4 (de) * | 2003-12-23 | 2008-09-04 | Infineon Technologies Ag | Schutz von Chips gegen Attacken |
| JP5079988B2 (ja) * | 2005-06-13 | 2012-11-21 | オリンパス株式会社 | 分散処理システム、分散処理方法及びプログラム |
| JP4075914B2 (ja) * | 2005-06-30 | 2008-04-16 | ブラザー工業株式会社 | データ処理装置 |
| KR100748191B1 (ko) * | 2006-04-06 | 2007-08-09 | 엠텍비젼 주식회사 | 공유 메모리를 구비한 장치 및 공유 메모리 억세스 상태정보 제공 방법 |
| US20080189473A1 (en) * | 2007-02-07 | 2008-08-07 | Micron Technology, Inc | Mlc selected multi-program for system management |
| KR100895298B1 (ko) | 2007-04-30 | 2009-05-07 | 한국전자통신연구원 | 멀티미디어 데이터의 효율적인 병렬 처리를 위한 장치,방법, 데이터 처리 엘리먼트 |
| KR101553648B1 (ko) | 2009-02-13 | 2015-09-17 | 삼성전자 주식회사 | 재구성 가능한 구조의 프로세서 |
| US8943296B2 (en) | 2011-04-28 | 2015-01-27 | Vmware, Inc. | Virtual address mapping using rule based aliasing to achieve fine grained page translation |
| US9767039B2 (en) * | 2011-07-18 | 2017-09-19 | Vmware, Inc. | Increasing granularity of dirty bit information in hardware assisted memory management systems |
| GB2520603B (en) * | 2013-09-26 | 2016-04-06 | Imagination Tech Ltd | Atomic memory update unit and methods |
| US11257271B2 (en) | 2013-09-26 | 2022-02-22 | Imagination Technologies Limited | Atomic memory update unit and methods |
| US9466091B2 (en) | 2013-09-26 | 2016-10-11 | Imagination Technologies Limited | Atomic memory update unit and methods |
| US20230283618A1 (en) * | 2022-03-01 | 2023-09-07 | Western Digital Technologies, Inc. | Detection of malicious operations for distributed cache |
| US12452189B2 (en) | 2022-06-01 | 2025-10-21 | Western Digital Technologies, Inc. | Context-aware NVMe processing in virtualized environments |
| US12386648B2 (en) | 2022-06-09 | 2025-08-12 | Western Digital Technologies, Inc. | Resource allocation in virtualized environments |
| US12379951B2 (en) | 2022-06-27 | 2025-08-05 | Western Digital Technologies, Inc. | Memory coherence in virtualized environments |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4843542A (en) * | 1986-11-12 | 1989-06-27 | Xerox Corporation | Virtual memory cache for use in multi-processing systems |
| JP3144794B2 (ja) * | 1990-11-09 | 2001-03-12 | 株式会社日立製作所 | マルチプロセッサシステム |
| US5845329A (en) * | 1993-01-29 | 1998-12-01 | Sanyo Electric Co., Ltd. | Parallel computer |
| US5511224A (en) * | 1993-02-18 | 1996-04-23 | Unisys Corporation | Configurable network using dual system busses with common protocol compatible for store-through and non-store-through cache memories |
-
1998
- 1998-01-16 JP JP10007000A patent/JPH11203192A/ja active Pending
-
1999
- 1999-01-12 US US09/228,653 patent/US6381686B1/en not_active Expired - Fee Related
- 1999-01-13 KR KR1019990000676A patent/KR19990067880A/ko not_active Abandoned
- 1999-01-15 EP EP99400094A patent/EP0930574A2/en not_active Withdrawn
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8576911B2 (en) | 2007-06-21 | 2013-11-05 | Samsung Electronics Co., Ltd. | Method and apparatus for motion estimation |
| JP2020519996A (ja) * | 2017-05-15 | 2020-07-02 | グーグル エルエルシー | 高スループット内部通信プロトコルを用いる画像処理プロセッサ |
Also Published As
| Publication number | Publication date |
|---|---|
| US6381686B1 (en) | 2002-04-30 |
| KR19990067880A (ko) | 1999-08-25 |
| EP0930574A2 (en) | 1999-07-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH11203192A (ja) | 並列プロセッサおよび演算処理方法 | |
| US6665774B2 (en) | Vector and scalar data cache for a vector multiprocessor | |
| JP2509766B2 (ja) | キャッシュメモリ交換プロトコル | |
| US6041393A (en) | Array padding for higher memory throughput in the presence of dirty misses | |
| JPH04343151A (ja) | メモリアクセス装置 | |
| EP0803818B1 (en) | Single-cycle multi-accessible interleaved cache | |
| EP0279189B1 (en) | Storage system | |
| WO1998013763A2 (en) | Multiport cache memory with address conflict detection | |
| JPH06318174A (ja) | キャッシュ・メモリ・システム及び主メモリに記憶されているデータのサブセットをキャッシュする方法 | |
| US5905999A (en) | Cache sub-array arbitration | |
| JPH0282330A (ja) | ムーブアウト・システム | |
| US6349370B1 (en) | Multiple bus shared memory parallel processor and processing method | |
| JPS5832427B2 (ja) | 多重情報処理システム | |
| EP1449087A1 (en) | Bandwidth enhancement for uncached devices | |
| EP0310446A2 (en) | Cache memory management method | |
| KR100334298B1 (ko) | 기억 소자 | |
| JPH11203200A (ja) | 並列プロセッサおよびメモリ制御方法 | |
| JPH11203252A (ja) | 並列プロセッサおよびメモリ制御方法 | |
| JPH07282023A (ja) | データ転送量可変プロセッサ及びそれを用いたシステム | |
| KR960005394B1 (ko) | 멀티 프로세서 시스템 | |
| EP0377969B1 (en) | I/O cached computer systems | |
| JP2000010952A (ja) | プロセッサおよび並列プロセッサ | |
| US7174426B2 (en) | Interleave pre-checking in front of shared caches with pipelined access | |
| EP4443305A1 (en) | Method for storing and accessing a data operand in a memory unit | |
| JPH11328123A (ja) | プロセッサ、並列プロセッサおよび演算処理方法 |