CN104541480A - 数据发送装置、通信控制方法及通信控制程序 - Google Patents
数据发送装置、通信控制方法及通信控制程序 Download PDFInfo
- Publication number
- CN104541480A CN104541480A CN201280075118.XA CN201280075118A CN104541480A CN 104541480 A CN104541480 A CN 104541480A CN 201280075118 A CN201280075118 A CN 201280075118A CN 104541480 A CN104541480 A CN 104541480A
- Authority
- CN
- China
- Prior art keywords
- data
- bus
- region
- storage part
- export
- 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.)
- Granted
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 88
- 238000004891 communication Methods 0.000 title claims abstract description 58
- 238000000034 method Methods 0.000 title claims description 27
- 238000003860 storage Methods 0.000 claims abstract description 35
- 230000000052 comparative effect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000033228 biological regulation Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000002688 persistence Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
- H04L12/40032—Details regarding a bus interface enhancer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40143—Bus networks involving priority mechanisms
- H04L12/4015—Bus networks involving priority mechanisms by scheduling the transmission of messages at the communication node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40143—Bus networks involving priority mechanisms
- H04L12/40163—Bus networks involving priority mechanisms by assigning priority to messages according to a message field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/407—Bus networks with decentralised control
- H04L12/413—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
- H04L12/4135—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD] using bit-wise arbitration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4604—LAN interconnection over a backbone network, e.g. Internet, Frame Relay
- H04L12/462—LAN interconnection over a bridge based backbone
- H04L12/4625—Single bridge functionality, e.g. connection of two networks over a single bridge
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/6215—Individual queue per QOS, rate or priority
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Small-Scale Networks (AREA)
- Communication Control (AREA)
Abstract
一种数据发送装置,其具备:输出部,向总线输出数据,基于在与要向所述总线输出的其他的竞争数据之间使用自己要向所述总线输出的数据所被赋予的优先度信息进行通信调解的结果,来决定是否向所述总线输出数据;存储部,从区域优先度高的区域到区域优先度低的区域设定有多个区域;以及分配部,被要求了发送的数据越是所被赋予的优先度信息高的数据,越将该数据写入所述存储部的区域优先度高的区域,所述输出部优先将存储于所述多个区域的数据中的存储于所述区域优先度高的区域的数据向所述总线输出。
Description
技术领域
本发明涉及数据发送装置、通信控制方法及通信控制程序。
背景技术
将多个ECU(Electronic Control Unit)等处理装置与总线连接的结构的网络系统不断普及。这样的网络系统中的多个ECU分别进行自己分担的信息处理,并能够将处理结果向总线输出而提供给其他的ECU。而且,在这样的网络系统中,为了避免多个ECU在同一时机将数据向总线输出的情况,有时进行被称为通信调解的处理。通信调解在进行基于例如CAN(Controller Area Network)的通信的网络系统中进行。CAN的通信调解按照如下的规则进行:各ECU将自己发送的数据与监控总线状态的结果进行比较,若总线状态是遵循自己发送的数据的状态,则判断为赢得了通信调解,继续进行数据的输出。
另外,在各种ECU与通信总线连接的结构的系统中,公开了一种各ECU在被要求发送的发送数据存在多个的情况下,优先将优先度高的发送数据写入发送缓存器的系统(例如,参照专利文献1)。
另外,公开了一种如下的装置:具备多个缓冲存储器,根据送出用数字信息的种类而在多个缓冲存储器中的任一个存储送出用数字信息,根据对应于发送处理的进展而变化的待机编号或附随于数据的优先度来设定传送顺序(例如,参照专利文献2)。
在先技术文献
专利文献
专利文献1:日本特开平9-200234号公报
专利文献2:日本特开平7-222257号公报
发明内容
发明要解决的课题
然而,专利文献1及2记载的技术未想到向进行通信调解的总线输出数据的情况,因此会产生以下那样的问题。
在专利文献1记载的系统中,设为“优先将优先度高的发送数据写入发送缓存器”,但是该优先度未想到通信调解所使用的优先度。而且,即使假设能够将优先度与通信调解所使用的优先度同等看待,在将优先度低的第一发送数据写入发送缓存器之后,生成优先度高的第二发送数据的情况下,在优先度低的第一发送数据持续输了通信调解的结果是,会产生优先度高的第二发送数据不得不在发送缓存器内(或者在其前一阶段的存储器区域内)继续发送等待状态的状况。
另外,在专利文献2记载的装置中,设为“根据对应于发送处理的进展而变化的待机编号或附随于数据的优先度来设定传送顺序”,但是与专利文献1一样,优先度未想到通信调解所使用的优先度。而且,即使假设能够将优先度与通信调解所使用的优先度同等看待,也需要在将根据与优先度无关的“送出用数字信息的种类”而分配送出用数字信息的多个缓冲存储器内的数据全部读入的基础上进行顺序决定处理,存储器访问或软件处理涉及的装置的负担过大。
根据一方面,目的在于提供一种能够将通信调解涉及的优先度高的数据优先向总线输出而不会使装置的负担过大的数据发送装置及通信控制程序。
用于解决课题的手段
用于实现上述目的的本发明的一方式为一种数据发送装置,其具备:
输出部,向总线输出数据,基于在与要向所述总线输出的其他的竞争数据之间使用自己要向所述总线输出的数据所被赋予的优先度信息进行通信调解的结果,来决定是否向所述总线输出数据;
存储部,从区域优先度高的区域到区域优先度低的区域设定有多个区域;以及
分配部,被要求了发送的数据越是所被赋予的优先度信息高的数据,越将该数据写入所述存储部的区域优先度高的区域,
所述输出部优先将存储于所述多个区域的数据中的存储于所述区域优先度高的区域的数据向所述总线输出。
在本发明的一方式中,可以的是,
所述数据发送装置具备与所述存储部的多个区域对应的多个标志存储部,
所述分配部在将所述被要求了发送的数据写入所述存储部的任意一个区域时,在与该写入的区域对应的所述标志存储部设立标志,
所述输出部优先将在与设立了所述标志的标志存储部对应的所述存储部的区域中的所述区域优先度高的区域存储的数据向所述总线输出。
另外,在本发明的一方式中,可以的是,
所述输出部对于在所述存储部的多个区域存储的数据中的一定期间内未向所述总线输出的数据,无论当初存储的区域的区域优先度如何,都最优先将该数据向所述总线输出。
该情况下,可以的是,
所述存储部的多个区域中包含有所述一定期间内未向所述总线输出的数据专用的例外区域,
所述分配部判别未向所述总线输出的数据,使该判别出的数据从其他的区域向所述例外区域移动,
所述输出部最优先将存储于所述例外区域的数据向所述总线输出。
本发明的另一方式为一种通信控制方法,其中,
数据发送装置基于在与要向总线输出的其他的竞争数据之间使用自己要向所述总线输出的数据所被赋予的优先度信息进行通信调解的结果,来决定是否向所述总线输出数据,所述数据发送装置执行如下操作:
被要求了发送的数据越是所被赋予的优先度信息高的数据,越将该数据写入存储部的区域优先度高的区域,所述存储部从区域优先度高的区域到区域优先度低的区域设定有多个区域,
优先将存储于所述多个区域的数据中的存储于所述区域优先度高的区域的数据向所述总线输出。
另外,本发明的又一方式为一种通信控制程序,其中,
数据发送装置基于在与要向总线输出的其他的竞争数据之间使用自己要向所述总线输出的数据所被赋予的优先度信息进行通信调解的结果,来决定是否向所述总线输出数据,
所述通信控制程序使所述数据发送装置执行如下操作:
被要求了发送的数据越是所被赋予的优先度信息高的数据,越将该数据写入存储部的区域优先度高的区域,所述存储部从区域优先度高的区域到区域优先度低的区域设定有多个区域,
优先将存储于所述多个区域的数据中的存储于所述区域优先度高的区域的数据向所述总线输出。
发明效果
根据一实施方式,能够提供一种能够将通信调解涉及的优先度高的数据优先向总线输出而不会使处理负荷过大的数据发送装置、通信控制方法及通信控制程序。
附图说明
图1是包含一实施例的ECU10的网络系统1的结构例。
图2是ECU10的结构例。
图3是各ECU向总线输出的帧的形式例。
图4是发送MBOX与ID的对应关系的一例。
图5是表示通过CAN驱动器12C执行的处理的流程的流程图的一例。
图6是表示通过CAN控制器15执行的处理的流程的流程图的一例。
图7是表示在仅设定单独的发送MBOX的比较例的ECU*中发生不良情况的图。
图8是表示本实施例的ECU10优先将通信调解涉及的优先度高的数据向总线输出的情况的图。
图9是进行例外措施的情况下的发送MBOX与ID、发送要求寄存器的对应关系的一例。
图10是设定了与全部的ID对应的发送MBOX的情况下的ECU10的结构例。
具体实施方式
以下,对于用于实施本发明的方式,一边参照附图,一边列举实施例进行说明。
实施例
以下,参照附图,说明本发明的数据发送装置、通信控制方法及通信控制程序的实施例。
图1是包含一实施例的ECU10的网络系统1的结构例。网络系统1具备与总线2连接的ECU10#0、10#1、与总线3连接的ECU10#2、10#3、10#4、与总线2及总线3连接并在总线2与总线3之间进行中继的网关装置50。需要说明的是,权利要求书中的“数据发送装置”例如对应于“ECU”。
在总线2及总线3中,例如进行基于CAN的通信,各ECU能够取得在总线中流动的数据。总线2及总线30例如是双股扭绞电缆,通过差动电压方式来传递信号。
[ECU]
图2是各ECU(以下,在未区分ECU时,标记为ECU10进行说明)的结构例。需要说明的是,各ECU中的一部分也可以不具备图2所示的结构或以下说明的功能的一部分。
ECU10例如具备CPU(Central Processing Unit)11、存储有CPU11执行的程序的程序存储器12、作为工作存储器发挥功能的RAM(Random Access Memory)13、作为与外围设备的接口的外围I/O14、CAN控制器15、CAN收发机16。
程序存储器12例如是ROM(Read Only Memory)、EEPROM(Electrically Erasable and Programmable Read Only Memory)、HDD(Hard Disk Drive)等,存储应用程序12A、通信中间件12B、CAN驱动器12C等程序。
应用程序12A是用于进行分配给各ECU的信息处理的程序。应用程序12A例如周期性地进行所给予的运算,并将运算结果存储于RAM13的共用区域13A。
通信中间件12B例如定期地或在有来自应用程序12A的处理要求时,将存储于共用区域13A的数据转换成与CAN驱动器12C对应的形式,写入发送缓存器13B,向CAN驱动器12C提供。而且,通信中间件12B对于写入接收缓存器13C的数据,进行向应用程序12A能够理解的形式转换等并存储于共用区域13A,向应用程序12A提供。CAN驱动器12C将写入发送缓存器13B的数据存储于任一发送MBOX。
在RAM13设定有应用程序12A及通信中间件12B共用的共用区域13A、发送缓存器13B、接收缓存器13C、控制器读出区域13D等区域。控制器读出区域13D包含多个发送MBOX(消息盒)13Da、13Db、13Dc…。发送MBOX的个数只要是多个即可,可以是任意的个数。在以下的说明中,将发送MBOX设为3个进行说明。
关于通信中间件12B及CAN驱动器12C的更详细的功能、以及设定于RAM13的各区域的作用,在后文叙述。
CAN控制器15具备协议控制器、对CPU时钟进行分频的分频器、发送控制寄存器15Aa、15Ab、15Ac、…等。各发送控制寄存器与各发送MBOX对应。
CAN控制器15经由CAN收发机16,在与总线10或总线20之间发送接收各种数据。需要说明的是,对CAN控制器15进行控制的处理器可以与CPU11相同,也可以不同。
CAN控制器15在向总线输出数据(帧)时,将存储于任一发送MBOX的帧以NRZ(Non-Return-to-Zero)方式转换成串行的发送信号,向CAN收发机16输出。CAN控制器15向转换后的信号为“0(显性)”的位输出逻辑电平低的电压,向“1(隐性)”的位输出逻辑电平高的电压。
CAN收发机16将从CAN控制器15取得的发送信号转换成差动电压而向总线输出。而且,CAN收发机16在从总线取得数据时,读取总线的差动电压,将以包含于规定的电压范围的方式进行了整形的接收信号向CAN控制器15输出。在CAN控制器15的接收端子Rx安装比较器,将规定的阈值电压与来自CAN收发机16的接收信号进行比较,生成“1”、“0”的数字数据而存储于接收缓存器13C。
图3是各ECU向总线输出的帧的形式例。在1次的发送中输出的帧包括表示帧的开始的开始帧(SOF)、作为数据的标识符的ID、用于识别数据帧和远程帧的远程传送要求(RTR)、表示数据的字节数等的控制字段、作为传送的数据的实体的数据字段、附加用于检查帧的错误的CRC的CRC序列、接受来自接收到正确的消息的单元的通知(ACK)的ACK插槽及ACK分隔符、表示帧的结束的结束帧(EOF)等。
在总线2及总线3中,进行基于由ID和RTR表示的优先度的通信调解。在从多个ECU同时发送帧的情况下,各ECU将自己发送的数据与监控总线状态的结果进行比较。在此,在隐性和显性从不同的ECU同时发送的情况下,显性优先,总线的状态成为显性。此时,发送了隐性的节点由于自己发送的数据与总线状态的差异,判断为输了通信调解而停止发送。根据上述原理,在从多个ECU同时开始发送帧的情况下,在其他节点进行隐性发送时,发送了显性的节点赢得通信调解,因此ID的值越小的帧,优先度越高。
[发送控制]
以下,对于通信中间件12B、CAN驱动器12C及CAN控制器15进行的发送控制,更详细地进行说明。
〔通信中间件12B及CAN驱动器12C的处理〕
通信中间件12B根据应用程序12A的委托,将存储于共用区域13A的数据向发送缓存器13B存储。在此,存储于共用区域13A的数据由应用程序12A来赋予与帧的形式中的“ID”相当的信息(以下,简记为ID)。ID例如取1~10的任一整数。
CAN驱动器12C对存储于发送缓存器13B的数据附加作为帧所需要的数据,并存储于与赋予数据的ID对应的发送MBOX。图4是发送MBOX与ID的对应关系的一例。在各发送MBOX存储1帧量的数据,在发送MBOX中已经存储有数据的情况下,CAN驱动器12C不进行向该发送MBOX的数据的存储。从图4所示的对应关系可知,在发送MBOX13Aa存储有通信调解中的优先度高的数据。而且,在发送MBOX13Ab中存储有通信调解中的优先度为中等程度的数据。而且,在发送MBOX13Ac存储有通信调解中的优先度低的数据。
而且,CAN驱动器12C在向发送MBOX13Aa中存储数据时,在发送要求寄存器15Aa中设立例如标志“1”。而且,CAN驱动器12C在向发送MBOX13Ab内存储数据时,在发送要求寄存器15Ab中设立例如标志“1”。CAN驱动器12C在向发送MBOX13Ac中存储数据时,在发送要求寄存器15Ac中设立例如标志“1”。即,发送要求寄存器15Aa与发送MBOX13Aa对应,发送要求寄存器15Ab与发送MBOX13Ab对应,发送要求寄存器15Ab与发送MBOX13Ab对应。
图5是表示通过CAN驱动器12C执行的处理的流程的流程图的一例。本流程图例如以规定周期反复执行。
首先,CAN驱动器12C判定发送缓存器13B中是否存储数据(S100)。在发送缓存器13B中未存储数据的情况下,CAN驱动器12C结束本流程图的1例程。
在发送缓存器13B中存储有数据的情况下,CAN驱动器12C读入存储于发送缓存器13B的数据的ID(S102),判定ID是否为4以下(S104)。
在ID为4以下的情况下,CAN驱动器12C判定发送MBOX13Da是否为“空”状态(S106)。在发送MBOX13Da为“空”状态的情况下,CAN驱动器12C将存储于发送缓存器13B的数据向发送MBOX13Da写入(S108),在发送要求寄存器15Aa中设立标志“1”(S110)。在发送MBOX13Da不是“空”状态的情况下,CAN驱动器12C结束本流程图的1例程。
在ID超过4的情况下,CAN驱动器12C判定ID是否为7以下(S112)。
在ID为7以下的情况下,CAN驱动器12C判定发送MBOX13Db是否为“空”状态(S114)。在发送MBOX13Db为“空”状态的情况下,CAN驱动器12C将存储于发送缓存器13B的数据写入发送MBOX13Db(S116),在发送要求寄存器15Ab中设立标志“1”(S118)。在发送MBOX13Db不是“空”状态的情况下,CAN驱动器12C结束本流程图的1例程。
在ID超过7的情况下,CAN驱动器12C判定发送MBOX13Dc是否为“空”状态(S120)。在发送MBOX13Dc为“空”状态的情况下,CAN驱动器12C将存储于发送缓存器13B的数据写入发送MBOX13Dc(S122),在发送要求寄存器15Ac中设立标志“1”(S124)。在发送MBOX13Dc不是“空”状态的情况下,CAN驱动器12C结束本流程图的1例程。
〔CAN控制器15的处理〕
CAN控制器15将存储在与设立有标志“1”的发送要求寄存器对应的发送MBOX内的数据(帧)经由CAN收发机16向总线输出。此时,CAN控制器15在多个发送要求寄存器中设立有标志“1”的情况下,最优先地将存储于发送MBOX13Aa的数据向总线输出(实际上在赢得通信调解的情况下输出;以下相同),接着将存储于发送MBOX13Ab的数据向总线输出,无论是在发送MBOX13Aa还是在发送MBOX13Ab中都未存储数据的情况下,将存储于发送MBOX13Ac的数据向总线输出。CAN控制器15在能够将存储于发送MBOX的数据向总线输出的情况下,将对应的发送要求寄存器的标志清零。
图6是表示通过CAN控制器15执行的处理的流程的流程图的一例。本流程图例如以规定周期反复执行。
CAN控制器15首先判定在发送要求寄存器15Aa中是否设立有标志“1”(S200)。
在发送要求寄存器15Aa中设立有标志“1”的情况下,CAN控制器15从发送MBOX13Da读入数据,尝试向总线的输出(S202)。并且,CAN控制器15在赢得通信调解而向总线的输出成功的情况下,将发送要求寄存器15Aa的标志清零(S204、206)。
在发送要求寄存器15Aa中未设立标志“1”的情况下,CAN控制器15判定发送要求寄存器15Ab中是否设立有标志“1”(S208)。
在发送要求寄存器15Ab中设立有标志“1”的情况下,CAN控制器15从发送MBOX13Db读入数据,尝试向总线的输出(S210)。并且,CAN控制器15在赢得通信调解而向总线的输出成功的情况下,将发送要求寄存器15Ab的标志清零(S212、214)。
在发送要求寄存器15Ab中未设立标志“1”的情况下,CAN控制器15判定在发送要求寄存器15Ac中是否设立有标志“1”(S216)。
在发送要求寄存器15Ac中设立有标志“1”的情况下,CAN控制器15从发送MBOX13Dc读入数据,尝试向总线的输出(S218)。并且,CAN控制器15在赢得通信调解而向总线的输出成功的情况下,将发送要求寄存器15Ac的标志清零(S220、222)。
通过上述处理,由于低优先度的帧持续输了通信调解,所以能够抑制后续的高优先度的帧的等待状态长时间继续这样的不良情况的发生。
[与其他的结构的比较等]
图7是表示在仅设定单独的发送MBOX的比较例的ECU*中产生上述的不良情况的图。在ECU*中,仅设定了一个发送MBOX,将存储于发送缓存器的数据按照FIFO(First In,First Out)或以ID小的顺序向发送MBOX存储。然而,自然会产生如下情况:在将ID大的数据刚存储于发送MBOX之后将ID小的数据向发送缓存器存储的情况。这种情况下,若先存储于发送MBOX的数据持续输了通信调解,则后续的ID小的数据无法存储于发送MBOX,不得不继续等待状态。在图7的例子中,在比较例的ECU*中,发送要求顺序为帧#1(ID10)→帧#2(ID1)→帧#3(ID5)的情况下,向总线的输出顺序也成为帧#1(ID10)→帧#2(ID1)→帧#3(ID5),但是帧#1(ID10)持续输了调解的结果是,后续的帧无论ID如何,等待状态继续的可能性都高。
关于这一点,在本实施例的ECU10中,根据ID而设定多个发送MBOX,优先将ID小即通信调解涉及的优先度高的数据向总线输出。其结果是,先尝试向总线的输出的数据赢得通信调解的可能性升高,从而能够抑制前述那样的不良情况发生。图8是表示本实施例的ECU10优先将通信调解涉及的优先度高的数据向总线输出的情况的图。在图8的例子中,在发送要求顺序为帧#1(ID10)→帧#2(ID1)→帧#3(ID5)的情况下,向总线的输出顺序成为帧#2(ID1)→帧#3(ID5)→帧#1(ID10),帧#2或帧#3与比较例的ECU*相比提前向总线输出的可能性高。
另外,在本实施例的ECU10中,CAN控制器15能够根据发送要求寄存器的值自动地判断从哪一个发送MBOX读入数据而向总线输出为好,因此例如无需进行参照存储于发送MBOX的全部的数据的内容而检查ID这样的处理。其结果是,不会使CAN控制器15的处理负荷过大,而能够优先将通信调解涉及的优先度高的数据向总线输出。
另外,在本实施例的ECU10中,用于优先将通信调解涉及的优先度高的数据向总线输出的处理在通信中间件12B以下的阶层进行,因此应用程序12A无需进行改变。因此,在适用于已存的ECU其他的装置时,软件改变的负担小。
[总结]
根据以上说明的本实施例的ECU10,处理负荷不会过大而能够优先地将通信调解涉及的优先度高的数据向总线输出。
以上,使用实施例说明了用于实施本发明的方式,但本发明不受这样的实施例的任何限定,在不脱离本发明的主旨的范围内能够施加各种变形及置换。
例如,在以优先将通信调解涉及的优先度高的数据向总线输出为原则时,对于在一定期间内仍存储于发送MBOX而不向总线输出的数据(以下,称为“等待时间超过数据”),无论ID如何,都可以最优先地将该数据尝试向总线的输出。这种情况下,预先设定这样的例外措施专用的发送MBOX,使等待时间超过数据从当初存储的发送MBOX向例外措施专用的发送MBOX移动。图9是进行例外措施时的发送MBOX与ID、发送要求寄存器的对应关系的一例。从存储于发送MBOX起的经过时间的监控由通信中间件12B进行,通信中间件12B在等待时间超过数据产生时,指示CAN驱动器12C使该等待时间超过数据向图9中的发送MBOX13Da移动。CAN驱动器12C使等待时间超过数据向发送MBOX13Da移动,并且将与当初存储有等待时间超过数据的发送MBOX对应的发送要求寄存器的标志清零,在与发送MBOX13Da对应的发送要求寄存器15Aa中设立标志“1”。需要说明的是,上述处理也可以不进行发送MBOX间的数据的移动,而通过变更CAN控制器15的内部标志等来实现。
另外,在实施例中,例示了将发送MBOX设定为3个(在设定例外措施专用的发送MBOX的情况下为4个),但并不局限于此,例如,也可以设定与全部的ID(1,2,…n)对应的发送MBOX。图10是设定了与全部的ID对应的发送MBOX情况下的ECU10的结构例。对于图10所示的结构,也可以再设定例外措施专用的发送MBOX及对应的发送要求寄存器。
产业上的可利用性
本发明可利用于计算机制造业、计算机软件产业、以及利用了计算机的各种系统的制造业等。
本国际申请主张基于2012年8月3日提出申请的日本国专利申请2012-172697的优先权,并将日本国专利申请2012-172697的全部内容在此援引于本国际申请。
标号说明
1 网络系统
2、3 总线
10 ECU
11 CPU
12 程序存储器
12A 应用程序
12B 通信中间件
12C CAN 驱动器
13 RAM
13A 共用区域
13B 发送缓存器
13C 接收缓存器
13D 控制器读出区域
13Da、13Db、13Dc、…发送MBOX
14 外围I/O
15 CAN控制器
15Aa、15Ab、15Ac、…发送控制寄存器
16 CAN收发机
50 网关装置
Claims (6)
1.一种数据发送装置,其具备:
输出部,向总线输出数据,基于在与要向所述总线输出的其他的竞争数据之间使用自己要向所述总线输出的数据所被赋予的优先度信息进行通信调解的结果,来决定是否向所述总线输出数据;
存储部,从区域优先度高的区域到区域优先度低的区域设定有多个区域;以及
分配部,被要求了发送的数据越是所被赋予的优先度信息高的数据,越将该数据写入所述存储部的区域优先度高的区域,
所述输出部优先将存储于所述多个区域的数据中的存储于所述区域优先度高的区域的数据向所述总线输出。
2.根据权利要求1所述的数据发送装置,其中,
所述数据发送装置具备与所述存储部的多个区域对应的多个标志存储部,
所述分配部在将所述被要求了发送的数据写入所述存储部的任意一个区域时,在与该写入的区域对应的所述标志存储部设立标志,
所述输出部优先将在与设立了所述标志的标志存储部对应的所述存储部的区域中的所述区域优先度高的区域存储的数据向所述总线输出。
3.根据权利要求1或2所述的数据发送装置,其中,
所述输出部对于在所述存储部的多个区域存储的数据中的一定期间内未向所述总线输出的数据,无论当初存储的区域的区域优先度如何,都最优先将该数据向所述总线输出。
4.根据权利要求3所述的数据发送装置,其中,
所述存储部的多个区域中包含有所述一定期间内未向所述总线输出的数据专用的例外区域,
所述分配部判别未向所述总线输出的数据,使该判别出的数据从其他的区域向所述例外区域移动,
所述输出部最优先将存储于所述例外区域的数据向所述总线输出。
5.一种通信控制方法,其中,
数据发送装置基于在与要向总线输出的其他的竞争数据之间使用自己要向所述总线输出的数据所被赋予的优先度信息进行通信调解的结果,来决定是否向所述总线输出数据,所述数据发送装置执行如下操作:
被要求了发送的数据越是所被赋予的优先度信息高的数据,越将该数据写入存储部的区域优先度高的区域,所述存储部从区域优先度高的区域到区域优先度低的区域设定有多个区域,
优先将存储于所述多个区域的数据中的存储于所述区域优先度高的区域的数据向所述总线输出。
6.一种通信控制程序,其中,
数据发送装置基于在与要向总线输出的其他的竞争数据之间使用自己要向所述总线输出的数据所被赋予的优先度信息进行通信调解的结果,来决定是否向所述总线输出数据,
所述通信控制程序使所述数据发送装置执行如下操作:
被要求了发送的数据越是所被赋予的优先度信息高的数据,越将该数据写入存储部的区域优先度高的区域,所述存储部从区域优先度高的区域到区域优先度低的区域设定有多个区域,
优先将存储于所述多个区域的数据中的存储于所述区域优先度高的区域的数据向所述总线输出。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012172697A JP6174305B2 (ja) | 2012-08-03 | 2012-08-03 | データ送信装置、通信制御方法、及び通信制御プログラム |
JP2012-172697 | 2012-08-03 | ||
PCT/JP2012/077164 WO2014020779A1 (ja) | 2012-08-03 | 2012-10-19 | データ送信装置、通信制御方法、及び通信制御プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104541480A true CN104541480A (zh) | 2015-04-22 |
CN104541480B CN104541480B (zh) | 2018-06-29 |
Family
ID=50027500
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280075118.XA Expired - Fee Related CN104541480B (zh) | 2012-08-03 | 2012-10-19 | 数据发送装置、通信控制方法及通信控制程序 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9703736B2 (zh) |
EP (1) | EP2882146B1 (zh) |
JP (1) | JP6174305B2 (zh) |
CN (1) | CN104541480B (zh) |
WO (1) | WO2014020779A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112438036A (zh) * | 2018-07-17 | 2021-03-02 | 株式会社自动网络技术研究所 | 车载通信装置、通信程序及消息发送方法 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150086894A (ko) * | 2014-01-21 | 2015-07-29 | 한국전자통신연구원 | 캔 통신 송신 전력 제어 장치 및 방법 |
TWI569995B (zh) * | 2014-05-30 | 2017-02-11 | Icm Inc | Information gateway and its interference with vehicle operation |
US10284387B2 (en) * | 2015-05-29 | 2019-05-07 | GM Global Technology Operations LLC | Hybrid intra-vehicle communication network |
CN105959195B (zh) * | 2016-06-23 | 2020-02-21 | 北京东土科技股份有限公司 | 工业互联网现场层宽带总线技术实现方法 |
CN106209542B (zh) * | 2016-06-23 | 2019-08-02 | 北京东土科技股份有限公司 | 工业互联网现场层宽带总线架构系统 |
JP6531750B2 (ja) | 2016-12-12 | 2019-06-19 | トヨタ自動車株式会社 | 送信装置 |
JP6698729B2 (ja) | 2018-03-15 | 2020-05-27 | ファナック株式会社 | モータ制御装置およびモータ制御方法 |
CN113452591B (zh) * | 2021-06-21 | 2023-04-07 | 合安科技技术有限公司 | 基于can总线连续数据帧的回路控制方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6970921B1 (en) * | 2001-07-27 | 2005-11-29 | 3Com Corporation | Network interface supporting virtual paths for quality of service |
US20100329272A1 (en) * | 2009-04-03 | 2010-12-30 | Honda Motor Co., Ltd. | Vehicle onboard gateway apparatus |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4593282A (en) * | 1983-04-14 | 1986-06-03 | At&T Information Systems Inc. | Network protocol for integrating synchronous and asynchronous traffic on a common serial data bus |
JPH0630472A (ja) | 1992-07-10 | 1994-02-04 | Mazda Motor Corp | 多重伝送装置 |
JPH0684083A (ja) | 1992-09-04 | 1994-03-25 | Hitachi Ltd | ビル管理システムの情報伝送方式 |
JPH07222257A (ja) | 1994-02-04 | 1995-08-18 | Mazda Motor Corp | 多重伝送装置 |
JP3503321B2 (ja) | 1996-01-16 | 2004-03-02 | 株式会社デンソー | デ−タ送信装置 |
JPH09247192A (ja) * | 1996-03-05 | 1997-09-19 | Mitsubishi Electric Corp | リアルタイム通信方式 |
JP2937867B2 (ja) * | 1996-06-25 | 1999-08-23 | 日本電気通信システム株式会社 | キュー制御方法 |
JP3702790B2 (ja) * | 2001-01-10 | 2005-10-05 | 株式会社デンソー | マイクロコンピュータ |
JP2002354000A (ja) | 2001-05-25 | 2002-12-06 | Mitsubishi Electric Corp | ブリッジ装置 |
US6694235B2 (en) * | 2001-07-06 | 2004-02-17 | Denso Corporation | Vehicular relay device, in-vehicle communication system, failure diagnostic system, vehicle management device, server device and detection and diagnostic program |
JP2003281080A (ja) * | 2002-03-20 | 2003-10-03 | Matsushita Electric Ind Co Ltd | データ転送制御装置 |
JP3828444B2 (ja) * | 2002-03-26 | 2006-10-04 | 株式会社日立製作所 | データ通信中継装置及びシステム |
JP3972724B2 (ja) * | 2002-05-10 | 2007-09-05 | セイコーエプソン株式会社 | モータ制御装置 |
JP2007158926A (ja) | 2005-12-07 | 2007-06-21 | Fujitsu Ltd | メッセージ制御プログラム、メッセージ制御装置、及びメッセージ制御方法 |
DE102006019305A1 (de) * | 2006-04-26 | 2007-10-31 | Robert Bosch Gmbh | Verfahren zur Datenübertragung von und zu einem Steuergerät |
FR2922038B1 (fr) * | 2007-10-05 | 2011-06-10 | Peugeot Citroen Automobiles Sa | Procede de gestion des trames de donnees dans un bus de communication de type bus can |
WO2009093473A1 (ja) * | 2008-01-25 | 2009-07-30 | Panasonic Corporation | 中継装置、端末、優先通信制御方法、プログラム及び記録媒体 |
JP5147533B2 (ja) * | 2008-05-20 | 2013-02-20 | 株式会社オートネットワーク技術研究所 | 中継装置及び中継方法 |
JPWO2009147734A1 (ja) * | 2008-06-04 | 2011-10-20 | ルネサスエレクトロニクス株式会社 | 車両、メンテナンス装置、メンテナンスサービスシステム及びメンテナンスサービス方法 |
JP5326897B2 (ja) * | 2009-07-17 | 2013-10-30 | 株式会社デンソー | 通信システム |
JP5578713B2 (ja) * | 2010-06-28 | 2014-08-27 | ルネサスエレクトロニクス株式会社 | 情報処理装置 |
JP2012080379A (ja) * | 2010-10-04 | 2012-04-19 | Renesas Electronics Corp | 半導体データ処理装置及びデータ処理システム |
US9064050B2 (en) * | 2010-10-20 | 2015-06-23 | Qualcomm Incorporated | Arbitrating bus transactions on a communications bus based on bus device health information and related power management |
DE102012204586A1 (de) * | 2012-03-22 | 2013-10-17 | Bayerische Motoren Werke Aktiengesellschaft | Gateway, Knoten und Verfahren für ein Fahrzeug |
-
2012
- 2012-08-03 JP JP2012172697A patent/JP6174305B2/ja active Active
- 2012-10-19 EP EP12882258.2A patent/EP2882146B1/en not_active Not-in-force
- 2012-10-19 CN CN201280075118.XA patent/CN104541480B/zh not_active Expired - Fee Related
- 2012-10-19 WO PCT/JP2012/077164 patent/WO2014020779A1/ja active Application Filing
- 2012-10-19 US US14/417,359 patent/US9703736B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6970921B1 (en) * | 2001-07-27 | 2005-11-29 | 3Com Corporation | Network interface supporting virtual paths for quality of service |
US20100329272A1 (en) * | 2009-04-03 | 2010-12-30 | Honda Motor Co., Ltd. | Vehicle onboard gateway apparatus |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112438036A (zh) * | 2018-07-17 | 2021-03-02 | 株式会社自动网络技术研究所 | 车载通信装置、通信程序及消息发送方法 |
CN112438036B (zh) * | 2018-07-17 | 2022-07-15 | 株式会社自动网络技术研究所 | 车载通信装置、记录介质及消息发送方法 |
Also Published As
Publication number | Publication date |
---|---|
EP2882146B1 (en) | 2017-11-22 |
CN104541480B (zh) | 2018-06-29 |
US20150212958A1 (en) | 2015-07-30 |
WO2014020779A1 (ja) | 2014-02-06 |
EP2882146A4 (en) | 2015-08-19 |
JP6174305B2 (ja) | 2017-08-02 |
US9703736B2 (en) | 2017-07-11 |
EP2882146A1 (en) | 2015-06-10 |
JP2014033339A (ja) | 2014-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104541480A (zh) | 数据发送装置、通信控制方法及通信控制程序 | |
US7260609B2 (en) | Method and communication system for data exchanging data between users of a bus system | |
US7801173B2 (en) | Communication message conversion apparatus and communication message conversion method | |
US10153825B2 (en) | Vehicle-mounted control device | |
EP3531639B1 (en) | Method and system for controlling access to a communications medium | |
KR100280642B1 (ko) | 이더넷 컨트롤러의 메모리 관리 장치 및 그 제어방법 | |
US5696911A (en) | Arrangement for eliminating malfunction and/or permitting high-speed transmission in a serial bus connection, and transmitter and receiver units linked to the latter | |
CN112099465A (zh) | 车辆诊断通信装置及方法、包括车辆诊断通信装置的系统 | |
US20240031199A1 (en) | Anomaly determination method, anomaly determination device, and recording medium | |
US6754184B2 (en) | Information processing apparatus and method, and distribution medium | |
US20180367335A1 (en) | Relay device | |
US20120281712A1 (en) | Transmitting-receiving apparatuses and methods for transmitting and receiving data | |
JP5110998B2 (ja) | 分配装置、通信システム及び通信方法 | |
US20200162232A1 (en) | Operation method of communication node for time synchronization in vehicle network | |
CN113545012B (zh) | 通信装置、通信系统及消息仲裁方法 | |
EP2437437B1 (en) | Semiconductor integrated circuit device | |
WO2014016885A1 (ja) | 通信装置 | |
KR101301078B1 (ko) | 플렉스레이 네트워크 제어 시스템, 장치 및 방법 | |
CN108234352B (zh) | 电子控制单元和数据发送方法 | |
JP2005145262A (ja) | 車載用lanシステム | |
JP7312022B2 (ja) | 通信装置、及び、通信方法 | |
EP1487164A2 (en) | Communication apparatus, method, program and recording medium, where the legality of a disconnection request is judged | |
CN115039388A (zh) | 通信控制机器及通信控制机器的控制方法 | |
CN117221997A (zh) | 分布式异构无线网络调控方法、装置、系统、终端及介质 | |
JP2022085574A (ja) | 車載通信装置、車載通信システム及び車載通信方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180629 |