JP2000235510A - プロセッサおよびそのためのコンパイルプログラム記録媒体 - Google Patents

プロセッサおよびそのためのコンパイルプログラム記録媒体

Info

Publication number
JP2000235510A
JP2000235510A JP11035501A JP3550199A JP2000235510A JP 2000235510 A JP2000235510 A JP 2000235510A JP 11035501 A JP11035501 A JP 11035501A JP 3550199 A JP3550199 A JP 3550199A JP 2000235510 A JP2000235510 A JP 2000235510A
Authority
JP
Japan
Prior art keywords
trace
instruction
program
information
data
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
JP11035501A
Other languages
English (en)
Inventor
Sadashige Nakano
定樹 中野
Junichi Nishimoto
順一 西本
Shigesumi Matsui
重純 松井
Masanobu Tsunoda
賢伸 津野田
Koji Yoneyama
浩司 米山
Shinya Kanda
真也 神田
Yuugo Kashiwagi
有吾 柏木
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 JP11035501A priority Critical patent/JP2000235510A/ja
Publication of JP2000235510A publication Critical patent/JP2000235510A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】トレースデータを高速に収集できるプロセッサ
を提供する。 【解決手段】トレースデータとして出力すべきデータを
保持するレジスタを指定する複数のトレース命令を分析
すべきソースプログラム中に組み込む。このソースプロ
グラムをコンパイルして得られるオブジェクトプログラ
ムを実行する中でCPUがトレース命令を実行したとき
には、CPUは、その命令が指定する汎用レジスタ内の
データと、そのトレース命令の命令アドレスと、トレー
スコマンドとを、CPUとキャッシュユニット111と
の間に設けられた内部バス群10に供給する。トレース
ユニット20は、そのトレースコマンドに応答して、内
部バス群10上の命令アドレスとトレースデータとの組
を一つのトレース情報として取り込み、ハードウエアエ
ミュレータに供給する。キャッシュユニット111はト
レースコマンドに応答しないように構成されている。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プログラムをトレ
ースするための回路を内蔵したプロセッサおよびそのた
めのコンパイルプログラム記録媒体に関する。
【0002】
【従来の技術】リアルタイム性が要求される組み込み用
のプログラムのデバッグあるいは解析において、プロセ
ッサの動作およびその内部状態を処理ステップ数を大き
く変化させることなくトレースするさまざまな手法が提
案されている。例えば、特開平9−218800には、
あらかじめターゲットのソースプログラムに各種トレー
ス情報を取得するためのタグ文を組み込んでおく方法が
記載されている。すなわち、タグ文として、置かれてい
るソースプログラム内の位置を示すトレースデータをメ
モリの特定位置にストアすることを指示する複数の文を
ソースプログラムに含ませる。このソースプログラムを
コンパイルすると、それぞれ一つのタグ文に対応する複
数のストア命令を含むオブジェクトプログラムが得られ
る。そのオブジェクトプログラムを実行するときに、そ
のプロセッサの外部アドレスバスとデータバスをモニタ
するプローブと、プローブによるモニタ結果を用いてタ
グ情報を収集する回路とが使用される。すなわち、メモ
リの上記特定位置がチップ外部のアドレスバス上に検出
されると、そのときのデータバス上のタグ情報が取得さ
れる。
【0003】
【発明が解決しようとする課題】上記従来の方法では、
一つのトレースデータの収集には一つのストア命令によ
るチップ外部メモリへのストア動作が必要である。一般
に、チップ外部に対するストア動作はプロセッサの内部
動作に比べて時間が掛かる。すなわち、多くのプロセッ
サでは、中央処理装置(CPU)内の汎用レジスタ、お
よびキャッシュユニット内のデータの読み書きあるいは
そのデータに対する演算は1マシンサイクルで実行でき
る、外部メモリに対するデータの読み書きは数マシンサ
イクル必要である。
【0004】したがって、本発明の目的はより高速にト
レースデータを収集するのに適したプロセッサを提供す
ることである。
【0005】
【課題を解決するための手段】上記目的を達成するため
に、本発明によるプロセッサは、中央処理装置(CP
U)とキャッシュユニットとの間に設けられた内部バス
群に接続され、上記内部バス群からトレース情報を取得
するためのトレースユニットとが上記CPU、上記キャ
ッシュユニットとを搭載する単一の大規模集積回路チッ
プ上に有する。
【0006】さらにCPUには、実行中のプログラムに
含まれた複数のトレース命令の各々に応答して、その命
令が要求するトレース情報を上記内部バス群に出力する
回路が設けられる。
【0007】より望ましくは、上記CPUには、それぞ
れ命令で指定可能な複数のレジスタと、上記CPUで実
行されている命令の命令アドレスに関連するアドレス情
報を生成する回路とがさらに設けられる。
【0008】各トレース命令が要求するトレース情報
は、上記複数のレジスタの内の、そのトレース命令が指
定する少なくとも一つのレジスタに保持されたデータ
と、そのトレース情報に対して上記アドレス情報の生成
回路により生成されたアドレス情報との組を含む。
【0009】より具体的には、上記アドレス情報の発生
回路は、実行中の命令の命令アドレスに関連する命令ア
ドレスを生成するプログラムカウンタである。
【0010】さらに、上記CPUは、上記トレース情報
の送出時に、上記トレース情報の取得を上記トレースユ
ニットに指示するトレースコマンドを上記内部バス群に
送出する回路がさらに設けられる。
【0011】上記キャッシュユニットは、上記トレース
コマンドに応答しないように構成される。
【0012】
【発明の実施の形態】以下、本発明を図面に示した実施
の形態を参照してさらに詳細に説明する。
【0013】図1に示すように、本発明に係るプロセッ
サ100は、単一の大規模集積回路(LSI)チップ上
に構成され、CPU110、キャッシュユニット11
1、それらを接続する内部バス群10、キャッシュユニ
ット111に接続されたバスコントローラ112および
内部バス群10に接続されたトレースユニット20とで
構成されている。
【0014】バスコントローラ112は、外部アドレス
バス141、外部データバス140を用いて図示しない
外部のランダムアクセスメモリ(以下、DRAMと呼
ぶ)等に接続され、そのDRAM等とプロセッサ100
との間でデータ転送を行うための装置であり、より具体
的には、CPU110から要求されたデータあるいは命
令をそのDRAMよりフェッチしてキャッシュユニット
111に送るかあるいはCPU110が供給したストア
データをキャッシュユニット111を介して受け取り、
DRAMに転送する。
【0015】キャッシュユニット111は、上記DRA
Mの一部のデータあるいは命令を保持するもので、ここ
では、データを保持するキャッシュ(図示せず)と命令
を保持するキャッシュ(図示せず)と、キャッシュコン
トローラ(図示せず)と、メモリ管理ユニット(MM
U)(図示せず)とを有している。キャッシュユニット
111は、DRAMとの間で転送すべきデータあるいは
命令のアドレスをバスコントローラ112に供給するた
めのキャッシュアドレスバス130と、そのデータまた
は命令を転送するためのキャッシュデータバス131に
よりバスコントローラ112に接続されている。
【0016】CPU110とキャッシュユニット111
間に設けられた内部バス群10は、いくつかのバスで接
続されている。120は、DRAMあるいはキャッシュ
ユニット111からロードすべきデータをCPU110
に転送するためのロードバスであり、121は、CPU
110からDRAMあるいはキャッシュユニット111
にストアすべきデータを転送するためのストアバスであ
り、122は、上記ロードデータあるいはストアデータ
のアドレスを転送するためのデータアドレスバスであ
り、123は、CPU110から供給されたロードある
いはストア等のコマンドをキャッシュユニット111に
供給するためのコマンドバスであり、124は、DRA
Mあるいはキャッシュユニット111からフェッチすべ
き命令のアドレス(命令フェッチアドレス)を転送する
ためのバスであり、125は、フェッチされた命令を転
送するためのフェッチ命令バスである。
【0017】トレースユニット20は、内部バス群10
上の情報を監視し、必要となるトレース情報を収集し、
線150を介してエミュレータ101に供給するための
装置である。エミュレータ101は、このトレースユニ
ット20が収集したトレース情報に基づいて、CPU1
10で実行されているプログラムを分析する機能(主と
してデバッグ機能)を有するハードウエアエミュレータ
である。
【0018】本発明では、後に詳しく説明するように、
ユーザが予めソースプログラム内の所望の位置にトレー
ス文を埋め込む。また、コンパイラもそのプログラム内
の複数の特定の位置のそれぞれにトレース文を追加す
る。コンパイラは、必要なときには、いずれかのトレー
ス文が指定するデータを出力するための一つまたは複数
の文も追加する。そのソースプログラムがコンパイルさ
れたときには、各トレース文は対応するトレース命令に
変更される。
【0019】具体的には、プログラム中に含まれた複数
のトレース命令の各々は、それぞれのトレース命令ごと
に出力すべきトレースデータを要求する。より具体的に
は、各トレース命令は、出力すべきトレースデータを指
定するトレースデータ指定情報を含む。さらに、各トレ
ース命令は、そのトレース命令の命令アドレスもトレー
ス情報として送出することを要求する。
【0020】CPU110は、トレース命令を実行した
ときに、そのトレース命令が要求するトレース情報と、
そのトレース情報の収集をトレースユニット20に指示
するトレースコマンドとを上記内部バス群10上に送出
する回路を有する。
【0021】トレースユニット20は、上記トレースコ
マンドがコマンドバス123上に送出されたか否かを常
時監視し、もし上記トレースコマンドがコマンドバス1
23に送出されたときは、内部バス群10上のトレース
情報を取り込み、順次エミュレータ101に送出する。
このとき、キャッシュユニット111は、このトレース
コマンドには何も応答しないように構成されている。バ
スコントローラ112も同様である。
【0022】より具体的には、トレース情報は、トレー
ス命令に含まれたトレースデータ指定情報で指定される
トレースデータとそのトレース命令を識別するための命
令識別情報とからなる。さらに具体的には、トレースデ
ータには、CPU110内の命令で指定可能な後述する
複数の汎用レジスタのいずれか一つに保持されたデータ
が使用される。上記トレース命令は、トレースデータ指
定情報として、トレースデータとして出力すべきデータ
を保持する一つの汎用レジスタn番号Rnを指定する。
以下、この汎用レジスタを汎用レジスタRnとも呼ぶ。
各トレース命令が要求する命令識別情報は、実行中の命
令の命令アドレスを生成するプログラムカウンタにより
そのそのトレース命令に対して生成された命令アドレス
である。各トレース命令は、このプログラムカウンタを
結果として指定していることになる。
【0023】図2には、本実施の形態で使用できるCP
U110の一例の主要部の概略構成を示す。CPU11
0内には命令をDRAMあるいはキャッシュユニット1
11よりフェッチするための命令フェッチ回路220が
含まれ、命令フェッチ回路220には、連続した命令の
フェッチアドレスを生成する命令フェッチアドレス生成
器221と分岐時に分岐アドレスを生成する分岐アドレ
ス生成器222と、命令フェッチアドレス生成器221
と分岐アドレス生成器222によって生成されたアドレ
スを選択して命令フェッチアドレスバス124に供給す
るセレクタ223を含む。
【0024】命令フェッチアドレス生成器は221は、
命令フェッチポインタ(図示せず)と、そのポインタの
値を順次インクリメントする回路(図示せず)を含み、
プログラム上の複数の命令をプログラムが想定する順に
フェッチするために用いられる。このとき、セレクタ2
23は、命令フェッチアドレス生成器221の出力を選
択し、命令フェッチアドレスバス124に出力する。分
岐先の命令をフェッチするときには、分岐アドレス生成
器222がその命令のアドレスを生成し、セレクタ22
3は、分岐アドレス生成器222の出力を選択し、命令
フェッチアドレスバス124に出力する。命令フェッチ
アドレス生成器221は、セレクタ223から出力され
たこの分岐先アドレスを取り込み、自己のポインタ値と
する回路(図示せず)を有する。命令フェッチ回路22
0によりフェッチされた命令は、フェッチ命令バス12
5を経由し命令キュー210に格納され、命令キュー2
10内の複数の命令はフェッチ順にしたがって順次実行
される。
【0025】プロセッサ100は、動作クロックに同期
して、命令をパイプライン処理する。すなわち、各命令
の実行は、複数のステージに分けて実行され、複数の命
令の異なるステージが互いに並列に実行される。本実施
の形態では、図3に示すように、命令は、たとえばデコ
ードステージ501、演算ステージ502、メモリアク
セスステージ503、レジスタライトステージ504の
4つのステージに分けて実行されると仮定する。500
はプロセッサ100の動作クロックを示す。本実施の形
態では、トレース命令が他の命令とパイプライン的に実
行されるときには、トレース命令は1マシンサイクルし
か占有しないので、他の命令と1マシンサイクルピッチ
で実行可能である。しかし、本発明はこのような特定の
ステージの組み合わせには限定されない。
【0026】図2に戻り、CPU110は、デコードス
テージに対応してそのステージが実行中の命令(デコー
ドステージに入った命令)の命令アドレスを保持するデ
コードステージ用のプログラムカウンタ230を有す
る。実際にはCPU110は、演算ステージ等の他のス
テージに入った命令の命令アドレスを示すプログラムカ
ウンタも含むが、簡単化のために図示していない。
【0027】プログラムカウンタ230は、そのカウン
ト値を順次インクリメントする回路(図示せず)を含
み、命令フェッチアドレス生成器221によって生成さ
れる非分岐な連続アドレスに対しフェッチされた複数の
命令に対して、プログラムカウンタ230は内部でカウ
ント値を順次インクリメントする動作を繰り返す。この
インクリメントの動作のタイミングは、それぞれの命令
がデコードステージに入ったときに、その命令の命令ア
ドレスがカウント値として示されるように制御される。
一方、プログラムカウンタ230は、命令フェッチ回路
から供給された分岐先アドレスを取り込み、自己のカウ
ント値とする回路(図示せず)を有する。レジスタ23
1は、命令フェッチ回路220から分岐先アドレスが出
力されたときに、その分岐先アドレスを一時的に保持す
る。プログラムカウンタ230は、この分岐先アドレス
を有する分岐先の命令がデコードステージに入ったとき
に、このレジスタ231内の分岐先アドレスを取り込
む。
【0028】CPU110では、命令キュー210内の
出口に位置する命令は、デコーダ211、命令フェッチ
回路220、レジスタファイル240、演算ユニット2
50に送られる。トレース命令のデコードステージで
は、命令デコーダ211がその命令の命令コードを解読
し、トレースコマンドを生成する。このトレースコマン
ドはその命令の演算ステージでコマンドバス123に送
出されるが、この送出のための回路は簡単化のために示
していない。レジスタファイル240は、汎用レジスタ
群241および複数のシステムレジスタ群242を含
む。汎用レジスタ群241は、演算ユニット250に供
給すべきデータあるいは演算ユニット250が生成した
演算結果データを保持する命令で指定可能なレジスタを
含む。
【0029】システムレジスタ群242は、ある特定の
命令によりアクセスされる複数の特殊なレジスタを含
む。例えば、サブルーチン呼びし命令等によって、実行
されるサブルーチンからの戻りアドレスが格納されるプ
ロシジャーレジスタ(PR)等を含む。
【0030】レジスタファイル240は、トレース命令
が指定する汎用レジスタRn内のデータを読み出し、演
算ユニット250に送る。さらに、プログラムカウンタ
230は、そのときのカウント値(トレース命令の命令
アドレス)を演算ユニット250に送る。こうして、こ
のトレース命令のデコードステージが終了する。演算ユ
ニット250内のバスセレクタ251は、そこに供給さ
れた複数のデータを保持する複数のラッチ回路(図示せ
ず)を有する。今の場合、上記読み出された汎用レジス
タRn内のデータと命令アドレスがそれぞれバスセレク
タ251内にラッチされる。
【0031】そのトレース命令の演算ステージは以下の
ようにして実行される。バスセレクタ251は、複数の
定数を発生する定数発生回路252と、上記図示しない
複数のラッチ回路と、3つの図示しないセレクタとを有
する。第1のセレクタは、定数発生回路252が出力す
る複数の定数と、上記複数のラッチ回路の出力から一対
のデータを選択して、第1の演算器253に供給する。
同様に、第2のセレクタは、定数発生回路252が出力
する複数の定数と、上記複数のラッチ回路の出力とから
一対のデータを選択して、第1の演算器253に供給す
る。一方、第3のセレクタは、定数発生回路252が出
力する複数の定数と、上記複数のラッチ回路の出力とか
ら一つのデータを選択して、セレクタ255、261、
262に供給する。演算器253は、たとえば加減算、
簡単な論理演算あるいはシフト演算などを行えるいわゆ
る算術論理演算器である。演算器254は、主としてメ
モリアドレスの算出に使用される演算器であり、加減算
等を行うことができる演算器であり、主としてロード命
令あるいはストア命令のアドレス生成に使用される。
【0032】トレース命令の場合、第1のセレクタは使
用されない。セレクタ255は、演算器253の演算結
果データ、演算器254の演算結果データ、バスセレク
タ251内の図示しない第3のセレクタが選択したデー
タの一つあるいは2つを選択して、レジスタファイル2
40に供給し、その中の一つあるいは2つのレジスタに
格納するかあるいはバスセレクタ251に供給し、その
中に図示しないラッチ回路に接続されている。トレース
命令の場合、このセレクタ255も使用されない。
【0033】トレース命令の場合、第2のセレクタは、
プログラムカウンタ230から読み出され、バスセレク
タ251内の図示しないラッチ回路にラッチされたトレ
ース命令の命令アドレスと定数発生回路252により発
生された定数0を選択し、演算器254に供給する。ト
レース命令の場合、演算器254はそこに入力された上
記一対のデータに対して加算を実行する。演算器254
は、トレース命令に対しては上記トレースデータをスル
ーさせる働きをするだけである。本願発明は、ここで記
載した演算器254の使用方法には限定されないのは言
うまでもなく、演算器254としてもいろいろの構造の
演算器を使用できるのは言うまでもない。また、演算器
254は、トレース命令に対しては上記トレースデータ
をスルーする働きをするだけであるので、上記演算器2
54にスルーモードがあるときには、定数0とトレース
データとの加算を行う必要はない。
【0034】セレクタ261は、演算器254の出力お
よびバスセレクタ251内の図示しない第3のセレクタ
が選択したデータの一方を選択してデータアドレスバス
122に送出する回路である。トレース命令の場合、セ
レクタ261は、演算器254が出力するトレース命令
の命令アドレスを選択する。こうして、トレース命令の
命令アドレスがトレース命令の演算ステージでデータア
ドレスバス122に出力される。
【0035】バスセレクタ251内の図示しない第3の
セレクタは、トレース命令の場合、汎用レジスタRnか
ら読み出され、バスセレクタ251内のいずれかのラッ
チ回路にラッチされたトレースデータを選択して、セレ
クタ255,261,262に供給する。
【0036】セレクタ262は、演算器254の演算結
果データおよびバスセレクタ251内の図示しない第3
のセレクタが選択したデータの一方を選択してストアバ
ス121に供給する。トレース命令の場合、セレクタ2
62は、バスセレクタ251内の図示しない第3のセレ
クタにより選択されたトレースデータを選択する。こう
して、トレース命令が指定したトレースデータがトレー
ス命令の演算ステージにストアバス121に送出され
る。
【0037】図3は、コマンドバス123上にトレース
コマンド510が、データアドレスバス上にプログラム
カウンタ230と定数0との加算結果すなわちプログラ
ムカウンタの値511が、ストアバス121上にバスセ
レクタ251内の図示しない第3のセレクタにより選択
されたトレースデータRnの値512が同命令の演算ス
テージに同期して出力される様子を示している。
【0038】図4に示すように、トレースユニット20
では、選択論理回路21が、ストアバス121、データ
アドレスバス122、コマンドバス123とに接続さ
れ、コマンドバス123上に出力される上記トレースコ
マンドを捕らえるため、上記コマンドバス123を常時
監視している。選択論理回路21は、上記コマンドバス
123上にトレースコマンドを検出すると、データアド
レスバス122上の命令アドレスと、ストアバス121
上のトレースデータとを取り込み、取り込まれた命令ア
ドレスとトレースデータとの組を一つのトレース情報と
してFIFOバッファ22に一旦格納する。出力制御回
路23は、FIFOバッファ22内の命令アドレスとト
レースデータとの組を出力専用端子150に接続された
エミュレータ101へ転送する。なお、出力クロック生
成器24は、トレースユニット20の内部動作クロック
を生成し、選択論理回路21、FIFOバッファ22、
出力論理回路23に供給する。
【0039】本実施の形態で使用するソースプログラム
およびコンパイラについて説明する。まず、図5におい
て、トレース対象となるソースプログラム300がコン
パイラ201によってコンパイルされ、リンクされる。
この過程において、コンパイラ201は、実行プログラ
ム本体であるオブジェクトコード202とトレースタグ
情報400を出力する。オブジェクトコード202がプ
ロセッサ100上で実行されると、トレースユニット2
0がトレース情報を収集し、エミュレータ101に出力
する。エミュレータ101はトレースタグ情報400を
用いて、トレース情報150内のトレースデータの種別
を判定し、ソースプログラム300の分析を行い、その
結果を端末206に表示する。
【0040】図6は、C言語で記述された本発明の説明
のために準備されたソースプログラム300の例を示
す。このソースプログラム300は関数proc_aを
呼び出す呼び出し文310と、その関数とを含む。ここ
では、関数proc_a( )は、整数データa,bに
ついて和a、差b、積cを求めるための複数の文を含
む。310は、関数の宣言文であり、かつ、関数の入り
口を示しており、この関数は、リターン文311で指定
されるように、積cを関数値として戻すようにプログラ
ムされている。さらに、それぞれ変数a、b、cの値を
トレースデータとして出力するためのトレース文32
0、321、322がユーザにより追加されている。ソ
ースプログラム300上のトレース文はトレースデータ
として出力すべき変数を指定する。
【0041】図5に戻り、コンパイラ201は、このソ
ースプログラム300をコンパイルするときに、このソ
ースプログラム300をトレース情報が収集可能なよう
にコンパイルする点で従来のコンパイラと異なる。すな
わち、ユーザが指定したトレース文320は、変数aが
格納される汎用レジスタを指定し、そのトレース文に対
するオブジェクトコードの命令アドレスあるいはそれに
関連する命令アドレス(今の例ではプログラムカウンタ
の内容)を出力することを要求するトレース命令へ変換
する(第1のトレース命令)。トレース文321(第2
のトレース命令),322(第3のトレース命令)に対
しても全く同様である。また、このとき、通常そうであ
るように、ソースプログラム300に含まれている変数
の各々に対して汎用レジスタが割り当てられる。その結
果、各トレース文に対応するトレース命令が指定すべき
汎用レジスタも決定される。
【0042】コンパイラ201は、ユーザが指定しない
特定の複数のプログラム文に対してもトレース情報を出
力するようにトレース命令を付加するように構成されて
いる。これらの特定のプログラム文は、ソースプログラ
ム300の実行過程の分析に都合がよいように予め定め
られている。この命令は本実施の形態においてソースプ
ログラム300に追加されるトレース文とは異なる文の
例である。
【0043】今の例では、関数の入り口310に対して
は、この関数の戻りアドレス、すなわち、関数呼び出し
文302へ復帰するためのアドレスをトレース情報とし
て出力することを要求するトレース命令を付加する。こ
れは関数呼び出しをトレースする機能をトレース命令で
実現するためである。関数呼び出しはコンパイラ201
によって通常サブルーチン分岐命令へ変換される。サブ
ルーチン分岐命令が実行されるとき、すなわち、関数p
roc_a()の呼び出しが行われるとき、サブルーチ
ン分岐命令は関数proc_a()へ分岐すると同時に
proc_a()からの戻りアドレスを自動的に図2に
示したCPU110のシステムレジスタ群242内のー
つ(PR)(図示せず)へ保存する。すなわち、関数の
先頭でPRの値を参照すれば、常に戻り先アドレスを得
ることができる。コンパイラ201は、この戻りアドレ
スが格納されたPRを汎用レジスタRnへ代入する命令
と、そのRnを指定する第4のトレース命令を付加する
ことで上記関数のトレースを行う。コンパイラ201
は、コンパイルに当たり、通常そうであるように、上記
第1から第3のトレース文が付加されたソースプログラ
ム300を中間語に変換する。今の場合には、上記第1
から第3のトレース文が付加されたソースプログラム3
00を中間語に変換する。その後に上記第4のトレース
命令は、この中間語上で付加される。
【0044】コンパイラ201は、さらにリターン文3
11に対しても、このリターン文で指定される関数の返
し値cをトレースデータとして出力するための第5のト
レース命令を上記中間語上で付加する。
【0045】コンパイラ201は変換した上記第1から
第5のトレース命令を含む中間語をコンパイルの最終段
階でリンケージエディタ等のプログラムにより各命令に
メモリアドレス等を割り当て、CPU110で実行可能
なオブジェクトコード202を生成する。
【0046】さらに、コンパイラ201は、上記ソース
ソースプログラム300と上記リンケージエディタによ
るメモリアドレスの割り当て結果にしたがって、トレー
スタグ情報400を生成する。このトレースタグ情報4
00は、CPU110にてオブジェクトコード202が
実行され、その結果CPU110内のトレースユニット
20により複数のトレース情報が出力されたときに、そ
れぞれのトレース情報をソースプログラム300上のプ
ログラム文に対応づけるための情報を含む。
【0047】図7は、ソースプログラム300をコンパ
イルすることで得られるトレースタグ情報400の例を
示している。このトレースタグ情報400は、一行がソ
ースプログラム300内の一つのトレース文に対応す
る。さらに一つのトレース文は一つのトレース命令に対
応するので、各行は一つのトレース文と一つのトレース
命令に対応する。ここでは、402、403、404
は、それぞれ、ソースプログラム300内のユーザが付
加したトレース文320,321,322に対応し、4
01と405は、ソースプログラム300内の関数名3
10に対してコンパイラ201が付加した第4のトレー
ス文およびリターン文311に対してコンパイラ201
が付加した第5のトレース文に対するトレースタグ情報
である。
【0048】各行の第1カラムは、その行に対応するト
レース命令に割り当てられた命令アドレスに関連するア
ドレス情報、ここではその命令アドレスそのものを示
す。各行の第2から第5カラムは、その行が対応するト
レース命令に対応するソースプログラム上のプログラム
文に関連する属性である。ここで、対応するプログラム
文には、ユーザがソースプログラム上で付加したプログ
ラム文だけでなく、コンパイラがソースプログラムを変
換して得られる中間語において付加したプログラム文に
対応するソースプログラム上のプログラム文を含む。
【0049】第2カラムは、その対応するプログラム文
の種類を指定する情報である。ここでは、ユーザ指定の
トレース文320,321,322に対してはユーザが
指定したトレース文であることを表す情報trace4
20、421、422が使用され、コンパイラが関数名
310に対して付加したトレース文に対しては、関数の
呼び出しの開始を表す情報function_star
t410が使用され、コンパイラ201がリターン文3
11に対して付加したトレース文に対しては、関数の呼
び出しの終了を表す情報function_end41
1が使用されている。
【0050】各行の第3カラムは、その行に対応する上
記プログラム文のソースプログラム300上の識別子で
ある。ここでは、関数名310、リターン文311に対
しては、関数名proc_aがともに使用され、ユーザ
指定のトレース文320,321,322に対してはそ
れぞれのトレース文が指定する変数a,b,cが使用さ
れている。
【0051】各行の第4カラムは、その行に対応するソ
ースプログラム300上のトレース文の位置を表すアド
レス情報としてのたとえば行番号により構成されてい
る。但し、コンパイラが関数名310あるいはリターン
文311に対して付加したトレース文に対しては、トレ
ース文が付加されたソースプログラム上の文310ある
いは311の行番号が使用される。
【0052】エミュレータ101は、トレースユニット
20から受け取った複数のトレース情報を、一旦エミュ
レータ101内部のメモリあるい記憶媒体に格納する機
能を有する。さらにエミュレータ101はユーザが指示
することでデバッグ中のプログラムを終了あるいは中断
する機能を有し、 さらにユーザがエミュレータ101
へ指示することでエミュレータ101内部に格納された
オブジェクトコード202中に組み込まれたトレース命
令を解析し端末206へ表示する機能を有する。
【0053】エミュレータ101はトレースユニット2
0から受け取ったトレース情報に含まれる命令アドレス
と同じ値を第1カラムに有する行をこのトレースタグ情
報400から判別する。さらに、エミュレータ101
は、トレースタグ情報400中から判別した該当行の第
2、第3、第4カラム目からトレースデータの属性、ソ
ースプログラム300上で指示されたC言語上での識別
子およびソースプログラム300中の行番号情報を得て
解析結果とする。エミュレータ101はエミュレータ1
01内に格納した複数のトレース情報を取得した順番で
解析し、これら解析結果を端末206上に表示すること
でプログラムの実行フローに合致したトレース情報をユ
ーザに提示しプログラムのデバッグを支援する。
【0054】たとえば、図7内のfunction_s
tart識別子410を含む行に対しては、実行中の関
数の戻りアドレスを示す情報を得ることができる。これ
は、関数呼び出しが発生する毎に、呼び出された関数の
先頭で、呼び出し元の命令アドレスをトレースユニット
20がコンパイラ201によって埋め込まれたトレース
命令に基づき出力するからである。エミュレータ101
は、 function_start識別子410よ
り、呼び出し元の関数、呼びし先の関数名ソースプログ
ラム300中の行番号などの情報を取得するとともに端
末206へ表示する。
【0055】また、trace識別子420,421,
422を有する行に対しては、trace( )関数3
20,321,322によって指定された引数a,b,
cの値がトレースデータとして取得される。これら取得
した変数値とソースプログラム300上の変数名および
その行番号をエミュレータ101は、端末206へ表示
する。
【0056】function_end識別子411を
含む行に対しては、関数の返し値がトレースデータとし
て取得される。したがって、エミュレータ201は、関
数の返し値、関数名とソースプログラム300中の行番
号を端末206へ表示する。ユーザはこれら端末206
上に表示された各種トレース情報により効率よくプログ
ラム300のデバッグを行うことができる。
【0057】このように、本実施の形態では、プログラ
ム中に含まれた複数のトレース命令の各々が要求するト
レース情報をCPUから内部バス群の送出し、そこに接
続されたトレースユニットがこれを取得するので、トレ
ース情報が後続に取得できる。さらに、具体的には、ト
レース情報は、トレースデータおよび命令識別情報を含
むので後でのプログラムの分析に有効である。しかも、
トレースデータと命令識別情報をそれぞれCPU内の汎
用レジスタあるいはプログラムカウンタから内部バス群
に読み出すので、読み出しは高速に実行される。なお、
トレースデータの取得には外部メモリへのアクセスを要
しない。したがって、従来のストア命令を用いるトレー
スデータの収集方法よりも高速にトレースデータを収集
できる。
【0058】さらに、トレース情報を取得するために、
トレース命令実行に要するマシンサイクルしか消費しな
いため、本実施の形態は、プログラムの実行速度の観点
から有利である。
【0059】本トレースデータの取得方式は、従来のス
トア命令で実現された方式とは異なり、キャッシュユニ
ット111、バスコントローラ112、キャッシュバス
130、131、外部アドレスバス141、外部データ
バス140がトレースデータ取得のため動作することは
ない。
【0060】また、トレース命令を用いることでOSの
制御下にあるキャッシュあるいはメモリ管理ユニット
(MMU)に影響をおよぼすことなくトレース情報を取
得できる。
【0061】トレース命令は、CPU110が通常キャ
ッシュユニット111をアクセスするために使用するバ
スを用いてトレース情報を出力するため、トレースのた
めの別のバスを必要としない。
【0062】また、本実施の形態を実施するために必要
なCPUの改造は極めて少ないので、本発明を容易に実
現できる。
【0063】また、トレース命令は、ユーザがソースプ
ログラム内のユーザ所望の位置に挿入することもでき、
ユーザはトレース条件の細かな設定ができる。また、関
数の呼び出し元のアドレスあるいは関数の返し値等のデ
バッグに必要と思われるデータの取得のためのトレース
命令は、コンパイラがソースプログラムからオブジェク
トコード生成時に自動的に組み込むので、ユーザが指定
すべきトレース文の数は少なくできる。言い換えると、
コンパイラはユーザが指定したトレース文と自ら必要と
判断したトレース文の両方に対する複数のトレース命令
を含むオブジェクトプログラムを生成できる。
【0064】<変形例>本発明は以上の実施の形態に限
定されず、本発明の要旨を逸脱しない範囲でいろいろの
変形例あるいは修正例として実施可能である。たとえ
ば、 (1)以上の実施の形態では、トレース命令が実行され
たときに使用されたデコードステージのプログラムカウ
ンタ内の命令アドレスは、トレース命令のそれに等し
い。しかし、このプログラムカウンタ内の命令アドレス
は、上記トレース命令の命令アドレスと一致している必
要はない。一般的には、このプログラムカウンタ内の命
令アドレスは、上記トレース命令の命令アドレスに対し
て所定の関係を有すればよい。たとえば、このプログラ
ムカウンタ内の命令アドレスは、上記トレース命令の命
令アドレスと一定の値だけずれていてもよい。
【0065】(2)トレース情報として出力する命令ア
ドレスをプログラムカウンタ以外の回路により生成して
もよい。但し、上記実施の形態のようにプログラムカウ
ンタを使用した場合には、このカウンタはCPUに通常
含まれているので、本発明の実施のためにCPUに追加
されるべき回路が少なくて済む。
【0066】(3)本発明は、データと命令を保持する
のに共通のキャッシュが使用される場合にも適用でき
る。同様に、本発明は、CPU110とキャッシュユニ
ット111を接続するために種々の構造のバスを使用す
るプロセッサにも適用できるのはいうまでもない。たと
えば、ロードバス120、ストアバス121、フェッチ
命令バス125とが共通のバスでもよく、データアドレ
スバス122と命令フェッチアドレスバス124とが共
通のバスでもよい。また、命令の実行ステージが図3に
示したものと異なる場合にも適用できる。
【0067】(4)汎用レジスタに代えて命令で指定可
能な他のレジスタも使用できる。
【0068】(5)ソースプログラム中に指定されたユ
ーザ指定のトレース文、およびコンパイラが自動的に付
加するトレース命令を無効化するオプションをコンパイ
ラに持たせることもできる。
【0069】(6)トレースユニットがチップ外部に設
けることも可能である。具体的には、トレースユニット
は、キャッシュユニットに接続された外部バスに接続し
て設けられる。この場合、キャッシュユニットは、先の
実施の形態と同じく、トレースコマンドに応答しない
が、キャッシュユニット内部には、上記内部バス群上の
上記トレース情報と上記トレースコマンドを、上記トレ
ースユニットに転送する回路が設けられる。この変形例
では、トレース情報あるいはトレースコマンドをCPU
からトレースユニットに転送するに必要な時間は、前述
の実施の形態より増大するが、先の実施の形態が有する
他の特徴はこの変形例も有する。この変形例では、プロ
セッサ内部に、トレースユニットを有しないので、プロ
セッサ搭載するLSIのサイズが小さくて済む。さら
に、いろいろの構造と機能を有するトレースユニットを
プロセッサと組み合わせて使用することができる。
【0070】(7)なお、本発明はいろいろのプロセッ
サに適用できる。いわゆる汎用のマイクロプロセッサあ
るいは特定用途の信号処理プロセッサなどにも適用でき
る。しかし、組み込み用途のプロセッサにとくに適して
いる。
【0071】
【発明の効果】本発明によれば、高速にトレースデータ
を収集できる。
【図面の簡単な説明】
【図1】本発明の係るプロセッサの概略ブロック図。
【図2】図1の装置に使用されるCPUの概略ブロック
図。
【図3】図1の装置におけるトレース命令の動作タイミ
ング図。
【図4】図1の装置に使用されるトレースユニットの概
略ブロック図。
【図5】図1の装置で実行するオブジェクトプログラム
を生成するためのコンパイラの概略フロー図。
【図6】図5のコンパイラで使用するソースプログラム
の一例を示す図。
【図7】図5のコンパイラで生成されるトレースタグ情
報の一例を示す図。
【符号の説明】
10…内部バス群、120…ロードバス、121…スト
アバス、122…データアドレスバス、123…コマン
ドバス、124…命令フェッチアドレスバス、125…
フェッチ命令バス、130…キャッシュアドレスバス、
131…キャッシュデータバス、150…トレース出力
専用端子、400…トレースタグ情報。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 松井 重純 東京都小平市上水本町五丁目20番1号 株 式会社日立製作所半導体事業本部内 (72)発明者 津野田 賢伸 東京都国分寺市東恋ケ窪一丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 米山 浩司 東京都小平市上水本町五丁目20番1号 株 式会社日立製作所半導体事業本部内 (72)発明者 神田 真也 東京都小平市上水本町五丁目20番1号 株 式会社日立製作所半導体事業本部内 (72)発明者 柏木 有吾 東京都小平市上水本町五丁目20番1号 株 式会社日立製作所半導体事業本部内 Fターム(参考) 5B042 GC08 HH30 HH32 MA14 MC03 MC05

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】中央処理装置(CPU)と、 キャッシュユニットと、 それらの間に設けられ、複数のバスからなる内部バス群
    と、 上記内部バス群に接続され、上記内部バス群からトレー
    ス情報を取得するためのトレースユニットとを単一の大
    規模集積回路チップ上に有し、 上記CPUは、実行中のプログラムに含まれた複数のト
    レース命令の各々に応答して、その命令が要求するトレ
    ース情報を上記内部バス群に出力する回路を有するプロ
    セッサ。
  2. 【請求項2】上記CPUは、それぞれ命令で指定可能な
    複数のレジスタをさらに有し、 各トレース命令が要求するトレース情報は、上記複数の
    レジスタの内の、そのトレース命令が指定する少なくと
    も一つのレジスタに保持されたデータを含む請求項1記
    載のプロセッサ。
  3. 【請求項3】上記CPUは、上記CPUで実行されてい
    る命令の命令アドレスに関連するアドレス情報を生成す
    る回路とをさらに有し、 各トレース命令が要求するトレース情報は、そのトレー
    ス情報に対して上記アドレス情報の生成回路により生成
    されたアドレス情報を含む請求項1記載のプロセッサ。
  4. 【請求項4】上記CPUは、 それぞれ命令で指定可能な複数のレジスタと、 上記CPUで実行されている命令の命令アドレスに関連
    するアドレス情報を生成する回路とをさらに有し、 各トレース命令が要求するトレース情報は、上記複数の
    レジスタの内の、そのトレース命令が指定する少なくと
    も一つのレジスタに保持されたデータと、そのトレース
    情報に対して上記アドレス情報の生成回路により生成さ
    れたアドレス情報との組を含む請求項1記載のプロセッ
    サ。
  5. 【請求項5】上記アドレス情報の発生回路は、実行中の
    命令の命令アドレスに関連する命令アドレスを生成する
    プログラムカウンタである請求項3または4記載のプロ
    セッサ。
  6. 【請求項6】上記CPUは、上記トレース情報の送出時
    に、上記トレース情報の取得を上記トレースユニットに
    指示するトレースコマンドを上記内部バス群に送出する
    回路をさらに有する請求項1から5のいずれか一つに記
    載のプロセッサ。
  7. 【請求項7】上記トレースユニットは、 上記内部バス群上の上記トレースコマンドに応答して、
    上記内部バス群上の上記トレース情報を取り込む回路
    と、 取り込まれたトレース情報を上記チップの外部に供給す
    る回路とを有する請求項6記載のプロセッサ。
  8. 【請求項8】上記キャッシュユニットは、上記トレース
    コマンドに応答しないように構成されている請求項6ま
    たは7記載のプロセッサ。
  9. 【請求項9】中央処理装置(CPU)と、 キャッシュユニットと、 上記CPUと上記キャッシュユニットを接続する、複数
    のバスからなる内部バス群とを単一の大規模集積回路チ
    ップ上に有し、 上記CPUは、実行中のプログラムに含まれた複数のト
    レース命令の各々に応答して、その命令が要求するトレ
    ース情報と上記トレース情報の取得を指示するトレース
    コマンドとを上記内部バス群に送出する回路を有し、 上記キャッシュユニットは、上記内部バス群上の上記ト
    レース情報と上記トレースコマンドを、上記チップの外
    部に設けられ、トレース情報を取得するためのトレース
    ユニットに転送する回路を有するプロセッサ。
  10. 【請求項10】ソースプログラムをオブジェクトプログ
    ラムに変換するためのコンパイルプログラムを記録した
    プログラム記録媒体であって、 上記コンパイルプログラムは、 上記ソースプログラム内に記述された複数のトレースを
    指示するプログラム文に基づき、それぞれのプログラム
    文が指定するデータをトレースデータとして出力するた
    めの複数のトレース命令を上記オブジェクトプログラム
    に組み込み、 上記ソースプログラム内に含まれた予め定められた複数
    の種類のいずれかを有する複数のプログラム文のそれぞ
    れに基づき、それぞれのプログラム文に対して予め定め
    られたデータをトレースデータとして出力するための複
    数のトレース命令を上記オブジェクトプログラムに組み
    込みむようにプログラムされている。
  11. 【請求項11】ソースプログラムをオブジェクトプログ
    ラムに変換するためのコンパイルプログラムを記録した
    プログラム記録媒体であって、 上記コンパイルプログラムは、 上記ソースプログラム内に記述された予め定められた複
    数の種類の一つをそれぞれ有する複数のプログラム文に
    基づき、それぞれのプログラム文に関連するデータをト
    レースデータとして出力するための複数のトレース命令
    を上記オブジェクトプログラムに組み込み、 各トレース命令に対応して、そのトレース命令の命令ア
    ドレスに関連するアドレス情報と、各トレース命令が出
    力することを要求するトレースデータの属性とを含むト
    レースタグ情報を出力するようにプログラムされている
    もの。
  12. 【請求項12】各トレース命令が出力することを要求す
    るトレースデータの上記属性は、そのトレース命令に対
    応するプログラム文の上記ソースプログラム上の位置に
    関連するアドレス情報と、そのトレース命令に対応する
    ソースプログラム上の上記プログラム文の種類を示す情
    報と、そのトレース命令に対応するソースプログラム上
    の上記プログラム文の識別子の内、少なくとも一つを含
    む請求項11記載のプログラム記録媒体。
JP11035501A 1999-02-15 1999-02-15 プロセッサおよびそのためのコンパイルプログラム記録媒体 Pending JP2000235510A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11035501A JP2000235510A (ja) 1999-02-15 1999-02-15 プロセッサおよびそのためのコンパイルプログラム記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11035501A JP2000235510A (ja) 1999-02-15 1999-02-15 プロセッサおよびそのためのコンパイルプログラム記録媒体

Publications (1)

Publication Number Publication Date
JP2000235510A true JP2000235510A (ja) 2000-08-29

Family

ID=12443516

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11035501A Pending JP2000235510A (ja) 1999-02-15 1999-02-15 プロセッサおよびそのためのコンパイルプログラム記録媒体

Country Status (1)

Country Link
JP (1) JP2000235510A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007500401A (ja) * 2003-07-25 2007-01-11 ジンガー,アーサー,アール. ソフトウェアデバッギング用装置とその方法
JP2010204934A (ja) * 2009-03-03 2010-09-16 Heartland Data Co ソースコードトレーサ
JP2011514606A (ja) * 2008-03-17 2011-05-06 フリースケール セミコンダクター インコーポレイテッド アドレスに基づく条件付きデバッグ命令を認証するデバッグ方法、制御方法、およびデバッグ装置
JP2013157018A (ja) * 2013-04-12 2013-08-15 Heartland Data Co ソースコードトレーサ
JP2015069453A (ja) * 2013-09-30 2015-04-13 ルネサスエレクトロニクス株式会社 コンピュータ及びコンパイリング方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63284644A (ja) * 1987-05-18 1988-11-21 Matsushita Electric Ind Co Ltd 命令アドレス出力回路
JPH02150931A (ja) * 1988-12-02 1990-06-11 Nec Corp 情報処理装置
JPH03225535A (ja) * 1990-01-31 1991-10-04 Nec Corp プログラムトレース方式
JPH06168111A (ja) * 1992-11-30 1994-06-14 Fuji Facom Corp デバッグ文の自動作成方式
JPH0855045A (ja) * 1994-04-26 1996-02-27 Sun Microsyst Inc データを自己記述式に符号化するための方法および装置
JPH08335177A (ja) * 1995-06-07 1996-12-17 Oki Electric Ind Co Ltd プロセッサ動作観察方法及び装置
JPH096647A (ja) * 1995-06-21 1997-01-10 Oki Electric Ind Co Ltd 逆実行デバッグシステム
JPH1078889A (ja) * 1996-09-04 1998-03-24 Mitsubishi Electric Corp マイクロコンピュータ

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63284644A (ja) * 1987-05-18 1988-11-21 Matsushita Electric Ind Co Ltd 命令アドレス出力回路
JPH02150931A (ja) * 1988-12-02 1990-06-11 Nec Corp 情報処理装置
JPH03225535A (ja) * 1990-01-31 1991-10-04 Nec Corp プログラムトレース方式
JPH06168111A (ja) * 1992-11-30 1994-06-14 Fuji Facom Corp デバッグ文の自動作成方式
JPH0855045A (ja) * 1994-04-26 1996-02-27 Sun Microsyst Inc データを自己記述式に符号化するための方法および装置
JPH08335177A (ja) * 1995-06-07 1996-12-17 Oki Electric Ind Co Ltd プロセッサ動作観察方法及び装置
JPH096647A (ja) * 1995-06-21 1997-01-10 Oki Electric Ind Co Ltd 逆実行デバッグシステム
JPH1078889A (ja) * 1996-09-04 1998-03-24 Mitsubishi Electric Corp マイクロコンピュータ

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007500401A (ja) * 2003-07-25 2007-01-11 ジンガー,アーサー,アール. ソフトウェアデバッギング用装置とその方法
JP2011514606A (ja) * 2008-03-17 2011-05-06 フリースケール セミコンダクター インコーポレイテッド アドレスに基づく条件付きデバッグ命令を認証するデバッグ方法、制御方法、およびデバッグ装置
JP2010204934A (ja) * 2009-03-03 2010-09-16 Heartland Data Co ソースコードトレーサ
JP2013157018A (ja) * 2013-04-12 2013-08-15 Heartland Data Co ソースコードトレーサ
JP2015069453A (ja) * 2013-09-30 2015-04-13 ルネサスエレクトロニクス株式会社 コンピュータ及びコンパイリング方法

Similar Documents

Publication Publication Date Title
JP3708176B2 (ja) データ処理装置及びデータ処理方法
US4811345A (en) Methods and apparatus for providing a user oriented microprocessor test interface for a complex, single chip, general purpose central processing unit
US8145874B2 (en) System and method of data forwarding within an execution unit
US20030028860A1 (en) Compiler and debugging device
JPH055136B2 (ja)
US20020184615A1 (en) System and method for selectively and automatically modifying the source code of a computer program
US6092219A (en) Method for use of bus parking states to communicate diagnostic information
US6484273B1 (en) Integrated EJTAG external bus interface
JP4564616B2 (ja) デバッグ・データ処理装置
US20070271533A1 (en) System lsi verification system and system lsi verification method
GB2329048A (en) A debugger interface unit with a stepping mode
JP2000235510A (ja) プロセッサおよびそのためのコンパイルプログラム記録媒体
US7110934B2 (en) Analysis of the performance of a portion of a data processing system
JP2003162426A (ja) 複数cpuの協調デバッグ回路を備えるコンピュータシステム及びデバッグ方法
JP3214613B2 (ja) マイクロプロセッサ及びデータ処理システム
JP2563708B2 (ja) マイクロプロセッサ装置およびそれを用いたエミュレータ装置
US6112316A (en) System for use of bus parking states to communicate diagnostic information
Fleury et al. A real-time parallel image-processing model
JPH08171505A (ja) 半導体装置
Kim et al. Performance analysis and tuning for a single-chip multiprocessor DSP
JP2520158B2 (ja) ディジタルシグナルプロセッサのデバッグ方式
JP2000057012A (ja) トレース装置
JPH03216734A (ja) データ処理方法及び中央処理装置
JPH03252731A (ja) マイクロプロセッサ
CN110245096A (zh) 一种实现处理器直接连接扩展计算模块的方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050927

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051004

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051201

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20051201

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060110