JPH01199250A - データ処理装置 - Google Patents
データ処理装置Info
- Publication number
- JPH01199250A JPH01199250A JP63248840A JP24884088A JPH01199250A JP H01199250 A JPH01199250 A JP H01199250A JP 63248840 A JP63248840 A JP 63248840A JP 24884088 A JP24884088 A JP 24884088A JP H01199250 A JPH01199250 A JP H01199250A
- Authority
- JP
- Japan
- Prior art keywords
- buffer
- address
- array
- accessed
- processing 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.)
- Granted
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、データ処理装置に関し、特に、バッファ記憶
を備え、命令処理装置がバッファ記憶を用いてデータを
効率よくアクセスし、主記憶装置に格納しているデータ
を効率よく処理できるようにしたデータ処理装置に関す
るものである。
を備え、命令処理装置がバッファ記憶を用いてデータを
効率よくアクセスし、主記憶装置に格納しているデータ
を効率よく処理できるようにしたデータ処理装置に関す
るものである。
データ処理装置は、データ、プログラム等を記憶する主
記憶装装置と、プログラムに従いデータを処理する命令
処理装置と、データ、プログラム等の入出力を行う入出
力処理装置から構成されている。命令処理装置は、主記
憶装置に格納されているデータを利用してデータ処理を
進めるが、この場合に、データを効率よくアクセスして
処理が進められるように、バッファ記憶が備えられる。
記憶装装置と、プログラムに従いデータを処理する命令
処理装置と、データ、プログラム等の入出力を行う入出
力処理装置から構成されている。命令処理装置は、主記
憶装置に格納されているデータを利用してデータ処理を
進めるが、この場合に、データを効率よくアクセスして
処理が進められるように、バッファ記憶が備えられる。
このバッファ記憶は、主記憶装置の実効的なアクセス時
間を短縮し、命令処理装置の処理能力を向上させるため
の小容量の高速の記憶装置である。データ処理を進める
場合に、主記憶装置の中の使用頻度が高いデータがバッ
ファ記憶に残されるように制御され1時間がかかる主記
憶装置のアクセス回数を減少させる。
間を短縮し、命令処理装置の処理能力を向上させるため
の小容量の高速の記憶装置である。データ処理を進める
場合に、主記憶装置の中の使用頻度が高いデータがバッ
ファ記憶に残されるように制御され1時間がかかる主記
憶装置のアクセス回数を減少させる。
このようなバッファ記憶を用いたデータ処理装置の一例
として、特開昭56−140575号公報に記載された
ようなキャッシュ記憶システムがある。このキャッシュ
記憶システムでは、バッファ記憶を用いた仮想記憶方式
のデータ処理装置である仮想記憶システムにおけるキャ
ッシュ記憶のシノニム(Synonym)の検出および
処理機構を開示している。ここでのシノニムとは、仮想
記憶システムにおいて、同一の物理アドレスに対応する
複数の論理アドレスのページのデータブロックのことで
ある。シノニムは、例えば、実記憶上のあるページを、
仮想記憶上で1つのユーザの仮想空間から別のユーザの
仮想空間への割り当てを変更することにより引き起こさ
れて発生する。すなわち、バッファ記憶をアクセスする
アドレスとして、論理アドレスを使う場合に、ページン
グ処理によって、主記憶の同一実アドレスが異なる論理
アドレスに割当てられることにより発生する。
として、特開昭56−140575号公報に記載された
ようなキャッシュ記憶システムがある。このキャッシュ
記憶システムでは、バッファ記憶を用いた仮想記憶方式
のデータ処理装置である仮想記憶システムにおけるキャ
ッシュ記憶のシノニム(Synonym)の検出および
処理機構を開示している。ここでのシノニムとは、仮想
記憶システムにおいて、同一の物理アドレスに対応する
複数の論理アドレスのページのデータブロックのことで
ある。シノニムは、例えば、実記憶上のあるページを、
仮想記憶上で1つのユーザの仮想空間から別のユーザの
仮想空間への割り当てを変更することにより引き起こさ
れて発生する。すなわち、バッファ記憶をアクセスする
アドレスとして、論理アドレスを使う場合に、ページン
グ処理によって、主記憶の同一実アドレスが異なる論理
アドレスに割当てられることにより発生する。
このように、バッファ記憶をアクセスする上の問題点の
1つとして、仮想記憶システムにおけるシノニムという
問題がある。命令処理装置において、論理アドレスを用
いてバッファ記憶をアクセスする場合に、シノニムの制
御を効率よく処理しないと、バッファ記憶を効率よくア
クセスできないことになる。
1つとして、仮想記憶システムにおけるシノニムという
問題がある。命令処理装置において、論理アドレスを用
いてバッファ記憶をアクセスする場合に、シノニムの制
御を効率よく処理しないと、バッファ記憶を効率よくア
クセスできないことになる。
命令処理装置においては、バッファ記憶を論理アドレス
でアクセスするための処理要素として、主記憶上のデー
タをブロック単位で記憶するバッファ記憶(B S :
Buffer Strage)と、アクセスする論理
アドレスを物理アドレスに変換するアドレス変換バッフ
ァ (T’L B : Translation Lo
okasideBuffer)と、バッファ記憶に登録
されているデータブロックのアドレスタグ(Addre
ss Tag)をエントリとして登録するバッファアド
レスアレイ(BA A : Buffer Addre
ss Array)とが備えられる。
でアクセスするための処理要素として、主記憶上のデー
タをブロック単位で記憶するバッファ記憶(B S :
Buffer Strage)と、アクセスする論理
アドレスを物理アドレスに変換するアドレス変換バッフ
ァ (T’L B : Translation Lo
okasideBuffer)と、バッファ記憶に登録
されているデータブロックのアドレスタグ(Addre
ss Tag)をエントリとして登録するバッファアド
レスアレイ(BA A : Buffer Addre
ss Array)とが備えられる。
バッファ記憶を高速にアクセスするには、上記3つの処
理要素を並列に動作させてアクセス処理する並列アクセ
ス方式が用い、与えられたアクセスする論理アドレスよ
りバッファ記憶をアクセスする。
理要素を並列に動作させてアクセス処理する並列アクセ
ス方式が用い、与えられたアクセスする論理アドレスよ
りバッファ記憶をアクセスする。
第7図は、命令処理装置におけるバッファ記憶制御ユニ
ットの要部構成の一例を示すブロック図である。第7図
のバッファ記憶制御ユニットは、並列アクセス方式によ
り高速にバッファ記憶をアクセスするようにした構成例
である。また、ここでは、論理アドレスによりアクセス
を行い、複数の論理アドレスに対応する同一実アドレス
がアクセスされた場合のシノニムを検出し、シノニム検
出によりバッファ記憶の無効化が行われる要部の回路構
成例を示している。
ットの要部構成の一例を示すブロック図である。第7図
のバッファ記憶制御ユニットは、並列アクセス方式によ
り高速にバッファ記憶をアクセスするようにした構成例
である。また、ここでは、論理アドレスによりアクセス
を行い、複数の論理アドレスに対応する同一実アドレス
がアクセスされた場合のシノニムを検出し、シノニム検
出によりバッファ記憶の無効化が行われる要部の回路構
成例を示している。
第7図において、1は32ビツトの論理アドレスレジス
タであり、アクセスすべき論理アドレスが入力される。
タであり、アクセスすべき論理アドレスが入力される。
2はアドレス変換バッファ、3はバッファアドレスアレ
イ、4はバッファ記憶である。バッファ記憶4は、主記
憶からのデータをブロック単位で記憶している0図示す
るように、論理アドレスレジスタ1の32ビツトの論理
アドレスビットは、物理アドレスに変換するアドレス変
換の対象となるビット位置の第0ビツト〜第19ビツト
と、変換を受けないビット位置の第20ビツト〜第32
ビツトに分けられる。また、アドレス変換バッファ(以
下TLBと略称する)2は論理アドレスと物理アドレス
の変換対より構成され、アドレス変換を行う論理アドレ
スの第0ビツト〜第19ビツトを入力すると、対応する
物理アドレスが出力される。バッファアドレスアレイ(
以下BAAと略称する)3は、バッファ記憶(以下BS
と略称する)4のブロック単位で格納しているデータブ
ロックの対応する物理アドレスのアドレスタグを格納し
たメモリであり、40−(ROWO〜ROW3)より構
成され、各ローが論理アドレスの第18ビツトと第19
ビツトの2ビツトにより番号付けられる4つのグループ
から構成されている。比較回路8は、BAA3へのアド
レス入力に応じて、BAA3から読み出された物理アド
レスと、TLB2から得られた物理アドレス2aを比較
し、一致する場合には、ヒツト(bit)信号を論理゛
1”にする、このヒツト信号を入力する論理ヒツトデコ
ード回路5は、比較回路8の群がら出力されるヒツト信
号をデコードしてロー選択信号5aを出力する。
イ、4はバッファ記憶である。バッファ記憶4は、主記
憶からのデータをブロック単位で記憶している0図示す
るように、論理アドレスレジスタ1の32ビツトの論理
アドレスビットは、物理アドレスに変換するアドレス変
換の対象となるビット位置の第0ビツト〜第19ビツト
と、変換を受けないビット位置の第20ビツト〜第32
ビツトに分けられる。また、アドレス変換バッファ(以
下TLBと略称する)2は論理アドレスと物理アドレス
の変換対より構成され、アドレス変換を行う論理アドレ
スの第0ビツト〜第19ビツトを入力すると、対応する
物理アドレスが出力される。バッファアドレスアレイ(
以下BAAと略称する)3は、バッファ記憶(以下BS
と略称する)4のブロック単位で格納しているデータブ
ロックの対応する物理アドレスのアドレスタグを格納し
たメモリであり、40−(ROWO〜ROW3)より構
成され、各ローが論理アドレスの第18ビツトと第19
ビツトの2ビツトにより番号付けられる4つのグループ
から構成されている。比較回路8は、BAA3へのアド
レス入力に応じて、BAA3から読み出された物理アド
レスと、TLB2から得られた物理アドレス2aを比較
し、一致する場合には、ヒツト(bit)信号を論理゛
1”にする、このヒツト信号を入力する論理ヒツトデコ
ード回路5は、比較回路8の群がら出力されるヒツト信
号をデコードしてロー選択信号5aを出力する。
二二で、4つのROWO〜ROW3の内、論理、アドレ
スの第18ビツトおよび第19ビツトにより番号付けら
れるグループ(これを論理グループと呼ぶ)のヒツト信
号が′1”にならずに、別の論理グループ(これをシノ
ニムグループと呼ぶ)で“1”となった場合、論理ヒツ
トデコード回路5は、シノニムヒツト信号5bを1”と
する。
スの第18ビツトおよび第19ビツトにより番号付けら
れるグループ(これを論理グループと呼ぶ)のヒツト信
号が′1”にならずに、別の論理グループ(これをシノ
ニムグループと呼ぶ)で“1”となった場合、論理ヒツ
トデコード回路5は、シノニムヒツト信号5bを1”と
する。
シノニムヒツトデコード回路7は、シノニムヒツト信号
5bを受けると、シノニム無効化信号をII 1 jl
とし、当該グループの無効化を指示するため当該グルー
プのバリッドビットをロー番号およびグループ番号を用
いて無効化する。
5bを受けると、シノニム無効化信号をII 1 jl
とし、当該グループの無効化を指示するため当該グルー
プのバリッドビットをロー番号およびグループ番号を用
いて無効化する。
また、ここでのBS4は、40−より構成されており、
アドレス変換を受ける論理アドレスの第18ビツト〜第
19ビツトおよびアドレス変換を受けない論理アドレス
の第20ビツト〜第27ビツトのアドレスビットにより
アクセスされる。ロー選択回路6がBS4から読み出さ
れたバッファデータの各ローのブロックのデータのうち
の1つのローのデータを、論理ヒツトデコード回路5か
らのロー選択信号5aにもとづいて選択し、読み出しバ
ッファデータとして、例えば、命令制御ユニット等に出
力する。
アドレス変換を受ける論理アドレスの第18ビツト〜第
19ビツトおよびアドレス変換を受けない論理アドレス
の第20ビツト〜第27ビツトのアドレスビットにより
アクセスされる。ロー選択回路6がBS4から読み出さ
れたバッファデータの各ローのブロックのデータのうち
の1つのローのデータを、論理ヒツトデコード回路5か
らのロー選択信号5aにもとづいて選択し、読み出しバ
ッファデータとして、例えば、命令制御ユニット等に出
力する。
このようなバッファ記憶制御ユニットの動作の概略を説
明すると、アクセスするデータの論理アドレスは、論理
アドレスレジスタ1にセットされる。アクセス要求が発
行されてデータの読み出しを行う場合、論理アドレスレ
ジスタ1にセットされたそれぞれのアドレスビットを用
いて、TLB2により論理アドレスが物理アドレスに変
換されると同時に、BAA3のアクセスと、BS4のア
クセスとが行われる。BAA3のアクセスで読み出され
たバッファメモリの物理アドレスと、TLB2により変
換された物理アドレス2aとが比較回路8により比較さ
れ、ヒツトしたか否かが検出される。そして、論理ヒツ
トデコード回路5によりヒツトしたロー番号が検出され
、当該ロー番号がロー選択信号として、ロー選択回路6
に与えられ、バッファ記憶4から一括して読み出されて
いる各ローのブロックデータの対応するブロックを選択
して取り出す。
明すると、アクセスするデータの論理アドレスは、論理
アドレスレジスタ1にセットされる。アクセス要求が発
行されてデータの読み出しを行う場合、論理アドレスレ
ジスタ1にセットされたそれぞれのアドレスビットを用
いて、TLB2により論理アドレスが物理アドレスに変
換されると同時に、BAA3のアクセスと、BS4のア
クセスとが行われる。BAA3のアクセスで読み出され
たバッファメモリの物理アドレスと、TLB2により変
換された物理アドレス2aとが比較回路8により比較さ
れ、ヒツトしたか否かが検出される。そして、論理ヒツ
トデコード回路5によりヒツトしたロー番号が検出され
、当該ロー番号がロー選択信号として、ロー選択回路6
に与えられ、バッファ記憶4から一括して読み出されて
いる各ローのブロックデータの対応するブロックを選択
して取り出す。
このようにして、バッファ記憶をアクセスする場合のア
クセス動作において、与えられたアクセスする論理アド
レスより、TLB2と、BAA3と、BS4どの3つの
処理要素が並列に動作してアクセス処理を行うので、バ
ッファ記憶の読み出しデータは高速にアクセスされる。
クセス動作において、与えられたアクセスする論理アド
レスより、TLB2と、BAA3と、BS4どの3つの
処理要素が並列に動作してアクセス処理を行うので、バ
ッファ記憶の読み出しデータは高速にアクセスされる。
ところで、BAAC3に用いるメモリーチップ設計上の
物理的な問題から、BAA3から同時に読み出すデータ
量が多くなる場合、データの読み出しが十分なアクセス
速度で行えなくなる。この場合には、バッファ記憶から
読み出すバッファデータ6aが、十分速いアクセスタイ
ムで得られないという問題がある。すなわち、BAA3
からの連想量(同時に一括して読み出される物理アドレ
スのデータ量)は、ロー数とグループ数の積(第7図の
例では4X4=16)となるため、BAA3から同時に
読み出すデータ量(データ幅)が多くなる。したがって
、BAA3として用いるメモリーチップに要求されるデ
ータ幅は、連想量に比例して増加する。また、メモリセ
ルの読み出し電流はデータ幅に比例して増加する。メモ
リーチップの発熱量はメモリセルの読み出し電流と電圧
の積で与えられる。このため、連想量が増大してデータ
幅が増大すると、BAAとして用いるメモリーチップの
発熱量は非常に大きくなる。所定の信頼度を保つために
、メモリーチップの発熱量をある許容範囲内に収める必
要があり、このため、アクセススピードを犠牲にして読
み出し電流を微小化せざるを得ないという問題がある。
物理的な問題から、BAA3から同時に読み出すデータ
量が多くなる場合、データの読み出しが十分なアクセス
速度で行えなくなる。この場合には、バッファ記憶から
読み出すバッファデータ6aが、十分速いアクセスタイ
ムで得られないという問題がある。すなわち、BAA3
からの連想量(同時に一括して読み出される物理アドレ
スのデータ量)は、ロー数とグループ数の積(第7図の
例では4X4=16)となるため、BAA3から同時に
読み出すデータ量(データ幅)が多くなる。したがって
、BAA3として用いるメモリーチップに要求されるデ
ータ幅は、連想量に比例して増加する。また、メモリセ
ルの読み出し電流はデータ幅に比例して増加する。メモ
リーチップの発熱量はメモリセルの読み出し電流と電圧
の積で与えられる。このため、連想量が増大してデータ
幅が増大すると、BAAとして用いるメモリーチップの
発熱量は非常に大きくなる。所定の信頼度を保つために
、メモリーチップの発熱量をある許容範囲内に収める必
要があり、このため、アクセススピードを犠牲にして読
み出し電流を微小化せざるを得ないという問題がある。
したがって、バッファ記憶から読み出すパ・ツファデー
タ6aが、十分速いアクセスタイムで得られず、データ
処理装置の性能を向上させるには限度があるという問題
点がある。
タ6aが、十分速いアクセスタイムで得られず、データ
処理装置の性能を向上させるには限度があるという問題
点がある。
本発明は、上記問題点を解決するためになされたもので
ある。
ある。
本発明の目的は、従来技術のこのようなメモリチップの
物理的問題点を解決しつつ、アクセス速度を高速化する
ことにある。
物理的問題点を解決しつつ、アクセス速度を高速化する
ことにある。
本発明の別の目的は、バッファ記憶をアクセスする場合
のバッファアドレスアレイの連想量を削減して、バッフ
ァ記憶のアクセスを高速化することにある。
のバッファアドレスアレイの連想量を削減して、バッフ
ァ記憶のアクセスを高速化することにある。
本発明の更に別の目的は、シノニムに対する処理を高速
に行うため物理アドレスでアクセスするバッファアドレ
スアレイをも含めたバッファアドレスアレイを用いて、
バッファアドレスアレイの連想量を削減して、バッファ
記憶のアクセスを高速化することにある。
に行うため物理アドレスでアクセスするバッファアドレ
スアレイをも含めたバッファアドレスアレイを用いて、
バッファアドレスアレイの連想量を削減して、バッファ
記憶のアクセスを高速化することにある。
本発明の更に別の目的は、BAAのアクセスに使われる
アドレスビットの中でアドレス変換を受けるビット数を
削減して、バッファアドレスアレイの連想量を削減して
、バッファ記憶のアクセスを高速化することにある。
アドレスビットの中でアドレス変換を受けるビット数を
削減して、バッファアドレスアレイの連想量を削減して
、バッファ記憶のアクセスを高速化することにある。
本発明の前記ならびにその他の目的と新規な特徴は、本
明細書の記述及び添付図面によって明らかになるであろ
う。
明細書の記述及び添付図面によって明らかになるであろ
う。
上記目的を達成するため1本発明においては。
論理アドレスでアクセスする第1バッファアドレスアレ
イと、物理アドレスでアクセスする第2バッファアドレ
スアレイとを組み合わせて、バッファアドレスアレイの
機能を実現し、バッファ記憶に登録されているデータの
アクセス制御を行う。
イと、物理アドレスでアクセスする第2バッファアドレ
スアレイとを組み合わせて、バッファアドレスアレイの
機能を実現し、バッファ記憶に登録されているデータの
アクセス制御を行う。
ここでは、アドレス変換を受ける論理アドレスの一部の
ビットおよびアドレス変換を受けないアドレスの一部の
ビットとでアクセスされる第1バッファアドレスアレイ
と、物理アドレスを使ってアクセスあるいは索引され、
シノニム検出を可能とした第2バッファアドレスアレイ
とが設けられ、バッファ記憶のアクセス制御のために用
いられる。
ビットおよびアドレス変換を受けないアドレスの一部の
ビットとでアクセスされる第1バッファアドレスアレイ
と、物理アドレスを使ってアクセスあるいは索引され、
シノニム検出を可能とした第2バッファアドレスアレイ
とが設けられ、バッファ記憶のアクセス制御のために用
いられる。
すなわち、主記憶装置に格納したデータをバッファ記憶
に登録し、バッファ記憶に登録したデータのエントリを
登録したバッファアドレスアレイにより、バッファ記憶
をアクセスしてデータ処理を実行するデータ処理装置に
おいて、前記バッファアドレスアレイを、論理アドレス
でアクセスする第1バッファアドレスアレイと、物理ア
ドレスでアクセスする第2バッファアドレスアレイとに
分けて設ける構成としたことを特徴とする。
に登録し、バッファ記憶に登録したデータのエントリを
登録したバッファアドレスアレイにより、バッファ記憶
をアクセスしてデータ処理を実行するデータ処理装置に
おいて、前記バッファアドレスアレイを、論理アドレス
でアクセスする第1バッファアドレスアレイと、物理ア
ドレスでアクセスする第2バッファアドレスアレイとに
分けて設ける構成としたことを特徴とする。
前記手段によれば、バッファアドレスアレイの機能を、
バッファ記憶のロー選択機能とシノニムグループ検出機
能に分割し、各々を担岩する第1バッファアドレスアレ
イと第2バッファアドレスアレイに分けて設ける。した
がって、各々のバッファアドレスアレイを実現するメモ
リのデータ幅は減少させて、バッファアドレスアレイが
メモリチップ上に設計される。ここで、2種類のバッフ
ァアドレスアレイの組み合せで構成するバッファアドレ
スアレイとしては、第1バッファアドレスアレイは、連
想量(−括して同時に読み出すデータ幅)をロー数分だ
けとし、論理アドレスのアドレス変換を受ける部分を含
むアドレスによりアクセスされるカラムより構成する。
バッファ記憶のロー選択機能とシノニムグループ検出機
能に分割し、各々を担岩する第1バッファアドレスアレ
イと第2バッファアドレスアレイに分けて設ける。した
がって、各々のバッファアドレスアレイを実現するメモ
リのデータ幅は減少させて、バッファアドレスアレイが
メモリチップ上に設計される。ここで、2種類のバッフ
ァアドレスアレイの組み合せで構成するバッファアドレ
スアレイとしては、第1バッファアドレスアレイは、連
想量(−括して同時に読み出すデータ幅)をロー数分だ
けとし、論理アドレスのアドレス変換を受ける部分を含
むアドレスによりアクセスされるカラムより構成する。
また、第2バッファアドレスアレイは、連想量をロー数
とグループ数の積だけとし、論理アドレスのアドレス変
換を受ける部分を含まないアドレス(物理アドレス)に
よりアクセスされるカラムより構成する。これにより、
第2バツフアアドレスは、実アドレスでアクセスして、
シノニムを同時に並列に読みaし可能なものとすること
ができ、シノニム制御が容易になる。
とグループ数の積だけとし、論理アドレスのアドレス変
換を受ける部分を含まないアドレス(物理アドレス)に
よりアクセスされるカラムより構成する。これにより、
第2バツフアアドレスは、実アドレスでアクセスして、
シノニムを同時に並列に読みaし可能なものとすること
ができ、シノニム制御が容易になる。
第1バッファアドレスアレイはバッファ記憶にアクセス
要求が発行される度に毎回アクセスし、論理グループに
目的のブロックが存在することを検出し、バッファ記憶
の該当するローを選択する。
要求が発行される度に毎回アクセスし、論理グループに
目的のブロックが存在することを検出し、バッファ記憶
の該当するローを選択する。
第2バッファアドレスアレイは、第1バッファアドレス
アレイにおいて、論理グループに目的のブロックが存在
しない場合にアクセスし、シノニムグループに存在する
かどうかを調べる。存在する6合は、第1バッファアド
レスアレイと第2バッファアドレスアレイの双方におい
て、該当シノニムグループを無効化する。
アレイにおいて、論理グループに目的のブロックが存在
しない場合にアクセスし、シノニムグループに存在する
かどうかを調べる。存在する6合は、第1バッファアド
レスアレイと第2バッファアドレスアレイの双方におい
て、該当シノニムグループを無効化する。
これにより、バッファ記憶のアドレスアレイの連想量を
削減できるので、バッファ記憶のアクセス速度を高速化
できる。
削減できるので、バッファ記憶のアクセス速度を高速化
できる。
C実施例〕
以下、本発明の実施例を図面を用いて、具体的に説明す
る。
る。
なお、実施例を説明するための全回において。
同一要素のものは同一符号を付け、その繰り返しの説明
は省略する。
は省略する。
第1図は、本発明の一実施例にかかるデータ処理装置の
全体の構成を示すブロック図である。第1図において、
11は主記憶装置、12はシステムコントローラ、13
は命令処理装置、14は入出力処理装置である。また、
15は命令処理装置13内に設けられるバッファ記憶制
御ユニットである。バッファ記憶制御ユニット15は、
バッファ記憶とバッファアドレスアレイ(BAA)を有
し、主記憶装置11からデータを一時的に格納し、デー
タ処理を効率よく実行する。ここでは、1個のバッファ
記憶に対しバッファアドレスアレイが2個設けられる。
全体の構成を示すブロック図である。第1図において、
11は主記憶装置、12はシステムコントローラ、13
は命令処理装置、14は入出力処理装置である。また、
15は命令処理装置13内に設けられるバッファ記憶制
御ユニットである。バッファ記憶制御ユニット15は、
バッファ記憶とバッファアドレスアレイ(BAA)を有
し、主記憶装置11からデータを一時的に格納し、デー
タ処理を効率よく実行する。ここでは、1個のバッファ
記憶に対しバッファアドレスアレイが2個設けられる。
プログラムとデータは主記憶装置11内に格納されてお
り、命令処理装置13が主記憶装置11に格納されてい
るデータおよびプログラムをシステムコントローラを介
してバッファ記憶制御ユニット15に取り出し、プログ
ラムの命令を逐次取り出し実行する。システムコシトロ
ーラ12は主記憶装置11と命令処理装置13または入
出力処理装置14との間のインタフェースを制御する。
り、命令処理装置13が主記憶装置11に格納されてい
るデータおよびプログラムをシステムコントローラを介
してバッファ記憶制御ユニット15に取り出し、プログ
ラムの命令を逐次取り出し実行する。システムコシトロ
ーラ12は主記憶装置11と命令処理装置13または入
出力処理装置14との間のインタフェースを制御する。
入出力処理装置14は主記憶装置11と入出力装置間の
データ転送を制御する。
データ転送を制御する。
第2図は、命令処理装置の要部の構成を示すブロック図
である。命令処理装置13には、図示するように、バッ
ファ記憶制御ユニット15.命令制御ユニット20.汎
用演算ユニット21.および浮動小数点演算ユニット2
2が設けられている。バッファ記憶制御ユニット15は
、アクセスする論理アドレスがセットされる論理アドレ
スレジスタ1.論理アドレスから物理アドレスへのアド
レス変換を行うアドレス変換バッファ(TLB)2.バ
ッファ記憶4,2つのバッファアドレスアレイ25等の
処理要素を備えている。これらの処理要素を用いてバッ
ファ記憶制御を行う、また、バッファ記憶制御ユニット
15は、システムコントローラ12を介して主記憶装置
11に接続されており、主記憶装置11に格納されてい
るデータおよびプログラムをシステムコントローラを介
して取り出し、バッファ記憶4に格納して、命令制御ユ
ニット20.汎用演算ユニット21.および浮動小数点
演算ユニット22に命令とデータとを供給する。
である。命令処理装置13には、図示するように、バッ
ファ記憶制御ユニット15.命令制御ユニット20.汎
用演算ユニット21.および浮動小数点演算ユニット2
2が設けられている。バッファ記憶制御ユニット15は
、アクセスする論理アドレスがセットされる論理アドレ
スレジスタ1.論理アドレスから物理アドレスへのアド
レス変換を行うアドレス変換バッファ(TLB)2.バ
ッファ記憶4,2つのバッファアドレスアレイ25等の
処理要素を備えている。これらの処理要素を用いてバッ
ファ記憶制御を行う、また、バッファ記憶制御ユニット
15は、システムコントローラ12を介して主記憶装置
11に接続されており、主記憶装置11に格納されてい
るデータおよびプログラムをシステムコントローラを介
して取り出し、バッファ記憶4に格納して、命令制御ユ
ニット20.汎用演算ユニット21.および浮動小数点
演算ユニット22に命令とデータとを供給する。
バッファ記憶制御ユニット15において、TLB2は論
理アドレスと物理アドレスの対を格納するアドレス変換
バレファである。バッファ記憶4は主記憶装置11から
読み出したデータを一時的に格納するメモリである。ま
た、バッファアドレスアレイ(BAA)25は、バッフ
ァ記憶4に格納しているデータブロックを索引するため
に必要なバッファ記憶4内の各データブロックのアドレ
スタグを格納しているアドレスアレイのメモリである。
理アドレスと物理アドレスの対を格納するアドレス変換
バレファである。バッファ記憶4は主記憶装置11から
読み出したデータを一時的に格納するメモリである。ま
た、バッファアドレスアレイ(BAA)25は、バッフ
ァ記憶4に格納しているデータブロックを索引するため
に必要なバッファ記憶4内の各データブロックのアドレ
スタグを格納しているアドレスアレイのメモリである。
命令制御ユニット20は、命令をバッファ記憶4から読
み出して解読し、演算ユニットに対するデータ供給等の
制御を行う。汎用演算ユニット21は、固定小数点演算
、論理演算、十進演算、システム制御等を実行する。浮
動小数点演算ユニット22は浮動小数点演算を実行する
。
み出して解読し、演算ユニットに対するデータ供給等の
制御を行う。汎用演算ユニット21は、固定小数点演算
、論理演算、十進演算、システム制御等を実行する。浮
動小数点演算ユニット22は浮動小数点演算を実行する
。
第3図は、バッファ記憶制御ユニットの内部構成を詳細
に示すブロック図である。第3図において、31は第1
バッファアドレスアレイ、32は第2バッファアドレス
アレイ、33は比較回路、34はヒツトローグループエ
ンコード回路である。
に示すブロック図である。第3図において、31は第1
バッファアドレスアレイ、32は第2バッファアドレス
アレイ、33は比較回路、34はヒツトローグループエ
ンコード回路である。
第1バッファアドレスアレイ31は、論理アドレスでア
クセスされるバッファアドレスアレイとなっており、ロ
ー数に等しい連想量を有する。また、第1バッファアド
レスアレイ31は、アドレス変換を受ける論理アドレス
の第18ビツト〜第19ビツトの2ビツトと、アドレス
変換を受けない論理アドレスの第20ビツト〜第24ビ
ツトの5ビツトの合計7ビツトのアドレスでアクセスさ
れるカラムから構成されており、ここでは、シノニムグ
ループはアレイのカラム方向に配置されている。
クセスされるバッファアドレスアレイとなっており、ロ
ー数に等しい連想量を有する。また、第1バッファアド
レスアレイ31は、アドレス変換を受ける論理アドレス
の第18ビツト〜第19ビツトの2ビツトと、アドレス
変換を受けない論理アドレスの第20ビツト〜第24ビ
ツトの5ビツトの合計7ビツトのアドレスでアクセスさ
れるカラムから構成されており、ここでは、シノニムグ
ループはアレイのカラム方向に配置されている。
したがって、アクセス要求が起こる度にアクセスされる
連想量は少ないものとなっている。
連想量は少ないものとなっている。
第2バッファアドレスアレイ32は、物理アドレスでア
クセスされるバッファアドレスアレイとなっており、ロ
ー数とグループ数の積に等しい連想量を有する。また、
また、第2バッファアドレスアレイ32は、アドレス変
換を受けない論理アドレスの第20ビツト〜第24ビツ
トの5ビツトのアドレスでアクセスされるカラムから構
成されており、シノニムグループはアレイの連想方向(
ロー方向)に配置されている。
クセスされるバッファアドレスアレイとなっており、ロ
ー数とグループ数の積に等しい連想量を有する。また、
また、第2バッファアドレスアレイ32は、アドレス変
換を受けない論理アドレスの第20ビツト〜第24ビツ
トの5ビツトのアドレスでアクセスされるカラムから構
成されており、シノニムグループはアレイの連想方向(
ロー方向)に配置されている。
バッファ記憶4をアクセスするために、論理アドレス線
35により第1バッファアドレスアレイ31をアクセス
し、物理アドレス線3Bにより第2バッファアドレスア
レイ32をアクセスする。第1バッファアドレスアレイ
31では、アクセスされた論理グループの全ロー分を読
み出す、第1バッファアドレスアレイ31から読み出さ
れたブロックの物理アドレスは、TLB2によりアドレ
ス変換された物理アドレス2aと比較回路8で比較され
る。論理ヒツトデコード回路5は比較回路8の出力信号
をデコードし、ロー選択信号5aと論理ヒツト信号5c
を出力する。一方、第2バッファアドレスアレイ32は
、物理アドレスでのアクセスにより全ローについての全
グループ分を読み出し、読み出されたブロックの物理ア
ドレスは、TLB2によリアドレス変換されて送出され
ている物理アドレス2aと比較回路33で比較される。
35により第1バッファアドレスアレイ31をアクセス
し、物理アドレス線3Bにより第2バッファアドレスア
レイ32をアクセスする。第1バッファアドレスアレイ
31では、アクセスされた論理グループの全ロー分を読
み出す、第1バッファアドレスアレイ31から読み出さ
れたブロックの物理アドレスは、TLB2によりアドレ
ス変換された物理アドレス2aと比較回路8で比較され
る。論理ヒツトデコード回路5は比較回路8の出力信号
をデコードし、ロー選択信号5aと論理ヒツト信号5c
を出力する。一方、第2バッファアドレスアレイ32は
、物理アドレスでのアクセスにより全ローについての全
グループ分を読み出し、読み出されたブロックの物理ア
ドレスは、TLB2によリアドレス変換されて送出され
ている物理アドレス2aと比較回路33で比較される。
ヒツトローグループエンコード回路34は比較回路33
の出力により、全グループの比較結果を調べて、論理ヒ
ツト信号5cが“0”で、かつ、いずれかのシノニムグ
ループの比較結果が111 ttである場合に、そのグ
ループのブロックを無効化する無効化信号34aを出力
する。無効化信号34aにより、第1バッファアドレス
アレイと第2バッファアドレスアレイの双方において、
該当シノニムグループを無効化する。
の出力により、全グループの比較結果を調べて、論理ヒ
ツト信号5cが“0”で、かつ、いずれかのシノニムグ
ループの比較結果が111 ttである場合に、そのグ
ループのブロックを無効化する無効化信号34aを出力
する。無効化信号34aにより、第1バッファアドレス
アレイと第2バッファアドレスアレイの双方において、
該当シノニムグループを無効化する。
次に1本発明の他の実施例を説明する。
第4図は、バッファ記憶制御ユニットの他の実施例の内
部構成を示すブロック図である。第4図の第2実施例の
バッファ記憶制御ユニットの構成は、基本的には、第3
図に示したバッファ記憶制御ユニットの構成と同様なも
のである。ここでは。
部構成を示すブロック図である。第4図の第2実施例の
バッファ記憶制御ユニットの構成は、基本的には、第3
図に示したバッファ記憶制御ユニットの構成と同様なも
のである。ここでは。
更にセレクタ41.42.43を設け、バッファ記憶4
゜第1バッファアドレスアレイ31.第2バッファアド
レスアレイ32に対するアクセスアドレスをフェッチ動
作またはストア動作によって、それぞれ選択して与える
ようにしている。
゜第1バッファアドレスアレイ31.第2バッファアド
レスアレイ32に対するアクセスアドレスをフェッチ動
作またはストア動作によって、それぞれ選択して与える
ようにしている。
論理アドレスレジスタ1は命令制御ユニット20゜汎用
演算ユニット21.および浮動小数点演算ユニット22
から送出されるフェッチ要求アドレスをラッチして、ア
クセスする論理アドレスがセットされる。第1バッファ
アドレスアレイ31においては、シノニムグループはア
レイのカラム方向に配置される。第1バッファアドレス
アレイ31は論理アドレスのアドレス変換を受ける第1
8ビツトと第19ビツトの2ビツトを含む第18ビツト
〜第24ピツトのアドレスでアクセスされるメモリであ
る。
演算ユニット21.および浮動小数点演算ユニット22
から送出されるフェッチ要求アドレスをラッチして、ア
クセスする論理アドレスがセットされる。第1バッファ
アドレスアレイ31においては、シノニムグループはア
レイのカラム方向に配置される。第1バッファアドレス
アレイ31は論理アドレスのアドレス変換を受ける第1
8ビツトと第19ビツトの2ビツトを含む第18ビツト
〜第24ピツトのアドレスでアクセスされるメモリであ
る。
比較回路8は第1バッファアドレスアレイ31の出力す
る物理アドレスとTLB2で変換された物理アドレス2
aとを比較し、一致を検出する。論理ヒツトデコード回
路5は、比較回路8の出力を調べて、バッファ記憶4に
データブロックが存在することが判定された場合には、
そのロー選択信号5aを出力する。ロー選択回路6は論
理ヒツトデコード回路5からロー選択信号5aを受けて
、バッファ記憶4で同時に読み出されている該当するロ
ーのブロックデータを選択し、読み出しバッファデータ
として出力する。また、第2バッファアドレスアレイ3
2はロー数とグループ数の積に等しい連想量を有するメ
モリである。第2バッファアドレスアレイ32はアドレ
ス変換を受けない論理アドレスビットの第20ビツト〜
第24ビツトの5ビツトでアクセスされるカラムから構
成される。
る物理アドレスとTLB2で変換された物理アドレス2
aとを比較し、一致を検出する。論理ヒツトデコード回
路5は、比較回路8の出力を調べて、バッファ記憶4に
データブロックが存在することが判定された場合には、
そのロー選択信号5aを出力する。ロー選択回路6は論
理ヒツトデコード回路5からロー選択信号5aを受けて
、バッファ記憶4で同時に読み出されている該当するロ
ーのブロックデータを選択し、読み出しバッファデータ
として出力する。また、第2バッファアドレスアレイ3
2はロー数とグループ数の積に等しい連想量を有するメ
モリである。第2バッファアドレスアレイ32はアドレ
ス変換を受けない論理アドレスビットの第20ビツト〜
第24ビツトの5ビツトでアクセスされるカラムから構
成される。
第2バッファアドレスアレイ32においては、シノニム
グループはアレイの連想方向に配置される。
グループはアレイの連想方向に配置される。
第2バッファアドレスアレイ32はアドレス変換を受け
ない部分のみでアクセスされるアドレスアレイのメモリ
である。この第2バッファアドレスアレイ32では、シ
ノニムの候補、即ち、シノニムとなる可能性のある全エ
ントリを全て並列に読み出すことができる。ヒツトロー
グループエンコード回路34は、物理アドレス2aと第
2バツフ7アドレスアレイ32からの読み出し物理アド
レス出力との比較結果を比較回路33で調べて、ヒツト
したロー番号およびシノニム番号等を出力する。
ない部分のみでアクセスされるアドレスアレイのメモリ
である。この第2バッファアドレスアレイ32では、シ
ノニムの候補、即ち、シノニムとなる可能性のある全エ
ントリを全て並列に読み出すことができる。ヒツトロー
グループエンコード回路34は、物理アドレス2aと第
2バツフ7アドレスアレイ32からの読み出し物理アド
レス出力との比較結果を比較回路33で調べて、ヒツト
したロー番号およびシノニム番号等を出力する。
命令処理装置のフェッチ動作におけるバッファ記憶の読
み出しは、論理アドレスレジスタ1にセットされた論理
アドレスのアドレスビットで、第1バッファアドレスア
レイ31をアクセスし、ロー選択信号5aを得て、バッ
ファ記憶のローを選択する。また、ストア動作では、ス
トアアドレスをセレクタ43で選択して、第2バッファ
アドレスアレイ32をアクセスし、出力された物理アド
レスをTLB2からの物理アドレスによりチエツクを行
った後に、ヒツトローグループエンコード回路34ぶら
ロー番号およびグループ番号のエントリデータを得て、
ロー番号およびグループ番号をセレクタ41より選択し
てバッファ記憶4における該当位置に書き込む。
み出しは、論理アドレスレジスタ1にセットされた論理
アドレスのアドレスビットで、第1バッファアドレスア
レイ31をアクセスし、ロー選択信号5aを得て、バッ
ファ記憶のローを選択する。また、ストア動作では、ス
トアアドレスをセレクタ43で選択して、第2バッファ
アドレスアレイ32をアクセスし、出力された物理アド
レスをTLB2からの物理アドレスによりチエツクを行
った後に、ヒツトローグループエンコード回路34ぶら
ロー番号およびグループ番号のエントリデータを得て、
ロー番号およびグループ番号をセレクタ41より選択し
てバッファ記憶4における該当位置に書き込む。
次に、フェッチ動作中に、第1バッファアドレスアレイ
31をアクセスして、ヒツトしなかった場合の動作を説
明する。第1バッファアドレスアレイ31をアクセスし
てヒツトしない場合でも、シノニムが存在する場合があ
り得る。この場合、セレクタ43で論理アドレスレジス
タ1からの物理アドレス(実アドレス)を選択し、第2
バッファアドレスアレイ32をアクセスすることにより
、シノニムを調べる。シノニムの存在が検出された場合
は、セレクタ42で、ヒツトローグループエンコード回
路34からの出力信号34aを選択し、当該ブロックの
エントリを無効化する。
31をアクセスして、ヒツトしなかった場合の動作を説
明する。第1バッファアドレスアレイ31をアクセスし
てヒツトしない場合でも、シノニムが存在する場合があ
り得る。この場合、セレクタ43で論理アドレスレジス
タ1からの物理アドレス(実アドレス)を選択し、第2
バッファアドレスアレイ32をアクセスすることにより
、シノニムを調べる。シノニムの存在が検出された場合
は、セレクタ42で、ヒツトローグループエンコード回
路34からの出力信号34aを選択し、当該ブロックの
エントリを無効化する。
第5図は、バッファ記憶制御ユニットの別の実施例の内
部構成を示すブロック図である。第5図の第3実施例の
バッファ記憶制御ユニットの構成は、基本的には、第4
図に示した第2実施例のバッファ記憶制御ユニットの構
成と同様なものである。ここでは、更にセレクタ51を
設け、第2バッファアドレスアレイ52から出力される
エントリのロー番号を選択して、シノニムを検出した場
合の無効化を行うようにしている。この第5図の第3の
実施例のバッファ記憶制御ユニットと、第4図の第2の
実施例のバッファ記憶制御ユニットとの主な相違点は、
第2バツフアアドレスレジスタ52の周辺回路の構成に
ある。
部構成を示すブロック図である。第5図の第3実施例の
バッファ記憶制御ユニットの構成は、基本的には、第4
図に示した第2実施例のバッファ記憶制御ユニットの構
成と同様なものである。ここでは、更にセレクタ51を
設け、第2バッファアドレスアレイ52から出力される
エントリのロー番号を選択して、シノニムを検出した場
合の無効化を行うようにしている。この第5図の第3の
実施例のバッファ記憶制御ユニットと、第4図の第2の
実施例のバッファ記憶制御ユニットとの主な相違点は、
第2バツフアアドレスレジスタ52の周辺回路の構成に
ある。
第2バッファアドレスアレイ52に対するアクセスは、
物理アドレスへの変換後のアドレスでアクセスする。第
2バッファアドレスアレイ52の各ローのエントリの内
容には、第1バッファアドレスアレイ31に対応するロ
ー番号およびグループ番号が保持されている。第1バク
フアアドレスアレイ31をアクセスして、この例におい
ては、比較回路8の全出力が0となって、バッファミス
を検出した場合に、更に第2バッファアドレスアレイ5
2をアクセスする。ここでの第2バッファアドレスアレ
イ52のヒツトはシノニムの存在を意味する。第2バッ
ファアドレスアレイ52から読み出したエントリのロー
番号およびグループ番号(第1バッファアドレスアレイ
31の対応するロー番号およびグループ番号)から、ヒ
ツトしたロー番号をセレクタ51で選択し、セレクタ4
2を介して第1バッファアドレスアレイ31に与え、対
応するシノニムを無効化する。また、このとき、同じロ
ー番号をセレクタ41を介してバッファ記憶4に与え、
バッファ記憶の無効化を行う。
物理アドレスへの変換後のアドレスでアクセスする。第
2バッファアドレスアレイ52の各ローのエントリの内
容には、第1バッファアドレスアレイ31に対応するロ
ー番号およびグループ番号が保持されている。第1バク
フアアドレスアレイ31をアクセスして、この例におい
ては、比較回路8の全出力が0となって、バッファミス
を検出した場合に、更に第2バッファアドレスアレイ5
2をアクセスする。ここでの第2バッファアドレスアレ
イ52のヒツトはシノニムの存在を意味する。第2バッ
ファアドレスアレイ52から読み出したエントリのロー
番号およびグループ番号(第1バッファアドレスアレイ
31の対応するロー番号およびグループ番号)から、ヒ
ツトしたロー番号をセレクタ51で選択し、セレクタ4
2を介して第1バッファアドレスアレイ31に与え、対
応するシノニムを無効化する。また、このとき、同じロ
ー番号をセレクタ41を介してバッファ記憶4に与え、
バッファ記憶の無効化を行う。
なお、ここでの第2バッファアドレスアレイ52と、シ
ノニム制御を行う論理ヒツトデコード回路53と、比較
回路54は、ストア動作時に発生するシノニムを検出す
る機能を有する書込み用バッファアドレスアレイによる
処理機能の中で行われる機能として実現することも可能
である。
ノニム制御を行う論理ヒツトデコード回路53と、比較
回路54は、ストア動作時に発生するシノニムを検出す
る機能を有する書込み用バッファアドレスアレイによる
処理機能の中で行われる機能として実現することも可能
である。
第6図は1本発明の更に別の実施例のデータ処理装置の
要部構成を示すブロック図である。この実施例では、バ
ッファ記憶制御をシステムコントローラに設けられるバ
ッファアドレスアレイ(フロントアドレスアレイ)を用
いて行うようにした例である。バッファ記憶制御を行う
処理要素の構成は、第4図の第2実施例および第5図の
第3実施例と同様な構成となっている。
要部構成を示すブロック図である。この実施例では、バ
ッファ記憶制御をシステムコントローラに設けられるバ
ッファアドレスアレイ(フロントアドレスアレイ)を用
いて行うようにした例である。バッファ記憶制御を行う
処理要素の構成は、第4図の第2実施例および第5図の
第3実施例と同様な構成となっている。
データ処理装置が複数の命令処理装置を含むマルチプロ
セッサ構成でシステム構成される場合、システムコント
ローラを介して主記憶装置と複数の命令処理装置が接続
される(第1図)、各々の命令処理装置には、バッファ
記憶およびバッファアドレスアレイを含むバッファ記憶
制御ユニットが設けられ、また、システムコントローラ
には。
セッサ構成でシステム構成される場合、システムコント
ローラを介して主記憶装置と複数の命令処理装置が接続
される(第1図)、各々の命令処理装置には、バッファ
記憶およびバッファアドレスアレイを含むバッファ記憶
制御ユニットが設けられ、また、システムコントローラ
には。
複数の命令処理装置の複数のバッファメモリ間のデータ
の不一致を防止するため、バッファ記憶制御ユニットに
おけるバッファアドレスアレイの写しを格納するフロン
トアドレスアレイ(FAA:Front Addres
s Array)が設けられる・第6図の実施例では、
このシステムコントローの中に設けられるフロントアド
レスアレイを、バッファ記憶制御でシノニム検出を行う
機能を有する第2バッファアドレスアレイとして用いる
。すなわち、第6図において、13は命令処理装置であ
り、12はシステムコントローラである。60はフロン
トアドレスアレイ、61は比較回路、62はヒツトロー
グループエンコード回路である。フロントアドレスアレ
イ60.比較回路61.およびヒツトローグループエン
コード回路62は、システムコントローラ12内に設け
られる。
の不一致を防止するため、バッファ記憶制御ユニットに
おけるバッファアドレスアレイの写しを格納するフロン
トアドレスアレイ(FAA:Front Addres
s Array)が設けられる・第6図の実施例では、
このシステムコントローの中に設けられるフロントアド
レスアレイを、バッファ記憶制御でシノニム検出を行う
機能を有する第2バッファアドレスアレイとして用いる
。すなわち、第6図において、13は命令処理装置であ
り、12はシステムコントローラである。60はフロン
トアドレスアレイ、61は比較回路、62はヒツトロー
グループエンコード回路である。フロントアドレスアレ
イ60.比較回路61.およびヒツトローグループエン
コード回路62は、システムコントローラ12内に設け
られる。
フロントアドレスアレイ60は、マルチプロセッサ構成
において、複数のバッファメモリ間のデータの不一致を
防止するために設けられる命令処理装置13のバッファ
アドレスアレイの写しである。
において、複数のバッファメモリ間のデータの不一致を
防止するために設けられる命令処理装置13のバッファ
アドレスアレイの写しである。
例えば、あるバッファ記憶4に対して書込が行なわれた
場合に、全部のフロントアドレスアレイを読み出し、当
該ブロックを格納している他命令処理装置のバップア記
憶のブロックデータを無効化とするために、システムコ
ントローラ12の中のフロントアドレスアレイ60が用
いられる。このフロントアドレスアレイ60の中で、第
2バッファアドレスアレイの機能を実現する。すなわち
、命令処理装置!13におけるバッファ記憶制御を行う
処理要素(論理ヒツトデコード回路5)で、バッファミ
スが検出されると、論理ヒツトデコード回路5からバッ
ファミス信号5dにより、命令処理装置13はシステム
コントローラ12に対して、ブロック転送要求64を出
すと共に、セレクタ66でミスを起こした物理アドレス
を選択してアドレスデータ65を送出する。システムコ
ントローラ12ではブロック転送の準備をすると共に、
フロントアドレスアレイ60をアクセスし、比較回路6
1およびヒツトローグループエンコード回路62により
、シノニムの存在を調べてシノニム制御を行う、シノニ
ムが存在する場合は、ヒツトローグループエンコード回
路62によりシノニムの無効化要求63を、命令処理装
置13に対して送出する。この要求を受けた命令処理袋
!13はシノニム無効化をバリッドビットをリセットす
ることにより行なう。
場合に、全部のフロントアドレスアレイを読み出し、当
該ブロックを格納している他命令処理装置のバップア記
憶のブロックデータを無効化とするために、システムコ
ントローラ12の中のフロントアドレスアレイ60が用
いられる。このフロントアドレスアレイ60の中で、第
2バッファアドレスアレイの機能を実現する。すなわち
、命令処理装置!13におけるバッファ記憶制御を行う
処理要素(論理ヒツトデコード回路5)で、バッファミ
スが検出されると、論理ヒツトデコード回路5からバッ
ファミス信号5dにより、命令処理装置13はシステム
コントローラ12に対して、ブロック転送要求64を出
すと共に、セレクタ66でミスを起こした物理アドレス
を選択してアドレスデータ65を送出する。システムコ
ントローラ12ではブロック転送の準備をすると共に、
フロントアドレスアレイ60をアクセスし、比較回路6
1およびヒツトローグループエンコード回路62により
、シノニムの存在を調べてシノニム制御を行う、シノニ
ムが存在する場合は、ヒツトローグループエンコード回
路62によりシノニムの無効化要求63を、命令処理装
置13に対して送出する。この要求を受けた命令処理袋
!13はシノニム無効化をバリッドビットをリセットす
ることにより行なう。
以上に説明した本発明による実施例を要部をまとめると
次にようになる。
次にようになる。
(1)バッファ記憶に対応するバッファアドレスアレイ
は、データ幅を削減して処理速度を向上させたバッファ
アドレスアレイを第1ノ(ソファアドレスアレイ31と
、論理アドレスから物理アドレスへのアドレス変換を受
けないアドレスビット部分でのみアクセスされ、データ
幅が大きくシノニムを同時に並列に読み出し可能な第2
)(ソファアドレスアレイ32を設ける。
は、データ幅を削減して処理速度を向上させたバッファ
アドレスアレイを第1ノ(ソファアドレスアレイ31と
、論理アドレスから物理アドレスへのアドレス変換を受
けないアドレスビット部分でのみアクセスされ、データ
幅が大きくシノニムを同時に並列に読み出し可能な第2
)(ソファアドレスアレイ32を設ける。
データ幅を削減して連想量をローのみとして、シノニム
を読み出せない構造の第1バッファアドレスアレイ31
を、論理アドレスでアクセスして)くソファミスを検出
した場合にのみ、シノニムを読み出せる第2バッファア
ドレスアレイをアクセスし、シノニムの検出を行う、シ
ノニムが存在する場合は、その無効化を行う。
を読み出せない構造の第1バッファアドレスアレイ31
を、論理アドレスでアクセスして)くソファミスを検出
した場合にのみ、シノニムを読み出せる第2バッファア
ドレスアレイをアクセスし、シノニムの検出を行う、シ
ノニムが存在する場合は、その無効化を行う。
これにより、バッファアドレスアレイの連想量を削減し
て、バッファ記憶のアクセス速度を高速化できる。
て、バッファ記憶のアクセス速度を高速化できる。
(2)第2バッファアドレスアレイ32は、物理アドレ
スでアクセスする構成とする。第2バッファアドレスア
レイ31には、第1バッファアドレスアレイ31の対応
するロー番号等を格納しておく。
スでアクセスする構成とする。第2バッファアドレスア
レイ31には、第1バッファアドレスアレイ31の対応
するロー番号等を格納しておく。
第1バッファアドレスアレイ31でバッファミスを検出
した場合に、第2バッファアドレスアレイ32をアクセ
スする。この場合の第2バッファアドレスアレイ32の
アクセスでヒツトした場合は、ヒツトしたローの第1バ
ッファアドレスアレイ31の対応するロー番号等を読み
出し、これに基づいてシノニムの無効化を行う。
した場合に、第2バッファアドレスアレイ32をアクセ
スする。この場合の第2バッファアドレスアレイ32の
アクセスでヒツトした場合は、ヒツトしたローの第1バ
ッファアドレスアレイ31の対応するロー番号等を読み
出し、これに基づいてシノニムの無効化を行う。
これにより、シノニム制御の処理を効率的に行え、シノ
ニム検出のためのバッファアドレスアレイからの連想量
をも含めて、連想量を削減して、バッファ記憶のアクセ
ス速度を高速化できる。
ニム検出のためのバッファアドレスアレイからの連想量
をも含めて、連想量を削減して、バッファ記憶のアクセ
ス速度を高速化できる。
(3)システムコントローラ内に第2バッファアドレス
アレイの写しを設ける。これは、物理アドレスまたは論
理アドレスの変換を受けないアドレスビット部分でアク
セスされるバッファアドレスアレイの写しを設ける構成
である。
アレイの写しを設ける。これは、物理アドレスまたは論
理アドレスの変換を受けないアドレスビット部分でアク
セスされるバッファアドレスアレイの写しを設ける構成
である。
バッファミスを検出した場合、ブロック転送要求を命処
理装置からシステムコントローラに送出する。システム
コントローラでは、第2バッファアドレスアレイの写し
をアクセスし、シノニムの検出を行う、シノニムを検出
した場合は、システムコントローラから命令処理装置に
対してシノニム無効化要求を送出し、シノニムの無効化
処理を行う。
理装置からシステムコントローラに送出する。システム
コントローラでは、第2バッファアドレスアレイの写し
をアクセスし、シノニムの検出を行う、シノニムを検出
した場合は、システムコントローラから命令処理装置に
対してシノニム無効化要求を送出し、シノニムの無効化
処理を行う。
これにより、システムコントローラ内のフロントアドレ
スアレイを第2バツフアアトレイアレイとして使えるの
で、ハードウェアコストを上昇させずに、本発明を実施
することができる。フロントアドレスアレイは、マルチ
プロセッサ構成において、バッファ記憶間のデータのコ
ンシスチンシー(同一性)を保持するために、システム
コントローラ内に置かれるバッファアドレスアレイの写
しである。
スアレイを第2バツフアアトレイアレイとして使えるの
で、ハードウェアコストを上昇させずに、本発明を実施
することができる。フロントアドレスアレイは、マルチ
プロセッサ構成において、バッファ記憶間のデータのコ
ンシスチンシー(同一性)を保持するために、システム
コントローラ内に置かれるバッファアドレスアレイの写
しである。
(4)また、上記の(1)および(2)における第2バ
ッファアドレスアレイは、ストア動作を行う書き込み用
のバッファアドレスアレイを、用いることができるので
ハードウェアのコストを増加させずに本発明を実施する
ことができる。
ッファアドレスアレイは、ストア動作を行う書き込み用
のバッファアドレスアレイを、用いることができるので
ハードウェアのコストを増加させずに本発明を実施する
ことができる。
以上1本発明を実施例にもとづき具体的に説明したが、
本発明は、前記実施例に限定されるものではなく、その
要旨を逸脱しない範囲において種々変更可能であること
は言うまでもない。
本発明は、前記実施例に限定されるものではなく、その
要旨を逸脱しない範囲において種々変更可能であること
は言うまでもない。
以上、説明したように、本発明によれば、バッファ記憶
のバッファアドレスアレイの連想量を削減することがで
きるので、バッファメモリのアクセスを高速化できる。
のバッファアドレスアレイの連想量を削減することがで
きるので、バッファメモリのアクセスを高速化できる。
第1図は、本発明の一実施例にかかるデータ処理装置の
全体の構成を示すブロック図、第2図は、命令処理装置
の要部の構成を示すブロック図。 第3図は、バッファ記憶制御ユニットの内部構成を詳細
に示すブロック図、 第4図は、バッファ記憶制御ユニットの他の実施例の内
部構成を示すブロック図、 第5図は、バッファ記憶制御ユニットの別の実施例の内
部構成を示すブロック図、 第6図は、本発明の更に別の実施例のデータ処理装置の
要部構成を示すブロック図、 第7図は、命令処理装置におけるバッファ記憶制御ユニ
ットの要部構成の一例を示すブロック図である。 図中、1・・・論理アドレスレジスタ、2・・・アドレ
ス変換バッファ、3・・・バッファアドレスアレイ、4
・・・バッファ記憶、5・・・論理ヒツトデコード回路
、6・・・ロー選択回路、7・・・シノニムヒツトデコ
ード回路、8 、33.54.61・・・比較回路、1
1・・・主記憶装置、12・・・システムコントローラ
、13・・・命令処理装置、14・・・入出力処理装置
、15・・・バッファ記憶制御ユニット、20・・・命
令制御ユニット、21・・・汎用演算ユニット、22・
・・浮動小数点演算ユニット、31・・・第1バッファ
アドレスアレイ、32・・・第2バッファアドレスアレ
イ、34.62・・・ヒツトローグループエンコード回
路、41.42.43.66・・・セレクタ。
全体の構成を示すブロック図、第2図は、命令処理装置
の要部の構成を示すブロック図。 第3図は、バッファ記憶制御ユニットの内部構成を詳細
に示すブロック図、 第4図は、バッファ記憶制御ユニットの他の実施例の内
部構成を示すブロック図、 第5図は、バッファ記憶制御ユニットの別の実施例の内
部構成を示すブロック図、 第6図は、本発明の更に別の実施例のデータ処理装置の
要部構成を示すブロック図、 第7図は、命令処理装置におけるバッファ記憶制御ユニ
ットの要部構成の一例を示すブロック図である。 図中、1・・・論理アドレスレジスタ、2・・・アドレ
ス変換バッファ、3・・・バッファアドレスアレイ、4
・・・バッファ記憶、5・・・論理ヒツトデコード回路
、6・・・ロー選択回路、7・・・シノニムヒツトデコ
ード回路、8 、33.54.61・・・比較回路、1
1・・・主記憶装置、12・・・システムコントローラ
、13・・・命令処理装置、14・・・入出力処理装置
、15・・・バッファ記憶制御ユニット、20・・・命
令制御ユニット、21・・・汎用演算ユニット、22・
・・浮動小数点演算ユニット、31・・・第1バッファ
アドレスアレイ、32・・・第2バッファアドレスアレ
イ、34.62・・・ヒツトローグループエンコード回
路、41.42.43.66・・・セレクタ。
Claims (1)
- 【特許請求の範囲】 1、主記憶装置に格納したデータをバッファ記憶に登録
し、バッファ記憶に登録したデータのエントリを登録し
たバッファアドレスアレイにより、バッファ記憶をアク
セスしてデータ処理を実行するデータ処理装置において
、前記バッファアドレスアレイを、論理アドレスでアク
セスする第1バッファアドレスアレイと、物理アドレス
でアクセスする第2バッファアドレスアレイとに分けて
設ける構成としたことを特徴とするデータ処理置。 2、主記憶装置に格納したデータをバッファ記憶に登録
し、バッファ記憶に登録したデータのエントリを登録し
たバッファアドレスアレイにより、バッファ記憶をアク
セスしてデータ処理を実行するデータ処理装置において
、論理アドレスを物理アドレスに変換するアドレス変換
手段と、論理アドレスのアドレス変換を受ける部分を含
むアドレスビットによりアクセスされる第1バッファア
ドレスアレイと、物理アドレスの1部のビットによりア
クセスされる第2バッファアドレスアレイと、前記第1
バッファアドレスアレイでバッファミスを検出した場合
に第2バッファアドレスアレイの出力により複数の論理
アドレスからアクセスされる同一実アドレスのバッファ
データを無効にする制御手段とを有することを特徴とす
るデータ処理装置。 3、バッファ記憶を備え、命令処理装置が主記憶装置に
格納されたデータをバッファ記憶を介してアクセスし、
バッファ記憶を用いてデータ処理を実行するデータ処理
装置において、論理アドレスを物理アドレスに変換する
アドレス変換手段と、アドレス置換を受ける論理アドレ
スビットの一部のアドレスビットおよびアドレス変換を
受けない論理アドレスの一部のアドレスビットでアクセ
スされる第1バッファアドレスアレイと、アドレス変換
を受けない論理アドレスの一部のアドレスビットでアク
セスされる第2のバッファアドレスアレイと、アドレス
変換を受ける論理アドレスの一部およびアドレス変換を
受けない論理アドレスの一部でアクセスされるデータを
格納するバッファ記憶と、前記第1バッファアドレスア
レイでバッファミスを検出した場合に第2バッファアド
レスアレイの出力により複数の論理アドレスからアクセ
スされる同一実アドレスのバッファデータを無効にする
制御手段とを有することを特徴とするデータ処理装置。 4、前記請求項2または請求項3に記載のデータ処理装
置において、更に、第1バッファアドレスアレイをアク
セスするための論理アドレスの所定のアドレスビットを
第1バッファアドレスアレイに与えるための手段と、第
1バッファアドレスアレイの出力に応じてバッファ記憶
に登録したデータのアドレスヒットを検出する検出手段
と、前記検出手段に接続され、第1バッファアドレスア
レイでアドレスヒットが検出されなかった時、第2バッ
ファアドレスアレイをアクセスする制御手段とを備える
ことを特徴とするデータ処理装置。 5、前記請求項2または請求項3に記載のデータ処理装
置において、第2バッファアドレスアレイの出力により
複数の論理アドレスからアクセスされる同一実アドレス
のバッファデータを無効にする制御手段は、第2バッフ
ァアドレスアレイの出力に応じて、シノニムのヒットを
検出するシノニムヒット検出手段と、前記シノニムヒッ
ト検出手段に接続され、シノニムヒットを検出したとき
、第1バッファアドレスアレイおよび第2バッファアド
レスアレイの中の該当ブロックのエントリを、ロー番号
およびグループ番号に基づいて無効化する手段とから構
成されることを特徴とするデータ処理装置。 6、前記請求項2または請求項3に記載のデータ処理装
置において、命令処理装置におけるバッファ記憶制御装
置に、論理アドレスのアドレス変換を受ける部分を含む
アドレスによりアクセスされ、ロー数に等しい数を並列
に読み出し可能な第1バッファアドレスアレイと、論理
アドレスのアドレス変換を受けない部分によりアクセス
され、ロー数とグループ数の積に等しい数を並列に読み
出し可能な第2バッファアドレスアレイとを設けること
を特徴とするデータ処理装置。 7、前記請求項2または請求項3に記載のデータ処理装
置において、バッファ記憶制御装置におけるバッファア
ドレスアレイの写しを格納するシステムコントローラ内
のフロントバッファアドレスアレイに、論理アドレスの
アドレス変換を受けない部分によりアクセスされ、ロー
数とグループ数の積に等しい数を並列に読み出し可能な
第2バッファアドレスアレイを有することを特徴とする
データ処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63248840A JP2675836B2 (ja) | 1987-10-02 | 1988-09-30 | データ処理装置 |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP24780287 | 1987-10-02 | ||
| JP62-247802 | 1987-10-02 | ||
| JP63248840A JP2675836B2 (ja) | 1987-10-02 | 1988-09-30 | データ処理装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH01199250A true JPH01199250A (ja) | 1989-08-10 |
| JP2675836B2 JP2675836B2 (ja) | 1997-11-12 |
Family
ID=26538426
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63248840A Expired - Lifetime JP2675836B2 (ja) | 1987-10-02 | 1988-09-30 | データ処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2675836B2 (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH035851A (ja) * | 1989-06-01 | 1991-01-11 | Fujitsu Ltd | バッファ記憶装置 |
| JPH03216744A (ja) * | 1990-01-22 | 1991-09-24 | Fujitsu Ltd | 内蔵キャッシュ・メモリ制御方式 |
| JPH04227553A (ja) * | 1990-04-11 | 1992-08-17 | Digital Equip Corp <Dec> | 高速キャッシュメモリのアレイアーキテクチャ |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5975483A (ja) * | 1982-10-22 | 1984-04-28 | Fujitsu Ltd | バツフア・ストレ−ジ制御方式 |
| JPS60123946A (ja) * | 1983-12-09 | 1985-07-02 | Hitachi Ltd | アドレス変換装置 |
| JPS60142757A (ja) * | 1983-12-29 | 1985-07-27 | Nec Corp | アドレス変換装置 |
| JPS6217851A (ja) * | 1985-07-16 | 1987-01-26 | Hitachi Ltd | メモリ管理ユニット |
| JPS62118457A (ja) * | 1985-11-19 | 1987-05-29 | Hitachi Ltd | バツフア記憶制御方式 |
| JPS6451544U (ja) * | 1987-09-28 | 1989-03-30 |
-
1988
- 1988-09-30 JP JP63248840A patent/JP2675836B2/ja not_active Expired - Lifetime
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5975483A (ja) * | 1982-10-22 | 1984-04-28 | Fujitsu Ltd | バツフア・ストレ−ジ制御方式 |
| JPS60123946A (ja) * | 1983-12-09 | 1985-07-02 | Hitachi Ltd | アドレス変換装置 |
| JPS60142757A (ja) * | 1983-12-29 | 1985-07-27 | Nec Corp | アドレス変換装置 |
| JPS6217851A (ja) * | 1985-07-16 | 1987-01-26 | Hitachi Ltd | メモリ管理ユニット |
| JPS62118457A (ja) * | 1985-11-19 | 1987-05-29 | Hitachi Ltd | バツフア記憶制御方式 |
| JPS6451544U (ja) * | 1987-09-28 | 1989-03-30 |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH035851A (ja) * | 1989-06-01 | 1991-01-11 | Fujitsu Ltd | バッファ記憶装置 |
| JPH03216744A (ja) * | 1990-01-22 | 1991-09-24 | Fujitsu Ltd | 内蔵キャッシュ・メモリ制御方式 |
| JPH04227553A (ja) * | 1990-04-11 | 1992-08-17 | Digital Equip Corp <Dec> | 高速キャッシュメモリのアレイアーキテクチャ |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2675836B2 (ja) | 1997-11-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4332010A (en) | Cache synonym detection and handling mechanism | |
| US5133058A (en) | Page-tagging translation look-aside buffer for a computer memory system | |
| KR920005280B1 (ko) | 고속 캐쉬 시스템 | |
| KR910007725B1 (ko) | 정보처리장치 | |
| US5371870A (en) | Stream buffer memory having a multiple-entry address history buffer for detecting sequential reads to initiate prefetching | |
| US4493026A (en) | Set associative sector cache | |
| US6356990B1 (en) | Set-associative cache memory having a built-in set prediction array | |
| CA2020275C (en) | Apparatus and method for reading, writing, and refreshing memory with direct virtual or physical access | |
| US5379394A (en) | Microprocessor with two groups of internal buses | |
| US5956752A (en) | Method and apparatus for accessing a cache using index prediction | |
| US6571316B1 (en) | Cache memory array for multiple address spaces | |
| JPS589277A (ja) | デ−タ処理装置 | |
| US5060136A (en) | Four-way associative cache with dlat and separately addressable arrays used for updating certain bits without reading them out first | |
| KR920001282B1 (ko) | 버퍼메모리 제어장치 | |
| US5050126A (en) | Buffer memory control apparatus | |
| EP0284751B1 (en) | Cache memory | |
| JPS63101944A (ja) | 記憶制御装置 | |
| KR19990071554A (ko) | 어드레스충돌검출기능을갖는멀티포트캐시메모리 | |
| US5452418A (en) | Method of using stream buffer to perform operation under normal operation mode and selectively switching to test mode to check data integrity during system operation | |
| EP0531123B1 (en) | A dynamic address translation processing apparatus in a data processing system | |
| KR100204024B1 (ko) | 페이지 경계에 걸리는 분할 라인을 한 사이클에 억세스할 수 있는 컴퓨팅 시스템 | |
| KR960008320B1 (ko) | 어드레스 변환장치 및 어드레스 변환방법 | |
| JP2675836B2 (ja) | データ処理装置 | |
| KR19990082723A (ko) | 데이타프로세싱시스템내의캐쉬메모리를억세싱하기위한방법및시스템 | |
| US6134699A (en) | Method and apparatus for detecting virtual address parity error for a translation lookaside buffer |