JPH04344947A - プログラム制御装置 - Google Patents
プログラム制御装置Info
- Publication number
- JPH04344947A JPH04344947A JP3118158A JP11815891A JPH04344947A JP H04344947 A JPH04344947 A JP H04344947A JP 3118158 A JP3118158 A JP 3118158A JP 11815891 A JP11815891 A JP 11815891A JP H04344947 A JPH04344947 A JP H04344947A
- Authority
- JP
- Japan
- Prior art keywords
- data
- instruction
- register
- address
- program
- 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
- 238000001514 detection method Methods 0.000 abstract description 8
- 239000013589 supplement Substances 0.000 abstract 1
- 230000006870 function Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】本発明はプログラム制御装置に関
し、特にデバッグ機能を有するプログラム制御装置に関
する。
し、特にデバッグ機能を有するプログラム制御装置に関
する。
【0002】
【従来の技術】一般にプログラム制御装置では、プログ
ラムのデバッグを行い易くするために、プログラムが格
納されている制御記憶部の中の予め任意に指定したアド
レスでプログラムを実行を一時停止できるようにした機
能を備えている。
ラムのデバッグを行い易くするために、プログラムが格
納されている制御記憶部の中の予め任意に指定したアド
レスでプログラムを実行を一時停止できるようにした機
能を備えている。
【0003】すなわち、プログラム制御装置は制御記憶
部に供給する制御記憶アドレス(アドレスデータ)と比
較するためのアドレスデータを格納する比較アドレスレ
ジスタを備え、プログラムの実行毎にこの比較アドレス
レジスタの内容と制御記憶部に供給する制御記憶アドレ
スとを比較して、両者の一致が検出された場合にプログ
ラムの実行を停止できるようにした機能を備えている。 デバッグに際しては、プログラムの実行を一時停止すべ
き命令の格納されている制御記憶アドレスを、例えばコ
ンソール等から入力し、比較アドレスレジスタに格納し
てからプログラムの実行を開始させる。そして、上述の
機能によりプログラムが指定された命令アドレス(制御
記憶アドレス)で停止すると、この状態で各種のレジス
タの内容やその他の内部状態等をチェックすることによ
り、プログラムによる処理がここまで所望通りに動作し
ているか否かを確認する。これが済むと、必要に応じて
再び次の停止すべきアドレスを指定して現在の停止して
いるアドレス(またはその他のアドレス)からプログラ
ムを再び開始する。
部に供給する制御記憶アドレス(アドレスデータ)と比
較するためのアドレスデータを格納する比較アドレスレ
ジスタを備え、プログラムの実行毎にこの比較アドレス
レジスタの内容と制御記憶部に供給する制御記憶アドレ
スとを比較して、両者の一致が検出された場合にプログ
ラムの実行を停止できるようにした機能を備えている。 デバッグに際しては、プログラムの実行を一時停止すべ
き命令の格納されている制御記憶アドレスを、例えばコ
ンソール等から入力し、比較アドレスレジスタに格納し
てからプログラムの実行を開始させる。そして、上述の
機能によりプログラムが指定された命令アドレス(制御
記憶アドレス)で停止すると、この状態で各種のレジス
タの内容やその他の内部状態等をチェックすることによ
り、プログラムによる処理がここまで所望通りに動作し
ているか否かを確認する。これが済むと、必要に応じて
再び次の停止すべきアドレスを指定して現在の停止して
いるアドレス(またはその他のアドレス)からプログラ
ムを再び開始する。
【0004】
【発明が解決しようとする課題】上述したプログラム制
御装置では、ある命令アドレスの時点であるレジスタが
ある値であるというような条件下での任意ルーチンのデ
バッグを行う場合には、予め何回目になるかが分かって
いれば特定のルーチンのアドレスで停止可能であるが、
一般にプログラムはソフトウェア命令の順番あるいは外
部要因(入出力装置からの割り込み等)により複雑な動
作をするために予測が不可能であり、実際はそのような
条件での停止はできなかった。
御装置では、ある命令アドレスの時点であるレジスタが
ある値であるというような条件下での任意ルーチンのデ
バッグを行う場合には、予め何回目になるかが分かって
いれば特定のルーチンのアドレスで停止可能であるが、
一般にプログラムはソフトウェア命令の順番あるいは外
部要因(入出力装置からの割り込み等)により複雑な動
作をするために予測が不可能であり、実際はそのような
条件での停止はできなかった。
【0005】この問題を解決するために、特定ルーチン
中にあるレジスタがある値になったらユニークなアドレ
スに分岐(あるいはプログラムを停止させるような命令
実行)するようなデバッグ専用のルーチンを追加するこ
とが考えられる。しかしながら、プログラム実行の全て
のタイミングで平等に行われるものではなく、最小限必
要と思われる箇所にその都度デバッグ専用ルーチンを追
加する必要がある。
中にあるレジスタがある値になったらユニークなアドレ
スに分岐(あるいはプログラムを停止させるような命令
実行)するようなデバッグ専用のルーチンを追加するこ
とが考えられる。しかしながら、プログラム実行の全て
のタイミングで平等に行われるものではなく、最小限必
要と思われる箇所にその都度デバッグ専用ルーチンを追
加する必要がある。
【0006】本発明の目的は、デバッグ専用ルーチンの
追加を不要とするとともに、プログラムの実行の全ての
タイミングで平等にプログラムの停止が行えるプログラ
ム制御装置を提供することにある。
追加を不要とするとともに、プログラムの実行の全ての
タイミングで平等にプログラムの停止が行えるプログラ
ム制御装置を提供することにある。
【0007】
【課題を解決するための手段】本発明のプログラム制御
装置は、プログラムを格納する制御記憶手段から読み出
された前記プログラムの第1の命令を格納する命令レジ
スタと、比較対象となるデータを内部バスに出力するた
めの第2の命令を格納するバス出力命令レジスタと、前
記内部バス上のデータと比較するためのデータを格納す
る比較データレジスタと、この比較データレジスタから
のデータと前記内部バス上のデータとを比較するデータ
比較手段と、前記命令レジスタ及び前記バス出力命令レ
ジスタからの前記第1の命令及び前記第2の命令のいず
れかを選択して命令実行手段に供給する選択手段と、前
記制御記憶手段に前記命令実行手段から供給される制御
記憶アドレスデータと比較するためのアドレスデータを
格納する比較アドレスレジスタと、前記制御記憶アドレ
スデータと前記比較アドレスレジスタからの前記アドレ
スデータとを比較するアドレス比較手段と、前記バス出
力命令レジスタに格納された前記第2の命令が前記命令
実行手段に供給され前記データ比較手段がデータとの一
致を検出し且つ前記アドレス比較手段が前記制御記憶ア
ドレスデータと前記アドレスデータとの一致を検出した
場合に前記命令実行手段における命令実行を停止させる
制御手段とを備える。
装置は、プログラムを格納する制御記憶手段から読み出
された前記プログラムの第1の命令を格納する命令レジ
スタと、比較対象となるデータを内部バスに出力するた
めの第2の命令を格納するバス出力命令レジスタと、前
記内部バス上のデータと比較するためのデータを格納す
る比較データレジスタと、この比較データレジスタから
のデータと前記内部バス上のデータとを比較するデータ
比較手段と、前記命令レジスタ及び前記バス出力命令レ
ジスタからの前記第1の命令及び前記第2の命令のいず
れかを選択して命令実行手段に供給する選択手段と、前
記制御記憶手段に前記命令実行手段から供給される制御
記憶アドレスデータと比較するためのアドレスデータを
格納する比較アドレスレジスタと、前記制御記憶アドレ
スデータと前記比較アドレスレジスタからの前記アドレ
スデータとを比較するアドレス比較手段と、前記バス出
力命令レジスタに格納された前記第2の命令が前記命令
実行手段に供給され前記データ比較手段がデータとの一
致を検出し且つ前記アドレス比較手段が前記制御記憶ア
ドレスデータと前記アドレスデータとの一致を検出した
場合に前記命令実行手段における命令実行を停止させる
制御手段とを備える。
【0008】
【実施例】次に、本発明の実施例について図面を参照し
て説明する。
て説明する。
【0009】本発明の一実施例を示す図1を参照すると
、プログラム制御装置は、制御記憶1、命令レジスタ2
、バス出力命令レジスタ3、選択回路4、実行制御部5
、フリップフロップ(以下、F/Fと略記する)6、比
較データレジスタ7、データ一致検出回路8、アンドゲ
ート9、比較アドレスレジスタ10、アドレス一致検出
回路11及びアンドゲート12を有している。
、プログラム制御装置は、制御記憶1、命令レジスタ2
、バス出力命令レジスタ3、選択回路4、実行制御部5
、フリップフロップ(以下、F/Fと略記する)6、比
較データレジスタ7、データ一致検出回路8、アンドゲ
ート9、比較アドレスレジスタ10、アドレス一致検出
回路11及びアンドゲート12を有している。
【0010】このプログラム制御装置において、制御記
憶部1に格納されたプログラムの命令は、実行制御部5
で生成され信号線50によって供給される命令アドレス
によって命令レジスタ2に読み出され、選択回路4で選
択されて実行制御部5に供給され実行される。この場合
、F/F6の出力は論理“0”となっており、選択回路
4は命令レジスタ2を選択している。F/F6は命令実
行毎に値が反転する機能を持ち、命令レジスタ2内の命
令を実行後は論理“1”となる。これにより、選択回路
4はバス出力命令レジスタ3を選択し、命令レジスタ以
外は図示してないがプログラム制御装置内で使用されて
いる任意のレジスタの内容を内部バスに出力するための
命令が実行制御部5に供給される。バス出力データは信
号線80を介してデータ一致検出回路8に供給され、比
較データレジスタ7のデータと比較される。一方、命令
レジスタ2の内容は、F/F6の出力が論理“1”の場
合に保持され、論理“0”の場合のみ制御記憶部1から
の命令が格納される。
憶部1に格納されたプログラムの命令は、実行制御部5
で生成され信号線50によって供給される命令アドレス
によって命令レジスタ2に読み出され、選択回路4で選
択されて実行制御部5に供給され実行される。この場合
、F/F6の出力は論理“0”となっており、選択回路
4は命令レジスタ2を選択している。F/F6は命令実
行毎に値が反転する機能を持ち、命令レジスタ2内の命
令を実行後は論理“1”となる。これにより、選択回路
4はバス出力命令レジスタ3を選択し、命令レジスタ以
外は図示してないがプログラム制御装置内で使用されて
いる任意のレジスタの内容を内部バスに出力するための
命令が実行制御部5に供給される。バス出力データは信
号線80を介してデータ一致検出回路8に供給され、比
較データレジスタ7のデータと比較される。一方、命令
レジスタ2の内容は、F/F6の出力が論理“1”の場
合に保持され、論理“0”の場合のみ制御記憶部1から
の命令が格納される。
【0011】以上の動作を図2に示すタイミングチャー
トを参照しながら説明する。図2のクロックはプログラ
ム制御装置内で使用されている実行処理用のクロックで
あり本図の場合F/F6の動作切替の駆動を行っている
。F/F6の出力が論理“0”であり、且つ命令レジス
タ2に命令Aが格納された状態では、実行制御部5へは
命令Aが供給されて実行される。その結果、命令レジス
タ2には、次に実行すべき命令Bが制御記憶部1から読
み出されて格納される。また、これと同時に、F/F6
の出力が論理“1”に反転することにより、次に実行制
御部5へはバス出力命令レジスタ3に格納されていた命
令であるバス出力命令Zが供給されて実行される。以後
、同様な動作が繰り返されることによって、通常のプロ
グラムのA→B→Cの実行が、それぞれの命令の間にバ
ス出力命令Zが挿入されてA→Z→B→Z→Cの様な実
行が実現される。但し、バス出力命令Zは任意のレジス
タをバス出力するのみで一切のハードウェア状態は変え
ないものである。
トを参照しながら説明する。図2のクロックはプログラ
ム制御装置内で使用されている実行処理用のクロックで
あり本図の場合F/F6の動作切替の駆動を行っている
。F/F6の出力が論理“0”であり、且つ命令レジス
タ2に命令Aが格納された状態では、実行制御部5へは
命令Aが供給されて実行される。その結果、命令レジス
タ2には、次に実行すべき命令Bが制御記憶部1から読
み出されて格納される。また、これと同時に、F/F6
の出力が論理“1”に反転することにより、次に実行制
御部5へはバス出力命令レジスタ3に格納されていた命
令であるバス出力命令Zが供給されて実行される。以後
、同様な動作が繰り返されることによって、通常のプロ
グラムのA→B→Cの実行が、それぞれの命令の間にバ
ス出力命令Zが挿入されてA→Z→B→Z→Cの様な実
行が実現される。但し、バス出力命令Zは任意のレジス
タをバス出力するのみで一切のハードウェア状態は変え
ないものである。
【0012】以上の動作中、データ一致検出回路8はバ
ス出力と比較データレジスタ7のデータ出力とを比較す
るが、さらにアンドゲート9によりF/F6の出力との
論理積がとられるため、信号線90にはバス出力命令Z
によるバス出力と比較データレジスタ7のデータ出力と
が一致した場合にのみ論理“1”が出力される。
ス出力と比較データレジスタ7のデータ出力とを比較す
るが、さらにアンドゲート9によりF/F6の出力との
論理積がとられるため、信号線90にはバス出力命令Z
によるバス出力と比較データレジスタ7のデータ出力と
が一致した場合にのみ論理“1”が出力される。
【0013】また、アドレス一致検出回路11は信号線
50によって供給される命令アドレスと比較アドレスレ
ジスタ10のデータとを比較するが、さらにアンドゲー
ト12により信号線90の論理信号との論理積がとられ
るため、信号線120にはバス出力命令Zによるバス出
力と比較データレジスタ7とが一致し、且つ命令アドレ
スと比較アドレスレジスタ10のデータとが一致した場
合にのみ論理“1”が出力される。この論理“1”信号
は実行制御部5にプログラム停止信号として供給される
。
50によって供給される命令アドレスと比較アドレスレ
ジスタ10のデータとを比較するが、さらにアンドゲー
ト12により信号線90の論理信号との論理積がとられ
るため、信号線120にはバス出力命令Zによるバス出
力と比較データレジスタ7とが一致し、且つ命令アドレ
スと比較アドレスレジスタ10のデータとが一致した場
合にのみ論理“1”が出力される。この論理“1”信号
は実行制御部5にプログラム停止信号として供給される
。
【0014】なお、バス出力命令レジスタ3、比較デー
タレジスタ7及び比較アドレスレジスタ10には、予め
コンソール(図示省略)から比較対象レジスタのバス出
力を指示する命令、期待データ及び期待アドレスが供給
されて格納される。
タレジスタ7及び比較アドレスレジスタ10には、予め
コンソール(図示省略)から比較対象レジスタのバス出
力を指示する命令、期待データ及び期待アドレスが供給
されて格納される。
【0015】
【発明の効果】以上説明したように本発明によれば、プ
ログラムのそれぞれの命令実行の間にハードウェア動作
として任意に指定した命令アドレスで任意に指定したレ
ジスタが期待する値になったか否かをチェックし、期待
値になった場合にプログラムを停止することにより、デ
バッグ専用ルーチンの追加を不要とし、さらにプログラ
ムの実行の全てのタイミングで平等にプログラムの停止
が行える。この結果、デバッグの効率化が達成される。
ログラムのそれぞれの命令実行の間にハードウェア動作
として任意に指定した命令アドレスで任意に指定したレ
ジスタが期待する値になったか否かをチェックし、期待
値になった場合にプログラムを停止することにより、デ
バッグ専用ルーチンの追加を不要とし、さらにプログラ
ムの実行の全てのタイミングで平等にプログラムの停止
が行える。この結果、デバッグの効率化が達成される。
【図1】本発明の一実施例を示すブロック図である。
【図2】本実施例のプログラム制御装置における動作の
一部を示すタイミングチャートである。
一部を示すタイミングチャートである。
1 制御記憶部
2 命令レジスタ
3 バス出力命令レジスタ
4 選択回路
5 実行制御部
6 フリップフロップ(F/F)7 比較
データレジスタ 8 データ一致検出回路 9 アンドゲート 10 比較アドレスレジスタ 11 アドレス一致検出回路 12 アンドゲート
データレジスタ 8 データ一致検出回路 9 アンドゲート 10 比較アドレスレジスタ 11 アドレス一致検出回路 12 アンドゲート
Claims (1)
- 【請求項1】 プログラムを格納する制御記憶手段か
ら読み出された前記プログラムの第1の命令を格納する
命令レジスタと、比較対象となるデータを内部バスに出
力するための第2の命令を格納するバス出力命令レジス
タと、前記内部バス上のデータと比較するためのデータ
を格納する比較データレジスタと、この比較データレジ
スタからのデータと前記内部バス上のデータとを比較す
るデータ比較手段と、前記命令レジスタ及び前記バス出
力命令レジスタからの前記第1の命令及び前記第2の命
令のいずれかを選択して命令実行手段に供給する選択手
段と、前記制御記憶手段に前記命令実行手段から供給さ
れる制御記憶アドレスデータと比較するためのアドレス
データを格納する比較アドレスレジスタと、前記制御記
憶アドレスデータと前記比較アドレスレジスタからの前
記アドレスデータとを比較するアドレス比較手段と、前
記バス出力命令レジスタに格納された前記第2の命令が
前記命令実行手段に供給され前記データ比較手段がデー
タ一致を検出し且つ前記アドレス比較手段が前記制御記
憶アドレスデータと前記アドレスデータとの一致を検出
した場合に前記命令実行手段における命令実行を停止さ
せる制御手段と、を備えることを特徴とするプログラム
制御装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3118158A JPH04344947A (ja) | 1991-05-23 | 1991-05-23 | プログラム制御装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3118158A JPH04344947A (ja) | 1991-05-23 | 1991-05-23 | プログラム制御装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04344947A true JPH04344947A (ja) | 1992-12-01 |
Family
ID=14729539
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3118158A Pending JPH04344947A (ja) | 1991-05-23 | 1991-05-23 | プログラム制御装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH04344947A (ja) |
-
1991
- 1991-05-23 JP JP3118158A patent/JPH04344947A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4870562A (en) | Microcomputer capable of accessing internal memory at a desired variable access time | |
| US4987537A (en) | Computer capable of accessing a memory by supplying an address having a length shorter than that of a required address for the memory | |
| US5361348A (en) | Debug circuit of a signal processor | |
| US4747045A (en) | Information processing apparatus having an instruction prefetch circuit | |
| JPH0447856B2 (ja) | ||
| US6877113B2 (en) | Break determining circuit for a debugging support unit in a semiconductor integrated circuit | |
| JPH04344947A (ja) | プログラム制御装置 | |
| JPH08171504A (ja) | エミュレ−ション装置 | |
| US20050192791A1 (en) | Method for emulating an integrated circuit and semiconductor chip for practicing the method | |
| JPS62197834A (ja) | マイクロプログラム制御装置 | |
| JPH04230533A (ja) | 割込制御回路 | |
| JPS63197247A (ja) | マイクロプログラム制御装置 | |
| JP3405513B2 (ja) | プログラマブルコントローラの二重化制御装置 | |
| JPS63197246A (ja) | マイクロプログラム制御装置 | |
| JPH09146662A (ja) | サスペンド・レジューム方法およびコンピュータシステム | |
| JPH05108550A (ja) | 中央処理装置 | |
| JP3366235B2 (ja) | データ読み出し制御装置 | |
| JPH02103643A (ja) | デバッグ用割込発生回路 | |
| JPH09319592A (ja) | マイクロコンピュータ | |
| JPH02264339A (ja) | 情報処理装置 | |
| JPH04181334A (ja) | デバッグ用割込み発生回路 | |
| JPH0944374A (ja) | プログラム・デバッグ装置 | |
| JPH09160786A (ja) | マイクロプロセッサ | |
| JPH0683986A (ja) | シングルチップ・マイクロコンピュータ | |
| JPH01276335A (ja) | マイクロプログラム制御装置 |