JPH08179958A - 制御用電子装置 - Google Patents

制御用電子装置

Info

Publication number
JPH08179958A
JPH08179958A JP6336209A JP33620994A JPH08179958A JP H08179958 A JPH08179958 A JP H08179958A JP 6336209 A JP6336209 A JP 6336209A JP 33620994 A JP33620994 A JP 33620994A JP H08179958 A JPH08179958 A JP H08179958A
Authority
JP
Japan
Prior art keywords
program
address
debug
storage means
microcomputer
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.)
Granted
Application number
JP6336209A
Other languages
English (en)
Other versions
JP3449812B2 (ja
Inventor
Toshihiko Fujishiro
俊彦 藤代
Junji Oiwa
純二 大岩
Naoki Murayama
直樹 村山
Iwao Yamamoto
巌 山本
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP33620994A priority Critical patent/JP3449812B2/ja
Publication of JPH08179958A publication Critical patent/JPH08179958A/ja
Application granted granted Critical
Publication of JP3449812B2 publication Critical patent/JP3449812B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Microcomputers (AREA)

Abstract

(57)【要約】 【目的】 ホストコンピュータからの指令に応じて、マ
イコン内部に組み込まれたデバッグ用プログラムを実行
させることにより、ICEを用いることなくデバッグを
可能としたマイコンを提供する。 【構成】 図のマイコンにおいて、デバッグのためにア
プリケーションプログラムの実行を中断させる場合は、
修正アドレスレジスタ2にブレイクアドレスを、修正デ
ータレジスタ4に中断動作実行プログラムを開始させる
ためのデータを、ラッチ3に「1」をそれぞれ格納する
プログラムをホスト側からの指令で実行させ、CPUの
実行アドレスがブレイクアドレスに一致したとき、比較
器の出力信号に基づきCPUのアクセス対象をROMか
ら修正データレジスタに切り換える。この他にも、マイ
コン内に組み込まれた種々のデバッグ用プログラムを実
行させることにより、様々なデバッグ動作を行うことが
できる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、制御プログラムを内蔵
した制御用電子装置に関し、特に制御プログラムのデバ
ッグを容易に行うことができるように構成された制御用
電子装置を提供するものである。
【0002】
【従来の技術】一般に、制御対象となる機器にマイコン
等の制御用電子装置を搭載して制御を行う場合、この電
子装置の制御プログラムを開発するに際しては、ハード
ウェアを含めたデバッグを行う必要がある。そして、そ
のようなハードウェアを含めたデバッグを可能にする方
法としては、従来からIn−Circuit Emul
ator(以下、ICEという)或るいはロジックアナ
ライザー等が使用されているが、通常、ICEを使用し
てデバッグを行う場合には、電子装置内のCPUを取り
除いてICEと接続可能な評価用チップを作製し、目的
の制御対象である機器にこの評価用チップを搭載した状
態でICEと接続して、アプリケーションプログラムの
一時実行停止、メモリの参照/設定、或るいは逆アセン
ブル等のデバッグのための処理を実行するようにしてい
る。
【0003】
【発明が解決しようとする課題】上に述べたように、従
来、ICEを用いてハードウェアを含めたデバッグを行
うためには特別に評価用チップを作製しなければならな
いという問題があり、換言すれば、既にマイコン等の制
御用電子装置が組み込まれてしまった制御対象機器につ
いては、制御用電子装置を取り外して評価用チップ等に
交換しなければICEを用いたデバッグを行うことがで
きなかった。更に、通常、ICEを使用してメモリの参
照/設定等の操作を行う際にはプログラムのエミュレー
ションを一時停止状態にしなければならないが、制御機
器によってはエミュレーションを一時停止することによ
って不具合を生ずるものもあり、このようなものにおい
ては容易にプログラムの実行を一時停止できないため、
デバッグ処理を進めるうえで不都合なこともあった。
【0004】
【課題を解決するための手段】本発明は、制御用電子装
置であって、中央処理手段と、アプリケーションプログ
ラムが格納された固定記憶手段と、オペレーターによっ
て選択された所定アドレスが格納される第1記憶手段
と、デバッグ処理を開始させるためのデバッグ開始用デ
ータが格納される第2記憶手段と、中央処理手段の実行
アドレスと第1記憶手段に格納された所定アドレスとを
比較する比較器と、該比較器の比較出力が入力される切
換回路とを備え、前記切換回路は、前記実行アドレスが
前記所定アドレスに一致したことを示す比較器の一致出
力に基づいて、中央処理手段のアクセスを固定記憶手段
から第2記憶手段へ切り換えることを特徴としている。
【0005】ここで、固定記憶手段に更にデバッグ処理
を実行するためのデバッグ用プログラムを格納し、か
つ、デバッグ開始用データを、デバッグ用プログラムへ
のジャンプ命令とするのが好適であり、この場合、デバ
ッグ開始用データによるジャンプ先のアドレスを格納す
るための第3記憶手段を更に設ける構成とすることもで
きる。この外に、デバッグ開始用データとして、所定ア
ドレスにおいて無限ループを実行させる命令を用いても
よい。
【0006】
【作用】制御用電子装置に組み込まれたアプリケーショ
ンプログラムをデバッグするための処理が、制御用電子
装置自身によって行われる。デバッグ処理を行うに際し
ての開始アドレスは、オペレーターが随意指定可能であ
る。デバッグ処理動作中においても、制御用電子装置が
割り込み処理を受け付けることが出来る。
【0007】
【実施例】現在、制御用電子装置としては、様々なマイ
コンが使用されているが、その中で、既に公知であるパ
ッチ修正の可能な1チップマイコンに本発明を適用した
場合の実施例について説明する。かかる1チップマイコ
ンの1構成例を図1に示す。最初にこのマイコンにおけ
るパッチ修正について以下に簡単に説明する(なお、こ
のようなマイコンにおけるパッチ修正動作の詳細は、例
えば、特開平6−222917号公報に記載されてい
る)。
【0008】図1の構成において、バグ等の存在により
ROM5内に格納されたアプリケーションプログラムに
パッチ修正を行いたい部分があるときは、このパッチ修
正部分の先頭アドレスを修正アドレスレジスタ2へ格納
すると共に、このパッチ修正部分に代わって実行すべき
パッチ修正プログラムをRAM6に格納しておく。ま
た、CPU1におけるプログラム実行をアプリケーショ
ンプログラムからパッチ修正プログラムへ切り換える際
に必要となる種々の前処理を行うための前処理プログラ
ムをROM5内の特定のエリアに格納しておき、更に、
修正データレジスタ4にはCPUの動作をパッチ修正動
作へ移行させるためのテーブルコール命令を格納してお
く。そして、このマイコンによる制御動作において、以
上のレジスタ2、3、及びRAM6、ROM5に格納さ
れたパッチ修正用のデータに基づいてパッチ修正を実行
させる場合は、制御フラグラッチ3に予め値「1」のフ
ラグを格納しておく。
【0009】以上のように構成されたマイコンにおける
パッチ修正は次のように行われる。即ち、CPU1によ
るアプリケーションプログラムの実行が進行してその実
行アドレスが修正アドレスに一致すると、比較器7の出
力が値「1」となってアンドゲート8の出力信号がアク
ティブ(値「1」)となり、この信号が修正データレジ
スタ4へ供給されると共に、ROM5へはその反転され
たインアクティブの信号が供給される。これにより、C
PU1は、ROM5内のアプリケーションプログラムの
コマンドに代え修正データレジスタ内のテーブルコール
命令を受け付けることとなる。そして、このテープルコ
ール命令によって前記の前処理プログラムの先頭アドレ
スがコールされるため、この前処理プログラムの実行が
開始され、その後、RAM6内のパッチ修正プログラム
へ移行してこのプログラムの実行を終了すると、ROM
5のアプリケーションプログラムのパッチ修正部分の次
のアドレスへ戻る動作を行う。
【0010】図1に示されるマイコンにおいては、以上
のようにしてパッチ修正が実行されるが、本実施例は、
このマイコンにおいて、デバッグを行うために必要な様
々な動作、例えば、アプリケーションプログラムの実行
を所望のアドレスで中断させたり、この中断したアドレ
スからアプリケーションプログラムの実行を再開させた
り、或るいは、レジスタ及びメモリの参照/設定等を実
行させる等の動作を実行するためのプログラム(以下、
デバッグモニタという)を予めアプリケーションプログ
ラムと共にマイコン内に組み込んでおくことにより、I
CEを用いることなくデバッグ処理が行えるようにした
ものである。
【0011】そして、これらのデバッグモニタを実行さ
せるための指令は、外部のホストコンピュータからシリ
アルもしくはパラレルの通信路を用いてマイコンへ与え
るように構成する。なお、この通信路は、デバッグモニ
タ占有、或るいはアプリケーションプログラムとの分割
使用のいずれの形態にしてもよい。次に、デバッグモニ
タの例として、アプリケーションプログラムの実行の中
断(ブレイク)及び再開を行わせるためのプログラム
を、図2及び図3を参照して説明する。
【0012】図2は、アプリケーションプログラムの実
行を中断するためのプログラムを示し、マイコンは、ホ
スト側からブレイクアドレスデータを含むブレイク要求
を受け付けると、この図の〔1〕に示されるプログラム
の実行を開始し、そのステップS2及びステップS3に
おいて中断動作の実行に必要なデータを修正アドレスレ
ジスタ及び修正データレジスタ等に格納した後、もとの
アプリケーションプログラムに戻る。そして、アプリケ
ーションプログラムの実行が進行してその実行アドレス
がブレイクアドレスに一致するとブレイク用テーブルコ
ール命令によってコールされるアドレスへジャンプす
る。一方、このコールされたアドレス以降には、この図
の〔2〕に示されるプログラムが書き込まれているの
で、CPUは、このプログラムのステップS4を実行し
て退避処理を行った後、ブレイク解除フラグがONとな
るまでステップS5のループを繰り返して中断状態とな
る。
【0013】ここで、ブレイク解除フラグは、ホスト側
から再開指令が出されたときのみONにされ、この再開
指令に基づいて実行されるプログラムは図3に示すとお
りである。即ち、再開指令が出されたときには、このプ
ログラムの実行により制御フラグ及びブレイク解除フラ
グの値を反転した後、図2の〔2〕のステップS5へ戻
り、更にステップS6でCPUの状態をブレイク直前の
状態に戻してからブレイクアドレスへジャンプし、アプ
リケーションプログラムの実行を再開する。なお、以上
の図2及び図3に示される各プログラムは、いずれもR
OM5内に格納しておくことができる。また、これらの
中断/再開動作では、PSW及びレジスタの値の退避・
復帰処理が行われるので、アプリケーションプログラム
の再開に際して中断による影響を受けることもない。
【0014】なお、以上に説明したように、CPUによ
るプログラム実行をホスト側からの指令に応じてアプリ
ケーションプログラム、中断プログラム、及び再開プロ
グラムの間で相互に切り換えるようにするためには、ア
プリケーションプログラム、図2の〔1〕及び〔2〕か
らなる中断プログラム、及び図3の再開プログラムを、
それぞれ1つのタスクとして異なる優先度を付与し、ホ
スト側からの指令に応じてこれらのタスクを切り換えて
実行するマルチタスク方式のOS(Operation
System)を採用すれば簡単に実現できる。ま
た、OSを使用しなかったマイコンの場合には、例え
ば、アプリケーションプログラムの中に図2の〔1〕の
プログラムを挿入しておき、中断指令を受け付けたとき
この挿入されたプログラムのステップS2を実行させる
ことにより、アプリケーションプログラム上のブレイク
アドレスで図2の〔2〕のプログラムへ移行させるよう
にし、かつ、図3の再開プログラムを割り込みプログラ
ムとして実行させることにより実現が可能である。
【0015】なお、図1に示される構成では、2〜4及
び7〜9からなる構成部分をパッチ修正とデバッグ処理
とで共用しているため、パッチ修正に関するプログラム
についてのデバッグ処理を行うことはできないが、上記
の2〜4及び7〜9と同じ構成部分をもう1組マイコン
内に組み込んでおき、それぞれの組をパッチ修正専用及
びデバッグ処理専用として使用すれば、パッチ修正に関
するプログラムについてもデバッグ処理を行うことが可
能である。
【0016】以上に説明した実施例では、修正データレ
ジスタに格納されたテーブルコール命令を使用して中断
のためのプログラムへジャンプするようにしているが、
これに代え、中断指令を受け付けたときは修正データレ
ジスタに中断動作のためのジャンプ命令を書き込むよう
に構成し、かつ、このジャンプ命令のジャンプ先アドレ
スが、テーブルコール命令用のテーブルが設けられてい
るメモリとは異なる特定のレジスタに格納されているも
のとして定義されたマイコンを使用することもできる。
【0017】このようなマイコンの構成を図4に示す。
この図の構成において、レジスタ12は、中断動作のた
めのジャンプ先のアドレスが格納される可変ジャンプ先
アドレスレジスタであり、ホスト側から中断指令が入力
されると図2の〔1〕のプログラムに代えて図5に示さ
れるプログラムが実行される。そして、このプログラム
のステップS21においてジャンプ先アドレスがレジス
タ12に書き込まれる。なお、このジャンプ先のアドレ
ス以降には、図2の〔2〕と同じプログラムが格納され
ており、また、再開動作も図3と同じプログラムに従っ
て実行される。
【0018】なお、この外に、マイコンに対してアプリ
ケーションプログラムの実行を中断させるためのより簡
略化した方法としては、中断指令を受け付けたとき、図
1における修正データレジスタ4にブレイクアドレスで
無限ループを実行させる命令(このような命令の具体例
としては、例えば、ブレイクアドレスへジャンプさせる
命令を用いることができる)を書き込むようにしてもよ
い。このような方法を採用した場合の中断動作のプログ
ラム、及び再開動作のプログラムの例を図6の〔1〕及
び〔2〕に示す。但し、この例では、この図から明らか
なように、PSW及びレジスタの値の退避・復帰処理を
行わないので、CPUの内部状態は中断動作中保存され
ない。なお、このように、ブレイクアドレスで無限ルー
プを実行させる方法を使用し、かつ、パッチ修正用回路
として共用することも考慮しない場合は、修正データレ
ジスタ4をROMで構成してもよい。
【0019】以上、中断/再開のデバッグモニタについ
て述べたが、この外に、メモリの参照/設定、逆アセン
ブル等の動作も、デバッグモニタとしてマイコン内に組
み込んでおくことにより実行することができる。1例と
して、逆アセンブルのためのデバッグモニタの構成を図
7に示す。この図において、マイコンは、逆アセンブル
開始アドレスデータを含む逆アセンブル要求をホスト側
から受け付けるとステップS15〜ステップS17を実
行することによりホスト側で逆アセンブルされたニーモ
ニック言語が表示される。なお、マイコンからは、ニー
モニックへ変換される以前のプログラムコードをホスト
側へ伝送するように構成しておいて、ニーモニックへの
変換動作は、ホスト側で実行するようにしてもよい。ま
た、この逆アセンブル等のデバッグモニタも予めROM
5内に格納しておくが、この逆アセンブル動作について
は、その起動に際して特にアプリケーションプログラム
上のブレイクアドレスを指定することは行われない。
【0020】なお、図1及び図4に関しては、パッチ修
正の可能なマイコンであることを前提として説明を行っ
たが、必ずしもパッチ修正を実行するマイコンである必
要は無く、要するに、これらの図に示される2〜4及び
7〜9等の構成部分を備えたマイコンであればよい。た
だし、比較器7は、このようなハードの構成に限らずソ
フトウェアに置き換えてもよい。
【0021】
【発明の効果】ICEを使用することなく、マイコンを
制御機器に搭載した状態のままでハードウェアを含めて
プログラムのデバッグを行うことができるので、デバッ
グのために特別に評価用チップを作製する必要がない。
マイコン自身が、内部に組み込まれたデバッグ用プログ
ラムを実行することによりデバッグ動作を行うものであ
るため、ICEを使用する場合と異なってデバッグ処理
動作中であってもマイコン本体が動作状態にあり、デバ
ッグ処理動作中にも種々の割り込み処理を受け付けるこ
とができる。従って、デバッグのための様々な処理を行
っていくうえで操作がし易い。
【図面の簡単な説明】
【図1】本発明の1実施例の構成を示す図である。
【図2】同実施例における中断動作のためのフローを示
す図である。
【図3】同実施例における再開動作のためのフローを示
す図である。
【図4】本発明の他の実施例の構成を示す図である。
【図5】同他の実施例における中段動作のためのフロー
を示す図である。
【図6】本発明の更に他の実施例における中段動作及び
再開動作のためのフローを示す図である。
【図7】本発明の実施例における逆アセンブル動作のた
めのフローを示す図である。
【符号の説明】
1…CPU、 2…修正アドレスレジスタ、3…制
御フラグラッチ、 4…修正データレジスタ、5
…ROM、 6…RAM, 7…比較器、12
…ジャンプ先アドレスレジスタ、
フロントページの続き (72)発明者 山本 巌 東京都品川区北品川6丁目7番35号 ソニ ー株式会社内

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 (1)中央処理手段と、(2)アプリケ
    ーションプログラムが格納された固定記憶手段と、
    (3)オペレーターによって選択された所定アドレスが
    格納される第1記憶手段と、(4)デバッグ処理を開始
    させるためのデバッグ開始用データが格納される第2記
    憶手段と、(5)中央処理手段の実行アドレスと第1記
    憶手段に格納された所定アドレスとを比較する比較器
    と、(6)該比較器の比較出力が入力される切換回路
    と、を備えた制御用電子装置において、 前記切換回路は、前記実行アドレスが前記所定アドレス
    に一致したことを示す比較器の一致出力に基づいて、中
    央処理手段のアクセスを固定記憶手段から第2記憶手段
    へ切り換えるものであることを特徴とする制御用電子装
    置。
  2. 【請求項2】 固定記憶手段は、更に、デバッグ処理を
    実行するためのデバッグ用プログラムを格納し、かつ、
    デバッグ開始用データは、デバッグ用プログラムへのジ
    ャンプ命令であることを特徴とする請求項1記載の制御
    用電子装置。
  3. 【請求項3】 更に、第3記憶手段を備え、かつ、該第
    3記憶手段には、デバッグ開始用データに基づくジャン
    プ動作のジャンプ先アドレスが格納されることを特徴と
    する請求項2記載の制御用電子装置。
  4. 【請求項4】 デバッグ開始用データは、前記所定アド
    レスにおいて無限ループを実行させる命令であることを
    特徴とする請求項1記載の制御用電子装置。
JP33620994A 1994-12-22 1994-12-22 制御用電子装置 Expired - Fee Related JP3449812B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33620994A JP3449812B2 (ja) 1994-12-22 1994-12-22 制御用電子装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33620994A JP3449812B2 (ja) 1994-12-22 1994-12-22 制御用電子装置

Publications (2)

Publication Number Publication Date
JPH08179958A true JPH08179958A (ja) 1996-07-12
JP3449812B2 JP3449812B2 (ja) 2003-09-22

Family

ID=18296767

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33620994A Expired - Fee Related JP3449812B2 (ja) 1994-12-22 1994-12-22 制御用電子装置

Country Status (1)

Country Link
JP (1) JP3449812B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6954878B2 (en) 2000-12-28 2005-10-11 Seiko Epson Corporation Break board debugging device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6954878B2 (en) 2000-12-28 2005-10-11 Seiko Epson Corporation Break board debugging device

Also Published As

Publication number Publication date
JP3449812B2 (ja) 2003-09-22

Similar Documents

Publication Publication Date Title
US20100153786A1 (en) Processor, multiprocessor, and debugging method
JP2655615B2 (ja) 情報処理装置
JP2522158B2 (ja) マルチプロセッサシステムのプログラムデバッグ方法
JPH08179958A (ja) 制御用電子装置
JP2653412B2 (ja) ブレークポイント設定方法
JPH09259004A (ja) デバッグ方法
JP3111355B2 (ja) 計算機システム
JPH07152598A (ja) インサーキット・エミュレータ
JP3102381B2 (ja) タスクデバッグ装置、タスクデバッグ方法及びその記録媒体
JPH02135545A (ja) デバッガの実行制御処理方式
JP3410023B2 (ja) インサーキットエミュレータ
JPH11316691A (ja) オペレーティングシステムの実行方法及び、これを用いた情報処理装置
JPH05224894A (ja) オペレーティングシステムの切替え方式
JPH11175366A (ja) 電子回路解析装置、電子回路解析方法、電子回路解析プログラムを記録した媒体および電子回路解析システム
JPS63200242A (ja) ホツトスタンバイシステムの系切替え方式
JPH04123235A (ja) マイクロプログラムのデバッグ方式及び方法
JPS61184644A (ja) 仮想計算機システム制御方式
JPH08185341A (ja) Cpuシミュレータ
JP2003263335A (ja) デバッグモニター
JPH08161195A (ja) アドレストレース格納装置及びアドレストレース生成方法
JPH08328895A (ja) コンピュータ装置の中央処理制御装置(cpu)のデータバスラインを強制的に切り換えるインサーキットエミュレータ装置
JPH05233364A (ja) ブレークポイント設定方式
JPS61161556A (ja) 情報処理装置
JPS6091458A (ja) マイクロプロセツサのプログラムデバツグ装置
JPH04112341A (ja) マイクロコンピュータlsi

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20010918

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080711

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090711

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees