(57)【特許請求の範囲】
【請求項１】
データを送信するデータ送信装置（２）の送信側発振源（４）とは独立して設けられ、受信クロックを生成して出力する受信側発振源（６）と、
前記データ送信装置（２）から受信したビット列の各ビットを、前記受信側発振源（６）から入力した受信クロックに同期してオーバーサンプリングしてオーバーサンプリングデータを生成するオーバーサンプリングデータ生成手段（７）と、
前記データ送信装置（２）から受信したビット列のうち所定ビット数を積算して積算ビット数を算出する積算ビット数算出手段（１０）と、
前記オーバーサンプリングデータ生成手段（７）が生成したオーバーサンプリングデータのうち前記積算ビット数算出手段（１０）が積算した所定ビット数の各ビットに対応するサンプル数を積算して積算サンプル数を算出する積算サンプル数算出手段（１１）と、
前記積算ビット数と前記積算サンプル数との対応を示す複数のポイントに基づいて近似線を求め、前記オーバーサンプリングデータ生成手段（７）が生成したオーバーサンプリングデータのうち前記積算サンプル数算出手段（１１）が積算したサンプル数以降の同一の値が連続する区間に対応するビット列のビット長を前記近似線に基づいて判定するデータ判定手段（９）と、を備えたことを特徴とするデータ受信装置。
【請求項２】
請求項１に記載したデータ受信装置において、
前記データ判定手段（９）は、前記近似線を、前記複数のポイントをパラメータとする最小二乗法により求めることを特徴とするデータ受信装置。
【請求項３】
請求項１に記載したデータ受信装置において、
前記データ判定手段（９）は、前記近似線を、前記複数のポイントのうち両端のポイントをパラメータとする直線補完により求めることを特徴とするデータ受信装置。
【請求項４】
請求項３に記載したデータ受信装置において、
前記データ判定手段（９）は、前記近似線を直線補完により求める区間を所定ビット数が２ｎ（ｎは整数）となる区間で選択し、その選択した区間での積算サンプル数の２進数表現上で小数点を移動することで、前記オーバーサンプリングデータ生成手段（７）が生成したオーバーサンプリングデータのうち前記積算サンプル数算出手段（１１）が積算したサンプル数以降の同一の値が連続する区間に対応するビット列のビット長を判定することを特徴とするデータ受信装置。
【請求項５】
請求項４に記載したデータ受信装置において、
前記データ判定手段（９）は、整数部のみを含む整数単位のビット長に対応するサンプル数の２進数表現上で小数点を移動することで、整数部と小数部とを含む小数単位のビット長に対応するサンプル数を求め、整数単位のビット長に対応するサンプル数と小数単位のビット長に対応するサンプル数とを比較することで、前記オーバーサンプリングデータ生成手段（７）が生成したオーバーサンプリングデータのうち前記積算サンプル数算出手段（１１）が積算したサンプル数以降の同一の値が連続する区間に対応するビット列のビット長を判定することを特徴とするデータ受信装置。
【請求項６】
請求項４に記載したデータ受信装置において、
前記データ判定手段（９）は、前記近似線を直線補完により求める区間を所定ビット数が２ｎとなる区間で選択することが不可能である場合には、所定ビット数が２ｎとならない区間を２ｎとなる第１区間と２ｎとならない第２区間とに区分し、前記第１区間の１ビット当たりのサンプル数を求め、所定ビット数が２ｎとなるように当該求めた前記第１区間の１ビット当たりのサンプル数の所定倍数と前記第２区間のサンプル数とを加算することで、所定ビット数が２ｎとなる区間での積算サンプル数を求めることを特徴とするデータ受信装置。
【請求項７】
請求項６に記載したデータ受信装置において、
前記データ判定手段（９）は、前記第１区間のビットの値が全て同一であり、且つ前記第２区間の先頭ビットの値が当該第１区間のビットの値と異なるように当該第１区間と当該第２区間とを区分することを特徴とするデータ受信装置。
【請求項８】
請求項４に記載したデータ受信装置において、
前記データ判定手段（９）は、前記近似線を直線補完により求める区間を所定ビット数が２ｎとなる区間で選択することが不可能であり、且つ所定ビット数が２ｎとならない区間を２ｎとなる第１区間と２ｎとならない第２区間とに区分することが不可能である場合には、所定ビット数が２ｎとならない区間を各々が２ｎとならない第３区間と第４区間とに区分し、前記第３区間の１ビット当たりのサンプル数を、予め用意しておいたテーブルにより求め、所定ビット数が２ｎとなるように当該求めた前記第３区間の１ビット当たりのサンプル数の所定倍数と前記第４区間のサンプル数とを加算することで、所定ビット数が２ｎとなる区間での積算サンプル数を求めることを特徴とするデータ受信装置。
【請求項９】
請求項４に記載したデータ受信装置において、
前記データ判定手段（９）は、前記近似線を直線補完により求める区間を所定ビット数が２ｎとなる区間で選択することが不可能であり、且つ所定ビット数が２ｎとならない区間を２ｎとなる第１区間と２ｎとならない第２区間とに区分することが不可能である場合には、所定ビット数が２ｎとならない区間を各々が２ｎとならない第３区間と第４区間とに区分し、過去に１ビット当たりのサンプル数を求めた第５区間に前記第３区間が含まれていれば、前記第３区間の１ビット当たりのサンプル数を、過去に求めた前記第５区間の１ビット当たりのサンプル数により求め、所定ビット数が２ｎとなるように当該求めた前記第３区間の１ビット当たりのサンプル数の所定倍数と前記第４区間のサンプル数とを加算することで、所定ビット数が２ｎとなる区間での積算サンプル数を求めることを特徴とするデータ受信装置。
【請求項１０】
請求項９に記載したデータ受信装置において、
前記データ判定手段（９）は、前記第３区間の１ビット当たりのサンプル数を再帰的に求めることを特徴とするデータ受信装置。
【請求項１１】
請求項８から１０の何れか一項に記載したデータ受信装置において、
前記データ判定手段（９）は、前記第３区間のビットの値が全て同一であり、且つ前記第４区間の先頭ビットの値が当該第３区間のビットの値と異なるように当該第３区間と当該第４区間とを区分することを特徴とするデータ受信装置。
【請求項１２】
請求項１から１１の何れか一項に記載したデータ受信装置において、
前記データ判定手段（９）は、前記近似線を、プリアンブルを構成するビット列の所定ビット数に対応するポイントを前記複数のポイントとして求めることを特徴とするデータ受信装置。
【請求項１３】
請求項１から１１の何れか一項に記載したデータ受信装置において、
前記データ判定手段（９）は、前記近似線を、プリアンブルを構成するビット列のうち先頭から設定ビット数を除いた残りの所定ビット数に対応するポイントを前記複数のポイントとして求めることを特徴とするデータ受信装置。
【請求項１４】
請求項１から１３の何れか一項に記載したデータ受信装置において、
前記データ判定手段（９）は、前記近似線を、前記複数のポイントの区間を可変として求めることを特徴とするデータ受信装置。
【請求項１５】
請求項１４に記載したデータ受信装置において、
前記データ判定手段（９）は、前記近似線を、ビット列のビット番号が閾値未満では前記複数のポイントの区間を可変として求め、ビット列のビット番号が閾値以上では前記複数のポイントの区間を一定として求めることを特徴とするデータ受信装置。
【請求項１６】
請求項１から１５の何れか一項に記載したデータ受信装置において、
前記データ判定手段（９）は、前記近似線を、掛け算回路により求めることを特徴とするデータ受信装置。
【請求項１７】
請求項１から１６の何れか一項に記載したデータ受信装置において、
前記データ判定手段（９）は、前記ビット列のビット長を前記近似線に基づいて判定する際に、その判定したビット長が通信プロトコルのエンコードにおける最大連続ビット長を越えると判定した場合には、その判定したビット長を最大連続ビット長であると判定することを特徴とするデータ受信装置。
【請求項１８】
請求項１から１７の何れか一項に記載したデータ受信装置において、
前記オーバーサンプリングデータ生成手段（７）は、前記ビット列を、１ビットに対するサンプル数を６から１０の範囲でオーバーサンプリングすることを特徴とするデータ受信装置。
【請求項１９】
請求項１から１８の何れか一項に記載したデータ受信装置（３）を複数備え、
前記複数のデータ受信装置（３）は、同じデータ送信装置（２）からビット列を受信することを特徴とするデータ通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ送信装置から受信したデータをオーバーサンプリングしてデータを判定するデータ受信装置、及び前記データ送信装置と前記データ受信装置とを備えるデータ通信システムに関する。
【背景技術】
【０００２】
データ通信におけるクロック・データ・リカバリ（Clock Data Recovery、ＣＤＲ）の技術において、データの送信を間欠的に（送信及び送信停止を繰返して）行う場合には、短いロックタイムが要求されている。例えばＰＣＩ  Ｅｘｐｒｅｓｓでは、短いロックタイムを実現するために、位相補間（インタポレータ）方式のＣＤＲが採用されている（非特許文献１参照）。位相補間方式のＣＤＲでは、データの受信側において、互いに位相差を有する複数のクロックを生成し、その複数のクロックのうち受信したデータの位相に最も近い位相のクロックを選択する。この場合、位相補間方式のＣＤＲでは、クロックを選択する機能を有するが、クロックの周波数を調整する機能を有しないので、データの送信側の発振源と受信側の発振源との間でクロックの周波数誤差（オフセット）が小さいことが要求される。例えば上記した非特許文献１では、データの送信側と受信側とが同一の発振源を用いることで、クロックの周波数誤差が発生しないようにしている。
【０００３】
又、Ｓｅｒｉａｌ  ＡＴＡでも、データの受信側の発振源にクロックの周波数誤差として±３５０［ｐｐｍ］程度を要求しており、データの送信側の発振源にも同等の精度の周波数誤差を要求することで、データの送信側の発振源と受信側の発振源との間でクロックの周波数誤差を小さくし、短いロックタイムを実現している（非特許文献２参照）。
【０００４】
更に、ＵＳＢでも、ビット長が短い同期パターンでロックすることが規定されているが、データの送信側の発振源と受信側の発振源との間でクロックの周波数誤差が小さいことを前提としている。具体的には、通信速度１２［Ｍｂｐｓ］における０．２１［ｎｓ／ビット］は、０．２１［ｎｓｅｃ］／（１／１２［Ｍｂｐｓ］）＝０．００２５となり、０．２５％の周波数誤差となる（非特許文献３参照）。
【０００５】
一方、例えばビデオ信号の伝送等のデータの送信を常に行うデータ通信においては、ロックタイムが長くともロックが一旦成立すると、データを連続して送信するので、位相同期方式のＣＤＲが採用されている（非特許文献４参照）。位相比較として例えば５００サイクル程度を必要とする場合であれば、位相比較にはビットの変化点が必要であるので、ビットの変化点の存在確率が５０％程度であると、ロックするのに必要なビット数として１０００ビット程度が必要となる。特に電源オン時には、位相誤差に加え、周波数誤差も存在するので、ロックするのに必要なビット数として更に多くのビット数が必要となり、例えば１００００ビット程度が必要となる。この点に対し、位相同期方式のＣＤＲにおけるロックタイムを極力短くするように、データのビット列をオーバーサンプリングしてデジタル回路により信号処理する技術が開示されている（非特許文献５、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−１９２１９２号公報
【非特許文献１】PCI Express Architecture  PCI Express Jitter and BER Revision 1.0 February 11, 2005  平成２４年１月２４日検索、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｐｃｉｓｉｇ．ｃｏｍ／ｓｐｅｃｉｆｉｃａｔｉｏｎｓ／ｐｃｉｅｘｐｒｅｓｓ／ｔｅｃｈｎｉｃａｌ＿ｌｉｂｒａｒｙ／ＰＣＩｅ＿Ｒｊ＿Ｄｊ＿ＢＥＲ＿Ｒ１＿０．ｐｄｆ＞
【非特許文献２】Serial ATA:High Speed Serialized AT Attachment Revision 1.0a 7-January-2003  平成２４年１月２４日検索、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｓａｔａ−ｉｏ．ｏｒｇ／ｄｏｃｕｍｅｎｔｓ／ｓｅｒｉａｌａｔａ１０ａ．ｚｉｐ＞
【非特許文献３】USB2.0 standard  平成２４年１月２４日検索、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｕｓｂ．ｏｒｇ／ｄｅｖｅｌｏｐｅｒｓ／ｄｏｃｓ／ｕｓｂ＿２０＿１０１１１１．ｚｉｐ＞
【非特許文献４】Designing Bang-Bang PLLs for Clock and Data Recovery in Serial Data Transmission Systems Richard C. Walker  平成２４年１月２４日検索、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｏｍｎｉｓｔｅｒｒａ．ｃｏｍ／ｗａｌｋｅｒ／ｐｄｆｓ．ｐａｐｅｒｓ／ＢＢＰＬＬ．ｐｄｆ＞
【非特許文献５】Multi-Gigaビット-Rate Clock and Data Recovery Basd on the Blind Oversampling, J. Kim,IEEE Communications Magazine 2003/12月,p.68〜74
【発明の概要】
【発明が解決しようとする課題】
【０００７】
このように位相補間方式のＣＤＲでは、非特許文献１から３に示されているように、短いロックタイムを実現するにはデータの送信側と受信側との間でクロックの周波数誤差が小さい発振源を使用することが前提となる。しかしながら、ＬＳＩ（Large Scale Integration）に内蔵される発振源としてのＣＲ発振回路は１０％程度の周波数誤差を有するのが一般的であるので、ＬＳＩとは別体に周波数誤差が小さい発振源（クリスタル振動子）が必要となる。
【０００８】
又、位相同期方式のＣＤＲでは、非特許文献４に示されているように、ロックタイムが長いので、データ通信に不向きである。又、データの各ビットをオーバーサンプリングしてデジタル処理することで、ロックタイムをある程度短くすることが可能であるが、その効果は限定的である。即ち、非特許文献５や特許文献１では、アナログ回路で実現していたＰＬＬ（Phase-Locked Loop）のフィードバックループをデジタル回路で実現しているに過ぎず、ロックタイムを大幅に低減することは難しい。具体的には、非特許文献５では、フィードバックのループフィルタの数が５１２以上であり、ロックタイムとしては少なくとも５１２の何倍ものビット数が必要となる。又、特許文献１では、位相を判定する際にクロックの周波数をある程度推定可能であることを前提としており、１０００［ｐｐｍ］程度の周波数誤差を想定している。
【０００９】
本発明は、上記した事情に鑑みてなされたものであり、その目的は、データ送信装置の送信側発振源とある程度のクロックの周波数誤差を有する受信側発振源を用いる構成でありながらも、データ送信装置から受信したデータを好適に判定することができるデータ受信装置、及びデータ通信システムを提供することにある。
【課題を解決するための手段】
【００１０】
請求項１に記載したデータ受信装置によれば、受信側発振源は、データを送信するデータ送信装置の送信側発振源とは独立して設けられ、受信クロックを生成して出力する。オーバーサンプリングデータ生成手段は、データ送信装置から受信したビット列の各ビットを、受信側発振源から入力した受信クロックに同期してオーバーサンプリングしてオーバーサンプリングデータを生成する。ここで、積算ビット数算出手段は、データ送信装置から受信したビット列のうち所定ビット数を積算して積算ビット数を算出する。積算サンプル数算出手段は、オーバーサンプリングデータ生成手段が生成したオーバーサンプリングデータのうち積算ビット数算出手段が積算した所定ビット数の各ビットに対応するサンプル数を積算して積算サンプル数を算出する。データ判定手段は、積算ビット数と積算サンプル数との対応を示す複数のポイントに基づいて近似線を求め、オーバーサンプリングデータ生成手段が生成したオーバーサンプリングデータのうち積算サンプル数算出手段が積算したサンプル数以降の同一の値が連続する区間に対応するビット列のビット長を近似線に基づいて判定する。
【００１１】
これにより、受信側発振源が送信側発振源とある程度のクロックの周波数誤差を有していたとしても、積算ビット数と積算サンプル数との対応を示す複数のポイントに基づいて近似線を求めることで、オーバーサンプリングの周期（サンプル数の逆数）よりも高い精度でビット列の１ビット当たりが何サンプルであるかを正確に求めることができる。そして、ビット列の１ビット当たりのサンプル数を求め、オーバーサンプリングデータの同一の値が連続する区間のデータ数を当該求めたサンプル数で除すことで、その区間に対応するビット列のビット長を正確に判定することができ、データを好適に判定することができる。即ち、過去に受信したビット列から積算ビット数と積算サンプル数との対応を示す近似線を求め、値を判定するビット列のビット数とサンプル数との対応が当該近似線に追従するという技術的特徴に着目したことで、周波数誤差の影響を受けることなく、データを好適に判定することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１の実施形態を示す機能ブロック図
【図２】オーバーサンプリングデータを示す図
【図３】劣化要因に対するサンプル数を表により示す図
【図４】ビット番号とサンプル数との対応をグラフにより示す図
【図５】図２相当図
【図６】積算ビット数と積算サンプル数との対応をグラフにより示す図
【図７】近似線を示す図
【図８】図７相当図
【図９】（ａ）は積算ビット数と積算サンプル数との対応を表により示す図、（ｂ）は近似線を示す図
【図１０】ジッタトレランスをシミュレーションした結果を示す図
【図１１】本発明の第２の実施形態を示す図７相当図
【図１２】図１０相当図
【図１３】図１０相当図
【図１４】図１０相当図
【図１５】本発明の第３の実施形態を示す図
【図１６】本発明の第４の実施形態を示す図１０相当図
【図１７】本発明の第５の実施形態を示す図１相当図
【図１８】本発明の第６の実施形態を示す図１相当図
【図１９】本発明の第７の実施形態を示す図１相当図
【図２０】本発明の第８の実施形態を示す図７相当図
【図２１】サンプル数を求める手順を示す図
【図２２】本発明の第９の実施形態を示し、ビット列のパターンを示す図
【図２３】本発明の第１０の実施形態を示す図２２相当図
【図２４】１ビット当たりのサンプル数の計算結果を表により示す図
【図２５】本発明の第１１の実施形態を示す図２２相当図
【発明を実施するための形態】
【００１３】
（第１の実施形態）
以下、本発明の第１の実施形態について、図１から図１０を参照して説明する。本実施形態で説明するデータ通信は、例えば車両に搭載されている同一のＥＣＵ（Electronic Control Unit）内でのＬＳＩ（Large Scale Integration）間通信や異なるＥＣＵ間でのＬＳＩ間通信等に適用される。ＬＳＩ間で構築されるデータ通信システム１は、データの送信を行うデータ送信装置２と、データの受信を行うデータ受信装置３とを有して構成されている。
【００１４】
データ送信装置２は、送信側発振源４と、シリアライザ５とを有する。送信側発振源４は、例えばＣＲ発振回路により構成され、送信クロックを生成してシリアライザ５に出力する。シリアライザ５は、データ受信装置３に伝送するパラレルデータを入力すると、その入力したパラレルデータを送信側発振源４から入力した送信クロックに同期してシリアル変換してシリアルデータを生成し、その生成したシリアルデータを通信線路を介してデータ受信装置３に送信する。
【００１５】
データ受信装置３は、受信側発振源６と、デシリアライザ７（オーバーサンプリングデータ生成手段に相当）と、データ判定回路８とを有する。受信側発振源６は、上記した送信側発振源４と同様に例えばＣＲ発振回路により構成され、受信クロックを生成してデシリアライザ７及びデータ判定回路８に出力する。デシリアライザ７は、データ送信装置２から通信線路を介してシリアルデータを受信すると、その受信したシリアルデータを受信側発振源６から入力した受信クロックに同期してオーバーサンプリングしてオーバーサンプリングデータを生成し、その生成したオーバーサンプリングデータをデータ判定回路８に出力する。この場合、デシリアライザ７が１ビットをオーバーサンプリングする倍数（１ビット区間のサンプル数）は、一般的なデータ通信であれば例えば５〜１０程度が望ましい。尚、図１では、受信側発振源６から出力された受信クロックがデシリアライザ７及びデータ判定回路８に直接入力されているが、受信側発振源６からＰＬＬ（Phase-Locked Loop）回路等を介して入力されても良い。又、デシリアライザ７でのクロック遅延を補償するために、一旦デシリアライザ７に入力された受信クロックがデシリアライザ７を経由した後にデータ判定回路８に入力されても良い。
【００１６】
データ判定回路８は、データ判定部９（データ判定手段に相当）と、積算ビット数算出部１０（積算ビット数算出手段に相当）と、積算サンプル数算出部１１（積算サンプル数算出手段に相当）とを有する。データ判定部９は、デシリアライザ７からオーバーサンプリングデータを入力すると、その入力したオーバーサンプリングデータを受信側発振源６から入力した受信クロックに同期してパラレル変換してパラレルデータを生成して出力する（データ送信装置２のシリアライザ５が入力したパラレルデータ、又は同一データであるがシフトしたデータを復元する）。積算ビット数算出部１０は、ビット列のビット数を積算した値を積算ビット数として算出する。積算サンプル数算出部１１は、デシリアライザ７が各ビットをオーバーサンプリングしたサンプル数を積算した値を積算サンプル数として算出する。
【００１７】
本実施形態では、送信側発振源４及び受信側発振源６は、それぞれＬＳＩに内蔵される発振源である場合を説明しているが、ＬＳＩとは別体の（ＬＳＩの外部に設けられた）発振源であっても良い。ＬＳＩとは別体の発振源とする場合には、ＣＲ発振回路よりも精度が高い例えばクリスタル振動子等から構成される発振源であっても良い。又、送信側発振源４から出力される送信クロックの周波数及び受信側発振源６から出力される受信クロックの周波数は、互いに同一である必要はなく、一方が他方の整数倍である必要もない。受信クロックの周波数は、デシリアライザ７が１ビットをオーバーサンプリング可能な周波数であれば良い。
【００１８】
次に、上記した構成の作用について、図２から図１０を参照して説明する。
送信側発振源４から出力される送信クロックの周波数及び受信側発振源６から出力される受信クロックの周波数について説明すると、両者の間で周波数誤差（オフセット）が発生していない場合には、受信側のビット列の１ビット区間と送信側のビット列の１ビット区間とはずれることなく一致する。即ち、図２（ａ）に示すように、１ビットを８サンプル（８倍）でオーバーサンプリングする場合には、送信側の１ビット区間は受信側の８サンプルのオーバーサンプリングデータと一致する。
【００１９】
一方、両者の間で周波数誤差が発生している場合には、受信側のビット列の１ビット区間と送信側のビット列の１ビット区間とがずれて一致しなくなる場合がある。即ち、図２（ｂ）に示すように、図２（ａ）と同じく１ビットを８サンプルでオーバーサンプリングする場合には、送信側の１ビット区間は受信側の８サンプルのオーバーサンプリングデータと一致することなく、例えば７サンプルのオーバーサンプリングデータにずれてしまう場合がある。
【００２０】
このように送信側の１ビット区間と受信側の１ビット区間との間でずれが発生する劣化要因としては、上記した周波数誤差以外にも、周期ジッタやランダムジッタがある。図３は、これらの劣化要因毎のサンプル数の変化の一例を示している。何れの劣化要因も発生していない場合には、「Ａ」のように、正規のサンプル数（図３では例えば８サンプル）で一定となる。一方、周波数誤差が劣化要因として発生している場合には、「Ｂ」のように、正規のサンプル数から所定のサンプル数だけずれたサンプル数（図３では例えば６サンプル）で一定となる。又、例えば正弦波のような周期ジッタが劣化要因として発生している場合には、「Ｃ」のように、正規のサンプル数から例えば正弦波的にずれたサンプル数となる。又、ランダムジッタが劣化要因として発生している場合には、「Ｄ」のように、正規のサンプル数からランダムにずれたサンプル数となる。更に、上記した周波数誤差、周期ジッタ及びランダムジッタの全てが劣化要因として発生し（実際の状況と近い）、それらが平均的に影響している場合には、「Ｅ」のように、それぞれの平均値のサンプル数となるが、実際にはオーバーサンプリングにより離散化されるので、「Ｆ」のように、離散化されたサンプル数となる。図４は、図３に示した劣化要因が発生していない場合及び発生している場合について、それぞれのサンプル数の推移を示している。尚、図４に示す数値は図３に示した数値とは異なっている。
【００２１】
さて、データ判定回路８においては、データ送信装置２から送信されるビット列が常に１ビットずつ「０」、「１」、「０」、「１」…を規則的に配置したパターンであれば、上記した劣化要因が発生したとしても、各ビットの値（極性）を判定可能である。しかしながら、実際にはデータ送信装置２から送信されるビット列は「０」、「１」を不規則に配置したパターンであるので、上記した劣化要因が発生すると、以下の理由により各ビットの値を判定不可能となる。
【００２２】
即ち、図３に示したように、周期ジッタやランダムジッタが発生した場合には、サンプル数が例えば６から１０までの間で変動しているので、オーバーサンプリングデータが同じ値である程度連続すると、その区間のデータのビット長（幾つのビットに対応するか）を判定不可能となる。具体的に説明すると、図５に示すように、オーバーサンプリングデータが例えば１９サンプルに亘って同じ値で連続すると、図５（ａ）に示すように、６サンプルが３ビット連続した１８サンプルがランダムジッタの影響を受けて１９サンプルになった可能性と、図５（ｂ）に示すように、１０サンプルが２ビット連続した２０サンプルがランダムジッタの影響を受けて１９サンプルになった可能性とを想定し得る。そのため、データ判定回路８においては、デシリアライザ７から入力したオーバーサンプリングデータをそのままの状態で（従来の手順にしたがって）データのビット長を判定しようとすると、１９サンプルのオーバーサンプリングデータが２ビットのデータであるか３ビットのデータであるかを正確に判定することが困難となる。
【００２３】
上記した問題に対し、本実施形態では、データ判定回路８が以下に示す処理を行う。即ち、データ判定回路８は、ビット列のビット数を積算ビット数算出部１０により積算して積算ビット数を求め、各ビットをオーバーサンプリングしたサンプル数を積算サンプル数算出部１１により積算して積算サンプル数を求め、積算ビット数と積算サンプル数との対応を示す近似線（フィッティング直線）を求める。図６（ａ）に示すように、各ビットを例えば８サンプルでオーバーサンプリングする場合に、何れの劣化要因も発生していなければ、各ビットを正規の８サンプルで処理することになるので、実線にて示すように、積算サンプル数は積算ビット数を常に８倍した値を示す直線となり、積算ビット数と積算サンプル数とは正比例する。一方、周波数誤差が劣化要因として発生していれば、各ビットを例えば６サンプルで処理する場合には、破線にて示すように、積算サンプル数は積算ビット数を常に６倍した値を示す直線となり、各ビットを例えば１２サンプル数で処理する場合には、一点鎖線にて示すように、積算サンプル数は積算ビット数を常に１２倍した値となり、何れも積算ビット数を常に８倍した値を示す直線からずれる。
【００２４】
又、図６（ｂ）に示すように、各ビットを例えば８サンプルでオーバーサンプリングする場合に、例えば正弦波のような周期ジッタが劣化要因として発生していれば、破線にて示すように、積算サンプル数は積算ビット数を常に８倍した値を示す直線から例えば正弦波的にずれた線となる。又、図６（ｃ）に示すように、各ビットを例えば８サンプルでオーバーサンプリングする場合に、ランダムジッタが劣化要因として発生していれば、破線にて示すように、積算サンプル数は積算ビット数を常に８倍した値を示す直線からランダムにずれた線となる。更に、周波数誤差、周期ジッタ及びランダムジッタの全てが劣化要因として発生し（実際の状況と近い）、それらが平均的に影響している場合でも、同様の方法により、積算ビット数と積算サンプル数との対応を示す近似線を求めることができる。
【００２５】
次に、近似線を求める方法について説明する。近似線としては、積算ビット数と積算サンプル数との対応を示す複数のポイントをパラメータとする最小二乗法による直線近似が一般的である。尚、詳しくは後述する第２の実施形態で説明するが、近似線を他の方法により求めても良い。この場合、近似線の傾きは、１ビット当たりが何サンプルであるか（幾つのサンプル数に相当するか）を意味している。ビットに対してオーバーサンプリングした位置精度の情報は、例えば１ビットを８倍でオーバーサンプリングした場合では、サンプル数である８分の１の精度しか有しないが、近似線を求める方法によれば、複数ビットを対象として近似線を求める（フィッティングする）ことで、サンプル数である８分の１以上の精度で１ビット当たりが何サンプル数になるかを判定し得る利点がある。
【００２６】
次に、近似線を求める対象の区間について説明する。近似線を求める対象の区間としてはプリアンブルの区間を用いることが考えられる。図７は、プリアンブルの区間を用いて近似線を求める態様を示している。データ通信の開始時にはプリアンブルとして１０ビット程度の「０」、「１」、「０」、「１」…という規則的なパターンが送信されるのが通常であり、各ビットの値が既知であるプリアンブルの区間を用いて近似線を求めることで、プリアンブルの以降に送信される各ビットの値が未知であるデータについて、各ビットの値を判定することができる。
【００２７】
即ち、図７では、プリアンブルが例えば４ビットの場合を示しており、プリアンブルの１ビット目、２ビット目、３ビット目、４ビット目についてそれぞれ積算サンプル数を算出し、積算ビット数を横軸とすると共に積算サンプル数を縦軸として積算ビット数と積算サンプル数との対応を示す４つのポイントをプロットし、近似線を最小二乗法により求める。そして、４ビット目以降のビット列（プリアンブルに続くデータ）のうち同一の値が連続する区間のサンプル数を求め、そのサンプル数を含む積算サンプル数に対して近似線上で対応する積算ビット数を求めることで、その区間におけるデータのビット長を判定可能となる。即ち、積算サンプル数が「Ｓ１」であれば、その積算サンプル数である「Ｓ１」に対して近似線上で対応する積算ビット数である「Ｂ１」を求めることで、その区間におけるデータのビット長を判定可能となる。
【００２８】
尚、このようにしてデータ通信の開始時にプリアンブルの区間を用いて求めた（最初に求めた）近似線を、プリアンブルに続くデータに用いてデータのビット長を判定しても良いが、例えば正弦波のような周期ジッタでは、サンプル数が変動していくので、そのサンプル数の変動に対応するために近似線を常に更新し続けることが好適であり、プリアンブルの区間以外においても、ビットの値が既知となったデータの区間を用いて近似線を求めるようにしても良い。
【００２９】
即ち、図８では、例えば「０」、「１」、「１」、「１」、「０」、「０」、「１」…というように１ビット、３ビット、２ビット、１ビットが同一の値で連続する場合を示しており、データの１ビット目、４ビット目、６ビット目、７ビット目についてそれぞれ積算サンプル数を算出し、積算ビット数を横軸とすると共に積算サンプル数を縦軸として積算ビット数と積算サンプル数との対応を示す４つのポイントをプロットし、近似線を最小二乗法により求める。そして、７ビット目以降のビット列のうち同一の値が連続する区間のサンプル数を求め、そのサンプル数に対応する積算サンプル数を近似線により求めることで、その区間におけるデータのビット長を判定可能となる。即ち、積算サンプル数が「Ｓ２」であれば、その積算サンプル数である「Ｓ２」に対して近似線上で対応する積算ビット数である「Ｂ２」を求めることで、その区間におけるデータのビット長を判定可能となる。尚、「Ｂ２」は必ずしも整数とならず、小数となる場合もあり得るが、これに最も近い整数を特定することで、データのビット長を判定可能となる。
【００３０】
具体例について図９を参照して説明する。デシリアライザ７が１ビットを１０サンプル（１０倍）でオーバーサンプリングした場合に、データ判定回路８は、図９（ａ）に示すように、積算ビット数を積算ビット数算出部１０により算出し、積算サンプル数を積算サンプル数算出部１１により算出し、１０個のポイントを取得する。尚、ビット列の１ビット目から５ビット目がプリアンブルの区間であり、ビット列の６ビット目以降がデータの区間である。次いで、データ判定回路８は、積算ビット数と積算サンプル数との対応を示す１０個のポイントをプロットし、近似線を最小二乗法により求める。
【００３１】
即ち、積算ビット数を「ｘｎ」とし、積算サンプル数を「ｙｎ」とし（ｎは自然数）、１０個のポイントを（ｘ１，ｙ１）、（ｘ２，ｙ２）、…、（ｘｎ，ｙｎ）として最小二乗法により近似線を以下の計算式により求める。
【００３２】
【数１】
0005459421.tif 000002
本実施形態では、ｎ＝１０であり、
ｙ＝７．８５７ｘ−０．２７０５  …  （４）
を求める。
【００３３】
ここで、ビット列の１５ビット目の次に、同一の値が１５サンプルで連続した場合を想定する。同一の値が連続したサンプル数である「１５」を含めた積算サンプル数は、ビット列の１５ビット目までの積算サンプル数である「１１７」に「１５」を加算した「１３２」となり、上記した数式（４）にｙ＝１３２を代入すると、ｘ＝１６．８３５を求めることができる。よって、積算サンプル数が「１３２」に対応する積算ビット数として「１６．８３５」に最も近い自然数である「１７」を求めることができ、ビット列の１５ビット目の次に同一の値が連続する区間に対応するビット長として、このように近似線に基づいて求めた「１７」から直前の積算ビット数である「１５」を差引いた「２」を求めることができる。即ち、同一の値が連続した１５サンプルは２ビット長のデータに対応すると判定することができる。
【００３４】
図１０は、本実施形態の効果をシミュレーションにより求めた結果を示している。データ通信速度が１６［Ｍｂｐｓ］において、それぞれ±３％、±９％、±１２％、±２０％の周波数誤差が発生した場合の結果を示しており、直前の９ポイントに対して最小二乗法により直線フィッティングしている。又、比較対象として、位相補間方式のＣＤＲにおいて、それぞれ０、１、２％の周波数誤差が発生した場合の理論特性を併せて示している（位相同期方式のＣＤＲでは周波数誤差が３％ではロック不可能である）。シミュレーションにより求めた結果から明らかなように、本実施形態の方式では±２０％程度の周波数誤差があるにも関わらずジッタ周波数が１．０×１０５［Ｈｚ］程度より低い周波数にて公知の位相補間方式のＣＤＲよりもジッタトレランス（ジッタ耐性）が高い値で得られていることが判る。
【００３５】
以上に説明したように第１の実施形態によれば、データ受信装置３において、ビット列のビット数を積算して積算ビット数を求め、各ビットをオーバーサンプリングしたサンプル数を積算して積算サンプル数を求め、積算ビット数と積算サンプル数との対応を示す近似線を求め、積算したサンプル数以降の同一の値が連続する区間に対応するビット列のビット長を近似線に基づいて判定するようにした。これにより、受信側発振源４が送信側発振源６とある程度のクロックの周波数誤差を有していたとしても、オーバーサンプリングの周期（サンプル数の逆数）よりも高い精度でビット列の１ビット当たりが何サンプルであるかを正確に求めることができる。そして、ビット列の１ビット当たりのサンプル数を求め、オーバーサンプリングデータの同一の値が連続する区間のデータ数を当該求めたサンプル数で除すことで、その区間に対応するビット列のビット長を正確に判定することができ、データを好適に判定することができる。即ち、従来の方法とは異なり、過去に受信したビット列から積算ビット数と積算サンプル数との対応を示す近似線を求め、値を判定するデータのビット数とサンプル数との対応が当該近似線に追従するという特徴に着目したことで、周波数誤差や周期ジッタやランダムジッタ等の劣化要因の影響を受けることなく、データを好適に判定することができる。
【００３６】
又、近似線を最小二乗法により求めるようにしたので、近似線を公知の汎用的な方法にしたがって簡単に求めることができる。更に、近似線をプリアンブルの区間を用いて求めるようにしたので、近似線を求めるための特別なビット列を別途用意する必要がなく、プリアンブルを有効に活用することができる。
【００３７】
（第２の実施形態）
以下、本発明の第２の実施形態について、図１１から図１４を参照して説明する。
上記した第１の実施形態では、近似線を複数のポイントをパラメータとする最小二乗法による直線近似により求めたが、第２の実施形態では、近似線を複数のポイントのうち両端のポイントを用いた直線近似により求める。即ち、図１１に示すように、複数のポイントのうち最小ビットである１ビット目のポイントと最大ビットである４ビット目のポイントとを結ぶ直線を近似線として求める。この場合も、積算サンプル数が「Ｓ３」であれば、その積算サンプル数である「Ｓ３」に対して近似線上で対応する積算ビット数である「Ｂ３」を求めることで、その区間におけるデータのビット長を判定可能となる。
【００３８】
近似線を求める方法としては、積算ビット数を「ｘｎ」とし、積算サンプル数を「ｙｎ」とし（ｎは自然数）、１ビット目のポイントを（ｘ１，ｙ１）、ｎビット目のポイントを（ｘｎ，ｙｎ）として近似線を以下の計算式により求める。
【００３９】
【数２】
0005459421.tif 000003
このように近似線を直線補完により求める方法では、第１の実施形態で説明した最小二乗法により求める方法よりも計算を簡略化することできる。
【００４０】
図１２から図１４は、第１の実施形態と同様に、本実施形態の効果をシミュレーションにより求めた結果を示している。この場合も、データ通信速度が１６［Ｍｂｐｓ］において、それぞれ０％、±３％、±９％、±１２％、±２０％の周波数誤差が発生した場合の結果を示しており、直前の９ポイントに対して最小二乗法により直線フィッティングしている。６サンプル、８サンプル、１０サンプルをパラメータとしており、サンプル数が増加するにしたがって特性が改善することが判る。周波数誤差によりサンプル数をどの程度に決定すれば良いかを適宜選択することができるが、一般的なデータ通信を考えると、サンプル数を６〜１０に決定すれば良いと考えられる。
【００４１】
（第３の実施形態）
以下、本発明の第３の実施形態について、図１５を参照して説明する。
第３の実施形態では、近似線を求める際に用いるポイント数を可変とする。データ通信が停止した状態から再開する場合に、データ受信装置３の動作（受信クロック）が安定状態に達するまでの間に、プリアンブルのビット列のうち最初の数ビット（例えば１ビット程度）が欠落する可能性がある。そのため、近似線をプリアンブルのビット列のうち先頭から設定ビット数（例えば最初の１ビット）を除いたビット数に対応するポイントを用いて求めても良い。このように構成すれば、プリアンブルのビット列のうち最初の数ビットが欠落したとしても、その影響を排除することができ、データ通信を安定させることができる。
【００４２】
又、プリアンブルが例えば１０ビットであると、データ通信の開始時に近似線を求めるために用い得るポイント数は最大で１０ポイントであるが、データ通信が進行するにしたがって近似線を求めるのに用いるポイント数を増やしても良い。即ち、図１５に示すように、データ通信の開始時では、近似線をプリアンブルのビット列に相当する１０ポイントを用いて求め、データ通信が進行するにしたがって、データを伝送する通信線路のノイズ耐性を考慮して、近似線をデータのビット列に相当する１０以上のポイントを用いて求めても良い。又、近似線を求めるのに用いるポイント数を無限に増やすと、回路規模の増大を招くことになるので、例えば１００ポイント未満（ビット列のビット番号が閾値未満）程度で飽和し、以降は一定とするようにしても良い。このように構成すれば、回路規模の増大を未然に回避することができる。更に、値を判定したいデータに近いポイントを用いて近似線を求め、その求めた近似線を用いてビット長を判定することで、極力近い劣化要因を反映した上でビット長を判定することができる。
【００４３】
（第４の実施形態）
以下、本発明の第４の実施形態について、図１６を参照して説明する。
第１から第３の実施形態では、近似線を求める場合に掛け算に加えて割り算をも行うが、第４の実施形態では、掛け算回路だけを用いて同等の処理を行う。
第１の実施形態及び第２の実施形態の何れの方法でも近似線をｙ＝ａｘ＋ｂとすると、ｎ＋１番目のビットの次に得られたサンプル数がＳ＿ｎ＋１であれば、
（ｙｎ＋Ｓ＿ｎ＋１）＝ａ（ｘｎ＋Ｂ＿ｎ＋１）＋ｂ  …  （８）
に最も近くなるようなＢ＿ｎ＋１としてのビット数を求めるが近似線の目的である。
【００４４】
第１の実施形態及び第２の実施形態の何れの方法でも
ａ＝ｅ／ｄ、ｂ＝ｆ／ｄ（ｄ、ｅ、ｆは整数）
となるので、これらを数式（８）に代入して変形すると、
ｄ（ｙｎ＋Ｓ＿ｎ＋１）＝ｅ（ｘｎ＋Ｂ＿ｎ＋１）＋ｆ
となる。例えばＢ＿ｎ＋１としてエンコードから１、２、３ビットの何れかの可能性しかなければ、ｄ（ｙｎ＋Ｓ＿ｎ＋１）に対してｅ（ｘｎ＋１）＋ｆ、ｅ（ｘｎ＋２）＋ｆ、ｅ（ｘｎ＋３）＋ｆをそれぞれ計算して最も近い値を求めることで、割り算回路を省略することができる。このように構成すれば、割り算回路を省略することができる分、回路規模の増大を未然に回避することができる。
【００４５】
尚、エンコードする際に最大連続ビット長を３ビットとすることが望ましい理由は以下の通りである。即ち、シリアルデータ通信で一般的に用いられているエンコードの方式は８ｂ１０ｂエンコードであり、８ｂ１０ｂエンコードでは最大連続ビット長は５ビットであるが、本願発明では、計算を簡単にするために最大連続ビット長は５ビットよりも短い方が望ましい。８ｂ１０ｂエンコードはＬＳＩの内部処理の都合上の理由により１Ｂｙｔｅ（８ビット）単位で行われる。同様の理由から１Ｂｙｔｅよりも小さい単位でのエンコードでは、１Ｎｉｂｂｌｅ（４ビット）単位で処理可能であるので、４ｂ５ｂエンコードが好適である。４ビットで表現可能な数値は１６種類（０〜１５）であるので、４ｂ５ｂエンコードした後の５ビットで１６種類の制御コードを表現する必要がある。ところが、５ビットで最大連続ビット長を２ビットとする組み合わせは、「０１０１０」、「１０１０１」、「０１０１１」、「１０１００」、「０１００１」、「１０１１０」、「０１１０１」、「１００１０」、「００１０１」、「１１０１０」、「０１１００」、「１００１１」、「００１００」、「１１０１１」の１４種類しか存在せず、４ビットで表現可能な数値である１６種類に達しない。よって、４ｂ５ｂエンコードの方式を採用して最大連続ビット長を３ビットとすることが望ましい。
【００４６】
ところで、上記した場合では、Ｂ＿ｎ＋１としてエンコードから１、２、３ビットの何れかの可能性しかない場合を説明したが、実際のデータ通信においては、そのエンコードにおいて、最大連続ビット長が決まっている。例えばＰＣＩ  ｅｘｐｒｅｓｓや他のデータ通信において用いられている８ｂ／１０ｂエンコードにおいては最大連続ビット長が５ビットである。この場合、上記したように割り算回路を省略して１、２、３、４、５ビットの何れが最も近い値であるかを求めれば良く、仮に６ビットが最も近い値であったと求まったとしても、誤差のために５ビットが６ビットと誤って認識された可能性が高く、５ビット以上の場合は一律５ビットであると認識するようにしても良い。図１６は、データ通信速度が１６［Ｍｂｐｓ］において、連続３ビットとなるエンコードに対して本実施形態を適用した結果を示す。周波数誤差が±２０%の何れの場合でも本実施形態を適用することで、ジッタトレランスが改善されている（本実施形態を適用しない場合よりも高い値、又は同等の値が得られている）ことが判る。このように構成すれば、エンコードにおける最大連続ビット長以上のビット数を計算するための回路を削減することができると共に、ジッタトレランスをより向上させることが可能となる。
【００４７】
（第５の実施形態）
以下、本発明の第５の実施形態について、図１７を参照して説明する。
第１から第４の実施形態では、データ送信装置とデータ受信装置とが１対１で接続されているが、第５の実施形態では、データ送信装置とデータ受信装置とが１対複数で接続されている。
データ通信システム２１は、データの送信を行う一のデータ送信装置２と、データの受信を行う複数のデータ受信装置２２ａ〜２２ｎとを有して構成されている。複数のデータ受信装置２２ａ〜２２ｎは、同一のＬＳＩに実装されていても良いし、異なるＬＳＩに実装されていても良い。データ受信装置２２ａ〜２２ｎは、それぞれ第１の実施形態で説明したデータ受信装置３と同等であり、受信側発振源２３ａ〜２３ｎと、デシリアライザ２４ａ〜２４ｎと、データ判定回路２５ａ〜２５ｎとを有する。データ判定回路２５ａ〜２５ｎは、それぞれ第１の実施形態で説明したデータを判定する機能、積算ビット数を算出する機能、積算サンプル数を算出する機能を有している。
【００４８】
データ送信装置２は、例えば複数のデータ受信装置２２ａ〜２２ｎのうち何れか又は全てを送信先とするシリアルデータを同時に又は予め規定された順序にしたがって複数のデータ受信装置２２ａ〜２２ｎに送信する。複数のデータ受信装置２２ａ〜２２ｎは、それぞれデータ送信装置２からシリアルデータを受信すると、その受信したシリアルデータを第１から第４の実施形態で説明したように処理する。
【００４９】
この場合、複数のデータ受信装置２２ａ〜２２ｎにおいては、それぞれ受信側発振源２３ａ〜２３ｎを独立して有しているので、送信側発振源６とのクロックの周波数誤差が独自に（個別に）発生することになるが、それぞれが独立して近似線を求めることでデータを好適に判定することができる。このようにデータ受信装置２２ａ〜２２ｎが複数であったとしても、それぞれが独立して近似線を求めることで、それぞれの周波数誤差による影響を解消することができる。又、例えばデータ受信装置を増設しようとする場合でも、他のデータ受信装置における受信側発振源の受信クロックの周波数誤差を考慮することなく、その増設する受信側発振源の受信クロックの周波数を選定することができ、データ通信システム２１を拡張する際の制約を低減することができる。
【００５０】
（第６の実施形態）
以下、本発明の第６の実施形態について、図１８を参照して説明する。
第１から第５の実施形態では、データ送信装置２からデータ受信装置３にデータが片方向に伝送されるデータ通信であるが、第６の実施形態では、データの送信と受信との双方の機能を有するデータ送受信装置間でデータが双方向に伝送されるデータ通信である。
データ通信システム３１は、それぞれがデータの送信及び受信を行うデータ送受信装置３２、３３を有して構成されている。データ送受信装置３２は、データ送信機能としての送信側発振源３４と、シリアライザ３５とを有すると共に、データ受信機能としての受信側発振源３６と、デシリアライザ３７と、データ判定回路３８とを有する。データ送受信装置３３は、データ送信機能としての送信側発振源３９と、シリアライザ４０とを有すると共に、データ受信機能としての受信側発振源４１と、デシリアライザ４２と、データ判定回路４３とを有する。データ判定回路３８、４３は、それぞれ第１の実施形態で説明したデータを判定する機能、積算ビット数を算出する機能、積算サンプル数を算出する機能を有している。尚、データ送受信装置３２では送信側発振源３４と受信側発振源３６とを共通に設けても良いし、データ送受信装置３３では送信側発振源３９と受信側発振源４１とを共通に設けても良い。
【００５１】
上記した構成では、データ送受信装置３２からデータ送受信装置３３へのデータ伝送とデータ送受信装置３３からデータ送受信装置３２へのデータ伝送とを同時に行い、データ伝送を全二重通信により行う。この場合も、データ送受信装置３２、３３は、シリアルデータを受信すると、その受信したシリアルデータを第１から第４の実施形態で説明したように処理する。
【００５２】
（第７の実施形態）
以下、本発明の第７の実施形態について、図１９を参照して説明する。
第６の実施形態では、データ送受信装置３２、３３がデータ伝送を全二重通信により行うが、第７の実施形態では、データ送受信装置がデータ伝送を半二重通信により行う。
データ通信システム５１は、それぞれがデータの送信及び受信を行うデータ送受信装置５２、５３を有して構成されている。データ送受信装置５２は、データ送信機能としての送信側発振源３４と、シリアライザ３５とを有すると共に、データ受信機能としての受信側発振源３６と、デシリアライザ３７と、データ判定回路３８とを有する。又、データの送受信タイミングを切換えるデータ切換回路５４を有する。データ送受信装置５３は、データ送信機能としての送信側発振源３９と、シリアライザ４０とを有すると共に、データ受信機能としての受信側発振源４１と、デシリアライザ４２と、データ判定回路４３とを有する。又、データの送受信タイミングを切換えるデータ切換回路５５を有する。
【００５３】
上記した構成では、データ送受信装置５２、５３はデータ切換回路５４がデータ送受信装置５２におけるデータの送受信タイミングを切換え、データ切換回路５５がデータ送受信装置５３におけるデータの送受信タイミングを切換えることで、データ送受信装置５２からデータ送受信装置５３へのデータ伝送とデータ送受信装置５３からデータ送受信装置５２へのデータ伝送とを時分割で行い、データ伝送を半二重通信により行う。
【００５４】
（第８の実施形態）
以下、本発明の第８の実施形態について、図２０及び図２１を参照して説明する。
第２の実施形態で説明した近似線を複数のポイントのうち両端のポイントを用いた直線近似により求める方法では、計算式に示したように掛け算に加えて割り算をも行うが、第８の実施形態では、シフト回路を用いて同等の処理を行う。
【００５５】
具体的に説明すると、データ判定回路８は、積算ビット数と積算サンプル数とが図２０に示す関係にある場合に、直線補完する区間として必ず２ｎ（ｎは整数）ビット分の区間を選択する。例えば図２０に示すように直線補完する区間として４ビット分の区間を選択する。この場合、直線補完する区間として選択した４ビット分の区間に対応する積算サンプル数を「Ｓｎ」とすると、１ビット分に相当するサンプル数は「Ｓｎ／４」となる。ここで、積算サンプル数を直線補完する区間のビット数で割る計算は、直線補完する区間が４ビットであれば、実際のＬＳＩの中では固定小数点が移動するだけである。即ち、例えば積算サンプル数が「３０」であるとすると、
３０／４＝７．５
を求めることになるが、図２１（ａ）に示すように、小数点を移動するだけで割り算と同等の結果を得ることができる。尚、実際のＬＳＩの中では小数点に相当するものはビットのどの部分に小数点が存在するかを決定しているだけであり、小数点を移動する前後でビット数は不変であるので、具体的なシフト回路が存在する訳でなく、新規な回路構成が必要となることはない。
【００５６】
又、このように１ビット当たりのサンプル数を求めることができれば、１．５ビット当たりのサンプル数や、２．５ビット当たりのサンプル数をも求めることが可能となる。即ち、図２１（ｂ）に示すように、１ビット当たりのサンプル数を右１ビットシフトすることで、０．５ビット当たりのサンプル数を求めることができ、１ビット当たりのサンプル数と０．５ビット当たりのサンプル数とを加算することで、１．５ビット当たりのサンプル数を求めることもできる。又、図２１（ｃ）に示すように、１ビット当たりのサンプル数を左１ビットシフトすることで、２ビット当たりのサンプル数を求めることができ、２ビット当たりのサンプル数と０．５ビット当たりのサンプル数とを加算することで、２．５ビット当たりのサンプル数を求めることもできる。
【００５７】
そして、このように整数のビット当たりのサンプル数を求めるだけでなく、小数のビット当たりのサンプル数を求めることで、求めたサンプル数からビット長を求めることができる。例えば求めたサンプル数が０．５ビット当たりのサンプル数よりも大きく且つ１．５ビット当たりのサンプル数よりも小さければ、求めたサンプル数のビット長を「１」と求めることができる。又、例えば求めたサンプル数が１．５ビット当たりのサンプル数よりも大きく且つ２．５ビット当たりのサンプル数よりも小さければ、求めたサンプル数のビット長を「２」と求めることができる。
【００５８】
（第９の実施形態）
以下、本発明の第９の実施形態について、図２２を参照して説明する。第８の実施形態では、直線補完する区間として必ず２ｎ（ｎは整数）ビット分の区間を選択する場合を前提としたが、プリアンブルの部分ではビット列が規則的なパターンの繰返しであり、任意のビット数を選択可能であるので、２ｎビット分の区間を容易に選択することができる。しかしながら、データの部分ではビット列がランダムであり、２ｎビット分の区間を選択することができない場合がある。即ち、直線補完する区間として８（２３）ビット分の区間を選択しようとしても、図２２に示すように、データのビット列において８ビット目に変化点が存在せずに７ビット目や９ビット目に変化点が存在すると、８ビット分の区間に相当するサンプル数を求めることができない。
【００５９】
この場合、データのビット列を、ビット数が２ｎとなり、且つビットの値が全て同一である第１区間と、ビット数が２ｎとならず、且つ先頭ビットの値が当該第１区間のビットの値と異なる第２区間とに区分する。図２２では、Ａ１に示す区間（第１区間）のビット数が２ｍ（ｍは整数）であれば、Ａ１に示す区間のサンプル数に対して、上記した第８の実施形態で説明したようにビットシフトを行うことで、Ａ１に示す区間の１ビット当たりのサンプル数を求めることができる。このようにして求めたＡ１に示す区間の１ビット分のサンプル数と７ビットの区間（第２区間）のサンプル数とを加算することで、８ビット分のサンプル数を求めることができる。そして、上記した第８の実施形態で説明した計算と同様に、８ビットを平均したサンプル数を掛け算回路や割り算回路を用いることなく求めることができ、Ｂに示す区間のビット長を求めることができる。尚、以上は、８ビットを平均したサンプル数を求める場合を説明したが、２ｎ（ｎは整数）ビットであれば、これと同様にして、２ｎビットを平均したサンプル数を求めることができる。又、Ａ１に示す区間（第１区間）に７ビットの区間（第２区間）が続く場合を説明したが、７ビットの区間（第２区間）にＡ１に示す区間（第１区間）が続く場合も同様であり、即ち、第１区間と第２区間との前後関係はどのようであっても良い。
【００６０】
（第１０の実施形態）
以下、本発明の第１０の実施形態について、図２３及び図２４を参照して説明する。第９の実施形態では、Ａ１に示す区間が２ｍ（ｍは整数）である場合を説明したが、図２３に示すように、Ａ２に示す区間が２ｍ（ｍは整数）でない場合がある。この場合、データのビット列を、ビットの値が全て同一である第３区間と、先頭ビットの値が当該第３区間のビットの値と異なる第４区間とに区分する。図２３では、Ａ２に示す区間（第３区間）の整数単位のサンプル数を求めることはできるが、１ビット当たりのサンプル数を求めようとすると、そのサンプル数を２ｍ（ｍは整数）でない値（図２３では「３」）で割るための割り算回路が必要となる。
【００６１】
このような場合に最も簡便な方法はテーブルを用意することである。例えば最大連続ビット長を３ビットとしてエンコードするデータ通信では、Ａ２に示す区間は１ビット、２ビット、３ビットの何れかである。Ａ２に示す区間が１ビットであれば、必ず所望の８ビット分のサンプル数を求めることができる。Ａ２に示す区間が２ビットであれば、上記した第９の実施形態を適用することで、８ビット分のサンプル数を求めることができる。即ち、Ａ２に示す区間が３ビットである場合だけを考慮すれば良い。
【００６２】
前提条件として、１ビット当たりのサンプル数を「１０」と設定とした場合、３ビット分のサンプル数は「３０」である。データの送信側及び受信側の基準周波数の誤差がそれぞれ１０％あると仮定すると、データの送信側及び受信側では２０％の誤差となる。よって、サンプル数が「３０」であれば、図２４に示すように、２０％の誤差を考慮すると、図２４に示すように、「２４〜３６」の１３通りのテーブルを用意すれば良く、マージンとしてそれぞれ２通りのテーブルを考慮すると、「２２〜３８」の１７通り程度のテーブルを用意すれば良く、回路規模の増加は非常に小さい。本実施形態では、１ビット当たりのサンプル数を求めるには、３ビット分のサンプル数を「３」で割るので、割り切れない分が誤差となるが、この誤差は２％程度と十分に小さく、判定精度への影響は殆どないと言える。又、小数部は３列毎に繰返されており、実際にはテーブルはビット演算で代用することで更に回路規模の増加を抑制することができる。このようにして求めたＡ２に示す区間の２ビット分のサンプル数と６ビットの区間（第４区間）のサンプル数とを加算することで、８ビット分のサンプル数を求めることができる。そして、上記した第８の実施形態で説明した計算と同様に、８ビットを平均したサンプル数を掛け算回路や割り算回路を用いることなく求めることができ、Ｂに示す区間のビット長を求めることができる。又、Ａ２に示す区間（第３区間）に６ビットの区間（第４区間）が続く場合を説明したが、６ビットの区間（第４区間）にＡ２に示す区間（第３区間）が続く場合も同様であり、即ち、第３区間と第４区間との前後関係はどのようであっても良い。
【００６３】
（第１１の実施形態）
以下、本発明の第１１の実施形態について、図２５を参照して説明する。第１０の実施形態では、Ａ２に示す区間が２ｍ（ｍは整数）でない場合にテーブルを用いて１ビット当たりのサンプル数を求める方法を説明した。しかしながら、最大連続ビット長を３ビット等の短く設定してエンコードするデータ通信ではテーブルを用いる方法は有効であるが、最大連続ビット長を長く設定してエンコードするデータ通信ではテーブルの規模が大きくなるので現実的ではない。
【００６４】
Ｂに示す区間のビット長を判定するためには、Ａ２に示す区間の１ビット当たりのサンプル数が必要となる（小数単位であるか整数単位であるかは問わない)。ところで、Ｂに示す区間のビット長を判定するよりも先に、Ｃに示す区間のビット長を判定するためにＤに示す区間（第５区間）のサンプル数を過去に用いている。Ｄに示す区間にはＡ２に示す区間が含まれているので、Ｄに示す区間の１ビット当たりのサンプル数を過去に求めていれば、その求めたＤに示す区間の１ビット当たりのサンプル数に基づいてＡ２に示す区間の１ビット当たりのサンプル数を求めても良い。そして、このようにして求めたＡ２に示す区間の２ビット分のサンプル数と６ビットの区間のサンプル数とを加算することで、８ビット分のサンプル数を求めることができる。そして、上記した第８の実施形態で説明した計算と同様に、８ビットを平均したサンプル数を掛け算回路や割り算回路を用いることなく求めることができ、Ｂに示す区間のビット長を求めることができる。
【００６５】
尚、以上は、Ｄに示す区間が２ｎビットである場合を説明したが、実際のデータ通信ではＤに示す区間が２ｎビットでない場合もある。この場合でも、それ以前のビット長を判定する際の結果を用いて上記した処理を再帰的に行えば良い。データ通信におけるフレームの先頭には必ずプリアンブルが存在し、そのプリアンブルの部分では必ず１ビット当たりの小数単位のサンプル数を求めることができるので、ビットの変化点が２ｎビット目でなくても、同じ手法を繰返せば良い。
【００６６】
（その他の実施形態）
本発明は、上記した実施形態にのみ限定されるものではなく、以下のように変形又は拡張することができる。
ＬＳＩ間のデータ通信に適用する構成に限らず、例えば車両に搭載されているＥＣＵとは関係ない他の用途のデータ通信に適用しても良い。
第５の実施形態と第６や第７の実施形態とを組み合わせても良い。即ち、複数のデータ受信装置２２ａ〜２２ｎを備える構成において、一のデータ送信装置２と複数のデータ受信装置２２ａ〜２２ｎとが両者の間でそれぞれデータ伝送を全二重通信又は半二重通信により行う構成であっても良い。
【符号の説明】
【００６７】
図面中、１、２１、３１、５１はデータ通信システム、２はデータ送信装置、３、２２ａ〜２２ｎはデータ受信装置、４、３４、３９は送信側発振源、６、２３ａ〜２３ｎ、３６、４１は受信側発振源、７、２４ａ〜２４ｎ、３７、４２はデシリアライザ（オーバーサンプリングデータ生成手段）、９、２５ａ〜２５ｎ、３８、４３はデータ判定部（データ判定手段）、１０は積算ビット数算出部（積算ビット数算出手段）、１１は積算サンプル数算出部（積算サンプル数算出手段）である。
【図１】
0005459421.tif 000004
【図２】
0005459421.tif 000005
【図３】
0005459421.tif 000006
【図４】
0005459421.tif 000007
【図５】
0005459421.tif 000008
【図６】
0005459421.tif 000009
【図７】
0005459421.tif 000010
【図８】
0005459421.tif 000011
【図９】
0005459421.tif 000012
【図１０】
0005459421.tif 000013
【図１１】
0005459421.tif 000014
【図１２】
0005459421.tif 000015
【図１３】
0005459421.tif 000016
【図１４】
0005459421.tif 000017
【図１５】
0005459421.tif 000018
【図１６】
0005459421.tif 000019
【図１７】
0005459421.tif 000020
【図１８】
0005459421.tif 000021
【図１９】
0005459421.tif 000022
【図２０】
0005459421.tif 000023
【図２１】
0005459421.tif 000024
【図２２】
0005459421.tif 000025
【図２３】
0005459421.tif 000026
【図２４】
0005459421.tif 000027
【図２５】
0005459421.tif 000028