JP2014150426A - Optical transceiver - Google Patents
Optical transceiver Download PDFInfo
- Publication number
- JP2014150426A JP2014150426A JP2013018439A JP2013018439A JP2014150426A JP 2014150426 A JP2014150426 A JP 2014150426A JP 2013018439 A JP2013018439 A JP 2013018439A JP 2013018439 A JP2013018439 A JP 2013018439A JP 2014150426 A JP2014150426 A JP 2014150426A
- Authority
- JP
- Japan
- Prior art keywords
- bank
- application program
- controller
- signal
- cpu
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
- Optical Communication System (AREA)
Abstract
Description
本発明は、光トランシーバに関する。 The present invention relates to an optical transceiver.
特許文献1は、光トランシーバの動的なアップデートの方法を、開示している。特許文献1は、具体的には、内蔵するコントローラのファームウェア(マイクロコード)を、外部機器からの指示に応じて、光トランシーバが更新する手順を、開示している。特許文献1には、更に、ファームウェアの更新後にコントローラがリブートする場合としない場合とがある旨、記載されている。 Patent Document 1 discloses a method for dynamically updating an optical transceiver. Specifically, Patent Document 1 discloses a procedure in which an optical transceiver updates firmware (microcode) of a built-in controller in accordance with an instruction from an external device. Patent Document 1 further describes that the controller may or may not reboot after the firmware update.
ファームウェアは、例えば、光トランシーバの機能の追加・変更と、MSA(Multi Source Agreement:業界標準規格)仕様の改訂・バグ修正とによって、製品出荷後も更新の機会がある。しかしながら、特許文献1には、ファームウェアの更新時における光送受信に対する対応についての開示が無い。従って、特許文献1の技術では、ファームウェアの更新時に、光送受信信号が瞬断されることが懸念される。そこで、本発明の目的は、上記の事項を鑑みてなされたものであり、光送受信信号を瞬断せずにプログラムの更新が可能な光トランシーバを提供することである。 The firmware has an opportunity to be updated after product shipment, for example, by adding / changing the function of the optical transceiver and by revising and bug correcting the MSA (Multi Source Agreement) specification. However, Patent Document 1 does not disclose the correspondence to optical transmission / reception when updating firmware. Therefore, in the technique of Patent Document 1, there is a concern that the optical transmission / reception signal is momentarily interrupted when the firmware is updated. In view of the above, an object of the present invention is to provide an optical transceiver capable of updating a program without instantaneously interrupting an optical transmission / reception signal.
本発明に係る光トランシーバは、光トランシーバは、IC装置と、コントローラと、を備え、前記IC装置は、光信号の送受信に用いられ、前記コントローラは、書き換え可能な不揮発性のメモリを備え、前記メモリは、第1のバンクと、第2のバンクと、第3のバンクと、を備え、前記第1のバンクは、バンク切り替えデータと、ブートプログラムと、を格納し、前記第2のバンクは、第1のアプリケーションプログラムを格納し、前記バンク切り替えデータは、前記第2のバンク及び前記第3のバンクの何れのバンクを前記コントローラが利用するかを示すデータであり、前記コントローラは、前記第2のバンク及び前記第3のバンクの中から前記バンク切り替えデータに示されるバンクを利用し、前記コントローラは、前記第2のバンクが前記バンク切り替えデータに示されている場合に更新用の第2のアプリケーションプログラムを外部機器から受信すると、前記第2のアプリケーションプログラムを前記第3のバンクに格納し、前記バンク切り替えデータを前記第3のバンクに更新した後に、当該コントローラをソフトウェアリセットし、前記第1のアプリケーションプログラムと前記第2のアプリケーションプログラムとは、前記コントローラのファームウェアの一部として用いられる、ことを特徴とする。アプリケーションプログラムの更新時、更新用のアプリケーションプログラムが第3のバンクに格納され、バンク切り替えデータが第3のバンクに更新された後に、ソフトウェアリセットが行われる。このように、バンク切り替えデータを更新すれば、更新後の第2のアプリケーションブログラムが利用可能となる。従って、アプリケーションプログラムの更新時には、光送信信号の瞬断等を伴う光トランシーバ全体の初期化は不要となる。 An optical transceiver according to the present invention includes an IC device and a controller. The IC device is used for transmission and reception of an optical signal. The controller includes a rewritable nonvolatile memory. The memory includes a first bank, a second bank, and a third bank, the first bank stores bank switching data and a boot program, and the second bank The first application program is stored, and the bank switching data is data indicating which of the second bank and the third bank is used by the controller. Using the bank indicated by the bank switching data from among the two banks and the third bank, the controller When the second application program for update is received from the external device when the bank switching data is indicated in the bank switching data, the second application program is stored in the third bank, and the bank switching data is stored in the third bank. After updating to the third bank, the controller is reset by software, and the first application program and the second application program are used as part of the firmware of the controller. When updating the application program, the application program for update is stored in the third bank, and after the bank switching data is updated to the third bank, software reset is performed. Thus, if the bank switching data is updated, the updated second application program can be used. Therefore, when the application program is updated, it is not necessary to initialize the entire optical transceiver with an instantaneous interruption of the optical transmission signal.
本発明に係る光トランシーバにおいて、前記メモリにおける前記第2のバンクの番地の範囲と、前記メモリにおける前記第3のバンクの番地の範囲とは、同一である、ことを特徴とする。第2のバンクの番地の範囲と、第3のバンクの番地の範囲とが同一の場合、アプリケーションプログラムのバンクを第2のバンクから第3のバンクに切り替えた後であっても、アプリケーションプログラムに対する指示を、切り替え前の番地を用いて引き続き行うことができる。 In the optical transceiver according to the present invention, the range of the address of the second bank in the memory and the range of the address of the third bank in the memory are the same. If the address range of the second bank and the address range of the third bank are the same, even after the application program bank is switched from the second bank to the third bank, The instruction can be continued using the address before switching.
本発明によれば、光送受信信号を瞬断せずにプログラムの更新が可能な光トランシーバを提供できる。 According to the present invention, it is possible to provide an optical transceiver capable of updating a program without instantaneously interrupting an optical transmission / reception signal.
以下、図面を参照して、本発明に係る好適な実施形態について詳細に説明する。なお、図面の説明において、可能な場合には、同一要素には同一符号を付し、重複する説明を省略する。図1〜図3を参照して、光トランシーバ1の構成を説明する。光トランシーバ1は、40Gbps/100Gbps光トランシーバのフォームファクターであるCFP(C Form-Factor Pluggable)やQSFP+(Quad Small Form-factor Pluggable Plus)等である。光トランシーバ1は、コントローラ2、CDR3a(CDR:Clock and Data Recovery)、LDD3b(LDD:Laser Diode Driver)、TOSA3c(TOSA:Transmitter Optical SubAssembly)、CDR4a、LIA4b(LIA:Limiting Amplifier)、ROSA4c(ROSA:Receiver Optical SubAssembly)を備える。CDR3a、LDD3b、TOSA3c、CDR4a、LIA4b、ROSA4cは、それぞれ、光信号の送受信に用いられるIC装置の具体例である。
Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the drawings. In the description of the drawings, if possible, the same elements are denoted by the same reference numerals, and redundant description is omitted. The configuration of the optical transceiver 1 will be described with reference to FIGS. The optical transceiver 1 is a CFP (C Form-Factor Pluggable) or QSFP + (Quad Small Form-factor Pluggable Plus), which is a form factor of a 40 Gbps / 100 Gbps optical transceiver. The optical transceiver 1 includes a
CDR3a、LDD3b、TOSA3cは、4チャンネルを備える機器である。CDR3a、LDD3b、TOSA3cのそれぞれは、例えば、4チャンネルを備える一台の機器であることができる。CDR3a、LDD3b、TOSA3cのそれぞれは、例えば、1チャンネルを備える機器を四台備える構成であることができる。CDR4a、LIA4b、ROSA4cは、4チャンネルを備える機器である。CDR4a、LIA4b、ROSA4cは、例えば、4チャンネルを備える一台の機器であることができる。CDR4a、LIA4b、ROSA4cは、例えば、1チャンネルを備える機器を四台備える構成であることができる。CDR3aとCDR4aとは、それぞれ、例えば、別体であることができる。CDR3aとCDR4aとは、例えば、一体であることができる。
CDR3a, LDD3b, and TOSA3c are devices having four channels. Each of the
CDR3aは、4チャンネル分のTX+/−送信信号A1を受けると、4チャンネル分のTX+/−送信信号A1に対応する4チャンネル分の信号A1aをLDD3bに出力する。LDD3bは、CDR3aから4チャンネル分の信号A1aを受けると、4チャンネル分の信号A1aに対応する4チャンネル分の駆動信号A1bをTOSA3cに出力する。TOSA3cは、LDD3bから4チャンネル分の駆動信号A1bを受けると、4チャンネル分の駆動信号A1bに応じて、光送信信号A2を外部機器に送信する。ROSA4cは、外部機器から光受信信号A3を受信すると、光受信信号A3に基づいて4チャンネル分の信号A3aをLIA4bに出力する。LIA4bは、ROSA4cから4チャンネル分の信号A3aを受けると、4チャンネル分の信号A3aに対応する4チャンネル分の信号A3bをCDR4aに出力する。CDR4aは、LIA4bから4チャンネル分の信号A3bを受けると、4チャンネル分の信号A3bに対応する4チャンネル分のRX+/−受信信号A4を外部機器に出力する。
Upon receiving the TX +/− transmission signal A1 for four channels, the
CDR3aとCDR4aとは、それぞれ、例えば、四本の10Gbps信号を一本の40Gbps信号に合成・分離するSerDes ICであることができる。CDR3aとCDR4aとは、それぞれ、例えば、十本の10Gbps信号を四本の25Gbps信号に合成・分離するGearBox ICであることができる。
Each of the
コントローラ2は、CPU21とメモリ22とを備える。コントローラ2は、例えば、ワンチップマイコンであることができる。コントローラ2は、例えば、複数のCPU、FPGA、CPLD等を備える構成であることができ、この場合、CPU21は、複数のCPUを備える。メモリ22は、書き換え可能な不揮発性のメモリである。メモリ22は、例えば、Flash ROMであることができる。メモリ22は、コントローラ2のファームウェアを格納する。CPU21は、メモリ22に格納されているファームウェアと、他のコンピュータプログラムとを実行することによって、CDR3a、LDD3b、TOSA3c、CDR4a、LIA4b、ROSA4cを統括的に制御する。
The
コントローラ2は、外部機器との間で、シリアル通信信号A5、制御信号A6、リセット信号A7、アラーム信号A8の入出力を行う。シリアル通信信号A5は、例えば、I2C及びMDIOに適合した信号である。シリアル通信信号A5は、コントローラ2の各種のアラーム信号の詳細データ、光トランシーバに係る各種のIDデータ、コントローラ2に対する各種の制御データ、等を含む。制御信号A6は、光トランシーバ1を制御するための制御データ(例えば、光送信信号A2のオン・オフをコントローラ2に指示する制御データ、光トランシーバ1をローパワーモードとする制御データ等)を含む。リセット信号A7は、光トランシーバ1のリセット(初期処理)を指示するデータを含む。リセット信号A7による光トランシーバ1の初期処理を、以下においては、ハードウェアリセットという。ハードウェアリセットとは、外部からのリセット信号により、電源ON時と同様に、起動動作から再実行するリセットを意味する。アラーム信号A8は、コントローラ2の各種のアラーム信号を含む。
The
コントローラ2は、CDR3a、LDD3b、CDR4a、LIA4bとの間において、I2C信号A9を送受信する。コントローラ2は、制御信号A6の入力に応じて、LDD3bに対し、TxDISABLE信号A10を出力する。TxDISABLE信号A10は、光送信信号A2のオン・オフの切り替えをLDD3bに指示する制御データである。コントローラ2は、リセット信号A7の入力に応じて、CDR3aが備えるリセット端子3a1と、CDR4aが備えるリセット端子4a1とに対し、リセット信号A11を出力する。コントローラ2は、リセット信号A7の入力に応じて、LDD3bが備えるリセット端子3b1に対し、リセット信号A12を出力する。コントローラ2は、リセット信号A7の入力に応じて、LIA4bが備えるリセット端子4b1に対し、リセット信号A13を出力する。
The
図2は、コントローラ2のハードウェアの構成を示す。コントローラ2は、CPU21、メモリ22、温度センサ23、通信I/F24、通信I/F25、内部出力ピン26、外部入力ピン27、外部出力ピン28、バス29を備える。CPU21、メモリ22、温度センサ23、通信I/F24、通信I/F25、内部出力ピン26、外部入力ピン27、外部出力ピン28は、バス29に接続されている。メモリ22は、ROM22a、RAM22bを備える。CPU21は、ROM22aに格納されるファームウェア等のコンピュータプログラムを実行することによって、光トランシーバ1の複数のIC装置(CDR3a、LDD3b、TOSA3c、CDR4a、LIA4b、ROSA4c)を統括的に制御する。CPU21は、ROM22aに格納されるファームウェア等のコンピュータプログラムを実行することによって、特に、図4〜図9のそれぞれのフローチャートを実行する。温度センサ23は、コントローラ2の内部の温度を示す信号をCPU21に出力する。通信I/F24は、シリアル通信信号A5に接続されている。通信I/F25は、I2C信号A9に接続されている。内部出力ピン26は、TxDISABLE信号A10、リセット信号A11、リセット信号A12、リセット信号A13に接続されている。外部入力ピン27は、制御信号A6に接続されている。外部出力ピン28は、アラーム信号A8に接続されている。
FIG. 2 shows a hardware configuration of the
CPU21は、シリアル通信信号A5を介して、ファームウェアの更新(例えば、図3に示すアプリケーションプログラムD3A等の更新)が外部機器から指示されると、更新用のアプリケーションプログラムをROM22aに格納した後に、CPU21が実行するコンピュータプログラムを、再起動する。CPU21によるこのようなコンピュータプログラムの再起動を、ソフトウェアリセットという。ソフトウェアリセットは、外部機器からのリセット指示によるハードウェアリセットとは異なる。ソフトウェアリセットとは、外部のリセット信号によらず、ソフトウェア(ファームウェア)で電源ON時と同じアドレスから起動し直すリセットを意味する。ハードウェアリセット(初期処理)の場合、光トランシーバ1の複数のIC装置(CDR3a、LDD3b、CDR4a、LIA4b等)に対しリセットとデータ設定とが行われ、RAM22bのデータを消去し、LDD3bに対するDisable側への切り替えが行われる。ソフトウェアリセットの場合、ハードウェアリセットは行われないので、光トランシーバ1の複数のIC装置に対しリセットとデータ設定とは行われず、RAM22bのデータは消去されず、LDD3bに対するDisable側への切り替えは行われない。従って、ソフトウェアリセットの場合、光送信信号A2及び光受信信号A3の瞬断は、生じない。
When the
図3は、ROM22aのメモリマップの一例を示す。ROM22aは、バンク50(第1のバンク)、バンク5A(第2のバンク)、バンク5B(第3のバンク)を備える。バンク50は、ブートプログラム領域501と、データ領域502とを備える。バンク50は、ブートプログラムD1と、バンク切り替えデータD2と、を格納する。ブートプログラム領域501は、ブートプログラムD1を格納する。データ領域502は、バンク切り替えデータD2を格納する。
FIG. 3 shows an example of the memory map of the
ブートプログラム領域501に格納されるブートプログラムD1は、光トランシーバ1のファームウェアの一部として機能する。CPU21は、ブートプログラムD1を実行することによって、コントローラ2を起動する。データ領域502に格納されるバンク切り替えデータD2は、バンク5A及びバンク5Bの何れのバンクをコントローラ2が利用するかを示すデータである。より具体的には、データ領域502に格納されるバンク切り替えデータD2は、バンク5A及びバンク5Bの何れのバンクに格納されているアプリケーションプログラムがCPU21によって実行されるか、を示すデータである。CPU21は、データ領域502に格納されるバンク切り替えデータD2を参照し、バンク5A及びバンク5Bの何れのバンクに格納されているアプリケーションプログラムを実行するか、を判断する。データ領域502には、バンク切り替えデータD2の他に、各種モニタ値のキャリブレーションを示すデータと、工場製造時に光トランシーバ毎に設定されたデータ(例えば、シリアル番号等のIDデータ、アラーム判定用の閾値データ等)と、が格納される。
The boot program D1 stored in the
バンク5A、バンク5Bは、何れも、アプリケーションプログラムを、格納できる。バンク5Aは、アプリケーション領域5A1を備える。バンク5Bは、アプリケーション領域5B1を備える。バンク5Aは、アプリケーションプログラムD3A(第1のアプリケーションプログラム)を格納する。バンク5Bは、アプリケーションプログラムD3B(第2のアプリケーションプログラム)を格納する。アプリケーションプログラムD3Aは、バンク5Aにおいて、アプリケーション領域5A1に格納される。アプリケーションプログラムD3Bは、バンク5Bにおいて、アプリケーション領域5B1に格納される。アプリケーション領域5A1に格納されるアプリケーションプログラムD3Aと、アプリケーション領域5B1に格納されるアプリケーションプログラムD3Bとは、光トランシーバ1のファームウェアの一部として機能する。アプリケーションプログラムD3A及びアプリケーションプログラムD3B等のアプリケーションプログラムは、初期処理(図4のステップS4a及びステップS4b、図8のステップS11〜ステップS14)、受信電文解析処理(図4のステップS5a1及びステップS5b1)、周期処理(図4のステップS5a2及びステップS5b2)、各種の割り込み処理(図4のステップS5a及びステップS5bと図5のステップS6とによるタイマ割り込み処理、図6のI2C割り込み処理、図7のTxDISABLE割り込み処理)、を実行する。
Both the
アプリケーションプログラムは、バンク5A及びバンク5Bの何れかに格納されていればよい。バンク5A及びバンク5Bの何れのバンクに格納されているアプリケーションをCPU21が用いるかを示すデータは、CPU21によってバンク切り替えデータD2に記録されている。ブートプログラムD1、バンク切り替えデータD2、アプリケーションプログラムD3A、アプリケーションプログラムD3Bは、書き換え可能である。図3に示すROM22aの場合、バンク5Aの番地の範囲とバンク5Bの番地の範囲とは同一である。バンク5Aの番地の範囲とバンク5Bの番地の範囲とが同一ではない、という構成であることができる。
The application program only needs to be stored in either
図4〜図9を参照して、光トランシーバ1の動作(特にコントローラ2の動作)を説明する。まず、図4のフローチャートを説明する。CPU21は、ソフトウェアリセット及びハードウェアリセットを行う場合、まず、バンク切り替えデータD2を参照し、現在使用中のバンクがバンク5A及びバンク5Bの何れかであるか、を判定する(ステップS1)。ステップS1において、CPU21は、現在使用中のバンクがバンク5Aであると判定した場合、ステップS2aに移行し、現在使用中のバンクがバンク5Bであると判定した場合、ステップS2bに移行する。
The operation of the optical transceiver 1 (particularly the operation of the controller 2) will be described with reference to FIGS. First, the flowchart of FIG. 4 will be described. When performing a software reset and a hardware reset, the
ステップS2aにおいて、CPU21は、ソフトウェアリセットを行うのか、ハードウェアリセットを行うのか、を、CPU21の内蔵レジスタのフラグを参照することによって、判定する(ステップS2a)。CPU21は、ステップS2aにおいてソフトウェアリセットと判定した場合、ステップS3aに移行し、バンク5Aに格納されているアプリケーションプログラムD3Aを実行することによって、コントローラ2の入出力ポートを設定する(ステップS3a)。CPU21は、ステップS2aにおいてハードウェアリセットと判定した場合、ステップS4aに移行し、バンク5Aに格納されているアプリケーションプログラムD3Aを実行することによって、アプリケーションプログラムD3Aの初期処理(光トランシーバ1に対する初期処理であり、図8のフローチャートに示す)を行う(ステップS4a)。ステップS4aにおいて、CPU21は、バンク5Aに格納されているアプリケーションプログラムD3Aを実行することによって、光トランシーバ1の初期処理(図8のフローチャート)を行う。ステップS3aの後、及び、ステップS4aの後、CPU21は、バンク5Aに格納されているアプリケーションプログラムD3Aを実行することによって、図5に示すタイマ割り込み処理とステップS5aとを行う。アプリケーションプログラムD3Aによって制御される割り込み処理は、図5に示すタイマ割り込み処理の他に、図6に示すI2C割り込み処理と、図7に示すTxDISABLE割り込み処理とを備える。ステップS5aは、ステップS5a1とステップS5a2とを備える。CPU21は、ステップS5a1において、バンク5Aに格納されているアプリケーションプログラムD3Aを実行することによって、アプリケーションプログラムD3Aの受信電文解析処理を行う(ステップS5a1)。CPU21は、ステップS5a2において、バンク5Aに格納されているアプリケーションプログラムD3Aを実行することによって、アプリケーションプログラムD3Aの周期処理を行う(ステップS5a2)。
In step S2a, the
ステップS2bにおいて、CPU21は、ソフトウェアリセットを行うのか、ハードウェアリセットを行うのか、を、CPU21の内蔵レジスタのフラグを参照することによって、判定する(ステップS2b)。CPU21は、ステップS2bにおいてソフトウェアリセットと判定した場合、ステップS3bに移行し、バンク5Bに格納されているアプリケーションプログラムD3Bを実行することによって、コントローラ2の入出力ポートを設定する(ステップS3b)。CPU21は、ステップS2bにおいてハードウェアリセットと判定した場合、ステップS4bに移行し、バンク5Bに格納されているアプリケーションプログラムD3Bを実行することによって、アプリケーションプログラムD3Bの初期処理(光トランシーバ1に対する初期処理であり、図8のフローチャートに示す)を行う(ステップS4b)。ステップS4bにおいて、CPU21は、バンク5Bに格納されているアプリケーションプログラムD3Bを実行することによって、光トランシーバ1の初期処理(図8のフローチャート)を行う。ステップS3bの後、及び、ステップS4bの後、CPU21は、バンク5Bに格納されているアプリケーションプログラムD3Bを実行することによって、図5に示すタイマ割り込み処理とステップS5bとを行う。アプリケーションプログラムD3Bによって制御される割り込み処理は、図5に示すタイマ割り込み処理の他に、図6に示すI2C割り込み処理と、図7に示すTxDISABLE割り込み処理とを備える。ステップS5bは、ステップS5b1とステップS5b2とを備える。CPU21は、ステップS5b1において、バンク5Bに格納されているアプリケーションプログラムD3Bを実行することによって、アプリケーションプログラムD3Bの受信電文解析処理を行う(ステップS5b1)。CPU21は、ステップS5b2において、バンク5Bに格納されているアプリケーションプログラムD3Bを実行することによって、アプリケーションプログラムD3Bの周期処理を行う(ステップS5b2)。
In step S2b, the
図5に示すタイマ割り込み処理は、ステップS6を備える。CPU21は、予め設定された周期(例えば、10msec周期)によって、図5に示すタイマ割り込み処理を行う。ステップS6において、CPU21は、現在使用中のバンクがバンク5Aであると判定した場合、ステップS5aに移行し、現在使用中のバンクがバンク5Bであると判定した場合、ステップS5bに移行する。
The timer interrupt process shown in FIG. 5 includes step S6. The
タイマ割り込み処理によって行われる受信電文解析処理は、例えば、図6のI2C割り込み処理によって外部から受信された書き込み電文の解析処理(例えば、TxDISABLEの状態(光送信信号A2のオン・オフ)をソフトウェア的に切り替える処理、CDR3a及びLDD3bのレジスタ設定を変更する処理、等)と、MSAで規定された各種の制御処理(例えば、ループバックの切り替え、伝送速度の変更、エラーカウントの収集、等)とを、備える。 The received message analysis process performed by the timer interrupt process includes, for example, an analysis process of a write message received from the outside by the I 2 C interrupt process of FIG. 6 (for example, a TxDISABLE state (ON / OFF of the optical transmission signal A2)). Software switching processing, processing to change CDR3a and LDD3b register settings, etc.) and various control processes defined by MSA (eg, switching loopback, changing transmission speed, collecting error count, etc.) Are provided.
タイマ割り込み処理によって行われる周期処理は、各種のモニタ値(例えば、ADC値(ADC:Analog to Digital Converter))の収集、各種のモニタ値の換算、アラーム判定、CDR3a及びCDR4aからのLOS/LOLデータの収集(LOS:Loss of Signal、LOL:Loss of Lock)、APC処理(Automatic Power Control)、等を備える。 Periodic processing performed by timer interrupt processing includes collection of various monitor values (for example, ADC values (ADC: Analog to Digital Converter)), conversion of various monitor values, alarm determination, and LOS / LOL data from CDR3a and CDR4a. Collection (LOS: Loss of Signal, LOL: Loss of Lock), APC processing (Automatic Power Control), and the like.
図6に示すI2C割り込み処理は、ステップS7、ステップS8a、ステップS8bを備える。CPU21は、シリアル通信信号A5のI2C信号によって割り込みを受けると、ステップS7を行う。CPU21は、ステップS7において、現在使用中のバンクがバンク5Aであると判定した場合、ステップS8aに移行し、現在使用中のバンクがバンク5Bであると判定した場合、ステップS8bに移行する。CPU21は、ステップS8aにおいて、バンク5Aに格納されているアプリケーションプログラムD3Aを実行することによって、I2C割り込み処理を行う(ステップS8a)。CPU21は、ステップS8bにおいて、バンク5Bに格納されているアプリケーションプログラムD3Bを実行することによって、I2C割り込み処理を行う(ステップS8b)。
The I 2 C interrupt process shown in FIG. 6 includes step S7, step S8a, and step S8b. When the
図7に示すTxDISABLE割り込み処理は、ステップS9、ステップS10a、ステップS10bを備える。図7に示すTxDISABLE割り込み処理は、TxDISABLEの状態を指定する(光送信信号A2のオン・オフの切り替えを指示する)データに応じて、TxDISABLE信号A10をLDD3bに出力する処理である。CPU21は、TxDISABLEの状態を指定する(光送信信号A2のオン・オフの切り替えを指示する)データを外部機器から制御信号A6を介して受けると、ステップS9を行う。CPU21は、ステップS9において、現在使用中のバンクがバンク5Aであると判定した場合、ステップS10aに移行し、現在使用中のバンクがバンク5Bであると判定した場合、ステップS10bに移行する。CPU21は、ステップS10aにおいて、バンク5Aに格納されているアプリケーションプログラムD3Aを実行することによって、TxDISABLE割り込み処理を行う(ステップS10a)。CPU21は、ステップS10bにおいて、バンク5Bに格納されているアプリケーションプログラムD3Bを実行することによって、TxDISABLE割り込み処理を行う(ステップS10b)。
The TxDISABLE interrupt process shown in FIG. 7 includes step S9, step S10a, and step S10b. The TxDISABLE interrupt process shown in FIG. 7 is a process of outputting the TxDISABLE signal A10 to the
図8に示す初期処理(図4のステップS4a及びステップS4b)は、外部機器からのリセット信号A7に応じて、光トランシーバ1を初期化(ハードウェアリセット)する処理である。図8に示す初期処理は、ステップS11〜ステップS14を備える。ステップS11において、CPU21は、リセット側に切り替えることを指示するリセット信号A11をCDR3aのリセット端子3a1とCDR4aのリセット端子4a1とに送信し、リセット側に切り替えることを指示するリセット信号A12をLDD3bのリセット端子3b1に送信し、リセット側に切り替えることを指示するリセット信号A13をLIA4bのリセット端子4b1に送信する(ステップS11)。この後、CPU21は、コントローラ2の入出力ポートを設定する。
The initial processing shown in FIG. 8 (steps S4a and S4b in FIG. 4) is processing for initializing the optical transceiver 1 (hardware reset) in response to the reset signal A7 from the external device. The initial process shown in FIG. 8 includes steps S11 to S14. In step S11, the
コントローラ2の入出力ポートの設定の後、ステップS12において、CPU21は、RAM22bをチェックし、RAM22bのデータを消去する(ステップS12)。ステップS12の後、ステップS13において、CPU21は、ROM22aのデータ領域502に格納されているデータを、RAM22bにコピーする(ステップS13)。ステップS13の後、ステップS14において、CPU21は、各IC装置(CDR3a、LDD3b、CDR4a、LIA4b等)の起動シーケンスに従って、各IC装置のリセット端子(CDR3aのリセット端子3a1、LDD3bのリセット端子3b1、CDR4aのリセット端子4a1、LIA4bのリセット端子4b1)を解除し、各IC装置のレジスタに、I2C信号A9を介して、各IC装置それぞれの設定データを、送信する(ステップS14)。なお、CPU自身の起動時の出力ポート論理側と、各ICのリセット解除側論理やTxDISABLE出力信号のEnable側論理を合わせておくものとする。CPUがリセットしても、各ICリセットされず、TxDISABLEによる光信号がオフされないようにする。
After setting the input / output port of the
図9に示すアプリケーションプログラムの更新処理は、受信電文解析処理(ステップS5a及びステップSb)において、行われる。図9に示すアプリケーションプログラムの更新処理は、ステップS15〜ステップS18を備える。まず、CPU21は、バンク5Aのアプリケーション領域5A1に格納されているアプリケーションプログラムD3Aを使用中であるとする。図3に示すアプリケーションプログラムD3Bは、未だ、バンク5Bのアプリケーション領域5B1には、格納されていないものとする。
The update process of the application program shown in FIG. 9 is performed in the received message analysis process (steps S5a and Sb). The application program update process shown in FIG. 9 includes steps S15 to S18. First, it is assumed that the
CPU21は、受信電文解析処理中に、シリアル通信信号A5のI2C通信を介して、更新用のアプリケーションプログラムD3Bを外部機器から受信すると(ステップS15)、現在使用中のアプリケーションプログラムD3Aが格納されているバンク5Aとは別のバンク5Bに、この更新用のアプリケーションプログラムD3Bを格納する(ステップS16)。ステップS16の後、ステップS17において、CPU21は、シリアル通信信号A5を介して外部機器からバンクの切り替え指示(アプリケーションプログラムの切り替え指示)を受けると、バンク切り替えデータD2の内容を更新する。具体的には、CPU21は、バンク切り替え指示を受けると、バンク切り替えデータD2の内容を、現在使用中のアプリケーションプログラムD3Aが格納されているバンク5Aから、更新用のアプリケーションプログラムD3Bが格納されたバンク5Bに、更新する(ステップS17)。
When the
ステップS17の後、ステップS18において、CPU21は、ソフトウェアリセットする(ステップS18)。ソフトウェアリセットは、CPU21が実行するコンピュータプログラムの再起動なので、図8に示す初期処理において行われる処理(光トランシーバ1の複数のIC装置(CDR3a、LDD3b、CDR4a、LIA4b等)に対するリセット及びデータ設定、RAM22bのデータの消去、LDD3bに対するDisable側への切り替え)は行われない。従って、ステップS18において行われるソフトウェアリセットの場合、光送信信号A2及び光受信信号A3の瞬断は、生じない。
After step S17, in step S18, the
以上説明した光トランシーバ1によれば、アプリケーションプログラムをアプリケーションプログラムD3AからアプリケーションプログラムD3Bに更新する時、更新用のアプリケーションプログラムD3Bがバンク5Bに格納され、バンク切り替えデータD2がバンク5Aからバンク5Bに更新された後に、CPU21によってソフトウェアリセットが行われる。このように、バンク切り替えデータD2をバンク5Aからバンク5Bに更新すれば、更新後のアプリケーションプログラムD3Bが利用可能となる。従って、アプリケーションプログラムの更新時には、光送信信号A2の瞬断等を伴う光トランシーバ1全体の初期化は不要となる。また、図3に示すように、バンク5Aの番地の範囲と、バンク5Bの番地の範囲とが同一の場合、アプリケーションプログラムのバンクをバンク5Aからバンク5Bに切り替えた後であっても、アプリケーションプログラムに対する指示を、切り替え前の番地を用いて引き続き行うことができる。
According to the optical transceiver 1 described above, when the application program is updated from the application program D3A to the application program D3B, the update application program D3B is stored in the
以上、好適な実施の形態において本発明の原理を図示し説明してきたが、本発明は、そのような原理から逸脱することなく配置および詳細において変更され得ることは、当業者によって認識される。本発明は、本実施の形態に開示された特定の構成に限定されるものではない。したがって、特許請求の範囲およびその精神の範囲から来る全ての修正および変更に権利を請求する。 While the principles of the invention have been illustrated and described in the preferred embodiments, it will be appreciated by those skilled in the art that the invention can be modified in arrangement and detail without departing from such principles. The present invention is not limited to the specific configuration disclosed in the present embodiment. We therefore claim all modifications and changes that come within the scope and spirit of the following claims.
1…光トランシーバ、2…コントローラ、21…CPU、22…メモリ、22a…ROM、22b…RAM、23…温度センサ、24,25…通信I/F、26…内部出力ピン、27…外部入力ピン、28…外部出力ピン、9…バス2、3a…CDR、3a1,3b1,4a1,4b1…リセット端子、3b…LDD、3c…TOSA、4a…CDR、4b…LIA、4c…ROSA、50,5A,5B…バンク、501…ブートプログラム領域、502…データ領域、5A1,5B1…アプリケーション領域、A1…TX+/−送信信号、A10…TxDISABLE信号、A11,A12,A13,A7…リセット信号、A1a,A3a,A3b…信号、A1b…駆動信号、A2…光送信信号、A3…光受信信号、A4…RX+/−受信信号、A5…シリアル通信信号、A6…制御信号、A8…アラーム信号、A9…I2C信号、D1…ブートプログラム、D2…バンク切り替えデータ、D3A,D3B…アプリケーションプログラム。
DESCRIPTION OF SYMBOLS 1 ... Optical transceiver, 2 ... Controller, 21 ... CPU, 22 ... Memory, 22a ... ROM, 22b ... RAM, 23 ... Temperature sensor, 24, 25 ... Communication I / F, 26 ... Internal output pin, 27 ...
Claims (2)
前記IC装置は、光信号の送受信に用いられ、
前記コントローラは、書き換え可能な不揮発性のメモリを備え、
前記メモリは、第1のバンクと、第2のバンクと、第3のバンクと、を備え、
前記第1のバンクは、バンク切り替えデータと、ブートプログラムと、を格納し、
前記第2のバンクは、第1のアプリケーションプログラムを格納し、
前記バンク切り替えデータは、前記第2のバンク及び前記第3のバンクの何れのバンクを前記コントローラが利用するかを示すデータであり、
前記コントローラは、前記第2のバンク及び前記第3のバンクの中から前記バンク切り替えデータに示されるバンクを利用し、
前記コントローラは、前記第2のバンクが前記バンク切り替えデータに示されている場合に更新用の第2のアプリケーションプログラムを外部機器から受信すると、前記第2のアプリケーションプログラムを前記第3のバンクに格納し、前記バンク切り替えデータを前記第3のバンクに更新した後に、当該コントローラをソフトウェアリセットし、
前記第1のアプリケーションプログラムと前記第2のアプリケーションプログラムとは、前記コントローラのファームウェアの一部として用いられる、
ことを特徴とする光トランシーバ。 The optical transceiver includes an IC device and a controller.
The IC device is used for transmission / reception of optical signals,
The controller includes a rewritable nonvolatile memory,
The memory includes a first bank, a second bank, and a third bank,
The first bank stores bank switching data and a boot program,
The second bank stores a first application program,
The bank switching data is data indicating which bank of the second bank and the third bank is used by the controller,
The controller uses a bank indicated in the bank switching data from the second bank and the third bank,
When the controller receives the second application program for updating from the external device when the second bank is indicated in the bank switching data, the controller stores the second application program in the third bank. Then, after updating the bank switching data to the third bank, the controller is reset by software,
The first application program and the second application program are used as part of the firmware of the controller.
An optical transceiver characterized by that.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013018439A JP2014150426A (en) | 2013-02-01 | 2013-02-01 | Optical transceiver |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013018439A JP2014150426A (en) | 2013-02-01 | 2013-02-01 | Optical transceiver |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014150426A true JP2014150426A (en) | 2014-08-21 |
Family
ID=51573077
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013018439A Pending JP2014150426A (en) | 2013-02-01 | 2013-02-01 | Optical transceiver |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014150426A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016181117A (en) * | 2015-03-24 | 2016-10-13 | 日本電気株式会社 | Multi-cpu system and cpu upgrade method |
WO2017043026A1 (en) * | 2015-09-10 | 2017-03-16 | パナソニックIpマネジメント株式会社 | Control method and communication device employing same |
CN108363577A (en) * | 2018-02-01 | 2018-08-03 | 四川泰瑞创通讯技术股份有限公司 | The device of automatic classifying downloaded optical module firmware program |
JP2019208158A (en) * | 2018-05-30 | 2019-12-05 | 日本電信電話株式会社 | Optical transceiver |
JP7451927B2 (en) | 2018-08-10 | 2024-03-19 | 株式会社デンソー | electronic control unit |
-
2013
- 2013-02-01 JP JP2013018439A patent/JP2014150426A/en active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016181117A (en) * | 2015-03-24 | 2016-10-13 | 日本電気株式会社 | Multi-cpu system and cpu upgrade method |
WO2017043026A1 (en) * | 2015-09-10 | 2017-03-16 | パナソニックIpマネジメント株式会社 | Control method and communication device employing same |
JP2017054372A (en) * | 2015-09-10 | 2017-03-16 | パナソニックIpマネジメント株式会社 | Control method and communication device using the same |
CN108363577A (en) * | 2018-02-01 | 2018-08-03 | 四川泰瑞创通讯技术股份有限公司 | The device of automatic classifying downloaded optical module firmware program |
CN108363577B (en) * | 2018-02-01 | 2023-04-14 | 四川泰瑞创通讯技术股份有限公司 | Device for automatically classifying and downloading optical module firmware programs |
JP2019208158A (en) * | 2018-05-30 | 2019-12-05 | 日本電信電話株式会社 | Optical transceiver |
US11206086B2 (en) | 2018-05-30 | 2021-12-21 | Nippon Telegraph And Telephone Corporation | Optical transceiver |
JP7451927B2 (en) | 2018-08-10 | 2024-03-19 | 株式会社デンソー | electronic control unit |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2014150426A (en) | Optical transceiver | |
US20130222628A1 (en) | Communication device, control method for communication device, and computer-readable recording medium | |
US10651939B2 (en) | Optical transceiver and method of controlling the same | |
US20150279203A1 (en) | Method and device for transmitting control signal of multi-device system | |
JP2018026748A (en) | Optical transceiver and download data writing method thereof | |
EP3385841B1 (en) | Device for connecting external device and updating data | |
WO2019207729A1 (en) | Industrial computer, industrial computer system, operating system update method, and program | |
JP6485152B2 (en) | Multi-CPU system and CPU upgrade method | |
JP6197447B2 (en) | Optical transceiver | |
JP7207013B2 (en) | Optical transceiver control method and optical transceiver | |
JP6485236B2 (en) | Optical transceiver and method for updating firmware of optical transceiver | |
CN111758088A (en) | Method for downloading firmware by chip and chip | |
US11539439B2 (en) | Optical transceiver and control method therefor | |
JP7215389B2 (en) | electronic controller | |
WO2022159090A1 (en) | Electronic device bios updates | |
JP2005318230A (en) | Master slave type serial communication system | |
TW201629757A (en) | Control module of server node and firmware updating method for the control module | |
US11853736B2 (en) | Module, information processing device equipped with same, and method for updating program data to update program data in module | |
JP2017005608A (en) | Optical transceiver and optical transceiver control method | |
JP2016139321A (en) | Optical transceiver | |
US20190212708A1 (en) | Safety control unit, safety control method, and safety control program | |
KR101900729B1 (en) | Method for running PLC operating system | |
JP2017188728A (en) | Control circuit | |
KR20170106797A (en) | Plc module and plc system for firmware multiple download and method for firmware multiple download using the same | |
CN111796841B (en) | Hardware implementation system and method for remote update of double-path ARM |