(57)【要約】【課題】  ＤＣＵでＰＨＹＩＣのレジスタをエミュレーションするにあたり、ＰＨＹＩＣでのみ検出される高速系のエラーとＤＣＵでのみ検出される低速系のエラーの発生に伴うレジスタ内容の不整合を解消することができるトランシーバモジュールを提供する。【解決手段】  ＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタと、ＬＡＳＩ信号１２の生成可否がエラー要因に応じて設定されるＰＨＹ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタとを有するＰＨＹＩＣ３と、前記レジスタをエミュレーションしたレジスタを有するＤＣＵ２とを備え、ＰＨＹＩＣ３が、エラー要因によらず発生したエラーを特定するＵｎｍａｓｋ信号１１を生成してＤＣＵ２に出力し、ＤＣＵ２が、信号１１に基づいて当該エラーをホスト４に通知すると共に、ＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタの内容をＤＣＵ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタに書き込む。【選択図】        図１
2006101163.tif 000002
【特許請求の範囲】
【請求項１】
エラーの発生を示すビット値を設定するエラーフラグレジスタ部と、上位レイヤ側装置に対してエラー発生を通知する第１のエラー信号を生成するか否かを示すビット値がそのエラー要因に応じて設定されるエラー通知制御レジスタ部とを含んでなる物理層側レジスタ部を有する物理層集積回路部と、
前記物理層側レジスタ部の構成及び機能をエミュレーションした制御側レジスタ部を有する制御集積回路部とを備え、
前記物理層集積回路部が、エラー要因によらず、エラーを通知する第２のエラー信号を生成して前記制御集積回路部に出力し、
前記制御集積回路部が、前記第２のエラー信号に基づいて前記物理層集積回路部が検出したエラーを特定し、当該エラーについての前記第１のエラー信号を生成して前記上位レイヤ側装置に送出すると共に、前記物理層側レジスタ部における前記エラーフラグレジスタ部の内容を前記制御側レジスタ部のエラーフラグレジスタ部に書き込むトランシーバモジュール。
【請求項２】
物理層集積回路部が、第２のエラー信号に加え、エラー通知制御レジスタ部によって第１のエラー信号の生成が制御されるエラーを特定する第３のエラー信号を制御集積回路部に出力し、
前記制御集積回路部が、前記両信号に基づいて前記物理層集積回路部で検出されたエラーを特定し、当該エラーについての前記第１のエラー信号を生成して上位レイヤ側装置に送出することを特徴とする請求項１記載のトランシーバモジュール。
【請求項３】
物理層集積回路部が、エラー通知制御レジスタ部によって第１のエラー信号の生成が制御されるエラーを特定する第３のエラー信号を出力し、
制御集積回路部が、第２のエラー信号に基づいて特定した前記物理層集積回路部により検出されたエラーに加え、制御側レジスタ部としてエミュレーションしているエラー通知制御レジスタ部によって前記第１のエラー信号の生成が制御されるエラーを特定する第４のエラー信号を出力し、
前記物理層集積回路部から出力された前記第３のエラー信号と前記制御集積回路部から出力された前記第４のエラー信号とを示す各ディジタル値の論理和を、前記第１のエラー信号として上位レイヤ側装置に送出することを特徴とする請求項１のトランシーバモジュール。
【請求項４】
エラーの発生を示すビット値を設定するエラーフラグレジスタ部と、上位レイヤ側装置にエラー発生を通知する第１のエラー信号を生成するか否かを示すビット値がそのエラー要因に応じて設定されるエラー通知制御レジスタ部とを含んでなる物理層側レジスタ部を有する物理層集積回路部と、
前記物理層側レジスタ部の構成及び機能をエミュレーションした制御側レジスタ部を有する制御集積回路部とを備え、
前記制御集積回路部が、エラー要因によらず、エラーを通知する第５のエラー信号を生成して前記物理層集積回路部に出力し、
前記物理層集積回路部が、前記第５のエラー信号に基づいて前記制御集積回路部が検出したエラーを特定し、当該エラーについての前記第１のエラー信号を生成して前記上位レイヤ側装置に送出すると共に、前記制御側レジスタ部におけるエラーフラグレジスタ部の内容を前記物理層側レジスタ部の前記エラーフラグレジスタ部に書き込むトランシーバモジュール。
【請求項５】
制御集積回路部が、第５のエラー信号に加え、制御側レジスタ部としてエミュレーションしているエラー通知制御レジスタ部によって第１のエラー信号の生成が制御されるエラーを特定する第６のエラー信号を物理層集積回路部に出力し、
前記物理層集積回路部が、前記両信号に基づいて前記制御集積回路部で検出されたエラーを特定し、当該エラーについての前記第１のエラー信号を生成して上位レイヤ側装置に送出することを特徴とする請求項４記載のトランシーバモジュール。
【請求項６】
エラーの発生を示すビット値を設定するエラーフラグレジスタ部を含んでなる物理層側レジスタ部を有する物理層集積回路部と、
前記物理層側レジスタ部の構成及び機能をエミュレーションした制御側レジスタ部を有する制御集積回路部とを備え、
前記制御集積回路部が、前記制御側レジスタ部としてエミュレーションしているエラーフラグレジスタ部に設定されたエラーを特定するビット値を前記物理層集積回路部の前記エラーフラグレジスタ部に書き込み、
前記物理層集積回路部が、上位レイヤ側装置に対してエラー発生を通知する第１のエラー信号を、前記エラーフラグレジスタ部の設定値から特定されるエラーについて生成して前記上位レイヤ側装置に送出するトランシーバモジュール。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、光通信用のトランシーバモジュールに関するものである。
【背景技術】
【０００２】
光通信用のトランシーバモジュールとして、例えばＩＥＥＥ８０２．３ａｅの規格に対応するものがある。ＩＥＥＥ８０２．３ａｅに準拠した規格に対応するトランシーバが備えるレジスタとして、例えばＸＥＮＰＡＫ（ＩＥＥＥ８０２．３ａｅで定められた１０Ｇビットイーサーネット（登録商標）規格に採用されているＸＡＵＩ（10Gigabit Attachment Unit Interface)プロトコル上で動作する光コネクターと光トランシーバーの共通仕様）レジスタでは、ＮＶ（Non-Volatile）レジスタ、ＤＯＭ（Digital Optical Monitoring）レジスタやＬＡＳＩ（Link Alarm Status Interrupt）レジスタなどを備えている（例えば、非特許文献１参照）。
【０００３】
上記のトランシーバモジュールを構成する、通信機能を有する従来のトランシーバＩＣ（以下、ＰＨＹＩＣと称す）では、通信処理にて使用するＩＥＥＥレジスタ及び上記規格で定められたＸＥＮＰＡＫレジスタの双方をハードウエアで内蔵している。これらレジスタに属するもののうちエラー関連の一部のレジスタについては、ＩＥＥＥレジスタとＸＥＮＰＡＫレジスタで同一の内容を保持する相互関係を持つレジスタ（ＬＡＳＩ＿Ｓｔａｔｕｓレジスタ）が存在する。
【０００４】
【非特許文献１】”Ａ  Ｃｏｏｐｅｒａｔｉｏｎ  Ａｇｒｅｅｍｅｎｔ  ｆｏｒ  １０  Ｇｉｇａｂｉｔ  Ｅｔｈｅｒｎｅｔ（登録商標）  Ｔｒａｎｓｃｅｉｖｅｒ  Ｐａｃｋａｇｅ  Ｉｓｓｕｅ  ３．０”、［ｏｎｌｉｎｅ］、１８ｔｈ  Ｓｅｐｔｅｍｂｅｒ  ２００２、ＸＥＮＰＡＫ  、［平成１６年９月１７日検索］、インターネット＜ｈｔｔｐ：／／ｗｗｗ．ｘｅｎｐａｋ．ｏｒｇ／ＭＳＡ／ＸＥＮＰＡＫ  ＿ＭＳＡ＿Ｒ３．０．ｐｄｆ＞
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来のトランシーバモジュールでは、ＩＥＥＥレジスタとＸＥＮＰＡＫレジスタのいずれかのレジスタの構成及びその機能に変更が生じた場合、レジスタ構成及び機能が新たな仕様を満たすようにＰＨＹＩＣの設計や開発をやり直す必要があった。
【０００６】
これに対して、ＰＨＹＩＣや他の周辺機能を制御するＩＣであるデバイス制御ユニット（以下、ＤＣＵと称す）で、ＰＨＹＩＣに構成されているＸＥＮＰＡＫレジスタの構成及び機能をソフトウエアエミュレーションすれば、ＤＣＵでの前記ソフトウエアのプログラム改変によってＸＥＮＰＡＫレジスタの構成及び機能を変更することができる。
【０００７】
しかしながら、ＰＨＹＩＣでのみ検出される通信処理に関する高速系のエラーが、ＰＨＹＩＣのＸＥＮＰＡＫレジスタにおけるエラーに関連する内容が設定されるレジスタに記憶される一方、ＤＣＵでのみ検出される内部処理に関する低速系のエラーが、ＰＨＹＩＣのＸＥＮＰＡＫレジスタにおけるエラーに関連する内容が設定されるレジスタに記憶される。このため、ＰＨＹＩＣとＤＣＵにおいて、エラーに関連するレジスタの内容に不整合が生じるという課題があった。
【０００８】
この発明は上記のような課題を解決するためになされたもので、ＤＣＵでＰＨＹＩＣのレジスタをエミュレーションするにあたり、ＰＨＹＩＣでのみ検出される高速系のエラーとＤＣＵでのみ検出される低速系のエラーの発生に伴うレジスタ内容の不整合を解消することができるトランシーバモジュールを得ることを目的とする。
【課題を解決するための手段】
【０００９】
この発明に係るトランシーバモジュールは、エラーの発生を示すビット値を設定するエラーフラグレジスタ部と、上位レイヤ側装置に対してエラー発生を通知する第１のエラー信号を生成するか否かを示すビット値がそのエラー要因に応じて設定されるエラー通知制御レジスタ部とを含んでなる物理層側レジスタ部を有する物理層集積回路部と、物理層側レジスタ部の構成及び機能をエミュレーションした制御側レジスタ部を有する制御集積回路部とを備え、物理層集積回路部が、エラー要因によらず、エラーを通知する第２のエラー信号を生成して制御集積回路部に出力し、制御集積回路部が、第２のエラー信号に基づいて物理層集積回路部が検出したエラーを特定し、当該エラーについての第１のエラー信号を生成して上位レイヤ側装置に送出するものである。
【発明の効果】
【００１０】
この発明よれば、エラーの発生を示すビット値を設定するエラーフラグレジスタ部と、上位レイヤ側装置に対してエラー発生を通知する第１のエラー信号を生成するか否かを示すビット値がそのエラー要因に応じて設定されるエラー通知制御レジスタ部とを含んでなる物理層側レジスタ部を有する物理層集積回路部と、物理層側レジスタ部の構成及び機能をエミュレーションした制御側レジスタ部を有する制御集積回路部とを備え、物理層集積回路部が、エラー要因によらず、エラーを通知する第２のエラー信号を生成して制御集積回路部に出力し、制御集積回路部が、第２のエラー信号に基づいて物理層集積回路部が検出したエラーを特定し、当該エラーについての第１のエラー信号を生成して上位レイヤ側装置に送出するので、制御集積回路部側で物理層集積回路部における物理層側レジスタ部を制御側レジスタ部としてエミュレーションするにあたり、物理層集積回路部でのみ検出されるエラー（通信関連の高速系のエラー）と制御集積回路部でのみ検出されるエラー（送信用レーザの監視などの内部処理に関連する低速系のエラー）の発生に伴って生じていた両回路部のレジスタ内容の不整合を解消することができるという効果がある。
【発明を実施するための最良の形態】
【００１１】
実施の形態１．
図１は、この発明の実施の形態１によるトランシーバモジュールの構成及びそのアラーム信号制御処理を説明する図であり、ＩＥＥＥ８０２．３ａｅに準拠した規格に対応する１０Ｇビットイーサネット（登録商標）用の光通信トランシーバモジュールを例に挙げている。本実施の形態による光通信用のトランシーバモジュール１は、大きく分けるとＤＣＵ２及びトランシーバ用１０Ｇｂ−ＰＨＹＩＣ（以下、ＰＨＹＩＣと称す）３から構成される。
【００１２】
ＤＣＵ（制御集積回路部）２及びＰＨＹＩＣ（物理層集積回路部）３は、汎用シリアルインタフェース用のバス、例えばＩ２Ｃ（International Institute for Communications）シリアルバス１０を介して接続されている。また、ＤＣＵ２及びＰＨＹＩＣ３は、ＩＥＥＥ８０２．３ａｅに対応したＭＤＩＯ（Management Data Input/Output）インタフェース回路６，７がＭＤＩＯインタフェース５を介してそれぞれ上位レイヤ側装置であるホスト４と通信接続する。
【００１３】
ＰＨＹＩＣ３は、ＭＤＩＯインタフェース回路７の他、ＩＥＥＥ８０２．３ａｅに準拠する、ＮＶＲレジスタ（図中、ＮＶＲと記す）８ａやＤＯＭレジスタ８ｂ、不図示のＬＡＳＩレジスタなどが構築されたＸＥＮＰＡＫレジスタ群（物理層側レジスタ部）８を有している。
【００１４】
なお、ＰＨＹＩＣ３では、ＤＣＵ２上でＸＥＮＰＡＫレジスタ群８がソフトウエア・エミュレーションされるため、ホスト４からのＭＤＩＯインタフェース５を介したＸＥＮＰＡＫレジスタ群８に対するアクセスに応答しないモードを有する。これにより、ホスト４からのトランシーバモジュール１のＸＥＮＰＡＫレジスタに対するアクセスで、ＰＨＹＩＣ３からの返信出力とＤＣＵ２からの返信出力が衝突することを防ぐことができる。図示の例では、ＰＨＹＩＣ３が当該モードにあることを示すため、ＸＥＮＰＡＫレジスタ群８を破線で表記し、バツ印を付している。
【００１５】
ＤＣＵ２は、ＭＤＩＯインタフェース回路６、ＳＲＡＭ９、ＣＰＵ１６、ＲＡＭ１７、タイマ（ＴＭ）１８、ウォッチドッグタイマ（ＷＴ）１９、ディジタル−アナログ変換器（ＤＡ）２０及びアナログ−ディジタル変換器（ＡＤ）２１等を含んで構成される。ＳＲＡＭ９上には、ＰＨＹＩＣ３のＸＥＮＰＡＫレジスタ群８と同様の構成及び機能を有するＸＥＮＰＡＫレジスタ群（制御側レジスタ部）９ａが、ＣＰＵ１６が実行するソフトウエアによりエミュレーションされている。
【００１６】
ＣＰＵ（Central Processing Unit）１６は、演算や周辺機能を具現化するマイクロコンピュータとしてのＤＣＵ２の全体的な制御を行なう。ＲＡＭ１７は、ＣＰＵ１６が実行するソフトウエアプログラムの格納やワークエリアなどに使用される。また、ＣＰＵ１６は、タイマ１８及びウォッチドッグタイマ１９に時間を設定し、タイマ１８及びウォッチドッグタイマ１９から出力される割込み要求を受付けて所定の動作を行なうことによってデバイス全体の制御を行なう。
【００１７】
本実施の形態によるトランシーバモジュール１は、送信用レーザ１４ａ及び受信用素子１４ｂも備えており、これらを用いて光ケーブル１５ａ，１５ｂを介して外部とデータ送受信が可能である。送信用レーザ１４ａには、増幅器１３ａを介してＰＨＹＩＣ３から送信データが与えられ、ＰＨＹＩＣ３には、増幅器１３ｂを介して受信用素子１４ｂからの受信データが与えられる。
【００１８】
ＤＣＵ２は、例えば送信用レーザ１４ａやトランシーバモジュール１内の温度、送信用レーザ１４ａのバイアス、受信用素子１４ｂのバイアス、送信用レーザ１４ａの電源電圧を監視する。そして、送信用レーザ１４ａの出力が一定となるように送信用レーザ１４ａのバイアスを制御する。
【００１９】
また、ＤＣＵ２は、エラーを検出した場合、ＳＲＡＭ９上にエミュレーションしているＸＥＮＰＡＫレジスタ群９ａを構成するＬＡＳＩ（Link Alarm Status Interrupt）レジスタにエラーの検出を示すディジタル情報（エラーを特定するビット値）を書き込む。ホスト４は、このＸＥＮＰＡＫレジスタ群９ａ内の当該ＬＡＳＩレジスタの内容を読み込み、トランシーバモジュール１が継続して動作することが不適切と判断した場合、例えば当該トランシーバモジュール１を停止させる。
【００２０】
具体的には、ＤＣＵ２が異常を検出した場合、ホスト４に対してエラーの発生を警告するための信号であるＬＡＳＩ信号（第１のエラー信号）１２を与える。これを契機として、ホスト４はＭＤＩＯインタフェース５を介してＤＣＵ２のＸＥＮＰＡＫレジスタ群９ａを参照し、エラーが検出されたことを了知する。なお、ＬＡＳＩ信号は、例えばホスト４が認識するのに適した形態で表したトランシーバモジュール１で検出したエラーを特定するディジタル信号である。
【００２１】
また、ＰＨＹＩＣ３は、ＩＥＥＥレジスタ（不図示）及びＸＥＮＰＡＫレジスタにおいて、上述したようなエラーの発生の有無を示すＬＡＳＩレジスタの他、そのエラー要因により当該エラーの発生を外部に通知すべきか否かを設定するアラームコントロールレジスタ（以下、ＰＨＹ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタと称す）（エラー通知制御レジスタ部）を有している。従来では、ＰＨＹ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタにおいて無効化されているエラーが発生しても、例えばホスト４などの外部回路に対して、ＬＡＳＩ信号が通知されなかった。
【００２２】
そこで、本実施の形態１におけるＰＨＹＩＣ３では、通信データのエラーを検出した場合、ＰＨＹ＿ＬＡＳＩ＿ＣｏｎｔｒｏｌレジスタによりＬＡＳＩ信号の通知可否を制御されず、全てのエラーイベントに対してエラー信号を発生するエラー信号（以下、ＰＨＹ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号と称す）（第２のエラー信号）１１を発生し、ＤＣＵ２に通知する。なお、ＰＨＹ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号１１は、ＰＨＹ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタによらず、つまりエラー要因によらず、ＰＨＹＩＣ３が検出したエラーを通知し特定するためのディジタル値を、ＤＣＵ２で認識するのに適した形態で表した信号である。
【００２３】
次に動作について説明する。
トランシーバモジュール１による通信動作において、何らかのエラーイベントが発生すると、ＰＨＹＩＣ３におけるＸＥＮＰＡＫレジスタ群８内のＬＡＳＩレジスタ（以下、ＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタと称す）（エラーフラグレジスタ部）と、ＤＣＵ２におけるソフトウエアでＳＲＡＭ９上にエミュレーションされたＸＥＮＰＡＫレジスタ群９ａ内のＬＡＳＩレジスタ（以下、ＤＣＵ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタと称す）のいずれかにそのエラー内容によってエラー発生有無を示すエラーフラグが書込まれる。
【００２４】
ＰＨＹＩＣ３が有するＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタでは、例えばＰＨＹＩＣ３でのみ検出されるような通信関連の高速系のエラーが記録され、ＤＣＵ２が有するＤＣＵ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタには、ＤＣＵ２でのみ検出されるような送信用レーザ１４ａの監視等における低速系のエラーが記録される。このため、この検出エラー記録時点では、ＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタの内容とＤＣＵ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタの内容に矛盾が生じている。
【００２５】
そこで、本実施の形態によるＰＨＹＩＣ３では、高速系のエラーイベントが発生した場合、そのエラーを検出し、そのイベントに対応したエラービットをＸＥＮＰＡＫレジスタ群８のＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタに設定すると同時に、外部に対して当該エラーを通知するための信号を出力する。
【００２６】
具体的に説明すると、ＰＨＹＩＣ３は、指定されたエラーイベントについてエラー信号の発生を禁止するエラー信号発生制御レジスタとして機能する、ＰＨＹ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタの設定値による制御を受けず、全てのエラーイベントに対してエラー信号を発生させるためのＰＨＹ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号１１と、ＰＨＹ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタを介し、指定されたエラーイベントについてエラー信号の発生を禁止した通常のエラー信号（以下、ＰＨＹ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号と称す）（第３のエラー信号）との双方をＤＣＵ２に出力する。なお、ＰＨＹ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号は、ＰＨＹ＿ＬＡＳＩ＿ＣｏｎｔｒｏｌレジスタによってＬＡＳＩ信号の生成が制御されるエラーを特定するディジタル信号である。
【００２７】
このとき、ＰＨＹＩＣ３からのＰＨＹ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号１１を、ＤＣＵ２における不図示の外部割込み端子に送出することで、ＤＣＵ２は、ＰＨＹＩＣ３でエラー信号の発生が禁止されていたエラーイベントの発生についても検出することができる。これにより、ＤＣＵ２は、ホスト４に対して当該エラーについての二次的なＬＡＳＩ信号１２を出力し、エラーイベントの通知を行う。また、これと同時に、ＤＣＵ２は、Ｉ２Ｃインタフェース１０を介して、ＰＨＹＩＣ３のＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタの内容を、自己がエミュレーションするＤＣＵ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタへコピーする。
【００２８】
なお、ＰＨＹＩＣ３は、Ｉ２Ｃインタフェース１０を介してＸＥＮＰＡＫレジスタ群８、或いは、少なくとも前述したＩＥＥＥレジスタとＸＥＮＰＡＫレジスタの内、相互関係を有するレジスタにアクセスが可能な機能を有するものとする。
【００２９】
また、上述では、ＰＨＹＩＣ３が、ＰＨＹ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号１１とＰＨＹ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号の双方をＤＣＵ２に出力する例を示したが、ＰＨＹ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号１１のみであってもよい。
【００３０】
以上のように、この実施の形態１によれば、エラーの発生を示すビット値を設定するＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタと、ホスト４にエラー発生を通知するＬＡＳＩ信号１２を生成するか否かを示すビット値が、そのエラー要因に応じて設定されるＰＨＹ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタとを含んでなるＸＥＮＰＡＫレジスタ群８を有するＰＨＹＩＣ３と、ＸＥＮＰＡＫレジスタ群８の構成及び機能をエミュレーションしたＸＥＮＰＡＫレジスタ群９ａを有するＤＣＵ２とを備え、ＰＨＹＩＣ３が、ＰＨＹ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタの設定値によらず、全てのエラー要因についてＬＡＳＩー信号１２を生成させる、つまりエラー要因によらず、エラーを通知するＰＨＹ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号１１を生成してＤＣＵ２に出力し、ＤＣＵ２が、ＰＨＹ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号１１に基づいてＰＨＹＩＣ３側が検出したエラーを特定し、当該エラーについてのＬＡＳＩ信号１２を生成してホスト４に送出する。これにより、ＤＣＵ２がＰＨＹ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号１１によってＰＨＹＩＣ３側にのみ検出されるような高速系のエラーについても、ＰＨＹＩＣ３が有するＰＨＹ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタの内容を常時モニタすることなく、その発生を知ることができ、ＤＣＵ２のＤＣＵ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタの内容とＰＨＹＩＣ３のＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタの内容が一致し、それぞれのレジスタの内容に不整合が生じることがない。
【００３１】
また、ＤＣＵ２は、ＰＨＹＩＣ３からの通信関連のエラー信号（ＰＨＹ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号やＰＨＹ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号１１）に加え、自己が監視する送信用レーザ１４ａや受信用素子１４ｂのエラーイベントを相互に管理して、これによって総合的に生成されたエラー信号（ＬＡＳＩ信号１２）を上位側のホスト４に対して送信することができる。
【００３２】
実施の形態２．
図２は、この発明の実施の形態２によるトランシーバモジュールの構成及びそのアラーム信号制御処理を説明する図であり、ＩＥＥＥ８０２．３ａｅに準拠した規格に対応する１０Ｇビットイーサネット（登録商標）用の光通信トランシーバモジュールを例に挙げている。なお、図１と同一又はこれに相当する構成要素には同一符号を付して重複する説明を省略する。
【００３３】
本実施の形態によるトランシーバモジュール１は、上記実施の形態１と基本的な構成は同一であるが、ＤＣＵ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタ（不図示）でエラー信号（第１のエラー信号）の発生を禁止した通常のエラー信号（以下、ＤＣＵ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号と称す）（第４のエラー信号）と、ＰＨＹ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタ（不図示）でエラー信号の発生を禁止した通常のエラー信号（以下、ＰＨＹ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号と称す）（第３のエラー信号）とをワイヤードＯＲ接続し、ホスト４に通知するエラー信号（第１のエラー信号）とする点で異なる。ここで、ＤＣＵ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号とは、ＤＣＵ２がエミュレーションするＤＣＵ＿ＬＡＳＩ＿ＣｏｎｔｒｏｌレジスタによってＬＡＳＩ信号の生成が制御されるエラーを特定するディジタル信号である。
【００３４】
また、図２においても、ＤＣＵ２上でＸＥＮＰＡＫレジスタ群８がソフトウエア・エミュレーションされるため、ＰＨＹＩＣ３が、ホスト４からのＭＤＩＯインタフェース５を介したＸＥＮＰＡＫレジスタ群８に対するアクセスに応答しないモードを有する。これを示すため、ＸＥＮＰＡＫレジスタ群８を破線で表記し、バツ印を付している。
【００３５】
次に動作について説明する。
トランシーバモジュール１による通信動作において、何らかのエラーイベントが発生すると、ＰＨＹＩＣ３におけるＸＥＮＰＡＫレジスタ群８内のＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタと、ＤＣＵ２におけるソフトウエアでＳＲＡＭ９上にエミュレーションされたＸＥＮＰＡＫレジスタ群９ａ内のＤＣＵ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタのいずれかにそのエラー内容によってエラー発生有無を示すエラーフラグが書込まれる。
【００３６】
ＰＨＹＩＣ３が有するＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタでは、例えばＰＨＹＩＣ３でのみ検出されるような通信関連の高速系のエラーが記録され、ＤＣＵ２が有するＤＣＵ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタには、ＤＣＵ２でのみ検出されるような送信用レーザ１４ａの監視等における低速系のエラーが記録される。このため、この検出エラー記録時点では、ＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタの内容とＤＣＵ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタの内容に矛盾が生じている。
【００３７】
そこで、本実施の形態によるＰＨＹＩＣ３では、上記実施の形態１と同様に、高速系のエラーイベントが発生した場合、そのエラーを検出し、そのイベントに対応したエラービットをＸＥＮＰＡＫレジスタ群８のＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタに設定すると同時に、外部に対して当該エラーを通知するための信号を出力する。
【００３８】
先ず、上記実施の形態１と同様に、ＰＨＹＩＣ３が、ＸＥＮＰＡＫレジスタ群８のＰＨＹ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタの制御を受けず、全てのエラーイベントに対してエラー信号を発生させるためのＰＨＹ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号（第２のエラー信号）１１と、ＰＨＹ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタを介し、指定するエラーイベントについてエラー信号の発生を禁止したＰＨＹ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号（第３のエラー信号）との双方を出力する。
【００３９】
ここで、ＰＨＹ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号１１については、ＤＣＵ２における不図示の外部割込み端子に送出することで、ＤＣＵ２が、ＰＨＹＩＣ３でエラー信号の発生が禁止されていたエラーイベントの発生も検出することができる。また、これと同時に、ＤＣＵ２は、Ｉ２Ｃインタフェース１０を介して、ＰＨＹＩＣ３のＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタの内容を、自己がエミュレーションするＤＣＵ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタへコピーする。
【００４０】
一方、ＤＣＵ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタを介し、指定するエラーイベントについてエラー信号の発生を禁止した通常のエラー信号である、ＤＣＵ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号と、ＰＨＹ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタを介し、指定するエラーイベントについてエラー信号の発生を禁止した通常のエラー信号である、ＰＨＹ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号とをワイヤードＯＲ接続したバスでホスト４に接続している。
【００４１】
従って、先のＰＨＹ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号とＤＣＵ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号とを示す各ディジタル値が論理和された信号が、エラーを通知するＬＡＳＩ信号としてホスト４に通知される。これにより、ＤＣＵ２とＰＨＹＩＣ３のいずれかにエラーが発生しても、ＰＨＹ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号とＤＣＵ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号との論理和の値から知ることができる。
【００４２】
以上のように、この実施の形態２によれば、ＰＨＹＩＣ３が、ＰＨＹ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタの設定値によってＬＡＳＩ信号の生成が制御されるエラーを特定するＰＨＹ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号を出力し、ＤＣＵ２が、ＰＨＹ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号１１に基づいて特定したＰＨＹＩＣ３が検出したエラーに加え、ＸＥＮＰＡＫレジスタ群９ａとしてエミュレーションしたＤＣＵ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタの設定値によってＬＡＳＩ信号の生成が制御されるエラーを特定するＤＣＵ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号を出力し、ＰＨＹＩＣ３及びＤＣＵ２から出力されたＰＨＹ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号とＤＣＵ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号とを示す各ディジタル値の論理和をＬＡＳＩ信号としてホスト４に送出するので、ＤＣＵ２が検出する低速系エラーイベントとＰＨＹＩＣ３が検出する高速系エラーイベントとの双方をより高速にホスト４に伝えることができ、システム全体としての応答速度の高速化を図ることが可能である。
【００４３】
実施の形態３．
図３は、この発明の実施の形態３によるトランシーバモジュールの構成及びそのアラーム信号制御処理を説明する図であり、ＩＥＥＥ８０２．３ａｅに準拠した規格に対応する１０Ｇビットイーサネット（登録商標）用の光通信トランシーバモジュールを例に挙げている。本実施の形態によるトランシーバモジュール１は、上記実施の形態１と基本的な構成は同一であるが、ＰＨＹＩＣ３によりホスト４に対してＬＡＳＩ信号が送信される点で異なる。なお、図１と同一又はこれに相当する構成要素には同一符号を付して重複する説明を省略する。
【００４４】
また、図３においても、ＤＣＵ２上でＸＥＮＰＡＫレジスタ群８がソフトウエア・エミュレーションされるため、ＰＨＹＩＣ３が、ホスト４からのＭＤＩＯインタフェース５を介したＸＥＮＰＡＫレジスタ群８に対するアクセスに応答しないモードを有する。これを示すため、ＸＥＮＰＡＫレジスタ群８を破線で表記し、バツ印を付している。
【００４５】
次に動作について説明する。
先ず、トランシーバモジュール１による通信動作において、何らかのエラーイベントが発生すると、上記実施の形態と同様に、ＰＨＹＩＣ３におけるＸＥＮＰＡＫレジスタ群８内のＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタと、ＤＣＵ２におけるソフトウエアでＳＲＡＭ９上にエミュレーションされたＸＥＮＰＡＫレジスタ群９ａ内のＤＣＵ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタのいずれかにそのエラー内容によってエラー発生有無を示すエラーフラグが書込まれる。
【００４６】
ＰＨＹＩＣ３が有するＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタでは、例えばＰＨＹＩＣ３でのみ検出されるような通信関連の高速系のエラーが記録され、ＤＣＵ２が有するＤＣＵ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタには、ＤＣＵ２でのみ検出されるような送信用レーザ１４ａの監視等における低速系のエラーが記録される。このため、この検出エラー記録時点では、ＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタの内容とＤＣＵ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタの内容に矛盾が生じている。
【００４７】
そこで、本実施の形態によるＤＣＵ２は、自らが監視する低速系のエラーイベントが発生すると、Ｉ２Ｃインタフェース１０を介してＰＨＹＩＣ３におけるＸＥＮＰＡＫレジスタ群８のＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタに対して当該エラーについてのエラービットを書き込む。
【００４８】
一方、ＰＨＹＩＣ３では、高速系のエラーイベントが発生した場合、そのエラーを検出し、そのイベントに対応したエラービットをＸＥＮＰＡＫレジスタ群８のＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタに設定すると同時に、外部に対して当該エラーを通知するための信号を出力する。
【００４９】
具体的に説明すると、ＰＨＹＩＣ３は、ＤＣＵ２によってエラービットが書き込まれたＸＥＮＰＡＫレジスタ群８のＰＨＹ＿ＬＡＳＩ＿ＳｔａｔｕｓレジスタとＰＨＹ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタとの設定に沿った、ＰＨＹ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号をホスト４に対してＬＡＳＩ信号（第１のエラー信号）１２として出力する。
【００５０】
以上のように、この実施の形態３によれば、エラーの発生を示すビット値を設定するＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタを含んでなるＸＥＮＰＡＫレジスタ群８を有するＰＨＹＩＣ３と、ＸＥＮＰＡＫレジスタ群８をエミュレーションしたＸＥＮＰＡＫレジスタ群９ａを有するＤＣＵ２とを備え、ＤＣＵ２が、ＸＥＮＰＡＫレジスタ群９ａとしてエミュレーションしたＤＣＵ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタに設定されたエラーを特定するビット値をＰＨＹＩＣ３のＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタに書き込み、ＰＨＹＩＣ３が、ホスト４に対してエラー発生を通知するＬＡＳＩ１２信号を、ＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタの設定値から特定されるエラーについて生成してホスト４に送出するので、ＤＣＵ２がＰＨＹＩＣ３側にのみ検出されるような高速系のエラーについてＰＨＹ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタの内容を常時モニタすることなく、その発生を知ることができ、ＤＣＵ２のＤＣＵ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタの内容とＰＨＹＩＣ３のＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタの内容が一致し、それぞれのレジスタの内容に不整合が生じることがない。
【００５１】
また、ＰＨＹＩＣ３は、ＤＣＵ２が検出したエラーに加え、自己が監視する通信関連のエラーイベントを相互に管理して、これによって総合的に生成されたエラー信号（ＬＡＳＩ信号１２）を上位側のホスト４に対して送信することができる。
【００５２】
この他、上記実施の形態３において、下記のように構成しても良い。
先ず、ＤＣＵ２が、ＸＥＮＰＡＫレジスタ群８のＰＨＹ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタに対応する、ＸＥＮＰＡＫレジスタ群９ａのＤＣＵ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタ（不図示）の制御を受けない、ＤＣＵ２が監視する全てのエラーイベントに対してエラー信号（第１のエラー信号）を発生させるためのＤＣＵ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号（ＤＣＵ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタをバイパスして生成されるエラー信号）（第５のエラー信号）と、ＤＣＵ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタを介し、指定されたエラーイベントについてエラー信号の発生を禁止した通常のエラー信号（以下、ＤＣＵ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号と称す）（第６のエラー信号）との双方又はＤＣＵ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号のみをＰＨＹＩＣ３に出力する。そして、これと同時に、ＰＨＹＩＣ３は、Ｉ２Ｃインタフェース１０を介して、ＤＣＵ２のＤＣＵ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタの内容をＰＨＹ＿ＬＡＳＩ＿Ｓｔａｔｕｓレジスタへコピーする。
【００５３】
なお、ＤＣＵ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号とは、ＤＣＵ＿ＬＡＳＩ＿Ｃｏｎｔｒｏｌレジスタによらず、つまりエラー要因によらず、ＤＣＵ２が検出したエラーを通知し特定するためのディジタル値を、ＰＨＹＩＣ３側で認識するのに適した形態で表した信号である。また、ＤＣＵ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号は、ＤＣＵ＿ＬＡＳＩ＿ＣｏｎｔｒｏｌレジスタによってＬＡＳＩ信号の生成が制御されるエラーを特定するディジタル信号である。
【００５４】
このようにすることで、ＰＨＹＩＣ３は、ＤＣＵ２からのＤＣＵ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号によって、ＤＣＵ２のみで検出され、ＰＨＹＩＣ３でエラー信号の発生が禁止されていたエラーイベントの発生についても検出することができる。これにより、ＰＨＹＩＣ３は、ホスト４に対して当該エラーについての二次的なＬＡＳＩ信号１２を出力し、エラーイベントの通知を行うことができる。
【図面の簡単な説明】
【００５５】
【図１】この発明の実施の形態１によるトランシーバモジュールの構成及びそのアラーム信号制御処理を説明する図である。
【図２】この発明の実施の形態２によるトランシーバモジュールの構成及びそのアラーム信号制御処理を説明する図である。
【図３】この発明の実施の形態３によるトランシーバモジュールの構成及びそのアラーム信号制御処理を説明する図である。
【符号の説明】
【００５６】
１  トランシーバモジュール、２  ＤＣＵ（制御集積回路部）、３  ＰＨＹＩＣ（物理層集積回路部）、４  ホスト（上位レイヤ側装置）、５  ＭＤＩＯインタフェース、６，７  ＭＤＩＯインタフェース回路、８，９ａ  ＸＥＮＰＡＫレジスタ群（物理層側レジスタ部、制御側レジスタ部）、８ａ  ＮＶレジスタ、８ｂ  ＤＯＭレジスタ、９  ＳＲＡＭ、１０  Ｉ２Ｃインタフェース、１１  ＰＨＹ＿ＬＡＳＩ＿Ｕｎｍａｓｋ信号（第２のエラー信号）、１２  ＬＡＳＩ信号（第１のエラー信号）、１３ａ，１３ｂ  増幅器、１４ａ  送信用レーザ、１４ｂ  受信用素子、１５ａ，１５ｂ  光ケーブル、１６  ＣＰＵ、１７  ＲＡＭ、１８  タイマ（ＴＭ）、１９  ウォッチドッグタイマ（ＷＴ）、２０  ディジタル−アナログ変換器（ＤＡ）、２１  アナログ−ディジタル変換器（ＡＤ）、２２  ＤＣＵ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号（第４のエラー信号）、２３  ＰＨＹ＿ＬＡＳＩ＿Ｎｏｒｍａｌ信号（第３のエラー信号）。
【図１】
2006101163.tif 000003
【図２】
2006101163.tif 000004
【図３】
2006101163.tif 000005