JP2005276065A - エミュレータ - Google Patents
エミュレータ Download PDFInfo
- Publication number
- JP2005276065A JP2005276065A JP2004091807A JP2004091807A JP2005276065A JP 2005276065 A JP2005276065 A JP 2005276065A JP 2004091807 A JP2004091807 A JP 2004091807A JP 2004091807 A JP2004091807 A JP 2004091807A JP 2005276065 A JP2005276065 A JP 2005276065A
- Authority
- JP
- Japan
- Prior art keywords
- rom
- cpu
- program
- address
- ram
- 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
Landscapes
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
【解決手段】 評価用マイコン13は、CPU16がROM17に記憶されているプログラムを実行することにより、評価対象の制御装置の動作をエミュレートするようになっている。ここで、ROM17の最上位ビット17aは停止用ビットに指定されており、ブレークポイントを設定したいアドレスの最上位ビット17aをセットする。CPU16がROM17にアクセスした際に、そのアドレスの最上位ビット17aがセットされていた場合は、CPU16に対してHalt信号を与えるので、CPU16は、そのアドレスで停止するようになる。従って、CPU16の停止状態で評価用マイコン13の状態を観察することによりプログラムを適切にデバッグすることができる。
【選択図】 図1
Description
また、プログラムを実行途中で停止して評価する方法として、プログラムにブレークポイント(HALT命令)を設定し、ブレークポイントでプログラムを停止することが行われている。このようにプログラムにブレークポイントを設定する方法では、ブレークポイントを任意に多数設定することができるものの、このようなブレークポイントの変更にはROM4に記憶されたプログラム全体の書換えが必要であり、1回の書換えで必要となる時間が数分要することから、プログラムをデバッグするのに多大の時間を要する。
そして、停止用ビットがセットされたアドレスをCPUがアクセスすると、出力手段がCPUに対して最優先割込の停止信号を出力する。これにより、CPUは、停止信号を最優先で受付けて停止状態となるので、その状態でCPUの状態を観測することができる。従って、ROMの任意のアドレスにブレークポイントを設定することができるので、多数のブレークポイントを設定することができる。
請求項3の発明によれば、ROMをRAMに置換えることができる所定アドレス領域を変更することができるので、ROM全体のアドレスにわたってブレークポイントの書換え時間を大幅に短縮することができる。
このエミュレータ12とは、ユーザアプリケーションの動作確認を行うためのもので、最終的には、シングルチップマイコン(CPU、ROM、RAM、I/Oを1つのパッケージに収めたマイコン)のROMに実装されるユーザプログラムの動作と同等の動作を行う装置であり、一般的には1命令毎に汎用レジスタ、RAM、I/Oの変化などを確認することができる。また、ROM上の所定のアドレス実行、RAM、I/Oなどがある値になった場合の条件などにより連続実行状態によるユーザプログラムを一時停止状態に遷移させて、汎用レジスタ、RAM、I/Oなどの状態を確認することができる装置である。
評価用マイコン13は、CPU16、ROM17、RAM18、代替RAM19を備えて構成されている。ROM17には、パソコン11側からICEコントローラ14を介してプログラムがダウンロードされ、CPU16は、ROM17からプログラムを読出すことにより評価対象のシングルチップマイコンの動作をエミュレートするようになっている。
さて、ユーザがアプリケーションのプログラムを完成したときは、そのプログラムの動作をエミュレータ12で検査する。つまり、作成したプログラムの確度を向上させるためにデバッグするのである。
ここで、プログラムを固定的なアドレスで停止して検査したい場合は、パソコン11のICE用コントロールソフトウエアを起動し、プログラムの任意の位置にブレークポイントを指定する。このような指定は、プログラムをニーモニックで示したエディタ画面においてブレークポイントを示すソースコードを挿入する。
ここで、CPU16がROM17の所定アドレスにアクセスした際に、そのアドレスの最上位ビット17aがセットされていた場合は、Halt信号出力回路20からCPU16に対してHalt信号が出力される。このHalt信号はCPU16に対して最優先で受付けられるNMI信号であることから、CPU16は、現在の状態にかかわらずブレークポイントが設定されたアドレスで停止することになる。従って、ユーザは、パソコン11に対する操作によりCPU16のレジスタの内容、アドレスバス、データバスの出力状態、RAM18の記憶内容を観測することにより、プログラムが正常に動作しているかを判断し、正常に動作していない場合は、プログラムをデバッグし、ROM17に再度ダウンロードして再実行する。この場合、必要に応じてブレークポイントの位置を変更することにより、任意のアドレスでCPU16を停止してデバッグを効率よく行うことができる。
そこで、本実施例では、このようにブレークポイントを頻繁に変更するような場合は、ある特定範囲の狭いアドレス領域をデバッグするような場合であることに着目し、その所定アドレス領域をROM17から代替RAM19に置換えることにより書換え時間の短縮を図った。
そして、プログラムの所定アドレス領域における任意のブレークポイントにHALT命令が挿入されたプログラムをROM17に書込む。この場合、所定アドレス領域以外のアドレスに関しては、ROM17がチップセレクトされることから、当該ROM17に命令が書込まれ、所定アドレス領域に関しては、代替RAM19がチップセレクトされることから、当該代替RAM19に命令が書込まれることになる。
ここで、所定アドレス領域でブレークポイントを変更したい場合は、HALT命令の位置を変更したプログラムを書込む。この場合、所定アドレス領域以外のアドレスに関しては、ROM17に既に書込まれていることから、所定アドレス領域だけ修正された命令を書込む。これにより、代替RAM19のみプログラムが書換えられるので、プログラムの書換え時間を大幅に短縮することができる。
本発明は、上記実施例に限定されることなく、次のように変形または拡張できる。
停止用ビットをROM17の最上位ビット17aに設けるのに代えて、ROMの各アドレスと対応したアドレスを有するメモリの1ビットを用いるようにしてもよい。
Claims (3)
- ROMに記憶されたプログラムをCPUが実行することにより評価対象の制御装置の動作をエミュレートするエミュレータにおいて、
前記ROMの各アドレスに対応して設けられた停止用ビットと、
前記CPUにより前記ROMのアドレスがアクセスされたときは、そのアドレスに対応した停止用ビットの状態を判断し、当該停止用ビットがセットされていたときは、前記CPUに対して最優先割込の停止信号を出力する出力手段とを備えたことを特徴とするエミュレータ。 - 前記ROMよりも小さなメモリ容量の代替RAMと、
前記ROMの所定アドレス領域が前記CPUによりアクセスされたときは、そのアクセスを無効とすると共に、前記代替RAMに対するアクセスを有効化するアクセス切替手段とを備え、
前記代替RAMに停止命令が設定されたプログラムを書込むことを特徴とする請求項1記載のエミュレータ。 - 前記アクセス切替手段は、前記CPUによりアクセスされる際の所定アドレス領域を変更可能に設けられていることを特徴とする請求項2記載のエミュレータ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004091807A JP2005276065A (ja) | 2004-03-26 | 2004-03-26 | エミュレータ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004091807A JP2005276065A (ja) | 2004-03-26 | 2004-03-26 | エミュレータ |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005276065A true JP2005276065A (ja) | 2005-10-06 |
Family
ID=35175644
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004091807A Pending JP2005276065A (ja) | 2004-03-26 | 2004-03-26 | エミュレータ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005276065A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210334197A1 (en) * | 2020-04-28 | 2021-10-28 | Salesforce.Com, Inc. | Browser-based tests for hybrid applications using a launcher plug-in |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01155599A (ja) * | 1987-12-11 | 1989-06-19 | Nec Home Electron Ltd | 記憶装置 |
JPH03266141A (ja) * | 1990-03-16 | 1991-11-27 | Nec Corp | マイクロプロセッサシステム |
JPH04337844A (ja) * | 1991-05-15 | 1992-11-25 | Fujitsu Ltd | 半導体記憶装置及び半導体集積回路装置 |
JPH05334071A (ja) * | 1992-05-28 | 1993-12-17 | Matsushita Electric Ind Co Ltd | ワンチップマイクロコンピュータ |
JPH0793177A (ja) * | 1993-09-27 | 1995-04-07 | Nec Corp | エミュレーションチップ及びインサーキットエミュレー タ |
JP2001265620A (ja) * | 2000-03-22 | 2001-09-28 | Kyocera Corp | Romのプログラムデバッグ方式 |
JP2001318802A (ja) * | 2000-05-10 | 2001-11-16 | Nec Microsystems Ltd | インサーキットエミュレータ |
JP2002007164A (ja) * | 2000-06-27 | 2002-01-11 | Seiko Epson Corp | 半導体集積回路用チップ及びエミュレーションシステム |
JP2002082819A (ja) * | 2000-09-11 | 2002-03-22 | Hitachi Ltd | 半導体集積回路装置 |
JP2003316484A (ja) * | 2002-04-25 | 2003-11-07 | Denso Corp | Cpu開発支援システム及び保護装置 |
-
2004
- 2004-03-26 JP JP2004091807A patent/JP2005276065A/ja active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01155599A (ja) * | 1987-12-11 | 1989-06-19 | Nec Home Electron Ltd | 記憶装置 |
JPH03266141A (ja) * | 1990-03-16 | 1991-11-27 | Nec Corp | マイクロプロセッサシステム |
JPH04337844A (ja) * | 1991-05-15 | 1992-11-25 | Fujitsu Ltd | 半導体記憶装置及び半導体集積回路装置 |
JPH05334071A (ja) * | 1992-05-28 | 1993-12-17 | Matsushita Electric Ind Co Ltd | ワンチップマイクロコンピュータ |
JPH0793177A (ja) * | 1993-09-27 | 1995-04-07 | Nec Corp | エミュレーションチップ及びインサーキットエミュレー タ |
JP2001265620A (ja) * | 2000-03-22 | 2001-09-28 | Kyocera Corp | Romのプログラムデバッグ方式 |
JP2001318802A (ja) * | 2000-05-10 | 2001-11-16 | Nec Microsystems Ltd | インサーキットエミュレータ |
JP2002007164A (ja) * | 2000-06-27 | 2002-01-11 | Seiko Epson Corp | 半導体集積回路用チップ及びエミュレーションシステム |
JP2002082819A (ja) * | 2000-09-11 | 2002-03-22 | Hitachi Ltd | 半導体集積回路装置 |
JP2003316484A (ja) * | 2002-04-25 | 2003-11-07 | Denso Corp | Cpu開発支援システム及び保護装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210334197A1 (en) * | 2020-04-28 | 2021-10-28 | Salesforce.Com, Inc. | Browser-based tests for hybrid applications using a launcher plug-in |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6094730A (en) | Hardware-assisted firmware tracing method and apparatus | |
US6662314B1 (en) | Microcomputer including program for rewriting data in an internal flash memory | |
JPH06314213A (ja) | デバッグ装置 | |
US6798713B1 (en) | Implementing software breakpoints | |
US7506206B2 (en) | Mechanism for providing program breakpoints in a microcontroller with flash program memory | |
US5901283A (en) | Microcomputer | |
JP2006507586A (ja) | 埋め込みシステムの解析装置及び方法 | |
JP2007257441A (ja) | プロセッサおよびプロセッサ制御方法 | |
CN101095119B (zh) | 用于分析具有测试接口的嵌入式***的装置和方法 | |
CN114168073B (zh) | 固态硬盘调试空间的访问方法及装置 | |
JP2005276065A (ja) | エミュレータ | |
JP2001265620A (ja) | Romのプログラムデバッグ方式 | |
KR100543152B1 (ko) | 마이크로프로세서 및 마이크로프로세서의 처리 방법 | |
JP2006293824A (ja) | 半導体装置 | |
JP2004094451A (ja) | オンチップjtagインタフェース回路およびシステムlsi | |
JPH1040130A (ja) | マイクロコンピュータ | |
US7596717B2 (en) | Microcomputer and debugging method | |
JP4848126B2 (ja) | マイクロコンピュータ、マイクロコンピュータにおける不揮発性メモリのデータ保護方法 | |
KR100273280B1 (ko) | 디버깅 로직 제어 회로 | |
JP2002541582A (ja) | エミュレータシステム内のユーザメモリを更新する方法およびシステム | |
JPS6061841A (ja) | プログラム評価装置の制御方式 | |
JP2006318172A (ja) | マイクロコンピュータ | |
JP2000194580A (ja) | Cpu開発支援装置 | |
JP2000259448A (ja) | プログラムデバッグ装置 | |
JP3149575B2 (ja) | インサ−キット・エミュレ−タ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070305 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090515 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090616 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090804 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100615 |