(57)【特許請求の範囲】
【請求項１】
少なくとも１つの半導体レーザーを備えるアレイを駆動する駆動波形を生成するレーザー・ドライバであって、
前記レーザー・ドライバに組み込まれたデジタル・コントローラであって、前記デジタル・コントローラは、前記駆動波形に関連した少なくとも２つのパラメータを初めにプログラムし、前記ドライバの動作中に、前記パラメータに調整を加え、該パラメータには、負のピーキング深さと負のピーキング持続時間とを、前記駆動波形の立ち上がりに影響することなく設定可能なパラメータを含む、デジタル・コントローラと、
前記パラメータをデジタル形式で前記デジタル・コントローラから受信し、それに応答してアナログ形式による前記駆動波形パラメータを生成するデジタル・アナログ変換器と、
前記駆動波形パラメータをアナログ形式で受信し、それに応答して前記駆動波形パラメータによって決まる駆動波形を生成する波形整形回路と、
前記レーザーを経時的にモニターし、前記駆動波形の少なくとも１つのパラメータを選択的に調整して、前記レーザーの経時変化を補償する経時変化補償機構と
を含み、前記デジタル・アナログ変換器は、前記デジタル・コントローラの前記パラメータに応じて、負のピーキング深さと負のピーキング時間とを前記駆動波形の立ち上がりに影響させずにアナログ形式による前記駆動波形パラメータを生成することを特徴とするレーザー・ドライバ。
【請求項２】
少なくとも１つの半導体レーザーを備えるアレイを駆動する駆動波形を生成するレーザー・ドライバであって、
前記レーザー・ドライバに組み込まれたデジタル・コントローラであって、前記デジタル・コントローラは、前記駆動波形に関連した少なくとも２つのパラメータを初めにプログラムし、前記ドライバの動作中に、前記パラメータに調整を加え、該パラメータには、負のピーキング深さと負のピーキング持続時間とを、前記駆動波形の立ち上がりに影響することなく設定可能なパラメータを含む、デジタル・コントローラと、
前記パラメータをデジタル形式で前記デジタル・コントローラから受信し、それに応答してアナログ形式による前記駆動波形パラメータを生成するデジタル・アナログ変換器と、
前記駆動波形パラメータをアナログ形式で受信し、それに応答して前記駆動波形パラメータによって決まる駆動波形を生成する波形整形回路と、
前記ドライバの温度をモニターし、前記駆動波形の少なくとも１つのパラメータを選択的に調整して、前記温度変化を補償する温度補償機構と
を含み、前記デジタル・アナログ変換器は、前記デジタル・コントローラの前記パラメータに応じて、負のピーキング深さと負のピーキング時間とを前記駆動波形の立ち上がりに影響させずにアナログ形式による前記駆動波形パラメータを生成することを特徴とするレーザー・ドライバ。
【請求項３】
前記レーザー・ドライバは、単一の垂直共振器面発光レーザー（ＶＣＳＥＬ）または垂直共振器面発光レーザー（ＶＣＳＥＬ）のアレイに適合することを特徴とする請求項１または２に記載のレーザー・ドライバ。
【請求項４】
前記駆動波形パラメータに、少なくとも１つの直流パラメータと少なくとも１つの交流パラメータが含まれることを特徴とする請求項１または２に記載のレーザー・ドライバ。
【請求項５】
前記駆動波形に関連したパラメータに、バイアス電流、変調電流のいずれかが含まれることを特徴とする請求項１または２に記載のレーザー・ドライバ。
【請求項６】
駆動波形パラメータを記憶するための記憶装置
がさらに含まれることを特徴とする請求項１または２に記載のレーザー・ドライバ。
【請求項７】
組み込まれたコントローラ及び駆動波形パラメータを記憶する記憶装置を備えたレーザー・ドライバにおいて、少なくとも１つの半導体レーザーの駆動波形を供給するための方法であって、
少なくとも２つの駆動波形パラメータを初めに設定するステップであって、該パラメータには、負のピーキング深さと負のピーキング持続時間とを、前記駆動波形の立ち上がりに影響することなく設定可能なパラメータを含む、ステップと、
温度要因及び経時要因のいずれかに基づいて、前記負のピーキング深さと前記持続時間とを、前記駆動波形の立ち上がりに影響させずに、前記レーザー・ドライブの動作中に前記駆動波形パラメータの調整を施すステップと
が含まれている方法。
【発明の詳細な説明】
【０００１】
【発明が属する技術分野】
本発明は、一般に、半導体レーザーに関するものであり、とりわけレーザーに対して駆動波形を供給するためのデジタル・コントローラが組み込まれたオープン・ループ・レーザー・ドライバに関するものである。
【０００２】
【従来の技術】
光送信モジュールはネットワーキング・システムにおいて重要なコンポーネントである。光送信モジュールは電気の形態のデータ信号を対応する光の形態のデータ信号に変換するために用いられる。それにより、データは光ファイバ・ケーブルのような光伝導媒体を介して別のモジュール（例えば、光受信モジュール）に光として伝達することが可能である。
【０００３】
光送信モジュールは、典型的にはレーザーを用い、電気データ信号を光データ信号に変換する。一般に用いられる半導体レーザーの１つは、垂直共振器面発光レーザー（Vertical Cavity Surface Emitting Laser;ＶＣＳＥＬ）である。しかし、ＶＣＳＥＬは、特定の所定の電気特性を満たす入力信号（例えば、駆動波形）だけで有効に作用するように構成されている。駆動波形は、直流動作パラメータと交流動作パラメータの両方を備えることができる。例えば、直流動作パラメータは、平均または低状態出力パワーを得るためのバイアス電流を含むことができる。交流動作パラメータには、パルス化波形に関連した変調電流、ピーキング電流及び時定数パラメータを含むことが可能である。データ信号は、一般に、これら所定の電気特性（例えば、特定の直流及び交流動作パラメータ）を備えてはいない。従って、データ信号を受け取り、それに応答して、ＶＣＳＥＬの駆動に適した電気特性を伴うような対応したＶＣＳＥＬ駆動信号（例えば、駆動波形）を生成する回路が必要になる。この回路は、一般に、ＶＣＳＥＬドライバと呼ばれる。
【０００４】
さらに、ＶＣＳＥＬドライバは、送信器を利用した光ファイバ・リンクのビット誤り率（bit error rate;ＢＥＲ）を最適化するため、特定の直流及び交流パラメータを備えた駆動波形をプログラムしたり、設定したりする。ビット誤り率は、ただ単に、送信モジュールによって生じたビット・エラー数の指標でしかない。ビット・エラーは、ただ単に、データ「１」がデータ「０」として伝送されたり、データ「０」がデータ「１」として伝送されたりするようなデータ・エラーにすぎない。
【０００５】
先行技術によるレーザー・ドライバの設計には、２つの主たる手法がある。第１の手法では、クローズド・ループ（すなわち、光フィードバックを利用して、光出力パワーを調整する）を用いて、駆動波形をプログラムする。第２の手法では、オープン・ループ（すなわち、光フィードバックを利用せずに、光出力パワーを調整する）を用いて、駆動波形をプログラムする。これらの先行技術の手法を、それに伴う欠点とともに、以下に説明する。
【０００６】
［クローズド・ループ手法］
米国特許第５，６３８，３９０号には、レーザー出力安定化回路にて実施される典型的なクローズド・ループ手法が記載されている。このレーザー出力パワー安定化回路は、フォトダイオードを利用して、レーザーの光学出力パワーをモニターする。フォトダイオード出力とデジタル・ポテンシオメータからの基準電圧を比較することによって、レーザーに関して正しい直流バイアス電流が得られる。送信器の製造時に、デジタル・ポテンシオメータは、レーザーの直流バイアス電流を最適化するようにセットされる。送信器の動作中、レーザーのバイアス電流は、フォトダイオードの出力に変化が生じると、調整される。
【０００７】
あいにく、これらのクローズド・ループ手法には、いくつかの欠点がある。第１に、フォトダイオードを利用すると、光送信器のコストが増大する。第２に、フォトダイオードの求める要件のために、ＶＣＳＥＬと最適なアライメントがとれるようにフォトダイオードを取り付けるという、パッケージングの問題が生じる。第３に、クローズド・ループ手法では、個々のＶＣＳＥＬ毎に、複雑なフィードバック回路を複製する必要があるので、コストがさらに上昇し、製造の複雑性も増大する。
【０００８】
［オープン・ループ手法］
Applied Micro Circuits Corporation（ＡＭＣＣ）によるＡＭＣＣ  Ｓ７０１１送信器集積回路（ＩＣ）に関するデータ・シートには、典型的なオープン・ループ手法の記載がある。このＳ７０１１というＩＣは、外部供給源（例えば、マイクロプロセッサ）からの入力、または、外部抵抗器及び電圧基準からの入力が供給されると、レーザー駆動波形パラメータＩmod及びＩbiasを調整することが可能であるようである。あいにく、ＡＭＣＣ手法を含む、先行技術によるオープン・ループ手法では、レーザーの経時変化及び温度変化に基づいて駆動波形を調整するメカニズムが得られないか、または、極めて制限されたメカニズムしか得られない。さらに、これら先行技術によるオープン・ループ手法では、ＶＣＳＥＬ駆動波形（例えば、負のピーキング）の過渡現象（遷移期間）のプログラムを可能にすることもできない。
【０００９】
［ＶＣＳＥＬアレイ］
最近、単一ＶＣＳＥＬから、例えば、複数のＶＣＳＥＬを列状に構成することができる、ＶＣＳＥＬアレイへ移行が関心を集めている。単一ＶＣＳＥＬによって、単一チャネルを備えた光ファイバ・ケーブルで伝送可能なデータより、ＶＣＳＥＬアレイを用いて、マルチ・チャネル光ファイバ・ケーブルで伝送可能なデータのほうが多くなるのは明らかである。あいにく、ＶＣＳＥＬアレイを実施する技術上の課題の１つに、光ファイバ・リンクのＢＥＲを最適化するためには、ＶＣＳＥＬアレイ全域にわたって光波形の均一性を維持する必要があるという点がある。
【００１０】
従って、駆動波形の直流及び交流パラメータに関する正しいセッティングは、ＶＣＳＥＬのアレイを利用した光ファイバ送信器にとってとりわけ重要である。パラメータは、ＶＣＳＥＬアレイ全てにわたって光波形の均一性を維持するように定めなければならない。これらの特性のセッティングは、動作の開始時、及び、製品の耐用期間中の定期的な間隔で行われる必要がある。
【００１１】
半導体電気・光送信器は、発光素子の光学直流及び交流動作特性をプログラムする方式を必要とする場合が多い。プログラミングは、製品の使用開始時に実施し、送信器の耐用期間全体にわたって定期的にプログラミングすることが望ましい。あいにく、送信器の耐用期間中、波形のプログラミングを定期的に行う先行技術の手法は、コストが高く、実施が複雑であるため、直流パラメータに限定されてしまう。変調電流のような交流問題のいくつかを取り扱う先行技術の手法は、製品の使用開始時におけるプログラミングだけに制限される。従って、製品が、ドライバの動作寿命までの期間中におけるプログラミングを必要とする場合、これら先行技術による手法では、このタイプのプログラミングを実施することが不可能である。
【００１２】
［光出力の経時依存性］
光出力に関するレーザーの性能は、レーザーの動作寿命全期間にわたって一定のままであるのが理想である。これがその通りであれば、駆動波形は、レーザー・ドライバによって一度だけプログラムすればよく、それ以上の変更または再プログラミングを必要としなくなる。あいにく、実際には、ＶＣＳＥＬの光出力は、レーザーの動作寿命期間内には劣化する傾向がある。従って、ＶＣＳＥＬドライバには、ＶＣＳＥＬ駆動波形パラメータを定期的に調整して、劣化を補償するのが望ましい。残念なことに、ＡＭＣＣ手法のようなオープン・ループ手法を用いた先行技術による手法は、製品寿命の開始時における波形パラメータのプログラミングに制限され、ＶＣＳＥＬ駆動波形パラメータを定期的に調整して、劣化を補償するメカニズムを備えていない。
【００１３】
【発明が解決しようとする課題】
［光出力の温度依存性］
さらに、理想的状況とは、レーザーの光出力は、動作温度に左右されないものであろう。これがその通りであれば、駆動波形は、動作温度の変化しても調整する必要がない。あいにく、実際には、レーザーの光出力は、動作温度によって左右される。従って、動作温度の変化に応じて駆動波形を調整するメカニズムを備えることが望ましい。そうすることによって、最適なＶＣＳＥＬ光波形を維持することが可能になる。残念なことには、先行技術による手法では、ＶＣＳＥＬ駆動波形パラメータを定期的に調整して、動作温度の変化を補償するためのメカニズムが得られない。
【００１４】
【課題を解決するための手段】
以上に基づき、本発明の目的は、前述の欠点を克服する半導体レーザー用のデジタル制御方法及び装置を提供することにある。
【００１５】
実施態様の１つによれば、本発明のレーザー・ドライバには、光ファイバ送信器に用いられる単一ＶＣＳＥＬまたはＶＣＳＥＬアレイを駆動する駆動波形の直流及び交流パラメータをプログラミングするための組み込み式デジタル・コントローラが含まれている。デジタル・コントローラは、ドライバＩＣに組み込まれており、下記のＶＣＳＥＬ駆動波形パラメータの１つ以上をプログラムするために利用される。つまり
（１）バイアス電流、
（２）変調電流
（３）負のピーキング深さ、及び
（４）負のピーキング持続時間
である。
【００１６】
実施態様の１つでは、レーザー・ドライバには、レーザーの経時をモニターし、ＶＣＳＥＬ駆動波形の直流及び交流パラメータを選択的に調整して、レーザーの経時変化を補償する経時変化補償機構が含まれている。好適には、タイマを用いてレーザーの経時変化がモニターされる。
【００１７】
もう１つの実施態様では、レーザー・ドライバには、ドライバＩＣの温度をモニターして、ＶＣＳＥＬ駆動波形の直流及び交流パラメータを選択的に調整し、温度の変化を補償する温度補償機構が含まれている。温度センサを用いて、ドライバＩＣの温度をモニターするのが望ましい。
【００１８】
前述のように、マルチ・チャネル光ファイバ送信器におけるＶＣＳＥＬ光波形特性の最適化は、難題を提示する可能性がある。本発明のレーザー・ドライバは、各チャネルに最適な光波形を維持するため、最初に、さらに、送信器の動作中に、各チャネルのＶＣＳＥＬ駆動波形パラメータを個別にプログラムする。送信器の動作中におけるＶＣＳＥＬ駆動パラメータの更新によって、本発明のレーザー・ドライバは、レーザーの経時変化及び温度変化を補償する。
【００１９】
本発明のもう１つの実施態様によれば、ＶＣＳＥＬ駆動波形のプログラミングに関する設計技法が提供される。
【００２０】
【発明の実施の形態】
組み込み式デジタル・コントローラを備えたオープン・ループ・レーザー・ドライバ及びプログラミング方法について解説する。以下の解説では、本発明の完全な理解が得られるように、説明を目的として、数多くの特定の詳細が提示される。しかし、当該技術者には明らかなように、本発明は、これらの特定の詳細が示されなくても、実施可能である。他の例では、本発明が不必要に曖昧になるのを回避するため、周知の構造及び装置はブロック図の形で示されている。
【００２１】
本発明のレーザー・ドライバは、デジタル・コントローラ、データ・ストレージ／呼び出し機能、及び、必要とされる機構を組み込んで、各チャネルに、最初に、ＶＣＳＥＬ駆動波形のパラメータをセットしておき、定期的に調整も加えて、経時変化及び動作温度変化を有効に補償する。
【００２２】
［複数チャネル光ファイバ送信モジュール９０］
図１は、本発明のレーザー・ドライバを実現することが可能な、典型的な複数チャネル光ファイバ送信モジュール（ＭＣＦＯＴＭ）９０のブロック図である。複数チャネル光ファイバ送信モジュール（ＭＣＦＯＴＭ）９０は、例えば、１２チャネルの送信モジュールとすることが可能である。複数チャネル光ファイバ送信モジュール９０には、データ信号１１０を受信し、それに応答して、駆動波形１１２を生成するレーザー・ドライバ１００、複数のレーザー１２２（例えば、複数のＶＣＳＥＬ）を備えたレーザー・アレイ１２０、及び、駆動波形パラメータを記憶するための不揮発性メモリ１３０が含まれている。光ファイバ・ケーブル１２４は、レーザー１２２がそこから放つ光を受けるため、レーザー・アレイ１２０に結合されている。
【００２３】
各チャネルのＶＣＳＥＬダイオードに関連した駆動電流波形は、レーザー・ドライバ１００及び不揮発性メモリ１３０によってプログラムされている。ある実施態様では、ＭＣＦＯＴＭ９０には、ＶＣＳＥＬドライバ、１×ＮのＶＣＳＥＬアレイ、及び、ＥＥＰＲＯＭが含まれている。さらにより詳細に後述するように、レーザー・ドライバ１００には、プログラミング及びデータ呼び出しのためのデジタル・コントローラが含まれている。
【００２４】
ある実施態様では、レーザー・ドライバ１００とＶＣＳＥＬアレイ１２０の間に、２×Ｎの信号ラインが挿入されるが、この場合、Ｎの信号ラインが、ＶＣＳＥＬの陽極に接続され、Ｎの信号ラインが、ＶＣＳＥＬのタイプ及びレーザー・ドライバ１００の構成に従って、接地平面またはＶＣＳＥＬの陽極に接続される。ここで、Ｎは、複数チャネル光ファイバ送信モジュール９０に組み込まれるチャネル数である。
【００２５】
メモリ１３０及びレーザー・ドライバ１００に対するデータの読み取り及び書き込みを実施するためのアクセス・ポイント１４０が設けられている。さらに詳細に後述するように、アクセス・ポイント１４０を用いて、レーザー・ドライバ１００及びメモリ１３０にテスト信号及びデータを伝達することが可能である。
【００２６】
［レーザー・ドライバ１００］
図２には、本発明の実施態様の１つによる図１のレーザー・ドライバ１００がさらに詳細に例示されている。レーザー・ドライバ１００には、コントローラ２００、駆動パラメータを記憶するための複数の駆動パラメータ・レジスタ（２１０、２１４、２１８、２２４）、経時補償機構２４０、温度補償機構２５０、故障判定回路２６０、複数のデジタル・アナログ変換器（ＤＡＣ）２３４、駆動波形整形回路２３８、経時値を記憶するための経時レジスタ２８０、及び、所定の故障値を記憶するための故障レジスタ２９０が含まれている。
【００２７】
［ＶＣＳＥＬドライバＩＣに組み込まれたデジタル・コントローラ２００］
本発明の態様の１つでは、デジタル・コントローラ２００がレーザー・ドライバ１００に組み込まれている。本発明のレーザー・ドライバ１００は、コントローラ２００を用いて、単一レーザー・ダイまたは１×Ｎのレーザー・ダイオード・アレイに関するＶＣＳＥＬ駆動波形の直流及び交流特性をデジタル方式でプログラムする。
【００２８】
本発明のレーザー・ドライバ１００によって、アレイ全域にわたる光波形の均一性が得られるようにアレイの各レーザー・ダイ毎にパラメータ（例えば、直流及び交流パラメータ）を個別にプログラムするためのメカニズムが得られる。
【００２９】
［駆動波形パラメータのプログラミング］
例えば、レーザー・ドライバ１００は、組み込み式コントローラ２００及びデジタル・アナログ変換器（ＤＡＣ）２３４を利用して、光学的論理０に関するＶＣＳＥＬバイアスをデジタル方式でプログラムすることが可能である。さらに、レーザー・ドライバ１００は、組み込み式コントローラ２００及びＤＡＣ２３４を利用して、光学的０を１へ遷移させるよう変調するために、ＶＣＳＥＬ駆動波形をデジタル方式でプログラムすることが可能である。
【００３０】
本発明のレーザー・ドライバにおける特徴の１つは、負のピーキング深さ及び持続時間といった、ＶＣＳＥＬ駆動波形の交流特性のプログラム可能性である。負のピーキングは、論理１から論理０への下降遷移中におけるＶＣＳＥＬ駆動波形のピーキングを表している。Ｉｐｋｄは、この負のピーキング深さである。Ｔｐｋｗは、この負のピーキング持続時間である。
【００３１】
レーザー・ドライバ１００は、光学的１から０への遷移中に用いるため、ＶＣＳＥＬ駆動波形の負のピーキング深さをデジタル方式でプログラムすることが可能である。負のピーキングは、１から０への遷移中における光学立ち下がり時間を短縮するために利用される。また、レーザー・ドライバ１００は、光学的１から０への遷移中に用いるため、ＶＣＳＥＬ駆動波形の負のピーキング持続時間をデジタル方式でプログラムすることも可能である。
【００３２】
より詳細に後述するように、本発明のレーザー・ドライバ１００は、デジタル・コントローラ２００を利用して、ＶＣＳＥＬ駆動波形を定期的に調整するためのタイマ機能を実現し、経時変化の補償を行うことが可能である。
【００３３】
さらに、より詳細に後述するように、本発明のレーザー・ドライバ１００は、組み込み式デジタル制御ループを利用して、ダイ温度をモニターし、ＶＣＳＥＬ駆動波形の直流及び交流パラメータに調整を加えて、温度変化を補償することが可能である。
【００３４】
［経時補償機構２４０］
前述のように、ＶＣＳＥＬ光出力は、レーザーの動作寿命を通じて劣化する傾向がある。これに関して、ＶＣＳＥＬ駆動波形パラメータは、定期的に調整を加えて、劣化を補償することが必要になる。ある実施態様では、本発明のレーザー・ドライバには、デジタル・コントローラと連係して、各ＶＣＳＥＬ駆動波形パラメータを定期的に調整して、経時変化を補償するプログラマブル・タイマが含まれている。
【００３５】
本発明のレーザー・ドライバのもう１つの態様では、ＶＣＳＥＬの経時変化による光出力の補償を可能にするため、デジタル・コントローラにタイマ機能が組み込まれている。このタイマによって、ＶＣＳＥＬ駆動波形直流及び交流パラメータに定期的調整を加えて、経時変化を補償することが可能になる。
【００３６】
ある実施態様では、経時補償機構２４０は、オン・チップ１０ＭＨｚクロック、クロックのためのプログラム可能な除数（Ｄ）、コントローラ２００中の３１ビット・カウンタ（本明細書では、下位経時変化カウンタと呼ばれる）、及び、１６ビット・カウンタ（本明細書では、不揮発性メモリ１３０における上位経時変化カウンタと呼ばれる）によって実現可能である。このクロック除数Ｄと１０ＭＨｚのクロック周期を組み合わせることによって、上位経時変化カウンタをどれだけの頻度で（秒または分単位）インクリメントするかが決まる。コントローラ２００は、上位経時変化カウンタの４つのＭＳＢがインクリメントされると、ＤＡＣのセッティングを更新する。例えば、Ｄが３２であり、１０ＭＨｚクロック周期が１００ナノ秒に等しい場合、下位経時変化カウンタは、１１４．５分毎にインクリメントされ、上位経時変化カウンタの４つのＭＳＢは、３２５日毎にインクリメントされる。
【００３７】
送信器に対する電源が遮断されると、ＥＥＰＲＯＭは、複数レジスタ（例えば、３つのレジスタ）における最終のカウンタ・セッティングを記録する。電源が回復すると、各レジスタのカウンタ・セッティングが、正確を期して、他の２つのレジスタにおけるカウンタ値と比較される。少なくとも２つのレジスタにおいて得られるこのカウンタ・セッティングは、正しいセッティングとして選択される。
【００３８】
［温度補償機構２５０］
前述のように、送信モジュールの動作温度が変化すると、ＶＣＳＥＬ駆動波形パラメータは、最適なＶＣＳＥＬ光波形特性を維持するために、調整が必要になる。実施態様の１つでは、本発明のレーザー・ドライバには、温度変化後にＶＣＳＥＬ駆動波形パラメータを調整するための組み込み式温度モニター及びフィードバック・システムが含まれている。
【００３９】
本発明のレーザー・ドライバのもう１つの態様では、ドライバＩＣに温度検知及びフィードバック回路要素が組み込まれている。
【００４０】
レーザー・ドライバ１００には、不揮発性メモリ１３０とつながった不揮発性メモリ・インターフェイス２３０も含まれている。不揮発性メモリ１３０は、ルックアップ・テーブル・フォーマットでＩmod、Ｉbias、Ｔpkw、及び、Ｉpkdに関するＤＡＣセッティングを格納する。各ＤＡＣのセッティングは、下記フォーマットを持つアドレスを用いることによって参照する（例えば、読み取り操作によってアクセスする）ことが可能である：ＡＡＡＡＴＴＴＴＴＣＣＣＣＸＸ。「Ａ」は、経時変化カウンタの４つの最上位ビット（ＭＳＢ）に相当する。「Ｔ」は、レーザー・ドライバ１００の温度を表す５ビットに相当する。「Ｃ」は、チャネル番号に相当し、「Ｘ」は、ＤＡＣ番号に相当する。留意すべきは、Ｉmod、Ｉbias、Ｔpkw、及び、Ｉpkdパラメータに関するＤＡＣは、それぞれ、関連する数が異なるという点である。
【００４１】
図３には、図２の温度補償機構２５０及び故障判定回路２６０の典型的な実施例が示されている。各チャネルに、差動入力データが、入力段３１０及びレベル・シフト段３１４を介して、Ｄａｔａ＿ｉｎ＋及びＤａｔａ＿ｉｎ−から駆動波形整形回路２３８に流れる。駆動波形整形回路２３８は、各データ・パルス毎に電流パルス（すなわち、駆動波形）を生成し、レーザー・アレイ１２０内のレーザー１２２を駆動する。
【００４２】
ＶＣＳＥＬ電流パルス形状は、図７に示すように、Ｉmod、Ｉbias、Ｔpkw、及び、Ｉpkdに関して、駆動波形整形回路２３８によって最適化される。各チャネルの出力電流Ｉoutは、ＶＣＳＥＬアレイ１２０内のレーザーのいずれか１２２に送られる。駆動波形整形回路２３８の典型的な実施態様については、図４に関連してさらに詳細に後述する。
【００４３】
［温度測定ブロック２３４］
ＶＣＳＥＬ動作パラメータは、時間または温度に合わせて変更する必要があるので、コントローラ２００は、リアル・タイムで駆動パラメータを更新する。例えば、温度に関する調整は、定期的に実施することが可能である（例えば、３０ミリ秒の間隔で）。ある実施態様では、温度補償機構２５０は、部分的に、温度測定ブロック（Temperature Measurement Block;ＴＭＢ）２３４及びアナログ・デジタル変換器３３０によって実現可能である。温度測定ブロック（ＴＭＢ）２３４は、ダイ基板温度を測定するセンサである。測定データは、次に、アナログ・デジタル変換器（ＡＤＣ）３３０によってデジタル・フォーマットに変換され、さらに、ｄｉｇｉｔａｌ＿ｔｅｍｐ信号としてコントローラ２００に供給される。コントローラ２００は、次に、温度に基づいて、（ＥＥＰＲＯＭ１３０から）Ｉmod、Ｉbias、Ｔpkw、及び、Ｉpkdに関する新たなＤＡＣセッティングを受信する。新たなＤＡＣセッティングは、レジスタ（例えば、Ｉmodレジスタ２１０、Ｉbiasレジスタ２１４、Ｔpkwレジスタ２１８、Ｉpkdレジスタ２２４）に格納される。レジスタ（本明細書では、ＤＡＣレジスタとも呼ばれる）は、ＤＡＣ２３４の内部に配置される。ＤＡＣ２３４は、これらのレジスタ（２１０、２１４、２１８、２２４）の現在のＤＡＣ値を利用して、ＶＣＳＥＬ駆動波形パラメータをセットする。
【００４４】
同様に、経時変化カウンタ（例えば、下位経時変化カウンタまたは上位経時変化カウンタ）による判定で、経時変化時点に達すると、Ｉmod、Ｉbias、Ｔpkw、及び、Ｉpkdに関する新たなＤＡＣセッティングが、ＥＥＰＲＯＭから呼び出され、ＤＡＣレジスタに書き込まれる。次に、ＶＣＳＥＬ駆動波形パラメータが調整される。
【００４５】
［故障検出回路２６０］
実施態様の１つによれば、故障検出回路２６０には、抵抗器（Ｒｆａｕｌｔ）３４０、差動増幅器３４４、コンパレータ３４８、ＤＡＣ３５０、及び、バッファ３５４が含まれている。故障検出回路２６０は、各ＶＣＳＥＬを流れる電流の平均量が、いつ所定の安全限界を超えるのか判定する。平均ＶＣＳＥＬ電流量は、Ｒｆａｕｌｔ抵抗器３４０の両端における電圧差（ｖｆｘ＿ｄｅｌ）を測定することによって求められる。次に、Ｒｆａｕｌｔ抵抗器３４０の両端における電圧差が、所定の故障しきい値ｖｆｘ＿ｔｈと比較される。故障しきい値ｖｆｘ＿ｔｈは、ユーザがプログラムすることができ、ＥＥＰＲＯＭ１３０及びコントローラ２００の故障レジスタ２９０にｆａｕｌｔ＿ｔｈとして記憶することができる。
【００４６】
ｖｆｘ＿ｄｅｌがｖｆｘ＿ｔｈを超える場合、コンパレータ３４８は、ｆａｕｌｔ＿ｆｌａｇの状態を変更する。任意のチャネルのｆａｕｌｔ＿ｆｌａｇ信号の状態が変化すると、コントローラ２００が割り込まれる。次に、コントローラ２００は、Ｎチャネルの全てのＩmod、Ｉbias、Ｉpkd、及び、Ｉpkw、に関するＤＡＣ値を全て０にセットし、これによって、各チャネルのＶＣＳＥＬ電流が０ミリアンペアに変化する。
【００４７】
ｔｘ＿ｅｎａｂｌｅラインの状態がトグルされ、レーザー・ドライバ１００が動作を再開する。動作が再開されると、コントローラ２００は、温度及び経時変化カウンタの値に基づいて正しいＤＡＣセッティングを呼び出す。前述のように、経時値は、コントローラ２００の複数レジスタ（例えば、経時レジスタ２８０）に格納することが可能である。
【００４８】
［データ波形整形回路２３８］
図４には、本発明の実施態様の１つによる図３の駆動波形整形回路（Drive Waveform Shaping Circuit;ＤＷＳＣ）２３８がさらに詳細に例示されている。簡略にするため、図４には、単一チャネルに関する駆動波形整形回路２３８が例示されており、以下で解説することにする。特定の適用例における特定のチャネル数に合うように、駆動波形整形回路２３８を繰り返して設けることが可能であるという点に留意されたい。
【００４９】
この実施態様の場合、駆動波形整形回路２３８には、差動データ信号（ＤａｔａＩｎ＋及びＤａｔａＩｎ−）を受信するための入力と、ＤＡＣ２３４から出力電圧信号を受信するための入力が含まれている。すなわち、駆動波形整形回路２３８には、ＤＡＣ２３４からＶbiasを受信するための入力、ＤＡＣ２３４からＶmodを受信するための入力、ＤＡＣ２３４からＶpkwを受信するための入力、及び、ＤＡＣ２３４からＶpkdを受信するための入力がさらに含まれている。前述のように、ＤＡＣ２３４の出力電圧信号は、現在の経時及び温度条件に関連した駆動波形直流及び交流パラメータに基づいて生成される。これらの入力に基づいて、駆動波形整形回路２３８は、レーザーの陽極（例えば、ＶＣＳＥＬ１２２の陽極）に供給される駆動波形（例えば、Ｉout）を生成する。図７には、負のピーキング部分を備えたこの駆動波形の一例が示されている。
【００５０】
ＤＷＳＣ２３８には、ＤＡＣ２３４から受信した出力電圧信号を緩衝として記憶してから、ＤＷＳＣ２３８の他のブロックに電圧信号を供給する、複数の入力バッファ（４１０、４２０、４３０、及び、４４０）が含まれている。バッファ４２０が、Ｖmodを受信して、反転Ｖmod信号を生成する反転バッファである点に留意されたい。
【００５１】
ＤＷＳＣ２３８には、さらに、電圧制御電流源（Voltage Controlled Current Circuit;ＶＣＣＳ）４５０、電圧制御電流源４５０に結合された出力ドライバ差動相互コンダクタンス増幅器（Output Driver Differential Transconductance Amplifier;ＯＤＤＴＡ）４６０、及び、同じく電圧制御電流源４５０に結合された負ピーキング差動相互コンダクタンス増幅器（Negative Peaking Differential Transconductance Amplifier;ＮＰＤＴＡ）４７０が含まれている。ＶＣＣＳ４５０、ＯＤＤＴＡ４６０、及び、ＮＰＤＴＡ４７０は、入力データ信号及び入力電圧信号に基づいて駆動波形（Ｉout）を選択的に整形する。
【００５２】
電圧制御電流源（ＶＣＣＳ）４５０には、Ｖbias2信号を受信するための入力、及び、反転Ｖmod2信号を受信するための入力、及び、供給電圧４５４に結合された入力が含まれている。これらの入力に基づいて、ＶＣＣＳ４５０は、ＩbiasとＩmodの直流電流和であるＩsourceを生成する。駆動波形（Ｉout）の論理１レベルは、Ｉsourceに等しい。ＯＤＤＴＡ４６０にデータ・パルスが入力されると、ＩsourceからＩmodpulseが減算されて、論理０のデータ・ビットに関してＩout＝Ｉbiasになり、論理１のデータ・ビットに関してＩout＝Ｉbias＋Ｉmodになる。
【００５３】
電源４８０は、スイッチ４８４（例えば、ＦＥＴスイッチ）を介してＶＣＣＳ４５０に結合されている。スイッチ４８４は、故障停止信号に応答して、選択的に開閉する。スイッチ４８４が閉じると、供給電圧信号４５４がＶＣＣＳ４５０に供給される。
【００５４】
ＯＤＤＴＡ４６０には、差動データ信号（ＤａｔａＩｎ＋及びＤａｔａＩｎ−）を受信するための入力と、反転Ｖmod2信号を受信するための入力が含まれている。これらの入力に基づいて、ＯＤＤＴＡ４６０は、入力データ・パルス毎に電流パルス４６４（すなわち、Ｉmodpulse）を生成する。Ｉmodpulseの振幅は、Ｖref入力に供給される基準電圧によってセットされる。この場合の基準電圧は、反転Ｖmod2に等しいので、電流パルスの振幅は、Ｉmod信号の振幅に等しい。
【００５５】
ＮＰＤＴＡ４７０には、差動データ信号（ＤａｔａＩｎ＋及びＤａｔａＩｎ−）を受信するための入力、Ｖpkw2信号を受信するための入力、及び、Ｖpkd2信号を受信するための入力が含まれている。これらの入力に基づいて、ＮＰＤＴＡ４７０は、ＤａｔａＩｎパルスにおいて観測される論理１から論理０への遷移毎に、負のピーキング過渡電流４７４（ＩnegpeakingまたはＩnp）を生成する。負のピーキング電流Ｉnegpeakingが、Ｉoutパルスの立ち下がりエッジとアライメントがとれる点に留意されたい。負のピーキング過渡電流（Ｉnegpeaking）は、本明細書においてＩnpとも呼ばれる。負のピーキング過渡電流（Ｉnegpeaking）は、それぞれ、Ｉpkd及びＴpkwに等しい電流振幅（深さ）と減衰時間（幅）を有している。ＮＰＤＴＡ４７０は、Ｖpkw2信号を用いて、負のピーキング過渡電流に関する減衰時間をセットし、Ｖpkd2信号を用いて、負のピーキング過渡電流に関する電流振幅をセットする。
【００５６】
要するに、ＯＤＤＴＡ４６０によって引き込まれる電流は、Ｉmodpulseで表示され、ＮＰＤＴＡ４７０によって引き込まれる電流は、ＩnegpeakingまたはＩnpで表示される。下記の式によって、出力電流値が得られる：
Ｉout＝Ｉsource−Ｉmodpulse−Ｉnp。
【００５７】
データ・パルスによって、Ｉmodpulseは、ＩsorceからＩmodを減算し、論理０のデータ・ビットに関してＩout＝Ｉbiasになり、論理１のデータ・ビットに関してＩout＝Ｉbias＋Ｉmodになる。１から０への遷移によって、１から０への遷移と同相をなすＩsourceからＩnp過渡電流が減算される。
【００５８】
［技法］
図５は、図１のレーザー・ドライバ１００によって実施される、本発明の実施態様の１つに従ってＶＣＳＥＬ駆動パラメータをセットし、制御するためのステップを例示したフローチャートである。ＶＣＳＥＬアレイ１２０における各ＶＣＳＥＬ１２２が特徴づけられ、その結果得られたデータが保管される。レーザーは、次に、ＭＣＦＯＴＭ９０にアセンブルされる。アセンブルされたユニットの各送信チャネルは、温度に関して特徴づけられ、やはり、結果として得られたデータが保管される。次に、保管されたデータは、不揮発性メモリ１３０にダウンロードされる。次に、各ＶＣＳＥＬは、格納されたパラメータを用いて、個別にプログラムされる。プログラミングは、最初に、「パワー・アップ」時（例えば、モジュールが、最初に、ルータまたはスイッチのようなネットワーク装置に取り付けられる時）に実施され、さらに、後述するように、動作中にも定期的に実施される。
【００５９】
ステップ５００では、電圧対電流（Ｖ−Ｉ）及びＶＣＳＥＬ光出力対電流（Ｌ−Ｉ）が、アレイ１２０内の各レーザー（例えば、ＶＣＳＥＬ）１２２毎に測定される。これらの測定は、アセンブリ前に実施されるのが望ましい。Agilent Technologies, Inc.から入手可能なＡｇｉｌｅｎｔ  ４１４５半導体パラメータ解析器及びＡｇｉｌｅｎｔ  ８１５３Ａ光波マルチメータを用いて、測定を行うことが可能である。
【００６０】
表Ｉには、典型的なＶＣＳＥＬのＶ−１データ及びＬ−Ｉデータが示されている。このデータは、生産試験システムによって、Ｉbias、Ｉmod、Ｉpkd、及び、Ｔpkwの最適化中に用いられるＤＡＣセッティングを決定するために利用される。Ｖ−Ｉデータには、所定のＶＣＳＥＬが、適正な回路動作に許された最高ＶＣＳＥＬ電圧を超えないようにするための最大電流範囲が示されている。ＶＣＳＥＬ電流の最大値が分かると、Ｌ−Ｉデータを利用して、光出力に関する最小ＶＣＳＥＬ電流及びＶＣＳＥＬ勾配効率（すなわち、電流変化に対する光出力の変化）が計算される。次に、前述のように求められた許容ＶＣＳＥＬ電流範囲及びＶＣＳＥＬ勾配効率を用いて、最適化中におけるＩbias、Ｉmod、Ｉpkd、及び、Ｔpkwの開始点が計算される。
【００６１】
【表１】
0004056249.tif 000002
【００６２】
ステップ５０４では、各送信チャネルの交流光波形が測定される。生産試験中、テスタによって、各チャネルの交流光波形が測定され、性能要素に合わせて最適化されるのが望ましい。これらの性能要素には、それらに制限するわけではないが、消光比（すなわち、論理１の光学パワー対論理０の光学パワーの比）、立ち上がり／立ち下がり時間、オーバシュート、ジッタ、及び、マスク・マージンを含むことが可能である。交流光波形の最適化には、以前に記録されたＶＣＳＥＬ光学パラメータが利用される。
【００６３】
交流光波形特性は、送信器のＶＣＳＥＬ毎に測定される。Ｉbias、Ｉmod、Ｉpkd、及び、ＴpkwのＤＡＣセッティングは、交流光波形特性が最適化されるまで、開始点の周りで変動される。最適化は、いくつかの温度で実施されるのが望ましい。交流光波形特性には、それらに制限するわけではないが、論理１ビット対論理０ビットの光学パワー比である消光比（Extinction Ratio;ＥＲ）、立ち上がり時間、立ち下がり時間、オーバシュート、及び、ジッタを含むことが可能である。
【００６４】
次に、各許容温度及び経時変化時点毎に、Ｉbias、Ｉmod、Ｉpkd、及び、Ｔpkwに関して最適なＤＡＣセッティングが計算され、不揮発性メモリ１３０に書き込まれる。不揮発性メモリ（例えば、ＥＥＰＲＯＭ）１３０には、温度及び経時変化の各時点によって関係づけられたＩbias、Ｉmod、Ｉpkd、及び、ＴpkwのＤＡＣセッティングの全てが格納される。次に、これらのアドレス指定可能なＤＡＣセッティングを用いて、動作中に、各ＶＣＳＥＬの電流駆動波形がプログラムされる。例えば、ＩbiasＤＡＣレジスタには、ＤＡＣ出力に電圧Ｖbiasを生成するために利用される、０〜２M（ＭビットＤＡＣの場合）のある数が記憶される。Ｖbiasは、駆動波形整形回路２３８によって、ＶＣＳＥＬ駆動電流波形のＩbiasパラメータをセットするために用いられる。同様に、Ｖmod、Ｖpkw、及び、Ｖpkdが、他のＤＡＣによって生成される。
【００６５】
ステップ５０８では、各チャネルのＤＡＣセッティングが、各温度及び経時変化時点毎に最適化される。ＤＡＣ２３４を利用して、駆動パラメータがアナログ信号に変換され、駆動波形整形回路（ＤＷＳＣ）２３８によって駆動波形の生成に利用されることになる。
【００６６】
ある実施態様では、ＤＡＣ２３４は、レーザー・ドライバ１００に組み込まれ、Ｍビット幅である。ビット数Ｍは、各パラメータに十分な分解能が得られるように選択される。例えば、Ｍは、典型的な実施例の場合、６ビットになるように選択される。
【００６７】
ステップ５１２では、経時変化カウンタ除数（Ｄ）が選択される。ステップ５２０では、ＤＡＣセッティング（すなわち、駆動パラメータ）が、例えば、テスト・システムから不揮発性メモリにダウンロードされる。ＤＡＣセッティングは、経時変化カウント、温度、チャネル番号、及び、ＤＡＣ番号によるＤＡＣセッティングの呼び出しを可能にするようにして格納される（すなわち、不揮発性メモリのＤＡＣセッティングは、経時変化カウント、温度、チャネル番号、及び、ＤＡＣ番号によってアドレス指定可能である）。
【００６８】
ステップ５３０では、経時変化カウンタが起動する。ステップ５４０では、駆動パラメータが、所定の条件に関して、不揮発性メモリ１３０から駆動レジスタ（２１０、２１４、２１８、及び、２２４）にロードされる。所定の条件とは、それらに制限するわけではないが、時間の経過（例えば、３０ミリ秒毎）や、経時変化時点に関する割り込みとすることが可能である。ステップ５４０が、送信モジュール９０の動作中に実施される点に留意されたい。
【００６９】
ステップ５５０では、レーザー・ドライバ集積回路の温度が、温度測定ブロック（ＴＭＢ）３３４によって測定される。ステップ５５４では、測定された温度が、デジタル形式（例えば、ｄｉｇｉｔａｌ＿ｔｅｍｐ信号）に変換され、コントローラ２００に供給される。ステップ５６０では、コントローラ２００は、後続のＤＡＣレジスタ書き込みサイクルにおいて、入力パラメータの１つとして、測定温度を用いて、駆動パラメータ・レジスタ（２１０、２１４、２１８、及び、２２４）を更新する。
【００７０】
ステップ５７０では、コントローラ２００は、駆動パラメータに関する値を呼び出すための読み取りアドレスを更新する。処理は、次に、ステップ５４０に進み、駆動パラメータ・レジスタに、不揮発性メモリ１３０のステップ５７０で修正可能なアドレスから読み取られた値が書き込まれる。
【００７１】
［取り扱い危険電流条件］
図６は、図１のレーザー・ドライバ１００によって行われる、本発明の実施態様の１つに従って危険電流条件を検出し、管理するためのステップを例示したフローチャートである。図５のステップ５２０の後、以下に述べる、危険電流条件を検出し、管理するためのステップが実施される。ステップ６１０では、各ＶＣＳＥＬを流れる電流が測定される。判定ブロック６２０では、測定された電流が所定の安全電流を超えるか否かが判定される。測定された電流が、所定の安全電流を超えると、レーザー・ドライバ１００の出力電流が、最小Ｉbiasと最小Ｉmodの和に等しい定最小電流に維持される。そうではなく、測定された電流が所定の安全電流以下であるという場合には、処理はループして、ステップ６１０に戻る。
【００７２】
判定ブロック６４０において、レーザー・ドライバ１００が有効再開信号（例えば、ｔｘ＿ｅｎａｂｌｅ信号）を受信したか否かの判定が行われる。レーザー・ドライバ１００が有効再開信号（例えば、ｔｘ＿ｅｎａｂｌｅ信号）を受信していれば、処理は、ステップ６５０に進む。ステップ６５０では、ＴＭＢ３３４及び経時レジスタ２８０を用いて、温度値及び経時値に基づくアドレスが生成される。前述のように、不揮発性メモリ１３０は、経時変化カウント、温度、チャネル番号、及び、ＤＡＣ番号によってアドレス指定可能である。次に、処理は、図５のステップ５４０に進み、駆動パラメータ・レジスタに、不揮発性メモリ１３０から読み取られた値がロードされる。
【００７３】
そうではなく、レーザー・ドライバ１００が有効な再開信号（例えば、Ｔｘ＿ｅｎａｂｌｅ信号）を受信していなければ、処理はステップ６３０に進み、レーザー・ドライバ１００は、最小出力電流状態のままである。
【００７４】
本発明の半導体レーザーを駆動するためのデジタル制御方法及び装置の説明は、ＶＣＳＥＬアレイに関連して行われた。しかし、この半導体レーザーを駆動するためのデジタル制御方法及び装置は、なんらかのタイプの半導体レーザーの駆動に駆動電流が必要になる場合には、必ず、他の応用例でも役立つという点に留意されたい。本発明の半導体レーザーに関するデジタル制御方法及び装置は、とりわけ、アレイ素子間で温度揺動を生じるが、それにもかかわらず、アレイ内の素子全体にわたって均等な性能を必要とする応用例に有効である。本発明の半導体レーザーに関するデジタル制御方法及び装置は、その光出力が、その動作寿命を通じて劣化する傾向のある応用例にも有効である。本発明の半導体レーザーに関するデジタル制御方法及び装置は、とりわけ、交流パラメータのプログラミングから便益を得ることが可能な応用例に有効である。
【００７５】
以上の明細書において、本発明の説明は、その特定の実施態様に関連して行われた。しかし、本発明のより広い範囲から逸脱することなく、さまざまな修正及び変更を加えることが可能である。明細書及び図面は、従って、制限を意味するものではなく、例示を意味するものとみなすべきである。
【図面の簡単な説明】
【図１】本発明のレーザー・ドライバが実現可能となる、典型的な複数チャネル光ファイバ送信モジュールのブロック図である。
【図２】本発明の実施態様の１つによる図１のレーザー・ドライバをより詳細に例示した図である。
【図３】本発明の実施態様の１つによる図１のレーザー・ドライバをより詳細に例示したブロック図である。
【図４】本発明の実施態様の１つによる図３の駆動波形整形回路をより詳細に例示した図である。
【図５】本発明の実施態様の１つに従って図２のコントローラによって実施されるステップを例示したフローチャートである。
【図６】本発明の実施態様の１つに従って図２のコントローラによって実施されるステップを例示したフローチャートである。
【図７】本発明のレーザー・ドライバによって生成される典型的な駆動波形を例示した図である。
【符号の説明】
１００  レーザー・ドライバ
１２０  レーザー・アレイ
１２２  半導体レーザー
１３０  不揮発性記憶装置
２００  デジタル・コントローラ
２３４  デジタル・アナログ変換器
２３８  波形整形回路
２４０  経時変化補償機構
２５０  温度補償機構
【図１】
0004056249.tif 000003
【図２】
0004056249.tif 000004
【図３】
0004056249.tif 000005
【図４】
0004056249.tif 000006
【図５】
0004056249.tif 000007
【図６】
0004056249.tif 000008
【図７】
0004056249.tif 000009