JPH02165240A - マルチプロセッサのデバッグ方式 - Google Patents

マルチプロセッサのデバッグ方式

Info

Publication number
JPH02165240A
JPH02165240A JP63319960A JP31996088A JPH02165240A JP H02165240 A JPH02165240 A JP H02165240A JP 63319960 A JP63319960 A JP 63319960A JP 31996088 A JP31996088 A JP 31996088A JP H02165240 A JPH02165240 A JP H02165240A
Authority
JP
Japan
Prior art keywords
address
stop
register
ipu
spu
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
JP63319960A
Other languages
English (en)
Inventor
Nobuyoshi Sato
信義 佐藤
Mitsuo Sakurai
桜井 三男
Shigenori Koyata
小谷田 重則
Masahiro Ikeda
昌弘 池田
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 JP63319960A priority Critical patent/JPH02165240A/ja
Publication of JPH02165240A publication Critical patent/JPH02165240A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)

Abstract

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

Description

【発明の詳細な説明】 [概要] 複数個のプロセッサが有機的に結合されたマルチプロセ
ッサシステムにおけるマルチプロセッサのデノ(ラグ方
式に関し、 デバッグ機能の向上を図ることを目的とし、主にシステ
ム制御/チャネル制御を行なう主たるプロセッサ(S 
P U)と、SPUに接続される命令制御等を行なう従
たるプロセッサ([PU)が複数個からなる構成のマル
チプロセッサシステムにおいて、予めSPU内のレジス
タにストップアドレスをセットしておき、TLBフォル
トが発生したかどうかチエツクし、TLBフォルトが発
生したら、前記SPUからストップアドレスを読出し、
実アドレスへのアドレス変換を行い、変換した実アドレ
スをIPU内のアドレスストップ・レジスタにセットす
るように構成する。
[産業上の利用分野] 本発明は複数個のプロセッサが有機的に結合されたマル
チプロセッサシステムにおけるマルチプロセッサのデバ
ッグ方式に関し、更に詳しくはマルチプロセッサのデバ
ッグのために用いられるアドレススト・ツブ或いはプロ
グラム拳イベント・レコーF’(PER)機能を効率よ
く行うためのデパック方式に関する。
近年のコンピュータシステムの高速化の要求にともない
、OAの分野にもマルチプロセッサシステムか用いられ
るようになってきた。しかるに、プログラムの動作は腹
雑化してくる一方であり、処理するためのブロクラムの
1も増大してくる。
そこで、質の高いプログラムを作成するためには、デバ
ッグ方法の充実を図る必要がある。
[従来の技術] 従来、シングルプロセッサにおけるデバッグ方法として
、アドレスストップ(或いはプログラム・イベント・レ
コード)機能かある。この機能は、プログラムの開発者
がある命令のアドレスに到達したらストップ状態(また
はプログラム割込みの発生状態)にするか、或いはある
アドレスに書込みを行ったらストップ状態(またはプロ
グラム割込み発生状態)にすることを設定しておくと、
事象が発生した時点でストップ状態(またはプログラム
割込み状態)になり、プログラムの流れが開発者の期待
どおりかをリアルタイムで追っていくことができる機能
である。この機能は、開発者かセットしたアドレス(通
常は論理アドレス)を実アドレスに変換し、このアドレ
スをプロセッサ内のアドレスストップ−レジスタ(後述
)にセットしておくことで実現することができる。
この方式では、指定された論理アドレスを実アドレスに
変換する点がポイントで、開発者が指定した時には、論
理アドレスを実アドレスに変換できない場合がある。こ
の場合は、セグメントテーブルまたはページテーブルか
有効になっていない場合で、デバッグの最中にはよくお
こりうる現象である(例えばデバッグしようとしている
プログラムがまたプログラムでローディングされていな
い場合等)。この場合には、SPT命令(ページテーブ
ルへのセット命令)を出した時点で再度、論理アドレス
から実アドレスへのアドレス変換を行い、変換テーブル
が1効であればアドレススI・ツブ・レジスタに変換さ
れた実アドレスをセントする。変換テーブルが無効であ
れば、実アドレスはセントできないので、プロセッサ内
のアドレスストップ指示フラグレジスタ(後述)に“O
“を人力して、当機能を無効にしておく。このようにし
て、ページテーブルへのセットのタイミングでアドレス
ストップ機能の回路にストンプアトレスをセントするよ
うにしておけばよい。
以上の説明では、シングルプロセッサの場合のアドレス
ストップ機能について説明した。次に、マルチプロセッ
サシステムの場合のデバッグ機能について説明する。こ
の場合のアドレスストップ機能はそれぞれの命令実行専
用のプロセッサ(以下IPUと略す)か具備すべき機能
であり、実アドレスのセットについても基本的にはシン
グルプロセッサの場合と同様である。
第4図はマルチプロセッサシステムの構成例を示す図で
ある。主プロセツサ(SPU)1と複数個の命令実行用
プロセッサ(IPU)2とがメモリバス3を介して相互
接続されている。メモリバス3には共通メモリとしての
システムメモリ4が接続されている。このような11か
成のマルチプロセッサシステムでは、どのプロセッサ2
から指定された事象(フェッチアドレス一致/ストアア
ドレス一致)か発生するか分からない。そのため、各プ
ロセッサ2の何しているアドレスストップ・レジスタ2
aには同一のデータが入力されていなければならない。
従って、SPT命令のタイミングで実アドレスに変換で
きた時に、他のプロセッサ(IPU)2に対して変換さ
れた実アドレスをセットしてやる必要がある。即ち、こ
の時にプロセッサ間の通信が必要となり、第4図に示し
たシステム構成では、主プロセツサ1を介して他のプロ
セッサ2に対して実アドレスをセットするように要求を
出す必要がある。
第5図は、従来方式のデバッグ動作を示すフロ−チャー
トである。先ず、IPU#0 (第4図参照)でプログ
ラム実行中とする。プログラム実行中にSPT命令が入
ったものとすると(ステップ1) 、SPT命令により
ページテーブルにデータをセットしくステップ2)、ア
ドレスストップがあるかどうかチエツクする(ステップ
3)。ここで、アドレスストップかあるかどうかは、シ
ステムメモリ4(第4図参照)内の所定の領域にセット
されているので、その領域にフラグが立っているかどう
かを見にいくことで認識する。プログラム開発者がアド
レスストップをキーボードから指定すると、主プロセツ
サ1(第4図参照)がシステムメモリ4の所定領域にそ
の旨を登録する。つまりフラグ1”を立てる。
次に、与えられたアドレスストップφアドレスを実アド
レスに変換する(ステップ4)。次に、変換できたかど
うかチェックし(ステップ5)、変換できた場合には変
換した実アドレスをシステムメモリ4の所定領域にセソ
I・する(ステップ6)。次に、自プロセッサ内のフラ
グAをオンにする。
つまりフラグに“1”を立てる(ステップ7)。
以上のシーケンスが終了したら、生プロセッサ(SPU
)1に割込み通知を行う(ステップ8)。
主プロセツサ1側では、この割込み通知を受けると、ア
ドレスストップ・アドレスのセット要求を判定し、他の
IPU(プロセッサ)にストップ指示を出す(ステップ
9)。そして、すべてのプロセッサか仝てストップした
かどうかチェックし(ステップ10)、全てがストップ
したらMIA(プロセッサのマイクロ・アドレス・レジ
スタ)へある値をセットしプロセッサへスタート指示を
出す(ステップ11)。
他の全てのIPU (IPU#O以外の全てのIPU)
では、S6の実アドレスを内蔵のアドレスストップ・レ
ジスタにセットシ(ステップ12)、IPUからIPU
#0 (またはシステムメモリ内か)内のフラグAをオ
フにする(ステップ13)。
IPUaO側では、フラグAかオフになったかとうかを
チエツクしており(ステップ14)、オフになったら次
の命令に進む。
[発明か解決しようとする課題] 従来のマルチプロセッサのデバッグ方式では、実アドレ
スに変換された時に、他のIPUに対してストップ指示
を出してストップさせ、ストップしたらIPUのスター
トアドレスを変更し、IPUをまたスタートさせるとい
う処理が主プロセツサ1側で必要になる。この間、実ア
ドレスに変換したIPU(前述の例で言えばIPU#0
)は、全ての他のIPUが実アドレスをアドレスストッ
プ・レジスタにセットし終わるまで待っていなければな
らない(終了したかどうかはシステムメモリ4内のフラ
グAがオンからオフになったことを検知することで判断
できる)。この間の待ち時間は以外に大きく、処理の高
速化、効率化の点で問題があった。
本発明はこのような課題に鑑みてなされたものであって
、デバッグ機能の効率化を3することかできるマルチプ
ロセッサのデバッグ方式を提供することを目的としてい
る。
[課題を解決するだめの手段] 第1図は本発明方式の原理を示すフローチャートである
。本発明は、 予めSPU内のレジスタにストップアドレスをセントし
ておき(ステップ1)、 TLBフォルトが発生したかどうかチェックし(ステッ
プ2)、 TLBフォルトが発生したら、前記SPUからストップ
アドレスを読出し、実アドレスへのアドレス変換を行い
(ステップ3)、 変換した実アドレスをIPU内のアドレスストップφレ
ジスタにセットする(ステップ4)ように構成したこと
を特徴としている。
[作用] 各IPUては、TLBフォルト(論理アドレスを索引と
して物理アドレスに変換するデータが当該TLBに入っ
ていなかったこと)か発生するたび毎に、SPUからス
I・ツブアドレス(論理アドレス)を読出してきて該論
理アドレスから物理アドレスへのアドレス変換を行い、
ストップアドレス・レジスタに当該物理アドレスをセッ
トする。
一般にTLBフォルトは各IPUて頻繁に発生している
ので、そのたび毎に前記したような処理を行えば、各I
PU間でストップアドレスを通知しあう必要がなくなり
、デバッグ機能の向上を図ることができる。
[実施例] 第2図はアドレスストップ割込み信号発生回路の例を示
す図である。第4図と同一のものは、同一の符号を付し
て示す。プロセッサ2とシステムメモリ4とは、アドレ
スバス(A−BUS) 及びデータバス(D−BUS)
により接続されている。
論理アドレスは、アドレス変換されて実アドレスになり
、この実アドレスはアドレスストップφレジスタ2aに
セントされる。一方、プロセッサ2からは、フェッチま
たはストアサイクル毎にアドレスバスにアドレスデータ
が乗る。このアドレスデータは、比較回路11に入る。
一方、比較回路11の他方の人力にはアドレスストップ
・レジスタ2aの出力が入っている。
ここで、アドレスデータがストップアドレス−レジスタ
2aの内容と一致すれば、該比較回路11は一致を示す
“1”信号を出力する。一方、アドレスストップ指示フ
ラグレジスタ12にはフェッチ(命令読込み)有効フラ
グFとストア有効フラグSがあり、それぞれ合わせて2
ビツト構成となっている。これらFフラグ、Sフラグに
“1#が立っていたらそれぞれフェッチ有効、ストア有
効となる。これら、FSフラグはそれぞれアンドゲート
Gl、G2に入っており、かつこれらアンドゲートGl
、G2の他方の人力には、それぞれWrite信号、F
etch信号が入っており、アドレスストップ指示フラ
グレジスタ12のフラグが立っている時のみ、ゲートG
1.G2は開き、Write信号、Fetch信号を通
過させる。
アンドゲートGl、G2を通過した信号は、オアゲート
G3を通過してアンドゲートG4の一方の入力に入る。
そして、比較回路11がらの一致信号により“1”信号
か出力された時にアントゲ−1・G4は開き、Writ
e信号、Fetch信号かアドレスストップ割込 各IPUはこの信号を受けるとシーケンスをストップさ
せる。
第3図は本発明方式の一実施例を示すフローチャートで
ある。図に示す動作の前提としてストップアドレス(論
理アドレス)は、予めオペレータによりSPU内のレジ
スタ(コントロールバッファ)に格納されているものと
する。
T L Bフォルトか発生したら、それまでのシーケン
スを保護すへく使用していたレジスタのデータをIPU
内の退避レジスタ(L S)へセーブしくステップ1)
、その時のアドレス(フォルトアドレス)によりセグメ
ントテーブルをリードしくステップ2)、続いてページ
テーブルをリードしくステップ3)、TLBに実アドレ
スをセットする(ステップ4)。ステップ3.4は、T
 L Bフォルト処理が終了した後の戻すアトレスを確
保するためのらのである。このようにして戻りアドレス
かセットされたら、LSにセーブしていたブタを使用し
ていたレジスタへリストアする(ステップ5)。
しかる後、アドレスストップ機能がオンになっているか
どうかチエツクする(ステップ6)。このステップは、
具体的にはアドレスストップ指示フラグレジスタ(第2
図参照)のフラグに“1”が立っているかどうかで判断
することができる。
若し、フラグか立っていなければTRAP  ENDと
して元に戻る。フラグが立っていた場合には、SPU内
のレジスタにセットされていたストップアドレス(アド
レスストップφアドレス)を読出し、アドレスストップ
・アドレスをそれまでの論理アドレスから物理アドレス
に変換する(ステップ7)。ここで、論理アドレスから
物理アドレスへの変換は、ステップ2,3と同様であり
、先ずセグメントテーブルをリードし、次にページテー
ブルをリードして実アドレスへ変換する処理である。
実アドレスへの変換ができたかどうかチェックしくステ
ップ8)、変換できない場合には元へ戻る。変換できた
場合には、変換した実アドレスをIPU内のアドレスス
トップ・レジスタにセットする(ステップ9)。これま
で述べたシーケンスをSPUと接続される全てのIPU
が行うことにより、IPU間で通信しあうことなく各I
PUがストップアドレスをストップアドレス・レジスタ
にセットすることができ、デバッグ機能の向上を図るこ
とができる。
[発明の効果] 以上、詳細に説明したように、本発明によればTLBフ
ォルトのタイミングでストップアドレスの変換を行うの
で、SPT命令で行うよりも効率のよいアドレス変換が
できる。従って、本発明方式によればデバッグ機能の向
上を図ることができる。
【図面の簡単な説明】
第1図は本発明方式の原理を示すフローチャート、 第2図はアドレスストップ割込み信号発生回路の例を示
す図、 第3図は本発明方式の一実施例を示すフローチャート、 第4図はマルチプロセラサンステムの構成例を示す図、 第5図は従来方式のデハック動作を示すフロチャートで
ある。 第2図において、 2はプロセッサ、 2aはアドレスストップ・レジスタ、 4はシステムメモリ、 11は比較回路、 12はアドレスストップ指示フラグレジスタ、Gl、G
2はアントゲート、 G3はオアゲート、 G4はアントゲ−1・である。

Claims (1)

  1. 【特許請求の範囲】 主にシステム制御/チャネル制御を行なう主たるプロセ
    ッサ(SPU)と、SPUに接続される命令制御等を行
    なう従たるプロセッサ(IPU)が複数個からなる構成
    のマルチプロセッサシステムにおいて、 予めSPU内のレジスタにストップアドレスをセットし
    ておき(ステップ1)、 TLBフォルトが発生したかどうかチェックし(ステッ
    プ2)、 TLBフォルトが発生したら、前記SPUからストップ
    アドレスを読出し、実アドレスへのアドレス変換を行い
    (ステップ3)、 変換した実アドレスをIPU内のアドレスストップ・レ
    ジスタにセットする(ステップ4)ように構成したこと
    を特徴とするマルチプロセッサのデバッグ方式。
JP63319960A 1988-12-19 1988-12-19 マルチプロセッサのデバッグ方式 Pending JPH02165240A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63319960A JPH02165240A (ja) 1988-12-19 1988-12-19 マルチプロセッサのデバッグ方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63319960A JPH02165240A (ja) 1988-12-19 1988-12-19 マルチプロセッサのデバッグ方式

Publications (1)

Publication Number Publication Date
JPH02165240A true JPH02165240A (ja) 1990-06-26

Family

ID=18116170

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63319960A Pending JPH02165240A (ja) 1988-12-19 1988-12-19 マルチプロセッサのデバッグ方式

Country Status (1)

Country Link
JP (1) JPH02165240A (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS586572A (ja) * 1981-07-06 1983-01-14 Nippon Telegr & Teleph Corp <Ntt> デバグ割り込み方式

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS586572A (ja) * 1981-07-06 1983-01-14 Nippon Telegr & Teleph Corp <Ntt> デバグ割り込み方式

Similar Documents

Publication Publication Date Title
US5347636A (en) Data processor which efficiently accesses main memory and input/output devices
JPH0430053B2 (ja)
JP3707581B2 (ja) 自己整合スタック・ポインタを有するデータ処理システムおよびその方法
JPH0728670A (ja) 情報処理装置
EP0385136B1 (en) Microprocessor cooperating with a coprocessor
JPH02165240A (ja) マルチプロセッサのデバッグ方式
JPS6049337B2 (ja) パイプライン制御方式
JPH0377137A (ja) 情報処理装置
JP5012562B2 (ja) マイクロコンピュータ
JP2808757B2 (ja) デバッグ用マイクロプロセッサ
JPH05100883A (ja) データ処理用半導体装置
JPH06348543A (ja) 入出力シミュレータとの接続方法
US20070288675A1 (en) Bus system, bus slave and bus control method
JPS6316350A (ja) マイクロプロセッサ
JPS59172044A (ja) 命令制御方式
JP2555912B2 (ja) マイクロプロセッサ
JPS5955546A (ja) フア−ムウエア処理装置
JP2572821B2 (ja) 命令再実行による演算処理方式
JPS63155330A (ja) マイクロプログラム制御装置
JPH036758A (ja) マイクロプロセッサ
JPH05250161A (ja) マイクロコンピュータ装置
JPH07117909B2 (ja) マルチプロセッサのデバッグ方法
JPH0752402B2 (ja) データ処理装置
JP2001084149A (ja) 情報処理装置における割り込み処理方式
JPH0282318A (ja) 浮動小数点演算装置