JPH04167139A - Program down loading system - Google Patents

Program down loading system

Info

Publication number
JPH04167139A
JPH04167139A JP29603690A JP29603690A JPH04167139A JP H04167139 A JPH04167139 A JP H04167139A JP 29603690 A JP29603690 A JP 29603690A JP 29603690 A JP29603690 A JP 29603690A JP H04167139 A JPH04167139 A JP H04167139A
Authority
JP
Japan
Prior art keywords
program
memory
pdl
programs
new
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
JP29603690A
Other languages
Japanese (ja)
Inventor
Koji Shima
志摩 浩司
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP29603690A priority Critical patent/JPH04167139A/en
Publication of JPH04167139A publication Critical patent/JPH04167139A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Stored Programmes (AREA)

Abstract

PURPOSE:To exchange the programs with no exchange of ROMs and no discontinuation of the system operation by down loading a program to a memory from the outside of a software system. CONSTITUTION:The memory contents of programs of two systems are stored in the memories EEPROM 1 and 2 respectively, and a fact whether its own system is equal to a program of a working system, or to an old program, to a new program, or to an abnormal NG state of the program data is held as a state flag. Thus a program is inputted from the outside of a software system and down loaded. Then the program is stored in a memory of a system except the working system and the self-restart is carried out with the stored program defined as a new working system. In such a constitution, it is not required to stop the operation of a new ROM storing a new program and to exchange this ROM with another. Thus the operability is improved in a program down loading system.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はソフトウェアシステムに外部からプログラムを
入力し実行するプログラムダウンロード方式に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a program download method for inputting and executing a program from the outside into a software system.

〔従来の技術〕[Conventional technology]

従来のソフトウェアシステムにおいて装置組込型ソフト
ウェアであるファームウェアは、書き変え不可能なRO
Mの形で装置内に実装されている。
In conventional software systems, firmware, which is software built into devices, is an RO that cannot be rewritten.
It is mounted in the device in the form of M.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

しかしながら、ユーザ要求によるプログラムのパージピ
ンアップ及び内在障害に起因するプログラムの修正など
のプログラムの変更が必要となった場合には、新プログ
ラムの入った新たなROMを作成し、−度装置を停止し
てROMを交換する必要がある。また、プログラムが大
規模であれば多数のROMに分割されているため、多数
のROMについての同様な交換が必要となる。さらに、
ソフトウェアシステムに多数のプロセッサ(CPU)が
分散している場合、それぞれについて上述したようなR
OM交換作業が必要となる問題がある。
However, if it is necessary to change the program such as purge pin-up of the program due to user request or modification of the program due to an internal failure, a new ROM containing the new program is created and the device is stopped. It is necessary to replace the ROM. Furthermore, if the program is large-scale, it is divided into many ROMs, and therefore many ROMs need to be replaced in the same way. moreover,
When a software system has a large number of processors (CPUs) distributed, the R
There is a problem that OM replacement work is required.

〔課題を解決するための手段〕[Means to solve the problem]

本発明のプログラムダウンロード方式は、プログラムの
記憶が可能な不揮発性のメモリを2系統備え、前記メモ
リを備えるソフトウェアシステムの外部から前記プログ
ラムを入力してプログラムダウンロードを行い、前記プ
ログラムを現用系でない前記メモリに保存し、保存した
前記プログラムを新たな現用系として自己再起動を行う
構成である。
The program download method of the present invention includes two systems of nonvolatile memory capable of storing programs, downloads the program by inputting the program from outside the software system equipped with the memory, and transfers the program to a software system that is not currently in use. It is configured to save the program in memory and self-restart using the saved program as a new active system.

また、本発明のプログラムダウンロード方式は、分散処
理を行うために複数のプロセッサを備え、前記プロセッ
サを備えるソフトウェアシステムの外部から前記プロセ
ッサに対するプログラムを入力してプログラムダウンロ
ードを行い、前記プログラムを前記システム内の補助記
憶装置に保存し、保存された前記プログラムを前記プロ
セッサに転送する構成である。
Further, the program download method of the present invention includes a plurality of processors for performing distributed processing, performs program download by inputting a program to the processor from outside a software system including the processor, and downloads the program into the system. The program is stored in an auxiliary storage device, and the stored program is transferred to the processor.

〔実施例〕 次に、本発明について図面を参照して説明する。〔Example〕 Next, the present invention will be explained with reference to the drawings.

第1の発明の一実施例における処理手順を示す第1図を
参照すると、通常処理中にソフトウェアシステムの外部
から通信回線等を介してプログラムダウンロード(PD
L)の要求(ステップ11)があった場合、PDL処理
(ステップ12)を実行する。PDL処理では外部から
のプログラムデータを現用系でないメモリに保存する。
Referring to FIG. 1 showing the processing procedure in an embodiment of the first invention, program download (PD) is performed from outside the software system via a communication line etc. during normal processing.
When there is a request (step 11) of L), PDL processing (step 12) is executed. In PDL processing, program data from the outside is stored in a memory that is not currently in use.

ここで、ダウンロードされるプログラムデータの形式は
任意であるが、例えばインテルHEX形式のチエツクサ
ムを含んだ形式を適用することが可能である。全てのプ
ログラムダウンロードが終了すると、自己チエツク(ス
テップ13)を行い、保存したプログラムがデータとし
て正しいか否かを確認する。もし、自己チエツクの結果
、異常(NG)であれば、外部に対してPDLがNGで
あった旨を通知し、状態フラグ更新(ステップ14)で
ダウンロードしたプログラムのメモリ上の状態フラグ(
後に詳述する)をNG”の状態に設定し、通常処理に戻
る。また、自己チエツクの結果が正常(OK)であれば
、状態フラグを“新”の状態に更新する。その後、自己
再起動(ステップ15)を行ったうえで自己リセット(
ステップ16)を行う。ここで、ステップ12,13.
14の処理は通常処理と並行して通常処理の空き時間を
利用して行えるため、通常処理を停止することなく、プ
ログラムダウンロードは実行可能である。しかし、新プ
ログラムを実行するためには1、旧(現用)プログラム
の実行を一度停止し、新プログラムを現用として再起動
する必要がある。自己再起動は旧プログラムの実行を安
全に停止するための機会を待つための処理である。自己
リセット可能か否かの判定条件はそれぞれのソフトウェ
アシステムに依存するので、ここでは述べないが、例え
ば、次のような条件が考えられる。っまり、データベー
スの更新処理途中でないこと、外部システムとのコマン
ド/レスポンスのシーケンス途中でないことである。自
己リセット後はリセット(ステップ17)となり、プロ
グラムの起動処理(ステップ18)が実行される。
Here, the format of the program data to be downloaded is arbitrary, but for example, a format including a checksum in Intel HEX format can be applied. When all program downloads are completed, a self-check (step 13) is performed to confirm whether the saved programs are correct as data. If the result of the self-check is abnormal (NG), notify the outside that the PDL is NG, and update the status flag (step 14) to update the status flag on the memory of the program downloaded.
(described in detail later) to "NG" and returns to normal processing. Also, if the result of the self-check is normal (OK), the status flag is updated to "new". After that, the self-restart After starting up (step 15), self-resetting (
Perform step 16). Here, steps 12, 13.
Since the process No. 14 can be performed in parallel with the normal process using the free time of the normal process, the program download can be executed without stopping the normal process. However, in order to execute the new program, it is necessary to first stop the execution of the old (currently used) program and restart it using the new program as the current program. Self-restart is a process that waits for an opportunity to safely stop the execution of the old program. The conditions for determining whether or not self-resetting is possible depend on each software system and will not be described here, but the following conditions may be considered, for example. In other words, the database is not in the process of updating, and the command/response sequence with the external system is not in progress. After self-resetting, a reset is performed (step 17), and a program startup process (step 18) is executed.

この起動処理はプログラムの記憶方式によって処理が異
なるが、ここでは第2図(A)に示す方式を採用した場
合について説明する。この方式では、2系統のプログラ
ムめメモリは、全く同一の書き変え可能なROM1例え
ばEEFROMを使用する。それぞれのメモリ(EEP
ROMI。
Although this startup process differs depending on the program storage method, a case will be described here in which the method shown in FIG. 2(A) is adopted. In this system, the two systems of program memory use exactly the same rewritable ROM 1, for example, EEFROM. Each memory (EEP
ROMI.

2)中には、自分の系の状態フラグが存在し、現用系の
プログラムなのか、旧プログラムなのか、プログラムダ
ウンロードされた新プログラムなのか、及びプログラム
データとして異常のあるNG状態なのかを保持している
。起動処理ではこの2つの系統の状態フラグの内容を比
較判断し、どちらの系のプログラムを使用すべきかを決
定する。
2) Inside, there is a status flag for the own system, which holds whether it is an active program, an old program, a new program that has been downloaded, and whether it is in an NG state with an abnormality in the program data. are doing. In the startup process, the contents of the status flags of these two systems are compared and determined to determine which system's program should be used.

この決定の条件を第3図に示す。原則としてNGではな
くなるべく新しいプログラムをEEPROMl系を優先
して使用する。また、起動処理は使用することにした系
の状態フラグを“現用“に設定し、必要であればもう一
方の系の状態フラグも更新する。以上によりダウンロー
ドされたプログラムの実行が始まり、通常処理(ステッ
プ19)が開始される。2つの系のメモリの状態フラグ
の変化の一例を第1図に示す。必要であれば、現用系か
らもう片系へのコピーコマンドを用意して現用のバック
アップをとることも可能である。
The conditions for this determination are shown in FIG. As a general rule, new programs should be used with priority given to EEPROM1 systems to avoid NGs. In addition, the startup process sets the status flag of the system to be used to "active", and updates the status flag of the other system if necessary. Execution of the downloaded program starts as described above, and normal processing (step 19) starts. FIG. 1 shows an example of changes in the memory status flags of the two systems. If necessary, it is also possible to back up the current system by preparing a copy command from the current system to the other system.

メモリ上に配置されたプログラムデータのメモリマツプ
の一例を第5図に示す。メモリは記憶領域211〜27
1のEEPROM部と記憶領域281〜291のROM
部に分かれる。この他にRAM部等も当然あるが図示を
省略している。領域211〜251はダウンロードで書
き変えられるデータ部である。通常、変更されるプログ
ラムはアプリケーションプログラムであるため、領域2
31の変更が主である。しかし、領域231の変更にと
もなってプログラムサイズの変更があるため、最終アド
レス(領域212)及びCRC(領域251)も更新し
なければならない。自己チエツク処理(第1図のステッ
プ13)で行うチエツクは、先頭アドレス(領域211
)から最終アドレス(領域212)で示されるアドレス
範囲のCRCの算出値がダウンロードで送られてきたC
RC(領域251)と一致するか否かで行う。これによ
り、ダウンロード中に内容が異常になったとしても誤り
を検出できる。なお、先頭アドレス。
FIG. 5 shows an example of a memory map of program data arranged on the memory. Memory is storage area 211-27
1 EEPROM section and storage areas 281 to 291 ROM
Divided into sections. In addition to this, there is of course a RAM section, etc., but their illustration is omitted. Areas 211 to 251 are data sections that can be rewritten by downloading. Usually, the program being changed is an application program, so area 2
The main changes are 31. However, since the program size is changed due to the change in area 231, the final address (area 212) and CRC (area 251) must also be updated. The check performed in the self-check process (step 13 in FIG. 1) is based on the start address (area 211
) to which the calculated value of the CRC for the address range indicated by the final address (area 212) has been sent by download.
This is done depending on whether it matches the RC (area 251). This makes it possible to detect errors even if the content becomes abnormal during downloading. In addition, the first address.

最終アドレス、CRC,状態フラグの配置については、
予め決めておく必要がある。この例ではEEPROMの
先頭アドレスを、その次に最終アドレスを、最終アドレ
スで示されるアドレスの次にCRCを、かつEEPRO
Mの最後に状態フラグを配置している。また、ソフトウ
ェアシステムによっては、ダウンロードするデータがひ
と続きのアドレスに配置できない場合も考えられるが、
その場合は何組かの先頭アドレス、最終アドレス。
Regarding the final address, CRC, and status flag placement,
It needs to be decided in advance. In this example, the first address of the EEPROM, then the final address, the address indicated by the final address, the CRC, and the EEPROM.
A status flag is placed at the end of M. Also, depending on the software system, there may be cases where the data to be downloaded cannot be placed in a continuous address.
In that case, several pairs of starting and ending addresses.

CRCを用意することによって対処が可能である。This can be dealt with by preparing a CRC.

以上それぞれの処理に問題がなく、正常にプログラムが
実行されることを前提として説明したが、実際にはダウ
ンロードしたプログラムに内在バグがあり、上述したプ
ログラムダウンロード処理自体が動作しなくなる可能性
もある。この場合には、プログラムダウンロードが2度
とできなくなるので、何らかの対策が必要となる。その
ため最悪の場合を考慮して第6図に示すような強制PD
L処理(ステップ51〜56)を実施可能とすべきであ
る。通常のPDLでは、通常処理の空きを利用してダウ
ンロード処理を行うが、この強制PDLでは、通常処理
を最初から止めてしまい(ステップ52)、ダウンロー
ドされた現用のプログラムは一切動作させなくしてしま
う。そのため、通常のPDLの自己再起動(第1図のス
テップ15)に対する処理は不要である。強制PDLで
実行されるプログラムは、第5図に示すメモリの記憶領
域281〜291までの書き変え不可能なROM部であ
る。従って、ダウンロードしたプログラムに依存するこ
となく動作が可能となる。
The explanation above assumes that there are no problems with each process and that the program runs normally, but in reality there is a possibility that there is an inherent bug in the downloaded program, and the program download process itself described above will not work. . In this case, you will not be able to download the program again, so some kind of countermeasure is required. Therefore, considering the worst case, forced PD as shown in Figure 6 is applied.
It should be possible to implement the L process (steps 51-56). In normal PDL, download processing is performed using free space in normal processing, but in this forced PDL, normal processing is stopped from the beginning (step 52), and the downloaded current program is not run at all. . Therefore, processing for normal PDL self-restart (step 15 in FIG. 1) is not necessary. The program executed in the forced PDL is a ROM portion of the memory shown in FIG. 5 that cannot be rewritten, including storage areas 281 to 291. Therefore, it is possible to operate without depending on the downloaded program.

当然、ROM化されるプログラムは必ず動作する(致命
的なバグがない)ことが前提である。
Naturally, it is assumed that the program to be stored in ROM always works (without any fatal bugs).

以上、第2図(A)に示す方式について説明したが、2
系統のメモリ実現の方式として第2図(B)に示す方式
も考えられる。この方式では、ハードディスク等の補助
記憶装置がシステム内にある場合に、それを利用するこ
とにより、同様の処理が可能となる。ハードディスクが
もともと含まれているシステムに対しては後者の方式を
利用すると、記憶容量に関して有利である。
The method shown in FIG. 2(A) has been explained above.
The method shown in FIG. 2(B) may also be considered as a method for realizing the system memory. In this method, if an auxiliary storage device such as a hard disk exists in the system, similar processing can be performed by using it. For systems that already include a hard disk, the latter method is advantageous in terms of storage capacity.

次に、第2の発明について説明する。Next, the second invention will be explained.

第2の発明の一実施例のシステム構成を示す第7図を参
照すると、上位システム100は主装置制御部(MEC
)110と、補助記憶装置(HD)120と、HD12
0を制御するHD制御部(HDC)121と、下位シス
テムとの主通信制御部(MCOM)130及び通信専用
部(SCOM)131と、外部システムとのMC0M1
40及びSC0M141とで構成されている。また、下
位システム150は上位システム100との通信のため
に、MC0M180及びSCOM161を含んでいる。
Referring to FIG. 7 showing the system configuration of an embodiment of the second invention, the host system 100 includes a main device control unit (MEC).
) 110, auxiliary storage device (HD) 120, and HD 12
HD control unit (HDC) 121 that controls 0, main communication control unit (MCOM) 130 and dedicated communication unit (SCOM) 131 with lower system, and MC0M1 with external system.
40 and SC0M141. Furthermore, the lower system 150 includes an MC0M 180 and a SCOM 161 for communication with the upper system 100.

さらに、外部システム(EXT)170は例えばフロッ
ピィディスク171のような形態でプログラムを上位シ
ステム100に入力する。ここで、符号110,121
,130,131.140,141,160,161で
示す構成要素は分散化されたプロセッサ(CPU)であ
り、全てプログラムが必要である。なお、実際には下位
システム150は同じものが複数接続される場合が多く
、130,13L  1B0.181で示す要素は多数
存在するが、ここでは省略しである。
Furthermore, the external system (EXT) 170 inputs a program to the host system 100 in the form of a floppy disk 171, for example. Here, codes 110, 121
, 130, 131, 140, 141, 160, and 161 are distributed processors (CPUs), and all require programs. Note that in reality, in many cases, a plurality of the same lower systems 150 are connected, and there are many elements indicated by 130, 13L 1B0.181, but they are omitted here.

この構成において、制御の中心となるCPUはMECI
IOであり、MECIIOの電源オン以降の処理手順を
第8図に示す。また、MEC110以外のCPUの電源
オン以降の処理手順を第9図に示す。それぞれのCPU
は電源オン直後にまず自分が正しくプログラムを保持し
ているかどうかを確認する(ステップ802.92)。
In this configuration, the CPU that plays a central role in control is the MECI
IO, and the processing procedure after the MECIIO power is turned on is shown in FIG. Further, FIG. 9 shows the processing procedure after power-on of the CPUs other than the MEC 110. each CPU
Immediately after turning on the power, the computer first checks whether it is holding the program correctly (step 802.92).

確認の方法は例えば予めプログラムのチエツクサムを保
持しておき、それが正しいか否かで判断できる。
As a method of confirmation, for example, a checksum of the program is stored in advance, and it can be determined whether it is correct or not.

自分のプログラムが正しければそのまま立上り(ステッ
プ803.93)、通常処理に進む(ステップ804.
94)。一方、自分のプログラムが正しくなければ、プ
ログラムをロードする必要がある。プログラムをロード
する方法には次の2つが考えられる。つまり、(1)シ
ステム内のHD120にプログラムが保存されていれば
、それをロードする。また、(2)上記(1)が不可で
あれば、外部システムのEXT170からプログラムを
ダウンロードしてもらう。しかしながら、上記(2)は
それだけではダウンロードしたプログラムがシステム内
の該当CPUにしか残らず、再利用ができないため、次
のようにする。すなわち、(3)上記(1)が不可であ
れば、外部システムのEXT170からプログラムをダ
ウンロードし、それを−度HD120に保存し、(1)
が可能な状態にして(1)を実施する。これにより、シ
ステム内の必要なプログラムがダウンロードされた結果
、HD120に保存され、その後に必要に応じてHD1
20からアップロードされる。
If your program is correct, it will stand up (step 803.93) and proceed to normal processing (step 804.
94). On the other hand, if your program is not correct, you need to load it. There are two possible ways to load the program: That is, (1) if a program is stored in the HD 120 in the system, load it. (2) If the above (1) is not possible, have the program downloaded from the EXT 170 of the external system. However, with (2) above, the downloaded program remains only in the corresponding CPU in the system and cannot be reused, so the following is done. In other words, (3) If (1) above is not possible, download the program from the external system EXT170, save it to the HD120, and (1)
Execute (1) in a state where it is possible. As a result, the necessary programs in the system are downloaded and saved on the HD 120, and then the necessary programs are saved on the HD 120 as necessary.
Uploaded from 20.

第8図に示すMECIIOの処理としては、HD120
からのプログラムアップロード(PUL)要求(ステッ
プ805)により、HD120に該当プログラム有なら
(ステップ806)、HD120からPULL (ステ
ップ807)、再度ステップ802で確認すれば良い。
The MECIIO processing shown in FIG.
If the corresponding program is present on the HD 120 in response to a program upload (PUL) request (step 805) from the HD 120 (step 806), it is sufficient to perform a PULL from the HD 120 (step 807) and check again in step 802.

ステップ806でプログラムなしならば、EXT170
にプログラムダウンロード(PDL)要求を行い(ステ
ップ808)、上記(3)の結果としてプログラムがH
D120に保存され(ステップ809)、その後HD1
20よりPULが可能となる。以上、MECIIOのプ
ログラムのPDL及びPULについて述べたが他のプロ
グラムについても同様の゛処理である(ステップ810
〜816)。唯一の違いはEXT170及びHD120
との通信処理をMECIIOを経由して行っていること
である。MECIIO以外のそれぞれのCPUは自分が
プログラムを保持していない場合、PDL要求(第9図
、ステップ95)をMECIIOに対して送り(ステッ
プ810)、MECIIOは該当プログラムがHD12
0にあるか否かを(ステップ811,812)EXT1
70よりPDL要求するか(ステップ815)等を制御
する。以上のように、この発明のダウンロードはMEC
を中心として2段階のダウンロード処理を行っているた
め、階層型のダウンロード処理と言える。
If there is no program in step 806, EXT170
A program download (PDL) request is made to (step 808), and as a result of (3) above, the program is
D120 (step 809), and then HD1
PUL is possible from 20 onwards. The PDL and PUL of the MECIIO program have been described above, but the process is similar for other programs (step 810).
~816). The only difference is EXT170 and HD120
This means that communication processing with MECIIO is performed via MECIIO. If each CPU other than MECIIO does not hold a program, it sends a PDL request (FIG. 9, step 95) to MECIIO (step 810), and MECIIO determines that the corresponding program is on the HD12.
EXT1 (steps 811, 812)
From 70, it is controlled whether to request PDL (step 815), etc. As mentioned above, the download of this invention is
Since the download process is performed in two stages centered on , it can be said to be a hierarchical download process.

プログラムをロードするための上述の処理を実現するた
めにはそれぞれのCPUが、(1) PDL、PULの
処理のために必要な最低限のプログラムをROMとして
保持しており、(2)電源オン後に(1)が自動的に動
作するように予め作成しておかなければならない。ロー
ドされるプログラムはいわゆるアプリケーションプログ
ラムであり、PDL、PULを実現するための基本プロ
グラムはROMとして別に必要である。PDL、PUL
のためにROMとして必要なプログラムは次の通りであ
る。
In order to implement the above-mentioned processing for loading programs, each CPU must (1) hold the minimum programs necessary for PDL and PUL processing as ROM, and (2) turn on the power. It must be created in advance so that (1) will operate automatically later. The loaded program is a so-called application program, and the basic program for realizing PDL and PUL is required separately as a ROM. PDL, PUL
The programs required as ROM for this purpose are as follows.

(1) ME C: HDからのPUL処理EXTへの
PDL要求処理 他CPUへのPDL処理 HDへのプログラム保存処理 自プログラムチエツク (2)HDC:HDへのプログラム書込みHDからのプ
ログラム読取り MECへのPDL要求 自プログラムチエツク (3) MCOM : ME CへのPDL要求要求日
プログラムチエ ツク)SCOM:MBCへのPDL要求要求日プログラ
ムチエ ツク)EXT:MECへのPDL処理 及びそれぞれの間での送受信処理が必要である。
(1) ME C: PUL processing from HD PDL request processing to EXT PDL processing to other CPUs Program saving processing to HD Self program check (2) HDC: Writing programs to HD Reading programs from HD To MEC PDL request own program check (3) MCOM: PDL request request date program check to MEC) SCOM: PDL request request date program check to MBC) EXT: PDL processing to MEC and transmission/reception processing between each is required. It is.

以上の説明はプログラムが失われた場合の動作であるが
、EXT170の方からプログラムを変更する場合の処
理も同様に実現でき、第10図にその処理手順を示す。
The above explanation is about the operation when the program is lost, but the process when changing the program from the EXT 170 can be similarly realized, and the process procedure is shown in FIG.

MECIIOが通常処理中に(ステップ1001)、E
XT170よりPDL命令を受取った場合(ステップ1
002)、EXT170よりPDLL (ステップ10
03)、HD120に保存しくステップ1004)、該
当  CPUに対してPDL命令を送る(ステップ10
05)。MEC以外のCPUはMECIIOよりPDL
命令を受取ると(ステップ1012)、MECIIOへ
PDL要求を送り(ステップ1013)、MEC経由で
のPDL処理(ステップ1006.1014)が実行さ
れる。この処理のためにROMとして追加が必要なプロ
グラムは次の通りである。
During normal processing by MECIIO (step 1001), E
When a PDL command is received from the XT170 (step 1
002), PDLL from EXT170 (Step 10
03), save it to the HD 120, step 1004), and send the PDL command to the corresponding CPU (step 10).
05). CPUs other than MEC use PDL from MECIIO.
Upon receiving the command (step 1012), a PDL request is sent to MECIIO (step 1013), and PDL processing via the MEC (steps 1006 and 1014) is executed. The programs that need to be added to the ROM for this process are as follows.

(1)MEC: EXTからのPDL命令受付他CPU
へのPDL命令 (2)他CPU:MECからのPDL命令受付(3)E
XT:MECへのPDL命令 各CPUのメモリを何にするかは、ここでは問題ではな
いが、全体を制御するMECIIOはEEPROMlま
たMEC以外については多少の停電等に耐える必要があ
るのであればバッテリーバックアップRAMが適当であ
る。
(1) MEC: Other CPU that receives PDL commands from EXT
(2) Other CPU: Receive PDL command from MEC (3) E
XT: PDL command to MEC It doesn't matter what memory is used for each CPU, but MECIIO, which controls the whole thing, uses EEPROM, and other than MEC, if it is necessary to withstand some power outages, it uses batteries. Backup RAM is appropriate.

〔発明の効果〕〔Effect of the invention〕

以上説明したように第1の発明によれば、ソフトウェア
システムの外部からメモリにプログラムをダウンロード
することができるため、ROMの交換を行うことなく、
かつシステムを停止することなく、プログラムの交換を
行うことができる。
As explained above, according to the first invention, it is possible to download a program to the memory from outside the software system, so there is no need to replace the ROM.
Moreover, programs can be exchanged without stopping the system.

また、第2の発明によれば、ソフトウェアシステムの外
部からシステム内部の分散された全てのプロセッサに対
してプログラムダウンロードを行うことができるため、
それぞれのプロセッサのROMの交換を行うことなく、
プログラムの修正及びバージョンアップを行える。
Further, according to the second invention, since the program can be downloaded from outside the software system to all distributed processors inside the system,
Without replacing the ROM of each processor,
Can modify and update programs.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は第1の発明の一実施例の基本処理手順を示す図
、第2図は同実施例における2系統のメモリの構成例を
示す図、第3図及び第4図は同実施例における状態フラ
グを説明する図、第5図は同実施例におけるメモリマツ
プを示す図、第6図は同実施例における強制PDLの基
本処理手順を示す図、第7図は第2の発明の一実施例に
おけるシステム構成を示す図、第8図は第7図中のME
Cの立上り時の処理手順を示す図、第9図は第7図中の
MEC以外のCPUの立上り時の処理手順を示す図、第
10図は通常処理中のプログラムロードの処理手順を示
す図である。
FIG. 1 is a diagram showing the basic processing procedure of one embodiment of the first invention, FIG. 2 is a diagram showing an example of the configuration of two systems of memory in the same embodiment, and FIGS. 3 and 4 are the same embodiment. FIG. 5 is a diagram showing the memory map in the same embodiment. FIG. 6 is a diagram showing the basic processing procedure of forced PDL in the same embodiment. FIG. 7 is an example of an implementation of the second invention. A diagram showing the system configuration in an example, FIG. 8 is the ME in FIG.
FIG. 9 is a diagram showing the processing procedure when CPUs other than MEC in FIG. 7 start up; FIG. 10 is a diagram showing the processing procedure for program loading during normal processing. It is.

Claims (1)

【特許請求の範囲】 1、プログラムの記憶が可能な不揮発性のメモリを2系
統備え、前記メモリを備えるソフトウェアシステムの外
部から前記プログラムを入力してプログラムダウンロー
ドを行い、前記プログラムを現用系でない前記メモリに
保存し、保存した前記プログラムを新たな現用系として
自己再起動を行うことを特徴とするプログラムダウンロ
ード方式。 2、分散処理を行うために複数のプロセッサを備え、前
記プロセッサを備えるソフトウェアシステムの外部から
前記プロセッサに対するプログラムを入力してプログラ
ムダウンロードを行い、前記プログラムを前記システム
内の補助記憶装置に保存し、保存された前記プログラム
を前記プロセッサに転送することを特徴とするプログラ
ムダウンロード方式。
[Scope of Claims] 1. Two systems of non-volatile memory capable of storing programs are provided, the program is input from outside the software system equipped with the memory, the program is downloaded, and the program is downloaded from the software system that is not currently in use. A program download method characterized in that the program is saved in a memory and self-restarts using the saved program as a new active system. 2. A software system comprising a plurality of processors for performing distributed processing, inputting a program to the processor from outside the software system including the processor, downloading the program, and storing the program in an auxiliary storage device within the system; A program download method characterized in that the stored program is transferred to the processor.
JP29603690A 1990-10-31 1990-10-31 Program down loading system Pending JPH04167139A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP29603690A JPH04167139A (en) 1990-10-31 1990-10-31 Program down loading system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP29603690A JPH04167139A (en) 1990-10-31 1990-10-31 Program down loading system

Publications (1)

Publication Number Publication Date
JPH04167139A true JPH04167139A (en) 1992-06-15

Family

ID=17828277

Family Applications (1)

Application Number Title Priority Date Filing Date
JP29603690A Pending JPH04167139A (en) 1990-10-31 1990-10-31 Program down loading system

Country Status (1)

Country Link
JP (1) JPH04167139A (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07319838A (en) * 1994-05-20 1995-12-08 Nec Corp Program reading system
JPH08263079A (en) * 1995-03-28 1996-10-11 Yamaha Corp Communication karaoke system
US6289510B1 (en) 1998-03-12 2001-09-11 Fujitsu Limited Online program-updating system and computer-readable recording medium storing a program-updating program
WO2001099299A1 (en) * 2000-06-22 2001-12-27 Matsushita Electric Industrial Co., Ltd. Wireless data acquisition system
KR20020067311A (en) * 2001-02-16 2002-08-22 주식회사 리더컴 Method for system program upgrading by flash ROM download
JP2005332228A (en) * 2004-05-20 2005-12-02 Nec Engineering Ltd Program switching controller
JP2008015209A (en) * 2006-07-05 2008-01-24 Kddi Corp Voice recognition device and its recognition dictionary update method, program and recording medium
US8087014B1 (en) 2000-10-26 2011-12-27 Qualcomm Incorporated Method and apparatus for configuration management for a computing device
JP2012008575A (en) * 2011-07-08 2012-01-12 Seiko Epson Corp Image display device, start control method for the same, start control program, and computer-readable recording medium with the start control program thereon
JP2012525628A (en) * 2009-04-29 2012-10-22 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. BIOS image manager
JP2014142799A (en) * 2013-01-24 2014-08-07 Hitachi Ltd Information processing device, information processing method, and server
US8806936B2 (en) 2010-09-29 2014-08-19 Toyota Boshoku Kabushiki Kaisha Protection cover structure of slide detection apparatus for vehicle seat
JP2015069315A (en) * 2013-09-27 2015-04-13 アズビル株式会社 Device
JP2016143208A (en) * 2015-02-02 2016-08-08 株式会社ダイヘン Software rewriting device

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07319838A (en) * 1994-05-20 1995-12-08 Nec Corp Program reading system
JPH08263079A (en) * 1995-03-28 1996-10-11 Yamaha Corp Communication karaoke system
US6289510B1 (en) 1998-03-12 2001-09-11 Fujitsu Limited Online program-updating system and computer-readable recording medium storing a program-updating program
WO2001099299A1 (en) * 2000-06-22 2001-12-27 Matsushita Electric Industrial Co., Ltd. Wireless data acquisition system
US6850157B1 (en) 2000-06-22 2005-02-01 Matsushita Electric Industrial Co., Ltd. Wireless data acquisition system
US8087014B1 (en) 2000-10-26 2011-12-27 Qualcomm Incorporated Method and apparatus for configuration management for a computing device
KR20020067311A (en) * 2001-02-16 2002-08-22 주식회사 리더컴 Method for system program upgrading by flash ROM download
JP2005332228A (en) * 2004-05-20 2005-12-02 Nec Engineering Ltd Program switching controller
JP2008015209A (en) * 2006-07-05 2008-01-24 Kddi Corp Voice recognition device and its recognition dictionary update method, program and recording medium
JP2012525628A (en) * 2009-04-29 2012-10-22 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. BIOS image manager
US8850173B2 (en) 2009-04-29 2014-09-30 Hewlett-Packard Development Company, L.P. BIOS image manager
CN102422265B (en) * 2009-04-29 2015-04-08 惠普发展公司,有限责任合伙企业 Bios image manager
US8806936B2 (en) 2010-09-29 2014-08-19 Toyota Boshoku Kabushiki Kaisha Protection cover structure of slide detection apparatus for vehicle seat
JP2012008575A (en) * 2011-07-08 2012-01-12 Seiko Epson Corp Image display device, start control method for the same, start control program, and computer-readable recording medium with the start control program thereon
JP2014142799A (en) * 2013-01-24 2014-08-07 Hitachi Ltd Information processing device, information processing method, and server
JP2015069315A (en) * 2013-09-27 2015-04-13 アズビル株式会社 Device
JP2016143208A (en) * 2015-02-02 2016-08-08 株式会社ダイヘン Software rewriting device

Similar Documents

Publication Publication Date Title
US6615404B1 (en) Method and apparatus for downloading software into an embedded-system
US8930931B2 (en) Information processing apparatus using updated firmware and system setting method
JP5428738B2 (en) Information processing apparatus and firmware update method
JPH04167139A (en) Program down loading system
EP1873638A1 (en) Portable apparatus supporting multiple operating systems and supporting method therefor
US7739490B2 (en) Control apparatus, upgrade method and program product of the same
JP2019128946A (en) Method for updating firmware and electronic device using the same
JP5665923B2 (en) Electronic device capable of updating basic input / output system and update method
JP3915808B2 (en) Programmable controller, programmable controller system, and CPU unit
CN100362470C (en) BIOS on-line upgrading method
US20070050612A1 (en) Boot program update and restoration system and method thereof
JP2007122151A (en) Boot controller and boot control method
JP3093541B2 (en) Terminal device and online system for managing version numbers of programs and data
JPH05197559A (en) Remote software downloading system
US20230087221A1 (en) Detection fields of view
CN117130672A (en) Server start flow control method, system, terminal and storage medium
JP7239413B2 (en) EMBEDDED COMMUNICATION BOARD, COMMUNICATION TERMINAL, AND FIRMWARE UPDATE METHOD
JP2004192329A (en) Program rewriting method and terminal device
JPH06314202A (en) Image-forming device
JPH10187454A (en) Bios reloading system
JPH1063497A (en) Program updating method
JPH0855068A (en) Communication terminal equipment
JP2006260607A (en) Programmable controller, cpu unit, and method of starting duplexed operation
JP2004355389A (en) Remote update system
JP7411471B2 (en) Information processing equipment and communication systems