説明

光トランシーバ

【課題】内部状態に関する情報を少ない遅延で上位レイヤに提供し得る光トランシーバを提供する。
【解決手段】光トランシーバ10は、外部の上位レイヤ100に接続される。マイクロコンピュータ14及びロジックデバイス12を備える。マイクロコンピュータは、光トランシーバの複数の内部状態を監視する。マイクロコンピュータは、複数の内部状態を示す複数のデータを記憶するMDIO(Management Data Input/Output)レジスタを有する。ロジックデバイスは、上位レイヤとMDIOバスを介して接続され、マイクロコンピュータと通信バスを介して接続される。ロジックデバイスは、MDIOバスを介して上位レイヤから送信されるアドレス情報によって特定されるMDIOレジスタ内の単一のデータを、通信バスを介して取得する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、光トランシーバに関するものである。
【背景技術】
【0002】
下記特許文献1には、一種の光トランシーバが記載されている。特許文献1に記載された光トランシーバは、トランシーバICと周辺ICとを備えている。トランシーバICは、上位レイヤとMDIO(Management Data Input/Output)バスを介して接続されている。また、トランシーバICは、周辺ICにも接続されている。周辺ICは、光トランシーバの複数の内部状態を監視し、当該複数の内部状態を示す複数のデータを記憶する。トランシーバICは、MDIOレジスタを有している。周辺ICの複数のデータは、周期的にMDIOレジスタに反映される。即ち、複数のデータを周辺ICからMDIOレジスタに送信する周期が繰り返される。上位レイヤには、トランシーバICからMDIOレジスタに記憶されたデータが提供される。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第4094931号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上述したように、特許文献1に記載された光トランシーバでは、MDIOレジスタに複数のデータが反映された後に、上位レイヤにデータが提供される構成が採用されている。したがって、最新の内部状態に関する情報を上位レイヤに提供するまでの間に遅延が発生し得る。
【0005】
したがって、当技術分野においては、内部状態に関する情報を少ない遅延で上位レイヤに提供し得る光トランシーバが要請されている。
【課題を解決するための手段】
【0006】
一側面に係る光トランシーバは、外部の上位レイヤに接続される光トランシーバである。この光トランシーバは、マイクロコンピュータ及びロジックデバイスを備える。マイクロコンピュータは、光トランシーバの複数の内部状態を監視する。マイクロコンピュータは、複数の内部状態を示す複数のデータを記憶するMDIO(Management Data Input/Output)レジスタを有する。ロジックデバイスは、上位レイヤとMDIOバスを介して接続され、マイクロコンピュータと通信バスを介して接続される。ロジックデバイスは、MDIOバスを介して上位レイヤから送信されるアドレス情報によって特定されるMDIOレジスタ内の単一のデータを、通信バスを介して取得する。一実施形態においては、通信バスは、ロジックデバイスとマイクロコンピュータを接続する通信バスはパラレル(双方向)通信バスであり得る。
【0007】
この光トランシーバでは、MDIOレジスタが周辺ICに相当するマイクロコンピュータに設けられている。マイクロコンピュータは当該MDIOレジスタ内に光トランシーバの内部状態に関する複数のデータを記憶する。上位レイヤからの内部状態に関するデータの取得要求に対しては、指定されたアドレスによって特定される単一のデータのみがMDIOレジスタからロジックデバイスに通信バスを介して提供され、当該データがロジックデバイスから上位レイヤに提供される。したがって、周辺IC内の複数のデータを周期的にトランシーバIC内のMDIOレジスタに反映させた後に、MDIOレジスタ内のデータを上位レイヤに提供する構成に比べて、内部状態に関する情報が少ない遅延で上位レイヤに提供され得る。
【発明の効果】
【0008】
以上説明したように、本発明によれば、内部状態に関する情報を少ない遅延で上位レイヤに提供し得る光トランシーバが提供される。
【図面の簡単な説明】
【0009】
【図1】一実施形態に係る光トランシーバを示す図である。
【図2】図1に示すマイクロコンピュータ及びロジックデバイスを上位レイヤと共に示す図である。
【図3】一実施形態に係るロジックデバイスとマイクロコンピュータとの間でのアドレス設定における通信のタイミングチャートである。
【図4】一実施形態に係るロジックデバイスとマイクロコンピュータとの間でのデータ書き込みにおける通信のタイミングチャートである。
【図5】一実施形態に係るロジックデバイスとマイクロコンピュータとの間でのデータ読み込みにおける通信のタイミングチャートである。
【図6】一実施形態に係るMDIO通信のフレーム構造を示す図である。
【図7】一実施形態に係るアドレス設定及びデータ書き込み時の上位レイヤとロジックデバイスとの間のMDIO通信、及びロジックデバイスとマイクロコンピュータとの間のパラレル通信のタイミングチャートである。
【図8】一実施形態に係るアドレス設定及びデータ読み込み時の上位レイヤとロジックデバイスとの間のMDIO通信、及びロジックデバイスとマイクロコンピュータとの間のパラレル通信のタイミングチャートである。
【図9】一実施形態に係るアドレス設定及びデータ読み込み時の上位レイヤとロジックデバイスとの間のMDIO通信、及びロジックデバイスとマイクロコンピュータとの間のパラレル通信のタイミングチャートである。
【発明を実施するための形態】
【0010】
以下、図面を参照して本発明の好適な実施形態について詳細に説明する。なお、各図面において同一又は相当の部分に対しては同一の符号を附すこととする。
【0011】
図1は、一実施形態に係る光トランシーバを示す図である。図2は、図1に示すマイクロコンピュータ及びロジックデバイスを上位レイヤと共に示す図である。図1に示す光トランシーバ10は、ホストシステムとも呼ばれる上位レイヤ100に対して挿抜可能な光トランシーバで有り得る。光トランシーバ10は、ロジックデバイス12、及び、マイクロコンピュータ14を備えている。また、光トランシーバ10は、クロックデータリカバリ(CDR)16、駆動制御回路18、光送信サブアセンブリ(TOSA)20、光マルチプレクサ22、光受信サブアセンブリ(ROSA)24、及び、光デマルチプレクサ26を備え得る。
【0012】
一実施形態においては、光トランシーバ10は、四つのTOSA 20、及び、四つのROSA 24を備え得る。四つのTOSA 20は、互いに異なる波長の光信号をそれぞれ発生し得る。また、四つのROSA 24は、互いに異なる波長の光信号をそれぞれ受信し得る。したがって、一実施形態においては、光トランシーバ10は、互いに異なる波長を有する四つの光信号を含む多重化光信号を用いて、光通信を実施し得る。
【0013】
TOSA 20は、レーザといった発光素子を有し得る。TOSA 20は、光マルチプレクサ22に光学的に結合されている。光マルチプレクサ22は、四つのTOSA 20からの光信号を多重化することによって生成した多重化光信号を外部に送信する。
【0014】
TOSA 20は、駆動制御回路18に電気的に結合されている。駆動制御回路18は、TOSA 20に発光素子を駆動するための駆動電流を提供する。また、駆動制御回路18は、TOSA 20の光出力のパワーを制御する。例えば、駆動制御回路18は、発光素子に与えるバイアス電流を制御することによって、光出力のパワーを制御する。したがって、駆動制御回路18は、ドライバ回路、及び、オートパワーコントロール回路と呼ばれる二つの回路の機能を含み得る。
【0015】
駆動制御回路18は、一部の(本実施形態では四つの)CDR 16に電気的に接続されている。CDR 16は、上位レイヤ100からの電気信号を受けて、当該電気信号にクロック成分を重畳し、生成した電気信号を駆動制御回路18に与える。駆動制御回路18は、当該電気信号に基づいて、駆動電流を発生する。
【0016】
駆動制御回路18は、外部からの停止信号をマイクロコンピュータ14を介して受ける。駆動制御回路18は、この停止信号をマイクロコンピュータ14から受けるための信号線を介してマイクロコンピュータ14に接続されている。また、駆動制御回路18は、シリアルペリフェラルインターフェイス(SPI)信号線を介して、マイクロコンピュータ14に接続されている。CDR 16も同様に、SPI信号線を介してマイクロコンピュータ14に接続されている。
【0017】
ROSA 24は、フォトダイオードといった光電変換素子、及び、光電変換素子からの光電流を電圧信号に変換するトランスインピーダンスアンプを有し得る。ROSA 24は、光デマルチプレクサ26に光学的に結合されている。外部から入力される多重化光信号は、光デマルチプレクサ26によって波長ごとに分離されて四つの光信号となる。これら四つの光信号は、四つのROSA 24によって受信される。ROSA 24は、受信した光信号のパワーに応じた電圧信号を出力する。
【0018】
ROSA 24は、別の一部の(本実施形態では四つの)CDR 16に電気的に接続されている。ROSA 24に接続されたCDR 16は入力される電圧信号からクロック成分を除去して、生成した電気信号を外部の上位レイヤ100に出力する。
【0019】
以下、図2を参照する。ロジックデバイス12は、プログラム可能なロジックデバイスの一種であるCPLD(Complex Programmable Logic Device)有り得る。ロジックデバイス12は、MDIO(Management Data Inpou/Output)インタフェイスを担当する。以下の説明では、ロジックデバイス12を、「CPLD」と呼ぶことがある。
【0020】
CPLD 12は、MDIOインタフェイスバス(MDIOバス)L12、及び、ポートアドレス用の5本(5ビット)の信号線L14を介して、上位レイヤ100と接続されている。MDIOインタフェイスバスL12は、クロック信号(MDC)用の信号線L12aとデータ信号(MDIO)用の信号線L12bの二本の信号線を含む。なお、MDIO信号線L12bは、双方向(パラレル)信号線である。
【0021】
マイクロコンピュータ14は、1チップのマイクロコンピュータで有り得る。以下の説明では、マイクロコンピュータ14を「CPU」と呼ぶことがある。CPU 14は、CDR 16、及び駆動制御回路18といった回路を制御して、TOSA 20及びROSA 24を制御する。
【0022】
また、CPU 14は、光トランシーバ10の内部状態を監視して、各種アラームやステータス信号を、MDIO通信経由で、或いは、上位レイヤ100に対して外部ピン経由で発報する。図2に示すように、一実施形態では、CPU 14は、上位レイヤ100を当該CPU 14に直接接続するための信号線L16を介して、アラームを発報し得る。
【0023】
CPU 14は、MDIOレジスタ14aを有し得る。CPU 14は、光トランシーバ10の複数の内部状態を監視し、当該複数の内部状態を示す複数のデータを、MDIOレジスタ14aに記憶する。複数の内部状態は、例えば、光トランシーバ10の温度、電源電圧、TOSA 20のバイアス電流値、TOSA 20の光送信パワー、TOSA 20の発光素子温度、ROSA 24の受信パワー等であり得る。
【0024】
このCPU14とCPLD 12とは、通信バスL20を介して接続されている。一実施形態においては、通信バスL20はパラレル通信バスで有り得、16本のパラレル信号線(パラレル通信バス)を含み得る。また、CPU14とCPLD 12とは、4本の制御信号線(/SS:スレーブセレクタ、AD:アドレス/データ、WR:書き込み/読み込み、/RES:応答)L22を介して接続され得る。
【0025】
CPLD 12は、上位レイヤ100から指定されるアドレス情報によって特定されるMDIOレジスタ14a内の単一のデータを、パラレル信号線L20を介して取得する。CPLD12は、レジスタ12aを含み得る。レジスタ12aは、領域12a1、及び、領域12a2を含み得る。領域12a1には、アドレス情報が格納される。また、領域12a2には、MDIOレジスタ14aから取得される単一のデータといったデータが格納される。
【0026】
以下、図3〜図9を参照して、CPLD 12とCPU 14との間の通信方法について、説明する。図3は、一実施形態に係るロジックデバイスとマイクロコンピュータとの間でのアドレス設定における通信のタイミングチャートである。光トランシーバ10では、上位レイヤからのアドレス情報を伴う指令に基づき、CPLD 12とCPU 14との間で図3に示すアドレス設定が行われる。
【0027】
図3に示すように、アドレス設定のための通信においては、CPLD 12は、まず、AD信号及びWR信号の状態を変化させて、変化後のAD信号及びWR信号を制御信号線L22に設定する。AD信号は、Lowのときにアドレスが送受されることを示し、Highのときにデータが送受されることを示す。したがって、図3に示すAD信号は、通信開始前にLowに設定される。また、WR信号は、Lowのときに書き込み(Write)が行われることを示し、Highのときに読み込み(Read)が行われることを示す。したがって、図3に示すWR信号は、通信開始前にLowに設定される。
【0028】
また、図3に示すように、CPLD 12は、パラレル信号線L20にアドレス情報を設定する。このアドレス情報は、上位レイヤ100から指定されるものであり得る。次いで、CPLD 12は、制御信号線L22に設定する/SS信号をHighからLowに変化させることで、通信を開始する。
【0029】
CPU 14は、/SS信号用の信号線を外部割り込みピンに割当て、HighからLowへの変化を検出することで割り込み処理を実行する。割り込み処理では、CPU 14は、/RES信号をHighからLowに変更する。そして、CPU 14は、AD信号及びWR信号がLowであるので、パラレル信号線L20に設定されたアドレス情報を取り込み、内部のカレントアドレスを当該アドレス情報によって特定されるアドレスに更新する。
【0030】
CPLD 12は、/RES信号がLowである間はパラレル信号線L20や制御信号線L22の状態を変化させない。/RES信号がLowからHighに戻ったときに、CPLD 12は、CPU 14側の処理が完了したと判断し、/SS信号をLowからHighに戻し、パラレル通信を完了させる。
【0031】
図4は、一実施形態に係るロジックデバイスとマイクロコンピュータとの間でのデータ書き込みにおける通信のタイミングチャートである。図4に示すタイミングチャートは、図3に示すように設定されたカレントアドレス(MDIOレジスタ内のアドレス)に、データを書き込む際の通信を示している。
【0032】
図4に示すように、データの書き込み時には、CPLD 12は、通信開始前に、AD信号の状態をHighに変更し、WR信号の状態をLowに変更し、変更後のAD信号及びWR信号を制御信号線L22に設定する。次いで、図4に示すように、CPLD 12は、パラレル信号線L20にデータを設定する。次いで、CPLD 12は、制御信号線L22に設定する/SS信号をHighからLowに変化させることで、通信を開始する。
【0033】
CPU 14は、/SS信号用の信号線を外部割り込みピンに割当て、HighからLowへの変化を検出することで割り込み処理を実行する。割り込み処理では、CPU 14は、/RES信号をHighからLowに変更する。そして、CPU 14は、AD信号がHighでありWR信号がLowであるので、パラレル信号線L20に設定されたデータを取り込み、内部のカレントアドレスのデータを取り込んだデータで更新する。
【0034】
そして、/RES信号がLowからHighに戻ったときに、CPLD 12は、CPU 14側の処理が完了したと判断し、/SS信号をLowからHighに戻し、パラレル通信を完了させる。
【0035】
図5は、一実施形態に係るロジックデバイスとマイクロコンピュータとの間でのデータ読み込みにおける通信のタイミングチャートである。図5に示すタイミングチャートは、カレントアドレス(MDIOレジスタ内のアドレス)から、データを読み込む際の通信を示している。
【0036】
図5に示すように、データの読み込み時には、CPU 14は、パラレル信号線L20にカレントアドレス(MDIOレジスタ内のアドレス)のデータを設定する。なお、図5に示す形態では、CPLD 12は、通信開始前にAD信号の状態をHighに変更し、WR信号の状態をHighに変更し、これら信号を制御信号線L22設定している。次いで、図5に示す形態では、CPLD 12は、制御信号線L22に設定する/SS信号をHighからLowに変化させている。
【0037】
次いで、CPU 14は、制御信号線L22に設定する/RES信号をHighからLowに変更し、パラレル信号線L20にデータを設定する。CPLD 12は、/RES信号がLowからHighに変化したことを検出すると、パラレル信号線L20に設定されたデータを取り込む。
【0038】
そして、CPLD 12は、/SS信号をLowからHighに戻すことでパラレル通信を完了させる。CPLD 12によって取り込まれたデータは、CPLD12のレジスタ12aの領域12a2に格納され、MDIOインタフェイスバスL12を介して、上位レイヤ100に提供され得る。
【0039】
上述したように、パラレル信号線L22は双方向信号線であり得る。したがって、アドレス設定及びデータ書き込み時には、パラレル信号線L22に対する出力ポートはCPLD 12となり、入力ポートはCPU 14となる。一方、データ読み込み時には、パラレル信号線L22に対する出力ポートはCPU 14となり、入力ポートはCPLD 12となる。
【0040】
以下、上位レイヤとCPLD 12との間で送受され得るMDIO通信のフレーム構造について説明する。図6は、一実施形態に係るMDIO通信のフレーム構造を示す図である。一実施形態においては、上位レイヤとCPLD 12との間で送受されるフレームは、IEEE 802.3 Clause 45,CFP MSA Management Interface Specificationで規定されるフレーム構造を有し得る。
【0041】
このフレームは、図6に示すように、32ビットのプリアンブル(Preamble)、スタートビッツ(ST、2ビット)、オペレーションコード(OP、2ビット)、フィジカルポートアドレス(PHYADR、5ビット)、MDIOデバイスアドレス(DEVADD、5ビット)、ターンアラウンドビッツ(TA、2ビット)、16ビットのアドレス情報/データ領域で構成される。
【0042】
一実施形態の光トランシーバ10の場合には、フィジカルポートアドレスはPHYADR0−4信号で与えられ、図6に示すようにMDIOデバイスアドレスは、「00001」(PMA/PMD)のみ応答する。
【0043】
また、オペレーションコード(OP)には、図6に示すように、アドレス設定(Address)、データライト(Write)、データリード(Read)、インクリメント付きデータリード(Post Read inc Add)の4種が存在する。
【0044】
以下、図7〜図9を参照して、上位レイヤとCPLD 12との間のMDIO通信、及び、CPLD 12とCPU 14との間のパラレル通信のタイミングについて説明する。図7は、一実施形態に係るアドレス設定及びデータ書き込み時の上位レイヤとロジックデバイスとの間のMDIO通信、及びロジックデバイスとマイクロコンピュータとの間のパラレル通信のタイミングチャートである。図7は、アドレス設定からMDIOレジスタのカレントアドレスへのデータの書き込みの処理までのタイミングを示している。
【0045】
図7に示すように、MDIOレジスタ14aへのデータの書き込みのために、上位レイヤ100は、CPLD 12に対して、MDIO信号線L12aを介して、フレームF71を送信する。なお、以下に説明するフレームは、図6に示したフレーム構造で有り得る。フレームF71のオペレーションコード(OP)には、「Address」が設定され、16ビットのアドレス情報/データ領域には、アドレス情報が設定される。なお、図7〜図9のフレーム構造を示す二つの矩形のうち左側の矩形は、プリアンプルからターンアラウンドビッツを示しており、右側の矩形は16ビットのアドレス情報/データ領域を示している。
【0046】
CPLD 12によるフレームF71の受信後、図3を参照して説明した処理に従い、アドレス設定が行われる。具体的には、CPLD 12は、フレームF71のオペレーションコードが「Address」であることを検出して、当該フレームF71のアドレス情報/データ領域からアドレス情報を取得する。そして、CPLD 12は、取得したアドレス情報を、パラレル信号線L20に設定する。次いで、CPU 14は、パラレル信号線L20に設定されたアドレス情報を用いて、カレントアドレスを設定する。このアドレス設定は、図7に示す期間P71において行われる。即ち、フレームF71に続くフレームF72の通信の期間に、アドレス設定が行われる。なお、フィジカルポートアドレスやMDIOデバイスアドレスが一致しない場合は、CPU 14に対するパラレル通信は行われない。
【0047】
次いで、フレームF71に引き続き、上位レイヤ100は、CPLD 12に対して、MDIO信号線L12aを介して、フレームF72を送信する。フレームF72におけるオペレーションコード(OP)は、「Write」に設定され、16ビットのアドレス情報/データ領域には、データが設定される。このフレームF72の通信の期間、即ち、アドレス設定の期間P71に続く期間P72においては、CPU 14からCPLD 12に対して、カレントアドレスのデータが送信される。CPU 14からCPLD 12へのデータの送信処理は、図5を参照して説明したデータの読み込みと同様である。
【0048】
次いで、フレームF72の受信後、図4を参照して説明した処理に従い、データの書き込みが行われる。具体的には、CPLD 12は、フレームF72のオペレーションコードが「write」であることを検出して、当該フレームF72のアドレス情報/データ領域からデータを取得する。そして、CPLD 12は、取得したデータをパラレル信号線L20に設定する。そして、CPU 14は、パラレル信号線L20に設定されたデータにより、カレントアドレスのデータを更新する。このデータの書き込みは、図7に示す期間P73において行われる。即ち、フレームF72に関するMDIO通信に続いて、データの書き込みが行われる。
【0049】
図8は、一実施形態に係るアドレス設定及びデータ読み込み時の上位レイヤとロジックデバイスとの間のMDIO通信、及びロジックデバイスとマイクロコンピュータとの間のパラレル通信のタイミングチャートである。図8は、データ読み込み時の処理のタイミングチャートの一例を示している。
【0050】
図8に示すよう、MDIOレジスタ14aからのデータの読み込みのために、上位レイヤ100は、CPLD 12に対して、MDIO信号線L12aを介して、フレームF81を送信する。フレームF81のオペレーションコード(OP)には、「Address」が設定され、16ビットのアドレス情報/データ領域には、アドレス情報が設定される。
【0051】
次いで、CPLD 12によるフレームF81の受信後、図3を参照して説明した処理に従い、アドレス設定が行われる。具体的には、CPLD 12は、フレームF81のオペレーションコードが「Address」であることを検出して、当該フレームF81のアドレス情報/データ領域からアドレス情報を取得する。そして、CPLD 12は、取得したアドレス情報を、パラレル信号線L20に設定する。次いで、CPU 14は、パラレル信号線L20に設定されたアドレス情報を用いて、カレントアドレスを設定する。このアドレス設定は、図8に示す期間P81において行われる。即ち、フレームF81に続くフレームF82のプリアンブルからターンアラウンドビッツの通信の期間に、アドレス設定が行われる。
【0052】
フレームF81に引き続き、CPLD 12と上位レイヤ100との間で、MDIO信号線L12aを介して、フレームF82が通信される。フレームF82におけるオペレーションコード(OP)は、「Read」に設定される。また、期間P81の直後の期間P82において、CPU 14からCPLD 12に対して、カレントアドレスのデータが送信される。CPU 14からCPLD 12へのデータの送信に関する処理については、図5を参照して説明したデータの読み込みと同様である。この期間P82は、フレームF82のプリアンブルからターンアラウンドビッツの通信が行われる期間である。したがって、MDIOレジスタ14a内のカレントアドレスのデータが、フレームF82のプリアンブルからターンアラウンドビッツの通信期間に、取得される。また、フレームF82のアドレス情報/データ領域の通信期間に、MDIOレジスタ14a内のカレントアドレスから取得されたデータがCPLD 12から上位レイヤ100に送信される。
【0053】
次いで、図8に示す一例では、CPLD 12と上位レイヤ100との間で、MDIO信号線L12aを介して、フレームF83が通信される。フレームF83におけるオペレーションコード(OP)は、「Read」に設定される。図8に示す一例では、フレームF83のオペレーションコードによって特定される読み取りに対して、カレントアドレスのデータをCPU 14からCPLD 12へ送信する処理は行われない。したがって、直前に取得されたカレントアドレスのデータが、フレームF83のアドレス情報/データ領域の通信期間に、CPLD 12から上位レイヤ100に送信される。
【0054】
図9は、一実施形態に係るアドレス設定及び連続データ読み込み時の上位レイヤとロジックデバイスとの間のMDIO通信、及びロジックデバイスとマイクロコンピュータとの間のパラレル通信のタイミングチャートである。図9は、データ読み込み時の処理のタイミングチャートの別の一例を示している。
【0055】
図9に示すよう、MDIOレジスタ14aからのデータの読み込みのために、上位レイヤ100は、CPLD 12に対して、MDIO信号線L12aを介して、フレームF91を送信する。フレームF91のオペレーションコード(OP)には、「Address」が設定され、16ビットのアドレス情報/データ領域には、アドレス情報が設定される。
【0056】
次いで、CPLD 12によるフレームF91の受信後、図3を参照して説明した処理に従い、アドレス設定が行われる。具体的には、CPLD 12は、フレームF91のオペレーションコードが「Address」であることを検出して、当該フレームF91のアドレス情報/データ領域からアドレス情報を取得する。そして、CPLD 12は、取得したアドレス情報を、パラレル信号線L20に設定する。次いで、CPU 14は、パラレル信号線L20に設定されたアドレス情報を用いて、カレントアドレスを設定する。このアドレス設定は、図9に示す期間P91において行われる。即ち、フレームF91に続くフレームF92のプリアンブルからターンアラウンドビッツの通信の期間に、アドレス設定が行われる。
【0057】
フレームF91に引き続き、CPLD 12と上位レイヤ100との間で、MDIO信号線L12aを介して、フレームF92が通信される。フレームF92におけるオペレーションコード(OP)は、「Post Read Inc Add」に設定される。また、期間P91の直後の期間P92において、CPU 14からCPLD 12に対して、カレントアドレスのデータが送信される。CPU 14からCPLD 12へのデータの送信に関する処理については、図5を参照して説明したデータの読み込みと同様である。この期間P92は、フレームF92のプリアンブルからターンアラウンドビッツの通信が行われる期間である。したがって、MDIOレジスタ14a内のカレントアドレスのデータが、フレームF92のプリアンブルからターンアラウンドビッツの通信期間に、取得される。また、フレームF92のアドレス情報/データ領域の通信期間に、MDIOレジスタ14a内のカレントアドレスから取得されたデータがCPLD 12から上位レイヤ100に送信される。なお、オペレーションコードが、「Post Read Inc Add」である場合には、CPU 14は、カレントアドレスのデータをCPLD 12へ転送した直後に、カレントアドレスを1データ領域分インクリメントする。
【0058】
図9に示す一例では、次いで、CPLD 12と上位レイヤ100との間で、MDIO信号線L12aを介して、フレームF93が通信される。フレームF93におけるオペレーションコード(OP)は、「Post Read Inc Add」に設定される。図9に示す一例では、上記オペレーションコードに従い、フレームF93のプリアンブルからターンアラウンドビッツの通信期間内の期間P93において、カレントアドレスのMDIOレジスタ内のデータがCPU 14からCPLD 12に送信される。このCPU 14からCPLD 12へのデータの送信に関する処理についても、図5を参照して説明したデータの読み込みと同様である。そして、取得されたデータが、フレームF93のアドレス情報/データ領域の通信期間に、CPLD 12から上位レイヤ100に送信される。なお、上述したように、CPU 14は、上記オペレーションコードに従い、カレントアドレスのデータをCPLD 12へ転送した直後に、カレントアドレスを1データ領域分インクリメントする。
【0059】
以上説明した実施形態に係る光トランシーバ10によれば、MDIOレジスタ14aがCPU 14内に設けられており、CPU 14は当該MDIOレジスタ14a内に光トランシーバ10の内部状態に関する複数のデータを記憶する。また、上位レイヤ100からの内部状態に関するデータの取得要求に対しては、指定されたアドレスによって特定される単一のデータのみがMDIOレジスタ14aからCPLD 12にパラレル通信バスL20を介して提供され、当該データがCPLD 12から上位レイヤ100に提供される。したがって、光トランシーバ10は、内部状態に関する情報を少ない遅延で上位レイヤ100に提供し得る。
【符号の説明】
【0060】
10…光トランシーバ、12…ロジックデバイス(CPLD)、12a…レジスタ、14…マイクロコンピュータ(CPU)、14a…MDIOレジスタ、18…駆動制御回路、22…光マルチプレクサ、26…光デマルチプレクサ、100…上位レイヤ、L12…MDIOインタフェイスバス、L20…パラレル信号線(パラレル通信バス)、L22…制御信号線。

【特許請求の範囲】
【請求項1】
外部の上位レイヤに接続される光トランシーバであって、
該光トランシーバの複数の内部状態を監視するマイクロコンピュータであって、該複数の内部状態を示す複数のデータを記憶するMDIO(Management Data Input/Output)レジスタを有する該マイクロコンピュータと、
前記上位レイヤとMDIOバスを介して接続され、前記マイクロコンピュータと通信バスを介して接続されるプログラム可能なロジックデバイスであって、前記MDIOバスを介して前記上位レイヤから送信されるアドレス情報によって特定される前記MDIOレジスタ内の単一のデータを、前記通信バスを介して取得する、該ロジックデバイスと、
を備える光トランシーバ。
【請求項2】
前記通信バスは、パラレル通信バスである、請求項1に記載の光トランシーバ。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate