JP6912163B2 - Firmware boot device, firmware boot method, and firmware boot program - Google Patents
Firmware boot device, firmware boot method, and firmware boot program Download PDFInfo
- Publication number
- JP6912163B2 JP6912163B2 JP2016053568A JP2016053568A JP6912163B2 JP 6912163 B2 JP6912163 B2 JP 6912163B2 JP 2016053568 A JP2016053568 A JP 2016053568A JP 2016053568 A JP2016053568 A JP 2016053568A JP 6912163 B2 JP6912163 B2 JP 6912163B2
- Authority
- JP
- Japan
- Prior art keywords
- firmware
- boot
- selection signal
- area selection
- valid
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44568—Immediately runnable code
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Description
本発明は、ファームウェア起動装置、ファームウェア起動方法、およびファームウェア起動プログラムに関し、特に、光トランシーバの制御装置に用いられるファームウェア起動装置、ファームウェア起動方法、およびファームウェア起動プログラムに関する。 The present invention relates to a firmware boot device, a firmware boot method, and a firmware boot program, and more particularly to a firmware boot device, a firmware boot method, and a firmware boot program used for a control device of an optical transceiver.
近年、情報通信サービスの高度化、多様化に伴って、光通信ネットワークには大容量性および柔軟性が求められている。そのため、光ファイバ網との接続に使用される光トランシーバには、システムの稼働後に増設や交換をすることができるように、活線挿抜可能な光トランシーバが主として採用されている。 In recent years, with the sophistication and diversification of information and communication services, optical communication networks are required to have large capacity and flexibility. Therefore, as the optical transceiver used for connecting to the optical fiber network, an optical transceiver capable of hot-swap is mainly adopted so that it can be added or replaced after the system is in operation.
このような光トランシーバの一例が、特許文献1に記載されている。特許文献1に記載された関連する光トランシーバは、100Gbps(Giga bit per second)伝送用の活線挿抜可能な光トランシーバ・モジュールであるCFP(Centum Form−factor Pluggable)等である。
An example of such an optical transceiver is described in
関連する光トランシーバは、CPU(Central Processing Unit) およびメモリを備えたコントローラと、光送受信用装置を有する。メモリは、コントローラのファームウェアを格納するROM(Read Only Memory)とRAM(Random Access Memory)を備える。CPUは、ROMに格納されているファームウェア等のコンピュータプログラムを実行することによって、光送受信用装置を統括的に制御する。 A related optical transceiver includes a controller including a CPU (Central Processing Unit) and a memory, and an optical transmission / reception device. The memory includes a ROM (Read Only Memory) and a RAM (Random Access Memory) for storing the firmware of the controller. The CPU comprehensively controls the optical transmission / reception device by executing a computer program such as firmware stored in the ROM.
ROMは、第1のバンク、第2のバンク、および第3のバンクを備える。第1のバンクはブートプログラム領域とデータ領域とを備える。ブートプログラム領域にはブートプログラムが格納され、データ領域にはバンク切り替えデータが格納される。 The ROM includes a first bank, a second bank, and a third bank. The first bank includes a boot program area and a data area. The boot program is stored in the boot program area, and bank switching data is stored in the data area.
ブートプログラム領域に格納されるブートプログラムは、光トランシーバのファームウェアの一部として機能する。CPUはブートプログラムを実行することによって、コントローラを起動する。データ領域に格納されるバンク切り替えデータは、第2のバンクおよび第3のバンクの何れのバンクをコントローラが利用するかを示すデータである。すなわち、データ領域に格納されるバンク切り替えデータは、第2のバンクおよび第3のバンクの何れのバンクに格納されているアプリケーションプログラムがCPUによって実行されるかを示すデータである。CPUは、データ領域に格納されるバンク切り替えデータを参照し、第2のバンクおよび第3のバンクの何れのバンクに格納されているアプリケーションプログラムを実行するかを判断する。ここで、第2のバンクおよび第3のバンクに格納されるアプリケーションプログラムは、光トランシーバのファームウェアの一部として機能する。 The boot program stored in the boot program area functions as part of the optical transceiver firmware. The CPU boots the controller by executing a boot program. The bank switching data stored in the data area is data indicating which bank of the second bank and the third bank is used by the controller. That is, the bank switching data stored in the data area is data indicating which of the second bank and the third bank the application program stored in is executed by the CPU. The CPU refers to the bank switching data stored in the data area, and determines whether to execute the application program stored in which of the second bank and the third bank. Here, the application program stored in the second bank and the third bank functions as a part of the firmware of the optical transceiver.
CPUはシリアル通信信号を介して更新用のアプリケーションプログラムを外部機器から受信すると、現在使用中のアプリケーションプログラムが格納されている第2のバンクとは別の第3のバンクに、この更新用のアプリケーションプログラムを格納する。そして、CPUはシリアル通信信号を介して外部機器からバンクの切り替え指示、すなわちアプリケーションプログラムの切り替え指示を受けると、バンク切り替えデータの内容を更新する。具体的には、CPUはバンク切り替え指示を受けると、バンク切り替えデータの内容を、現在使用中のアプリケーションプログラムが格納されている第2のバンクから、更新用のアプリケーションプログラムが格納された第3のバンクに更新する。 When the CPU receives the update application program from the external device via the serial communication signal, the update application is placed in a third bank different from the second bank in which the currently used application program is stored. Store the program. Then, when the CPU receives a bank switching instruction from an external device, that is, an application program switching instruction via a serial communication signal, the CPU updates the contents of the bank switching data. Specifically, when the CPU receives a bank switching instruction, the contents of the bank switching data are transferred from the second bank in which the application program currently in use is stored to the third bank in which the application program for updating is stored. Update to bank.
その後、CPUはソフトウェアリセットを行う。ソフトウェアリセットは、CPUが実行するコンピュータプログラムの再起動であるので、光送受信用装置に対するリセットおよびデータ設定やRAMのデータの消去などは行われない。したがって、ソフトウェアリセットの場合、光送信信号および光受信信号の瞬断は生じない。 After that, the CPU resets the software. Since the software reset is a restart of a computer program executed by the CPU, the optical transmission / reception device is not reset, data is set, or RAM data is erased. Therefore, in the case of software reset, the optical transmission signal and the optical reception signal are not interrupted instantaneously.
このように、関連する光トランシーバによれば、光送受信信号を瞬断せずにプログラムの更新が可能になるとしている。 In this way, according to the related optical transceiver, it is possible to update the program without interrupting the optical transmission / reception signal.
上述したように、特許文献1に記載された関連する光トランシーバにおいては、コントローラが備えるCPUは、ROMのデータ領域に格納されるバンク切り替えデータ(起動領域情報)に基づいて、アプリケーションプログラム(ファームウェア)を実行する。すなわち、CPUは起動領域情報を参照し、第2のバンクおよび第3のバンクのいずれかのバンクに格納されているファームウェアを実行する。
As described above, in the related optical transceiver described in
このとき、起動領域情報が指示するバンクに格納されているファームウェアが破壊されているなどの不具合があると、CPUはこのファームウェアを実行することができない。この場合、関連する光トランシーバにおいては、他のバンクに格納されているファームウェアを実行するためには、起動領域情報の内容を更新する処理を別途行う必要がある。そのため、関連する光トランシーバが備えるコントローラの処理が複雑になるという問題があった。 At this time, if there is a problem such as the firmware stored in the bank indicated by the boot area information being destroyed, the CPU cannot execute this firmware. In this case, in the related optical transceiver, in order to execute the firmware stored in another bank, it is necessary to separately perform a process of updating the contents of the boot area information. Therefore, there is a problem that the processing of the controller included in the related optical transceiver becomes complicated.
このように、複数のファームウェアのいずれかを起動領域情報に基づいて起動する場合、起動領域情報が指示するファームウェアに不具合があると起動処理が複雑になる、という問題があった。 As described above, when any one of the plurality of firmwares is started based on the boot area information, there is a problem that the boot process becomes complicated if there is a defect in the firmware indicated by the boot area information.
本発明の目的は、上述した課題である、複数のファームウェアのいずれかを起動領域情報に基づいて起動する場合、起動領域情報が指示するファームウェアに不具合があると起動処理が複雑になる、という課題を解決するファームウェア起動装置、ファームウェア起動方法、およびファームウェア起動プログラムを提供することにある。 An object of the present invention is that when any of a plurality of firmwares is started based on the boot area information, the boot process becomes complicated if there is a defect in the firmware indicated by the boot area information, which is the above-mentioned problem. The purpose is to provide a firmware boot device, a firmware boot method, and a firmware boot program.
本発明のファームウェア起動装置は、複数のメモリ領域に格納されたファームウェアのうち起動する対象となるファームウェアを指定する起動領域選択信号と、起動領域選択信号の有効性に関する情報を含む有効情報信号とを取得する取得手段と、起動領域選択信号と有効情報信号とに基づいて、起動する対象となるファームウェアである起動ファームウェアを決定するファームウェア決定手段と、起動ファームウェアを、実行可能な状態に設定するファームウェア設定手段、とを有する。 The firmware boot device of the present invention has a boot area selection signal that specifies the firmware to be booted among the firmware stored in a plurality of memory areas, and an effective information signal including information on the validity of the boot area selection signal. The acquisition means to be acquired, the firmware determining means for determining the boot firmware which is the firmware to be booted based on the boot area selection signal and the valid information signal, and the firmware setting for setting the boot firmware in an executable state. Means, and.
本発明のファームウェア起動方法は、複数のメモリ領域に格納されたファームウェアのうち起動する対象となるファームウェアを指定する起動領域選択信号と、起動領域選択信号の有効性に関する情報を含む有効情報信号とを取得し、起動領域選択信号と有効情報信号とに基づいて、起動する対象となるファームウェアである起動ファームウェアを決定し、起動ファームウェアを、実行可能な状態に設定する。 The firmware booting method of the present invention includes a boot area selection signal that specifies the firmware to be booted from among the firmware stored in a plurality of memory areas, and an effective information signal including information on the validity of the boot area selection signal. Based on the acquisition and the boot area selection signal and the valid information signal, the boot firmware which is the firmware to be booted is determined, and the boot firmware is set in an executable state.
本発明のファームウェア起動プログラムは、コンピュータを、複数のメモリ領域に格納されたファームウェアのうち起動する対象となるファームウェアを指定する起動領域選択信号と、起動領域選択信号の有効性に関する情報を含む有効情報信号とを取得する取得手段、起動領域選択信号と有効情報信号とに基づいて、起動する対象となるファームウェアである起動ファームウェアを決定するファームウェア決定手段、および起動ファームウェアを、実行可能な状態に設定するファームウェア設定手段、として機能させる。 The firmware boot program of the present invention provides valid information including a boot area selection signal that specifies a firmware to be booted among firmwares stored in a plurality of memory areas and information on the validity of the boot area selection signal. The acquisition means for acquiring the signal, the firmware determining means for determining the boot firmware which is the firmware to be booted based on the boot area selection signal and the valid information signal, and the boot firmware are set in an executable state. It functions as a firmware setting means.
本発明のファームウェア起動装置、ファームウェア起動方法、およびファームウェア起動プログラムによれば、複数のファームウェアのいずれかを起動する際に、一のファームウェアに不具合がある場合であっても、他のファームウェアを簡易に起動することができる。 According to the firmware boot device, the firmware boot method, and the firmware boot program of the present invention, when booting any of a plurality of firmwares, even if one firmware has a problem, the other firmware can be easily used. Can be started.
以下に、図面を参照しながら、本発明の実施形態について説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
〔第1の実施形態〕
図1は、本発明の第1の実施形態に係るファームウェア起動装置100の構成を示すブロック図である。
[First Embodiment]
FIG. 1 is a block diagram showing a configuration of a
本実施形態によるファームウェア起動装置100は、取得手段110、ファームウェア決定手段120、およびファームウェア設定手段130を有する。
The
取得手段110は、複数のメモリ領域に格納されたファームウェアのうち起動する対象となるファームウェアを指定する起動領域選択信号S11と、起動領域選択信号S11の有効性に関する情報を含む有効情報信号S12とを取得する。ファームウェア決定手段120は、起動領域選択信号S11と有効情報信号S12とに基づいて、起動する対象となるファームウェアである起動ファームウェアを決定する。そして、ファームウェア設定手段130は、起動ファームウェアを、実行可能な状態に設定する。 The acquisition means 110 receives a boot area selection signal S11 that specifies the firmware to be booted from among the firmware stored in the plurality of memory areas, and an effective information signal S12 that includes information on the validity of the boot area selection signal S11. get. The firmware determining means 120 determines the boot firmware, which is the firmware to be booted, based on the boot area selection signal S11 and the valid information signal S12. Then, the firmware setting means 130 sets the boot firmware to an executable state.
このような構成としたことにより、本実施形態のファームウェア起動装置100によれば、複数のメモリ領域に格納されたファームウェアのうち、起動領域選択信号S11と有効情報信号S12を用いて起動ファームウェアを決定することができる。そのため、複数のメモリ領域に格納されたファームウェアのいずれかに不具合が生じている場合であっても、起動領域選択信号S11によって異なるメモリ領域に格納されたファームウェアを指定し、起動することが可能である。
With such a configuration, according to the
すなわち、本実施形態のファームウェア起動装置100によれば、複数のファームウェアのいずれかを起動する際に、一のファームウェアに不具合がある場合であっても、他のファームウェアを簡易な処理で起動することができる。
That is, according to the
ここで、ファームウェア決定手段120は、有効情報信号S12に基づいて起動領域選択信号S11が有効か否かを判断する構成とすることができる。これにより、起動領域選択信号S11の誤作動を防止することができる。そして、ファームウェア決定手段120は、起動領域選択信号S11が有効であると判断した場合、起動領域選択信号S11が指定するファームウェアを起動ファームウェアに決定する構成とすることができる。 Here, the firmware determining means 120 can be configured to determine whether or not the activation area selection signal S11 is valid based on the valid information signal S12. As a result, it is possible to prevent a malfunction of the activation area selection signal S11. Then, when the firmware determining means 120 determines that the boot area selection signal S11 is valid, the firmware determining means 120 may be configured to determine the firmware specified by the boot area selection signal S11 as the boot firmware.
また、ファームウェア起動装置100は、起動ファームウェアに関する情報である起動領域情報を記憶する記憶手段を備えた構成としてもよい。この場合、ファームウェア決定手段120は、上述した場合と同様に、有効情報信号S12に基づいて起動領域選択信号S11が有効か否かを判断する。そして、起動領域選択信号S11が有効でないと判断した場合、ファームウェア決定手段120は上述の記憶手段が記憶している起動領域情報に基づいて起動ファームウェアを決定する構成としてもよい。
Further, the
次に、本実施形態によるファームウェア起動方法について説明する。 Next, the firmware booting method according to the present embodiment will be described.
本実施形態のファームウェア起動方法においては、まず、複数のメモリ領域に格納されたファームウェアのうち起動する対象となるファームウェアを指定する起動領域選択信号と、起動領域選択信号の有効性に関する情報を含む有効情報信号とを取得する。この起動領域選択信号と有効情報信号とに基づいて、起動する対象となるファームウェアである起動ファームウェアを決定する。そして、この起動ファームウェアを、実行可能な状態に設定する。 In the firmware booting method of the present embodiment, first, the boot area selection signal that specifies the firmware to be booted among the firmware stored in the plurality of memory areas, and the valid information including the validity of the boot area selection signal are included. Get the information signal. Based on the boot area selection signal and the valid information signal, the boot firmware which is the firmware to be booted is determined. Then, this boot firmware is set to an executable state.
ここで、起動ファームウェアを決定する処理には、有効情報信号に基づいて起動領域選択信号が有効か否かを判断する処理を含めることができる。そして、起動領域選択信号が有効であると判断した場合、起動領域選択信号が指定するファームウェアを起動ファームウェアに決定する処理が含まれる構成とすることができる。 Here, the process of determining the boot firmware can include a process of determining whether or not the boot area selection signal is valid based on the valid information signal. Then, when it is determined that the boot area selection signal is valid, the configuration may include a process of determining the firmware specified by the boot area selection signal as the boot firmware.
また、上述の各処理をコンピュータに実行させることとしてもよい。ここで、コンピュータは例えば、光トランシーバの制御手段が備える処理装置(CPU)等である。このようなコンピュータを、取得手段、ファームウェア決定手段、およびファームウェア設定手段として機能させるためのファームウェア起動プログラムを用いることができる。 Further, each of the above-mentioned processes may be executed by a computer. Here, the computer is, for example, a processing device (CPU) included in the control means of the optical transceiver. A firmware boot program for making such a computer function as an acquisition means, a firmware determination means, and a firmware setting means can be used.
ここで、取得手段は、複数のメモリ領域に格納されたファームウェアのうち起動する対象となるファームウェアを指定する起動領域選択信号と、起動領域選択信号の有効性に関する情報を含む有効情報信号とを取得する。ファームウェア決定手段は、起動領域選択信号と有効情報信号とに基づいて、起動する対象となるファームウェアである起動ファームウェアを決定する。そして、ファームウェア設定手段は、起動ファームウェアを、実行可能な状態に設定する。 Here, the acquisition means acquires a boot area selection signal that specifies the firmware to be booted from among the firmware stored in the plurality of memory areas, and an effective information signal including information on the validity of the boot area selection signal. do. The firmware determining means determines the boot firmware, which is the firmware to be booted, based on the boot area selection signal and the valid information signal. Then, the firmware setting means sets the boot firmware to an executable state.
このとき、ファームウェア決定手段は、有効情報信号に基づいて起動領域選択信号が有効か否かを判断する構成とすることができる。そして、起動領域選択信号が有効であると判断した場合、起動領域選択信号が指定するファームウェアを起動ファームウェアに決定する構成とすることができる。 At this time, the firmware determining means may be configured to determine whether or not the activation area selection signal is valid based on the valid information signal. Then, when it is determined that the boot area selection signal is valid, the firmware specified by the boot area selection signal can be determined as the boot firmware.
以上説明したように、本実施形態のファームウェア起動装置100、ファームウェア起動方法、およびファームウェア起動プログラムによれば、複数のファームウェアのいずれかを起動する際に、一のファームウェアに不具合がある場合であっても、他のファームウェアを簡易に起動することができる。
As described above, according to the
〔第2の実施形態〕
次に、本発明の第2の実施形態について説明する。図2は、本発明の第2の実施形態に係る制御装置200の構成を示すブロック図である。制御装置200は、例えば、光トランシーバの制御部が備えるCPU(Central Processing Unit)起動モジュールなどである。
[Second Embodiment]
Next, a second embodiment of the present invention will be described. FIG. 2 is a block diagram showing a configuration of a
制御装置200は、CPU(処理装置)210、揮発メモリ(第1の記憶手段)220、および不揮発メモリ(第2の記憶手段)230を有する。
The
CPU210は、外部システム20からCPUスタート信号S20、起動領域選択信号S21、および有効情報信号S22を受け付ける。ここで、起動領域選択信号S21は、複数のメモリ領域に格納されたファームウェアのうち起動する対象となるファームウェアを指定する信号である。また、有効情報信号S22は、起動領域選択信号S21の有効性に関する情報を含む信号である。
The
CPU210はCPUスタート信号S20を受付けたことを契機として、不揮発メモリ230に格納されているブートローダ(Bootloader)プログラムP21を揮発メモリ220のブートローダ・プログラム領域に配備する。そして、CPU210は揮発メモリ220のn番地からブートローダ・プログラムP11を読み込む機能を有する。ここで、ブートローダ・プログラムP11がCPU210に読み込まれることにより、第1の実施形態のファームウェア起動装置100が構築される。
Upon receiving the CPU start signal S20, the
ブートローダ・プログラムP11は、起動領域選択信号S21および有効情報信号S22を、不揮発メモリ230に格納されている起動領域情報P22よりも優先的に参照する。そして、ブートローダ・プログラムP11は、起動領域選択信号S21と起動領域情報P22とに基づいて、起動する対象となるファームウェアが格納されている不揮発メモリ230の領域を決定する。ここでは、不揮発メモリ230が2個の起動領域、すなわちA面およびB面からなる2個の起動面を備えているものとする。
The boot loader program P11 refers to the boot area selection signal S21 and the valid information signal S22 with priority over the boot area information P22 stored in the
ブートローダ・プログラムP11は上記決定に従って、不揮発メモリ230に格納されているA面のファームウェアP23またはB面のファームウェアP24をコピーし、揮発メモリ220が備えるCPU210動作用の動作ファームウェア領域に配置する。すなわち、起動する対象となるファームウェアである起動ファームウェアを、実行可能な状態に設定する。そして、ブートローダ・プログラムP11は、揮発メモリ220の動作ファームウェア領域の先頭番地(n1番地)から、起動ファームウェアとしてのCPU210の動作用ファームウェアP12を起動させる。
According to the above determination, the boot loader program P11 copies the firmware P23 on the A side or the firmware P24 on the B side stored in the
上述したように、本実施形態による制御装置200はブートローダ・プログラムP11を備える。このブートローダ・プログラムP11は、CPUスタート信号S20、起動面であるA面またはB面を指定する起動領域選択信号S21、および起動領域選択信号S21の誤作動防止のための有効情報信号S22を受け付ける。
As described above, the
ここでブートローダ・プログラムP11は、起動領域選択信号S21および有効情報信号S22の例えば極性を読み取り、起動する対象となるファームウェアが格納されている不揮発メモリ230の起動面(A面またはB面)を決定する。この起動面の決定は、不揮発メモリ230に格納されている起動領域情報の読み込みよりも優先して先に行う。そして、ブートローダ・プログラムP11は、決定した起動面に格納されているファームウェアを起動する。
Here, the boot loader program P11 reads, for example, the polarity of the boot area selection signal S21 and the valid information signal S22, and determines the boot surface (A surface or B surface) of the
このような構成としたことにより、本実施形態の制御装置200によれば、不揮発メモリ230の起動領域に格納されているファームウェアのうち一方のデータが破損している場合であっても、CPU210でファームウェアを起動することができる。これは、本実施形態の制御装置200が備えるブートローダ・プログラムP11が、起動領域選択信号S21および有効情報信号S22を優先的に読み取り、起動面を決定することができるからである。すなわち、本実施形態の制御装置200によれば、外部システム20からの信号制御により指定した起動領域(起動面)のファームウェアをCPU210上で起動することができる。
With such a configuration, according to the
上述したように、本実施形態の制御装置200においてブートローダ・プログラムP11がCPU210に読み込まれることにより、ファームウェア起動装置が構築される。これにより、上述した効果、すなわち、複数のファームウェアのいずれかを起動する際に、一のファームウェアに不具合がある場合であっても、他のファームウェアを簡易に起動することができるという効果が得られる。
As described above, the firmware boot device is constructed by loading the boot loader program P11 into the
次に、本実施形態による制御装置200の動作について説明する。図3A、3B、および3Cは、本実施形態による制御装置200の動作を説明するためのフローチャートである。
Next, the operation of the
以下では、制御装置200においてCPU210を起動する動作について説明する。制御装置200が備えるCPU210は、外部システム20から起動領域選択信号S21および有効情報信号S22を受け付ける(ステップS201)。また、外部システム20からCPUスタート信号S20を受け付ける(ステップS202)。
Hereinafter, the operation of starting the
続いて、CPU210は不揮発メモリ230のN番地からブートローダ・プログラムP21を読み出し、揮発メモリ220のn番地にコピーする(ステップS203)。揮発メモリ220にコピーされたブートローダ・プログラムP11がCPU210上で始動する(ステップS204)。
Subsequently, the
ブートローダ・プログラムP11は、有効情報信号S22を読み出し(ステップS205)、起動領域選択信号S21が有効か否かを判定する(ステップS206)。有効情報信号S22が有効である場合(ステップS206/YES)、ブートローダ・プログラムP11は起動領域選択信号S21を読み出し(図3BのステップS207)、起動領域選択信号S21が指示する起動面がA面またはB面のいずれであるかを判定する(ステップS208)。 The boot loader program P11 reads out the valid information signal S22 (step S205) and determines whether or not the start area selection signal S21 is valid (step S206). When the valid information signal S22 is valid (step S206 / YES), the boot loader program P11 reads the boot area selection signal S21 (step S207 in FIG. 3B), and the boot surface indicated by the boot area selection signal S21 is the A side or It is determined which of the B surfaces is (step S208).
起動領域選択信号S21が指示する起動面がA面である場合(ステップS208/YES)、ブートローダ・プログラムP11はA面のファームウェアP23が格納されている不揮発メモリ230のN2番地をコピー元として決定する(ステップS209)。そして、ブートローダ・プログラムP11は不揮発メモリ230のA面の起動面に対応したN2番地から揮発メモリ220のn1番地にA面ファームウェア(FW)をコピーする(ステップS210)。
When the boot surface indicated by the boot area selection signal S21 is the A side (step S208 / YES), the boot loader program P11 determines the N2 address of the
一方、起動領域選択信号S21が指示する起動面がB面である場合(ステップS208/NO)、ブートローダ・プログラムP11はB面のファームウェアP24が格納されている不揮発メモリ230のN3番地をコピー元として決定する(ステップS211)。そして、ブートローダ・プログラムP11は不揮発メモリ230のB面の起動面に対応したN3番地から揮発メモリ220のn1番地にB面ファームウェア(FW)をコピーする(ステップS212)。
On the other hand, when the boot surface indicated by the boot area selection signal S21 is the B surface (step S208 / NO), the boot loader program P11 uses the N3 address of the
また、起動領域選択信号S21が無効である場合(図3AのステップS206/NO)、ブートローダ・プログラムP11は不揮発メモリ230に格納されている起動領域情報P22を読み出し(図3Cのステップ301)、起動面がA面またはB面のいずれであるかを判定する(ステップS302)。この後の処理は、上述したステップ(図3BのステップS209からS212)と同様である。
When the boot area selection signal S21 is invalid (step S206 / NO in FIG. 3A), the boot loader program P11 reads the boot area information P22 stored in the non-volatile memory 230 (
最後に、揮発メモリ220にコピーされたCPU210の動作用ファームウェアP12がCPU210で始動する(ステップS213)ことにより、CPU210を起動する動作が終了する。
Finally, the operation firmware P12 of the
以上説明したように、本実施形態の制御装置200によれば以下の効果が得られる。すなわち、不揮発メモリ230に格納された起動領域情報が指定する起動面(A面またはB面の一方)のファームウェアが破損している場合であっても、外部システムから他方の起動面を指定することによって、破損していないファームウェアを起動することができる。さらに、これにより、制御装置200を備えたシステムを設置した後であっても、設置した環境でCPU210を起動することが可能である。そのため、設置した制御装置200、例えばCPU起動モジュールを回収する必要がなくなり、一方のファームウェアが破損している場合であってもコストの増大を回避することができる。
As described above, according to the
なお、本実施形態による制御装置200を光トランシーバに搭載することができる。このような光トランシーバの例を図4に示す。光トランシーバ300は、本実施形態による制御装置200と、レーザ光をデータ信号によって変調した光信号を送出する光送信手段310と、光信号を受光し復調することによりデータ信号を受信する光受信手段320を備える。制御装置200が光送信手段310および光受信手段320の動作を制御する。
The
ここで、光トランシーバ300は例えば、100Gbps(Giga bit per second)伝送用の活線挿抜可能な光トランシーバ・モジュールであるCFP(Centum Form−factor Pluggable)等である。CFPの業界標準仕様であるMSA(Nulti Source Agreement)においては、オンライン・アップグレード(Online Upgrade)機能が規定されている。そして、不揮発メモリにファームウェアを2面(A面とB面)有し、A面およびB面の起動面情報を参照しながらオンライン・アップグレードする機能が仕様として定められている。この場合、オンライン・アップグレードの作業時に、人為ミスによってCPUの起動不良事象が発生する場合がある。
Here, the
しかし、本実施形態の光トランシーバ300によれば、上述したように、このような不具合の発生を回避することができる。
However, according to the
本発明は上記実施形態に限定されることなく、特許請求の範囲に記載した発明の範囲内で、種々の変形が可能であり、それらも本発明の範囲内に含まれるものであることはいうまでもない。 It is said that the present invention is not limited to the above-described embodiment, and various modifications can be made within the scope of the invention described in the claims, and these are also included in the scope of the present invention. Not to mention.
100 ファームウェア起動装置
110 取得手段
120 ファームウェア決定手段
130 ファームウェア設定手段
200 制御装置
210 CPU
220 揮発メモリ
230 不揮発メモリ
300 光トランシーバ
310 光送信手段
320 光受信手段
20 外部システム
100
220
Claims (10)
前記起動領域選択信号と前記有効情報信号とに基づいて、起動する対象となるファームウェアである起動ファームウェアを決定するファームウェア決定手段と、
前記起動ファームウェアを、実行可能な状態に設定するファームウェア設定手段と、
前記起動ファームウェアに関する情報である起動領域情報を記憶する記憶手段、とを有し、
前記ファームウェア決定手段は、前記起動領域選択信号および前記有効情報信号を、前記起動領域情報よりも優先的に参照して、前記起動ファームウェアを決定する
ファームウェア起動装置。 Acquisition of a boot area selection signal that specifies the firmware to be booted from among the firmware stored in a plurality of memory areas and a valid information signal including information on the validity of the boot area selection signal from an external system. Means and
A firmware determining means for determining the boot firmware, which is the firmware to be booted, based on the boot area selection signal and the valid information signal.
A firmware setting means for setting the boot firmware to an executable state, and
It has a storage means for storing boot area information, which is information about the boot firmware, and
The firmware determining means is a firmware booting device that determines the booting firmware by referring to the booting area selection signal and the valid information signal with priority over the booting area information.
請求項1に記載したファームウェア起動装置。 The firmware determining means determines whether or not the activation area selection signal is valid based on the effective information signal, and when it is determined that the activation area selection signal is valid, the activation area selection signal specifies. The firmware boot device according to claim 1, wherein the firmware is determined as the boot firmware.
請求項1または2に記載したファームウェア起動装置。 The firmware determining means determines whether or not the activation area selection signal is valid based on the valid information signal, and when it is determined that the activation area selection signal is not valid, the firmware determination means is based on the activation area information. The firmware boot device according to claim 1 or 2.
前記起動ファームウェアを実行する処理装置と、
前記処理装置が実行する前記起動ファームウェアを格納するための動作ファームウェア領域を備えた第1の記憶手段と、
複数の前記ファームウェアと、前記起動ファームウェアに関する情報である起動領域情報を記憶する第2の記憶手段、とを有し、
前記ファームウェア設定手段は、前記第2の記憶手段が記憶する前記複数のファームウェアのうち前記起動ファームウェアを、前記動作ファームウェア領域に配置する
制御装置。 The firmware boot device according to any one of claims 1 to 3 and
A processing device that executes the boot firmware and
A first storage means including an operating firmware area for storing the boot firmware executed by the processing device, and
It has a plurality of the firmware and a second storage means for storing boot area information which is information about the boot firmware.
The firmware setting means is a control device that arranges the boot firmware among the plurality of firmwares stored in the second storage means in the operating firmware area.
前記起動領域選択信号と前記有効情報信号とに基づいて、起動する対象となるファームウェアである起動ファームウェアを決定し、
前記起動ファームウェアを、実行可能な状態に設定し、
前記起動ファームウェアに関する情報である起動領域情報を記憶し、
前記起動ファームウェアを決定する際に、前記起動領域選択信号および前記有効情報信号を、前記起動領域情報よりも優先的に参照する
ファームウェア起動方法。 A boot area selection signal that specifies the firmware to be booted from among the firmware stored in a plurality of memory areas and a valid information signal including information on the validity of the boot area selection signal are acquired from an external system.
Based on the boot area selection signal and the valid information signal, the boot firmware which is the firmware to be booted is determined.
Set the boot firmware to an executable state and set it to an executable state.
Stores boot area information, which is information about the boot firmware,
A firmware booting method in which, when determining the booting firmware, the booting area selection signal and the valid information signal are referred to in preference to the booting area information.
請求項5に記載したファームウェア起動方法。 The process of determining the boot firmware determines whether or not the boot area selection signal is valid based on the valid information signal, and when it is determined that the boot area selection signal is valid, the boot area selection signal is released. The firmware booting method according to claim 5, further comprising a process of determining the designated firmware as the boot firmware.
請求項5または6に記載したファームウェア起動方法。 The process of determining the boot firmware determines whether or not the boot area selection signal is valid based on the valid information signal, and when it is determined that the boot area selection signal is not valid, the process is based on the boot area information. The firmware booting method according to claim 5 or 6, which includes the process of determining the boot firmware.
複数のメモリ領域に格納されたファームウェアのうち起動する対象となるファームウェアを指定する起動領域選択信号と、前記起動領域選択信号の有効性に関する情報を含む有効情報信号とを、外部システムから取得する取得手段、
前記起動領域選択信号と前記有効情報信号とに基づいて、起動する対象となるファームウェアである起動ファームウェアを決定するファームウェア決定手段、および
前記起動ファームウェアを、実行可能な状態に設定するファームウェア設定手段、として機能させるためのファームウェア起動プログラムであって、
前記ファームウェア決定手段は、前記起動領域選択信号および前記有効情報信号を、前記起動ファームウェアに関する情報である起動領域情報よりも優先的に参照して、前記起動ファームウェアを決定する
ファームウェア起動プログラム。 The boot area selection signal that specifies the firmware to be booted from the firmware stored in a plurality of memory areas of the computer and the valid information signal including the information about the validity of the boot area selection signal are acquired from the external system. Acquisition method,
As a firmware determining means for determining the boot firmware which is the firmware to be booted based on the boot area selection signal and the valid information signal, and a firmware setting means for setting the boot firmware in an executable state. A firmware boot program to make it work
The firmware determining means is a firmware boot program that determines the boot firmware by referring to the boot area selection signal and the valid information signal with priority over the boot area information that is information about the boot firmware.
請求項8に記載したファームウェア起動プログラム。 The firmware determining means determines whether or not the activation area selection signal is valid based on the effective information signal, and when it is determined that the activation area selection signal is valid, the activation area selection signal specifies. The firmware boot program according to claim 8, which determines the firmware as the boot firmware.
請求項8または9に記載したファームウェア起動プログラム。 The firmware determining means determines whether or not the boot area selection signal is valid based on the valid information signal, and when it is determined that the boot area selection signal is not valid, the boot firmware is based on the boot area information. The firmware boot program according to claim 8 or 9.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016053568A JP6912163B2 (en) | 2016-03-17 | 2016-03-17 | Firmware boot device, firmware boot method, and firmware boot program |
CN201710130765.0A CN107203391B (en) | 2016-03-17 | 2017-03-07 | Firmware activation device and firmware activation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016053568A JP6912163B2 (en) | 2016-03-17 | 2016-03-17 | Firmware boot device, firmware boot method, and firmware boot program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017167887A JP2017167887A (en) | 2017-09-21 |
JP6912163B2 true JP6912163B2 (en) | 2021-07-28 |
Family
ID=59904874
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016053568A Active JP6912163B2 (en) | 2016-03-17 | 2016-03-17 | Firmware boot device, firmware boot method, and firmware boot program |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6912163B2 (en) |
CN (1) | CN107203391B (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6952006B2 (en) * | 2018-04-13 | 2021-10-20 | 日立Astemo株式会社 | Electronic control device for vehicles and starting method |
JP2020017059A (en) * | 2018-07-25 | 2020-01-30 | 日本電気株式会社 | Information processing device, information processing system, information processing method and program |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1074543A (en) * | 1991-11-13 | 1993-07-21 | 陈振文 | Single chip microcomputer firmware processing mode and hardware unit |
JPH08161223A (en) * | 1994-12-02 | 1996-06-21 | Nippondenso Co Ltd | Microcomputer with built-in otp memory for controlling internal combustion engine |
US6167532A (en) * | 1998-02-05 | 2000-12-26 | Compaq Computer Corporation | Automatic system recovery |
JP4689792B2 (en) * | 2000-06-20 | 2011-05-25 | Necエンジニアリング株式会社 | PROM switching control system |
JP2002358207A (en) * | 2001-05-31 | 2002-12-13 | Yamaha Corp | Firmware built-in apparatus and boot program for same |
US6728833B2 (en) * | 2002-02-28 | 2004-04-27 | International Business Machines Corporation | Upgrading firmware on disks of the raid storage system without deactivating the server |
KR100470971B1 (en) * | 2002-08-01 | 2005-03-10 | 삼성전자주식회사 | Read only memory cell, program and layout method of the cell, and read only memory device comprising the cell |
US7876469B2 (en) * | 2003-12-26 | 2011-01-25 | Panasonic Corporation | Image forming apparatus and updating method |
JP2007058499A (en) * | 2005-08-24 | 2007-03-08 | Matsushita Electric Ind Co Ltd | Information processor and data writing method |
JP2007334915A (en) * | 2007-08-27 | 2007-12-27 | Renesas Technology Corp | Memory card |
JP2009059105A (en) * | 2007-08-30 | 2009-03-19 | Konica Minolta Business Technologies Inc | Information processor and program |
CN101526908B (en) * | 2008-03-06 | 2012-01-11 | 晨星半导体股份有限公司 | Device and method for firmware updating |
TWI386847B (en) * | 2009-02-04 | 2013-02-21 | Novatek Microelectronics Corp | Method of safe and recoverable firmware update and device using the same |
JP2011188019A (en) * | 2010-03-04 | 2011-09-22 | Murata Machinery Ltd | Digital composite machine |
JP6070360B2 (en) * | 2013-03-29 | 2017-02-01 | 沖電気工業株式会社 | Information processing apparatus and processing method thereof |
CN104200843B (en) * | 2014-09-13 | 2018-01-30 | 无锡中感微电子股份有限公司 | The burned device of flash memory, burned system and burned method |
CN104536848B (en) * | 2014-12-22 | 2018-05-08 | 小米科技有限责任公司 | Firmware restoration method, apparatus and terminal |
-
2016
- 2016-03-17 JP JP2016053568A patent/JP6912163B2/en active Active
-
2017
- 2017-03-07 CN CN201710130765.0A patent/CN107203391B/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2017167887A (en) | 2017-09-21 |
CN107203391B (en) | 2022-01-04 |
CN107203391A (en) | 2017-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11385903B2 (en) | Firmware update patch | |
KR102294568B1 (en) | Method and apparatus for security checking of image for container | |
RU2720068C2 (en) | Information processing device, method for control thereof and data storage medium | |
US20110264776A1 (en) | Deploying an operating system | |
JP5333579B2 (en) | Management server, boot server, network boot system, and network boot method | |
JP2009230398A (en) | Software update support device and software update support program | |
US20190073249A1 (en) | Message oriented middleware with integrated rules engine | |
JP6912163B2 (en) | Firmware boot device, firmware boot method, and firmware boot program | |
JP2020533670A (en) | Methods and equipment for erasing or writing flash data | |
JP6485152B2 (en) | Multi-CPU system and CPU upgrade method | |
CN106293790B (en) | application program upgrading method and device based on Firefox operating system | |
JPWO2004081791A1 (en) | Virtual machine system and firmware update method in virtual machine system | |
JP2011186823A (en) | Virus-checking system, virus-checking device and program | |
KR101461319B1 (en) | Methods and device for upgrading firmware of set-top box | |
JP2019160133A (en) | Information processing device, information processing system, and method | |
JP6350308B2 (en) | Optical transceiver | |
JP2008217202A (en) | Disk array device and firmware update method | |
TW201504945A (en) | Host and method of upgrading connection manager of dongle | |
JP6959153B2 (en) | Information processing equipment, information processing methods, and programs | |
JP5158883B2 (en) | Firmware update method and firmware update apparatus | |
JP2017107283A (en) | Initialization method, deployment server, deployment program, and initialization program | |
JP7491765B2 (en) | Firmware update system and firmware update method | |
JP4799587B2 (en) | Network boot system and network boot method | |
JP2020080120A (en) | Information processing device, update method of information processing device, and update program of information processing device | |
JP6099106B2 (en) | Method, computer system, and memory device for providing at least one data carrier |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190215 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20191211 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20191224 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200210 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200303 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200423 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20200602 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200902 |
|
C60 | Trial request (containing other claim documents, opposition documents) |
Free format text: JAPANESE INTERMEDIATE CODE: C60 Effective date: 20200902 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20200911 |
|
C21 | Notice of transfer of a case for reconsideration by examiners before appeal proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C21 Effective date: 20200915 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20201113 |
|
C211 | Notice of termination of reconsideration by examiners before appeal proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C211 Effective date: 20201117 |
|
C22 | Notice of designation (change) of administrative judge |
Free format text: JAPANESE INTERMEDIATE CODE: C22 Effective date: 20201208 |
|
C13 | Notice of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: C13 Effective date: 20210216 |
|
C23 | Notice of termination of proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C23 Effective date: 20210511 |
|
C03 | Trial/appeal decision taken |
Free format text: JAPANESE INTERMEDIATE CODE: C03 Effective date: 20210615 |
|
C30A | Notification sent |
Free format text: JAPANESE INTERMEDIATE CODE: C3012 Effective date: 20210615 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210708 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6912163 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |