JP2007114943A - Method of updating firmware and information processing apparatus - Google Patents

Method of updating firmware and information processing apparatus Download PDF

Info

Publication number
JP2007114943A
JP2007114943A JP2005304332A JP2005304332A JP2007114943A JP 2007114943 A JP2007114943 A JP 2007114943A JP 2005304332 A JP2005304332 A JP 2005304332A JP 2005304332 A JP2005304332 A JP 2005304332A JP 2007114943 A JP2007114943 A JP 2007114943A
Authority
JP
Japan
Prior art keywords
firmware
master
cpu
rom
slave
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.)
Granted
Application number
JP2005304332A
Other languages
Japanese (ja)
Other versions
JP4804101B2 (en
Inventor
Akihiro Kobayashi
昭浩 小林
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.)
Kyocera Document Solutions Inc
Original Assignee
Kyocera Mita 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 Kyocera Mita Corp filed Critical Kyocera Mita Corp
Priority to JP2005304332A priority Critical patent/JP4804101B2/en
Publication of JP2007114943A publication Critical patent/JP2007114943A/en
Application granted granted Critical
Publication of JP4804101B2 publication Critical patent/JP4804101B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a method of updating firmware capable of reducing the time required for updating firmware that controls the operation of a plurality of CPUs communicably connected to one another, and an information processing apparatus that updates the firmware using the method. <P>SOLUTION: The process of updating the firmware stored in each slave ROM 23 is performed during waiting time after a master CPU 11 has issued a delete command or a write command to a master ROM 13 until there is a notification from the master ROM 13 that the delete or write is completed. Also, the process of updating the firmware stored in the master ROM 13 is performed during waiting time after the master CPU 11 has issued a delete command or a write command to each slave ROM 23 until there is a notification from each slave ROM 23 that the delete or write is completed. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、通信可能に接続される複数のCPUの動作を制御するファームフェアのファームフェア更新方法、及び通信可能に接続される複数のCPUを備えるとともにこのファームウェア更新方法を用いてファームウェアの更新を行う情報処理装置に関する。   The present invention includes a firmware update method for firmware that controls operations of a plurality of CPUs that are communicably connected, and a firmware update method that includes a plurality of CPUs that are communicably connected and uses the firmware update method. The present invention relates to an information processing apparatus.

従来より、通信可能に接続される複数のCPUを搭載する情報処理装置が知られている。この情報処理装置には、マスタCPUの動作を制御するファームウェアを格納する媒体として、このマスタCPUにフラッシュROMが内蔵されるか、或いは、フラッシュメモリ等の不揮発性デバイスが外部接続される。また、この情報処理装置には、マスタCPUと通信可能に接続されるスレーブCPUの動作を制御するファームウェアを格納する媒体として、スレーブCPUにフラッシュROMが内蔵されるか、或いは、フラッシュメモリ等の不揮発性デバイスが外部接続される。   Conventionally, an information processing apparatus equipped with a plurality of CPUs that are communicably connected is known. In the information processing apparatus, a flash ROM is built in the master CPU as a medium for storing firmware for controlling the operation of the master CPU, or a nonvolatile device such as a flash memory is externally connected. Further, in this information processing apparatus, a flash ROM is built in the slave CPU or a non-volatile memory such as a flash memory as a medium for storing firmware for controlling the operation of the slave CPU communicably connected to the master CPU. Device is externally connected.

このような構成の情報処理装置において、マスタCPU及びスレーブCPUの動作を制御するファームウェアの更新処理を行うとき、更新すべきファームウェアが記憶されたコンパクトフラッシュ(登録商標)等の外部記憶媒体がこの情報処理装置に接続される。そして、まず、マスタCPUの動作を制御するファームウェアを更新するために、外部記憶媒体より更新すべきファームウェアが読み出され、マスタCPUの動作を制御するファームウェアの更新処理が行われる。   In the information processing apparatus configured as described above, when performing update processing of firmware for controlling the operations of the master CPU and slave CPU, an external storage medium such as CompactFlash (registered trademark) in which firmware to be updated is stored is this information. Connected to processing equipment. First, in order to update the firmware for controlling the operation of the master CPU, the firmware to be updated is read from the external storage medium, and the firmware update process for controlling the operation of the master CPU is performed.

また、次に、マスタCPUの動作を制御するファームウェアの更新処理が完了すると、スレーブCPUの動作を制御するファームウェアを更新するために、外部記憶媒体より更新すべきファームウェアが読み出され、スレーブCPUの動作を制御するファームウェアの更新処理が行われる。よって、マスタCPUと通信可能に接続されるスレーブCPUが複数存在するとき、各スレーブCPUの動作を制御するファームウェアの更新処理が、スレーブCPUごとに順次行われる。   Next, when the update process of the firmware for controlling the operation of the master CPU is completed, the firmware to be updated is read from the external storage medium in order to update the firmware for controlling the operation of the slave CPU. Firmware update processing for controlling the operation is performed. Therefore, when there are a plurality of slave CPUs that are communicably connected to the master CPU, firmware update processing for controlling the operation of each slave CPU is sequentially performed for each slave CPU.

そして、複数のCPUの動作を制御するファームウェアの更新処理を管理するシステムとして、ソフトウェアを記録媒体内から取り出す取出手段と、複数のCPUおよびメモリと1つの取出手段との間をデータ伝送可能に接続するインターフェース手段と、記録媒体内から取り出したバージョンアップ用のソフトウェアを、インターフェース手段を介してこのソフトウェアを使用するCPU用のメモリ内に転送してソフトウェアを更新する更新手段と、メモリ内に格納された複数のCPU毎のソフトウェアのバージョンを一元的に管理するとともに、メモリ内のソフトウェアのバージョンアップを行うことを全てのCPUに通知する管理手投と、を備えることにより、簡易なシステムにより低コストで容易なソフトウェアのバージョンアップを実現することのできるソフトウェアのバージョンアップ管理システムが提案されている(特許文献1参照)。
特開2001−117760号公報
As a system for managing firmware update processing that controls the operation of a plurality of CPUs, an extraction means for extracting software from the recording medium and a plurality of CPUs and memories and a single extraction means are connected so that data can be transmitted. Interface means for updating, software for upgrading taken out from the recording medium to the memory for the CPU using the software via the interface means, updating means for updating the software, and stored in the memory In addition to centrally managing the software version for each of the multiple CPUs, and providing a management hand that notifies all the CPUs that the software in the memory is to be upgraded, a simple system reduces costs And easy software upgrade Software upgrade management system that can be implemented has been proposed (see Patent Document 1).
JP 2001-117760 A

ここで、上記情報処理装置において、マスタCPUやスレーブCPUの動作を制御するファームウェアを格納するフラッシュROMが各CPUに内蔵されるとき、まず、マスタCPUの動作を制御するファームウェアを更新するために、マスタCPUがフラッシュROMに対してマスタCPUの動作を制御するファームウェアを消去するための消去コマンドを発行すると、フラッシュROM内部において消去シーケンスが実行される。そして、マスタCPUがフラッシュROMに対して消去コマンドを発行してから、この消去シーケンスが完了して消去完了の通知を得るまでの間、マスタCPUは待ち状態となる。   Here, in the information processing apparatus, when a flash ROM storing firmware for controlling the operation of the master CPU and slave CPU is built in each CPU, first, in order to update the firmware for controlling the operation of the master CPU, When the master CPU issues an erase command for erasing firmware for controlling the operation of the master CPU to the flash ROM, an erase sequence is executed in the flash ROM. Then, after the master CPU issues an erasure command to the flash ROM, the master CPU is in a waiting state until the erasure sequence is completed and an erasure completion notification is obtained.

また、フラッシュROMに格納されるファームウェアの消去が完了した後、外部記憶媒体より読み出された更新すべきファームウェアのデータを1ブロックずつフラッシュROMに書き込むために、マスタCPUが、フラッシュROMに対して書き込みコマンドを発行すると、フラッシュROM内部において書き込みシーケンスが実行される。そして、マスタCPUがフラッシュROMに対して書き込みコマンドを発行してから、この書き込みシーケンスが完了して書き込み完了の通知を得るまでの間、マスタCPUは待ち状態となる。よって、外部記憶媒体より読み出された更新すべきファームウェアをフラッシュROMに書き込むとき、ブロックごとに待ち時間が発生する。   In addition, after the firmware stored in the flash ROM is completely erased, the master CPU stores the firmware data to be updated read from the external storage medium one block at a time in the flash ROM. When a write command is issued, a write sequence is executed inside the flash ROM. Then, after the master CPU issues a write command to the flash ROM, the master CPU enters a waiting state after the write sequence is completed and a write completion notification is obtained. Therefore, when writing the firmware to be updated read from the external storage medium to the flash ROM, a waiting time is generated for each block.

また、次に、マスタCPUの動作を制御するファームウェアの更新処理が完了した後、スレーブCPUの動作を制御するファームウェアを更新するために、マスタCPUがフラッシュROMに対してスレーブCPUの動作を制御するファームウェアを消去するための消去コマンドを発行すると、フラッシュROM内部において消去シーケンスが実行される。そして、マスタCPUがフラッシュROMに対して消去コマンドを発行してから、この消去シーケンスが完了して消去完了の通知を得るまでの間、マスタCPUは待ち状態となる。   Next, after the firmware update process for controlling the operation of the master CPU is completed, the master CPU controls the operation of the slave CPU with respect to the flash ROM in order to update the firmware for controlling the operation of the slave CPU. When an erase command for erasing the firmware is issued, an erase sequence is executed inside the flash ROM. Then, after the master CPU issues an erasure command to the flash ROM, the master CPU is in a waiting state until the erasure sequence is completed and an erasure completion notification is obtained.

更に、フラッシュROMに格納されるファームウェアの消去が完了した後、外部記憶媒体より読み出された更新すべきファームウェアのデータを1バイトずつ送信してフラッシュROMに書き込むために、マスタCPUが、フラッシュROMに対して書き込みコマンドを発行すると、フラッシュROM内部において書き込みシーケンスが実行される。そして、マスタCPUがフラッシュROMに対して書き込みコマンドを発行してから、この書き込みシーケンスが完了して送信完了の通知を得るまでの間、マスタCPUは待ち状態となる。よって、外部記憶媒体より読み出された更新すべきファームウェアをフラッシュROMに書き込むとき、1バイトのデータを送信するごとに待ち時間が発生する。   Further, after the erase of the firmware stored in the flash ROM is completed, the master CPU transmits the data of the firmware to be updated read from the external storage medium byte by byte and writes it to the flash ROM. When a write command is issued to the flash ROM, a write sequence is executed in the flash ROM. Then, after the master CPU issues a write command to the flash ROM, the master CPU is in a waiting state until the write sequence is completed and a transmission completion notification is obtained. Therefore, when the firmware to be updated read from the external storage medium is written to the flash ROM, a waiting time is generated each time 1-byte data is transmitted.

このように、マスタCPUの動作を制御するファームウェアの更新処理が完了した後にスレーブCPUの動作を制御するファームウェアの更新処理が行われる。よって、全ての更新処理が完了するまでに要する時間は、マスタCPUの動作を制御するファームウェアの更新処理に要する時間とスレーブCPUの動作を制御するファームウェアの更新処理に要する時間の総和となり、更新処理を行うユーザ、或いは、サービスマンに対し、多大な時間的負担を強いるものとなっていた。   In this way, after the firmware update process for controlling the operation of the master CPU is completed, the firmware update process for controlling the operation of the slave CPU is performed. Therefore, the time required for completing all the update processes is the sum of the time required for the firmware update process for controlling the operation of the master CPU and the time required for the firmware update process for controlling the operation of the slave CPU. For this reason, it has been a heavy burden on the user who performs the service or the service person.

特に、マスタCPUに対して複数のスレーブCPUが通信可能に接続される情報処理装置においては、全てのスレーブCPUの動作を制御するファームウェアの更新処理に要する時間が、各スレーブCPUの動作を制御するファームウェアの更新処理に要する時間にスレーブCPUの個数を掛けた時間と概ね等しくなるため、ファームウェアの更新処理に要する時間が更に増加するという問題がある。   In particular, in an information processing apparatus in which a plurality of slave CPUs are communicably connected to a master CPU, the time required for firmware update processing that controls the operation of all slave CPUs controls the operation of each slave CPU. Since the time required for firmware update processing is approximately equal to the time obtained by multiplying the number of slave CPUs, there is a problem that the time required for firmware update processing further increases.

本発明は、かかる点に鑑みてなされたものであり、その目的とするところは、通信可能に接続される複数のCPUの動作を制御するファームフェアの更新処理に要する時間を短縮することのできるファームフェア更新方法、及びこのファームウェア更新方法を用いてファームウェアの更新を行う情報処理装置を提供することにある。   The present invention has been made in view of this point, and an object of the present invention is to reduce the time required for firmware update processing for controlling the operations of a plurality of CPUs that are communicably connected. A firmware update method and an information processing apparatus that performs firmware update using the firmware update method are provided.

上記目的を達成するために、本発明のファームウェア更新方法は、互いに通信可能に接続される複数のCPUを搭載するとともに前記各CPUの動作を制御するファームウェアが格納されるメモリをCPUごとに備えた情報処理装置における前記ファームウェアを更新するためのファームウェア更新方法であって、前記情報処理装置に接続されるとともに更新すべきファームウェアが記憶された記憶媒体を制御するマスタCPU及び当該マスタCPUと通信可能に接続されるスレーブCPUのそれぞれの動作を制御するファームウェアを更新するとき、前記マスタCPUが、当該マスタCPUの動作を制御する前記ファームウェアを前記メモリより消去するための消去コマンド及び前記記憶媒体に記憶された前記ファームウェアを前記メモリに書き込むための書き込みコマンドを発行した後、前記消去コマンド及び前記書き込みコマンドに対する応答を得るまでの待ち時間に、前記マスタCPUが、前記スレーブCPUの動作を制御する前記ファームウェアを更新するための処理を行うことを特徴とする。   In order to achieve the above object, a firmware update method according to the present invention includes a plurality of CPUs that are communicably connected to each other and a memory that stores firmware for controlling the operation of each CPU. A firmware update method for updating the firmware in an information processing apparatus, wherein the master CPU is connected to the information processing apparatus and controls a storage medium storing firmware to be updated, and is communicable with the master CPU. When updating the firmware that controls the operation of each connected slave CPU, the master CPU stores the firmware that controls the operation of the master CPU in the storage medium and an erase command for erasing the firmware from the memory. The firmware to the memory After issuing a write command for writing, the master CPU performs a process for updating the firmware that controls the operation of the slave CPU in a waiting time until a response to the erase command and the write command is obtained. It is characterized by that.

このようなファームウェア更新方法において、前記マスタCPUが、当該マスタCPUの動作を制御する前記ファームウェアを前記メモリより消去するための消去コマンド及び前記記憶媒体に記憶された前記ファームウェアを前記メモリに書き込むための書き込みコマンドを発行した後、前記消去コマンド及び前記書き込みコマンドに対する応答を得るまでの待ち時間と、前記マスタCPUが、前記スレーブCPUの動作を制御する前記ファームウェアを前記メモリより消去するための消去コマンド及び前記記憶媒体に記憶された前記ファームウェアを前記メモリに書き込むための書き込みコマンドを発行した後、前記消去コマンド及び前記書き込みコマンドに対する応答を得るまでの待ち時間と、を計測してこれらの計測データを前記情報処理装置の不揮発性メモリに記憶させ、前記不揮発性メモリに記憶された計測データに基づき、前記マスタCPUが、前記マスタCPUの動作を制御する前記ファームウェアを更新するための処理及び前記スレーブCPUの動作を制御する前記ファームウェアを更新するための処理を行う。   In such a firmware update method, the master CPU writes an erase command for erasing the firmware that controls the operation of the master CPU from the memory and the firmware stored in the storage medium into the memory. After issuing a write command, a waiting time until obtaining a response to the erase command and the write command, an erase command for the master CPU to erase the firmware controlling the operation of the slave CPU from the memory, and After issuing a write command for writing the firmware stored in the storage medium to the memory, the waiting time until obtaining a response to the erase command and the write command is measured, and the measurement data is measured information Processing for updating the firmware for controlling the operation of the master CPU by the master CPU based on the measurement data stored in the nonvolatile memory of the processing device and the operation of the slave CPU A process for updating the firmware for controlling is performed.

このように、マスタCPUが不揮発性メモリに記憶された計測データを参照し、これらの待ち時間を最大限に利用して各メモリに格納されたファームウェアの更新処理を並列で実行することにより、ファームウェアの更新処理に要する時間を大幅に短縮することができる。   As described above, the master CPU refers to the measurement data stored in the nonvolatile memory, and performs the update process of the firmware stored in each memory in parallel by using these waiting times to the maximum, so that the firmware The time required for the update process can be greatly reduced.

また、このようなファームウェア更新方法において、前記マスタCPUと通信可能に接続される前記スレーブCPUが複数存在するとき、前記マスタCPUが、前記各スレーブCPUの動作を制御する前記ファームウェアを前記メモリより消去するための消去コマンド及び前記記憶媒体に記憶された前記ファームウェアを前記メモリに書き込むための書き込みコマンドを発行した後、前記消去コマンド及び前記書き込みコマンドに対する応答を得るまでの待ち時間を、スレーブCPUごとに計測してこれらの計測データを前記情報処理装置の不揮発性メモリに記憶させ、前記マスタCPUが、前記不揮発性メモリに記憶された計測データに基づき更新処理を行う前記各スレーブCPUの最適な組み合わせを決定し、この組み合わせに従って、前記マスタCPUの動作を制御する前記ファームウェアを更新するための処理及び前記各スレーブCPUの動作を制御する前記ファームウェアを更新するための処理を行う。   Further, in such a firmware update method, when there are a plurality of slave CPUs that are communicably connected to the master CPU, the master CPU erases the firmware that controls the operation of each slave CPU from the memory. For each slave CPU, after issuing an erase command for executing the write command for writing the firmware stored in the storage medium to the memory, and obtaining a response to the erase command and the write command. Measure and store these measurement data in the nonvolatile memory of the information processing apparatus, and the master CPU performs an optimal combination of the slave CPUs that perform update processing based on the measurement data stored in the nonvolatile memory. Determine and follow this combination Processing for updating the firmware that controls the operation of the serial master CPU and the controlling the operation of each slave CPU performs a process for updating the firmware.

このとき、マスタCPUは、マスタCPUが各スレーブCPUの動作を制御するファームウェアをメモリより消去するための消去コマンド及び記憶媒体に記憶されたファームウェアをメモリに書き込むための書き込みコマンドを発行した後、消去コマンド及び書き込みコマンドに対する応答を得るまでの待ち時間が、マスタCPUが当該マスタCPUの動作を制御するファームウェアをメモリより消去するための消去コマンド及び記憶媒体に記憶されたファームウェアをメモリに書き込むための書き込みコマンドを発行した後、消去コマンド及び書き込みコマンドに対する応答を得るまでの待ち時間に、収まるように、更新処理を行うスレーブCPUの最適な組み合わせを決定する。これにより、マスタCPUと通信可能に接続されるスレーブCPUが複数存在するときにも、ファームウェアの更新処理に要する時間を大幅に短縮することができる。   At this time, the master CPU issues an erasure command for erasing the firmware that controls the operation of each slave CPU from the memory and a write command for writing the firmware stored in the storage medium to the memory, and then erases the master CPU. The waiting time until the response to the command and the write command is obtained is the erase command for the master CPU to erase the firmware for controlling the operation of the master CPU from the memory, and the write for writing the firmware stored in the storage medium to the memory. After the command is issued, an optimal combination of slave CPUs that perform update processing is determined so as to fall within the waiting time until a response to the erase command and the write command is obtained. Thus, even when there are a plurality of slave CPUs that are communicably connected to the master CPU, the time required for the firmware update process can be greatly reduced.

また、上記目的を達成するために、本発明の情報処理装置は、互いに通信可能に接続される複数のCPUを搭載するとともに前記各CPUの動作を制御するファームウェアが格納されるメモリをCPUごとに備える情報処理装置において、前記メモリに格納される前記ファームウェアに対して更新すべきファームウェアが記憶された記憶媒体が接続され、上述の何れかのファームウェア更新方法を用いて前記メモリに格納される前記ファームウェアの更新処理を行うことを特徴とする。   In order to achieve the above object, an information processing apparatus according to the present invention includes a plurality of CPUs that are communicably connected to each other and a memory that stores firmware for controlling the operation of each CPU. In the information processing apparatus, the firmware stored in the memory using any one of the firmware update methods described above, wherein a storage medium storing firmware to be updated is connected to the firmware stored in the memory The update process is performed.

本発明によれば、マスタCPUが当該マスタCPUの動作を制御するファームウェアをメモリより消去するための消去コマンド及び記憶媒体に記憶されたファームウェアをメモリに書き込むための書き込みコマンドを発行した後、消去コマンド及び書き込みコマンドに対する応答を得るまでの待ち時間に、マスタCPUがスレーブCPUの動作を制御するファームウェアを更新するための処理を行うようにしているため、マスタCPUの動作を制御するファームウェアの更新処理とスレーブCPUの動作を制御するファームウェアの更新処理とを並列実行することが可能となり、通信可能に接続される複数のCPUの動作を制御するファームフェアの更新処理に要する時間を大幅に短縮することができ、更新処理を行うユーザ、或いは、サービスマンに対する時間的負担を極力減らすことができる。特に、複数のスレーブCPUがマスタCPUと通信可能に接続されるとき、これらのCPUの動作を制御するファームフェアの更新処理に要する時間をより一層短縮することができる。   According to the present invention, after the master CPU issues an erasure command for erasing the firmware for controlling the operation of the master CPU from the memory and a write command for writing the firmware stored in the storage medium to the memory, the erasure command Since the master CPU performs the process for updating the firmware for controlling the operation of the slave CPU during the waiting time until the response to the write command is obtained, the firmware update process for controlling the operation of the master CPU is performed. The firmware update process for controlling the operation of the slave CPU can be executed in parallel, and the time required for the firmware update process for controlling the operations of a plurality of CPUs connected so as to communicate with each other can be greatly reduced. Yes, the user who performs the update process or the service It is possible to reduce as much as possible the time burden for Suman. In particular, when a plurality of slave CPUs are communicably connected to the master CPU, the time required for firmware update processing for controlling the operations of these CPUs can be further reduced.

以下、本発明の実施形態を図面に基づいて詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

《発明の実施形態》
図1に示すように、本実施形態の情報処理装置は、マスタCPU装置10と複数のスレーブCPU装置20とによって構成されており、マスタCPU装置10と各スレーブCPU装置20とが通信可能に接続されている。尚、CPUとは、中央処理装置(Central Processing Unit)を表す。また、この情報処理装置では、図1に示すように、スレーブCPU装置20を2台設置しているが、これに限らず、スレーブCPU装置20を1台だけ設置してもよいし、或いは、スレーブCPU装置20を3台以上設置するようにしてもよい。
<< Embodiment of the Invention >>
As shown in FIG. 1, the information processing apparatus according to the present embodiment includes a master CPU device 10 and a plurality of slave CPU devices 20, and the master CPU device 10 and each slave CPU device 20 are communicably connected. Has been. The CPU represents a central processing unit. In this information processing apparatus, as shown in FIG. 1, two slave CPU devices 20 are installed. However, the present invention is not limited to this, and only one slave CPU device 20 may be installed, or Three or more slave CPU devices 20 may be installed.

このような構成の情報処理装置において、図1に破線で示すマスタCPU装置10は、マスタCPU装置10全体の動作を制御するマスタ側CPU11と、このマスタ側CPU11が各種制御を実行する際にワーク領域として使用されるマスタ側RAM(Random Access Memory)12と、各種制御プログラムや各種データ等が格納されるマスタ側フラッシュROM(Read Only Memory)13(以下、マスタ側ROM13と呼ぶ)と、このマスタCPU装置10に接続されるとともに更新すべきファームウェアが記憶されるコンパクトフラッシュ(登録商標)等の外部記憶媒体14と、後述する各スレーブCPU装置20のスレーブ側通信部25との通信によりデータの送受信を行うマスタ側通信部15と、を備えている。   In the information processing apparatus having such a configuration, a master CPU device 10 indicated by a broken line in FIG. 1 includes a master CPU 11 that controls the operation of the entire master CPU device 10 and a work piece when the master CPU 11 executes various controls. A master-side RAM (Random Access Memory) 12 used as an area, a master-side flash ROM (Read Only Memory) 13 (hereinafter referred to as a master-side ROM 13) in which various control programs and various data are stored, and the master Transmission / reception of data by communication between an external storage medium 14 such as a compact flash (registered trademark) connected to the CPU device 10 and storing firmware to be updated, and a slave side communication unit 25 of each slave CPU device 20 described later. And a master side communication unit 15 that performs the above.

そして、図1に示すマスタ側ROM13には、マスタ側CPU11を動作させるとともにマスタ側CPU11の動作を制御するためのファームウェアが格納されている。   The master-side ROM 13 shown in FIG. 1 stores firmware for operating the master-side CPU 11 and controlling the operation of the master-side CPU 11.

また、図1に示す外部記憶媒体14には、マスタ側ROM13に格納されるファームウェアや後述するスレーブ側ROM23に格納されるファームウェアに対して更新すべきファームウェアが記憶されている。尚、この外部記憶媒体14は、コンパクトフラッシュ(登録商標)に限定されるものではなく、更新すべきファームウェアを情報処理装置の外部より提供できるものであれば何でもよい。例えば、この外部記憶媒体14として、CD−ROM(Compact Disk Read Only Memory)やMO(Magneto-Optical disk)などが挙げられる。   The external storage medium 14 shown in FIG. 1 stores firmware to be updated with respect to firmware stored in the master ROM 13 and firmware stored in a slave ROM 23 described later. The external storage medium 14 is not limited to the compact flash (registered trademark), and may be anything that can provide firmware to be updated from outside the information processing apparatus. Examples of the external storage medium 14 include a CD-ROM (Compact Disk Read Only Memory) and an MO (Magneto-Optical disk).

また、図1に示すマスタ側通信部15は、後述するスレーブ側通信部25との間で、同期式または非同期式のシリアル通信を行う。尚、マスタ側通信部15とスレーブ側通信部25との間の通信手段としては、他に、USB(Universal Serial Bus)、LAN(Local Area Network)、或いは、インターネットなどが挙げられる。   Further, the master side communication unit 15 shown in FIG. 1 performs synchronous or asynchronous serial communication with a slave side communication unit 25 described later. In addition, as a communication means between the master side communication part 15 and the slave side communication part 25, USB (Universal Serial Bus), LAN (Local Area Network), or the internet is mentioned.

一方、図1に破線で示す各スレーブCPU装置20は、スレーブCPU装置20全体の動作を制御するスレーブ側CPU21と、このスレーブ側CPU21が各種制御を実行する際にワーク領域として使用されるスレーブ側RAM22と、各種制御プログラムや各種データ等が格納されるスレーブ側フラッシュROM23(以下、スレーブ側ROM23と呼ぶ)と、マスタCPU装置10のマスタ側通信部15との通信によりデータの送受信を行うスレーブ側通信部25と、を備えている。   On the other hand, each slave CPU device 20 indicated by a broken line in FIG. 1 includes a slave CPU 21 that controls the operation of the entire slave CPU device 20 and a slave side that is used as a work area when the slave CPU 21 executes various controls. A slave side that transmits and receives data by communication between the RAM 22, a slave flash ROM 23 (hereinafter referred to as the slave ROM 23) that stores various control programs, various data, and the like, and the master side communication unit 15 of the master CPU device 10. And a communication unit 25.

そして、図1に示すスレーブ側ROM23には、スレーブ側CPU21を動作させるとともにスレーブ側CPU21の動作を制御するためのファームウェアが格納されている。   The slave ROM 23 shown in FIG. 1 stores firmware for operating the slave CPU 21 and controlling the operation of the slave CPU 21.

このように情報処理装置が構成されるとき、マスタ側CPU11は、マスタCPU装置10に外部記憶媒体14が接続されたことを認識すると、この外部記憶媒体14に記憶されたファームウェアのバージョンを確認するとともに、マスタ側ROM13に格納されたファームウェアのバージョンを確認する。また、マスタ側通信部15と各スレーブ側通信部25との間で通信を行うことにより、マスタ側CPU11は、各スレーブ側ROM23に格納されたファームウェアのバージョンを確認する。   When the information processing apparatus is configured as described above, when the master side CPU 11 recognizes that the external storage medium 14 is connected to the master CPU apparatus 10, the master side CPU 11 confirms the version of the firmware stored in the external storage medium 14. At the same time, the version of the firmware stored in the master ROM 13 is confirmed. Further, by performing communication between the master side communication unit 15 and each slave side communication unit 25, the master side CPU 11 confirms the version of the firmware stored in each slave side ROM 23.

続いて、マスタ側CPU11において、外部記憶媒体14に記憶されたファームウェアのバージョンと、マスタ側ROM13及び各スレーブ側ROM23に格納されたファームウェアのバージョンと、が比較される。この比較結果により、マスタ側CPU11が、外部記憶媒体14に記憶されたファームウェアのバージョンの方がマスタ側ROM13或いは各スレーブ側ROM23に格納されたファームウェアのバージョンよりも高いことを確認すると、マスタ側ROM13或いは各スレーブ側ROM23に格納されたファームウェアの更新処理を行う。   Subsequently, the master CPU 11 compares the firmware version stored in the external storage medium 14 with the firmware versions stored in the master ROM 13 and each slave ROM 23. When the master CPU 11 confirms that the firmware version stored in the external storage medium 14 is higher than the firmware version stored in the master ROM 13 or each slave ROM 23 based on the comparison result, the master ROM 13 Alternatively, the firmware stored in each slave ROM 23 is updated.

具体的に、マスタ側ROM13に格納されたファームウェアの更新処理を行うとき、マスタ側CPU11は、マスタ側ROM13に格納されたファームウェアを消去するために、このマスタ側ROM13に対して消去コマンドを発行する。また、マスタ側ROM13に格納されたファームウェアの消去後、マスタ側CPU11は、外部記憶媒体14より読み出したファームウェアのデータをマスタ側ROM13に書き込むために、マスタ側ROM13に対して書き込みコマンドを発行する。   Specifically, when updating the firmware stored in the master ROM 13, the master CPU 11 issues an erase command to the master ROM 13 in order to erase the firmware stored in the master ROM 13. . Further, after erasing the firmware stored in the master ROM 13, the master CPU 11 issues a write command to the master ROM 13 in order to write the firmware data read from the external storage medium 14 into the master ROM 13.

そして、マスタ側CPU11がマスタ側ROM13に対して消去コマンド或いは書き込みコマンドを発行した後、このマスタ側ROM13より消去完了或いは書き込み完了の通知を得るまでの間、マスタ側CPU11は待ち状態となる。よって、この情報処理装置では、マスタ側CPU11がマスタ側ROM13に対して消去コマンド或いは書き込みコマンドを発行した後、このマスタ側ROM13より消去完了或いは書き込み完了の通知を得るまで待ち時間に、各スレーブCPU装置20のスレーブ側ROM23に格納されたファームウェアの更新処理を行う。   Then, after the master side CPU 11 issues an erase command or write command to the master side ROM 13, the master side CPU 11 is in a waiting state until the master side ROM 13 receives a notification of completion of erase or write completion. Therefore, in this information processing apparatus, after the master CPU 11 issues an erase command or write command to the master ROM 13, each slave CPU 11 waits until a notification of completion of erase or write completion is obtained from the master ROM 13. The firmware stored in the slave ROM 23 of the device 20 is updated.

具体的に、マスタ側CPU11は、各スレーブCPU装置20のスレーブ側ROM23に格納されたファームウェアを消去するために、各スレーブ側ROM23に対して消去コマンドを発行する。また、各スレーブ側ROM23に格納されたファームウェアの消去後、マスタ側CPU11は、外部記憶媒体14より読み出したファームウェアのデータを各スレーブ側ROM23に書き込むために、各スレーブ側ROM23に対して書き込みコマンドを発行する。   Specifically, the master CPU 11 issues an erase command to each slave ROM 23 in order to erase the firmware stored in the slave ROM 23 of each slave CPU device 20. Further, after erasing the firmware stored in each slave ROM 23, the master CPU 11 sends a write command to each slave ROM 23 in order to write the firmware data read from the external storage medium 14 to each slave ROM 23. Issue.

そして、マスタ側CPU11が各スレーブ側CPU21に対して消去コマンド或いは書き込みコマンドを発行した後、各スレーブ側ROM23より消去完了或いは書き込み完了の通知を得るまでの間、マスタ側CPU11は待ち状態となる。よって、この情報処理装置では、マスタ側CPU11が各スレーブ側ROM23に対して消去コマンド或いは書き込みコマンドを発行した後、各スレーブ側ROM23より消去完了或いは書き込み完了の通知を得るまでの待ち時間に、マスタ側ROM13に格納されたファームウェアの更新処理を行う。   After the master CPU 11 issues an erase command or write command to each slave CPU 21, the master CPU 11 is in a waiting state until it receives a notification of completion of erase or write completion from each slave ROM 23. Therefore, in this information processing apparatus, after the master side CPU 11 issues an erasure command or a write command to each slave ROM 23, the master side CPU 11 waits until the master side CPU 23 receives an erase completion or write completion notification from each slave side ROM 23. The firmware stored in the side ROM 13 is updated.

このように構成された情報処理装置におけるマスタ側ROM13及び各スレーブ側ROM23に格納されたファームウェアの更新処理について、図2に示すフローチャートを参照しながら説明する。尚、ここでは、マスタCPU装置10に通信可能に接続されるスレーブCPU装置20を1個として説明を行う。また、丸囲みのA及びBの動作については、全てのステップ(即ち、ステップS11からステップS25まで)について説明した後に、その説明を行う。また、上述した情報処理装置の動作と重複する部分については、その詳細な説明を省略する。   The update process of the firmware stored in the master ROM 13 and each slave ROM 23 in the information processing apparatus configured as described above will be described with reference to the flowchart shown in FIG. Here, a description will be given assuming that one slave CPU device 20 is communicably connected to the master CPU device 10. The operations of circles A and B will be described after all the steps (that is, steps S11 to S25) have been described. In addition, detailed description of portions overlapping the above-described operation of the information processing apparatus will be omitted.

マスタCPU装置10のマスタ側CPU11は、このマスタCPU装置10に外部記憶媒体14が接続されたことを認識すると、外部記憶媒体14に記憶されたファームウェアのバージョンを確認するとともに、マスタ側ROM13及びスレーブCPU装置20のスレーブ側ROM23に格納されたファームウェアのバージョンを確認する。   When the master side CPU 11 of the master CPU device 10 recognizes that the external storage medium 14 is connected to the master CPU device 10, the master side CPU 11 confirms the version of the firmware stored in the external storage medium 14, and the master side ROM 13 and slave The firmware version stored in the slave ROM 23 of the CPU device 20 is confirmed.

そして、マスタ側CPU11において、外部記憶媒体14に記憶されたファームウェアのバージョンと、マスタ側ROM13及びスレーブ側ROM23に格納されたファームウェアのバージョンと、を比較することにより、マスタ側ROM13及びスレーブ側ROM23に格納されたファームウェアを更新する必要があるか否かの判断が行われる(ステップS11)。   Then, the master side CPU 11 compares the firmware version stored in the external storage medium 14 with the firmware version stored in the master side ROM 13 and the slave side ROM 23, thereby allowing the master side ROM 13 and the slave side ROM 23 to store the firmware version. A determination is made whether the stored firmware needs to be updated (step S11).

この比較結果により、マスタ側CPU11が、外部記憶媒体14に記憶されたファームウェアのバージョンがマスタ側ROM13及びスレーブ側ROM23に格納されたファームウェアのバージョンと同じか、このバージョンよりも低いことを確認すると(ステップS11でNo)、マスタ側ROM13及びスレーブ側ROM23に格納されたファームウェアの更新処理を中止し、処理を終了する。   When the comparison result indicates that the master CPU 11 confirms that the firmware version stored in the external storage medium 14 is the same as or lower than the firmware versions stored in the master ROM 13 and slave ROM 23 ( In step S11, No), the updating process of the firmware stored in the master ROM 13 and the slave ROM 23 is stopped, and the process is terminated.

一方、この比較結果により、マスタ側CPU11が、外部記憶媒体14に記憶されたファームウェアのバージョンの方がマスタ側ROM13及びスレーブ側ROM23に格納されたファームウェアのバージョンよりも高いことを確認すると(ステップS11でYes)、マスタ側ROM13及びスレーブ側ROM23に格納されたファームウェアの更新処理を開始する。尚、以下では、マスタ側ROM13とスレーブ側ROM23の両方に格納されたファームウェアを更新するものとして説明を行う。   On the other hand, when the comparison result shows that the master CPU 11 confirms that the firmware version stored in the external storage medium 14 is higher than the firmware versions stored in the master ROM 13 and the slave ROM 23 (step S11). Yes), update processing of the firmware stored in the master ROM 13 and the slave ROM 23 is started. In the following description, it is assumed that the firmware stored in both the master ROM 13 and the slave ROM 23 is updated.

まず、マスタ側CPU11は、マスタ側ROM13に格納されたファームウェアの更新処理を開始する(ステップS12)。そして、マスタ側CPU11が、マスタ側ROM13に格納されたファームウェアを消去するために、このマスタ側ROM13に対して消去コマンドを発行することにより(ステップS13)、マスタ側ROM13内部において消去シーケンスが実行される。続いて、マスタ側CPU11は、マスタ側ROM13に問い合わせることによって、マスタ側ROM13に格納されたファームウェアの消去が完了したか否かの判断を行う(ステップS14)。   First, the master side CPU 11 starts updating the firmware stored in the master side ROM 13 (step S12). Then, the master side CPU 11 issues an erase command to the master side ROM 13 in order to erase the firmware stored in the master side ROM 13 (step S13), whereby an erase sequence is executed inside the master side ROM 13. The Subsequently, the master CPU 11 makes an inquiry to the master ROM 13 to determine whether or not the erasure of the firmware stored in the master ROM 13 has been completed (step S14).

このとき、マスタ側CPU11が、マスタ側ROM13より消去完了の通知を得て、マスタ側ROM13に格納されたファームウェアの消去が完了したことを確認すると(ステップS14でYes)、マスタ側CPU11によって、外部記憶媒体14より更新すべきファームウェアのデータが1ブロックずつ読み出される(ステップS15)。そして、マスタ側CPU11が、マスタ側ROM13に新しいファームウェアを格納するために、このマスタ側ROM13に対して書き込みコマンドを発行する。これにより、外部記憶媒体14より読み出された更新すべきファームウェアのデータが、ブロック単位でこのマスタ側ROM13に書き込まれる(ステップS16)。   At this time, when the master-side CPU 11 receives a notification of the completion of erasure from the master-side ROM 13 and confirms that the erasure of the firmware stored in the master-side ROM 13 has been completed (Yes in step S14), the master-side CPU 11 Firmware data to be updated is read block by block from the storage medium 14 (step S15). Then, the master CPU 11 issues a write command to the master ROM 13 in order to store new firmware in the master ROM 13. As a result, the firmware data to be updated read from the external storage medium 14 is written in the master ROM 13 in units of blocks (step S16).

続いて、マスタ側CPU11において、マスタ側ROM13に問い合わせることによって、外部記憶媒体14より読み出された更新すべきファームウェアのデータのマスタ側ROM13への書き込みが完了したか否かの判断が1ブロックずつ行われる(ステップS17)。このとき、マスタ側CPU11が、マスタ側ROM13より書き込み完了の通知を得て、マスタ側ROM13へのデータの書き込みが1ブロック分完了したことを確認すると(ステップS17でYes)、次に、マスタ側CPU11において、外部記憶媒体14に記憶される更新すべきファームウェアの全てのデータのマスタ側ROM13への書き込みが完了したか否かの判断が行われる(ステップS18)。   Subsequently, the master-side CPU 11 makes an inquiry to the master-side ROM 13 to determine whether writing of firmware data to be updated read from the external storage medium 14 to the master-side ROM 13 has been completed, one block at a time. Performed (step S17). At this time, when the master side CPU 11 receives a notification of writing completion from the master side ROM 13 and confirms that writing of data to the master side ROM 13 is completed for one block (Yes in step S17), then the master side CPU 11 In the CPU 11, it is determined whether or not writing of all data of firmware to be updated stored in the external storage medium 14 to the master ROM 13 is completed (step S18).

このとき、マスタ側CPU11が、外部記憶媒体14に記憶されるファームウェアの全てのデータのマスタ側ROM13への書き込みが完了していないことを確認すると(ステップS18でNo)、ステップS15に戻り、マスタ側CPU11によって、外部記憶媒体14より更新すべきファームウェアのデータが1ブロックずつ読み出される。一方、このとき、マスタ側CPU11が、外部記憶媒体14に記憶される更新すべきファームウェアの全てのデータのマスタ側ROM13への書き込みが完了したことを確認すると(ステップS18でYes)、スレーブ側ROM23に格納されたファームウェアの更新処理が完了したか否かの判断が行われる。   At this time, if the master side CPU 11 confirms that writing of all data of the firmware stored in the external storage medium 14 to the master side ROM 13 is not completed (No in step S18), the process returns to step S15, and the master side The firmware data to be updated is read from the external storage medium 14 one block at a time by the side CPU 11. On the other hand, when the master side CPU 11 confirms that writing of all the data of the firmware to be updated stored in the external storage medium 14 to the master side ROM 13 is completed (Yes in step S18), the slave side ROM 23 A determination is made as to whether the update process of the firmware stored in is completed.

このとき、マスタ側CPU11が、スレーブ側ROM23に格納されたファームウェアの更新処理が完了したことを確認すると、マスタ側ROM13及びスレーブ側ROM23に格納されたファームウェアの更新処理を終了する。一方、このとき、マスタ側CPU11が、スレーブ側ROM23に格納されたファームウェアの更新処理が完了していないことを確認すると、スレーブ側ROM23に格納されたファームウェアの更新処理に移行する。そして、マスタ側CPU11が、スレーブ側ROM23に格納されたファームウェアの更新処理が完了したことを確認すると、マスタ側ROM13及びスレーブ側ROM23に格納されたファームウェアの更新処理を終了する。   At this time, when the master CPU 11 confirms that the update process of the firmware stored in the slave ROM 23 is completed, the update process of the firmware stored in the master ROM 13 and the slave ROM 23 is terminated. On the other hand, when the master side CPU 11 confirms that the update process of the firmware stored in the slave ROM 23 has not been completed, the process proceeds to the update process of the firmware stored in the slave ROM 23. Then, when the master side CPU 11 confirms that the update process of the firmware stored in the slave side ROM 23 is completed, the update process of the firmware stored in the master side ROM 13 and the slave side ROM 23 is terminated.

また、ステップS14において、マスタ側CPU11が、マスタ側ROM13より消去完了の通知を得られず、マスタ側ROM13に格納されたファームウェアの消去が完了したことを確認できないと(ステップS14でNo)、マスタ側ROM13より消去完了の通知を得るまでの間、待ち状態となる。よって、このとき、マスタ側CPU11は、スレーブ側ROM23に格納されたファームウェアの更新処理を開始する(ステップS19)。   In step S14, if the master side CPU 11 cannot receive the notification of the completion of erasure from the master side ROM 13 and cannot confirm that the erasure of the firmware stored in the master side ROM 13 has been completed (No in step S14), the master side CPU 11 The process waits until an erasure completion notification is received from the side ROM 13. Therefore, at this time, the master CPU 11 starts updating the firmware stored in the slave ROM 23 (step S19).

そして、マスタ側CPU11が、スレーブ側ROM23に格納されたファームウェアを消去するために、このスレーブ側ROM23に対して消去コマンドを発行することにより(ステップS20)、スレーブ側ROM23内部において消去シーケンスが実行される。続いて、マスタ側CPU11は、スレーブ側ROM23に問い合わせることによって、スレーブ側ROM23に格納されたファームウェアの消去が完了したか否かの判断を行う(ステップS21)。   Then, the master CPU 11 issues an erase command to the slave ROM 23 in order to erase the firmware stored in the slave ROM 23 (step S20), whereby an erase sequence is executed in the slave ROM 23. The Subsequently, the master CPU 11 makes an inquiry to the slave ROM 23 to determine whether or not the deletion of the firmware stored in the slave ROM 23 has been completed (step S21).

このとき、マスタ側CPU11が、スレーブ側ROM23より消去完了の通知を得て、スレーブ側ROM23に格納されたファームウェアの消去が完了したことを確認すると(ステップS21でYes)、マスタ側CPU11によって、外部記憶媒体14より更新すべきファームウェアのデータが1バイトずつ読み出される(ステップS22)。そして、マスタ側CPU11が、スレーブ側ROM23に新しいファームウェアを格納するために、このスレーブ側ROM23に対して書き込みコマンドを発行する。これにより、外部記憶媒体14より読み出された更新すべきファームウェアのデータが、マスタ側通信部15からスレーブ側通信部25へ1バイト分送信され、このスレーブ側ROM23に書き込まれる(ステップS23)。   At this time, when the master-side CPU 11 receives a notification of the completion of erasure from the slave-side ROM 23 and confirms that the firmware stored in the slave-side ROM 23 has been erased (Yes in step S21), the master-side CPU 11 performs external Firmware data to be updated is read byte by byte from the storage medium 14 (step S22). Then, the master CPU 11 issues a write command to the slave ROM 23 in order to store new firmware in the slave ROM 23. Thereby, the firmware data to be updated read from the external storage medium 14 is transmitted by one byte from the master side communication unit 15 to the slave side communication unit 25 and written to the slave side ROM 23 (step S23).

続いて、マスタ側CPU11において、スレーブ側ROM23に問い合わせることによって、外部記憶媒体14より読み出された更新すべきファームウェアのデータのスレーブ側ROM23への送信が完了したか否かの判断が1バイトずつ行われる(ステップS24)。このとき、マスタ側CPU11が、スレーブ側ROM23より書き込み完了の通知を得て、スレーブ側ROM23へのファームウェアのデータの送信が1バイト分完了したことを確認すると(ステップS24でYes)、次に、マスタ側CPU11において、外部記憶媒体14に記憶される更新すべきファームウェアの全てのデータについて、スレーブ側ROM23への送信が完了したか否かの判断が行われる(ステップS25)。   Subsequently, the master-side CPU 11 makes an inquiry to the slave-side ROM 23 to determine whether or not the transmission of firmware data to be updated read from the external storage medium 14 to the slave-side ROM 23 is completed byte by byte. Performed (step S24). At this time, when the master CPU 11 receives a notification of writing completion from the slave ROM 23 and confirms that the transmission of firmware data to the slave ROM 23 is completed for one byte (Yes in step S24), then In the master side CPU 11, it is determined whether or not the transmission of all the firmware data to be updated stored in the external storage medium 14 to the slave side ROM 23 has been completed (step S25).

このとき、マスタ側CPU11が、外部記憶媒体14に記憶される更新すべきファームウェアの全てのデータのマスタ側ROM13への送信が完了していないことを確認すると(ステップS25でNo)、ステップS22に戻り、マスタ側CPU11によって、外部記憶媒体14より更新すべきファームウェアの残りのデータが1バイトずつ読み出される。一方、このとき、マスタ側CPU11が、外部記憶媒体14に記憶される更新すべきファームウェアの全てのデータについて、スレーブ側ROM23への送信が完了したことを確認すると(ステップS25でYes)、次に、このマスタ側CPU11において、マスタ側ROM13に格納されたファームウェアの更新処理が完了したか否かの判断が行われる。   At this time, if the master side CPU 11 confirms that transmission of all data of the firmware to be updated stored in the external storage medium 14 to the master side ROM 13 is not completed (No in step S25), the process proceeds to step S22. Returning, the master side CPU 11 reads the remaining data of the firmware to be updated from the external storage medium 14 byte by byte. On the other hand, when the master side CPU 11 confirms that transmission of all the firmware data to be updated stored in the external storage medium 14 to the slave side ROM 23 has been completed (Yes in step S25), In the master side CPU 11, it is determined whether or not the update process of the firmware stored in the master side ROM 13 has been completed.

このとき、マスタ側CPU11が、マスタ側ROM13に格納されたファームウェアの更新処理が完了したことを確認すると、マスタ側ROM13及びスレーブ側ROM23に格納されたファームウェアの更新処理を終了する。一方、このとき、マスタ側CPU11が、マスタ側ROM13に格納されたファームウェアの更新処理が完了していないことを確認すると、マスタ側ROM13に格納されたファームウェアの更新処理に移行する。そして、マスタ側CPU11が、マスタ側ROM13に格納されたファームウェアの更新処理が完了したことを確認すると、マスタ側ROM13及びスレーブ側ROM23に格納されたファームウェアの更新処理を終了する。   At this time, when the master CPU 11 confirms that the update process of the firmware stored in the master ROM 13 is completed, the update process of the firmware stored in the master ROM 13 and the slave ROM 23 is terminated. On the other hand, when the master CPU 11 confirms that the update process of the firmware stored in the master ROM 13 has not been completed, the process proceeds to the update process of the firmware stored in the master ROM 13. When the master CPU 11 confirms that the update process of the firmware stored in the master ROM 13 has been completed, the update process of the firmware stored in the master ROM 13 and the slave ROM 23 is terminated.

このようにマスタ側ROM13及びスレーブ側ROM23に格納されたファームウェアの更新処理が行われるとき、ステップS16において、マスタ側CPU11がマスタ側ROM13に対して書き込みコマンドを発行することにより、マスタ側ROM13内部において書き込みシーケンスが実行される。そして、マスタ側CPU11がマスタ側ROM13に対して書き込みコマンドを発行した後、マスタ側ROM13より書き込み完了の通知を得るまでの間、マスタ側CPU11は待ち状態となる。よって、マスタ側CPU11が、マスタ側ROM13へのファームウェアのデータの書き込みが完了していないことを確認すると(ステップS17でNo)、スレーブ側ROM23に格納されたファームウェアの更新処理に移行する。   When the firmware stored in the master ROM 13 and the slave ROM 23 is updated in this way, the master CPU 11 issues a write command to the master ROM 13 in step S16, so that the master ROM 13 has the inside. A write sequence is executed. Then, after the master side CPU 11 issues a write command to the master side ROM 13, the master side CPU 11 is in a waiting state until the master side ROM 13 receives a write completion notification. Therefore, when the master CPU 11 confirms that writing of the firmware data to the master ROM 13 has not been completed (No in step S17), the process proceeds to a process for updating the firmware stored in the slave ROM 23.

具体的には、マスタ側CPU11によるスレーブ側ROM23に格納されたファームウェアの更新処理が開始されていないとき、ステップS19において、マスタ側CPU11が、スレーブ側ROM23に格納されたファームウェアの更新処理を開始する。   Specifically, when the update process of the firmware stored in the slave ROM 23 by the master CPU 11 has not been started, the master CPU 11 starts the update process of the firmware stored in the slave ROM 23 in step S19. .

或いは、マスタ側CPU11よりスレーブ側ROM23に対してスレーブ側ROM23に格納されたファームウェアを消去するための消去コマンドが発行されたものの、スレーブ側ROM23より消去完了の通知が得られないとき(ステップS21でNo)、ステップS21において、マスタ側CPU11が、スレーブ側ROM23に格納されたファームウェアの消去が完了したか否かの判断を行う。或いは、外部記憶媒体14より読み出された更新すべきファームウェアのデータが、スレーブ側ROM23へ1バイト分送信されたものの、スレーブ側ROM23へのデータの送信が完了したことを確認できないとき(ステップS24でNo)、ステップS24において、マスタ側CPU11が、スレーブ側ROM23へのファームウェアのデータの送信が完了したか否かの判断を行う。   Alternatively, when the master CPU 11 issues an erase command for erasing the firmware stored in the slave ROM 23 to the slave ROM 23, but the erase completion notification is not obtained from the slave ROM 23 (in step S21). No) In step S21, the master CPU 11 determines whether or not the deletion of the firmware stored in the slave ROM 23 has been completed. Alternatively, when the firmware data to be updated read from the external storage medium 14 has been transmitted for one byte to the slave-side ROM 23, it cannot be confirmed that the transmission of data to the slave-side ROM 23 has been completed (step S24). In step S24, the master CPU 11 determines whether or not the transmission of firmware data to the slave ROM 23 has been completed.

また、このようにマスタ側ROM13及びスレーブ側ROM23に格納されたファームウェアの更新処理が行われるとき、ステップS20において、マスタ側CPU11がスレーブ側ROM23に対してスレーブ側ROM23に格納されたファームウェアを消去するための消去コマンドを発行することにより、スレーブ側ROM23内部において消去シーケンスが実行される。そして、マスタ側CPU11がスレーブ側ROM23に対して消去コマンドを発行してからスレーブ側ROM23より消去完了の通知を得るまでの間、マスタ側CPU11は待ち状態となる。よって、マスタ側CPU11が、スレーブ側ROM23に格納されたファームウェアの消去が完了していないことを確認すると(ステップS21でNo)、マスタ側ROM13に格納されたファームウェアの更新処理に移行する。   When the firmware stored in the master ROM 13 and the slave ROM 23 is updated in this way, the master CPU 11 erases the firmware stored in the slave ROM 23 from the slave ROM 23 in step S20. By issuing an erasing command for this purpose, an erasing sequence is executed in the slave ROM 23. The master-side CPU 11 is in a waiting state after the master-side CPU 11 issues an erase command to the slave-side ROM 23 until the slave-side ROM 23 receives an erase completion notification. Therefore, when the master CPU 11 confirms that the firmware stored in the slave ROM 23 has not been erased (No in step S21), the process proceeds to a process for updating the firmware stored in the master ROM 13.

また、ステップS23において、マスタ側CPU11がスレーブ側ROM23に対して書き込みコマンドを発行することにより、スレーブ側ROM23内部において書き込みシーケンスが実行される。そして、マスタ側CPU11が、スレーブ側ROM23に対して書き込みコマンドを発行した後、スレーブ側ROM23より書き込み完了の通知を得るまでの間、マスタ側CPU11は待ち状態となる。よって、マスタ側CPU11が、スレーブ側ROM23より書き込み完了の通知を得られず、スレーブ側ROM23へのファームウェアのデータの送信が完了していないことを確認すると(ステップS24でNo)、マスタ側ROM13に格納されたファームウェアの更新処理に移行する。   In step S23, the master CPU 11 issues a write command to the slave ROM 23, whereby a write sequence is executed in the slave ROM 23. Then, after the master CPU 11 issues a write command to the slave ROM 23, the master CPU 11 is in a waiting state until it receives a write completion notification from the slave ROM 23. Therefore, when the master side CPU 11 does not receive the notification of the completion of writing from the slave side ROM 23 and confirms that the transmission of the firmware data to the slave side ROM 23 is not completed (No in step S24), the master side CPU 13 The process proceeds to the stored firmware update process.

具体的には、マスタ側CPU11よりマスタ側ROM13に対してマスタ側ROM13に格納されたファームウェアを消去するための消去コマンドが発行されたものの、マスタ側ROM13より消去完了の通知が得られないとき(ステップS14でNo)、ステップS14において、マスタ側CPU11が、マスタ側ROM13に格納されたファームウェアの消去が完了したか否かの判断を行う。或いは、外部記憶媒体14より読み出された更新すべきファームウェアのデータが、マスタ側ROM13に1ブロック分書き込まれたものの、マスタ側ROM13へのデータの書き込みが完了したことを確認できないとき(ステップS17でNo)、ステップS17において、マスタ側CPU11が、マスタ側ROM13へのファームウェアのデータの書き込みが完了したか否かの判断を行う。   Specifically, the master side CPU 11 issues an erase command for erasing the firmware stored in the master side ROM 13 to the master side ROM 13, but the master side ROM 13 does not receive a notification of the completion of erasure ( In step S14, the master side CPU 11 determines whether or not the erasure of the firmware stored in the master side ROM 13 has been completed. Alternatively, when the firmware data to be updated read from the external storage medium 14 has been written for one block in the master ROM 13, it cannot be confirmed that the writing of data to the master ROM 13 has been completed (step S17). In step S17, the master CPU 11 determines whether or not the writing of firmware data to the master ROM 13 has been completed.

このように、マスタ側CPU11がマスタ側ROM13及びスレーブ側ROM23に消去コマンド或いは書き込みコマンドを発行してから応答を得るまでの待ち時間を利用して、マスタ側ROM13に格納されたファームウェアの更新処理とスレーブ側ROM23に格納されたファームウェアの更新処理とが並列で実行される。そして、この処理を行うためのプログラムは、OS上にタスクとして構成してもよいし、或いは、OSレスシステムで構成してもよい。   In this way, the update processing of the firmware stored in the master ROM 13 is performed using the waiting time from when the master CPU 11 issues an erase command or write command to the master ROM 13 and the slave ROM 23 until a response is obtained. Firmware update processing stored in the slave ROM 23 is executed in parallel. A program for performing this processing may be configured as a task on the OS, or may be configured as an OS-less system.

また、図2に示すフローチャートのステップS14でNo,ステップS17でNoがそれぞれ選択され、マスタ側ROM13に格納されたファームウェアの更新処理から並列で実行されているスレーブ側ROM23に格納されたファームウェアの更新処理に移行するとき、この更新処理の明け渡しは、OS上ではサービスコールを発行することにより、また、OSレス上ではメインループに制御を返却することにより、それぞれ実現する。   Also, No is selected in step S14 and No in step S17 of the flowchart shown in FIG. 2, and the firmware stored in the slave ROM 23 is updated in parallel from the firmware update process stored in the master ROM 13. When shifting to the processing, this update processing is realized by issuing a service call on the OS and returning control to the main loop on the OS-less.

同様に、図2に示すフローチャートのステップS21でNo,ステップS24でNoがそれぞれ選択され、スレーブ側ROM23に格納されたファームウェアの更新処理から並列で実行されているマスタ側ROM13に格納されたファームウェアの更新処理に移行するとき、この更新処理の明け渡しは、OS上ではサービスコールを発行することにより、また、OSレス上ではメインループに制御を返却することにより、それぞれ実現する。   Similarly, No is selected in step S21 in the flowchart shown in FIG. 2 and No is selected in step S24, and the firmware stored in the master ROM 13 is executed in parallel from the firmware update process stored in the slave ROM 23. When shifting to the update process, the surrender of the update process is realized by issuing a service call on the OS and by returning control to the main loop on the OS-less.

また、図2に示すフローチャートに従ってマスタ側ROM13及びスレーブ側ROM23に格納されたファームウェアの更新処理が行われるとき、この更新処理の一例を図3に示すタイムチャートを参照しながら説明する。尚、以下のA〜Uまでのアルファベットは、図3におけるA〜Uまでのアルファベットを表すものとする。   An example of the update process when the firmware stored in the master ROM 13 and the slave ROM 23 is updated according to the flowchart shown in FIG. 2 will be described with reference to the time chart shown in FIG. It should be noted that the following alphabets A to U represent the alphabets A to U in FIG.

マスタ側ROM13に格納されたファームウェアの更新処理が開始されると、処理Aにおいて、マスタ側CPU11が、マスタ側ROM13に格納されたファームウェアを消去するために、このマスタ側ROM13に対して消去コマンドを発行する。これにより、処理Bにおいて、マスタ側ROM13内部において消去シーケンスが実行される。ところが、マスタ側ROM13に格納されたファームウェアの消去が完了するまでマスタ側CPU11が待ち状態となるため、マスタ側CPU11によるスレーブ側ROM23に格納されたファームウェアの更新処理が開始される。   When the update process of the firmware stored in the master ROM 13 is started, in process A, the master CPU 11 sends an erase command to the master ROM 13 in order to erase the firmware stored in the master ROM 13. Issue. Thereby, in the process B, the erasing sequence is executed in the master ROM 13. However, since the master CPU 11 waits until the firmware stored in the master ROM 13 is completely erased, the master CPU 11 starts updating the firmware stored in the slave ROM 23.

そして、処理Cにおいて、マスタ側CPU11が、スレーブ側ROM23に格納されたファームウェアを消去するために、このスレーブ側ROM23に対して消去コマンドを発行する。よって、処理Dにおいて、スレーブ側ROM23内部において消去シーケンスが実行される。   In process C, the master CPU 11 issues an erase command to the slave ROM 23 in order to erase the firmware stored in the slave ROM 23. Therefore, in process D, the erase sequence is executed in the slave ROM 23.

このようにスレーブ側ROM23内部において消去シーケンスが実行されるとき、処理Eにおいて、マスタ側CPU11が、マスタ側ROM13に格納されたファームウェアの消去が完了したことを確認すると、処理Fにおいて、マスタ側CPU11が、外部記憶媒体14より更新すべきファームウェアのデータを1ブロックずつ読み出す。そして、処理Gにおいて、マスタ側CPU11が、マスタ側ROM13に対して書き込みコマンドを発行する。よって、処理Hにおいて、外部記憶媒体14より読み出された更新すべきファームウェアのデータが、1ブロック分だけマスタ側ROM13に書き込まれる。   When the erasing sequence is executed in the slave ROM 23 in this way, in the process E, when the master CPU 11 confirms that the erasure of the firmware stored in the master ROM 13 is completed, in the process F, the master CPU 11 However, the firmware data to be updated is read from the external storage medium 14 block by block. Then, in process G, the master side CPU 11 issues a write command to the master side ROM 13. Therefore, in process H, firmware data to be updated read from the external storage medium 14 is written to the master ROM 13 by one block.

このように外部記憶媒体14より読み出された更新すべきファームウェアのデータがマスタ側ROM13に書き込まれるとき、処理Iにおいて、マスタ側CPU11が、スレーブ側ROM23に格納されたファームウェアの消去が完了したことを確認すると、処理Jにおいて、マスタ側CPU11が、外部記憶媒体14より更新すべきファームウェアのデータを1バイトずつ読み出す。そして、処理Kにおいて、マスタ側CPU11が、スレーブ側ROM23に対して書き込みコマンドを発行する。よって、処理Lにおいて、外部記憶媒体14より読み出された更新すべきファームウェアのデータが、マスタ側通信部15からスレーブ側通信部25へ1バイト分送信され、スレーブ側ROM23に書き込まれる。   As described above, when the firmware data to be updated read from the external storage medium 14 is written in the master ROM 13, the master CPU 11 has completed the deletion of the firmware stored in the slave ROM 23 in process I. In process J, the master side CPU 11 reads firmware data to be updated from the external storage medium 14 byte by byte. In process K, the master CPU 11 issues a write command to the slave ROM 23. Therefore, in process L, the firmware data to be updated read from the external storage medium 14 is transmitted from the master-side communication unit 15 to the slave-side communication unit 25 and written to the slave-side ROM 23.

このように外部記憶媒体14より読み出された更新すべきファームウェアのデータがスレーブ側ROM23に書き込まれるとき、処理Mにおいて、マスタ側CPU11が、マスタ側ROM13へのデータの書き込みが1ブロック分完了したことを確認すると、処理Nにおいて、マスタ側CPU11が、外部記憶媒体14より更新すべきファームウェアのデータを読み出す。そして、処理Oにおいて、マスタ側CPU11が、マスタ側ROM13に対して書き込みコマンドを発行する。よって、処理Pにおいて、外部記憶媒体14より読み出された更新すべきファームウェアのデータが、1ブロック分だけマスタ側ROM13に書き込まれる。   When the firmware data to be updated read from the external storage medium 14 is written to the slave ROM 23 in this way, in the process M, the master CPU 11 has completed writing data to the master ROM 13 for one block. If it is confirmed, in process N, the master side CPU 11 reads the firmware data to be updated from the external storage medium 14. In process O, the master side CPU 11 issues a write command to the master side ROM 13. Therefore, in process P, the firmware data to be updated read from the external storage medium 14 is written to the master ROM 13 by one block.

このように外部記憶媒体14より読み出された更新すべきファームウェアのデータがマスタ側ROM13に書き込まれるとき、処理Qにおいて、マスタ側CPU11が、スレーブ側ROM23へのデータの送信が1バイト分完了したことを確認すると、処理Rにおいて、マスタ側CPU11が、外部記憶媒体14より更新すべきファームウェアのデータを1バイトずつ読み出す。そして、処理Sにおいて、マスタ側CPU11が、スレーブ側ROM23に対して書き込みコマンドを発行する。よって、処理Tにおいて、外部記憶媒体14より読み出された更新すべきファームウェアのデータが、マスタ側通信部15からスレーブ側通信部25へ1バイト分送信され、スレーブ側ROM23に書き込まれる。   In this way, when the firmware data to be updated read from the external storage medium 14 is written to the master ROM 13, the master CPU 11 has completed the transmission of data to the slave ROM 23 for one byte in process Q. If it is confirmed, in process R, the master side CPU 11 reads firmware data to be updated from the external storage medium 14 byte by byte. In process S, the master CPU 11 issues a write command to the slave ROM 23. Therefore, in process T, the firmware data to be updated read from the external storage medium 14 is transmitted from the master side communication unit 15 to the slave side communication unit 25 and written to the slave side ROM 23.

その後、処理M〜Pの動作と処理Q〜Tの動作が交互に行われることにより、外部記憶媒体14より読み出された更新すべきファームウェアのデータが、マスタ側ROM13とスレーブ側ROM23とに書き込まれる。そして、マスタ側CPU11が、マスタ側ROM13とスレーブ側ROM23の両方に対し、外部記憶媒体14より読み出された更新すべきファームウェアのデータの書き込みが完了したことを確認すると、マスタ側ROM13及びスレーブ側ROM23に格納されたファームウェアの更新処理を終了する。   Thereafter, the operation of the processes MP and the operations of the processes Q to T are alternately performed, so that the firmware data to be updated read from the external storage medium 14 is written in the master ROM 13 and the slave ROM 23. It is. When the master side CPU 11 confirms that writing of the firmware data to be updated read from the external storage medium 14 is completed to both the master side ROM 13 and the slave side ROM 23, the master side ROM 13 and the slave side The update process of the firmware stored in the ROM 23 is terminated.

このように、本実施形態では、マスタ側CPU11が当該マスタ側CPU11の動作を制御するファームウェアをマスタ側ROM13より消去するための消去コマンド及び外部記憶媒体14に記憶されたファームウェアをマスタ側ROM13に書き込むための書き込みコマンドを発行した後、消去コマンド及び書き込みコマンドに対する応答を得るまでの待ち時間に、マスタ側CPU11が、スレーブ側CPU21の動作を制御するファームウェアを更新するための処理を行うようにしている。   As described above, in the present embodiment, the master CPU 11 writes the firmware for controlling the operation of the master CPU 11 from the master ROM 13 and the firmware stored in the external storage medium 14 in the master ROM 13. The master side CPU 11 performs processing for updating the firmware for controlling the operation of the slave side CPU 21 during the waiting time until the response to the erase command and the write command is obtained after the write command for issuing the command is issued. .

従って、本実施形態によれば、マスタ側CPU11の動作を制御するファームウェアの更新処理とスレーブ側CPU21の動作を制御するファームウェアの更新処理とを並列実行することが可能となり、マスタ側CPU11の動作を制御するファームウェアの更新処理とスレーブ側CPU21の動作を制御するファームウェアの更新処理のうち処理時間の短い方を処理時間の長い方に包含させることができる。よって、通信可能に接続される複数のCPUの動作を制御するファームフェアの更新処理に要する時間を大幅に短縮することができ、更新処理を行うユーザ、或いは、サービスマンに対する時間的負担を極力減らすことができる。特に、複数のスレーブCPU装置20がマスタCPU装置10と通信可能に接続されるとき、マスタ側CPU11及び各スレーブ側CPU21の動作を制御するファームフェアの更新処理に要する時間をより一層短縮することができる。   Therefore, according to the present embodiment, the firmware update process for controlling the operation of the master CPU 11 and the firmware update process for controlling the operation of the slave CPU 21 can be executed in parallel. Of the update process of the firmware to be controlled and the update process of the firmware that controls the operation of the slave CPU 21, the one having the shorter processing time can be included in the one having the longer processing time. Therefore, the time required for the firmware update process for controlling the operations of a plurality of CPUs that are communicably connected can be greatly reduced, and the time burden on the user or serviceman who performs the update process is reduced as much as possible. be able to. In particular, when a plurality of slave CPU devices 20 are communicably connected to the master CPU device 10, the time required for firmware update processing for controlling the operations of the master CPU 11 and each slave CPU 21 can be further reduced. it can.

尚、上記情報処理装置において、マスタ側CPU11がマスタ側ROM13に対して消去コマンドまたは書き込みコマンドを発行してから消去完了または書き込み完了の通知を得るまでの待ち時間、及びマスタ側CPU11がスレーブ側ROM23に対して消去コマンドまたは書き込みコマンドを発行してから消去完了または書き込み完了の通知を得るまでの待ち時間、を装置の開発段階で計測し、これらの計測データを情報処理装置の不揮発性メモリ(不図示)に記憶させてもよい。そして、マスタ側CPU11が不揮発性メモリに記憶された計測データを参照し、これらの待ち時間を最大限に利用してマスタ側ROM13及びスレーブ側ROM23に格納されたファームウェアの更新処理を並列で実行することにより、ファームウェアの更新処理に要する時間を大幅に短縮することができる。   In the information processing apparatus, a waiting time from when the master CPU 11 issues an erase command or a write command to the master ROM 13 until a notification of erase completion or write completion is received, and the master CPU 11 receives the slave ROM 23. The waiting time from issuing an erase command or write command to receiving an erase completion or write completion notification is measured at the development stage of the device, and these measured data are stored in the non-volatile memory (non- (Not shown) may be stored. Then, the master side CPU 11 refers to the measurement data stored in the non-volatile memory, and executes the update process of the firmware stored in the master side ROM 13 and the slave side ROM 23 in parallel by using these waiting times to the maximum. As a result, the time required for the firmware update process can be greatly reduced.

或いは、マスタ側ROM13及びスレーブ側ROM23に格納されたファームウェアの更新処理を行うときに、これらの待ち時間の値を計測手段により計測し、計測データを情報処理装置の不揮発性メモリ(不図示)に記憶させてもよい。これにより、マスタCPU装置10と通信可能に接続されるスレーブCPU装置20の構成が動的に変化し、マスタCPU装置10とスレーブCPU装置20との間の通信速度が変化したときに、マスタ側CPU11が不揮発性メモリに記憶された計測データを参照し、これらの待ち時間を最大限に利用してマスタ側ROM13及びスレーブ側ROM23に格納されたファームウェアの更新処理を並列で実行することにより、ファームウェアの更新処理に要する時間を大幅に短縮することができる。   Alternatively, when updating the firmware stored in the master-side ROM 13 and the slave-side ROM 23, these waiting time values are measured by the measuring means, and the measurement data is stored in a nonvolatile memory (not shown) of the information processing apparatus. It may be memorized. Thereby, when the configuration of the slave CPU device 20 that is communicably connected to the master CPU device 10 is dynamically changed and the communication speed between the master CPU device 10 and the slave CPU device 20 is changed, the master side The CPU 11 refers to the measurement data stored in the non-volatile memory and executes the update process of the firmware stored in the master ROM 13 and the slave ROM 23 in parallel by making the best use of these waiting times. The time required for the update process can be greatly reduced.

また、マスタCPU装置10と通信可能に接続されるスレーブCPU装置20が複数存在するとき、マスタ側CPU11がスレーブ側ROM23に対して消去コマンドまたは書き込みコマンドを発行してから消去完了または書き込み完了の通知を得るまでの待ち時間を、計測手段を用いてスレーブCPU装置20ごとに計測し、これらの計測データを情報処理装置の不揮発性メモリ(不図示)に記憶させてもよい。   When there are a plurality of slave CPU devices 20 that are communicably connected to the master CPU device 10, the master CPU 11 issues an erase command or a write command to the slave ROM 23, and an erase completion or write completion notification is issued. The waiting time until obtaining is measured for each slave CPU device 20 using a measuring means, and these measurement data may be stored in a nonvolatile memory (not shown) of the information processing device.

そして、マスタ側CPU11が、不揮発性メモリに記憶された計測データを参照し、マスタ側CPU11がスレーブ側ROM23に対して消去コマンドまたは書き込みコマンドを発行してから消去完了または書き込み完了の通知を得るまでの待ち時間がマスタ側CPU11がマスタ側ROM13に対して消去コマンドまたは書き込みコマンドを発行してから消去完了または書き込み完了の通知を得るまでの待ち時間に、収まるように、更新処理を行うスレーブCPU装置20の最適な組み合わせを決定する。これにより、マスタCPU装置10と通信可能に接続されるスレーブCPU装置20が複数存在するときにも、ファームウェアの更新処理に要する時間を大幅に短縮することができる。   The master-side CPU 11 refers to the measurement data stored in the nonvolatile memory, and until the master-side CPU 11 issues an erase command or a write command to the slave-side ROM 23 until receiving an erase completion or write completion notification. Slave CPU device that performs update processing so that the waiting time of the master side CPU 11 falls within the waiting time from when the master side CPU 11 issues an erase command or write command to the master side ROM 13 until a notification of erase completion or write completion is obtained. 20 optimal combinations are determined. Thereby, even when there are a plurality of slave CPU devices 20 that are communicably connected to the master CPU device 10, the time required for the firmware update process can be greatly reduced.

また、上記情報処理装置では、マスタCPU装置10に接続される外部記憶媒体14より更新すべきファームウェアを提供することとしたが、これに限るものではない。即ち、このマスタCPU装置10と通信ネットワークを介して接続される外部機器(不図示)より更新すべきファームウェアを提供するようにしてもよい。これは、図1に示すマスタCPU装置10において、外部記憶媒体14とマスタ側通信部15の間にネットワーク通信部(不図示)を配置することによって実現できる。そして、このネットワーク通信部は、外部記憶媒体14と同様にマスタ側CPU11とバス接続される。   In the information processing apparatus, the firmware to be updated is provided from the external storage medium 14 connected to the master CPU apparatus 10, but the present invention is not limited to this. That is, firmware to be updated may be provided from an external device (not shown) connected to the master CPU device 10 via a communication network. This can be realized by disposing a network communication unit (not shown) between the external storage medium 14 and the master side communication unit 15 in the master CPU device 10 shown in FIG. The network communication unit is bus-connected to the master CPU 11 in the same manner as the external storage medium 14.

通信ネットワークによるファームウェアの提供に関しては、FTP(File Transfer Protocol)等のプロトコルを用いて、外部機器からネットワーク通信部を介してマスタCPU装置10にファームウェアが転送される。マスタCPU装置10内では、転送されたファイル(更新すべきファームウェアに更新すべきファームウェアであることを示すファイルヘッダを付加したデータ)を受信すると、マスタ側RAM12に一旦ファームウェアを格納する。このとき、ファームウェアの容量がマスタ側RAM12の容量を超えていれば、ファームウェアを分割して複数のファイルに格納し、これらのファイルを通信ネットワークを介して分割受信する方法、或いは、ファームウェアを圧縮してファイルに格納し、このファイルを通信ネットワークを介して一括受信し、順次伸長しながらファームウェアを提供する方法がとられる。そして、マスタ側RAM12に格納されたファームウェアが、外部記憶媒体14より提供されるファームウェアの代わりに使用される。   Regarding the provision of firmware via a communication network, the firmware is transferred from an external device to the master CPU device 10 via a network communication unit using a protocol such as FTP (File Transfer Protocol). In the master CPU device 10, when the transferred file (data to which the firmware to be updated is added with a file header indicating the firmware to be updated) is received, the firmware is temporarily stored in the master RAM 12. At this time, if the capacity of the firmware exceeds the capacity of the master RAM 12, the firmware is divided and stored in a plurality of files, and these files are divided and received via a communication network, or the firmware is compressed. The file is stored in a file, the file is collectively received via a communication network, and firmware is provided while being sequentially decompressed. The firmware stored in the master side RAM 12 is used instead of the firmware provided from the external storage medium 14.

以上説明したように、本発明は、通信可能に接続される複数のCPUの動作を制御するファームフェアのファームフェア更新方法、及び通信可能に接続される複数のCPUを備えるとともにこのファームウェア更新方法を用いてファームウェアの更新を行う情報処理装置について有用である。   As described above, the present invention includes a firmware update method for firmware that controls operations of a plurality of CPUs that are communicably connected, and a firmware update method that includes a plurality of CPUs that are communicably connected. It is useful for an information processing apparatus that uses and updates firmware.

実施形態に係る情報処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the information processing apparatus which concerns on embodiment. 実施形態に係る情報処理装置において、マスタ側ROM及びスレーブ側ROMに格納されたファームウェアの更新処理を示すフローチャートである。5 is a flowchart illustrating an update process of firmware stored in a master ROM and a slave ROM in the information processing apparatus according to the embodiment. 実施形態に係る情報処理装置において、マスタ側ROM及びスレーブ側ROMに格納されたファームウェアの更新処理の一例を示すタイムチャートである。5 is a time chart illustrating an example of update processing of firmware stored in a master ROM and a slave ROM in the information processing apparatus according to the embodiment.

符号の説明Explanation of symbols

10 マスタCPU装置
11 マスタ側CPU
12 マスタ側RAM
13 マスタ側ROM
14 外部記憶媒体
15 マスタ側通信部
20 スレーブCPU装置
21 スレーブ側CPU
22 スレーブ側RAM
23 スレーブ側ROM
25 スレーブ側通信部
10 Master CPU Device 11 Master CPU
12 Master RAM
13 Master ROM
14 External storage medium 15 Master side communication unit 20 Slave CPU device 21 Slave side CPU
22 Slave RAM
23 ROM on the slave side
25 Slave side communication section

Claims (4)

互いに通信可能に接続される複数のCPUを搭載するとともに前記各CPUの動作を制御するファームウェアが格納されるメモリをCPUごとに備えた情報処理装置における前記ファームウェアを更新するためのファームウェア更新方法であって、
前記情報処理装置に接続されるとともに更新すべきファームウェアが記憶された記憶媒体を制御するマスタCPU及び当該マスタCPUと通信可能に接続されるスレーブCPUのそれぞれの動作を制御するファームウェアを更新するとき、
前記マスタCPUが、当該マスタCPUの動作を制御する前記ファームウェアを前記メモリより消去するための消去コマンド及び前記記憶媒体に記憶された前記ファームウェアを前記メモリに書き込むための書き込みコマンドを発行した後、前記消去コマンド及び前記書き込みコマンドに対する応答を得るまでの待ち時間に、前記マスタCPUが、前記スレーブCPUの動作を制御する前記ファームウェアを更新するための処理を行うことを特徴とするファームウェア更新方法。
A firmware update method for updating the firmware in an information processing apparatus that includes a plurality of CPUs that are communicably connected to each other and that includes a memory that stores firmware for controlling the operation of each CPU. And
When updating the firmware controlling each operation of the master CPU connected to the information processing apparatus and controlling the storage medium storing the firmware to be updated and the slave CPU communicably connected to the master CPU,
After the master CPU issues an erasure command for erasing the firmware for controlling the operation of the master CPU from the memory and a write command for writing the firmware stored in the storage medium to the memory, A firmware update method, wherein the master CPU performs a process for updating the firmware for controlling the operation of the slave CPU during a waiting time until a response to the erase command and the write command is obtained.
前記マスタCPUが、当該マスタCPUの動作を制御する前記ファームウェアを前記メモリより消去するための消去コマンド及び前記記憶媒体に記憶された前記ファームウェアを前記メモリに書き込むための書き込みコマンドを発行した後、前記消去コマンド及び前記書き込みコマンドに対する応答を得るまでの待ち時間と、前記マスタCPUが、前記スレーブCPUの動作を制御する前記ファームウェアを前記メモリより消去するための消去コマンド及び前記記憶媒体に記憶された前記ファームウェアを前記メモリに書き込むための書き込みコマンドを発行した後、前記消去コマンド及び前記書き込みコマンドに対する応答を得るまでの待ち時間と、を計測してこれらの計測データを前記情報処理装置の不揮発性メモリに記憶させ、
前記不揮発性メモリに記憶された計測データに基づき、前記マスタCPUが、前記マスタCPUの動作を制御する前記ファームウェアを更新するための処理及び前記スレーブCPUの動作を制御する前記ファームウェアを更新するための処理を行うことを特徴とする請求項1に記載のファームウェア更新方法。
After the master CPU issues an erasure command for erasing the firmware for controlling the operation of the master CPU from the memory and a write command for writing the firmware stored in the storage medium to the memory, The waiting time until the response to the erase command and the write command is obtained, and the master CPU erases the firmware for controlling the operation of the slave CPU from the memory and the memory stored in the storage medium After issuing a write command for writing firmware to the memory, a wait time until obtaining a response to the erase command and the write command is measured, and these measurement data are stored in the nonvolatile memory of the information processing apparatus. Remember,
Based on the measurement data stored in the nonvolatile memory, the master CPU updates the firmware that controls the operation of the master CPU and the firmware that controls the operation of the slave CPU. The firmware update method according to claim 1, wherein processing is performed.
前記マスタCPUと通信可能に接続される前記スレーブCPUが複数存在するとき、
前記マスタCPUが、前記各スレーブCPUの動作を制御する前記ファームウェアを前記メモリより消去するための消去コマンド及び前記記憶媒体に記憶された前記ファームウェアを前記メモリに書き込むための書き込みコマンドを発行した後、前記消去コマンド及び前記書き込みコマンドに対する応答を得るまでの待ち時間を、スレーブCPUごとに計測してこれらの計測データを前記情報処理装置の不揮発性メモリに記憶させ、
前記マスタCPUが、前記不揮発性メモリに記憶された計測データに基づき更新処理を行う前記各スレーブCPUの最適な組み合わせを決定し、この組み合わせに従って、前記マスタCPUの動作を制御する前記ファームウェアを更新するための処理及び前記各スレーブCPUの動作を制御する前記ファームウェアを更新するための処理を行うことを特徴とする請求項2に記載のファームウェア更新方法。
When there are a plurality of slave CPUs that are communicably connected to the master CPU,
After the master CPU issues an erasure command for erasing the firmware controlling the operation of each slave CPU from the memory and a write command for writing the firmware stored in the storage medium to the memory, The waiting time until a response to the erase command and the write command is obtained is measured for each slave CPU, and these measurement data are stored in the nonvolatile memory of the information processing device,
The master CPU determines an optimal combination of the slave CPUs that perform update processing based on the measurement data stored in the nonvolatile memory, and updates the firmware that controls the operation of the master CPU according to the combination. The firmware update method according to claim 2, wherein a process for updating the firmware for controlling the operation of the slave CPU and the operation of each slave CPU is performed.
互いに通信可能に接続される複数のCPUを搭載するとともに前記各CPUの動作を制御するファームウェアが格納されるメモリをCPUごとに備える情報処理装置において、
前記メモリに格納される前記ファームウェアに対して更新すべきファームウェアが記憶された記憶媒体が接続され、
請求項1から請求項3の何れかに記載のファームウェア更新方法を用いて前記メモリに格納される前記ファームウェアの更新処理を行うことを特徴とする情報処理装置。
In an information processing apparatus that includes a plurality of CPUs that are communicably connected to each other and includes a memory that stores firmware for controlling the operation of each CPU.
A storage medium storing firmware to be updated with respect to the firmware stored in the memory is connected,
An information processing apparatus that performs an update process of the firmware stored in the memory using the firmware update method according to any one of claims 1 to 3.
JP2005304332A 2005-10-19 2005-10-19 Firmware update method and information processing apparatus Expired - Fee Related JP4804101B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005304332A JP4804101B2 (en) 2005-10-19 2005-10-19 Firmware update method and information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005304332A JP4804101B2 (en) 2005-10-19 2005-10-19 Firmware update method and information processing apparatus

Publications (2)

Publication Number Publication Date
JP2007114943A true JP2007114943A (en) 2007-05-10
JP4804101B2 JP4804101B2 (en) 2011-11-02

Family

ID=38097070

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005304332A Expired - Fee Related JP4804101B2 (en) 2005-10-19 2005-10-19 Firmware update method and information processing apparatus

Country Status (1)

Country Link
JP (1) JP4804101B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010211295A (en) * 2009-03-06 2010-09-24 Mitsubishi Electric Corp Data update device, data update method of the same, and data update program
WO2016166799A1 (en) * 2015-04-13 2016-10-20 三菱電機株式会社 Control system and programmable logic controller
JP2018116549A (en) * 2017-01-19 2018-07-26 日本電気株式会社 Firmware management device, computer device, computer system, method, and program
JP2019095905A (en) * 2017-11-20 2019-06-20 キヤノン株式会社 Firmware built-in device, control method, and program

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000259422A (en) * 1999-03-12 2000-09-22 Denso Corp Electronic controller
JP2001117760A (en) * 1999-10-20 2001-04-27 Matsushita Electric Ind Co Ltd Software version up management system
JP2004094301A (en) * 2002-08-29 2004-03-25 Fuji Xerox Co Ltd Update method, update control device and update device for software incorporated in processor
JP2005084720A (en) * 2003-09-04 2005-03-31 Olympus Corp Data rewriter

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000259422A (en) * 1999-03-12 2000-09-22 Denso Corp Electronic controller
JP2001117760A (en) * 1999-10-20 2001-04-27 Matsushita Electric Ind Co Ltd Software version up management system
JP2004094301A (en) * 2002-08-29 2004-03-25 Fuji Xerox Co Ltd Update method, update control device and update device for software incorporated in processor
JP2005084720A (en) * 2003-09-04 2005-03-31 Olympus Corp Data rewriter

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010211295A (en) * 2009-03-06 2010-09-24 Mitsubishi Electric Corp Data update device, data update method of the same, and data update program
WO2016166799A1 (en) * 2015-04-13 2016-10-20 三菱電機株式会社 Control system and programmable logic controller
JPWO2016166799A1 (en) * 2015-04-13 2017-06-29 三菱電機株式会社 Control system and programmable logic controller
KR20170123334A (en) * 2015-04-13 2017-11-07 미쓰비시덴키 가부시키가이샤 Control systems and programmable logic controllers
CN107533490A (en) * 2015-04-13 2018-01-02 三菱电机株式会社 Control system and programmable logic controller (PLC)
KR102005656B1 (en) * 2015-04-13 2019-07-30 미쓰비시덴키 가부시키가이샤 Control systems and programmable logic controllers
CN107533490B (en) * 2015-04-13 2021-03-26 三菱电机株式会社 Control system and programmable logic controller
JP2018116549A (en) * 2017-01-19 2018-07-26 日本電気株式会社 Firmware management device, computer device, computer system, method, and program
JP2019095905A (en) * 2017-11-20 2019-06-20 キヤノン株式会社 Firmware built-in device, control method, and program
JP7058984B2 (en) 2017-11-20 2022-04-25 キヤノン株式会社 Firmware embedded device, control method, program

Also Published As

Publication number Publication date
JP4804101B2 (en) 2011-11-02

Similar Documents

Publication Publication Date Title
JP4384682B2 (en) Storage device
CN108027753B (en) In-vehicle control device, program update system, and storage medium storing program update software
CN100446126C (en) Flash memory access using a plurality of command cycles
TWI444833B (en) Data prefetch in sas expanders
JP2009527046A (en) Data storage devices that use two types of storage media
US8185705B2 (en) Information recording medium, information recording medium accessing apparatus and accessing method
JP6070360B2 (en) Information processing apparatus and processing method thereof
JP4804101B2 (en) Firmware update method and information processing apparatus
JP2006202206A (en) Image forming apparatus and update method of control program thereof
US9361138B2 (en) Peripheral device, method of controlling peripheral device, firmware download system and program
TW201833421A (en) A system of an electronic lock for updating a firmware of the electronic lock
JP2007052717A (en) Data transfer device and method
KR20030073824A (en) A method and apparatus for upgrading a system firmware by using an universal serial bus
CN116302011A (en) Firmware upgrading method for cable monitoring equipment
JPWO2005041050A1 (en) Recording medium, data processing apparatus, and data processing method
JP4967881B2 (en) Update data transmission method, firmware rewriting system, and update data transmission program
JP2006126919A (en) Data management device for flash memory and control method of flash memory
CN107885515A (en) A kind of firmware upgrade method and device
JP4877249B2 (en) Information processing system
JP4478298B2 (en) Data transfer system
JP5376551B2 (en) Flash memory system, electronic device, and portable terminal device
JP4248332B2 (en) Mobile communication body, performance information transfer system, and performance information transfer program
KR102260901B1 (en) device for collecting physical data of solid state drive and collecting method thereof
JP2005275722A (en) Electronic device
JP2000259538A (en) Network control unit, network setting method and storage medium storing computer readable program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080929

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110616

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110621

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110713

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110809

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110809

R150 Certificate of patent or registration of utility model

Ref document number: 4804101

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140819

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140819

Year of fee payment: 3

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140819

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D03

LAPS Cancellation because of no payment of annual fees