データ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラム
【課題】送受信間でクロックに同期させることなく、受信装置側では送信されてきたデータを一定の間隔で取り込むだけの受信動作を行なう。
【解決手段】送信装置は、所定のデータ長の範囲内に必ず2ビット以上0又は1が連続するようにデータを符号化する。受信装置側では、一度ビット判定の誤りを起こし、且つサンプリング値が中間値となるデータが連続しても、誤りの伝播を所定のデータ長の範囲内に収めることができる。また、所定のデータ長の範囲内のすべてのビットのサンプリング値が中間値として受信されたときは、その中間値を使って中間値を判定する閾値を更新する。
【解決手段】送信装置は、所定のデータ長の範囲内に必ず2ビット以上0又は1が連続するようにデータを符号化する。受信装置側では、一度ビット判定の誤りを起こし、且つサンプリング値が中間値となるデータが連続しても、誤りの伝播を所定のデータ長の範囲内に収めることができる。また、所定のデータ長の範囲内のすべてのビットのサンプリング値が中間値として受信されたときは、その中間値を使って中間値を判定する閾値を更新する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、送受信装置の間で(1,0)の2値からなるデータ系列を交換するためのデータ通信を行なうデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムに係り、特に、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく、受信装置側では送信されてきたデータを一定の間隔で取り込むだけの受信動作を行なうデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムに関する。
【背景技術】
【0002】
通信端末間のデータ送受信や、コンピュータ本体と周辺機器間のデータ転送、回路基板上の回路モジュール間のデータ信号の伝送など、データ通信技術の用途は幅広い。また、通信に用いられるメディアも、バスや同軸ケーブル、光ケーブルなどの有線、電磁波や光信号の照射を用いた無線などさまざまである。
【0003】
ここで言うデータ通信とは、基本的には、(1,0)の2値からなる系列データを送信側と受信側とで交換し合う処理を意味する。そして、一般的なデータ通信方式では、データの受信側の装置は、送信側の装置から送信されてくるデータの値(1,0)を正しくサンプリングするために、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させておく必要がある。
【0004】
受信クロックを送信クロックに同期させるには、例えば、送信側(若しくはそれ以外の外部装置)から受信側の装置に対して送信クロックと同じクロックを供給する方法と、受信側の装置自身が、送信されてきたデータに基づいて送信クロックと同じクロックを再生する(例えば、パケットのプリアンブルとして付加されている既知シーケンスを用いて同期を獲得する)方法がある。
【0005】
前者の方法では、データ・シーケンスのための伝送路とは別にクロック供給路が必要になることから、その用途は基板上での通信や複数の配線が可能な通信に限定される。また、後者の方法は、シリアル通信(1チャンネル通信)で用いられることが多いが、受信側の装置で送信クロックを再生するためPLL(Phase Locked Loop)が一般的に用いられる。PLLは、例えば、ローパス・フィルタ(LPF)と、位相比較器と、ループ・フィルタと、電圧制御発振器(VCO)で構成されるが、特に高周波領域の信号を扱う場合、アナログ回路で構成しなければならないことが多く、高集積化には向いていない。また、PLLは、原理的に位相がロック(同期)するまでに時間を要することから、特に高速通信には不向きである。
【0006】
受信側の装置に同期を確保させるための上述したそれぞれの方法には不利な点があるにも拘らず、それを許容しなければ、伝送容量を確保しつつ正確にデータを復元させることができない。
【0007】
一方、受信装置側において、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく、送信されてきたデータを一定の間隔で取り込むだけの受信動作が可能となる通信システムが考えられる。
【0008】
しかしながら、サンプリング定理から、サンプリング周波数の1/2以上の周波数の信号は正しくサンプリングすることができないため、受信装置ですべての値を正しくサンプリングさせるためには、送信装置は、送信クロックの周波数を受信クロックの周波数(サンプリング周波数)の1/2以下に設定する必要がある。すなわち、同期をとる手段が受信装置に用意されない場合、実際の伝送容量は想定する伝送容量の少なくとも1/2以下に低下することになり、伝送効率がよくない。
【0009】
これに対し、送信クロックに受信クロックを同期させる手段が設けられていない場合であっても、送信されてきたデータを、正確に、且つ高い伝送容量を確保しつつ受信することができる通信システムについて提案がなされている(例えば、特許文献1を参照のこと)。
【0010】
同通信システムでは、サンプリング値から、注目するビットの値が1であると判定する閾値を「上の閾値」と言い、注目するビットの値が0であると判定する閾値を「下の閾値」と言う。サンプリング値が上の閾値以上の値である場合は注目するビットの値は1として判定され、下の閾値未満の値である場合は注目するビットの値は0として判定される。また、サンプリング値が上の閾値より低く、下の閾値より高い値である場合、この値を中間値という。
【0011】
上述した単純な閾値判定処理では、送信データの値が変化するタイミング、すなわち、1から0に、又は0から1に値が変化するタイミングと、受信装置におけるサンプル・タイミングがほぼ一致する場合には、サンプリング値が中間値となり、受信装置では1,0の値を判定することができない。しかし、注目するビットのサンプリング値が中間値であるということは、そのサンプル・タイミングで、1から0に、又は0から1に送信データの値が変化したことを表し、その直前のビットの値の反対の値として判定することができる。1つのビットの値を正しく判定することができれば、それ以降は、中間値をとるサンプリング値(変化点の存在の検出)と、直前の1ビットの値から推定することができる。したがって、送信クロックに受信クロックを同期させる手段が設けられていない場合であっても、受信装置側では、送信されてきたデータを、正確に、且つ高い伝送容量を確保しつつ受信することができる。
【0012】
具体的には、受信装置で、ある1ビットの値が1として正しく判定することができ、その次の注目するビットのサンプル・タイミングで中間値がサンプリングされた場合、そのことは送信データに値の変化(1から0)が生じたことを表すから、注目するビットの値は0として推定することができる。また、受信装置で、ある1ビットの値が0として正しく判定することができ、その次の注目するビットのサンプル・タイミングで中間値がサンプリングされた場合、そのことは送信データに値の変化(0から1)が生じたことを表すから、注目するビットの値は1として推定することができる。
【0013】
しかしながら、このようなデータ通信方式においては、中間値となる範囲を定義するための、注目するビットの値が1であると判定する「上の閾値」と、0であると判定する「下の閾値」のそれぞれを適切に決める必要がある。
【0014】
これらの閾値が適切に決められていないと、誤ったビット判定を行なうことになってしまう。適切な閾値を決めるには、系のノイズなどの信号品質を知らなければならず、送受信装置の間で事前に系の状態を知ることは難しい。また、チャネル状況など系の状態に応じて適切な閾値は時間の経過とともに変動するため、系の状態変化に対して適切に閾値を追従させることも、受信側でのエラーの状態を反映しなければならず、困難である。
【0015】
また、注目するビットのサンプリング値が中間値であるときにはその直前のビットの値の反対の値として判定するというビット値の判定方式を適用しているため、受信側で一度ビット判定の誤りを起こすと、その誤ったビットに続きサンプリング値が中間値となるデータが連続した場合には、中間値となるデータが連続する期間はビット誤りが伝播し続けるという問題が発生する。
【0016】
【特許文献1】特開2005−354190号公報
【発明の開示】
【発明が解決しようとする課題】
【0017】
本発明の目的は、受信装置側において、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく、送信されてきたデータを一定の間隔で取り込むだけの受信動作によって、正確に、且つ高い伝送容量を確保しつつ受信することができる、優れたデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムを提供することにある。
【0018】
本発明のさらなる目的は、受信装置側では、送信されてきたデータを一定の間隔で取り込むだけの受信動作を行ない、サンプリング値が注目するビットの値が1であると判定する上の閾値以上の値であれば注目するビットの値を1と判定し、サンプリング値が0であると判定する下の閾値未満の値である場合は注目するビットの値を0として判定して、同期タイミングを確保しなくても、正確に、且つ高い伝送容量を確保しつつ受信することができる、優れたデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムを提供することにある。
【0019】
本発明のさらなる目的は、サンプリング値が上の閾値より低く、下の閾値より高い中間値となる場合であっても(0,1)を正確に判定して、高い伝送容量を確保することができる、優れたデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムを提供することにある。
【課題を解決するための手段】
【0020】
本発明は、上記課題を参酌してなされたものであり、その第1の側面は、送信装置と受信装置間において、サンプリング周期を定める受信クロックを送信クロックに同期させることなくデータ通信を行なうデータ通信システムであって、
前記送信装置は、所定のデータ長の範囲内に必ず2ビット以上0又は1が連続するようにデータ系列のビット変換を行ない、該ビット変換したデータ系列を表す信号を前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信し、
前記受信装置は、データ系列を表す受信信号を前記受信クロックで決められる周期に従ってサンプリングし、得られたサンプリング値が上の閾値以上であれば注目するビットが1と判定し、下の閾値未満であれば注目するビットが0と判定し、注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定する、
ことを特徴とするデータ通信システムである。
【0021】
但し、ここで言う「システム」とは、複数の装置(又は特定の機能を実現する機能モジュール)が論理的に集合した物のことを言い、各装置や機能モジュールが単一の筐体内にあるか否かは特に問わない(以下、同様)。
【0022】
本発明は、送受信装置の間で(1,0)の2値からなるデータ系列を交換するためのデータ通信を行なうデータ通信システムに関する。この種のデータ通信においては、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させておくのが一般的であり、受信装置に送信クロックと同期したクロック信号を供給したり、受信装置で送信クロックとの同期を獲得したりする必要があり、回路規模が増大するなどの問題がある。
【0023】
これに対し、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく、送信されてきたデータを一定の間隔で取り込むだけの受信動作が可能となる通信システムが考えられている。すなわち、受信装置側では、データ系列を表す受信信号を前記受信クロックで決められる周期に従ってサンプリングし、得られたサンプリング値が上の閾値以上であれば注目するビットが1と判定し、下の閾値未満であれば注目するビットが0と判定する。そして、注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定することによって、高い伝送容量を確保しながら正確に受信処理することができる。
【0024】
また、受信装置側において、注目するビットのサンプリング値が中間値であるときにはその直前のビットの値の反対の値として判定するという上記のビット値判定方式を適用する場合には、一度ビット判定の誤りを起こすと、その誤ったビットに続きサンプリング値が中間値となるデータが連続すると中間値となるデータが連続する期間はビット誤りが伝播し続けるという問題がある。
【0025】
そこで、本発明に係るデータ通信システムでは、送信装置は、ある決められたデータ長の範囲内に必ず2ビット以上0又は1が連続するようにビット変換して、これを受信クロックと同じ周波数の送信クロックを用いて送信するようにしている。
【0026】
受信装置側では、注目するビットのサンプリング値が中間値であるときにはその直前のビットの値の反対の値として判定するというビット値の判定方式を適用するが、2ビット以上同じビットが連続する送信データを受信すると、その2ビットのうち中間値としてサンプリングされるのは多くとも1ビットであり、少なくとも1ビットは「0」又は「1」のどちらかのビット値として判定され、そのデータを受信する前にビット判定誤りがあっても、「0」又は「1」としてサンプリングされたビットにより誤りの伝播は停止する。すなわち、一度ビット判定の誤りを起こし、その誤ったビットに続きサンプリング値が中間値となるデータが連続した場合であっても、誤りの伝播を上記の符号化方式で用いる変換テーブルによって定まるデータ長の範囲内に収めることが可能となり、通信の信頼性を向上することができる。
【0027】
また、受信装置は、ある決められたデータ長の範囲内のすべてのビットのサンプリング値が中間値として受信されたときに、その中間値を使って中間値を判定する閾値を更新するように構成されている。
【0028】
送信装置において、Nビット以上は0と1が交互に続くことがなくなるような変換テーブルを用いてビット変換を施したデータ系列を送信する場合には、受信装置側では、正しく受信できている限り、Nビット以上続けて受信データが中間値としてサンプリングされることはない。言い換えれば、Nビット以上続けて中間値がサンプリングされたときには、閾値が適切でないと推定することができる。この場合、Nビットが閾値変更判別単位となる。そして、例えばNビットのサンプリング値のうち1又は0に最も近い値を新たな閾値の候補にすることができる。引き続きNビット以上の中間値のサンプリングが続くようであれば、Nビットのサンプリング値のうち1又は0に最も近い値を新たな閾値に設定する。
【0029】
したがって、本発明に係るデータ通信システムによれば、受信装置は、信号の受信状態に応じて適切な閾値を決定することが可能であるから、時間の経過とともに受信状態が変化するような通信環境においても、閾値の設定ミスによるビット誤りを減少することができ、データの復号精度を向上させることができる。また、事前の閾値設定を厳密にする必要がなくなるので、システムの設計が簡素化される。
【0030】
また、本発明の第2の側面は、上述した第1の側面に係るデータ通信システムにおける送信装置としての処理動作をコンピュータ上で実施するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータに対し、
送信データを所定のデータ長のパケット単位に分離するパケット分離手順と、
パケット単位で1と0からなるデータ系列のビット変換を行なって情報信号を生成するビット変換手順と、
情報信号を含んだ送信データを、前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信する送信手順を実行させ、
前記ビット変換手順では、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようなデータ系列にビット変換する、
ことを特徴とするコンピュータ・プログラムである。
【0031】
また、本発明の第3の側面は、上述した第1の側面に係るデータ通信システムにおいて受信装置としての処理動作をコンピュータ上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記送信装置からは、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようなデータ系列にビット変換された情報信号としてデータが送信され、前記コンピュータに対し、
伝送路を介して送信装置からの受信した信号中の情報信号について、前記受信クロックで決められる周期に従ってサンプリングして、1並びに0以外に中間値を含むサンプリング値を出力するA/D変換手順と、
前記A/D変換手順によって得られたサンプリング値について、上の閾値以上であれば注目するビットが1と判定し、下の閾値未満であれば注目するビットが0と判定し、上の閾値と下の閾値の中間の範囲となる中間値であるときには直前のビットの値と反対の値を注目するビットの値として判定する値判定手順と、
前記値判定手順によって得られた1及び0からなるデータ系列に対して、前記送信装置が行なったビット変換とは逆の変換を行なうとともに元のデータを復元するデータ処理手順と、
前記A/D変換手順によって得られたサンプリング値が、前記値判定手順においてNビット以上続けて中間値として判別されたときに、そのNビット分の前記A/D変換部からの出力値のうち1又は0に最も近い値を新たな上又は下の閾値として更新する前記閾値設定手順と、
を実行させることを特徴とするコンピュータ・プログラムである。
【0032】
本発明の第2乃至第3の各側面に係るコンピュータ・プログラムは、コンピュータ上で所定の処理を実現するようにコンピュータ可読形式で記述されたコンピュータ・プログラムを定義したものである。換言すれば、本発明の第2乃至第3の各側面に係るコンピュータ・プログラムをコンピュータ・システムにインストールすることによってコンピュータ・システム上では協働的作用が発揮され、それぞれ本発明の第1の側面に係るデータ通信システムにおける送信装置並びに受信装置として動作する。このような1対のデータ通信装置を起動してデータ伝送路を構築することによって、本発明の第1の側面に係るデータ通信システムと同様の作用効果を得ることができる。
【発明の効果】
【0033】
本発明によれば、受信装置側では、送信されてきたデータを一定の間隔で取り込むだけの受信動作を行ない、サンプリング値が注目するビットの値が1であると判定する上の閾値以上の値であれば注目するビットの値を1と判定し、サンプリング値が0であると判定する下の閾値未満の値である場合は注目するビットの値を0として判定して、同期タイミングを確保しなくても、正確に、且つ高い伝送容量を確保しつつ受信することができる、優れたデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムを提供することができる。
【0034】
また、本発明によれば、サンプリング値が上の閾値より低く、下の閾値より高い中間値となる場合であっても(0,1)を正確に判定して、高い伝送容量を確保することができる、優れたデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムを提供することができる。
【0035】
本発明に係るデータ通信システムでは、送信装置は、ある決められたデータ長の範囲内に必ず2ビット以上0又は1が連続するようにデータを符号化するように構成されている。したがって、受信装置側では注目するビットのサンプリング値が中間値であるときにはその直前のビットの値の反対の値として判定するというビット値の判定方式を適用しているが、一度ビット判定の誤りを起こし、その誤ったビットに続きサンプリング値が中間値となるデータが連続した場合であっても、誤りの伝播を上記の符号化方式で用いる変換テーブルによって定まるデータ長の範囲内に収めることが可能となり、通信の信頼性を向上することができる。
【0036】
また、本発明に係るデータ通信システムでは、受信装置は、ある決められたデータ長の範囲内のすべてのビットのサンプリング値が中間値として受信されたときに、その中間値を使って中間値を判定する閾値を更新するように構成されている。したがって、信号の受信状態に応じて適切な閾値を決定することが可能であるから、時間の経過とともに受信状態が変化するような通信環境においても、閾値の設定ミスによるビット誤りを減少することができ、データの復号精度を向上させることができる。また、事前の閾値設定を厳密にする必要がなくなるので、システムの設計が簡素化される。
【0037】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【発明を実施するための最良の形態】
【0038】
以下、図面を参照しながら本発明の実施形態について詳解する。
【0039】
図1には、本発明の一実施形態に係るデータ通信システムの構成を模式的に示している。同図に示すように、データ通信システム1は、送信装置10と受信装置20で構成され、送信装置10と受信装置20間はデータ伝送路30で接続されている。但し、伝送データは、ひとまとまりの情報の区切りを示す同期信号と、データ本体(ペイロード)からなる情報信号で構成されるものとする(後述並びに図4を参照のこと)。
【0040】
データ伝送路30は、バスや同軸ケーブル、光ケーブルなどの有線、電磁波や光信号の照射を用いた無線など、メディアの種別は特に限定されない。但し、データ伝送路30は、送信装置10と受信装置間でクロックを供給又は伝達する手段を持たず、交換すべきユーザ・データに相当する(1,0)の2値からなるデータ系列のみを伝送するものとする。
【0041】
図2には、送信装置10の機能的構成を模式的に示している。図示の通り、送信装置10は、送信データ取得部11と、パケット分離部12と、ビット変換部13と、同期信号付加部14と、送信部15と、クロック発生部16で構成される。
【0042】
送信データ取得部11は、受信装置20に送信する送信データを取得し、取得した送信データをパケット分離部12に出力する。送信データ取得部11により取得される送信データは、例えばオーディオ・データ、画像データ、テキスト・データなどの各種のデータであり、情報信号(後述)の部分のデータを構成する。
【0043】
パケット分離部12は、送信データ取得部11から供給されたデータを所定のバイト数からなるパケットに分離し、得られたパケットをビット変換部13に出力する。
【0044】
ビット変換部13は、パケット分離部12から供給されたパケット単位で1と0からなるデータ系列のビット変換を行ない、変換して得られたデータを同期信号付加部14に出力する。ビット変換部13は、情報信号を構成するデータ系列を、同期信号を構成する1と0のパターンと同じものを含まないようにビット変換するものとする(後述)。
【0045】
同期信号付加部14は、ビット変換部13によりビット変換が施されたデータに同期信号を付加し、同期信号を付加したデータを送信部15に出力する。同期信号は、ビット変換された情報信号のデータ系列には含まれない1と0のパターンで構成されるものとする。
【0046】
送信部15は、同期信号付加部14から供給された同期信号が付加されたデータを、送信クロック発生部16から供給される送信クロックを用いて、データ伝送路30上に送出して、受信装置20に向けて送信する。
【0047】
送信クロック発生部16は、例えば、温度補償型水晶発振器(TCXO)などで構成され、発生した送信クロックを送信部15に供給する。送信クロック発生部16により発生される送信クロックの周波数は受信装置20で用いられる受信クロックの周波数と同じである。
【0048】
また、図3には、受信装置20の機能的構成を模式的に示している。図示の通り、受信装置20は、受信部21と、A/D変換部22と、受信クロック発生部23と、同期信号検出部24と、値判定部25と、復号部26と、データ復元部27で構成される。
【0049】
受信部21は、データ伝送路30を介して送信装置10から送信されてきた信号を受信して、A/D変換部22に出力する。続いて、A/D変換部22は、受信クロック発生部23から供給される受信クロックにより定まるサンプリング周期で、受信部21から供給されてきた信号をデジタル信号に変換し、得られたサンプリング値を同期信号検出部24と値判定部25に出力する。
【0050】
本実施形態では、A/D変換部22によるA/D変換により得られたデータは階調を有するサンプリング値であり、まだ、最終的な1又は0の値の判定が行なわれていないものである。すなわち、注目するビットの値が1であると判定する閾値を「上の閾値」と、注目するビットの値が0であると判定する閾値を「下の閾値」を保持し、上の閾値以上のサンプリング値を1として判定され、下の閾値未満のサンプリング値を0として判定するとともに、サンプリング値が上の閾値より低いが下の閾値より高いサンプリング値を中間値として出力する(後述)。
【0051】
受信クロック発生部23は、例えば、温度補償型水晶発振器(TCXO)などよりなり、発生した受信クロックをA/D変換部22に供給する。
【0052】
同期信号検出部24は、A/D変換部22から供給されてくるデータと、値判定部25による1又は0の値の判定結果に基づいて同期信号を検出する。同期信号検出部24は、例えば、所定の数の1の値のビットを連続して検出した場合、そのことを表す信号を値判定部25に出力し、それに続く情報信号におけるビットの値の判定を行なわせる(後述する同期信号の例の場合、このビットの値が0であれば、その0の値のビットが同期信号の末尾のビットということになる)。
【0053】
また、同期信号検出部24は、値判定部25による値の判定結果に基づいて、連続する所定の数の1の値のビットに続くビットの値が0であると判断した場合には、そのビットが同期信号の末尾のビットであると認識し、そのことを表す信号を値判定部25と復号部26に出力する。
【0054】
値判定部25は、1並びに0以外に中間値を含むA/D変換部22の出力に対して最終的な1又は0の値の判定を行なう。すなわち、A/D変換部22から供給されてくるデータの値が中間値である場合に、直前のビットの値と反対の値を、注目するビットの値として判定し、判定結果を同期信号検出部24と復号部26に出力する。また、値判定部25は、同期信号の末尾を検出したことを表す信号が同期信号検出部24から供給されてきた場合、その末尾のビットの確定された値を同期信号に続くビットの値の判定に用いる。値判定部25における処理動作の詳細については後述に譲る。
【0055】
復号部26は、同期信号の末尾を検出したことを表す信号が同期信号検出部24から供給されてきた場合、それ以降、値判定部25から供給されてくる判定結果が情報信号を構成するビットであると認識し、値判定部25から供給されるデータに対して送信装置10で行なわれたビット変換の逆変換を行なう。復号部26による逆変換により得られたデータはデータ復元部27に出力される。
【0056】
データ復元部27は、デコード部26から供給されてきたデータに基づいて送信データを復元する。データ復元部27により復元されたデータは、例えば音声の出力や画像の表示などに用いられる。
【0057】
本実施形態に係るデータ通信システムでは、受信装置20は、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく、送信データを一定の間隔で取り込むだけの受信動作を行なう。すなわち、送信装置10は、2値のデータ系列からなる送信データをデータ伝送路30上に送出し、これに対し、受信装置20側ではこのような送信データを、送信クロックとは同期がとられていない受信クロックで定まる周期でサンプリングする。受信装置20には、受信クロックを送信クロックに同期させるPLL(Phase Lock Loop)などの回路を装備していない点には充分留意されたい。
【0058】
サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく受信動作を行なう場合、サンプリング定理から、サンプリング周波数の1/2以上の周波数の信号は正しくサンプリングすることができない。逆に、受信装置20にすべての値を正しくサンプリングさせるためには、送信装置10は、送信クロックの周波数を受信クロックの周波数(サンプリング周波数)の1/2以下に設定する必要がある。すなわち、非同期通信による伝送容量は、想定する伝送容量の少なくとも1/2以下に低下することになり、伝送効率がよくない。
【0059】
この場合のデータ伝送動作について、図15を参照しながら説明する。同図において、上から1段目の波形は送信データ、2段目の波形は受信クロック、3段目の波形はその受信クロックでサンプリングすることができた受信データをそれぞれ表している。図示の例では、受信装置は時刻t1から時刻t8で行なわれるサンプリングまでは送信データを正しくサンプリングすることができたものの、受信クロックの周波数が低いため、その次のサンプリングのタイミングである時刻t9で本来得られるはずの0の値が欠落している。このように、受信装置が送信クロックと同期しない受信クロックを用いて受信動作を行なう場合、受信クロックの速度によっては、送信されてきたすべてのデータを正確に受信できず、受信データの信頼性を確保するには伝送容量を十分に低くしなければならない。
【0060】
そこで、本実施形態に係るデータ通信システム1では、受信装置20では、受信クロックで定まる周期でサンプリングされるサンプリング値から、注目するビットの値が1であると判定する閾値としての「上の閾値」と、0であると判定する閾値としての「下の閾値」を設ける。さらに、サンプリング値が上の閾値より低く、下の閾値より高い値となる中間値については、その直前のビットの値の反対の値として判定する。このような判定方法は、注目するビットのサンプリング値が中間値であることが、そのサンプル・タイミングで1から0又は0から1に送信データの値が変化したことを表すことに依拠する。
【0061】
したがって、本実施形態に係るデータ通信システム1では、送信装置10で用いる送信クロックと受信装置20で用いる受信クロックを同じ周波数にし、送信クロックと同じ伝送容量での通信が実現される。すなわち、符号化率の低下などを無視すると、例えば、1MHzの送信クロックを用いて1Mbpsの非同期通信を実現することができる。
【0062】
また、送信装置10及び受信装置20がそれぞれ持つ発振器の周波数精度などに応じて送信データのフォーマットを構成することにより、データの欠落のない正しい通信が可能となる。
【0063】
図4には、送信データのフォーマット例を示している。図示の送信データは、同期信号と情報信号からなる。同期信号は、ひとまとまりの情報の区切りを示す機能を持つ。また、受信装置20では、注目するビットのビット値の判定には、適宜その直前の1ビットの値も参照されることから(前述)、ビット列の時間的に前の方で少なくとも1つのビットの値を確定させる必要があり、同期信号はこのビットを確定させるためにも使用される。すなわち、非同期通信では情報信号のみでビットを確定することが困難であるが、同期信号を付加することにより、それに続く情報信号を構成するビットの値の判定が可能になる。情報信号は、送信装置10において選択され、受信装置20に対して送信されたユーザ・データである。
【0064】
図5には、本実施形態に係るデータ通信システム1におけるデータ伝送動作の一例を示している。図示の4つの波形は、上段から順に、送信装置10で用いられる送信クロック、受信装置20に送信される送信データ(同期信号を含む)、受信装置20で用いられる受信クロック、及び、その受信クロックにより定められる周期でサンプリングしてビット値を判定した受信データをそれぞれ示している。
【0065】
図5に示した例では、送信クロックと受信クロックが偶然同期している状態を示している。この場合、送信クロックと受信クロックは同じ周波数であるから、受信クロックの立ち上がりのサンプル・タイミングと、送信データのビット値が変化するタイミングが一致することはない。この状態は、PLLなどで同期クロックを獲得したときと同じ状態である。例えば、受信装置20の発振器の精度誤差により同期がとれなくなるまでの安定している間は、送信データは正しい値のまま受信装置20で受信される。
【0066】
例えば、受信装置20側では、時刻t1で下の閾値より低いサンプリング値が検出され、注目する時刻t1〜t2の期間に現れるビットの値が0として判定される。また、時刻t2では、上の閾値より高いサンプリング値が検出され、注目する時刻t2〜t3の期間に現れるビットの値が1として判定される。このように送信クロックと受信クロックが偶然同期した場合には、クロック毎に正しい値の1ビットの伝送が実現される。
【0067】
また、送信クロックと受信クロックの位相が完全に一致しなくても、サンプル・タイミングと送信データの変化点が一致しない限り、サンプリング値とあらかじめ設定されている閾値に基づいて注目するビットについて1又は0を判定することが可能であり、この場合もクロック毎に正しい値の1ビットの伝送が実現される。
【0068】
続いて、送信装置10からの送信データの変化点と受信装置20におけるサンプル・タイミングが一致する場合について考察する。このような場合、受信装置20側では、受信クロックが定める周期に従って受信信号のサンプリングを行なうと、サンプリング値が上の閾値と下の閾値の中間の範囲となる中間値となるから、2つの閾値を用いた判定のみでは注目するビットの値を判定することはできない。
【0069】
図6には、送信データが1から0、又は0から1に切り替わる変化点とサンプル・タイミングが一致する場合のそれぞれの波形を拡大して示している。同図において、上方に示す3つの波形は、上から順に、送信クロック、送信データ、受信クロックをそれぞれ示している。実線で囲まれたタイミングでは、送信データの値が0から1に変化するタイミングとサンプル・タイミングが一致している。
【0070】
この場合、同図の下方に示すように、サンプリングの時間は完全には0ではなく、また、送信データの値の変化も瞬間的に行なわれず、ある所定の時間で変化することから、同図の最下段の波形に示すように、サンプリングされた値は中間値となる。なお、点線で示す波形は、変化点とサンプル・タイミングが一致しなければ判定できたであろう値「1」の受信データを表す。
【0071】
送信データが1と0の値を繰り返す場合、発振器の精度誤差により位相にずれが生じるまでの期間内では、サンプル・タイミングと変化点が必ず一致し、サンプリング値が中間値となるから、その期間内では値の判定ができない。また、送信データが1と0の値を繰り返さない場合であっても、値が2以上連続しない限りサンプリング値が中間値をとることになり、値の判定ができない可能性が高い。
【0072】
ここで、図6からも分るように、サンプリング値が中間値であることは、そのサンプル・タイミングで送信データのビット値が1から0に、又は0から1に変化したことを表す。したがって、1つのビットの値を正しく判定することができれば、その後のビットの値については、中間値をとるサンプリング値(変化点の存在の検出)と、直前の1ビットの値から推定することができる。
【0073】
受信装置20において、あるビットの値を1として正しく判定することができ、その次の注目するビットにおけるサンプリング値が中間値となった場合、そのサンプル・タイミングにおいて送信データに値の変化(1から0)が生じたことを表すから、注目するビットの値は0として推定することができる。同様に、あるビットの値を0として正しく判定することができ、その次の注目するビットにおけるサンプリング値が中間値となった場合、そのサンプル・タイミングにおいて送信データに値の変化(0から1)が生じたことを表すから、注目するビットの値は1として推定することができる。
【0074】
図7には、受信装置20側で注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定という判定方式を適用した場合におけるデータ伝送動作の例を示している。
【0075】
図示の波形は、上から順に、送信装置10側における送信クロックならびに送信データ、受信装置20側における受信クロック並びにサンプリングされた受信データをそれぞれ示している。受信データには、1と0の他に中間値が現れる。また、同図の最下段の波形は、上述した中間値のビット値判定方式に従った受信データの最終的なビット値の判定結果を示している。図示の例では、時刻t1で送信データの変化点とサンプル・タイミングが一致しているため、時刻t1以降に現れるすべての変化点とサンプル・タイミングが一致している。
【0076】
時刻t1から時刻t24までの送信データは「11110100101101001101010」の値のビットからなる。このうちの時刻t1から時刻t5までの4つの連続する値1のビットと、それに続く1つの値0のビットが同期信号を構成するビットであり、時刻t6以降のビットが情報信号を構成するビットである。
【0077】
同期信号は受信装置20にビットを確定させるための機能を持ち(前述)、情報信号には現れない1及び0のパターンを含むように構成されている。送信装置10では、この同期信号「11110」のうちの先頭を除く「1110」のパターンが情報信号に現れることがないように、送信するデータに対してビット変換を施す。
【0078】
同じ値が所定の数だけ連続する場合、受信装置20は、その連続するビットの数から1つ少ない数のビットだけは、少なくとも前後のデータと関係なく値を正しく判定することができる。例えば、時刻t1のサンプル・タイミングと送信データの変化点が一致し、注目するビットの値をそのサンプリング値だけから判定することができない場合であっても、時刻t2〜t4の期間には変化点がないから、受信装置20は、各時刻t2、t3、t4のそれぞれのタイミングでのサンプリング値に基づいて、4つの連続するビットのうちの先頭を除く3つのビットの値は正しく判定することができる。
【0079】
また、時刻t5では変化点とサンプル・タイミングが一致し、中間値がサンプリングされることになるが、このような場合には、受信装置20は、時刻t5に変化点があると認識し、その直前の時刻t4でサンプリングされたビットの値と反対の値である0を、注目するビットの値として判定する。
【0080】
このように、受信装置20は、時刻t5のサンプリングまでに、情報信号には現れることがないようにビット変換が施されている「1110」のパターンを検出することにより、同期信号を他の信号と識別して、それ以降のデータを情報信号として扱うことができる。同期信号の末尾の値0は、正しい値であることが保証されているものであるため(確定することができたビットであるため)、受信装置20は、以降の値の判定に、その確定されたビットの値を用いることができる。
【0081】
時刻t6で中間値がサンプリングされた場合、受信装置20は、時刻t6に送信データの変化点があると認識し、その直前の同期信号の末尾のビットの値と反対の値である1を時刻t6〜t7の期間に現れる注目するビットの値として判定する。同様に、時刻t6以降の、時刻t7、時刻t9〜t11、時刻t13〜t15、時刻t17、時刻t19〜t24のそれぞれのサンプル・タイミングにおいて中間値がサンプリングされているから、それぞれのタイミングのビットの値が直前のビットの反対の値として判定することによって、最終的な判定結果を取得することができる。また、サンプル・タイミングと送信データの変化点が一致しない各時刻t8、t12、t16、t18では、上の閾値若しくは下の閾値を用いた判定結果に基づいて正しいビット値を判定している。
【0082】
したがって、図7の最下段に示すように、同期信号に続く時刻t6以降のビット値の判定結果は、送信データの情報信号を構成するビット値の系列と同じ「100101101001101010」となる。
【0083】
なお、図8に示すように、サンプル時間に対してデータの変化が急激で、変化点とサンプル・タイミングが一致しても中間値を取ることが困難である場合には、図9に示すように、サンプル時間を長めにとったり、送信側、受信側の送信データが流れるデータ線にダンピング抵抗を挟んだり、あるいは図10に示すように、送信データの変化を故意に鈍らせるようにしてもよい。これにより、中間値を容易に取ることができ、判定結果の信頼性を向上させることができる場合がある。
【0084】
以上のようなビット値の判定を行なう通信方式を採用することにより、高い伝送容量を確保しつつ、データの送受信を行うことができる。すなわち、サンプリング定理に基づく制限から、想定する伝送容量をその1/2以下に設定する必要がない。また、送信側の装置は受信側の装置で用いられるものと同じ周波数の送信クロックでデータを送信するだけであるため、また、受信側の装置もPLLなどの構成が不要であるため、それぞれの装置の構成を単純なものとすることができる。さらに、PLLにより同期が確保されるまでの時間を考慮することなくデータの送受信を開始することができるため、ある一定の量のデータの送信が完了するまでの時間を短縮することができる。
【0085】
ところが、注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定するという上記のビット値判定方式においては、これら上下の閾値を適切に設定しなければならないという問題がある。以下ではこの点について考察する。
【0086】
注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときに、その直前のビットの値の反対の値として判定という判定方式は、下式(1)〜(2)のように表すことができる。但し、サンプリング値をx、例えば、サンプリング値に基づいて値をH(High=1)と判定する上の閾値を0.8、L(Low=0)と判定する下の閾値を0.2、注目するビットの直前のビットの値の判定結果をAとする。
【0087】
【数1】
【0088】
【数2】
【0089】
上下それぞれの閾値は、系の雑音レベルによって設定することが好ましい。例えば、ノイズレベルが±20%の系では、上の閾値を0.7、下の閾値を0.3に設定すると、判定結果が安定することが本発明者らによる実験から判っている。
【0090】
ノイズが少ない系では、上の閾値を0.9、下の閾値を0.1などのように閾値を厳しく設定することにより、最終的に判定される値の信頼性を上げることができる。しかし、閾値を厳しく設定した場合、予期せぬノイズが入り込んだときには、本来、判定可能なデータを中間値と見てしまうため誤判定につながる。一方、閾値を緩く設定した場合、ノイズによる誤判定が多くなる。
【0091】
これらの閾値が適切に決められていないと、誤ったビット判定を行なうことになってしまう。適切な閾値を決めるには、系のノイズなどの信号品質を知らなければならず、送受信装置の間で事前に系の状態を知ることは難しい。また、チャネル状況など系の状態に応じて適切な閾値は時間の経過とともに変動するため、系の状態変化に対して適切に閾値を追従させることも、受信側でのエラーの状態を反映しなければならず、困難である。
【0092】
また、注目するビットのサンプリング値が中間値であるときにはその直前のビットの値の反対の値として判定するというビット値の判定方式を適用しているため、受信側で一度ビット判定の誤りを起こすと、その誤ったビットに続きサンプリング値が中間値となるデータが連続した場合には、中間値となるデータが連続する期間はビット誤りが伝播し続けるという問題が発生する。
【0093】
図16に示す例では、時刻t4において、送信データの切り替わりとサンプル・タイミングが一致し、さらにこのときサンプリングされた中間値が上の閾値を超えてしまったために、ビット値が0でなく1と誤判定されてしまっている。その直後から送信データ系列が0と1が交互に続き、サンプリング値も中間値が続いた場合、ビット値が中間値であるときにはその直前のビットの値の反対の値として判定するビット値判定により、0と1が交互に続く限り、ビット誤り判定が伝播していく。
【0094】
そこで、本実施形態では、送信装置10は、ある決められたデータ長の範囲内に必ず2ビット以上0又は1が連続するようにビット変換して、これを受信クロックと同じ周波数の送信クロックを用いて送信するようにしている。
【0095】
このような場合、受信装置20内の値判定部25は、一度ビット判定の誤りを起こし、その誤ったビットに続きサンプリング値が中間値となるデータが連続した場合であっても、誤りの伝播を上記の符号化方式で用いる変換テーブルによって定まるデータ長の範囲内に収めることが可能となり、通信の信頼性を向上することができる。
【0096】
また、受信装置20内の値判定部25は、ある決められたデータ長の範囲内のすべてのビットのサンプリング値が中間値として受信されたときに、その中間値を使って中間値を判定する閾値を更新するように構成されている。
【0097】
したがって、受信装置20は、信号の受信状態に応じて適切な閾値を決定することが可能となるから、時間の経過とともに受信状態が変化するような通信環境においても、閾値の設定ミスによるビット誤りを減少することができ、データの復号精度を向上させることができる。また、事前の閾値設定を厳密にする必要がなくなるので、システムの設計が簡素化される。
【0098】
図11には、値判定部25の内部構成例を示している。図示の値判定部25は、「0」判定閾値レジスタ31と、「0」値比較部32と、「1」判定閾値レジスタ33と、「1」値比較部34と、「0」「1」判定部35と、閾値コントローラ36を備えている。
【0099】
判定閾値レジスタ31は、閾値コントローラ36から制御信号が入力され、注目するビットの値が0であると判定するための下の閾値を保持する。
【0100】
「0」値比較部32は、A/D変換器22によりA/D変換されたデジタル信号を、「0」判定閾値レジスタ31から与えられる下の閾値と比較して、その大小判定結果を「0」「1」判定部35に出力する。
【0101】
「1」判定閾値レジスタ33は、閾値コントローラ36から制御信号が入力され、注目するビットの値が1であると判定するための上の閾値を保持する。
【0102】
「1」値比較部34は、A/D変換器22によりA/D変換されたデジタル信号を、「1」判定閾値レジスタ33から与えられる下の閾値と比較して、その大小判定結果を「0」「1」判定部35に出力する。
【0103】
「0」「1」判定部35は、「0」値比較部32から供給されるサンプリング値と下の閾値との大小比較結果と、「1」値比較部34から供給されるサンプリング値と上の閾値との大小比較結果を基に、サンプリング値が下の閾値未満であればそのビット値を「0」とし、下の閾値以上であるが上の閾値未満であればそのビット値を確定せず中間値とし、上の閾値以上であればビット値を「1」と判定する。また、中間値と判定した場合には、さらに直前に出力したビット値の反対の値を、当該ビットの値として判定する。そして、このようなビット値の判定結果は、同期信号検出部24と復号部26のそれぞれに出力される。
【0104】
また、「0」「1」判定部35は、同期信号の末尾を検出したことを表す信号が同期信号検出部24から供給されてきた場合には、その末尾の確定されたビット値を同期信号に続く情報信号のビット値の判定に用いる。
【0105】
閾値コントローラ36は、「0」値比較部32からの下の閾値とA/D変換されたサンプリング値との大小比較結果と、「1」値比較部34からの上の閾値とA/D変換されたサンプリング値との大小比較結果を基に、ビット変換部13で用いられた変換テーブルに課せられている、「ある決められたデータ長の範囲内に必ず2ビット以上0又は1が連続する」というデータ系列の制限により、「0」判定閾値レジスタ31に格納されている下の閾値、及び「1」判定閾値レジスタ33に格納されている上の閾値を制御する。
【0106】
続いて、ビット変換部13と値判定部の動作について説明する。
【0107】
既に述べたように、サンプリング値が中間値となる可能性があるのは、そのサンプル・タイミングで1から0又は0から1に送信データの値が変化したときである。
【0108】
送信装置10側では、ビット変換部13は、パケット分離部12から送られてくるパケット単位のデータを、変調後のデータがある決められたビット数の範囲内で必ず「0」又は「1」の2ビット以上連続して出力するような変換テーブルに基づいてデータ系列のビット変換を行なう。
【0109】
例えば、図12に示すような、2ビットを3ビットに変換する変換テーブルを用いた場合、変調後のデータ系列は5ビット以上0と1が交互に続くことはなく、6ビット以内に必ず「0」又は「1」が2ビット以上連続するパターンが出現する。図12に示した変換テーブルによれば、0と1が交互に続くのは最長でも図13に示す4ビットまでである。
【0110】
一方、上述した受信装置20は、2ビット以上同じビットが連続する送信データを受信すると、その2ビットのうち中間値としてサンプリングされるのは多くとも1ビットであり、少なくとも1ビットは「0」又は「1」のどちらかのビット値として判定され、そのデータを受信する前にビット判定誤りがあっても、「0」又は「1」としてサンプリングされたビットにより誤りの伝播は停止する。例えば図12に示した変換テーブルを使用すれば、誤り伝播を5ビット以内に抑制することができる。この場合、5ビットが閾値変更判別単位となることを意味する。
【0111】
また、図12に示した変換テーブルを用いると、正しく受信されていれば中間値が5ビット以上続けてサンプリングされることはないので、言い換えれば、5ビット以上続けて中間値がサンプリングされることが幾度も繰り返されている場合は上下の閾値の少なくとも一方が適切でないと推定することができる。このような場合、値判定部25内の閾値コントローラ36は、適切な閾値を設定して、「0」判定閾値レジスタ31や「1」判定閾値レジスタ33に格納すればよい。
【0112】
図14には、値判定部25において使用する閾値を変更する際のデータ受信動作例を示している。閾値コントローラ36は、A/D変換部22からの出力が5ビット以上続けて中間値として判別されたときには、その5ビット分のA/D変換部22からの出力値のうち1又は0に最も近い値を新たな閾値の候補とする。引き続き5ビット以上の中間値のサンプリングが続くようであれば、そのうちで最も0又は1に近い値を新しい閾値として閾値レジスタ31又は33に設定する。同図に示す例では、中間値が5ビット続いた区間が設定回数である5回だけ出現したので、上の閾値を0.90から0.85に更新している。
【0113】
このようにして、例えばノイズが多く、0や1の値がなかなか受信できず、例えば0.3や0.7のような中間値としてしかデータを受信できない系であっても、その系に応じた適切な閾値に自動的に設定することができる。
【産業上の利用可能性】
【0114】
以上、特定の実施形態を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。
【0115】
本発明に係るデータ通信システムは、バスや同軸ケーブル、光ケーブルなどの有線、電磁波や光信号の照射を用いた無線など、メディアの種別は特に限定されず、さまざまな送受信機間での非同期データ通信に適用することができる。
【0116】
例えば、放送塔などの建造物に設置された発光装置からビデオカメラへのID、広告、地域情報、位置情報などのデータ送信、LEDペンからI/Oディスプレイへの軌跡や識別情報の入力などに適用することができる。
【0117】
要するに、例示という形態で本発明を開示してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本発明の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【図面の簡単な説明】
【0118】
【図1】図1は、本発明の一実施形態に係るデータ通信システムの構成を模式的に示した図である。
【図2】図2は、本発明に係るデータ通信システム1において送信装置10として動作する装置の機能的構成を示したブロック図である。
【図3】図3は、本発明に係るデータ通信システムにおいて受信装置20として動作する装置の機能的構成を模式的に示したブロック図である。
【図4】図4は、送信データのフォーマット例を示した図である。
【図5】図5は、本発明に係るデータ通信システム1におけるデータ伝送動作の一例を示した図である。
【図6】図6は、送信データが切り替わる変化点とサンプル・タイミングが一致する場合のデータ伝送動作の一例を示した図である。
【図7】図7は、注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定するという判定方式を適用した場合におけるデータ伝送動作の例を示した図である。
【図8】図8は、サンプル時間に対してデータの変化が急激で、変化点とサンプル・タイミングが一致しても中間値を取ることが困難となっている様子を示した図である。
【図9】図9は、サンプル時間を長めにとった様子を示した図である。
【図10】図10は、送信データの変化を故意に鈍らせた様子を示した図である。
【図11】図11は、値判定部25の内部構成例を示した図である。
【図12】図12は、ビット変換部13で使用する変換テーブルの構成例を示した図である。
【図13】図13は、図12で示した変換テーブルを用いてビット変換したデータ系列において、0と1が交互に続く最長のパターンを示した図である。
【図14】図14は、値判定部25において使用する閾値を変更するための処理を説明するための図である。
【図15】図15は、送受信間で非同期でデータ伝送する際にデータが欠落する様子を示した図である。
【図16】図16は、ビット判定の誤りが伝播し続ける様子を示した図である。
【符号の説明】
【0119】
1…データ通信システム
10…送信装置
11…送信データ取得部
12…パケット分離部
13…ビット変換部
14…同期信号付加部
15…送信部
16…クロック発生部
20…受信装置
21…受信部
22…A/D変換部
23…受信クロック発生部
24…同期信号検出部
25…値判定部
26…復号部
27…データ復元部
30…データ伝送路
31…「0」判定閾値レジスタ
32…「0」値比較部
33…「1」判定閾値レジスタ
34…「1」値比較部
35…「0」「1」判定部
36…閾値コントローラ
【技術分野】
【0001】
本発明は、送受信装置の間で(1,0)の2値からなるデータ系列を交換するためのデータ通信を行なうデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムに係り、特に、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく、受信装置側では送信されてきたデータを一定の間隔で取り込むだけの受信動作を行なうデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムに関する。
【背景技術】
【0002】
通信端末間のデータ送受信や、コンピュータ本体と周辺機器間のデータ転送、回路基板上の回路モジュール間のデータ信号の伝送など、データ通信技術の用途は幅広い。また、通信に用いられるメディアも、バスや同軸ケーブル、光ケーブルなどの有線、電磁波や光信号の照射を用いた無線などさまざまである。
【0003】
ここで言うデータ通信とは、基本的には、(1,0)の2値からなる系列データを送信側と受信側とで交換し合う処理を意味する。そして、一般的なデータ通信方式では、データの受信側の装置は、送信側の装置から送信されてくるデータの値(1,0)を正しくサンプリングするために、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させておく必要がある。
【0004】
受信クロックを送信クロックに同期させるには、例えば、送信側(若しくはそれ以外の外部装置)から受信側の装置に対して送信クロックと同じクロックを供給する方法と、受信側の装置自身が、送信されてきたデータに基づいて送信クロックと同じクロックを再生する(例えば、パケットのプリアンブルとして付加されている既知シーケンスを用いて同期を獲得する)方法がある。
【0005】
前者の方法では、データ・シーケンスのための伝送路とは別にクロック供給路が必要になることから、その用途は基板上での通信や複数の配線が可能な通信に限定される。また、後者の方法は、シリアル通信(1チャンネル通信)で用いられることが多いが、受信側の装置で送信クロックを再生するためPLL(Phase Locked Loop)が一般的に用いられる。PLLは、例えば、ローパス・フィルタ(LPF)と、位相比較器と、ループ・フィルタと、電圧制御発振器(VCO)で構成されるが、特に高周波領域の信号を扱う場合、アナログ回路で構成しなければならないことが多く、高集積化には向いていない。また、PLLは、原理的に位相がロック(同期)するまでに時間を要することから、特に高速通信には不向きである。
【0006】
受信側の装置に同期を確保させるための上述したそれぞれの方法には不利な点があるにも拘らず、それを許容しなければ、伝送容量を確保しつつ正確にデータを復元させることができない。
【0007】
一方、受信装置側において、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく、送信されてきたデータを一定の間隔で取り込むだけの受信動作が可能となる通信システムが考えられる。
【0008】
しかしながら、サンプリング定理から、サンプリング周波数の1/2以上の周波数の信号は正しくサンプリングすることができないため、受信装置ですべての値を正しくサンプリングさせるためには、送信装置は、送信クロックの周波数を受信クロックの周波数(サンプリング周波数)の1/2以下に設定する必要がある。すなわち、同期をとる手段が受信装置に用意されない場合、実際の伝送容量は想定する伝送容量の少なくとも1/2以下に低下することになり、伝送効率がよくない。
【0009】
これに対し、送信クロックに受信クロックを同期させる手段が設けられていない場合であっても、送信されてきたデータを、正確に、且つ高い伝送容量を確保しつつ受信することができる通信システムについて提案がなされている(例えば、特許文献1を参照のこと)。
【0010】
同通信システムでは、サンプリング値から、注目するビットの値が1であると判定する閾値を「上の閾値」と言い、注目するビットの値が0であると判定する閾値を「下の閾値」と言う。サンプリング値が上の閾値以上の値である場合は注目するビットの値は1として判定され、下の閾値未満の値である場合は注目するビットの値は0として判定される。また、サンプリング値が上の閾値より低く、下の閾値より高い値である場合、この値を中間値という。
【0011】
上述した単純な閾値判定処理では、送信データの値が変化するタイミング、すなわち、1から0に、又は0から1に値が変化するタイミングと、受信装置におけるサンプル・タイミングがほぼ一致する場合には、サンプリング値が中間値となり、受信装置では1,0の値を判定することができない。しかし、注目するビットのサンプリング値が中間値であるということは、そのサンプル・タイミングで、1から0に、又は0から1に送信データの値が変化したことを表し、その直前のビットの値の反対の値として判定することができる。1つのビットの値を正しく判定することができれば、それ以降は、中間値をとるサンプリング値(変化点の存在の検出)と、直前の1ビットの値から推定することができる。したがって、送信クロックに受信クロックを同期させる手段が設けられていない場合であっても、受信装置側では、送信されてきたデータを、正確に、且つ高い伝送容量を確保しつつ受信することができる。
【0012】
具体的には、受信装置で、ある1ビットの値が1として正しく判定することができ、その次の注目するビットのサンプル・タイミングで中間値がサンプリングされた場合、そのことは送信データに値の変化(1から0)が生じたことを表すから、注目するビットの値は0として推定することができる。また、受信装置で、ある1ビットの値が0として正しく判定することができ、その次の注目するビットのサンプル・タイミングで中間値がサンプリングされた場合、そのことは送信データに値の変化(0から1)が生じたことを表すから、注目するビットの値は1として推定することができる。
【0013】
しかしながら、このようなデータ通信方式においては、中間値となる範囲を定義するための、注目するビットの値が1であると判定する「上の閾値」と、0であると判定する「下の閾値」のそれぞれを適切に決める必要がある。
【0014】
これらの閾値が適切に決められていないと、誤ったビット判定を行なうことになってしまう。適切な閾値を決めるには、系のノイズなどの信号品質を知らなければならず、送受信装置の間で事前に系の状態を知ることは難しい。また、チャネル状況など系の状態に応じて適切な閾値は時間の経過とともに変動するため、系の状態変化に対して適切に閾値を追従させることも、受信側でのエラーの状態を反映しなければならず、困難である。
【0015】
また、注目するビットのサンプリング値が中間値であるときにはその直前のビットの値の反対の値として判定するというビット値の判定方式を適用しているため、受信側で一度ビット判定の誤りを起こすと、その誤ったビットに続きサンプリング値が中間値となるデータが連続した場合には、中間値となるデータが連続する期間はビット誤りが伝播し続けるという問題が発生する。
【0016】
【特許文献1】特開2005−354190号公報
【発明の開示】
【発明が解決しようとする課題】
【0017】
本発明の目的は、受信装置側において、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく、送信されてきたデータを一定の間隔で取り込むだけの受信動作によって、正確に、且つ高い伝送容量を確保しつつ受信することができる、優れたデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムを提供することにある。
【0018】
本発明のさらなる目的は、受信装置側では、送信されてきたデータを一定の間隔で取り込むだけの受信動作を行ない、サンプリング値が注目するビットの値が1であると判定する上の閾値以上の値であれば注目するビットの値を1と判定し、サンプリング値が0であると判定する下の閾値未満の値である場合は注目するビットの値を0として判定して、同期タイミングを確保しなくても、正確に、且つ高い伝送容量を確保しつつ受信することができる、優れたデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムを提供することにある。
【0019】
本発明のさらなる目的は、サンプリング値が上の閾値より低く、下の閾値より高い中間値となる場合であっても(0,1)を正確に判定して、高い伝送容量を確保することができる、優れたデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムを提供することにある。
【課題を解決するための手段】
【0020】
本発明は、上記課題を参酌してなされたものであり、その第1の側面は、送信装置と受信装置間において、サンプリング周期を定める受信クロックを送信クロックに同期させることなくデータ通信を行なうデータ通信システムであって、
前記送信装置は、所定のデータ長の範囲内に必ず2ビット以上0又は1が連続するようにデータ系列のビット変換を行ない、該ビット変換したデータ系列を表す信号を前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信し、
前記受信装置は、データ系列を表す受信信号を前記受信クロックで決められる周期に従ってサンプリングし、得られたサンプリング値が上の閾値以上であれば注目するビットが1と判定し、下の閾値未満であれば注目するビットが0と判定し、注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定する、
ことを特徴とするデータ通信システムである。
【0021】
但し、ここで言う「システム」とは、複数の装置(又は特定の機能を実現する機能モジュール)が論理的に集合した物のことを言い、各装置や機能モジュールが単一の筐体内にあるか否かは特に問わない(以下、同様)。
【0022】
本発明は、送受信装置の間で(1,0)の2値からなるデータ系列を交換するためのデータ通信を行なうデータ通信システムに関する。この種のデータ通信においては、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させておくのが一般的であり、受信装置に送信クロックと同期したクロック信号を供給したり、受信装置で送信クロックとの同期を獲得したりする必要があり、回路規模が増大するなどの問題がある。
【0023】
これに対し、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく、送信されてきたデータを一定の間隔で取り込むだけの受信動作が可能となる通信システムが考えられている。すなわち、受信装置側では、データ系列を表す受信信号を前記受信クロックで決められる周期に従ってサンプリングし、得られたサンプリング値が上の閾値以上であれば注目するビットが1と判定し、下の閾値未満であれば注目するビットが0と判定する。そして、注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定することによって、高い伝送容量を確保しながら正確に受信処理することができる。
【0024】
また、受信装置側において、注目するビットのサンプリング値が中間値であるときにはその直前のビットの値の反対の値として判定するという上記のビット値判定方式を適用する場合には、一度ビット判定の誤りを起こすと、その誤ったビットに続きサンプリング値が中間値となるデータが連続すると中間値となるデータが連続する期間はビット誤りが伝播し続けるという問題がある。
【0025】
そこで、本発明に係るデータ通信システムでは、送信装置は、ある決められたデータ長の範囲内に必ず2ビット以上0又は1が連続するようにビット変換して、これを受信クロックと同じ周波数の送信クロックを用いて送信するようにしている。
【0026】
受信装置側では、注目するビットのサンプリング値が中間値であるときにはその直前のビットの値の反対の値として判定するというビット値の判定方式を適用するが、2ビット以上同じビットが連続する送信データを受信すると、その2ビットのうち中間値としてサンプリングされるのは多くとも1ビットであり、少なくとも1ビットは「0」又は「1」のどちらかのビット値として判定され、そのデータを受信する前にビット判定誤りがあっても、「0」又は「1」としてサンプリングされたビットにより誤りの伝播は停止する。すなわち、一度ビット判定の誤りを起こし、その誤ったビットに続きサンプリング値が中間値となるデータが連続した場合であっても、誤りの伝播を上記の符号化方式で用いる変換テーブルによって定まるデータ長の範囲内に収めることが可能となり、通信の信頼性を向上することができる。
【0027】
また、受信装置は、ある決められたデータ長の範囲内のすべてのビットのサンプリング値が中間値として受信されたときに、その中間値を使って中間値を判定する閾値を更新するように構成されている。
【0028】
送信装置において、Nビット以上は0と1が交互に続くことがなくなるような変換テーブルを用いてビット変換を施したデータ系列を送信する場合には、受信装置側では、正しく受信できている限り、Nビット以上続けて受信データが中間値としてサンプリングされることはない。言い換えれば、Nビット以上続けて中間値がサンプリングされたときには、閾値が適切でないと推定することができる。この場合、Nビットが閾値変更判別単位となる。そして、例えばNビットのサンプリング値のうち1又は0に最も近い値を新たな閾値の候補にすることができる。引き続きNビット以上の中間値のサンプリングが続くようであれば、Nビットのサンプリング値のうち1又は0に最も近い値を新たな閾値に設定する。
【0029】
したがって、本発明に係るデータ通信システムによれば、受信装置は、信号の受信状態に応じて適切な閾値を決定することが可能であるから、時間の経過とともに受信状態が変化するような通信環境においても、閾値の設定ミスによるビット誤りを減少することができ、データの復号精度を向上させることができる。また、事前の閾値設定を厳密にする必要がなくなるので、システムの設計が簡素化される。
【0030】
また、本発明の第2の側面は、上述した第1の側面に係るデータ通信システムにおける送信装置としての処理動作をコンピュータ上で実施するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータに対し、
送信データを所定のデータ長のパケット単位に分離するパケット分離手順と、
パケット単位で1と0からなるデータ系列のビット変換を行なって情報信号を生成するビット変換手順と、
情報信号を含んだ送信データを、前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信する送信手順を実行させ、
前記ビット変換手順では、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようなデータ系列にビット変換する、
ことを特徴とするコンピュータ・プログラムである。
【0031】
また、本発明の第3の側面は、上述した第1の側面に係るデータ通信システムにおいて受信装置としての処理動作をコンピュータ上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記送信装置からは、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようなデータ系列にビット変換された情報信号としてデータが送信され、前記コンピュータに対し、
伝送路を介して送信装置からの受信した信号中の情報信号について、前記受信クロックで決められる周期に従ってサンプリングして、1並びに0以外に中間値を含むサンプリング値を出力するA/D変換手順と、
前記A/D変換手順によって得られたサンプリング値について、上の閾値以上であれば注目するビットが1と判定し、下の閾値未満であれば注目するビットが0と判定し、上の閾値と下の閾値の中間の範囲となる中間値であるときには直前のビットの値と反対の値を注目するビットの値として判定する値判定手順と、
前記値判定手順によって得られた1及び0からなるデータ系列に対して、前記送信装置が行なったビット変換とは逆の変換を行なうとともに元のデータを復元するデータ処理手順と、
前記A/D変換手順によって得られたサンプリング値が、前記値判定手順においてNビット以上続けて中間値として判別されたときに、そのNビット分の前記A/D変換部からの出力値のうち1又は0に最も近い値を新たな上又は下の閾値として更新する前記閾値設定手順と、
を実行させることを特徴とするコンピュータ・プログラムである。
【0032】
本発明の第2乃至第3の各側面に係るコンピュータ・プログラムは、コンピュータ上で所定の処理を実現するようにコンピュータ可読形式で記述されたコンピュータ・プログラムを定義したものである。換言すれば、本発明の第2乃至第3の各側面に係るコンピュータ・プログラムをコンピュータ・システムにインストールすることによってコンピュータ・システム上では協働的作用が発揮され、それぞれ本発明の第1の側面に係るデータ通信システムにおける送信装置並びに受信装置として動作する。このような1対のデータ通信装置を起動してデータ伝送路を構築することによって、本発明の第1の側面に係るデータ通信システムと同様の作用効果を得ることができる。
【発明の効果】
【0033】
本発明によれば、受信装置側では、送信されてきたデータを一定の間隔で取り込むだけの受信動作を行ない、サンプリング値が注目するビットの値が1であると判定する上の閾値以上の値であれば注目するビットの値を1と判定し、サンプリング値が0であると判定する下の閾値未満の値である場合は注目するビットの値を0として判定して、同期タイミングを確保しなくても、正確に、且つ高い伝送容量を確保しつつ受信することができる、優れたデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムを提供することができる。
【0034】
また、本発明によれば、サンプリング値が上の閾値より低く、下の閾値より高い中間値となる場合であっても(0,1)を正確に判定して、高い伝送容量を確保することができる、優れたデータ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラムを提供することができる。
【0035】
本発明に係るデータ通信システムでは、送信装置は、ある決められたデータ長の範囲内に必ず2ビット以上0又は1が連続するようにデータを符号化するように構成されている。したがって、受信装置側では注目するビットのサンプリング値が中間値であるときにはその直前のビットの値の反対の値として判定するというビット値の判定方式を適用しているが、一度ビット判定の誤りを起こし、その誤ったビットに続きサンプリング値が中間値となるデータが連続した場合であっても、誤りの伝播を上記の符号化方式で用いる変換テーブルによって定まるデータ長の範囲内に収めることが可能となり、通信の信頼性を向上することができる。
【0036】
また、本発明に係るデータ通信システムでは、受信装置は、ある決められたデータ長の範囲内のすべてのビットのサンプリング値が中間値として受信されたときに、その中間値を使って中間値を判定する閾値を更新するように構成されている。したがって、信号の受信状態に応じて適切な閾値を決定することが可能であるから、時間の経過とともに受信状態が変化するような通信環境においても、閾値の設定ミスによるビット誤りを減少することができ、データの復号精度を向上させることができる。また、事前の閾値設定を厳密にする必要がなくなるので、システムの設計が簡素化される。
【0037】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【発明を実施するための最良の形態】
【0038】
以下、図面を参照しながら本発明の実施形態について詳解する。
【0039】
図1には、本発明の一実施形態に係るデータ通信システムの構成を模式的に示している。同図に示すように、データ通信システム1は、送信装置10と受信装置20で構成され、送信装置10と受信装置20間はデータ伝送路30で接続されている。但し、伝送データは、ひとまとまりの情報の区切りを示す同期信号と、データ本体(ペイロード)からなる情報信号で構成されるものとする(後述並びに図4を参照のこと)。
【0040】
データ伝送路30は、バスや同軸ケーブル、光ケーブルなどの有線、電磁波や光信号の照射を用いた無線など、メディアの種別は特に限定されない。但し、データ伝送路30は、送信装置10と受信装置間でクロックを供給又は伝達する手段を持たず、交換すべきユーザ・データに相当する(1,0)の2値からなるデータ系列のみを伝送するものとする。
【0041】
図2には、送信装置10の機能的構成を模式的に示している。図示の通り、送信装置10は、送信データ取得部11と、パケット分離部12と、ビット変換部13と、同期信号付加部14と、送信部15と、クロック発生部16で構成される。
【0042】
送信データ取得部11は、受信装置20に送信する送信データを取得し、取得した送信データをパケット分離部12に出力する。送信データ取得部11により取得される送信データは、例えばオーディオ・データ、画像データ、テキスト・データなどの各種のデータであり、情報信号(後述)の部分のデータを構成する。
【0043】
パケット分離部12は、送信データ取得部11から供給されたデータを所定のバイト数からなるパケットに分離し、得られたパケットをビット変換部13に出力する。
【0044】
ビット変換部13は、パケット分離部12から供給されたパケット単位で1と0からなるデータ系列のビット変換を行ない、変換して得られたデータを同期信号付加部14に出力する。ビット変換部13は、情報信号を構成するデータ系列を、同期信号を構成する1と0のパターンと同じものを含まないようにビット変換するものとする(後述)。
【0045】
同期信号付加部14は、ビット変換部13によりビット変換が施されたデータに同期信号を付加し、同期信号を付加したデータを送信部15に出力する。同期信号は、ビット変換された情報信号のデータ系列には含まれない1と0のパターンで構成されるものとする。
【0046】
送信部15は、同期信号付加部14から供給された同期信号が付加されたデータを、送信クロック発生部16から供給される送信クロックを用いて、データ伝送路30上に送出して、受信装置20に向けて送信する。
【0047】
送信クロック発生部16は、例えば、温度補償型水晶発振器(TCXO)などで構成され、発生した送信クロックを送信部15に供給する。送信クロック発生部16により発生される送信クロックの周波数は受信装置20で用いられる受信クロックの周波数と同じである。
【0048】
また、図3には、受信装置20の機能的構成を模式的に示している。図示の通り、受信装置20は、受信部21と、A/D変換部22と、受信クロック発生部23と、同期信号検出部24と、値判定部25と、復号部26と、データ復元部27で構成される。
【0049】
受信部21は、データ伝送路30を介して送信装置10から送信されてきた信号を受信して、A/D変換部22に出力する。続いて、A/D変換部22は、受信クロック発生部23から供給される受信クロックにより定まるサンプリング周期で、受信部21から供給されてきた信号をデジタル信号に変換し、得られたサンプリング値を同期信号検出部24と値判定部25に出力する。
【0050】
本実施形態では、A/D変換部22によるA/D変換により得られたデータは階調を有するサンプリング値であり、まだ、最終的な1又は0の値の判定が行なわれていないものである。すなわち、注目するビットの値が1であると判定する閾値を「上の閾値」と、注目するビットの値が0であると判定する閾値を「下の閾値」を保持し、上の閾値以上のサンプリング値を1として判定され、下の閾値未満のサンプリング値を0として判定するとともに、サンプリング値が上の閾値より低いが下の閾値より高いサンプリング値を中間値として出力する(後述)。
【0051】
受信クロック発生部23は、例えば、温度補償型水晶発振器(TCXO)などよりなり、発生した受信クロックをA/D変換部22に供給する。
【0052】
同期信号検出部24は、A/D変換部22から供給されてくるデータと、値判定部25による1又は0の値の判定結果に基づいて同期信号を検出する。同期信号検出部24は、例えば、所定の数の1の値のビットを連続して検出した場合、そのことを表す信号を値判定部25に出力し、それに続く情報信号におけるビットの値の判定を行なわせる(後述する同期信号の例の場合、このビットの値が0であれば、その0の値のビットが同期信号の末尾のビットということになる)。
【0053】
また、同期信号検出部24は、値判定部25による値の判定結果に基づいて、連続する所定の数の1の値のビットに続くビットの値が0であると判断した場合には、そのビットが同期信号の末尾のビットであると認識し、そのことを表す信号を値判定部25と復号部26に出力する。
【0054】
値判定部25は、1並びに0以外に中間値を含むA/D変換部22の出力に対して最終的な1又は0の値の判定を行なう。すなわち、A/D変換部22から供給されてくるデータの値が中間値である場合に、直前のビットの値と反対の値を、注目するビットの値として判定し、判定結果を同期信号検出部24と復号部26に出力する。また、値判定部25は、同期信号の末尾を検出したことを表す信号が同期信号検出部24から供給されてきた場合、その末尾のビットの確定された値を同期信号に続くビットの値の判定に用いる。値判定部25における処理動作の詳細については後述に譲る。
【0055】
復号部26は、同期信号の末尾を検出したことを表す信号が同期信号検出部24から供給されてきた場合、それ以降、値判定部25から供給されてくる判定結果が情報信号を構成するビットであると認識し、値判定部25から供給されるデータに対して送信装置10で行なわれたビット変換の逆変換を行なう。復号部26による逆変換により得られたデータはデータ復元部27に出力される。
【0056】
データ復元部27は、デコード部26から供給されてきたデータに基づいて送信データを復元する。データ復元部27により復元されたデータは、例えば音声の出力や画像の表示などに用いられる。
【0057】
本実施形態に係るデータ通信システムでは、受信装置20は、サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく、送信データを一定の間隔で取り込むだけの受信動作を行なう。すなわち、送信装置10は、2値のデータ系列からなる送信データをデータ伝送路30上に送出し、これに対し、受信装置20側ではこのような送信データを、送信クロックとは同期がとられていない受信クロックで定まる周期でサンプリングする。受信装置20には、受信クロックを送信クロックに同期させるPLL(Phase Lock Loop)などの回路を装備していない点には充分留意されたい。
【0058】
サンプリング周期を定める受信クロックを送信側の送信クロックに同期させることなく受信動作を行なう場合、サンプリング定理から、サンプリング周波数の1/2以上の周波数の信号は正しくサンプリングすることができない。逆に、受信装置20にすべての値を正しくサンプリングさせるためには、送信装置10は、送信クロックの周波数を受信クロックの周波数(サンプリング周波数)の1/2以下に設定する必要がある。すなわち、非同期通信による伝送容量は、想定する伝送容量の少なくとも1/2以下に低下することになり、伝送効率がよくない。
【0059】
この場合のデータ伝送動作について、図15を参照しながら説明する。同図において、上から1段目の波形は送信データ、2段目の波形は受信クロック、3段目の波形はその受信クロックでサンプリングすることができた受信データをそれぞれ表している。図示の例では、受信装置は時刻t1から時刻t8で行なわれるサンプリングまでは送信データを正しくサンプリングすることができたものの、受信クロックの周波数が低いため、その次のサンプリングのタイミングである時刻t9で本来得られるはずの0の値が欠落している。このように、受信装置が送信クロックと同期しない受信クロックを用いて受信動作を行なう場合、受信クロックの速度によっては、送信されてきたすべてのデータを正確に受信できず、受信データの信頼性を確保するには伝送容量を十分に低くしなければならない。
【0060】
そこで、本実施形態に係るデータ通信システム1では、受信装置20では、受信クロックで定まる周期でサンプリングされるサンプリング値から、注目するビットの値が1であると判定する閾値としての「上の閾値」と、0であると判定する閾値としての「下の閾値」を設ける。さらに、サンプリング値が上の閾値より低く、下の閾値より高い値となる中間値については、その直前のビットの値の反対の値として判定する。このような判定方法は、注目するビットのサンプリング値が中間値であることが、そのサンプル・タイミングで1から0又は0から1に送信データの値が変化したことを表すことに依拠する。
【0061】
したがって、本実施形態に係るデータ通信システム1では、送信装置10で用いる送信クロックと受信装置20で用いる受信クロックを同じ周波数にし、送信クロックと同じ伝送容量での通信が実現される。すなわち、符号化率の低下などを無視すると、例えば、1MHzの送信クロックを用いて1Mbpsの非同期通信を実現することができる。
【0062】
また、送信装置10及び受信装置20がそれぞれ持つ発振器の周波数精度などに応じて送信データのフォーマットを構成することにより、データの欠落のない正しい通信が可能となる。
【0063】
図4には、送信データのフォーマット例を示している。図示の送信データは、同期信号と情報信号からなる。同期信号は、ひとまとまりの情報の区切りを示す機能を持つ。また、受信装置20では、注目するビットのビット値の判定には、適宜その直前の1ビットの値も参照されることから(前述)、ビット列の時間的に前の方で少なくとも1つのビットの値を確定させる必要があり、同期信号はこのビットを確定させるためにも使用される。すなわち、非同期通信では情報信号のみでビットを確定することが困難であるが、同期信号を付加することにより、それに続く情報信号を構成するビットの値の判定が可能になる。情報信号は、送信装置10において選択され、受信装置20に対して送信されたユーザ・データである。
【0064】
図5には、本実施形態に係るデータ通信システム1におけるデータ伝送動作の一例を示している。図示の4つの波形は、上段から順に、送信装置10で用いられる送信クロック、受信装置20に送信される送信データ(同期信号を含む)、受信装置20で用いられる受信クロック、及び、その受信クロックにより定められる周期でサンプリングしてビット値を判定した受信データをそれぞれ示している。
【0065】
図5に示した例では、送信クロックと受信クロックが偶然同期している状態を示している。この場合、送信クロックと受信クロックは同じ周波数であるから、受信クロックの立ち上がりのサンプル・タイミングと、送信データのビット値が変化するタイミングが一致することはない。この状態は、PLLなどで同期クロックを獲得したときと同じ状態である。例えば、受信装置20の発振器の精度誤差により同期がとれなくなるまでの安定している間は、送信データは正しい値のまま受信装置20で受信される。
【0066】
例えば、受信装置20側では、時刻t1で下の閾値より低いサンプリング値が検出され、注目する時刻t1〜t2の期間に現れるビットの値が0として判定される。また、時刻t2では、上の閾値より高いサンプリング値が検出され、注目する時刻t2〜t3の期間に現れるビットの値が1として判定される。このように送信クロックと受信クロックが偶然同期した場合には、クロック毎に正しい値の1ビットの伝送が実現される。
【0067】
また、送信クロックと受信クロックの位相が完全に一致しなくても、サンプル・タイミングと送信データの変化点が一致しない限り、サンプリング値とあらかじめ設定されている閾値に基づいて注目するビットについて1又は0を判定することが可能であり、この場合もクロック毎に正しい値の1ビットの伝送が実現される。
【0068】
続いて、送信装置10からの送信データの変化点と受信装置20におけるサンプル・タイミングが一致する場合について考察する。このような場合、受信装置20側では、受信クロックが定める周期に従って受信信号のサンプリングを行なうと、サンプリング値が上の閾値と下の閾値の中間の範囲となる中間値となるから、2つの閾値を用いた判定のみでは注目するビットの値を判定することはできない。
【0069】
図6には、送信データが1から0、又は0から1に切り替わる変化点とサンプル・タイミングが一致する場合のそれぞれの波形を拡大して示している。同図において、上方に示す3つの波形は、上から順に、送信クロック、送信データ、受信クロックをそれぞれ示している。実線で囲まれたタイミングでは、送信データの値が0から1に変化するタイミングとサンプル・タイミングが一致している。
【0070】
この場合、同図の下方に示すように、サンプリングの時間は完全には0ではなく、また、送信データの値の変化も瞬間的に行なわれず、ある所定の時間で変化することから、同図の最下段の波形に示すように、サンプリングされた値は中間値となる。なお、点線で示す波形は、変化点とサンプル・タイミングが一致しなければ判定できたであろう値「1」の受信データを表す。
【0071】
送信データが1と0の値を繰り返す場合、発振器の精度誤差により位相にずれが生じるまでの期間内では、サンプル・タイミングと変化点が必ず一致し、サンプリング値が中間値となるから、その期間内では値の判定ができない。また、送信データが1と0の値を繰り返さない場合であっても、値が2以上連続しない限りサンプリング値が中間値をとることになり、値の判定ができない可能性が高い。
【0072】
ここで、図6からも分るように、サンプリング値が中間値であることは、そのサンプル・タイミングで送信データのビット値が1から0に、又は0から1に変化したことを表す。したがって、1つのビットの値を正しく判定することができれば、その後のビットの値については、中間値をとるサンプリング値(変化点の存在の検出)と、直前の1ビットの値から推定することができる。
【0073】
受信装置20において、あるビットの値を1として正しく判定することができ、その次の注目するビットにおけるサンプリング値が中間値となった場合、そのサンプル・タイミングにおいて送信データに値の変化(1から0)が生じたことを表すから、注目するビットの値は0として推定することができる。同様に、あるビットの値を0として正しく判定することができ、その次の注目するビットにおけるサンプリング値が中間値となった場合、そのサンプル・タイミングにおいて送信データに値の変化(0から1)が生じたことを表すから、注目するビットの値は1として推定することができる。
【0074】
図7には、受信装置20側で注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定という判定方式を適用した場合におけるデータ伝送動作の例を示している。
【0075】
図示の波形は、上から順に、送信装置10側における送信クロックならびに送信データ、受信装置20側における受信クロック並びにサンプリングされた受信データをそれぞれ示している。受信データには、1と0の他に中間値が現れる。また、同図の最下段の波形は、上述した中間値のビット値判定方式に従った受信データの最終的なビット値の判定結果を示している。図示の例では、時刻t1で送信データの変化点とサンプル・タイミングが一致しているため、時刻t1以降に現れるすべての変化点とサンプル・タイミングが一致している。
【0076】
時刻t1から時刻t24までの送信データは「11110100101101001101010」の値のビットからなる。このうちの時刻t1から時刻t5までの4つの連続する値1のビットと、それに続く1つの値0のビットが同期信号を構成するビットであり、時刻t6以降のビットが情報信号を構成するビットである。
【0077】
同期信号は受信装置20にビットを確定させるための機能を持ち(前述)、情報信号には現れない1及び0のパターンを含むように構成されている。送信装置10では、この同期信号「11110」のうちの先頭を除く「1110」のパターンが情報信号に現れることがないように、送信するデータに対してビット変換を施す。
【0078】
同じ値が所定の数だけ連続する場合、受信装置20は、その連続するビットの数から1つ少ない数のビットだけは、少なくとも前後のデータと関係なく値を正しく判定することができる。例えば、時刻t1のサンプル・タイミングと送信データの変化点が一致し、注目するビットの値をそのサンプリング値だけから判定することができない場合であっても、時刻t2〜t4の期間には変化点がないから、受信装置20は、各時刻t2、t3、t4のそれぞれのタイミングでのサンプリング値に基づいて、4つの連続するビットのうちの先頭を除く3つのビットの値は正しく判定することができる。
【0079】
また、時刻t5では変化点とサンプル・タイミングが一致し、中間値がサンプリングされることになるが、このような場合には、受信装置20は、時刻t5に変化点があると認識し、その直前の時刻t4でサンプリングされたビットの値と反対の値である0を、注目するビットの値として判定する。
【0080】
このように、受信装置20は、時刻t5のサンプリングまでに、情報信号には現れることがないようにビット変換が施されている「1110」のパターンを検出することにより、同期信号を他の信号と識別して、それ以降のデータを情報信号として扱うことができる。同期信号の末尾の値0は、正しい値であることが保証されているものであるため(確定することができたビットであるため)、受信装置20は、以降の値の判定に、その確定されたビットの値を用いることができる。
【0081】
時刻t6で中間値がサンプリングされた場合、受信装置20は、時刻t6に送信データの変化点があると認識し、その直前の同期信号の末尾のビットの値と反対の値である1を時刻t6〜t7の期間に現れる注目するビットの値として判定する。同様に、時刻t6以降の、時刻t7、時刻t9〜t11、時刻t13〜t15、時刻t17、時刻t19〜t24のそれぞれのサンプル・タイミングにおいて中間値がサンプリングされているから、それぞれのタイミングのビットの値が直前のビットの反対の値として判定することによって、最終的な判定結果を取得することができる。また、サンプル・タイミングと送信データの変化点が一致しない各時刻t8、t12、t16、t18では、上の閾値若しくは下の閾値を用いた判定結果に基づいて正しいビット値を判定している。
【0082】
したがって、図7の最下段に示すように、同期信号に続く時刻t6以降のビット値の判定結果は、送信データの情報信号を構成するビット値の系列と同じ「100101101001101010」となる。
【0083】
なお、図8に示すように、サンプル時間に対してデータの変化が急激で、変化点とサンプル・タイミングが一致しても中間値を取ることが困難である場合には、図9に示すように、サンプル時間を長めにとったり、送信側、受信側の送信データが流れるデータ線にダンピング抵抗を挟んだり、あるいは図10に示すように、送信データの変化を故意に鈍らせるようにしてもよい。これにより、中間値を容易に取ることができ、判定結果の信頼性を向上させることができる場合がある。
【0084】
以上のようなビット値の判定を行なう通信方式を採用することにより、高い伝送容量を確保しつつ、データの送受信を行うことができる。すなわち、サンプリング定理に基づく制限から、想定する伝送容量をその1/2以下に設定する必要がない。また、送信側の装置は受信側の装置で用いられるものと同じ周波数の送信クロックでデータを送信するだけであるため、また、受信側の装置もPLLなどの構成が不要であるため、それぞれの装置の構成を単純なものとすることができる。さらに、PLLにより同期が確保されるまでの時間を考慮することなくデータの送受信を開始することができるため、ある一定の量のデータの送信が完了するまでの時間を短縮することができる。
【0085】
ところが、注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定するという上記のビット値判定方式においては、これら上下の閾値を適切に設定しなければならないという問題がある。以下ではこの点について考察する。
【0086】
注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときに、その直前のビットの値の反対の値として判定という判定方式は、下式(1)〜(2)のように表すことができる。但し、サンプリング値をx、例えば、サンプリング値に基づいて値をH(High=1)と判定する上の閾値を0.8、L(Low=0)と判定する下の閾値を0.2、注目するビットの直前のビットの値の判定結果をAとする。
【0087】
【数1】
【0088】
【数2】
【0089】
上下それぞれの閾値は、系の雑音レベルによって設定することが好ましい。例えば、ノイズレベルが±20%の系では、上の閾値を0.7、下の閾値を0.3に設定すると、判定結果が安定することが本発明者らによる実験から判っている。
【0090】
ノイズが少ない系では、上の閾値を0.9、下の閾値を0.1などのように閾値を厳しく設定することにより、最終的に判定される値の信頼性を上げることができる。しかし、閾値を厳しく設定した場合、予期せぬノイズが入り込んだときには、本来、判定可能なデータを中間値と見てしまうため誤判定につながる。一方、閾値を緩く設定した場合、ノイズによる誤判定が多くなる。
【0091】
これらの閾値が適切に決められていないと、誤ったビット判定を行なうことになってしまう。適切な閾値を決めるには、系のノイズなどの信号品質を知らなければならず、送受信装置の間で事前に系の状態を知ることは難しい。また、チャネル状況など系の状態に応じて適切な閾値は時間の経過とともに変動するため、系の状態変化に対して適切に閾値を追従させることも、受信側でのエラーの状態を反映しなければならず、困難である。
【0092】
また、注目するビットのサンプリング値が中間値であるときにはその直前のビットの値の反対の値として判定するというビット値の判定方式を適用しているため、受信側で一度ビット判定の誤りを起こすと、その誤ったビットに続きサンプリング値が中間値となるデータが連続した場合には、中間値となるデータが連続する期間はビット誤りが伝播し続けるという問題が発生する。
【0093】
図16に示す例では、時刻t4において、送信データの切り替わりとサンプル・タイミングが一致し、さらにこのときサンプリングされた中間値が上の閾値を超えてしまったために、ビット値が0でなく1と誤判定されてしまっている。その直後から送信データ系列が0と1が交互に続き、サンプリング値も中間値が続いた場合、ビット値が中間値であるときにはその直前のビットの値の反対の値として判定するビット値判定により、0と1が交互に続く限り、ビット誤り判定が伝播していく。
【0094】
そこで、本実施形態では、送信装置10は、ある決められたデータ長の範囲内に必ず2ビット以上0又は1が連続するようにビット変換して、これを受信クロックと同じ周波数の送信クロックを用いて送信するようにしている。
【0095】
このような場合、受信装置20内の値判定部25は、一度ビット判定の誤りを起こし、その誤ったビットに続きサンプリング値が中間値となるデータが連続した場合であっても、誤りの伝播を上記の符号化方式で用いる変換テーブルによって定まるデータ長の範囲内に収めることが可能となり、通信の信頼性を向上することができる。
【0096】
また、受信装置20内の値判定部25は、ある決められたデータ長の範囲内のすべてのビットのサンプリング値が中間値として受信されたときに、その中間値を使って中間値を判定する閾値を更新するように構成されている。
【0097】
したがって、受信装置20は、信号の受信状態に応じて適切な閾値を決定することが可能となるから、時間の経過とともに受信状態が変化するような通信環境においても、閾値の設定ミスによるビット誤りを減少することができ、データの復号精度を向上させることができる。また、事前の閾値設定を厳密にする必要がなくなるので、システムの設計が簡素化される。
【0098】
図11には、値判定部25の内部構成例を示している。図示の値判定部25は、「0」判定閾値レジスタ31と、「0」値比較部32と、「1」判定閾値レジスタ33と、「1」値比較部34と、「0」「1」判定部35と、閾値コントローラ36を備えている。
【0099】
判定閾値レジスタ31は、閾値コントローラ36から制御信号が入力され、注目するビットの値が0であると判定するための下の閾値を保持する。
【0100】
「0」値比較部32は、A/D変換器22によりA/D変換されたデジタル信号を、「0」判定閾値レジスタ31から与えられる下の閾値と比較して、その大小判定結果を「0」「1」判定部35に出力する。
【0101】
「1」判定閾値レジスタ33は、閾値コントローラ36から制御信号が入力され、注目するビットの値が1であると判定するための上の閾値を保持する。
【0102】
「1」値比較部34は、A/D変換器22によりA/D変換されたデジタル信号を、「1」判定閾値レジスタ33から与えられる下の閾値と比較して、その大小判定結果を「0」「1」判定部35に出力する。
【0103】
「0」「1」判定部35は、「0」値比較部32から供給されるサンプリング値と下の閾値との大小比較結果と、「1」値比較部34から供給されるサンプリング値と上の閾値との大小比較結果を基に、サンプリング値が下の閾値未満であればそのビット値を「0」とし、下の閾値以上であるが上の閾値未満であればそのビット値を確定せず中間値とし、上の閾値以上であればビット値を「1」と判定する。また、中間値と判定した場合には、さらに直前に出力したビット値の反対の値を、当該ビットの値として判定する。そして、このようなビット値の判定結果は、同期信号検出部24と復号部26のそれぞれに出力される。
【0104】
また、「0」「1」判定部35は、同期信号の末尾を検出したことを表す信号が同期信号検出部24から供給されてきた場合には、その末尾の確定されたビット値を同期信号に続く情報信号のビット値の判定に用いる。
【0105】
閾値コントローラ36は、「0」値比較部32からの下の閾値とA/D変換されたサンプリング値との大小比較結果と、「1」値比較部34からの上の閾値とA/D変換されたサンプリング値との大小比較結果を基に、ビット変換部13で用いられた変換テーブルに課せられている、「ある決められたデータ長の範囲内に必ず2ビット以上0又は1が連続する」というデータ系列の制限により、「0」判定閾値レジスタ31に格納されている下の閾値、及び「1」判定閾値レジスタ33に格納されている上の閾値を制御する。
【0106】
続いて、ビット変換部13と値判定部の動作について説明する。
【0107】
既に述べたように、サンプリング値が中間値となる可能性があるのは、そのサンプル・タイミングで1から0又は0から1に送信データの値が変化したときである。
【0108】
送信装置10側では、ビット変換部13は、パケット分離部12から送られてくるパケット単位のデータを、変調後のデータがある決められたビット数の範囲内で必ず「0」又は「1」の2ビット以上連続して出力するような変換テーブルに基づいてデータ系列のビット変換を行なう。
【0109】
例えば、図12に示すような、2ビットを3ビットに変換する変換テーブルを用いた場合、変調後のデータ系列は5ビット以上0と1が交互に続くことはなく、6ビット以内に必ず「0」又は「1」が2ビット以上連続するパターンが出現する。図12に示した変換テーブルによれば、0と1が交互に続くのは最長でも図13に示す4ビットまでである。
【0110】
一方、上述した受信装置20は、2ビット以上同じビットが連続する送信データを受信すると、その2ビットのうち中間値としてサンプリングされるのは多くとも1ビットであり、少なくとも1ビットは「0」又は「1」のどちらかのビット値として判定され、そのデータを受信する前にビット判定誤りがあっても、「0」又は「1」としてサンプリングされたビットにより誤りの伝播は停止する。例えば図12に示した変換テーブルを使用すれば、誤り伝播を5ビット以内に抑制することができる。この場合、5ビットが閾値変更判別単位となることを意味する。
【0111】
また、図12に示した変換テーブルを用いると、正しく受信されていれば中間値が5ビット以上続けてサンプリングされることはないので、言い換えれば、5ビット以上続けて中間値がサンプリングされることが幾度も繰り返されている場合は上下の閾値の少なくとも一方が適切でないと推定することができる。このような場合、値判定部25内の閾値コントローラ36は、適切な閾値を設定して、「0」判定閾値レジスタ31や「1」判定閾値レジスタ33に格納すればよい。
【0112】
図14には、値判定部25において使用する閾値を変更する際のデータ受信動作例を示している。閾値コントローラ36は、A/D変換部22からの出力が5ビット以上続けて中間値として判別されたときには、その5ビット分のA/D変換部22からの出力値のうち1又は0に最も近い値を新たな閾値の候補とする。引き続き5ビット以上の中間値のサンプリングが続くようであれば、そのうちで最も0又は1に近い値を新しい閾値として閾値レジスタ31又は33に設定する。同図に示す例では、中間値が5ビット続いた区間が設定回数である5回だけ出現したので、上の閾値を0.90から0.85に更新している。
【0113】
このようにして、例えばノイズが多く、0や1の値がなかなか受信できず、例えば0.3や0.7のような中間値としてしかデータを受信できない系であっても、その系に応じた適切な閾値に自動的に設定することができる。
【産業上の利用可能性】
【0114】
以上、特定の実施形態を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。
【0115】
本発明に係るデータ通信システムは、バスや同軸ケーブル、光ケーブルなどの有線、電磁波や光信号の照射を用いた無線など、メディアの種別は特に限定されず、さまざまな送受信機間での非同期データ通信に適用することができる。
【0116】
例えば、放送塔などの建造物に設置された発光装置からビデオカメラへのID、広告、地域情報、位置情報などのデータ送信、LEDペンからI/Oディスプレイへの軌跡や識別情報の入力などに適用することができる。
【0117】
要するに、例示という形態で本発明を開示してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本発明の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【図面の簡単な説明】
【0118】
【図1】図1は、本発明の一実施形態に係るデータ通信システムの構成を模式的に示した図である。
【図2】図2は、本発明に係るデータ通信システム1において送信装置10として動作する装置の機能的構成を示したブロック図である。
【図3】図3は、本発明に係るデータ通信システムにおいて受信装置20として動作する装置の機能的構成を模式的に示したブロック図である。
【図4】図4は、送信データのフォーマット例を示した図である。
【図5】図5は、本発明に係るデータ通信システム1におけるデータ伝送動作の一例を示した図である。
【図6】図6は、送信データが切り替わる変化点とサンプル・タイミングが一致する場合のデータ伝送動作の一例を示した図である。
【図7】図7は、注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定するという判定方式を適用した場合におけるデータ伝送動作の例を示した図である。
【図8】図8は、サンプル時間に対してデータの変化が急激で、変化点とサンプル・タイミングが一致しても中間値を取ることが困難となっている様子を示した図である。
【図9】図9は、サンプル時間を長めにとった様子を示した図である。
【図10】図10は、送信データの変化を故意に鈍らせた様子を示した図である。
【図11】図11は、値判定部25の内部構成例を示した図である。
【図12】図12は、ビット変換部13で使用する変換テーブルの構成例を示した図である。
【図13】図13は、図12で示した変換テーブルを用いてビット変換したデータ系列において、0と1が交互に続く最長のパターンを示した図である。
【図14】図14は、値判定部25において使用する閾値を変更するための処理を説明するための図である。
【図15】図15は、送受信間で非同期でデータ伝送する際にデータが欠落する様子を示した図である。
【図16】図16は、ビット判定の誤りが伝播し続ける様子を示した図である。
【符号の説明】
【0119】
1…データ通信システム
10…送信装置
11…送信データ取得部
12…パケット分離部
13…ビット変換部
14…同期信号付加部
15…送信部
16…クロック発生部
20…受信装置
21…受信部
22…A/D変換部
23…受信クロック発生部
24…同期信号検出部
25…値判定部
26…復号部
27…データ復元部
30…データ伝送路
31…「0」判定閾値レジスタ
32…「0」値比較部
33…「1」判定閾値レジスタ
34…「1」値比較部
35…「0」「1」判定部
36…閾値コントローラ
【特許請求の範囲】
【請求項1】
送信装置と受信装置間において、サンプリング周期を定める受信クロックを送信クロックに同期させることなくデータ通信を行なうデータ通信システムであって、
前記送信装置は、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようにデータ系列のビット変換を行ない、該ビット変換したデータ系列を表す信号を前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信し、
前記受信装置は、データ系列を表す受信信号を前記受信クロックで決められる周期に従ってサンプリングし、得られたサンプリング値が上の閾値以上であれば注目するビットが1と判定し、下の閾値未満であれば注目するビットが0と判定し、注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定する、
ことを特徴とするデータ通信システム。
【請求項2】
請求項1に記載のデータ通信システムにおいて送信装置として動作するデータ通信装置であって、
送信データを所定のデータ長のパケット単位に分離するパケット分離部と、
パケット単位で1と0からなるデータ系列のビット変換を行なって情報信号を生成するビット変換部と、
情報信号を含んだ送信データを、前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信する送信部を備え、
前記ビット変換部は、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようなデータ系列にビット変換する、
ことを特徴とするデータ通信装置。
【請求項3】
請求項1に記載のデータ通信システムにおいて受信装置として動作するデータ通信装置であって、前記送信装置からは、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようなデータ系列にビット変換された情報信号としてデータが送信され、
伝送路を介して送信装置からの伝送信号を受信する受信部と、
受信した信号中の情報信号について、前記受信クロックで決められる周期に従ってサンプリングして、1並びに0以外に中間値を含むサンプリング値を出力するA/D変換部と、
前記A/D変換部から供給されるサンプリング値について、上の閾値以上であれば注目するビットが1と判定し、下の閾値未満であれば注目するビットが0と判定し、上の閾値と下の閾値の中間の範囲となる中間値であるときには直前のビットの値と反対の値を注目するビットの値として判定する値判定部と、
前記値判定部から供給される1及び0からなるデータ系列に対して、前記送信装置が行なったビット変換とは逆の変換を行なうとともに元のデータを復元するデータ処理部と、
を具備することを特徴とするデータ通信装置。
【請求項4】
前記値判定部は、前記の上の閾値並びに下の閾値を設定する閾値コントローラを備える、
ことを特徴とする請求項3に記載のデータ通信装置。
【請求項5】
前記閾値コントローラは、前記値判定部の出力がNビット以上にわたって0と1が交互に続くことが所定回数だけ発生したときに、前記の上の閾値並びに下の閾値を更新する、
ことを特徴とする請求項4に記載のデータ通信装置。
【請求項6】
前記閾値コントローラは、前記A/D変換部からの出力がNビット以上続けて中間値として判別されたときに、そのNビット分の前記A/D変換部からの出力値のうち1又は0に最も近い値を新たな上又は下の閾値とする、
ことを特徴とする請求項4に記載のデータ通信装置。
【請求項7】
請求項1に記載のデータ通信システムにおいて送信装置として動作するためのデータ通信方法であって、
送信データを所定のデータ長のパケット単位に分離するパケット分離ステップと、
パケット単位で1と0からなるデータ系列のビット変換を行なって情報信号を生成するビット変換ステップと、
情報信号を含んだ送信データを、前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信する送信ステップを備え、
前記ビット変換ステップでは、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようなデータ系列にビット変換する、
ことを特徴とするデータ通信方法。
【請求項8】
請求項1に記載のデータ通信システムにおいて受信装置として動作するためのデータ通信方法であって、前記送信装置からは、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようなデータ系列にビット変換された情報信号としてデータが送信され、
伝送路を介して送信装置からの受信した信号中の情報信号について、前記受信クロックで決められる周期に従ってサンプリングして、1並びに0以外に中間値を含むサンプリング値を出力するA/D変換ステップと、
前記A/D変換ステップにおいて得られたサンプリング値について、上の閾値以上であれば注目するビットが1と判定し、下の閾値未満であれば注目するビットが0と判定し、上の閾値と下の閾値の中間の範囲となる中間値であるときには直前のビットの値と反対の値を注目するビットの値として判定する値判定ステップと、
前記値判定ステップにおいて得られた1及び0からなるデータ系列に対して、前記送信装置が行なったビット変換とは逆の変換を行なうとともに元のデータを復元するデータ処理ステップと、
を具備することを特徴とするデータ通信方法。
【請求項9】
前記の上の閾値並びに下の閾値を設定する閾値設定ステップをさらに備える、
ことを特徴とする請求項8に記載のデータ通信方法。
【請求項10】
前記A/D変換ステップにおいて得られたサンプリング値が、前記値判定ステップにおいてNビット以上続けて中間値として判別されたときに、前記閾値設定ステップでは、そのNビット分の前記A/D変換部からの出力値のうち1又は0に最も近い値を新たな上又は下の閾値として更新する、
ことを特徴とする請求項8に記載のデータ通信方法。
【請求項11】
請求項1に記載のデータ通信システムにおける送信装置としての処理動作をコンピュータ上で実施するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータに対し、
送信データを所定のデータ長のパケット単位に分離するパケット分離手順と、
パケット単位で1と0からなるデータ系列のビット変換を行なって情報信号を生成するビット変換手順と、
情報信号を含んだ送信データを、前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信する送信手順を実行させ、
前記ビット変換手順では、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようなデータ系列にビット変換する、
ことを特徴とするコンピュータ・プログラム。
【請求項12】
請求項1に記載のデータ通信システムにおいて受信装置としての処理動作をコンピュータ上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記送信装置からは、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようなデータ系列にビット変換された情報信号としてデータが送信され、前記コンピュータに対し、
伝送路を介して送信装置からの受信した信号中の情報信号について、前記受信クロックで決められる周期に従ってサンプリングして、1並びに0以外に中間値を含むサンプリング値を出力するA/D変換手順と、
前記A/D変換手順によって得られたサンプリング値について、上の閾値以上であれば注目するビットが1と判定し、下の閾値未満であれば注目するビットが0と判定し、上の閾値と下の閾値の中間の範囲となる中間値であるときには直前のビットの値と反対の値を注目するビットの値として判定する値判定手順と、
前記値判定手順によって得られた1及び0からなるデータ系列に対して、前記送信装置が行なったビット変換とは逆の変換を行なうとともに元のデータを復元するデータ処理手順と、
前記A/D変換手順によって得られたサンプリング値が、前記値判定手順においてNビット以上続けて中間値として判別されたときに、そのNビット分の前記A/D変換部からの出力値のうち1又は0に最も近い値を新たな上又は下の閾値として更新する前記閾値設定手順と、
を実行させることを特徴とするコンピュータ・プログラム。
【請求項1】
送信装置と受信装置間において、サンプリング周期を定める受信クロックを送信クロックに同期させることなくデータ通信を行なうデータ通信システムであって、
前記送信装置は、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようにデータ系列のビット変換を行ない、該ビット変換したデータ系列を表す信号を前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信し、
前記受信装置は、データ系列を表す受信信号を前記受信クロックで決められる周期に従ってサンプリングし、得られたサンプリング値が上の閾値以上であれば注目するビットが1と判定し、下の閾値未満であれば注目するビットが0と判定し、注目するビットのサンプリング値が上の閾値と下の閾値の中間の範囲となる中間値であるときにはその直前のビットの値の反対の値として判定する、
ことを特徴とするデータ通信システム。
【請求項2】
請求項1に記載のデータ通信システムにおいて送信装置として動作するデータ通信装置であって、
送信データを所定のデータ長のパケット単位に分離するパケット分離部と、
パケット単位で1と0からなるデータ系列のビット変換を行なって情報信号を生成するビット変換部と、
情報信号を含んだ送信データを、前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信する送信部を備え、
前記ビット変換部は、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようなデータ系列にビット変換する、
ことを特徴とするデータ通信装置。
【請求項3】
請求項1に記載のデータ通信システムにおいて受信装置として動作するデータ通信装置であって、前記送信装置からは、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようなデータ系列にビット変換された情報信号としてデータが送信され、
伝送路を介して送信装置からの伝送信号を受信する受信部と、
受信した信号中の情報信号について、前記受信クロックで決められる周期に従ってサンプリングして、1並びに0以外に中間値を含むサンプリング値を出力するA/D変換部と、
前記A/D変換部から供給されるサンプリング値について、上の閾値以上であれば注目するビットが1と判定し、下の閾値未満であれば注目するビットが0と判定し、上の閾値と下の閾値の中間の範囲となる中間値であるときには直前のビットの値と反対の値を注目するビットの値として判定する値判定部と、
前記値判定部から供給される1及び0からなるデータ系列に対して、前記送信装置が行なったビット変換とは逆の変換を行なうとともに元のデータを復元するデータ処理部と、
を具備することを特徴とするデータ通信装置。
【請求項4】
前記値判定部は、前記の上の閾値並びに下の閾値を設定する閾値コントローラを備える、
ことを特徴とする請求項3に記載のデータ通信装置。
【請求項5】
前記閾値コントローラは、前記値判定部の出力がNビット以上にわたって0と1が交互に続くことが所定回数だけ発生したときに、前記の上の閾値並びに下の閾値を更新する、
ことを特徴とする請求項4に記載のデータ通信装置。
【請求項6】
前記閾値コントローラは、前記A/D変換部からの出力がNビット以上続けて中間値として判別されたときに、そのNビット分の前記A/D変換部からの出力値のうち1又は0に最も近い値を新たな上又は下の閾値とする、
ことを特徴とする請求項4に記載のデータ通信装置。
【請求項7】
請求項1に記載のデータ通信システムにおいて送信装置として動作するためのデータ通信方法であって、
送信データを所定のデータ長のパケット単位に分離するパケット分離ステップと、
パケット単位で1と0からなるデータ系列のビット変換を行なって情報信号を生成するビット変換ステップと、
情報信号を含んだ送信データを、前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信する送信ステップを備え、
前記ビット変換ステップでは、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようなデータ系列にビット変換する、
ことを特徴とするデータ通信方法。
【請求項8】
請求項1に記載のデータ通信システムにおいて受信装置として動作するためのデータ通信方法であって、前記送信装置からは、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようなデータ系列にビット変換された情報信号としてデータが送信され、
伝送路を介して送信装置からの受信した信号中の情報信号について、前記受信クロックで決められる周期に従ってサンプリングして、1並びに0以外に中間値を含むサンプリング値を出力するA/D変換ステップと、
前記A/D変換ステップにおいて得られたサンプリング値について、上の閾値以上であれば注目するビットが1と判定し、下の閾値未満であれば注目するビットが0と判定し、上の閾値と下の閾値の中間の範囲となる中間値であるときには直前のビットの値と反対の値を注目するビットの値として判定する値判定ステップと、
前記値判定ステップにおいて得られた1及び0からなるデータ系列に対して、前記送信装置が行なったビット変換とは逆の変換を行なうとともに元のデータを復元するデータ処理ステップと、
を具備することを特徴とするデータ通信方法。
【請求項9】
前記の上の閾値並びに下の閾値を設定する閾値設定ステップをさらに備える、
ことを特徴とする請求項8に記載のデータ通信方法。
【請求項10】
前記A/D変換ステップにおいて得られたサンプリング値が、前記値判定ステップにおいてNビット以上続けて中間値として判別されたときに、前記閾値設定ステップでは、そのNビット分の前記A/D変換部からの出力値のうち1又は0に最も近い値を新たな上又は下の閾値として更新する、
ことを特徴とする請求項8に記載のデータ通信方法。
【請求項11】
請求項1に記載のデータ通信システムにおける送信装置としての処理動作をコンピュータ上で実施するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータに対し、
送信データを所定のデータ長のパケット単位に分離するパケット分離手順と、
パケット単位で1と0からなるデータ系列のビット変換を行なって情報信号を生成するビット変換手順と、
情報信号を含んだ送信データを、前記受信装置で用いられる受信クロックと同じ周波数の送信クロックを用いて送信する送信手順を実行させ、
前記ビット変換手順では、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようなデータ系列にビット変換する、
ことを特徴とするコンピュータ・プログラム。
【請求項12】
請求項1に記載のデータ通信システムにおいて受信装置としての処理動作をコンピュータ上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記送信装置からは、所定のデータ長Nの範囲内に必ず2ビット以上0又は1が連続するようなデータ系列にビット変換された情報信号としてデータが送信され、前記コンピュータに対し、
伝送路を介して送信装置からの受信した信号中の情報信号について、前記受信クロックで決められる周期に従ってサンプリングして、1並びに0以外に中間値を含むサンプリング値を出力するA/D変換手順と、
前記A/D変換手順によって得られたサンプリング値について、上の閾値以上であれば注目するビットが1と判定し、下の閾値未満であれば注目するビットが0と判定し、上の閾値と下の閾値の中間の範囲となる中間値であるときには直前のビットの値と反対の値を注目するビットの値として判定する値判定手順と、
前記値判定手順によって得られた1及び0からなるデータ系列に対して、前記送信装置が行なったビット変換とは逆の変換を行なうとともに元のデータを復元するデータ処理手順と、
前記A/D変換手順によって得られたサンプリング値が、前記値判定手順においてNビット以上続けて中間値として判別されたときに、そのNビット分の前記A/D変換部からの出力値のうち1又は0に最も近い値を新たな上又は下の閾値として更新する前記閾値設定手順と、
を実行させることを特徴とするコンピュータ・プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【公開番号】特開2007−288660(P2007−288660A)
【公開日】平成19年11月1日(2007.11.1)
【国際特許分類】
【出願番号】特願2006−115665(P2006−115665)
【出願日】平成18年4月19日(2006.4.19)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
【公開日】平成19年11月1日(2007.11.1)
【国際特許分類】
【出願日】平成18年4月19日(2006.4.19)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
[ Back to top ]