JPH08123726A - キャッシュメモリの制御方式 - Google Patents

キャッシュメモリの制御方式

Info

Publication number
JPH08123726A
JPH08123726A JP6258313A JP25831394A JPH08123726A JP H08123726 A JPH08123726 A JP H08123726A JP 6258313 A JP6258313 A JP 6258313A JP 25831394 A JP25831394 A JP 25831394A JP H08123726 A JPH08123726 A JP H08123726A
Authority
JP
Japan
Prior art keywords
cache memory
debug data
debug
data
column
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
JP6258313A
Other languages
English (en)
Inventor
Shoji Kume
正二 久米
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 JP6258313A priority Critical patent/JPH08123726A/ja
Publication of JPH08123726A publication Critical patent/JPH08123726A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【目的】 実機デバッグにおいて、LSIからのデバッ
グデータを採取するために使用して好適なキャッシュメ
モリの制御方式。 【構成】 デバッグデータの採取開始の指示があると、
セレクタ14は、通常データ転送パス15からデバッグ
データ転送パス16にそのパス選択を切替えるように制
御される。その後、キャッシュメモリ11は、別に指示
されるトリガに従って、デバッグデータ転送パス16上
に転送されてくるデバッグデータを、キャッシュメモリ
書き込みカラム指示レジスタ13により示されるカラム
に書き込み、そのデバッグデータ格納判定フラグ1Cを
オンとする。そして、この書き込みが行われる毎に、レ
ジスタ13は、インクリメンタ1Aによりインクリメン
トされる。前述のキャッシュメモリ11へのデバッグデ
ータの書き込みは、デバッグデータの採取終了の指示が
あるまで繰り返し実行される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、演算処理装置における
キャッシュメモリの制御方式に係り、特に、キャッシュ
メモリへ実機デバッグ時のデバッグ情報を書き込むため
に使用して好適なキャッシュメモリの制御方式に関す
る。
【0002】
【従来の技術】近年、LSIの高集積化の進展によりL
SIの論理構造の複雑化が進み、LSIの開発期間のう
ち実機デバッグがかなりの割合を占めるようになってき
ている。このような実機デバッグを効率化するためにデ
バッグデータを採取する様々な手段がLSIに実装され
ている。この手段の1つとして、LSIチップインタフ
ェイスにパイプライン状態情報等を出力するというもの
が知られている。
【0003】なお、この種の従来技術として、例えば、
June 1994/Vol.37. No.6 Communication of the
ACM等に記載された技術が知られている。
【0004】
【発明が解決しようとする課題】前記従来技術は、LS
Iにデバッグ情報採取専用の多くのインタフェイスピン
を設ける必要があるが、チップのピン数の制約を受けて
多数のピンを設けることが困難な場合が多く、このた
め、少量のデバッグ情報しか採取することができないと
いう問題点を有している。また、前述したピン数による
制約を避けるためにピンの多目的化を行い、1本のピン
をあるときはデバッグ情報採取に使用し、あるときは別
の目的に使用するという方法があるが、この方法は、別
の目的にピンが使用されている場合に、デバッグ情報を
採取することができないという問題点を生じさせる。
【0005】さらに、近年、LSIの動作周波数が向上
しており、これに伴ってチップピンを経由してマシンサ
イクル毎のデバッグデータを採取することが困難になり
つつある。これを解決するため、デバッグデータ格納専
用のRAMをLSIに内蔵する方法が考えられている
が、LSIのチップ面積の制約から内部にRAMを構成
することは一般に困難である。
【0006】本発明の目的は、前記従来技術の問題点を
解決し、LSIからの実機デバッグ時のデバッグデータ
を採取するために使用して好適なキャッシュメモリの制
御方式を提供することにある。
【0007】
【課題を解決するための手段】本発明によれば前記目的
は、演算処理装置のキャッシュメモリに、通常のキャッ
シュメモリ動作を行うモードとデバッグデータをキャッ
シュメモリに書き込むモードとを設けると共に、キャッ
シュメモリの書き込みポートにセレクタを設け、通常の
キャッシュデータとデバッグデータとを選択して書き込
みを行うようにすることにより、また、キャッシュメモ
リ内のデータが通常データかデバッグデータかを判定す
るために判定用フラグをキャッシュメモリ内に設けるこ
とにより達成される。
【0008】さらに、前記目的は、キャッシュメモリを
デバッグデータ格納に使用することによりキャッシュミ
スを過剰に発生させデバッグ対象現象が再現しなくなる
等の不具合の発生に備え、キャッシュメモリの特定のカ
ラムのみをデバッグデータ格納に使用できるようにする
ことにより達成される。
【0009】
【作用】デバッグデータ採取開始の指示が発生すると、
キャッシュメモリの書き込みポートに設けられたセレク
タは、通常データ転送パスからデバッグデータ転送パス
にそのパス選択を切替えるように制御される。そして、
ある条件、例えば、マシンサイクル毎、または、ある内
部信号がオンのとき等をトリガとしてデバッグデータが
キャッシュメモリに書き込まれる。このとき、書き込ま
れたデータがデバッグデータであることを示すために、
キャッシュメモリの各カラム毎に設けられたデバッグデ
ータ格納判定フラグが立てられる。書き込まれたデバッ
グデータは、専用命令により、ソフトウエアを介して読
み出される。
【0010】また、キャッシュメモリの特定のカラムの
みをデバッグデータ格納に使用できるようにすることに
より、キャッシュミスを過剰に発生させデバッグ対象現
象が再現しなくなる等の不具合の発生を防止することが
できる。
【0011】
【実施例】以下、本発明によるキャッシュメモリの制御
方式の実施例を図面により詳細に説明する。
【0012】図1は本発明を適用した演算処理装置の第
1の実施例の構成を示すブロック図である。図1におい
て、11はキャッシュメモリ、12はキャッシュメモリ
読み出しカラム指示レジスタ、13はキャッシュメモリ
書き込みカラム指示レジスタ、14は書き込みデータセ
レクタ、15はキャッシュメモリへの通常データ転送パ
ス、16はデバッグデータ転送パス、17は読み出しポ
ート、1Aはインクリメンタ、1Cはデバッグデータ格
納判定フラグである。
【0013】図1に示す本発明の第1の実施例は、キャ
ッシュメモリ11を含む本発明に必要な部分のみの構成
を示したものであり、デバッグデータ格納判定フラグ1
Cを有するキャッシュメモリ11と、キャッシュメモリ
への通常データ転送パス15、デバッグデータ転送パス
16の一方を選択する書き込みデータセレクタ14と、
読み出しカラム指示レジスタ12と、インクリメンタ1
Aによりインクリメントされる書き込みカラム指示レジ
スタ13とを備えて構成される。
【0014】前述のように構成される本発明の第1の実
施例において、いま、図示しない手段からデバッグデー
タの採取開始の指示があり、デバッグデータをキャッシ
ュメモリに書き込むモードにされると、セレクタ14
は、通常データ転送パス15からデバッグデータ転送パ
ス16を選択するようにその切替えが制御される。そし
て、キャッシュメモリに対する書き込みカラム指示レジ
スタ13がある値に初期設定される。
【0015】その後、キャッシュメモリ11は、別に指
示されるトリガに従って、デバッグデータ転送パス16
上に転送されてくるデバッグデータを、キャッシュメモ
リ書き込みカラム指示レジスタ13により示されるカラ
ムに書き込み、当該カラムのデバッグデータ格納判定フ
ラグ1Cをオンとする。そして、この書き込みが行われ
る毎に、書き込みカラム指示レジスタ13は、インクリ
メンタ1Aによりインクリメントされる。前述のキャッ
シュメモリ11へのデバッグデータの書き込み、書き込
みカラム指示レジスタ13のインクリメントは、デバッ
グデータの採取終了の指示があるまで繰り返し実行され
る。
【0016】これにより、キャッシュメモリ11は、各
カラムにデバッグデータを格納することができる。
【0017】そして、図示しない手段からデバッグデー
タの採取終了の指示があり、通常のキャッシュ動作を行
うモードにされると、セレクタ14は、デバッグデータ
転送パス16から通常データ転送パス15を選択するよ
うにその切替えを行う。
【0018】通常モードへの復帰後、デバッグデータが
書き込まれたカラムに対する通常データの書き込みを抑
止して、他のカラムに通常データを書き込む処理が実行
される。但し、この通常データの書き込み抑止は必須で
はない。
【0019】前述したデバッグデータの採取開始/終了
の指示は、命令によるプログラムを開始したとき、演算
処理装置の外部からの信号による指示等であってよく、
さらに、終了指示としては、全カラムへのデバッグデー
タ書き込み終了を契機とする方法もある。
【0020】このデバッグデータの採取時のデバッグデ
ータをキャッシュに書き込むものとすると、前述したデ
バッグデータの採取開始/終了の指示、すなわち、デバ
ッグモードのセット/リセットの指示は、具体的には次
のような方法によることができる。
【0021】デバッグモードのセット方法 (a)診断用メッセージ等の専用命令を用いて、ソフト
ウェア的にデバッグモードにセットする方法。 (b)ハードウェアのある条件、例えば、キャッシュミ
スを検出したときに、デバッグモードにセットする方
法。 (c)LSIチップの外部からの信号、例えば、LSI
チップの外部インタフェースで特別な信号あるいはシー
ケンスが“1”となったとき、デバッグモードにセット
する方法。
【0022】デバッグモードのリセット方法 (a)専用命令を用いて、ソフトウェア的にデバッグモ
ードをリセットする方法。 (b)ハードウェアのある条件、例えば、障害検出/ス
トップを検出したときに、デバッグモードをリセットす
る方法。 (c)全カラムへのデバッグデータの書き込みが終了し
たときに、デバッグモードをリセットする方法。
【0023】前述したデバッグモードの情報は、フリッ
プフロップ等に保持され、書き込みデータの選択に用い
られる。また、デバッグモードのセット/リセットをど
の方法により行うかを指定し、それを保持するレジスタ
を設けることにより、前述した方法の何れを使用して
も、あるいは、複数の方法を混在させて使用しても、デ
バッグモードのセット/リセットを制御することが可能
である。
【0024】前述したようにしてキャッシュメモリ内に
書き込まれた実機デバッグ時のデバッグデータは、専用
命令を用いたソフトウエア的手段等により読み出すこと
ができる。
【0025】前述した本発明の第1の実施例によれば、
デバッグデータ格納専用のRAMをLSI内に内蔵する
ことなく、デバッグデータをキャッシュメモリ内に格納
することができ、しかも、デバッグデータ採取時にLS
Iピンを使用する必要もないので、ピン数による制約か
ら開放されると共に、内蔵キャッシュメモリと同程度の
高周波数でデバッグデータを採取することができる。
【0026】図2は本発明を適用した演算処理装置の第
2の実施例の構成を示すブロック図である。図2におい
て、28はデバッグデータ書き込み開始アドレス指示レ
ジスタ、29はデバッグデータ書き込み終了アドレス指
示レジスタ、2Bは比較器であり、他の符号は図1の場
合と同一である。
【0027】前述した本発明の第1の実施例は、キャッ
シュメモリ11の全面をデバッグデータ格納エリアとし
て使用することが可能なものであるとして説明したが、
図2に示す本発明の第2の実施例は、キャッシュメモリ
の1部のみをデバッグデータ格納エリアとして使用する
ようにしたものである。前述した本発明の第1の実施例
では、キャッシュメモリが縮退動作を行うためにキャッ
シュミスが過剰に発生し、デバッグ対象現象が発生しな
くなる等の不具合が生じる恐れがあり、この本発明の第
2の実施例は、それへの対処手段を講じたものである。
【0028】本発明の第2の実施例は、図2に示すよう
に、図1に示す本発明の第1の実施例の構成に、デバッ
グデータ書き込み開始アドレス指示レジスタ28、デバ
ッグデータ書き込み終了アドレス指示レジスタ29、デ
バッグデータ書き込み終了アドレス指示レジスタ29と
書き込みカラム指示レジスタ13との内容を比較する比
較器2Bを加えて構成されている。
【0029】いま、図2において、キャッシュメモリ1
1のカラムアドレスが8ビットで構成されているものと
し、デバッグの対象となっている現象ではカラムアドレ
スの“00000000”から“00111111”に
対応するキャッシュメモリのカラムをアクセスしている
ものとする。
【0030】そして、本発明の第2の実施例は、カラム
アドレス“00000000”から“0011111
1”に対する通常の読み出しアクセスを許可する一方、
カラムアドレス“01000000”から“11111
111”に対してデバッグデータの書き込みを行うよう
にしている。このため、本発明の第2の実施例は、カラ
ムアドレス“00000000”から“0011111
1”の通常データが、デバッグデータにより上書きされ
ることが無いためインキャッシュ状態のまま保存され、
デバッグデータ採取中であっても、カラムアドレス“0
0000000”から“00111111”へのアクセ
スにより過剰なキャッシュミスが生じることがなくな
り、デバッグを行う対象の現象が変化する恐れを低減す
ることができる。
【0031】前述したように構成される本発明の第2の
実施例において、デバッグデータ書き込み開始アドレス
指示レジスタ28は、カラムアドレス“0100000
0”の値に、デバッグデータ書き込み終了アドレス指示
レジスタ29は、“11111111”の値に、それぞ
れソフトウエア等の手段により予め設定される。
【0032】そして、図示しない手段からデバッグデー
タの採取開始の指示があると、デバッグデータ書き込み
開始アドレス指示レジスタ28の内容がキャッシュメモ
リ書き込みカラム指示レジスタ13に転送される。その
後、キャッシュメモリ11は、図1により説明した本発
明の第1の実施例の場合と同様に、キャッシュメモリ書
き込みカラム指示レジスタ13により示されるカラムに
書き込む処理を行う。キャッシュメモリ書き込みカラム
指示レジスタ13の内容とデバッグデータ書き込み終了
アドレス指示レジスタ29の内容とは、前述の動作中、
比較器2Bにより比較されており、これらが等しくなる
と、デバッグデータの書き込み動作が終了させられる。
【0033】前述した本発明の第2の実施例は、デバッ
グデータの採取動作と通常のキャッシュ動作との競合が
キャッシュメモリ上で発生する可能性がある。これに対
処するための方法として、次の3つの方法があり、本発
明では、そのいずれを使用してもよい。
【0034】第1の方法は、デバッグデータ採取時、当
該キャッシュの全てが縮退しているとして扱うようにす
る方法であり、この方法は、結果として、図1により説
明したものと同一となる。第2の方法は、デバッグデー
タ採取時、当該キャッシュに対する読み出しのみを許可
する方法である。第3の方法は、デバッグデータ採取
時、当該キャッシュに対する読み出し、及び、書き込み
の両方を許可する方法である。
【0035】すなわち、第1の方法は、デバッグデータ
採取中に当該キャッシュへの通常データの読み出しまた
は書き込み要求があっても無視するもので、読み出し/
書き込み要求を下位階層のメモリシステムへ転送するも
のである。第2の方法は、書き込み要求に対して第1の
方法と同様に扱い、読み出し要求に対して、アドレスを
キャッシュメモリ読み出しカラム指示レジスタに格納し
て読み出しポート17より通常データを読み出す処理を
行うものである。
【0036】また、第3の方法は、通常のキャッシュ動
作による書き込みとデバッグデータ採取による書き込み
との2個の書き込み動作が同時に要求される可能性があ
る。このため、この第3の方法は、1マシンサイクルを
半分に分け、前半の半サイクルでデバッグモニタデータ
の書き込みを行い、後半の半サイクルで通常データの書
き込みを行う等の処理が必要なものである。読み出しに
関しては、第2の方法と同様である。
【0037】前述した本発明の第2の実施例によれば、
本発明の第1の実施例の効果に加えて、キャッシュミス
を過剰に発生させデバッグ対象現象が再現しなくなる等
の不具合の発生を防止することができる。
【0038】
【発明の効果】以上説明したように本発明によれば、デ
バッグデータ格納専用のRAMをLSI内に内蔵するこ
となく、実機デバッグ時のデバッグデータをキャッシュ
メモリ内に格納することができ、しかも、デバッグデー
タ採取時にLSIピンを使用する必要もないので、ピン
数による制約から開放されると共に、内蔵キャッシュメ
モリと同程度の高周波数でデバッグデータを採取するこ
とができ、これにより、LSIデバッグのための効率的
なツールを提供することができる。
【0039】さらに、本発明によれば、キャッシュミス
を過剰に発生させデバッグ対象現象が再現しなくなる等
の不具合の発生を防止することができる。
【図面の簡単な説明】
【図1】本発明を適用した演算処理装置の第1の実施例
の構成を示すブロック図である。
【図2】本発明を適用した演算処理装置の第2の実施例
の構成を示すブロック図である。
【符号の説明】
11 キャッシュメモリ 12 キャッシュメモリ読み出しカラム指示レジスタ 13 キャッシュメモリ書き込みカラム指示レジスタ 14 書き込みデータセレクタ 15 通常データ転送パス 16 デバッグデータ転送パス 17 読み出しポート 28 デバッグデータ格納開始アドレス指示レジスタ 29 デバッグデータ格納終了アドレス指示レジスタ 1A インクリメンタ 2B 比較器 1C デバッグデータ格納判定用フラグ

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 キャッシュメモリを内蔵する演算処理装
    置の実機デバッグ時のキャッシュメモリの制御方式にお
    いて、通常のキャッシュメモリ動作を行うモードとデバ
    ッグデータをキャッシュメモリに書き込むモードとを設
    け、デバッグ情報書き込みモードで、キャッシュメモリ
    にデバッグデータを書き込むことを特徴とするキャッシ
    ュメモリの制御方式。
  2. 【請求項2】 前記キャッシュメモリは、デバッグデー
    タを書き込み可能なカラムが指定されていることを特徴
    とする請求項1記載のキャッシュメモリ制御方式。
JP6258313A 1994-10-24 1994-10-24 キャッシュメモリの制御方式 Pending JPH08123726A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6258313A JPH08123726A (ja) 1994-10-24 1994-10-24 キャッシュメモリの制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6258313A JPH08123726A (ja) 1994-10-24 1994-10-24 キャッシュメモリの制御方式

Publications (1)

Publication Number Publication Date
JPH08123726A true JPH08123726A (ja) 1996-05-17

Family

ID=17318520

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6258313A Pending JPH08123726A (ja) 1994-10-24 1994-10-24 キャッシュメモリの制御方式

Country Status (1)

Country Link
JP (1) JPH08123726A (ja)

Similar Documents

Publication Publication Date Title
USRE49305E1 (en) Data processing system having cache memory debugging support and method therefor
JP4038372B2 (ja) 順序外データのトレーシング
US7886198B2 (en) Method and system of identifying overlays used by a program
JPH011039A (ja) インサーキット・エミュレータ
US20060259822A1 (en) Profiling system
CN109254883B (zh) 一种片上存储器的调试装置及方法
US20060174163A1 (en) Software breakpoints for use with memory devices
KR102584651B1 (ko) 데이터 처리
JPH07121437A (ja) コンピュータシステム
US20050086454A1 (en) System and methods for providing a debug function built-in type microcomputer
JP2007257441A (ja) プロセッサおよびプロセッサ制御方法
JPH08123726A (ja) キャッシュメモリの制御方式
JPH1040130A (ja) マイクロコンピュータ
JPH02126340A (ja) データ処理システム
CN115552381B (en) Recording memory value tracking for use with independent cache coherency protocol tracking
JPH03137736A (ja) マイクロプロセッサ動作トレース方式
JP3061818B2 (ja) マイクロ・プロセッサ用アクセス・モニタ装置
JPH0748183B2 (ja) トレース回路
JPH05257807A (ja) キャッシュメモリ制御装置
JP2002091795A (ja) キャッシュ制御装置
CN117063161A (zh) 执行跟踪内的物理存储器地址省略或混淆
CN121070557A (zh) 基于eBPF的进程文件系统访问优化方法和装置
JPH05289904A (ja) キャッシュメモリのデバッグツール
JPS6010368A (ja) アドレス変換バツフア制御方式
JPS6267650A (ja) キヤツシユメモリ制御装置におけるストア処理方式