(57)【要約】【課題】通信確立後にスリープ状態の未ウェイクアップノードが存在する場合でも、システム再起動などを行うことなく当該未ウェイクアップノードをウェイクアップさせてネットワークに加入させ、ネットワーク上の全てのノード間で適切な通信を行わせることができるようにする。【解決手段】ネットワーク上のノードＡ〜Ｄのうちの少なくとも何れかに、未ウェイクアップノード検出回路１４と、ネットワーク・アイドルタイム検出回路１５と、擬似ウェイクアップ信号送信回路１６とを設け、当該ノードが、ネットワークに加入できていない未ウェイクアップノードを検出すると、コミュニケーション・サイクル内のアイドル期間であるネットワーク・アイドルタイムを利用して、ウェイクアップ信号と同じパターンの擬似ウェイクアップ信号を送信する。【選択図】図１
2008042888.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク上の何れかのノードが内部イベントによりスリープ状態からウェイクアップしてウェイクアップ信号を送信するとともに、ネットワーク上の他のノードが前記ウェイクアップ信号を受信することでスリープ状態からウェイクアップしてネットワークに加入し、通信準備処理の後、ネットワーク上の各ノードが、データ転送期間とアイドル期間とを有する通信周期の中の前記データ転送期間内でフレームの送受信を行う通信ネットワークシステムにおいて、
前記ネットワーク上の少なくとも何れかのノードが、
前記通信準備処理が行われた後に未だウェイクアップしていないノードを検出する未ウェイクアップノード検出手段と、
前記通信周期の中のアイドル期間を検出するアイドル期間検出手段と、
前記未ウェイクアップノード検出手段で未ウェイクアップノードが検出されたときに、前記アイドル期間検出手段で検出されたアイドル期間内で、前記ウェイクアップ信号に相当する擬似ウェイクアップ信号を送信する擬似ウェイクアップ信号送信手段とを備えることを特徴とする通信ネットワークシステム。
【請求項２】
前記未ウェイクアップノード検出手段は、ネットワークに加入すべきノードに関する情報を記憶しており、前記通信周期の中の前記データ転送期間内で前記ネットワークに加入すべきノードからのデータが受信できているか否かを監視することで、前記未ウェイクアップノードを検出することを特徴とする請求項１に記載の通信ネットワークシステム。
【請求項３】
前記通信周期におけるアイドル期間の開始タイミングは予め定められており、
前記アイドル期間検出手段は、前記通信周期の開始を検出した後の経過時間をカウントすることで、前記通信周期の中のアイドル期間を検出することを特徴とする請求項１に記載の通信ネットワークシステム。
【請求項４】
前記擬似ウェイクアップ信号送信手段は、予め定められた所定回数の通信周期で前記擬似ウェイクアップ信号を送信した後は、前記未ウェイクアップノード検出手段の検出結果に拘わらず、前記擬似ウェイクアップ信号の送信を停止することを特徴とする請求項１に記載の通信ネットワークシステム。
【請求項５】
前記ネットワーク上の各ノードは、既にネットワークに加入している状態で前記擬似ウェイクアップ信号を受信したときに、当該擬似ウェイクアップ信号を受信したことによる処理を行わないことを特徴とする請求項１に記載の通信ネットワークシステム。
【請求項６】
ネットワーク上の何れかのノードが内部イベントによりスリープ状態からウェイクアップしてウェイクアップ信号を送信するとともに、ネットワーク上の他のノードが前記ウェイクアップ信号を受信することでスリープ状態からウェイクアップしてネットワークに加入し、通信準備処理の後、ネットワーク上の各ノードが、データ転送期間とアイドル期間とを有する通信周期の中の前記データ転送期間内でフレームの送受信を行う通信ネットワークシステムにおいて、前記通信準備処理が行われた後に未だウェイクアップしていない未ウェイクアップノードをウェイクアップさせる方法であって、
前記ネットワーク上の少なくとも何れかのノードが、前記未ウェイクアップノードを検出したときに、前記通信周期の中のアイドル期間内で、前記ウェイクアップ信号に相当する擬似ウェイクアップ信号を送信し、当該擬似ウェイクアップ信号を前記未ウェイクアップノードに受信させることによって、前記未ウェイクアップノードをウェイクアップさせることを特徴とする未ウェイクアップノードのウェイクアップ方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信ネットワークシステム、及び、通信ネットワークシステムにおける未ウェイクアップノードのウェイクアップ方法に関する。
【背景技術】
【０００２】
車両に搭載される通信ネットワークシステムのプロトコルの１種として、ＦｌｅｘＲａｙ（Daimler Chrysler AGの登録商標）と呼ばれる通信プロトコルが知られている。このＦｌｅｘＲａｙは、高い信頼性を確保しながら最大１０Ｍｂｐｓ程度の通信速度を実現するものであり、車両走行に直接関わる部分の電子化制御（Ｘ−ｂｙ−ｗｉｒｅ）を実用化する上での重要な技術として注目されている。
【０００３】
通信プロトコルとしてＦｌｅｘＲａｙを採用する通信ネットワークシステムでは、ネットワーク上の各ノードをウェイクアップさせるためのウェイクアップ処理と、通信準備のためのスタートアップ処理とを経て、各ノードが通常の通信を行えるノーマル状態に遷移して、コミュニケーション・サイクルと呼ばれる通信周期ごとに、時分割多重により各ノード間でフレームの送受信が行われる。
【０００４】
ＦｌｅｘＲａｙでのウェイクアップ処理は、以下のような手順で行われる。すなわち、まず、ネットワーク上の何れかのノードが、スイッチ操作などに応じた内部イベントによってスリープ状態からウェイクアップする。そして、この内部イベントによりウェイクアップしたノードが、特定パターンのウェイクアップ信号を通信バス上に送出する。このとき、スリープ状態となっている他のノードは、特定パターンのウェイクアップ信号のみの受信が可能な状態であり、内部イベントによりウェイクアップしたノードが通信バス上にウェイクアップ信号を送出すると、それを受信する。そして、特定パターンのウェイクアップ信号を受信した他のノードは、スリープ状態からウェイクアップしてネットワークに加入する。これにより、ウェイクアップ処理が完了し、その後、スタートアップ処理が行われる。なお、ＦｌｅｘＲａｙにおけるウェイクアップ処理については、下記非特許文献１に詳細が記載されている。
【非特許文献１】「FlexRay Communication System Protocol Specification Version2.1 RevisionA」，２００５年１２月，ｐ．１４２−１５２
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、以上のようなウェイクアップ処理を行っている間に、ネットワーク上の一部のノードで一時的なノイズの混入や電圧低下などが生じた場合、当該一部のノードはウェイクアップ信号を受信できずにスリープ状態のままとなり、当該一部のノードがネットワークに加入できていない状態で通信が確立してしまうことも想定される。このような場合、現状では、通信確立後にスリープ状態のノードをウェイクアップさせる機会（再送機能）が設けられていないため、このような未ウェイクアップノードをネットワークに加入させるためには、システムを再起動させてウェイクアップ処理をやり直す必要があり、処理が煩雑になるという問題があった。
【０００６】
本発明は、以上のような従来の実情に鑑みて創案されたものであって、通信確立後にスリープ状態の未ウェイクアップノードが存在する場合でも、システム再起動などを行うことなく当該未ウェイクアップノードをウェイクアップさせてネットワークに加入させ、ネットワーク上の全てのノード間で適切な通信を行わせることができる通信ネットワークシステム及び未ウェイクアップノードのウェイクアップ方法を提供することを目的としている。
【課題を解決するための手段】
【０００７】
本発明は、ネットワーク上の何れかのノードが内部イベントによりスリープ状態からウェイクアップしてウェイクアップ信号を送信するとともに、ネットワーク上の他のノードが前記ウェイクアップ信号を受信することでスリープ状態からウェイクアップしてネットワークに加入し、通信準備処理の後、ネットワーク上の各ノードが、データ転送期間とアイドル期間とを有する通信周期の中の前記データ転送期間内でフレームの送受信を行う通信ネットワークシステムを対象とする。このような通信ネットワークシステムにおいて、本発明では、ネットワーク上の少なくとも何れかのノードに、通信準備処理が行われた後に未だウェイクアップしていない未ウェイクアップノードを検出したときに、通信周期の中のアイドル期間内で、ウェイクアップ信号に相当する擬似ウェイクアップ信号を送信する機能を持たせることで、上述した課題を解決する。
【発明の効果】
【０００８】
本発明によれば、通信確立後に未ウェイクアップノードが存在する場合には、通信周期の中のアイドル期間を利用してウェイクアップ信号に相当する擬似ウェイクアップ信号が送信されるので、システム再起動などを行うことなく通信確立後に未ウェイクアップノードをウェイクアップさせてネットワークに加入させることができ、ネットワーク上の全てのノード間で適切な通信を行わせることができる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の実施形態として、通信プロトコルにＦｌｅｘＲａｙを採用した車載用の通信ネットワークシステムに本発明を適用した例について、具体的に説明する。通信プロトコルにＦｌｅｘＲａｙを採用した通信ネットワークシステムでは、上述したように、システム起動時の処理として、ネットワーク上の各ノードをウェイクアップさせるためのウェイクアップ処理が行われるが、本実施形態の通信ネットワークシステムでは、起動時のウェイクアップ処理でウェイクアップされずにネットワークに加入できなかった未ウェイクアップノードを通信確立後にウェイクアップさせる機能を、ネットワーク上の少なくとも何れかのノードに持たせている点に大きな特徴を有している。
【００１０】
本実施形態の通信ネットワークシステムの構成を図１に示す。本実施形態の通信ネットワークシステムは、ネットワーク上のノードとして４つのノードＡ〜Ｄを備えており、これらノードＡ〜Ｄが通信バス１０にそれぞれ接続されて構成される。具体的な例を挙げると、例えば、ノードＡは車両のハザードスイッチがオンされたか否かを検出するノードであり、ノードＢは車両のヘッドランプを点灯させるためのノード、ノードＣは車内のメータに車両の各種状態を表示させるためのノード、ノードＤは実際に車両のハザードランプを点灯させるためのノードである。これらノードＡ〜Ｄは、それぞれが個別に動作するものではなく、所定のノード（例えばノードＡ）の動作に伴って一連の動作を行うものである。この通信ネットワークシステムでは、システム起動時のウェイクアップ処理やスタートアップ処理が終了して通信が確立した後、これらノードＡ〜Ｄの間で、コミュニケーション・サイクルと呼ばれる通信周期ごとに、予め定められたスケジュールに従って時分割多重方式によりフレームの送受信が行われる。
【００１１】
コミュニケーション・サイクルは、図２に示すように、スタティック・セグメント（静的領域）と、ダイナミック・セグメント（動的領域）と、シンボル・ウィンドウと、ネットワーク・アイドルタイムの４つのセグメントから構成される。
【００１２】
スタティック・セグメントは、フレームサイズ一定でデータ転送を行う期間であり、ダイナミック・セグメントは、フレームサイズ可変でデータ転送を行う期間である。これらスタティック・セグメントやダイナミック・セグメントでは、１つのフレームを送信する時間区分であるスロットが定められ、ネットワーク上の各ノードＡ〜Ｄは、自ノードに割り当てられたスロット内で、自ノードのアプリケーションデータを含むフレームを通信バス１０上に送出する。
【００１３】
シンボル・ウィンドウは、ノードのフレーム送出タイミングを監視する機能（バス・ガーディアン）の正常性を確認するための領域である。また、ネットワーク・アイドルタイムは、コミュニケーション・サイクルごとに必ず設けられるフレーム転送が行われないアイドル期間であり、通常は、エラー訂正やクロック同期の同期補正量算出などで使用される領域であるが、特に本実施形態の通信ネットワークシステムでは、このネットワーク・アイドルタイムを、ノードＡ〜Ｄの何れかが、後述する擬似ウェイクアップ信号を通信バス１０上に送出するための領域としても使用する。なお、上述したスタティック・セグメントとネットワーク・アイドルタイムは、コミュニケーション・サイクルの中に必ず設けられる領域であるが、ダイナミック・セグメントとシンボル・ウィンドウはオプションとして設定されるものであり、通信ネットワークシステムの構成や用途によっては不要とされる。
【００１４】
以上のコミュニケーション・サイクルは、マクロティック（ＭＴ）と呼ばれる時間単位を基準として、このマクロティックの整数倍の長さに設定されている。また、コミュニケーション・サイクル内の上述した４つのセグメントそれぞれのサイズも、マクロティックの整数倍の長さで設計時に予め決められている。ネットワーク上の各ノードＡ〜Ｄは、このマクロティックをもとにネットワーク上の共通時間であるグローバルタイムを認識しており、グローバルタイムに従いノードＡ〜Ｄ間で同期を取りながら通信を行っている。
【００１５】
本実施形態の通信ネットワークシステムにおいて、ネットワーク上の各ノードＡ〜Ｄは、一般的な内部構成として、ホストＣＰＵ１１と、通信コントローラ１２と、バスドライバ１３とを備えている。ホストＣＰＵ１１は通信コントローラ１２の制御を行い、通信バス１０からの送受信データの授受を司る。また、通信コントローラ１２は、ホストＣＰＵ１１からの送受信データを所定の通信フォーマットに変換するとともに、所定の通信フォーマットに基づいて通信バス１０からの通信データをホストＣＰＵ１１に受け渡す機能を有する。また、バスドライバ１３は、通信コントローラ１２で扱うデータを通信バス１０上で送受信するために、電圧レベルと論理レベルとの変換を行う。なお、図１においては、ノードＡの内部構成のみを図示しているが、ノードＢ，Ｃ，Ｄの内部にも、これらホストＣＰＵ１１と通信コントローラ１２とバスドライバ１３がそれぞれ設けられている。
【００１６】
また、本実施形態の通信ネットワークシステムでは、ネットワーク上の各ノードＡ〜Ｄのうちの少なくとも何れかが、上述したホストＣＰＵ１１と通信コントローラ１２とバスドライバ１３のほかに、未ウェイクアップノード検出回路１４と、ネットワーク・アイドルタイム検出回路１５と、擬似ウェイクアップ信号送信回路１６とを備えている。未ウェイクアップノード検出回路１４は、システム起動時のウェイクアップ処理でウェイクアップされずにネットワークに加入できなかった未ウェイクアップノードを検出する回路である。また、ネットワーク・アイドルタイム検出回路１５は、上述したコミュニケーション・サイクルの中のネットワーク・アイドルタイム（アイドル期間）を検出する回路である。また、擬似ウェイクアップ信号送信回路１６は、システム起動時のウェイクアップ処理の際に通信コントローラ１２が送信するウェイクアップ信号と同じパターンの信号を、擬似ウェイクアップ信号として通信バス１０上に送出する回路である。なお、図１においては、これら未ウェイクアップノード検出回路１４とネットワーク・アイドルタイム検出回路１５と擬似ウェイクアップ信号送信回路１６とがノードＡに設けられている例を示しているが、これら未ウェイクアップノード検出回路１４、ネットワーク・アイドルタイム検出回路１５、擬似ウェイクアップ信号送信回路１６は、ノードＡ以外の他のノードに設けられていてもよいし、ネットワーク上の全てのノードＡ〜Ｄにそれぞれ設けられていてもよい。
【００１７】
ここで、以上のように構成される本実施形態の通信ネットワークシステムにおいて、ノードＡが内部イベントによりウェイクアップされるノードであり、また、未ウェイクアップノード検出回路１４やネットワーク・アイドルタイム検出回路１５、擬似ウェイクアップ信号送信回路１６がノードＡ内部に設けられている場合を例に挙げて、本発明に関連する部分の動作を具体的に説明する。ここで、スリープ状態のノードをウェイクアップさせる状況としては、例えば、車両のエンジンが停止状態のときにハザードランプを点灯させる状況などが考えられる。
【００１８】
まず、システム起動前で通信バス１０がスリープ中にあるときは、ネットワーク上の全てのノードＡ〜Ｄにおいて、ホストＣＰＵ１１によりバスドライバ１３のＢＤスリープフラグがオンされていることにより、バスドライバ１３はスリープ状態とされ、システム全体の消費電力低減が図られている。バスドライバ１３がスリープ状態とされている間は、特定パターンのウェイクアップ信号以外の通信バス１０上のいかなる信号も、バスドライバ１３から通信コントローラ１２へと転送されることはない。
【００１９】
ここで、例えば、ユーザによるスイッチ操作（例えばハザードスイッチの操作）などにより、ノードＡ（ハザードスイッチがオンされたか否かを検出するノード）をウェイクアップさせるための内部イベント（ノードＡ自身がハザードスイッチがオンされたことを検出する）が発生すると、ノードＡのホストＣＰＵ１１は、バスドライバ１３のＢＤスリープフラグをオフして、バスドライバ１３をスリープ状態から開放する。その後、ノードＡのホストＣＰＵ１１は、通信コントローラ１２のウェイクアップ信号フラグをオンする。
【００２０】
ノードＡの通信コントローラ１２は、ウェイクアップ信号フラグがオン状態となると、例えば図３に示すような特定パターンのウェイクアップ信号をバスドライバ１３から通信バス１０上に送出させる。バスドライバ１３は、通信コントローラ１２から転送されるウェイクアップ信号を論理レベルから電圧レベルに変換して通信バス１０を駆動することで、図３のようなウェイクアップ信号を通信バス１０上に送出する。なお、ウェイクアップ信号は、図２の通信周期（コミュニケーション・サイクル）が発生する前の段階で一回のみ送信することができる信号である。
【００２１】
このとき、ノードＢ，Ｃ，Ｄのバスドライバ１３はスリープ状態となっているが、特定パターンのウェイクアップ信号は検出可能であり、ノードＡから通信バス１０上に送出されたウェイクアップ信号を検出すると、ホストＣＰＵ１１のウェイクアップ検出フラグをオンする。そして、ホストＣＰＵ１１は、ウェイクアップ検出フラグがオンされたことにより、ウェイクアップ信号が通信バス１０上に送出されたことを検知して、バスドライバ１３のＢＤスリープフラグをオフすることで、バスドライバ１３をスリープ状態から開放する。これにより、ノードＢ，Ｃ，Ｄはスタートアップ処理の後にネットワークに加入した状態となり、通信コントローラ１２の機能により通信が可能となる。なお、ノードＢ，Ｃ，Ｄがネットワークに加入する方法（スタートアップ処理）は、例えば以下のようになる。すなわち、ノードＡから通信バス１０上に送出されたウェイクアップ信号をノードＢ，Ｃ，Ｄのいずれか（例えばノードＣ）が最初に受信すると、ノードＡと最初にウェイクアップ信号を受信したノードＣとがコミュニケーション・サイクルのネットワーク・アイドルタイムで同期を取り、次にウェイクアップ信号を受信したノードはこれに準じて同期を取り、これを繰り返して全てのノードで同期を取って通信を行う。つまり、ネットワークに加入するには、最低限２つのノードで同期を合わせることが必要となる。
【００２２】
ここで、ノードＡから通信バス１０上にウェイクアップ信号が送出されたときに、例えばノードＤ（ハザードランプを点灯させるためのノード）に一時的なノイズの混入、電源電圧の変動、温度変化など、ウェイクアップ信号の検出を阻害する何らかの要因が発生し、ノードＤのバスドライバ１３が、ノードＡから送出されたウェイクアップ信号を検出できなかったものとする。この場合、ノードＤ（ハザードランプを点灯させるためのノード）のホストＣＰＵ１１は、ウェイクアップ検出フラグがオフのままであるため、ウェイクアップ信号が通信バス１０上に送出されたことを検知できない。したがって、バスドライバ１３のＢＤスリープフラグはオンのままとなり、ノードＡから通信バス１０上にウェイクアップ信号が送出されたにもかかわらず、バスドライバ１３のスリープ状態が継続され、ノードＤ（ハザードランプを点灯させるためのノード）はネットワークに加入することができない。この例のように、ハザードスイッチがオンされたことを検出したノードＡの動作に伴って、ハザードランプを点灯させるためのノードＤがネットワークに加入していないと、車両のハザードランプは点灯しないことになる。
【００２３】
このような場合、本実施形態の通信ネットワークシステムでは、ウェイクアップ処理やスタートアップ処理を経て通信が確立した後、ネットワーク上の何れかのノード（ここで説明する例ではノードＡ）が、ウェイクアップ処理でウェイクアップされずにネットワークに加入できていない未ウェイクアップノード（ここで説明する例ではノードＤ）が存在することを検出し、コミュニケーション・サイクルの中のアイドル期間であるネットワーク・アイドルタイム内で、ウェイクアップ信号と同じパターンの擬似ウェイクアップ信号を通信バス１０上に送出することで、未ウェイクアップノードを通信確立後にウェイクアップさせてネットワークに加入できるようにしている。
【００２４】
具体的に説明すると、システム起動時のウェイクアップ処理及びスタートアップ処理が終了して通信が確立した後（ここでは、例えば、ハザードスイッチがオンされたことを検出したノードＡからのウェイクアップ信号を、メータに各種状態を表示させるためのノードＣが受信して通信を確立させたとする）、ノードＡは、コミュニケーション・サイクルの中のスタティック・セグメントやダイナミック・セグメントで他ノード（例えばノードＣ）との間で通信を行っている間に、未ウェイクアップノード検出回路１４により、未ウェイクアップノードが存在するか否かを判定する。未ウェイクアップノード検出回路１４は、ネットワークに加入すべきノードに関する情報、つまり、本例ではノードＢ，Ｃ，Ｄがネットワーク上に存在し、ノードＡがこれらノードＢ，Ｃ，Ｄから送信されるフレームを受信すべきであることを示す情報を、内部メモリに記憶している。そして、未ウェイクアップノード検出回路１４は、他ノードとの間での通信が開始されてコミュニケーション・サイクルの中のスタティック・セグメントやダイナミック・セグメントで他ノードからのフレームが受信され、どのノードからのフレームを受信したかを示すノード情報がホストＣＰＵ１１から通知されると、そのノード情報を内部メモリに記憶している情報と比較して、ネットワークに加入すべきノードからのフレームを受信できているか否かにより、ネットワークに加入できていない未ウェイクアップノードが存在するか否かを判定する。そして、未ウェイクアップノード検出回路１４は、未ウェイクアップノードを検出した場合、その旨の情報をホストＣＰＵ１１に通知する。
【００２５】
本例では、システム起動時のウェイクアップ処理においてノードＤがウェイクアップされず、ネットワークに加入できていないので、コミュニケーション・サイクルの中のスタティック・セグメントやダイナミック・セグメントでノードＤからのフレームが送信されていない。したがって、ノードＡの未ウェイクアップノード検出回路１４は、ホストＣＰＵ１１から通知されるノード情報を内部メモリに記憶している情報と比較することで、ネットワークに加入できていない未ウェイクアップノードとしてノードＤが存在することを検出して、その旨を未ウェイクアップノード情報としてホストＣＰＵ１１に通知する。
【００２６】
また、ノードＡのネットワーク・アイドルタイム検出回路１５は、コミュニケーション・サイクルの中のアイドル期間であるネットワーク・アイドルタイムを検出する。コミュニケーション・サイクルやその中のネットワーク・アイドルタイムは、上述したようにマクロティックと呼ばれる時間単位を基準に、このマクロティックの整数倍に設定されている。また、コミュニケーション・サイクルの中のネットワーク・アイドルタイムの開始タイミングは予め定められている。ネットワーク・アイドルタイム検出回路１５は、コミュニケーション・サイクルの先頭からネットワーク・アイドルタイムの開始タイミングまでのマクロティック数及びネットワーク・アイドルタイム終了までのマクロティック数を記憶しており、通信コントローラ１２からコミュニケーション・サイクルの先頭が通知された後、マクロティックごとの割り込み通知を受けるたびにマクロティック数をカウントし、カウントした値を記憶している値と比較することで、ネットワーク・アイドルタイムの開始及び終了を判定する。そして、ネットワーク・アイドルタイム検出回路１５は、ネットワーク・アイドルタイムが経過している間、ホストＣＰＵ１１のＮＩＴ期間フラグをオンすることで、ネットワーク・アイドルタイムであることをホストＣＰＵ１１に通知する。
【００２７】
ノードＡのホストＣＰＵ１１は、未ウェイクアップノード検出回路１４から未ウェイクアップノードが存在する旨が通知され、その後、ネットワーク・アイドルタイム検出回路１５によりＮＩＴ期間フラグがオンされると、擬似ウェイクアップ信号送信回路１６に対して、擬似ウェイクアップ信号の送信許可を与える。擬似ウェイクアップ信号送信回路１６は、ホストＣＰＵ１１から擬似ウェイクアップ信号の送信許可が通知されると、例えば図３に示したウェイクアップ信号と同じパターンの擬似ウェイクアップ信号を、バスドライバ１３から通信バス１０上に送出させる。具体的に説明すると、バスドライバ１３の送信信号端子（Ｔｘｄ）のラインは、通常、通信コントローラ１２のみに接続されているが、本例では、このバスドライバ１１の送信信号端子（Ｔｘｄ）のラインが、オア回路を介して通信コントローラ１２と擬似ウェイクアップ信号送信回路１６との双方に接続されている。そして、擬似ウェイクアップ信号を送信する場合は、擬似ウェイクアップ信号送信回路１６が、図３のｄＷＵ０１、ｄＷＵ０２期間中に送信信号端子（Ｔｘｄ）をＬｏレベルとし、ｄＷＵＩｄｌｅ１、ｄＷＵＩｄｌｅ２期間中に送信信号端子（Ｔｘｄ）をＨｉレベルとすることで、通信バス１０上に擬似ウェイクアップ信号を送出する。なお、図３中のｄＷＵは擬似ウェイクアップ信号の一周期を示し、ｕＢＭ〜ｕＢＰ間は振幅値（電圧）を示している。
【００２８】
ここで、通信確立後に図３のパターンで送信される信号をウェイクアップ信号ではなく擬似ウェイクアップ信号としているのは、ウェイクアップ信号は、上述したように、図２の通信周期（コミュニケーション・サイクル）が発生する前の段階で一回のみ送信することができる信号であり、少なくとも２つのノードが通信を確立させて図２の通信周期の中で通信を開始した後には、ウェイクアップ信号自体は物理的に送信することができないためである。なお、ここでは擬似ウェイクアップ信号をウェイクアップ信号と同じパターンの信号としているが、通信ネットワーク上の各ノードが、擬似ウェイクアップ信号をウェイクアップ信号と同様に扱えるようにしておけば、ウェイクアップ信号と異なるパターンの信号を擬似ウェイクアップ信号としてもよい。
【００２９】
システム起動時のウェイクアップ処理でウェイクアップされずにネットワークに加入できていないノードＤは、バスドライバ１３がスリープ状態のままであるため、コミュニケーション・サイクルの中のスタティック・セグメントやダイナミック・セグメントで他ノードから送信されるフレームを受信することはできないが、コミュニケーション・サイクルの中のネットワーク・アイドルタイムでノードＡからウェイクアップ信号と同じパターンの擬似ウェイクアップ信号が送信されると、バスドライバ１３がこの擬似ウェイクアップ信号を検出し、ウェイクアップ処理の場合と同様に、ホストＣＰＵ１１のウェイクアップ検出フラグをオンする。そして、ノードＤのホストＣＰＵ１１は、ウェイクアップ検出フラグがオンされると、バスドライバ１３のＢＤスリープフラグをオフすることで、バスドライバ１３をスリープ状態から開放する。これにより、ノードＤはネットワークに加入した状態となり、通信コントローラ１２の機能により通信への参加を行う。
【００３０】
なお、ノードＡがコミュニケーション・サイクルのネットワーク・アイドルタイムを利用して擬似ウェイクアップ信号を送信したとき、既にネットワークに加入しているノードＢ，Ｃの通信コントローラ１２は、ネットワーク・アイドルタイム内で信号が検出されたことにより各種情報をホストＣＰＵ１１に通知するが、この場合、ホストＣＰＵ１１は、通信コントローラ１２から通知される各種の情報に基づいた制御は行わない。つまり、通常は、コミュニケーション・サイクルの中のネットワーク・アイドルタイムがアイドル状態となっていない場合、ホストＣＰＵ１１は、通信コントローラ１２からの情報に基づいてエラー処理や割り込み処理等の各種処理を実行するが、ネットワーク・アイドルタイム内で検出された信号が擬似ウェイクアップ信号である場合、このようなエラー処理や割り込み処理等の各種処理は不要な処理であるばかりか、ホストＣＰＵ１１の負荷を増大させる要因となる。そこで、ホストＣＰＵ１１は、ネットワーク・アイドルタイム内で検出された信号が擬似ウェイクアップ信号である場合には、通信コントローラ１２から通知される各種の情報に基づいた制御は行わないようにすることで、不要な処理を実行することによる負荷の増大を抑制する。ここで、ネットワーク・アイドルタイム内で検出された信号が擬似ウェイクアップ信号であるか否かは、例えば、通信コントローラ１２において、信号のパターンをウェイクアップ信号のパターンと比較する処理を行うことで判定することができ、また、ノードＢ，Ｃ内にも上述した未ウェイクアップノード検出回路１４を設けておき、この未ウェイクアップノード検出回路１４により未ウェイクアップノードが存在することが検出された場合には、ネットワーク・アイドルタイム内の信号は擬似ウェイクアップ信号であると仮定するといった手法で判定することもできる。
【００３１】
図４は、システム起動時のウェイクアップ処理及びスタートアップ処理を経て通信が確立した後、ノードＡが未ウェイクアップノードを検出して擬似ウェイクアップ信号を送信する場合の一連の処理の流れを示すフローチャートである。
【００３２】
システム起動時のウェイクアップ処理及びスタートアップ処理を経て通信が確立すると、ノードＡは、まず、ステップＳ１において、コミュニケーション・サイクルのサイクル数をカウントするためのカウンタＮを初期値の０にセットする。次に、ノードＡは、ステップＳ２〜ステップＳ７の処理により、コミュニケーション・サイクルのスタティック・セグメントやダイナミック・セグメントでノードＢ，Ｃ，Ｄからのフレームが受信できたか否かにより、ネットワークに加入できていない未ウェイクアップノードが存在するか否かを判定する。すなわち、ノードＡは、ノードＢからのフレームが受信できていない場合（ステップＳ２で否定判定）は、ステップＳ３において、ノードＢが未ウェイクアップノードであると判断する。また、ノードＡは、ノードＣからのフレームが受信できていない場合（ステップＳ４で否定判定）は、ステップＳ５において、ノードＣが未ウェイクアップノードであると判断する。また、ノードＡは、ノードＤからのフレームが受信できていない場合（ステップＳ６で否定判定）は、ステップＳ７において、ノードＤが未ウェイクアップノードであると判断する。
【００３３】
次に、ノードＡは、ステップＳ８において、ステップＳ２〜ステップＳ７の処理で未ウェイクアップノードが検出されたかどうかにより処理の分岐を行い、未ウェイクアップノードが検出されていれば次のステップＳ９に進み、未ウェイクアップノードが検出されていなければ処理を終了する。
【００３４】
ステップＳ２〜ステップＳ７の処理で未ウェイクアップノードが検出されてステップＳ９に進んだ場合、ノードＡは、ステップＳ９において、コミュニケーション・サイクルの先頭からのマクロティック数のカウンタ値に基づいて、コミュニケーション・サイクルの中のネットワーク・アイドルタイムの開始を検知し、次のステップＳ１０において、ネットワーク・アイドルタイム内で、ウェイクアップ信号と同じパターンの擬似ウェイクアップ信号を送信する。
【００３５】
次に、ノードＡは、ステップＳ１１において、コミュニケーション・サイクルのサイクル数をカウントするためのカウンタＮの値をインクリメントし、ステップＳ１２において、そのカウンタＮの値が、予め定めた所定のタイムアウト回数Ｔに達しているか否かを判定する。このタイムアウト回数Ｔは、擬似ウェイクアップ信号を送信する回数に制限を設けるためのリミッタであり、例えば、故障などが生じて擬似ウェイクアップ信号によるウェイクアップもできないノードを未ウェイクアップノードとして検出した場合に、ノードＡが擬似ウェイクアップ信号を送信し続けることで処理負荷が増大するといった不都合を回避するためのものである。
【００３６】
ステップＳ１２の判定の結果、カウンタＮの値が所定のタイムアウト回数Ｔに達していなければ、ノードＡは、ステップＳ２に戻って、次のコミュニケーション・サイクルの開始とともにステップＳ２以降の処理を繰り返す。そして、前のコミュニケーション・サイクルのネットワーク・アイドルタイムで擬似ウェイクアップ信号を送信したことにより未ウェイクアップノードがウェイクアップしてネットワークに加入し、ステップＳ２〜ステップＳ７の処理で未ウェイクアップノードが検出されなくなれば、ステップＳ８で未ウェイクアップノードは存在しないと判定され、処理を終了する。一方、擬似ウェイクアップ信号の送信にもかかわらず、ステップＳ２〜ステップＳ７の処理で未ウェイクアップノードが検出された場合は、ステップＳ１２でカウンタＮの値が所定のタイムアウト回数Ｔに達したと判定されるまでは、コミュニケーション・サイクルが経過するたびにステップＳ２以降の処理が繰り返され、ステップＳ１２でカウンタＮの値が所定のタイムアウト回数Ｔに達したと判定されると、未ウェイクアップノードは故障が生じているものと判断して、擬似ウェイクアップ信号の送信を停止すべく、処理を終了する。
【００３７】
以上、具体的な例を挙げながら詳細に説明したように、本実施形態の通信ネットワークシステムでは、ネットワーク上のノードＡ〜Ｄのうちの少なくとも何れかに、未ウェイクアップノード検出回路１４と、ネットワーク・アイドルタイム検出回路１５と、擬似ウェイクアップ信号送信回路１６とを設け、当該ノードが、システム起動時のウェイクアップ処理においてウェイクアップされずに通信確立後にネットワークに加入できていない未ウェイクアップノードが存在する場合に、コミュニケーション・サイクル内のアイドル期間であるネットワーク・アイドルタイムを利用して、ウェイクアップ信号と同じパターンの擬似ウェイクアップ信号を送信するようにしている。したがって、本実施形態の通信ネットワークシステムによれば、システム再起動などを行うことなく通信確立後に未ウェイクアップノードをウェイクアップさせてネットワークに加入させることができ、ネットワーク上の全てのノード間で適切な通信を行わせることができる。
【００３８】
なお、以上説明した通信ネットワークシステムは本発明の一適用例を例示したものであり、本発明の技術的範囲は、以上の説明で開示した内容に限定されるものではなく、これらの開示から容易に導き得る様々な代替技術も含まれることは勿論である。
【００３９】
例えば、上述した通信ネットワークシステムでは、通信コントローラ１２からバスドライバ１３に接続される送信信号端子（Ｔｘｄ）のラインが擬似ウェイクアップ信号送信回路１６とオア接続されているが、例えば図５に示すように、擬似ウェイクアップ信号を送信するための専用のバスドライバ２１を設け、擬似ウェイクアップ信号送信回路１６をこのバスドライバ２１に接続することで、オア回路を不要とした構成としてもよい。また、例えば図６に示すように、擬似ウェイクアップ信号を送信するための専用のトランジスタ回路２２を設け、擬似ウェイクアップ信号送信回路１６をこのトランジスタ回路２２に接続することで、オア回路を不要とした構成としてもよい。
【００４０】
また、本発明は、通信プロトコルにＦｌｅｘＲａｙプロトコルを採用した通信ネットワークシステムに限らず、特定パターンのウェイクアップ信号を受信することでノードがウェイクアップし、ＦｌｅｘＲａｙのコミュニケーション・サイクルと同様の通信周期で通信を行う他のプロトコルを採用した通信ネットワークシステムに対しても、有効に適用可能である。
【図面の簡単な説明】
【００４１】
【図１】本発明を適用した通信ネットワークシステムの構成を示す図である。
【図２】ＦｌｅｘＲａｙのコミュニケーション・サイクルを説明する図である。
【図３】ウェイクアップ信号のパターンを示す図である。
【図４】本発明を適用した通信ネットワークシステムにおいて、システム起動時のウェイクアップ処理及びスタートアップ処理を経て通信が確立した後、ノードＡが未ウェイクアップノードを検出して擬似ウェイクアップ信号を送信する場合の一連の処理の流れを示すフローチャートである。
【図５】本発明を適用した通信ネットワークシステムの他の構成例を示す図である。
【図６】本発明を適用した通信ネットワークシステムの更に他の構成例を示す図である。
【符号の説明】
【００４２】
Ａ〜Ｄ  ノード
１０  通信バス
１１  ホストＣＰＵ
１２  通信コントローラ
１３  バスドライバ
１４  未ウェイクアップノード検出回路
１５  ネットワーク・アイドルタイム検出回路
１６  擬似ウェイクアップ信号送信回路
２１  バスドライバ（擬似ウェイクアップ信号送信用）
２２  トランジスタ回路（擬似ウェイクアップ信号送信用）
【図１】
2008042888.tif 000003
【図２】
2008042888.tif 000004
【図３】
2008042888.tif 000005
【図４】
2008042888.tif 000006
【図５】
2008042888.tif 000007
【図６】
2008042888.tif 000008