説明

トランシーバ

【課題】サンプリングに使用するクロックとは非同期に送信データが供給されるトランシーバにおいて、送信データの信号レベルを正しくサンプリングできるようにする。
【解決手段】送信データTXDのスタートビットの開始エッジのタイミング(開始タイミング)が検出されると、バスクロックBCKに同期し、そのバスクロックBCKの1周期当たり4個のサンプリング用エッジを有するサンプリングSCKを用い、開始タイミングを起点として2個目のサンプリング用エッジのタイミングで送信データTXDをサンプリングし、以後、4個目のサンプリング用エッジのタイミング毎に、送信データTXDをサンプリング(ラッチ)する。そのサンプリングしたデータを、更に、バスクロックBCKの立ち下がりエッジでサンプリングすることによって、バスクロックBCKに同期した同期送信データdTXDを生成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、クロック成分を含む伝送路符号によって符号化された信号を、バス通信路を介して送受信するトランシーバに関する。
【背景技術】
【0002】
従来、車両に搭載される通信システムとして、CANやLIN等、バス通信路を利用するものが知られている(例えば、非特許文献1参照)。
この種の通信システムにおいて効率の良い通信を行うには、バス通信路を介して信号を送受信するために各ノードに設けられるトランシーバの動作を、互いに同期させることが望ましい。
【0003】
このような同期を実現する手法の一つとして、いずれか一つのノードが、クロック成分を含む伝送路符号によって符号化された信号をバス通信路に送信し、他のノードは、バス通信路上の信号からクロック成分を抽出して、自トランシーバで発生させた自走クロックを加工(分周等)することによって、その抽出したクロック成分に同期したバスクロックを生成し、そのバスクロックに従ってトランシーバを動作させるものが知られている。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】佐藤道夫著「車載ネットワークシステム徹底解説」CQ出版株式会社、2005年12月1日発行
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、トランシーバを利用して通信路を介した通信を実行する信号処理部(CPUやシーケンサ)は、通常、トランシーバが生成するバスクロックとは別に用意された独自の動作クロックに従って動作するように構成されている。つまり、信号処理部の動作は、トランシーバの動作とは非同期なものとなる。
【0006】
このため、信号処理部から供給される送信データを、バスクロックに従って動作するトランシーバが処理する場合、バスクロックによって送信データをサンプリングするタイミングが、送信データのビット境界と一致してしまう可能性があり、その場合、送信データの信号レベルを誤ってしまうという問題があった。
【0007】
また、送信データの1ビット幅とバスクロックの周期とに誤差(周波数誤差)があると、1ビット幅内でのサンプリングポイントが、サンプリング中に少しずつずれることになるため、送信単位となる一連の送信データ(例えば10ビット)の最初のビットは、できるだけ1ビット幅の中心付近がサンプリングポイントとなるようにすることも望まれる。
【0008】
特に、トランシーバの低消費電力化,低コスト化のために、リングオシレータ等の周波数精度の低い簡易な発振回路を用いて自走クロックを発生させている場合、自走クロックから生成されるバスクロックの周期(周波数)と、信号処理部の動作クロックに基づいて生成される送信データの1ビット幅との間に周波数誤差が生じやすくなるため、上述の問題がより生じやすい状況となる。
【0009】
本発明は、上記問題点を解決するために、サンプリングに使用するクロックとは非同期に送信データが供給されるトランシーバにおいて、送信データの信号レベルを正しくサンプリングできるようにすることを目的とする。
【課題を解決するための手段】
【0010】
上記目的を達成するためになされた本発明のトランシーバでは、自走クロック発生手段が、第1のクロックを発生させ、周期カウント手段が、バス通信路上の信号から抽出したクロック成分に基づき、該信号の1ビット幅を第1のクロックでカウントする。
【0011】
そして、同期クロック生成手段が、周期カウント手段でのカウント結果である周期カウント値に従って、第1のクロックを分周することにより、バス通信路上の信号の1ビット幅に相当する周期を有した第2のクロックを少なくとも生成する。
【0012】
また、サンプリング手段は、第2のクロックとは非同期に供給され、スタートビットで始まるNRZ符号の送信データをサンプリングし、そのサンプリングした送信データを、送信手段が、伝送路符号に符号化し且つ第2のクロックに同期させてバス通信路に出力する。
【0013】
そして、特に請求項1に記載のトランシーバでは、同期クロック生成手段は、第2のクロックだけでなく、第2のクロックの1周期の間にN(Nは3以上の整数)個のサンプリング用エッジを有する逓倍クロックを生成し、サンプリング手段は、Nが奇数の場合はP=(N+1)/2、Nが偶数の場合はP=N/2またはP=(N+2)/2のいずれかとして、送信データのスタートビットの開始エッジを検出すると、以後、逓倍クロックのP+k・N番目(但し,k=0,1,2…)のサンプリング用エッジのタイミングで、送信データをサンプリングする。
【0014】
なお、サンプリング用エッジは、逓倍クロックの立ち上がりエッジおよび立ち下がりエッジの両方でもよいし、いずれか一方でもよい。つまり、サンプリング用エッジとして、いずれか一方のエッジだけを用いる場合、同期クロック生成手段が生成する逓倍クロックの逓倍数はNとなり、両方のエッジを用いる場合、逓倍クロックの逓倍数はN/2となる。
【0015】
このように構成された本発明のトランシーバでは、送信データの先頭ビット(スタートビット)のサンプリングタイミングを、送信データの1ビット幅の(P−1)/N〜P/Nの範囲内とすることができる。つまり、先頭ビットでのサンプリングタイミングと送信データのビット境界との間には、少なくとも1ビット幅の(P−1)/Nもの余裕が確保されるため、サンプリング手段による誤サンプリングを抑制することができ、サンプリングされた送信データの信頼性を向上させることができる。
【0016】
また、請求項2に記載のトランシーバでは、サンプリング手段は、スタートビットの開始エッジが検出されると、第1のクロックによって周期カウント値の半値がカウントされるタイミングで送信データをサンプリングし、以後、第1のクロックによって1周期のカウント値がカウントされるタイミング毎に送信データをサンプリングする。
【0017】
このように構成された本発明のトランシーバでは、周期カウント値、即ち、バス通信路上の信号の1ビット幅の実測値に基づき、スタートビットの開始エッジを起点として、送信データが第2のクロックと完全に同期していれば、送信データの1ビット幅の中心がサンプリングタイミングとなるようなタイミングでサンプリングを実行するようにされている。
【0018】
従って、本発明のトランシーバによれば、送信データの先頭ビットでのサンプリングタイミングと送信データのビット境界との間には、1ビット幅の約1/2もの余裕が確保されるため、請求項1に記載のトランシーバと同様に、サンプリング手段によってサンプリングされる送信データの信頼性を向上させることができるだけでなく、請求項1に記載のトランシーバと比較して、送信データの1ビット幅と第2のクロックの周期との誤差(周波数誤差)に基づく誤サンプリングを、より抑制することができる。
【0019】
また、請求項3に記載のトランシーバでは、オフセット値生成手段が、スタートビットの開始エッジの直前に現れた第2のクロックのエッジを対象エッジとして、該対象エッジから開始エッジまでの間隔を、第1のクロックでカウントした値をオフセット値として生成する。そして、サンプリング手段は、スタートビットの開始エッジが検出されると、第1のクロックによって周期カウント値の半値がカウントされるタイミングで送信データをサンプリングし、以後、対象エッジと同種のエッジ(立ち上がりエッジまたは立ち下がりエッジ)が検出される毎に、第1のクロックによってオフセット値と周期カウント値の半値との合計値がカウントされるタイミングで送信データをサンプリングする。
【0020】
このように構成された本発明のトランシーバでは、請求項2に記載のトランシーバと同様なタイミングで送信データをサンプリングすることになるため、これと同様の効果を得ることができる。
【図面の簡単な説明】
【0021】
【図1】車載通信システムの概略構成を示すブロック図。
【図2】(a)はバス通信路で使用する伝送路符号の構成、(b)はバス通信路を介して送受信されるフレームの構成、(c)はUARTが送受信するブロックデータの構成を示す説明図。
【図3】マスタノード,スレーブノードの構成を示すブロック図。
【図4】タイミング生成部が生成する各種タイミング信号を示す説明図。
【図5】符号化復号化部の構成を示すブロック図。
【図6】符号化回路の動作を示すタイミング図。
【図7】同期化回路の構成を示すブロック図。
【図8】同期化回路の動作を示すタイミング図。
【図9】第2実施形態における同期化回路の構成を示すブロック図。
【図10】第2実施形態における同期化回路の動作を示すタイミング図。
【図11】第3実施形態における同期化回路の構成を示すブロック図。
【図12】第3実施形態における同期化回路の動作を示すタイミング図。
【発明を実施するための形態】
【0022】
以下に本発明の実施形態を図面と共に説明する。
[第1実施形態]
<全体構成>
図1は、車両に搭載され、ボデー系のアプリケーションを実現する電子制御装置(ボデー系ECU)や、車両の状態を検出したり車両の状態を制御したりするために設けられた関連機器(ライト,センサ等)からなるノード3を、バス状の通信路(以下「バス通信路」という)5を介して相互に接続した通信システム1の概略構成を示すブロック図である。
【0023】
図1に示すように、通信システム1を構成するノード3のうち、ボデー系ECUとしては、ボデー・ワイパECU,シートECU,スライドドアECU,ミラーECU,バックドアECU,ライトECU,チルテレ(電動ステアリング位置調整装置)ECU等があり、一方、関連機器としては、ライトSW,ワイパSW,ライトセンサ,レインセンサ等がある。
【0024】
<バス通信路>
バス通信路5は、異なるノード3からハイレベルの信号とロウレベルの信号とが同時に出力されると、バス通信路5上の信号レベルがロウレベルとなるように構成されており、この機能を利用してバス調停を実現する。
【0025】
ここで図2(a)は、バス通信路5で使用する伝送路符号を示す説明図である。
図2(a)に示すように、バス通信路5では、伝送路符号として、ビットの途中で信号レベルがロウレベルからハイレベルに変化するPWM符号が用いられ、レセッシブ(本実施形態では1に対応)およびドミナント(本実施形態では0に対応)からなる二値の信号を2種類のデューティ比で表現する。
【0026】
具体的には、ドミナントの方がレセッシブよりロウレベルの比率が長くなるよう(本実施形態では、レセッシブが1ビットの1/3の期間、ドミナントが1ビットの2/3の期間)に設定され、バス通信路5上でレセッシブとドミナントとが衝突すると、ドミナントが調停勝ちするようにされている。
【0027】
そして、通信システム1では、調停負けしたノード3は送信を直ちに停止し、調停勝ちしたノード3のみが送信を継続する、いわゆるCSMA/CA方式のアクセス制御方式が用いられている。
【0028】
また、図2(b)は、ノード3間の通信に使用するレームの構成を示す説明図である。
図2(b)に示すように、フレームは、送信を許可するデータを指定するためのヘッダと、ヘッダによって指定されたデータを送信するための可変長のレスポンスからなる。
【0029】
このうち、ヘッダは、送信を許可するデータの識別子(ID)からなり、IDの値が小さいほど、バス調停で勝ち残るように設定されている。一方、レスポンスは、データ以外に、データ(レスポンス)のサイズを示すサイズ情報、エラーの有無をチェックするためのCRC符号が少なくとも含まれている。
【0030】
<ノード共通>
各ノード3は、予め割り当てられた全ての機能を実行可能な動作モードであるウェイクアップモード、消費電力を抑えるために一部の機能を停止した動作モードであるスリープモードで動作する。
【0031】
また、ノード3の一つ(ここではボデー・ワイパECU)をマスタ3a、他のノードをスレーブ3bとして、マスタ3aがヘッダを送信することによって、送信を許可するデータ(ひいてはデータの送信元となるスレーブ3b)を順次指定し、ヘッダによって指定されたデータの送信元となるスレーブ3bがレスポンス(データ)を送信するポーリング(以下「定期通信」ともいう)と、マスタ3aからの指示によらずスレーブ3bが自律的に通信を制御するイベント通信とを実行する。
【0032】
以下、マスタ3aおよびスレーブ3bの構成を、図3に示すブロック図を参照して説明する。
<マスタ>
マスタ3aは、バス通信路5を介した他ノード3との通信によって得られた情報等に基づき、自ノード3に割り当てられた各種処理を実行する信号処理部10と、信号処理部10から供給されるNRZ符号の送信データTXDをPWM符号の送信データTXに符号化してバス通信路5に出力し、バス通信路5から取り込んだPWM符号の受信データRXをNRZ符号の受信データRXDに復号化して信号処理部10に供給するトランシーバ20とを備えている。
【0033】
<<信号処理部>>
信号処理部10は、CPU,ROM,RAM,IOポート等からなる周知のマイクロコンピュータを中心に構成され、更に、調歩同期(非同期)方式のシリアル通信を実現するUART(汎用非同期受信・送信機:Universal Asynchronous Receiver Transmitter )、11、当該信号処理部10を動作させるための動作クロックや、UART11の通信速度と同じ速度(本実施形態では20Kbps)に設定されトランシーバ20に供給する内部クロックCKを発生させる発振回路12を備えている。
【0034】
但し、発振回路12は、水晶発振子を用いて構成され、安定した周波数で発振する高精度のものが用いられている。また、信号処理部10は、自ノードの動作モードを表すモード信号MDをトランシーバ20に供給するように構成されている。
【0035】
ここで図2(c)は、UART11が送受信するデータTXD,RXDの構成を示す説明図である。図示されているように、UART11は、データの開始を示す1ビット長のスタートビット(ロウレベル)と、データの終了を示すストップビット(ハイレベル)と、これらスタートビット,ストップビットに挟まれた8ビットのデータとで構成された合計10ビットのブロックデータを単位として送受信する。但し、主要部となる8ビットのデータは、LSB(最下位ビット)が先頭、MSB(最上位ビット)が末尾となるように設定されている。
【0036】
なお、前述のフレーム(図2(b)参照)を構成するヘッダは、単一のブロックデータで構成され、スタートビット,ストップビットを除く8ビットのデータのうち、7ビットはIDとして用いられ、1ビットはパリティビットとして用いられる。また、レスポンスは、1ないし複数個のブロックデータで構成され、最初のブロックに、サイズ情報が設定される。
【0037】
<<トランシーバ>>
図3に戻り、トランシーバ20は、複数のインバータをリング状に接続することで構成されたリングオシレータ等からなる簡易な発振回路を備え、この発振回路が発生させたカウント用クロックCCKを分周することによって、信号処理部10から供給される内部クロックCKに同期した各種タイミング信号を生成するタイミング生成部21と、タイミング生成部21にて生成されたタイミング信号に従って、送信データTXDの符号化、受信データRXの復号化を行う符号化復号化部22と、符号化復号化部22にて符号化された送信データTXをバス通信路5に出力する送信バッファ23と、バス通信路5上のデータを取り込む受信バッファ24と、信号処理部10から供給されるモード信号MDに従って、タイミング生成部21および符号化復号化部22の動作を制御するモード管理部25とを備えている。
【0038】
なお、送信バッファ23は、上述したバス通信路5上でのバス調停が可能となるように、例えば、周知のオープンコレクタ回路を用いて構成されている。また、受信バッファ24は、バス通信路5の信号レベルが、予め設定された閾値より大きければハイレベル、閾値より低ければロウレベルを出力する周知のコンパレータによって構成されている。
【0039】
また、モード管理部25は、モード信号MDがウェイクアップモードを示している場合には、タイミング生成部21および符号化復号化部22を有効に動作させ、モード信号MDがスリープモードを示している時には、タイミング信号の生成が停止するようにタイミング生成部21を制御する。
【0040】
<<タイミング生成部>>
ここで図4は、タイミング生成部21が生成する各種タイミング信号を示す説明図である。なお、カウント用クロックCCKは、内部クロックCKに対して十分に高い周波数(数十〜数百倍程度)を有するように設定されている。
【0041】
タイミング生成部21は、内部クロックCKの立ち下がりエッジの間隔、即ち1周期の長さを、カウント用クロックCCKによってカウントするカウンタや、カウンタによって得られた周期カウント値Ci(i=1,2,…)に基づいて、カウント用クロックCCKを分周することによって内部クロックCKに同期した各種タイミング信号を発生させる分周回路等によって構成されている。
【0042】
なお、タイミング信号として具体的には、以下に示すクロックを生成する。
図4に示すように、タイミング生成部21は、周期カウント値Ciに相当する周期を有し、立ち下がりエッジから立ち上がりエッジまでの間隔が周期カウント値Ciの1/2に相当する長さに設定されたデューティ50%のバスクロックBCKと、同じく周期カウント値Ciに相当する周期を有し、バスクロックBCKの立ち下がりエッジのタイミングおよび該エッジから周期カウント値の1/4,2/4,3/4に相当する期間だけ経過したタイミングが立ち上がりエッジ(サンプリング用エッジ)となるサンプリングクロックSCKと、バスクロックBCKの立ち下がりエッジから周期カウント値の1/3に相当する期間だけ経過したタイミングが立ち上がりエッジとなるレセッシブ生成用クロックRCKと、バスクロックBCKの立ち下がりエッジから周期カウント値の2/3に相当する期間だけ経過したタイミングが立ち上がりエッジとなるドミナント生成用クロックDCKとを生成する。
【0043】
なお、タイミング生成部21では、モード管理部25からの指示に従い、動作モードがウェイクアップモードの時には、発振回路を動作させることによってタイミング信号の生成を行い、動作モードがスリープモードの時には、発振回路を停止することによってタイミング信号の生成を停止するように構成されている。
【0044】
<<符号化復号化部>>
次に、図5は、符号化復号化部22の構成を示すブロック図である。
図5に示すように、符号化復号化部22は、信号処理部10から供給される送信データTXD(NRZ符号)を、タイミング生成部21にて生成されたバスクロックBCKに同期させる同期化回路26と、同期化回路26が出力する同期送信データdTXDを伝送路符号(PWM符号)に符号化し、符号化した送信データTXを送信バッファ23に供給する符号化回路27と、受信バッファ24が取り込んだ受信データRX(PWM符号)をNRZ符号に復号化し、復号化した受信データRXDを信号処理部10に供給する復号化回路28と、送信データTXと受信データRXをビット単位(符号単位)で比較し、信号レベル(レセッシブ/ドミナント)が不一致である場合にアクティブレベルとなる衝突検出信号CDを符号化回路27に出力するビット調停回路29とを備えている。
【0045】
なお、ビット調停回路29は、送信データTXおよび受信データRXの信号レベルをバスクロックBCKの立ち上がりエッジのタイミングでサンプリングし、そのサンプリングした信号レベルを排他的論理和回路(XORゲート)で比較するように構成され、XORゲートの出力を衝突検出信号CDとして出力する。
【0046】
ここで図6は、符号化回路27の動作を示すタイミング図である。
図6(a)に示すように、符号化回路27は、同期送信データdTXDがロウレベル(0)の時には、バスクロックBCK(特に立ち下がりエッジ)とドミナント生成用クロックDCKを用いて、1ビット中の前2/3期間がロウレベル、後1/3期間がハイレベルとなるPWM符号(ドミナント)を生成し、同期送信データdTXDがハイレベル(1)の時には、バスクロックBCK(特に立ち下がりエッジ)とレセッシブ生成用クロックRCKを用いて、1ビット中の前1/3期間がロウレベル、後2/3期間がハイレベルとなるPWM符号(レセッシブ)を生成する。
【0047】
但し、信号処理部10から送信データTXDの供給がない場合、同期化回路26の入力、ひいては符号化回路27の入力はハイレベルとなり、バス通信路5上には、レセッシブが流れ続けるように構成されている。
【0048】
以下では、バス通信路5において、レセッシブが予め設定された許容ビット(本実施形態では11ビット)以上継続している期間をIFS(Inter Frame Space )と呼び、IFSが検出されている状態をアイドル状態という。
【0049】
また、符号化回路27は、衝突検出信号CDがアクティブになると(即ち、自ノード3が調停負けすると)、処理中の同期送信データdTXDが属するブロックデータについての処理が終了するまでの間、同期送信データdTXDの信号レベルに拘わらず強制的にレセッシブを出力するように構成されている。
【0050】
一方、復号化回路28は、バスクロックBCKの立ち上がりエッジで受信データRXをサンプリングし、そのサンプリングした結果を、復号化した受信データRXDとして出力するように構成されている。
【0051】
次に、図7は、同期化回路26の構成を示すブロック図である。
図7に示すように、同期化回路26は、送信データTXDのスタートビットの開始エッジ(立ち下がりエッジ)を検出するスタートビット検出回路51と、サンプリングクロックSCKに従ってカウント動作するダウンカウンタ52と、スタートビットの開始エッジのタイミング(以下「開始タイミング」という)またはダウンカウンタ52がカウントアウトしたタイミング(以下「COタイミング」という)で、ダウンカウンタ52にカウント値をロードさせるための信号を生成する論理和回路(ORゲート)53と、開始タイミングおよびCOタイミングに基づいてダウンカウンタ52にロードするカウント値を選択するカウント値選択回路54と、COタイミングで送信データTXDをラッチするラッチ回路55と、ラッチ回路55の出力をバスクロックBCKの立ち下がりエッジでラッチするラッチ回路56とを備え、ラッチ回路56の出力を、同期送信データdTXDとして出力するように構成されている。
【0052】
但し、カウント値選択回路54は、ロードするカウント値として、開始タイミング前は‘2’を選択し、開始タイミング後は‘4’を選択し、ブロックデータを構成するビット数(即ち10)回目のCOタイミング後に再び‘2’を選択するように構成されている。
【0053】
つまり、図8に示すように、スタートビットの開始エッジのタイミングが検出されると、その後、2個目のサンプリングクロックSCKのタイミングで送信データTXDをサンプリングし、以後、4個目のサンプリングクロックSCKのタイミング毎に、送信データTXDをサンプリングし、そのサンプリングしたデータを更に、バスクロックBCKの立ち下がりエッジでサンプリングすることによって、バスクロックBCKに同期した同期送信データdTXDが生成される。
【0054】
なお、図8は、同期化回路26の動作を示すタイミング図であり、(a)はサンプリングクロックSCKのエッジの直後に開始タイミングが現れる場合、(b)は、逆に開始タイミングの直後にサンプリングクロックSCKのエッジが現れる場合を示す。いずれの場合も、スタートビットをサンプリングする時点で、ビット境界のタイミングとサンプリングクロックSCKによるサンプリングタイミングとの間には、1ビット幅の1/4以上の間隔が確保されることになる。
【0055】
このように、マスタ3aのトランシーバ20は、動作モードがウェイクアップモードの時には、送信データTXDの符号化、受信データRXの復号化を行うだけでなく、信号処理部10から送信データTXDの供給がない場合でもバス通信路5にレセッシブを出力し続けることによって、マスタ3a以外のノード3に、バスクロックBCKの再生に必要なクロック成分を供給するクロックマスタとして動作する。
【0056】
<スレーブ>
図3に戻り、スレーブ3bは、マスタ3aと同様に、バス通信路5を介した他ノード3との通信によって得られた情報等に基づき、自ノード3に割り当てられた各種処理を実行する信号処理部30と、信号処理部30から供給される送信データTXDをPWM符号で符号化した送信データTXをバス通信路5に出力し、バス通信路5上のデータ(受信データ)RXを受信して復号した受信データRXDを信号処理部30に供給するトランシーバ40とを備えている。
【0057】
<<信号処理部>>
信号処理部30は、トランシーバ40に対して内部クロックCKを供給する機能が省略されている点以外は、信号処理部10と同様に構成されている。
【0058】
但し、スレーブ3bの信号処理部30は、必ずしもマイコンによって構成する必要はなく、UART11に相当する機能を少なくとも備えたシーケンサと、そのシーケンサを動作させる動作クロックを生成する発振回路とによって構成してもよい。
【0059】
<<トランシーバ>>
トランシーバ40は、トランシーバ20と同様に、タイミング生成部41,符号化復号化部42,送信バッファ23,受信バッファ24,モード管理部25を備えており、タイミング生成部41および符号化復号化部42の構成の一部が、タイミング生成部21および符号化復号化部22とは異なっている。
【0060】
具体的には、タイミング生成部41は、各種タイミング信号を生成する際に、同期の対象となる信号が、内部クロックCKではなく、受信バッファ24を介してバス通信路5から取得した受信データRXである点が異なる。なお、タイミング生成部41では、タイミング信号の一つであるレセッシブ生成用クロックRCKの生成を省略してもよい。
【0061】
また、符号化復号化部42は、符号化回路27の動作が一部異なる以外は、符号化復号化部22と同様に構成されているため、この点を、図6(b)に示すタイミング図に沿って説明する。以下の文章中では、符号化復号化部42の符号化回路を、符号化復号化部22の符号化回路27と区別するために「符号化回路47」と記す。
【0062】
図6(b)に示すように、符号化回路47は、同期送信データdTXDがロウレベル(0)の時には、バスクロックBCKおよびドミナント生成用クロックDCKを用いて、バスクロックBCKの立ち下がりエッジより少し遅れたタイミングでロウレベルに変化し、ドミナント生成用クロックDCKのタイミングでハイレベルに変化する第1符号を生成し、同期送信データdTXDがハイレベル(1)の時には、1ビットの全期間に渡ってハイベルとなる第2符号を生成する。
【0063】
これら第1符号および第2符号は、送信バッファ23を介してバス通信路5に出力されると、他ノード3がデータの送信を行っていない時(マスタ3aからクロックマスタの機能によってレセッシブが出力されている時)または他ノード3がレセッシブを送信している時には、バス通信路5上で、第1符号はドミナント、第2符号はレセッシブに変換されて他ノード3に伝送される。
【0064】
また、他ノード3がドミナントを送信している時には、バス通信路5上で、第1符号および第2符号のいずれもドミナントに変換され、第1符号を送信したのであれば調停勝ち、第2符号を送信したのであれば調停負けとなる。
【0065】
このように、スレーブ3bのトランシーバ40は、動作モードがウェイクアップモードの時には、バス通信路5から取り込んだPWM符号の受信データRXのビット境界となる立ち下がりエッジをクロック成分として抽出し、そのクロック成分に同期したバスクロックBCKを生成し、このバスクロックBCKに従って送信データTXDの符号化,受信データRXの復号化を行い、バス通信路5を介した通信を実現する。
【0066】
<効果>
以上説明したように、通信システム1において各ノード3のトランシーバ20,40を構成する同期化回路26では、バスクロックBCKの1周期の間にサンプリング用エッジを4個有するサンプリングクロックSCK(バスクロックBCKの逓倍クロック)を用いて、開始タイミング後、(4×k+2)番目(k=0,1,2,…9)のサンプリング用エッジを使って、送信データTXDをラッチ(サンプリング)し、更に、そのラッチした結果をバスクロックBCKの立ち下がりエッジでラッチすることによって、バスクロックBCKに同期した同期送信データdTXDを生成し、この同期送信データdTXDを用いて符号化を行うようにされている。
【0067】
このため、同期化回路26では、送信データTXDのサンプリングの開始時に、送信データTXDのビット境界とサンプリング用エッジとの間に、最悪でも1ビット幅の1/4の間隔が確保されるため、送信データTXDの信号レベルを、正確にサンプリングすることができる。また、送信データTXDとバスクロックBCKとの間に周波数誤差がある場合でも、その周波数誤差に基づく誤サンプリングを抑制することができる。
【0068】
なお、本実施形態では、送信データTXDのサンプリングを、開始タイミング後、サンプリングクロックSCKの(4×k+2)番目のサンプリング用エッジを使って行っているが、(4×k+3)番目のサンプリング用エッジを使って行うように構成してもよい。
【0069】
また、一般にサンプリングクロックSCKの1周期の間にN個のサンプリング用エッジを有する場合、Nが奇数の場合は、P=(N+1)/2、Nが偶数の場合は、P=N/2またはP=(N+2)/2のいずれかとして、送信データTXDのスタートビットの開始エッジを検出すると、以後、前記逓倍クロックのP+k・N番目(但し,k=0,1,2…)のサンプリング用エッジのタイミングで、送信データTXDをサンプリングするように構成してもよい。
【0070】
<発明との対応>
本実施形態において、タイミング生成部21,41に設けられ、カウント用クロックCCK(第1のクロックに相当)を発生させる発振回路が自走クロック発生手段、タイミング生成部21,41に設けられ、内部クロックCKの1周期または受信データRXの1ビット幅をカウント用クロックCCKでカウントするカウンタが周期カウント手段、タイミング生成部21,41に設けられ、カウント用クロックCCKを分周することでバスクロックBCKやサンプリングクロックSCK等を生成する回路が同期クロック生成手段、同期化回路26が請求項1におけるサンプリング手段、符号化回路27が送信手段に相当する。
【0071】
[第2実施形態]
次に、第2実施形態について説明する。
本実施形態では、第1実施形態とは、同期化回路26aの構成が異なるだけであるため、この異なる部位を中心に説明する。なお、この同期化回路26aは、マスタ3aのトランシーバ20かスレーブ3bのトランシーバ40かに関わらず共通の構成である。
【0072】
図9は、同期化回路26aの構成を示すブロック図である。
図9に示すように、同期化回路26aは、第1実施形態における同期化回路26と同様に、スタートビット検出回路51,ダウンカウンタ52,論理和回路53,カウント値選択回路54a,ラッチ回路55,56を備えている。
【0073】
但し、ダウンカウンタ52は、サンプリングクロックSCKではなく、カウント用クロックCCKに従って動作し、また、カウント値選択回路54は、タイミング生成部21(または41)から周期カウント値Ciの供給を受け、ダウンカウンタ52にロードするカウント値として、開始タイミング前はCi/2(周期カウント値の半値)を選択し、開始タイミング後はCi(周期カウント値)を選択し、ブロックデータを構成するビット数(即ち10)回目のCOタイミングが検出されると、再びCi/2を選択するように構成されている。
【0074】
ここで図10は、同期化回路26aの動作を示すタイミング図である。
図10に示すように、同期化回路26aでは、開始タイミングの後、Ci/2+k×Ci番目(k=0,1,2,…9)のカウント用クロックCCKのタイミングで送信データTXDをサンプリングし、そのサンプリングしたデータを、更に、バスクロックBCKの立ち下がりエッジでサンプリングすることによって、バスクロックBCKに同期した同期送信データdTXDが生成される。
【0075】
<効果>
このように構成された同期化回路26aを備えたトランシーバ20,40によれば、送信データTXDのサンプリングタイミングを、よりビットの中心に近い位置とすることができるため、送信データTXDの信号レベルを正確にサンプリングすることができる。しかも、送信データTXDとバスクロックBCKとの周波数誤差(それに基づくサンプリングタイミングのずれ)の許容値がより広くなるため、トランシーバ20,40の設計や製造を容易化することができる。但し、周期カウント値Ciは、1周期毎に求めた値を用いてもよいし、複数周期毎にその複数周期で単純平均や移動平均した値等を用いてもよい。
【0076】
なお、本実施形態では、同期化回路26aが請求項2におけるサンプリング手段に相当する。
[第3実施形態]
次に、第3実施形態について説明する。
【0077】
本実施形態では、第1実施形態とは、同期化回路26bの構成が異なるだけであるため、この異なる部位を中心に説明する。なお、この同期化回路26bは、マスタ3aのトランシーバ20かスレーブ3bのトランシーバ40かに関わらず共通の構成である。
【0078】
図11は、同期化回路26bの構成を示すブロック図である。
図11に示すように、同期化回路26bは、カウント用クロックCCKに従ってカウント動作し、バスクロックBCKの立ち上がりおよび立ち下がり両エッジのタイミングでカウント値がリセットされるカウンタ61と、送信データTXDのスタートビットの開始エッジを検出するスタートビット検出回路62と、カウンタ61のカウント値を、スタートビット検出回路62で検出された開始エッジのタイミング(開始タイミング)でラッチするラッチ回路63と、開始タイミングの直前に現れるバスクロックBCKのエッジと同種のエッジ(立ち上がりエッジまたは立ち下がりエッジ)を対象エッジとして選択するエッジ選択回路64とを備えている。
【0079】
また、同期化回路26bは、カウント用クロックCCKに従ってカウント動作するカウンタ65と、エッジ選択回路64によって選択された対象エッジのタイミングおよび開始タイミングでカウンタ65のカウント値をリセットするためのリセット信号を生成する論理和回路(ORゲート)70と、タイミング生成部21(または41)にて生成される周期カウント値の半値(以下「半周期カウント値」という)Ci/2またはラッチ回路63にてラッチされたカウント値(以下「オフセット値」という)Cofに半周期カウント値Ci/2を加算した値Cof+Ci/2のうちいずれか一方を、ORゲート70の出力(即ち、開始タイミングおよび対象エッジのタイミング)に従って選択し、比較値として出力する比較値算出回路66と、カウンタ65のカウント値および比較値算出回路66にて設定された比較値が一致するか否かを比較する比較器67と、比較器67によりカウント値と比較値の一致が検出されたタイミングで、送信データTXDの信号レベルをラッチするラッチ回路68と、ラッチ回路68の出力をバスクロックBCKの立ち下がりエッジのタイミングでラッチするラッチ回路69とを備えている。
【0080】
但し、比較値算出回路66は、比較値として、開始タイミング前はCi/2を選択し、開始タイミング後はCof+Ci/2を選択し、その後、ブロックデータを構成するビット数(即ち10)個分の対象エッジが検出されると再びCi/2を選択するように構成されている。
【0081】
ここで、図12は、同期化回路26bの動作を示すタイミング図である。
図12に示すように、同期化回路26bでは、開始タイミングが検出されると、開始タイミングを起点としてCi/2番目のカウント用クロックCCKのタイミングで、その後は、バスクロックBCKの対象エッジのタイミングを起点としてCof+Ci/2番目のカウント用クロックCCKのタイミングで送信データTXDをサンプリングし、そのサンプリングしたデータを、更に、バスクロックBCKの立ち下がりエッジでサンプリングすることによって、バスクロックBCKに同期した同期送信データdTXDが生成される。
【0082】
<効果>
このように構成された同期化回路26bを備えたトランシーバ20,40によれば、第2実施形態の場合と同様に、送信データTXDのサンプリングタイミングを、よりビットの中心に近い位置とすることができるため、第2実施形態の場合と同様の効果を得ることができる。
【0083】
なお、本実施形態では、カウンタ61,ラッチ63がオフセット値生成手段、同期化回路26b(但し、カウンタ61,ラッチ63を除く)が請求項3におけるサンプリング手段に相当する。
【0084】
[他の実施形態]
以上、本発明のいくつかの実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において様々な態様にて実施することが可能である。
【0085】
例えば、上記実施形態では、マスタ3aがクロックマスタを兼ねるように構成したが、スレーブ3bのいずれかがクロックマスタとなるように構成してもよい。
第1実施形態では、サンプリングクロックSCKとして、パルス状の波形を有する信号を用いて、その立ち上がりエッジをサンプリング用エッジとして用いているが、デューティが約50%となる信号を用いて、その立ち上がりおよび立ち下がりの両エッジをサンプリング用エッジとして用いるように構成してもよい。
【符号の説明】
【0086】
1…通信システム 3…ノード 3…自ノード 3a…マスタ 3b…スレーブ 5…バス通信路 10,30…信号処理部 12…発振回路 20,40…トランシーバ 21,41…タイミング生成部 22,42…符号化復号化部 23…送信バッファ 24…受信バッファ 25…モード管理部 26,26a,26b…同期化回路 27,47…符号化回路 28…復号化回路 29…ビット調停回路 51,62…スタートビット検出回路 52…ダウンカウンタ 53,70…論理和回路 54,54a…カウント値選択回路 55,56,63,68,69…ラッチ回路 61,65…カウンタ 64…エッジ選択回路 66…比較値算出回路 67…比較器

【特許請求の範囲】
【請求項1】
クロック成分を含む伝送路符号によって符号化された信号を、バス通信路を介して送受信するトランシーバであって、
第1のクロックを発生させる自走クロック発生手段と、
前記バス通信路上の信号から抽出したクロック成分に基づき、該信号の1ビット幅を前記第1のクロックでカウントする周期カウント手段と、
前記周期カウント手段でのカウント結果である周期カウント値に従って、前記第1のクロックを分周することにより、少なくとも、前記バス通信路上の信号の1ビット幅に相当する周期を有した第2のクロックを生成する同期クロック生成手段と、
前記第2のクロックとは非同期に供給され、スタートビットで始まるNRZ符号の送信データをサンプリングするサンプリング手段と、
前記サンプリング手段によってサンプリングされた送信データを前記伝送路符号に符号化し且つ前記第2のクロックに同期させて前記バス通信路に出力する送信手段と、
を備え、
前記同期クロック生成手段は、前記第2のクロックの1周期の間にN(Nは3以上の整数)個のサンプリング用エッジを有する逓倍クロックを生成し、
前記サンプリング手段は、Nが奇数の場合はP=(N+1)/2、Nが偶数の場合は、P=N/2またはP=(N+2)/2のいずれかとして、前記送信データのスタートビットの開始エッジを検出すると、以後、前記逓倍クロックのP+k・N番目(但し,k=0,1,2…)のサンプリング用エッジのタイミングで、前記送信データをサンプリングすることを特徴とするトランシーバ。
【請求項2】
クロック成分を含む伝送路符号によって符号化された信号を、バス通信路を介して送受信するトランシーバであって、
第1のクロックを発生させる自走クロック発生手段と、
前記バス通信路上の信号から抽出したクロック成分に基づき、該信号の1ビット幅を前記第1のクロックでカウントする周期カウント手段と、
前記周期カウント手段でのカウント結果である周期カウント値に従って、前記第1のクロックを分周することにより、少なくとも、前記バス通信路上の信号の1ビット幅に相当する周期を有した第2のクロックを生成する同期クロック生成手段と、
前記第2のクロックとは非同期に供給され、スタートビットで始まるNRZ符号の送信データをサンプリングするサンプリング手段と、
前記サンプリング手段にてサンプリングされた送信データを前記伝送路符号に符号化し且つ前記第2のクロックに同期させて前記バス通信路に出力する送信手段と、
を備え、
前記サンプリング手段は、前記スタートビットの開始エッジが検出されると、前記第1のクロックによって前記周期カウント値の半値がカウントされるタイミングで前記送信データをサンプリングし、以後、前記第1のクロックによって前記周期カウント値がカウントされるタイミング毎に前記送信データをサンプリングすることを特徴とするトランシーバ。
【請求項3】
クロック成分を含む伝送路符号によって符号化された信号を、バス通信路を介して送受信するトランシーバであって、
第1のクロックを発生させる自走クロック発生手段と、
前記バス通信路上の信号から抽出したクロック成分に基づき、該信号の1ビット幅を前記第1のクロックでカウントする周期カウント手段と、
前記周期カウント手段でのカウント結果である周期カウント値に従って、前記第1のクロックを分周することにより、少なくとも、前記バス通信路上の信号の1ビット幅に相当する周期を有した第2のクロックを生成する同期クロック生成手段と、
前記第2のクロックとは非同期に供給され、スタートビットで始まるNRZ符号の送信データをサンプリングするサンプリング手段と、
前記サンプリング手段にてサンプリングされた送信データを前記伝送路符号に符号化し且つ前記第2のクロックに同期させて前記バス通信路に出力する送信手段と、
前記スタートビットの開始エッジの直前に現れた前記第2のクロックのエッジを対象エッジとして、該対象エッジから前記開始エッジまでの間隔を、前記第1のクロックでカウントした値をオフセット値として生成するオフセット値生成手段と、
を備え、
前記サンプリング手段は、前記スタートビットの開始エッジが検出されると、前記第1のクロックによって前記周期カウント値の半値がカウントされるタイミングで前記送信データをサンプリングし、以後、前記対象エッジと同種のエッジ(立ち上がりエッジまたは立ち下がりエッジ)が検出される毎に、前記第1のクロックによって前記オフセット値と前記周期カウント値の半値との合計値がカウントされるタイミングで前記送信データをサンプリングすることを特徴とするトランシーバ。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2012−257035(P2012−257035A)
【公開日】平成24年12月27日(2012.12.27)
【国際特許分類】
【出願番号】特願2011−128222(P2011−128222)
【出願日】平成23年6月8日(2011.6.8)
【出願人】(000004260)株式会社デンソー (27,639)
【Fターム(参考)】