JP2815850B2 - データ処理ユニット - Google Patents

データ処理ユニット

Info

Publication number
JP2815850B2
JP2815850B2 JP9115855A JP11585597A JP2815850B2 JP 2815850 B2 JP2815850 B2 JP 2815850B2 JP 9115855 A JP9115855 A JP 9115855A JP 11585597 A JP11585597 A JP 11585597A JP 2815850 B2 JP2815850 B2 JP 2815850B2
Authority
JP
Japan
Prior art keywords
block
data
processing unit
address
data processing
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.)
Expired - Lifetime
Application number
JP9115855A
Other languages
English (en)
Other versions
JPH1091523A (ja
Inventor
幸二 中村
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 JP9115855A priority Critical patent/JP2815850B2/ja
Publication of JPH1091523A publication Critical patent/JPH1091523A/ja
Application granted granted Critical
Publication of JP2815850B2 publication Critical patent/JP2815850B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はバッファ記憶を具備
するデータ処理ユニットに係り、特に、バッファ記憶の
ブロック転送を効率的に行うデータ処理ユニットに関す
る。
【0002】
【従来の技術】一般にデータ処理装置では高速バッファ
記憶(以下、BSと称す)を備え、主記憶(以下、MS
と称す)内の使用頻度の高いデータをBSに格納し、該
BSを参照して目的のデータを得ることにより、MSの
実効的アクセス時間を短縮し、プロセッサの処理能力の
向上を図っている。この場合、ストア・イン方式では、
ストア要求時、該当ブロックがBSにあると、BS上の
該当ブロックのデータを書き替え、そのブロックがリプ
レースの対象になったときにMSに戻している。
【0003】従来、この種のBSを複数有するマルチプ
ロセッサシステムなどにおいては、BS間の一致制御を
行うため、BS上での一連のデータの取扱い単位である
ブロックのアドレスをやりとりし、BS間のデータ転送
を行っている。即ち、あるデータ処理ユニットが自BS
内に所要データが存在しない場合、当該ブロックアドレ
スを他データ処理ユニットに送出する。他データ処理ユ
ニットは当該ブロックが自BS内に存在するか否かを判
断し、自BS内に当該ブロックが存在し、かつ、書き替
えられてMSの内容と不一致になっている場合には、当
該ブロックのデータを要求元のデータ処理ユニットに転
送する。なお、この種のバッファ記憶制御方式として関
連するものには、例えば特開昭61−290550号公
報が挙げられる。
【0004】
【発明が解決しようとする課題】上記従来技術は、BS
のブロック単位のデータ転送(ブロック転送)を行う場
合、ブロック内のデータ転送順序について配慮されてお
らず、ブロック内の先頭データから転送することになる
ため、データ処理ユニットが必要としているデータがブ
ロックの後部に存在する場合、該データ処理ユニットで
の所要データの入手が遅れるという問題があった。
【0005】本発明の目的は、BSを具備するデータ処
理ユニットにおいて、BSのブロック転送を効率よく行
って、所要データの入手が遅れるのを防止することにあ
る。
【0006】
【課題を解決するための手段】本発明は、バッファ記憶
(BS)を具備し、BSのブロック転送を所定のデータ
単位毎に複数回に分けて行うデータ処理ユニットにおい
て、所要データがBS内に存在しないとき、ブロック転
送要求として、当該データを含むブロックのブロックア
ドレスと共に当該データのブロック内アドレスを送出す
る手段と、複数回に分けて送られてくるデータを、前記
ブロック内アドレスから順次BS内に書き込む手段と、
ブロックアドレス内アドレスを伴ってブロック転送要求
を受けたとき、当該ブロックがBS内に存在し、かつ、
それが書き換えられている場合、当該ブロック内アドレ
スにより所要データを優先して読み出す手段を有するこ
とを基本とする
【0007】本発明のデータ処理ユニットを用いて例え
ばマルチプロセッサシステムを構成した場合、メモリア
クセス要求の発生したデータ処理ユニットは、自BS内
に当該データが存在するか否かを判定し、存在しない場
合、当該ブロックアドレスと該データのブロック内アド
レスを他データ処理ユニットに送出する。他データ処理
ユニットでは、送られてきたアクセスアドレスの内、ブ
ロックアドレスを用いて所要ブロックの有無と、存在す
る場合には、当該ブロックの書き替えが行われたか否か
を判定する。そして、書き替えが行われている場合に
は、まず、要求元データ処理ユニットから送られてきた
ブロック内アドレスよりデータを読み出す。そして、当
該ブロック内アドレスを順次、BSの読み出し幅に従い
カウンタ・アップし、当該ブロックのデータを順次読み
出す。この時、桁あふれは無視する。BSより読み出し
たデータは順次、要求元データ処理ユニットへ送出され
る。これにより、要求元データ処理ユニットでは所要デ
ータを優先して取得することができる。
【0008】
【発明の実施の形態】以下、本発明の実施の形態とし
て、本発明のデータ処理ユニット2個でマルチプロセッ
サシステムを構成した場合のBS間のブロック転送例を
説明する。
【0009】図1に本発明の一実施例のシステム構成図
を示す。図1において、MS101には、BS201を
有するバッファ制御部102と命令を解読・実行するプ
ロセッサ104からなるデータ処理ユニット10、及
び、BS202を有するバッファ制御部103と同じく
命令を解読・実行するプロセッサ105からなるデータ
処理ユニット20が接続される。ここで、バッファ制御
部102とバッファ制御部103は同一構成であり、あ
るときはブロック転送要求側、あるときはブロック転送
側となる。
【0010】今、データ処理ユニット10において、プ
ロセッサ104が必要な命令あるいはオペランド(以
下、合わせてデータと略す)をバッファ制御部102に
要求したとする。当該要求は、主記憶101上のデータ
アドレスにより指示される。バッファ制御部102で
は、当該アドレスを使用して、要求されたデータがBS
201に存在するか否かの判定を行う。BS201に存
在すれば、当該BS201より所要データを読み出して
プロセッサ104に送出する。BS201に存在しない
場合、バッファ制御部102はMS101に所要データ
を含むブロックの転送要求を行うと共に、他データ処理
ユニット20のバッファ制御部103にBSの一致制御
要求(ブロック転送要求)を発行する。この時、バッフ
ァ制御部102は、プロセッサ104より送出された所
要データを含むブロックのアドレスと共に所要データの
ブロック内アドレスを合わせて送出する。
【0011】ここで、当該ブロックがBS202に存在
しないか、あるいは存在しても書き替えが行われておら
ず、MS101の内容と一致している場合、バッファ記
憶制御部102がMS101より当該ブロックをBS2
01に取り込み、さらに所要データをプロセッサ104
に送出することは従来と同様であるので、このケースの
説明は省略する。
【0012】さて、当該ブロックがBS202に存在
し、かつ、その内容の書き替えが行われ、MS101の
内容と不一致となっている場合、他データ処理ユニット
20のバッファ制御部103はBS202内の当該ブロ
ックを要求元のデータ処理ユニット10のバッファ制御
部102に転送する。本発明のデータ処理ユニットによ
れば、このブロック転送を効率的に行うことができる。
これについて、以下、図2乃至図4を用いて説明する。
なお、以下の説明では、BSの1ブロックを32バイト
とし、BSから1回に読み出せるデータ幅は8バイトと
する。又、プロセッサよりバッファ制御部には8バイト
単位でデータを要求するものとする。さらに、MS−B
S間、BS−BS間、BS−プロセッサ間の1回のデー
タ転送単位も8バイトとする。
【0013】図2は、データ処理ユニット20側のバッ
ファ制御部103の構成のうち、特にデータ処理ユニッ
ト10にてプロセッサ104より要求されたデータがB
S201に存在せず、バッファ制御部102より一致制
御要求(ブロック転送要求)が発行された場合の動作を
説明するのに必要な構成を示したものである。
【0014】要求元データ処理ユニット10側のバッフ
ァ制御部102より送出されたブロックアドレス及びブ
ロック内アドレスは、アドレスライン211,212に
よりバッファ制御部103内のレジスタ213,214
に取り込まれる。バッファ制御部103では、レジスタ
213に取り込まれたブロックアドレスを使用して、B
S202に存在するブロックのMSアドレスを保持する
BSディレクトリ215を検索し、当該ブロックがBS
202に存在するか否かを判定する。存在する場合は、
BS202内の各ブロックに書込みが行われたか否かの
履歴情報をもつ変更ディレクトリ216を検索する。B
Sディレクトリ215及び変更ディレクトリ216の検
索結果より、BS制御論理部217は、BS202から
BS201へのブロック単位の転送を行うか否かの判定
を行う。
【0015】BS202に該当ブロックが存在し、か
つ、書き替えが行われていた場合、BS202にブロッ
ク単位の読み出しを要求する。この時、BS202内の
当該ブロックのアドレスをアドレスライン219により
指示する。さらに、レジスタ214に取り込まれたブロ
ック内アドレスをアドレスライン220により指示し、
アドレスライン219,220のアドレスを合成してB
S202よりデータを読み出す。読み出されたデータ
は、データライン221により要求元データ処理ユニッ
ト10のバッファ制御部102に転送すると共に、この
時に使用したブロック内アドレスを、アドレスライン2
22により同じくバッファ制御部102に転送する。
【0016】BS202からの1ブロック(32バイ
ト)の読み出しは、ブロック内アドレスを順次+8,+
16,+24と更新しながら読み出すことにより実現で
きる。この時、ブロック内アドレスの桁あふれは無視す
る。例えば、図2に示すように、1ブロックが4つの8
バイト・データA〜Dより成り、所要(必要)データが
その第3データCである場合、最初のブロック内アドレ
スは、二進表現で“10000”となる。まず、最初に
本アドレスを使用してBS202を読み出し、以降、ブ
ロック内アドレスを“11000”→“00000”→
“01000”と更新しながら読み出すことにより、8
バイト・データをC→D→A→Bの順序で読み出して転
送できる。
【0017】図3は、要求元のデータ処理ユニット10
側のバッファ制御部102の構成のうち、特に他データ
処理ユニット20のバッファ制御部103から転送され
るブロック内アドレス及びBS202の読み出しデータ
を受け取った場合の動作を説明するのに必要な構成を示
したものである。
【0018】他データ処理ユニット20側のバッファ制
御部103からのデータ(8バイトデータ)は、データ
ライン221により転送されてデータレジスタ313
に、ブロック内アドレスは、アドレスライン222によ
り転送されてアドレスレジスタ314に取り込まれる。
バッファ制御部102では、BS201に所要ブロック
が存在しない場合、BS201内のいずれのブロックを
リプレース対象にするか決定するリプレース制御論理部
318よりアドレスライン319に出力されるBS20
1内のブロックアドレスとアドレスレジスタ314に取
り込まれるブロック内アドレスをアドレスライン317
に出力することにより、BS201の書込みアドレスを
生成し、順次、データレジスタ313に取り込まれるデ
ータをBS201に書込む。本例では、BS201の該
当ブロックに、データはC→D→A→Bの順に書込まれ
る。この時、第1番目に転送されてくるデータCはプロ
セッサ104の所要(必要)データであるので、当該デ
ータCは、転送されてくると直ちにデータライン304
によりプロセッサ104に送出する。
【0019】図4に上記実施の形態の動作タイミングチ
ャートを示す。図4では従来構成と比較するため、本発
明のデータ処理ユニットによる場合の時間関係を実線
で、従来構成による時間関係を破線で示してある。即
ち、本発明のデータ処理ユニットでは、プロセッサ10
4での必要データCが従来に比し、2単位時間早くプロ
セッサ104に送出できる。
【0020】なお、BS間のデータの転送は、BS間で
直接行ってもよいし、上位の記憶階層(MS)を介して
行ってもよい。
【0021】
【発明の効果】以上説明したように、本発明のデータ処
理ユニットによれば、BSのブロック転送を行う場合
に、従来構成に比べて要求元のプロセッサに対して所要
データの取得を早めることができ、結果としてプロセッ
サでの命令の解読、実行を早めることができるという効
果がある。
【図面の簡単な説明】
【図1】本発明のデータ処理ユニットによる実施の形態
のシステム構成図である。
【図2】BSの一致制御要求受付け先データ処理ユニッ
トのバッファ制御部の詳細構成図である。
【図3】BSの一致制御要求発行元データ処理ユニット
のバッファ制御部の詳細構成図である。
【図4】本発明のデータ処理ユニットと従来構成の動作
を比較するためのタイミングチャートである。
【符号の説明】
10,20 データ処理ユニット 101 主記憶(MS) 102,103 バッファ制御部 104,105 プロセッサ 201,202 バッファ記憶(BS) 213 ブロックアドレスレジスタ 214 ブロック内アドレスレジスタ 313 データレジスタ 314 ブロック内アドレスレジスタ

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 バッファ記憶(BS)を具備し、BSの
    ブロック転送を所定のデータ単位毎に複数回に分けて行
    うデータ処理ユニットであって、当該データ処理ユニットで必要 データがBS内に存在し
    ないとき、ブロック転送要求として、当該データを含む
    ブロックのブロックアドレスと共に当該必要データのブ
    ロック内アドレスを当該データ処理ユニット外に送出す
    る手段と、前記ブロック転送要求に応じて当該データ処理ユニット
    外から複数回に分けて送られてくるデータを、当該デー
    タ処理ユニット外に送出したブロック内アドレスから順
    次BS内に書き込む手段と当該データ処理ユニット外から、ブロックアドレスおよ
    びブロック内アドレスを伴って ブロック転送要求を受け
    たとき、当該ブロックがBS内に存在し、かつ、それが
    書き換えられている場合、当該ブロック内アドレスで示
    されるデータから順次読み出して当該データ処理ユニッ
    ト外に送出する手段と、を有することを特徴とするデー
    タ処理ユニット。
  2. 【請求項2】 BS内に存在するブロックのMSアドレ
    スを保持する第1のディレクトリを備え、当該データ処
    理ユニット外から送られてきたブロックアドレスを使用
    して該第1のディレクトリを検索して当該ブロックがB
    S内に存在するか否かを判定する第1の判定手段を有す
    ることを特徴とする請求項1記載のデータ処理ユニッ
    ト。
  3. 【請求項3】 BS内の各ブロックの書き替えが行われ
    たか否かの情報を保持する第2のディレクトリを備え、
    前記第1の判定手段の判定結果に応じて前記第2のディ
    レクトリを検索して当該ブロックの書き替えが行われた
    か否かを判定する第2の判定手段を有することを特徴と
    する請求項2記載のデータ処理ユニット。
JP9115855A 1997-05-06 1997-05-06 データ処理ユニット Expired - Lifetime JP2815850B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9115855A JP2815850B2 (ja) 1997-05-06 1997-05-06 データ処理ユニット

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9115855A JP2815850B2 (ja) 1997-05-06 1997-05-06 データ処理ユニット

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP63097500A Division JP2714952B2 (ja) 1988-04-20 1988-04-20 計算機システム

Publications (2)

Publication Number Publication Date
JPH1091523A JPH1091523A (ja) 1998-04-10
JP2815850B2 true JP2815850B2 (ja) 1998-10-27

Family

ID=14672816

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9115855A Expired - Lifetime JP2815850B2 (ja) 1997-05-06 1997-05-06 データ処理ユニット

Country Status (1)

Country Link
JP (1) JP2815850B2 (ja)

Also Published As

Publication number Publication date
JPH1091523A (ja) 1998-04-10

Similar Documents

Publication Publication Date Title
US4881170A (en) Instruction prefetch control apparatus
US4169284A (en) Cache control for concurrent access
JP2714952B2 (ja) 計算機システム
JPH11143775A (ja) キャッシュメモリシステム
JP7097371B2 (ja) メモリシステムへの加速されたアクセスを提供するための方法及び機器
JPH0410102B2 (ja)
JP2815850B2 (ja) データ処理ユニット
JPS5890244A (ja) デ−タ処理装置
JP2814683B2 (ja) 命令処理装置
JPH0664552B2 (ja) 情報処理装置の無効化処理方式
JPH0644246B2 (ja) キヤツシユメモリ制御方式
JPH01193961A (ja) アドレス変換装置
JPH0248733A (ja) 情報処理装置
JPH1185613A (ja) キャッシュメモリ
JPH02259945A (ja) ストア処理方式
JPS59218692A (ja) ロジカルバツフア記憶制御方式
JPS6410858B2 (ja)
JPH086853A (ja) 記憶制御方法
JPH01129334A (ja) キャッシュメモリのデータ制御方式
JPS6047618B2 (ja) 情報処理装置
JPS63121975A (ja) 情報処理装置
JPS5890245A (ja) デ−タ処理装置
JPH01280851A (ja) キャッシュ・ストア制御方式
JP2000207227A (ja) 演算装置
JPS6053335B2 (ja) 情報処理装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070814

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20080814

Year of fee payment: 10

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080814

Year of fee payment: 10