(57)【要約】【課題】メッセージの送出に要する時間をより短縮可能なメッセージ及び送信メールボックスの組を決定する割当装置、割当システム、割当方法、及びコンピュータプログラムを提供し、中継の遅延を確実に防止することができ、かつ中継に要する時間をより短縮することができる中継装置の製造方法を提供する。【解決手段】複数のメッセージの夫々を複数の送信メールボックスに割り当てるに際してのメッセージ及び送信メールボックスの組を決定する割当装置は、複数のメッセージ及び複数のメッセージが各割り当てられる複数の第１の送信メールボックスを対応付けて記憶する割当情報記憶部と、複数のメッセージの割り当てがない一又は複数の第２の送信メールボックスを記憶する未割当情報記憶部と、割当情報記憶部に記憶された複数のメッセージの少なくとも一部を、未割当情報記憶部に記憶された第２の送信メールボックスに割り当てる再割当処理部とを備える。【選択図】図１
2015186112.tif 000002
【特許請求の範囲】
【請求項１】
複数のメッセージの夫々を複数の送信メールボックスに割り当てるに際しての前記メッセージ及び送信メールボックスの組を決定する割当装置であって、
複数のメッセージ及び該複数のメッセージが各割り当てられる複数の第１の送信メールボックスを対応付けて記憶する割当情報記憶部と、
前記複数のメッセージの割り当てがない一又は複数の第２の送信メールボックスを記憶する未割当情報記憶部と、
前記割当情報記憶部に記憶された複数のメッセージの少なくとも一部を、前記未割当情報記憶部に記憶された第２の送信メールボックスに割り当てる再割当処理部と
を備え、
前記複数のメッセージの少なくとも一部及び前記第２の送信メールボックスと、該複数のメッセージの残部及び各対応する第１の送信メールボックスとを夫々前記組として決定するようにしてあること
を特徴とする割当装置。
【請求項２】
前記第１の送信メールボックス及び第２の送信メールボックスの総数と前記複数のメッセージの総数とから、各送信メールボックスに割り当てられるメッセージの数の平均値を算出する算出部を備え、
前記再割当処理部は、前記算出部が算出した平均値に基づいて、前記複数のメッセージの少なくとも一部を前記第２の送信メールボックスに割り当てるようにしてあること
を特徴とする請求項１に記載の割当装置。
【請求項３】
前記割当情報記憶部には、前記第１の送信メールボックスの１つと複数のメッセージとが対応付けて記憶され、
前記複数のメッセージの数と前記算出部が算出した平均値とに基づいて、該複数のメッセージが各割り当てられる送信メールボックスの数を決定する決定部を備え、
前記再割当処理部は、前記複数のメッセージを前記決定部に決定された数の送信メールボックスに各割り当てるようにしてあること
を特徴とする請求項２に記載の割当装置。
【請求項４】
前記決定部は、前記複数のメッセージの数を前記平均値で除し、除した値の小数部を切り上げた値を前記複数のメッセージが各割り当てられる送信メールボックスの数とすること
を特徴とする請求項３に記載の割当装置。
【請求項５】
前記割当情報記憶部が記憶する複数のメッセージは夫々、送出されるときの優先度を含み、
前記再割当処理部は、前記決定部が決定した数が複数であった場合、前記一の第１の送信メールボックスに対応する複数のメッセージに各含まれる優先度の高低に基づいて、前記決定部が決定した数の送信メールボックスに各割り当てるようにしてあること
を特徴とする請求項３又は４に記載の割当装置。
【請求項６】
前記再割当処理部は、前記平均値が小数部を含む場合、割り当てられるメッセージの数が少ない送信メールボックスに高い優先度を含むメッセージが割り当てられるように、前記一の第１の送信メールボックスに対応する複数のメッセージを前記決定部が決定した数の送信メールボックスに各割り当てるようにしてあること
を特徴とする請求項５に記載の割当装置。
【請求項７】
前記決定部は、前記割当情報記憶部に記憶された第１の送信メールボックス全てについて、対応するメッセージが割り当てられる送信メールボックスの数を決定するようにしてあり、
前記決定部が決定した送信メールボックスの数の総数が、前記第１の送信メールボックス及び第２の送信メールボックスの数の総数よりも多いか否かを判定する判定部を備え、
前記決定部は更に、前記判定部が多いと判定した場合、最低の優先度を含むメッセージに対応する第１の送信メールボックスについて、先に決定した送信メールボックスの数に代え、該数よりも少ない数を前記送信メールボックスの数とすること
を特徴とする請求項５又は６に記載の割当装置。
【請求項８】
前記再割当処理部は、異なる第１の送信メールボックスに対応するメッセージを前記第２送信メールボックスに割り当てないようにしてあること
を特徴とする請求項１から７までの何れか一つに記載の割当装置。
【請求項９】
請求項１から８までの何れか一つに記載の割当装置と、
複数の送信メールボックスを備える通信装置が複数のメッセージを順次送出するときの挙動をシミュレートし、前記複数のメッセージ全てが所定の許容時間以内に送出され得るメッセージ及び送信メールボックスの組を出力するシミュレーション装置と
を備え、
前記割当情報記憶部は、前記シミュレーション装置が出力したメッセージ及び送信メールボックスの組を記憶するようにしてあり、
前記未割当情報記憶部は、前記割当情報記憶部が記憶する送信メールボックス以外の前記通信装置が備える送信メールボックスを記憶するようにしてあること
を特徴とする割当システム。
【請求項１０】
前記割当装置及びシミュレーション装置は、一体に構成されていること
を特徴とする請求項９に記載の割当システム。
【請求項１１】
接続される通信バスに優先度を含む複数のメッセージを送出するときに該メッセージ夫々を割り当てるべき複数の送信メールボックスを備え、異なるバスの間で所定のメッセージ群におけるメッセージを順次中継する中継装置を、請求項９又は１０に記載の割当システムを用いて製造する中継装置の製造方法であって、
前記シミュレーション装置に、前記中継装置の挙動をシミュレートさせる工程と、
前記割当装置に、前記シミュレーション装置が出力した前記メッセージ群におけるメッセージ及び送信メールボックスの組に基づいて、前記中継装置が備える複数の送信メールボックス夫々に割り当てるべき前記メッセージ群におけるメッセージを決定させる工程と
を含むことを特徴とする中継装置の製造方法。
【請求項１２】
複数のメッセージの夫々を複数の送信メールボックスに割り当てるに際しての前記メッセージ及び送信メールボックスの組を決定する割当方法であって、
前記複数のメッセージ及び複数のメッセージが各割り当てられる複数の第１の送信メールボックスを対応付けて記憶するステップと、
前記メッセージの割り当てがない一又は複数の第２の送信メールボックスを記憶するステップと、
記憶された複数のメッセージの少なくとも一部を、前記第２の送信メールボックスに割り当てるステップと、
前記少なくとも一部のメッセージ及び前記第２の送信メールボックスと、記憶された残部のメッセージ及び対応する第１の送信メールボックスとを夫々前記組として決定するステップと
を含むことを特徴とする割当方法。
【請求項１３】
複数のメッセージの夫々を複数の送信メールボックスに割り当てるに際しての前記メッセージ及び送信メールボックスの組の決定を、コンピュータに行わせるコンピュータプログラムにおいて、
コンピュータに、
前記複数のメッセージ及び複数のメッセージが各割り当てられる複数の第１の送信メールボックスを対応付けて記憶するステップと、
前記メッセージの割り当てがない一又は複数の第２の送信メールボックスを記憶するステップと、
記憶された複数のメッセージの少なくとも一部を、前記第２の送信メールボックスに割り当てるステップと、
前記少なくとも一部のメッセージ及び前記第２の送信メールボックスと、記憶された残部のメッセージ及び対応する第１の送信メールボックスとを夫々前記組として決定するステップと
を実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のメッセージの夫々を複数の送信メールボックスに割り当てるに際してのメッセージ及び送信メールボックスの組を決定する割当装置、割当システム、割当方法、及びコンピュータプログラムに関する。また、当該決定に基づく中継装置の製造方法に関する。
【背景技術】
【０００２】
従来、車両制御の分野では、車内に配される機器夫々を制御する多数のＥＣＵ（Electronic Control Unit）を通信バスで接続し、相互にメッセージを送受信させて、多様な処理を行なう構成が一般的となっている。１つの通信バスに接続されるＥＣＵの数に制限があること、又はＥＣＵの役割によって通信速度が異なることから、ＥＣＵを複数の群に分け、群毎に１つの通信バスに接続し、異なる通信バス間を中継装置（ゲートウェイ）で接続する構成が採用されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−６５１７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
中継装置又はＥＣＵを含む通信装置には、接続される通信バス毎に複数の送信メールボックスを備え、一の通信バスにメッセージを送出するとき、対応する複数の送信メールボックスの何れかに当該メッセージを割り当てるように構成されているものがある。このような通信装置において、各送信メールボックスには、一のメッセージのみ割り当てることができる。そのため、同じ送信メールボックスに割り当てられる複数のメッセージが通信装置に存在する場合、当該送信メールボックスに先に割り当てられているメッセージが通信バスに送出されるまで、他のメッセージが通信バスに送出されない。このとき、先に割り当てられているメッセージが種々の要因で通信バスに送出されなかった場合、他のメッセージが送出されず、通信に遅延が生じ、車両制御に悪影響を及ぼす虞がある。
【０００５】
このような悪影響を事前に防ぐために、通信装置がメッセージを送出するときの挙動のシミュレーションを行う方法が考えられる。当該シミュレーションでは、通信装置が一の通信バスに送出される複数のメッセージを受信した場合であっても通信に遅延が生じないように、メッセージが割り当てられるべき送信メールボックスを事前に決定することができる。
【０００６】
一般に、シミュレーションは予め定められた処理手順に従って行われる。そのため、当該処理手順に基づいて決定されたメッセージ及び送信メールボックスの組よりも、通信装置がメッセージの送出に要する時間をより短縮することができるメッセージ及び送信メールボックスの組が存在する余地がある。
【０００７】
本発明は斯かる事情に鑑みてなされたものであり、その目的は、メッセージが送出されるときに要する時間をより短縮可能なメッセージ及び送信メールボックスの組を決定する割当装置、割当システム、割当方法、及びコンピュータプログラムを提供することにある。また、他の目的は、中継の遅延を確実に防止することができ、かつ中継に要する時間をより短縮することができる中継装置の製造方法を提供することにある。
【課題を解決するための手段】
【０００８】
本発明に係る割当装置は、複数のメッセージの夫々を複数の送信メールボックスに割り当てるに際しての前記メッセージ及び送信メールボックスの組を決定する割当装置であって、複数のメッセージ及び該複数のメッセージが各割り当てられる複数の第１の送信メールボックスを対応付けて記憶する割当情報記憶部と、前記複数のメッセージの割り当てがない一又は複数の第２の送信メールボックスを記憶する未割当情報記憶部と、前記割当情報記憶部に記憶された複数のメッセージの少なくとも一部を、前記未割当情報記憶部に記憶された第２の送信メールボックスに割り当てる再割当処理部とを備え、前記複数のメッセージの少なくとも一部及び前記第２の送信メールボックスと、該複数のメッセージの残部及び各対応する第１の送信メールボックスとを夫々前記組として決定するようにしてあることを特徴とする。
【０００９】
本発明にあっては、割当情報記憶部は、送出される複数のメッセージと、当該複数のメッセージが各割り当てられる複数の第１の送信メールボックスとを対応付けて記憶する。未割当情報記憶部は、メッセージの割り当てがない第２の送信メールボックスを記憶する。再割当処理部は、割当情報記憶部に記憶された複数のメッセージの少なくとも一部を、未割当情報記憶部に記憶された第２の送信メールボックスに割り当てる。割当装置は、再割当処理部が割り当てた複数のメッセージの少なくとも一部及び第２の送信メールボックスと、当該複数のメッセージの残部及び各対応する第１の送信メールボックスとを夫々、メッセージ及び当該メッセージが割り当てられる送信メールボックスの組として決定する。従って、第１の送信メールボックスに割り当てられているメッセージを第２送信メールボックスに割り当てることで、各送信メールボックスに割り当てられているメッセージの数を減らすことができる。そのため、各メッセージが送信メールボックスに割り当てられるときの処理時間を減らすことができるため、メッセージが送出されるときに要する時間をより短縮することができる。
【００１０】
本発明に係る割当装置は、前記第１の送信メールボックス及び第２の送信メールボックスの総数と前記複数のメッセージの総数とから、各送信メールボックスに割り当てられるメッセージの数の平均値を算出する算出部を備え、前記再割当処理部は、前記算出部が算出した平均値に基づいて、前記複数のメッセージの少なくとも一部を前記第２の送信メールボックスに割り当てるようにしてあることを特徴とする。
【００１１】
本発明にあっては、算出部は、第１の送信メールボックス及び第２の送信メールボックスの総数と送出される複数のメッセージの総数とから、各送信メールボックスに割り当てられるメッセージの数の平均値を算出する。再割当処理部は、算出部が算出した平均値に基づいて、複数のメッセージの少なくとも一部を第２の送信メールボックスに割り当てる。従って、割当装置は、例えば、各送信メールボックスに割り当てるメッセージの数を平均値に近づけることができる。そのため、例えば各送信メールボックスに割り当てられるメッセージの数を略均等とすることができ、メッセージが送出されるときに要する時間をより短縮することができる。
【００１２】
本発明に係る割当装置は、前記割当情報記憶部には、前記第１の送信メールボックスの１つと複数のメッセージとが対応付けて記憶され、前記複数のメッセージの数と前記算出部が算出した平均値とに基づいて、該複数のメッセージが各割り当てられる送信メールボックスの数を決定する決定部を備え、前記再割当処理部は、前記複数のメッセージを前記決定部に決定された数の送信メールボックスに各割り当てるようにしてあることを特徴とする。
【００１３】
本発明にあっては、割当情報記憶部には、第１の送信メールボックスの１つと複数のメッセージとが対応付けて記憶されている。決定部は、複数のメッセージの数と算出部が算出した平均値とに基づいて、当該複数のメッセージが各割り当てられる送信メールボックスの数を決定する。再割当処理部は、当該複数のメッセージを決定部に決定された数の送信メールボックスに各割り当てる。従って、割当装置は、一の送信メールボックスに割り当てられる複数のメッセージを他の送信メールボックスに割り当てることで、各送信メールボックスに割り当てられるメッセージの数を算出した平均値に近づけることができる。そのため、割当装置は、各送信メールボックスに割り当てられるメッセージの数の均一化を図ることができ、メッセージの送出に要する時間を短縮可能なメッセージ及び送信メールボックスの組をより確実に決定することができる。
【００１４】
本発明に係る割当装置は、前記決定部は、前記複数のメッセージの数を前記平均値で除し、除した値の小数部を切り上げた値を前記複数のメッセージが各割り当てられる送信メールボックスの数とすることを特徴とする。
【００１５】
本発明にあっては、決定部は、一の第１の送信メールボックスに対応する複数のメッセージの数を算出部が算出した平均値で除し、除した値の小数部を切り上げた値を複数の当該複数のメッセージが各割り当てられる送信メールボックスの数とする。従って、割当装置は、一の送信メールボックスに割り当てられる複数のメッセージを他の送信メールボックスに割り当てるときに、各送信メールボックスに割り当てられるメッセージの数が算出した平均値以下となるようにすることができる。そのため、割当装置は、メッセージの送出に要する時間を短縮可能なメッセージ及び割り当てられるべき送信メールボックスの組をより確実に決定することができる。
【００１６】
本発明に係る割当装置は、前記割当情報記憶部が記憶する複数のメッセージは夫々、送出されるときの優先度を含み、前記再割当処理部は、前記決定部が決定した数が複数であった場合、前記一の第１の送信メールボックスに対応する複数のメッセージに各含まれる優先度の高低に基づいて、前記決定部が決定した数の送信メールボックスに各割り当てるようにしてあることを特徴とする。
【００１７】
本発明にあっては、割当情報記憶部が記憶する複数のメッセージは夫々、送出されるときの優先度を含んでいる。再割当処理部は、決定部が決定した数が複数であった場合、一の第１の送信メールボックスに対応する複数のメッセージに各含まれる優先度の高低に基づいて、決定部が決定した数の送信メールボックスに各割り当てる。従って、割当装置は例えば、高い優先度を含むメッセージが送出されるまでの時間をより短縮することができるため、利便性が向上する。
【００１８】
本発明に係る割当装置は、前記再割当処理部は、前記平均値が小数部を含む場合、割り当てられるメッセージの数が少ない送信メールボックスに高い優先度を含むメッセージが割り当てられるように、前記一の第１の送信メールボックスに対応する複数のメッセージを前記決定部が決定した数の送信メールボックスに各割り当てるようにしてあることを特徴とする。
【００１９】
本発明にあっては、再割当処理部は、算出部が算出した平均値が小数部を含む場合、割り当てられるメッセージが少ない送信メールボックスに高い優先度を含むメッセージが割り当てられるように、一の第１の送信メールボックスに対応する複数のメッセージを決定部が決定した数の送信メールボックスに各割り当てる。従って、割当装置は、高い優先度を含むメッセージについて、送信メールボックスに割り当てられるときの処理時間を短縮することができるため、高い優先度を含むメッセージが送出されるまでの時間をより短縮することができる。
【００２０】
本発明に係る割当装置は、前記決定部は、前記割当情報記憶部に記憶された第１の送信メールボックス全てについて、対応するメッセージが割り当てられる送信メールボックスの数を決定するようにしてあり、前記決定部が決定した送信メールボックスの数の総数が、前記第１の送信メールボックス及び第２の送信メールボックスの数の総数よりも多いか否かを判定する判定部を備え、前記決定部は更に、前記判定部が多いと判定した場合、最低の優先度を含むメッセージに対応する第１の送信メールボックスについて、先に決定した送信メールボックスの数に代え、該数よりも少ない数を前記送信メールボックスの数とすることを特徴とする。
【００２１】
本発明にあっては、決定部は、割当情報記憶部に記憶された第１の送信メールボックス全てについて、対応するメッセージが割り当てられる送信メールボックスの数を決定する。判定部は、決定部が決定した送信メールボックスの数の総数が、第１の送信メールボックス及び第２の送信メールボックスの数の総数よりも多いか否かを判定する。決定部は更に、判定部が多いと判定した場合、最低の優先度を含むメッセージに対応する第１の送信メールボックスについて、先に決定した送信メールボックスの数に代え、当該数よりも少ない数を送信メールボックスの数とする。従って、高い優先度を含むメッセージが多く割り当てられている送信メールボックスにおける各メッセージを、多くの送信メールボックスに再割り当てすることができる。そのため、高い優先度を含むメッセージを、割り当てられるメッセージが少ない送信メールボックスに割り当てることができ、高い優先度を含むメッセージが送出されるまでの時間をより短縮することができる。
【００２２】
本発明に係る割当装置は、前記再割当処理部は、異なる第１の送信メールボックスに対応するメッセージを前記第２送信メールボックスに割り当てないようにしてあることを特徴とする。
【００２３】
本発明にあっては、再割当処理部は、異なる第１の送信メールボックスに対応するメッセージを第２送信メールボックスに割り当てない。従って、割当装置は、例えば、第１の送信メールボックス夫々に、メッセージが優先度順に割り当てられていた場合、高い優先度を含むメッセージ及び低い優先度を含むメッセージが混在することを防ぐことができる。そのため、例えば、アービトレーション等を行う通信プロトコルに基づいてメッセージが送出される場合、当該アービトレーションによる通信遅延を防ぐことができる。
【００２４】
本発明に係る割当システムは、上述の割当装置と、複数の送信メールボックスを備える通信装置が複数のメッセージを順次送出するときの挙動をシミュレートし、前記複数のメッセージ全てが所定の許容時間以内に送出され得るメッセージ及び送信メールボックスの組を出力するシミュレーション装置とを備え、前記割当情報記憶部は、前記シミュレーション装置が出力したメッセージ及び送信メールボックスの組を記憶するようにしてあり、前記未割当情報記憶部は、前記割当情報記憶部が記憶する送信メールボックス以外の前記通信装置が備える送信メールボックスを記憶するようにしてあることを特徴とする。
【００２５】
本発明にあっては、シミュレーション装置は、複数の送信メールボックスを備える通信装置が複数のメッセージを順次送出するときの挙動をシミュレートし、前記複数のメッセージ全てが所定の許容時間以内に送出され得るメッセージ及び送信メールボックスの組を出力する。割当装置が備える割当情報記憶部は、シミュレーション装置が出力したメッセージ及び送信メールボックスの組を記憶する。割当装置が備える未割当情報記憶部は、割当情報記憶部が記憶する送信メールボックス以外の通信装置が備える送信メールボックスを記憶する。従って、例えば、シミュレーション装置によって、通信装置が各メッセージを送出するときの所要時間を所定の許容時間以内に割り当てることができ、更に割当装置によって当該所要時間を短縮することができる。
【００２６】
本発明に係る割当システムは、前記割当装置及びシミュレーション装置は、一体に構成されていることを特徴とする。
【００２７】
本発明にあっては、割当装置とシミュレーション装置とは一体に構成されている。従って、例えば、コンピュータ等の一の計算機によってシミュレーション及び割当の双方を行うことができる。
【００２８】
本発明に係る中継装置の製造方法は、接続される通信バスに優先度を含む複数のメッセージを送出するときに該メッセージ夫々を割り当てるべき複数の送信メールボックスを備え、異なるバスの間で所定のメッセージ群におけるメッセージを順次中継する中継装置を、上述の割当システムを用いて製造する中継装置の製造方法であって、前記シミュレーション装置に、前記中継装置の挙動をシミュレートさせる工程と、前記割当装置に、前記シミュレーション装置が出力した前記メッセージ群におけるメッセージ及び送信メールボックスの組に基づいて、前記中継装置が備える複数の送信メールボックス夫々に割り当てるべき前記メッセージ群におけるメッセージを決定させる工程とを含むことを特徴とする。
【００２９】
本発明にあっては、上述のシミュレーション装置に中継装置の挙動をシミュレートさせる工程を含む。また、当該シミュレーション装置が出力したメッセージ群におけるメッセージ及び送信メールボックスの組に基づいて、中継装置が備える複数の送信メールボックス夫々に割り当てるべき当該メッセージ群におけるメッセージを、上述の割当装置に決定させる工程を含む。従って、中継装置は例えば、シミュレーション装置によって、各メッセージを送出するときの所要時間を所定の許容時間以内に割り当てることができ、更に割当装置によって当該所要時間を短縮することができる。
【００３０】
本発明に係る割当方法は、複数のメッセージの夫々を複数の送信メールボックスに割り当てるに際しての前記メッセージ及び送信メールボックスの組を決定する割当方法であって、前記複数のメッセージ及び複数のメッセージが各割り当てられる複数の第１の送信メールボックスを対応付けて記憶するステップと、前記メッセージの割り当てがない一又は複数の第２の送信メールボックスを記憶するステップと、記憶された複数のメッセージの少なくとも一部を、前記第２の送信メールボックスに割り当てるステップと、前記少なくとも一部のメッセージ及び前記第２の送信メールボックスと、記憶された残部のメッセージ及び対応する第１の送信メールボックスとを夫々前記組として決定するステップとを含むことを特徴とする。
【００３１】
本発明にあっては、送出される複数のメッセージと、当該複数のメッセージが各割り当てられる複数の第１の送信メールボックスを対応付けて記憶するステップを含む。また、当該メッセージの割り当てがない第２の送信メールボックスを記憶するステップを含む。また、記憶された複数のメッセージの少なくとも一部を、第２の送信メールボックスに割り当てるステップを含む。更に、当該少なくとも一部のメッセージ及び第２の送信メールボックスと、記憶された残部のメッセージ及び対応する第１の送信メールボックスとを夫々、メッセージ及び当該メッセージが割り当てられる送信メールボックスの組として決定するステップを含む。従って、第１の送信メールボックスに割り当てられているメッセージを第２送信メールボックスに割り当てることで、各送信メールボックスに割り当てられているメッセージの数を減らすことができる。そのため、各メッセージが送信メールボックスに割り当てられるときの処理時間を減らすことができるため、メッセージが送出されるときに要する時間をより短縮することができる。
【００３２】
本発明に係るコンピュータプログラムは、複数のメッセージの夫々を複数の送信メールボックスに割り当てるに際しての前記メッセージ及び送信メールボックスの組の決定を、コンピュータに行わせるコンピュータプログラムにおいて、コンピュータに、前記複数のメッセージ及び複数のメッセージが各割り当てられる複数の第１の送信メールボックスを対応付けて記憶するステップと、前記メッセージの割り当てがない一又は複数の第２の送信メールボックスを記憶するステップと、記憶された複数のメッセージの少なくとも一部を、前記第２の送信メールボックスに割り当てるステップと、前記少なくとも一部のメッセージ及び前記第２の送信メールボックスと、記憶された残部のメッセージ及び対応する第１の送信メールボックスとを夫々前記組として決定するステップとを実行させることを特徴とする。
【００３３】
本発明にあっては、送出される複数のメッセージと、当該複数のメッセージが各割り当てられる複数の第１の送信メールボックスを対応付けて記憶するステップを、コンピュータに実行させる。また、当該メッセージの割り当てがない第２の送信メールボックスを記憶するステップを、コンピュータに実行させる。また、記憶された複数のメッセージの少なくとも一部を、第２の送信メールボックスに割り当てるステップを、コンピュータに実行させる。更に、当該少なくとも一部のメッセージ及び第２の送信メールボックスと、記憶された残部のメッセージ及び対応する第１の送信メールボックスとを夫々、メッセージ及び当該メッセージが割り当てられる送信メールボックスの組として決定するステップを、コンピュータに実行させる。従って、第１の送信メールボックスに割り当てられているメッセージを第２送信メールボックスに割り当てることで、各送信メールボックスに割り当てられているメッセージの数を減らすことができる。そのため、各メッセージが送信メールボックスに割り当てられるときの処理時間を減らすことができるため、メッセージが送出されるときに要する時間をより短縮することができる。
【発明の効果】
【００３４】
本発明によれば、メッセージの送出に要する時間をより短縮可能なメッセージ及び送信メールボックスの組を決定することができる。また、中継の遅延を確実に防止することができ、かつ中継に要する時間をより短縮することができる中継装置を製造することができる。
【図面の簡単な説明】
【００３５】
【図１】本実施の形態における割当システムとしてのコンピュータの構成を示すブロック図である。
【図２】メッセージテーブルの具体例を示す説明図である。
【図３】シミュレートの対象となる中継装置の構成を示すブロック図である。
【図４】コンピュータが、メッセージ及び送信メールボックスの組を決定するときにおける処理手順を示すフローチャートである。
【図５】シミュレーション処理のサブルーチンを示すフローチャートである。
【図６】シミュレーション処理の出力結果の具体例を示す説明図である。
【図７】最適化処理のサブルーチンを示すフローチャートである。
【図８】決定処理のサブルーチンを示すフローチャートである。
【図９】再割当処理のサブルーチンを示すフローチャートである。
【図１０】最適化処理の効果を説明する説明図である。
【発明を実施するための形態】
【００３６】
以下、本発明をその実施の形態を示す図面に基づいて詳述する。
【００３７】
図１は、本実施の形態における割当システムとしてのコンピュータ１の構成を示すブロック図である。コンピュータ１は、パーソナルコンピュータ等の計算機が用いられ、車両に搭載される中継装置３（図３参照）の挙動のシミュレーションを行う。コンピュータ１がシミュレーションを行う対象となる中継装置３は、車両に搭載される複数の通信バス５（図３参照）と接続し、各通信バス５に対応する送信メールボックス３４ｂ（図３参照）を複数備え、当該通信バス５間でのメッセージのやり取りを中継する。このとき中継装置３は、メッセージを送出すべき通信バス５に対応する送信メールボックス３４ｂの何れかに当該メッセージを割り当てた後、当該メッセージの送出を行う。コンピュータ１は、当該中継装置３の挙動のシミュレーションを行い、当該シミュレーションに基づいて、中継装置３がメッセージを中継するときにおける、当該メッセージ及び送信メールボックス３４ｂの組を決定する。
【００３８】
コンピュータ１は、制御部１１を備える。制御部１１は、例えば一又は複数のＣＰＵ（Central Processing Unit）、マルチコアＣＰＵ等により構成される。また、コンピュータ１は、バスを介して制御部１１に接続されている、記憶部１２、一時記憶部１３、入出力部１４、読取部１５、及び計時部１６を備える。制御部１１は、記憶部１２に記憶されている後述のシミュレーションプログラム１２ａ及び最適化プログラム１２ｂを読み出して実行することにより各部を制御する。
【００３９】
記憶部１２は、ＥＥＰＲＯＭ（Electrically Erasable and Programmable ROM）、フラッシュメモリ、ＨＤＤ（Hard Disk Drive）等の不揮発性メモリにより構成される。記憶部１２には、シミュレーションプログラム１２ａが記憶されている。シミュレーションプログラム１２ａは、コンピュータ１が備える各部を制御し、中継装置３の挙動をシミュレートするためのプログラムである。また、記憶部１２には、最適化プログラム１２ｂが記憶されている。最適化プログラム１２ｂは、コンピュータ１が備える各部を制御し、中継装置３がメッセージを中継するときにおける、当該メッセージ及び送信メールボックス３４ｂの組を決定するためのプログラムである。また、記憶部１２には、メッセージテーブル１２ｃが記憶されている。メッセージテーブル１２ｃには、コンピュータ１によってシミュレートされる中継装置３が接続される通信バス５に送出すべきメッセージ、及び当該通信バス５に送出されるべき他のメッセージを含んだテーブル形式のデータが記憶されており、詳細は後述する。更に、記憶部１２には、中継装置３のシミュレートに用いられるシミュレーション条件が記憶されている。
【００４０】
一時記憶部１３は、ＳＲＡＭ（Static RAM）、ＤＲＡＭ（Dynamic RAM）等のメモリにより構成される。一時記憶部１３は、制御部１１がシミュレーションプログラム１２ａ及び最適化プログラム１２ｂによる処理を行うことによって生ずる各種データを一時記憶する。
【００４１】
入出力部１４には、外部からキーボード、ディスプレイ等の入出力装置が接続され、入出力装置からの入力信号を制御部１１に出力し、制御部１１からの出力信号を入出力装置に出力する。
【００４２】
読取部１５は、ＣＤ−ＲＯＭ、ＤＶＤ、ブルーレイディスク、又はフレキシブルディスク等である記録媒体２から情報を読み取ることが可能である。制御部１１は、読取部１５により読み出された記録媒体２に記録されているデータを、一時記憶部１３に記憶するか、又は記憶部１２に記憶する。記録媒体２には、制御部１１が実行することによりコンピュータ１が動作するための最適化プログラム２ａが記録されている。記憶部１２に記憶されている最適化プログラム１２ｂは、記録媒体２から読取部１５が読み取った最適化プログラム２ａの複製であってもよい。
【００４３】
計時部１６は、タイマ又はリアルタイムクロックを備え、制御部１１の要求に応じて計時処理を行い、計時した時間を制御部１１へ出力する。
【００４４】
図２は、メッセージテーブル１２ｃの具体例を示す説明図である。メッセージテーブル１２ｃには、各メッセージを識別するＩＤ毎に、ＥＣＵ−ＩＤ、周期、データ長、及びバスＩＤが記憶されている。メッセージテーブル１２ｃの各行は、メッセージを示している。ＩＤは、例えば１６進数で表される値であり、ＣＡＮプロトコルのデータフレームにおける所謂アービトレーションフィールドに相当する優先度を含んだ情報である。このときＩＤは、値が小さくなるほど優先度が高くなる。ＥＣＵ−ＩＤは、メッセージの送出元となる中継装置３又はＥＣＵを識別する情報であり、例えば、値が０のとき中継装置３が送出することを表し、それ以外は、各値に対応するＥＣＵが送出することを表す。
【００４５】
また、周期は、メッセージの送出元が中継装置３のときは当該メッセージが中継装置３に受信されるべき周期を表し、メッセージの送出元がＥＣＵのときは当該メッセージがＥＣＵから送出されるべき周期を表す。単位は例えばミリ秒である。データ長は、各メッセージのデータの大きさを表し、単位は例えばバイトである。バスＩＤは、メッセージが送出されるべき通信バス５を識別するＩＤを表す。なお、本実施の形態においては、メッセージを識別するＩＤに優先度を含んでいる例を説明したが、メッセージを識別するＩＤとは別に優先度に係る情報を、ＩＤ毎に記憶していてもよい。
【００４６】
図３は、シミュレートの対象となる中継装置３の構成を示すブロック図である。中継装置３は、車両に搭載され、一又は複数のＥＣＵ４が接続された複数の通信バス５に接続される。本実施の形態においては、中継装置３及び各ＥＣＵ４は、ＣＡＮプロトコルに基づく通信を行う。中継装置３は、制御部３１を備え、制御部３１は、例えば一又は複数のＣＰＵ、マルチコアＣＰＵ等により構成される。また、中継装置３は、バスを介して制御部３１に接続されている記憶部３２、一時記憶部３３、及び通信部３４を備える。制御部３１は、記憶部３２に記憶されている後述の制御プログラム３２ａを読み出して実行することにより各部を制御する。
【００４７】
記憶部３２は、ＥＥＰＲＯＭ、フラッシュメモリ等の不揮発性メモリにより構成される。記憶部３２には、制御プログラム３２ａが記憶されている。制御プログラム３２ａは、中継装置３に受信されたメッセージを中継先に送信する等の中継装置３がメッセージを中継するための処理内容と、中継装置３が備える各部を制御するための処理内容とが記述されたプログラムである。また、記憶部３２は、接続している通信バス５を識別するバスＩＤを記憶している。
【００４８】
一時記憶部３３は、ＳＲＡＭ、ＤＲＡＭ等のメモリにより構成される。一時記憶部３３は、制御部３１が制御プログラム３２ａによる処理を行うことによって生ずる各種データを一時記憶する。
【００４９】
通信部３４は、接続される通信バス５と同数備えられ、各通信バス５に伝送されるメッセージを受信し、制御部３１の指令に基づいて、当該各通信バス５にメッセージを送出する。通信部３４は、一又は複数の受信メールボックス３４ａ及び送信メールボックス３４ｂを備える。受信メールボックス３４ａは、対応する通信バス５に伝送するメッセージを順次格納し、制御部３１に当該メッセージを出力する。制御部３１は、受信メールボックス３４ａから出力されたメッセージに基づいて、当該メッセージを送出すべき通信バス５に対応する通信部３４が備える送信メールボックス３４ｂに当該メッセージを割り当てる。その後、制御部３１は送信メールボックス３４ｂに割り当てたメッセージを通信バス５に送出する前に、当該メッセージに含まれる優先度に基づいて、当該通信バス５に接続しているＥＣＵ４とアービトレーションを行い、当該メッセージの送信権を取得する。制御部３１は、送信権を取得したメッセージが割り当てられている送信メールボックス３４ｂに指令を出し、当該メッセージを通信バス５に送出する。アービトレーションの処理は、従来のＣＡＮプロトコルによるものと同じであるため、詳細な説明を省略する。送信メールボックス３４ｂは、一のメッセージが割り当てられている間、他のメッセージを割り当てることができない。
【００５０】
以上の構成の中継装置３は、異なる通信バス５に各接続されたＥＣＵ４が送受信する複数のメッセージを順次中継する。このとき、中継装置３の送信メールボックス３４ｂに割り当てられているメッセージに含まれる優先度が低かった場合、アービトレーションにより当該メッセージの送信権が取得され、通信バス５に送出されるまでに時間を要する虞がある。その間に、当該送信メールボックス３４ｂに送出されるべき他の優先度の高いメッセージが中継装置３に受信されたとき、当該優先度が高いメッセージが通信バス５に送出されるまでに時間を要し、車両制御に悪影響を及ぼす虞がある。そこで、コンピュータ１により、中継装置３がメッセージを中継するときの挙動をシミュレートし、当該悪影響を及ぼさないメッセージ及び当該メッセージが割り当てられる送信メールボックス３４ｂの組を事前に決定することで、当該悪影響を事前に回避可能となる。以下に、コンピュータ１がメッセージ及び送信メールボックス３４ｂの組を決定するときの処理手順について説明する。
【００５１】
図４は、コンピュータ１が、メッセージ及び送信メールボックス３４ｂの組を決定するときにおける処理手順を示すフローチャートである。コンピュータ１の制御部１１は、記憶部１２に記憶されているシミュレーションプログラム１２ａ及びシミュレーション条件に基づいて、中継装置３の挙動のシミュレーション処理を行う（ステップＳ１）。制御部１１は、ステップＳ１の処理で、中継装置３が中継する全メッセージについて、各メッセージの中継装置３による中継に要する所要時間が許容時間以内となるような、メッセージ及び送信メールボックス３４ｂの組を出力結果とする。コンピュータ１は、ステップＳ１の処理を行うとき本発明のシミュレーション装置として機能する。なお、ステップＳ１のシミュレーション処理の詳細は後述する。
【００５２】
次いで、制御部１１は、ステップＳ１の出力結果におけるメッセージ及び送信メールボックス３４ｂの組と、メッセージが未割当の送信メールボックス３４ｂとを夫々、一時記憶部１３に一時記憶する（ステップＳ２）。当該組に含まれる送信メールボックス３４ｂは、本発明における第１の送信メールボックスに相当し、メッセージが未割当の送信メールボックス３４ｂは、本発明における第２の送信メールボックスに相当する。また、一時記憶部１３は、ステップＳ２において、本発明の割当情報記憶部及び未割当情報記憶部に相当する。
【００５３】
次いで、制御部１１は、ステップＳ２で一時記憶したメッセージ及び送信メールボックス３４ｂの組と、未割当の送信メールボックス３４ｂとに基づいて最適化処理を行う（ステップＳ３）。最適化処理とは、ステップＳ２で一時記憶した組及び未割当の送信メールボックス３４ｂに基づいて、当該組に割り当てられているメッセージの少なくとも一部を未割当の送信メールボックス３４ｂに再度割り当てる処理である。当該処理を行うことにより、制御部１１は中継装置３におけるメッセージ及び送信メールボックス３４ｂの組を決定する。コンピュータ１は、ステップＳ３の処理を行うとき本発明の割当装置として機能する。なお、ステップＳ３の最適化処理の詳細は後述する。
【００５４】
次いで、制御部１１は、ステップＳ３の処理を行うことにより決定した決定結果を報知し（ステップＳ４）、その後処理を終える。決定結果は、中継装置３におけるメッセージ及び送信メールボックス３４ｂの組を表す。ステップＳ４において、制御部１１は、入出力部１４に指令を出し、入出力部１４に接続されている出力機器に当該決定結果を出力する。例えば、入出力部１４にディスプレイが接続されている場合、当該決定結果をディスプレイの画面上に表示する。また、例えば、入出力部１４にプリンタ等の画像形成装置が接続されている場合、紙等のシートに決定結果の画像形成を行ってもよい。ステップＳ４の処理の後、制御部１１は処理を終える。
【００５５】
制御部１１は、以上の処理を、シミュレーションの対象となる中継装置３の通信部３４毎に行う。そのため、以下で説明するシミュレーション処理、最適化処理については、一の通信部３４が対応する通信バス５にメッセージを送出するときに、車両制御に悪影響を及ぼさないメッセージ及び送信メールボックス３４ｂの組を決定するために行われる処理である。
【００５６】
次に、ステップＳ１におけるシミュレーション処理について説明する。シミュレーション処理において、制御部１１は、メッセージテーブル１２ｃ及びシミュレーション条件に基づいて、中継装置３がメッセージを中継するときの挙動をシミュレートする。本実施形態において、シミュレーション条件は、中継装置３の通信部３４が備える送信メールボックス３４ｂの数と、当該通信部３４が送出する各メッセージが中継装置３に受信された後、送出されるまでに要する許容時間とを含む。許容時間は、各メッセージで異なっていてもよいし、同じであってもよい。シミュレーション条件には、中継装置３のシミュレートに必要な他の各種情報が含まれていてもよい。以下では適宜、中継装置３が図２中のメッセージテーブル１２ｃにおけるバスＩＤが１のメッセージを中継するときを例として説明する。このとき、シミュレーション条件に含まれている送信メールボックス３４ｂの数を６個として説明する。
【００５７】
図５は、シミュレーション処理のサブルーチンを示すフローチャートである。コンピュータ１の制御部１１は、一の送信メールボックス３４ｂを選択する（ステップＳ１１）。制御部１１は例えば、中継装置３の送信メールボックス３４ｂに見立てた領域を一時記憶部１３に確保する。このとき、制御部１１は、送信メールボックス３４ｂのＩＤを記憶する等により、確保した領域を識別可能にする。
【００５８】
次いで、制御部１１は、メッセージテーブル１２ｃから、ＥＣＵ−ＩＤが０のメッセージを一つ選択する（ステップＳ１２）。制御部１１は例えば、ステップＳ１１の処理の後初めてステップＳ１２の処理を行うとき、ＥＣＵ−ＩＤが０でかつ、最低の優先度を含むメッセージを選択する。例えば、制御部１１は、メッセージテーブル１２ｃにおけるＩＤが４９Ｂのメッセージを選択する。このように、最低の優先度を含むメッセージから選択することによって、中継装置３がメッセージを中継する際に遅延を生じ易い状況のシミュレーションを行うことができる。
【００５９】
その後、制御部１１は、ステップＳ１２で選択したメッセージの遅延時間を算出する（ステップＳ１３）。制御部１１は例えば、メッセージを選択してから、送出される通信バス５に接続されたＥＣＵ４が送出するメッセージとのアービトレーションにより、当該メッセージが送信権を取得するまでの時間を、計時部１６が計時した時間等を用いて算出する。このとき、制御部１１は、中継装置３が当該アービトレーションによりメッセージが送信権を取得するまでの過程をメッセージテーブル１２ｃに記憶されている各種情報を用いて再現する。
【００６０】
次いで、制御部１１は、全メッセージを選択したか否かを判定する（ステップＳ１４）。例えば、制御部１１は、メッセージテーブル１２ｃに記憶されているＥＣＵ−ＩＤが０のメッセージ数を取得し、ステップＳ１２でメッセージを選択した回数が取得したメッセージ数と同じであるか否かにより判定を行う。全メッセージを選択していないと判定した場合（Ｓ１４：ＮＯ）、制御部１１は、ステップＳ１２に処理を戻す。このとき、制御部１１は、先にステップＳ１２で選択したメッセージが最低の優先度を含むメッセージであったとき、最高の優先度を含むメッセージを選択する。先に選択したメッセージが最低の優先度を含んでいない場合、制御部１１は、全メッセージにおける優先度の高さの順において、当該先に選択したメッセージが含む優先度の次位の優先度を含むメッセージを選択する。例えば、制御部１１は、先に選択したメッセージのＩＤが４９Ｂであったとき、ＩＤが０２４のメッセージを選択する。また例えば、先に選択したメッセージのＩＤが０２５であったとき、ＩＤが０２６のメッセージを選択する。
【００６１】
また、制御部１１は、ステップＳ１３の処理において、ステップＳ１２で先に選択されたメッセージの遅延時間を積算するように処理を行う。例えば、制御部１１は、メッセージのＩＤが４９Ｂのメッセージについて先に遅延時間を算出した場合、ＩＤが０２４の遅延時間を４９Ｂの遅延時間に積算する。このように遅延時間を積算することによって、送信メールボックス３４ｂにメッセージが順次割り当てられたときの各メッセージの遅延時間を算出することができる。
【００６２】
ステップＳ１４において全メッセージを選択したと判定した場合（Ｓ１４：ＹＥＳ）、制御部１１は、各メッセージの遅延時間が許容時間未満であるか否かを判定する（ステップＳ１５）。許容時間未満でないと判定した場合（Ｓ１５：ＮＯ）、制御部１１は、ステップＳ１１に処理を戻す。このとき、制御部１１は遅延時間が許容時間以上であったメッセージについて、新たな送信メールボックスに割り当て、再度遅延時間を算出する処理を行う。具体的には、制御部１１は、ステップＳ１１の処理で先に選択した送信メールボックス３４ｂとは異なる送信メールボックス３４ｂを選択する。即ち、先に一時記憶部１３に確保した領域とは異なる領域を確保する。ステップＳ１２の処理では、制御部１１は、ステップＳ１５で遅延時間が許容時間以上と判定されたメッセージを選択する。その後、ステップＳ１３の処理で制御部１１は、選択したメッセージの遅延時間を算出する。また、制御部１１は、ステップＳ１１の処理で確保する領域の数が、シミュレーション条件の送信メールボックス３４ｂの数よりも多くなる場合、シミュレーション条件の許容時間の条件を変更し、全メッセージについて再度シミュレーション処理を行うように構成してもよい。
【００６３】
許容時間未満であると判定した場合（Ｓ１５：ＹＥＳ）、制御部１１は、図４中のステップＳ２に処理を戻す。
【００６４】
以上のシミュレーション処理を行うことによって、制御部１１は、全メッセージが許容時間以内に通信バス５に送出可能なメッセージ及び送信メールボックス３４ｂの組を出力結果とすることができる。なお、出力結果は、本発明の割当情報記憶部に記憶されるべき情報である。また、シミュレーション処理の処理手順は、上述の処理手順以外であってもよい。
【００６５】
図６は、シミュレーション処理の出力結果の具体例を示す説明図である。図６には、中継装置３が図２中のメッセージテーブル１２ｃにおけるバスＩＤが１のメッセージを中継するときの挙動をシミュレーションした出力結果が表されている。図６においては、各ＩＤのメッセージが送信メールボックスＩＤの送信メールボックス３４ｂに割り当てられることを表している。例えば、ＩＤが０２４のメッセージは、送信メールボックスＩＤが２の送信メールボックス３４ｂに割り当てられることが表されている。即ち、図６においては、送信メールボックスＩＤが１、２、及び３の送信メールボックス３４ｂには、６個、５個、及び１個のメッセージが夫々割り当てられる。このように、全メッセージが許容時間以内に送出可能なメッセージ及び送信メールボックス３４ｂの組をシミュレーションの出力結果として得ることができたとしても、各送信メールボックス３４ｂに割り当てられているメッセージの数にばらつきがある。また、シミュレーション条件で送信メールボックス３４ｂの数を６個と設定した場合、メッセージが未割当の３個の送信メールボックス３４ｂが余る。従って本実施形態においては、制御部１１が以下に示す最適化処理の処理手順を行うことによって、未割当の送信メールボックス３４ｂが存在せず、各送信メールボックス３４ｂに割り当てられるメッセージの数が少なくなるように、メッセージの再割り当てを行う。
【００６６】
図７は、最適化処理のサブルーチンを示すフローチャートである。以下では適宜、図６の出力結果に基づいて最適化処理を行うことを例として説明する。このとき、シミュレーション条件に含まれている送信メールボックス３４ｂの数を６個として説明する。
【００６７】
コンピュータ１の制御部１１は、平均メッセージ数を算出する（ステップＳ２１）。平均メッセージ数は、各送信メールボックス３４ｂに割り当てられるべきメッセージの数の平均値を表す。制御部１１は例えば、上述のシミュレーション処理の出力結果におけるメッセージの総数を、シミュレーション条件に含まれる送信メールボックス３４ｂの数で除することで算出する。例えば、図６の出力結果において、制御部１１は、１２個のメッセージを、６個の送信メールボックス３４ｂで除した値である２を、平均メッセージ数として算出する。このとき、送信メールボックス３４ｂの数は、シミュレーション処理によってメッセージが割り当てられる送信メールボックス３４ｂ及びメッセージが未割当の送信メールボックス３４ｂの総数であることは言うまでもない。制御部１１はステップＳ２１において最適化プログラム１２ｂを実行することにより、本発明の算出部として機能する。
【００６８】
次いで、制御部１１は、決定処理を行う（ステップＳ２２）。決定処理とは、上述の出力結果における送信メールボックス３４ｂ毎に対応するメッセージを再割り当てするときに必要な送信メールボックス３４ｂの数を決定する処理である。このとき、制御部１１は、中継装置３が備える各送信メールボックス３４ｂにステップＳ２１で算出した平均メッセージ数に基づいて、送信メールボックス３４ｂの数を決定する。制御部１１はステップＳ２２において最適化プログラム１２ｂを実行することにより、本発明の決定部及び判定部として機能する。決定処理の詳細は後述する。
【００６９】
次いで、制御部１１は、再割当処理を行う（ステップＳ２３）。再割当処理とは、ステップＳ２２で決定した数の送信メールボックス３４ｂ夫々に、上述の出力結果における送信メールボックス３４ｂに対応するメッセージの再割り当てを行う処理である。制御部１１はステップＳ２３において最適化プログラム１２ｂを実行することにより、本発明の再割当処理部として機能する。再割当処理の詳細は後述する。
【００７０】
図８は、決定処理のサブルーチンを示すフローチャートである。コンピュータ１の制御部１１は、一時記憶部１３に記憶されている上述のシミュレーション処理の出力結果からメッセージを選択する（ステップＳ３１）。このとき、制御部１１は、出力結果における一の送信メールボックス３４ｂに対応するメッセージを全て選択する。次いで、制御部１１は、選択したメッセージの再割り当てを行うときに必要となる送信メールボックス３４ｂの必要数を算出する（ステップＳ３２）。具体的には、制御部１１は、選択したメッセージの数を、図７中のステップＳ２１で算出した平均メッセージ数で除し、除した値の小数部を切り上げた値を当該必要数とする。例えば、選択したメッセージの数が５個であり、算出した平均メッセージ数が２個であった場合、制御部１１は、ステップＳ３２において、必要数を３個とする。
【００７１】
次いで、制御部１１は、算出した必要数を一時記憶部１３に一時記憶する（ステップＳ３３）。その後、制御部１１は、メッセージの選択を完了したか否かを判定する（ステップＳ３４）。具体的には、制御部１１は、シミュレーション処理の出力結果における送信メールボックス３４ｂ全てについて対応するメッセージを選択したか否かにより判定を行う。例えば、図６に示す出力結果の場合、制御部１１は、送信メールボックスＩＤが１、２、及び３に各対応するメッセージが全て選択されたか否かにより判定を行う。選択が完了していないと判定した場合（Ｓ３４：ＮＯ）、制御部１１は、ステップＳ３１に処理を戻す。このとき、制御部１１は、ステップＳ３１において、先に選択したメッセージに対応する送信メールボックス３４ｂとは異なる送信メールボックス３４ｂに対応するメッセージを選択する。
【００７２】
選択が完了したと判定した場合（Ｓ３４：ＹＥＳ）、制御部１１は、送信メールボックス３４ｂの必要総数を算出する（ステップＳ３５）。具体的には、制御部１１は、ステップＳ３３で一時記憶された必要数の総数を算出する。
【００７３】
次いで、制御部１１は、算出した必要総数が、中継装置３が備える送信メールボックス３４ｂの数よりも多いか否かを判定する（ステップＳ３６）。必要総数が送信メールボックス３４ｂの数以下であると判定した場合（Ｓ３６：ＮＯ）、制御部１１は、図７中のステップＳ２３に処理を戻す。
【００７４】
必要総数が送信メールボックス３４ｂの数よりも多いと判定した場合（Ｓ３６：ＹＥＳ）、制御部１１は、必要数調整処理を行う（ステップＳ３７）。必要数調整処理とは、必要総数が送信メールボックス３４ｂの数と同数となるように調整する処理である。具体的には、制御部１１は、ステップＳ３１で選択されたメッセージの中に最低の優先度を含むメッセージが存在するときに算出された必要数を減らし、減らした値を先に算出した必要数に代えて一時記憶部１３に記憶する。例えば、図６の出力結果の場合、送信メールボックスＩＤ１、２、３夫々に対応し、ステップＳ３１で選択されたメッセージに基づいて、ステップＳ３２で算出される必要数は夫々、３個、３個及び１個となり、必要総数は７個となる。このとき、必要総数が、送信メールボックス３４ｂの数の６個よりも多いため、送信メールボックスＩＤ１に対応するメッセージについて送信メールボックス３４ｂの必要数を３個から２個に代えて一時記憶部１３に記憶する。
【００７５】
また例えば、必要総数及び送信メールボックス３４ｂの差が２以上であるとき、ステップＳ３７において制御部１１は、選択されたメッセージの中に最低の優先度を含むメッセージが存在するときに算出された必要数の数を、当該差の値だけ減らす処理を行う。このとき、制御部１１は、特定の条件の成否を判定し、当該条件が成立すると判定した場合、当該選択されたメッセージとは異なるメッセージがステップＳ３１で選択されたときに算出された必要数の数を減らすようにしてもよい。特定の条件は例えば、ステップＳ３１で選択されたメッセージの中に最低の優先度を含むメッセージが存在するときに算出された必要数が、当該差の値以下ということを表す。また、当該選択されたメッセージとは異なるメッセージとは例えば、当該選択されたメッセージ以外の全メッセージ中における最も低い優先度を含むメッセージである。即ち、当該選択されたメッセージとは異なるメッセージは、当該最低の優先度を含むメッセージに対応する送信メールボックスとは異なる送信メールボックスに割り当てられるメッセージの中において、最低の優先度を含むメッセージを表す。例えば図６の出力結果においては、ＩＤが０Ｂ８のメッセージを指す。
【００７６】
以上の処理を行うことによって、通信部３４が備える送信メールボックス３４ｂ全てにメッセージが割り当てられるようにすることができる。なお、図８中の処理において制御部１１は、ステップＳ３６で最適化プログラム１２ｂを実行することにより、本発明の判定部として機能し、それ以外のステップでは決定部として機能する。
【００７７】
図９は、再割当処理のサブルーチンを示すフローチャートである。コンピュータ１の制御部１１は、一時記憶部１３に記憶されている上述のシミュレーション処理の出力結果からメッセージを選択する（ステップＳ４１）。このとき、制御部１１は、出力結果における一の送信メールボックス３４ｂに対応するメッセージを全て選択する。
【００７８】
次いで、制御部１１は、均等割当が可能であるか否かを判定する（ステップＳ４２）。具体的には、制御部１１は、図７中のステップＳ２１で算出した平均メッセージ数が小数部を含まず、かつステップＳ４１で選択したメッセージの数を当該平均メッセージ数で除したときに小数部を含まないとき、均等割当が可能であると判定する。
【００７９】
均等割当が可能であると判定した場合（Ｓ４２：ＹＥＳ）、制御部１１は、均等割当処理を行う（ステップＳ４３）。均等割当処理とは、上述の決定処理によって決定され、一時記憶部１３に記憶されている必要数の送信メールボックス３４ｂ夫々に、選択したメッセージを均等に割り当てる処理である。このとき、均等割当処理では、近い優先度を含むメッセージが同じ送信メールボックス３４ｂに割り当てられる。例えば図６の出力結果において、ＩＤが０Ｃ１、１２３、２３Ｂ、３２１、４００、及び４９Ｂのメッセージが選択され、必要数が２個あったとき、０Ｃ１、１２３、及び２３Ｂのメッセージと、３２１、４００、及び４９Ｂのメッセージとが夫々同じ送信メールボックス３４ｂに割り当てられる。
【００８０】
均等割当が可能でないと判定した場合（Ｓ４２：ＮＯ）、制御部１１は、不均等割当処理を行う（ステップＳ４４）。不均等割当処理とは、割り当てられるメッセージの数が少ない送信メールボックス３４ｂに高い優先度を含むメッセージが割り当てられるように、必要数の送信メールボックス３４ｂ夫々に、選択したメッセージを割り当てる処理である。例えば、ＩＤが０２４、０２５、０２６、０Ｂ４、及び０Ｂ８のメッセージが選択され、必要数が３個であったとき、０２４のメッセージと、０２５及び０２６のメッセージと、０Ｂ４及び０Ｂ８のメッセージとが夫々同じ送信メールボックス３４ｂに割り当てられる。
【００８１】
ステップＳ４３又はステップＳ４４の処理の後、制御部１１は、メッセージの選択を完了したか否かを判定する（ステップＳ４５）。ここで、ステップＳ４５の処理は、図８中のステップＳ３４の処理と同様であるため説明を省略する。選択を完了していないと判定した場合（Ｓ４５：ＮＯ）、制御部１１は、ステップＳ４１に処理を戻す。このとき、制御部１１は、ステップＳ４１において、先に選択したメッセージに対応する送信メールボックス３４ｂとは異なる送信メールボックス３４ｂに対応するメッセージを選択する。選択を完了したと判定した場合（Ｓ４５：ＹＥＳ）、制御部１１は、図７中の最適化処理のサブルーチンに処理を戻す。即ち、制御部１１は、当該サブルーチンを抜け、図４中のステップＳ４に処理を戻す。
【００８２】
制御部１１は、以上の図７〜９までの処理を行うことによって、未割当の送信メールボックス３４ｂが存在せず、各送信メールボックス３４ｂに割り当てられるメッセージの数が少なくなるような、メッセージ及び送信メールボックスの組を決定することができる。図１０は、最適化処理の効果を説明する説明図である。図１０には、図６の出力結果に基づく最適化処理前と最適化処理後とでの、メッセージと当該メッセージが割り当てられる送信メールボックスとの対応表が示されている。送信メールボックスＩＤ（最適化前）の列には、最適化処理前の送信メールボックスのＩＤが示されている。即ち、図６に示した送信メールボックスＩＤと同様である。送信メールボックスＩＤ（最適化後）の列には、最適化処理後の送信メールボックスＩＤが示されている。
【００８３】
図１０の表に示されているように、最適化処理を行った方が、未割当の送信メールボックス３４ｂが存在せず、各送信メールボックス３４ｂに割り当てられるメッセージの数が少なくなっている。また、最適化処理後の各送信メールボックス３４ｂ夫々には、最適化処理前に異なる送信メールボックス３４ｂに対応していたメッセージが割り当てられていない。そのため、高い優先度を含むメッセージ及び低い優先度を含むメッセージが混在することを防ぐことができる。なお、制御部１１は、最適化処理前に異なる送信メールボックス３４ｂに対応していたメッセージが、最適化処理後の各送信メールボックス３４ｂ夫々に割り当てられるように処理を行ってもよい。この場合であっても、各送信メールボックス３４ｂに割り当てられるメッセージの数を、最適化処理を行う前に比べて減らすことができるため、各メッセージが送出されるときに要する時間を短縮することができる。
【００８４】
以上の構成及び処理によって、コンピュータ１は、メッセージの送出に要する時間をより短縮可能なメッセージ及び送信メールボックスの組を決定することができる。
【００８５】
なお、本実施形態においては、制御部１１は、図７〜９に示したような処理手順で最適化処理を行うことを説明したが、各送信メールボックス３４ｂに割り当てられるメッセージの数が少なくなるような他の処理手順で最適化処理を行ってもよい。例えば、制御部１１は、最適化処理を行う前の送信メールボックス３４ｂに割り当てられるメッセージの数に基づいて、特定の一の送信メールボックス３４ｂに対応するメッセージを、一又は複数の未割当の送信メールボックス３４ｂに優先的に割り当てるようにしてもよい。特定の一の送信メールボックス３４ｂは例えば、対応するメッセージの数が、全メッセージに対して所定の割合以上の数である送信メールボックス３４ｂを表す。このような処理を行うことによって、最適化処理を行う前の各送信メールボックス３４ｂに割り当てられるメッセージの数のばらつきが大きい場合であっても、各送信メールボックス３４ｂに割り当てられるメッセージの数が略均等となるようにすることができる。そのため、当該処理手順による最適化処理は、各送信メールボックス３４ｂに割り当てられるメッセージ数のばらつきが大きくなるようなシミュレーション処理の出力結果に対して好適である。                 
【００８６】
次に、上述のコンピュータ１を用いて中継装置３を製造する製造方法を説明する。中継装置３の製造装置は、中継装置３に接続されるべき通信バス５、各通信バス５に接続されるべきＥＣＵ４、及び各ＥＣＵ４が送出するメッセージに係る情報を用いて、メッセージテーブル１２ｃを作成し、コンピュータ１に記憶させる。また、製造装置は、中継装置３が備える送信メールボックス３４ｂの数及び各メッセージの許容時間を含むシミュレーション条件を記憶部１２に記憶させる。その後、製造装置は、コンピュータ１に図４、５、及び７〜９に示した処理を行わせて決定された組となるように、メッセージを送信メールボックス３４ｂに割り当てるようにする。
【００８７】
以上のようにして中継装置３を製造することによって、中継装置３による中継の遅延を確実に防止することができ、かつメッセージの中継に要する時間をより短縮することができる。製造装置は、中継装置３に係る条件を反映したメッセージテーブル１２ｃ及びシミュレーション条件を新たに作成し、記憶部１２に記憶させることで、コンピュータ１は様々な条件に係る中継装置３の挙動をシミュレートし、メッセージ及び送信メールボックス３４ｂの組を決定することができる。そのため、接続されるべき通信バス５の数等の条件が夫々異なる複数の中継装置３を製造する場合であっても、各中継装置３に対応するメッセージテーブル１２ｃ及びシミュレーション条件を作成し、コンピュータ１を用いることができる。
【００８８】
なお、本実施の形態においては、コンピュータ１が中継装置３における挙動のシミュレーションと、当該シミュレーションの出力結果に基づく最適化とを行うことを説明したが、当該シミュレーションと最適化とは別の装置で行われてもよい。このとき、シミュレーションを行った装置が、最適化を行う装置にシミュレーションの結果を出力し、最適化を行う装置が当該出力結果を記憶領域に記憶することで、上述のような処理を実現することができる。シミュレーションを行う装置は、本発明のシミュレーション装置に相当し、最適化を行う装置は、本発明の割当装置に相当する。
【００８９】
また、本実施の形態においては、コンピュータ１は、中継装置３がメッセージを中継するときの挙動をシミュレートしたが、送信メールボックス３４ｂを備える中継装置３以外の通信装置の挙動をシミュレートし、メッセージ及び当該メッセージが割り当てられる送信メールボックスの組を決定するようにしてもよい。更には、コンピュータ１は、上述の出力結果のような、複数のメッセージ及び当該メッセージが各割り当てられる送信メールボックスの情報と、未割当の送信メールボックスの情報とを予め記憶しておけば、シミュレーションを行わなくてもよい。
【００９０】
更に、今回開示された実施の形態は全ての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【００９１】
１  コンピュータ（割当装置、シミュレーション装置、割当システム）
２  記録媒体
２ａ  最適化プログラム
３  中継装置
４  ＥＣＵ
５  通信バス
１１  制御部（再割当処理部、算出部、決定部、判定部）
１２  記憶部
１２ａ  シミュレーションプログラム
１２ｂ  最適化プログラム
１２ｃ  メッセージテーブル
１３  一時記憶部（割当情報記憶部、未割当情報記憶部）
３４  通信部
３４ｂ  送信メールボックス
【図１】
2015186112.tif 000003
【図２】
2015186112.tif 000004
【図３】
2015186112.tif 000005
【図４】
2015186112.tif 000006
【図５】
2015186112.tif 000007
【図６】
2015186112.tif 000008
【図７】
2015186112.tif 000009
【図８】
2015186112.tif 000010
【図９】
2015186112.tif 000011
【図１０】
2015186112.tif 000012