(57)【特許請求の範囲】
【請求項１】
ＣＡＮ  ＦＤフレームにおいてＥＤＬ／ＥＤＦビットが見つかることが期待されるであろう位置におけるビットを検査することにより、ＥＤＬ／ＥＤＦビットを識別し、かつ、前記ビットがリセッシブかどうかを判断することによって、ＲＸＤの上のフレームがＣＡＮ  ＦＤフレーム（１４）であるかどうかを識別し、前記フレームがＣＡＮ  ＦＤフレームであると識別することによって、前記ＥＤＬ／ＥＤＦビットで始まり、かつ前記ＣＡＮ  ＦＤフレームのデータ位相を含む、前記ＣＡＮ  ＦＤフレームのセクション（１７）を、ＣＡＮ２．０Ｂに準拠するフォーマットを有する代替データ（２１）で置換えるよう構成される装置（１５）。
【請求項２】
前記セクション（１７）はＣＲＣデリミタで終了する、請求項１に記載の装置（１５）。
【請求項３】
前記セクション（１７）に続くデータを、ＣＡＮ２．０Ｂに準拠するフォーマットを有するさらなる代替データ（２１）で置換えるように構成される、請求項１または請求項２に記載の装置（１５）。
【請求項４】
前記代替データ（２１）はＤＬＣを含む、請求項１から請求項３のいずれか１項に記載の装置（１５）。
【請求項５】
前記装置は前記代替データ（２１）の後にさらなるデータ（２４、２５）を付加するように構成される、請求項１から請求項４のいずれか１項に記載の装置（１５）。
【請求項６】
第１のモードにおいて、前記さらなるデータ（２４、２５）はエラーフレームおよびエラーデリミタを含む、請求項５に記載の装置（１５）。
【請求項７】
前記装置は前記ＣＡＮ  ＦＤフレームの終わりの所与数前の点のビットを識別し、前記ＣＡＮ  ＦＤフレームが終了すると前記エラーデリミタが終了するように前記エラーフレームおよび前記エラーデリミタを付加するように構成される、請求項６に記載の装置（１５）。
【請求項８】
第２のモードにおいて、前記さらなるデータ（２４、２５）は少なくともオーバロードフレームおよび対応するオーバロードデリミタを含む、請求項１から請求項７のいずれか１項に記載の装置（１５）。
【請求項９】
前記フレームはベースフォーマットを有するかまたは拡張フォーマットを有するかを識別するよう構成される、請求項１から請求項８のいずれか１項に記載の装置（１５）。
【請求項１０】
ローカルＣＡＮコントローラからＣＡＮフレームを受信することに応答して、前記代替データ（２１）が生成されているかどうかによって、前記ＣＡＮフレームの送信を抑制するよう構成される、請求項１から請求項９のいずれか１項に記載の装置（１５）。
【請求項１１】
ＣＡＮ送受信機（１０）であって、
請求項１から請求項１０のいずれか１項に記載の装置（１５）と；
ＣＡＮバス物理層装置回路系（ＰＨＹ）とを備え、
前記装置は、前記ＣＡＮバス物理層装置回路系からＲＸＤを受信し、前記ＣＡＮバス物理層装置回路系にＴＸＤを与えるよう配される、ＣＡＮ送受信機（１０）。
【請求項１２】
ＣＡＮ２．０Ｂコントローラ（６）と；
前記ＣＡＮ２．０Ｂコントローラ（６）に結合される、請求項１１に記載のＣＡＮ送受信機（１０）とを備える、ノード（４）。
【請求項１３】
ＣＡＮ  ＦＤフレームにおいてＥＤＬ／ＥＤＦビットが見つかることが期待されるであろう位置におけるビットを検査することにより、ＥＤＬ／ＥＤＦビットを識別し、かつ、前記ビットがリセッシブかどうかを判断することによって、ＲＸＤの上のフレームがＣＡＮ  ＦＤフレーム（１４）であるかどうかを識別することと；
前記フレームがＣＡＮ  ＦＤフレームであると識別することによって、前記ＥＤＬ／ＥＤＦビットで始まり、かつ前記ＣＡＮ  ＦＤフレームのデータ位相を含む、前記ＣＡＮ  ＦＤフレームのセクション（１７）を、ＣＡＮ２．０Ｂに準拠するフォーマットを有する代替データ（２１）で置換えることとを含む、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の分野
本発明は、コントローラエリアネットワークフレキシブルデータレート（ＣＡＮ  ＦＤ）に関する。
【背景技術】
【０００２】
背景
コントローラエリアネットワーク（ＣＡＮ）は、元来は自動車用途における使用のために設計されたシリアル通信プロトコルであるが、現在では、暖房、換気および空調（ＨＶＡＣ）制御システム、プロセス制御システム、ならびに医療装置を含む、幅広いさまざまな他の分野において採用されている。ＣＡＮは、主に、物理層およびデータリンク層の要件に関し、国際規格、つまりＩＳＯ１１８９８を宣言している。
【０００３】
ＣＡＮは、メッセージに基づく、非同期の、マルチマスタの、同報通信システムである。ＣＮＡネットワークは、典型的には撚り線対によって与えられるＣＡＮバス線に接続される２つ以上のノードを含む。ＣＡＮバスに接続されるどのノードも、ＣＡＮバスが空いているときには自由に他のノードにメッセージを送信しようと試みる。各メッセージは一意の識別子を割当てられており、それを用いて、メッセージの内容を識別し、メッセージを優先順位付け、フィルタ処理する。２つ以上のノードがメッセージを同時に送信することを開始する場合には、識別子およびＣＡＮバス状態のビット単位比較、つまりそれぞれ論理「０」および「１」状態に対応する「ドミナント（優性）」および「リセッシブ（劣性）」レベルを用いることによって、バスアクセス競合を調停のプロセスを通して解決する。２つのノードがドミナントビットおよびリセッシブビットを同時に送信しようと試みる場合には、ドミナントビットは先行を取り、ドミナント値（つまり「０」）がＣＡＮバス上に現れる。ノードはＣＡＮバスを監視し、したがって、あるノードがリセッシブビットを送信しようと試み、ＣＡＮバスがドミナント値を取入れる場合には、そのノードは衝突を識別し、送信を中断することができ、ドミナントビットを送信したノードにＣＡＮバス上での送信を続けさせるままにする。
【０００４】
ＣＡＮは、２つのフレームフォーマット、つまり（ＣＡＮ２．０プロトコルのパートＡまたはＢと互換性のある）標準またはベースフレームフォーマットと、（ＣＡＮ２．０プロトコルのパートＢと互換性のある）拡張フレームフォーマットとを規定している。標準またはベースフレームフォーマットに配されるフレームは１１ビットの識別子を有し、拡張フレームフォーマットに配されるフレームは１１ビットのベース識別子と１８ビットの拡張子とからなる２部識別子を有する。
【０００５】
ＣＡＮは４つのタイプのフレーム、つまりデータを担持するためのデータフレームと、データフレームの送信を要求するためのリモートフレームと、エラーの検出を報告するためのエラーフレームと、フレーム間に遅延を与えるオーバロードフレームとを規定している。
【０００６】
ＣＡＮおよびＣＡＮフレームフォーマットのさらなる詳細は、ＣＡＮ規格、バージョン２．０（１９９１）およびＩＳＯ１１８９８−１に見出され得る。
【０００７】
ＣＡＮバスはデータを１Ｍビット／ｓまでのビットレートで送信することができ、データフレームは８バイトまでのペイロードを担持することができる。しかしながら、より高いデータレートおよびより大きなペイロードをサポートするために、新たなプロトコル、つまりフレキシブルデータレートを伴うＣＡＮ（ＣＡＮ  ＦＤ）が、フレキシブルデータレートを伴うＣＡＮ、規格、バージョン１．０（２０１２）に述べられるように提案されている。
【０００８】
図１はＣＡＮ  ＦＤデータフレームを示す。
図１を参照して、ＣＡＮ  ＦＤデータフレームは、フレーム間スペース（ＩＦＳ）によって、先行するフレーム（図示せず）から分離され、別のフレーム間スペースまたはオーバロードフレームが後に続く。
【０００９】
ＣＡＮ  ＦＤデータフレームは、フレームの開始（ＳＯＦ）フィールドと、調停フィールドと、制御フィールドと、データフィールドと、巡回冗長符号（ＣＲＣ）フィールドと、肯定応答（ＡＣＫ）フィールドと、フレームの終わり（ＥＯＦ）フィールドとを含む。
【００１０】
いわゆる「調停位相」において、ＣＡＮ  ＦＤフレームに先行するＩＦＳおよびＣＡＮ  ＦＤフレームの第１の部分が標準的なビットレート（つまりＣＡＮビットレート、たとえば５００ｋビット-1）で送信される。いわゆる「データ位相」においては、ＣＡＮ  ＦＤフレームの第２の部分が標準的なビットレートまたは高いビットレート（たとえばＣＡＮビットレートの８倍まで）のいずれかで送信され得る。別の調停位相では、ＣＡＮ  ＦＤデータフレームの第３の部分、およびＣＡＮ  ＦＤデータフレームの後に続くＩＦＳまたはオーバロードフレームが標準的なビットレートで送信される。
【００１１】
ＣＡＮ  ＦＤは、４つのフレームフォーマット、つまりＣＡＮ標準フォーマットおよびＣＡＮ拡張フォーマット（ＩＳＯ１１８９８−１に規定される標準および拡張フォーマットに対応）、ＣＡＮ  ＦＤ標準フォーマットおよびＣＡＮ  ＦＤ拡張フォーマットを規定する。
【００１２】
図２は、ＣＡＮ  ＦＤ標準（または「ベース」）フォーマットにおけるＣＡＮ  ＦＤデータフレームを示す。
【００１３】
図２を参照して、調停フィールドは、ベース識別子にリザーブビット（ｒ１）が後に続くものを含む。制御フィールドは、識別子拡張（ＩＤＥ）ビット、拡張データ長（ＥＤＬ）ビット、リザーブビット（ｒ０）、ビットレート切替（ＢＲＳ）ビット、エラー状態インジケータ（ＥＳＩ）フラグ、およびデータ長コード（ＤＬＣ）からなる。ＥＤＬビットは、フレキシブルデータフォーマット（ＦＤＦ）ビットとも称される。ＣＲＣフィールドは、ＣＲＣシーケンスおよびＣＲＣデリミタを含む。ＡＣＫフィールドはＡＣＫスロットおよびＡＣＫデリミタを含む。
【００１４】
ＣＡＮ  ＦＤ拡張フォーマットは、ベース識別子、代替リモート要求（ＳＲＳ）ビット、ＩＤＥビット、識別子拡張子、およびリザーブビット（ｒ１）からなる調停フィールドと、（ＦＤＦビットとも称され得る）ＥＤＬビット、リザーブビット（ｒ０）、ＢＲＳビット、ＥＳＩフラグおよびＤＬＣからなる制御フィールドとを含む。
【００１５】
すべてのＣＡＮ  ＦＤフレームフォーマットは、ＣＲＣシーケンスとＣＲＣデリミタとを含むＣＲＣフィールドを含む。しかしながら、ＣＲＣシーケンスの長さは、異なるフレームフォーマットに対して異なり、つまり、ＣＡＮベースおよびＣＡＮ拡張フレームフォーマットに対しては１５ビットであり、１６バイトまでを含むＣＡＮ  ＦＤフレームに対しては１７ビットであり、１６バイトを超えるものを含むＣＡＮ  ＦＤフレームに対しては２１ビットである。
【００１６】
ＢＲＳビットは、調停位相からデータ位相への遷移を印す。ＣＡＮ  ＦＤフレームにおけるＣＲＣデリミタは遷移を調停位相に信号送信して戻す。
【００１７】
ＣＡＮ  ＦＤプロトコルは（ここでは単に「ＣＡＮ２．０Ｂ」と称される）ＣＡＮプロトコルのパートＢに基づくが、それは、ＣＡＮ２．０Ｂプロトコルと限られた後方互換性を有する。ＣＡＮ  ＦＤノードは、ＩＳＯ１１８９８−１に従ってＣＡＮメッセージを送受信することができる。しかしながら、（ここでは「ＣＡＮ２．０Ｂノード」と称される）ＣＡＮ２．０Ｂプロトコルに従ってメッセージを送受信することができるＣＡＮノードは、ＣＡＮ  ＦＤメッセージを識別することができず、したがって、ＣＡＮ  ＦＤメッセージを受信すると、ＣＡＮエラーメッセージで応答することになる。
【００１８】
これは、ＣＡＮ２．０Ｂには準拠するがＣＡＮ  ＦＤには準拠しないノードと、ＣＡＮ  ＦＤに準拠するノードとの混合を含むＣＡＮシステムの実現を阻み得る。
【００１９】
１つの解決策は、部分的なネットワーク化を用いることであり、それによって、ノードを選択的にパワーダウンするか、スリープモードに置くか、またはスタンバイ状態に保持することができる。しかしながら、これは、依然として、ＣＡＮ２．０ＢノードとＣＡＮ  ＦＤノードとが直接通信することはできないことを意味する。
【発明の概要】
【課題を解決するための手段】
【００２０】
概要
この発明の第１の局面によれば、ＲＸＤの上のフレームがＣＡＮ  ＦＤフレームであるかどうかを識別し、フレームがＣＡＮ  ＦＤフレームであると識別することによって、ＣＡＮ  ＦＤフレームのデータ位相を含む、ＣＡＮ  ＦＤフレームのセクションを、ＣＡＮ２．０Ｂに準拠するフォーマットを有する代替データで置換えるよう構成される装置が提供される。
【００２１】
したがって、装置は、ＣＡＮバス物理層回路系とローカルＣＡＮコントローラとの間に置かれ、そうでなければＣＡＮコントローラにおいてエラーを生じさせるであろうＣＡＮ  ＦＤフレームのセクションを除去できる。代替データを含むＣＡＮ代替フレームは、新しいまたは出力ＲＸＤ（ＣＲＸＤ）上でＣＡＮコントローラに出力される。ＣＡＮ代替フレームは、ＣＡＮ  ＦＤフレームの始まりを含んでもよい。ＣＡＮ代替フレームはさらなるデータを含んでもよい。
【００２２】
セクションは連続的でもよい。
装置は、ＲＸＤの上のフレームがＣＡＮ  ＦＤフレームであるかどうかを識別するための第１の回路系（たとえば第１のモジュール）を含んでもよい。
【００２３】
第１の回路系は、フレームの開始を識別するように構成された第１の機能ブロックを含んでもよい。第１の機能ブロックはビットのパターンを識別することによりフレームの開始を識別するように構成されてもよい。ビットのパターンはＥＯＦ、ＩＦＳおよびＳＯＦを含んでもよい。第１の機能ブロックは、フレームの開始を識別することに応答してフレームの開始同期信号（ＳＯＦＳＹＮＣ）を出力するように構成されてもよい。
【００２４】
第１の回路系はＲＸＤにおいて調停位相においてエラーフレームおよび／またはオーバロードフレームを識別するよう構成される第２の機能ブロックを含んでもよい。第２の機能ブロックは、エラーフレームまたはオーバロードフレームの検出に応答して、第１のエラー信号（ＡＥＲＲ）を出力するよう構成されてもよい。
【００２５】
第１の回路系はＲＸＤにおいてデータ位相においてエラーフレームおよび／またはオーバロードフレームを識別するよう構成される第３の機能ブロックを含んでもよい。第３の機能ブロックは、エラーフレームまたはオーバロードフレームの検出に応答して、第２のエラー信号（ＤＥＲＲ）を出力するよう構成されてもよい。
【００２６】
第１の回路系は第４の機能ブロックを含んでもよい。
第４の機能ブロックまたは他の機能ブロックはＩＤＥビットを識別するように構成されてもよい。第４の機能ブロックは、ＩＤＥビットを識別することに応答して、ＩＤＥビットの存在を示す信号（ＩＤＥ−ＲＴＲ）を出力するよう構成されてもよい。
【００２７】
第４の機能ブロックまたは他の機能ブロックは（ＦＤＦビットと呼ばれてもよい）ＥＤＬビットを識別するように構成されてもよい。第４の機能ブロックは、ＥＤＬビットを識別することに応答して、ＥＤＬビットがセットされるかどうか示す信号を出力するよう構成されてもよい。
【００２８】
第４の機能ブロックまたは他の機能ブロックはＢＲＳビットを識別するように構成されてもよい。第４の機能ブロックは、ＢＲＳビットを識別することに応答して、ＢＲＳビットがセットされるかどうか示す信号を出力するよう構成されてもよい。
【００２９】
第１の回路系は第５の機能ブロックを含んでもよい。
第５の機能ブロックは第１および第２の動作モードにおいて動作してもよい。
【００３０】
第４の機能ブロックは、（ＦＤＦビットと呼ばれてもよい）ＥＤＬビットがセットされることに応答して、ＣＡＮ  ＦＤフレームをマスクすることを制御するための信号を出力するよう構成されてもよい。
【００３１】
第４の機能ブロックは、所与の事前条件に応答して、代替データの生成を制御するための信号（ＥＮＤＧＥＮ）を出力するよう構成されてもよい。
【００３２】
装置は、データ位相を含むＣＡＮ  ＦＤフレームのセクションを、ＣＡＮプロトコルに準拠するフォーマットを有する代替データで置換えるための第２の回路系（たとえば第２のモジュール）を含んでもよい。
【００３３】
第２の回路系は、少なくとも代替データを生成するための少なくとも１つまたは少なくとも２つの生成部の組を含んでもよい。第２の回路系は、多重化信号を出力するようＲＸＤおよび生成部に結合されるマルチプレクサを含んでもよい。
【００３４】
セクションは（ＦＤＦビットと呼ばれてもよい）ＥＤＬビットで開始してもよい。セクションはＣＲＣデリミタで終了してもよい。
【００３５】
１つ以上のＣＡＮ代替フレームを用いて、ＣＡＮ  ＦＤフレームセクションを置換えてもよい。
【００３６】
装置は、セクションに続くデータを、ＣＡＮ２．０Ｂに準拠するフォーマットを有するさらなる代替データで置換えるように構成されてもよい。セクションおよびデータは連続的でもよい。
【００３７】
代替データはＤＬＣを含んでもよい。ＤＬＣは、フレームがデータを含まないことを規定してもよい。
【００３８】
装置は代替データの後にさらなる代替データを付加するように構成されてもよい。たとえば、これが用いられ得るのは、ＣＡＮ  ＦＤフレームがＣＡＮ代替フレームよりも長いときである。
【００３９】
装置は代替データの後にさらなるデータを付加する（つまり、ＣＡＮ  ＦＤフレームの他の後のセクションをさらなるデータで置換える）ように構成されてもよい。
【００４０】
第１のモードでは、さらなるデータはエラーフレームおよびエラーデリミタを含んでもよい。装置はＣＡＮ  ＦＤフレームの終わりの所与数前の点のビットを識別し、ＣＡＮ  ＦＤフレームが終了するとエラーデリミタが終了するようにエラーフレームおよびエラーデリミタを付加するように構成されてもよい。
【００４１】
これを用いて、ローカルＣＡＮコントローラがＣＡＮバスへのアクセスを妨げられる時間を最小限にすることが可能である。
【００４２】
第２のモードでは、さらなるデータは少なくともオーバロードフレームおよび対応するオーバロードデリミタを含んでもよい。
【００４３】
これを用いて、ローカルＣＡＮコントローラにおいて生じるエラーの数を最小限にすることを助けることができる。
【００４４】
装置は、（ＦＤＦビットと呼ばれてもよい）ＥＤＬビットを識別することによってフレームがＣＡＮ  ＦＤフレームであるかどうかを識別するように構成されてもよい。装置は、ＣＡＮ  ＦＤフレームにおいてＥＤＬビットを見出すことをそれが期待するであろう位置においてビットを検査することにより、ＥＤＬビットを識別し、そのビットがリセッシブかどうか判断してもよい。
【００４５】
装置は、フレームがベースフォーマットを有するかまたは拡張フォーマットを有するかどうかを識別するよう構成されてもよい。装置は、ＩＤＥビットを検査して、フレームがベースフォーマットを有するかまたは拡張フォーマットを有するかどうかを識別するよう構成されてもよい。
【００４６】
装置は、セクションに先行する第１のビット（ＩＤＥ）を検出し、第１の信号（ＩＤＥ−ＲＴＲ）を生成して、第１のビットのためのマーカを与えるように構成されてもよい。
【００４７】
装置は第１の信号を用いてセクションの開始を見つけ出すように構成されてもよい。
装置は、ローカルＣＡＮコントローラからＣＡＮフレームを受信することに応答して、代替データが生成されているかどうかによって、ＣＡＮフレームの送信を抑制するように構成されてもよい。
【００４８】
装置はハードウェア論理において実現されてもよい。
この発明の第２の局面によれば、上記装置と、ＲＸＤ出力およびＴＸＤ入力を含むＣＡＮバス物理層装置回路系（ＰＨＹ）とを備えるＣＡＮ送受信機が提供される。装置は、ＣＡＮバス物理層装置回路系からＲＸＤを受信し、ＣＡＮバス物理層装置回路系にＴＸＤを与えるよう配される。
【００４９】
この発明の第３の局面によれば、ＣＡＮ２．０ＢコントローラとＣＡＮ２．０Ｂコントローラに結合されるＣＡＮ送受信機とを備えるノード（「ＣＡＮ２．０Ｂノード」）が提供される。
【００５０】
したがって、コンバータを含むＣＡＮ送受信機を用いることは、ＣＡＮ２．０ＢコントローラがＣＡＮ  ＦＤ通信に受動的に関与することを可能にすることが可能である。
【００５１】
この発明の第４の局面によれば、ＣＡＮバス、少なくとも１つのＣＡＮ２．０Ｂノードおよび少なくとも１つのＣＡＮ  ＦＤノードを含むＣＡＮシステムが提供される。
【００５２】
この発明の第５の局面によれば、ＲＸＤの上のフレームがＣＡＮ  ＦＤフレームであるかどうかを識別することと；フレームがＣＡＮ  ＦＤフレームであると識別することによって、ＣＡＮ  ＦＤフレームのデータ位相を含む、ＣＡＮ  ＦＤフレームのセクションを、ＣＡＮ２．０Ｂに準拠するフォーマットを有する代替データで置換えることとを含む、方法が提供される。
【００５３】
図面の簡単な説明
本発明のある実施の形態を、ここで例示的に、添付の図面を参照して説明する。
【図面の簡単な説明】
【００５４】
【図１】ＣＡＮ  ＦＤフレームを示す。
【図２】ＣＡＮ  ＦＤ拡張フォーマットデータフレームを示す。
【図３】ＣＡＮ  ＦＤノードおよびＣＡＮ  ＦＤ受動ノードを含むＣＡＮネットワークの概略ブロック図である。
【図４】ＣＡＮ  ＦＤフレームのＣＡＮフレームへの変換を示す。
【図５】ＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータを含む送受信機の概略ブロック図である。
【図６】ＳＯＦ同期ユニット、調停位相エラー検出ユニット、ＦＤデータ位相エラー検出ユニット、ＥＤＬフラグ検出ユニットおよびＦＤデータ長検出ユニットを含むＣＡＮ  ＦＤ検出ユニットの概略ブロック図である。
【図７】図６に示される同期ユニットによって実行される方法のプロセスフロー図である。
【図８】図６に示される調停位相エラー検出ユニットによって実行される方法のプロセスフロー図である。
【図９】図６に示されるＦＤデータ位相エラー検出ユニットによって実行される方法のプロセスフロー図である。
【図１０】図６に示されるＥＤＬフラグ検出ユニットによって実行される方法のプロセスフロー図である。
【図１１Ａ】図６に示されるＦＤデータ長検出ユニットによって第１の動作モードにおいて実行される方法のプロセスフロー図を示す。
【図１１Ｂ】図６に示されるＦＤデータ長検出ユニットによって第１の動作モードにおいて実行される方法のプロセスフロー図を示す。
【図１２】図６に示されるＦＤデータ長検出ユニットによって第２の動作モードにおいて実行される方法のプロセスフロー図を示す。
【図１３】受信マルチプレクサ切替状態機械を含むＲＸ置換部の概略ブロック図を示す。
【図１４】ＴＸゲーティングおよびドミナントビット抑制ユニットの概略ブロック図である。
【図１５】第１のモードで動作するＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータによる短いＣＡＮ  ＦＤフレームの処理を示す、ＲＸＤ、ＣＲＸＤ、ＣＴＸＤデータ信号およびＩＤＥ−ＲＴＲ、ＦＤＤＤＡＭＡＳＫ、ＥＮＤＧＥＮ、ＧＥＮＣＯＭＰ制御信号を示すタイミング図である。
【図１６】第１のモードで動作するＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータによる長いＣＡＮ  ＦＤフレームの処理を示す、ＲＸＤ、ＣＲＸＤ、ＣＴＸＤデータ信号およびＩＤＥ−ＲＴＲ、ＦＤＤＤＡＭＡＳＫ、ＥＮＤＧＥＮ、ＧＥＮＣＯＭＰ制御信号を示すタイミング図である。
【図１７】第１のモードで動作するＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータおよび代替データの送信の終わりで送信しようと試みるローカルコントローラによるＣＡＮ  ＦＤフレームの処理を示す、ＲＸＤ、ＣＲＸＤ、ＣＴＸＤデータ信号およびＩＤＥ−ＲＴＲ、ＦＤＤＤＡＭＡＳＫ、ＥＮＤＧＥＮ、ＧＥＮＣＯＭＰ制御信号を示すタイミング図である。
【図１８】第２のモードで動作するＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータによる短いＣＡＮ  ＦＤフレームの処理を示す、ＲＸＤ、ＣＲＸＤ、ＣＴＸＤデータ信号およびＩＤＥ−ＲＴＲ、ＦＤＤＤＡＭＡＳＫ、ＥＮＤＧＥＮ、ＧＥＮＣＯＭＰ制御信号を示すタイミング図である。
【図１９】第２のモードで動作するＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータによる長いＣＡＮ  ＦＤフレームの処理を示す、ＲＸＤ、ＣＲＸＤ、ＣＴＸＤデータ信号およびＩＤＥ−ＲＴＲ、ＦＤＤＤＡＭＡＳＫ、ＥＮＤＧＥＮ、ＧＥＮＣＯＭＰ制御信号を示すタイミング図である。
【発明を実施するための形態】
【００５５】
ある実施の形態の詳細な説明
コントローラエリアネットワーク１
図３を参照して、コントローラエリアネットワーク（ＣＡＮ）１が示される。ＣＡＮ１は、ＣＡＮバス２、およびＣＡＮバス２に接続される複数のノード３、４を含む。各ノード３、４は、スタンドアローンのデバイスとして実現されるマイクロコントローラ７、８に埋込まれてもよいコントローラ５、６と、送受信機９、１０とを含む。送受信機９、１０は、各々、ＩＳＯ１１８９８（２００４）の物理層要件を実現するための回路系１１、１２を含む。ノード３、４は、ＣＡＮ２．０Ｂ、つまりＩＳＯ１１８９８−１（２００４）に準拠するフレーム１３を送受することができる。ここにおいては、そのようなフレーム１３は「ＣＡＮフレーム」と称される。
【００５６】
第１のタイプの各ノード３（ここでは「ＣＡＮ  ＦＤノード」と称される）は、ＣＡＮフレキシブルデータレート（ＣＡＮ  ＦＤ）プロトコルに準拠するコントローラ５を含み、したがって、（ここにおいては「ＦＤフレーム」とも称される）ＣＡＮ  ＦＤフレーム１４を送受することができる。
【００５７】
第２のタイプの各ノード４（ここでは「ＣＡＮ  ＦＤ受動ノード」または「ＣＡＮ  ＦＤ容認ノード」とも称される）は、ＣＡＮ２．０Ｂプロトコルに準拠し、したがってＣＡＮフレーム１３を交換することができるコントローラ６を含む。送受信機１０はＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータ１５を含むかまたはそれを設けられ、ＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータ１５は、たとえば、ＣＡＮ  ＦＤフレーム１４を受信した際にエラーフレーム（図示せず）を生成することによってＣＡＮ  ＦＤ通信を邪魔することなく、ＣＡＮ  ＦＤ受動ノード４がＣＡＮバス２に接続されることを可能にする。
【００５８】
ＣＡＮ  ＦＤ通信は、典型的にはコントローラ５、６の処理速度によって制限される、たとえば５００ｋビット-1まで、または１Ｍビット-1までのＣＡＮ  ＦＤ調停レートと、典型的にはＣＡＮバス２の物理的制限によって拘束される、たとえば４Ｍビット-1または８Ｍビット-1（つまり調停レートの８倍まで）の、ＣＡＮ  ＦＤデータレートとをサポートし得る。
【００５９】
ＣＡＮ  ＦＤ受動ノード４は、とりわけ、ＩＳＯ１１８９８−６によって規定される選択的ウェイクアップを与えるかまたは可能にし、ＣＡＮ  ＦＤメッセージを容認し、ドミナントエッジ信号送信によって「従来の」ウェイクアップを可能にし、（ＣＡＮ２．０Ｂメッセージを用いる）トランスペアレントな（アクティブな）、スリープおよび選択的ウェイクアップを含む送信（「ＴＸ」）ロー検出および／または動作モードによるバス保護を与えることができる。
【００６０】
ＣＡＮ  ＦＤ受動ノード４は、ＣＡＮ  ＦＤ通信に対して特定の通信位相をスキップし、それによって、それ（ら）が、混合されたＣＡＮ  ＦＤおよびＣＡＮ２．０Ｂ通信に関与することを可能にする。特に、ＣＡＮ  ＦＤ受動ノード４はＣＡＮ  ＦＤ通信に受動的に関与し、およびＣＡＮ２．０Ｂ通信に能動的に関与することができる。
【００６１】
ＣＡＮ  ＦＤフレームからＣＡＮ代替フレームへの変換
図４も参照して、ＣＡＮ  ＦＤフレーム１４は、一般的に、ＣＡＮ２．０ＢプロトコルおよびＣＡＮ  ＦＤプロトコルの両方に準拠する第１のセクション１６と、ＣＡＮ  ＦＤプロトコルに特定の第２のセクション１７と、ＣＡＮ２．０ＢプロトコルおよびＣＡＮ  ＦＤプロトコルの両方またはＣＡＮ  ＦＤプロトコルのみに準拠し得る第３のセクション１８とを含む。ＣＡＮ  ＦＤフレーム１４は、その後に他のデータ１９（ここでは「後続データ」と称される）が続き、それは、典型的にはＩＦＳの後に他のフレームが続く形式であり、そのフレームは、ＣＡＮ２．０ＢフレームまたはＣＡＮ  ＦＤフレームであってもよく、データフレームまたは他のタイプのフレームを含んでもよい。
【００６２】
ＣＡＮ  ＦＤフレーム１４の第１のセクション１６はＳＯＦビットで開始する。第２のセクション１７は、（「ＦＤＦビット」と称されてもよい）ＥＤＬビットで開始し、ＡＣＫデリミタで終わる。第１および第２のセクション１６、１７の内容はフレームフォーマットに依存する。
【００６３】
ＣＡＮ  ＦＤフレーム１４を受信すると、ＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータ１５は、フレーム１４の第２および第３のセクション１７、１８と後続データ１９の部分２０とを、代替データ２１と置換えることによって、ＣＡＮ２．０Ｂに準拠するフレーム（ここでは「ＣＡＮ代替フレーム」、「生成されたＣＡＮフレーム」または「ＣＡＮ２．０準拠フレーム」とも称される）を形成することによって、ＣＡＮ  ＦＤフレーム１４を処理することができる。ＣＡＮ代替フレーム２２の後にはさらなるデータ２３が続き、それは、エラーフレームデータ２４またはオーバロードフレームデータ２５を含む。ある状況では、たとえば、ＣＡＮ  ＦＤ１４が長い場合には、ＣＡＮ代替フレーム２２の後には、エラーフレームデータ２４またはオーバロードフレームデータ２５の前に１つ以上のさらなるＣＡＮ代替フレーム２２が続いてもよい。さらに、ＣＡＮ代替フレーム２２は、ＣＡＮ  ＦＤフレーム１４の始まり、つまり第１のセクション１６を必ずしも含む必要はない。
【００６４】
以下においてさらに詳細に説明されるように、代替データ２１の内容およびしたがって代替ＣＡＮフレーム２２は、フレームフォーマットおよびフレーム長に依存する。代替データ２２は、典型的には、ドミナントリザーブドビットｒ０およびＤＬＣビットを含み、空のデータセクション、ＣＲＣビット、ＡＣＫビット、ＥＯＦビット、ＩＦＳビット、ＳＯＦビット、および／または調停フィールドビットが後に続いてもよい。
【００６５】
ＣＡＮ２．０Ｂノード４がＣＡＮフレーム１３を送信する場合には、ＣＡＮ／ＣＡＮ受動コンバータ１５は、ローカルコントローラ６に転送される専用のバスアクティビティシーケンスを生成することによってＣＡＮ  ＦＤフレーム１４が通過してしまうまでＣＡＮフレーム１３の送信を遅延させることができる。
【００６６】
さらに、以下により詳細に説明されるように、バスの関与を最大にすることを助ける第１のモード、およびローカルコントローラにおいてエラーの数を最小にすることを助ける第２のモードを含む、異なる動作モードが与えられてもよい。
【００６７】
送受信機１０
図５を参照して、物理層回路系（ＰＨＹ）１２とＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータ１５とを含む送受信機１０がより詳細に示される。データストリームおよびクロック信号は連続的な線で示され、制御信号は長い破線で示され、設定信号は短い破線で示される。
【００６８】
図５に示されるように、ＰＨＹ１２はＣＡＮハイ（ＣＡＮ＿Ｈ）およびＣＡＮロー（ＣＡＮ＿Ｌ）線に結合される。ＰＨＹ１２は、ＣＡＮ受信データ信号（ＲＸＤ）を出力し、ＣＡＮ送信データ信号（ＴＸＤ）をＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータ１５から受信する。
【００６９】
ＲＸＤは、ＣＡＮ  ＦＤ検出ユニット５１（ここでは単に「ＦＤ検出ユニット」とも称される）と、受信信号（ＲＸ）置換部ユニット５２と、ＲＸマルチプレクサユニット５３と、参照ＩＤおよびデータレジスタ５５を含む選択的ウェイクアップユニット５４とに供給される。
【００７０】
ＴＸＤは、ＴＸゲーティングおよびドミナント抑制ユニット５６から、送信機データ入力信号（ＣＴＸＤＳ）の形式で、ＰＨＹ１２に供給される。
【００７１】
ＦＤ検出ユニット５１はクロック信号（ＯＳＣ）を発振部５７から受信する。発振部５７は、８もしくは１６ＭＨＺまたは他の周波数で動作してもよい。ＦＤ検出ユニット５１は、さらに、セットされた制御信号（ＧＥＮＣＯＭＰ）をＲＸ置換部５２から受信し、ＥＤＬビットの終わりインジケータ信号（ＩＤＥ−ＲＴＲ）、ＣＡＮ  ＦＤデータマスク信号（ＦＤＤＡＭＡＳＫ）、ＣＡＮビットレート信号（ＴＱＣＬＫ）、フレームの開始同期信号（ＳＯＦＳＹＮＣ）およびフレーム生成信号（ＥＮＤＧＥＮ）をＲＸ置換部５２に供給する。ＦＤ検出ユニット５１は、さらに、ＴＸゲーティングおよびドミナント抑制ユニット５６にＦＤＤＡＭＡＳＫを供給する。
【００７２】
ＦＤ検出ユニット５１は、調停ビットレートおよびＣＡＮ  ＦＤビットレートレジスタ５８、５９を含み、それらは、ローカルＣＡＮコントローラ６（図３）からのＳＰＩ信号を用いて制御されるシリアル周辺インターフェイス（ＳＰＩ）ユニット６０から受信される設定信号（ＣＯＮＦＩＧ）を用いて設定される。
【００７３】
ＲＸ置換部５２は、ＳＰＩインターフェイスユニット６０から受信される設定信号（ＣＯＮＦＩＧ）を用いて設定される。ＲＸ置換部５２は、置換データ２１（図４）を含む代替受信データ信号（ＲＲＸＤ）をＲＸマルチプレクサユニット５３に出力する。
【００７４】
選択的ウェイクアップユニット５４は、ＳＰＩインターフェイスユニット６０から受信される設定信号（ＣＯＮＦＩＧ）を用いて設定される。選択的ウェイクアップユニット５４はウェイクアップ信号（ＷＵＰ）をＲＸマルチプレクサユニット５３に出力する。
【００７５】
ＲＸマルチプレクサユニット５３はＣＡＮ受信データ信号（ＣＲＸＤ）をローカルＣＡＮコントローラ６（図３）に出力する。
【００７６】
ＴＸゲーティングおよびドミナント抑制ユニット５６は、ＦＤ検出ユニット５１からＦＤＤＡＭＡＳＫを受信し、ＲＸ置換部ユニット５２からＧＥＮＣＯＭＰを受信する。ＴＸゲーティングおよびドミナント抑制ユニット５６は、さらに、ローカルＣＡＮコントローラ６（図３）からＣＡＮ送信データ（ＣＴＸＤ）を受信し、ＳＰＩインターフェイスユニット６０から活性化制御信号（ＡＣＴＩＶＡＴＥ）を受信する。ＴＸゲーティングおよびドミナント抑制ユニット５６はＣＡＮ送信データ反転信号（ＣＴＸＤＡ）をＲＸ置換部ユニット５２に出力する。
【００７７】
ＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータ動作
図４および図５を参照して、ＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータ１５は異なるモードで動作し得る。
【００７８】
第１のモードでは、ＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータ１５はバス性能を最適化する態様で動作し得る。
【００７９】
ＣＡＮ  ＦＤフレーム１４が受信されると、ＦＤ検出ユニット５１は、置換のために、フレーム１４の第２および第３のセクション１７、１８ならびにそのフレームに続くデータのセクション１９を印す。ＲＸ置換部５２はＣＡＮ  ＦＤフレーム１４を処理し、それは置換えられ、ＲＸマルチプレクサ５３に供給されて、ＣＲＸＤとして出力される。
【００８０】
ＣＴＸＤが非活性状態である（つまりリセッシブである）間は、ＲＸ置換部５２は、それまで未完了のＣＲＸＤフレーム、つまりフレーム１４の第１のセクション１６を完了させるが、それは、そのフレームの残りの部分、つまりそのフレームの第２および第３のセクション１７、１８、ならびにＩＦＳの一部、つまり後続データ２０の置換えを、代替データ２１を付加してＣＡＮ２．０Ｂ準拠フレーム２２を形成することによって行なう。代替データ２１はＩＤＥビット（図２）の後に付加され、ＣＲＣおよび肯定応答ＡＣＫを含む。
【００８１】
ＣＡＮ  ＦＤフレーム１４が依然として処理されている間にＣＴＸＤが活性状態（つまりドミナント）になる場合には、ＴＸゲーティングおよびドミナント抑制ユニット５６はＰＨＹ１２に対するＣＴＸＤの送信を抑制する。ＴＸゲーティングおよびドミナント抑制ユニット５６はＣＴＸＤをＣＴＸＤＡの形式でＲＸ置換部５２にフィードバックするが、それはＣＴＸＤによってトリガされる。この結果、ＲＸ置換部５２は、調停フィールドを含むＣＡＮ２．０Ｂ準拠フレーム２２を生成する。この調停フィールド中において、ＣＴＸＤ上のフレームはドミナントレベルによって上書きされる。これは、意図的に、ローカルＣＡＮコントローラ６（図３）に対する調停の喪失をもたらす結果となり、それによって、それに送信を停止させる。
【００８２】
ＣＡＮ準拠フレーム２２は、データコンテンツを伴わない最小長（つまりＤＬＣ＝０）のフレームであるよう配され、調停フィールドにおいて最も高い優先度を有するよう構成される。ＣＡＮ  ＦＤフレーム１４の終わりまでの距離が、エラーフレームデータ２４（つまりエラーフレームおよびエラーデリミタ）の長さと一致するようである場合、ＣＲＸＤが依然として活性状態でありエラーフレームが送信される場合には、フレームの生成およびそれらフレームのＣＲＸＤに対する出力は終了される。したがって、ローカルＣＡＮコントローラ６（図３）は、ＣＡＮ  ＦＤフレーム１４が終了するとすぐに、ＣＡＮバスに対するアクセスを再び得てもよい。
【００８３】
ＣＡＮ  ＦＤフレーム１４がこのような態様で処理されるたびごとに、ローカルＣＡＮコントローラ６（図３）におけるＲＸエラーカウンタ（図示せず）は増分される。したがって、この動作モードでは、ローカルＣＡＮコントローラ６（図３）は「エラー受動」状態に達してもよい。
【００８４】
生成されたエラーフレームのタイミングの設定は、エラーフレームの終わりがＣＡＮ  ＦＤバスのＩＦＳの始まりと一致するように行なわれる。
【００８５】
第２の動作モードでは、ＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータ１５は、ＲＸエラーを最小にする態様で動作し得るが、他方では、ローカルＣＡＮコントローラ６がＣＡＮバス通信に、ある精密な点、つまりＩＦＳの開始において再び加わることを許さない。
【００８６】
第１の動作モードにおけるように、ＣＡＮ  ＦＤフレーム１４が受信されると、ＦＤ検出ユニット５１は、置換えのために、フレーム１４の第２および第３のセクション１７、１８ならびにＣＡＮ  ＦＤフレーム１４に続くデータのセクション２０を印し、ＲＸ置換部５２は代替データ２１を付加する。
【００８７】
しかしながら、ＣＡＮ  ＦＤフレーム１４が依然として処理されている間にＣＴＸＤがドミナントになることを回避するために、ＣＡＮ  ＦＤフレーム１４が終了してしまうまで、オーバロードフレームを生成する。オーバロードフレーム中においては、ローカルＣＡＮコントローラ６（図３）はいかなる送信も開始することはできず、したがって、それは、オーバロードフレームの送信が終わってしまうまで待機する。
【００８８】
別のＣＡＮ  ＦＤフレーム１４が、フレーム完了中またはオーバロードフレーム生成中においてＣＡＮバス上において開始する場合には、オーバロードフレームデリミタの終わりがバス休止状態と一致するまで、さらなるオーバロードフレームを生成する。
【００８９】
第１のモードにおけるように、ＣＡＮ２．０準拠フレーム２２は最小長（つまりＤＬＣ＝０）のフレームであるよう配される。
【００９０】
ＣＡＮバス負荷が１００％である場合、ローカルＣＡＮコントローラ６（図３）は、内部フレーム生成の終わりまたはオーバロードデリミタがＣＡＮバスのフレーム間スペース位相と一致しなければ、調停に関与することはできない。しかしながら、典型的には、ＣＡＮバス負荷は５０％以下である傾向がある。したがって、平均すると、妥当な時間の後、ＣＡＮコントローラ６（図３）は、通常は、内部フレーム生成の終わりまたはオーバロードフレームデリミタがバス休止またはフレーム間スペース位相内に入ると、ＣＡＮバスに再接続し得る。
【００９１】
ＦＤ検出ユニット５１
図６を参照して、ＦＤ検出ユニット５１をより詳細に示す。
【００９２】
ＦＤ検出ユニット５１は、ＣＡＮ調停ビットレートタイムクウォンタムクロック生成ユニット６２、ＣＡＮ  ＦＤデータビットレートタイムクウォンタムクロック生成ユニット６３、ＳＯＦ同期ユニット６４、調停位相エラー検出ユニット６５、ＣＡＮ  ＦＤデータエラー検出ユニット６６、ＥＤＬフラグ検出ユニット６７、およびＣＡＮ  ＦＤデータ長検出ユニット６８を含む。
【００９３】
図６に示されるように、ＦＤ検出ユニット５１は内部発振部５７（図５）からのクロック信号ＯＳＣを用いる。ＯＳＣは８または１６ＭＨｚであってもよい。１．２５％の精度、つまり１ビットにつき８タイムクゥオンタム（ＴＱ）を用いて１０ビット内において１ＴＱエラーで十分である。ＣＡＮ調停ビットレートタイムクウォンタムクロック（ＡＴＱＣＬＫ）およびＣＡＮデータビットレートタイムクウォンタムクロック（ＦＤＴＱＣＬＫ）は、より低いビット単位ＴＱ解像度で生成されることが可能である。
【００９４】
ＡＴＱＣＬＫは、ＳＰＩインターフェイス６０（図５）を介してＣＯＮＦＩＧを用いてセットされ、調停ビットレートタイムクォンタムクロック生成ユニット６２によって生成される。ＡＴＱＣＬＫはＲＸＤの調停位相中に用いられる。調停ビットレートタイムクォンタムクロック生成ユニット６２は、１ビットにつき８ＴＱに基づいてビットタイミングクロックを生成する。ＡＴＱＣＬＫはＲＸ置換部５２（図５）にＴＱＣＬＫとして転送される。
【００９５】
ＦＤＴＱＣＬＫはＳＰＩインターフェイス６０（図５）を介してＣＯＮＦＩＧを用いてセットされ、ＣＡＮ  ＦＤデータビットレートユニット６３によって出力される。ＦＤＴＱＣＬＫは、ＲＸＤのデータ位相中において、より高いビットレートが必要とされるときに用いられる。ＣＡＮ  ＦＤデータビットレートタイムクゥオンタムクロック生成ユニット６３は１ビットにつき４ＴＱに基づいてビットタイミングクロックを生成する。
【００９６】
ＳＯＦ同期ユニット６４
図４、図６および図７を参照して、リセット（ステップＳ１−１）の後、ＳＯＦ同期ユニット６４は、調停位相エラー検出ユニット６５からの調停位相エラー信号（ＡＥＲＲ）またはデータ位相エラー検出ユニット６６からのデータ位相エラー信号（ＤＥＲＲ）の受信をチェックする（ステップＳ１−２）。ＡＥＲＲおよびＤＥＲＲはオーバロードフレームまたはエラーフレームの発生に対してフラグを立て、ＳＯＦ同期手順のリセットを引起すことになる。
【００９７】
ＳＯＦ同期ユニット６４がエラー信号（ＡＥＲＲまたはＤＥＲＲのいずれか）を受信しない場合には、それは、ＲＸＤ上において、（前のフレームの）ＥＯＦおよびＩＦＳの後にドミナントビット（つまり論理「０」）にセットされるＳＯＦが続くものを含む同期パターンを探すことによって、ＣＡＮフレームの開始を探す（ステップＳ１−３）。
【００９８】
ＳＯＦビットがＲＸＤ上において見出されると、ＳＯＦ同期ユニット６４はＳＯＦをＥＤＬフラグ検出ブロック６７に転送する（ステップＳ１−４）。
【００９９】
調停位相中においては、ＳＯＦ同期ユニット６４はＡＴＱＣＬＫのビットタイミングを用いる。（ＣＡＮ  ＦＤ）データ位相中においては、ＳＯＦ同期ユニット６４はＦＤＴＱＣＬＫを用いてビットストリームを辿る。データ位相は、ＳＯＦ同期ユニット６４に対して、ＥＤＬフラグ検出ブロック６７によって、ＢＲＳを用いて示される。
【０１００】
ＳＯＦ同期ユニット６４がリセットされるのは、オーバロードフレームまたはエラーフレームがＲＸＤ上で受信される場合であり、ＳＯＦ同期ユニット６４は新たな同期パターンを探し始めることになる（ステップＳ１−２）。
【０１０１】
調停位相エラー検出ユニット６５
図４、図６および図８を参照して、リセットされた後（ステップＳ２−１）、調停位相エラー検出ユニット６５はエラーフレームおよびオーバロードフレームをＲＸＤ信号（ＲＸＤＡ）において検出する。ＥＤＬフラグ検出ユニット６７は、ＲＸＤを、ＲＸＤＡとして、ＣＡＮフレーム１３中またはＣＡＮ  ＦＤフレーム１４の調停位相中に転送する。
【０１０２】
調停位相エラー検出ユニット６５がエラーフレームまたはオーバロードフレームを検出すると、それはＡＥＲＲをセットする（ステップＳ２−２およびＳ２−３）。
【０１０３】
ＦＤデータエラー検出ユニット６６
図４、図６および図９を参照して、リセットされた後（ステップＳ３−１）、ＦＤデータエラー検出ユニット６６はエラーフレームおよびオーバロードフレームをＲＸＤ信号（ＲＸＤＤ）において検出する。ＦＤデータ長検出ブロック６８は、ＲＸＤを、ＲＸＤＤとして、ＣＡＮフレーム１３のデータ位相中において転送する。
【０１０４】
ＦＤデータエラー検出ユニット６６がエラーフレームまたはオーバロードフレームを検出すると、それはＤＥＲＲをセットする（ステップＳ３−２およびＳ３−３）。
【０１０５】
ＦＤデータエラー検出ユニット６６は、標準フレームおよびＣＡＮ  ＦＤフレームの両方に対して、エラーフレームおよびオーバロードフレームにフラグを立てる。
【０１０６】
ＥＤＬフラグ検出ユニット６７
図４、図６および図１０を参照して、ＥＤＬフラグ検出ユニット６７は、（ＦＤＦビットと称されてもよい）ＥＤＬビットを求めて入来フレームを検索する。ＥＤＬビットは、ＣＡＮ  ＦＤフレーム１４において、ＳＯＦから固定された数のビット（または「固定されたビット距離」）内に位置する。
【０１０７】
ＥＤＬフラグ検出ユニット６７は、ＥＤＬおよびＢＲＳをクリアし（ステップＳ４−１）、ＳＯＦを待つ（ステップＳ４−２）。一旦ＳＯＦが発見されると、それは、ＩＤＥビットを待ち（ステップＳ４−３）、ＩＤＥ−ＲＴＲを用いてそのビットを（１ビットの継続期間の間）印す（ステップ４−４）。
【０１０８】
ＥＤＬフラグ検出ユニット６７は、ＩＤＥを読むことによって、フレームがベースフォーマットを有するかまたは拡張フォーマットを有するかを判断する。
【０１０９】
ＩＤＥがドミナントである場合には、フレームはベースフォーマットを有し、したがって、次のビットは（ＣＡＮ  ＦＤフレームに対する）ＥＤＬビットであるかまたは（ＣＡＮフレームに対する）リザーブドビットｒ０であることが期待される。
【０１１０】
ＩＤＥがリセッシブである場合には、フレームは拡張フォーマットを有し、したがって、拡張された調停フィールドが期待される。したがって、識別子拡張子が期待され、その後に、（ＣＡＮ  ＦＤフレームに対しては）リザーブドビットｒ１が続くか、または（ＣＡＮフレームに対しては）ＲＴＲが続く。調停フィールドの後、次のビットは（ＣＡＮ  ＦＤフレームに対しては）ＥＤＬビット、または（ＣＡＮフレームに対しては）リザーブドビットｒ１のいずれかであることが期待される。
【０１１１】
ＥＤＬフラグ検出ユニット６７がそのビットを待つのは、それがＥＤＬビットを見つけることを期待する場合であり（ステップＳ４−５）、そのビットを検査する（ステップＳ４−６）。ＣＡＮ  ＦＤフレームの場合、ＥＤＬビットはリセッシブである。ＣＡＮフレームの場合、リザーブドビットｒ１またはｒ０はドミナントである。
【０１１２】
ビットがセット状態で見出されず、ドミナントビット（つまりｒ１またはｒ０のいずれか）が代わりに見出される場合には、フレームはＣＡＮフレームである（つまりＣＡＮ  ＦＤフレームではない）と判断され、したがって、フレームはさらなる処理を必要としない。したがって、ＥＤＬフラグ検出ユニット６７はリセットされ（ステップＳ４−１）、新たなＳＯＦを待つ（ステップＳ４−２）。
【０１１３】
ビットがセット状態で見出される（つまりそれはリセッシブである）場合には、ＥＤＬフラグ検出ユニット６７は、この発見を、ＥＤＬをセットすることによって、ＦＤデータ長検出ブロック６８に示す（ステップＳ４−７）。この場合、ＥＤＬフラグ検出ユニット６７は、さらに、ＢＲＳフラグに対するチェックを行ない、それをＦＤデータ長検出ブロック６８およびＳＯＦ同期ブロック６４に転送して、それらが適切なビットレートを選択することを可能にする（ステップＳ４−８、Ｓ４−９およびＳ４−１０）。
【０１１４】
ＥＤＬビットがセット状態で見出されないか、またはＣＡＮ  ＦＤフレーム１４のデータ位相が終わっている場合には（ステップＳ４−１１）、ＥＤＬフラグ検出ユニット６７はリセットされ（ステップＳ４−１）、新たなＳＯＦを待つ（ステップＳ４−２）。
【０１１５】
調停またはデータ位相におけるエラーが、任意の時間に、それぞれ、信号ＡＥＲＲおよびＤＥＲＲによって示されるように見出される場合には（ステップＳ４−１２）、ＥＤＬフラグ検出ユニット６７はリセットされる（ステップＳ４−１）。
【０１１６】
ＦＤデータ長検出ユニット６８
図４、図５および図６を参照して、ＥＮＤＧＥＮおよびＦＤＤＡＭＡＳＫを用いてＲＸ置換部５２を制御して、ローカル（非ＦＤ）ＣＡＮコントローラ６（図３）へのバス信号をエミュレートする。
【０１１７】
ＲＸ置換部５２は、代替ビット２１の挿入の完了を、ＧＥＮＣＯＭＰをセットすることにより、ＦＤデータ長検出ユニット６８に対して示す。ＦＤＤＡＭＡＳＫがセットされている間、ローカルＣＡＮコントローラ６（図３）はＲＸＤから切断され、ＲＸ置換部５２から代替データ２１（図４）を供給され、ＣＴＸＤ（つまりコントローラ６からの送信データ）はＣＴＸＤＳを通して供給されない（つまりそれはＣＡＮバスに達しない）。
【０１１８】
先に説明されたように、ＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータ１５は２つの異なるモードで動作し得る。２つのモードにおける動作は同様であり、主に代替ビット２１の内容において異なる。
【０１１９】
第１の動作モードにおけるＦＤデータ長検出ユニット６８
図４、図５、図６、図１１Ａおよび図１１Ｂを参照して、まず、ＳＯＦ、ＢＲＳ、ＡＥＲＲ、ＤＥＲＲ、ＦＤＤＡＭＡＳＫおよびＥＮＤＧＥＮがクリアされる（ステップＳ５．１−１）。
【０１２０】
ＦＤデータ長検出ユニット６８はＥＤＬフラグ検出ユニット６７からＥＤＬを受信するのを待つ。
【０１２１】
ＥＤＬビットが受信され（したがって、ＣＡＮ  ＦＤフレーム１４の存在を示す）場合には、ＦＤデータ長検出ユニット６８はＦＤＤＡＭＡＳＫをセットする（ステップＳ５．１−３）。ＦＤＤＡＭＡＳＫは、ＣＡＮ  ＦＤフレーム１４および最小長（この場合においては３ビット）のＩＦＳ（つまりインターミッションビット）が通過してしまうまで、セット状態であり続ける（ステップＳ５．１−３〜Ｓ５．１−１４）。ＥＤＬビットがＣＡＮ  ＦＤフレーム１４の存在を示す場合には、ＥＤＬビットは既にドミナントビット、つまりｒ０またはｒ１フラグを置換えているため、ローカルＣＡＮコントローラ６（図３）は調停を失っていると仮定され得、送信を停止することになる。
【０１２２】
ＦＤデータ長検出ユニット６８は、ＣＡＮ  ＦＤフレーム１４の置換えがすぐに終わるはずである旨を示すよう、ＣＡＮ  ＦＤフレーム１４の終わりの前の所与の数のビット（この場合では２０ビット）で（つまり、重畳を含むエラーフラグの継続期間（つまり最初のエラーフラグおよびその最初のエラーフラグを長くする追加のエラーフラグ）＋少なくとも３ビットのフレーム間スペース前のエラーデリミタの間）、ＥＮＤＧＥＮをセットする（ステップＳ５．１−４〜Ｓ５．１−９）。ＥＮＤＧＥＮを生成するために、ＦＤデータ長検出ユニット６８はＣＡＮ  ＦＤフレーム１４をデコードし（ステップＳ５．１−４）、その長さおよびデータレートを判断し、ＣＲＣフィールドの長さを予測する（ステップＳ５．１−５）。
【０１２３】
ＧＥＮＣＯＭＰは、ＦＤＤＡＭＡＳＫがリセットされた後、ＥＮＤＧＥＮに対する応答として、ＲＸ置換部５２から期待される。任意の新たなフレームがＲＸＤ上に現れる前にＧＥＮＣＯＭＰがセットされる場合には、処理は完了されたと判断され、したがって、ＦＤデータ長検出ユニット６８はリセットされ、別のＣＡＮ  ＦＤフレーム１４を待ち始める。そうでない場合には、ＦＤＤＡＭＡＳＫは再びセットされ、フレームおよび３ビットのＩＦＳが通過してしまうまで、セット状態のままであり、その後ＥＮＤＧＥＮが再び生成される。
【０１２４】
ＲＸ置換部５２がＧＥＮＣＯＭＰをセットするのは、ＥＮＤＧＥＮがＦＤデータ長検出ユニット６８によってセットされた後でありかつさらなる信号生成がＣＲＸＤ上において生じない間である。
【０１２５】
ＢＲＳが、ＥＤＬに加えてセットされる場合には、ＦＤデータ長検出ユニット６８はＣＡＮ  ＦＤフレーム１４のデータ位相を認識し、ＦＤＴＱＣＬＫをＡＴＱＬＣＫの代わりに用いる。
【０１２６】
データ位相におけるエラーが見出され、ＤＥＲＲによって示される場合には、ＦＤデータ長検出ユニット６８は、ＦＤＤＡＭＡＳＫがクリアされるとリセットされる。
【０１２７】
したがって、ＦＤデータ長検出ユニット６８は、フレームおよび３ビットのＩＦＳが通過するまで待機する（ステップＳ５．１−１０）。それが待機している間、ＦＤデータ長検出ユニット６８はＧＥＮＣＯＭＰがセットされるかどうかをチェックする（ステップＳ５．１−１１）。
【０１２８】
ＧＥＮＣＯＭＰがその間にセットされる場合には、ＦＤデータ長検出ユニット６８はフレームおよび３ビットのＩＦＳ、つまりインターミッションビットが通過してしまうまで待機し（ステップＳ５．１−１２）、ＦＤＤＡＭＡＳＫをクリアし（ステップＳ５．１−１３）、そしてリセットされる（ステップＳ５．１−１）。
【０１２９】
ＧＥＮＣＯＭＰがその間にセットされない場合には、一旦フレームおよび３ビットのＩＦＳが通過すると、ＦＤデータ長検出ユニット６８はＦＤＤＡＭＡＳＫをクリアする（ステップＳ５．１−１４）。
【０１３０】
ＦＤデータ長検出ユニット６８はＧＥＮＣＯＭＰがセットされているかどうかをチェックする（ステップＳ５．１−１５）。ＧＥＮＣＯＭＰがセットされている場合には、ＦＤデータ長検出ユニット６８はリセットされる（ステップＳ５．１−１）。ＧＥＮＣＯＭＰがセットされていない場合には、ＦＤデータ長検出ユニット６８は新たなフレームがＲＸＤ上において受信されるまで待機する（ステップＳ５．１−１６）。新たなフレームが受信される場合には、ＦＤＤＡＭＡＳＫは再びセットされ、フレームおよび３ビットのＩＦＳが通過してしまうまでセットされたままであり、その後ＥＮＤＧＥＮが再び生成される（ステップＳ５．１−４〜Ｓ５．１−９）。
【０１３１】
第２の動作モードにおけるＦＤデータ長検出ユニット６８
図４、図５、図６および図１２を参照して、まず、ＳＯＦ、ＢＲＳ、ＡＥＲＲ、ＤＥＲＲ、ＦＤＤＡＭＡＳＫおよびＥＮＤＧＥＮがクリアされる（ステップＳ５．２−１）。
【０１３２】
ＦＤデータ長検出ユニット６８はＥＤＬフラグ検出ユニット６７からＥＤＬを受信するのを待つ（ステップＳ５．２−２）。
【０１３３】
ＥＤＬビットが受信され（したがってＣＡＮ  ＦＤフレーム１４の存在を示す）場合には、ＦＤデータ長検出ユニット６８はＦＤＤＡＭＡＳＫをセットする（ステップＳ５．２−３）。ＦＤＤＡＭＡＳＫは、ＣＡＮ  ＦＤフレーム１４が終了しＩＦＳに達するまでセットされたままであり続ける（ステップＳ５．２−４）。
【０１３４】
ＩＦＳに達すると、ＥＮＤＧＥＮは、ＣＡＮ  ＦＤフレーム１４の置換えが終了したはずである旨を示す（ステップＳ５．２−５）。
【０１３５】
ＧＥＮＣＯＭＰが、ＥＮＤＧＥＮがセットされたことに対する応答として、ＲＸ置換部５２から期待される。
【０１３６】
次のフレームがＲＸＤ上に出現する前にＧＥＮＣＯＭＰがセットされる場合には、処理は完了されたとみなされ、ＦＤデータ長検出ユニット６８はリセットされ、次のＣＡＮ  ＦＤフレーム１４を待つ。
【０１３７】
ＧＥＮＣＯＭＰがクリア状態であり、ＦＤＤＡＭＡＳＫが依然としてセット状態であり、新たなフレームがＲＸＤ上に現れる場合には、そのフレームも処理される。新たなＥＮＤＧＥＮ信号が、このフレームの後、ＩＦＳの開始で生成される。
【０１３８】
ＲＸ置換部５２がＧＥＮＣＯＭＰをセットするのは、ＥＮＤＧＥＮがＦＤデータ長検出ユニット６８によってセットされ、かつどのような信号生成もＣＲＸＤ上において進行していないときである。
【０１３９】
（ＥＤＬに加えて）ＢＲＳもセットされている場合には、ＦＤデータ長検出ユニット６８はＣＡＮ  ＦＤフレーム１４のデータ位相を認識し、ＦＤＴＱＣＬＫをＡＴＱＣＬＫの代わりに用いる。
【０１４０】
データ位相におけるエラーが見出され、ＤＥＲＲによって示される場合には、ＦＤデータ長検出ユニット６８はＦＤＤＡＭＡＳＫがクリアされるとリセットされる。
【０１４１】
したがって、ＦＤデータ長検出ユニット６８は新たなフレームが受信されたかどうかをチェックする（ステップＳ５．２−６）。そうである場合には（つまり新たなフレームが受信された場合には）、新たなＥＮＤＧＥＮ信号が、その新たなフレームの後、ＩＦＳの開始で生成される（ステップＳ５．２−４およびＳ５．２−５）。
【０１４２】
しかしながら、新たなフレームが受信されなかった場合には、ＦＤデータ長検出ユニット６８は、新たなフレームが受信されるまで、ＧＥＮＣＯＭＰがセットされているかどうかをチェックし続ける（ステップＳ５．２−７）。ＧＥＮＣＯＭＰがセットされていない場合には、ＦＤデータ長検出ユニット６８は新たなフレームを求めてチェックし続ける（ステップＳ５．２−７）。一旦新たなフレームが受信されると、ＦＤデータ長検出ユニット６８は、このフレームも通過してしまう（ＩＦＳに達する）まで、ＦＤＤＡＭＡＳＫを保持する。そうでない場合、ＧＥＮＣＯＭＰがＳ５．２−６の後セットされている場合には、ＦＤＤＡＭＡＳＫはクリアされ（ステップＳ５．２−８）、処理は完了される。
【０１４３】
ＲＸ置換部ユニット５２
図１３を参照して、ＲＸ置換部ユニット５２をより詳細に示す。
【０１４４】
ＲＸ置換部ユニット５２は、受信ストリームマルチプレクサ７２と、受信マルチプレクサ切替状態機械７３と、代替データ２１（図４）を生成するための生成部７４の組とを含む。
【０１４５】
生成部７４は、ＩＦＳ／休止生成部７５と、エラーおよびオーバロードフレーム生成部７６と、ＳＯＦおよび調停フィールド生成部７７と、ドミナントｒ１／ｒ０ビット生成部７８と、（データがないことを示す）ＤＬＣフィールド生成部７９と、ＣＲＣフィールド生成部８０と、ＡＣＫおよびＥＯＦフィールド生成部８１とを含む。
【０１４６】
受信マルチプレクサ切替状態機械７３から第１の活性化信号（Ａ１）を受信することに応答して、ＩＦＳ／休止生成部７３は、受信ストリームマルチプレクサ７２にＩＦＳ／休止を与える。第２の活性化信号（Ｓ２）を受信することに応答して、エラーおよびオーバロードフレーム生成部７６は（動作のモードに依って）エラーまたはオーバロードフレームを受信ストリームマルチプレクサ７２に与え、終了すると、受信マルチプレクサ切替状態機械７３に完了信号（Ｃ２）を返す。第３の活性化信号（Ｓ３）を受信することに応答して、ＳＯＦおよび調停フィールド生成部７７はＳＯＦおよび調停フィールドビットを生成し、終了すると、完了信号（Ｃ３）を返す。第４の活性化信号（Ａ４）を受信することに応答して、ドミナントビット生成部７５は適切なドミナントビットｒ１、ｒ０を与える。第５の活性化信号（Ｓ５）を受信することに応答して、ＤＬＣ／データ無し位相信号生成部７９はＤＬＣ／データ無し位相ビットを生成し、終了すると、完了信号（Ｃ５）を返す。
【０１４７】
受信マルチプレクサ切替状態機械７３から第６の活性化信号（Ｓ６）を受信すること、および受信ストリームマルチプレクサ７２からデータビットを受信することに応答して、ＣＲＣフィールド生成部８０は、受信ストリームマルチプレクサ７２にＣＲＣデータを与え、終了すると、受信マルチプレクサ切替状態機械７３に完了信号（Ｃ６）を返す。第７の活性化信号（Ｓ７）を受信することに応答して、ＡＣＫおよびＥＯＦフィールド生成部８１はＡＣＫおよびＥＯＦフィールドを生成し、終了すると、受信マルチプレクサ切替状態機械７３に完了信号（Ｃ７）を返す。
【０１４８】
受信ストリームマルチプレクサ７２
さらに図１３を参照して、受信マルチプレクサ切替状態機械７３から受信される選択信号（ＲＳＴＲＳＥＬ）によって、受信ストリームマルチプレクサ７２は、ＲＸＤ上で受信されたストリームまたは生成部７４のうちの１つの出力のいずれかをＲＲＸＤに転送する。生成部７４の出力がＲＲＸＤに転送される場合には、ローカルＣＡＮコントローラ６（図３）はＣＡＮバス信号ＲＸＤを見ない。したがって、ローカルＣＡＮコントローラ６（図３）はＣＡＮバスから実効的に切断される。
【０１４９】
受信マルチプレクサ切替状態機械７３
状態機械７３は、入力される条件によって、活性化信号Ａ１、Ｓ２、Ｓ３、Ａ４、Ｓ５、Ｓ６、Ｓ７を用いて、適切な生成部７５、７６、７７、７８、７９、８０、８１を活性化し、完了信号Ｃ２、Ｃ３、Ｃ５、Ｃ６、Ｃ７を注視する。
【０１５０】
図４および図１３を参照して、状態機械７３は、ＲＳＴＲＳＥＬを用いて、マルチプレクサ７２がＲＸＤまたは生成部７５、７６、７７、７８、７９、８０、８１からの出力を転送するかどうかを制御する。ＲＳＴＲＳＥＬがセットされると、生成部７５、７６、７７、７８、７９、８０、８１からの出力はＲＲＸＤ上に置かれる。
【０１５１】
ＣＡＮフレーム１３（図３）がＲＲＸＤに転送されると、状態機械７３はＴＱＣＬＫを用いて動作する。
【０１５２】
第１の動作モードにおいて動作する際の状態機械７３の動作をここでより詳細に記載する。
【０１５３】
ＳＯＦＳＹＮＣがセットされ、生成部７５、７６、７７、７８、７９、８０、８１のいずれも現在活性状態でない場合には、状態機械７３はリセットされる。しかしながら、ＳＯＦＳＹＮＣがセットされ、生成部７５、７６、７７、７８、７９、８０、８１が現在活性状態である（たとえば完了信号Ｃ２、Ｃ３、Ｃ５、Ｃ６、Ｃ７の少なくとも１つがセットされているため）場合には、状態機械７３は、生成部７５、７６、７７、７８、７９、８０、８１のすべてが非活性状態になるまでリセットされない。
【０１５４】
ＩＤＥ  ＲＴＲがセットされ、それによって、ＥＤＬフラグが続くことになる旨を示す場合には、ＥＤＬフラグはｒ１／ｒ０ビットによって（つまりドミナント状態において）置換えられる。したがって、ＲＲＸＤ上において見えるようになるどのフレームも、ＣＡＮフレーム、つまり非ＦＤフレームとして印される。
【０１５５】
ＦＤＤＡＭＡＳＫがセットされると、代替フレーム２２がＲＸＸＤ上において生成されるが、それは、０長データフィールドを示すＤＬＣフィールドにＣＲＣ、ＡＣＫ、ＥＯＦおよびＩＦＳフィールドが続くものを付加し、それによって、ＲＸＤ上において受信されるストリームを置換えることによって行なわれる。これらのフィールドが挿入された後ＦＤＤＡＭＡＳＫが依然として活性状態である場合には、バス休止信号が生成され、ＲＲＸＤ上に置かれる。
【０１５６】
信号ＥＮＤＧＥＮがセットされ（それによって信号生成が完了されているはずである旨を示す）場合には、エラーフレームを挿入することによって、どのような進行中のフレーム生成も中止される。
【０１５７】
ローカルＣＡＮコントローラ６（図３）が、ＦＤＤＡＭＡＳＫが活性状態でありかつバス休止信号が現在ＲＲＸＤ上にある間に（つまり代替フレーム２２の生成が完了された後）（ＣＴＸＤＡフラグによってＲＸ置換部５２に信号送信される）ドミナントＳＯＦを送信することによってＴＸＤ上においてフレームを送り始めようと試みる場合には、生成部は、ＲＲＸＤ上において、調停ビットに、０長を示すＤＬＣフィールド、ＣＲＣおよびＡＣＫフィールドが続く競合フレームを生成する。したがって、ローカルＣＡＮコントローラ６（図３）による送信は、調停フィールド中における調停の喪失およびどのような送信エラーも生成されていないことのため、中止される。ＲＸ置換部ユニット５２によって生成される調停フィールドは、ローカルＣＡＮコントローラ６から生ずるどのようなフレームの調停フィールドよりも高い優先度を有する。
【０１５８】
ＦＤＤＡＭＡＳＫが非活性状態であるときには、信号ＲＸＤはＲＲＸＤに転送される。
ＦＤＤＡＭＡＳＫがリセットされ、どのような信号生成も現在進行中でなく、ＥＮＤＧＥＮがセットされている場合には、ＧＥＮＣＯＭＰはセットされる。
【０１５９】
ＦＤＤＡＭＡＳＫがセット状態である間におけるＴＸＤＡ上におけるどのようなバスアクティビティも、別のＳＯＦ、調停フィールドおよび０長データ位相の生成を引起す。その間に、ＥＮＤＧＥＮがセットされＦＤＤＡＭＡＳＫがリセットされる場合には、代替フレーム生成はエラーフレームとともに中止され、ＧＥＮＣＯＭＰはエラーフレーム生成の完了後にセットされる。
【０１６０】
ＣＲＣフィールドを正しく生成するために、ＲＸＤ上において受信されるスタッフィングされていないビットストリームを、ＣＡＮ  ＦＤフレーム１４の調停位相中において考慮する。したがって、ＲＸ置換部５２は、置換えられたＣＡＮ  ＦＤフレームの調停位相中にＲＸＤ上において受信されるすべてのフレーム内容を記録し、任意の付加または生成されたフレームデータ部分を考慮に入れてこのプロセス中にＣＲＣを計算する。
【０１６１】
ＲＸ置換部５２の機能は、ＲＸＤを選択するようＲＸマルチプレクサ５３（図５）を用いることによって抑制され得る。これはＳＰＩインターフェイス６０（図５）を用いてセットされ得る。
【０１６２】
第２のモードにおいて動作する際の状態機械７３の動作をここで詳細に説明する。
ＳＯＦＳＹＮＣがセットされ、生成部７５、７６、７７、７８、７９、８０、８１のいずれも現在活性状態でない場合には、状態機械７３はリセットされる。しかしながら、ＳＯＦＳＹＮＣがセットされ、生成部７５、７６、７７、７８、７９、８０、８１が現在活性状態である（たとえば完了信号Ｃ２、Ｃ３、Ｃ５、Ｃ６、Ｃ７の少なくとも１つがセットされるため）場合には、状態機械７３は、生成部７５、７６、７７、７８、７９、８０、８１のすべてが非活性状態になるまでリセットされない。
【０１６３】
ＩＤＥ−ＲＴＲがセットされ、それによって、ＥＤＬフラグが後に続くことになる旨が示される場合には、ＥＤＬフラグはｒ１／ｒ０ビットによって（つまりドミナント状態において）置換えられる。したがって、ＲＲＸＤ上において見えるようになるどのフレームも、ＣＡＮフレーム、つまり非ＦＤフレームとして印される。
【０１６４】
ＦＤＤＡＭＡＳＫが活性化されると、０長データフィールドを示すＤＬＣフィールド、ＣＲＣフィールド、ＡＣＫフィールド、ＥＯＦフィールドおよびＩＦＳはＲＲＸＤ上に置かれ、それによって、ＲＸＤ上で受信されるストリームを代替フレーム２２によって置換える。フレームがＲＲＸＤ上において挿入された後ＦＤＤＡＭＡＳＫが依然として活性状態にある場合には、オーバロードフレームをＲＲＸＤ上に繰返し置いて、ローカルＣＡＮコントローラ６（図３）によるフレームを送信しようとするいかなる試みも抑制する。
【０１６５】
ＣＲＣフィールドを正しく生成するために、スタッフィングされていないビットストリームＲＸＤを、ＣＡＮ  ＦＤフレームの調停位相に対して考慮する。したがって、ＲＸ置換部５２は、置換えられたＣＡＮ  ＦＤフレームの調停位相においてＲＸＤでのすべてのフレーム内容を記録し、付加または生成されたフレームデータ部分も考慮に入れてこのプロセス中にＣＲＣを計算する。
【０１６６】
このブロックの機能は、ＳＰＩインターフェイスによって直接入力されるＲＸＤを選択するようＲＸ  ＭＵＸ機能を用いることによって抑制され得る。
【０１６７】
この動作モードでは、ＣＴＸＤＡは用いられず、なぜならば、それは、送信しようとするローカルＣＡＮコントローラ６（図３）による試みを示すからである。しかしながら、そのような送信はオーバロードフレームによって抑制される。
【０１６８】
ＴＸゲーティング／ドミナント抑制ユニット５３
図１４を参照して、ＴＸゲーティング／ドミナント抑制ユニット５３をより詳細に示す。
【０１６９】
ユニット５３は、ＳＰＩインターフェイス１６１からの活性化フラグ（ＡＣＴＩＶＡＴＥ）と、送信ストリームマルチプレクサ８２と、バス休止信号生成部８３と、送信マルチプレクサ切替状態機械８４と、インバータ８５とを含む。
【０１７０】
送信ストリームマルチプレクサ８２
送信マルチプレクサ切替状態機械８４からの選択信号（ＴＳＴＲＳＥＬ）によって、送信ストリームマルチプレクサ８２はＣＴＸＤまたはバス休止信号（リセッシブレベルである）のいずれかをＣＴＸＤＳに転送する。
【０１７１】
送信マルチプレクサ切替状態機械８４は、信号ＡＣＴＩＶＡＴＥを用いる構成によって活性化および非活性化され得る。
【０１７２】
送信マルチプレクサ切替状態機械８４
ＦＤＤＡＭＡＳＫがセットされるとすぐに、状態機械８４はＴＳＴＲＳＥＬをセットし、それによって、バス休止信号（リセッシブである）をＣＴＸＤＳのための出力として選択する。ＧＥＮＣＯＭＰが内部信号生成の完了を示すまで、ＴＳＴＲＳＥＬはセットされたままであり、リセッシブバス休止信号は選択されたままである。
【０１７３】
実施例
図１５〜図１９は動作中のＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータ１５（図３）の例を示す。
【０１７４】
図１５は、第１のモードで動作するＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータ１５（図５）によるＣＡＮ  ＦＤフレーム１４の処理を示す。ＣＡＮ  ＦＤフレーム１４は短く、つまり、それを置換えるよう用いられるＣＡＮ代替フレーム２２よりも短い。
【０１７５】
図１５に示されるように、ＣＡＮ  ＦＤフレーム１４はＲＸＤ上で受信され、ＳＯＦフィールド、調停フィールド、ＥＤＬおよびＢＲＳビット、制御フィールドの残りの部分、データフィールドおよびＣＲＣフィールド、ＡＣＫフィールド、ならびにＥＯＦフィールドを含む。フレーム１４の後に続くのは、ＩＦＳ、バス休止、ならびに次いでＳＯＦ、調停フィールド、制御フィールド、データフィールドおよびＣＲＣフィールド、およびＡＣＫフィールドを含む（標準）ＣＡＮ２．０Ｂフレームである。
【０１７６】
図５、図１５を参照して、ＲＸ置換部５２は、ＲＲＸＤにＳＯＦおよび調停フィールドを送信し、それらは、ＲＸマルチプレクサ５３を通ってＣＲＸＤに達する。ＦＤ検出ユニット５１はＩＤＥ−ＲＴＲをセットすることによってＥＤＬビットを信号送信し、次いで、ＦＤＤＡＭＡＳＫをセットする。
【０１７７】
ＲＸ置換部５２はＲＳＴＲＳＥＬ（図１３）をセットし、代替ビット２１の生成を開始する。ＲＸ置換部５２はＩＤＥ（ベースフォーマットフレームの場合）またはリザーブドビットｒ１（拡張フォーマットフレームの場合）、リザーブドビットｒ０、およびゼロ長データフィールドを示すＤＬＣビットを生成し、それらは、ＲＲＸＤ上に置かれ、ＲＸマルチプレクサ５３を通過してＣＲＸＤに達する。ＩＤＥ／リザーブドビットｒ０は、明瞭にするため、示されない。
【０１７８】
ＦＤ検出ユニット５１は、ＣＡＮ  ＦＤ１４の終わりが接近している（つまり、それはＩＦＳの開始から２０ビット離れている）と判断し、したがって、ＥＮＤＧＥＮをセットする。ＥＮＤＧＥＮの活性化はＲＸ置換部５２にその代替フレーム生成を停止させ、エラーフレームおよびエラーのデリミタを生成させ、それらは、ＲＲＸＤ上に置かれ、ＲＸマルチプレクサ５３を通過してＣＲＸＤに達する。
【０１７９】
ＦＤ検出ユニット５１は、ＣＡＮ  ＦＤフレーム１４が通過した後、ＦＤＤＡＭＡＳＫを非活性化する。ＲＸ置換部５２は、エラーフレームを完了した後、ＲＳＴＲＳＥＬ（図１３）をリセットし、ＧＥＮＣＯＭＰをセットすることにより、代替ビット２１の生成が停止したと肯定応答する。
【０１８０】
図１５に示されるように、ＣＡＮフレームがその後ＲＸＤ上で受信される。ＲＸ置換部５２は、ＲＲＸＤにＣＡＮフレームを送信し、それは、ＲＸマルチプレクサ５３を通ってＣＲＸＤに達する。
【０１８１】
図１６は、第１のモードで動作するＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータ１５（図５）によるＣＡＮ  ＦＤフレーム１４の処理を示す。ＣＡＮ  ＦＤフレーム１４は長く、つまり、それを置換えるよう用いられるＣＡＮ代替フレーム２２よりも長い。
【０１８２】
図１６に示されるように、ＣＡＮ  ＦＤフレーム１４はＲＸＤ上で受信され、ＳＯＦフィールド、調停フィールド、ＥＤＬおよびＢＲＳビット、制御フィールドの残りの部分、データフィールドおよびＣＲＣフィールド、ＡＣＫフィールド、ならびにＥＯＦフィールドを含む。フレーム１４の後にはＩＦＳが続く。
【０１８３】
図５、図１６を参照して、ＲＸ置換部５２は、ＲＲＸＤにＳＯＦおよび調停フィールドを送信し、それらは、ＲＸマルチプレクサ５３を通ってＣＲＸＤに達する。ＦＤ検出ユニット５１はＩＤＥ−ＲＴＲをセットすることによってＥＤＬビットを信号送信し、次いで、ＦＤＤＡＭＡＳＫをセットする。
【０１８４】
ＲＸ置換部５２はＲＳＴＲＳＥＬ（図１３）をセットし、代替ビット２１の生成を開始する。ＲＸ置換部５２はＩＤＥ（ベースフォーマットフレームの場合）またはリザーブドビットｒ１（拡張フォーマットフレームの場合）、リザーブドビットｒ０、およびゼロ長データフィールドを示すＤＬＣビット、次いでＣＲＣ、ＡＣＫ、ＥＯＦおよびＩＦＳデータ、次いで休止を生成し、それらは、ＲＲＸＤ上に置かれ、ＲＸマルチプレクサ５３を通過してＣＲＸＤに達し、それらは、ＲＲＸＤ上に置かれ、ＲＸマルチプレクサ５３を通過してＣＲＸＤに達する。ＩＤＥ／リザーブドビットｒ０は、明瞭にするため、示されない。
【０１８５】
ＲＸ置換部５２は、ＦＤＤＡＭＡＳＫがセットされているかどうかを判断する。ＦＤＤＡＭＡＳＫが依然としてセットされており、ローカルＣＡＮコントローラ６（図３）がフレーム（ＳＯＦによってセットされたＣＴＸＤＡ）を送リ始めているので、ＲＸ置換部５２は代替フレーム２２のために代替ビット２１を生成し続ける。ＲＸ置換部５２は、ローカルＣＡＮコントローラ６（図３）が調停を失うように、ＳＯＦおよび調停フィールドを生成する。
【０１８６】
ＦＤ検出ユニット５１は、ＣＡＮ  ＦＤ１４の終わりが接近している（つまり、それはＩＦＳの開始から２０ビット離れている）と判断し、したがって、ＥＮＤＧＥＮをセットする。ＥＮＤＧＥＮの活性化はＲＸ置換部５２にその代替フレーム２２生成を中止させ、エラーフレームおよびエラーのデリミタを生成させ、それらは、ＲＲＸＤ上に置かれ、ＲＸマルチプレクサ５３を通過してＣＲＸＤに達する。
【０１８７】
ＣＡＮ  ＦＤフレーム１４が完了して、ＣＡＮバスが休止状態になった後、ＦＤ検出ユニット５１はＦＤＤＡＭＡＳＫを非活性化する。ＲＸ置換部５２はＲＳＴＲＳＥＬ（図１３）をリセットし、ＧＥＮＣＯＭＰをセットすることにより、デリミタを含むエラーフレームの完了で、代替ビット２１の生成が停止した、と肯定応答する。
【０１８８】
図１７は、ローカルコントローラ６（図３）が第１のモードで動作しているときにローカルコントローラ６（図３）が代替データのストリームを終わりに向かって送信し始めようとするときにＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータ１５（図５）がどのように反応する化を示す。
【０１８９】
図１７に示されるように、ローカルＣＡＮコントローラ６（図３）は、ＲＸ置換部５２が代替データ２１を生成している一方で、ＣＴＸＤ上で送信し始めようとする。
【０１９０】
図５および図１７を参照して、ＲＸ置換部５２が代替データ２１を生成している一方で、ローカルＣＡＮコントローラ６（図３）がＣＴＸＤ上で送信し始めようとする場合には、たとえＣＡＮ  ＦＤフレーム１４が終了したことをＦＤＤＡＭＡＳＫが示しても、ＲＸ置換部５２はＧＥＮＣＯＭＰを生成しない。したがって、代替フレーム２２生成は継続する。
【０１９１】
他のフレーム（それがＣＡＮフレームまたはＣＡＮ  ＦＤフレームである場合）がバス（つまりＲＸＤ）上に現れる場合には、ＲＸ置換部５２は代替フレーム２２を生成し続ける。これは、ＦＤ検出ユニット５２がＥＮＤＧＥＮ（図示せず）に応答してＧＥＮＣＯＭＰを受信しなかったからであり、したがって、それは再びＦＤＤＡＭＡＳＫをセットする。
【０１９２】
ローカルＣＡＮコントローラ６（図３）が再びフレームを送ることを試みる場合には、これは生成されるべき他の代替フレーム２２をトリガする。ＦＤ検出ユニット５１がＥＮＤＧＥＮをもう一度セットするのは、バス上のフレームがその終わりに到達する場合である。代替フレーム生成はエラーフレームおよびエラーフレームデリミタで中止される。
【０１９３】
ローカルコントローラ６（図３）は、そのデリミタを含むエラーフレームが通過することを可能にするはずである。このフレームはバス上におけるフレームの終わりに揃っているので、次いで、ＦＤＤＡＭＡＳＫおよびＧＥＮＣＯＭＰがクリアされた後、ローカルコントローラ６（図３）はついにその待ち状態のフレームを送ってもよい。ＲＳＴＲＳＥＬはクリアされ、したがって、このフレームはＣＴＸＤに到達し、ＲＸＤ上でフィードバックされる。
【０１９４】
図１８は、第２のモードで動作するＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータ１５（図５）によるＣＡＮ  ＦＤフレーム１４の処理を示す。ＣＡＮ  ＦＤフレーム１４は短く、つまり、それを置換えるよう用いられるＣＡＮ代替フレーム２２よりも短い。
【０１９５】
図１８に示されるように、ＣＡＮ  ＦＤフレーム１４はＲＸＤ上で受信され、ＳＯＦフィールド、調停フィールド、ＥＤＬおよびＢＲＳビット、制御フィールドの残りの部分、データフィールドおよびＣＲＣフィールド、ＡＣＫフィールド、ならびにＥＯＦフィールドを含む。フレーム１４の後に続くのは、ＩＦＳ、次いでＳＯＦ、調停フィールド、制御フィールド、データフィールドおよびＣＲＣフィールド、ＡＣＫフィールドならびにＥＯＦフィールド、そのあとにＩＦＳが続き、その後、バスは休止状態になる。
【０１９６】
図５、図１８を参照して、ＲＸ置換部５２は、ＲＲＸＤにＳＯＦおよび調停フィールドを送信し、それらは、ＲＸマルチプレクサ５３を通ってＣＲＸＤに達する。ＦＤ検出ユニット５１はＩＤＥ−ＲＴＲをセットすることによってＥＤＬビットを信号送信し、次いで、ＦＤＤＡＭＡＳＫをセットする。
【０１９７】
ＲＸ置換部５２はＲＳＴＲＳＥＬ（図１３）をセットし、代替ビット２１の生成を開始する。ＲＸ置換部５２はＩＤＥ（ベースフォーマットフレームの場合）またはリザーブドビットｒ１（拡張フォーマットフレームの場合）、リザーブドビットｒ０、およびゼロ長データフィールドを示すＤＬＣビット、 次いでＣＲＣ、ＡＣＫ、ＥＯＦおよびＩＦＳデータを生成し、それらは、ＲＲＸＤ上に置かれ、ＲＸマルチプレクサ５３を通過してＣＲＸＤに達し、それらは、ＲＲＸＤ上に置かれ、ＲＸマルチプレクサ５３を通過してＣＲＸＤに達する。ＩＤＥ／リザーブドビットｒ０は、明瞭にするため、示されない。
【０１９８】
ＦＤ検出ユニット５１は、ＩＦＳが到達されたと判断し、したがって、ＥＮＤＧＥＮをセットする。しかしながら、ＲＸ置換部５２はこの指示を無視し、なぜならば、それは信号生成を完了していない、つまり、代替フレーム生成が依然として進行中であり、オーバロードフレーム生成はまだ開始されていないからである。ＦＤ検出ユニット５１は、他のＳＯＦがその間に受信されたかどうかをチェックする。ＳＯＦは受信されており、ＧＥＮＣＯＭＰはセットされていないので、ＦＤ検出ユニット５１はＦＤＤＡＭＡＳＫをリセットしない。
【０１９９】
ＲＸ置換部５２はＥＯＦおよびＩＦＳデータを含む代替データ２１の生成を完了する。その後、ＲＸ置換部５２はオーバロードフレームおよびオーバロードデリミタを生成し、それらはＲＲＸＤ上に置かれる。この時点で、ＲＸ置換部５２は、ＥＮＤＧＥＮ信号を受入れて、オーバロードフレーム生成を停止し、次いで、ＧＥＮＣＯＭＰ信号で応答することができる。
【０２００】
新たなフレームが受信される場合には、ＦＤ検出ユニット５１は、ＩＦＳが到達されていると判断して、ＥＮＤＧＥＮをセットする。ＲＸ置換部５２がＧＥＮＣＯＭＰで応答した後、ＦＤ検出ユニット５１はＦＤＤＡＭＡＳＫをリセットする。ＦＤＤＡＭＡＳＫの非活性化で、ＲＸ置換部５２はＲＳＴＲＳＥＬ（図１３）をリセットする。
【０２０１】
図１９は、第２のモードで動作するＣＡＮ  ＦＤ／ＣＡＮ  ＦＤ受動コンバータ１５（図５）によるＣＡＮ  ＦＤフレーム１４の処理を示す。ＣＡＮ  ＦＤフレーム１４は長く、つまり、それを置換えるよう用いられる代替フレーム２２よりも長い。
【０２０２】
図１９に示されるように、ＣＡＮ  ＦＤフレーム１４はＲＸＤ上で受信され、ＳＯＦフィールド、調停フィールド、ＥＤＬおよびＢＲＳビット、制御フィールドの残りの部分、データフィールドおよびＣＲＣフィールド、ＡＣＫフィールド、ならびにＥＯＦフィールドを含む。フレーム１４の後にはＩＦＳが続き、その後バスは休止状態になる。
【０２０３】
図５、図１９を参照して、ＲＸ置換部５２は、ＲＲＸＤにＳＯＦおよび調停フィールドを送信し、それらは、ＲＸマルチプレクサ５３を通ってＣＲＸＤに達する。ＦＤ検出ユニット５１はＩＤＥ−ＲＴＲをセットすることによってＥＤＬビットを信号送信し、次いで、ＦＤＤＡＭＡＳＫをセットする。
【０２０４】
ＲＸ置換部５２はＲＳＴＲＳＥＬ（図１３）をセットし、代替ビット２１の生成を開始する。ＲＸ置換部５２はＩＤＥ（ベースフォーマットフレームの場合）またはリザーブドビットｒ１（拡張フォーマットフレームの場合）、リザーブドビットｒ０、およびゼロ長データフィールドを示すＤＬＣビット、 次いでＣＲＣ、ＡＣＫ、ＥＯＦおよびＩＦＳデータ、次いで休止を生成し、それらは、ＲＲＸＤ上に置かれ、ＲＸマルチプレクサ５３を通過してＣＲＸＤに達し、それらは、ＲＲＸＤ上に置かれ、ＲＸマルチプレクサ５３を通過してＣＲＸＤに達する。ＩＤＥ／リザーブドビットｒ０は、明瞭にするため、示されない。
【０２０５】
その後、ＦＤＤＡＭＡＳＫが活性状態で、ＥＮＤＧＥＮが非活性状態である間、ＲＸ置換部５２は、オーバロードフレームを送り始め、それを継続して、ローカルＣＡＮコントローラ６（図３）がメッセージを送り始めようとするのを防止する。
【０２０６】
ＦＤ検出ユニット５１がＩＦＳ（つまり、ＣＡＮ  ＦＤフレームが通過したこと）を認識すると、それはＥＮＤＧＥＮを活性化する。代替フレーム生成は既に終了しており、オーバロードフレーム生成は活性状態である。したがって、ＲＸ置換部５２は現在のオーバロードフレームおよびオーバロードデリミタの生成の完了後にＥＮＤＧＥＮを認識する。次いで、完了を確認するために、ＲＸ置換部５２はＧＥＮＣＯＭＰ信号をセットする。したがって、ＦＤ検出ユニットはＦＤＤＡＭＡＳＫをクリアする。
【０２０７】
図１５〜図１８に示される例では、ＣＡＮ  ＦＤフレームはベースフォーマットまたは拡張フォーマットにあり得る。ＣＡＮ  ＦＤフレームがベースフォーマットを有する場合には、ベースフォーマットを有するＣＡＮフレームがそれと置き換わり得る。同様に、ＣＡＮ  ＦＤフレームが拡張フォーマットを有する場合には、拡張フォーマットを有するＣＡＮフレームがそれと置き換わるよう用いられ得る。１つより多いＣＡＮ代替フレームが生成される場合、ＣＡＮ代替フレームはすべて同じフォーマット、つまりベースフォーマットまたは拡張フォーマットである必要はない。
【０２０８】
多数の修正が上に記載された実施の形態になされてもよいことが十分に理解される。
たとえば、上位レベルの機能ブロック（ＦＤ検出ユニットおよびＲＸ置換部などのような）は、より下位レベルの機能ブロックに異なるように細分されてもよい。さらなる機能ブロックが設けられてもよい。
【図１】
0006486331.tif 000002
【図２】
0006486331.tif 000003
【図３】
0006486331.tif 000004
【図４】
0006486331.tif 000005
【図５】
0006486331.tif 000006
【図６】
0006486331.tif 000007
【図７】
0006486331.tif 000008
【図８】
0006486331.tif 000009
【図９】
0006486331.tif 000010
【図１０】
0006486331.tif 000011
【図１１Ａ】
0006486331.tif 000012
【図１１Ｂ】
0006486331.tif 000013
【図１２】
0006486331.tif 000014
【図１３】
0006486331.tif 000015
【図１４】
0006486331.tif 000016
【図１５】
0006486331.tif 000017
【図１６】
0006486331.tif 000018
【図１７】
0006486331.tif 000019
【図１８】
0006486331.tif 000020
【図１９】
0006486331.tif 000021