JPS62224846A - メモリ制御装置 - Google Patents

メモリ制御装置

Info

Publication number
JPS62224846A
JPS62224846A JP61067990A JP6799086A JPS62224846A JP S62224846 A JPS62224846 A JP S62224846A JP 61067990 A JP61067990 A JP 61067990A JP 6799086 A JP6799086 A JP 6799086A JP S62224846 A JPS62224846 A JP S62224846A
Authority
JP
Japan
Prior art keywords
address
request
requests
block data
command
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
JP61067990A
Other languages
English (en)
Inventor
Atsushi Takahashi
淳 高橋
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 JP61067990A priority Critical patent/JPS62224846A/ja
Publication of JPS62224846A publication Critical patent/JPS62224846A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 炎翫旦I 本発明はメモリ制御装置に関し、特にCPtJ(中央処
理装置)へのデータ転送をブロック単位(ブロックデー
タ)で実行するメモリ制御2Il装置に関する。
従来技術 従来、キャッシュメモリを有し、cPUとの間のデータ
転送でブロックデータ転送を実行するメモリ制御装置で
は、CPtJが2台接続されている場合に、両方のCP
IJからの主記憶アクセス要求が同時に受付けられると
、この主記憶アクセス要求は交互に選択されて処理され
ていた。このとき、先行する主記憶アクセス要求がブロ
ックデータ転送要求の場合は、後続の読出し要求系の処
理は、先行するブロックデータ転送処理の終了を持って
実行されていた。後続の読出し要求がブロックデータ転
送要求であり、先行する主記憶アクセス要求と同一アド
レスの場合は、二度連続して同一ブロックデータ転送処
理を実行していた。
このように、2台のCPUがらのブロックデータ転送要
求が同時に受付けられた場合、先行するCPUのブロッ
クデータ転送処理の終了を待って、後続のCPUのブロ
ックデータ転送処理が実行処理されており、この両方の
cPUのブロックデー夕転送要求のアドレスが一致して
いる場合には同一処理動作を二度連続して行っているこ
ととなり、性能上の無駄があるという欠点があった。
尚、この従来技術の詳細は「日経エレクトロニクスJ1
985年7月15日号、 p、p、233〜219「2
レベルのキャッシュやパイプライン処理の工夫で速度を
上げた大型コンピュータACO81500」に記載され
ている。
&且立旦芳 本発明は上記のような従来のものの欠点を除去すべくな
されたもので、複数のCPUから同時に読出し要求がな
され、この読出し要求が同一の時にこの複数のCPLI
へのリプライを一度で行うことができ、処理時間を短縮
することができるメモリ制御装置を提供することを目的
とする。
発明の構成 本発明によるメモリ制御装置は、複数の上位装置からの
読出し要求に応じてメモリをアクセスするメモリ制御装
置であって、前記上位装置からの複数の前記読出し要求
が同一か否かを判定する指令判定手段と、複数の前記読
出し要求のアドレスが同一か否かを判定するアドレス判
定手段と、前記指令判定手段の結果及び前記アドレス判
定手段の結果が共に同一の内容を示寸時、前記読出し要
求があった前記上位装置に前記読出し要求のリプライを
同時に送出するリプライ制御手段とを有することを特徴
とする。
実施例 次に、本発明について図面を参照して説明するが、それ
に先立ち第2図、第3図を用いて従来技術について説明
する。
第2図はキャッシュメモリ25を備えた一般的なコンピ
ュータシステムであり、複数のCPU1゜2とl0P(
入出力処理装置>32.33から発行された主記憶アク
セス要求を、メモリ制m+装置34で選択し、この選択
された主記憶アクセス要求がキャツシュヒツトした場合
は、この主記憶アクセス要求が読出し要求であればキャ
ッシュメモリ25からの読出しデータを要求元のCPU
1゜2又はl0P32.33に送出する。この主記憶ア
クセス要求が書込み要求であれば、この書込み要求で指
示された書込みデータをキャッシュメモリ25に書込む
。又、この選択された主記憶アクセス要求がキャッシュ
ミスヒツトした場合は、この主記憶アクセス要求をMM
LJ (主記憶装置)26に送出する。この主記憶アク
セス要求が読出し要求であれば、MMtJ26からの読
出しデータ(ブロックデータ)をメモリ制御装置34経
出で要求元のCPUI、2又はl0P32.33に送出
し、この主記憶アクセス要求が書込み要求であれば、こ
の書込み要求で指示された書込みデータをメモリ制御装
置34経由でMMU26に書込む。
上記のように複数の処理装置が接続されている場合は、
各処理装置からの主記憶アクセス要求の競合やアドレス
干渉が起こるが、その制御はメモリ制御袋W134にて
行う。
第3図は従来のメモリ制御装置34の回路構成を示すブ
ロック図で、CPU1.2及びl0P32.33のアド
レス系と指令系についてのみ記述している。図において
、メモリ制御装置34内のボート部のバッファ4〜7,
35.36で受付けられた主記憶アクセス要求の中でフ
ァーストインのものがレジスタ37〜42に格納され、
レジスタ37〜42に格納された複数の主記憶アクセス
要求の内1つがセレクタ43.44で選択される。
1つのボート内では、要求元からの要求受付順に選択さ
れるが、ボート間では要求受付順ではなくボート間の優
先度に従って選択される。選択対象となった各要求間の
優先度はl0P32.33の方がCPUI、2よりも高
く、CPLJI、2間、10P32.33間では対等に
選択される。選択された主記憶アクセス要求はパイプラ
イン回路の制御下で処理される。
パイプライン回路内でのl0P32.33からの主記憶
アクセス要求に対する処理は、特に順序性は重要視して
いないが、同−CPU1.2からの主記憶アクセス要求
に対する処理は、一般に要求受付順に従い、リプライも
要求受付順に返送する。このリプライ類を守るために次
の様な処理が行われる。ボート部からの主記憶アクセス
要求は、キャツシュヒツトの条件下で追い越しが生じな
いように選択される。例えば、先行するCPU 1 。
2からの要求がキャツシュヒツトのブロックデータ転送
処理中には、後続の読出し要求系は選択されない。
キャッシュミスヒツトはレジスタ45から始まるパイプ
ライン回路に入ってからでないと判明しないが、これが
判明する前にパイプライン回路にすべって受入れられた
キャッシュミスヒツトした主記憶アクセス要求の次の要
求は、パイプライン回路中であっても実行されず、パイ
プライン回路の第1段階(レジスタ45)からの後戻り
処理が行われることにより、キャッシュミスヒツトした
要求の次の要求の処理の待ち合わせが行われ、要求受付
順は守られる。キャッシュミスヒツトした主記憶アクセ
ス要求のアドレスと後続する要求のアドレスが同一の場
合にも、この後続する要求の処理は前述の処理と同様に
待ち合わせが後戻り処理により行われる。
キャツシュヒツトした主記憶アクセス要求が部分書込み
要求の時に、この要求のアドレスが後続する要求のアド
レスと同一の場合に鵠、後続する要求はそのアドレスへ
の部分書込みが終った後のデータを要求していることが
多いので、この要求はバイブライン回路での戻り処理に
よって持ち合わせが行われる。
以上の様な制御下でCPLll、2からの同一の要求に
対する処理が行われる。2台接続されたCPIJl、2
の両方が選択対象のときく即ち、同時にボート部のレジ
スタ37.38に主記憶アクセス要求が格納されたとき
)は、前回選択されなかった方のボートが選択される。
例えば前回がCPU1のボートであれば、CPU2のボ
ートが選択され、CPU1のボートは次回選択される。
又、片方のボートだけに要求があるときは、この限りで
はなく、その要求のあるボートが選択される。
CPJJl、2からの主記憶アクセス要求間では順序性
は無いが、先行するCPU1.2の主記憶アクセス要求
がブロックデータ転送要求であれば、この要求の処理中
は後続の読出し要求は選択されず待ち合わせが行われる
。ブロックデータ転送要求が選択されると、キャツシュ
ヒツトの場合はキャッシュメモリ25から所定のデータ
長のブロックデータ読出しが数回にわたり分割して行わ
れ、要求元のCPIjl、2ヘリブライデータが返送さ
れる。又、キャッシュミスヒツトの場合はこの要求がM
MtJアクセス回路24に送出され、MMtJ26から
のりプライデータ(ブロックデータ)を待って、メモリ
制御装@34経出で要求元のCPU1,2ヘリブライを
送出する[このときキャッシュメモリ25にこのMMI
J 26からのりブライデータを舊込み、また、この書
込みを行うキャッシュメモリ25のアドレスのデータが
最新のデータである場合などには必要に応じてMMU2
6へのスワップアウトデータをスワップデータバッファ
(SDB)31を介してMMU26へ送出する]後続の
読出し要求は、上記ブロックデータ転送処理の終了を待
って実行される。特に2つのCPU1,2からの主記憶
アクセス要求が同時に受付けられ、共にブロックデータ
転送要求であり、アクセスアドレスが一致している場合
は、同一ブロックデータ転送処理を二度連続して実行す
ることになり、この二度のブロックデータ転送処理によ
り無駄が生じ、このため処理時間が長くなるので性能低
下はまぬがれない。この無駄をなくし、処理時間を短縮
するために本発明はなされた。
以下本発明の一実施例について第1図を参照して説明す
る。
第1図は本発明の一実施例を示すブロック図である。図
において、本実施例は第3図に示す従来のメモリ制御装
置34の構成にアドレス判定部16と、指令判定部17
と、要求選択制御部18と、フリップフロップ19と、
タイミング制御部20と、リプライ制御部21とを設け
たものであり、キャッシュメモリ25の読出し、書込み
動作及びMMtJ26のアクセス動作は第3図に示す構
成の動作内容とほぼ同じである。又、メモリ制御装置3
のボート部はCPU1.2に対するボートのみを記述し
ている。
図において、CPU1から発行された主記憶アクセス要
求がメモリ制御装置3のボート部のアドレスバッファ4
と指令バッファ6とで受付けられ、CPU2から発行さ
れた主記憶アクセス要求がメモリ制611装置3のアド
レスバッファ5と指令バッファ7とで受付けられ、これ
らの両要求が同時にアドレスレジスタ8と指令レジスタ
10及びアドレスレジスタ9と指令レジスタ11とに格
納されると、アドレス判定部16はアドレスレジスタ8
゜9に格納されているアドレスの比較を行い、これらの
アドレスが一致している場合、アドレス一致信号を要求
選択1b制御部18に送出する。
又、同時に指令判定部17は指令レジスタ10゜11に
格納されている指令の比較を行い、これらの指令がブロ
ックデータ転送指令であって且つ一致している場合に指
令一致信号を要求選択制御部18に送出する。要求選択
制御部18はこれらの両方の信号を受けると、アドレス
レジスタ8,9及び指令レジスタ10.11をセット可
能状態としくセットを有効にし)、又、セレクタ12,
13をCPU1側にする(セレクタ12はアドレスレジ
スタ8を、セレクタ13は指令レジスタ10を選択する
)制御信号を送る。次のクロックタイミングでアドレス
レジスタ8のデータはアドレスレジスタ14に、指令レ
ジスタ10のデータは指令レジスタ15に夫々格納され
、アドレスレジスタ9及び指令レジスタ11のデータは
キャンセルされ、アドレスレジスタ8.9及び指令レジ
スタ10.11には次のデータが格納される。又、同時
に7リツプフロツプ19が「1」にセットされ、同一ブ
ロックデータ転送要求有りの旨を示す。以下a、INI
Iがバイブライン回路に渡され、この要求に対する処理
が実行される。
アドレスレジスタ14に格納されたアクセスアドレスは
、キャッシュアドレス部22のデータと比較され、キャ
ツシュヒツトかキャッシュミスヒツトかが判定される。
キャツシュヒツト時はキャッシュメモリ25の読出しア
ドレスがキャッシュアドレス作成回路23で作られ、所
定のデータ長のブロックデータが数回にわたり分割して
キャッシュメモリ25から読出される。又、キ1Fツシ
ュミスヒット時はMMUアクセス回路24の制御の下に
アクセスアドレスと要求とがMMtJ26に送出され、
この要求に対するブロックデータがMMtJ26から読
出され、メモリ制御装置3に転送される(このときこの
MMU26からの読出しデータのキャッシュメモリ25
への書込み及び必要に応じたスワップアウト動作が実行
される)。
メモリ制御装置3のリプライ部のタイミング制御部20
はフリツプフロツプ1つが「1」にセットされたならば
、両CPLJ1.2から同一アクセスアドレスのブロッ
クデータ転送要求があったことを知り、且つキャツシュ
ヒツト、キャッシュミスヒツト信号を受け、夫々の処理
動作に対応したタイミングでセレクタ28にデータ選択
信号を送出する。タイミング制御部20はセレクタ28
に入ってきたデータがキャツシュヒツト又はキャッシュ
ミスヒツトしたブロックデータであることを認識してい
る。セレクタ28はこのデータ選択信号を受けて、この
ブロックデータをCPtJl側及びCPLJ2側の両方
に送出する。このブロックデータはリプライデータレジ
スタ29.30を介して両方のCPtJl、2に転送さ
れる。
又、リプライt1111部21はフリツプフロツプ19
が「1」にセットされていたならば、タイミング制御部
20の制御によるタイミングでCPU 1 。
2にリプライを返送する。
CPU1,2からメモリ制御装置3への読出し要求は、
所定のデータ長のブロックデータ転送によりその効率を
上げており、又、同一アドレスをアクセスするブロック
データ転送要求が同時に起こる確率は低い為、従来のメ
モリ制御装置34ではその処理が同一ブロックデータ転
送を二度連続するという形で実行されていたが、ユーザ
によってはより高い性能を求めるところもあり、本発明
はこの様な場合に対応する一手段であり、両方のCPU
I、2からのブロックデータ転送要求が同時に受付けら
れた場合に、1回のブロックデータ転送処理で両方のC
PU1,2にブロックデータ転送を行うことを可能とす
る。
このように、2台のCPU1,2からの主記憶アクセス
要求を同時に受付りた時、これらの要求が共にブロック
データ転送要求であり、そのアドレスが同一であること
を判定することによりこれらの要求に対するリプライデ
ータを両方のCPU1.2に送出することによって、同
一ブロックデータ転送を二度連続して実行することがな
くなるので、処理時間を短縮して性能を上げることがで
きる。
尚、本実施例では2台のCPU1.2からのブロックデ
ータ転送要求の例をあげて説明したが、3台のCPUか
らの読出し要求でも良く、これらに限定されない。
発明の詳細 な説明したように本発明によれば、同時に受付けた複数
の上位装置からの読出し要求の要求内容とアドレスとが
共に同一である時、これらを判定し、これらの判定によ
りこの要求に対するりブライデータを同時に読出し要求
を受付けた複数の上位装置に送出することによって、同
一のりブライデータ送出が一度ででき、処理時間を短縮
することができるメモリ制御装置を提供することができ
るという効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例を示すブロック図、第2図は
従来のコンピュータシステムを示すブロック図、第3図
は従来のメモリ制御装置を示すブロック図である。 主要部分の符号の説明 16・・・・・・アドレス判定部 17・・・・・・指令判定部

Claims (1)

    【特許請求の範囲】
  1. 複数の上位装置からの読出し要求に応じてメモリをアク
    セスするメモリ制御装置であって、前記上位装置からの
    複数の前記読出し要求が同一か否かを判定する指令判定
    手段と、複数の前記読出し要求のアドレスが同一か否か
    を判定するアドレス判定手段と、前記指令判定手段の結
    果及び前記アドレス判定手段の結果が共に同一の内容を
    示す時、前記読出し要求があった前記上位装置に前記読
    出し要求のリプライを同時に送出するリプライ制御手段
    とを有することを特徴とするメモリ制御装置。
JP61067990A 1986-03-26 1986-03-26 メモリ制御装置 Pending JPS62224846A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61067990A JPS62224846A (ja) 1986-03-26 1986-03-26 メモリ制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61067990A JPS62224846A (ja) 1986-03-26 1986-03-26 メモリ制御装置

Publications (1)

Publication Number Publication Date
JPS62224846A true JPS62224846A (ja) 1987-10-02

Family

ID=13360916

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61067990A Pending JPS62224846A (ja) 1986-03-26 1986-03-26 メモリ制御装置

Country Status (1)

Country Link
JP (1) JPS62224846A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
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

Cited By (1)

* Cited by examiner, † Cited by third party
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
KR0154533B1 (ko) 데이타 프로세서
US6078983A (en) Multiprocessor system having distinct data bus and address bus arbiters
US5870625A (en) Non-blocking memory write/read mechanism by combining two pending commands write and read in buffer and executing the combined command in advance of other pending command
JP2547424B2 (ja) デジタルデータ処理システム
CA1300280C (en) Central processor unit for digital data processing system including write buffer management mechanism
US6453388B1 (en) Computer system having a bus interface unit for prefetching data from system memory
JPS6327738B2 (ja)
JPS6118222B2 (ja)
EP0303648B1 (en) Central processor unit for digital data processing system including cache management mechanism
US5091845A (en) System for controlling the storage of information in a cache memory
EP0427023B1 (en) Data transmission control apparatus for parallel processing system
US5226170A (en) Interface between processor and special instruction processor in digital data processing system
JPH06309230A (ja) バススヌ−プ方法
US6883077B2 (en) Cache control device and method with TLB search before key receipt
US5895496A (en) System for an method of efficiently controlling memory accesses in a multiprocessor computer system
US5459852A (en) Cache bypass system with simultaneous initial transfer of target data to both processor and cache
KR920004401B1 (ko) 디지탈 데이타 프로세싱 시스템내의 프로세서와 특수명령 프로세서간의 인터페이스
US5185879A (en) Cache system and control method therefor
US5943509A (en) Small size inter-processor data transfer system
US5696938A (en) Computer system permitting mulitple write buffer read-arounds and method therefor
JPS62224846A (ja) メモリ制御装置
EP0169909B1 (en) Auxiliary memory device
JP2002024007A (ja) プロセッサシステム
USRE38514E1 (en) System for and method of efficiently controlling memory accesses in a multiprocessor computer system
US5276892A (en) Destination control logic for arithmetic and logic unit for digital data processor