(57)【要約】【課題】送信されるデータ信号に外乱ノイズが混入しやすい環境にあっても、非同期方式により正しくデータを受信することができる受信回路を実現する。【解決手段】非同期データ受信回路１００は、受信信号をサンプリングして得られた信号値の和から受信信号の値を推定する積分量算出・傾き検出部１０を備えている。そして、推定された受信信号の値が変化するデータ変化点を参照して、再生クロック生成部５０にて再生クロックの立ち上がりタイミングを設定し、推定された受信信号の値を参照して、同期確認・データ再生部６０にて再生データの値を設定する。【選択図】図１
2011211377.tif 000002
【特許請求の範囲】
【請求項１】
送信クロックの周期の１／Ｎ倍の周期を有するサンプリングクロックで受信信号をサンプリングして得られた信号値の和から上記受信信号の値を推定する推定手段と、
上記推定手段により推定された上記受信信号の値が変化するデータ変化点を参照して再生クロックの立ち上がりタイミングを設定する再生クロック生成手段と、
上記推定手段により推定された上記受信信号の値を参照して再生データの値を設定する再生データ生成手段と、を備え、
上記推定手段は、既にサンプリングしたＮクロック分の信号値を加算することによって上記和を算出する算出手段と、上記和が増加して第１の閾値ＴＨＨに至るクロック、及び、上記和が減少して第２の閾値ＴＨＬに至るクロックにおいて推定値が変化するように、上記受信信号の推定値を設定する設定手段と、を含んでおり、
上記第１の閾値ＴＨＨ、および、上記第２の閾値ＴＨＬは、ＴＨＨ＋ＴＨＬ＝Ｎ、および、ＴＨＬ＜ＴＨＨ＜Ｎを満たすように定められている、ことを特徴とする受信回路。
【請求項２】
有効なデータ変化点が所定回数検出されると同期状態に遷移する同期判定手段を更に備えており、
上記同期判定手段は、Ｐｔを同期基準位置、ｔをデータ変化点検出時刻、Ｄｐを許容誤差として、｜ｔ−（Ｐｔ＋Ｎ）｜≦Ｄｐが満たされるときに、そのデータ変化点が有効なデータ変化点であると判定する、
ことを特徴とする請求項１に記載の受信回路。
【請求項３】
Ｐｔを同期基準位置、ｔを現在時刻として、データ変化点未検出期間｜ｔ−Ｐｔ｜が所定の長さに達すると非同期状態に遷移する同期判定手段を更に備えている、
ことを特徴とする請求項１に記載の受信回路。
【請求項４】
上記再生クロックの立ち上がりタイミングにおいてデータ変化点が所定回数以上連続して検出されなかった場合に、状態を非同期状態に遷移させる同期判定手段を更に備えている、
ことを特徴とする請求項１に記載の受信回路。
【請求項５】
無効なデータ変化点が所定回数以上検出されると非同期状態に遷移する同期判定手段を更に備えており、
上記同期判定手段は、Ｐｔを同期基準位置、ｔをデータ変化点検出時刻、Ｄｐを許容誤差として、｜（ｔ＋Ｎ−Ｐｔ）％Ｎ−（Ｎ／２）｜＜Ｎ／２−Ｄｐが満たされるときに、そのデータ変化点が無効なデータ変化点であると判定する、
ことを特徴とする請求項１に記載の受信回路。
【請求項６】
請求項１から５までの何れか１項に記載の受信回路を備えることを特徴とする光受信器。
【請求項７】
送信クロックの周期の１／Ｎ倍の周期を有するサンプリングクロックで受信信号をサンプリングして得られた信号値の和から上記受信信号の値を推定する推定ステップと、
上記推定ステップにて推定された上記受信信号の値が変化するデータ変化点を参照して再生クロックの立ち上がりタイミングを設定する再生クロック生成ステップと、
上記推定ステップにて推定された上記受信信号の値を参照して再生データの値を設定する再生データ生成ステップと、を含み、
上記推定ステップは、既にサンプリングしたＮクロック分の信号値を加算することによって上記和を算出する算出ステップと、上記和が増加して第１の閾値ＴＨＨに至るクロック、及び、上記和が減少して第２の閾値ＴＨＬに至るクロックにおいて推定値が変化するように、上記受信信号の推定値を設定する設定ステップと、を含んでおり、
上記第１の閾値ＴＨＨ、および、上記第２の閾値ＴＨＬは、ＴＨＨ＋ＴＨＬ＝Ｎ、および、ＴＨＬ＜ＴＨＨ＜Ｎを満たすように定められている、ことを特徴とする受信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、主に、非同期方式によりデータを受信する受信回路および受信方法に関する。また、そのような受信回路を備えた光受信器に関する。
【背景技術】
【０００２】
データの通信方式には、同期方式と非同期方式とが存在する。同期方式は、伝送されるクロック信号にあわせてデータの送受信を行う方式であり、非同期方式は、通信を行う各装置が自ら生成するクロック信号にあわせてデータの送受信を行う方式である。
【０００３】
データラインを介して送信されたデータを非同期方式により受信する場合、受信回路は、自らが生成するクロック信号の周期よりも非常に短い周期（以下、「サンプリング周期」と称する）でデータラインをサンプリングする。そして、サンプリングによりスタートビットを検出すると、クロック信号の周期の半分の時間だけ経過した後に、クロック信号を生成してデータラインからデータを読み出し、その後、ストップビットを検出するまで周期的にクロック信号を生成してデータラインからデータを読み出すようになっている。
【０００４】
このようにサンプリングをすることにより、受信回路は、非同期方式により送信されたデータを通常正しく受信することができる。しかしながら、例えば、送信装置がデータを送信する速度が変動したり、送信装置が生成するクロックの位相が変動したりすると、受信回路はデータを正しく受信することができなくなる場合がある。
【０００５】
特許文献１には、送信装置がデータを送信する速度が変動したり、送信装置が生成するクロックの位相が変動したりしても、非同期方式によりデータを正しく受信することが可能な受信回路が開示されている。この受信回路は、スタートビット検出後にも常にサンプリング周期でサンプリングを行うことにより、スタートビットだけでなくデータ信号の全パルスの立ち上がりや立ち下がりを検出するようになっている。そして、検出したパルスの立ち上がりや立ち下がりのタイミングが予想される範囲（変化予想ウインドウ）内にある場合には、有効なデータ変化点として扱い（すなわち、そのパルスを受信ビットとして取扱い）、そうでない場合には、データ変化点が無効であるものとして取り扱う（すなわち、そのパルスを受信ビットとして取扱わない）とともに、次のパルスの立ち上がりや立ち下がりの変化予想ウインドウを適切に設定するようになっている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平８−１３９７１１号公報（１９９６年５月３１日公開）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記特許文献１の受信回路は、受信信号に短周期の外乱ノイズが混入した場合、このノイズを正常な信号とみなして変化予想ウインドウを不適切に設定してしまい、その後に、データを正しく受信できなくなるという問題があった。特に、可視光通信に用いられる光受信器においては、太陽光や照明光などの環境光、あるいは、他の光送信器（例えば、受信すべき信号光を出力する光送信器以外の光送信器）から出力された信号光の偶発的な受光によって、このような問題がしばしば生じていた。また、光信号を光電変換することにより得られた光電流を処理する電気回路に混入する電源ノイズや静電気ノイズなどによっても、このような問題を生じることがあった。
【０００８】
本発明は、上記課題に鑑みてなされたものであり、その目的は、外乱ノイズが混入しやすい環境にあっても、非同期方式による安定した受信が可能な受信回路を実現することにある。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明に係る受信回路は、送信クロックの周期の１／Ｎ倍の周期を有するサンプリングクロックで受信信号をサンプリングして得られた信号値の和から上記受信信号の値を推定する推定手段と、上記推定手段により推定された上記受信信号の値が変化するデータ変化点を参照して再生クロックの立ち上がりタイミングを設定する再生クロック生成手段と、上記推定手段により推定された上記受信信号の値を参照して再生データの値を設定する再生データ生成手段と、を備え、上記推定手段は、既にサンプリングしたＮクロック分の信号値を加算することによって上記和を算出する算出手段と、上記和が増加して第１の閾値ＴＨＨに至るクロック、及び、上記和が減少して第２の閾値ＴＨＬに至るクロックにおいて推定値が変化するように、上記受信信号の推定値を設定する設定手段と、を含んでおり、上記第１の閾値ＴＨＨ、および、上記第２の閾値ＴＨＬは、ＴＨＨ＋ＴＨＬ＝Ｎ、および、ＴＨＬ＜ＴＨＨ＜Ｎを満たすように定められている、ことを特徴としている。
【００１０】
また、上記課題を解決するために、本発明に係る受信方法は、送信クロックの周期の１／Ｎ倍の周期を有するサンプリングクロックで受信信号をサンプリングして得られた信号値の和から上記受信信号の値を推定する推定ステップと、上記推定ステップにて推定された上記受信信号の値が変化するデータ変化点を参照して再生クロックの立ち上がりタイミングを設定する再生クロック生成ステップと、上記推定ステップにて推定された上記受信信号の値を参照して再生データの値を設定する再生データ生成ステップと、を含み、上記推定ステップは、既にサンプリングしたＮクロック分の信号値を加算することによって上記和を算出する算出ステップと、上記和が増加して第１の閾値ＴＨＨに至るクロック、及び、上記和が減少して第２の閾値ＴＨＬに至るクロックにおいて推定値が変化するように、上記受信信号の推定値を設定する設定ステップと、を含んでおり、上記第１の閾値ＴＨＨ、および、上記第２の閾値ＴＨＬは、ＴＨＨ＋ＴＨＬ＝Ｎ、および、ＴＨＬ＜ＴＨＨ＜Ｎを満たすように定められている、ことを特徴としている。
【００１１】
上記構成によれば、受信信号をサンプリングして得られた信号値そのものからではなく、受信信号をサンプリングして得られた信号値の和（積分）から受信信号の値が推定される。このため、推定された受信信号の値は、受信信号に混入した短周期のノイズによって生じる信号値の変化に対して安定である。故に、推定された受信信号の値に基づいて生成される再生クロックおよび再生データも、受信信号に混入した短周期のノイズによって生じる信号値の変化に対して安定である。したがって、上記の構成によれば、外乱ノイズが混入しやすい環境にあっても、安定した受信が可能な受信回路を実現することができる。
【００１２】
さらに、上記の構成によれば、第１の閾値ＴＨＨおよび第２の閾値ＴＨＬが、ＴＨＨ＋ＴＨＬ＝Ｎを満たすように設定されているので、受信信号のパルス幅と受信信号の推定値がＨｉｇｈ値となる期間とを一致させることができる。すなわち、受信信号を正しく推定することができる。しかも、第１の閾値ＴＨＨおよび第２の閾値ＴＨＬが、ＴＨＬ＜ＴＨＨ＜Ｎを満たすように設定されているので、周期が送信クロックの半分以下である短周期のノイズが受信信号に混入しても、このノイズによって受信信号の推定値がＨｉｇｈ値に転じることがない。すなわち、周期が送信クロックの半分以下であるノイズに影響されることなく、受信信号を正しく推定することができる。
【００１３】
本発明に係る受信回路は、非同期状態においてデータ変化点が検出されると後方保護状態に遷移し、その後、後方保護状態において有効なデータ変化点が所定回数検出されると同期状態に遷移する同期判定手段を更に備えており、上記同期判定手段は、Ｐｔを同期基準位置、ｔをデータ変化点検出時刻、Ｄｐを許容誤差として、｜ｔ−（Ｐｔ＋Ｎ）｜≦Ｄｐが満たされるときに、そのデータ変化点が有効なデータ変化点であると判定する、ことが好ましい。
【００１４】
上記の構成によれば、非同期状態から後方保護状態を経て同期状態に遷移するので、偶発的な理由により誤って同期状態に遷移してしまうことを防止することができる。このため、より信頼性の高い受信回路を実現することができる。しかも、｜ｔ−（Ｐｔ＋Ｎ）｜≦Ｄｐが満たされるときに、そのデータ変化点が有効なデータ変化点であると判定するようにしているので、データフレームの先頭に１０交番（１０１０１０１０…）からなるヘッダが設けられている場合に、データフレームの先頭を正常に受信しているか否かを正確かつ簡便に判定することができる。
【００１５】
本発明に係る受信回路においては、Ｐｔを同期基準位置、ｔを現在時刻として、データ変化点未検出期間｜ｔ−Ｐｔ｜が所定の長さに達すると非同期状態に遷移する同期判定手段を更に備えている、ことが好ましい。
【００１６】
上記の構成によれば、上記所定の長さ以上の周期を有する長周期のノイズが受信信号に混入した場合、または、上記所定の長さ以上の期間に渡って無信号状態が続いた場合に、非同期状態であると判定することができる。したがって、このような長周期のノイズまたは無信号状態によって誤った再生データおよび再生クロックを生成し続けてしまうことを防止することができる。
【００１７】
本発明に係る受信回路においては、上記再生クロックの立ち上がりタイミングにおいてデータ変化点が所定回数以上連続して検出されなかった場合に、状態を非同期状態に遷移させる同期判定手段を更に備えていることが好ましい。
【００１８】
上記の構成によれば、上記所定回数をＮｐ回とすると、送信クロックのＮｐ倍以上の周期を有する長周期のノイズが受信信号に混入した場合、または、送信クロックのＮｐ倍以上の期間に渡って無信号状態が続いた場合に、非同期状態であると判定することができる。したがって、このような長周期のノイズまたは無信号状態によって誤った再生データおよび再生クロックを生成し続けてしまうことを防止することができる。
【００１９】
本発明に係る受信回路は、同期状態において、無効なデータ変化点が検出されると前方保護状態に遷移し、その後、前方保護状態において、無効なデータ変化点が所定回数以上検出されると非同期状態に遷移する同期判定手段を更に備えており、上記同期判定手段は、Ｐｔを同期基準位置、ｔをデータ変化点検出時刻、Ｄｐを許容誤差として、｜（ｔ＋Ｎ−Ｐｔ）％Ｎ−（Ｎ／２）｜＜Ｎ／２−Ｄｐが満たされるときに、そのデータ変化点が無効なデータ変化点であると判定する、ことが好ましい。
【００２０】
上記の構成によれば、同期状態から前方保護状態を経て非同期状態に遷移するので、偶発的な理由により誤って非同期状態に遷移してしまうことを防止することができる。このため、よりノイズに強い受信回路を実現することができる。
【００２１】
なお、上記の受信回路を備えた光受信器も本発明の範疇に含まれる。このような光受信器も、上記受信回路と同様の効果を奏する。
【発明の効果】
【００２２】
以上のように、本発明に係る受信回路は、受信信号をサンプリングして得られた信号値の和から上記受信信号の値を推定する推定手段を備えており、上記推定手段により推定された上記受信信号の値に基づいて再生クロックおよび再生データが生成される。したがって、外乱ノイズが混入しやすい環境にあっても、安定した受信が可能な受信回路を実現することができる。
【図面の簡単な説明】
【００２３】
【図１】本発明の実施形態に係る非同期データ受信回路の構成を示すブロック図である。
【図２】図１に示した非同期データ受信回路が備える積分量算出・傾き検出部の構成を示すブロック図である。
【図３】図１に示した非同期データ受信回路がサンプリングした非同期データ信号の値と、非同期データ受信回路の各ブロックが保持する各種データの値との関係をサンプリング周期ごとに示したタイミングチャートである。
【図４】図１に示した非同期データ受信回路における同期判定方法を示す状態遷移図である。
【図５】（ａ）は、図４に示した非同期状態における非同期データ受信回路の動作を示す図であり、（ｂ）は、図４に示した後方保護状態における非同期データ受信回路の動作を示す図である。
【図６】図４に示した同期状態における非同期データ受信回路の動作を示す図である。
【図７】（ａ）は、図４に示した前方保護状態１における非同期データ受信回路の動作を示す図であり、（ｂ）図４に示した前方保護状態２における非同期データ受信回路の動作を示す図である。
【図８】図１に示した非同期データ受信回路が備えるクロック乗せ換え部における、信号の入出力のタイミングを示すタイミングチャートである。
【図９】光送信器と、図１に示した非同期データ受信回路を備える光受信器と、を含む光通信システムを示すブロック図である。
【発明を実施するための形態】
【００２４】
本発明の一実施形態に係る受信回路について、図１〜図８に基づいて説明すれば以下のとおりである。なお、本実施形態に係る受信回路は、非同期方式によりデータを受信するものであるため、以下ではこれを「非同期データ受信回路」と呼称する。また、本実施形態に係る受信回路が受信する受信信号のことを、以下では「非同期データ」と呼称する。
【００２５】
（非同期データ受信回路の構成）
まず、本実施形態に係る非同期データ受信回路１００の構成について、図１を参照して説明する。図１は、本実施形態に係る非同期データ受信回路１００の構成を示すブロック図である。
【００２６】
図１に示すように、非同期データ受信回路１００は、積分量算出・傾き検出部（推定手段）１０、データ変化点検出部３０、再生クロック生成部（再生クロック生成手段）５０、および、同期確認・データ再生部（再生データ生成手段、同期判定手段）６０を備えたクロックデータリカバリ（ＣＤＲ）回路、並びに、クロック乗せ換え部７０を備えている。
【００２７】
ＣＤＲ回路の各部には、共通のサンプリングクロックが供給されている。このサンプリングクロックは、受信する非同期データの送信クロックよりも高速に設定されている。以下では、サンプリングクロックの周期（以下では「サンプリング周期」と呼称する）が送信クロックの周期の１／Ｎに設定されているものとする。
【００２８】
以下、図１および図３を参照しながらクロックデータリカバリ回路の各部の動作について説明する。図３は、Ｎ＝１０の場合の非同期データ受信回路１００の動作例を示すタイミングチャートである。
【００２９】
積分量算出・傾き検出部１０は、受信した非同期データをサンプリングクロックが入力される度にサンプリングし、各クロックにおける信号値（”０”または”１”）を得る。そして、積分量算出・傾き検出部１０は、Ｎクロック前にサンプリングした信号値から１クロック前にサンプリングした信号値までの和を算出し、算出した和（以下「積分量」と呼称する）をデータ変化点検出部３０および同期確認・データ再生部６０に出力する。図３に示した例では、１０クロック前にサンプリングした信号値（ＦＦ９）から１クロック前にサンプリングした信号値（ＦＦ０）までの和を積分量としている。
【００３０】
また、積分量算出・傾き検出部１０は、算出した積分量に基づいて、受信した非同期データの値を推定する。具体的には、積分量がＨｉｇｈ閾値ＴＨＨを下回る値からＨｉｇｈ閾値ＴＨＨになったクロックにおいて推定値が“−”から“＋”に転じ、積分量がＬｏｗ閾値ＴＨＬを上回る値からＬｏｗ閾値ＴＨＬになったクロックにおいて推定値が“＋”から“−”に転じるように、各クロックにおける推定値を設定する（ＴＨＨ＋ＴＨＬ＝Ｎ，ＴＨＬ＜ＴＨＨ＜Ｎ）。そして、非同期データの値が”１”であると推定したクロックにおいては推定値”＋”を、非同期データの値が”０”であると推定したクロックにおいては推定値”−”を、データ変化点検出部３０および同期確認・データ再生部６０に出力する。
【００３１】
なお、積分量算出・傾き検出部１０にて設定される推定値は、積分量が増加する期間で”＋”に転じ、積分量が減少する期間で”−”に転じる。これに因んで、本明細書においては、非同期データの推定値のことを「傾き」と呼称する。図３に示した例では、積分量が７（Ｈｉｇｈ閾値ＴＨＨ）を下回る値から７になる１８クロック目、３６クロック目、および、７８クロック目で「傾き」が”＋”に転じ、積分量が３（Ｌｏｗ閾値ＴＨＬ）を上回る値から３になる２８クロック目、および、７０クロック目で「傾き」が”−”に転じている。なお、積分量算出・傾き検出部１０の詳細な構成については、参照する図面を代えて後述する。
【００３２】
データ変化点検出部３０は、サンプリングクロックが入力される度に、積分量算出・傾き検出部１０から「傾き」を取得する。そして、現クロックにて取得した「傾き」が前クロックにて取得した「傾き」と異なる場合には、現クロックがデータ変化点であると判定し、データ変化点を検出したことを示す信号を再生クロック生成部５０および同期確認・データ再生部６０に出力する。例えば、前クロックにて取得した「傾き」が”−”であり、現クロックにて取得した「傾き」が”＋”である場合（あるいはその逆の場合）に、データ変化点を検出したことを示す信号を再生クロック生成部５０および同期確認・データ再生部６０に出力する。図３に示した例では、黒塗りの三角印で示したとおり、１８クロック目、２８クロック目、…、７８クロック目がデータ変化点と判定されている。
【００３３】
再生クロック生成部５０は、サンプリングクロックが入力される度に、データ変化点であることを示す信号がデータ変化点検出部３０から入力されるかを確認する。そして、受信動作開始後に最初にデータ変化点を検出したクロックをＰとして、Ｐ＋ｋ×Ｎ（ｋ＝０，１，２，…）クロックで立ち上がり、Ｎ／２クロック後に立ち下がるクロックパルスを生成し、生成したクロックパルスを再生クロック（wclk_in）として同期確認・データ再生部６０およびクロック乗せ換え部７０に出力する。図３に示した例では、上向きの矢印で示したとおり、１８クロック目、２８クロック目、…、７８クロック目で立ち上がり、下向きの矢印で示したとおり、２３クロック目、３３クロック目、…、７３クロック目で立ち下がる再生クロックが生成されている。
【００３４】
同期確認・データ再生部６０は、各再生クロックにおける再生データの値を、その再生クロックの立ち上がるタイミングで積分量算出・傾き検出部１０から入力される「傾き」および積分量に基づいて設定する。具体的には、「傾き」が”＋”である場合、積分量がＨｉｇｈ閾値ＴＨＨ以上であれば、再生データの値を“１”に、そうでなければ、再生データの値を“０”に設定する。一方、「傾き」が”−”である場合、積分量がＬｏｗ閾値ＴＨＬ以下であれば、再生データの値を“０”に、そうでなければ、再生データの値を“１”に設定する。生成された再生データは、クロック乗せ換え部７０に出力される。図３に示した例では、例えば、１８クロック目で立ち上がる再生クロックにおける再生データの値が、１８クロック目における傾き”＋”と積分量”７”とに基づいて”１”に設定されている。また、６８クロック目で立ち上がる再生クロックにおける再生データの値が、６８クロック目における傾き”＋”と積分量”５”とに基づいて”０”に設定されている。
【００３５】
また、同期確認・データ再生部６０は、非同期状態、後方保護状態、同期状態、および、前方保護状態（前方保護状態１および前方保護状態２を含む）間の状態遷移を用いて同期判定を行う。遷移先の状態は、データ変化点検出部３０からデータ変化点を検出したことを示す信号が入力されるタイミングや、再生クロック生成部５０から入力される再生クロックが立ち上がるタイミングなどに基づいて決定される。なお、状態遷移を用いた同期判定の方法について、参照する図面を代えて後述する。
【００３６】
なお、同期確認・データ再生部６０は、同期状態および前方保護状態において、再生データをクロック乗せ換え部７０に供給する。非同期状態および後方保護状態においては、再生データをクロックの乗せ変え部７０に供給しなくてもよい。つまり、同期していないと判定されている間は、再生データの出力を停止してもよい。
【００３７】
クロック乗せ換え部７０は、同期確認・データ再生部６０から入力される再生データを、再生クロック生成部５０から入力される再生クロックからシリアルクロック（rclk_in）に乗せかえる処理を行う。すなわち、再生クロック（wclk_in）に同期していた再生データ（wdata_in）は、シリアルクロックに同期したデータ（rdata_out）に変換されて出力される。
【００３８】
（積分量算出・傾き検出部の詳細）
次に、積分量算出・傾き検出部１０のより詳細な構成について図２を参照して説明する。図２は、積分量算出・傾き検出部１０の要部構成を示すブロック図である。
【００３９】
図２に示すように、積分量算出・傾き検出部１０は、Ｎ個（Ｎ＝１０）のフリップフロップ１１ａ〜１１ｊ（ＦＦ０〜ＦＦ９）、積分量算出部（算出手段）１２、および、傾き検出部（設定手段）１３を備えている。積分量算出・傾き検出部１０が備える各部は以下のように動作する。
【００４０】
すなわち、フリップフロップ１１ａ〜１１ｊは、Ｎクロック前にサンプリングした信号値から１クロック前にサンプリングした信号値を保持する。
【００４１】
積分量算出部１２は、各サンプリングクロックにおいて、フリップフロップ１１ａ〜１１ｊが保持している値を加算することによって積分量を算出し、算出した積分量を傾き検出部１３に出力する。
【００４２】
傾き検出部１３は、前クロックの傾き（不図示のメモリに保持されている）と、積分量算出部１２から入力された積分量とに基づいて、現クロックの傾きを設定する。より具体的には、傾き検出部１３は、以下の手順で現クロックの傾きを設定する。
【００４３】
最初に、傾き検出部１３は、前クロックの傾きが“＋”であるか“−”であるかを判定する。そして、前クロックの傾きが“−”である場合、傾き検出部１３は、積分量算出部１２から入力された積分量をＨｉｇｈ閾値（第１の閾値）ＴＨＨと比較する。そして、積分量がＨｉｇｈ閾値ＴＨＨ以上であれば、現クロックの傾きを“＋”に設定し、積分量がＨｉｇｈ閾値ＴＨＨよりも小さければ、現クロックの傾きを前クロックの傾きと同じ値（すなわち“−”）に設定する。言い換えれば、積分量がＨｉｇｈ閾値ＴＨＨを下回る値からＨｉｇｈ閾値ＴＨＨになった時点で傾きを“−”から“＋”に変更する。
【００４４】
ここで、Ｈｉｇｈ閾値ＴＨＨは、非同期データの値が”１”であると推定するのに必要な積分量を意味する。言い換えれば、直近のＮクロック（Ｎクロック前から１クロック前まで）においてＴＨＨ回以上”１”をサンプリングしたときに、初めて傾き（非同期データの推定値）が“＋”に設定される。すなわち、”１”をサンプリングしても、それが直近のＮクロックにおいてＴＨＨ回以上生じなければ、非同期データの値が”１”であるとは推定されず、外乱ノイズによる非同期データの短周期の変動は無視される。Ｈｉｇｈ閾値ＴＨＨは、Ｎ／２＜ＴＨＨ＜Ｎの範囲で設定され、Ｈｉｇｈ閾値ＴＨＨがＮに近いほど、データとしての確実性は上がるが、許容できるノイズ（ここでは、Lowパルス）のパルス幅が小さく（または、パルス数が少なく）なる。
【００４５】
一方、前クロックの傾きが“＋”である場合、傾き検出部１３は、積分量算出部１２から入力された積分量をＬｏｗ閾値（第２の閾値）ＴＨＬと比較する。そして、積分量がＬｏｗ閾値ＴＨＬ以下であれば、現クロックの傾きを“−”に設定し、積分量がＬｏｗ閾値ＴＨＬよりも大きければ、現クロックの傾きを前クロックの傾きと同じ値（すなわち“＋”）に設定する。言い換えれば、積分量がＬｏｗ閾値ＴＨＬを上回る値からＬｏｗ閾値ＴＨＬになった時点で傾きを“＋”から“−”に変更する。
【００４６】
ここで、Ｌｏｗ閾値ＴＨＬは、ＴＨＬ＝Ｎ−ＴＨＨ（図３に示した例では、１０−７＝３）に設定される。これは、再生データにおいて”１”のパルス幅と”０”のパルス幅を一致させるためである。
【００４７】
（状態遷移を用いた同期判定）
同期判定に用いられる状態について、図４に基づいて説明する。図４は、同期判定に用いられる状態と、状態間の遷移とを示した状態遷移図である。本実施形態においては、図４に示すように、同期判定に、同期状態、非同期状態、後方保護状態、前方保護状態１、前方保護状態２の５状態を用いる。
【００４８】
受信動作の開始時（初期状態）は非同期状態である。非同期状態において、データ変化点が検出されると後方保護状態に遷移し、その後、後方保護状態において、有効なデータ変化点が所定回数検出されると同期状態に遷移する。有効なデータ変化点とは、同期基準位置から推定されたデータ変化点検出時刻と実際のデータ変化点検出時刻との差が許容誤差以下であることを指す。また、同期状態において、無効なデータ変化点が検出されると前方保護状態１に遷移し、その後、前方保護状態１において、無効なデータ変化点が所定回数以上検出されると非同期状態に遷移する。また、同期状態において、所定の期間に渡ってデータ変化点が検出されない場合には前方保護状態２に遷移し、その後、再生クロックの立ち上がりタイミングにおいてデータ変化点が所定回数以上連続して検出されなかった場合には非同期状態に遷移する。
【００４９】
なお、これら５つの状態間の遷移は、上述したとおり、同期確認・データ再生部６０によって管理される。各状態における同期確認・データ再生部６０の動作アルゴリズムは以下のとおりである。
【００５０】
（非同期状態から同期状態になるまでの動作）
非同期状態から同期状態になるまで同期確認・データ再生部６０の動作アルゴリズムについて図４および図５を参照して説明する。図５（ａ）は非同期状態における同期確認・データ再生部６０の動作アルゴリズムを示す図であり、図５（ｂ）は後方保護状態における同期確認・データ再生部６０の動作アルゴリズムを示す図である。
【００５１】
なお、図５において、Ｎｂは後方保護段数であり、「有効なデータ変化点」をＮｂ回連続して検出した場合に同期状態に遷移するように予め定められた値である。後方保護段数Ｎｂは０に設定することも可能であり、この場合、非同期状態においてデータ変化点が検出されると、後方保護状態を経ずに直ちに同期状態へ遷移する（後方保護状態は存在しない）。また、Ｃｂは後方保護回数であり、後方保護状態に遷移してから現在までに「有効なデータ変化点」を連続して検出した回数を示す値である。
【００５２】
図５（ａ）に示すように、非同期状態においてデータ変化点を検出すると、同期基準位置Ｐtをデータ変化点検出時刻ｔに設定（初期化）すると共に、Ｃｂ≧Ｎｂであるか否かを判定する。Ｃｂ≧Ｎｂである場合、前方保護回数Ｃｆを０に初期化し、同期状態に遷移する。一方、Ｃｂ＜Ｎｂである場合、後方保護回数Ｃｂの値を１増加させ、後方保護状態に遷移する。
【００５３】
なお、非同期状態においてデータ変化点が検出された時にＣｂ≧Ｎｂが満たされるには、後方保護段数Ｎｂが０に設定されていることが必要である。すなわち、非同期状態から同期状態への直接的な遷移は、後方保護段数Ｎｂが０に設定されている場合にのみ起こり得る。
【００５４】
図５（ｂ）に示すように、後方保護状態においてデータ変化点を検出すると、検出されたデータ変化点が「有効なデータ変化点」であるか否かを判定する。この判定には、例えば、下記の判定式（１）が用いられ、この判定式が満たされる場合に「有効なデータ変化点」であると判定される（ここでは、Ｎ＝１０）。すなわち、同期基準位置Ｐｔから推定されるデータ変化点検出時刻Ｐｔ＋Ｎと、実際のデータ変化点検出時刻ｔとの差｜ｔ−（Ｐｔ＋Ｎ）｜が許容誤差Ｄｐ以下であるときに、「有効なデータ変化点」であると判定される。
【００５５】
｜ｔ−（Ｐｔ＋Ｎ）｜≦Ｄｐ    ・・・（１）
上記の例では、データフレームの先頭に、１０交番（１０１０１０１０…）からなるヘッダが設けられている。このため、データフレームの先頭を正常に受信している場合には、データ変化点がＮサンプリングクロック毎に検出される。すなわち、同期基準位置Ｐｔから推定されるデータ変化点検出時刻Ｐｔ＋Ｎと、実際のデータ変化点検出時刻ｔとの差｜ｔ−（Ｐｔ＋Ｎ）｜が許容誤差Ｄｐ以下であるか否かを判定することによって、データフレームのヘッダを正常に受信しているか否かを正確かつ簡便に判定することができる。
【００５６】
「有効なデータ変化点」であると判定された場合、現在の後方保護回数ＣｂがＣｂ≧Ｎｂであるか否かを判定する。Ｃｂ≧Ｎｂである場合、同期基準位置ＰｔをＰｔ＋Ｎに更新し（ここでは、Ｎ＝１０）、前方保護回数Ｃｆを０に初期化し、同期状態に遷移する。一方、Ｃｂ＜Ｎｂである場合、同期基準位置ＰｔをＰｔ＋Ｎに更新し（ここでは、Ｎ＝１０）、後方保護回数Ｃｂを１増加させ、後方保護状態を維持する。一方、後方保護状態において検出されたデータ変化点が「有効なデータ変化点」でないと判定された場合には、後方保護回数Ｃｂを０に初期化するとともに、非同期状態に遷移する。
【００５７】
なお、後方保護段数Ｎｂ＝０の構成、すなわち、後方保護状態を経ずに非同期状態から同期状態へ遷移する構成は、データがフレーム構成でない場合、すなわち、データをビット同期させたい場合に有利である。一方、後方保護段数Ｎｂ＞０の構成、すなわち、後方保護状態を経て非同期状態から同期状態へ遷移する構成は、データがフレーム構成である場合、すなわち、データをフレーム同期させたい場合に有利である。
【００５８】
（同期状態から非同期状態になるまでの動作）
次に、同期状態から非同期状態になるまでの同期確認・データ再生部６０の動作アルゴリズムについて、図４、図６、および、図７を参照して説明する。図６は、同期状態における同期確認・データ再生部６０の動作アルゴリズムを示す図であり、図７（ａ）は、前方保護状態１における同期確認・データ再生部６０の動作アルゴリズムを示す図であり、図７（ｂ）は、前方保護状態２における同期確認・データ再生部６０の動作アルゴリズムを示す図である。
【００５９】
なお、図６および図７において、Ｎｆは前方保護段数であり、「無効なデータ変化点」をＮｆ回連続して検出した場合に非同期状態に遷移するように予め定められた値である。前方保護段数Ｎｆは０に設定することも可能であり、この場合、同期状態において無効なデータ変化点が検出されると、前方保護状態を経ずに直ちに非同期状態へ遷移する（前方保護状態は存在しない）。また、Ｃｆは前方保護回数であり、前方保護状態に遷移してから現在までに「無効なデータ変化点」を連続して検出した回数を示す値である。さらに、Ｎｐは、データ変化点未検出保護段数であり、データ変化点がＮｐ回連続して検出されなかった場合に、非同期状態に遷移するように予め定められた値である。
【００６０】
図６に示すように、同期状態においてデータ変化点を検出すると、検出されたデータ変化点が「無効なデータ変化点」であるか否かを判定する。この判定には、例えば、下記の判定式（２）が用いられ、この判定式が満たされる場合に「無効なデータ変化点」であると判定される（ここでは、Ｎ＝１０）。なお、判定式（２）において、“％”は剰余を表わす。
【００６１】
｜（ｔ＋Ｎ−Ｐｔ）％Ｎ−（Ｎ／２）｜＜Ｎ／２−Ｄｐ    ・・・（２）
「無効なデータ変化点」であると判定すると、現在の前方保護回数ＣｆがＣｆ≧Ｎｆであるか否かを判定する。Ｃｆ≧Ｎｆである場合、後方保護回数Ｃｂを０に初期化し、非同期状態に遷移する。なお、同期状態において無効なデータ変化点が検出された時にＣｆ≧Ｎｆが満たされるには、前方保護段数Ｎfが０に設定されていることが必要である。すなわち、同期状態から非同期状態への直接的な遷移は、前方保護段数Ｎｆが０に設定されている場合にのみ起こり得る。一方、Ｃｆ＜Ｎｆである場合、前方保護回数Ｃｆを１増加させ、同期基準位置Ｐｔを（ｔ＋Ｎ）−（ｔ＋Ｎ−Ｐｔ）％Ｎに更新し、前方保護状態に遷移する。
【００６２】
「無効なデータ変化点」でないと判定した場合には、同期基準位置Ｐｔを（ｔ＋Ｎ）−（ｔ＋Ｎ−Ｐｔ）％Ｎに更新し、同期状態を維持する。
【００６３】
また、同期確認・データ再生部６０は、データ変化点が検出されたクロックにおいて上記の処理を行うのみならず、各クロックにおいて同期基準位置Ｐｔからの経過時間｜ｔ−Ｐｔ｜（以下、「データ変化点未検出期間」と呼称する）を監視し、データ変化点未検出期間が所定の長さ（ここでは、１０×Ｎｐサンプリングクロック周期）に達した時点で前方保護状態２に遷移する。
【００６４】
次に、前方保護状態１から他の状態へ遷移する場合の動作を図７（ａ）を参照して説明する。
【００６５】
前方保護状態１においては、図７（ａ）に示すように、データ変化点が検出されると、検出されたデータ変化点が「無効なデータ変化点」であるか否かを判定する。この判定は、同期状態においてデータ変化点が検出された場合の判定と同じである。
【００６６】
「無効なデータ変化点」であると判定すると、現在の前方保護回数ＣｆがＣｆ≧Ｎｆであるか否かを判定する。Ｃｆ≧Ｎｆである場合、前方保護回数Ｃｆを０に初期化し、非同期状態に遷移する。一方、Ｃｆ＜Ｎｆである場合、前方保護回数Ｃｆを１増加させ、同期基準位置Ｐｔを（ｔ＋Ｎ）−（ｔ＋Ｎ−Ｐｔ）％Ｎに更新し、前方保護状態１を維持する。
【００６７】
「無効なデータ変化点」でないと判定した場合には、前方保護回数Ｃｆを０に初期化し、同期基準位置Ｐｔを（ｔ＋Ｎ）−（ｔ＋Ｎ−Ｐｔ）％Ｎに更新し、同期状態に遷移する。
【００６８】
このように、前方保護状態１を経て非同期状態に遷移する構成を採用することによって、受信データのあいまいさを許容した、よりノイズに強い受信回路を実現することができる。このような構成は、特に、受信データがフレーム構成である場合に有効である。ただし、このような構成を採用する場合には、あいまいさを許容することと引き換えに、受信データを誤認識する可能性が高くなる。したがって、このような構成を採用する場合には、データフレームの中にＣＲＣ(巡回冗長検査：Cyclic Redundancy Check）やパリティビットなどを付加し、非同期データ受信回路１００の後段にＣＲＣチェックやパリティチェックなどの誤り検出手段を設けることが好ましい。
【００６９】
次に、前方保護状態２から他の状態へ遷移する場合の動作を図７（ｂ）を参照して説明する。
【００７０】
前方保護状態２においては、図７（ｂ）に示すように、再生クロックの立ち上がりタイミングにおいて、データ変化点を検出したか否かを判定する。
【００７１】
データ変化点を検出していないと判定した場合、Ｃｐ≧Ｎｐであるか否かを判定する。ここで、Ｎｐは、再生クロックの立ち上がりタイミングにおいて、データ変化点がＮｐ回連続して検出されなかった場合に非同期状態に遷移するように予め定められた値である。また、Ｃｐは、再生クロックの立ち上がりタイミングにおいて、連続してデータ変化点が検出されなかった回数を示す値である。
【００７２】
Ｃｐ≧Ｎｐであると判定した場合、データ変化点未検出回数Ｃｐを０に初期化し、非同期状態に遷移する。一方、Ｃｐ＜Ｎｐであると判定した場合、データ変化点未検出回数Ｃｐを１増加させ、前方保護状態２を維持する。
【００７３】
データ変化点を検出したと判定した場合には、データ変化点未検出回数Ｃpを０に初期化して、同期状態に遷移する。
【００７４】
このように、前方保護状態２を経て非同期状態に遷移する構成は、特に、送信データがスクランブルされている（パワーの偏りを防ぐため、値が０になる（値が１になる）ビットが連続しないようにコーディングされている）場合に有効である。このようなコーディングの例としては、ＣＭＩ符号、マンチェスタ符号、４Ｂ／５Ｂ符号、８Ｂ／１０Ｂ符号などが挙げられる。８Ｂ／１０Ｂ符号の場合、同じビットの連続が５ビット以下となるため、データ変化点未検出保護段数Ｎｐを６以上に設定すると良い。
【００７５】
上記のようにして、同期確認・データ再生部６０では、同期状態、非同期状態、後方保護状態、前方保護状態１、および、前方保護状態２の５つの状態を管理している。そして、同期確認・データ再生部６０は、少なくとも同期状態および前方保護状態において、上述した再生データの出力を行う（非同期状態および後方保護状態においては、再生データの出力を行ってもよいし、行わなくても良い）。
【００７６】
なお、本実施形態は、上記のようにして、同期状態、非同期状態、後方保護状態、前方保護状態１、及び、前方保護状態２の５状態を用いて同期判定を行うものであるが、本発明はこれに限定されるものではない。すなわち、これら５状態全てを利用することなく同期判定を行う構成を採用してもよい。例えば、前方保護状態１と前方保護状態２とのうち何れか１つを省略し、４状態を用いた同期判定を行う構成を採用してもよい。例えば、前方保護状態２を省略する場合、データ変化点未検出期間が所定の長さに達した時点で同期状態から前方保護状態２に遷移する上記の構成に代えて、データ変化点未検出期間が所定の長さに達した時点で同期状態から直ちに非同期状態に遷移する構成を採用すればよい。より明確に言えば、Ｐｔを同期基準位置、ｔを現在時刻として、データ変化点未検出期間｜ｔ−Ｐｔ｜が所定の長さ（例えば、１０×Ｎｐサンプリングクロック周期）に達した時点で、同期状態から直ちに非同期状態に遷移する構成すればよい。また、データがフレーム構成でない場合などには、後方保護状態、前方保護状態１、前方保護状態２を省略し、２状態を用いた状態判定を行う構成を採用してもよい。
【００７７】
（付記事項）
なお、クロック乗せ換え部７０が、再生クロック生成部５０からの再生クロックにあわせて同期確認・データ再生部６０から入力される非同期データを、シリアルクロック（rclk_in）にあわせて読み取り、読み取ったデータ（rdata_out）を出力する処理のタイミングチャートを図８に示す。図８において、wcnt,rcntは、それぞれライトポインタ、リードポインタを表わしている。wcnt_pは、wcntが0または１である場合に”H”となり、それ以外の場合に”L”となるパルス信号である。wcnt_p_ltOは、wcnt_pを、読み出しクロックrcnt_inに同期した信号にクロック乗せ変えした信号である。wcnt_p_lt1, wcnt_p_lt2は、それぞれ、wcnt_p_lt0を１ビットおよび２ビットシフトさせた信号である。rcnt_ld_pは、wcnt_p_lt2を前方微分した信号である。なお、図８のタイミングチャートについては、当業者であれば、その意味を容易に理解できるので、詳しい説明は省略することとする。
【００７８】
また、非同期データ受信回路１００は、例えば図９に示すような、光送信器６００と光受信器５００とを含む光通信システム１０００に適用することができる。光通信システム１０００において、光送信器６００は、送信しようとするデータに応じてＬＥＤの発光量を制御するＬＥＤ制御回路を備えている。また、光通信システム１０００において、光受信器５００は、光（信号光）を検出するＰＤ（フォトダイオード）と、ＰＤの検出信号を増幅する信号増幅回路と、信号増幅回路により増幅されたＰＤの検出信号が入力される非同期データ受信回路１００と、非同期データ受信回路１００にシリアルクロックを供給するとともに、非同期データ受信回路１００から供給されたデータを処理する信号処理回路を備えている。このように、外乱のノイズの影響を受けやすい光通信システム１０００（可視光通信システム）においても、非同期データ受信回路１００を搭載することによって、光受信器５００を安定的に動作させることができる。なお、光受信器５００において、光（信号光）を検出するための手段は、上述したＰＤ（フォトダイオード）に限定されない。すなわち、光受信器５００が備えているＰＤは、フォトトランジスタなど、信号光を検出可能な任意の光センサに置換可能である。
【産業上の利用可能性】
【００７９】
本発明は、非同期通信によりデータを送受信するシステムに好適に利用することができる。一例として、可視光通信によりデータを送受信する光通信システムに好適に利用することができる。
【符号の説明】
【００８０】
１００    非同期データ受信回路（受信回路）
１０        積分量算出・傾き検出部（推定手段）
１１ａ〜１１ｊ  フリップフロップ
１２            積分量算出部（算出手段）
１３            傾き検出部（設定手段）
３０        データ変化点検出部
５０        再生クロック生成部（再生クロック生成手段）
６０        同期確認・データ再生部（再生データ生成手段、同期判定手段）
７０        クロック乗せ換え部
５００    光受信器
６００    光送信器
１０００  光通信システム
【図１】
2011211377.tif 000003
【図２】
2011211377.tif 000004
【図３】
2011211377.tif 000005
【図４】
2011211377.tif 000006
【図５】
2011211377.tif 000007
【図６】
2011211377.tif 000008
【図７】
2011211377.tif 000009
【図８】
2011211377.tif 000010
【図９】
2011211377.tif 000011