JPH0484242A - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JPH0484242A
JPH0484242A JP2200638A JP20063890A JPH0484242A JP H0484242 A JPH0484242 A JP H0484242A JP 2200638 A JP2200638 A JP 2200638A JP 20063890 A JP20063890 A JP 20063890A JP H0484242 A JPH0484242 A JP H0484242A
Authority
JP
Japan
Prior art keywords
data
address
bus
cache
main memory
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
JP2200638A
Other languages
English (en)
Inventor
Hidenobu Ota
大田 秀信
Taizo Sato
泰造 佐藤
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 JP2200638A priority Critical patent/JPH0484242A/ja
Publication of JPH0484242A publication Critical patent/JPH0484242A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 データ処理装置に関し、 バスエラー等が発生した場合でも、エラーアドレスに対
応する主記憶とキャッシュ手段との一貫性を保つ、信頌
性の高いデータ処理装置を提供することを目的とし、 フェッチした命令コードをデコードし、該デコード結果
に基づいて所定の処理を実行する実行手段と、該実行手
段およびシステムハスのインターフェースを制御するバ
ス制御手段と、該バス制御手段によってシステムハスを
介して前記実行手段がデータの読み書きを行う主記憶と
、該主記憶上の一度アクセスされたアドレスに対するデ
ータを記憶保持するキャッシュ手段と、バスエラー発生
時に、所定のエラー処理実行のためにエラーアドレスを
保持するエラーアドレス記憶手段と、前記主記憶にデー
タ書き込みを行う際にバスエラーが発生したときに、前
記キャッシュ手段に該エラーアドレス記憶手段に保持さ
れたエラーアドレスに対するデータが記憶保持されてい
た場合、該キャッシュ手段に記憶保持されたデータを無
効にする無効化手段とを備えるように構成している。
〔産業上の利用分野] 本発明は、データ処理装置に係り、詳しくは、−度アク
セスされたアドレスに対するメモリを、アクセス時間の
長い主記憶からアクセス時間の短いキャッシュメモリに
移し、次回以降のアクセスを高速化するキャッシュ手段
を備えたデータ処理装置に関する。
近年、データ処理装置、例えば、MPU(Micro 
Processing Unit)を含むコンピュータ
等においては、演算処理の高速化のためにキャッシュメ
モリを内蔵したデータ処理装置が数多く開発されている
このようなデータ処理装置では、主記憶とキャッシュメ
モリとの同一アドレスに対するデータは同じである必要
があり、キャッシュメモリを設ける目的からも主記憶と
キャッシュメモリとの一貫性を保つ必要がある。
〔従来の技術] 従来、このようなデータ処理装置としては、例えば、第
4図に示すようなものがある。
このデータ処理装置は、大別して、MPUIと主記憶2
とからなり、MPUIは、実行手段3、バス制御手段4
、キャッシュ手段5、エラーアドレス記憶手段6から構
成されている。
実行手段3は、命令が実行され4際、システムバス7を
介して主記憶2からオペコードやオペランドを取り出し
、デコードした結果に基づいて所定の処理を行うもので
あり、バス制御手段4は、実行手段3とシステムバス7
とのインターフェースを制御するものである。
キャッシュ手段5は、主記憶2上の一度アクセスされた
アドレスに対するメモリを記憶保持する小容量の高速メ
モリであり、アクセス時間の長い主記憶2からキャッシ
ュ手段5にデータを移し、次回以降のアクセスを高速化
するものである。そして、このキャッシュ手段5は、す
でにキャッシュに入っているアドレスに対してメモリの
書き込みを行った場合、キャッシュと主記憶2との両方
に対して書き込みを行うライトスル一方式が採用されて
いる。
エラーアドレス記憶手段6は、バスエラー発生時に、エ
ラー処理としての例外処理等の実行を行う際の参照アド
レスとなるエラーアドレスを保持するものである。
以上の構成において、キャッシュ手段5と主記憶2との
両方に対して書き込みが行われる際に、バスエラーが生
じた場合、キャッシュ手段5に対してのみ書き込みが行
われ、主記憶2に対しての書き込みが行われない。そこ
で、エラーアドレス記憶手段6によって保持されている
バスエラー発生時のエラーアドレスに基づいて例外処理
等の実行が行われ、再度、主記憶2に対して書き込みを
行っていた。
〔発明が解決しようとする課題〕
しかしながら、このような従来のデータ処理装置にあっ
ては、キャッシュ手段5と主記憶2との両方に対して書
き込みが行われる際に、バスエラーが生じた場合、キャ
ッシュ手段5に対してのみ書き込みが行われて、主記憶
2に対しての書き込みが行われないという構成となって
いたため、このエラーアドレスに対する主記憶2とキャ
ッシュ手段5とのデータの一貫性が保たれないという問
題点があった。すなわち、本来、−度アクセスされたア
ドレスに対する主記憶2上のデータを、アクセス時間の
長い主記憶からアクセス時間の短いキャッシュ手段5に
移し、次回以降のアクセスを高速化するために設けられ
たキャッシュ手段5が、ソフトウェアによる例外処理等
が完了するまでのわずかな時間とはいえ、主記憶2と同
一アドレスで異なるデータを有するために、何かの拍子
に、この期間中に、このエラーアドレスに対してのアク
セス動作が行われた場合、主記憶2上のデータと異なる
データが参照されることになる。このことは、システム
の信転性の面で重要な問題となる。
この問題に対して従来は、プログラム変更によって主記
憶2と同一アドレスのキャッシュ手段5へのアクセスを
回避するようにしていた。けれども、この場合問題が生
じた後のデバッグ作業が新たに必要となるという問題点
がある。
そこで本発明は、バスエラー等が発生した場合でも、エ
ラーアドレスに対応する主記憶とキヤ・7シユ手段との
一貫性を保つ、信転性の高いデータ処理装置を提供する
ことを目的としている。
〔課題を解決するための手段] 本発明によるデータ処理装置は上記目的達成のため、そ
の原理図を第1図に示すように、フェッチした命令コー
ドをデコードし、該デコード結果に基づいて所定の処理
を実行する実行手段3と、該実行手段3およびシステム
ハス7のインターフェースを制御するハス制御手段4と
、該バス制御手段4によってシステムバス7を介して前
記実行手段3がデータの読み書きを行う主記憶2と、該
主記憶2上の一度アクセスされたアドレスに対するデー
タを記憶保持するキャッシュ手段5と、バスエラー発生
時に、所定のエラー処理実行のためにエラーアドレスを
保持するエラーアドレス記憶手段6と、前記主記憶2に
データ書き込みを行う際にバスエラーが発生したときに
、該エラーアドレス記憶手段6に保持されたエラーアド
レスに対するデータが前記キャッシュ手段5に記憶保持
されていた場合、該キャッシュ手段5に記憶保持された
データを無効にする無効化手段8とを備えるように構成
している。
なお、前記実行手段3は、少なくとも一段のストアバ―
ンファ18を有し、前記無効化手段8は、前記主記憶2
にデータ書き込みを行う際にバスエラーが発生したとき
に、該ストアバッファ18内に保持された全てのアドレ
スに対する前記キャッシュ手段5のデータを無効にする
ように構成することは有効である。
〔作用〕
本発明では、主記憶にデータ書き込みを行う際にバスエ
ラーが発生したとき、エラーアドレス記憶手段に保持さ
れたエラーアドレスに対するデータがキャッシュ手段に
記憶保持されていた場合、キャッシュ手段に記憶保持さ
れたデータが無効化手段によって無効化される。すなわ
ち、主記憶に書き込みが失敗したアドレスに対するデー
タについてはキャッシュ手段に登録されず、主記憶に書
き込みが成功したアドレスに対するデータについてのみ
キャッシュ手段に登録される。
したがって、バスエラー等が発生した場合でも、エラー
アドレスに対応する主記憶とキャッシュ手段との一貫性
が保たれ、高信顧性が得られる。
(実施例〕 以下、本発明を図面に基づいて説明する。
第2図は本発明に係るデータ処理装置の第1実施例を示
す図であり、この図において、第1図に示した原理図と
同一番号は同一または相当部分を示す。
本実施例の実行手段3は、アドレス計算部9、アドレス
バッファ10、ライトデータバッファ1にバイパス12
からなり、キャッシュ手段5は、アドレス情報と有効ビ
ットとを有するタグ部13、タグ部13に登録されてい
るアドレスの内容を保持するキャッシュメモリ部14か
ら構成されている。
無効化手段8は、主記憶2にデータを書き込む際にエラ
ーが発生した場合、キャッシュ手段5の該当するアドレ
スに対するデータを無効化する制御ヲ行い、システムバ
ス7は、アドレスバス、データバス、およびバスエラー
信号線7a等のその他各種の制御線からなっている。
なお、15は内部アドレスバス、16は内部データバス
、17は例外バスである。
次に作用を説明する。
まず、アドレス計算部9により生成されたアドレスが、
アドレスバッファ10にラッチされ、内部アドレスバス
15に出力されるとともに、書き込みデータがライトデ
ータバッファ11を介して内部データバス16に出力さ
れる。そして、内部アドレスバス15、内部データバス
16にそれぞれ出力されたアドレス、およびデータがハ
ス制御手段4によりシステムバス7上に出力される。こ
こで、アドレス計算部9で生成されたアドレスがキャッ
シュ手段5にヒツトすれば、内部データバス16を介し
てデータの書き込みが行われる。すなわち、システムハ
ス7にアドレス、お、よびデータが出力され、MPUI
に正常終了信号が返ってくれば、書き込みが無事に行わ
れたことになる。
システムハス7からバスエラー信号線7aを介してバス
エラー信号が返ってくると、何らかの原因によりデータ
の書き込みが失敗したことになり、このバスエラー信号
がバス制御手段4を介して無効化手段8に入力される。
すると、無効化手段8の制御信号によってアドレスバッ
ファ10に保持されたアドレスが例外ハス17を介して
エラーアドレス記憶手段6に入力され、図示しないデー
タ処理装置内で、プロセス・ステータス・ワード(PS
W)7例外(EIT)情報、入出力情報、エラーデータ
等がそれぞれ退避バッファに保持され、主記憶2上にこ
れらの情報が書き込まれる。
エラーアドレスの退避が行われる場合、無効化手段8に
よってエラーアドレス記憶手段6に保持されたアドレス
が例外ハス17を介してバイパス12から内部データバ
ス16に出力され、ハス制御手段4によってシステムバ
ス7に出力される。またこのとき、アドレス計算部9に
より退避情報が書き込まれるべきアドレスも、アドレス
バッファ10に出力され、ハス制御手段4によってシス
テムハス7に出力される。以上で主記憶2上の退避情報
の格納が終了すると、無効化手段8によってエラーアド
レス記憶手段6から内部アドレスバス15を介してキャ
ッシュ手段5のタグ部13にエラーアドレスが出力され
、このタグ部13からエラーアドレスに対するヒツト信
号が無効化手段8に出力される。
ここで、もしヒツトしていたらタグ部13の有効ビット
が無効化され、ヒツトしていなかったら何も行わない。
したがって、主記憶にデータ書き込みを行う際にバスエ
ラーが発生したときに、エラーアドレス記憶手段に保持
されたエラーアドレスに対するデータがキャッシュ手段
に記憶保持されていた場合、キャッシュ手段に記憶保持
されたデータを無効にでき、エラーアドレスに対応する
主記憶とキャッシュ手段との一貫性を保つことができる
第3図は本発明に係るデータ処理装置の第2実施例を示
す図であり、この図において、第2図に示した第1実施
例と同一番号は同一または相当部分を示す。
本実施例では、第1実施例におけるライトデータバッフ
ァ11の代わりに二段のストアバッファ18を用いたも
のである。
ストアバッファ18は、データ処理装置から外部に書き
込み動作を行うときに、バス権が取れなかったために主
記憶2に書き込みを行えなくても、バス権が取れたとき
に主記憶2に書き込みが行えるようにアドレスとデータ
とを保持するレジスタであり、これにより、データ処理
装置が一旦スドアバッファ18内に書き込みを行えば、
データ処理装置は主記憶2に書き込みを行ったものとし
て次の処理に進んでしまうものである。
以上の構成において、データ書き込みの際、アドレス計
算部9により生成されたアドレスがアドレスバッファ1
0を介してキャッシュ手段5とストアバッファ18とに
出力されるとともに、書き込みデータがストアバッファ
18を介してキャッシュ手段5に出力される。そして、
アドレス、およびデータがバス制御手段4によりシステ
ムバス7上に出力される。ここで、アドレス計算部9で
生成されたアドレスがキャッシュ手段5にヒツトすれば
、内部データバス16を介してデータの書き込みが行わ
れる。もし、このときハス権が取れず、′主記憶2に対
して書き込みが行われなかった場合は、ハス権が取れる
までストアバッファ18に登録されたアドレスとデータ
とが保持され、バス権が取れたらバス制御手段4によっ
て主記憶2への書き込みが行われる。
主記憶2に書き込まれていないデータがストアバッファ
18内に2つ登録された状態で、最初の書き込みデータ
の書き込みが失敗した場合、ストアバッファ18に登録
されている最初のアドレスがバイパス12によってスト
アバッファアドレスバス19゜内部アドレス15から例
外ハス17に出力され、エラーアドレス記憶手段6に登
録される。そして、第1実施例と同様に該当アドレスに
対するタグ部13の有効ビットが無効化手段8によって
無効化される。ここで、ストアハンフ718には2つの
データが登録されているので、ストアバソファ18内の
次のアドレスに対しても同様の無効化処理が行われ、ス
トアバソファ18に登録されてあった書き込みデータの
全てについて無効化が行われる。
したがって、ストアバソファのように特殊な用途のレジ
スタが用いられたデータ処理装置にあっても、エラーア
ドレスに対応する主記憶とキヤ。
シュ手段との一貫性を保つことができる。
このように本実施例では、主記憶にデータ書き込みを行
う際にバスエラーが発生したときに、エラーアドレス記
憶手段に保持されたエラーアドレスに対するデータがキ
ャッシュ手段に記憶保持されていた場合、キャッシュ手
段に記憶保持されたデータを無効にでき、主記憶に書き
込みが失敗したアドレスに対するデータはキャンシュ手
段に登録せずに、主記憶に書き込みが成功したアドレス
に対するデータのみをキャッシュ手段に登録することが
できる。
したがって、バスエラー等が発生した場合でも、エラー
アドレスに対応する主記憶とキャッシュ手段との一貫性
を保つことができ、信頼性の高いデータ処理装置を提供
することができる。
なお、上記第1実施例では、データ処理装置内からの退
避情報を主記憶2に書き込んだ後でキャッシュの無効化
を行っているが、これに限らず、データ処理装置内で退
避情報を各バッファに退避するのと同時に行ってもかま
わない。
また、上記第2実施例では、二段のストアバッファ18
を用いた場合を例にとって説明しているが、三段以上で
ある場合についても二段の場合と同様の処理を繰り返す
だけで対処することができる。
〔発明の効果〕
本発明では、バスエラー等が発生した場合でも、エラー
アドレスに対応する主記憶とキャッシュ手段との一貫性
を保つことができ、信頼性の高いデータ処理装置を提供
することができる。
【図面の簡単な説明】
第1図は本発明のデータ処理装置の原理説明図、第2.
3図は本発明のデータ処理装置を示し、第2図はその第
1実施例の全体構成を示すブロック図、 第3図はその第2実施例の全体構成を示すブロック図、 第4図は従来例のデータ処理装置の原理説明図である。 1・・・・・・MPU、 2・・・・・・主記憶、 3・・・・・・実行手段、 4・・・・・・バス制御手段、 5・・・・・・キャッシュ手段、 6・・・・・・エラーアドレス記憶手段、7・・・・・
・システムハス、 8・・−・・・無効化手段、 9・・・・・・アドレス計算部、 10・・・・・・アドレスバッファ、 11・・・・・・ライトデータバッファ、12・・・・
・・バイパス、 13・・・・・・タグ部、 14・・・・・・キャッシュメモリ部、15・・・・・
・内部アドレスバス、 16・・・・・・内部データバス、 17・・・・・・例外バス、 18・・−・・・ストアバッファ、 19・・・・・・ストアバッファアドレスバス。

Claims (2)

    【特許請求の範囲】
  1. (1)フェッチした命令コードをデコードし、該デコー
    ド結果に基づいて所定の処理を実行する実行手段と、 該実行手段およびシステムバスのインターフェースを制
    御するバス制御手段と、 該バス制御手段によってシステムバスを介して前記実行
    手段がデータの読み書きを行う主記憶と、 該主記憶上の一度アクセスされたアドレスに対するデー
    タを記憶保持するキャッシュ手段と、バスエラー発生時
    に、所定のエラー処理実行のためにエラーアドレスを保
    持するエラーアドレス記憶手段と、 前記主記憶にデータ書き込みを行う際にバスエラーが発
    生したときに、該エラーアドレス記憶手段に保持された
    エラーアドレスに対するデータが前記キャッシュ手段に
    記憶保持されていた場合、該キャッシュ手段に記憶保持
    されたデータを無効にする無効化手段とを備えたことを
    特徴とするデータ処理装置。
  2. (2)前記実行手段は、少なくとも一段のストアバッフ
    ァを有し、 前記無効化手段は、前記主記憶にデータ書き込みを行う
    際にバスエラーが発生したときに、該ストアバッファ内
    に保持された全てのアドレスに対する前記キャッシュ手
    段のデータを無効にすることを特徴とする請求項1記載
    のデータ処理装置。
JP2200638A 1990-07-26 1990-07-26 データ処理装置 Pending JPH0484242A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2200638A JPH0484242A (ja) 1990-07-26 1990-07-26 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2200638A JPH0484242A (ja) 1990-07-26 1990-07-26 データ処理装置

Publications (1)

Publication Number Publication Date
JPH0484242A true JPH0484242A (ja) 1992-03-17

Family

ID=16427721

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2200638A Pending JPH0484242A (ja) 1990-07-26 1990-07-26 データ処理装置

Country Status (1)

Country Link
JP (1) JPH0484242A (ja)

Similar Documents

Publication Publication Date Title
US5291586A (en) Hardware implementation of complex data transfer instructions
JP3016575B2 (ja) 複数キャッシュ・メモリ・アクセス方法
US5347636A (en) Data processor which efficiently accesses main memory and input/output devices
JPH0552968B2 (ja)
JPS63195752A (ja) キヤツシユメモリ−
US5987585A (en) One-chip microprocessor with error detection on the chip
JPS6324428A (ja) キヤツシユメモリ
JP2695017B2 (ja) データ転送方式
JPH01290050A (ja) バッファ記憶装置
JPH0484242A (ja) データ処理装置
JP3145545B2 (ja) メモリアクセス装置
JPH07234819A (ja) キャッシュメモリ
JPH0298754A (ja) 主記憶制御方式
KR100201671B1 (ko) 컴퓨팅 시스템 및 컴퓨팅 시스템의 캐시 메모리 이용방법
JP2791319B2 (ja) データ処理装置
KR0155931B1 (ko) 외부에서 억세스 가능한 온칩 캐시 메모리 시스템
JPH01298453A (ja) キャッシュエラー処理方式
JPH04340145A (ja) キャッシュメモリ装置
JPH02275551A (ja) キャッシュメモリのデバッグ装置
JPS6010368A (ja) アドレス変換バツフア制御方式
JPS62115553A (ja) バッファストレイジ無効化処理方式
JPS6135583B2 (ja)
JP2952884B2 (ja) キャッシュコントローラ
JPH0320834A (ja) 情報処理装置の初期診断方法
JPH02259945A (ja) ストア処理方式