(57)【要約】少なくとも１つの通信バス上での通信のための通信制御器（２０）である。各通信バスは、データ・ストリームを通信プロトコルに従って転送する。当該通信制御器は、少なくとも１つの通信バスに結合されて、データ・ストリームの変換を実行するためプログラム可能であるよう適合されている通信ハンドラ（１７）を備える。通信制御器は、ビット・レベルでプログラム可能であり、ハードウエアの変更無しに、既存システムにおける通信プロトコルの更新／変更を可能にする。それは更に、幾つかのバス／通信プロトコルに対して１種類の通信制御器を用いることを可能にする。
2004534488.tif 000002
【特許請求の範囲】
【請求項１】
各通信バスがデータ・ストリームを通信プロトコルに従って転送する、少なくとも１つの通信バス上での通信のための通信制御器において、
少なくとも１つの通信バスに結合されて、データ・ストリームの変換を実行するためプログラム可能であるよう適合されている通信ハンドラを備える通信制御器。
【請求項２】
前記通信ハンドラがプログラム可能な復号器及び／又は符号器を備える請求項１記載の通信制御器。
【請求項３】
前記通信ハンドラが少なくとも１つのプログラム可能なビット・エンジンを備える請求項１記載の通信制御器。
【請求項４】
前記通信ハンドラがプログラム可能なビット受信機及び／又はプログラム可能なビット送信機を備える請求項１記載の通信制御器。
【請求項５】
前記通信ハンドラがプログラム可能なパターン検出器を備える請求項１記載の通信制御器。
【請求項６】
前記通信ハンドラが、ビット・レベルでのデータ・ストリームの変換を実行するためプログラム可能であるよう適合されている請求項１記載の通信制御器。
【請求項７】
前記通信ハンドラを制御する通信制御ユニットを備える請求項１から６のいずれか一項に記載の通信制御器。
【請求項８】
幾つかの通信プロトコルに従ってデータ・ストリームの変換を実行するための命令を格納するメモリを備える請求項１から７のいずれか一項に記載の通信制御器。
【請求項９】
デバッグ・ユニットを備える請求項１から８のいずれか一項に記載の通信制御器。
【請求項１０】
カスタム・プロトコルに従ってデータ・ストリームの変換を実行するための命令を迅速にローディングするための周辺チャネル接続を備える請求項１から９のいずれか一項に記載の通信制御器。
【請求項１１】
請求項１から１０のいずれか一項に記載の通信制御器を備えるマイクロコントローラ装置。
【請求項１２】
各通信バスがデータ・ストリームをそれぞれの通信プロトコルに従って転送する、幾つかの通信バス上で同時に通信するよう適合されている請求項１１記載のマイクロコントローラ装置。
【請求項１３】
各通信バスがデータ・ストリームを通信プロトコルに従って転送する、少なくとも１つの通信バス上での通信のための通信制御器であって、前記少なくとも１つの通信バスに結合されて、データ・ストリームの変換を実行するためプログラム可能であるよう適合されている通信ハンドラを備える前記通信制御器を用いる方法において、
ａ．  通信プロトコルを選択するステップと、
ｂ．  データ・ストリームの変換を前記の選択された通信プロトコルに従って実行するための命令を用いて前記通信ハンドラをプログラムするステップと、
ｃ．  データ・ストリームのデータを表す電気信号を受信するステップと、
ｄ．  前記データ・ストリームのデータを表す電気信号を前記通信ハンドラにより前記のプログラムされた命令に従って変換するステップと
を備える方法。
【請求項１４】
前記通信ハンドラが前に選択された通信プロトコルと異なる再選択された通信プロトコルに従ってデータ・ストリームの変換を実行するのを可能にするための命令を用いて前記通信ハンドラを再プログラムするステップを更に備える請求項１３記載の方法。
【請求項１５】
前記通信バス上で受信された電圧レベル間の遷移を有する電圧信号から論理ビットを表す電気信号を発生し、及び／又は論理ビットを表す電気信号から発生された電圧レベル間の遷移を有する電圧信号を前記通信バス上で前記通信プロトコルに従って送るステップを更に備える請求項１３又は１４記載の方法。
【請求項１６】
前記データ・ストリームのデータを復号／符号化するステップを更に備える請求項１３から１５のいずれか一項に記載の方法。
【請求項１７】
前記データ・ストリームのデータの中の事前定義されたパターンを検出するステップを更に備える請求項１３から１６のいずれか一項に記載の方法。
【請求項１８】
前記通信バス上で直列に受信された論理ビットのデータ・フィールドを識別し且つ並列データとして与え、及び／又は並列データとして与えられた論理ビットのグループを前記通信バス上で直列に送るステップを更に備える請求項１３から１７のいずれか一項に記載の方法。
【請求項１９】
論理ビットのデータ・フィールドからメッセージを表すデータ・フレームを識別して与え、及び／又はメッセージを表すデータ・フレームから論理ビットのフィールドを識別して与えるステップを更に備える請求項１８記載の方法。
【請求項２０】
マイクロコントローラ内の通信制御器により実行される請求項１３から１９のいずれか一項に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
［発明の分野］
本発明は、幾つかの通信ユニットを有する通信ネットワーク内で転送された情報を通信プロトコルに従って変換する装置及び方法に関する。
【０００２】
［発明の背景］
通信ネットワークにおいて、情報は、少なくとも１つの通信バスにより接続されている幾つかの通信ユニット間で転送される。そのようなチャネルは通常、データ・ストリームがその上で或る通信プロトコルに従って転送される直列通信バスである。特に、自動車産業において今日では、幾つかの異なった直列チャネルが採用されており、それらの一部は、更に同じ通信ユニットに接続されることができる。異なる通信ユニット間で交換されるべき情報は、特別な意味を有する論理ビット及びバイトの形式である。通信ユニットは、その情報にこの意味に関して作用する。他方、通信ネットワーク内で、安全な通信が可能であるように情報ビットを電気形式で表す電気信号が転送される。通信制御器は、時間依存性を有する電気信号を、論理ビットを表す電気状態に変換する装置である。従来技術による通信制御器は、採用されている１つ又は複数の通信プロトコルに関してハードウエア特有である。
【０００３】
１つの制御器が異なるチャネル上で異なるプロトコルを用いて通信することになる、自動車産業内におけるような状況においては、半導体製造業者が異なったチャネルのため異なる通信制御器を提供することは１つの負担である。そのような通信制御器はまたマイクロコントローラの一部である可能性があり、そしてこの場合、同じマイクロコントローラ処理ユニット及び異なった通信制御器を備える１組のマイクロコントローラを提供しなければならない。この複数のバージョンがマイクロコントローラを不必要に高価にしている。更に、プロトコルの詳細が極めて頻繁に変わり、そのため実際のプロトコル・バージョンに従ってハードウエアを適合させることが必要になるであろう。
【０００４】
多くの既存の又は新しい通信プロトコルにかなうことができ、且つ通信プロトコルの変更に適応することができる通信制御器に対する必要性が存在する。
【０００５】
［好適な実施形態の詳細な説明］
本発明の利点は、通信プロトコルからハードウエアの上で独立しており、且つ幾つかの通信プロトコルにかなうようソフトウエアにより修正することができる通信制御器を提供することである。本発明の更なる利点は、本発明に従った通信制御器が将来の通信プロトコルに適合されることができることである。本発明に従った通信制御器を採用するマイクロコントローラ装置は、現在のマイクロコントローラ装置より非常に高い計算能力及び／又はより少ないエネルギ消費を有することができる。それは、より大きな計算仕事量が通信制御器により処理され、且つマイクロコントローラの中央処理装置に対して他のタスクのためより多くの時間を残すからである。本発明の別の利点は、通信制御器の通信ハンドラを、データ・ストリームをビット・レベルで変換するようプログラムすることができることである。
【０００６】
本発明の詳細は、自動車産業のＣＡＮ通信プロトコル標準に言及した実施形態に関して説明されるであろう。他の通信プロトコルは異なる詳細を有し得るが、しかし当業者は特定の改造を容易に行うことができるであろう。直列通信バスは、データ情報が直列に到着し、そして単線型バス、２線型バス、又は追加の制御ラインを備えるバスのような異なる実現化を含む特徴を有する。
【０００７】
図１は、図１Ａにおける１つの直列バスのための、又は図１Ｂにおける幾つかの直列バスのための、本発明に従った非常に単純な通信制御器を示す。図１Ａは、データ・ストリームを通信プロトコルに従って転送する直列通信バス１２上での通信のための通信制御器１０を示す。通信制御器１０は通信ハンドラ１６を備え、当該通信ハンドラ１６は、データ・ストリームを、選択された通信プロトコルに従って変換するのを実行するよう適合されている。より詳細には、通信ハンドラ１６は、異なるプロトコルに従って、直列通信バス１２のデータ・ストリームを変換するようプログラムされるチャネル・ハンドラ１８を備える。チャネル・ハンドラ１８は、並列外部バス３０に結合されている。チャネル・ハンドラ１８は更に命令バス１９に結合されており、当該命令バス１９は通信制御器１０の外部に延長している。
【０００８】
通信プロトコルに特有のプログラム命令は、命令バス１９を介して外部から直接に通信ハンドラ１６のチャネル・ハンドラ１８の中に迅速にロードされることができる。プログラム命令は、恒久的又は非恒久的メモリ／レジスタに格納されることができる。
【０００９】
直列通信バス１２上で通信制御器１０に到着する直列データ・ストリームは典型的には、フランク（ｆｌａｎｋ）上の２つの電圧レベル間で変化する時間依存の電圧信号であり、そこにおいてフランク同士間の時間間隔は、情報を符号化された形式で実際の通信プロトコルに従って含む。フランク同士間の時間間隔はただ大まかに定義される。それは、それらの時間間隔が、通信プロトコル標準により与えられる境界内で異なるのを許されている個々の内部クロックを有する異なる通信ユニットにより発生されるからである。チャネル・ハンドラ１８は、時間依存の電圧信号を走査し、そして情報の論理ビットを、実際の通信プロトコルに特有のプログラム命令に従って識別する。チャネル・ハンドラ１８は更に、データ・ビット、通常バイトの論理的に関連するグループを識別し、そしてこれらを並列外部バス３０に転送する。
【００１０】
並列外部チャネル３０上の通信制御器１０に到着する並列データ・ストリームは、チャネル・ハンドラ１８により転送される。このチャネル・ハンドラ１８は、実際の通信プロトコルに特有のプログラム命令に従ってデータ・ストリームから時間依存の電圧信号を発生し且つそれを直列通信バス１２に印加する。従って、直列通信バス１２上に置かれた信号は、実際の通信プロトコルに準拠している。
【００１１】
図１Ｂは、データ・ストリームを通信プロトコルに従って転送する、直列通信バス１２、１４のそれぞれの上での通信のための通信制御器２０を示す。通信制御器１０は通信ハンドラ１７を備え、当該通信ハンドラ１７は、選択された通信プロトコルに従ってデータ・ストリームの変換を実行するためプログラム可能であるよう適合されている。より詳細には、通信ハンドラ１７は、異なるプロトコルに従って直列通信バス１２、１４のそれぞれのデータ・ストリームを変換するようプログラムされているチャネル・ハンドラ２２、２４を備える。通信制御器１０は更に、チャネル・ハンドラ２２、２４に内部バス２８により結合され且つ並列外部バス３０に結合されているデータＩ／Ｏインターフェース２６を有する。
【００１２】
同一の参照番号１２及び３０を有するバスは、図１Ａ及び図１Ｂの両方で同一である。通信ハンドラ１６と通信ハンドラ１７との間の１つの相違は、後者が直列通信バス１２、１４それぞれの上でデータを同時に転送することができる２つのチャネル・ハンドラ２２、２４を有することである。データＩ／Ｏインターフェース２６は、内部バス２８へのアクセスを直列通信バス１２、１４のうちの１つに一時に許可し、それにより並列外部バス３０上のデータは、直列通信バス１２、１４のうちの正しい方に対して、データの流れの任意の方向で割り当てられる。データは、必要ならば一時的にバッファされることができる。通信ハンドラ１６と通信ハンドラ１７との間の別の相違は、通信ハンドラ１７がその命令を並列外部バス３０からデータＩ／Ｏインターフェース２６及び内部バス２８を介して獲得することである。
【００１３】
図２は、本発明に従った典型的な通信制御器に採用されているチャネル・ハンドラ４０を概略的に示す。チャネル・ハンドラ４０は、受信セクションにおいて、外部直列バス・ラインＲｘに結合されたビット受信機４２、当該ビット受信機４２に結合された復号器４４、当該復号器４４及び内部並列バス４８に結合されたビット・エンジンＲｘ４６、及びビット受信機４２、復号器４４及びビット・エンジンＲｘ４６に結合されたパターン検出器５０を備える。チャネル・ハンドラ４０は、送信セクションにおいて、内部並列バス４８及びビット・エンジンＲｘ４６に結合されたビット・エンジンＴｘ５２、当該ビット・エンジンＴｘ５２に結合された符号器５４、及び当該符号器５４及び外部直列バス・ラインＴｘに結合されたビット送信機５６を含む。チャネル・ハンドラ４０は更に、ビット受信機４２及びビット送信機５６に結合された比較ユニット５８を備える。更なる制御ラインは単純化の理由で省略されている。
【００１４】
チャネル・ハンドラ４０は次のように動作する。通信バス上の直列データ・ストリームは、外部直列バス・ラインＲｘに到着する。通信バスと外部直列バス・ラインＲｘとの間に、通常、到来データを送出データから分離して、通信制御器１０を高電圧ピークから保護するライン・インターフェース（図示せず）が存在する。そのようなライン・インターフェースはまた、光バスを用いる場合光信号と電気信号との間での変換を実行することができる。Ｒｘに到着する直列データ・ストリームは典型的には、フランク上で２つの電圧レベル間で変化する時間依存の電圧信号である。チャネル・ハンドラ４０のビット受信機４２は、プログラム可能であり、そしてＲｘにおける時間依存の電圧信号を走査して、実際の通信プロトコルに特有のプログラム命令に従って情報の論理ビットを識別する。ビット受信機４２は、ライン・インターフェースからのビットをサンプリングすることができる単純な非同期／同期受信機である。これは、内部ボー・レート発生器又は専用クロック・ライン（図示せず）を用いることにより行われることができる。非同期モードにおいて、装置はまた、データ・ライン遷移に関してハード又はソフトの同期化を行うことができる。どの遷移において同期化するかの判断は、ビット受信機４２の代わりにビット・エンジンＲｘ４６により行われることができる。ビット受信機４２の出力は、サンプリングされたビットを含むクロックされた直列ビット・ストリームである。矢印は情報の流れを示す。
【００１５】
復号器４４は、ここでは、ＮＲＺＩマーク又はビット・スタッフ化のような様々な普及しているコーディング・スキームを復号するようプログラムされることができるプログラム可能なモジュールである。当該プログラム可能なモジュールの入力及び出力は、クロックされた直列ビット・ストリームであり、そして出力は、復号された直列ビット・ストリームである。
【００１６】
パターン検出器５０は、プリアンブル又はフレーム開始検出器であることができ、そしてフレーム・プリアンブル又はフレーム開始マーカを検出することを担当している。
ビット・エンジンＲｘ４６は、クロックされた直列ビット・ストリームを、プロトコルにより定義された位置における、事前定義された論理的意味のデータ・フィールドに変換することを担当している。そのビット・エンジンＲｘ４６は、情報ライン６０を介して与えられるパターン検出器５０のプリアンブル又はフレーム開始情報を用いる。ビット・エンジンＲｘ４６はまた、ある一定のバス条件及びエラーに反応する。データ・フィールドは、通信制御器の内部並列バス４８上に出力される。
【００１７】
並列データは、内部並列バス４８上でビット・エンジンＴｘ５２に到着する。ビット・エンジンＴｘ５２は、並列データをクロックされた直列ビット・ストリームに変換する。
符号器５４は、ここでは、ＮＲＺＩマーク又はビット・スタッフ化のような普及しているコーディング・スキームを用いて、クロックされた直列ビット・ストリームを符号化するようプログラムされることができる。上記モジュールの入力は、クロックされた直列ビット・ストリームであり、その出力は、符号化された直列ビット・ストリームである。
【００１８】
ビット送信機５６は、ビット受信機４２の相手方であり、そして符号器５４から到来するクロックされた直列ビット・ストリームを、ライン・インターフェース（図示せず）のための非同期又は同期Ｔｘ信号に通信プロトコルに従って変換しなければならない。そのビット送信機５６は、それ自身のボー・レート発生器を有することができるが、しかしそれは、ビット受信機により発生されたボー・レートを用いることもできる。
【００１９】
比較ユニット５８は、送出されるデータと到来するデータを比較することを担当している。このタスクは、全てのノードがＣＡＮにおけるような共通バスを使用中である場合プロトコルのため非常に多くの場合必要とされる。比較ユニットを用いることにより、バス故障、アービトレーション損失等々を検出することが可能である。
【００２０】
制御ライン６２は、確認応答のため用いられることができ、そして例えばＣＡＮにより必要に応じて非常に早い応答を送ることを許可する。
この実施形態においては、全ての構成要素は、各構成要素がプログラム可能であることにより達成される柔軟性の利点を示すためプログラム可能であるよう説明されてきた。しかしながら、当業者は、どの構成要素もプログラム可能であることが必ずしも必要でないことを理解するであろう。本発明は、そのような構成要素の少なくとも１つがプログラム可能であるならば有効である。これにより、通信制御器の製作後にプロトコル特有のデータ変換の実行が可能になる。通信ハンドラは、イベント・トリガされた又は時間トリガされたプロトコルをサポートするために適しており、そこにおいて通信制御器は、必要なタイミング情報にアクセス又はそれを与えることができる。
【００２１】
図３は、データ・ストリームを通信プロトコルに従って転送する直列通信バス７２ａ…７２ｅそれぞれの上での通信のための本発明に従った通信制御器７０を示す。通信制御器７０は、命令メモリ７５及び通信ハンドラ７６に結合された制御ユニット７４を備える。通信ハンドラ７６は、データ・ストリームの変換を、選択された通信プロトコルに従って実行するためプログラム可能であるよう適合されている。より詳細には、通信ハンドラ７６は、直列通信バス７２ａ…７２ｅそれぞれのデータ・ストリームを異なるプロトコルに従って変換するようプログラムされているチャネル・ハンドラ７８ａ…７８ｅを備える。通信制御器７０はまた、ＲＡＭ８２に結合されたＤＭＡ制御器８０、タイマ８４、外部デバッグ・インターフェース８７に結合されたデバッグ・ユニット８５、及び外部アドレス−データ・バス８９に結合されたアドレス−データＩ／Ｏインターフェース８６を備える。内部アドレス−データ・バス８８は、制御ユニット７４、通信ハンドラ７６のチャネル・ハンドラ７８ａ…７８ｅ、ＤＭＡ制御器８０、タイマ８４、デバッグ・ユニット８５及びアドレス−データＩ／Ｏインターフェース８６を相互に結合する。
【００２２】
通信プロトコルに特有のプログラム命令は、外部アドレス−データ・バス８９を介してＲＡＭ８２にロードされることができ、そしてそこから又は直接外部から通信ハンドラ７６のチャネル・ハンドラにロードされることができる。
【００２３】
この実施形態においては、図１の別個の命令バス１９及びデータ・ライン２８の代わりに命令とデータの両方のための共通の内部アドレス−データ・バス８８が存在する。チャネル・ハンドラ７８ａ…７８ｅは、原理的に前述したように動作する。チャネル・ハンドラ７８ａ…７８ｅは、時間依存の電圧信号を受信し、そして実際の通信プロトコルに特有のプログラム命令に従って、データ・フィールドをそれから内部アドレス−データ・バス８８へそしてその逆へ与える。
【００２４】
制御ユニット７４、ここでは、ＲＩＳＣプロセッサは、通信ハンドラ７６のプログラミング及び作業を制御する。更に、制御ユニット７４は、データ・ストリームのデータを変換する。特に、制御ユニット７４は、通信ハンドラ７６により与えられるデータ・フィールドと、通信されたメッセージを表すデータ・フレームとの間の変換を両方向のデータの流れに対して実行する。
【００２５】
結合されたデバッグ・ユニット８５は、外部デバッグ・インターフェース８７を介して外部から挿入されたプログラムを直接デバッグするのを可能にする。なお、当該プログラムには、チャネル・ハンドラのためのプログラム及びＲＩＳＣプロセッサのためのプログラムが含まれる。
【００２６】
通信制御器は、ビット・レベルでプログラム可能であり、そしてハードウエアを変更すること無しに既存システムにおける通信プロトコルの更新／変更を可能にする。それは更に、幾つかのバス／通信プロトコルに対して１つの種類の通信制御器を用いることを可能にする。
【００２７】
ＤＭＡ制御器及びＲＡＭは、情報の中間格納を可能にする。通常、内部アドレス−データ・バス８８上でのデータ処理及びデータ転送は、直列データ・バス上におけるより非常に速い。これにより、異なるデータ・ストリーム及び異なる通信プロトコルを有する異なる通信チャネルを同時に動作させることが可能になる。
【００２８】
図４は、ＣＰＵ９２、入力／出力ユニット９４、フラッシュ・メモリ９６、ＲＡＭ９７、ＥＥＰＲＯＭ９８、及びデータ・ストリームを通信プロトコルに従って転送する直列通信バス１０２ａ…１０２ｅそれぞれの上での通信のための通信制御器１００を備えるマイクロコントローラ装置９０を示す。通信制御器１００は、通信ハンドラ１０６に結合された制御ユニット１０４を備える。通信ハンドラ１０６は、データ・ストリームを、選択された通信プロトコルに従って変換するのを実行するためプログラム可能であるよう適合されている。より詳細には、通信ハンドラ１０６は、直列通信バス１０２ａ…１０２ｅそれぞれのデータ・ストリームを異なるプロトコルに従って変換するようプログラムされているチャネル・ハンドラ１０８ａ…１０８ｅを備える。通信制御器１００はまた、マイクロコントローラ・アドレス−データ・バス１１０に結合されたアドレス−データＩ／Ｏインターフェース１０７を備える。内部アドレス−データ・バス１１２は、制御ユニット１０４、通信ハンドラ１０６のチャネル・ハンドラ１０８ａ…１０８ｅ、及びアドレス−データＩ／Ｏインターフェース１０７を相互に結合する。
【００２９】
通信プロトコルに特有のプログラム命令は、マイクロコントローラ・アドレス−データ・バス１１０及びアドレス−データＩ／Ｏインターフェース１０７を介して、通信ハンドラ１０６のチャネル・ハンドラ１０８ａ…１０８ｅのうちの任意のもの又は制御ユニット１０４の中にロードされることができる。制御ユニット１０４、ここではＲＩＳＣプロセッサは、通信ハンドラ１０６のプログラミング及び作業を制御する。更に、制御ユニット１０４は、データ・ストリームのデータを変換する。特に、制御ユニット１０４は、通信ハンドラ１０６により与えられたデータ・フィールドと、通信されたメッセージを表すデータ・フレームとの間での変換を両方向のデータの流れに対して実行する。通信制御器１００はまた、情報の中間格納を可能にするメモリ（図示せず）を有する。通信ハンドラ１０６及び制御ユニット１０４によるデータ処理、及びまた内部アドレス−データ・バス１１２上でのデータ転送は、直列データ・バス上におけるより非常に速い。これにより、異なるデータ・ストリーム及び異なる通信プロトコルを有する異なる通信チャネルを同時に動作させるのが可能になる。
【００３０】
ここでは、信号と送出データから別個の到来データとの間の変換を実行する光／電気直列通信バス１０２ａ…１０２ｅのライン・インターフェース１１４ａ…１１４ｅが示されている。チャネル・ハンドラ１０８ａ…１０８ｅは、原理的に前述したように動作する。
【００３１】
直列通信バス１０２ａ…１０２ｅ上で光／電気信号の形式で到着する到来メッセージは、ライン・インターフェース１１４ａ…１１４ｅによりバス・セクション１１６ａ…１１６ｅ上の時間依存の電圧信号に変換される。チャネル・ハンドラ１０８ａ…１０８ｅは、これらの時間依存の電圧信号を受信し、そして実際の通信プロトコルに特有のプログラム命令に従ってデータ・フィールドを制御ユニット１０４に並列内部アドレス−データ・バス１１２を介して与える。制御ユニット１０４は、データ・フィールドを変換し、そしてそれから、通信されたメッセージを表すデータ・フレームを発生する。制御ユニット１０４はそのデータ・フレームをアドレス−データＩ／Ｏインターフェース１０７を介してＣＰＵ９２に転送する。ＣＰＵ９２は、上記のメッセージを用いて、それを実行する。
【００３２】
直列通信バス１０２ａ…１０２ｅのうちの選択された１つの直列通信バスのための送出メッセージは、ＣＰＵ９２によりデータ・フレームの形式で発生される。ＣＰＵ９２は、データ・フレームをアドレス−データＩ／Ｏインターフェース１０７を介して制御ユニット１０４に転送する。制御ユニット１０４は、データ・フィールドをデータ・フレームから分離し、そして直列通信バス１０２ａ…１０２ｅのうちの上記選択された１つの直列通信バスと関連したチャネル・ハンドラ１０８ａ…１０８ｅの各１つへ上記データ・フィールドを転送する。チャネル・ハンドラ１０８ａ…１０８ｅは、実際の通信プロトコルに特有のプログラム命令に従ってデータ・フィールドを時間依存の電圧信号に変換する。選択されたバス上のライン・インターフェース１１４ａ…１１４ｅは、時間依存の電圧信号を光／電気信号に変換し、そしてこれらを上記選択されたバス上で送信する。こうして、送出メッセージが送信される。
【００３３】
ＣＰＵ９２が、通信制御器１００による大量の通信関連の計算から解放されることが明らかである。これにより、より遅いクロック・レートによるエネルギ節約と、及び／又はもはや通信関連の計算にとって必要でない追加のＣＰＵ計算能力を用いることによるより高い性能との両方が可能になる。
【００３４】
当業者は、本発明が極めて多様な実現形態を有することを知るであろう。通信バスの数及び種類は変わることができ（光式、電気式、１ワイヤ式、２ワイヤ式）、当該バスは相互に独立である。メッセージは、通信制御器又はマイクロコントローラにより、１つのバス上で受信され、そして別のバス上で送信される。様々な種類の内部バスを用いることができる。マイクロコントローラは、制御ユニットが付かないプログラム可能通信制御器を備えてもよい。
【００３５】
図５は、ＣＡＮプロトコルに従った直列バス上のデータのデータ表示の一例を与える。通信バスを用いて、指定された情報コンテンツを電子装置間で転送する。指定された情報コンテンツはデータ・ユニット、即ちメッセージの中に符号化され、それはバス上を通信プロトコルに従って転送される。メッセージは、通信プロトコルで指定されるように異なる指定された長さの論理コンテンツを備えた異なるフィールドを有する。これらは、交換されるべき情報コンテンツの全体又は一部を含むデータ・フィールド、及び正しいデータ転送を与えるための幾つかの転送特有のデータ・フィールドである。通信制御器は、通信の転送特有のタスクを処理する管理を行う。
【００３６】
データ・ストリーム・セクション１２０により表されるデータ・ストリームは、時間軸１２２に沿って進む。図５の上側部分において、データ・ストリーム・セクション１２０が、指定された情報コンテンツを備える部分を有するメッセージであって、データ・フレーム１２４において符号化されたメッセージとして示されている。そのようなメッセージは、電子装置間で交換されるべきコンテンツ情報、及び通信プロトコルに従った追加の処理情報を含む。図５の下側部分において、時間依存の電圧信号１４０は、単一のデータ・ビットを表す電圧信号から成る。データ・ストリームの各情報ビットは、電圧信号のセクションのようなものとして転送される。そのような電圧信号は、ライン・インターフェースから受信され、又はそれへ送信される。
【００３７】
電圧信号とメッセージとの間の関係は、ライン・インターフェースから到来する典型的な時間依存の電圧信号でもって開始する到来メッセージにより説明される。電圧は、フランク上の２つの電圧レベル間で変化し、そこにおいて、フランク間の時間的間隔が、情報を実際の通信プロトコルに従った符号化された形式で含む。この時間は、タイム・クォンタムと呼ばれる単位でばらばらにされる（ｄｉｓｓｅｃｔ）。図５での一例においては、各ビットは、１８タイム・クォンタムの長さである電圧信号の１ビット・セクション１４２に符号化される。１ビット・セクション１４２は、幾つかのセグメント、即ち、１タイム・クォンタム長の同期化用同期化セグメント１４４、１タイム・クォンタム長であるプロップ（Ｐｒｏｐ）・セグメント１４６、及びデータ・セグメントを備える。なお、このデータ・セグメントは、８タイム・クォンタム長であるフェーズ１・セグメント１４８、及び８タイム・クォンタム長であるフェーズ２・セグメント１４８から成る。情報ビットは、データ・セグメントのサンプル点１５２でサンプリングされる。なお、そのサンプル点１５２は、フェーズ１・セグメントとフェーズ２・セグメントとの間のデータ・セグメントの中間にある。電圧は、データ・セグメントにわたり一定であるべきである。
【００３８】
従って、図２に関して、ビット受信機４２は、一連の電圧レベルを正しいサンプル点でサンプリングし、そしてこれらを、クロックされた直列ビット・ストリームとして出力する。復号器４４は、この直列ビット・ストリームを復号し、そしてクロックされた直列ビット・ストリームとして出力する。パターン検出器５０は、プリアンブル又はフレーム開始マーカを指示する事前定義されたパターンを監視（ウオッチ）する。ビット・エンジンＲｘ４６は、符号化されたビットを収集し、データ・フィールドを識別し、そしてこれらを並列バス上に与える。
【００３９】
図５に戻ると、データ・フィールドは、ＳＯＦ（Ｓｔａｒｔ−Ｏｆ−Ｆｒａｍｅ）（フレーム開始）フィールド１２６、アービトレーション・フィールド１２８、制御フィールド１３０、コンテンツ・データ・フィールド１３２、ＣＲＣ（巡回冗長検査）フィールド１３４、ＡＣＫフィールド１３６、及びＥＯＦ（Ｅｎｄ−Ｏｆ−Ｆｒａｍｅ）（フレームの終わり）フィールド１３７である。ＳＯＦフィールド１２６を用いて、メッセージの始めを識別する。アービトレーション・フィールド１２８を用いて、通信バスのためアービトレーションを行う。制御フィールド１３０は幾らかの制御を許可する。コンテンツ・データ・フィールド１３２は、交換されるべき情報を含む。ＣＲＣフィールド１３４及びＡＣＫフィールド１３６を用いて、正しいデータ転送を検査する。ＥＯＦフィールド１３７を用いて、メッセージの終わりを識別する。フレーム同士の間にフレーム間スペース１３８があってよく、そしてフレームの直後、１３９において、フレーム間スペース又はオーバロード・フレームがあってもよい。オーバロード・フレームは、コンテンツ・データが１個のコンテンツ・データ・フィールドの中に収まらない場合用いられる。
【００４０】
従って、図２に関して、データ・フィールドは、直接出力されることができ、又は制御ユニット７４又は制御ユニット１０４のような制御ユニットにより１個のフレームにグループ化されることができる。
【００４１】
図６は、各通信バスがデータ・ストリームを通信プロトコルに従って転送する、少なくとも１つの通信バス上での通信のための通信制御器であって、上記少なくとも１つの通信バスに結合されて、データ・ストリームの変換を実行するためプログラム可能であるよう適合された通信ハンドラを備える上記通信制御器を用いる方法のフロー図１６０を示す。メッセージは、既に識別されている通信バス上を転送されることになる。この方法は１６２で開始し、ステップ１６４では、識別された通信バス上での通信のため通信プロトコルを選択する。次いで、ステップ１６６における、通信ハンドラを、データ・ストリームの変換を上記選択された通信プロトコルに従って実行するための命令を用いてプログラミングするステップが続く。次ぎに、ステップ１６８において、データ・ストリームのデータを表す電気信号を受信する。これは、両方向の情報の流れ、即ち、直列バス上で受信された時間依存の電圧信号と、直列バス上に送信されるべき並列バス上の信号とを含むという広い意味において理解されるものである。次いで、ステップ１７０において、通信ハンドラにより電気信号を上記のプログラムされた命令に従って変換する。
【００４２】
本発明の好適な実施形態に従って、上記方法は更に、ステップ１７２において、再選択された通信プロトコルに従ってデータ・ストリームの変換を通信ハンドラが実行するのを可能にするための命令を用いて通信ハンドラを再プログラミングするステップを備える。なお、上記再選択された通信プロトコルは、前に選択された通信プロトコル、即ちステップ１６４で選択された通信プロトコルとは異なる。次いで、ステップ１７４において、データ・ストリームのデータを表す電気信号を受信すること、及びステップ１７６において、通信ハンドラにより電気信号を、プログラムされた命令に従って変換することが、実行されることができる。通信ハンドラを再プログラミングすることにより、既存のシステムが、修正されたプロトコルへ更新され、又は異なるプロトコルへ変えられることすら可能になる。
【００４３】
図７において、フロー図１８０は、直列バス上の到来データに関して本発明の一実施形態に従った方法を詳細に示す。この方法は、図６のフロー図１６０と同様に１８２で開始し、ステップ１８４において、識別された通信バス上での通信のための通信プロトコルを選択する。次いで、ステップ１８６における、上記選択された通信プロトコルに従ってデータ・ストリームの変換を実行するための命令を用いて通信ハンドラをプログラミングすることが続く。次ぎに、ステップ１８８において、データ・ストリームのデータを表す電気信号を受信する。次いで、ステップ１９０において、通信ハンドラにより、電気信号を上記プログラムされた命令に従って変換する。この電気信号を変換するステップは、
ステップ１９２における、論理ビットを表す電気信号を、通信バス上で受信された電圧レベル間の遷移を有する電圧信号から通信プロトコルに従って発生するサブステップと、
ステップ１９４における、データ・ストリームのデータを復号するサブステップと、
サブステップ１９６における、データ・ストリームのデータの中の事前定義されたパターンを検出するサブステップと、
ステップ１９８における、通信バス上で直列に受信された論理ビットのデータ・フィールドを識別して与え、及び／又は並列データとして与えられる論理ビットのグループを直列バス上に直列に送信するサブステップと、
ステップ２００における、メッセージを表すデータ・フレームを、論理ビットのデータ・フィールドから識別して与え、及び／又は論理ビットのフィールドを、メッセージを表すデータ・フレームから識別して与えるサブステップと
を備える。
【００４４】
ステップ１９２、１９４、１９６、１９８、２００は、前述したような図２の観点から分かることができるように、本発明に従った方法の独立した改善である。ステップ１９２、１９４、１９６、及び小さいデータ・フィールドのためのステップ１９８は、通信ハンドラにより実行されるのが好ましい。大きなデータ・フィールドのためのサブステップ１９８、及びステップ２００は、通信ハンドラの外側で実行されるのが好ましい。
【００４５】
図８は、直列バス上の送出データに関して本発明の一実施形態に従った方法のフロー図２１０を詳細に示す。この方法は、図６のフロー図１６０と同様に２１２で開始し、ステップ２１４において、識別された通信バス上での通信のための通信プロトコルを選択する。次いで、ステップ２１６における、上記の選択された通信プロトコルに従ってデータ・ストリームの変換を実行するための命令を用いて、通信ハンドラをプログラミングするステップが続く。次ぎに、ステップ２１８において、データ・ストリームのデータ・フレームを表す電気信号を受信する。次いで、ステップ２２０において、通信ハンドラにより電気信号を上記のプログラムされた命令に従って変換する。この電気信号の変換は、
ステップ２２２における、論理ビット及び関連のフォーマット・データのグループを表す電気信号を発生するサブステップと、
ステップ２２４における、データ・ストリームのデータを符号化するサブステップと、
ステップ２２６における、論理ビットを表す電気信号から発生された通信バス上の電圧レベル間の遷移を有する電圧信号を送信するサブステップと
を備える。
【００４６】
ステップ２２２、２２４、２２６は、前述したような図２の観点から分かることができるように本発明に従った方法の独立した改善である。ステップ２１８から２２６の実際の意味は、物理的実行に依存する。即ち、通信制御器が図３の制御ユニット７４又は図４の制御ユニット１０４のような制御ユニットを有する場合、通信制御器は、ステップ２１８においてデータ・フレームを受信し、そしてステップ２２０においてそれを複数のフィールドに分離することができるのに対し、一方通信制御器が図１の通信制御器１０又は２０のように制御ユニットを持たない場合、通信制御器は、ステップ２１８においてデータ・フィールドを受信することができる。図２及び図５に関して、方法のステップ２２２は、ビット・エンジンＴｘ５２がＳＯＦフィールド１２６、ＣＲＣフィールド１３４、ＡＣＫフィールド１３６及びＥＯＦフィールド１３７を発生するのに対し、一方フィールド１２８、１３０及び１３２が通信ハンドラの外側から与えられることを含むことができる。
【００４７】
前述した複数の方法のいずれもがマイクロコントローラ内の通信制御器により実行されることが有利である。
好適な実施形態の前述の詳細な説明においては添付図面を参照している。なお、その添付図面は、本明細書の一部を形成し、そこにおいては、本発明を実施することができる例示的な特定の実施形態により示されている。これらの実施形態は、当業者が本発明を実施するのを可能にするに十分に詳細に説明された。他の実施形態を利用することができ、そして論理的、機械的及び電気的変更を、本発明の趣旨及び範囲を逸脱することなしに行うことができる。従って、前述の詳細な説明は、限定の意味で取るべきでなく、本発明の特許範囲は特許請求の範囲のみにより定義される。
【図面の簡単な説明】
【００４８】
【図１】図１は、本発明に従った通信制御器の単純化された概略図であり、図１Ａは１つの直列バスの場合を、図１Ｂは幾つかの直列バスの場合を示す。
【図２】図２は、本発明に従った通信制御器に採用されている通信ハンドラの単純化された概略図である。
【図３】図３は、本発明の別の実施形態に従った通信制御器の単純化された概略図である。
【図４】図４は、本発明の一実施形態に従った通信制御器を採用するマイクロコントローラ装置の単純化された概略図である。
【図５】図５は、通信バス上のデータ表示を視覚化して示す概略図である。
【図６】図６は、本発明の一実施形態に従った方法のフロー図である。
【図７】図７は、直列データを通信バス上で受信する、本発明の一実施形態に従った方法のフロー図である。
【図８】図８は、直列データを通信バス上で送信する、本発明の一実施形態に従った方法のフロー図である。
【図２】
2004534488.tif 000003
【図３】
2004534488.tif 000004
【図４】
2004534488.tif 000005
【図５】
2004534488.tif 000006
【図６】
2004534488.tif 000007
【図７】
2004534488.tif 000008
【図８】
2004534488.tif 000009
【国際公開パンフレット】
2004534488.tif 000010
2004534488.tif 000011
2004534488.tif 000012
2004534488.tif 000013
2004534488.tif 000014
2004534488.tif 000015
2004534488.tif 000016
2004534488.tif 000017
2004534488.tif 000018
2004534488.tif 000019
2004534488.tif 000020
2004534488.tif 000021
2004534488.tif 000022
2004534488.tif 000023
2004534488.tif 000024
2004534488.tif 000025
2004534488.tif 000026
2004534488.tif 000027
2004534488.tif 000028
2004534488.tif 000029
2004534488.tif 000030
2004534488.tif 000031
2004534488.tif 000032
2004534488.tif 000033
2004534488.tif 000034
2004534488.tif 000035
2004534488.tif 000036
2004534488.tif 000037
2004534488.tif 000038
2004534488.tif 000039
2004534488.tif 000040
2004534488.tif 000041
【手続補正書】
【提出日】平成15年9月15日(2003.9.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
各通信バスがデータ・ストリームを通信プロトコルに従って転送する、少なくとも１つの通信バス上での通信のための通信制御器において、
少なくとも１つの通信バスに結合されて、データ・ストリームの変換を実行するため、当該通信ハンドラに対するハードウエア変更を要求することなしにプログラム可能であるよう適合されている通信ハンドラを備える通信制御器。
【請求項２】
前記通信ハンドラがプログラム可能な復号器及び／又は符号器を備える請求項１記載の通信制御器。
【請求項３】
前記通信ハンドラが少なくとも１つのプログラム可能なビット・エンジンを備える請求項１記載の通信制御器。
【請求項４】
前記通信ハンドラがプログラム可能なビット受信機及び／又はプログラム可能なビット送信機を備える請求項１記載の通信制御器。
【請求項５】
前記通信ハンドラがプログラム可能なパターン検出器を備える請求項１記載の通信制御器。
【請求項６】
前記通信ハンドラが、ビット・レベルでのデータ・ストリームの変換を実行するためプログラム可能であるよう適合されている請求項１記載の通信制御器。
【請求項７】
前記通信ハンドラを制御する通信制御ユニットを備える請求項１記載の通信制御器。
【請求項８】
幾つかの通信プロトコルに従ってデータ・ストリームの変換を実行するための命令を格納するメモリを備える請求項１記載の通信制御器。
【請求項９】
デバッグ・ユニットを備える請求項１記載の通信制御器。
【請求項１０】
カスタム・プロトコルに従ってデータ・ストリームの変換を実行するための命令を迅速にローディングするための周辺チャネル接続を備える請求項１記載の通信制御器。
【請求項１１】
請求項１記載の通信制御器を備えるマイクロコントローラ装置。
【請求項１２】
各通信バスがデータ・ストリームをそれぞれの通信プロトコルに従って転送する、幾つかの通信バス上で同時に通信するよう適合されている請求項１１記載のマイクロコントローラ装置。
【請求項１３】
各通信バスがデータ・ストリームを通信プロトコルに従って転送する、少なくとも１つの通信バス上での通信のための通信制御器であって、前記少なくとも１つの通信バスに結合されて、データ・ストリームの変換を実行するためプログラム可能であるよう適合されている通信ハンドラを備える前記通信制御器を用いる方法において、
ａ．  通信プロトコルを選択するステップと、
ｂ．  データ・ストリームの変換を前記の選択された通信プロトコルに従って実行するための命令を用いて前記通信ハンドラをプログラムするステップであって、前記通信ハンドラのハードウエアを変更することを含む、前記プログラムするステップと、
ｃ．  データ・ストリームのデータを表す電気信号を受信するステップと、
ｄ．  前記データ・ストリームのデータを表す電気信号を前記通信ハンドラにより前記のプログラムされた命令に従って変換するステップと
を備える方法。
【請求項１４】
前記通信ハンドラが前に選択された通信プロトコルと異なる再選択された通信プロトコルに従ってデータ・ストリームの変換を実行するのを可能にするための命令を用いて前記通信ハンドラを再プログラムするステップを更に備える請求項１３記載の方法。
【請求項１５】
前記通信バス上で受信された電圧レベル間の遷移を有する電圧信号から論理ビットを表す電気信号を発生し、及び／又は論理ビットを表す電気信号から発生された電圧レベル間の遷移を有する電圧信号を前記通信バス上で前記通信プロトコルに従って送るステップを更に備える請求項１３記載の方法。
【請求項１６】
前記データ・ストリームのデータを復号／符号化するステップを更に備える請求項１３記載の方法。
【請求項１７】
前記データ・ストリームのデータの中の事前定義されたパターンを検出するステップを更に備える請求項１３記載の方法。
【請求項１８】
前記通信バス上で直列に受信された論理ビットのデータ・フィールドを識別し且つ並列データとして与え、及び／又は並列データとして与えられた論理ビットのグループを前記通信バス上で直列に送るステップを更に備える請求項１３記載の方法。
【請求項１９】
論理ビットのデータ・フィールドからメッセージを表すデータ・フレームを識別して与え、及び／又はメッセージを表すデータ・フレームから論理ビットのフィールドを識別して与えるステップを更に備える請求項１８記載の方法。
【請求項２０】
マイクロコントローラ内の通信制御器により実行される請求項１３記載の方法。
【国際調査報告】
2004534488.tif 000042
2004534488.tif 000043