(57)【要約】      （修正有）【課題】内部状態に関する情報を少ない遅延で上位レイヤに提供し得る光トランシーバを提供する。【解決手段】光トランシーバ１０は、外部の上位レイヤ１００に接続される。マイクロコンピュータ１４及びロジックデバイス１２を備える。マイクロコンピュータは、光トランシーバの複数の内部状態を監視する。マイクロコンピュータは、複数の内部状態を示す複数のデータを記憶するＭＤＩＯ（Ｍａｎａｇｅｍｅｎｔ  Ｄａｔａ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）レジスタを有する。ロジックデバイスは、上位レイヤとＭＤＩＯバスを介して接続され、マイクロコンピュータと通信バスを介して接続される。ロジックデバイスは、ＭＤＩＯバスを介して上位レイヤから送信されるアドレス情報によって特定されるＭＤＩＯレジスタ内の単一のデータを、通信バスを介して取得する。【選択図】図２
2012169745.tif 000002
【特許請求の範囲】
【請求項１】
外部の上位レイヤに接続される光トランシーバであって、
該光トランシーバの複数の内部状態を監視するマイクロコンピュータであって、該複数の内部状態を示す複数のデータを記憶するＭＤＩＯ（Ｍａｎａｇｅｍｅｎｔ  Ｄａｔａ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）レジスタを有する該マイクロコンピュータと、
前記上位レイヤとＭＤＩＯバスを介して接続され、前記マイクロコンピュータと通信バスを介して接続されるプログラム可能なロジックデバイスであって、前記ＭＤＩＯバスを介して前記上位レイヤから送信されるアドレス情報によって特定される前記ＭＤＩＯレジスタ内の単一のデータを、前記通信バスを介して取得する、該ロジックデバイスと、
を備える光トランシーバ。
【請求項２】
前記通信バスは、パラレル通信バスである、請求項１に記載の光トランシーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光トランシーバに関するものである。
【背景技術】
【０００２】
下記特許文献１には、一種の光トランシーバが記載されている。特許文献１に記載された光トランシーバは、トランシーバＩＣと周辺ＩＣとを備えている。トランシーバＩＣは、上位レイヤとＭＤＩＯ（Ｍａｎａｇｅｍｅｎｔ  Ｄａｔａ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）バスを介して接続されている。また、トランシーバＩＣは、周辺ＩＣにも接続されている。周辺ＩＣは、光トランシーバの複数の内部状態を監視し、当該複数の内部状態を示す複数のデータを記憶する。トランシーバＩＣは、ＭＤＩＯレジスタを有している。周辺ＩＣの複数のデータは、周期的にＭＤＩＯレジスタに反映される。即ち、複数のデータを周辺ＩＣからＭＤＩＯレジスタに送信する周期が繰り返される。上位レイヤには、トランシーバＩＣからＭＤＩＯレジスタに記憶されたデータが提供される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４０９４９３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述したように、特許文献１に記載された光トランシーバでは、ＭＤＩＯレジスタに複数のデータが反映された後に、上位レイヤにデータが提供される構成が採用されている。したがって、最新の内部状態に関する情報を上位レイヤに提供するまでの間に遅延が発生し得る。
【０００５】
したがって、当技術分野においては、内部状態に関する情報を少ない遅延で上位レイヤに提供し得る光トランシーバが要請されている。
【課題を解決するための手段】
【０００６】
一側面に係る光トランシーバは、外部の上位レイヤに接続される光トランシーバである。この光トランシーバは、マイクロコンピュータ及びロジックデバイスを備える。マイクロコンピュータは、光トランシーバの複数の内部状態を監視する。マイクロコンピュータは、複数の内部状態を示す複数のデータを記憶するＭＤＩＯ（Ｍａｎａｇｅｍｅｎｔ  Ｄａｔａ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）レジスタを有する。ロジックデバイスは、上位レイヤとＭＤＩＯバスを介して接続され、マイクロコンピュータと通信バスを介して接続される。ロジックデバイスは、ＭＤＩＯバスを介して上位レイヤから送信されるアドレス情報によって特定されるＭＤＩＯレジスタ内の単一のデータを、通信バスを介して取得する。一実施形態においては、通信バスは、ロジックデバイスとマイクロコンピュータを接続する通信バスはパラレル（双方向）通信バスであり得る。
【０００７】
この光トランシーバでは、ＭＤＩＯレジスタが周辺ＩＣに相当するマイクロコンピュータに設けられている。マイクロコンピュータは当該ＭＤＩＯレジスタ内に光トランシーバの内部状態に関する複数のデータを記憶する。上位レイヤからの内部状態に関するデータの取得要求に対しては、指定されたアドレスによって特定される単一のデータのみがＭＤＩＯレジスタからロジックデバイスに通信バスを介して提供され、当該データがロジックデバイスから上位レイヤに提供される。したがって、周辺ＩＣ内の複数のデータを周期的にトランシーバＩＣ内のＭＤＩＯレジスタに反映させた後に、ＭＤＩＯレジスタ内のデータを上位レイヤに提供する構成に比べて、内部状態に関する情報が少ない遅延で上位レイヤに提供され得る。
【発明の効果】
【０００８】
以上説明したように、本発明によれば、内部状態に関する情報を少ない遅延で上位レイヤに提供し得る光トランシーバが提供される。
【図面の簡単な説明】
【０００９】
【図１】一実施形態に係る光トランシーバを示す図である。
【図２】図１に示すマイクロコンピュータ及びロジックデバイスを上位レイヤと共に示す図である。
【図３】一実施形態に係るロジックデバイスとマイクロコンピュータとの間でのアドレス設定における通信のタイミングチャートである。
【図４】一実施形態に係るロジックデバイスとマイクロコンピュータとの間でのデータ書き込みにおける通信のタイミングチャートである。
【図５】一実施形態に係るロジックデバイスとマイクロコンピュータとの間でのデータ読み込みにおける通信のタイミングチャートである。
【図６】一実施形態に係るＭＤＩＯ通信のフレーム構造を示す図である。
【図７】一実施形態に係るアドレス設定及びデータ書き込み時の上位レイヤとロジックデバイスとの間のＭＤＩＯ通信、及びロジックデバイスとマイクロコンピュータとの間のパラレル通信のタイミングチャートである。
【図８】一実施形態に係るアドレス設定及びデータ読み込み時の上位レイヤとロジックデバイスとの間のＭＤＩＯ通信、及びロジックデバイスとマイクロコンピュータとの間のパラレル通信のタイミングチャートである。
【図９】一実施形態に係るアドレス設定及びデータ読み込み時の上位レイヤとロジックデバイスとの間のＭＤＩＯ通信、及びロジックデバイスとマイクロコンピュータとの間のパラレル通信のタイミングチャートである。
【発明を実施するための形態】
【００１０】
以下、図面を参照して本発明の好適な実施形態について詳細に説明する。なお、各図面において同一又は相当の部分に対しては同一の符号を附すこととする。
【００１１】
図１は、一実施形態に係る光トランシーバを示す図である。図２は、図１に示すマイクロコンピュータ及びロジックデバイスを上位レイヤと共に示す図である。図１に示す光トランシーバ１０は、ホストシステムとも呼ばれる上位レイヤ１００に対して挿抜可能な光トランシーバで有り得る。光トランシーバ１０は、ロジックデバイス１２、及び、マイクロコンピュータ１４を備えている。また、光トランシーバ１０は、クロックデータリカバリ（ＣＤＲ）１６、駆動制御回路１８、光送信サブアセンブリ（ＴＯＳＡ）２０、光マルチプレクサ２２、光受信サブアセンブリ（ＲＯＳＡ）２４、及び、光デマルチプレクサ２６を備え得る。
【００１２】
一実施形態においては、光トランシーバ１０は、四つのＴＯＳＡ  ２０、及び、四つのＲＯＳＡ  ２４を備え得る。四つのＴＯＳＡ  ２０は、互いに異なる波長の光信号をそれぞれ発生し得る。また、四つのＲＯＳＡ  ２４は、互いに異なる波長の光信号をそれぞれ受信し得る。したがって、一実施形態においては、光トランシーバ１０は、互いに異なる波長を有する四つの光信号を含む多重化光信号を用いて、光通信を実施し得る。
【００１３】
ＴＯＳＡ  ２０は、レーザといった発光素子を有し得る。ＴＯＳＡ  ２０は、光マルチプレクサ２２に光学的に結合されている。光マルチプレクサ２２は、四つのＴＯＳＡ  ２０からの光信号を多重化することによって生成した多重化光信号を外部に送信する。
【００１４】
ＴＯＳＡ  ２０は、駆動制御回路１８に電気的に結合されている。駆動制御回路１８は、ＴＯＳＡ  ２０に発光素子を駆動するための駆動電流を提供する。また、駆動制御回路１８は、ＴＯＳＡ  ２０の光出力のパワーを制御する。例えば、駆動制御回路１８は、発光素子に与えるバイアス電流を制御することによって、光出力のパワーを制御する。したがって、駆動制御回路１８は、ドライバ回路、及び、オートパワーコントロール回路と呼ばれる二つの回路の機能を含み得る。
【００１５】
駆動制御回路１８は、一部の（本実施形態では四つの）ＣＤＲ  １６に電気的に接続されている。ＣＤＲ  １６は、上位レイヤ１００からの電気信号を受けて、当該電気信号にクロック成分を重畳し、生成した電気信号を駆動制御回路１８に与える。駆動制御回路１８は、当該電気信号に基づいて、駆動電流を発生する。
【００１６】
駆動制御回路１８は、外部からの停止信号をマイクロコンピュータ１４を介して受ける。駆動制御回路１８は、この停止信号をマイクロコンピュータ１４から受けるための信号線を介してマイクロコンピュータ１４に接続されている。また、駆動制御回路１８は、シリアルペリフェラルインターフェイス（ＳＰＩ）信号線を介して、マイクロコンピュータ１４に接続されている。ＣＤＲ  １６も同様に、ＳＰＩ信号線を介してマイクロコンピュータ１４に接続されている。
【００１７】
ＲＯＳＡ  ２４は、フォトダイオードといった光電変換素子、及び、光電変換素子からの光電流を電圧信号に変換するトランスインピーダンスアンプを有し得る。ＲＯＳＡ  ２４は、光デマルチプレクサ２６に光学的に結合されている。外部から入力される多重化光信号は、光デマルチプレクサ２６によって波長ごとに分離されて四つの光信号となる。これら四つの光信号は、四つのＲＯＳＡ  ２４によって受信される。ＲＯＳＡ  ２４は、受信した光信号のパワーに応じた電圧信号を出力する。
【００１８】
ＲＯＳＡ  ２４は、別の一部の（本実施形態では四つの）ＣＤＲ  １６に電気的に接続されている。ＲＯＳＡ  ２４に接続されたＣＤＲ  １６は入力される電圧信号からクロック成分を除去して、生成した電気信号を外部の上位レイヤ１００に出力する。
【００１９】
以下、図２を参照する。ロジックデバイス１２は、プログラム可能なロジックデバイスの一種であるＣＰＬＤ（Ｃｏｍｐｌｅｘ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）有り得る。ロジックデバイス１２は、ＭＤＩＯ（Ｍａｎａｇｅｍｅｎｔ  Ｄａｔａ  Ｉｎｐｏｕ／Ｏｕｔｐｕｔ）インタフェイスを担当する。以下の説明では、ロジックデバイス１２を、「ＣＰＬＤ」と呼ぶことがある。
【００２０】
ＣＰＬＤ  １２は、ＭＤＩＯインタフェイスバス（ＭＤＩＯバス）Ｌ１２、及び、ポートアドレス用の５本（５ビット）の信号線Ｌ１４を介して、上位レイヤ１００と接続されている。ＭＤＩＯインタフェイスバスＬ１２は、クロック信号（ＭＤＣ）用の信号線Ｌ１２ａとデータ信号（ＭＤＩＯ）用の信号線Ｌ１２ｂの二本の信号線を含む。なお、ＭＤＩＯ信号線Ｌ１２ｂは、双方向（パラレル）信号線である。
【００２１】
マイクロコンピュータ１４は、１チップのマイクロコンピュータで有り得る。以下の説明では、マイクロコンピュータ１４を「ＣＰＵ」と呼ぶことがある。ＣＰＵ  １４は、ＣＤＲ  １６、及び駆動制御回路１８といった回路を制御して、ＴＯＳＡ  ２０及びＲＯＳＡ  ２４を制御する。
【００２２】
また、ＣＰＵ  １４は、光トランシーバ１０の内部状態を監視して、各種アラームやステータス信号を、ＭＤＩＯ通信経由で、或いは、上位レイヤ１００に対して外部ピン経由で発報する。図２に示すように、一実施形態では、ＣＰＵ  １４は、上位レイヤ１００を当該ＣＰＵ  １４に直接接続するための信号線Ｌ１６を介して、アラームを発報し得る。
【００２３】
ＣＰＵ  １４は、ＭＤＩＯレジスタ１４ａを有し得る。ＣＰＵ  １４は、光トランシーバ１０の複数の内部状態を監視し、当該複数の内部状態を示す複数のデータを、ＭＤＩＯレジスタ１４ａに記憶する。複数の内部状態は、例えば、光トランシーバ１０の温度、電源電圧、ＴＯＳＡ  ２０のバイアス電流値、ＴＯＳＡ  ２０の光送信パワー、ＴＯＳＡ  ２０の発光素子温度、ＲＯＳＡ  ２４の受信パワー等であり得る。
【００２４】
このＣＰＵ１４とＣＰＬＤ  １２とは、通信バスＬ２０を介して接続されている。一実施形態においては、通信バスＬ２０はパラレル通信バスで有り得、１６本のパラレル信号線（パラレル通信バス）を含み得る。また、ＣＰＵ１４とＣＰＬＤ  １２とは、４本の制御信号線（／ＳＳ：スレーブセレクタ、ＡＤ：アドレス／データ、ＷＲ：書き込み／読み込み、／ＲＥＳ：応答）Ｌ２２を介して接続され得る。
【００２５】
ＣＰＬＤ  １２は、上位レイヤ１００から指定されるアドレス情報によって特定されるＭＤＩＯレジスタ１４ａ内の単一のデータを、パラレル信号線Ｌ２０を介して取得する。ＣＰＬＤ１２は、レジスタ１２ａを含み得る。レジスタ１２ａは、領域１２ａ１、及び、領域１２ａ２を含み得る。領域１２ａ１には、アドレス情報が格納される。また、領域１２ａ２には、ＭＤＩＯレジスタ１４ａから取得される単一のデータといったデータが格納される。
【００２６】
以下、図３〜図９を参照して、ＣＰＬＤ  １２とＣＰＵ  １４との間の通信方法について、説明する。図３は、一実施形態に係るロジックデバイスとマイクロコンピュータとの間でのアドレス設定における通信のタイミングチャートである。光トランシーバ１０では、上位レイヤからのアドレス情報を伴う指令に基づき、ＣＰＬＤ  １２とＣＰＵ  １４との間で図３に示すアドレス設定が行われる。
【００２７】
図３に示すように、アドレス設定のための通信においては、ＣＰＬＤ  １２は、まず、ＡＤ信号及びＷＲ信号の状態を変化させて、変化後のＡＤ信号及びＷＲ信号を制御信号線Ｌ２２に設定する。ＡＤ信号は、Ｌｏｗのときにアドレスが送受されることを示し、Ｈｉｇｈのときにデータが送受されることを示す。したがって、図３に示すＡＤ信号は、通信開始前にＬｏｗに設定される。また、ＷＲ信号は、Ｌｏｗのときに書き込み（Ｗｒｉｔｅ）が行われることを示し、Ｈｉｇｈのときに読み込み（Ｒｅａｄ）が行われることを示す。したがって、図３に示すＷＲ信号は、通信開始前にＬｏｗに設定される。
【００２８】
また、図３に示すように、ＣＰＬＤ  １２は、パラレル信号線Ｌ２０にアドレス情報を設定する。このアドレス情報は、上位レイヤ１００から指定されるものであり得る。次いで、ＣＰＬＤ  １２は、制御信号線Ｌ２２に設定する／ＳＳ信号をＨｉｇｈからＬｏｗに変化させることで、通信を開始する。
【００２９】
ＣＰＵ  １４は、／ＳＳ信号用の信号線を外部割り込みピンに割当て、ＨｉｇｈからＬｏｗへの変化を検出することで割り込み処理を実行する。割り込み処理では、ＣＰＵ  １４は、／ＲＥＳ信号をＨｉｇｈからＬｏｗに変更する。そして、ＣＰＵ  １４は、ＡＤ信号及びＷＲ信号がＬｏｗであるので、パラレル信号線Ｌ２０に設定されたアドレス情報を取り込み、内部のカレントアドレスを当該アドレス情報によって特定されるアドレスに更新する。
【００３０】
ＣＰＬＤ  １２は、／ＲＥＳ信号がＬｏｗである間はパラレル信号線Ｌ２０や制御信号線Ｌ２２の状態を変化させない。／ＲＥＳ信号がＬｏｗからＨｉｇｈに戻ったときに、ＣＰＬＤ  １２は、ＣＰＵ  １４側の処理が完了したと判断し、／ＳＳ信号をＬｏｗからＨｉｇｈに戻し、パラレル通信を完了させる。
【００３１】
図４は、一実施形態に係るロジックデバイスとマイクロコンピュータとの間でのデータ書き込みにおける通信のタイミングチャートである。図４に示すタイミングチャートは、図３に示すように設定されたカレントアドレス（ＭＤＩＯレジスタ内のアドレス）に、データを書き込む際の通信を示している。
【００３２】
図４に示すように、データの書き込み時には、ＣＰＬＤ  １２は、通信開始前に、ＡＤ信号の状態をＨｉｇｈに変更し、ＷＲ信号の状態をＬｏｗに変更し、変更後のＡＤ信号及びＷＲ信号を制御信号線Ｌ２２に設定する。次いで、図４に示すように、ＣＰＬＤ  １２は、パラレル信号線Ｌ２０にデータを設定する。次いで、ＣＰＬＤ  １２は、制御信号線Ｌ２２に設定する／ＳＳ信号をＨｉｇｈからＬｏｗに変化させることで、通信を開始する。
【００３３】
ＣＰＵ  １４は、／ＳＳ信号用の信号線を外部割り込みピンに割当て、ＨｉｇｈからＬｏｗへの変化を検出することで割り込み処理を実行する。割り込み処理では、ＣＰＵ  １４は、／ＲＥＳ信号をＨｉｇｈからＬｏｗに変更する。そして、ＣＰＵ  １４は、ＡＤ信号がＨｉｇｈでありＷＲ信号がＬｏｗであるので、パラレル信号線Ｌ２０に設定されたデータを取り込み、内部のカレントアドレスのデータを取り込んだデータで更新する。
【００３４】
そして、／ＲＥＳ信号がＬｏｗからＨｉｇｈに戻ったときに、ＣＰＬＤ  １２は、ＣＰＵ  １４側の処理が完了したと判断し、／ＳＳ信号をＬｏｗからＨｉｇｈに戻し、パラレル通信を完了させる。
【００３５】
図５は、一実施形態に係るロジックデバイスとマイクロコンピュータとの間でのデータ読み込みにおける通信のタイミングチャートである。図５に示すタイミングチャートは、カレントアドレス（ＭＤＩＯレジスタ内のアドレス）から、データを読み込む際の通信を示している。
【００３６】
図５に示すように、データの読み込み時には、ＣＰＵ  １４は、パラレル信号線Ｌ２０にカレントアドレス（ＭＤＩＯレジスタ内のアドレス）のデータを設定する。なお、図５に示す形態では、ＣＰＬＤ  １２は、通信開始前にＡＤ信号の状態をＨｉｇｈに変更し、ＷＲ信号の状態をＨｉｇｈに変更し、これら信号を制御信号線Ｌ２２設定している。次いで、図５に示す形態では、ＣＰＬＤ  １２は、制御信号線Ｌ２２に設定する／ＳＳ信号をＨｉｇｈからＬｏｗに変化させている。
【００３７】
次いで、ＣＰＵ  １４は、制御信号線Ｌ２２に設定する／ＲＥＳ信号をＨｉｇｈからＬｏｗに変更し、パラレル信号線Ｌ２０にデータを設定する。ＣＰＬＤ  １２は、／ＲＥＳ信号がＬｏｗからＨｉｇｈに変化したことを検出すると、パラレル信号線Ｌ２０に設定されたデータを取り込む。
【００３８】
そして、ＣＰＬＤ  １２は、／ＳＳ信号をＬｏｗからＨｉｇｈに戻すことでパラレル通信を完了させる。ＣＰＬＤ  １２によって取り込まれたデータは、ＣＰＬＤ１２のレジスタ１２ａの領域１２ａ２に格納され、ＭＤＩＯインタフェイスバスＬ１２を介して、上位レイヤ１００に提供され得る。
【００３９】
上述したように、パラレル信号線Ｌ２２は双方向信号線であり得る。したがって、アドレス設定及びデータ書き込み時には、パラレル信号線Ｌ２２に対する出力ポートはＣＰＬＤ  １２となり、入力ポートはＣＰＵ  １４となる。一方、データ読み込み時には、パラレル信号線Ｌ２２に対する出力ポートはＣＰＵ  １４となり、入力ポートはＣＰＬＤ  １２となる。
【００４０】
以下、上位レイヤとＣＰＬＤ  １２との間で送受され得るＭＤＩＯ通信のフレーム構造について説明する。図６は、一実施形態に係るＭＤＩＯ通信のフレーム構造を示す図である。一実施形態においては、上位レイヤとＣＰＬＤ  １２との間で送受されるフレームは、ＩＥＥＥ  ８０２．３  Ｃｌａｕｓｅ  ４５，ＣＦＰ  ＭＳＡ  Ｍａｎａｇｅｍｅｎｔ  Ｉｎｔｅｒｆａｃｅ  Ｓｐｅｃｉｆｉｃａｔｉｏｎで規定されるフレーム構造を有し得る。
【００４１】
このフレームは、図６に示すように、３２ビットのプリアンブル（Ｐｒｅａｍｂｌｅ）、スタートビッツ（ＳＴ、２ビット）、オペレーションコード（ＯＰ、２ビット）、フィジカルポートアドレス（ＰＨＹＡＤＲ、５ビット）、ＭＤＩＯデバイスアドレス（ＤＥＶＡＤＤ、５ビット）、ターンアラウンドビッツ（ＴＡ、２ビット）、１６ビットのアドレス情報／データ領域で構成される。
【００４２】
一実施形態の光トランシーバ１０の場合には、フィジカルポートアドレスはＰＨＹＡＤＲ０−４信号で与えられ、図６に示すようにＭＤＩＯデバイスアドレスは、「００００１」（ＰＭＡ／ＰＭＤ）のみ応答する。
【００４３】
また、オペレーションコード（ＯＰ）には、図６に示すように、アドレス設定（Ａｄｄｒｅｓｓ）、データライト（Ｗｒｉｔｅ）、データリード（Ｒｅａｄ）、インクリメント付きデータリード（Ｐｏｓｔ  Ｒｅａｄ  ｉｎｃ  Ａｄｄ）の４種が存在する。
【００４４】
以下、図７〜図９を参照して、上位レイヤとＣＰＬＤ  １２との間のＭＤＩＯ通信、及び、ＣＰＬＤ  １２とＣＰＵ  １４との間のパラレル通信のタイミングについて説明する。図７は、一実施形態に係るアドレス設定及びデータ書き込み時の上位レイヤとロジックデバイスとの間のＭＤＩＯ通信、及びロジックデバイスとマイクロコンピュータとの間のパラレル通信のタイミングチャートである。図７は、アドレス設定からＭＤＩＯレジスタのカレントアドレスへのデータの書き込みの処理までのタイミングを示している。
【００４５】
図７に示すように、ＭＤＩＯレジスタ１４ａへのデータの書き込みのために、上位レイヤ１００は、ＣＰＬＤ  １２に対して、ＭＤＩＯ信号線Ｌ１２ａを介して、フレームＦ７１を送信する。なお、以下に説明するフレームは、図６に示したフレーム構造で有り得る。フレームＦ７１のオペレーションコード（ＯＰ）には、「Ａｄｄｒｅｓｓ」が設定され、１６ビットのアドレス情報／データ領域には、アドレス情報が設定される。なお、図７〜図９のフレーム構造を示す二つの矩形のうち左側の矩形は、プリアンプルからターンアラウンドビッツを示しており、右側の矩形は１６ビットのアドレス情報／データ領域を示している。
【００４６】
ＣＰＬＤ  １２によるフレームＦ７１の受信後、図３を参照して説明した処理に従い、アドレス設定が行われる。具体的には、ＣＰＬＤ  １２は、フレームＦ７１のオペレーションコードが「Ａｄｄｒｅｓｓ」であることを検出して、当該フレームＦ７１のアドレス情報／データ領域からアドレス情報を取得する。そして、ＣＰＬＤ  １２は、取得したアドレス情報を、パラレル信号線Ｌ２０に設定する。次いで、ＣＰＵ  １４は、パラレル信号線Ｌ２０に設定されたアドレス情報を用いて、カレントアドレスを設定する。このアドレス設定は、図７に示す期間Ｐ７１において行われる。即ち、フレームＦ７１に続くフレームＦ７２の通信の期間に、アドレス設定が行われる。なお、フィジカルポートアドレスやＭＤＩＯデバイスアドレスが一致しない場合は、ＣＰＵ  １４に対するパラレル通信は行われない。
【００４７】
次いで、フレームＦ７１に引き続き、上位レイヤ１００は、ＣＰＬＤ  １２に対して、ＭＤＩＯ信号線Ｌ１２ａを介して、フレームＦ７２を送信する。フレームＦ７２におけるオペレーションコード（ＯＰ）は、「Ｗｒｉｔｅ」に設定され、１６ビットのアドレス情報／データ領域には、データが設定される。このフレームＦ７２の通信の期間、即ち、アドレス設定の期間Ｐ７１に続く期間Ｐ７２においては、ＣＰＵ  １４からＣＰＬＤ  １２に対して、カレントアドレスのデータが送信される。ＣＰＵ  １４からＣＰＬＤ  １２へのデータの送信処理は、図５を参照して説明したデータの読み込みと同様である。
【００４８】
次いで、フレームＦ７２の受信後、図４を参照して説明した処理に従い、データの書き込みが行われる。具体的には、ＣＰＬＤ  １２は、フレームＦ７２のオペレーションコードが「ｗｒｉｔｅ」であることを検出して、当該フレームＦ７２のアドレス情報／データ領域からデータを取得する。そして、ＣＰＬＤ  １２は、取得したデータをパラレル信号線Ｌ２０に設定する。そして、ＣＰＵ  １４は、パラレル信号線Ｌ２０に設定されたデータにより、カレントアドレスのデータを更新する。このデータの書き込みは、図７に示す期間Ｐ７３において行われる。即ち、フレームＦ７２に関するＭＤＩＯ通信に続いて、データの書き込みが行われる。
【００４９】
図８は、一実施形態に係るアドレス設定及びデータ読み込み時の上位レイヤとロジックデバイスとの間のＭＤＩＯ通信、及びロジックデバイスとマイクロコンピュータとの間のパラレル通信のタイミングチャートである。図８は、データ読み込み時の処理のタイミングチャートの一例を示している。
【００５０】
図８に示すよう、ＭＤＩＯレジスタ１４ａからのデータの読み込みのために、上位レイヤ１００は、ＣＰＬＤ  １２に対して、ＭＤＩＯ信号線Ｌ１２ａを介して、フレームＦ８１を送信する。フレームＦ８１のオペレーションコード（ＯＰ）には、「Ａｄｄｒｅｓｓ」が設定され、１６ビットのアドレス情報／データ領域には、アドレス情報が設定される。
【００５１】
次いで、ＣＰＬＤ  １２によるフレームＦ８１の受信後、図３を参照して説明した処理に従い、アドレス設定が行われる。具体的には、ＣＰＬＤ  １２は、フレームＦ８１のオペレーションコードが「Ａｄｄｒｅｓｓ」であることを検出して、当該フレームＦ８１のアドレス情報／データ領域からアドレス情報を取得する。そして、ＣＰＬＤ  １２は、取得したアドレス情報を、パラレル信号線Ｌ２０に設定する。次いで、ＣＰＵ  １４は、パラレル信号線Ｌ２０に設定されたアドレス情報を用いて、カレントアドレスを設定する。このアドレス設定は、図８に示す期間Ｐ８１において行われる。即ち、フレームＦ８１に続くフレームＦ８２のプリアンブルからターンアラウンドビッツの通信の期間に、アドレス設定が行われる。
【００５２】
フレームＦ８１に引き続き、ＣＰＬＤ  １２と上位レイヤ１００との間で、ＭＤＩＯ信号線Ｌ１２ａを介して、フレームＦ８２が通信される。フレームＦ８２におけるオペレーションコード（ＯＰ）は、「Ｒｅａｄ」に設定される。また、期間Ｐ８１の直後の期間Ｐ８２において、ＣＰＵ  １４からＣＰＬＤ  １２に対して、カレントアドレスのデータが送信される。ＣＰＵ  １４からＣＰＬＤ  １２へのデータの送信に関する処理については、図５を参照して説明したデータの読み込みと同様である。この期間Ｐ８２は、フレームＦ８２のプリアンブルからターンアラウンドビッツの通信が行われる期間である。したがって、ＭＤＩＯレジスタ１４ａ内のカレントアドレスのデータが、フレームＦ８２のプリアンブルからターンアラウンドビッツの通信期間に、取得される。また、フレームＦ８２のアドレス情報／データ領域の通信期間に、ＭＤＩＯレジスタ１４ａ内のカレントアドレスから取得されたデータがＣＰＬＤ  １２から上位レイヤ１００に送信される。
【００５３】
次いで、図８に示す一例では、ＣＰＬＤ  １２と上位レイヤ１００との間で、ＭＤＩＯ信号線Ｌ１２ａを介して、フレームＦ８３が通信される。フレームＦ８３におけるオペレーションコード（ＯＰ）は、「Ｒｅａｄ」に設定される。図８に示す一例では、フレームＦ８３のオペレーションコードによって特定される読み取りに対して、カレントアドレスのデータをＣＰＵ  １４からＣＰＬＤ  １２へ送信する処理は行われない。したがって、直前に取得されたカレントアドレスのデータが、フレームＦ８３のアドレス情報／データ領域の通信期間に、ＣＰＬＤ  １２から上位レイヤ１００に送信される。
【００５４】
図９は、一実施形態に係るアドレス設定及び連続データ読み込み時の上位レイヤとロジックデバイスとの間のＭＤＩＯ通信、及びロジックデバイスとマイクロコンピュータとの間のパラレル通信のタイミングチャートである。図９は、データ読み込み時の処理のタイミングチャートの別の一例を示している。
【００５５】
図９に示すよう、ＭＤＩＯレジスタ１４ａからのデータの読み込みのために、上位レイヤ１００は、ＣＰＬＤ  １２に対して、ＭＤＩＯ信号線Ｌ１２ａを介して、フレームＦ９１を送信する。フレームＦ９１のオペレーションコード（ＯＰ）には、「Ａｄｄｒｅｓｓ」が設定され、１６ビットのアドレス情報／データ領域には、アドレス情報が設定される。
【００５６】
次いで、ＣＰＬＤ  １２によるフレームＦ９１の受信後、図３を参照して説明した処理に従い、アドレス設定が行われる。具体的には、ＣＰＬＤ  １２は、フレームＦ９１のオペレーションコードが「Ａｄｄｒｅｓｓ」であることを検出して、当該フレームＦ９１のアドレス情報／データ領域からアドレス情報を取得する。そして、ＣＰＬＤ  １２は、取得したアドレス情報を、パラレル信号線Ｌ２０に設定する。次いで、ＣＰＵ  １４は、パラレル信号線Ｌ２０に設定されたアドレス情報を用いて、カレントアドレスを設定する。このアドレス設定は、図９に示す期間Ｐ９１において行われる。即ち、フレームＦ９１に続くフレームＦ９２のプリアンブルからターンアラウンドビッツの通信の期間に、アドレス設定が行われる。
【００５７】
フレームＦ９１に引き続き、ＣＰＬＤ  １２と上位レイヤ１００との間で、ＭＤＩＯ信号線Ｌ１２ａを介して、フレームＦ９２が通信される。フレームＦ９２におけるオペレーションコード（ＯＰ）は、「Ｐｏｓｔ  Ｒｅａｄ  Ｉｎｃ  Ａｄｄ」に設定される。また、期間Ｐ９１の直後の期間Ｐ９２において、ＣＰＵ  １４からＣＰＬＤ  １２に対して、カレントアドレスのデータが送信される。ＣＰＵ  １４からＣＰＬＤ  １２へのデータの送信に関する処理については、図５を参照して説明したデータの読み込みと同様である。この期間Ｐ９２は、フレームＦ９２のプリアンブルからターンアラウンドビッツの通信が行われる期間である。したがって、ＭＤＩＯレジスタ１４ａ内のカレントアドレスのデータが、フレームＦ９２のプリアンブルからターンアラウンドビッツの通信期間に、取得される。また、フレームＦ９２のアドレス情報／データ領域の通信期間に、ＭＤＩＯレジスタ１４ａ内のカレントアドレスから取得されたデータがＣＰＬＤ  １２から上位レイヤ１００に送信される。なお、オペレーションコードが、「Ｐｏｓｔ  Ｒｅａｄ  Ｉｎｃ  Ａｄｄ」である場合には、ＣＰＵ  １４は、カレントアドレスのデータをＣＰＬＤ  １２へ転送した直後に、カレントアドレスを１データ領域分インクリメントする。
【００５８】
図９に示す一例では、次いで、ＣＰＬＤ  １２と上位レイヤ１００との間で、ＭＤＩＯ信号線Ｌ１２ａを介して、フレームＦ９３が通信される。フレームＦ９３におけるオペレーションコード（ＯＰ）は、「Ｐｏｓｔ  Ｒｅａｄ  Ｉｎｃ  Ａｄｄ」に設定される。図９に示す一例では、上記オペレーションコードに従い、フレームＦ９３のプリアンブルからターンアラウンドビッツの通信期間内の期間Ｐ９３において、カレントアドレスのＭＤＩＯレジスタ内のデータがＣＰＵ  １４からＣＰＬＤ  １２に送信される。このＣＰＵ  １４からＣＰＬＤ  １２へのデータの送信に関する処理についても、図５を参照して説明したデータの読み込みと同様である。そして、取得されたデータが、フレームＦ９３のアドレス情報／データ領域の通信期間に、ＣＰＬＤ  １２から上位レイヤ１００に送信される。なお、上述したように、ＣＰＵ  １４は、上記オペレーションコードに従い、カレントアドレスのデータをＣＰＬＤ  １２へ転送した直後に、カレントアドレスを１データ領域分インクリメントする。
【００５９】
以上説明した実施形態に係る光トランシーバ１０によれば、ＭＤＩＯレジスタ１４ａがＣＰＵ  １４内に設けられており、ＣＰＵ  １４は当該ＭＤＩＯレジスタ１４ａ内に光トランシーバ１０の内部状態に関する複数のデータを記憶する。また、上位レイヤ１００からの内部状態に関するデータの取得要求に対しては、指定されたアドレスによって特定される単一のデータのみがＭＤＩＯレジスタ１４ａからＣＰＬＤ  １２にパラレル通信バスＬ２０を介して提供され、当該データがＣＰＬＤ  １２から上位レイヤ１００に提供される。したがって、光トランシーバ１０は、内部状態に関する情報を少ない遅延で上位レイヤ１００に提供し得る。
【符号の説明】
【００６０】
１０…光トランシーバ、１２…ロジックデバイス（ＣＰＬＤ）、１２ａ…レジスタ、１４…マイクロコンピュータ（ＣＰＵ）、１４ａ…ＭＤＩＯレジスタ、１８…駆動制御回路、２２…光マルチプレクサ、２６…光デマルチプレクサ、１００…上位レイヤ、Ｌ１２…ＭＤＩＯインタフェイスバス、Ｌ２０…パラレル信号線（パラレル通信バス）、Ｌ２２…制御信号線。
【図１】
2012169745.tif 000003
【図２】
2012169745.tif 000004
【図３】
2012169745.tif 000005
【図４】
2012169745.tif 000006
【図５】
2012169745.tif 000007
【図６】
2012169745.tif 000008
【図７】
2012169745.tif 000009
【図８】
2012169745.tif 000010
【図９】
2012169745.tif 000011