(57)【要約】      （修正有）【課題】低いＣＰＵ使用でリアルタイムに、光モジュールの高速な挿入及び削除処理が検知可能な、光モジュール可用性検出方法及び装置を提供する。【解決手段】検出装置は、Ｎ個のパスを利用することによってＮ個の光モジュールケージに同時に接続され、コンフリクトレジスタにアクセスし、コンフリクトレジスタの値に従ってＮ個のパスの占有状態を取得する。Ｎ個のパスにおいて、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対し同時プローブを実行し、プローブ結果を取得する。プローブ結果は、Ｍ個の光モジュールケージの光モジュールの可用性情報および光モジュールのタイプを有し、最後にプローブ結果を可用性レジスタに書き込み、システムソフトウェアは可用性レジスタからプローブ結果を取得する。【選択図】図１
2016146621.tif 000002
【特許請求の範囲】
【請求項１】
検出装置に適用される光モジュール可用性検出方法であって、前記検出装置はＮ個のパスを利用することによってＮ個の光モジュールケージに同時に接続され、当該方法は、
コンフリクトレジスタにアクセスし、前記コンフリクトレジスタの値に従って前記Ｎ個のパスの占有状態を取得するステップと、
プローブ結果を取得するため、前記Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行するステップであって、前記プローブ結果は前記Ｍ個の光モジュールケージの光モジュールの可用性情報及び前記光モジュールのタイプを有し、Ｍ及びＮは共に正の整数であり、ＭはＮ以下である、実行するステップと、
前記プローブ結果を可用性レジスタに書き込むステップであって、前記システムソフトウェアは前記レジスタから前記プローブ結果を取得する、書き込むステップと、
を有する方法。
【請求項２】
前記プローブ結果を取得するため、前記Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行するステップは、
前記Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行するステップを有し、
前記Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、前記第１の所定のアドレスの可用性状態が利用不可であるとプローブ処理によって判断された場合、何れの光モジュールも前記何れの光モジュールケージにおいて利用可能でないと判断され、
前記第１の所定のアドレスの可用性状態が利用可能であるとプローブ処理によって判断された場合、前記何れかの光モジュールケージの第２の所定のアドレスに対してプローブが実行され、
前記第２の所定のアドレスの可用性状態が利用不可であるとプローブ処理によって判断された場合、光モジュールが前記何れかの光モジュールケージにおいて利用可能であると判断され、前記第２の所定のアドレスの可用性状態が利用可能であるとプローブ処理によって判断された場合、コンパクト光モジュールが前記何れかの光モジュールケージにおいて利用可能であると判断される、請求項１記載の方法。
【請求項３】
前記プローブ結果を取得するため、前記Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行するステップは、
前記Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行し、前記Ｍ個の光モジュールケージの第２の所定のアドレスに対して同時プローブを実行するステップを有し、
前記Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、前記第１の所定のアドレスの可用性状態が利用不可であるとプローブ処理によって判断された場合、何れの光モジュールも前記何れの光モジュールケージにおいて利用可能でないと判断され、前記第１の所定のアドレスの可用性状態が利用可能であって、前記第２の所定のアドレスの可用性状態が利用不可であるとプローブ処理によって判断された場合、光モジュールが前記何れかの光モジュールケージにおいて利用可能であると判断され、前記第１の所定のアドレスの可用性状態が利用可能であって、前記第２の所定のアドレスの可用性状態が利用可能であるとプローブ処理によって判断された場合、コンパクト光モジュールが前記何れかの光モジュールケージにおいて利用可能であると判断される、請求項１記載の方法。
【請求項４】
前記Ｎ個のパスは、Ｎ個のインター・インテグレーティッド・サーキットＩ２Ｃパスであり、各Ｉ２Ｃパスは、シリアルクロックＳＣＬパス及びシリアルデータＳＤＡパスを有し、前記ＳＣＬパスはＳＣＬレベルレジスタによって制御され、前記ＳＤＡパスはＳＤＡレベルレジスタ及びＳＤＡ制御レジスタによって制御され、前記Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行するステップは、
ａ．所定のＩ２Ｃ時間シーケンスに従って、現在の処理及び前記現在の処理に対応するターゲットパスを決定し、前記現在の処理に従って、前記ターゲットパスに対応するレジスタに書き込まれる第１のレジスタ値を決定するステップと、
ｂ．前記ターゲットパスに対応する前記レジスタの現在の第２のレジスタ値を読み込むステップと、
ｃ．前記コンフリクトレジスタの値に対して否定演算が実行された後、第３のレジスタ値を取得するため、前記コンフリクトレジスタの否定された値と前記第１のレジスタ値とに対してＡＮＤ演算を実行し、第４のレジスタ値を取得するため、前記コンフリクトレジスタの値と前記第２のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｄ．第５のレジスタ値を取得するため、前記第３のレジスタ値と前記第４のレジスタ値とに対してＯＲ演算を実行し、前記第５のレジスタ値を前記ターゲットパスに対応するレジスタに書き込むステップであって、前記ターゲットパスは前記Ｍ個のパスのＳＣＬパス又は前記Ｍ個のパスのＳＤＡパスであり、前記ターゲットパスが前記Ｍ個のパスのＳＣＬパスである場合、前記ターゲットパスに対応するレジスタは前記ＳＣＬレベルレジスタであり、前記ターゲットパスが前記Ｍ個のパスのＳＤＡパスである場合、前記ターゲットパスに対応するレジスタは前記ＳＤＡレベルレジスタ又は前記ＳＤＡ制御レジスタである、書き込むステップと、
前記Ｍ個のパスのＳＤＡパスの状態が出力から入力にスイッチされるまで、前記所定のＩ２Ｃ時間シーケンスに従って、ステップａ、ステップｂ、ステップｃ及びステップｄを繰り返し実行するステップと、
ｅ．前記ＳＤＡレベルレジスタの第６のレジスタ値を読み込むステップと、
ｆ．前記第１の所定のアドレスに対応する可用性レジスタの第７のレジスタ値を読み込むステップと、
ｇ．前記コンフリクトレジスタの値に対して否定演算が実行された後、第８のレジスタ値を取得するため、前記コンフリクトレジスタの否定された値と前記第６のレジスタ値とに対してＡＮＤ演算を実行し、第９のレジスタ値を取得するため、前記コンフリクトレジスタの値と前記第７のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｈ．前記第１の所定のアドレスに対応する前記可用性レジスタに書き込まれる第１０のレジスタ値を取得するため、前記第８のレジスタ値と前記第９のレジスタ値とに対してＯＲ演算を実行するステップであって、前記第１０のレジスタ値は、前記Ｍ個の光モジュールケージの第１の所定のアドレスに対して前記プローブが実行された後に取得される前記プローブ結果を示すのに利用される、実行するステップと、
を有する、請求項２又は３記載の方法。
【請求項５】
前記Ｎ個のパスは、Ｎ個のインター・インテグレーティッド・サーキットＩ２Ｃパスであり、各Ｉ２Ｃパスは、シリアルクロックＳＣＬパス及びシリアルデータＳＤＡパスを有し、前記ＳＣＬパスはＳＣＬレベルレジスタによって制御され、前記ＳＤＡパスはＳＤＡレベルレジスタ及びＳＤＡ制御レジスタによって制御され、前記Ｍ個の光モジュールケージの第２の所定のアドレスに対して同時プローブを実行するステップは、
ａ．所定のＩ２Ｃ時間シーケンスに従って、現在の処理及び前記現在の処理に対応するターゲットパスを決定し、前記現在の処理に従って、前記ターゲットパスに対応するレジスタに書き込まれる第１のレジスタ値を決定するステップと、
ｂ．前記ターゲットパスに対応する前記レジスタの現在の第２のレジスタ値を読み込むステップと、
ｃ．前記コンフリクトレジスタの値に対して否定演算が実行された後、第３のレジスタ値を取得するため、前記コンフリクトレジスタの否定された値と前記第１のレジスタ値とに対してＡＮＤ演算を実行し、第４のレジスタ値を取得するため、前記コンフリクトレジスタの値と前記第２のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｄ．第５のレジスタ値を取得するため、前記第３のレジスタ値と前記第４のレジスタ値とに対してＯＲ演算を実行し、前記第５のレジスタ値を前記ターゲットパスに対応するレジスタに書き込むステップであって、前記ターゲットパスは前記Ｍ個のパスのＳＣＬパス又は前記Ｍ個のパスのＳＤＡパスであり、前記ターゲットパスが前記Ｍ個のパスのＳＣＬパスである場合、前記ターゲットパスに対応するレジスタは前記ＳＣＬレベルレジスタであり、前記ターゲットパスが前記Ｍ個のパスのＳＤＡパスである場合、前記ターゲットパスに対応するレジスタは前記ＳＤＡレベルレジスタ又は前記ＳＤＡ制御レジスタである、書き込むステップと、
前記Ｍ個のパスのＳＤＡパスの状態が出力から入力にスイッチされるまで、前記所定のＩ２Ｃ時間シーケンスに従って、ステップａ、ステップｂ、ステップｃ及びステップｄを繰り返し実行するステップと、
ｅ．前記ＳＤＡレベルレジスタの第６のレジスタ値を読み込むステップと、
ｆ．前記第２の所定のアドレスに対応する可用性レジスタの第７のレジスタ値を読み込むステップと、
ｇ．前記コンフリクトレジスタの値に対して否定演算が実行された後、第８のレジスタ値を取得するため、前記コンフリクトレジスタの否定された値と前記第６のレジスタ値とに対してＡＮＤ演算を実行し、第９のレジスタ値を取得するため、前記コンフリクトレジスタの値と前記第７のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｈ．前記第２の所定のアドレスに対応する前記可用性レジスタに書き込まれる第１０のレジスタ値を取得するため、前記第８のレジスタ値と前記第９のレジスタ値とに対してＯＲ演算を実行するステップであって、前記第１０のレジスタ値は、前記Ｍ個の光モジュールケージの第２の所定のアドレスに対して前記プローブが実行された後に取得される前記プローブ結果を示すのに利用される、実行するステップと、
を有する、請求項３記載の方法。
【請求項６】
前記所定のＩ２Ｃ時間シーケンスは、スタート時間シーケンス、アドレスプローブ時間シーケンス及びリード／ライト時間シーケンス、アクノリッジメント時間シーケンス並びにストップ時間シーケンスを順次有し、
前記スタート時間シーケンスにおける処理は、前記ＳＤＡパスのレベルを高レベルに設定すること、前記ＳＣＬパスのレベルを高レベルに設定すること、前記ＳＤＡパスのレベルを低レベルに設定すること、及び前記ＳＣＬパスのレベルを低レベルに設定することを順次有し、
前記アドレスプローブ時間シーケンス及び前記リード／ライト時間シーケンスにおける処理は、前記ＳＤＡパスのレベルを高レベルに設定すること、ステップｉ、ステップｊ及びステップｋをＩ回繰り返し実行すること、及び前記ＳＣＬパスのレベルを低レベルに設定することを順次有し、Ｉは所定値であり、ステップｉ、ステップｊ及びステップｋは、
ステップｉ：前記ＳＣＬパスのレベルを低レベルに設定し、
ステップｊ：前記第１の所定のアドレス又は前記第２の所定のアドレスに従って前記ＳＤＡパスのレベルを設定し、
ステップｋ：前記ＳＣＬパスのレベルを高レベルに設定する、
ことであり、
前記アクノリッジメント時間シーケンスにおける処理は、前記ＳＣＬパスのレベルを高レベルに設定すること、前記ＳＤＡパスを入力状態にスイッチすること、前記第１の所定のアドレス又は前記第２の所定のアドレスに対応する前記可用性レジスタを設定すること、前記ＳＣＬパスのレベルを低レベルに設定すること、及び前記ＳＤＡパスを出力状態にスイッチすることを順次有し、
前記ストップ時間シーケンスにおける処理は、前記ＳＤＡパスのレベルを低レベルに設定すること、前記ＳＣＬパスのレベルを高レベルに設定すること、及び前記ＳＤＡパスのレベルを高レベルに設定することを順次有する、請求項４又は５記載の方法。
【請求項７】
検出装置であって、当該検出装置はＮ個のパスを利用することによってＮ個の光モジュールケージに同時に接続され、当該装置は、
コンフリクトレジスタにアクセスし、前記コンフリクトレジスタの値に従って前記Ｎ個のパスの占有状態を取得するよう構成される読み込みモジュールと、
プローブ結果を取得するため、前記Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行するよう構成される処理モジュールであって、前記プローブ結果は前記Ｍ個の光モジュールケージの光モジュールの可用性情報及び前記光モジュールのタイプを有し、Ｍ及びＮは共に正の整数であり、ＭはＮ以下である、処理モジュールと、
前記プローブ結果を可用性レジスタに書き込むよう構成される書き込みモジュールであって、前記システムソフトウェアは前記レジスタから前記プローブ結果を取得する、書き込みモジュールと、
を有する検出装置。
【請求項８】
前記処理モジュールは、具体的には、
前記Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行するよう構成され、
前記Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、何れの光モジュールも前記第１の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、何れの光モジュールも前記第１の光モジュールケージにおいて利用可能でないと判断され、
光モジュールが前記第１の所定のアドレスにおいて利用可能であるとプローブ処理によって判断された場合、前記何れかの光モジュールケージの第２の所定のアドレスに対してプローブが実行され、
何れの光モジュールも前記第２の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、光モジュールが前記何れかの光モジュールケージにおいて利用可能であると判断され、光モジュールが前記第２の所定のアドレスにおいて利用可能であるとプローブ処理によって判断された場合、コンパクト光モジュールが前記第１の光モジュールケージにおいて利用可能であると判断される、請求項７記載の検出装置。
【請求項９】
前記処理モジュールは、具体的には、
前記Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行し、前記Ｍ個の光モジュールケージの第２の所定のアドレスに対して同時プローブを実行するよう構成され、
前記Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、何れの光モジュールも前記第１の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、何れの光モジュールも前記何れの光モジュールケージにおいて利用可能でないと判断され、光モジュールが前記第１の所定のアドレスにおいて利用可能であり、何れの光モジュールも前記第２の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、光モジュールは前記何れかの光モジュールにおいて利用可能であると判断され、光モジュールが前記第１の所定のアドレスにおいて利用可能であり、光モジュールが前記第２の所定のアドレスにおいて利用可能であるとプローブ処理によって判断された場合、コンパクト光モジュールが前記何れかの光モジュールにおいて利用可能であると判断される、請求項７記載の検出装置。
【請求項１０】
前記Ｎ個のパスは、Ｎ個のインター・インテグレーティッド・サーキットＩ２Ｃパスであり、各Ｉ２Ｃパスは、シリアルクロックＳＣＬパス及びシリアルデータＳＤＡパスを有し、前記ＳＣＬパスはＳＣＬレベルレジスタによって制御され、前記ＳＤＡパスはＳＤＡレベルレジスタ及びＳＤＡ制御レジスタによって制御され、前記処理モジュールは、具体的には、
ａ．所定のＩ２Ｃ時間シーケンスに従って、現在の処理及び前記現在の処理に対応するターゲットパスを決定し、前記現在の処理に従って、前記ターゲットパスに対応するレジスタに書き込まれる第１のレジスタ値を決定するステップと、
ｂ．前記ターゲットパスに対応する前記レジスタの現在の第２のレジスタ値を読み込むステップと、
ｃ．前記コンフリクトレジスタの値に対して否定演算が実行された後、第３のレジスタ値を取得するため、前記コンフリクトレジスタの否定された値と前記第１のレジスタ値とに対してＡＮＤ演算を実行し、第４のレジスタ値を取得するため、前記コンフリクトレジスタの値と前記第２のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｄ．第５のレジスタ値を取得するため、前記第３のレジスタ値と前記第４のレジスタ値とに対してＯＲ演算を実行し、前記第５のレジスタ値を前記ターゲットパスに対応するレジスタに書き込むステップであって、前記ターゲットパスは前記Ｍ個のパスのＳＣＬパス又は前記Ｍ個のパスのＳＤＡパスであり、前記ターゲットパスが前記Ｍ個のパスのＳＣＬパスである場合、前記ターゲットパスに対応するレジスタは前記ＳＣＬレベルレジスタであり、前記ターゲットパスが前記Ｍ個のパスのＳＤＡパスである場合、前記ターゲットパスに対応するレジスタは前記ＳＤＡレベルレジスタ又は前記ＳＤＡ制御レジスタである、書き込むステップと、
前記Ｍ個のパスのＳＤＡパスの状態が出力から入力にスイッチされるまで、前記所定のＩ２Ｃ時間シーケンスに従って、ステップａ、ステップｂ、ステップｃ及びステップｄを繰り返し実行するステップと、
ｆ．前記第１の所定のアドレスに対応する可用性レジスタの第７のレジスタ値を読み込むステップと、
ｇ．前記コンフリクトレジスタの値に対して否定演算が実行された後、第８のレジスタ値を取得するため、前記コンフリクトレジスタの否定された値と前記第６のレジスタ値とに対してＡＮＤ演算を実行し、第９のレジスタ値を取得するため、前記コンフリクトレジスタの値と前記第７のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｈ．前記第１の所定のアドレスに対応する前記可用性レジスタに書き込まれる第１０のレジスタ値を取得するため、前記第８のレジスタ値と前記第９のレジスタ値とに対してＯＲ演算を実行するステップであって、前記第１０のレジスタ値は、前記Ｍ個の光モジュールケージの第１の所定のアドレスに対して前記プローブが実行された後に取得される前記プローブ結果を示すのに利用される、実行するステップと、
を実行するよう構成される、請求項８又は９記載の検出装置。
【請求項１１】
前記Ｎ個のパスは、Ｎ個のインター・インテグレーティッド・サーキットＩ２Ｃパスであり、各Ｉ２Ｃパスは、シリアルクロックＳＣＬパス及びシリアルデータＳＤＡパスを有し、前記ＳＣＬパスはＳＣＬレベルレジスタによって制御され、前記ＳＤＡパスはＳＤＡレベルレジスタ及びＳＤＡ制御レジスタによって制御され、前記処理モジュールは、具体的には、
ａ．所定のＩ２Ｃ時間シーケンスに従って、現在の処理及び前記現在の処理に対応するターゲットパスを決定し、前記現在の処理に従って、前記ターゲットパスに対応するレジスタに書き込まれる第１のレジスタ値を決定するステップと、
ｂ．前記ターゲットパスに対応する前記レジスタの現在の第２のレジスタ値を読み込むステップと、
ｃ．前記コンフリクトレジスタの値に対して否定演算が実行された後、第３のレジスタ値を取得するため、前記コンフリクトレジスタの否定された値と前記第１のレジスタ値とに対してＡＮＤ演算を実行し、第４のレジスタ値を取得するため、前記コンフリクトレジスタの値と前記第２のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｄ．第５のレジスタ値を取得するため、前記第３のレジスタ値と前記第４のレジスタ値とに対してＯＲ演算を実行し、前記第５のレジスタ値を前記ターゲットパスに対応するレジスタに書き込むステップであって、前記ターゲットパスは前記Ｍ個のパスのＳＣＬパス又は前記Ｍ個のパスのＳＤＡパスであり、前記ターゲットパスが前記Ｍ個のパスのＳＣＬパスである場合、前記ターゲットパスに対応するレジスタは前記ＳＣＬレベルレジスタであり、前記ターゲットパスが前記Ｍ個のパスのＳＤＡパスである場合、前記ターゲットパスに対応するレジスタは前記ＳＤＡレベルレジスタ又は前記ＳＤＡ制御レジスタである、書き込むステップと、
前記Ｍ個のパスのＳＤＡパスの状態が出力から入力にスイッチされるまで、前記所定のＩ２Ｃ時間シーケンスに従って、ステップａ、ステップｂ、ステップｃ及びステップｄを繰り返し実行するステップと、
ｅ．前記ＳＤＡレベルレジスタの第６のレジスタ値を読み込むステップと、
ｆ．前記第２の所定のアドレスに対応する可用性レジスタの第７のレジスタ値を読み込むステップと、
ｇ．前記コンフリクトレジスタの値に対して否定演算が実行された後、第８のレジスタ値を取得するため、前記コンフリクトレジスタの否定された値と前記第６のレジスタ値とに対してＡＮＤ演算を実行し、第９のレジスタ値を取得するため、前記コンフリクトレジスタの値と前記第７のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｈ．前記第２の所定のアドレスに対応する前記可用性レジスタに書き込まれる第１０のレジスタ値を取得するため、前記第８のレジスタ値と前記第９のレジスタ値とに対してＯＲ演算を実行するステップであって、前記第１０のレジスタ値は、前記Ｍ個の光モジュールケージの第２の所定のアドレスに対して前記プローブが実行された後に取得される前記プローブ結果を示すのに利用される、実行するステップと、
を実行するよう構成される、請求項９記載の検出装置。
【請求項１２】
前記所定のＩ２Ｃ時間シーケンスは、スタート時間シーケンス、アドレスプローブ時間シーケンス及びリード／ライト時間シーケンス、アクノリッジメント時間シーケンス並びにストップ時間シーケンスを順次有し、
前記スタート時間シーケンスにおける処理は、前記ＳＤＡパスのレベルを高レベルに設定すること、前記ＳＣＬパスのレベルを高レベルに設定すること、前記ＳＤＡパスのレベルを低レベルに設定すること、及び前記ＳＣＬパスのレベルを低レベルに設定することを順次有し、
前記アドレスプローブ時間シーケンス及び前記リード／ライト時間シーケンスにおける処理は、前記ＳＤＡパスのレベルを高レベルに設定すること、ステップｉ、ステップｊ及びステップｋをＩ回繰り返し実行すること、及び前記ＳＣＬパスのレベルを低レベルに設定することを順次有し、Ｉは所定値であり、ステップｉ、ステップｊ及びステップｋは、
ステップｉ：前記ＳＣＬパスのレベルを低レベルに設定し、
ステップｊ：前記第１の所定のアドレス又は前記第２の所定のアドレスに従って前記ＳＤＡパスのレベルを設定し、
ステップｋ：前記ＳＣＬパスのレベルを高レベルに設定する、
ことであり、
前記アクノリッジメント時間シーケンスにおける処理は、前記ＳＣＬパスのレベルを高レベルに設定すること、前記ＳＤＡパスを入力状態にスイッチすること、前記第１の所定のアドレス又は前記第２の所定のアドレスに対応する前記可用性レジスタを設定すること、前記ＳＣＬパスのレベルを低レベルに設定すること、及び前記ＳＤＡパスを出力状態にスイッチすることを順次有し、
前記ストップ時間シーケンスにおける処理は、前記ＳＤＡパスのレベルを低レベルに設定すること、前記ＳＣＬパスのレベルを高レベルに設定すること、及び前記ＳＤＡパスのレベルを高レベルに設定することを順次有する、請求項１０又は１１記載の検出装置。
【請求項１３】
ネットワーク装置であって、中央処理ユニットＣＰＵ、複数の光モジュールケージ及び請求項７乃至１２何れか一項記載の検出装置を有し、前記検出装置は、Ｉ２Ｃパスを利用することによって前記ＣＰＵに接続され、１つのＩ２Ｃパスを利用することによって前記複数の光モジュールケージの各光モジュールケージに接続され、
前記検出装置は、前記複数の光モジュールケージに対して同時プローブを実行するよう構成されるネットワーク装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施例は、通信技術の分野に関し、特に光モジュール可用性検出方法及び装置に関する。
【背景技術】
【０００２】
光モジュールとも呼ばれるスモール・フォーム・ファクタ・プラガブル（英語：ｓｍａｌｌ  ｆｏｒｍ−ｆａｃｔｏｒ  ｐｌｕｇｇａｂｌｅ，略してＳＦＰ）送受信機（英語：ｔｒａｎｓｃｅｉｖｅｒ）は、電気通信及びデータ通信における光通信用途に利用され、通常は標準的なＳＦＰケージ（ｃａｇｅ）にパッケージ化されるスモール・フォーム・ファクタ・プラガブル光送受信機である。コンパクトＳＦＰ（英語：Ｃｏｍｐａｃｔ  ＳＦＰ，略してＣＳＦＰ）は、２つのシングル・ファイバ双方向光送受信機が標準的なＳＦＰケージにパッケージ化される光モジュールである。ＣＳＦＰが利用されるデバイスは、光モジュールケージの数が同一に留まる２倍の数のポートを有することが可能であり、高密度及び低コストのための要求を充足できる。
【０００３】
シングル・ファイバ双方向光送受信機はＣＳＦＰに利用されるが、ＣＳＦＰがパッケージ化される光モジュールケージが、光モジュールをサポートする通信デバイスのソケットに接続されるとき、２つのペアの送受信ラインが依然として必要とされる。従って、ＣＳＦＰにおける第２の送受信機の送信信号は、光モジュールケージの可用性信号のピンを占有する必要があり、この場合、光モジュールが利用可能であるか否かは、可用性信号のレベルを利用することによって決定することはできない。
【０００４】
システムソフトウェアを利用してＩ２Ｃポーリングを実行する方式は、通常は光モジュールがＳＦＰケージにおいて利用可能であるか判断するのに利用され、すなわち、システムソフトウェアは、各光モジュールケージに対応するインター・インテグレーティッド・サーキット（英語：Ｉｎｔｅｒ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ，略してＩ２Ｃ又はＩ２Ｃ）パスにリクエスト信号を送信し、それから、レスポンスがＩ２Ｃパスから受信されるか否かに従って、光モジュールが利用可能であるか判断する。しかしながら、システムソフトウェアにより実行されるＩ２Ｃポーリングは大量のＣＰＵリソースを占有し、ＣＰＵ使用の増加をもたらす。さらに、Ｉ２Ｃポーリングがシステムソフトウェアを利用することによって実行されるとき、ポーリング期間がある。比較的多数の光モジュールケージがある場合、ポーリング時間は長く、光モジュールがＳＦＰケージにおいて利用可能であるか否かは、リアルタイムにモニタリングすることはできない。さらに、Ｉ２Ｃポーリング時間は長いため、光モジュールに対する高速の挿入及び削除処理は、Ｉ２Ｃポーリングがシステムソフトウェアを利用することによって実行されるとき感知されないかもしれない。
【発明の概要】
【０００５】
本発明の実施例は、ＣＰＵ使用が増加しないケースにおいて、光モジュールが光モジュールケージにおいて利用可能であるか否かがリアルタイムに監視できず、光モジュールの高速の挿入及び削除が検知できないという従来技術における以下の問題が解決可能になるように、光モジュール可用性検出方法及び装置を提供する。
【０００６】
第１の態様は、検出装置に適用される光モジュール可用性検出方法であって、検出装置はＮ個のパスを利用することによってＮ個の光モジュールケージに同時に接続され、当該方法は、
コンフリクトレジスタにアクセスし、コンフリクトレジスタの値に従ってＮ個のパスの占有状態を取得するステップと、
プローブ結果を取得するため、Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行するステップであって、プローブ結果はＭ個の光モジュールケージの光モジュールの可用性情報及び光モジュールのタイプを有し、Ｍ及びＮは共に正の整数であり、ＭはＮ以下である、実行するステップと、
プローブ結果を可用性レジスタに書き込むステップであって、システムソフトウェアはレジスタからプローブ結果を取得する、書き込むステップと、
を有する方法を提供する。
【０００７】
第１の態様を参照して、第１の可能な実現方式では、プローブ結果を取得するため、Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行するステップは、
Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行するステップを有し、
Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、何れの光モジュールも第１の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、何れの光モジュールも第１の光モジュールケージにおいて利用可能でないと判断され、
光モジュールが第１の所定のアドレスにおいて利用可能であるとプローブ処理によって判断された場合、何れかの光モジュールケージの第２の所定のアドレスに対してプローブが実行され、
何れの光モジュールも第２の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、光モジュールが何れかの光モジュールケージにおいて利用可能であると判断され、光モジュールが第２の所定のアドレスにおいて利用可能であるとプローブ処理によって判断された場合、コンパクト光モジュールが第１の光モジュールケージにおいて利用可能であると判断される。
【０００８】
第１の態様を参照して、第２の可能な実現方式では、プローブ結果を取得するため、Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行するステップは、
Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行し、Ｍ個の光モジュールケージの第２の所定のアドレスに対して同時プローブを実行するステップを有し、Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、何れの光モジュールも第１の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、何れの光モジュールも何れの光モジュールケージにおいて利用可能でないと判断され、光モジュールが第１の所定のアドレスにおいて利用可能であって、何れの光モジュールも第２の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、光モジュールが何れかの光モジュールケージにおいて利用可能であると判断され、光モジュールが第１の所定のアドレスにおいて利用可能であって、光モジュールが第２の所定のアドレスにおいて利用可能であるとプローブ処理によって判断された場合、コンパクト光モジュールが何れかの光モジュールケージにおいて利用可能であると判断される。
【０００９】
第１の態様の第１又は第２の可能な実現方式を参照して、第３の可能な実現方式では、Ｎ個のパスは、Ｎ個のインター・インテグレーティッド・サーキットＩ２Ｃパスであり、各Ｉ２Ｃパスは、シリアルクロックＳＣＬパス及びシリアルデータＳＤＡパスを有し、ＳＣＬパスはＳＣＬレベルレジスタによって制御され、ＳＤＡパスはＳＤＡレベルレジスタ及びＳＤＡ制御レジスタによって制御され、Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行するステップは、
ａ．所定のＩ２Ｃ時間シーケンスに従って、現在の処理及び現在の処理に対応するターゲットパスを決定し、現在の処理に従って、ターゲットパスに対応するレジスタに書き込まれる第１のレジスタ値を決定するステップと、
ｂ．ターゲットパスに対応するレジスタの現在の第２のレジスタ値を読み込むステップと、
ｃ．コンフリクトレジスタの値に対して否定演算が実行された後、第３のレジスタ値を取得するため、コンフリクトレジスタの否定された値と第１のレジスタ値とに対してＡＮＤ演算を実行し、第４のレジスタ値を取得するため、コンフリクトレジスタの値と第２のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｄ．第５のレジスタ値を取得するため、第３のレジスタ値と第４のレジスタ値とに対してＯＲ演算を実行し、第５のレジスタ値をターゲットパスに対応するレジスタに書き込むステップであって、ターゲットパスはＭ個のパスのＳＣＬパス又はＭ個のパスのＳＤＡパスであり、ターゲットパスがＭ個のパスのＳＣＬパスである場合、ターゲットパスに対応するレジスタはＳＣＬレベルレジスタであり、ターゲットパスがＭ個のパスのＳＤＡパスである場合、ターゲットパスに対応するレジスタはＳＤＡレベルレジスタ又はＳＤＡ制御レジスタである、書き込むステップと、
Ｍ個のパスのＳＤＡパスの状態が出力から入力にスイッチされるまで、所定のＩ２Ｃ時間シーケンスに従って、ステップａ、ステップｂ、ステップｃ及びステップｄを繰り返し実行するステップと、
ｅ．ＳＤＡレベルレジスタの第６のレジスタ値を読み込むステップと、
ｆ．第１の所定のアドレスに対応する可用性レジスタの第７のレジスタ値を読み込むステップと、
ｇ．コンフリクトレジスタの値に対して否定演算が実行された後、第８のレジスタ値を取得するため、コンフリクトレジスタの否定された値と第６のレジスタ値とに対してＡＮＤ演算を実行し、第９のレジスタ値を取得するため、コンフリクトレジスタの値と第７のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｈ．第１の所定のアドレスに対応する可用性レジスタに書き込まれる第１０のレジスタ値を取得するため、第８のレジスタ値と第９のレジスタ値とに対してＯＲ演算を実行するステップであって、第１０のレジスタ値は、Ｍ個の光モジュールケージの第１の所定のアドレスに対してプローブが実行された後に取得されるプローブ結果を示すのに利用される、実行するステップと、
を有する。
【００１０】
第１の態様の第２の可能な実現方式を参照して、第４の可能な実現方式では、Ｎ個のパスは、Ｎ個のインター・インテグレーティッド・サーキットＩ２Ｃパスであり、各Ｉ２Ｃパスは、シリアルクロックＳＣＬパス及びシリアルデータＳＤＡパスを有し、ＳＣＬパスはＳＣＬレベルレジスタによって制御され、ＳＤＡパスはＳＤＡレベルレジスタ及びＳＤＡ制御レジスタによって制御され、Ｍ個の光モジュールケージの第２の所定のアドレスに対して同時プローブを実行するステップは、
ａ．所定のＩ２Ｃ時間シーケンスに従って、現在の処理及び現在の処理に対応するターゲットパスを決定し、現在の処理に従って、ターゲットパスに対応するレジスタに書き込まれる第１のレジスタ値を決定するステップと、
ｂ．ターゲットパスに対応するレジスタの現在の第２のレジスタ値を読み込むステップと、
ｃ．コンフリクトレジスタの値に対して否定演算が実行された後、第３のレジスタ値を取得するため、コンフリクトレジスタの否定された値と第１のレジスタ値とに対してＡＮＤ演算を実行し、第４のレジスタ値を取得するため、コンフリクトレジスタの値と第２のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｄ．第５のレジスタ値を取得するため、第３のレジスタ値と第４のレジスタ値とに対してＯＲ演算を実行し、第５のレジスタ値をターゲットパスに対応するレジスタに書き込むステップであって、ターゲットパスはＭ個のパスのＳＣＬパス又はＭ個のパスのＳＤＡパスであり、ターゲットパスがＭ個のパスのＳＣＬパスである場合、ターゲットパスに対応するレジスタはＳＣＬレベルレジスタであり、ターゲットパスがＭ個のパスのＳＤＡパスである場合、ターゲットパスに対応するレジスタはＳＤＡレベルレジスタ又はＳＤＡ制御レジスタである、書き込むステップと、
Ｍ個のパスのＳＤＡパスの状態が出力から入力にスイッチされるまで、所定のＩ２Ｃ時間シーケンスに従って、ステップａ、ステップｂ、ステップｃ及びステップｄを繰り返し実行するステップと、
ｅ．ＳＤＡレベルレジスタの第６のレジスタ値を読み込むステップと、
ｆ．第２の所定のアドレスに対応する可用性レジスタの第７のレジスタ値を読み込むステップと、
ｇ．コンフリクトレジスタの値に対して否定演算が実行された後、第８のレジスタ値を取得するため、コンフリクトレジスタの否定された値と第６のレジスタ値とに対してＡＮＤ演算を実行し、第９のレジスタ値を取得するため、コンフリクトレジスタの値と第７のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｈ．第２の所定のアドレスに対応する可用性レジスタに書き込まれる第１０のレジスタ値を取得するため、第８のレジスタ値と第９のレジスタ値とに対してＯＲ演算を実行するステップであって、第１０のレジスタ値は、Ｍ個の光モジュールケージの第２の所定のアドレスに対してプローブが実行された後に取得されるプローブ結果を示すのに利用される、実行するステップと、
を有する。
【００１１】
第１の態様の第３又は第４の可能な実現方式を参照して、第５の可能な実現方式では、所定のＩ２Ｃ時間シーケンスは、スタート時間シーケンス、アドレスプローブ時間シーケンス及びリード／ライト時間シーケンス、アクノリッジメント時間シーケンス並びにストップ時間シーケンスを順次有し、
スタート時間シーケンスにおける処理は、ＳＤＡパスのレベルを高レベルに設定すること、ＳＣＬパスのレベルを高レベルに設定すること、ＳＤＡパスのレベルを低レベルに設定すること、及びＳＣＬパスのレベルを低レベルに設定することを順次有し、
アドレスプローブ時間シーケンス及びリード／ライト時間シーケンスにおける処理は、ＳＤＡパスのレベルを高レベルに設定すること、ステップｉ、ステップｊ及びステップｋをＩ回繰り返し実行すること、及びＳＣＬパスのレベルを低レベルに設定することを順次有し、Ｉは所定値であり、ステップｉ、ステップｊ及びステップｋは、
ステップｉ：ＳＣＬパスのレベルを低レベルに設定し、
ステップｊ：第１の所定のアドレス又は第２の所定のアドレスに従ってＳＤＡパスのレベルを設定し、
ステップｋ：ＳＣＬパスのレベルを高レベルに設定する、
ことであり、
アクノリッジメント時間シーケンスにおける処理は、ＳＣＬパスのレベルを高レベルに設定すること、ＳＤＡパスを入力状態にスイッチすること、第１の所定のアドレス又は第２の所定のアドレスに対応する可用性レジスタを設定すること、ＳＣＬパスのレベルを低レベルに設定すること、及びＳＤＡパスを出力状態にスイッチすることを順次有し、
ストップ時間シーケンスにおける処理は、ＳＤＡパスのレベルを低レベルに設定すること、ＳＣＬパスのレベルを高レベルに設定すること、及びＳＤＡパスのレベルを高レベルに設定することを順次有する。
【００１２】
第２の態様は、検出装置であって、当該検出装置はＮ個のパスを利用することによってＮ個の光モジュールケージに同時に接続され、当該装置は、
コンフリクトレジスタにアクセスし、コンフリクトレジスタの値に従ってＮ個のパスの占有状態を取得するよう構成される読み込みモジュールと、
プローブ結果を取得するため、Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行するよう構成される処理モジュールであって、プローブ結果はＭ個の光モジュールケージの光モジュールの可用性情報及び光モジュールのタイプを有し、Ｍ及びＮは共に正の整数であり、ＭはＮ以下である、処理モジュールと、
プローブ結果を可用性レジスタに書き込むよう構成される書き込みモジュールであって、システムソフトウェアはレジスタからプローブ結果を取得する、書き込みモジュールと、を有する検出装置を提供する。
【００１３】
第２の態様を参照して、第１の可能な実現方式では、処理モジュールは、具体的には、
Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行するよう構成され、
Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、何れの光モジュールも第１の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、何れの光モジュールも第１の光モジュールケージにおいて利用可能でないと判断され、
光モジュールが第１の所定のアドレスにおいて利用可能であるとプローブ処理によって判断された場合、何れかの光モジュールケージの第２の所定のアドレスに対してプローブが実行され、
何れの光モジュールも第２の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、光モジュールが何れかの光モジュールケージにおいて利用可能であると判断され、光モジュールが第２の所定のアドレスにおいて利用可能であるとプローブ処理によって判断された場合、コンパクト光モジュールが第１の光モジュールケージにおいて利用可能であると判断される。
【００１４】
第２の態様を参照して、第２の可能な実現方式では、処理モジュールは、具体的には、
Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行し、Ｍ個の光モジュールケージの第２の所定のアドレスに対して同時プローブを実行するよう構成され、
Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、何れの光モジュールも第１の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、何れの光モジュールも何れの光モジュールケージにおいて利用可能でないと判断され、光モジュールが第１の所定のアドレスにおいて利用可能であり、何れの光モジュールも第２の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、光モジュールは何れかの光モジュールにおいて利用可能であると判断され、光モジュールが第１の所定のアドレスにおいて利用可能であり、光モジュールが第２の所定のアドレスにおいて利用可能であるとプローブ処理によって判断された場合、コンパクト光モジュールが何れかの光モジュールにおいて利用可能であると判断される。
【００１５】
第２の態様の第１又は第２の可能な実現方式を参照して、第３の可能な実現方式では、Ｎ個のパスは、Ｎ個のインター・インテグレーティッド・サーキットＩ２Ｃパスであり、各Ｉ２Ｃパスは、シリアルクロックＳＣＬパス及びシリアルデータＳＤＡパスを有し、ＳＣＬパスはＳＣＬレベルレジスタによって制御され、ＳＤＡパスはＳＤＡレベルレジスタ及びＳＤＡ制御レジスタによって制御され、処理モジュールは、具体的には、
ａ．所定のＩ２Ｃ時間シーケンスに従って、現在の処理及び現在の処理に対応するターゲットパスを決定し、現在の処理に従って、ターゲットパスに対応するレジスタに書き込まれる第１のレジスタ値を決定するステップと、
ｂ．ターゲットパスに対応するレジスタの現在の第２のレジスタ値を読み込むステップと、
ｃ．コンフリクトレジスタの値に対して否定演算が実行された後、第３のレジスタ値を取得するため、コンフリクトレジスタの否定された値と第１のレジスタ値とに対してＡＮＤ演算を実行し、第４のレジスタ値を取得するため、コンフリクトレジスタの値と第２のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｄ．第５のレジスタ値を取得するため、第３のレジスタ値と第４のレジスタ値とに対してＯＲ演算を実行し、第５のレジスタ値をターゲットパスに対応するレジスタに書き込むステップであって、ターゲットパスはＭ個のパスのＳＣＬパス又はＭ個のパスのＳＤＡパスであり、ターゲットパスがＭ個のパスのＳＣＬパスである場合、ターゲットパスに対応するレジスタはＳＣＬレベルレジスタであり、ターゲットパスがＭ個のパスのＳＤＡパスである場合、ターゲットパスに対応するレジスタはＳＤＡレベルレジスタ又はＳＤＡ制御レジスタである、書き込むステップと、
Ｍ個のパスのＳＤＡパスの状態が出力から入力にスイッチされるまで、所定のＩ２Ｃ時間シーケンスに従って、ステップａ、ステップｂ、ステップｃ及びステップｄを繰り返し実行するステップと、
ｅ．ＳＤＡレベルレジスタの第６のレジスタ値を読み込むステップと、
ｆ．第１の所定のアドレスに対応する可用性レジスタの第７のレジスタ値を読み込むステップと、
ｇ．コンフリクトレジスタの値に対して否定演算が実行された後、第８のレジスタ値を取得するため、コンフリクトレジスタの否定された値と第６のレジスタ値とに対してＡＮＤ演算を実行し、第９のレジスタ値を取得するため、コンフリクトレジスタの値と第７のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｈ．第１の所定のアドレスに対応する可用性レジスタに書き込まれる第１０のレジスタ値を取得するため、第８のレジスタ値と第９のレジスタ値とに対してＯＲ演算を実行するステップであって、第１０のレジスタ値は、Ｍ個の光モジュールケージの第１の所定のアドレスに対してプローブが実行された後に取得されるプローブ結果を示すのに利用される、実行するステップと、
を実行するよう構成される。
【００１６】
第２の態様の第２の可能な実現方式を参照して、第４の可能な実現方式では、Ｎ個のパスは、Ｎ個のインター・インテグレーティッド・サーキットＩ２Ｃパスであり、各Ｉ２Ｃパスは、シリアルクロックＳＣＬパス及びシリアルデータＳＤＡパスを有し、ＳＣＬパスはＳＣＬレベルレジスタによって制御され、ＳＤＡパスはＳＤＡレベルレジスタ及びＳＤＡ制御レジスタによって制御され、処理モジュールは、具体的には、
ａ．所定のＩ２Ｃ時間シーケンスに従って、現在の処理及び現在の処理に対応するターゲットパスを決定し、現在の処理に従って、ターゲットパスに対応するレジスタに書き込まれる第１のレジスタ値を決定するステップと、
ｂ．ターゲットパスに対応するレジスタの現在の第２のレジスタ値を読み込むステップと、
ｃ．コンフリクトレジスタの値に対して否定演算が実行された後、第３のレジスタ値を取得するため、コンフリクトレジスタの否定された値と第１のレジスタ値とに対してＡＮＤ演算を実行し、第４のレジスタ値を取得するため、コンフリクトレジスタの値と第２のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｄ．第５のレジスタ値を取得するため、第３のレジスタ値と第４のレジスタ値とに対してＯＲ演算を実行し、第５のレジスタ値をターゲットパスに対応するレジスタに書き込むステップであって、ターゲットパスはＭ個のパスのＳＣＬパス又はＭ個のパスのＳＤＡパスであり、ターゲットパスがＭ個のパスのＳＣＬパスである場合、ターゲットパスに対応するレジスタはＳＣＬレベルレジスタであり、ターゲットパスがＭ個のパスのＳＤＡパスである場合、ターゲットパスに対応するレジスタはＳＤＡレベルレジスタ又はＳＤＡ制御レジスタである、書き込むステップと、
Ｍ個のパスのＳＤＡパスの状態が出力から入力にスイッチされるまで、所定のＩ２Ｃ時間シーケンスに従って、ステップａ、ステップｂ、ステップｃ及びステップｄを繰り返し実行するステップと、
ｅ．ＳＤＡレベルレジスタの第６のレジスタ値を読み込むステップと、
ｆ．第２の所定のアドレスに対応する可用性レジスタの第７のレジスタ値を読み込むステップと、
ｇ．コンフリクトレジスタの値に対して否定演算が実行された後、第８のレジスタ値を取得するため、コンフリクトレジスタの否定された値と第６のレジスタ値とに対してＡＮＤ演算を実行し、第９のレジスタ値を取得するため、コンフリクトレジスタの値と第７のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｈ．第２の所定のアドレスに対応する可用性レジスタに書き込まれる第１０のレジスタ値を取得するため、第８のレジスタ値と第９のレジスタ値とに対してＯＲ演算を実行するステップであって、第１０のレジスタ値は、Ｍ個の光モジュールケージの第２の所定のアドレスに対してプローブが実行された後に取得されるプローブ結果を示すのに利用される、実行するステップと、
を実行するよう構成される。
【００１７】
第２の態様の第３又は第４の可能な実現方式を参照して、第５の可能な実現方式では、所定のＩ２Ｃ時間シーケンスは、スタート時間シーケンス、アドレスプローブ時間シーケンス及びリード／ライト時間シーケンス、アクノリッジメント時間シーケンス並びにストップ時間シーケンスを順次有し、
スタート時間シーケンスにおける処理は、ＳＤＡパスのレベルを高レベルに設定すること、ＳＣＬパスのレベルを高レベルに設定すること、ＳＤＡパスのレベルを低レベルに設定すること、及びＳＣＬパスのレベルを低レベルに設定することを順次有し、
アドレスプローブ時間シーケンス及び前記リード／ライト時間シーケンスにおける処理は、ＳＤＡパスのレベルを高レベルに設定すること、ステップｉ、ステップｊ及びステップｋをＩ回繰り返し実行すること、及びＳＣＬパスのレベルを低レベルに設定することを順次有し、Ｉは所定値であり、ステップｉ、ステップｊ及びステップｋは、
ステップｉ：ＳＣＬパスのレベルを低レベルに設定し、
ステップｊ：第１の所定のアドレス又は第２の所定のアドレスに従ってＳＤＡパスのレベルを設定し、
ステップｋ：ＳＣＬパスのレベルを高レベルに設定する、
ことであり、
アクノリッジメント時間シーケンスにおける処理は、ＳＣＬパスのレベルを高レベルに設定すること、ＳＤＡパスを入力状態にスイッチすること、第１の所定のアドレス又は第２の所定のアドレスに対応する可用性レジスタを設定すること、ＳＣＬパスのレベルを低レベルに設定すること、及びＳＤＡパスを出力状態にスイッチすることを順次有し、
ストップ時間シーケンスにおける処理は、ＳＤＡパスのレベルを低レベルに設定すること、ＳＣＬパスのレベルを高レベルに設定すること、及びＳＤＡパスのレベルを高レベルに設定することを順次有する。
【００１８】
本発明の実施例は、光モジュール可用性検出方法及び装置を提供し、ここで、検出装置は、Ｎ個のパスを利用することによってＮ個の光モジュールケージに同時に接続される。当該装置は、コンフリクトレジスタにアクセスし、コンフリクトレジスタの値に従ってＮ個のパスの占有状態を取得し、それから、Ｎ個のパス内にあって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行し、プローブ結果を取得し、ここで、当該プローブ結果は、Ｍ個の光モジュールケージの光モジュールの可用性情報と、光モジュールのタイプとを有し、最後にプローブ結果を可用性レジスタに書き込み、これにより、システムソフトウェアは、他の何れのアクションを実行することなくレジスタからプローブ結果を取得可能になり、従って、ＣＰＵ使用がかなり低くなる。さらに、検出装置はＭ個の光モジュールケージに対して同時プローブを実行するため、各回におけるプローブ時間はかなり短く、高速な挿入及び削除処理の時間よりはるかに小さい。この結果、システムソフトウェアを利用して従来技術におけるポーリングを実行する方式と比較して、ＣＰＵ使用が増加しないケースでは、光モジュールが光モジュールケージにおいて利用可能であるか否かがリアルタイムに監視可能であり、光モジュールに対する高速な挿入及び削除処理が検知可能である。
【図面の簡単な説明】
【００１９】
本発明の実施例における技術的解決策をより明確に説明するため、以下は、実施例を説明するのに必要な添付図面を簡潔に紹介する。明らかに、以下の説明における添付図面は本発明の一部の実施例を示し、当業者は、創作的な努力なく、これらの添付図面から他の図面を依然として導出してもよい。
【図１】図１は、本発明の実施例による適用シナリオの概略的な構成図である。
【図２】図２は、本発明の実施例による光モジュール可用性検出方法の概略的なフローチャートである。
【図３】図３は、本発明の実施例による他の光モジュール可用性検出方法の概略的なフローチャートである。
【図４】図４は、本発明の実施例によるＩ２Ｃ時間シーケンスの図である。
【図５】図５は、本発明の実施例による光モジュール可用性検出方法におけるプローブプロセスの概略的なフローチャートである。
【図６】図６は、本発明の実施例による検出装置の概略的な構成図である。
【図７】図７は、本発明の実施例による他の検出装置の概略的な構成図である。
【発明を実施するための形態】
【００２０】
本発明の実施例の課題、技術的解決策及び効果をより明確にするため、以下は、本発明の実施例における添付図面を参照して、本発明の実施例における技術的解決策を明確且つ完全に説明する。明らかに、説明される実施例は本発明の実施例の全てでなく一部である。創作的な努力なく本発明の実施例に基づき当業者により取得される他の全ての実施例は、本発明の保護範囲内に属する。
【００２１】
図１に示されるように、図１は、本発明の実施例によるネットワーク装置の概略的な構成図であり、ここで、ネットワーク装置は、中央処理ユニット（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、略してＣＰＵ）、検出装置及び複数の光モジュールケージを有する。検出装置を利用することによって、本発明の本実施例において提供されるネットワーク装置は、光モジュールケースにおけるＣＳＦＰ及びＳＦＰなどの光モジュールが利用可能であるかリアルタイムに監視し、光モジュールの高速な挿入及び削除を検知できる。検出装置は、論理デバイスであってもよく、例えば、コンプレクス・プログラマブル・ロジック・デバイス（英語：Ｃｏｍｐｌｅｘ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ、略してＣＰＬＤ）であってもよいし、又はフィールド・プログラマブル・ゲート・アレイ（英語：Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ、略してＦＰＧＡ）であってもよい。図１を参照して、一方では、検出装置はＩ２Ｃパスを利用することによってＣＰＵに接続され、他方では、検出装置はＩ２Ｃパスを利用することによって光モジュールケージに同時接続され、すなわち、１つのＩ２Ｃパスを利用することによって各光モジュールケージに接続される。検出装置は、複数の光モジュールケージに対して同時プローブを実行可能である。各Ｉ２Ｃパスは２つのライン、ＳＤＡパスとも呼ばれるシリアルデータ（英語：Ｓｅｒｉａｌ  Ｄａｔａ、略してＳＤＡ）ラインと、ＳＣＬパスとも呼ばれるシリアルクロック（英語：Ｓｅｒｉａｌ  Ｃｌｏｃｋ、略してＳＣＬ）ラインとを有する。各Ｉ２ＣパスのＳＤＡラインの一方のエンドとＳＣＬラインの一方のエンドとは、検出装置の対応するピンに接続され、ＳＤＡラインの他方のエンドとＳＣＬラインの他方のエンドとは、光モジュールケージの対応するピンに接続される。光モジュールケージに対してプローブを実行する際、検出装置は、光モジュールケージに対応するＩ２Ｃパスを占有する。この場合、システムソフトウェア（システムソフトウェアは、Ｉ２Ｃ機能を実現するため検出装置内のいくつかの命令セットであり、例えば、検出装置を制御するのに利用されるシステムソフトウェアであってもよいし、又は光モジュールの可用性状態及び光モジュールのタイプを決定するのに専用のソフトウェアなどの特定の機能を備えたシステムソフトウェアであってもよいことが理解されてもよい）は、光モジュールケージにおける光モジュールにアクセスできない（例えば、メーカー情報、電力及び電圧などの情報へのアクセス及び取得）。同様に、システムソフトウェアが光モジュールケージにアクセスするとき、検出装置は、光モジュールケージに対応するＩ２Ｃパスを利用することによって、光モジュールケージに対してプローブを実行できない。
【００２２】
本発明の本実施例では、コンフリクトレジスタは、各光モジュールケージのＩ２Ｃパスがシステムソフトウェアにより占有されているか示す占有状態を記憶するよう構成され、ＳＣＬレベルレジスタは、ＳＣＬパスのレベル状態を制御するよう構成され、ＳＤＡレベルレジスタは、ＳＤＡパスのレベル状態を制御するよう構成され、ＳＤＡ制御レジスタは、ＳＤＡパスの入出力状態を制御するよう構成され、可用性レジスタは、プローブ結果を記憶するよう構成される。コンフリクトレジスタ、ＳＣＬレベルレジスタ、ＳＤＡレベルレジスタ、ＳＤＡ制御レジスタ及び可用性レジスタは、通常は検出装置内に配置されてもよい。
【００２３】
図１に示される検出装置及び当該検出装置により実現される光モジュール可用性検出方法は、添付図面を参照して以下で詳細に説明される。
【００２４】
図２に示されるように、本発明の実施例は、図１に示される検出装置に適用可能な光モジュール可用性検出方法を提供し、ここで、検出装置は、Ｎ個のパスを利用することによってＮ個の光モジュールケージに同時に接続され、当該方法は以下を有する。
【００２５】
ステップ１０１：コンフリクトレジスタにアクセスし、コンフリクトレジスタの値に従ってＮ個のパスの占有状態を取得する。
【００２６】
ステップ１０２：プローブ結果を取得するため、Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行し、ここで、プローブ結果はＭ個の光モジュールケージの光モジュールの可用性情報及び光モジュールのタイプを有し、Ｍ及びＮは共に正の整数であり、ＭはＮ以下である。
【００２７】
ステップ１０３：プローブ結果を可用性レジスタに書き込み、システムソフトウェアはレジスタからプローブ結果を取得する。
【００２８】
本発明の本実施例において提供される光モジュール可用性検出方法によると、検出装置は、Ｎ個のパスを利用することによってＮ個の光モジュールケージに同時に接続され、検出装置は、コンフリクトレジスタにアクセスし、コンフリクトレジスタの値に従って検出装置に接続されるＮ個のパスの占有状態を取得し、それから、プローブ結果を取得するため、Ｎ個のパス内にあって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行し、ここで、プローブ結果はＭ個の光モジュールケージの光モジュールの可用性情報及び光モジュールのタイプを有し、最後に、プローブ結果を可用性レジスタに書き込み、これにより、システムソフトウェアはレジスタからプローブ結果を取得できる。システムソフトウェアは、可用性レジスタの読み込みを除く他の何れかのアクションを実行する必要はなく、プローブが実行される必要がある光モジュールケージのプローブ結果を取得し、従って、ＣＰＵ使用はかなり低い。さらに、検出装置はＭ個の光モジュールケージに対して同時プローブを実行するため、プローブ時間は各回についてかなり短く、高速な挿入及び削除処理のための時間よりかなり小さい。この結果、システムソフトウェアを利用して従来技術におけるポーリングを実行する方式と比較して、ＣＰＵ使用が増加しないケースでは、光モジュールが光モジュールケージにおいて利用可能であるか否かがリアルタイムに監視可能であり、光モジュールに対する高速な挿入及び削除処理が検知できる。
【００２９】
本発明の実施例において提供される技術的解決策を当業者により明確に理解させるため、以下は、特定の実施例を利用することによって、本発明の本実施例において提供される光モジュール可用性検出方法を詳細に説明する。光モジュール可用性検出方法は検出装置により実行されてもよく、ここで、検出装置は、上述された論理デバイスであってもよく、検出装置の構成については、上記の説明を参照されたく、詳細は再説明されない。図３に示されるように、当該方法は以下を有する。
【００３０】
ステップ２０１：検出装置は、コンフリクトレジスタにアクセスし、コンフリクトレジスタの値に従ってＮ個のパスの占有状態を取得し、ここで、本実施例では、Ｎ個のパスは全て上記のＩ２Ｃパスであってもよい。
【００３１】
具体的には、コンフリクトレジスタのレジスタ値は、Ｎ個のパスの占有状態を示すのに利用されてもよい。例えば、コンフリクトレジスタが３２ビットレジスタである場合、コンフリクトレジスタの値は３２ビットであり、Ｎは３２である。コンフリクトレジスタの現在値が１６進数で０ｘ０００００００１であると仮定すると、当該値は、２進数値への変換後に０００００００００００００００００００００００００００００００１であり、０が非占有を表し、１が占有を表すことによって、３２個のパスの占有状態を別々に特定する。３２個のパスがパス０〜３１であると仮定すると、コンフリクトレジスタの上記の値から、パス０〜３０は占有されず、パス３１が占有されることが理解できる。占有されていないパス０〜３０に対するプローブが実行可能であり、パス３１はシステムソフトウェアにより占有され、従って、パス３１はスキップされ、検出中に検出されるべきでない。さらに、ここでのパスは全て上記のＩ２Ｃパスであり、説明の簡単化のため、以下の実施例における全てのレジスタはデフォルトにより３２ビットレジスタである。
【００３２】
さらに、検出プロセス中、論理デバイスはコンフリクトレジスタに１回のみアクセスする必要があり、コンフリクトレジスタの値は、パスがシステムソフトウェアにより占有されているか否かに関して全てのパスの状態を反映し、従って、論理デバイスはコンフリクトレジスタの値を変更できない。
【００３３】
ステップ２０２：検出装置は、プローブ結果を取得するため、Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行し、ここで、Ｍ及びＮは共に正の整数であり、ＭはＮ以下である。
【００３４】
具体的には、光モジュールが光モジュールケージにおいて利用可能であるか否かに関するプローブは、光モジュールの第１の所定のアドレス及び第２の所定のアドレスに対してプローブを実行することにより実現されてもよく、ここで、第１の所定のアドレス及び第２の所定のアドレスは、光モジュールの通常利用されるＩ２Ｃアドレスである。例えば、本明細書では、第１の所定のアドレスは０ｘ５０であってもよく、第２の所定のアドレスは０ｘ５２であってもよい。０ｘ５０に対してプローブを実行することからの結果と、０ｘ５２に対してプローブを実行することからの結果とは、０ｘ５０に対応する可用性レジスタと０ｘ５２に対応する可用性レジスタとにそれぞれ記憶される必要がある。
【００３５】
以下はまず、同時プローブがＭ個の光モジュールケージの第１の所定のアドレスに対して実行される具体例を利用することによって説明される。図５に示されるように、以下のステップが含まれてもよい。
【００３６】
ステップ２０２１：所定のＩ２Ｃ時間シーケンスに従って、現在の処理及び現在の処理に対応するターゲットパスを決定し、現在の処理に従って、ターゲットパスに対応するレジスタに書き込まれる第１のレジスタ値を決定する。
【００３７】
図４において、通常のＩ２Ｃ時間シーケンスが示されてもよい。本発明の本実施例における所定のＩ２Ｃ時間シーケンスは、図４に示される時間シーケンスと異なり、図４に示されるスタート時間シーケンス（ＳＴＡＲＴ）、アドレスプローブ時間シーケンス（ＡＤＤＲＥＳＳ）及びリード／ライト時間シーケンス（Ｒ／Ｗ）、アクノリッジメント時間シーケンス（ＡＣＫ）（図４では第１のアクノリッジメントのみ）及びストップ時間シーケンス（ＳＴＯＰ）が順次実行される。
【００３８】
ＳＤＡパス及びＳＣＬパスのための複数の処理が、各時間シーケンスに含まれる。具体的には、本発明の本実施例における所定のＩ２Ｃ時間シーケンスにおいて、処理、処理のためのターゲットパス及び各時間シーケンスに含まれる処理シーケンスが以下に示される。
【００３９】
スタート時間シーケンスにおける処理は、ＳＤＡパスのレベルを高レベルに設定すること、ＳＣＬパスのレベルを高レベルに設定すること、ＳＤＡパスのレベルを低レベルに設定すること、及びＳＣＬパスのレベルを低レベルに設定することを順次有し、
アドレスプローブ時間シーケンス及びリード／ライト時間シーケンスにおける処理は、ＳＤＡパスのレベルを高レベルに設定すること、ステップｉ、ステップｊ及びステップｋをＩ回繰り返し実行すること、及びＳＣＬパスのレベルを低レベルに設定することを順次有し、ここで、Ｉは所定値であってもよく、例えば、Ｉ２Ｃプロトコルでは、Ｉは８であってもよいと指定され、ステップｉ、ステップｊ及びステップｋは、
ステップｉ：ＳＣＬパスのレベルを低レベルに設定し、
ステップｊ：第１の所定のアドレス又は第２の所定のアドレスに従ってＳＤＡパスのレベルを設定し、ここで、ステップ２０２１〜２０２８はＭ個の光モジュールケージの第１の所定のアドレスに対するプローブを説明し、従って、ＳＤＡパスのレベルは、ステップｊが８回実行されるとき、第１の所定のアドレスに従って設定される必要がある。具体例としてアドレス０ｘ５０を利用することによって、０ｘ５０に対応するバイナリ値は０１０１００００であり、１ビットの左へのシフトが０１０１００００に対して実行され、１０１０００００を取得し、アドレスプローブ時間シーケンス及びリード／ライト時間シーケンスにおけるステップｊの８回の繰り返しの実行は、順次にＳＤＡパスのレベルを高レベルに設定し、ＳＤＡパスのレベルを低レベルに設定し、ＳＤＡパスのレベルを高レベルに設定し、ＳＤＡパスのレベルを低レベルに設定し、ＳＤＡパスのレベルを低レベルに設定し、ＳＤＡパスのレベルを低レベルに設定し、ＳＤＡパスのレベルを低レベルに設定し、ＳＤＡパスのレベルを低レベルに設定することであってもよい。０ｘ５０と同様に、０ｘ５２について、対応するバイナリ値は０１０１００１０であり、１ビットだけ左へのシフトを実行することにより１０１００１００が取得され、アドレスプローブ時間シーケンス及びリード／ライト時間シーケンスにおけるステップｊの８回の繰り返しの実行は、順次にＳＤＡパスのレベルを高レベルに設定し、ＳＤＡパスのレベルを低レベルに設定し、ＳＤＡパスのレベルを高レベルに設定し、ＳＤＡパスのレベルを低レベルに設定し、ＳＤＡパスのレベルを低レベルに設定し、ＳＤＡパスのレベルを高レベルに設定し、ＳＤＡパスのレベルを低レベルに設定し、ＳＤＡパスのレベルを低レベルに設定することであってもよい。
【００４０】
ステップｋ：ＳＣＬパスのレベルを高レベルに設定し、
アクノリッジメント時間シーケンスにおける処理は、ＳＣＬパスのレベルを高レベルに設定し、ＳＤＡパスを入力状態にスイッチし、第１の所定のアドレス又は第２の所定のアドレスに対応する可用性レジスタを設定し、ＳＣＬパスのレベルを低レベルに設定し、ＳＤＡパスを出力状態にスイッチすることを順次有し、
ストップ時間シーケンスにおける処理は、ＳＤＡパスのレベルを低レベルに設定し、ＳＣＬパスのレベルを高レベルに設定し、ＳＤＡパスのレベルを高レベルに設定することを順次有する。
【００４１】
ＳＣＬパスのレベル又はＳＤＡパスのレベルを高レベルに設定することは、ＳＣＬレベルレジスタ又はＳＤＡレベルレジスタに１を書き込むことを表し、ＳＣＬパスのレベル又はＳＤＡパスのレベルを低レベルに設定することは、ＳＣＬレベルレジスタ又はＳＤＡレベルレジスタに０を書き込むことを表す。例えば、現在の時間シーケンスに従って、実行される現在の処理がスタート時間シーケンスにおいて“ＳＤＡパスのレベルを高レベルに設定する”ことであると判断されたと仮定すると、ターゲットパスはＭ個のパスのＳＤＡパスであると判断され、ターゲットパスに対応するレジスタはＳＤＡレベルレジスタであり、従って、ＳＤＡレベルレジスタに書き込まれる第１のレジスタ値は０ｘｆｆｆｆｆｆｆｆ（２進数では１１１１１１１１１１１１１１１１１１１１１１１１１１１１１１１１に等しい）であると判断されてもよい。さらに、現在の時間シーケンスに従って、実行される現在の処理がアドレスプローブ時間シーケンス及びリード／ライト時間シーケンスにおいて“ＳＣＬパスのレベルを低レベルに設定する”ことであると判断されたと仮定すると、ターゲットパスはＭ個のパスのＳＣＬパスであると判断され、ターゲットパスに対応するレジスタはＳＣＬレベルレジスタであると判断され、従って、ＳＣＬレベルレジスタに書き込まれる第１のレジスタ値は０ｘ００００００００（２進数で００００００００００００００００００００００００００００００００に等しい）であると判断されてもよい。あるいは、現在の時間シーケンスに従って、実行される現在の処理がアクノリッジメント時間シーケンスにおいて“ＳＤＡパスを入力状態にスイッチする”ことであると判断されたと仮定すると、ターゲットパスはＭ個のパスのＳＤＡパスであると判断され、この場合、ターゲットパスに対応するレジスタはＳＤＡレベルレジスタである。
【００４２】
ステップ２０２２：ターゲットパスに対応するレジスタの現在の第２のレジスタ値を読み込む。ステップ２０２１において説明されたように、ターゲットパスがＭ個のパスのＳＤＡパスである場合、第２のレジスタ値はＳＤＡレベルレジスタから読み込まれる必要があり、しかしながら、現在の処理がアクノリッジメント時間シーケンスにおいて“ＳＤＡパスを入力状態にスイッチする”又は“ＳＤＡパスを出力状態にスイッチする”ことである場合、第２のレジスタ値はＳＤＡ制御レジスタから読み込まれる必要があり、ターゲットパスがＭ個のパスのＳＣＬパスである場合、第２のレジスタ値はＳＣＬレベルレジスタから読み込まれる必要がある。
【００４３】
ステップ２０２３：コンフリクトレジスタの値に対して否定演算が実行された後、第３のレジスタ値を取得するため、コンフリクトレジスタの否定された値と第１のレジスタ値とに対してＡＮＤ演算を実行し、第４のレジスタ値を取得するため、コンフリクトレジスタの値と第２のレジスタ値とに対してＡＮＤ演算を実行する。
【００４４】
ステップ２０２４：第５のレジスタ値を取得するため、第３のレジスタ値と第４のレジスタ値とに対してＯＲ演算を実行し、第５のレジスタ値をターゲットパスに対応するレジスタに書き込む。
【００４５】
ステップ２０２３及びステップ２０２４は、以下の式を利用することによって単に表現されてもよい。
【００４６】
Ｄ＝（（Ａ＆〜Ｃ）｜（Ｂ＆Ｃ））
ここで、Ｃはコンフリクトレジスタの値を表し、Ａは第１のレジスタ値であり、Ｂは第２のレジスタ値であり、Ｄは演算後のターゲットパスに対応するレジスタ（すなわち、Ｂが取得されるレジスタ、ここで、レジスタの値はＢからＤに更新されることに等しい）に記憶される第５のレジスタ値を表す。
【００４７】
上記のステップでは、第１のレジスタ値及び第２のレジスタ値は、スタート時間シーケンスにおいて“ＳＤＡパスのレベルを高レベルに設定する”処理に従って決定される。ステップ２０２４の実行が完了した後、ステップ２０２１〜ステップ２０２４が、スタート時間シーケンスにおいて“ＳＣＬパスのレベルを高レベルに設定する”処理に従って決定される第１のレジスタ値及び第２のレジスタ値に従って再実行される必要がある。同様に、ステップ２０２１〜ステップ２０２４が、アクノリッジメント時間シーケンスにおける“ＳＤＡパスを入力状態にスイッチする”処理が完了するまで、ステップ２０２１に示される所定のＩ２Ｃ時間シーケンスにより示される実行シーケンス及び各時間シーケンスにおける処理の実行シーケンスに従って繰り返し実行される。次に、以下のステップが実行される。
【００４８】
ステップ２０２５：ＳＤＡレベルレジスタの第６のレジスタ値を読み込む。
【００４９】
ステップ２０２６：第１の所定のアドレスに対応する可用性レジスタの第７のレジスタ値を読み込む。
【００５０】
２つの可用性レジスタがあり、一方の可用性レジスタは第１の所定のアドレスに対応し、他方の可用性レジスタは第２の所定のアドレスに対応し、例えば、０ｘ５０は１つの可用性レジスタに対応し、０ｘ５２は１つの可用性レジスタに対応する。０ｘ５０に対するプローブが今回実行される場合、第７のレジスタ値が、０ｘ５０に対応する可用性レジスタから読み込まれる必要がある。
【００５１】
ステップ２０２７：コンフリクトレジスタの値に対して否定演算が実行された後、第８のレジスタ値を取得するため、コンフリクトレジスタの否定された値と第６のレジスタ値とに対してＡＮＤ演算を実行し、第９のレジスタ値を取得するため、コンフリクトレジスタの値と第７のレジスタ値とに対してＡＮＤ演算を実行する。
【００５２】
ステップ２０２８：第１の所定のアドレスに対応する可用性レジスタに書き込まれる第１０のレジスタ値を取得するため、第８のレジスタ値と第９のレジスタ値とに対してＯＲ演算を実行し、ここで、第１０のレジスタ値は、Ｍ個の光モジュールケージの第１の所定のアドレスに対してプローブが実行された後に取得されるプローブ結果を示すのに利用される。
【００５３】
ステップ２０２７及びステップ２０２８は、以下の式を利用することによって単に表現されてもよい。
【００５４】
Ｄ＝（（Ａ＆〜Ｃ）｜（Ｂ＆Ｃ））
ここで、Ｃはコンフリクトレジスタの値を表し、Ａは第６のレジスタ値であり、Ｂは第７のレジスタ値であり、Ｄは演算後の第１の所定のアドレスに対応する可用性レジスタ（すなわち、Ｂが取得されるレジスタ、ここで、レジスタの値はＢからＤに更新されることに等しい）に記憶される第１０のレジスタ値を表す。
【００５５】
ステップ２０２８の後、アクノリッジメント時間シーケンスにおける“ＳＣＬパスのレベルを低レベルに設定する”及び“ＳＤＡパスを出力状態にスイッチする”処理と、ストップ時間シーケンスにおける処理とが依然として、所定のＩ２Ｃ時間シーケンスに従って順次実行される必要がある。当該処理のプロセスはステップ２０２１〜２０２４のものと正確に同じであり、詳細は再説明されない。
【００５６】
結論として、上記の処理の完了はＭ個の光モジュールケージの第１の所定のアドレスに対して実行されるプローブの完了を意味し、以降の実行ステップは以下の２つの方式に分割されてもよい。
【００５７】
第１の方式：Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、第１の所定のアドレスの可用性状態が利用不可であるとプローブ処理によって判断された場合、何れの光モジュールも何れの光モジュールケージにおいて利用可能でないと判断し、光モジュールケージの第２の所定のアドレスに対してプローブの実行をスキップするか、又は、
第１の所定のアドレスの可用性状態が利用可能であるとプローブ処理により判断された場合、何れかの光モジュールケージの第２の所定のアドレスに対してプローブを実行し続ける。
【００５８】
第２の方式：プローブ処理により決定された第１の所定のアドレスの可用性状態が利用可能であるか、又は利用不可であるかに関わらず、何れかの光モジュールケージの第２の所定のアドレスに対してプローブを実行し続け、すなわち、
Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行し、Ｍ個の光モジュールケージの第２の所定のアドレスに対して同時プローブを実行する。
【００５９】
何れかの光モジュールケージの第２の所定のアドレスに対してプローブを実行し続けるプロセスのため、何れかの光モジュールケージの第１の所定のアドレスに対してプローブを実行し続けるプロセスとの相違は、第７のレジスタ値が第２の所定のアドレスに対応する可用性レジスタから読み込まれる点にあり、取得された第１０のレジスタ値は第２の所定のアドレスに対応する可用性レジスタに書き込まれる必要がある第１０のレジスタ値であり、残りのステップは何れかの光モジュールケージの第１の所定のアドレスに対してプローブを実行し続けるステップと正確に同じであり、詳細は再説明されない。
【００６０】
ステップ２０３：検出装置は、プローブ結果を可用性レジスタに書き込む。
【００６１】
具体的には、ステップ２０２８に対応して、第１の所定のアドレスに対するプローブを介し取得された第１０のレジスタ値は、第１の所定のアドレスに対応する可用性レジスタに書き込まれ、第２の所定のアドレスに対するプローブを介し取得された第１０のレジスタ値は、第２の所定のアドレスに対応する可用性レジスタに書き込まれる。第１の所定のアドレスに対応する可用性レジスタにおける値と、第２の所定のアドレスに対応する可用性レジスタにおける値とがプローブ結果であり、２つの可用性レジスタの値における各ビットは、当該ビットに対応する光モジュールケージの第１の所定のアドレス又は第２の所定のアドレスの可用性状態を表すことができる。何れかの光モジュールケージの光モジュールの可用性情報及び光モジュールのタイプは、何れかの光モジュールケージに対応する第１の所定のアドレスの可用性状態及び第２の所定のアドレスの可用性状態に従って記述でき、ここで、光モジュールの可用性情報は、光モジュールが利用可能である、光モジュールが利用可能でない、とを含み、光モジュールのタイプは、光モジュール及びコンパクト光モジュールを含む。
【００６２】
ステップ２０４：システムソフトウェアは、レジスタからプローブ結果を取得する。
【００６３】
最後に、システムソフトウェアは、第１の所定のアドレスに対応する可用性レジスタの値と第２の所定のアドレスに対応する可用性レジスタの値とに従って、光モジュールが各光モジュールケージにおいて利用可能であるか判断するため、各光モジュールケージにおける光モジュールの第１の所定のアドレスのプローブ結果と第２の所定のアドレスのプローブ結果とを知ることができ、ここで、当該判断は以下の方法を利用することによって実行されてもよく、
何れかの光モジュールについて、第１の所定のアドレスの可用性状態が利用不可であるとプローブ処理によって判断された場合、何れの光モジュールも何れの光モジュールケージにおいて利用可能でないと判断し、第１の所定のアドレスの可用性状態が利用可能であって、第２の所定のアドレスの可用性状態が利用不可であるとプローブ処理によって判断された場合、光モジュールが何れかの光モジュールケージにおいて利用可能であると判断し、又は、第１の所定のアドレスの可用性状態が利用可能であって、第２の所定のアドレスの可用性状態が利用可能であるとプローブ処理によって判断された場合、コンパクト光モジュールが何れかの光モジュールケージにおいて利用可能であると判断する。
【００６４】
結論として、ステップ２０１〜２０４の実行の各回は、論理デバイスが当該論理デバイスに接続されるＮ個の光モジュールケージに対して実行されるプローブである。プローブはＩ２Ｃパスを利用することによって複数の光モジュールケージに対して同時に実行され、プローブ時間は各回についてかなり短く、従来のＩ２Ｃ時間シーケンスの一部のみが実行され、これにより、プローブ時間は更に低減され、プローブを実行するのに通常は１ｍｓ未満しかかからず、従って、光モジュールが光モジュールケージにおいて利用可能であるか否かが、リアルタイムに監視できる。さらに、１ｍｓは管理者が高速な挿入及び削除処理を実行するための時間よりはるかに小さく、従って、光モジュールに対する高速な挿入及び削除処理が特定できる。さらに、システムソフトウェアは、プローブが実行される必要がある光モジュールケージのプローブ結果を取得するため、可用性レジスタの読み込みを除く他の何れかのアクションを実行する必要はなく、従って、ＣＰＵ使用はかなり低い。この結果、システムソフトウェアを利用して従来技術におけるポーリングを実行する方式と比較して、本発明の本実施例において提供される上記の光モジュール可用性検出方法では、ＣＰＵ使用が増加しないケースにおいて、光モジュールが光モジュールケージにおいて利用可能であるか否かがリアルタイムに監視可能であり、光モジュールに対する高速な挿入及び削除処理が検知できる。
【００６５】
本発明の実施例は更に、検出装置０１を提供する。図６に示されるように、検出装置０１は、Ｎ個のパスを利用することによってＮ個の光モジュールケージに同時に接続され、検出装置０１は、
コンフリクトレジスタにアクセスし、コンフリクトレジスタの値に従ってＮ個のパスの占有状態を取得するよう構成される読み込みモジュール０１１と、
プローブ結果を取得するため、Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行するよう構成される処理モジュール０１２であって、プローブ結果はＭ個の光モジュールケージの光モジュールの可用性情報及び光モジュールのタイプを有し、Ｍ及びＮは共に正の整数であり、ＭはＮ以下である、処理モジュール０１２と、
プローブ結果を可用性レジスタに書き込むよう構成される書き込みモジュール０１３であって、システムソフトウェアはレジスタからプローブ結果を取得する、書き込みモジュール０１３と、
を有する。
【００６６】
任意的には、処理モジュール０１２は、具体的には、
Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行するよう構成されてもよく、
Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、何れの光モジュールも第１の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、何れの光モジュールも第１の光モジュールケージにおいて利用可能でないと判断され、
光モジュールが第１の所定のアドレスにおいて利用可能であるとプローブ処理によって判断された場合、何れかの光モジュールケージの第２の所定のアドレスに対してプローブが実行され、
何れの光モジュールも第２の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、光モジュールが何れかの光モジュールケージにおいて利用可能であると判断され、光モジュールが第２の所定のアドレスにおいて利用可能であるとプローブ処理によって判断された場合、コンパクト光モジュールが第１の光モジュールケージにおいて利用可能であると判断される。
【００６７】
任意的には、処理モジュール０１２は、具体的には、
Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行し、Ｍ個の光モジュールケージの第２の所定のアドレスに対して同時プローブを実行するよう構成されてもよく、
Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、何れの光モジュールも第１の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、何れの光モジュールも何れの光モジュールケージにおいて利用可能でないと判断され、光モジュールが第１の所定のアドレスにおいて利用可能であり、何れの光モジュールも第２の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、光モジュールは何れかの光モジュールにおいて利用可能であると判断され、光モジュールが第１の所定のアドレスにおいて利用可能であり、光モジュールが第２の所定のアドレスにおいて利用可能であるとプローブ処理によって判断された場合、コンパクト光モジュールが何れかの光モジュールにおいて利用可能であると判断される。
【００６８】
任意的には、Ｎ個のパスは、Ｎ個のＩ２Ｃパスであり、各Ｉ２Ｃパスは、シリアルクロックＳＣＬパス及びシリアルデータＳＤＡパスを有し、ＳＣＬパスはＳＣＬレベルレジスタによって制御され、ＳＤＡパスはＳＤＡレベルレジスタ及びＳＤＡ制御レジスタによって制御され、処理モジュール０１２は、具体的には、
ａ．所定のＩ２Ｃ時間シーケンスに従って、現在の処理及び現在の処理に対応するターゲットパスを決定し、現在の処理に従って、ターゲットパスに対応するレジスタに書き込まれる第１のレジスタ値を決定するステップと、
ｂ．ターゲットパスに対応するレジスタの現在の第２のレジスタ値を読み込むステップと、
ｃ．コンフリクトレジスタの値に対して否定演算が実行された後、第３のレジスタ値を取得するため、コンフリクトレジスタの否定された値と第１のレジスタ値とに対してＡＮＤ演算を実行し、第４のレジスタ値を取得するため、コンフリクトレジスタの値と第２のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｄ．第５のレジスタ値を取得するため、第３のレジスタ値と第４のレジスタ値とに対してＯＲ演算を実行し、第５のレジスタ値をターゲットパスに対応するレジスタに書き込むステップであって、ターゲットパスはＭ個のパスのＳＣＬパス又はＭ個のパスのＳＤＡパスであり、ターゲットパスがＭ個のパスのＳＣＬパスである場合、ターゲットパスに対応するレジスタはＳＣＬレベルレジスタであり、ターゲットパスがＭ個のパスのＳＤＡパスである場合、ターゲットパスに対応するレジスタはＳＤＡレベルレジスタ又はＳＤＡ制御レジスタである、書き込むステップと、
Ｍ個のパスのＳＤＡパスの状態が出力から入力にスイッチされるまで、所定のＩ２Ｃ時間シーケンスに従って、ステップａ、ステップｂ、ステップｃ及びステップｄを繰り返し実行するステップと、
ｅ．ＳＤＡレベルレジスタの第６のレジスタ値を読み込むステップと、
ｆ．第１の所定のアドレスに対応する可用性レジスタの第７のレジスタ値を読み込むステップと、
ｇ．コンフリクトレジスタの値に対して否定演算が実行された後、第８のレジスタ値を取得するため、コンフリクトレジスタの否定された値と第６のレジスタ値とに対してＡＮＤ演算を実行し、第９のレジスタ値を取得するため、コンフリクトレジスタの値と第７のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｈ．第１の所定のアドレスに対応する可用性レジスタに書き込まれる第１０のレジスタ値を取得するため、第８のレジスタ値と第９のレジスタ値とに対してＯＲ演算を実行するステップであって、第１０のレジスタ値は、Ｍ個の光モジュールケージの第１の所定のアドレスに対してプローブが実行された後に取得されるプローブ結果を示すのに利用される、実行するステップと、
を実行するよう構成されてもよい。
【００６９】
任意的には、処理モジュールは更に（以下のステップにおける第１のレジスタ値から第１０のレジスタ値は、第１の所定のアドレスに対して実行された上記のプローブプロセスにおけるものである第１のレジスタ値から第１０のレジスタ値と異なることが留意されるべきである）、具体的には、
ａ．所定のＩ２Ｃ時間シーケンスに従って、現在の処理及び現在の処理に対応するターゲットパスを決定し、現在の処理に従って、ターゲットパスに対応するレジスタに書き込まれる第１のレジスタ値を決定するステップと、
ｂ．ターゲットパスに対応するレジスタの現在の第２のレジスタ値を読み込むステップと、
ｃ．コンフリクトレジスタの値に対して否定演算が実行された後、第３のレジスタ値を取得するため、コンフリクトレジスタの否定された値と第１のレジスタ値とに対してＡＮＤ演算を実行し、第４のレジスタ値を取得するため、コンフリクトレジスタの値と第２のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｄ．第５のレジスタ値を取得するため、第３のレジスタ値と第４のレジスタ値とに対してＯＲ演算を実行し、第５のレジスタ値をターゲットパスに対応するレジスタに書き込むステップであって、ターゲットパスはＭ個のパスのＳＣＬパス又はＭ個のパスのＳＤＡパスであり、ターゲットパスがＭ個のパスのＳＣＬパスである場合、ターゲットパスに対応するレジスタはＳＣＬレベルレジスタであり、ターゲットパスがＭ個のパスのＳＤＡパスである場合、ターゲットパスに対応するレジスタはＳＤＡレベルレジスタ又はＳＤＡ制御レジスタである、書き込むステップと、
Ｍ個のパスのＳＤＡパスの状態が出力から入力にスイッチされるまで、所定のＩ２Ｃ時間シーケンスに従って、ステップａ、ステップｂ、ステップｃ及びステップｄを繰り返し実行するステップと、
ｅ．ＳＤＡレベルレジスタの第６のレジスタ値を読み込むステップと、
ｆ．第２の所定のアドレスに対応する可用性レジスタの第７のレジスタ値を読み込むステップと、
ｇ．コンフリクトレジスタの値に対して否定演算が実行された後、第８のレジスタ値を取得するため、コンフリクトレジスタの否定された値と第６のレジスタ値とに対してＡＮＤ演算を実行し、第９のレジスタ値を取得するため、コンフリクトレジスタの値と第７のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｈ．第２の所定のアドレスに対応する可用性レジスタに書き込まれる第１０のレジスタ値を取得するため、第８のレジスタ値と第９のレジスタ値とに対してＯＲ演算を実行するステップであって、第１０のレジスタ値は、Ｍ個の光モジュールケージの第２の所定のアドレスに対してプローブが実行された後に取得されるプローブ結果を示すのに利用される、実行するステップと、
を実行するよう構成されてもよい。
【００７０】
任意的には、所定のＩ２Ｃ時間シーケンスは、スタート時間シーケンス、アドレスプローブ時間シーケンス及びリード／ライト時間シーケンス、アクノリッジメント時間シーケンス並びにストップ時間シーケンスを順次有し、
スタート時間シーケンスにおける処理は、ＳＤＡパスのレベルを高レベルに設定すること、ＳＣＬパスのレベルを高レベルに設定すること、ＳＤＡパスのレベルを低レベルに設定すること、及びＳＣＬパスのレベルを低レベルに設定することを順次有し、
アドレスプローブ時間シーケンス及びリード／ライト時間シーケンスにおける処理は、ＳＤＡパスのレベルを高レベルに設定すること、ステップｉ、ステップｊ及びステップｋをＩ回繰り返し実行すること、及びＳＣＬパスのレベルを低レベルに設定することを順次有し、Ｉは所定値であり、ステップｉ、ステップｊ及びステップｋは、
ステップｉ：ＳＣＬパスのレベルを低レベルに設定し、
ステップｊ：第１の所定のアドレス又は第２の所定のアドレスに従ってＳＤＡパスのレベルを設定し、
ステップｋ：ＳＣＬパスのレベルを高レベルに設定する、
ことであり、
アクノリッジメント時間シーケンスにおける処理は、ＳＣＬパスのレベルを高レベルに設定すること、ＳＤＡパスを入力状態にスイッチすること、第１の所定のアドレス又は第２の所定のアドレスに対応する可用性レジスタを設定すること、ＳＣＬパスのレベルを低レベルに設定すること、及びＳＤＡパスを出力状態にスイッチすることを順次有し、
ストップ時間シーケンスにおける処理は、ＳＤＡパスのレベルを低レベルに設定すること、ＳＣＬパスのレベルを高レベルに設定すること、及びＳＤＡパスのレベルを高レベルに設定することを順次有する。
【００７１】
本実施例は、上記の方法の実施例を実現するのに利用される。本実施例における動作手順及び動作原理について、上記の方法の実施例の説明が参照されてもよく、ここでは詳細は再説明されない。
【００７２】
結論として、本発明の本実施例において提供される検出装置は、Ｎ個のパスを利用することによってＮ個の光モジュールケージに同時に接続され、当該検出装置は、コンフリクトレジスタにアクセスし、コンフリクトレジスタの値に従って検出装置に接続されるＮ個のパスの占有状態を取得し、それから、プローブ結果を取得するため、Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対してプローブを実行し、ここで、プローブ結果はＭ個の光モジュールケージの光モジュールの可用性情報及び光モジュールのタイプを記述するのに利用され、最後にプローブ結果を可用性レジスタに書き込み、これにより、システムソフトウェアはレジスタからプローブ結果を取得することができる。システムソフトウェアは、プローブが実行される必要がある光モジュールケージのプローブ結果を取得するため、可用性レジスタの読み込みを除く他の何れかのアクションを実行する必要はなく、従って、ＣＰＵ使用はかなり低い。さらに、検出装置はＭ個の光モジュールケージに対して同時プローブを実行するため、プローブ時間は各回についてかなり短く、高速な挿入及び削除処理のための時間よりはるかに小さい。この結果、システムソフトウェアを利用して従来技術におけるポーリングを実行する方式と比較して、ＣＰＵ使用が増加しないケースにおいて、光モジュールが光モジュールケージにおいて利用可能であるか否かがリアルタイムに監視可能であり、光モジュールに対する高速な挿入及び削除処理が検知できる。
【００７３】
本発明の実施例は更に、検出装置０２を提供する。検出装置０２は、Ｎ個のパスを利用することによってＮ個の光モジュールケージに同時接続され、検出装置０２とＮ個の光モジュールケージとの間の接続関係は、図１に示される検出装置とＮ個の光モジュールケージとの間の接続関係であってもよく、詳細はここでは再説明されない。検出装置０２は論理デバイスであってもよい。
【００７４】
図７に示されるように、検出装置０２は、論理機能ブロックアレイ０２１、Ｉ／Ｏ（入出力）ユニット０２２、コンフリクトレジスタ０２３、ＳＣＬレベルレジスタ０２４、ＳＤＡレベルレジスタ０２５、ＳＤＡ制御レジスタ０２６及び可用性レジスタ０２７を有し、ここで、論理機能ブロックアレイ０２１は複数の論理機能ブロックを有する。論理機能ブロックアレイ０２１は、ケーブル化によってコンフリクトレジスタ０２３、ＳＣＬレベルレジスタ０２４、ＳＤＡレベルレジスタ０２５、ＳＤＡ制御レジスタ０２６、可用性レジスタ０２７及びＩ／Ｏユニット０２２と相互接続される。Ｉ／Ｏユニット０２２を制御することによって、論理機能ブロックアレイ０２１は、
コンフリクトレジスタ０２３にアクセスし、コンフリクトレジスタ０２３の値に従ってＮ個のパスの占有状態を取得し、
プローブ結果を取得するため、Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行し、ここで、プローブ結果はＭ個の光モジュールケージの光モジュールの可用性情報及び光モジュールのタイプを有し、Ｍ及びＮは共に正の整数であり、ＭはＮ以下であり、
プローブ結果を可用性レジスタ０２７に書き込み、システムソフトウェアはレジスタ０２７からプローブ結果を取得し、ここで、可用性レジスタ０２７は、第１の所定のアドレスに対応する可用性レジスタ０２７１と第２の所定のアドレスに対応する可用性レジスタ０２７２との２つのレジスタを有し、第１の所定のアドレスは０ｘ５０であってもよく、第２の所定のアドレスは０ｘ５２であってもよい。
【００７５】
任意的には、実現方式では、Ｉ／Ｏユニット０２２を制御することによって、論理機能ブロックアレイ０２１は、具体的には、
Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行するよう構成され、
Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、第１の所定のアドレスの可用性状態が利用不可であるとプローブ処理によって判断された場合、何れの光モジュールも何れの光モジュールケージにおいて利用可能でないと判断され、
第１の所定のアドレスにおける可用性状態が利用可能であるとプローブ処理によって判断された場合、何れかの光モジュールケージの第２の所定のアドレスに対してプローブが実行され、
第２の所定のアドレスにおける可用性状態が利用不可であるとプローブ処理によって判断された場合、光モジュールが何れかの光モジュールケージにおいて利用可能であると判断され、第２の所定のアドレスにおける可用性状態が利用可能であるとプローブ処理によって判断された場合、コンパクト光モジュールが第１の光モジュールケージにおいて利用可能であると判断される。
【００７６】
任意的には、他の実現方式では、Ｉ／Ｏユニット０２２を制御することによって、論理機能ブロックアレイ０２１は、具体的には、
Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行し、Ｍ個の光モジュールケージの第２の所定のアドレスに対して同時プローブを実行するよう構成されてもよく、
Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、第１の所定のアドレスの可用性状態が利用不可であるとプローブ処理によって判断された場合、何れの光モジュールも何れの光モジュールケージにおいて利用可能でないと判断され、第１の所定のアドレスの可用性状態が利用可能であり、第２の所定のアドレスの可用性状態が利用不可であるとプローブ処理によって判断された場合、光モジュールは何れかの光モジュールケージにおいて利用可能であると判断され、第１の所定のアドレスの可用性状態が利用可能であり、第２の所定のアドレスの可用性状態が利用可能であるとプローブ処理によって判断された場合、コンパクト光モジュールが何れかの光モジュールケージにおいて利用可能であると判断される。
【００７７】
任意的には、Ｎ個のパスはＮ個のＩ２Ｃパスであり、各Ｉ２Ｃパスは、シリアルクロックＳＣＬパス及びシリアルデータＳＤＡパスを有し、ＳＣＬパスはＳＣＬレベルレジスタ０２４によって制御され、ＳＤＡパスはＳＤＡレベルレジスタ０２５及びＳＤＡ制御レジスタ０２６によって制御され、
Ｉ／Ｏユニット０２２を制御することによって、論理機能ブロックアレイ０２１は、具体的には、
ａ．所定のＩ２Ｃ時間シーケンスに従って、現在の処理及び現在の処理に対応するターゲットパスを決定し、現在の処理に従って、ターゲットパスに対応するレジスタに書き込まれる第１のレジスタ値を決定するステップと、
ｂ．ターゲットパスに対応するレジスタの現在の第２のレジスタ値を読み込むステップと、
ｃ．コンフリクトレジスタ０２３の値に対して否定演算が実行された後、第３のレジスタ値を取得するため、コンフリクトレジスタ０２３の否定された値と第１のレジスタ値とに対してＡＮＤ演算を実行し、第４のレジスタ値を取得するため、コンフリクトレジスタ０２３の値と第２のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｄ．第５のレジスタ値を取得するため、第３のレジスタ値と第４のレジスタ値とに対してＯＲ演算を実行し、第５のレジスタ値をターゲットパスに対応するレジスタに書き込むステップであって、ターゲットパスはＭ個のパスのＳＣＬパス又はＭ個のパスのＳＤＡパスであり、ターゲットパスがＭ個のパスのＳＣＬパスである場合、ターゲットパスに対応するレジスタはＳＣＬレベルレジスタ０２４であり、ターゲットパスがＭ個のパスのＳＤＡパスである場合、ターゲットパスに対応するレジスタはＳＤＡレベルレジスタ０２５又はＳＤＡ制御レジスタ０２６である、書き込むステップと、
Ｍ個のパスのＳＤＡパスの状態が出力状態から入力状態にスイッチされるまで、所定のＩ２Ｃ時間シーケンスに従って、ステップａ、ステップｂ、ステップｃ及びステップｄを繰り返し実行するステップと、
ｅ．ＳＤＡレベルレジスタ０２５の第６のレジスタ値を読み込むステップと、
ｆ．第１の所定のアドレスに対応する可用性レジスタ０２７１の第７のレジスタ値を読み込むステップと、
ｇ．コンフリクトレジスタ０２３の値に対して否定演算が実行された後、第８のレジスタ値を取得するため、コンフリクトレジスタ０２３の否定された値と第６のレジスタ値とに対してＡＮＤ演算を実行し、第９のレジスタ値を取得するため、コンフリクトレジスタ０２３の値と第７のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｈ．第１の所定のアドレスに対応する可用性レジスタ０２７１に書き込まれる第１０のレジスタ値を取得するため、第８のレジスタ値と第９のレジスタ値とに対してＯＲ演算を実行するステップであって、第１０のレジスタ値は、Ｍ個の光モジュールケージの第１の所定のアドレスに対してプローブが実行された後に取得されるプローブ結果を示すのに利用される、実行するステップと、
を実行するよう構成されてもよい。
【００７８】
任意的には、Ｉ／Ｏユニット０２２を制御することによって、論理機能ブロックアレイ０２１は更に（以下のステップにおける第１のレジスタ値から第１０のレジスタ値は、第１の所定のアドレスに対して実行された上記のプローブプロセスにおけるものである第１のレジスタ値から第１０のレジスタ値と異なることが留意されるべきである）、具体的には、
ａ．所定のＩ２Ｃ時間シーケンスに従って、現在の処理及び現在の処理に対応するターゲットパスを決定し、現在の処理に従って、ターゲットパスに対応するレジスタに書き込まれる第１のレジスタ値を決定するステップと、
ｂ．ターゲットパスに対応するレジスタの現在の第２のレジスタ値を読み込むステップと、
ｃ．コンフリクトレジスタ０２３の値に対して否定演算が実行された後、第３のレジスタ値を取得するため、コンフリクトレジスタ０２３の否定された値と第１のレジスタ値とに対してＡＮＤ演算を実行し、第４のレジスタ値を取得するため、コンフリクトレジスタ０２３の値と第２のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｄ．第５のレジスタ値を取得するため、第３のレジスタ値と第４のレジスタ値とに対してＯＲ演算を実行し、第５のレジスタ値をターゲットパスに対応するレジスタに書き込むステップであって、ターゲットパスはＭ個のパスのＳＣＬパス又はＭ個のパスのＳＤＡパスであり、ターゲットパスがＭ個のパスのＳＣＬパスである場合、ターゲットパスに対応するレジスタはＳＣＬレベルレジスタ０２４であり、ターゲットパスがＭ個のパスのＳＤＡパスである場合、ターゲットパスに対応するレジスタはＳＤＡレベルレジスタ０２５又はＳＤＡ制御レジスタ０２６である、書き込むステップと、
Ｍ個のパスのＳＤＡパスの状態が出力状態から入力状態にスイッチされるまで、所定のＩ２Ｃ時間シーケンスに従って、ステップａ、ステップｂ、ステップｃ及びステップｄを繰り返し実行するステップと、
ｅ．ＳＤＡレベルレジスタ０２５の第６のレジスタ値を読み込むステップと、
ｆ．第２の所定のアドレスに対応する可用性レジスタ０２７２の第７のレジスタ値を読み込むステップと、
ｇ．コンフリクトレジスタ０２３の値に対して否定演算が実行された後、第８のレジスタ値を取得するため、コンフリクトレジスタ０２３の否定された値と第６のレジスタ値とに対してＡＮＤ演算を実行し、第９のレジスタ値を取得するため、コンフリクトレジスタ０２３の値と第７のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｈ．第２の所定のアドレスに対応する可用性レジスタ０２７２に書き込まれる第１０のレジスタ値を取得するため、第８のレジスタ値と第９のレジスタ値とに対してＯＲ演算を実行するステップであって、第１０のレジスタ値は、Ｍ個の光モジュールケージの第２の所定のアドレスに対してプローブが実行された後に取得されるプローブ結果を示すのに利用される、実行するステップと、
を実行するよう構成されてもよい。
【００７９】
任意的には、所定のＩ２Ｃ時間シーケンスは、スタート時間シーケンス、アドレスプローブ時間シーケンス及びリード／ライト時間シーケンス、アクノリッジメント時間シーケンス並びにストップ時間シーケンスを順次有し、
スタート時間シーケンスにおける処理は、ＳＤＡパスのレベルを高レベルに設定すること、ＳＣＬパスのレベルを高レベルに設定すること、ＳＤＡパスのレベルを低レベルに設定すること、及びＳＣＬパスのレベルを低レベルに設定することを順次有し、
アドレスプローブ時間シーケンス及び前記リード／ライト時間シーケンスにおける処理は、ＳＤＡパスのレベルを高レベルに設定すること、ステップｉ、ステップｊ及びステップｋをＩ回繰り返し実行すること、及びＳＣＬパスのレベルを低レベルに設定することを順次有し、Ｉは所定値であり、ステップｉ、ステップｊ及びステップｋは、
ステップｉ：ＳＣＬパスのレベルを低レベルに設定し、
ステップｊ：第１の所定のアドレス又は第２の所定のアドレスに従ってＳＤＡパスのレベルを設定し、
ステップｋ：ＳＣＬパスのレベルを高レベルに設定する、
ことであり、
アクノリッジメント時間シーケンスにおける処理は、ＳＣＬパスのレベルを高レベルに設定すること、ＳＤＡパスを入力状態にスイッチすること、第１の所定のアドレス又は第２の所定のアドレスに対応する可用性レジスタを設定すること、ＳＣＬパスのレベルを低レベルに設定すること、及びＳＤＡパスを出力状態にスイッチすることを順次有し、
ストップ時間シーケンスにおける処理は、ＳＤＡパスのレベルを低レベルに設定すること、ＳＣＬパスのレベルを高レベルに設定すること、及びＳＤＡパスのレベルを高レベルに設定することを順次有する。
【００８０】
さらに、本実施例における検出装置は上記の論理デバイスであってもよく、ここで、論理デバイスはＣＰＬＤ又はＦＰＧＡであってもよい。論理デバイスがＣＰＬＤである場合、論理機能ブロックアレイ０２１は、機能ブロック（英語：Ｆｕｎｃｔｉｏｎ  Ｂｌｏｃｋ、略してＦＢ）を有するアレイであってもよく、論理デバイスがＦＰＧＡである場合、論理機能ブロックアレイ０２１は、コンフィギュラブル論理ブロック（英語：Ｃｏｎｆｉｇｕｒａｂｌｅ  Ｌｏｇｉｃ  Ｂｌｏｃｋ、略してＣＬＢ）を有するアレイであってもよい。さらに、論理機能ブロックアレイ０２１の周囲に分散されて、論理機能ブロックアレイ０２１と外部のパッケージピンとの間のインタフェースとして機能しうる複数のＩ／Ｏユニットがあってもよい。
【００８１】
本実施例は、上記の方法の実施例を実現するのに利用される。本実施例におけるモジュールの動作手順及び動作原理について、上記の方法の実施例の説明が参照されてもよく、ここでは詳細は再説明されない。
【００８２】
結論として、本発明の本実施例において提供される検出装置は、Ｎ個のパスを利用することによってＮ個の光モジュールケージに同時に接続され、当該検出装置は、コンフリクトレジスタにアクセスし、コンフリクトレジスタの値に従って検出装置に接続されるＮ個のパスの占有状態を取得し、それから、プローブ結果を取得するため、Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対してプローブを実行し、ここで、プローブ結果はＭ個の光モジュールケージの光モジュールの可用性情報及び光モジュールのタイプを記述するのに利用され、最後に、プローブ結果を可用性レジスタに書き込み、これにより、システムソフトウェアはレジスタからプローブ結果を取得することができる。システムソフトウェアは、プローブが実行される必要がある光モジュールケージのプローブ結果を取得するため、可用性レジスタの読み込みを除く他の何れかのアクションを実行する必要はなく、従って、ＣＰＵ使用はかなり低い。さらに、検出装置はＭ個の光モジュールケージに対して同時プローブを実行するため、プローブ時間は各回についてかなり短く、高速な挿入及び削除処理のための時間よりはるかに小さい。この結果、システムソフトウェアを利用して従来技術におけるポーリングを実行する方式と比較して、ＣＰＵ使用が増加しないケースにおいて、光モジュールが光モジュールケージにおいて利用可能であるか否かがリアルタイムに監視可能であり、光モジュールに対する高速な挿入及び削除処理が検知できる。
【００８３】
本発明において提供される複数の実施例では、開示される装置及び方法は他の方式で実現されてもよいことが理解されるべきである。例えば、説明された装置の実施例は単なる例示的なものである。例えば、ユニットの分割は単なる論理機能の分割であり、実際の実現形態では他の分割であってもよい。例えば、複数のユニット又はコンポーネントが他のシステムに合成又は統合されてもよいし、又は一部の特徴は無視又は実行されなくてもよい。さらに、表示又は説明された相互結合又は直接的な結合又は通信接続は、いくつかのインタフェースを利用することによって実現されてもよい。装置又はユニット間の間接的な結合又は通信接続は、電子、機械又は他の形態により実現されてもよい。
【００８４】
別々のパーツとして説明されたユニットは、物理的に別々であってもよいし、又はそうでなくてもよく、ユニットとして表示されるパーツは物理的ユニットであってもよいし、又はそうでなくてもよく、１つのポジションに配置されてもよいし、又は複数のネットワークユニットに分散されてもよい。ユニットの一部又は全ては、実施例の解決策の課題を実現するため実際の要求に従って選択されてもよい。
【００８５】
さらに、本発明の実施例における機能ユニットは１つの処理ユニットに統合されてもよいし、又は各ユニットは物理的に単独で存在してもよいし、又は２つ以上のユニットが１つのユニットに統合される。統合されたユニットは、ハードウェアの形態で実現されてもよいし、又はシステムのソフトウェア機能ユニットに加えてハードウェアの形態で実現されてもよい。
【００８６】
上記の統合されたユニットがソフトウェア機能ユニットの形態で実現されるとき、統合されたユニットはコンピュータ可読記憶媒体に記憶されてもよい。ソフトウェア機能ユニットは、記憶媒体に記憶され、本発明の実施例において説明された方法のステップの一部をコンピュータ装置（パーソナルコンピュータ、サーバ、ネットワーク装置などであってもよい）又はプロセッサ（ｐｒｏｃｅｓｓｏｒ）に実行するよう指示するための複数の命令を含む。上記の記憶媒体は、ＵＳＢフラッシュドライブ、着脱可能なハードディスク、読み出し専用メモリ（Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ，ＲＯＭ）、ランダム・アクセス・メモリ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ，ＲＡＭ）、磁気ディスク又は光ディスクなど、プログラムコードを記憶可能な何れかの媒体を含む。
【００８７】
便宜的且つ簡潔な説明のため、上記の機能モジュールの分割は説明のための具体例として取り上げられていることが当業者に明確に理解されうる。実際の適用では、上記の機能は異なる機能モジュールに配分され、要求に従って実現可能であり、すなわち、装置の内部構造は、上述した機能の全て又は一部を実現するため異なる機能モジュールに分割される。上記の装置の詳細な動作プロセスについて、上記の方法の実施例における対応するプロセスが参照されてもよく、ここでは詳細は再説明されない。
【００８８】
最後に、上記の実施例は、本発明を限定することでなく、本発明の技術的解決策を説明することを単に意図していることが留意されるべきである。本発明は上記の実施例を参照して詳細に説明されるが、当業者は、これらの変更又は置換が対応する技術的解決策の本質に本発明の実施例の技術的解決策の範囲から逸脱させない限り、それらが上記の実施例において説明される技術的解決策に依然として変更を行ってもよいし、又はその技術的特徴の一部又は全てに等価な置換を行ってもよいことを理解すべきである。
【図１】
2016146621.tif 000003
【図２】
2016146621.tif 000004
【図３】
2016146621.tif 000005
【図４】
2016146621.tif 000006
【図５】
2016146621.tif 000007
【図６】
2016146621.tif 000008
【図７】
2016146621.tif 000009
【手続補正書】
【提出日】平成28年4月22日(2016.4.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
検出装置に適用される光モジュール可用性検出方法であって、前記検出装置はＮ個のパスを利用することによってＮ個の光モジュールケージに同時に接続され、当該方法は、
コンフリクトレジスタにアクセスし、前記コンフリクトレジスタの値に従って前記Ｎ個のパスの占有状態を取得するステップと、
プローブ結果を取得するため、前記Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行するステップであって、前記プローブ結果は前記Ｍ個の光モジュールケージの光モジュールの可用性情報及び前記光モジュールのタイプを有し、Ｍ及びＮは共に正の整数であり、ＭはＮ以下である、実行するステップと、
前記プローブ結果を可用性レジスタに書き込むステップであって、前記システムソフトウェアは前記レジスタから前記プローブ結果を取得する、書き込むステップと、
を有する方法。
【請求項２】
前記プローブ結果を取得するため、前記Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行するステップは、
前記Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行するステップを有し、
前記Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、前記第１の所定のアドレスの可用性状態が利用不可であるとプローブ処理によって判断された場合、何れの光モジュールも前記何れの光モジュールケージにおいて利用可能でないと判断され、
前記第１の所定のアドレスの可用性状態が利用可能であるとプローブ処理によって判断された場合、前記何れかの光モジュールケージの第２の所定のアドレスに対してプローブが実行され、
前記第２の所定のアドレスの可用性状態が利用不可であるとプローブ処理によって判断された場合、光モジュールが前記何れかの光モジュールケージにおいて利用可能であると判断され、前記第２の所定のアドレスの可用性状態が利用可能であるとプローブ処理によって判断された場合、コンパクト光モジュールが前記何れかの光モジュールケージにおいて利用可能であると判断される、請求項１記載の方法。
【請求項３】
前記プローブ結果を取得するため、前記Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行するステップは、
前記Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行し、前記Ｍ個の光モジュールケージの第２の所定のアドレスに対して同時プローブを実行するステップを有し、
前記Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、前記第１の所定のアドレスの可用性状態が利用不可であるとプローブ処理によって判断された場合、何れの光モジュールも前記何れの光モジュールケージにおいて利用可能でないと判断され、前記第１の所定のアドレスの可用性状態が利用可能であって、前記第２の所定のアドレスの可用性状態が利用不可であるとプローブ処理によって判断された場合、光モジュールが前記何れかの光モジュールケージにおいて利用可能であると判断され、前記第１の所定のアドレスの可用性状態が利用可能であって、前記第２の所定のアドレスの可用性状態が利用可能であるとプローブ処理によって判断された場合、コンパクト光モジュールが前記何れかの光モジュールケージにおいて利用可能であると判断される、請求項１記載の方法。
【請求項４】
前記Ｎ個のパスは、Ｎ個のインター・インテグレーティッド・サーキットＩ２Ｃパスであり、各Ｉ２Ｃパスは、シリアルクロックＳＣＬパス及びシリアルデータＳＤＡパスを有し、前記ＳＣＬパスはＳＣＬレベルレジスタによって制御され、前記ＳＤＡパスはＳＤＡレベルレジスタ及びＳＤＡ制御レジスタによって制御され、前記Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行するステップは、
ａ．所定のＩ２Ｃ時間シーケンスに従って、現在の処理及び前記現在の処理に対応するターゲットパスを決定し、前記現在の処理に従って、前記ターゲットパスに対応するレジスタに書き込まれる第１のレジスタ値を決定するステップと、
ｂ．前記ターゲットパスに対応する前記レジスタの現在の第２のレジスタ値を読み込むステップと、
ｃ．前記コンフリクトレジスタの値に対して否定演算が実行された後、第３のレジスタ値を取得するため、前記コンフリクトレジスタの否定された値と前記第１のレジスタ値とに対してＡＮＤ演算を実行し、第４のレジスタ値を取得するため、前記コンフリクトレジスタの値と前記第２のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｄ．第５のレジスタ値を取得するため、前記第３のレジスタ値と前記第４のレジスタ値とに対してＯＲ演算を実行し、前記第５のレジスタ値を前記ターゲットパスに対応するレジスタに書き込むステップであって、前記ターゲットパスは前記Ｍ個のパスのＳＣＬパス又は前記Ｍ個のパスのＳＤＡパスであり、前記ターゲットパスが前記Ｍ個のパスのＳＣＬパスである場合、前記ターゲットパスに対応するレジスタは前記ＳＣＬレベルレジスタであり、前記ターゲットパスが前記Ｍ個のパスのＳＤＡパスである場合、前記ターゲットパスに対応するレジスタは前記ＳＤＡレベルレジスタ又は前記ＳＤＡ制御レジスタである、書き込むステップと、
前記Ｍ個のパスのＳＤＡパスの状態が出力から入力にスイッチされるまで、前記所定のＩ２Ｃ時間シーケンスに従って、ステップａ、ステップｂ、ステップｃ及びステップｄを繰り返し実行するステップと、
ｅ．前記ＳＤＡレベルレジスタの第６のレジスタ値を読み込むステップと、
ｆ．前記第１の所定のアドレスに対応する可用性レジスタの第７のレジスタ値を読み込むステップと、
ｇ．前記コンフリクトレジスタの値に対して否定演算が実行された後、第８のレジスタ値を取得するため、前記コンフリクトレジスタの否定された値と前記第６のレジスタ値とに対してＡＮＤ演算を実行し、第９のレジスタ値を取得するため、前記コンフリクトレジスタの値と前記第７のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｈ．前記第１の所定のアドレスに対応する前記可用性レジスタに書き込まれる第１０のレジスタ値を取得するため、前記第８のレジスタ値と前記第９のレジスタ値とに対してＯＲ演算を実行するステップであって、前記第１０のレジスタ値は、前記Ｍ個の光モジュールケージの第１の所定のアドレスに対して前記プローブが実行された後に取得される前記プローブ結果を示すのに利用される、実行するステップと、
を有する、請求項２又は３記載の方法。
【請求項５】
前記Ｎ個のパスは、Ｎ個のインター・インテグレーティッド・サーキットＩ２Ｃパスであり、各Ｉ２Ｃパスは、シリアルクロックＳＣＬパス及びシリアルデータＳＤＡパスを有し、前記ＳＣＬパスはＳＣＬレベルレジスタによって制御され、前記ＳＤＡパスはＳＤＡレベルレジスタ及びＳＤＡ制御レジスタによって制御され、前記Ｍ個の光モジュールケージの第２の所定のアドレスに対して同時プローブを実行するステップは、
ａ．所定のＩ２Ｃ時間シーケンスに従って、現在の処理及び前記現在の処理に対応するターゲットパスを決定し、前記現在の処理に従って、前記ターゲットパスに対応するレジスタに書き込まれる第１のレジスタ値を決定するステップと、
ｂ．前記ターゲットパスに対応する前記レジスタの現在の第２のレジスタ値を読み込むステップと、
ｃ．前記コンフリクトレジスタの値に対して否定演算が実行された後、第３のレジスタ値を取得するため、前記コンフリクトレジスタの否定された値と前記第１のレジスタ値とに対してＡＮＤ演算を実行し、第４のレジスタ値を取得するため、前記コンフリクトレジスタの値と前記第２のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｄ．第５のレジスタ値を取得するため、前記第３のレジスタ値と前記第４のレジスタ値とに対してＯＲ演算を実行し、前記第５のレジスタ値を前記ターゲットパスに対応するレジスタに書き込むステップであって、前記ターゲットパスは前記Ｍ個のパスのＳＣＬパス又は前記Ｍ個のパスのＳＤＡパスであり、前記ターゲットパスが前記Ｍ個のパスのＳＣＬパスである場合、前記ターゲットパスに対応するレジスタは前記ＳＣＬレベルレジスタであり、前記ターゲットパスが前記Ｍ個のパスのＳＤＡパスである場合、前記ターゲットパスに対応するレジスタは前記ＳＤＡレベルレジスタ又は前記ＳＤＡ制御レジスタである、書き込むステップと、
前記Ｍ個のパスのＳＤＡパスの状態が出力から入力にスイッチされるまで、前記所定のＩ２Ｃ時間シーケンスに従って、ステップａ、ステップｂ、ステップｃ及びステップｄを繰り返し実行するステップと、
ｅ．前記ＳＤＡレベルレジスタの第６のレジスタ値を読み込むステップと、
ｆ．前記第２の所定のアドレスに対応する可用性レジスタの第７のレジスタ値を読み込むステップと、
ｇ．前記コンフリクトレジスタの値に対して否定演算が実行された後、第８のレジスタ値を取得するため、前記コンフリクトレジスタの否定された値と前記第６のレジスタ値とに対してＡＮＤ演算を実行し、第９のレジスタ値を取得するため、前記コンフリクトレジスタの値と前記第７のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｈ．前記第２の所定のアドレスに対応する前記可用性レジスタに書き込まれる第１０のレジスタ値を取得するため、前記第８のレジスタ値と前記第９のレジスタ値とに対してＯＲ演算を実行するステップであって、前記第１０のレジスタ値は、前記Ｍ個の光モジュールケージの第２の所定のアドレスに対して前記プローブが実行された後に取得される前記プローブ結果を示すのに利用される、実行するステップと、
を有する、請求項３記載の方法。
【請求項６】
前記所定のＩ２Ｃ時間シーケンスは、スタート時間シーケンス、アドレスプローブ時間シーケンス及びリード／ライト時間シーケンス、アクノリッジメント時間シーケンス並びにストップ時間シーケンスを順次有し、
前記スタート時間シーケンスにおける処理は、前記ＳＤＡパスのレベルを高レベルに設定すること、前記ＳＣＬパスのレベルを高レベルに設定すること、前記ＳＤＡパスのレベルを低レベルに設定すること、及び前記ＳＣＬパスのレベルを低レベルに設定することを順次有し、
前記アドレスプローブ時間シーケンス及び前記リード／ライト時間シーケンスにおける処理は、前記ＳＤＡパスのレベルを高レベルに設定すること、ステップｉ、ステップｊ及びステップｋをＩ回繰り返し実行すること、及び前記ＳＣＬパスのレベルを低レベルに設定することを順次有し、Ｉは所定値であり、ステップｉ、ステップｊ及びステップｋは、
ステップｉ：前記ＳＣＬパスのレベルを低レベルに設定し、
ステップｊ：前記第１の所定のアドレス又は前記第２の所定のアドレスに従って前記ＳＤＡパスのレベルを設定し、
ステップｋ：前記ＳＣＬパスのレベルを高レベルに設定する、
ことであり、
前記アクノリッジメント時間シーケンスにおける処理は、前記ＳＣＬパスのレベルを高レベルに設定すること、前記ＳＤＡパスを入力状態にスイッチすること、前記第１の所定のアドレス又は前記第２の所定のアドレスに対応する前記可用性レジスタを設定すること、前記ＳＣＬパスのレベルを低レベルに設定すること、及び前記ＳＤＡパスを出力状態にスイッチすることを順次有し、
前記ストップ時間シーケンスにおける処理は、前記ＳＤＡパスのレベルを低レベルに設定すること、前記ＳＣＬパスのレベルを高レベルに設定すること、及び前記ＳＤＡパスのレベルを高レベルに設定することを順次有する、請求項４又は５記載の方法。
【請求項７】
検出装置であって、当該検出装置はＮ個のパスを利用することによってＮ個の光モジュールケージに同時に接続され、当該装置は、
コンフリクトレジスタにアクセスし、前記コンフリクトレジスタの値に従って前記Ｎ個のパスの占有状態を取得するよう構成される読み込みモジュールと、
プローブ結果を取得するため、前記Ｎ個のパスにおけるものであって、占有状態がシステムソフトウェアにより占有されていないＭ個のパスに接続されるＭ個の光モジュールケージに対して同時プローブを実行するよう構成される処理モジュールであって、前記プローブ結果は前記Ｍ個の光モジュールケージの光モジュールの可用性情報及び前記光モジュールのタイプを有し、Ｍ及びＮは共に正の整数であり、ＭはＮ以下である、処理モジュールと、
前記プローブ結果を可用性レジスタに書き込むよう構成される書き込みモジュールであって、前記システムソフトウェアは前記レジスタから前記プローブ結果を取得する、書き込みモジュールと、
を有する検出装置。
【請求項８】
前記処理モジュールは、
前記Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行するよう構成され、
前記Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、何れの光モジュールも前記第１の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、何れの光モジュールも前記何れかの光モジュールケージにおいて利用可能でないと判断され、
光モジュールが前記第１の所定のアドレスにおいて利用可能であるとプローブ処理によって判断された場合、前記何れかの光モジュールケージの第２の所定のアドレスに対してプローブが実行され、
何れの光モジュールも前記第２の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、光モジュールが前記何れかの光モジュールケージにおいて利用可能であると判断され、光モジュールが前記第２の所定のアドレスにおいて利用可能であるとプローブ処理によって判断された場合、コンパクト光モジュールが前記何れかの光モジュールケージにおいて利用可能であると判断される、請求項７記載の検出装置。
【請求項９】
前記処理モジュールは、
前記Ｍ個の光モジュールケージの第１の所定のアドレスに対して同時プローブを実行し、前記Ｍ個の光モジュールケージの第２の所定のアドレスに対して同時プローブを実行するよう構成され、
前記Ｍ個の光モジュールケージにおける何れかの光モジュールケージについて、何れの光モジュールも前記第１の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、何れの光モジュールも前記何れの光モジュールケージにおいて利用可能でないと判断され、光モジュールが前記第１の所定のアドレスにおいて利用可能であり、何れの光モジュールも前記第２の所定のアドレスにおいて利用可能でないとプローブ処理によって判断された場合、光モジュールは前記何れかの光モジュールにおいて利用可能であると判断され、光モジュールが前記第１の所定のアドレスにおいて利用可能であり、光モジュールが前記第２の所定のアドレスにおいて利用可能であるとプローブ処理によって判断された場合、コンパクト光モジュールが前記何れかの光モジュールにおいて利用可能であると判断される、請求項７記載の検出装置。
【請求項１０】
前記Ｎ個のパスは、Ｎ個のインター・インテグレーティッド・サーキットＩ２Ｃパスであり、各Ｉ２Ｃパスは、シリアルクロックＳＣＬパス及びシリアルデータＳＤＡパスを有し、前記ＳＣＬパスはＳＣＬレベルレジスタによって制御され、前記ＳＤＡパスはＳＤＡレベルレジスタ及びＳＤＡ制御レジスタによって制御され、前記処理モジュールは、
ａ．所定のＩ２Ｃ時間シーケンスに従って、現在の処理及び前記現在の処理に対応するターゲットパスを決定し、前記現在の処理に従って、前記ターゲットパスに対応するレジスタに書き込まれる第１のレジスタ値を決定するステップと、
ｂ．前記ターゲットパスに対応する前記レジスタの現在の第２のレジスタ値を読み込むステップと、
ｃ．前記コンフリクトレジスタの値に対して否定演算が実行された後、第３のレジスタ値を取得するため、前記コンフリクトレジスタの否定された値と前記第１のレジスタ値とに対してＡＮＤ演算を実行し、第４のレジスタ値を取得するため、前記コンフリクトレジスタの値と前記第２のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｄ．第５のレジスタ値を取得するため、前記第３のレジスタ値と前記第４のレジスタ値とに対してＯＲ演算を実行し、前記第５のレジスタ値を前記ターゲットパスに対応するレジスタに書き込むステップであって、前記ターゲットパスは前記Ｍ個のパスのＳＣＬパス又は前記Ｍ個のパスのＳＤＡパスであり、前記ターゲットパスが前記Ｍ個のパスのＳＣＬパスである場合、前記ターゲットパスに対応するレジスタは前記ＳＣＬレベルレジスタであり、前記ターゲットパスが前記Ｍ個のパスのＳＤＡパスである場合、前記ターゲットパスに対応するレジスタは前記ＳＤＡレベルレジスタ又は前記ＳＤＡ制御レジスタである、書き込むステップと、
前記Ｍ個のパスのＳＤＡパスの状態が出力から入力にスイッチされるまで、前記所定のＩ２Ｃ時間シーケンスに従って、ステップａ、ステップｂ、ステップｃ及びステップｄを繰り返し実行するステップと、
ｅ．前記ＳＤＡレベルレジスタの第６のレジスタ値を読み込むステップと、
ｆ．前記第１の所定のアドレスに対応する可用性レジスタの第７のレジスタ値を読み込むステップと、
ｇ．前記コンフリクトレジスタの値に対して否定演算が実行された後、第８のレジスタ値を取得するため、前記コンフリクトレジスタの否定された値と前記第６のレジスタ値とに対してＡＮＤ演算を実行し、第９のレジスタ値を取得するため、前記コンフリクトレジスタの値と前記第７のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｈ．前記第１の所定のアドレスに対応する前記可用性レジスタに書き込まれる第１０のレジスタ値を取得するため、前記第８のレジスタ値と前記第９のレジスタ値とに対してＯＲ演算を実行するステップであって、前記第１０のレジスタ値は、前記Ｍ個の光モジュールケージの第１の所定のアドレスに対して前記プローブが実行された後に取得される前記プローブ結果を示すのに利用される、実行するステップと、
を実行するよう構成される、請求項８又は９記載の検出装置。
【請求項１１】
前記Ｎ個のパスは、Ｎ個のインター・インテグレーティッド・サーキットＩ２Ｃパスであり、各Ｉ２Ｃパスは、シリアルクロックＳＣＬパス及びシリアルデータＳＤＡパスを有し、前記ＳＣＬパスはＳＣＬレベルレジスタによって制御され、前記ＳＤＡパスはＳＤＡレベルレジスタ及びＳＤＡ制御レジスタによって制御され、前記処理モジュールは、
ａ．所定のＩ２Ｃ時間シーケンスに従って、現在の処理及び前記現在の処理に対応するターゲットパスを決定し、前記現在の処理に従って、前記ターゲットパスに対応するレジスタに書き込まれる第１のレジスタ値を決定するステップと、
ｂ．前記ターゲットパスに対応する前記レジスタの現在の第２のレジスタ値を読み込むステップと、
ｃ．前記コンフリクトレジスタの値に対して否定演算が実行された後、第３のレジスタ値を取得するため、前記コンフリクトレジスタの否定された値と前記第１のレジスタ値とに対してＡＮＤ演算を実行し、第４のレジスタ値を取得するため、前記コンフリクトレジスタの値と前記第２のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｄ．第５のレジスタ値を取得するため、前記第３のレジスタ値と前記第４のレジスタ値とに対してＯＲ演算を実行し、前記第５のレジスタ値を前記ターゲットパスに対応するレジスタに書き込むステップであって、前記ターゲットパスは前記Ｍ個のパスのＳＣＬパス又は前記Ｍ個のパスのＳＤＡパスであり、前記ターゲットパスが前記Ｍ個のパスのＳＣＬパスである場合、前記ターゲットパスに対応するレジスタは前記ＳＣＬレベルレジスタであり、前記ターゲットパスが前記Ｍ個のパスのＳＤＡパスである場合、前記ターゲットパスに対応するレジスタは前記ＳＤＡレベルレジスタ又は前記ＳＤＡ制御レジスタである、書き込むステップと、
前記Ｍ個のパスのＳＤＡパスの状態が出力から入力にスイッチされるまで、前記所定のＩ２Ｃ時間シーケンスに従って、ステップａ、ステップｂ、ステップｃ及びステップｄを繰り返し実行するステップと、
ｅ．前記ＳＤＡレベルレジスタの第６のレジスタ値を読み込むステップと、
ｆ．前記第２の所定のアドレスに対応する可用性レジスタの第７のレジスタ値を読み込むステップと、
ｇ．前記コンフリクトレジスタの値に対して否定演算が実行された後、第８のレジスタ値を取得するため、前記コンフリクトレジスタの否定された値と前記第６のレジスタ値とに対してＡＮＤ演算を実行し、第９のレジスタ値を取得するため、前記コンフリクトレジスタの値と前記第７のレジスタ値とに対してＡＮＤ演算を実行するステップと、
ｈ．前記第２の所定のアドレスに対応する前記可用性レジスタに書き込まれる第１０のレジスタ値を取得するため、前記第８のレジスタ値と前記第９のレジスタ値とに対してＯＲ演算を実行するステップであって、前記第１０のレジスタ値は、前記Ｍ個の光モジュールケージの第２の所定のアドレスに対して前記プローブが実行された後に取得される前記プローブ結果を示すのに利用される、実行するステップと、
を実行するよう構成される、請求項９記載の検出装置。
【請求項１２】
前記所定のＩ２Ｃ時間シーケンスは、スタート時間シーケンス、アドレスプローブ時間シーケンス及びリード／ライト時間シーケンス、アクノリッジメント時間シーケンス並びにストップ時間シーケンスを順次有し、
前記スタート時間シーケンスにおける処理は、前記ＳＤＡパスのレベルを高レベルに設定すること、前記ＳＣＬパスのレベルを高レベルに設定すること、前記ＳＤＡパスのレベルを低レベルに設定すること、及び前記ＳＣＬパスのレベルを低レベルに設定することを順次有し、
前記アドレスプローブ時間シーケンス及び前記リード／ライト時間シーケンスにおける処理は、前記ＳＤＡパスのレベルを高レベルに設定すること、ステップｉ、ステップｊ及びステップｋをＩ回繰り返し実行すること、及び前記ＳＣＬパスのレベルを低レベルに設定することを順次有し、Ｉは所定値であり、ステップｉ、ステップｊ及びステップｋは、
ステップｉ：前記ＳＣＬパスのレベルを低レベルに設定し、
ステップｊ：前記第１の所定のアドレス又は前記第２の所定のアドレスに従って前記ＳＤＡパスのレベルを設定し、
ステップｋ：前記ＳＣＬパスのレベルを高レベルに設定する、
ことであり、
前記アクノリッジメント時間シーケンスにおける処理は、前記ＳＣＬパスのレベルを高レベルに設定すること、前記ＳＤＡパスを入力状態にスイッチすること、前記第１の所定のアドレス又は前記第２の所定のアドレスに対応する前記可用性レジスタを設定すること、前記ＳＣＬパスのレベルを低レベルに設定すること、及び前記ＳＤＡパスを出力状態にスイッチすることを順次有し、
前記ストップ時間シーケンスにおける処理は、前記ＳＤＡパスのレベルを低レベルに設定すること、前記ＳＣＬパスのレベルを高レベルに設定すること、及び前記ＳＤＡパスのレベルを高レベルに設定することを順次有する、請求項１０又は１１記載の検出装置。
【請求項１３】
ネットワーク装置であって、中央処理ユニットＣＰＵ、複数の光モジュールケージ及び請求項７乃至１２何れか一項記載の検出装置を有し、前記検出装置は、Ｉ２Ｃパスを利用することによって前記ＣＰＵに接続され、１つのＩ２Ｃパスを利用することによって前記複数の光モジュールケージの各光モジュールケージに接続され、
前記検出装置は、前記複数の光モジュールケージに対して同時プローブを実行するよう構成されるネットワーク装置。
【外国語明細書】
2016146621000001.pdf