JP5459421B2 - データ受信装置及びデータ通信システム - Google Patents

データ受信装置及びデータ通信システム Download PDF

Info

Publication number
JP5459421B2
JP5459421B2 JP2013022226A JP2013022226A JP5459421B2 JP 5459421 B2 JP5459421 B2 JP 5459421B2 JP 2013022226 A JP2013022226 A JP 2013022226A JP 2013022226 A JP2013022226 A JP 2013022226A JP 5459421 B2 JP5459421 B2 JP 5459421B2
Authority
JP
Japan
Prior art keywords
data
bit
bits
section
samples
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.)
Active
Application number
JP2013022226A
Other languages
English (en)
Other versions
JP2014033428A (ja
Inventor
浩伸 秋田
啓史 山本
宣明 松平
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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Priority to JP2013022226A priority Critical patent/JP5459421B2/ja
Priority to PCT/JP2013/004254 priority patent/WO2014010236A1/ja
Priority to DE112013003477.8T priority patent/DE112013003477T5/de
Publication of JP2014033428A publication Critical patent/JP2014033428A/ja
Application granted granted Critical
Publication of JP5459421B2 publication Critical patent/JP5459421B2/ja
Priority to US14/537,969 priority patent/US9166772B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0079Receiver details
    • H04L7/0087Preprocessing of received signal for synchronisation, e.g. by code conversion, pulse generation or edge detection
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C27/00Electric analogue stores, e.g. for storing instantaneous values
    • G11C27/02Sample-and-hold arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • H04L7/002Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation
    • 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/0331Speed 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 with a digital phase-locked loop [PLL] processing binary samples, e.g. add/subtract logic for correction of receiver clock
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • H04L7/002Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation
    • H04L7/0025Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation interpolation of clock signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/041Speed or phase control by synchronisation signals using special codes as synchronising signal
    • H04L7/046Speed or phase control by synchronisation signals using special codes as synchronising signal using a dotting sequence

Landscapes

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

Description

本発明は、データ送信装置から受信したデータをオーバーサンプリングしてデータを判定するデータ受信装置、及び前記データ送信装置と前記データ受信装置とを備えるデータ通信システムに関する。
データ通信におけるクロック・データ・リカバリ(Clock Data Recovery、CDR)の技術において、データの送信を間欠的に(送信及び送信停止を繰返して)行う場合には、短いロックタイムが要求されている。例えばPCI Expressでは、短いロックタイムを実現するために、位相補間(インタポレータ)方式のCDRが採用されている(非特許文献1参照)。位相補間方式のCDRでは、データの受信側において、互いに位相差を有する複数のクロックを生成し、その複数のクロックのうち受信したデータの位相に最も近い位相のクロックを選択する。この場合、位相補間方式のCDRでは、クロックを選択する機能を有するが、クロックの周波数を調整する機能を有しないので、データの送信側の発振源と受信側の発振源との間でクロックの周波数誤差(オフセット)が小さいことが要求される。例えば上記した非特許文献1では、データの送信側と受信側とが同一の発振源を用いることで、クロックの周波数誤差が発生しないようにしている。
又、Serial ATAでも、データの受信側の発振源にクロックの周波数誤差として±350[ppm]程度を要求しており、データの送信側の発振源にも同等の精度の周波数誤差を要求することで、データの送信側の発振源と受信側の発振源との間でクロックの周波数誤差を小さくし、短いロックタイムを実現している(非特許文献2参照)。
更に、USBでも、ビット長が短い同期パターンでロックすることが規定されているが、データの送信側の発振源と受信側の発振源との間でクロックの周波数誤差が小さいことを前提としている。具体的には、通信速度12[Mbps]における0.21[ns/ビット]は、0.21[nsec]/(1/12[Mbps])=0.0025となり、0.25%の周波数誤差となる(非特許文献3参照)。
一方、例えばビデオ信号の伝送等のデータの送信を常に行うデータ通信においては、ロックタイムが長くともロックが一旦成立すると、データを連続して送信するので、位相同期方式のCDRが採用されている(非特許文献4参照)。位相比較として例えば500サイクル程度を必要とする場合であれば、位相比較にはビットの変化点が必要であるので、ビットの変化点の存在確率が50%程度であると、ロックするのに必要なビット数として1000ビット程度が必要となる。特に電源オン時には、位相誤差に加え、周波数誤差も存在するので、ロックするのに必要なビット数として更に多くのビット数が必要となり、例えば10000ビット程度が必要となる。この点に対し、位相同期方式のCDRにおけるロックタイムを極力短くするように、データのビット列をオーバーサンプリングしてデジタル回路により信号処理する技術が開示されている(非特許文献5、特許文献1参照)。
特開2005−192192号公報 PCI Express Architecture PCI Express Jitter and BER Revision 1.0 February 11, 2005 平成24年1月24日検索、インターネット<URL:http://www.pcisig.com/specifications/pciexpress/technical_library/PCIe_Rj_Dj_BER_R1_0.pdf> Serial ATA:High Speed Serialized AT Attachment Revision 1.0a 7-January-2003 平成24年1月24日検索、インターネット<URL:http://www.sata−io.org/documents/serialata10a.zip> USB2.0 standard 平成24年1月24日検索、インターネット<URL:http://www.usb.org/developers/docs/usb_20_101111.zip> Designing Bang-Bang PLLs for Clock and Data Recovery in Serial Data Transmission Systems Richard C. Walker 平成24年1月24日検索、インターネット<URL:http://www.omnisterra.com/walker/pdfs.papers/BBPLL.pdf> Multi-Gigaビット-Rate Clock and Data Recovery Basd on the Blind Oversampling, J. Kim,IEEE Communications Magazine 2003/12月,p.68〜74
このように位相補間方式のCDRでは、非特許文献1から3に示されているように、短いロックタイムを実現するにはデータの送信側と受信側との間でクロックの周波数誤差が小さい発振源を使用することが前提となる。しかしながら、LSI(Large Scale Integration)に内蔵される発振源としてのCR発振回路は10%程度の周波数誤差を有するのが一般的であるので、LSIとは別体に周波数誤差が小さい発振源(クリスタル振動子)が必要となる。
又、位相同期方式のCDRでは、非特許文献4に示されているように、ロックタイムが長いので、データ通信に不向きである。又、データの各ビットをオーバーサンプリングしてデジタル処理することで、ロックタイムをある程度短くすることが可能であるが、その効果は限定的である。即ち、非特許文献5や特許文献1では、アナログ回路で実現していたPLL(Phase-Locked Loop)のフィードバックループをデジタル回路で実現しているに過ぎず、ロックタイムを大幅に低減することは難しい。具体的には、非特許文献5では、フィードバックのループフィルタの数が512以上であり、ロックタイムとしては少なくとも512の何倍ものビット数が必要となる。又、特許文献1では、位相を判定する際にクロックの周波数をある程度推定可能であることを前提としており、1000[ppm]程度の周波数誤差を想定している。
本発明は、上記した事情に鑑みてなされたものであり、その目的は、データ送信装置の送信側発振源とある程度のクロックの周波数誤差を有する受信側発振源を用いる構成でありながらも、データ送信装置から受信したデータを好適に判定することができるデータ受信装置、及びデータ通信システムを提供することにある。
請求項1に記載したデータ受信装置によれば、受信側発振源は、データを送信するデータ送信装置の送信側発振源とは独立して設けられ、受信クロックを生成して出力する。オーバーサンプリングデータ生成手段は、データ送信装置から受信したビット列の各ビットを、受信側発振源から入力した受信クロックに同期してオーバーサンプリングしてオーバーサンプリングデータを生成する。ここで、積算ビット数算出手段は、データ送信装置から受信したビット列のうち所定ビット数を積算して積算ビット数を算出する。積算サンプル数算出手段は、オーバーサンプリングデータ生成手段が生成したオーバーサンプリングデータのうち積算ビット数算出手段が積算した所定ビット数の各ビットに対応するサンプル数を積算して積算サンプル数を算出する。データ判定手段は、積算ビット数と積算サンプル数との対応を示す複数のポイントに基づいて近似線を求め、オーバーサンプリングデータ生成手段が生成したオーバーサンプリングデータのうち積算サンプル数算出手段が積算したサンプル数以降の同一の値が連続する区間に対応するビット列のビット長を近似線に基づいて判定する。
これにより、受信側発振源が送信側発振源とある程度のクロックの周波数誤差を有していたとしても、積算ビット数と積算サンプル数との対応を示す複数のポイントに基づいて近似線を求めることで、オーバーサンプリングの周期(サンプル数の逆数)よりも高い精度でビット列の1ビット当たりが何サンプルであるかを正確に求めることができる。そして、ビット列の1ビット当たりのサンプル数を求め、オーバーサンプリングデータの同一の値が連続する区間のデータ数を当該求めたサンプル数で除すことで、その区間に対応するビット列のビット長を正確に判定することができ、データを好適に判定することができる。即ち、過去に受信したビット列から積算ビット数と積算サンプル数との対応を示す近似線を求め、値を判定するビット列のビット数とサンプル数との対応が当該近似線に追従するという技術的特徴に着目したことで、周波数誤差の影響を受けることなく、データを好適に判定することができる。
本発明の第1の実施形態を示す機能ブロック図 オーバーサンプリングデータを示す図 劣化要因に対するサンプル数を表により示す図 ビット番号とサンプル数との対応をグラフにより示す図 図2相当図 積算ビット数と積算サンプル数との対応をグラフにより示す図 近似線を示す図 図7相当図 (a)は積算ビット数と積算サンプル数との対応を表により示す図、(b)は近似線を示す図 ジッタトレランスをシミュレーションした結果を示す図 本発明の第2の実施形態を示す図7相当図 図10相当図 図10相当図 図10相当図 本発明の第3の実施形態を示す図 本発明の第4の実施形態を示す図10相当図 本発明の第5の実施形態を示す図1相当図 本発明の第6の実施形態を示す図1相当図 本発明の第7の実施形態を示す図1相当図 本発明の第8の実施形態を示す図7相当図 サンプル数を求める手順を示す図 本発明の第9の実施形態を示し、ビット列のパターンを示す図 本発明の第10の実施形態を示す図22相当図 1ビット当たりのサンプル数の計算結果を表により示す図 本発明の第11の実施形態を示す図22相当図
(第1の実施形態)
以下、本発明の第1の実施形態について、図1から図10を参照して説明する。本実施形態で説明するデータ通信は、例えば車両に搭載されている同一のECU(Electronic Control Unit)内でのLSI(Large Scale Integration)間通信や異なるECU間でのLSI間通信等に適用される。LSI間で構築されるデータ通信システム1は、データの送信を行うデータ送信装置2と、データの受信を行うデータ受信装置3とを有して構成されている。
データ送信装置2は、送信側発振源4と、シリアライザ5とを有する。送信側発振源4は、例えばCR発振回路により構成され、送信クロックを生成してシリアライザ5に出力する。シリアライザ5は、データ受信装置3に伝送するパラレルデータを入力すると、その入力したパラレルデータを送信側発振源4から入力した送信クロックに同期してシリアル変換してシリアルデータを生成し、その生成したシリアルデータを通信線路を介してデータ受信装置3に送信する。
データ受信装置3は、受信側発振源6と、デシリアライザ7(オーバーサンプリングデータ生成手段に相当)と、データ判定回路8とを有する。受信側発振源6は、上記した送信側発振源4と同様に例えばCR発振回路により構成され、受信クロックを生成してデシリアライザ7及びデータ判定回路8に出力する。デシリアライザ7は、データ送信装置2から通信線路を介してシリアルデータを受信すると、その受信したシリアルデータを受信側発振源6から入力した受信クロックに同期してオーバーサンプリングしてオーバーサンプリングデータを生成し、その生成したオーバーサンプリングデータをデータ判定回路8に出力する。この場合、デシリアライザ7が1ビットをオーバーサンプリングする倍数(1ビット区間のサンプル数)は、一般的なデータ通信であれば例えば5〜10程度が望ましい。尚、図1では、受信側発振源6から出力された受信クロックがデシリアライザ7及びデータ判定回路8に直接入力されているが、受信側発振源6からPLL(Phase-Locked Loop)回路等を介して入力されても良い。又、デシリアライザ7でのクロック遅延を補償するために、一旦デシリアライザ7に入力された受信クロックがデシリアライザ7を経由した後にデータ判定回路8に入力されても良い。
データ判定回路8は、データ判定部9(データ判定手段に相当)と、積算ビット数算出部10(積算ビット数算出手段に相当)と、積算サンプル数算出部11(積算サンプル数算出手段に相当)とを有する。データ判定部9は、デシリアライザ7からオーバーサンプリングデータを入力すると、その入力したオーバーサンプリングデータを受信側発振源6から入力した受信クロックに同期してパラレル変換してパラレルデータを生成して出力する(データ送信装置2のシリアライザ5が入力したパラレルデータ、又は同一データであるがシフトしたデータを復元する)。積算ビット数算出部10は、ビット列のビット数を積算した値を積算ビット数として算出する。積算サンプル数算出部11は、デシリアライザ7が各ビットをオーバーサンプリングしたサンプル数を積算した値を積算サンプル数として算出する。
本実施形態では、送信側発振源4及び受信側発振源6は、それぞれLSIに内蔵される発振源である場合を説明しているが、LSIとは別体の(LSIの外部に設けられた)発振源であっても良い。LSIとは別体の発振源とする場合には、CR発振回路よりも精度が高い例えばクリスタル振動子等から構成される発振源であっても良い。又、送信側発振源4から出力される送信クロックの周波数及び受信側発振源6から出力される受信クロックの周波数は、互いに同一である必要はなく、一方が他方の整数倍である必要もない。受信クロックの周波数は、デシリアライザ7が1ビットをオーバーサンプリング可能な周波数であれば良い。
次に、上記した構成の作用について、図2から図10を参照して説明する。
送信側発振源4から出力される送信クロックの周波数及び受信側発振源6から出力される受信クロックの周波数について説明すると、両者の間で周波数誤差(オフセット)が発生していない場合には、受信側のビット列の1ビット区間と送信側のビット列の1ビット区間とはずれることなく一致する。即ち、図2(a)に示すように、1ビットを8サンプル(8倍)でオーバーサンプリングする場合には、送信側の1ビット区間は受信側の8サンプルのオーバーサンプリングデータと一致する。
一方、両者の間で周波数誤差が発生している場合には、受信側のビット列の1ビット区間と送信側のビット列の1ビット区間とがずれて一致しなくなる場合がある。即ち、図2(b)に示すように、図2(a)と同じく1ビットを8サンプルでオーバーサンプリングする場合には、送信側の1ビット区間は受信側の8サンプルのオーバーサンプリングデータと一致することなく、例えば7サンプルのオーバーサンプリングデータにずれてしまう場合がある。
このように送信側の1ビット区間と受信側の1ビット区間との間でずれが発生する劣化要因としては、上記した周波数誤差以外にも、周期ジッタやランダムジッタがある。図3は、これらの劣化要因毎のサンプル数の変化の一例を示している。何れの劣化要因も発生していない場合には、「A」のように、正規のサンプル数(図3では例えば8サンプル)で一定となる。一方、周波数誤差が劣化要因として発生している場合には、「B」のように、正規のサンプル数から所定のサンプル数だけずれたサンプル数(図3では例えば6サンプル)で一定となる。又、例えば正弦波のような周期ジッタが劣化要因として発生している場合には、「C」のように、正規のサンプル数から例えば正弦波的にずれたサンプル数となる。又、ランダムジッタが劣化要因として発生している場合には、「D」のように、正規のサンプル数からランダムにずれたサンプル数となる。更に、上記した周波数誤差、周期ジッタ及びランダムジッタの全てが劣化要因として発生し(実際の状況と近い)、それらが平均的に影響している場合には、「E」のように、それぞれの平均値のサンプル数となるが、実際にはオーバーサンプリングにより離散化されるので、「F」のように、離散化されたサンプル数となる。図4は、図3に示した劣化要因が発生していない場合及び発生している場合について、それぞれのサンプル数の推移を示している。尚、図4に示す数値は図3に示した数値とは異なっている。
さて、データ判定回路8においては、データ送信装置2から送信されるビット列が常に1ビットずつ「0」、「1」、「0」、「1」…を規則的に配置したパターンであれば、上記した劣化要因が発生したとしても、各ビットの値(極性)を判定可能である。しかしながら、実際にはデータ送信装置2から送信されるビット列は「0」、「1」を不規則に配置したパターンであるので、上記した劣化要因が発生すると、以下の理由により各ビットの値を判定不可能となる。
即ち、図3に示したように、周期ジッタやランダムジッタが発生した場合には、サンプル数が例えば6から10までの間で変動しているので、オーバーサンプリングデータが同じ値である程度連続すると、その区間のデータのビット長(幾つのビットに対応するか)を判定不可能となる。具体的に説明すると、図5に示すように、オーバーサンプリングデータが例えば19サンプルに亘って同じ値で連続すると、図5(a)に示すように、6サンプルが3ビット連続した18サンプルがランダムジッタの影響を受けて19サンプルになった可能性と、図5(b)に示すように、10サンプルが2ビット連続した20サンプルがランダムジッタの影響を受けて19サンプルになった可能性とを想定し得る。そのため、データ判定回路8においては、デシリアライザ7から入力したオーバーサンプリングデータをそのままの状態で(従来の手順にしたがって)データのビット長を判定しようとすると、19サンプルのオーバーサンプリングデータが2ビットのデータであるか3ビットのデータであるかを正確に判定することが困難となる。
上記した問題に対し、本実施形態では、データ判定回路8が以下に示す処理を行う。即ち、データ判定回路8は、ビット列のビット数を積算ビット数算出部10により積算して積算ビット数を求め、各ビットをオーバーサンプリングしたサンプル数を積算サンプル数算出部11により積算して積算サンプル数を求め、積算ビット数と積算サンプル数との対応を示す近似線(フィッティング直線)を求める。図6(a)に示すように、各ビットを例えば8サンプルでオーバーサンプリングする場合に、何れの劣化要因も発生していなければ、各ビットを正規の8サンプルで処理することになるので、実線にて示すように、積算サンプル数は積算ビット数を常に8倍した値を示す直線となり、積算ビット数と積算サンプル数とは正比例する。一方、周波数誤差が劣化要因として発生していれば、各ビットを例えば6サンプルで処理する場合には、破線にて示すように、積算サンプル数は積算ビット数を常に6倍した値を示す直線となり、各ビットを例えば12サンプル数で処理する場合には、一点鎖線にて示すように、積算サンプル数は積算ビット数を常に12倍した値となり、何れも積算ビット数を常に8倍した値を示す直線からずれる。
又、図6(b)に示すように、各ビットを例えば8サンプルでオーバーサンプリングする場合に、例えば正弦波のような周期ジッタが劣化要因として発生していれば、破線にて示すように、積算サンプル数は積算ビット数を常に8倍した値を示す直線から例えば正弦波的にずれた線となる。又、図6(c)に示すように、各ビットを例えば8サンプルでオーバーサンプリングする場合に、ランダムジッタが劣化要因として発生していれば、破線にて示すように、積算サンプル数は積算ビット数を常に8倍した値を示す直線からランダムにずれた線となる。更に、周波数誤差、周期ジッタ及びランダムジッタの全てが劣化要因として発生し(実際の状況と近い)、それらが平均的に影響している場合でも、同様の方法により、積算ビット数と積算サンプル数との対応を示す近似線を求めることができる。
次に、近似線を求める方法について説明する。近似線としては、積算ビット数と積算サンプル数との対応を示す複数のポイントをパラメータとする最小二乗法による直線近似が一般的である。尚、詳しくは後述する第2の実施形態で説明するが、近似線を他の方法により求めても良い。この場合、近似線の傾きは、1ビット当たりが何サンプルであるか(幾つのサンプル数に相当するか)を意味している。ビットに対してオーバーサンプリングした位置精度の情報は、例えば1ビットを8倍でオーバーサンプリングした場合では、サンプル数である8分の1の精度しか有しないが、近似線を求める方法によれば、複数ビットを対象として近似線を求める(フィッティングする)ことで、サンプル数である8分の1以上の精度で1ビット当たりが何サンプル数になるかを判定し得る利点がある。
次に、近似線を求める対象の区間について説明する。近似線を求める対象の区間としてはプリアンブルの区間を用いることが考えられる。図7は、プリアンブルの区間を用いて近似線を求める態様を示している。データ通信の開始時にはプリアンブルとして10ビット程度の「0」、「1」、「0」、「1」…という規則的なパターンが送信されるのが通常であり、各ビットの値が既知であるプリアンブルの区間を用いて近似線を求めることで、プリアンブルの以降に送信される各ビットの値が未知であるデータについて、各ビットの値を判定することができる。
即ち、図7では、プリアンブルが例えば4ビットの場合を示しており、プリアンブルの1ビット目、2ビット目、3ビット目、4ビット目についてそれぞれ積算サンプル数を算出し、積算ビット数を横軸とすると共に積算サンプル数を縦軸として積算ビット数と積算サンプル数との対応を示す4つのポイントをプロットし、近似線を最小二乗法により求める。そして、4ビット目以降のビット列(プリアンブルに続くデータ)のうち同一の値が連続する区間のサンプル数を求め、そのサンプル数を含む積算サンプル数に対して近似線上で対応する積算ビット数を求めることで、その区間におけるデータのビット長を判定可能となる。即ち、積算サンプル数が「S1」であれば、その積算サンプル数である「S1」に対して近似線上で対応する積算ビット数である「B1」を求めることで、その区間におけるデータのビット長を判定可能となる。
尚、このようにしてデータ通信の開始時にプリアンブルの区間を用いて求めた(最初に求めた)近似線を、プリアンブルに続くデータに用いてデータのビット長を判定しても良いが、例えば正弦波のような周期ジッタでは、サンプル数が変動していくので、そのサンプル数の変動に対応するために近似線を常に更新し続けることが好適であり、プリアンブルの区間以外においても、ビットの値が既知となったデータの区間を用いて近似線を求めるようにしても良い。
即ち、図8では、例えば「0」、「1」、「1」、「1」、「0」、「0」、「1」…というように1ビット、3ビット、2ビット、1ビットが同一の値で連続する場合を示しており、データの1ビット目、4ビット目、6ビット目、7ビット目についてそれぞれ積算サンプル数を算出し、積算ビット数を横軸とすると共に積算サンプル数を縦軸として積算ビット数と積算サンプル数との対応を示す4つのポイントをプロットし、近似線を最小二乗法により求める。そして、7ビット目以降のビット列のうち同一の値が連続する区間のサンプル数を求め、そのサンプル数に対応する積算サンプル数を近似線により求めることで、その区間におけるデータのビット長を判定可能となる。即ち、積算サンプル数が「S2」であれば、その積算サンプル数である「S2」に対して近似線上で対応する積算ビット数である「B2」を求めることで、その区間におけるデータのビット長を判定可能となる。尚、「B2」は必ずしも整数とならず、小数となる場合もあり得るが、これに最も近い整数を特定することで、データのビット長を判定可能となる。
具体例について図9を参照して説明する。デシリアライザ7が1ビットを10サンプル(10倍)でオーバーサンプリングした場合に、データ判定回路8は、図9(a)に示すように、積算ビット数を積算ビット数算出部10により算出し、積算サンプル数を積算サンプル数算出部11により算出し、10個のポイントを取得する。尚、ビット列の1ビット目から5ビット目がプリアンブルの区間であり、ビット列の6ビット目以降がデータの区間である。次いで、データ判定回路8は、積算ビット数と積算サンプル数との対応を示す10個のポイントをプロットし、近似線を最小二乗法により求める。
即ち、積算ビット数を「xn」とし、積算サンプル数を「yn」とし(nは自然数)、10個のポイントを(x1,y1)、(x2,y2)、…、(xn,yn)として最小二乗法により近似線を以下の計算式により求める。
Figure 0005459421
本実施形態では、n=10であり、
y=7.857x−0.2705 … (4)
を求める。
ここで、ビット列の15ビット目の次に、同一の値が15サンプルで連続した場合を想定する。同一の値が連続したサンプル数である「15」を含めた積算サンプル数は、ビット列の15ビット目までの積算サンプル数である「117」に「15」を加算した「132」となり、上記した数式(4)にy=132を代入すると、x=16.835を求めることができる。よって、積算サンプル数が「132」に対応する積算ビット数として「16.835」に最も近い自然数である「17」を求めることができ、ビット列の15ビット目の次に同一の値が連続する区間に対応するビット長として、このように近似線に基づいて求めた「17」から直前の積算ビット数である「15」を差引いた「2」を求めることができる。即ち、同一の値が連続した15サンプルは2ビット長のデータに対応すると判定することができる。
図10は、本実施形態の効果をシミュレーションにより求めた結果を示している。データ通信速度が16[Mbps]において、それぞれ±3%、±9%、±12%、±20%の周波数誤差が発生した場合の結果を示しており、直前の9ポイントに対して最小二乗法により直線フィッティングしている。又、比較対象として、位相補間方式のCDRにおいて、それぞれ0、1、2%の周波数誤差が発生した場合の理論特性を併せて示している(位相同期方式のCDRでは周波数誤差が3%ではロック不可能である)。シミュレーションにより求めた結果から明らかなように、本実施形態の方式では±20%程度の周波数誤差があるにも関わらずジッタ周波数が1.0×105[Hz]程度より低い周波数にて公知の位相補間方式のCDRよりもジッタトレランス(ジッタ耐性)が高い値で得られていることが判る。
以上に説明したように第1の実施形態によれば、データ受信装置3において、ビット列のビット数を積算して積算ビット数を求め、各ビットをオーバーサンプリングしたサンプル数を積算して積算サンプル数を求め、積算ビット数と積算サンプル数との対応を示す近似線を求め、積算したサンプル数以降の同一の値が連続する区間に対応するビット列のビット長を近似線に基づいて判定するようにした。これにより、受信側発振源4が送信側発振源6とある程度のクロックの周波数誤差を有していたとしても、オーバーサンプリングの周期(サンプル数の逆数)よりも高い精度でビット列の1ビット当たりが何サンプルであるかを正確に求めることができる。そして、ビット列の1ビット当たりのサンプル数を求め、オーバーサンプリングデータの同一の値が連続する区間のデータ数を当該求めたサンプル数で除すことで、その区間に対応するビット列のビット長を正確に判定することができ、データを好適に判定することができる。即ち、従来の方法とは異なり、過去に受信したビット列から積算ビット数と積算サンプル数との対応を示す近似線を求め、値を判定するデータのビット数とサンプル数との対応が当該近似線に追従するという特徴に着目したことで、周波数誤差や周期ジッタやランダムジッタ等の劣化要因の影響を受けることなく、データを好適に判定することができる。
又、近似線を最小二乗法により求めるようにしたので、近似線を公知の汎用的な方法にしたがって簡単に求めることができる。更に、近似線をプリアンブルの区間を用いて求めるようにしたので、近似線を求めるための特別なビット列を別途用意する必要がなく、プリアンブルを有効に活用することができる。
(第2の実施形態)
以下、本発明の第2の実施形態について、図11から図14を参照して説明する。
上記した第1の実施形態では、近似線を複数のポイントをパラメータとする最小二乗法による直線近似により求めたが、第2の実施形態では、近似線を複数のポイントのうち両端のポイントを用いた直線近似により求める。即ち、図11に示すように、複数のポイントのうち最小ビットである1ビット目のポイントと最大ビットである4ビット目のポイントとを結ぶ直線を近似線として求める。この場合も、積算サンプル数が「S3」であれば、その積算サンプル数である「S3」に対して近似線上で対応する積算ビット数である「B3」を求めることで、その区間におけるデータのビット長を判定可能となる。
近似線を求める方法としては、積算ビット数を「xn」とし、積算サンプル数を「yn」とし(nは自然数)、1ビット目のポイントを(x1,y1)、nビット目のポイントを(xn,yn)として近似線を以下の計算式により求める。
Figure 0005459421
このように近似線を直線補完により求める方法では、第1の実施形態で説明した最小二乗法により求める方法よりも計算を簡略化することできる。
図12から図14は、第1の実施形態と同様に、本実施形態の効果をシミュレーションにより求めた結果を示している。この場合も、データ通信速度が16[Mbps]において、それぞれ0%、±3%、±9%、±12%、±20%の周波数誤差が発生した場合の結果を示しており、直前の9ポイントに対して最小二乗法により直線フィッティングしている。6サンプル、8サンプル、10サンプルをパラメータとしており、サンプル数が増加するにしたがって特性が改善することが判る。周波数誤差によりサンプル数をどの程度に決定すれば良いかを適宜選択することができるが、一般的なデータ通信を考えると、サンプル数を6〜10に決定すれば良いと考えられる。
(第3の実施形態)
以下、本発明の第3の実施形態について、図15を参照して説明する。
第3の実施形態では、近似線を求める際に用いるポイント数を可変とする。データ通信が停止した状態から再開する場合に、データ受信装置3の動作(受信クロック)が安定状態に達するまでの間に、プリアンブルのビット列のうち最初の数ビット(例えば1ビット程度)が欠落する可能性がある。そのため、近似線をプリアンブルのビット列のうち先頭から設定ビット数(例えば最初の1ビット)を除いたビット数に対応するポイントを用いて求めても良い。このように構成すれば、プリアンブルのビット列のうち最初の数ビットが欠落したとしても、その影響を排除することができ、データ通信を安定させることができる。
又、プリアンブルが例えば10ビットであると、データ通信の開始時に近似線を求めるために用い得るポイント数は最大で10ポイントであるが、データ通信が進行するにしたがって近似線を求めるのに用いるポイント数を増やしても良い。即ち、図15に示すように、データ通信の開始時では、近似線をプリアンブルのビット列に相当する10ポイントを用いて求め、データ通信が進行するにしたがって、データを伝送する通信線路のノイズ耐性を考慮して、近似線をデータのビット列に相当する10以上のポイントを用いて求めても良い。又、近似線を求めるのに用いるポイント数を無限に増やすと、回路規模の増大を招くことになるので、例えば100ポイント未満(ビット列のビット番号が閾値未満)程度で飽和し、以降は一定とするようにしても良い。このように構成すれば、回路規模の増大を未然に回避することができる。更に、値を判定したいデータに近いポイントを用いて近似線を求め、その求めた近似線を用いてビット長を判定することで、極力近い劣化要因を反映した上でビット長を判定することができる。
(第4の実施形態)
以下、本発明の第4の実施形態について、図16を参照して説明する。
第1から第3の実施形態では、近似線を求める場合に掛け算に加えて割り算をも行うが、第4の実施形態では、掛け算回路だけを用いて同等の処理を行う。
第1の実施形態及び第2の実施形態の何れの方法でも近似線をy=ax+bとすると、n+1番目のビットの次に得られたサンプル数がS_n+1であれば、
(yn+S_n+1)=a(xn+B_n+1)+b … (8)
に最も近くなるようなB_n+1としてのビット数を求めるが近似線の目的である。
第1の実施形態及び第2の実施形態の何れの方法でも
a=e/d、b=f/d(d、e、fは整数)
となるので、これらを数式(8)に代入して変形すると、
d(yn+S_n+1)=e(xn+B_n+1)+f
となる。例えばB_n+1としてエンコードから1、2、3ビットの何れかの可能性しかなければ、d(yn+S_n+1)に対してe(xn+1)+f、e(xn+2)+f、e(xn+3)+fをそれぞれ計算して最も近い値を求めることで、割り算回路を省略することができる。このように構成すれば、割り算回路を省略することができる分、回路規模の増大を未然に回避することができる。
尚、エンコードする際に最大連続ビット長を3ビットとすることが望ましい理由は以下の通りである。即ち、シリアルデータ通信で一般的に用いられているエンコードの方式は8b10bエンコードであり、8b10bエンコードでは最大連続ビット長は5ビットであるが、本願発明では、計算を簡単にするために最大連続ビット長は5ビットよりも短い方が望ましい。8b10bエンコードはLSIの内部処理の都合上の理由により1Byte(8ビット)単位で行われる。同様の理由から1Byteよりも小さい単位でのエンコードでは、1Nibble(4ビット)単位で処理可能であるので、4b5bエンコードが好適である。4ビットで表現可能な数値は16種類(0〜15)であるので、4b5bエンコードした後の5ビットで16種類の制御コードを表現する必要がある。ところが、5ビットで最大連続ビット長を2ビットとする組み合わせは、「01010」、「10101」、「01011」、「10100」、「01001」、「10110」、「01101」、「10010」、「00101」、「11010」、「01100」、「10011」、「00100」、「11011」の14種類しか存在せず、4ビットで表現可能な数値である16種類に達しない。よって、4b5bエンコードの方式を採用して最大連続ビット長を3ビットとすることが望ましい。
ところで、上記した場合では、B_n+1としてエンコードから1、2、3ビットの何れかの可能性しかない場合を説明したが、実際のデータ通信においては、そのエンコードにおいて、最大連続ビット長が決まっている。例えばPCI expressや他のデータ通信において用いられている8b/10bエンコードにおいては最大連続ビット長が5ビットである。この場合、上記したように割り算回路を省略して1、2、3、4、5ビットの何れが最も近い値であるかを求めれば良く、仮に6ビットが最も近い値であったと求まったとしても、誤差のために5ビットが6ビットと誤って認識された可能性が高く、5ビット以上の場合は一律5ビットであると認識するようにしても良い。図16は、データ通信速度が16[Mbps]において、連続3ビットとなるエンコードに対して本実施形態を適用した結果を示す。周波数誤差が±20%の何れの場合でも本実施形態を適用することで、ジッタトレランスが改善されている(本実施形態を適用しない場合よりも高い値、又は同等の値が得られている)ことが判る。このように構成すれば、エンコードにおける最大連続ビット長以上のビット数を計算するための回路を削減することができると共に、ジッタトレランスをより向上させることが可能となる。
(第5の実施形態)
以下、本発明の第5の実施形態について、図17を参照して説明する。
第1から第4の実施形態では、データ送信装置とデータ受信装置とが1対1で接続されているが、第5の実施形態では、データ送信装置とデータ受信装置とが1対複数で接続されている。
データ通信システム21は、データの送信を行う一のデータ送信装置2と、データの受信を行う複数のデータ受信装置22a〜22nとを有して構成されている。複数のデータ受信装置22a〜22nは、同一のLSIに実装されていても良いし、異なるLSIに実装されていても良い。データ受信装置22a〜22nは、それぞれ第1の実施形態で説明したデータ受信装置3と同等であり、受信側発振源23a〜23nと、デシリアライザ24a〜24nと、データ判定回路25a〜25nとを有する。データ判定回路25a〜25nは、それぞれ第1の実施形態で説明したデータを判定する機能、積算ビット数を算出する機能、積算サンプル数を算出する機能を有している。
データ送信装置2は、例えば複数のデータ受信装置22a〜22nのうち何れか又は全てを送信先とするシリアルデータを同時に又は予め規定された順序にしたがって複数のデータ受信装置22a〜22nに送信する。複数のデータ受信装置22a〜22nは、それぞれデータ送信装置2からシリアルデータを受信すると、その受信したシリアルデータを第1から第4の実施形態で説明したように処理する。
この場合、複数のデータ受信装置22a〜22nにおいては、それぞれ受信側発振源23a〜23nを独立して有しているので、送信側発振源6とのクロックの周波数誤差が独自に(個別に)発生することになるが、それぞれが独立して近似線を求めることでデータを好適に判定することができる。このようにデータ受信装置22a〜22nが複数であったとしても、それぞれが独立して近似線を求めることで、それぞれの周波数誤差による影響を解消することができる。又、例えばデータ受信装置を増設しようとする場合でも、他のデータ受信装置における受信側発振源の受信クロックの周波数誤差を考慮することなく、その増設する受信側発振源の受信クロックの周波数を選定することができ、データ通信システム21を拡張する際の制約を低減することができる。
(第6の実施形態)
以下、本発明の第6の実施形態について、図18を参照して説明する。
第1から第5の実施形態では、データ送信装置2からデータ受信装置3にデータが片方向に伝送されるデータ通信であるが、第6の実施形態では、データの送信と受信との双方の機能を有するデータ送受信装置間でデータが双方向に伝送されるデータ通信である。
データ通信システム31は、それぞれがデータの送信及び受信を行うデータ送受信装置32、33を有して構成されている。データ送受信装置32は、データ送信機能としての送信側発振源34と、シリアライザ35とを有すると共に、データ受信機能としての受信側発振源36と、デシリアライザ37と、データ判定回路38とを有する。データ送受信装置33は、データ送信機能としての送信側発振源39と、シリアライザ40とを有すると共に、データ受信機能としての受信側発振源41と、デシリアライザ42と、データ判定回路43とを有する。データ判定回路38、43は、それぞれ第1の実施形態で説明したデータを判定する機能、積算ビット数を算出する機能、積算サンプル数を算出する機能を有している。尚、データ送受信装置32では送信側発振源34と受信側発振源36とを共通に設けても良いし、データ送受信装置33では送信側発振源39と受信側発振源41とを共通に設けても良い。
上記した構成では、データ送受信装置32からデータ送受信装置33へのデータ伝送とデータ送受信装置33からデータ送受信装置32へのデータ伝送とを同時に行い、データ伝送を全二重通信により行う。この場合も、データ送受信装置32、33は、シリアルデータを受信すると、その受信したシリアルデータを第1から第4の実施形態で説明したように処理する。
(第7の実施形態)
以下、本発明の第7の実施形態について、図19を参照して説明する。
第6の実施形態では、データ送受信装置32、33がデータ伝送を全二重通信により行うが、第7の実施形態では、データ送受信装置がデータ伝送を半二重通信により行う。
データ通信システム51は、それぞれがデータの送信及び受信を行うデータ送受信装置52、53を有して構成されている。データ送受信装置52は、データ送信機能としての送信側発振源34と、シリアライザ35とを有すると共に、データ受信機能としての受信側発振源36と、デシリアライザ37と、データ判定回路38とを有する。又、データの送受信タイミングを切換えるデータ切換回路54を有する。データ送受信装置53は、データ送信機能としての送信側発振源39と、シリアライザ40とを有すると共に、データ受信機能としての受信側発振源41と、デシリアライザ42と、データ判定回路43とを有する。又、データの送受信タイミングを切換えるデータ切換回路55を有する。
上記した構成では、データ送受信装置52、53はデータ切換回路54がデータ送受信装置52におけるデータの送受信タイミングを切換え、データ切換回路55がデータ送受信装置53におけるデータの送受信タイミングを切換えることで、データ送受信装置52からデータ送受信装置53へのデータ伝送とデータ送受信装置53からデータ送受信装置52へのデータ伝送とを時分割で行い、データ伝送を半二重通信により行う。
(第8の実施形態)
以下、本発明の第8の実施形態について、図20及び図21を参照して説明する。
第2の実施形態で説明した近似線を複数のポイントのうち両端のポイントを用いた直線近似により求める方法では、計算式に示したように掛け算に加えて割り算をも行うが、第8の実施形態では、シフト回路を用いて同等の処理を行う。
具体的に説明すると、データ判定回路8は、積算ビット数と積算サンプル数とが図20に示す関係にある場合に、直線補完する区間として必ず2n(nは整数)ビット分の区間を選択する。例えば図20に示すように直線補完する区間として4ビット分の区間を選択する。この場合、直線補完する区間として選択した4ビット分の区間に対応する積算サンプル数を「Sn」とすると、1ビット分に相当するサンプル数は「Sn/4」となる。ここで、積算サンプル数を直線補完する区間のビット数で割る計算は、直線補完する区間が4ビットであれば、実際のLSIの中では固定小数点が移動するだけである。即ち、例えば積算サンプル数が「30」であるとすると、
30/4=7.5
を求めることになるが、図21(a)に示すように、小数点を移動するだけで割り算と同等の結果を得ることができる。尚、実際のLSIの中では小数点に相当するものはビットのどの部分に小数点が存在するかを決定しているだけであり、小数点を移動する前後でビット数は不変であるので、具体的なシフト回路が存在する訳でなく、新規な回路構成が必要となることはない。
又、このように1ビット当たりのサンプル数を求めることができれば、1.5ビット当たりのサンプル数や、2.5ビット当たりのサンプル数をも求めることが可能となる。即ち、図21(b)に示すように、1ビット当たりのサンプル数を右1ビットシフトすることで、0.5ビット当たりのサンプル数を求めることができ、1ビット当たりのサンプル数と0.5ビット当たりのサンプル数とを加算することで、1.5ビット当たりのサンプル数を求めることもできる。又、図21(c)に示すように、1ビット当たりのサンプル数を左1ビットシフトすることで、2ビット当たりのサンプル数を求めることができ、2ビット当たりのサンプル数と0.5ビット当たりのサンプル数とを加算することで、2.5ビット当たりのサンプル数を求めることもできる。
そして、このように整数のビット当たりのサンプル数を求めるだけでなく、小数のビット当たりのサンプル数を求めることで、求めたサンプル数からビット長を求めることができる。例えば求めたサンプル数が0.5ビット当たりのサンプル数よりも大きく且つ1.5ビット当たりのサンプル数よりも小さければ、求めたサンプル数のビット長を「1」と求めることができる。又、例えば求めたサンプル数が1.5ビット当たりのサンプル数よりも大きく且つ2.5ビット当たりのサンプル数よりも小さければ、求めたサンプル数のビット長を「2」と求めることができる。
(第9の実施形態)
以下、本発明の第9の実施形態について、図22を参照して説明する。第8の実施形態では、直線補完する区間として必ず2n(nは整数)ビット分の区間を選択する場合を前提としたが、プリアンブルの部分ではビット列が規則的なパターンの繰返しであり、任意のビット数を選択可能であるので、2nビット分の区間を容易に選択することができる。しかしながら、データの部分ではビット列がランダムであり、2nビット分の区間を選択することができない場合がある。即ち、直線補完する区間として8(23)ビット分の区間を選択しようとしても、図22に示すように、データのビット列において8ビット目に変化点が存在せずに7ビット目や9ビット目に変化点が存在すると、8ビット分の区間に相当するサンプル数を求めることができない。
この場合、データのビット列を、ビット数が2nとなり、且つビットの値が全て同一である第1区間と、ビット数が2nとならず、且つ先頭ビットの値が当該第1区間のビットの値と異なる第2区間とに区分する。図22では、A1に示す区間(第1区間)のビット数が2m(mは整数)であれば、A1に示す区間のサンプル数に対して、上記した第8の実施形態で説明したようにビットシフトを行うことで、A1に示す区間の1ビット当たりのサンプル数を求めることができる。このようにして求めたA1に示す区間の1ビット分のサンプル数と7ビットの区間(第2区間)のサンプル数とを加算することで、8ビット分のサンプル数を求めることができる。そして、上記した第8の実施形態で説明した計算と同様に、8ビットを平均したサンプル数を掛け算回路や割り算回路を用いることなく求めることができ、Bに示す区間のビット長を求めることができる。尚、以上は、8ビットを平均したサンプル数を求める場合を説明したが、2n(nは整数)ビットであれば、これと同様にして、2nビットを平均したサンプル数を求めることができる。又、A1に示す区間(第1区間)に7ビットの区間(第2区間)が続く場合を説明したが、7ビットの区間(第2区間)にA1に示す区間(第1区間)が続く場合も同様であり、即ち、第1区間と第2区間との前後関係はどのようであっても良い。
(第10の実施形態)
以下、本発明の第10の実施形態について、図23及び図24を参照して説明する。第9の実施形態では、A1に示す区間が2m(mは整数)である場合を説明したが、図23に示すように、A2に示す区間が2m(mは整数)でない場合がある。この場合、データのビット列を、ビットの値が全て同一である第3区間と、先頭ビットの値が当該第3区間のビットの値と異なる第4区間とに区分する。図23では、A2に示す区間(第3区間)の整数単位のサンプル数を求めることはできるが、1ビット当たりのサンプル数を求めようとすると、そのサンプル数を2m(mは整数)でない値(図23では「3」)で割るための割り算回路が必要となる。
このような場合に最も簡便な方法はテーブルを用意することである。例えば最大連続ビット長を3ビットとしてエンコードするデータ通信では、A2に示す区間は1ビット、2ビット、3ビットの何れかである。A2に示す区間が1ビットであれば、必ず所望の8ビット分のサンプル数を求めることができる。A2に示す区間が2ビットであれば、上記した第9の実施形態を適用することで、8ビット分のサンプル数を求めることができる。即ち、A2に示す区間が3ビットである場合だけを考慮すれば良い。
前提条件として、1ビット当たりのサンプル数を「10」と設定とした場合、3ビット分のサンプル数は「30」である。データの送信側及び受信側の基準周波数の誤差がそれぞれ10%あると仮定すると、データの送信側及び受信側では20%の誤差となる。よって、サンプル数が「30」であれば、図24に示すように、20%の誤差を考慮すると、図24に示すように、「24〜36」の13通りのテーブルを用意すれば良く、マージンとしてそれぞれ2通りのテーブルを考慮すると、「22〜38」の17通り程度のテーブルを用意すれば良く、回路規模の増加は非常に小さい。本実施形態では、1ビット当たりのサンプル数を求めるには、3ビット分のサンプル数を「3」で割るので、割り切れない分が誤差となるが、この誤差は2%程度と十分に小さく、判定精度への影響は殆どないと言える。又、小数部は3列毎に繰返されており、実際にはテーブルはビット演算で代用することで更に回路規模の増加を抑制することができる。このようにして求めたA2に示す区間の2ビット分のサンプル数と6ビットの区間(第4区間)のサンプル数とを加算することで、8ビット分のサンプル数を求めることができる。そして、上記した第8の実施形態で説明した計算と同様に、8ビットを平均したサンプル数を掛け算回路や割り算回路を用いることなく求めることができ、Bに示す区間のビット長を求めることができる。又、A2に示す区間(第3区間)に6ビットの区間(第4区間)が続く場合を説明したが、6ビットの区間(第4区間)にA2に示す区間(第3区間)が続く場合も同様であり、即ち、第3区間と第4区間との前後関係はどのようであっても良い。
(第11の実施形態)
以下、本発明の第11の実施形態について、図25を参照して説明する。第10の実施形態では、A2に示す区間が2m(mは整数)でない場合にテーブルを用いて1ビット当たりのサンプル数を求める方法を説明した。しかしながら、最大連続ビット長を3ビット等の短く設定してエンコードするデータ通信ではテーブルを用いる方法は有効であるが、最大連続ビット長を長く設定してエンコードするデータ通信ではテーブルの規模が大きくなるので現実的ではない。
Bに示す区間のビット長を判定するためには、A2に示す区間の1ビット当たりのサンプル数が必要となる(小数単位であるか整数単位であるかは問わない)。ところで、Bに示す区間のビット長を判定するよりも先に、Cに示す区間のビット長を判定するためにDに示す区間(第5区間)のサンプル数を過去に用いている。Dに示す区間にはA2に示す区間が含まれているので、Dに示す区間の1ビット当たりのサンプル数を過去に求めていれば、その求めたDに示す区間の1ビット当たりのサンプル数に基づいてA2に示す区間の1ビット当たりのサンプル数を求めても良い。そして、このようにして求めたA2に示す区間の2ビット分のサンプル数と6ビットの区間のサンプル数とを加算することで、8ビット分のサンプル数を求めることができる。そして、上記した第8の実施形態で説明した計算と同様に、8ビットを平均したサンプル数を掛け算回路や割り算回路を用いることなく求めることができ、Bに示す区間のビット長を求めることができる。
尚、以上は、Dに示す区間が2nビットである場合を説明したが、実際のデータ通信ではDに示す区間が2nビットでない場合もある。この場合でも、それ以前のビット長を判定する際の結果を用いて上記した処理を再帰的に行えば良い。データ通信におけるフレームの先頭には必ずプリアンブルが存在し、そのプリアンブルの部分では必ず1ビット当たりの小数単位のサンプル数を求めることができるので、ビットの変化点が2nビット目でなくても、同じ手法を繰返せば良い。
(その他の実施形態)
本発明は、上記した実施形態にのみ限定されるものではなく、以下のように変形又は拡張することができる。
LSI間のデータ通信に適用する構成に限らず、例えば車両に搭載されているECUとは関係ない他の用途のデータ通信に適用しても良い。
第5の実施形態と第6や第7の実施形態とを組み合わせても良い。即ち、複数のデータ受信装置22a〜22nを備える構成において、一のデータ送信装置2と複数のデータ受信装置22a〜22nとが両者の間でそれぞれデータ伝送を全二重通信又は半二重通信により行う構成であっても良い。
図面中、1、21、31、51はデータ通信システム、2はデータ送信装置、3、22a〜22nはデータ受信装置、4、34、39は送信側発振源、6、23a〜23n、36、41は受信側発振源、7、24a〜24n、37、42はデシリアライザ(オーバーサンプリングデータ生成手段)、9、25a〜25n、38、43はデータ判定部(データ判定手段)、10は積算ビット数算出部(積算ビット数算出手段)、11は積算サンプル数算出部(積算サンプル数算出手段)である。

Claims (19)

  1. データを送信するデータ送信装置(2)の送信側発振源(4)とは独立して設けられ、受信クロックを生成して出力する受信側発振源(6)と、
    前記データ送信装置(2)から受信したビット列の各ビットを、前記受信側発振源(6)から入力した受信クロックに同期してオーバーサンプリングしてオーバーサンプリングデータを生成するオーバーサンプリングデータ生成手段(7)と、
    前記データ送信装置(2)から受信したビット列のうち所定ビット数を積算して積算ビット数を算出する積算ビット数算出手段(10)と、
    前記オーバーサンプリングデータ生成手段(7)が生成したオーバーサンプリングデータのうち前記積算ビット数算出手段(10)が積算した所定ビット数の各ビットに対応するサンプル数を積算して積算サンプル数を算出する積算サンプル数算出手段(11)と、
    前記積算ビット数と前記積算サンプル数との対応を示す複数のポイントに基づいて近似線を求め、前記オーバーサンプリングデータ生成手段(7)が生成したオーバーサンプリングデータのうち前記積算サンプル数算出手段(11)が積算したサンプル数以降の同一の値が連続する区間に対応するビット列のビット長を前記近似線に基づいて判定するデータ判定手段(9)と、を備えたことを特徴とするデータ受信装置。
  2. 請求項1に記載したデータ受信装置において、
    前記データ判定手段(9)は、前記近似線を、前記複数のポイントをパラメータとする最小二乗法により求めることを特徴とするデータ受信装置。
  3. 請求項1に記載したデータ受信装置において、
    前記データ判定手段(9)は、前記近似線を、前記複数のポイントのうち両端のポイントをパラメータとする直線補完により求めることを特徴とするデータ受信装置。
  4. 請求項3に記載したデータ受信装置において、
    前記データ判定手段(9)は、前記近似線を直線補完により求める区間を所定ビット数が2n(nは整数)となる区間で選択し、その選択した区間での積算サンプル数の2進数表現上で小数点を移動することで、前記オーバーサンプリングデータ生成手段(7)が生成したオーバーサンプリングデータのうち前記積算サンプル数算出手段(11)が積算したサンプル数以降の同一の値が連続する区間に対応するビット列のビット長を判定することを特徴とするデータ受信装置。
  5. 請求項4に記載したデータ受信装置において、
    前記データ判定手段(9)は、整数部のみを含む整数単位のビット長に対応するサンプル数の2進数表現上で小数点を移動することで、整数部と小数部とを含む小数単位のビット長に対応するサンプル数を求め、整数単位のビット長に対応するサンプル数と小数単位のビット長に対応するサンプル数とを比較することで、前記オーバーサンプリングデータ生成手段(7)が生成したオーバーサンプリングデータのうち前記積算サンプル数算出手段(11)が積算したサンプル数以降の同一の値が連続する区間に対応するビット列のビット長を判定することを特徴とするデータ受信装置。
  6. 請求項4に記載したデータ受信装置において、
    前記データ判定手段(9)は、前記近似線を直線補完により求める区間を所定ビット数が2nとなる区間で選択することが不可能である場合には、所定ビット数が2nとならない区間を2nとなる第1区間と2nとならない第2区間とに区分し、前記第1区間の1ビット当たりのサンプル数を求め、所定ビット数が2nとなるように当該求めた前記第1区間の1ビット当たりのサンプル数の所定倍数と前記第2区間のサンプル数とを加算することで、所定ビット数が2nとなる区間での積算サンプル数を求めることを特徴とするデータ受信装置。
  7. 請求項6に記載したデータ受信装置において、
    前記データ判定手段(9)は、前記第1区間のビットの値が全て同一であり、且つ前記第2区間の先頭ビットの値が当該第1区間のビットの値と異なるように当該第1区間と当該第2区間とを区分することを特徴とするデータ受信装置。
  8. 請求項4に記載したデータ受信装置において、
    前記データ判定手段(9)は、前記近似線を直線補完により求める区間を所定ビット数が2nとなる区間で選択することが不可能であり、且つ所定ビット数が2nとならない区間を2nとなる第1区間と2nとならない第2区間とに区分することが不可能である場合には、所定ビット数が2nとならない区間を各々が2nとならない第3区間と第4区間とに区分し、前記第3区間の1ビット当たりのサンプル数を、予め用意しておいたテーブルにより求め、所定ビット数が2nとなるように当該求めた前記第3区間の1ビット当たりのサンプル数の所定倍数と前記第4区間のサンプル数とを加算することで、所定ビット数が2nとなる区間での積算サンプル数を求めることを特徴とするデータ受信装置。
  9. 請求項4に記載したデータ受信装置において、
    前記データ判定手段(9)は、前記近似線を直線補完により求める区間を所定ビット数が2nとなる区間で選択することが不可能であり、且つ所定ビット数が2nとならない区間を2nとなる第1区間と2nとならない第2区間とに区分することが不可能である場合には、所定ビット数が2nとならない区間を各々が2nとならない第3区間と第4区間とに区分し、過去に1ビット当たりのサンプル数を求めた第5区間に前記第3区間が含まれていれば、前記第3区間の1ビット当たりのサンプル数を、過去に求めた前記第5区間の1ビット当たりのサンプル数により求め、所定ビット数が2nとなるように当該求めた前記第3区間の1ビット当たりのサンプル数の所定倍数と前記第4区間のサンプル数とを加算することで、所定ビット数が2nとなる区間での積算サンプル数を求めることを特徴とするデータ受信装置。
  10. 請求項9に記載したデータ受信装置において、
    前記データ判定手段(9)は、前記第3区間の1ビット当たりのサンプル数を再帰的に求めることを特徴とするデータ受信装置。
  11. 請求項8から10の何れか一項に記載したデータ受信装置において、
    前記データ判定手段(9)は、前記第3区間のビットの値が全て同一であり、且つ前記第4区間の先頭ビットの値が当該第3区間のビットの値と異なるように当該第3区間と当該第4区間とを区分することを特徴とするデータ受信装置。
  12. 請求項1から11の何れか一項に記載したデータ受信装置において、
    前記データ判定手段(9)は、前記近似線を、プリアンブルを構成するビット列の所定ビット数に対応するポイントを前記複数のポイントとして求めることを特徴とするデータ受信装置。
  13. 請求項1から11の何れか一項に記載したデータ受信装置において、
    前記データ判定手段(9)は、前記近似線を、プリアンブルを構成するビット列のうち先頭から設定ビット数を除いた残りの所定ビット数に対応するポイントを前記複数のポイントとして求めることを特徴とするデータ受信装置。
  14. 請求項1から13の何れか一項に記載したデータ受信装置において、
    前記データ判定手段(9)は、前記近似線を、前記複数のポイントの区間を可変として求めることを特徴とするデータ受信装置。
  15. 請求項14に記載したデータ受信装置において、
    前記データ判定手段(9)は、前記近似線を、ビット列のビット番号が閾値未満では前記複数のポイントの区間を可変として求め、ビット列のビット番号が閾値以上では前記複数のポイントの区間を一定として求めることを特徴とするデータ受信装置。
  16. 請求項1から15の何れか一項に記載したデータ受信装置において、
    前記データ判定手段(9)は、前記近似線を、掛け算回路により求めることを特徴とするデータ受信装置。
  17. 請求項1から16の何れか一項に記載したデータ受信装置において、
    前記データ判定手段(9)は、前記ビット列のビット長を前記近似線に基づいて判定する際に、その判定したビット長が通信プロトコルのエンコードにおける最大連続ビット長を越えると判定した場合には、その判定したビット長を最大連続ビット長であると判定することを特徴とするデータ受信装置。
  18. 請求項1から17の何れか一項に記載したデータ受信装置において、
    前記オーバーサンプリングデータ生成手段(7)は、前記ビット列を、1ビットに対するサンプル数を6から10の範囲でオーバーサンプリングすることを特徴とするデータ受信装置。
  19. 請求項1から18の何れか一項に記載したデータ受信装置(3)を複数備え、
    前記複数のデータ受信装置(3)は、同じデータ送信装置(2)からビット列を受信することを特徴とするデータ通信システム。
JP2013022226A 2012-07-12 2013-02-07 データ受信装置及びデータ通信システム Active JP5459421B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2013022226A JP5459421B2 (ja) 2012-07-12 2013-02-07 データ受信装置及びデータ通信システム
PCT/JP2013/004254 WO2014010236A1 (ja) 2012-07-12 2013-07-10 データ受信装置及びデータ通信システム
DE112013003477.8T DE112013003477T5 (de) 2012-07-12 2013-07-10 Datenempfangsvorrichtung und Datenkommunikationssystem
US14/537,969 US9166772B2 (en) 2012-07-12 2014-11-11 Data reception apparatus oversampling received bits and data communication system oversampling received bits

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2012156553 2012-07-12
JP2012156553 2012-07-12
JP2013022226A JP5459421B2 (ja) 2012-07-12 2013-02-07 データ受信装置及びデータ通信システム

Publications (2)

Publication Number Publication Date
JP2014033428A JP2014033428A (ja) 2014-02-20
JP5459421B2 true JP5459421B2 (ja) 2014-04-02

Family

ID=49915717

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013022226A Active JP5459421B2 (ja) 2012-07-12 2013-02-07 データ受信装置及びデータ通信システム

Country Status (4)

Country Link
US (1) US9166772B2 (ja)
JP (1) JP5459421B2 (ja)
DE (1) DE112013003477T5 (ja)
WO (1) WO2014010236A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5794352B2 (ja) 2013-05-29 2015-10-14 株式会社デンソー 受信装置及び受信ビット列の同一値ビット数検出方法
JP5751290B2 (ja) 2013-07-11 2015-07-22 株式会社デンソー データ受信装置及び受信ビット列の同一値ビット長判定方法
JP6333166B2 (ja) * 2014-12-24 2018-05-30 国立大学法人東北大学 受信データ復元装置
JP2018152643A (ja) * 2017-03-10 2018-09-27 三菱電機エンジニアリング株式会社 調歩同期式シリアルデータ通信装置のデータ受信回路
US11038602B1 (en) 2020-02-05 2021-06-15 Credo Technology Group Limited On-chip jitter evaluation for SerDes
US10992501B1 (en) 2020-03-31 2021-04-27 Credo Technology Group Limited Eye monitor for parallelized digital equalizers
US10892763B1 (en) * 2020-05-14 2021-01-12 Credo Technology Group Limited Second-order clock recovery using three feedback paths

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0497633A (ja) * 1990-08-15 1992-03-30 Matsushita Electric Ind Co Ltd シリアルデータ受信装置
JP3064867B2 (ja) * 1995-05-23 2000-07-12 松下電器産業株式会社 データ受信装置
JP3318179B2 (ja) * 1996-01-10 2002-08-26 松下電器産業株式会社 データ受信装置
FR2778047A1 (fr) 1998-04-28 1999-10-29 Canon Kk Procede et dispositif d'emission d'information, procede et dispositif de reception d'information
DE10011330A1 (de) 2000-03-10 2001-09-20 Becker Gmbh Verfahren zur Datenübertragung in einem Kommunikationsnetzwerk mit Ringstruktur
US20040117691A1 (en) * 2002-12-13 2004-06-17 George Fang Method and related device for reliably receiving a digital signal
JP4480536B2 (ja) 2003-12-05 2010-06-16 株式会社リコー データリカバリ方法およびデータリカバリ回路
JP2006109082A (ja) * 2004-10-05 2006-04-20 Ricoh Co Ltd データ送受信方法、及びデータ送受信装置
JP4676792B2 (ja) * 2005-03-17 2011-04-27 株式会社リコー データリカバリ方法、データリカバリ回路、データ送受信装置及び情報処理装置
JP5560989B2 (ja) 2010-07-21 2014-07-30 富士通株式会社 受信回路

Also Published As

Publication number Publication date
DE112013003477T5 (de) 2015-03-26
US20150063514A1 (en) 2015-03-05
US9166772B2 (en) 2015-10-20
JP2014033428A (ja) 2014-02-20
WO2014010236A1 (ja) 2014-01-16

Similar Documents

Publication Publication Date Title
JP5459421B2 (ja) データ受信装置及びデータ通信システム
JP6054735B2 (ja) トランシーバ、通信装置
JP5381448B2 (ja) 情報伝送システム、情報伝送装置及びプログラム
EP2972926B1 (en) Method and apparatus for clock recovery
TWI465089B (zh) 用於傳達資料之通信電路及方法
CN108063661A (zh) 基于曼彻斯特编码的采样电路和接收电路
US6985546B2 (en) Transmitting circuit and method thereof, receiving circuit and method thereof, and data communication apparatus
JP5751290B2 (ja) データ受信装置及び受信ビット列の同一値ビット長判定方法
US9705665B2 (en) Oversampling CDR which compensates frequency difference without elasticity buffer
CN116257483A (zh) 异步串口通信波特率自适应方法及装置、异步串口设备
JP2014220640A (ja) シリアル通信制御回路
JP6955936B2 (ja) レーダ
US6970527B2 (en) Transmitting circuit and method thereof, receiving circuit and method thereof, and data communication apparatus
CN106612114B (zh) 时脉恢复装置与时脉恢复方法
KR101496323B1 (ko) 확장 맨체스터 코드, 이를 이용한 부호화 장치 및 이를 이용하여 부호화된 신호의 클럭 및 데이터 복구 방법 및 장치
JP6333166B2 (ja) 受信データ復元装置
KR101023640B1 (ko) 지터를 감소시키기 위한 오버샘플링 기술
JP2008278459A (ja) 通信システム、送信装置、受信装置及び通信方法並びに半導体素子
CN112385157A (zh) 数据网络的用户设备
KR20040103765A (ko) 데이터 수신 방법 및 그 장치, 및 데이터 전송 시스템
JP6249401B2 (ja) 通信装置及び通信システム
KR101512451B1 (ko) 싱크의 송신 클럭 생성 장치 및 생성된 송신 클럭을 이용한 송신 방법
KR101438064B1 (ko) 다운스트림 디바이스의 송신 클럭 생성 장치
KR101539438B1 (ko) 싱크의 송신 클럭 생성 장치 및 생성된 송신 클럭을 이용한 송신 방법
JP4823276B2 (ja) 通信装置

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131217

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131230

R151 Written notification of patent or utility model registration

Ref document number: 5459421

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250