(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0009】
以下図面を参照して、実施形態に係る処理装置について説明する。但し、本発明の技術的範囲はそれらの実施の形態に限定されない。
【0010】
(実施形態に係る処理装置に関連する処理装置が搭載する制御装置)
実施形態に係る処理装置について説明する前に、実施形態に係る処理装置に関連する処理装置が搭載する制御装置について説明する。
【0011】
図1は、実施形態に係る処理装置に関連する処理装置が搭載する制御装置のブロック図である。
【0012】
制御装置90は、揮発性メモリ91と、不揮発性メモリ92と、演算部93とを有する。
【0013】
揮発性メモリ91は、一例ではSRAMであり、チェックサム領域910と、第1記憶領域911〜第N記憶領域91Nとを有する。第1記憶領域911〜第N記憶領域91Nのそれぞれの大きさは、一例では128バイトである。チェックサム領域910には、第1記憶領域911〜第N記憶領域91Nのそれぞれに記憶される設定値に対応するデータを1バイト毎に合算したチェックサムが第1記憶領域911〜第N記憶領域91Nのそれぞれに関連付けて記憶される。ソフトエラーは、ハード故障に起因するビットエラーではなく、宇宙線等の影響により発生するビットエラーである。第1記憶領域911〜第N記憶領域91Nのそれぞれには、制御装置90が実行するN個の機能のそれぞれに対する設定値が記憶される。
【0014】
不揮発性メモリ92は、一例ではフラッシュメモリであり、他の例ではEEPROMであり、誤り訂正情報領域920と、第1設定値領域921〜第N設定値領域92Nとを有する。誤り訂正情報領域920は、チェックサム領域910に記憶される第1記憶領域911〜第N記憶領域91Nのそれぞれに対応するチェックサムのオリジナルデータを含むチェックサム情報9201が記憶される。誤り訂正情報領域920は、第1記憶領域911〜第N記憶領域91Nのそれぞれに記憶される設定値についてソフトエラー訂正処理を実行する実行頻度を示す実行頻度情報9202が更に記憶される。第1設定値領域921〜第N設定値領域92Nのそれぞれは、揮発性メモリ91の第1記憶領域911〜第N記憶領域91Nのそれぞれに記憶される設定値のオリジナルデータが記憶される。
【0015】
図2は、実行頻度情報9202の一例を示す図である。
【0016】
実行頻度情報9202において、第1記憶領域911〜第3記憶領域913は高頻度でソフトエラー訂正処理が実行される領域として規定され、第4記憶領域914〜第N記憶領域91Nは低頻度でソフトエラー訂正処理が実行される領域として規定される。記憶領域に記憶されるソフトエラー訂正処理の実行頻度が高頻度及び低頻度の何れかであるかは、制御装置90が搭載される処理装置の出荷時に決定されて、不揮発性メモリ92に実行頻度情報9202として書き込まれる。
【0017】
演算部93は、一又は複数個のプロセッサ及びその周辺回路を有する。演算部93は、制御装置90の全体的な動作を統括的に制御するものであり、例えば、CPUである。演算部93は、揮発性メモリ91記憶されている設定値等に基づいて所定の機能を実現する処理を実行する。また、演算部93は、複数の設定値等に対する機能を実現する処理を並列に実行できる。
【0018】
演算部93は、処理部931と、ソフトエラー訂正部932とを有する。これらの各部は、揮発性メモリ91に記憶される設定値により実現される機能モジュールである。
【0019】
処理部931は、揮発性メモリ91の第1記憶領域911〜第N記憶領域91Nのそれぞれに記憶される設定値を使用して、第1記憶領域911〜第N記憶領域91Nのそれぞれに記憶される設定値に対応する所定の処理を実行する。また、処理部931は、複数の設定値に対する機能を実現する処理を並列に実行できる。
【0020】
ソフトエラー訂正部932は、第1記憶領域911〜第N記憶領域91Nのそれぞれに記憶される設定値にソフトエラーが発生しているか否かを検出して、設定値にソフトエラーが発生していることを検出したときに発生したソフトエラーを訂正する。ソフトエラー訂正部932は、誤り訂正情報領域920に規定される実行頻度に基づいて、第1記憶領域911〜第N記憶領域91Nのそれぞれに記憶される設定値のソフトエラー訂正処理を実行する。
【0021】
図3は、ソフトエラー訂正部932による第1記憶領域911〜第N記憶領域91Nのそれぞれに記憶される設定値のソフトエラー訂正処理の実行順序の一例を示す図である。
【0022】
まず、ソフトエラー訂正部932は、第4記憶領域914に記憶される設定値のソフトエラー訂正処理を実行する。次いで、ソフトエラー訂正部932は、第1記憶領域911〜第N記憶領域91Nのそれぞれに記憶される設定値のソフトエラー訂正処理を3回に亘って順次実行する。次いで、ソフトエラー訂正部932は、第5記憶領域915に記憶される設定値のソフトエラー訂正処理を実行した後に、第1記憶領域911〜第N記憶領域91Nのそれぞれに記憶される設定値のソフトエラー訂正処理を3回に亘って順次実行する。以降、ソフトエラー訂正部932は、第6記憶領域916〜第N記憶領域91Nに記憶される設定値のソフトエラー訂正処理を実行した後に、第1記憶領域911〜第N記憶領域91Nに記憶される設定値のソフトエラー訂正処理を3回に亘って実行する。
【0023】
ソフトエラー訂正部932は、誤り訂正情報領域920において高頻度でソフトエラー訂正処理が実行される領域として規定される第1記憶領域911〜第3記憶領域913のソフトエラー訂正処理を10回に3回、すなわち3.3回に1回の頻度で実行する。一方、ソフトエラー訂正部932は、誤り訂正情報領域920において低頻度でソフトエラー訂正処理が実行される領域として規定される第4記憶領域914〜第N記憶領域91Nのソフトエラー訂正処理を(N−3)×10回に1回の頻度で実行する。
【0024】
(実施形態に係る処理装置に関連する処理装置に搭載される制御装置によるソフトエラー訂正処理)
図4は、ソフトエラー訂正部932によるソフトエラー訂正処理のフローチャートである。
図4に示すソフトエラー訂正処理は、予め不揮発性メモリ92に記憶されているプログラムに基づいて、主に演算部93により制御装置90の各要素と協働して実行される。
図4に示す処理は、演算部93において所定の設定時間毎に実行される。
【0025】
まず、ソフトエラー訂正部932は、誤り訂正情報領域920を参照してソフトエラー訂正処理を実行する記憶領域を決定する(S901)。次いで、ソフトエラー訂正部932は、S901の処理で決定された記憶領域に記憶される設定値に対応するデータを1バイトずつ合算して、S901の処理で決定された記憶領域に記憶される設定値に対応するチェックサムを演算する(S902)。次いで、ソフトエラー訂正部932は、チェックサム領域910から、S901の処理で決定された記憶領域に関連付けて記憶されたチェックサムを取得する(S903)。次いで、ソフトエラー訂正部932は、S902の処理で演算されたチェックサムと、S903の処理で取得されたチェックサムとが一致するか否かを判定する(S904)。ソフトエラー訂正部932は、S902の処理で演算されたチェックサムとS903の処理で取得されたチェックサムとが一致すると判定する(S904−YES)と、処理を終了する。一方、ソフトエラー訂正部932は、S902の処理で演算されたチェックサムとS903の処理で取得されたチェックサムとが一致しないと判定する(S904−NO)と、対象の記憶領域に記憶される設定値に対応するデータを訂正する(S905)。ソフトエラー訂正部932は、不揮発性メモリ92の対応する設定値領域に記憶される設定値を取得し、取得した設定値に記憶領域に記憶される設定値を書き換えることで、対象の記憶領域に記憶される設定値に対応するデータを訂正する。
【0026】
制御装置90は、記憶領域毎にソフトエラー訂正処理の実行頻度を、搭載される処理装置の出荷時に決定し、処理装置の出荷時に決定された実行頻度でソフトエラー訂正処理をする。制御装置90は、処理装置の出荷時に決定された実行頻度でソフトエラー訂正処理を実行するので、処理装置の動作中に信号の異常及び温度変化等により外的な状況が変化して処理装置の状態が変化しても、ソフトエラー訂正処理を実行する頻度は変化しない。制御装置90は、処理装置の状態が変化してもソフトエラー訂正処理を実行する頻度を変更しないので、処理装置の状態の変化によって、記憶する設定値の重要性が高くなった記憶領域に対して十分な頻度でソフトエラー訂正処理が実行されない。
【0027】
(第1実施形態に係る処理装置の構成及び機能)
図5は、第1実施形態に係る制御装置に関連する制御装置を含む送受信モジュールのブロック図である。送受信モジュールは、実施形態に係る処理装置の一例である。
【0028】
光送受信モジュール100は、電気信号受信装置101と、光信号送信装置102と、光信号受信装置103と、電気信号送信装置104と、制御装置1とを有する。
【0029】
電気信号受信装置101は、光ネットワークと接続される不図示の上位装置から入力電気信号を受信し、内蔵する不図示のクロックデータリカバリ(Clock Data Recovery、CDR)回路により、受信した入力電気信号の波形を成形した電気信号を生成する。電気信号受信装置101は、生成した電気信号を光信号送信装置102に出力する。光信号送信装置102は、電気信号受信装置101から入力された電気信号を光信号に変換して出力光信号を生成し、生成した出力光信号を不図示の下位装置に出力する。
【0030】
光信号受信装置103は、不図示の下位装置から入力される入力光信号を電気信号に変換し、変換した電気信号を電気信号送信装置104に出力する。電気信号送信装置104は、電気信号送信装置104から入力される電気信号の波形を、内蔵する不図示のCDR回路により成形して出力電気信号を生成し、生成した出力電気信号を、不図示の上位装置に送信する。
【0031】
制御装置1は、電気信号受信装置101、光信号送信装置102と、光信号受信装置103、及び電気信号送信装置104を制御するための種々の処理を実行する。また、制御装置は、1つの設定値を記憶する記憶領域に対する誤り訂正部による訂正頻度が高く変更されたときに、訂正頻度が高く変更された記憶領域以外の他の1つの記憶領域に対する誤り訂正処理による訂正頻度を、訂正頻度が高く変更された記憶領域の訂正頻度よりも低くする。併せて、制御装置1は、1つの設定値を記憶する記憶領域に対する誤り訂正部による訂正頻度が低く変更されたときに、訂正頻度が低く変更された記憶領域以外の他の1つの記憶領域に対する誤り訂正処理による訂正頻度を、訂正頻度が低く変更された記憶領域の訂正頻度よりも高くするを有する。
【0032】
図6は、制御装置1のブロック図である。
【0033】
制御装置1は、揮発性メモリ11と、不揮発性メモリ12と、演算部13とを有する。演算部13は、所定の処理を実行する処理部14と、処理部14が実行中の処理を記憶する処理状態記憶部15と、ソフトエラー訂正処理を実行するソフトエラー訂正部16と、ソフトエラー訂正処理を実行する頻度を変更する訂正頻度変更部17とを有する。
【0034】
揮発性メモリ11は、一例ではSRAMであり、チェックサム領域110と、10個の第1記憶領域111〜第10記憶領域11Aとを有する。第1記憶領域111〜第10記憶領域11Aのそれぞれの大きさは、一例では128バイトである。チェックサム領域110には、第1記憶領域111〜第10記憶領域11Aのそれぞれに記憶される設定値に対応するデータを1バイト毎に合算したチェックサムが第1記憶領域111〜第10記憶領域11Aのそれぞれに関連付けて記憶される。第1記憶領域111〜第10記憶領域11Aのそれぞれには、制御装置1が実行する10個の機能のそれぞれに対する設定値が記憶される。
【0035】
不揮発性メモリ12は、一例ではフラッシュメモリであり、他の例ではEEPROMであり、誤り訂正情報領域120と、10個の第1設定値領域121〜第10設定値領域12Aとを有する。誤り訂正情報領域120は、チェックサム情報1201と、実行頻度情報1202と、機能対テーブル1203とを記憶する。チェックサム情報1201は、チェックサム領域110に記憶される第1記憶領域111〜第10記憶領域11Aのそれぞれに対応するチェックサムのオリジナルデータを含む。実行頻度情報1202は、第1記憶領域111〜第10記憶領域11Aのそれぞれに記憶される設定値についてソフトエラー訂正処理を実行する実行頻度を示す。
【0036】
図7は、実行頻度情報1202の一例を示す図である。
【0037】
実行頻度情報1202において、第1記憶領域111〜第3記憶領域113は高頻度でソフトエラー訂正処理が実行される領域として規定され、第4記憶領域114〜第10記憶領域11Aは低頻度でソフトエラー訂正処理が実行される領域として規定される。実行頻度情報9202に記憶されるソフトエラー訂正処理の実行頻度が高頻度及び低頻度の何れかであるかは、処理部14が実行する処理に応じて変更可能である。具体的には、実行頻度情報9202に記憶されるソフトエラー訂正処理の実行頻度は、機能対テーブル1203に記憶される一対の対応する処理の何れの処理が実行されたときに変更される。
【0038】
図8は、機能対テーブル1203の一例を示す図である。
【0039】
機能対テーブル1203は、第6記憶領域116に記憶される設定値により実行される消光機能と、第2記憶領域112に記憶される設定値により実行される光パワー制御とを第1機能対として記憶する。また、機能対テーブル1203は、第3記憶領域113に記憶される設定値により実行される状態モニタと、第4記憶領域114に記憶される設定値により実行される温度制御とを第2機能対として記憶する。
【0040】
第1機能対として機能対テーブル1203に記憶される消光機能と光パワー制御とは、何れか一方の機能が実行されるときに他方の機能が停止される。同様に、第2機能対として機能対テーブル1203に記憶される状態モニタと温度制御とは、何れか一方の機能が実行されるときに他方の機能が停止される。
【0041】
第1設定値領域121〜第10設定値領域12Aのそれぞれは、揮発性メモリ11の第1記憶領域111〜第10記憶領域11Aのそれぞれに記憶される設定値のオリジナルデータが記憶される。
【0042】
演算部13は、一又は複数個のプロセッサ及びその周辺回路を有する。演算部13は、制御装置1の全体的な動作を統括的に制御するものであり、例えば、CPUである。演算部13は、揮発性メモリ11の第1記憶領域111〜第10記憶領域11Aのそれぞれに記憶されている設定値に基づいて所定の機能を実現する処理を実行する。また、演算部13は、複数の設定値に対する機能を実現する処理を並列に実行できる。
【0043】
処理部14は、外部インターフェイス部140と、光パワー制御部141と、状態モニタ部142と、温度制御部143と、モニタ信号出力機能部144とを有する。処理部14は、消光機能部145と、警報機能部146と、変調制御部147と、基準信号出力機能部148と、受信信号しきい値制御部149とを更に有する。これらの各部、処理状態記憶部15、ソフトエラー訂正部16及び訂正頻度変更部17は、揮発性メモリ11に記憶される設定値により実現される機能モジュールである。外部インターフェイス部140は第1記憶領域111にされる設定値により実現され、光パワー制御部141は第2記憶領域112にされる設定値により実現され、状態モニタ部142は第3記憶領域113にされる設定値により実現される。温度制御部143は第4記憶領域114にされる設定値により実現され、モニタ信号出力機能部144は第5記憶領域115にされる設定値により実現され、消光機能部145は第6記憶領域116にされる設定値により実現される。警報機能部146は第7記憶領域117にされる設定値により実現され、変調制御部147は第8記憶領域118にされる設定値により実現され、基準信号出力機能部148は第9記憶領域119にされる設定値により実現される。受信信号しきい値制御部149は、第10記憶領域11Aにされる設定値により実現される。
【0044】
外部インターフェイス部140は、MDIO等の通信規格に基づいて、不図示の上位装置との間で種々の設定・情報を送受信する通信処理を実行する。光パワー制御部141は、光信号送信装置102が出力光信号を出力するときの光パワーを制御する。例えば、光パワー制御部141は、出力光信号を出力するときの光パワーが一定になるようにレーザダイオードを制御する。状態モニタ部142は、光送受信モジュール100の種々の状態を監視する。状態モニタ部142は、光信号送信装置102が不図示の温度センサに接続され、光信号送信装置102が出力光信号を出力するときに使用するレーザダイオード等の光送受信モジュール100に総裁される種々の素子の温度を監視する。また、状態モニタ部142は、不図示のフォトダイオード及びTAPフォトダイオードと接続され、光信号送信装置102が出力する出力光信号の光強度、及び光信号受信装置103が入力される入力光信号の光強度を監視する。
【0045】
温度制御部143は、状態モニタ部142が温度センサから取得した温度に応じて、電気信号受信装置101及び電気信号送信装置104のCDR回路等の動作を制御して、生成される電気信号の波形を制御する。モニタ信号出力機能部144は、不図示の上位装置から受信した入力電気信号、及び上位装置に送信する出力電気信号のクロックのタイミング情報を、外部インターフェイス部140を介して上位装置に出力する。
【0046】
消光機能部145は、光送受信モジュール100に入力される信号の状態に応じて、電気信号受信装置101、光信号送信装置102、光信号受信装置103、及び電気信号送信装置104の動作の一部又は全てを停止する。消光機能部145は、電気信号受信装置101が上位装置から入力電気信号を送信されていないときに、電気信号受信装置101、及び光信号送信装置102の動作の一部又は全てを停止する。また、消光機能部145は、光信号受信装置103が下位装置から入力光信号を送信されていないときに、光信号受信装置103、及び電気信号送信装置104の動作の一部又は全てを停止する。
【0047】
警報機能部146は、温度の異常上昇、光信号送信装置102が出力光信号を出力するときの光パワーの異常上昇及び異常下降を検出し、検出した異常を示す警報情報を外部インターフェイス部140を介して上位装置に出力する。変調制御部147は、光信号発信装置102が光信号を生成するときの変調処理を制御する。
【0048】
基準信号出力機能部148は、光送受信モジュール100の起動時等において、疑似ランダム・パターン(Pseudo Random Bit Sequence、PRBS)等の伝送用テストパターンを生成する。基準信号出力機能部148は生成した伝送用テストパターンを光信号送信装置102に出力し、光信号送信装置102は入力された伝送用パターンを下位装置に送信する。受信信号しきい値制御部149は、電気信号送信装置104が受信する入力光信号の光パワーに応じて、電気信号送信装置104が入力光信号に対応する信号値を判定するときのしきい値を制御する。
【0049】
機能対テーブル1203に第1記憶対として記憶される消光機能を実行する消光機能部145と光パワー制御を実行する光パワー制御部141とは、何れか一方が機能を実行するときに他方が機能を停止する。同様に、第2機能対として機能対テーブル1203に記憶される状態モニタを実行する状態モニタ部142と温度制御を実行する温度制御部143とは、何れか一方が機能を実行するときに他方が機能を停止する。
【0050】
処理状態記憶部15は、処理部14の外部インターフェイス部140〜受信信号しきい値制御部149の何れが実行中の処理を記憶する。処理状態記憶部15は、外部インターフェイス部140〜受信信号しきい値制御部149の中で何れの機能モジュールが処理を実行中であるかを示す処理フラグを立てる。例えば、処理状態記憶部15は、外部インターフェイス部140が処理を開始したときに外部インターフェイス部140が処理を実行中であることを示す処理フラグを立てる。処理状態記憶部15は、外部インターフェイス部140が処理を開始したときに、外部インターフェイス部140が処理を実行中であることを示す処理フラグを降ろす。
【0051】
(第1実施形態に係る制御装置によるソフトエラー訂正処理及び訂正頻度変更処理)
図9(a)は演算部13によるソフトエラー訂正処理及び訂正頻度変更処理のフローチャートであり、
図9(b)は
図9(a)に示すS102の処理のより詳細な処理を示すフローチャートである。
図9(a)に示すソフトエラー訂正処理及び訂正頻度変更処理は、予め不揮発性メモリ12に記憶されているプログラムに基づいて、主に演算部13により制御装置1の各要素と協働して実行される。
図9(a)に示す処理は、演算部13において所定の設定時間毎に実行される。また、
図9(a)において、ソフトエラー訂正処理及び訂正頻度変更処理は一連の処理として示されるが、ソフトエラー訂正処理及び訂正頻度変更処理は別個の処理として実行されてもよい。
【0052】
まず、ソフトエラー訂正部16は、誤り訂正情報領域120を参照してソフトエラー訂正処理を実行する(S101)。ソフトエラー訂正部16が実行するソフトエラー訂正処理は、
図4を参照して説明されたソフトエラー訂正部932が実行するソフトエラー訂正処理と同様なので、ここでは詳細な説明は省略する。
【0053】
次いで、訂正頻度変更部17は、処理部14が実行する処理に応じてソフトエラー訂正処理を実行する頻度を変更する(S102)。
【0054】
まず、訂正頻度変更部17は、処理状態記憶部15が記憶する処理部14の処理状態を取得する(S111)。次いで、訂正頻度変更部17は、処理状態記憶部15が実行中であると記憶する処理モジュールの設定値が記憶される記憶領域が、実行頻度情報1202において高頻度に記憶されているか否かを判定する(S112)。訂正頻度変更部17は、処理状態記憶部15が実行中であると記憶する処理モジュールの設定値が記憶される記憶領域が、実行頻度情報1202において高頻度に記憶されていると判定した(S112−YES)とき、処理を終了する。
【0055】
訂正頻度変更部17は、実行中であると記憶される処理モジュールの設定値が記憶される記憶領域が、実行頻度情報1202において低頻度に記憶されていると判定した(S112−NO)、実行頻度情報1202を変更するか否かを判定する(S113)。訂正頻度変更部17は、機能対テーブル1203を参照して、実行頻度情報1202において低頻度に記憶されていると判定された記憶領域に対応する機能モジュールが機能対を有するか否かを判定して、実行頻度情報1202を変更するか否かを判定する。訂正頻度変更部17は、実行頻度情報1202において低頻度に記憶されていると判定された記憶領域に対応する機能モジュールが機能対を有するときに、実行頻度情報1202を変更する、と判定する。一方、訂正頻度変更部17は、実行頻度情報1202において低頻度に記憶されていると判定された記憶領域に対応する機能モジュールが機能対を有していないときに、実行頻度情報1202を変更しない、と判定する。
【0056】
訂正頻度変更部17は、実行中であり且つ実行頻度情報1202において設定値が低頻度に記憶されていると判定した機能モジュールが機能対を有していないので、実行頻度情報1202を変更しないと判定する(S113−NO)と、処理を終了する。
【0057】
訂正頻度変更部17は、実行中であり且つ設定値が低頻度に記憶されていると判定した機能モジュールが機能対を有しているので、実行頻度情報1202を変更すると判定する(S113−YES)と、実行頻度情報1202を変更する(S114)。訂正頻度変更部17は、実行中であり且つ設定値が低頻度に記憶されていると判定した機能モジュールの設定値が記憶される記憶領域を低頻度から高頻度に変更する。併せて、訂正頻度変更部17は、機能対テーブル1203に機能対として記憶された機能モジュールの設定値が記憶される記憶領域を高頻度から低頻度に変更する。
【0058】
例えば、訂正頻度変更部17は、実行中であり且つ設定値が低頻度に記憶されていると判定した消光機能の設定値が記憶される第6記憶領域116を低頻度から高頻度に変更する。併せて、訂正頻度変更部17は、機能対テーブル1203に消光機能と共に第1機能対として記憶された光パワー制御の設定値が記憶される第2記憶領域112を高頻度から低頻度に変更する。
【0059】
また、訂正頻度変更部17は、実行中であり且つ設定値が低頻度に記憶されていると判定した状態モニタの設定値が記憶される第3記憶領域113を低頻度から高頻度に変更する。併せて、訂正頻度変更部17は、機能対テーブル1203に消光機能と共に第2機能対として記憶された温度制御の設定値が記憶される第4記憶領域114を高頻度から低頻度に変更する。
【0060】
(第1実施形態に係る制御装置の作用効果)
第1実施形態に係る制御装置は、処理部が実行する処理に応じて、ソフトエラー訂正等の誤り訂正処理を実行する訂正頻度を変更することで、処理装置の出荷後の外的な状況の変化に応じて、誤り訂正の実行頻度を変更することができる。
【0061】
また、第1実施形態に係る制御装置は、一方が実行されるとき他方が停止する機能モジュールの対を機能対として記憶することで、機能対の実行中の一方の機能誤り訂正処理を高頻度とし且つ停止中の他方の機能誤り訂正処理を低頻度とすることができる。
【0062】
図10(a)は、光パワー制御部141が光パワー制御を実行中であり且つ消光機能部145が消光機能を停止中であるときの実行頻度情報1202を示す図である。
図10(b)は、光パワー制御部141が光パワー制御を停止中であり且つ消光機能部145が消光機能を実行中であるときの実行頻度情報1202´を示す図である。
図11(a)は、光パワー制御部141が光パワー制御を実行中であり且つ消光機能部145が消光機能を停止中であるときのソフトエラー訂正処理の実行順序の一例を示す図である。
図11(b)は、光パワー制御部141が光パワー制御を停止中であり且つ消光機能部145が消光機能を実行中であるときのソフトエラー訂正処理の実行順序の一例を示す図である。
【0063】
制御装置1は、光パワー制御部141が光パワー制御を実行中であり且つ消光機能部145が消光機能を停止中であるとき、光パワー制御の設定値を記憶する第2記憶領域112のソフトエラー訂正処理の実行頻度を高頻度に設定する。併せて、制御装置1は、光パワー制御部141が光パワー制御を実行中であり且つ消光機能部145が消光機能を停止中であるとき、消光機能の設定値を記憶する第6記憶領域116のソフトエラー訂正処理の実行頻度を低頻度に設定する。
【0064】
制御装置1は、光パワー制御部141が光パワー制御を実行中であり且つ消光機能部145が消光機能を停止中であるとき、パワー制御の設定値を記憶する第2記憶領域112のソフトエラー訂正処理を10回に3回、すなわち3.3回に1回の頻度で実行する。一方、制御装置1は、光パワー制御部141が光パワー制御を実行中であり且つ消光機能部145が消光機能を停止中であるとき、消光機能の設定値を記憶する第6記憶領域116のソフトエラー訂正処理を70(=7×10)回に1回の頻度で実行する。
【0065】
制御装置1は、光パワー制御部141が光パワー制御を停止中であり且つ消光機能部145が消光機能を実行中であるとき、光パワー制御の設定値を記憶する第2記憶領域112のソフトエラー訂正処理の実行頻度を低頻度に設定する。併せて、制御装置1は、光パワー制御部141が光パワー制御を停止中であり且つ消光機能部145が消光機能を実行中であるとき、消光機能の設定値を記憶する第6記憶領域116のソフトエラー訂正処理の実行頻度を高頻度に設定する。
【0066】
制御装置1は、光パワー制御部141が光パワー制御を停止中であり且つ消光機能部145が消光機能を実行中であるとき、パワー制御の設定値を記憶する第2記憶領域112のソフトエラー訂正処理を70(=7×10)回に1回の頻度で実行する。一方、制御装置1は、光パワー制御部141が光パワー制御を停止中であり且つ消光機能部145が消光機能を実行中であるとき、消光機能の設定値を記憶する第6記憶領域116のソフトエラー訂正処理を3.3回に1回の頻度で実行する。
【0067】
(第2実施形態に係る処理装置に搭載される制御装置の構成及び機能)
図12は、第2実施形態に係る処理装置に搭載される制御装置のブロック図である。第2実施形態に係る処理装置は、制御装置2が制御装置1の代わりに搭載される以外は光送受信モジュール100と同様の構成を有するので図示及び詳細な説明は省略する。
【0068】
制御装置2は、1つの設定値を記憶する記憶領域に対する誤り訂正部による訂正頻度が高く変更されたときに、訂正頻度が高く変更された記憶領域以外の他の1つの記憶領域に対する誤り訂正処理による訂正頻度を、訂正頻度が高く変更された記憶領域の訂正頻度よりも低くする。併せて、制御装置2は、1つの設定値を記憶する記憶領域に対する誤り訂正部による訂正頻度が低く変更されたときに、訂正頻度が低く変更された記憶領域以外の他の1つの記憶領域に対する誤り訂正処理による訂正頻度を、訂正頻度が低く変更された記憶領域の訂正頻度よりも高くする。
【0069】
制御装置2は、不揮発性メモリ22及び演算部23を不揮発性メモリ12及び演算部13の代わりに有する制御装置1と相違する。不揮発性メモリ22は、誤り訂正情報領域220を誤り訂正情報領域120の代わりに有することが不揮発性メモリ12と相違する。誤り訂正情報領域220は、機能対テーブル1203を有さないことが誤り訂正情報領域120と相違する。演算部23は、訂正頻度変更部27を訂正頻度変更部17の代わりに有することが演算部13と相違する。誤り訂正情報領域220及び訂正頻度変更部27以外の制御装置2の構成要素の構成及び機能は、同一符号が付された制御装置1の構成要素の構成及び機能と同一なので、ここでは詳細な説明は省略する。
【0070】
(第2実施形態に係る制御装置によるソフトエラー訂正処理及び訂正頻度変更処理)
図13(a)は演算部23によるソフトエラー訂正処理及び訂正頻度変更処理のフローチャートであり、
図13(b)は
図13(a)に示すS202の処理のより詳細な処理を示すフローチャートである。
図13(a)に示すソフトエラー訂正処理及び訂正頻度変更処理は、予め不揮発性メモリ22に記憶されているプログラムに基づいて、主に演算部23により制御装置2の各要素と協働して実行される。
図13(a)に示す処理は、演算部23において所定の設定時間毎に実行される。また、
図13(a)において、ソフトエラー訂正処理及び訂正頻度変更処理は一連の処理として示されるが、ソフトエラー訂正処理及び訂正頻度変更処理は別個の処理として実行されてもよい。
【0071】
まず、ソフトエラー訂正部16は、誤り訂正情報領域220を参照してソフトエラー訂正処理を実行する(S201)。ソフトエラー訂正部16が実行するソフトエラー訂正処理は、
図4を参照して説明されたソフトエラー訂正部932が実行するソフトエラー訂正処理と同様なので、ここでは詳細な説明は省略する。
【0072】
次いで、訂正頻度変更部27は、処理部14が実行する処理に応じてソフトエラー訂正処理を実行する頻度を変更する(S202)。
【0073】
まず、訂正頻度変更部27は、処理状態記憶部15が記憶する処理部14の処理状態を取得する(S211)。次いで、訂正頻度変更部27は、処理状態記憶部15が実行中であると記憶する処理モジュールの設定値が記憶される記憶領域が、実行頻度情報1202において高頻度に記憶されているか否かを判定する(S212)。訂正頻度変更部27は、処理状態記憶部15が実行中であると記憶する処理モジュールの設定値が記憶される記憶領域が、実行頻度情報1202において高頻度に記憶されていると判定した(S212−YES)とき、処理はS214に進む。
【0074】
訂正頻度変更部27は、実行中であると記憶される処理モジュールの設定値が記憶される記憶領域が、実行頻度情報1202において低頻度に記憶されていると判定した(S212−NO)、実行頻度情報1202を変更する(S213)。訂正頻度変更部27は、実行中であると記憶される処理モジュールの設定値が記憶される記憶領域を、実行頻度情報1202において低頻度から高頻度に移動する。
【0075】
次いで、訂正頻度変更部27は、処理状態記憶部15が停止中であると記憶する処理モジュールの設定値が記憶される記憶領域が、実行頻度情報1202において低頻度に記憶されているか否かを判定する(S214)。訂正頻度変更部27は、処理状態記憶部15が停止中であると記憶する処理モジュールの設定値が記憶される記憶領域が、実行頻度情報1202において低頻度に記憶されていると判定した(S214−YES)とき、処理を終了する。
【0076】
訂正頻度変更部27は、停止中であると記憶される処理モジュールの設定値が記憶される記憶領域が、実行頻度情報1202において高頻度に記憶されていると判定した(S214−NO)、実行頻度情報1202を変更する(S215)。訂正頻度変更部27は、停止中であると記憶される処理モジュールの設定値が記憶される記憶領域を、実行頻度情報1202において高頻度から低頻度に移動する。
【0077】
図14(a)は、警報機能部146が警報機能を停止中であるときの実行頻度情報1202を示す図である。
図14(b)は、制御装置2の温度が上昇する等して、警報機能部146が警報機能を実行中であるときの実行頻度情報1202´´を示す図である。
図15(a)は、警報機能部146が警報機能を停止中であるときのソフトエラー訂正処理の実行順序の一例を示す図である。
図15(b)は、警報機能部146が警報機能を実行中であるときのソフトエラー訂正処理の実行順序の一例を示す図である。
【0078】
制御装置2は、警報機能部146が警報機能を停止中であるとき、警報機能の設定値を記憶する第7記憶領域117のソフトエラー訂正処理の実行頻度を低頻度に設定する。一方、制御装置2は、警報機能部146が警報機能を実行中であるとき、警報機能の設定値を記憶する第7記憶領域117のソフトエラー訂正処理の実行頻度を高頻度に設定する。
【0079】
制御装置2は、警報機能部146が警報機能を動作中であるとき、警報機能の設定値を記憶する第7記憶領域117のソフトエラー訂正処理を40回に9回、すなわち4.4回に1回の頻度で実行する。一方、制御装置1は、警報機能部146が警報機能を停止中であるとき、警報機能の設定値を記憶する第7記憶領域117のソフトエラー訂正処理を70(=7×10)回に1回の頻度で実行する。
【0080】
制御装置2は、警報機能部146が警報機能を開始することに応じて、警報機能の設定値を記憶する第7記憶領域117のソフトエラー訂正処理の実行頻度を低頻度から高頻度に変更する。第7記憶領域117のソフトエラー訂正処理の実行頻度が低頻度から高頻度に変更されることに応じて、高頻度に分類される第1記憶領域111〜第3記憶領域113のソフトエラー訂正処理の実行頻度は、3.3回に1回から4.4回に一回に一律減少する。
【0081】
制御装置2は、警報機能部146が警報機能を停止することに応じて、警報機能の設定値を記憶する第7記憶領域117のソフトエラー訂正処理の実行頻度を高頻度から低頻度に変更する。第7記憶領域117のソフトエラー訂正処理の実行頻度が高頻度から低頻度に変更されることに応じて、高頻度に分類される第1記憶領域111〜第3記憶領域113のソフトエラー訂正処理の実行頻度は、4.4回に1回から3.3回に一回に一律増加する。
【0082】
(第2実施形態に係る制御装置の作用効果)
第2実施形態に係る制御装置は、処理部が実行する処理に応じて、ソフトエラー訂正等の誤り訂正処理を実行する訂正頻度を変更することで、処理装置の出荷後の外的な状況の変化に応じて、誤り訂正の実行頻度を変更することができる。
【0083】
また、第2実施形態に係る制御装置は、機能モジュールが処理を開始することに応じて当該機能モジュールのエラー訂正処理の実行頻度を低頻度から高頻度に変更することで、高頻度に分類される機能モジュールのエラー訂正処理の実行頻度を一律減少させる。また、第2実施形態に係る制御装置は、機能モジュールが処理を開始することに応じて当該機能モジュールのエラー訂正処理の実行頻度を低頻度から高頻度に変更することで、低頻度に分類される機能モジュールのエラー訂正処理の実行頻度を一律増加させる。
【0084】
また、第2実施形態に係る制御装置は、機能モジュールが処理を停止することに応じて当該機能モジュールのエラー訂正処理の実行頻度を高頻度から低頻度に変更することで、高頻度に分類される機能モジュールのエラー訂正処理の実行頻度を一律増加させる。また、第2実施形態に係る制御装置は、機能モジュールが処理を停止することに応じて当該機能モジュールのエラー訂正処理の実行頻度を高頻度から低頻度に変更することで、低頻度に分類される機能モジュールのエラー訂正処理の実行頻度を一律減少させる。
【0085】
(第3実施形態に係る処理装置に搭載される制御装置の構成及び機能)
図16は、第3実施形態に係る処理装置に搭載される制御装置のブロック図である。第3実施形態に係る処理装置は、制御装置3が制御装置1の代わりに搭載される以外は光送受信モジュール100と同様の構成を有するので図示及び詳細な説明は省略する。
【0086】
制御装置3は、動作状態が変化した機能モジュールが機能対テーブルに記憶されて機能対となる機能モジュールを有するか否かに応じて実行頻度情報を変更する処理を変化させる。制御装置3は、動作状態が変化した機能モジュールと機能対となる機能モジュールがあるとき、制御装置1と同様に、動作状態が変化した機能モジュールと機能対となる機能モジュールとを高頻度と低頻度との間で入れ替える。制御装置3は、動作状態が変化した機能モジュールと機能対となる機能モジュールがないとき、制御装置2と同様に、動作状態が変化した機能モジュールのみを高頻度と低頻度との間で移動する。
【0087】
制御装置3は、演算部33を演算部13の代わりに有する制御装置1と相違する。演算部33は、訂正頻度変更部37を訂正頻度変更部17の代わりに有することが演算部13と相違する。訂正頻度変更部37以外の制御装置3の構成要素の構成及び機能は、同一符号が付された制御装置1の構成要素の構成及び機能と同一なので、ここでは詳細な説明は省略する。訂正頻度変更部37は、処理状態取得部371と、処理状態判定部372と、機能対判定部373と、第1訂正頻度変更部374と、第2訂正頻度変更部375とを有する。
【0088】
(第3実施形態に係る制御装置によるソフトエラー訂正処理及び訂正頻度変更処理)
図17(a)は演算部33によるソフトエラー訂正処理及び訂正頻度変更処理のフローチャートであり、
図17(b)は
図17(a)に示すS302の処理のより詳細な処理を示すフローチャートである。
図17(a)に示すソフトエラー訂正処理及び訂正頻度変更処理は、予め不揮発性メモリ12に記憶されているプログラムに基づいて、主に演算部13により制御装置3の各要素と協働して実行される。
図17(a)に示す処理は、演算部33において所定の設定時間毎に実行される。また、
図17(a)において、ソフトエラー訂正処理及び訂正頻度変更処理は一連の処理として示されるが、ソフトエラー訂正処理及び訂正頻度変更処理は別個の処理として実行されてもよい。
【0089】
まず、ソフトエラー訂正部16は、誤り訂正情報領域120を参照してソフトエラー訂正処理を実行する(S301)。ソフトエラー訂正部16が実行するソフトエラー訂正処理は、
図4を参照して説明されたソフトエラー訂正部932が実行するソフトエラー訂正処理と同様なので、ここでは詳細な説明は省略する。
【0090】
次いで、訂正頻度変更部37は、処理部14が実行する処理に応じてソフトエラー訂正処理を実行する頻度を変更する(S302)。
【0091】
まず、処理状態取得部371は、処理状態記憶部15が記憶する処理部14の処理状態を取得する(S311)。次いで、処理状態判定部372は、処理状態取得部371が前回取得した処理状態と、処理状態取得部371が今回取得した処理状態との間で機能モジュールの動作状態が変化したか否かを判定する(S312)。処理状態判定部372が機能モジュールの動作状態が変化していないと判定する(S312−NO)と、処理は終了する。
【0092】
処理状態判定部372が機能モジュールの動作状態が変化していると判定する(S312−YES)と、機能対判定部373は、状態が変化した機能モジュールに機能対があるか否かを判定する(S313)。
【0093】
機能対判定部373によって状態が変化した機能モジュールに機能対があると判定される(S313−YES)と、第1訂正頻度変更部374は、実行頻度情報を変更するか否かを判定する(S314)。第1訂正頻度変更部374は、機能モジュールが停止状態から動作状態に変化したとき、機能モジュールの設定値が記憶される記憶領域が実行頻度情報1202において高頻度に記憶されているとき、実行頻度情報を変更しないと判定する。また、第1訂正頻度変更部374は、機能モジュールが動作状態から停止状態に変化したとき、機能モジュールの設定値が記憶される記憶領域が実行頻度情報1202において低頻度に記憶されているとき、実行頻度情報を変更しないと判定する。第1訂正頻度変更部374によって実行頻度情報を変更しないと判定される(S314−NO)と、処理は終了する。
【0094】
一方、第1訂正頻度変更部374は、機能モジュールが停止状態から動作状態に変化したとき、機能モジュールの設定値が記憶される記憶領域が実行頻度情報1202において低頻度に記憶されているとき、実行頻度情報を変更すると判定する。また、第1訂正頻度変更部374は、機能モジュールが動作状態から停止状態に変化したとき、機能モジュールの設定値が記憶される記憶領域が実行頻度情報1202において高頻度に記憶されているとき、実行頻度情報を変更すると判定する。第1訂正頻度変更部374は、実行頻度情報を変更しないと判定する(S314−YES)と、状態が変化した機能モジュール頻度及び当該機能モジュールの機能対である機能モジュールを高頻度から低頻度又は低頻度から高頻度に変更する(S315)。
【0095】
機能対判定部373によって状態が変化した機能モジュールに機能対がないと判定される(S313−NO)と、第2訂正頻度変更部375は、実行頻度情報を変更するか否かを判定する(S316)。第2訂正頻度変更部375は、機能モジュールが停止状態から動作状態に変化したとき、機能モジュールの設定値が記憶される記憶領域が実行頻度情報1202において高頻度に記憶されているとき、実行頻度情報を変更しないと判定する。また、第2訂正頻度変更部375は、機能モジュールが動作状態から停止状態に変化したとき、機能モジュールの設定値が記憶される記憶領域が実行頻度情報1202において低頻度に記憶されているとき、実行頻度情報を変更しないと判定する。第2訂正頻度変更部375によって実行頻度情報を変更しないと判定される(S316−NO)と、処理は終了する。
【0096】
一方、第2訂正頻度変更部375は、機能モジュールが停止状態から動作状態に変化したとき、機能モジュールの設定値が記憶される記憶領域が実行頻度情報1202において低頻度に記憶されているとき、実行頻度情報を変更すると判定する。また、第2訂正頻度変更部375は、機能モジュールが動作状態から停止状態に変化したとき、機能モジュールの設定値が記憶される記憶領域が実行頻度情報1202において高頻度に記憶されているとき、実行頻度情報を変更すると判定する。第2訂正頻度変更部375は、実行頻度情報を変更しないと判定する(S316−YES)と、状態が変化した機能モジュール頻度を高頻度から低頻度又は低頻度から高頻度に変更する(S317)。
【0097】
(第3実施形態に係る制御装置の作用効果)
第3実施形態に係る制御装置は、動作状態が変化した機能モジュールと機能対となる機能モジュールがあるか否かに応じて実行頻度情報の変更方法を変更することで、実行頻度情報を機能モジュールに応じてより適切に変更することができる。
【0098】
(第4実施形態に係る処理装置に搭載される制御装置の構成及び機能)
図18は、第4実施形態に係る処理装置に搭載される制御装置のブロック図である。第4実施形態に係る処理装置は、制御装置4が制御装置1の代わりに搭載される以外は光送受信モジュール100と同様の構成を有するので図示及び詳細な説明は省略する。
【0099】
制御装置4は、光送受信モジュール100の状態に応じて、誤り訂正の実行頻度を変更する。光送受信モジュール100は
図19に示す低消費電力状態、消光状態及び発光状態の3つの状態で動作する。低消費電力状態は光送受信モジュール100が電気信号及び光信号を全く送受信しない状態であり、消光状態は光送受信モジュール100が電気信号のみ送受信し、光信号を全く送受信しない状態である。発光状態は、光送受信モジュール100が電気信号及び光信号の双方を送受信する状態である。
【0100】
制御装置4は、不揮発性メモリ42及び演算部43を不揮発性メモリ12及び演算部13の代わりに有する制御装置1と相違する。不揮発性メモリ42は、誤り訂正情報領域420を誤り訂正情報領域120の代わりに有することが不揮発性メモリ12と相違する。演算部43は、訂正頻度変更部47を訂正頻度変更部17の代わりに有することが演算部13と相違する。誤り訂正情報領域420及び訂正頻度変更部27以外の制御装置2の構成要素の構成及び機能は、同一符号が付された制御装置1の構成要素の構成及び機能と同一なので、ここでは詳細な説明は省略する。
【0101】
誤り訂正情報領域420は、チェックサム情報1201と、第1実行頻度情報1221と、第2実行頻度情報1222と、第3実行頻度情報1223を記憶する。チェックサム情報1201は、チェックサム領域110に記憶される第1記憶領域111〜第10記憶領域11Aのそれぞれに対応するチェックサムのオリジナルデータを含む。第1実行頻度情報1221は光送受信モジュール100が低消費電力状態であるときに使用され、第2実行頻度情報1222は光送受信モジュール100が消光状態であるときに使用される。第3実行頻度情報1223は、光送受信モジュール100が発光状態であるときに使用される。
【0102】
図20(a)は第1実行頻度情報1221を示す図であり、
図20(b)は第2実行頻度情報1222を示す図であり、
図20(c)は第3実行頻度情報1223を示す図である。
【0103】
低消費電力状態で使用される第1実行頻度情報1221は、外部インターフェイス部140の設定値を記憶する第1記憶領域111及び警報機能部146の設定値を記憶する第7記憶領域117を高頻度とし、他の記憶領域を低頻度とする。消光状態で使用される第2実行頻度情報1222は、第1記憶領域111及び第7記憶領域117に加えて受信信号しきい値制御部149の設定値を記憶する第10記憶領域11Aを高頻度とし、他の記憶領域を低頻度とする。発行状態で使用される第3実行頻度情報1223は、第1記憶領域111〜第3記憶領域113を高頻度とし、他の記憶領域を低頻度とする。
【0104】
(第4実施形態に係る制御装置によるソフトエラー訂正処理及び訂正頻度変更処理)
図21(a)は演算部43によるソフトエラー訂正処理及び訂正頻度変更処理のフローチャートであり、
図21(b)は
図21(a)に示すS402の処理のより詳細な処理を示すフローチャートである。
図21(a)に示すソフトエラー訂正処理及び訂正頻度変更処理は、予め不揮発性メモリ42に記憶されているプログラムに基づいて、主に演算部43により制御装置4の各要素と協働して実行される。
図21(a)に示す処理は、演算部43において所定の設定時間毎に実行される。また、
図21(a)において、ソフトエラー訂正処理及び訂正頻度変更処理は一連の処理として示されるが、ソフトエラー訂正処理及び訂正頻度変更処理は別個の処理として実行されてもよい。
【0105】
まず、ソフトエラー訂正部16は、誤り訂正情報領域220を参照してソフトエラー訂正処理を実行する(S401)。ソフトエラー訂正部16が実行するソフトエラー訂正処理は、
図4を参照して説明されたソフトエラー訂正部932が実行するソフトエラー訂正処理と同様なので、ここでは詳細な説明は省略する。
【0106】
次いで、訂正頻度変更部47は、光送受信モジュール100の状態に応じてソフトエラー訂正処理を実行する頻度を変更する(S402)。
【0107】
まず、訂正頻度変更部47は、光送受信モジュール100の状態を取得する(S411)。次いで、訂正頻度変更部47は、光送受信モジュール100の状態が低消費電力状態であるか否かを判定する(S412)。訂正頻度変更部47は、受信信号しきい値制御部149が停止中であるとき低消費電力状態であると判定し、受信信号しきい値制御部149が動作中であるとき低消費電力状態ではないと判定する。訂正頻度変更部47は、光送受信モジュール100の状態が低消費電力状態であると判定する(S412−YES)と、使用する実行頻度情報として第1実行頻度情報1221を選択する(S413)。
【0108】
訂正頻度変更部47は、光送受信モジュール100の状態が低消費電力状態ではないと判定する(S412−NO)と、光送受信モジュール100の状態が消光状態であるか否かを判定する(S414)。訂正頻度変更部47は、光パワー制御部141が停止中であるとき消光状態であると判定し、光パワー制御部141が動作中であるとき消光状態ではないと判定する。訂正頻度変更部47は、光送受信モジュール100の状態が消光状態であると判定する(S414−YES)と、使用する実行頻度情報として第2実行頻度情報1222を選択する(S415)。光送受信モジュール100の状態が消光状態ではないと判定する(S414−NO)と、使用する実行頻度情報として第3実行頻度情報1223を選択する(S416)。
【0109】
(第4実施形態に係る制御装置の作用効果)
第4実施形態に係る制御装置は、光送受信モジュール100の状態に応じて、ソフトエラー訂正等の誤り訂正処理を実行する訂正頻度を変更することで、処理装置の出荷後の外的な状況の変化に応じて、誤り訂正の実行頻度を変更することができる。
【0110】
(実施形態の制御装置の変形例)
制御装置1〜4は、光送受信モジュール100に搭載されるが、実施形態の制御装置は、光送受信モジュール100以外の所定の処理を実行する処理装置に搭載されてもよい。また、制御装置1〜4は、ソフトエラー訂正処理を実行するが、実施形態の制御装置は、ハード故障に起因するビットエラーを検出する構成としてもよい。また、制御装置1〜4は、不揮発性メモリに記憶されたデータを揮発性メモリに記憶されたデータに上書きすることで誤り訂正するが、実施形態の制御装置は、誤り検出訂正(error detection and correction、ECC)により誤り訂正してもよい。
【0111】
また、制御装置1〜4は、記憶領域を低頻度及び高頻度の2つの頻度に分けて実行頻度情報を規定するが、実施形態の制御装置は、記憶領域を低頻度、中頻度及び高頻度の3つの頻度に分けて実行頻度情報を規定してもよい。さらに、実施形態の制御装置は、記憶領域を4つ以上の頻度に分けて実行頻度情報を規定してもよい。