(57)【要約】      （修正有）【課題】信号処理回路に回路情報を高速に実装する技術を提供する。【解決手段】第１ＳＰＩインターフェースと、揮発性の内部メモリとを備え、信号処理回路と、不揮発性メモリと、疑似ＳＰＩインターフェースを有するプロセッサと、を備える光トランシーバ１００の制御方法であって、回路情報の先頭に付加される書き込みコマンドが格納された不揮発性メモリをスレーブとして選択し、プロセッサから疑似ＳＰＩインターフェースを介して読み出しコマンドを不揮発性メモリに送信するステップと、読み出しコマンドに基づき、不揮発性メモリから前記第２ＳＰＩインターフェースを介して書き込みコマンドおよび回路情報を出力するステップと、信号処理回路をスレーブとして選択し、不揮発性メモリから出力された書き込みコマンドおよび回路情報を信号処理回路に取得させ、書き込みコマンドに基づき、回路情報を内部メモリに書き込むステップと、を含む。【選択図】図４
2020150525.tif 000002
【特許請求の範囲】
【請求項１】
第１ＳＰＩインターフェースと、揮発性の内部メモリとを備え、前記内部メモリに格納された回路情報に応じて電気信号を信号処理する信号処理回路と、前記第１ＳＰＩインターフェースに電気的に接続された第２ＳＰＩインターフェースを備える不揮発性メモリと、前記第１ＳＰＩインターフェースおよび前記第２ＳＰＩインターフェースに電気的に接続された疑似ＳＰＩインターフェースを有するプロセッサと、を備える光トランシーバの制御方法であって、
前記回路情報の先頭に付加される書き込みコマンドが格納された前記不揮発性メモリをスレーブとして選択し、前記プロセッサから前記疑似ＳＰＩインターフェースを介して読み出しコマンドを前記不揮発性メモリに送信するステップと、
前記読み出しコマンドに基づき、前記不揮発性メモリから前記第２ＳＰＩインターフェースを介して前記書き込みコマンドおよび前記回路情報を出力するステップと、
前記信号処理回路をスレーブとして選択し、前記不揮発性メモリから出力された前記書き込みコマンドおよび前記回路情報を前記信号処理回路に取得させ、前記書き込みコマンドに基づき、前記回路情報を前記内部メモリに書き込むステップと、
を含む光トランシーバの制御方法。
【請求項２】
前記疑似ＳＰＩインターフェースは、第１入出力ポートおよび第２入出力ポートを含み、
前記第１入出力ポートおよび前記第２入出力ポートは、各々前記プロセッサからデータを出力する出力モードと前記プロセッサにデータを入力する入力モードに設定可能なポートであり、
前記第１入出力ポートは、前記第１ＳＰＩインターフェースの入力ポートに接続されると共に前記第２ＳＰＩインターフェースの出力ポートに接続されており、前記第２入出力ポートは、前記第１ＳＰＩインターフェースの出力ポートに接続されると共に前記第２ＳＰＩインターフェースの入力ポートに接続されており、
前記第１入出力ポートを前記出力モードに設定すると共に前記第２入出力ポートを前記入力モードに設定するステップを含む請求項１に記載の光トランシーバの制御方法。
【請求項３】
前記第１入出力ポートおよび前記第２入出力ポートはＧＰＩＯポートである請求項２に記載の光トランシーバの制御方法。
【請求項４】
第１ＳＰＩインターフェースと、揮発性の内部メモリとを備え、前記内部メモリに格納された回路情報に応じて電気信号を信号処理する信号処理回路と、
前記第１ＳＰＩインターフェースに電気的に接続された第２ＳＰＩインターフェースを備え、書き込みコマンドおよび回路情報を格納する不揮発性メモリと、
第１入出力ポートおよび第２入出力ポートを有するプロセッサと、
を備え、
前記第１入出力ポートは、前記第２ＳＰＩインターフェースの入力ポートおよび前記第１ＳＰＩインターフェースの出力ポートに接続され、
前記第２入出力ポートは、前記第２ＳＰＩインターフェースの出力ポートおよび前記第１ＳＰＩインターフェースの入力ポートに接続され、
前記プロセッサは、読み出しコマンドを前記第１入出力ポートから出力し、
前記不揮発性メモリは、前記読み出しコマンドに基づき前記書き込みコマンドおよび前記回路情報を前記不揮発性メモリの前記第２ＳＰＩインターフェースの出力ポートから出力し、
前記信号処理回路は、前記不揮発性メモリが出力した前記書き込みコマンドおよび前記回路情報を前記第１ＳＰＩインターフェースの入力ポートを介して取得し、前記書き込みコマンドに基づき前記不揮発性メモリから出力された前記回路情報を前記内部メモリに書き込む光トランシーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光トランシーバおよびその制御方法に関する。
【背景技術】
【０００２】
光トランシーバは、入力された電気信号を光信号に変換して送信し、受信した光信号を電気信号に変換して出力する。メモリ間のデータのコピーを高速化するためスイッチを設けることが知られている（例えば特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−４２２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
光トランシーバに信号処理回路を搭載することが求められている。信号処理回路用のプログラム等の回路情報はメモリに格納されており、電源投入またはリセット時にメモリから信号処理回路に回路情報が実装される。メモリから信号処理回路への回路情報の実装を高速に行うことが求められている。回路情報の送受信に特許文献１の方法を用いると、光トランシーバにスイッチを搭載することになる。これにより、光トランシーバが大型化する。
【０００５】
本発明は、信号処理回路に回路情報を高速に実装することを目的とする。
【課題を解決するための手段】
【０００６】
本願発明の一実施形態は、第１ＳＰＩインターフェースと、揮発性の内部メモリとを備え、前記内部メモリに格納された回路情報に応じて電気信号を信号処理する信号処理回路と、前記第１ＳＰＩインターフェースに電気的に接続された第２ＳＰＩインターフェースを備える不揮発性メモリと、前記第１ＳＰＩインターフェースおよび前記第２ＳＰＩインターフェースに電気的に接続された疑似ＳＰＩインターフェースを有するプロセッサと、を備える光トランシーバの制御方法であって、前記回路情報の先頭に付加される書き込みコマンドが格納された前記不揮発性メモリをスレーブとして選択し、前記プロセッサから前記疑似ＳＰＩインターフェースを介して読み出しコマンドを前記不揮発性メモリに送信するステップと、前記読み出しコマンドに基づき、前記不揮発性メモリから前記第２ＳＰＩインターフェースを介して前記書き込みコマンドおよび前記回路情報を出力するステップと、前記信号処理回路をスレーブとして選択し、前記不揮発性メモリから出力された前記書き込みコマンドおよび前記回路情報を前記信号処理回路に取得させ、前記書き込みコマンドに基づき、前記回路情報を前記内部メモリに書き込むステップと、を含む光トランシーバの制御方法である。
【０００７】
本願発明の一実施形態は、第１ＳＰＩインターフェースと、揮発性の内部メモリとを備え、前記内部メモリに格納された回路情報に応じて電気信号を信号処理する信号処理回路と、前記第１ＳＰＩインターフェースに電気的に接続された第２ＳＰＩインターフェースを備え、書き込みコマンドおよび回路情報を格納する不揮発性メモリと、第１入出力ポートおよび第２入出力ポートを有するプロセッサと、を備え、
前記第１入出力ポートは、前記第２ＳＰＩインターフェースの入力ポートおよび前記第１ＳＰＩインターフェースの出力ポートに接続され、前記第２入出力ポートは、前記第２ＳＰＩインターフェースの出力ポートおよび前記第１ＳＰＩインターフェースの入力ポートに接続され、前記プロセッサは、読み出しコマンドを前記第１入出力ポートから出力し、前記不揮発性メモリは、前記読み出しコマンドに基づき前記書き込みコマンドおよび前記回路情報を前記不揮発性メモリの前記第２ＳＰＩインターフェースの出力ポートから出力し、前記信号処理回路は、前記不揮発性メモリが出力した前記書き込みコマンドおよび前記回路情報を前記第１ＳＰＩインターフェースの入力ポートを介して取得し、前記書き込みコマンドに基づき前記不揮発性メモリから出力された前記回路情報を前記内部メモリに書き込む光トランシーバである。
【発明の効果】
【０００８】
本発明の一実施形態によれば、信号処理回路に回路情報を高速に実装することができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施例１における光トランシーバの構成を示すブロック図である。
【図２】図２は、実施例１におけるプロセッサ、信号処理回路およびメモリのブロック図である。
【図３】図３は、実施例１における信号処理回路へのマイクロコードの書き込み動作のフローチャートである。
【図４】図４は、実施例１における信号処理回路へのマイクロコードの書き込み動作のブロック図である。
【図５】図５は、実施例１における信号処理回路へのマイクロコードの書き込み動作のタイミングチャートである。
【図６】図６は、実施例１におけるメモリ内のＲＯＭおよび信号処理回路内のＲＡＭのメモリマップである。
【図７】図７は、実施例１における信号処理回路を制御する動作のフローチャートである。
【図８】図８は、実施例１における信号処理回路を制御する動作のブロック図である。
【図９】図９は、実施例１における信号処理回路を制御する動作のタイミングチャートである。
【図１０】図１０は、比較例１におけるプロセッサ、信号処理回路およびメモリのブロック図である。
【図１１】図１１は、比較例１におけるタイミングチャートである。
【図１２】図１２は、比較例１におけるタイミングチャートである。
【図１３】図１３は、実施例１の変形例１におけるメモリ内のＲＯＭおよび信号処理回路内のＲＡＭのメモリマップである。
【図１４】図１４は、実施例１の変形例１における信号処理回路へのマイクロコードの書き込み動作のタイミングチャートである。
【発明を実施するための形態】
【００１０】
［本願発明の実施形態の説明］
最初に本願発明の実施形態の内容を列記して説明する。
【００１１】
（１）本願発明の一実施形態は、第１ＳＰＩインターフェースと、揮発性の内部メモリとを備え、前記内部メモリに格納された回路情報に応じて電気信号を信号処理する信号処理回路と、前記第１ＳＰＩインターフェースに電気的に接続された第２ＳＰＩインターフェースを備える不揮発性メモリと、前記第１ＳＰＩインターフェースおよび前記第２ＳＰＩインターフェースに電気的に接続された疑似ＳＰＩインターフェースを有するプロセッサと、を備える光トランシーバの制御方法であって、前記回路情報の先頭に付加される書き込みコマンドが格納された前記不揮発性メモリをスレーブとして選択し、前記プロセッサから前記疑似ＳＰＩインターフェースを介して読み出しコマンドを前記不揮発性メモリに送信するステップと、前記読み出しコマンドに基づき、前記不揮発性メモリから前記第２ＳＰＩインターフェースを介して前記書き込みコマンドおよび前記回路情報を出力するステップと、前記信号処理回路をスレーブとして選択し、前記不揮発性メモリから出力された前記書き込みコマンドおよび前記回路情報を前記信号処理回路に取得させ、前記書き込みコマンドに基づき、前記回路情報を前記内部メモリに書き込むステップと、を含む光トランシーバの制御方法である。
これにより、信号処理回路に回路情報を高速に実装できる。また、光モジュールを小型化できる。
（２）前記疑似ＳＰＩインターフェースは、第１入出力ポートおよび第２入出力ポートを含み、前記第１入出力ポートおよび前記第２入出力ポートは、各々前記プロセッサからデータを出力する出力モードと前記プロセッサにデータを入力する入力モードに設定可能なポートであり、前記第１入出力ポートは、前記第１ＳＰＩインターフェースの入力ポートに接続されると共に前記第２ＳＰＩインターフェースの出力ポートに接続されており、前記第２入出力ポートは、前記第１ＳＰＩインターフェースの出力ポートに接続されると共に前記第２ＳＰＩインターフェースの入力ポートに接続されており、前記第１入出力ポートを前記出力モードに設定すると共に前記第２入出力ポートを前記入力モードに設定するステップを含むことが好ましい。
（３）前記第１入出力ポートおよび前記第２入出力ポートはＧＰＩＯポートであることが好ましい。
（４）本願発明の一実施形態は、第１ＳＰＩインターフェースと、揮発性の内部メモリとを備え、前記内部メモリに格納された回路情報に応じて電気信号を信号処理する信号処理回路と、前記第１ＳＰＩインターフェースに電気的に接続された第２ＳＰＩインターフェースを備え、書き込みコマンドおよび回路情報を格納する不揮発性メモリと、第１入出力ポートおよび第２入出力ポートを有するプロセッサと、を備え、前記第１入出力ポートは、前記第２ＳＰＩインターフェースの入力ポートおよび前記第１ＳＰＩインターフェースの出力ポートに接続され、前記第２入出力ポートは、前記第２ＳＰＩインターフェースの出力ポートおよび前記第１ＳＰＩインターフェースの入力ポートに接続され、前記プロセッサは、読み出しコマンドを前記第１入出力ポートから出力し、前記不揮発性メモリは、前記読み出しコマンドに基づき前記書き込みコマンドおよび前記回路情報を前記不揮発性メモリの前記第２ＳＰＩインターフェースの出力ポートから出力し、前記信号処理回路は、前記不揮発性メモリが出力した前記書き込みコマンドおよび前記回路情報を前記第１ＳＰＩインターフェースの入力ポートを介して取得し、前記書き込みコマンドに基づき前記不揮発性メモリから出力された前記回路情報を前記内部メモリに書き込む光トランシーバである。
これにより、信号処理回路に回路情報を高速に実装できる。また、光モジュールを小型化できる。
【００１２】
［本願発明の実施形態の詳細］
本発明の実施形態にかかる光トランシーバおよびその制御方法の具体例を、以下に図面を参照しつつ説明する。図面の説明において、同一又は相当する要素には同一の符号を付し、重複する説明を省略する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【実施例１】
【００１３】
［ブロック図］
図１は、実施例１における光トランシーバの構成を示すブロック図である。図１に示すように、実施例１に係る光トランシーバ１００は、プロセッサ１０、信号処理回路１２、メモリ１４、光受信回路１８、光送信回路２２および温度調整器２６を備えている。
【００１４】
プロセッサ１０は、例えばＣＰＵ（Central Processing Unit）またはマイクロコンピュータ等のプロセッシングユニットであり、例えば信号処理回路１２、光受信回路１８および光送信回路２２を制御する。
【００１５】
信号処理回路１２は、プログラムを実行することで外部装置３０から出力された電気送信信号を処理し光送信回路２２に出力し、光受信回路１８から出力された電気受信信号を処理し外部装置３０に出力する。例えば、信号処理回路１２は、外部装置３０が入力された電気送信信号をＰＡＭ（Pulse Amplitude Modulation）信号に変換する。また、信号処理回路１２は、光受信回路１８が出力したＰＡＭ信号をＡＭ（Amplitude Modulation）信号に変換する。信号処理回路１２は、例えばＣＤＲ（Clock Data Recovery）回路であり、波形整形およびタイミング再生等の処理を行ってもよい。信号処理回路１２は、ＲＡＭ（Random Access Memory）等の揮発性の内部メモリを有している。内部メモリは、例えば信号処理のためのパラメータ等を回路情報（プログラム）として記憶する。信号処理回路１２がＰＬＤ（Programmable Logic Device）のように回路構成をプログラム可能な回路の場合、揮発性メモリは回路構成用の回路情報（プログラム）を格納する。
【００１６】
メモリ１４は、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read-Only Memory）等の不揮発性メモリであり、信号処理回路１２に用いるプログラムを格納する。信号処理回路１２は、電源投入時等にメモリ１４からプログラムを取得し、内部メモリに格納する。メモリ１４は、プロセッサ１０のデータ、プログラム、および／または信号処理回路１２のデータを格納してもよい。
【００１７】
光受信回路１８は、受光回路２０および増幅回路１９を備えている。受光回路２０は、例えばＲＯＳＡ（Receiver Optical Subassembly）であり、光ファイバ等の光導波路から受信した複数のレーンの光受信信号（波長分割多重信号）を電流信号に変換する。増幅回路１９は、例えばＴＩＡ（Transimpedance Amplifier）であり、電流信号（光電流）を電気受信信号である電圧信号に変換し信号処理回路１２に出力する。プロセッサ１０は、例えば増幅回路１９からＬＯＳ（Loss Of Signal）信号を受信する。ＬＯＳ信号はレーンごとに電気受信信号の信号強度が所定値以下であることを示す信号である。
【００１８】
光送信回路２２は、駆動回路２３および発光回路２４を備えている。駆動回路２３は、例えばＬＤＤ（Laser Diode Driver）であり、信号処理回路１２が処理した電気送信信号を増幅して駆動信号を生成する。プロセッサ１０は、例えば駆動回路２３にレーンごとに動作を停止させる停止信号を送信する。発光回路２４は、例えばＴＯＳＡ（Transmitter Optical Subassembly）であり、駆動信号によって光送信信号を変調し、変調された複数のレーンの光送信信号を多重化して光ファイバ等の光導波路（不図示）に出力する。光信号は波長分割多重信号（ＷＤＭ信号）となる。
【００１９】
温度調整器２６は、例えばＴＥＣ（Thermoelectric Cooler）であり、発光回路２４の温度を調整する。プロセッサ１０は、例えば温度調整器２６を制御し、発光回路２４を所望温度とする。
【００２０】
図２は、実施例１におけるプロセッサ、信号処理回路およびメモリのブロック図である。図２に示すように、プロセッサ１０は、ＧＰＩＯ（General Purpose Input/Output）ポートを用いＳＰＩ（Serial Peripheral Interface）方式の通信バス等のシリアル通信バスを模擬した制御を行うことができる。ＧＰＩＯポートは、プロセッサ１０へのデータの入力とプロセッサ１０からのデータの出力とを相互に切り替えて行うことができる。ＧＰＩＯ１ポート、ＧＰＩＯ４ポートおよびＧＰＩＯ５ポートは、それぞれＳＣＫポート、ＣＳ１ポートおよびＣＳ２ポートとして疑似的に機能する。ＧＰＩＯ２ポートおよびＧＰＩＯ３ポートは、ＭＯＳＩ（Master Output Slave Input）ポートおよびＭＩＳＯ（Master Input Slave Output）ポートとして疑似的に機能する。以下、このようにＧＰＩＯ１ポートからＧＰＩＯ５ポートによって疑似的に構成されたＳＰＩインターフェースを疑似ＳＰＩインターフェースという。ＭＯＳＩは、マスタからスレーブにデータを出力するポートであり、ＭＩＳＯは、スレーブからマスタにデータが入力されるポートである。信号処理回路１２とメモリ１４のシリアル通信のクロック極性およびクロック位相等のモードは同じである。
【００２１】
信号処理回路１２は、内部メモリとしてＲＡＭ１３を有し、ＳＰＩ通信バス等のシリアル通信ポートとしてＳＣＫ１ポート、データ出力１ポート、データ入力１ポートおよびＣＳ１ポートを有している。以下、ＳＣＫ１ポート、データ出力１ポート、データ入力１ポートおよびＣＳ１ポートを総称して第１ＳＰＩインターフェースという。一般的には、第１ＳＰＩインターフェースは、ＳＣＫ１ポート、データ出力１ポート、データ入力１ポートおよびＣＳ１ポートのそれぞれに専用のポートを備えている。ＳＣＫ１ポート、データ出力１ポート、データ入力１ポートおよびＣＳ１ポートは、プロセッサ１０のそれぞれＧＰＩＯ１からＧＰＩＯ４ポートに接続されている。
【００２２】
メモリ１４は、不揮発性メモリとしてＲＯＭ（Read Only Memory）１５を有し、ＳＰＩ通信バス等のシリアル通信ポートとしてＳＣＫ２ポート、データ入力２ポート、データ出力２ポートおよびＣＳ２ポートを有している。以下、ＳＣＫ２ポート、データ入力２ポート、データ出力２ポートおよびＣＳ２ポートを総称して第２ＳＰＩインターフェースをという。一般的には、第２ＳＰＩインターフェースは、ＳＣＫ２ポート、データ入力２ポート、データ出力２ポートおよびＣＳ２ポートのそれぞれに専用のポートを備えている。ＳＣＫ２ポート、データ入力２ポート、データ出力２ポートおよびＣＳ２ポートは、プロセッサ１０のそれぞれＧＰＩＯ１からＧＰＩＯ３およびＧＰＩＯ５ポートに接続されている。
【００２３】
［信号処理回路へのマイクロコードの書き込み動作の説明］
図３は、実施例１における信号処理回路へのマイクロコードの書き込み動作のフローチャートである。図４は、実施例１における信号処理回路へのマイクロコードの書き込み動作のブロック図である。図５は、実施例１における信号処理回路へのマイクロコードの書き込み動作のタイミングチャートである。
【００２４】
図３から図５に示すように、プロセッサ１０は、ＧＰＩＯ２ポートにＭＯＳＩをＧＰＩＯ３ポートにＭＩＳＯを割り当てる（ステップＳ１０）。時刻ｔ１において、プロセッサ１０はＣＳ２ポートをローとする（ステップＳ１２）。このとき、プロセッサ１０は、ＳＰＩ通信におけるマスターデバイス（マスタ）であり、ＣＳ２ポートをローとすることでメモリ１４をスレーブデバイス（スレーブ）となる。これにより、プロセッサ１０のメモリ１４との通信がイネーブル（可能）となる。プロセッサ１０は、クロック信号の出力を開始する（ステップＳ１４）。これによりＳＣＫポートから信号処理回路１２およびメモリ１４にクロック信号が出力される。ただし、ＣＳ１ポートはハイに設定されているので、信号処理回路１２はスレーブとして選択されておらず、ＳＰＩ通信は行わない。プロセッサ１０はＭＯＳＩからコマンド４２ａおよびアドレス４２ｂを有するデータ４２をメモリ１４に送信する（ステップＳ１６）。コマンド４２ａは、メモリ１４に対するコマンドであり、ＲＯＭ１５のアドレス４２ｂを先頭のアドレスとして以降のアドレスから順にデータを出力させるコマンドである。コマンド４２ａおよびアドレス４２ｂは例えばそれぞれ１バイトおよび３バイトである。
【００２５】
時刻ｔ２において、プロセッサ１０は、データ４２の出力が終了すると、クロック信号を停止する（ステップＳ１８）。時刻ｔ３において、プロセッサ１０はＣＳ１ポートをローとする（ステップＳ２０）。これにより、信号処理回路１２の通信がイネーブルとなる。
【００２６】
図６は、実施例１におけるメモリ内のＲＯＭおよび信号処理回路内のＲＡＭのメモリマップである。図６に示すように、メモリ１４のＲＯＭ１５には、アドレス４２ｂを先頭のアドレスとしてコマンド４４ａ、アドレス４４ｂおよびプログラムのマイクロコード４４ｃが格納されている。コマンド４４ａ、アドレス４４ｂおよびマイクロコード４４ｃは信号処理回路１２に出力されるデータ４４である。コマンド４４ａは、信号処理回路１２に対するコマンドであり、信号処理回路１２のＲＡＭ１３に、先頭のアドレスをアドレス４４ｂとしてデータを格納させるコマンドである。
【００２７】
図３から図５に戻り、時刻ｔ４において、プロセッサ１０はＳＣＫポートからのクロック信号の出力を再開する（ステップＳ２２）。メモリ１４は、コマンド４２ａに基づきＲＯＭ１５のアドレス４２ｂを先頭のアドレスとして以降のアドレスから順にデータ４４をデータ出力２ポートから送信する（ステップＳ２４）。信号処理回路１２のデータ入力１ポートにデータ４４が入力する。
【００２８】
図５および図６に示すように、メモリ１４は、データ４４として、最初にコマンド４４ａを出力し、次にアドレス４４ｂを出力する。信号処理回路１２は、コマンド４４ａおよびアドレス４４ｂを取得すると、コマンド４４ａを実行する。これにより、信号処理回路１２は、ＲＡＭ１３内のアドレス４４ｂを先頭のアドレスとして以降のアドレスに順にマイクロコード４４ｃを格納する。
【００２９】
図３から図５に戻り、プロセッサ１０は、メモリ１４のデータ４４の出力が終了したかを認識するため、クロック信号をカウントする（ステップＳ２６）。時刻ｔ５において、ＳＣＫクロック信号のカウント数が所定回数となると、プロセッサ１０はクロック信号の出力を停止する（ステップＳ２８）。プロセッサ１０は、ＣＳ１およびＣＳ２信号をハイとする（ステップＳ３０）。これにより、信号処理回路１２およびメモリ１４の通信がアンネーブルとなる。以上により、メモリ１４のＲＯＭ１５に格納されているマイクロコード４４ｃは、信号処理回路１２のＲＡＭ１３に格納される。
【００３０】
［信号処理回路を制御する動作の説明］
プロセッサ１０が通常信号処理回路１２を制御する動作を説明する。図７は、実施例１における信号処理回路を制御する動作のフローチャートである。図８は、実施例１における信号処理回路を制御する動作のブロック図である。図９は、実施例１における信号処理回路を制御する動作のタイミングチャートである。
【００３１】
図７から図９に示すように、プロセッサ１０は、ＧＰＩＯ２ポートにＭＩＳＯをＧＰＩＯ３ポートにＭＯＳＩを割り当てる（ステップＳ４０）。時刻ｔ６において、プロセッサ１０はＣＳ１ポートをローとする（ステップＳ４２）。プロセッサ１０はＣＳ２ポートのハイを維持する。これにより、信号処理回路１２の通信がイネーブルとなり、メモリ１４の通信のアンネーブルが維持される。プロセッサ１０は、クロック信号の出力を開始する（ステップＳ４４）。これによりＳＣＫポートから信号処理回路１２およびメモリ１４にクロック信号が出力される。プロセッサ１０はＭＯＳＩからコマンドおよびアドレス等を有するデータ４６を信号処理回路１２に出力する（ステップＳ４６）。データ４６は信号処理回路１２のデータ入力１ポートに入力する。
【００３２】
時刻ｔ７において、データ４６の出力が終了する。信号処理回路１２はデータ４６に含まれるコマンドに基づきデータ出力１ポートからデータ４８を出力する。プロセッサ１０はＭＩＳＯからデータ４８を入力する（ステップＳ４８）。時刻ｔ８において、データ４８の出力が終わると、プロセッサ１０はクロック信号を停止する（ステップＳ５０）。プロセッサ１０はＣＳ１ポートをハイとする（ステップＳ５２）。これにより、信号処理回路１２の通信がアンネーブルとなり、プロセッサ１０による信号処理回路１２を制御する動作が終了する。
【００３３】
プロセッサ１０が信号処理回路１２を制御するときには、信号処理回路１２がメモリ１４からプログラムを取得するときと、ＭＯＳＩとＭＩＳＯのポートを入れ替える。これにより、プロセッサ１０をマスタ、信号処理回路１２をスレーブとし、プロセッサ１０と信号処理回路１２との通信が可能となる。
【００３４】
［比較例］
実施例１の効果を説明するため、比較例１について説明する。図１０は、比較例１におけるプロセッサ、信号処理回路およびメモリのブロック図である。図１０に示すように、比較例１の光トランシーバ１１０において、プロセッサ１０は、ＳＰＩ方式の通信バス等のシリアル通信バス専用のＳＣＫポート、ＭＯＳＩポート、ＭＩＳＯポート、ＣＳ１ポートおよびＣＳ２ポートを用いる。プロセッサ１０のＳＣＫポート、ＭＯＳＩポート、ＭＩＳＯポートおよびＣＳ１ポートは、それぞれ信号処理回路１２のＳＣＫ１ポート、データ入力１ポート、データ出力１ポートおよびＣＳ１ポートに接続される。プロセッサ１０のＳＣＫポート、ＭＯＳＩポート、ＭＩＳＯポートおよびＣＳ２ポートは、それぞれメモリ１４のＳＣＫ２ポート、データ入力２ポート、データ出力２ポートおよびＣＳ２ポートに接続される。
【００３５】
図１１および図１２は、比較例１におけるタイミングチャートである。図１１に示すように、時刻ｔ１１において、プロセッサ１０は、クロック信号の出力を開始し、ＣＳ２ポートをローとする。プロセッサ１０はＭＯＳＩからコマンド４２ａおよびアドレス４２ｂを含むデータ４２をメモリ１４に出力する。時刻ｔ１２において、データ４２の出力が終了すると、メモリ１４は、コマンド４２ａに基づき、ＲＯＭ１５に格納されているマイクロコード４４ｃをデータ出力２ポートから出力する。プロセッサ１０はマイクロコード４４ｃを内部メモリであるＲＡＭ１１に格納する。時刻ｔ１３において、プロセッサ１０は、マイクロコード４４ｃの取得が終了すると、クロック信号を停止し、ＣＳ２ポートをハイとする。これにより、メモリ１４のＲＯＭ１５に格納されているマイクロコード４４ｃがプロセッサ１０のＲＡＭ１１に格納される。
【００３６】
図１２に示すように、時刻ｔ１５において、プロセッサ１０は、クロック信号の出力を開始し、ＣＳ１ポートをローとする。プロセッサ１０は、ＭＯＳＩからコマンド４４ａ、アドレス４４ｂおよびマイクロコード４４ｃを含むデータ４４を信号処理回路１２に出力する。信号処理回路１２は、コマンド４４ａに基づき、ＲＡＭ１３にマイクロコード４４ｃを格納する。時刻ｔ１６おいて、プロセッサ１０は、マイクロコード４４ｃの出力が終了すると、クロック信号を停止し、ＣＳ１ポートをハイとする。これにより、プロセッサ１０のＲＡＭ１１に格納されているマイクロコード４４ｃが信号処理回路１２のＲＡＭ１３に格納される。
【００３７】
光トランシーバに搭載される信号処理回路１２は、不揮発性メモリを有していない。このため、電源投入またはリセット時に不揮発性のメモリ１４から内部のＲＡＭ１３にマイクロコード等のプログラムを取り込む。信号処理回路１２は、電源投入またはリセット後、メモリ１４に自発的にプログラムを読み取りに行くタイプと、自発的にはプログラムを読み取りにいかないタイプとがある。比較例１および実施例１は。信号処理回路１２が自発的にメモリ１４にプログラムを読み取りに行かないタイプの例である。
【００３８】
図１０のように、ＳＰＩ方式等のシリアル通信方式では、プロセッサ１０がマスタとなり、信号処理回路１２およびメモリ１４がスレーブとなる。このため、プロセッサ１０のＭＯＳＩポートは信号処理回路１２のデータ入力１ポートおよびメモリ１４のデータ入力２ポートに接続される。プロセッサ１０のＭＩＳＯポートは信号処理回路１２のデータ出力１ポートおよびメモリ１４のデータ出力２ポートに接続される。
【００３９】
比較例１では、図１１のように、メモリ１４のＲＯＭ１５に格納されているマイクロコード４４ｃをプロセッサ１０のＲＡＭ１１に格納する。その後、プロセッサ１０のＲＡＭ１１に格納されているマイクロコード４４ｃを信号処理回路１２のＲＡＭ１３に格納する。このように、マイクロコード４４ｃを一旦プロセッサ１０のＲＡＭ１１に格納する。このため、メモリ１４のＲＯＭ１５から信号処理回路１２のＲＡＭ１３へのマイクロコード４４ｃの書き込みに時間がかかってしまう。
【００４０】
一方、特許文献１のように、通信線にスイッチを設けると、光モジュールが大型化してしまう。
【００４１】
［実施例１の効果］
実施例１の光トランシーバの制御方法によれば、図３のステップＳ１０および図４のように、プロセッサ１０のＭＯＳＩポートに設定したＧＰＩＯ２ポート（第１ポート）はメモリ１４のデータ入力２ポートおよび信号処理回路１２のデータ出力１ポートに接続される。プロセッサ１０のＭＩＳＯポートに設定されたＧＰＩＯ３ポート（第２ポート）はメモリ１４のデータ出力２ポートおよび信号処理回路１２のデータ入力１ポートに接続される。ステップＳ１６のように、マイクロコード４４ｃ（プログラム）を読み出すコマンド４２ａ（第１コマンド）をプロセッサ１０のＭＯＳＩポートから出力する。ステップＳ２４のように、コマンド４２ａに基づきマイクロコード４４ｃをメモリ１４のデータ出力２ポートから出力する。メモリ１４が出力したマイクロコード４４ｃをプロセッサ１０を介さずに信号処理回路１２のデータ入力１ポートから取得する。
【００４２】
すなわち、信号処理回路１２は、第１ＳＰＩインターフェースとＲＡＭ１３（揮発性の内部メモリ）とを備え、ＲＡＭ１３に格納されたプログラム等の回路情報に応じて電気信号を信号処理する。メモリ１４（不揮発性メモリ）は、第１ＳＰＩインターフェースに電気的に接続された第２ＳＰＩインターフェースを備える。プロセッサ１０は、第１ＳＰＩインターフェースおよび第２ＳＰＩインターフェースに電気的に接続された疑似ＳＰＩインターフェースを有する。このような光トランシーバにおいて、図６のように、メモリ１４に回路情報の先頭に付加される書き込みコマンド４４ａが格納されている。図３のステップＳ１２のようにメモリ１４をスレーブとして選択し、ステップＳ１６のようにプロセッサ１０から疑似ＳＰＩインターフェースを介して読み出しコマンド４２ａをメモリ１４に送信する。ステップＳ２４のように読み出しコマンド４２ａに基づき、メモリ１４から第２ＳＰＩインターフェースを介して書き込みコマンド４４ａおよび回路情報としてプログラム等のマイクロコードを出力する。ステップＳ２０のように、信号処理回路１２をスレーブとして選択し、ステップＳ２４のようにメモリ１４から出力された書き込みコマンド４４ａおよびマイクロコード４４ｃを信号処理回路１２に取得させ、書き込みコマンド４４ａに基づき、マイクロコード４４ｃをＲＡＭ１３に書き込む。
【００４３】
別の観点では、プロセッサ１０は、ＧＰＩＯ２（第１入出力ポート）およびＧＰＩＯ３（第２入出力ポート）を有する。図４のように、ＧＰＩＯ２は、メモリ１４のデータ入力２ポートおよび信号処理回路１２のデータ出力２ポートに接続されている。ＧＰＩＯ３は、メモリ１４のデータ出力２ポートおよび信号処理回路１２のデータ入力２ポートに接続されている。図３のステップＳ１６のように、プロセッサ１０は、読み出しコマンド４２ａをＧＰＩＯ２から出力する。ステップＳ２４のように、メモリ１４は、読み出しコマンド４２ａに基づき書き込みコマンド４４ａおよびマイクロコード４４ｃをメモリ１４のデータ出力２ポートから出力する。信号処理回路１２は、メモリ１４が出力した書き込みコマンド４４ａおよびマイクロコード４４ｃをデータ入力４ポートを介して取得し、書き込みコマンド４４ａに基づきメモリ１４から出力されたマイクロコード４４ｃをＲＡＭ１３に書き込む。
【００４４】
これにより、信号処理回路１２は、シリアル通信方式を用い、プロセッサ１０を介さず直接メモリ１４からマイクロコード４４ｃを取得できる。よって、信号処理回路１２にプログラム等の回路情報を高速に実装できる。また、特許文献１のようなスイッチが不要なため、光モジュールを小型化できる。
【００４５】
図５のように、ステップＳ２４において、メモリ１４がコマンド４２ａを取得した後、マイクロコード４４ｃを出力する前に、信号処理回路１２にマイクロコード４４ｃを取得させるコマンド４４ａ（第２コマンド）をメモリ１４のデータ出力２ポートから出力する。メモリ１４が出力したコマンド４４ａをプロセッサ１０を介さずに信号処理回路１２のデータ入力１ポートから取得する。これにより、信号処理回路１２はコマンド４４ａに基づきマイクロコード４４ｃを取得することができる。これにより、信号処理回路１２はコマンド４４ａに基づきマイクロコード４４ｃを取得できる。
【００４６】
図２のように、ＧＰＩＯ２ポートおよびＧＰＩＯ３ポートは、ＭＯＳＩポートとＭＩＳＯポートとを設定可能なポートである。図７のステップＳ４０および図８のように、ＧＰＩＯ２ポートをＭＩＳＯポートに設定し、ＧＰＩＯ３ポートをＭＯＩＳポートに設定した後、ステップＳ４６のように、信号処理回路１２に処理を行わせるコマンド（第３コマンド）を含むデータ４６を前記ＧＰＩＯ４ポートに出力する。
【００４７】
すなわち、疑似ＳＰＩインターフェースは、第１入出力ポート（ＧＰＩＯ３）および第２入出力ポート（ＧＰＩＯ２）を含む。図９のように、ＧＰＩＯ２およびＧＰＩＯ３は、各々プロセッサ１０からデータを出力する出力モードとプロセッサ１０にデータを入力する入力モードに設定可能なポートである。図８のように、ＧＰＩＯ３は、信号処理回路１２のデータ入力１ポート（第１ＳＰＩインターフェースの入力ポート）に接続されると共にメモリ１４のデータ出力２ポート（第２ＳＰＩインターフェースの出力ポート）に接続されている。ＧＰＩＯ２は、信号処理回路１２のデータ出力１ポート（第１ＳＰＩインターフェースの出力ポート）に接続されると共にメモリ１４のデータ入力ポート２（第２ＳＰＩインターフェースの入力ポート）に接続されている。図７のステップＳ４０のように、ＧＰＩＯ３を出力モードに設定すると共にＧＰＩＯ２を入力モードに設定する。これにより、プロセッサ１０をマスタとし、信号処理回路１２をスレーブとする通常のシリアル通信が可能となる。
【００４８】
［実施例１の変形例１］
実施例１の変形例１は、信号処理回路１２がプログラムを複数回に分割して取得する例である。図１３は、実施例１の変形例１におけるメモリ内のＲＯＭおよび信号処理回路内のＲＡＭのメモリマップである。図１３に示すように、ＲＯＭ１５内には、アドレス４２ｂを先頭のアドレスとし１バイトのコマンド４４ａ、３バイトのアドレス４４ｂおよびＮ−４バイトのマイクロコード４４ｃがデータ４４として格納され、アドレス４２ｂ´を先頭のアドレスとしコマンド４４ａ、アドレス４４ｂ´およびマイクロコード４４ｃ´がデータ４４´として格納されている。データ４４はＮバイトであるため、アドレス４２ｂ´は例えばアドレス４２ｂ＋Ｎである。
【００４９】
図１４は、実施例１の変形例１における信号処理回路へのマイクロコードの書き込み動作のタイミングチャートである。図１４に示すように、実施例１の図５と同様に、時刻ｔ１からｔ２において、プロセッサ１０はコマンド４２ａおよびアドレス４２ｂを含むデータ４２をメモリ１４に出力する。時刻ｔ４からｔ５においてメモリ１４はコマンド４４ａ、アドレス４４ｂおよびマイクロコード４４ｃを含むデータ４４を信号処理回路１２に出力する。図１３のように、信号処理回路１２のＲＡＭ１３にアドレス４４ｂを先頭のアドレスとしマイクロコード４４ｃが格納される。
【００５０】
図１４のように、時刻ｔ１´からｔ２´において、プロセッサ１０はコマンド４２ａおよびアドレス４２ｂ´を含むデータ４２´をメモリ１４に出力する。時刻ｔ４´からｔ５´においてメモリ１４はコマンド４４ａ、アドレス４４ｂ´およびマイクロコード４４ｃ´を含むデータ４４を信号処理回路１２に出力する。図１３のように、信号処理回路１２のＲＡＭ１３にアドレス４４ｂ´を先頭とアドレスとしマイクロコード４４ｃ´が格納される。マイクロコード４４ｃはＮ−４バイトであるため、アドレス４４ｂ´は例えばアドレス４４ｂ＋Ｎ−４である。
【００５１】
実施例１の変形例１のように、プログラムを複数に分割し、メモリ１４から信号処理回路１２に送信してもよい。
【００５２】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【００５３】
１０  プロセッサ
１１、１３  ＲＡＭ
１２  信号処理回路
１４  メモリ
１５  ＲＯＭ
１８  光受信回路
１９  増幅回路
２０  受光回路
２２  光送信回路
２３  駆動回路
２４  発光回路
２６  温度調整器
３０  外部装置
４２、４２´、４４、４４´、４６、４８  データ
４２ａ、４４ａ  コマンド
４２ｂ、４２ｂ´、４４ｂ、４４ｂ´  アドレス
４４ｃ、４４ｃ´  マイクロコード
１００、１１０  光トランシーバ
【図１】
2020150525.tif 000003
【図２】
2020150525.tif 000004
【図３】
2020150525.tif 000005
【図４】
2020150525.tif 000006
【図５】
2020150525.tif 000007
【図６】
2020150525.tif 000008
【図７】
2020150525.tif 000009
【図８】
2020150525.tif 000010
【図９】
2020150525.tif 000011
【図１０】
2020150525.tif 000012
【図１１】
2020150525.tif 000013
【図１２】
2020150525.tif 000014
【図１３】
2020150525.tif 000015
【図１４】
2020150525.tif 000016