JPS6126702B2 - - Google Patents

Info

Publication number
JPS6126702B2
JPS6126702B2 JP56126581A JP12658181A JPS6126702B2 JP S6126702 B2 JPS6126702 B2 JP S6126702B2 JP 56126581 A JP56126581 A JP 56126581A JP 12658181 A JP12658181 A JP 12658181A JP S6126702 B2 JPS6126702 B2 JP S6126702B2
Authority
JP
Japan
Prior art keywords
address
cache memory
operand
instruction
circuit
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
Application number
JP56126581A
Other languages
English (en)
Other versions
JPS5829187A (ja
Inventor
Hiroyuki Nishimura
Mikya Akagi
Hideki Nishimura
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
Nippon Electric Co 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP56126581A priority Critical patent/JPS5829187A/ja
Priority to US06/294,121 priority patent/US4467414A/en
Priority to FR8116082A priority patent/FR2489021B1/fr
Publication of JPS5829187A publication Critical patent/JPS5829187A/ja
Publication of JPS6126702B2 publication Critical patent/JPS6126702B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0846Cache with multiple tag or data arrays being simultaneously accessible
    • G06F12/0848Partitioned cache, e.g. separate instruction and operand caches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824Operand accessing
    • G06F9/3834Maintaining memory consistency

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 本発明は中央処理装置(以下、CPUと呼ぶ)
及び主記憶装置の間に設けられるキヤツシユメモ
リ及びこのキヤツシユメモリを制御する制御回路
とを含むキヤツシユメモリ制御装置に関する。
一般に、この種のキヤツシユメモリ制御装置を
有する情報処理装置は主記憶装置に記憶されてい
る情報の一部を一時的に記憶し、主記憶装置に代
りそれよりも高速でCPUとの間で情報の授受を
行なうキヤツシユメモリを用いることにより、高
速で情報を処理することができる。また、処理速
度をより向上させるために、この形式の情報処理
装置ではパイプライン制御によつて各命令を処理
している。
従来、キヤツシユメモリを有する情報処理装置
として、オペランド用キヤツシユメモリと命令用
のキヤツシユメモリとを設け、CPUからの要求
がオペランドの読み出しのときにはオペランド用
キヤツシユメモリから読み出しを行ない、他方、
CPUからの要求が命令のときには、命令用キヤ
ツシユメモリから読み出しを行なう情報処理装置
が提案されている。
オペランド読出し要求と命令読出し要求とが競
合するような場合に、この提案に係る情報処理装
置は各要求をオペランド用及び命令用のキヤツシ
ユメモリに分散して出すことができるため、前述
した要求の競合を回避することができる。しかし
ながら、パイプライン制御を行なう情報処理装置
では、命令読み出し要求とオペランド読み出し要
求とが競合するだけでなく、格納要求と命令又は
オペランド読み出し要求とがキヤツシユメモリに
おいて競合することをも考慮しておく必要があ
る。
このように、格納要求と読み出し要求とが競合
する場合に対する対策として、本発明者等は複数
のエントリを有するキヤツシユストアバツフア回
路をオペランド用及び命令用キヤツシユメモリに
それぞれ対応して一組ずつ設けたキヤツシユメモ
リ制御装置を提案した(特願昭55−118627号)。
この形式のキヤツシユメモリ制御装置は2組のキ
ヤツシユバツフアストア回路を用いるため、命令
に対する格納要求及びオペランドに対する格納要
求とを独立に処理できるという利点を備えている
反面、ハードウエアが多くなるという欠点をも有
している。
また、通常プログラムは論理アドレスを用いて
書かれているため、キヤツシユメモリ制御装置で
は、この論理アドレスを実アドレスに変換するア
ドレス変換器が必要である。しかしながら、前述
した特許出願では、キヤツシユストアバツフア回
路を有するキヤツシユメモリ制御装置に適したア
ドレス変換器について何等考慮されていない。
本発明の目的は格納要求と読み出し要求との競
合並びにオペランド読み出し要求と命令読出し要
求との競合をも防止できるキヤツシユメモリ制御
装置を提供することである。
本発明の他の目的はハードウエアが少なく、し
たがつて、経済的なキヤツシユメモリ制御装置を
提供することである。
本発明のより他の目的は格納要求と読み出し要
求との競合を防止できる形式のキヤツシユメモリ
制御装置に適したアドレス変換器を提供すること
である。
以下、図面を参照して、本発明の実施例を説明
する。
第1図を参照すると、本発明の一実施例に係る
キヤツシユメモリ制御装置は中央処理装置(以
下、CPUと略称)11と主記憶装置12との間
に設けられている。このキヤツシユメモリ制御装
置はオペランド用及び命令用の第1及び第2のキ
ヤツシユメモリ30及び31と、各キヤツシユメ
モリ30及び31を制御するための第1及び第2
のキヤツシユメモリ制御回路20及び21とをそ
れぞれ備えている。CPU11はある命令のオペ
ランドアドレスの計算がすむと、このオペランド
アドレスをオペランドアドレス出力ライン24を
介して出力する。更に、CPU11はこのライン
24を介して制御情報もともに出力し、この命令
が演算結果をあるメモリアドレスに格納するよう
な種類の命令である場合には、出力されたオペラ
ンドアドレスはアドレスバツフア回路40に格納
される。また、アドレスバツフア回路40に格納
されたメモリアドレスに格納すべき演算結果のデ
ータが得られると、CPU11は制御情報と共に
それをストアデータ出力ライン26を介して出力
し、該データはオペランドとしてデータバツフア
回路50に格納される。前記バツフア回路40,
50は、ともに同じ深さをもつ先入れ先出制御
(FIFO)のバツフア回路で構成されている。前
記メモリアドレスとそれに対応するデータとは、
前記バツフア回路40及び50の対応する場所
(同じバツフアアドレス)に格納される(すなわ
ち回路40に格納されたメモリアドレスに対応す
るデータは回路50の対応するバツフアアドレス
に格納される)。バツフア回路40の中に格納さ
れているすべての内容(前記メモリアドレス)
は、それぞれからのアドレス比較ライン70を介
し、それぞれ第1及び第2のアドレス一致検出回
路60及び61のそれぞれの一方の入力端子に供
給されている。
第1のアドレス一致検出回路60のもう一方の
入力は、CPU11がオペランドをメモリアドレ
スから読み出すための読出し要求を出す場合にそ
のメモリアドレスが供給され、かくして、前記ア
ドレスバツフア回路40の中に格納されている前
記いずれかのメモリアドレスと前記読出し要求メ
モリアドレスとが一致した場合には、前記第1の
アドレス一致検出回路60は一致検出信号を第1
及び第2のキヤツシユメモリ制御回路20及び2
1に与える。第1のアドレス一致検出回路60か
ら一致検出信号を受信すると、第1のキヤツシユ
メモリ制御回路20は動作状態となり、他方、第
2のキヤツシユメモリ制御回路21は不動作状態
になる。また、前記第2の一致検出回路61のも
う一方の入力には、CPU11が命令をメモリア
ドレスから読み出す要求を出す場合に、読み出す
べき命令のメモリアドレスが供給され、もしこの
メモリアドレスが前記アドレスバツフア回路40
に格納されているいずれかのメモリアドレスと一
致する場合には第2のアドレス一致検出回路61
は一致検出信号を第2及び第1のキヤツシユメモ
リ制御回路21及び20に与える。この場合、第
2のキヤツシユメモリ制御回路21が動作状態と
なり、第1のキヤツシユメモリ制御回路20は不
動作となる。
これらの一致検出信号が与えられた場合の前記
回路20及び21の動作については後述すること
にして、最初は、これらの一致検出信号がない場
合の動作について説明する。
さて、前記アドレスバツフア回路40からのバ
ツフア格納要求情報とその出力とは、アドレスバ
ツフア出力ライン80を介し、前記第1及び第2
のキヤツシユメモリ制御回路20及び21に供給
されている。ここで、メモリアドレスに演算結果
のデータを格納するような型の命令が現われた場
合には、その命令のしかるべきステツプにおい
て、メモリアドレスは前記アドレスバツフア回路
40に、また、演算結果のデータは前記回路50
にそれぞれ遅滞なく格納され、従来の装置で見ら
れるような読出し及び格納のためのメモリアクセ
スの競合によつておこるパイプラインの流れの乱
れを回避することができる。こうして前記バツフ
ア回路40及び50に内容が格納されると、前記
アドレスバツフア回路40はバツフア格納要求情
報を前記出力ライン80を介してそれぞれの前記
第1及び第2のキヤツシユメモリ制御回路20及
び21に供給する。
一方、第1のキヤツシユメモリ制御回路20
は、前記出力ライン24を介して、CPU11か
らある命令のオペランド読出し要求を受け、その
とき、前記一致検出信号が無い場合には、この読
出し要求を前記回路40からのバツフア格納要求
に優先して受付ける。この場合、前記バツフア回
路40及び50はCPU11からの格納要求に応
じて格納すべきデータを一時格納することができ
るので、その結果、第1のキヤツシユメモリ制御
回路20はCPU11からの格納要求をバツフア
回路40及び50で保留して、読出し要求を優先
して受付けることが可能である。従つて、CPU
11からの読出し要求と格納要求とが競合したと
しても、パイプラインの流れの乱れを回避するこ
とができる。こうして読出し要求を受付けると、
前記回路20は、前記ライン24を介して供給さ
れるメモリアドレスのデータを、第1のキヤツシ
ユメモリ30から読み出しCPU11に供給する
(このとき指定されたメモリアドレスが前記キヤ
ツシユメモリ30に有効に存在しない場合には、
前記回路20は、そのメモリアドレスのデータを
含むブロツクを主記憶装置12から読み出し前記
第1のキヤツシユメモリ30に格納し、それとと
もに、指定されたメモリアドレスのデータを
CPU11に供給するように制御する)。
CPU11から前記読出し要求がなく、前記ア
ドレスバツフア回路40からの前記格納要求があ
る場合には、前記第1のキヤツシユメモリ制御回
路20は、この格納要求を受付け、前記ライン8
0を介して読み出されるアドレスデータで指定さ
れる、前記第1のキヤツシユメモリ30のメモリ
アドレスに、このアドレスデータに対応する、前
記回路50に格納されているデータを1つ読み出
して格納する。このとき、もし前記第1のキヤツ
シユメモリ30の中に、このメモリアドレスが有
効に存在しない場合には、これらのデータは前記
バツフア回路40及び50から読み捨てられるだ
けでよい。それは下記の理による。
すなわち、特に図示していないが、主記憶装置
12には前記アドレスバツフア回路40及び前記
データバツフア50と同じ深さをもちそれぞれと
全く同じ内容が書き込まれるアドレスバツフア回
路および、データバツフア回路が別に設けられて
おり、前記メモリアドレスに格納すべきデータ
は、現在説明しているキヤツシユメモリ(オペラ
ンド用キヤツシユメモリ30及び命令用キヤツシ
ユメモリ31)への格納処理と全く独立して、主
記憶装置12への格納処理が別になされるように
なつているからである。すなわち、前記回路40
及び回路50に一時格納されているデータは、も
ともと主記憶装置12の指定されたメモリアドレ
スに書き込むためのデータであり、上述の主記憶
装置12内のアドレスバツフア回路とデータバツ
フア回路とは、主記憶装置12に対する他回路か
らのアクセスの空き時間を利用して、前記データ
を主記憶装置12に格納するために、そのデータ
を一時格納しておくバツフアである。このよう
に、主記憶装置12への格納に対しては、独立し
たルートが別に設けられているので、前記第1の
キヤツシユメモリ30に格納すべきメモリアドレ
スが有効に存在しない場合には、とくにこれに対
して特別な処理を行なう必要はない。
さて、第1のキヤツシユメモリ30に対するの
と全く同じ形の処理が第2のキヤツシユメモリ3
1に対しても行なわれる。すなわち、アドレスバ
ツフア回路40は、自分がデータをもつている場
合には、前記バツフア出力ライン80を介して格
納要求を第2のキヤツシユメモリ制御回路21に
も与える。前記回路21は、もう一方では、
CPU11から命令読出し要求ライン28を介
し、命令読出し要求を受けている。この要求が受
付けられ、かつ、前記第2のアドレス一致検出回
路61からの一致検出信号がない場合には、前記
回路21は、前記ライン28で指定されるメモリ
アドレスの内容を第2のキヤツシユメモリ31か
ら読み出してCPU11に供給する(このとき、
もし指定されたメモリアドレスのデータが前記キ
ヤツシユメモリ31に有効に存在しない場合に
は、主記憶装置12から読み出して供給するが、
その方法は前述の第1のキヤツシユメモリ30の
場合と同様である)。CPU11から命令読出しの
要求がなく、前記回路40からの格納要求がある
場合には、前記回路21は、前記回路40から格
納すべきメモリアドレスを読み出し、もしそのメ
モリアドレスが前記第2のキヤツシユメモリ31
に有効に存在する場合には、該メモリアドレスの
データを、データバツフア回路50から読み出し
たデータによつて書き換える。しかし、もし前記
格納すべきメモリアドレスが前記キヤツシユメモ
リ31に有効に存在しない場合には、前述した通
り、前記バツフア回路40及び50の対応するデ
ータを1つ読み捨てるだけとする。
さて、以上は前記アドレス一致検出回路60及
び61からの一致検出信号が存在しない場合の動
作であるが、何れかの一致検出信号がある場合に
は下記のようになる。
今、前述のようにCPU11からのオペランド
読出し要求があり、そのオペランドのメモリアド
レスが、アドレスバツフア回路40の中に格納さ
れているあるデータ(アドレス)と一致したとす
ると、第1の一致検出回路60は一致検出信号を
第1及び第2のキヤツシユメモリ制御回路20及
び21に与える。これを受けると前記回路20は
前記回路40からの格納要求を優先して受付け、
前記一致がおこつたアドレスまでの前記回路40
に格納されているアドレスと前記回路50の中に
格納されている対応するデータとを順次(FIFO
制御で)読み出し、前者で指定されるメモリアド
レスに後者のデータを格納する。この場合に、も
し指定されたあるメモリアドレスがキヤツシユメ
モリ30の中に有効に存在しない場合には、前述
のようにそのメモリアドレスに対応するデータは
読み捨てるだけでよい。こうして一致が起つたメ
モリアドレスまでの格納要求を処理してから前記
回路20は前記CPU11からの読出し要求を受
付ける。このように制御することによつて、先行
命令が第1のキヤツシユメモリ30のあるメモリ
アドレスを更新する場合に、後続命令が該メモリ
アドレスのデータをオペランドとして使用するよ
うな事態が発生すると、オペランドの先取りや格
納すべきデータの一時保留等の動作に関係なく後
続命令は必ず先行命令によつて更新されたデータ
をオペランドとして使用することになるので誤動
作を起すことがない。
この場合、第2のキヤツシユメモリ制御回路2
1にも第1のアドレス一致検出回路60からの一
致検出信号が送られるが、第2のキヤツシユメモ
リ制御回路21は第1のアドレス一致検出回路6
0からの入力であることを識別して動作を停止す
る。
同様に、CPU11が命令読出し要求ライン2
8を介して命令の読出し要求を行ない、この命令
を読み出すべき指定されたメモリアドレスが、ア
ドレスバツフア回路40に格納されているいずれ
かのデータと一致した場合には、第2のアドレス
一致検出回路61は一致検出信号を第2及び第1
のキヤツシユメモリ制御回路21及び20に与え
る。これを受けると前記回路21は前記回路41
からの格納要求を優先して受付け、前記一致が起
つたアドレスまでの前記回路40に格納されてい
るアドレスと前記回路50の中に格納されている
対応するデータとを順次(FIFO制御で)読み出
し、第2のキヤツシユメモリ31の前者で指定さ
れるメモリアドレスに後者のデータを格納する。
この場合に、もし指定されたあるメモリアドレス
がキヤツシユメモリ31の中に有効に存在しない
場合には、前述のように、そのメモリアドレスに
対応するデータを読み捨てるだけにする。こうし
て、一致が起つたメモリアドレスまでの前記回路
40からの格納要求を処理してから、前記回路2
1は前記CPU11からの命令読出し要求を受付
ける。このように制御することにより、第2のキ
ヤツシユメモリ31のあるメモリアドレスを更新
する命令のすぐあとで、CPU11が該メモリア
ドレスのデータ(命令)を命令として読み出すよ
うな場合に、キヤツシユメモリ31に格納すべき
命令を一時保留し前記回路40及び50に格納し
ておくという処理があるにもかかわらず、必ず先
行命令で更新された命令が命令用キヤツシユメモ
リ31より読み出されてCPU11に供給される
ことになるので誤動作を起すことがない。
また、この場合にも、前記回路20にも前記一
致検出信号が送られるので、前記回路20は第1
のアドレス一致検出回路60で一致検出信号が検
出された時と同様に動作を停止する。
また、上の実施例では、一致検出回路60また
は61で一致が検出された場合に、その一致が検
出されたアドレスに対応するデータまでを他に優
先してFIFOでキヤツシユメモリ30または31
に書き込むように制御したが、このかわりに、一
致が起つたアドレスのデータだけを他に優先して
キヤツシユメモリに書き込むように制御すること
もできる。このような制御により、処理速度を更
に改善することができる。
第2図及び第3図を参照すると、本発明の第2
の実施例に係るキヤツシユメモリ制御回路はオペ
ランドの読出し要求及び格納要求に付随するアド
レス情報として、論理アドレスが与えられる情報
処理システムに適用される。このため、この実施
例は、第2図に示すように、CPU11からの論
理アドレスを実アドレスに変換するアドレス変換
回路90を備えている。一般に、命令読出し要求
に伴なうアドレスも論理アドレスの形で与えられ
るから、第2のキヤツシユメモリ制御回路21に
もアドレス変換回路を接続する必要があるが、説
明を簡略化するために、ここでは省略している。
尚、第2のアドレス一致検出回路61には、論理
アドレスのままで、命令読出し要求に伴なうアド
レスが与えられている。
また、図示されたアドレス変換回路90は単に
論理アドレスを実アドレスに変換するだけでな
く、後述するように、論理アドレスの一部又は全
部をアドレスバツフア回路40及び第1のアドレ
ス一致検出回路60に送出する機能を有し、他
方、アドレスバツフア回路40は実アドレスだけ
でなく論理アドレスをも格納する機能を有してい
る。ここで、第1及び第2のアドレス一致検出回
路60及び61はアドレスバツフア回路40内に
格納されているアドレスと読出し要求に伴なうア
ドレスとを論理アドレスの形で比較する。このよ
うに、この実施例では、アドレスバツフア回路4
0内のアドレスを実アドレスに変換することな
く、アドレス比較を行なつているため、迅速に一
致及び不一致を検出できる。
第3図を参照して、第2図に示されたアドレス
変換回路90を第1のキヤツシユメモリ制御回路
20、第1のキヤツシユメモリ30、アドレスバ
ツフア回路50、及び第1のアドレス一致検出回
路60に関連して説明する。尚、読出要求及びス
トア要求は図示しないCPU11内の回路で識別
されるものとする。
CPU11からの読出要求及びストア要求に付
随する論理アドレスはアドレス変換回路90内の
論理アドレスレジスタ91(略称LAR)にセツ
トされる。LARにセツトされた論理アドレスは
アドレス変換KEY部92を牽引し論理アドレス
から実アドレスへの対応が登録されているか否か
をチエツクする。前記アドレス変換KEY部
(TLB―KEY部)92に登録されていれば対応す
るアドレス変換データ部(TLB―DATA部)9
3に実ページアドレスが登録されており切換回路
27ではTLB―DATA部の出力が切換回路28
ではLARのページ内アドレスがそれぞれ選択さ
れ実アドレスが得られ物理アドレスレジスタ26
(略称PAR)にセツトされる。前記TLB―KEY部
92に前記論理アドレスが登録されていない場
合、アドレス変換を行なつてその結果が前記
TLB―KEY部92、TLB―DATA部93に登録
される。このアドレス変換アルゴリズムは公知で
あるので、ここでは説明を省く。
CPU11からストア要求があつた場合、前記
アドレス変換回路90から実アドレスを得てアド
レスバツフア回路40内の実アドレス部(略称
STB―RA)45に格納される。同じタイミング
で前記LAR91にセツトされている論理アドレ
スは前記アドレスバツフア回路40内の論理アド
レス部(略称STB―LA)42に格納される。本
実施例では前記回路40はFIFOに構成されてい
る。前記CPU11からストアデータがデータバ
ツフア回路50に与えられると前記CPU11に
対するストア動作は完了したとみなすが、CPU
11はパイプラインによる先行制御を行なつてい
る為、ストア用アドレスはストアデータとは独立
に前記回路40に格納される。
読出動作の場合、前記アドレス変換回路90か
ら実アドレスを得ると共に、それと並行して前記
キヤツシユメモリ制御回路20内のキヤツシユメ
モリ用のデイレクトリであるアドレスアレイ23
を索引してオペランド用キヤツシユメモリ30に
所望のデータを含む1ブロツクが登録されている
か否かを比較回路24により調べその結果をアド
レスアレイヒツトレジスタ25(略称AHR)に
セツトする。通常バツフアメモリに登録されてい
る場合、FOUND BLOCK(略称FDB)といい、
登録されていない場合、NOT FOUND BLOCK
(略称NFB)という。前記CPU11からオペラン
ド読出要求があると、前記LAR91にその読出
要求論理アドレスがセツトされる。
一方、前記LAR91の全アドレス情報または
一部は、第1のアドレス一致検出回路60内のn
個の比較回路62に接続され前記STB―LA42
に登録されているストア論理アドレスの全部また
は一部と比較され、所望のデータが前記回路50
に格納されているか否かを検出し、その結果をス
トアバツフアヒツトレジスタ63(略称SHR)
にセツトし、該SHR63からは一致検出信号が
切換回路46及び前記回路20に送られ、前記
LAR91にセツトされた読出要求に伴なうアド
レス情報は一時的に止められ、前記STB―RA4
5のアドレス情報が前記回路20内のストアバツ
フア出力アドレスレジスタ(SAR)29に送ら
れ前記切換回路28を介して前記AA23を索引
し対応するブロツクアドレスがAA23に登録さ
れていれば前記AHR24から前記回路30内の
データアレイ32に前記回路50からのストアデ
ータが前記PAR26で示されるアドレスにスト
アすべく指示が出される。かくして前記回路50
に格納されているストアデータが全てまたは、前
記回路60で一致信号が検出されたSTB―LA内
のストアアドレスに対応するストアデータが前記
DA32にストアされた後、前記LAR91で一時
的に止められた読出要求論理アドレスが前記
TLB―KEY部92,TLB―DATA部93、比較
回路94、ゲート回路95を通して前記PAR2
6にセツトされ、所望のデータが前記AA23に
登録されていれば前記DA32から前記PAR26
と前記AHR25で示される所望データがゲート
33を介して読み出され前記切換回路46を介し
て前記CPU11に送られる。
本実施例では特にストアバツフアとAAを並列
索引していてAAの索引結果をレジスタAHRにセ
ツトしている為、ストアバツフアの索引を論理ア
ドレスで行なう長所が生まれる。すなわちストア
バツフアの索引の結果はレジスタSHRにセツト
されていてストアバツフア及びバツフアメモリの
データの有無をレジスタ(フリツプフロツプから
構成される)の出力で直接判断できる為、ハード
ウエアにとつて論理素子の遅延時間に関し、非常
に有利となり、従つて制御もやりやすくなる。
ところで仮想記憶方式では、異なる論理アドレ
スに対し、同じ実アドレスを割り付けることがあ
る。この場合、1つの論理空間において異なる論
理アドレスが同時に同じ実アドレスを指してはい
けないという条件が必要である。論理空間の切
換、及び主記憶装置のメモリエリアのページイ
ン、ページアウトに際しては、アドレス変換バツ
フアの同期化が必要であり、且つ、書込要求がス
トアバツフアに存在しないことを確認しなければ
ならない。もし、書込要求がストアバツフアに保
持されている場合は、すべての書込要求をストア
バツフアから掃き出して、情報処理装置内で書込
処理が終了した後、論理空間の切換え、及び主記
憶装置のページイン、ページアウトが可能とな
る。これは、本発明にかかわらず通常、行なつて
いることであり、本発明を実施する為の制限とは
ならない。
以上述べたように、本発明によれば、アドレス
バツフア回路とデータバツフア回路を一組設け、
この一組のバツフア回路を別々に設けられたオペ
ランド用キヤツシユメモリと命令用キヤツシユメ
モリとを組み合せた構成を備えている。したがつ
て、本発明では、比較的少ないハードウエアでキ
ヤツシユのヒツト率およびスループツトを高めか
つパイプライン方式の先行制御を行なうCPUを
もつ情報処理装置のパイプラインの流れの乱れに
よる時間損失を改善しかつ先行制御によるオペラ
ンドの先取りや命令の先取りの結果生ずる問題を
解決したキヤツシユメモリ制御装置を提供するこ
とができる。これにより情報処理装置の処理効率
が改善できるという効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例に係るキヤツシユメ
モリ制御装置のブロツク図、第2図は本発明の他
の実施例に係るキヤツシユメモリ制御装置のブロ
ツク図、及び第3図は第2図の実施例で使用され
るアドレス変換器のブロツク図である。 第1図において、11…中央処理装置
(CPU)、24…オペランドアドレス出力ライ
ン、26…ストアデータ出力ライン、12…主記
憶装置、28…命令読出し要求ライン、20…オ
ペランド用キヤツシユメモリ制御回路、21…命
令用キヤツシユメモリ制御回路、30…オペラン
ド用キヤツシユメモリ、31…命令用キヤツシユ
メモリ、40…アドレスバツフア回路、50…デ
ータバツフア回路、60…第1のアドレス一致検
出回路、61…第2のアドレス一致検出回路、7
0…アドレス比較ライン、80…アドレスバツフ
ア出力ライン、90…アドレス変換回路、92…
TLB KEY部、93…TLBデータ部、23…アド
レスアレイ 略称AA、32…データアレイ 略
称DA、42…ストアバツフアの論理アドレス部
略称STB―LA、45…ストアバツフアの実ア
ドレス部 略称STB―RA、91…論理アドレス
レジスタ 略称LAR、26…物理アドレスレジ
スタ 略称PAR、29…ストアバツフア出力ア
ドレスレジスタ略称SAR、25…アドレスアレ
イヒツトレジスタ 略称AHR、63…ストアバ
ツフアヒツトレジスタ 略称SHR、94…比較
回路、24…比較回路、62…比較回路、27…
切換回路1、28…切換回路2、46…切換回路
3、95…ANDゲート、33…ANDゲート。

Claims (1)

    【特許請求の範囲】
  1. 1 主記憶装置と中央処理装置との間に設けられ
    たキヤツシユメモリ制御装置において、前記主記
    憶装置に記憶されている命令情報の一部を一時的
    に記憶し、前記主記憶装置の代りに、前記中央処
    理装置との間で命令情報の授受を行なう命令用キ
    ヤツシユメモリと;前記主記憶装置に記憶されて
    いるオペランド情報の一部を一時的に記憶し、前
    記主記憶装置の代りに、前記中央処理装置との間
    でオペランド情報の授受を行なうオペランド用キ
    ヤツシユメモリと;前記中央処理装置から前記主
    記憶装置へのストア要求に応答して、前記ストア
    要求に伴なうストアアドレス情報とストアデータ
    情報とをそれぞれ独立に受け取り一時的に記憶
    し、出力すべきストアアドレス情報とストアデー
    タ情報とが揃うと、前記命令用キヤツシユメモ
    リ、前記オペランド用キヤツシユメモリ、前記主
    記憶装置にバツフアストア要求を発生するキヤツ
    シユストアバツフア回路と;前記中央処理装置及
    び前記キヤツシユストアバツフア回路とに結合さ
    れ、前記中央処理装置からの命令読出し要求アド
    レス情報と前記キヤツシユストアバツフア回路に
    一時的に記憶されている全てのアドレス情報とを
    比較し、一致したアドレスが検出されると、命令
    アドレス一致検出情報を発生する命令アドレス一
    致検出回路と;前記中央処理装置に結合されると
    共に、前記キヤツシユストアバツフア回路に前記
    命令アドレス一致検出回路と共通に結合され、前
    記中央処理装置からのオペランド読出し要求アド
    レス情報と前記キヤツシユストアバツフア回路に
    一時的に記憶されている全てのアドレスが検出さ
    れると、オペランドアドレス一致検出情報を発生
    するオペランドアドレス一致検出回路と;前記中
    央処理装置、前記主記憶装置、前記命令用キヤツ
    シユメモリ、及び前記キヤツシユストアバツフア
    回路とに結合された命令用キヤツシユメモリ制御
    部;及び前記中央処理装置、前記主記憶装置、前
    記オペランド用キヤツシユメモリ及び前記キヤツ
    シユストアバツフア回路とに結合されたオペラン
    ド用キヤツシユメモリ制御部と;を備え、前記命
    令用キヤツシユメモリ制御部は前記中央処理装置
    からの命令読出し要求に応答して前記命令用キヤ
    ツシユメモリにその要求アドレスが存在するか否
    かをチエツクし、要求アドレスがあれば該命令用
    キヤツシユメモリから要求アドレスの命令情報を
    読み出し、要求アドレスがなければ前記主記憶装
    置から前記要求アドレスの命令情報を読み出し前
    記命令用キヤツシユメモリに記憶するよう制御
    し、前記キヤツシユストアバツフア回路からのス
    トア要求に応答して前記命令用キヤツシユメモリ
    に該ストアアドレスが存在するか否かをチエツク
    し要求アドレスがあれば前記ストアバツフア回路
    からのストア情報を該命令用キヤツシユメモリの
    要求アドレスにストアするよう制御し、前記命令
    アドレス一致検出情報が発生した場合、前記オペ
    ランド用キヤツシユメモリ制御回路を停止させた
    状態で前記キヤツシユストアバツフア回路からの
    ストア要求を優先して処理するように制御し、前
    記オペランド用キヤツシユメモリ制御部は前記中
    央処理装置からのオペランド読出し要求に応答し
    て前記オペランド用キヤツシユメモリにその要求
    アドレスが存在するか否かをチエツクし要求アド
    レスがあれば該オペランド用キヤツシユメモリか
    ら要求アドレスのオペランド情報を読み出し要求
    アドレスがなければ前記主記憶装置から前記要求
    アドレスのオペランド情報を読み出し前記オペラ
    ンド用キヤツシユメモリに記憶するよう制御し、
    前記キヤツシユストアバツフア回路からのストア
    要求に応答して前記オペランド用キヤツシユメモ
    リに該ストアアドレスが存在するか否かをチエツ
    クし要求アドレスがあれば前記ストアバツフア回
    路からのストア情報を該オペランド用キヤツシユ
    メモリの要求アドレスにストアするよう制御し、
    前記オペランドアドレス一致検出情報が発生した
    場合、前記命令用キヤツシユメモリ制御回路を停
    止させた状態では前記キヤツシユストアバツフア
    回路からのストア要求を優先して処理するように
    制御することを特徴とするキヤツシユメモリ制御
    装置。
JP56126581A 1980-08-22 1981-08-14 キヤツシユメモリ制御装置 Granted JPS5829187A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP56126581A JPS5829187A (ja) 1981-08-14 1981-08-14 キヤツシユメモリ制御装置
US06/294,121 US4467414A (en) 1980-08-22 1981-08-19 Cashe memory arrangement comprising a cashe buffer in combination with a pair of cache memories
FR8116082A FR2489021B1 (fr) 1980-08-22 1981-08-21 Agencement d'antememoires comprenant une antememoire tampon en combinaison avec une paire d'antememoires

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56126581A JPS5829187A (ja) 1981-08-14 1981-08-14 キヤツシユメモリ制御装置

Publications (2)

Publication Number Publication Date
JPS5829187A JPS5829187A (ja) 1983-02-21
JPS6126702B2 true JPS6126702B2 (ja) 1986-06-21

Family

ID=14938709

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56126581A Granted JPS5829187A (ja) 1980-08-22 1981-08-14 キヤツシユメモリ制御装置

Country Status (1)

Country Link
JP (1) JPS5829187A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63130502U (ja) * 1987-02-18 1988-08-26
JP2530511B2 (ja) * 1990-06-08 1996-09-04 統冶 石谷 構築物における添景物の形成方法

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60123936A (ja) * 1983-12-07 1985-07-02 Fujitsu Ltd バッフア記憶制御方式
JPS60151749A (ja) * 1984-01-18 1985-08-09 Nec Corp 情報処理装置
JPS6116350A (ja) * 1984-07-02 1986-01-24 Nec Corp 情報処理装置のバツフア記憶装置
JPS6149250A (ja) * 1984-08-17 1986-03-11 Fujitsu Ltd バツフア記憶制御方式
JPH0628800B2 (ja) * 1985-04-23 1994-04-20 東芝機械株式会社 溶湯供給装置
JPH0224538Y2 (ja) * 1987-10-20 1990-07-05
DE3802025C1 (ja) * 1988-01-25 1989-07-20 Otto 7750 Konstanz De Mueller
JP3164732B2 (ja) 1994-07-04 2001-05-08 富士通株式会社 データ処理装置
GB2426082B (en) * 2005-05-09 2007-08-15 Sony Comp Entertainment Europe Memory caching in data processing

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63130502U (ja) * 1987-02-18 1988-08-26
JP2530511B2 (ja) * 1990-06-08 1996-09-04 統冶 石谷 構築物における添景物の形成方法

Also Published As

Publication number Publication date
JPS5829187A (ja) 1983-02-21

Similar Documents

Publication Publication Date Title
US5761734A (en) Token-based serialisation of instructions in a multiprocessor system
EP0007003B1 (en) Data processing apparatus including address translation apparatus
JPS6135584B2 (ja)
US6189062B1 (en) Apparatus and method for address translation in bus bridge devices
EP0408058B1 (en) Microprocessor
US20050198441A1 (en) Multiprocessor system
CA2111600C (en) Parallel processing system
JPH0137773B2 (ja)
JPH04306748A (ja) 情報処理装置
US5313602A (en) Multiprocessor system and method of control over order of transfer of data between buffer storages
JPS6126702B2 (ja)
JPH04308953A (ja) 仮想アドレス計算機装置
KR101413787B1 (ko) 정보 처리 시스템 및 시스템 컨트롤러
US6480940B1 (en) Method of controlling cache memory in multiprocessor system and the multiprocessor system based on detection of predetermined software module
JPS6022376B2 (ja) キャッシュメモリ制御装置
US5790892A (en) Information handling system for modifying coherency response set to allow intervention of a read command so that the intervention is not allowed by the system memory
KR100274450B1 (ko) 로컬버스의 트랜잭션 지연 제어방법 및 장치
JPS6138503B2 (ja)
JP3226557B2 (ja) マルチプロセッサシステム
JPH04353949A (ja) キャッシュメモリ制御方式
JPH0471046A (ja) 共有メモリの部分書込み制御方式
JPS61239339A (ja) ペ−ジ・デ−タ転送制御方式
JPH02101552A (ja) アドレス変換バッファ処理方式
JPS5842546B2 (ja) ストア制御方式
JPH08166905A (ja) キャッシュメモリ制御方法