JP2013141102A - 受信装置、送受信システム、および復元方法 - Google Patents

受信装置、送受信システム、および復元方法 Download PDF

Info

Publication number
JP2013141102A
JP2013141102A JP2011290188A JP2011290188A JP2013141102A JP 2013141102 A JP2013141102 A JP 2013141102A JP 2011290188 A JP2011290188 A JP 2011290188A JP 2011290188 A JP2011290188 A JP 2011290188A JP 2013141102 A JP2013141102 A JP 2013141102A
Authority
JP
Japan
Prior art keywords
signal
data
timing
unit
restoration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2011290188A
Other languages
English (en)
Inventor
Haruka Hirai
遥 平井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2011290188A priority Critical patent/JP2013141102A/ja
Priority to US13/661,139 priority patent/US8811501B2/en
Publication of JP2013141102A publication Critical patent/JP2013141102A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • H04L7/033Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop
    • H04L7/0337Selecting between two or more discretely delayed clocks or selecting between two or more discretely delayed received code signals
    • H04L7/0338Selecting between two or more discretely delayed clocks or selecting between two or more discretely delayed received code signals the correction of the phase error being performed by a feed forward loop

Abstract

【課題】データの復元精度を向上させること。
【解決手段】受信装置は、複数の受信データと、複数の受信データのそれぞれに対応する複数の前回選択信号に基づいて、複数の受信データから転送データを選択する。復元タイミングはタイミングDからタイミングCへ変化しているため、受信装置は、復元タイミングの遷移方向が進角方向に対して逆方向であると判定する。受信装置は、復元タイミングの遷移方向が進角方向に対して逆方向である場合において、復元タイミングの変化の期間が複数のタイミングの発生周期を超えている場合、複数の転送データの有効情報の全てを真値として生成する。復元タイミングでのデータd1〜d5,d7,d8,d9に加えて、発生周期を超えていると判断された場合における復元タイミングから発生順序にしたがって発生周期を超えないタイミングで受信したデータd6と、が復元対象(○印のデータ)になっている。
【選択図】図1

Description

本発明は、受信装置、送受信システム、および復元方法に関する。
従来、受信装置が、送信装置が送信したデータ列であるシリアルデータを受信する際、受信装置と送信装置とのクロック周波数が異なるため、データを受信できない場合又は同一データを複数回受信してしまうことにより結果としてデータを正しく受信できない場合がある。そこで、受信装置が、送信装置が送信したデータを正しく受信するために、データを復元する技術が知られている。
関連する技術としては、たとえば、受信装置が、データ列をクロックから生成した複数のタイミングに基づいて受信し、複数のタイミングで受信したデータを復元する復元タイミングを動的に決定する。その際に、連続的な復元タイミングの変化が受信装置に供給されるクロックの1周期を超える場合に、受信装置が、復元対象のデータの追加や復元対象のデータ群からのデータの削除を行う技術が知られている(たとえば、下記非特許文献1を参照。)。
また、関連する技術としては、受信装置が、送信装置が送信したデータ列に同期したクロックを生成することで、データを復元する技術が知られている(たとえば、下記特許文献1参照。)。
特開2004−80792号公報
「データの復元 著者:Nick Sawyer」、Xilinx、XAPP244(v2.2)、2002年8月7日、p1〜p6
しかしながら、受信装置が受信したデータを復元するタイミングを動的に決定する場合において、送信装置から送信されてくるデータの変化が発生する頻度が少ないと、復元タイミングが離散的に変化してしまう。そのため、依然として、復元するデータが欠落したり同一データを複数回復元したりしてしまい、データの復元精度が低下してしまうという問題が発生してしまう。
1つの側面では、本発明は、データの復元精度を向上できる受信装置、送受信システム、および復元方法を提供することを目的とする。
本発明の一の側面によれば、所定周波数のクロック信号を生成するクロック生成部と、前記クロック生成部が生成したクロック信号と前記クロック信号を所定の位相進角させた複数のクロック信号を含み、複数のタイミングにそれぞれ対応する複数の進角クロック信号を生成するクロック進角部と、送信装置が送信したデータを前記複数の進角クロック信号を用いて、前記複数のタイミングでそれぞれ受信する受信部と、前記受信部が受信した複数の受信データの立ち上がりをそれぞれ検出するとともに、前記受信部が受信した複数の受信データの立ち下がりをそれぞれ検出する検出部と、前記検出部が検出した複数の受信データの立ち上がりと複数の受信データの立ち下がりに基づいて、前記複数のタイミングのうち前記データを復元する復元タイミングを決定する複数の選択信号と、前記複数の選択信号をそれぞれ保持した複数の前回選択信号を生成する決定部と、前記複数の選択信号と前記複数の前回選択信号に基づいて、前記複数のタイミングにおける復元タイミングの遷移方向を判定する判定部と、前記複数の受信データと、前記複数の受信データのそれぞれに対応する前記複数の前回選択信号に基づいて、前記複数の受信データから転送データを選択する選択部と、前記複数の選択信号と前記複数の前回選択信号と判定部が判定した前記遷移方向に基づいて、前記選択部が選択した転送データの有効情報を生成する有効情報生成部と、を有する受信装置、送受信システム、および復元方法が提案される。
本発明の一態様によれば、データの復元精度を向上できるという効果を奏する。
図1は、本発明にかかる受信装置によるデータの復元例1を示す説明図である。 図2は、本発明にかかる受信装置によるデータの復元例2を示す説明図である。 図3は、送受信システムの一例を示す説明図である。 図4は、データリカバリ部323の詳細例を示す説明図である。 図5は、受信部401の一例を示す説明図である。 図6は、検出部402の詳細例を示す説明図(その1)である。 図7は、検出部402の詳細例を示す説明図(その2)である。 図8は、決定部403の一例を示す説明図である。 図9は、判定部404の詳細を示す説明図である。 図10は、信号DVALIDによる信号SDATAの選択方法を示す説明図である。 図11は、有効情報生成部405の詳細例を示す説明図である。 図12は、選択部406の一例を示す説明図である。 図13は、タイミングAからタイミングCへの変化例を示す説明図である。 図14は、タイミングCからタイミングAへの変化例を示す説明図である。 図15は、タイミングAからタイミングDへの変化例を示す説明図である。 図16は、タイミングDからタイミングAへの変化例を示す説明図である。 図17は、デシリアライザ324による動作例1を示す説明図である。 図18は、デシリアライザ324による動作例2を示す説明図である。 図19は、タイミング数がNの場合における判定部404の一例を示す説明図である。 図20は、タイミング数がNの場合における有効情報生成部405の一例を示す説明図である。
本発明にかかる受信装置、送受信システム、および復元方法の実施の形態の詳細な説明に先立って、理解の容易化のために、データの復元について説明する。データの復元とは、送信装置に供給されるクロック(送信CLK、またはCLK1)と異なるクロック(受信CLK、またはCLK2)が供給される受信装置が、送信装置から送信されたシリアルデータを正しく受信するための手法である。受信装置は、送信装置から受信したシリアルデータを復元するタイミングを動的に決定する。
本実施の形態では、たとえば、受信装置が信号CLK2の1周期を、たとえば、4分割したタイミングのいずれかのタイミングで受信したデータを復元対象にする。信号CLK2の立ち上がりのタイミングをタイミングAと称し、信号CLK2の立ち上がりに対して90度位相がずれたクロックの立ち上がりのタイミングをタイミングBと称する。信号CLK2の立ち下がりのタイミングをタイミングCと称し、信号CLK2の立ち下がりに対して90度位相がずれたクロックの立ち下がりのタイミングをタイミングDと称する。よって、タイミングA〜タイミングDの発生周期は、信号CLK2の1周期とそれぞれ同一である。
図1は、本発明にかかる受信装置によるデータの復元例1を示す説明図である。タイミングチャート100では、信号DATAと、信号DATA−Aと、信号DATA−Bと、信号DATA−Cと、信号DATA−Dと、を示している。信号DATAでは、送信装置から送信されてくるデータ列を示している。データd1〜データd10は、データ列に含まれる各データである。信号DATA−Aでは、タイミングAで受信したデータを示している。信号DATA−Bでは、タイミングBで受信したデータを示している。信号DATA−Cでは、タイミングCで受信したデータを示している。信号DATA−Dでは、タイミングDで受信したデータを示している。理解の容易化のために、各データについて、データd1〜データd10を付しているが、受信装置は、データd1〜データd10のいずれであるかを判断することなく、単に各タイミングで信号DATAの値を受信している。
さらに、タイミングチャート100では、エッジ検出タイミングと、復元タイミングと、を示している。エッジ検出タイミングとは、信号DATAの値の変化が発生したタイミングである。たとえば、データd1とデータd2の値が異なるため、信号DATAの値に立ち上がりまたは立ち下がりの変化が発生する。データd1からデータd2への変化は、タイミングDとタイミングAとの間で発生しているため、エッジ検出タイミングは、タイミングAになる。エッジ検出タイミングは、上向きの矢印で示している。復元タイミングは複数のタイミングから選択されたタイミングであり、復元タイミングで受信したデータが復元対象である。タイミングチャート100において○印の付された受信データは、復元タイミングで受信したデータであり、復元対象である。
受信装置は、送信装置が送信したデータを複数のタイミングでそれぞれ受信する。複数のタイミングとは、タイミングA〜Dである。受信装置は、複数のタイミングで受信したデータに基づいて、複数のタイミングからエッジ検出タイミングを検出する。エッジ検出タイミングの検出方法については、従来と同一の方法を用いてもよいため、詳細な説明は図3〜図12、図19および図20を用いて後述する。
そして、受信装置は、エッジ検出タイミングに基づいて、複数のタイミングから復元タイミングを決定する。具体的には、受信装置は、復元タイミングを決定する複数の選択信号と、複数の選択信号をそれぞれ保持した複数の前回選択信号を生成する。復元タイミングの決定方法については、従来と同一の方法を用いてもよいため、詳細な説明は図3〜図12、図19および図20を用いて後述する。
受信装置は、複数の受信データと、複数の受信データのそれぞれに対応する複数の前回選択信号に基づいて、複数の受信データから転送データを選択する。
受信装置は、複数の選択信号と複数の前回選択信号に基づいて、複数のタイミングにおける復元タイミングの遷移方向を判定する。たとえば、受信装置は、復元タイミングの変化が連続的な場合に、復元タイミングの遷移方向を判定することができる。
たとえば、受信装置が、タイミングAからタイミングBへの復元タイミングの変化を検出することにより、復元タイミングの遷移方向は受信CLKの位相が進角する進角方向に対して順方向であると判断する。複数の選択信号のうち、イネーブルとなっている選択信号が示すタイミングがタイミングAであり、複数の前回選択信号のうち、イネーブルとなっている前回選択信号が示すタイミングがタイミングBであれば、タイミングAからタイミングBへの復元タイミングの変化が検出される。タイミングAからタイミングDの順序(A→B→C→D→A・・・・)であり、受信CLKの位相が進角する順序を複数のタイミングの発生順序と称する。よって、進角方向に対して順方向とは、タイミングAからタイミングB、タイミングBからタイミングC、タイミングCからタイミングD、タイミングDからタイミングAのように複数のタイミングの発生順序にしたがう方向である。
たとえば、受信装置は、タイミングBからタイミングAへの復元タイミングの変化を検出することにより、復元タイミングの遷移方向は進角方向に対して逆方向であると判定する。進角方向に対して逆方向とは、タイミングAからタイミングD、タイミングDからタイミングC、タイミングCからタイミングB、タイミングBからタイミングAのような複数のタイミングの発生順序にしたがわない方向である。
また、たとえば、復元タイミングの変化が発生順序にしたがっている場合、信号CLK2の周波数が信号CLK1の周波数よりも高い。たとえば、復元タイミングの変化が、発生順序にしたがっていない場合、信号CLK1の周波数が信号CLK2の周波数よりも高い。
図1の例では、復元タイミングはタイミングDからタイミングCへ変化しているため、受信装置は、復元タイミングの遷移方向が進角方向に対して逆方向であると判定する。
そして、受信装置は、復元タイミングの遷移方向が進角方向に対して逆方向である場合において、復元タイミングがタイミングAからタイミングCに変化すると、復元タイミングの変化の期間が複数のタイミングの発生周期を超えていると判断する。図1中において点線の四角で囲われている箇所が、タイミングAからタイミングCへの復元タイミングの変化である。
そして、受信装置は、複数の選択信号と複数の前回選択信号と復元タイミングの遷移方向に基づいて、転送データの有効情報を生成する。図1の例では、受信装置は、復元タイミングの遷移方向が進角方向に対して逆方向であり、復元タイミングの変化の期間が複数のタイミングの発生周期を超えている場合、複数の転送データの有効情報の全てを真値として生成する
図1において、○印のデータが復元対象である。復元タイミングでのデータd1〜d5,d7,d8,d9に加えて、発生周期を超えていると判断された場合における復元タイミングから発生順序にしたがって発生周期を超えないタイミングで受信したデータd6と、が復元対象になっている。
また、図1で示していないが、受信装置は、発生順序にしたがっていない場合において、復元タイミングがタイミングBからタイミングDに変化した場合、復元タイミングの変化の期間が、複数のタイミングの発生周期を超えていると判断する。または、図1で示していないが、受信装置は、復元タイミングがタイミングAからタイミングDに変化した場合、復元タイミングの変化の期間が複数のタイミングの発生周期を超えていると判断する。
復元タイミングで受信したデータ群のデータは、DATA−Dのデータd1と、DATA−Cのデータd2と、DATA−Bのデータd3と、DATA−Aのデータd4と、DATA−Aのデータd5と、である。さらに、復元タイミングで受信したデータ群のデータは、DATA−Cのデータd7と、DATA−Bのデータd8と、DATA−Aのデータd9と、である。上述したように、タイミングAからタイミングCの変化が、複数のタイミングの発生周期を超えると判断されたため、タイミングAから発生順序にしたがって発生周期を超えないタイミングで受信したデータは、DATA−Dのデータd6(=データd5)やDATA−Cのデータd6(=データd5)が挙げられる。ここでは、タイミングAで受信したデータのつぎのデータとなる可能性が高くなるため、タイミングAから発生順序にしたがって、2タイミング程度離れているタイミングCやタイミングDでのデータを復元対象にしている。
図1の例によれば、復元データの欠落を防ぐことができる。したがって、復元精度を向上させることができる。
図2は、本発明にかかる受信装置によるデータの復元例2を示す説明図である。タイミングチャート200では、タイミングチャート100と同様に、信号DATAと、信号DATA−Aと、信号DATA−Bと、信号DATA−Cと、信号DATA−Dと、エッジ検出タイミングと、復元タイミングと、を示している。
図2の例では、復元タイミングはタイミングAからタイミングBへ変化しているため、受信装置は、復元タイミングの遷移方向が進角方向に対して順方向であると判定する。
そして、受信装置は、復元タイミングの遷移方向が進角方向に対して順方向である場合において、復元タイミングがタイミングCからタイミングAに変化すると、復元タイミングの変化の期間が複数のタイミングの発生周期を超えていると判断する。図2中において点線の四角で囲われている箇所が、タイミングCからタイミングAへの復元タイミングの変化である。
そして、受信装置は、複数の選択信号と複数の前回選択信号と復元タイミングの遷移方向に基づいて、転送データの有効情報を生成する。図2の例では、受信装置は、復元タイミングの遷移方向が進角方向に対して順方向であり、復元タイミングの変化の期間が複数のタイミングの発生周期を超えている場合、複数の転送データの有効情報の全てを偽値として生成する
図2において、○印のデータが復元対象である。復元タイミングでのデータから、復元タイミングの変化の期間が複数のタイミングの発生周期を超えている場合における変化前の復元タイミングまたは変化後の復元タイミングのいずれか一方の復元タイミングにおける復元対象となるデータが除かれている。
復元タイミングで受信したデータ群は、DATA−Aのデータd1と、DATA−Bのデータd2と、DATA−Cのデータd3と、DATA−Cのデータd4と、である。さらに、復元タイミングで受信したデータは、DATC−Cのデータd5と、DATA−Aのデータd5と、DATA−Bのデータd6と、DATA−Bのデータd7と、DATA−Cのデータd8と、である。第1の復元タイミングで受信したデータは、DATC−Cのデータd5であり、第2の復元タイミングで受信したデータは、DATA−Aのデータd5である。そのため、データd5が重複して復元対象になってしまうため、図2の例では、受信装置が、復元タイミングで受信したデータ群からDATC−Cのデータd5を除いたデータ群を復元対象にする。
図2の例によれば、同一データを重複して復元するのを防ぐことができる。したがって、復元精度を向上させることができる。
(送受信システム)
図3は、送受信システムの一例を示す説明図である。送受信システム300は、送信装置301と、受信装置302と、を有している。送信装置301は、送信側クロックジェネレータ311と、シリアライザ312と、を有している。
送信側クロックジェネレータ311は、シリアライザ312へ信号CLK1を供給するPLL(Phase Locked Loop)回路等のクロック発生回路である。シリアライザ312は、信号CLK1の立ち上がりエッジに応じて、パラレルデータからシリアルデータに変換されたDATAを受信装置302に送信する送信部である。
受信装置302は、受信側クロックジェネレータ321と、DLL322と、データリカバリ部323と、デシリアライザ324と、を有している。
受信側クロックジェネレータ321は、所定周波数のクロック信号を生成するクロック生成部である。たとえば、受信側クロックジェネレータ321は、DLL322とデシリアライザ324へ信号CLK2を供給するクロックを発生するPLL(Phase Locked Loop)回路等のクロック発生回路である。
DLL(Delay Locked Loop)322は、受信側クロックジェネレータ321が生成した信号CLK2と信号CLK2を所定の位相進角させた信号CLK2−0と信号CLK2−90を含み、複数のタイミングにそれぞれ対応する複数の進角クロック信号を生成するクロック進角部である。複数のタイミングとは、上述したタイミングA〜タイミングDである。たとえば、DLL(Delay Locked Loop)322は、受信側クロックジェネレータ321が発生した信号CLK2に基づき、信号CLK2の位相を遅延しない信号CLK2−0と、信号CLK2の位相を90度進角させた信号CLK2−90と、をデータリカバリ部323へ供給する遅延回路である。
データリカバリ部323の詳細は、図4を用いて後述する。デシリアライザ324は、信号DVALIDの値に基づいて、信号SDATAから、送信装置が送信したデータ群を復元する。デシリアライザ324によるデータの復元例は、図18を用いて後述する。また、ここでは、復元タイミングの変化が離散的であっても、復元タイミングの変化において2以上のタイミングが飛ばされないことを前提としている。
また、実施の形態では、データリカバリ部323が、復元タイミングの変化が発生順序にしたがわない場合におけるデータの欠落を防ぐ機能と、発生順序にしたがう場合におけるデータの重複を防ぐ機能と、の両方の機能を実現した回路を有する。これに限らず、たとえば、受信クロックと送信クロックの周波数関係があらかじめ明確であれば、データリカバリ部323は、2つの機能のうちのいずれか一方の機能を実現した回路を有していればよい。
図4は、データリカバリ部323の詳細例を示す説明図である。データリカバリ部323は、受信部401と、検出部402と、決定部403と、判定部404と、選択部406と、有効情報生成部405と、を有している。各部は、たとえば、論理積回路であるAND、否定論理回路であるINVERTER、論理和回路であるORや、ラッチ回路であるFF(Flip Flop)などの素子によって形成される。または、各部は、たとえば、Verilog−HDL(Hardware Description Language)などの記述によって機能定義し、その記述を論理合成してFPGA(Field Programmable Gate Array)によって実現させてもよい。
図5は、受信部401の一例を示す説明図である。受信部401は、信号CLK2−0と信号CLK−90を用いて、複数のタイミングでそれぞれ受信する。上述したように、複数のタイミングは、タイミングA〜タイミングDである。具体的には、たとえば、受信部401は、信号CLK2−0の立ち上がりタイミングと、信号CLK2−0の立ち下がりタイミングと、信号CLK2−90の立ち上がりタイミングと、信号CLK2−90の立ち下がりタイミングと、でDATAを受信する。たとえば、受信部401は、FF500−A〜500−Dと、FF501−A〜501−Dと、FF502−A〜502−Dと、FF503−A〜503−Dと、INVERTER504〜506と、を有している。受信部401は、メタステーブル状態を回避し、異なるタイミングで取り込んだデータを同一のタイムドメインに移行させるため、4段階に分けてクロックが供給される。
受信部401は、FF500−Aによって、信号CLK2−0の立ち上がりタイミングでDATAを受信し、FF501−Aから503−Aによって、受信したDATAを信号CLK2−0の立ち上がりタイミングで転送する。FF502−Aの出力信号が信号AZ2であり、FF503−Aの出力信号が信号AZ3である。信号AZ3の値が、DATAを信号CLK2−0の立ち上がりタイミングで受信したデータである。
FF500−AからFF503−Aには、クロック信号として信号CLK2−0が入力される。FF500−Aには、データ信号としてDATAが入力される。FF501−Aには、データ信号としてFF500−Aの出力信号が入力される。FF502−Aには、データ信号としてFF501−Aの出力信号が入力される。FF503−Aには、データ信号としてFF502−Aの出力信号が入力される。
受信部401は、FF500−Bによって、信号CLK2−90の立ち上がりタイミングでDATAを受信し、FF501−B〜503−Bによって、FF500−Bで受信したDATAを信号CLK2−0の立ち上がりタイミングで転送する。FF502−Bの出力信号が信号BZ2であり、FF503−Bの出力信号が信号BZ3である。信号BZ3の値が、DATAを信号CLK2−90の立ち上がりタイミングで受信したデータである。
FF500−Bには、クロック信号として信号CLK2−90が入力される。FF501−BとFF502−BとFF503−Bには、クロック信号として信号CLK2−0が入力される。FF500−Bには、データ信号としてDATAが入力される。FF501−Bには、データ信号としてFF500−Bが入力される。FF502−Bには、データ信号としてFF501−Bが入力される。FF503−Bには、データ信号としてFF502−Bが入力される。
受信部401は、FF500−Cによって、信号CLK2−0の立ち下がりタイミングでDATAを受信し、FF501−Cによって、受信したDATAを信号CLK2−90の立ち上がりタイミングで転送する。そして、受信部401は、FF502−CとFF503−Cによって、信号CLK2−0の立ち上がりタイミングで転送する。FF502−Cの出力信号が信号CZ2であり、FF503−Cの出力信号が信号CZ3である。信号CZ3の値が、DATAを信号CLK2−0の立ち下がりタイミングで受信したデータである。
INVERTER504には、信号CLK2−0が入力される。FF500−Cには、クロック信号としてINVERTER504の出力信号が入力される。FF501−CとFF502−Cとは、クロック信号としてCLL2ー90が入力される。FF503−Cには、クロック信号として信号CLK2−0が入力される。FF500−Cには、データ信号としてDATAが入力される。FF501−Cには、データ信号としてFF500−Cの出力信号が入力される。FF502−Cには、データ信号としてFF501−Cの出力信号が入力される。FF503−Cには、データ信号としてFF502−Cの出力信号が入力される。
受信部401は、FF500−Dによって、信号CLK2−90の立ち下がりタイミングでDATAを受信し、FF501−Cによって、受信したDATAを信号CLK2−0の立ち上がりタイミングで転送する。そして、受信部401は、FF502−Cによって、信号CLK2−90の立ち上がりタイミングで転送し、FF503−Cによって、信号CLK2−0の立ち上がりタイミングで転送する。FF502−Cの出力信号が信号CZ2であり、FF503−Cの出力信号が信号DZ3である。信号DZ3の値が、信号CLK2−90の立ち下がりタイミングで受信したDATAである。
INVERTER505には、信号CLK2−90が入力される。INVERTER506には、信号CLK2−0が入力される。FF500−Dには、クロック信号としてINVERTER505の出力信号が入力される。FF501−Dには、クロック信号としてINVERTER506の出力信号が入力される。FF502−Dには、クロック信号としてCLK2−90が入力される。FF503−Dには、クロック信号として信号CLK2−0が入力される。FF500−Dには、データ信号としてDATAが入力される。FF501−Dには、データ信号としてFF500−Dの出力信号が入力される。FF502−Dには、データ信号としてFF501−Dの出力信号が入力される。FF503−Dには、データ信号としてFF502−Dの出力信号が入力される。
図6および図7は、検出部402の詳細例を示す説明図である。検出部402は、受信部401が受信した複数の受信データの立ち上がりをそれぞれ検出するとともに、受信部401が受信した複数の受信データの立ち下がりをそれぞれ検出する。
具体的には、たとえば、検出部402は、複数のタイミングのタイミングごとに受信データの正の遷移を示す信号と、タイミングごとに受信データの負の遷移を示す信号と、を出力する。正の遷移とは0から1への変化であるため、正の遷移を示す信号とは、受信データの立ち下がり変化の検出を示す信号である。負の遷移とは1から0への変化であるため、負の遷移を示す信号とは、受信データの立ち上がり変化の検出を示す信号である。図6では、受信データの立ち下がり変化の検出を示す信号は信号AAP、信号BBP、信号CCPおよび信号DDPである。図7の例では、受信データの立ち上がり変化の検出を示す信号は、信号AAN、信号BBN、信号CCNおよび信号DDNである。
具体的には、検出部402は、排他的論理和回路(Exclusive−OR回路)であるEXOR601−AP〜601−DPと、AND602−AP〜602−DPと、FF603−AP〜603−DPと、INVERTER604−AP〜604−DPと、を有している。さらに、検出部402は、EXOR701−AN〜701−DNと、AND702−AN〜702−DNと、FF703−AN〜703−DNと、を有している。
まず、タイミングAで受信された受信データの立ち下がりの検出例について図6を用いて説明する。タイミングAで受信された受信データの立ち下がりは、EXOR601−APと、AND602−APと、FF603−APと、INVERTER604−APと、によって検出される。FF603−APの出力信号である信号AAPの値が1の場合、タイミングAで受信された受信データの立ち下がりが検出されたことを示し、信号AAPの値が0の場合、タイミングAで受信された受信データの立ち下がりが検出されていないことを示す。
INVERTER604−APには、信号AZ2が入力される。EXOR601−APには、信号AZ2と信号AZ3が入力される。AND602−APには、EXOR601−APの出力信号とINVERTER604−APの出力信号が入力される。FF603−APには、データ信号としてAND602−APの出力信号が入力され、クロック信号として信号CLK2−0が入力される。FF603−APの出力信号は、信号AAPである。すなわち、信号AZ2の値が0であり、かつ信号AZ2の値と信号AZ3の値とが異なれば、信号AAPの値は1となり、それ以外の場合には、信号AAPの値は0になる。
つぎに、タイミングBで受信された受信データの立ち下がりの検出例について図6を用いて説明する。タイミングBで受信された受信データの立ち下がりは、EXOR601−BPと、AND602−BPと、FF603−BPと、INVERTER604−BPと、によって検出される。FF603−BPの出力信号である信号BBPの値が1の場合、タイミングBで受信された受信データの立ち下がりが検出されたことを示し、信号BBPの値が0の場合、タイミングBで受信された受信データの立ち下がりが検出されていないことを示す。
INVERTER604−BPには、信号BZ2が入力される。EXOR601−BPには、信号BZ2と信号BZ3が入力される。AND602−BPには、EXOR601−BPの出力信号とINVERTER604−BPの出力信号とが入力される。FF603−BPには、データ信号としてAND602−BPの出力信号が入力され、クロック信号として信号CLK2−0が入力される。FF603−BPの出力信号は、BBPである。すなわち、信号BZ2の値が0であり、かつ信号BZ2の値と信号BZ3の値とが異なれば、信号BBPの値は1となり、それ以外の場合には、信号BBPの値は0になる。
つぎに、タイミングCで受信された受信データの立ち下がりの検出例について図6を用いて説明する。タイミングCで受信された受信データの立ち下がりは、EXOR601−CPと、AND602−CPと、FF603−CPと、INVERTER604−CPと、によって検出される。FF603−CPの出力信号である信号CCPの値が1の場合、タイミングCで受信された受信データの立ち下がりが検出されたことを示し、信号CCPの値が0の場合、タイミングCで受信された受信データの立ち下がりが検出されていないことを示す。
INVERTER604−CPには信号CZ2が入力される。EXOR601−CPには信号CZ2と信号CZ3が入力される。AND602−CPには、EXOR601−CPの出力信号とINVERTER604−CPの出力信号とが入力される。FF603−CPには、データ信号としてAND602−CPの出力信号が入力され、クロック信号として信号CLK2−0が入力される。FF603−CPの出力信号は、CCPである。すなわち、信号CZ2の値が0であり、かつ信号CZ2の値と信号CZ3の値とが異なれば、信号CCPの値は1となり、それ以外の場合には、信号CCPの値は0になる。
そして、タイミングDで受信された受信データの立ち下がりの検出例について図6を用いて説明する。タイミングDで受信された受信データの立ち下がりは、EXOR601−DPと、AND602−DPと、FF603−DPと、INVERTER604−DPと、によって検出される。FF603−DPの出力信号である信号DDPの値が1の場合、タイミングDで受信された受信データの立ち下がりが検出されたことを示し、信号DDPの値が0の場合、タイミングDで受信された受信データの立ち下がりが検出されていないことを示す。
INVERTER604−DPには、信号DZ2が入力される。EXOR601−DPには、信号DZ2と信号DZ3が入力される。AND602−DPには、EXOR601−DPの出力信号とINVERTER604−DPの出力信号とが入力される。FF603−DPには、データ信号としてAND602−DPの出力信号が入力され、クロック信号として信号CLK2−0が入力される。FF603−DPの出力信号は、DDPである。すなわち、信号DZ2の値が0であり、かつ信号DZ2の値と信号DZ3の値とが異なれば、信号DDPの値は1となり、それ以外の場合には、信号DDPの値は0になる。
つぎに、タイミングAで受信された受信データの立ち上がりの検出例について図6を用いて説明する。タイミングAで受信された受信データの立ち上がりは、EXOR701−ANと、AND702−ANと、FF703−ANと、によって検出される。FF703−ANの出力信号である信号AANの値が1の場合、タイミングAで受信された受信データの立ち上がりが検出されたことを示し、信号AANの値が0の場合、タイミングAで受信された受信データの立ち上がりが検出されていないことを示す。
EXOR701−ANには、信号AZ2と信号AZ3が入力される。AND702−ANには、EXOR701−ANの出力信号と信号AZ2とが入力される。FF703−ANには、データ信号としてAND702−ANの出力信号が入力され、クロック信号として信号CLK2−0が入力される。すなわち、信号AZ2の値が1であり、かつ信号AZ3の値が0であれば、信号AANの値は1になり、それ以外の場合には、信号AANの値は0になる。
そして、タイミングBで受信された受信データの立ち上がりの検出例について図6を用いて説明する。タイミングBで受信された受信データの立ち上がりは、EXOR701−BNと、AND702−BNと、FF703−BNと、によって検出される。FF703−BNの出力信号である信号BBNの値が1の場合、タイミングBで受信された受信データの立ち上がりが検出されたことを示し、信号BBNの値が0の場合、タイミングBで受信された受信データの立ち上がりが検出されていないことを示す。
EXOR701−BNには、信号BZ2と信号BZ3が入力される。AND702−BNには、EXOR701−BNの出力信号と信号BZ2とが入力される。FF703−BNには、データ信号としてAND702−BNの出力信号が入力され、クロック信号として信号CLK2−0が入力される。すなわち、信号BZ2の値が1であり、かつ信号BZ3の値が0であれば、信号BBNの値は1になり、それ以外の場合には、信号AANの値は0になる。
そして、タイミングCで受信された受信データの立ち上がりの検出例について図6を用いて説明する。タイミングCで受信された受信データの立ち上がりは、EXOR701−CNと、AND702−CNと、FF703−CNと、によって検出される。FF703−CNの出力信号である信号CCNの値が1の場合、タイミングCで受信された受信データの立ち上がりが検出されたことを示し、信号CCNの値が0の場合、タイミングCで受信された受信データの立ち上がりが検出されていないことを示す。
EXOR701−CNには、信号CZ2と信号CZ3が入力される。AND702−CNには、EXOR701−CNの出力信号と信号CZ2とが入力される。FF703−CNには、データ信号としてAND702−CNの出力信号が入力され、クロック信号として信号CLK2−0が入力される。すなわち、信号CZ2の値が1であり、かつ信号CZ3の値が0であれば、信号CCNの値は1になり、それ以外の場合には、信号AANの値は0になる。
最後に、タイミングDで受信された受信データの立ち上がりの検出例について図6を用いて説明する。タイミングDで受信された受信データの立ち上がりは、EXOR701−DNと、AND702−DNと、FF703−DNと、によって検出される。FF703−DNの出力信号である信号DDNの値が1の場合、タイミングDで受信された受信データの立ち上がりが検出されたことを示し、信号DDNの値が0の場合、タイミングDで受信された受信データの立ち上がりが検出されていないことを示す。
EXOR701−DNには、信号DZ2と信号DZ3が入力される。AND702−DNには、EXOR701−DNの出力信号と信号DZ2とが入力される。FF703−DNには、データ信号としてAND702−DNの出力信号が入力され、クロック信号として信号CLK2−0が入力される。すなわち、信号DZ2の値が1であり、かつ信号DZ3の値が0であれば、信号DDNの値は1になり、それ以外の場合には、信号AANの値は0になる。
図8は、決定部403の一例を示す説明図である。決定部403は、検出部402が検出した複数の受信データの立ち上がりと複数の受信データの立ち下がりに基づいて、複数のタイミングのうちデータを復元する復元タイミングを決定する複数の選択信号と、複数の選択信号をそれぞれ保持した複数の前回選択信号を生成する。図8の例では、複数の選択信号は、信号USEA、信号USEB、信号USEDおよび信号USEDである。信号USEAと、信号USEBと、信号USECと、信号USEDと、のうち、同時に二つ以上の信号の値が1にならない。図8の例では、複数の前回選択信号は、信号PRE_USEA、信号PRE_USEB、信号PRE_USECおよび信号PRE_USEDである。信号PRE_USEAと、信号PRE_USEBと、信号PRE_USECと、信号PRE_USEDと、のうち、同時に二つ以上の信号の値が1にならない。
決定部403は、AND801−A〜801−Dと、AND802−A〜802−Dと、OR803−A〜803−Dと、FF804−A〜804−Dと、INVERTER805〜816と、を有している。
信号AAP=信号BBP=1および信号CCP=信号DDP=0、または信号AAN=信号BBN=1および信号CCN=信号DDN=0の場合、タイミングAでのデータが復元対象になるため、信号USEAの値が1になり、それ以外の場合には、信号USEAの値は0になる。
信号AAP=信号BBP=信号CCP=1および信号DDP=0、または信号AAN=信号BBN=信号CCN=1および信号DDN=0の場合、タイミングBでのデータが復元対象になるため、信号USEBの値が1になり、それ以外の場合には、信号USEBの値は0になる。
信号AAP=信号BBP=信号CCP=信号DDP=1、または信号AAN=信号BBN=信号CCN=信号DDN=1の場合、タイミングCでのデータが復元対象になるため、信号USECの値が1になり、それ以外の場合には、信号USECの値は0になる。
信号AAP=1および信号BBP=信号CCP=信号DDP=0、または信号AAN=1および信号BBN=信号CCN=信号DDN=0の場合、タイミングDでのデータが復元対象になるため、信号USEDの値が1になり、それ以外の場合には、信号USEDの値は0になる。
まず、信号USEAの値は、INVERTER805と、INVERTER806と、INVERTER807と、INVERTER808と、AND801−Aと、AND802−Aと、OR803−Aと、が決定している。
INVERTER805には、信号CCPが入力される。INVERTER806には、信号DDPが入力される。AND801−Aには、信号AAPと、信号BBPと、INVERTER805の出力信号と、INVERTER806の出力信号と、が入力される。
INVERTER807には、信号CCNが入力される。INVERTER808には、信号DDNが入力される。AND802−Aには、信号AANと、信号BBNと、INVERTER807の出力信号と、INVERTER808の出力信号と、が入力される。
OR803−Aには、AND801−AとAND802−Aが入力される。OR803−Aの出力信号は、信号USEAである。FF804−Aには、データ信号として信号USEAが入力され、クロック信号として信号CLK2−0が入力される。FF804−Aの出力信号は、信号PRE_USEAである。
つぎに、信号USEBの値は、INVERTER809と、INVERTER810と、AND801−Bと、AND802−Bと、OR803−Bと、が決定している。
INVERTER809には信号DDPが入力される。AND801−Bには、信号AAPと、信号BBPと、信号CCPと、INVERTER809の出力信号と、が入力される。
INVERTER810には信号DDNが入力される。AND802−Bには、信号AANと、信号BBNと、信号CCNと、INVERTER810の出力信号と、が入力される。
OR803−Bには、AND801−Bの出力信号とAND802−Bの出力信号とが入力される。OR803−Bの出力信号は、信号USEBである。FF804−Bには、データ信号として信号USEBが入力され、クロック信号として信号CLK2−0が入力される。FF804−Bの出力信号は、信号PRE_USEBである。
そして、信号USECの値は、AND801−Cと、AND802−Cと、OR803−Cと、が決定している。
AND801−Cには、信号AAPと、信号BBPと、信号CCPと、信号DDPと、が入力される。AND802−Cには、信号AANと、信号BBNと、信号CCNと、信号DDNと、が入力される。
OR803−Cには、AND801−Cの出力信号とAND802−Cの出力信号が入力される。OR803−Cの出力信号は、信号USECである。FF804−Cには、データ信号として信号USECが入力され、クロック信号として信号CLK2−0が入力される。FF804−Cの出力信号は、信号PRE_USECである。
信号USEDの値は、INVERTER811〜816と、AND801−Dと、AND802−Dと、OR803−Dと、が決定している。
INVERTER811には、信号BBPが入力される。INVERTER812には、信号CCPが入力される。INVERTER813には、信号DDPが入力される。AND801−Dには、信号AAPと、INVERTER811の出力信号と、INVERTER812の出力信号と、INVERTER813の出力信号と、が入力される。
INVERTER814には、信号BBNが入力される。INVERTER815には、信号CCNが入力される。INVERTER816には、信号DDNが入力される。AND802−Dには、信号AANと、INVERTER814の出力信号と、INVERTER815の出力信号と、INVERTER816の出力信号と、が入力される。
OR803−Dには、AND801−Dの出力信号とAND802−Dの出力信号とが入力される。OR803−Dの出力信号は、信号USEDである。FF804−Dには、データ信号として信号USEDが入力され、クロック信号として信号CLK2−0が入力される。FF804−Dの出力信号は、信号PRE_USEDである。
図9は、判定部404の詳細を示す説明図である。復元タイミングの変化が離散的であると、復元タイミングの変化が発生順序にしたがっているか否かが不明である。そこで、判定部404は、複数の選択信号と複数の前回選択信号に基づいて、複数のタイミングにおける復元タイミングの遷移方向を判定する。
図9の例では、信号forward_directionは、復元タイミングの遷移方向を示す遷移方向信号である。信号forward_directionの値が1の場合、遷移方向は進角方向に対して順方向であることを示す。信号forward_directionの値が0の場合、遷移方向は進角方向に対して逆方向であることを示す。
具体的には、判定部404は、AND901〜904と、NAND911〜914と、OR921と、OR922と、AND931と、FF932と、を有している。
まず、判定部404は、AND901、AND902、AND903、およびAND904によって、複数のタイミングにおける復元タイミングの遷移方向が進角方向に対して順方向であるか否かを判定する。
AND901には、信号USEBと信号PRE_USEAが入力される。これにより、判定部404は、タイミングAからタイミングBへの復元タイミングの変化を検出することができる。AND902には、信号USECと信号PRE_USEBとが入力される。これにより、判定部404は、タイミングBからタイミングCへの復元タイミングの変化を検出することができる。
AND903には、信号USEDと信号PRE_USECとが入力される。これにより、判定部404は、タイミングCからタイミングDへの復元タイミングの変化を検出することができる。AND904には、信号USEAと信号PRE_USEDとが入力される。これにより、判定部404は、タイミングDからタイミングAへの復元タイミングの変化を検出することができる。
つぎに、判定部404は、NAND911、NAND912、NAND913、およびNAND914によって、複数のタイミングにおける復元タイミングの遷移方向が進角方向に対して逆方向であるか否かを判定する。
より具体的には、NAND911には、信号USEAと、信号PRE_USEBと、が入力される。これにより、判定部404は、タイミングBからタイミングAへの復元タイミングの変化を検出することができる。
NAND912には、信号USEBと、信号PRE_USECと、が入力される。これにより、判定部404は、タイミングCからタイミングBへの復元タイミングの変化を検出することができる。NAND913には、信号USECと信号PRE_USEDとが入力される。これにより、判定部404は、タイミングDからタイミングCへの復元タイミングの変化を検出することができる。NAND914には、信号USEDと信号PRE_USEAとが入力される。これにより、判定部404は、タイミングAからタイミングDへの復元タイミングの変化を検出することができる。
OR921には、信号forward_directionと、AND901の出力信号と、AND902の出力信号と、AND903の出力信号と、AND904の出力信号と、が入力される。OR922には、NAND911の出力信号と、NAND912の出力信号と、NAND913の出力信号と、NAND914の出力信号と、が入力される。
AND931には、OR921の出力信号とOR922の出力信号とが入力される。FF932には、データ信号としてAND931の出力信号が入力され、クロック信号として信号CLK2−0が入力される。FF932の出力信号は、信号forward_directionである。OR921に信号forward_directionが入力されているため、信号forward_directionの値が1になると、その後、FF932によって信号forward_directionの値が保持される。したがって、復元タイミングが連続的に変化している最中に復元タイミングの遷移方向が判定され、判定結果が保持されている。そのため、復元タイミングの変化が離散的に変化する最中には、受信装置302は、保持された判定結果を参照することにより、復元タイミングの遷移方向がわかる。
上述したように、信号forward_directionの値が1であれば、復元タイミングの遷移方向が進角方向に対して順方向であることを示す。そのため、信号forward_directionの値が1であれば、信号CLK2の周波数が信号CLK1の周波数よりも高いことを示す。
一方、上述したように、信号forward_directionの値が0であれば、復元タイミングの遷移方向が進角方向に対して逆方向であることを示す。信号forward_directionの値が0であれば、信号CLK1の周波数が信号CLK2の周波数よりも高いことを示す。したがって、信号CLK1と信号CLK2との周波数関係が事前に定まっていなくとも、信号forward_directionの値を用いて、復元を行うことができる。
図10は、信号DVALIDによる信号SDATAの選択方法を示す説明図である。信号DVALID[0]と信号DVALID[1]とのそれぞれの値がいずれも0である場合、信号SDATA[0]と信号SDATA[1]とが復元対象でない。信号DVALID[1]の値と信号DVALID[0]の値とが、いずれも0になる場合は、三つの場合がある。一つ目の場合、信号forward_directionが1で、かつ復元タイミングがタイミングDからタイミングBに変化した場合である。二つ目の場合、信号forward_directionが1で、かつ復元タイミングがタイミングCからタイミングAに変化した場合である。三つ目の場合、復元タイミングが、タイミングDからタイミングAに変化した場合である。復元タイミングがタイミングDからタイミングAに変化した場合には、信号forward_directionが1である。
信号DVALID[0]が1であり、信号DVALID[1]が0である場合、信号SDATA[0]の値が復元対象のデータになる。信号DVALID[0]が0であり、信号DVALID[1]が1である場合は存在しない。
信号DVALID[0]の値と信号DVALID[1]の値とがいずれも1である場合、信号SDATA[0]の値と信号SDATA[1]の値が復元対象のデータになる。信号DVALID[1]の値と信号DVALID[0]の値が、いずれも1になる場合は、3つの場合がある。1つ目の場合、信号forward_directionが0で、かつ復元タイミングがタイミングAからタイミングCに変化した場合である。2つ目の場合、信号forward_directionが0で、かつ復元タイミングがタイミングBからタイミングDに変化した場合である。3つ目の場合、復元タイミングがタイミングAからタイミングDに変化した場合である。
図11は、有効情報生成部405の詳細例を示す説明図である。有効情報生成部405は、複数の選択信号と複数の前回選択信号と判定部404が判定した遷移方向に基づいて、選択部406が選択した転送データの有効情報を生成する。図11の例では、有効情報は、信号DVALID[1:0]である。上述したように、遷移方向は、信号forward_directionによって表される。
たとえば、有効情報生成部405は、遷移方向と、複数のタイミングのうち、選択部406が前回の転送データの選択に用いた前回選択信号に対応する復元タイミングと、選択部406が今回の転送データの選択に用いた選択信号に対応する復元タイミングとの期間が、複数のタイミングの周期を超えているかに基づいて、選択部406が選択した転送データの有効情報を生成する。
まず、有効情報生成部405は、遷移方向が進角方向に対して順方向であり、複数のタイミングのうち、選択部406が前回の転送データの選択に用いた前回選択信号に対応する復元タイミングと、選択部406が今回の転送データの選択に用いた選択信号に対応する復元タイミングとの期間が、複数のタイミングの周期を超えている場合、選択部406が選択した複数の転送データの有効情報の全てを偽値として生成する。
具体的には、たとえば、有効情報生成部405は、信号forward_directionの値が1であって、信号PRE_USEDの値が1であり、かつ信号USEBの値が1である場合に、信号DVALID[1]と信号DVALID[0]の両方の値を0にする。信号forward_directionの値が1である場合に、タイミングDからタイミングBに復元タイミングが変化すると、前回の復元タイミングと今回の復元タイミングの期間がクロックの1周期を超えてしまう。
または、たとえば、有効情報生成部405は、信号forward_directionの値が1であって、信号PRE_USECの値が1であり、かつ信号USEAの値が1である場合に、信号DVALID[1]と信号DVALID[0]の両方の値を0にする。信号forward_directionの値が1である場合に、タイミングCからタイミングAに復元タイミングが変化すると、前回の復元タイミングと今回の復元タイミングの期間がクロックの1周期を超えてしまう。
つぎに、有効情報生成部405は、遷移方向が進角方向に対して逆方向であり、複数のタイミングのうち、選択部406が前回の転送データの選択に用いた前回選択信号に対応する復元タイミングと、選択部406が今回の転送データの選択に用いた選択信号に対応する復元タイミングとの期間が、複数のタイミングの周期を超えている場合、選択部406が選択した複数の転送データの有効情報の全てを真値として生成する。
具体的には、たとえば、有効情報生成部405は、信号forward_directionの値が0であって、信号PRE_USEAの値が1であり、信号USECの値が1である場合に、信号DVALID[1]と信号DVALID[0]の両方の値を1にする。信号forward_directionの値が0である場合に、タイミングAからタイミングCへ復元タイミングが変化すると、前回の復元タイミングと今回の復元タイミングの期間がクロックの1周期を超えてしまう。
または、たとえば、有効情報生成部405は、信号forward_directionの値が0であって、信号PRE_USEBの値が1であり、信号USEDの値が1である場合に、信号DVALID[1]と信号DVALID[0]の両方の値を1にする。信号forward_directionの値が0である場合に、タイミングBからタイミングDへ復元タイミングが変化すると、前回の復元タイミングと今回の復元タイミングの期間がクロックの1周期を超えてしまう。
有効情報生成部405は、複数のタイミングのうち、選択部406が前回の転送データの選択に用いた前回選択信号に対応する復元タイミングと、選択部406が今回の転送データの選択に用いた選択信号に対応する復元タイミングとの期間が、複数のタイミングの周期を超えている場合、選択部406が選択した複数の転送データの有効情報のいずれかを真値として生成する。
具体的には、たとえば、有効情報生成部405は、信号PRE_USEDの値が1であり、信号USEAの値が1の場合、信号DVALID[1]と信号DVALID[0]の両方の値を0にする。具体的に、たとえば、有効情報生成部405は、信号PRE_USEAの値が1であり、信号USEDの値が1である場合に、信号DVALID[1]と信号DVALID[0]の両方の値を1にする。
より具体的には、有効情報生成部405は、第1の有効情報生成部1100−1と、第2の有効情報生成部1100−2と、を有している。第1の有効情報生成部1100−1は、信号DVALID[1]の値を決定している。第2の有効情報生成部1100−2は、信号DVALID[0]の値を決定している。
まず、第1の有効情報生成部1100−1について説明する。第1の有効情報生成部1100−1は、AND1105と、AND116と、AND1107と、OR1108と、INVERTER1109と、INVERTER1110と、を有している。
AND1105には、信号USEDと信号PRE_USEAが入力される。これにより、第1の有効情報生成部1100−1は、信号PRE_USEAの値が1であり、信号USEDの値が1であることを検出する。
INVERTER1109には、forwar_directionが入力される。AND1106には、信号USECと信号PRE_USEAとINVERTER1109の出力信号が入力される。これにより、第1の有効情報生成部1100−1は、信号forward_directionの値が0であって、信号PRE_USEAの値が1であり、信号USECの値が1であることを検出する。
INVERTER1110には、forwar_directionが入力される。AND1107には、信号PRE_USEBと信号USEDとINVERTER1110の出力信号が入力される。これにより、第1の有効情報生成部1100−1は、信号forward_directionの値が0であり、信号PRE_USEBの値が1であり、USEDの値が1であることを検出する。
OR1108には、AND1105の出力信号と、AND1106の出力信号と、AND1107の出力信号と、が入力される。OR1108の出力信号は、信号DVALID[1]である。これにより、第1の有効情報生成部1100−1は、AND1105、AND1106、AND1107のいずれかの出力信号の値が1の場合に、信号DVALID[1]の値を1にする。また、第1の有効情報生成部1100−1は、AND1105、AND1106、AND1107のいずれの出力信号の値も1でない場合、信号DVALID[1]の値を0にする。
つぎに、第2の有効情報生成部1100−2について詳細に説明する。第2の有効情報生成部1100−2は、AND1101と、AND1102と、AND1103と、NOR1104と、を有している。
AND1101には、信号USEAと信号PRE_USEDとが入力される。
これにより、第2の有効情報生成部1100−2は、信号PRE_USEDの値が1であり、信号USEAの値が1であることを検出することができる。
AND1102には、信号PRE_USEDと信号USEBと信号forward_directionとが入力される。これにより、第2の有効情報生成部1100−2は、信号forward_directionの値が1であり、信号PRE_USEDの値が1であり、信号USEBの値が1であることを検出することができる。
AND1103には、信号PRE_USECと信号USEAと信号forward_directionとが入力される。これにより、第2の有効情報生成部1100−2は、信号forward_directionの値が1であり、信号PRE_USECの値が1であり、信号USEAの値が1であることを検出することができる。
NOR1104は、AND1101の出力信号と、AND1102の出力信号と、AND1103の出力信号と、が入力される。NOR1104の出力信号は、信号DVALID[0]である。これにより、第2の有効情報生成部1100−2は、AND1101、AND1102、AND1103のいずれかの出力信号の値が1の場合に、信号DVALID[0]の値を0にする。また、第2の有効情報生成部1100−2は、AND1101、AND1102、AND1103のいずれの出力信号の値も1でない場合、信号DVALID[0]の値を1にする。
図12は、選択部406の一例を示す説明図である。選択部406は、複数の受信データと、複数の受信データのそれぞれに対応する複数の前回選択信号に基づいて、複数の受信データから転送データを選択する。上述したように、前回選択信号は信号PRE_USEA、信号PRE_USEB、信号PRE_USEC、および信号PRE_USEDであり、複数の受信データとは、信号AZ3の値、信号BZ3の値、信号CZ3の値および信号DZ3の値である。図12の例では、転送データとは、信号SDATA[1:0]の値である。具体的には、選択部406は、第1の選択部1200−1と第2の選択部1200−2とを有している。
まず、第1の選択部1200−1は、復元タイミングで受信したデータを信号SDATA[0]としてシリアライザ312へ出力する。第1の選択部1200−1は、AND1201〜と1204、OR1205とを有している。
AND1201には、信号PRE_USEAと信号AZ3とが入力される。AND1202には、信号PRE_USEBと信号BZ3とが入力される。AND1203には、信号PRE_USECと信号CZ3とが入力される。AND1204には、信号PRE_USEDと信号DZ3とが入力される。OR1205には、AND1201の出力信号と、AND1202の出力信号と、AND1203の出力信号と、AND1204の出力信号と、が入力される。
すなわち、第1の選択部1200−1は、信号PRE_USEAの値が1の場合には、信号AZ3の値を信号SDATA[0]の値として出力する。第1の選択部1200−1は、信号PRE_USEBの値が1の場合には、信号BZ3の値を信号SDATA[0]の値として出力する。第1の選択部1200−1は、信号PRE_USECの値が1の場合には、信号CZ3の値が信号SDATA[0]の値として出力する。第1の選択部1200−1は、信号PRE_USEDの値が1の場合には、信号DZ3の値が信号SDATA[0]の値として出力する。
つぎに、第2の選択部1200−2は、複数のタイミングの中で、今回の転送データの選択に用いた選択信号に対応する復元タイミングから進角方向に対して順方向に複数のタイミングの周期を超えないタイミングで受信したデータを信号SDATA[1]としてシリアライザ312へ出力する。
ここでは、有効情報生成部405によって、SDSATA[1]を有効にする場合における今回の転送データの選択に用いた選択信号に対応する復元タイミングは、タイミングAまたはタイミングBである。SDSATA[1]を有効にする場合とは、信号DVALID[1]の値が1になる場合である。
タイミングAから進角方向に対して順方向に複数のタイミングの周期を超えないタイミングは、同一クロック周期におけるタイミングB〜タイミングDである。
タイミングBから進角方向に対して順方向に複数のタイミングの周期を超えないタイミングは、タイミングBと同一クロック周期におけるタイミングDが挙げられる。
そこで、第2の選択部1200−2は、信号PRE_USEAの値が1の場合には、信号CZ3の値または信号DZ3の値を信号SDATA[1]の値として出力する。そして、第2の選択部1200−2は、信号PRE_USEDの値が1の場合には、信号DZ3の値を信号SDATA[1]の値として出力する。信号SDATA[1]の値が復元対象のデータになるか否かは信号DVALID[0:1]によって決定される。
第2の選択部1200−2は、AND1206〜1209と、OR1210と、OR1211と、を有している。AND1206には、信号PRE_USEDと信号AZ3が入力される。AND1207には、信号PRE_USEDと信号BZ3が入力される。AND1208には、信号PRE_USEAと信号CZ3が入力される。OR1211には、信号PRE_USEAと信号PRE_USEBの値が入力される。AND1209には、OR1211の出力信号とDZ3が入力される。OR1210には、AND1206の出力信号と、AND1207の出力信号と、AND1208の出力信号と、AND1209の出力信号とが入力される。OR1210の出力信号は、信号SDATA[1]である。
図13は、タイミングAからタイミングCへの変化例を示す説明図である。タイミングチャート1300は、復元タイミングの遷移方向が進角方向に対して逆方向である場合において、タイミングAからタイミングCへの復元タイミングの変化が検出された場合を例に挙げている。たとえば、判定部404は、タイミングDからタイミングCへの復元タイミングの変化を検出することにより、復元タイミングの遷移方向が進角方向に対して逆方向であると判定する。したがって、判定部404は、信号forward_directionの値を0に設定する。
そした、選択部406は、複数の受信データと、複数の受信データのそれぞれに対応する複数の前回選択信号に基づいて、複数の受信データから転送データを選択する。たとえば、有効情報生成部405は、信号forward_directionの値が0である場合に、タイミングAからタイミングCへの復元タイミングの変化を検出し、信号DVALID[0]の値と信号DVALID[1]の値との両方を1にする。
これにより、タイミングAからタイミングCへの復元タイミングの変化の場合に、有効情報生成部405によって信号DVALID[1]の値が1になることで、復元データにデータd6が加わっている。
図14は、タイミングCからタイミングAへの変化例を示す説明図である。タイミングチャート1400は、復元タイミングの遷移方向が進角方向に対して順方向である場合において、タイミングCからタイミングAへの復元タイミングの変化が検出された場合を例に挙げている。
たとえば、判定部404は、タイミングAからタイミングBへの変化を検出することで、復元タイミングの遷移方向が進角方向に対して順方向であると判定する。したがって、判定部404は、信号forward_directionの値を1に設定する。
そして、たとえば、有効情報生成部405は、信号forward_directionの値が1である場合に、タイミングCからタイミングAへの復元タイミングの変化を検出し、信号DVALID[0]の値と信号DVALID[1]の値との両方を0にする。
これにより、信号forward_directionの値が1である場合において、タイミングCからタイミングAへの復元タイミングの変化が検出されると、重複するデータd5のうちの一つが復元データから除かれる。
図15は、タイミングAからタイミングDへの変化例を示す説明図である。タイミングチャート1500は、タイミングAからタイミングDへの復元タイミングの変化が検出された場合を例に挙げている。
たとえば、有効情報生成部405は、タイミングAからタイミングDへの復元タイミングの変化を検出することにより、信号DVALID[0]の値と信号DVALID[1]の値との両方を1にする。
これにより、タイミングAからタイミングDへの復元タイミングの変化の場合に、復元データにデータd5が加わっている。
図16は、タイミングDからタイミングAへの変化例を示す説明図である。タイミングチャート1600は、タイミングDからタイミングAへの復元タイミングの変化が検出された場合を例に挙げている。
たとえば、有効情報生成部405は、タイミングDからタイミングAへの復元タイミングの変化を検出することにより、信号DVALID[0]の値と信号DVALID[1]の値との両方を0にする。
これにより、タイミングAからタイミングDへの復元タイミングの変化の場合に、重複するデータd5のうちの一つが復元データから除かれる。
図17は、デシリアライザ324による動作例1を示す説明図である。タイミングチャート1700は、デシリアライザ324による動作例を示している。タイミングチャート1700では、信号DVALID[0]と、信号DVALID[1]と、信号SDATA[0]と、信号SDATA[1]と、復元データと、を示している。信号DVALID[0]の値が1であり、かつ信号DVALID[1]の値が0である場合、信号SDATA[0]の値が復元データになる。信号DVALID[0]の値が1であり、かつ信号DVALID[1]の値が1である場合、信号SDATA[0]の値と信号SDATA[1]の値が復元データになる。よって、復元データ群は、{x1,x2,x3,x4,y4,x5,x6,x7,x8}である。
図18は、デシリアライザ324による動作例2を示す説明図である。タイミングチャート1800は、デシリアライザ324による動作例を示している。タイミングチャート1800では、信号DVALID[0]と、信号DVALID[1]と、信号SDATA[0]と、信号SDATA[1]と、復元データと、を示している。信号DVALID[0]の値が1であり、かつ信号DVALID[1]の値が0である場合、信号SDATA[0]の値が復元データになる。信号DVALID[0]の値が0であり、かつ信号DVALID[1]の値が0である場合、復元データがない。よって、復元データ群は、{x1,x2,x3,x5,x6,x7,x8}である。タイミングチャートでは、信号DVALID[0]の値が0であり、かつ信号DVALID[1]の値が0である場合における信号SDATA[0]の値であるx4が復元データになっていない。上述したようにx4はx5と同一データであるため、データリカバリ部323によって、信号DVALID[0]の値が0であり、かつ信号DVALID[1]の値が0に決定される。
送信装置301から送信されるデータに変化が発生せず、0や1が連続する最長の信号CLK1のサイクル数をnとし、受信クロックに対する送信クロックの周波数のずれの比率(クロックマージン)をmとする。クロックマージンが大きいほど、データの欠落や同一データを複数回受信することが発生する。サイクル数nとクロックマージンmの条件は、下記式(1)になる。
n×m<25=100[%]/4(タイミング数)・・・(1)
たとえば、サイクル数nが8の場合、クロックマージンmは以下のようになる。
m=25/8≒3.1[%]
本発明にかかる受信装置302では、復元タイミングの変化が離散的であったとして、2以上のタイミングを飛ばさないことを前提としている、よって、受信装置302では、復元タイミングの変化が1つのタイミングを飛ばしても復元できる。したがって、本受信装置302のサイクル数nとクロックマージンmの条件は、下記式(2)のようになる。
n×m<50=100[%]/2・・・(2)
したがって、n=8の場合には、下記式(3)のようになる。
m=50/8≒6.2[%]・・・(3)
よって、本受信装置302によれば、復元タイミングの変化が連続的な場合でなければデータを復元できない場合と比較して、クロックマージンを約2倍程度許容できる。したがって、本受信装置302によれば、データの復元精度を向上させることができる。
以上において、本発明は、上述した実施の形態に限らず、種々変更可能である。たとえば、復元タイミングの変化が離散的であっても、2以上のタイミングを飛ばさないことを前提としているが、これに限らず、2以上のタイミングを飛ばしてもよい有効情報生成部405であってもよい。また、たとえば、タイミング数は4であるがさらに多くてもよい。そこで、タイミング数がNの場合における判定部404と有効情報生成部405の詳細例を、それぞれ図19と図20を用いて説明する。
(タイミング数がNの例)
図19は、タイミング数がNの場合における判定部404の一例を示す説明図である。判定部404は、連続的なタイミングの変化を検出することによって、復元タイミングの遷移方向が進角方向に対して順方向であるか逆方向であるかを判断する。信号forward_directionの値は0であれば、復元タイミングの遷移方向が進角方向に対して逆方向であることを示す。信号forward_directionの値は1であれば、復元タイミングの遷移方向が進角方向に対して順方向であることを示す。
判定部404は、AND1901〜190Nと、NAND1911〜191Nと、OR1921と、OR1922と、AND1931と、FF1932と、を有している。より具体的には、判定部404は、AND1901〜190Nと、OR1921と、によって、復元タイミングの遷移方向が進角方向に対して順方向であることを検出する。AND190i(i≧2)を例に挙げると、AND190iには、信号USE(i)と信号PRE_USE(i−1)とが入力され、AND190iの出力信号は、OR1921に入力される。
判定部404は、NAND1911〜191Nと、OR1922と、によって、復元タイミングの遷移方向が進角方向に対して逆方向であることを検出する。NAND191i(i≧2)を例に挙げると、NAND191iには、信号USE(i)と信号PRE_USE(i+1)とが入力され、NAND191iの出力信号がOR1922に入力される。
OR1921には、AND1901〜AND190Nのそれぞれの出力信号が入力される。OR1922には、NAND1911〜NAND191Nのそれぞれの出力信号が入力される。AND1931には、OR1921の出力信号と、OR1922の出力信号と、が入力される。
FF1932は、データ信号としてAND1931の出力信号が入力され、クロック信号として信号CLK2−0が入力される。FF1932の出力信号は、信号forward_directionである。
図20は、タイミング数がNの場合における有効情報生成部405の一例を示す説明図である。有効情報生成部405は、信号DVALID[0]と信号DVALID[1]のそれぞれの値を決定している。ここでは、タイミング数がNであっても、タイミングの変化において2以上のタイミングを飛ばして変化しないことを前提としている。
有効情報生成部405は、第1の有効情報生成部2000−1と第2の有効情報生成部2000−2とを有している。第1の有効情報生成部2000−1は、AND2005〜2007と、OR2008と、INVERTER2009と、INVERTER2010と、を有している。
AND2005には、信号USE(N)と信号PRE_USE(1)が入力される。INVERTER2009とINVERTER2010には、信号forward_directionが入力される。AND2006には、信号USE(N−1)と信号PRE_USE(1)とINVERTER209の出力信号が入力される。AND2007には、信号USE(N)と信号PRE_USE(2)とINVERTER2010の出力信号が入力される。OR2008には、AND2005の出力信号と、AND2006の出力信号と、AND2007の出力信号と、が入力される。OR2008の出力信号はDVAID[1]である。
第1の有効情報生成部2000−1は、信号forward_directionの値が0の場合に、信号PRE_USE(1)の値が1であり、かつ信号USE(N−1)の値が1であると、信号DVALID[1]の値を1に設定する。または、第1の有効情報生成部2000−1は、信号forward_directionの値が0の場合に、信号PRE_USE(2)の値が1であり、かつ信号USE(N)の値が1であると、信号DVALID[1]の値を1に設定する。または、第1の有効情報生成部2000−1は、信号PRE_USE(1)の値が1であり、かつ信号USE(N)の値が1であると、信号DVALID[1]の値を1に設定する。
第2の有効情報生成部2000−2は、AND2001〜2003とNOR2004とを有している。AND2001には、信号PRE_USE(N)と信号USE(1)が入力される。AND2002には、信号forward_directionと信号PRE_USE(N)と信号USE(2)が入力される。AND2003には、信号forward_directionと信号PRE_USE(N−1)と信号USE(1)が入力される。
NOR2004には、AND2001の出力信号と、AND2002の出力信号と、AND2003の出力信号と、が入力される。NOR2004の出力信号は、信号DVALID[0]である。
第2の有効情報生成部2000−2は、信号forward_directionの値が1の場合に、信号PRE_USE(N−1)の値が1であり、かつ信号USE(1)の値が1であると、信号DVALID[0]の値を0に設定する。または、第2の有効情報生成部2000−2は、信号forward_directionの値が1の場合に、信号PRE_USE(N)の値が1であり、かつ信号USE(2)の値が1であると、信号DVALID[0]の値を0に設定する。または、第2の有効情報生成部2000−2は、信号PRE_USE(N)の値が1であり、かつ信号USE(1)の値が1であると、信号DVALID[0]の値を0に設定する。
以上説明したように、受信装置は、復元タイミングの遷移方向が進角方向に対して逆方向であるか否かを判定する。そして、受信装置は、判定結果と、復元タイミングの変化の期間が受信クロックの2周期に跨ってしまうか否かの判断結果と、によって、複数の受信されたデータから前回選択信号に基づいて選択された転送データを有効にするか否かを決定する。
これにより、受信クロックと送信クロックとのいずれの周波数が高いかが事前に不明であっても、送信クロックの周波数が受信クロックの周波数よりも高いことにより発生する復元データの欠落を防止することができる。さらに、受信クロックと送信クロックとのいずれのクロックの周波数が高いかが事前に不明であっても、受信クロックの周波数が送信クロックの周波数よりも高いために発生する復元データの重複を防止することができる。したがって、復元精度を向上させることができる。
また、復元タイミングの遷移方向が進角方向に対して逆方向である場合には、送信クロックの周波数が受信クロックの周波数よりも高い。そのため、受信装置は、復元タイミングの変化の期間が受信クロックの2周期に跨ってしまうと復元データが欠落してしまうので、変化前の復元タイミングから複数のタイミングの発生順序にしたがって1周期未満の復元タイミングで受信したデータを復元対象に加える。これにより、跨いだときに飛ばしたデータが復元対象になるため、復元データの欠落を防ぐことができる。したがって、復元精度を向上させることができる。
また、受信装置は、復元タイミングの遷移方向が進角方向に対して順方向である場合には、送信クロックの周波数が受信クロックの周波数よりも低い。そのため、復元タイミングの変化の期間が受信クロックの2周期に跨ってしまうと同一データを重複して復元対象にするので、復元タイミングで受信したデータ群から、変化前または変化後のいずれか一方の復元タイミングで受信したデータを除いたデータを復元対象にする。これにより、同一データが重複して復元対象になることを防ぐことができる。したがって、復元精度を向上させることができる。
また、受信装置は、復元タイミングの変化が連続的である場合に、復元タイミングの変化の期間が、複数のタイミングの周期を超えていれば、選択した複数の転送データの有効情報のいずれかを真値として生成する。これにより、受信装置は、復元データの欠落や復元データの重複を防止することができる。
300 送受信システム
301 送信装置
302 受信装置
311 送信側クロックジェネレータ
312 シリアライザ
321 受信側クロックジェネレータ
322 DLL
401 受信部
402 検出部
403 決定部
404 判定部
405 有効情報生成部
406 選択部
データ d1〜d10

Claims (7)

  1. データを送信する送信装置に接続される受信装置において、
    所定周波数のクロック信号を生成するクロック生成部と、
    前記クロック生成部が生成したクロック信号と前記クロック信号を所定の位相進角させた複数のクロック信号を含み、複数のタイミングにそれぞれ対応する複数の進角クロック信号を生成するクロック進角部と、
    前記送信装置が送信したデータを前記複数の進角クロック信号を用いて、前記複数のタイミングでそれぞれ受信する受信部と、
    前記受信部が受信した複数の受信データの立ち上がりをそれぞれ検出するとともに、前記受信部が受信した複数の受信データの立ち下がりをそれぞれ検出する検出部と、
    前記検出部が検出した複数の受信データの立ち上がりと複数の受信データの立ち下がりに基づいて、前記複数のタイミングのうち前記データを復元する復元タイミングを決定する複数の選択信号と、前記複数の選択信号をそれぞれ保持した複数の前回選択信号を生成する決定部と、
    前記複数の選択信号と前記複数の前回選択信号に基づいて、前記複数のタイミングにおける復元タイミングの遷移方向を判定する判定部と、
    前記複数の受信データと、前記複数の受信データのそれぞれに対応する前記複数の前回選択信号に基づいて、前記複数の受信データから転送データを選択する選択部と、
    前記複数の選択信号と前記複数の前回選択信号と判定部が判定した前記遷移方向に基づいて、前記選択部が選択した転送データの有効情報を生成する有効情報生成部と、
    を有することを特徴とする受信装置。
  2. 前記有効情報生成部は、
    前記遷移方向と、
    前記複数のタイミングのうち、前記選択部が前回の転送データの選択に用いた前回選択信号に対応する復元タイミングと、前記選択部が今回の転送データの選択に用いた選択信号に対応する復元タイミングとの期間が、前記複数のタイミングの周期を超えているかに基づいて、前記選択部が選択した転送データの有効情報を生成することを特徴とする請求項1記載の受信装置。
  3. 前記有効情報生成部は、
    前記遷移方向が進角方向に対して順方向であり、
    前記複数のタイミングのうち、前記選択部が前回の転送データの選択に用いた前回選択信号に対応する復元タイミングと、前記選択部が今回の転送データの選択に用いた選択信号に対応する復元タイミングとの期間が、前記複数のタイミングの周期を超えている場合、前記選択部が選択した複数の転送データの有効情報の全てを偽値として生成することを特徴とする請求項2記載の受信装置。
  4. 前記有効情報生成部は、
    前記遷移方向が進角方向に対して逆方向であり、
    前記複数のタイミングのうち、前記選択部が前回の転送データの選択に用いた前回選択信号に対応する復元タイミングと、前記選択部が今回の転送データの選択に用いた選択信号に対応する復元タイミングとの期間が、前記複数のタイミングの周期を超えている場合、前記選択部が選択した複数の転送データの有効情報の全てを真値として生成することを特徴とする請求項2記載の受信装置。
  5. 前記有効情報生成部は、
    前記複数のタイミングのうち、前記選択部が前回の転送データの選択に用いた前回選択信号に対応する復元タイミングと、前記選択部が今回の転送データの選択に用いた選択信号に対応する復元タイミングとの期間が、前記複数のタイミングの周期を超えている場合、前記選択部が選択した複数の転送データの有効情報のいずれかを真値として生成することを特徴とする請求項2記載の受信装置。
  6. データを送信する送信装置と、前記送信装置に接続される受信装置を有する送受信システムにおいて、
    前記送信装置は、
    第1の所定周波数の第1クロック信号を生成する第1クロック生成部と、
    前記第1クロック生成部が生成した第1クロック信号に基づき、データを送信する送信部と、を有し、
    前記受信装置は、
    第2の所定周波数の第2クロック信号を生成する第2クロック生成部と、
    前記第2クロック生成部が生成した第2クロック信号と前記第2クロック信号を所定の位相進角させた複数のクロック信号を含み、複数のタイミングにそれぞれ対応する複数の第2進角クロック信号を生成する第2クロック進角部と、
    前記データを前記複数の第2進角クロック信号を用いて、前記複数のタイミングでそれぞれ受信する受信部と、
    前記受信部が受信した複数の受信データの立ち上がりをそれぞれ検出するとともに、前記受信部が受信した複数の受信データの立ち下がりをそれぞれ検出する検出部と、
    前記検出部が検出した複数の受信データの立ち上がりと複数の受信データの立ち下がりに基づいて、前記複数のタイミングのうち前記データを復元する復元タイミングを決定する複数の選択信号と、前記複数の選択信号をそれぞれ保持した複数の前回選択信号を生成する決定部と、
    前記複数の選択信号と前記複数の前回選択信号に基づいて、前記複数のタイミングにおける復元タイミングの遷移方向を判定する判定部と、
    前記複数の受信データと、前記複数の受信データのそれぞれに対応する前記複数の前回選択信号に基づいて、前記複数の受信データから転送データを選択する選択部と、
    前記複数の選択信号と前記複数の前回選択信号と判定部が判定した前記遷移方向に基づいて、前記選択部が選択した転送データの有効情報を生成する有効情報生成部と、を有することを特徴とする送受信システム。
  7. データを送信する送信装置と、前記送信装置に接続される受信装置を有する送受信システムの制御方法において、
    前記送信装置が有する第1クロック生成部が、第1の所定周波数の第1クロック信号を生成し、
    前記送信装置が有する送信部が、前記第1クロック生成部が生成した第1クロック信号に基づき、データを送信し、
    前記受信装置が有する第2クロック生成部が、第2の所定周波数の第2クロック信号を生成し、
    前記受信装置が有する第2クロック進角部が、前記第2クロック生成部が生成した第2クロック信号と前記第2クロック信号を所定の位相進角させた複数のクロック信号を含み、複数のタイミングにそれぞれ対応する複数の第2進角クロック信号を生成し、
    前記受信装置が有する受信部が、前記データを前記複数の第2進角クロック信号を用いて、前記複数のタイミングでそれぞれ受信し、
    前記受信装置が有する検出部が、前記受信部が受信した複数の受信データの立ち上がりをそれぞれ検出するとともに、前記受信部が受信した複数の受信データの立ち下がりをそれぞれ検出し、
    前記受信装置が有する決定部が、前記検出部が検出した複数の受信データの立ち上がりと複数の受信データの立ち下がりに基づいて、前記複数のタイミングのうち前記データを復元する復元タイミングを決定する複数の選択信号と、前記複数の選択信号をそれぞれ保持した複数の前回選択信号を生成し、
    前記受信装置が有する判定部が、前記複数の選択信号と前記複数の前回選択信号に基づいて、前記複数のタイミングにおける復元タイミングの遷移方向を判定し、
    前記受信装置が有する選択部が、前記複数の受信データと、前記複数の受信データのそれぞれに対応する前記複数の前回選択信号に基づいて、前記複数の受信データから転送データを選択し、
    前記受信装置が有する有効情報生成部が、前記複数の選択信号と前記複数の前回選択信号と判定部が判定した前記遷移方向に基づいて、前記選択部が選択した転送データの有効情報を生成することを特徴とする送受信システムの制御方法。
JP2011290188A 2011-12-28 2011-12-28 受信装置、送受信システム、および復元方法 Pending JP2013141102A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011290188A JP2013141102A (ja) 2011-12-28 2011-12-28 受信装置、送受信システム、および復元方法
US13/661,139 US8811501B2 (en) 2011-12-28 2012-10-26 Receiving apparatus, transmission and reception system, and restoration method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011290188A JP2013141102A (ja) 2011-12-28 2011-12-28 受信装置、送受信システム、および復元方法

Publications (1)

Publication Number Publication Date
JP2013141102A true JP2013141102A (ja) 2013-07-18

Family

ID=48694778

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011290188A Pending JP2013141102A (ja) 2011-12-28 2011-12-28 受信装置、送受信システム、および復元方法

Country Status (2)

Country Link
US (1) US8811501B2 (ja)
JP (1) JP2013141102A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019504505A (ja) * 2016-01-20 2019-02-14 マサチューセッツ インスティテュート オブ テクノロジー 基板の壊れやすさを低減するための方法及び構造

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000174736A (ja) * 1998-12-08 2000-06-23 Sharp Corp ビット同期回路
JP2001036511A (ja) * 1999-07-19 2001-02-09 Sharp Corp ビット同期回路
JP2005012305A (ja) * 2003-06-17 2005-01-13 Hitachi Communication Technologies Ltd ビット同期回路および光伝送システム局側装置
JP2006262165A (ja) * 2005-03-17 2006-09-28 Ricoh Co Ltd データリカバリ方法、データリカバリ回路、データ送受信装置及び情報処理装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0732699B1 (en) * 1995-03-14 2001-09-05 Nec Corporation An internal clock generator for a synchronous dynamic RAM
KR100448707B1 (ko) 2002-08-20 2004-09-13 삼성전자주식회사 클럭 및 데이터 복원 회로 및 방법
US8482332B2 (en) * 2011-04-18 2013-07-09 Taiwan Semiconductor Manufacturing Company, Ltd. Multi-phase clock generator and data transmission lines

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000174736A (ja) * 1998-12-08 2000-06-23 Sharp Corp ビット同期回路
JP2001036511A (ja) * 1999-07-19 2001-02-09 Sharp Corp ビット同期回路
JP2005012305A (ja) * 2003-06-17 2005-01-13 Hitachi Communication Technologies Ltd ビット同期回路および光伝送システム局側装置
JP2006262165A (ja) * 2005-03-17 2006-09-28 Ricoh Co Ltd データリカバリ方法、データリカバリ回路、データ送受信装置及び情報処理装置

Also Published As

Publication number Publication date
US20130170567A1 (en) 2013-07-04
US8811501B2 (en) 2014-08-19

Similar Documents

Publication Publication Date Title
US9520883B2 (en) Frequency detection circuit and reception circuit
JP4741003B2 (ja) 位相比較器,位相比較装置,およびクロックデータリカバリシステム
JP5066121B2 (ja) クロック情報とデータを伝送する装置及び方法
KR20210139388A (ko) 다상 클록 듀티 사이클 및 스큐 측정 및 보정
JP2006262513A5 (ja)
JP2003218843A (ja) スキュー調整回路及びスキュー調整方法、並びに、データ同期回路及びデータ同期方法
JP3946050B2 (ja) データ・クロック・リカバリ回路
US8411811B2 (en) High jitter and frequency drift tolerant clock data recovery
EP3537610A2 (en) Hybrid half/quarter-rate decision feedback equalizer and display including hybrid half/quarter-rate decision feedback equalizer
JP2014222872A (ja) クロック・データ・リカバリ回路で受信データ信号をトラッキングするためのシステム及び方法
US10476630B2 (en) Digital bus noise suppression
JP6687392B2 (ja) シリアライザ装置
JP2001352318A (ja) 送信回路とその方法、受信回路とその方法およびデータ通信装置
JP2013141102A (ja) 受信装置、送受信システム、および復元方法
KR102509984B1 (ko) 클락 신호의 주파수 및 위상을 감지하는 집적 회로 및 이를 포함하는 클락 및 데이터 복원 회로
KR20090054821A (ko) 데이터 복원 장치 및 그 방법
JP2014225874A (ja) クロック・データ・リカバリ回路で受信データ信号を取得するためのシステム及び方法
JP2018042032A (ja) 受信装置
KR100899781B1 (ko) 클록 정보와 함께 데이터를 전송하는 방법 및 장치
JP6871509B2 (ja) 送信回路及び集積回路
CN105680831B (zh) 时钟和数据恢复电路以及使用其的系统
JP2016119617A (ja) シンクロナイザおよび半導体装置
JP2012222497A (ja) 受信回路及びエラー検出方法
JP5560646B2 (ja) オーバーサンプリング回路、及びそれを用いたシリアル通信システム
JP5765088B2 (ja) 送信回路、およびデスキュー回路

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140904

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150710

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150811

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20151208