(57)【特許請求の範囲】
【請求項１】
第１バスに結合された第１端子、及びスイッチを介して第２バスに結合された終端抵抗器と、
制御回路とを具えた回路であって、
該制御回路は、バス・トランシーバのデータ入力ピンに結合された入力端子と、前記終端抵抗器を制御するように結合された出力端子とを具え、
前記制御回路は、前記データ入力ピンにおいて受信した入力ビットストリーム上の遷移に応答して、前記終端抵抗器の前記第２端子を前記第２バスに選択的に結合して、前記終端抵抗器を前記バス・トランシーバの出力先として結合するように構成されている、回路。
【請求項２】
前記制御回路が、前記データ入力ピン上の遷移を検出するように構成されたエッジ検出器を具えている、請求項１に記載の回路。
【請求項３】
前記入力端子が、前記エッジ検出器の検出入力端子である、請求項２に記載の回路。
【請求項４】
前記制御回路が、前記エッジ検出器が１回目の遷移を検出したことに応答して前記スイッチを閉じるように構成されたスイッチ・コントローラをさらに具えている、請求項２または３に記載の回路。
【請求項５】
前記スイッチ・コントローラが、さらに、前記エッジ検出器が２回目の遷移を検出したことに応答して前記スイッチを開くように構成されている、請求項４に記載の回路。
【請求項６】
前記１回目の遷移がドミナントからリセッシブへの遷移であり、前記２回目の遷移がリセッシブからドミナントへの遷移である、請求項５に記載の回路。
【請求項７】
前記スイッチ・コントローラが、前記スイッチを設定期間だけ閉じるように構成されている、請求項４に記載の回路。
【請求項８】
前記設定期間が、前記バスの動作のデータ・フェーズ中に、前記入力ビットストリームのビット時間よりも短い、請求項７に記載の回路。
【請求項９】
前記設定期間が、前記バスの動作のデータ・フェーズ中に、前記バスのビット時間の４０％超かつ１００％未満である、請求項７または８に記載の回路。
【請求項１０】
前記スイッチ・コントローラが、さらに、前記設定期間後に前記スイッチを開くように構成されている、請求項７〜９のいずれかに記載の回路。
【請求項１１】
前記終端抵抗器及び前記スイッチが、前記バスの第１ワイヤと第２ワイヤとの間に直列に結合されている、請求項１〜１０のいずれかに記載の回路。
【請求項１２】
前記データ入力ピンが、バス・コントローラとバス・トランシーバとの間に結合され、前記制御回路が、前記バス・コントローラから前記バス・トランシーバへ供給されるデータ・ビットストリーム中の遷移を検出するように構成されている、請求項１〜１１のいずれかに記載の回路。
【請求項１３】
入力ビットストリームを受信するように構成されたデータ入力ピンと、
バス信号を出力するように構成された第１出力端子と、
請求項１に記載された回路と
を具えているバス・トランシーバ。
【請求項１４】
前記バス・トランシーバが、前記入力ビットストリームを前記バス信号の形式に変換するように構成されている、請求項１３に記載のバス・トランシーバ。
【請求項１５】
コントローラ・エリア・ネットワーク（ＣＡＮ）バスを介して通信するように結合された複数のノードを具え、前記ノードの各々が請求項１３に記載のバス・トランシーバを具えている、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、バス動作、特にリンギング抑制回路に関するものである。
【背景技術】
【０００２】
コントローラ・エリア・ネットワーク（ＣＡＮ：controller area network）バスは、ネットワーク内の１つ以上のノードを接続するマルチ（複数）マスターのシリアルバスである。ＣＡＮバスは、一般に自動車及び工業の自動化用途に用いられるが、他の用途にも応用することができる。ＣＡＮバスの使用法は、種々のＩＳＯ規格、例えばＣＡＮプロトコルについてのISO 11898-1、高速なＣＡＮ物理層についてのISO 11898-2、及び低速またはフォールト・トレラント（耐故障）なＣＡＮ物理層についてのISO 11898-3によって支配されている。
【０００３】
現在のＣＡＮバスは、種々のデータレート、例えば１Mb/s〜１０Mb/sをサポートすることができる。しかし、こうしたデータレートのサポートは、ネットワークが適正に終端することに依存する。現在のネットワークでは、この終端は、例えばネットワークの末端（エンド）ノードにおける１２０Ωの終端抵抗で構成することができ、中間ノードは十分に短い長さのスタブ（引込線、取付線）を介してバスに接続される。こうした終端はバス上の反射を防止するために存在し、こうした反射はバス上の信号伝達のインテグリティ（完全性）を劣化または低下させ得る。
【０００４】
ＣＡＮバス・ネットワークのトポロジは、末端ノードにおける終端抵抗から様々な距離をおいて配置された複数のノードを具えることができる。終端抵抗器から最も遠いノードは、そうしたノードの１つが送信する際に反射を生じさせることがあり、このことがバス上にリンギングを生じさせ得る。このことは、バスが適正に動作することができる最大データレートを低下させ得る。
【０００５】
従来は、バスケーブルの長さのような他の要因が、データレートを、リンギングが問題となる速度を下回る速度に制限していた。しかし、ＣＡＮバス・プロトコル、例えばＣＡＮバス・フレキシブル・データレート（ＣＡＮＦＤ：CAN bus flexible data rate）における進歩により、可能なデータレートは、リンギングが影響力を持ちだす点まで増加してきた。
【０００６】
従って、こうした終端抵抗、及び／または、リンギングまたは反射がバス上に存在することに応えることが関心事となる。
【０００７】
米国特許第８５９３２０２号明細書（特許文献１）は、ＣＡＮバス自体の上の信号を監視することによってリンギングを抑制する方法を提供する。バス上の状態変化が検出されると、スイッチが固定期間だけ閉じられて、バス上のインピーダンスの低下をもたらす。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】米国特許第８５９３２０２号明細書
【発明の概要】
【課題を解決するための手段】
【０００９】
第１の態様によれば、スイッチを介してバスに結合された終端抵抗器と；制御回路とを備えた回路が提供され、この制御回路は、バス・トランシーバのデータ入力ピンに結合された入力端子と、上記終端抵抗器を制御するように結合された出力端子とを具え、上記回路は、入力ビットストリーム上の遷移に応答して上記抵抗器を上記バスに選択的に結合するように構成されている。
【００１０】
上記制御回路は、上記データ入力ピン上の遷移を検出するように構成されたエッジ検出器を具えることができる。上記入力端子は、このエッジ検出器の検出入力端子とすることができる。上記制御回路は、このエッジ検出器が１回目の遷移を検出したことに応答して上記スイッチを閉じるように構成されたスイッチ・コントローラをさらに具えることができる。このスイッチ・コントローラは、さらに、上記エッジ検出器が２回目の遷移を検出したことに応答して上記スイッチを開くように構成することができる。上記１回目の遷移はドミナント（優性）からリセッシブ（劣性）への遷移とすることができ、上記２回目の遷移はリセッシブからドミナントへの遷移とすることができる。
【００１１】
上記スイッチ・コントローラは、上記スイッチを設定期間だけ閉じるように構成することができる。この設定期間は、バスの動作のデータ・フェーズ（データ伝送段階）中に、入力ビットストリームのビット時間（１ビット当たりの時間）よりも短くすることができる。この設定期間は、動作のデータ・フェーズ中に、バスのビット時間の４０％超〜１００％未満とすることができる。上記スイッチ・コントローラは、さらに、この設定期間後に上記スイッチを開くように構成することができる。上記終端抵抗器及び上記スイッチは、バスの第１ワイヤ（配線）と第２ワイヤとの間に直列に結合することができる。
【００１２】
上記データ入力ピンは、バス・コントローラとバス・トランシーバとの間に結合することができ、上記制御回路は、このバス・コントローラからこのバス・トランシーバへ供給されるデータ・ビットストリーム中の遷移を検出するように構成されている。上記エッジ検出器は、入力ビットストリーム上のドミナントからリセッシブへの遷移を検出するように構成することができる。入力ビットストリーム上のドミナントからリセッシブへの遷移は、入力ビットストリーム上の立下りエッジに相当し得る。上記回路はリンギング抑制回路とすることができる。
【００１３】
第２の態様によれば、入力ビットストリームを受信するように構成されたデータ入力ピンと；バス信号を出力するように構成された第１出力端子と；上記第１の態様による回路とを具えたバス・トランシーバが提供される。このバス・トランシーバは、入力ビットストリームを変換して上記バス信号を形成するように構成することができる。このバス・トランシーバは、コントローラ・エリア・ネットワーク（ＣＡＮ）バス・トランシーバとすることができる。
【００１４】
第３の態様によれば、コントローラ・エリア・ネットワーク（ＣＡＮ）バスを介して通信するように結合された複数のノードを具えたシステムが提供され、各ノードは上記第２の態様のバス・トランシーバを具えている。
【００１５】
ほんの一例として、実施形態を、以下の図面を参照しながら説明する。
【図面の簡単な説明】
【００１６】
【図１】複数のノードを有するＣＡＮバス・ネットワークの一例を示す概略図である。
【図２】一例によるノードの概略図である。
【図３】一実施形態によるバス・トランシーバ及び回路を示す概略図である。
【図４】一実施形態の動作の一例を示す信号線図である。
【図５】一実施形態の動作の他の例を示す信号線図である。
【発明を実施するための形態】
【００１７】
なお、２つ以上の図面にわたる特徴については、同様の参照番号は同様の特徴を示す。
【００１８】
図１に、ＣＡＮバスを介して互いに結合された複数のノードを具えたネットワーク１００の一例を示す。
【００１９】
ネットワーク１００は、第１ノード１０１、第２ノード１０２、第３ノード１０３、第ｎノード１０４、及び第(ｎ＋１)ノード１０５を具えている。これらのノード１０１〜１０５は、ＣＡＮバス１１０による通信用に互いに結合されている。ＣＡＮバス１１０は、ＣＡＮＨワイヤ１１１及びＣＡＮＬワイヤ１１２を具えた２線バスである。この場合、ワイヤ１１１及び１１２は公称の線路インピーダンスを有するツイストペア（より対線）を形成する。ノード１０１〜１０５の各々は、ＣＡＮＨワイヤ１１１及びＣＡＮＬワイヤ１１２に結合されている。
【００２０】
この例では、公称の線路インピーダンスは１２０Ωであり、自動車用途のＣＡＮバスの一部に特有の値である。しかし、実施形態は他の線路インピーダンスにも適用可能であることは明らかである。また、線路の正確なインピーダンスは、ケーブル及び／または絶縁材料のような物理的要因に影響され得ることも明らかである。線路インピーダンスは１２０Ωであるものと仮定するが、実際の線路インピーダンスはこの値の前後に変化し得るので、約１２０Ωであると考えることができる。同様に、終端抵抗器は、現実世界の実現に起因して、それらの正確な抵抗値が変動し得る。
【００２１】
第１ノード１０１は、バス１１０の第１の末端ノードであり、１２０Ωの終端抵抗１３１を有する。１２０Ωは、この例のケーブル・インピーダンスによることは明らかである。第２ノード１０２は、第２の末端ノードであり１２０Ωの終端抵抗１３２を有する。第３、第ｎ、及び第(ｎ＋１)ノードは中間ノードであり、スタブ１４０、１４１及び１４２を介してＣＡＮバス１１０に結合されている。こうした中間ノードは未終端とすることができ、あるいは随意的に、一部のシステムではキロオーム範囲の高抵抗終端部を付加することができる。一部の例では、高抵抗終端部が、ケーブルのこうした準開放端における限定的なリンギング抑制をもたらすことができるが、その有効性は、公称のケーブル・インピーダンスからの偏差に起因して非常に限定される。
【００２２】
これらのノードの各々は、センサまたはマイクロコントローラのような追加的な回路に結合することができ、こうした追加的な回路は、ＣＡＮバス１１０を用いて１つ以上の他のノードと通信するように構成することができる。
【００２３】
図２に、ノード２０１、例えばノード１０１〜１０５の１つを、より詳細に示す。
【００２４】
ノード２０１は、ＣＡＮＨワイヤ１１１に結合されたスタブ２４１及びＣＡＮＬワイヤ１１２に結合されたスタブ２４２によりＣＡＮバス１１０に結合されている。スタブ２４１、２４２は、ノード２０１のＣＡＮバス・トランシーバ２１０に結合されている。例えば末端ノードのようにスタブを必要としない場合、ＣＡＮバス・トランシーバがワイヤ１１１及び１１２に直接結合されることは明らかである。
【００２５】
ＣＡＮバス・トランシーバ２１０は、送信データ接続部（ＴＸＤ）２５１及び受信データ接続部（ＲＸＤ）２５２を介してＣＡＮコントローラ２２０に結合されている。
【００２６】
ＣＡＮコントローラ２２０は、ノード２０１のマイクロコントローラ２３０の一部分を形成することができる。
【００２７】
マイクロコントローラ２３０は、バス上で送信されるメッセージを決定し、これらのメッセージをＣＡＮコントローラ２２０に提供することができる。このマイクロコントローラは、バスからのメッセージをＣＡＮコントローラ２２０から受信して、これらのメッセージを解釈することができる。マイクロコントローラ２３０は、センサまたはアクチュエータのような他の構成要素にさらに接続されて、これらの構成要素とバスとの間のインタフェースを提供する。
【００２８】
ＣＡＮコントローラ２２０は、バスからのビット列を（バス・トランシーバ２１０を介して）受信して、このビット列を、マイクロコントローラによって解釈されるメッセージの形に再構成する。ＣＡＮコントローラは、マイクロコントローラ２３０からメッセージを受信して、このメッセージをシリアルビット列として、ＣＡＮトランシーバ２１０を介してバスへ提供する。
【００２９】
ＣＡＮトランシーバ２１０は、ＣＡＮコントローラ２２０からの、ＴＸＤピン２５１上のデジタルデータビット列をアナログ・バス信号に変換することができる。ＣＡＮトランシーバ２１０は、さらに、アナログ・バス信号を、ＲＸＤピン２５２を介してＣＡＮコントローラ２２０に提供されるデジタルビットに変換することができる。
【００３０】
ネットワーク１００の実現は、リンギングを低減し高いデータレートで信号伝達されるデータのインテグリティを保護するために、特定パラメータによって支配され得る。例えば、ＣＡＮバス１１０は、最大データレートを達成することができる最大長を有することができる。他の例では、中間ノード１０１〜１０５をＣＡＮバス１１０に接続するスタブ１４０、１４１及び１４２をできる限り短く保って、反射を低減することができる。１つの場合には、ＣＡＮバスの最大長を４０mに、スタブの最大長を０．３m未満に制限することができるが、これは一例であることは明らかである。
【００３１】
こうした要件にもかかわらず、バス及びスタブの長さは他の要因に影響され得る。例えば、自動車用途では、ＣＡＮバス・ネットワークの実現は、車両の形状及びサイズ、及びノードの位置によって支配され得る。所望通りに短いスタブを有することは、必ずしも可能でないことがある。さらに、スタブが実用的である限りにおいて短い場合でも、高いデータレートではリンギングがまだ発生し得る。
【００３２】
未終端のスタブ線路におけるリンギングは、バス上の通信に誤りを生じさせ得る。データレートがより高い新たなプロトコル、例えばＣＡＮ ＦＤでは、このことが一層問題になる。リンギングの問題に応える１つの方法は、終端を改善するようにネットワーク・トポロジを設計することであるが、このことは時間を要し、かつ費用がかかる。
【００３３】
本願の実施形態は、既存のネットワーク・トポロジ上で実現することができる、リンギングを抑制する方法を提供する。さらに、実施形態は、こうした抑制が実現される速度を考慮に入れることができ、リンギング抑制回路内に発生するグリッチの可能性を軽減することができる。
【００３４】
図３に、一実施形態によるリンギング抑制回路３００を示す。図３の回路は、ＣＡＮトランシーバの一部分として実現することができ、ＣＡＮトランシーバ２１０はこの図に示されている。
【００３５】
図３のＣＡＮトランシーバ２１０は、送信データ入力ピン（ＴＸＤ）２５１及び受信データ出力ピン（ＲＸＤ）２５２に結合されている。一部の例では、ＴＸＤ２５１及びＲＸＤ２５２を、ＣＡＮコントローラ、例えばＣＡＮコントローラ２２０への接続部とすることができることは明らかである。ＴＸＤ２５１は、バス上で送信されるデータを受信するように接続することができ、ＲＸＤ２５２は、バス上で受信したデータを供給するように接続することができる。
【００３６】
ＣＡＮトランシーバ２１０は、ＣＡＮバス１１０の第１のＣＡＮＨワイヤ１１１及びＣＡＮバス１１０の第２のＣＡＮＬワイヤ１１２にさらに結合されている。ＣＡＮトランシーバ２１０は送信増幅器３１１を具えることができ、送信増幅器３１１は、ＴＸＤ２５１に結合された入力端子、及びＣＡＮＨ１１１及びＣＡＮＬ１１２に結合された差動出力端子を有する。ＣＡＮトランシーバ２１０は、受信コンパレータ（比較器）３１２をさらに具え、受信コンパレータ３１２は、ＲＸＤ２５２に結合された出力端子、及びＣＡＮＨ１１１及びＣＡＮＬ１１２に結合された差動入力端子を有する。
【００３７】
図３は、さらに、ＴＸＤ２５１、及びＣＡＮＨ１１１及びＣＡＮＬ１１２に結合されたリンギング抑制回路３００を示す。回路３００は、エッジ検出器３０１、スイッチ・コントローラ３０２、スイッチ３０３、及び終端抵抗（ＲT）３０４を具えている。エッジ検出器３０１の入力端子はＴＸＤ２５１に結合され、エッジ検出器３０１の出力端子はスイッチ・コントローラ３０２の入力端子に結合されている。スイッチ・コントローラ３０２の出力端子はスイッチ３０３の制御入力端子に結合されている。スイッチ３０３は、当該スイッチを閉じた際に、終端抵抗３０４をＣＡＮＨ１１１とＣＡＮＬ１１２との間に結合するように構成されている。この例では、スイッチ３０３の第１端子がＣＡＮＬ１１２に結合され、スイッチ３０３の第２端子がＲT３０４の第１端子に結合されている。ＲT３０４の第２端子はＣＡＮＨ１１１に結合されている。
【００３８】
回路３００は、ＴＸＤ２５１上の（信号の）エッジを検出し、それに応答してスイッチ３０３を閉じるように構成されている。このスイッチは、未終端のノードに生じ得るあらゆる反射を低減する目的で、設定期間だけ閉じて、ＣＡＮバス１１０のインピーダンスをこの設定期間だけ低下させる。スイッチを閉じる期間は、遷移を検出した時点でのデータレート、あるいはＣＡＮバス上でデータが伝送される速度に関係することができる。スイッチを閉じるべき期間は、バス上の異なるデータレートと共に変化することができる。特に、データレートはバスの動作モードと共に変化することができる。例えば、アービトレーション（調停）モード中には、データレートをより低速にしてアービトレーションを可能にすることができる。この場合、スイッチを閉じる期間は、バスがその最高データレートまたはそれに近いデータレートで動作している際にスイッチを閉じる期間と異ならせることができる。
【００３９】
動作中には、エッジ検出器３０１がＴＸＤ２５１上のエッジを検出して、エッジを検出した指示をスイッチ・コントローラ３０２に与える。スイッチ・コントローラ３０２は、この指示に応答してスイッチ３０３を閉じることができる。スイッチ・コントローラ３０２は、スイッチ３０３を設定期間だけ閉じることができ、その後に、スイッチ・コントローラ３０２はスイッチ３０３を開く。スイッチ３０３が閉じると、ＣＡＮトランシーバの出力としてのＣＡＮＨ１１１とＣＡＮＬ１１２との間にＲT３０４が接続される。これにより、ＣＡＮバスのインピーダンスが低減される期間を提供することができる。
【００４０】
回路２００がエッジの検出に応答してスイッチ３０３を閉じることを説明してきた。一部の例では、このエッジは、ノード２０１によってアサートされたドミナント状態からリセッシブ状態への遷移である。ノード２０１は、送信していない（あるいは送信しようとしていない）際にリセッシブ状態をアサートするものと考えることができる。換言すれば、このノードは、ＣＡＮバス１１０の状態に対する制御権を有する際にドミナント状態をアサートする。
【００４１】
ノード２０１がドミナント状態をアサートしている際に、ＣＡＮバス１１０上のインピーダンスは、ＣＡＮバス１１０を駆動する送信機出力段によって、５Vの給電レール電圧に対して低抵抗（〜１０Ω）に定められる。ネットワーク内のリンギングは、リセッシブからドミナントへの遷移時に送信機によって抑制される。
【００４２】
ドミナント状態からリセッシブ状態への遷移では、リセッシブ状態におけるバス上のインピーダンスは、ネットワーク内の終端抵抗器によって決まる。末端ノードにある終端抵抗器が約１２０Ωである場合、これらの終端抵抗器が並列になって、約６０Ωのインピーダンスを提供する（例えば、ISO 11898-2は４５〜７０Ωの目標範囲を規定している）。
【００４３】
この場合、エッジ検出器は、ドミナント状態からリセッシブ状態への遷移を検出し、この検出に応答してスイッチを閉じるように構成することができる。
【００４４】
図４に、回路３００がドミナント状態からリセッシブ状態への遷移を検出するように構成されている際の、回路３００の動作を示す信号線図を示す。
【００４５】
図４は、接続部２５１においてＣＡＮコントローラからＣＡＮトランシーバへ供給されるビット列の信号４００を示す。この例では、１ビットを送信するのに要する時間ｔBITが５００nsであるが、これは一例に過ぎないことは明らかである。ビットを送信するのに要する時間ｔBITがＣＡＮバスのデータレートに相当することは明らかである。この場合、データレートは、５００nsのｔBITのビットレートに相当するが、データレートはＣＡＮバスの動作と共に変化することができる。例えば、動作モードの変化に起因してデータレートが変化する際に、スイッチを閉じる期間がそれに応じて変化することは明らかである。
【００４６】
スイッチ制御信号４１０も示し、ここでは信号がローである際にスイッチ３０３はオフまたは開いた状態であり、信号がハイである際にスイッチ３０３はオンまたは閉じた状態である。ＣＡＮバス上の信号４２０も示す。ＣＡＮバス信号４２０がハイである際には、ドミナント状態がバス上にアサートされ、ＣＡＮバス信号がローである際には、リセッシブ状態がバス上にアサートされる。信号４３０は、ＣＡＮバス・トランシーバがバス上で受信してＲＸＤ２５２越しにＣＡＮコントローラに供給するビット列を示す。
【００４７】
動作中には、ＣＡＮバス・コントローラ２２０が、バス上で送信するためのシリアル・ビットストリーム４００をＣＡＮトランシーバ２１０に供給する。エッジ検出器３０１は、このビットストリーム上のエッジを監視する。時刻４４１に、ＴＸＤ上の信号４００がローからハイへ遷移し、この遷移がドミナントからリセッシブへの遷移をＣＡＮバス信号４２０上に生じさせる。ＴＸＤ４００のローからハイへの遷移は、ＣＡＮバス上の変化を直ちに生じさせないことは明らかである、というのは、信号４００がＣＡＮトランシーバ２１０によって受信されてＣＡＮバス２１０用のバスレベルに変換される際に遅延が存在するからである。
【００４８】
エッジ検出器３０１は、エッジが検出されたことをスイッチ・コントローラ３０２に指示し、スイッチ・コントローラ３０２からスイッチへの信号４１０がハイになる。スイッチ・コントローラ３０２は、信号４１０を固定期間だけハイに保つように構成することができる。スイッチ・コントローラ３０２からの信号４１０に応答して、スイッチ３０３が閉じて終端抵抗器ＲT３０４をＣＡＮバス１１０に接続する。ＲT３０４が接続されている間に、ネットワークからのリンギング・エネルギーを抑制することができる。
【００４９】
上記の期間後に、スイッチ・コントローラの信号４０２は時刻４４２に再びローになり、スイッチが開いてＲTを切り離す。この例では、スイッチが閉じている期間（ｔSWITCH）は、リンギングを抑制するのに十分なほど大きくするべきであり、かつビット時間（ｔBIT）よりも短くするべきである。この時間の値はＣＡＮバスのデータレートに依存することは明らかである。例えば、２Mbit/sでの通信用には、ｔBITの値の例を５００nsとすることができ、ＲT＝１２０オームではｔSWITCHを４００nsとすることができる。タイミング・パラメータｔSWITCHは、例えばｔBIT未満のマージンとなるように選定することができ、この場合、マージンは１０％であり、スイッチが閉じている期間は４００nsに選定される。ＲTは、例えばケーブルの特性インピーダンスと同じに選定することができる。
【００５０】
以上では、ハイ及びローになる信号に動作が関連していることは明らかである。ハイ及びローの選定がドミナント／リセッシブの遷移に対応し、異なるバスシステムに対して異なることは明らかである。例えば、一部の場合には、ハイである中で（一時的に）ローになる信号４１０があり、この変化がドミナントからリセッシブへの遷移に対応する場合に、それに応答してスイッチを閉じることができる。
【００５１】
以上では、エッジ検出器を、ＣＡＮコントローラからＣＡＮトランシーバへ供給される信号のエッジを検出するものとして説明している。ＣＡＮバス自体のドミナントからリセッシブへの遷移を検出するためにＣＡＮバス上に設けられるリンギング抑制回路の実現が存在し得る。
【００５２】
ＴＸＤ２５１上のエッジを検出することは、回路３００が反応するための追加的な時間をもたらす。ＴＸＤ２５１上のエッジは、ＣＡＮバス１１０上に出力される前に、まずＣＡＮトランシーバ２１０によって処理される。本発明の実施形態では、エッジがＣＡＮバス１１０上に存在する前にエッジを検出することができる。エッジをＣＡＮバス上で検出するとすれば、エッジ検出器及びスイッチに対するタイミングの制約はずっと厳格になる。
【００５３】
ＣＡＮバス自体の上で遷移が検出された場合、ＣＡＮバスの線路１１１及び１１２上の外乱がリンギングとして解釈されることがあり、意図せずに抑制回路をトリガすることがあり、これにより、こうした外乱が発生する任意のランダムな時点でＣＡＮバス信号を意図せずに誤らせることがある、という状況が生じ得る。
【００５４】
本願の例では、リンギング抑制回路が、ＣＡＮバス自体の上で検出された遷移ではなく、ＣＡＮバス・トランシーバへの送信データ入力ピン２５１上のドミナントからリセッシブへの遷移に応答する。システムの各ノードは、それに結合されたリンギング抑制回路を有することができる。この場合、各ノードのリンギング抑制回路は、バス自体の上の信号遷移とは裏腹に、異なる信号に反応することができる。特に、この問題は、２つ以上のノード（またはバス・トランシーバ）がバス上で同時に作動状態であるシナリオにおいて生じ得る。
【００５５】
第１の場合には、２つ以上のノード（またはバス・トランシーバ）がバス上で作動状態であり得るが、同じデータを送信している。これら２つ以上のノードがドミナントからリセッシブへの遷移を送信した後に、これら２つ以上のノードのリンギング抑制回路はそれぞれのスイッチを閉じる。この場合、その効果は１つのノードしか作動状態でない場合と同様であり得る。
【００５６】
第２の場合には、２つ以上のノードがバス上で作動状態であり得るが、異なるデータを送信し得る。このシナリオでは、第１数のノードがリセッシブ状態に対応するビットを送信し、第２数のノードがドミナント状態に対応するビットを送信する。リセッシブ・ビットを送信しているノードのリンギング抑制回路は、それぞれのスイッチを期間（ｔSWITCH）だけ閉じる。この期間（ｔSWITCH）中にこれらのスイッチを閉じていることは、バスの電圧を不定に至らせ得る、というのは、それぞれのスイッチを閉じることがバスのインピーダンスを最小インピーダンス（例えば５０Ω）未満に低下させ得るからである。
【００５７】
本願の発明者は、２つ以上のノード（バス送信機）がバス上で同時に作動状態であり得るシナリオ、特に２つ以上のノードが異なるものを送信している間にバス上で作動状態であるシナリオを調査した。
【００５８】
これら３つのシナリオでは、バス上のデータレートがアービトレーション・フェーズ（調停段階）のアービトレーション速度に相当し、この速度はバスのデータ・フェーズのデータレートよりも低速である。図５に、これらのシナリオの１つ以上による、バス上で作動状態である複数のバス送信機の例を示す。
【００５９】
図５は、第１及び第２バス・トランシーバ、及び関連するリンギング抑制回路の信号状態を示す信号線図である。図５は、第１及び第２バス・トランシーバが共に作動状態であり、同じデータを送信している第１シナリオ５８１を示す。図５は、第１及び第２トランシーバが共に作動状態であり、異なるデータを送信しているシナリオ５８２も示す。
【００６０】
第１トランシーバ及び関連するリンギング抑制回路については、送信データピン信号（ＴＸＤ１）５１０及び受信データピン信号（ＲＸＤ１）５４０を示す。これらの信号は、第１バス・トランシーバ２１０の送信データ入力ピン２５１及び受信データ出力ピン２５２上に存在する信号とすることができることは明らかである。第１バス・トランシーバ２１０に関連するリンギング抑制回路３００のスイッチ制御信号（ＳＷＩＴＣＨ１）５２０も示し、ローの値はスイッチがオフまたは開いた状態に相当し、ハイの値はスイッチが閉じまたはオンの状態に相当する。
【００６１】
第２トランシーバ及び関連するリンギング抑制回路については、送信データピン信号（ＴＸＤ２）５５０及び受信データピン信号（ＲＸＤ２）５７０を示す。これらの信号は、第２バス・トランシーバ２１０の送信データ入力ピン２５１及び受信データ出力ピン２５２上に存在する信号とすることができることは明らかである。第１バス・トランシーバ２１０に関連するリンギング抑制回路３００のスイッチ制御信号（ＳＷＩＴＣＨ２）５６０も示し、ローの値はスイッチがオフまたは開いた状態に相当し、ハイの値はスイッチが閉じまたはオンの状態に相当する。
【００６２】
信号（ＣＡＮ ＢＵＳ）５３０も示す。この信号はＣＡＮバス自体の上の信号である。
【００６３】
図５より、第１期間５８１中には、ＴＸＤ１ ５１０とＴＸＤ２が同じデータを伝送していることがわかる。この場合、第１及び第２バス・トランシーバは共に作動状態であり、同じデータをバス上に送信している（あるいは、送信しようとしている）。時刻５８３には、第１バス・トランシーバの信号ＴＤＸ１ ５１０及び第２バス・トランシーバの信号ＴＤＸ２ ５５０が共にローからハイへ遷移して、ドミナントからリセッシブへのエッジをもたらす。それぞれのバス・トランシーバは、ＴＸＤ１及びＴＸＤ２をＣＡＮバス上への出力用に変換する。第１バス・トランシーバのリンギング抑制回路はＴＸＤ１ ５１０上の遷移を検出し、第２バス・トランシーバのリンギング抑制回路はＴＸＤ２ ５５０上の遷移を検出する。従って、上記エッジの検出に応答して、第１及び第２リンギング抑制回路のそれぞれのスイッチ制御信号ＳＷＩＴＣＨ１ ５２０及びＳＷＩＴＣＨ２ ５６０はハイになる。ＣＡＮバス５３０は、時刻５８３にドミナントからリセッシブへの遷移を開始する。
【００６４】
なお、図５の例のビットレートは、アービトレーション・ビットレートとして与えられる。このことは、２つ以上のバス送信機が同時に作動状態であるシナリオが発生し、これらのシナリオのすべてが、（より高速な）データ・ビットレートではなくアービトレーション・ビットレートに相当するからである。発明者は、２つ以上のバス送信機を同時に作動状態にすることができる３つのシナリオを識別した。
【００６５】
ＣＡＮ／ＣＡＮＦＤプロトコルには３つのシナリオが存在し、これらのシナリオでは、２つ以上の送信機がＣＡＮバス上で同時に作動状態になり得る。
【００６６】
１）送信することを許可されているノードを特定するために、各ＣＡＮフレームの始点で発生し得るアービトレーション・フェーズ中。この例では、実際のアービトレーション速度は５００kbit/sであり、ｔBIT＝２μsを生じさせる。
【００６７】
２）エラーフレーム期間中。あらゆる瞬時に、ノードが通信に割り込んで、エラーを検出したことを信号通知する。この例では、割込みをするノードが６つのドミナント・ビットをアービトレーション速度（例えば、ｔBIT＝２μsでの５００kbit/s）で送信する。
【００６８】
３）アクノレッジ（確認応答）ビット期間中。出来上がったメッセージを送信中のノード以外のすべてのノードが、ドミナントＡＣＫ（アクノレッジ）ビットをバスに送信して、送信されたＣＡＮフレームの適切なフォーマットを信号通知することができる。このことはアービトレーション速度（ｔBIT＝２μsでの５００kbit/s）で行われる。
【００６９】
この例では、アービトレーション・ビットレートが５００kbit/sとして与えられ、ビット時間ｔBIT５９０は２μsである。これは一例に過ぎず、アービトレーション・レートの値は変化させることができる。しかし、アービトレーション・ビットレートは常にデータ・フェーズ・ビットレートよりも低速であることは明らかである。
【００７０】
この例では、スイッチ３０３をある期間だけ閉じることができる。この期間は、ＣＡＮバスのデータ・フェーズのビット時間ｔBITとの関連で規定される。この例では、データ・フェーズのｔBITは（２Mbit/sの最大のデータ・フェーズ・ビットレートに相当する）５００nsとすることができる。スイッチが閉じている時間は、インピーダンスに影響を与えてリンギングを抑制するのに十分なほど長いが、データ・フェーズのビット時間未満である。一例では、スイッチが閉じている設定期間をｔBITの９０％とすることができる。この場合４００nsである。
【００７１】
再び図５を参照すれば、スイッチ制御信号ＳＷＩＴＣＨ１ ５２０及びＳＷＩＴＣＨ２ ５６０が、それぞれのスイッチを設定期間だけ閉じる。この設定期間はデータ・フェーズのｔBIT未満であり、従ってアービトレーション・フェーズでは、この設定期間はアービトレーション・フェーズのｔBITの関数である。実際の例では、アービトレーション・フェーズのｔBITが２μsであり、データ・フェーズのｔBITが５００nsであり、従って、これらのスイッチはアービトレーション・フェーズのｔBITの４分の１未満だけ閉じる。
【００７２】
時刻５８３には、ＣＡＮバスがドミナント状態からリセッシブ状態へ遷移することができる。複数のスイッチが閉じることに起因してバス上の電圧が不定になる場合でも、この電圧が不定である期間は、アービトレーション・フェーズのｔBITに比べて小さい。
【００７３】
期間５８２は、第１及び第２バス・トランシーバが異なるデータをＣＡＮバスに送信しようとしている場合を示す。時刻５８４には、第１バス・トランシーバが、そのＴＸＤピン（ＴＸＤ１）５１０上のローからハイへの遷移を受信し、第２バス・トランシーバがそのＴＸＤピン（ＴＸＤ２）５５０上のロー状態を受信する。アービトレーション中には、第２バス・トランシーバがバスの制御権を得て、ＴＸＤ２上の信号はバスレベルに変換されてＣＡＮバス５３０に出力される。
【００７４】
第１バス・トランシーバのリンギング抑制回路は、ＴＸＤ１ ５１０上の遷移を検出し、信号ＳＷＩＴＣＨ１を供給してそのスイッチを閉じる。ＳＷＩＴＣＨ１に応答してスイッチを閉じることにより、エッジＴＸＤ１ ５１０がバス上に出力されていなくても、ＣＡＮバスが終端抵抗に結合される。このことは、スイッチが閉じている期間中に、不定の電圧５８５をＣＡＮバス５３０上にもたらし得る。
【００７５】
第１及び第２トランシーバは、バス上の信号を検出して、これらの信号を、ＲＸＤ１ ５４０及びＲＸＤ２ ５７０を介して、それぞれのＣＡＮコントローラに供給する。ＲＸＤ１ ５４０及びＲＸＤ２ ５７０は、不定の電圧５８５が、それぞれのＣＡＮコントローラに供給されていることを示す。スイッチが閉じている設定期間は、アービトレーション・ビット時間に比べて小さく、従って、電圧が不定である期間はｔBITに比べて小さい。ＣＡＮコントローラは入力されるＲＸＤをサンプリングすることができ、このことは一般にビットの始点そのものでは行われず、むしろ中間と終点との間に行われる。ＣＡＮコントローラによる信号ＲＸＤ１ ５４０及びＲＸＤ２ ５７０のサンプリング点を５８６で示す。一部の例では、サンプリング時刻をビット時間ｔBITの５０％〜８０％の時点にすることができる。信号ＲＸＤ１及びＲＸＤ２は、いずれかのスイッチが再び開いてバス上の電圧がもはや不定ではなくなった後にサンプリングされることがわかる。
【００７６】
以上では、ＣＡＮバス上のアービトレーション・フェーズ及びデータ・フェーズを参照してきた。ＣＡＮバスのアクセス・メカニズムはビット単位のアービトレーションであり、この時間中にはバスのビットレートが低減される。アービトレーション・ビットレートは、例えばエラー検出で用いることもできる。ＣＡＮバスのデータレートは、アービトレーション・ビットレートよりもずっと高速である。例えば、一部のシステムでは、アービトレーション・ビットレートは５００bit/sの付近にすることができるのに対し、データ・ビットレートは２Mbit/sよりも高くすることができる。異なる実現では、データ及びアービトレーション・ビットレートが異なり得るが、アービトレーション・ビットレートは必然的にデータ・ビットレートの分数であることは明らかである。
【００７７】
以上では、スイッチが閉じている設定期間を説明した。一部の例では、この設定期間が、データ・フェーズのデータレートのビット時間ｔBITより小さいマージンに相当することができる。設定期間がデータ・フェーズのビット時間ｔBITのおよそ９０％である例を挙げてきたが、一部の場合には、設定期間がデータ・フェーズのビット時間の４０％超かつ１００％未満に相当することができることは明らかである。ＣＡＮバスが動作するビット時間及びデータレートは、ＣＡＮバスの動作の種類により変化し得ることは明らかである。以上の図５では、ＣＡＮバスがアービトレーション・データレートで動作する例を挙げている。設定期間をデータ・フェーズのビット時間の９０％に設定する例では、設定期間がアービトレーション・フェーズ中のビット時間の２５％未満であることは明らかである。
【００７８】
しかし、ＣＡＮバスのデータレートが増加して、設定期間がビット時間の１００％を超えてしまう状況が発生し得る。あるいはまた、２回目の遷移が発生する際にもスイッチが閉じたままであるほど設定期間が長くなることがある。例えば、２Mbit/s（ｔBIT＝５００ns）なるデータ・フェーズのデータレート用に規定された装置は、ｔSWITCH＝４００nsなるスイッチ用の設定期間を有することができる。この装置を、ｔBIT＜４００nsなるより高速なデータレート用に用いる場合には、スイッチはビット時間の終点で閉じたままであり、２回目の遷移が発生する際に閉じている。このことはスイッチと送信機との間に短絡電流を生じさせる。
【００７９】
実施形態では、リンギング抑制回路が１回目の遷移を検出し、それに応答してスイッチを閉じることができる。他の実施形態では、リンギング抑制回路はさらに、１回目の遷移後の２回目または次回の遷移を検出し、それに応答してスイッチを開くことができる。特定例では、リンギング抑制回路が、バス・トランシーバのＴＸＤピン上のドミナントからリセッシブへの遷移を検出し、それに応答してスイッチを閉じることができる。リンギング抑制回路はＴＸＤピンを監視し続け、ピン上の後続するリセッシブからドミナントへの遷移を検出することができる。リンギング抑制回路は、この検出に応答してスイッチを開くことができる。
【００８０】
以上では、ＣＡＮバスを参照した例を説明してきた。しかし、リンギングが問題となり得る他の差動または２線バスにも適用可能であることは明らかである。以上は、ＴＸＤピン上のドミナントからリセッシブへの遷移をハイからローへの遷移として説明してきたが、このことは設計事項であり、他の一部のシステムでは逆にすることができることも明らかである。一例では、実施形態はＣＡＮ ＦＤにより動作することができ、ここではデータ・フェーズのビット時間がＣＡＮ ＦＤフレームのビット時間に相当する。
【図１】
0006438982.tif 000002
【図２】
0006438982.tif 000003
【図３】
0006438982.tif 000004
【図４】
0006438982.tif 000005
【図５】
0006438982.tif 000006