JPH04112328A - ストア命令の縮退制御方式 - Google Patents

ストア命令の縮退制御方式

Info

Publication number
JPH04112328A
JPH04112328A JP2232783A JP23278390A JPH04112328A JP H04112328 A JPH04112328 A JP H04112328A JP 2232783 A JP2232783 A JP 2232783A JP 23278390 A JP23278390 A JP 23278390A JP H04112328 A JPH04112328 A JP H04112328A
Authority
JP
Japan
Prior art keywords
store
instruction
address
subsequent
data
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
Application number
JP2232783A
Other languages
English (en)
Inventor
Fumihiko Miyazawa
文彦 宮沢
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2232783A priority Critical patent/JPH04112328A/ja
Publication of JPH04112328A publication Critical patent/JPH04112328A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は命令の高速処理方式に関し、特にパイプライン
処理方式の情報処理装置におけるストア命令の縮退制御
方式に関する。
〔従来の技術〕
従来、この種のパイプライン処理方式の情報処理装置で
は、ストアバッファ内に主記憶装置に対して未掃出しの
先行するストア命令(以下、先行ストア命令という)が
存在するときに先行ストア命令と同一のストアアドレス
に対してストアしようとする後続するストア命令(以下
、後続ストア命令という)があった場合でも、後続スト
ア命令を先行ストア命令とは別にストアバッファに登録
し、主記憶装置に対しても先行ストア命令と後続ストア
命令とを別々に掃出し処理していた。
〔発明が解決しようとする課題:。
上述した従来のパイプライン処理方式の情報処理装置で
は、ストアバ、ファ内に王記憶装置に対して未掃出しの
先行ストア命令が存在するときに先行ストア命令と同一
のストアアドレスに対してストアしようとする後続スト
ア命令があった場合でも、後続ストア命令を先行ストア
命令とは別にストアバッファに登録し、王記憶装置に対
して先行ストア命令と後続ストア命令とを別々に掃出し
処理していたので、ストアバッファが同一のストアアド
レスに対する2つのストア命令によって無駄に占有され
るとともに、主記憶装置に対するストア命令の掃出し処
理にも時間がかかり、処理の高速化が図れないという欠
点がある。
本発明の目的は、上述の点に鑑み、ストアバッファ内に
主記憶装置に対して未掃出しの先行ストア命令が存在す
るときに先行ストア命令と同一のストアアドレスに対す
る後続ストア命令があった場合、先行ストア命令と後続
ストア命令とをマージして1つのストア命令としてスト
アバッファに登録し、王記憶装置に対して1回の掃出し
処理を行えばすむようにしたストア命令の縮退制御方式
を提供することにある。
〔課題を解決するための手段〕
本発明のストア命令の縮退制御方式は、ストアバッファ
を備えストア命令の実行をサポートする演算処理装置お
よび主記憶装置を有するパイプライン処理方式の情報処
理装置において、ストアバ7フア内に存在する上記to
装置に対して未掃出しの先行ストア命令と同一のストア
アドレスへの後続ストア命令を受け付けたことを検出し
後続ストア命令のストアアドレスをストアアドレスバッ
ファに登録せずに先行ストア命令のワード位置のストア
縮退指示フラグをセットするストアアドレス一致検出手
段と、前記ストア縮退指示フラグがセットされている状
態で後続ストア命令のストアデータがストアデータバッ
ファに送られてきたときに後続ストア命令のストアマス
ク情報がオンであるハイド単位のストアデータを先行ス
トア命令の同一ハイド単位のストアデータに対してマー
ジして後続ストア命令のストアデータをストアデータバ
ッファに登録するストアデータマージ手段とを存する。
〔作用〕
本発明のストア命令の縮退制御方式では、ストアアドレ
ス一致検出手段がストアアドレスバッファ内の各ワード
位置の先行ストア命令のストアアドレスと次タイミング
においてストアアドレスバッファに登録しようとする後
続ストア命令のストアアドレスとを比較して一致するな
らば各ワード′位置対応に存在するストア縮退指示フラ
グをオンにし、ストアデータマージ手段がストアデータ
がストアデータバッファに登録されるタイミングでスト
ア縮退指示フラグがオンである先行ストア命令のワード
位置のストアデータに対して後続ストア命令のストアマ
スク情報がオンであるハイド位置のストアデータを先行
ストア命令の同一ハイド位置のストアデータに対してマ
ージする。
〔実施例〕
次に、本発明について図面を参照して詳細に説明する。
第1図は、本発明の一実施例に係るストア命令の縮退制
御方式が適用されたストアバッファの構成を示す回路ブ
ロック図である。このストアバッファは、ストアアドレ
ス登録ポインタ (WAO)1と、ストア掃出しポイン
タ(RA)2と、ストアデータ登録ポインタ(WAI)
3と、3個のデコーダ4〜6と、(N (正整数)+1
)個のストアアドレスバッファ (SAO−3AN)7
〜9と、(N+1)対のストア縮退指示フラグIO〜1
2と、(N+1)個のストアデータバッファ (SDO
〜5DN)13〜15と、(N+1)個のストアマスク
バッファ (SMO〜SMN)16〜18と、3個のス
トアバッファ掃出しセレクタ19〜21と、ノア回路2
2と、(N+1)個のストアアドレス一致検出回路23
〜25と、(N+1)個のアンド回路26〜28と、ア
ンド回829と、ノア回路30と、(N+1)個のセレ
クタ31〜33と、(N+1)個のオア回路34〜36
と、アンド回路37とから構成される装置 ストアアドレス登録ポインタ(WAO)1は、ストアア
ドレス登録指示信号に基づいてアンド回路29から出力
されるライトイ第一ブル信号(WE)によってサイクリ
ックに1つずつカウントアツプされる回路で、ストアア
ドレスを登録するストアアドレスバッファ (SAO〜
5AN)7〜9のワード位置を表し、デコーダ4および
アンド回路26〜28を介してストアアドレスバッファ
 (SAO〜5AN)7〜9に接続されている。
ストア掃出しポインタ(RA)2は、ストアバッファ掃
出し指示信号をライトイネーブル信号(WE)としてサ
イクリックに1つずつカウントアツプされる回路で、デ
コーダ5を介してストアバッファ掃出しセレクタ19〜
21に接続されている。
ストアデータ登録ポインタ(WAI)3は、ストアデー
タ登録指示信号に基づいてアンド回路37から出力され
るライトイネーブル信号(WE)によってサイクリック
に1つずつカウントアンプされる回路で、デコーダ6を
介してセレクタ31〜33の一方の入力に接続されてい
る。
ストアアドレスバッファ (SAO〜5AN)7〜9は
、ストアアドレスをワード単位に保持するバッファ群で
ある。
ストア縮退指示フラグ10〜】2は、ストア命令の縮退
処理を行うか否かをワード単位に表すフラグ群であり、
“1” (オン)のときにストア命令の縮退処理を行う
ことを示す。
ストアゾ〜タハノファ (SDO〜5DN)13〜15
は、ストアデータをワード単位に保持するバッファ群で
ある。
ストアマスクバッファ(SMO−3MN)16〜18は
、ストアマスク情報をワード単位に保持するバッファ群
である。
ストアバッファ掃出しセレクタ19〜21は、ストアア
ドレスバッファ (SAO〜5AN)7〜9のストアア
ドレス、ストアデータバッファ (SDO〜5DN)1
3〜15のストアデータおよびストアマスクバッファ 
(SMO〜SMN)16〜18のストアマスク情報をそ
れぞれ選択して主記憶装置(図示せず)に掃き出させる
セレクタである。
ノア回路22は、各ワード位置のストア縮退指示フラグ
10〜12の論理和の否定をとる回路で、ストア命令の
縮退処理が実行されるタイミングで出力が“0”となっ
てストアデータ登録指示信号を無効化し、ストアデータ
登録ポインタ(WA 1)3のカウントアツプを阻止す
る。
ストアアドレス−数構出回路23〜25は、ストアアド
レスバッファ (SAO〜5AN)7〜9のいずれかに
格納されている先行ストア命令のストアアドレスと送ら
れてきた後続ストア命令のストアアドレスとが一致した
ときに出力を“1″にするコンパレータであり、ストア
縮退指示フラグ10〜12にそれぞれ接続されていると
ともに、ノア回路30の入力にそれぞれ接続されている
アンド回路26〜28は、ストアアドレスバッファ (
SAO−3AN)7〜9へのライトイネーブル信号(W
E)を作成する回路で、ストアアドレス登録ポインタ 
(WAO)1が示すワード位置のストアアドレスバッフ
ァ (SAO〜5AN)7〜9で、ストアアドレス登録
指示信号が“工”であり、かつノア回1W30の出力が
“1”でス、ドア命令の縮退処理が不要ならば、ライト
イ名−プル条件が成立する。
アンド回路29は、ストアアドレス登録指示ポインタ(
WAO)1のライトイネーブル信号(WE)を作成する
回路で、ストアアドレス登録指示信号が“1″であり、
かつノア回路30の出力が“I”でストア命令の縮退処
理が不要ならば、ライトイネーブル条件が成立する。
ノア回路30は、ストアアドレス−数構出回路23〜2
5の出力の論理和の否定を示す回路で、出力が“0゛で
ストア命令の縮退処理を行うことを示し、アンド回路2
6〜29によりストアデータ登録指示信号を無効化して
後続ストア命令のストアアドレスのストアアドレスハソ
フ、(SAO〜5AN)7〜9への登録を阻止する。
セレクタ31〜33は、通常のストアデータの登録時に
はストアデータ登録ポインタ(WAI)3の出力をスト
アデータハソファ (SDO〜5DN)13〜15およ
びストアマスクバッファ (SMO〜SMN)16〜1
8のライトイネーブル信号(WE)として選択し、スト
ア縮退指示フラグ10〜12が“1”である場合には、
演算部からのストアマスク情報をストアデークパノファ
 (SDO〜5DN)13〜15およびストアマスクバ
ッファ (SMO〜SMN)16〜18のライトイネー
ブル信号(WE)として選択する。
オア回路34〜36は、後続ストア命令のストアデータ
のハイド単位の有効性を示すストアマスク情報をオンで
あるハイド単位に先行ストア命令のストアマスク情報に
マージする回路である。
アンド回路37は、ストアデータ登録指示ポインタ(W
AI)3のライトイネーブル信号(WE)を作成する回
路で、ストアデータ登録指示信号が“1”であり、かつ
ノア回路22の出力が′1”でストア命令の縮退処理が
不要ならば、ライトイネーブル条件が成立する。
第2図は、第1図に示したストアバッファにおけるスト
ア命令のパイプラ4ン処理を示すタイムチャートである
第3図は、パイプライン処理ステージの一例を示す図で
あり、パイプライン処理は、命令フェッチ(IF)ステ
ージ、オペランドアドレス生成(AC)ステージ、アド
レス変換(AT)ステージキヤノンユアクセス(CA)
ステージ、演算(EX)ステージおよび格納(S T)
ステージの6ステージに分割されている。IFステージ
は命令を取り出す処理、ACステージはオペランドアド
レスを生成する処理、ATステージは論理アドレスを物
理アドレスに変換する処理、CAステージはオペランド
を読み出す処理、EXステージは読み出されたオペラン
ドを演算する処理、そしてSTステージは演算結果を格
納する処理をそれぞれ行つO 次に、このように構成された本実施例のストア命令の縮
退制御方式の動作について説明する。なお、ここでは、
ストアデータは8ハイドのデータからなり、ストアデー
タは1バイト単位に書込みおよび読出しのアクセスが可
能とし、1ハイド華位にストアマスク情報を持つものと
する。
サイクルT1において、先行ストア命令STAがIFス
テージに受け付けられると、サイクルT4において、先
行ストア命令STAに関するストアアドレスはストアア
ドレス登録ポインタ(WAO)1で示されるストアアド
レスバッファ (SAO−5AN)7〜9のワード位置
に登録される。
サイクルT5において、EXステージで先行ストア命令
STAに関するストアデータおよびストアマスク情報は
演算される。
サイクルT6において、演算結果後のストアデータおよ
びストアマスク情報はストアデータ登録ポインタ(WA
I)3によって示されるストアデータハフファ (SD
O〜5DN)13〜15およびストアマスクバッファ(
SMO〜SMN)16〜18のワード位置にそれぞれ登
録される。
一方、サイクルT2において、先行ストア命令STAと
同一のストアアドレスに対する後続ストア命令STA’
がIFステージに受け付けられると、サイクルT4にお
いて、ストアアドレス−数構出回路23〜25は、スト
アアドレスバッファ(SAO〜5AN)7〜9に登録さ
れているストアアドレスと、このタイミングでストアア
ドレスバッファ(SAO−3AN)7〜9に登録されよ
うとしているストア命令STA’ のストアアドレスと
の一致を検出する。
このとき、すでに先行ストア命令STAのストアアドレ
スがストアアドレス登録ポインタ(WAO)1で示され
るストアアドレスバッファ (SAO〜5AN)7〜9
のいずれかに登録されているので、ストアアドレス−数
構出回路23〜25のいずれかが同一のストアアドレス
に対する後続ストア命令STA’ のストアアドレスと
の一致を検出し、−数構出結果がストア縮退指示フラグ
10〜12のいずれかに登録される。また、このとき、
先行ストア命令STAと後続ストア命令STAとは同一
のストアアドレスを示しているので、ストアアドレス−
数構出回路23〜25のいずれかの出力が“1”、ノア
回路30の出力が“O”となり、テント回路26〜28
の出力、すなわちストアアドレスバッファ (SAO〜
5AN)7〜9のライトイネーブル信号(WE)が“0
”となって、後続ストア命令STA’ のストアアドレ
スのストアアドレスバッファ (SAO〜5AN)7〜
9への登録は行われない。さらに、ノア回路30の出力
が“0”となることにより、アンド回路29の出力、す
なわちストアアドレス登録ポインタ(WAO)1のライ
トイ2−プル信号(WE>も“0”となって、ストアア
ドレス登録ポインタ (WAO)1のカウントアツプは
行われない。
サイクルT6において、EXステージで後続ストア命令
STA”のストアデータは演算部において処理される。
サイクルT7において、後続ストア命令STA’のスト
アデータおよびストアマスク情報は、ストアデータバッ
ファ (SDO−3DN)13〜15およびストアマス
クハソファ (SMO〜SMN)16〜18への登録タ
イミングとなる。このとき、登録されるストアデータバ
ッファ (SDO−3DN)13〜15:F;よびスト
アマスクハソファ (SMO〜SMN)15〜18のワ
ード位置は、セレクタ31〜33によりストア縮退指示
フラグ10〜12がオンとなっている先行ストア命令の
ストアデータおよびストアマスク情報が登録されている
ワード位置に対して行われ、ストアデータバッファ (
SDO〜5DN)13〜15に対しては8ハイドの後続
ストア命令STA”のストアデータのうちの対応するス
トアマスク情報が“1”であるハイド単位のストアデー
タがストア命令STA”のストアデータとして書き込ま
れ、ストアマスクハソファ (SMO−3MN)16〜
18に対してはオア回路34〜36を介して先行ストア
命令STAのハイド単位のストアマスク情報と後続スト
ア命令STA“のハイド単位のストアマスク情報との論
理和の値が書き込まれる。また、ノア回路22の出力が
“0”となっているので、ストアデータ登録指示信号が
無効化され、ストアデータ登録ポインタ(WAI)3の
カウントアンプは行われない。
このようにして、サイクルT7において、主記憶装置の
同一のストアアドレスに対する先行ストア命令STAお
よび後続ストア命令STA’ のマージが行われる。
サイクルT8において、ストアバッファ掃出し指示信号
がストア掃出しポインタ(RA)2にライトイネーブル
信号(WE)として与えられ、ストア掃出しポインタ(
RA)2の1つインクリメントされた値がデコーダ5を
介してデコードされてストアバッファ掃出しセレクタ1
9〜21に与えられ、ストアバッファ掃出しセレクタ1
9〜21によりストアアドレスバッファ (SAO〜5
AN)7〜9.ストアデータバ777 (SDO−3D
N)13〜15およびストアマスクハソファ(SMO−
3MN)16〜18の該当するワード位置に登録されて
いるストアアドレス5ストアデータおよびストアマスク
情報がマージされたストア命令STA”として主記憶装
置に掃き出される。
以上により、従来ならばストアバッファに2命令分とし
て登録されていた先行ストア命令STAおよび後続スト
ア命令STA“が1つのマージされたストア命令STA
”としてのみストアバッファに登録されるだけになり、
またストア命令の掃出しのために時間を要する主記憶装
置へのアクセス回数も1回で済むようになるので、処理
の高速化が図られる。
〔発明の効果〕
以上説明したように本発明は、ストアバッファ内に主記
憶装置に対して未掃出しの先行ストア命令が存在すると
きに後続ストア命令が先行ストア命令と同一のストアア
ドレスに対するストア命令であるならば先行ストア命令
と後続ストア命令とをマージしたストア命令をストアバ
ッファに登録することにより、従来ならば2命令に分け
てストアバッファに登録し主記憶装置に対しても2回の
掃出し処理を必要とした2つのストア命令の処理をスト
アバッファに1命令分として登録し、1回の掃出し処理
で主記憶装置に対して掃き出すことが可能になり、処理
の高速化を図ることができるという効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例に係るストア命令の縮退制御
方式が適用されたストアバッファの構成を示す回路プロ
、り閏、 第2図は第1図に示したストアバッファにおけるストア
命令のパイプライン処理を示すタイムチャート、 第3図はパイプライン処理ステージの一例を示す図であ
る。 図において、 1・・・ストアアドレス登録ポインタ (WA O)、 2・・・ストア掃出しポインタ(RA)、3・・・スト
アテーク登録ポインタ (WAI)、4〜6・デコーダ
、 7〜9・ストアアドレスハソファ (SAI〜5AN)
、 10〜12・ストア縮退指示フラグ、 13〜15・ストアデータハソファ(SDI〜5DN)
、 16〜18・ストアマスクハ、ファ(SMI〜SMN)
、 9〜2トスドアバッファ掃出しセレクタ、2・・ノア回
路、 3〜25・ストアアドレス−数構出回路、6〜28・ア
ンド回路、 9・・アンド回路、 0・・ノア回路、 1〜33・セレクタ、 4〜36・オア回路、 7・・・アンド回路である。

Claims (1)

  1. 【特許請求の範囲】 ストアバッファを備えストア命令の実行をサポートする
    演算処理装置および主記憶装置を有するパイプライン処
    理方式の情報処理装置において、ストアバッファ内に存
    在する主記憶装置に対して未掃出しの先行ストア命令と
    同一のストアアドレスへの後続ストア命令を受け付けた
    ことを検出し後続ストア命令のストアアドレスをストア
    アドレスバッファに登録せずに先行ストア命令のワード
    位置のストア縮退指示フラグをセットするストアアドレ
    ス一致検出手段と、 前記ストア縮退指示フラグがセットされている状態で後
    続ストア命令のストアデータがストアデータバッファに
    送られてきたときに後続ストア命令のストアマスク情報
    がオンであるバイト単位のストアデータを先行ストア命
    令の同一バイト単位のストアデータに対してマージして
    後続ストア命令のストアデータをストアデータバッファ
    に登録するストアデータマージ手段と を有することを特徴とするストア命令の縮退制御方式。
JP2232783A 1990-09-03 1990-09-03 ストア命令の縮退制御方式 Pending JPH04112328A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2232783A JPH04112328A (ja) 1990-09-03 1990-09-03 ストア命令の縮退制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2232783A JPH04112328A (ja) 1990-09-03 1990-09-03 ストア命令の縮退制御方式

Publications (1)

Publication Number Publication Date
JPH04112328A true JPH04112328A (ja) 1992-04-14

Family

ID=16944674

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2232783A Pending JPH04112328A (ja) 1990-09-03 1990-09-03 ストア命令の縮退制御方式

Country Status (1)

Country Link
JP (1) JPH04112328A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06103151A (ja) * 1992-06-26 1994-04-15 Internatl Business Mach Corp <Ibm> パーソナルコンピュータ
US7155580B2 (en) 2002-07-25 2006-12-26 Nec Corporation Information processing apparatus and method of controlling memory thereof
JP2012203544A (ja) * 2011-03-24 2012-10-22 Nec Corp ベクトル処理装置、ベクトル処理方法、及び、プログラム
US8677102B2 (en) 2009-05-20 2014-03-18 Nec Corporation Instruction fusion calculation device and method for instruction fusion calculation

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06103151A (ja) * 1992-06-26 1994-04-15 Internatl Business Mach Corp <Ibm> パーソナルコンピュータ
US7155580B2 (en) 2002-07-25 2006-12-26 Nec Corporation Information processing apparatus and method of controlling memory thereof
US8677102B2 (en) 2009-05-20 2014-03-18 Nec Corporation Instruction fusion calculation device and method for instruction fusion calculation
JP2012203544A (ja) * 2011-03-24 2012-10-22 Nec Corp ベクトル処理装置、ベクトル処理方法、及び、プログラム

Similar Documents

Publication Publication Date Title
US6173393B1 (en) System for writing select non-contiguous bytes of data with single instruction having operand identifying byte mask corresponding to respective blocks of packed data
US6052769A (en) Method and apparatus for moving select non-contiguous bytes of packed data in a single instruction
US9330018B2 (en) Suppressing virtual address translation utilizing bits and instruction tagging
US20060248277A1 (en) System, method, and apparatus for least recently used determination for caches
KR20160031503A (ko) 마이크로프로세서에서의 선택적 리네이밍을 위한 방법 및 장치
US8977821B2 (en) Parallel processing of multiple block coherence operations
US6460132B1 (en) Massively parallel instruction predecoding
US7376820B2 (en) Information processing unit, and exception processing method for specific application-purpose operation instruction
US11010631B2 (en) Efficient SIMD implementation of 3x3 non maxima suppression of sparse 2D image feature points
US20230359385A1 (en) Quick clearing of registers
JPH04112328A (ja) ストア命令の縮退制御方式
US6289428B1 (en) Superscaler processor and method for efficiently recovering from misaligned data addresses
US5421026A (en) Data processor for processing instruction after conditional branch instruction at high speed
JP3082944B2 (ja) パイプライン処理装置
US11586444B2 (en) Processor and pipeline processing method for processing multiple threads including wait instruction processing
JPH0298754A (ja) 主記憶制御方式
JP2762798B2 (ja) 命令キャッシュを有するパイプライン構成の情報処理装置
JPH0248733A (ja) 情報処理装置
JP2762797B2 (ja) 命令キャッシュを有するパイプライン構成の情報処理装置
JPS61175733A (ja) 分岐予測制御方式
JP2856703B2 (ja) プロセッサ
JPH0439099B2 (ja)
JPH01147723A (ja) 情報処理装置のパイプライン処理方式
JPH07219771A (ja) 命令プロセッサ
JPH04282726A (ja) 可変長命令解読方式