JPS5897185A - メモリアクセス方式 - Google Patents
メモリアクセス方式Info
- Publication number
- JPS5897185A JPS5897185A JP56194978A JP19497881A JPS5897185A JP S5897185 A JPS5897185 A JP S5897185A JP 56194978 A JP56194978 A JP 56194978A JP 19497881 A JP19497881 A JP 19497881A JP S5897185 A JPS5897185 A JP S5897185A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- address
- main memory
- access
- request
- 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; CALCULATING OR 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
本発明はメモリアクセス方式に関する。
例えば、ベクトル演算専用の演算処理装置では、各ベク
トル成分を並列に演算するために、仮想処理手段による
並列処理という方式が用いられる。 これはTeのようなものである。 一般に、一つの演算命令全実行する場合には、命令の取
シ出し、アクセスすべきオペランドに対するメモリアド
レスの計算、そのメモリアドレスに含まれるオペランド
のメモリからの読み出し、読み出したオペランドを用い
ての命令で指定された演算の実行、演算結果のメモリへ
の格納等、種種のステップの処理が必要である8個個の
演算命令に対して、これらの処理を逐次性ない、一つの
演算命令のすべてのステップが終了した後、次の演算命
令を最初の処理ステップから行なうよりも、このような
各ステップの処理に対し独立のハードウェア瓢エツトを
設け、各ハードウェアユニ、トには1ステツプづつ位相
(ステップ)のづれた異なる演算命令を並列につぎつぎ
に実行させると込う、いわゆるパイプライン方式をとれ
ば、すべてのハードウェアを常に稼動状態に保てるので
処理能力を大いに増加することができる。 この場合に、例えば一つの演算命令の処理t−8ステツ
プに分割し、各ステップに対応する8個のハードウェア
が並列に動作するようにすると、このマシンは1ステツ
プづつ位相のづれた8個の演算命令を並列に処理できる
ことになる。これは見方を変えると8個の態別の処理系
が存在すると考えることもできる。この見掛は上の各処
理系をそれぞれ仮想処理手段(VPM)と呼ぶ。 ベクトル演算専用のマシンにおいては、各仮6処理手段
はホストの演算処理装置からの指示によシ、各ベクトル
威令の演算命令を並列に逐行する。 この場合に第0番目から第7番目までの8個の仮M処1
1手R(VPMO−VPM7 )#:t、gi図1c
示fように1マシンサイクル(℃づつづれた8列のパイ
プラインを形成する。各演算命令の処理は8Tの周期を
もつが(8Tで一命令が終了するが)、各VPMはこの
周期中のき”tりたマシンサイクル(図の例では最初1
−0番目として第2番目のマシンサイクル)でメモリア
クセスを行なう、また、第1図に示すように任意のVP
Mは8Tごとにメモリアクセス要求を発行することがで
きる。 さて、あるVPMがメモリアクセスを行う場合には、ま
ずキャッシュメモリに対してアクセスを行う。もしキャ
ッジ、メモリに必要なオペランドが存在する場合には直
ちにそれを読み出して使用する。もし、キャッシュミス
ヒツトの場合には、主メモリに対しそのオペランドを含
むブロック(例えば16ワードで1ブロツクとなる)の
読メ出し要求(プロ、クリート要求)を行なう、もし、
このとき主メモリがビジー状態の場合にはこの読出し要
求アドレス管読出し要求アドレススタックに格納する。 スタックに格納された読出し要求アドレスは主メモリの
ビジー状態がとけると、先にスタックされたものから、
主メモリに対してプロ、クリート要求を発生し、スタッ
クから解放される。 一方、さきに建スヒy)を起して必要なオペランドt−
読み出せなかったVPMは8Tの後に全く同様なメモリ
アクセスを行なう。すなわちキャッジ、メモリに対して
アクセスを行ない、もしすでにキャッジ、中に要求アド
レスが主メモリから転送ずみの場合はそれを読み出して
使用する。また4LNびキャッジ&イスヒツトの場合に
は前述と同様に主メモリに対しそのオペランドを含むプ
ロ、クリートの要求管出す、このときもし主メモリがビ
ジー状態の場合にはこの要求アドレスをスタック(待合
せ行列)に格納する。 このように、従来装置においては各VPMからの主メモ
リに対するアクセス要求のアドレスは直ちに処理できな
い場合にはスタックされる(主メモリがビジー状態の九
めに待行列に入れられる)が、このスタ、りされている
内容が見えない構成であるために、新たに生ずるVPM
の読出し要求がキャッジ&々スヒットの場合には、その
要求アドレスが現在主メモリから読み出し中であろうと
、tX他のVPMによシ前記読l出し要求アドレススタ
、りに先に金銀されていて近くキャッジ、にロードされ
ることになっていようと、それらに、無関係にVPMか
らの主メモリに対するアクセス要求をすべて発行してい
る。 一般に主メモリへのアクセスは、キャッジ、メモリへの
アクセスに対して格段に時間が長くかかるので、このよ
うな無駄なアクセス要求を発行することはそれだけ主メ
モリから無駄な読出しを行なうことにな〕処理性能の値
下を招くという欠点がある。 本発明の目的は上述の従来の欠点を除去したメモリアク
セス方式を提供するにある。 本発明の方式は、主メモリとΦヤ、シ、メモリとを共用
して複数の仮想処理手段がパイプライン動作を行なうよ
うに制御する演算処理システムであって、前記主メモリ
から前記キヤ、シ、メ彎りへのデータ転送が行なわれて
いる間はその転送データのメモリアドレスを保持するア
ドレス保持手段と、前記仮想処理手段からの前記主メモ
リへのメモリアクセスが待九されている場合にこの待た
されている要求メモリアドレスを保持する複数のスタッ
クアドレスを有するアドレススタック手段と、前記仮想
処理手段の一つからの前記主メモリへの新たなアクセス
要求に応答してこの要求メモリアドレスと前記アドレス
保持手段および前記アドレススタック手段に保持されて
いる内容とを比較する複数の比較手段と、前記比較手段
の一致出力の論理和に二如前記仮想処理手段からの新几
なメモリアクセスと同一のメモリアドレスt−4つアク
セスがすでに実行中であるかtaは待九されていること
を検出し九とilKはこの新らしい主メモリに対するア
クセス要求を取消すように制御する制御手段と含有する
。 つぎに図面を参照して本発明の詳細な説明する。 第2図は本発明の一実施例を示すブロック図である。本
実施例はN+1個の仮想処理手段(以後VPM)1−0
,1−1.・・・・・・1−N1キヤツジ為メモリ2、
プロ、クアドレスレジスタ3、プロ、クアドレス比較回
路4.M+1個のスタックアドレスレジスタ5−0.5
−1.・・・・・・、5−M。 前記各スタックアドレスレジスタ5−0〜5−M対応に
設は九スタックアドレス比較回路6−0゜6−1.・・
・・・・、6−M、論理和回路7、禁止ゲート8.9お
よび主メモリ読出し要求発行フリップフロップ101含
んでいる。今、VPMの数を前述と同様に8個と仮定す
る(すなわち、N=7とする)。 さて、各VPMは前述と同様に8マシンサイクルで一つ
の演算命令
トル成分を並列に演算するために、仮想処理手段による
並列処理という方式が用いられる。 これはTeのようなものである。 一般に、一つの演算命令全実行する場合には、命令の取
シ出し、アクセスすべきオペランドに対するメモリアド
レスの計算、そのメモリアドレスに含まれるオペランド
のメモリからの読み出し、読み出したオペランドを用い
ての命令で指定された演算の実行、演算結果のメモリへ
の格納等、種種のステップの処理が必要である8個個の
演算命令に対して、これらの処理を逐次性ない、一つの
演算命令のすべてのステップが終了した後、次の演算命
令を最初の処理ステップから行なうよりも、このような
各ステップの処理に対し独立のハードウェア瓢エツトを
設け、各ハードウェアユニ、トには1ステツプづつ位相
(ステップ)のづれた異なる演算命令を並列につぎつぎ
に実行させると込う、いわゆるパイプライン方式をとれ
ば、すべてのハードウェアを常に稼動状態に保てるので
処理能力を大いに増加することができる。 この場合に、例えば一つの演算命令の処理t−8ステツ
プに分割し、各ステップに対応する8個のハードウェア
が並列に動作するようにすると、このマシンは1ステツ
プづつ位相のづれた8個の演算命令を並列に処理できる
ことになる。これは見方を変えると8個の態別の処理系
が存在すると考えることもできる。この見掛は上の各処
理系をそれぞれ仮想処理手段(VPM)と呼ぶ。 ベクトル演算専用のマシンにおいては、各仮6処理手段
はホストの演算処理装置からの指示によシ、各ベクトル
威令の演算命令を並列に逐行する。 この場合に第0番目から第7番目までの8個の仮M処1
1手R(VPMO−VPM7 )#:t、gi図1c
示fように1マシンサイクル(℃づつづれた8列のパイ
プラインを形成する。各演算命令の処理は8Tの周期を
もつが(8Tで一命令が終了するが)、各VPMはこの
周期中のき”tりたマシンサイクル(図の例では最初1
−0番目として第2番目のマシンサイクル)でメモリア
クセスを行なう、また、第1図に示すように任意のVP
Mは8Tごとにメモリアクセス要求を発行することがで
きる。 さて、あるVPMがメモリアクセスを行う場合には、ま
ずキャッシュメモリに対してアクセスを行う。もしキャ
ッジ、メモリに必要なオペランドが存在する場合には直
ちにそれを読み出して使用する。もし、キャッシュミス
ヒツトの場合には、主メモリに対しそのオペランドを含
むブロック(例えば16ワードで1ブロツクとなる)の
読メ出し要求(プロ、クリート要求)を行なう、もし、
このとき主メモリがビジー状態の場合にはこの読出し要
求アドレス管読出し要求アドレススタックに格納する。 スタックに格納された読出し要求アドレスは主メモリの
ビジー状態がとけると、先にスタックされたものから、
主メモリに対してプロ、クリート要求を発生し、スタッ
クから解放される。 一方、さきに建スヒy)を起して必要なオペランドt−
読み出せなかったVPMは8Tの後に全く同様なメモリ
アクセスを行なう。すなわちキャッジ、メモリに対して
アクセスを行ない、もしすでにキャッジ、中に要求アド
レスが主メモリから転送ずみの場合はそれを読み出して
使用する。また4LNびキャッジ&イスヒツトの場合に
は前述と同様に主メモリに対しそのオペランドを含むプ
ロ、クリートの要求管出す、このときもし主メモリがビ
ジー状態の場合にはこの要求アドレスをスタック(待合
せ行列)に格納する。 このように、従来装置においては各VPMからの主メモ
リに対するアクセス要求のアドレスは直ちに処理できな
い場合にはスタックされる(主メモリがビジー状態の九
めに待行列に入れられる)が、このスタ、りされている
内容が見えない構成であるために、新たに生ずるVPM
の読出し要求がキャッジ&々スヒットの場合には、その
要求アドレスが現在主メモリから読み出し中であろうと
、tX他のVPMによシ前記読l出し要求アドレススタ
、りに先に金銀されていて近くキャッジ、にロードされ
ることになっていようと、それらに、無関係にVPMか
らの主メモリに対するアクセス要求をすべて発行してい
る。 一般に主メモリへのアクセスは、キャッジ、メモリへの
アクセスに対して格段に時間が長くかかるので、このよ
うな無駄なアクセス要求を発行することはそれだけ主メ
モリから無駄な読出しを行なうことにな〕処理性能の値
下を招くという欠点がある。 本発明の目的は上述の従来の欠点を除去したメモリアク
セス方式を提供するにある。 本発明の方式は、主メモリとΦヤ、シ、メモリとを共用
して複数の仮想処理手段がパイプライン動作を行なうよ
うに制御する演算処理システムであって、前記主メモリ
から前記キヤ、シ、メ彎りへのデータ転送が行なわれて
いる間はその転送データのメモリアドレスを保持するア
ドレス保持手段と、前記仮想処理手段からの前記主メモ
リへのメモリアクセスが待九されている場合にこの待た
されている要求メモリアドレスを保持する複数のスタッ
クアドレスを有するアドレススタック手段と、前記仮想
処理手段の一つからの前記主メモリへの新たなアクセス
要求に応答してこの要求メモリアドレスと前記アドレス
保持手段および前記アドレススタック手段に保持されて
いる内容とを比較する複数の比較手段と、前記比較手段
の一致出力の論理和に二如前記仮想処理手段からの新几
なメモリアクセスと同一のメモリアドレスt−4つアク
セスがすでに実行中であるかtaは待九されていること
を検出し九とilKはこの新らしい主メモリに対するア
クセス要求を取消すように制御する制御手段と含有する
。 つぎに図面を参照して本発明の詳細な説明する。 第2図は本発明の一実施例を示すブロック図である。本
実施例はN+1個の仮想処理手段(以後VPM)1−0
,1−1.・・・・・・1−N1キヤツジ為メモリ2、
プロ、クアドレスレジスタ3、プロ、クアドレス比較回
路4.M+1個のスタックアドレスレジスタ5−0.5
−1.・・・・・・、5−M。 前記各スタックアドレスレジスタ5−0〜5−M対応に
設は九スタックアドレス比較回路6−0゜6−1.・・
・・・・、6−M、論理和回路7、禁止ゲート8.9お
よび主メモリ読出し要求発行フリップフロップ101含
んでいる。今、VPMの数を前述と同様に8個と仮定す
る(すなわち、N=7とする)。 さて、各VPMは前述と同様に8マシンサイクルで一つ
の演算命令
【処理する(勿論、必要なオペランドがキャ
ッジ、メモリ2の中にまくて直ちに読み出せない場合に
は、実際の命令の終了はそれが読み出されて処理ができ
るまで遅れることになる)が、この−処理周期(8T)
の中の定まり九マシンサイクル(第1図の例では第2番
目のマシンサイクル)でオペランドを読み出すためのメ
モリアクセスを行なう、このために各VPMはアドレス
バス100t−介してキャシュメモリ2に読み出すべも
オペランドアドレスを指定する。今、6るVPM−kが
メモ1】アクセスを実行し、読出し指定したアドレスの
オペランドがキャッジ、メモリ2の中に存在すればその
オペランドは直ちにメヤッシ、メモリ2から読み出され
、出力ライン200t−介して要求したVPM−にの使
用に供せられる。 もし、VPM−kが指定し次アドレスのオペランドがキ
ャッジ、メモリ2の中に存在しない場合には、キャッジ
&セスヒツトを起しキャッジ、ミスヒツト出力5ooe
発生する。 従来方式においては、キャtシJLtスヒット管起した
場合には、直ちにこれが主メモリ読出し要求発行フリッ
プフロップ10tセツトし主メxe IJ(図示せず)
に対する読出し要求発行を行なうようになっている。 但し主メモリに対する読出し要求発行とは、以下のよう
な処理を行なうことの意味である。すなわち、主メモリ
が現在アクセス中でなく(ビジー状態でなく)、また、
待行列スタック中にメモ1Jアクセスの実行を待ってい
る他のアクセス要求がない場合には、直ちにこのアクセ
ス要求が主メモリに対し読み出すべきブロックアドレス
を転送指定し、ブロック1)−ドの処理を開始する。t
fcもし、すでに待行列スタック中に登録されてその実
行を待っている他の要求があるか、または主メモリがア
クセス中(ビジー状態)である場合には、この要求は待
行列スタックに登録され、自分の順番がまわってき九と
き゛に、この登録保持された読み出すべきブロックアド
レスを主メモ+3.に転送指定してプロ、クリートの処
理を開始する。いずれにしても一度読み出し要求発行が
なされるとその要求に対するブロックリードが必らず実
行されることになる。 さて、このように、従来方式ではあるVPMからのメモ
リアクセス要求がキャッジ、ミスヒツトを起した場合に
は、必らず主メモリに対する読出し要求発行を行なりで
いるのに対し、本実施例の方式では、この読出し要求の
発行は以下に述べるような条件金満す場合には抑止され
る。 まず、前記ブロックアドレスレジスタ3にha在主メモ
リ(図示せず)からキャッジ、メモリ2に対して転送す
べきデータが含まれるブロックアドレスが登録されてお
〕、かつ、現在この転送が実行中の場合には、ブロック
ロード中を指示する信号がキャッジ、メモリ2からライ
ン400t−介してブロックアドレス比較回路4のイネ
ーブル端子に導かれこれをイネーブルして−る。この比
較回路4の一方の入力には前記アドレスバス100を介
してこのVPM−kが読み出し要求をしているオペラン
ドのプロ、クアドレス(このオペランドのアドレスを含
むブロックのアドレス)カ供給され、比較回路4のもう
一方の入力には前記プロ、クアドレスレジスタ3からの
出力が供給されているので、もし、あるVPMが読出し
を要求したオペランドを含むプロ、クデータが、現在主
メモリからキャッジ、メモリ2に転送中である場合には
、比較回路4の出力は′″1″となシ、論理和回路7に
おいて他の条件との論理和がとられ、禁止ゲート9およ
び禁止ゲート8に供給されて、このVPM−kからの読
出し要求が発行されるのを抑止する。 さて、次の抑止条件は下記のようなものである。 VPM−kから読出し要求し九オペランドを含むプロ、
クアドレスは、各スタックアドレス比較回路6−0〜6
−Mの一方の入力として供給されておシ、これら比較回
路6−θ〜5−Mのもう一方の入力には対応するスタッ
クアドレスレジスタ5−0〜5−Mの出力が供給されて
いて、iた各比較回路6−0〜6−Mのイネーブル端子
には対応するスタックアドレスレジスタ5−0〜5−M
の中の有効ビット(このレジスタに格納されているデー
タの有効性を示すビット。もしこのビットが論理レベル
”1”ならばこの格納されているデータは有効である)
の出力500−0〜500−Mが接続されている。この
各スタックアドレスレジスタ5−θ〜5−Mには主メモ
リからプロ、りIJ−ドを行うべきブロックアドレスが
格納されておシ、これらのレジスタが本実施例の前記待
行列スタ、りを構成している。 従って、VPM−kが読出しを要求し九オペランドを含
むブロックアドレスが、もしこのスタックアドレスレジ
スタ5−θ〜5−Mの中に登録されているブロックアド
レスの一つと一致し、かつその有効ビットが@1″の場
合には一輪理和回路7の出力は11”となシ、これは禁
止ゲート9および80通過を禁止し1このVPM−kか
らの読出し要求が発行されるのを抑止する。 VPM−kからのメモリアクセス要求がキャッジ&ミス
ヒツトを起したと1に、上述の二つのいずれの条件も満
足し嫌い場合、つtJ)、VPM−kが続出し要求tし
でいるオペランド0を含むプロ、クアドレスが現在主メ
モリからキャシュメモリ2に対して転送中でなく、かつ
、このブロックアドレスが待行列スタック中に登録され
ていない場合にかぎシ、論理和回路7の出力は@0”と
な夛、コAL、てキャ、シ&電スヒット出力300は禁
止ケー)9t−通過して主メモリ読出し要求発行71、
プフロ、プ10をセ、トシ、主メモリに対する読出し要
求発行上行なう。 こうしてツリツブフロップ10がセットされると、前述
した意味に従う読出し要求発行が行なわれる。すなわち
、もし現在主メモリがビジー状態でなく、かつ、待行列
スタックであるアドレスレジスタ5−0〜5−Mの中に
現在登録されているブロックアドレスがない(アドレス
レジスタ5−〇〜5−M中のすべての有効ビットがOで
ある)場合には直ちに主メモリに対して、出力ライン8
00を介してこのブロックアドレスを転送し、ブロック
リードの処理を開始する。tft、、もし待行列スタ、
り中に現在登録されているアドレスがあるか、または主
メモリがビジー状態の場合にはへこのVPM−にの要求
ブロックアドレスはスタックアドレスレジスタ5−θ〜
5−Mの中の現在有効登録されているものの次の順番の
位置に格納され、そのしジスタの有効ビットが1にセッ
トされる。こうして待行列スタックであるスタックアド
レスレジスタ5−0〜5−M中に有効登録され九ブロッ
クアドレスは、自分の順番がまわりてくると自動的に主
メモリに対してこのブロックアドレスを転送しtaプロ
、クアドレスレジスタ3にこのブロックアドレスを格納
しブロックリードの処理を開始する。このブロックリー
ドの開始によってこのアドレスレジスタの有効ビットは
@O”にリセットされ、アドレススタ、り5−θ〜5−
Mの中の次に格納された要求が待行列の先頭に立つこと
になる。 以上に説明したように、本実施例によると、あるVPM
からのアクセス要求がキヤ、シ、ミスヒ、トラ起しても
、必要な場合以外は主メモリに対して読出し要求を発行
しない、主メモリからのプロ、クリートは、キャッジ、
メモリ2からの読出しに比較して遥かに長い時間を必要
とする念め、不必要なプロ、クリートが重なるとそれだ
け処理時間を長くして演算装置の性能低下を来すことに
なるが、本実施例の適用によシこれ會防止できる。 なお、上述の説明におりては、仮想処理手段■■の数を
8個と仮定し友がこれは何も8個に限るものではない、
またスタックアドレスレジスタ5−〇〜5−Mおよび比
較回路6−0〜6−Mの個数は、最繁時にも待行列がオ
ーバーフローしないように設けるべきで、VPMの数に
合せる必要はない0本実施例においては不必要な登録が
なされないのでそれだけこの個数を節約できる可能性が
ある。 を次、本実施例の方式はfx3図に示すように、各各が
キャッジ、Cを供用する複数の仮想処理中RVPMO−
q−VPMN−qt−4つ処理手段PMqが複数個存在
し、これら複数の処理手段PMq(q=Q〜Q)がメモ
リスイッチM8/Wt−介して主メモリMMt−共通に
使用するシステムの場合には、主メモリMMに対するア
クセス要求が一層繁忙になる九め、主メモリ、7MMか
らの無駄なブロックリードを防止する本実施例の適用が
一層顕著な効果をも念らすことは明らかである。 以上述べたように、本発明を用いると仮想処理手段から
の不必要な主メモリ読出し要求発行が抑止されるために
演算処理装置の性能向上を達成できる。
ッジ、メモリ2の中にまくて直ちに読み出せない場合に
は、実際の命令の終了はそれが読み出されて処理ができ
るまで遅れることになる)が、この−処理周期(8T)
の中の定まり九マシンサイクル(第1図の例では第2番
目のマシンサイクル)でオペランドを読み出すためのメ
モリアクセスを行なう、このために各VPMはアドレス
バス100t−介してキャシュメモリ2に読み出すべも
オペランドアドレスを指定する。今、6るVPM−kが
メモ1】アクセスを実行し、読出し指定したアドレスの
オペランドがキャッジ、メモリ2の中に存在すればその
オペランドは直ちにメヤッシ、メモリ2から読み出され
、出力ライン200t−介して要求したVPM−にの使
用に供せられる。 もし、VPM−kが指定し次アドレスのオペランドがキ
ャッジ、メモリ2の中に存在しない場合には、キャッジ
&セスヒツトを起しキャッジ、ミスヒツト出力5ooe
発生する。 従来方式においては、キャtシJLtスヒット管起した
場合には、直ちにこれが主メモリ読出し要求発行フリッ
プフロップ10tセツトし主メxe IJ(図示せず)
に対する読出し要求発行を行なうようになっている。 但し主メモリに対する読出し要求発行とは、以下のよう
な処理を行なうことの意味である。すなわち、主メモリ
が現在アクセス中でなく(ビジー状態でなく)、また、
待行列スタック中にメモ1Jアクセスの実行を待ってい
る他のアクセス要求がない場合には、直ちにこのアクセ
ス要求が主メモリに対し読み出すべきブロックアドレス
を転送指定し、ブロック1)−ドの処理を開始する。t
fcもし、すでに待行列スタック中に登録されてその実
行を待っている他の要求があるか、または主メモリがア
クセス中(ビジー状態)である場合には、この要求は待
行列スタックに登録され、自分の順番がまわってき九と
き゛に、この登録保持された読み出すべきブロックアド
レスを主メモ+3.に転送指定してプロ、クリートの処
理を開始する。いずれにしても一度読み出し要求発行が
なされるとその要求に対するブロックリードが必らず実
行されることになる。 さて、このように、従来方式ではあるVPMからのメモ
リアクセス要求がキャッジ、ミスヒツトを起した場合に
は、必らず主メモリに対する読出し要求発行を行なりで
いるのに対し、本実施例の方式では、この読出し要求の
発行は以下に述べるような条件金満す場合には抑止され
る。 まず、前記ブロックアドレスレジスタ3にha在主メモ
リ(図示せず)からキャッジ、メモリ2に対して転送す
べきデータが含まれるブロックアドレスが登録されてお
〕、かつ、現在この転送が実行中の場合には、ブロック
ロード中を指示する信号がキャッジ、メモリ2からライ
ン400t−介してブロックアドレス比較回路4のイネ
ーブル端子に導かれこれをイネーブルして−る。この比
較回路4の一方の入力には前記アドレスバス100を介
してこのVPM−kが読み出し要求をしているオペラン
ドのプロ、クアドレス(このオペランドのアドレスを含
むブロックのアドレス)カ供給され、比較回路4のもう
一方の入力には前記プロ、クアドレスレジスタ3からの
出力が供給されているので、もし、あるVPMが読出し
を要求したオペランドを含むプロ、クデータが、現在主
メモリからキャッジ、メモリ2に転送中である場合には
、比較回路4の出力は′″1″となシ、論理和回路7に
おいて他の条件との論理和がとられ、禁止ゲート9およ
び禁止ゲート8に供給されて、このVPM−kからの読
出し要求が発行されるのを抑止する。 さて、次の抑止条件は下記のようなものである。 VPM−kから読出し要求し九オペランドを含むプロ、
クアドレスは、各スタックアドレス比較回路6−0〜6
−Mの一方の入力として供給されておシ、これら比較回
路6−θ〜5−Mのもう一方の入力には対応するスタッ
クアドレスレジスタ5−0〜5−Mの出力が供給されて
いて、iた各比較回路6−0〜6−Mのイネーブル端子
には対応するスタックアドレスレジスタ5−0〜5−M
の中の有効ビット(このレジスタに格納されているデー
タの有効性を示すビット。もしこのビットが論理レベル
”1”ならばこの格納されているデータは有効である)
の出力500−0〜500−Mが接続されている。この
各スタックアドレスレジスタ5−θ〜5−Mには主メモ
リからプロ、りIJ−ドを行うべきブロックアドレスが
格納されておシ、これらのレジスタが本実施例の前記待
行列スタ、りを構成している。 従って、VPM−kが読出しを要求し九オペランドを含
むブロックアドレスが、もしこのスタックアドレスレジ
スタ5−θ〜5−Mの中に登録されているブロックアド
レスの一つと一致し、かつその有効ビットが@1″の場
合には一輪理和回路7の出力は11”となシ、これは禁
止ゲート9および80通過を禁止し1このVPM−kか
らの読出し要求が発行されるのを抑止する。 VPM−kからのメモリアクセス要求がキャッジ&ミス
ヒツトを起したと1に、上述の二つのいずれの条件も満
足し嫌い場合、つtJ)、VPM−kが続出し要求tし
でいるオペランド0を含むプロ、クアドレスが現在主メ
モリからキャシュメモリ2に対して転送中でなく、かつ
、このブロックアドレスが待行列スタック中に登録され
ていない場合にかぎシ、論理和回路7の出力は@0”と
な夛、コAL、てキャ、シ&電スヒット出力300は禁
止ケー)9t−通過して主メモリ読出し要求発行71、
プフロ、プ10をセ、トシ、主メモリに対する読出し要
求発行上行なう。 こうしてツリツブフロップ10がセットされると、前述
した意味に従う読出し要求発行が行なわれる。すなわち
、もし現在主メモリがビジー状態でなく、かつ、待行列
スタックであるアドレスレジスタ5−0〜5−Mの中に
現在登録されているブロックアドレスがない(アドレス
レジスタ5−〇〜5−M中のすべての有効ビットがOで
ある)場合には直ちに主メモリに対して、出力ライン8
00を介してこのブロックアドレスを転送し、ブロック
リードの処理を開始する。tft、、もし待行列スタ、
り中に現在登録されているアドレスがあるか、または主
メモリがビジー状態の場合にはへこのVPM−にの要求
ブロックアドレスはスタックアドレスレジスタ5−θ〜
5−Mの中の現在有効登録されているものの次の順番の
位置に格納され、そのしジスタの有効ビットが1にセッ
トされる。こうして待行列スタックであるスタックアド
レスレジスタ5−0〜5−M中に有効登録され九ブロッ
クアドレスは、自分の順番がまわりてくると自動的に主
メモリに対してこのブロックアドレスを転送しtaプロ
、クアドレスレジスタ3にこのブロックアドレスを格納
しブロックリードの処理を開始する。このブロックリー
ドの開始によってこのアドレスレジスタの有効ビットは
@O”にリセットされ、アドレススタ、り5−θ〜5−
Mの中の次に格納された要求が待行列の先頭に立つこと
になる。 以上に説明したように、本実施例によると、あるVPM
からのアクセス要求がキヤ、シ、ミスヒ、トラ起しても
、必要な場合以外は主メモリに対して読出し要求を発行
しない、主メモリからのプロ、クリートは、キャッジ、
メモリ2からの読出しに比較して遥かに長い時間を必要
とする念め、不必要なプロ、クリートが重なるとそれだ
け処理時間を長くして演算装置の性能低下を来すことに
なるが、本実施例の適用によシこれ會防止できる。 なお、上述の説明におりては、仮想処理手段■■の数を
8個と仮定し友がこれは何も8個に限るものではない、
またスタックアドレスレジスタ5−〇〜5−Mおよび比
較回路6−0〜6−Mの個数は、最繁時にも待行列がオ
ーバーフローしないように設けるべきで、VPMの数に
合せる必要はない0本実施例においては不必要な登録が
なされないのでそれだけこの個数を節約できる可能性が
ある。 を次、本実施例の方式はfx3図に示すように、各各が
キャッジ、Cを供用する複数の仮想処理中RVPMO−
q−VPMN−qt−4つ処理手段PMqが複数個存在
し、これら複数の処理手段PMq(q=Q〜Q)がメモ
リスイッチM8/Wt−介して主メモリMMt−共通に
使用するシステムの場合には、主メモリMMに対するア
クセス要求が一層繁忙になる九め、主メモリ、7MMか
らの無駄なブロックリードを防止する本実施例の適用が
一層顕著な効果をも念らすことは明らかである。 以上述べたように、本発明を用いると仮想処理手段から
の不必要な主メモリ読出し要求発行が抑止されるために
演算処理装置の性能向上を達成できる。
第1図は仮想処理手段の説明をするためのタイムチャー
ト、第2図は本発明の一実施例を示すプロ、り図および
第3図は前記実施例の一応用例を示すブロック図である
。 図において、 1−0〜1−N・・・・・・仮想処理手段(VPMO〜
VPMN)、2・・・・・・キャッジ、メモリ、3・・
・・・・ブロックアドレスレジスタ、4・・・・・・ブ
ロックアドレス比較回路%5−0〜5−M・・・・・・
スタックアドレスレジスタ、6−0〜6−M・・川・ス
タックアドレス比較回路、7・・・・・・論理和回路、
8,9・・川・禁止ゲート、10・・・・・・主メモリ
読出し要求発行フリ、プ70、プ。 T: マシンサイクノν 0:メ己すアクtス 第1凶
ト、第2図は本発明の一実施例を示すプロ、り図および
第3図は前記実施例の一応用例を示すブロック図である
。 図において、 1−0〜1−N・・・・・・仮想処理手段(VPMO〜
VPMN)、2・・・・・・キャッジ、メモリ、3・・
・・・・ブロックアドレスレジスタ、4・・・・・・ブ
ロックアドレス比較回路%5−0〜5−M・・・・・・
スタックアドレスレジスタ、6−0〜6−M・・川・ス
タックアドレス比較回路、7・・・・・・論理和回路、
8,9・・川・禁止ゲート、10・・・・・・主メモリ
読出し要求発行フリ、プ70、プ。 T: マシンサイクノν 0:メ己すアクtス 第1凶
Claims (1)
- 【特許請求の範囲】 主メモリとキャッジ、メモリとを共用して複数の仮想処
理手段がパイプライン動作を行なうように制御する演算
処理システムにおいて、前記主メモリから前記キャッジ
、メモリへのデータ転送が行なわれている間はその転送
データのメモリアドレスを保持するアドレス保持手段と
、前記仮想処理手段からの前記主メモリへのメモリアク
セスが待たされている場合にこの待たされている要求メ
モリアドレスを保持する複数のスタックアドレスを有す
るアドレススタ、り手段と、前記仮想処理手段の一つか
らの前記主メモリへの新たなアクセス要求に応答してこ
の要求メモリアドレスと前記アドレス保持手段および前
記アドレススタック手段に保持されている内容とを比較
する複数の比較手段と、 前記比較手段の一致出力の論理和によシ前記仮想処理手
段からの新たなメモリアクセスと同一のメモリアドレス
をもつアクセスがすでに実行中であるかまたは待九され
ていることを検出したときにはこの新らしい主メモリに
対するアクセス要求を取消すように制御する制御手段と
を有することを特徴とするメモリアクセス方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP56194978A JPS5897185A (ja) | 1981-12-03 | 1981-12-03 | メモリアクセス方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP56194978A JPS5897185A (ja) | 1981-12-03 | 1981-12-03 | メモリアクセス方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS5897185A true JPS5897185A (ja) | 1983-06-09 |
Family
ID=16333502
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP56194978A Pending JPS5897185A (ja) | 1981-12-03 | 1981-12-03 | メモリアクセス方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS5897185A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7644234B2 (en) | 2004-05-31 | 2010-01-05 | Sony Computer Entertainment Inc. | Information processing apparatus with a cache memory and information processing method |
-
1981
- 1981-12-03 JP JP56194978A patent/JPS5897185A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7644234B2 (en) | 2004-05-31 | 2010-01-05 | Sony Computer Entertainment Inc. | Information processing apparatus with a cache memory and information processing method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0242569A (ja) | ベクター処理システムに用いる文脈スイッチング方法及び装置 | |
JPH08278886A (ja) | データ処理システムでの拡張システム管理操作のための方法およびシステム | |
JPS59180767A (ja) | 直列化装置 | |
WO1996027833A1 (fr) | Unite de traitement informatique | |
JPH0410102B2 (ja) | ||
US5287483A (en) | Prefetched operand storing system for an information processor | |
JPH0512751B2 (ja) | ||
JPS5897185A (ja) | メモリアクセス方式 | |
EP0177712B1 (en) | Masked data fetch and modifying device | |
JP2783285B2 (ja) | 情報処理装置 | |
JP3375505B2 (ja) | 同期制御方法および主記憶共有型並列プロセッサ | |
JPH0769825B2 (ja) | 並列処理装置 | |
JPS6221130B2 (ja) | ||
JPS6235694B2 (ja) | ||
JPS6238743B2 (ja) | ||
JPH0364903B2 (ja) | ||
JPS6049347B2 (ja) | メモリ・アクセス方式 | |
JPH0519172B2 (ja) | ||
JPH02151930A (ja) | ストアバツフア管理方式 | |
JPH04107634A (ja) | メモリデータバイパス制御方式 | |
JPS61194566A (ja) | ベクトルデ−タ参照制御方式 | |
JPH02294761A (ja) | マルチプロセッサシステムの逐次化処理方式 | |
JPS63231627A (ja) | 先行制御方式 | |
JPS60123944A (ja) | 情報処理装置におけるバツフアメモリ制御方式 | |
JPH0578052B2 (ja) |