(57)【要約】【課題】汎用マイクロコンピュータ及び汎用ネットワークコントローラが用いられる場合でも、一定時間で通信フレームを中継できるようにする。【解決手段】受信ポート４０１は、通信フレームを受信する。送信ポート４０２は、通信フレームを送信する。フレーム中継制御部５００は、通信フレームの受信時から通信フレームの中継に要求される時間であるフレーム中継応答時間が経過する前に、通信フレームの受信前から実行されていた先行処理が終了していれば、通信フレームの受信時から前記フレーム中継応答時間が経過した時点で前記通信フレームを前記送信ポートから送信し、通信フレームの受信時からフレーム中継応答時間が経過する前に先行処理が終了していなければ、通信フレームの受信時からフレーム中継応答時間が経過した時点で、先行処理を強制中断させて通信フレームを送信ポート４０２から送信する。【選択図】図１
2015100063.tif 000002
【特許請求の範囲】
【請求項１】
通信フレームを受信する受信ポートと、
前記通信フレームを送信する送信ポートと、
前記通信フレームの受信時から前記通信フレームの中継に要求される時間であるフレーム中継応答時間が経過する前に、前記通信フレームの受信前から実行されていた先行処理が終了していれば、前記通信フレームの受信時から前記フレーム中継応答時間が経過した時点で前記通信フレームを前記送信ポートから送信し、前記通信フレームの受信時から前記フレーム中継応答時間が経過する前に前記先行処理が終了していなければ、前記通信フレームの受信時から前記フレーム中継応答時間が経過した時点で、前記先行処理を強制中断させて前記通信フレームを前記送信ポートから送信するフレーム中継制御部とを有することを特徴とする中継装置。
【請求項２】
前記フレーム中継制御部は、
タイマと、
前記通信フレームの受信時と前記タイマのタイムアウト時とに、マスク不可割込みを発生させて、前記先行処理を強制中断させる割込みコントローラと、
前記通信フレームの受信時に、前記割込みコントローラによるマスク不可割込みにより起動され、前記タイマに前記フレーム中継応答時間を設定して前記タイマを起動し、前記先行処理を再開させるタイマ起動部と、
前記タイマがタイムアウトする前に前記先行処理が終了した場合に、前記先行処理の終了により起動され、前記通信フレームの受信時から前記フレーム中継応答時間が経過した時点で前記通信フレームを前記送信ポートから送信し、前記タイマがタイムアウトした場合に、前記割込みコントローラによるマスク不可割込みにより起動され、前記通信フレームを前記送信ポートから送信するフレーム中継処理部とを有することを特徴とする請求項１に記載の中継装置。
【請求項３】
前記タイマ起動部は、
前記受信ポートから受信された前記通信フレームが中継を要する通信フレームであるか否かを判断し、前記通信フレームが中継を要する通信フレームである場合に、前記タイマを起動することを特徴とする請求項２に記載の中継装置。
【請求項４】
前記中継装置は、
マスタ装置と複数のスレーブ装置とで構成される通信システムに含まれるいずれかのスレーブ装置であり、
前記マスタ装置及び他のスレーブ装置との時刻同期に用いられる通信フレームを中継することを特徴とする請求項１に記載の中継装置。
【請求項５】
マスタ装置と複数のスレーブ装置とで構成される通信システムであって、
各スレーブ装置は、
通信フレームを受信する受信ポートと、
前記通信フレームを送信する送信ポートと、
前記通信フレームの受信時から前記通信フレームの中継に要求される時間であるフレーム中継応答時間が経過する前に、前記通信フレームの受信前から実行されていた先行処理が終了していれば、前記通信フレームの受信時から前記フレーム中継応答時間が経過した時点で前記通信フレームを前記送信ポートから送信し、前記通信フレームの受信時から前記フレーム中継応答時間が経過する前に前記先行処理が終了していなければ、前記通信フレームの受信時から前記フレーム中継応答時間が経過した時点で、前記先行処理を強制中断させて前記通信フレームを前記送信ポートから送信するフレーム中継制御部とを有することを特徴とする通信システム。
【請求項６】
各スレーブ装置において、
前記フレーム中継制御部は、
タイマと、
前記通信フレームの受信時と前記タイマのタイムアウト時とに、マスク不可割込みを発生させて、前記先行処理を強制中断させる割込みコントローラと、
前記通信フレームの受信時に、前記割込みコントローラによるマスク不可割込みにより起動され、前記タイマに前記フレーム中継応答時間を設定して前記タイマを起動し、前記先行処理を再開させるタイマ起動部と、
前記タイマがタイムアウトする前に前記先行処理が終了した場合に、前記先行処理の終了により起動され、前記通信フレームの受信時から前記フレーム中継応答時間が経過した時点で前記通信フレームを前記送信ポートから送信し、前記タイマがタイムアウトした場合に、前記割込みコントローラによるマスク不可割込みにより起動され、前記通信フレームを前記送信ポートから送信するフレーム中継処理部とを有することを特徴とする請求項５に記載の通信システム。
【請求項７】
各スレーブ装置は、
前記マスタ装置及び他のスレーブ装置との時刻同期に用いられる通信フレームを中継することを特徴とする請求項５に記載の通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、時刻同期処理に関する。
【背景技術】
【０００２】
近年、工場内の省配線を目的として、コントローラ間及びコントローラとＩ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）機器間を産業用のネットワークで接続するＦＡ（Ｆａｃｔｏｒｙ  Ａｕｔｏｍａｔｉｏｎ）システムが普及している。
特に、オープン化や入手容易性を目的として、ネットワークの物理層、デバイス層をＥｔｈｅｒｎｅｔ（登録商標）で実現する、イーサネット（登録商標）ベースの産業用フィールドネットワークの普及が見込まれている。
工場内のベルトコンベヤ等を用いて精度の高い加工を行うためには、Ｉ／Ｏ機器間で同期して処理を行う必要がある。
すなわち、イーサネット（登録商標）ベース産業用フィールドネットワークでもこうした同期機能が求められる。
同期処理を行うプロトコル例を以下に示す。
【０００３】
従来の同期システムにおける時刻同期の手順は、（１）遅延計測、（２）オフセット算出、（３）通知、（４）確定、（５）同期運用の５つの段階で構成され、それぞれが一連の動作として実施されている（例えば、特許文献１及び特許文献２）。
この５つの段階を、図３、図４、図５、図６、図７を用いて説明する。
【０００４】
（１）遅延計測の段階（図３）では、同期の基準となる時刻を保持する通信装置（マスタ装置とする）が、他の通信装置（スレーブ装置とする）までの伝送路遅延を計測する。
伝送路遅延を計測することで、より高精度の同期が実現できるためである。
スター型、ツリー型、ライン型及びその混在の接続形態において、マスタ装置から見て、末端の位置にあるスレーブ装置は１つあるいは複数存在する。
すべてのスレーブ装置は、この末端スレーブ装置までの経路のいずれかに属する。
なお、ここでのライン型とは２つ以上のポートを持ち、そのポート間で通信フレーム（以下、単にフレームともいう）を中継する機能を持つスレーブ装置による、中継を伴う接続形態である。
マスタ装置は末端スレーブ装置までの経路単位に、計測用のフレーム（以下、Ｍｅａｓｕｒｅフレームという）を送信することで伝送遅延の計測を行う。
Ｍｅａｓｕｒｅフレームは、末端スレーブ装置を宛先として、経路毎に送信する。
末端スレーブ装置はＭｅａｓｕｒｅフレームを受信すると、計測の応答フレーム（以下、ＭｅａｓｕｒｅＡｃｋフレームという）を折り返し送信する。
Ｍｅａｓｕｒｅフレームが通過した経路上のすべてのスレーブ装置は、Ｍｅａｓｕｒｅフレームの中継を行う。
その過程で、各スレーブ装置は、Ｍｅａｓｕｒｅフレームの到着時刻と、ＭｅａｓｕｒｅＡｃｋフレームの到着時刻を記録し、その時間差（ラウンドトリップ時間ｔｒとする）を算出し、算出したラウンドトリップ時間ｔｒを記録する。
マスタ装置はＭｅａｓｕｒｅフレームの送信時刻と、ＭｅａｓｕｒｅＡｃｋフレームの到着時刻からラウンドトリップ時間ｔｒを算出する。
また、末端スレーブ装置はＭｅａｓｕｒｅフレームの到着時刻と、ＭｅａｓｕｒｅＡｃｋフレームの送信時刻からラウンドトリップ時間ｔｒを算出する。
【０００５】
（２）オフセット算出の段階（図４）では、マスタ装置はラウンドトリップ時間ｔｒと、マスタ装置内部での同期用のフレーム（以下、Ｓｙｎｃフレームとよぶ）を送信してから同期時刻点までの時間ｔｓより、スレーブ装置がＳｙｎｃフレームを受信してから同期時刻点までのスレーブ装置のための時間（オフセット値ｏとする）を算出する。
算出式はｏ＝ｔｓ−（ｔｒ／２）である。
【０００６】
（３）通知の段階（図５）では、マスタ装置はオフセット値ｏを各スレーブ装置に配布する。
マスタ装置は、オフセット値ｏ配布用のフレーム（以下、Ｏｆｆｓｅｔフレームという）を、前述のＭｅａｓｕｒｅフレームと同じ経路で送信し、オフセット値ｏを各スレーブ装置に配布する。
各スレーブ装置は、取得したオフセット値ｏと、自身が記録しているラウンドトリップ時間ｔｒから、同期時刻点までの時間（遅延時間ｏｓとする）を算出する。
算出式は、ｏｓ＝（ｔｒ／２）＋ｏである。
【０００７】
（４）確定の段階（図６）では、マスタ装置は各スレーブ装置に配布したオフセット値ｏを適用することを各スレーブ装置に指示する。
具体的には、マスタ装置は、確定用のフレーム（以下、Ｕｐｄａｔｅフレームという）をブロードキャストで送信し、全スレーブ装置にオフセット値ｏの適用を通知する。
【０００８】
（５）同期運用の段階（図７）では、マスタ装置は各スレーブ装置に同期のタイミングを通知する。
具体的には、マスタ装置は、同期用のフレーム（以下、Ｓｙｎｃフレームという）をマルチキャストで送信し、各スレーブ装置に同期のタイミングを通知する。
各スレーブ装置は、Ｓｙｎｃフレームを受信した時点から、同期時刻点までの時間である遅延時間ｏｓを使い、同期時刻を得る。
【０００９】
産業用フィールドネットワークでこうした同期処理を行う場合は、（１）遅延計測、（５）同期運用に際しては、フレームの転送が一定時間で行われる専用ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）が活用される。
フレーム中継時の拡大図を図８に示す。
例えば、マスタ装置が送信したＳｙｎｃフレームをスレーブ装置Ａが受信した場合、中継処理は専用ＡＳＩＣにより実施されるため、一定時間で処理が完了する。
そのため、中継先のスレーブ装置Ｂはあらかじめ想定した時間でフレームを受信することができ、同期ポイントにずれが生じることはない。
【００１０】
専用ＡＳＩＣによるフレーム中継の例を図９に示す。
受信ポートは外部からのフレームを受信するポートである。
送信ポートは外部へフレームを送信するポートである。
フレーム中継処理部はフレームを転送すべきかどうかの判断を行う。
【００１１】
専用ＡＳＩＣによるフレーム転送処理の手順を図１０に示す。
Ｓ９０１にて、受信ポートからフレームを受信すると、専用ＡＳＩＣ内のフレーム中継処理部にフレームを渡す。
フレーム中継処理部は中継すべきフレームかどうか判断する。
例えば、受信したフレームがＳｙｎｃフレームであれば、フレームを中継すべきと判断する。
Ｓ９０２にてフレーム中継処理部はフレームを中継すべきと判断すると、送信ポートにフレームを渡す。
Ｓ９０３にて送信ポートはフレーム中継処理部から渡されたフレームを送信する。
以上の手順により専用ＡＳＩＣによるフレームの中継が完了する。
ここで、専用ＡＳＩＣを使用しているため、Ｓ９０２のフレームを中継すべきかどうかの判断、及び、送信ポートへフレームを渡す処理は外乱を受けず、一定時間内に処理が完了する。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】国際公開ＷＯ２０１２／１１４５１７号公報
【特許文献２】特開２００９−１３０５１９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
しかしながら、近年、コスト削減の要求があり、専用ＡＳＩＣではなく、汎用マイクロコンピュータと汎用ネットワークコントローラにより実現したいという要求がある。
この場合、フレームを中継するスレーブ装置は汎用マイクロコンピュータ上で動作する他の処理（フレーム中継処理以外の処理）が割込み禁止状態で実行されているとフレーム中継処理が遅延するという課題があった。
この例を図１１に示す。
すなわち、スレーブ装置Ａが送信したフレームをスレーブ装置Ｂが受信した場合、スレーブ装置Ｂでの他の処理についての割込み状態（割込みの許可／禁止）に応じてフレーム中継応答時間にゆらぎが生じ、中継先のスレーブ装置（この場合はスレーブ装置Ｃ）は同期処理を実施できないという課題がある。
【００１４】
この、ソフトウェア（Ｓ／Ｗ）処理により処理時間にゆらぎが生じる例を図１２及び図１３を用いて説明する。
図１２はＳ／Ｗ処理により処理時間にゆらぎが生じる構成例である。
スレーブ装置１０００はＳ／Ｗ１１００と汎用マイクロコンピュータ１２００と一時記憶装置１３００と汎用ネットワークデバイス１４００から成る。
Ｓ／Ｗ１１００はフレーム中継処理部１１０１を含む。
フレーム中継処理部１１０１は受信ポート１４０１が一時記憶装置１３００の受信フレーム保存領域１３０１に保存したフレームの内容を判断し、転送が必要な場合は送信ポート１４０２から送信する。
汎用マイクロコンピュータ１２００は割込みコントローラ１２０２を含む。
割込みコントローラ１２０２は汎用ネットワークデバイス１４００の受信ポート１４０１がフレームを受信した場合に、Ｓ／Ｗ１１００のフレーム中継処理部１１０１に対し、処理を依頼する。
一時記憶装置１３００は受信フレーム保存領域１３０１を含む。
受信フレーム保存領域１３０１は受信ポート１４０１が受信したフレームを保存する領域である。
ネットワークデバイス１４００は受信ポート１４０１と送信ポート１４０２を含む。
【００１５】
図１３において、Ｓ／Ｗ処理によりフレーム中継応答時間にゆらぎが生じる例を示す。
Ｓ１３０１にて、汎用ネットワークデバイス１４００の受信ポート１４０１はフレームを受信し、受信フレーム保存領域１３０１に受信フレームを保存する。
Ｓ１３０２にて、汎用ネットワークデバイス１４００がフレームを受信すると、割込みコントローラ１２０２は割込みを発生させる。
割込み許可中の場合は、フレーム中継処理部１１０１を起動する。
割込み禁止中の場合は割込み禁止中の処理が完了するまで待たされる。
Ｓ１３０３にて、フレーム中継処理部１１０１は、受信フレーム保存領域１３０１に保存されているフレームを中継すべきかどうか判断し、中継する場合は送信ポート１４０２からフレームを送信する。
以上が完了後、Ｓ１３０１へ移行する。
以上の処理の内、Ｓ１３０２はフレーム受信時の汎用マイクロコンピュータの割り込み状態に応じて、Ｓ／Ｗフレーム中継処理の処理完了までにゆらぎが生じ、同期処理が実施できないという課題がある。
【００１６】
この発明は上記のような課題を解決することを主な目的としており、汎用マイクロコンピュータ及び汎用ネットワークコントローラが用いられる場合でも、一定時間で通信フレームを中継できるようにすることを主な目的とする。
【課題を解決するための手段】
【００１７】
本発明に係る中継装置は、
通信フレームを受信する受信ポートと、
前記通信フレームを送信する送信ポートと、
前記通信フレームの受信時から前記通信フレームの中継に要求される時間であるフレーム中継応答時間が経過する前に、前記通信フレームの受信前から実行されていた先行処理が終了していれば、前記通信フレームの受信時から前記フレーム中継応答時間が経過した時点で前記通信フレームを前記送信ポートから送信し、前記通信フレームの受信時から前記フレーム中継応答時間が経過する前に前記先行処理が終了していなければ、前記通信フレームの受信時から前記フレーム中継応答時間が経過した時点で、前記先行処理を強制中断させて前記通信フレームを前記送信ポートから送信するフレーム中継制御部とを有することを特徴とする。
【発明の効果】
【００１８】
本発明では、通信フレームの受信時からフレーム中継応答時間が経過する前に先行処理が終了していれば、通信フレームの受信時からフレーム中継応答時間が経過した時点で通信フレームを送信し、通信フレームの受信時からフレーム中継応答時間が経過する前に先行処理が終了していなければ、通信フレームの受信時からフレーム中継応答時間が経過した時点で、先行処理を強制中断させて通信フレームを送信する。
このため、汎用マイクロコンピュータ及び汎用ネットワークコントローラが用いられる場合でも、一定時間で通信フレームを中継することができる。
【図面の簡単な説明】
【００１９】
【図１】実施の形態１に係るスレーブ装置の構成例を示す図。
【図２】実施の形態１に係るスレーブ装置の動作例を示すフローチャート図。
【図３】時刻同期手順における遅延計測段階を説明する図。
【図４】時刻同期手順におけるオフセット算出段階を説明する図。
【図５】時刻同期手順における通知段階を説明する図。
【図６】時刻同期手順における確定段階を説明する図。
【図７】時刻同期手順における同期運用段階を説明する図。
【図８】フレームの中継処理を説明する図。
【図９】従来のスレーブ装置の構成例を示す図。
【図１０】従来のスレーブ装置の転送手順を示すフローチャート図。
【図１１】汎用マイクロコンピュータ及び汎用ネットワークコントローラを用いる場合の課題を説明する図。
【図１２】ソフトウェア処理によりフレーム中継応答時間にゆらぎが生じる例を示す図。
【図１３】ソフトウェア処理によりフレーム中継応答時間にゆらぎが生じる例を示すフローチャート図。
【発明を実施するための形態】
【００２０】
実施の形態１．
図１は、本実施の形態に係るスレーブ装置１の構成例を示す。
スレーブ装置１は中継装置の例に相当する。
スレーブ装置１は、Ｓ／Ｗ１００、汎用マイクロコンピュータ２００、一時記憶装置３００、汎用ネットワークデバイス４００を持つ。
本実施の形態に係るスレーブ装置１も、図３〜図７に示すように、マスタ装置と複数のスレーブ装置で構成される通信システムに含まれ、時刻同期に用いられる通信フレームをマスタ装置及び他のスレーブ装置との間で中継する。
【００２１】
Ｓ／Ｗ１００及び汎用マイクロコンピュータ２００を、まとめて、フレーム中継制御部５００という。
フレーム中継制御部５００として、Ｓ／Ｗ１００及び汎用マイクロコンピュータ２００は、通信フレームの受信時から通信フレームの中継に要求される時間であるフレーム中継応答時間が経過する前に、通信フレームの受信前から実行されていた先行処理が終了していれば、通信フレームの受信時からフレーム中継応答時間が経過した時点で通信フレームを送信ポート４０２から送信する。
一方、通信フレームの受信時からフレーム中継応答時間が経過する前に先行処理が終了していなければ、通信フレームの受信時からフレーム中継応答時間が経過した時点で、先行処理を強制中断させて通信フレームを送信ポート４０２から送信する。
具体的には、Ｓ／Ｗ１００及び汎用マイクロコンピュータ２００は、フレーム中継制御部５００として、以下のように動作する。
【００２２】
Ｓ／Ｗ１００のフレーム中継処理部１０１は、汎用ネットワークデバイス４００が一時記憶装置３００に保存したフレームの情報に応じて、フレームを転送するかどうかを判断する。
フレームを中継する必要がある場合には、フレーム中継処理部１０１は、一時記憶装置３００に保存されたフレームを汎用ネットワークデバイス４００の送信ポート４０２から送信する処理を行う。
タイマ起動部１０２は、汎用ネットワークデバイス４００の受信ポート４０１がフレームを受信した場合に、汎用マイクロコンピュータ２００上の割込みコントローラ２０２が発生させるマスク不可割込みのハンドラとして起動する。
【００２３】
汎用マイクロコンピュータ２００のタイマ２０１は、受信ポート４０１がフレームを受信した時点を起点とした時間経過を示す。
そして、タイマ２０１は、一時記憶装置３００のフレーム中継応答時間保持領域３０２からフレーム中継応答時間を読出し、フレーム中継応答時間とフレーム受信時からの経過時間とを比較する。
経過時間がフレーム中継応答時間を超えている場合（タイムアウト）は、タイマ２０１は、汎用マイクロコンピュータ２００の割込みコントローラ２０２に対し、マスク不可割込みを発生させるよう依頼する。
割込みコントローラ２０２は、汎用ネットワークデバイス４００の受信ポート４０１がフレームを受信した場合に、マスク不可割込みを発生させる。
さらに、割込みコントローラ２０２は、汎用マイクロコンピュータ２００のタイマ２０１がタイムアウトした場合、マスク不可割込みを発生させる。
【００２４】
一時記憶装置３００は受信フレーム保存領域３０１とフレーム中継応答時間保持領域３０２を含む。
受信フレーム保存領域３０１は汎用ネットワークデバイス４００の受信ポート４０１が受信したフレームを保存しておく領域である。
フレーム中継応答時間保持領域３０２はスレーブ装置１が起動する際にあらかじめ決められたフレーム中継応答時間を保持する領域である。
フレーム中継応答時間は、ユーザが決めてもよいし、システム起動時に、汎用マイクロコンピュータや汎用ネットワークデバイスの性能に応じたテーブルにより決めてもよい。
【００２５】
汎用ネットワークデバイス４００は受信ポート４０１と送信ポート４０２を持つ。
受信ポート４０１はフレームを受信する。
そして、受信ポート４０１は、受信したフレームを一時記憶装置３００上の受信フレーム保存領域３０１に保存し、汎用マイクロコンピュータ２００上の割込みコントローラ２０２に対しマスク不可割込みを発生させるよう依頼する。
送信ポート４０２は汎用マイクロコンピュータ２００のフレーム中継処理部１０１に依頼されたフレームを送信する。
【００２６】
次に、図２を用いて、本実施の形態に係るスレーブ装置１の動作例を説明する。
【００２７】
Ｓ１１０１にて、タイマ起動部１０２はシステム起動時にフレーム中継応答時間保持領域３０２にタイムアウト値（フレーム中継応答時間）を設定する。
【００２８】
Ｓ１１０２にて、システム起動後定常状態となり、汎用ネットワークデバイス４００の受信ポート４０１はフレームを受信する。
受信ポート４０１は、受信したフレームを受信フレーム保存領域３０１に格納する。
【００２９】
Ｓ１１０３にて、汎用ネットワークデバイス４００がフレームを受信すると、割込みコントローラ２０２は割込み禁止であってもマスク不可割込み（ＮＭＩあるいはＦＩＱ）を発生させ、受信ポート４０１がフレームを受信する前から実行されていた先行処理を強制的に中断させて、タイマ起動部１０２を起動する。
【００３０】
Ｓ１１０４にて、タイマ起動部１０２は、一定時間内に中継が必要なフレームかどうか判断し、中継が必要な場合は、タイマ２０１を起動する。
タイマ起動部１０２は、タイマ２０１にフレーム中継応答時間を設定する。
設定されたフレーム中継応答時間が経過してタイマ２０１がタイムアウトした際に、割込みコントローラ２０２がマスク不可割込み（ＮＭＩあるいはＦＩＱ）を発生させる。
タイマ起動部１０２によるタイマ２０１の起動が完了した後は、割込みコントローラ２０２は、マスク不可割込みを発生させた先行処理の実行を再開させる。
【００３１】
Ｓ１１０５にてタイマ２０１のタイムアウトによるマスク不可割込みが発生せず、フレーム中継処理が実施された場合はＳ１１０７に移行する。
つまり、フレームの受信時からフレーム中継応答時間が経過する前に先行処理が終了していれば、マスク不可割込みが発生せず、Ｓ１１０７に移行する。
一方、タイマ２０１のタイムアウトによるマスク不可割込みが発生した場合は、処理がＳ１１０６に移行する。
つまり、フレームの受信時からフレーム中継応答時間が経過する前に先行処理が終了していなければ、フレーム中継応答時間が経過する時点でタイマ２０１がタイムアウトになり、割込みコントローラ２０２は、マスク不可割込みを発生させ、Ｓ１１０６に移行する。
【００３２】
Ｓ１１０６では、割込みコントローラ２０２は、マスク不可割込みにより、現在実施中の先行処理を強制的に中断させ、フレーム中継処理部１０１を呼び出し、フレーム中継処理部１０１が受信フレーム保存領域３０１内のフレームを送信ポート４０２から送信して、フレームの中継を行う。
その後、割込みコントローラ２０２は、タイマ割込み発生前のリトライポイントから先行処理を再開し、その後Ｓ１１０２へ移行する。
【００３３】
Ｓ１１０７では、先行処理がフレーム中継応答時間の経過前に終了し、フレーム中継応答時間の前にフレームの中継が可能となった場合に、フレーム中継処理部１０１はタイマ２０１の値とフレーム中継応答時間保持領域３０２の値を比較し、フレーム中継応答時間の到来を待ち、フレーム中継応答時間が到来したら、受信フレーム保存領域３０１内のフレームを送信ポート４０２から送信して、フレームの中継を行い、その後Ｓ１１０２へ処理が移行する。
【００３４】
以上より、本実施の形態によれば、スレーブ装置が汎用ネットワークデバイス及び汎用マイクロコンピュータで構成されていても、タイマ起動部とタイマにより、フレーム中継応答時間でフレームを中継することができるので、中継先のスレーブ装置に対しても、時間が揺らぐことなく、フレームを送信することが可能となる。
【００３５】
本実施の形態では、フレーム中継応答時間保持領域、タイマ起動部、タイマ、フレーム中継処理部、割込みコントローラ、汎用ネットワークデバイスを有するスレーブ装置を説明した。
フレーム中継応答時間保持領域は、フレーム転送までの時間が設定されたフレーム中継応答時間を保持する。
タイマ起動部は、汎用ネットワークデバイスのフレーム受信時にタイマを起動する。
タイマは、汎用ネットワークデバイスのフレーム受信時からの経過時間を計測する。
フレーム中継処理部は、受信ポートから受信したフレームを送信ポートから送信する。
割込みコントローラは、汎用ネットワークが受信ポートからフレームを受信した場合にマスク不可割込みを発生させ、タイマ起動部を呼び出し、タイマがタイムアウトした場合に、フレーム中継処理部を呼び出す。
汎用ネットワークデバイスは、フレームを受信する受信ポートと、フレームを送信する送信ポートを有する。
【００３６】
また、本実施の形態では、受信ポートからフレームを受信した場合に、フレーム中継応答時間でフレームを中継するため、一定時間でフレームを中継できることを説明した。
【００３７】
また、本実施の形態では、フレーム受信時に、割込みコントローラによりマスク不可割込みを発生させ、タイマを起動し、フレーム受信からの経過時間を測定することにより、一定時間でフレーム中継できることを説明した。
【００３８】
また、本実施の形態では、タイマによりタイムアウトが発生すると、フレーム中継処理部を呼出し、フレームを中継するため、一定時間でフレームを中継できることを説明した。
【００３９】
また、本実施の形態では、タイマがタイムアウトしなかった場合に、フレーム中継処理部は、タイマがタイムアウトするまで待ち、タイムアウトした後で、フレーム中継を行うことにより、一定時間でフレームを中継できることを説明した。
【符号の説明】
【００４０】
１  スレーブ装置、１００  Ｓ／Ｗ、１０１  フレーム中継処理部、１０２  タイマ起動部、２００  汎用マイクロコンピュータ、２０１  タイマ、２０２  割込みコントローラ、３００  一時記憶装置、３０１  受信フレーム保存領域、３０２  フレーム中継応答時間保持領域、４００  汎用ネットワークデバイス、４０１  受信ポート、４０２  送信ポート、５００  フレーム中継制御部。
【図１】
2015100063.tif 000003
【図２】
2015100063.tif 000004
【図３】
2015100063.tif 000005
【図４】
2015100063.tif 000006
【図５】
2015100063.tif 000007
【図６】
2015100063.tif 000008
【図７】
2015100063.tif 000009
【図８】
2015100063.tif 000010
【図９】
2015100063.tif 000011
【図１０】
2015100063.tif 000012
【図１１】
2015100063.tif 000013
【図１２】
2015100063.tif 000014
【図１３】
2015100063.tif 000015