本公开涉及消息处理技术,该技术用于包括特性互不相同的多个网络的车载网络中的消息(message)的收发(发送和接收)。
背景技术:
近年来,在汽车中的系统内,配置有许多被称为电子控制单元(ecu:electroniccontrolunit)的装置。连接这些ecu的网络被称为车载网络。车载网络存在多种标准。作为其中最主流的车载网络之一,存在由iso11898-1规定的can(controllerareanetwork,控制器局域网络)这一标准。在can中,与作为有线传输路径的总线(bus)连接的各ecu(节点)对帧(消息)进行收发。另外,在can中不存在指示送达地(接收方)和/或发送源的标识符,发送节点对每一帧附加id(can-id)而进行发送(也就是说向总线送出信号),各接收节点仅接收预先确定的can-id的消息(也就是说从总线读取信号)。在can中,can-id与消息的优先级相关,在多个节点同时向总线发送消息的情况下,根据can-id的值进行通信仲裁。通过通信仲裁等,能够避免在总线上消息发生冲突而消失这一情况,因此can网络适于如数据的消失可能会妨碍车辆安全行驶这样的、车辆的行驶控制用数据的传输等。
另外,已知先进驾驶辅助(支援)系统(adas:advanceddriverassistancesystem)。在adas的功能(例如停靠辅助功能、车道维持辅助功能、碰撞回避辅助功能等)中,例如利用由连接于车载网络的传感器取得的信息也就是说由车载摄像头拍摄到的图像、由激光雷达(lidar:lightdetectionandranging)取得的信息,基于该信息,在ecu中识别车辆的周边环境并根据识别结果来进行车辆的控制。由于adas的高度发展,在车载网络中通信的信息的量(数据量)可能会增加。在can中能够由一帧(标准格式的数据帧)发送的数据小于等于8个字节,因此不适于像由车载摄像头拍摄到的图像等这样的数据量较大的数据的传输。
作为用于传输更多信息的标准,存在由ieee802.3规定的ethernet(以太网)(注册商标)这一标准。ethernet(注册商标)的帧使指示发送目的地和/或发送源的信息包含于报头(head)。在ethernet(注册商标)中,能够由一帧发送的最大数据量比can的大,且通信速度快。如上所述,能避免消息消失的can网络更适合于车辆的行驶控制用数据的传输,而由车载摄像头拍摄到的图像等数据即便稍有消失其不良影响也不大。因此,ethernet(注册商标)网络比can网络更适合于由车载摄像头拍摄到的图像等较大的数据的传输等。
在专利文献1中,记载了在遵循can协议的设备与遵循ethernet(注册商标)协议等的设备之间进行对消息的中继的网关。
现有技术文献
专利文献1:日本特开2016-111477号公报
技术实现要素:
发明所要解决的问题
与专利文献1涉及的网关同样地,用于在车载网络系统中实现adas的功能的电子控制单元(ecu)连接于can网络与ethernet(注册商标)网络的双方是有用的。专利文献1并没有示出网关在连接于can总线的电子控制单元(以下也称作“c-ecu”)与具备ethernet(注册商标)的接口的电子控制单元(以下也称作“e-ecu”)之间对消息进行收发的处理的具体内容。
于是,本公开提供一种电子控制单元(ecu),其在包括特性互不相同的第1网络(例如进行涉及车辆的行驶控制的帧的传输的can等控制系统网络)以及第2网络(例如进行图像等大容量数据的传输的ethernet(注册商标)等信息系统网络)的车载网络系统中,连接于该两种网络并有效利用该两种网络各自的特性,从而适当地进行用于各种数据收发的控制。另外,本公开提供该电子控制单元中所使用的通信方法以及包括该电子控制单元的车载网络系统。
用于解决问题的技术方案
为了解决上述问题,本公开的一个技术方案涉及的电子控制单元是在包括第1网络和第2网络的车载网络系统中与第1网络的总线和第2网络连接的电子控制单元,所述第1网络遵循第1通信协议用所述总线进行车辆的行驶控制所涉及的第1种帧的传输,所述第2网络遵循与第1通信协议不同的第2通信协议进行第2种帧的传输,所述电子控制单元具备:第1接收缓冲器;第2接收缓冲器;第1发送缓冲器;第2发送缓冲器;第1接收部,其从所述总线逐次接收第1种帧,将该第1种帧内的数据保存于所述第1接收缓冲器;第2接收部,其从第2网络逐次接收第2种帧,将该第2种帧内的数据保存于所述第2接收缓冲器;生成部,其通过参照所述第1接收缓冲器和所述第2接收缓冲器的内容,逐次生成第1种数据和第2种数据,将生成的第1种数据保存于所述第1发送缓冲器,将生成的第2种数据保存于所述第2发送缓冲器,所述第1种数据是车辆的行驶控制用的数据,所述第2种数据是在车辆的行驶控制以外所使用的数据;以及发送部,其发送所述第1发送缓冲器中的未发送的第1种数据和所述第2发送缓冲器中的未发送的第2种数据,所述发送部进行优先发送控制,以使得对作为第1种数据和第2种数据中的一方的优先种类数据优先于作为另一方的非优先种类数据进行发送。
另外,为了解决上述问题,本公开的一个技术方案涉及的通信方法是电子控制单元中所使用的通信方法,所述电子控制单元在包括第1网络和第2网络的车载网络系统中与第1网络的总线和第2网络连接,具备第1接收缓冲器、第2接收缓冲器、第1发送缓冲器以及第2发送缓冲器,所述第1网络遵循第1通信协议用所述总线进行车辆的行驶控制所涉及的第1种帧的传输,所述第2网络遵循与第1通信协议不同的第2通信协议进行第2种帧的传输,所述通信方法包括:第1接收步骤,从所述总线逐次接收第1种帧,将该第1种帧内的数据保存于第1接收缓冲器;第2接收步骤,从第2网络逐次接收第2种帧,将该第2种帧内的数据保存于第2接收缓冲器;生成步骤,通过参照所述第1接收缓冲器和所述第2接收缓冲器的内容,逐次生成第1种数据和第2种数据,将生成的第1种数据保存于第1发送缓冲器,将生成的第2种数据保存于第2发送缓冲器,所述第1种数据是车辆的行驶控制用的数据,所述第2种数据是在车辆的行驶控制以外所使用的数据;发送步骤,发送所述第1发送缓冲器中的未发送的第1种数据和所述第2发送缓冲器中的未发送的第2种数据,在所述发送步骤中进行优先发送控制,以使得对作为第1种数据和第2种数据中的一方的优先种类数据优先于作为另一方的非优先种类数据进行发送。
另外,为了解决上述问题,本公开的一个技术方案涉及的车载网络系统具备遵循第1通信协议用总线进行车辆的行驶控制所涉及的第1种帧的传输的第1网络、遵循与第1通信协议不同的第2通信协议进行第2种帧的传输的第2网络、连接于所述总线的电子控制单元、连接于第2网络的电子控制单元、以及连接于所述总线和第2网络的预定电子控制单元,所述预定电子控制单元具备:第1接收缓冲器;第2接收缓冲器;第1发送缓冲器;第2发送缓冲器;第1接收部,其从所述总线逐次接收第1种帧,将该第1种帧内的数据保存于所述第1接收缓冲器;第2接收部,其从第2网络逐次接收第2种帧,将该第2种帧内的数据保存于所述第2接收缓冲器;生成部,其通过参照所述第1接收缓冲器和所述第2接收缓冲器的内容,逐次生成第1种数据和第2种数据,将生成的第1种数据保存于所述第1发送缓冲器,将生成的第2种数据保存于所述第2发送缓冲器,所述第1种数据是车辆的行驶控制用的数据,所述第2种数据是在车辆的行驶控制以外所使用的数据;以及发送部,其发送所述第1发送缓冲器中的未发送的第1种数据和所述第2发送缓冲器中的未发送的第2种数据,所述发送部进行优先发送控制,以使得对作为第1种数据和第2种数据中的一方的优先种类数据优先于作为另一方的非优先种类数据进行发送。
发明效果
根据本公开,包括彼此因通信协议不同故特性不同的第1网络以及第2网络的车载网络系统的电子控制单元优先发送依据各网络的特性所预先确定的适于一方网络的数据。因此,例如能够适当地实现车辆中的adas的功能所涉及的数据的传输等。
附图说明
图1是表示实施方式1涉及的车载网络系统中的包括两个网络的车载网络的图。
图2是表示实施方式1涉及的车载网络系统的概略构成的图。
图3是表示由can协议规定的数据帧(也称为“can帧”)的格式的图。
图4是表示由车载网络的一部分收发的ethernet(注册商标)帧(也称为“e帧”)的格式的图。
图5是实施方式1涉及的与两个网络连接的电子控制单元(也称为“x-ecu”)的构成图。
图6是表示实施方式1涉及的电子控制单元(x-ecu)、网络集线器(hub)等中所使用的接收id列表的一例的图。
图7是实施方式1涉及的hub的构成图。
图8是表示实施方式1涉及的hub中所使用的转发规则信息的一例的图。
图9是表示实施方式1涉及的x-ecu所进行的数据处理的一例的流程图。
图10是表示实施方式1涉及的x-ecu所进行的接收数据读取处理的一例的流程图。
图11是表示实施方式1涉及的x-ecu所进行的发送数据生成处理的一例的流程图。
图12是表示实施方式1涉及的x-ecu所进行的数据发送处理的一例的流程图(后接图13)。
图13是表示实施方式1涉及的x-ecu所进行的数据发送处理的一例的流程图(前接图12)。
图14是表示实施方式1涉及的hub所进行的数据转发处理的一例的流程图。
图15是表示实施方式1涉及的hub所进行的转发数据生成处理的一例的流程图。
图16是表示实施方式1涉及的x-ecu的adas功能的处理时序的一例的时序图。
图17是表示实施方式1涉及的hub的转发功能所关联的通信时序的一例的图。
图18是表示实施方式1的变形例涉及的接收数据读取处理的一例的流程图。
图19是表示实施方式1的变形例涉及的数据发送处理的一例的流程图。
图20是表示实施方式2涉及的车载网络系统的概略构成的图。
图21是表示实施方式2涉及的hub中所使用的优先级控制信息的一例的图。
图22是表示实施方式2涉及的hub的转发功能所关联的通信时序的一例的图。
图23是表示变形例1涉及的车载网络系统的概略构成的图。
图24是表示变形例2涉及的车载网络系统的概略构成的图。
图25是表示变形例3涉及的车载网络系统的概略构成的图。
图26是表示变形例4涉及的车载网络系统的概略构成的图。
图27是表示变形例5涉及的车载网络系统的概略构成的图。
图28是表示变形例6涉及的车载网络系统的概略构成的图。
具体实施方式
本公开的一个技术方案涉及的电子控制单元(ecu),是在包括第1网络和第2网络的车载网络系统中与第1网络的总线和第2网络连接的电子控制单元,所述第1网络遵循第1通信协议用所述总线进行车辆的行驶控制所涉及的第1种帧的传输,所述第2网络遵循与第1通信协议不同的第2通信协议进行第2种帧的传输,所述电子控制单元具备:第1接收缓冲器;第2接收缓冲器;第1发送缓冲器;第2发送缓冲器;第1接收部,其从所述总线逐次接收第1种帧,将该第1种帧内的数据保存于所述第1接收缓冲器;第2接收部,其从第2网络逐次接收第2种帧,将该第2种帧内的数据保存于所述第2接收缓冲器;生成部,其通过参照所述第1接收缓冲器和所述第2接收缓冲器的内容,逐次生成第1种数据和第2种数据,将生成的第1种数据保存于所述第1发送缓冲器,将生成的第2种数据保存于所述第2发送缓冲器,所述第1种数据是车辆的行驶控制用的数据,所述第2种数据是在车辆的行驶控制以外所使用的数据;以及发送部,其发送所述第1发送缓冲器中的未发送的第1种数据和所述第2发送缓冲器中的未发送的第2种数据,所述发送部进行优先发送控制,以使得对作为第1种数据和第2种数据中的一方的优先种类数据优先于作为另一方的非优先种类数据进行发送。该电子控制单元是与第1网络的总线和第2网络连接的通信装置,将遵循数据的发送目的地的网络中所使用的通信协议的帧作为与发送目的地的网络相应的信号来发送。根据该电子控制单元,例如向第1网络发送的数据流和向第2网络发送的数据流中,其一方能够被优先(也就是说其一方的数据的发送能够先被进行)。因此,根据该电子控制单元,只要依照第1网络和第2网络各自的特性适当地确定优先种类数据,就能够通过优先发送控制适当地进行数据的传输。
另外,也可以为,所述优先种类数据是第1种数据,所述发送部在预定的例外条件不成立的情况下,通过将包含第1种数据的第1种帧向第1网络的所述总线送出从而进行该第1种数据的发送,在所述例外条件成立的情况下,通过将包含第1种数据的第2种帧向第2网络送出从而进行该第1种数据的发送,所述发送部通过将包含第2种数据的第2种帧向第2网络送出从而进行该第2种数据的发送。另外,也可以为,所述预定的例外条件是在检测到第1网络的一部分存在异常的情况下成立的条件。由此,当在将数据发送到第1网络时存在无法适当地传输的可能性的情况下,进行利用第2网络作为迂回路径的第1种数据(也就是说在例外条件不成立的通常状态等状态下应向第1网络发送的数据)的发送。第1发送缓冲器中的第1种数据能够通过该电子控制单元在作为迂回路径的第2网络中发送,之后例如通过与第2网络以及第1网络连接的中继装置(hub等)重新从第2网络向送达地的第1网络移送。而且,即使当第1发送缓冲器中的第1种数据与第2发送缓冲器中的第2种数据在第2网络中发生冲突的情况下,通过使第1种数据优先的优先发送控制,各数据也能按适当的顺序来发送。即,应该向适于对车辆的行驶控制所涉及的数据的传输的第1网络发送的第1种数据得以优先,因此能够防止其他数据(例如图像等大容量数据)的传输对车辆的安全行驶等造成不良影响。此外,在使该电子控制单元的、实现对第1发送缓冲器的数据的发送的构成(例如通信电路、处理器等)与实现对第2发送缓冲器的数据的发送的构成的一部分共通化的情况下,也能够通过使车辆的行驶控制所涉及的数据的发送优先,防止其他数据的传输对车辆的安全行驶等造成不良影响。
另外,也可以为,所述发送部通过如下方式进行所述优先发送控制:反复确认所述第1发送缓冲器和所述第2发送缓冲器,当在确认时所述第1发送缓冲器中存在未发送的第1种数据、并且所述第2发送缓冲器中存在未发送的第2种数据的情况下,发送该第1种数据和该第2种数据中的所述优先种类数据,当在确认时所述第1发送缓冲器中存在未发送的第1种数据、并且所述第2发送缓冲器中不存在未发送的第2种数据的情况下,发送该第1种数据,当在确认时所述第1发送缓冲器中不存在未发送的第1种数据、并且所述第2发送缓冲器中存在未发送的第2种数据的情况下,发送该第2种数据。由此,在应向第1网络发送的第1种数据和应将第2网络作为送达地进行发送的第2种数据存在于各发送缓冲器的情况下,电子控制单元先发送第1种数据和第2种数据中预先确定的一方(也就是说优先种类数据),因此该一方数据能够迅速地被发送。
另外,也可以为,所述发送部通过如下方式进行所述优先发送控制:反复确认所述第1发送缓冲器和所述第2发送缓冲器,当在确认时所述第1发送缓冲器中存在未发送的第1种数据、并且所述第2发送缓冲器中存在未发送的第2种数据的情况下,在将该第1种数据和该第2种数据中的所述优先种类数据发送预定数量后发送一条所述非优先种类数据,当在确认时所述第1发送缓冲器中存在未发送的第1种数据、并且所述第2发送缓冲器中不存在未发送的第2种数据的情况下,发送该第1种数据,当在确认时所述第1发送缓冲器中不存在未发送的第1种数据、并且所述第2发送缓冲器中存在未发送的第2种数据的情况下,发送该第2种数据。为了使得优先发送发送缓冲器中的优先种类数据,预定数量例如可以确定为比优先种类数据的1份大的数量(例如两个以上的数据的个数、1份数据的2倍以上的数据量等)。由此,例如能够防止由于发送缓冲器中的优先种类数据的连续发送而使非优先种类数据完全不被发送。
另外,也可以为,所述发送部通过如下方式进行所述优先发送控制:反复确认所述第1发送缓冲器和所述第2发送缓冲器,当在确认时所述第1发送缓冲器中存在未发送的第1种数据、并且所述第2发送缓冲器中存在未发送的第2种数据的情况下,在该第1种数据和该第2种数据中的所述非优先种类数据的未发送时间不超过预定阈值时,发送所述优先种类数据,在该未发送时间超过了所述预定阈值时,发送所述非优先种类数据,当在确认时所述第1发送缓冲器中存在未发送的第1种数据、并且所述第2发送缓冲器中不存在未发送的第2种数据的情况下,发送该第1种数据,当在确认时所述第1发送缓冲器中不存在未发送的第1种数据、并且所述第2发送缓冲器中存在未发送的第2种数据的情况下,发送该第2种数据。为了使得优先发送发送缓冲器中的优先种类数据,例如可以确定比优先种类数据的1份的发送所需的时间长的时间,作为未发送时间涉及的预定阈值。由此,例如能够防止由于优先种类数据的连续发送而使非优先种类数据完全不被发送。
另外,也可以为,所述生成部将第1种数据作为至少基于从所述第1接收缓冲器读取到的第1种帧涉及的数据的处理结果来生成,将第2种数据作为至少基于从所述第2接收缓冲器读取到的第2种帧涉及的数据的处理结果来生成,所述生成部进行优先读取控制,以使得对作为所述第1接收缓冲器和所述第2接收缓冲器中的一方的优先接收缓冲器的内容优先于作为另一方的非优先接收缓冲器的内容进行读取。由此,例如能够在使电子控制单元的、实现读取第1接收缓冲器的数据并至少基于该数据生成应发送的数据的构成(例如处理器等)与实现读取第2接收缓冲器的数据并至少基于该数据生成应发送的数据的构成的一部分共通化等情况下,与应实现迅速传输的网络对应地使一方的接收缓冲器的数据的读取优先。
另外,也可以为,所述生成部通过如下方式进行所述优先读取控制:反复确认所述第1接收缓冲器和所述第2接收缓冲器,当在确认时所述第1接收缓冲器中存在未读取的数据、并且所述第2接收缓冲器中存在未读取的数据的情况下,读取所述第1接收缓冲器和所述第2接收缓冲器中的所述优先接收缓冲器中的未读取的数据,当在确认时所述第1接收缓冲器中存在未读取的数据、并且所述第2接收缓冲器中不存在未读取的数据的情况下,读取所述第1接收缓冲器中的未读取的数据,当在确认时所述第1接收缓冲器中不存在未读取的数据、并且所述第2接收缓冲器中存在未读取的数据的情况下,读取所述第2接收缓冲器中的未读取的数据。由此,当存在从第1网络接收到的未读取的数据(也就是说尚未进行读取的数据)和从第2网络接收到的未读取的数据的情况下,先读取与预先确定的优先接收缓冲器对应的一方的数据,因此基于该一方的数据生成的数据能够被迅速地发送。
另外,也可以为,所述生成部通过如下方式进行所述优先读取控制:反复确认所述第1接收缓冲器和所述第2接收缓冲器,当在确认时所述第1接收缓冲器中存在未读取的数据、并且所述第2接收缓冲器中存在未读取的数据的情况下,在将所述第1接收缓冲器和所述第2接收缓冲器中的所述优先接收缓冲器中的未读取的数据读取预定数量后读取所述非优先接收缓冲器中的一条未读取的数据,当在确认时所述第1接收缓冲器中存在未读取的数据、并且所述第2接收缓冲器中不存在未读取的数据的情况下,读取所述第1接收缓冲器中的未读取的数据,当在确认时所述第1接收缓冲器中不存在未读取的数据、并且所述第2接收缓冲器中存在未读取的数据的情况下,读取所述第2接收缓冲器中的未读取的数据。为了使得优先接收缓冲器中的数据被优先读取,预定数量例如可以确定为比优先接收缓冲器中的数据的1份大的数量(例如两个以上的数据的个数、1份数据的2倍以上的数据量等)。由此,例如能够防止由于连续地读取优先接收缓冲器中的数据而使非优先接收缓冲器中的数据完全不被读取和发送。
另外,也可以为,所述生成部通过如下方式进行所述优先读取控制:反复确认所述第1接收缓冲器和所述第2接收缓冲器,当在确认时所述第1接收缓冲器中存在未读取的数据、并且所述第2接收缓冲器中存在未读取的数据的情况下,在所述第1接收缓冲器和所述第2接收缓冲器中的所述非优先接收缓冲器中的未读取的数据的该未读取时间不超过一定阈值时,读取所述优先接收缓冲器中的未读取的数据,在该未读取时间超过了所述一定阈值时,读取所述非优先接收缓冲器中的未读取的数据,当在确认时所述第1接收缓冲器中存在未读取的数据、并且所述第2接收缓冲器中不存在未读取的数据的情况下,读取所述第1接收缓冲器中的未读取的数据,当在确认时所述第1接收缓冲器中不存在未读取的数据、并且所述第2接收缓冲器中存在未读取的数据的情况下,读取所述第2接收缓冲器中的未读取的数据。为了使得优先接收缓冲器中的数据被优先读取,例如可以确定比优先接收缓冲器中的数据的1份的读取所需的时间长的时间,作为未读取时间(也就是说尚未进行读取的时间)涉及的一定阈值。由此,例如能够防止由于连续地读取优先接收缓冲器中的数据而使非优先接收缓冲器中的数据完全不被读取。
另外,也可以为,在所述车辆的行驶期间,所述优先接收缓冲器为第1接收缓冲器,在所述车辆的停止期间,所述优先接收缓冲器为第2接收缓冲器。由此,例如在车辆的行驶期间,能够迅速地进行对基于接收到的车辆的行驶控制所涉及的数据生成的数据的发送,在车辆的停止期间,能够迅速地进行对基于车辆的行驶控制所涉及的数据以外的接收到的数据(例如图像、声音等这样的多媒体数据等)生成的数据的发送。
另外,也可以为,第1通信协议是can协议即控制器局域网络协议,第2通信协议是ethernet协议,第1种帧是数据帧,第2种帧是ethernet帧。由此,能够根据必要的优先级,适当地对基于从适于车辆的行驶控制所涉及的数据的传输的can网络、和适于图像等大容量数据的传输的ethernet(注册商标)网络中的某一网络接收到的数据而生成的数据进行发送。
另外,也可以为,遵循第2种通信协议的第2种帧的最大数据量比遵循第1种通信协议的第1种帧的最大数据量大。由此,例如能够按照根据各网络的特性所确定的优先级(确定优先种类数据的信息等),适当地对基于从作为适于车辆的行驶控制所涉及的数据的传输的控制系统网络的第1网络、和作为由于传输单位的最大数据量大等而适于图像等大容量数据的传输的信息系统网络的第2网络中的某一网络接收到的数据而生成的数据进行发送。
另外,也可以为,在所述车辆的行驶期间,所述优先种类数据为第1种数据,在所述车辆的停止期间,所述优先种类数据为第2种数据。由此,例如在车辆的行驶期间,能够迅速地进行对应向适于车辆的行驶控制所涉及的传输的第1网络发送的第1种数据的传输,在车辆的停止期间,能够迅速地进行对应向适于车辆的行驶控制所涉及的数据以外的数据(例如图像、声音等这样的多媒体数据等)的传输的第2网络发送的第2种数据的传输。
另外,本公开的一个技术方案涉及的通信方法,是电子控制单元中所使用的通信方法,所述电子控制单元在包括第1网络和第2网络的车载网络系统中与第1网络的总线和第2网络连接,具备第1接收缓冲器、第2接收缓冲器、第1发送缓冲器以及第2发送缓冲器,所述第1网络遵循第1通信协议用所述总线进行车辆的行驶控制所涉及的第1种帧的传输,所述第2网络遵循与第1通信协议不同的第2通信协议进行第2种帧的传输,所述通信方法包括:第1接收步骤,从所述总线逐次接收第1种帧,将该第1种帧内的数据保存于第1接收缓冲器;第2接收步骤,从第2网络逐次接收第2种帧,将该第2种帧内的数据保存于第2接收缓冲器;生成步骤,通过参照所述第1接收缓冲器和所述第2接收缓冲器的内容,逐次生成第1种数据和第2种数据,将生成的第1种数据保存于第1发送缓冲器,将生成的第2种数据保存于第2发送缓冲器,所述第1种数据是车辆的行驶控制用的数据,所述第2种数据是在车辆的行驶控制以外所使用的数据;发送步骤,发送所述第1发送缓冲器中的未发送的第1种数据和所述第2发送缓冲器中的未发送的第2种数据,在所述发送步骤中进行优先发送控制,以使得对作为第1种数据和第2种数据中的一方的优先种类数据优先于作为另一方的非优先种类数据进行发送。由此,只要依照第1网络和第2网络各自的特性适当地确定优先种类数据,就能够通过优先发送控制适当地进行数据的传输。
另外,本公开的一个技术方案涉及的车载网络系统,具备遵循第1通信协议用总线进行车辆的行驶控制所涉及的第1种帧的传输的第1网络、遵循与第1通信协议不同的第2通信协议进行第2种帧的传输的第2网络、连接于所述总线的电子控制单元、连接于第2网络的电子控制单元、以及连接于所述总线和第2网络的预定电子控制单元,所述预定电子控制单元具备:第1接收缓冲器;第2接收缓冲器;第1发送缓冲器;第2发送缓冲器;第1接收部,其从所述总线逐次接收第1种帧,将该第1种帧内的数据保存于所述第1接收缓冲器;第2接收部,其从第2网络逐次接收第2种帧,将该第2种帧内的数据保存于所述第2接收缓冲器;生成部,其通过参照所述第1接收缓冲器和所述第2接收缓冲器的内容,逐次生成第1种数据和第2种数据,将生成的第1种数据保存于所述第1发送缓冲器,将生成的第2种数据保存于所述第2发送缓冲器,所述第1种数据是车辆的行驶控制用的数据,所述第2种数据是在车辆的行驶控制以外所使用的数据;以及发送部,其发送所述第1发送缓冲器中的未发送的第1种数据和所述第2发送缓冲器中的未发送的第2种数据,所述发送部进行优先发送控制,以使得对作为第1种数据和第2种数据中的一方的优先种类数据优先于作为另一方的非优先种类数据进行发送。由此,预定电子控制单元能够通过优先发送控制向与互不相同的网络的一个网络连接的各装置(电子控制单元等)适当地发送数据。
此外,这些总括性的或者具体的技术方案既可以通过系统、方法、集成电路、计算机程序或者计算机可读取的cd-rom等记录介质来实现,也可以通过系统、方法、集成电路、计算机程序或记录介质的任意组合来实现。
以下,参照附图,对包括实施方式涉及的电子控制单元(ecu)以及网络集线器(hub)的车载网络系统进行说明。在此所示的实施方式均表示本公开的一个具体例。因此,在以下的实施方式中示出的数值、构成要素、构成要素的配置以及连接形态、步骤(工序)以及步骤的顺序等仅为一例而并非限定本公开。关于以下的实施方式中的构成要素中的未记载于独立权利要求中的构成要素,是能够任意附加的构成要素。另外,各附图为示意图,不一定是严格图示。
(实施方式1)
以下,作为本公开的实施方式,使用附图,说明包括在车载网络中进行数据的授受(交换)的多个电子控制单元(ecu)以及网络集线器(hub)的车载网络系统10。
[1.1车载网络系统10的整体构成]
图1是表示车载网络系统10中的包括两个网络的车载网络11的图。
车辆9搭载控制装置、传感器、致动器、用户接口装置、电子控制单元(ecu)等各种设备。车载网络系统10是具有搭载于车辆9的传感器、ecu等各种装置用于协作并进行信息的授受的车载网络11的网络通信系统。车载网络11构成为包括:控制系统网络1(第1网络),其遵循can(controllerareanetwork)协议,用总线(can总线)进行车辆9的行驶控制涉及的数据帧(can帧)等各种帧的传输;和信息系统网络2(第2网络),其遵循ethernet(注册商标)协议,进行ethernet(注册商标)帧(e帧)的传输。车载网络11能够与车辆9的外部的网络等这样的外部网络91进行无线连接。
由ethernet(注册商标)协议规定的e帧的最大数据量(1500字节以上)比由can协议规定的can帧的最大数据量(按标准格式为8字节)大得多。在控制系统网络1的总线上,连接与车辆9的行驶控制关联的电子控制单元(c-ecu)等。在控制系统网络1中,主要传输诸如成为车辆9的行驶控制的基础的表示车辆9的状态的车辆状态数据、表示搭载于车辆9的致动器的工作指示等的行驶控制用的车辆控制数据等较小的数据。另外,信息系统网络2上连接如车载摄像头(也就是说图像传感器)、lidar等这样的对车辆9周围的情况等进行观测的各种传感器。信息系统网络2上也能够连接用于进行对来自传感器的信息的处理、向车辆9的乘员(用户)的信息提供等的电子控制单元(e-ecu)。在信息系统网络2中,主要传输由车载摄像头拍摄到的图像、由lidar生成的三维数据等这样的传感器信息(例如由传感器生成的较大的数据等)。
图2表示车载网络系统10的整体构成。如图2所示,车载网络系统10具备控制系统网络1、信息系统网络2、与它们两种网络连接的网络集线器(hub)200、和与两种网络连接的电子控制单元100(称为“x-ecu”)。
控制系统网络1中的传输路径即总线30a上连接有c-ecu500a~500c,c-ecu500a~500c是具备遵循can协议的通信接口的电子控制单元(ecu)。c-ecu500a~500c的各个例如是承担对发动机的控制的发动机控制ecu、承担对转向器的控制的转向器控制ecu、承担对制动器的控制的制动器控制ecu等。c-ecu500a~500c经由总线30a相互通信,遵循can协议进行帧的授受。c-ecu500a~500c分别取得发动机、转向器、制动器等的状态,例如周期性地将表示状态的数据帧(can帧)发送到构成控制系统网络1的总线30a。另外,c-ecu500a~500c从构成控制系统网络1的总线30a接收can帧,对can帧进行解释,进行是否是具有应该接收的can-id的can帧的判别,并能够根据需要按照can帧内的数据(数据域的内容)进行与该c-ecu连接的发动机、转向器、制动器等所涉及的控制,还能够根据需要生成并发送can帧。
在信息系统网络2中,通过作为与ethernet(注册商标)对应的网络集线器的e-hub400、和作为传输路径的ethernet(注册商标)电缆20a~20d的各电缆,连接有作为具备遵循ethernet(注册商标)协议的通信接口的电子控制单元(ecu)的e-ecu300a、摄像头300b、lidar300c以及全球测位系统(gps:globalpositioningsystem)接收机(称为“gps”)300d。e-ecu300a遵循ethernet(注册商标)协议进行e帧的发送以及接收。e-ecu300a例如也可以是具备显示器并具有进行向用户提供信息的功能的ecu。e-ecu300a、摄像头300b、lidar300c、gps300d分别具有固有的mac(mediaaccesscontrol)地址。e-hub400例如是ethernet(注册商标)交换机(交换式集线器)。e-hub400例如保持mac地址表,在接收到e帧时,学习与电缆的各连接端子(端口)对应的mac地址。另外,e-hub400依照mac地址表,基于接收到的e帧的报头的送达地mac地址来选定成为转发目的地的端口,并向与该端口连接的电缆送出e帧,由此进行e帧的转发。
x-ecu100是具备遵循can协议的通信接口以及遵循ethernet(注册商标)协议的通信接口的ecu,承担某种adas的功能(例如停靠辅助功能、车道维持辅助功能、碰撞回避辅助功能等)。x-ecu100与总线30a连接,且通过ethernet(注册商标)电缆20e与e-hub400连接。x-ecu100具有固有的mac地址。
hub200是具有通信协议变换功能并具有通信数据的中继功能的通信装置。hub200与总线30a连接,且通过ethernet(注册商标)电缆20f与e-hub400连接。hub200例如具有固有的mac地址。hub200也与外部通信装置92连接。外部通信装置92例如是具有经由外部网络91与车辆9外的服务器装置(例如具有对车辆提供信息的功能等的计算机)等进行通信的通信功能的装置。
此外,车载网络系统10中除了x-ecu100、e-ecu300a、c-ecu500a~500c以外还能够包括若干个ecu。例如在总线30a上,除了c-ecu500a~500c以外还能够连接未图示的c-ecu。另外,例如对于e-hub400,能够直接或经由其他e-hub来连接未图示的e-ecu。
ecu(e-ecu、c-ecu以及x-ecu)例如是包括处理器(微处理器)、存储器等数字电路、模拟电路、通信电路等的装置。存储器是rom、ram等,能够存储由处理器执行的程序(作为软件的计算机程序)。作为存储器,也可以包含非易失性存储器。例如通过处理器按照程序(计算机程序)进行工作,ecu实现各种功能。此外,计算机程序是为了实现预定的功能而组合多个表示对处理器的指令的命令码而构成的。
[1.2车载网络11中收发的帧的结构]
在控制系统网络1中,c-ecu500a~500c等遵循can协议进行帧的授受。can协议中的帧有数据帧、远程帧、超载帧以及错误帧,但这里主要关注数据帧来进行说明。
图3表示控制系统网络1中收发的数据帧(can帧)的格式。图3的(a)是标准格式。在标准格式中,数据帧由sof(startofframe:帧起始)、id(can-id)、rtr(remotetransmissionrequest:远程传输请求)、ide(identifierextension:标识符扩展)、预留位“r”、尺寸(size)、数据、crc(cyclicredundancycheck:循环冗余校验)序列、crc定界符“del”、ack(acknowledgement:应答)间隙、ack定界符“del”以及eof(endofframe:帧结束)构成。此处,作为id域的内容的id(can-id)是表示数据种类的标识符,也被称为消息id。此外,在can中,在多个节点同时开始发送的情况下,进行使该can-id具有小值的帧优先的通信仲裁。尺寸是表示后续的数据域(数据)的长度的dlc(datalengthcode:数据长度码)。关于数据(数据域的内容)的规格,不在can协议中规定,而是在车载网络系统10中确定。因此,能够成为取决于车辆的车型、制造者(制造商)等的规格。图3的(b)是扩展格式。在本实施方式中,设为在控制系统网络1中使用标准格式来进行说明,但当在控制系统网络1中使用扩展格式的情况下,将11比特的id域的基本id(can-id的一部分)与18比特的扩展id(can-id的剩余部分)加起来而得到的29比特视为can-id即可。
图4表示信息系统网络2中收发的帧(e帧)的格式。如该图所示,e帧在保存作为主要传输内容的数据的有效载荷(payload)前附加报头(ethernet(注册商标)帧头)而构成。报头中包含送达地mac地址、发送源mac地址以及类型。
[1.3x-ecu100的构成]
图5是x-ecu100的构成图。x-ecu100构成为包括接收部110a(第1接收部)、接收部110b(第2接收部)、接收缓冲器120a(第1接收缓冲器)、接收缓冲器120b(第2接收缓冲器)、生成部130、发送缓冲器140a(第1发送缓冲器)、发送缓冲器140b(第2发送缓冲器)、发送部150以及优先级设定部160。这些各构成要素通过x-ecu100中的通信电路、执行保存于存储器的程序的处理器或者数字电路等来实现。
接收缓冲器120a、接收缓冲器120b、发送缓冲器140a、发送缓冲器140b分别是由存储器等存储介质构成的、例如fifo(first-infirst-out:先进先出)缓冲器。接收缓冲器120a(第1接收缓冲器)也称为控制系统数据接收缓冲器,发送缓冲器140a(第1发送缓冲器)也称为控制系统数据发送缓冲器。另外,接收缓冲器120b(第2接收缓冲器)也称为信息系统数据接收缓冲器,发送缓冲器140b(第2发送缓冲器)也称为信息系统数据发送缓冲器。
接收部110a从控制系统网络1的总线30a逐次接收can帧,每当接收到can帧时,基于接收id列表确认所接收到的can帧的can-id是否是应接收的id,如果是应接收的id,则将该can帧的内容保存于接收缓冲器120a。接收部110a向接收缓冲器120a保存的can帧的内容例如是对数据(数据域的内容)附加了can-id、尺寸(dlc)等的信息。图6表示x-ecu100使用的接收id列表的一例。x-ecu100的接收id列表中例如记载有包含车辆状态数据等的can帧的can-id。接收部110a在接收到的can帧的can-id是没有表示在接收id列表中的id时,中止该can帧的接收,且不将该can帧的内容保存于接收缓冲器120a。
接收部110b从信息系统网络2的电缆20e逐次接收例如包含x-ecu100的mac地址等作为送达地mac地址的e帧,每当接收到e帧时,将该e帧的内容保存于接收缓冲器120b。接收部110b向接收缓冲器120b保存的e帧的内容例如是数据(有效载荷的内容)。例如从摄像头300b、lidar300c、gps300d等各种传感器,以x-ecu100作为送达地,发送将图像及其他数据包含于有效载荷的e帧,接收部110b接收该e帧。
生成部130通过参照接收缓冲器120a以及接收缓冲器120b的内容,逐次生成作为车辆9的行驶控制用数据的控制系统数据(第1种数据)和作为在车辆9的行驶控制以外使用的数据的信息系统数据(第2种数据),将所生成的控制系统数据保存于发送缓冲器140a(控制系统数据发送缓冲器),将所生成的信息系统数据保存于发送缓冲器140b(信息系统数据发送缓冲器)。生成部130构成为包括检测部131、控制判断部132和数据生成部133。
检测部131基于从控制系统数据接收缓冲器或者信息系统数据接收缓冲器读取的数据,检测与车辆9的周边环境的情况、车辆9的状态等有关的预先确定的各种项目(例如与车辆9的前进道路上的障碍物的距离、与障碍物的相对速度、路面所显示的白色、黄色等的线与车辆9的行进方向所成的角度等)。检测部131在从控制系统数据接收缓冲器以及信息系统数据接收缓冲器分别读取数据的情况下,基于优先级设定部160所设定的优先信息(例如用于确定应优先进行读取的优先接收缓冲器的信息等),进行优先读取控制,以使得对作为控制系统数据接收缓冲器和信息系统数据接收缓冲器中的一方的优先接收缓冲器的内容优先于作为另一方的非优先接收缓冲器的内容进行读取。优先级设定部160在存储器等存储介质的一个区域保持优先信息。此外,作为本实施方式中的一例,在优先级设定部160中,优先信息被设定为表示控制系统数据接收缓冲器是应比信息系统数据接收缓冲器优先地被读取数据的接收缓冲器这一情况。在各接收缓冲器120a、120b中,当数据被读取了的情况下,例如从接收缓冲器擦除该数据。
控制判断部132基于检测部131的检测结果,判断是否需要进行车辆9的行驶控制或者是否需要进行搭载于车辆9的各种传感器的控制,在需要控制的情况下,基于预先确定的预定算法来确定控制内容并通知给数据生成部133。例如可以确定用于在与车辆9的前进道路上的障碍物的距离、车速等满足一定条件时使车辆9紧急停止的控制内容。另外,例如可以确定用于在从传感器获得的传感器信息满足一定条件时调整传感器的控制内容。
数据生成部133根据控制判断部132在判断为需要进行车辆9的行驶控制的情况下通知的控制内容,生成车辆控制数据等控制系统数据,并将该控制系统数据保存于控制系统数据发送缓冲器。此外,数据生成部133根据该被通知的控制内容确定can-id,将can-id附加于该车辆控制数据等并保存于控制系统数据发送缓冲器。另外,数据生成部133根据控制判断部132在判断为需要进行传感器的控制的情况下通知的控制内容,生成传感器控制数据等信息系统数据,并将该信息系统数据保存于信息系统数据发送缓冲器。此外,数据生成部133根据该被通知的控制内容来确定成为传感器控制数据等的送达地的mac地址,将该mac地址附加于传感器控制数据等并保存于信息系统数据发送缓冲器。在数据生成部133中,通过至少基于从控制系统数据接收缓冲器读取到的can帧涉及的数据(例如车辆状态数据等)的处理来生成控制系统数据,通过至少基于从信息系统数据接收缓冲器读取到的e帧涉及的数据(例如图像等传感器信息)的处理来生成信息系统数据。此外,在数据生成部133中,例如也可以通过基于车辆状态数据和传感器信息这两者的处理来生成控制系统数据或者信息系统数据。
发送部150构成为包括帧构建部151,帧构建部151根据与控制系统网络1以及信息系统网络2分别对应的通信协议构建帧。发送部150对发送缓冲器140a(控制系统数据发送缓冲器)中的未发送的控制系统数据和发送缓冲器140b(信息系统数据发送缓冲器)中的未发送的信息系统数据进行发送。发送部150通过帧构建部151使与数据应被发送的网络对应的帧包含该数据并向该应被发送的网络进行发送。信息系统数据应被发送的网络是信息系统网络2,控制系统数据应被发送的网络通常是控制系统网络1,但在如无法向控制系统网络1进行发送这样的预定的例外条件成立的情况下(例如检测到控制系统网络1的至少一部分存在异常时等)则是信息系统网络2。
即,发送部150通过将包含信息系统数据的e帧向信息系统网络2送出来进行该信息系统数据的发送。另外,发送部150通过如下送出来进行控制系统数据的发送:在预定的例外条件不成立的情况下,将包含该控制系统数据的can帧向控制系统网络1的总线30a送出,在该例外条件成立的情况下,将包含该控制系统数据的e帧向信息系统网络2送出。由发送部150向总线30a送出的包含控制系统数据的can帧例如是使can帧的数据域包含控制系统数据、使can帧的id域包含在发送缓冲器中附加于控制系统数据的can-id的帧。由发送部150向电缆20e送出的包含信息系统数据的e帧例如是使e帧的有效载荷包含如下的识别标志信息和信息系统数据、将在发送缓冲器中附加于信息系统数据的mac地址设定为送达地mac地址的帧,该识别标志信息是用于表示是否包含应向控制系统网络1传输的控制系统数据的信息,设为表示不包含控制系统数据。由发送部150向电缆20e送出的包含控制系统数据的e帧例如是使e帧的有效载荷包含如下的识别标志信息和控制系统数据、作为送达地mac地址设定了预先确定的特定mac地址(例如广播地址等)的帧,该识别标志信息是用于表示是否包含应向控制系统网络1传输的控制系统数据的信息,设为表示包含控制系统数据。此外,在发送部150发送的e帧中,也可以不将识别标志信息设置于有效载荷而是设置于报头的类型等,例如也可以为,使用识别是否是报头的送达地mac地址中的全局mac地址的比特作为识别标志信息,通过设为不是全局mac地址的值来表示包含应向控制系统网络1传输的控制系统数据。
发送部150在发送控制系统数据发送缓冲器以及信息系统数据发送缓冲器各自中的数据的情况下,基于优先级设定部160所设定的优先信息(例如用于确定控制系统数据和信息系统数据中的应优先进行发送的优先种类数据的信息等),进行优先发送控制,以使得对作为控制系统数据(第1种数据)和信息系统数据(第2种数据)中的一方的优先种类数据优先于作为另一方的非优先种类数据进行发送。此外,作为本实施方式中的一例,在优先级设定部160中,优先信息被设定为表示控制系统数据是应比信息系统数据优先地发送的优先种类数据这一情况。在各发送缓冲器140a、140b中的数据被发送部150发送了的情况下,例如从发送缓冲器擦除该数据。
优先级设定部160设定并保持优先信息,优先信息表示使控制系统数据和信息系统数据中的哪一方优先(哪一方的优先级高)。此外,优先信息也可以设定为表示控制系统数据和信息系统数据两方的优先级相同。优先级设定部160既可以将优先信息设定为成为预先确定的内容,也可以将优先信息设定为成为基于过去的车辆9的状态、车载装置的处理结果等的内容。
[1.4hub200的构成]
hub200例如构成为包括处理器、存储器等数字电路、模拟电路、通信电路等,具有将从一个传输路径(总线或者电缆)接收到的帧向其他传输路径转发(中继)的功能。
图7是hub200的构成图。hub200构成为包括接收部210a(第1接收部)、接收部210b(第2接收部)、接收缓冲器220a(第1接收缓冲器)、接收缓冲器220b(第2接收缓冲器)、选定部230、转发规则保持部231、发送缓冲器240a(第1发送缓冲器)、发送缓冲器240b(第2发送缓冲器)、发送部250以及优先级设定部260。这些各构成要素通过hub200中的通信电路、执行保存于存储器的程序的处理器或者数字电路等来实现。
接收缓冲器220a、接收缓冲器220b、发送缓冲器240a、发送缓冲器240b分别例如是由存储器等存储介质构成的fifo缓冲器。接收缓冲器220a(第1接收缓冲器)也称为控制系统数据接收缓冲器,发送缓冲器240a(第1发送缓冲器)也称为控制系统数据发送缓冲器。另外,接收缓冲器220b(第2接收缓冲器)也称为信息系统数据接收缓冲器,发送缓冲器240b(第2发送缓冲器)也称为信息系统数据发送缓冲器。
接收部210a从控制系统网络1的总线30a逐次接收can帧,每当接收到can帧时,基于接收id列表(参照图6)确认所接收到的can帧的can-id是否是应接收的id,如果是应接收的id,则将该can帧的内容保存于接收缓冲器220a。接收部210a向接收缓冲器220a保存的can帧的内容例如是对数据(数据域的内容)附加了can-id、尺寸(dlc)等的信息。hub200使用的接收id列表例如是记载了包含可能成为向信息系统网络2转发的对象的数据(例如车辆状态数据等)的can帧涉及的can-id的列表,内容也可以与x-ecu100使用的接收id列表不同。接收部210a在接收到的can帧的can-id是没有表示在接收id列表中的id时,中止该can帧的接收,且不将该can帧的内容保存于接收缓冲器220a。
接收部210b从信息系统网络2的电缆20f逐次接收e帧,每当接收到e帧时,将该e帧的内容保存于接收缓冲器220b。接收部210b向接收缓冲器220b保存的e帧的内容例如是对数据(有效载荷的内容)附加了发送源mac地址的内容。例如从摄像头300b、lidar300c、gps300d等各种传感器,例如以hub200作为送达地,发送或者广播将图像及其他数据包含于有效载荷的e帧,接收部210b接收该e帧。
转发规则保持部231在存储器等存储介质中保持预先确定的转发规则信息。图8表示转发规则信息的一例。如该图所示,转发规则信息使转发源的信息与转发目的地(送达地)的信息相关联。在该图的例子中,表示了hub200在从指示总线30a的can总线1接收到can-id为0x100或者0x101的can帧的情况下,应将信息系统网络2中的用mac地址“00:11:22:33:44:55”确定的装置作为送达地,转发作为该can帧的内容的数据。另外,表示了hub200在从can总线1接收到can-id为0x102的can帧的情况下,应将信息系统网络2中的用mac地址“00:12:23:34:45:56”确定的装置作为送达地,转发作为该can帧的内容的数据。另外,表示了hub200在接收到将mac地址“00:11:22:33:44:55”作为发送源mac地址的e帧的情况下,应将控制系统网络1的can总线1作为送达地,对作为该e帧的内容的数据附加can-id“0x300”并进行转发。
选定部230构成为包括转发数据生成部233。选定部230基于转发规则保持部231保持的转发规则信息,选定作为接收缓冲器220a以及接收缓冲器220b中的某一方的内容的数据的送达地是控制系统网络1还是信息系统网络2。例如若基于接收到的e帧对保存于接收缓冲器的数据附加了该e帧的报头的发送源mac地址或者送达地mac地址等,则选定部230能够根据该发送源mac地址或者送达地mac地址等以及转发规则信息,选定数据的送达地。另外,例如若基于接收到的can帧对保存于接收缓冲器的数据附加了该can帧的can-id,则选定部230能够根据该can-id以及转发规则信息,选定数据的送达地。
选定部230在选定了控制系统网络1作为接收缓冲器220a以及接收缓冲器220b中的某一方的内容即数据的送达地的情况下,基于该数据,由转发数据生成部233生成应该转发(发送)的数据并保存于发送缓冲器240a(控制系统数据发送缓冲器),在选定了信息系统网络2的情况下,基于该数据,由转发数据生成部233生成应该转发(发送)的数据并保存于发送缓冲器240b(信息系统数据发送缓冲器)。转发数据生成部233例如能够生成与接收缓冲器的内容即数据相同的数据作为应发送的数据。另外,转发数据生成部233在控制系统网络1被选定为信息系统数据接收缓冲器的内容即数据的送达地的情况下,在该数据是无法保存于can帧的数据域的大尺寸数据时,能够将该数据分割为多个数据(能够保存于can帧的数据域的尺寸的数据),将该分割结果的多个数据生成为应发送的数据并保存于控制系统数据发送缓冲器。转发数据生成部233能够在向发送缓冲器保存数据时,将表示该数据的送达地等的信息(转发规则信息中的转发目的地的信息等)附加于该数据。此外,由hub200进行的帧的转发(中继)是帧的数据(信息)的接收以及发送,能够跟随与在转发目的地的传输路径中使用的通信协议对应的通信方式、帧格式等的变换。另外,作为传输路径间的帧的转发,hub200能够与从1个或多个传输路径接收到的1个或多个帧对应地进行1个或多个帧的向1个或多个传输路径的发送。
选定部230每当从接收缓冲器220a以及接收缓冲器220b中的某一方读取数据时,进行该数据的送达地的选定,并在该数据的读取中,基于优先级设定部260所设定的优先信息(例如用于确定应优先进行读取的优先接收缓冲器的信息等),进行优先读取控制,以使得对作为控制系统数据接收缓冲器和信息系统数据接收缓冲器中的一方的优先接收缓冲器的内容优先于作为另一方的非优先接收缓冲器的内容进行读取。优先级设定部260在存储器等存储介质的一个区域保持优先信息。此外,作为本实施方式中的一例,在优先级设定部260中,优先信息被设定为表示控制系统数据接收缓冲器是应比信息系统数据接收缓冲器优先地被读取数据的接收缓冲器这一情况。在各接收缓冲器220a、220b中,当数据被读取了的情况下,例如从接收缓冲器擦除该数据。
发送部250构成为包括帧构建部251,帧构建部251根据与控制系统网络1以及信息系统网络2分别对应的通信协议构建帧。发送部250对发送缓冲器240a(控制系统数据发送缓冲器)中的未发送的数据和发送缓冲器240b(信息系统数据发送缓冲器)中的未发送的数据进行发送。发送部250通过帧构建部251使与数据应被发送的网络对应的帧包含该数据并向该应被发送的网络进行发送。信息系统数据发送缓冲器中的数据应被发送的网络是信息系统网络2,控制系统数据发送缓冲器中的数据应被发送的网络通常是控制系统网络1,但在如无法向控制系统网络1进行发送这样的预定的例外条件成立的情况下(例如检测到控制系统网络1的至少一部分存在异常时等)则是信息系统网络2。即,发送部250通过将包含信息系统数据发送缓冲器中的数据的e帧向信息系统网络2发送来进行该数据的发送。另外,发送部250通过如下送出来进行控制系统数据发送缓冲器中的数据的发送:在预定的例外条件不成立的情况下,将包含该数据的can帧向控制系统网络1的总线30a送出,在该例外条件成立的情况下,将包含该数据的e帧向信息系统网络2送出。由发送部250向总线30a送出的包含数据的can帧例如是使can帧的数据域包含该数据、使can帧的id域包含在发送缓冲器中作为送达地等信息附加于该数据的can-id的帧。由发送部250向电缆20f送出的包含数据的e帧例如是使e帧的有效载荷包含如下的识别标志信息和信息系统数据发送缓冲器的数据、将在该发送缓冲器中附加于该数据的mac地址设定为送达地mac地址的帧,该识别标志信息是用于表示该有效载荷是否包含应向控制系统网络1传输的数据的信息,设为表示不包含应向控制系统网络1传输的数据。由发送部250向电缆20f送出的包含数据的e帧例如是在e帧的有效载荷包含如下的识别标志信息和控制系统数据发送缓冲器的数据、作为送达地mac地址设定了预先确定的特定mac地址(例如广播地址等)的帧,该识别标志信息是用于表示是否包含应向控制系统网络1传输的数据的信息,设为表示包含应向控制系统网络1传输的数据。此外,在发送部250发送的e帧中,也可以不将识别标志信息设置于有效载荷而是设置于报头的类型等,例如也可以为,使用识别是否是报头的送达地mac地址中的全局mac地址的比特作为识别标志信息,通过设为不是全局mac地址的值来表示包含应向控制系统网络1传输的数据。
发送部250在发送控制系统数据发送缓冲器以及信息系统数据发送缓冲器各自中的数据的情况下,基于优先级设定部260所设定的优先信息(例如用于确定控制系统数据发送缓冲器和信息系统数据发送缓冲器中的应优先进行数据的发送的优先发送缓冲器的信息等),进行优先发送控制,以使得对作为控制系统数据发送缓冲器和信息系统数据发送缓冲器中的一方的优先发送缓冲器中的未发送的数据优先于作为另一方的非优先发送缓冲器中的未发送的数据进行发送。优先信息例如是以如下方式使优先发送缓冲器与优先接收缓冲器对应的信息:在优先发送缓冲器是控制系统数据发送缓冲器的情况下,优先接收缓冲器是控制系统数据接收缓冲器,在优先发送缓冲器是信息系统数据发送缓冲器的情况下,优先接收缓冲器是信息系统数据接收缓冲器。此外,作为本实施方式中的一例,在优先级设定部260中,优先信息被设定为表示控制系统数据发送缓冲器是应比信息系统数据发送缓冲器优先地被发送数据的发送缓冲器这一情况。在各发送缓冲器240a、240b中的数据被发送部250发送了的情况下,例如从发送缓冲器擦除该数据。
优先级设定部260设定并保持优先信息,优先信息表示使控制系统数据接收缓冲器(或者控制系统数据发送缓冲器)和信息系统数据接收缓冲器(或者信息系统数据发送缓冲器)中的哪一方优先(哪一方的优先级高)。此外,优先信息也可以设定为表示各缓冲器的优先级相同。优先级设定部260既可以将优先信息设定为成为预先确定的内容,也可以将优先信息设定为成为基于过去的车辆9的状态、车载装置的处理结果等的内容。
[1.5x-ecu100的工作]
图9是表示由x-ecu100进行的数据处理的一例的流程图。x-ecu100通过接收部110a以及接收部110b,分别将从传输路径逐次接收到的帧的内容逐次保存于接收缓冲器120a(控制系统数据接收缓冲器)和接收缓冲器120b(信息系统数据接收缓冲器)。与该接收部110a、110b的接收以及保存并行地,在生成部130以及发送部150中进行图9所示的数据处理。作为该数据处理,x-ecu100进行主要由生成部130进行的接收数据读取处理(步骤s1)和发送数据生成处理(步骤s2)、以及主要由发送部150进行的数据发送处理(步骤s3)。该数据处理被反复进行。
首先,结合图10,对接收数据读取处理(步骤s1)进行说明。在此,设为由各接收部110a、110b保存于各接收缓冲器120a、120b的数据在被生成部130读取后,则从该接收缓冲器擦除该数据。
x-ecu100的生成部130确认控制系统数据接收缓冲器中是否保存有数据(步骤s101),确认信息系统数据接收缓冲器中是否保存有数据(步骤s102)。生成部130在任一接收缓冲器中都没有保存数据时,反复进行步骤s101以及步骤s102中的处理(步骤s103)。
在控制系统数据接收缓冲器以及信息系统数据接收缓冲器两方分别保存有数据时(步骤s104),生成部130确认接收缓冲器中是否存在一定时间未被读取的数据(步骤s105)。步骤s105中的确认例如通过对数据的未读取时间(未被进行读取的时间)进行计时并基于未读取时间是否超过一定阈值来进行。
作为步骤s105中的确认的结果,在不存在一定时间未被读取的数据的情况下,生成部130参照优先信息,确认可以优先从哪个接收缓冲器进行读取,并在从控制系统数据接收缓冲器进行读取的优先级高的情况下(步骤s106),从控制系统数据接收缓冲器读取数据(步骤s107)。另外,在从信息系统数据接收缓冲器进行读取的优先级高的情况下(步骤s108),生成部130从信息系统数据接收缓冲器读取数据(步骤s109)。另外,在优先级相同的情况下,生成部130读取两方接收缓冲器的数据中最早的数据(步骤s110)。此外,在优先信息被设定为从控制系统数据接收缓冲器优先进行读取(也就是说将控制系统数据接收缓冲器作为优先级高的优先接收缓冲器、将信息系统数据接收缓冲器作为优先级低的非优先接收缓冲器)这一例子中,当在步骤s105中确认为不存在一定时间未被读取的数据的情况下,生成部130在步骤s107中从控制系统数据接收缓冲器读取数据。
作为步骤s105中的确认的结果,在存在一定时间未被读取的数据的情况下,生成部130读取该数据(步骤s110)。另外,在步骤s104中,确认为仅控制系统数据接收缓冲器以及信息系统数据接收缓冲器中的一方保存有数据的情况下,生成部130也读取该一方的接收缓冲器的最早的数据(步骤s110)。
在此,设为生成部130所读取的数据被从接收缓冲器擦除来进行了说明,但如果能够区别未被读取的数据(未读取的数据),那么也可以用擦除以外的方法进行接收缓冲器中的数据的管理。不论用哪种方法进行数据的管理,生成部130都进行使作为控制系统数据接收缓冲器以及信息系统数据接收缓冲器中的一方的优先接收缓冲器优先于作为另一方的非优先接收缓冲器来读取数据的优先读取控制。作为优先读取控制,生成部130反复确认接收缓冲器120a(控制系统数据接收缓冲器)和接收缓冲器120b(信息系统数据接收缓冲器),当在确认时控制系统数据接收缓冲器中存在未读取的数据、并且信息系统数据接收缓冲器中存在未读取的数据的情况下,在非优先接收缓冲器中的未读取的数据的读取时间不超过一定阈值时,读取优先接收缓冲器中的未读取的数据,在该未读取时间超过了该一定阈值时,读取非优先接收缓冲器中的未读取的数据。另外,生成部130当在各接收缓冲器的确认时,控制系统数据接收缓冲器中存在未读取的数据、并且信息系统数据接收缓冲器中不存在未读取的数据的情况下,读取控制系统数据接收缓冲器中的未读取的数据。另外,生成部130当在各接收缓冲器的确认时,控制系统数据接收缓冲器中不存在未读取的数据、并且信息系统数据接收缓冲器中存在未读取的数据的情况下,读取信息系统数据接收缓冲器中的未读取的数据。上述的一定阈值也可以基于过去的车辆9的状态、车载装置的处理结果等来确定。此外,为了防止在优先读取控制中由于连续地读取优先接收缓冲器中的数据而使非优先接收缓冲器中的数据完全不被读取,例如将比与读取优先接收缓冲器中的一个数据相当的所需的时间长的适当的时间确定为上述的一定阈值即可。
接着,结合图11,对发送数据生成处理(步骤s2)进行说明。
生成部130基于从某个接收缓冲器读取到的数据,取得车辆状态(步骤s201),或者取得传感器信息(步骤s202)。接着,生成部130基于取得的车辆状态或者传感器信息进行对于与车辆9的周边环境的情况和/或车辆9的状态等有关的各种项目的检测(步骤s203)。此外,生成部130在基于通过步骤s201或者步骤s202基于从某个接收缓冲器读取到的数据所取得的车辆状态、传感器信息等而在步骤s203中进行涉及环境的检测时,也可以进一步参照在此前的一定期间内(例如数秒钟以内等)从接收缓冲器读取到的1个或多个数据,进行该检测。
接着,生成部130基于步骤s203中的检测结果,判断是否需要进行车辆9的行驶控制(步骤s204)。在判断为需要进行车辆9的行驶控制的情况下,生成部130生成作为控制系统数据(第1种数据)的车辆控制数据(步骤s205),以附加于该车辆控制数据的方式设定能够作为can帧的优先级发挥作用的can-id(步骤s206),并将该控制系统数据写入发送缓冲器140a(控制系统数据发送缓冲器)(步骤s207)。当在步骤s204中判断为无需进行车辆9的行驶控制的情况下,生成部130跳过步骤s205~s207中的处理。
接着,生成部130基于步骤s203中的检测结果,判断是否需要进行搭载于车辆9的传感器的控制(步骤s208)。在判断为需要进行传感器的控制的情况下,生成部130生成作为信息系统数据(第2种数据)的传感器控制数据(步骤s209),以附加于该传感器控制数据的方式设定成为传感器控制数据的送达地的mac地址等送达地信息(步骤s210),并将该信息系统数据写入发送缓冲器140b(信息系统数据发送缓冲器)(步骤s211)。当在步骤s208中判断为无需进行传感器的控制的情况下,生成部130跳过步骤s209~s211中的处理。
接着,结合图12以及图13,对数据发送处理(步骤s3)进行说明。在此,设为保存于各发送缓冲器140a、140b的数据在被发送部150读取并发送后,则从该发送缓冲器擦除该数据。
x-ecu100的发送部150确认控制系统数据发送缓冲器中是否保存有数据(步骤s301),确认信息系统数据发送缓冲器中是否保存有数据(步骤s302)。发送部150在任一发送缓冲器中都没有保存数据时,反复进行步骤s301以及步骤s302中的处理(步骤s303)。
在控制系统数据发送缓冲器以及信息系统数据发送缓冲器两方分别保存有数据时(步骤s304),发送部150确认发送缓冲器中是否存在一定时间未被发送的数据(步骤s305)。步骤s305中的确认例如通过对数据的未发送时间(未被进行发送的时间)进行计时并基于未发送时间是否超过预定阈值来进行。
作为步骤s305中的确认的结果,在不存在一定时间未被发送的数据的情况下,发送部150参照优先信息,确认可以优先发送哪个发送缓冲器的数据,并在发送控制系统数据的优先级高、也就是说发送控制系统数据发送缓冲器的数据的优先级高的情况下(步骤s306),从控制系统数据发送缓冲器读取控制系统数据并将该数据确定为发送对象(步骤s307)。另外,在发送信息系统数据的优先级高、也就是说发送信息系统数据发送缓冲器的数据的优先级高的情况下(步骤s308),发送部150从信息系统数据发送缓冲器读取信息系统数据并将该数据确定为发送对象(步骤s309)。另外,在优先级相同的情况下,发送部150读取两方发送缓冲器的数据中最早的数据并将其确定为发送对象(步骤s310)。此外,在优先信息被设定为优先地对控制系统数据(控制系统数据发送缓冲器的数据)进行发送(也就是说将控制系统数据作为优先级高的优先种类数据、将信息系统数据作为优先级低的非优先种类数据,或者将控制系统数据发送缓冲器作为优先级高的优先发送缓冲器、将信息系统数据发送缓冲器作为优先级低的非优先发送缓冲器)这一例子中,当在步骤s305中确认为不存在一定时间未被读取的数据的情况下,发送部150在步骤s307中从控制系统数据发送缓冲器读取控制系统数据并将该数据确定为发送对象。
作为步骤s305中的确认的结果,在存在一定时间未被发送的数据的情况下,发送部150读取该数据并将其确定为发送对象(步骤s310)。另外,在步骤s304中,确认为仅控制系统数据发送缓冲器以及信息系统数据发送缓冲器中的一方保存有数据的情况下,发送部150也读取该一方的发送缓冲器的最早的数据并将其确定为发送对象(步骤s310)。
在步骤s307、s309或者s310中确定了发送对象的数据后,发送部150判定发送对象是控制系统数据还是信息系统数据(步骤s311),如果是控制系统数据,则判定如无法向控制系统网络1进行发送这样的预定的例外条件是否成立(例如是否在控制系统网络1的一部分检测到异常)(步骤s312)。
当在步骤s312中由于在控制系统网络1的一部分检测到异常等而判定为预定的例外条件成立的情况下,发送部150构建包含被确定为发送对象的控制系统数据的e帧,将该e帧向信息系统网络2进行发送(步骤s313)。另外,当在步骤s312中判定为预定的例外条件不成立的情况下,发送部150构建包含被确定为发送对象的控制系统数据的can帧,将该can帧向控制系统网络1进行发送(步骤s314)。
另外,当在步骤s311中判定为发送对象是信息系统数据的情况下,发送部150构建包含该被确定为发送对象的信息系统数据的e帧,将该e帧向信息系统网络2进行发送(步骤s315)。
在此,设为发送部150所读取并发送的数据被从发送缓冲器擦除来进行了说明,但如果能够区别未被发送的数据(未发送的数据),那么也可以用擦除以外的方法进行发送缓冲器中的数据的管理。不论用哪种方法进行数据的管理,发送部150都进行优先发送控制以使得对作为控制系统数据和信息系统数据中的一方的优先种类数据优先于作为另一方的非优先种类数据进行发送。作为优先发送控制,发送部150反复确认发送缓冲器140a(控制系统数据发送缓冲器)和发送缓冲器140b(信息系统数据发送缓冲器),当在确认时控制系统数据发送缓冲器中存在未发送的控制系统数据、并且信息系统数据发送缓冲器中存在未发送的信息系统数据的情况下,在非优先种类数据的未发送时间不超过预定阈值时,发送优先种类数据,在该未发送时间超过了该预定阈值时,发送非优先种类数据。另外,发送部150当在各发送缓冲器的确认时,控制系统数据发送缓冲器中存在未发送的控制系统数据、并且信息系统数据发送缓冲器中不存在未发送的信息系统数据的情况下,发送该控制系统数据。另外,发送部150当在各发送缓冲器的确认时,控制系统数据发送缓冲器中不存在未发送的控制系统数据、并且信息系统数据发送缓冲器中存在未发送的信息系统数据的情况下,发送该信息系统数据。上述的预定阈值也可以基于过去的车辆9的状态、车载装置的处理结果等来确定。此外,为了防止在优先发送控制中由于连续地发送优先种类数据而使非优先种类数据会完全不被发送,例如将比与发送一个优先种类数据相当的所需的时间长的适当的时间确定为上述的预定阈值即可。
[1.6hub200的工作]
图14是表示由hub200进行的数据转发处理的一例的流程图。hub200通过接收部210a以及接收部210b,分别将从传输路径逐次接收到的帧的内容逐次保存于接收缓冲器220a(控制系统数据接收缓冲器)和接收缓冲器220b(信息系统数据接收缓冲器)。与该接收部210a、210b的接收以及保存并行地,在选定部230以及发送部250中进行图14所示的数据转发处理。作为该数据转发处理,hub200进行主要由选定部230进行的接收数据读取处理(步骤s1)和转发数据生成处理(步骤s4)、以及主要由发送部250进行的数据发送处理(步骤s3)。该数据转发处理被反复进行。此外,由选定部230进行的接收数据读取处理与上述的x-ecu100的由生成部130进行的接收数据读取处理(图10)是同样的,由发送部250进行的数据发送处理与x-ecu100的由发送部150进行的数据发送处理(图12以及图13)是同样的,因此对于这些处理,适当省略说明。
设为由hub200的各接收部210a、210b保存于各接收缓冲器220a、220b的数据在被选定部230读取后,则从该接收缓冲器擦除该数据。
如图10所示,hub200的选定部230反复确认控制系统数据接收缓冲器以及信息系统数据接收缓冲器中是否保存有数据(步骤s101~s103)。
在两方接收缓冲器分别保存有数据时(步骤s104),选定部230确认接收缓冲器中是否存在一定时间未被读取的数据(步骤s105)。
作为步骤s105中的确认的结果,在不存在一定时间未被读取的数据的情况下,选定部230参照优先信息,在从控制系统数据接收缓冲器进行读取的优先级高的情况下(步骤s106),从控制系统数据接收缓冲器读取数据(步骤s107)。另外,在从信息系统数据接收缓冲器进行读取的优先级高的情况下(步骤s108),选定部230从信息系统数据接收缓冲器读取数据(步骤s109)。
作为步骤s105中的确认的结果,在存在一定时间未被读取的数据的情况下,选定部230读取该数据(步骤s110)。另外,在步骤s104中,确认为仅控制系统数据接收缓冲器以及信息系统数据接收缓冲器中的一方保存有数据的情况下,选定部230也读取该一方的接收缓冲器的最早的数据(步骤s110)。
在此,设为选定部230所读取的数据被从接收缓冲器擦除来进行了说明,但如果能够区别未被读取的数据(未读取的数据),那么也可以使用擦除以外的方法进行接收缓冲器中的数据的管理。无论用哪种方法进行数据的管理,选定部230都进行使作为控制系统数据接收缓冲器以及信息系统数据接收缓冲器中的一方的优先接收缓冲器优先于作为另一方的非优先接收缓冲器来读取数据的优先读取控制。作为优先读取控制,选定部230反复确认接收缓冲器220a(控制系统数据接收缓冲器)和接收缓冲器220b(信息系统数据接收缓冲器),当在确认时控制系统数据接收缓冲器中存在未读取的数据、并且信息系统数据接收缓冲器中存在未读取的数据的情况下,在非优先接收缓冲器中的未读取的数据的读取时间不超过一定阈值时,读取优先接收缓冲器中的未读取的数据,在该未读取时间超过了该一定阈值时,读取非优先接收缓冲器中的未读取的数据。另外,选定部230当在各接收缓冲器的确认时,控制系统数据接收缓冲器中存在未读取的数据、并且信息系统数据接收缓冲器中不存在未读取的数据的情况下,读取控制系统数据接收缓冲器中的未读取的数据。另外,选定部230当在各接收缓冲器的确认时,控制系统数据接收缓冲器中不存在未读取的数据、并且信息系统数据接收缓冲器中存在未读取的数据的情况下,读取信息系统数据接收缓冲器中的未读取的数据。
接着,结合图15,说明由选定部230进行的转发数据生成处理(步骤s4)。
选定部230对于从某个接收缓冲器读取到的数据,基于转发规则信息,选定该数据的送达地(转发目的地)是控制系统网络1还是信息系统网络2(步骤s401)。
接着,选定部230在该选定了送达地的数据是从信息系统数据接收缓冲器读取到的数据的情况下(步骤s402),当将送达地选定为信息系统网络2时(步骤s403),基于该数据以包含该数据的方式生成转发数据(应转发的数据)(步骤s404),并将该生成的数据写入发送缓冲器240b(信息系统数据发送缓冲器)(步骤s405)。另外,当在步骤s403中将从信息系统数据接收缓冲器读取到的数据的送达地选定为控制系统网络1时,选定部230在该数据是无法保存于can的数据帧的大小的情况下,将该数据分割成多个数据以使得成为能够保存(步骤s406)。然后,选定部230对于该分割结果的各数据分别以包含该数据的方式生成转发数据(步骤s407),并将生成的各转发数据写入发送缓冲器240a(控制系统数据发送缓冲器)(步骤s408)。
另外,当在步骤s402中判定为该选定了送达地的数据是从控制系统数据接收缓冲器读取到的数据的情况下,选定部230在将送达地选定为控制系统网络1时(步骤s409),基于该数据以包含该数据的方式生成转发数据(步骤s410),并将该生成的数据写入发送缓冲器240a(控制系统数据发送缓冲器)(步骤s411)。另外,当在步骤s409中将从控制系统数据接收缓冲器读取到的数据的送达地选定为信息系统网络2时,选定部230以包含该数据的方式生成转发数据(步骤s412),并将生成的转发数据写入发送缓冲器240b(信息系统数据发送缓冲器)(步骤s413)。
接着,结合图12以及图13,说明由发送部250进行的数据发送处理(步骤s3)。在此,设为保存于各发送缓冲器240a、240b的数据在被发送部250读取并发送后,则从该发送缓冲器擦除该数据。
hub200的发送部250反复确认控制系统数据发送缓冲器以及信息系统数据发送缓冲器中是否保存有数据(步骤s301~s303)。
在两方发送缓冲器各自保存有数据时(步骤s304),发送部250确认发送缓冲器中是否存在一定时间未被发送的数据(步骤s305)。
作为步骤s305中的确认的结果,在不存在一定时间未被发送的数据的情况下,发送部250参照优先信息,确认可以优先发送哪个发送缓冲器的数据,并在控制系统数据发送缓冲器的优先级高的情况下(步骤s306),从控制系统数据发送缓冲器读取数据并将该数据确定为发送对象(步骤s307)。另外,在信息系统数据发送缓冲器的优先级高的情况下(步骤s308),发送部250从信息系统数据发送缓冲器读取数据并将该数据确定为发送对象(步骤s309)。此外,在优先信息将控制系统数据发送缓冲器作为优先级高的优先发送缓冲器、将信息系统数据发送缓冲器作为优先级低的非优先发送缓冲器这一例子中,当在步骤s305中确定为不存在一定时间未被读取的数据的情况下,发送部250在步骤s307中从控制系统数据发送缓冲器读取控制系统数据并将该数据确定为发送对象。
作为步骤s305中的确认的结果,在存在一定时间未被发送的数据的情况下,发送部250读取该数据并将其确定为发送对象(步骤s310)。另外,在步骤s304中,确认为仅控制系统数据发送缓冲器以及信息系统数据发送缓冲器中的一方保存有数据的情况下,发送部250也读取该一方的发送缓冲器的最早的数据并将其确定为发送对象(步骤s310)。
在步骤s307、s309或者s310中确定了发送对象的数据后,发送部250判定发送对象是控制系统数据发送缓冲器的数据还是信息系统数据发送缓冲器的数据(步骤s311),如果是控制系统数据发送缓冲器的数据,则判定如无法向控制系统网络1进行发送这样的预定的例外条件是否成立(步骤s312)。
当在步骤s312中由于在控制系统网络1的一部分检测到异常等而判定为预定的例外条件成立的情况下,发送部250构建包含被确定为发送对象的数据的e帧,将该e帧向信息系统网络2进行发送(步骤s313)。另外,当在步骤s312中判定为预定的例外条件不成立的情况下,发送部250构建包含被确定为发送对象的数据的can帧,将该can帧向控制系统网络1进行发送(步骤s314)。
另外,当在步骤s311中判定为发送对象是信息系统数据发送缓冲器的数据的情况下,发送部250构建包含该被确定为发送对象的数据的e帧,将该e帧向信息系统网络2进行发送(步骤s315)。
在此,设为发送部250所读取并发送的数据被从发送缓冲器擦除来进行了说明,但如果能够区别未被发送的数据(未发送的数据),那么也可以使用擦除以外的方法进行发送缓冲器中的数据的管理。不论用哪种方法进行数据的管理,发送部250都进行优先发送控制以使得对作为控制系统数据发送缓冲器和信息系统数据发送缓冲器中的一方的优先发送缓冲器的数据优先于作为另一方的非优先发送缓冲器的数据进行发送。作为优先发送控制,发送部250反复确认发送缓冲器240a(控制系统数据发送缓冲器)和发送缓冲器240b(信息系统数据发送缓冲器),当在确认时控制系统数据发送缓冲器中存在未发送的数据、并且信息系统数据发送缓冲器中存在未发送的数据的情况下,在非优先发送缓冲器的数据的未发送时间不超过预定阈值时,发送优先发送缓冲器的数据,在该未发送时间超过了该预定阈值时,发送非优先发送缓冲器的数据。另外,发送部250当在各发送缓冲器的确认时,控制系统数据发送缓冲器中存在未发送的数据、并且信息系统数据发送缓冲器中不存在未发送的数据的情况下,发送该控制系统数据发送缓冲器中的数据。另外,发送部250当在各发送缓冲器的确认时,控制系统数据发送缓冲器中不存在未发送的数据、并且信息系统数据发送缓冲器中存在未发送的数据的情况下,发送该信息系统数据发送缓冲器中的数据。
[1.7x-ecu100的adas功能的处理时序]
图16表示x-ecu100的adas功能的处理时序的一例。
x-ecu100接收在控制系统网络1中c-ecu500a发送的表示车辆状态数据的can帧(步骤s1001),另外,接收在信息系统网络2中摄像头300b发送的表示作为传感器信息的拍摄图像的e帧(步骤s1002)。
x-ecu100基于车辆状态数据以及拍摄图像进行车辆9的周边环境的检测(步骤s1003),根据检测结果,例如生成车辆控制数据(步骤s1004),将车辆控制数据发送到控制系统网络1的总线30a(步骤s1005)。
[1.8与hub200的转发功能关联的通信时序]
图17表示与hub200的转发功能关联的通信时序的一例。在此,在hub200中,作为优先信息,设定为控制系统数据接收缓冲器(或者控制系统数据发送缓冲器)的优先级高于信息系统数据接收缓冲器(或者信息系统数据发送缓冲器)。
hub200从信息系统网络2接收包含传感器信息的e帧(步骤s1011),从控制系统网络1接收包含车辆状态数据的can帧(步骤s1012)。
hub200确认接收缓冲器220a、220b,优先从接收缓冲器220a读取车辆状态数据,将送达地选定为信息系统网络2,并将包含该车辆状态数据的e帧向信息系统网络2进行发送(步骤s1013)。另外,hub200从控制系统网络1接收包含车辆状态数据的can帧(步骤s1014)。
hub200确认接收缓冲器220a、220b,优先从接收缓冲器220a读取车辆状态数据,将送达地选定为信息系统网络2,并将包含该车辆状态数据的e帧向信息系统网络2进行发送(步骤s1015)。
hub200确认接收缓冲器220a、220b,由于接收缓冲器220a中没有数据,因此从接收缓冲器220b读取传感器信息,将送达地选定为控制系统网络1,并将包含该传感器信息的can帧向控制系统网络1进行发送(步骤s1016)。
[1.9实施方式1的效果]
在实施方式1涉及的车载网络系统10中,作为与通信协议互不相同的第1网络(控制系统网络1)和第2网络(信息系统网络2)双方连接的ecu的x-ecu100根据优先信息,进行从来自一方网络的数据的接收缓冲器的优先读取、或者从将一方网络作为送达地的数据的发送缓冲器的优先发送。另外,与两方网络连接的hub200在数据的转发时,根据优先信息,进行从来自一方网络的数据的接收缓冲器的优先读取、或者从将一方网络作为送达地的数据的发送缓冲器的优先发送。由此,能够使基于数据的读取的处理或者发送处理等的优先顺序与在各网络中传输的数据的重要性等相对应。因此,例如能够实现使对车辆9的行驶控制涉及的数据的发送优先于对图像数据等的发送等,能够防止图像数据等大容量数据的传输对车辆9的安全行驶等造成不良影响。
另外,在实施方式1涉及的车载网络系统10中,x-ecu100或者hub200具有如下功能:在由于在控制系统网络1的一部分检测到异常等而判定为预定的例外条件成立的情况下,构建包含应向控制系统网络1发送的数据并且包含表示这一情况的识别标志信息的e帧,将该e帧向信息系统网络2进行发送。在车载网络11中可能存在确保了多条网络路径的情况,因此,即便控制系统网络1的一部分出现异常,通过该x-ecu100或者hub200,也有可能经由信息系统网络2最终将数据传输到成为送达地的装置。在车载网络系统10中,可能存在多个连结控制系统网络1和信息系统网络2的中继装置时,当该中继装置的某一个判别e帧的识别标志信息而e帧包含应向控制系统网络1发送的信息的情况下,也可以对该e帧进行协议变换并向控制系统网络1转发。此外,在x-ecu100或者hub200中,在检测到信息系统网络2的一部分存在异常的情况下,也不向控制系统网络1发送以信息系统网络2作为送达地的数据。这是因为,应向信息系统网络2发送的数据一般而言数据尺寸大,因此若向控制系统网络1发送,则由于拥挤,控制系统网络1中的车辆控制数据等的传递会产生延迟。
[1.10实施方式1的变形例]
上述的x-ecu100(或者hub200)也可以取代图10所示例的由生成部130(或者选定部230)进行的接收数据读取处理(步骤s1),而进行图18所示的接收数据读取处理(步骤s1a)。
图18的接收数据读取处理是将图10的接收数据读取处理中的步骤s105变形为步骤s105a的处理。
在步骤s105中,生成部130(或者选定部230)确认接收缓冲器中是否存在一定时间未被读取的数据,而在步骤s105a中,确认是否已从优先级高的接收缓冲器(优先接收缓冲器)读取了一定数量的数据。
由此,x-ecu100的生成部130例如将会如以下这样进行使作为控制系统数据接收缓冲器以及信息系统数据接收缓冲器中的一方的优先接收缓冲器优先于作为另一方的非优先接收缓冲器来读取数据的优先读取控制。即,生成部130反复确认接收缓冲器120a(控制系统数据接收缓冲器)和接收缓冲器120b(信息系统数据接收缓冲器),当在确认时控制系统数据接收缓冲器中存在未读取的数据、并且信息系统数据接收缓冲器中存在未读取的数据的情况下,将优先接收缓冲器中的未读取的数据读取一定数量后读取非优先接收缓冲器中的一条未读取的数据。另外,生成部130当在各接收缓冲器的确认时,控制系统数据接收缓冲器中存在未读取的数据、并且信息系统数据接收缓冲器中不存在未读取的数据的情况下,读取控制系统数据接收缓冲器中的未读取的数据。另外,生成部130当在各接收缓冲器的确认时,控制系统数据接收缓冲器中不存在未读取的数据、并且信息系统数据接收缓冲器中存在未读取的数据的情况下,读取信息系统数据接收缓冲器中的未读取的数据。
另外,hub200的选定部230例如将会如以下这样进行使作为控制系统数据接收缓冲器以及信息系统数据接收缓冲器中的一方的优先接收缓冲器优先于作为另一方的非优先接收缓冲器来读取数据的优先读取控制。即,选定部230反复确认接收缓冲器220a(控制系统数据接收缓冲器)和接收缓冲器220b(信息系统数据接收缓冲器),当在确认时控制系统数据接收缓冲器中存在未读取的数据、并且信息系统数据接收缓冲器中存在未读取的数据的情况下,将优先接收缓冲器中的未读取的数据读取一定数量后读取非优先接收缓冲器中的一条未读取的数据。另外,选定部230当在各接收缓冲器的确认时,控制系统数据接收缓冲器中存在未读取的数据、并且信息系统数据接收缓冲器中不存在未读取的数据的情况下,读取控制系统数据接收缓冲器中的未读取的数据。另外,选定部230当在各接收缓冲器的确认时,控制系统数据接收缓冲器中不存在未读取的数据、并且信息系统数据接收缓冲器中存在未读取的数据的情况下,读取信息系统数据接收缓冲器中的未读取的数据。
上述的一定数量也可以基于过去的车辆9的状态、车载装置的处理结果等来确定。此外,为了防止在优先读取控制中由于连续地读取优先接收缓冲器中的数据而使非优先接收缓冲器中的数据完全不被读取,例如将比优先接收缓冲器中的1个数据的量大的适当的数量(例如若用个数表示数量则为两个以上,或者若用数据量表示数量则为1份的量的大小的两倍以上的数据量)确定为上述的一定数量即可。
另外,上述的x-ecu100(或者hub200)也可以取代图12以及图13所示例的由发送部150(或者发送部250)进行的数据发送处理(步骤s3),而进行图19以及图13所示的数据发送处理(步骤s3a)。
图19以及图13的数据发送处理是将图12以及图13的数据发送处理中的步骤s305变形为步骤s305a的处理。
在步骤s305中,发送部150(或者发送部250)确认发送缓冲器中是否存在一定时间未被发送的数据,而在步骤s305a中,确认是否已将优先级高的发送缓冲器(优先接收缓冲器)的数据(优先种类数据)发送了一定数量。
由此,x-ecu100的发送部150例如将会如下这样进行对作为控制系统数据以及信息系统数据中的一方的优先种类数据优先于作为另一方的非优先种类数据来发送的优先发送控制。即,发送部150反复确认发送缓冲器140a和发送缓冲器140b,当在确认时发送缓冲器140a中存在未发送的控制系统数据、并且发送缓冲器140b中存在未发送的信息系统数据的情况下,将该控制系统数据和信息系统数据中的优先种类数据发送预定数量后发送一条非优先种类数据。另外,发送部150当在各发送缓冲器的确认时,发送缓冲器140a中存在未发送的控制系统数据、并且发送缓冲器140b中不存在未发送的信息系统数据的情况下,发送该控制系统数据。另外,发送部150当在各发送缓冲器的确认时,发送缓冲器140a中不存在未发送的控制系统数据、并且发送缓冲器140b中存在未发送的信息系统数据的情况下,发送该信息系统数据。
另外,hub200的发送部250例如将会如下这样进行对作为控制系统数据以及信息系统数据中的一方的优先种类数据优先于作为另一方的非优先种类数据来发送的优先发送控制。即,发送部250反复确认发送缓冲器240a和发送缓冲器240b,当在确认时发送缓冲器240a中存在未发送的数据、并且发送缓冲器240b中存在未发送的数据的情况下,将优先发送缓冲器的数据发送预定数量后发送非优先发送缓冲器的一条数据。另外,发送部250当在各发送缓冲器的确认时,发送缓冲器240a中存在未发送的数据、并且发送缓冲器240b中不存在未发送的数据的情况下,发送该存在的数据。另外,发送部250当在各发送缓冲器的确认时,发送缓冲器240a中不存在未发送的数据、并且发送缓冲器240b中存在未发送的数据的情况下,发送该存在的数据。
上述的预定数量也可以基于过去的车辆9的状态、车载装置的处理结果等来确定。此外,为了防止在优先发送控制中由于连续地发送优先发送缓冲器中的数据(优先种类数据)而使非优先发送缓冲器中的数据(非优先种类数据)完全不被发送,例如将比优先发送缓冲器中的数据的1份的量大的适当的数量(例如若用个数表示数量则为两个以上、或者若用数据量表示数量则为1份的量的大小的两倍以上的数据量)确认为上述的预定数量即可。
另外,x-ecu100的生成部130也可以如下这样变更图10所示的接收数据读取处理(步骤s1)或者图18所示的接收数据读取处理(步骤s1a)的优先读取控制。即,生成部130反复确认接收缓冲器120a(控制系统数据接收缓冲器)和接收缓冲器120b(信息系统数据接收缓冲器),当在确认时控制系统数据接收缓冲器中存在未读取的数据、并且信息系统数据接收缓冲器中存在未读取的数据的情况下,读取优先接收缓冲器中的未读取的数据。另外,生成部130当在各接收缓冲器的确认时,控制系统数据接收缓冲器中存在未读取的数据、并且信息系统数据接收缓冲器中不存在未读取的数据的情况下,读取控制系统数据接收缓冲器中的未读取的数据。另外,生成部130当在各接收缓冲器的确认时,控制系统数据接收缓冲器中不存在未读取的数据、并且信息系统数据接收缓冲器中存在未读取的数据的情况下,读取信息系统数据接收缓冲器中的未读取的数据。
另外,x-ecu100的发送部150也可以如下这样变更图12以及图13所示的数据发送处理(步骤s3)或者图19以及图13所示的数据发送处理(步骤s3a)的优先发送控制。即,发送部150反复确认发送缓冲器140a和发送缓冲器140b,当在确认时发送缓冲器140a中存在未发送的控制系统数据、并且发送缓冲器140b中存在未发送的信息系统数据的情况下,发送该控制系统数据和信息系统数据中的优先种类数据。另外,发送部150当在各发送缓冲器的确认时,发送缓冲器140a中存在未发送的控制系统数据、并且发送缓冲器140b中不存在未发送的信息系统数据的情况下,发送该控制系统数据。另外,发送部150当在各发送缓冲器的确认时,发送缓冲器140a中不存在未发送的控制系统数据、并且发送缓冲器140b中存在未发送的信息系统数据的情况下,发送该信息系统数据。
另外,hub200的选定部230也可以如下这样变更图10所示的接收数据读取处理(步骤s1)或者图18所示的接收数据读取处理(步骤s1a)的优先读取控制。即,选定部230反复确认接收缓冲器220a(控制系统数据接收缓冲器)和接收缓冲器220b(信息系统数据接收缓冲器),当在确认时控制系统数据接收缓冲器中存在未读取的数据、并且信息系统数据接收缓冲器中存在未读取的数据的情况下,读取优先接收缓冲器中的未读取的数据。另外,选定部230当在各接收缓冲器的确认时,控制系统数据接收缓冲器中存在未读取的数据、并且信息系统数据接收缓冲器中不存在未读取的数据的情况下,读取控制系统数据接收缓冲器中的未读取的数据。另外,选定部230当在各接收缓冲器的确认时,控制系统数据接收缓冲器中不存在未读取的数据、并且信息系统数据接收缓冲器中存在未读取的数据的情况下,读取信息系统数据接收缓冲器中的未读取的数据。另外,hub200也可以按照如下方式进行优先发送控制,即使从由优先信息表示的优先接收缓冲器读取到的数据的转发(基于该数据的数据发送)优先于从非优先接收缓冲器读取的数据的转发来进行。
另外,hub200的发送部250也可以如下这样变更图12以及图13所示的数据发送处理(步骤s3)或者图19以及图13所示的数据发送处理(步骤s3a)的优先发送控制。即,发送部250反复确认发送缓冲器240a和发送缓冲器240b,当在确认时发送缓冲器240a中存在未发送的数据、并且发送缓冲器240b中存在未发送的数据的情况下,发送优先发送缓冲器的数据。另外,发送部250当在各发送缓冲器的确认时,发送缓冲器240a中存在未发送的数据、并且发送缓冲器240b中不存在未发送的数据的情况下,发送该存在的数据。另外,发送部250当在各发送缓冲器的确认时,发送缓冲器240a中不存在未发送的数据、并且发送缓冲器240b中存在未发送的数据的情况下,发送该存在的数据。
(实施方式2)
以下,对将实施方式1中示出的车载网络系统10(参照图2)的构成进行一部分变形而得到的例子进行说明。
[2.1车载网络系统10a的构成]
图20是表示车载网络系统10a的概略构成的图。实施方式1中示出的车载网络系统10中的hub200与控制系统网络1中的1条can总线连接。与此相对地,如图20所示,在车载网络系统10a中,将hub200进行一部分变形而得到的hub200a与控制系统网络1a中的两条总线、也就是说总线30a(can总线1)以及总线30b(can总线2)连接。对于车载网络系统10a的构成要素中的与车载网络系统10同样的构成要素,在图20中标注与图2相同的标号,在此省略说明。另外,对于在此没有特别进行说明之处,车载网络系统10a与车载网络系统10是同样的。
控制系统网络1a中的总线30a上连接有c-ecu500a~500c,总线30b上连接有c-ecu500d、500e。c-ecu500d、500e分别例如是与门开闭传感器直接连接的门控制ecu、与窗开闭传感器直接连接的窗控制ecu等。
hub200a除了具有hub200的功能之外,还具有作为can网关的功能,具有将从一方的can总线接收到的can帧向另一方的can总线转发的功能。c-ecu500a~500e例如经由总线30a、总线30b以及hub200a相互通信,遵循can协议进行帧的授受。
hub200a具备与实施方式1中示出的hub200同样的构成(参照图7)。但是,在hub200a中,优先级设定部260能够根据车辆9的状态随时更新优先信息的内容。例如,优先级设定部260基于图21所示的优先级控制信息,根据车辆9处于行驶期间还是停止期间,更新优先信息。具体而言,如果车辆行驶状态(车辆9的行驶状态)是正在行驶,则提高控制系统数据接收缓冲器和控制系统数据发送缓冲器的优先级,如果车辆行驶状态是在停止期间,相反地则提高信息系统数据接收缓冲器和信息系统数据发送缓冲器的优先级。即,优先发送缓冲器例如在车辆9的行驶期间为发送缓冲器240a(控制系统数据发送缓冲器),在车辆9的停止期间为发送缓冲器240b(信息系统数据发送缓冲器)。hub200a例如能够根据从某个c-ecu接收到的can帧的内容(例如车辆状态数据)来判别车辆行驶状态是行驶期间还是停止期间。在停止期间,例如车速为零。hub200a的数据转发处理除了基于随时被更新的优先信息来进行之处,与hub200的数据转发处理是同样的(参照图10、图12~图15)。
此外,hub200a既可以与作为信息系统网络2的传输路径的多条ethernet(注册商标)电缆连接,也可以包含与实施方式1的e-hub400同样的功能。
[2.2与hub200a的转发功能关联的通信时序]
图22表示与hub200a的转发功能关联的通信时序的一例。在该例中,根据hub200a保持的转发规则信息,表示了从总线30a接收到的车辆状态数据的can帧应被转发至总线30b(can总线2)。
hub200a例如在车辆9开始行驶时,通过优先级设定部260设定优先信息以使得优先对象成为控制系统数据(步骤s1021)。由此,优先信息设定控制系统数据接收缓冲器(或者控制系统数据发送缓冲器)的优先级高于信息系统数据接收缓冲器(或者信息系统数据发送缓冲器)。
hub200a从信息系统网络2接收包含传感器信息的e帧(步骤s1022),从控制系统网络1a的例如总线30a(can总线1)接收包含车辆状态数据的can帧(步骤s1023)。而且,hub200a确认接收缓冲器220a、220b,优先从接收缓冲器220a读取车辆状态数据。hub200a将从接收缓冲器读取到的车辆状态数据的送达地选定为控制系统网络1a的总线30b,将包含该车辆状态数据的can帧向控制系统网络1a的总线30b进行发送(步骤s1024)。另外,hub200a从控制系统网络1a的总线30a另外又接收包含车辆状态数据的can帧(步骤s1025)。
hub200a确认接收缓冲器220a、220b,优先从接收缓冲器220a读取车辆状态数据,同样地将送达地选定为控制系统网络1a的总线30b,将包含该车辆状态数据的can帧向控制系统网络1a的总线30b进行发送(步骤s1026)。
hub200a确认接收缓冲器220a、220b,由于接收缓冲器220a中没有数据,因此从接收缓冲器220b读取传感器信息。在此,设为转发规则信息中表示了,该传感器信息以信息系统网络2的一个装置作为发送源、以另一装置作为送达地。而且,hub200a将该读取到的传感器信息的送达地选定为信息系统网络2,将使该传感器信息包含于有效载荷、且包含送达地的装置的mac地址作为报头的送达地mac地址的e帧向信息系统网络2进行发送(步骤s1027)。
[2.3实施方式2的效果]
在实施方式2涉及的车载网络系统10a中,与通信协议互不相同的第1网络(控制系统网络1a)和第2网络(信息系统网络2)双方连接的hub200a在数据的转发时,根据能够基于车辆9的状态随时更新的优先信息,进行从来自一方网络的数据的接收缓冲器的优先读取、或者从将一方网络作为送达地的数据的发送缓冲器的优先发送。由此,能够使基于数据的读取的处理或者发送处理等的优先顺序与在各网络中传输的数据的重要性等相对应。作为具体例,在车辆9的行驶期间,使对车辆9的行驶控制涉及的控制系统数据的发送优先于对图像数据等信息系统数据的发送,因此能够防止信息系统数据的传输对车辆9的安全行驶等造成不良影响。另外,相反地在车辆9的停止期间,能够使信息系统数据的传输优先,将图像及其他数据量较大的信息等无延迟地提供给车辆9的乘员(用户)从而提高用户的舒适度。
此外,与hub200a同样地,在x-ecu100中,优先级设定部160也可以根据车辆9的状态随时更新优先信息。由此,x-ecu100中的优先信息例如设定为,如果车辆9的行驶状态是正在行驶,则提高控制系统数据接收缓冲器和控制系统数据发送缓冲器的优先级,如果车辆行驶状态是在停止期间,相反地则提高信息系统数据接收缓冲器和信息系统数据发送缓冲器的优先级。即,优先接收缓冲器在车辆9的行驶期间为控制系统数据接收缓冲器,在车辆9的停止期间为信息系统数据接收缓冲器。另外,优先种类数据在车辆9的行驶期间为控制系统数据,在车辆9的停止期间为信息系统数据。
(其它实施方式)
如上,作为本公开涉及的技术的示例,对实施方式1、2进行了说明。然而,本公开涉及的技术不限定于此,也能够适用于进行了适当的变更、替换、附加、省略等的实施方式。例如,如下的变形例也包含于本公开的一个实施方式。
(1)在上述实施方式中示出的车载网络系统10、10a(参照图2、图20)中的车载网络的构成不过是一例,只要是包含遵循第1通信协议(例如can协议)用总线进行车辆的行驶控制涉及的第1种帧(例如can帧)的传输的第1网络、和遵循与第1通信协议不同的第2通信协议(例如ethernet(注册商标)协议)进行第2种帧(例如e帧)的传输的第2网络,可以是任何构成。例如,车载网络系统的构成也可以是图23~图28所示的变形例(变形例1~6)那样的构成。在各图中对同样的构成要素标注了相同标号。图23所示的车载网络系统10b具备从车载网络系统10去除了x-ecu100的构成。此外,e-ecu300a例如也可以具有adas功能。在车载网络系统10b中,e-ecu300a以及c-ecu500a~500c即便不像x-ecu100那样对应于两种通信协议,也能够经由hub200相互进行信息的授受。在图24所示的车载网络系统10c中,网关600不具有与ethernet(注册商标)协议对应的接口,具有承担对作为控制系统网络1b的传输路径的总线(can总线)30a、30c之间的can帧的转发的can网关的功能。而且,hub200b连接控制系统网络1b与信息系统网络2a,具有进行网络间的数据的中继(转发)的转发功能。hub200b具有连接于多个ethernet(注册商标)电缆的端口(连接端子),包含与实施方式1中示出的hub200同样的功能以及与e-hub400同样的功能。图25所示的车载网络系统10d相当于主要将车载网络系统10c中的控制系统网络1b替换成车载网络系统10中的控制系统网络1而得到的系统。图26所示的车载网络系统10e是将车载网络系统10中的信息系统网络2替换成总线型的信息系统网络2b的系统。在此,hub200c与控制系统网络1的总线30a和信息系统网络2b的总线20x连接,与hub200同样地具有在两个网络间转发数据的功能。另外,x-ecu100a具有与控制系统网络1和信息系统网络2b双方对应的通信接口,与控制系统网络1的总线30a和信息系统网络2b的总线20x连接。x-ecu100a与x-ecu100同样地能够从双方的网络接收数据,能够向双方的网络发送数据。由于具有与双方的网络对应的通信接口,因此x-ecu100a能够比经由hub200c与一方的网络进行数据的授受更迅速地进行数据的授受。图27所示的车载网络系统10f是将车载网络系统10e中的控制系统网络1替换成控制系统网络1b、将hub200c替换成与控制系统网络1b的多条can总线(总线30a、30c)连接的hub200d而得到的系统。hub200d具有与hub200c同样的功能和作为can网关的功能。图28所示的车载网络系统10g是将车载网络系统10e中的信息系统网络2b替换成信息系统网络2c、将hub200c替换成与信息系统网络2b的多条总线(总线20x、20y)连接的hub200e而得到的系统。hub200e包含与hub200c同样的功能和对信息系统网络2c中的帧的中继功能。此外,在上述的各车载网络系统中也可以省略外部通信装置92,另外,与信息系统网络的传输路径相连的各装置(传感器等)的功能或者与控制系统网络的传输路径相连的各c-ecu的功能也可以是任意功能。另外,各车载网络系统中的网络集线器(hub)例如e-hub400、hub200b等也可以不具有作为ethernet(注册商标)的交换机(交换式集线器)的功能,在不区别e帧的送达地mac地址发送e帧时,向与该hub连接的所有的ethernet(注册商标)电缆送出该e帧。另外,也可以变更上述的各车载网络系统中的信息系统网络的连接形态(网络拓补)。
(2)上述实施方式中示出的x-ecu100具有adas的功能,但是也可以不具有adas的功能而具有其他功能。另外,x-ecu100的生成部130也可以对向发送缓冲器140a或者发送缓冲器140b保存的数据附加表示用于作为优先发送控制的基准的发送优先级的信息(例如表示优先级的数值、或者表示应被优先这一情况的信息等)。发送部150也可以基于保存于各缓冲器的数据的发送优先级,例如进行如优先级越高越先发送等这样的优先发送控制。x-ecu100也可以使附加了表示该发送优先级的信息的数据包含于can帧或者e帧的内容而发送,例如hub200等也可以参照发送优先级,进行用于优先转发的控制(例如发送优先级越高越先从接收缓冲器读取并进行转发等)。另外,x-ecu100也可以经由具有网关功能等的装置(hub等中继装置)与控制系统网络和信息系统网络分别连接。
(3)在上述实施方式中,车载网络包括第1网络(控制系统网络)以及第2网络(信息系统网络),第1网络作为遵循can协议利用can总线进行can帧(数据帧)的传输的网络,第2网络作为遵循ethenet(注册商标)协议进行e帧(ethernet(注册商标)帧)的传输的网络。该can协议也可以作为还包括在自动化系统内的嵌入式系统等所使用的canopen或者ttcan(time-triggeredcan:时间触发can)、canfd(canwithflexibledatarate:具有灵活数据传输率的can)等派生协议的具有广义含义的协议来处理。另外,can协议中的数据帧除了标准id格式以外还可以是扩展id格式。另外,ethernet(注册商标)帧既可以例如是ethernet(注册商标)版本2的帧,也可以是由ieee802.3规定的帧。另外,ethernet(注册商标)协议也可以作为还包括ieee802.1涉及的ethernet(注册商标)avb(audiovideobridging)或者ieee802.1涉及的ethernet(注册商标)tsn(timesensitivenetworking)、ethernet(注册商标)/ip(industrialprotocol)、ethercat(注册商标)(ethernet(注册商标)forcontrolautomationtechnology)等派生协议的具有广义含义的协议来处理。另外,也可以为,第1网络是遵循第1通信协议用总线进行第1种帧(例如can帧等)的传输的网络,第2网络是遵循与第1通信协议不同的第2通信协议进行第2种帧(例如e帧等)的传输的网络。在该情况下,第1通信协议例如是can协议,但不限于can协议,例如也可以是lin(localinterconnectnetwork)、most(注册商标)(mediaorientedsystemstransport)、flexray(注册商标)等。另外,第2通信协议例如是ethernet(注册商标)协议,但不限于ethernet(注册商标)协议,例如也可以是broadr-reach协议等。通过包含该第1网络和第2网络的车载网络,经由上述的hub等,与第1网络连接的ecu等(例如c-ecu)发送的信息能够被传递到与第2网络连接的ecu等(例如e-ecu),相反地,与第2网络连接的ecu等发送的信息能够被传递到与第1网络连接的ecu等。此外,上述实施方式中示出的ethernet(注册商标)相对于can,能够由一个帧传输的数据量更多。在这点上,第2通信协议也可以是相对于第1通信协议能够由一个帧传输的数据量更多的各种协议。
(4)上述实施方式中示出的接收缓冲器(接收缓冲器120a、120b、220a、220b)所保存的can帧或者e帧的内容不限于数据(can帧的数据域的内容或者ethernet(注册商标)帧的有效载荷的内容),该内容也可以是包含can帧或者e帧的任何部分的信息的内容。另外,发送缓冲器(发送缓冲器140a、140b、240a、240b)所保存的数据也可以是与应发送的can帧或者e帧的整体的内容相当的数据。这样,即使在将应被发送的can帧的整体内容保存于发送缓冲器的情况下,发送部150、250也能够在can的控制系统网络的一部分发生了异常时,构建将该can帧的内容包含于有效载荷等的e帧而向信息系统网络发送。
(5)上述实施方式中示出的各种处理的步骤(例如图9~图19所示的步骤等)的执行顺序不一定限制于上述那样的顺序,在不脱离公开的主旨的范围内,也可以调换执行顺序、并行地进行多个步骤和/或省略该步骤的一部分。
(6)上述实施方式中的hub、e-hub、ecu(e-ecu、c-ecu以及x-ecu)等装置也可以包括硬盘装置、显示器、键盘、鼠标等其他的硬件构成要素。另外,既可以由处理器执行存储于存储器的程序以软件方式来实现该装置的功能,也可以通过专用的硬件(数字电路等)来实现其功能。另外,该装置内的各构成要素的功能分担可以变更。
(7)上述实施方式中示出的hub(例如hub200等)例如也可以不参照表示发送缓冲器涉及的优先级的信息,而通过参照优先信息中的表示接收缓冲器涉及的优先级的信息,进行控制以使得从优先接收缓冲器中优先读取数据后立即转发该数据。即,在包括遵循第1通信协议用总线进行车辆的行驶控制涉及的第1种帧的传输的第1网络、和遵循与第1通信协议不同的第2通信协议进行第2种帧的传输的第2网络的车载网络系统中,与第1网络的所述总线和第2网络连接的hub具备:第1接收缓冲器;第2接收缓冲器;第1接收部,其从所述总线逐次接收第1种帧,将该第1种帧内的数据保存于所述第1接收缓冲器;第2接收部,其从第2网络逐次接收第2种帧,将该第2种帧内的数据保存于所述第2接收缓冲器;选定部,其在从所述第1接收缓冲器以及所述第2接收缓冲器的某一方读取了数据时,选定该数据的送达地是第1网络还是第2网络;以及发送部,其在通过所述选定部选定了数据的送达地时向该送达地发送包含该数据的帧,所述选定部进行优先读取控制,以使得对作为所述第1接收缓冲器和所述第2接收缓冲器中的一方的优先接收缓冲器中的未读取的数据优先于作为另一方的非优先接收缓冲器中的未读取的数据来读取。根据该hub,只要依照第1网络和第2网络各自的特性适当地确定优先接收缓冲器,就能够通过优先读取控制适当地进行数据的传输。
(8)上述实施方式中的构成各装置的构成要素的一部分或全部也可以由1个系统lsi(largescaleintegration:大规模集成电路)构成。系统lsi是将多个构成部集成于1个芯片上而制造出的超多功能lsi,具体而言,是构成为包括微处理器、rom、ram等的计算机系统。所述ram中记录有计算机程序。所述微处理器按照所述计算机程序进行工作,由此系统lsi实现其功能。另外,构成上述各装置的构成要素的各部分既可以单独地单芯片化,也可以以包括一部分或全部的方式单芯片化。另外,虽然在此设为系统lsi,但是根据集成度不同,有时也称为ic、lsi、超大lsi(superlsi)、特大lsi(ultralsi)。另外,集成电路化的方法不限于lsi,也可以通过专用电路或通用处理器来实现。也可以在lsi制造后利用可编程的fpga(fieldprogrammablegatearray:现场可编程门阵列)和/或可以重构lsi内部的电路单元的连接、设定的可重构处理器。再者,随着半导体技术的进步或派生的其他技术的出现,如果出现能够代替lsi的集成电路化的技术,当然也可以使用该技术进行功能模块的集成化。也存在应用生物技术等的可能性。
(9)构成上述各装置的构成要素的一部分或全部也可以由能够装卸于各装置的ic卡或单体模块构成。所述ic卡或所述模块是由微处理器、rom、ram等构成的计算机系统。所述ic卡或所述模块也可以包括上述的超多功能lsi。微处理器按照计算机程序进行工作,由此所述ic卡或所述模块实现其功能。该ic卡或该模块也可以具有防篡改性能。
(10)作为本公开的一个技术方案,例如也可以是包含图9~图19等所示的处理步骤的全部或一部分的通信方法或者转发方法。例如,通信方法是ecu(例如x-ecu100)中所使用的通信方法,所述ecu在包括第1网络和第2网络的车载网络系统中与第1网络的总线和第2网络连接,具备第1接收缓冲器(接收缓冲器120a)、第2接收缓冲器(接收缓冲器120b)、第1发送缓冲器(发送缓冲器140a)以及第2发送缓冲器(发送缓冲器140b),所述第1网络遵循第1通信协议(例如can)用总线进行车辆的行驶控制所涉及的第1种帧(例如can帧)的传输,所述第2网络遵循与第1通信协议不同的第2通信协议(例如ethernet(注册商标))进行第2种帧(例如e帧)的传输,所述通信方法包括:第1接收步骤,从该总线逐次接收第1种帧,将该第1种帧内的数据保存于第1接收缓冲器(例如接收部110a进行的处理);第2接收步骤,从第2网络逐次接收第2种帧,将该第2种帧内的数据保存于第2接收缓冲器(例如接收部110b进行的处理);生成步骤,通过参照第1接收缓冲器和第2接收缓冲器的内容,逐次生成第1种数据(例如控制系统数据)和第2种数据(例如信息系统数据),将生成的第1种数据保存于第1发送缓冲器,将生成的第2种数据保存于第2发送缓冲器,所述第1种数据是车辆的行驶控制用的数据,所述第2种数据是在车辆的行驶控制以外所使用的数据(例如步骤s1、s2);发送步骤,发送第1发送缓冲器中的未发送的第1种数据和第2发送缓冲器中的未发送的第2种数据(例如步骤s3),在发送步骤中进行优先发送控制,以使得对作为第1种数据和第2种数据中的一方的优先种类数据优先于作为另一方的非优先种类数据进行发送。另外例如,转发方法是hub(例如hub200等)中所使用的转发方法,所述hub在包括第1网络和第2网络的车载网络系统中与第1网络的总线和第2网络连接,具备第1接收缓冲器(接收缓冲器220a)、第2接收缓冲器(接收缓冲器220b)、第1发送缓冲器(发送缓冲器240a)以及第2发送缓冲器(发送缓冲器240b),所述第1网络遵循第1通信协议用总线进行车辆的行驶控制所涉及的第1种帧的传输,所述第2网络遵循与第1通信协议不同的第2通信协议进行第2种帧的传输,所述转发方法包括:第1接收步骤,从该总线逐次接收第1种帧,将该第1种帧内的数据保存于第1接收缓冲器(例如接收部210a进行的处理);第2接收步骤,从第2网络逐次接收第2种帧,将该第2种帧内的数据保存于第2接收缓冲器(例如接收部210b进行的处理);选定步骤,选定作为第1接收缓冲器和第2接收缓冲器中的某一方的内容的数据的送达地是第1网络还是第2网络,在选定第1网络的情况下将该数据保存于第1发送缓冲器,在选定第2网络的情况下将该数据保存于第2发送缓冲器(例如步骤s1、s4);发送步骤,发送第1发送缓冲器中的未发送的数据和第2发送缓冲器中的未发送的数据(例如步骤s3),在发送步骤中进行优先发送控制,以使得对作为第1发送缓冲器和第2发送缓冲器中的一方的优先发送缓冲器中的未发送的数据优先于作为另一方的非优先发送缓冲器中的未发送的数据进行发送。另外,也可以是通过计算机实现该方法的程序(计算机程序),还可以是由所述计算机程序构成的数字信号。另外,作为本公开的一个技术方案,也可以将所述计算机程序或所述数字信号记录于记录于计算机可读取的记录介质例如软盘、硬盘、cd-rom、mo、dvd、dvd-rom、dvd-ram、bd(blu-ray(注册商标)disc)、半导体存储器等。另外,也可以是记录于这些记录介质的所述数字信号。另外,作为本公开的一个技术方案,也可以将所述计算机程序或所述数字信号经由电通信线路、无线或有线通信线路、以互联网为代表的网络、数据广播等进行传输。另外,作为本公开的一个技术方案,也可以是具备微处理器和存储器的计算机系统,所述存储器记录有上述计算机程序,所述微处理器按照所述计算机程序进行工作。另外,通过将所述程序或所述数字信号记录于所述记录介质来移送,或者将所述程序或所述数字信号经由所述网络等来移送,也可以通过独立的其他的计算机系统来实施。
(11)通过将上述实施方式以及上述变形例中示出的各构成要素以及功能任意地组合而实现的实施方式也包含在本公开的范围内。
产业上的可利用性
本公开能够利用于包括车载网络的车载网络系统。
标号说明
1、1a、1b控制系统网络;2、2a~2c信息系统网络;9车辆;10、10a~10g车载网络系统;11车载网络;20a~20f电缆;20x、20y总线;30a~30c总线(can总线);91外部网络;92外部通信装置;100、100a电子控制单元(x-ecu);110a、110b、210a、210b接收部;120a、120b、220a、220b接收缓冲器;130生成部;131检测部;132控制判断部;133数据生成部;140a、140b、240a、240b发送缓冲器;150、250发送部;151、251帧构建部;160、260优先级设定部;200、200a~200e网络集线器(hub);230选定部;231转发规则保持部;233转发数据生成部;300a电子控制单元(e-ecu);300b摄像头;300c激光雷达(lidar);300dgps接收机(gps);500a~500c电子控制单元(c-ecu);600网关。