JP3046492B2 - コンピュータシステム - Google Patents

コンピュータシステム

Info

Publication number
JP3046492B2
JP3046492B2 JP6078450A JP7845094A JP3046492B2 JP 3046492 B2 JP3046492 B2 JP 3046492B2 JP 6078450 A JP6078450 A JP 6078450A JP 7845094 A JP7845094 A JP 7845094A JP 3046492 B2 JP3046492 B2 JP 3046492B2
Authority
JP
Japan
Prior art keywords
rom
program
ram
computer system
signal
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.)
Expired - Fee Related
Application number
JP6078450A
Other languages
English (en)
Other versions
JPH07287653A (ja
Inventor
修 中島
泰生 山田
浩 鈴木
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.)
JFE Steel Corp
Original Assignee
JFE Steel 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 JFE Steel Corp filed Critical JFE Steel Corp
Priority to JP6078450A priority Critical patent/JP3046492B2/ja
Publication of JPH07287653A publication Critical patent/JPH07287653A/ja
Application granted granted Critical
Publication of JP3046492B2 publication Critical patent/JP3046492B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、プログラムのデバッグ
の容易化が図られたコンピュータシステムに関する。
【0002】
【従来の技術】プログラムの開発には多大な時間を要
し、デバッグにもそのプログラム開発の大きな時間が割
かれている。このデバッグを行うには、従来より、例え
ば以下に示すように種々の手法が開発されている。
【0003】(1)ROMライタを用いた場合、ROM
ライタでPROMにプログラムをロードする。そしてそ
のPROMをコンピュータシステム内に配置してプログ
ラムを実行させ、正しく動作するかを確認する。正常な
動作が行われなかったら、プログラムを修正し、PRO
Mの内容を消去して修正後のプログラムをPROMにロ
ードし、実行し、これらの作業をプログラムが正しく動
作するまで繰り返す。この手法は手軽に実行できるが、
プログラムのロード、消去、PROMの差し替えなど、
時間、手間がかかり効率が悪いという問題がある。
【0004】(2)ICE(In Circuit E
mulator)を用いた場合は、MPUの代わりにI
CEプローブを差して、プログラムを1命令単位で実行
したり、プログラムの実行履歴をトレースさせることが
できる。ICEを用いると、ハードウェアおよびソフト
ウェアのデバッグを効率良く行うことができる。ICE
は高機能であるが、非常に高価であるうえ、ICE専用
ピンが必要となる、などの制約もある。
【0005】(3)ROMエミュレータを用いた場合
は、ROMの代わりにROMエミュレータのプローブを
差し、パソコンからROMエミュレータにプログラムを
ロードし実行することができる。この場合、プログラム
をロードしている最中にCPUが動作するとゼロ番地か
ら実行を開始するが、ゼロ番地には何が書かれているか
わからないため暴走してしまう危険性がある。したがっ
てプログラムをロードしている最中は、リセットをかけ
ておくなどの、CPUの動作を止めてやる作業が必要と
なる。またターゲット回路のCPUの他にROMエミュ
レータの中にもCPUが存在する。これは、ROMエミ
ュレータにプログラムをダウンロードする時必要なもの
であり、このためROMエミュレータは高価なものとな
ってしまう。
【0006】(4)ROMの代わりにRAMを差してR
AMにプログラムをロードし実行する方法も考えられ
る。この場合はROMをRAMに差し替えてしまうた
め、CPUが実行するプログラムを格納しておく新たな
ROMが必要となる。このROMにデバッグに必要なプ
ログラムを入れておき、パソコンから通信回路を介して
RAMにプログラムをロードし実行する。このときRO
M領域とRAM領域が同じメモリ空間に存在するため、
ロードされたプログラムは、メモリのゼロ番地から遠い
方に書き込まれる。デバッグが終了し実際にプログラム
をROMに入れるとプログラムはゼロ番地から書かれる
ことになり、デバッグしたときのアドレスと異なってし
まうことになる。もしプログラムの中にジャンプ命令が
あるとすると、デバッグ時のアドレスでは飛び先に所定
の命令が存在したが、実際のROMでの飛び先には何も
ない、もしくは違った命令がある、というようなことが
起こり、RAM上では正常に動作したにも拘らずそのプ
ログラムをROMに格納すると正常に動作しないという
危険性がある。このように、アドレスを変えるというこ
とは、非常に危険なことである。
【0007】
【発明が解決しようとする課題】本発明は、上記従来の
各種の手法に鑑み、特別なデバッグ装置を必要とせずに
効率良く、かつ確実にプログラムのデバッグを行うこと
のできるコンピュータシステムを提供することを目的と
する。
【0008】
【課題を解決するための手段】上記目的を達成する本発
明のコンピュータシステムは、 (1)RAMに差し替え自在な第1のROM(2)前記第1のROMに代えて配置されるRAM (3) 所定のルーチンを繰り返すプログラムが格納され
た第2のROM(4) 前記第1のROMに代えて配置されたRAMに、
外部から入力されたプログラムを書き込むプログラムが
格納された第3のROM(5) 所定のモード切替信号を入力するモード切替信号
入力端子(6) 所定の割込要求信号を入力する割込要求信号入力
端子(7) リセット時の前記モード切替信号に応じて、前記
第1のROMが配置されている場合に該第1のROMに
格納されたプログラムを実行する第1のシーケンス、も
しくは、前記第1のROMに代えてRAMが配置されて
いる場合に、前記第2のROMに格納されたプログラム
の実行を繰り返し、前記割込要求信号の入力を受けて、
前記第3のROMに格納されたプログラムを実行するこ
とにより前記第1のROMに代えて配置されたRAMに
プログラムを入力し、該入力後、該RAMに入力された
プログラムを実行する第2のシーケンスの実行を制御す
るシーケンス制御手段とを備えたことを特徴とするもの
である。
【0009】ここで、上記第2のROM、上記第3のR
OM、および上記シーケンス制御手段が、1つのパッケ
ージに封入されていてもよい。
【0010】
【作用】本発明のコンピュータシステムは、上記第2の
シーケンス、即ち、リセットの直後には、上記第2のR
OMに格納された、例えばセルフジャンプ命令等CPU
の暴走の防止が図られた所定の命令ないし命令群が繰り
返され、その後、割込要求信号の入力を受けて、プログ
ラムをRAMにダウンロードして実行させるシーケンス
を有するものであるため、第1のROMをRAMに差し
替えるだけで、作成されたプログラムのダウンロード、
実行が連続的にかつ容易に行われ、デバッグ効率が良
い。また、本発明のコンピュータシステムでは、ターゲ
ット回路のCPUとデバッグ用のCPUが兼用されるこ
とになり、特別なデバッグ装置も不要である。さらに、
本発明のコンピュータシステムでは、第1のROMと同
一のアドレスのRAMにプログラムをロードして実行す
ることができ、したがってRAM上で正常に動作したプ
ログラムは、ROM(第1のROM)に格納した場合に
も、確実な正常動作が期待できる。
【0011】
【実施例】以下、本発明の実施例について説明する。図
1は、本発明のコンピュータシステムの一例を示すブロ
ック図である。このコンピュータシステム10には、R
AMへの差し替えが自在な第1のROM12、セルフジ
ャンプ命令が格納された3バイトの第2のROM14、
および外部から入力されたプログラムを、第1のROM
12に代えて配置されたRAMにロードするためのプロ
グラムが格納された第3のROM16が備えられてい
る。
【0012】第1のROM12がRAMに差し替えられ
た状態において、CPU18で第3のROM16に格納
されたプログラムが実行されると、外部のパーソナルコ
ンピュータ100から通信回路20を経由して入力され
た、デバッグの対象とされるプログラムがRAMにダウ
ンロードされる。第1のROM(RAM)12,第2の
ROM14,第3のROM16は、いずれも0番地から
アドレスが付されており、したがってこのコンピュータ
システム10にはチップセレクト回路22が備えられ、
アクセス可能なROM(RAM)が選択される。また、
このコンピュータシステムにはライト信号制御回路24
が備えられている。このライト信号制御回路24は、第
1のROM12に代えて差し込まれたRAMにロードさ
れたプログラムが実行される際に、そのRAMへの書込
みを禁止するための回路である。
【0013】またこのコンピュータシステム10には、
パーソナルコンピュータ100から、もしくはパーソナ
ルコンピュータ100とは独立したスイッチ等から、リ
セット信号reset、デバッグ割込要求信号debu
g及びブートオンラム信号boot_on_RAMが入
力される。以下、これらの各信号を、それぞれrese
t信号、debug信号、boot_on_RAM信号
と表記することがある。各信号の意味については後述す
る。
【0014】このコンピュータシステム10のうち、第
1のROM12を除く部分10’は1つのLSIチップ
上に搭載されている。図2,図3は、図1に示すコンピ
ュータシステム10の、それぞれ第1および第2のシー
ケンス(動作モード)を示した図である。また、表1,
表2は、それぞれチップセレクト回路22、ライト信号
制御回路24の動作モードを表わしている。
【0015】
【表1】
【0016】
【表2】
【0017】図2は、デバッグの完了したバグのないユ
ーザプログラムが格納された第1のROM12が差し込
まれた状態で動作するシーケンスであり、boot_o
n_RAM信号を‘L’レベルに保持しておくことによ
り、実現される。boot_on_RAM信号が‘L’
レベルに保持された状態でreset信号が入力される
と、表1に示すように、チップセレクト制御回路22に
より第1のROM12が選択され、第1のROM12に
格納されたユーザプログラムが実行される。
【0018】図3は、第1のROM12に代えてRAM
が差し込まれ、そのRAMに、デバッグの対象とされる
プログラムをロードして実行するシーケンスであり、b
oot_on_RAM信号を‘H’レベルに保持してお
くことにより実現される。boot_on_RAM信号
が‘H’レベルに保持された状態でreset信号が入
力されると、表1に示すように、チップセレクト制御回
路22により、先ず第2のROM14が選択される。第
2のROM14にはセルフジャンプ命令が格納されてお
り、したがってCPU18ではセルフジャンプ命令が繰
り返される。
【0019】その状態において、デバッグ割込要求信号
debugが入力されると、CPU18からは、それま
で‘L’レベルに保持されていたデバッグモード認識信
号ack(以下、ack信号と称することがある)が
‘H’レベルに変化し、チップセレクト制御回路22で
は、このack信号の変化を受けて、今度は第3のRO
M16の選択が行なわれ、CPU18では第3のROM
16に格納されたプログラムロード用のプログラムが実
行され、パーソナルコンピュータ100から通信回路2
0を経由して入力された、デバッグの対象とされるプロ
グラムが、第1のROM12に代えて差し込まれたRA
Mにロードされる。その間、表2に示すようにライト信
号制御回路24からはRAMへの書込みを許容する
‘H’レベルのライトイネーブル信号writeが出力
される。第3のROMに格納されたプログラムの最終に
は、デバッグモードを抜けることを指示する命令が配置
されており、CPU18でその命令が実行されるとac
k信号が‘L’レベルとなり、表1に示すように、チッ
プセレクト制御回路22により今度はRAMが選択さ
れ、そのRAMにロードされたプログラムが実行され
る。またこのとき、ライト信号制御回路24は、表2に
示すように、ack信号が‘L’レベルに変化したこと
を受けてRAMへの書込みを禁止し、プログラムのバグ
等によりRAMにロードされたプログラム自体が書き換
えられてしまうことを防止する。これは、RAMへの書
き込みを禁止しないと、RAMに誤って書き込みが行わ
れたときにそのRAMにロードされたプログラムが破壊
されてしまい、プログラムそのもののバグとプログラム
が破壊されたことによるバグとの区別が困難となるから
である。
【0020】このようにして、プログラムの修正、図3
に示す第2のシーケンスに従う、修正されたプログラム
のロード、実行を繰り返すことにより、プログラムのデ
バッグが行われる。
【0021】
【発明の効果】以上説明したように、本発明によれば、
ROMをRAMに差し替えるだけでプログラムの作成か
らダウンロード、実行が連続的に行えるため、プログラ
ムのデバッグを効率良く行うことができる。又、ターゲ
ット回路のCPUとデバッグ用のCPUとを兼用してい
るためコンパクトになり費用も安く済む。このように、
特別なプログラムデバッグ用の装置を使用せずに手軽に
デバッグが行われる。
【0022】また、デバッグに際しては、リセット時に
は、CPUは、例えばセルフジャンプ等、あらかじめ予
定された動作を繰り返すため、暴走する危険はない。ま
た本発明によれば、実際にROM化するのと同一の、R
AMのアドレスにプログラムをロードすることができる
ので、デバッグしたプログラムをROM化する際に何も
考慮せずにそのままROM化できる。
【0023】また、上記実施例によれば、ロードしたプ
ログラムを実行している時は、RAMに対する書込みを
禁止しているため、CPUが暴走しても、ロードしたプ
ログラムが壊れることはない。
【図面の簡単な説明】
【図1】本発明のコンピュータシステムの一例を示すブ
ロック図である。
【図2】図1に示すコンピュータシステム10の第1の
シーケンスを示した図である。
【図3】図1に示すコンピュータシステム10の第2の
シーケンスを示した図である。
【符号の説明】
10 コンピュータシステム 12 第1のROM(RAM) 14 第2のROM 16 第3のROM 18 CPU 20 通信回路 22 チップセレクト制御回路 24 ライト信号制御回路
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平4−18644(JP,A) 特開 平3−186944(JP,A) 特開 平3−136135(JP,A) 特開 平3−158938(JP,A) 特開 昭64−78325(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 9/06 - 9/445 G06F 11/00 - 11/34

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 RAMに差し替え自在な第1のROM
    と、前記第1のROMに代えて配置されるRAMと、 所定のルーチンを繰り返すプログラムが格納された第2
    のROMと、 前記第1のROMに代えて配置されたRAMに、外部か
    ら入力されたプログラムを書き込むプログラムが格納さ
    れた第3のROMと、 所定のモード切替信号を入力するモード切替信号入力端
    子と、 所定の割込要求信号を入力する割込要求信号入力端子
    と、 リセット時に、前記モード切替信号に応じて、前記第1
    のROMが配置されている場合に該第1のROMに格納
    されたプログラムを実行する第1のシーケンス、もしく
    は、前記第1のROMに代えてRAMが配置されている
    場合に、前記第2のROMに格納されたプログラムの実
    行を繰り返し、前記割込要求信号の入力を受けて、前記
    第3のROMに格納されたプログラムを実行することに
    より前記第1のROMに代えて配置されたRAMにプロ
    グラムを入力し、該入力後、該RAMに入力されたプロ
    グラムを実行する第2のシーケンスの実行を制御するシ
    ーケンス制御手段とを備えたことを特徴とするコンピュ
    ータシステム。
JP6078450A 1994-04-18 1994-04-18 コンピュータシステム Expired - Fee Related JP3046492B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6078450A JP3046492B2 (ja) 1994-04-18 1994-04-18 コンピュータシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6078450A JP3046492B2 (ja) 1994-04-18 1994-04-18 コンピュータシステム

Publications (2)

Publication Number Publication Date
JPH07287653A JPH07287653A (ja) 1995-10-31
JP3046492B2 true JP3046492B2 (ja) 2000-05-29

Family

ID=13662380

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6078450A Expired - Fee Related JP3046492B2 (ja) 1994-04-18 1994-04-18 コンピュータシステム

Country Status (1)

Country Link
JP (1) JP3046492B2 (ja)

Also Published As

Publication number Publication date
JPH07287653A (ja) 1995-10-31

Similar Documents

Publication Publication Date Title
KR101782313B1 (ko) 예외 이벤트 처리 장치 및 방법
US4866665A (en) Break points system in a software monitor where entry address of break point routing equals op code of call instruction
EP0356237A2 (en) Integrated Circuit Card
JP2006127553A (ja) プログラムのテスト及びデバッギングが容易な中央処理装置
KR100415371B1 (ko) 컴퓨터
US6785808B2 (en) System and method for altering an operating system start-up sequence prior to operating system loading
US20080229141A1 (en) Debugging method
US20060195671A1 (en) Control system
CN106997313B (zh) 一种应用程序的信号处理方法、系统及终端设备
JP3046492B2 (ja) コンピュータシステム
JP2001109629A (ja) Cpuのブート制御装置及びブート制御方法
KR100303307B1 (ko) 실시간 오퍼레이팅 시스템에서 디버깅동작을 위한 다운로드장치 및 방법
JPH1011315A (ja) インサーキットエミュレータ装置およびインサーキットエミュレーション方法
KR100316584B1 (ko) 시스템에서 부팅 및 수행 프로그램을 공유하는 플래시메모리 및 그 메모리 갱신 방법
JP3449812B2 (ja) 制御用電子装置
KR100506316B1 (ko) 아이아이씨 버스상의 마이크로 펌웨어 로더의 인터럽트 처리방법
JP2663895B2 (ja) Cpuシミュレータ
JP2001222447A (ja) 実動作環境下のデバッグ方法及びデバッグ対象装置
JPS6214240A (ja) プログラム検査方式
KR100222620B1 (ko) 다중 프로그램의 다운로드 방법
JPH11288371A (ja) インサーキットエミュレータ
JPH096709A (ja) 拡張スロット付電子装置の制御方法とその装置、及び拡張媒体
JPS63271542A (ja) Romデバツガ
JP2972930B2 (ja) コンピュータシステムの最適環境設定装置
JP2002366378A (ja) プログラムのデバッグ装置及びデバッグ方法、並びに記憶媒体

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20000307

LAPS Cancellation because of no payment of annual fees