説明

通信制御システム

【課題】受信側における受信完了割込信号生成処理を軽減できる通信制御システムを提供する。
【解決手段】送信側装置から受信側装置に対し伝送路を介してメッセージを伝送するための通信制御システム100は、送信側装置から受領したメッセージを分割して、複数のデータフレームを生成する送信データ分割部111と、分割されたデータフレームのうち最終データフレームに対し、最終データフレームであることを示す最終データフレーム情報を設定する最終データフレーム情報設定部112と、分割されたデータフレームを伝送路に送出する送信部113とを有する送信処理部110と、伝送路から分割されたデータフレームを受信する受信121部と、受信部が最終データフレーム情報が設定されたデータフレームを受信したとき、受信側装置に対し割込信号を通知する割込信号生成部122とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信制御システムに関し、特に受信完了割込信号の生成処理技術に関する。
【背景技術】
【0002】
今日、自動車、医療装置、航空電子機器、オフィス自動化装置、消費者向け機器等の様々な製品を制御するため、多くのマイクロコントローラが利用されている。そして、これらマイクロコントローラ間の通信を制御するための通信制御方法もまた、数多く提案されている。例えば、特許文献1及び非特許文献1には、CAN(Control Area Network)における通信制御の例が開示されている。CANは、2線式直列通信バス(CANバス)を用いたデータ通信規格である。
【0003】
CANによる通信を実際に制御するのは、送信側及び受信側にそれぞれ設けられたCANコントローラである。CANコントローラは、典型的には、マイクロコントローラと接続された独立の装置として、又はマイクロコントローラに組込まれた回路もしくは埋め込まれたモジュールとして構成される。送信側のCANコントローラは、送信側のマイクロコントローラから送信データを受取り、データフレームとしてCANバスに送出する。また、受信側のCANコントローラは、CANバスからデータフレームを取得し、受信データとして受信側のマイクロコントローラに供給する。
【0004】
従来、この受信側のCANコントローラは、1フレームの受信を完了する度に受信完了割込信号を生成し、受信側のマイクロコントローラのCPUにその割込信号を通知していた。
【0005】
また、CANコントローラは、一般に、CANデータフレームの送受信をサポートする上位プロトコル、例えばDeviceNet、CANopen及びOSEC等に準拠してメッセージの送受信を行うことが可能である。これらのプロトコルでは、例えばCANデータフレームよりも大きいサイズのデータ(メッセージ)を、複数のCANデータフレームに分割して送受信することができる。これを、メッセージの断片化又はセグメント化という。
【0006】
上述したように、従来、受信側のCANコントローラは、データフレームの受信を完了する度に、受信側のマイクロコントローラのCPUに対し割込信号を通知していた。しかしながら、断片化されたデータフレームが送受信される場面では、受信側のCANコントローラは、必ずしも1つ1つのデータフレームの受信を完了する度に割込信号を発生する必要はない。このような場合、受信側のCANコントローラは、1つのメッセージを構成する断片化データフレームが全て受信されたとき、すなわち1つの意味のある情報の単位が完全に受信されたときに、CPUに対して上記割込信号を通知し、例えばメッセージをメモリに出力させる等の処理を実行させれば十分である。これにより、受信側のマイクロコントローラのCPUにおける無駄な割込処理の実行を抑制することができる。
【0007】
そこで、特許文献1及び非特許文献1は、受信側のCANコントローラが、断片化されたCANデータフレームを受信した後、自動的にメッセージを再組立てし、組立てられたメッセージがマイクロコントローラにより利用可能となったときに、マイクロコントローラのCPUに割込信号により通知する構成を提案している。
【0008】
より具体的には、特許文献1によれば、受信側のCANコントローラは、受信したCANデータフレームからスクリーナIDを抽出する。スクリーナIDとは、断片化されたデータフレームが構成するメッセージを同定するための識別子である。受信側のCANコントローラは、複数のメッセージバッファを備えており、これらのメッセージバッファはそれぞれ上記スクリーナIDと関連付けられている。CANコントローラは、上記データフレームを、スクリーナIDに基づいてこれらのメッセージバッファのいずれかに振分け、一時的に格納する。あるメッセージを構成する断片化データフレームが全てメッセージバッファに格納されると、このメッセージバッファに関連付けられた制御ビットが更新される。受信側のCANコントローラは、この制御ビットが更新されたとき、受信側のマイクロコントローラのCPUに対し、メッセージ受信完了割込信号を通知する。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特表2003−509764号公報
【非特許文献】
【0010】
【非特許文献1】Peter Hank,XA−C3 Supports CAN High Layer Protocols,USA,Philips Electronics N.V.,1999
【発明の概要】
【発明が解決しようとする課題】
【0011】
従来技術によれば、メッセージ全体が受信されてはじめて受信完了割込が発生するため、データフレームを1つ1つ受信する度に無駄な割込信号が発生するという問題は生じない。ただし、従来技術では、各メッセージバッファに、割込発生を判定するための制御ビットを設けることによって、この問題を解決している。そのため、データフレームの送信側は、送信する前にあらかじめ格納先のメッセージバッファを知っている必要があり、データフレームを送信する際にはそのメッセージバッファを格納先として指定しておく必要がある。また、受信側では、送信側が指定するメッセージバッファに、データフレームを必ず格納しなければならない。
【0012】
一方、現実には、メッセージバッファの状態は様々に変動し得るものであり、必ずしも予定したメッセージバッファにデータフレームが格納されるわけではない。例えば、メッセージバッファへの格納直前に他のデータフレームが格納されてしまう、又は既にメッセージバッファに格納されているデータの上書きが禁止されており新たな書き込みができない等の理由により、予定されたメッセージバッファにデータフレームを格納できない場合が生じ得る。このような場合、そのデータフレームは、一般的には、他のメッセージバッファに格納されることになる。
【0013】
このような事情に鑑みると、送信時にデータフレームの格納先メッセージバッファを特定せず、データフレームの受信後にメッセージバッファをサーチし、格納先を決定する方が、より現実に即した制御方法といえよう。
【0014】
そこで、上述のような、格納先のメッセージバッファをあらかじめ特定しない送信手法をとった場合においても、受信側において割込信号を適切に発生させるための方法を開発する必要がある。
【課題を解決するための手段】
【0015】
本発明に係る通信制御システムは、送信側装置から受信側装置に対し伝送路を介してメッセージを伝送するための通信制御システムであって、前記送信側装置から受領したメッセージを分割して、複数のデータフレームを生成する送信データ分割部と、前記分割されたデータフレームのうち最終データフレームに対し、最終データフレームであることを示す最終データフレーム情報を設定する最終データフレーム情報設定部と、前記分割されたデータフレームを前記伝送路に送出する送信部とを有する送信処理部と、前記伝送路から前記分割されたデータフレームを受信する受信部と、前記受信部が前記最終データフレーム情報が設定された前記データフレームを受信したとき、前記受信側装置に対し割込信号を通知する割込信号生成部とを有する受信処理部とを備えたものである。
【0016】
本発明においては、送信処理部においては、送信データ分割部が分割したデータフレームの最終データフレームに対し、最終データフレーム情報設定部が最終データフレーム情報を埋込み、送信部がこれらデータフレームを送信し、受信処理部においては、受信部が最終データフレーム情報が設定されたデータフレームを受信したとき、割込信号生成部が受信側装置に対し割込信号を通知する構成とすることにより、送信側においてはデータフレームの格納先メッセージバッファを予め指定する必要がなく、また仮に指定した場合であって、受信側において送信側が意図しないメッセージバッファにデータフレームに格納された場合であっても、受信側において割込信号を適切に生成することができる。
【発明の効果】
【0017】
本発明により、受信側における受信完了割込信号生成処理を軽減できる通信制御システムを提供することができる。
【図面の簡単な説明】
【0018】
【図1】実施の形態1の構成を示すブロック図である。
【図2】実施の形態1の処理を示すフローチャートである。
【図3】実施の形態1にかかるデータフレームの模式図である。
【図4】実施の形態2の構成を示すブロック図である。
【図5】実施の形態2の処理を示すフローチャートである。
【図6】実施の形態2にかかる受信データ復元処理の模式図である。
【発明を実施するための形態】
【0019】
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。
【0020】
<実施の形態1>
まず、図1を用いて、本発明の実施の形態1にかかる通信制御システム100の構成について説明する。
【0021】
通信制御システム100は、送信側装置と受信側装置との間でメッセージを伝送するためのシステムであって、送信処理部110と受信処理部120とを含んでいる。送信処理部110と受信処理部120とは、データ伝送の制御モジュールであり、例えばCANコントローラである。また、送信処理部110と受信処理部120とは、通信路としての通信バスを介して接続されている。通信バスは、例えばCANバスである。
【0022】
送信処理部110は送信側装置と接続されており、送信側装置から送信データの供給を受ける。また、受信処理部120は受信側装置と接続されており、受信側装置に受信データを供給する。送信側装置及び受信側装置は、典型的にはマイクロコントローラである。送信処理部110及び受信処理部120は、送信側装置及び受信側装置に対し外部モジュールとして接続されていてもよく、又は送信側装置及び受信側装置の一部として内蔵されていてもよい。
【0023】
送信処理部110は、送信データ分割部111、最終データフレーム情報設定部112及び送信部113を備えている。
【0024】
送信データ分割部111は、送信対象のメッセージを複数のデータフレームに分割する処理を行う。
【0025】
最終データフレーム情報設定部112は、生成されたデータフレームのうち最終データフレームに、最終データフレーム情報を制御ビットとして設定する処理を行う。本実施の形態において、最終データフレーム情報は、後述するように、受信処理部120において割込信号を生成するために用いられる。
【0026】
送信部113は、送信データ分割部111が生成したデータフレーム、及び最終データフレーム情報設定部112が最終データフレーム情報を設定したデータフレームを、伝送路に送出する処理を行う。
【0027】
受信処理部120は、受信部121及び割込信号生成部122を備えている。
受信部121は、送信処理部110の送信部113が送出したデータフレームを伝送路から取得する処理を行う。
割込信号生成部122は、受信部121が受信したデータフレームに最終データフレーム情報が設定されていた場合に、割込信号を生成する処理を行う。
【0028】
つづいて、図2を用いて、本発明の実施の形態1にかかる通信制御システム100の処理について説明する。
【0029】
まず、送信処理部110における処理について説明する。
【0030】
はじめに、送信側装置から、送信処理部110の送信データ分割部111に、送信対象のメッセージが供給される。送信側装置は、典型的にはマイクロコントローラである。
【0031】
送信データ分割部111は、この送信対象のメッセージについて、複数のデータフレームに分割する必要があるか否かを判定する(ステップS111)。
【0032】
複数のデータフレームに分割する必要がある場合とは、典型的には、背景技術として説明したように、送信可能なデータフレームのサイズよりメッセージサイズが大きい場合である。この場合、送信データ分割部111は、送信対象のメッセージを、例えば1つのデータフレームで送出可能なサイズに分割することができる。
【0033】
また、通信バスの帯域が混雑している場合、そのわずかな空き帯域を利用して送信できるよう、送信対象のメッセージを、その空き帯域に応じたサイズのデータフレームに分割することもできる。具体的には、優先順位の高い他のデータフレームが既に通信バスをほぼ占有しており、送信対象のメッセージをそのまま送り出すには、空き帯域が不足しているという場面が考えられる。このとき、送信データ分割部111は、送信対象のメッセージを、通信バスの空き帯域を用いて送出可能なサイズのデータフレームに分割することにより、通信バスが混雑していても、いわば隙間を利用して、通信を開始することができる。なお、上述した通信バスの監視、及び通信バスの使用状況や使用予定の把握は、例えば図示しないマクロが実行し、送信データ分割部111は、このマクロから空き帯域等の必要な情報の通知を受けることにより、かかる分割処理を行うことができる。
【0034】
また、送信対象のメッセージが、一部が揃っただけで受信側装置で何らかの処理が進められるようなデータのブロックが複数組み合わされて構成されている場合には、メッセージをそのブロックごとに分割し、データフレームを生成することもできる。上記ブロックは、例えばメッセージ中にブロックを示す特定の制御ビットを含ませておくことにより、送信データ分割部111に認識させることが可能である。
【0035】
送信データ分割部111は、上述の処理によって分割する必要があると判定されたメッセージを、所定のサイズに分割し、データフレームを生成する(ステップS112)。一方、分割する必要がないと判定したメッセージについては、そのメッセージをそのまま含むデータフレームを生成することができる。
【0036】
つづいて、最終データフレーム情報設定部112は、分割されたデータフレームのうち最終データフレームに対して、最終データフレーム情報を付与する。最終データフレーム情報は、例えばCANデータフレーム(図3)内の所定のフィールド、典型的にはデータフィールドの先頭1ビットを制御ビットして用いることで表現できる。本実施の形態では、最終データフレームのこの制御ビットに1を設定することにより、最終データフレームに最終データフレーム情報を設定するものとする。最終データフレーム以外のデータフレームでは、この制御ビットを0とする。本実施の形態では、この最終データフレーム情報は、後述するように、受信処理部において割込信号の出力を制御するために利用される。
【0037】
ここで、最終データフレームとは、例えば以下のように判定される。
【0038】
まず、送信データ分割部111がステップS111において分割処理を行わずに生成したデータフレームについては、最終データフレーム情報設定部112は、このデータフレームを最終データフレームと判定する(ステップS111)。
【0039】
また、送信データ分割部111がステップS111において分割処理を行ったデータフレームであって、最後に転送されるデータフレームについて、最終データフレーム情報設定部112は、最終データフレームと判定する(ステップS113)。ここで、最後に転送されるデータフレームであるか否かは、例えば以下のようにして判定できる。まず、送信データ分割部111が、メッセージを分割して生成したデータフレームの数、すなわち分割数を図示しない記憶領域に格納しておく。その後、最終データフレーム情報設定部112が、分割済のデータフレームを後述する送信部113に引渡す際、引渡順が前記分割数と同じ序数となるデータフレームについて、最後のデータフレームであると判定する。
【0040】
さらに、メッセージから分割された複数のデータフレームのうち一部分が揃うだけで、受信側装置が一定の処理を進めることができるような場合には、最終データフレーム情報設定部112は、その一部分を構成するデータフレーム群ごとに、最終データフレームを特定することができる(ステップS114)。ここで、上述のデータフレーム群は、例えばデータフレーム中の所定の位置に予め特定の制御ビットを含ませておくことにより、最終データフレーム情報設定部112に判定させることが可能である。
【0041】
このような判定の結果、最終データフレームであると判定されたデータフレームに対し、最終データフレーム情報設定部112は、最終データフレーム情報を設定する(制御ビットを1とする)。一方、それ以外のデータフレームについては、最終データフレーム情報を設定しない(制御ビットを0とする)(ステップS115)。
【0042】
最後に、送信部113が、これらのデータフレームを最終データフレーム情報設定部112から受取り、通信バスに送出する(ステップS116)。
【0043】
つぎに、受信処理部120における処理について説明する。
【0044】
受信部121は、送信処理部110によって送出されたデータフレームを、通信バスを介して受信する(ステップS121)。
【0045】
ここで、受信部121は、受信したデータフレームを、図示しないメッセージバッファに格納してもよい。メッセージバッファが複数存在する場合は、適切なメッセージバッファを1つ選択してデータフレームを格納することができる。このとき、格納先のメッセージバッファは、例えばターンアラウンドによる決定、予め定義された優先順位等に基づく選択、又は空き容量に基づく選択等が可能である。あるいは、背景技術のように、送信側で予め指定されたメッセージバッファに格納を試行してもよく、さらに、格納が不能であった場合には上記のいずれかの方法により他のメッセージバッファを格納先として選択することとしてもよい。
【0046】
この場合、受信部121は、各データフレームの格納先を受信格納履歴として図示しない記憶部に記憶しておくことが望ましい。受信格納履歴は、例えばデータフレームを特定する情報及び格納先メッセージバッファを特定する情報とを対応付け、時系列に記録したテーブルとして構成することができる。
【0047】
あるいは、受信部121は、受信したデータフレームを、割込信号生成部122に逐次引渡すこととしてもよい。
【0048】
つづいて、割込信号生成部122が、受信部121が受信したデータフレームの最終データフレーム情報を逐次参照し、それが設定されているか否か、すなわち最終データフレーム情報を表す制御ビットが1であるか0であるかを判定する(ステップS122)。
【0049】
ここで、受信されたデータフレームが上述のメッセージバッファに格納されている場合には、割込信号生成部122は、例えば上述の受信格納履歴を参照することにより、新たに受信されたデータフレームが格納されているメッセージバッファを特定することができる。割込信号生成部122は、特定されたメッセージバッファから目的のデータフレームをサーチし、上述の参照および判定処理を行う。あるいは、受信部121から割込信号生成部122に直接にデータフレームが供給されるような場合には、そのデータフレームに対して、上述の参照および判定処理を行う。
【0050】
判定の結果、受信したデータフレームに最終データフレーム情報が設定されていたならば、割込信号生成部122は受信完了を示す割込信号を生成し(ステップS123)、受信側装置に出力する(ステップS124)。典型的には、割込信号を受取るのは受信側マイクロコントローラのCPUである。
【0051】
一方、受信したデータフレームに最終データフレーム情報が設定されていなかったならば、割込信号生成部122は割込信号を生成しない。
【0052】
このように、本実施の形態においては、送信処理部110の最終データフレーム情報設定部112が、最終データフレームの中に最終データフレーム情報を埋込み、受信処理部120の割込信号生成部122は、最終データフレーム情報が付与されたデータフレームを受信した場合にのみ割込信号を生成することとした。これにより、受信側における無駄な割込信号の生成を抑制でき、受信側装置における割込処理の負荷を低減することが可能である。また、この構成により、送信側においてはデータフレームの格納先メッセージバッファを予め指定しなくとも、割込信号を適切に生成することができる。
【0053】
<実施の形態2>
実施の形態2は、実施の形態1と同様、送信側においてデータフレームに付与した最終データフレーム情報を利用して、受信側でメッセージの復元および出力を制御する通信制御システムに関するものである。
【0054】
図4を用いて、本発明の実施の形態2にかかる通信制御システム200の構成について説明する。
【0055】
通信制御システム200は、送信処理部210と、受信処理部220とを含んでいる。実施の形態1と同様に、送信処理部210と受信処理部220とは、データ伝送の制御モジュールであり、例えばCANコントローラである。また、送信処理部210と受信処理部220とは、通信路としての通信バスを介して接続されている。通信バスは、例えばCANバスである。また、送信処理部210は送信側装置と接続されており、送信側装置から送信データの供給を受ける。さらに、受信処理部220は受信側装置と接続されており、受信側装置に受信データを供給する。送信側装置及び受信側装置は、典型的にはマイクロコントローラである。送信処理部210及び受信処理部220は、送信側装置及び受信側装置に対し外部モジュールとして接続されていてもよく、又は送信側装置及び受信側装置の一部として内蔵されていてもよい。
【0056】
送信処理部210は、送信データ分割部111、最終データフレーム情報設定部112、送信部113、及びID情報設定部214を備えている。このうち送信データ分割部111、最終データフレーム情報設定部112、及び送信部113の構成は、実施の形態1と同様である。本実施の形態の送信処理部210は、ID情報設定部214を備えている点に特徴がある。
【0057】
ID情報設定部214は、送信データ分割部111がメッセージを分割して複数のデータフレームを生成する際、同一のメッセージから分割されたデータフレームに対して、共通のID情報を設定する処理を行う。
【0058】
受信処理部220は、受信部121、受信データ格納部223、受信データ復元部224、及び受信データ出力部225を備えている。このうち受信部121の構成は、実施の形態1と同様である。本実施の形態の受信処理部220は、受信データ格納部223、受信データ復元部224、及び受信データ出力部225を備えている点に特徴がある。
【0059】
受信データ格納部223は、受信部121が受信したデータフレームを一時的に格納する記憶部である。また、受信データ格納部223は、後述する受信データ復元部224が復元したメッセージも一時的に格納することができる。本実施の形態では、受信データ格納部223として、FIFO(First−In,First−Out)型の記憶部を利用している。
【0060】
受信データ復元部224は、受信データ格納部223に格納されているデータフレームのうち、共通のID情報が設定されたデータフレーム同士を統合して、メッセージを復元する処理を行う。この際、受信データ復元部224は、処理対象のデータフレームに最終データフレーム情報が設定されていた場合は、復元されたメッセージに対し、メッセージ復元情報を設定する処理を行う。
【0061】
受信データ出力部225は、受信データ格納部223に格納されているメッセージのうち、メッセージ復元情報が設定されているメッセージを優先的に受信側装置に出力する。
【0062】
つづいて、図5を用いて、本発明の実施の形態2にかかる通信制御システム200の処理について説明する。
【0063】
まず、送信処理部210における処理について説明する。
【0064】
はじめに、送信側装置から、送信処理部210の送信データ分割部111に、送信対象のメッセージが供給される。送信側装置は、典型的にはマイクロコントローラである。
【0065】
送信データ分割部111における処理は、実施の形態1と同様である。すなわち、送信データ分割部111は、メッセージを複数のデータフレームに分割する必要があるか否かを判定し(ステップS111)、分割すべきメッセージを所定のサイズに分割してデータフレームを生成する(ステップS112)。
【0066】
つぎに、ID情報設定部214が、送信データ分割部111によって同じメッセージから分割された複数のデータフレームに対し、同じ値のIDを設定する(ステップS217)。具体的には、ID情報設定部214は、データフレーム中のアービトレーションフィールド(図3参照)にID情報を書込むことにより、データフレームにID情報を設定することができる。
【0067】
つづいて、最終データフレーム情報設定部112は、分割されたデータフレームのうち最終データフレームを判定し(ステップS111乃至S114)、最終データフレームに対して最終データフレーム情報を付与する(ステップS115)。これらの処理は、実施の形態1と同様に行われる。
【0068】
最後に、送信部113が、これらのデータフレームを最終データフレーム情報設定部112から受取り、通信バスに送出する(ステップS116)。
【0069】
つづいて、受信処理部220における処理について説明する。
【0070】
まず、受信部121は、送信処理部210によって送出されたデータフレームを、通信バスを介して受信する(ステップS221)。受信部121は、この際、受信したデータフレームを、受信データ格納部223(FIFO)の最後尾に格納する。一例として、図6(1)に、ID情報として「G」が設定されたデータフレームが、受信データ格納部223の最後尾にあたる(キ)に格納された様子を示す。
【0071】
つぎに、受信データ復元部224は、受信部121によって新たに受信データ格納部223に格納されたデータフレームのID情報を取得する。ID情報は、上述のように、例えばデータフレームのアービトレーションフィールドに含まれている。
【0072】
受信データ復元部224は、新たに格納されたフレームから取得したID情報が、既に受信データ格納部223に格納されているいずれかのデータフレームのID情報と一致するか否かを判定する(ステップS225)。一例として、図6(3)に、ID情報として「E」が設定されたデータフレームが、受信データ格納部223の最後尾にあたる(キ)に格納された様子を示す。このとき、受信データ格納部223の(ウ)には、ID情報として「E」が設定されたデータフレームが既に存在することがわかる。
【0073】
判定の結果、IDが一致するデータフレームが見つかったならば、受信データ復元部224は、それら同一のIDを有するデータフレーム同士を統合して、メッセージを復元する。その後、受信データ復元部224は、この復元されたメッセージを、受信データ格納部223に既に格納されていたほうのデータフレームの格納位置に格納する(ステップS226)。すなわち、受信データ復元部224は、古くから格納されていたほうの断片化データフレームを、復元されたメッセージで置き換える処理を行う。一例として、図6(4)に、ID情報として「E」が設定されたデータフレーム同士を統合し、メッセージを復元した様子を示す。(ア)に位置するのが復元されたメッセージ「E」である。ここで、(3)と(4)とを比較すると、メッセージ「C」と「E」との位置が逆転しているが、その理由については後述する。
【0074】
この復元処理の際、受信データ復元部224は、新たに格納されたほうのデータフレームに最終データフレーム情報が設定されていたならば、復元されたメッセージに対し、メッセージ復元情報を設定する処理を行う。メッセージ復元情報は、そのメッセージが、最終データフレームを含む断片化データフレームから生成されたメッセージであること、すなわち完全に復元されたメッセージであることを示す。メッセージ復元情報は、例えばメッセージ中の所定の位置に設けられる制御ビットによって表現することができる。具体的には、メッセージ復元情報を設定する場合はこの制御ビットを1とし、それ以外の場合はこの制御ビットを0とする。例えば、図6(4)では、復元されたメッセージ「E」に対し、メッセージ復元情報として「1」が設定されている。
【0075】
つぎに、受信データ出力部225の処理について説明する。この処理は、典型的には、受信データ出力部225が受信側装置のCPUから出力命令を受信したことを契機として実行される。また、CPUは、典型的には、実施の形態1と同様の手法で受信可能な割込信号の受信を契機として、上記命令を出力することができる。割込信号は、例えば受信処理部220が備える図示しない割込信号生成部が、受信部121が受信したデータフレーム中から最終データフレーム情報を検出した場合に、CPUに対して出力するよう構成することができる。
【0076】
受信データ出力部225は、まず、受信データ格納部223から受信側装置に対して出力すべきメッセージを決定する処理を行う。出力対象とされたメッセージは、通常、受信側装置のメモリに対して出力され、受信側装置のCPUが実行する処理等に利用される。
【0077】
出力すべきメッセージは、例えば以下のように決定される。受信データ出力部225は、受信データ格納部223に格納されているメッセージのうち、古いものから順に、メッセージ復元情報が設定されているか否かを判定する(ステップS233)。ここで、メッセージ復元情報が設定されていれば、そのメッセージについては最終データフレームがすでに統合されている、すなわちメッセージが完全に復元されているということであるので、そのメッセージを出力対象として決定する。一方、メッセージ復元情報が設定されていなければ、そのメッセージについては最終データフレームがまだ到着していない、すわなちメッセージが完全には復元されていないということであるので、そのメッセージは出力対象としない(ステップS234)。後者の場合、受信データ出力部225は、2番目に古いメッセージについて、同様の処理を行う。すなわち、メッセージ復元情報の有無を検査し、メッセージ復元情報が有る場合にはそのメッセージを出力対象とし、無い場合にはそのメッセージをスキップする。受信データ出力部225は、出力対象のメッセージが決定するまで、同様の処理を繰返す。
【0078】
一例として、図6を用いて、出力すべきメッセージが決定される機序を示す。(1)においては、最も古いメッセージ「A」にメッセージ復元情報「1」が設定されているため、「A」が出力される。(2)においては、最も古いメッセージ「B」にメッセージ復元情報「1」が設定されているため、「B」が出力される。(3)においては、最も古いメッセージは「C」であるが、メッセージ復元情報が「0」であるので出力対象とならず、次に古いメッセージ「D」が出力される。「D」にはメッセージ復元情報「1」が設定されているからである。(4)においては、最も古いメッセージは「C」であるが、メッセージ復元情報が「0」であるので出力対象とならず、次に古いメッセージ「E」が出力される。この時点で、「E」にはメッセージ復元情報「1」が設定されるからである。
【0079】
最後に、受信データ出力部225は、出力対象として決定されたメッセージを、受信側装置に出力する処理を行う。
【0080】
本実施の形態においては、送信処理部210の最終データフレーム情報設定部112がデータフレームの中に埋込んだ最終データフレーム情報を利用することにより、CPUの割込処理の負荷を軽減できるとともに、受信処理部220の受信データ復元部224においてはメッセージを単純な処理で復元し、受信データ出力部225においてはメッセージの復元の完了を効率的に検出し、出力すべきメッセージを単純な機序で決定することができる。
【0081】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、上述の実施の形態では、ハードウェアの構成として説明したが、これに限定されるものではなく、任意の処理を、CPU(Central Processing Unit)にコンピュータプログラムを実行させることにより実現することも可能である。この場合、コンピュータプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non−transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【符号の説明】
【0082】
100 通信制御システム
110 送信処理部
111 送信データ分割部
112 最終データフレーム情報設定部
113 送信部
120 受信処理部
121 受信部
122 割込信号生成部
200 通信制御システム
210 送信処理部
214 ID情報設定部
220 受信処理部
224 受信データ復元部
225 受信データ出力部
226 受信データ格納部

【特許請求の範囲】
【請求項1】
送信側装置から受信側装置に対し伝送路を介してメッセージを伝送するための通信制御システムであって、
前記送信側装置から受領したメッセージを分割して、複数のデータフレームを生成する送信データ分割部と、
前記分割されたデータフレームのうち最終データフレームに対し、最終データフレームであることを示す最終データフレーム情報を設定する最終データフレーム情報設定部と、
前記分割されたデータフレームを前記伝送路に送出する送信部とを有する
送信処理部と、
前記伝送路から前記分割されたデータフレームを受信する受信部と、
前記受信部が前記最終データフレーム情報が設定された前記データフレームを受信したとき、前記受信側装置に対し割込信号を通知する割込信号生成部とを有する
受信処理部とを備えた
通信制御システム。
【請求項2】
前記送信処理部は、
同一の前記メッセージから分割された複数の前記データフレームに対し、共通のID情報を設定するID情報設定部をさらに有し、
前記受信処理部は、
前記伝送路から前記分割されたデータフレームを受信する受信部と、
前記受信部が受信した前記データフレームを一時的に格納する受信データ格納部と、
前記受信データ格納部に格納されている前記データフレームのうち共通のID情報が設定されたデータフレーム同士を統合して前記メッセージを復元するとともに、前記データフレームに前記最終データフレーム情報が設定されていた場合は復元された前記メッセージにメッセージ復元情報を設定する受信データ復元部と、
前記受信データ格納部に格納されている前記メッセージであって、前記メッセージ復元情報が設定されている前記メッセージを優先的に前記受信側装置に出力する受信データ出力部とをさらに有する
請求項1記載の通信制御システム。
【請求項3】
前記送信データ分割部は、1つのデータフレームが運搬可能なデータサイズに応じて、前記メッセージを分割し、前記複数のデータフレームを生成する
請求項1乃至2いずれか1項記載の通信制御システム。
【請求項4】
前記送信データ分割部は、前記送信側装置と前記受信側装置との間の通信帯域の空き容量に応じて、前記メッセージを分割し、前記複数のデータフレームを生成する
請求項1乃至2いずれか1項記載の通信制御システム。
【請求項5】
前記送信データ分割部は、前記メッセージに含まれる所定の制御情報が示す単位で、前記メッセージを分割し、前記複数のデータフレームを生成する
請求項1乃至2いずれか1項記載の通信制御システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2013−26709(P2013−26709A)
【公開日】平成25年2月4日(2013.2.4)
【国際特許分類】
【出願番号】特願2011−157788(P2011−157788)
【出願日】平成23年7月19日(2011.7.19)
【出願人】(302062931)ルネサスエレクトロニクス株式会社 (8,021)
【Fターム(参考)】