JPH0793145A - Remote changing system for program - Google Patents

Remote changing system for program

Info

Publication number
JPH0793145A
JPH0793145A JP5262876A JP26287693A JPH0793145A JP H0793145 A JPH0793145 A JP H0793145A JP 5262876 A JP5262876 A JP 5262876A JP 26287693 A JP26287693 A JP 26287693A JP H0793145 A JPH0793145 A JP H0793145A
Authority
JP
Japan
Prior art keywords
program
ram
rom
loaded
change
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
Application number
JP5262876A
Other languages
Japanese (ja)
Inventor
Yoshihito Ota
意人 太田
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.)
Hitachi Denshi KK
Original Assignee
Hitachi Denshi KK
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 Hitachi Denshi KK filed Critical Hitachi Denshi KK
Priority to JP5262876A priority Critical patent/JPH0793145A/en
Publication of JPH0793145A publication Critical patent/JPH0793145A/en
Pending legal-status Critical Current

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

PURPOSE:To perform the change of a program mounted on a device from a service base through an error free MODEM while utilizing a network for maintenance or the like by making the non-used area of a ROM writable, loading the program stored in the ROM to a RAM and executing the program on the RAM. CONSTITUTION:Program change information is loaded to the non-used area of a ROM 2 by a loader inside a debugger program while performing error free transmission from a personal computer 6 to a MODEM 4. Then, when the initial start of a microprocessor 1 is performed, an application program is loaded to a RAM 3 by a loader mounted on the basic part program of the ROM 2. At the same time, the change information of the program loaded in the non-used area of the ROM 2 is loaded to the RAM 3 and operated so as to be overwritten onto the original application program on the RAM 3, and the change of the program is performed.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は,マイクロプロセッサ等
を組込みプログラムによって動作する電子装置におい
て,プログラムを通信回線等を利用して遠隔地から変更
するためのプログラムの遠隔変更方式に関するものであ
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a remote program changing method for changing a program from a remote place by using a communication line or the like in an electronic device which operates a microprocessor or the like by an embedded program.

【0002】[0002]

【従来の技術】従来,装置に実装したプログラムを変更
するにはプログラムの記憶素子として紫外線で消去可能
なリードオンリメモリ(以下EPROMと称す)などを
プリント基板上にICソケットを使用して実装し,これ
を差替える方法で行うのが一般的であった。
2. Description of the Related Art Conventionally, in order to change a program mounted on an apparatus, a read-only memory (hereinafter referred to as EPROM) that can be erased by ultraviolet rays is mounted on a printed circuit board as an element for storing the program by using an IC socket. , It was general to do this by replacing it.

【0003】従って,観客に納入した装置のプログラム
を変更するためには,どんなにわずかな変更であっても
装置の設置場所に人を派遣して,上記EPROMを交換
するという対応が必要であり,納入台数が多くなるほど
費用と時間が増大するという問題があった。
Therefore, in order to change the program of the device delivered to the spectators, it is necessary to send a person to the place where the device is installed and replace the EPROM, no matter how small the change. There is a problem that the cost and time increase as the number of deliveries increases.

【0004】このような問題を解決するために,一部で
電気的に書き替え可能なメモリ(以下,E2 PROMと
称す)を使用して外部からプログラムの書き替えをしよ
うとする試みは行われたが,E2 PROMは高価であ
り,また外部から容易に書替えができるということは,
外来ノイズ等によるプログラムの暴走でE2 PROMに
記憶しているプログラムを破壊する危険があり,実用化
する上で問題が残っていた。
In order to solve such a problem, an attempt to rewrite a program from the outside by using a partially electrically rewritable memory (hereinafter referred to as E 2 PROM) has not been made. However, the fact that E 2 PROM is expensive and can be easily rewritten from the outside means that
There is a risk of destroying the program stored in the E 2 PROM due to program runaway due to external noise, etc., and there was a problem in practical use.

【0005】近年,パソコン通信の急速な発展に伴な
い,高信頼度の誤り訂正機能を持ったいわゆるエラーフ
リーモデムが低価格で入手できるようになり,これらを
装置に組込みサービス拠点等との間に保守用のネットワ
ークを構成して装置の動作状況を遠隔地から監視できる
ようにしたシステムが普及しつつある。
In recent years, with the rapid development of personal computer communication, so-called error-free modems having a highly reliable error correction function have become available at a low price. In addition, a system that is configured with a maintenance network so that the operation status of the device can be remotely monitored is becoming popular.

【0006】装置の動作状況の監視とは,一般にプログ
ラムの動作結果に基づいて得られるログをランダムアク
セスメモリ(以下RAMと称す)に格納しておき,これ
を遠隔地からモデムを介して読取るようにしたものであ
る。
The monitoring of the operation status of the device is generally performed by storing a log obtained based on the operation result of the program in a random access memory (hereinafter referred to as RAM) and reading the log from a remote place via a modem. It is the one.

【0007】[0007]

【発明が解決しようとする課題】本発明の第1の目的
は,前記のような保守用のネットワーク等を利用して,
サービス拠点等からエラーフリーモデムを介して装置に
実装しているプログラムの変更が行えるようにすること
にある。本発明の第2の目的は,外来ノイズ等によりプ
ログラムが暴走した場合においても,プログラムの破壊
や回復不能に陥いることのない信頼性の高い装置を提供
することにある。
The first object of the present invention is to utilize the above-mentioned maintenance network or the like,
The purpose is to allow a program installed in the device to be changed from a service base or the like via an error-free modem. A second object of the present invention is to provide a highly reliable device that does not cause the program to be destroyed or become unrecoverable even when the program runs away due to external noise or the like.

【0008】[0008]

【課題を解決するための手段】プログラムを変更する方
法としては,ソースプログラムを変更してコンパイルを
行う方法とオブジェクトプログラムを部分的に変更する
方法とがある。
As a method of changing the program, there are a method of changing the source program and compiling, and a method of changing the object program partially.

【0009】前者の方法では,仮にソースプログラムの
先頭部分の1行を変更しただけであっても,ROMに格
納するプログラムとしてはアドレスの移動によって全面
的な変更に近いものとなり,モデムを介して伝送するに
は変更の情報量が多過ぎて困難である。
According to the former method, even if only one line at the beginning of the source program is changed, the program stored in the ROM will be close to a complete change due to the movement of the address. It is difficult to transmit because there is too much information to change.

【0010】これに対し後者の方法は,オリジナルプロ
グラムのアドレスを移動せず,つぎはぎ方式で変更する
いわゆるパッチ形式で行うために変更部分だけの少ない
情報量で済むことになる。この発明は後者を対象にする
ものであって,図1に示すようにマイクロプロセッサ,
ROM,RAM及びモデムを基本構成とし,イニシャル
スタート時等においてROMからRAMへプログラムを
ロードしてRAM上でプログラムを実行するようにした
電子装置において,ROMの一部を追記可能なROMと
し,該ROMにモデムを介して外部から追記方式により
プログラムの変更情報をロードし,ロードを終了した後
にモデムを介して外部からイニシャルスタートのコマン
ドを入力してオリジナルプログラムと変更情報をROM
からRAMにロードして,RAM上でオリジナルプログ
ラムの上に変更情報を重ね書きすることによってプログ
ラムコードの更新を行うものである。
On the other hand, in the latter method, the address of the original program is not moved, and the patch method is used to change the original program, so that only the changed portion requires a small amount of information. The present invention is directed to the latter, and as shown in FIG.
In an electronic device having a basic configuration of a ROM, a RAM and a modem, and loading a program from the ROM to the RAM at the time of initial start and executing the program on the RAM, a part of the ROM is a recordable ROM. The change information of the program is loaded into the ROM from the outside by a write-once method via the modem, and after the loading is completed, the initial start command is input from the outside via the modem and the original program and the change information are stored in the ROM.
To the RAM, and the change information is overwritten on the original program on the RAM to update the program code.

【0011】追記可能なROMとしては前記のEPRO
Mも可能ではあるが,オンボード書込みが容易なフラッ
シュメモリがこの目的には適している。
As the additionally recordable ROM, the above-mentioned EPRO is used.
Although M is possible, a flash memory that is easy to write onboard is suitable for this purpose.

【0012】[0012]

【実施例】図1は本発明の全体構成を示すブロック図で
ある。図において,1はマイクロプロセッサ,2はRO
M,3はRAM,4はモデム,5はネットワーク,6は
サービス拠点等のパーソナルコンピュータである。図2
は本発明のメモリ構成の一実施例であって,ROM2と
RAM3をマイクロプロセッサ1のメモリ空間上に配置
した例である。
1 is a block diagram showing the overall structure of the present invention. In the figure, 1 is a microprocessor, 2 is an RO
M and 3 are RAMs, 4 is a modem, 5 is a network, and 6 is a personal computer such as a service base. Figure 2
Is an embodiment of the memory configuration of the present invention, in which the ROM 2 and the RAM 3 are arranged in the memory space of the microprocessor 1.

【0013】ROM2は基本部プログラム,アプリケー
ションプログラム及び未使用領域から構成される。基本
部プログラムにはオペレーティングシステムとROMか
らRAMへプログラムをロードするためのローダなどが
含まれている。また,アプリケーションプログラムは装
置を動作させるためのプログラムなどである。
The ROM 2 is composed of a basic part program, an application program and an unused area. The basic part program includes an operating system and a loader for loading the program from the ROM to the RAM. The application program is a program for operating the device.

【0014】この動作は,まず装置の電源をONすると
最初に基本部プログラムが動作してアプリケーションプ
ログラムをRAMにロードする。ロードが終了するとR
OM上の基本部プログラムとRAMにロードされたアプ
リケーションプログラムが結合して動作を開始するよう
になっている。
In this operation, first, when the power of the apparatus is turned on, the basic part program first operates to load the application program into the RAM. R when loading is completed
The basic program on the OM and the application program loaded on the RAM are combined to start the operation.

【0015】次に,プログラムの変更を行う場合の動作
について説明する。プログラムの変更情報の授受は,基
本部プログラムまたはアプリケーションプログラムの中
に実装したモデムを制御する通信プログラム及びデバッ
ガープログラムによって行われる。これらは装置の主動
作のバックグランドで多重に動作するようになってい
る。
Next, the operation for changing the program will be described. The exchange of program change information is performed by a communication program and a debugger program, which are installed in the basic part program or the application program and control the modem. These are designed to operate multiplex in the background of the main operation of the device.

【0016】サービス拠点のパーソナルコンピュータ6
を起動し,ネットワーク6を経由してモデム4を呼出
し,回線の接続を行う。接続が済むと,プログラム変更
情報をパーソナルコンピュータ6からモデム4にエラー
フリー伝送を行い,前記デバッガープログラム内のロー
ダによってROM2の未使用領域にロードする。
Personal computer 6 at service base
To call the modem 4 via the network 6 to connect the line. When the connection is completed, the program change information is error-free transmitted from the personal computer 6 to the modem 4, and loaded in the unused area of the ROM 2 by the loader in the debugger program.

【0017】ロードが終了するとパーソナルコンピュー
タ6からマイクロプロセッサ1をイニシャルスタートす
るためのコマンドを発行する。マイクロプロセッサ1が
イニシャルスタートすると,前記の基本部プログラムに
実装されたローダにより,アプリケーションプログラム
をRAM3にロードすると共に,ROM2の未使用領域
にロードされているプログラムの変更情報をRAM3に
ロードしてRAM上でオリジナルのアプリケーションプ
ログラムの上に重ね書きするように動作してプログラム
の変更が行われる。
When the loading is completed, the personal computer 6 issues a command to initially start the microprocessor 1. When the microprocessor 1 is initially started, the application program is loaded into the RAM 3 by the loader installed in the basic part program, and the change information of the program loaded in the unused area of the ROM 2 is loaded into the RAM 3 to be loaded into the RAM 3. The program is modified by operating as if overwriting the original application program.

【0018】このようにしてRAM3へのロードが全て
終了すると,前記のように基本部プログラムとRAM3
にロードされ変更が行われたアプリケーションプログラ
ムとが結合され動作を開始するようにしている。
When the loading to the RAM 3 is completed in this way, the basic program and the RAM 3 are loaded as described above.
The application program that has been loaded into and modified has been combined to start the operation.

【0019】ROM2の未使用領域はフラッシュメモリ
などの追記可能なメモリとし,あらかじめ必要十分な容
量を確保するようにしておけば,追記方式により変更の
都度順次プログラム変更情報を書込むことができ,何回
ものプログラム変更に対応することができる。
The unused area of the ROM 2 is a memory such as a flash memory that can be additionally written, and if a necessary and sufficient capacity is secured in advance, the program change information can be sequentially written by the additional writing method, It can handle many program changes.

【0020】次に,外来ノイズ等によりプログラムが暴
走してもプログラム破壊を生じさせないための手段につ
いて説明する。モデム4からROM2の未使用領域にプ
ログラムの変更情報をロードするためのローダについ
て,前記実施例の説明ではROM2の基本部プログラム
またはアプリケーションプログラムの中に実装したデバ
ッガー内のローダによって行うとしたが,このようにロ
ーダをROM2の中に常駐させた場合,外来ノイズ等に
よってプログラムが暴走し,ローダが誤って起動し,追
記可能なROMの内容を破壊して機能を停止するような
事態に陥る恐れがある。
Next, a means for preventing the program from being destroyed even if the program runs away due to external noise or the like will be described. Regarding the loader for loading the change information of the program from the modem 4 to the unused area of the ROM 2, the loader in the debugger installed in the basic program or the application program of the ROM 2 has been described in the above embodiment. When the loader is made to reside in the ROM 2 in this way, the program may run away due to external noise or the like, the loader may be mistakenly started, and the contents of the recordable ROM may be destroyed and the function may stop. There is.

【0021】これを防止するために,ROM2の追記可
能な領域にプログラムをロードするためのローダはメモ
リ内に常駐せずパーソナルコンピュータ6からのプログ
ラム変更情報の伝送に先立って前記ローダを伝送してR
AM3ロードしておき,その後にプログラムの変更情報
を伝送し,該ローダを使用してROM2の未使用領域へ
の追記を行うようにしている。
In order to prevent this, the loader for loading the program into the additionally recordable area of the ROM 2 does not reside in the memory but is transmitted to the personal computer 6 before the program change information is transmitted. R
The AM3 is loaded in advance, then the program change information is transmitted, and the loader is used to perform additional writing to the unused area of the ROM2.

【0022】また,このRAM3にロードしたローダは
マイクロプロセッサ1がイニシャルスタートを行ったと
きに自動的に消去するようにしておけば前記のようなロ
ーダの誤動作により生ずる危険な事態は完全に防止する
ことができる。
If the loader loaded in the RAM 3 is automatically erased when the microprocessor 1 performs an initial start, the dangerous situation caused by the malfunction of the loader can be completely prevented. be able to.

【0023】サービス拠点等のパソコン6とモデム4を
結ぶネットワーク5については,NTTの加入電話網が
一般的であるが,製品の設置場所にPBX交換機がある
場合にはNTTの加入者線を専用に借用しなくともPB
X内線を1回線使用することで済み,また製品自体があ
る種のネットワークを構成する通信システムの場合には
ネットワークの共用化が可能であり,実施上の問題は少
ない。
The network 5 connecting the personal computer 6 and the modem 4 at the service base or the like is generally an NTT telephone network, but if there is a PBX switch at the product installation site, the NTT subscriber line is dedicated. PB without borrowing to
Only one X extension line is required, and in the case of a communication system in which the product itself constitutes a certain type of network, the network can be shared, and there are few practical problems.

【0024】また,オリジナルプログラムと変更情報を
ROMに格納しておき,イニシャルスタート時にRAM
にロードして実行する手段は現在マイクロプロセッサ組
込形の装置で広く普及しているウオッチドッグタイマと
組合せて動作させた場合,プログラムの動作に異常があ
ったときでも,ウオッチドッグタイマの働きによりマイ
クロプロセッサをリセットし,イニシャルスタートが行
われるため,自動的な回復を図ることができる。
Further, the original program and the change information are stored in the ROM, and the RAM is stored at the initial start.
When the program is loaded and executed in combination with a watchdog timer that is widely used in microprocessor-embedded devices at present, even if there is an abnormality in the operation of the program, the watchdog timer works. Since the microprocessor is reset and the initial start is performed, automatic recovery can be achieved.

【0025】[0025]

【発明の効果】以上に説明したように本発明によれば,
遠隔地からのプログラム変更が容易に行えるために製品
納入後のプログラム変更に対する費用と時間を大幅に削
減することが可能になると共に,プログラムを容易に変
更できるようにしたことによるプログラムの破壊や,回
復能力低下の危険がない信頼性の高い装置の提供が可能
である。
As described above, according to the present invention,
Since it is possible to easily change programs from remote locations, it is possible to significantly reduce the cost and time required for changing programs after product delivery, and to make it easier to change programs. It is possible to provide a highly reliable device that does not have a risk of recovery ability deterioration.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の全体構成を示すブロック図。FIG. 1 is a block diagram showing the overall configuration of the present invention.

【図2】本発明の一実施例のメモリ構成を示す図。FIG. 2 is a diagram showing a memory configuration of an embodiment of the present invention.

【符号の説明】[Explanation of symbols]

1…マイクロプロセッサ 2…ROM 3…RAM 4…モデム 5…ネットワーク 6…パーソナルコ
ンピュータ
1 ... Microprocessor 2 ... ROM 3 ... RAM 4 ... Modem 5 ... Network 6 ... Personal computer

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 G06F 13/00 351 H 7368−5B ─────────────────────────────────────────────────── ─── Continuation of the front page (51) Int.Cl. 6 Identification code Internal reference number FI Technical display location G06F 13/00 351 H 7368-5B

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 マイクロプロセッサ等の制御装置,未使
用領域は少なくとも追記可能なROM,RAM及びモデ
ムを基本構成とし,該ROMに格納したプログラムを前
記RAMにロードし,該RAM上でプログラムを実行す
る電子装置におけるプログラムの遠隔変更方式であっ
て,前記追記可能なROMにモデムを介して外部からプ
ログラムの変更情報を追記してロードした後,前記RA
M上でオリジナルプログラムの上に変更部分を重ね書き
してプログラムの変更を行い,該変更後のプログラムを
実行するようにしたことを特徴とするプログラムの遠隔
変更方式。
1. A control device such as a microprocessor and an unused area are basically composed of at least a recordable ROM, a RAM and a modem, a program stored in the ROM is loaded into the RAM, and the program is executed on the RAM. A method for remotely changing a program in an electronic device, wherein after the change information of the program is externally added and loaded into the additionally writable ROM via a modem, the RA is added.
A remote program changing method characterized in that a changed portion is overwritten on the original program on M to change the program and the changed program is executed.
【請求項2】 請求項1に記載のプログラムの遠隔変更
方式において,前記の追記可能なROMにプログラムの
変更情報をロードするためのローダをメモリ内部に常駐
せず,該プログラムの変更情報をロードする直前に外部
から前記RAMにロードして実行させ,実行終了後には
消去するようにしたことを特徴とするプログラムの遠隔
変更方式。
2. The remote change system for a program according to claim 1, wherein a loader for loading the change information of the program into the recordable ROM is not resident in the memory but the change information of the program is loaded. A remote program changing method, characterized in that it is loaded into the RAM from outside and executed immediately before the execution, and is erased after the execution is completed.
JP5262876A 1993-09-27 1993-09-27 Remote changing system for program Pending JPH0793145A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5262876A JPH0793145A (en) 1993-09-27 1993-09-27 Remote changing system for program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5262876A JPH0793145A (en) 1993-09-27 1993-09-27 Remote changing system for program

Publications (1)

Publication Number Publication Date
JPH0793145A true JPH0793145A (en) 1995-04-07

Family

ID=17381864

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5262876A Pending JPH0793145A (en) 1993-09-27 1993-09-27 Remote changing system for program

Country Status (1)

Country Link
JP (1) JPH0793145A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6990661B2 (en) 1996-04-09 2006-01-24 International Business Machines Corporation Apparatus and method for downloading data to electronic device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6990661B2 (en) 1996-04-09 2006-01-24 International Business Machines Corporation Apparatus and method for downloading data to electronic device

Similar Documents

Publication Publication Date Title
US6615404B1 (en) Method and apparatus for downloading software into an embedded-system
EP1087294B1 (en) Method and apparatus of remotely updating firmware of a communication device
US6047128A (en) System for downloading software
CN101477471B (en) Embedded system firmware on-line upgrading method
US8181007B2 (en) Electronic device and method for secure operating system update in embedded system
US20020194527A1 (en) Program update apparatus and method
US6629259B2 (en) Method for automatically duplicating a BIOS
US6715106B1 (en) Bios corruption detection system and method
US20080033609A1 (en) Automotive diagnostic and tuning system
US5933595A (en) Computer apparatus having electrically rewritable nonvolatile memory, and nonvolatile semiconductor memory
JPH07225686A (en) Program down-loading system
WO2010025669A1 (en) Updating firmware with multiple processors
CN101344853A (en) System and method for over the air programming
EP1766514A1 (en) Safe flashing
US20010046157A1 (en) Electronic apparatus
CN111736882B (en) Remote upgrading method of DSP program
JP3093541B2 (en) Terminal device and online system for managing version numbers of programs and data
JPH0793145A (en) Remote changing system for program
JP4734582B2 (en) Non-volatile memory data update method, control device, and data update program
JP2001109629A (en) Device and method for controlling boot of cpu
JP3296520B2 (en) Download bootstrap method
JP3186758B2 (en) Mobile terminal device
JP2007042038A (en) Device and method for controlling terminal equipment
JPH0855068A (en) Communication terminal equipment
KR20010007066A (en) A method and apparatus for downloading software into an embedded system