(57)【特許請求の範囲】
【請求項１】
複数のパワー半導体スイッチングデバイスが同期してスイッチングするように制御するための、パワー半導体スイッチングデバイス制御システムであって、
前記システムは、
協調制御システムと、
前記協調制御システムにそれぞれが結合する複数のスイッチングデバイスコントローラを含み、
各前記スイッチングデバイスコントローラは、１つまたは複数の各前記パワー半導体スイッチングデバイスを、完全オフステート、飽和オンステート、および前記完全オフステートと前記飽和オンステートとの間の少なくとも一つの中間ステートを含む複数のステートに制御するように構成され、
前記協調制御システムは、前記スイッチングデバイスが前記スイッチングデバイスコントローラによって同期してスイッチするように制御されるように構成され；
前記協調制御システムは、さらに、
前記スイッチングデバイスコントローラを制御して、前記パワー半導体スイッチングデバイスが前記完全オフステートおよび前記飽和オンステートのいずれか一つを含む初期ステートから前記中間ステートになるように制御し、
前記パワー半導体スイッチングデバイスを前記パワー半導体スイッチングデバイスのスイッチングが同期するように前記中間ステートを維持させ、
前記スイッチングデバイスコントローラを制御して、前記パワー半導体スイッチングデバイスが前記中間ステートから、前記完全オフステートおよび前記飽和オンステートのどちらか他方を含む最終ステートになるように制御するように構成される制御システム。
【請求項２】
請求項１に記載の制御システムにおいて、
各前記スイッチングデバイスコントローラは、１つまたは複数の各前記パワー半導体スイッチングデバイスを、前記完全オフステートと前記飽和オンステートとの間の複数の前記中間ステートに制御するように構成され；および、前記協調制御システムは、さらに前記スイッチングデバイスコントローラを制御して、前記完全オフステートと前記飽和オンステートとの間でスイッチングする場合に、前記パワー半導体スイッチングデバイスが前記中間ステートのいずれか一つになるように制御し、および、前記デバイスのスイッチングを同期させるために、次の前記中間ステートに遷移する前に、前記パワー半導体スイッチングデバイスに各前記中間ステートを維持させるように構成される制御システム。
【請求項３】
請求項１または２に記載の制御システムにおいて、
前記中間ステートは、準備（ｒｅａｄｙ−ｏｎ）ステートを含み、ここで、前記準備（ｒｅａｄｙ−ｏｎ）ステートでは、前記パワー半導体スイッチングデバイスの電流が完全オフ電流と飽和オン電流との中間である制御システム。
【請求項４】
請求項１、２または３のいずれかに記載の制御システムにおいて、
前記中間ステートは、アクティブ低電圧ステートを含み、前記アクティブ低電圧ステートでは、前記パワー半導体スイッチングデバイスは完全オフ電圧と飽和オン電圧との中間の電圧を有する制御システム。
【請求項５】
請求項１から４のいずれか一項に記載の制御システムにおいて、
前記協調制御システムおよび前記スイッチングデバイスコントローラのそれぞれは、前記協調制御システムと前記スイッチングデバイスコントローラとの間にデータ通信のためのデータ通信インターフェースをそれぞれ備え、
前記協調制御システムは、さらに、前記スイッチングデバイスコントローラが前記パワー半導体スイッチングデバイスを以下の工程によって制御するように構成され、前記工程は、
前記パワー半導体スイッチングデバイスを前記初期ステートから各前記中間ステートに制御するために、制御信号を前記スイッチングデバイスコントローラに発行する工程と、
前記スイッチングデバイスコントローラから各前記中間ステートが達成されたことを示すコンファメーション信号を受信する工程と、
各前記スイッチングデバイスコントローラで各前記中間ステートが達成されたことを確認するまで待つ工程と、
前記パワー半導体スイッチングデバイスを前記中間ステートから次の前記ステートに制御するように制御信号を前記スイッチングデバイスコントローラに発行する工程と、を含む制御システム。
【請求項６】
請求項５に記載の制御システムにおいて、
前記データ通信インターフェースは、パケットデータ通信インターフェースを含む制御システム。
【請求項７】
請求項６に記載の制御システムにおいて、
前記制御信号および前記コンファメーション信号は、リアルタイムパケットデータ通信信号を含む制御システム。
【請求項８】
請求項１から７のいずれか一項に記載の制御システムにおいて、
前記協調制御システムは、１つまたは複数のサブコントローラに結合する中央コントローラを含み、前記中央コントローラおよび前記１つまたは複数のサブコントローラは共通バスを介して通信し、各前記スイッチングデバイスコントローラは前記サブコントローラへの専用接続を備え、および、前記中央コントローラは、前記共通バスまたは前記専用接続で、前記１つまたは複数のサブコントローラを介して前記スイッチングデバイスコントローラを制御するように構成される制御システム。
【請求項９】
請求項１から８のいずれか一項に記載の制御システムにおいて、
前記パワー半導体スイッチングデバイスをさらに含み、直列接続デバイスの一組のストリングを規定するように、前記パワー半導体スイッチングデバイスは接続され、および、前記一組の各ストリングの対応するデバイスは並列に接続されている制御システム。
【請求項１０】
請求項１から９のいずれか一項に記載の制御システムにおいて、
ここで、前記パワー半導体スイッチングデバイスは、ＩＧＢＴを含む制御システム。
【請求項１１】
複数のパワー半導体スイッチングデバイスを同期してスイッチングさせるための協調制御システムに、それぞれが結合される複数のスイッチングデバイスコントローラを制御するための協調制御システムであって、
各前記スイッチングデバイスコントローラは、１つまたは複数の各前記パワー半導体スイッチングデバイスを、完全オフステート、飽和オンステート、および前記完全オフステートと前記飽和オンステートとの間の少なくとも一つの中間ステートを含む複数のステートに制御するように構成され、前記協調制御システムは：
前記スイッチングデバイスコントローラによって同期してスイッチするように、前記パワー半導体スイッチングデバイスを制御するシステムを含み；
前記システムは前記パワー半導体スイッチングデバイスを以下の工程を実行するように構成され、前記工程は、
前記スイッチングデバイスコントローラを制御して、前記パワー半導体スイッチングデバイスが前記完全オフステートおよび前記飽和オンステートのいずれか一つを含む初期ステートから前記中間ステートになるように制御する工程と、
前記パワー半導体スイッチングデバイスが前記パワー半導体スイッチングデバイスのスイッチングが同期するように前記中間ステートに維持させる工程と、および
前記スイッチングデバイスコントローラを制御して、前記パワー半導体スイッチングデバイスが前記中間ステートから、前記完全オフステートおよび前記飽和オンステートのどちらか他方を含む最終ステートになるように制御する工程を含む協調制御システム。
【請求項１２】
飽和オンステートおよび完全オフステートのいずれかを含む初期ステートにある各デバイスから開始し、複数のパワー半導体スイッチングデバイスをスイッチングを制御する方法であって、前記方法は、
前記パワー半導体スイッチングデバイスが、前記初期ステートから、前記飽和オンステートと前記完全オフステートの間にある１つまたは複数の中間ステートに遷移するように制御する工程と、
前記デバイスを前記１つまたは複数の中間ステートにとどまらせるように、前記１つまたは複数の中間ステートの前記パワー半導体デバイス保持する工程と、
前記パワー半導体スイッチングデバイスを、前記とどまらせたステートから前記飽和オンステートおよび前記完全オフステートのいずれか一つを含む最終ステートに遷移するように制御する工程を含む方法。
【請求項１３】
飽和オンステートおよび完全オフステートのいずれかを含む初期ステートにある各デバイスから開始し、複数のパワー半導体スイッチングデバイスが同期してスイッチングするように制御するための、パワー半導体スイッチングデバイス制御システムであって、前記システムは、
前記パワー半導体スイッチングデバイスを、前記初期ステートから前記飽和オンステートと前記完全オフステートの間にある１つまたは複数の中間ステートへ遷移するように制御するための手段と、
前記デバイスを前記１つまたは複数の中間ステートにとどまらせるように、前記１つまたは複数の中間ステートの前記パワー半導体デバイス保持する手段と、
前記パワー半導体スイッチングデバイスを、前記とどまらせたステートから前記飽和オンステートおよび前記完全オフステートのいずれか一つを含む最終ステートに遷移するように制御するための手段を含む制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パワー半導体スイッチングデバイスを制御するためのシステムおよび方法に関する。
【背景技術】
【０００２】
対象とするパワー半導体スイッチングデバイスは、典型的には、１アンペアよりも大きい電流を通電する能力があり、および、１００ボルトよりも大きい電圧で動作可能である。我々の関心があるデバイスの実施形態では、１０アンペア、５０アンペアまたは１００アンペアよりも大きい電流を搬送でき、および／または、デバイスに印可される電圧差が５００ボルトまたは１ＫＶよりも大きい電圧差を維持できる。
【０００３】
該デバイスの実施例は、ＭＯＳＦＥＴＳ（バーティカルまたはラテラル）およびＪＦＥＴなどのＦＥＴだけではなく、絶縁ゲートバイポーラトランジスタ（ＩＧＢＴ）を含み、潜在的には、ＬＩＬＥＴ（ラテラル反転層エミッタトランジスタ）、ＳＣＲおよび、同種のものなどのデバイスを含む。開示される技術は、任意の特定の種類デバイスのアーキテクチャに限定されるものではないので、パワースイッチングデバイスは、たとえば、バーティカルまたはラテラルデバイスのどちらでもよい。これに限定されるわけではないが、シリコン、および炭化ケイ素を含む技術範囲で製造される。
【０００４】
このタイプのスイッチングデバイスの用途には、特に、たとえば、沖合の風力設備からの電力伝送といったタイプのＤＣ伝送ラインにおける高電圧伝送ラインのスイッチング、および、モーター、たとえば機関車のモーターおよび同種のもののための中間電圧（たとえば１ＫＶよりも大きい）のスイッチングを含む。
【０００５】
このタイプの用途では、典型的に、数十個または数百個のデバイスが直列および／または並列に接続されて所望の電圧／電流で動作する。電気的環境は比較的ノイズが多く、および、スイッチングされる電圧／電流が大きいので、該デバイスのスイッチング制御には、デバイスの故障という重要な危険につながる特定の問題がある。さらに該システムの一つのデバイスが故障すると、システムの他のスイッチングデバイスは、結果として簡単に故障し得る
【発明の概要】
【発明が解決しようとする課題】
【０００６】
これらおよび他の問題に対処する技術をわれわれは説明する。
【課題を解決するための手段】
【０００７】
したがって、本発明によれば、複数のパワー半導体スイッチングデバイスが同期してスイッチングするように制御するための、パワー半導体スイッチングデバイス制御システムを提供する。該システムは：協調制御システム；および前記協調制御システムにそれぞれが結合する複数のスイッチングデバイスコントローラを含み；ここで、各前記スイッチングデバイスコントローラは、１つまたは複数の各前記パワー半導体スイッチングデバイスを、完全オフステート、飽和オン−ステート、および前記完全オフステートと前記飽和オンステートとの間の少なくとも一つの中間ステートを含む複数のステートに制御するように構成される。ここで、前記協調制御システムは、前記スイッチングデバイスが前記スイッチングデバイスコントローラによって同期してスイッチするように制御されるように構成され；および、前記協調制御システムは：前記完全オフステートおよび前記飽和−オンステートの一つを含む初期ステートから前記中間ステートに、前記パワー半導体スイッチングデバイスを制御するために前記スイッチングデバイスコントローラを制御し；前記中間ステートの前記パワー半導体スイッチングデバイスを前記デバイスのスイッチングが同期するように維持させ；および前記スイッチングデバイスコントローラを制御して、前記パワー半導体スイッチングデバイスが前記中間ステートから、前記完全オフステートおよび前記飽和オンステートのどちらか他方のステートを含む最終ステートになるように制御するように構成される。
【０００８】
該制御システムの実施形態によれば、１０、１００または１０００個以上のパワー半導体スイッチングデバイスのスイッチングが迅速に、しかも同期された形態で制御されることが可能となる。従って、概して、制御システムの実施形態では、各デバイスの導通ステートが各ステップで制御されるので、デバイスの導通ステートはロックステップで変化する。これは、スイッチングを同期させるばかりではなく、たとえば、直列接続にかかる全電圧に耐える、直列接続中の一つのデバイスではなく、電流／電圧負荷が複数のデバイス間で共有されることを確実にすることを補助する。該技術がいずれの半導体スイッチングデバイスに採用されてもよいが、ＩＧＢＴ（絶縁ゲートバイポーラトランジスタ）を含むパワー半導体スイッチングデバイスに適用されると特に有利である。
【０００９】
システムの好ましい実施形態では、デバイスは複数の中間ステート間で制御され、これらの中間ステートは、特に、低電流水平域（ｐｌａｔｅａｕ）にデバイスが維持されるステートを含むことができる。該低電流水平域（ｐｌａｔｅａｕ）は、たとえば、おおよそゼロ（漏洩）アンペアのオフ−電流から１００アンペアオーダのオン−電流の間の中間の０．１アンペア〜１アンペアのオーダの電流を含んでもよい。追加的または代替的に採用されてもよい第２の中間ステートはアクティブロー電圧水平域（ｐｌａｔｅａｕ）ステートであって、該ステートは、デバイスに印可される電圧がデバイスの完全オフ電圧と飽和オン電圧との間の中間値に維持される。たとえば飽和オン電圧は３ボルト未満であり、および、オフ−電圧１ＫＶオーダである場合には１０〜１００Ｖのオーダである。低電流水平域（ｐｌａｔｅａｕ）が使用されると、並列に接続されるデバイスがすべてアクティブになることが確実になり、および、低電圧水平域（ｐｌａｔｅａｕ）が使用されると、直列に接続されるデバイスがすべてアクティブになることが確実になる。デバイスがアクティブになると、ゲート電荷の変化に高速に応答でき、および、同期スイッチングが必要になる。実施形態では、デバイスに対する六つの異なるステートが後述される。
【００１０】
好ましい実施形態では、協調制御システムは、制御信号を、スイッチングすべき少なくともパワー半導体スイッチングデバイスのスイッチングデバイスコントローラに送信し、および、さらに関連するデバイスが次の（中間または最終）ステートへ進むための制御信号を送信する前に、各デバイスが要求されたステートにあることを確認するアクノリッジメント信号を受信するまで待つ。スイッチングデバイスのアクティブ制御のこの形態は、特に丈夫である。実施形態では制御および／またはアクノリッジメント／コンファメーション信号は、パケットデータ通信ネットワークを通じて送信されるデータパケットを含んで構成されてもよい。この場合には、制御信号は、次の目標ステートを規定するスイッチステートフィールドを有する、一緒に制御される一組のスイッチングデバイスを選択するためのグループアドレスフィールドを含むブロードキャストパケットを含んでもよい。システムの実施形態では、これらのデータパケットは、リアルタイムデータパケットで構成され、これらは、「リアルタイム」で処理され、および、ネットワークを介して送信される他のデータパケットよりも優先順位が高いパケットとしてラベリングされる。
【００１１】
好ましいシステムアーキテクチャでは、協調制御システムは、１つまたは複数のサブコントローラに結合する中央コントローラを含み、および、各該サブコントローラは一組のデバイスコントローラ、たとえば１０個以上のデバイスコントローラに結合する。このアーキテクチャでは、中央コントローラは、１つまたは複数の共通バスを介してサブコントローラに結合可能であるが、好ましくは、各サブコントローラはそれが制御するスイッチングデバイスコントローラのそれぞれと分離されたバス接続を有する。実施形態では各スイッチングデバイスコントローラは、１つまたは複数のパワー半導体スイッチングデバイスを制御する。この一般的なタイプのアーキテクチャによれば、スイッチ制御情報の迅速なブロードキャスティングを促進するが、サブコントローラおよびそれが結合されるスイッチングデバイスコントローラ間のメッセージの迅速な処理を可能にする。特にスイッチングデバイスコントローラのための専用バスは、スイッチングデバイスコントローラからのアクノリッジメント信号／コンファメーション信号の結合を容易にするので、すべてが次の目標ステートにいつ到達したか、および／または、誤りがフラグされたか否かを容易に決定できる。
【００１２】
本発明はまた、本発明の態様／実施形態による、スイッチングデバイスコントローラ、および協調制御システムも別々に提供する。
【００１３】
従って関連した態様では、本発明は、複数のパワー半導体スイッチングデバイスを同期してスイッチングさせるための協調制御システムに、それぞれが結合される複数のスイッチングデバイスコントローラを制御するための協調制御システムを提供する。ここで、各前記スイッチングデバイスコントローラは、１つまたは複数の各前記パワー半導体スイッチングデバイスを、完全オフステート、飽和オンステート、および前記完全オフステートと前記飽和オンステートとの間の少なくとも一つの中間ステートを含む複数のステートに制御するように構成される。協調制御システムは：前記スイッチングデバイスコントローラによって同期してスイッチするように、前記パワー半導体スイッチングデバイスを制御するシステムを含み；ここで、前記システムは前記パワー半導体スイッチングデバイスを以下のように制御するように構成される。前記スイッチングデバイスコントローラを制御して、前記パワー半導体スイッチングデバイスが前記完全オフステートおよび前記飽和オンステートのいずれか一つを含む初期ステートから前記中間ステートになるように制御し；前記中間ステートの前記パワー半導体スイッチングデバイスが前記デバイスのスイッチングが同期するように維持させ；および前記スイッチングデバイスコントローラを制御して、前記パワー半導体スイッチングデバイスが前記中間ステートから、前記完全オフステートおよび前記飽和オンステートのどちらか他方のステートを含む最終ステートになるように制御する。
【００１４】
当業者は、このタイプの協調制御システムはハードウェアまたはソフトウェアに実装可能であり（ディスクなどの物理的なキャリアで提供される）、たとえば、デジタルシグナルプロセッサーまたは他のプロセッサー、またはそれら二つの組み合わせで実行されることを理解するであろう。さらに、本発明の態様／実施形態を実装するためのコードは、ハードウェア記述言語のためのコードを含んでもよい。当業者は、実施形態では、協調制御システムは、お互いに通信する複数の結合要素に分散されることを理解するであろう。
【００１５】
本発明は、飽和オンステートおよび完全オフステートのいずれかを含む初期ステートにある各デバイスから開始する、複数のパワー半導体スイッチングデバイススイッチングを制御する方法もさらに提供する。該方法は：前記パワー半導体スイッチングデバイスが、前記初期ステートから、前記飽和オンステートと前記完全オフステートの間にある１つまたは複数の中間ステートに遷移するように制御する工程；前記デバイスを前記１つまたは複数の中間ステートにとどまらせるように、前記パワー半導体デバイスを前記１つまたは複数の中間ステートに保持する工程；および、前記パワー半導体スイッチングデバイスを、前記とどまらせたステートから前記飽和オンステートおよび前記完全オフステートのいずれか一つを含む最終ステートに遷移するように制御する工程を含む。
【００１６】
本発明はさらに、飽和オンステートおよび完全オフステートのいずれかを含む初期ステートにある各デバイスから開始し、複数のパワー半導体スイッチングデバイスが同期してスイッチングするように制御するための、パワー半導体スイッチングデバイス制御システムも提供する。該システムは：前記パワー半導体スイッチングデバイスを、前記初期ステートから前記飽和オンステートと前記完全オフステートの間にある１つまたは複数の中間ステートへ遷移するように制御するための手段；前記デバイスを前記１つまたは複数の中間ステートにとどまらせるように、前記パワー半導体デバイスを前記１つまたは複数の中間ステートに保持する手段；および前記パワー半導体スイッチングデバイスを、前記とどまらせたステートから前記飽和オンステートおよび前記完全オフステートのいずれか一つを含む最終ステートに遷移するように制御するための手段を含む。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施形態による、サブコントローラに結合する中央コントローラを含む協調制御システムと組み合わせられるスイッチングデバイスコントローラ（ＳＤ）の実施例を示す。
【図２ａ】ブリッジアプリケーションの実施例における、本発明の実施形態によるパワー半導体スイッチングデバイス制御システムを示す。
【図２ｂ】図２ａの配置の詳細を示す。
【図３ａ】六つの所与のステートと五つの遷移で示されるパワー半導体スイッチングデバイスゲートのチャージ曲線に対するゲート電圧の例を示す。
【図３ｂ】六つの所与のステートと五つの遷移で示されるパワー半導体スイッチングデバイスゲートのステートおよび遷移の対応表を示す。
【図３ｃ】六つの所与のステートと五つの遷移で示されるパワー半導体スイッチングデバイスゲートのＩＧＢＴ（絶縁ゲートバイポーラトランジスタ）パワー半導体スイッチングデバイスのスイッチ−オンに対する、時間対コレクタ電流およびコレクタ−エミッタ電圧のグラフを示す。
【図４ａ】本発明の実施形態による、パワー半導体スイッチングデバイス制御システムのための通信トポロジーの第１の実施例を示す。
【図４ｂ】本発明の実施形態による、パワー半導体スイッチングデバイス制御システムのための通信トポロジーの第２の実施例を示す。
【図５ａ】サブコントローラに接続されている複数のスイッチングデバイスコントローラから送信される、データパケットをサブコントローラで処理するスキームの概念図である。
【図５ｂ】小さい制御システムネットワークでのデバイスアドレス指定の実施例を示す図である。
【図５ｃ】本発明の実施形態によるパワー半導体スイッチングデバイス制御システムのためのサブコントローラのブロック図である。
【図６ａ】本発明の実施形態による、スイッチングデバイスコントローラのための一対のコンフィギュレーションレジスターバンクの詳細を示す図である。
【図６ｂ】協調制御システムからアドレス指定されたデバイスに送信されたデータパケットの非リアルタイムデータを書き込むためのプロシージャを示す図である。
【図６ｃ】補完的な非リアルタイムデータ読み出しプロシージャを示す図である。
【発明を実施するための形態】
【００１８】
図１ａを参照すると、パワー半導体スイッチングデバイス制御システム１００の実施形態は、一つだけが図示されているが、複数のサブコントローラ１２０に結合し、次に複数のスイッチングデバイスコントローラ１３０（再び一つのだけが図示される）に結合される中央コントローラ１１０を含む。以下の記載では、スイッチングデバイスコントローラ１３０はスイッチデバイス（ＳＤ）と称する場合もあり；および中央コントローラおよびサブコントローラはそれぞれＣＣおよびＳＣと略称される場合もある。図１ａの実施例ではサブコントローラが提供されているが、これは本質的ではなく、および、制御システムの実施形態では中央コントローラだけを使用してもよい。他の制御システムの実施形態では、多重レベルの（ネスト化した）サブコントローラを使用してもよい。
【００１９】
パワーエレクトロニクスシステムまたは回路は、一般に、複数のスイッチを含み、それぞれのスイッチは、一つ、または、典型的には複数のスイッチングデバイスを含んでもよい。
【００２０】
図１ａの実施例ではパワー半導体スイッチングデバイスはＩＧＢＴ１３２であるが、ＭＯＳＦＥＴＳ、ＪＦＥＴおよび同種のものなどの他のデバイスが採用されてもよい。
【００２１】
図示されるように、スイッチングデバイスコントローラ（スイッチデバイス）１３０は、デバイスコントローラ１３０を接続するバス１２２とサブコントローラ１２０をインターフェースするデジタルロジックを含む。好ましい実施形態ではデバイスコントローラ１３０はこのバスを介して電力も受電し、および、デジタルロジック１４０は、バスから電力を受電し、デバイスコントローラ／スイッチデバイス１３０の低電圧部分に電力を供給する回路を含む。動作中、デジタルロジック１４０は、バス１２２を介してコマンドおよびコンフィギュレーション情報を受信し、および、アクノリッジメントおよび以降により詳細に記載する他のデータで応答する。
【００２２】
デジタルロジック１４０は、図示される実施例では、ＩＧＢＴ１３２を駆動するゲートドライバ１３６と結合するアナログ制御回路１３８とインターフェースする。われわれは以前、２０１１年３月７日に申請された英国特許出願特許出願ＧＢ１１０３８０６．４（参照によって本明細書に援用する）にＩＧＢＴ駆動回路のいくつかの実施例を記載した。特に好ましい回路を、本出願と同日に申請された同時係属の英国特許出願特許出願に記載し、および、そのタイトルは「パワー半導体デバイスコントローラ」（参照によって本明細書に援用する）である。これは、図１に図示されるように、アクティブ制御システムとともに電流および電圧フィードバックの組み合わせを使用して、スイッチングデバイス（ＩＧＢＴ）が受動的な抵抗器に実質的に見えるようにする。従って二つのアクティブ中間ステートが目標抵抗値によって決定される。その目標抵抗値は、アクティブ低電流ステートに対する高抵抗値、および、アクティブ低電圧ステートに対する低抵抗値である（以降ステート３および４と記載される）。好ましくは第２の制御ループも、ゲート電圧を閾値にサーボするためにコントローラに設けられ、一つの閾値はデバイスがスイッチオンを開始する閾値の直下である閾値であり、第２の閾値はデバイスが飽和状態から出始める直上の閾値である（後にステート２および５で記載される）。
【００２３】
より一般的には、図１ａのスイッチングデバイスコントローラ１３０の好ましい実施形態は、半導体スイッチングデバイスの電圧を検出するための電圧センシング回路１４２、および、デバイスを通過する電流を検出するための電流センシング回路１４４を含む。いくつかの好ましい実施形態では、オプションでサブコントローラ１２０および中央コントローラ１１０の一方または両方へのリクエストに応じて、これらのセンシング回路のどちらか一方あるいは両方からのデータはフィードバックされる。
【００２４】
フル（Ｈ−）ブリッジ、ハーフブリッジまたは３−相インバ−ターなどの電力変換器では、各スイッチ位置には、１つまたは複数の半導体スイッチングデバイスを含む。導入部に記載されたタイプの高電圧および／または高電流用途では、多くの半導体スイッチングデバイスは、直列および／または並列に接続される、それぞれは各スイッチングデバイスコントローラに接続されてもよい。図２ａは、たとえば、ＤＣからＡＣに変換または反対に変換するために採用されるＨ−ブリッジ電力変換器２００の実施例を示す。この実施例ではＨ−ブリッジ２０４の各スイッチ２０２ａ〜２０２ｄは、図２ｂにより詳しい詳細を示すように、一組の半導体スイッチングデバイスダイ（ｄｉｅ）を含む。図２ｂの拡大図では単一の制御可能なスイッチ２０２は、９つのパワー半導体スイッチングデバイス２１０を含み、たとえば各デバイスは炭化ケイ素ダイ、電圧レベルを形成するために並列に接続された複数のデバイス、直列に接続されて直列接続した電圧レベルを形成する複数の組の複数のデバイスを含む。他の実施形態では単一のスイッチングデバイスコントローラは、２つ以上のスイッチまたはデバイスダイを制御することができる。各スイッチ２１０は、順番に、サブコントローラ１２０ａ、１２０ｂの一つに結合されるスイッチングデバイスコントローラ１３０を有する。
【００２５】
図示されるように、各スイッチングデバイスコントローラに一つの該バスがあるように、分離されたバスがサブコントローラとスイッチングデバイスコントローラとの間を走る。例示的な一実施形態では、サブコントローラは、各スイッチングデバイスコントローラに３０個の分離されたバス接続を提供し、および図２ａの３６個の半導体スイッチを使用する実施例Ｈ−ブリッジに対して、二つのサブコントローラが使用される。複数のスイッチを有する高電圧および／または高電流の電力電子回路では、数百個または可能性として数千個の半導体スイッチングデバイスが採用されることが当業者には理解されるであろう。該配列では、パワー半導体スイッチングデバイスは直列および並列に接続可能であるべきであり、および、スイッチングデバイスコントローラシステムは、これらのデバイスのスイッチングを、事実上実質的に同時に同期してスイッチするように制御可能であるべきである。
【００２６】
同時制御を補助するために、多くのスイッチステートが定義される。実施形態の一例は、以下の通りである、（究極の実装では、より多くまたは少ないステートが採用されてもよい）；
ステート１：完全オフ：スイッチが切られ、漏れ電流だけが流れる。
ステート２：低ゲート電圧によるオフ：スイッチが切られるがゲート閾値電圧に近い。
ステート３：アクティブ低電流：スイッチはアクティブであるが、デバイスをあらかじめ定められた低電流が流れるステートである。
ステート４：アクティブ低電圧：スイッチはアクティブであるが、デバイスの両端にあらかじめ定められた低電圧（飽和電圧を超える）が存在するステートである。
ステート５：高ゲート電圧によるオン：スイッチがオンになり、および、完全に飽和していない飽和状態である
ステート６：飽和オン：スイッチは飽和オン状態である
【００２７】
アクティブ低電流ステートでは、デバイスの両端は高電圧であってもよいが、デバイスの両端の電圧はどのような電圧にもなり得る（誘導性負荷の場合に起こりえるが、スイッチを介して電流は反転するので、反転並列ダイオードが伝導すれば負にもなり得る）。アクティブ低電圧ステートでは、デバイスを通ってフル電流に近い電流が流れてもよいが、再び原則として、このステートではデバイスを通ってどのような電流が流れてもよい。
【００２８】
要求されるスイッチステートの通信は、リアルタイムメッセージで中央コントローラからスイッチングデバイスに送信される。さらにコンフィギュレーションおよびモニタリングデータは、非リアルタイムメッセージで交換できる。
【００２９】
広い意味で、デバイスがオフの場合、デバイスの両端間は高電圧であり、たとえば１ＫＶ、および、実質的にゼロ電流（漏洩電流だけ）であり、たとえば、実質的にゼロゲート電圧である。電流がゲートに注入されると、ゲート電圧が少し上昇し、小さな電流が流れ始め、たとえば０．１アンペア〜１アンペアのオーダである。これによって実質的に直列に結合するデバイスを同時にアクティブにする。このステートに到達するには、たとえば、５０ｎｓ〜１μｓオーダの、ゲートをチャージするための時間、および伝搬遅延を考慮することが必要である。このステートから、さらに電流をゲートに注入するとさらにゲート電圧が上昇し、デバイスに、たとえば１００アンペアオーダの実質的により多くの電流が流れるステートに到達し、および、さらに、たとえば１０ボルトオーダの残留または「アクティブ」低電圧がデバイスの両端間に存在する。最終的にゲート電圧はフル電圧に駆動され、それは、たとえば、シリコンデバイスでは１５ボルトオーダであり、または、炭化ケイ素デバイスでは２０ボルトオーダであり、そのポイントでデバイスが飽和し、フル電流が流れ、および、たとえば２ボルトオーダの最小の飽和オン電圧がデバイスの両端にあらわれる。
【００３０】
上記の概要説明は、実施形態では、特にＩＧＢＴパワー半導体スイッチングデバイスで使用される多様な維持ステートおよび遷移を簡略化している。従って図３ａおよび図３ｂを参照すると、１から６のラベルを貼った六つのステートがＡからＥのラベルが貼られた５つの遷移領域の間で採用される。図３ｄの表には、これらのステートおよび遷移が記載されている：ステート１および２では、デバイスはＯＦＦである；ステート３および４では、デバイスは中間の「アクティブ」ステートであり、およびステート５および６では、デバイスはＯＮである。
【００３１】
より詳細には、ステート１では、ゼロまたは負ゲート電圧でデバイスがスイッチオフされているかによって異なるが、ゲート電圧Ｖｇ＝０または負である。ステート２では、ゲート電圧は第１の（低）閾値電圧Ｖｇ＝Ｖｔｈ（低）であり、遷移Ａの間にゲート電圧は上昇する。ステート３では、ＩＧＢＴのコレクタ電流は、ＩＣ＝Ｉｍｉｎであるあらかじめ定められた最小値Ｉｍｉｎである。ステート４では、コレクタ−エミッタ電圧は、Ｖｃｅ＝Ｖｍｉｎで定義された、最小電圧値Ｖｍｉｎである。遷移Ｂでステート２からステート３に移動し、および、遷移Ｃでステート３からステート４に移動する。ステート５では、ゲート電圧はＶｇ＝Ｖｔｈ（高）である第２の（高）閾値電圧に等しく、および、ステート６では、ゲート電圧はＶｇ＝Ｖｓである最大飽和電圧Ｖｓで、遷移Ｅはステート５と６の間である。ステート１から６に移動する間に、デバイスは完全オフから飽和オンに（および反対に）スイッチする。各ステートにおいて、スイッチングデバイスコントローラは、隣接ステートに遷移するために、中央コントローラまたはサブコントローラからステート変更コマンドを受信し、および、遷移が完了するとアクノリッジメントを送信する。次のステートへ変更するコマンドを送信する前に、中央コントローラまたはサブコントローラは、すべてのノードからのアクノリッジメントを待つ。ステート間の移動は可逆であるので、誤りが示されまたは検知される場合には、たとえば一組のスイッチングデバイスを知られた良好なステートに戻る（または、前に進む）ために、デバイスまたはデバイスのグループは意図されるステートから前のステートに戻ることできる。
【００３２】
従って実施形態では中央コントローラまたはサブコントローラはＲＴパケットを、六つのステートの一つにステート変更を要求するスイッチングデバイスコントローラ（後に「ノード」とも記載される）に送信してもよい。ステート遷移が完了するとノードはアクノリッジメントを返信し、および、この情報によって、コントローラは何時すべての接続されたノードが所望のステートに到達したかを知ることができる。
【００３３】
図３ｂに図示されるように６ステートは、ＯＦＦ、アクティブ、およびＯＮとステート間の遷移を持つ、それぞれ２ステートを持つ３領域に分けることができる。
【００３４】
実施形態では、この情報は、たとえば、リアルタイムパケット内の４つの連続するデータビットである４データビットによってコード化される。返信パケットは、二つのステート間の遷移が進行中であるか否かを示す一つのフラグを有する。次に、複合パケットを形成するために各ノードからパケットが到着すると、コントローラは一緒に、または、ビット単位でこれらを「ＯＲ処理」できる。このように、いずれか一つのノードがまだ遷移状態である場合には、複合された効果によって、一番最後のノードが遷移を完了し次のステートに移るまで、全ブロックのステートがまだ遷移状態にある。
【００３５】
さらに後述するように、この４ビットペイロードだけではなく、データパケットは、少なくとも二つの異なるタイプのパケットである、リアルタイムパケットおよび非リアルタイムパケットを定義する、追加のペイロードデータビットおよび好ましくは少なくとも一つのパケットタイプ（Ｔ）ビットも含んでもよい。好ましい実施形態では、パケットは、少なくとも一つの受信エラーフラグおよび／またはパケットが有効であることを示す少なくとも一つのフラグも含む。エラー検出（および、可能であれば訂正する）コードのために、前述されたデータビットに加えて、パケットはさらに好ましくは１つまたは複数のビットを含む。
【００３６】
リアルタイムスイッチ制御データばかりではなく、コントローラからノードへ送信されるデータには、非リアルタイムコンフィギュレーションデータ、および、グローバルシステムステータスを決定するステータス変化データなど、スリープモード、シャットダウンモードおよび同種のモードに入るためのコマンドなど、オプションで他のデータを含んでもよい。このステータス変化データ（アクションコマンドと呼ばれる）は、好ましくはリアルタイムデータとして送信される。ノードからコントローラへ返信されるデータは、前述されたリアルタイムスイッチアクノリッジメントデータ、非リアルタイムモニタリングデータ、および、過電流データ過電圧データ、または過温度データなどの、ステータスデータまたは警告データ（リアルタイムで送信される）を含んでもよい。既に述べたように、パケットタイプフラグは、スイッチ制御／アクノリッジメントデータ等のリアルタイムデータを示すために使用されてもよく、たとえばゼロはリアルタイムパケットであることを示し、および１は非リアルタイムパケットであることを示す。実施形態では、特に非リアルタイムデータパケットのためのパケットサブタイプを定義するために、追加のパケットタイプビットが使用される。非リアルタイムデータパケットは、たとえば、コンフィギュレーションまたはモニタリングデータを含んでもよい。この後者のデータタイプは、より大きなペイロードを使用してもよいので、オプションでＮＲＴメッセージを定義するための１つまたは複数のシーケンスデータビットが採用されてもよい。図３ｃを参照すると、ＩＧＢＴが、前述されたように初期スイッチオンコマンドで開始し、および、維持ステート６でスイッチオン完了で終了する６つのステートを通じて移動する場合の、時間に対するコレクタ電流Ｉｃおよびコレクタ電流エミッタ電圧Ｖｃｅの概略図が示されている。従って、図から見られるように、初期のフリー（ｆｒｅｅ）ＯＦＦステート１ではＩｃは０アンペアで、維持ステート３で０．１アンペア〜１アンペアのオーダであるＩｍｉｎへ遷移し、次に遷移ステートＣの間に最大値へ増加する。遷移ステートＣの間に、Ｖｃｅは、飽和オン飽和電圧よりも大きい、たとえば１０ボルト〜５０ボルトオーダの低電圧Ｖｍｉｎ（ステート４で）に降下する。遷移ステートＤの間に、Ｖｃｅは最終的に、たとえば、１ボルト〜５ボルトのオーダの飽和オン飽和値Ｖｓに低下する。従って維持ステート６では、デバイスは飽和オン状態である。スイッチＯＦＦシーケンスは、図３ｃに示されたシーケンスとは本質的に反対となる。
【００３７】
概して、および、前述して概略したように、中央コントローラの仕事は、電力変換装置のすべてのスイッチデバイスのスイッチングを組織化することである。二つのレベル通信システムを介してこれは実行される。
【００３８】
リアルタイム（ＲＴ）データパケットシステムによって、リアルタイムステート−変化コマンドの適切な到着およびリアルタイムステータスおよび誤りフラグの返信を確実にする。
【００３９】
非リアルタイム（ＮＲＴ）メッセージサービスは、スイッチデバイスの構成、および、搬送タイムスタンプされたモニタリングデータを中央コントローラに返信するために使用される。
【００４０】
中央コントローラは、スイッチデバイスまたはサブコントローラに双方向に接続され得る多くのポートを備えるが、好ましくは各ポートは変換器の接続形態と関連してマップされる。中央コントローラのポートはハードウェアでアドレス指定されるので、データパケットはこれらのポートからお互いに独立し、および、同期して、送信および受信される。
【００４１】
前述されたように、各ポートは、冗長性のために、二つのチャンネル、「Ａ」および「Ｂ」を有し、これらは独立しても使用できる。中央コントローラは、同時に起こるＮＲＴ（非リアルタイム）メッセージトランザクションを調整する能力がある。この二重チャンネルセットアップは、ＲＴデータエラーチェックを補助するためにも使用できる。スイッチデバイスは、二つのチャンネルで同時に同一のＲＴデータを受信し、および、各スイッチデバイスはこれらの二つの受信されたパケットを比較し、アクションを実行する前にＲＴデータが同一であるかを確認する。パケットのＲＴデータ部分は同一であるべきだから、中央コントローラは、このアプローチを受信されたパケットにも適用できる。しかしながら、これらが同一ポートで異なるデバイスのＮＲＴメッセージトランザクションに対して独立して使用される場合には、チャンネルＡおよびＢからのパケットのＮＲＴ部分は同一ではないことに留意すべきである。
【００４２】
実施形態ではすべてのポートは半二重であってもよい。データパケットは中央コントローラからサブコントローラおよびスイッチデバイスに送信され、および、次に、返信パケットは、受信したすべてのスイッチデバイスから中央コントローラに送信される。これは一つの完全なパケット交換である。中央コントローラはパケット交換を開始し、および、スイッチデバイスには応答を返信すべき時間ウィンドウが決められる。
【００４３】
ＮＲＴメッセージは同様の方法で処理される。中央コントローラは、完了メッセージが送信されるまで一連のデータパケットを交換することによって、メッセージトランザクションを開始する。メッセージは、単一のスイッチデバイス、サブコントローラ、または、スイッチループのアドレスを含んでもよい。アドレス指定されたデバイス（単数または複数）はメッセージを処理し、および、それらの自己メッセージで応答できる（しかし一つのデバイスは一度に一つのハードウェアポート／チャンネルだけに応答できる）。従って、応答が期待される場合には、中央コントローラは、ＮＲＴメッセージが受信されたスイッチデバイスからの応答を待つ間はポート／チャンネルをオープンに維持する。スイッチデバイスが応答メッセージを送信すると、メッセージトランザクションが完了する。
【００４４】
中央コントローラは、スイッチデバイスが応答メッセージを送信するまで待たなければならないかもしれず、その間ポート／チャンネルはロックされ、および、他のどのスイッチデバイスへ、または、他のどのスイッチデバイスからもＮＲＴメッセージを送受信するために使用されてはいけないかもしれない。しかしながら、中央コントローラは、他の利用可能なハードウェアポートおよびチャンネルを同時に開いて、他のメッセージトランザクションを実行することはできる。
【００４５】
概してサブコントローラの機能は、中央コントローラからスイッチデバイスにデータパケットを通過させること、および、返信データパケットからデータをまとめることである。この仕事は好ましくは、完了データパケットの到着を待たずに、ビット入出力デースで、迅速に実行される。サブコントローラは、両方向でタスクを実行するために、出力されるパケットデータのコンテンツをビット単位ベースで変更できる。
【００４６】
再び述べるが、各サブコントローラは、実施形態では、冗長性のために各ポートが二つのチャンネル、「Ａ」および「Ｂ」を有する多くのポートを備える。そのようなものであるから、サブコントローラおよび中央コントローラは類似するインターフェースを備えることができ、および／または、類似するハードウェアを含む。実施形態では電力および通信は、これらのポート接続を介してルートされる。
【００４７】
実施形態では、アドレス方式（後述される）によって、各サブコントローラおよびスイッチデバイスはユニークアドレスを備えることができる。チャンネルＡまたはＢの選択は、好ましくは中央コントローラによって自動的に実行され、および、アドレス方式の一部ではない（両方のチャンネルとも同一のスイッチデバイスで終了するようにルートされるので）。中央コントローラのポートの第１の段は、ハードウェアルーティングを介してアドレス指定されるけれども、この第１のレベル列挙は、好ましくは、ルーティングおよび検査のためにメッセージアドレスに含まれる。
【００４８】
実施例では、４−レベル通信アーキテクチャを備えるシステムをアドレス指定するために、２０−ビットアドレスが使用される。３相−レッグ（ｌｅｇ）を有するインバータ−は以下のように構成される：
【００４９】
レベル１：中央コントローラポート１−＞４を、ハーフフェーズレグ（ｈａｌｆ−ｐｈａｓｅ−ｌｅｇ）で、４つの一次サブコントローラに接続する１Ｈ、ポート５−＞８を、ハーフフェーズレグ（ｈａｌｆ−ｐｈａｓｅ−ｌｅｇ）で、４つの一次サブコントローラに接続する１Ｌ、および、フェーズ２＆３のために同様に続く（すなわちポート１−＞２４）。
【００５０】
レベル２：一次サブコントローラをそれぞれ２４個の二次サブコントローラに接続する（すなわち１．１−＞２４．２４）。
【００５１】
レベル３：二次サブコントローラをさらに２４個のサブ−レベルに接続し、ハーフフェーズレグで全部で２３０４レベルを形成する（すなわち１．１．１−＞２４．２４．２４）。
【００５２】
レベル４：三次サブコントローラをそれぞれ２４個の並列スイッチデバイスに接続する、合計で３３１７７６個の接続されたスイッチデバイスを形成する（すなわち１．１．１．１−＞２４．２４．２４．２４）。
【００５３】
該システムは、１ＫＶ／１００Ａスイッチデバイスで２４００Ａの通電能力がある、＋／−１ＭＶＨＶＤＣシステムを形成するための好適な接続性レベルを示す。
【００５４】
このアドレス方式はＮＲＴメッセージだけのためにあり、実施形態では、ＲＴデータパケット配信には使用されないことに留意すべきである。
【００５５】
実施形態では、すべてのスイッチデバイスはすべてのデータパケットを所定の中央コントローラポートで受信し、および、それら自身のデータパケットで応答する（中央コントローラに戻る途中でサブコントローラが結合する）。中央コントローラポート／チャンネルに対して一つのスイッチデバイスだけが、いかなる場合も一度に非−ヌルＮＲＴデータを含むパケットで応答することが許可されている。これが発生すると、二つのＮＲＴデータの塊を受信したサブコントローラはロジック１「マージ（Ｍｅｒｇｅ）エラー」フラグを返信パケットに挿入し、中央コントローラに通信エラーが発生したことを警告する。（データ塊は、１つまたは複数のビットを含み、および、一バイトまたは８−ビットバイト未満である場合もある）。
【００５６】
同様に実施形態では、所定の中央コントローラポートのすべてのメッセージは、すべてのスイッチデバイスに受信される。
【００５７】
前述されたように、各スイッチデバイスは、デジタル回路およびアナログ回路の組み合わせを含むので、電力デバイス（ＩＧＢＴまたはＭＯＳＦＥＴ）は、６スイッチステートのそれぞれを移動できるようになる。
【００５８】
スイッチが、単一のスイッチデバイスだけを含む場合には、複数のスイッチデバイスを同期させる場合に使用されるアクティブ＿ロー＿電流ステートおよびアクティブ＿ロー＿電圧ステートは必要ないかもしれない。
【００５９】
ステート３：アクティブ＿ロー＿電流は、電力デバイスの両端間に高電圧が印可された場合に使用される。この制御された低電流ステートによって、電力デバイスがアクティブ状態でターンオンされる間、低電力消費になることを確実にする。
【００６０】
ステート４：アクティブ＿ロー＿電圧は、電力デバイスに高電流が流れる場合に使用される。この制御された低電圧ステートによって、電力デバイスがアクティブ状態でターンオフされる間、低電力消費になることを確実にする。
【００６１】
次に図４ａを参照すると、この図は、パワー半導体スイッチングデバイス制御システム４００の第１の実施例の接続形態を示し、冗長なチャンネルの第１の配置を図示する。図４ａの実施例では、中央コントローラ４０２は複数の（たとえば３０個の）論理出力／入力４０４を有し、それぞれが一対の冗長なチャンネルＡ、４０４ａ、およびチャンネルＢ、４０４ｂに分割される。システムは、複数のサブコントローラ４０６も含む、各サブコントローラはＡ−チャンネルおよびＢ−チャンネルを備え、サブコントローラが故障した場合に冗長性を付与し、各スイッチングデバイスコントローラ（ＳＤ）４０８は、ＡチャンネルおよびＢチャンネルのそれぞれに対して一つずつ、二つの冗長な入力／出力４１０Ａ、Ｂを備える。実施形態では複数層のサブコントローラ、たとえば三層までのサブコントローラが採用されてもよい。
【００６２】
図示される実施例では、各デバイス／コントローラ間の接続は高速ポイントツーポイント接続であるが、代替配置では中央コントローラとサブコントローラ間に共通バスが採用されてもよい。一実施形態では接続は、ツイストペア銅線を含み、同一のペアまたは追加のペアが、スイッチングデバイスコントローラに電源を供給するように採用されてもよい。または、中央コントローラおよびサブコントローラ（単数または複数）および／またはスイッチングデバイスコントローラへ／スイッチングデバイスコントローラから、間に光ファイバー接続が採用されてもよい。該配置によって高速データ転送が可能になり、たとえば１００Ｍビット／ｓまたは１Ｇビット／ｓを超える。ネットワーク接続４１２システムの全体のコンフィギュレーション／制御のために中央コントローラ４０２にも提供されている。実施形態では、これはＥｔｈｅｒｎｅｔ（登録商標）接続であってもよい。
【００６３】
図４ａの要素と同様の要素は同様の参照番号によって示される図４ｂは、中央コントローラからスイッチングデバイスコントローラに接続されているチャンネルＡおよびチャンネルＢの両方が同一のサブコントローラによって取り扱われる第２の実施例接続形態を示す。これによって冗長性が低減されるが、配線が単純になり、および、ネットワークＡおよびＢで異なるアドレスに接続されるデバイスが低減するなどいくつかの他の利点がある。どちらの接続形態が採用されてもよい。
【００６４】
上述した記載から、スイッチングデバイス制御システムの接続形態によって、単一の中央コントローラが、潜在的に、非常に多くのパワー半導体デバイスをツリー構造を介して制御できることを当業者は理解するであろう。ここで、ツリーの各ノードはアドレスが割り当てられ、後述するように、非リアルタイムメッセージを通過させることを容易にする。通信プロトコルはこのツリー上で動作し、好ましくは以下の特徴を提供する。パワー半導体スイッチングデバイスのグループのスイッチングを同期させて、全体の通信待ち時間ができるだけ小さいように、中央コントローラからスイッチングデバイスコントローラへ短いリアルタイムリクエストを送信し、および該リクエストが完了した時刻を示す情報を受信するメカニズム。修正アクションを実行するために、誤り条件を検出するために使用される、中央コントローラが、再び好ましくは実用的な短い遅延で、スイッチングデバイスコントローラから高レベル誤り情報を受信するメカニズム。潜在的に長いマルチバイトトランザクションを使用し、および、「リアルタイム」が必要とされないかもしれない、誤り診断、初期デバイスコンフィギュレーションのために、および、誤り予想（ｐｒｏｇｎｏｓｉｓ）および同種のものの測定データを読むために、中央コントローラがスイッチングデバイスコントローラ（ＳＤ）およびサブコントローラ（ＳＣ）に問い合わせるメカニズム。通信ノード間は比較的高度に電気的に絶縁されているが、通信プロトコルは、一般に電気的ノイズの多い環境で動作する。
【００６５】
低遅延リアルタイム要求を支援するために、プロトコルは短いフレーム構造およびリクエスト／レスポンスプロトコルを使用する。ＣＣは単一のフレームをすべてのデバイスに送信し、ＳＣはそれをそのすべての出力ポートに転送し、ＳＤはこれを受信する。ＳＤは即時にレスポンスを送信し、ＳＣはすべてのポートからこれらを受信し、および、結合したレスポンスをＣＣへ返信する前にそれらを結合する。これは非対称である。ＳＣは上から単一のデータフレームを受信し、および、それをすべてのポートでブロードキャストする。ＳＣは下流から複数のデータフレームを受信し、および、上流へ単一のフレームを送信する前にこれらを一緒に結合する。
【００６６】
低遅延のために使用される短いフレーム長は、リクエストまたはレスポンス送信されるべきパケットに複数バイトパケットを要求するＮＲＴ（非リアルタイム）メッセージングを直接的に可能とはしない。これを達成するために、ＮＲＴトランザクションが多くの短いフレームに分割される高いレベルのプロトコルが要求される。
【００６７】
低−レベルフレーム構造の実施例が後述される。いくつかの特徴は、
ダウンストリーム（ＣＣからＳＤ）およびアップストリーム（ＳＤからＣＣ）フレームはその内容と大きさの両方で異なる。
両方のフレームは、エラー検出および訂正を可能にするハミングコードを含む。
ダウンストリームフレームのタイプビット（Ｔ）は、それが、リアルタイム（ＲＴ）および非リアルタイム（ＮＲＴ）データを含むか否かを示す。
アップストリームフレームは、ＲＴデータとＮＲＴデータの両方を含む（すなわちタイプビットが無い）。
【００６８】
ＣＣは、常にＮＲＴトラフィックよりもＲＴトラフィックの優先順位を高くする責任がある。従ってステート変更は、ＮＲＴデータよりも優先順位が高い。ＳＤは、ＮＲＴデータの送信よりも誤りデータの送信（ＲＴ）の優先順位を高くせず（さもなければ誤りステートにあるノードはＮＲＴメカニズムを使用して検査できない）、したがってＲＴデータおよびＮＲＴデータの両方がアップストリームフレームに存在する。
【００６９】
ハミングコードの選択（より定着しているＣＲＣよりも）によって、下流からのフレームを結合する場合にＳＣの遅延を低減し、および、ある程度のエラー訂正を提供する。
【００７０】
リアルタイムリクエストは、リアルタイムグループ（一実施形態では３２個ある）内でＣＣからすべてのデバイスに送信される。該リクエストは、このグループのすべてのＳＤは、スイッチングステートを変更するべきか、または、いくつかのリアルタイムアクションを実施すべきかを示す。リアルタイムレスポンスは、スイッチまたはアクションが完了した時刻を示す「実施中のステート変更」および「実施中のアクション」ビット、およびＳＤの誤りステートを示す誤りフラグを含む。
【００７１】
「サブシステムステータス」をＣＣに提供するために、ＳＣは、すべてのダウンストリームノードのこれらのビットにＯＲ動作を実施する。ＣＣがステート変更を発行すれば、ＳＩＰビットがクリアされると、すべてのデバイスがその動作を完了したと決定できる。実施例のＲＴフレームを後述する。
【００７２】
実施形態では、スイッチングデバイスが二つの（中間）ステート間を遷移する時間よりも、リアルタイムパケットの往復遅延時間は短い。さらに往復遅延時間はスイッチングデバイスの故障時間以下であることが好ましい。好ましくは往復遅延時間は、これよりも１０分の一オーダで短い。典型的な故障時間は約１〜１０μｓである（たとえば短絡時間はデバイスデータシートから決定できる。これはデバイスの動作条件によって異なってもよい）。一般にスイッチングデバイスのステートは約１μｓの時間スケールで変化するので、信号伝達はこれよりも早く動作できることが好ましい。
【００７３】
非リアルタイムリクエストは、ネットワーク上に複数のフレームで転送される。ＮＲＴフレーム構造は、８ビットのデータおよび通常のデータバイトであるか否かを示すビット、またはメッセージ構造を示す制御バイト（たとえば、フロー制御に使用するための開始（ＳＴＡＲＴ）信号または終了（ＳＴＯＰ）信号、または一次停止（ＰＡＵＳＥ）信号を含む。ダウンストリームＮＲＴフレームは、シーケンス番号も含む（バス手段の非対称特性を示すが、これはアップストリームには必要とされない）。
【００７４】
実施形態では、ＳＣで結合されたときにデータが破壊されないように、一度に単一のＳＤ／ＳＣだけがＮＲＴリクエストに応答できる。すべての他のデバイスは、すべてがゼロビットであるヌル−制御パケットを転送するので、害無く、結合することができる。
【００７５】
ＣＣは、ＳＤ内のレジスターにアクセスするためにＮＲＴ層を使用する。ＮＲＴメッセージは、動作の種類（読み出し、または、書き込み）とともにＮＲＴデバイスアドレスおよびアクセスするレジスターアドレスを含む。書き込み動作のために、書き込みデータも転送される。読み出し動作のために、読み出すレジスター番号が転送される。ＳＤ／ＳＣからのレスポンスは、ステータス、および、読み出しリクエストの場合には、要求されるデータを含む。
【００７６】
ＮＲＴアドレス指定モデルは、複数のノードに動作が適用されるようにするためのブロードキャストアドレスおよびグループアドレスを好ましくは含む。好ましい制約である、ただ一つの転送ＳＤ／ＳＣとは、グループリクエストに応じてＳＤ／ＳＣはデータを転送すべきではないことを意味する。したがって、これらのリクエストは、たとえば、デバイスのグループの初期コンフィギュレーションなどの書き込み動作に対してだけ使用される。
【００７７】
図５ａを参照すると、これは、概念的に、複数のスイッチングデバイスコントローラからサブコントローラで受信したデータパケットの結合として説明される。スイッチングデバイスコントローラからのステートデータは、一組のＲＴ（リアルタイム）フラグによって示されており、実施形態では前述されたように６つのフラグがある。これらは、潜在的に、１０４個オーダまでのデバイスからのデータを結合するために一緒にＯＲ処理５００される。これは、遷移中は、アクティブである遷移（ＳＩＰ）ビットが提供されるからである。従ってスイッチングデバイスコントローラからのステートデータ一緒にＯＲすることによって、デバイスのすべてが次のステートに到達したときを示す。それは、この時になると、すべてのデバイスがＳＩＰビットを設定しないからである。このようにステート変更完了５０２決定がなされる。実施形態の１つでは、各リアルタイムパケットにおおよそ１Ｇビット／ｓビットレートでのシリアルデータ通信を採用することによって、おおよそ到達に２４ｎｓかかるので、ステート変更完了決定は非常に迅速になされる。しかしながら、当業者であれば、同一のアプローチを使用することによって、シリアル通信よりも、並列または一部並列を代替的に採用できることが理解できるであろう。
【００７８】
実施形態では、スイッチングデバイスコントローラからのデータは、誤りを示すために１つまたは複数のビットがアクティブ（高または低レベルで）となる、誤りデータも含む。その組のスイッチングデバイスコントローラに誤りが存在するか否か５０４を同定するために、再びこの誤りデータは一緒にＯＲ処理５００されてもよい。実施形態では、１つまたは複数のデータパケットに組み込まれてから、結果として生じるステート変更完了、および、オプションの誤りデータは中央コントローラに転送されてもよい。
【００７９】
実施形態ではスイッチングデバイスコントローラから受信されたデータは、エラー検出データ、実施形態ではハミングコードのためのパリティデータも含む。次にプロシージャは、ハミングコードを復号するためのエラー復号プロセス５０６を含む。ハミングコードは、ツリーの関連する枝のスイッチングデバイスコントローラからのアクノリッジメントデータパケットのエラーを検出するために試験される。このように、中央コントローラへのパケット中にエラーフラグが設定される。当業者であれば、エラー検出データを扱うために採用されてもよい代替アプローチが存在することを理解するであろう、特にこのデータを結合することによって、潜在的にどのスイッチングデバイスコントローラのアクノリッジメントパケットにエラーを含むかが隠されてしまう（好ましくは、これを同定するための問い合わせ用に、結合前のデータが局所的に記憶されることが好ましい）。いくつかの好ましい実施形態では、エラー検出データは、サブコントローラから中央コントローラに転送されるデータにも含まれる。実施形態では、これによって二つのビットエラーを検出し、および、一つのビットエラーを訂正することを容易にする（コントローラに結合するサブコントローラで）。
【００８０】
図５ａは、ステートまたはスイッチングデバイスコントローラから送信される他のデータのどこにパリティビットが含まれるか、そして入力するデータは到着するとエラーチェックを受け、エラー復号待ち時間を低減することも概念的に示す。入力する（シリアル）データの最終部分が到着する時間までに、いくらかのエラー復号がすでに実行されているので、したがって完了パケットが良好（有効）または無効かを決定するための追加の遅延が小さくなり、後者の場合にはＯＲ処理する前に一つのビットエラーフラグ、Ｅ、がエラー復号プロセス５０６から出るデータに追加される。実施形態では、１〜５ビットのエラー復号待ち時間が示されており、ナノ秒あたり１ビットなので制御システムの信号伝搬遅延と比べると一般に小さい。最も重要なことは、全パケットが検証される前に各ビットが転送されるので、大部分が送信された後に、何時パケットがエラーになったかを示すフラグを付けるメカニズムが要求される。これは、ハミングコードの最後の３ビットによって覆われる付加されたエラーフラグによって提供される。
【００８１】
実施形態では、スイッチングデバイスコントローラからサブコントローラによって受信されるアクノリッジメントデータは、２４ビットフレームを含む。サブコントローラは、たとえば、サブ−システムステータスを決定するためにデータビットをＯＲ処理することによって結合される３０ビットの該フレームを受信できる。実施形態では一つの通信チャンネルが各スイッチングデバイスコントローラのために提供される。これは、１つまたは複数の「ワイヤ」または光ファイバーケーブルで実装されてもよい。既に述べたように、リアルタイムアクノリッジメントデータパケットは、特に、６つのフラグを含む。他方、スイッチングデバイスコントローラ（ノードまたはＳＤ）に送信されるスイッチステートまたは他のコマンドは、グループアドレスを含み、実施形態では５ビットを含む。該コマンドパケットは中央コントローラからブロードキャストされ、および、１つまたは複数のサブコントローラによって、コマンドを解釈し、たとえば、ステートを変更するスイッチングデバイスコントローラに転送される。しかしながら、代替的に、データパケットまたは実施形態による該アドレス指定技術を使用しないで、並列バス配置が採用されてもよい。
【００８２】
データリンク層の好ましい実装形態の実施例をより詳細に説明する
【００８３】
データリンク層
概して、データリンク層は、ＣＣからＳＤへの信頼性のないブロードキャストデータグラムサービスを提供し、および、ＳＤからＣＣへの信頼性のないユニキャストデータグラムサービス（ＳＤは直接自分達の間で通信することはできないが、すべての通信はマスターによって制御されている）を提供する。コントローラからノードへのデータフレームの一般的なフォーマット（ＣＣ−＞Ｎ）、および反対（Ｎ−＞ＣＣ）は、以下の通りである：
【表１】
0006005759.tif 000002
【００８４】
以下の略語が使用される：
Ｔ  パケットタイプ
Ｐ［５：０］  パリティ
Ｆ［５：０］  ＲＴフラグ
Ｄ［９：０］  データ
Ｅ  エラー
ＭＥ  マージ（Ｍｅｒｇｅ）エラー
【００８５】
出力方向パケット（ＣＣ−＞ＳＤ）では、データはＴ（タイプ）フラグに基づくＲＴデータまたはＮＲＴデータであってもよい。入力方向パケット（ＳＤ−＞ＣＣ）では、ＲＴデータおよびＮＲＴデータの両方が存在する。ＲＴデータは、重要な情報をＳＤからＣＣへ送信するために使用される一組のフラグを含む。パリティビットＰ［５：０］およびＰ［４：０］はＳＥＣＤＥＤ（「単一のエラー訂正、二重エラー検出」）ハミングコードである。ノードが間違ったパケットを受信すると、エラービット、Ｅ、が設定される。これは、ＳＤがＣＣから破損したパケットを受信した場合、または、ＳＣがＳＤから破損したパケットを受信した場合であり得る。エラービットは、アップストリームパケットで後から送信されるので、入力するアップストリームパケットがエラーである場合にＳＣは誤りを報告できる（最後のパリティビットが受信され、および、チェックされるまでＥビットが送信されないので、ＳＣで数ビットの遅延が必要になる）。サブコントローラが２つ以上のダウンストリームデバイスから非ヌルＮＲＴデータを受信すると、マージ（Ｍｅｒｇｅ）エラービット、ＭＥ、が設定される。（これは、同一のアドレスを持つ二つのデバイスが存在する場合にだけ発生するべきである。）
【００８６】
プロトコルは、リクエスト−レスポンスパターンである：ＣＣによってパケットが送信されるたびに、ＳＤがパケットを受信する。ＣＣは、ＲＴトラフィックがＮＲＴトラフィックよりも優先順位が高くなるように制御する。
【００８７】
ＣＣからのすべてのパケットは、ＳＣによってすべてのＳＤへ転送される。ＳＤがパケットを受信すると、ハミングコードがチェックされる。
・単一のビットエラーが検出されると、エラーは訂正され、および、フレームのコンテントはＴフラグに基づいて関連する上位層へ転送される。単一のビットエラーカウンターが統計処理のためにインクリメントされる。
・二重ビットエラーが検出されると、フレームのコンテントは破棄され、および、Ｅ（エラー）フラグが応答パケットに設定される。すべての場合に（フレームが破損し、または、破損しない場合）、出力方向パケットがＣＣに返信される。
・ＣＣが、Ｅフラグが設定されたフレームを受信すると、応答フレームのＥフラグがクリアされるか、または、リトライカウンターが終了するまで、直前のフレームが再送される。
【００８８】
ＣＣが受信した応答フレームが破損し、および、それを訂正できない（２ビットエラー）場合には、受信されたパケットのコンテントは信用できないので、および、ＣＣはパケットを再び送信する。
【００８９】
オプションで単一のビットエラーが検出される場合にフレームが破棄されてもよい（エラーを訂正することが可能なケース）ので、これによって誤りフレームを受け入れる可能性が低減される。
【００９０】
各フレームはＳＥＣＤＥＤ（「単一のエラー訂正、二重エラー検出」）ハミングコードを有している。出力方向通信に対して、各ＳＤは、単一のビットエラーを検出し、および、訂正する能力がある。莫大な数のＳＤおよび高速通信によってこの種類のエラーが発生する可能性があるので、これは単一のビットエラーに対する再送信を避けるために使用される。
【００９１】
サブコントローラはダウンストリームデータＣＣ−＞ＳＤを最小の遅延ですべての出力ポートへ送信する（すなわち、すべてのパケットが受信されるまで待たない）。パケットはＳＤからＣＣへのアップストリームであるので、前述されたように、すべてのＳＣは：Ｆ［５：０］、Ｄ［８：０］およびＥのＯＲ機能を実行する。ＳＣは、発信データに対して訂正パリティビット（Ｐ［５：０］）を送信する（パリティビットは一緒にＯＲ処理されない）。
【００９２】
ＲＴ層データパケットについて検討する。これらは以下のフォーマットを有する。
【表２】
0006005759.tif 000003
【００９３】
以下の略語が使用される：
Ｇ［４：０］  グループアドレス
Ｓ［３：０］  スイッチステータス
Ａ［３：０］  アクション
ＲＴ          パケットタイプ
（ＲＴパケットタイプでは、０＝ＲＴステートである。すなわち、スイッチステートはＣＣからノード（ＳＤ）へ送信される。１＝ＲＴアクションである。）
ＯＣ          過電流
ＯＶ          過電圧
ＸＸ          スペア
ＣＥ          通信エラー
ＡＩＰ        実施中のアクション
ＳＩＰ        スイッチステータス変化が進行中
【００９４】
グループアドレスは、ＲＴデータをＳＤの異なるグループ、たとえば異なるレベルのマルチレベルインバータ−へ送信するために使用される。グループ０はブロードキャストグループである。デバイスは、ＲＴアドレス指定グループのメンバーのＲＴリクエストに従ってのみ動作する。グループアドレスは、ＮＲＴデータパケットを使用してＳＤに送信され、および、ＲＴアクションコマンドパケットを使用してアクティブにされる。スイッチステータスは、ＳＤグループのための所望のスイッチステートを示す４−ビット番号である。
【００９５】
アクションコマンドは４−ビット番号である。アクションの例には、デバイスをパワーオン−ステータスにリセットする、ＮＲＴ通信システムのリセット、デバイスに記憶されるコンフィギュレーションを適用することが挙げられる。「シャドーレジスター」ビット２３から１８は、ＳＤからＣＣに時間重要情報を送信するために使用される一組のフラグである。
【００９６】
ＳＤがＲＴアクションコマンドまたはスイッチステータス変化を受信すると、ＡＩＰおよびＳＩＰフラグが設定される。アクションまたはスイッチステータス変化が完了すると、フラグがリセットされる。ＳＣのフラグＯＲ処理によって、ＣＣは少なくとも一つのＳＤがまだアクション／変化を完了しているか否かを知ることができる。
【００９７】
ＲＴデータパケットは、該組のＳＤのステートを報告する一組の誤りフラグ（ＯＣ、ＯＶ等）を含む。報告される誤りの例には、過電流（不飽和）、過電圧、ＯＮ（あるいはＯＦＦ）ステートの確立の失敗（これはゲート駆動の失敗を示す）、過温度、および、スイッチングデバイスコントローラが連続して電圧固定ステートにあることを示すステート（制御システムのどこかの故障を示す）が挙げられる。
【００９８】
ＳＤに誤りがある場合、たとえば過電圧誤りの場合には、ＲＴデータ中にビットが設定され、および、これはＳＣまで転送される。ＳＣはＯＲ動作を実施し、および、これを前方に送信する。データがＣＣに到着すると、ネットワークのどこかに故障があるという情報が利用可能になり、および、たとえば各デバイスに質問することで、ＮＲＴデータチャンネルが正確にこの故障の場所を決定するために使用される。
【００９９】
各ＳＤは、誤りステータスをチェックするために読み出されるレジスターを有する。しかしながら実施形態では、すべてのダウンストリームポートからの最新の誤りステータスはＳＣにキャッシュされ、および、誤りステータスレジスターによって案内されてＳＣツリーをたどることによって誤りの位置を決定できる。誤りを検出すると、望むならば、誤りステートに至った遷移およびステートにノードがステップバックするように制御することによって（あるいは、代替的に、前に進んで次の「安全な」ステートに移行させることによって）システムの一部または全部を、以前の知られている良いステートに戻すことができる。
【０１００】
次に、データパケットが以下のフォーマットを持つＮＲＴトランスポート層を検討する。
【表３】
0006005759.tif 000004
【０１０１】
以下の略語が使用される：
Ｄ［７：０］  データ
Ｃ［７：０］  制御
ＮＴ          パケットタイプ
Ｓ            シーケンスフラグ
ＰＯＲ        パワーオン／リセット
【０１０２】
ＮＲＴパケットは、８−ビットデータバイトまたは８−ビット制御コードを含む。デバイスがパワーオンまたはリセットされると、パワー−オン／リセットビット、ＰＯＲ、が設定され、および、デバイスのアドレスがそれに割り当てられるまで設定状態を維持する。（これによって、動作中のシステムにデバイスがいつ加わったかをＣＣが検知することが可能になる。）制御ビットは、特に、パケットの開始と終了を示す（約６４バイトまでのＮＲＴデータフレームペイロードの可変番号で構成される）。
【０１０３】
シーケンスフラグは、信頼性があるブロードキャストデータグラムサービスを提供するために使用される。ＮＲＴフレームを受信すると、フレームのＳフラグは、受信ノード中の内部シーケンスフラグと比較される。二つのフラグが等しくない場合には、出力方向フレームからのデータは無視されて、新しいデータが入力方向フレームに挿入され、および内部シーケンスフラグは無効にされる。
【０１０４】
ＮＲＴ通信プロトコルは、２０−ビットデバイスアドレスを使用する。三つのアドレスクラスがある：
１．「デバイスアドレス」はａ．ｂ．ｃ．ｄの形態を取り、ここで第１の要素は１〜３０であり、および、すべての他の要素は０〜３０である。このアドレスによって各デバイスを規定する。
２．「ワイルドアドレス」はデバイスアドレスであるが、１つまたは複数の要素が「すべてのデバイス」を意味する値３１を取る。たとえば１．２．３１．０とは、１．２．ｘ．０ここでｘは０〜３０であるすべてのデバイスを意味する。
３．「グループアドレス」は０．ｘ．ｙ．ｚの形態を取り、ここで１５−ビット番号ｘｙｚはデバイスのグループを規定する。
【０１０５】
すべてのスレーブデバイス（すなわち、中央コントローラではない）は単一のデバイス識別子を持つ。中央コントローラは、それらのネットワークの位置に基づいて、デバイスにアドレスを割り付ける責任がある。図５Ｂを参照すると、アドレス方式を説明するために、単一の中央コントローラ出力ポート（ポート１）に取り付けられた小さいネットワークを示す。円はサブコントローラノードを示し、長方形は各デバイスを示す。図の各層で、数字がアドレスに加えられる。
【０１０６】
ワイルドアドレスによって、ノードグループをツリー中のそれらの位置に基づいてアドレス指定できる。アドレスのワイルド部分は値３１で示される（ポート番号が無効であることを示す）。たとえば：
１番．３１．０．０．０は中央コントローラに直接接続されるすべてのデバイスをアドレス指定する。
２番．３１．３１．０．０は、ツリーの第１レベルおよび第２レベルにあるすべてのデバイスをアドレス指定する。
３番．１．２．３．３１は、アドレス１．２．３．０のサブコントローラに接続されているすべてのデバイスをアドレス指定する。
４番．３１．３１．３１．３１は、ネットワーク上のすべてのデバイスをアドレス指定する。
【０１０７】
グループアドレスによって、動的に管理されるグループに基づいて、デバイスのアドレス指定が可能になる。これらのグループはデバイスのグループアドレスレジスターを設定する中央コントローラによって管理でき、デバイスの特性に基づく（たとえば、ＮＲＴアドレスがデバイスにアドレス指定されたか否か）。以下に事前に定義されるグループを示す。
【表４】
0006005759.tif 000005
【０１０８】
アドレスがデバイスに割り付けられると、デバイス列挙スキームが使用される。デバイスにアドレスが割り付けられる前には、個々にアドレス指定することはできず、ブロードキャスト／グループアドレスを使用することによってのみアクセスできる。したがってアルゴリズムが使用されることによって、グループアドレスがデバイスアドレスを設定するために使用されるのであれば、該グループは、該デバイスを含み、他のデバイスを含まないことが確実になる。これは、該組の動作可能なサブコントローラのＮＲＴ出力ポートを操作することによって実行される。該アルゴリズムは各ＣＣ出力ポート、Ｎ、で実施され、および、アドレスＮ．ａ．ｂ．ｃがノードにアドレス指定される。アルゴリズムは、以下のステップで実行される：
【０１０９】
１．リセットアクションをブロードキャストＲＴグループに送信する（従ってすべてのノードのアドレスがクリアされ、および、すべてのＳＣ出力はＮＲＴトラフィックと遮断される）。
２．グループアドレスＧＲＯＵＰ＿ＮＯ＿ＡＤＤＲＥＳＳを使用してアドレスＮを割り当てる（このノードは、すべての出力がディスエーブルとなったＳＤ、または、ＳＣであり、従って一つのデバイスだけが応答する）。
３．以下のアドレスＮで始まる「列挙アルゴリズム」を実施する。
【０１１０】
列挙アルゴリズムはアドレスＮで開始し、デバイス上で再帰的である。プロシージャはデバイスタイプを読み、および、デバイスがＳＣでなければアルゴリズムは終了する。デバイスがサブコントローラであれば：ＳＣのすべての出力−ポートをディスエーブルとし、各出力ポート、ｉに対して：
１．出力ポートｉをイネーブルにする。
２．グループアドレスＧＲＯＵＰ＿ＮＯ＿ＡＤＤＲＥＳＳを使用して、アドレスをデバイスｉに割り当てる。
３．デバイスｉで列挙アルゴリズムを実行する（ツリーの下の第１のサーチ深さ）。
４．出力ポートｉをディスエーブルとする。
次にすべての出力ポートをイネーブルにする。
【０１１１】
図５ｃを参照すると、本発明の実施形態による、上述の技術を実装するためのサブコントローラ５５０のブロック図を示す。従ってサブコントローラは、一組のポート５５２ａ〜５５２ｃを含み、それぞれは（ローカルなポート０は別にして）、データ送受信機５５４、送信されるデータのためのエンコーダ５５６、受信されるデータのためのデコーダーおよびデータ回復機能５５８、および、ＦＩＦＯ５６０、および、好ましくは、パリティデコーダー５６２を含む。復号受信されたデータからの出力および各ポートパリティデコーダーからの出力がポートＯＲ処理ブロック５００に提供され、概略説明したように、その後、パリティ機能およびデータエンコーダ機能５７０、５７２を介して、中央コントローラへ再送信される。物理インターフェースは、一対のデータ送受信機５７４を含む、および、受信されるデータは、クロック信号をブロック５００に提供するデコーダーおよびデータ回復機能５７６に提供され、および、ローカルポート０を介してこのブロックにも入力される。複数のサブコントローラを有する制御システムでは、層ポート５７４が別のサブコントローラと通信可能である。従って実施形態では３２個の双方向ポートがあり、１つの「入力方向」、３０個の「出力方向」および１つの内部ポートがある。実施形態では、各ポートは半二重であるので、実施形態では一対のバッファーが、サブコントローラロジックで制御される各外部ポートに提供される。
【０１１２】
実施形態では、動作中エンコーダ５５６、５７２の一方または両方が、デジタル１／０レベルビットストリームを三元コードを使用してエンコードする、たとえば、ハイブリッド（Ｈ−）三元コードを、３レベル、正、ゼロ、および負にする。復号およびデータ回復ボックス５５８、５７６はこれらの３レベルを二つのレベルのデジタルビットストリームに復号し、および、データを内部クロックに同期させる。ＦＩＦＯ５６０は入力されるデータを完了フレームまで記憶する。パリティデコーダー５６２は、入力されるフレームのハミングコードをチェックする。実施形態では、ポート０は、ＳＤへの他のノードと類似している内部ノードであり、サブコントローラ自体を構成するために使用されるローカルノードモジュール５７８を含む。
【０１１３】
入力方向データ（中央コントローラからの）は実質的に変更無しですべての出力方向ポート（ノード／ＳＤに向かう）およびローカルポートに送信される。この最中に、入力方向データストリームはデーコードされるので、内部サブコントローラロジックがフレームの先頭を同定することが可能になり、および、バッファーを駆動する；外部出力方向ポートに対して、データストリームは転送される前に再エンコードされる。
【０１１４】
ノード／ＳＤ（および内部ポート）の一つから到着したデータはビット単位ベースで結合される。好ましくは、ノード／ＳＤから（オプションで別のサブコントローラを介して）入力される各データストリームは、一時的にＦＩＦＯに記憶される。サブコントローラからその方向（他のサブコントローラまたはノード）のケーブルでは長さマッチングが必要ないので、入力データビットは異なる時間に到着可能である。すべてのポートに対して、ＦＩＦＯにフレームの第１ビットが記憶されると、サブコントローラロジックはＦＩＦＯからデータの読み出しを開始し、ビット単位でデータストリームのＯＲ処理を実行する。パリティビットを除いて、すべてのビットがＯＲ処理される。ＮＲＴデータパケットの場合には、一つのポートだけがデータを受信し、および、他のポートはすべてが０であるヌルパケットを受信するので、ＯＲ処理によってデータが変更されない。複数のポートがＮＲＴデータパケットを受信すると、マージ（Ｍｅｒｇｅ）エラーフラグが立つので、中央コントローラが修正アクションを取ることが可能になる。４ビット遅延（以下参照）後に、各ビットは入力方向ポートに転送される。
【０１１５】
好ましくは、結合されたデータストリームは、完了フレームが記憶される前に、できるだけ早く転送される（したがって、フレームの終端にパリティストリームを伴う、環式冗長性チェックなどのパリティメカニズムは使用されない）。実施形態では、パリティビットストリングはフレームの終端で記憶されず、フレームに広がり、および、ＳＣによってフレームの終端が受信されると、結合されたフレームの大部分はＣＣに向かってすでに転送されている。これは分散型パリティメカニズムであるのでハミングコードパリティスキームが使用され、および、パリティビット（Ｐ）が受信されると、以下に示されるように、該ビットはそこまで受信されたフレームデータビット（ｄ）（だけ）をカバーする。
【表５】
0006005759.tif 000006
【０１１６】
各パリティビットは、それが到着するとすぐにチェックでき、および、完了フレームを待つ必要がない。これによって、それが該パリティスキームによってカバーされている間は、最後のデータビット（ビット３、エラーフラグ）を送信した時に、転送されるフレームが無効になる可能性がある。これを防ぐことを達成するために、各ビットは、４ビット遅延後に入力方向ポートに転送される（したがってフレームは４ビット遅延して転送される）。フレームの終端で、ＳＣは最後の３パリティビット（Ｐ２からＰ０）を受信し、および、それらをチェックする。次に、パケットが破損した（一つまたは二つのビットエラー）場合には、ＳＣはエラーフラグを設定し、および、フレームの最後の４ビットを転送する前に、Ｐ２〜Ｐ０に対する新しい値を演算する。
【０１１７】
このプロトコルによって、出力方向（ＳＣから）および入力方向（ＳＣへの）データフローに対して、異なるエラー検査／訂正能力が付与される。実施形態では、出力方向データフローに対して、各ＳＤまたはＳＣローカルノードは単一のビットエラー訂正ができ、および、二重ビットエラーを検出できる。入力方向データフローに対して、単一または二重ビットエラーを各ＳＣが検知できるが、訂正は不可能である。従って実施形態では、ＣＣと、ＣＣに直接接続されるＳＣとの間でフレームが破損する場合には、（別のＳＣを介して接続されるものとは対照的に）単一のビットエラーは、ＣＣによってだけ訂正できる。
【０１１８】
決められたタイミングで、たとえばスイッチングアクション発生していないときに、スイッチングデバイスコントローラのコンフィギュレーションを更新できることが望ましい。しかしながらコンフィギュレーションデータはとても大きすぎてリアルタイムパケットで送信できない可能性があるので、実施形態では、各スイッチングデバイスコントローラ（ＳＤ）内の「シャドーコンフィギュレーション」を使用して、コンフィギュレーション情報は二つのステージプロセスで更新される。
【０１１９】
図６ａを参照すると、図１のデジタルロジック１４０の詳細が示される。既に述べたように、中央コントローラからリアルタイムメッセージによってスイッチステートが要求され（および、到達したときには同様にアクノレッジされ）るが、一方で、コンフィギュレーションおよびモニタリングデータは非リアルタイムメッセージで送受信される。従ってバス１２２に対するインターフェースは、リアルタイムロジック１５０と非リアルタイムロジック１５２を含む。実施形態では、コントローラは、マルチプレクサ１５６によって選択可能なコンフィギュレーションデータを記憶する、二つのレジスターバンク１５４ａ、１５４ｂを含む。レジスターバンクはデジタルロジックによってプログラムされ、デジタルロジックはレジスターバンクをアクティブに制御し、および、書き込みできる。アクティブなレジスターバンクは、スイッチングデバイスコントローラを構成するパラメータ情報を提供する。アクティブでないレジスターバンクは通信インターフェースを介して更新され、および、レジスターバンクをアクティブにするとこの新しいパラメータデータでシステムステートを制御する。これによってリアルタイムでコントローラコンフィギュレーションの更新ができ、および、多くのスイッチ／コントローラを備えるシステムの更新を同期させることができる。
【０１２０】
従って動作中、レジスターバンクの一つのは、シャドーコンフィギュレーションデータを記憶するように機能し、および他のレジスターバンクは、アクティブコンフィギュレーションデータを記憶するように機能する。コンフィギュレーションチェンジが望まれるノードに対するシャドーコンフィギュレーションは、ＮＲＴフレームを使用して更新される。しかしながら、シャドーコンフィギュレーションに対する変更は、デバイスのスイッチング動作には影響を及ぼさない。次にシャドーコンフィギュレーションはアクティブコンフィギュレーションレジスターバンクに、リアルタイムアクションコマンドを使用してコピーされる（どちらがシャドーレジスターバンクで、どちらがアクティブレジスターバンクかの指定はスイッチングされる）。データリンク層のエラービットによって、中央コントローラはこのアクションコマンドを受信していない１つまたは複数のデバイスを検出することができるので、コマンドを再送できる。一実施形態では、レジスターバンクは、４Ｋ３２−ビットワードのアドレス指定可能なメモリを含む。
【０１２１】
図６ｂは、中央コントローラからレジスターにデータを書き込むプロシージャ例を説明する（アドレスは各デバイスアドレスまたはデバイスグループアドレスであってもよい）。図から見られるように、ＮＲＴメッセージによって、デバイスアドレスおよびこのメッセージのペイロード、レジスターアドレスおよびレジスターコンテンツが提供され；および、さらにＮＲＴメッセージはステータスデータのアクノリッジメント（有効またはエラー）のために使用される。同様に図６ｃは、中央コントローラが各アドレス指定されたデバイスの１つまたは複数のレジスターのコンテンツを読み出す、読み出しリクエストを示す。ＮＲＴメッセージのペイロードは、レジスターアドレスを搬送し、および、レジスターコンテンツはさらなるＮＲＴメッセージのペイロードに展開されて供給される。戻ってくるデータは、たとえば、コンフィギュレーションデータおよび／または測定データであり得る。
【０１２２】
当業者であれば多くの他の有効な代替実施形態を思いつくであろう。理解されるであろう本発明は記載された実施形態に限定されず、および、本明細書に添付の特許請求の範囲の精神および範囲内で、当業者にとって明らかな変更形態を包含する。
【図１】
0006005759.tif 000007
【図２ａ】
0006005759.tif 000008
【図２ｂ】
0006005759.tif 000009
【図３ａ】
0006005759.tif 000010
【図３ｂ】
0006005759.tif 000011
【図３ｃ】
0006005759.tif 000012
【図４ａ】
0006005759.tif 000013
【図４ｂ】
0006005759.tif 000014
【図５ａ】
0006005759.tif 000015
【図５ｂ】
0006005759.tif 000016
【図５ｃ】
0006005759.tif 000017
【図６ａ】
0006005759.tif 000018
【図６ｂ】
0006005759.tif 000019
【図６ｃ】
0006005759.tif 000020