JPH03296832A - マイクロプロセッサ - Google Patents
マイクロプロセッサInfo
- Publication number
- JPH03296832A JPH03296832A JP2100018A JP10001890A JPH03296832A JP H03296832 A JPH03296832 A JP H03296832A JP 2100018 A JP2100018 A JP 2100018A JP 10001890 A JP10001890 A JP 10001890A JP H03296832 A JPH03296832 A JP H03296832A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- address
- execution
- operand
- 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
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
産業上の利用分野
本発明1よ パイプライン制御を行うマイクロプロセッ
サに関し 特にそのようなマイクロプロセッサにおける
プログラムのデバッグに有効な改良に関するものであ4 従来の技術 開発直後のツブログラムに内蔵する誤りを取り除く技術
とし5て沫 例えば特開昭62−179033号公報に
示されていも これはプログラムに内蔵する誤りを取り
除くために プロセッサ内部にオペランドアクセスに関
する割込みを生じさせるブレークポイントを設定するた
めのアト1ノスを格納する1ノジスタを設り、プロセッ
サ内部においてブレ−クポイントによる割込みをプロセ
ッサ内部において発生させる手法であ八 発明が解決しようとする課題 ところで開発されるプログラムが複雑化するとそれに伴
ってデバッグのためのブレ−クポイントの数も増やす必
要が生じる力(多くのブレークポイントを設定すると実
時間における動作と大きく異なった動作を行う可能性が
あり、有効なデバッグが行えないこともある、ま)、Z
、、近年のようにプロセッサに実装する機能が増大して
くるとプロセッサ内部にブレークポイントを設定するレ
ジスタを多く設けることが困難になるという課題があん
このような課題に対し2てプロセッサ外部にオペランド
アクセスに対するブIノークポイントによる割込みを生
じさせる回路を付加することが考えられる力(データ処
理能力を高めるためにパイプライン制御を行っているマ
イクロプロセッサにおいて(戴 オペランドの書込みが
命令の実行とは独立して行われるたへ 外部回路からの
任意の命令に対して割込みを生じるブIノークポイント
を設定できないといった問題があム 本発明はかかる点
に鑑へ パイプライン制御を行うマイクロプロセッサに
おいて、任意の命令に対してブレークポイントによる割
込みを発生させることのできる回路をプロセッサ外部に
構築することを可能とし しかも実時間あるいは実時間
に近い状況でのデバッグを可能とすることを目的とすム 課題を解決するための手段 本発明はアクセスするオペランドのメモリ上のアトlメ
スを計算するアドレス演算手段と、アト1ノス演算手段
でのアト1/ス計算終了抵 命令を実行しメモリへ格納
するデータを生成する命令実行手段と、前記アドレス演
算手段の出力するオペランドアドレスをアドレス計算終
了後入力し保持するアドレス保持手段と、前期命令実行
手段の出力するデータを命令実行手段の処理終了後入力
し 前記アドレス保持手段の保持するアドレスにより指
定されるメモリ上の位冒ヘデータの書込みを行うオペラ
ンド格納手段と、前記オペランド格納手段のデータ書込
みの開始に先立って、プロセッサ外部より命令の実行開
始禁止要求を入力1− 前記オペランド格納手段のデー
タ書込みの開始時点で、前記命令実行手段における新な
命令の実行を停止させる命令実行停止手段と、前記オペ
ランド格納手段によるメモリへの書込み終了後、 前記
命令実行手段における新な命令の実行を再開させる命令
実行再開手段とを備えたマイクロプロセッサであム 前
記マイクロプロセッサに 前記アドレス演算手段よりオ
ペランドアドレスを入力するとともに 実行中のパスザ
イクルに対応するアドレスを、パスザイクルの終了前に
アドレスの変化を許可するアドレス先行許可信号をブロ
モ・ソサ外部より入力し 前記アドレス先行許可信号が
有効である場合に フェッチバスサイクル実行中に書込
みを行うオペランドのアドレスをプロセッサ外部に出力
するとともに メモリへ書込むデータに先行して書込み
アドレスが出力されていることを示すアドレス有効信号
を出力するバス制御手段を備えたマイクロプロセッサで
あム 作用 本発明は前記(7た構成により、マイクロプロセッサ外
部において、マイクロプロセッサの実行状況を監視し
特定の条件を満たした場合にマイクロプロセッサより命
令の実行を禁止する命令実行禁止要求を入力1.、、オ
ペランドのメモリへの書込開始時点で命令実行手段にお
ける新な命令の実行を命令実行停止手段が禁止し メモ
リへの書込が完了した時点で命令実行再開手段により命
令実行手段における命令の実行を再開させも この時、
メモリへアクセスした命令の実行直後において命令の実
行を中断させたい場合1よ メモリへのアクセス中に割
込み要求を行うことによって、オペランドアクセスが終
了した時点でのオペランドアクセスブレークを発生させ
ることができも またオペランドブレークを発生させる
アドレス以外のデータへアクセスを行う場合は 通常の
動作と同じパイプライン動作が行なわれることが望まし
くlすなわ板 メモリへの書込みを行う場・合L メ
モリへ書込むデータに先行して書込みアドレスが出力さ
れることにより、オペランドブレークを発生させるため
にメモリへの書き込みが終了するまで次命令の実行開始
を禁止するかどうかを、各メモリへの書き込みを行う毎
に判断でき、不要な命令の実行禁止状態を少なくするよ
うに動作す一実施例 第1図は本発明の一実施例におけるマイクロプロセッサ
の構成図を示すものであム 第1図において、 1はパ
イプラインの制御を行うバイブライン制御同区 2は命
令のフェッチを行う命令フェッチ回路 3は命令フェッ
チ回路2においてフェッチされた命令の解読を行う第1
段の命令デコード回wX&、4は第1段の命令デコード
回路3において解読された命令をさらに詳細に解読を行
う第2段の命令コード回路 5はデコード回路3、また
は4において命令をデコードした結果に基づきアクセス
するオペランドのアドレスを計算するオペランドアドレ
ス計算回路 6はデコード回路4での命令の解読結果に
基づきオペランドのフェッチあるいはレジスタ上のデー
タを処理する命令実行回路 7は命令実行回路6の実行
結果を図外のメモリに格納するオペランドライト回路1
01.103゜105、 107.109は前記各回路
での処理が終了し各回路が空いている事をパイプライン
制御回路1に通知するステージ状態信号 10′2..
104.10良 10&110はバイブライン制御回路
1が前記各回路に対して次命令の実行を停止させるため
のホールド信号80はマイクロプロセッサ外部よりプロ
セッサ制御回路1に対してオペランドライト回路6にお
いてメモリへのオペランドの書き込みが行なわれている
間命令実行回路6での新な命令の実行を停止させる命令
先行実行禁止要求信号線であム 第2図は上記マイクロ
プロセッサにおいて、 IFは命令フェッチステージを
、DEC1は第1段の命令デコードステージを、DEC
2は第2段の命令デコードステージを、OAはオペラン
ドアドレス計算ステージを、OF/EXはオペランドの
フェッチステージと命令実行ステージを、OWはオペラ
ンドのライトステージを、N−N+3は処理される各命
令をあられす。 IF、DEC1、DEC2,0ん0F
SEム OWの各ステージは第1図においてそれぞれ命
令フェッチ回路2、命令デコード回路3および4、オペ
ランドアドレス計算回路5、命令実行回路6、オペラン
ドライト回路7において行う処理に対応すム な抵 本
実施回路においてオペランドアドレス計算と第2段の命
令解読Ji OAとDEC2ステージにおいて並列に
実行が可能であり、オペランドのフェッチと命令の実行
とはOF/EXステージにおいて排他的に行なわれも
第2図に基づいてバイブライン制御回路を説明すも 先
ず、命令フェッチステージIFにおいて命令がフェッチ
されると、その命令は第1段の命令デコードステージD
EC1に送られデコードされも デコードステージDE
C1はデコード結果に基づき第2段の命令デコードステ
ージに処理結果を転送するとともに、 オペランドアド
レス計算回路5を制御す4 ′M2段のデコードステ
ージDEC2でc表 さらに命令の詳細な解読を行な
(\ その結果に基づき命令実行回路6を制御すム さ
らに 命令実行回路6は命令の実行結果をメモリへ格納
が必要であれば オペランドライト回路7を制御しメモ
リへの格納を行う。上記ステージが命令Nに対する処理
を終えて次ステージへ送出すると、すぐ次の命令N+1
に対す′る処理を開始すム こうして、各サイクルにお
いてステージ毎のおのおの異なる命令を処理すム 上記
説明1山 パイプライン処理の通常の動作に対するもの
であム ここで、命令先行実行禁止要求が行なわれた場
合に(友 通常とは異なる動作を行なt、% OF/
EXステージはOWステージにおいてメモリへの書き込
みが行われている間断な命令の実行を中断ずム 第3図
に基づいて祢弔先行実行禁止要求が行なわれた場合にお
けるバイブライン制御回路の動作を説明すも 第3図に
おいでI F、、、DECI、 DEC2,OA、
OF、 E瓜 OWおよびN〜N+3は第2図と同様に
各ステージおよび命令を表1ち まL COへ−C8
はマイクロプロセッサの実行サイクルを示している。命
令NがサイクルC4においてO冒ステージ(メモリライ
))における命令Nの処理を開始すると、命令先行実行
禁止要求信号線が有効となっておりOF/Eステージに
おける次命令の実行は、N命令のOvステージが完了す
るまでまたされも 従って、命令N+1がOF/EXス
ーテージにおいてその処理が開始されるのはサイクルC
6となるっ そのたべ マイクロプロセッサ外部よりメ
モリアクセスを監視1− 特定のデータへの書き込みが
行なわれた場合に 外部割り込み要求を行う事により、
命令Nのメモリへの書き込み結了練 命令N+1の実行
を開始する前に命令を中断することができ4 以上のよ
うに本実施例によれに バイブライン制御を行うマイク
ロプロセッサにおいて、ブロセッザ外部よりメモリへの
書き込みを確at−外部割り込み要求を行うことにより
、書き込みを行った命令の実行結了後に実行を中断でき
、プログラムの開発効率を飛躍的に高め聾 まテ、二
マイクロプロセッサ外部において命令先行実行を抑止で
きるた八 特定条件下での命令先行実行を禁止すること
により、メモリへの書き込みによるマイクロプロセッサ
の動作の低下を抑え 実際の動作に近い環境にお(′3
るプログラムの動作確認が可能となも 第4図は本発明
の第2の実施例におけるマイクロプロセッサの構成図を
示すものである。第4図において、 1はバイブライン
の制御を行うバイブライン制御回路 2は命令のフェッ
チを行う命令フェッチ回路 3は命令フェッチ回路2に
おいてフェッチされた命令の解読を行う第1段の命令デ
コード回14は第1段の命令デコード回路3において解
読された命令をさらに解読を行う第2段の命令デコード
回路、5はデコード回路3、または4において命令をデ
コード1.た結果に基づきアクセスするオペランドのア
ドレスを計算するオペランドアドレス計算回16はデコ
ード回路4での命令の解読結果に基づきオペランドのフ
ェッチあるいはレジスタ十のデ・−夕を処理する命令実
行回路 7は命令実行回路6の実行結果を図外のメモリ
に格納するオペランドライト回路 101.103.
105. 107.109は前記各回路での処理が終了
し各回路が空いている事をバイブライン制御回路1に通
知するステージ状態信号、 102. 104. 10
代 10亀 110はバイプラ・イン制御回路1が前記
各回路に対(7て次命令の実行を停止させるだめのホー
ルド信u 80はマイクロプロセッサ外部よりブロセ
ッザ制御回路1に対してオペランドライト回路6におい
てメモリへのオペランドの査き込みが行なわれている間
命令実行回路6での新な命令の実行を停止させる命令先
行実行禁止要求信号線−代 以」二は第1図と同様なも
のであ4 第1図と異なるの1よ 8がマイクロプロセ
ッサの外部バスの制御を行うバス制御回路81.84、
87が各ステージからバス制御回路8へのバスアクセ
ス要求信号、82.85. 88が各ステージに対して
バスアクセスの開始を通知するバスアクセス開始信号、
i 8氏89が各ステージに対してバスアクセスの実
行中であることを示すバス実行信号、41が第2の命令
デコード回路4において解読した命令がメモリへの書き
込みを行う場合に 先行的にライト要求を行うブリライ
ト要求信号 9がメモリへの書き込みを行う場合にデー
タを出力するバッファ、]0がマイクロプロセッサがバ
スをアクセスする場合に出力するアドレスを選択するセ
1ツク久 11がアトlノスを出力するためアドレス出
力バッファ、 121がデータバフ、、120がアドレ
スバス94がアト1ノスバス120に有効なアドレスが
出力されていることを示すアドレスストローブ信号、9
5がライトアドレスがバスのライトサイクルに先行して
ライトアドレスが出力されていることを示すライトアト
1ノスストローブ信号を設けた点である。
サに関し 特にそのようなマイクロプロセッサにおける
プログラムのデバッグに有効な改良に関するものであ4 従来の技術 開発直後のツブログラムに内蔵する誤りを取り除く技術
とし5て沫 例えば特開昭62−179033号公報に
示されていも これはプログラムに内蔵する誤りを取り
除くために プロセッサ内部にオペランドアクセスに関
する割込みを生じさせるブレークポイントを設定するた
めのアト1ノスを格納する1ノジスタを設り、プロセッ
サ内部においてブレ−クポイントによる割込みをプロセ
ッサ内部において発生させる手法であ八 発明が解決しようとする課題 ところで開発されるプログラムが複雑化するとそれに伴
ってデバッグのためのブレ−クポイントの数も増やす必
要が生じる力(多くのブレークポイントを設定すると実
時間における動作と大きく異なった動作を行う可能性が
あり、有効なデバッグが行えないこともある、ま)、Z
、、近年のようにプロセッサに実装する機能が増大して
くるとプロセッサ内部にブレークポイントを設定するレ
ジスタを多く設けることが困難になるという課題があん
このような課題に対し2てプロセッサ外部にオペランド
アクセスに対するブIノークポイントによる割込みを生
じさせる回路を付加することが考えられる力(データ処
理能力を高めるためにパイプライン制御を行っているマ
イクロプロセッサにおいて(戴 オペランドの書込みが
命令の実行とは独立して行われるたへ 外部回路からの
任意の命令に対して割込みを生じるブIノークポイント
を設定できないといった問題があム 本発明はかかる点
に鑑へ パイプライン制御を行うマイクロプロセッサに
おいて、任意の命令に対してブレークポイントによる割
込みを発生させることのできる回路をプロセッサ外部に
構築することを可能とし しかも実時間あるいは実時間
に近い状況でのデバッグを可能とすることを目的とすム 課題を解決するための手段 本発明はアクセスするオペランドのメモリ上のアトlメ
スを計算するアドレス演算手段と、アト1ノス演算手段
でのアト1/ス計算終了抵 命令を実行しメモリへ格納
するデータを生成する命令実行手段と、前記アドレス演
算手段の出力するオペランドアドレスをアドレス計算終
了後入力し保持するアドレス保持手段と、前期命令実行
手段の出力するデータを命令実行手段の処理終了後入力
し 前記アドレス保持手段の保持するアドレスにより指
定されるメモリ上の位冒ヘデータの書込みを行うオペラ
ンド格納手段と、前記オペランド格納手段のデータ書込
みの開始に先立って、プロセッサ外部より命令の実行開
始禁止要求を入力1− 前記オペランド格納手段のデー
タ書込みの開始時点で、前記命令実行手段における新な
命令の実行を停止させる命令実行停止手段と、前記オペ
ランド格納手段によるメモリへの書込み終了後、 前記
命令実行手段における新な命令の実行を再開させる命令
実行再開手段とを備えたマイクロプロセッサであム 前
記マイクロプロセッサに 前記アドレス演算手段よりオ
ペランドアドレスを入力するとともに 実行中のパスザ
イクルに対応するアドレスを、パスザイクルの終了前に
アドレスの変化を許可するアドレス先行許可信号をブロ
モ・ソサ外部より入力し 前記アドレス先行許可信号が
有効である場合に フェッチバスサイクル実行中に書込
みを行うオペランドのアドレスをプロセッサ外部に出力
するとともに メモリへ書込むデータに先行して書込み
アドレスが出力されていることを示すアドレス有効信号
を出力するバス制御手段を備えたマイクロプロセッサで
あム 作用 本発明は前記(7た構成により、マイクロプロセッサ外
部において、マイクロプロセッサの実行状況を監視し
特定の条件を満たした場合にマイクロプロセッサより命
令の実行を禁止する命令実行禁止要求を入力1.、、オ
ペランドのメモリへの書込開始時点で命令実行手段にお
ける新な命令の実行を命令実行停止手段が禁止し メモ
リへの書込が完了した時点で命令実行再開手段により命
令実行手段における命令の実行を再開させも この時、
メモリへアクセスした命令の実行直後において命令の実
行を中断させたい場合1よ メモリへのアクセス中に割
込み要求を行うことによって、オペランドアクセスが終
了した時点でのオペランドアクセスブレークを発生させ
ることができも またオペランドブレークを発生させる
アドレス以外のデータへアクセスを行う場合は 通常の
動作と同じパイプライン動作が行なわれることが望まし
くlすなわ板 メモリへの書込みを行う場・合L メ
モリへ書込むデータに先行して書込みアドレスが出力さ
れることにより、オペランドブレークを発生させるため
にメモリへの書き込みが終了するまで次命令の実行開始
を禁止するかどうかを、各メモリへの書き込みを行う毎
に判断でき、不要な命令の実行禁止状態を少なくするよ
うに動作す一実施例 第1図は本発明の一実施例におけるマイクロプロセッサ
の構成図を示すものであム 第1図において、 1はパ
イプラインの制御を行うバイブライン制御同区 2は命
令のフェッチを行う命令フェッチ回路 3は命令フェッ
チ回路2においてフェッチされた命令の解読を行う第1
段の命令デコード回wX&、4は第1段の命令デコード
回路3において解読された命令をさらに詳細に解読を行
う第2段の命令コード回路 5はデコード回路3、また
は4において命令をデコードした結果に基づきアクセス
するオペランドのアドレスを計算するオペランドアドレ
ス計算回路 6はデコード回路4での命令の解読結果に
基づきオペランドのフェッチあるいはレジスタ上のデー
タを処理する命令実行回路 7は命令実行回路6の実行
結果を図外のメモリに格納するオペランドライト回路1
01.103゜105、 107.109は前記各回路
での処理が終了し各回路が空いている事をパイプライン
制御回路1に通知するステージ状態信号 10′2..
104.10良 10&110はバイブライン制御回路
1が前記各回路に対して次命令の実行を停止させるため
のホールド信号80はマイクロプロセッサ外部よりプロ
セッサ制御回路1に対してオペランドライト回路6にお
いてメモリへのオペランドの書き込みが行なわれている
間命令実行回路6での新な命令の実行を停止させる命令
先行実行禁止要求信号線であム 第2図は上記マイクロ
プロセッサにおいて、 IFは命令フェッチステージを
、DEC1は第1段の命令デコードステージを、DEC
2は第2段の命令デコードステージを、OAはオペラン
ドアドレス計算ステージを、OF/EXはオペランドの
フェッチステージと命令実行ステージを、OWはオペラ
ンドのライトステージを、N−N+3は処理される各命
令をあられす。 IF、DEC1、DEC2,0ん0F
SEム OWの各ステージは第1図においてそれぞれ命
令フェッチ回路2、命令デコード回路3および4、オペ
ランドアドレス計算回路5、命令実行回路6、オペラン
ドライト回路7において行う処理に対応すム な抵 本
実施回路においてオペランドアドレス計算と第2段の命
令解読Ji OAとDEC2ステージにおいて並列に
実行が可能であり、オペランドのフェッチと命令の実行
とはOF/EXステージにおいて排他的に行なわれも
第2図に基づいてバイブライン制御回路を説明すも 先
ず、命令フェッチステージIFにおいて命令がフェッチ
されると、その命令は第1段の命令デコードステージD
EC1に送られデコードされも デコードステージDE
C1はデコード結果に基づき第2段の命令デコードステ
ージに処理結果を転送するとともに、 オペランドアド
レス計算回路5を制御す4 ′M2段のデコードステ
ージDEC2でc表 さらに命令の詳細な解読を行な
(\ その結果に基づき命令実行回路6を制御すム さ
らに 命令実行回路6は命令の実行結果をメモリへ格納
が必要であれば オペランドライト回路7を制御しメモ
リへの格納を行う。上記ステージが命令Nに対する処理
を終えて次ステージへ送出すると、すぐ次の命令N+1
に対す′る処理を開始すム こうして、各サイクルにお
いてステージ毎のおのおの異なる命令を処理すム 上記
説明1山 パイプライン処理の通常の動作に対するもの
であム ここで、命令先行実行禁止要求が行なわれた場
合に(友 通常とは異なる動作を行なt、% OF/
EXステージはOWステージにおいてメモリへの書き込
みが行われている間断な命令の実行を中断ずム 第3図
に基づいて祢弔先行実行禁止要求が行なわれた場合にお
けるバイブライン制御回路の動作を説明すも 第3図に
おいでI F、、、DECI、 DEC2,OA、
OF、 E瓜 OWおよびN〜N+3は第2図と同様に
各ステージおよび命令を表1ち まL COへ−C8
はマイクロプロセッサの実行サイクルを示している。命
令NがサイクルC4においてO冒ステージ(メモリライ
))における命令Nの処理を開始すると、命令先行実行
禁止要求信号線が有効となっておりOF/Eステージに
おける次命令の実行は、N命令のOvステージが完了す
るまでまたされも 従って、命令N+1がOF/EXス
ーテージにおいてその処理が開始されるのはサイクルC
6となるっ そのたべ マイクロプロセッサ外部よりメ
モリアクセスを監視1− 特定のデータへの書き込みが
行なわれた場合に 外部割り込み要求を行う事により、
命令Nのメモリへの書き込み結了練 命令N+1の実行
を開始する前に命令を中断することができ4 以上のよ
うに本実施例によれに バイブライン制御を行うマイク
ロプロセッサにおいて、ブロセッザ外部よりメモリへの
書き込みを確at−外部割り込み要求を行うことにより
、書き込みを行った命令の実行結了後に実行を中断でき
、プログラムの開発効率を飛躍的に高め聾 まテ、二
マイクロプロセッサ外部において命令先行実行を抑止で
きるた八 特定条件下での命令先行実行を禁止すること
により、メモリへの書き込みによるマイクロプロセッサ
の動作の低下を抑え 実際の動作に近い環境にお(′3
るプログラムの動作確認が可能となも 第4図は本発明
の第2の実施例におけるマイクロプロセッサの構成図を
示すものである。第4図において、 1はバイブライン
の制御を行うバイブライン制御回路 2は命令のフェッ
チを行う命令フェッチ回路 3は命令フェッチ回路2に
おいてフェッチされた命令の解読を行う第1段の命令デ
コード回14は第1段の命令デコード回路3において解
読された命令をさらに解読を行う第2段の命令デコード
回路、5はデコード回路3、または4において命令をデ
コード1.た結果に基づきアクセスするオペランドのア
ドレスを計算するオペランドアドレス計算回16はデコ
ード回路4での命令の解読結果に基づきオペランドのフ
ェッチあるいはレジスタ十のデ・−夕を処理する命令実
行回路 7は命令実行回路6の実行結果を図外のメモリ
に格納するオペランドライト回路 101.103.
105. 107.109は前記各回路での処理が終了
し各回路が空いている事をバイブライン制御回路1に通
知するステージ状態信号、 102. 104. 10
代 10亀 110はバイプラ・イン制御回路1が前記
各回路に対(7て次命令の実行を停止させるだめのホー
ルド信u 80はマイクロプロセッサ外部よりブロセ
ッザ制御回路1に対してオペランドライト回路6におい
てメモリへのオペランドの査き込みが行なわれている間
命令実行回路6での新な命令の実行を停止させる命令先
行実行禁止要求信号線−代 以」二は第1図と同様なも
のであ4 第1図と異なるの1よ 8がマイクロプロセ
ッサの外部バスの制御を行うバス制御回路81.84、
87が各ステージからバス制御回路8へのバスアクセ
ス要求信号、82.85. 88が各ステージに対して
バスアクセスの開始を通知するバスアクセス開始信号、
i 8氏89が各ステージに対してバスアクセスの実
行中であることを示すバス実行信号、41が第2の命令
デコード回路4において解読した命令がメモリへの書き
込みを行う場合に 先行的にライト要求を行うブリライ
ト要求信号 9がメモリへの書き込みを行う場合にデー
タを出力するバッファ、]0がマイクロプロセッサがバ
スをアクセスする場合に出力するアドレスを選択するセ
1ツク久 11がアトlノスを出力するためアドレス出
力バッファ、 121がデータバフ、、120がアドレ
スバス94がアト1ノスバス120に有効なアドレスが
出力されていることを示すアドレスストローブ信号、9
5がライトアドレスがバスのライトサイクルに先行して
ライトアドレスが出力されていることを示すライトアト
1ノスストローブ信号を設けた点である。
前記のように構成された第2の実施例のマイクロプロセ
ッサについて、第5図に基づいて以下その動作を説明す
る。第5図におけるDEC2,DEC7!−、OA、O
F、 EX、 OWオヨヒN−N+1 ハ第26オ
、):Ut33図と同じであ、% ADHはアトlメ
スバス120を示j7ていも 命令NがサイクルCIに
おけるDEC2ステージにおいて解読された時点でメモ
リへの書き込みの有無が判断され メモリへの書込が行
なわれる場合は ブリライト要求信号41が出力され
バス制御回路8はこの要求によりセレクタ10において
OAXステージり出力されるライト用アドレス60を選
択しアドレスバス120へ次サイクルC2より出力レラ
イトアドレスストローブ信号を有効にすム サイクルC
2において書き込みデータがEXステージにおいて生成
さ株 サイクルC3においてOWXステージ送られも
さらにサイクルC1において計算されたオペランドアド
レスをサイクルC2において先行して入力し保持しサイ
クルC3においてライトアドレスの開始と同時にアドレ
スバス120へ出力されアドレスバス120に有効なア
ドレスが出力されたことを示すためにアドレスストロー
ブ信号95を有効にすム マイクロプロセッサの外部に
おいて、ライトアドレスストローブ信号が有効になった
サイクルにおいてアドレスバス120上に出力されてい
るアドレスにより示されるデータへアクセスした命令の
実行後に次命令の実行を開始するかどうかを判断しく判
断手段は 実施例には示していなL% )、中断を行
う場合に命令先行実行禁止信号80を入力しOF/EX
ステージにおける次命令の実行を抑止すもバス制御回路
8(よ 命令先行実行禁止信号80が入力された場合に
!友 メモリへの書き込みを行う開信号90によりパイ
プライン制御回路1へ命令の先行実行が禁止させられた
ことを通知し パイプライン制御回路1は 信号90が
入力されているあいだホールド信号110により命令実
行ステージにおける処理の開始を禁止すム さらにメモ
リへの書き込みが終了するまでにマイクロプロセッサに
対して割り込み要求を行うことにより、特定のアドレス
に対して書き込みを行った命令の実行が完了した時点に
おいて命令の中断が可能となム また命令の中断を行わ
ない場合ζよ 命令先行実行禁止信号を有効としないこ
とにより、通常のパイプライン制御が行われ プログラ
ムの実行サイクルに影響を与えることなくプログラムの
開発が行えも以上のように本実施例によれば メモリへ
書き込みオペランドのアドレス計算が終了した時点でマ
イクロプロセッサのアドレスバスに先行的に書き込みア
ドレスを出力するバス制御回路を設けることにより、通
常のパイプライン動作と同程度の動作環境において特定
のデータへアクセスを行った命令の実行直後に命令を中
断可能となム メモリへの書込がプログラムのどの部分
において、またどのタイミングにおいて行なわれるのか
正確に確認すること(友 プログラムに内蔵する問題点
の確認を容易にすム 発明の詳細 な説明したように 本発明によれば プロセッサ外部に
おいてオペランドアクセスを監視しブレークポイントに
よる割り込みを生じさせるデータへのアクセスを行った
命令の実行直後に処理を中断させることが可能であム
また マイクロプロセッサ内部においてブレークポイン
ト設定用のレジスタを多数構成する必要もなく、マイク
ロプロセッサのサイズを大きくする事無く、有効なプロ
グラムの検証が行えも さらj:、、特定のメモリ上の
アドレスへのアクセスを行った場合にのみ後続命令の実
行を中断するた敢 パイプライン動作が検証を行う場合
とそうでない場合において同様の動作を可能とし 検証
効率を高めることができ、その実用的効果は犬きl、%
ッサについて、第5図に基づいて以下その動作を説明す
る。第5図におけるDEC2,DEC7!−、OA、O
F、 EX、 OWオヨヒN−N+1 ハ第26オ
、):Ut33図と同じであ、% ADHはアトlメ
スバス120を示j7ていも 命令NがサイクルCIに
おけるDEC2ステージにおいて解読された時点でメモ
リへの書き込みの有無が判断され メモリへの書込が行
なわれる場合は ブリライト要求信号41が出力され
バス制御回路8はこの要求によりセレクタ10において
OAXステージり出力されるライト用アドレス60を選
択しアドレスバス120へ次サイクルC2より出力レラ
イトアドレスストローブ信号を有効にすム サイクルC
2において書き込みデータがEXステージにおいて生成
さ株 サイクルC3においてOWXステージ送られも
さらにサイクルC1において計算されたオペランドアド
レスをサイクルC2において先行して入力し保持しサイ
クルC3においてライトアドレスの開始と同時にアドレ
スバス120へ出力されアドレスバス120に有効なア
ドレスが出力されたことを示すためにアドレスストロー
ブ信号95を有効にすム マイクロプロセッサの外部に
おいて、ライトアドレスストローブ信号が有効になった
サイクルにおいてアドレスバス120上に出力されてい
るアドレスにより示されるデータへアクセスした命令の
実行後に次命令の実行を開始するかどうかを判断しく判
断手段は 実施例には示していなL% )、中断を行
う場合に命令先行実行禁止信号80を入力しOF/EX
ステージにおける次命令の実行を抑止すもバス制御回路
8(よ 命令先行実行禁止信号80が入力された場合に
!友 メモリへの書き込みを行う開信号90によりパイ
プライン制御回路1へ命令の先行実行が禁止させられた
ことを通知し パイプライン制御回路1は 信号90が
入力されているあいだホールド信号110により命令実
行ステージにおける処理の開始を禁止すム さらにメモ
リへの書き込みが終了するまでにマイクロプロセッサに
対して割り込み要求を行うことにより、特定のアドレス
に対して書き込みを行った命令の実行が完了した時点に
おいて命令の中断が可能となム また命令の中断を行わ
ない場合ζよ 命令先行実行禁止信号を有効としないこ
とにより、通常のパイプライン制御が行われ プログラ
ムの実行サイクルに影響を与えることなくプログラムの
開発が行えも以上のように本実施例によれば メモリへ
書き込みオペランドのアドレス計算が終了した時点でマ
イクロプロセッサのアドレスバスに先行的に書き込みア
ドレスを出力するバス制御回路を設けることにより、通
常のパイプライン動作と同程度の動作環境において特定
のデータへアクセスを行った命令の実行直後に命令を中
断可能となム メモリへの書込がプログラムのどの部分
において、またどのタイミングにおいて行なわれるのか
正確に確認すること(友 プログラムに内蔵する問題点
の確認を容易にすム 発明の詳細 な説明したように 本発明によれば プロセッサ外部に
おいてオペランドアクセスを監視しブレークポイントに
よる割り込みを生じさせるデータへのアクセスを行った
命令の実行直後に処理を中断させることが可能であム
また マイクロプロセッサ内部においてブレークポイン
ト設定用のレジスタを多数構成する必要もなく、マイク
ロプロセッサのサイズを大きくする事無く、有効なプロ
グラムの検証が行えも さらj:、、特定のメモリ上の
アドレスへのアクセスを行った場合にのみ後続命令の実
行を中断するた敢 パイプライン動作が検証を行う場合
とそうでない場合において同様の動作を可能とし 検証
効率を高めることができ、その実用的効果は犬きl、%
第1図は本発明における一実施例のマイクロプロセッサ
の構成医 第2図は同実施例の基本パイプライン動作を
示すタイミング阻 第3図は同実施例におけるブレーク
ポイントを発生させる場合のパイプライン動作を示すタ
イミング図 第4図は本発明の第2の実施例のマイクロ
プロセッサの構成医 第5図は同実施例におけるブレー
クポイントを発生させる場合のバイブライン動作を示す
タイミング図であム ト・・・パイプライン制御回路 2・・・・命令フェッ
チ同区 3・・・・命令のデコ゛−ド回路 4・・・・
第2の命令のデコード同区 5・・・・オペランドアド
レス計算同区 6・・・・命令実行同区 7・・・・オ
ペランドライト回a 8・・・・バス制御回格第 1 図 第 図 F −−2集互−2μ 〜+f Nす2 〜f3 〆 OF/ex W N #tl #12 H43第 図 手 vAI7 o −−−−−−=−= −−−−−−−’−−第 図 4゜ EC1 COCI C2 ←L→4〜−−−− し DEC2,0A OF/EX W DR 手。 1 4 と 5 雀
の構成医 第2図は同実施例の基本パイプライン動作を
示すタイミング阻 第3図は同実施例におけるブレーク
ポイントを発生させる場合のパイプライン動作を示すタ
イミング図 第4図は本発明の第2の実施例のマイクロ
プロセッサの構成医 第5図は同実施例におけるブレー
クポイントを発生させる場合のバイブライン動作を示す
タイミング図であム ト・・・パイプライン制御回路 2・・・・命令フェッ
チ同区 3・・・・命令のデコ゛−ド回路 4・・・・
第2の命令のデコード同区 5・・・・オペランドアド
レス計算同区 6・・・・命令実行同区 7・・・・オ
ペランドライト回a 8・・・・バス制御回格第 1 図 第 図 F −−2集互−2μ 〜+f Nす2 〜f3 〆 OF/ex W N #tl #12 H43第 図 手 vAI7 o −−−−−−=−= −−−−−−−’−−第 図 4゜ EC1 COCI C2 ←L→4〜−−−− し DEC2,0A OF/EX W DR 手。 1 4 と 5 雀
Claims (2)
- (1)パイプライン制御を行うマイクロプロセッサにお
いて、アクセスするオペランドのメモリ上のアドレスを
計算するアドレス演算手段と、前記アドレス演算手段で
のアドレス計算修了後、命令を実行しメモリへ格納する
データを生成する命令実行手段と、前記アドレス演算手
段の出力するオペランドアドレスをアドレス計算終了後
入力し保持するアドレス保持手段と、前記命令実行手段
の出力するデデータを命令実行手段の処理終了後入力し
、前記アドレス保持手段の保持するアドレスにより指定
されるメモリ上の位置へデータの書込みを行うオペラン
ド格納手段と、前記オペランド格納手段のデータ書込み
の開始に先立って、プロセッサ外部より命令の実行開始
禁止要求を入力し、前記オペランド格納手段のデータ書
込み開始時点で、前記命令実行手段における新な命令の
実行を停止させる命令実行停止手段と、前記オペランド
格納手段によるメモリへの書込み終了後、前記命令実行
手段における新な命令の実行を再開させる命令実行再開
手段とを備えたことを特徴とするマイクロプロセッサ。 - (2)前記アドレス演算手段よりオペランドアドレスを
入力するとともに、実行中のバスサイクルに対応するア
ドレスを、バスサイクルの終了前にアドレスの変化を許
可するアドレス先行許可信号をプロセッサ外部より入力
し、前記アドレス先行許可信号が有効である場合に、フ
ェッチバスサイクル実行中に書込みを行うオペランドの
アドレスをプロセッサ外部に出力するとともに、メモリ
へ書込むデータに先行して書込みアドレスが出力されて
いることを示すアドレス有効信号を出力するバス制御手
段を備えたことを特徴とする請求項1記載のマイクロプ
ロセッサ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2100018A JPH03296832A (ja) | 1990-04-16 | 1990-04-16 | マイクロプロセッサ |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2100018A JPH03296832A (ja) | 1990-04-16 | 1990-04-16 | マイクロプロセッサ |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH03296832A true JPH03296832A (ja) | 1991-12-27 |
Family
ID=14262816
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2100018A Pending JPH03296832A (ja) | 1990-04-16 | 1990-04-16 | マイクロプロセッサ |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH03296832A (ja) |
-
1990
- 1990-04-16 JP JP2100018A patent/JPH03296832A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2004516546A (ja) | パイプライン方式のプロセッサにおける例外処理 | |
| JP3707581B2 (ja) | 自己整合スタック・ポインタを有するデータ処理システムおよびその方法 | |
| KR980010764A (ko) | 인터럽트 제어방식, 프로세서 및 계산기 시스템 | |
| US7752427B2 (en) | Stack underflow debug with sticky base | |
| JPH07219809A (ja) | データ処理装置およびデータ処理方法 | |
| JPH05204709A (ja) | プロセッサ | |
| JP2000330788A (ja) | コンピュータシステム | |
| JP2513417B2 (ja) | 情報処理装置 | |
| US6842812B1 (en) | Event handling | |
| JPH03296832A (ja) | マイクロプロセッサ | |
| JPH0384632A (ja) | データ処理装置 | |
| EP0573071A2 (en) | A microprocessor | |
| JP2504191B2 (ja) | マイクロプロセッサ | |
| JP2783285B2 (ja) | 情報処理装置 | |
| JP4732554B2 (ja) | マイクロコンピュータ | |
| JP2532560B2 (ja) | 高機能な例外処理を行うデ―タ処理装置 | |
| JPH03201135A (ja) | マイクロプロセッサ | |
| JPH10222395A (ja) | マイクロコンピュータ | |
| JPH02242337A (ja) | 命令プリフェッチ装置 | |
| JP4564025B2 (ja) | 情報処理装置における割り込み処理方法 | |
| JP3414579B2 (ja) | プログラマブルコントローラ | |
| JP2572821B2 (ja) | 命令再実行による演算処理方式 | |
| JPS6149695B2 (ja) | ||
| JPH03164945A (ja) | データ処理装置 | |
| JPH0424836A (ja) | マイクロプロセッサ |