JP2004221686A - 多重通信装置 - Google Patents
多重通信装置 Download PDFInfo
- Publication number
- JP2004221686A JP2004221686A JP2003003645A JP2003003645A JP2004221686A JP 2004221686 A JP2004221686 A JP 2004221686A JP 2003003645 A JP2003003645 A JP 2003003645A JP 2003003645 A JP2003003645 A JP 2003003645A JP 2004221686 A JP2004221686 A JP 2004221686A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- transmission
- information
- frame
- receiving
- 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.)
- Pending
Links
Images
Landscapes
- Small-Scale Networks (AREA)
- Communication Control (AREA)
Abstract
【解決手段】送信ノード10では、1パケットの各データフレームを同時に記憶する送信SMB1〜送信SMB6を設定する。受信ノード20では、1パケットの各データフレームを同時に記憶する受信Rmb1〜受信Rmb6を設定する。送信する際には、CPU11によって1パケットの各データフレームが対応する送信SMBに書き込まれてバスに送信される。各データフレームは、割り当てられているIDの優先順位で送信され、受信ノード20の各受信Rmbに受信される。受信ノード20では、受信したデータフレームを用いて元のパケットに復元するが、1パケットの受信に対して、送信ノードにACKフレームを返信する。このように、送信ノードと受信ノードとで1パケットのデータフレームを同時に記憶できるから、各データフレーム同士の間に隙間を空けることなく連続送信可能である。
【選択図】 図1
Description
【発明の属する技術分野】
本発明は、バスを介してデータの伝送を行う多重通信装置に関する。
【0002】
【従来の技術】
【特許文献1】特開平06−253371号公報
多重通信装置において、データ伝送時の通信速度を高めるために、例えば特開平06−253371号公報開示の通信方法が知られている。この通信方法では、マスタ機器(送信ノード)が送信するデータを1つのパケットでスレーブ機器(受信ノード)に送信し、スレーブ機器は受信したデータに対して応答信号を返信することで、信号の処理を簡単にし通信速度を高めるようにしている。
【0003】
【発明が解決しようとする課題】
ところで、上記従来の通信方法を用いて、複数のデータを連続して送受信する場合、送信ノードが1つのデータを送信した後、受信ノードからの応答信号を受信して次のデータを送信するため、バス上ではデータとデータの間およびデータと応答信号の間にバスアイドル(バス上に何にも送信されない状態をいう)が発生し、データ全体の伝送速度が実質的に低下するという問題があった。
【0004】
例えば上記従来の通信方法に、CAN通信(Controller AriaNetwork)を適用した場合、送信メッセージは、複数のパケットに分割して送信することになるが、CAN通信では、1つのフレームで最大8バイトのデータを送受信することから、パケットはさらに複数のフレームに分割され、フレーム単位でデータの送受信を行う。
【0005】
送受信する際には、まず、パケットを構成する複数のフレームのうち1つのフレームのデータと識別番号であるIDをCAN通信部のメールボックスに書き込んで、バスに出力する。これは1つのデータフレームの送信である。こうして1つのデータフレームを送信した後、同じ送信処理で次のデータフレームを送信するから、その送信処理時間分、各データフレームとデータフレームの間に隙間が生じ、バス上では、データフレームとデータフレームとの間にバスアイドルが発生する。
【0006】
そして、1パケットの全てのデータフレームが送信されると、受信ノードではそれを元のパケットに復元するとともに、受信できたことを示すACKフレーム(応答信号)のデータとIDをメールボックスに書き込んで送信するため、その受信応答処理時間分、ACKフレームの送信が遅れる。一方の送信ノードでは、ACKフレームを受信してから次のパケットに対して送信開始処理を行うから、送信開始処理時間分、データフレームの送信が遅れる。この結果、バス上では、データフレームとACKフレームの間にバスアイドルが発生する。
【0007】
図13は、上記従来の通信方法にCAN通信を適用した場合のバス状態を示す図である。
バス上では、各パケットにおいてデータフレーム同士の間にバスアイドルaが発生している。またパケット1およびパケット2と第1ACKフレームの間に、バスアイドルbが発生しているように、各パケットとそのACKフレームの間に、バスアイドルが発生している。
【0008】
このように、各データフレームとデータフレームの間、およびデータフレームとACKフレームの間に、バスアイドルa、bが発生するので、とくに処理能力の低いソフトウェアやハードウェアを利用した場合、データ全体の送信速度が著しく低下してしまう。
本発明は、上記従来の問題点に鑑み、バス上でデータとデータの間にバスアイドルが発生することなく、複数のデータの送受信が可能な多重通信装置を提供することを目的としている。
【0009】
【課題を解決するための手段】
このため本発明は、送信側の通信ノードには、送信用識別情報設定手段と、送信用情報記憶手段と、情報送信手段と、応答信号受信手段とを備え、送信用情報記憶手段は少なくとも1パケットの情報フレームを同時に記憶することが可能になっている。
【0010】
送信用識別情報設定手段によって各々異なる識別情報が設定された1パケットの情報フレームが送信用情報記憶手段に記憶される。情報送信手段は、送信用情報記憶手段に記憶された情報フレームを連続して送信するとともに、最終情報フレームを、同パケット内のほかの情報フレームを送信した後に送信する。
最終情報フレームを最後に送信することによって、受信側の通信ノードでは、最終情報フレームの受信で、1パケットの情報フレームの受信ができたと判断でき、受信したことを示す応答信号フレームを返信することができる。
この応答信号フレームが応答信号受信手段で受信されると、情報送信手段は次のパケットの各情報フレームの送信を行う。
【0011】
【発明の効果】
本発明によれば、送信側の通信ノードでは、少なくとも1パケットの情報フレームを記憶する複数の送信用情報記憶手段を設け、1パケットの全情報フレームを同時に記憶させるようにしたので、1パケットの各情報フレームを送信する送信開始処理を予め行うことができ、送信時には、送信指令のみで隙間なく連続送信することができる。これによって、バス上では、情報フレームと情報フレームの間にバスアイドルが発生しないので、データの伝送速度を向上させることができる。
【0012】
【発明の実施の形態】
次に、発明の実施の形態を実施例により説明する。
図1は、実施例の構成を示すブロック図である。
通信ノード10が、CAN通信部12とデータの処理およびCAN通信部12の制御を行うCPU11を備える。
通信ノード20が、CAN通信部22とデータの処理およびCAN通信部22の制御を行うCPU21を備える。
CAN通信部12とCAN通信部22が互いにバス30に接続され、通信ノード10と通信ノード20はバス30を介してデータの送受信を行うようになっている。
【0013】
CAN通信では、送信メッセージを複数のパケットに分割して送受信するとともに、1つのフレームについては、送信するデータ量が最大8バイトと規定されているので、送信メッセージは、複数のパケットに分割され、各パケットはさらに分割されて複数のフレームでデータの送受信を行う。1つのパケットには、例えば識別信号であるIDが割り振られた6つのデータフレームが含まれる。このとき、パケットサイズが6であるという。
以下、パケットサイズが6のパケットでの送受信について説明する。
【0014】
通信ノード10と通信ノード20とで、どちらからの送信も可能であるが、本実施例では、通信ノード10を送信側の通信ノードとし、通信ノード20を受信側の通信ノードとして用いるものとして、以下、分かり易いように通信ノード10を送信ノード10、通信ノード20を受信ノード20と呼称する。
CAN通信部12およびCAN通信部22は、ハードウェアで構成され、それぞれには、データを記憶するメールボックスを例えば16または32個備える。
【0015】
送信ノード10では、CAN通信部12がメールボックスのうち、6つを送信用メールボックス(送信SMB)用に設定する。各送信SMBには、識別番号が割り振られ、送信SMB1〜送信SMB6となっている。
6つの送信SMBを設定することによって、1パケットを構成する6つのデータフレームを同時に記憶することができるようになる。
また、受信ノード20からのACKフレームを記憶するために、メールボックスのうち、1つを受信用メールボックス(受信Smb)用に設定する。
【0016】
各データフレームは、所定の送信SMB1〜送信SMB6に記憶され、送信SMB1〜送信SMB6からバス30に送信されるが、その送信順番として各データフレームに与えられているIDの優先順位にしたがう。CAN通信では、IDは値が小さいほど優先順位が高く、0が最も優先順位の高いIDである。したがって、データフレームが、IDが0からの順番で送信される。
【0017】
なお、送信順位としては、IDが示す優先順位のほかに、送信SMB1〜送信SMB6で送信順位を予め設定して、送信順位にしたがって各データフレームを対応する送信SMBに記憶し、送信SMBの送信順位で送信することも可能である。
送信順位を設定するに当たって、上記いずれの場合も、パケット内の最終データフレーム(最終情報フレーム)は、同パケットにおいて最後に送信されればよく、そのほかのデータフレームの送信順位に関しては必ずしもデータフレーム順である必要はない。
受信Smbは、CPU11の初期設定によって、ACKフレームのみを受信し、かつ受信完了したら、CPU11に受信完了通知を発生するようになっている。
【0018】
一方の受信ノード20では、CAN通信部22が、メールボックスのうち、6つを受信用メールボックス(受信Rmb)用に設定する。各受信Rmbには、識別番号が割り振られ、受信Rmb1〜受信Rmb6となっている。
受信用メールボックスを6つ設定することによって、1パケットを構成する6つのデータフレームを同時に記憶できるようになる。
また、ACKフレームを送信するために、メールボックスのうち、1つを送信用メールボックス(送信RMB)用に設定する。
【0019】
CPU21は、初期設定で、受信Rmb1〜受信Rmb6に受信するデータフレームのIDと同じIDを設定し、受信Rmb1〜受信Rmb6が、対応するIDのデータフレームのみを受信するとともに、優先順位が最も低いデータフレームを受信完了すると、CPU21に受信完了通知を発生するように設定する。
【0020】
次に、データ伝送の流れをフローチャートによって説明する。
図2は送信ノード10での処理の流れを示すフローチャートで、図4は、データの送受信状態を示す図である。
ステップ100において、CPU11は、送信開始処理を行うことによって、フレーム順でパケットを構成する各フレームのデータとID=0〜5をそれぞれ対応する送信SMB1〜送信SMB6に書き込む。
【0021】
この書き込みによって、ID付きのデータフレームが生成される。ここで、フレーム順でID=0〜5を書き込んだので、パケットの最終データフレームには、最も優先順位の低いID5が付けられる。
なお、フレーム順で書き込むIDは、必ずしもID=0、1、2、3、4、5である必要はなく、例えばID=1、4、2、3、0、5というような順番でも可能である。
【0022】
ステップ110において、CPU11は、CAN通信部12の各送信SMB1〜送信SMB6に送信開始指令を出力して、データフレームの送信を開始させる。
ステップ120において、送信SMB1〜送信SMB6が、同時に送信を開始するが、CAN通信では優先順位の最も高いID0のデータフレームから送信(TX)が開始される。送信順番がくるまでは送信SMBが送信するデータフレームを保持して待機する。最終データフレームのIDに優先順位が最も低いID5が与えられているので、最終データフレームは、ほかのデータフレームが送信された後に送信される。
【0023】
送信されたデータフレームは、受信ノード20に受信されるが、1パケットの全データフレームを受信すると、受信完了したことを示すACKフレームがバス30に送信される。送信ノード10では、受信SmbにACKフレームのIDと同じIDが設定され、ACKフレームのみを受信でき、かつ受信を完了すると、CPU11に受信完了通知を発生するようになっている。
【0024】
ステップ130において、CPU11が、受信完了通知があったか否かをチェックする。受信完了通知があったら、ステップ140へ進む。
受信ノード20では、ACKフレームを送信したので、受信Rmb1〜受信Rmb6から受信したデータフレームが全部読み出され、次のパケットの受信が可能な状態にある。
【0025】
ステップ140においては、CPU11は未送信のパケットがあったか否かをチェックする。未送信のパケットがあった場合は、ステップ150において、次のパケットを読み込んで、ステップ100に戻り、上記同様の送信処理を行う。
ステップ140で未送信パケットがないことをチェックすると、ステップ160へ進んで、送信を終了する。
【0026】
図3は、受信ノード20での処理の流れを示すフローチャートである。
ステップ200において、CPU21は、初期設定を行って、CAN通信部22の受信Rmb1〜受信Rmb6に、送信されるデータフレームのIDと同一のIDを設定する。これによって、各受信Rmbがバス30から対応するデータフレームのみを受信できるようになる。また、この初期設定で、優先順位の最も低いデータフレームを受信すると、CPU21に受信完了通知を発生するようになっている。
【0027】
ステップ205において、受信Rmb1〜受信Rmb6は対応するIDのデータフレームを受信(RX)する。優先順位の最も低いデータフレームを受信すると、CPU21に受信完了通知を発生する。
ステップ210において、CPU21は、受信完了通知があったか否かをチェックする。受信完了通知があったら、受信Rmb1〜受信Rmb6がパケットの全データフレームを受信できたとしてステップ220へ進む。
【0028】
ステップ220においては、CPU21が、受信応答処理を行って、受信Rmb1〜受信Rmb6からそれぞれ記憶したデータフレームを読み出し、ステップ230において元のパケットに復元する。
ステップ240において、CPU21は、ACKフレームのデータとIDを送信RMBに書き込んだ上で、送信開始命令を出力することによって、バス30に送信させる。その後、ステップ210に戻る。
このACKフレームについては、データフレームが送信されていないときに送信されるので、優先順位をとくに規定する必要がなく、例えばデータフレームとは別にID6に設定することができる。
【0029】
本実施例は、以上のように構成され、送信ノード10に、送信用メールボックス(送信SMB1〜送信SMB6)と受信用メールボックス(受信Smb)を設定するとともに、受信ノード20には、受信用メールボックス(受信Rmb1〜受信Rmb6)と送信用メールボックス(送信RMB)を設定し、1パケットの全データフレームを同時に格納して記憶できるようにしたので、1パケットの全データフレームを予め記憶させることができる。これによって、送信ノード10では、1つのデータフレームを送信した後に、次に送信するデータフレームを送信用メールボックスSMBに書き込むような処理が必要なくなる。
【0030】
まだ、受信ノード20では、1パケットの全データフレームを受信して同時に記憶できるから、1パケットの全データフレームを受信した後に、読み出すことができる。
これによって、1パケットの全データフレームが送信完了する前に、データの送受信を中断する必要がなくなり、データフレームを隙間なく連続送信することが可能になる。
【0031】
図5は、本実施例のバス状態と従来例のバス状態との比較図である。
(a)は本実施例でのバス状態で、(b)は従来のバス状態である。
(b)で示すように従来例では、パケット2で示すように、各パケット(パケット1〜パケット4)において、データフレーム同士の間にバスアイドルaが発生しているのに対して、本実施例では(a)のように、各パケット(パケット1〜パケット4)において、データフレーム同士の間にバスアイドルが発生しない。したがって従来例より、データ伝送時の通信速度を高めることが可能である。
【0032】
本実施例では、送信SMB1〜送信SMB6が、送信用情報記憶手段を構成している。
受信Rmb1〜受信Rmb6が、受信用情報記憶手段を構成している。
ステップ100が、送信用識別情報設定手段を構成している。
ステップ120が、情報送信手段を構成している。
ステップ130が、応答信号受信手段を構成している。
ステップ200が、受信用識別情報設定手段を構成している。
ステップ230が、復元手段を構成している。
ステップ240が、受信完了通知手段を構成している。
【0033】
次に、第2の実施例について説明する。
図6は、本実施例の構成を示す図である。
本実施例では、上記第1実施例とは異なり、隣接する2つのパケットを1つのパケット群として、その第1パケットと第2パケットを送信ノード10’が連続して送信し、受信ノード20’は1つのパケットの受信に対してACKフレームを送信することで、各データフレーム同士の間のみでなく、各パケット同士間でも隙間なくデータフレームを連続送信できるようにする。
【0034】
送信ノード10’では、パケット群の第1パケットと第2パケットを構成するそれぞれのデータフレームを同時に記憶するように、CAN通信部12’が、メールボックスのうち、12個を送信用メールボックス(送信SMB)用に設定する。12個の送信用メールボックスのうち、6つを、第1パケットの記憶用に第1送信用メールボックス(送信SMB1〜送信SMB6)として、残りの6つを第2パケットの記憶用に第2送信用メールボックス(送信SMB7〜送信SMB12)として設定する。
【0035】
また、第1パケットまたは第2パケットの受信に対して受信ノード20’から送信されるACKフレーム1(応答信号フレーム1)またはACKフレーム2(応答信号フレーム2)を記憶するように、メールボックスのうち、2つの受信用メールボックス(受信Smb)を設定する。このうち、1つを第1受信用メールボックス(受信Smb1)として、もう1つを第2受信用メールボックス(受信Smb2)として設定する。
【0036】
送信SMB1〜送信SMB6と送信SMB7〜送信SMB12は、CPU11’から送信開始指令が出力された場合、CAN通信にしたがって、記憶したデータフレームのIDの優先順位で順次にデータフレームをバス30に送信する。
なお、第1の実施例と同様に、送信順位としては、必ずしもデータフレーム順である必要はなく、パケット内の最終データフレーム(最終情報フレーム)が同パケットにおいて最後に送信されればよく、その他のデータフレームはフレーム順で送信する必要はない。
受信Smb1、受信Smb2は、CPU11’による初期設定で、ACKフレーム1およびACKフレーム2のみを受信でき、かつ受信完了したら、CPU11’に第1受信完了通知また第2受信完了通知を発生するようになっている。
【0037】
一方の受信ノード20’では、CAN通信部22’が、パケット群の第1パケットと第2パケットの各データフレームをそれぞれ記憶できるように、メールボックスのうち、第1受信用メールボックス(受信Rmb1〜受信Rmb6)と第2受信用メールボックス(受信Rmb7〜受信Rmb12)を設定するとともに、ACKフレーム1とACKフレーム2をそれぞれ記憶する第1送信用メールボックス(送信RMB1)と第2送信用メールボックス(送信RMB2)を設定する。
【0038】
CPU21’は、初期設定で、受信Rmb1〜受信Rmb6と受信Rmb7〜受信Rmb12がそれぞれ対応するIDのデータフレームを受信するように設定し、かつパケット内の優先順位が最も低い最終データフレームを受信すると、CPU21’に、受信したパケットに対応した第1受信完了通知または第2受信完了通知を発生するように設定する。
【0039】
CPU21’は、第1受信完了通知または第2受信完了通知を受信すると、対応する受信用メールボックス(Rmb)から、データフレームを読み出して元のパケットに復元するとともに、受信したパケットが第1パケットか第2パケットを示すACKフレーム1またはACKフレーム2を送信RMB1または送信RMB2に書き込んで、返信させる。
【0040】
次に、データ伝送の流れをフローチャートによって説明する。
図7と図8は送信ノード10’での処理の流れを示すフローチャートで、図9は、データの送信状態を示す図である。
ステップ300において、CPU11’は、送信開始処理を行うことによって、パケット順で、隣接する2パケットを1つのパケット群として、そのうちの第1パケットの各フレームのデータとIDをそれぞれ対応する送信SMB1〜送信SMB6に書き込む。初回では、ID=2〜7を用いる。
【0041】
ステップ310において、上記同様に、パケット群を構成する第2パケットの各フレームのデータとIDをそれぞれ対応する送信SMB7〜送信SMB12に書き込む。上記同様に初回では、ID=8〜13を用いる。
なお、第1パケットと第2パケットのIDは、第1の実施例と同様に、必ずしもフレーム順で設定する必要はなく、最終フレームのデータに同パケットにおいて最も優先順位の低いIDを設定すればよい。
【0042】
ステップ320において、CPU11’は、送信SMB1〜送信SMB12に送信開始指令を出力する。これによって送信SMB1〜送信SMB12は、IDの優先順位にしたがって、それぞれ記憶してあるデータフレームをバス30に送信(TX)する。
なお、送信SMB1〜送信SMB12は、送信開始指令を受けても、送信順番がくるまでは、送信するデータフレームを保持して待機するようになっている。
【0043】
受信ノード20’では、送信ノード10’から送信された第1パケットおよび第2パケットの各データフレームを受信すると、受信したパケットに対応して、ACKフレーム1またはACKフレーム2を返信する。このACKフレーム1またはACKフレームがデータフレームより優先順位が高く設定されているから、優先的に送信される。なお、ACKフレーム1のID=0、ACKフレーム2のID=1である。
【0044】
送信ノード10’では、受信Smb1または受信Smb2がACKフレーム1またはACKフレーム2を受信すると、各々のACKフレーム1およびACKフレーム2に対応した受信完了通知1および受信完了通知2をCPU11’に発生する。
ステップ330において、CPU11’が、受信完了通知があったか否かをチェックする。受信完了通知があったら、1パケットのデータフレームの送信が完了したとして、ステップ340へ進む。
【0045】
ステップ340においては、CPU11’は未送信パケットがあったか否かをチェックする。未送信パケットがあったら、ステップ350において、次のパケットを読み込む。
ステップ360において、CPU11’は、ステップ330で確認した受信完了通知が第1受信完了通知であるか否かを判断し、第1受信完了通知の場合は、ステップ370へ進み、第2受信完了通知の場合には、ステップ380へ進む。
ステップ370においては、第1パケットの送信が完了したため、CPU11’が読み込んだパケットを次のパケット群の第1パケットとして、各フレームのデータとIDを送信SMB1〜送信SMB6に書き込む。このとき(2回目)のIDは、14〜19である。
【0046】
ステップ380においては、第2パケットの送信が完了したため、読み込んだパケットを次のパケット群の第2パケットとして、各フレームのデータとIDを送信SMB7〜送信SMB12に書き込む。このとき(2回目)のIDは、20〜25である。
ステップ370またはステップ380での処理が終わると、ステップ320に戻り、上記同様の送信処理を行う。このとき、前のパケット群の第2パケットの送信が行われている場合でも、新たな第1パケットのIDの優先順位が低いため、第2パケットの送信が完了するまで待たされる。
ステップ340で未送信パケットがないと確認されると、ステップ390において送信を終了する。
【0047】
図10は、受信ノード20’での処理の流れを示すフローチャートで、図11は、データの受信状態を示す図である。
ステップ500において、CPU21’は受信mb1〜受信mb6に送信ノード10’で設定された第1パケットの各データフレームのIDと同じIDを設定する。初回は、ID=2〜7を設定する。
【0048】
ステップ510において、CPU21’が受信Rmb7〜受信Rmb12に送信ノード10’で設定された第2パケットの各データフレームのIDと同じIDを設定する。初回は、ID=8〜13を設定する。
これによって、受信ノード20’では、第1パケットおよび第2パケットの各データフレームを受信し、同時に記憶することができる。
【0049】
ステップ520において、受信Rmb1〜受信Rmb12はバス30から対応するIDのデータフレームを受信(RX)して記憶する。
受信Rmb1〜受信Rm12は、第1パケットまたは第2パケットの最も優先順位の低いデータフレームを受信すると、CPU21’に受信が完了したパケットに対応した第1受信完了通知または第2受信完了通知を出力する。
【0050】
ステップ530において、CPU21’は、受信完了通信があったか否かをチェックする。受信完了通知があったら、ステップ540へ進む。
ステップ540においては、受信完了通知は第1受信完了通知か否かを判断して、第1受信完了通知の場合は、ステップ550へ、そうでない場合にはステップ580へ進む。
【0051】
ステップ550においては、第1パケットの受信が完了したため、CPU21’は、受信Rmb1〜受信Rmb6から記憶したデータフレームを読み出して元のパケットに復元する。
ステップ560において、CPU21’は受信Rmb1〜受信Rmb6に、次に送信される第1パケットのIDに対応して設定したIDを更新する。2回目は14〜19になる。
ステップ570において、CPU21’は、受信応答処理を行ってACKフレーム1のデータとIDである0を送信RMB1に書き込んだうえ、送信命令を出力する。これによってACKフレーム1が送信ノード10’に送信される。
【0052】
ステップ580においては、第2受信完了通知であると判断されたので、第2パケットの受信が完了したとして、CPU21’は、受信Rmb7〜受信Rmb12から記憶したデータフレームを読み出して元のパケットに復元する。
ステップ590において、CPU21’は受信Rmb7〜受信Rmb12のIDを次の第2パケットのIDに対応して更新する。2回目はIDが20〜25になる。
【0053】
ステップ600において、CPU21’は、受信応答処理を行ってACKフレーム2のデータとIDである1を送信RMB2に書き込み、送信開始指令を出力する。これによって、ACKフレーム2が送信ノード10’に送信される。ACKフレーム1またはACKフレーム2の優先順位が最も高いので、データフレーム送信中であっても、優先的に送信される。ステップ570、ステップ600の後は、ステップ530に戻る。
【0054】
本実施例は、以上のように構成され、パケット群を構成する第1パケットと第2パケットをパケットごとに送信と受信を繰り返すことによって、メッセージ全体を送信し、第1パケットの受信応答処理および次のパケット群の第1パケットの送信準備が、そのパケット群の第2パケットが送信されている最中に実行される。または、第2パケットの受信応答処理および次のパケット群の第2パケットの送信準備が、そのパケット群の次のパケット群の第1パケットが送信されている最中に実行される。
【0055】
これによって、データの送受信を中断させることなく、送受信を行うことが可能になる。バス30上に、データフレーム同士の間だけでなく、データフレームとACKフレームの間でも、隙間なく送受信することが可能になる。
【0056】
図12は、本実施例のバス状態と従来例のバス状態との比較図である。
(a)は本実施例でのバス状態で、(b)は従来のバス状態である。
(b)で示すように従来例では、各パケット(パケット1〜パケット4)において、
データフレーム同士の間にバスアイドルaが発生しているのに対して、本実施例では(a)のように、各パケット(パケット1〜パケット4)において、データフレーム同士の間にバスアイドルが発生しない。
【0057】
また、従来ではパケットとACKフレームの間にバスアイドルbが発生しているのに対して、本実施例は、データフレームとACKフレームの間でも、バスアイドルが発生しない。これによってデータ伝送時の通信速度を実質的に最高に高めることが可能である。
【0058】
本実施例では、送信SMB1〜送信SMB12が、送信用情報記憶手段を構成している。
受信Rmb1〜受信Rmb12が受信用情報記憶手段を構成している。
ステップ300とステップ310が、送信情報識別設定手段を構成している。
ステップ320が情報送信手段を構成している。
ステップ330とステップ360が、応答信号受信手段を構成している。
ステップ370とステップ380が、更新手段を構成している。
ステップ500とステップ510とステップ560およびステップ590が、受信用識別情報設定手段を構成している。
ステップ550とステップ580が、復元手段を構成している。
ステップ570とステップ600が、受信完了通知手段を構成している。
【図面の簡単な説明】
【図1】実施例の構成を示すブロック図である。
【図2】送信ノードでの処理の流れを示すフローチャートである。
【図3】受信ノードでの処理の流れを示すフローチャートである。
【図4】データの送受信状態を示す図である。
【図5】本実施例のバス状態と従来例のバス状態との比較図である。
【図6】第2の実施例の構成を示す図である。
【図7】送信ノードでの処理の流れを示すフローチャートである。
【図8】送信ノードでの処理の流れを示すフローチャートである。
【図9】データの送信状態を示す図である。
【図10】受信ノードでの処理の流れを示すフローチャートである。
【図11】データの受信状態を示す図である。
【図12】本実施例のバス状態と従来例のバス状態との比較図である。
【図13】従来の通信方法にCAN通信を適用した場合のバス状態を示す図である。
【符号の説明】
10、10’ 通信ノード(送信ノード)
11、11’ CPU
12、12’ CAN通信部
20、20’ 通信ノード(受信ノード)
21、21’ CPU
22、22’ CAN通信部
Claims (4)
- バスを介して接続される複数の通信ノードからなり、送信側の通信ノードが送信メッセージを複数のパケットに分割して前記バスに送信し、受信側の通信ノードが前記バスから送信されたデータを受信するとともに、1パケットのデータの受信に対して応答信号を前記送信側の通信ノードへ返信する多重通信装置において、
前記送信側の通信ノードには、前記パケットを構成する複数の情報フレームにそれぞれ異なる識別情報を設定する送信用識別情報設定手段と、
少なくとも1パケットの前記情報フレームを記憶する複数の送信用情報記憶手段と、
前記送信用情報記憶手段に記憶された複数の前記情報フレームを、連続して送信するとともに、前記パケットの最終情報フレームを、同パケット内におけるほかの情報フレームを送信した後に送信する情報送信手段と、
前記受信側の通信ノードから送信される応答信号フレームを受信する応答信号受信手段とを備え、
前記情報送信手段は、1パケットの情報フレームを送信し、前記応答信号フレームが受信された後に、次のパケットの送信を行うことを特徴とする多重通信装置。 - 前記受信側の通信ノードには、少なくとも1パケットの前記情報フレームを受信して記憶する複数の受信用情報記憶手段と、
前記送信側の通信ノードで前記各情報フレームに設定された識別情報と同一の識別情報を前記受信用情報記憶手段に設定する受信用識別情報設定手段と、
前記受信用情報記憶手段が、前記設定された識別情報に対応する前記情報フレームのみを受信するとともに、前記最終情報フレームを受信した後に、前記受信用情報記憶手段に記憶された複数の前記情報フレームを読み出して元のパケットに復元する復元手段と、
前記復元手段により1パケットの全情報フレームが読み出された後に、前記応答信号フレームを前記送信側の通信ノードへ返信する受信完了通知手段とを備えることを特徴とする請求項1記載の多重通信装置。 - バスを介して接続される複数の通信ノードからなり、送信側の通信ノードが送信メッセージを複数のパケットに分割して前記バスに送信し、受信側の通信ノードが前記バスから送信されたデータを受信するとともに、1パケットのデータの受信に対して応答信号を前記送信側の通信ノードへ返信する多重通信装置において、
前記送信側の通信ノードには、隣接する2つのパケットを1つのパケット群として、その第1パケットと第2パケットを構成するそれぞれ複数の情報フレームに識別情報を設定する送信用識別情報設定手段と、
少なくとも前記第1パケットと前記第2パケットを構成する各情報フレームを記憶する複数の送信用情報記憶手段と、
パケット群順にしたがって、前記送信用情報記憶手段に記憶された前記第1パケットおよび前記第2パケットの各情報フレームをパケットごとに連続送信するとともに、前記第1パケットおよび第2パケットのそれぞれの最終情報フレームを、同パケットにおけるほかの情報フレームを送信した後に送信する情報送信手段と、
前記受信側の通信ノードからの応答信号フレームを受信する応答信号受信手段と、
前記応答信号フレームを受信した後に、前記送信用情報記憶手段に記憶された第1パケットまたは第2パケットの前記情報フレームに設定された前記識別情報をパケットごとに更新する更新手段とを備えることを特徴とする多重通信装置。 - 前記受信側の通信ノードには、前記第1パケットと前記第2パケットの各情報フレームを受信して記憶する複数の受信用情報記憶手段と、
送信側の通信ノードで第1パケットおよび第2パケットのそれぞれの情報フレームに設定された識別情報と同一の識別情報を、前記受信用情報記憶手段にそれぞれ設定する受信用識別情報設定手段と、
前記受信用情報記憶手段が、設定された識別情報に対応する前記情報フレームのみを受信するとともに、最終情報フレームを受信した後に、前記受信用情報記憶手段に記憶した第1または第2パケットの情報フレームを読み出して元のパケットに復元する復元手段と、
前記復元手段により、第1パケットの全情報フレームが読み出された場合には、前記応答信号フレームとして応答信号フレーム1を前記送信側の通信ノードに返信し、第2パケットの全情報フレームが読み出された場合には、前記応答信号フレームとして応答信号フレーム2を前記送信側の通信ノードに返信する受信完了通知手段とを備え、
前記応答信号フレーム1と前記応答信号フレーム2は、前記第1パケットと前記第2パケットのいずれの情報フレームよりも優先的に送信することを特徴とする請求項3記載の多重通信装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003003645A JP2004221686A (ja) | 2003-01-09 | 2003-01-09 | 多重通信装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003003645A JP2004221686A (ja) | 2003-01-09 | 2003-01-09 | 多重通信装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004221686A true JP2004221686A (ja) | 2004-08-05 |
Family
ID=32894845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003003645A Pending JP2004221686A (ja) | 2003-01-09 | 2003-01-09 | 多重通信装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004221686A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013069005A (ja) * | 2011-09-21 | 2013-04-18 | Hitachi Automotive Systems Ltd | 自動車用電子制御装置 |
JP2014061887A (ja) * | 2013-12-26 | 2014-04-10 | Hitachi Automotive Systems Ltd | 自動車用電子制御装置及びデータ通信方法 |
CN114979058A (zh) * | 2022-06-30 | 2022-08-30 | 东风电驱动系统有限公司 | 一种can多邮箱复用处理方法及系统 |
-
2003
- 2003-01-09 JP JP2003003645A patent/JP2004221686A/ja active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013069005A (ja) * | 2011-09-21 | 2013-04-18 | Hitachi Automotive Systems Ltd | 自動車用電子制御装置 |
US10606229B2 (en) | 2011-09-21 | 2020-03-31 | Hitachi Automotive Systems, Ltd. | Electronic control unit for vehicle and method of executing program |
US11556104B2 (en) | 2011-09-21 | 2023-01-17 | Hitachi Astemo, Ltd. | Electronic control unit for vehicle and method of executing program |
JP2014061887A (ja) * | 2013-12-26 | 2014-04-10 | Hitachi Automotive Systems Ltd | 自動車用電子制御装置及びデータ通信方法 |
CN114979058A (zh) * | 2022-06-30 | 2022-08-30 | 东风电驱动系统有限公司 | 一种can多邮箱复用处理方法及系统 |
CN114979058B (zh) * | 2022-06-30 | 2023-10-03 | 东风电驱动系统有限公司 | 一种can多邮箱复用处理方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5940597A (en) | Method and apparatus for periodically updating entries in a content addressable memory | |
US20040100944A1 (en) | Serial ATA frame structure routing circuitry and protocols | |
EP0254047A2 (en) | Packet length traffic control in a local area network | |
CA2547440A1 (en) | Synchronized data transfer system | |
WO2017000832A1 (zh) | Mac地址的同步方法、装置及系统 | |
JP2005167965A (ja) | パケット処理方法および装置 | |
JP2004221686A (ja) | 多重通信装置 | |
JP2004207891A (ja) | データ通信装置、データ通信方法、データ通信プログラム及びデータ通信プログラムを記録した記録媒体 | |
JP5372699B2 (ja) | 車載ネットワーク装置 | |
CN107547452B (zh) | 一种分布式通信设备及其报文转发方法和装置 | |
CN112671512B (zh) | Can报文的发送方法、控制单元、can节点及其网络 | |
JPS61224640A (ja) | デ−タブロツク転送方式 | |
US7233592B1 (en) | Packet transfer control circuit | |
JP2541747B2 (ja) | 通信用スイッチングシステム | |
JP2000269993A (ja) | データ伝送方法と伝送装置 | |
JP3125325B2 (ja) | 蓄積型星型通信網における送信制御方式 | |
JP4377033B2 (ja) | データ転送制御方法及びその装置 | |
JP3280852B2 (ja) | ポーリング通信方法 | |
JP3230339B2 (ja) | 通信制御装置 | |
JP2644558B2 (ja) | 通信装置の試験装置および試験方法 | |
JPH0292043A (ja) | データ受信方式 | |
JP3337203B2 (ja) | データバッファ制御方法 | |
JP3818381B2 (ja) | パケット転送制御装置、送信装置、通信システムおよびパケット転送制御方法 | |
JPH0974410A (ja) | 通信中継装置 | |
JP3168254B2 (ja) | 分散処理におけるメッセージ処理方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051124 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070919 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080122 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080219 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080415 |