Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7655066B2 - COMMUNICATION DEVICE, SOFTWARE UPDATE METHOD, AND COMPUTER PROGRAM - Google Patents
[go: Go Back, main page]

JP7655066B2 - COMMUNICATION DEVICE, SOFTWARE UPDATE METHOD, AND COMPUTER PROGRAM - Google Patents

COMMUNICATION DEVICE, SOFTWARE UPDATE METHOD, AND COMPUTER PROGRAM Download PDF

Info

Publication number
JP7655066B2
JP7655066B2 JP2021072670A JP2021072670A JP7655066B2 JP 7655066 B2 JP7655066 B2 JP 7655066B2 JP 2021072670 A JP2021072670 A JP 2021072670A JP 2021072670 A JP2021072670 A JP 2021072670A JP 7655066 B2 JP7655066 B2 JP 7655066B2
Authority
JP
Japan
Prior art keywords
operating system
processor
unit
control information
code
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
Application number
JP2021072670A
Other languages
Japanese (ja)
Other versions
JP2022167111A (en
Inventor
洋平 濱田
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.)
Sumitomo Electric Industries Ltd
Original Assignee
Sumitomo Electric Industries Ltd
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 Sumitomo Electric Industries Ltd filed Critical Sumitomo Electric Industries Ltd
Priority to JP2021072670A priority Critical patent/JP7655066B2/en
Publication of JP2022167111A publication Critical patent/JP2022167111A/en
Application granted granted Critical
Publication of JP7655066B2 publication Critical patent/JP7655066B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Small-Scale Networks (AREA)

Description

本開示は、通信装置、プログラム更新方法、及びコンピュータプログラムに関する。 The present disclosure relates to a communication device, a program update method, and a computer program.

基幹ネットワークで使用される通信装置においては、サービスの提供を停止することがないよう、主信号の通信機能を維持したままソフトウェア更新を行うISSU(In Service Software Upgrade)が求められる。特許文献1には、PON(Passive Optical Network)における局側装置(OLT:Optical Line Terminal)を停止させることなく、局側装置のファームウェアを更新する方法が開示されている。 For communication devices used in backbone networks, there is a demand for an In Service Software Upgrade (ISSU) that performs software updates while maintaining the communication functions of the main signal so as not to halt the provision of services. Patent Document 1 discloses a method for updating the firmware of an optical line terminal (OLT) in a passive optical network (PON) without stopping the OLT.

特開2014-78784号公報JP 2014-78784 A

しかしながら、特許文献1に開示された方法では、オペレーティングシステム(以下、「OS」ともいう)の更新が考慮されていない。したがって、OSを更新する場合は装置が再起動し、一定期間装置が停止する。 However, the method disclosed in Patent Document 1 does not take into consideration updates to the operating system (hereinafter also referred to as "OS"). Therefore, when updating the OS, the device is restarted and the device is stopped for a certain period of time.

本開示の一態様に係る通信装置は、データを格納するメモリと、前記メモリに格納されたデータを読み出し可能なプロセッサと、主信号の通信に関する機能を提供する第1ハードウェア機能部と、前記プロセッサと連携した機能を提供する第2ハードウェア機能部と、前記プロセッサ及び前記第1ハードウェア機能部のそれぞれを初期化することなく、更新後のオペレーティングシステムである第2オペレーティングシステムを起動するための起動コード、前記第2オペレーティングシステムの実行可能コードである第2コード、及び、更新前のオペレーティングシステムである第1オペレーティングシステムによる前記第2ハードウェア機能部の制御に用いられる第1制御情報を含む引継データを、前記第1オペレーティングシステムの実行可能コードである第1コードの前記メモリ内における格納領域とは異なる領域に格納する格納処理部と、前記プロセッサに、前記第1オペレーティングシステムを停止させ、前記起動コード及び前記第2コードを実行させことにより前記第2オペレーティングシステムを起動させる切替処理部と、前記第2オペレーティングシステムが起動される場合に、前記プロセッサに、前記第1制御情報を前記引継データから取得させる制御情報取得処理部と、を備える。 A communication device according to one aspect of the present disclosure includes a memory for storing data, a processor capable of reading data stored in the memory, a first hardware function unit providing a function related to communication of a main signal, a second hardware function unit providing a function linked to the processor, a storage processing unit that stores handover data including a start-up code for starting a second operating system, which is an operating system after an update, a second code, which is an executable code of the second operating system, and first control information used for controlling the second hardware function unit by a first operating system, which is an operating system before an update, in an area different from the storage area in the memory for the first code, which is the executable code of the first operating system, without initializing the processor and the first hardware function unit, a switching processing unit that causes the processor to stop the first operating system and start the second operating system by executing the start-up code and the second code, and a control information acquisition processing unit that causes the processor to acquire the first control information from the handover data when the second operating system is started.

本開示の他の態様に係る通信装置は、ソフトウェアを実行可能なプロセッサと、主信号の通信に関する機能を提供する第1ハードウェア機能部と、前記主信号の通信に関する機能とは異なる機能を提供する第3ハードウェア機能部と、前記プロセッサ、前記第1ハードウェア機能部、及び前記第3ハードウェア機能部に再起動の指令信号を出力することが可能な制御回路と、前記プロセッサによって実行されるソフトウェアが更新される場合に、再起動の対象を設定する再起動対象設定部と、を備え、前記再起動対象設定部によって、前記プロセッサ及び前記第3ハードウェア機能部が再起動の対象に設定され、前記第1ハードウェア機能部が再起動の対象に設定されない場合、前記制御回路は、前記プロセッサ及び前記第3ハードウェア機能部に再起動の指令信号を出力し、前記第1ハードウェア機能部に再起動の指令信号を出力しない。 A communication device according to another aspect of the present disclosure includes a processor capable of executing software, a first hardware function unit providing a function related to communication of a main signal, a third hardware function unit providing a function different from the function related to communication of the main signal, a control circuit capable of outputting a restart command signal to the processor, the first hardware function unit, and the third hardware function unit, and a restart target setting unit that sets a target for restart when software executed by the processor is updated, and when the processor and the third hardware function unit are set as targets for restart by the restart target setting unit and the first hardware function unit is not set as a target for restart, the control circuit outputs a restart command signal to the processor and the third hardware function unit and does not output a restart command signal to the first hardware function unit.

本開示の一態様に係るソフトウェア更新方法は、通信装置におけるソフトウェアを更新するソフトウェア更新方法であって、プロセッサ、及び、主信号の通信に関する機能を提供する第1ハードウェア機能部のそれぞれを初期化することなく、更新後のオペレーティングシステムである第2オペレーティングシステムを起動するための起動コード、前記第2オペレーティングシステムの実行可能コードである第2コード、及び、更新前のオペレーティングシステムである第1オペレーティングシステムによる前記第2ハードウェア機能部の制御に用いられる第1制御情報を含む引継データを、前記第1オペレーティングシステムの実行可能コードである第1コードのメモリ内における格納領域とは異なる領域に格納するステップと、前記プロセッサに、前記第1オペレーティングシステムを停止させ、前記起動コード及び前記第2コードを実行させことにより前記第2オペレーティングシステムを起動させるステップと、前記第2オペレーティングシステムが起動される場合に、前記プロセッサに、前記第1制御情報を前記引継データから取得させるステップと、を含む。 A software update method according to one aspect of the present disclosure is a software update method for updating software in a communication device, and includes the steps of: storing handover data including a start-up code for starting a second operating system, which is an operating system after the update, a second code, which is an executable code of the second operating system, and first control information used for controlling the second hardware function unit by the first operating system, which is an operating system before the update, in an area different from the storage area in memory of the first code, which is the executable code of the first operating system, without initializing the processor and each of the first hardware function unit providing a function related to communication of a main signal; causing the processor to stop the first operating system and execute the start-up code and the second code to start the second operating system; and causing the processor to obtain the first control information from the handover data when the second operating system is started.

本開示の他の態様に係るソフトウェア更新方法は、通信装置におけるソフトウェアを更新するソフトウェア更新方法であって、プロセッサによって実行されるソフトウェアが更新される場合に、プロセッサ、主信号の通信に関する機能を提供する第1ハードウェア機能部、及び前記主信号の通信に関する機能とは異なる機能を提供する第3ハードウェア機能部の中から、再起動の対象を設定するステップと、前記プロセッサ及び前記第3ハードウェア機能部が再起動の対象に設定され、前記第1ハードウェア機能部が再起動の対象に設定されない場合、前記第1ハードウェア機能部に再起動の指令信号を出力せず、前記プロセッサ及び前記第3ハードウェア機能部に再起動の指令信号を出力するステップと、を含む。 A software update method according to another aspect of the present disclosure is a software update method for updating software in a communication device, and includes the steps of: when software executed by a processor is updated, setting a restart target from among the processor, a first hardware function unit that provides a function related to communication of a main signal, and a third hardware function unit that provides a function different from the function related to communication of the main signal; and when the processor and the third hardware function unit are set as the restart targets and the first hardware function unit is not set as the restart target, not outputting a restart command signal to the first hardware function unit, and outputting a restart command signal to the processor and the third hardware function unit.

本開示の一態様に係るコンピュータプログラムは、通信装置におけるソフトウェアを更新するためのコンピュータプログラムであって、前記通信装置に、プロセッサ、及び、主信号の通信に関する機能を提供する第1ハードウェア機能部のそれぞれを初期化することなく、更新後のオペレーティングシステムである第2オペレーティングシステムを起動するための起動コード、前記第2オペレーティングシステムの実行可能コードである第2コード、及び、更新前のオペレーティングシステムである第1オペレーティングシステムによる前記第2ハードウェア機能部の制御に用いられる第1制御情報を含む引継データを、前記第1オペレーティングシステムの実行可能コードである第1コードのメモリ内における格納領域とは異なる領域に格納するステップと、前記プロセッサに、前記第1オペレーティングシステムを停止させ、前記起動コード及び前記第2コードを実行させことにより前記第2オペレーティングシステムを起動させるステップと、前記第2オペレーティングシステムが起動される場合に、前記プロセッサに、前記第1制御情報を前記引継データから取得させるステップと、を実行させる。 A computer program according to one aspect of the present disclosure is a computer program for updating software in a communication device, and causes the communication device to execute the steps of: storing, in an area in memory different from the storage area of the first code, which is the executable code of the first operating system, handover data including a start-up code for starting a second operating system, which is an operating system after the update, a second code, which is executable code of the second operating system, and first control information used for controlling the second hardware function unit by the first operating system, which is an operating system before the update, without initializing the processor and each of the first hardware function unit that provides functions related to communication of main signals; causing the processor to stop the first operating system and start the second operating system by executing the start-up code and the second code; and causing the processor to obtain the first control information from the handover data when the second operating system is started.

本開示の他の態様に係るコンピュータプログラムは、通信装置におけるソフトウェアを更新するためのコンピュータプログラムであって、前記通信装置に、プロセッサによって実行されるソフトウェアが更新される場合に、プロセッサ、主信号の通信に関する機能を提供する第1ハードウェア機能部、及び前記主信号の通信に関する機能とは異なる機能を提供する第3ハードウェア機能部の中から、再起動の対象を設定するステップと、前記プロセッサ及び前記第3ハードウェア機能部が再起動の対象に設定され、前記第1ハードウェア機能部が再起動の対象に設定されない場合、前記第1ハードウェア機能部に再起動の指令信号を出力せず、前記プロセッサ及び前記第3ハードウェア機能部に再起動の指令信号を出力するステップと、を実行させる。 A computer program according to another aspect of the present disclosure is a computer program for updating software in a communication device, and causes the communication device to execute the steps of: when software executed by a processor is updated, setting a restart target from among the processor, a first hardware function unit that provides a function related to communication of a main signal, and a third hardware function unit that provides a function different from the function related to communication of the main signal; and, when the processor and the third hardware function unit are set as the restart targets and the first hardware function unit is not set as the restart target, not outputting a restart command signal to the first hardware function unit and outputting a restart command signal to the processor and the third hardware function unit.

本開示は、上記のような特徴的な構成を備える通信装置として実現することができるだけでなく、通信装置における特徴的な処理をステップとするソフトウェア更新方法として実現したり、かかるステップをコンピュータに実行させるためのコンピュータプログラムとして実現したりすることができる。さらに、通信装置の一部又は全部を半導体集積回路として実現したり、通信装置を含む中継システムとして実現したりすることができる。 The present disclosure can be realized not only as a communication device having the above-mentioned characteristic configuration, but also as a software update method having steps corresponding to characteristic processes in the communication device, or as a computer program for causing a computer to execute such steps. Furthermore, part or all of the communication device can be realized as a semiconductor integrated circuit, or as a relay system including the communication device.

本開示によれば、主信号の通信機能を維持したまま、オペレーティングシステムを更新することができる。 According to the present disclosure, it is possible to update the operating system while maintaining the communication function of the main signal.

実施形態に係る通信システムの構成の一例を示す模式図である。FIG. 1 is a schematic diagram illustrating an example of a configuration of a communication system according to an embodiment. 実施形態に係る通信装置の構成の一例を示すブロック図である。1 is a block diagram showing an example of a configuration of a communication device according to an embodiment. 実施形態に係る通信装置の機能の一例を示すブロック図である。FIG. 2 is a block diagram showing an example of functions of a communication device according to an embodiment. 従来方式、ライブブート方式、及び再起動対象選択方式のそれぞれにおける更新対象のソフトウェアの組み合わせを説明するための図である。1 is a diagram for explaining combinations of software to be updated in each of a conventional method, a live boot method, and a reboot target selection method. FIG. 通常ブートにおいて揮発性メモリにロードされるデータを説明する図である。FIG. 13 is a diagram illustrating data loaded into a volatile memory during a normal boot. ライブブートにおいて揮発性メモリにロードされるデータを説明する図である。FIG. 2 is a diagram illustrating data loaded into a volatile memory during a live boot. 引継データの一例を示す図である。FIG. 11 is a diagram illustrating an example of handover data. 引継データへの第2制御情報の追加の一例を説明するための図である。11 is a diagram for explaining an example of adding second control information to handover data. FIG. 通常ブートにおける再起動対象の一例を示す図である。FIG. 13 is a diagram illustrating an example of a restart target in a normal boot. 再起動対象選択方式における再起動対象の一例を示す図である。FIG. 13 is a diagram illustrating an example of a restart target in the restart target selection method. 設定情報及び状態情報の退避を説明する図である。FIG. 13 is a diagram illustrating the saving of setting information and state information. 内部テーブルの復旧を説明する図である。FIG. 13 is a diagram illustrating the recovery of an internal table. 実施形態に係る通信装置のソフトウェア更新動作の一例を示すフローチャートである。10 is a flowchart illustrating an example of a software update operation of the communication device according to the embodiment. 再起動対象選択更新処理の一例を示すフローチャートである。13 is a flowchart illustrating an example of a restart target selection update process. ライブブート更新処理の一例を示すフローチャートである。13 is a flowchart illustrating an example of a live boot update process.

<本開示の実施形態の概要>
以下、本開示の実施形態の概要を列記して説明する。
Overview of the embodiments of the present disclosure
Below, an overview of the embodiments of the present disclosure will be listed and described.

(1) 本実施形態に係る通信装置は、データを格納するメモリと、前記メモリに格納されたデータを読み出し可能なプロセッサと、主信号の通信に関する機能を提供する第1ハードウェア機能部と、前記プロセッサと連携した機能を提供する第2ハードウェア機能部と、前記プロセッサ及び前記第1ハードウェア機能部のそれぞれを初期化することなく、更新後のオペレーティングシステムである第2オペレーティングシステムを起動するための起動コード、前記第2オペレーティングシステムの実行可能コードである第2コード、及び、更新前のオペレーティングシステムである第1オペレーティングシステムによる前記第2ハードウェア機能部の制御に用いられる第1制御情報を含む引継データを、前記第1オペレーティングシステムの実行可能コードである第1コードの前記メモリ内における格納領域とは異なる領域に格納する格納処理部と、前記プロセッサに、前記第1オペレーティングシステムを停止させ、前記起動コード及び前記第2コードを実行させことにより前記第2オペレーティングシステムを起動させる切替処理部と、前記第2オペレーティングシステムが起動される場合に、前記プロセッサに、前記第1制御情報を前記引継データから取得させる制御情報取得処理部と、を備える。これにより、実行中の第1オペレーティングシステム上で第2オペレーティングシステムをライブブートすることができる。第2オペレーティングシステムのライブブートにおいて、第1ハードウェア機能部が初期化されないため、主信号の通信機能を維持したまま、オペレーティングシステムを更新することができる。プロセッサ及びハードウェア機能部が1つの集積回路に実装されたSoC(System on a Chip)の場合、ブートストラップを経ずにオペレーティングシステムを起動するライブブートでは、ブートストラップにおいてプロセッサによって取得されるハードウェア機能部の制御情報が取得されない。上記開示により、第2オペレーティングシステムの起動時にプロセッサが第1制御情報を取得することができるため、SoCにおいてもライブブートが可能となる。なお、「ライブブート」とは、実行中のオペレーティングシステム上で、新たなオペレーティングシステムの実行可能コードをメモリにロードすることをいう。 (1) The communication device according to the present embodiment includes a memory for storing data, a processor capable of reading data stored in the memory, a first hardware function unit providing a function related to communication of a main signal, a second hardware function unit providing a function linked to the processor, a storage processing unit for storing a start code for starting a second operating system, which is an operating system after an update, a second code, which is an executable code of the second operating system, and handover data including first control information used for controlling the second hardware function unit by the first operating system, which is an operating system before an update, in an area different from the storage area in the memory for the first code, which is the executable code of the first operating system, without initializing each of the processor and the first hardware function unit, a switching processing unit for causing the processor to stop the first operating system and execute the start code and the second code to start the second operating system, and a control information acquisition processing unit for causing the processor to acquire the first control information from the handover data when the second operating system is started. This allows the second operating system to be live-booted on the running first operating system. In the live boot of the second operating system, the first hardware function unit is not initialized, so that the operating system can be updated while maintaining the communication function of the main signal. In the case of a SoC (System on a Chip) in which a processor and hardware functional units are implemented on a single integrated circuit, in a live boot in which an operating system is started without going through bootstrap, the control information of the hardware functional units that is acquired by the processor in bootstrap is not acquired. The above disclosure allows the processor to acquire the first control information when the second operating system is started, so that a live boot is also possible in an SoC. Note that "live boot" refers to loading executable code of a new operating system into memory on a running operating system.

(2) 前記切替処理部は、前記第2オペレーティングシステムの起動時に、前記プロセッサの初期化を伴わずに前記第2オペレーティングシステムが起動されることを示す通知情報を前記プロセッサに与え、前記制御情報取得処理部は、前記プロセッサに前記通知情報が与えられた場合に、前記プロセッサに、前記第1制御情報を前記引継データから取得させてもよい。これにより、オペレーティングシステムの起動時に、ブートストラップを経た通常の起動であるのかライブブートであるのかを、プロセッサに通知情報が与えられたか否かによって制御情報取得処理部が判断することができる。ライブブートの場合、第2オペレーティングシステムの起動時にプロセッサが第1制御情報を取得することができる。 (2) The switching processing unit may provide notification information to the processor indicating that the second operating system will be started without initializing the processor when the second operating system is started, and the control information acquisition processing unit may cause the processor to acquire the first control information from the handover data when the notification information is provided to the processor. This allows the control information acquisition processing unit to determine whether the operating system is started as a normal start via bootstrap or a live boot, depending on whether notification information is provided to the processor. In the case of a live boot, the processor can acquire the first control information when the second operating system is started.

(3) 前記メモリ、前記プロセッサ、及び前記第2ハードウェア機能部は、1つの集積回路に含まれてもよい。これにより、SoCにより通信装置を構成することができる。 (3) The memory, the processor, and the second hardware function unit may be included in a single integrated circuit. This allows a communication device to be configured using a SoC.

(4) 前記通信装置は、前記第1オペレーティングシステムの起動時に前記プロセッサによって取得された前記第1制御情報に基づいて前記引継データを生成し、生成された前記引継データを記憶装置に格納する引継データ生成部をさらに備え、前記格納処理部は、前記記憶装置に格納された前記引継データを前記メモリに格納してもよい。これにより、引継データを第2オペレーティングシステムの起動時にメモリにロードすることができる。 (4) The communication device may further include a handover data generation unit that generates the handover data based on the first control information acquired by the processor when the first operating system is started and stores the generated handover data in a storage device, and the storage processing unit may store the handover data stored in the storage device in the memory. This allows the handover data to be loaded into the memory when the second operating system is started.

(5) 前記制御情報取得処理部は、前記第2オペレーティングシステムの起動時に、前記第2オペレーティングシステムによる前記第2ハードウェア機能部の制御に用いられる第2制御情報が前記プロセッサによって取得された場合に、前記第2制御情報を前記引継データに追加してもよい。これにより、第1オペレーティングシステムでは必要なかったが第2オペレーティングシステムで必要となった第2制御情報を、次回のライブブートのために引継データに追加することができる。 (5) When second control information used for controlling the second hardware function unit by the second operating system is acquired by the processor at the time of booting the second operating system, the control information acquisition processing unit may add the second control information to the handover data. This makes it possible to add second control information that was not required by the first operating system but is required by the second operating system to the handover data for the next live boot.

(6) 本実施形態に係る通信装置は、ソフトウェアを実行可能なプロセッサと、主信号の通信に関する機能を提供する第1ハードウェア機能部と、前記主信号の通信に関する機能とは異なる機能を提供する第3ハードウェア機能部と、前記プロセッサ、前記第1ハードウェア機能部、及び前記第3ハードウェア機能部に再起動の指令信号を出力することが可能な制御回路と、前記プロセッサによって実行されるソフトウェアが更新される場合に、再起動の対象を設定する再起動対象設定部と、を備え、前記再起動対象設定部によって、前記プロセッサ及び前記第3ハードウェア機能部が再起動の対象に設定され、前記第1ハードウェア機能部が再起動の対象に設定されない場合、前記制御回路は、前記プロセッサ及び前記第3ハードウェア機能部に再起動の指令信号を出力し、前記第1ハードウェア機能部に再起動の指令信号を出力しない。これにより、第1ハードウェア機能部が再起動の対象から除外され、プロセッサが再起動の対象に含まれるため、主信号の通信機能を維持したまま、オペレーティングシステムを含むソフトウェアの更新を行うことができる。 (6) The communication device according to this embodiment includes a processor capable of executing software, a first hardware function unit providing a function related to communication of a main signal, a third hardware function unit providing a function different from the function related to communication of the main signal, a control circuit capable of outputting a restart command signal to the processor, the first hardware function unit, and the third hardware function unit, and a restart target setting unit that sets a target for restart when software executed by the processor is updated. When the processor and the third hardware function unit are set as targets for restart by the restart target setting unit and the first hardware function unit is not set as a target for restart, the control circuit outputs a restart command signal to the processor and the third hardware function unit and does not output a restart command signal to the first hardware function unit. As a result, the first hardware function unit is excluded from targets for restart and the processor is included as a target for restart, so that software including the operating system can be updated while maintaining the communication function of the main signal.

(7) 前記制御回路は、前記再起動の指令信号を出力した場合、前記制御回路を再起動してもよい。これにより、制御回路を再起動の対象に含めることができる。 (7) When the control circuit outputs the restart command signal, the control circuit may restart the control circuit. This allows the control circuit to be included in the target of restart.

(8) 更新される前記ソフトウェアは、オペレーティングシステムを含んてもよい。これにより、主信号の通信機能を維持したまま、オペレーティングシステムを更新することができる。 (8) The software to be updated may include an operating system. This allows the operating system to be updated while maintaining the communication function of the main signal.

(9) 更新される前記ソフトウェアは、ブートローダを含んでもよい。これにより、主信号の通信機能を維持したまま、プロセッサの再起動が必要なブートローダを更新することができる。 (9) The software to be updated may include a boot loader. This makes it possible to update the boot loader, which requires a processor restart, while maintaining the communication function of the main signal.

(10) 前記第1ハードウェア機能部は、前記主信号を送受信する送受信器、前記主信号を処理するための信号処理回路、並びに、前記送受信器及び前記信号処理回路にクロック信号を供給するクロック発生器を含んでもよい。これにより、送受信器、信号処理回路、及びクロック発生器を初期化することなく、オペレーティングシステムを含むソフトウェアを更新することができる。 (10) The first hardware function unit may include a transceiver that transmits and receives the main signal, a signal processing circuit that processes the main signal, and a clock generator that supplies a clock signal to the transceiver and the signal processing circuit. This makes it possible to update software, including an operating system, without initializing the transceiver, the signal processing circuit, and the clock generator.

(11) 前記通信装置は、前記プロセッサで実行される、前記第1ハードウェア機能部を制御するためのソフトウェアを更新する前に、前記ソフトウェアの内部情報に含まれる前記第1ハードウェア機能部の設定情報を、記憶装置に格納する情報退避部と、前記ソフトウェアの更新後に、前記記憶装置に格納された前記設定情報を、更新後の前記ソフトウェアの内部情報として復旧する復旧部と、をさらに備えてもよい。これにより、ソフトウェアの更新の際に内部情報から失われる第1ハードウェア機能部の設定情報を、ソフトウェア更新後に復旧することができる。 (11) The communication device may further include an information evacuation unit that stores, in a storage device, setting information of the first hardware function unit included in internal information of the software before updating the software for controlling the first hardware function unit executed by the processor, and a recovery unit that recovers, after updating the software, the setting information stored in the storage device as internal information of the updated software. This makes it possible to recover, after updating the software, the setting information of the first hardware function unit that is lost from the internal information when updating the software.

(12) 前記情報退避部は、前記内部情報に含まれる前記第1ハードウェア機能部の状態情報を、前記記憶装置に格納し、前記通信装置は、現在の前記第1ハードウェア機能部の状態を示す状態情報と、前記記憶装置に格納された前記状態情報とに差異がある場合、ユーザに通知する通知部をさらに備えてもよい。これにより、ソフトウェアの更新の際に第1ハードウェア機能部の状態が変化した場合、当該変化があったことをソフトウェアの更新後にユーザに通知することができる。 (12) The information saving unit may store the state information of the first hardware function unit included in the internal information in the storage device, and the communication device may further include a notification unit that notifies a user when there is a difference between the state information indicating the current state of the first hardware function unit and the state information stored in the storage device. In this way, when the state of the first hardware function unit changes during a software update, the user can be notified of the change after the software update.

(13) 本実施形態に係るソフトウェア更新方法は、通信装置におけるソフトウェアを更新するソフトウェア更新方法であって、プロセッサ、及び、主信号の通信に関する機能を提供する第1ハードウェア機能部のそれぞれを初期化することなく、更新後のオペレーティングシステムである第2オペレーティングシステムを起動するための起動コード、前記第2オペレーティングシステムの実行可能コードである第2コード、及び、更新前のオペレーティングシステムである第1オペレーティングシステムによる前記第2ハードウェア機能部の制御に用いられる第1制御情報を含む引継データを、前記第1オペレーティングシステムの実行可能コードである第1コードのメモリ内における格納領域とは異なる領域に格納するステップと、前記プロセッサに、前記第1オペレーティングシステムを停止させ、前記起動コード及び前記第2コードを実行させことにより前記第2オペレーティングシステムを起動させるステップと、前記第2オペレーティングシステムが起動される場合に、前記プロセッサに、前記第1制御情報を前記引継データから取得させるステップと、を含む。これにより、第2オペレーティングシステムのライブブートにおいて、第1ハードウェア機能部が初期化されないため、主信号の通信機能を維持したまま、オペレーティングシステムを更新することができる。さらに、第2オペレーティングシステムの起動時に第1制御情報を取得することができるため、SoCにおいてもライブブートが可能となる。 (13) The software update method according to the present embodiment is a software update method for updating software in a communication device, and includes the steps of: storing a startup code for starting a second operating system, which is an operating system after the update, a second code, which is an executable code of the second operating system, and handover data, which includes first control information used for controlling the second hardware function unit by the first operating system, which is an operating system before the update, in an area different from the storage area in the memory of the first code, which is the executable code of the first operating system, without initializing each of the processor and the first hardware function unit that provides a function related to communication of a main signal; causing the processor to stop the first operating system and execute the startup code and the second code to start the second operating system; and causing the processor to obtain the first control information from the handover data when the second operating system is started. As a result, the first hardware function unit is not initialized in a live boot of the second operating system, so that the operating system can be updated while maintaining the communication function of the main signal. Furthermore, since the first control information can be obtained when the second operating system is started, a live boot is also possible in a SoC.

(14) 本実施形態に係るソフトウェア更新方法は、通信装置におけるソフトウェアを更新するソフトウェア更新方法であって、プロセッサによって実行されるソフトウェアが更新される場合に、プロセッサ、主信号の通信に関する機能を提供する第1ハードウェア機能部、及び前記主信号の通信に関する機能とは異なる機能を提供する第3ハードウェア機能部の中から、再起動の対象を設定するステップと、前記プロセッサ及び前記第3ハードウェア機能部が再起動の対象に設定され、前記第1ハードウェア機能部が再起動の対象に設定されない場合、前記第1ハードウェア機能部に再起動の指令信号を出力せず、前記プロセッサ及び前記第3ハードウェア機能部に再起動の指令信号を出力するステップと、を含む。これにより、第1ハードウェア機能部が再起動の対象から除外され、プロセッサが再起動の対象に含まれるため、主信号の通信機能を維持したまま、オペレーティングシステムを含むソフトウェアの更新を行うことができる。 (14) The software update method according to this embodiment is a software update method for updating software in a communication device, and includes the steps of: when software executed by a processor is updated, setting a restart target from among the processor, a first hardware function unit providing a function related to communication of a main signal, and a third hardware function unit providing a function different from the function related to communication of the main signal; and when the processor and the third hardware function unit are set as the restart targets and the first hardware function unit is not set as the restart target, not outputting a restart command signal to the first hardware function unit and outputting a restart command signal to the processor and the third hardware function unit. As a result, the first hardware function unit is excluded from the restart targets and the processor is included as the restart target, so that software including the operating system can be updated while maintaining the communication function of the main signal.

(15) 本実施形態に係るコンピュータプログラムは、通信装置におけるソフトウェアを更新するためのコンピュータプログラムであって、前記通信装置に、プロセッサ、及び、主信号の通信に関する機能を提供する第1ハードウェア機能部のそれぞれを初期化することなく、更新後のオペレーティングシステムである第2オペレーティングシステムを起動するための起動コード、前記第2オペレーティングシステムの実行可能コードである第2コード、及び、更新前のオペレーティングシステムである第1オペレーティングシステムによる前記第2ハードウェア機能部の制御に用いられる第1制御情報を含む引継データを、前記第1オペレーティングシステムの実行可能コードである第1コードのメモリ内における格納領域とは異なる領域に格納するステップと、前記プロセッサに、前記第1オペレーティングシステムを停止させ、前記起動コード及び前記第2コードを実行させことにより前記第2オペレーティングシステムを起動させるステップと、前記第2オペレーティングシステムが起動される場合に、前記プロセッサに、前記第1制御情報を前記引継データから取得させるステップと、を実行させる。これにより、第2オペレーティングシステムのライブブートにおいて、第1ハードウェア機能部が初期化されないため、主信号の通信機能を維持したまま、オペレーティングシステムを更新することができる。さらに、第2オペレーティングシステムの起動時に第1制御情報を取得することができるため、SoCにおいてもライブブートが可能となる。 (15) A computer program according to this embodiment is a computer program for updating software in a communication device, and causes the communication device to execute the steps of: storing, in an area in a memory different from the storage area of the first code, which is the executable code of the first operating system, a start code for starting a second operating system, which is an operating system after the update, a second code, which is an executable code of the second operating system, and handover data, which includes first control information used for controlling the second hardware function unit by the first operating system, which is an operating system before the update, without initializing each of the processor and the first hardware function unit that provides a function related to communication of a main signal; causing the processor to stop the first operating system and start the second operating system by executing the start code and the second code; and causing the processor to obtain the first control information from the handover data when the second operating system is started. As a result, in a live boot of the second operating system, the first hardware function unit is not initialized, so that the operating system can be updated while maintaining the communication function of a main signal. Furthermore, since the first control information can be obtained when the second operating system is started, a live boot is also possible in a SoC.

(16) 本実施形態に係るコンピュータプログラムは、通信装置におけるソフトウェアを更新するためのコンピュータプログラムであって、前記通信装置に、プロセッサによって実行されるソフトウェアが更新される場合に、プロセッサ、主信号の通信に関する機能を提供する第1ハードウェア機能部、及び前記主信号の通信に関する機能とは異なる機能を提供する第3ハードウェア機能部の中から、再起動の対象を設定するステップと、前記プロセッサ及び前記第3ハードウェア機能部が再起動の対象に設定され、前記第1ハードウェア機能部が再起動の対象に設定されない場合、前記第1ハードウェア機能部に再起動の指令信号を出力せず、前記プロセッサ及び前記第3ハードウェア機能部に再起動の指令信号を出力するステップと、を実行させる。これにより、第1ハードウェア機能部が再起動の対象から除外され、プロセッサが再起動の対象に含まれるため、主信号の通信機能を維持したまま、オペレーティングシステムを含むソフトウェアの更新を行うことができる。 (16) A computer program according to this embodiment is a computer program for updating software in a communication device, and causes the communication device to execute the steps of: when software executed by a processor is updated, setting a restart target from among the processor, a first hardware function unit providing a function related to communication of a main signal, and a third hardware function unit providing a function different from the function related to communication of the main signal; and, when the processor and the third hardware function unit are set as the restart targets and the first hardware function unit is not set as the restart target, not outputting a restart command signal to the first hardware function unit and outputting a restart command signal to the processor and the third hardware function unit. As a result, the first hardware function unit is excluded from the restart targets and the processor is included as the restart target, so that software including the operating system can be updated while maintaining the communication function of the main signal.

<本開示の実施形態の詳細>
以下、図面を参照しつつ、本開示の実施形態の詳細を説明する。なお、以下に記載する実施形態の少なくとも一部を任意に組み合わせてもよい。
<Details of the embodiment of the present disclosure>
Hereinafter, the details of the embodiments of the present disclosure will be described with reference to the drawings. Note that at least some of the embodiments described below may be combined in any combination.

[1.中継システムの構成]
図1は、実施形態に係る通信システム10の構成の一例を示す模式図である。図1に示される通信システム10は、モバイル通信ネットワークに含まれるモバイルフロントホール(MFH)である。通信システム10は、親局20と、子局30とを備える。親局20は、4G(第4世代移動通信システム)の場合、ベースバンド装置(BBU)であり、5G(第5世代移動通信システム)の場合、CU(Centralized Unit)及びDU(Distributed Unit)の機能を有する装置である。子局30は、4Gの場合、遠隔無線ヘッド(RRH)であり、5G(第5世代移動通信システム)の場合、RU(Radio Unit)である。
[1. Relay system configuration]
FIG. 1 is a schematic diagram showing an example of a configuration of a communication system 10 according to an embodiment. The communication system 10 shown in FIG. 1 is a mobile fronthaul (MFH) included in a mobile communication network. The communication system 10 includes a master station 20 and a slave station 30. The master station 20 is a baseband unit (BBU) in the case of 4G (fourth generation mobile communication system), and is a device having the functions of a centralized unit (CU) and a distributed unit (DU) in the case of 5G (fifth generation mobile communication system). The slave station 30 is a remote radio head (RRH) in the case of 4G, and is a radio unit (RU) in the case of 5G (fifth generation mobile communication system).

通信システム10は、親局20と子局30との間に中継システム100を含む。中継システム100は、親局20と子局30との間の通信を中継する。なお、本実施形態ではMFHに適用される中継システム100が説明されるが、これに限定されない。モバイルミッドホール(MMH)又はモバイルバックホール(MBH)に中継システム100を適用してもよい。 The communication system 10 includes a relay system 100 between the master station 20 and the slave station 30. The relay system 100 relays communication between the master station 20 and the slave station 30. Note that in this embodiment, the relay system 100 applied to the MFH is described, but is not limited thereto. The relay system 100 may also be applied to a mobile midhaul (MMH) or a mobile backhaul (MBH).

中継システム100は、互いに対抗する2つの通信装置200を含む。通信装置200は、ITU-T(International Telecommunication Union Telecommunication Standardization Sector) によって規定される通信規格であるOTN(Optical Transport Network)に準拠した光伝送装置である。一方の通信装置200は、親局20に光ファイバケーブルによって接続される。他方の通信装置200は、子局30に光ファイバケーブルによって接続される。2つの通信装置200は、1本の光ファイバケーブル25を介して互いに接続される。 The relay system 100 includes two opposing communication devices 200. The communication devices 200 are optical transmission devices that comply with OTN (Optical Transport Network), a communication standard defined by the International Telecommunication Union Telecommunication Standardization Sector (ITU-T). One of the communication devices 200 is connected to a master station 20 via an optical fiber cable. The other communication device 200 is connected to a slave station 30 via an optical fiber cable. The two communication devices 200 are connected to each other via a single optical fiber cable 25.

2つの通信装置200は、互いに遠隔した拠点に配置される。光ファイバケーブル25は、例えば20km以上の長さを有する。光ファイバケーブル25には、例えばダークファイバが利用される。 The two communication devices 200 are located at remote locations. The optical fiber cable 25 has a length of, for example, 20 km or more. The optical fiber cable 25 is, for example, a dark fiber.

[2.通信装置のハードウェア構成]
図2は、実施形態に係る通信装置の構成の一例を示すブロック図である。
2. Hardware configuration of communication device
FIG. 2 is a block diagram illustrating an example of a configuration of a communication device according to the embodiment.

通信装置200は、処理回路210と、制御回路220と、光トランシーバ231,233と、信号処理回路232と、PLL(Phase Locked Loop)234と、第2制御回路241と、L2スイッチ(レイヤ2スイッチ。「L2SW」とも表記する。)242と、PHY243と、トランシーバ244とを含む。 The communication device 200 includes a processing circuit 210, a control circuit 220, optical transceivers 231 and 233, a signal processing circuit 232, a PLL (Phase Locked Loop) 234, a second control circuit 241, an L2 switch (Layer 2 switch, also written as "L2SW") 242, a PHY 243, and a transceiver 244.

処理回路210は、通信装置200の全体を制御する。処理回路210は、プロセッサ211と、不揮発性メモリ212と、揮発性メモリ213と、通信インタフェース(I/F)214と、内部通信管理部215Aと、キュー管理部215Bと、バッファ管理部215Cと、フレーム管理部215Dとを含む。処理回路210はSoCであり、プロセッサ211、不揮発性メモリ212、揮発性メモリ213、通信I/F214、内部通信管理部215A、キュー管理部215B、バッファ管理部215C、及びフレーム管理部215Dは、1つの集積回路に実装されている。 The processing circuit 210 controls the entire communication device 200. The processing circuit 210 includes a processor 211, a non-volatile memory 212, a volatile memory 213, a communication interface (I/F) 214, an internal communication management unit 215A, a queue management unit 215B, a buffer management unit 215C, and a frame management unit 215D. The processing circuit 210 is an SoC, and the processor 211, the non-volatile memory 212, the volatile memory 213, the communication I/F 214, the internal communication management unit 215A, the queue management unit 215B, the buffer management unit 215C, and the frame management unit 215D are implemented in a single integrated circuit.

揮発性メモリ213は、DRAM(Dynamic Random Access Memory)である。揮発性メモリ213は、SRAM(Static Random Access Memory)であってもよい。不揮発性メモリ212は、データを書き込み可能であり、例えばフラッシュメモリである。不揮発性メモリ212は、ハードディスクであってもよい。不揮発性メモリ212には、オペレーティングシステム(OS)250、ブートローダ251、デバイスファイル252、起動プログラム253、及びアプリケーションソフトウェア(APP)254が格納される。なお、不揮発性メモリ212に格納されているオペレーティングシステム250、ブートローダ251、起動プログラム253、及びアプリケーションソフトウェア254は、実行形式のプログラムコードである。通信装置200は、コンピュータを備えて構成され、通信装置200の各機能は、前記コンピュータの記憶装置に記憶されたコンピュータプログラムであるオペレーティングシステム250及びアプリケションソフトウェア254がプロセッサ211によって実行されることで発揮される。 The volatile memory 213 is a dynamic random access memory (DRAM). The volatile memory 213 may be a static random access memory (SRAM). The non-volatile memory 212 is writable and may be, for example, a flash memory. The non-volatile memory 212 may be a hard disk. The non-volatile memory 212 stores an operating system (OS) 250, a boot loader 251, a device file 252, a startup program 253, and application software (APP) 254. The operating system 250, the boot loader 251, the startup program 253, and the application software 254 stored in the non-volatile memory 212 are executable program codes. The communication device 200 is configured with a computer, and each function of the communication device 200 is realized by the processor 211 executing the operating system 250 and the application software 254, which are computer programs stored in the storage device of the computer.

プロセッサ211は、例えばCPU(Central Processing Unit)である。ただし、プロセッサ211は、CPUに限られない。プロセッサ211は、GPU(Graphics Processing Unit)であってもよい。具体的な一例では、プロセッサ211は、マルチコアCPUである。プロセッサ211は、コンピュータプログラムを実行可能に構成される。 The processor 211 is, for example, a CPU (Central Processing Unit). However, the processor 211 is not limited to a CPU. The processor 211 may be a GPU (Graphics Processing Unit). In a specific example, the processor 211 is a multi-core CPU. The processor 211 is configured to be able to execute computer programs.

オペレーティングシステム250は、通信装置200のシステム全体を管理し、アプリケーションソフトウェア254に共通の利用環境を提供する。オペレーティングシステム250は、カーネルを含む。ブートローダ251は、プロセッサ211がリセットされた後に起動し、オペレーティングシステム250(の実行形式のプログラムコード)を揮発性メモリ213にロードする。デバイスファイル252は、通信装置200に実装された各デバイスを制御するためのドライバである。起動プログラム253は、オペレーティングシステムをライブブートするためのプログラムである。つまり、起動プログラム253は、オペレーティングシステム250の実行中に、ブートローダ251の代わりに新しいオペレーティングシステム(カーネル)を起動するためのプログラムである。アプリケーションソフトウェア254は、通信装置200の各種の機能を実現するためのプログラムである。 The operating system 250 manages the entire system of the communication device 200 and provides a common usage environment for the application software 254. The operating system 250 includes a kernel. The boot loader 251 starts after the processor 211 is reset and loads the operating system 250 (its executable program code) into the volatile memory 213. The device file 252 is a driver for controlling each device implemented in the communication device 200. The startup program 253 is a program for live booting the operating system. In other words, the startup program 253 is a program for starting a new operating system (kernel) instead of the boot loader 251 while the operating system 250 is running. The application software 254 is a program for implementing various functions of the communication device 200.

通信I/F214は、イーサネットインタフェースである(「イーサネット」は登録商標)。通信I/F214は、保守管理用の端末装置との通信に用いられる。 The communication I/F 214 is an Ethernet interface ("Ethernet" is a registered trademark). The communication I/F 214 is used for communication with a terminal device for maintenance management.

内部通信管理部215A、キュー管理部215B、バッファ管理部215C、及びフレーム管理部215Dのそれぞれはハードウェア回路である。内部通信管理部215Aは、SoC内の通信を管理する。キュー管理部215Bは、CPUコアとアクセラレータ(SoC内の機能ユニット)とのパケット送受信に用いられるキューを管理する。バッファ管理部215Cは、メモリ領域のバッファを管理したり、要求に応じてバッファの取得及び開放を行ったりする。フレーム管理部215Dは、イーサネットコントローラであり、各種のオフロードを行ったり、プロトコル又はアドレスによるパケットの種別判定及び仕分けを行ったりする。 The internal communication management unit 215A, queue management unit 215B, buffer management unit 215C, and frame management unit 215D are each hardware circuits. The internal communication management unit 215A manages communications within the SoC. The queue management unit 215B manages queues used for sending and receiving packets between the CPU core and the accelerator (functional unit within the SoC). The buffer management unit 215C manages buffers in the memory area, and acquires and releases buffers upon request. The frame management unit 215D is an Ethernet controller, and performs various offloading operations, and determines and sorts packet types based on protocol or address.

キュー管理部215B、バッファ管理部215C、及びフレーム管理部215Dは、プロセッサ211と連携した機能を提供する第2ハードウェア機能部の例である。 The queue management unit 215B, the buffer management unit 215C, and the frame management unit 215D are examples of a second hardware function unit that provides functions in cooperation with the processor 211.

制御回路220は、例えば、保守管理用の端末装置との通信を制御するためのハードウェア回路である。制御回路220は、例えばFPGA(Field Programmable Gate Array)によって構成されている。ただし、制御回路220の構成はこれに限られない。制御回路220は、例えば、ゲートアレイによって構成されてもよいし、ASIC(Application Specific Integrated Circuit)によって構成されてもよい。 The control circuit 220 is, for example, a hardware circuit for controlling communication with a terminal device for maintenance management. The control circuit 220 is configured, for example, by an FPGA (Field Programmable Gate Array). However, the configuration of the control circuit 220 is not limited to this. The control circuit 220 may be configured, for example, by a gate array or an ASIC (Application Specific Integrated Circuit).

制御回路220は、プロセッサ211、光トランシーバ231,233、信号処理回路232、PLL234、第2制御回路241、L2スイッチ242、PHY243、及びトランシーバ244に信号線によって接続されている。制御回路220は、再起動制御部221を含む。制御回路220は、プロセッサ211、光トランシーバ231,233、信号処理回路232、PLL234、第2制御回路241、L2スイッチ242、PHY243、及びトランシーバ244のそれぞれに、再起動を指令するためのリセット信号を送信することができる。 The control circuit 220 is connected to the processor 211, the optical transceivers 231 and 233, the signal processing circuit 232, the PLL 234, the second control circuit 241, the L2 switch 242, the PHY 243, and the transceiver 244 by signal lines. The control circuit 220 includes a restart control unit 221. The control circuit 220 can transmit a reset signal to command a restart to each of the processor 211, the optical transceivers 231 and 233, the signal processing circuit 232, the PLL 234, the second control circuit 241, the L2 switch 242, the PHY 243, and the transceiver 244.

光トランシーバ231は、光ファイバケーブルを介して親局20又は子局30に接続されるクライアントポートである。光トランシーバ231は、例えば、25Gイーサネットに対応している。光トランシーバ233は、対向装置である通信装置200に光ファイバケーブル25を介して接続される通信ポートである。光トランシーバ233は、例えば、100Gbpsの光信号を送受信することが可能である。光トランシーバ231,233は、光信号と電気信号とを相互変換する。 The optical transceiver 231 is a client port connected to the parent station 20 or the child station 30 via an optical fiber cable. The optical transceiver 231 is compatible with, for example, 25G Ethernet. The optical transceiver 233 is a communication port connected to the communication device 200, which is the opposing device, via an optical fiber cable 25. The optical transceiver 233 is capable of transmitting and receiving optical signals of, for example, 100 Gbps. The optical transceivers 231 and 233 convert between optical signals and electrical signals.

信号処理回路232は、親局20又は子局30から受信した複数のクライアント信号(主信号)に所定の処理を施すためのハードウェア回路である。具体的には、信号処理回路232は、クライアント信号を多重化し、1つの多重化信号を生成する。例えば、信号処理回路232は、送信回路及び受信回路、及びフレーム処理回路を含む(図示せず)。受信回路は光トランシーバ231から出力された電気信号に対して所定の信号処理を施す。通信装置200はマックスポンダである。フレーム処理回路は、複数のクライアント信号をOTNフレームに変換するフレーマの機能を有する。信号処理回路232は、生成されたOTNフレームの電気信号を、光トランシーバ233へ出力する。さらに、フレーム処理回路は、OTNフレームを複数のクライアント信号に変換するデフレーマの機能を有する。光トランシーバ233から出力されたOTNフレームの電気信号は、フレーム処理回路に与えられ、OTNフレームから複数のクライアント信号が復元される。送信回路は、フレーム処理回路から出力されたクライアント信号である電気信号に対して所定の信号処理を施し、光トランシーバ231へ出力する。 The signal processing circuit 232 is a hardware circuit for performing a predetermined process on multiple client signals (main signals) received from the parent station 20 or the child station 30. Specifically, the signal processing circuit 232 multiplexes the client signals to generate one multiplexed signal. For example, the signal processing circuit 232 includes a transmission circuit, a reception circuit, and a frame processing circuit (not shown). The reception circuit performs a predetermined signal processing on the electrical signal output from the optical transceiver 231. The communication device 200 is a muxponder. The frame processing circuit has a function of a framer that converts multiple client signals into an OTN frame. The signal processing circuit 232 outputs the generated electrical signal of the OTN frame to the optical transceiver 233. Furthermore, the frame processing circuit has a function of a deframer that converts the OTN frame into multiple client signals. The electrical signal of the OTN frame output from the optical transceiver 233 is given to the frame processing circuit, and multiple client signals are restored from the OTN frame. The transmission circuit performs a predetermined signal processing on the electrical signal, which is the client signal, output from the frame processing circuit, and outputs it to the optical transceiver 231.

PLL234は、クロック信号を生成し、生成されたクロック信号を光トランシーバ231,233及び信号処理回路232へ供給する。 The PLL 234 generates a clock signal and supplies the generated clock signal to the optical transceivers 231 and 233 and the signal processing circuit 232.

光トランシーバ231,233、信号処理回路232、及びPLL234は、主信号の通信に関する機能を提供する第1ハードウェア機能部の例である。 The optical transceivers 231 and 233, the signal processing circuit 232, and the PLL 234 are examples of a first hardware function unit that provides functions related to the communication of the main signal.

第2制御回路241は、例えば、制御回路220を補助するためのハードウェア回路であり、保守管理用の端末装置との通信を制御する。第2制御回路241は、例えばFPGA,ゲートアレイ等のプログラマブルロジックデバイス又はASICによって構成される。 The second control circuit 241 is, for example, a hardware circuit for supporting the control circuit 220, and controls communication with a terminal device for maintenance management. The second control circuit 241 is, for example, configured by a programmable logic device such as an FPGA or a gate array, or an ASIC.

L2スイッチ242、PHY243、及びトランシーバ244は保守管理用の端末装置との通信に用いられる。通信I/F214はL2スイッチ242のポートに接続されている。L2スイッチ242の他の1つのポートは、PHY243を介してトランシーバ244に接続されている。トランシーバ244は、RJ45コネクタを含み、イーサネットケーブルのコネクタが接続される。PHY243は、イーサネット物理トランシーバである。 The L2 switch 242, PHY 243, and transceiver 244 are used for communication with a terminal device for maintenance management. The communication I/F 214 is connected to a port of the L2 switch 242. Another port of the L2 switch 242 is connected to the transceiver 244 via the PHY 243. The transceiver 244 includes an RJ45 connector, and an Ethernet cable connector is connected to the transceiver 244. The PHY 243 is an Ethernet physical transceiver.

第2制御回路241、L2スイッチ242、PHY243、及びトランシーバ244は、主信号の通信に関する機能とは異なる機能を提供する第3ハードウェア機能部の例である。 The second control circuit 241, the L2 switch 242, the PHY 243, and the transceiver 244 are examples of a third hardware function unit that provides functions different from the functions related to the communication of main signals.

[3.通信装置の機能]
図3は、実施形態に係る通信装置の機能の一例を示すブロック図である。通信装置200は、第1格納処理部211Aと、引継データ生成部211Bと、第2格納処理部211Cと、切替処理部211Dと、制御情報取得処理部211Eと、再起動対象設定部211Fと、情報退避部211Gと、復旧部211Hと、通知部211Iの各機能を有する。
3. Functions of communication devices
3 is a block diagram showing an example of the functions of the communication device according to the embodiment. The communication device 200 has the functions of a first storage processing unit 211A, a handover data generating unit 211B, a second storage processing unit 211C, a switching processing unit 211D, a control information acquisition processing unit 211E, a restart target setting unit 211F, an information saving unit 211G, a recovery unit 211H, and a notification unit 211I.

本実施形態に係る通信装置200は、オペレーティングシステムを実行したままアプリケーション又は制御回路220のファームウェアを更新する処理(以下、「従来方式」ともいう)と、ライブブートによりソフトウェアを更新する処理(以下、「ライブブート方式」ともいう)と、再起動対象を選択してソフトウェアを更新する処理(以下、「再起動対象選択方式」ともいう)を選択して実行することができる。従来方式は、例えば、特開2014-78784号公報に開示されたソフトウェア更新方法である。従来方式、ライブブート方式、及び再起動対象選択方式のいずれも、主信号の通信を維持したままソフトウェア更新を行うことができる。 The communication device 200 according to this embodiment can select and execute a process of updating the firmware of an application or the control circuit 220 while the operating system is running (hereinafter also referred to as the "conventional method"), a process of updating software by live boot (hereinafter also referred to as the "live boot method"), and a process of updating software by selecting a reboot target (hereinafter also referred to as the "reboot target selection method"). The conventional method is, for example, a software update method disclosed in Japanese Patent Application Laid-Open No. 2014-78784. The conventional method, the live boot method, and the reboot target selection method all allow software updates to be performed while maintaining main signal communication.

図4は、従来方式、ライブブート方式、及び再起動対象選択方式のそれぞれにおける更新対象のソフトウェアの組み合わせを説明するための図である。従来方式では、ブートローダ及びオペレーティングシステムの更新を行うことができない。したがって、ブートローダ及びオペレーティングシステムのいずれか1つ又は両方が更新対象に含まれる場合、従来方式は選択されない。アプリケーションソフトウェア(図4では「アプリケーション」と表記)及び制御回路220のファームウェア(以下、単に「ファームウェア」ともいう)のいずれか1つ又は両方が更新対象である場合に、従来方式が選択される。ライブブート方式では、オペレーティングシステムの更新は可能であるが、ブートローダの更新はできない。したがって、更新対象にオペレーティングシステムが含まれ、ブートローダが含まれない場合に、ライブブート方式が選択される。再起動対象選択方式では、ブートローダの更新が可能である。したがって、更新対象にブートローダが含まれる場合に、再起動対象選択方式が選択される。再起動対象選択方式では、更新対象にブートローダが含まれていれば、更新対象にオペレーティングシステムも含まれ得る。 Figure 4 is a diagram for explaining the combination of software to be updated in each of the conventional method, the live boot method, and the restart target selection method. In the conventional method, the boot loader and the operating system cannot be updated. Therefore, if either or both of the boot loader and the operating system are included in the update target, the conventional method is not selected. If either or both of the application software (written as "application" in Figure 4) and the firmware of the control circuit 220 (hereinafter also simply referred to as "firmware") are the update target, the conventional method is selected. In the live boot method, the operating system can be updated, but the boot loader cannot be updated. Therefore, if the update target includes the operating system and not the boot loader, the live boot method is selected. In the restart target selection method, the boot loader can be updated. Therefore, if the update target includes the boot loader, the restart target selection method is selected. In the restart target selection method, if the update target includes the boot loader, the update target may also include the operating system.

再び図3を参照する。第1格納処理部211Aは、プロセッサ211を再起動し、ブートストラップによってオペレーティングシステム250を起動する(以下、「通常ブート」という)。図5Aは、通常ブートにおいて揮発性メモリにロードされるデータを説明する図である。第1格納処理部211Aは、ブートローダ251を実行し、第1オペレーティングシステム250A及び第1デバイスファイル252Aを揮発性メモリ213にロード(格納)する。第1オペレーティングシステム250Aは、更新前のオペレーティングシステムである。第1デバイスファイル252Aは、第1オペレーティングシステム250Aによって用いられるデバイスファイルである。第1デバイスファイル252Aは、通信I/F214、内部通信管理部215A、キュー管理部215B、バッファ管理部215C、フレーム管理部215D、制御回路220、光トランシーバ231,233、信号処理回路232、PLL234、第2制御回路241、L2スイッチ242、PHY243、及びトランシーバ244の第1オペレーティングシステム250Aによる制御に用いられる。 Refer to FIG. 3 again. The first storage processing unit 211A restarts the processor 211 and starts the operating system 250 by bootstrap (hereinafter referred to as "normal boot"). FIG. 5A is a diagram explaining the data loaded into the volatile memory in a normal boot. The first storage processing unit 211A executes the boot loader 251 and loads (stores) the first operating system 250A and the first device file 252A into the volatile memory 213. The first operating system 250A is the operating system before the update. The first device file 252A is a device file used by the first operating system 250A. The first device file 252A is used by the first operating system 250A to control the communication I/F 214, the internal communication management unit 215A, the queue management unit 215B, the buffer management unit 215C, the frame management unit 215D, the control circuit 220, the optical transceivers 231 and 233, the signal processing circuit 232, the PLL 234, the second control circuit 241, the L2 switch 242, the PHY 243, and the transceiver 244.

通常ブートにおいて、SoCである処理回路210が再起動したとき、ブートローダの起動前に、プロセッサ211はマイクロコードをロードする等の初期化処理を実行する。初期化が完了すると、ブートストラップが実行され、オペレーティングシステムが起動する。さらにプロセッサ211は、キュー管理部215B、バッファ管理部215C、及びフレーム管理部215Dの制御情報である第1制御情報を取得する。第1制御情報は、例えばメモリのアドレス等、キュー管理部215B、バッファ管理部215C、及びフレーム管理部215Dのそれぞれの制御に使用される情報である。第1制御情報は、オペレーティングシステム250及びアプリケーションソフトウェア254によって利用される。 In a normal boot, when the processing circuit 210, which is an SoC, restarts, the processor 211 executes initialization processing such as loading microcode before starting the boot loader. When the initialization is complete, bootstrap is executed and the operating system starts up. Furthermore, the processor 211 acquires first control information, which is control information for the queue management unit 215B, the buffer management unit 215C, and the frame management unit 215D. The first control information is information, such as a memory address, used to control each of the queue management unit 215B, the buffer management unit 215C, and the frame management unit 215D. The first control information is used by the operating system 250 and the application software 254.

再び図3を参照する。引継データ生成部211Bは、取得された第1制御情報から、引継データを生成する。引継データは、ライブブートされたオペレーティングシステムに、第1制御情報を与えるためのデータである。図6Aは、引継データの一例を示す図である。不揮発性メモリ212に保存された第1制御情報には、キュー管理部215Bの制御に用いられるキュー制御情報、バッファ管理部215Cの制御に用いられるバッファ制御情報、及びフレーム管理部215Dの制御に用いられるフレーム制御情報が含まれる。引継データ生成部211Bは、第1制御情報から、キュー制御情報、バッファ制御情報、及びフレーム制御情報のそれぞれを抽出し、引継データ300を生成する。例えば、引継データ300は、TLV(type-length-value)形式のデータである。引継データ300では、キュー制御情報が、キュー制御情報に割り当てられたタイプ「1」及びキュー制御情報の長さ「X」に対応付けられている。バッファ制御情報は、バッファ制御情報に割り当てられたタイプ「2」及びバッファ制御情報の長さ「Y」に対応付けられている。フレーム制御情報は、フレーム制御情報に割り当てられたタイプ「3」及びフレーム制御情報の長さ「Z」に対応付けられている。 Refer to FIG. 3 again. The handover data generating unit 211B generates handover data from the acquired first control information. The handover data is data for providing the first control information to the live-booted operating system. FIG. 6A is a diagram showing an example of handover data. The first control information stored in the non-volatile memory 212 includes queue control information used to control the queue management unit 215B, buffer control information used to control the buffer management unit 215C, and frame control information used to control the frame management unit 215D. The handover data generating unit 211B extracts each of the queue control information, buffer control information, and frame control information from the first control information to generate handover data 300. For example, the handover data 300 is data in a TLV (type-length-value) format. In the handover data 300, the queue control information is associated with the type "1" assigned to the queue control information and the length "X" of the queue control information. The buffer control information is associated with a type "2" assigned to the buffer control information and a length "Y" of the buffer control information. The frame control information is associated with a type "3" assigned to the frame control information and a length "Z" of the frame control information.

[3.1.ライブブート方式]
再び図3を参照する。第2格納処理部211Cは、格納処理部の一例である。第2格納処理部211Cは、更新されたオペレーティングシステムをライブブートする。図5Bは、ライブブートにおいて揮発性メモリにロードされるデータを説明する図である。第2格納処理部211Cは、プロセッサ211、並びに、光トランシーバ231,233、信号処理回路232、及びPLL234(つまり、第1ハードウェア機能部)のそれぞれを初期化することなく、起動プログラム253、第2オペレーティングシステム250B、及び第2デバイスファイル252Bを揮発性メモリ213にロード(格納)する。起動プログラム253、第2オペレーティングシステム250B、及び第2デバイスファイル252Bの揮発性メモリ213における格納領域は、第1オペレーティングシステム及び第1デバイスファイル252Aの格納領域と異なる領域である。第2オペレーティングシステム250Bは、更新後のオペレーティングシステムである。第2デバイスファイル252Bは、第2オペレーティングシステム250Bによって用いられるデバイスファイルである。第2デバイスファイル252Bは、通信I/F214、内部通信管理部215A、キュー管理部215B、バッファ管理部215C、フレーム管理部215D、高速I/O管理部215E、制御回路220、光トランシーバ231,233、信号処理回路232、PLL234、第2制御回路241、L2スイッチ242、PHY243、及びトランシーバ244の第2オペレーティングシステム250Bによる制御に用いられる。
[3.1. Live Boot Method]
Referring again to FIG. 3, the second storage processing unit 211C is an example of a storage processing unit. The second storage processing unit 211C performs live boot of the updated operating system. FIG. 5B is a diagram for explaining data loaded into the volatile memory in the live boot. The second storage processing unit 211C loads (stores) the boot program 253, the second operating system 250B, and the second device file 252B into the volatile memory 213 without initializing the processor 211, the optical transceivers 231 and 233, the signal processing circuit 232, and the PLL 234 (i.e., the first hardware function unit). The storage areas in the volatile memory 213 for the boot program 253, the second operating system 250B, and the second device file 252B are different areas from the storage areas for the first operating system and the first device file 252A. The second operating system 250B is the operating system after the update. The second device file 252B is a device file used by the second operating system 250B. The second device file 252B is used for control by the second operating system 250B of the communication I/F 214, the internal communication management unit 215A, the queue management unit 215B, the buffer management unit 215C, the frame management unit 215D, the high-speed I/O management unit 215E, the control circuit 220, the optical transceivers 231, 233, the signal processing circuit 232, the PLL 234, the second control circuit 241, the L2 switch 242, the PHY 243, and the transceiver 244.

第2格納処理部211Cは、さらに、引継データ生成部211Bによって生成された引継データ300を揮発性メモリ213にロードする。 The second storage processing unit 211C further loads the handover data 300 generated by the handover data generation unit 211B into the volatile memory 213.

再び図3を参照する。切替処理部211Dは、プロセッサ211に、第1オペレーティングシステム250Aを停止させ、起動プログラム253及び第2オペレーティングシステム250Bを実行させる。つまり、切替処理部211Dは、第1オペレーティングシステム250Aから第2オペレーティングシステム250Bに実行対象を切り替える。これにより、第2オペレーティングシステム250Bが起動する。 Referring again to FIG. 3, the switching processing unit 211D causes the processor 211 to stop the first operating system 250A and execute the startup program 253 and the second operating system 250B. In other words, the switching processing unit 211D switches the execution target from the first operating system 250A to the second operating system 250B. This starts up the second operating system 250B.

切替処理部211Dは、第2オペレーティングシステム250Bの起動時に、ライブブートであることを示す通知情報をプロセッサ211に与える。通知情報の一例は、ライブブートであることを示すフラグであり、他の例はライブブートデあることを示すコマンドラインである。例えば、切替処理部211Dは、第1オペレーティングシステム250Aの停止前に、通知情報を保存する。切替処理部211Dは、第2オペレーティングシステム250Bの起動時に、保存された通知情報をプロセッサ211に与える。これにより、プロセッサ211は、今回のオペレーティングシステムの起動がライブブートであるか否かを判定することができる。 When the second operating system 250B is started, the switching processing unit 211D provides the processor 211 with notification information indicating that it is a live boot. One example of the notification information is a flag indicating that it is a live boot, and another example is a command line indicating that it is a live boot. For example, the switching processing unit 211D saves the notification information before the first operating system 250A is stopped. When the second operating system 250B is started, the switching processing unit 211D provides the saved notification information to the processor 211. This allows the processor 211 to determine whether the current startup of the operating system is a live boot or not.

制御情報取得処理部211Eは、第2オペレーティングシステム250Bが起動される場合に、揮発性メモリ213にロードされた引継データ300から、プロセッサ211に第1制御情報を取得させる。ライブブートでは、SoCである処理回路210が再起動されない。通常ブートでは、キュー管理部215B、バッファ管理部215C、及びフレーム管理部215Dの制御情報(第1制御情報)が取得されるが、SoCの再起動を伴わないライブブートでは、通常ブートで既に取得された第1制御情報が取得されない。このため、制御情報取得処理部211Eは、プロセッサ211に通知情報が与えられた場合に、プロセッサ211に引継データ300から第1制御情報を取得させることができる。通知情報がフラグである場合、プロセッサ211はフラグを参照して、今回のオペレーティングシステムの起動がライブブートであるか否かを判定する。フラグが立っていれば、プロセッサ211は引継データ300から第1制御情報を取得する。通知情報がコマンドラインである場合、ブートストラップにおいてプロセッサ211にコマンドラインが与えられる。プロセッサ211は、コマンドラインによって今回のオペレーティングシステムの起動がライブブートであるか否かを判定する。ライブブートであることを示すコマンドラインが与えられれば、プロセッサ211は引継データ300から第1制御情報を取得する。 When the second operating system 250B is started, the control information acquisition processing unit 211E causes the processor 211 to acquire the first control information from the handover data 300 loaded into the volatile memory 213. In a live boot, the processing circuit 210, which is a SoC, is not restarted. In a normal boot, the control information (first control information) of the queue management unit 215B, the buffer management unit 215C, and the frame management unit 215D is acquired, but in a live boot that does not involve restarting the SoC, the first control information already acquired in the normal boot is not acquired. For this reason, when notification information is provided to the processor 211, the control information acquisition processing unit 211E can cause the processor 211 to acquire the first control information from the handover data 300. If the notification information is a flag, the processor 211 refers to the flag and determines whether the current startup of the operating system is a live boot. If the flag is set, the processor 211 acquires the first control information from the handover data 300. If the notification information is a command line, the command line is provided to the processor 211 in the bootstrap. The processor 211 determines whether the current boot of the operating system is a live boot based on the command line. If a command line indicating a live boot is given, the processor 211 obtains the first control information from the handover data 300.

オペレーティングシステムの更新により、処理回路210のハードウェア機能部を新たに使用する機能が追加される場合がある。例えば、第2オペレーティングシステム250Bにおいて、第1オペレーティングシステム250Aでは使用されていなかった高速I/O管理部215E(図2参照)を使用する機能が追加されることを想定する。ライブブートによって第2オペレーティングシステム250Bが起動される場合、第1制御情報には高速I/O管理部215Eの制御情報が含まれていないため、引継データ300から高速I/O管理部215Eの制御情報をプロセッサ211が取得することはできない。高速I/O管理部215Eの制御情報は、第2オペレーティングシステム250Bの起動時に、プロセッサ211によって処理回路210から取得される。 Updating the operating system may add a function that uses new hardware functions of the processing circuit 210. For example, assume that a function that uses the high-speed I/O management unit 215E (see FIG. 2) that was not used in the first operating system 250A is added to the second operating system 250B. When the second operating system 250B is started by live boot, the first control information does not include control information for the high-speed I/O management unit 215E, so the processor 211 cannot obtain the control information for the high-speed I/O management unit 215E from the handover data 300. The control information for the high-speed I/O management unit 215E is obtained by the processor 211 from the processing circuit 210 when the second operating system 250B is started.

制御情報取得処理部211Eは、前記第2オペレーティングシステム250Bの起動時に取得された第2制御情報を、引継データ300に追加する。第2制御情報は、第1オペレーティングシステム250Aでは使用されていなかった第2ハードウェア機能部の制御に用いられる制御情報であり、第2オペレーティングシステム250Bの起動時にプロセッサ211によって取得される制御情報である。上述した高速I/O管理部215Eの制御情報は、第2制御情報の一例である。図6Bは、引継データへの第2制御情報の追加の一例を説明するための図である。制御情報取得処理部211Eは、高速I/O管理部215Eの制御情報である高速I/O制御情報にタイプ「4」を割り当て、タイプ「4」及び高速I/O制御情報の長さ「N」を高速I/O制御情報に対応させたデータ列300Aを生成する。制御情報取得処理部211Eは、生成されたデータ列300Aを、引継データ300に追加する。第2制御情報が追加された引継データ300は、次回のライブブートために不揮発性メモリ212に保存される。 The control information acquisition processing unit 211E adds the second control information acquired at the time of booting the second operating system 250B to the handover data 300. The second control information is control information used to control the second hardware function unit that was not used in the first operating system 250A, and is control information acquired by the processor 211 at the time of booting the second operating system 250B. The control information of the high-speed I/O management unit 215E described above is an example of the second control information. FIG. 6B is a diagram for explaining an example of adding the second control information to the handover data. The control information acquisition processing unit 211E assigns type "4" to the high-speed I/O control information, which is the control information of the high-speed I/O management unit 215E, and generates a data string 300A in which the type "4" and the length "N" of the high-speed I/O control information correspond to the high-speed I/O control information. The control information acquisition processing unit 211E adds the generated data string 300A to the handover data 300. The handover data 300 with the second control information added is stored in the non-volatile memory 212 for the next live boot.

[3.2.再起動対象選択方式]
図7Aは、通常ブートにおける再起動対象の一例を示す図であり、図7Bは、再起動対象選択方式における再起動対象の一例を示す図である。通常ブートでは、更新後のソフトウェアが不揮発性メモリ212に格納されると、プロセッサ211がリセット要求を制御回路220に送信する。制御回路220は、リセット要求を受信すると、通信装置200の各部、即ち、プロセッサ211、光トランシーバ231,233、信号処理回路232、PLL234、第2制御回路241、L2スイッチ242、PHY243、及びトランシーバ244にリセット信号を送信する。リセット信号は再起動の指示信号である。プロセッサ211、光トランシーバ231,233、信号処理回路232、PLL234、第2制御回路241、L2スイッチ242、PHY243、及びトランシーバ244のそれぞれは、リセット信号を受信すると再起動する。さらに、リセット信号を送信した制御回路220も再起動する。このような通常ブートでは、第1ハードウェア機能部、即ち、光トランシーバ231,233、信号処理回路232、及びPLL234が再起動されるため、ソフトウェア更新において主信号の通信が中断される。
[3.2. Restart target selection method]
7A is a diagram showing an example of a restart target in a normal boot, and FIG. 7B is a diagram showing an example of a restart target in a restart target selection method. In a normal boot, when the updated software is stored in the non-volatile memory 212, the processor 211 transmits a reset request to the control circuit 220. When the control circuit 220 receives the reset request, it transmits a reset signal to each part of the communication device 200, that is, the processor 211, the optical transceivers 231 and 233, the signal processing circuit 232, the PLL 234, the second control circuit 241, the L2 switch 242, the PHY 243, and the transceiver 244. The reset signal is a restart instruction signal. When the processor 211, the optical transceivers 231 and 233, the signal processing circuit 232, the PLL 234, the second control circuit 241, the L2 switch 242, the PHY 243, and the transceiver 244 receive the reset signal, they are restarted. Furthermore, the control circuit 220 that transmitted the reset signal is also restarted. In such a normal boot, the first hardware functional unit, that is, the optical transceivers 231 and 233, the signal processing circuit 232, and the PLL 234 are restarted, and therefore main signal communication is interrupted during the software update.

再び図3を参照する。再起動対象選択方式では、ソフトウェア更新において、第1ハードウェア機能部、即ち、光トランシーバ231,233、信号処理回路232、及びPLL234は再起動されない。このため、ソフトウェア更新中に主信号の通信が維持される。再起動対象設定部211Fは、プロセッサ211によって実行されるソフトウェアが更新される場合に、再起動の対象を設定する。具体的には、再起動対象設定部211Fは、プロセッサ211、第2制御回路241、L2スイッチ242、PHY243、及びトランシーバ244を再起動対象に設定する。 Refer back to FIG. 3. In the restart target selection method, the first hardware function unit, i.e., the optical transceivers 231 and 233, the signal processing circuit 232, and the PLL 234, are not restarted during a software update. Therefore, main signal communication is maintained during the software update. The restart target setting unit 211F sets the restart target when the software executed by the processor 211 is updated. Specifically, the restart target setting unit 211F sets the processor 211, the second control circuit 241, the L2 switch 242, the PHY 243, and the transceiver 244 as the restart targets.

図7Bを参照する。再起動対象設定部211Fは、設定された再起動対象を制御回路220に通知する。制御回路220は、再起動対象に対してリセット信号を送信する。つまり、プロセッサ211、第2制御回路241、L2スイッチ242、PHY243、及びトランシーバ244にリセット信号が送信され、光トランシーバ231,233、信号処理回路232、及びPLL234にはリセット信号が送信されない。プロセッサ211、第2制御回路241、L2スイッチ242、PHY243、及びトランシーバ244は再起動し、ソフトウェアが更新される。 Refer to FIG. 7B. The restart target setting unit 211F notifies the control circuit 220 of the restart target that has been set. The control circuit 220 transmits a reset signal to the restart target. That is, a reset signal is transmitted to the processor 211, the second control circuit 241, the L2 switch 242, the PHY 243, and the transceiver 244, but a reset signal is not transmitted to the optical transceivers 231 and 233, the signal processing circuit 232, and the PLL 234. The processor 211, the second control circuit 241, the L2 switch 242, the PHY 243, and the transceiver 244 are restarted, and the software is updated.

再び図3を参照する。プロセッサ211が再起動すると、第1格納処理部211Aが通常ブートを実行する。 Referring again to FIG. 3, when the processor 211 restarts, the first storage processing unit 211A executes a normal boot.

[3.3.共通処理]
次にライブブート方式及び再起動対象選択方式の共通処理について説明する。プロセッサ211によって実行されるアプリケーションソフトウェア254が、信号処理回路232又は光トランシーバ231,233を制御する場合、アプリケーションソフトウェア254の内部テーブルに、信号処理回路232又は光トランシーバ231,233の設定情報及び状態情報が格納される。信号処理回路232の設定情報は、例えば通信経路の情報である。光トランシーバ231,233の設定情報は、例えば送信の有効/無効の設定値、動作モードの設定値を示す情報である。信号処理回路232の状態情報は、例えば、アラーム、警報のような異常を示す情報、送受信カウンタの値等である。光トランシーバ231,233の状態情報は、例えば、ケーブルの挿抜状態を示す情報、アラーム、警報のような異常を示す情報、送受信パワーの値等である。
[3.3. Common Processing]
Next, a common process between the live boot method and the restart target selection method will be described. When the application software 254 executed by the processor 211 controls the signal processing circuit 232 or the optical transceivers 231 and 233, the setting information and status information of the signal processing circuit 232 or the optical transceivers 231 and 233 are stored in an internal table of the application software 254. The setting information of the signal processing circuit 232 is, for example, information on a communication path. The setting information of the optical transceivers 231 and 233 is, for example, information indicating a setting value for enabling/disabling transmission and a setting value for an operation mode. The status information of the signal processing circuit 232 is, for example, information indicating an abnormality such as an alarm or warning, a value of a transmission/reception counter, etc. The status information of the optical transceivers 231 and 233 is, for example, information indicating a cable insertion/removal state, information indicating an abnormality such as an alarm or warning, a value of a transmission/reception power, etc.

アプリケーションソフトウェア254は、内部テーブルにおける設定情報及び状態情報を利用して、信号処理回路232又は光トランシーバ231,233を制御する。このようなアプリケーションソフトウェア254が更新されると、内部テーブルが初期化される。ライブブート方式又は再起動対象選択方式では、信号処理回路232及び光トランシーバ231,233が再起動されないため、再起動後のアプリケーションソフトウェア254は設定情報を取得することができない場合がある。ソフトウェア更新の間に、信号処理回路232及び光トランシーバ231,233の状態が変化する場合もある。このため、ライブブート方式又は再起動対象選択方式によるソフトウェア更新の前に、アプリケーションソフトウェア254の内部テーブルに格納された設定情報及び状態情報を情報退避部211Gが不揮発性メモリ212に退避させ、ソフトウェア更新後に退避された設定情報によって、復旧部211Hがアプリケーションソフトウェア254の内部テーブルを復旧する。さらに、退避された状態情報とソフトウェア更新後における信号処理回路232又は光トランシーバ231,233の状態とが相違する場合、通知部211Iがユーザに通知する。 The application software 254 uses the setting information and state information in the internal table to control the signal processing circuit 232 or the optical transceivers 231 and 233. When such application software 254 is updated, the internal table is initialized. In the live boot method or the restart target selection method, the signal processing circuit 232 and the optical transceivers 231 and 233 are not restarted, so the application software 254 after restart may not be able to obtain the setting information. During the software update, the state of the signal processing circuit 232 and the optical transceivers 231 and 233 may change. For this reason, before the software update using the live boot method or the restart target selection method, the information saving unit 211G saves the setting information and state information stored in the internal table of the application software 254 to the non-volatile memory 212, and the recovery unit 211H restores the internal table of the application software 254 using the setting information saved after the software update. Furthermore, if the saved status information differs from the status of the signal processing circuit 232 or the optical transceivers 231 and 233 after the software update, the notification unit 211I notifies the user.

図8Aは、設定情報及び状態情報の退避を説明する図である。情報退避部211Gは、信号処理回路232及び光トランシーバ231,233のいずれか一方又は両方を制御するためのアプリケーションソフトウェア254をライブブート方式又は再起動対象選択方式で更新する前に、更新前のアプリケーションソフトウェア254Aの内部テーブル411に含まれる設定情報412A,413A及び状態情報412B,413Bを含む退避データ500を生成する。情報退避部211Gは、生成された退避データ500を不揮発性メモリ212に格納する。なお、プロセッサ211の再起動を伴わないライブブート方式によってソフトウェア更新が行われることが事前に判明している場合には、退避データ500の格納先は揮発性メモリ213でもよい。 FIG. 8A is a diagram for explaining the saving of setting information and state information. Before updating the application software 254 for controlling the signal processing circuit 232 and/or the optical transceivers 231 and 233 using the live boot method or the restart target selection method, the information saving unit 211G generates saved data 500 including the setting information 412A, 413A and state information 412B, 413B included in the internal table 411 of the application software 254A before the update. The information saving unit 211G stores the generated saved data 500 in the non-volatile memory 212. Note that if it is known in advance that the software update will be performed using the live boot method that does not involve restarting the processor 211, the saved data 500 may be stored in the volatile memory 213.

図8Bは、内部テーブルの復旧を説明する図である。復旧部211Hは、アプリケーションソフトウェア254が更新された後に、退避データ500に含まれる設定情報412A,413Aを、更新後のアプケーションソフトウェア254Bの内部テーブル421に書き込む。これにより、内部テーブル421が復旧される。 Figure 8B is a diagram explaining the recovery of the internal table. After the application software 254 is updated, the recovery unit 211H writes the setting information 412A, 413A contained in the saved data 500 to the internal table 421 of the updated application software 254B. This causes the internal table 421 to be recovered.

再び図3を参照する。状態情報は、アプリケーションソフトウェア254の更新後においても、信号処理回路232及び光トランシーバ231,233からプロセッサ211が取得することができる。通知部211Iは、現在の信号処理回路232及び光トランシーバ231,233の状態情報と、退避データ500に含まれる状態情報412B,413Bとを比較する。通知部211Iは、現在の信号処理回路232及び光トランシーバ231,233の状態情報と、退避データ500に含まれる状態情報412B,413Bとに差異がある場合、ソフトウェアの更新中に信号処理回路232又は光トランシーバ231,233の状態が変化したと判断し、信号処理回路232又は光トランシーバ231,233の状態が変化したことをユーザに通知する。通知は、例えば、信号処理回路232又は光トランシーバ231,233の状態が変化したことを示す情報を含むパケットを保守管理用の端末装置へ送信することによって行うことができる。 Refer to FIG. 3 again. The processor 211 can obtain the status information from the signal processing circuit 232 and the optical transceivers 231 and 233 even after the application software 254 is updated. The notification unit 211I compares the current status information of the signal processing circuit 232 and the optical transceivers 231 and 233 with the status information 412B and 413B included in the saved data 500. If there is a difference between the current status information of the signal processing circuit 232 and the optical transceivers 231 and 233 and the status information 412B and 413B included in the saved data 500, the notification unit 211I determines that the status of the signal processing circuit 232 or the optical transceivers 231 and 233 has changed during the software update, and notifies the user that the status of the signal processing circuit 232 or the optical transceivers 231 and 233 has changed. The notification can be made, for example, by sending a packet containing information indicating that the state of the signal processing circuit 232 or the optical transceivers 231 and 233 has changed to a maintenance and management terminal device.

[4.通信装置のソフトウェア更新動作]
図9は、実施形態に係る通信装置のソフトウェア更新動作の一例を示すフローチャートである。
4. Software update operation of communication device
FIG. 9 is a flowchart illustrating an example of a software update operation of the communication device according to the embodiment.

新たなソフトウェアは、フラッシュメモリのような不揮発性メモリに格納されてユーザに提供されたり、図示しないサーバから通信装置200にダウンロードされたりする。ソフトウェアの更新ファイルには、更新後のソフトウェアのイメージデータが含まれる。プロセッサ211は、現在のソフトウェア(オペレーティングシステム250、ブートローダ251、アプリケーションソフトウェア254、及び制御回路220のファームウェア)のバージョンを確認する(ステップS1)。プロセッサ211は、更新ファイルに含まれるイメージデータを確認し(ステップS2)、例えば、更新ファイルのヘッダ等に含まれる更新後のソフトウェアのバージョンを参照して、更新対象のソフトウェアを確認する(ステップS3)。 The new software is provided to the user by storing it in a non-volatile memory such as a flash memory, or is downloaded to the communication device 200 from a server (not shown). The software update file contains image data of the updated software. The processor 211 checks the versions of the current software (operating system 250, boot loader 251, application software 254, and firmware of the control circuit 220) (step S1). The processor 211 checks the image data contained in the update file (step S2), and checks the software to be updated, for example, by referring to the version of the updated software contained in the header of the update file (step S3).

プロセッサ211は、更新対象にオペレーティングシステム又はブートローダが含まれるか否かを判定する(ステップS4)。更新対象にオペレーティングシステム又はブートローダが含まれない場合(ステップS4においてNO)、プロセッサ211は、従来方式による無瞬断ソフトウェア更新を実行する(ステップS5)。 The processor 211 determines whether the update target includes an operating system or a boot loader (step S4). If the update target does not include an operating system or a boot loader (NO in step S4), the processor 211 executes an uninterrupted software update using the conventional method (step S5).

更新対象にオペレーティングシステム又はブートローダが含まれる場合(ステップS4においてYES)、プロセッサ211は、情報退避処理を実行する(ステップS6)。情報退避処理では、アプリケーションソフトウェア254の内部テーブル421に含まれる設定情報412A,413A及び状態情報412B,413Bを含む退避データ500が生成され、退避データ500が不揮発性メモリ212に保存される。 If the update target includes the operating system or the boot loader (YES in step S4), the processor 211 executes an information evacuation process (step S6). In the information evacuation process, evacuation data 500 including the setting information 412A, 413A and the state information 412B, 413B included in the internal table 421 of the application software 254 is generated, and the evacuation data 500 is saved in the non-volatile memory 212.

プロセッサ211は、更新対象にブートローダが含まれるか否かを判定する(ステップS7)。更新対象にブートローダが含まれる場合(ステップS7においてYES)、プロセッサ211は、再起動対象選択更新処理を実行する(ステップS8)。更新対象にブートローダが含まれない場合(ステップS7においてNO)、プロセッサ211は、ライブブート更新処理を実行する(ステップS9)。 The processor 211 determines whether the update target includes a boot loader (step S7). If the update target includes a boot loader (YES in step S7), the processor 211 executes a reboot target selection update process (step S8). If the update target does not include a boot loader (NO in step S7), the processor 211 executes a live boot update process (step S9).

再起動対象選択更新処理は、再起動対象選択方式による無瞬断ソフトウェア更新である。図10は、再起動対象選択更新処理の一例を示すフローチャートである。 The restart target selection update process is an uninterrupted software update using the restart target selection method. Figure 10 is a flowchart showing an example of the restart target selection update process.

プロセッサ211は、新バージョンのソフトウェアを不揮発性メモリ212にインストールする(ステップS101)。 The processor 211 installs the new version of the software into the non-volatile memory 212 (step S101).

プロセッサ211は、プロセッサ211、第2制御回路241、L2スイッチ242、PHY243、及びトランシーバ244を再起動対象に設定する(ステップS102)。第1ハードウェア機能部、即ち、光トランシーバ231,233、信号処理回路232、及びPLL234は再起動対象から除外される。 The processor 211 sets the processor 211, the second control circuit 241, the L2 switch 242, the PHY 243, and the transceiver 244 as targets for restart (step S102). The first hardware function unit, i.e., the optical transceivers 231 and 233, the signal processing circuit 232, and the PLL 234, are excluded from the targets for restart.

プロセッサ211は、設定された再起動対象を制御回路220に通知する(ステップS103)。制御回路220は、再起動対象に対してリセット信号を送信し、制御回路220自体もリセットする。プロセッサ211は、リセット信号を受信し、プロセッサ211をリセット(再起動)する(ステップS104))。 The processor 211 notifies the control circuit 220 of the restart target that has been set (step S103). The control circuit 220 transmits a reset signal to the restart target, and also resets the control circuit 220 itself. The processor 211 receives the reset signal and resets (restarts) the processor 211 (step S104).

プロセッサ211は、ブートローダ251、オペレーティングシステム250、デバイスファイル252を揮発性メモリ213にロードする(ステップS105)。再起動対象選択方式では、更新対象にブートローダ251が含まれる。したがって、更新後のブートローダがロードされる。更新対象にオペレーティングシステムが含まれていれば、更新後のオペレーティングシステムがロードされる。更新対象にオペレーティングシステムが含まれていなければ、再起動前と同じオペレーティングシステムがロードされる。 The processor 211 loads the boot loader 251, the operating system 250, and the device file 252 into the volatile memory 213 (step S105). In the reboot target selection method, the boot loader 251 is included in the update targets. Therefore, the updated boot loader is loaded. If the update targets include the operating system, the updated operating system is loaded. If the update targets do not include the operating system, the same operating system as before the reboot is loaded.

プロセッサ211は、揮発性メモリ213にロードされたブートローダ251を実行し、ブートストラップを起動する(ステップS106)。さらにプロセッサ211は、揮発性メモリ213にロードされたオペレーティングシステム250を起動する(ステップS107)。つまり、この場合、通常ブートによってオペレーティングシステムが起動される。 The processor 211 executes the boot loader 251 loaded in the volatile memory 213 and starts the bootstrap (step S106). The processor 211 then starts the operating system 250 loaded in the volatile memory 213 (step S107). That is, in this case, the operating system is started by normal boot.

通常ブートでは、プロセッサ211は、SoCに含まれるキュー管理部215B、バッファ管理部215C、及びフレーム管理部215Dの第1制御情報をブートシーケンス中に取得する(ステップS108)。オペレーティングシステムの起動後、プロセッサ211は、取得された第1制御情報から、引継データ300を生成する(ステップS109)。プロセッサ211は、生成された引継データ300を不揮発性メモリ212に保存する(ステップS110)。以上で、再起動対象選択更新処理が終了する。 In normal boot, the processor 211 acquires first control information of the queue management unit 215B, the buffer management unit 215C, and the frame management unit 215D included in the SoC during the boot sequence (step S108). After starting the operating system, the processor 211 generates handover data 300 from the acquired first control information (step S109). The processor 211 saves the generated handover data 300 in the non-volatile memory 212 (step S110). This completes the restart target selection update process.

ライブブート更新処理は、ライブブート方式による無瞬断ソフトウェア更新である。図11は、ライブブート更新処理の一例を示すフローチャートである。 The live boot update process is an uninterrupted software update using the live boot method. Figure 11 is a flowchart showing an example of the live boot update process.

プロセッサ211は、新バージョンのソフトウェアを不揮発性メモリ212にインストールする(ステップS201)。 The processor 211 installs the new version of the software into the non-volatile memory 212 (step S201).

プロセッサ211は、プロセッサ211をリセットせずに、即ち、オペレーティングシステムの稼働中に、起動プログラム253、オペレーティングシステム250、及びデバイスファイル252を揮発性メモリ213にロードする(ステップS202)。ライブブート方式では、ブートローダ251は揮発性メモリ213にロードされない。その代わりに、起動プログラム253がロードされる。ライブブート方式では、更新対象にオペレーティングシステム250が含まれる。したがって、更新後の第2オペレーティングシステム250B及び第2オペレーティングシステム250Bで使用される第2デバイスファイル252Bが揮発性メモリ213にロードされる。 The processor 211 loads the startup program 253, the operating system 250, and the device file 252 into the volatile memory 213 without resetting the processor 211, i.e., while the operating system is running (step S202). In the live boot method, the boot loader 251 is not loaded into the volatile memory 213. Instead, the startup program 253 is loaded. In the live boot method, the operating system 250 is included in the update target. Therefore, the updated second operating system 250B and the second device file 252B used by the second operating system 250B are loaded into the volatile memory 213.

プロセッサ211はさらに、不揮発性メモリ212に保存された引継データを揮発性メモリ213にロードする(ステップS203)。 The processor 211 further loads the handover data stored in the non-volatile memory 212 into the volatile memory 213 (step S203).

次にプロセッサ211は、ライブブートの通知情報を不揮発性メモリ212に保存する(ステップS204)。 Next, the processor 211 stores the live boot notification information in the non-volatile memory 212 (step S204).

プロセッサ211は、稼働中のオペレーティングシステム、即ち、第1オペレーティングシステム250Aを停止する(ステップS205)。 The processor 211 stops the running operating system, i.e., the first operating system 250A (step S205).

プロセッサ211は、揮発性メモリ213にロードされた起動プログラム253を実行する(ステップS206)。さらにプロセッサ211は、起動プログラム253にしたがって、更新後のオペレーティングシステム、即ち、第2オペレーティングシステム250Bを起動する(ステップS207)。 The processor 211 executes the startup program 253 loaded into the volatile memory 213 (step S206). Furthermore, the processor 211 starts the updated operating system, i.e., the second operating system 250B, in accordance with the startup program 253 (step S207).

プロセッサ211は、通知情報を確認し、ライブブートによるオペレーティングシステムの起動であるか否かを判定する(ステップS208)。ライブブートによるオペレーティングシステムの起動であることを確認すると、プロセッサ211は、揮発性メモリ213にロードされた引継データから第1制御情報を取得する(ステップS209)。 The processor 211 checks the notification information and determines whether the operating system is being started by live boot (step S208). If it is determined that the operating system is being started by live boot, the processor 211 obtains the first control information from the handover data loaded into the volatile memory 213 (step S209).

第1オペレーティングシステム250Aでは使用されていなかった処理回路210のハードウェア機能部が、第2オペレーティングシステム250Bにおいて新たに使用される場合、プロセッサ211は、当該ハードウェア機能部の制御情報である第2制御情報を、第2オペレーティングシステムの起動時に取得する(ステップS210)。プロセッサ211は、取得された第2制御情報を、引継データ300に追加する(ステップS211)。これにより、次回のライブブートによるオペレーティングシステムの起動時に、制御情報をプロセッサ211に与えることができる。なお、第2オペレーティングシステム250Bにおいて新たに使用されるハードウェア機能部がない場合、ステップS210及びS211はスキップされる。以上で、ライブブート更新処理が終了する。 When a hardware function unit of the processing circuit 210 that was not used in the first operating system 250A is to be newly used in the second operating system 250B, the processor 211 acquires second control information, which is control information for the hardware function unit, when the second operating system is started (step S210). The processor 211 adds the acquired second control information to the handover data 300 (step S211). This makes it possible to provide the control information to the processor 211 when the operating system is started up by the next live boot. Note that if there is no hardware function unit to be newly used in the second operating system 250B, steps S210 and S211 are skipped. This completes the live boot update process.

再び図9を参照する。再起動対象選択更新処理又はライブブート更新処理が終了した場合、プロセッサ211は復旧処理を実行する(ステップS10)。復旧処理では、退避データ500に含まれる設定情報412A,413Aがアプリケーションソフトウェア254の内部テーブル421に書き込まれる。さらにプロセッサ211は、通知処理を実行する(ステップS11)。通知処理では、現在の信号処理回路232及び光トランシーバ231,233の状態情報と、退避データ500に含まれる状態情報412B,413Bとに差異がある場合、ソフトウェアの更新中に信号処理回路232又は光トランシーバ231,233の状態が変化したことがユーザに通知される。なお、現在の信号処理回路232及び光トランシーバ231,233の状態情報と、退避データ500に含まれる状態情報412B,413Bとに差異がない場合、ステップS11はスキップされる。以上で、通信装置200のソフトウェア更新動作が終了する。 Refer to FIG. 9 again. When the restart target selection update process or the live boot update process is completed, the processor 211 executes a recovery process (step S10). In the recovery process, the setting information 412A, 413A included in the saved data 500 is written to the internal table 421 of the application software 254. Furthermore, the processor 211 executes a notification process (step S11). In the notification process, if there is a difference between the current state information of the signal processing circuit 232 and the optical transceivers 231, 233 and the state information 412B, 413B included in the saved data 500, the user is notified that the state of the signal processing circuit 232 or the optical transceivers 231, 233 has changed during the software update. Note that if there is no difference between the current state information of the signal processing circuit 232 and the optical transceivers 231, 233 and the state information 412B, 413B included in the saved data 500, step S11 is skipped. With this, the software update operation of the communication device 200 is completed.

[5.変形例]
上述した実施形態では、再起動対象選択更新処理とライブブート更新処理とを更新対象のソフトウェアに応じて選択する構成について述べたが、これに限定されない。ブートローダが更新対象に含まれず、オペレーティングシステムが更新対象に含まれる場合、再起動対象選択更新処理だけを実行する構成であってもよいし、ライブブート更新処理だけを実行する構成であってもよい。
5. Modifications
In the above embodiment, the configuration is described in which the reboot target selection update process and the live boot update process are selected according to the software to be updated, but the present invention is not limited to this. When the boot loader is not included in the update target and the operating system is included in the update target, the configuration may be such that only the reboot target selection update process is executed, or the configuration may be such that only the live boot update process is executed.

上述した実施形態では、移動通信システムに適用された中継システム100について述べたが、これに限定されない。中継システム100は、移動通信システム以外の通信システムに適用されてもよい。さらに、中継システム100に含まれる通信装置200をOTNに準拠した光伝送装置としたが、これに限定されない。通信装置200は、OTNに準拠していない光伝送装置であってもよいし、光信号ではなく電気信号を伝送する伝送装置であってもよい。 In the above-described embodiment, the relay system 100 applied to a mobile communication system has been described, but is not limited to this. The relay system 100 may be applied to a communication system other than a mobile communication system. Furthermore, the communication device 200 included in the relay system 100 is an optical transmission device that complies with OTN, but is not limited to this. The communication device 200 may be an optical transmission device that does not comply with OTN, or may be a transmission device that transmits an electrical signal instead of an optical signal.

[6.効果]
通信装置200は、データを格納する揮発性メモリ213と、揮発性メモリ213に格納されたデータを読み出し可能なプロセッサ211と、光トランシーバ231,233、信号処理回路232、及びPLL234(第1ハードウェア機能部)と、キュー管理部215B、バッファ管理部215C、及びフレーム管理部215D(第2ハードウェア機能部)と、第2格納処理部211C(格納処理部)と、切替処理部211Dと、制御情報取得処理部211Eとを含む。光トランシーバ231,233、信号処理回路232、及びPLL234は、主信号の通信に関する機能を提供する。キュー管理部215B、バッファ管理部215C、及びフレーム管理部215Dは、プロセッサ211と連携した機能を提供する。第2格納処理部211Cは、プロセッサ211、並びに、光トランシーバ231,233、信号処理回路232、及びPLL234のそれぞれを初期化することなく、起動プログラム253、第2オペレーティングシステム250B、及び、引継データ300を、更新前のオペレーティングシステムである第1オペレーティングシステム250Aの揮発性メモリ213内における格納領域とは異なる領域にロード(格納)する。起動プログラム253は、更新後のオペレーティングシステムである第2オペレーティングシステム250Bを起動するための起動コードである。引継データ300は、第1オペレーティングシステム250Aによるキュー管理部215B、バッファ管理部215C、及びフレーム管理部215Dの制御に用いられる第1制御情報を含む。切替処理部211Dは、プロセッサ211に、第1オペレーティングシステム250Aを停止させ、起動プログラム253及び第2オペレーティングシステム250Bを実行させことにより第2オペレーティングシステム250Bを起動させる。制御情報取得処理部211Eは、第2オペレーティングシステム250Bが起動される場合に、プロセッサ211に、第1制御情報を引継データ300から取得させる。これにより、実行中の第1オペレーティングシステム250A上で第2オペレーティングシステム250Bをライブブートすることができる。第2オペレーティングシステム250Bのライブブートにおいて、光トランシーバ231,233、信号処理回路232、及びPLL234が初期化されないため、主信号の通信機能を維持したまま、オペレーティングシステムを更新することができる。第2オペレーティングシステム250Bの起動時にプロセッサ211が第1制御情報を取得することができるため、SoCにおいてもライブブートが可能となる。
[6. Effects]
The communication device 200 includes a volatile memory 213 for storing data, a processor 211 capable of reading data stored in the volatile memory 213, optical transceivers 231 and 233, a signal processing circuit 232, and a PLL 234 (first hardware function unit), a queue management unit 215B, a buffer management unit 215C, and a frame management unit 215D (second hardware function unit), a second storage processing unit 211C (storage processing unit), a switching processing unit 211D, and a control information acquisition processing unit 211E. The optical transceivers 231 and 233, the signal processing circuit 232, and the PLL 234 provide functions related to communication of main signals. The queue management unit 215B, the buffer management unit 215C, and the frame management unit 215D provide functions in cooperation with the processor 211. The second storage processing unit 211C loads (stores) the boot program 253, the second operating system 250B, and the handover data 300 in an area in the volatile memory 213 different from the storage area of the first operating system 250A, which is the operating system before the update, without initializing the processor 211, the optical transceivers 231 and 233, the signal processing circuit 232, and the PLL 234. The boot program 253 is a boot code for booting the second operating system 250B, which is the operating system after the update. The handover data 300 includes first control information used for the control of the queue management unit 215B, the buffer management unit 215C, and the frame management unit 215D by the first operating system 250A. The switching processing unit 211D causes the processor 211 to stop the first operating system 250A and execute the boot program 253 and the second operating system 250B, thereby booting the second operating system 250B. When the second operating system 250B is started, the control information acquisition processing unit 211E causes the processor 211 to acquire the first control information from the handover data 300. This allows the second operating system 250B to be live booted on the running first operating system 250A. In the live boot of the second operating system 250B, the optical transceivers 231 and 233, the signal processing circuit 232, and the PLL 234 are not initialized, so that the operating system can be updated while maintaining the communication function of the main signal. Since the processor 211 can acquire the first control information when the second operating system 250B is started, live boot is also possible in the SoC.

切替処理部211Dは、第2オペレーティングシステム250Bの起動時に、ライブブートによって第2オペレーティングシステム250Bが起動されることを示す通知情報をプロセッサ211に与えてもよい。制御情報取得処理部211Eは、プロセッサ211に通知情報が与えられた場合に、プロセッサ211に、第1制御情報を引継データ300から取得させてもよい。これにより、オペレーティングシステム250の起動時に、ブートストラップを経た通常の起動であるのかライブブートであるのかを、プロセッサ211に通知情報が与えられたか否かによって制御情報取得処理部211Eが判断することができる。ライブブートの場合、第2オペレーティングシステム250Bの起動時にプロセッサ211が第1制御情報を取得することができる。 The switching processing unit 211D may provide the processor 211 with notification information indicating that the second operating system 250B will be started by a live boot when the second operating system 250B is started. When the notification information is provided to the processor 211, the control information acquisition processing unit 211E may cause the processor 211 to acquire the first control information from the handover data 300. This allows the control information acquisition processing unit 211E to determine whether the startup of the operating system 250 is a normal startup via bootstrap or a live boot, depending on whether the notification information is provided to the processor 211. In the case of a live boot, the processor 211 can acquire the first control information when the second operating system 250B is started.

揮発性メモリ213、プロセッサ211、並びに、キュー管理部215B、バッファ管理部215C、及びフレーム管理部215Dは、1つの集積回路に含まれてもよい。これにより、SoCにより通信装置200を構成することができる。 The volatile memory 213, the processor 211, the queue management unit 215B, the buffer management unit 215C, and the frame management unit 215D may be included in a single integrated circuit. This allows the communication device 200 to be configured using a SoC.

通信装置200は、引継データ生成部211Bをさらに備えてもよい。引継データ生成部211Bは、第1オペレーティングシステム250Aの起動時にプロセッサ211によって取得された第1制御情報に基づいて引継データ300を生成し、生成された引継データ300を不揮発性メモリ212に格納する、第2格納処理部211Cは、不揮発性メモリ212に格納された引継データ300を揮発性メモリ213に格納してもよい。これにより、引継データ300を第2オペレーティングシステム250Bの起動時に揮発性メモリ213にロードすることができる。 The communication device 200 may further include a handover data generation unit 211B. The handover data generation unit 211B generates handover data 300 based on the first control information acquired by the processor 211 when the first operating system 250A is started, and stores the generated handover data 300 in the non-volatile memory 212. The second storage processing unit 211C may store the handover data 300 stored in the non-volatile memory 212 in the volatile memory 213. This allows the handover data 300 to be loaded into the volatile memory 213 when the second operating system 250B is started.

制御情報取得処理部211Eは、第2オペレーティングシステム250Bの起動時に、第2制御情報がプロセッサ211によって取得された場合に、第2制御情報を引継データ300に追加してもよい。第2制御情報は、第2オペレーティングシステム250Bによる第2ハードウェア機能部の制御に用いられる情報である。これにより、第1オペレーティングシステム250Aでは必要なかったが第2オペレーティングシステム250Bで必要となった第2制御情報を、次回のライブブートのために引継データ300に追加することができる。 The control information acquisition processing unit 211E may add the second control information to the handover data 300 if the second control information is acquired by the processor 211 when the second operating system 250B is started. The second control information is information used for control of the second hardware function unit by the second operating system 250B. This makes it possible to add the second control information that was not required by the first operating system 250A but is required by the second operating system 250B to the handover data 300 for the next live boot.

通信装置200は、ソフトウェアを実行可能なプロセッサ211と、光トランシーバ231,233、信号処理回路232、及びPLL234(第1ハードウェア機能部)と、第2制御回路241、L2スイッチ242、PHY243、及びトランシーバ244(第3ハードウェア機能部)と、制御回路220と、再起動対象設定部211Fとを含む。光トランシーバ231,233、信号処理回路232、及びPLL234は、主信号の通信に関する機能を提供する。第2制御回路241、L2スイッチ242、PHY243、及びトランシーバ244は、主信号の通信に関する機能とは異なる機能を提供する。制御回路220は、プロセッサ211、光トランシーバ231,233、信号処理回路232、及びPLL234、並びに、第2制御回路241、L2スイッチ242、PHY243、及びトランシーバ244に再起動の指令信号であるリセット信号を出力することが可能である。再起動対象設定部211Fは、プロセッサ211によって実行されるソフトウェアが更新される場合に、再起動の対象を設定する。再起動対象設定部211Fによって、プロセッサ211、第2制御回路241、L2スイッチ242、PHY243、及びトランシーバ244が再起動の対象に設定され、光トランシーバ231,233、信号処理回路232、及びPLL234が再起動の対象に設定されない場合、制御回路220は、プロセッサ211、第2制御回路241、L2スイッチ242、PHY243、及びトランシーバ244にリセット信号を出力し、光トランシーバ231,233、信号処理回路232、及びPLL234にリセット信号を出力しない。これにより、光トランシーバ231,233、信号処理回路232、及びPLL234が再起動の対象から除外され、プロセッサ211が再起動の対象に含まれるため、主信号の通信機能を維持したまま、オペレーティングシステム250を含むソフトウェアの更新を行うことができる。 The communication device 200 includes a processor 211 capable of executing software, optical transceivers 231 and 233, a signal processing circuit 232, and a PLL 234 (first hardware function unit), a second control circuit 241, an L2 switch 242, a PHY 243, and a transceiver 244 (third hardware function unit), a control circuit 220, and a restart target setting unit 211F. The optical transceivers 231 and 233, the signal processing circuit 232, and the PLL 234 provide functions related to communication of main signals. The second control circuit 241, the L2 switch 242, the PHY 243, and the transceiver 244 provide functions different from the functions related to communication of main signals. The control circuit 220 is capable of outputting a reset signal, which is a restart command signal, to the processor 211, the optical transceivers 231 and 233, the signal processing circuit 232, and the PLL 234, as well as the second control circuit 241, the L2 switch 242, the PHY 243, and the transceiver 244. The restart target setting unit 211F sets a target for restart when software executed by the processor 211 is updated. When the processor 211, the second control circuit 241, the L2 switch 242, the PHY 243, and the transceiver 244 are set as targets for restart by the restart target setting unit 211F, and the optical transceivers 231 and 233, the signal processing circuit 232, and the PLL 234 are not set as targets for restart, the control circuit 220 outputs a reset signal to the processor 211, the second control circuit 241, the L2 switch 242, the PHY 243, and the transceiver 244, and does not output a reset signal to the optical transceivers 231 and 233, the signal processing circuit 232, and the PLL 234. As a result, the optical transceivers 231 and 233, the signal processing circuit 232, and the PLL 234 are excluded from targets for restart, and the processor 211 is included as a target for restart, so that software including the operating system 250 can be updated while maintaining the communication function of the main signal.

制御回路220は、リセット信号を出力した場合、制御回路220を再起動してもよい。これにより、制御回路220を再起動の対象に含めることができる。 When the control circuit 220 outputs a reset signal, the control circuit 220 may be restarted. This allows the control circuit 220 to be included as a target for restart.

更新されるソフトウェアは、オペレーティングシステム250を含んてもよい。これにより、主信号の通信機能を維持したまま、オペレーティングシステム250を更新することができる。 The software to be updated may include the operating system 250. This allows the operating system 250 to be updated while maintaining the communication function of the main signal.

更新されるソフトウェアは、ブートローダ251を含んでもよい。これにより、主信号の通信機能を維持したまま、プロセッサ211の再起動が必要なブートローダ251を更新することができる。 The software to be updated may include the boot loader 251. This allows the boot loader 251, which requires the processor 211 to be restarted, to be updated while maintaining the communication function of the main signal.

第1ハードウェア機能部は、主信号を送受信する光トランシーバ231,233、主信号を処理するための信号処理回路232、並びに、光トランシーバ231,233及び信号処理回路232にクロック信号を供給するPLL234を含んでもよい。これにより、光トランシーバ231,233、信号処理回路232、及びPLL234を初期化することなく、オペレーティングシステム250を含むソフトウェアを更新することができる。 The first hardware function unit may include optical transceivers 231, 233 that transmit and receive a main signal, a signal processing circuit 232 for processing the main signal, and a PLL 234 that supplies a clock signal to the optical transceivers 231, 233 and the signal processing circuit 232. This makes it possible to update software including the operating system 250 without initializing the optical transceivers 231, 233, the signal processing circuit 232, and the PLL 234.

通信装置200は、情報退避部211Gと、復旧部211Hとを含んでもよい。情報退避部211Gは、光トランシーバ231,233、信号処理回路232、及びPLL234を制御するためのアプリケーションソフトウェア254を更新する前に、アプリケーションソフトウェア254の内部テーブル411に含まれる光トランシーバ231,233及び信号処理回路232の設定情報412A,413Aを、不揮発性メモリ212に格納する。復旧部211Hは、アプリケーションソフトウェア254の更新後に、不揮発性メモリ212に格納された設定情報412A,413Aを、更新後のアプリケーションソフトウェア254の内部テーブル421として復旧する。これにより、アプリケーションソフトウェア254の更新の際に内部テーブル421から失われる光トランシーバ231,233及び信号処理回路232の設定情報412A,413Aを、アプリケーションソフトウェア254の更新後に復旧することができる。 The communication device 200 may include an information saving unit 211G and a restoration unit 211H. Before updating the application software 254 for controlling the optical transceivers 231 and 233, the signal processing circuit 232, and the PLL 234, the information saving unit 211G stores the setting information 412A, 413A of the optical transceivers 231 and 233 and the signal processing circuit 232 contained in the internal table 411 of the application software 254 in the non-volatile memory 212. After updating the application software 254, the restoration unit 211H restores the setting information 412A, 413A stored in the non-volatile memory 212 as the internal table 421 of the updated application software 254. This allows the setting information 412A, 413A of the optical transceivers 231 and 233 and the signal processing circuit 232, which is lost from the internal table 421 when the application software 254 is updated, to be restored after the application software 254 is updated.

情報退避部211Gは、内部テーブル411に含まれる光トランシーバ231,233及び信号処理回路232の状態情報412B,413Bを、不揮発性メモリ212に格納してもよい。通信装置200は、通知部211Iをさらに含んでもよい。通知部211Iは、現在の光トランシーバ231,233及び信号処理回路232の状態を示す状態情報と、不揮発性メモリ212に格納された状態情報とに差異がある場合、ユーザに通知する。これにより、ソフトウェアの更新の際に光トランシーバ231,233及び信号処理回路232の状態が変化した場合、当該変化があったことをソフトウェアの更新後にユーザに通知することができる。 The information saving unit 211G may store the status information 412B, 413B of the optical transceivers 231, 233 and the signal processing circuit 232 contained in the internal table 411 in the non-volatile memory 212. The communication device 200 may further include a notification unit 211I. The notification unit 211I notifies the user when there is a difference between the status information indicating the current status of the optical transceivers 231, 233 and the signal processing circuit 232 and the status information stored in the non-volatile memory 212. In this way, if the status of the optical transceivers 231, 233 and the signal processing circuit 232 changes during a software update, the user can be notified of the change after the software update.

[7.補記]
今回開示された実施の形態はすべての点で例示であって、制限的ではない。本発明の権利範囲は、上述の実施形態ではなく特許請求の範囲によって示され、特許請求の範囲と均等の意味及びその範囲内でのすべての変更が含まれる。
[7. Supplementary Notes]
The embodiments disclosed herein are illustrative in all respects and are not restrictive. The scope of the present invention is defined by the claims rather than the above-described embodiments, and includes the meaning equivalent to the claims and all modifications within the scope thereof.

10 通信システム
20 親局
25 光ファイバケーブル
30 子局
100 中継システム
200 通信装置
210 処理回路
211 プロセッサ
211A 第1格納処理部
211B 引継データ生成部
211C 第2格納処理部
211D 切替処理部
211E 制御情報取得処理部
211F 再起動対象設定部
211G 情報退避部
211H 復旧部
211I 通知部
212 不揮発性メモリ
213 揮発性メモリ
214 通信インタフェース(通信I/F)
215A 内部通信管理部
215B キュー管理部(第2ハードウェア機能部)
215C バッファ管理部(第2ハードウェア機能部)
215D フレーム管理部(第2ハードウェア機能部)
215E 高速I/O管理部
220 制御回路
221 再起動制御部
231,233 光トランシーバ(第1ハードウェア機能部)
232 信号処理回路(第1ハードウェア機能部)
234 PLL(第1ハードウェア機能部)
241 第2制御回路(第3ハードウェア機能部)
242 L2スイッチ(第3ハードウェア機能部)
243 PHY(第3ハードウェア機能部)
244 トランシーバ (TRx)(第3ハードウェア機能部)
250 オペレーティングシステム
250A 第1オペレーティングシステム
250B 第2オペレーティングシステム
251 ブートローダ
252 デバイスファイル
252A 第1デバイスファイル
252B 第2デバイスファイル
253 起動プログラム
254,254A,254B アプリケーションソフトウェア
300 引継データ
300A データ列
411,421 内部テーブル
412A,413A 設定情報
412B,413B 状態情報
500 退避データ
REFERENCE SIGNS LIST 10 Communication system 20 Parent station 25 Optical fiber cable 30 Child station 100 Relay system 200 Communication device 210 Processing circuit 211 Processor 211A First storage processing unit 211B Handover data generation unit 211C Second storage processing unit 211D Switching processing unit 211E Control information acquisition processing unit 211F Restart target setting unit 211G Information evacuation unit 211H Recovery unit 211I Notification unit 212 Non-volatile memory 213 Volatile memory 214 Communication interface (communication I/F)
215A Internal communication management unit 215B Queue management unit (second hardware function unit)
215C Buffer Management Unit (Second Hardware Function Unit)
215D Frame Management Unit (Second Hardware Function Unit)
215E High-speed I/O management unit 220 Control circuit 221 Restart control unit 231, 233 Optical transceiver (first hardware function unit)
232 signal processing circuit (first hardware function unit)
234 PLL (first hardware function unit)
241 Second control circuit (third hardware function unit)
242 L2 switch (third hardware function unit)
243 PHY (third hardware function unit)
H.244 Transceiver (TRx) (third hardware function unit)
250 Operating system 250A First operating system 250B Second operating system 251 Boot loader 252 Device file 252A First device file 252B Second device file 253 Startup program 254, 254A, 254B Application software 300 Inheritance data 300A Data string 411, 421 Internal table 412A, 413A Setting information 412B, 413B Status information 500 Saved data

Claims (10)

データを格納するメモリと、
前記メモリに格納されたデータを読み出し可能なプロセッサと、
主信号の通信に関する機能を提供する第1ハードウェア機能部と、
前記プロセッサと連携した機能を提供する第2ハードウェア機能部と、
前記プロセッサ及び前記第1ハードウェア機能部のそれぞれを初期化することなく、更新後のオペレーティングシステムである第2オペレーティングシステムを前記プロセッサの初期化を伴わずに起動するための起動コード、前記第2オペレーティングシステムの実行可能コードである第2コード、及び、更新前のオペレーティングシステムである第1オペレーティングシステムによる前記第2ハードウェア機能部の制御に用いられる第1制御情報を含む引継データを、前記第1オペレーティングシステムの実行可能コードである第1コードの前記メモリ内における格納領域とは異なる領域に格納する格納処理部と、
前記プロセッサに、前記第1オペレーティングシステムを停止させ、前記起動コード及び前記第2コードを実行させことにより前記第2オペレーティングシステムを起動させる切替処理部と、
前記第2オペレーティングシステムが起動される場合に、前記プロセッサに、前記第1制御情報を前記引継データから取得させる制御情報取得処理部と、
を備える、
通信装置。
A memory for storing data;
A processor capable of reading data stored in the memory;
A first hardware function unit that provides a function related to communication of a main signal;
A second hardware function unit that provides a function in cooperation with the processor;
a storage processing unit that stores handover data including a startup code for starting a second operating system, which is an operating system after the update, without initializing the processor, without initializing the processor and the first hardware function unit, a second code that is an executable code of the second operating system, and first control information used for controlling the second hardware function unit by a first operating system, which is an operating system before the update, in an area different from a storage area in the memory for a first code that is the executable code of the first operating system;
a switching processing unit that causes the processor to stop the first operating system and execute the startup code and the second code to start up the second operating system;
a control information acquisition processing unit that causes the processor to acquire the first control information from the handover data when the second operating system is started;
Equipped with
Communications equipment.
前記切替処理部は、前記第2オペレーティングシステムの起動時に、前記プロセッサの初期化を伴わずに前記第2オペレーティングシステムが起動されることを示す通知情報を前記プロセッサに与え、
前記制御情報取得処理部は、前記プロセッサに前記通知情報が与えられた場合に、前記プロセッサに、前記第1制御情報を前記引継データから取得させる、
請求項1に記載の通信装置。
the switching processing unit, when starting up the second operating system, provides notification information to the processor indicating that the second operating system will be started up without initializing the processor;
the control information acquisition processing unit, when the notification information is provided to the processor, causes the processor to acquire the first control information from the handover data;
The communication device according to claim 1 .
前記メモリ、前記プロセッサ、及び前記第2ハードウェア機能部は、1つの集積回路に含まれる、
請求項1又は請求項2に記載の通信装置。
the memory, the processor, and the second hardware function are included in a single integrated circuit;
The communication device according to claim 1 or 2.
前記第1オペレーティングシステムの起動時に前記プロセッサによって取得された前記第1制御情報に基づいて前記引継データを生成し、生成された前記引継データを記憶装置に格納する引継データ生成部をさらに備え、
前記格納処理部は、前記記憶装置に格納された前記引継データを前記メモリに格納する、
請求項1から請求項3のいずれか1項に記載の通信装置。
a takeover data generating unit that generates the takeover data based on the first control information acquired by the processor when the first operating system is started, and stores the generated takeover data in a storage device;
The storage processing unit stores the takeover data stored in the storage device in the memory.
The communication device according to any one of claims 1 to 3.
前記制御情報取得処理部は、前記第2オペレーティングシステムの起動時に、前記第2オペレーティングシステムによる前記第2ハードウェア機能部の制御に用いられる第2制御情報が前記プロセッサによって取得された場合に、前記第2制御情報を前記引継データに追加する、
請求項1から請求項4のいずれか1項に記載の通信装置。
the control information acquisition processing unit adds second control information to the handover data when second control information used for control of the second hardware function unit by the second operating system is acquired by the processor at the time of booting of the second operating system.
The communication device according to any one of claims 1 to 4.
前記第1ハードウェア機能部は、前記主信号を送受信する送受信器、前記主信号を処理するための信号処理回路、並びに、前記送受信器及び前記信号処理回路にクロック信号を供給するクロック発生器を含む、
請求項1から請求項のいずれか1項に記載の通信装置。
the first hardware functional unit includes a transceiver for transmitting and receiving the main signal, a signal processing circuit for processing the main signal, and a clock generator for supplying a clock signal to the transceiver and the signal processing circuit;
The communication device according to any one of claims 1 to 5 .
前記プロセッサで実行される、前記第1ハードウェア機能部を制御するためのソフトウェアを更新する前に、前記ソフトウェアの内部情報に含まれる前記第1ハードウェア機能部の設定情報を、記憶装置に格納する情報退避部と、
前記ソフトウェアの更新後に、前記記憶装置に格納された前記設定情報を、更新後の前記ソフトウェアの内部情報として復旧する復旧部と、
をさらに備える、
請求項1から請求項のいずれか1項に記載の通信装置。
an information saving unit configured to store, in a storage device, setting information of the first hardware function unit, which is included in internal information of the software, before updating the software for controlling the first hardware function unit, which is executed by the processor;
a recovery unit that recovers the setting information stored in the storage device after updating the software as internal information of the updated software;
Further comprising:
The communication device according to any one of claims 1 to 6 .
前記情報退避部は、前記内部情報に含まれる前記第1ハードウェア機能部の状態情報を、前記記憶装置に格納し、
前記通信装置は、現在の前記第1ハードウェア機能部の状態を示す状態情報と、前記記憶装置に格納された前記状態情報とに差異がある場合、ユーザに通知する通知部をさらに備える、
請求項に記載の通信装置。
the information saving unit stores state information of the first hardware function unit included in the internal information in the storage device;
the communication device further includes a notification unit that notifies a user when there is a difference between state information indicating a current state of the first hardware function unit and the state information stored in the storage device;
The communication device according to claim 7 .
通信装置におけるソフトウェアを更新するソフトウェア更新方法であって、
プロセッサ、及び、主信号の通信に関する機能を提供する第1ハードウェア機能部のそれぞれを初期化することなく、更新後のオペレーティングシステムである第2オペレーティングシステムを前記プロセッサの初期化を伴わずに起動するための起動コード、前記第2オペレーティングシステムの実行可能コードである第2コード、及び、前記プロセッサと連携した機能を提供する第2ハードウェア機能部の、更新前のオペレーティングシステムである第1オペレーティングシステムによる制御に用いられる第1制御情報を含む引継データを、前記第1オペレーティングシステムの実行可能コードである第1コードのメモリ内における格納領域とは異なる領域に格納するステップと、
前記プロセッサに、前記第1オペレーティングシステムを停止させ、前記起動コード及び前記第2コードを実行させことにより前記第2オペレーティングシステムを起動させるステップと、
前記第2オペレーティングシステムが起動される場合に、前記プロセッサに、前記第1制御情報を前記引継データから取得させるステップと、
を含む、
ソフトウェア更新方法。
A software updating method for updating software in a communication device, comprising:
storing handover data including a start-up code for starting a second operating system, which is an operating system after the update, without initializing the processor and a first hardware function unit providing a function related to communication of a main signal, without initializing the processor , a second code which is an executable code of the second operating system, and first control information used for controlling the second hardware function unit providing a function linked to the processor by the first operating system, which is an operating system before the update, in an area different from the storage area in a memory of the first code which is the executable code of the first operating system;
causing the processor to stop the first operating system and to start the second operating system by executing the start-up code and the second code;
when the second operating system is started, causing the processor to obtain the first control information from the handover data;
Including,
How to update software.
通信装置におけるソフトウェアを更新するためのコンピュータプログラムであって、
前記通信装置に、
プロセッサ、及び、主信号の通信に関する機能を提供する第1ハードウェア機能部のそれぞれを初期化することなく、更新後のオペレーティングシステムである第2オペレーティングシステムを前記プロセッサの初期化を伴わずに起動するための起動コード、前記第2オペレーティングシステムの実行可能コードである第2コード、及び、前記プロセッサと連携した機能を提供する第2ハードウェア機能部の、更新前のオペレーティングシステムである第1オペレーティングシステムによる制御に用いられる第1制御情報を含む引継データを、前記第1オペレーティングシステムの実行可能コードである第1コードのメモリ内における格納領域とは異なる領域に格納するステップと、
前記プロセッサに、前記第1オペレーティングシステムを停止させ、前記起動コード及び前記第2コードを実行させことにより前記第2オペレーティングシステムを起動させるステップと、
前記第2オペレーティングシステムが起動される場合に、前記プロセッサに、前記第1制御情報を前記引継データから取得させるステップと、
を実行させる、
コンピュータプログラム。
1. A computer program product for updating software in a communication device, comprising:
The communication device includes:
storing handover data including a start-up code for starting a second operating system, which is an operating system after the update, without initializing the processor and a first hardware function unit providing a function related to communication of a main signal, without initializing the processor , a second code which is an executable code of the second operating system, and first control information used for controlling the second hardware function unit providing a function linked to the processor by the first operating system, which is an operating system before the update, in an area different from the storage area in a memory of the first code which is the executable code of the first operating system;
causing the processor to stop the first operating system and to start the second operating system by executing the start-up code and the second code;
when the second operating system is started, causing the processor to obtain the first control information from the handover data;
Execute the
Computer program.
JP2021072670A 2021-04-22 2021-04-22 COMMUNICATION DEVICE, SOFTWARE UPDATE METHOD, AND COMPUTER PROGRAM Active JP7655066B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021072670A JP7655066B2 (en) 2021-04-22 2021-04-22 COMMUNICATION DEVICE, SOFTWARE UPDATE METHOD, AND COMPUTER PROGRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021072670A JP7655066B2 (en) 2021-04-22 2021-04-22 COMMUNICATION DEVICE, SOFTWARE UPDATE METHOD, AND COMPUTER PROGRAM

Publications (2)

Publication Number Publication Date
JP2022167111A JP2022167111A (en) 2022-11-04
JP7655066B2 true JP7655066B2 (en) 2025-04-02

Family

ID=83852506

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021072670A Active JP7655066B2 (en) 2021-04-22 2021-04-22 COMMUNICATION DEVICE, SOFTWARE UPDATE METHOD, AND COMPUTER PROGRAM

Country Status (1)

Country Link
JP (1) JP7655066B2 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014029739A (en) 2013-11-13 2014-02-13 Fujitsu Ltd Multi-core processor system, control program, and control method
JP2020052453A (en) 2018-09-21 2020-04-02 住友電気工業株式会社 Communication device and communication device setting method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014029739A (en) 2013-11-13 2014-02-13 Fujitsu Ltd Multi-core processor system, control program, and control method
JP2020052453A (en) 2018-09-21 2020-04-02 住友電気工業株式会社 Communication device and communication device setting method

Also Published As

Publication number Publication date
JP2022167111A (en) 2022-11-04

Similar Documents

Publication Publication Date Title
CN113656147B (en) Cluster deployment method, device, equipment and storage medium
CN109683968B (en) Switch quick start method, switch and storage medium
US6694450B1 (en) Distributed process redundancy
CN107769949B (en) Application component deployment method and deployment node
US12001835B2 (en) In-service software upgrade with active service monitoring
EP4270299B1 (en) Operating system upgrade method, electronic device, and storage medium
US10929150B2 (en) Optical line terminal and method for upgrading primary device and secondary device of optical line terminal
CN112783570B (en) Application migration method, system and medium based on service grid
WO2021093654A1 (en) Daughter card initialization method, electronic apparatus, and storage medium
CN112947965A (en) Containerized service updating method and device
CN116204215A (en) MCU upgrading method and system, computer equipment and storage medium
JP7655066B2 (en) COMMUNICATION DEVICE, SOFTWARE UPDATE METHOD, AND COMPUTER PROGRAM
CN101515834B (en) Main control card, switching system based on multi-backup main control card, switching method of switching system
CN116074372B (en) Service management method, device and electronic equipment
CN115208823A (en) Flow forwarding method and device
CN104580360A (en) System and method for updating firmware through heterogeneous network
CN114172803B (en) Multi-FPGA version control and configuration system and method based on Ethernet switching technology
JP7087876B2 (en) Communication device and setting method of communication device
CN100539514C (en) Intelligent optical network equipment with dual central processors and its implementation method
CN115454457A (en) Deployment method and device of operating system, electronic equipment and storage medium
CN113791810A (en) ZYNQ platform-based remote upgrading method, device and system
US12487832B2 (en) System and method for software state management
CN119512604B (en) A method, apparatus, and electronic device for upgrading components in a Kubernetes cluster.
US11507383B2 (en) Configurable boot paths
CN111007753B (en) A dual-controller main-standby arbitration method and device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231121

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240826

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240917

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20241106

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: 20250218

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250303

R150 Certificate of patent or registration of utility model

Ref document number: 7655066

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150