JPH04160654A - 主記憶装置書込方式 - Google Patents

主記憶装置書込方式

Info

Publication number
JPH04160654A
JPH04160654A JP2285943A JP28594390A JPH04160654A JP H04160654 A JPH04160654 A JP H04160654A JP 2285943 A JP2285943 A JP 2285943A JP 28594390 A JP28594390 A JP 28594390A JP H04160654 A JPH04160654 A JP H04160654A
Authority
JP
Japan
Prior art keywords
data
updated
cache
store
storage device
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
JP2285943A
Other languages
English (en)
Inventor
Hiromi Kodaira
小平 弘美
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2285943A priority Critical patent/JPH04160654A/ja
Publication of JPH04160654A publication Critical patent/JPH04160654A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 〔概 要〕 主記憶装置を複数のプロセッサで共有するマルチプロセ
ッサシステムなどに特に有効な、主記憶装置書込方式に
関し、 主記憶装置への書込みのためにプロセッサがこの主記憶
装置にアクセスする時間をハードウェアを増大させるこ
となく短縮することを目的とし、パーシャル書込要求が
あったとき、このパーシャル書込みによって更新される
べきデータがキャッシュに存在するときには、このキャ
ッシュから読出した上記更新されるべきデータとパーシ
ャル書込を行うデータとをマージしてから、あるいは、
このキャッシュの更新されるべきデータにパーシャル書
込を行うデータをバイトを指定して書込むことによって
データを更新してから、主記憶装置にフルストア書込み
を行うように構成した。
〔産業上の利用分野〕
主記憶装置を複数のプロセッサで共有するマルチプロセ
ッサシステムなどに特に有効な、主記憶装置書込方式に
関する。
〔従来の技術〕
コンピュータシステムはその処理能力を向上するために
複数のプロセッサを用いた多重化が図られてきたが、今
度はこれら複数のプロセッサによって共有される主記憶
装置へのアクセスが競合するために、この主記憶装置の
処理能力が問題になってきた。
第2図は、上記のような主記憶装置を共有する複数のプ
ロセッサを用いたマルチプロセッサシステムの一例の構
成を示すブロック図であって、それぞれがキャッシュを
内蔵する4つのプロセッサP0〜P3が主記憶装置MM
を共有している。
この主記憶装置MMは、入力端アクセスコントローラM
i、記憶アレ一部Mおよび出力側アクセスコントローラ
Moを含んでおり、この入力側および出力側のアクセス
コントローラMi、Moは図示の都合上別個のものとし
て示しであるが、実際には1らのユニットとして構成さ
れている。
記憶アレ一部Mはn個のウェイに分割されており、各プ
ロセッサP。−P3から主記憶装置への書込みデータは
書込レジスタWDRO〜WDR3に一旦格納された後、
図示しないコントローラによって制御されるセレクタS
を介して選択されたウェイのストレージアレイに格納さ
れ、また、主記憶装置からの読出しも同様に行われる。
プロセッサにおける命令の処理においては主記憶装置へ
のデータ書込みが発生するが、そのデータ長は命令の処
理結果により様々である。
例えば8バイト単位で主記憶装置へのデータの書込みを
行うシステムにおいては、書込データが8バイトの整数
倍であれば8バイト単位で主記憶装置への書込みを行う
フルストアが行われるが、8バイトに満たない書込デー
タについてはバイト中の書込位置を示すバイトマークが
付されたパーシャルストアデータとしてバイトへの部分
的な書込みであるパーシャルストアが行われる。
このフルストアとパーシャルストアとの2つのオペレー
ションは主記憶装置での処理の違いにより処理に要する
サイクルタイムが大きく異なる。
すなわち、フルストアの場合プロセッサから送られてき
たデータを指定されたアドレスへ書き込めば完了である
が、パーシャルストアの場合には先ず指定されたアドレ
スから8バイトのデータを読出し、この8バイトデータ
とプロセッサから送られてきたパーシャルストアデータ
とをバイトマークに基づいてマージし、得られた8バイ
トのデータを主記憶装置の指定されたアドレスに書き込
むといった過程が必要になる。
したがって、フルストアオペレーションに比べてパーシ
ャルストアの場合には、指定されたアドレスからの読出
しとデータのマージ、すなわちフェッチおよびマージの
動作に要する時間が余分にかかることになる。
〔発明が解決しようとする課題〕
このため、複数のプロセッサから主記憶装置の同一ウェ
イに属するアドレスへのパーシャルストアオペレーショ
ンが頻繁に要求された場合にはシステム全体の性能が低
下するので、これを避けるためにはウェイ数を増加して
並行処理を可能にすることが考えられるがハードウェア
が増大するばかりでなく、主記憶装置における制御が複
雑になるなどの問題がある。
したがって、本発明は、主記憶装置への書込みのために
プロセッサがこの主記憶装置にアクセスする時間をハー
ドウェアを増大させることなく、短縮することを目的と
する。
〔課題を解決するための手段〕
パーシャルストア要求があったとき、このパーシャルス
トアによって更新されるべきデータがキャッシュに存在
するときには、このキャッシュから読出した上記更新さ
れるべきデータとパーシャルストアを行うデータとをマ
ージしてから主記憶装置にフルストア処理を行わせるよ
うに構成した。
また別の方式として、パーシャル書込要求があったとき
、このパーシャル書込みによって更新されるべきデータ
がキャッシュに存在するときには、このキャッシュの上
記更新されるべきデータにパーシャル書込を行うデータ
をハイドを指定して書込むことによってデータを更新し
、この更新されたデータによって主記憶装置にフルスト
ア書込みを行うように構成することができる。
〔作 用〕
第1図は本発明の原理を示したフローチャートであって
、プロセッサはパーシャルストア要求が発生するとこの
パーシャルストアによって更新されるべきデータがキャ
ッシュにあるか否かを判断し、キャッシュにこの更新す
べきデータがなければ従来と同様にパーシャルストアを
行う。
、  しかしながら、第1図(a)に示すように、この
更新すべきデータがキャッシュに存在していれば、この
データをキャッシュから読出してパーシャルストアすべ
きデータとマージして主記憶装置への書込単位となるフ
ルストアデータに編集し、この編集されたデータを主記
憶装置に転送してフルストア書込処理を行わせるように
する。
また別の方式として、同図(blに示すように、更新さ
れるべきデータがキャッシュに存在するときには、この
キャッシュの上記更新されるべきデータにパーシャル書
込を行うデータをハイドを指定して書込むことによって
データを更新し、この更新されたデータによって主記憶
装置にフルストア書込みを行うように構成することがで
きる。
これらの方式によって、キャッシュに更新されるべきデ
ータが存在していれば処理時間の短いフルストア書込処
理によって主記憶装置のデータの更新が行われるが、更
新されるデータは通常キャッシュに存在している場合が
多いのでその頻度は高く、この結果、主記憶装置にプロ
セッサがアクセスする時間は著しく短縮される。
したがって、複数のプロセッサによる主記憶装置へのア
クセスの競合が減少し、プロセッサシステム全体として
の処理能力が著しく向上する。
〔実施例〕
第3図は本発明によるプロセッサの実施例を示すブロッ
ク図であり、このプロセッサの主記憶装置は第2図につ
いて説明したと同様な構成を有しているものとする。な
お、第3図中英字が記入されているブロックはレジスタ
を示している。
命令制御部からのアドレスはアドレスレジスタADRに
格納されてからキャッシュ1に格納されているデータの
アドレスを格納しているタグメモリ2に送られ、上記の
アドレスレジスタADRに格納されているアドレスがこ
のタグメモリ2に登録されているか否かを比較器3によ
って比較・検索する。
検索の結果、上記アドレスに一致したキャッシュ中のウ
ェイがあれば、このアドレスのデータがキャッシュに格
納されていることを示すタグマツチ信号をオンにすると
ともにキャッシュ1のタグマツチしたウェイを示すデー
タをセレクタ4によって選択してキャッシュリードデー
タレジスタ■R−Cに書込む。
一方、演算部から送られてきた更新内容に相当するスト
アデータはストアデータレジスタSDRに格納され、マ
ージ手段5によってマージされて更新すべきデータとな
り、スタックとして構成されているデータレジスタ6に
書込まれ、その後主記憶装置に送られる。
第4図はこのマージを詳細に説明した図であって、キャ
ッシュリードデータレジスタRDR−Cからはキャッシ
ュ1から読出した8バイトのデータ“11112222
33334444”とフルストアを示す2バイトの“F
F”とが、また、ストアデータレジスタ5DR1からの
更新内容に相当するストアデータとして“AAAABB
BBCCCCDDDD″の8バイトと“FE”とがマー
ジ手段4に送られる。
一方、命令制御部からの更新すべきバイトをその“1”
に対応するビットによって指示するバイトマークとして
“FO”すなわち“11110000 ”の2バイトの
データがバイトマークレジスタBMからこのマージ手段
4に送られるので、キャッシュリードデータレジスタR
DR−Cからの8バイトのデータ“111122223
3334444 ”の初めの4ハイド、すなわち“11
112222″がストアデータレジスタSDRからのス
トアデータの初めの4ハイド“へへAABBBB ”に
よって置換えられて“八AAABBBB3333444
4”というデータに更新されて、データレジスタ5に格
納される。
このとき、タグメモリ2からは比較器を介して”1”レ
ベルのタグマツチ信号がアンド回路7.。
7□、8..8□のそれぞれの一方の入力端子に供給さ
れているので、アンド回路7□からはフルストアを示す
フルストアハイドマーク“FF”が、またアンド回路8
□からはオペレーションコードとしてフルストアオペレ
ーションコードがそれぞれスタックとして示したコント
ロールレジスタ9に送られて格納される。
これらのデータレジスタ5に格納された更新されたデー
タおよびコントロールレジスタ9に格納されたフルスト
アバイトマークとフルストアオペレーションコードとは
、スタックとして示したアドレスレジスタからのアドレ
スとともに主記憶装置に送られて、このアドレスのデー
タをフルストアによって書換える。
ところで、もし更新すべきデータがキャッシュ1にない
場合にはタグマツチ信号がないので、この信号を識別し
てプロセッサは従来と同様にパーシャルストアを行うが
、このときにはアンド回路7□、8□はこの“0”レベ
ルのタグマツチ信号によって遮断状態にあるので、アン
ド回路7+、Lからのバイトマークおよびオペレーショ
ンコードがコントロールレジスタ9に書込まれ、これら
の変更は行われない。
また、ストアデータがフルストアであった場合にはバイ
トマークが“FF”であることによって識別できるので
、フルストアオペレーションを実行する。
本発明をパイプライン処理によって実行する場合につい
て説明すると、第1のステートにおいては、パーシャル
ストアによって更新されるデータがキャッシュ1に存在
するか否かをタグメモリ2が格納しているアドレスによ
って調べ、このデー夕が存在していればタグマツチ信号
とこのデータの存在しているうエイナンバーを比較器3
から送出させ、このウェイナンバーは次の第2ステート
におけるキャッシュ1から読出したデータのセレクタ4
による選択に使用され、選択された更新されるべきデー
タはキャッシュリードデータレジスタRDC−Cに送ら
れて、このレジスタに格納される。
さらに、この第3ステートでは演算ユニットで生成され
たストアデータをストアデータレジスタSDRにセット
する。なお、上記タグマツチ信号は次の第4ステートま
で保持されて、ストアデータのキャッシュ1への書込み
制御信号およびバイトマークとオペレーションコードの
作成に使用される。
続く第4ステートでは、ストアデータレジスタSDRに
格納されているストアデータをライトデータレジスタW
DRを介してキャッシュメモリ1に書込み、また、キャ
ッシュリードデータレジスタl?DC−Cに格納されて
いる更新さるべきデータとストアデータレジスタSDR
に格納されているストアゾ−タとをハイドマークレジス
タBMからのバイトマークに基づいてマージ手段5によ
ってマージし、データレジスタ6に格納する。
同時にこの第4ステートでは、タグマツチ信号がオンで
あればフルストアオペレーションコード、フルストアバ
イトマークをアンド回路7□、8□で選択してコントロ
ールレジスタ9に書込む。
上記のようなパイプライン処理によって、パーシャルス
トアを行うべきストアデータに対してもフルストア処理
によって主記憶装置に格納することができるので、パー
シャルストア処理に比して短い時間で処理を完了するこ
とができる。
また、別の実施例として、キャッシュの書込み回路がバ
イトを選択してストアデータをキャッシュに書込む機能
を有している場合には、ストアデータレジスタSDRに
格納されているストアデータ中の更新すべきバイトを選
択してキャッシュ1に書込み、これをキャッシュから読
出してデータレジスタ6に書込むようにすることもでき
る。
しかしながら、この方法による場合には−旦キャソシュ
1に書込むためにデータレジスタへの書込みまでにトマ
シンサイクルだけ処理時間が余分にかかることになるが
、パイプライン処理を行っているプロセッサの場合には
上記の第4ステートに続いて1つのステートを設定する
だけでよいので処理時間に及ばず影響は少なく、主記憶
装置の負担を軽減する効果は大きい。
〔発明の効果〕− パーシャルストアが要求されたときには更新されるデー
タがキャッシュに存在している頻度が高いので、キャッ
シュに更新されるべきデータが存在しているときには主
記憶装置の書込処理時間の短いフルストア書込処理によ
って主記憶装置のデータの更新を行うようにした本発明
によって、主記憶装置にプロセッサがアクセスする時間
は著しく短縮される。
したがって、複数のプロセッサによる主記憶装置へのア
クセスの競合が減少し、プロセッサシステム全体として
の処理能力が著しく向上するという格別の効果が達成さ
れる。
【図面の簡単な説明】
第1図は本発明の原理を示すフローチャート、第2図は
主記憶装置の構成を示す図、 第3図は本発明の実施例を示すブロック、第4図はマー
ジの例を示す図である。 特許出願人   富士通株式会社 (a) 原理図 第1図 (b)

Claims (2)

    【特許請求の範囲】
  1. (1)パーシャル書込要求があったとき、このパーシャ
    ル書込みによって更新されるべきデータがキャッシュに
    存在するときには、このキャッシュから読出した上記更
    新されるべきデータとパーシャル書込を行うデータとを
    マージしてから主記憶装置にフルストア書込みを行うよ
    うにしたことを特徴とする主記憶装置書込方式。
  2. (2)パーシャル書込要求があったとき、このパーシャ
    ル書込みによって更新されるべきデータがキャッシュに
    存在するときには、このキャッシュの上記更新されるべ
    きデータにパーシャル書込を行うデータをバイトを指定
    して書込むことによってデータを更新し、この更新され
    たデータによって主記憶装置にフルストア書込みを行う
    ようにしたことを特徴とする主記憶装置書込方式。
JP2285943A 1990-10-25 1990-10-25 主記憶装置書込方式 Pending JPH04160654A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2285943A JPH04160654A (ja) 1990-10-25 1990-10-25 主記憶装置書込方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2285943A JPH04160654A (ja) 1990-10-25 1990-10-25 主記憶装置書込方式

Publications (1)

Publication Number Publication Date
JPH04160654A true JPH04160654A (ja) 1992-06-03

Family

ID=17697989

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2285943A Pending JPH04160654A (ja) 1990-10-25 1990-10-25 主記憶装置書込方式

Country Status (1)

Country Link
JP (1) JPH04160654A (ja)

Similar Documents

Publication Publication Date Title
US4524416A (en) Stack mechanism with the ability to dynamically alter the size of a stack in a data processing system
US6779102B2 (en) Data processor capable of executing an instruction that makes a cache memory ineffective
JPH0668736B2 (ja) 2個のシステムクロックサイクルを利用する書込み動作をもったキャッシュメモリユニットを供与する装置及び方法
JP3137117B2 (ja) 高速処理計算機
JPH01269142A (ja) 計算機システム
US5197145A (en) Buffer storage system using parallel buffer storage units and move-out buffer registers
EP0030463B1 (en) Buffer memory control system
US5012410A (en) Data processor with instruction cache memory
US5408674A (en) System for checking the validity of two byte operation code by mapping two byte operation codes into control memory in order to reduce memory size
JP2000020396A (ja) 可変式キャッシュ方式
JPH04160654A (ja) 主記憶装置書込方式
JPS61224051A (ja) バッファメモリ制御方法
GB2037466A (en) Computer with cache memory
JPH0552539B2 (ja)
JPH10116191A (ja) 圧縮命令用バッファを備えたプロセッサ
JP2576589B2 (ja) 仮想記憶アクセス制御方式
JPH06103477B2 (ja) 並列キャッシュメモリ
JP3074897B2 (ja) メモリ回路
EP0502206A1 (en) System equipped with processor and cache memory, and method of controlling said cache memory
JPH0248733A (ja) 情報処理装置
JPH0646381B2 (ja) 命令取出し装置
JP2917384B2 (ja) 情報処理装置
JPH05173778A (ja) データ処理装置
JPS6027418B2 (ja) 命令先取り制御装置
JP2001022581A (ja) データ処理装置及びコンピュータ読み取り可能な記憶媒体