(57)【特許請求の範囲】
【請求項１】
クロック成分を含む伝送路符号によって符号化された信号を、バス通信路を介して送受信するトランシーバであって、
第１のクロックを発生させる自走クロック発生手段と、
前記バス通信路上の信号から抽出したクロック成分に基づき、該信号の１ビット幅を前記第１のクロックでカウントする周期カウント手段と、
前記周期カウント手段でのカウント結果である周期カウント値に従って、前記第１のクロックを分周することにより、少なくとも、前記バス通信路上の信号の１ビット幅に相当する周期を有した第２のクロックを生成する同期クロック生成手段と、
前記第２のクロックとは非同期に供給され、スタートビットで始まるＮＲＺ符号の送信データをサンプリングするサンプリング手段と、
前記サンプリング手段によってサンプリングされた送信データを前記伝送路符号に符号化し且つ前記第２のクロックに同期させて前記バス通信路に出力する送信手段と、
を備え、
前記同期クロック生成手段は、前記第２のクロックの１周期の間にＮ（Ｎは３以上の整数）個のサンプリング用エッジを有する逓倍クロックを生成し、
前記サンプリング手段は、Ｎが奇数の場合はＰ＝（Ｎ＋１）／２、Ｎが偶数の場合は、Ｐ＝Ｎ／２またはＰ＝（Ｎ＋２）／２のいずれかとして、前記送信データのスタートビットの開始エッジを検出すると、以後、前記逓倍クロックのＰ＋ｋ・Ｎ番目（但し，ｋ＝０，１，２…）のサンプリング用エッジのタイミングで、前記送信データをサンプリングすることを特徴とするトランシーバ。
【請求項２】
クロック成分を含む伝送路符号によって符号化された信号を、バス通信路を介して送受信するトランシーバであって、
第１のクロックを発生させる自走クロック発生手段と、
前記バス通信路上の信号から抽出したクロック成分に基づき、該信号の１ビット幅を前記第１のクロックでカウントする周期カウント手段と、
前記周期カウント手段でのカウント結果である周期カウント値に従って、前記第１のクロックを分周することにより、少なくとも、前記バス通信路上の信号の１ビット幅に相当する周期を有した第２のクロックを生成する同期クロック生成手段と、
前記第２のクロックとは非同期に供給され、スタートビットで始まるＮＲＺ符号の送信データをサンプリングするサンプリング手段と、
前記サンプリング手段にてサンプリングされた送信データを前記伝送路符号に符号化し且つ前記第２のクロックに同期させて前記バス通信路に出力する送信手段と、
を備え、
前記サンプリング手段は、前記スタートビットの開始エッジが検出されると、前記第１のクロックによって前記周期カウント値の半値がカウントされるタイミングで前記送信データをサンプリングし、以後、前記第１のクロックによって前記周期カウント値がカウントされるタイミング毎に前記送信データをサンプリングすることを特徴とするトランシーバ。
【請求項３】
クロック成分を含む伝送路符号によって符号化された信号を、バス通信路を介して送受信するトランシーバであって、
第１のクロックを発生させる自走クロック発生手段と、
前記バス通信路上の信号から抽出したクロック成分に基づき、該信号の１ビット幅を前記第１のクロックでカウントする周期カウント手段と、
前記周期カウント手段でのカウント結果である周期カウント値に従って、前記第１のクロックを分周することにより、少なくとも、前記バス通信路上の信号の１ビット幅に相当する周期を有した第２のクロックを生成する同期クロック生成手段と、
前記第２のクロックとは非同期に供給され、スタートビットで始まるＮＲＺ符号の送信データをサンプリングするサンプリング手段と、
前記サンプリング手段にてサンプリングされた送信データを前記伝送路符号に符号化し且つ前記第２のクロックに同期させて前記バス通信路に出力する送信手段と、
前記スタートビットの開始エッジの直前に現れた前記第２のクロックのエッジを対象エッジとして、該対象エッジから前記開始エッジまでの間隔を、前記第１のクロックでカウントした値をオフセット値として生成するオフセット値生成手段と、
を備え、
前記サンプリング手段は、前記スタートビットの開始エッジが検出されると、前記第１のクロックによって前記周期カウント値の半値がカウントされるタイミングで前記送信データをサンプリングし、以後、前記対象エッジと同種のエッジ（立ち上がりエッジまたは立ち下がりエッジ）が検出される毎に、前記第１のクロックによって前記オフセット値と前記周期カウント値の半値との合計値がカウントされるタイミングで前記送信データをサンプリングすることを特徴とするトランシーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クロック成分を含む伝送路符号によって符号化された信号を、バス通信路を介して送受信するトランシーバに関する。
【背景技術】
【０００２】
従来、車両に搭載される通信システムとして、ＣＡＮやＬＩＮ等、バス通信路を利用するものが知られている（例えば、非特許文献１参照）。
この種の通信システムにおいて効率の良い通信を行うには、バス通信路を介して信号を送受信するために各ノードに設けられるトランシーバの動作を、互いに同期させることが望ましい。
【０００３】
このような同期を実現する手法の一つとして、いずれか一つのノードが、クロック成分を含む伝送路符号によって符号化された信号をバス通信路に送信し、他のノードは、バス通信路上の信号からクロック成分を抽出して、自トランシーバで発生させた自走クロックを加工（分周等）することによって、その抽出したクロック成分に同期したバスクロックを生成し、そのバスクロックに従ってトランシーバを動作させるものが知られている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】佐藤道夫著「車載ネットワークシステム徹底解説」ＣＱ出版株式会社、２００５年１２月１日発行
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、トランシーバを利用して通信路を介した通信を実行する信号処理部（ＣＰＵやシーケンサ）は、通常、トランシーバが生成するバスクロックとは別に用意された独自の動作クロックに従って動作するように構成されている。つまり、信号処理部の動作は、トランシーバの動作とは非同期なものとなる。
【０００６】
このため、信号処理部から供給される送信データを、バスクロックに従って動作するトランシーバが処理する場合、バスクロックによって送信データをサンプリングするタイミングが、送信データのビット境界と一致してしまう可能性があり、その場合、送信データの信号レベルを誤ってしまうという問題があった。
【０００７】
また、送信データの１ビット幅とバスクロックの周期とに誤差（周波数誤差）があると、１ビット幅内でのサンプリングポイントが、サンプリング中に少しずつずれることになるため、送信単位となる一連の送信データ（例えば１０ビット）の最初のビットは、できるだけ１ビット幅の中心付近がサンプリングポイントとなるようにすることも望まれる。
【０００８】
特に、トランシーバの低消費電力化，低コスト化のために、リングオシレータ等の周波数精度の低い簡易な発振回路を用いて自走クロックを発生させている場合、自走クロックから生成されるバスクロックの周期（周波数）と、信号処理部の動作クロックに基づいて生成される送信データの１ビット幅との間に周波数誤差が生じやすくなるため、上述の問題がより生じやすい状況となる。
【０００９】
本発明は、上記問題点を解決するために、サンプリングに使用するクロックとは非同期に送信データが供給されるトランシーバにおいて、送信データの信号レベルを正しくサンプリングできるようにすることを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するためになされた本発明のトランシーバでは、自走クロック発生手段が、第１のクロックを発生させ、周期カウント手段が、バス通信路上の信号から抽出したクロック成分に基づき、該信号の１ビット幅を第１のクロックでカウントする。
【００１１】
そして、同期クロック生成手段が、周期カウント手段でのカウント結果である周期カウント値に従って、第１のクロックを分周することにより、バス通信路上の信号の１ビット幅に相当する周期を有した第２のクロックを少なくとも生成する。
【００１２】
また、サンプリング手段は、第２のクロックとは非同期に供給され、スタートビットで始まるＮＲＺ符号の送信データをサンプリングし、そのサンプリングした送信データを、送信手段が、伝送路符号に符号化し且つ第２のクロックに同期させてバス通信路に出力する。
【００１３】
そして、特に請求項１に記載のトランシーバでは、同期クロック生成手段は、第２のクロックだけでなく、第２のクロックの１周期の間にＮ（Ｎは３以上の整数）個のサンプリング用エッジを有する逓倍クロックを生成し、サンプリング手段は、Ｎが奇数の場合はＰ＝（Ｎ＋１）／２、Ｎが偶数の場合はＰ＝Ｎ／２またはＰ＝（Ｎ＋２）／２のいずれかとして、送信データのスタートビットの開始エッジを検出すると、以後、逓倍クロックのＰ＋ｋ・Ｎ番目（但し，ｋ＝０，１，２…）のサンプリング用エッジのタイミングで、送信データをサンプリングする。
【００１４】
なお、サンプリング用エッジは、逓倍クロックの立ち上がりエッジおよび立ち下がりエッジの両方でもよいし、いずれか一方でもよい。つまり、サンプリング用エッジとして、いずれか一方のエッジだけを用いる場合、同期クロック生成手段が生成する逓倍クロックの逓倍数はＮとなり、両方のエッジを用いる場合、逓倍クロックの逓倍数はＮ／２となる。
【００１５】
このように構成された本発明のトランシーバでは、送信データの先頭ビット（スタートビット）のサンプリングタイミングを、送信データの１ビット幅の（Ｐ−１）／Ｎ〜Ｐ／Ｎの範囲内とすることができる。つまり、先頭ビットでのサンプリングタイミングと送信データのビット境界との間には、少なくとも１ビット幅の（Ｐ−１）／Ｎもの余裕が確保されるため、サンプリング手段による誤サンプリングを抑制することができ、サンプリングされた送信データの信頼性を向上させることができる。
【００１６】
また、請求項２に記載のトランシーバでは、サンプリング手段は、スタートビットの開始エッジが検出されると、第１のクロックによって周期カウント値の半値がカウントされるタイミングで送信データをサンプリングし、以後、第１のクロックによって１周期のカウント値がカウントされるタイミング毎に送信データをサンプリングする。
【００１７】
このように構成された本発明のトランシーバでは、周期カウント値、即ち、バス通信路上の信号の１ビット幅の実測値に基づき、スタートビットの開始エッジを起点として、送信データが第２のクロックと完全に同期していれば、送信データの１ビット幅の中心がサンプリングタイミングとなるようなタイミングでサンプリングを実行するようにされている。
【００１８】
従って、本発明のトランシーバによれば、送信データの先頭ビットでのサンプリングタイミングと送信データのビット境界との間には、１ビット幅の約１／２もの余裕が確保されるため、請求項１に記載のトランシーバと同様に、サンプリング手段によってサンプリングされる送信データの信頼性を向上させることができるだけでなく、請求項１に記載のトランシーバと比較して、送信データの１ビット幅と第２のクロックの周期との誤差（周波数誤差）に基づく誤サンプリングを、より抑制することができる。
【００１９】
また、請求項３に記載のトランシーバでは、オフセット値生成手段が、スタートビットの開始エッジの直前に現れた第２のクロックのエッジを対象エッジとして、該対象エッジから開始エッジまでの間隔を、第１のクロックでカウントした値をオフセット値として生成する。そして、サンプリング手段は、スタートビットの開始エッジが検出されると、第１のクロックによって周期カウント値の半値がカウントされるタイミングで送信データをサンプリングし、以後、対象エッジと同種のエッジ（立ち上がりエッジまたは立ち下がりエッジ）が検出される毎に、第１のクロックによってオフセット値と周期カウント値の半値との合計値がカウントされるタイミングで送信データをサンプリングする。
【００２０】
このように構成された本発明のトランシーバでは、請求項２に記載のトランシーバと同様なタイミングで送信データをサンプリングすることになるため、これと同様の効果を得ることができる。
【図面の簡単な説明】
【００２１】
【図１】車載通信システムの概略構成を示すブロック図。
【図２】（ａ）はバス通信路で使用する伝送路符号の構成、（ｂ）はバス通信路を介して送受信されるフレームの構成、（ｃ）はＵＡＲＴが送受信するブロックデータの構成を示す説明図。
【図３】マスタノード，スレーブノードの構成を示すブロック図。
【図４】タイミング生成部が生成する各種タイミング信号を示す説明図。
【図５】符号化復号化部の構成を示すブロック図。
【図６】符号化回路の動作を示すタイミング図。
【図７】同期化回路の構成を示すブロック図。
【図８】同期化回路の動作を示すタイミング図。
【図９】第２実施形態における同期化回路の構成を示すブロック図。
【図１０】第２実施形態における同期化回路の動作を示すタイミング図。
【図１１】第３実施形態における同期化回路の構成を示すブロック図。
【図１２】第３実施形態における同期化回路の動作を示すタイミング図。
【発明を実施するための形態】
【００２２】
以下に本発明の実施形態を図面と共に説明する。
［第１実施形態］
＜全体構成＞
図１は、車両に搭載され、ボデー系のアプリケーションを実現する電子制御装置（ボデー系ＥＣＵ）や、車両の状態を検出したり車両の状態を制御したりするために設けられた関連機器（ライト，センサ等）からなるノード３を、バス状の通信路（以下「バス通信路」という）５を介して相互に接続した通信システム１の概略構成を示すブロック図である。
【００２３】
図１に示すように、通信システム１を構成するノード３のうち、ボデー系ＥＣＵとしては、ボデー・ワイパＥＣＵ，シートＥＣＵ，スライドドアＥＣＵ，ミラーＥＣＵ，バックドアＥＣＵ，ライトＥＣＵ，チルテレ（電動ステアリング位置調整装置）ＥＣＵ等があり、一方、関連機器としては、ライトＳＷ，ワイパＳＷ，ライトセンサ，レインセンサ等がある。
【００２４】
＜バス通信路＞
バス通信路５は、異なるノード３からハイレベルの信号とロウレベルの信号とが同時に出力されると、バス通信路５上の信号レベルがロウレベルとなるように構成されており、この機能を利用してバス調停を実現する。
【００２５】
ここで図２（ａ）は、バス通信路５で使用する伝送路符号を示す説明図である。
図２（ａ）に示すように、バス通信路５では、伝送路符号として、ビットの途中で信号レベルがロウレベルからハイレベルに変化するＰＷＭ符号が用いられ、レセッシブ（本実施形態では１に対応）およびドミナント（本実施形態では０に対応）からなる二値の信号を２種類のデューティ比で表現する。
【００２６】
具体的には、ドミナントの方がレセッシブよりロウレベルの比率が長くなるよう（本実施形態では、レセッシブが１ビットの１／３の期間、ドミナントが１ビットの２／３の期間）に設定され、バス通信路５上でレセッシブとドミナントとが衝突すると、ドミナントが調停勝ちするようにされている。
【００２７】
そして、通信システム１では、調停負けしたノード３は送信を直ちに停止し、調停勝ちしたノード３のみが送信を継続する、いわゆるＣＳＭＡ／ＣＡ方式のアクセス制御方式が用いられている。
【００２８】
また、図２（ｂ）は、ノード３間の通信に使用するレームの構成を示す説明図である。
図２（ｂ）に示すように、フレームは、送信を許可するデータを指定するためのヘッダと、ヘッダによって指定されたデータを送信するための可変長のレスポンスからなる。
【００２９】
このうち、ヘッダは、送信を許可するデータの識別子（ＩＤ）からなり、ＩＤの値が小さいほど、バス調停で勝ち残るように設定されている。一方、レスポンスは、データ以外に、データ（レスポンス）のサイズを示すサイズ情報、エラーの有無をチェックするためのＣＲＣ符号が少なくとも含まれている。
【００３０】
＜ノード共通＞
各ノード３は、予め割り当てられた全ての機能を実行可能な動作モードであるウェイクアップモード、消費電力を抑えるために一部の機能を停止した動作モードであるスリープモードで動作する。
【００３１】
また、ノード３の一つ（ここではボデー・ワイパＥＣＵ）をマスタ３ａ、他のノードをスレーブ３ｂとして、マスタ３ａがヘッダを送信することによって、送信を許可するデータ（ひいてはデータの送信元となるスレーブ３ｂ）を順次指定し、ヘッダによって指定されたデータの送信元となるスレーブ３ｂがレスポンス（データ）を送信するポーリング（以下「定期通信」ともいう）と、マスタ３ａからの指示によらずスレーブ３ｂが自律的に通信を制御するイベント通信とを実行する。
【００３２】
以下、マスタ３ａおよびスレーブ３ｂの構成を、図３に示すブロック図を参照して説明する。
＜マスタ＞
マスタ３ａは、バス通信路５を介した他ノード３との通信によって得られた情報等に基づき、自ノード３に割り当てられた各種処理を実行する信号処理部１０と、信号処理部１０から供給されるＮＲＺ符号の送信データＴＸＤをＰＷＭ符号の送信データＴＸに符号化してバス通信路５に出力し、バス通信路５から取り込んだＰＷＭ符号の受信データＲＸをＮＲＺ符号の受信データＲＸＤに復号化して信号処理部１０に供給するトランシーバ２０とを備えている。
【００３３】
<<信号処理部>>
信号処理部１０は、ＣＰＵ，ＲＯＭ，ＲＡＭ，ＩＯポート等からなる周知のマイクロコンピュータを中心に構成され、更に、調歩同期（非同期）方式のシリアル通信を実現するＵＡＲＴ（汎用非同期受信・送信機：Universal Asynchronous Receiver Transmitter ）、１１、当該信号処理部１０を動作させるための動作クロックや、ＵＡＲＴ１１の通信速度と同じ速度（本実施形態では２０Ｋｂｐｓ）に設定されトランシーバ２０に供給する内部クロックＣＫを発生させる発振回路１２を備えている。
【００３４】
但し、発振回路１２は、水晶発振子を用いて構成され、安定した周波数で発振する高精度のものが用いられている。また、信号処理部１０は、自ノードの動作モードを表すモード信号ＭＤをトランシーバ２０に供給するように構成されている。
【００３５】
ここで図２（ｃ）は、ＵＡＲＴ１１が送受信するデータＴＸＤ，ＲＸＤの構成を示す説明図である。図示されているように、ＵＡＲＴ１１は、データの開始を示す１ビット長のスタートビット（ロウレベル）と、データの終了を示すストップビット（ハイレベル）と、これらスタートビット，ストップビットに挟まれた８ビットのデータとで構成された合計１０ビットのブロックデータを単位として送受信する。但し、主要部となる８ビットのデータは、ＬＳＢ（最下位ビット）が先頭、ＭＳＢ（最上位ビット）が末尾となるように設定されている。
【００３６】
なお、前述のフレーム（図２（ｂ）参照）を構成するヘッダは、単一のブロックデータで構成され、スタートビット，ストップビットを除く８ビットのデータのうち、７ビットはＩＤとして用いられ、１ビットはパリティビットとして用いられる。また、レスポンスは、１ないし複数個のブロックデータで構成され、最初のブロックに、サイズ情報が設定される。
【００３７】
<<トランシーバ>>
図３に戻り、トランシーバ２０は、複数のインバータをリング状に接続することで構成されたリングオシレータ等からなる簡易な発振回路を備え、この発振回路が発生させたカウント用クロックＣＣＫを分周することによって、信号処理部１０から供給される内部クロックＣＫに同期した各種タイミング信号を生成するタイミング生成部２１と、タイミング生成部２１にて生成されたタイミング信号に従って、送信データＴＸＤの符号化、受信データＲＸの復号化を行う符号化復号化部２２と、符号化復号化部２２にて符号化された送信データＴＸをバス通信路５に出力する送信バッファ２３と、バス通信路５上のデータを取り込む受信バッファ２４と、信号処理部１０から供給されるモード信号ＭＤに従って、タイミング生成部２１および符号化復号化部２２の動作を制御するモード管理部２５とを備えている。
【００３８】
なお、送信バッファ２３は、上述したバス通信路５上でのバス調停が可能となるように、例えば、周知のオープンコレクタ回路を用いて構成されている。また、受信バッファ２４は、バス通信路５の信号レベルが、予め設定された閾値より大きければハイレベル、閾値より低ければロウレベルを出力する周知のコンパレータによって構成されている。
【００３９】
また、モード管理部２５は、モード信号ＭＤがウェイクアップモードを示している場合には、タイミング生成部２１および符号化復号化部２２を有効に動作させ、モード信号ＭＤがスリープモードを示している時には、タイミング信号の生成が停止するようにタイミング生成部２１を制御する。
【００４０】
<<タイミング生成部>>
ここで図４は、タイミング生成部２１が生成する各種タイミング信号を示す説明図である。なお、カウント用クロックＣＣＫは、内部クロックＣＫに対して十分に高い周波数（数十〜数百倍程度）を有するように設定されている。
【００４１】
タイミング生成部２１は、内部クロックＣＫの立ち下がりエッジの間隔、即ち１周期の長さを、カウント用クロックＣＣＫによってカウントするカウンタや、カウンタによって得られた周期カウント値Ｃｉ（ｉ＝１，２，…）に基づいて、カウント用クロックＣＣＫを分周することによって内部クロックＣＫに同期した各種タイミング信号を発生させる分周回路等によって構成されている。
【００４２】
なお、タイミング信号として具体的には、以下に示すクロックを生成する。
図４に示すように、タイミング生成部２１は、周期カウント値Ｃｉに相当する周期を有し、立ち下がりエッジから立ち上がりエッジまでの間隔が周期カウント値Ｃｉの１／２に相当する長さに設定されたデューティ５０％のバスクロックＢＣＫと、同じく周期カウント値Ｃｉに相当する周期を有し、バスクロックＢＣＫの立ち下がりエッジのタイミングおよび該エッジから周期カウント値の１／４，２／４，３／４に相当する期間だけ経過したタイミングが立ち上がりエッジ（サンプリング用エッジ）となるサンプリングクロックＳＣＫと、バスクロックＢＣＫの立ち下がりエッジから周期カウント値の１／３に相当する期間だけ経過したタイミングが立ち上がりエッジとなるレセッシブ生成用クロックＲＣＫと、バスクロックＢＣＫの立ち下がりエッジから周期カウント値の２／３に相当する期間だけ経過したタイミングが立ち上がりエッジとなるドミナント生成用クロックＤＣＫとを生成する。
【００４３】
なお、タイミング生成部２１では、モード管理部２５からの指示に従い、動作モードがウェイクアップモードの時には、発振回路を動作させることによってタイミング信号の生成を行い、動作モードがスリープモードの時には、発振回路を停止することによってタイミング信号の生成を停止するように構成されている。
【００４４】
<<符号化復号化部>>
次に、図５は、符号化復号化部２２の構成を示すブロック図である。
図５に示すように、符号化復号化部２２は、信号処理部１０から供給される送信データＴＸＤ（ＮＲＺ符号）を、タイミング生成部２１にて生成されたバスクロックＢＣＫに同期させる同期化回路２６と、同期化回路２６が出力する同期送信データｄＴＸＤを伝送路符号（ＰＷＭ符号）に符号化し、符号化した送信データＴＸを送信バッファ２３に供給する符号化回路２７と、受信バッファ２４が取り込んだ受信データＲＸ（ＰＷＭ符号）をＮＲＺ符号に復号化し、復号化した受信データＲＸＤを信号処理部１０に供給する復号化回路２８と、送信データＴＸと受信データＲＸをビット単位（符号単位）で比較し、信号レベル（レセッシブ／ドミナント）が不一致である場合にアクティブレベルとなる衝突検出信号ＣＤを符号化回路２７に出力するビット調停回路２９とを備えている。
【００４５】
なお、ビット調停回路２９は、送信データＴＸおよび受信データＲＸの信号レベルをバスクロックＢＣＫの立ち上がりエッジのタイミングでサンプリングし、そのサンプリングした信号レベルを排他的論理和回路（ＸＯＲゲート）で比較するように構成され、ＸＯＲゲートの出力を衝突検出信号ＣＤとして出力する。
【００４６】
ここで図６は、符号化回路２７の動作を示すタイミング図である。
図６（ａ）に示すように、符号化回路２７は、同期送信データｄＴＸＤがロウレベル（０）の時には、バスクロックＢＣＫ（特に立ち下がりエッジ）とドミナント生成用クロックＤＣＫを用いて、１ビット中の前２／３期間がロウレベル、後１／３期間がハイレベルとなるＰＷＭ符号（ドミナント）を生成し、同期送信データｄＴＸＤがハイレベル（１）の時には、バスクロックＢＣＫ（特に立ち下がりエッジ）とレセッシブ生成用クロックＲＣＫを用いて、１ビット中の前１／３期間がロウレベル、後２／３期間がハイレベルとなるＰＷＭ符号（レセッシブ）を生成する。
【００４７】
但し、信号処理部１０から送信データＴＸＤの供給がない場合、同期化回路２６の入力、ひいては符号化回路２７の入力はハイレベルとなり、バス通信路５上には、レセッシブが流れ続けるように構成されている。
【００４８】
以下では、バス通信路５において、レセッシブが予め設定された許容ビット（本実施形態では１１ビット）以上継続している期間をＩＦＳ（Inter Frame Space ）と呼び、ＩＦＳが検出されている状態をアイドル状態という。
【００４９】
また、符号化回路２７は、衝突検出信号ＣＤがアクティブになると（即ち、自ノード３が調停負けすると）、処理中の同期送信データｄＴＸＤが属するブロックデータについての処理が終了するまでの間、同期送信データｄＴＸＤの信号レベルに拘わらず強制的にレセッシブを出力するように構成されている。
【００５０】
一方、復号化回路２８は、バスクロックＢＣＫの立ち上がりエッジで受信データＲＸをサンプリングし、そのサンプリングした結果を、復号化した受信データＲＸＤとして出力するように構成されている。
【００５１】
次に、図７は、同期化回路２６の構成を示すブロック図である。
図７に示すように、同期化回路２６は、送信データＴＸＤのスタートビットの開始エッジ（立ち下がりエッジ）を検出するスタートビット検出回路５１と、サンプリングクロックＳＣＫに従ってカウント動作するダウンカウンタ５２と、スタートビットの開始エッジのタイミング（以下「開始タイミング」という）またはダウンカウンタ５２がカウントアウトしたタイミング（以下「ＣＯタイミング」という）で、ダウンカウンタ５２にカウント値をロードさせるための信号を生成する論理和回路（ＯＲゲート）５３と、開始タイミングおよびＣＯタイミングに基づいてダウンカウンタ５２にロードするカウント値を選択するカウント値選択回路５４と、ＣＯタイミングで送信データＴＸＤをラッチするラッチ回路５５と、ラッチ回路５５の出力をバスクロックＢＣＫの立ち下がりエッジでラッチするラッチ回路５６とを備え、ラッチ回路５６の出力を、同期送信データｄＴＸＤとして出力するように構成されている。
【００５２】
但し、カウント値選択回路５４は、ロードするカウント値として、開始タイミング前は‘２’を選択し、開始タイミング後は‘４’を選択し、ブロックデータを構成するビット数（即ち１０）回目のＣＯタイミング後に再び‘２’を選択するように構成されている。
【００５３】
つまり、図８に示すように、スタートビットの開始エッジのタイミングが検出されると、その後、２個目のサンプリングクロックＳＣＫのタイミングで送信データＴＸＤをサンプリングし、以後、４個目のサンプリングクロックＳＣＫのタイミング毎に、送信データＴＸＤをサンプリングし、そのサンプリングしたデータを更に、バスクロックＢＣＫの立ち下がりエッジでサンプリングすることによって、バスクロックＢＣＫに同期した同期送信データｄＴＸＤが生成される。
【００５４】
なお、図８は、同期化回路２６の動作を示すタイミング図であり、（ａ）はサンプリングクロックＳＣＫのエッジの直後に開始タイミングが現れる場合、（ｂ）は、逆に開始タイミングの直後にサンプリングクロックＳＣＫのエッジが現れる場合を示す。いずれの場合も、スタートビットをサンプリングする時点で、ビット境界のタイミングとサンプリングクロックＳＣＫによるサンプリングタイミングとの間には、１ビット幅の１／４以上の間隔が確保されることになる。
【００５５】
このように、マスタ３ａのトランシーバ２０は、動作モードがウェイクアップモードの時には、送信データＴＸＤの符号化、受信データＲＸの復号化を行うだけでなく、信号処理部１０から送信データＴＸＤの供給がない場合でもバス通信路５にレセッシブを出力し続けることによって、マスタ３ａ以外のノード３に、バスクロックＢＣＫの再生に必要なクロック成分を供給するクロックマスタとして動作する。
【００５６】
＜スレーブ＞
図３に戻り、スレーブ３ｂは、マスタ３ａと同様に、バス通信路５を介した他ノード３との通信によって得られた情報等に基づき、自ノード３に割り当てられた各種処理を実行する信号処理部３０と、信号処理部３０から供給される送信データＴＸＤをＰＷＭ符号で符号化した送信データＴＸをバス通信路５に出力し、バス通信路５上のデータ（受信データ）ＲＸを受信して復号した受信データＲＸＤを信号処理部３０に供給するトランシーバ４０とを備えている。
【００５７】
<<信号処理部>>
信号処理部３０は、トランシーバ４０に対して内部クロックＣＫを供給する機能が省略されている点以外は、信号処理部１０と同様に構成されている。
【００５８】
但し、スレーブ３ｂの信号処理部３０は、必ずしもマイコンによって構成する必要はなく、ＵＡＲＴ１１に相当する機能を少なくとも備えたシーケンサと、そのシーケンサを動作させる動作クロックを生成する発振回路とによって構成してもよい。
【００５９】
<<トランシーバ>>
トランシーバ４０は、トランシーバ２０と同様に、タイミング生成部４１，符号化復号化部４２，送信バッファ２３，受信バッファ２４，モード管理部２５を備えており、タイミング生成部４１および符号化復号化部４２の構成の一部が、タイミング生成部２１および符号化復号化部２２とは異なっている。
【００６０】
具体的には、タイミング生成部４１は、各種タイミング信号を生成する際に、同期の対象となる信号が、内部クロックＣＫではなく、受信バッファ２４を介してバス通信路５から取得した受信データＲＸである点が異なる。なお、タイミング生成部４１では、タイミング信号の一つであるレセッシブ生成用クロックＲＣＫの生成を省略してもよい。
【００６１】
また、符号化復号化部４２は、符号化回路２７の動作が一部異なる以外は、符号化復号化部２２と同様に構成されているため、この点を、図６（ｂ）に示すタイミング図に沿って説明する。以下の文章中では、符号化復号化部４２の符号化回路を、符号化復号化部２２の符号化回路２７と区別するために「符号化回路４７」と記す。
【００６２】
図６（ｂ）に示すように、符号化回路４７は、同期送信データｄＴＸＤがロウレベル（０）の時には、バスクロックＢＣＫおよびドミナント生成用クロックＤＣＫを用いて、バスクロックＢＣＫの立ち下がりエッジより少し遅れたタイミングでロウレベルに変化し、ドミナント生成用クロックＤＣＫのタイミングでハイレベルに変化する第１符号を生成し、同期送信データｄＴＸＤがハイレベル（１）の時には、１ビットの全期間に渡ってハイベルとなる第２符号を生成する。
【００６３】
これら第１符号および第２符号は、送信バッファ２３を介してバス通信路５に出力されると、他ノード３がデータの送信を行っていない時（マスタ３ａからクロックマスタの機能によってレセッシブが出力されている時）または他ノード３がレセッシブを送信している時には、バス通信路５上で、第１符号はドミナント、第２符号はレセッシブに変換されて他ノード３に伝送される。
【００６４】
また、他ノード３がドミナントを送信している時には、バス通信路５上で、第１符号および第２符号のいずれもドミナントに変換され、第１符号を送信したのであれば調停勝ち、第２符号を送信したのであれば調停負けとなる。
【００６５】
このように、スレーブ３ｂのトランシーバ４０は、動作モードがウェイクアップモードの時には、バス通信路５から取り込んだＰＷＭ符号の受信データＲＸのビット境界となる立ち下がりエッジをクロック成分として抽出し、そのクロック成分に同期したバスクロックＢＣＫを生成し、このバスクロックＢＣＫに従って送信データＴＸＤの符号化，受信データＲＸの復号化を行い、バス通信路５を介した通信を実現する。
【００６６】
＜効果＞
以上説明したように、通信システム１において各ノード３のトランシーバ２０，４０を構成する同期化回路２６では、バスクロックＢＣＫの１周期の間にサンプリング用エッジを４個有するサンプリングクロックＳＣＫ（バスクロックＢＣＫの逓倍クロック）を用いて、開始タイミング後、（４×ｋ＋２）番目（ｋ＝０，１，２，…９）のサンプリング用エッジを使って、送信データＴＸＤをラッチ（サンプリング）し、更に、そのラッチした結果をバスクロックＢＣＫの立ち下がりエッジでラッチすることによって、バスクロックＢＣＫに同期した同期送信データｄＴＸＤを生成し、この同期送信データｄＴＸＤを用いて符号化を行うようにされている。
【００６７】
このため、同期化回路２６では、送信データＴＸＤのサンプリングの開始時に、送信データＴＸＤのビット境界とサンプリング用エッジとの間に、最悪でも１ビット幅の１／４の間隔が確保されるため、送信データＴＸＤの信号レベルを、正確にサンプリングすることができる。また、送信データＴＸＤとバスクロックＢＣＫとの間に周波数誤差がある場合でも、その周波数誤差に基づく誤サンプリングを抑制することができる。
【００６８】
なお、本実施形態では、送信データＴＸＤのサンプリングを、開始タイミング後、サンプリングクロックＳＣＫの（４×ｋ＋２）番目のサンプリング用エッジを使って行っているが、（４×ｋ＋３）番目のサンプリング用エッジを使って行うように構成してもよい。
【００６９】
また、一般にサンプリングクロックＳＣＫの１周期の間にＮ個のサンプリング用エッジを有する場合、Ｎが奇数の場合は、Ｐ＝（Ｎ＋１）／２、Ｎが偶数の場合は、Ｐ＝Ｎ／２またはＰ＝（Ｎ＋２）／２のいずれかとして、送信データＴＸＤのスタートビットの開始エッジを検出すると、以後、前記逓倍クロックのＰ＋ｋ・Ｎ番目（但し，ｋ＝０，１，２…）のサンプリング用エッジのタイミングで、送信データＴＸＤをサンプリングするように構成してもよい。
【００７０】
＜発明との対応＞
本実施形態において、タイミング生成部２１，４１に設けられ、カウント用クロックＣＣＫ（第１のクロックに相当）を発生させる発振回路が自走クロック発生手段、タイミング生成部２１，４１に設けられ、内部クロックＣＫの１周期または受信データＲＸの１ビット幅をカウント用クロックＣＣＫでカウントするカウンタが周期カウント手段、タイミング生成部２１，４１に設けられ、カウント用クロックＣＣＫを分周することでバスクロックＢＣＫやサンプリングクロックＳＣＫ等を生成する回路が同期クロック生成手段、同期化回路２６が請求項１におけるサンプリング手段、符号化回路２７が送信手段に相当する。
【００７１】
［第２実施形態］
次に、第２実施形態について説明する。
本実施形態では、第１実施形態とは、同期化回路２６ａの構成が異なるだけであるため、この異なる部位を中心に説明する。なお、この同期化回路２６ａは、マスタ３ａのトランシーバ２０かスレーブ３ｂのトランシーバ４０かに関わらず共通の構成である。
【００７２】
図９は、同期化回路２６ａの構成を示すブロック図である。
図９に示すように、同期化回路２６ａは、第１実施形態における同期化回路２６と同様に、スタートビット検出回路５１，ダウンカウンタ５２，論理和回路５３，カウント値選択回路５４ａ，ラッチ回路５５，５６を備えている。
【００７３】
但し、ダウンカウンタ５２は、サンプリングクロックＳＣＫではなく、カウント用クロックＣＣＫに従って動作し、また、カウント値選択回路５４は、タイミング生成部２１（または４１）から周期カウント値Ｃｉの供給を受け、ダウンカウンタ５２にロードするカウント値として、開始タイミング前はＣｉ／２（周期カウント値の半値）を選択し、開始タイミング後はＣｉ（周期カウント値）を選択し、ブロックデータを構成するビット数（即ち１０）回目のＣＯタイミングが検出されると、再びＣｉ／２を選択するように構成されている。
【００７４】
ここで図１０は、同期化回路２６ａの動作を示すタイミング図である。
図１０に示すように、同期化回路２６ａでは、開始タイミングの後、Ｃｉ／２＋ｋ×Ｃｉ番目（ｋ＝０，１，２，…９）のカウント用クロックＣＣＫのタイミングで送信データＴＸＤをサンプリングし、そのサンプリングしたデータを、更に、バスクロックＢＣＫの立ち下がりエッジでサンプリングすることによって、バスクロックＢＣＫに同期した同期送信データｄＴＸＤが生成される。
【００７５】
＜効果＞
このように構成された同期化回路２６ａを備えたトランシーバ２０，４０によれば、送信データＴＸＤのサンプリングタイミングを、よりビットの中心に近い位置とすることができるため、送信データＴＸＤの信号レベルを正確にサンプリングすることができる。しかも、送信データＴＸＤとバスクロックＢＣＫとの周波数誤差（それに基づくサンプリングタイミングのずれ）の許容値がより広くなるため、トランシーバ２０，４０の設計や製造を容易化することができる。但し、周期カウント値Ｃｉは、１周期毎に求めた値を用いてもよいし、複数周期毎にその複数周期で単純平均や移動平均した値等を用いてもよい。
【００７６】
なお、本実施形態では、同期化回路２６ａが請求項２におけるサンプリング手段に相当する。
［第３実施形態］
次に、第３実施形態について説明する。
【００７７】
本実施形態では、第１実施形態とは、同期化回路２６ｂの構成が異なるだけであるため、この異なる部位を中心に説明する。なお、この同期化回路２６ｂは、マスタ３ａのトランシーバ２０かスレーブ３ｂのトランシーバ４０かに関わらず共通の構成である。
【００７８】
図１１は、同期化回路２６ｂの構成を示すブロック図である。
図１１に示すように、同期化回路２６ｂは、カウント用クロックＣＣＫに従ってカウント動作し、バスクロックＢＣＫの立ち上がりおよび立ち下がり両エッジのタイミングでカウント値がリセットされるカウンタ６１と、送信データＴＸＤのスタートビットの開始エッジを検出するスタートビット検出回路６２と、カウンタ６１のカウント値を、スタートビット検出回路６２で検出された開始エッジのタイミング（開始タイミング）でラッチするラッチ回路６３と、開始タイミングの直前に現れるバスクロックＢＣＫのエッジと同種のエッジ（立ち上がりエッジまたは立ち下がりエッジ）を対象エッジとして選択するエッジ選択回路６４とを備えている。
【００７９】
また、同期化回路２６ｂは、カウント用クロックＣＣＫに従ってカウント動作するカウンタ６５と、エッジ選択回路６４によって選択された対象エッジのタイミングおよび開始タイミングでカウンタ６５のカウント値をリセットするためのリセット信号を生成する論理和回路（ＯＲゲート）７０と、タイミング生成部２１（または４１）にて生成される周期カウント値の半値（以下「半周期カウント値」という）Ｃｉ／２またはラッチ回路６３にてラッチされたカウント値（以下「オフセット値」という）Ｃofに半周期カウント値Ｃｉ／２を加算した値Ｃof＋Ｃｉ／２のうちいずれか一方を、ＯＲゲート７０の出力（即ち、開始タイミングおよび対象エッジのタイミング）に従って選択し、比較値として出力する比較値算出回路６６と、カウンタ６５のカウント値および比較値算出回路６６にて設定された比較値が一致するか否かを比較する比較器６７と、比較器６７によりカウント値と比較値の一致が検出されたタイミングで、送信データＴＸＤの信号レベルをラッチするラッチ回路６８と、ラッチ回路６８の出力をバスクロックＢＣＫの立ち下がりエッジのタイミングでラッチするラッチ回路６９とを備えている。
【００８０】
但し、比較値算出回路６６は、比較値として、開始タイミング前はＣｉ／２を選択し、開始タイミング後はＣof＋Ｃｉ／２を選択し、その後、ブロックデータを構成するビット数（即ち１０）個分の対象エッジが検出されると再びＣｉ／２を選択するように構成されている。
【００８１】
ここで、図１２は、同期化回路２６ｂの動作を示すタイミング図である。
図１２に示すように、同期化回路２６ｂでは、開始タイミングが検出されると、開始タイミングを起点としてＣｉ／２番目のカウント用クロックＣＣＫのタイミングで、その後は、バスクロックＢＣＫの対象エッジのタイミングを起点としてＣof＋Ｃｉ／２番目のカウント用クロックＣＣＫのタイミングで送信データＴＸＤをサンプリングし、そのサンプリングしたデータを、更に、バスクロックＢＣＫの立ち下がりエッジでサンプリングすることによって、バスクロックＢＣＫに同期した同期送信データｄＴＸＤが生成される。
【００８２】
＜効果＞
このように構成された同期化回路２６ｂを備えたトランシーバ２０，４０によれば、第２実施形態の場合と同様に、送信データＴＸＤのサンプリングタイミングを、よりビットの中心に近い位置とすることができるため、第２実施形態の場合と同様の効果を得ることができる。
【００８３】
なお、本実施形態では、カウンタ６１，ラッチ６３がオフセット値生成手段、同期化回路２６ｂ（但し、カウンタ６１，ラッチ６３を除く）が請求項３におけるサンプリング手段に相当する。
【００８４】
［他の実施形態］
以上、本発明のいくつかの実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において様々な態様にて実施することが可能である。
【００８５】
例えば、上記実施形態では、マスタ３ａがクロックマスタを兼ねるように構成したが、スレーブ３ｂのいずれかがクロックマスタとなるように構成してもよい。
第１実施形態では、サンプリングクロックＳＣＫとして、パルス状の波形を有する信号を用いて、その立ち上がりエッジをサンプリング用エッジとして用いているが、デューティが約５０％となる信号を用いて、その立ち上がりおよび立ち下がりの両エッジをサンプリング用エッジとして用いるように構成してもよい。
【符号の説明】
【００８６】
１…通信システム  ３…ノード  ３…自ノード  ３ａ…マスタ  ３ｂ…スレーブ  ５…バス通信路  １０，３０…信号処理部  １２…発振回路  ２０，４０…トランシーバ  ２１，４１…タイミング生成部  ２２，４２…符号化復号化部  ２３…送信バッファ  ２４…受信バッファ  ２５…モード管理部  ２６，２６ａ，２６ｂ…同期化回路  ２７，４７…符号化回路  ２８…復号化回路  ２９…ビット調停回路  ５１，６２…スタートビット検出回路  ５２…ダウンカウンタ  ５３，７０…論理和回路  ５４，５４ａ…カウント値選択回路  ５５，５６，６３，６８，６９…ラッチ回路  ６１，６５…カウンタ  ６４…エッジ選択回路  ６６…比較値算出回路  ６７…比較器
【図１】
0005541234.tif 000002
【図２】
0005541234.tif 000003
【図３】
0005541234.tif 000004
【図４】
0005541234.tif 000005
【図５】
0005541234.tif 000006
【図６】
0005541234.tif 000007
【図７】
0005541234.tif 000008
【図８】
0005541234.tif 000009
【図９】
0005541234.tif 000010
【図１０】
0005541234.tif 000011
【図１１】
0005541234.tif 000012
【図１２】
0005541234.tif 000013