[go: up one dir, main page]

JP2008108048A - Computer and method for updating firmware therefor - Google Patents

Computer and method for updating firmware therefor Download PDF

Info

Publication number
JP2008108048A
JP2008108048A JP2006289902A JP2006289902A JP2008108048A JP 2008108048 A JP2008108048 A JP 2008108048A JP 2006289902 A JP2006289902 A JP 2006289902A JP 2006289902 A JP2006289902 A JP 2006289902A JP 2008108048 A JP2008108048 A JP 2008108048A
Authority
JP
Japan
Prior art keywords
firmware
rom
primary
processor
main body
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
JP2006289902A
Other languages
Japanese (ja)
Inventor
Yutaka Hirata
豊 平田
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 JP2006289902A priority Critical patent/JP2008108048A/en
Publication of JP2008108048A publication Critical patent/JP2008108048A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a computer in which firmware can be updated even if the computer does not support hardware for changing over a memory address allocated to a flash ROM, necessary for updating the firmware, and to provide an update method for the firmware. <P>SOLUTION: This computer has a primary ROM and a secondary ROM storing the firmware. In updating the firmware, new firmware supplied from the outside is temporarily written in the secondary ROM. When write of the new firmware into the secondary ROM is completed, the firmware held by the secondary ROM is copied to the primary ROM to change over the memory addresses allocated to the primary ROM and the secondary ROM. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明はファームウェアが組み込まれたコンピュータ及びそのファームウェアの更新方法に関する。   The present invention relates to a computer incorporating firmware and a method for updating the firmware.

例えば基幹系システムで利用されるコンピュータであるサーバ装置には、搭載された各種のハードウェアを制御するためのプログラムであるファームウェアが組み込まれている。ファームウェアは、書き換え可能な不揮発性メモリであるフラッシュROM(フラッシュメモリ)等に格納され、サーバ装置の電源が切断されている状態でもその内容が保持される。   For example, a server device, which is a computer used in a backbone system, incorporates firmware, which is a program for controlling various types of installed hardware. The firmware is stored in a flash ROM (flash memory) or the like, which is a rewritable nonvolatile memory, and the contents are retained even when the server device is powered off.

通常、ファームウェアが格納されたフラッシュROMにはサーバ装置で動作するオペレーティングシステム(OS: Operation System)からアクセスできない。そのため、サーバ装置のユーザは、オペレーティングシステムを利用してフラッシュROMに格納されたファームウェアを書き換えることはできない。ファームウェアの書き換えは危険を伴う作業であり、書き換え作業に失敗すると、サーバ装置が起動不能になることがある。   Usually, a flash ROM in which firmware is stored cannot be accessed from an operating system (OS) that operates on the server device. Therefore, the user of the server device cannot rewrite the firmware stored in the flash ROM using the operating system. Rewriting firmware is a dangerous task, and if the rewriting operation fails, the server device may become unbootable.

そこで、上述したサーバ装置等では、ファームウェアの更新作業による起動不能を回避するために、ファームウェアが格納されるフラッシュROMを複数備えることで可用性の向上を図っている。このような構成では、電源投入時やプロセッサ(CPU: Central Processing Unit)のリセット時に、複数のフラッシュROMのうちのいずれか1つに格納されたファームウェアを読み出して動作する。そして、ファームウェアを更新する場合は、例えばネットワークを介して外部から供給される新しいファームウェアを他のフラッシュROMへ格納し、さらに電源投入時やリセット時に当該フラッシュROMへアクセスするように、専用のハードウェアにより各フラッシュROMへ割り当てるメモリアドレスを切り替えている。   In view of this, the above-described server apparatus and the like improve availability by providing a plurality of flash ROMs in which firmware is stored in order to avoid inability to start due to firmware update work. In such a configuration, when power is turned on or when a processor (CPU: Central Processing Unit) is reset, the firmware stored in any one of the plurality of flash ROMs is read and operated. When updating the firmware, for example, new firmware supplied from the outside via a network is stored in another flash ROM, and the flash ROM is accessed when the power is turned on or reset. Thus, the memory address assigned to each flash ROM is switched.

図3は従来のサーバ装置の構成を示すブロック図である。   FIG. 3 is a block diagram showing a configuration of a conventional server device.

図3に示すように、従来のサーバ装置は、プロセッサ301と、ファームウェアが格納されるプライマリROM302及びセカンダリROM303と、プライマリROM302及びセカンダリROM303に対するメモリアドレスの割り当てを切り替えるための切替え制御回路304とを備えた構成である。なお、図3に示すサーバ装置は、ファームウェアが格納されるフラッシュROMとして、2つのフラッシュROM(プライマリROM302及びセカンダリROM303)を備えた構成例を示している。プライマリROM302及びセカンダリROM303とプロセッサ301とは、例えばバス等を介して接続される。   As shown in FIG. 3, the conventional server device includes a processor 301, a primary ROM 302 and a secondary ROM 303 in which firmware is stored, and a switching control circuit 304 for switching the allocation of memory addresses to the primary ROM 302 and the secondary ROM 303. It is a configuration. The server apparatus shown in FIG. 3 shows a configuration example including two flash ROMs (a primary ROM 302 and a secondary ROM 303) as flash ROMs for storing firmware. The primary ROM 302, the secondary ROM 303, and the processor 301 are connected via, for example, a bus.

図3に示す従来のサーバ装置では、切替え制御回路304によりプライマリROM302またはセカンダリROM303のいずれか一方に0MBアドレスを割り当てることで、当該フラッシュROMに格納されたファームウェアで動作する。0MBアドレスとは、サーバ装置の電源投入時あるいはプロセッサ301のリセット時に、プロセッサ301が最初にアクセスするメモリアドレスを指す。   The conventional server apparatus shown in FIG. 3 operates with firmware stored in the flash ROM by assigning a 0 MB address to either the primary ROM 302 or the secondary ROM 303 by the switching control circuit 304. The 0 MB address indicates a memory address that the processor 301 accesses first when the server apparatus is powered on or when the processor 301 is reset.

例えばプライマリROM302及びセカンダリROM303のメモリ容量を2M(mega)バイトとした場合、サーバ装置の電源投入時あるいはプロセッサ301のリセット時、プロセッサ301は、最初に0MBアドレスから2Mバイトのメモリ領域へアクセスすることで、0MBアドレスが割り当てられたプライマリROM302またはセカンダリROM303に格納されたファームウェアを読み出し、該ファームウェアによる処理を実行する。   For example, when the memory capacity of the primary ROM 302 and the secondary ROM 303 is 2 M (mega) bytes, when the server device is turned on or the processor 301 is reset, the processor 301 first accesses the 2 MB memory area from the 0 MB address. Thus, the firmware stored in the primary ROM 302 or the secondary ROM 303 to which the 0 MB address is assigned is read, and the processing by the firmware is executed.

例えば、サーバ装置がプライマリROM302に格納されたファームウェアで動作している場合、切替え制御回路304はプライマリROM302に対して0MBアドレスを割り当てる。   For example, when the server device is operating with firmware stored in the primary ROM 302, the switching control circuit 304 assigns a 0 MB address to the primary ROM 302.

一方、ファームウェアを更新する場合、プロセッサ301はネットワーク等を介して外部から供給される新しいファームウェアをセカンダリROM303へ格納し、切替え制御回路304を用いて0MBアドレスの割り当てをプライマリROM302からセカンダリROM303へ切り替える。すなわち、切替え制御回路304はセカンダリROM303に対して0MBアドレスを割り当てる。このとき、切替え制御回路304はプライマリROM302及びセカンダリROM303に対して同時に0MBアドレスを割り当てることはない。   On the other hand, when updating the firmware, the processor 301 stores new firmware supplied from outside via a network or the like in the secondary ROM 303, and switches the assignment of the 0 MB address from the primary ROM 302 to the secondary ROM 303 using the switching control circuit 304. That is, the switching control circuit 304 assigns a 0 MB address to the secondary ROM 303. At this time, the switching control circuit 304 does not assign a 0 MB address to the primary ROM 302 and the secondary ROM 303 at the same time.

その後、プロセッサ301をリセットすることで、プロセッサ301は、セカンダリROM303に格納されたファームウェアを読み出し、該ファームウェアによる処理を実行する。   Thereafter, by resetting the processor 301, the processor 301 reads the firmware stored in the secondary ROM 303 and executes processing by the firmware.

なお、特許文献1には、ホストコンピュータから受信したプログラムやデータを格納するための複数のバンクから成る不揮発性メモリと、該受信したプログラムやデータを格納する不揮発性メモリのバンクを切り替えるためのバンク切替え制御部とを備えた構成が記載されている。   Patent Document 1 discloses a non-volatile memory composed of a plurality of banks for storing programs and data received from a host computer, and a bank for switching between the non-volatile memory banks for storing the received programs and data. A configuration including a switching control unit is described.

また、特許文献2には、コンピュータのBIOSが格納される2つのフラッシュROMと、コンピュータの起動時に2つのフラッシュROMに格納されたBIOSのいずれか一方を選択するBIOS選択モジュールとを備えた構成が記載されている。   Further, Patent Document 2 includes a configuration including two flash ROMs that store the BIOS of the computer and a BIOS selection module that selects one of the BIOSs stored in the two flash ROMs when the computer is started up. Are listed.

特許文献1及び特許文献2に記載の構成では、いずれもハードウェア(バンク切替え制御部やBIOS選択モジュール)により装置起動時にプロセッサがアクセスするメモリ領域を切替えている。
特開2001−334056号公報 特開2003−316582号公報
In the configurations described in Patent Document 1 and Patent Document 2, the memory area that is accessed by the processor when the apparatus is activated is switched by hardware (a bank switching control unit and a BIOS selection module).
JP 2001-334056 A JP 2003-316582 A

上述したように従来のサーバ装置では、ファームウェアを更新するためにファームウェアが格納される複数のフラッシュROMに割り当てるメモリアドレスを切り替えるためのハードウェアが必要である。   As described above, in the conventional server device, hardware for switching memory addresses assigned to a plurality of flash ROMs in which firmware is stored is necessary to update the firmware.

しかしながら、コスト削減等を理由に、このようなハードウェアがサポートされていないサーバ装置もある。その場合、サーバ装置は新しいファームウェアで動作することができない。   However, some server devices do not support such hardware for reasons such as cost reduction. In that case, the server device cannot operate with the new firmware.

本発明は上記したような従来の技術が有する問題点を解決するためになされたものであり、ファームウェア更新に必要な、フラッシュROMに割り当てるメモリアドレスを切り替えるためのハードウェアがサポートされていない構成でも、ファームウェアの更新が可能なコンピュータ及びそのファームウェアの更新方法を提供することを目的とする。   The present invention has been made to solve the above-described problems of the prior art, and even when the hardware for switching the memory address assigned to the flash ROM necessary for firmware update is not supported. An object of the present invention is to provide a computer capable of updating firmware and a method for updating the firmware.

上記目的を達成するため本発明のコンピュータは、プログラムにしたがって処理を実行するプロセッサと、
前記プロセッサが実行するファームウェアが格納される、書き換え可能な不揮発性メモリであるプライマリROMと、
前記ファームウェアの更新時、外部から供給される新しいファームウェアを一時的に保持する、書き換え可能な不揮発性メモリであるセカンダリROMと、
を有し、
前記プロセッサは、
前記ファームウェアの更新時、前記セカンダリROMに対する新しいファームウェアの書き込みが終了すると、前記セカンダリROMで保持しているファームウェアを前記プライマリROMに複製する構成である。
To achieve the above object, a computer according to the present invention includes a processor that executes processing according to a program,
A primary ROM, which is a rewritable nonvolatile memory, storing firmware executed by the processor;
A secondary ROM that is a rewritable nonvolatile memory that temporarily holds new firmware supplied from the outside when the firmware is updated,
Have
The processor is
At the time of updating the firmware, when writing of the new firmware to the secondary ROM is completed, the firmware held in the secondary ROM is copied to the primary ROM.

一方、本発明のファームウェアの更新方法は、ファームウェアが格納される、書き換え可能な不揮発性メモリであるプライマリROM及びセカンダリROMを備えたコンピュータの、前記ファームウェアを更新するための更新方法であって、
プロセッサが、
前記ファームウェアの更新時、外部から供給される新しいファームウェアを前記セカンダリROMに一時的に書き込み、
前記セカンダリROMに対する前記新しいファームウェアの書き込みが終了すると、前記セカンダリROMで保持しているファームウェアを前記プライマリROMに複製し、
前記プライマリROMに格納されたファームウェアにしたがって処理を実行する方法である。
On the other hand, the firmware update method of the present invention is an update method for updating the firmware of a computer having a primary ROM and a secondary ROM which are rewritable nonvolatile memories in which the firmware is stored,
Processor
When the firmware is updated, new firmware supplied from the outside is temporarily written in the secondary ROM,
When the writing of the new firmware to the secondary ROM is completed, the firmware held in the secondary ROM is copied to the primary ROM,
In this method, processing is executed in accordance with firmware stored in the primary ROM.

上記のようなコンピュータ及びそのファームウェアの更新方法では、ファームウェアが格納されるプライマリROM及びセカンダリROMを備え、ファームウェアの更新時、外部から供給された新しいファームウェアをセカンダリROMに一時的に書き込み、セカンダリROMに対する新しいファームウェアの書き込みが終了すると、セカンダリROMで保持しているファームウェアをプライマリROMに複製することで、プライマリROM及びセカンダリROMに割り当てるメモリアドレスを切り替えるためのハードウェアがサポートされていない構成でも、ファームウェアを更新することが可能になる。   The above-described computer and its firmware update method include a primary ROM and a secondary ROM in which firmware is stored. When updating the firmware, new firmware supplied from the outside is temporarily written in the secondary ROM, and the secondary ROM is updated. When the writing of the new firmware is completed, the firmware stored in the secondary ROM is copied to the primary ROM, so that the firmware can be downloaded even if the hardware for switching the memory address assigned to the primary ROM and the secondary ROM is not supported. It becomes possible to update.

また、外部から供給される新しいファームウェアの最初の保存先がセカンダリROMであるため、ネットワーク等を介して新しいファームウェアが外部から供給される場合、保存中にネットワーク障害等が発生してもプライマリROMの内容には全く影響しない。   In addition, since the first storage destination of new firmware supplied from the outside is the secondary ROM, when new firmware is supplied from the outside via a network or the like, even if a network failure or the like occurs during storage, the primary ROM The content is not affected at all.

本発明によれば、プライマリROM及びセカンダリROMに割り当てるメモリアドレスを切り替えるためのハードウェアがサポートされていない構成でも、ファームウェアを更新することが可能になる。   According to the present invention, it is possible to update firmware even in a configuration in which hardware for switching memory addresses assigned to a primary ROM and a secondary ROM is not supported.

また、外部から供給される新しいファームウェアの最初の保存先がセカンダリROMであるため、ネットワーク等を介して新しいファームウェアが外部から供給される場合、保存中にネットワーク障害等が発生してもプライマリROMの内容には全く影響しない。したがって、ネットワーク障害等に対するファームウェアの更新作業の可用性が向上する。   In addition, since the first storage destination of new firmware supplied from the outside is the secondary ROM, when new firmware is supplied from the outside via a network or the like, even if a network failure or the like occurs during storage, the primary ROM The content is not affected at all. Therefore, the availability of firmware update work for network failures and the like is improved.

次に本発明について図面を参照して説明する。   Next, the present invention will be described with reference to the drawings.

なお、以下では基幹系システムで利用されるコンピュータであるサーバ装置を例にして説明するが、本発明はファームウェアが格納される2つのフラッシュROMを備え、それらに割り当てるメモリアドレスを切替えるためのハードウェアを持たない構成であれば、パーソナルコンピュータ、携帯電話機あるいはPDA(Personal Digital Assistants)のようにプロセッサを備える各種の装置にも適用可能である。   In the following description, a server device, which is a computer used in a backbone system, will be described as an example. However, the present invention includes two flash ROMs in which firmware is stored, and hardware for switching memory addresses assigned to them. If it is a structure which does not have PC, it is applicable also to various apparatuses provided with a processor like a personal computer, a mobile telephone, or PDA (Personal Digital Assistants).

図1は本発明のサーバ装置の一構成例を示すブロック図である。   FIG. 1 is a block diagram showing an example of the configuration of the server device of the present invention.

図1に示すように、本発明のサーバ装置は、プロセッサ101と、ファームウェアが格納されるプライマリROM102及びセカンダリROM103とを備えた構成である。プライマリROM102及びセカンダリROM103にはフラッシュROMが用いられる。本発明のサーバ装置は、図3に示したプライマリROM302及びセカンダリROM303へ割り当てるメモリアドレスを切り替えるための切替え制御回路304を持たない構成である。プライマリROM102及びセカンダリROM103とプロセッサ101とは、例えばバス等を介して接続される。   As shown in FIG. 1, the server device of the present invention includes a processor 101 and a primary ROM 102 and a secondary ROM 103 in which firmware is stored. A flash ROM is used as the primary ROM 102 and the secondary ROM 103. The server device according to the present invention has a configuration that does not have the switching control circuit 304 for switching the memory address assigned to the primary ROM 302 and the secondary ROM 303 shown in FIG. The primary ROM 102, the secondary ROM 103, and the processor 101 are connected via, for example, a bus.

本発明のサーバ装置では、電源投入時あるいはプロセッサ101のリセット時、プロセッサ101は常にプライマリROM102へ最初にアクセスすることでプライマリROM102に格納されたファームウェアで動作する。そして、ファームウェアを更新する場合、新しいファームウェアをセカンダリROM103へ一端格納し、その後、該ファームウェアをプライマリROM102へ複製する。すなわち、本発明のサーバ装置では、セカンダリROM103を新しいファームウェアを一時的に保存するためのバッファとして用いる。   In the server apparatus of the present invention, when the power is turned on or the processor 101 is reset, the processor 101 always operates with the firmware stored in the primary ROM 102 by accessing the primary ROM 102 first. When updating the firmware, the new firmware is temporarily stored in the secondary ROM 103, and then the firmware is copied to the primary ROM 102. That is, in the server device of the present invention, the secondary ROM 103 is used as a buffer for temporarily storing new firmware.

図1に示すように、プライマリROM102はブートローダ部104及び本体部105を備え、セカンダリROM103はブートローダ部106及び本体部107を備えている。   As shown in FIG. 1, the primary ROM 102 includes a boot loader unit 104 and a main body unit 105, and the secondary ROM 103 includes a boot loader unit 106 and a main body unit 107.

プライマリROM102が備えるブートローダ部104及びセカンダリROM103が備えるブートローダ部106には、サーバ装置の電源投入時あるいはプロセッサ101のリセット時に最初に実行される命令コード群(プログラム)が格納される。ブートローダ部104及び106のプログラムは、例えば工場出荷時に書き込まれ、その後は書き換えられることがない。なお、ブートローダ部104及び106には、後述するファームウェアの更新処理の違いに応じて異なるプログラムを書き込んでもよく、それらの更新処理を全て実現する同一のプログラムを書き込んでもよい。   The boot loader unit 104 included in the primary ROM 102 and the boot loader unit 106 included in the secondary ROM 103 store instruction code groups (programs) that are executed first when the server apparatus is powered on or when the processor 101 is reset. The programs of the boot loader units 104 and 106 are written at the time of factory shipment, for example, and are not rewritten thereafter. It should be noted that different programs may be written in the boot loader units 104 and 106 according to differences in firmware update processing to be described later, or the same program that implements all the update processing may be written.

プライマリROM102が備える本体部105及びセカンダリROM103が備える本体部107には、サーバ装置が備える各種のハードウェア(不図示)を実際に制御するためのプログラムであるファームウェア本体が格納される。ここでは、これらブートローダ部104及び本体部105に格納されるプログラムを合わせてファームウェアと呼ぶ。同様にブートローダ部106及び本体部107に格納されるプログラムも合わせてファームウェアと呼ぶ。   The main body 105 provided in the primary ROM 102 and the main body 107 provided in the secondary ROM 103 store a firmware main body that is a program for actually controlling various hardware (not shown) provided in the server device. Here, the programs stored in the boot loader unit 104 and the main unit 105 are collectively referred to as firmware. Similarly, the programs stored in the boot loader unit 106 and the main unit 107 are collectively referred to as firmware.

例えばプライマリROM102及びセカンダリROM103のメモリ容量を2Mバイトとしたとき、本発明ではプライマリROM102に上述した0MBアドレスが予め割り当てられ、セカンダリROM103に4MBアドレスが予め割り当てられる。ここで、セカンダリROM103に割り当てられる4MBアドレスとは、0MBアドレスから4Mバイトだけ離れたメモリアドレスを指す。セカンダリROM103に割り当てるメモリアドレスは4MBアドレスである必要はなく、プライマリROM102に割り当てるメモリ領域から十分に離れていればどのような値でもよい。   For example, when the memory capacity of the primary ROM 102 and the secondary ROM 103 is 2 Mbytes, in the present invention, the above-described 0 MB address is assigned in advance to the primary ROM 102, and the 4 MB address is assigned in advance to the secondary ROM 103. Here, the 4 MB address assigned to the secondary ROM 103 indicates a memory address that is 4 M bytes away from the 0 MB address. The memory address assigned to the secondary ROM 103 does not need to be a 4 MB address, and may be any value as long as it is sufficiently away from the memory area assigned to the primary ROM 102.

上述したように、本発明のサーバ装置は、電源投入時あるいはリセット時にプロセッサ101が0MBアドレスから2Mバイトのメモリ領域へアクセスすることで、常にプライマリROM102に格納されたファームウェアで動作する。セカンダリROM103には、例えば4MBアドレスが割り当てられているため、セカンダリROM103で保持されたファームウェアによりプロセッサ101が動作することはない。   As described above, the server device of the present invention always operates with the firmware stored in the primary ROM 102 when the processor 101 accesses the 2 MB memory area from the 0 MB address when the power is turned on or reset. For example, since the 4 MB address is assigned to the secondary ROM 103, the processor 101 is not operated by the firmware held in the secondary ROM 103.

次に図1に示した本発明のサーバ装置の動作について図2を用いて説明する。   Next, the operation of the server apparatus of the present invention shown in FIG. 1 will be described with reference to FIG.

図2は本発明のサーバ装置によるファームウェアの更新処理を示すフローチャートである。   FIG. 2 is a flowchart showing a firmware update process by the server device of the present invention.

上述したように本発明のサーバ装置では、プライマリROM102に0MBアドレスが割り当てられているため、サーバ装置の電源投入時またはプロセッサ101のリセット時、プロセッサ101は、最初にプライマリROM102のブートローダ部104へアクセスし、該ブートローダ部104に格納されたプログラムにしたがって動作する。   As described above, in the server device of the present invention, since the 0 MB address is assigned to the primary ROM 102, the processor 101 first accesses the boot loader unit 104 of the primary ROM 102 when the server device is turned on or the processor 101 is reset. Then, it operates according to the program stored in the boot loader unit 104.

プロセッサ101は、通常動作時、プライマリROM102のブートローダ部104に格納されたプログラムにしたがって本体部105からファームウェア本体を読み出し、読み出したファームウェア本体にしたがって処理を実行する。このとき、プロセッサ101はセカンダリROM103に格納されたファームウェアでは動作しない。   During normal operation, the processor 101 reads the firmware body from the main body unit 105 according to a program stored in the boot loader unit 104 of the primary ROM 102, and executes processing according to the read firmware body. At this time, the processor 101 does not operate with the firmware stored in the secondary ROM 103.

プライマリROM102に格納されたファームウェアを更新する場合、プロセッサ101は、プライマリROM102の本体部105に格納されたファームウェア本体による機能を用いて、例えばネットワーク等を介して外部から供給された新しいファームウェアをセカンダリROM103へ書き込む(ステップS1)。このとき、プロセッサ101は、セカンダリROM103の本体部107の内容のみ書き換え、ブートローダ部106の内容は書き換えない。なお、新しいファームウェア本体は、それまで実行している既存のファームウェア本体とバージョンが異なるものとする。   When updating the firmware stored in the primary ROM 102, the processor 101 uses the function of the firmware main body stored in the main body portion 105 of the primary ROM 102, for example, to update the new firmware supplied from the outside via the network or the like to the secondary ROM 103. (Step S1). At this time, the processor 101 rewrites only the content of the main body 107 of the secondary ROM 103 and does not rewrite the content of the boot loader unit 106. Note that the new firmware body is different in version from the existing firmware body that has been executed so far.

プロセッサ101は、セカンダリROM103の本体部107に対して新しいファームウェアの書き込みが完了すると、プライマリROM102の本体部105に格納されたファームウェア本体による機能を用いてソフトリセットを実行する(ステップS2)。   When the writing of new firmware to the main body 107 of the secondary ROM 103 is completed, the processor 101 performs a soft reset using the function of the firmware main body stored in the main body 105 of the primary ROM 102 (step S2).

ソフトリセット後、プロセッサ101は、プライマリROM102のブートローダ部104に格納されたプログラムを実行し(ステップS3)、プライマリROM102の本体部105に格納されたファームウェア本体とセカンダリROM103の本体部107に格納されたファームウェア本体のバージョンを比較する(ステップS4)。   After the soft reset, the processor 101 executes the program stored in the boot loader unit 104 of the primary ROM 102 (step S3), and is stored in the firmware main unit stored in the main unit 105 of the primary ROM 102 and the main unit 107 of the secondary ROM 103. The firmware main body versions are compared (step S4).

ここでは、2つのファームウェア本体のバージョンが一致しないため、プロセッサ101は、セカンダリROM103のブートローダ部106に格納されたプログラムを読み出し(ステップS5)、該プログラムにしたがってセカンダリROM103の本体部107の内容をプライマリROM102の本体部105へ複製する(ステップS6)。   Here, since the versions of the two firmware main bodies do not match, the processor 101 reads the program stored in the boot loader unit 106 of the secondary ROM 103 (step S5), and the contents of the main unit 107 of the secondary ROM 103 are primary according to the program. Copy to the main body 105 of the ROM 102 (step S6).

プロセッサ101は、ファームウェアの複製作業が終了すると、プライマリROM102の本体部105に格納されたファームウェア本体による機能を用いてソフトリセットを実行する(ステップS2)。   When the firmware duplication work is completed, the processor 101 performs a soft reset using the function of the firmware main body stored in the main body 105 of the primary ROM 102 (step S2).

ソフトリセット後、プロセッサ101は、プライマリROM102のブートローダ部104に格納されたプログラムを再び実行し(ステップS3)、プライマリROM102の本体部104に格納されたファームウェア本体とセカンダリROM103の本体部107に格納されたファームウェア本体のバージョンを比較する(ステップS4)。   After the soft reset, the processor 101 executes the program stored in the boot loader unit 104 of the primary ROM 102 again (step S3), and is stored in the firmware main unit stored in the main unit 104 of the primary ROM 102 and the main unit 107 of the secondary ROM 103. The firmware main body versions are compared (step S4).

ここでは、2つのファームウェア本体のバージョンが一致するため、プロセッサ101は、プライマリROM102の本体部105に格納されたファームウェア本体を読み出し(ステップS7)、該ファームウェア本体にしたがって処理を実行する。以上の処理手順により、プライマリROM102及びセカンダリROM103へ割り当てるメモリアドレスを切り替えるためのハードウェアが無くてもファームウェアの更新が可能になる。   Here, since the versions of the two firmware bodies match, the processor 101 reads the firmware body stored in the body unit 105 of the primary ROM 102 (step S7), and executes processing according to the firmware body. With the above processing procedure, the firmware can be updated without the hardware for switching the memory addresses assigned to the primary ROM 102 and the secondary ROM 103.

本発明によれば、セカンダリROM103を、例えばネットワーク等を介して外部から供給される新しいファームウェアを一時的に保持するバッファとして使用することで、プライマリROM102及びセカンダリROM103に割り当てるメモリアドレスを切り替えるためのハードウェアがサポートされていない構成でも、ファームウェアを更新することが可能になる。   According to the present invention, the hardware for switching the memory addresses assigned to the primary ROM 102 and the secondary ROM 103 by using the secondary ROM 103 as a buffer for temporarily holding new firmware supplied from outside via, for example, a network or the like. The firmware can be updated even in configurations where the hardware is not supported.

また、外部から供給される新しいファームウェアの最初の保存先がセカンダリROM103であるため、ネットワーク等を介して外部から新しいファームウェアが供給される場合、保存中にネットワーク障害等が発生してもプライマリROMの内容には全く影響しない。そのため、ネットワーク障害等に対するファームウェアの更新作業の可用性が向上する。   In addition, since the first storage destination of new firmware supplied from the outside is the secondary ROM 103, when new firmware is supplied from the outside via a network or the like, even if a network failure or the like occurs during storage, the primary ROM The content is not affected at all. Therefore, the availability of firmware update work for network failures and the like is improved.

また、ファームウェアの更新時、セカンダリROM103の本体部で保持しているファームウェア本体のみ、プライマリROM102の本体部105に複製するため、複製している最中にサーバ装置で電源障害等が発生しても、プライマリROM102のブートローダ部104は複製対象外であるため、ブートローダ部104の内容には影響しない。そのため、プロセッサ101はプライマリROM102のブートローダ部104のプログラムから再び処理を開始し、上述した手順でセカンダリROM103からプライマリROM102へ新しいファームウェアを複製する。したがって、電源障害等に対するファームウェアの更新作業の可用性が向上する。   Further, when updating the firmware, only the firmware main body held in the main body portion of the secondary ROM 103 is copied to the main body portion 105 of the primary ROM 102. Therefore, even if a power failure or the like occurs in the server device during the copying, Since the boot loader unit 104 of the primary ROM 102 is not subject to replication, the contents of the boot loader unit 104 are not affected. Therefore, the processor 101 starts processing again from the program of the boot loader unit 104 of the primary ROM 102, and copies new firmware from the secondary ROM 103 to the primary ROM 102 in the above-described procedure. Therefore, the availability of firmware update work for a power failure or the like is improved.

さらに、本発明では、常にプライマリROM102に格納されたファームウェアでプロセッサ101が動作するため、従来のように複数のフラッシュROMで異なるファームウェアを保持する必要がない。   Furthermore, in the present invention, since the processor 101 always operates with the firmware stored in the primary ROM 102, it is not necessary to hold different firmware in a plurality of flash ROMs as in the prior art.

本発明のサーバ装置の一構成例を示すブロック図である。It is a block diagram which shows one structural example of the server apparatus of this invention. 本発明のサーバ装置によるファームウェアの更新動作を示すフローチャートである。It is a flowchart which shows the update operation | movement of the firmware by the server apparatus of this invention. 従来のサーバ装置の構成を示すブロック図である。It is a block diagram which shows the structure of the conventional server apparatus.

符号の説明Explanation of symbols

101 プロセッサ
102 プライマリROM
103 セカンダリROM
104、106 ブートローダ部
105、107 本体部
101 Processor 102 Primary ROM
103 Secondary ROM
104, 106 Boot loader unit 105, 107 Main unit

Claims (6)

プログラムにしたがって処理を実行するプロセッサと、
前記プロセッサが実行するファームウェアが格納される、書き換え可能な不揮発性メモリであるプライマリROMと、
前記ファームウェアの更新時、外部から供給される新しいファームウェアを一時的に保持する、書き換え可能な不揮発性メモリであるセカンダリROMと、
を有し、
前記プロセッサは、
前記ファームウェアの更新時、前記セカンダリROMに対する新しいファームウェアの書き込みが終了すると、前記セカンダリROMで保持しているファームウェアを前記プライマリROMに複製するコンピュータ。
A processor that executes processing according to a program;
A primary ROM, which is a rewritable nonvolatile memory, storing firmware executed by the processor;
A secondary ROM that is a rewritable nonvolatile memory that temporarily holds new firmware supplied from the outside when the firmware is updated,
Have
The processor is
A computer that copies the firmware held in the secondary ROM to the primary ROM when writing of new firmware to the secondary ROM is completed when the firmware is updated.
前記プライマリROM及び前記セカンダリROMは、
コンピュータの電源投入時または前記プロセッサのリセット時に前記プロセッサで最初に実行されるプログラムが格納されるブートローダ部及び前記コンピュータに搭載された各種のハードウェアを実際に制御するためのプログラムであるファームウェア本体が格納される本体部を備え、
前記プロセッサは、
前記ファームウェアの更新時、前記セカンダリROMの本体部で保持しているファームウェア本体のみ、前記プライマリROMの本体部に複製する請求項1記載のコンピュータ。
The primary ROM and the secondary ROM are:
A boot loader unit that stores a program that is first executed by the processor when the computer is turned on or the processor is reset, and a firmware main body that is a program for actually controlling various hardware installed in the computer It has a main body to be stored,
The processor is
The computer according to claim 1, wherein when updating the firmware, only the firmware main body held in the main body of the secondary ROM is copied to the main body of the primary ROM.
前記ファームウェアの更新時、前記セカンダリROMで保持しているファームウェアを前記プライマリROMに複製するためのプログラムを、前記ブートローダ部に備えた請求項2記載のコンピュータ。   The computer according to claim 2, further comprising a program for copying the firmware held in the secondary ROM to the primary ROM when the firmware is updated. ファームウェアが格納される、書き換え可能な不揮発性メモリであるプライマリROM及びセカンダリROMを備えたコンピュータの、前記ファームウェアを更新するための更新方法であって、
プロセッサが、
前記ファームウェアの更新時、外部から供給される新しいファームウェアを前記セカンダリROMに一時的に書き込み、
前記セカンダリROMに対する前記新しいファームウェアの書き込みが終了すると、前記セカンダリROMで保持しているファームウェアを前記プライマリROMに複製し、
前記プライマリROMに格納されたファームウェアにしたがって処理を実行するファームウェアの更新方法。
An update method for updating the firmware of a computer having a primary ROM and a secondary ROM which are rewritable nonvolatile memories in which firmware is stored,
Processor
When the firmware is updated, new firmware supplied from the outside is temporarily written in the secondary ROM,
When the writing of the new firmware to the secondary ROM is completed, the firmware held in the secondary ROM is copied to the primary ROM,
A firmware update method for executing processing according to firmware stored in the primary ROM.
前記プライマリROM及び前記セカンダリROMに、
前記コンピュータの電源投入時または前記プロセッサのリセット時に前記プロセッサで最初に実行されるプログラムが格納されるブートローダ部、及び前記コンピュータに搭載された各種のハードウェアを実際に制御するためのプログラムであるファームウェア本体が格納される本体部を備え、
前記プロセッサが、
前記ファームウェアの更新時、前記セカンダリROMの本体部で保持しているファームウェア本体のみ、前記プライマリROMの本体部に複製する請求項4記載のファームウェアの更新方法。
In the primary ROM and the secondary ROM,
A boot loader unit that stores a program that is first executed by the processor when the computer is turned on or the processor is reset, and firmware that is a program for actually controlling various hardware installed in the computer It has a main body that stores the main body,
The processor is
5. The firmware updating method according to claim 4, wherein when updating the firmware, only the firmware main body held in the main body of the secondary ROM is copied to the main body of the primary ROM.
前記セカンダリROMで保持しているファームウェアを前記プライマリROMに複製するためのプログラムを、前記ブートローダ部で保持する請求項5記載のファームウェアの更新方法。   The firmware update method according to claim 5, wherein a program for copying firmware held in the secondary ROM to the primary ROM is held in the boot loader unit.
JP2006289902A 2006-10-25 2006-10-25 Computer and method for updating firmware therefor Pending JP2008108048A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006289902A JP2008108048A (en) 2006-10-25 2006-10-25 Computer and method for updating firmware therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006289902A JP2008108048A (en) 2006-10-25 2006-10-25 Computer and method for updating firmware therefor

Publications (1)

Publication Number Publication Date
JP2008108048A true JP2008108048A (en) 2008-05-08

Family

ID=39441352

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006289902A Pending JP2008108048A (en) 2006-10-25 2006-10-25 Computer and method for updating firmware therefor

Country Status (1)

Country Link
JP (1) JP2008108048A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017504112A (en) * 2013-12-20 2017-02-02 ノルディック セミコンダクタ アーエスアーNordic Semiconductor ASA Updatable IC wireless device
JP2019144806A (en) * 2018-02-20 2019-08-29 株式会社デンソー Control device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06233023A (en) * 1993-02-04 1994-08-19 Canon Inc Facsimile equipment
JP2001148752A (en) * 1999-11-19 2001-05-29 Matsushita Graphic Communication Systems Inc Facsimile equipment and its program rewriting method
JP2001334056A (en) * 2000-05-29 2001-12-04 Pfu Ltd Gaming machine management device
JP2005339049A (en) * 2004-05-25 2005-12-08 Toshiba Corp Paper sheet processing system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06233023A (en) * 1993-02-04 1994-08-19 Canon Inc Facsimile equipment
JP2001148752A (en) * 1999-11-19 2001-05-29 Matsushita Graphic Communication Systems Inc Facsimile equipment and its program rewriting method
JP2001334056A (en) * 2000-05-29 2001-12-04 Pfu Ltd Gaming machine management device
JP2005339049A (en) * 2004-05-25 2005-12-08 Toshiba Corp Paper sheet processing system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017504112A (en) * 2013-12-20 2017-02-02 ノルディック セミコンダクタ アーエスアーNordic Semiconductor ASA Updatable IC wireless device
JP2019144806A (en) * 2018-02-20 2019-08-29 株式会社デンソー Control device
JP7027940B2 (en) 2018-02-20 2022-03-02 株式会社デンソー Control device

Similar Documents

Publication Publication Date Title
JP3906825B2 (en) Computer system, computer system activation method and program
JP5663060B2 (en) Method and system for facilitating fast startup of a flash memory system
US9910602B2 (en) Device and memory system for storing and recovering page table data upon power loss
US20070016719A1 (en) Memory device including nonvolatile memory and memory controller
US8775758B2 (en) Memory device and method for performing a write-abort-safe firmware update
WO2013103023A1 (en) Information processing device, information processing method, and computer program
JP4871260B2 (en) MEMORY MODULE, MEMORY CONTROLLER, NONVOLATILE STORAGE DEVICE, NONVOLATILE STORAGE SYSTEM, AND MEMORY READ / WRITE METHOD
JP4245585B2 (en) Memory controller, flash memory system, and flash memory control method
JP2004295865A (en) Automatic booting system and automatic booting method
JP3830867B2 (en) Single-chip microcomputer and its boot area switching method
JP2023009293A (en) Communication apparatus and information processing method
JP2005157528A (en) Memory device
JP4843222B2 (en) Semiconductor memory device control method, memory card, and host device
JPWO2018100633A1 (en) Control device and program update method
US7234039B1 (en) Method, system, and apparatus for determining the physical memory address of an allocated and locked memory buffer
CN117573175B (en) Firmware real-time updating method, system and storage medium for non-reset control chip
JP6575157B2 (en) Firmware download method and firmware embedded device
JP2008108048A (en) Computer and method for updating firmware therefor
JP5521437B2 (en) Portable terminal device, software update method and program
JP6631513B2 (en) Memory control device, memory device, and memory control method
JP2007034581A (en) Memory controller, flash memory system and method for controlling flash memory
KR20150058092A (en) Network boot system
JP5520880B2 (en) Flash memory device
JP4334312B2 (en) Start-up time reduction computing device and data loading method
JP2008117299A (en) Storage medium control apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090924

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120117

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120515