(57)【要約】【課題】第１に、ネットワークで接続されたマイクロプロセッサがネットワークからパケットを受信した際に発生するＣＰＵへの割り込みを極力減らし、プロセッサを効率的に動作させるということ。第２に、送信側のマイクロプロセッサにレスポンスのよい返信を返すことが可能なマイクロプロセッサ及び通信方法を提案すること。【解決手段】マイクロプロセッサにＣＰＵと通信モジュールを備える。通信モジュール3は、マイクロプロセッサが管理する情報を記憶するレジスタ22を有する。通信モジュールは、ネットワークを通して入力されるパケット内の所定のビット位置の情報と、レジスタに保持された情報を比較し、比較結果により、パケット受信に対応した処理をＣＰＵが行なうか否かを判定する。【選択図】図１Ａ
2006352706.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してパケットを用いた送受信を行なう通信モジュールと、上記通信モジュールによって受信された上記パケットに含まれるデータの処理を行なうＣＰＵとを具備してなるマイクロプロセッサであって、
上記通信モジュールは、
上記マイクロプロセッサによって管理される第１の情報を記憶するレジスタと、
受信された上記パケット内の所定のビット位置の第２の情報と、上記レジスタに記憶されている第１の情報とを比較し、上記ＣＰＵが上記データの処理を行なうか否かの第１の判定を比較結果により行なう比較器とを有していることを特徴とするマイクロプロセッサ。
【請求項２】
請求項１において、
上記第１の情報は、上記ＣＰＵによって管理されて更新される情報であることを特徴とするマイクロプロセッサ。
【請求項３】
請求項１において、
上記通信モジュールは、上記ＣＰＵが上記データの処理を行なうとの第１の判定を上記比較器が行なったときに、上記ＣＰＵに対する割り込み要求信号を発生することを特徴とするマイクロプロセッサ。
【請求項４】
請求項１において、
上記通信モジュールは、上記ＣＰＵが上記データの処理を行なうとの第１の判定を上記比較器が行なったとき、処理を行なうことを表す返信パケットを送信することを特徴とするマイクロプロセッサ。
【請求項５】
請求項１において、
上記通信モジュールは、上記比較結果に応じて、パケット棄却、割り込み要求信号発生及びパケット返信の３つの処理のいずれかを選択して実行することを特徴とするマイクロプロセッサ。
【請求項６】
請求項３において、
上記通信モジュールは、
上記第１の判定を行なった第１の結果と、上記パケット内に含まれている宛先情報を参照して上記パケットが自マイクロプロセッサ宛てか否かの第２の判定を行なった第２の結果と、上記パケット内に含まれているメッセージ認識情報を参照して上記第１の判定結果によらず上記割り込み要求信号を発生するか上記第１の判定結果に基づいて処理を選択するかの第３の判定を行なった第３の結果とを入力し、上記第１の結果と上記第２の結果とがいずれも肯定であり、かつ、上記第３の結果が上記第１の判定結果に基づいて処理を選択するであるときにパケット返信を行なう処理判定部を具備していることを特徴とするマイクロプロセッサ。
【請求項７】
請求項６において、
上記宛先情報が上記パケット内のヘッダ部に格納され、上記第２情報が上記パケット内のペイロード部に格納されていることを特徴とするマイクロプロセッサ。
【請求項８】
請求項３において、
上記通信モジュールは、
上記第１の判定を行なった第１の結果と、上記パケット内に含まれているメッセージ認識情報の中の第１のビット群を参照して上記パケットが自マイクロプロセッサ宛てか否かの第２の判定を行なった第２の結果と、上記メッセージ認識情報の中の第２のビット群を参照して上記第１の判定結果によらず上記割り込み要求信号を発生するか上記第１の判定結果に基づいて処理を選択するかの第３の判定を行なった第３の結果とを入力し、上記第１の結果と上記第２の結果とがいずれも肯定であり、かつ、上記第３の結果が上記第１の判定結果に基づいて処理を選択するであるときにパケット返信を行なう処理判定部を具備していることを特徴とするマイクロプロセッサ。
【請求項９】
請求項８において、
上記宛先情報が上記パケット内のヘッダ部に格納され、上記第２情報が上記パケット内のペイロード部に格納されていることを特徴とするマイクロプロセッサ。
【請求項１０】
請求項５において、
上記通信モジュールは、上記比較結果に応じて、パケット棄却、割り込み要求信号発生及びパケット返信の上記３つの処理のいずれを選択するかを指定するための処理方法判定用レジスタを備えることを特徴とするマイクロプロセッサ。
【請求項１１】
ネットワークと、
上記ネットワークに接続された複数のマイクロプロセッサとを具備して成り、
上記複数のマイクロプロセッサの各々は、
上記ネットワークを介してパケットを用いた送受信を行なう通信モジュールと、上記通信モジュールによって受信された上記パケットに含まれるデータの処理を行なうＣＰＵとを具備し、
上記通信モジュールは、
上記マイクロプロセッサによって管理される第１の情報を記憶するレジスタと、
受信された上記パケット内の所定のビット位置の第２の情報と、上記レジスタに記憶されている第１の情報とを比較し、上記ＣＰＵが上記データの処理を行なうか否かの第１の判定を比較結果により行なう比較器とを有しており、
上記複数のマイクロプロセッサの内の第１のマイクロプロセッサが第２のマイクロプロセッサにタスク実行依頼を行なう場合に、第１のマイクロプロセッサが第２のマイクロプロセッサに上記パケットを送信し、上記パケットに含まれる上記データが上記タスク実行依頼のタスクのデータであることを特徴とするネットワークシステム。
【請求項１２】
請求項１１において、
上記第２のマイクロプロセッサの上記通信モジュールは、上記ＣＰＵが上記データの処理を行なうとの第１の判定を上記比較器が行なったときに、上記ＣＰＵに対する割り込み要求信号を発生することを特徴とするネットワークシステム。
【請求項１３】
請求項１１において、
上記第２のマイクロプロセッサの上記通信モジュールは、上記ＣＰＵが上記データの処理を行なうとの第１の判定を上記比較器が行なったとき、処理を行なうことを表す返信パケットを上記第１のマイクロプロセッサに送信することを特徴とするネットワークシステム。
【請求項１４】
請求項１１において、
上記第２のマイクロプロセッサの上記通信モジュールは、上記比較結果に応じて、パケット棄却、割り込み要求信号発生及び上記第１のマイクロプロセッサへのパケット返信の３つの処理のいずれかを選択して実行することを特徴とするネットワークシステム。
【請求項１５】
請求項１２において、
上記通信モジュールは、
上記第１の判定を行なった第１の結果と、上記パケット内に含まれている宛先情報を参照して上記パケットが自マイクロプロセッサ宛てか否かの第２の判定を行なった第２の結果と、上記パケット内に含まれているメッセージ認識情報を参照して上記第１の判定結果によらず上記割り込み要求信号を発生するか上記第１の判定結果に基づいて処理を選択するかの第３の判定を行なった第３の結果とを入力し、上記第１の結果と上記第２の結果とがいずれも肯定であり、かつ、上記第３の結果が上記第１の判定結果に基づいて処理を選択するであるときにパケット返信を行なう処理判定部を具備していることを特徴とするネットワークシステム。
【請求項１６】
請求項１２において、
上記第２のマイクロプロセッサの上記通信モジュールは、
上記第１の判定を行なった第１の結果と、上記パケット内に含まれているメッセージ認識情報の中の第１のビット群を参照して上記パケットが自マイクロプロセッサ宛てか否かの第２の判定を行なった第２の結果と、上記メッセージ認識情報の中の第２のビット群を参照して上記第１の判定結果によらず上記割り込み要求信号を発生するか上記第１の判定結果に基づいて処理を選択するかの第３の判定を行なった第３の結果とを入力し、上記第１の結果と上記第２の結果とがいずれも肯定であり、かつ、上記第３の結果が上記第１の判定結果に基づいて処理を選択するであるときにパケット返信を行なう処理判定部を具備していることを特徴とするネットワークシステム。
【請求項１７】
ネットワークに接続された複数のノード間でデータを相互に送受信するステップであって、上記複数のノードの各々は、パケットを用いて上記ネットワークへの送受信を行なう通信モジュールと、上記通信モジュールに接続されるＣＰＵとを備えている上記ステップと、
上記通信モジュールによって受信されたパケットに含まれるデータの処理を上記ＣＰＵにおいて行なうステップとを具備して成り、
上記受信されたパケットは、上記ＣＰＵを経ずに直接上記通信モジュールからパケット返信を行なうことを要求する情報ビット群を含んでいることを特徴とする通信方法。
【請求項１８】
請求項１７において、
上記情報ビット群は、タスク実行依頼のメッセージ認識情報を表していることを特徴とする通信方法。
【請求項１９】
請求項１８において、
上記通信モジュールにおいて、記タスク実行依頼のタスクが自ノードで実行するタスクであると判定され、かつ、自ノードで実行可能な範囲であると判定されたときに、上記ＣＰＵへの割り込み要求信号が生成されることを特徴とする通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに接続するインタフェースを備えたマイクロプロセッサに係り、特に、複数の制御装置のそれぞれに用いられ、ネットワークを介して互いに連係動作を行なうマイクロプロセッサ、及びそれらのマイクロプロセッサによって構成されるネットワークシステム並びにマイクロプロセッサ間の通信方法に関する。
【背景技術】
【０００２】
ＬＡＮ（Local Area Network）に接続されたコンピュータにおいて、スタンバイ時に自コンピュータ宛でないパケットではスタンバイからの復帰を行なわないように、受信パケット判別手段を備え、自コンピュータ宛のパケットであることが判別された場合にのみ割り込み信号を発行する構成が例えば特許文献１に開示されている。
【０００３】
また、ＣＰＵ（Central Processing Unit：中央処理装置）を介さずに記憶領域に転送を行なうＤＭＡＣ（ダイレクトメモリアクセスコントローラ）を備えたマイクロプロセッサを有する通信制御装置の例が特許文献２に開示されている。この例では、自分宛のデータを受信した場合に、ＤＭＡＣが起動され、受信データが送受信バッファ（記憶装置）に自動転送される。指定されたサイズのデータの転送が終了すると、割り込みを使ってＣＰＵに完了が通知される。
【０００４】
【特許文献１】特開平１１−１１００８９号公報
【特許文献２】特開平６−８５８７６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
自動車等の電子制御装置では、センサ等から入力された情報に基づいて制御信号を生成してアクチュエータに出力し、アクチュエータが制御信号に基づいて動作する。制御装置にはマイクロプロセッサやドライバＩＣなどが搭載される。近年、自動車内では、複数の電子制御装置が設けられ、それら複数の電子制御装置の間で連係動作若しくはデータ共有化の通信が行なわれる。そのため、複数の電子制御装置は、ネットワークを介して互いに接続され、ネットワークシステムが構築される。ネットワークと接続するために、電子制御装置に通信用ＩＣとマイクロプロセッサが用いられる。或いは、電子制御装置に通信モジュールを備えたマイクロプロセッサが用いられる。この場合、マイクロプロセッサは、ネットワークシステムにおいてノードとして機能する。以下に、一般的な通信モジュールを備えたマイクロプロセッサについて説明する。
【０００６】
図１５は、ネットワーク1に複数のマイクロプロセッサ（MP）2a,2b,2cが接続されている例であり、特に、マイクロプロセッサ2aのみの内部構成が詳しく示される。マイクロプロセッサ2aは、内部のバス（Bus）4にＣＰＵ5、割込制御部（INT）6、内部記憶装置（RAM）7、及び、通信モジュール（COM）3が接続されている。この他にも入出力ポートやタイムユニット、Ａ／Ｄ変換器などの周辺モジュールを備える場合が多いが、本図では説明上必要な構成のみを示している。
【０００７】
通信モジュール3は、送信器（tr）8からデータをネットワーク1に出力し、受信器（rc）9によりネットワーク1からデータを受信する。データ送信時は、ＣＰＵ5などの指令に従いバス4を経由して送信バッファ（trbuf）10に書き込まれたデータを、パケット生成器（pcgen）11により、通信規約に従ったパケットを構成し、送信器8から出力する。
【０００８】
受信時の動作を本構成図及び図１６に示す処理フローを用いて以下に詳しく述べる。図１６においては、マイクロプロセッサ2a内の通信モジュール3、割込制御部6、ＣＰＵ5のそれぞれの処理を分けて示している。受信データは、受信器9により受信し（P101）、パケット再生器12によりパケットを再生する(P102)。アドレス解析部16では、再生されたパケットデータの所定のビット位置に埋め込まれたアドレス情報より自分宛のパケットであるかを判断する(P103)。ここで、アドレス情報は、単一のマイクロプロセッサを指定する場合もあるし、複数のマイクロプロセッサ宛のアドレスを示す場合もある。また、宛先情報の代わりにメッセージ固有の識別情報（メッセージＩＤ）をパケット内に含み、受信プロセッサ側で予め受信すべきメッセージＩＤを記憶しておき、その一致により受信するかどうかを判断する場合もある。ここでは、それらを含めアドレス解析部12において、受信するか否かの判断がなされるとする。
【０００９】
自分宛であると判断した場合は、受信データを受信バッファ（rcbuf）14に格納し、割り込み要求信号intreqをアサートする（アクティブ状態にする）(P104)。受信する必要がないと判断した場合は、パケットを棄却する(P105)。割り込み要求信号intreqを受けて、割り込み制御部6は、種々の条件に従い、この割り込み要求をＣＰＵ5に伝えるかを判断し(P106)、条件を満たす場合には、ＣＰＵ5に対して割り込み信号intsigをアサートする(P107)。割り込み信号を受信したＣＰＵ5は、今まで実行していた処理(P108)を中断し、割り込みの要因毎に対して事前に定められた割り込み処理を実行する(P110)。ただし、割り込み処理を実行する前に、これまで実行していた処理(P108)に復帰するために必要なレジスタ群を記憶装置7に退避しておかなければならない(P109)。割り込み処理(P110)が終了すると、退避しておいたレジスタ群を復帰させ(P111)、中断されていた処理(P108)に戻る。
【００１０】
上述のマイクロプロセッサ及び特許文献１，２を含む従来技術において共通なことは、自分宛てのパケットを受信した場合は、データ受信があったことを、割り込み信号を発生させることでＣＰＵに知らせるという点である。これにより、ＣＰＵはこれまで行なっていた処理を中断し、受信データに対して定められた処理を実行する。また、割り込みを用いずに、受信データの到着を知る方法として、ＣＰＵが一定時間ごとに通信モジュールに対して新しいデータが到着していないかを問い合わせるポーリングと呼ばれる方法も採用される。
【００１１】
ところで、上記説明の通り、自分宛てのパケットの受信によってＣＰＵに割り込みが通知される際、レジスタへの退避と復帰など本来の処理では必要なかったオーバーヘッドが発生する。そのため、図１５及び図１６で説明したマイクロプロセッサの動作においては、パケットを受信した際のＣＰＵへの割り込みを極力減らす工夫として、通信モジュールで自分宛てのパケットか否かの判断を行なっている。これにより、自分に関係のないパケットは、通信モジュールで棄却され、ＣＰＵに対する無駄な割り込みを行なわないことが可能となる。これは、ＤＭＡＣを使わない特許文献１の場合においても、ＤＭＡＣを用いる特許文献２においても同様である。ただし、自分宛のパケットと判定された場合は、いずれの方法においても、ＣＰＵへの割り込みが避けられない。
【００１２】
一方、割り込みを用いないポーリング処理の場合では、ＣＰＵの処理の合間に通信モジュールに対してデータの受信があったかを問い合わせることで、処理の中断を避けることができるが、緊急に処理を行なう必要のある受信パケットに対して到着と同時に処理することは不可能である。また、データが到着していないにもかかわらず、ＣＰＵと通信モジュールの間で無駄な問い合わせと、返答を行なうという問題がある。特に、リアルタイム性の要求される制御を行なう場合は、受信データ到着からの処理の遅れは、システム動作に致命的な問題を引き起こす場合がある。そのため、ポーリング処理は一般的ではなく、通常は割り込み処理が用いられる。
【００１３】
以上のように、通信モジュールで受信したパケットが自分宛だと判断された場合にはＣＰＵへの割り込みが発生することは避けがたいように思われる。しかし、発明者らの解析の結果、自分宛てのパケットであった場合でさえ、ＣＰＵに割り込みをかけることが無駄な場合が存在することが見出された。ＣＰＵへの割り込みが無駄となる場合について、自動車の制御を例に説明する。
【００１４】
図１５において、マイクロプロセッサ2cでエンジンの回転数を検出し、通信パケットでマイクロプロセッサ2aにエンジン回転数を送信し、マイクロプロセッサ2aでは、マイクロプロセッサ2a内の記憶装置に格納してある閾値以上のエンジン回転数が通知された場合のみ、一定の処理を行なうとする。この場合、パケットの宛先はマイクロプロセッサ2aであるので、マイクロプロセッサ2aの通信モジュール3では、アドレスの一致により割り込み要求をアサートする。割り込み処理部6からＣＰＵ5に割り込みが通知され、これまで実行していた処理が中断され、割り込みに対応した処理が実行される。
【００１５】
割り込み処理において、パケット内のエンジン回転数データと記憶装置に格納してある閾値との比較処理が行なわれる。その結果、回転数が閾値以上であった場合は、所定の処理が実行されるが、閾値以下であった場合には制御処理は行なわれない。つまり、何も制御処理を行なわないという判断をするためだけにＣＰＵ5への割り込みがなされたことになるのである。
【００１６】
その他、別の制御を考えた場合でも同様の無駄な受信割り込みが発生する場合がある。マイクロプロセッサ2cに、マイクロプロセッサ2cと接続された温度センサから第１の制御機器の温度が入力されており、第１の制御機器の温度情報が通信パケットでマイクロプロセッサ2aに送信される例を取り上げる。マイクロプロセッサ2aでは、マイクロプロセッサ2aが制御する第２の制御機器の温度が別の温度センサから入力されているとする。マイクロプロセッサ2aは、割り込み時の処理として、転送された第１の制御装置の温度と第２の制御装置の温度を比較して、予め定められた関係（例えば、第２の装置の温度が第１の装置の温度を上回っている）の場合のみ、第２の制御装置に対する制御を行なうとする。この例においても、アドレスの一致により割り込み要求をアサートして実行中の処理を中断したにもかかわらず、温度の比較を行なった結果、第２の制御装置に対する制御処理を実行しない場合が起こる。先の例と同様に、何も制御処理を行なわないという判断をするためだけにＣＰＵへの割り込みがなされたことになる。仮に、第１の制御装置の温度が第２の制御装置の温度より上昇する場合が異状ケースであるとすると、ごく稀に起こる現象のために、不要な割り込みが定期的に発生し、処理能力の低下を招くことになる。
【００１７】
次に、ネットワークで接続されたマイクロプロセッサ間で処理負荷を分散する例について考察する。マイクロプロセッサ2cが自己のＣＰＵ負荷が一定値を超えると判断した場合に、他のマイクロプロセッサ2a,2bに処理の実行を依頼するとする。この場合、タスクの実行時間等の依頼する処理量を格納した問合せ用のパケットがマイクロプロセッサ2a,2bに同報通信で転送される。実行が可能なマイクロプロセッサが依頼を引き受けることを示すパケットを返信し、実行不可能なマイクロプロセッサはパケットを返信しない。マイクロプロセッサ1aは、自分への宛先がパケットに含まれることを検出し、ＣＰＵ5に割り込みをかける。ＣＰＵ5は、実行中の処理を中断し、実行要求タスクの処理量と自己の余裕を比較し、実行が可能と判断した場合には、処理を引き受けるパケットを返信するが、引き受けることが不可能であると判断した場合（余裕が小さい場合）はパケットを返信しない。この例においても、処理を引き受けない、つまり、パケットを返信しないという判断のためだけに実行中の処理が中断されることになる。
【００１８】
本発明が解決しようとする第１の課題は、ネットワークで接続されたマイクロプロセッサがネットワークからパケットを受信した際に発生するＣＰＵへの割り込みを減らし、プロセッサを効率的に動作させることである。更に詳しくは、受信パケットが自分宛であると判断した場合においても処理を実行する必要がない場合が存在することに着眼し、処理を実行する必要がない場合に生じる無駄な割り込みを発生させないマイクロプロセッサ、及びそれを用いたネットワークシステム並びに通信方法を提案することである。
【００１９】
また、ＣＰＵへの割り込みを発生させ、割り込み処理を実行する場合は、レジスタの退避などのオーバーヘッドにより処理の開始が遅れるという問題がある。送信側のマイクロプロセッサが早いレスポンスの返信を要求する場合に、受信側マイクロプロセッサでのＣＰＵ割り込みによる処理では、要求レスポンスに応えられない場合が起こる。そこで、本発明が解決しようとする第２の課題は、送信側のマイクロプロセッサに早いレスポンスの返信をＣＰＵ割り込みによる処理を経ずに返すことが可能なマイクロプロセッサ、及びそれを用いたネットワークシステム並びに通信方法を提案することである。
【課題を解決するための手段】
【００２０】
本発明の上記第１の課題は、上記通信モジュールが、マイクロプロセッサによって管理される第１の情報を記憶するレジスタと、受信されたパケット内の所定のビット位置の第２の情報及び上記レジスタに記憶されている第１の情報の両者を比較し、ＣＰＵがデータの処理を行なうか否かの判定を比較結果により行なう比較器とを有することによって効果的に解決することが可能である。そのような手段を採用すれば、ＣＰＵがデータの処理を行なうか否かの判定を上記通信モジュールにおいて行なうことが可能になるので、判定のためのＣＰＵへの割り込みを行なう必要が無くなるからである。
【００２１】
本発明の上記第２の課題は、パケットに記ＣＰＵを経ずに直接上記通信モジュールからパケット返信を行なうことを要求する情報ビット群を含めることによって効果的に解決することができる。通信モジュールが情報ビット群を参照して依頼のタスクを実行すると判定したときに、判定と連動して通信モジュールがパケット返信を行なうことになる。
【発明の効果】
【００２２】
本発明によれば、ＣＰＵの負担を軽くする高効率のマイクロプロセッサが実現される。
【発明を実施するための最良の形態】
【００２３】
以下、本発明に係るマイクロプロセッサ及びネットワークシステム並びに通信方法を図面に示した実施形態を参照して更に詳細に説明する。なお、実施形態を説明するための全図において、同一の符号は同一物又は類似物を表示するものとし、その繰り返しの説明を省略する。
【００２４】
＜実施形態１＞
図１Ａ、図１Ｂ及び図２を用いて本発明の実施形態１を説明する。図１Ａに本実施形態のマイクロプロセッサの通信モジュール3の内部構造を示し、図１Ｂに通信モジュール3を含む本実施形態のマイクロプロセッサ2aと、複数のマイクロプロセッサ2a〜2cがネットワーク1に接続されて構成される本実施形態のネットワークシステムを示す。マイクロプロセッサ2aにおいて、内部のバス（Bus）4にＣＰＵ5、割り込み制御部（INT）6、内部記憶装置（RAM）7、及び通信モジュール3が接続されている。各マイクロプロセッサ2は、ネットワークシステムにおいてノードとして機能する。
【００２５】
本実施形態では、ネットワーク1に接続された複数のマイクロプロセッサ2a〜2c間での負荷分散を例にする。負荷が一定値以上になったマイクロプロセッサが、自分のタスクを他のマイクロプロセッサに実行依頼する際に、まず、他のマイクロプロセッサに引き受け可能かどうかを問い合わせるパケットを同報通信で送る。引き受け可能なマイクロプロセッサは、引き受け可能であることを通報するために、返信用のパケットを用いて返事をする。なお、ネットワークシステムにおいては、問い合わせパケット以外にもマイクロプロセッサ間で種々のパケットの送受信をしているとする。
【００２６】
図１Ａにおいて、通信モジュール3は、データ送信時は、ＣＰＵ5などの指令に従いバス4を経由して送信バッファ（trbuf）10に書き込まれたデータを、パケット生成器（pcgen）11により、通信規約に従ったパケットを構成し、送信器（tr）8から出力する。
【００２７】
次に、受信時の動作を詳しく説明する。受信データは、受信器（rc）9により受信され、パケット再生器（pcrec）13によりパケットが再生される。図１Ａのほぼ中央に再生したパケットpacが示される。
【００２８】
ネットワークを介した通信では、送るべきデータを細かく区切ったうえで、その固まりのフォーマットをプロトコル毎に規定している。このデータのひとかたまりを「パケット」又は「フレーム」と呼び、プロトコルの規定する階層により呼び名が使い分けられる。第２のデータリンク層ではフレームと呼び、階層に寄らずにデータの固まりを指す場合はパケットと呼ばれることが多い。通信モジュール3では、最下層の物理層と第２層のデータリンク層の処理が行なわれるため、データのひとかたまりをフレームと呼ぶ方がふさわしい場合があるが、ここでは、特定のプロトコル想定しないこともあり、データのひとかたまりをパケットという言葉で統一することとする。パケットは、ヘッダとペイロードとで構成される。ヘッダは、パケットを転送するために必要な情報として宛先やメッセージのＩＤを含む部分であり、ペイロードは転送するデータそのものを含む部分である。図１Ａのパケットpac内には、ヘッダに宛先情報addに加えてメッセージを個別に認識するための認識情報ＩＤが格納され、ペイロードにデータdataが格納されている。本実施形態においては、上記のメッセージ認識情報ＩＤとして、タスク実行依頼のパケットのみに与えられる特別のＩＤが設定される。なお、パケット内には、その他にパケットの区切りを示す領域や、同期を取るための領域、エラーチェック用の領域などがあるが、これらは図１Ａでは説明上必要のない部分であるので図示が省略される。
【００２９】
アドレス解析部（adcomp）16は、パケット内の宛先情報addと自分のアドレスを格納したアドレスレジスタ（adreg）17の値を入力し、自分宛のパケットか否かを判定し、処理判定部（lblk）18にアドレス解析結果信号sigaを与える。アドレス解析部16は、自分宛の宛先であった場合には、アドレス解析結果信号sigaを１にし、そうでなければ０とする。
【００３０】
メッセージＩＤ解析部（idcomp）19は、パケット内のメッセージ認識情報ＩＤとメッセージＩＤレジスタ(idreg)20の値とを入力し、特別のメッセージパケットであるかを判定するメッセージＩＤ解析結果信号sigbを処理判定部18に与える。本実施形態においては、上で述べたように、タスク実行依頼のパケットのみに特別のＩＤが与えられ、メッセージＩＤレジスタidregにはそれと同一のＩＤが格納されている。メッセージＩＤ解析部19は、両者の一致を検出した場合に、メッセージＩＤ解析結果信号sigbを１にし、それ以外は０にする。
【００３１】
データ比較器（dcomp）21は、パケット内のデータdataの値（処理時間）と余裕時間レジスタ（mgreg）22の値（余裕時間）とを入力して両者を比較し、比較結果信号sigcを処理判定部18に与える。受信パケットがタスク実行依頼のパケットである場合は、パケットのデータ部には、タスクを実行するのに要する処理時間が格納されている。即ち、データ比較器21が比較を行なうための情報である処理時間がデータと共にペイロードに格納されている。また、余裕時間レジスタ22には、マイクロプロセッサ2aの一定期間内の空き時間、つまり、引き受けられる処理量の限界時間が余裕時間として格納されている。通常、マイクロプロセッサ2においては、タスクの起動要求があった場合、タスクを実行する順序を決定するスケジューリングがＯＳにより行なわれる。例えば、スケジューリング結果から、余裕時間を算出し、スケジューリングを行なう毎に、算出結果を余裕時間レジスタ22に書き込むことが可能である。或いは、定期的にマイクロプロセッサの負荷状況をモニタしてその都度余裕時間を算出し、算出結果を余裕時間レジスタ22に書き込むことも可能である。比較結果信号sigcは、余裕時間がタスクの要求する処理時間（要求実行時間）より大きい、つまり、引き受け可能な場合に１になるとする。
【００３２】
処理判定部18は、上記３つの信号siga，sigb，sigcを入力して割り込み要求信号intreq及びパケット返信指令信号sigdを出力すると共に、受信バッファ（rcbuf）14において格納したデータの送出及び破棄を制御する。割り込み要求信号intreqは、マイクロプロセッサ2aの割り込み制御部6に入力され、割り込み制御部6からＣＰＵ5に対して割り込み信号intsigがアサートされる。パケット返信指令信号sigdは、通信モジュール3内のパケット生成器11に対して、返信パケットレジスタ（rpreg）23から該当する内容を取り出し、返信パケットを送信することを命令する信号である。なお、返信パケットの宛先は元の受信パケットから送信元ノードを示すアドレスを読み取ることが行なわれるが、本図では省略している。
【００３３】
以上のアドレス解析部16とアドレスレジスタ17、処理判定部18と返信パケットレジスタ23、メッセージＩＤ解析部19とメッセージＩＤレジスタ20、及びデータ比較器21と余裕時間レジスタ22を含んで、図１Ａ，１Ｂに示す通信処理部（comcont）15が構成される。
【００３４】
以上において、パケットに含まれるメッセージ認識情報ＩＤは、同時に通信モジュール3からパケット返信を行なうことを要求する情報として表される。従って、ネットワークで接続された複数のノード（マイクロプロセッサ）間でデータを相互に送受信する本実施形態の通信方法は、次のように特徴づけられる。即ち、受信されたパケットに、上記ＣＰＵを経ずに直接上記通信モジュールからパケット返信を行なうことを要求する情報ビット群が含まれる。
【００３５】
ここで、処理判定部18の判定動作のＰＡＤ（Problem Analysis Diagram）を図２に示す。判定処理部18は、アドレス解析結果信号sigaが０であればパケットを棄却し（L205）、アドレス解析結果信号が１であれば以降の処理を行なう（L201）。パケット棄却とは、受信バッファに格納したパケットを捨てるなど、受信待ち状態に戻すことを指す。アドレス解析結果信号が１であった場合は、メッセージＩＤ解析結果信号sigbにより処理が分かれる（L202）。メッセージID解析結果信号sigbが０である場合には、タスク実行依頼パケットでない自分宛のパケットであるために、通常の受信処理として、割り込み要求信号intreqをアサートする(L206)。メッセージＩＤ解析結果信号sigbが１である場合には、タスク実行依頼パケットであり、比較結果信号sigcを用いた判定処理（L203）を行なう。比較結果信号sigcが１であった場合、つまり、依頼タスクの要求実行時間よりも余裕時間の方が大きい場合、パケット返信指令信号sigdをアサートする（L204）。その結果、上述したように、パケット生成器から返信パケットが出力される。このように、なお、図２においてＰＡＤで示した処理は、回路規模が小さい論理回路で実現することが容易である。
【００３６】
以上の構成と動作により、負荷分散のためのタスク実行依頼パケットを受信した際に、引き受け可能か否かの判断が通信制御部15で行なわれるので、ＣＰＵ5に対して判断を求める割り込みが発生しない。従って、ＣＰＵ5の動作効率を低下させることがない。また、引き受け可能な場合は、引き受け可能を示す返信パケットがＣＰＵ5を経ずに即座に返信される。このように、ＣＰＵ5に引き受け可能か否かの判断を行なわせず（その判断を行なえば、当然に、ＣＰＵ5は返信パケット送信指令を生成して送信する必要がある）、通信モジュール3で判断とパケット返信指令の生成が行なわれるので、ＣＰＵへの負担を与えないという第１の課題と送信元に即座にパケットを返信するという第２の課題が解決される。
【００３７】
なお、マイクロプロセッサが管理する情報は、上記では余裕時間であるが、本発明はそれに限定されない。先に述べたように、回転数や温度など目的に応じた任意の各種の情報に対して、本発明は適用可能である。
【００３８】
＜実施形態２＞
図３に本発明の実施形態２を示す。実施形態では、実施形態１の場合と比較して、パケットの構造が異なり、それに伴って通信方法が異なるが、その他については実施形態１と同様である。実施形態１と同様にマイクロプロセッサ2の通信モジュール3の内部の構成を図３に示しているが、送信バッファ10、受信バッファ14及びバス4の図示は省略した。以下に、前実施形態との差異を中心に説明する。
【００３９】
本実施形態の通信パケットpac2は、宛先情報を持たず、メッセージ毎に固有の情報として与えられたメッセージＩＤを持つ。受信ノードにおいては、宛先情報ではなく、自分が受信すべきメッセージＩＤを記憶しておき受信判定を行なう通信方法が採用される。例えば、車載ＬＡＮで広く用いられているＣＡＮ（Control Area Network）はこのタイプのフレーム構造であり、１１ｂｉｔのメッセージＩＤ領域を持っている。
【００４０】
本実施形態では、実施形態１におけるアドレス解析部16が行なっていた自分宛か否かの判定と、メッセージＩＤ解析部19が行なっていた特定パケット（タスク実行依頼パケット）か否かの判定とを、メッセージＩＤ解析部192が合わせて行なう。メッセージＩＤ解析部192は、例えば、図３に示したパケットpac2のメッセージＩＤ部の上位ビットID１と、メッセージＩＤレジスタ群（idregs）202との比較により、受信すべきパケットか否かの判定を行ない、実施形態１と同様のアドレス解析結果信号sigaを生成する。更に、メッセージＩＤ解析部192は、パケットのメッセージＩＤ部の下位ビットID2と、メッセージＩＤレジスタ群202との比較により、特別のメッセージパケットであるか否かの判定を行ない、実施形態１と同様のメッセージＩＤ解析結果信号sigbを生成する。アドレス解析結果信号sigaとメッセージＩＤ解析結果信号sigbは、処理判定部18に入力される。以降の動作は実施形態１と同様であるため、説明を省く。
【００４１】
本実施形態により、通信パケットが宛先情報を持たず、メッセージ毎に固有の情報として与えられたメッセージＩＤを持つ場合にも、ＣＰＵへの負担を与えないという第１の課題と送信元に即座にパケットを返信するという第２の課題が解決される。
【００４２】
＜実施形態３＞
図４に本発明の実施形態３を示す。実施形態１，２では、タスク実行依頼パケットが採り上げられたが、本実施形態では、マイクロプロセッサが管理する情報が複数有り、それらのための複数のパケットに対して、パケット内のデータとレジスタデータとの比較により処理方法の判定が行なわれる。
【００４３】
本実施形態では、実施形態１と同様にパケットpac内には、宛先情報add、データdata領域に加えて、情報毎にメッセージ個別の認識情報ＩＤが格納されている。なお、本発明は、宛先情報addを持つパケットに限定されず、宛先情報addを持たないパケットに対しても適用可能である。
【００４４】
図４において、アドレス解析部16は、パケット内の宛先情報addと自分のアドレスを格納したレジスタ17の値とを入力し、自分宛のパケットか否かを判定し、処理判定部182にアドレス解析結果信号sigaを与える。
【００４５】
メッセージＩＤ解析部19は、パケット内のメッセージ認識情報ＩＤとメッセージＩＤレジスタ群202の値を入力とし、特別のメッセージパケットであるかを判定するメッセージＩＤ解析結果信号sigbを処理判定部182に与える。本実施形態においては、例えば、タスク実行依頼のパケットや、その他エンジン回転数データ転送パケット等複数の特別処理を行なうパケットに特定のＩＤが与えられ、メッセージＩＤレジスタ群202にはそれらと同一のＩＤが格納されている。メッセージＩＤ解析部19は、パケット内のメッセージ認識情報ＩＤとメッセージＩＤレジスタ群202のいずれかが一致した場合に、メッセージＩＤ解析結果信号sigbを１にし、それ以外は０にする。
【００４６】
データ比較器21はパケット内のデータdataの値と参照データレジスタ群（refregs）24の中から選択された値とを入力して両者を比較し、比較結果信号sigcを処理判定部182に与える。参照データレジスタ群24は、特別のメッセージに対応して備えておき、受信パケット内のメッセージ認識情報ＩＤに対応するものがセレクタ（sel）25によって選択されてデータ比較器21に与えられる。参照データレジスタ群24は、実施形態１の余裕時間レジスタ22と同様に、ＣＰＵ5により随時書き込まれる。比較結果信号sigcは、比較結果として、パケットデータが参照選択されたデータレジスタ群24の値より、大きいか、小さいか、等しいかを示す信号である。等しい場合も区別するためには、比較結果信号sigcは２ｂｉｔ信号となる。
【００４７】
処理判定部182は、上記３個の信号siga，sigb，sigcに加えて、処理方法判定用レジスタ群（proregs）26の中から選択されたレジスタの値が入力される。処理判定用レジスタ群26も、参照データレジスタ群24と同様に、セレクタ27により、受信パケット内のメッセージ認識情報IDに対応するものが選択される。処理判定部182は、実施形態１と同様に、割り込み要求信号intreq及びパケット返信指令信号sigdを出力する。パケット返信指令信号sigdは、通信モジュール内のパケット生成器11に対して、返信パケットレジスタ群（rpregs）28の中の選択された１つの内容を送信することを命令する信号である。返信パケットレジスタ群28も、処理判定用レジスタ群26や参照データレジスタ群24と同様に、セレクタ29により、受信パケット内のメッセージ認識情報ＩＤに対応するものが選択される。
【００４８】
処理判定部182の判定動作は図２に示したもの同様であり、アドレス解析結果信号sigaと、メッセージＩＤ解析結果信号sigbとにより処理方法が判定される。実施形態１と異なる点は、比較結果信号sigcを用いた判定処理にある。パケットの種類毎に柔軟に比較結果に応じた処理方法を、（１）パケット棄却、（２）割り込み要求信号発生、（３）パケット返信の３者の中から選択するために、処理方法判定用レジスタ群26の値が入力されている。処理方法判定用レジスタ群26の例を図５に示す。処理判定用レジスタ26は、パケットデータdataの値と参照データレジスタ24の値の比較結果に対応した３個の領域からなる。それぞれ２ｂｉｔの値で、上記の３つの処理を指定する。例えば、（００）の場合は、パケット棄却、（０１）の場合は割り込み要求信号発生、（１０）の場合はパケット返信などと決めておく。
【００４９】
一例として、実施形態１のタスク実行依頼パケット用の場合について説明する。この場合、パケットデータdataの値はタスクの要求処理時間であり、参照データレジスタ24に余裕時間が格納されている。実施形態１と同様に余裕時間が大きい場合は、パケット返信処理を行ない、それ以外はパケット棄却する。タスク実行依頼パケットに対する処理方法判定用レジスタ26の処理指定用ｂｉｔには、パケットデータの値＞参照データレジスタの値となる場合に、パケット棄却処理を示す（００）が格納される。同様に、パケットデータの値＝参照データレジスタの値となる場合に、処理指定用ｂｉｔには同じくパケット棄却を示す（００）が格納される。パケットデータの値＜参照データレジスタの値となる場合には、処理指定用ｂｉｔには、パケット返信処理を示す（１０）が格納される。
【００５０】
別のパケットの例として、エンジン回転数がパケット内のデータとして送信される場合について述べる。エンジン回転数がある値（例えば６０００回転）を上回っていた場合は、受信したマイクロプロセッサにおいて、一定の処理をＣＰＵが行なうとし、それ以外は処理しなくて良いとする。このパケットのＩＤに対応する参照データレジスタ24には、エンジン回転数の閾値６０００が格納される。また、処理方法判定用レジスタの処理指定用ｂｉｔには、パケットデータの値＞参照データレジスタの値となる場合に、割り込み要求信号発生を意味する（０１）を、それ以外の領域にはパケット棄却を意味する（００）が格納される。このようにすることで、各パケット毎に異なった処理を実行することが可能になる。処理判定部182は、処理方法判定用レジスタ26の値と比較結果信号sigcにより、割り込み要求信号intreqをアサートするか、パケット返信指令信号sigdをアサートするか、どちらもアサートしないかが決定される。
【００５１】
本実施形態により、マイクロプロセッサが管理する情報が複数となる場合にも、ＣＰＵへの負担を与えないという第１の課題と送信元に即座にパケットを返信するという第２の課題が解決される。
【００５２】
＜実施形態４＞
図６に本発明の実施形態４を示す。これまでの実施形態では、特別のパケットを受信した場合に、通信モジュール3内の比較器21により、パケット内のデータの値とレジスタの値を比較して、処理方法を判定するものであった。本実施形態のマイクロプロセッサが有する通信モジュール3では、図６に示すように、比較器21の代わりに、算術論理演算ユニット（以下「ＡＬＵ（Arithmetic Logic Unit）」という）30が備えられる。ＡＬＵ30は、算術演算及び論理演算を行なう機能を備えており、制御信号により機能が切り替えられる。ＡＬＵ30にパケット内のデータとレジスタの値が入力され、ＡＬＵ30の演算結果がパケットで返信される。実施形態１の場合と同様、パケットpac内には、宛先情報add、データdata領域に加えて、メッセージ個別に認識情報ＩＤが格納されている。なお、本発明は、宛先情報addを持つパケットに限定されず、宛先情報addを持たないパケットに対しても適用可能である。
【００５３】
図６において、アドレス解析部16は、パケットpac内の宛先情報addと自分のアドレスを格納したレジスタ17の値を入力し、自分宛のパケットか否かを判定し、処理判定部183にアドレス解析結果信号sigaを与える。
【００５４】
メッセージＩＤ解析部19は、パケットpac内のメッセージ認識情報ＩＤとメッセージＩＤレジスタ群202の値を入力とし、特別のメッセージパケットであるかを判定するメッセージＩＤ解析結果信号sigbを処理判定部183に与える。
【００５５】
ＡＬＵ30は、パケットpac内のデータdataと参照データレジスタ群24の中の１つを選択し、両者を入力して演算を行なう。その演算結果data2はパケットでパケット生成器11に与えられる。実施形態３の場合と同様、参照データレジスタ群24は特別のメッセージに対応して備えられており、受信パケット内のメッセージ認識情報ＩＤに対応するデータがセレクタ25によって選択される。ＡＬＵ30にはＡＬＵ制御レジスタ群（conregs）32が備えられる。ＡＬＵ制御レジスタ群32の値は、ＡＬＵ30の動作を制御する信号として、ＡＬＵ30に入力される。ＡＬＵ制御レジスタ群32も参照データレジスタ群24と同様に、セレクタ32により、受信パケット内のメッセージ認識情報ＩＤに対応するものが選択される。
【００５６】
処理判定部183は、これまでの実施形態と同様に、アドレス解析結果信号sigaが０であればパケットを棄却する。また、メッセージＩＤ解析結果信号sigbが０の場合は、通常のパケットの受信処理として、割り込み要求信号intreqをアサートする。メッセージＩＤ解析結果信号sigb が１である場合には、パケット返信指令信号sigdをアサートする。パケット生成器8には、演算結果data2が入力されており、パケット返信指令信号sigdがアサートされた場合に、パケット生成器8に演算結果data2がパケットで返信される。
【００５７】
本実施形態により、特別のパケットに対しては、ＣＰＵ5が処理するのではなく、通信モジュール3で演算を行ない、結果を高速なレスポンスで返信することが可能となる。なお、本実施形態では、演算機能としてＡＬＵ30を備える例を説明したが、回路規模の増加を許容することができる場合は、ＡＬＵ30よりも高機能な専用演算器やプログラムの実行が可能な小規模なＣＰＵ、或いは動的に機能を再構成可能な回路などを用いることができる。それにより、高度な処理を行なう必要がある受信パケットに対応することが可能になり、メインのＣＰＵ5の負荷を更に低減することができる。
【００５８】
＜実施形態５＞
図７に本発明の実施形態５を示す。本実施形態においては、実施形態4と同様に、ＡＬＵ30が備えられ、パケット内のデータとレジスタの値がＡＬＵ30に入力され、ＡＬＵ30で演算が行なわれる。実施形態４では、演算結果data2はパケットでパケット生成器11に返信されたが、本実施形態では、図７に示すように、演算結果は通信モジュール3からマイクロプロセッサ内部へと出力される。演算結果は、図７では図示していないが、ＣＰＵ5において処理される。また、本実施形態では、アドレス解析部16の出力が割り込み要求信号として利用される。つまり、宛先が一致したパケットに対して割り込み要求信号1ntreqがアサートされる。本実施形態の目的は、これまでの実施形態のようにＣＰＵ5への割り込みを抑制するものでなく、ＣＰＵ5のパケット受信後の処理の一部を通信モジュール3のＡＬＵ30で行なうことによりＣＰＵ5の負荷を低減することである。実施形態１の場合と同様、パケットpac内には、宛先情報add、データdata領域に加えて、メッセージ個別に認識情報ＩＤが格納されている。なお、本発明は、宛先情報addを持つパケットに限定されず、宛先情報addを持たないパケットに対しても適用可能である。
【００５９】
図７において、アドレス解析部16は、パケットpac内の宛先情報addと自分のアドレスを格納したレジスタ17の値を入力し、一致した場合に、割り込み要求信号intreqをアサートする。
【００６０】
メッセージＩＤ解析部19は、パケットpac内のメッセージ認識情報ＩＤとメッセージＩＤレジスタ群202の値を入力とし、特別のメッセージパケットであるかを判定するメッセージＩＤ解析結果信号sigbを出力する。
【００６１】
ＡＬＵ30はパケットpac内のデータdataと参照データレジスタ群24の中の１つ選択し、両者を入力して演算を行ない、演算結果data3を出力する。演算結果data3とパケット内のデータdataはセレクタ33に入力される。セレクタ33は、メッセージＩＤ解析結果信号sigbを選択信号として入力し、演算結果data3とパケット内のデータdataのどちらかをdata4として出力する。つまり、特別のＩＤパケットの場合は演算結果が選択され、通常のパケットの場合は受信パケット内のデータdataが選択される。このように、ＣＰＵ5のパケット受信後の処理の一部（演算）をＡＬＵ30が行なうことにより、ＣＰＵ5の負荷を低減することできる。
【００６２】
以下に、上記の各実施形態で用いられるパケット及びその変形の幾つかの例について、その構成の詳細を説明する。図８に示すパケットは、実施形態２等で用いられる通信パケットpac2に相当する第１のパケット例で、宛先情報を持たず、メッセージ毎に固有の情報として与えられたメッセージＩＤを持つ。同パケットは、ＣＡＮの標準データフレームのＩＤフィールド内に本発明の特別処理を行なうパケットを示すＩＤフィールドを定めたものである。ＣＡＮのデータフレームは、開始位置を示す１ｂｉｔのSOF、１２ｂｉｔのArbitrationフィールド、データ長を示すコードと予約ビットを含んだ６ｂｉｔのControlフィールド、０〜８ＢｙｔｅのDataフィールド、フレームの転送エラーをチェックするための１６ｂｉｔのCRCフィールド、２ｂｉｔのACKフィールド、７ｂｉｔのEOFフィールドから成る。Arbitrationフィールドは、１１ｂｉｔのIDフィールドと、１ｂｉｔのRTRフィールドから成る。
【００６３】
RTRフィールドは、データの送信を要求するリモートフレームかデータを送信するデータフレームかを指定するための１ｂｉｔのフラグである。データフレームの場合は、０に設定される。ＩＤ領域はメッセージ個別に与えられるメッセージ認識情報である。ＣＡＮは、送信ノード側が受信アドレスを指定する通信方法ではなく、受信ノードが自分が受信するＩＤを覚えておくことにより、受信ノードは、自分に必要な受信メッセージのみを受信する。この方法は、実施形態２で説明した通信方法に属する。本発明では、１１ｂｉｔのIDフィールドが更に、８ｂｉｔのID1フィールドと3ｂｉｔのID2フィールドに分けて使用される。
【００６４】
受信ノードは、ID１フィールドを用いて、実施形態２で説明したメッセージＩＤレジスタ群202との比較により、受信すべきパケットかどうかの判定を行ない、更にID2フィールドを用いて、特別のメッセージパケットであるかの判定を行なう。これにより、実施形態２におけるメッセージＩＤ解析結果信号sigbを生成することができる。例えば、通常のメッセージでは、ID2フィールドを(000)にしておき、特別処理を行なうメッセージは、これらの３ｂｉｔのいずれかに１を含むようにする。これにより、7種類の特別処理メッセージを設定することができる。受信ノードでは、ID2フィールドが(000)であるか否かを判定する簡単な判定方法により、実施形態２で示したようなメッセージＩＤ解析結果信号sigbを生成することができる。
【００６５】
次に、図９に、実施形態２等で用いられる通信パケットpac2を変形した第２のパケット例を示す。図９に示すパケットは、図８に示したパケットと同様、ＣＡＮの標準データフレームである。第２の例では、特別処理を行なうメッセージであることを認識するためのID2フィールドにDataフィールド内の１Ｂｙｔｅ分を利用したものである。メッセージＩＤの１１ｂｉｔを自由に設定できない場合や、特別処理メッセージの数を増やしたい場合には、第２の例が第１の例より優れている。ただし、データフィールドの１Ｂｙｔｅを利用しているため、データ転送効率は落ちる。通常のメッセージでもDataフィールドを１Ｂｙｔｅ犠牲にする必要がある。
【００６６】
続いて、図１０に、実施形態２等で用いられる通信パケットpac2を変形した第３のパケット例を示す。図１０に示した第３の例は、図８及び図９と同様、ＣＡＮの標準データフレームである。第３の例は、第２の例と同様に、特別処理を行なうメッセージであることを認識するためのID2フィールドにDataフィールド内の１Ｂｙｔｅ分を利用したものである。更に、特定メッセージであるか否かを示すフラグFlagフィールドがIDフィールドの１ｂｉｔを利用して設けられている。これにより、通常のメッセージでは、Dataフィールドの１Ｂｙｔｅを無駄にすることがなくなる。
【００６７】
更に、図１１に、実施形態２等で用いられる通信パケットpac2に相当する第４のパケット例を示す。図１１に示すパケットは、ＣＡＮとは別の通信規格であるFlexRayのフレームである。FlexRayはＣＡＮよりも高速なデータレートであり、今後の車載ＬＡＮへの適用が予定される通信規格である。FlexRayのフレームは、図１１では図示を省略した各1bitのリザーブbit、Payload preamble indicator、Null frame indicator、Sync frame indicator、Startup frame indicatorの計５ｂｉｔのフィールド、１１ｂｉｔのFrame IDフィールド、７ｂｉｔのPayload lengthフィールド、１１ｂｉｔのHeader CRC、6bitのCycle Countフィールド、最大２５４Ｂｙｔｅのデータフィールドと２４ｂｉｔのCRCフィールドから成る。
【００６８】
第４の例は、第１の例と同様に、特別処理を行なうメッセージであることを認識するためのID2フィールドにFrame IDフィールドの３ｂｉｔ分を利用したものである。第１の例と同様に、受信ノードは、ID2フィールドを用いて特別のメッセージパケットであるかの判定を行ない、実施形態２におけるメッセージＩＤ解析結果信号sigbを生成することができる。
【００６９】
次に、図１２に、実施形態２等で用いられる通信パケットpac2を変形した第５のパケット例を示す。図１２に示すパケットは、図１１に示したパケットと同様、FlexRayのフレームである。第５の例は、第２の例のＣＡＮデータフレームの場合と同様に、特別処理を行なうメッセージであることを認識するためのID2フィールドにDataフィールド内の１Ｂｙｔｅ分を利用したものである。メッセージIDの１１ｂｉｔを自由に設定できない場合や、特別処理メッセージの数を増やしたい場合には、第５の例が第４の例より優れている。ただし、データフィールドの１Ｂｙｔｅを利用しているため、データ転送効率は落ちる。通常のメッセージでもDataフィールドを１Ｂｙｔｅ犠牲にする必要がある。
【００７０】
続いて、図１３に、実施形態２等で用いられる通信パケットpac2を変形した第６のパケット例を示す。図１３に示すパケットは、図１１及び図１２に示したパケットと同様、FlexRayのフレームである。第６の例は、第５のパケットと同様に、特別処理を行なうメッセージであることを認識するためのID2フィールドにDataフィールド内の１Ｂｙｔｅ分を利用したものである。更に、特定メッセージであるか否を示すフラグFlagフィールドをFrame IDフィールドの1bitを利用して設けてある。これにより、通常のメッセージでは、Dataフィールドの１Ｂｙｔｅを無駄にすることがなくなる。
【００７１】
更に、図１４に、実施形態１及び実施形態３〜５で用いられる通信パケットを変形した第７のパケット例を示す。図１４に示したパケットは、ＴＣＰ／ＩＰのイーサーネットVer.2のフレーム構造である。このフレーム構造では、ＣＡＮやFlexRayのフレームとは異なり、宛先アドレスのフィールドが備えられる。イーサーネットVer.2のフレームは、６Ｂｙｔｅの宛先MACアドレスフィールド、６Ｂｙｔｅの送信元MACアドレスフィールド、２ＢｙｔｅのTypeフィールド、４６〜１５００ＢＹＴＥのDataフィールド、フレームの転送エラーをチェックするための４ＢｙｔｅのCRCフィールドから成る。
【００７２】
このタイプのフレームは、フレームに受信アドレスを指定する通信方法で用いられ、受信ノードは、自分のアドレスとの一致を調べ、自分に必要な受信メッセージのみを受信する。この方法は、実施形態１で説明した通信方法に属する。受信ノードは、Dataフィールド内の１Ｂｙｔｅの領域を利用して設けたIDフィールドを用いて、特別処理を行なうメッセージパケットであるかの判定を行ない、実施形態１及び実施形態３〜５におけるメッセージＩＤ解析結果信号sigbを生成する。
【図面の簡単な説明】
【００７３】
【図１Ａ】本発明に係るマイクロプロセッサの実施形態１の通信モジュールを説明するための構成図。
【図１Ｂ】本発明に係るマイクロプロセッサ及びネットワークシステムの実施形態１を説明するための構成図。
【図２】実施形態１の処理判定部の機能ＰＡＤを説明するための図。
【図３】本発明の実施形態２の通信モジュールを説明するための構成図。
【図４】本発明の実施形態３の通信モジュールを説明するための構成図。
【図５】実施形態３で用いられる処理方法判定用レジスタを説明するための構成図。
【図６】本発明の実施形態４の通信モジュールを説明するための構成図。
【図７】本発明の実施形態５の通信モジュールを説明するための構成図。
【図８】本発明の実施形態に用いられる第１のパケット例を説明するための図。
【図９】本発明の実施形態に用いられる第２のパケット例を説明するための図。
【図１０】本発明の実施形態に用いられる第３のパケット例を説明するための図。
【図１１】本発明の実施形態に用いられる第４のパケット例を説明するための図。
【図１２】本発明の実施形態に用いられる第５のパケット例を説明するための図。
【図１３】本発明の実施形態に用いられる第６のパケット例を説明するための図。
【図１４】本発明の実施形態に用いられる第７のパケット例を説明するための図。
【図１５】従来のマイクロプロセッサの通信モジュールとネットワークシステムを説明するための構成図。
【図１６】従来の通信方法を説明するためのフロー図。
【符号の説明】
【００７４】
1…ネットワーク、2…通信モジュール、3…マイクロプロセッサ、4…バス、5…ＣＰＵ、6…割込制御部、7…内部記憶装置、8…送信器、9…受信器、10…送信バッファ、11…パケット生成器、12…パケット再生器、14…受信バッファ、15…通信処理部、16…アドレス解析部、17，20，22，23，24，26，28，31，202…レジスタ、18，182，183…処理判定部、19，192…メッセージＩＤ解析部、21…データ比較器、25，27，29，32，33…セレクタ、30…ＡＬＵ。
【図１Ａ】
2006352706.tif 000003
【図１Ｂ】
2006352706.tif 000004
【図２】
2006352706.tif 000005
【図３】
2006352706.tif 000006
【図４】
2006352706.tif 000007
【図５】
2006352706.tif 000008
【図６】
2006352706.tif 000009
【図７】
2006352706.tif 000010
【図８】
2006352706.tif 000011
【図９】
2006352706.tif 000012
【図１０】
2006352706.tif 000013
【図１１】
2006352706.tif 000014
【図１２】
2006352706.tif 000015
【図１３】
2006352706.tif 000016
【図１４】
2006352706.tif 000017
【図１５】
2006352706.tif 000018
【図１６】
2006352706.tif 000019