(57)【要約】【課題】送受信間でクロックに同期させることなく、受信装置側では送信されてきたデータを一定の間隔で取り込むだけの受信動作を行なう。【解決手段】送信装置は、所定のデータ長の範囲内に必ず２ビット以上０又は１が連続するようにデータを符号化する。受信装置側では、一度ビット判定の誤りを起こし、且つサンプリング値が中間値となるデータが連続しても、誤りの伝播を所定のデータ長の範囲内に収めることができる。また、所定のデータ長の範囲内のすべてのビットのサンプリング値が中間値として受信されたときは、その中間値を使って中間値を判定する閾値を更新する。【選択図】  図１１
2007288660.tif 000002
【特許請求の範囲】
【請求項１】
送信装置と受信装置間において、サンプリング周期を定める受信クロックを送信クロックに同期させることなくデータ通信を行なうデータ通信システムであって、
前記送信装置は、所定のデータ長Ｎの範囲内に必ず２ビット以上０又は１が連続するようにデータ系列のビット変換を行ない、該ビット変換したデータ系列を表す信号を前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信し、
前記受信装置は、データ系列を表す受信信号を前記受信クロックで決められる周期に従ってサンプリングし、得られたサンプリング値が上の閾値以上であれば注目するビットが１と判定し、下の閾値未満であれば注目するビットが０と判定し、注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定する、
ことを特徴とするデータ通信システム。
【請求項２】
請求項１に記載のデータ通信システムにおいて送信装置として動作するデータ通信装置であって、
送信データを所定のデータ長のパケット単位に分離するパケット分離部と、
パケット単位で１と０からなるデータ系列のビット変換を行なって情報信号を生成するビット変換部と、
情報信号を含んだ送信データを、前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信する送信部を備え、
前記ビット変換部は、所定のデータ長Ｎの範囲内に必ず２ビット以上０又は１が連続するようなデータ系列にビット変換する、
ことを特徴とするデータ通信装置。
【請求項３】
請求項１に記載のデータ通信システムにおいて受信装置として動作するデータ通信装置であって、前記送信装置からは、所定のデータ長Ｎの範囲内に必ず２ビット以上０又は１が連続するようなデータ系列にビット変換された情報信号としてデータが送信され、
伝送路を介して送信装置からの伝送信号を受信する受信部と、
受信した信号中の情報信号について、前記受信クロックで決められる周期に従ってサンプリングして、１並びに０以外に中間値を含むサンプリング値を出力するＡ／Ｄ変換部と、
前記Ａ／Ｄ変換部から供給されるサンプリング値について、上の閾値以上であれば注目するビットが１と判定し、下の閾値未満であれば注目するビットが０と判定し、上の閾値と下の閾値の中間の範囲となる中間値であるときには直前のビットの値と反対の値を注目するビットの値として判定する値判定部と、
前記値判定部から供給される１及び０からなるデータ系列に対して、前記送信装置が行なったビット変換とは逆の変換を行なうとともに元のデータを復元するデータ処理部と、
を具備することを特徴とするデータ通信装置。
【請求項４】
前記値判定部は、前記の上の閾値並びに下の閾値を設定する閾値コントローラを備える、
ことを特徴とする請求項３に記載のデータ通信装置。
【請求項５】
前記閾値コントローラは、前記値判定部の出力がＮビット以上にわたって０と１が交互に続くことが所定回数だけ発生したときに、前記の上の閾値並びに下の閾値を更新する、
ことを特徴とする請求項４に記載のデータ通信装置。
【請求項６】
前記閾値コントローラは、前記Ａ／Ｄ変換部からの出力がＮビット以上続けて中間値として判別されたときに、そのＮビット分の前記Ａ／Ｄ変換部からの出力値のうち１又は０に最も近い値を新たな上又は下の閾値とする、
ことを特徴とする請求項４に記載のデータ通信装置。
【請求項７】
請求項１に記載のデータ通信システムにおいて送信装置として動作するためのデータ通信方法であって、
送信データを所定のデータ長のパケット単位に分離するパケット分離ステップと、
パケット単位で１と０からなるデータ系列のビット変換を行なって情報信号を生成するビット変換ステップと、
情報信号を含んだ送信データを、前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信する送信ステップを備え、
前記ビット変換ステップでは、所定のデータ長Ｎの範囲内に必ず２ビット以上０又は１が連続するようなデータ系列にビット変換する、
ことを特徴とするデータ通信方法。
【請求項８】
請求項１に記載のデータ通信システムにおいて受信装置として動作するためのデータ通信方法であって、前記送信装置からは、所定のデータ長Ｎの範囲内に必ず２ビット以上０又は１が連続するようなデータ系列にビット変換された情報信号としてデータが送信され、
伝送路を介して送信装置からの受信した信号中の情報信号について、前記受信クロックで決められる周期に従ってサンプリングして、１並びに０以外に中間値を含むサンプリング値を出力するＡ／Ｄ変換ステップと、
前記Ａ／Ｄ変換ステップにおいて得られたサンプリング値について、上の閾値以上であれば注目するビットが１と判定し、下の閾値未満であれば注目するビットが０と判定し、上の閾値と下の閾値の中間の範囲となる中間値であるときには直前のビットの値と反対の値を注目するビットの値として判定する値判定ステップと、
前記値判定ステップにおいて得られた１及び０からなるデータ系列に対して、前記送信装置が行なったビット変換とは逆の変換を行なうとともに元のデータを復元するデータ処理ステップと、
を具備することを特徴とするデータ通信方法。
【請求項９】
前記の上の閾値並びに下の閾値を設定する閾値設定ステップをさらに備える、
ことを特徴とする請求項８に記載のデータ通信方法。
【請求項１０】
前記Ａ／Ｄ変換ステップにおいて得られたサンプリング値が、前記値判定ステップにおいてＮビット以上続けて中間値として判別されたときに、前記閾値設定ステップでは、そのＮビット分の前記Ａ／Ｄ変換部からの出力値のうち１又は０に最も近い値を新たな上又は下の閾値として更新する、
ことを特徴とする請求項８に記載のデータ通信方法。
【請求項１１】
請求項１に記載のデータ通信システムにおける送信装置としての処理動作をコンピュータ上で実施するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータに対し、
送信データを所定のデータ長のパケット単位に分離するパケット分離手順と、
パケット単位で１と０からなるデータ系列のビット変換を行なって情報信号を生成するビット変換手順と、
情報信号を含んだ送信データを、前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信する送信手順を実行させ、
前記ビット変換手順では、所定のデータ長Ｎの範囲内に必ず２ビット以上０又は１が連続するようなデータ系列にビット変換する、
ことを特徴とするコンピュータ・プログラム。
【請求項１２】
請求項１に記載のデータ通信システムにおいて受信装置としての処理動作をコンピュータ上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記送信装置からは、所定のデータ長Ｎの範囲内に必ず２ビット以上０又は１が連続するようなデータ系列にビット変換された情報信号としてデータが送信され、前記コンピュータに対し、
伝送路を介して送信装置からの受信した信号中の情報信号について、前記受信クロックで決められる周期に従ってサンプリングして、１並びに０以外に中間値を含むサンプリング値を出力するＡ／Ｄ変換手順と、
前記Ａ／Ｄ変換手順によって得られたサンプリング値について、上の閾値以上であれば注目するビットが１と判定し、下の閾値未満であれば注目するビットが０と判定し、上の閾値と下の閾値の中間の範囲となる中間値であるときには直前のビットの値と反対の値を注目するビットの値として判定する値判定手順と、
前記値判定手順によって得られた１及び０からなるデータ系列に対して、前記送信装置が行なったビット変換とは逆の変換を行なうとともに元のデータを復元するデータ処理手順と、
前記Ａ／Ｄ変換手順によって得られたサンプリング値が、前記値判定手順においてＮビット以上続けて中間値として判別されたときに、そのＮビット分の前記Ａ／Ｄ変換部からの出力値のうち１又は０に最も近い値を新たな上又は下の閾値として更新する前記閾値設定手順と、
を実行させることを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、送受信装置の間で（１，０）の２値からなるデータ系列を交換するためのデータ通信を行なうデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムに係り、特に、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく、受信装置側では送信されてきたデータを一定の間隔で取り込むだけの受信動作を行なうデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムに関する。
【背景技術】
【０００２】
通信端末間のデータ送受信や、コンピュータ本体と周辺機器間のデータ転送、回路基板上の回路モジュール間のデータ信号の伝送など、データ通信技術の用途は幅広い。また、通信に用いられるメディアも、バスや同軸ケーブル、光ケーブルなどの有線、電磁波や光信号の照射を用いた無線などさまざまである。
【０００３】
ここで言うデータ通信とは、基本的には、（１，０）の２値からなる系列データを送信側と受信側とで交換し合う処理を意味する。そして、一般的なデータ通信方式では、データの受信側の装置は、送信側の装置から送信されてくるデータの値（１，０）を正しくサンプリングするために、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させておく必要がある。
【０００４】
受信クロックを送信クロックに同期させるには、例えば、送信側（若しくはそれ以外の外部装置）から受信側の装置に対して送信クロックと同じクロックを供給する方法と、受信側の装置自身が、送信されてきたデータに基づいて送信クロックと同じクロックを再生する（例えば、パケットのプリアンブルとして付加されている既知シーケンスを用いて同期を獲得する）方法がある。
【０００５】
前者の方法では、データ・シーケンスのための伝送路とは別にクロック供給路が必要になることから、その用途は基板上での通信や複数の配線が可能な通信に限定される。また、後者の方法は、シリアル通信（１チャンネル通信）で用いられることが多いが、受信側の装置で送信クロックを再生するためＰＬＬ（Ｐｈａｓｅ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）が一般的に用いられる。ＰＬＬは、例えば、ローパス・フィルタ（ＬＰＦ）と、位相比較器と、ループ・フィルタと、電圧制御発振器（ＶＣＯ）で構成されるが、特に高周波領域の信号を扱う場合、アナログ回路で構成しなければならないことが多く、高集積化には向いていない。また、ＰＬＬは、原理的に位相がロック（同期）するまでに時間を要することから、特に高速通信には不向きである。
【０００６】
受信側の装置に同期を確保させるための上述したそれぞれの方法には不利な点があるにも拘らず、それを許容しなければ、伝送容量を確保しつつ正確にデータを復元させることができない。
【０００７】
一方、受信装置側において、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく、送信されてきたデータを一定の間隔で取り込むだけの受信動作が可能となる通信システムが考えられる。
【０００８】
しかしながら、サンプリング定理から、サンプリング周波数の１／２以上の周波数の信号は正しくサンプリングすることができないため、受信装置ですべての値を正しくサンプリングさせるためには、送信装置は、送信クロックの周波数を受信クロックの周波数（サンプリング周波数）の１／２以下に設定する必要がある。すなわち、同期をとる手段が受信装置に用意されない場合、実際の伝送容量は想定する伝送容量の少なくとも１／２以下に低下することになり、伝送効率がよくない。
【０００９】
これに対し、送信クロックに受信クロックを同期させる手段が設けられていない場合であっても、送信されてきたデータを、正確に、且つ高い伝送容量を確保しつつ受信することができる通信システムについて提案がなされている（例えば、特許文献１を参照のこと）。
【００１０】
同通信システムでは、サンプリング値から、注目するビットの値が１であると判定する閾値を「上の閾値」と言い、注目するビットの値が０であると判定する閾値を「下の閾値」と言う。サンプリング値が上の閾値以上の値である場合は注目するビットの値は１として判定され、下の閾値未満の値である場合は注目するビットの値は０として判定される。また、サンプリング値が上の閾値より低く、下の閾値より高い値である場合、この値を中間値という。
【００１１】
上述した単純な閾値判定処理では、送信データの値が変化するタイミング、すなわち、１から０に、又は０から１に値が変化するタイミングと、受信装置におけるサンプル・タイミングがほぼ一致する場合には、サンプリング値が中間値となり、受信装置では１，０の値を判定することができない。しかし、注目するビットのサンプリング値が中間値であるということは、そのサンプル・タイミングで、１から０に、又は０から１に送信データの値が変化したことを表し、その直前のビットの値の反対の値として判定することができる。１つのビットの値を正しく判定することができれば、それ以降は、中間値をとるサンプリング値（変化点の存在の検出）と、直前の１ビットの値から推定することができる。したがって、送信クロックに受信クロックを同期させる手段が設けられていない場合であっても、受信装置側では、送信されてきたデータを、正確に、且つ高い伝送容量を確保しつつ受信することができる。
【００１２】
具体的には、受信装置で、ある１ビットの値が１として正しく判定することができ、その次の注目するビットのサンプル・タイミングで中間値がサンプリングされた場合、そのことは送信データに値の変化（１から０）が生じたことを表すから、注目するビットの値は０として推定することができる。また、受信装置で、ある１ビットの値が０として正しく判定することができ、その次の注目するビットのサンプル・タイミングで中間値がサンプリングされた場合、そのことは送信データに値の変化（０から１）が生じたことを表すから、注目するビットの値は１として推定することができる。
【００１３】
しかしながら、このようなデータ通信方式においては、中間値となる範囲を定義するための、注目するビットの値が１であると判定する「上の閾値」と、０であると判定する「下の閾値」のそれぞれを適切に決める必要がある。
【００１４】
これらの閾値が適切に決められていないと、誤ったビット判定を行なうことになってしまう。適切な閾値を決めるには、系のノイズなどの信号品質を知らなければならず、送受信装置の間で事前に系の状態を知ることは難しい。また、チャネル状況など系の状態に応じて適切な閾値は時間の経過とともに変動するため、系の状態変化に対して適切に閾値を追従させることも、受信側でのエラーの状態を反映しなければならず、困難である。
【００１５】
また、注目するビットのサンプリング値が中間値であるときにはその直前のビットの値の反対の値として判定するというビット値の判定方式を適用しているため、受信側で一度ビット判定の誤りを起こすと、その誤ったビットに続きサンプリング値が中間値となるデータが連続した場合には、中間値となるデータが連続する期間はビット誤りが伝播し続けるという問題が発生する。
【００１６】
【特許文献１】特開２００５−３５４１９０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１７】
本発明の目的は、受信装置側において、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく、送信されてきたデータを一定の間隔で取り込むだけの受信動作によって、正確に、且つ高い伝送容量を確保しつつ受信することができる、優れたデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムを提供することにある。
【００１８】
本発明のさらなる目的は、受信装置側では、送信されてきたデータを一定の間隔で取り込むだけの受信動作を行ない、サンプリング値が注目するビットの値が１であると判定する上の閾値以上の値であれば注目するビットの値を１と判定し、サンプリング値が０であると判定する下の閾値未満の値である場合は注目するビットの値を０として判定して、同期タイミングを確保しなくても、正確に、且つ高い伝送容量を確保しつつ受信することができる、優れたデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムを提供することにある。
【００１９】
本発明のさらなる目的は、サンプリング値が上の閾値より低く、下の閾値より高い中間値となる場合であっても（０，１）を正確に判定して、高い伝送容量を確保することができる、優れたデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムを提供することにある。
【課題を解決するための手段】
【００２０】
本発明は、上記課題を参酌してなされたものであり、その第１の側面は、送信装置と受信装置間において、サンプリング周期を定める受信クロックを送信クロックに同期させることなくデータ通信を行なうデータ通信システムであって、
前記送信装置は、所定のデータ長の範囲内に必ず２ビット以上０又は１が連続するようにデータ系列のビット変換を行ない、該ビット変換したデータ系列を表す信号を前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信し、
前記受信装置は、データ系列を表す受信信号を前記受信クロックで決められる周期に従ってサンプリングし、得られたサンプリング値が上の閾値以上であれば注目するビットが１と判定し、下の閾値未満であれば注目するビットが０と判定し、注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定する、
ことを特徴とするデータ通信システムである。
【００２１】
但し、ここで言う「システム」とは、複数の装置（又は特定の機能を実現する機能モジュール）が論理的に集合した物のことを言い、各装置や機能モジュールが単一の筐体内にあるか否かは特に問わない（以下、同様）。
【００２２】
本発明は、送受信装置の間で（１，０）の２値からなるデータ系列を交換するためのデータ通信を行なうデータ通信システムに関する。この種のデータ通信においては、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させておくのが一般的であり、受信装置に送信クロックと同期したクロック信号を供給したり、受信装置で送信クロックとの同期を獲得したりする必要があり、回路規模が増大するなどの問題がある。
【００２３】
これに対し、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく、送信されてきたデータを一定の間隔で取り込むだけの受信動作が可能となる通信システムが考えられている。すなわち、受信装置側では、データ系列を表す受信信号を前記受信クロックで決められる周期に従ってサンプリングし、得られたサンプリング値が上の閾値以上であれば注目するビットが１と判定し、下の閾値未満であれば注目するビットが０と判定する。そして、注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定することによって、高い伝送容量を確保しながら正確に受信処理することができる。
【００２４】
また、受信装置側において、注目するビットのサンプリング値が中間値であるときにはその直前のビットの値の反対の値として判定するという上記のビット値判定方式を適用する場合には、一度ビット判定の誤りを起こすと、その誤ったビットに続きサンプリング値が中間値となるデータが連続すると中間値となるデータが連続する期間はビット誤りが伝播し続けるという問題がある。
【００２５】
そこで、本発明に係るデータ通信システムでは、送信装置は、ある決められたデータ長の範囲内に必ず２ビット以上０又は１が連続するようにビット変換して、これを受信クロックと同じ周波数の送信クロックを用いて送信するようにしている。
【００２６】
受信装置側では、注目するビットのサンプリング値が中間値であるときにはその直前のビットの値の反対の値として判定するというビット値の判定方式を適用するが、２ビット以上同じビットが連続する送信データを受信すると、その２ビットのうち中間値としてサンプリングされるのは多くとも１ビットであり、少なくとも１ビットは「０」又は「１」のどちらかのビット値として判定され、そのデータを受信する前にビット判定誤りがあっても、「０」又は「１」としてサンプリングされたビットにより誤りの伝播は停止する。すなわち、一度ビット判定の誤りを起こし、その誤ったビットに続きサンプリング値が中間値となるデータが連続した場合であっても、誤りの伝播を上記の符号化方式で用いる変換テーブルによって定まるデータ長の範囲内に収めることが可能となり、通信の信頼性を向上することができる。
【００２７】
また、受信装置は、ある決められたデータ長の範囲内のすべてのビットのサンプリング値が中間値として受信されたときに、その中間値を使って中間値を判定する閾値を更新するように構成されている。
【００２８】
送信装置において、Ｎビット以上は０と１が交互に続くことがなくなるような変換テーブルを用いてビット変換を施したデータ系列を送信する場合には、受信装置側では、正しく受信できている限り、Ｎビット以上続けて受信データが中間値としてサンプリングされることはない。言い換えれば、Ｎビット以上続けて中間値がサンプリングされたときには、閾値が適切でないと推定することができる。この場合、Ｎビットが閾値変更判別単位となる。そして、例えばＮビットのサンプリング値のうち１又は０に最も近い値を新たな閾値の候補にすることができる。引き続きＮビット以上の中間値のサンプリングが続くようであれば、Ｎビットのサンプリング値のうち１又は０に最も近い値を新たな閾値に設定する。
【００２９】
したがって、本発明に係るデータ通信システムによれば、受信装置は、信号の受信状態に応じて適切な閾値を決定することが可能であるから、時間の経過とともに受信状態が変化するような通信環境においても、閾値の設定ミスによるビット誤りを減少することができ、データの復号精度を向上させることができる。また、事前の閾値設定を厳密にする必要がなくなるので、システムの設計が簡素化される。
【００３０】
また、本発明の第２の側面は、上述した第１の側面に係るデータ通信システムにおける送信装置としての処理動作をコンピュータ上で実施するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータに対し、
送信データを所定のデータ長のパケット単位に分離するパケット分離手順と、
パケット単位で１と０からなるデータ系列のビット変換を行なって情報信号を生成するビット変換手順と、
情報信号を含んだ送信データを、前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信する送信手順を実行させ、
前記ビット変換手順では、所定のデータ長Ｎの範囲内に必ず２ビット以上０又は１が連続するようなデータ系列にビット変換する、
ことを特徴とするコンピュータ・プログラムである。
【００３１】
また、本発明の第３の側面は、上述した第１の側面に係るデータ通信システムにおいて受信装置としての処理動作をコンピュータ上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記送信装置からは、所定のデータ長Ｎの範囲内に必ず２ビット以上０又は１が連続するようなデータ系列にビット変換された情報信号としてデータが送信され、前記コンピュータに対し、
伝送路を介して送信装置からの受信した信号中の情報信号について、前記受信クロックで決められる周期に従ってサンプリングして、１並びに０以外に中間値を含むサンプリング値を出力するＡ／Ｄ変換手順と、
前記Ａ／Ｄ変換手順によって得られたサンプリング値について、上の閾値以上であれば注目するビットが１と判定し、下の閾値未満であれば注目するビットが０と判定し、上の閾値と下の閾値の中間の範囲となる中間値であるときには直前のビットの値と反対の値を注目するビットの値として判定する値判定手順と、
前記値判定手順によって得られた１及び０からなるデータ系列に対して、前記送信装置が行なったビット変換とは逆の変換を行なうとともに元のデータを復元するデータ処理手順と、
前記Ａ／Ｄ変換手順によって得られたサンプリング値が、前記値判定手順においてＮビット以上続けて中間値として判別されたときに、そのＮビット分の前記Ａ／Ｄ変換部からの出力値のうち１又は０に最も近い値を新たな上又は下の閾値として更新する前記閾値設定手順と、
を実行させることを特徴とするコンピュータ・プログラムである。
【００３２】
本発明の第２乃至第３の各側面に係るコンピュータ・プログラムは、コンピュータ上で所定の処理を実現するようにコンピュータ可読形式で記述されたコンピュータ・プログラムを定義したものである。換言すれば、本発明の第２乃至第３の各側面に係るコンピュータ・プログラムをコンピュータ・システムにインストールすることによってコンピュータ・システム上では協働的作用が発揮され、それぞれ本発明の第１の側面に係るデータ通信システムにおける送信装置並びに受信装置として動作する。このような１対のデータ通信装置を起動してデータ伝送路を構築することによって、本発明の第１の側面に係るデータ通信システムと同様の作用効果を得ることができる。
【発明の効果】
【００３３】
本発明によれば、受信装置側では、送信されてきたデータを一定の間隔で取り込むだけの受信動作を行ない、サンプリング値が注目するビットの値が１であると判定する上の閾値以上の値であれば注目するビットの値を１と判定し、サンプリング値が０であると判定する下の閾値未満の値である場合は注目するビットの値を０として判定して、同期タイミングを確保しなくても、正確に、且つ高い伝送容量を確保しつつ受信することができる、優れたデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムを提供することができる。
【００３４】
また、本発明によれば、サンプリング値が上の閾値より低く、下の閾値より高い中間値となる場合であっても（０，１）を正確に判定して、高い伝送容量を確保することができる、優れたデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムを提供することができる。
【００３５】
本発明に係るデータ通信システムでは、送信装置は、ある決められたデータ長の範囲内に必ず２ビット以上０又は１が連続するようにデータを符号化するように構成されている。したがって、受信装置側では注目するビットのサンプリング値が中間値であるときにはその直前のビットの値の反対の値として判定するというビット値の判定方式を適用しているが、一度ビット判定の誤りを起こし、その誤ったビットに続きサンプリング値が中間値となるデータが連続した場合であっても、誤りの伝播を上記の符号化方式で用いる変換テーブルによって定まるデータ長の範囲内に収めることが可能となり、通信の信頼性を向上することができる。
【００３６】
また、本発明に係るデータ通信システムでは、受信装置は、ある決められたデータ長の範囲内のすべてのビットのサンプリング値が中間値として受信されたときに、その中間値を使って中間値を判定する閾値を更新するように構成されている。したがって、信号の受信状態に応じて適切な閾値を決定することが可能であるから、時間の経過とともに受信状態が変化するような通信環境においても、閾値の設定ミスによるビット誤りを減少することができ、データの復号精度を向上させることができる。また、事前の閾値設定を厳密にする必要がなくなるので、システムの設計が簡素化される。
【００３７】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【発明を実施するための最良の形態】
【００３８】
以下、図面を参照しながら本発明の実施形態について詳解する。
【００３９】
図１には、本発明の一実施形態に係るデータ通信システムの構成を模式的に示している。同図に示すように、データ通信システム１は、送信装置１０と受信装置２０で構成され、送信装置１０と受信装置２０間はデータ伝送路３０で接続されている。但し、伝送データは、ひとまとまりの情報の区切りを示す同期信号と、データ本体（ペイロード）からなる情報信号で構成されるものとする（後述並びに図４を参照のこと）。
【００４０】
データ伝送路３０は、バスや同軸ケーブル、光ケーブルなどの有線、電磁波や光信号の照射を用いた無線など、メディアの種別は特に限定されない。但し、データ伝送路３０は、送信装置１０と受信装置間でクロックを供給又は伝達する手段を持たず、交換すべきユーザ・データに相当する（１，０）の２値からなるデータ系列のみを伝送するものとする。
【００４１】
図２には、送信装置１０の機能的構成を模式的に示している。図示の通り、送信装置１０は、送信データ取得部１１と、パケット分離部１２と、ビット変換部１３と、同期信号付加部１４と、送信部１５と、クロック発生部１６で構成される。
【００４２】
送信データ取得部１１は、受信装置２０に送信する送信データを取得し、取得した送信データをパケット分離部１２に出力する。送信データ取得部１１により取得される送信データは、例えばオーディオ・データ、画像データ、テキスト・データなどの各種のデータであり、情報信号（後述）の部分のデータを構成する。
【００４３】
パケット分離部１２は、送信データ取得部１１から供給されたデータを所定のバイト数からなるパケットに分離し、得られたパケットをビット変換部１３に出力する。
【００４４】
ビット変換部１３は、パケット分離部１２から供給されたパケット単位で１と０からなるデータ系列のビット変換を行ない、変換して得られたデータを同期信号付加部１４に出力する。ビット変換部１３は、情報信号を構成するデータ系列を、同期信号を構成する１と０のパターンと同じものを含まないようにビット変換するものとする（後述）。
【００４５】
同期信号付加部１４は、ビット変換部１３によりビット変換が施されたデータに同期信号を付加し、同期信号を付加したデータを送信部１５に出力する。同期信号は、ビット変換された情報信号のデータ系列には含まれない１と０のパターンで構成されるものとする。
【００４６】
送信部１５は、同期信号付加部１４から供給された同期信号が付加されたデータを、送信クロック発生部１６から供給される送信クロックを用いて、データ伝送路３０上に送出して、受信装置２０に向けて送信する。
【００４７】
送信クロック発生部１６は、例えば、温度補償型水晶発振器（ＴＣＸＯ）などで構成され、発生した送信クロックを送信部１５に供給する。送信クロック発生部１６により発生される送信クロックの周波数は受信装置２０で用いられる受信クロックの周波数と同じである。
【００４８】
また、図３には、受信装置２０の機能的構成を模式的に示している。図示の通り、受信装置２０は、受信部２１と、Ａ／Ｄ変換部２２と、受信クロック発生部２３と、同期信号検出部２４と、値判定部２５と、復号部２６と、データ復元部２７で構成される。
【００４９】
受信部２１は、データ伝送路３０を介して送信装置１０から送信されてきた信号を受信して、Ａ／Ｄ変換部２２に出力する。続いて、Ａ／Ｄ変換部２２は、受信クロック発生部２３から供給される受信クロックにより定まるサンプリング周期で、受信部２１から供給されてきた信号をデジタル信号に変換し、得られたサンプリング値を同期信号検出部２４と値判定部２５に出力する。
【００５０】
本実施形態では、Ａ／Ｄ変換部２２によるＡ／Ｄ変換により得られたデータは階調を有するサンプリング値であり、まだ、最終的な１又は０の値の判定が行なわれていないものである。すなわち、注目するビットの値が１であると判定する閾値を「上の閾値」と、注目するビットの値が０であると判定する閾値を「下の閾値」を保持し、上の閾値以上のサンプリング値を１として判定され、下の閾値未満のサンプリング値を０として判定するとともに、サンプリング値が上の閾値より低いが下の閾値より高いサンプリング値を中間値として出力する（後述）。
【００５１】
受信クロック発生部２３は、例えば、温度補償型水晶発振器（ＴＣＸＯ）などよりなり、発生した受信クロックをＡ／Ｄ変換部２２に供給する。
【００５２】
同期信号検出部２４は、Ａ／Ｄ変換部２２から供給されてくるデータと、値判定部２５による１又は０の値の判定結果に基づいて同期信号を検出する。同期信号検出部２４は、例えば、所定の数の１の値のビットを連続して検出した場合、そのことを表す信号を値判定部２５に出力し、それに続く情報信号におけるビットの値の判定を行なわせる（後述する同期信号の例の場合、このビットの値が０であれば、その０の値のビットが同期信号の末尾のビットということになる）。
【００５３】
また、同期信号検出部２４は、値判定部２５による値の判定結果に基づいて、連続する所定の数の１の値のビットに続くビットの値が０であると判断した場合には、そのビットが同期信号の末尾のビットであると認識し、そのことを表す信号を値判定部２５と復号部２６に出力する。
【００５４】
値判定部２５は、１並びに０以外に中間値を含むＡ／Ｄ変換部２２の出力に対して最終的な１又は０の値の判定を行なう。すなわち、Ａ／Ｄ変換部２２から供給されてくるデータの値が中間値である場合に、直前のビットの値と反対の値を、注目するビットの値として判定し、判定結果を同期信号検出部２４と復号部２６に出力する。また、値判定部２５は、同期信号の末尾を検出したことを表す信号が同期信号検出部２４から供給されてきた場合、その末尾のビットの確定された値を同期信号に続くビットの値の判定に用いる。値判定部２５における処理動作の詳細については後述に譲る。
【００５５】
復号部２６は、同期信号の末尾を検出したことを表す信号が同期信号検出部２４から供給されてきた場合、それ以降、値判定部２５から供給されてくる判定結果が情報信号を構成するビットであると認識し、値判定部２５から供給されるデータに対して送信装置１０で行なわれたビット変換の逆変換を行なう。復号部２６による逆変換により得られたデータはデータ復元部２７に出力される。
【００５６】
データ復元部２７は、デコード部２６から供給されてきたデータに基づいて送信データを復元する。データ復元部２７により復元されたデータは、例えば音声の出力や画像の表示などに用いられる。
【００５７】
本実施形態に係るデータ通信システムでは、受信装置２０は、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく、送信データを一定の間隔で取り込むだけの受信動作を行なう。すなわち、送信装置１０は、２値のデータ系列からなる送信データをデータ伝送路３０上に送出し、これに対し、受信装置２０側ではこのような送信データを、送信クロックとは同期がとられていない受信クロックで定まる周期でサンプリングする。受信装置２０には、受信クロックを送信クロックに同期させるＰＬＬ（Ｐｈａｓｅ  Ｌｏｃｋ  Ｌｏｏｐ）などの回路を装備していない点には充分留意されたい。
【００５８】
サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく受信動作を行なう場合、サンプリング定理から、サンプリング周波数の１／２以上の周波数の信号は正しくサンプリングすることができない。逆に、受信装置２０にすべての値を正しくサンプリングさせるためには、送信装置１０は、送信クロックの周波数を受信クロックの周波数（サンプリング周波数）の１／２以下に設定する必要がある。すなわち、非同期通信による伝送容量は、想定する伝送容量の少なくとも１／２以下に低下することになり、伝送効率がよくない。
【００５９】
この場合のデータ伝送動作について、図１５を参照しながら説明する。同図において、上から１段目の波形は送信データ、２段目の波形は受信クロック、３段目の波形はその受信クロックでサンプリングすることができた受信データをそれぞれ表している。図示の例では、受信装置は時刻ｔ1から時刻ｔ8で行なわれるサンプリングまでは送信データを正しくサンプリングすることができたものの、受信クロックの周波数が低いため、その次のサンプリングのタイミングである時刻ｔ9で本来得られるはずの０の値が欠落している。このように、受信装置が送信クロックと同期しない受信クロックを用いて受信動作を行なう場合、受信クロックの速度によっては、送信されてきたすべてのデータを正確に受信できず、受信データの信頼性を確保するには伝送容量を十分に低くしなければならない。
【００６０】
そこで、本実施形態に係るデータ通信システム１では、受信装置２０では、受信クロックで定まる周期でサンプリングされるサンプリング値から、注目するビットの値が１であると判定する閾値としての「上の閾値」と、０であると判定する閾値としての「下の閾値」を設ける。さらに、サンプリング値が上の閾値より低く、下の閾値より高い値となる中間値については、その直前のビットの値の反対の値として判定する。このような判定方法は、注目するビットのサンプリング値が中間値であることが、そのサンプル・タイミングで１から０又は０から１に送信データの値が変化したことを表すことに依拠する。
【００６１】
したがって、本実施形態に係るデータ通信システム１では、送信装置１０で用いる送信クロックと受信装置２０で用いる受信クロックを同じ周波数にし、送信クロックと同じ伝送容量での通信が実現される。すなわち、符号化率の低下などを無視すると、例えば、１ＭＨｚの送信クロックを用いて１Ｍｂｐｓの非同期通信を実現することができる。
【００６２】
また、送信装置１０及び受信装置２０がそれぞれ持つ発振器の周波数精度などに応じて送信データのフォーマットを構成することにより、データの欠落のない正しい通信が可能となる。
【００６３】
図４には、送信データのフォーマット例を示している。図示の送信データは、同期信号と情報信号からなる。同期信号は、ひとまとまりの情報の区切りを示す機能を持つ。また、受信装置２０では、注目するビットのビット値の判定には、適宜その直前の１ビットの値も参照されることから（前述）、ビット列の時間的に前の方で少なくとも１つのビットの値を確定させる必要があり、同期信号はこのビットを確定させるためにも使用される。すなわち、非同期通信では情報信号のみでビットを確定することが困難であるが、同期信号を付加することにより、それに続く情報信号を構成するビットの値の判定が可能になる。情報信号は、送信装置１０において選択され、受信装置２０に対して送信されたユーザ・データである。
【００６４】
図５には、本実施形態に係るデータ通信システム１におけるデータ伝送動作の一例を示している。図示の４つの波形は、上段から順に、送信装置１０で用いられる送信クロック、受信装置２０に送信される送信データ（同期信号を含む）、受信装置２０で用いられる受信クロック、及び、その受信クロックにより定められる周期でサンプリングしてビット値を判定した受信データをそれぞれ示している。
【００６５】
図５に示した例では、送信クロックと受信クロックが偶然同期している状態を示している。この場合、送信クロックと受信クロックは同じ周波数であるから、受信クロックの立ち上がりのサンプル・タイミングと、送信データのビット値が変化するタイミングが一致することはない。この状態は、ＰＬＬなどで同期クロックを獲得したときと同じ状態である。例えば、受信装置２０の発振器の精度誤差により同期がとれなくなるまでの安定している間は、送信データは正しい値のまま受信装置２０で受信される。
【００６６】
例えば、受信装置２０側では、時刻ｔ1で下の閾値より低いサンプリング値が検出され、注目する時刻ｔ1〜ｔ2の期間に現れるビットの値が０として判定される。また、時刻ｔ2では、上の閾値より高いサンプリング値が検出され、注目する時刻ｔ2〜ｔ3の期間に現れるビットの値が１として判定される。このように送信クロックと受信クロックが偶然同期した場合には、クロック毎に正しい値の１ビットの伝送が実現される。
【００６７】
また、送信クロックと受信クロックの位相が完全に一致しなくても、サンプル・タイミングと送信データの変化点が一致しない限り、サンプリング値とあらかじめ設定されている閾値に基づいて注目するビットについて１又は０を判定することが可能であり、この場合もクロック毎に正しい値の１ビットの伝送が実現される。
【００６８】
続いて、送信装置１０からの送信データの変化点と受信装置２０におけるサンプル・タイミングが一致する場合について考察する。このような場合、受信装置２０側では、受信クロックが定める周期に従って受信信号のサンプリングを行なうと、サンプリング値が上の閾値と下の閾値の中間の範囲となる中間値となるから、２つの閾値を用いた判定のみでは注目するビットの値を判定することはできない。
【００６９】
図６には、送信データが１から０、又は０から１に切り替わる変化点とサンプル・タイミングが一致する場合のそれぞれの波形を拡大して示している。同図において、上方に示す３つの波形は、上から順に、送信クロック、送信データ、受信クロックをそれぞれ示している。実線で囲まれたタイミングでは、送信データの値が０から１に変化するタイミングとサンプル・タイミングが一致している。
【００７０】
この場合、同図の下方に示すように、サンプリングの時間は完全には０ではなく、また、送信データの値の変化も瞬間的に行なわれず、ある所定の時間で変化することから、同図の最下段の波形に示すように、サンプリングされた値は中間値となる。なお、点線で示す波形は、変化点とサンプル・タイミングが一致しなければ判定できたであろう値「１」の受信データを表す。
【００７１】
送信データが１と０の値を繰り返す場合、発振器の精度誤差により位相にずれが生じるまでの期間内では、サンプル・タイミングと変化点が必ず一致し、サンプリング値が中間値となるから、その期間内では値の判定ができない。また、送信データが１と０の値を繰り返さない場合であっても、値が２以上連続しない限りサンプリング値が中間値をとることになり、値の判定ができない可能性が高い。
【００７２】
ここで、図６からも分るように、サンプリング値が中間値であることは、そのサンプル・タイミングで送信データのビット値が１から０に、又は０から１に変化したことを表す。したがって、１つのビットの値を正しく判定することができれば、その後のビットの値については、中間値をとるサンプリング値（変化点の存在の検出）と、直前の１ビットの値から推定することができる。
【００７３】
受信装置２０において、あるビットの値を１として正しく判定することができ、その次の注目するビットにおけるサンプリング値が中間値となった場合、そのサンプル・タイミングにおいて送信データに値の変化（１から０）が生じたことを表すから、注目するビットの値は０として推定することができる。同様に、あるビットの値を０として正しく判定することができ、その次の注目するビットにおけるサンプリング値が中間値となった場合、そのサンプル・タイミングにおいて送信データに値の変化（０から１）が生じたことを表すから、注目するビットの値は１として推定することができる。
【００７４】
図７には、受信装置２０側で注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定という判定方式を適用した場合におけるデータ伝送動作の例を示している。
【００７５】
図示の波形は、上から順に、送信装置１０側における送信クロックならびに送信データ、受信装置２０側における受信クロック並びにサンプリングされた受信データをそれぞれ示している。受信データには、１と０の他に中間値が現れる。また、同図の最下段の波形は、上述した中間値のビット値判定方式に従った受信データの最終的なビット値の判定結果を示している。図示の例では、時刻ｔ1で送信データの変化点とサンプル・タイミングが一致しているため、時刻ｔ1以降に現れるすべての変化点とサンプル・タイミングが一致している。
【００７６】
時刻ｔ1から時刻ｔ24までの送信データは「１１１１０１００１０１１０１００１１０１０１０」の値のビットからなる。このうちの時刻ｔ1から時刻ｔ5までの４つの連続する値１のビットと、それに続く１つの値０のビットが同期信号を構成するビットであり、時刻ｔ6以降のビットが情報信号を構成するビットである。
【００７７】
同期信号は受信装置２０にビットを確定させるための機能を持ち（前述）、情報信号には現れない１及び０のパターンを含むように構成されている。送信装置１０では、この同期信号「１１１１０」のうちの先頭を除く「１１１０」のパターンが情報信号に現れることがないように、送信するデータに対してビット変換を施す。
【００７８】
同じ値が所定の数だけ連続する場合、受信装置２０は、その連続するビットの数から１つ少ない数のビットだけは、少なくとも前後のデータと関係なく値を正しく判定することができる。例えば、時刻ｔ1のサンプル・タイミングと送信データの変化点が一致し、注目するビットの値をそのサンプリング値だけから判定することができない場合であっても、時刻ｔ2〜ｔ4の期間には変化点がないから、受信装置２０は、各時刻ｔ2、ｔ3、ｔ4のそれぞれのタイミングでのサンプリング値に基づいて、４つの連続するビットのうちの先頭を除く３つのビットの値は正しく判定することができる。
【００７９】
また、時刻ｔ5では変化点とサンプル・タイミングが一致し、中間値がサンプリングされることになるが、このような場合には、受信装置２０は、時刻ｔ5に変化点があると認識し、その直前の時刻ｔ4でサンプリングされたビットの値と反対の値である０を、注目するビットの値として判定する。
【００８０】
このように、受信装置２０は、時刻ｔ5のサンプリングまでに、情報信号には現れることがないようにビット変換が施されている「１１１０」のパターンを検出することにより、同期信号を他の信号と識別して、それ以降のデータを情報信号として扱うことができる。同期信号の末尾の値０は、正しい値であることが保証されているものであるため（確定することができたビットであるため）、受信装置２０は、以降の値の判定に、その確定されたビットの値を用いることができる。
【００８１】
時刻ｔ6で中間値がサンプリングされた場合、受信装置２０は、時刻ｔ6に送信データの変化点があると認識し、その直前の同期信号の末尾のビットの値と反対の値である１を時刻ｔ6〜ｔ7の期間に現れる注目するビットの値として判定する。同様に、時刻ｔ6以降の、時刻ｔ7、時刻ｔ9〜ｔ11、時刻ｔ13〜ｔ15、時刻ｔ17、時刻ｔ19〜ｔ24のそれぞれのサンプル・タイミングにおいて中間値がサンプリングされているから、それぞれのタイミングのビットの値が直前のビットの反対の値として判定することによって、最終的な判定結果を取得することができる。また、サンプル・タイミングと送信データの変化点が一致しない各時刻ｔ8、ｔ12、ｔ16、ｔ18では、上の閾値若しくは下の閾値を用いた判定結果に基づいて正しいビット値を判定している。
【００８２】
したがって、図７の最下段に示すように、同期信号に続く時刻ｔ6以降のビット値の判定結果は、送信データの情報信号を構成するビット値の系列と同じ「１００１０１１０１００１１０１０１０」となる。
【００８３】
なお、図８に示すように、サンプル時間に対してデータの変化が急激で、変化点とサンプル・タイミングが一致しても中間値を取ることが困難である場合には、図９に示すように、サンプル時間を長めにとったり、送信側、受信側の送信データが流れるデータ線にダンピング抵抗を挟んだり、あるいは図１０に示すように、送信データの変化を故意に鈍らせるようにしてもよい。これにより、中間値を容易に取ることができ、判定結果の信頼性を向上させることができる場合がある。
【００８４】
以上のようなビット値の判定を行なう通信方式を採用することにより、高い伝送容量を確保しつつ、データの送受信を行うことができる。すなわち、サンプリング定理に基づく制限から、想定する伝送容量をその１／２以下に設定する必要がない。また、送信側の装置は受信側の装置で用いられるものと同じ周波数の送信クロックでデータを送信するだけであるため、また、受信側の装置もＰＬＬなどの構成が不要であるため、それぞれの装置の構成を単純なものとすることができる。さらに、ＰＬＬにより同期が確保されるまでの時間を考慮することなくデータの送受信を開始することができるため、ある一定の量のデータの送信が完了するまでの時間を短縮することができる。
【００８５】
ところが、注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定するという上記のビット値判定方式においては、これら上下の閾値を適切に設定しなければならないという問題がある。以下ではこの点について考察する。
【００８６】
注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときに、その直前のビットの値の反対の値として判定という判定方式は、下式（１）〜（２）のように表すことができる。但し、サンプリング値をｘ、例えば、サンプリング値に基づいて値をＨ（Ｈｉｇｈ＝１）と判定する上の閾値を０．８、Ｌ（Ｌｏｗ＝０）と判定する下の閾値を０．２、注目するビットの直前のビットの値の判定結果をＡとする。
【００８７】
【数１】
2007288660.tif 000003
【００８８】
【数２】
2007288660.tif 000004
【００８９】
上下それぞれの閾値は、系の雑音レベルによって設定することが好ましい。例えば、ノイズレベルが±２０％の系では、上の閾値を０．７、下の閾値を０．３に設定すると、判定結果が安定することが本発明者らによる実験から判っている。
【００９０】
ノイズが少ない系では、上の閾値を０．９、下の閾値を０．１などのように閾値を厳しく設定することにより、最終的に判定される値の信頼性を上げることができる。しかし、閾値を厳しく設定した場合、予期せぬノイズが入り込んだときには、本来、判定可能なデータを中間値と見てしまうため誤判定につながる。一方、閾値を緩く設定した場合、ノイズによる誤判定が多くなる。
【００９１】
これらの閾値が適切に決められていないと、誤ったビット判定を行なうことになってしまう。適切な閾値を決めるには、系のノイズなどの信号品質を知らなければならず、送受信装置の間で事前に系の状態を知ることは難しい。また、チャネル状況など系の状態に応じて適切な閾値は時間の経過とともに変動するため、系の状態変化に対して適切に閾値を追従させることも、受信側でのエラーの状態を反映しなければならず、困難である。
【００９２】
また、注目するビットのサンプリング値が中間値であるときにはその直前のビットの値の反対の値として判定するというビット値の判定方式を適用しているため、受信側で一度ビット判定の誤りを起こすと、その誤ったビットに続きサンプリング値が中間値となるデータが連続した場合には、中間値となるデータが連続する期間はビット誤りが伝播し続けるという問題が発生する。
【００９３】
図１６に示す例では、時刻ｔ4において、送信データの切り替わりとサンプル・タイミングが一致し、さらにこのときサンプリングされた中間値が上の閾値を超えてしまったために、ビット値が０でなく１と誤判定されてしまっている。その直後から送信データ系列が０と１が交互に続き、サンプリング値も中間値が続いた場合、ビット値が中間値であるときにはその直前のビットの値の反対の値として判定するビット値判定により、０と１が交互に続く限り、ビット誤り判定が伝播していく。
【００９４】
そこで、本実施形態では、送信装置１０は、ある決められたデータ長の範囲内に必ず２ビット以上０又は１が連続するようにビット変換して、これを受信クロックと同じ周波数の送信クロックを用いて送信するようにしている。
【００９５】
このような場合、受信装置２０内の値判定部２５は、一度ビット判定の誤りを起こし、その誤ったビットに続きサンプリング値が中間値となるデータが連続した場合であっても、誤りの伝播を上記の符号化方式で用いる変換テーブルによって定まるデータ長の範囲内に収めることが可能となり、通信の信頼性を向上することができる。
【００９６】
また、受信装置２０内の値判定部２５は、ある決められたデータ長の範囲内のすべてのビットのサンプリング値が中間値として受信されたときに、その中間値を使って中間値を判定する閾値を更新するように構成されている。
【００９７】
したがって、受信装置２０は、信号の受信状態に応じて適切な閾値を決定することが可能となるから、時間の経過とともに受信状態が変化するような通信環境においても、閾値の設定ミスによるビット誤りを減少することができ、データの復号精度を向上させることができる。また、事前の閾値設定を厳密にする必要がなくなるので、システムの設計が簡素化される。
【００９８】
図１１には、値判定部２５の内部構成例を示している。図示の値判定部２５は、「０」判定閾値レジスタ３１と、「０」値比較部３２と、「１」判定閾値レジスタ３３と、「１」値比較部３４と、「０」「１」判定部３５と、閾値コントローラ３６を備えている。
【００９９】
判定閾値レジスタ３１は、閾値コントローラ３６から制御信号が入力され、注目するビットの値が０であると判定するための下の閾値を保持する。
【０１００】
「０」値比較部３２は、Ａ／Ｄ変換器２２によりＡ／Ｄ変換されたデジタル信号を、「０」判定閾値レジスタ３１から与えられる下の閾値と比較して、その大小判定結果を「０」「１」判定部３５に出力する。
【０１０１】
「１」判定閾値レジスタ３３は、閾値コントローラ３６から制御信号が入力され、注目するビットの値が１であると判定するための上の閾値を保持する。
【０１０２】
「１」値比較部３４は、Ａ／Ｄ変換器２２によりＡ／Ｄ変換されたデジタル信号を、「１」判定閾値レジスタ３３から与えられる下の閾値と比較して、その大小判定結果を「０」「１」判定部３５に出力する。
【０１０３】
「０」「１」判定部３５は、「０」値比較部３２から供給されるサンプリング値と下の閾値との大小比較結果と、「１」値比較部３４から供給されるサンプリング値と上の閾値との大小比較結果を基に、サンプリング値が下の閾値未満であればそのビット値を「０」とし、下の閾値以上であるが上の閾値未満であればそのビット値を確定せず中間値とし、上の閾値以上であればビット値を「１」と判定する。また、中間値と判定した場合には、さらに直前に出力したビット値の反対の値を、当該ビットの値として判定する。そして、このようなビット値の判定結果は、同期信号検出部２４と復号部２６のそれぞれに出力される。
【０１０４】
また、「０」「１」判定部３５は、同期信号の末尾を検出したことを表す信号が同期信号検出部２４から供給されてきた場合には、その末尾の確定されたビット値を同期信号に続く情報信号のビット値の判定に用いる。
【０１０５】
閾値コントローラ３６は、「０」値比較部３２からの下の閾値とＡ／Ｄ変換されたサンプリング値との大小比較結果と、「１」値比較部３４からの上の閾値とＡ／Ｄ変換されたサンプリング値との大小比較結果を基に、ビット変換部１３で用いられた変換テーブルに課せられている、「ある決められたデータ長の範囲内に必ず２ビット以上０又は１が連続する」というデータ系列の制限により、「０」判定閾値レジスタ３１に格納されている下の閾値、及び「１」判定閾値レジスタ３３に格納されている上の閾値を制御する。
【０１０６】
続いて、ビット変換部１３と値判定部の動作について説明する。
【０１０７】
既に述べたように、サンプリング値が中間値となる可能性があるのは、そのサンプル・タイミングで１から０又は０から１に送信データの値が変化したときである。
【０１０８】
送信装置１０側では、ビット変換部１３は、パケット分離部１２から送られてくるパケット単位のデータを、変調後のデータがある決められたビット数の範囲内で必ず「０」又は「１」の２ビット以上連続して出力するような変換テーブルに基づいてデータ系列のビット変換を行なう。
【０１０９】
例えば、図１２に示すような、２ビットを３ビットに変換する変換テーブルを用いた場合、変調後のデータ系列は５ビット以上０と１が交互に続くことはなく、６ビット以内に必ず「０」又は「１」が２ビット以上連続するパターンが出現する。図１２に示した変換テーブルによれば、０と１が交互に続くのは最長でも図１３に示す４ビットまでである。
【０１１０】
一方、上述した受信装置２０は、２ビット以上同じビットが連続する送信データを受信すると、その２ビットのうち中間値としてサンプリングされるのは多くとも１ビットであり、少なくとも１ビットは「０」又は「１」のどちらかのビット値として判定され、そのデータを受信する前にビット判定誤りがあっても、「０」又は「１」としてサンプリングされたビットにより誤りの伝播は停止する。例えば図１２に示した変換テーブルを使用すれば、誤り伝播を５ビット以内に抑制することができる。この場合、５ビットが閾値変更判別単位となることを意味する。
【０１１１】
また、図１２に示した変換テーブルを用いると、正しく受信されていれば中間値が５ビット以上続けてサンプリングされることはないので、言い換えれば、５ビット以上続けて中間値がサンプリングされることが幾度も繰り返されている場合は上下の閾値の少なくとも一方が適切でないと推定することができる。このような場合、値判定部２５内の閾値コントローラ３６は、適切な閾値を設定して、「０」判定閾値レジスタ３１や「１」判定閾値レジスタ３３に格納すればよい。
【０１１２】
図１４には、値判定部２５において使用する閾値を変更する際のデータ受信動作例を示している。閾値コントローラ３６は、Ａ／Ｄ変換部２２からの出力が５ビット以上続けて中間値として判別されたときには、その５ビット分のＡ／Ｄ変換部２２からの出力値のうち１又は０に最も近い値を新たな閾値の候補とする。引き続き５ビット以上の中間値のサンプリングが続くようであれば、そのうちで最も０又は１に近い値を新しい閾値として閾値レジスタ３１又は３３に設定する。同図に示す例では、中間値が５ビット続いた区間が設定回数である５回だけ出現したので、上の閾値を０．９０から０．８５に更新している。
【０１１３】
このようにして、例えばノイズが多く、０や１の値がなかなか受信できず、例えば０．３や０．７のような中間値としてしかデータを受信できない系であっても、その系に応じた適切な閾値に自動的に設定することができる。
【産業上の利用可能性】
【０１１４】
以上、特定の実施形態を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。
【０１１５】
本発明に係るデータ通信システムは、バスや同軸ケーブル、光ケーブルなどの有線、電磁波や光信号の照射を用いた無線など、メディアの種別は特に限定されず、さまざまな送受信機間での非同期データ通信に適用することができる。
【０１１６】
例えば、放送塔などの建造物に設置された発光装置からビデオカメラへのＩＤ、広告、地域情報、位置情報などのデータ送信、ＬＥＤペンからＩ／Ｏディスプレイへの軌跡や識別情報の入力などに適用することができる。
【０１１７】
要するに、例示という形態で本発明を開示してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本発明の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【図面の簡単な説明】
【０１１８】
【図１】図１は、本発明の一実施形態に係るデータ通信システムの構成を模式的に示した図である。
【図２】図２は、本発明に係るデータ通信システム１において送信装置１０として動作する装置の機能的構成を示したブロック図である。
【図３】図３は、本発明に係るデータ通信システムにおいて受信装置２０として動作する装置の機能的構成を模式的に示したブロック図である。
【図４】図４は、送信データのフォーマット例を示した図である。
【図５】図５は、本発明に係るデータ通信システム１におけるデータ伝送動作の一例を示した図である。
【図６】図６は、送信データが切り替わる変化点とサンプル・タイミングが一致する場合のデータ伝送動作の一例を示した図である。
【図７】図７は、注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定するという判定方式を適用した場合におけるデータ伝送動作の例を示した図である。
【図８】図８は、サンプル時間に対してデータの変化が急激で、変化点とサンプル・タイミングが一致しても中間値を取ることが困難となっている様子を示した図である。
【図９】図９は、サンプル時間を長めにとった様子を示した図である。
【図１０】図１０は、送信データの変化を故意に鈍らせた様子を示した図である。
【図１１】図１１は、値判定部２５の内部構成例を示した図である。
【図１２】図１２は、ビット変換部１３で使用する変換テーブルの構成例を示した図である。
【図１３】図１３は、図１２で示した変換テーブルを用いてビット変換したデータ系列において、０と１が交互に続く最長のパターンを示した図である。
【図１４】図１４は、値判定部２５において使用する閾値を変更するための処理を説明するための図である。
【図１５】図１５は、送受信間で非同期でデータ伝送する際にデータが欠落する様子を示した図である。
【図１６】図１６は、ビット判定の誤りが伝播し続ける様子を示した図である。
【符号の説明】
【０１１９】
１…データ通信システム
１０…送信装置
１１…送信データ取得部
１２…パケット分離部
１３…ビット変換部
１４…同期信号付加部
１５…送信部
１６…クロック発生部
２０…受信装置
２１…受信部
２２…Ａ／Ｄ変換部
２３…受信クロック発生部
２４…同期信号検出部
２５…値判定部
２６…復号部
２７…データ復元部
３０…データ伝送路
３１…「０」判定閾値レジスタ
３２…「０」値比較部
３３…「１」判定閾値レジスタ
３４…「１」値比較部
３５…「０」「１」判定部
３６…閾値コントローラ
【図１】
2007288660.tif 000005
【図２】
2007288660.tif 000006
【図３】
2007288660.tif 000007
【図４】
2007288660.tif 000008
【図５】
2007288660.tif 000009
【図６】
2007288660.tif 000010
【図７】
2007288660.tif 000011
【図８】
2007288660.tif 000012
【図９】
2007288660.tif 000013
【図１０】
2007288660.tif 000014
【図１１】
2007288660.tif 000015
【図１２】
2007288660.tif 000016
【図１３】
2007288660.tif 000017
【図１４】
2007288660.tif 000018
【図１５】
2007288660.tif 000019
【図１６】
2007288660.tif 000020