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

データ処理装置

Info

Publication number
JPH0713807A
JPH0713807A JP5150188A JP15018893A JPH0713807A JP H0713807 A JPH0713807 A JP H0713807A JP 5150188 A JP5150188 A JP 5150188A JP 15018893 A JP15018893 A JP 15018893A JP H0713807 A JPH0713807 A JP H0713807A
Authority
JP
Japan
Prior art keywords
instruction
register
control signal
unit
stored
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
JP5150188A
Other languages
English (en)
Inventor
Yoshio Kasai
善夫 河西
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP5150188A priority Critical patent/JPH0713807A/ja
Publication of JPH0713807A publication Critical patent/JPH0713807A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【目的】 開発中のプログラムのデバッグを容易になら
しめる。 【構成】 ブレイク処理をなさしめる命令の命令コード
をIBP レジスタ141 に予め設定しておき、図示しないメ
モリから命令フェッチ部101 に取り込んだ命令の命令コ
ードとIBP レジスタ141 の命令コードとを比較器142 に
おいて比較し、比較した該命令コードが一致する場合に
限りブレイク処理をなす。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はデバッグ機能内蔵のデー
タ処理装置に関し、更に詳述すればデバッグ機能に改良
がなされたデータ処理装置に関する。
【0002】
【従来の技術】近年、データ処理装置が処理すべきデー
タ量の増加に伴う処理の遅滞に起因し高速で処理の可能
な装置が必要とされるようになった。図6は、このよう
なデータ処理の遅滞化を解決すべく高速で処理をなすよ
う設計されたパイプライン処理機能を備えたデータ処理
装置である。
【0003】図中1は図示しないメモリから命令をフェ
ッチする命令フェッチ部であり、命令フェッチ部1は命
令をデコードする命令デコード部2と接続され、命令デ
コード部2は命令を実行する命令実行部3と接続され、
命令実行部3はプログラムカウンタ31、PSW 32、汎用レ
ジスタ33、ALU34 、デバッグ制御レジスタ35及びブレイ
クポイントレジスタ36を有し、さらに命令実行部3はア
ドレスバス7及びデータバス6を介して命令フェッチ部
1と接続されている。
【0004】以下このデータ処理装置の動作の説明をす
る。命令実行部3が作動しアドレスバス7へ送出された
プログラムカウンタ31の値を用いて図示しないメモリは
該メモリに格納されている命令をデータバス6へ送出す
る。命令フェッチ部1は該命令をデータバス6から取り
込んで命令デコード部2へ送出する。命令デコード部2
においてデコードされた命令は制御信号に変換されて
後、命令実行部3へ出力され、命令実行部3は該制御信
号に基づき汎用レジスタ33、ALU 34、その他図示しない
演算に必要な装置を駆動して指示された演算を実行し、
実行状態等プログラムに係る情報をPSW 32に格納し、必
要があれば図示しないメモリに演算結果を格納する。
【0005】以上の動作を命令フェッチ部1、命令デコ
ード部2、命令実行部3の3部に分割されたデータ処理
装置はパイプライン化され、各部毎に異なる複数の命令
を実質上同時並行してパイプライン処理をなすので、パ
イプライン処理機能を有しないデータ処理装置に比し最
大3倍の処理速度が得られることになる。
【0006】一方、該データ処理装置を用いて開発され
たプログラムのデバッグ支援を行うためブレイク機能が
実用に供されており、プログラム内に設定されたブレイ
クポイントを検出するとプログラムの実行状態の監視、
実行中の所定場所におけるダンプの採取、デバッガの呼
び出し処理等の動作を開始する。図6において、ブレイ
クポイントを格納する実行命令ブレイクポイントレジス
タ36とデータ処理装置内蔵のデバッグ制御プログラムを
読み出してデバッグを実行するデバッグ制御レジスタ37
とがブレイク機能使用時において使用されるレジスタで
ある。
【0007】
【発明が解決しようとする課題】ところが、従来のブレ
イク機能は開発中のプログラムをデバッグする際に予め
所定の命令のアドレスを実行命令ブレイクポイントレジ
スタにブレイクポイントとして設定した後にブレイクポ
イントの実行を検出する方式であるので、このレジスタ
に記憶させたアドレスの命令が実行されたことの検出し
かできない。またプログラムの仕様が頻繁に変更される
プログラムの開発時においては、プログラムの仕様が変
更される都度、所要の命令のアドレスを新しいブレイク
ポイントとして実行命令ブレイクポイントレジスタに設
定する必要があるという問題点があった。
【0008】本発明はこのような問題点に鑑みてなされ
たものであり、指定した命令を実行した場合にブレイク
機能を使用することができ、また開発中のプログラムの
仕様が変更されても、所定の命令の変更されたアドレス
をブレイクポイントとしてブレイクポイントレジスタに
改めて設定することなく、その命令の実行を検出しうる
ようなブレイク機能を有するデータ処理装置の提供を目
的とする。
【0009】
【課題を解決するための手段】本発明に係る第1のデー
タ処理装置は、所定の命令の特定の識別情報を記憶する
識別情報記憶手段と、該識別情報記憶手段に記憶されて
いる識別情報と命令フェッチ部に入力された命令の識別
情報とを比較する比較手段とを具備することを特徴とす
る。
【0010】第2発明に係るデータ処理装置は、請求項
1のデータ処理装置の識別情報記憶手段及び比較手段を
連想記憶装置を用いて構成することを特徴とする。
【0011】第3発明に係るデータ処理装置は、所定の
命令コードを記憶する命令コード記憶手段と、該命令コ
ード記憶手段に記憶されている命令コードと命令フェッ
チ部へ入力された命令の命令コードとを比較する命令コ
ード比較手段とを具備することを特徴とする。
【0012】第4発明に係るデータ処理装置は、所定の
マイクロプログラムのエントリアドレスを記憶するマイ
クロエントリアドレス記憶手段と、該マイクロエントリ
アドレス記憶手段に記憶されているマイクロプログラム
のエントリアドレスと命令フェッチ部へ入力された命令
のマイクロエントリアドレスとを比較するマイクロエン
トリアドレス比較手段とを具備することを特徴とする。
【0013】第5発明に係るデータ処理装置は、所定の
命令の制御信号を記憶する制御信号記憶手段と、該制御
信号記憶手段に記憶されている制御信号と命令フェッチ
部へ入力された命令の制御信号とを比較する制御信号比
較手段とを具備することを特徴とする。
【0014】
【作用】第1,第2の発明にあっては、所定の命令の識
別情報を識別情報記憶手段に記憶しておき、命令フェッ
チ回路に取り込まれた命令の該識別情報が前記識別情報
記憶手段に記憶された識別情報と識別情報比較手段を用
いて比較し、これらが一致する場合にブレイク処理をな
す。
【0015】第3の発明にあっては、所定の命令コード
を命令コード記憶手段に記憶しておき、命令フェッチ回
路に取り込まれた命令の命令コードと命令コード記憶手
段に記憶された命令コードとを命令コード比較手段を用
いて比較し、これらが一致する場合にブレイク処理をな
す。
【0016】第4の発明にあっては、所定の命令のマイ
クロプログラムのエントリアドレスをマイクロエントリ
アドレス記憶手段に記憶しておき、命令フェッチ回路に
取り込まれた命令のマイクロプログラムのエントリアド
レスとマイクロエントリアドレス記憶手段に記憶された
マイクロエントリアドレスとをマイクロエントリアドレ
ス比較手段を用いて比較し、これらが一致する場合にブ
レイク処理をなす。
【0017】第5の発明にあっては、所定の命令の制御
信号を制御信号記憶手段に記憶しておき、命令フェッチ
回路に取り込まれた命令の制御信号と制御信号記憶手段
に記憶された制御信号とを制御信号比較手段を用いて比
較し、これらが一致する場合にブレイク処理をなす。
【0018】
【実施例】以下本発明を、その実施例を示す図面に基づ
き具体的に説明する。本発明のデータ処理装置は命令フ
ェッチ動作から命令デコード動作、命令実行動作と順に
実行して1つの命令の処理が終了し、該命令を命令フェ
ッチする命令フェッチ部、該命令をデコードする命令デ
コード部、該命令を実行する命令実行部において同時に
異なる命令を同時並行して実行すべくパイプライン化が
なされている。図1は本発明のデータ処理装置が扱う命
令フォーマットの概要図である。この命令は16ビットを
1ワードとする可変語長形式であり、後述する2種類の
命令型式のいずれかを用いて転送命令、比較命令、算術
演算命令、論理演算命令、シフト命令、ビット命令、ジ
ャンプ命令などが記述される。
【0019】図1において、201 は第1の命令型式であ
り、2ビットの命令コード202,205及び4ビットのデス
ティネーション指定部203 及び2ビットのソースサイズ
指定部204 及び6ビットのソース指定部206 を有する。
第2の命令型式は207,212 のいずれかを用いて記述さ
れ、第2の命令型式207 は命令コード208 及びソースサ
イズ指定部209 及びソース指定部210 及びソースオペラ
ンド部211 を有し、第2の命令型式212 は命令コード21
3 及びデスティネーションサイズ指定部214 及びデステ
ィネーション指定部203 及びデスティネーションオペラ
ンド部216 を有する。ソースオペランド部211 、デステ
ィネーションオペランド部216 は命令によっては存在し
ない場合もある。
【0020】一例として汎用レジスタ1番から2番へデ
ータを転送する転送命令は2進数では0000101001010001
で表現される第1の命令型式であり、該2進数と前記第
1の命令型式201 とを対照すると命令コード202 は00、
デスティネーション指定部203 は0010、ソースサイズ指
定部204 は10、命令コードは01、ソース指定部206 は01
0001にそれぞれ対応する。
【0021】図2は本発明のデータ処理装置の第1の実
施例である。101 は命令フェッチ部であり、命令フェッ
チ部101 は命令フェッチアドレス転送バス (以下CAバス
という)106及びデータバス (以下DDバスという)105に接
続され、CAバス106 とデータ処理用内部アドレスバス
(以下AAバスという)104とは命令フェッチアドレス一時
格納用レジスタ (以下CAレジスタという)110と接続され
ている。前記命令フェッチ部101 は信号線125 を介して
命令デコード部102 と接続され、該命令デコード部102
が有する命令一時格納用のラッチ回路130 は命令コード
内演算データ一時格納レジスタ (以下DISPレジスタとい
う)112及び比較器142 と接続されている。
【0022】比較器142 はブレイク命令コード一時格納
レジスタ (以下IBP レジスタという)141及び命令デコー
ド部102 と接続され、該命令デコード部102 は信号線12
6 を介して実行制御部103 と接続されている。該実行制
御部103 はマイクロプログラムエントリアドレス一時格
納レジスタ( 以下μEAレジスタという)132及び制御信号
一時格納レジスタ (以下CRレジスタという)133と接続さ
れ、該μEAレジスタ132 はマイクロプログラム記憶ROM
(以下μROM という)131と接続されている。
【0023】第1ソースデータ転送データバス (以下S1
バスという)107は命令列先頭アドレス一時格納レジスタ
(以下EBR レジスタという)111及びDISPレジスタ 112及
び命令実行時アドレス一時格納レジスタ (以下AAレジス
タという)113及びIBP レジスタ141 及びプログラムカウ
ンタ (以下PCという)114及びスタックポインタ (以下SP
という)115 及び算術論理演算装置 (以下ALU という)1
16及び作業用レジスタ群 (以下Wxレジスタという) 117
及び汎用レジスタ1番(以下第1レジスタという)118a
及び汎用レジスタ2番(以下第2レジスタという)118b
及びデバッグ制御レジスタ (以下DBC レジスタという)1
19及びオペランドデータ格納レジスタ (以下DDレジスタ
という)120及びプログラム実行状態監視装置 (以下PSW
という)121 と接続され、さらにSP 115及びALU 116 及
びWxレジスタ117 及び第1のレジスタ118a及び第2のレ
ジスタ118b及びDBC レジスタ 119及びDDレジスタ 120及
びPSW 121 は第2ソースデータ転送データバス (以下S2
バスという)108及び演算結果転送バス (以下DOバスとい
う) 109 と接続され、該DDバス 120はデータバス (以下
DDバスという)105と接続されている。
【0024】なお、EBR レジスタ 111はCAバス106 と接
続され、AAレジスタ113 はAAバス104 と接続され、AAバ
ス104 は外部アドレスバス (以下ADバスという)151と接
続され、DDバス105 は外部データバス (以下Dバスとい
う)150と接続されている。
【0025】次に図2の装置の動作の説明を転送命令を
一例としてとりあげて行う。予め前記命令コード記憶手
段であるIBP レジスタ141 には第1レジスタ118aから第
2レジスタ118bへデータを転送する転送命令の命令コー
ドが設定されている。実行制御部103 は強制的にジャン
プ命令又はリセット命令を実行してジャンプ先の命令列
もしくはリセット時の命令列の先頭アドレスをEBR レジ
スタ111 に格納し、該EBR レジスタ111 の値を実行制御
部103 はCAバス106 からCAレジスタ110 へ転送し、該CA
レジスタ110 に格納されたアドレスはAAバス104 からAD
バス151 を介して図示しない命令列を格納するメモリへ
転送され、該メモリから読み出された命令コードを命令
フェッチ部101 はDバス150 、DDバス105 を介して取り
込む。
【0026】命令フェッチ部101 に取り込まれた命令コ
ードは信号線125 を介し命令デコード部のラッチ回路13
0 へ格納され、該ラッチ回路130 に格納された命令コー
ドは前記命令コード比較手段である比較器142 へ送出さ
れ、必要があればDISPレジスタ112 へも送出される。比
較器142 はIBP レジスタ141 及びラッチ回路130 とに格
納されている命令コードを比較し、一致/不一致の比較
情報を命令デコード部102 へ送出する。不一致の場合は
ブレイク処理が実行されない。この場合はラッチ回路13
0 に格納されている命令コードはデコードされて制御信
号に変換され、該制御信号は前記比較器142 の一致情報
とともに信号線126 を介して実行制御部103 へ送出され
る。
【0027】実行制御部103 は制御信号126 を細分し、
マイクロプログラムのエントリアドレス (以下マイクロ
エントリアドレスという) はμEAレジスタ132 に格納
し、該マイクロエントリアドレス以外の制御信号はCRレ
ジスタ133 へ格納する。μEAレジスタ132 に格納された
エントリアドレスを用いてμROM 131 は所定のマイクロ
プログラムを実行して転送命令の動作制御信号 (以下制
御信号という)135を生成し、CRレジスタ133 はソースレ
ジスタとデスティネーションレジスタとの指定信号 (以
下制御信号という)134を格納している。制御信号134 と
制御信号135 とは汎用レジスタ1番(以下第1のレジス
タという)118aの値をS1バス107 を介してALU 116 へ送
出し、ALU 116 は0として設定されている値と第1のレ
ジスタとの値の加算を指示し、加算結果はD0バス109 を
介して汎用レジスタ2番(以下第2のレジスタという)
118bに格納される。
【0028】比較器142 の比較結果が一致である場合は
それを表す情報IBPhit信号144 が命令デコード部102 に
送出される。ラッチ回路130 の命令コードがデコードさ
れてIBPhit信号144 を含む制御信号126 となり、制御信
号126 は実行制御部103 へ送出される。実行制御部103
は制御信号126 の情報を識別し、マイクロエントリアド
レスはμEAレジスタ132 に格納され、該マイクロエント
リアドレス以外の制御信号はCRレジスタ133 に格納され
る。
【0029】μEAレジスタ132 に格納されたマイクロエ
ントリアドレスを用いて実行制御部103 はμROM 131 内
蔵のマイクロプログラムを実行してデータ処理装置内の
レジスタなどの動作を制御する信号135 を生成する。CR
レジスタ133 はソースレジスタとデスティネーションレ
ジスタとの指定信号134 を送出する。信号134 、135は
第1のレジスタ118aの値をS1バス107 を介してALU 116
へ送出し、ALU 116 は0として設定されている値と第1
のレジスタ118aとの値の加算を指示し、加算結果はD0バ
ス109 を介して第2のレジスタ118bに格納される。
【0030】このようにして転送命令の処理が終了する
と、IBPhit信号144 が入力されている実行制御部103 は
命令ブレイク機能の処理を行う。即ちまずベクタ番号を
計算し、このベクタ番号からベクタテーブルエントリが
あるアドレスを生成する。そしてベクタテーブルエント
リからブレイク処理の命令系列 (以下ハンドラという)
の先頭アドレスとハンドラ用PSW を読込む。PSW レジス
タ121 のブレイク検出前の内容及び次の命令のPC値をSP
115に退避し、またPSW を更新する。前記先頭アドレス
はEBR レジスタ111 にセットされ、ハンドラにジャンプ
する。ハンドラで必要な処理を行ったあとハンドラが有
するリターン命令を実行し、SP 115へ今まで退避してい
たPC値を読み出してPC 114へ格納しPC 114を用いてブレ
イク処理を行う前のプログラムへ戻り、該プログラムの
処理を再開始する。
【0031】上述の実施例ではIBP レジスタ141 は命令
コード全てを記憶する16ビット長としたがこれに限らず
第1の命令型式201 において命令コード202 、205 のみ
を格納する4ビット長としても良く第2の命令型式207
又は第2の命令型式212 において命令コード208 又は命
令コード213 を格納する6ビット長としても良い。
【0032】図3は本発明のデータ処理装置の第2の実
施例を示すブロック図である。第1の実施例においては
ブレイク検出のためにIBP レジスタ141 と比較器142と
が使用されているが、第2の実施例においてはIBP レジ
スタ151 と比較器152とが使用されている。即ち前記マ
イクロエントリアドレス記憶手段であるIBP レジスタ15
1 は前記マイクロエントリアドレス比較手段である比較
器152 と接続されている。比較器152 はIBPhit信号 154
を実行制御部103 へ入力する。実行制御部103 が有する
μEAレジスタ132 は信号線153 を介して比較器152 とそ
れぞれ接続されている。その他第1の実施例と第2の実
施例とが同様の部分については同一の参照符号を付して
説明を省略する。
【0033】第2の実施例は命令フェッチ動作から命令
デコード動作まで第1の実施例と同様であるので説明を
省略し、命令実行の動作を第1の実施例と同じ転送命令
が実行される場合を例にとり説明する。命令デコード部
102 が有するラッチ回路130に格納された命令コードは
制御信号126 に変換され、変換された制御信号126 は実
行制御部103 へ送出されてマイクロエントリアドレス
と、それを除く制御信号(以下第1の制御信号という)
とに識別され、マイクロエントリアドレスは実行制御部
103 のμEAレジスタ132 に格納され、第1の制御信号は
実行制御部103 のCRレジスタ133 に格納される。該μEA
レジスタ132 はマイクロエントリアドレスをμROM 131
へ送出し、μROM 131 は該マイクロエントリアドレスで
指示されるマイクロプログラムを実行して第2の制御信
号135 を生成する。
【0034】第2の制御信号135 及びCRレジスタ133 か
ら送出された第1の制御信号134 は、第1のレジスタ11
8aの値をS1バス107 を介してALU 116 へ送出せしめる。
ALU116 は予め設定されている0の値と第1のレジスタ1
18aとの値を加算し、加算結果はD0バス109 を介して第
2のレジスタ118bに格納される。加算動作と並行して比
較器152 はブレイク処理をする場合に転送命令のマイク
ロエントリアドレスとして16進数の000 が予め設定され
ているIBP レジスタ151 の値とμEAレジスタ132 に格納
される転送命令のマイクロエントリアドレスの値 (16進
数で000)とを比較し、マイクロエントリアドレスが一致
したとの情報はIBPhit信号 154として実行制御部103 へ
通知される。
【0035】比較器152 より該一致したとの情報を得て
実行制御部103 は転送命令の実行後に遅滞なくブレイク
処理を実行する。ブレイク処理を開始した後の動作は第
1の実施例と同様であり、説明を省略する。μEAレジス
タ132 に格納されているマイクロエントリアドレスとIB
P レジスタ151 に予め設定されているマイクロエントリ
アドレスとが同一でない場合には比較器152 が比較した
マイクロエントリアドレスは一致しないので、比較器15
2 は一致しない旨の情報を実行制御部103 へ送出し実行
制御部103 は該情報を得てブレイク処理をしない。この
後の動作は第1の実施例と同様であり、説明を省略す
る。
【0036】図4は本発明のデータ処理装置の第3の実
施例を示すブロック図である。第3の実施例ではμEAア
ドレス132 及びCRレジスタ166 の内容が比較器162 へ与
えられ、ここでIBP レジスタ161 の内容と比較される。
即ち前記制御信号記憶手段であるIBP レジスタ161 は前
記制御信号比較手段である比較器162 に接続され、比較
器162 はIBPhit信号 164を実行制御部103 へ与える。実
行制御部103 が有するμEAレジスタ132 、CRレジスタ16
6 は信号167 を介して比較器162 と接続されている。そ
の他第2の実施例と第3の実施例における同様の部分に
ついては同一の参照符号を付し、説明を省略する。
【0037】第3の実施例の装置は命令フェッチ動作か
ら命令デコード動作まで第1の実施例と同様であるので
説明を省略し、命令実行の動作を第1の実施例と同じ転
送命令が実行される場合を例にとり説明する。第3の実
施例において、動作の特徴とするところはCRレジスタ16
6 に格納されている制御信号167 はレジスタの動作に限
らずALU 116 の動作も制御し、ALU 116 に対しては転送
命令実行時においてソース指定部の値に0を加算せしめ
る指示を出し、加算又は減算命令の実行時においてソー
ス指定部の値とデスティネーション指定部の値との加算
又は減算をせしめる指示を出すことである。
【0038】第1の実施例又は第2の実施例においては
μROM 131 に格納されているマイクロプログラムを実行
して得た第2の制御信号135 がALU 116 に対して命令に
より異なる指示を出すので異なる命令に対してそれぞれ
異なるマイクロプログラムが必要であり、マイクロプロ
グラムのステップ数が増加した。第3の実施例において
制御信号168 はALU 116 を除く装置内の各部に対して異
なる命令に対して同一の動作を指示し、加算、減算、転
送等の異なる命令に係るマイクロプログラムは共有化さ
れ、共有化されたマイクロプログラムによりエントリア
ドレスの一元化が可能になる。
【0039】次に第3の実施例の命令実行時の動作を具
体的に説明する。ブレイク処理が実行されない場合にお
いて、命令デコード部102 が有するラッチ回路130 に格
納された命令コードは制御信号126 に変換され、変換さ
れた制御信号は実行制御部103 へ送出されてマイクロエ
ントリアドレスと該制御信号からマイクロエントリアド
レスを除く制御信号 (以下第3の制御信号という)とに
識別されマイクロエントリアドレスは実行制御部103 の
μEAレジスタ132 に格納され、第3の制御信号は実行制
御部103 のCRレジスタ133 に格納された後でμEAレジス
タ132 の値及びCRレジスタ133 の値 (以下第4の制御信
号という)は比較器162 に入力される。
【0040】一方、IBP レジスタ161 には所定の命令の
マイクロエントリアドレス及び制御信号 (以下第5の制
御信号という) が予め設定されており、比較器162 は比
較器に入力される第4の制御信号と第4の制御信号と同
一でない第5の制御信号とを比較して比較した制御信号
等が一致しない旨の情報を実行制御部103 に通知する。
該情報を得た実行制御部103 は所定の命令を実行後にブ
レイク処理を実行しない。以後の動作は第1の実施例と
同様であるので説明を省略する。
【0041】次にブレイク処理が実行される場合におい
て、加算又は減算又は転送命令のマイクロエントリアド
レス (16進数で00である) 及び制御信号 (16進数で03で
ある) がIBP レジスタ161 に予め16進数で0003として設
定されている。命令デコード部102 はラッチ回路130 に
格納されている命令をデコードして制御信号165 に変換
し、変換された制御信号165 はマイクロエントリアドレ
スとマイクロエントリアドレスを除く制御信号 (以下第
6の制御信号という) とに細分されてマイクロエントリ
アドレスはμEAレジスタ132 に格納され、第6の制御信
号はCRレジスタ166 に格納され、μEAレジスタ132 の値
及びCRレジスタ166 の値 (以下第7の制御信号という)
は比較器162 に入力される。ここでμEAレジスタの値は
16進数で00、CRレジスタの値は16進数で03であるとす
る。
【0042】比較器162 は第7の制御信号とIBP レジス
タ162 に設定された値とを比較し、共に16進数0003で一
致するとの情報をIBPhit信号 164として実行制御部162
へ送出する。実行制御部162 は該情報を得て転送命令実
行後に遅滞なくブレイク処理を実行する。ブレイク処理
開始後の動作は第1の実施例と同様であるので説明を省
略する。第3の実施例において比較器162 はマイクロエ
ントリアドレス及びマイクロエントリアドレスを除く制
御信号を比較の対象としたが、第6の制御信号だけを比
較の対象としてもよい。
【0043】図5は本発明のデータ処理装置の第4の実
施例を示すブロック図である。第1の実施例において1
組のIBP レジスタ141 と比較器142 とが使用されている
が、第4の実施例においては複数組のIBP レジスタ171
と比較器172 とが使用されており更に詳述すれば、第4
の実施例のブロック図においてS1バス107 に共通に接続
される複数の前記命令コード記憶手段であるIBP レジス
タ171,171 …のそれぞれは前記命令コード比較手段であ
る比較器172 に接続され、複数の比較器172,172 …は命
令デコード部102 に共通に接続され、命令デコード部10
2 が有するラッチ回路130 は比較器172 に接続されてい
る。その他第1の実施例と同様の部分については同一の
参照符号を付して説明を省略する。
【0044】第4の実施例の装置は命令フェッチ動作は
第1の実施例と同様であるので説明を省略し、命令デコ
ード動作及び命令実行動作を第1の実施例と同じ転送命
令を例にとり説明する。
【0045】複数のIBP レジスタ171,171 …のそれぞれ
に異なる命令の命令コードを設定しておく。命令デコー
ド部102 はラッチ回路130 に格納された命令コードをデ
コードして制御信号に変換する動作と並行して、複数の
比較器172,172 …のそれぞれへラッチ回路130 の命令コ
ードを送出し、比較器172 はIBP レジスタ171 に設定さ
れている命令コードとラッチ回路130 に格納されている
命令コードとを比較して命令デコード部102 へ一致又は
不一致の情報を通知する。命令デコード部102は複数の
比較器172 から得た一致又は不一致の情報とラッチ回路
130 に格納した命令を制御信号に変換した情報とを合成
して制御信号126 とし、実行制御部103へ該制御信号126
を送出する。実行制御部103 は前記制御信号126 をマ
イクロエントリアドレスとマイクロエントリアドレスを
除く制御信号 (以下第8の制御信号という) とに識別
し、マイクロエントリアドレスは実行制御部103 のμEA
レジスタ132 に格納され、第8の制御信号は実行制御部
103 のCRレジスタ133 に格納され、μROM 131 はμEAレ
ジスタ132 に格納されたマイクロエントリアドレスを用
いてマイクロプログラムを実行して第9の制御信号135
を生成する。
【0046】第8の制御信号と第9の制御信号とは、第
1のレジスタ118aの値をS1バス107を介してALU 116 に
送出せしめ、ALU 116 は送出された第1のレジスタ118a
の値と予め設定されている0とを加算し、加算結果をD0
バス109 を介して第2のレジスタ118bへ転送する。前記
転送命令が終了すると、実行制御部103 は第8の制御信
号の中に比較器172 が命令デコード部102 へ通知した命
令デコードの一致情報があるかないかを識別し、第8の
制御信号の中に一致情報、つまりIBPhit信号174 がある
場合、ブレイク処理を実行し、一致情報がない場合、ブ
レイク処理を実行しない。以後の装置の動作は第1の実
施例と同じであり、説明を省略する。
【0047】第4の実施例においてIBP レジスタ171 は
16ビット長としたが、第1の実施例と同じく第1の命令
型式201 においては4ビット長のレジスタとして良い。
第2の命令型式207 又は第2の命令型式212 においては
6ビット長のレジスタとしてよい。さらに第2の実施例
のIBP レジスタ151 及び比較器152 、第3の実施例にお
けるIBP レジスタ161 及び比較器162 は第4の実施例と
同じく複数組を有する構成としても良い。さらに第1の
実施例から第4の実施例においてIBP レジスタと比較器
との代用として所定のデータが入力された場合所定の入
力データに対応するデータが出力される連想記憶メモリ
を使用しても良い。
【0048】
【発明の効果】以上の如く本発明によれば、指定した命
令を実行した場合にブレイク機能を起動することができ
る。またIBP レジスタに予め設定している識別情報は開
発中のプログラムの仕様変更に係らず同一の値として使
用し得るので、開発中のプログラムの仕様変更の都度ブ
レイクポイントレジスタの設定値を変更する手間を省く
ことが可能であり、開発中のプログラムのデバッグを容
易になし得る。
【0049】さらに複数組のIBP レジスタ及び比較器を
用いるものにおいてはIBP レジスタにブレイク処理をな
さしめる複数の識別情報を記憶させておくことで複数の
該識別情報に対応する命令の中のいずれかの命令の実行
終了に即応して遅滞なくブレイク処理をなすので複数の
命令の実行を同時に監視できると共にデバッグの活用範
囲が広がり、プログラムのデバックが容易になる。
【0050】またIBP レジスタ及び比較器と同等の機能
を有する連想記憶メモリを使用することにより、使用す
る部品点数の削減ができ、データ処理装置全体としての
製造歩留りが良くなる。更に識別情報として命令コード
を使用する場合は命令と命令コードが1対1に対応する
該命令コードの使用によりブレイク処理をなす命令の個
別指定を可能にならしめる。
【0051】また識別情報としてマイクロエントリアド
レスを使用する場合は異種のマイクロエントリアドレス
の使用により複数の異種の命令が同一のマイクロエント
リアドレスを有するのでマイクロプログラムのステップ
数の縮小を可能にならしめる。更にまた識別情報として
制御信号を使用する場合は異種の命令であっても同一又
は類似の動作をなす命令について共通の制御信号をIBP
レジスタに与えることによってブレイクポイントの指定
を可能にならしめる。
【図面の簡単な説明】
【図1】この発明のデータ処理装置の命令フォーマット
の例を示すブロック図である。
【図2】この発明の第1の実施例のデータ処理装置の構
成を示すブロック図である。
【図3】この発明の第2の実施例のデータ処理装置の構
成を示すブロック図である。
【図4】この発明の第3の実施例のデータ処理装置の構
成を示すブロック図である。
【図5】この発明の第4の実施例のデータ処理装置の構
成を示すブロック図である。
【図6】従来のデータ処理装置の構成を示すブロック図
である。
【符号の説明】
101 命令フェッチ部 102 命令デコード部 103 実行制御部 110 CAレジスタ 112 DISPレジスタ 113 AAレジスタ 114 プログラムカウンタ(PC) 115 スタックポインタ(SP) 116 ALU 117 Wx 118a 汎用レジスタ1番 118b 汎用レジスタ2番 119 DBC レジスタ 120 DDレジスタ 121 PSW 130 ラッチ回路 131 μROM 132 μEAレジスタ 141 IBP レジスタ 142 比較器 143 命令コード 151 IBP レジスタ 152 比較器 153 マイクロエントリアドレス 161 IBP レジスタ 162 比較器 169 μROM 171 IBP レジスタ 172 比較器
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成5年11月9日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0019
【補正方法】変更
【補正内容】
【0019】図1において、201 は第1の命令型式であ
り、2ビットの命令コード202,205及び4ビットのデス
ティネーション指定部203 及び2ビットのソースサイズ
指定部204 及び6ビットのソース指定部206 を有する。
第2の命令型式は207,212 を用いて記述され、第2の命
令型式207 は命令コード208 及びソースサイズ指定部20
9 及びソース指定部210 及びソースオペランド部211 を
有し、第2の命令型式212 は命令コード213 及びデステ
ィネーションサイズ指定部214 及びデスティネーション
指定部203 及びデスティネーションオペランド部216 を
有する。ソースオペランド部211 、デスティネーション
オペランド部216 は命令によっては存在しない場合もあ
る。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0021
【補正方法】変更
【補正内容】
【0021】図2は本発明のデータ処理装置の第1の実
施例である。101 は命令フェッチ部であり、命令フェッ
チ部101 は命令フェッチアドレス転送バス (以下CAバス
という)106及びデータ処理装置内部データバス (以下DD
バスという)105に接続され、CAバス106 とデータ処理
内部アドレスバス (以下AAバスという)104とは命令フ
ェッチアドレス一時格納用レジスタ (以下CAレジスタと
いう)110と接続されている。前記命令フェッチ部101 は
信号線125 を介して命令デコード部102 と接続され、該
命令デコード部102 が有する命令一時格納用のラッチ回
路130 は命令コード内演算データ一時格納レジスタ (以
下DISPレジスタという)112及び比較器142 と接続されて
いる。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0023
【補正方法】変更
【補正内容】
【0023】第1ソースデータ転送データバス (以下S1
バスという)107は命令列先頭アドレス一時格納レジスタ
(以下EBR レジスタという)111及びDISPレジスタ 112及
び命令実行時アドレス一時格納レジスタ (以下AAレジス
タという)113及びIBP レジスタ141 及びプログラムカウ
ンタ (以下PCという)114及びスタックポインタ (以下SP
という)115 及び算術論理演算装置 (以下ALU という)1
16及び作業用レジスタ群 (以下Wxレジスタという) 117
及び汎用レジスタ1番(以下第1レジスタという)118a
及び汎用レジスタ2番(以下第2レジスタという)118b
及びデバッグ制御レジスタ (以下DBC レジスタという)1
19及びオペランドデータ格納レジスタ (以下DDレジスタ
という)120及びプロセッサ状態語 (以下PSW という) 12
1 と接続され、さらにSP 115及びALU 116 及びWxレジス
タ117 及び第1のレジスタ118a及び第2のレジスタ118b
及びDBC レジスタ 119及びDDレジスタ 120及びPSW 121
は第2ソースデータ転送データバス (以下S2バスとい
う)108及び演算結果転送バス(以下DOバスという) 109
と接続され、該DDレジスタ 120はDDバス105 と接続され
ている。
【手続補正4】
【補正対象書類名】明細書
【補正対象項目名】0025
【補正方法】変更
【補正内容】
【0025】次に図2の装置の動作の説明を転送命令を
一例としてとりあげて行う。予め前記命令コード記憶手
段であるIBP レジスタ141 には第1レジスタ118aから第
2レジスタ118bへデータを転送する転送命令の命令コー
ドが設定されている。実行制御部103 は強制的にジャン
プ命令又はリセットを実行してジャンプ先の命令列もし
くはリセット時の命令列の先頭アドレスをEBR レジスタ
111 に格納し、該EBR レジスタ111 の値を実行制御部10
3 はCAバス106 からCAレジスタ110 へ転送し、該CAレジ
スタ110 に格納されたアドレスはAAバス104 からADバス
151 を介して図示しない命令列を格納するメモリへ転送
され、該メモリから読み出された命令コードを命令フェ
ッチ部101 はDバス150 、DDバス105 を介して取り込
む。
【手続補正5】
【補正対象書類名】明細書
【補正対象項目名】0027
【補正方法】変更
【補正内容】
【0027】実行制御部103 は制御信号126 を細分し、
マイクロプログラムのエントリアドレス (以下マイクロ
エントリアドレスという) はμEAレジスタ132 に格納
し、該マイクロエントリアドレス以外の制御信号はCRレ
ジスタ133 へ格納する。μEAレジスタ132 に格納された
エントリアドレスを用いてμROM 131 は所定のマイクロ
プログラムを読み出して転送命令の動作制御信号 (以下
制御信号という)135を生成し、CRレジスタ133 はソース
レジスタとデスティネーションレジスタとの指定信号
(以下制御信号という)134を格納している。制御信号134
と制御信号135 は第1のレジスタ118aの値をS1バス107
を介してALU 116 へ送出し、ALU 116 は0として設定
されている値と第1のレジスタとの値の加算を指示し、
加算結果はD0バス109 を介して第2のレジスタ118bに格
納される。
【手続補正6】
【補正対象書類名】明細書
【補正対象項目名】0029
【補正方法】変更
【補正内容】
【0029】μEAレジスタ132 に格納されたマイクロエ
ントリアドレスを用いて実行制御部103 はμROM 131 内
蔵のマイクロプログラムを読み出してデータ処理装置内
のレジスタなどの動作を制御する信号135 を生成する。
CRレジスタ133 はソースレジスタとデスティネーション
レジスタとの指定信号134 を送出する。信号134 、135
は第1のレジスタ118aの値をS1バス107 を介してALU 11
6 へ送出し、ALU 116は0として設定されている値と第
1のレジスタ118aとの値の加算を指示し、加算結果はD0
バス109 を介して第2のレジスタ118bに格納される。
【手続補正7】
【補正対象書類名】明細書
【補正対象項目名】0030
【補正方法】変更
【補正内容】
【0030】このようにして転送命令の処理が終了する
と、IBPhit信号144 が入力されている実行制御部103 は
命令ブレイク機能の処理を行う。即ちまずベクタ番号を
計算し、このベクタ番号からベクタテーブルエントリが
あるアドレスを生成する。そしてベクタテーブルエント
リからブレイク処理の命令系列 (以下ハンドラという)
の先頭アドレスとハンドラ用PSW を読込む。PSW レジス
タ121 のブレイク検出前の内容及び次の命令のPC値を
タックに退避し、またPSW を更新する。前記先頭アドレ
スはEBR レジスタ111 にセットされ、ハンドラにジャン
プする。ハンドラで必要な処理を行ったあとハンドラが
有するリターン命令を実行し、スタックへ今まで退避し
ていたPC値及びPSW の値を読み出してPC 114およびPSW1
21へ格納しPC 114を用いてブレイク処理を行う前のプロ
グラムへ戻り、該プログラムの処理を再開始する。
【手続補正8】
【補正対象書類名】明細書
【補正対象項目名】0033
【補正方法】変更
【補正内容】
【0033】第2の実施例は命令フェッチ動作から命令
デコード動作まで第1の実施例と同様であるので説明を
省略し、命令実行の動作を第1の実施例と同じ転送命令
が実行される場合を例にとり説明する。命令デコード部
102 が有するラッチ回路130に格納された命令コードは
制御信号126 に変換され、変換された制御信号126 は実
行制御部103 へ送出されてマイクロエントリアドレス
と、それを除く制御信号(以下第1の制御信号という)
とに識別され、マイクロエントリアドレスは実行制御部
103 のμEAレジスタ132 に格納され、第1の制御信号は
実行制御部103 のCRレジスタ133 に格納される。該μEA
レジスタ132 はマイクロエントリアドレスをμROM 131
へ送出し、μROM 131 は該マイクロエントリアドレスで
指示されるマイクロプログラムを読み出して第2の制御
信号135 を生成する。
【手続補正9】
【補正対象書類名】明細書
【補正対象項目名】0038
【補正方法】変更
【補正内容】
【0038】第1の実施例又は第2の実施例においては
μROM 131 に格納されているマイクロプログラムを読み
出して得た第2の制御信号135 がALU 116 に対して命令
により異なる指示を出すので異なる命令に対してそれぞ
れ異なるマイクロプログラムが必要であり、マイクロプ
ログラムのステップ数が増加した。第3の実施例におい
て制御信号168 はALU 116 を除く装置内の各部に対して
異なる命令に対して同一の動作を指示し、加算、減算、
転送等の異なる命令に係るマイクロプログラムは共有化
され、共有化されたマイクロプログラムによりエントリ
アドレスの一元化が可能になる。
【手続補正10】
【補正対象書類名】明細書
【補正対象項目名】0042
【補正方法】変更
【補正内容】
【0042】比較器162 は第7の制御信号とIBP レジス
タ162 に設定された値とを比較し、共に16進数0003で一
致するとの情報をIBPhit信号 164として実行制御部103
へ送出する。実行制御部103 は該情報を得て転送命令実
行後に遅滞なくブレイク処理を実行する。ブレイク処理
開始後の動作は第1の実施例と同様であるので説明を省
略する。第3の実施例において比較器162 はマイクロエ
ントリアドレス及びマイクロエントリアドレスを除く制
御信号を比較の対象としたが、第6の制御信号だけを比
較の対象としてもよい。
【手続補正11】
【補正対象書類名】明細書
【補正対象項目名】0045
【補正方法】変更
【補正内容】
【0045】複数のIBP レジスタ171,171 …のそれぞれ
に異なる命令の命令コードを設定しておく。命令デコー
ド部102 はラッチ回路130 に格納された命令コードをデ
コードして制御信号に変換する動作と並行して、複数の
比較器172,172 …のそれぞれへラッチ回路130 の命令コ
ードを送出し、比較器172 はIBP レジスタ171 に設定さ
れている命令コードとラッチ回路130 に格納されている
命令コードとを比較して命令デコード部102 へ一致又は
不一致の情報を通知する。命令デコード部102は複数の
比較器172 から得た一致又は不一致の情報とラッチ回路
130 に格納した命令を制御信号に変換した情報とを合成
して制御信号126 とし、実行制御部103へ該制御信号126
を送出する。実行制御部103 は前記制御信号126 をマ
イクロエントリアドレスとマイクロエントリアドレスを
除く制御信号 (以下第8の制御信号という) とに識別
し、マイクロエントリアドレスは実行制御部103 のμEA
レジスタ132 に格納され、第8の制御信号は実行制御部
103 のCRレジスタ133 に格納され、μROM 131 はμEAレ
ジスタ132 に格納されたマイクロエントリアドレスを用
いてマイクロプログラムを読み出して第9の制御信号13
5 を生成する。

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 命令フェッチ部、命令デコード部、命令
    実行部を備え、それらをパイプライン化して命令を処理
    するデータ処理装置において、所定の命令が所有する所
    定の識別情報を記憶する識別情報記憶手段と、該識別情
    報記憶手段に記憶されている識別情報と前記命令フェッ
    チ部へ入力された命令の識別情報とを比較する比較手段
    とを具備することを特徴とするデータ処理装置。
  2. 【請求項2】 識別情報記憶手段と比較手段とを連想記
    憶装置を用いて構成してあることを特徴とする請求項1
    のデータ処理装置。
  3. 【請求項3】 命令フェッチ部、命令デコード部、命令
    実行部を備え、それらをパイプライン化して命令を処理
    するデータ処理装置において、所定の命令コードを記憶
    する命令コード記憶手段と、該命令コード記憶手段に記
    憶されている命令コードと前記命令フェッチ部へ入力さ
    れた命令の命令コードとを比較する命令コード比較手段
    とを具備することを特徴とするデータ処理装置。
  4. 【請求項4】 命令フェッチ部、命令デコード部、命令
    実行部を備え、それらをパイプライン化して命令を処理
    するデータ処理装置において、所定のマイクロプログラ
    ムのエントリアドレスを記憶するマイクロエントリアド
    レス記憶手段と、該マイクロエントリアドレス記憶手段
    に記憶されているマイクロプログラムのエントリアドレ
    スと前記命令フェッチ部へ入力された命令のマイクロエ
    ントリアドレスとを比較するマイクロエントリアドレス
    比較手段とを具備することを特徴とするデータ処理装
    置。
  5. 【請求項5】 命令フェッチ部、命令デコード部、命令
    実行部を備え、それらをパイプライン化して命令を処理
    するデータ処理装置において、所定の命令の制御信号を
    記憶する制御信号記憶手段と、該制御信号記憶手段に記
    憶されている制御信号と該命令フェッチ部へ入力された
    命令の制御信号とを比較する制御信号比較手段とを具備
    することを特徴とするデータ処理装置。
JP5150188A 1993-06-22 1993-06-22 データ処理装置 Pending JPH0713807A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5150188A JPH0713807A (ja) 1993-06-22 1993-06-22 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5150188A JPH0713807A (ja) 1993-06-22 1993-06-22 データ処理装置

Publications (1)

Publication Number Publication Date
JPH0713807A true JPH0713807A (ja) 1995-01-17

Family

ID=15491443

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5150188A Pending JPH0713807A (ja) 1993-06-22 1993-06-22 データ処理装置

Country Status (1)

Country Link
JP (1) JPH0713807A (ja)

Similar Documents

Publication Publication Date Title
AU635016B2 (en) Decoding multiple specifiers in a variable length instruction architecture
EP0464494B1 (en) A high performance pipelined emulator
US5142633A (en) Preprocessing implied specifiers in a pipelined processor
JP2005317023A (ja) データ処理装置のブレークポイント論理ユニット、デバッグ論理、およびブレークポイントの方法
US5091853A (en) Chained addressing mode pipelined processor which merges separately decoded parts of a multiple operation instruction
JPH035835A (ja) マイクロプロセッサ
JPH0429093B2 (ja)
US5502827A (en) Pipelined data processor for floating point and integer operation with exception handling
US5682531A (en) Central processing unit
JP2507638B2 (ja) デ―タ処理装置
JPS63273134A (ja) マクロ命令パイプラインを用いてマイクロ命令を変更する方法及び装置
US4945511A (en) Improved pipelined processor with two stage decoder for exchanging register values for similar operand instructions
US5542060A (en) Data processor including a decoding unit for decomposing a multifunctional data transfer instruction into a plurality of control codes
JP3707581B2 (ja) 自己整合スタック・ポインタを有するデータ処理システムおよびその方法
US5095426A (en) Data processing system for effectively handling exceptions during execution of two different types of instructions
JP2669158B2 (ja) データ処理装置
JPH01137331A (ja) 制御ワード分岐方法
US7631166B1 (en) Processing instruction without operand by inferring related operation and operand address from previous instruction for extended precision computation
US5349681A (en) Bit searching circuit and data processor including the same
JPH0713807A (ja) データ処理装置
US5519881A (en) Priority encoder for accessing multiple registers simultaneously and a data processing system which uses it
US5361338A (en) Pipelined system for decomposing instruction into two decoding parts and either concurrently generating two operands addresses of merging decomposing decoding codes based upon the second operand
JPH01120638A (ja) 情報処理装置
US6922760B2 (en) Distributed result system for high-performance wide-issue superscalar processor
JP2000112754A (ja) データ処理装置