JP2011019158A - 通信装置 - Google Patents

通信装置 Download PDF

Info

Publication number
JP2011019158A
JP2011019158A JP2009163623A JP2009163623A JP2011019158A JP 2011019158 A JP2011019158 A JP 2011019158A JP 2009163623 A JP2009163623 A JP 2009163623A JP 2009163623 A JP2009163623 A JP 2009163623A JP 2011019158 A JP2011019158 A JP 2011019158A
Authority
JP
Japan
Prior art keywords
signal
clock
bit boundary
data
phase
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
JP2009163623A
Other languages
English (en)
Inventor
Shinya Konishi
信也 小西
Norio Arai
則夫 新井
Osamu Onishi
修 大西
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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2009163623A priority Critical patent/JP2011019158A/ja
Priority to US12/801,366 priority patent/US8406362B2/en
Publication of JP2011019158A publication Critical patent/JP2011019158A/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

【課題】受信信号に連続データが含まれる場合においても受信信号の変化点に動的に追従し、最適なサンプリングクロックを選択すること。
【解決手段】本発明に係る通信装置は、サンプリングクロックを更新するタイミングにおいてビット境界信号を毎回記憶する現在情報記憶部130と、受信信号の変化点が検出された場合には現在情報記憶部130に記憶された信号を取り込み記憶し、受信信号の変化点が検出されなかった場合には記憶している信号の更新を行わない過去情報記憶部140と、受信信号の変化点が検出された場合には、現在情報記憶部130に記憶された信号に基づいてN相のクロックの中から受信信号のサンプリングに使用するCLKSEL2を選択し、受信信号の変化点が検出されなかった場合には、過去情報記憶部140に記憶された信号に基づいてCLKSEL3を選択するクロック選択部44と、を備える。
【選択図】図6

Description

本発明は、N(Nは2以上の整数)相クロックを用いて同期を検出する通信装置に関し、特に、受信信号のサンプリングクロックを動的に更新する通信装置に関する。
無線通信用のLSIは、高周波(RF)用のLSIと、ベースバンド(BB)用のLSIとから構成される。高周波用のLSIは、アンテナで受信した信号をアナログ処理する。ベースバンド用のLSIは、変調前、又は、復調後の受信信号をディジタル処理する。これら高周波用のLSIとベースバンド用のLSIとの間の高速同期通信において、その伝送路において信号の遅延やジッタが発生する。ジッタ成分は、送信信号に発生するジッタ成分と、受信側で用いるクロックのジッタ成分とを含む。このとき、それらLSIが互いに非同期の関係にあるクロック信号に基づいてそれぞれ動作した場合には、受信側LSIでデータを正しく受信できない問題がある。そこで、データ受信を正しく行うため、受信側LSIでデータの受信に用いるクロックの位相を制御することが行われる。
受信側LSIにおいてデータ受信に用いるクロックの位相を制御する方法として、N(Nは2以上の整数)相クロックを用いてフレーム構造の受信信号を同期検出して、その同期検出結果に基づいて、最適なサンプリングクロックの位相を選択する技術が開発されている。以下、図11を参照して、本発明に関連する受信装置について簡単に説明する。
図11は、本発明に関連する受信装置の構成を示すブロック図である。図11に示す受信装置は、シンボルの伝送レートのn倍の周期を用いて受信信号をサンプリングする。ここで、受信信号はフレーム化されており、後述する図15に示すように、同期確立用の同期ワード(Sync Word)領域と、IQデータを格納するペイロード(Payload)領域とを含む。同期ワード領域には、予めシステムにおいて設定した同期ワードデータが格納されている。システムでは、同期ワードデータに続いて、ペイロードデータを送信する。
RF部202は、アンテナ201を介して受信される無線信号を復調してデータ信号を生成し、生成したデータ信号をDBB部203へと伝送する。同期検出部230は、N相クロック(FCLK_P[n−1:0])を用いて受信信号に含まれる同期ワードデータをサンプリングし、そのサンプリングした結果と予め定めた同期パターンとを比較する。同期検出部230は、予め定めた同期パターンと同一のパターンをサンプリングすることができたクロックの識別信号(OKFLG)を、クロック位相選択部240に出力する。クロック位相選択部240は、それら識別したクロックの中から一のサンプリングクロックを選択して、その選択信号(CLKSEL[n−1:0])をFIFO部280に出力する。クロック乗せ換え処理部270は、同期検出部230が出力するデータ信号をN相クロックで受信して、受信したデータクロックを基準クロック(FCLK_M)に乗せ換える非同期乗せ換え処理を行う。FIFO部280では、選択したサンプリングクロックを用いて、同期ワードデータに続くペイロードデータを受信する。PLL(Phase Locked Loop)回路250は、基準クロック(FCLK_M)と、位相がそれぞれ異なる複数のクロック(FCLK_P[n−1:0])と、を生成する。信号処理回路290は、このようにして受信した信号を処理する。
また、本発明に関連する技術として、例えば、特許文献1には、判定する受信信号の変化点に応じて、N相クロックの中から適当なサンプリングクロックを選択する位相判定回路が開示されている。以下、図12及び図13を参照して、特許文献1に係る位相判定回路について簡単に説明する。
図12は、特許文献1に係る位相判定回路の構成を示すブロック回路図である。図12に示すように、位相判定回路は、受信信号の変化点であるビット境界を検出するサンプル部301と、検出したビット境界情報を保持する判定保護部302と、位相判定部303と、クロック選択部304と、同期保護部305と、を備えている。
サンプル部301は、一例として、サンプリングレートの4倍のクロックを用いて動作するものとして、4相のクロックC0、C1、C2、C3を使用している。サンプル部301は、入力サンプル回路311(D型フリップフロップ411〜414)において、受信信号をこれら4相のクロックを用いて受信する。そして、演算回路312(EOR421〜424)において、受信した4データA、B、C、Dを比較し、位相調整回路313(D型フリップフロップ431〜434)において、受信信号の変化点を示す演算結果を保持する。ここで、演算回路312の出力信号は位相調整回路313でリタイミングされ、受信信号の変化点を示すフラグ信号E、F、G、Hとして、判定保護部302へと伝送される。
判定保護部302は、4相のクロックそれぞれに対応するJKフリップフロップ511〜514を備え、カウンタ部515でのカウントが規定される回数に達するまでの間、受信信号の変化点情報を保護する。判定保護部302は、カウンタ部515でのカウントが満たされた場合にはリセットされて、再度、サンプル部301から受信信号の変化点情報を取得する。
位相判定部303は、保護された受信信号の変化点情報に基づいて各クロックの位相状態を識別し、適切なクロック信号がどれであるかを判定する。クロック選択部304は、位相判定部303での位相判定結果に応じて、4相のクロックの中から最適なサンプリング位相を選択する。
同期保護部305は、受信信号の変化点が動いて受信信号と判定位相との関係が最適でなくなった場合には同期外れを検知し、判定保護部302を直ちにリセットする。これにより、受信信号が不安定な場合においても、受信信号の変化点に動的に追従するようにサンプリング位相を選択することができる。
図13は、特許文献1に係る位相判定回路の動作波形図である。図13に示す例では、入力サンプル回路311は、クロック信号C0〜C3を用いて受信信号をサンプリングすることで、図13(c)〜図13(f)に示す信号を出力する。演算回路312は、これら出力信号の排他的論理和をとることで、図13(g)〜図13(j)に示す信号を出力する。位相調整回路313は、図13(g)〜図13(j)に示した信号について、"1"のレベルの波形を確実に叩けるクロックを用いて再度サンプリングすることで、図13(k)及び図15(l)に示す信号を出力する。図13に示す例では、位相判定部303は、C0とC1の間が受信信号の変化点であると判定することができ、例えば、クロックC3が最適位相と判定される。
特開平7−321646号公報
しかしながら、図11に示した受信装置では、受信信号が不安定となった場合に、受信信号の変化点に動的に追従することができずに、最適なサンプリングクロックを選択することができないという問題がある。以下、図14及び図15を参照して具体的に説明する。尚、図14及び図15では、受信信号1ビットをシンボルの伝送レートの8倍の周期(8位相)を用いてサンプリングする例について説明する。
図14に、受信信号のフレーム(RX フレーム)全体のアイパターンを示す。図11に示したクロック位相選択部240は、同期ワードデータを安定的に受信可能なクロックが、ペイロードデータを安定して受信可能なクロックであると判定する。受信信号には、ノイズやPLL回路の精度に起因するジッタ(周期の乱れ)が含まれている。ジッタの発生のため、受信信号の変化点では安定してサンプリングを行うことができない。このため、図14に示す例では、クロック位相選択部240は、同期検出部230が識別したクロック(破線部内に示すクロックFCLK_P2〜FCLK_P5)の中から、#4の位相(すなわち、クロックFCLK_P4)が最も安定してサンプリング可能なクロックであると判定する。
図15(a)に示すように、図11に示した通信装置では、サンプリングクロックとしてクロックFCLK_P4を選択した後に、引き続きクロックFCLK_P4を用いてペイロードデータのサンプリングを行う。図11に示した通信装置では、同期検出処理において最適と判定されたサンプリングクロックはペイロードデータの受信が完了するまでの間は変更されないため、ペイロードデータを構成する全てのデータData#0〜Data#4を、固定されたサンプリングクロックを用いて受信する。
ここで、図14に示したように、アイパターンの開口率が受信信号のフレーム全体について維持される場合には問題はないものの、将来的には、ビットレートの高速化やペイロードデータの長フレーム化の進行に伴う、アイパターンの開口率の低下が懸念される。アイパターンの開口率が維持されない状況では、同期検出処理において最適と判定した位相を引続きペイロードデータの受信にも用いるものとしては、選択した位相がジッタ境界を跨ぎ、受信信号の誤受信を引き起こす危険性がある。従って、図15(b)に示すように、ペイロードデータの受信中においても、サンプリングクロックを所定のタイミングで動的に更新し、常に、最適なサンプリングクロックを用いて受信可能とする必要がある。
また、特許文献1に開示された位相判定回路によれば、受信信号の変化点に追従して動的にサンプリング位相の更新が可能であるが、受信信号の一部に変化点の存在しないデータ系列を含む場合には、最適なサンプリングクロックを選択できないという問題がある。以下、具体的に説明する。
例えば、入力サンプル回路311に入力される受信信号のシリアルデータ系列が、所定の信号レベルが連続する連続データ(例えば、0又は1が連続するデータ系列であって、16進数表記では0xFFFFや0x0000など)である場合には、位相調整回路313は、このような連続データが入力される間は、全てのD型フリップフロップ431〜434からローレベルの信号を出力する。この結果、位相判定部303は受信信号の変化点を取得することができないため、適切なクロック信号を判定することができない。従って、クロック選択部304によるクロック選択は開始されない。
さらに、連続データではない受信信号に基づいて最適なクロックが一旦選択された場合においても、クロックが選択された後にカウンタ部515がJKフリップフロップ511〜514をリセットし、以降の受信信号に連続データが続いた場合には、再び、位相判定部303を用いて適切なクロック信号を判定することができない。このため、クロック選択部304によるクロック選択は開始されない。
尚、特許文献1に開示された位相判定回路では、対象とする受信信号のフレームが、シリアルデータ系列中にハイレベル又はローレベルの変化点が必ず出現するフレーム(8B10Bに代表される高速シリアル転送方式のフレームなど)、或いは、同期確立のためのプリアンブルと、それほど長くはないデータ系列とから構成される転送フレームなどであるとも考えられる。しかし、受信信号を複数のデータ区簡に分割して各区間において最適なクロックを選択させたいときに、数ビット単位(例えば、4ビット単位)の短いデータ区間においては上述した連続データが含まれる状況が想定され、このようなフレーム構造を有する受信信号に対しては変化点を検出することができない可能性がある。
すなわち、図11及び特許文献1に開示された本発明に関連する技術では、同期を検出するための同期ワードデータと、同期ワードデータに続くペイロードデータとを含むフレーム構造の受信信号に対して、受信信号に連続データが含まれる場合には受信信号の変化点に動的に追従することができずに、最適なサンプリングクロックを選択することができないものであった。
本発明に係る通信装置は、フレーム毎に同期ワードとペイロードとを含む受信信号を受信し、N(Nは2以上の整数)相のクロックの中から選択する一のサンプリングクロックを用いて前記受信信号をサンプリングする通信装置であって、受信した前記受信信号から前記N相のクロックのうちいずれのクロック間に受信信号の変化点があるかを示すビット境界信号を検出するビット境界検出部と、前記サンプリングクロックを更新するタイミングを制御するクロック更新タイミング制御部と、前記タイミングにおいて前記ビット境界信号を毎回記憶する第1のビット境界信号記憶部と、前記ビット境界検出部において前記受信信号の変化点が検出された場合には前記第1のビット境界信号記憶部に記憶された信号を取り込み記憶し、前記受信信号の変化点が検出されなかった場合には記憶している信号の更新を行わない第2のビット境界信号記憶部と、前記ビット境界検出部において前記受信信号の変化点が検出された場合には、前記第1のビット境界信号記憶部に記憶された信号に基づいて前記サンプリングクロックを選択し、前記受信信号の変化点が検出されなかった場合には、前記第2のビット境界信号記憶部に記憶された信号に基づいて前記サンプリングクロックを選択する第1のクロック選択部と、を備えることを特徴とするものである。
このように、サンプリングクロックの更新タイミングにおいて第1のビット境界信号記憶部にはビット境界信号を毎回記憶し、第2のビット境界信号記憶部には、受信信号の変化点が検出された場合には第1のビット境界信号記憶部に記憶された信号を取り込み記憶し、受信信号の変化点が検出されなかった場合には記憶している信号の更新を行わない。そして、第1のクロック選択部は、受信信号の変化点が検出された場合には、第1のビット境界信号記憶部に記憶された信号に基づいてサンプリングクロックを選択し、受信信号の変化点が検出されなかった場合には、第2のビット境界信号記憶部に記憶された信号に基づいてサンプリングクロックを選択する。これにより、データの変化点が検出されなかった場合においても、第2のビット境界記憶部に記憶された信号に基づいてサンプリングクロックを選択することができる。このため、受信信号に連続データが含まれる場合においても受信信号の変化点に動的に追従することができ、最適なサンプリングクロックを選択することができる。
本発明にかかる通信装置によれば、受信信号に連続データが含まれる場合においても受信信号の変化点に動的に追従することができ、最適なサンプリングクロックを選択することが可能な通信装置を提供することができる。
本発明の実施の形態1に係る受信装置を示すブロック図である。 本発明の実施の形態1に係る同期検出部とクロック乗せ換え処理部を示すブロック図である。 本発明の実施の形態1に係る同期検出部を示すブロック図である。 本発明の実施の形態1に係るビット境界検出回路を示すブロック図である。 本発明の実施の形態1に係るビット境界検出回路の動作例を示すタイミングチャートである。 本発明の実施の形態1に係るクロック位相選択部を示すブロック図である。 本発明の実施の形態1に係るクロック位相選択部によるクロック選択の例を説明するための図である。 本発明の実施の形態1に係るクロック位相選択部によるクロック選択の例を説明するための図である。 本発明の実施の形態1に係るクロック位相選択部によるクロック選択の例を説明するための図である。 本発明の実施の形態1に係るクロック位相選択部の動作例を説明するためのタイミングチャートである。 本発明に関連する受信装置を示すブロック図である。 本発明に関連する位相判定回路を示すブロック図である。 本発明に関連する位相判定回路の動作波形図である。 本発明の課題を説明するための図である。 本発明の課題を説明するための図である。
以下、本発明を実施するための最良の形態について、図面を参照しながら詳細に説明する。説明の明確化のため、以下の記載及び図面は、適宜、省略及び簡潔化がなされている。各図面において同一の構成又は機能を有する構成要素及び相当部分には、同一の符号を付し、その説明を省略する。
実施の形態1.
まず、図1を参照して、本実施の形態にかかる通信装置(具体的には受信装置)の構成について説明する。本実施の形態における受信信号は、データ列中に、同期ワード(Sync Word)領域と、ペイロード(Payload)領域とを有する。受信信号のフレームは、同期ワード領域に続いて、ペイロード領域が配置される構造を有している。同期ワード領域には、予めシステムにおいて設定した同期ワードデータを格納する。ペイロード領域には、システムにおいて処理される処理データを格納する。システムでは、同期ワードデータに続けてペイロードデータを送信する。
本実施の形態では、フレーム毎に同期ワードとペイロードとを含む受信信号を受信し、シンボルレートの8倍の周波数を用いて受信信号をサンプリングするものとしている。即ち、1シンボルあたり8位相のサンプリングクロック(以下、各位相を番号♯0〜♯7と称する場合がある。)を用いて、受信信号をサンプリングする。従って、以下では、受信信号のサンプリングに使用するN(Nは2以上の整数)相のクロックについて、Nが8である場合を例に説明する。
図1に示すように、受信装置は、アンテナ1と、高周波(RF)部2と、デジタルベースバンド(DBB)部3とを有する。
RF部2は、復調器21と、第1のPLL(Phase Locked Loop)回路23とを有する。復調器21は、アンテナ1を介して受信される無線信号を復調してデータ信号を生成する。このデータ信号は、例えば、8ビットのビット幅を有するパラレルデータである。復調器21は、例えば、パラレルデータをシリアルデータに変換して受信信号として出力する。受信信号は、例えば、1ビットのビット幅のデータ列を構成する。
第1のPLL回路23は、同期ワードデータに続いて、例えば、単相のクロックを出力する。このクロックは、復調器21におけるデータ列の動作処理に用いられる。
DBB部3は、同期検出部30と、クロック位相選択部40と、第2のPLL回路50と、クロック乗せ換え処理部70と、FIFO部80と、信号処理回路90とを有する。尚、同期検出部30の同期パターン検出ユニット31とクロック乗せ換え処理部70のエラスティックストアユニット71との詳細な構成と、ビット境界検出ユニット32の詳細な構成と、クロック位相選択部40の詳細な構成と、については後述する。
同期検出部30は、同期パターン検出ユニット31と、ビット境界検出ユニット32とを有する。同期パターン検出ユニット31は、受信した受信信号に含まれる同期ワードデータを、位相が互いに異なるn個のクロックFCLK_P[n−1:0](以下、単にFCLK_P[n−1:0]と称する場合がある。)を用いて受信することで同期検出処理を行う。そして、同期パターン検出ユニット31は、同期検出したクロックを識別する識別信号OKFLG[n−1:0](以下、単にOKFLG[n−1:0]と称する場合がある。)を生成する。OKFLG[n−1:0]は、同期パターン検出ユニット31からの出力を示すパラレル信号である。OKFLG[n−1:0]は、n本の信号線を用いてパラレルに伝送する。尚、FCLK_P[n−1:0]は、後述する第2のPLL回路50が生成するN(Nは2以上の整数)相クロックである。
同期パターン検出ユニット31は、受信した受信信号に含まれる同期ワードデータを、FCLK_P[n−1:0]を用いてサンプリングする。次いで、同期パターン検出ユニット31は、サンプリングの結果と予め定めた同期パターンとを比較し、FCLK_P[n−1:0]のうち、予め定めた同期パターンを正しくサンプリングすることができたクロックを、FCLK_P[n−1:0]のうちから識別する。そして、同期パターン検出ユニット31は、予め定めた同期パターンを正しくサンプリングすることができたクロックがどのクロックなのかを示す信号であるOKFLG[n−1:0]を、クロック位相選択部40へと出力する。
ここで、図2を参照して、同期検出部30及びクロック乗せ換え処理部70のより詳細な構成について説明する。図2は、同期検出部30の同期検出ユニット31と、後述するクロック乗せ換え処理部70のエラスティックストアユニット71の構成を示すブロック図の一例である。図2に示すように、同期検出部30において、同期パターン検出ユニット31は、複数の同期パターン検出器31a〜31hを用いて構成される。本実施の形態では、同期パターン検出器31a〜31hは、同期ワードデータを用いてキャラクタ同期を行う。尚、図2においては、FCLK_P[n−1:0]の位相の個数が8個である例を示し、位相が互いに異なる8個のFCLK_P0〜7で同期パターン検出器31a〜31hが動作するものとして説明する。
受信信号を受信した同期パターン検出器31a〜31hは、FCLK_P0〜7で受信信号に含まれる同期ワードデータをサンプリングする。具体的には、クロックの立ち上がりエッジ(又は、立ち下がりエッジ)で受信信号の同期ワードデータをサンプリングする。次いで、同期パターン検出器31a〜31hは、同期パターン(例えばDBB部3が有するレジスタ等の記憶手段に、予め定めた同期パターンが格納されている。)と、受信信号に含まれる同期ワードデータのサンプリングの結果とを比較し、同期パターンと一致する同期ワードデータをサンプリングすることができたクロックを、FCLK_P0〜7のうちから識別する。同期パターン検出器31a〜31hのそれぞれは、供給されたクロックで同期パターンを正しくサンプリングすることができた場合には、例えば1を示すOKFLG信号を出力し、供給されたクロックで同期パターンを正しくサンプリングすることができなかった場合には、例えば0を示すOKFLG信号を出力する。
具体的に説明すると、例えば、同期パターン検出器31aは、FCLK_P0を用いて受信信号に含まれる同期ワードデータをサンプリングする。そこで、同期パターン検出器31aは、FCLK_P0で係る同期ワードをサンプリングした結果と、記憶手段に格納された同期パターンとを比較する。そして、係るサンプリングの結果と同期パターンとが一致していれば、同期パターン31aは、FCLK_P0は同期パターンを正しくサンプリングすることができたクロックであると判定し、"1"を示すOKFLG0信号を出力する。その他の同期パターン検出器31b〜31hも同様の動作を行い、それぞれOKFLG1〜OKFLG7を出力する。
従って、図2に示すOKFLG[n−1:0]は、同期パターンを正しくサンプリングすることができたクロックに対応するビットは1となり、係る同期パターンを正しくサンプリングすることができなかったクロックに対応するビットは0となる複数ビットのパラレル信号である。同期検出部30は、OKFLG[n−1:0]を、クロック位相選択部40に出力する。同期パターン検出器31a〜31hからのパラレル信号OKFLG[n−1:0]の例としては、(OKFLG7,OKFLG6,OKFLG5,・・・OKFLG0)=(0,1,1,1,1,1,0,0)という信号が一例として考えられる。ビット列の最も左側のビットが最上位ビット(MSB:Most Significant Bit)を、最も右側のビットが最下位ビット(LSB:Lest Significant Bit)をそれぞれ示す。この例では、LSBより数えて3番目から7番目までのFCLK_P2〜P6で、同期ワードデータを正しく検出できたことを示す。
ビット境界検出ユニット32は、FCLK_P[n−1:0]を用いて受信信号を受信することでビット境界検出処理を行う。ビット境界検出ユニット32は、ビット境界検出処理として、受信信号からFCLK_P[n−1:0]のうちいずれのクロック間に受信信号の変化点があるかを示すビット境界信号BNDFLG[n−1:0](以下、単にBNDFLG[n−1:0]と称する場合がある。)を生成する。BNDFLG[n−1:0]は、ビット境界検出ユニット32からの出力を示すパラレル信号である。ビット境界検出ユニット32は、n本の信号線を用いてパラレルに伝送する。以下、図3乃至図5を参照して、ビット境界検出ユニット32についてより詳細に説明する。
図3は、ビット境界検出ユニット32の構成を示すブロック図の一例である。図3に示すように、同期検出部30において、ビット境界検出ユニット32は、複数のビット境界検出回路32a〜32hを用いて構成される。本実施の形態では、ビット境界検出回路32a〜32hは、FCLK_P[n−1:0]に含まれる第1の位相のクロックを用いて受信する受信信号と、第1の位相に隣接する第2の位相のクロックを用いて受信する受信信号と、を比較することでビット境界信号を検出する。また、ビット境界検出回路32a〜32hは、後述するCLR信号を用いて、検出したビット境界信号の値をクリアする。尚、図3においては、FCLK_P[n−1:0]の位相の個数が8個である例を示し、位相が互いに異なる8個のFCLK_P0〜P7でビット境界検出回路32a〜32hが動作するものとして説明する。
図4は、ビット境界検出回路32aの構成を示すブロック図の一例である。ビット境界検出回路32a〜32hはそれぞれ同一の構成を有するため、図4では、ビット境界検出回路32aを代表して説明する。ビット境界検出回路32aは、D型フリップフロップDFF1a〜DFF4a(以下、D型フリップフロップをDFFと称する場合がある。)と、排他的論理和回路EXORa(以下、単にEXORaと称する場合がある。)と、論理和回路ORa(以下、単にORaと称する場合がある。)と、論理積回路ANDa(以下、単にANDaと称する場合がある。)と、を備えている。DFF1a〜DFF4aは、入力端子Cに入力されるクロックの立ち上がりエッジに応じて、データ端子Dに入力される信号に含まれるデータの値を取り込み、その値を出力端子Qから出力する。EXORaは、入力される信号について排他的論理和演算を行う。ORaは、入力される信号について論理和演算を行う。ANDaは、入力される信号について論理積演算を行う。
図5は、ビット境界検出回路32の動作例を示すタイミングチャートの一例である。ビット境界検出回路32a〜32hは、図5の(a)に示すFCLK_P0〜P7を用いて受信信号を受信することで、図5の(b)に示すデータ信号Data(FCLK_P0位相)〜Data(FCLK_P7位相)(以下、単にData(FCLK_P0位相)〜Data(FCLK_P7位相)と称する場合がある。)を取得する。例えば、ビット境界検出回路32aのDFF1aがFCLK_P0を用いて受信信号を受信した場合に、DFF1aの出力信号がData(FCLK_P0位相)に対応する。
そして、ビット境界検出回路32a〜32hは、図5の(b)に示すData(FCLK_P0位相)〜Data(FCLK_P7位相)について、互いに位相が隣接するデータ信号同士を比較することで、図5の(c)に示すBNDFLG0〜BNDFLG7を生成する。
例えば、ビット境界検出回路32hにおいて、タイミングT1でDFF2hに受信信号の入力が開始される。DFF2hは、タイミングT2で、FCLK_P0に応じて、データを取り込む。DFF3hは、タイミングT3で、FCLK_P7に応じて、データを取り込む。ここで、タイミングT2からT3の区間では、DFF1hからのData(FCLK_P7位相)とDFF2hからのData(FCLK_P0位相)とが不一致となるため、タイミングT2からタイミングT3の区間ではEXORhの出力がハイレベルとなる。
DFF4hは、タイミングT4で、FCLK_P7に応じて、データを取り込む。このとき、EXORhの出力はハイレベルであり、かつ、CLR信号の反転信号もハイレベルであるため、BNDFLG7はハイレベルとなる。タイミングT5でANDhにCLR信号が入力され、ANDhの出力がローレベルとなる。DFF4hは、タイミングT6でFCLK_P7に応じて、データを取り込む。このとき、ANDhの出力信号はローレベルであるため、BNDFLG7はローレベルとなる。すなわち、タイミングT4からタイミングT5までの間は、DFF4hへの入力はハイレベルに維持され、CLR信号が入力されるタイミングT5でDFF4hへの入力がローレベルへとリセットされる。その他のビット境界検出回路32a〜32gも同様の動作を行い、それぞれBNDFLG0〜BNDFLG6を出力する。
このように、ビット境界検出回路32a〜32hは、入力される隣接クロック間に受信信号の変化点が存在する場合に、ハイレベルのBNDFLG0〜BNDFLG7を出力する。例えば、図5に示す例では、BNDFLG0〜BNDFLG6がローレベルであり、BNDFLG7がハイレベルとなっていることから、FCLK_P7とFCLK_P0間に受信信号の変化点が存在することを示している。
従って、図3に示したBNDFLG[n−1:0]は、ビット境界検出回路32a〜32hに入力される隣接クロック間に受信信号の変化点が存在する場合には、ビットは1となり、ビット境界検出回路32a〜32hに入力される隣接クロック間に受信信号の変化点が存在しない場合には、ビットは0となる複数ビットのパラレル信号である。同期検出部30は、BNDFLG[n−1:0]を、クロック位相選択部40に出力する。ビット境界検出回路32a〜32hからのパラレル信号BNDFLG[n−1:0]の例としては、(BNDFLG7,BNDFLG6,BNDFLG5,・・・BNDFLG0)=(1,0,0,0,0,0,1,1)という信号が一例として考えられる。この例では、FCLK_P0とFCLK_P1の間と、FCLK_P1とFCLK_P2の間と、FCLK_P7とFCLK_P0の間と、において、受信信号の変化点が存在することを示す。
図1に戻り説明を続ける。クロック位相選択部40は、同期検出部30において生成されたOKFLG[n−1:0]とBNDFLG[n−1:0]とに基づいて、FCLK_P[n−1:0]の中から受信信号のサンプリングに使用する一のクロックを選択する。クロック位相選択部40は、選択したクロックを示す選択信号CLKSEL[n−1:0](以下、単にCLKSEL[n−1:0]と称する場合がある。)をFIFO部80のセレクタ81へと出力する。CLKSEL[n−1:0]は、クロック位相選択部40からの出力を示すパラレル信号である。CLKSEL[n−1:0]は、n本の信号線を用いてパラレルに伝送する。以下、図6乃至図10を参照して、クロック位相選択部40についてより詳細に説明する。
図6は、クロック位相選択部40の構成を示すブロック図の一例である。図6に示すように、クロック位相選択部40は、第2のクロック選択部としてのOKFLGクロック選択部41と、クロック更新タイミング制御部42と、ビット境界信号記憶部としてのBNDFLG記憶部43と、第1のクロック選択部としてのBNDFLGクロック選択部44と、クロック選択切替部45と、を備えている。
OKFLGクロック選択部41は、第1クロック選択回路110を備えている。第1クロック選択回路110は、同期ワードデータの受信において、OKFLG[n−1:0]とBNDFLG[n−1:0]とに基づいて、FCLK_P[n−1:0]の中から一のクロックを選択し、選択したクロックを示す選択信号CLKSEL1(以下、単にCLKSEL1と称する場合がある。)を出力する。CLKSEL1は、同期ワードデータの受信に用いるサンプリングクロックを示すパラレル信号である。CLKSEL1は、n本の信号線を用いてパラレルに伝送する。
本実施の形態では、第1クロック選択回路110は、FCLK_P[n−1:0]のうち、OKFLG[n−1:0]が示す同期検出したクロックであって、BNDFLG[n−1:0]が示す受信信号の変化点から所定の位相分離れた一のクロックを、CLKSEL1として選択する。例えば、受信信号の変化点から最も離れた位相のクロックを選択する場合には、位相が180度異なるクロックを選択する。従って、第1クロック選択回路110は、例えば、8相のFCLK_P[n−1:0]から1相のFCLK_P[n−1:0]を選択するものとして、OKFLG[n−1:0]として(OKFLG7,OKFLG6,OKFLG5,・・・OKFLG0)=(0,0,1,1,1,1,1,0)という信号を受けると共に、BNDFLG[n−1:0]として(BNDFLG7,BNDFLG6,BNDFLG5,・・・BNDFLG0)=(1,0,0,0,0,0,1,1)という信号を受けた場合を考える。この場合、第1クロック選択回路110は、その選択可能なFCLK_P1〜5のうち、中心のFCLK_P3を選択する。そして、第1クロック選択回路110は、CLKSEL1を"00001000"として出力する。
クロック更新タイミング制御部42は、ペイロードデータの受信中に、サンプリングクロックを更新するタイミングを制御する。このため、クロック更新タイミング制御部42は、ビット境界検出ユニット32でのビット境界検出処理と、後述するBNDFLG記憶部43でのビット境界信号の記憶処理と、を制御するため、所定の周期ごとにCLR信号を生成する。また、クロック更新タイミング制御部42は、後述するクロック選択切替部45でのクロック選択切り替え処理を制御するため、ペイロードデータの受信開始タイミングにおいてSP1ST信号を生成する。尚、CLR信号はワンショットパルス信号、SP1ST信号はローレベルからハイレベルへの遷移信号とする。
クロック更新タイミング制御部42は、例えば、ペイロードデータを所定のビット数(Nビット)受信する毎のタイミングで、CLR信号を生成する。所定のビット数は、例えば、S/P変換器82が備えるFIFOの段数に応じて定める。ここで、クロック更新タイミング制御部42は、同期検出部30からOKFLG[n−1:0]を受けることで、同期ワードデータに対する受信処理の完了を検知することができる。このため、クロック更新タイミング制御部42は、ペイロードデータのビット数をカウントするNビットカウンタ120を用いて、OKFLG[n−1:0]を受けたタイミングでペイロードデータのビット数のカウントを開始し、Nビット受信するごとにCLR信号を生成する。これにより、クロック更新タイミング制御部42は、Nビット単位で、ペイロード受信中に用いるサンプリングクロックの更新タイミングを制御することができる。
BNDFLG記憶部43は、第1のビット境界信号記憶部としての現在情報記憶部130と、第2のビット境界信号記憶部としての過去情報記憶部140と、論理積回路150と、を備えている。BNDFLG記憶部43でのビット境界信号の記憶処理は、クロック更新タイミング制御部42が出力するCLR信号と、後述するBNDFLGクロック選択部44が出力するNOBND信号と、に基づいて制御される。
現在情報記憶部130は、クロック更新タイミング制御部42によるタイミングにおいて、BNDFLG[n−1:0]を毎回記憶する。現在情報記憶部130は、BNDFLG[n−1:0]を毎回記憶するため、現在のタイミングにおける受信信号のビット境界信号を記憶している。
過去情報記憶部140は、ビット境界検出ユニット32において受信信号の変化点が検出された場合には、現在情報記憶部130に記憶された信号を取り込み記憶し、受信信号の変化点が検出されなかった場合には記憶している信号の更新を行わない。過去情報記憶部140は、クロック更新タイミング制御部42によるタイミングにおいて、現在情報記憶部130がBNDFLG[n−1:0]の記憶を行う際に、ビット境界検出ユニット32における受信信号の変化点の検出の有無に応じて、現在情報記憶部130に記憶された信号を取り込んで記憶するか、或いは、当該タイミングまでに記憶している信号の更新を行わずに値をそのまま保持する。すなわち、過去情報記憶部140は、現在情報記憶部130が現在記憶しているBNDFLG[n−1:0]よりも前に記憶していたビット境界信号であって、ビット境界検出ユニット32において受信信号の変化点が検出されたときのビット境界信号を記憶している。
現在情報記憶部130は、セレクタ131_1〜131_nと、DFF132_1〜132_nと、を備えている。セレクタ131_1〜131_nは、BNDFLG[n−1:0]と、DFF132_1〜132_nの出力値と、をCLR信号に基づきセレクトし、セレクトしたデータをDFF132_1〜132_nに出力する。DFF132_1〜132_nは、データ端子Dにセレクタ131_1〜131_nからの出力値が入力され、クロック入力端子Cに後述する基準クロックFCLK_M(以下、単にFCLK_Mと称する場合がある。)が入力される。そして、DFF132_1〜132_nは、FCLK_Mの立ち上がりエッジに応じて、入力されるデータの値を取り込み、その値を出力端子Qから出力する。DFF132_1〜132_nからの出力値は、セレクタ131_1〜131_nと、後述する第2クロック選択回路160と、後述する過去情報記憶部140のセレクタ131_1〜131_nに入力される。これにより、現在情報記憶部130は、CLR信号をトリガ信号として、入力されるBNDFLG[n−1:0]のデータを取り込むと共に、次のCLR信号が入力されるまでの間は、取り込んだデータをDFF132_1〜132_nに保持する。
過去情報記憶部140は、セレクタ141_1〜141_nと、DFF142_1〜142_nと、を備えている。セレクタ141_1〜141_nは、現在情報記憶部130のDFF132_1〜132_nの出力値と、DFF142_1〜142_nの出力値と、を論理積回路150からの出力信号に基づきセレクトし、セレクトしたデータをDFF142_1〜142_nに出力する。DFF142_1〜142_nは、データ端子Dにセレクタ141_1〜141_nからの出力値が入力され、クロック入力端子CにFCLK_Mが入力される。そして、DFF142_1〜142_nは、FCLK_Mの立ち上がりエッジに応じて、入力されるデータの値を取り込み、その値を出力端子Qから出力する。DFF142_1〜142_nからの出力値は、セレクタ141_1〜141_nと、後述する第3クロック選択回路170と、に入力される。これにより、過去情報記憶部140は、論理積回路150からの出力信号をトリガ信号として、現在情報記憶部130から入力されるBNDFLG[n−1:0]のデータを取り込むと共に、論理積回路150からの次の出力信号が入力されるまでの間は、取り込んだデータをDFF142_1〜142_nに保持する。
論理積回路150は、CLR信号と、後述するNOBND信号と、が入力される。論理積回路150は、2つ入力の論理積演算結果を出力する。後述するように、第2クロック選択回路160は、現在情報記憶部13から出力されるビット境界信号が、受信信号が所定の信号レベルが連続する連続データであることを示すものである場合には、例えば"1"を示すNOBND信号を出力する。従って、NOBND信号が"1"である場合には、CLR信号の値に関わらず、論理積回路150は"0"を出力する。このとき、過去情報記憶部140は、現在情報記憶部130のビット境界信号を取り込まない。これに対して、NOBND信号が"0"であり、かつ、CLR信号が"1"である場合には、論理積回路150は"1"を出力するため、過去情報記憶部140は、現在情報記憶部130のビット境界信号を取り込む。すなわち、NOBND信号は、現在情報記憶部130のビット境界信号を過去情報記憶部140に取り込むための、マスク信号として用いられる。
BNDFLGクロック選択部44は、第1のクロック選択回路としての第2クロック選択回路160と、第2のクロック選択回路としての第3クロック選択回路170と、を備えている。BNDFLGクロック選択部44は、現在情報記憶部130に記憶されるBNDFLG[n−1:0]と、過去情報記憶部140に記憶されるBNDFLG[n−1:0]と、に基づいて、FCLK_P[n−1:0]の中から一のクロックを選択し、選択したクロックを示す選択信号CLKSEL2と選択信号CLKSEL3(以下、単にCLKSEL2、CLKSEL3と称する場合がある。)を出力する。後述するように、BNDFLGクロック選択部44は、現在情報記憶部130に記憶されるBNDFLG[n−1:0]が、受信信号が連続データであることを示すものである場合には、第3クロック選択回路170を用いてCLKSEL3を出力し、それ以外の場合には、第2クロック選択回路160を用いてCLKSEL2を出力する。尚、CLKSEL2及びCLKSEL3は、ペイロードデータの受信に用いるサンプリングクロックを示すパラレル信号である。CLKSEL2及びCLKSEL3は、n本の信号線を用いてパラレルに伝送する。
第2クロック選択回路160は、クロック更新タイミング制御部42によるタイミングにおいて、ビット境界検出ユニット32において受信信号の変化点が検出された場合に、現在情報記憶部130に記憶されたBNDFLG[n−1:0]のデータに基づいて、FCLK_P[n−1:0]の中から一のクロックを選択し、CLKSEL2を出力する。また、第2クロック選択回路160は、現在情報記憶部13から出力されるBNDFLG[n−1:0]のデータに基づいて、NOBND信号を生成する。
ここで、入力される受信信号に含まれるシリアルデータ系列が、所定の信号レベルが連続する連続データ(例えば、0又は1が連続するデータ系列であって、16進数表記では0xFFFFや0x0000など)である場合には、ビット境界検出ユニット32は受信信号中の変化点を検出することができない。このため、例えば、所定のビット数(Nビット)単位で区分したペイロードデータの受信中に、いずれかの区間のシリアルデータ系列が連続データであった場合には、その区間に基づいて検出されるBNDFLG[n−1:0]の全ての出力値は"0"となる。かかる場合には、第2クロック選択回路160は、CLKSEL2の全ての出力値を"0"とすると共に、NOBNDの出力値を"1"とする。これに対して、現在情報記憶部130に記憶されるBNDFLG[n−1:0]の全ての出力値が"0"でない場合(すなわち、ビット境界検出ユニット32が受信信号中の変化点を検出することができた場合)には、第2クロック選択回路160は、現在情報記憶部130に記憶されるBNDFLG[n−1:0]に基づいて、FCLK_P[n−1:0]の中から一のクロックを選択し、選択したクロックを示す出力値を"1"とするCLKSEL2を出力すると共に、NOBNDの出力値を"0"とする。
本実施の形態では、第2クロック選択回路160は、FCLK_P[n−1:0]のうち、現在情報記憶部130に記憶されたBNDFLG[n−1:0]が示す受信信号の変化点から所定の位相分離れた一のクロックを、CLKSEL2として選択する。例えば、受信信号の変化点から最も離れた位相のクロックを選択する場合には、位相が180度異なるクロックを選択する。以下、図7乃至図9を参照して、第2クロック選択回路160によるクロック選択処理について具体的に説明する。
図7に示す信号波形のように、ジッタ成分が受信信号に及ぼす影響が軽微であり、また、データ途中にノイズが入らないなどの状況においては、同期検出部30が出力するOKFLG[n−1:0]及びBNDFLG[n−1:0]の出力値は、対応するビットの出力値が互いに"1"と"0"が反対のビットとなる(すなわち、ハイレベルとローレベルが反転した信号となる)。このため、同期検出したクロックのうちの中心位相のクロック(すなわち、OKFLG[n−1:0]の出力値がハイとなる区間の位相の中心位相のクロック)と、受信信号の変化点から最も離れた位相のクロック(すなわち、BNDFLG[n−1:0]の出力値がハイとなる位相から180度異なる位相のクロック)とが一致する。従って、図7に示す信号波形に対しては、第2クロック選択回路160は、例えば、#4のクロック(すなわち、FCLK_P4)を選択して、CLKSEL2を"00010000"として出力する。
図8に示す信号波形のように、ジッタ成分が変化することで受信信号の変化点が変動する状況においては、ビット境界検出ユニット32は複数の受信信号の変化点を検出することがある。このため、同期検出部30が出力するBNDFLG[n−1:0]の出力値として、複数のビットの出力値が"1"となる(同時に、同期検出部30が出力するOKFLG[n−1:0]の出力値として、複数のビットの出力値が"0"となる。)。従って、図8に示す信号波形に対しては、第2クロック選択回路160は、受信信号の変化点が存在するこれら複数のクロックから最も位相が離れたクロックを選択する。例えば、第2クロック選択回路160は、#5のクロック(すなわち、FCLK_P5)を選択して、CLKSEL2を"00100000"として出力する。
尚、図9に示す信号波形のように、データ途中にノイズが発生することで、BNDFLG[n−1:0]の出力信号がハイレベルとなる区間の中心位相で受信信号の変化点が検出される状況においては、第2クロック選択回路130は、サンプリングクロックとしていずれのクロックも選択できない。このため、第2クロック選択回路130は、CLKSEL2を"00000000"として出力すると共に、NOBND信号の出力値を"1"とする。
第3クロック選択回路170は、クロック更新タイミング制御部42によるタイミングにおいて、ビット境界検出ユニット32において受信信号の変化点が検出されなかった場合に、過去情報記憶部140に記憶されたBNDFLG[n−1:0]に基づいて、FCLK_P[n−1:0]の中から一のクロックを選択し、CLKSEL3を出力する。NOBND信号の出力値が"1"である場合には、第2クロック選択回路160は、CLKSEL3の全ての出力値を"0"とする。これに対して、NOBND信号の出力値が"1"である場合(すなわち、第2クロック選択回路160がクロック選択を行うことができない場合)には、第3クロック選択回路170は、過去情報記憶部140に記憶されるBNDFLG[n−1:0]に基づいて、FCLK_P[n−1:0]の中から一のクロックを選択し、選択したクロックを示す出力値を"1"とするCLKSEL3を出力する。
本実施の形態では、第3クロック選択回路170は、FCLK_P[n−1:0]のうち、過去情報記憶部140に記憶されたBNDFLG[n−1:0]が示す受信信号の変化点から所定の位相分離れた一のクロックを、CLKSEL3として選択する。例えば、受信信号の変化点から最も離れた位相のクロックを選択する場合には、位相が180度異なるクロックを選択する。
従って、第3クロック選択回路170は、例えば、8相のFCLK_P[n−1:0]から1相のFCLK_P[n−1:0]を選択するものとして、BNDFLG[n−1:0]として(BNDFLG7,BNDFLG6,BNDFLG5,・・・BNDFLG0)=(1,0,0,0,0,0,0,0)という信号を受けた場合を考える。この場合、第3クロック選択回路170は、FCLK_P7とFCLK_P0の間に受信信号の変化点が存在すると判定し、受信信号の変化点から所定の位相離れたFCLK_P3を選択する。そして、第3クロック選択回路170は、CLKSEL3を"00001000"として出力する。
図6に戻って説明を続ける。クロック選択切替部45は、クロック更新タイミング制御部42によるタイミングにおいて、OKFLGクロック選択部41から出力されるCLKSEL1と、BNDFLGクロック選択部44から出力されるCLKSEL2及びCLKSEL3と、から一のクロック選択信号を選択し、CLKSEL[n−1:0]として出力する。
クロック選択切替部45は、論理和回路181_1〜181_nと、セレクタ182_1〜182_nと、を備えている。セレクタ182_1〜182_nは、CLKSEL1と論理和回路181_1〜181_nからの出力値(すなわち、CLKSEL2又はCLKSEL3)と、をSP1STに基づきセレクトし、セレクトしたデータをCLKSEL[n−1:0]として出力する。これにより、同期ワードデータの受信後の最初のNビットのペイロードデータ受信の際にはCLKSEL1がCLKSEL[n−1:0]としてセレクトされ、その後のペイロードデータの受信中には、CLKSEL2又はCLKSEL3がCLKSEL[n−1:0]としてセレクトされる。従って、クロック選択切替部45は、受信する受信信号のデータ部分が同期ワードデータであるか又はペイロードデータであるかに応じて、受信に用いるサンプリングクロックを切替えることができる。
図1に戻り説明を続ける。第2のPLL回路50は、FCLK_MとFCLK_P[n−1:0]を生成する。第2のPLL回路50は、生成したFCLK_P[n−1:0]を、同期検出部30と、クロック乗せ換え処理部70と、に出力する。また、第2のPLL回路50は、生成したFCLK_Mをクロック乗せ換え処理部70に出力する。本実施の形態におけるFCLKとFCLK_P[n−1:0]は、参照クロックを逓倍した高速クロックである。また、FCLK_P[n−1:0]は、同速度であって、位相が互いに360°/nずつ異なる複数クロックにより構成される。本実施の形態では、nは8であるものとして説明する。このため、第2のPLL回路50の出力は1ビットのビット幅と8ビットのビット幅とにより構成され、それぞれのビットは一つの位相のクロックに対応する。また、本実施の形態では、第1のPLL回路23と第2のPLL回路50は、同一の参照クロックから逓倍されたクロックであり、同じ周波数を有し、かつ、互いに非同期の関係を有するクロックを生成する。
クロック乗せ換え処理部70は、同期検出部30が出力するデータ信号をFCLK_P[n−1:0]で受信して、受信したデータ信号をFCLK_Mに乗せ換える非同期乗せ換え処理を行う。クロック乗せ換え処理部70より後段の回路は、1相のFCLK_Mで動作する。これに対して、クロック乗せ換え処理部70より前段の回路はFCLK_P[n−1:0]で動作しているため、クロック乗せ換え処理部70では、FCLK_Mへの非同期乗せ換え処理を行う。
図2に示したように、クロック乗せ換え処理部70において、エラスティックストアユニット71を複数のエラスティックストア回路71a〜71hを用いて構成する。尚、図2においては、位相が互いに異なる8個のFCLK_P0〜7と、FCLK_Mとを用いてエラスティックストア回路71a〜71hは動作するものとして説明する。
図2示すエラスティックストア回路71a〜71hは、同期パターン検出器31a〜31hが出力したデータ信号Data_P0〜7を、FCLK_P0〜7を用いてサンプリングする。次いで、エラスティックストア回路71a〜71hは、エラスティックストアメモリ(不図示)を用いてデータ信号Data_P0〜7を引き伸ばす。次いで、エラスティックストア回路71a〜71hは、引き伸ばした後のデータ信号をFCLK_Mでリタイミングし、Data_M0〜7としてFIFO部80へと出力する。Data_M[n−1:0]は、エラスティックストア回路71a〜71hからの出力信号を示すパラレル信号である。n本の信号線を用いてData_M0〜7をパラレルに伝送する。尚、本実施の形態では、データ信号Data_P0〜7はペイロードデータである。このように、エラスティックストア回路71a〜71hを用いてデータ信号Data_Pを引き伸ばすことで、いずれのFCLK_Pを用いてデータ信号Data_Pが受信された場合においても、FCLK_Mを用いて正確にサンプリングすることができる。
FIFO部80は、セレクタ81と、シリアルパラレル変換器(S/P変換器)82とを有する。セレクタ81は、クロック乗せ換え処理部70が出力するデータ信号をCLKSEL[n−1:0]に基づきセレクトし、セレクトしたデータをS/P変換器82に出力する。S/P変換器82は、FIFO部80においてサンプリングされたシリアルデータを、内部回路用の基準クロックSCLKに同期させてパラレルデータに変換して出力する。
信号処理回路90は、S/P変換器82から出力されるパラレルデータに基づいて信号処理(例えば、受信データのパスサーチ等を含む復号化処理)を行い、後段回路(不図示)で用いられる制御信号、或いはデータ信号を生成する。
尚、RF部2からDBB部3への受信信号の送信は、低電圧差動(LVDS)のシリアル信号に変換して同期検出部へと送信することが好ましい。例えば、P/S変換器22からのシリアル受信信号を、ドライバを用いて差動増幅して伝送し、レシーバにより差動信号を受信する。そして、2本の信号線を用いて受信信号を伝送するものとし、それぞれの信号線において、受信信号と、受信信号を反転した信号を伝送する。これにより、低電圧の受信信号受信信号を高速でデータ送受信を行う場合であっても、2本の信号により差分信号を伝送することで、ノイズの耐性を高めることができる。また、DBB部3からRF部2への受信信号の送信についても、低電圧差動(LVDS)のシリアル信号に変換して同期検出部へと送信することが好ましい。
次に、図10を参照して、クロック位相選択部40におけるクロック選択処理動作について説明する。図10は、クロック選択処理動作を説明するためのタイミングチャートである。Dataは、入力される受信信号のシリアルデータであり、ペイロードデータを所定のビット数単位に区分して、複数のデータ部分Data#0〜#5として示している。例えば、ペイロードデータをS/P変換器82が備えるFIFOの段数に応じて定めるNビット単位で区分する。クロック位相選択部40は、これら各データ部分Data#0〜#5を受信する際に使用するサンプリングクロックを更新するため、同期ワードデータの受信後、ペイロードデータをNビット受信するごとに、CLR1〜CLR7を発生する。すなわち、CLR1〜CLR7のタイミングが、サンプリングクロックを示すCLKSEL[n−1:0]の切替単位となる。尚、図においてハッチングを用いて示すデータは、連続データあることを示す。
まず、受信信号を受信した同期パターン検出ユニット31が、同期ワードデータに基づいて同期検出処理を行うことで、OKFLG[n−1:0]を生成する。生成したOKFLG[n−1:0]の出力値は、同期ワードデータに続くペイロードデータの受信においても、1フレームにわたって保持される。
また、ビット境界検出ユニット32は、受信信号の受信と同時にビット境界検出処理を開始し、BNDFLG[n−1:0]を生成する。BNDFLG[n−1:0]は、同期ワードデータに続くペイロードデータの受信中には、CLR信号のタイミングで更新される。
OKFLG[n−1:0]の入力を受けたクロック更新タイミング制御部42は、ペイロードデータの受信が開始されたものと判定して、CLR1を発生する。現在情報記憶部130は、CLR1に応じて、同期ワードデータに基づくBNDFLG[n−1:0]のデータを取り込み、その値を記憶する。そして、ビット境界検出ユニット32は、出力値をリセットし、Data#0に基づいて、BNDFLG[n−1:0]を生成する。
また、第1クロック選択回路110は、OKFLG[n−1:0](図において符号191を用いて示すデータ)と、BNDFLG[n−1:0](図において符号192を用いて示すデータ)と、に基づいてCLKSEL1を生成する。クロック選択切替部45は、CLKSEL1を選択して、CLKSEL[n−1:0]として出力する。
次に、クロック更新タイミング制御部42は、ペイロードデータの受信が開始されてから最初のNビットを受信したものと判定して、CLR2及びSP1STを発生する。現在情報記憶部130は、CLR2に応じて、Data#0に基づくBNDFLG[n−1:0]のデータを取り込み、その値を記憶する。そして、ビット境界検出ユニット32は、出力値をリセットし、Data#1に基づいて、BNDFLG[n−1:0]を生成する。また、過去情報記憶部140は、NOBND信号とCLR2に応じて、同期ワードデータに基づくBNDFLG[n−1:0]のデータが、受信信号の変化点が検出されたデータであったため、同期ワードデータに基づくBNDFLG[n−1:0]のデータを取り込み、その値を記憶する。
また、第2クロック選択回路160は、BNDFLG[n−1:0](図において符号193を用いて示すデータ)に基づいてCLKSEL2を生成する。クロック選択切替部45は、SP1STに応じてCLKSEL2を選択して、CLKSEL[n−1:0]として出力する。
また同時に、第2クロック選択回路160は、現在情報記憶部130に記憶されているBNDFLG[n−1:0]のデータ(同期ワードデータに基づくBNDFLG[n−1:0]のデータ)が受信信号の変化点を検出できたことを示すものであったために、NOBND信号の出力値を"0"とする。
次に、クロック更新タイミング制御部42は、ペイロードデータの次のNビットを受信したものと判定して、CLR3を発生する。現在情報記憶部130は、CLR3に応じて、Data#1に基づくBNDFLG[n−1:0]のデータを取り込み、その値を記憶する。そして、ビット境界検出ユニット32は、出力値をリセットし、Data#2に基づいて、BNDFLG[n−1:0]を生成する。また、過去情報記憶部140は、NOBND信号とCLR3に応じて、Data#0に基づくBNDFLG[n−1:0]のデータが、受信信号の変化点が検出されたデータであったため、Data#0に基づくBNDFLG[n−1:0]のデータを取り込み、その値を記憶する。
また、第2クロック選択回路160は、Data#1に基づくBNDFLG[n−1:0]のデータが受信信号の変化点を検出できなかったことを示すものであるため、出力値を全て"0"とし、NOBND信号の出力値を"1"とする。これを受けて、第3クロック選択回路160は、Data#0に基づくBNDFLG[n−1:0]のデータ(図において符号194を用いて示すデータ)に基づいてCLKSEL3を生成する。クロック選択切替部45は、CLR3に応じてCLKSEL3を選択して、CLKSEL[n−1:0]として出力する。
次に、クロック更新タイミング制御部42は、ペイロードデータの次のNビットを受信したものと判定して、CLR4を発生する。現在情報記憶部130は、CLR4に応じて、Data#2に基づくBNDFLG[n−1:0]のデータを取り込み、その値を記憶する。そして、ビット境界検出ユニット32は、出力値をリセットし、Data#3に基づいて、BNDFLG[n−1:0]を生成する。ここで、過去情報記憶部140は、NOBND信号の出力値が"1"であるために、現在情報記憶部130からの出力信号を取り込まない。このため、過去情報記憶部140は、CLR3に応じて取り込んだ、Data#0に基づくBNDFLG[n−1:0]のデータを保持する。
また、第2クロック選択回路160は、Data#2に基づくBNDFLG[n−1:0]のデータが受信信号の変化点を検出できなかったことを示すものであるため、出力値を全て"0"とし、NOBND信号の出力値を"1"とする。これを受けて、第3クロック選択回路160は、Data#0に基づくBNDFLG[n−1:0]のデータ(図において符号195を用いて示すデータ)に基づいてCLKSEL3を生成する。クロック選択切替部45は、CLR4に応じてCLKSEL3を選択して、CLKSEL[n−1:0]として出力する。
次に、クロック更新タイミング制御部42は、ペイロードデータの次のNビットを受信したものと判定して、CLR5を発生する。現在情報記憶部130は、CLR5に応じて、Data#3に基づくBNDFLG[n−1:0]のデータを取り込み、その値を記憶する。そして、ビット境界検出ユニット32は、出力値をリセットし、Data#4に基づいて、BNDFLG[n−1:0]を生成する。ここで、過去情報記憶部140は、NOBND信号の出力値が"1"であるために、現在情報記憶部130からの出力信号を取り込まない。このため、過去情報記憶部140は、CLR3に応じて取り込んだ、Data#0に基づくBNDFLG[n−1:0]のデータを保持する。
また、第2クロック選択回路160は、Data#3に基づくBNDFLG[n−1:0]のデータが受信信号の変化点を検出できたことを示すものであるため、Data#3に基づくBNDFLG[n−1:0](図において符号196を用いて示すデータ)に基づいてCLKSEL2を生成する。また同時に、第2クロック選択回路160は、NOBND信号の出力値を"0"とする。クロック選択切替部45は、CLR5に応じてCLKSEL2を選択して、CLKSEL[n−1:0]として出力する。
次に、CLR6の更新タイミングにおいても、CLR2の更新タイミングにおける処理と同様にして、現在情報記憶部130及び過去情報記憶部140に新たなBNDFLG[n−1:0]のデータが取り込まれる。そして、第2クロック選択回路160は、Data#4に基づくBNDFLG[n−1:0](図において符号197を用いて示すデータ)に基づいてCLKSEL2を生成し、CLR6に応じてCLKSEL2を選択して、CLKSEL[n−1:0]として出力する。
このように、ペイロードデータのData#1及びData#2の区間において、データ系列が連続データであった場合には、ビット境界検出ユニット32は、受信信号の変化点を検出することができない。このため、クロック位相選択部40は、CLKSEL2の出力値を全て"0"とし、CLKSEL2に代えて、CLKSEL3をCLKSEL[n−1:0]として出力する。すなわち、図に示す例では、クロック位相選択部40は、各CLR信号のタイミングごとに、CLKSEL1、CLKSEL2、CLKSEL3、CLKSEL3、CLKSEL2、CLKSEL2、の順にCLKSEL[n−1:0]を出力する。従って、例えば、8相のFCLK_P[n−1:0]から1相のFCLK_P[n−1:0]をCLKSEL[n−1:0]として選択する場合に、クロック位相選択部40は、FCLK_P4、FCLK_P5、FCLK_P5、FCLK_P5、FCLK_P3、FCLK_P4、の順にサンプリングクロックを更新する。
以上説明したように、本発明に係る通信装置によれば、サンプリングクロックを更新する各タイミングにおいて、毎回のタイミングにおいて受信信号の変化点の存在の有無を示すビット境界信号を記憶する現在情報記憶部130と、受信信号の変化点を検出できないような連続データの受信に備えて、受信信号の変化点を検出できたときのビット境界信号を記憶しておく過去情報記憶部140と、を備えることで、受信信号のシリアルデータ列中に連続データが含まれることで受信信号の変化点を検出することができない状態が続いた後に、連続データ以外のシリアルデータが出現した場合においても、過去情報記憶部140に保持しておいたビット境界信号に基づいてサンプリングクロックを選択することができる。このため、高確率で正確に受信が可能な、最適なサンプリングクロックを選択することができる。
さらに、本発明に係る通信装置によれば、受信フレームの先頭に配置される同期ワードデータからビット境界信号の検出処理を開始し、同期ワードデータに基づくビット境界信号を過去情報記憶部140に記憶させることができる。このため、ビット境界検出ユニット32は、同期ワードデータに基づいて、全ての出力値が"0"ではないBNDFLG[n−1:0]を生成することができるため、過去情報記憶部140に最初に記憶されるビット境界信号は、受信信号の変化点を検出できたときのビット境界信号を記憶しておくことができる。従って、同期ワードデータに続くペイロードデータの受信の際に受信信号の変化点が検出されなかった場合においても、過去情報記憶部140に記憶したBNDFLG[n−1:0]を用いて、最適なサンプリングクロックを選択することができる。
尚、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
1 アンテナ、
2 RF部、
21 復調器、
23 第1のPLL、
3 DBB部、
30 同期検出部、
31 同期パターン検出ユニット、
31a〜h 同期パターン検出器、
32 ビット境界検出ユニット、
32a〜h ビット境界検出回路、
40 クロック位相選択部、
50 第2のPLL回路、
70 クロック乗せ換え処理部、
71 エラスティックストアユニット、
71a〜h エラスティックストア回路、
80 FIFO部、
81 セレクタ、
82 S/P変換器、
90 信号処理回路、

41 OKFLGクロック選択部、
42 クロック更新タイミング制御部、
43 BNDFLG記憶部、
44 BNDFLGクロック選択部、
45 クロック選択切替部、
110 第1クロック選択部、
120 Nビットカウンタ、
130 現在情報記憶部、
140 過去情報記憶部、
131_1〜131_n、141_1〜141_n セレクタ、
132_1〜132_n、142_1〜142_n D型フリップフロップ、
150 AND(論理積回路)、
160 第2クロック選択部、
170 第3クロック選択部、
181_1〜181_n OR(論理和回路)、
182_1〜182_n セレクタ、

191〜197 CLKSELの生成時に参照する信号、

201 アンテナ、
202 RF部、
203 DBB部、
230 同期検出部、
240 クロック位相選択部、
250 PLL回路、
270 クロック乗せ換え処理部、
280 FIFO部、
290 信号処理回路、

301 サンプル部、
302 判定保護部、
303 位相判定部、
304 クロック選択部、
305 同期保護部、
311 入力サンプル回路、
312 演算回路、
421〜424 EOR、
313 位相調整回路、
431〜434、411〜114 D型フリップフロップ、
511〜514 JKフリップフロップ、
515 カウンタ部、

Claims (8)

  1. フレーム毎に同期ワードとペイロードとを含む受信信号を受信し、N(Nは2以上の整数)相のクロックの中から選択する一のサンプリングクロックを用いて前記受信信号をサンプリングする通信装置であって、
    受信した前記受信信号から前記N相のクロックのうちいずれのクロック間に受信信号の変化点があるかを示すビット境界信号を検出するビット境界検出部と、
    前記サンプリングクロックを更新するタイミングを制御するクロック更新タイミング制御部と、
    前記タイミングにおいて前記ビット境界信号を毎回記憶する第1のビット境界信号記憶部と、
    前記ビット境界検出部において前記受信信号の変化点が検出された場合には前記第1のビット境界信号記憶部に記憶された信号を取り込み記憶し、前記受信信号の変化点が検出されなかった場合には記憶している信号の更新を行わない第2のビット境界信号記憶部と、
    前記ビット境界検出部において前記受信信号の変化点が検出された場合には、前記第1のビット境界信号記憶部に記憶された信号に基づいて前記サンプリングクロックを選択し、前記受信信号の変化点が検出されなかった場合には、前記第2のビット境界信号記憶部に記憶された信号に基づいて前記サンプリングクロックを選択する第1のクロック選択部と、を備える
    ことを特徴とする通信装置。
  2. 前記クロック更新タイミング制御部は、前記タイミングを、前記ペイロードにおいて所定のビット数を受信する毎のタイミングとする
    ことを特徴とする請求項1に記載の通信装置。
  3. 前記受信信号のフレームは、前記同期ワードが先頭に配置される構造を有しており、
    前記ビット境界検出部は、前記フレームの受信開始時に前記同期ワードのビット境界信号を検出して前記第1のビット境界信号記憶部に記憶する
    ことを特徴とする請求項1又は2に記載の通信装置。
  4. 前記第1のクロック選択部は、
    前記ビット境界検出部において前記受信信号の変化点が検出された場合に、前記第1のビット境界信号記憶部に記憶された信号に基づいて前記サンプリングクロックを選択する第1のクロック選択回路と、
    前記受信信号の変化点が検出されなかった場合に、前記第2のビット境界信号記憶部に記憶された信号に基づいて前記サンプリングクロックを選択する第2のクロック選択回路と、を備える
    ことを特徴とする請求項1に記載の通信装置。
  5. 前記第1のクロック選択回路は、
    前記N相のクロックのうち、前記第1のビット境界信号が示す受信信号の変化点から所定の位相分離れた一のクロックを前記サンプリングクロックとして選択し、
    前記第2のクロック選択回路は、
    前記複数のクロックのうち、前記第2のビット境界信号が示す受信信号の変化点から所定の位相分離れた一のクロックを前記サンプリングクロックとして選択する
    ことを特徴とする請求項4に記載の通信装置。
  6. 前記ビット境界検出部は、
    前記N相のクロックに含まれる第1の位相のクロックを用いて受信した受信信号と、前記第1の位相に隣接する第2の位相のクロックを用いて受信した前記受信信号と、を比較することで前記ビット境界信号を検出する
    ことを特徴とする請求項1に記載の通信装置。
  7. 前記同期ワードに対して前記N相のクロックを用いて受信することにより同期を検出して、同期検出したクロックを識別するクロック識別信号を生成する同期検出部と、
    前記同期検出部において生成した前記クロック識別信号と、前記ビット境界検出部において検出した前記ビット境界信号と、に基づいて、前記サンプリングクロックを選択する第2のクロック選択部と、
    を更に備えることを特徴とする請求項1に記載の通信装置。
  8. 前記第2のクロック選択部は、
    前記N相のクロックのうち、前記クロック識別信号が示す同期検出したクロックであって、前記ビット境界信号が示す受信信号の変化点から所定の位相分離れた一のクロックを前記サンプリングクロックとして選択する
    ことを特徴とする請求項7に記載の通信装置。
JP2009163623A 2009-07-10 2009-07-10 通信装置 Pending JP2011019158A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009163623A JP2011019158A (ja) 2009-07-10 2009-07-10 通信装置
US12/801,366 US8406362B2 (en) 2009-07-10 2010-06-04 Communication device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009163623A JP2011019158A (ja) 2009-07-10 2009-07-10 通信装置

Publications (1)

Publication Number Publication Date
JP2011019158A true JP2011019158A (ja) 2011-01-27

Family

ID=43427467

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009163623A Pending JP2011019158A (ja) 2009-07-10 2009-07-10 通信装置

Country Status (2)

Country Link
US (1) US8406362B2 (ja)
JP (1) JP2011019158A (ja)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07321646A (ja) 1994-05-24 1995-12-08 Oki Electric Ind Co Ltd 位相判定回路
JP3376315B2 (ja) * 1999-05-18 2003-02-10 日本電気株式会社 ビット同期回路
US7457391B2 (en) * 2003-03-26 2008-11-25 Infineon Technologies Ag Clock and data recovery unit
JP4323229B2 (ja) * 2003-06-17 2009-09-02 Okiセミコンダクタ株式会社 受信データ再生装置およびその周波数調整方法
US7474716B2 (en) * 2004-07-08 2009-01-06 International Business Machines Corporation Data recovery circuits using oversampling for maverick edge detection/suppression
JP2009038422A (ja) * 2007-07-31 2009-02-19 Nec Electronics Corp 同期回路、及び、データ受信方法
JP5243877B2 (ja) * 2008-08-04 2013-07-24 ルネサスエレクトロニクス株式会社 通信装置

Also Published As

Publication number Publication date
US20110007857A1 (en) 2011-01-13
US8406362B2 (en) 2013-03-26

Similar Documents

Publication Publication Date Title
JP5243877B2 (ja) 通信装置
JP5188287B2 (ja) 通信装置
KR100877496B1 (ko) 클록 및 데이터 복구 회로, 및 serdes 회로
TWI258963B (en) Apparatus and method for low complexity synchronization for wireless transmission
US7936793B2 (en) Methods and apparatus for synchronizing data transferred across a multi-pin asynchronous serial interface
EP1538775A1 (en) Data recovery method and data recovery circuit
EP1894296A4 (en) STRUCTURE DEPENDENT PHASE DETECTOR FOR CLOCK RECOVERY
JP2008236738A (ja) プログラマブルロジックデバイスにおける高速シリアルインターフェースのためのプロトコル非依存の自動レートネゴシエーション
US8411811B2 (en) High jitter and frequency drift tolerant clock data recovery
JP2007274122A (ja) パラレル変換回路
EP1009125A2 (en) Bit synchronization circuit oversampling received data to determine content thereof
US7532645B1 (en) Receiver operable to receive data at a lower data rate
KR20010007473A (ko) 비트동기회로
KR101235696B1 (ko) 데이터 전송 방법 및 데이터 복원 방법
KR100998773B1 (ko) 역직렬화 타이밍 신호들을 생성하기 위한 시스템 및 방법
US20110150151A1 (en) Compensation for data deviation caused by frequency offset using timing correlation value
JP2017079405A (ja) 周波数検出方法
US8472561B2 (en) Receiver circuit
US8199869B2 (en) Communication apparatus
JP2011019158A (ja) 通信装置
JP2009038422A (ja) 同期回路、及び、データ受信方法
JP2003333020A (ja) ベースバンド信号受信回路、サンプルクロック抽出回路及びワード検出回路
JP2005176234A (ja) 同期ワード検出回路及びベースバンド信号受信回路
KR101985082B1 (ko) 위상 고정 루프 회로를 이용하지 않는 순수 디지털 클록 데이터 복원 장치
JP2012222497A (ja) 受信回路及びエラー検出方法