(57)【特許請求の範囲】
【請求項１】
高速データ信号を受信し、互いに異なる遅延時間を有する複数の遅延データ信号を出力するスキュー調整部、
前記複数の遅延データ信号で開始コードを検出する開始コード検出部、
前記互いに異なる遅延時間毎に正常検出された開始コードの個数に基づいて決定される信号受信品質によりスキュー遅延時間を決定する制御部、および
ＭＩＰＩ（Ｍｏｂｉｌｅ  Ｉｎｄｕｓｔｒｙ  Ｐｒｏｃｅｓｓｏｒ  Ｉｎｔｅｒｆａｃｅ）  Ｄ−ＰＨＹで分離されたＬＰ信号を受信し、受信パケット数をカウントするパケット開始検出部を含む、スキュー遅延補正装置。
【請求項２】
前記スキュー調整部は、
入力信号をΔｔだけ遅延させて出力する複数個のスキュー遅延モジュールを含み、
前記複数個のスキュー遅延モジュールは、直列連結されており、
前記複数個のスキュー遅延モジュールの中でｎ番目のスキュー遅延モジュールは、前記受信された高速データ信号をｎΔｔだけ遅延させて出力する、請求項１に記載のスキュー遅延補正装置。
【請求項３】
前記パケット開始検出部は、前記ＭＩＰＩ  Ｄ−ＰＨＹで分離されたＬＰ信号を受信し、ＬＰ信号状態によってパケットの開始位置を検出して設定された品質評価時間ごとに受信されるパケットの数をカウントし、
前記信号受信品質は、前記正常検出された開始コードの個数および前記品質評価時間ごとに受信されてカウントされた受信パケット数を利用して求められる、請求項１に記載のスキュー遅延補正装置。
【請求項４】
前記スキュー調整部から出力された前記複数の遅延データ信号のうち一つをスキュー制御信号により選択して出力する信号選択部をさらに含む、請求項２に記載のスキュー遅延補正装置。
【請求項５】
前記信号選択部から直列データで出力される遅延データ信号をバイト単位の並列データに変換して出力する直並列変換部をさらに含み、
前記開始コード検出部は、前記直並列変換部から出力されるバイト単位の並列データで開始コードを検出する、請求項４に記載のスキュー遅延補正装置。
【請求項６】
高速データ信号を受信し、互いに異なる遅延時間を有する複数の遅延データ信号を出力するスキュー調整部、
前記複数の遅延データ信号で開始コードを検出する開始コード検出部、
前記互いに異なる遅延時間毎に正常検出された開始コードの個数に基づいて決定される信号受信品質によりスキュー遅延時間を決定する制御部、および
前記スキュー調整部から直列データで出力される前記複数の遅延データ信号の入力をそれぞれ受けてバイト単位の並列データに変換して出力する複数の直並列変換器を含み、
前記開始コード検出部は、前記複数の直並列変換器から出力されるバイト単位の並列データの入力をそれぞれ受けて開始コードを検出する複数の開始コードカウンターを含む、スキュー遅延補正装置。
【請求項７】
前記複数の直並列変換器から出力されるデータ信号の中で一つをスキュー制御信号により選択して出力する信号選択部をさらに含む、請求項６に記載のスキュー遅延補正装置。
【請求項８】
高速データ信号を受信し、互いに異なる遅延時間を有する複数の遅延データ信号を出力するステップ、
前記複数の遅延データ信号で開始コードを検出するステップ、
ＭＩＰＩ（Ｍｏｂｉｌｅ  Ｉｎｄｕｓｔｒｙ  Ｐｒｏｃｅｓｓｏｒ  Ｉｎｔｅｒｆａｃｅ）  Ｄ−ＰＨＹで分離されたＬＰ信号を受信し、受信パケット数をカウントするステップ、および
前記互いに異なる遅延時間毎に正常検出された開始コードの個数に基づいて決定される信号受信品質によりスキュー遅延時間を決定するステップを含む、スキュー遅延補正方法。
【請求項９】
前記複数の遅延データ信号で開始コードを検出するステップは、
（ａ）前記複数の遅延データ信号の中でスキュー制御信号によって前記高速データ信号をＮΔｔだけ遅延させた信号を選択して出力するステップ、
（ｂ）前記ＮΔｔだけ遅延されて出力される直列データ信号を並列データに変換するステップ、および
（ｃ）前記並列データの入力を受けて開始コードを検出するステップを予め定められた評価時間の間繰り返すことをＮは０からｎ（ｎは、自然数）まで順次に遂行する、請求項８に記載のスキュー遅延補正方法。
【請求項１０】
前記ＭＩＰＩ  Ｄ−ＰＨＹで分離されたＬＰ信号を受信し、ＬＰ信号状態によってパケットの開始位置を検出して設定された品質評価時間ごとに受信されるパケットの数をカウントし、
前記信号受信品質は、前記正常検出された開始コードの個数および前記品質評価時間ごとに受信されてカウントされた受信パケット数を利用して求められる、請求項８に記載のスキュー遅延補正方法。
【請求項１１】
高速データ信号を受信し、互いに異なる遅延時間を有する複数の遅延データ信号を出力するステップ、
前記複数の遅延データ信号で開始コードを検出するステップ、および
前記互いに異なる遅延時間毎に正常検出された開始コードの個数に基づいて決定される信号受信品質によりスキュー遅延時間を決定するステップを含み、
前記複数の遅延データ信号で開始コードを検出するステップは、
前記複数の遅延データ信号の入力を受けて直列データ信号を並列データ信号に変換するステップ、
前記変換された並列データ信号で開始コードを検出するステップ、および
開始コードが検出された並列データ信号に対応する遅延時間の開始コード検出個数を増加させるステップを予め定められた時間だけ繰り返して遂行する、スキュー遅延補正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スキュー自動補正方法および装置に関し、さらに詳細には、ＭＩＰＩ  Ｄ−ＰＨＹ受信システムにおいてデータ信号とクロック信号との間のスキューを自動で補正する方法および装置に関する。
【背景技術】
【０００２】
近年、モバイル機器は、速い速度で性能が向上しており、様々な機能と性能の構成要素が結合されるにつれて、これらの間に適切なインターフェースに対する協力が必要となってきている。ＭＩＰＩは、「Ｍｏｂｉｌｅ  Ｉｎｄｕｓｔｒｙ  Ｐｒｏｃｅｓｓｏｒ  Ｉｎｔｅｒｆａｃｅ」の略称であり、モバイル機器を構成するそれぞれの構成要素の間のインターフェースを規定するために設立されている。
【０００３】
ＭＩＰＩでは、モバイル機器の内部デバイス間のインターフェースのためにシリアル方式を主に用いる。シリアル方式を用いてハードウェアの構成を単純化し、高速のインターフェースを可能とするためにディファレンシャルペア方式を利用する。ＭＩＰＩで用いるこのようなディファレンシャルペア方式のシリアルインターフェースは二つあり、Ｄ−ＰＨＹとＭ−ＰＨＹがある。Ｄ−ＰＨＹは、主にカメラやＬＣＤディスプレイのために用いられ、Ｍ−ＰＨＹは、ＷｉＦｉのようなより高速のインターフェースのための用途に用いられる。
【０００４】
図１は、ＭＩＰＩ  Ｄ−ＰＨＹで信号モードを説明するために提供される図であり、図２は、ＭＩＰＩ  Ｄ−ＰＨＹのＡｎａｌｏｇ−ＰＨＹブロックを例示した図である。
【０００５】
図１に例示したように、ＭＩＰＩ  Ｄ−ＰＨＹ仕様では、一つの物理的ラインを用いて、ＬＰ（Ｌｏｗ  Ｐｏｗｅｒ）モードとＨＳ（Ｈｉｇｈ  Ｓｐｅｅｄ  ｄａｔａ）モードの二つのモードが混用され、変更されながら信号が伝送される。
【０００６】
ＭＩＰＩ  Ｄ−ＰＨＹ仕様では、ＬＰ（Ｌｏｗ  Ｐｏｗｅｒ）区間とＨＳ（Ｈｉｇｈ  Ｓｐｅｅｄ  ｄａｔａ）区間が正確に区分されており、図２に例示したように、ＭＩＰＩ  Ｄ−ＰＨＹでは、混合されている信号がそれぞれＬＰ信号とＨＳ信号とに分離される。
【０００７】
ところが、ＭＩＰＩ伝送速度が高くなるにつれ、伝送端での線路長さ、インピーダンスマッチングなどの環境によって、クロックと各データ信号ラインの伝送遅延がそれぞれの信号ごとに一様ではない問題がある。これによって、受信端では、ＭＩＰＩデータを受信するにあたって、誤ったデータを受信する問題が浮上している。
【０００８】
ＭＩＰＩ  Ｄ−ＰＨＹ仕様でＬＰ信号は、スキューを補正する必要なく遅い区間であり、ＬＰ信号の状態によってＨＳ区間の伝送されるパケットデータが始まりか終わりかを正確に確認可能である。これに対し、実際パケットデータが伝送されるＨＳ区間は、高速のパケットデータが伝送される区間であり、クロック信号と各データ信号のスキュー差がある場合、正常なパケットデータで受信不可能であるため、スキュー補正が必ず必要となる。
【０００９】
一般的に、ＭＩＰＩ（Ｍｏｂｉｌｅ  Ｉｎｄｕｓｔｒｙ  Ｐｒｏｃｅｓｓｏｒ  Ｉｎｔｅｒｆａｃｅ）  Ｄ−ＰＨＹ受信システムでは、データ信号とクロック信号との間のスキュー（ＳＫＥＷ）を補正するために、送信端あるいは受信端において手動でそれぞれの信号のスキューを補正する方法を用いている。
【００１０】
ＭＩＰＩ  Ｄ−ＰＨＹ  １．２仕様からは、高速伝送でのこのようなスキュー問題を解決するために、送信端でデスキュー（ＤＥＳＫＥＷ）するためのパターンデータをＭＩＰＩパケットごとに含めて伝送することにより、受信端で該当パターンデータを受信後、評価過程を経てリアルタイムでスキューを自動補正する機能を含んでいる。
【００１１】
しかし、ＭＩＰＩ  Ｄ−ＰＨＹ  １．２のデスキュー機能を支援しないＭＩＰＩシステムでは、スキューを補正することができないか、または手動で補正しなければならない不便さがある。また、送信端でスキューを調整して補正する方法と、受信端でクロック信号やデータ信号のスキューを毎回手動で調整する方法もまた、各伝送信号端によって定義されたスキューステップ数により毎回一ステップずつ調節して毎回受信データの異常有無をチェックしなければならない面倒さがあり、正常なデータを受信するまで相当な時間が必要となる不便さがあった。
【発明の概要】
【発明が解決しようとする課題】
【００１２】
従って、本発明が解決しようとする技術的課題は、ＭＩＰＩ  Ｄ−ＰＨＹ受信システムでデータ信号とクロック信号との間のスキューを自動で補正する方法および装置を提供することである。
【課題を解決するための手段】
【００１３】
上述の技術的課題を解決するための本発明の一実施例に係るスキュー自動補正装置は、高速データ信号を受信し、互いに異なる遅延時間を有する複数の遅延データ信号を出力するスキュー調整部、前記複数の遅延データ信号で開始コードを検出する開始コード検出部、および前記互いに異なる遅延時間毎に正常検出された開始コードの個数に基づいて決定される信号受信品質によりスキュー遅延時間を決定する制御部を含む。
【００１４】
前記装置は、ＭＩＰＩ  Ｄ−ＰＨＹで分離されたＬＰ信号を受信し、受信パケット数をカウントするパケット開始検出部をさらに含むことができる。
【００１５】
前記パケット開始検出部は、ＭＩＰＩ  Ｄ−ＰＨＹで分離されたＬＰ信号を受信し、ＬＰ信号状態によってパケットの開始位置を検出して設定された品質評価時間毎に受信されるパケットの数をカウントし、前記信号受信品質は、前記正常検出された開始コードの個数および前記品質評価時間毎に受信されてカウントされた受信パケット数を利用して求められ得る。
【００１６】
前記スキュー調整部は、入力信号をΔｔだけ遅延させて出力する複数個のスキュー遅延モジュールを含み、前記複数個のスキュー遅延モジュールは、直列連結されており、前記複数個のスキュー遅延モジュールの中でｎ番目のスキュー遅延モジュールは、前記受信された高速データ信号をｎΔｔだけ遅延させて出力することができる。
【００１７】
前記装置は、前記スキュー調整部から出力された前記複数の遅延データ信号のうち一つをスキュー制御信号によって選択して出力する信号選択部をさらに含むことができる。
【００１８】
前記信号選択部から直列データで出力される遅延データ信号をバイト単位の並列データに変換して出力する直並列変換部をさらに含むことができる。
【００１９】
前記開始コード検出部は、前記直並列変換部から出力されるバイト単位の並列データで開始コードを検出することができる。
【００２０】
前記装置は、前記スキュー調整部から直列データで出力される前記複数の遅延データ信号の入力をそれぞれ受けてバイト単位の並列データに変換して出力する複数の直並列変換器をさらに含むことができる。
【００２１】
前記開始コード検出部は、前記複数の直並列変換器から出力されるバイト単位の並列データの入力をそれぞれ受けて開始コードを検出する複数の開始コードカウンターを含むことができる。
【００２２】
前記装置は、前記複数の直並列変換器から出力されるデータ信号の中で一つをスキュー制御信号により選択して出力する信号選択部をさらに含むことができる。
【００２３】
前記制御部は、前記決定されたスキュー遅延時間で得られるパケットデータに対し、ＥＣＣ（Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ  Ｃｏｄｅ）またはＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）検証をすることができる。
【００２４】
上述の技術的課題を解決するための本発明の一実施例に係るスキュー自動補正方法は、高速データ信号を受信し、互いに異なる遅延時間を有する複数の遅延データ信号を出力するステップ、前記複数の遅延データ信号で開始コードを検出するステップ、および前記互いに異なる遅延時間毎に正常検出された開始コードの個数に基づいて決定される信号受信品質によりスキュー遅延時間を決定するステップを含む。
【００２５】
前記方法は、ＭＩＰＩ  Ｄ−ＰＨＹで分離されたＬＰ信号を受信し、受信パケット数をカウントするステップをさらに含むことができる。
【００２６】
前記複数の遅延データ信号で開始コードを検出するステップは、（ａ）前記複数の遅延データ信号の中でスキュー制御信号によって前記高速データ信号をＮΔｔだけ遅延させた信号を選択して出力するステップ、（ｂ）前記ＮΔｔだけ遅延されて出力される直列データ信号を並列データに変換するステップ、および（ｃ）前記並列データの入力を受けて開始コードを検出するステップを予め定められた評価時間の間繰り返すことをＮは０からｎ（ｎは、自然数）まで順次に遂行することができる。
【００２７】
前記複数の遅延データ信号で開始コードを検出するステップは、前記複数の遅延データ信号の入力を受けて直列データ信号を並列データ信号に変換するステップ、前記変換された並列データ信号で開始コードを検出するステップ、および開始コードが検出された並列データ信号に対応する遅延時間の開始コード検出個数を増加させるステップを予め定められた時間だけ繰り返して遂行することができる。
【００２８】
前記方法は、前記決定されたスキュー遅延時間で得られるパケットデータに対し、ＥＣＣ（Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ  Ｃｏｄｅ）またはＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）検証をするステップをさらに含むことができる。
【発明の効果】
【００２９】
本発明によれば、ＭＩＰＩ  Ｄ−ＰＨＹ受信システムでデータ信号とクロック信号との間のスキューを自動で補正することができる。
【図面の簡単な説明】
【００３０】
【図１】ＭＩＰＩ  Ｄ−ＰＨＹで信号モードを説明するために提供される図である。
【図２】ＭＩＰＩ  Ｄ−ＰＨＹのＡｎａｌｏｇ−ＰＨＹブロックを例示した図である。
【図３】ＭＩＰＩパケットの形態を説明するために提供される図である。
【図４】本発明の一実施例に係るスキュー自動補正装置の構成を示したブロック図である。
【図５】本発明の一実施例に係る遅延時間毎に順次に信号受信品質を求めるスキュー自動補正装置を説明するために提供されるブロック図である。
【図６】図５において例示したスキュー自動補正装置の動作を説明するために提供されるフローチャートである。
【図７】本発明の他の実施例に係る各遅延時間に対して同時に信号受信品質を求めるスキュー自動補正装置を説明するために提供されるブロック図である。
【図８】図７において例示したスキュー自動補正装置の動作を説明するために提供されるフローチャートである。
【発明を実施するための形態】
【００３１】
それでは、添付の図面を参考にして、本発明の実施例について、本発明の属する技術の分野における通常の知識を有する者が容易に実施できるように詳細に説明する。
【００３２】
図３は、ＭＩＰＩパケットの形態を説明するために提供される図である。
【００３３】
図３を参考にすると、ＭＩＰＩ信号は、ＬＰＳ（Ｌｏｗ  Ｐｏｗｅｒ  Ｓｔａｔｅ）（低電力状態）とＬＰＳとの間に実際にパケットデータが伝送されるＨＳ区間が位置する。ＭＩＰＩパケットは、３２−ｂｉｔパケットヘッダ（ＰＡＣＫＥＴ  ＨＥＡＤＥＲ）、パケットデータ、１６−ｂｉｔパケットフッタ（ＰＡＣＫＥＴ  ＦＯＯＴＥＲ）からなる場合と、３２−ｂｉｔショットパケット（ＳＨＯＲＴ  ＰＡＣＫＥＴ）の二つの形態に分けられる。二つのパケット形態はいずれもＨＳ区間で開始コードデータ値を有するＳｏＴ（Ｓｔａｒｔ  ｏｆ  Ｔｒａｎｓｍｉｓｓｉｏｎ）（伝送パケットの開始）が常にパケットの開始箇所に位置し、同一のデータ値に伝送される。従って、同一の位置で既知の開始コードデータ値を予測することができる。
【００３４】
また、ＬＰ区間の状態を通して伝送されるパケットの数を正確にカウントすることができる。先に図１に例示したように、ＭＩＰＩ信号は、ＬＰ信号とＨＳ信号が複合された形態で伝送される。そして、図２に例示したように、ＭＩＰＩ  Ｄ−ＰＨＹのＡｎａｌｏｇ−ＰＨＹでＤｐ、ＤｎのＭＩＰＩ信号が受信され、ＬＰデータ信号であるＬＰ＿ＤＡＴＡｐ、ＬＰ＿ＤＡＴＡｎと高速（ＨＳ：Ｈｉｇｈ  Ｓｐｅｅｄ）データ信号であるＨＳ＿ＤＡＴＡとが分離される。
【００３５】
ＨＳ＿ＤＡＴＡ信号は、ＭＩＰＩクロック（Ｃｌｏｃｋ）の一クロックに二つのデータを伝送するデュアルデータレート（Ｄｕａｌ  ｄａｔａ  ｒａｔｅ）伝送方式を有し、ＭＩＰＩクロックは、数百ＭＨｚ以上で動作する。
【００３６】
ＬＰデータ信号は、数ＭＨｚ以下で動作する信号であり、図１での信号波形でＬＰ信号の状態を簡略に見ると、ＬＰ−１１、ＬＰ−０１、ＬＰ−００を繰り返す三つの状態を示すこととなる。
【００３７】
ＬＰ−１１は、ＬＰ区間、即ち、ＨＳデータが伝送されない区間であって、ＬＰ＿ＤＡＴＡｐ、ＬＰ＿ＤＡＴＡｎ信号がそれぞれ「１」（ｈｉｇｈ  ｌｅｖｅｌ）である区間であり、ＳＴＯＰ状態ともいう。ＬＰ−０１は、ＬＰ区間からＨＳ区間への進入を報知する状態であって、ＬＰ＿ＤＡＴＡｐは、「０」（ｌｏｗ  ｌｅｖｅｌ）であり、ＬＰ＿ＤＡＴＡｎは、「１」（ｈｉｇｈ  ｌｅｖｅｌ）である区間である。
【００３８】
ＬＰ−００は、ＨＳデータ伝送区間を報知する状態であって、ＬＰ＿ＤＡＴＡｐ、ＬＰ＿ＤＡＴＡｎ信号がそれぞれ「０」（ｌｏｗ  ｌｅｖｅｌ）である区間である。この区間では、一つのデータパケットが伝送された後にＬＰ−１１、即ち、ＳＴＯＰ状態に変わることとなるので、特定の時間内にデータパケットがいくつ受信されたかを正確に把握することができる。
【００３９】
本発明に係るスキュー自動補正装置は、先に説明したように、ＭＩＰＩ信号でパケットの開始箇所に位置するＳｏＴ（開始コード）とＬＰ区間の状態を通して正確にカウントできる伝送パケット数を活用して自動でスキュー補正をすることができる。
【００４０】
以下において、本発明に係るスキュー自動補正装置についてさらに詳細に説明する。
【００４１】
図４は、本発明の一実施例に係るスキュー自動補正装置の構成を示したブロック図である。
【００４２】
図４を参考にすると、スキュー自動補正装置は、スキュー調整部１１０、直並列変換部１２０、開始コードカウント部１３０、制御部１４０、低速信号受信部１５０、パケット開始検出部１６０およびパケットカウント部１７０を含むことができる。
【００４３】
スキュー調整部１１０は、ＭＩＰＩ信号で分離された高速データ信号ＨＳ＿ＤＡＴＡを遅延ステップ毎に互いに異なる遅延時間を有するようにして出力することができる。このために、スキュー調整部１１０は、入力信号を所定の時間（Δｔ）だけ遅延させて出力する複数個のスキュー遅延モジュール（図示しない）を含むことができる。複数個のスキュー遅延モジュールは、直列連結され得る。高速データ信号ＨＳ＿ＤＡＴＡは、複数個のスキュー遅延モジュールを順次に通過しながらスキュー遅延モジュールを通過する度に遅延時間がΔｔだけ増加されて出力される。
【００４４】
例えば、スキュー調整部１１０がｎ個のスキュー遅延モジュールが直列に連結されていれば、スキュー調整部１１０は、高速データ信号ＨＳ＿ＤＡＴＡの入力を受けて遅延ステップ（Ｎ）（Ｎ＝０、１、２、…、ｎ−１、ｎ）毎に遅延時間がそれぞれ「０」、「Δｔ」、「２Δｔ」、…、「（ｎ−１）Δｔ」、「ｎΔｔ」となるようにして、互いに異なる遅延時間を有するｎ＋１個の遅延データ信号を出力することができる。
【００４５】
直並列変換部１２０は、直列データで入力される遅延データ信号の入力を受けてバイト単位の並列データに変換して出力する。ＭＩＰＩ信号は、１ビット（ｂｉｔ）信号で直列伝送される伝送方式に従うため、バイト（Ｂｙｔｅ）（８ｂｉｔ）単位でデータを処理する必要がある。従って、本発明に係る直並列変換部１２０は、高速データ信号ＨＳ＿ＤＡＴＡを１ビットずつ順次受信し、１バイト単位の並列データに変換する。
【００４６】
開始コードカウント部１３０は、直並列変換部１２０から出力された遅延データ信号によって開始コードを検出することができる。開始コードカウント部１３０は、遅延時間（「０」、「Δｔ」、「２Δｔ」、…、「（ｎ−１）Δｔ」、「ｎΔｔ」）毎に開始コード検出数をカウントすることができる。
【００４７】
例えば、開始コードカウント部１３０は、１バイト単位の並列データからなるパケット前部分で１６進数「Ｂ８」に該当する開始コードが正常に検出されると、開始コードが正常検出された該当遅延データ信号の遅延時間（または該当遅延時間に対応する遅延ステップ）に対して開始コード検出数を増加させる。もちろん、システムで開始コード値が「Ｂ８」とは異に定義された場合、異に定義された開始コード値を検出すればよい。開始コードが検出されないか、またはパケット前部分ではなく他の部分で開始コードが検出されると、開始コード検出が失敗したと処理し、開始コード検出数をカウントしない。
【００４８】
低速信号受信部１５０は、ＭＩＰＩ信号で分離された低速データ信号ＬＰ＿ＤＡＴＡｐ、ＬＰ＿ＤＡＴＡｎを受信し、パケット開始検出部１６０に伝達する。
【００４９】
パケット開始検出部１６０は、ＬＰ−１１、ＬＰ−０１、ＬＰ−００を繰り返す低速データ信号ＬＰ＿ＤＡＴＡｐ、ＬＰ＿ＤＡＴＡｎの三つの状態のうちの特定状態を把握してパケットカウント部１７０に伝達することができる。
【００５０】
パケットカウント部１７０は、パケット開始検出部１６０からＬＰ−１１、ＬＰ−０１、ＬＰ−００の三つの状態のうちの特定状態が伝達される度に受信パケット数をカウントして制御部１４０に伝達することができる。
【００５１】
例えば、パケット開始検出部１６０は、低速データ信号でＬＰ−０１状態が検出される度にパケットカウント部１７０に伝達して受信パケット数をカウントさせることができる。もちろん、実施例によってＬＰ−１１またはＬＰ−００状態が検出される度に受信パケット数をカウントするように具現することも可能である。
【００５２】
制御部１４０は、遅延ステップ毎に開始コード検出数（Ｓ）を受信パケット数（Ｐ）で除した開始コード受信率（Ｓ／Ｐ）を持って信号受信品質を評価することができる。そして、制御部１４０は、最も高い受信率を持つ、即ち、信号受信品質が最も良い遅延ステップに該当する遅延時間をスキュー遅延時間に決定できる。
【００５３】
または、制御部１４０は、遅延ステップ毎に求められた開始コード検出数を比較して最も多くの開始コードが検出された遅延ステップに対応する遅延時間をスキュー遅延時間に決定できる。もちろん、この場合は、遅延ステップ毎に同一の数のパケットを受信する間にカウントされた開始コード検出数を比較する。
【００５４】
実施例に従って開始コード検出数を利用して決定されたスキュー遅延時間を適用して受信されたパケットに対し、二次的にＥＣＣ（Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ  Ｃｏｄｅ）またはＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）などでエラーの有無を評価することにより、先に開始コード検出数に基づいて決定されたスキュー遅延時間を再検証することも可能である。
【００５５】
制御部１４０は、最終的に決定されたスキュー遅延時間にスキュー調整部１１０が設定することにより、自動でスキュー補正をすることができる。
【００５６】
スキュー自動補正装置で遅延ステップ毎に信号受信品質を求める方法は、二つの方法で具現することができる。
【００５７】
第一の方法は、遅延ステップ毎に順次に信号受信品質を求める方法であり、第二の方法は、各遅延ステップに対して同時に並列に信号受信品質を求める方法である。
【００５８】
図５は、本発明の一実施例に係る遅延時間毎に順次に信号受信品質を求めるスキュー自動補正装置を説明するために提供されるブロック図である。
【００５９】
図５を参考にすると、スキュー自動補正装置は、図４において例示した構成要素以外に信号選択部１１５をさらに含むことができる。
【００６０】
スキュー調整部１１０は、複数個のスキュー遅延モジュール１１１＿１、１１１＿２、…、１１１＿ｎ−１、１１１＿ｎを含むことができる。複数個のスキュー遅延モジュール１１１＿１、１１１＿２、…、１１１＿ｎ−１、１１１＿ｎは、直列に連結され得る。
【００６１】
スキュー調整部１１０は、高速データ信号ＨＳ＿ＤＡＴＡを遅延時間なしに直ちに出力するとともに、高速データ信号ＨＳ＿ＤＡＴＡが複数個のスキュー遅延モジュール１１１＿１、１１１＿２、…、１１１＿ｎ−１、１１１＿ｎを順次に通過しながらΔｔだけ遅延時間が増加された遅延データ信号も出力する。ここで、遅延データ信号には、遅延時間「０」（即ち、遅延時間なしに）直ちに出力される高速データ信号ＨＳ＿ＤＡＴＡも含まれる。
【００６２】
信号選択部１１５は、スキュー調整部１１０から出力される複数個の遅延データ信号の中で一つを選択して出力する。より具体的に、信号選択部１１５は、制御部１４０から出力されるスキュー制御信号に対応する遅延ステップの遅延データ信号を選択して出力する。例えば、遅延ステップ「０」に該当するスキュー制御信号が入力されると、信号選択部１１５は、高速データ信号ＨＳ＿ＤＡＴＡを選択して出力させる。そして、遅延ステップ「ｎ」に対応するスキュー制御信号が入力されると、信号選択部１１５は、高速データ信号ＨＳ＿ＤＡＴＡに比べてｎΔｔだけ遅延させてスキュー遅延モジュール１１１＿ｎから出力される信号を選択して出力させることができる。
【００６３】
それでは、図６を参照して図５において例示したスキュー自動補正装置の動作を詳細に説明する。
【００６４】
図６は、図５において例示したスキュー自動補正装置の動作を説明するために提供されるフローチャートである。
【００６５】
先ず、制御部１４０は、スキュー自動補正装置を初期状態に設定する（Ｓ６０５）。受信パケット数（Ｐ）、開始コード検出数（Ｓ）および遅延ステップ設定値（Ｄ）をそれぞれ「０」に設定できる。一方、スキュー自動補正装置には、各遅延ステップ当たりの受信品質評価時間が予め設定されていてもよい。実施例によっては、受信品質評価時間の代わりに受信品質評価パケット数が設定されていてもよい。
【００６６】
以後、スキュー自動補正装置は、ＭＩＰＩ信号を受信すると（Ｓ６１０）、パケットカウント部１７０は、ＭＩＰＩ信号で分離されたＬＰ信号の状態を通して受信パケット数をカウントをする（Ｓ６１５）。ステップ（Ｓ６１５）でＬＰ信号状態が「ＬＰ−０１」であれば、受信パケット数（Ｐ）を「１」増加させることができる。
【００６７】
一方、スキュー調整部１１０から、ＭＩＰＩ信号で分離された高速データ信号ＨＳ＿ＤＡＴＡを受信し、互いに異なる遅延時間（「０」、「Δｔ」、「２Δｔ」、…、「（ｎ−１）Δｔ」、「ｎΔｔ」）を有する複数の遅延データ信号で出力すると、信号選択部１１５は、現在設定されている遅延ステップ設定値（Ｄ）に該当する遅延時間を有する遅延データ信号を選択して出力する（Ｓ６１７）。最初は、遅延ステップ設定値（Ｄ）が「０」に設定されているので、高速データ信号ＨＳ＿ＤＡＴＡが選択されて出力され、遅延ステップ設定値（Ｄ）が一つずつ増加する度にそれに該当する遅延データ信号が選択されて出力されることとなる。
【００６８】
次に、直並列変換部１２０は、信号選択部１１５から出力された遅延データ信号を並列データに変換する（Ｓ６２０）。
【００６９】
以後、開始コードカウント部１３０は、信号選択部１１５から出力された遅延データ信号で開始コードを検出する（Ｓ６２５）。
【００７０】
開始コードが正常に検出されると（Ｓ６２５−Ｙ）、開始コードカウント部１３０は、開始コードカウント（Ｓ）を「１」増加させる（Ｓ６３０）。
【００７１】
次に、ＬＰ信号の状態が「ＬＰ−１１」になると（Ｓ６３５）、制御部１４０は、遅延ステップ当たりに評価時間が到達したか否かを確認する（Ｓ６４０）。該当遅延ステップに対する評価時間が到達していなければ（Ｓ６４０−Ｎ）、ステップ（Ｓ６１０）乃至ステップ（Ｓ６３５）を繰り返す。例えば、評価時間が１０μｓｅｃに設定された場合、該当遅延ステップに対して１０μｓｅｃの間開始コード検出数と受信パケット数をカウントする。遅延ステップ当たりの評価時間は、少なくとも一つのパケットを受信できる時間に設定されなければならない。そして、遅延ステップ当たりの評価時間を長く設定するほど、より多くの受信パケットに対して開始コードを検出するようになるので、信頼度が高くなるが、評価時間が長くなる。一方、遅延ステップ当たりの評価時間を短く設定すると、評価に必要となる総時間が短くなるのに対し、信頼度に劣る問題があるので、必要に応じて適切に設定できる。また、予め設定された数だけパケットが受信されるまで該当遅延ステップに対して開始コード検出数をカウントするように具現することも可能である。例えば、評価パケット数が１０に設定された場合、該当遅延ステップに対してステップ（Ｓ６１０）乃至ステップ（Ｓ６３５）を受信パケット数が１０となるまで繰り返すように具現することもできる。
【００７２】
一方、該当遅延ステップに対する評価時間が到達すると（Ｓ６４０−Ｙ）、制御部１４０は、該当遅延ステップに対して受信パケット数に対する開始コード検出数の割合で信号受信品質評価値を計算することができる（Ｓ６４５）。
【００７３】
次に、制御部１４０は、全体遅延ステップに対する品質評価が完了していない場合（Ｓ６５０−Ｎ）、遅延ステップ設定値（Ｄ）を「１」増加させ、開始コード検出数（Ｓ）と受信パケット数（Ｐ）は、また「０」に変える（Ｓ６５５）。
【００７４】
ステップ（Ｓ６１０）乃至ステップ（Ｓ６５５）を繰り返して全体遅延ステップに対する品質評価が完了すると（Ｓ６５０−Ｙ）、制御部１４０は、受信パケット数に対する開始コード検出数による各遅延ステップに対する信号受信品質評価を通してスキュー遅延時間を決定する（Ｓ６６０）。
【００７５】
次に、実施例によって、ステップ（Ｓ６６０）で決定されたスキュー遅延時間で得られるパケットデータに対して二次的にＥＣＣ（Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ  Ｃｏｄｅ）またはＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）などでエラー有無を評価し、先に開始コード検出数で決定されたスキュー遅延時間を再検証するようにすることも可能である（Ｓ６６５）。
【００７６】
最後に、制御部１４０は、ＥＣＣおよび／またはＣＲＣなどでエラー有無評価まで完了したスキュー遅延時間をスキュー補正部１１０に適用してＭＩＰＩパケットデータを受信する（Ｓ６７０）。
【００７７】
図７は、本発明の他の実施例に係る各遅延時間に対して同時に信号受信品質を求めるスキュー自動補正装置を説明するために提供されるブロック図である。
【００７８】
図７を参考にすると、スキュー自動補正装置は、図４において例示した構成要素以外に信号選択部１１５をさらに含むことができる。
【００７９】
スキュー調整部１１０は、図５に例示したものと同一の構成を有してよい。
【００８０】
直並列変換部１２０は、並列に配置された複数の直並列変換器１２１＿０、１２１＿１、１２１＿２、…、１２１＿ｎ−１、１２１＿ｎを含むことができる。
【００８１】
複数の直並列変換器１２１＿０、１２１＿１、１２１＿２、…、１２１＿ｎ−１、１２１＿ｎは、高速データ信号ＨＳ＿ＤＡＴＡおよび複数個のスキュー遅延モジュール１１１＿１、１１１＿２、…、１１１＿ｎ−１、１１１＿ｎを順次に通過しながらΔｔだけ遅延時間が増加した遅延データ信号の入力をそれぞれ受けて並列データに変換して出力する。
【００８２】
開始コードカウント部１３０は、並列に配置された複数の開始コードカウンター１３１＿０、１３１＿１、１３１＿２、…、１３１＿ｎ−１、１３１＿ｎを含むことができる。
【００８３】
複数の開始コードカウンター１３１＿０、１３１＿１、１３１＿２、…、１３１＿ｎ−１、１３１＿ｎは、複数の直並列変換器１２１＿０、１２１＿１、１２１＿２、…、１２１＿ｎ−１、１２１＿ｎで並列データに変換されて出力される遅延データ信号で開始コードを検出してカウントする。
【００８４】
信号選択部１１５は、制御部１４０でスキュー制御信号の入力を受け、それによるスキュー遅延時間に高速データ信号を遅延させたスキュー補正データ信号を出力する。
【００８５】
図８は、図７において例示したスキュー自動補正装置の動作を説明するために提供されるフローチャートである。
【００８６】
図８を参考にすると、先ず、制御部１４０は、スキュー自動補正装置を初期状態に設定する（Ｓ８０５）。受信パケット数（Ｐ）および各遅延ステップ毎の開始コード検出数（ＳＮ）をそれぞれ「０」に設定できる。一方、スキュー自動補正装置には、受信品質評価時間が予め設定されていてよい。実施例によって、受信品質評価時間の代わりに受信品質評価パケット数が設定されていてもよい。
【００８７】
以後、スキュー自動補正装置は、ＭＩＰＩ信号を受信すると（Ｓ８１０）、パケットカウント部１７０は、ＭＩＰＩ信号で分離されたＬＰ信号の状態を通して受信パケット数に対するカウントをする（Ｓ８１５）。ステップ（Ｓ８１５）でＬＰ信号状態が「ＬＰ−０１」であれば、受信パケット数（Ｐ）を「１」増加させることができる。
【００８８】
一方、スキュー調整部１１０は、ＭＩＰＩ信号で分離された高速データ信号ＨＳ＿ＤＡＴＡを受信し、互いに異なる遅延時間（「０」、「Δｔ」、「２Δｔ」、…、「（ｎ−１）Δｔ」、「ｎΔｔ」）を有する複数の遅延データ信号で出力する（Ｓ８１７）。
【００８９】
次に、複数の直並列変換器１２１＿０、１２１＿１、１２１＿２、…、１２１＿ｎ−１、１２１＿ｎは、スキュー調整部１１０から出力された複数の遅延データ信号をそれぞれ並列データに変換する（Ｓ８２０）。
【００９０】
以後、複数の開始コードカウンター１３１＿０、１３１＿１、１３１＿２、…、１３１＿ｎ−１、１３１＿ｎは、複数の直並列変換器１２１＿０、１２１＿１、１２１＿２、…、１２１＿ｎ−１、１２１＿ｎからそれぞれ出力される複数の遅延データ信号に対して遅延ステップ毎に開始コードを検出する（Ｓ８２５）。
【００９１】
特定遅延ステップに対応する遅延データ信号で開始コードが正常に検出されると、該当遅延ステップに対応する開始コードカウンター１３１＿０、１３１＿１、１３１＿２、…、１３１＿ｎ−１、１３１＿ｎは、開始コードカウント（ＳＮ）を「１」増加させる（Ｓ８３０）。
【００９２】
次に、ＬＰ信号の状態が「ＬＰ−１１」になると（Ｓ８３５）、制御部１４０は、評価時間に到達したか否かを確認する（Ｓ８４０）。評価時間に到達していなければ（Ｓ８４０−Ｎ）、ステップ（Ｓ８１０）乃至ステップ（Ｓ８３５）を繰り返す。例えば、評価時間が１０μｓｅｃに設定された場合、１０μｓｅｃの間、ステップ（Ｓ８１０）乃至ステップ（Ｓ８３５）を繰り返しながら遅延ステップ毎に開始コード検出数をカウントする。一方、予め設定された数だけパケットが受信されるまで遅延ステップ毎に開始コード検出数をカウントするように具現することも可能である。例えば、評価パケット数が１０に設定された場合、ステップ（Ｓ８１０）乃至ステップ（Ｓ８３５）を受信パケット数が１０となるまで繰り返すように具現することができる。
【００９３】
一方、評価時間に到達すると（Ｓ８４０−Ｙ）、制御部１４０は、遅延ステップ毎の開始コード検出数による信号受信品質評価を通してスキュー遅延時間を決定する（Ｓ８４５）。
【００９４】
次に、実施例によって、ステップ（Ｓ８４５）で決定されたスキュー遅延時間で得られるパケットデータに対して二次的にＥＣＣ（Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ  Ｃｏｄｅ）またはＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）などでエラー有無を評価し、先に開始コード検出数で決定されたスキュー遅延時間を再検証するようにすることも可能である（Ｓ８５０）。
【００９５】
最後に、制御部１４０は、ＥＣＣおよび／またはＣＲＣなどでエラー有無評価まで完了したスキュー遅延時間をスキュー補正部１１０に適用してＭＩＰＩパケットデータを受信する（Ｓ８５５）。
【００９６】
本発明の実施例は、様々なコンピュータで具現される動作を遂行するためのプログラム命令を含むコンピュータで読み取ることのできる媒体を含む。この媒体は、先に説明したスキュー自動補正方法を実行させるためのプログラムを記録する。この媒体は、プログラム命令、データファイル、データ構造などを単独で、または組み合わせて含むことができる。このような媒体の例には、ハードディスク、フロッピー（登録商標）ディスクおよび磁気テープのような磁気媒体、ＣＤおよびＤＶＤのような光記録媒体、フロプティカルディスク（ｆｌｏｐｔｉｃａｌ  ｄｉｓｋ）と磁気−光媒体、ロム、ラム、フラッシュメモリなどのようなプログラム命令を格納し、遂行するように構成されたハードウェア装置などがある。または、このような媒体は、プログラム命令、データ構造などを指定する信号を伝送する搬送波を含む光または金属線、導波管などの伝送媒体であってよい。プログラム命令の例には、コンパイラにより作られるような機械語コードだけでなく、インタプリタなどを用いてコンピュータにより実行され得る高級言語コードを含む。
【００９７】
以上において、本発明の実施例を説明したが、本発明の権利範囲は、これに限定されず、本発明の実施例から本発明の属する技術の分野における通常の知識を有する者により容易に変更されて均等なものと認められる範囲の全ての変更および修正を含む。
【図１】
0006507259.tif 000002
【図２】
0006507259.tif 000003
【図３】
0006507259.tif 000004
【図４】
0006507259.tif 000005
【図５】
0006507259.tif 000006
【図６】
0006507259.tif 000007
【図７】
0006507259.tif 000008
【図８】
0006507259.tif 000009