JP5147533B2 - Relay device and relay method - Google Patents
Relay device and relay method Download PDFInfo
- Publication number
- JP5147533B2 JP5147533B2 JP2008132253A JP2008132253A JP5147533B2 JP 5147533 B2 JP5147533 B2 JP 5147533B2 JP 2008132253 A JP2008132253 A JP 2008132253A JP 2008132253 A JP2008132253 A JP 2008132253A JP 5147533 B2 JP5147533 B2 JP 5147533B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- transmission
- message
- priority
- queue
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Small-Scale Networks (AREA)
Description
本発明は、複数の異なる通信網に接続された通信装置から送信されるデータを夫々、他の通信装置へ中継する中継装置に関する。特に、データ夫々に付与されている優先度に基づきデータを送信する場合に、優先度の高低で極端に遅延時間に相違がないように、より効率的にデータを中継することができる中継装置及び中継方法に関する。 The present invention relates to a relay device that relays data transmitted from communication devices connected to a plurality of different communication networks to other communication devices. In particular, when transmitting data based on the priority assigned to each data, a relay device capable of relaying data more efficiently so that there is no significant difference in delay time with extremely high and low priority, and It relates to the relay method.
近年では、複数の通信装置を接続し、各通信装置に夫々機能を割り振って相互にデータを交換し、連携して多様な処理を行なわせるシステムが各分野で利用されている。例えば、車両に配される車載LAN(Local Area Network)の分野では、通信装置としてECU(電子制御装置;Electronic Control Unit)を用い、各ECUに夫々特化させた処理を行なわせて相互にデータを交換することにより、システムとして多様な機能を実現させている。 In recent years, systems that connect a plurality of communication devices, assign functions to the communication devices, exchange data with each other, and perform various processes in cooperation have been used in various fields. For example, in the field of an in-vehicle LAN (Local Area Network) arranged in a vehicle, an ECU (Electronic Control Unit) is used as a communication device, and each ECU performs a specialized process to exchange data with each other. By exchanging, various functions are realized as a system.
各通信装置の機能の特化、また各通信装置が行なうことができる機能の増加に伴ない、通信線に接続される通信装置の数及び種別も増加する。更に、システムとして多様な機能が期待されるようになることから、各通信装置がデータを共有して連携する必要が生じ、送受信されるデータ量は増大する。 As the functions of each communication device are specialized and the functions that can be performed by each communication device increase, the number and types of communication devices connected to the communication line also increase. Furthermore, since various functions are expected as a system, it is necessary for each communication apparatus to share data and cooperate, and the amount of data transmitted and received increases.
通信線で送受信されるデータ量の増大はコリジョン(衝突)によるデータの遅延又は欠落を招く。データの著しい遅延又は欠落は、ECUによるブレーキ制御等の運転補助機能に対して致命的な場合がある。 An increase in the amount of data transmitted and received on the communication line causes data delay or loss due to collision. A significant delay or loss of data may be fatal to driving assistance functions such as brake control by the ECU.
そこで、通信線を複数に分け、異なる通信線にECUを夫々接続する構成が一般的である。データを共通に使用するECUをまとめることで通信線の使用の無駄を抑えることができ、遅延を抑えることができるからである。また、ECUの種別の増大に対して効率的に通信線を利用するため、通信速度の異なる通信線に、送受信するデータの種類によりECUを分別して接続する構成もある。これらの構成では、異なる通信線間はデータの送受信を制御する中継装置により接続される。 Therefore, a configuration in which the communication lines are divided into a plurality of parts and the ECUs are connected to different communication lines is common. This is because by combining ECUs that use data in common, waste of use of the communication line can be suppressed and delay can be suppressed. In addition, in order to efficiently use communication lines in response to an increase in the type of ECU, there is a configuration in which the ECUs are connected to communication lines having different communication speeds by separating the ECUs according to the type of data to be transmitted and received. In these configurations, different communication lines are connected by a relay device that controls transmission and reception of data.
特許文献1には、ECUを複数の群に分けて群毎に通信線に接続し、異なる通信線を中継装置で接続する構成が開示されている。また、特許文献1に開示されている技術では、送受信されるデータには優先順位を識別するための優先度情報が付加されている。中継装置は異なる通信線間でデータを送受信する場合に、受信したデータの優先度情報から優先度を判別して優先度が高いデータを優先的に送信し、通信線の通信負荷が増加した場合でも優先度が高いデータの送信が大きく遅れないようにする技術が開示されている。
これに対し、特許文献2には、優先度が低いデータであっても待機時間が所定時間以上となるデータについては早く送信されるように送信順序を決定する技術が開示されている。
特許文献1に開示されている技術により、優先度が高いデータが大きく遅延することを回避することができる。しかしながら、優先度が高いデータの送信を優先する場合、優先度が低いデータの送信が遅れる。優先度が低いデータの送信の成功率が高くない場合、更に送信順序が後になり、中継装置内にデータが滞留し続ける可能性がある。
With the technique disclosed in
特許文献2に開示されている技術により、待機時間が長いデータほど早く送信されるようにすることができる。しかしながら、各データの待機時間を計測するよりも簡易な構成で、優先度の高低で極端に遅延時間が相違しないように効率的に中継することができる中継装置の実現が望まれる。
With the technique disclosed in
本発明は斯かる事情に鑑みてなされたものであり、中継装置が通信線を介して受信したデータの送信に失敗した場合にはデータを差し戻し、且つ戻す回数に制限を設ける構成により、優先度の高低で極端に遅延時間が相違しないように、より効率的にデータを中継することができる中継装置及び中継方法を提供することを目的とする。 The present invention has been made in view of such circumstances, and when the relay apparatus fails to transmit the data received via the communication line, the data is returned and the number of times of return is limited. It is an object of the present invention to provide a relay device and a relay method capable of relaying data more efficiently so that the delay time does not differ extremely between the heights of the two.
第1発明に係る中継装置は、複数の通信線に接続されており、前記通信線夫々に接続されている外部装置から、優先度が付与されて送信されるデータを他の外部装置へ送信してデータを中継する中継装置において、外部装置から送信されたデータを受信する受信手段と、該受信手段が受信したデータを受信順に記憶する記憶手段と、該記憶手段に記憶されているデータの順序に基づき、該データを抽出して送信を試みる順序を決定する送信制御手段と、該送信制御手段が決定した順序に基づいてデータの送信を試みる送信手段と、該送信手段によるデータの送信に失敗した場合、前記データを前記記憶手段へ戻す手段と、該手段によりデータを戻す都度、前記データに対応付けて戻した回数を計数する手段とを備え、データを前記送信手段により送信する場合、前記データに対応付けられる回数が所定回数以上であるときは、送信が成功するまで送信を試みるようにしてあることを特徴とする。 The relay device according to the first aspect of the present invention is connected to a plurality of communication lines, and transmits data transmitted with priority given from the external devices connected to the respective communication lines to other external devices. Te in the relay apparatus for relaying data, receiving means for receiving data transmitted from the external apparatus, storage means for storing in the order received data said receiving means has received, the data being memorize in the storage means based on the order, and transmission control means for determining the order in which Ru trying to send to extract the data, and transmitting means for attempting transmission of data based on the order in which the transmission control unit is determined, the transmission of data by said transmitting means In the case where the data fails, a means for returning the data to the storage means and a means for counting the number of times the data is returned in association with the data each time the data is returned by the means. When sending Ri, when the number associated with the said data is equal to or greater than a predetermined number of times, characterized in that you have to attempt to send until the transmission is successful.
第2発明に係る中継装置は、前記送信手段によるデータの送信が失敗し、前記データを前記記憶手段へ戻すに際し、前記記憶手段に記憶されているデータの先頭に記憶し直すようにしてあることを特徴とする。 In the relay apparatus according to the second invention, when transmission of data by the transmission unit fails and the data is returned to the storage unit, it is stored again at the head of the data stored in the storage unit. It is characterized by.
第3発明に係る中継装置は、前記送信手段によるデータの送信が連続して所定回数以上失敗した場合に、前記データを前記記憶手段へ戻すようにしてあることを特徴とする。 The relay apparatus according to a third aspect is characterized in that the data is returned to the storage means when the transmission of data by the transmission means fails continuously for a predetermined number of times or more.
第4発明に係る中継装置は、前記送信制御手段は、付与されている優先度が高いデータを優先的に抽出して送信するようにしてあることを特徴とする。 The relay apparatus according to a fourth aspect is characterized in that the transmission control means preferentially extracts and transmits the assigned high priority data.
第5発明に係る中継装置は、優先的に送信されるべき優先データ及び非優先データが区別されたテーブルを記憶しておく手段を備え、前記送信制御手段は、前記テーブルに記憶されている優先データを優先的に抽出して送信するようにしてあることを特徴とする。 A relay device according to a fifth aspect of the present invention comprises means for storing a table in which priority data to be transmitted with priority and non-priority data are distinguished, and the transmission control means has priority stored in the table Data is extracted and transmitted preferentially.
第6発明に係る中継方法は、複数の通信線に接続されており、前記通信線夫々を介して外部装置と接続される中継装置が、前記外部装置から優先度が付与されて送信されるデータを他の外部装置へ送信してデータを中継する方法において、外部装置から送信されたデータを受信し、受信したデータを受信順にバッファに記憶し、前記バッファに記憶されているデータの順序に基づき前記バッファからデータを抽出して送信を試みる順序を決定し、決定した順序に基づいてデータの送信を試み、データの送信に失敗した場合、前記データを前記バッファへ戻し、戻した回数を計数し、前記回数が所定回数以上であるデータは、送信が成功するまで送信を試みることを特徴とする。 A relay method according to a sixth aspect of the present invention is a method in which a relay device connected to a plurality of communication lines and connected to an external device via each of the communication lines is transmitted with priority given from the external device. the a method for relaying data transmitted to other external device, receives data transmitted from the external device, and stored in the buffer the received data in the received order, the order of the data that has been memorize in said buffer wherein to determine the order in which Ru trying to extract and send data from the buffer based, based on the determined order attempts to send data, if it fails to transmit the data, returning the data to the buffer, the number of returned Counting and data whose number is equal to or greater than a predetermined number are tried to be transmitted until transmission is successful.
第1発明及び第6発明では、複数の通信線に接続され、各通信線を介して接続される外部装置間のデータの中継を行なう中継装置が、データを受信順に記憶し、記憶してあるデータの順序に基づいてデータを抽出して送信する順序を決定して送信を試みる。データの送信に失敗した場合には、中継装置は受信したデータを記憶する記憶手段へデータを戻し、記憶手段に記憶されている次の順序の他のデータの送信を試みる。したがって、送信が成功する可能性が高い他のデータの送信までもが後になることが回避され、一のデータの送信が成功するまで中継装置に受信されたデータが滞留し続けることを防止することができる。なお、中継装置はデータの送信に失敗してデータを記憶手段へ戻す都度、回数を計数する。中継装置は、所定回数以上戻したデータは送信に成功するまでデータの送信を試みる。これにより、優先度が比較的低いデータも遅延時間が極端に長くなることなく他の外部装置へ送信される。 In the first invention and the sixth invention, connected to a plurality of communication lines, a relay device for relaying data between the external device connected via a respective communication line, and stores the data in the order of reception, and remembers Based on the order of certain data, the order in which data is extracted and transmitted is determined and transmission is attempted. If the data transmission fails, the relay device returns the data to the storage means for storing the received data, and attempts to transmit other data in the next order stored in the storage means. Therefore, it is avoided that transmission of other data having a high possibility of successful transmission is delayed, and data received by the relay device is prevented from staying until transmission of one data is successful. Can do. The relay device counts the number of times each time data transmission fails and data is returned to the storage means. The relay device attempts to transmit data until the data returned a predetermined number of times or more is successfully transmitted. As a result, data having a relatively low priority is transmitted to another external device without an extremely long delay time.
第2発明では、中継装置がデータの送信に失敗し、記憶手段へデータを戻す際、記憶手段に記憶されているデータの先頭に記憶し直される。これにより、次の送信機会に優先的に抽出されて送信が試みられるので、比較的優先度が低いデータの遅延時間が極端に長くなることを回避することが可能となる。 In the second invention, when the relay apparatus fails to transmit data and returns the data to the storage means, the data is stored again at the head of the data stored in the storage means. As a result, since transmission is attempted with priority extracted at the next transmission opportunity, it is possible to avoid an extremely long delay time of data having a relatively low priority.
第3発明では、中継装置がデータの送信に失敗し、記憶手段へデータを差し戻す際の失敗回数が設定される。つまり、連続してデータの送信に所定回数以上失敗した場合に初めて前記データを記憶手段へ戻す。これにより、比較的優先度が低く、他のデータが優先的に送信される状況下でも、データの送信機会を増やして極端に遅延時間が長くなることを回避することが可能となる。 In the third invention, the number of failures when the relay device fails to transmit data and sends the data back to the storage means is set. That is, the data is returned to the storage means for the first time when data transmission has failed continuously for a predetermined number of times. As a result, even in a situation where the priority is relatively low and other data is preferentially transmitted, it is possible to avoid an extremely long delay time by increasing data transmission opportunities.
第4発明では、中継装置は記憶手段からデータを抽出する際に、より優先度が高いデータを優先的に抽出する。これにより、送信に失敗したデータを記憶手段へ戻して他のデータの送信を試みる場合、送信が成功する可能性が高いデータが先に送信される。一のデータの送信に失敗したために他のデータに送信機会が与えられるにも拘わらず、当該他のデータの送信が更に失敗した場合には、全体的にデータの遅延時間が長くなることが想定される。これに対し、本発明では送信が成功する可能性が高いデータが優先的に送信されることにより、全体として効率的にデータを中継することが可能となる。 In the fourth invention, the relay device preferentially extracts data having a higher priority when extracting data from the storage means. Thereby, when returning the data which failed in transmission to a memory | storage means and trying transmission of other data, data with high possibility that transmission will be successful are transmitted first. When transmission of one data has failed, a transmission opportunity is given to other data, but when the transmission of the other data further fails, it is assumed that the data delay time will become longer overall. Is done. On the other hand, in the present invention, data with high possibility of successful transmission is preferentially transmitted, so that data can be efficiently relayed as a whole.
第5発明では、中継装置は優先データ及び非優先データが区別されたテーブルを記憶している。付与されている優先度のみによらず、当該テーブルを参照してデータの優先度に基づきより柔軟に送信順序を制御することが可能となり、全体として効率的にデータを中継することができる。 In the fifth invention, the relay device stores a table in which priority data and non-priority data are distinguished. Regardless of the assigned priority, the transmission order can be controlled more flexibly based on the priority of data with reference to the table, and data can be efficiently relayed as a whole.
本発明による場合、中継装置にデータが滞留し続けることを回避することができ、優先度が比較的低く、送信順序が後になるデータについても差し戻し回数が多い場合には送信が成功するまで送信が試みられる。これにより、優先度が低いデータの遅延時間が極端に長くなることが回避され、優先度の高低で極端に遅延時間に相違がないように効率的にデータを中継することが可能となる。 According to the present invention, it is possible to avoid the data from continuing to stay in the relay device, and if the priority is relatively low and the data whose transmission order is later is large, the transmission is continued until the transmission is successful. Tried. As a result, the delay time of data with low priority is prevented from becoming extremely long, and data can be efficiently relayed so that there is no significant difference in delay time with high or low priority.
以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。 Hereinafter, the present invention will be specifically described with reference to the drawings showing embodiments thereof.
なお、以下示す実施の形態では、本発明を車載ネットワークを構成する中継装置に適用した場合を例に説明する。 In the embodiment described below, a case where the present invention is applied to a relay device configuring an in-vehicle network will be described as an example.
(実施の形態1)
図1は、実施の形態1における車載ネットワークの構成を示すブロック図である。車載ネットワークは、データを送受信する通信装置であるECU(Electronic Control Unit)1a,1a,…,1b,1b,…と、ECU1a,1a,…,1b,1b,…が夫々接続する通信線2a,2bと、異なる通信線2a及び通信線2b間を接続し、ECU1a,1a,…とECU1b,1b,…との間のデータの送受信を中継する中継装置3とを含んで構成される。
(Embodiment 1)
FIG. 1 is a block diagram showing a configuration of an in-vehicle network in the first embodiment. The in-vehicle network includes ECUs (Electronic Control Units) 1a, 1a,..., 1b, 1b,..., Which are communication devices for transmitting and receiving data, and communication lines 2a, 1a, 1a,. 2b and the
ECU1a,1a,…は通信線2aにバス型に接続され、ECU1b,1b,…は通信線2bにバス型に接続され、CANプロトコルに準じてデータを送受信する。中継装置3も通信線2a及び通信線2bのいずれにもバス型に接続されている。
ECUs 1a, 1a,... Are connected to the communication line 2a in a bus type, and
ECU1a,1a,…,1b,1b,…は測定値、計算値、制御値等の各種物理量の数値情報を含むデータの送信又はエンジン、ブレーキ等のマイクロコンピュータによる制御が可能な装置である。例えばECU1aはABS(Antilock Brake System)として機能し、車輪の回転速度(車輪速)を検知する図示しないセンサと接続されている。ECU1aは、車両の制動時にセンサを介して検知した車輪速に基づいてブレーキを制御すると共に、車輪速の測定値をデータとして通信線2aに接続されている各装置へ送信する。 The ECUs 1a, 1a,..., 1b, 1b,... Are devices that can transmit data including numerical information of various physical quantities such as measured values, calculated values, and control values, or can be controlled by a microcomputer such as an engine or a brake. For example, the ECU 1a functions as an ABS (Antilock Brake System) and is connected to a sensor (not shown) that detects the rotational speed (wheel speed) of the wheel. ECU1a controls a brake based on the wheel speed detected via the sensor at the time of braking of a vehicle, and transmits the measured value of wheel speed to each apparatus connected to the communication line 2a as data.
なお、ECU1a,1a,…,1b,1b,…及び中継装置3間のデータの送受信は、複数のデータがまとめられた「メッセージ(フレーム)」の送受信によって実行される。メッセージは複数のデータの組み合わせ毎に規定されているメッセージID(CAN ID)をヘッダ部に含んで送信される。ECU1a,1a,…,1b,1b,…は、自身の動作によって得られるデータ群をまとめてメッセージとして送信する。
In addition, transmission / reception of data between ECU1a, 1a, ..., 1b, 1b, ... and the
中継装置3は、各構成部の動作を制御するCPU(Central Processing Unit)30と、フラッシュメモリ、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically EPROM)等の不揮発性メモリを利用したROM31と、DRAM(Dynamic Random Access Memory)、SRAM(Static Random Access Memory)等のメモリを利用したRAM32と、CANプロトコルに準拠したネットワークコントローラを利用したCANコントローラ33と、内部バス34とを備える。CPU30、ROM31、RAM32、及びCANコントローラ33はいずれも内部バス34に接続されており相互に通信が可能である。CPU30、ROM31、RAM32、CANコントローラ33、及び内部バス34でマイクロコンピュータを構成してもよい。
The
CPU30は、図示しない車両のオルタネータ、バッテリー等の電力供給装置から電力の供給を受け、ROM31から各種情報をRAM32へ読み出し、CANコントローラ33を制御し、メッセージを送受信する。
The
ROM31には、CPU30が読み出して実行する制御プログラムが記憶されている。また、CPU30が参照する中継IDテーブル35が記憶されている。中継IDテーブル35については後述にて詳細を説明する。
The
RAM32には、CPU30の処理の過程で発生する情報、又はセンサ(図示せず)から入力される信号が表わす測定値等が一時的に記憶される。
The
CANコントローラ33は、通信制御部36と、バッファ37と、第1送受信部38と、第2送受信部39とを備え、CANプロトコルに準じ通信線2a,2bを介した通信を実現する。
The
通信制御部36は、第1送受信部38又は第2送受信部39によりメッセージを受信した場合にこれをCPU30へ通知する。そして通信制御部36は、受信したメッセージを受信順にバッファ37に記憶する。通信制御部36は、CPU30からの指示に基づいてメッセージを中継する。詳細には、通信制御部36はCPU30からの指示に基づき、バッファ37に記憶されているメッセージを抽出し、中継先のECU1a,1a,…,1b,1b,…が接続されている通信線2a,2bと接続する第1送受信部38又は第2送受信部39へ抽出したメッセージを受け渡して送信されるようにする。つまり、通信制御部36がメッセージを抽出する順序で、送信が試みられる順序が決定される。
When the
バッファ37は、SRAM、DRAM等のRAMを利用し、受信したメッセージを一時的に記憶する。また、バッファ37は中継するメッセージを送信待ちのために記憶する送信キューとしても用いられる。送信キューは、第1送受信部38及び第2送受信部39夫々に対応付けられており、第1送受信部38及び第2送受信部39のいずれから送信するために記憶されているメッセージであるかを判別することが可能に区別されている。なお、バッファ37の記憶容量が少なく、第1送受信部38及び第2送受信部39夫々に対応付けて夫々複数のメッセージを記憶できない場合には、RAM32に送信キューとして使用する記憶領域を確保する。この場合、CPU30の処理により、複数の送受信部夫々に対応する複数のキューを区別し、CPU30が夫々のキューから、対応する送受信部により送信させるべきメッセージを抽出し、通信制御部36へ渡す構成とする。
The
第1送受信部38及び第2送受信部39はフィルタ回路、AD変換回路等を含み、通信線2a,2bにおける差動電圧を検知、出力することによってメッセージの送受信を実現する。通信制御部36は、第1送受信部38及び第2送受信部39により通信線2a,2bにおける通信状況をモニタし、自身がメッセージを送信することが可能であるか否かを判断し、送信が可能である場合にメッセージを送信する。具体的には、通信制御部36は、通信線2aに接続されているECU1a,1a,…がメッセージを送信していない間に第1送受信部38によってメッセージを送信することができる。一方、通信線2aに接続されているECU1a,1a,…がメッセージを送信している間は、通信制御部36は第1送受信部38により、送信されているメッセージを受信する。通信線2aに接続されているECU1a,1a,…及び中継装置3のいずれか複数から同時にデータの送信が開始された場合、CANプロトコルに基づき調停によっていずれかが優先的にメッセージを送信するようにしてある。詳細には、以下のようにしてメッセージの優先/非優先が決定される。メッセージは0(ゼロ)ビットと1ビットとで表わされるデジタル信号により送受信される。メッセージの先頭のヘッダに含まれるメッセージIDがアービトレーションフィールドとして利用され、アービトレーションフィールド内のビット列により通信線2aにおける調停が行なわれる。CANプロトコルでは、0(ゼロ)ビットがより長く続くアービトレーションフィールドを有するメッセージの送信が優先される。つまり、メッセージIDを数値として解釈した場合に、より数値が小さいメッセージの優先度が高い。そして優先されるメッセージを送信するECU1a、又は中継装置3aが調停に勝つ。通信制御部36は、通信線2aにおける調停に勝った場合のみに、第1送受信部38によって送信を継続することができる。通信制御部36は調停に負けた場合、第1送受信部38による送信を停止し、他の送信を継続するECU1aから送信されるメッセージの受信に切り替え、他のECU1aと同時にメッセージを受信する。
The first transmission /
CPU30は、CANコントローラ33の第1送受信部38又は第2送受信部39により受信したメッセージを、ROM31に記憶してある中継IDテーブル35に基づき通信制御部36によりバッファ37の送信キューに適宜記憶させて送信されるようにすることにより、メッセージの中継を実現する。
The
図2は、中継装置3のROM31に記憶されている中継IDテーブル35の内容例を示す説明図である。中継IDテーブル35には、メッセージが夫々メッセージIDで区別して記憶されている。また、メッセージの送信元のECU1a,1a,…,1b,1b,…が接続されている通信線2a,2bと、中継先のECU1a,1a,…,1b,1b,…が接続されている通信線2a,2bとを区別する情報がメッセージIDに対応付けて記憶されている。具体的には、「0」は第1送受信部38が接続されている通信線2aを、「1」は第2送受信部39が接続されている通信線2bを表わす。更に、メッセージ夫々のメッセージIDで決まる優先度とは別の優先度がメッセージIDに対応付けて記憶されている。具体的には、「1」は優先的に送信されるべきメッセージであり、「0」は非優先的メッセージであることを表わす。優先度は「1」よりも大きい自然数によって表わされ、「1」が最も優先度が高く、数値が大きいほど優先度が低いと設定し、且つ「0」は非優先的メッセージであることを表わす構成としてもよい。
FIG. 2 is an explanatory diagram showing an example of the contents of the relay ID table 35 stored in the
図2の説明図の内容例では、メッセージIDが「100」であるメッセージは、通信線2bに接続されているECU1b,1b,…のいずれかを送信元とし、通信線2aに接続されているECU1a,1a,…のいずれかを中継先とする。そしてメッセージIDが「100」であるメッセージは優先的に送信されるべきメッセージである。同様に、メッセージIDが「500」であるメッセージは、通信線2aに接続されているECU1a,1a,…のいずれかを送信元とし、通信線2bに接続されているECU1b,1b,…のいずれかを中継先とする。そしてメッセージIDが「500」であるメッセージは非優先的メッセージである。
In the content example of the explanatory diagram of FIG. 2, the message with the message ID “100” is connected to the communication line 2a with any one of the
CPU30は、第1送受信部38からメッセージを受信したことを通信制御部36からの通知により検知した場合、ROM31の中継IDテーブル35を参照し、受信したメッセージのメッセージIDに基づいて中継先のECU1b,1b,…が接続されている通信線2bを特定する。そしてCPU30は、通信制御部36により、特定した通信線2bに接続している第2送受信部39からメッセージが送信されるように、バッファ37の第2送受信部39用の送信キューへメッセージを記憶する。CPU30は、通信線2aに接続されているECU1a,1a,…のみが使用するメッセージなど、中継IDテーブル35に記憶されていないメッセージについては中継の必要がないと判断し、通信制御部36によりメッセージを破棄してもよい。
When the
また、CPU30は、第1送受信部38からメッセージを受信したことを通信制御部36からの通知により検知した場合、ROM31の中継IDテーブル35を参照し、受信したメッセージのメッセージIDに基づいてメッセージの優先度を認識し、通信制御部36へ通知する。これにより、優先度が高いメッセージを通信制御部36により送信キューの先頭に記憶させるなどの処理ができる。このように、中継IDテーブル35に、メッセージ毎のメッセージIDで決定される優先度とは別の優先度を定めて記憶しておくことにより、メッセージIDによらない優先度によって柔軟に送信順序を制御することができる。
Further, when the
図3は、実施の形態1における中継装置3のCANコントローラ33によるメッセージの中継処理の概要を示す説明図である。図3では、通信線2aに接続されているECU1a,1a,…から第1送受信部38により受信したメッセージを第2送受信部39により中継する際の処理を概念的に示す。図3では、第1送受信部38、バッファ37及び第2送受信部39を送受信の流れに沿って並べて示している。通信制御部36が第2送受信部39により受信したメッセージを第2送受信部38により送信する場合も上述の第2送受信部39により送信する場合と同様である。
FIG. 3 is an explanatory diagram showing an outline of message relay processing by the
実施の形態1では、バッファ37に確保されている第2送受信部39用の送信キューは第1キュー及び第2キューの2つのキューからなる。なお、キューの数は2に限られない。キューは夫々FIFO(First In First Out)に基づき利用され、図の右側を先頭として受信順にキューにメッセージが記憶され、先頭からメッセージが抽出される。
In the first embodiment, the transmission queue for the second transmission /
通信制御部36は、第1送受信部38により受信したメッセージを第1キュー及び第2キューに振り分けて記憶する。通信制御部36は、メッセージIDの数値が所定値(例えば、「600」)以下の比較的優先度が高いメッセージを第1キューに記憶し、数値が所定値を超過する比較的優先度が低いメッセージを第2キューに記憶して振り分ける。又は、ROM31の中継IDテーブル35を参照したCPU30からの受信メッセージの記憶指示に、優先度(「0」又は「1」)の情報が含まれる構成とし、優先度が「1」であるメッセージについては第1キューに記憶されるように通信制御部36が処理を行なうようにしてもよい。更に第3及び第4のキューがバッファ37に確保されている場合、通信制御部36は、CPU30からの優先度の情報に基づき、優先度が「1」であるメッセージは第1キュー、優先度が「2」であるメッセージは第2キュー、優先度が「3」であるメッセージは第3キュー、優先度が「0」であるメッセージは第4キューに振り分けるなどの制御を行なうようにしてもよい。
The
そして通信制御部36は、第1キュー及び第2キューから交互、又は優先度に従ってメッセージを抽出し、第2送受信部39から送信されるべく第2送受信部39へ与える。通信制御部36は、第1キュー及び第2キューからメッセージを抽出する際に、予め設定された比率で第1キュー及び第2キューのいずれかかからメッセージを抽出するようにしてもよい。例えば、通信制御部36は、2:1の比率で第1キュー及び第2キューからメッセージを抽出する。つまり、通信制御部36は、第1キューから連続して2つのメッセージを抽出後に第2キューから1つのメッセージを抽出し、次は再度第1キューから2つのメッセージを抽出する。なお、中継装置3では、通信制御部36がバッファ37に確保されている複数のキューからのメッセージの抽出比率(例えば、2つのキューからX:Yの比率で抽出、3つのキューからX:Y:Zの比率で抽出するなど)を、ROM31又はRAM32に書き込まれている設定ファイルを書き換えておくなどの構成により、適宜設定することが可能に構成されている。また、通信制御部36がメッセージの抽出を優先度に従って行なう場合は、通信制御部36は、第1キュー及び第2キュー夫々の先頭に記憶されているメッセージの内の、優先度が高いメッセージを先に抽出する。第2送受信部39はメッセージ一個分のメモリを内蔵しており、メモリに格納されているメッセージを送信可能なタイミングで送信するようにしてある。通信制御部36は、抽出したメッセージを第2送受信部39のメモリへ受け渡す。
Then, the
実施の形態1におけるCANコントローラ33の通信制御部36は、第2送受信部39によりメッセージの送信を開始して調停に負けた場合、第2送受信部39のメモリにあるメッセージを調停に勝つまで保持することなく、一旦バッファ37の送信キューに差し戻す処理を行なう。以下に、CANコントローラ33による送信制御処理をフローチャートを参照して説明する。
The
図4は、実施の形態1における中継装置3がCANコントローラ33によりメッセージを送信する処理手順の一例を示すフローチャートである。なお、以下に説明する処理手順は、第2送受信部39によりメッセージを送信する場合を示す。
FIG. 4 is a flowchart illustrating an example of a processing procedure in which the
CPU30からの送信指示により、通信制御部36は第2送受信部39に対応するバッファ37の送信キューからメッセージを抽出する(ステップS1)。通信制御部36は第1キュー及び第2キューの夫々先頭のメッセージを交互に抽出する。
In response to a transmission instruction from the
CPU30の指示に基づいて通信制御部36が抽出したメッセージの送信を第2送受信部39のメモリに受け渡すことにより、第2送受信部39はメッセージの送信を開始する(ステップS2)。通信制御部36は第2送受信部39により通信線2bにおける通信状況をモニタして調停に勝ったか否かを判断する(ステップS3)。
The second transmission /
通信制御部36は調停に勝ったと判断した場合(S3:YES)、抽出したメッセージの送信を継続し(ステップS4)、送信を完了して処理を終了する。CPU30は、送信を完了したことを通信制御部36からの通知により検知する。CPU30は、通信制御部36により次のメッセージを送信するために再度ステップS1から処理を実行する。
If the
通信制御部36が調停に負けたと判断した場合(S3:NO)、CPU30は送信に失敗したことを通信制御部36からの通知により検知し、送信を試みたメッセージの差し戻し回数は所定回数(例えば、3回)以上であるか否かを判断する(ステップS5)。通信制御部36は、差し戻し回数が所定回数未満であると判断した場合(S5:NO)、送信キュー(第1キュー又は第2キュー)の先頭から次のメッセージを抽出し(ステップS6)、ステップS2で送信を試みたメッセージを送信キューへ差し戻す(ステップS7)。このとき通信制御部36は、メッセージを送信キューの先頭へ記憶し直す。
When it is determined that the
次に、通信制御部36は差し戻したメッセージに対応付けられる差し戻し回数を加算し(ステップS8)、処理をステップS2へ戻してステップS6で抽出したメッセージの送信を開始し(S2)、以下のステップS3からステップS8までの処理を繰り返す。ステップS8では、CPU30が通信制御部36から差し戻し通知を受け付け、メッセージに対応付けて差し戻し回数をRAM32に記憶するようにしてもよいし、通信制御部36が内蔵する図示しないメモリに差し戻し回数を記憶するようにしてもよい。
Next, the
通信制御部36は、送信キューの先頭に差し戻されているメッセージを抽出し(S1)、当該メッセージの送信を開始し(S2)、調停に負けたと判断した場合(S3:NO)、且つ差し戻し回数が所定回数以上であると判断したときは(S5:YES)、処理をステップS2へ戻す。つまり、通信制御部36は、所定回数以上差し戻されたメッセージはそれ以上差し戻さず、調停に勝つまでメッセージの送信を試みる。
The
これにより、調停に負ける可能性が高い優先度の低いメッセージが第2送受信部39のメモリに滞留し続けて他のメッセージの送信が遅延することを回避することができる。また、差し戻し回数が所定回数以上である場合には他のメッセージが送信キューに待機していても、送信が成功するまで送信を試みることにより、優先度の低いメッセージの遅延時間が極端に長くなることを回避することができる。
As a result, it is possible to avoid delaying transmission of other messages due to low-priority messages that have a high possibility of losing arbitration and stay in the memory of the second transmission /
通信制御部36が第1送受信部38によりメッセージを送信する場合も、図4のフローチャートに示した処理手順と同様であるので詳細な説明を省略する。
The case where the
図5は、実施の形態1における中継装置3により中継されるメッセージの順序の例を示す説明図である。図5の説明図では、第1送受信部38により受信されるメッセージが第2送受信部39から送信されてECU1b,1b,…へ中継される場合の例を示す。図5の説明図に示すように、ある時点で第1送受信部38により受信されたメッセージID「500」、「400」、「300」、「200」、「100」、及び「900」のメッセージが既にバッファ37の送信キューに受信順に記憶されている。また、第2送受信部39によりメッセージが送信される間に、第1送受信部38により新たにメッセージIDが「800」及び「700」であるメッセージが受信される。
FIG. 5 is an explanatory diagram illustrating an example of the order of messages relayed by the
なお、図5に示す説明図において第2送受信部39のブロックの下方には、第2送受信部39により送信が試みられるメッセージの順序が示されている。上から下へ順にメッセージの送信が試みられ、丸カッコ内に記載されているメッセージIDのメッセージは差し戻されたことを示している。また、中継装置3のブロック外に、第2送受信部39により実際に送信されたメッセージの順序が示されている。ここでも上から下へ順にメッセージが送信されたことを示している。
In the explanatory diagram shown in FIG. 5, the order of messages to be transmitted by the second transmitter /
通信制御部36は、バッファ37の送信キューの第1キュー及び第2キューから交互にメッセージを抽出する。まず通信制御部36は、第1キューからメッセージID「500」のメッセージを抽出して第2送受信部39へ渡し、第2送受信部39はメッセージの送信を試み、成功する。これにより、メッセージID「500」のメッセージが実際に通信線2bを介してECU1b,1b,…へ送信される。次に通信制御部36は第2キューからメッセージID「900」のメッセージを抽出して第2送受信部39により送信を試みるが、調停に勝つことができず送信に失敗する。この場合通信制御部36はメッセージID「900」のメッセージを第2キューへ差し戻す。そして通信制御部36は、第1キューからメッセージID「400」のメッセージを抽出して第2送受信部39により送信を試み、送信に成功する。
The
図5の説明図に示す例では、一回目にメッセージID「900」のメッセージを抽出して第2送受信部39により送信を試みている間に、第1送受信部38によりメッセージID「800」のメッセージを受信し、第2キューに記憶している。したがって、次に通信制御部36は第2キューからメッセージID「800」を抽出して送信を試み、送信に成功する。
In the example shown in the explanatory diagram of FIG. 5, while the message with the message ID “900” is extracted for the first time and the transmission with the second transmission /
以後、通信制御部36は第1キュー及び第2キューから交互に、メッセージID「300」、「900」、「200」、「900」、「100」の順にメッセージを抽出して送信を試みる。これらの内、メッセージID「900」のメッセージの送信は3回調停に勝てず、メッセージID「900」のメッセージは毎回第2キューに戻されている。そして、差し戻し回数が所定回数(3回)以上となった次の機会には、メッセージID「900」のメッセージは差し戻されずに調停に勝つまで送信が試みられ、成功している。なお、メッセージID「700」のメッセージは4回目のメッセージID「900」の送信中に受信されている。
Thereafter, the
結果として、図5の説明図の右端に示すように、メッセージID「500」、「400」、「800」、「300」、「200」、「100」、「900」、「700」の順にメッセージがECU1b,1b,…へ送信される。
As a result, as shown at the right end of the explanatory diagram of FIG. 5, message IDs “500”, “400”, “800”, “300”, “200”, “100”, “900”, “700” are sequentially arranged. A message is transmitted to the
次に、比較のために差し戻しが行なわれずに中継されるメッセージの例を示す。図6は、差し戻しされずに中継されるメッセージの順序の例を示す説明図である。図6に示す説明図でも図5に示した場合と同様に、ある時点でッセージIDが「500」、「400」、「300」、「200」、「100」、及び「900」であるメッセージが二つの第1キュー及び第2キューに記憶されている。また、メッセージ送信中にメッセージID「800」及び「700」のメッセージが受信される。 Next, an example of a message relayed without being sent back for comparison is shown. FIG. 6 is an explanatory diagram illustrating an example of the order of messages relayed without being sent back. In the explanatory diagram shown in FIG. 6, as in the case shown in FIG. 5, the messages whose message IDs are “500”, “400”, “300”, “200”, “100”, and “900” at a certain point in time. Are stored in the two first and second queues. Also, messages with message IDs “800” and “700” are received during message transmission.
図6の説明図に示す例でも、第1キュー及び第2キューから交互にメッセージが抽出されて送信が試みられる。したがって第1キューからメッセージID「500」のメッセージが最初に抽出されて送信が試みられ、送信に成功する。しかしながら、次に第2キューからメッセージID「900」のメッセージが抽出されて送信が試みられた場合、調停に勝てずに送信に失敗する。図6の説明図に示す例では、送信に失敗したメッセージは差し戻されない。したがって、メッセージID「900」のメッセージの送信は、成功するまで試みられ続け、他のメッセージID「400」、「300」、「200」、「100」のメッセージは送信キューに滞留し続ける。図6の説明図に示した例では、6回目の試行でメッセージID「900」のメッセージの送信が成功する。それまでの5回の試行ではいずれも他のECU1b,1b,…から送信されるメッセージが優先されるので、少なくとも5つのメッセージの受信に掛かる待機時間分だけ、他のメッセージID「400」、「300」、「200」、「100」のメッセージは送信キューに滞留し続ける。
In the example shown in the explanatory diagram of FIG. 6, messages are alternately extracted from the first queue and the second queue and transmission is attempted. Therefore, the message with the message ID “500” is first extracted from the first queue and transmission is attempted, and transmission is successful. However, when a message with the message ID “900” is next extracted from the second queue and transmission is attempted, transmission fails without winning arbitration. In the example shown in the explanatory diagram of FIG. 6, a message that failed to be transmitted is not sent back. Therefore, the transmission of the message with the message ID “900” continues to be attempted until successful, and the messages with the other message IDs “400”, “300”, “200”, and “100” continue to stay in the transmission queue. In the example shown in the explanatory diagram of FIG. 6, the message ID “900” is successfully transmitted in the sixth attempt. Since the messages transmitted from the
これに対し、図5の説明図に示した例ではメッセージID「400」、「300」、「200」等のメッセージは先に送信されており、送信キューに滞留し続けることはない。このように、差し戻し処理を行なうことによって優先度が比較的高いメッセージが無駄に送信キューに滞留し続けることを回避することができる。なお、差し戻し処理によって優先度が低いメッセージの送信は後になるが、差し戻し回数に制限を設けることによって、中継装置3の第1送受信部38により受信されてから、第2送受信部39により送信が完了して中継がされるまでの遅延時間が極端に長くなることを回避することができる。差し戻し回数が所定回数以上となったメッセージについては送信が成功するまで送信が試みられるので、その分だけ他のメッセージの遅延時間が伸びる可能性があるが、本発明によって優先度の高低で極端に遅延時間に相違がないようにすることができ、全体として遅延時間が短縮されることが期待できる。
On the other hand, in the example shown in the explanatory diagram of FIG. 5, messages with message IDs “400”, “300”, “200”, etc. are transmitted first, and do not stay in the transmission queue. In this way, by performing the return processing, it is possible to avoid a message having a relatively high priority from continuing to stay in the transmission queue in vain. Note that the low-priority message will be transmitted later by the return processing, but by setting a limit on the number of return times, the transmission is completed by the second transmission /
(実施の形態2)
実施の形態1では、CANコントローラ33の通信制御部36は、差し戻し回数が所定回数未満である間は調停に負けたと判断する都度、差し戻す処理を行なう構成とした。これに対し実施の形態2では、連続して所定回数以上調停に負けたと判断した場合に差し戻す処理を行なう構成とする。
(Embodiment 2)
In the first embodiment, the
実施の形態2における車載ネットワークの構成は、通信制御部36の処理の詳細が相違する以外は実施の形態1と同様である。実施の形態1と同一の符号を付して車載ネットワークの各構成部の詳細な説明を省略し、以下に相違点である通信制御部36の処理の詳細を説明する。
The configuration of the in-vehicle network in the second embodiment is the same as that in the first embodiment except that the details of the processing of the
図7は、実施の形態2における中継装置3がCANコントローラ33によりメッセージを送信する処理手順の一例を示すフローチャートである。なお、以下に説明する処理手順は、第2送受信部39によりメッセージを送信する場合を示す。そして、以下に説明する処理手順の内、実施の形態1の図4に示したフローチャートと共通する処理手順については同一のステップ番号を付して詳細な説明を省略する。
FIG. 7 is a flowchart illustrating an example of a processing procedure in which the
通信制御部36は、抽出したメッセージの送信を開始し(S2)、第2送受信部39により通信線2bにおける通信状況をモニタして調停に勝ったか否かを判断する(S3)。通信制御部36は調停に負けたと判断した場合(S3:NO)、連続して調停に負けた調停負け回数が第2所定回数(例えば、3回)以内であるか否かを判断する(ステップS9)。通信制御部36は、調停負け回数が第2所定回数以内であると判断した場合(S9:YES)、処理をステップS2へ戻し、調停に勝った他のECU1b,1b,…による送信が完了するまで待機し、再度メッセージの送信を開始する(S2)。
The
通信制御部36は、更にステップS3で調停に負けたと判断し(S3:NO)、調停負け回数が第2所定回数を超えたと判断した場合(S9:NO)、CPU30は送信に失敗したことを通信制御部36からの通知により検知し、メッセージの差し戻し回数は所定回数以上であるか否かを判断する(S5)。
The
ステップS9の処理により、調停に負ける可能性が高い優先度の低いメッセージの送信機会が増加する。これにより、差し戻し処理が行なわれる構成によって比較的優先度が高いメッセージが優先的に送信されてメッセージの滞留が回避されつつ、比較的優先度の低いメッセージの遅延時間が極端に長くなることを回避することができる。 By the process of step S9, the transmission opportunities of low priority messages that are highly likely to lose arbitration increase. As a result, a message with a relatively high priority is transmitted preferentially by the configuration in which the return process is performed, so that message retention is avoided, and the delay time of a relatively low priority message is prevented from becoming extremely long. can do.
通信制御部36が第1送受信部38によりメッセージを送信する場合も、図7のフローチャートに示した処理手順と同様であるので詳細な説明を省略する。
The case where the
図8は、実施の形態2における中継装置3により中継されるメッセージの順序の例を示す説明図である。図8の説明図は、実施の形態1における図5の説明図と同様の例を示しており、第2送受信部39のブロックの下方に示されている送信が試みられる順序、及び、中継装置3外に示されている実際に送信されたメッセージの順序のみが異なる。
FIG. 8 is an explanatory diagram illustrating an example of the order of messages relayed by the
図8の説明図に示すように実施の形態2では、通信制御部36はバッファ37の第2キューからメッセージID「900」のメッセージを抽出して第2送受信部39により送信を試みて調停に負けた場合も、直ぐには第2キューへ戻さない。通信制御部36は、メッセージID「900」のメッセージの送信を試み続け、連続して3回以上調停で負けた場合にメッセージを差し戻す。これにより、図8の説明図に示すように実施の形態2では、メッセージID「900」のメッセージは、1回差し戻されるものの2回目に抽出された際に、3回目の試行で調停に勝ち、送信に成功している。
As shown in the explanatory diagram of FIG. 8, in the second embodiment, the
結果として、図8の説明図の右端に示すように、メッセージID「500」、「400」、「800」、「300」、「900」、「200」、「700」、「100」の順にメッセージがECU1b,1b,…へ送信される。図5の説明図に示した例と比較して、優先度が低いメッセージID「900」のメッセージが、メッセージID「200」及び「100」のメッセージよりも先に送信されている。
As a result, as shown at the right end of the explanatory diagram of FIG. 8, the message IDs “500”, “400”, “800”, “300”, “900”, “200”, “700”, “100” are arranged in this order. A message is transmitted to the
このように、差し戻し処理によってメッセージが送信キューに滞留し続けることを回避することができると共に、差し戻し回数に制限を設けて優先度が低いメッセージの遅延時間が極端に長くなることを回避することができ、更に、優先度が低いメッセージの送信機会を増加させることによって優先度が高いメッセージの遅延時間との差を更に短縮させることができる。これにより、優先度の高低で極端に遅延時間に相違がないように効率的にデータを中継することが可能となる。 In this way, it is possible to avoid the message from staying in the transmission queue due to the return processing, and to set a limit on the number of return times to prevent the delay time of a low priority message from becoming extremely long. In addition, by increasing the transmission opportunities of messages with low priority, the difference from the delay time of messages with high priority can be further shortened. This makes it possible to relay data efficiently so that the priority is high and the delay time is not significantly different.
(実施の形態3)
実施の形態1では、CANコントローラ33の通信制御部36は、バッファ37の送信キューに記憶されているメッセージを記憶されている順(受信順)に抽出する構成とした。これに対し実施の形態3では、通信制御部36が送信キューからメッセージを抽出するに際し、より優先度が高いメッセージを抽出する構成とする。
(Embodiment 3)
In the first embodiment, the
つまり、実施の形態3におけるバッファ37の送信キューはFIFOで利用されない点が、実施の形態2と相違する。実施の形態3における通信制御部36は、実施の形態1と同様に第1送受信部38に受信して中継の必要があるメッセージを受信順にバッファ37の送信キューに記憶する。そして通信制御部36はメッセージを送信キューから抽出するに際し、送信キューに記憶されているメッセージの内、最も優先度が高いメッセージを抽出する。なお、送信キューに記憶されている全メッセージの内の最も優先度が高いメッセージではなく、先頭から所定数のメッセージの内で最も優先度が高いメッセージを抽出するようにしてもよい。
That is, the transmission queue of the
通信制御部36は、メッセージの優先度の高さをメッセージIDが表わす数値の大小に基づいて判断する。通信制御部36は更に、実施の形態2の図2に示した中継IDテーブル35に含まれる優先度に基づいて判断してもよい。
The
実施の形態3における車載ネットワークの構成は、通信制御部36の処理の詳細が相違する以外は実施の形態1と同様である。実施の形態1と同一の符号を付して車載ネットワークの各構成部の詳細な説明を省略し、以下に相違点である通信制御部36の処理の詳細を説明する。
The configuration of the in-vehicle network in the third embodiment is the same as that in the first embodiment except that the details of the processing of the
図9は、実施の形態3における中継装置3がCANコントローラ33によりメッセージを送信する処理手順の一例を示すフローチャートである。なお、以下に説明する処理手順は、第2送受信部39によりメッセージを送信する場合を示す。そして、以下に説明する処理手順の内、実施の形態1の図4に示したフローチャートと共通する処理手順については同一のステップ番号を付して詳細な説明を省略する。
FIG. 9 is a flowchart illustrating an example of a processing procedure in which the
CPU30からの送信指示により、通信制御部36は第2送受信部39に対応するバッファ37の送信キューから、優先度が高いメッセージを抽出する(ステップS10)。通信制御部36は第1キュー及び第2キューに記憶されているメッセージの内の、夫々最も優先度が高いメッセージを交互に抽出する。
In response to the transmission instruction from the
そして、通信制御部36は、抽出したメッセージの送信に際し調停で負け(S3:NO)、差し戻し回数が所定回数未満であると判断した場合(S5:NO)、送信キュー(第1キュー又は第2キュー)から次に優先度が高いメッセージを抽出し(ステップS11)、ステップS2で送信を試みたメッセージを送信キューへ差し戻す(S7)。
When the
ステップS10及びステップS11の処理により、調停に勝つ可能性が高い優先度の高いメッセージが優先的に送信される。これにより試行の回数が減少し、且つ差し戻しの回数が減少することが期待される。一のメッセージの送信に失敗して他のメッセージに送信機会が与えられるにも拘わらず、当該他のメッセージの送信が更に失敗した場合には、全体的に遅延時間が長くなる。しかしながら、より成功率が高いメッセージの送信が優先的に試みられることにより、効率的にメッセージの送信が行なわれることが期待できる。 Through the processing of step S10 and step S11, a message having a high priority that is likely to win arbitration is preferentially transmitted. This is expected to reduce the number of trials and the number of retractions. If transmission of one message fails and another message is given a transmission opportunity, but transmission of the other message further fails, the overall delay time becomes longer. However, it can be expected that the message is efficiently transmitted by preferentially attempting to transmit a message having a higher success rate.
通信制御部36が第1送受信部38によりメッセージを送信する場合も、図9のフローチャートに示した処理手順と同様であるので詳細な説明を省略する。
The case where the
図10は、実施の形態3における中継装置3により中継されるメッセージの順序の例を示す説明図である。図10の説明図では、第1送受信部38により受信されるメッセージが第2送受信部39から送信されてECU1b,1b,…へ中継される場合の例を示す。図10の説明図に示すように、ある時点で第1送受信部38により受信されたメッセージID「500」、「400」、「300」、「200」、「100」、「900」、「800」、「700」及び「600」のメッセージが既にバッファ37の送信キューに受信順に記憶されている。
FIG. 10 is an explanatory diagram illustrating an example of the order of messages relayed by the
図10に示す説明図において第2送受信部39のブロックの下方には、第2送受信部39により送信が試みられるメッセージの順序が示されている。上から下へ順にメッセージの送信が試みられ、丸カッコ内に記載されているメッセージIDのメッセージは差し戻されたことを示している。また、中継装置3のブロック外に、第2送受信部39により実際に送信されたメッセージの順序が示されている。ここでも上から下へ順にメッセージが送信されたことを示している。
In the explanatory diagram shown in FIG. 10, the order of messages to be transmitted by the
通信制御部36は、バッファ37の送信キューの第1キュー及び第2キューから交互にメッセージを抽出する。まず通信制御部36は、第1キューに記憶されているメッセージの内の最も優先度が高いメッセージID「100」のメッセージを抽出して第2送受信部39へ渡し、第2送受信部39はメッセージの送信を試み、成功する。これにより、メッセージID「100」のメッセージが実際に通信線2bを介してECU1b,1b,…へ送信される。次に通信制御部36は第2キューに記憶されているメッセージの内の最も優先度が高いメッセージID「600」のメッセージを抽出して第2送受信部39により送信を試みるが、調停に勝つことができず送信に失敗する。この場合通信制御部36はメッセージID「600」のメッセージを第2キューへ差し戻す。そして通信制御部36は、第1キューから次に優先度が高いメッセージID「200」のメッセージを抽出して第2送受信部39により送信を試み、送信に成功する。
The
以後、通信制御部36は第1キュー及び第2キューから交互に、最も優先度が高いメッセージを抽出する。具体的には、メッセージID「600」、「300」、「600」、「400」、…の順にメッセージを抽出して送信を試みる。これらの内、メッセージID「600」のメッセージの送信は2回調停に勝てず、全部で3回第2キューに戻されている。したがって、差し戻し回数が所定回数(3回)以上となった次の機会には、メッセージID「600」のメッセージは差し戻されずに調停に勝つまで送信が試みられ、成功している。
Thereafter, the
結果として、図10の説明図の右端に示すように、メッセージID「100」、「200」、「300」、「400」、「600」、「500」、「700」、「800」、「900」の順にメッセージがECU1b,1b,…へ送信される。
As a result, message IDs “100”, “200”, “300”, “400”, “600”, “500”, “700”, “800”, “800”, “ Messages are transmitted to the
このように、差し戻し処理によってメッセージが送信キューに滞留し続けることを回避することができると共に、差し戻し回数に制限を設けて優先度が低いメッセージの遅延時間が極端に長くなることを回避することができ、更に、優先度が高いメッセージを優先的に送信することによって送信の失敗回数を減少させ、全体として効率的にデータを中継することが可能となる。 In this way, it is possible to avoid the message from staying in the transmission queue due to the return processing, and to set a limit on the number of return times to prevent the delay time of a low priority message from becoming extremely long. In addition, it is possible to reduce the number of transmission failures by preferentially transmitting a message having a high priority, and to relay data efficiently as a whole.
実施の形態1乃至3では、いずれもCPU30がROM31に記憶されている制御プログラムを読み出すことにより中継装置3としての動作を実現する構成とした。しかしながら、本発明はこれに限らず、ソフトウェア的に実現されたCPU30による処理をハードウェア化し、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)を用いて構成される中継装置としてもよい。この場合、ASIC又はFPGAは、例えばCPU30がCANコントローラ33にて受信したメッセージを受信順にバッファ37に記憶させる処理を行なうバッファ記憶処理回路、設定された抽出比率に基づきバッファ37内に確保されている送信キューからメッセージを順に抽出するメッセージ抽出回路、差し戻し回数が所定回数以上であるか否かを判定する差戻回数判定回路等の図4、図7、図9の各処理手順を実現する回路を含んで構成される。
In the first to third embodiments, the
なお、上述のように開示された実施の形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 It should be understood that the embodiments disclosed above are illustrative in all respects and are not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the meanings described above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.
1a,1a,…,1b,1b,… ECU
2a,2b 通信線
3 中継装置
30 CPU
31 ROM
35 中継IDテーブル
33 CANコントローラ
36 通信制御部
37 バッファ
38 第1送受信部
39 第2送受信部
1a, 1a, ..., 1b, 1b, ... ECU
2a,
31 ROM
35 relay ID table 33
Claims (6)
外部装置から送信されたデータを受信する受信手段と、
該受信手段が受信したデータを受信順に記憶する記憶手段と、
該記憶手段に記憶されているデータの順序に基づき、該データを抽出して送信を試みる順序を決定する送信制御手段と、
該送信制御手段が決定した順序に基づいてデータの送信を試みる送信手段と、
該送信手段によるデータの送信に失敗した場合、前記データを前記記憶手段へ戻す手段と、
該手段によりデータを戻す都度、前記データに対応付けて戻した回数を計数する手段と
を備え、
データを前記送信手段により送信する場合、前記データに対応付けられる回数が所定回数以上であるときは、送信が成功するまで送信を試みるようにしてあること
を特徴とする中継装置。 In a relay device that is connected to a plurality of communication lines and transmits data to be transmitted with priority given from other external devices connected to the respective communication lines to other external devices,
Receiving means for receiving data transmitted from an external device;
Storage means for storing data received by the receiving means in the order of reception;
Based on the sequence of data being memorize in the storage unit, a transmission control means for determining the order in which Ru trying to send to extract the data,
Transmission means for attempting to transmit data based on the order determined by the transmission control means;
Means for returning the data to the storage means if transmission of the data by the transmission means fails;
Each time data is returned by the means, means for counting the number of times returned in association with the data,
When the data is transmitted by the transmission unit, if the number of times associated with the data is equal to or greater than a predetermined number, transmission is attempted until the transmission is successful.
を特徴とする請求項1に記載の中継装置。 The data transmission by the transmission means fails, and when returning the data to the storage means, the data is stored again at the head of the data stored in the storage means. Relay device.
を特徴とする請求項1又は2に記載の中継装置。 The relay apparatus according to claim 1 or 2, wherein the data is returned to the storage means when transmission of data by the transmission means has failed continuously for a predetermined number of times or more.
を特徴とする請求項1乃至3のいずれかに記載の中継装置。 The relay apparatus according to any one of claims 1 to 3, wherein the transmission control unit preferentially extracts and transmits data having a high priority.
前記送信制御手段は、前記テーブルに記憶されている優先データを優先的に抽出して送信するようにしてあること
を特徴とする請求項1乃至4のいずれかに記載の中継装置。 Means for storing a table in which priority data and non-priority data to be transmitted preferentially are distinguished;
The relay apparatus according to any one of claims 1 to 4, wherein the transmission control means preferentially extracts and transmits the priority data stored in the table.
外部装置から送信されたデータを受信し、
受信したデータを受信順にバッファに記憶し、
前記バッファに記憶されているデータの順序に基づき前記バッファからデータを抽出して送信を試みる順序を決定し、
決定した順序に基づいてデータの送信を試み、
データの送信に失敗した場合、前記データを前記バッファへ戻し、
戻した回数を計数し、
前記回数が所定回数以上であるデータは、送信が成功するまで送信を試みる
ことを特徴とする中継方法。 A relay device connected to a plurality of communication lines and connected to an external device via each of the communication lines transmits data transmitted with priority given from the external device to another external device. In the method of relaying data,
Receive data sent from an external device,
Store the received data in the buffer in the order received,
To determine the order in which Ru attempts to transmit the extracted data from the buffer based on the sequence of data being memorize in said buffer,
Attempt to send data based on the determined order,
If data transmission fails, return the data to the buffer,
Count the number of returns,
The relay method according to claim 1, wherein the data having the number of times equal to or greater than the predetermined number is tried to be transmitted until the transmission is successful.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008132253A JP5147533B2 (en) | 2008-05-20 | 2008-05-20 | Relay device and relay method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008132253A JP5147533B2 (en) | 2008-05-20 | 2008-05-20 | Relay device and relay method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009284085A JP2009284085A (en) | 2009-12-03 |
JP5147533B2 true JP5147533B2 (en) | 2013-02-20 |
Family
ID=41454098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008132253A Expired - Fee Related JP5147533B2 (en) | 2008-05-20 | 2008-05-20 | Relay device and relay method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5147533B2 (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5920038B2 (en) * | 2012-06-07 | 2016-05-18 | 株式会社デンソー | In-vehicle communication device |
JP6174305B2 (en) * | 2012-08-03 | 2017-08-02 | トヨタ自動車株式会社 | Data transmission apparatus, communication control method, and communication control program |
JP5780331B1 (en) | 2014-03-19 | 2015-09-16 | 富士ゼロックス株式会社 | Information processing apparatus and information processing program |
JP2017147662A (en) * | 2016-02-18 | 2017-08-24 | 株式会社オートネットワーク技術研究所 | Repeating device |
JP2018098684A (en) * | 2016-12-15 | 2018-06-21 | 住友電気工業株式会社 | Switch device, communication control method, and communication control program |
CN114567674B (en) * | 2022-02-25 | 2024-03-15 | 腾讯科技(深圳)有限公司 | Data processing method, device, computer equipment and readable storage medium |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10117213A (en) * | 1996-10-09 | 1998-05-06 | Toshiba Corp | Packet communication equipment |
JP2001119416A (en) * | 1999-10-20 | 2001-04-27 | Auto Network Gijutsu Kenkyusho:Kk | Communication controller and communication method |
JP2007134946A (en) * | 2005-11-10 | 2007-05-31 | Nec Corp | Random access type radio communications system, base station, mobile station, and radio link establishing method |
-
2008
- 2008-05-20 JP JP2008132253A patent/JP5147533B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2009284085A (en) | 2009-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5147533B2 (en) | Relay device and relay method | |
JP5949417B2 (en) | Relay device | |
US9425992B2 (en) | Multi-frame and frame streaming in a controller area network (CAN) with flexible data-rate (FD) | |
US11516045B2 (en) | Anomaly determination method, anomaly determination device, and recording medium | |
CN110784385B (en) | Method and apparatus for transmitting data frames over a multi-host bus | |
JP4621837B2 (en) | Relay device, communication system, and communication method | |
JP2007300331A (en) | Onboard database system | |
KR20160135296A (en) | Participant station for a bus system, and method for increasing the transmission capacity in a bus system | |
US6901469B2 (en) | Communication control apparatus using CAN protocol | |
JP4839140B2 (en) | Relay connection unit | |
CN108631943A (en) | Communication device, communication means and storage medium | |
JP2008283386A (en) | Data relaying device, and on-vehicle communication system | |
JP2009089286A (en) | Relay connection unit | |
JP5728043B2 (en) | Gateway device | |
US8284821B2 (en) | Vehicle-mounted relay connection unit | |
JP5099755B2 (en) | COMMUNICATION METHOD, COMMUNICATION SYSTEM, AND COMMUNICATION DEVICE | |
JP6137033B2 (en) | In-vehicle network system and in-vehicle relay device | |
JP2006253922A (en) | Gateway apparatus and data transfer method for the gateway apparatus | |
JP5278886B2 (en) | Relay connection unit | |
JP2008172362A (en) | In-vehicle communication system, relay device, and in-vehicle communication method | |
CN117614915B (en) | On-chip interface data exchange routing system of FPGA | |
WO2022259832A1 (en) | Communication device and data communication method | |
KR101514398B1 (en) | Gateway in-vehicle based on virtual bus concepet and message transmission method thereof | |
US12149449B2 (en) | Communication system, device, and communication method | |
CN112913188B (en) | Subscriber station for a serial bus system and method for the manipulation-proof transmission of data in a serial bus system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110401 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120629 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120710 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120829 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121127 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121127 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151207 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |