JP2004199333A - マイクロコンピュータおよびその評価装置 - Google Patents
マイクロコンピュータおよびその評価装置 Download PDFInfo
- Publication number
- JP2004199333A JP2004199333A JP2002366364A JP2002366364A JP2004199333A JP 2004199333 A JP2004199333 A JP 2004199333A JP 2002366364 A JP2002366364 A JP 2002366364A JP 2002366364 A JP2002366364 A JP 2002366364A JP 2004199333 A JP2004199333 A JP 2004199333A
- Authority
- JP
- Japan
- Prior art keywords
- address data
- address
- microcomputer
- data
- counter
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Debugging And Monitoring (AREA)
- Microcomputers (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
【解決手段】プログラムメモリのアドレスを指定するアドレスカウンタを有し、前記アドレスカウンタのアドレスデータを、前記アドレスデータを評価するための外部機器に出力するマイクロコンピュータにおいて、前記外部機器が分岐したときのアドレスデータのみを記憶するように、前記アドレスカウンタのアドレスデータが分岐したものであるかどうかを判別するための判別データを、このアドレスデータとともに前記外部機器に出力するアドレスデータ出力手段を、備えたことを特徴とする。
【選択図】 図1
Description
【発明の属する技術分野】
本発明は、マイクロコンピュータおよびその評価装置に関する。
【0002】
【従来の技術】
ワンチップマイクロコンピュータとは、ROM(プログラムメモリ)、RAM、CPU、周辺回路を単一の半導体チップ上に集積化してこの半導体チップを基板上に固定し、この半導体チップ上に形成されている入出力ポート(周辺回路)を外部ピンとワイヤーボンディングで接続し、外部ピンを露出させた状態でこの半導体チップを有する基板を樹脂部材(絶縁部材)で覆ったものである。また、最近のワンチップマイクロコンピュータとしては、ソフトウエアをROMに記憶するまでの時間、製造コスト等を考慮して、データを電気的に書き換え可能な不揮発性メモリ(例えばEEPROM)をマスクROMの代わりに集積化したものがある。
【0003】
ところで、ワンチップマイクロコンピュータのROMに記憶されているデータ(例えばプログラムデータ、テーブルデータ等)は、ワンチップマイクロコンピュータが制御を行う被制御体に応じて異なるものである。そのため、ワンチップマイクロコンピュータが上記の不揮発性メモリをROMとして有しているとき、被制御体の種類が変更されるその都度、デバッグツール(評価装置)で評価されたデータを用いて、ROMに記憶されているデータを書き換えることとなる。
【0004】
ここで、デバッグツールとは、ワンチップマイクロコンピュータと接続されることによって、ROMのアドレスを指定するアドレスカウンタのアドレスデータ、ROMのプログラムデータに基づく演算データ等の変化をリアルタイムで読み取ることで、プログラムデータの正誤を評価するものである。これにより、ROMに記憶されているデータを正しく書き換えることが可能となる。
【0005】
なお、デバッグツールに関する技術は、例えば、以下の特許文献1に開示されている。
【0006】
【特許文献1】
特開平11−282713号公報
【0007】
【発明が解決しようとする課題】
しかしながら、従来のデバッグツールでは、マイクロコンピュータが動作しているとき、アドレスカウンタのアドレスデータをリアルタイムで読み取って全て記憶しており、大容量の揮発性メモリまたは不揮発性メモリ等が必要である。そのため、上記のメモリへのアドレスデータの記憶速度が速くなると、一部のアドレスデータが記憶されなくなる可能性があり、データを正しく評価できなくなる問題があった。更に、デバッグツールが大型化するとともにコストアップする問題もあった。
【0008】
また、最近では、ワンチップマイクロコンピュータの演算処理速度は、数百MHzと高速化しているものがある。そのため、従来のデバッグツールでは、アドレスデータ、演算データ等の変化をリアルタイムで読み取ることができず、データを正しく評価できなくなる問題があった。
【0009】
また、ワンチップマイクロコンピュータの樹脂部材で覆われたパッケージは、小型機器(例えばデジタルカメラ、携帯電話)への内蔵を考慮して小型化し、これに伴って外部ピンの間隔は、きわめて狭くなっている。そのため、従来のデバッグツールでは、アドレスデータ、演算データ等を物理的に読み取ることができず、前者と同様に、データを正しく評価できなくなる問題があった。
【0010】
【課題を解決するための手段】
前記課題を解決するための主たる発明は、プログラムメモリのアドレスを指定するアドレスカウンタを有し、前記アドレスカウンタのアドレスデータを、前記アドレスデータを評価するための外部機器に出力するマイクロコンピュータにおいて、
前記外部機器が分岐したときのアドレスデータのみを記憶するように、前記アドレスカウンタのアドレスデータが分岐したものであるかどうかを判別するための判別データを、このアドレスデータとともに前記外部機器に出力するアドレスデータ出力手段を、
備えたことを特徴とするマイクロコンピュータである。
本発明の上記以外の特徴とするところは、本明細書および添付図面の記載により明らかとなる。
【0011】
【発明の実施の形態】
===開示の概要===
本明細書及び添付図面の記載により少なくとも以下の事項が明らかとなる。 プログラムメモリのアドレスを指定するアドレスカウンタを有し、前記アドレスカウンタのアドレスデータを、前記アドレスデータを評価するための外部機器に出力するマイクロコンピュータにおいて、前記外部機器が分岐したときのアドレスデータのみを記憶するように、前記アドレスカウンタのアドレスデータが分岐したものであるかどうかを判別するための判別データを、このアドレスデータとともに前記外部機器に出力するアドレスデータ出力手段を、備えたことを特徴とするマイクロコンピュータ。
【0012】
このマイクロコンピュータによれば、アドレスカウンタのアドレスデータが分岐したものであるかどうかを判別するための判別データをこのアドレスデータとともに外部機器に出力することとなる。つまり、外部機器は、分岐したときのアドレスデータ(必要最小限のアドレスデータ)を記憶するだけでよいので、小容量のメモリを設けることが可能となる。これにより、外部機器は、マイクロコンピュータの演算処理速度が高速化して上記メモリへのアドレスデータの記憶速度が速くなっても、必要とするアドレスデータを記憶してデータを正しく評価することが可能となる。また、外部機器の大型化およびコストアップを防止することも可能となる。
【0013】
また、かかるマイクロコンピュータにおいて、前記アドレスデータは、前記判別データが付されていることとしてもよい。
このマイクロコンピュータによれば、判別データと一体化しているアドレスデータを外部機器へ出力するので、外部機器としては、分岐したときのアドレスデータを効果的に記憶してデータを正しく評価することが可能となる。
【0014】
また、かかるマイクロコンピュータにおいて、前記アドレスデータ出力手段は、前記外部機器から供給されるマイクロコンピュータが動作するためのクロックより高い周波数のクロックを用いて、前記アドレスカウンタのアドレスデータのビット数より少ないビット数を単位として、前記アドレスカウンタのアドレスデータを前記外部機器に出力することとしてもよい。
このマイクロコンピュータによれば、外部機器からのクロックを入力するためのポートと、アドレスカウンタのアドレスデータを出力するための最小限のポートと、を設けることで、アドレスデータを外部機器へ出力することが可能となる。例えば、データを電気的に書き換え可能なプログラムメモリを有する量産用のマイクロコンピュータに適用すれば、被制御体を変更するその都度、外部機器でのアドレスデータの評価結果に基づいて、プログラムメモリのための正しい書き換えデータを得ることが可能となる。
【0015】
また、かかるマイクロコンピュータにおいて、前記アドレスデータ出力手段は、前記アドレスカウンタのアドレスデータをシリアルデータとして出力することとしてもよい。
このマイクロコンピュータによれば、外部機器からのクロックを入力するためのポートと、アドレスカウンタのアドレスデータを出力するためのポートとの数は、2ポートだけでよいこととなる。
【0016】
また、かかるマイクロコンピュータにおいて、前記アドレスデータ出力手段は、前記アドレスカウンタのアドレスデータを複数分割して出力することとしてもよい。
このマイクロコンピュータによれば、アドレスカウンタのアドレスデータをシリアルデータとする場合に比べて、外部機器から供給されるクロックの周波数を低下させることが可能となる。
【0017】
また、プログラムメモリのアドレスを指定するアドレスカウンタを有するマイクロコンピュータから、前記アドレスカウンタのアドレスデータを読み取るマイクロコンピュータの評価装置において、前記アドレスカウンタのアドレスデータが分岐したものであるかどうかを読み取り後に判別し、前記アドレスカウンタのアドレスデータが分岐したものであるときのみ、このアドレスデータを記憶するアドレスデータ記憶手段を、備えたことを特徴とするマイクロコンピュータの評価装置。また、かかるマイクロコンピュータの評価装置において、前記アドレスデータ記憶手段は、前記アドレスカウンタのアドレスデータが分岐していないものであるとき、このアドレスデータの記憶を禁止することとする。
このマイクロコンピュータの評価装置によれば、アドレスデータ記憶手段は、分岐したときのアドレスデータ(必要最小限のアドレスデータ)を記憶するだけでよいので、小容量のメモリを設けることが可能となる。これにより、アドレスデータ記憶手段は、マイクロコンピュータの演算処理速度が高速化して上記メモリへのアドレスデータの記憶速度が速くなっても、必要とするアドレスデータを記憶してデータを正しく評価することが可能となる。また、評価装置の大型化およびコストアップを防止することも可能となる。
【0018】
また、かかるマイクロコンピュータの評価装置において、前記アドレスデータ記憶手段は、前記アドレスデータが分岐したものであるかどうかを判別するための判別データを、前記アドレスデータとともに読み取ることとする。このとき、前記アドレスデータは、前記判別データが付されていることとしてもよい。
このマイクロコンピュータの評価装置によれば、判別データと一体化しているアドレスデータがマイクロコンピュータから供給されるので、分岐したときのアドレスデータを効果的に記憶してデータを正しく評価することが可能となる。
【0019】
また、かかるマイクロコンピュータの評価装置において、前記アドレスデータ記憶手段は、前記マイクロコンピュータが動作するためのクロックより高い周波数のクロックを用いて、前記アドレスカウンタのアドレスデータのビット数より少ないビット数を単位として、前記アドレスカウンタのアドレスデータを読み取ることとしてもよい。
このマイクロコンピュータの評価装置によれば、マイクロコンピュータが有するアドレスカウンタのアドレスデータを評価することに特化しているため、マイクロコンピュータの演算処理速度が速い場合であっても、アドレスカウンタのアドレスデータをリアルタイムで読み取って正しく評価することが可能となる。また、マイクロコンピュータとの接続線数が少ないため、マイクロコンピュータ自体が小型化している場合であっても、アドレスカウンタのアドレスデータをリアルタイムで読み取って正しく評価することが可能となる。
【0020】
===全体の構成===
図1を参照しつつ、本発明にかかる全体の概略構成について説明する。図1は、本発明のマイクロコンピュータおよびその評価装置の概略構成を示すブロック図である。なお、マイクロコンピュータは、データを電気的に書き換え可能なプログラムメモリを有する量産品であることとする。
図1において、マイクロコンピュータ2は、プログラムカウンタ4(アドレスカウンタ)と、ビット幅変換回路6(アドレスデータ出力手段)とを有している。
【0021】
プログラムカウンタ4は、マイクロコンピュータのプログラムメモリ(不図示)のアドレスを指定するためのものであり、所定バイナリ値のアドレスデータがセットされている。
【0022】
ビット幅変換回路6は、プログラムカウンタ4のアドレスデータを取り込んで、このアドレスデータの最上位ビット側にスタートビットおよび判別ビット(判別データ)からなるヘッダを付すものである。ここで、スタートビットは、複数の各アドレスデータを区切るためのものであり、論理値"0"であることとする。また、判別ビットは、プログラムカウンタ4のアドレスデータが+1インクリメントすることなく分岐したものであるかどうかを判別するためのものである。判別ビットは、プログラムメモリからのプログラムデータの解読結果から、プログラムカウンタ4のアドレスデータが+1インクリメントしたものであるときは論理値"0"となり、一方、プログラムカウンタ4のアドレスデータが分岐したものであるときは論理値"1"となることとする。なお、スタートビットおよび判別ビットは、上記の論理値とは逆の論理値であることとしてもよい。
【0023】
更に、ビット幅変換回路6は、プログラムカウンタ4のアドレスデータのビット数より少ないビット数を単位として、ヘッダを付しているアドレスデータを出力していくものである。例えば、ビット幅変換回路6は、パラレルシリアル変換回路であることとしてもよい。つまり、ビット幅変換回路6は、ヘッダを付しているアドレスデータがパラレルに入力されるとともに、このアドレスデータをシリアルに出力することとなる。また、ビット幅変換回路6は、ヘッダを付しているアドレスデータ(nビット)を複数(m:m<n)分割する回路であることとしてもよい。つまり、ビット幅変換回路6は、ヘッダを付しているアドレスデータがパラレルに入力されるとともに、このアドレスデータをn/mビットを単位とするm個のデータに分割して順次パラレルに出力することとなる。このビット幅変換回路6から得られるアドレスデータは、後述するアドレスデータを評価するためのデバッグツールに供給される。なお、ビット幅変換回路6からは、複数のアドレスデータが連続して出力されるので、スタートビットは、有効に作用することとなる。
【0024】
デバッグツール8(外部機器または評価装置)は、マイクロコンピュータ2のビット幅変換回路6から供給されるアドレスデータを評価するためのものであり、制御部10と、記憶手段12とを有している。なお、制御部10および記憶手段12は、請求項に言うアドレスデータ記憶手段を構成する。
【0025】
制御部10は、ビット幅変換回路6がアドレスデータを出力するためのクロックを発生するとともに、記憶手段12の書き込みおよび読み出しを制御するものである。プログラムカウンタ4にセットされるアドレスデータの値は、マイクロコンピュータ2が動作するためのシステムクロックに同期して、インクリメントまたは所定のアドレスデータに変更されるものである。そのため、制御部10は、マイクロコンピュータ2が動作するためのシステムクロックに比べて、高い周波数を有するクロックをビット幅変換回路6に供給することとなる。
【0026】
一例として、マイクロコンピュータ2が動作するためのシステムクロックが1MHz、ビット幅変換回路6が16ビットのアドレスデータ(ただし上位2ビットはヘッダである)をパラレルからシリアルへ変換するパラレルシリアル変換回路であるものとする。この場合、制御部10は、プログラムカウンタ4のアドレスデータが変更を受ける前にこのアドレスデータを取り込まなければならないため、16MHzのクロックをビット幅変換回路6に供給することとなる。これにより、ビット幅変換回路6は、16MHzのクロックに同期して、且つ、プログラムカウンタ4のアドレスデータの変更に確実に追従して、16ビットのアドレスデータをシリアル出力することとなる。
【0027】
また、他の例として、マイクロコンピュータ2が動作するためのシステムクロックが1MHz、ビット幅変換回路6が16ビットのアドレスデータA15〜A0(ただしA15はスタートビット、A14は判別ビットである)を4ビットを単位とするデータA15〜A12、A11〜A8、A7〜A4、A3〜A0に分割する回路であるものとする。この場合、制御部10は、プログラムカウンタ4のアドレスデータが変更を受ける前にこのアドレスデータを取り込まなければならないため、4MHzのクロックをビット幅変換回路6に供給することとなる。これにより、ビット幅変換回路6は、4MHzのクロックに同期して、且つ、プログラムカウンタ4のアドレスデータの変更に確実に追従して、4ビットデータA15〜A12、A11〜A8、A7〜A4、A3〜A0の順でパラレル出力することとなる。
【0028】
記憶手段12は、ビット幅変換回路6から得られるアドレスデータのうち、分岐したときのアドレスデータのみを記憶するものである。ここで、制御部10は、ビット幅変換回路6から得られるアドレスデータのうち、スタートビットおよび判別ビットが分離して供給されることにより、記憶手段12の書き込みを制御する。詳述すると、制御部10は、スタートビットが供給されて各アドレスデータを適切に区切り、判別ビットが供給されてアドレスデータが分岐したものであるかどうかを判別する。これにより、制御部10がアドレスデータを分岐したものであると判別したとき、記憶手段12は、制御部10で指定されるアドレスに、ビット幅変換回路6から上記の例のようにして得られるアドレスデータを順次記憶していくこととなる。なお、記憶手段12としては、SRAM、DRAM等の揮発性メモリ、EPROM、EEPROM等の不揮発性メモリ、または、ハードディスク等を用いることができる。しかし、記憶手段12としては、ビット幅変換回路6から得られるアドレスデータを確実に記憶できるものであれば、上記以外の記憶素子を用いることとしてもよい。
【0029】
ここで、制御部10は、マイクロコンピュータ2が動作を開始するための開始信号と、マイクロコンピュータ2が動作を停止するための停止信号とを、マイクロコンピュータ2に供給することによって、マイクロコンピュータ2の動作期間を適宜制御するものでもある。これにより、制御部10では、マイクロコンピュータ2の動作を停止させている期間に、記憶手段12が現時点まで記憶している分岐時のアドレスデータを読み出して、アドレスデータの変化を基にプログラムメモリのデータを、全体を通してまたは断続的に評価することが可能となる。
【0030】
===マイクロコンピュータの構成===
次に、図2を参照しつつ、本発明のマイクロコンピュータについて説明する。図2は、本発明のマイクロコンピュータの内部要素を示すブロック図である。なお、図1と同一要素については同一番号を付すものとする。
図2において、複数の内部要素が内部バス14を介して接続されている。なお、内部バス14は、アドレスバスおよびデータバスを有するものである。しかし、アドレスバスおよびデータバスを分けたものであってもよい。
【0031】
先ず、ROM16(プログラムメモリ)は、マイクロコンピュータ2が演算処理を適宜実行するためのプログラムデータ、マイクロコンピュータ2が演算処理を適宜実行するときに参照するテーブルデータ等が予め記憶されているものである。なお、本実施形態において、ROM16は、データを書き換え可能な不揮発性メモリとして、EEPROM(フラッシュROMを含む)またはEPROMであることが望ましい。例えば、EPROMを内蔵するマイクロコンピュータ2では、半導体チップ上の樹脂部材を切り欠いて紫外線照射用の窓部を設けることで、量産品として使用可能となる。
【0032】
プログラムカウンタ4について詳述する。プログラムカウンタ4は、ROM16の全アドレスの中で、演算処理を実行するためのプログラムデータまたはテーブルデータが記憶されているアドレスを指定するものである。プログラムカウンタ4は、マイクロコンピュータ2が電源投入されたとき、マイクロコンピュータ2を初期化するためのプログラムデータが記憶されているROM16のアドレスデータがプリセットされる。その後、プログラムカウンタ4のアドレスデータは、システムクロックのタイミングで、+1インクリメントするか、ROM16から読み出されるプログラムデータの解読結果または割り込み要求に従って所定のアドレスデータに分岐(ジャンプ)される。これにより、ROM16は、プログラムカウンタ4でアドレスを指定され、このアドレスに記憶されているプログラムデータまたはテーブルデータを読み出すこととなる。
【0033】
インストラクションレジスタ18は、ROM16から読み出されたプログラムデータをシステムクロックのタイミングで一時保持するものである。インストラクションデコーダ20は、インストラクションレジスタ18から出力されるプログラムデータ(バイナリデータ)をPLA(Programmable Logic Array)で解読し、演算処理を実行するための制御信号を出力するものである。
【0034】
RAM22は、演算処理に関するデータの書き込みおよび読み出しを行うものである。なお、本実施形態において、RAM22としては、演算処理に関するデータを効果的に書き換えできるSRAM等の揮発性メモリを用いることが望ましい。
【0035】
ALU24(演算論理ユニット)は、2入力および1出力からなり、ROM16から読み出されたプログラムデータの解読結果に従って、2入力データを演算処理し、このとき得られる出力データを内部バス14へ転送するものである。ALU24は、必要に応じて、出力データを一方の入力に供給して再度演算処理を実行する。
【0036】
アキュムレータ26、レジスタ群28は、ALU24から得られる出力データ等の演算処理に関するデータを一時保持するものである。
【0037】
スタックポインタ30は、所定の割り込み処理に応じて現プログラムルーチンとは異なるプログラムルーチンへ移行するとき、現プログラムルーチンの復帰先となるROM16のアドレスデータを保持するものである。なお、マイクロコンピュータ2が多重の割り込み処理を実行可能である場合、スタックポインタ30は、多重の割り込み処理数に応じた階層数を有することとする。
【0038】
発振回路32は、マイクロコンピュータ2の内部要素を駆動するためのシステムクロックの基となる発振クロックを発生するものである。本実施形態では、発振回路32は、それ自体で発振周波数を生成する自走発振型であることとする。例えば、発振回路32としては、固有振動子を有するセラミック発振回路および水晶発振回路、RC発振回路等を適用可能である。なお、発振回路32の代わりに、外部クロックを発振クロックとして供給する他走発振型としてもよい。
【0039】
クロックジェネレータ34は、発振回路32から発生する発振クロックを所定数分周して、マイクロコンピュータ2の内部要素を駆動するためのシステムクロックを発生するものである。
【0040】
タイマ36は、クロックジェネレータ34が発振クロックを所定数分周して得られる1秒信号を計時し、計時出力を内部バス14へ転送するものである。なお、タイマ36は、インストラクションデコーダ20から得られる制御信号に応じて、リセットされるとともに計時を行う。
【0041】
割り込み制御部38は、現プログラムルーチンとは異なるプログラムルーチンを実行するための割り込み要求を発生するものである。例えば、割り込み制御部38は、タイマ36の1秒ごとの計時変化が供給されることにより、タイマ割り込み要求を発生する。このとき、ALU24では、ROM16から読み出されたプログラムデータの解読結果に従って、例えば時計の日、時、分、秒のインクリメント、桁上げ等の演算処理のみを実行する。また、割り込み制御部38は、マイクロコンピュータ2の割り込み入力端子(不図示)へ所定の外部信号が供給されることにより、外部割り込み要求を発生する。このとき、ALU24では、ROM16から読み出されたプログラムデータの解読結果に従って、外部信号が要求する演算処理のみを実行する。また、割り込み制御部38は、ウォッチドッグタイマ40からマイクロコンピュータ2が異常であることを示す信号が供給されることにより、スタンバイ制御部42を制御し、現在の演算処理を停止してスタンバイモードとする。なお、割り込み要求は、上記の割り込み要求に限定されるものではない。例えば、ALU24の演算結果が所定値となったとき、割り込み要求を発生させることも可能である。
【0042】
シリアル入出力ポート44、入出力ポート46、48、50、52は、マイクロコンピュータ2と外部機器(本実施形態ではデバッグツール8)との間のインターフェースを行うものであり、一方の入出力側は内部バス14と接続され、他方の入出力側は外部ピン(不図示)と接続されている。
【0043】
入出力ポート54は、マイクロコンピュータ2とデバッグツール8との間のインターフェースを行うものであり、一方の入出力側は外部ピン(不図示)と接続され、他方の入出力側はビット幅変換回路6のクロック入力およびデータ出力と接続されている。つまり、ビット幅変換回路6がアドレスデータを出力するためのクロックは、制御部10から入出力ポート54を介してビット幅変換回路6に入力されることとなる。
【0044】
===マイクロコンピュータとデバッグツールの動作===
次に、図3を参照しつつ、マイクロコンピュータ2およびデバッグツール8の動作について説明する。図3は、本発明の評価装置(デバッグツール8)の判別動作を説明するためのフローチャートである。
【0045】
先ず、デバッグツール8の制御部10では、マイクロコンピュータ2が動作を開始するための開始信号およびマイクロコンピュータ2が動作を停止するための停止信号を出力し、マイクロコンピュータ2の割り込み入力端子に供給する。これにより、マイクロコンピュータ2は、これらの開始信号および停止信号と対応する外部割り込み要求を受けて、ROM16のプログラムデータを解読して演算処理を行うとともに、このときのプログラムカウンタ4のアドレスデータをデバッグツール8に出力するためのスタンバイモードとなる。
【0046】
そして、デバッグツール8の制御部10では、マイクロコンピュータが動作するためのシステムクロックより高い周波数のクロックを出力し、マイクロコンピュータ2の入出力ポート54に供給する。なお、マイクロコンピュータのシステムクロックの周波数とこのクロックの周波数との関係は、上記に説明したとおりである(S2)。
【0047】
これにより、マイクロコンピュータ2では、ROM16のプログラムデータを解読して演算処理を行うとともに、このときのプログラムカウンタ4のアドレスデータをヘッダとともにデバッグツール8に出力することとなる。例えば、ビット幅変換回路6がパラレルシリアル変換回路であるとき、ヘッダが付されたアドレスデータは、ビット幅変換回路6から入出力ポート54を介してデバッグツール8へシリアル出力される。また、ビット幅変換回路6がアドレスデータを複数分割する回路であるとき、ヘッダが付されたアドレスデータは、複数分割された後、ビット幅変換回路6から入出力ポート54を介して順次パラレル出力される。なお、入出力ポート54は、クロックの入力とアドレスデータの出力(アドレスデータを複数分割したときは分割後の個々のデータビット数)とを可能とするビット数だけ、予め設けておけばよい。(S4)。
【0048】
デバッグツール8の制御部10では、アドレスデータからヘッダを抽出して、スタートビットからアドレスデータを適切に区切るとともに、判別ビットの論理値からこのときのアドレスデータが分岐したものであるかどうかを判別することとなる(S6)。
【0049】
デバッグツール8の制御部10では、判別ビットが論理値"1"であるものと判別すると(S8:YES)、このときのアドレスデータは分岐したものとなるので、このアドレスデータを記憶手段12の指定アドレスに記憶して、上記のステップS4からの処理を再度実行することとなる(S10)。
【0050】
一方、デバッグツール8の制御部10では、判別ビットが論理値"0"であるものと判別すると(S8:NO)、このときのアドレスデータは前のアドレスデータを+1インクリメントしたものとなるので、このアドレスデータを記憶手段12に記憶せずに、上記のステップS4からの処理を再度実行することとなる。つまり、分岐しないアドレスデータは、+1インクリメントするだけで不規則な変化を生じないので、記憶手段12にわざわざ記憶する必要がない。
【0051】
その後、マイクロコンピュータ2では、供給されている停止信号に応じて、適宜のタイミングで動作を停止する。これにより、デバッグツール8の制御部10では、アドレスデータが供給されなくなるので、クロックの出力を停止して、一連の動作が終了する。
【0052】
以上より、デバッグツール8の記憶手段12には、プログラムカウンタ4のアドレスデータのうち、分岐したときのアドレスデータのみが順次記憶されていくこととなる。そして、デバッグツール8は、プログラムカウンタ4のアドレスデータを評価することに特化しているため、マイクロコンピュータ2の演算処理速度が速い場合であっても、プログラムカウンタ4のアドレスデータを正しく評価することが可能となる。また、マイクロコンピュータ2とデバッグツール8との間には、開始信号、停止信号、クロック、アドレスデータのための接続線だけ設ければよいので、マイクロコンピュータ2自体が小型化している場合であっても、プログラムカウンタ4のアドレスデータを正しく評価することが可能となる。
【0053】
===その他の実施形態===
以上、本発明に係るマイクロコンピュータおよびその評価装置について説明したが、上記した発明の実施の形態は、本発明の理解を容易とするためのものであり、本発明を限定するものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得るとともに、本発明にはその等価物が含まれることはもちろんである。
【0054】
≪判別ビット≫
本実施形態では、判別ビットはアドレスデータのヘッダとなっているが、これに限定されるものではない。例えば、判別ビットは、マイクロコンピュータ2からデバッグツール8へアドレスデータとは独立するビット線を用いて出力することとしてもよい。これにより、デバッグツール8の制御部10では、アドレスデータから判別ビットを抽出する処理を省略できることとなる。
【0055】
≪アドレスデータ≫
本実施形態では、複数のアドレスデータの区切りを判別するため、各アドレスデータの最上位にスタートビットを付すこととしているが、これに限定されるものではない。例えば、各アドレスデータの最下位または中間ビットの所定位置にスタートビットと同様の判別ビットを付すこととしてもよい。
【0056】
≪マイクロコンピュータ≫
本実施形態では、マイクロコンピュータ2はデータを電気的に書き換え可能なプログラムメモリを有する量産品であることとしているが、これに限定されるものではない。例えば、マイクロコンピュータ2は、マスクROMまたはワンタイムEPROM等を有するマイクロコンピュータを量産する前に使用する、評価用のマイクロコンピュータであってもよい。
【0057】
【発明の効果】
本発明によれば、評価装置は、分岐したときの必要最小限のアドレスデータを記憶するだけでよいので、小容量のメモリを設けることが可能となる。これにより、評価装置は、マイクロコンピュータの演算処理速度が高速化してメモリへのアドレスデータの記憶速度が速くなっても、必要とするアドレスデータを記憶してデータを正しく評価することが可能となる。また、評価装置の大型化およびコストアップを防止することも可能となる。
【図面の簡単な説明】
【図1】本発明のマイクロコンピュータおよびその評価装置の概略構成を示すブロック図である。
【図2】本発明のマイクロコンピュータの内部要素を示すブロック図である。
【図3】本発明のマイクロコンピュータの評価装置における判別動作を説明するためのフローチャートである。
【符号の説明】
2 マイクロコンピュータ
4 プログラムカウンタ
6 ビット幅変換回路
8 デバッグツール
10 制御部
12 記憶手段
16 ROM
44 シリアル入出力ポート
46、48、50、52、54 入出力ポート
Claims (10)
- プログラムメモリのアドレスを指定するアドレスカウンタを有し、前記アドレスカウンタのアドレスデータを、前記アドレスデータを評価するための外部機器に出力するマイクロコンピュータにおいて、
前記外部機器が分岐したときのアドレスデータのみを記憶するように、前記アドレスカウンタのアドレスデータが分岐したものであるかどうかを判別するための判別データを、このアドレスデータとともに前記外部機器に出力するアドレスデータ出力手段を、
備えたことを特徴とするマイクロコンピュータ。 - 前記アドレスデータは、前記判別データが付されていることを特徴とする請求項1記載のマイクロコンピュータ。
- 前記アドレスデータ出力手段は、前記外部機器から供給されるマイクロコンピュータが動作するためのクロックより高い周波数のクロックを用いて、前記アドレスカウンタのアドレスデータのビット数より少ないビット数を単位として、前記アドレスカウンタのアドレスデータを前記外部機器に出力することを特徴とする請求項1または2記載のマイクロコンピュータ。
- 前記アドレスデータ出力手段は、前記アドレスカウンタのアドレスデータをシリアルデータとして出力することを特徴とする請求項1乃至3の何れかに記載のマイクロコンピュータ。
- 前記アドレスデータ出力手段は、前記アドレスカウンタのアドレスデータを複数分割して出力することを特徴とする請求項1乃至3の何れかに記載のマイクロコンピュータ。
- プログラムメモリのアドレスを指定するアドレスカウンタを有するマイクロコンピュータから、前記アドレスカウンタのアドレスデータを読み取るマイクロコンピュータの評価装置において、
前記アドレスカウンタのアドレスデータが分岐したものであるかどうかを読み取り後に判別し、前記アドレスカウンタのアドレスデータが分岐したものであるときのみ、このアドレスデータを記憶するアドレスデータ記憶手段を、
備えたことを特徴とするマイクロコンピュータの評価装置。 - 前記アドレスデータ記憶手段は、前記アドレスカウンタのアドレスデータが分岐していないものであるとき、このアドレスデータの記憶を禁止することを特徴とする請求項6記載のマイクロコンピュータの評価装置。
- 前記アドレスデータ記憶手段は、前記アドレスデータが分岐したものであるかどうかを判別するための判別データを、前記アドレスデータとともに読み取ることを特徴とする請求項6または7記載のマイクロコンピュータの評価装置。
- 前記アドレスデータは、前記判別データが付されていることを特徴とする請求項8記載のマイクロコンピュータの評価装置。
- 前記アドレスデータ記憶手段は、前記マイクロコンピュータが動作するためのクロックより高い周波数のクロックを用いて、前記アドレスカウンタのアドレスデータのビット数より少ないビット数を単位として、前記アドレスカウンタのアドレスデータを読み取ることを特徴とする請求項6乃至9の何れかに記載のマイクロコンピュータの評価装置。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002366364A JP2004199333A (ja) | 2002-12-18 | 2002-12-18 | マイクロコンピュータおよびその評価装置 |
CNB2003101187892A CN100395716C (zh) | 2002-12-18 | 2003-12-03 | 微型计算机及其评价装置 |
TW092134966A TWI277899B (en) | 2002-12-18 | 2003-12-11 | Microcomputer and evaluation device thereof |
KR1020030092291A KR100545969B1 (ko) | 2002-12-18 | 2003-12-17 | 마이크로컴퓨터 및 그 평가 장치 |
US10/741,742 US7185117B2 (en) | 2002-12-18 | 2003-12-18 | Microcomputer and evaluation device, evaluation method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002366364A JP2004199333A (ja) | 2002-12-18 | 2002-12-18 | マイクロコンピュータおよびその評価装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004199333A true JP2004199333A (ja) | 2004-07-15 |
Family
ID=32763590
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002366364A Pending JP2004199333A (ja) | 2002-12-18 | 2002-12-18 | マイクロコンピュータおよびその評価装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7185117B2 (ja) |
JP (1) | JP2004199333A (ja) |
KR (1) | KR100545969B1 (ja) |
CN (1) | CN100395716C (ja) |
TW (1) | TWI277899B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021075531A1 (ja) * | 2019-10-18 | 2021-04-22 | ローム株式会社 | トレース回路、半導体装置、トレーサ、トレースシステム |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7373565B2 (en) * | 2005-08-23 | 2008-05-13 | Hewlett-Packard Development Company, L.P. | Start/stop circuit for performance counter |
CN109116972B (zh) * | 2017-06-23 | 2023-05-12 | 三垦电气株式会社 | 微型计算机 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4989207A (en) * | 1988-11-23 | 1991-01-29 | John Fluke Mfg. Co., Inc. | Automatic verification of kernel circuitry based on analysis of memory accesses |
JP2845155B2 (ja) * | 1995-02-07 | 1999-01-13 | 日本電気株式会社 | シングルチップマイクロコンピュータのエミュレーションチップ |
JP3684831B2 (ja) | 1998-03-31 | 2005-08-17 | セイコーエプソン株式会社 | マイクロコンピュータ、電子機器及びデバッグシステム |
JP2000013414A (ja) * | 1998-06-25 | 2000-01-14 | Fujitsu Ltd | 装置内監視制御システム |
CN1071038C (zh) * | 1998-08-04 | 2001-09-12 | 英业达股份有限公司 | 用于调试串行通讯的诊断装置 |
JP2000259408A (ja) * | 1999-03-08 | 2000-09-22 | Texas Instr Inc <Ti> | 遅延スロットにおけるソフトウェアブレークポイント |
US6502210B1 (en) * | 1999-10-01 | 2002-12-31 | Stmicroelectronics, Ltd. | Microcomputer debug architecture and method |
-
2002
- 2002-12-18 JP JP2002366364A patent/JP2004199333A/ja active Pending
-
2003
- 2003-12-03 CN CNB2003101187892A patent/CN100395716C/zh not_active Expired - Fee Related
- 2003-12-11 TW TW092134966A patent/TWI277899B/zh not_active IP Right Cessation
- 2003-12-17 KR KR1020030092291A patent/KR100545969B1/ko not_active IP Right Cessation
- 2003-12-18 US US10/741,742 patent/US7185117B2/en not_active Expired - Lifetime
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021075531A1 (ja) * | 2019-10-18 | 2021-04-22 | ローム株式会社 | トレース回路、半導体装置、トレーサ、トレースシステム |
JP7489398B2 (ja) | 2019-10-18 | 2024-05-23 | ローム株式会社 | トレース回路、半導体装置、トレーサ、トレースシステム |
US12086042B2 (en) | 2019-10-18 | 2024-09-10 | Rohm Co., Ltd. | Tracing circuit, semiconductor device, tracer, and tracing system |
Also Published As
Publication number | Publication date |
---|---|
KR20040054528A (ko) | 2004-06-25 |
CN100395716C (zh) | 2008-06-18 |
US7185117B2 (en) | 2007-02-27 |
CN1508686A (zh) | 2004-06-30 |
KR100545969B1 (ko) | 2006-01-26 |
TWI277899B (en) | 2007-04-01 |
US20050060523A1 (en) | 2005-03-17 |
TW200415510A (en) | 2004-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110634530B (zh) | 芯片的测试系统和测试方法 | |
TWI488110B (zh) | 狀態機引擎及其方法 | |
US5454114A (en) | Microcontroller power-up delay | |
JPH11353300A (ja) | 半導体素子のためのプログラム可能ピンの指定 | |
EP0614550A1 (en) | Self-programming microcontroller with stored instruction to command program from external memory | |
JPS58151648A (ja) | プログラムパツチ手段を有するデ−タ処理装置 | |
US20080016415A1 (en) | Evaluation system and method | |
US10074436B1 (en) | Memory device and data reading method thereof | |
US5455937A (en) | Microcontroller with fuse-emulating latches | |
JP2581018B2 (ja) | データ処理装置 | |
JP2004199334A (ja) | マイクロコンピュータおよびその評価装置 | |
JP2004199333A (ja) | マイクロコンピュータおよびその評価装置 | |
JP2006294005A (ja) | プログラマブル・コントローラ | |
US20110138158A1 (en) | Integrated circuit | |
CN208848201U (zh) | 一种安全芯片 | |
JPH08314757A (ja) | ブレイクポイントの組合せが確認された時命令プログラムの実行を停止する手段を備える集積回路 | |
JPH06324906A (ja) | シングルチップマイクロコンピュータ | |
JP3588951B2 (ja) | マイクロコンピュータのプログラム変更装置 | |
JP2002287956A (ja) | マイクロコンピュータ | |
JPH01166138A (ja) | 情報処理装置の診断方式 | |
JPS61235953A (ja) | 1チツプマイクロコンピユ−タ | |
JPH09130233A (ja) | フィールドプログラマブルゲートアレイ | |
JP2006318172A (ja) | マイクロコンピュータ | |
JP2004061369A (ja) | 半導体集積回路試験装置及び方法 | |
JPH04277847A (ja) | メモリ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20040928 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051117 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080521 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080610 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080714 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090106 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090512 |