(57)【要約】【課題】データの復元精度を向上させること。【解決手段】受信装置は、複数の受信データと、複数の受信データのそれぞれに対応する複数の前回選択信号に基づいて、複数の受信データから転送データを選択する。復元タイミングはタイミングＤからタイミングＣへ変化しているため、受信装置は、復元タイミングの遷移方向が進角方向に対して逆方向であると判定する。受信装置は、復元タイミングの遷移方向が進角方向に対して逆方向である場合において、復元タイミングの変化の期間が複数のタイミングの発生周期を超えている場合、複数の転送データの有効情報の全てを真値として生成する。復元タイミングでのデータｄ１〜ｄ５，ｄ７，ｄ８，ｄ９に加えて、発生周期を超えていると判断された場合における復元タイミングから発生順序にしたがって発生周期を超えないタイミングで受信したデータｄ６と、が復元対象（○印のデータ）になっている。【選択図】図１
2013141102.tif 000002
【特許請求の範囲】
【請求項１】
データを送信する送信装置に接続される受信装置において、
所定周波数のクロック信号を生成するクロック生成部と、
前記クロック生成部が生成したクロック信号と前記クロック信号を所定の位相進角させた複数のクロック信号を含み、複数のタイミングにそれぞれ対応する複数の進角クロック信号を生成するクロック進角部と、
前記送信装置が送信したデータを前記複数の進角クロック信号を用いて、前記複数のタイミングでそれぞれ受信する受信部と、
前記受信部が受信した複数の受信データの立ち上がりをそれぞれ検出するとともに、前記受信部が受信した複数の受信データの立ち下がりをそれぞれ検出する検出部と、
前記検出部が検出した複数の受信データの立ち上がりと複数の受信データの立ち下がりに基づいて、前記複数のタイミングのうち前記データを復元する復元タイミングを決定する複数の選択信号と、前記複数の選択信号をそれぞれ保持した複数の前回選択信号を生成する決定部と、
前記複数の選択信号と前記複数の前回選択信号に基づいて、前記複数のタイミングにおける復元タイミングの遷移方向を判定する判定部と、
前記複数の受信データと、前記複数の受信データのそれぞれに対応する前記複数の前回選択信号に基づいて、前記複数の受信データから転送データを選択する選択部と、
前記複数の選択信号と前記複数の前回選択信号と判定部が判定した前記遷移方向に基づいて、前記選択部が選択した転送データの有効情報を生成する有効情報生成部と、
を有することを特徴とする受信装置。
【請求項２】
前記有効情報生成部は、
前記遷移方向と、
前記複数のタイミングのうち、前記選択部が前回の転送データの選択に用いた前回選択信号に対応する復元タイミングと、前記選択部が今回の転送データの選択に用いた選択信号に対応する復元タイミングとの期間が、前記複数のタイミングの周期を超えているかに基づいて、前記選択部が選択した転送データの有効情報を生成することを特徴とする請求項１記載の受信装置。
【請求項３】
前記有効情報生成部は、
前記遷移方向が進角方向に対して順方向であり、
前記複数のタイミングのうち、前記選択部が前回の転送データの選択に用いた前回選択信号に対応する復元タイミングと、前記選択部が今回の転送データの選択に用いた選択信号に対応する復元タイミングとの期間が、前記複数のタイミングの周期を超えている場合、前記選択部が選択した複数の転送データの有効情報の全てを偽値として生成することを特徴とする請求項２記載の受信装置。
【請求項４】
前記有効情報生成部は、
前記遷移方向が進角方向に対して逆方向であり、
前記複数のタイミングのうち、前記選択部が前回の転送データの選択に用いた前回選択信号に対応する復元タイミングと、前記選択部が今回の転送データの選択に用いた選択信号に対応する復元タイミングとの期間が、前記複数のタイミングの周期を超えている場合、前記選択部が選択した複数の転送データの有効情報の全てを真値として生成することを特徴とする請求項２記載の受信装置。
【請求項５】
前記有効情報生成部は、
前記複数のタイミングのうち、前記選択部が前回の転送データの選択に用いた前回選択信号に対応する復元タイミングと、前記選択部が今回の転送データの選択に用いた選択信号に対応する復元タイミングとの期間が、前記複数のタイミングの周期を超えている場合、前記選択部が選択した複数の転送データの有効情報のいずれかを真値として生成することを特徴とする請求項２記載の受信装置。
【請求項６】
データを送信する送信装置と、前記送信装置に接続される受信装置を有する送受信システムにおいて、
前記送信装置は、
第１の所定周波数の第１クロック信号を生成する第１クロック生成部と、
前記第１クロック生成部が生成した第１クロック信号に基づき、データを送信する送信部と、を有し、
前記受信装置は、
第２の所定周波数の第２クロック信号を生成する第２クロック生成部と、
前記第２クロック生成部が生成した第２クロック信号と前記第２クロック信号を所定の位相進角させた複数のクロック信号を含み、複数のタイミングにそれぞれ対応する複数の第２進角クロック信号を生成する第２クロック進角部と、
前記データを前記複数の第２進角クロック信号を用いて、前記複数のタイミングでそれぞれ受信する受信部と、
前記受信部が受信した複数の受信データの立ち上がりをそれぞれ検出するとともに、前記受信部が受信した複数の受信データの立ち下がりをそれぞれ検出する検出部と、
前記検出部が検出した複数の受信データの立ち上がりと複数の受信データの立ち下がりに基づいて、前記複数のタイミングのうち前記データを復元する復元タイミングを決定する複数の選択信号と、前記複数の選択信号をそれぞれ保持した複数の前回選択信号を生成する決定部と、
前記複数の選択信号と前記複数の前回選択信号に基づいて、前記複数のタイミングにおける復元タイミングの遷移方向を判定する判定部と、
前記複数の受信データと、前記複数の受信データのそれぞれに対応する前記複数の前回選択信号に基づいて、前記複数の受信データから転送データを選択する選択部と、
前記複数の選択信号と前記複数の前回選択信号と判定部が判定した前記遷移方向に基づいて、前記選択部が選択した転送データの有効情報を生成する有効情報生成部と、を有することを特徴とする送受信システム。
【請求項７】
データを送信する送信装置と、前記送信装置に接続される受信装置を有する送受信システムの制御方法において、
前記送信装置が有する第１クロック生成部が、第１の所定周波数の第１クロック信号を生成し、
前記送信装置が有する送信部が、前記第１クロック生成部が生成した第１クロック信号に基づき、データを送信し、
前記受信装置が有する第２クロック生成部が、第２の所定周波数の第２クロック信号を生成し、
前記受信装置が有する第２クロック進角部が、前記第２クロック生成部が生成した第２クロック信号と前記第２クロック信号を所定の位相進角させた複数のクロック信号を含み、複数のタイミングにそれぞれ対応する複数の第２進角クロック信号を生成し、
前記受信装置が有する受信部が、前記データを前記複数の第２進角クロック信号を用いて、前記複数のタイミングでそれぞれ受信し、
前記受信装置が有する検出部が、前記受信部が受信した複数の受信データの立ち上がりをそれぞれ検出するとともに、前記受信部が受信した複数の受信データの立ち下がりをそれぞれ検出し、
前記受信装置が有する決定部が、前記検出部が検出した複数の受信データの立ち上がりと複数の受信データの立ち下がりに基づいて、前記複数のタイミングのうち前記データを復元する復元タイミングを決定する複数の選択信号と、前記複数の選択信号をそれぞれ保持した複数の前回選択信号を生成し、
前記受信装置が有する判定部が、前記複数の選択信号と前記複数の前回選択信号に基づいて、前記複数のタイミングにおける復元タイミングの遷移方向を判定し、
前記受信装置が有する選択部が、前記複数の受信データと、前記複数の受信データのそれぞれに対応する前記複数の前回選択信号に基づいて、前記複数の受信データから転送データを選択し、
前記受信装置が有する有効情報生成部が、前記複数の選択信号と前記複数の前回選択信号と判定部が判定した前記遷移方向に基づいて、前記選択部が選択した転送データの有効情報を生成することを特徴とする送受信システムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、受信装置、送受信システム、および復元方法に関する。
【背景技術】
【０００２】
従来、受信装置が、送信装置が送信したデータ列であるシリアルデータを受信する際、受信装置と送信装置とのクロック周波数が異なるため、データを受信できない場合又は同一データを複数回受信してしまうことにより結果としてデータを正しく受信できない場合がある。そこで、受信装置が、送信装置が送信したデータを正しく受信するために、データを復元する技術が知られている。
【０００３】
関連する技術としては、たとえば、受信装置が、データ列をクロックから生成した複数のタイミングに基づいて受信し、複数のタイミングで受信したデータを復元する復元タイミングを動的に決定する。その際に、連続的な復元タイミングの変化が受信装置に供給されるクロックの１周期を超える場合に、受信装置が、復元対象のデータの追加や復元対象のデータ群からのデータの削除を行う技術が知られている（たとえば、下記非特許文献１を参照。）。
【０００４】
また、関連する技術としては、受信装置が、送信装置が送信したデータ列に同期したクロックを生成することで、データを復元する技術が知られている（たとえば、下記特許文献１参照。）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−８０７９２号公報
【非特許文献】
【０００６】
【非特許文献１】「データの復元  著者：Ｎｉｃｋ  Ｓａｗｙｅｒ」、Ｘｉｌｉｎｘ、ＸＡＰＰ２４４（ｖ２．２）、２００２年８月７日、ｐ１〜ｐ６
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、受信装置が受信したデータを復元するタイミングを動的に決定する場合において、送信装置から送信されてくるデータの変化が発生する頻度が少ないと、復元タイミングが離散的に変化してしまう。そのため、依然として、復元するデータが欠落したり同一データを複数回復元したりしてしまい、データの復元精度が低下してしまうという問題が発生してしまう。
【０００８】
１つの側面では、本発明は、データの復元精度を向上できる受信装置、送受信システム、および復元方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一の側面によれば、所定周波数のクロック信号を生成するクロック生成部と、前記クロック生成部が生成したクロック信号と前記クロック信号を所定の位相進角させた複数のクロック信号を含み、複数のタイミングにそれぞれ対応する複数の進角クロック信号を生成するクロック進角部と、送信装置が送信したデータを前記複数の進角クロック信号を用いて、前記複数のタイミングでそれぞれ受信する受信部と、前記受信部が受信した複数の受信データの立ち上がりをそれぞれ検出するとともに、前記受信部が受信した複数の受信データの立ち下がりをそれぞれ検出する検出部と、前記検出部が検出した複数の受信データの立ち上がりと複数の受信データの立ち下がりに基づいて、前記複数のタイミングのうち前記データを復元する復元タイミングを決定する複数の選択信号と、前記複数の選択信号をそれぞれ保持した複数の前回選択信号を生成する決定部と、前記複数の選択信号と前記複数の前回選択信号に基づいて、前記複数のタイミングにおける復元タイミングの遷移方向を判定する判定部と、前記複数の受信データと、前記複数の受信データのそれぞれに対応する前記複数の前回選択信号に基づいて、前記複数の受信データから転送データを選択する選択部と、前記複数の選択信号と前記複数の前回選択信号と判定部が判定した前記遷移方向に基づいて、前記選択部が選択した転送データの有効情報を生成する有効情報生成部と、を有する受信装置、送受信システム、および復元方法が提案される。
【発明の効果】
【００１０】
本発明の一態様によれば、データの復元精度を向上できるという効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】図１は、本発明にかかる受信装置によるデータの復元例１を示す説明図である。
【図２】図２は、本発明にかかる受信装置によるデータの復元例２を示す説明図である。
【図３】図３は、送受信システムの一例を示す説明図である。
【図４】図４は、データリカバリ部３２３の詳細例を示す説明図である。
【図５】図５は、受信部４０１の一例を示す説明図である。
【図６】図６は、検出部４０２の詳細例を示す説明図（その１）である。
【図７】図７は、検出部４０２の詳細例を示す説明図（その２）である。
【図８】図８は、決定部４０３の一例を示す説明図である。
【図９】図９は、判定部４０４の詳細を示す説明図である。
【図１０】図１０は、信号ＤＶＡＬＩＤによる信号ＳＤＡＴＡの選択方法を示す説明図である。
【図１１】図１１は、有効情報生成部４０５の詳細例を示す説明図である。
【図１２】図１２は、選択部４０６の一例を示す説明図である。
【図１３】図１３は、タイミングＡからタイミングＣへの変化例を示す説明図である。
【図１４】図１４は、タイミングＣからタイミングＡへの変化例を示す説明図である。
【図１５】図１５は、タイミングＡからタイミングＤへの変化例を示す説明図である。
【図１６】図１６は、タイミングＤからタイミングＡへの変化例を示す説明図である。
【図１７】図１７は、デシリアライザ３２４による動作例１を示す説明図である。
【図１８】図１８は、デシリアライザ３２４による動作例２を示す説明図である。
【図１９】図１９は、タイミング数がＮの場合における判定部４０４の一例を示す説明図である。
【図２０】図２０は、タイミング数がＮの場合における有効情報生成部４０５の一例を示す説明図である。
【発明を実施するための形態】
【００１２】
本発明にかかる受信装置、送受信システム、および復元方法の実施の形態の詳細な説明に先立って、理解の容易化のために、データの復元について説明する。データの復元とは、送信装置に供給されるクロック（送信ＣＬＫ、またはＣＬＫ１）と異なるクロック（受信ＣＬＫ、またはＣＬＫ２）が供給される受信装置が、送信装置から送信されたシリアルデータを正しく受信するための手法である。受信装置は、送信装置から受信したシリアルデータを復元するタイミングを動的に決定する。
【００１３】
本実施の形態では、たとえば、受信装置が信号ＣＬＫ２の１周期を、たとえば、４分割したタイミングのいずれかのタイミングで受信したデータを復元対象にする。信号ＣＬＫ２の立ち上がりのタイミングをタイミングＡと称し、信号ＣＬＫ２の立ち上がりに対して９０度位相がずれたクロックの立ち上がりのタイミングをタイミングＢと称する。信号ＣＬＫ２の立ち下がりのタイミングをタイミングＣと称し、信号ＣＬＫ２の立ち下がりに対して９０度位相がずれたクロックの立ち下がりのタイミングをタイミングＤと称する。よって、タイミングＡ〜タイミングＤの発生周期は、信号ＣＬＫ２の１周期とそれぞれ同一である。
【００１４】
図１は、本発明にかかる受信装置によるデータの復元例１を示す説明図である。タイミングチャート１００では、信号ＤＡＴＡと、信号ＤＡＴＡ−Ａと、信号ＤＡＴＡ−Ｂと、信号ＤＡＴＡ−Ｃと、信号ＤＡＴＡ−Ｄと、を示している。信号ＤＡＴＡでは、送信装置から送信されてくるデータ列を示している。データｄ１〜データｄ１０は、データ列に含まれる各データである。信号ＤＡＴＡ−Ａでは、タイミングＡで受信したデータを示している。信号ＤＡＴＡ−Ｂでは、タイミングＢで受信したデータを示している。信号ＤＡＴＡ−Ｃでは、タイミングＣで受信したデータを示している。信号ＤＡＴＡ−Ｄでは、タイミングＤで受信したデータを示している。理解の容易化のために、各データについて、データｄ１〜データｄ１０を付しているが、受信装置は、データｄ１〜データｄ１０のいずれであるかを判断することなく、単に各タイミングで信号ＤＡＴＡの値を受信している。
【００１５】
さらに、タイミングチャート１００では、エッジ検出タイミングと、復元タイミングと、を示している。エッジ検出タイミングとは、信号ＤＡＴＡの値の変化が発生したタイミングである。たとえば、データｄ１とデータｄ２の値が異なるため、信号ＤＡＴＡの値に立ち上がりまたは立ち下がりの変化が発生する。データｄ１からデータｄ２への変化は、タイミングＤとタイミングＡとの間で発生しているため、エッジ検出タイミングは、タイミングＡになる。エッジ検出タイミングは、上向きの矢印で示している。復元タイミングは複数のタイミングから選択されたタイミングであり、復元タイミングで受信したデータが復元対象である。タイミングチャート１００において○印の付された受信データは、復元タイミングで受信したデータであり、復元対象である。
【００１６】
受信装置は、送信装置が送信したデータを複数のタイミングでそれぞれ受信する。複数のタイミングとは、タイミングＡ〜Ｄである。受信装置は、複数のタイミングで受信したデータに基づいて、複数のタイミングからエッジ検出タイミングを検出する。エッジ検出タイミングの検出方法については、従来と同一の方法を用いてもよいため、詳細な説明は図３〜図１２、図１９および図２０を用いて後述する。
【００１７】
そして、受信装置は、エッジ検出タイミングに基づいて、複数のタイミングから復元タイミングを決定する。具体的には、受信装置は、復元タイミングを決定する複数の選択信号と、複数の選択信号をそれぞれ保持した複数の前回選択信号を生成する。復元タイミングの決定方法については、従来と同一の方法を用いてもよいため、詳細な説明は図３〜図１２、図１９および図２０を用いて後述する。
【００１８】
受信装置は、複数の受信データと、複数の受信データのそれぞれに対応する複数の前回選択信号に基づいて、複数の受信データから転送データを選択する。
【００１９】
受信装置は、複数の選択信号と複数の前回選択信号に基づいて、複数のタイミングにおける復元タイミングの遷移方向を判定する。たとえば、受信装置は、復元タイミングの変化が連続的な場合に、復元タイミングの遷移方向を判定することができる。
【００２０】
たとえば、受信装置が、タイミングＡからタイミングＢへの復元タイミングの変化を検出することにより、復元タイミングの遷移方向は受信ＣＬＫの位相が進角する進角方向に対して順方向であると判断する。複数の選択信号のうち、イネーブルとなっている選択信号が示すタイミングがタイミングＡであり、複数の前回選択信号のうち、イネーブルとなっている前回選択信号が示すタイミングがタイミングＢであれば、タイミングＡからタイミングＢへの復元タイミングの変化が検出される。タイミングＡからタイミングＤの順序（Ａ→Ｂ→Ｃ→Ｄ→Ａ・・・・）であり、受信ＣＬＫの位相が進角する順序を複数のタイミングの発生順序と称する。よって、進角方向に対して順方向とは、タイミングＡからタイミングＢ、タイミングＢからタイミングＣ、タイミングＣからタイミングＤ、タイミングＤからタイミングＡのように複数のタイミングの発生順序にしたがう方向である。
【００２１】
たとえば、受信装置は、タイミングＢからタイミングＡへの復元タイミングの変化を検出することにより、復元タイミングの遷移方向は進角方向に対して逆方向であると判定する。進角方向に対して逆方向とは、タイミングＡからタイミングＤ、タイミングＤからタイミングＣ、タイミングＣからタイミングＢ、タイミングＢからタイミングＡのような複数のタイミングの発生順序にしたがわない方向である。
【００２２】
また、たとえば、復元タイミングの変化が発生順序にしたがっている場合、信号ＣＬＫ２の周波数が信号ＣＬＫ１の周波数よりも高い。たとえば、復元タイミングの変化が、発生順序にしたがっていない場合、信号ＣＬＫ１の周波数が信号ＣＬＫ２の周波数よりも高い。
【００２３】
図１の例では、復元タイミングはタイミングＤからタイミングＣへ変化しているため、受信装置は、復元タイミングの遷移方向が進角方向に対して逆方向であると判定する。
【００２４】
そして、受信装置は、復元タイミングの遷移方向が進角方向に対して逆方向である場合において、復元タイミングがタイミングＡからタイミングＣに変化すると、復元タイミングの変化の期間が複数のタイミングの発生周期を超えていると判断する。図１中において点線の四角で囲われている箇所が、タイミングＡからタイミングＣへの復元タイミングの変化である。
【００２５】
そして、受信装置は、複数の選択信号と複数の前回選択信号と復元タイミングの遷移方向に基づいて、転送データの有効情報を生成する。図１の例では、受信装置は、復元タイミングの遷移方向が進角方向に対して逆方向であり、復元タイミングの変化の期間が複数のタイミングの発生周期を超えている場合、複数の転送データの有効情報の全てを真値として生成する
【００２６】
図１において、○印のデータが復元対象である。復元タイミングでのデータｄ１〜ｄ５，ｄ７，ｄ８，ｄ９に加えて、発生周期を超えていると判断された場合における復元タイミングから発生順序にしたがって発生周期を超えないタイミングで受信したデータｄ６と、が復元対象になっている。
【００２７】
また、図１で示していないが、受信装置は、発生順序にしたがっていない場合において、復元タイミングがタイミングＢからタイミングＤに変化した場合、復元タイミングの変化の期間が、複数のタイミングの発生周期を超えていると判断する。または、図１で示していないが、受信装置は、復元タイミングがタイミングＡからタイミングＤに変化した場合、復元タイミングの変化の期間が複数のタイミングの発生周期を超えていると判断する。
【００２８】
復元タイミングで受信したデータ群のデータは、ＤＡＴＡ−Ｄのデータｄ１と、ＤＡＴＡ−Ｃのデータｄ２と、ＤＡＴＡ−Ｂのデータｄ３と、ＤＡＴＡ−Ａのデータｄ４と、ＤＡＴＡ−Ａのデータｄ５と、である。さらに、復元タイミングで受信したデータ群のデータは、ＤＡＴＡ−Ｃのデータｄ７と、ＤＡＴＡ−Ｂのデータｄ８と、ＤＡＴＡ−Ａのデータｄ９と、である。上述したように、タイミングＡからタイミングＣの変化が、複数のタイミングの発生周期を超えると判断されたため、タイミングＡから発生順序にしたがって発生周期を超えないタイミングで受信したデータは、ＤＡＴＡ−Ｄのデータｄ６（＝データｄ５）やＤＡＴＡ−Ｃのデータｄ６（＝データｄ５）が挙げられる。ここでは、タイミングＡで受信したデータのつぎのデータとなる可能性が高くなるため、タイミングＡから発生順序にしたがって、２タイミング程度離れているタイミングＣやタイミングＤでのデータを復元対象にしている。
【００２９】
図１の例によれば、復元データの欠落を防ぐことができる。したがって、復元精度を向上させることができる。
【００３０】
図２は、本発明にかかる受信装置によるデータの復元例２を示す説明図である。タイミングチャート２００では、タイミングチャート１００と同様に、信号ＤＡＴＡと、信号ＤＡＴＡ−Ａと、信号ＤＡＴＡ−Ｂと、信号ＤＡＴＡ−Ｃと、信号ＤＡＴＡ−Ｄと、エッジ検出タイミングと、復元タイミングと、を示している。
【００３１】
図２の例では、復元タイミングはタイミングＡからタイミングＢへ変化しているため、受信装置は、復元タイミングの遷移方向が進角方向に対して順方向であると判定する。
【００３２】
そして、受信装置は、復元タイミングの遷移方向が進角方向に対して順方向である場合において、復元タイミングがタイミングＣからタイミングＡに変化すると、復元タイミングの変化の期間が複数のタイミングの発生周期を超えていると判断する。図２中において点線の四角で囲われている箇所が、タイミングＣからタイミングＡへの復元タイミングの変化である。
【００３３】
そして、受信装置は、複数の選択信号と複数の前回選択信号と復元タイミングの遷移方向に基づいて、転送データの有効情報を生成する。図２の例では、受信装置は、復元タイミングの遷移方向が進角方向に対して順方向であり、復元タイミングの変化の期間が複数のタイミングの発生周期を超えている場合、複数の転送データの有効情報の全てを偽値として生成する
【００３４】
図２において、○印のデータが復元対象である。復元タイミングでのデータから、復元タイミングの変化の期間が複数のタイミングの発生周期を超えている場合における変化前の復元タイミングまたは変化後の復元タイミングのいずれか一方の復元タイミングにおける復元対象となるデータが除かれている。
【００３５】
復元タイミングで受信したデータ群は、ＤＡＴＡ−Ａのデータｄ１と、ＤＡＴＡ−Ｂのデータｄ２と、ＤＡＴＡ−Ｃのデータｄ３と、ＤＡＴＡ−Ｃのデータｄ４と、である。さらに、復元タイミングで受信したデータは、ＤＡＴＣ−Ｃのデータｄ５と、ＤＡＴＡ−Ａのデータｄ５と、ＤＡＴＡ−Ｂのデータｄ６と、ＤＡＴＡ−Ｂのデータｄ７と、ＤＡＴＡ−Ｃのデータｄ８と、である。第１の復元タイミングで受信したデータは、ＤＡＴＣ−Ｃのデータｄ５であり、第２の復元タイミングで受信したデータは、ＤＡＴＡ−Ａのデータｄ５である。そのため、データｄ５が重複して復元対象になってしまうため、図２の例では、受信装置が、復元タイミングで受信したデータ群からＤＡＴＣ−Ｃのデータｄ５を除いたデータ群を復元対象にする。
【００３６】
図２の例によれば、同一データを重複して復元するのを防ぐことができる。したがって、復元精度を向上させることができる。
【００３７】
（送受信システム）
図３は、送受信システムの一例を示す説明図である。送受信システム３００は、送信装置３０１と、受信装置３０２と、を有している。送信装置３０１は、送信側クロックジェネレータ３１１と、シリアライザ３１２と、を有している。
【００３８】
送信側クロックジェネレータ３１１は、シリアライザ３１２へ信号ＣＬＫ１を供給するＰＬＬ（Ｐｈａｓｅ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）回路等のクロック発生回路である。シリアライザ３１２は、信号ＣＬＫ１の立ち上がりエッジに応じて、パラレルデータからシリアルデータに変換されたＤＡＴＡを受信装置３０２に送信する送信部である。
【００３９】
受信装置３０２は、受信側クロックジェネレータ３２１と、ＤＬＬ３２２と、データリカバリ部３２３と、デシリアライザ３２４と、を有している。
【００４０】
受信側クロックジェネレータ３２１は、所定周波数のクロック信号を生成するクロック生成部である。たとえば、受信側クロックジェネレータ３２１は、ＤＬＬ３２２とデシリアライザ３２４へ信号ＣＬＫ２を供給するクロックを発生するＰＬＬ（Ｐｈａｓｅ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）回路等のクロック発生回路である。
【００４１】
ＤＬＬ（Ｄｅｌａｙ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）３２２は、受信側クロックジェネレータ３２１が生成した信号ＣＬＫ２と信号ＣＬＫ２を所定の位相進角させた信号ＣＬＫ２−０と信号ＣＬＫ２−９０を含み、複数のタイミングにそれぞれ対応する複数の進角クロック信号を生成するクロック進角部である。複数のタイミングとは、上述したタイミングＡ〜タイミングＤである。たとえば、ＤＬＬ（Ｄｅｌａｙ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）３２２は、受信側クロックジェネレータ３２１が発生した信号ＣＬＫ２に基づき、信号ＣＬＫ２の位相を遅延しない信号ＣＬＫ２−０と、信号ＣＬＫ２の位相を９０度進角させた信号ＣＬＫ２−９０と、をデータリカバリ部３２３へ供給する遅延回路である。
【００４２】
データリカバリ部３２３の詳細は、図４を用いて後述する。デシリアライザ３２４は、信号ＤＶＡＬＩＤの値に基づいて、信号ＳＤＡＴＡから、送信装置が送信したデータ群を復元する。デシリアライザ３２４によるデータの復元例は、図１８を用いて後述する。また、ここでは、復元タイミングの変化が離散的であっても、復元タイミングの変化において２以上のタイミングが飛ばされないことを前提としている。
【００４３】
また、実施の形態では、データリカバリ部３２３が、復元タイミングの変化が発生順序にしたがわない場合におけるデータの欠落を防ぐ機能と、発生順序にしたがう場合におけるデータの重複を防ぐ機能と、の両方の機能を実現した回路を有する。これに限らず、たとえば、受信クロックと送信クロックの周波数関係があらかじめ明確であれば、データリカバリ部３２３は、２つの機能のうちのいずれか一方の機能を実現した回路を有していればよい。
【００４４】
図４は、データリカバリ部３２３の詳細例を示す説明図である。データリカバリ部３２３は、受信部４０１と、検出部４０２と、決定部４０３と、判定部４０４と、選択部４０６と、有効情報生成部４０５と、を有している。各部は、たとえば、論理積回路であるＡＮＤ、否定論理回路であるＩＮＶＥＲＴＥＲ、論理和回路であるＯＲや、ラッチ回路であるＦＦ（Ｆｌｉｐ  Ｆｌｏｐ）などの素子によって形成される。または、各部は、たとえば、Ｖｅｒｉｌｏｇ−ＨＤＬ（Ｈａｒｄｗａｒｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）などの記述によって機能定義し、その記述を論理合成してＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）によって実現させてもよい。
【００４５】
図５は、受信部４０１の一例を示す説明図である。受信部４０１は、信号ＣＬＫ２−０と信号ＣＬＫ−９０を用いて、複数のタイミングでそれぞれ受信する。上述したように、複数のタイミングは、タイミングＡ〜タイミングＤである。具体的には、たとえば、受信部４０１は、信号ＣＬＫ２−０の立ち上がりタイミングと、信号ＣＬＫ２−０の立ち下がりタイミングと、信号ＣＬＫ２−９０の立ち上がりタイミングと、信号ＣＬＫ２−９０の立ち下がりタイミングと、でＤＡＴＡを受信する。たとえば、受信部４０１は、ＦＦ５００−Ａ〜５００−Ｄと、ＦＦ５０１−Ａ〜５０１−Ｄと、ＦＦ５０２−Ａ〜５０２−Ｄと、ＦＦ５０３−Ａ〜５０３−Ｄと、ＩＮＶＥＲＴＥＲ５０４〜５０６と、を有している。受信部４０１は、メタステーブル状態を回避し、異なるタイミングで取り込んだデータを同一のタイムドメインに移行させるため、４段階に分けてクロックが供給される。
【００４６】
受信部４０１は、ＦＦ５００−Ａによって、信号ＣＬＫ２−０の立ち上がりタイミングでＤＡＴＡを受信し、ＦＦ５０１−Ａから５０３−Ａによって、受信したＤＡＴＡを信号ＣＬＫ２−０の立ち上がりタイミングで転送する。ＦＦ５０２−Ａの出力信号が信号ＡＺ２であり、ＦＦ５０３−Ａの出力信号が信号ＡＺ３である。信号ＡＺ３の値が、ＤＡＴＡを信号ＣＬＫ２−０の立ち上がりタイミングで受信したデータである。
【００４７】
ＦＦ５００−ＡからＦＦ５０３−Ａには、クロック信号として信号ＣＬＫ２−０が入力される。ＦＦ５００−Ａには、データ信号としてＤＡＴＡが入力される。ＦＦ５０１−Ａには、データ信号としてＦＦ５００−Ａの出力信号が入力される。ＦＦ５０２−Ａには、データ信号としてＦＦ５０１−Ａの出力信号が入力される。ＦＦ５０３−Ａには、データ信号としてＦＦ５０２−Ａの出力信号が入力される。
【００４８】
受信部４０１は、ＦＦ５００−Ｂによって、信号ＣＬＫ２−９０の立ち上がりタイミングでＤＡＴＡを受信し、ＦＦ５０１−Ｂ〜５０３−Ｂによって、ＦＦ５００−Ｂで受信したＤＡＴＡを信号ＣＬＫ２−０の立ち上がりタイミングで転送する。ＦＦ５０２−Ｂの出力信号が信号ＢＺ２であり、ＦＦ５０３−Ｂの出力信号が信号ＢＺ３である。信号ＢＺ３の値が、ＤＡＴＡを信号ＣＬＫ２−９０の立ち上がりタイミングで受信したデータである。
【００４９】
ＦＦ５００−Ｂには、クロック信号として信号ＣＬＫ２−９０が入力される。ＦＦ５０１−ＢとＦＦ５０２−ＢとＦＦ５０３−Ｂには、クロック信号として信号ＣＬＫ２−０が入力される。ＦＦ５００−Ｂには、データ信号としてＤＡＴＡが入力される。ＦＦ５０１−Ｂには、データ信号としてＦＦ５００−Ｂが入力される。ＦＦ５０２−Ｂには、データ信号としてＦＦ５０１−Ｂが入力される。ＦＦ５０３−Ｂには、データ信号としてＦＦ５０２−Ｂが入力される。
【００５０】
受信部４０１は、ＦＦ５００−Ｃによって、信号ＣＬＫ２−０の立ち下がりタイミングでＤＡＴＡを受信し、ＦＦ５０１−Ｃによって、受信したＤＡＴＡを信号ＣＬＫ２−９０の立ち上がりタイミングで転送する。そして、受信部４０１は、ＦＦ５０２−ＣとＦＦ５０３−Ｃによって、信号ＣＬＫ２−０の立ち上がりタイミングで転送する。ＦＦ５０２−Ｃの出力信号が信号ＣＺ２であり、ＦＦ５０３−Ｃの出力信号が信号ＣＺ３である。信号ＣＺ３の値が、ＤＡＴＡを信号ＣＬＫ２−０の立ち下がりタイミングで受信したデータである。
【００５１】
ＩＮＶＥＲＴＥＲ５０４には、信号ＣＬＫ２−０が入力される。ＦＦ５００−Ｃには、クロック信号としてＩＮＶＥＲＴＥＲ５０４の出力信号が入力される。ＦＦ５０１−ＣとＦＦ５０２−Ｃとは、クロック信号としてＣＬＬ２ー９０が入力される。ＦＦ５０３−Ｃには、クロック信号として信号ＣＬＫ２−０が入力される。ＦＦ５００−Ｃには、データ信号としてＤＡＴＡが入力される。ＦＦ５０１−Ｃには、データ信号としてＦＦ５００−Ｃの出力信号が入力される。ＦＦ５０２−Ｃには、データ信号としてＦＦ５０１−Ｃの出力信号が入力される。ＦＦ５０３−Ｃには、データ信号としてＦＦ５０２−Ｃの出力信号が入力される。
【００５２】
受信部４０１は、ＦＦ５００−Ｄによって、信号ＣＬＫ２−９０の立ち下がりタイミングでＤＡＴＡを受信し、ＦＦ５０１−Ｃによって、受信したＤＡＴＡを信号ＣＬＫ２−０の立ち上がりタイミングで転送する。そして、受信部４０１は、ＦＦ５０２−Ｃによって、信号ＣＬＫ２−９０の立ち上がりタイミングで転送し、ＦＦ５０３−Ｃによって、信号ＣＬＫ２−０の立ち上がりタイミングで転送する。ＦＦ５０２−Ｃの出力信号が信号ＣＺ２であり、ＦＦ５０３−Ｃの出力信号が信号ＤＺ３である。信号ＤＺ３の値が、信号ＣＬＫ２−９０の立ち下がりタイミングで受信したＤＡＴＡである。
【００５３】
ＩＮＶＥＲＴＥＲ５０５には、信号ＣＬＫ２−９０が入力される。ＩＮＶＥＲＴＥＲ５０６には、信号ＣＬＫ２−０が入力される。ＦＦ５００−Ｄには、クロック信号としてＩＮＶＥＲＴＥＲ５０５の出力信号が入力される。ＦＦ５０１−Ｄには、クロック信号としてＩＮＶＥＲＴＥＲ５０６の出力信号が入力される。ＦＦ５０２−Ｄには、クロック信号としてＣＬＫ２−９０が入力される。ＦＦ５０３−Ｄには、クロック信号として信号ＣＬＫ２−０が入力される。ＦＦ５００−Ｄには、データ信号としてＤＡＴＡが入力される。ＦＦ５０１−Ｄには、データ信号としてＦＦ５００−Ｄの出力信号が入力される。ＦＦ５０２−Ｄには、データ信号としてＦＦ５０１−Ｄの出力信号が入力される。ＦＦ５０３−Ｄには、データ信号としてＦＦ５０２−Ｄの出力信号が入力される。
【００５４】
図６および図７は、検出部４０２の詳細例を示す説明図である。検出部４０２は、受信部４０１が受信した複数の受信データの立ち上がりをそれぞれ検出するとともに、受信部４０１が受信した複数の受信データの立ち下がりをそれぞれ検出する。
【００５５】
具体的には、たとえば、検出部４０２は、複数のタイミングのタイミングごとに受信データの正の遷移を示す信号と、タイミングごとに受信データの負の遷移を示す信号と、を出力する。正の遷移とは０から１への変化であるため、正の遷移を示す信号とは、受信データの立ち下がり変化の検出を示す信号である。負の遷移とは１から０への変化であるため、負の遷移を示す信号とは、受信データの立ち上がり変化の検出を示す信号である。図６では、受信データの立ち下がり変化の検出を示す信号は信号ＡＡＰ、信号ＢＢＰ、信号ＣＣＰおよび信号ＤＤＰである。図７の例では、受信データの立ち上がり変化の検出を示す信号は、信号ＡＡＮ、信号ＢＢＮ、信号ＣＣＮおよび信号ＤＤＮである。
【００５６】
具体的には、検出部４０２は、排他的論理和回路（Ｅｘｃｌｕｓｉｖｅ−ＯＲ回路）であるＥＸＯＲ６０１−ＡＰ〜６０１−ＤＰと、ＡＮＤ６０２−ＡＰ〜６０２−ＤＰと、ＦＦ６０３−ＡＰ〜６０３−ＤＰと、ＩＮＶＥＲＴＥＲ６０４−ＡＰ〜６０４−ＤＰと、を有している。さらに、検出部４０２は、ＥＸＯＲ７０１−ＡＮ〜７０１−ＤＮと、ＡＮＤ７０２−ＡＮ〜７０２−ＤＮと、ＦＦ７０３−ＡＮ〜７０３−ＤＮと、を有している。
【００５７】
まず、タイミングＡで受信された受信データの立ち下がりの検出例について図６を用いて説明する。タイミングＡで受信された受信データの立ち下がりは、ＥＸＯＲ６０１−ＡＰと、ＡＮＤ６０２−ＡＰと、ＦＦ６０３−ＡＰと、ＩＮＶＥＲＴＥＲ６０４−ＡＰと、によって検出される。ＦＦ６０３−ＡＰの出力信号である信号ＡＡＰの値が１の場合、タイミングＡで受信された受信データの立ち下がりが検出されたことを示し、信号ＡＡＰの値が０の場合、タイミングＡで受信された受信データの立ち下がりが検出されていないことを示す。
【００５８】
ＩＮＶＥＲＴＥＲ６０４−ＡＰには、信号ＡＺ２が入力される。ＥＸＯＲ６０１−ＡＰには、信号ＡＺ２と信号ＡＺ３が入力される。ＡＮＤ６０２−ＡＰには、ＥＸＯＲ６０１−ＡＰの出力信号とＩＮＶＥＲＴＥＲ６０４−ＡＰの出力信号が入力される。ＦＦ６０３−ＡＰには、データ信号としてＡＮＤ６０２−ＡＰの出力信号が入力され、クロック信号として信号ＣＬＫ２−０が入力される。ＦＦ６０３−ＡＰの出力信号は、信号ＡＡＰである。すなわち、信号ＡＺ２の値が０であり、かつ信号ＡＺ２の値と信号ＡＺ３の値とが異なれば、信号ＡＡＰの値は１となり、それ以外の場合には、信号ＡＡＰの値は０になる。
【００５９】
つぎに、タイミングＢで受信された受信データの立ち下がりの検出例について図６を用いて説明する。タイミングＢで受信された受信データの立ち下がりは、ＥＸＯＲ６０１−ＢＰと、ＡＮＤ６０２−ＢＰと、ＦＦ６０３−ＢＰと、ＩＮＶＥＲＴＥＲ６０４−ＢＰと、によって検出される。ＦＦ６０３−ＢＰの出力信号である信号ＢＢＰの値が１の場合、タイミングＢで受信された受信データの立ち下がりが検出されたことを示し、信号ＢＢＰの値が０の場合、タイミングＢで受信された受信データの立ち下がりが検出されていないことを示す。
【００６０】
ＩＮＶＥＲＴＥＲ６０４−ＢＰには、信号ＢＺ２が入力される。ＥＸＯＲ６０１−ＢＰには、信号ＢＺ２と信号ＢＺ３が入力される。ＡＮＤ６０２−ＢＰには、ＥＸＯＲ６０１−ＢＰの出力信号とＩＮＶＥＲＴＥＲ６０４−ＢＰの出力信号とが入力される。ＦＦ６０３−ＢＰには、データ信号としてＡＮＤ６０２−ＢＰの出力信号が入力され、クロック信号として信号ＣＬＫ２−０が入力される。ＦＦ６０３−ＢＰの出力信号は、ＢＢＰである。すなわち、信号ＢＺ２の値が０であり、かつ信号ＢＺ２の値と信号ＢＺ３の値とが異なれば、信号ＢＢＰの値は１となり、それ以外の場合には、信号ＢＢＰの値は０になる。
【００６１】
つぎに、タイミングＣで受信された受信データの立ち下がりの検出例について図６を用いて説明する。タイミングＣで受信された受信データの立ち下がりは、ＥＸＯＲ６０１−ＣＰと、ＡＮＤ６０２−ＣＰと、ＦＦ６０３−ＣＰと、ＩＮＶＥＲＴＥＲ６０４−ＣＰと、によって検出される。ＦＦ６０３−ＣＰの出力信号である信号ＣＣＰの値が１の場合、タイミングＣで受信された受信データの立ち下がりが検出されたことを示し、信号ＣＣＰの値が０の場合、タイミングＣで受信された受信データの立ち下がりが検出されていないことを示す。
【００６２】
ＩＮＶＥＲＴＥＲ６０４−ＣＰには信号ＣＺ２が入力される。ＥＸＯＲ６０１−ＣＰには信号ＣＺ２と信号ＣＺ３が入力される。ＡＮＤ６０２−ＣＰには、ＥＸＯＲ６０１−ＣＰの出力信号とＩＮＶＥＲＴＥＲ６０４−ＣＰの出力信号とが入力される。ＦＦ６０３−ＣＰには、データ信号としてＡＮＤ６０２−ＣＰの出力信号が入力され、クロック信号として信号ＣＬＫ２−０が入力される。ＦＦ６０３−ＣＰの出力信号は、ＣＣＰである。すなわち、信号ＣＺ２の値が０であり、かつ信号ＣＺ２の値と信号ＣＺ３の値とが異なれば、信号ＣＣＰの値は１となり、それ以外の場合には、信号ＣＣＰの値は０になる。
【００６３】
そして、タイミングＤで受信された受信データの立ち下がりの検出例について図６を用いて説明する。タイミングＤで受信された受信データの立ち下がりは、ＥＸＯＲ６０１−ＤＰと、ＡＮＤ６０２−ＤＰと、ＦＦ６０３−ＤＰと、ＩＮＶＥＲＴＥＲ６０４−ＤＰと、によって検出される。ＦＦ６０３−ＤＰの出力信号である信号ＤＤＰの値が１の場合、タイミングＤで受信された受信データの立ち下がりが検出されたことを示し、信号ＤＤＰの値が０の場合、タイミングＤで受信された受信データの立ち下がりが検出されていないことを示す。
【００６４】
ＩＮＶＥＲＴＥＲ６０４−ＤＰには、信号ＤＺ２が入力される。ＥＸＯＲ６０１−ＤＰには、信号ＤＺ２と信号ＤＺ３が入力される。ＡＮＤ６０２−ＤＰには、ＥＸＯＲ６０１−ＤＰの出力信号とＩＮＶＥＲＴＥＲ６０４−ＤＰの出力信号とが入力される。ＦＦ６０３−ＤＰには、データ信号としてＡＮＤ６０２−ＤＰの出力信号が入力され、クロック信号として信号ＣＬＫ２−０が入力される。ＦＦ６０３−ＤＰの出力信号は、ＤＤＰである。すなわち、信号ＤＺ２の値が０であり、かつ信号ＤＺ２の値と信号ＤＺ３の値とが異なれば、信号ＤＤＰの値は１となり、それ以外の場合には、信号ＤＤＰの値は０になる。
【００６５】
つぎに、タイミングＡで受信された受信データの立ち上がりの検出例について図６を用いて説明する。タイミングＡで受信された受信データの立ち上がりは、ＥＸＯＲ７０１−ＡＮと、ＡＮＤ７０２−ＡＮと、ＦＦ７０３−ＡＮと、によって検出される。ＦＦ７０３−ＡＮの出力信号である信号ＡＡＮの値が１の場合、タイミングＡで受信された受信データの立ち上がりが検出されたことを示し、信号ＡＡＮの値が０の場合、タイミングＡで受信された受信データの立ち上がりが検出されていないことを示す。
【００６６】
ＥＸＯＲ７０１−ＡＮには、信号ＡＺ２と信号ＡＺ３が入力される。ＡＮＤ７０２−ＡＮには、ＥＸＯＲ７０１−ＡＮの出力信号と信号ＡＺ２とが入力される。ＦＦ７０３−ＡＮには、データ信号としてＡＮＤ７０２−ＡＮの出力信号が入力され、クロック信号として信号ＣＬＫ２−０が入力される。すなわち、信号ＡＺ２の値が１であり、かつ信号ＡＺ３の値が０であれば、信号ＡＡＮの値は１になり、それ以外の場合には、信号ＡＡＮの値は０になる。
【００６７】
そして、タイミングＢで受信された受信データの立ち上がりの検出例について図６を用いて説明する。タイミングＢで受信された受信データの立ち上がりは、ＥＸＯＲ７０１−ＢＮと、ＡＮＤ７０２−ＢＮと、ＦＦ７０３−ＢＮと、によって検出される。ＦＦ７０３−ＢＮの出力信号である信号ＢＢＮの値が１の場合、タイミングＢで受信された受信データの立ち上がりが検出されたことを示し、信号ＢＢＮの値が０の場合、タイミングＢで受信された受信データの立ち上がりが検出されていないことを示す。
【００６８】
ＥＸＯＲ７０１−ＢＮには、信号ＢＺ２と信号ＢＺ３が入力される。ＡＮＤ７０２−ＢＮには、ＥＸＯＲ７０１−ＢＮの出力信号と信号ＢＺ２とが入力される。ＦＦ７０３−ＢＮには、データ信号としてＡＮＤ７０２−ＢＮの出力信号が入力され、クロック信号として信号ＣＬＫ２−０が入力される。すなわち、信号ＢＺ２の値が１であり、かつ信号ＢＺ３の値が０であれば、信号ＢＢＮの値は１になり、それ以外の場合には、信号ＡＡＮの値は０になる。
【００６９】
そして、タイミングＣで受信された受信データの立ち上がりの検出例について図６を用いて説明する。タイミングＣで受信された受信データの立ち上がりは、ＥＸＯＲ７０１−ＣＮと、ＡＮＤ７０２−ＣＮと、ＦＦ７０３−ＣＮと、によって検出される。ＦＦ７０３−ＣＮの出力信号である信号ＣＣＮの値が１の場合、タイミングＣで受信された受信データの立ち上がりが検出されたことを示し、信号ＣＣＮの値が０の場合、タイミングＣで受信された受信データの立ち上がりが検出されていないことを示す。
【００７０】
ＥＸＯＲ７０１−ＣＮには、信号ＣＺ２と信号ＣＺ３が入力される。ＡＮＤ７０２−ＣＮには、ＥＸＯＲ７０１−ＣＮの出力信号と信号ＣＺ２とが入力される。ＦＦ７０３−ＣＮには、データ信号としてＡＮＤ７０２−ＣＮの出力信号が入力され、クロック信号として信号ＣＬＫ２−０が入力される。すなわち、信号ＣＺ２の値が１であり、かつ信号ＣＺ３の値が０であれば、信号ＣＣＮの値は１になり、それ以外の場合には、信号ＡＡＮの値は０になる。
【００７１】
最後に、タイミングＤで受信された受信データの立ち上がりの検出例について図６を用いて説明する。タイミングＤで受信された受信データの立ち上がりは、ＥＸＯＲ７０１−ＤＮと、ＡＮＤ７０２−ＤＮと、ＦＦ７０３−ＤＮと、によって検出される。ＦＦ７０３−ＤＮの出力信号である信号ＤＤＮの値が１の場合、タイミングＤで受信された受信データの立ち上がりが検出されたことを示し、信号ＤＤＮの値が０の場合、タイミングＤで受信された受信データの立ち上がりが検出されていないことを示す。
【００７２】
ＥＸＯＲ７０１−ＤＮには、信号ＤＺ２と信号ＤＺ３が入力される。ＡＮＤ７０２−ＤＮには、ＥＸＯＲ７０１−ＤＮの出力信号と信号ＤＺ２とが入力される。ＦＦ７０３−ＤＮには、データ信号としてＡＮＤ７０２−ＤＮの出力信号が入力され、クロック信号として信号ＣＬＫ２−０が入力される。すなわち、信号ＤＺ２の値が１であり、かつ信号ＤＺ３の値が０であれば、信号ＤＤＮの値は１になり、それ以外の場合には、信号ＡＡＮの値は０になる。
【００７３】
図８は、決定部４０３の一例を示す説明図である。決定部４０３は、検出部４０２が検出した複数の受信データの立ち上がりと複数の受信データの立ち下がりに基づいて、複数のタイミングのうちデータを復元する復元タイミングを決定する複数の選択信号と、複数の選択信号をそれぞれ保持した複数の前回選択信号を生成する。図８の例では、複数の選択信号は、信号ＵＳＥＡ、信号ＵＳＥＢ、信号ＵＳＥＤおよび信号ＵＳＥＤである。信号ＵＳＥＡと、信号ＵＳＥＢと、信号ＵＳＥＣと、信号ＵＳＥＤと、のうち、同時に二つ以上の信号の値が１にならない。図８の例では、複数の前回選択信号は、信号ＰＲＥ＿ＵＳＥＡ、信号ＰＲＥ＿ＵＳＥＢ、信号ＰＲＥ＿ＵＳＥＣおよび信号ＰＲＥ＿ＵＳＥＤである。信号ＰＲＥ＿ＵＳＥＡと、信号ＰＲＥ＿ＵＳＥＢと、信号ＰＲＥ＿ＵＳＥＣと、信号ＰＲＥ＿ＵＳＥＤと、のうち、同時に二つ以上の信号の値が１にならない。
【００７４】
決定部４０３は、ＡＮＤ８０１−Ａ〜８０１−Ｄと、ＡＮＤ８０２−Ａ〜８０２−Ｄと、ＯＲ８０３−Ａ〜８０３−Ｄと、ＦＦ８０４−Ａ〜８０４−Ｄと、ＩＮＶＥＲＴＥＲ８０５〜８１６と、を有している。
【００７５】
信号ＡＡＰ＝信号ＢＢＰ＝１および信号ＣＣＰ＝信号ＤＤＰ＝０、または信号ＡＡＮ＝信号ＢＢＮ＝１および信号ＣＣＮ＝信号ＤＤＮ＝０の場合、タイミングＡでのデータが復元対象になるため、信号ＵＳＥＡの値が１になり、それ以外の場合には、信号ＵＳＥＡの値は０になる。
【００７６】
信号ＡＡＰ＝信号ＢＢＰ＝信号ＣＣＰ＝１および信号ＤＤＰ＝０、または信号ＡＡＮ＝信号ＢＢＮ＝信号ＣＣＮ＝１および信号ＤＤＮ＝０の場合、タイミングＢでのデータが復元対象になるため、信号ＵＳＥＢの値が１になり、それ以外の場合には、信号ＵＳＥＢの値は０になる。
【００７７】
信号ＡＡＰ＝信号ＢＢＰ＝信号ＣＣＰ＝信号ＤＤＰ＝１、または信号ＡＡＮ＝信号ＢＢＮ＝信号ＣＣＮ＝信号ＤＤＮ＝１の場合、タイミングＣでのデータが復元対象になるため、信号ＵＳＥＣの値が１になり、それ以外の場合には、信号ＵＳＥＣの値は０になる。
【００７８】
信号ＡＡＰ＝１および信号ＢＢＰ＝信号ＣＣＰ＝信号ＤＤＰ＝０、または信号ＡＡＮ＝１および信号ＢＢＮ＝信号ＣＣＮ＝信号ＤＤＮ＝０の場合、タイミングＤでのデータが復元対象になるため、信号ＵＳＥＤの値が１になり、それ以外の場合には、信号ＵＳＥＤの値は０になる。
【００７９】
まず、信号ＵＳＥＡの値は、ＩＮＶＥＲＴＥＲ８０５と、ＩＮＶＥＲＴＥＲ８０６と、ＩＮＶＥＲＴＥＲ８０７と、ＩＮＶＥＲＴＥＲ８０８と、ＡＮＤ８０１−Ａと、ＡＮＤ８０２−Ａと、ＯＲ８０３−Ａと、が決定している。
【００８０】
ＩＮＶＥＲＴＥＲ８０５には、信号ＣＣＰが入力される。ＩＮＶＥＲＴＥＲ８０６には、信号ＤＤＰが入力される。ＡＮＤ８０１−Ａには、信号ＡＡＰと、信号ＢＢＰと、ＩＮＶＥＲＴＥＲ８０５の出力信号と、ＩＮＶＥＲＴＥＲ８０６の出力信号と、が入力される。
【００８１】
ＩＮＶＥＲＴＥＲ８０７には、信号ＣＣＮが入力される。ＩＮＶＥＲＴＥＲ８０８には、信号ＤＤＮが入力される。ＡＮＤ８０２−Ａには、信号ＡＡＮと、信号ＢＢＮと、ＩＮＶＥＲＴＥＲ８０７の出力信号と、ＩＮＶＥＲＴＥＲ８０８の出力信号と、が入力される。
【００８２】
ＯＲ８０３−Ａには、ＡＮＤ８０１−ＡとＡＮＤ８０２−Ａが入力される。ＯＲ８０３−Ａの出力信号は、信号ＵＳＥＡである。ＦＦ８０４−Ａには、データ信号として信号ＵＳＥＡが入力され、クロック信号として信号ＣＬＫ２−０が入力される。ＦＦ８０４−Ａの出力信号は、信号ＰＲＥ＿ＵＳＥＡである。
【００８３】
つぎに、信号ＵＳＥＢの値は、ＩＮＶＥＲＴＥＲ８０９と、ＩＮＶＥＲＴＥＲ８１０と、ＡＮＤ８０１−Ｂと、ＡＮＤ８０２−Ｂと、ＯＲ８０３−Ｂと、が決定している。
【００８４】
ＩＮＶＥＲＴＥＲ８０９には信号ＤＤＰが入力される。ＡＮＤ８０１−Ｂには、信号ＡＡＰと、信号ＢＢＰと、信号ＣＣＰと、ＩＮＶＥＲＴＥＲ８０９の出力信号と、が入力される。
【００８５】
ＩＮＶＥＲＴＥＲ８１０には信号ＤＤＮが入力される。ＡＮＤ８０２−Ｂには、信号ＡＡＮと、信号ＢＢＮと、信号ＣＣＮと、ＩＮＶＥＲＴＥＲ８１０の出力信号と、が入力される。
【００８６】
ＯＲ８０３−Ｂには、ＡＮＤ８０１−Ｂの出力信号とＡＮＤ８０２−Ｂの出力信号とが入力される。ＯＲ８０３−Ｂの出力信号は、信号ＵＳＥＢである。ＦＦ８０４−Ｂには、データ信号として信号ＵＳＥＢが入力され、クロック信号として信号ＣＬＫ２−０が入力される。ＦＦ８０４−Ｂの出力信号は、信号ＰＲＥ＿ＵＳＥＢである。
【００８７】
そして、信号ＵＳＥＣの値は、ＡＮＤ８０１−Ｃと、ＡＮＤ８０２−Ｃと、ＯＲ８０３−Ｃと、が決定している。
【００８８】
ＡＮＤ８０１−Ｃには、信号ＡＡＰと、信号ＢＢＰと、信号ＣＣＰと、信号ＤＤＰと、が入力される。ＡＮＤ８０２−Ｃには、信号ＡＡＮと、信号ＢＢＮと、信号ＣＣＮと、信号ＤＤＮと、が入力される。
【００８９】
ＯＲ８０３−Ｃには、ＡＮＤ８０１−Ｃの出力信号とＡＮＤ８０２−Ｃの出力信号が入力される。ＯＲ８０３−Ｃの出力信号は、信号ＵＳＥＣである。ＦＦ８０４−Ｃには、データ信号として信号ＵＳＥＣが入力され、クロック信号として信号ＣＬＫ２−０が入力される。ＦＦ８０４−Ｃの出力信号は、信号ＰＲＥ＿ＵＳＥＣである。
【００９０】
信号ＵＳＥＤの値は、ＩＮＶＥＲＴＥＲ８１１〜８１６と、ＡＮＤ８０１−Ｄと、ＡＮＤ８０２−Ｄと、ＯＲ８０３−Ｄと、が決定している。
【００９１】
ＩＮＶＥＲＴＥＲ８１１には、信号ＢＢＰが入力される。ＩＮＶＥＲＴＥＲ８１２には、信号ＣＣＰが入力される。ＩＮＶＥＲＴＥＲ８１３には、信号ＤＤＰが入力される。ＡＮＤ８０１−Ｄには、信号ＡＡＰと、ＩＮＶＥＲＴＥＲ８１１の出力信号と、ＩＮＶＥＲＴＥＲ８１２の出力信号と、ＩＮＶＥＲＴＥＲ８１３の出力信号と、が入力される。
【００９２】
ＩＮＶＥＲＴＥＲ８１４には、信号ＢＢＮが入力される。ＩＮＶＥＲＴＥＲ８１５には、信号ＣＣＮが入力される。ＩＮＶＥＲＴＥＲ８１６には、信号ＤＤＮが入力される。ＡＮＤ８０２−Ｄには、信号ＡＡＮと、ＩＮＶＥＲＴＥＲ８１４の出力信号と、ＩＮＶＥＲＴＥＲ８１５の出力信号と、ＩＮＶＥＲＴＥＲ８１６の出力信号と、が入力される。
【００９３】
ＯＲ８０３−Ｄには、ＡＮＤ８０１−Ｄの出力信号とＡＮＤ８０２−Ｄの出力信号とが入力される。ＯＲ８０３−Ｄの出力信号は、信号ＵＳＥＤである。ＦＦ８０４−Ｄには、データ信号として信号ＵＳＥＤが入力され、クロック信号として信号ＣＬＫ２−０が入力される。ＦＦ８０４−Ｄの出力信号は、信号ＰＲＥ＿ＵＳＥＤである。
【００９４】
図９は、判定部４０４の詳細を示す説明図である。復元タイミングの変化が離散的であると、復元タイミングの変化が発生順序にしたがっているか否かが不明である。そこで、判定部４０４は、複数の選択信号と複数の前回選択信号に基づいて、複数のタイミングにおける復元タイミングの遷移方向を判定する。
【００９５】
図９の例では、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎは、復元タイミングの遷移方向を示す遷移方向信号である。信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が１の場合、遷移方向は進角方向に対して順方向であることを示す。信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が０の場合、遷移方向は進角方向に対して逆方向であることを示す。
【００９６】
具体的には、判定部４０４は、ＡＮＤ９０１〜９０４と、ＮＡＮＤ９１１〜９１４と、ＯＲ９２１と、ＯＲ９２２と、ＡＮＤ９３１と、ＦＦ９３２と、を有している。
【００９７】
まず、判定部４０４は、ＡＮＤ９０１、ＡＮＤ９０２、ＡＮＤ９０３、およびＡＮＤ９０４によって、複数のタイミングにおける復元タイミングの遷移方向が進角方向に対して順方向であるか否かを判定する。
【００９８】
ＡＮＤ９０１には、信号ＵＳＥＢと信号ＰＲＥ＿ＵＳＥＡが入力される。これにより、判定部４０４は、タイミングＡからタイミングＢへの復元タイミングの変化を検出することができる。ＡＮＤ９０２には、信号ＵＳＥＣと信号ＰＲＥ＿ＵＳＥＢとが入力される。これにより、判定部４０４は、タイミングＢからタイミングＣへの復元タイミングの変化を検出することができる。
【００９９】
ＡＮＤ９０３には、信号ＵＳＥＤと信号ＰＲＥ＿ＵＳＥＣとが入力される。これにより、判定部４０４は、タイミングＣからタイミングＤへの復元タイミングの変化を検出することができる。ＡＮＤ９０４には、信号ＵＳＥＡと信号ＰＲＥ＿ＵＳＥＤとが入力される。これにより、判定部４０４は、タイミングＤからタイミングＡへの復元タイミングの変化を検出することができる。
【０１００】
つぎに、判定部４０４は、ＮＡＮＤ９１１、ＮＡＮＤ９１２、ＮＡＮＤ９１３、およびＮＡＮＤ９１４によって、複数のタイミングにおける復元タイミングの遷移方向が進角方向に対して逆方向であるか否かを判定する。
【０１０１】
より具体的には、ＮＡＮＤ９１１には、信号ＵＳＥＡと、信号ＰＲＥ＿ＵＳＥＢと、が入力される。これにより、判定部４０４は、タイミングＢからタイミングＡへの復元タイミングの変化を検出することができる。
【０１０２】
ＮＡＮＤ９１２には、信号ＵＳＥＢと、信号ＰＲＥ＿ＵＳＥＣと、が入力される。これにより、判定部４０４は、タイミングＣからタイミングＢへの復元タイミングの変化を検出することができる。ＮＡＮＤ９１３には、信号ＵＳＥＣと信号ＰＲＥ＿ＵＳＥＤとが入力される。これにより、判定部４０４は、タイミングＤからタイミングＣへの復元タイミングの変化を検出することができる。ＮＡＮＤ９１４には、信号ＵＳＥＤと信号ＰＲＥ＿ＵＳＥＡとが入力される。これにより、判定部４０４は、タイミングＡからタイミングＤへの復元タイミングの変化を検出することができる。
【０１０３】
ＯＲ９２１には、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎと、ＡＮＤ９０１の出力信号と、ＡＮＤ９０２の出力信号と、ＡＮＤ９０３の出力信号と、ＡＮＤ９０４の出力信号と、が入力される。ＯＲ９２２には、ＮＡＮＤ９１１の出力信号と、ＮＡＮＤ９１２の出力信号と、ＮＡＮＤ９１３の出力信号と、ＮＡＮＤ９１４の出力信号と、が入力される。
【０１０４】
ＡＮＤ９３１には、ＯＲ９２１の出力信号とＯＲ９２２の出力信号とが入力される。ＦＦ９３２には、データ信号としてＡＮＤ９３１の出力信号が入力され、クロック信号として信号ＣＬＫ２−０が入力される。ＦＦ９３２の出力信号は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎである。ＯＲ９２１に信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎが入力されているため、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が１になると、その後、ＦＦ９３２によって信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が保持される。したがって、復元タイミングが連続的に変化している最中に復元タイミングの遷移方向が判定され、判定結果が保持されている。そのため、復元タイミングの変化が離散的に変化する最中には、受信装置３０２は、保持された判定結果を参照することにより、復元タイミングの遷移方向がわかる。
【０１０５】
上述したように、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が１であれば、復元タイミングの遷移方向が進角方向に対して順方向であることを示す。そのため、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が１であれば、信号ＣＬＫ２の周波数が信号ＣＬＫ１の周波数よりも高いことを示す。
【０１０６】
一方、上述したように、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が０であれば、復元タイミングの遷移方向が進角方向に対して逆方向であることを示す。信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が０であれば、信号ＣＬＫ１の周波数が信号ＣＬＫ２の周波数よりも高いことを示す。したがって、信号ＣＬＫ１と信号ＣＬＫ２との周波数関係が事前に定まっていなくとも、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値を用いて、復元を行うことができる。
【０１０７】
図１０は、信号ＤＶＡＬＩＤによる信号ＳＤＡＴＡの選択方法を示す説明図である。信号ＤＶＡＬＩＤ［０］と信号ＤＶＡＬＩＤ［１］とのそれぞれの値がいずれも０である場合、信号ＳＤＡＴＡ［０］と信号ＳＤＡＴＡ［１］とが復元対象でない。信号ＤＶＡＬＩＤ［１］の値と信号ＤＶＡＬＩＤ［０］の値とが、いずれも０になる場合は、三つの場合がある。一つ目の場合、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎが１で、かつ復元タイミングがタイミングＤからタイミングＢに変化した場合である。二つ目の場合、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎが１で、かつ復元タイミングがタイミングＣからタイミングＡに変化した場合である。三つ目の場合、復元タイミングが、タイミングＤからタイミングＡに変化した場合である。復元タイミングがタイミングＤからタイミングＡに変化した場合には、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎが１である。
【０１０８】
信号ＤＶＡＬＩＤ［０］が１であり、信号ＤＶＡＬＩＤ［１］が０である場合、信号ＳＤＡＴＡ［０］の値が復元対象のデータになる。信号ＤＶＡＬＩＤ［０］が０であり、信号ＤＶＡＬＩＤ［１］が１である場合は存在しない。
【０１０９】
信号ＤＶＡＬＩＤ［０］の値と信号ＤＶＡＬＩＤ［１］の値とがいずれも１である場合、信号ＳＤＡＴＡ［０］の値と信号ＳＤＡＴＡ［１］の値が復元対象のデータになる。信号ＤＶＡＬＩＤ［１］の値と信号ＤＶＡＬＩＤ［０］の値が、いずれも１になる場合は、３つの場合がある。１つ目の場合、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎが０で、かつ復元タイミングがタイミングＡからタイミングＣに変化した場合である。２つ目の場合、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎが０で、かつ復元タイミングがタイミングＢからタイミングＤに変化した場合である。３つ目の場合、復元タイミングがタイミングＡからタイミングＤに変化した場合である。
【０１１０】
図１１は、有効情報生成部４０５の詳細例を示す説明図である。有効情報生成部４０５は、複数の選択信号と複数の前回選択信号と判定部４０４が判定した遷移方向に基づいて、選択部４０６が選択した転送データの有効情報を生成する。図１１の例では、有効情報は、信号ＤＶＡＬＩＤ［１：０］である。上述したように、遷移方向は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎによって表される。
【０１１１】
たとえば、有効情報生成部４０５は、遷移方向と、複数のタイミングのうち、選択部４０６が前回の転送データの選択に用いた前回選択信号に対応する復元タイミングと、選択部４０６が今回の転送データの選択に用いた選択信号に対応する復元タイミングとの期間が、複数のタイミングの周期を超えているかに基づいて、選択部４０６が選択した転送データの有効情報を生成する。
【０１１２】
まず、有効情報生成部４０５は、遷移方向が進角方向に対して順方向であり、複数のタイミングのうち、選択部４０６が前回の転送データの選択に用いた前回選択信号に対応する復元タイミングと、選択部４０６が今回の転送データの選択に用いた選択信号に対応する復元タイミングとの期間が、複数のタイミングの周期を超えている場合、選択部４０６が選択した複数の転送データの有効情報の全てを偽値として生成する。
【０１１３】
具体的には、たとえば、有効情報生成部４０５は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が１であって、信号ＰＲＥ＿ＵＳＥＤの値が１であり、かつ信号ＵＳＥＢの値が１である場合に、信号ＤＶＡＬＩＤ［１］と信号ＤＶＡＬＩＤ［０］の両方の値を０にする。信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が１である場合に、タイミングＤからタイミングＢに復元タイミングが変化すると、前回の復元タイミングと今回の復元タイミングの期間がクロックの１周期を超えてしまう。
【０１１４】
または、たとえば、有効情報生成部４０５は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が１であって、信号ＰＲＥ＿ＵＳＥＣの値が１であり、かつ信号ＵＳＥＡの値が１である場合に、信号ＤＶＡＬＩＤ［１］と信号ＤＶＡＬＩＤ［０］の両方の値を０にする。信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が１である場合に、タイミングＣからタイミングＡに復元タイミングが変化すると、前回の復元タイミングと今回の復元タイミングの期間がクロックの１周期を超えてしまう。
【０１１５】
つぎに、有効情報生成部４０５は、遷移方向が進角方向に対して逆方向であり、複数のタイミングのうち、選択部４０６が前回の転送データの選択に用いた前回選択信号に対応する復元タイミングと、選択部４０６が今回の転送データの選択に用いた選択信号に対応する復元タイミングとの期間が、複数のタイミングの周期を超えている場合、選択部４０６が選択した複数の転送データの有効情報の全てを真値として生成する。
【０１１６】
具体的には、たとえば、有効情報生成部４０５は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が０であって、信号ＰＲＥ＿ＵＳＥＡの値が１であり、信号ＵＳＥＣの値が１である場合に、信号ＤＶＡＬＩＤ［１］と信号ＤＶＡＬＩＤ［０］の両方の値を１にする。信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が０である場合に、タイミングＡからタイミングＣへ復元タイミングが変化すると、前回の復元タイミングと今回の復元タイミングの期間がクロックの１周期を超えてしまう。
【０１１７】
または、たとえば、有効情報生成部４０５は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が０であって、信号ＰＲＥ＿ＵＳＥＢの値が１であり、信号ＵＳＥＤの値が１である場合に、信号ＤＶＡＬＩＤ［１］と信号ＤＶＡＬＩＤ［０］の両方の値を１にする。信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が０である場合に、タイミングＢからタイミングＤへ復元タイミングが変化すると、前回の復元タイミングと今回の復元タイミングの期間がクロックの１周期を超えてしまう。
【０１１８】
有効情報生成部４０５は、複数のタイミングのうち、選択部４０６が前回の転送データの選択に用いた前回選択信号に対応する復元タイミングと、選択部４０６が今回の転送データの選択に用いた選択信号に対応する復元タイミングとの期間が、複数のタイミングの周期を超えている場合、選択部４０６が選択した複数の転送データの有効情報のいずれかを真値として生成する。
【０１１９】
具体的には、たとえば、有効情報生成部４０５は、信号ＰＲＥ＿ＵＳＥＤの値が１であり、信号ＵＳＥＡの値が１の場合、信号ＤＶＡＬＩＤ［１］と信号ＤＶＡＬＩＤ［０］の両方の値を０にする。具体的に、たとえば、有効情報生成部４０５は、信号ＰＲＥ＿ＵＳＥＡの値が１であり、信号ＵＳＥＤの値が１である場合に、信号ＤＶＡＬＩＤ［１］と信号ＤＶＡＬＩＤ［０］の両方の値を１にする。
【０１２０】
より具体的には、有効情報生成部４０５は、第１の有効情報生成部１１００−１と、第２の有効情報生成部１１００−２と、を有している。第１の有効情報生成部１１００−１は、信号ＤＶＡＬＩＤ［１］の値を決定している。第２の有効情報生成部１１００−２は、信号ＤＶＡＬＩＤ［０］の値を決定している。
【０１２１】
まず、第１の有効情報生成部１１００−１について説明する。第１の有効情報生成部１１００−１は、ＡＮＤ１１０５と、ＡＮＤ１１６と、ＡＮＤ１１０７と、ＯＲ１１０８と、ＩＮＶＥＲＴＥＲ１１０９と、ＩＮＶＥＲＴＥＲ１１１０と、を有している。
【０１２２】
ＡＮＤ１１０５には、信号ＵＳＥＤと信号ＰＲＥ＿ＵＳＥＡが入力される。これにより、第１の有効情報生成部１１００−１は、信号ＰＲＥ＿ＵＳＥＡの値が１であり、信号ＵＳＥＤの値が１であることを検出する。
【０１２３】
ＩＮＶＥＲＴＥＲ１１０９には、ｆｏｒｗａｒ＿ｄｉｒｅｃｔｉｏｎが入力される。ＡＮＤ１１０６には、信号ＵＳＥＣと信号ＰＲＥ＿ＵＳＥＡとＩＮＶＥＲＴＥＲ１１０９の出力信号が入力される。これにより、第１の有効情報生成部１１００−１は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が０であって、信号ＰＲＥ＿ＵＳＥＡの値が１であり、信号ＵＳＥＣの値が１であることを検出する。
【０１２４】
ＩＮＶＥＲＴＥＲ１１１０には、ｆｏｒｗａｒ＿ｄｉｒｅｃｔｉｏｎが入力される。ＡＮＤ１１０７には、信号ＰＲＥ＿ＵＳＥＢと信号ＵＳＥＤとＩＮＶＥＲＴＥＲ１１１０の出力信号が入力される。これにより、第１の有効情報生成部１１００−１は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が０であり、信号ＰＲＥ＿ＵＳＥＢの値が１であり、ＵＳＥＤの値が１であることを検出する。
【０１２５】
ＯＲ１１０８には、ＡＮＤ１１０５の出力信号と、ＡＮＤ１１０６の出力信号と、ＡＮＤ１１０７の出力信号と、が入力される。ＯＲ１１０８の出力信号は、信号ＤＶＡＬＩＤ［１］である。これにより、第１の有効情報生成部１１００−１は、ＡＮＤ１１０５、ＡＮＤ１１０６、ＡＮＤ１１０７のいずれかの出力信号の値が１の場合に、信号ＤＶＡＬＩＤ［１］の値を１にする。また、第１の有効情報生成部１１００−１は、ＡＮＤ１１０５、ＡＮＤ１１０６、ＡＮＤ１１０７のいずれの出力信号の値も１でない場合、信号ＤＶＡＬＩＤ［１］の値を０にする。
【０１２６】
つぎに、第２の有効情報生成部１１００−２について詳細に説明する。第２の有効情報生成部１１００−２は、ＡＮＤ１１０１と、ＡＮＤ１１０２と、ＡＮＤ１１０３と、ＮＯＲ１１０４と、を有している。
【０１２７】
ＡＮＤ１１０１には、信号ＵＳＥＡと信号ＰＲＥ＿ＵＳＥＤとが入力される。
これにより、第２の有効情報生成部１１００−２は、信号ＰＲＥ＿ＵＳＥＤの値が１であり、信号ＵＳＥＡの値が１であることを検出することができる。
【０１２８】
ＡＮＤ１１０２には、信号ＰＲＥ＿ＵＳＥＤと信号ＵＳＥＢと信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎとが入力される。これにより、第２の有効情報生成部１１００−２は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が１であり、信号ＰＲＥ＿ＵＳＥＤの値が１であり、信号ＵＳＥＢの値が１であることを検出することができる。
【０１２９】
ＡＮＤ１１０３には、信号ＰＲＥ＿ＵＳＥＣと信号ＵＳＥＡと信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎとが入力される。これにより、第２の有効情報生成部１１００−２は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が１であり、信号ＰＲＥ＿ＵＳＥＣの値が１であり、信号ＵＳＥＡの値が１であることを検出することができる。
【０１３０】
ＮＯＲ１１０４は、ＡＮＤ１１０１の出力信号と、ＡＮＤ１１０２の出力信号と、ＡＮＤ１１０３の出力信号と、が入力される。ＮＯＲ１１０４の出力信号は、信号ＤＶＡＬＩＤ［０］である。これにより、第２の有効情報生成部１１００−２は、ＡＮＤ１１０１、ＡＮＤ１１０２、ＡＮＤ１１０３のいずれかの出力信号の値が１の場合に、信号ＤＶＡＬＩＤ［０］の値を０にする。また、第２の有効情報生成部１１００−２は、ＡＮＤ１１０１、ＡＮＤ１１０２、ＡＮＤ１１０３のいずれの出力信号の値も１でない場合、信号ＤＶＡＬＩＤ［０］の値を１にする。
【０１３１】
図１２は、選択部４０６の一例を示す説明図である。選択部４０６は、複数の受信データと、複数の受信データのそれぞれに対応する複数の前回選択信号に基づいて、複数の受信データから転送データを選択する。上述したように、前回選択信号は信号ＰＲＥ＿ＵＳＥＡ、信号ＰＲＥ＿ＵＳＥＢ、信号ＰＲＥ＿ＵＳＥＣ、および信号ＰＲＥ＿ＵＳＥＤであり、複数の受信データとは、信号ＡＺ３の値、信号ＢＺ３の値、信号ＣＺ３の値および信号ＤＺ３の値である。図１２の例では、転送データとは、信号ＳＤＡＴＡ［１：０］の値である。具体的には、選択部４０６は、第１の選択部１２００−１と第２の選択部１２００−２とを有している。
【０１３２】
まず、第１の選択部１２００−１は、復元タイミングで受信したデータを信号ＳＤＡＴＡ［０］としてシリアライザ３１２へ出力する。第１の選択部１２００−１は、ＡＮＤ１２０１〜と１２０４、ＯＲ１２０５とを有している。
【０１３３】
ＡＮＤ１２０１には、信号ＰＲＥ＿ＵＳＥＡと信号ＡＺ３とが入力される。ＡＮＤ１２０２には、信号ＰＲＥ＿ＵＳＥＢと信号ＢＺ３とが入力される。ＡＮＤ１２０３には、信号ＰＲＥ＿ＵＳＥＣと信号ＣＺ３とが入力される。ＡＮＤ１２０４には、信号ＰＲＥ＿ＵＳＥＤと信号ＤＺ３とが入力される。ＯＲ１２０５には、ＡＮＤ１２０１の出力信号と、ＡＮＤ１２０２の出力信号と、ＡＮＤ１２０３の出力信号と、ＡＮＤ１２０４の出力信号と、が入力される。
【０１３４】
すなわち、第１の選択部１２００−１は、信号ＰＲＥ＿ＵＳＥＡの値が１の場合には、信号ＡＺ３の値を信号ＳＤＡＴＡ［０］の値として出力する。第１の選択部１２００−１は、信号ＰＲＥ＿ＵＳＥＢの値が１の場合には、信号ＢＺ３の値を信号ＳＤＡＴＡ［０］の値として出力する。第１の選択部１２００−１は、信号ＰＲＥ＿ＵＳＥＣの値が１の場合には、信号ＣＺ３の値が信号ＳＤＡＴＡ［０］の値として出力する。第１の選択部１２００−１は、信号ＰＲＥ＿ＵＳＥＤの値が１の場合には、信号ＤＺ３の値が信号ＳＤＡＴＡ［０］の値として出力する。
【０１３５】
つぎに、第２の選択部１２００−２は、複数のタイミングの中で、今回の転送データの選択に用いた選択信号に対応する復元タイミングから進角方向に対して順方向に複数のタイミングの周期を超えないタイミングで受信したデータを信号ＳＤＡＴＡ［１］としてシリアライザ３１２へ出力する。
【０１３６】
ここでは、有効情報生成部４０５によって、ＳＤＳＡＴＡ［１］を有効にする場合における今回の転送データの選択に用いた選択信号に対応する復元タイミングは、タイミングＡまたはタイミングＢである。ＳＤＳＡＴＡ［１］を有効にする場合とは、信号ＤＶＡＬＩＤ［１］の値が１になる場合である。
【０１３７】
タイミングＡから進角方向に対して順方向に複数のタイミングの周期を超えないタイミングは、同一クロック周期におけるタイミングＢ〜タイミングＤである。
【０１３８】
タイミングＢから進角方向に対して順方向に複数のタイミングの周期を超えないタイミングは、タイミングＢと同一クロック周期におけるタイミングＤが挙げられる。
【０１３９】
そこで、第２の選択部１２００−２は、信号ＰＲＥ＿ＵＳＥＡの値が１の場合には、信号ＣＺ３の値または信号ＤＺ３の値を信号ＳＤＡＴＡ［１］の値として出力する。そして、第２の選択部１２００−２は、信号ＰＲＥ＿ＵＳＥＤの値が１の場合には、信号ＤＺ３の値を信号ＳＤＡＴＡ［１］の値として出力する。信号ＳＤＡＴＡ［１］の値が復元対象のデータになるか否かは信号ＤＶＡＬＩＤ［０：１］によって決定される。
【０１４０】
第２の選択部１２００−２は、ＡＮＤ１２０６〜１２０９と、ＯＲ１２１０と、ＯＲ１２１１と、を有している。ＡＮＤ１２０６には、信号ＰＲＥ＿ＵＳＥＤと信号ＡＺ３が入力される。ＡＮＤ１２０７には、信号ＰＲＥ＿ＵＳＥＤと信号ＢＺ３が入力される。ＡＮＤ１２０８には、信号ＰＲＥ＿ＵＳＥＡと信号ＣＺ３が入力される。ＯＲ１２１１には、信号ＰＲＥ＿ＵＳＥＡと信号ＰＲＥ＿ＵＳＥＢの値が入力される。ＡＮＤ１２０９には、ＯＲ１２１１の出力信号とＤＺ３が入力される。ＯＲ１２１０には、ＡＮＤ１２０６の出力信号と、ＡＮＤ１２０７の出力信号と、ＡＮＤ１２０８の出力信号と、ＡＮＤ１２０９の出力信号とが入力される。ＯＲ１２１０の出力信号は、信号ＳＤＡＴＡ［１］である。
【０１４１】
図１３は、タイミングＡからタイミングＣへの変化例を示す説明図である。タイミングチャート１３００は、復元タイミングの遷移方向が進角方向に対して逆方向である場合において、タイミングＡからタイミングＣへの復元タイミングの変化が検出された場合を例に挙げている。たとえば、判定部４０４は、タイミングＤからタイミングＣへの復元タイミングの変化を検出することにより、復元タイミングの遷移方向が進角方向に対して逆方向であると判定する。したがって、判定部４０４は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値を０に設定する。
【０１４２】
そした、選択部４０６は、複数の受信データと、複数の受信データのそれぞれに対応する複数の前回選択信号に基づいて、複数の受信データから転送データを選択する。たとえば、有効情報生成部４０５は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が０である場合に、タイミングＡからタイミングＣへの復元タイミングの変化を検出し、信号ＤＶＡＬＩＤ［０］の値と信号ＤＶＡＬＩＤ［１］の値との両方を１にする。
【０１４３】
これにより、タイミングＡからタイミングＣへの復元タイミングの変化の場合に、有効情報生成部４０５によって信号ＤＶＡＬＩＤ［１］の値が１になることで、復元データにデータｄ６が加わっている。
【０１４４】
図１４は、タイミングＣからタイミングＡへの変化例を示す説明図である。タイミングチャート１４００は、復元タイミングの遷移方向が進角方向に対して順方向である場合において、タイミングＣからタイミングＡへの復元タイミングの変化が検出された場合を例に挙げている。
【０１４５】
たとえば、判定部４０４は、タイミングＡからタイミングＢへの変化を検出することで、復元タイミングの遷移方向が進角方向に対して順方向であると判定する。したがって、判定部４０４は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値を１に設定する。
【０１４６】
そして、たとえば、有効情報生成部４０５は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が１である場合に、タイミングＣからタイミングＡへの復元タイミングの変化を検出し、信号ＤＶＡＬＩＤ［０］の値と信号ＤＶＡＬＩＤ［１］の値との両方を０にする。
【０１４７】
これにより、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が１である場合において、タイミングＣからタイミングＡへの復元タイミングの変化が検出されると、重複するデータｄ５のうちの一つが復元データから除かれる。
【０１４８】
図１５は、タイミングＡからタイミングＤへの変化例を示す説明図である。タイミングチャート１５００は、タイミングＡからタイミングＤへの復元タイミングの変化が検出された場合を例に挙げている。
【０１４９】
たとえば、有効情報生成部４０５は、タイミングＡからタイミングＤへの復元タイミングの変化を検出することにより、信号ＤＶＡＬＩＤ［０］の値と信号ＤＶＡＬＩＤ［１］の値との両方を１にする。
【０１５０】
これにより、タイミングＡからタイミングＤへの復元タイミングの変化の場合に、復元データにデータｄ５が加わっている。
【０１５１】
図１６は、タイミングＤからタイミングＡへの変化例を示す説明図である。タイミングチャート１６００は、タイミングＤからタイミングＡへの復元タイミングの変化が検出された場合を例に挙げている。
【０１５２】
たとえば、有効情報生成部４０５は、タイミングＤからタイミングＡへの復元タイミングの変化を検出することにより、信号ＤＶＡＬＩＤ［０］の値と信号ＤＶＡＬＩＤ［１］の値との両方を０にする。
【０１５３】
これにより、タイミングＡからタイミングＤへの復元タイミングの変化の場合に、重複するデータｄ５のうちの一つが復元データから除かれる。
【０１５４】
図１７は、デシリアライザ３２４による動作例１を示す説明図である。タイミングチャート１７００は、デシリアライザ３２４による動作例を示している。タイミングチャート１７００では、信号ＤＶＡＬＩＤ［０］と、信号ＤＶＡＬＩＤ［１］と、信号ＳＤＡＴＡ［０］と、信号ＳＤＡＴＡ［１］と、復元データと、を示している。信号ＤＶＡＬＩＤ［０］の値が１であり、かつ信号ＤＶＡＬＩＤ［１］の値が０である場合、信号ＳＤＡＴＡ［０］の値が復元データになる。信号ＤＶＡＬＩＤ［０］の値が１であり、かつ信号ＤＶＡＬＩＤ［１］の値が１である場合、信号ＳＤＡＴＡ［０］の値と信号ＳＤＡＴＡ［１］の値が復元データになる。よって、復元データ群は、｛ｘ１，ｘ２，ｘ３，ｘ４，ｙ４，ｘ５，ｘ６，ｘ７，ｘ８｝である。
【０１５５】
図１８は、デシリアライザ３２４による動作例２を示す説明図である。タイミングチャート１８００は、デシリアライザ３２４による動作例を示している。タイミングチャート１８００では、信号ＤＶＡＬＩＤ［０］と、信号ＤＶＡＬＩＤ［１］と、信号ＳＤＡＴＡ［０］と、信号ＳＤＡＴＡ［１］と、復元データと、を示している。信号ＤＶＡＬＩＤ［０］の値が１であり、かつ信号ＤＶＡＬＩＤ［１］の値が０である場合、信号ＳＤＡＴＡ［０］の値が復元データになる。信号ＤＶＡＬＩＤ［０］の値が０であり、かつ信号ＤＶＡＬＩＤ［１］の値が０である場合、復元データがない。よって、復元データ群は、｛ｘ１，ｘ２，ｘ３，ｘ５，ｘ６，ｘ７，ｘ８｝である。タイミングチャートでは、信号ＤＶＡＬＩＤ［０］の値が０であり、かつ信号ＤＶＡＬＩＤ［１］の値が０である場合における信号ＳＤＡＴＡ［０］の値であるｘ４が復元データになっていない。上述したようにｘ４はｘ５と同一データであるため、データリカバリ部３２３によって、信号ＤＶＡＬＩＤ［０］の値が０であり、かつ信号ＤＶＡＬＩＤ［１］の値が０に決定される。
【０１５６】
送信装置３０１から送信されるデータに変化が発生せず、０や１が連続する最長の信号ＣＬＫ１のサイクル数をｎとし、受信クロックに対する送信クロックの周波数のずれの比率（クロックマージン）をｍとする。クロックマージンが大きいほど、データの欠落や同一データを複数回受信することが発生する。サイクル数ｎとクロックマージンｍの条件は、下記式（１）になる。
【０１５７】
ｎ×ｍ＜２５＝１００［％］／４（タイミング数）・・・（１）
【０１５８】
たとえば、サイクル数ｎが８の場合、クロックマージンｍは以下のようになる。
【０１５９】
ｍ＝２５／８≒３．１［％］
【０１６０】
本発明にかかる受信装置３０２では、復元タイミングの変化が離散的であったとして、２以上のタイミングを飛ばさないことを前提としている、よって、受信装置３０２では、復元タイミングの変化が１つのタイミングを飛ばしても復元できる。したがって、本受信装置３０２のサイクル数ｎとクロックマージンｍの条件は、下記式（２）のようになる。
【０１６１】
ｎ×ｍ＜５０＝１００［％］／２・・・（２）
【０１６２】
したがって、ｎ＝８の場合には、下記式（３）のようになる。
【０１６３】
ｍ＝５０／８≒６．２［％］・・・（３）
【０１６４】
よって、本受信装置３０２によれば、復元タイミングの変化が連続的な場合でなければデータを復元できない場合と比較して、クロックマージンを約２倍程度許容できる。したがって、本受信装置３０２によれば、データの復元精度を向上させることができる。
【０１６５】
以上において、本発明は、上述した実施の形態に限らず、種々変更可能である。たとえば、復元タイミングの変化が離散的であっても、２以上のタイミングを飛ばさないことを前提としているが、これに限らず、２以上のタイミングを飛ばしてもよい有効情報生成部４０５であってもよい。また、たとえば、タイミング数は４であるがさらに多くてもよい。そこで、タイミング数がＮの場合における判定部４０４と有効情報生成部４０５の詳細例を、それぞれ図１９と図２０を用いて説明する。
【０１６６】
（タイミング数がＮの例）
図１９は、タイミング数がＮの場合における判定部４０４の一例を示す説明図である。判定部４０４は、連続的なタイミングの変化を検出することによって、復元タイミングの遷移方向が進角方向に対して順方向であるか逆方向であるかを判断する。信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値は０であれば、復元タイミングの遷移方向が進角方向に対して逆方向であることを示す。信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値は１であれば、復元タイミングの遷移方向が進角方向に対して順方向であることを示す。
【０１６７】
判定部４０４は、ＡＮＤ１９０１〜１９０Ｎと、ＮＡＮＤ１９１１〜１９１Ｎと、ＯＲ１９２１と、ＯＲ１９２２と、ＡＮＤ１９３１と、ＦＦ１９３２と、を有している。より具体的には、判定部４０４は、ＡＮＤ１９０１〜１９０Ｎと、ＯＲ１９２１と、によって、復元タイミングの遷移方向が進角方向に対して順方向であることを検出する。ＡＮＤ１９０ｉ（ｉ≧２）を例に挙げると、ＡＮＤ１９０ｉには、信号ＵＳＥ（ｉ）と信号ＰＲＥ＿ＵＳＥ（ｉ−１）とが入力され、ＡＮＤ１９０ｉの出力信号は、ＯＲ１９２１に入力される。
【０１６８】
判定部４０４は、ＮＡＮＤ１９１１〜１９１Ｎと、ＯＲ１９２２と、によって、復元タイミングの遷移方向が進角方向に対して逆方向であることを検出する。ＮＡＮＤ１９１ｉ（ｉ≧２）を例に挙げると、ＮＡＮＤ１９１ｉには、信号ＵＳＥ（ｉ）と信号ＰＲＥ＿ＵＳＥ（ｉ＋１）とが入力され、ＮＡＮＤ１９１ｉの出力信号がＯＲ１９２２に入力される。
【０１６９】
ＯＲ１９２１には、ＡＮＤ１９０１〜ＡＮＤ１９０Ｎのそれぞれの出力信号が入力される。ＯＲ１９２２には、ＮＡＮＤ１９１１〜ＮＡＮＤ１９１Ｎのそれぞれの出力信号が入力される。ＡＮＤ１９３１には、ＯＲ１９２１の出力信号と、ＯＲ１９２２の出力信号と、が入力される。
【０１７０】
ＦＦ１９３２は、データ信号としてＡＮＤ１９３１の出力信号が入力され、クロック信号として信号ＣＬＫ２−０が入力される。ＦＦ１９３２の出力信号は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎである。
【０１７１】
図２０は、タイミング数がＮの場合における有効情報生成部４０５の一例を示す説明図である。有効情報生成部４０５は、信号ＤＶＡＬＩＤ［０］と信号ＤＶＡＬＩＤ［１］のそれぞれの値を決定している。ここでは、タイミング数がＮであっても、タイミングの変化において２以上のタイミングを飛ばして変化しないことを前提としている。
【０１７２】
有効情報生成部４０５は、第１の有効情報生成部２０００−１と第２の有効情報生成部２０００−２とを有している。第１の有効情報生成部２０００−１は、ＡＮＤ２００５〜２００７と、ＯＲ２００８と、ＩＮＶＥＲＴＥＲ２００９と、ＩＮＶＥＲＴＥＲ２０１０と、を有している。
【０１７３】
ＡＮＤ２００５には、信号ＵＳＥ（Ｎ）と信号ＰＲＥ＿ＵＳＥ（１）が入力される。ＩＮＶＥＲＴＥＲ２００９とＩＮＶＥＲＴＥＲ２０１０には、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎが入力される。ＡＮＤ２００６には、信号ＵＳＥ（Ｎ−１）と信号ＰＲＥ＿ＵＳＥ（１）とＩＮＶＥＲＴＥＲ２０９の出力信号が入力される。ＡＮＤ２００７には、信号ＵＳＥ（Ｎ）と信号ＰＲＥ＿ＵＳＥ（２）とＩＮＶＥＲＴＥＲ２０１０の出力信号が入力される。ＯＲ２００８には、ＡＮＤ２００５の出力信号と、ＡＮＤ２００６の出力信号と、ＡＮＤ２００７の出力信号と、が入力される。ＯＲ２００８の出力信号はＤＶＡＩＤ［１］である。
【０１７４】
第１の有効情報生成部２０００−１は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が０の場合に、信号ＰＲＥ＿ＵＳＥ（１）の値が１であり、かつ信号ＵＳＥ（Ｎ−１）の値が１であると、信号ＤＶＡＬＩＤ［１］の値を１に設定する。または、第１の有効情報生成部２０００−１は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が０の場合に、信号ＰＲＥ＿ＵＳＥ（２）の値が１であり、かつ信号ＵＳＥ（Ｎ）の値が１であると、信号ＤＶＡＬＩＤ［１］の値を１に設定する。または、第１の有効情報生成部２０００−１は、信号ＰＲＥ＿ＵＳＥ（１）の値が１であり、かつ信号ＵＳＥ（Ｎ）の値が１であると、信号ＤＶＡＬＩＤ［１］の値を１に設定する。
【０１７５】
第２の有効情報生成部２０００−２は、ＡＮＤ２００１〜２００３とＮＯＲ２００４とを有している。ＡＮＤ２００１には、信号ＰＲＥ＿ＵＳＥ（Ｎ）と信号ＵＳＥ（１）が入力される。ＡＮＤ２００２には、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎと信号ＰＲＥ＿ＵＳＥ（Ｎ）と信号ＵＳＥ（２）が入力される。ＡＮＤ２００３には、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎと信号ＰＲＥ＿ＵＳＥ（Ｎ−１）と信号ＵＳＥ（１）が入力される。
【０１７６】
ＮＯＲ２００４には、ＡＮＤ２００１の出力信号と、ＡＮＤ２００２の出力信号と、ＡＮＤ２００３の出力信号と、が入力される。ＮＯＲ２００４の出力信号は、信号ＤＶＡＬＩＤ［０］である。
【０１７７】
第２の有効情報生成部２０００−２は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が１の場合に、信号ＰＲＥ＿ＵＳＥ（Ｎ−１）の値が１であり、かつ信号ＵＳＥ（１）の値が１であると、信号ＤＶＡＬＩＤ［０］の値を０に設定する。または、第２の有効情報生成部２０００−２は、信号ｆｏｒｗａｒｄ＿ｄｉｒｅｃｔｉｏｎの値が１の場合に、信号ＰＲＥ＿ＵＳＥ（Ｎ）の値が１であり、かつ信号ＵＳＥ（２）の値が１であると、信号ＤＶＡＬＩＤ［０］の値を０に設定する。または、第２の有効情報生成部２０００−２は、信号ＰＲＥ＿ＵＳＥ（Ｎ）の値が１であり、かつ信号ＵＳＥ（１）の値が１であると、信号ＤＶＡＬＩＤ［０］の値を０に設定する。
【０１７８】
以上説明したように、受信装置は、復元タイミングの遷移方向が進角方向に対して逆方向であるか否かを判定する。そして、受信装置は、判定結果と、復元タイミングの変化の期間が受信クロックの２周期に跨ってしまうか否かの判断結果と、によって、複数の受信されたデータから前回選択信号に基づいて選択された転送データを有効にするか否かを決定する。
これにより、受信クロックと送信クロックとのいずれの周波数が高いかが事前に不明であっても、送信クロックの周波数が受信クロックの周波数よりも高いことにより発生する復元データの欠落を防止することができる。さらに、受信クロックと送信クロックとのいずれのクロックの周波数が高いかが事前に不明であっても、受信クロックの周波数が送信クロックの周波数よりも高いために発生する復元データの重複を防止することができる。したがって、復元精度を向上させることができる。
【０１７９】
また、復元タイミングの遷移方向が進角方向に対して逆方向である場合には、送信クロックの周波数が受信クロックの周波数よりも高い。そのため、受信装置は、復元タイミングの変化の期間が受信クロックの２周期に跨ってしまうと復元データが欠落してしまうので、変化前の復元タイミングから複数のタイミングの発生順序にしたがって１周期未満の復元タイミングで受信したデータを復元対象に加える。これにより、跨いだときに飛ばしたデータが復元対象になるため、復元データの欠落を防ぐことができる。したがって、復元精度を向上させることができる。
【０１８０】
また、受信装置は、復元タイミングの遷移方向が進角方向に対して順方向である場合には、送信クロックの周波数が受信クロックの周波数よりも低い。そのため、復元タイミングの変化の期間が受信クロックの２周期に跨ってしまうと同一データを重複して復元対象にするので、復元タイミングで受信したデータ群から、変化前または変化後のいずれか一方の復元タイミングで受信したデータを除いたデータを復元対象にする。これにより、同一データが重複して復元対象になることを防ぐことができる。したがって、復元精度を向上させることができる。
【０１８１】
また、受信装置は、復元タイミングの変化が連続的である場合に、復元タイミングの変化の期間が、複数のタイミングの周期を超えていれば、選択した複数の転送データの有効情報のいずれかを真値として生成する。これにより、受信装置は、復元データの欠落や復元データの重複を防止することができる。
【符号の説明】
【０１８２】
３００  送受信システム
３０１  送信装置
３０２  受信装置
３１１  送信側クロックジェネレータ
３１２  シリアライザ
３２１  受信側クロックジェネレータ
３２２  ＤＬＬ
４０１  受信部
４０２  検出部
４０３  決定部
４０４  判定部
４０５  有効情報生成部
４０６  選択部
データ  ｄ１〜ｄ１０
【図１】
2013141102.tif 000003
【図２】
2013141102.tif 000004
【図３】
2013141102.tif 000005
【図４】
2013141102.tif 000006
【図５】
2013141102.tif 000007
【図６】
2013141102.tif 000008
【図７】
2013141102.tif 000009
【図８】
2013141102.tif 000010
【図９】
2013141102.tif 000011
【図１０】
2013141102.tif 000012
【図１１】
2013141102.tif 000013
【図１２】
2013141102.tif 000014
【図１３】
2013141102.tif 000015
【図１４】
2013141102.tif 000016
【図１５】
2013141102.tif 000017
【図１６】
2013141102.tif 000018
【図１７】
2013141102.tif 000019
【図１８】
2013141102.tif 000020
【図１９】
2013141102.tif 000021
【図２０】
2013141102.tif 000022