[go: up one dir, main page]

JP2012128788A - Vehicle control device and data communication method - Google Patents

Vehicle control device and data communication method Download PDF

Info

Publication number
JP2012128788A
JP2012128788A JP2010281720A JP2010281720A JP2012128788A JP 2012128788 A JP2012128788 A JP 2012128788A JP 2010281720 A JP2010281720 A JP 2010281720A JP 2010281720 A JP2010281720 A JP 2010281720A JP 2012128788 A JP2012128788 A JP 2012128788A
Authority
JP
Japan
Prior art keywords
data
communication means
core
application
transmission data
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
Application number
JP2010281720A
Other languages
Japanese (ja)
Inventor
Hideyuki Iwakiri
英之 岩切
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2010281720A priority Critical patent/JP2012128788A/en
Publication of JP2012128788A publication Critical patent/JP2012128788A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Multi Processors (AREA)

Abstract

【課題】統合前のソフトウェアの修正を抑制して複数のECUが統合された車両制御装置等を提供すること。
【解決手段】第1のコアが実行する第1のアプリと第2のコアが実行する第2のアプリがそれぞれ外部にデータを送信する車両制御装置100であって、バス39を介して外部の機器と通信するため通信手段36と、第1のコアと第2のコアの間でデータ通信する内部通信手段37と、第2のアプリの第1の送信データを通信手段でなく内部通信手段に出力する出力先変更手段34(2)と、内部通信手段から取得した第1の送信データを第1のアプリ又は前記通信手段のどちらに出力するかを、前記第1の送信データの送信先情報が登録されたリストテーブルに従い制御するデータ送信先制御手段34(1)と、を有することを特徴とする。
【選択図】図2
To provide a vehicle control device or the like in which a plurality of ECUs are integrated by suppressing modification of software before integration.
A vehicle control device 100 in which a first app executed by a first core and a second app executed by a second core transmit data to the outside, respectively, The communication means 36 for communicating with the device, the internal communication means 37 for data communication between the first core and the second core, and the first transmission data of the second application to the internal communication means instead of the communication means The destination information of the first transmission data indicates whether to output the output destination changing means 34 (2) to be output and the first transmission data acquired from the internal communication means to the first application or the communication means. Data transmission destination control means 34 (1) for controlling according to the registered list table.
[Selection] Figure 2

Description

本発明は、車載装置を制御するECUに関し、特に、複数のECUが統合された統合ECUに関する。   The present invention relates to an ECU that controls an in-vehicle device, and more particularly to an integrated ECU in which a plurality of ECUs are integrated.

車載されるECU(electronic control unit)の数を低減することでECUの開発費を抑制することができるが、この場合、それまでは別々のECUに搭載されていたアプリを1つのECUに搭載する必要が生じる。   By reducing the number of ECUs (electronic control units) mounted on the vehicle, the development cost of the ECUs can be reduced. In this case, an application previously installed in a separate ECU is installed in one ECU. Need arises.

図1(a)は、ECUの統合により生じる不都合を説明する図の一例である。ECUαはマイコン上でアプリAを、ECUβはマイコン上でアプリBをそれぞれ実行している。アプリAとアプリBの下部のRTE(Runtime Environment)はアプリA、Bが利用する共通の機能を提供したり、アプリ間でデータやイベントを受け渡すレイヤである。   FIG. 1A is an example of a diagram for explaining inconvenience caused by integration of the ECU. The ECU α executes the application A on the microcomputer, and the ECU β executes the application B on the microcomputer. An RTE (Runtime Environment) below the application A and the application B is a layer that provides a common function used by the applications A and B and passes data and events between the applications.

RTEの下のレイヤはCAN通信の通信内容に対応した通信モジュールであり、COM、NM及びDiagCANが図示されている。COMは一般のデータを通信するモジュールであり、NMはネットワークマネージメント機能を司るモジュールであり、DiagCANはサービスツール(ディーラーの工場などでCANバスに外部から接続される診断ツール)からのダイアグ情報の要求に対しアプリからダイアグ情報を取得するモジュールである。なお、MCAL(Microcontroller Abstraction Layer)は各種のドライバの集合でありソフトウェア側からハードウェアを隠蔽している。   The layer below the RTE is a communication module corresponding to the communication content of CAN communication, and COM, NM, and DiaCAN are illustrated. COM is a module that communicates general data, NM is a module that manages the network management function, and DiagCAN is a request for diagnostic information from a service tool (diagnostic tool that is externally connected to the CAN bus at a dealer's factory, etc.) It is a module that acquires diagnostic information from the app. Note that MCAL (Microcontroller Abstraction Layer) is a set of various drivers and hides hardware from the software side.

図1(b)は、ECUαとECUβが1つのECUに統合されたECUγの構成例を示す。アプリA側のMCAL及びアプリB側のMCALは、COM、NM又はDiagCANのいずれかの要求に応じて、CANバスにフレームを出力する。図1(b)のようにECUの統合のためECUγにチャネルを2つ以上設けておけば、2つのMCALはそれぞれCANバスにCANフレームを出力できるが、現実には制約が多い。例えば、ECUαやβのNMは機能の一つとして、CANバス上の他のECUにNMフレームを定期的に送信する機能を有する。これにより、ECUγからNMフレームを受信できなかった他のECUは、ECUγが故障していることを検出できる。このため、規格や社内規定において、NMメッセージは1つのECUから1つしかCANバスに出力してはいけないと定められることがある。   FIG. 1B shows a configuration example of an ECU γ in which the ECU α and the ECU β are integrated into one ECU. The MCAL on the application A side and the MCAL on the application B side output a frame to the CAN bus in response to any request of COM, NM, or DiagCAN. As shown in FIG. 1B, if two or more channels are provided in the ECU γ for ECU integration, each of the two MCALs can output a CAN frame to the CAN bus, but there are many restrictions in reality. For example, the NMs of the ECUs α and β have a function of periodically transmitting NM frames to other ECUs on the CAN bus as one of the functions. Thereby, other ECUs that have not received the NM frame from the ECU γ can detect that the ECU γ is out of order. For this reason, in standards and in-house regulations, it may be determined that only one NM message should be output from one ECU to the CAN bus.

この不都合を回避するため、統合時に例えばECUβのNMだけを開発者が削除することが考えらえる。しかし、アプリAやアプリBは、元々、NMに対しスリープしてよい状態であることを通知する機能を有しており、逆にNMは(他のECUのNMからNMメッセージを受信して)アプリA、Bに対し起床を要求する必要がある。このことは、アプリA,BはNMのAPI(Application Programming Interface)がないと動作できないことを意味しており、NMだけを削除することが困難であることを意味している(NMを削除するとアプリA,Bの修正が必要になる)。   In order to avoid this inconvenience, it can be considered that, for example, the developer deletes only the NM of ECUβ during integration. However, the application A and the application B originally have a function of notifying the NM that it is possible to sleep, and conversely, the NM (receives an NM message from the NM of another ECU). It is necessary to request the apps A and B to get up. This means that the apps A and B cannot operate without an NM API (Application Programming Interface), which means that it is difficult to delete only the NM. Application A and B need to be modified).

ここで、既存のソフトウェアの修正を行うことなく又は修正を抑制して、ソフトウェアの移植性を高める技術が考案されている(例えば、特許文献1参照。)。特許文献1には、シングルプロセッサ用の複数のプログラムを複数のプロセッサに分散した場合に、各プロセッサに各プログラムの疑似部を設け、異なるプロセッサに分散したプログラムと疑似部を介して通信するプロセッサ間通信方式が開示されている。   Here, a technique has been devised that improves the portability of software without modifying existing software or suppressing modification (see, for example, Patent Document 1). In Patent Document 1, when a plurality of programs for a single processor are distributed to a plurality of processors, a pseudo part of each program is provided in each processor, and the programs distributed to different processors communicate with each other via the pseudo part. A communication method is disclosed.

特開平5−324574号公報JP-A-5-324574

しかしながら、特許文献1に開示されたプロセッサ間通信方式を採用すると、開発者は、元のシングルプロセッサが実行していたプログラムの数だけ疑似部を作成する必要があり、プログラムの数が多くなるほど開発コストが大きくなるという問題が解消されない。また、新しいプログラムを統合することが考慮されておらず、新しいプログラムを統合する場合に、すでに存在するプログラムの疑似部との関係を構築するための開発コストが多大になるおそれがある。   However, when the inter-processor communication method disclosed in Patent Document 1 is adopted, the developer needs to create as many pseudo-parts as the number of programs executed by the original single processor, and the development increases as the number of programs increases. The problem of increased costs is not solved. In addition, it is not considered to integrate a new program, and when a new program is integrated, there is a possibility that the development cost for constructing a relationship with a pseudo part of an existing program may become large.

本発明は、上記課題に鑑み、統合前のソフトウェアの修正を抑制して複数のECUが統合された車両制御装置等を提供することを目的とする。   In view of the above problems, an object of the present invention is to provide a vehicle control device or the like in which a plurality of ECUs are integrated by suppressing modification of software before integration.

本発明は、第1のコアが実行する第1のアプリと第2のコアが実行する第2のアプリがそれぞれ外部にデータを送信する車両制御装置であって、バスを介して外部の機器と通信するため通信手段と、前記第1のコアと前記第2のコアの間でデータ通信する内部通信手段と、前記第2のアプリの第1の送信データを前記通信手段でなく前記内部通信手段に出力する出力先変更手段と、前記内部通信手段から取得した前記第1の送信データを前記第1のアプリ又は前記通信手段のどちらに出力するかを、前記第1の送信データの送信先情報が登録されたリストテーブルに従い制御するデータ送信先制御手段と、を有することを特徴とする。   The present invention is a vehicle control device in which a first app executed by a first core and a second app executed by a second core transmit data to the outside, respectively, and an external device via a bus Communication means for communicating, internal communication means for data communication between the first core and the second core, and the first transmission data of the second application not the communication means but the internal communication means The destination information of the first transmission data indicating whether to output the first transmission data acquired from the internal communication means to the first application or the communication means. Data transmission destination control means for controlling according to the registered list table.

統合前のソフトウェアの修正を抑制して複数のECUが統合された車両制御装置等を提供することができる。   It is possible to provide a vehicle control device or the like in which a plurality of ECUs are integrated while suppressing modification of software before integration.

ECUの統合により生じる不都合を説明する図の一例である。It is an example of the figure explaining the inconvenience which arises by integration of ECU. 統合ECUに統合されたアプリの通信方法を説明する図の一例である。It is an example of the figure explaining the communication method of the application integrated in integrated ECU. 統合ECUのハードウェア構成図の一例である。It is an example of the hardware block diagram of integrated ECU. 2つのECUα、βが統合された1つの統合ECUの機能ブロック図の一例である。It is an example of a functional block diagram of one integrated ECU in which two ECUs α and β are integrated. PDUルータが呼び出すドライバとデータの宛先の関係が登録されたドライバテーブルの一例である。It is an example of a driver table in which a relationship between a driver called by a PDU router and a data destination is registered. PDUルータ1とPDUルータ2がデータを送信又は受信する手順を示すフローチャート図の一例である。It is an example of the flowchart figure which shows the procedure in which the PDU router 1 and the PDU router 2 transmit or receive data. アプリA〜CがRTEを介して通信する場合のECUの構成例を示す図の一例である。It is an example of the figure which shows the structural example of ECU in case the application AC communicates via RTE. 2つのECUα、βが統合された1つの統合ECUの機能ブロック図の一例である(実施例2)。(Example 2) which is an example of the functional block diagram of one integrated ECU with which two ECU (alpha), (beta) was integrated. IPC-IF/IPCドライバが通信する手順を模式的に示す図の一例である。It is an example of the figure which shows typically the procedure which an IPC-IF / IPC driver communicates. PDUルータ1とPDUルータ2がデータを送信又は受信する手順を示すフローチャート図の一例である(実施例2)。FIG. 10 is an example of a flowchart illustrating a procedure in which PDU router 1 and PDU router 2 transmit or receive data (second embodiment). データフローを説明する図の一例である。It is an example of the figure explaining a data flow. マルチマイコンの機能ブロック図の一例である。It is an example of a functional block diagram of a multi-microcomputer. マルチマイコンの機能ブロック図の一例である。It is an example of a functional block diagram of a multi-microcomputer. PDUルータ1とPDUルータ2がデータを送信又は受信する手順を示すフローチャート図の一例である(実施例3)。FIG. 10 is an example of a flowchart illustrating a procedure in which PDU router 1 and PDU router 2 transmit or receive data (third embodiment).

以下、本発明を実施するための形態について図面を参照しながら説明する。
図2は統合ECU100に統合されたコア同士の通信方法を説明する図の一例である。図2の統合ECU(electronic control unit)100では、COM、NM及びDiagCAN(これらを通信モジュール33という場合がある)のレイヤとMCAL35(区別する場合MCAL1,2という)のレイヤの間に、PDUルータ(Protocol Data Unit Router)34が設けられている。PDUルータ(区別する場合PDUルータ1,2という)は、通信データのルーティングを行うレイヤである。
Hereinafter, embodiments for carrying out the present invention will be described with reference to the drawings.
FIG. 2 is an example of a diagram illustrating a communication method between cores integrated in the integrated ECU 100. In the integrated ECU (electronic control unit) 100 of FIG. 2, a PDU router is provided between the COM, NM, and DiaCAN (sometimes referred to as the communication module 33) layer and the MCAL35 (referred to as MCAL1, 2). (Protocol Data Unit Router) 34 is provided. The PDU router (referred to as PDU routers 1 and 2 when distinguished) is a layer for routing communication data.

また、MCAL35にはDMAコントローラ37に通信を要求するDMAドライバ38(区別する場合DMAドライバ1,2という)が配置されている。DMAドライバ38は従来のMCALにも備えられているが、図2のDMAドライバ38は統合ECU100においてアプリ31(区別する場合アプリA、Bという)間でデータ通信が可能になるように設計されている。   In addition, the MCAL 35 is provided with a DMA driver 38 (referred to as DMA drivers 1 and 2 for distinction) that requests communication from the DMA controller 37. The DMA driver 38 is also provided in the conventional MCAL, but the DMA driver 38 in FIG. 2 is designed so that the integrated ECU 100 can perform data communication between the applications 31 (referred to as applications A and B when distinguished). Yes.

例えば通信モジュール33がPDUルータ2に通信データの送信を要求すると、PDUルータ2は送信先がアプリAであることから、DMAドライバ2を呼び出す。すなわち、CANドライバでなくDMAドライバ2を呼び出すことで、DMAコントローラ37がデータを転送し、コア36(区別する場合コア1,2という)が他方のコア36と通信することができるようになる。コア2から見ると、CANバス39の代わりに実際には存在しない仮想CANバス40に通信データを出力する態様になる。   For example, when the communication module 33 requests the PDU router 2 to transmit communication data, the PDU router 2 calls the DMA driver 2 because the transmission destination is the application A. That is, by calling the DMA driver 2 instead of the CAN driver, the DMA controller 37 transfers data, and the core 36 (referred to as cores 1 and 2 when distinguished) can communicate with the other core 36. When viewed from the core 2, communication data is output to a virtual CAN bus 40 that does not actually exist instead of the CAN bus 39.

アプリA側のDMAドライバ1はDMAコントローラ37の割込み等によりデータを受信したことを検出して、データをPDUルータ1に送信する。PDUルータ1は送信先がアプリAであることから、RTE32(区別する場合RTE1,2という)を経由してアプリAにデータを送信する。   The DMA driver 1 on the application A side detects that the data has been received by an interruption or the like of the DMA controller 37 and transmits the data to the PDU router 1. Since the transmission destination is the application A, the PDU router 1 transmits data to the application A via the RTE 32 (referred to as RTE 1 and 2 when distinguished).

また、例えば、アプリBのデータの宛先が他のECUである場合、アプリA側のDMAドライバ1がデータをPDUルータ1に送信すると、PDUルータ1は宛先が他のECUであることからCANドライバを呼び出す。CANドライバを呼び出すことで、CANコントローラ29は、CANバス39にデータを出力することができる。   Further, for example, when the data destination of the application B is another ECU, when the DMA driver 1 on the application A side transmits the data to the PDU router 1, the PDU router 1 has the CAN driver because the destination is the other ECU. Call. By calling the CAN driver, the CAN controller 29 can output data to the CAN bus 39.

このように、統合した2つのアプリ側にPDUルータ1,2及びDMAドライバ1,2をそれぞれ設けDMAコントローラ37を利用することで、アプリA,Bや通信モジュール33を修正することなく、アプリA、B間で通信することができる。また、例えば、アプリB側のNM2が出力するNMメッセージはCANバス39から出力されないので、1つのECUからNMメッセージは1つしか出力されないようにすることができる。   In this way, by providing the PDU routers 1 and 2 and the DMA drivers 1 and 2 on the two integrated applications, respectively, and using the DMA controller 37, the applications A and B and the communication module 33 are not corrected. , B can communicate with each other. Further, for example, since the NM message output from the NM2 on the application B side is not output from the CAN bus 39, it is possible to output only one NM message from one ECU.

〔構成〕
図3は、統合ECU100のハードウェア構成図の一例を示す。統合ECU100は、マルチレイヤバス14を介して接続されたプロセッサ11、DMAコントローラ37、SDRAM12、CANコントローラ29、I/O16及びROM13を有する。プロセッサ11は、2つのCPU(以下、区別する場合CPU1、2という)15を有するが、CPU15の数は2つ以上であれば4つ以上でもよい。各CPU1、2は、コア36、コア間通信部21、及び、ローカルRAM36を有する。各CPU1、2の機能を区別するため、CPU内の各機能にCPU1、2と同じ番号を付す。
〔Constitution〕
FIG. 3 shows an example of a hardware configuration diagram of the integrated ECU 100. The integrated ECU 100 includes a processor 11, a DMA controller 37, an SDRAM 12, a CAN controller 29, an I / O 16, and a ROM 13 connected via the multilayer bus 14. The processor 11 includes two CPUs 15 (hereinafter referred to as CPUs 1 and 2 when distinguished), but the number of CPUs 15 may be four or more as long as it is two or more. Each CPU 1, 2 has a core 36, an inter-core communication unit 21, and a local RAM 36. In order to distinguish the functions of the CPUs 1 and 2, the same numbers as the CPUs 1 and 2 are assigned to the functions in the CPU.

コア1、2は、PC(プログラムカウンタ)、命令バッファ、IFU(Instruction Fetch Unit)、DEC(DECoder)、RF(Register Fetch)、REG(REGister)、SH(Shifter)、ALU、MUL及びFPU等の演算回路、汎用レジスタ、及び、ロード/ストアユニット等を有する。これらが1クロック毎に命令実行段階の各ステージを実行することでいわゆるパイプライン制御が実現されている。   Cores 1 and 2 are PC (program counter), instruction buffer, IFU (Instruction Fetch Unit), DEC (DECoder), RF (Register Fetch), REG (REGister), SH (Shifter), ALU, MUL, FPU, etc. An arithmetic circuit, a general-purpose register, a load / store unit, and the like are included. By executing each stage of the instruction execution stage every clock, so-called pipeline control is realized.

ROM13にはアプリA〜C及びPF(Plat Form)24が記憶されている。アプリA、Bは2つのECUα、βが統合される前の一方のECUαに搭載されていたアプリであり、アプリCは他方のECUβに搭載されていたアプリである。PF24は、ハードウェアの違いを吸収してアプリA〜Cをコア1,2が実行するための実行環境を提供する。本実施例では、AUTOSAR(AUTomotive Open System Architecture)で標準化されている基本ソフトウェアを例にして説明するが、ハードウェアの違いを隠蔽可能であれば単純なOSとすることもできる。   The ROM 13 stores applications A to C and a PF (Plat Form) 24. The apps A and B are apps installed in one ECU α before the two ECUs α and β are integrated, and the app C is an app installed in the other ECU β. The PF 24 provides an execution environment for the cores 1 and 2 to execute the applications A to C by absorbing differences in hardware. In this embodiment, the basic software standardized by AUTOSAR (AUTomotive Open System Architecture) will be described as an example. However, a simple OS can be used as long as the difference in hardware can be concealed.

PF24は、上層から、RTE、サービス層、ECU抽象化層、及び、MCAL(マイクロコントローラ抽象化層)等の各レイヤによって構成される。サービス層は、ハードウェアから独立した、様々なサービスを提供する層であり、OS(例えば、OSEK(Open system together with interfaces for automotive electronics)やその他、組み込み用OS、リアルタイムOS等)、システムサービス(診断ソフト、メモリ管理ソフト等)、メモリサービス、通信サービス(車載LANの通信のためのネットワーク管理ソフト(CAN、FlexRay,LIN等))を有する。上記のCOM、NM及びDiagCANの通信モジュール33はサービス層に含まれる。   The PF 24 is composed of layers such as an RTE, a service layer, an ECU abstraction layer, and a MCAL (microcontroller abstraction layer) from the upper layer. The service layer is a layer that provides various services independent of hardware, such as OS (for example, OSEK (Open system together with interfaces for automotive electronics), other embedded OS, real-time OS, etc.), system service ( Diagnostic software, memory management software, etc.), memory service, and communication service (network management software (CAN, FlexRay, LIN, etc.) for in-vehicle LAN communication). The COM, NM, and DiaCAN communication modules 33 are included in the service layer.

ECU抽象化層は、搭載機器、メモリハードウェア、通信ハードウェア、及び、I/Oハードウェア等、ECUの全ての基本コンポーネントを抽象化する。最下層のMCALは、ECUのマイコンの全ての機能と周辺機器を抽象化する層である。MCALより上位のレイヤはマイコンのハードウェアから独立している。MCALは、上記のDMAドライバ38の他、例えば、メモリドライバ、通信ドライバ及びI/Oドライバを有する。   The ECU abstraction layer abstracts all basic components of the ECU, such as onboard equipment, memory hardware, communication hardware, and I / O hardware. The lowermost MCAL is a layer that abstracts all the functions and peripheral devices of the microcomputer of the ECU. The layer above MCAL is independent of the hardware of the microcomputer. In addition to the DMA driver 38 described above, the MCAL includes, for example, a memory driver, a communication driver, and an I / O driver.

図ではPF24は1つとしたが、統合前のコアやマイコンの種類が異なっている場合、統合前のPF24も異なっている場合があるので、その場合はそれぞれのPF24をROM13に記憶しておく。   Although the number of PFs 24 is one in the figure, when the types of cores and microcomputers before integration are different, the PFs 24 before integration may also be different. In this case, each PF 24 is stored in the ROM 13.

コア1は、ROM13に記憶されたPF24、アプリA,Bを実行し、コア2は、ROM13に記憶されたPF24、アプリCを実行する。ローカルRAM1はコア1に専用のメモリ(一次キャッシュ)であり、ローカルRAM2はコア2に専用のメモリである。SDRAM12は、コア1、2にプログラム又はデータを提供するためのメモリ(二次キャッシュ)である。SDRAM12の少なくとも一部はコア1、2により共有される。   The core 1 executes the PF 24 and applications A and B stored in the ROM 13, and the core 2 executes the PF 24 and application C stored in the ROM 13. The local RAM 1 is a memory (primary cache) dedicated to the core 1, and the local RAM 2 is a memory dedicated to the core 2. The SDRAM 12 is a memory (secondary cache) for providing programs or data to the cores 1 and 2. At least a part of the SDRAM 12 is shared by the cores 1 and 2.

コア間通信部1、2は、コア通信バス16を介してコア1、2が相互に割り込んだり、通信することを可能にする。コア1、2は、コア間通信部1、2により、他のコアの異常の有無を監視したり、ローカルRAM1,2を介してデータを相互に通信することができる。なお、コア1〜3は、マルチレイヤバス14を経由して互いに通信することもできる。   The inter-core communication units 1 and 2 enable the cores 1 and 2 to interrupt and communicate with each other via the core communication bus 16. The cores 1 and 2 can monitor the presence / absence of other cores by the inter-core communication units 1 and 2 and can communicate data with each other via the local RAMs 1 and 2. The cores 1 to 3 can also communicate with each other via the multilayer bus 14.

マルチレイヤバス14はCPU1用、CPU2用、及び、DMAコントローラ37の読み書き用の計4層のレイヤを備える。DMAコントローラ37はマルチレイヤバス14に接続された各ブロックからのSDRAM12へのアクセス要求を調停すると共に、SDRAM12からローカルRAM1、2へ(又は、ローカルRAM1、2からSDRAM)へ、I/O16からSDRAM12へ(又はSDRAMからI/Oへ)、コア1,2を介在することなくデータを転送する。DMAコントローラ37は転送終了によりコア1、2に適宜割込みをかけることできる。   The multi-layer bus 14 includes a total of four layers for the CPU 1, the CPU 2, and the DMA controller 37 for reading and writing. The DMA controller 37 arbitrates access requests to the SDRAM 12 from each block connected to the multi-layer bus 14, and from the SDRAM 12 to the local RAMs 1 and 2 (or from the local RAMs 1 and 2 to SDRAM), and from the I / O 16 to the SDRAM 12 The data is transferred without going through the cores 1 and 2 (or from SDRAM to I / O). The DMA controller 37 can appropriately interrupt the cores 1 and 2 upon completion of the transfer.

CANコントローラ29はCANプロトコルに従って通信処理を行う通信コントローラであり、この他、FlexRayやLIN用の通信コントローラを有していてもよい。I/O16はマイコンと外部の機器を接続するインタフェースであり、各種のセンサ、アクチュエータ等が接続される。   The CAN controller 29 is a communication controller that performs communication processing in accordance with the CAN protocol, and may have a communication controller for FlexRay or LIN. The I / O 16 is an interface for connecting a microcomputer and an external device, to which various sensors, actuators, and the like are connected.

図4は、2つのECUα、βが統合された1つの統合ECU100の機能ブロック図の一例である。   FIG. 4 is an example of a functional block diagram of one integrated ECU 100 in which two ECUs α and β are integrated.

アプリAとアプリBは、一方が他方の演算結果を利用するようなアプリでもよいし、アプリBは単なるアイドルタスクのようにアプリAとBの結びつきが弱くてもよい。前者の場合、アプリA又はBがRTE32を介してイベントやデータを通知することで、互いに呼び出して実行される。アプリCは、ECUβに特有のアプリであるが、アプリA、Bがボデー系ならアプリCもボデー系のように結びつきの強いアプリであってもよいし、関連のないアプリでもよい。   The app A and the app B may be an app in which one uses the calculation result of the other, and the app B may be weakly linked to the app A and B like a simple idle task. In the former case, the application A or B notifies the event or data via the RTE 32 and is called and executed. The application C is an application specific to the ECU β. However, if the applications A and B are body systems, the application C may be an application that has a strong connection like the body system, or may be an unrelated application.

通信モジュール33はCOM、NM及びDiagCANを有し、図1において説明したとおり、COMは一般のデータを、NMはネットワークマネージメント機能のためのデータを、DiagCANはサービスツールに必要なデータを、それぞれ送受信するモジュールである。これら通信モジュールは、プロトコルに応じた(例えばCAN、FlexRay、Lin)通信の処理を行う。そして、さらに通信モジュールは、COM、NM、DiagCANなど、通信モジュールに定められたフォーマットでCANフレーム等を作成する。また、受信時には、CANIDに基づき受信すべきデータを選択的に受信する。COM、NM及びDiagCANのどの通信モジュールが処理すべきかはCANIDから判定される。   The communication module 33 has COM, NM, and DiagCAN. As described with reference to FIG. 1, COM is general data, NM is data for network management functions, and DiaCAN is data necessary for service tools. It is a module to do. These communication modules perform communication processing according to a protocol (for example, CAN, FlexRay, Lin). Further, the communication module creates a CAN frame or the like in a format determined by the communication module, such as COM, NM, and DiaCAN. At the time of reception, data to be received is selectively received based on CANID. Which communication module of COM, NM, and DiaG should be processed is determined from CANID.

なお、NMはOSEK/VDX―NM(Network Management)の規定に基づく通信を行うモジュールである。OSEK−NMでは、1つの車載LANに接続された各ECUが、自身のスリープ可否を判別して、そのスリープ可否を示すNM(Network Management)メッセージを定期的にネットワークバスへ送信するように規定されている。なお、NMメッセージはCANのメッセージの一表現に過ぎず、フォーマットや送信手順はCANプロトコルに従うが、周期的に送信されるなどの特徴があるのでOSEK−NMに基づくメッセージをNMメッセージという。   Note that NM is a module that performs communication based on OSEK / VDX-NM (Network Management) regulations. In OSEK-NM, each ECU connected to one in-vehicle LAN is determined to determine whether or not it can sleep and periodically transmit an NM (Network Management) message indicating whether or not to sleep to the network bus. ing. Note that the NM message is merely an expression of a CAN message, and the format and transmission procedure conforms to the CAN protocol. However, the NM message has a feature such that it is periodically transmitted. Therefore, a message based on OSEK-NM is called an NM message.

NM1,2は、予め定められた周期毎に、アプリA、B又はCがスリープ可能か否かの判定を行い、スリープ可否を示すNMメッセージを、決まった順番で他のECUに送信する。各ECUは、NMメッセージを受信すると、他の各ECUがスリープ可否を記憶しておき、車載LANに接続された全てのECUがスリープ可になると、スリープモードへ移行する処理を開始する。したがって、スリープモードに入っていないのに、自身が受信すべき他のECUからNMメッセージを受信しないことで、他のECUに異常があることを検出できる。   The NMs 1 and 2 determine whether or not the apps A, B, or C can sleep at every predetermined cycle, and transmit NM messages indicating whether sleep is possible or not to other ECUs in a predetermined order. When each ECU receives the NM message, the other ECUs store whether or not sleep is possible, and when all ECUs connected to the in-vehicle LAN are allowed to sleep, the process of shifting to the sleep mode is started. Therefore, it is possible to detect that there is an abnormality in the other ECU by not receiving the NM message from the other ECU that should be received even though it is not in the sleep mode.

なお、NMはNMメッセージの他にNS(Network Status)メッセージを送信することもがあるが、NMメッセージと同様に取り扱うことができるので省略する。   The NM may transmit an NS (Network Status) message in addition to the NM message, but it can be handled in the same manner as the NM message, and is omitted here.

PDUルータ34は、データの送信先を制御する。CANコントローラ29を制御することができるコア1のPDUルータ1と、直接はCANコントローラ29を制御できないコア2のPDUルータ2とで機能が異なる。   The PDU router 34 controls the data transmission destination. The functions differ between the PDU router 1 of the core 1 that can control the CAN controller 29 and the PDU router 2 of the core 2 that cannot directly control the CAN controller 29.

データの送信時、PDUルータ2は、CANドライバ38を呼び出せないので、全てのCANフレームを機械的にPDUルータ1に転送する必要がある。PDUルータ2はCOM、NM及びDiagCANのいずれの通信モジュールから通信を要求されても、DMAドライバ2を呼び出す。   Since the PDU router 2 cannot call the CAN driver 38 at the time of data transmission, it is necessary to mechanically transfer all CAN frames to the PDU router 1. The PDU router 2 calls the DMA driver 2 when communication is requested from any of the COM, NM, and DiaCAN communication modules.

PDUルータ2がDMAドライバ2からデータを受信した場合は、宛先は通信モジュール33のいずれかであるので、通信モジュール33にデータを転送する。   When the PDU router 2 receives data from the DMA driver 2, the destination is one of the communication modules 33, so the data is transferred to the communication module 33.

なお、コア2が4つめのアプリDを実行する場合も、コア2はCANコントローラ37を制御できないので、PDUルータ2の機能は同様である。   Even when the core 2 executes the fourth application D, since the core 2 cannot control the CAN controller 37, the function of the PDU router 2 is the same.

次にPDUルータ1について説明する。
・PDUルータ1の送信時
PDUルータ1がCOM、NM及びDiagCANのいずれかの通信モジュール33からデータの送信を要求された場合、CANバス39に出力するだけでは、ECUβが受信していたデータをコア2が受信できない。このため、PDUルータ1は、データの送信時、CANドライバ1とDMAドライバ1の両方を呼び出す。データを受信するか否かは、コア2の通信モジュール33が判定すればよい。
Next, the PDU router 1 will be described.
-When transmitting from the PDU router 1 When the PDU router 1 is requested to transmit data from any one of the communication modules 33 of COM, NM, and DiaCAN, the data received by the ECU β is simply output to the CAN bus 39. Core 2 cannot receive. Therefore, the PDU router 1 calls both the CAN driver 1 and the DMA driver 1 when transmitting data. Whether or not to receive data may be determined by the communication module 33 of the core 2.

また、統合前のECUβが受信していたCANIDをリストアップしておき、PDUルータ1がそのCANIDのデータの送信を受け付けた場合には、DMAドライバ1を呼び出すようにしてもよい。
・PDUルータ1の受信時
PDUルータ1がデータを受信するのはCANドライバ経由とDMAドライバ1経由の場合がある。CANドライバ経由でデータを受信した場合、統合前と同様に、CANフレームは受信バッファなどに記憶され、COM、NM及びDiagCAN等の通信モジュール33が受信すべきか否かを判定する。したがって、PDUルータ1はCANドライバ経由で受信した全てのデータを通信モジュール33に出力する。
Alternatively, the CANID received by the ECU β before integration may be listed, and the DMA driver 1 may be called when the PDU router 1 accepts the transmission of data of the CANID.
At the time of reception by the PDU router 1 The PDU router 1 may receive data via the CAN driver or the DMA driver 1 in some cases. When data is received via the CAN driver, the CAN frame is stored in the reception buffer or the like as before the integration, and the communication module 33 such as COM, NM, and DiaCAN determines whether or not the data should be received. Therefore, the PDU router 1 outputs all data received via the CAN driver to the communication module 33.

また、通信モジュール33に出力するだけでは、統合前にECUβがECUαから受信していたデータをコア2が受信できない。このため、PDUルータ1は、CANドライバ経由でデータを受信した際、DMAドライバ1にデータを出力する。データを受信するか否かは、コア2の通信モジュール33が判定すればよい。この場合も、統合前のECUβが受信していたCANIDをリストアップしておき、PDUルータ1がそのCANIDのデータの送信を受け付けた場合にだけ、DMAドライバ1を呼び出すようにしてもよい。   Moreover, the core 2 cannot receive the data that the ECU β received from the ECU α before the integration only by outputting it to the communication module 33. Therefore, the PDU router 1 outputs data to the DMA driver 1 when receiving data via the CAN driver. Whether or not to receive data may be determined by the communication module 33 of the core 2. Also in this case, the CANID received by the ECU β before the integration may be listed, and the DMA driver 1 may be called only when the PDU router 1 accepts the transmission of the data of the CANID.

DMAドライバ1経由でデータを受信した場合、PDUルータ1は少なくともNMメッセージをCANバスに出力することを禁止する。このため、開発者などが予めCANバスに転送してよいCANフレーム(又は転送してはいけないCANフレーム)を転送リストテーブルに登録しておく。   When data is received via the DMA driver 1, the PDU router 1 prohibits at least outputting the NM message to the CAN bus. For this reason, a CAN frame (or a CAN frame that should not be transferred) that a developer or the like may transfer to the CAN bus is registered in advance in the transfer list table.

図5は、転送リストテーブルの一例を示す。転送リストテーブルには、転送してはいけないCANIDが登録されている。このCANIDにはNMメッセージのCANIDが含まれることになる。PDUルータ1は、DMAドライバ1経由でデータを受信した際、転送リストテーブルにより転送が禁止されていないデータのみCANドライバを呼び出してCANバス39に転送する。   FIG. 5 shows an example of the transfer list table. In the transfer list table, CANIDs that should not be transferred are registered. This CANID includes the CANID of the NM message. When the PDU router 1 receives data via the DMA driver 1, the PDU router 1 calls the CAN driver and transfers only the data whose transfer is not prohibited by the transfer list table to the CAN bus 39.

また、CANバス39に出力するだけでは、統合前にECUαがECUβから受信していたデータをコア1が受信できない。このため、PDUルータ1は、DMAドライバ1経由でデータを受信した際、通信モジュール33にデータを出力する。データを受信するか否かは、コア1の通信モジュール33が判定すればよい。   Moreover, the core 1 cannot receive the data that the ECU α has received from the ECU β before the integration only by outputting to the CAN bus 39. Therefore, the PDU router 1 outputs data to the communication module 33 when receiving data via the DMA driver 1. The communication module 33 of the core 1 may determine whether to receive data.

CANドライバは統合前と変更がない。CANドライバは、ハードウェアであるCANコントローラ29から独立したインターフェイスであり、CANコントローラ29の初期化、CANメッセージの送信・受信、などの基本的な機能を提供する。   The CAN driver is the same as before integration. The CAN driver is an interface independent from the CAN controller 29 that is hardware, and provides basic functions such as initialization of the CAN controller 29 and transmission / reception of CAN messages.

DMAドライバ1,2は、ハードウェアであるDMAコントローラ37から独立したインターフェイスであり、DMAコントローラ37にデータの送信を実行させ、DMAコントローラ37が転送したデータを受信する。   The DMA drivers 1 and 2 are interfaces that are independent of the DMA controller 37 that is hardware, and cause the DMA controller 37 to transmit data and receive the data transferred by the DMA controller 37.

DMAドライバ1は、通信モジュールから取得したデータをローカルRAM1に記憶している。したがって、このデータをローカルRAM2に送信すれば、コア1からコア2にデータを転送したことになる。DMAドライバ2の場合はこの逆になる。ローカルRAM1,2のいずれも、CANフレームを送信する送信バッファ、及び、受信バッファのアドレスは予め定められている。送信バッファ及び受信バッファはいずれもFIFO形式のバッファである。   The DMA driver 1 stores data acquired from the communication module in the local RAM 1. Therefore, if this data is transmitted to the local RAM 2, the data is transferred from the core 1 to the core 2. The reverse is true for the DMA driver 2. In both the local RAMs 1 and 2, addresses of a transmission buffer and a reception buffer for transmitting a CAN frame are determined in advance. Both the transmission buffer and the reception buffer are FIFO type buffers.

DMAドライバ38は、PDUルータ34から呼び出された際に、SDRAM12を介してローカルRAM1からローカルRAM2へ(又は、その逆に)データを転送できるように修正されている。   The DMA driver 38 is modified so that data can be transferred from the local RAM 1 to the local RAM 2 via the SDRAM 12 (or vice versa) when called from the PDU router 34.

DMAドライバ1は、ローカルRAM1の送信バッファの先頭アドレスを、DMAコントローラ37の転送元アドレスレジスタに、データ長などから必要な転送回数をDMAコントローラ37の転送回数レジスタに(又は転送終了アドレスレジスタにCANフレームの最後のアドレスを設定してもよい)、SDRAM12の共有領域の先頭アドレスを、DMAコントローラ37の転送先アドレスレジスタに、それぞれ設定し、DMAコントローラ37に送信させる。   The DMA driver 1 sets the start address of the transmission buffer of the local RAM 1 in the transfer source address register of the DMA controller 37, and the transfer count required from the data length or the like in the transfer count register of the DMA controller 37 (or in the transfer end address register). The last address of the frame may be set), and the start address of the shared area of the SDRAM 12 is set in the transfer destination address register of the DMA controller 37 and transmitted to the DMA controller 37.

DMAコントローラ37は転送が終了すると、コア2に割り込みして通知するので、コア2のDMAドライバ2は、SDRAM12の共有領域からCANフレームを読み出すことができる。   When the transfer is completed, the DMA controller 37 interrupts and notifies the core 2 so that the DMA driver 2 of the core 2 can read the CAN frame from the shared area of the SDRAM 12.

DMAドライバ2の場合も同様である。DMAドライバ2は、PDUルータ2から取得したCANフレームをローカルRAM2に記憶している。DMAドライバ2は、ローカルRAM2の送信バッファの先頭アドレスを、DMAコントローラ37の転送元アドレスレジスタに、データ長などから必要な転送回数をDMAコントローラ37の転送回数レジスタに、SDRAM12の共有領域の先頭アドレスを、DMAコントローラ37の転送先アドレスレジスタに、それぞれ設定し、送信させる。   The same applies to the DMA driver 2. The DMA driver 2 stores the CAN frame acquired from the PDU router 2 in the local RAM 2. The DMA driver 2 sets the start address of the transmission buffer of the local RAM 2 in the transfer source address register of the DMA controller 37, the transfer count required from the data length and the like in the transfer count register of the DMA controller 37, and the start address of the shared area of the SDRAM 12 Are set in the transfer destination address register of the DMA controller 37 and transmitted.

DMAコントローラ37は転送が終了すると、コア2に割り込みして通知するので、コア2のDMAドライバ2は、SDRAM12の共有領域からCANフレームを読み出すことができる。   When the transfer is completed, the DMA controller 37 interrupts and notifies the core 2 so that the DMA driver 2 of the core 2 can read the CAN frame from the shared area of the SDRAM 12.

なお、SDRAM12を経由することなく、ローカルRAM1、2間でデータを転送してもよい。この場合、DMAドライバ38の代わりに、コア間通信部21のドライバを使用するなど、コア間通信に必要なドライバを用いればよい。   Note that data may be transferred between the local RAMs 1 and 2 without going through the SDRAM 12. In this case, a driver necessary for inter-core communication may be used instead of the DMA driver 38, such as using a driver of the inter-core communication unit 21.

以上のように、PDUルータ1,2とDMAドライバ38を修正するだけで、アプリA,Bの可搬性や損なうことなく、2つのECUα、βを統合することができる。   As described above, it is possible to integrate the two ECUs α and β by only modifying the PDU routers 1 and 2 and the DMA driver 38 without losing the portability of the apps A and B.

<動作手順>
図6は、PDUルータ1とPDUルータ2がデータを送信又は受信する手順を示すフローチャート図の一例である。図6の手順はPDUルータ1又はPDUルータ2がデータを取得するとスタートする。
<Operation procedure>
FIG. 6 is an example of a flowchart illustrating a procedure in which the PDU router 1 and the PDU router 2 transmit or receive data. The procedure of FIG. 6 starts when the PDU router 1 or the PDU router 2 acquires data.

PDUルータ1から説明する。まず、PDUルータ1がデータを取得する(S10)。データを取得する場合には、アプリA又はアプリBから送信用のデータを取得する場合と、CANドライバ1又はDMAドライバ1から受信用のデータを取得する場合がある。送信時か受信時かは、PDUルータ1がアプリ側又はドライバ側のどちらからデータを取得したかにより判定される。   The PDU router 1 will be described. First, the PDU router 1 acquires data (S10). When acquiring data, there are a case where data for transmission is acquired from the application A or the application B, and a case where data for reception is acquired from the CAN driver 1 or the DMA driver 1. Whether data is transmitted or received is determined based on whether the PDU router 1 has acquired data from the application side or the driver side.

データの受信時(S20のYes)、PDUルータ1はDMAドライバ1からデータを取得したか否かを判定する(S30)。   When receiving data (Yes in S20), the PDU router 1 determines whether or not the data has been acquired from the DMA driver 1 (S30).

DMAドライバ1からデータを取得した場合(S30のYes)、PDUルータ1はNMメッセージの転送を禁止するため、転送リストテーブルを参照し、送信禁止のデータを除き、CANドライバを呼び出してCANバスに転送する(S40)。   When the data is acquired from the DMA driver 1 (Yes in S30), the PDU router 1 refers to the transfer list table to refer to the transfer list table to prohibit the transfer of the NM message and calls the CAN driver to the CAN bus except for the transmission prohibited data. Transfer (S40).

続いて、PDUルータ1は、DMAドライバ1から取得したかCANドライバから取得したかに関係なく、データを通信モジュール33に出力する(S50)。通信モジュール33は、CANIDに基づき受信が必要か否かを判定し、必要な場合はRTE32を介してアプリA又はアプリBに出力する。   Subsequently, the PDU router 1 outputs data to the communication module 33 regardless of whether the data is acquired from the DMA driver 1 or the CAN driver (S50). The communication module 33 determines whether or not reception is necessary based on the CANID, and outputs to the application A or the application B via the RTE 32 if necessary.

また、PDUルータ1がCANドライバから取得したデータはアプリC宛の可能性もあるので、PDUルータ1はDMAドライバ1を呼び出す(S60)。これにより、DMAドライバ1がDMAコントローラ37を用いてDMAドライバ2にデータを送信する。   Further, since the data acquired from the CAN driver by the PDU router 1 may be addressed to the application C, the PDU router 1 calls the DMA driver 1 (S60). As a result, the DMA driver 1 transmits data to the DMA driver 2 using the DMA controller 37.

データの送信時(S20のNo)、PDUルータ1は、CANドライバを呼び出す(S70)。これにより、CANドライバ1がCANコントローラ29を用いてCANバス39にデータを送信する。   At the time of data transmission (No in S20), the PDU router 1 calls the CAN driver (S70). As a result, the CAN driver 1 transmits data to the CAN bus 39 using the CAN controller 29.

また、PDUルータ1が取得した送信用のデータがアプリC宛の可能性があるので、PDUルータ1はDMAドライバ1を呼び出す(S80)。これにより、DMAドライバ1がDMAコントローラ37を用いてDMAドライバ2にデータを送信する。   Further, since there is a possibility that the transmission data acquired by the PDU router 1 is addressed to the application C, the PDU router 1 calls the DMA driver 1 (S80). As a result, the DMA driver 1 transmits data to the DMA driver 2 using the DMA controller 37.

次に、PDUルータ2について説明する。まず、PDUルータ2がデータを取得する(S110)。PDUルータ2がデータを取得する場合には、アプリCから送信用のデータを取得する場合と、DMAドライバ2から受信用のデータを取得する場合がある。送信時か受信時かは、PDUルータ2がアプリ側又はドライバ側のどちらからデータを取得したかにより判定される。   Next, the PDU router 2 will be described. First, the PDU router 2 acquires data (S110). When the PDU router 2 acquires data, there are a case where data for transmission is acquired from the application C and a case where data for reception is acquired from the DMA driver 2. Whether data is transmitted or received is determined by whether the PDU router 2 has acquired data from the application side or the driver side.

データの受信時(S110のYes)、PDUルータ2はデータを通信モジュール33に出力する(S120)。通信モジュール33は、CANIDに基づき受信が必要か否かを判定する。   When receiving data (Yes in S110), the PDU router 2 outputs the data to the communication module 33 (S120). The communication module 33 determines whether reception is necessary based on CANID.

データの送信時(S110のNo)、PDUルータ2はDMAドライバ2を呼び出す(S130)。これにより、DMAドライバ2がDMAコントローラ37を用いてDMAドライバ1にデータを送信する。   At the time of data transmission (No in S110), the PDU router 2 calls the DMA driver 2 (S130). As a result, the DMA driver 2 transmits data to the DMA driver 1 using the DMA controller 37.

<効果>
以上のような統合ECU100によれば、アプリCが送信したNMメッセージはアプリA又はアプリBには送信されても、CANバス39には出力されないので1つのECUから出力されるNMメッセージを1つにすることができる。
<Effect>
According to the integrated ECU 100 as described above, even if the NM message transmitted by the application C is transmitted to the application A or B, it is not output to the CAN bus 39. Therefore, one NM message output from one ECU is provided. Can be.

また、アプリA〜Cを修正する必要がなく、修正の対象をDMAドライバ1,2やPDUルータ1、2に限定することができる。したがって、アプリA〜Cの可搬性を保つことができる。   Further, it is not necessary to modify the applications A to C, and the modification target can be limited to the DMA drivers 1 and 2 and the PDU routers 1 and 2. Therefore, the portability of the apps A to C can be maintained.

また、この他の効果としてCPU15の利用効率が低下しにくいという効果がある。
図7(a)はアプリA〜CがRTE32を介して通信する場合の統合ECUの構成例を示す図の一例である。RTE32にはイベントやデータをアプリ間で送受信する機能があるので、図示するようにDMAドライバ1,2を用いることなく、2つのECUを統合することも可能である。
Another effect is that the utilization efficiency of the CPU 15 is not easily lowered.
FIG. 7A is an example of a diagram illustrating a configuration example of the integrated ECU when the applications A to C communicate via the RTE 32. Since the RTE 32 has a function of transmitting and receiving events and data between applications, it is possible to integrate two ECUs without using the DMA drivers 1 and 2 as shown in the figure.

アプリAはアプリBと、アプリAはアプリCとRTEを介して通信することができる。また、CANバス39から通信モジュール(COM)が受信したデータは、通信モジュールがRTE32を介してアプリCに送信することもできる。しかしながら、RTE32で統合による全ての影響を吸収する方法を採用した場合、アプリA、Bがコア2のローカルRAM2に、アプリCがコア1のローカルRAM1にアクセスすることを意味しており、アプリA〜Cに排他制御が必要であることを意味する。排他されたアプリは実行されない(処理を進行できない)ので、CPU15の利用効率が低下する。これに対し、本実施例の統合ECU100ではこのような不都合をもたらすことがない。   App A can communicate with app B, and app A can communicate with app C via RTE. Further, the data received by the communication module (COM) from the CAN bus 39 can be transmitted to the application C by the communication module via the RTE 32. However, when the method of absorbing all the effects of integration in RTE 32 is adopted, it means that apps A and B access local RAM 2 of core 2 and app C accesses local RAM 1 of core 1. This means that exclusive control is required for .about.C. Since the exclusive application is not executed (the process cannot proceed), the utilization efficiency of the CPU 15 decreases. In contrast, the integrated ECU 100 of the present embodiment does not cause such inconvenience.

また、統合ECU100の消費電力の低消費電力化が図れるという効果がある。
図7(b)は4つのコア1〜4とアプリA〜Hの関係を模式的に示す図の一例である。コア1はアプリA、Bを、コア2はアプリC、Dを、コア3はアプリE、Fを、コア4はアプリG、Hを、それぞれ実行する。例えば、アプリDはアプリE,Fとしか通信せず、アプリCはアプリFとしか通信しない場合(外部とも通信しない)、コア2とコア3の中で通信が完結する。このため、アプリC、D、E、Fでスリープ条件が成立した場合、コア2,3を停止させることができ、低消費電力化を達成しやすい。より具体的には図7(a)のようにRTE32がアプリC、D、E、F間の通信を担うと、アプリC、D、E、Fがスリープ条件を満たしても、通信のためにRTE32は起動しておく必要があるので、コア2,3を停止させることができず、低消費電力化が図れない。本実施例ではコア単位でRTE32も停止しておくことができるので、統合ECU100の消費電力を低減することが容易になる。
Further, there is an effect that the power consumption of the integrated ECU 100 can be reduced.
FIG. 7B is an example of a diagram schematically illustrating the relationship between the four cores 1 to 4 and the applications A to H. The core 1 executes the apps A and B, the core 2 executes the apps C and D, the core 3 executes the apps E and F, and the core 4 executes the apps G and H. For example, when the app D communicates only with the apps E and F and the app C communicates only with the app F (not communicating with the outside), the communication is completed in the core 2 and the core 3. For this reason, when the sleep conditions are established in the applications C, D, E, and F, the cores 2 and 3 can be stopped, and low power consumption can be easily achieved. More specifically, as shown in FIG. 7A, when the RTE 32 is responsible for communication between the applications C, D, E, and F, even if the applications C, D, E, and F satisfy the sleep condition, Since the RTE 32 needs to be activated, the cores 2 and 3 cannot be stopped, and the power consumption cannot be reduced. In the present embodiment, since the RTE 32 can also be stopped in units of cores, it becomes easy to reduce the power consumption of the integrated ECU 100.

実施例1ではDMAドライバ1,2によりコア間通信を行うことで統合ECU100を構成した。本実施例では、IPC-IF41/IPCドライバ42によりコア間通信を統合ECU100について説明する。   In the first embodiment, the integrated ECU 100 is configured by performing inter-core communication using the DMA drivers 1 and 2. In this embodiment, the inter-core communication by the IPC-IF 41 / IPC driver 42 will be described for the integrated ECU 100.

図8は、2つのECUα、βを統合して得られた1つの統合ECU100の機能ブロック図の一例である。図8において図4と同一部の説明は省略する。図8ではDMAドライバ1の代わりにIPC-IF(InterProcess Communication Inter Face)1/IPC((InterProcess Communication)ドライバ1が、DMAドライバ2の代わりにIPC-IF2/IPCドライバ2が、配置されている。   FIG. 8 is an example of a functional block diagram of one integrated ECU 100 obtained by integrating two ECUs α and β. In FIG. 8, the description of the same part as in FIG. 4 is omitted. In FIG. 8, an IPC-IF (InterProcess Communication Interface) 1 / IPC (InterProcess Communication) driver 1 is arranged instead of the DMA driver 1, and an IPC-IF2 / IPC driver 2 is arranged instead of the DMA driver 2.

また、DMAコントローラ37の代わりにローカルRAM1が配置されている。図8の構成ではコア1とコア2は、FIFO形式の送信キュー、受信キュー、及び、ローカルRAM1を介して通信する。   A local RAM 1 is arranged instead of the DMA controller 37. In the configuration of FIG. 8, the core 1 and the core 2 communicate via the FIFO-type transmission queue, the reception queue, and the local RAM 1.

IPC-IF41は送信キュー43へのデータの登録機能と受信キューにデータが届いた場合にアプリ側に受信完了通知を出力する。
IPCドライバ42は、
・送信キューにストックされたデータをローカルRAM1に登録する。
・共有RAMにストックされたデータを受信キューに書き込む。
The IPC-IF 41 outputs a reception completion notification to the application side when data arrives in the reception queue and the function of registering data in the transmission queue 43.
The IPC driver 42
Register the data stocked in the transmission queue in the local RAM 1.
Write the data stored in the shared RAM to the reception queue.

図9は、IPC-IF1/IPCドライバ1とIPC-IF2/IPCドライバ2とが通信する手順を模式的に示す図の一例である。図9はNMの周期的な通信を例にしている。図9(a)はコア1からコア2への送信手順を、図9(b)はコア2からコア1への送信手順をそれぞれ示す。   FIG. 9 is an example of a diagram schematically illustrating a procedure in which the IPC-IF1 / IPC driver 1 and the IPC-IF2 / IPC driver 2 communicate with each other. FIG. 9 shows an example of NM periodic communication. FIG. 9A shows a transmission procedure from the core 1 to the core 2, and FIG. 9B shows a transmission procedure from the core 2 to the core 1.

図9(a)に基づき説明する。
(1)まず、NM1からPDUルータ1に送信登録するとPDUルータ内で静的に設定されたCANIDのルーティング情報を元にIPC-IF1側にデータを登録する。
(2)コア1のPDUルータ1はIPCドライバ1を起床させる。
(3)IPCドライバ1は送信キュー43のデータを読み出しローカルRAM1に記憶する。
(4)コア2のPDUルータ2はIPCドライバ2を起床させる。
(5)IPCドライバ2はローカルRAM1のデータを読み出し、PDUルータ2にデータを登録する。PDUルータ側では静的に設定されたCANIDのルーティング情報を元にIPC-IF2の受信キュー44に登録する。
(6)PDUルータ2は、NM2に受信完了通知を通知する。
This will be described with reference to FIG.
(1) First, when transmission registration is performed from the NM1 to the PDU router 1, data is registered on the IPC-IF1 side based on the routing information of the CANID statically set in the PDU router.
(2) The PDU router 1 of the core 1 wakes up the IPC driver 1.
(3) The IPC driver 1 reads the data in the transmission queue 43 and stores it in the local RAM 1.
(4) The PDU router 2 of the core 2 wakes up the IPC driver 2.
(5) The IPC driver 2 reads the data in the local RAM 1 and registers the data in the PDU router 2. On the PDU router side, registration is made in the reception queue 44 of the IPC-IF 2 based on the routing information of the CANID set statically.
(6) The PDU router 2 notifies the NM 2 of a reception completion notification.

図9(b)は手順が逆になるだけなので説明を省略する。図9(a)と(b)のいずれもローカルRAM1を共有RAMとして使用しているので、なんらかの排他制御が必要になるが。本実施例では、例えばセマフォを利用し、IPCドライバ1,2のうちセマフォを取得した方がローカルRAM1の使用権を得るようになっている。   Since FIG. 9B only reverses the procedure, the description is omitted. 9A and 9B both use the local RAM 1 as a shared RAM, some kind of exclusive control is required. In the present embodiment, for example, the semaphore is used, and the one that acquires the semaphore among the IPC drivers 1 and 2 obtains the right to use the local RAM 1.

図10は、PDUルータ1とPDUルータ2がデータを送信又は受信する手順を示すフローチャート図の一例である。図10の手順は図6の手順とほぼ同じであり、PDUルータ34がDMAドライバ38を呼び出すか、IPC-IF41/IPCドライバ42を呼び出すかが異なるだけである。   FIG. 10 is an example of a flowchart illustrating a procedure in which the PDU router 1 and the PDU router 2 transmit or receive data. The procedure shown in FIG. 10 is almost the same as the procedure shown in FIG. 6 except that the PDU router 34 calls the DMA driver 38 or the IPC-IF 41 / IPC driver 42.

このように、アプリ間(プロセス間)の通信を可能にするドライバであれば、DMAコントローラ37を用いる必要はなく、実施例1と同様にアプリ間の通信が可能な統合ECU100を実現することができる。   As described above, if the driver enables communication between applications (between processes), the DMA controller 37 does not need to be used, and the integrated ECU 100 capable of communication between applications as in the first embodiment can be realized. it can.

図11は、データフローを説明する図の一例である。図11では通信モジュール33のCOMが通信する手順を例にしている。
・アプリB→アプリA
(A1)アプリCが送信すべきデータdata_aを生成したため、RTE32を介してCOMに送信する。なお、「共通CS(Communication Stack)」は各コアで共通の、COMやIPC-IF41、IPCドライバ42を使用した通信処理を行う機能(ソフトウェア)である。
(A2)COMはメッセージを生成し、PDUルータ2に送信する。
(A3)PDUルータ2は、メッセージをIPC-IF2の送信キュー43に登録する。
(A4)IPCドライバ2は送信キュー43からメッセージを読み出してローカルRAM1に書き込む。
(A5)IPCドライバ1はローカルRAM1からメッセージを読み出し、IPC-IF1の受信キュー44に登録する。
(A6)IPC-IF1は受信完了通知とメッセージをPDUルータ1に通知する。PDUルータはデータを振り分けることができるが、図では通信モジュール33のCOM側にデータを出力している。
(A7)COM1はデータをアプリAに出力する。
・アプリA→CANバス
(B1)アプリAが送信すべきデータdata_bを生成した場合、RTE1を介してCOM1に送信する。
(B2)COM1はメッセージを生成し、PDUルータ1に出力する。
(B3)PDUルータ1は、メッセージBをCAN I/F45とIPC-IF1に出力する。図では、IPC−IF1側への出力は省略した。なお、CAN
I/F45は、送信キューへのデータの登録機能と受信キューにデータが届いた場合にPDUルータ1側に受信完了通知を出力する
(B4)CAN I/F45はCANドライバにメッセージBを出力する。
(B5)CANドライバは、CANコントローラ29を使用してフレームBをCANバス39に出力する。
FIG. 11 is an example illustrating a data flow. FIG. 11 illustrates an example of a procedure in which the COM of the communication module 33 communicates.
・ App B → App A
(A1) Since the data data_a to be transmitted by the application C is generated, it is transmitted to the COM via the RTE 32. The “common CS (Communication Stack)” is a function (software) that performs communication processing using the COM, the IPC-IF 41, and the IPC driver 42 that is common to each core.
(A2) The COM generates a message and transmits it to the PDU router 2.
(A3) The PDU router 2 registers the message in the transmission queue 43 of the IPC-IF2.
(A4) The IPC driver 2 reads a message from the transmission queue 43 and writes it in the local RAM 1.
(A5) The IPC driver 1 reads a message from the local RAM 1 and registers it in the reception queue 44 of the IPC-IF 1.
(A6) The IPC-IF 1 notifies the PDU router 1 of a reception completion notification and a message. The PDU router can sort the data, but in the figure, the data is output to the COM side of the communication module 33.
(A7) COM1 outputs data to application A.
Application A → CAN bus (B1) When data data_b to be transmitted by application A is generated, it is transmitted to COM1 via RTE1.
(B2) COM1 generates a message and outputs it to the PDU router 1.
(B3) The PDU router 1 outputs the message B to the CAN I / F 45 and IPC-IF1. In the figure, output to the IPC-IF1 side is omitted. CAN
The I / F 45 outputs a reception completion notification to the PDU router 1 when the data arrives in the transmission queue and the reception queue (B4). The CAN I / F 45 outputs a message B to the CAN driver. .
(B5) The CAN driver outputs the frame B to the CAN bus 39 using the CAN controller 29.

以上のように、DMAコントローラ37を用いなくても、IPC-IF41/IPCドライバ42を用いることで、実施例1と同様に、1つのECUから出力されるNMメッセージを1つにすることができ、アプリA〜Cの可搬性を保つことができる。また、CPU15の利用効率を低下させることがなく、消費電力も低減しやすい。   As described above, by using the IPC-IF 41 / IPC driver 42 without using the DMA controller 37, it is possible to make one NM message output from one ECU as in the first embodiment. The portability of the apps A to C can be maintained. Further, the utilization efficiency of the CPU 15 is not lowered, and the power consumption is easily reduced.

実施例1,2では複数のECUを、マルチコア型のプロセッサを備えた1つマイコンに統合して1つの統合ECU100を実現した。本実施例では、複数のマイコンを1つのECUに統合した統合ECU100について説明する。マイコンという枠組みを残したままの統合ECU100には2つの構成がある。   In the first and second embodiments, a single integrated ECU 100 is realized by integrating a plurality of ECUs into a single microcomputer including a multi-core type processor. In this embodiment, an integrated ECU 100 in which a plurality of microcomputers are integrated into one ECU will be described. There are two configurations of the integrated ECU 100 that leaves the framework of the microcomputer.

図12は、マルチマイコンの機能ブロック図の一例である。図12において図4と同一部の説明は省略する。図12では、統合ECU100にマイコン51(区別する場合マイコン1,2という)が搭載されたので、最下層にマイコン1,2が配置されている。マイコン1,2はDMAコントローラ37により通信するものとするが、マイコン1,2が通信可能であれば共有メモリ(IPC-IF41/IPCドライバ42)、専用の通信線などを介して通信してもよい。図12のようなマルチマイコンの場合の通信手順は実施例1と同様なので説明は省略する。   FIG. 12 is an example of a functional block diagram of the multi-microcomputer. In FIG. 12, the description of the same part as in FIG. 4 is omitted. In FIG. 12, since the microcomputer 51 (referred to as microcomputers 1 and 2 when distinguished) is mounted on the integrated ECU 100, the microcomputers 1 and 2 are arranged in the lowest layer. The microcomputers 1 and 2 communicate with each other by the DMA controller 37. However, if the microcomputers 1 and 2 can communicate with each other, they can communicate with each other via a shared memory (IPC-IF41 / IPC driver 42) or a dedicated communication line. Good. Since the communication procedure in the case of a multi-microcomputer as shown in FIG.

図13は、マルチマイコンの機能ブロック図の一例である。図13において図4と同一部の説明は省略する。1つのマイコン51は、通常、複数個のチャネルを有するので、マイコン2側のチャネルの1つをDMAコントローラ37に割り当てても、チェネルが余る。また、NMメッセージ以外は、1つのECUが複数個出力しても問題がない。そこで、マイコン2のもう1つのチェネルをCANコントローラ29に割り当てる。こうすることで、マイコン1と2は、NMメッセージだけを統合ECU100内で処理すればよいことになる。   FIG. 13 is an example of a functional block diagram of the multi-microcomputer. In FIG. 13, the description of the same parts as in FIG. 4 is omitted. Since one microcomputer 51 normally has a plurality of channels, even if one of the channels on the microcomputer 2 side is assigned to the DMA controller 37, a channel remains. Moreover, there is no problem even if a single ECU outputs a plurality of messages other than NM messages. Therefore, another channel of the microcomputer 2 is assigned to the CAN controller 29. By doing so, the microcomputers 1 and 2 need only process the NM message in the integrated ECU 100.

すなわち、PDUルータ2は、CANIDからNMメッセージと判定される場合、又は、通信モジュール33からデータを受け付けた場合、DMAドライバ2を呼び出し、それ以外の場合はCANドライバ2を呼び出す。PDUルータ1のDMAドライバ1は、実施例1と同様にデータを受信してPDUルータ1に出力する。PDUルータ1はNMメッセージであるのでCANバス39に出力することなく、通信モジュール33にだけデータを出力する。こうすることで、2つのマイコン1,2を有する統合ECU100でも、複数のNMメッセージをCANバス39に出力することを防止できる。   That is, the PDU router 2 calls the DMA driver 2 when it is determined as an NM message from the CANID, or when data is received from the communication module 33, and calls the CAN driver 2 in other cases. The DMA driver 1 of the PDU router 1 receives data and outputs it to the PDU router 1 as in the first embodiment. Since the PDU router 1 is an NM message, the data is output only to the communication module 33 without being output to the CAN bus 39. By doing so, the integrated ECU 100 having the two microcomputers 1 and 2 can prevent a plurality of NM messages from being output to the CAN bus 39.

また、マイコン1及び2の双方がCANコントローラ29を有するので、PDUルータ1は、DMAドライバ1により内部的にマイコン2と通信することも、CANバス39を介してマイコン2と通信することもできる。マイコン2との通信を、統合前と同様にCANバス39を使用するように設計すれば、PDUルータ1、2が必要なCANフレームの振り分けをさらに少なくできる。   Since both the microcomputers 1 and 2 have the CAN controller 29, the PDU router 1 can communicate with the microcomputer 2 internally by the DMA driver 1 or with the microcomputer 2 via the CAN bus 39. . If communication with the microcomputer 2 is designed to use the CAN bus 39 in the same manner as before integration, the distribution of CAN frames required by the PDU routers 1 and 2 can be further reduced.

図14は、PDUルータ1とPDUルータ2がデータを送信又は受信する手順を示すフローチャート図の一例である。図14の手順のうち図6の手順と異なるステップを説明する。   FIG. 14 is an example of a flowchart illustrating a procedure in which the PDU router 1 and the PDU router 2 transmit or receive data. Steps different from the procedure of FIG. 6 in the procedure of FIG. 14 will be described.

まず、実施例1と同様に、データの受信時、PDUルータ1はDMAドライバ1からデータを取得した場合(S30のYes)、PDUルータ1はNMメッセージの転送を禁止するため、転送リストテーブルを参照し、送信禁止のデータを除き、CANドライバを呼び出してCANバス39に転送する(S40)。   First, as in the first embodiment, when receiving data, when the PDU router 1 acquires data from the DMA driver 1 (Yes in S30), the PDU router 1 prohibits the transfer of the NM message. The CAN driver is called up and transferred to the CAN bus 39 except for the data prohibited for transmission (S40).

また、PDUルータ1は、DMAドライバ1から取得したかCANドライバから取得したかに関係なく、データを通信モジュール33に出力する(S50)。この後、実施例1と異なり、マイコン2がCANコントローラ2を有しているので、アプリC宛のデータはマイコン2が直接受信する。このため、PDUルータ1がDMAドライバ1を呼び出す必要はない。   Further, the PDU router 1 outputs data to the communication module 33 regardless of whether the data is acquired from the DMA driver 1 or the CAN driver (S50). Thereafter, unlike the first embodiment, since the microcomputer 2 has the CAN controller 2, the data addressed to the application C is directly received by the microcomputer 2. For this reason, it is not necessary for the PDU router 1 to call the DMA driver 1.

データの送信時(S20のNo)も同様で、PDUルータ1はCANドライバを呼び出すが(S80)、アプリC宛のデータはCANバス経由でマイコン2に送信すればよいので、PDUルータ1がDMAドライバ1を呼び出す必要がない。   When data is transmitted (No in S20), the PDU router 1 calls the CAN driver (S80), but the data addressed to the application C may be transmitted to the microcomputer 2 via the CAN bus. There is no need to call driver 1.

PDUルータ2の場合、データの受信時(S120のYes)、PDUルータ2はデータを通信モジュール33に出力する(S130)ので、受信時に変更はない。   In the case of the PDU router 2, when data is received (Yes in S120), the PDU router 2 outputs data to the communication module 33 (S130), so there is no change at the time of reception.

データの送信時(S120のNo)、PDUルータ2はMNデータをDMAドライバ2に振り分けるため、データがNMメッセージか否かを判定する(S125)。そして、PDUルータ2はMNメッセージの場合だけ、DMAドライバ2を呼び出す(S140)。また、PDUルータ2はMNメッセージ以外のデータの場合、CANドライバ2を呼び出す(S150)。これにより、マイコン2はNMメッセージだけを内部的にマイコン1に送信することができる。   At the time of data transmission (No in S120), the PDU router 2 determines whether the data is an NM message in order to distribute the MN data to the DMA driver 2 (S125). The PDU router 2 calls the DMA driver 2 only for the MN message (S140). The PDU router 2 calls the CAN driver 2 for data other than the MN message (S150). Thereby, the microcomputer 2 can transmit only the NM message to the microcomputer 1 internally.

このように、マルチマイコンの場合、実施例1,2と同様に統合後のアプリが通信することもできるし、実施例1,2よりも容易にアプリの通信を実現することもできる。   As described above, in the case of the multi-microcomputer, the integrated application can communicate similarly to the first and second embodiments, and the communication of the application can be realized more easily than the first and second embodiments.

11 プロセッサ 22 ローカルRAM 29 CANコントローラ
31 アプリ 32 RTE 33 通信モジュール
34 PDUルータ 35 MCAL 36 コア
37 DMAコントローラ 38 DMAドライバ
39 CANバス 40 仮想CANバス 51 マイコン
100 統合ECU
11 Processor 22 Local RAM 29 CAN Controller 31 Application 32 RTE 33 Communication Module 34 PDU Router 35 MCAL 36 Core 37 DMA Controller 38 DMA Driver 39 CAN Bus 40 Virtual CAN Bus 51 Microcomputer 100 Integrated ECU

Claims (9)

第1のコアが実行する第1のアプリと第2のコアが実行する第2のアプリがそれぞれ外部にデータを送信する車両制御装置であって、
バスを介して外部の機器と通信するため通信手段と、
前記第1のコアと前記第2のコアの間で通信する内部通信手段と、
前記第2のアプリの第1の送信データを前記通信手段でなく前記内部通信手段に出力する出力先変更手段と、
前記内部通信手段から取得した前記第1の送信データを前記第1のアプリ又は前記通信手段のどちらに出力するかを、前記第1の送信データの送信先情報が登録されたリストテーブルに従い制御するデータ送信先制御手段と、
を有する車両制御装置。
The first application executed by the first core and the second application executed by the second core are vehicle control devices that transmit data to the outside, respectively.
A communication means for communicating with an external device via a bus;
Internal communication means for communicating between the first core and the second core;
Output destination changing means for outputting the first transmission data of the second application to the internal communication means instead of the communication means;
Controls whether to output the first transmission data acquired from the internal communication means to the first application or the communication means according to a list table in which transmission destination information of the first transmission data is registered. Data transmission destination control means;
A vehicle control device.
前記データ送信先制御手段は、前記第1のアプリから取得した第2の送信データを前記通信手段及び前記内部通信手段に出力し、
前記通信手段は前記第2の送信データを外部に送信し、前記内部通信手段は前記第2の送信データを前記第2のコアに送信する、
ことを特徴とする請求項1記載の車両制御装置。
The data transmission destination control means outputs the second transmission data acquired from the first application to the communication means and the internal communication means,
The communication means transmits the second transmission data to the outside, and the internal communication means transmits the second transmission data to the second core;
The vehicle control device according to claim 1.
前記通信手段が外部から受信データを受信した際、
前記データ送信先制御手段は、前記受信データを前記第1のアプリに出力すると共に、前記内部通信手段に出力し、
前記内部通信手段は前記受信データを前記第2のコアに送信する、
ことを特徴とする請求項1又は2記載の車両制御装置。
When the communication means receives received data from the outside,
The data transmission destination control means outputs the received data to the first application and outputs to the internal communication means,
The internal communication means transmits the received data to the second core;
The vehicle control apparatus according to claim 1 or 2, wherein
前記内部通信手段は、DMAコントローラと共有メモリを使用して、又は、内部通信用のドライバと前記第1又は第2のコアのローカルRAMを使用して、前記第1のコアと前記第2のコアの間で通信する、
ことを特徴とする請求項1〜3いずれか1項記載の車両制御装置。
The internal communication means uses a DMA controller and a shared memory, or uses a driver for internal communication and a local RAM of the first or second core, and uses the first core and the second core. Communicate between cores,
The vehicle control device according to any one of claims 1 to 3, wherein
前記リストテーブルには、前記通信手段へ出力を禁止する前記第1の送信データとしてOSEK/VDX―NM(Network Management)の規定に基づくNMメッセージが登録されており、
前記データ送信先制御手段は、NMメッセージを前記通信手段に出力せず、前記第1のアプリにのみ出力する、
ことを特徴とする請求項1〜4いずれか1項記載の車両制御装置。
In the list table, an NM message based on the specification of OSEK / VDX-NM (Network Management) is registered as the first transmission data to be prohibited from being output to the communication means,
The data transmission destination control means does not output the NM message to the communication means, but outputs only to the first application.
The vehicle control device according to any one of claims 1 to 4, wherein
当該車両制御装置は、複数のコアを備えるプロセッサが1つのマイコン内に配置された電子制御ユニットである、
ことを特徴とする請求項1〜5いずれか1項記載の車両制御装置。
The vehicle control device is an electronic control unit in which a processor having a plurality of cores is arranged in one microcomputer.
The vehicle control device according to any one of claims 1 to 5, wherein
当該車両制御装置は、マイコン内に1つ以上のコアを有するプロセッサが配置された複数個のマイコンを備える電子制御ユニットであり、
第1のマイコンと第2のマイコンがそれぞれ別々の前記通信手段と接続されており、
前記出力先変更手段は、前記第1の送信データが予め定められた所定の送信データの場合にのみ前記内部通信手段に出力し、所定の送信データ以外の前記第1の送信データを、前記第2のマイコンに接続された前記通信手段に出力する、
ことを特徴とする請求項1項記載の車両制御装置。
The vehicle control device is an electronic control unit including a plurality of microcomputers in which a processor having one or more cores is arranged in the microcomputer.
The first microcomputer and the second microcomputer are respectively connected to different communication means;
The output destination changing unit outputs the first transmission data to the internal communication unit only when the first transmission data is predetermined predetermined transmission data, and the first transmission data other than the predetermined transmission data is output to the first transmission data. Output to the communication means connected to the microcomputer of 2,
The vehicle control device according to claim 1.
前記データ送信先制御手段は、前記第1のアプリから取得した第2の送信データを前記第1のマイコンに接続された前記通信手段にのみ出力し、
前記第2のアプリは、前記第2のマイコンに接続された前記通信手段を介して前記第2のデータを受信する、
ことを特徴とする請求項7記載の車両制御装置。
The data transmission destination control means outputs the second transmission data acquired from the first application only to the communication means connected to the first microcomputer,
The second application receives the second data via the communication means connected to the second microcomputer;
The vehicle control device according to claim 7.
電子制御装置の1のコアが実行する第1のアプリと第2のコアが実行する第2のアプリがそれぞれ外部とデータ通信するデータ通信方法であって、
前記第2のアプリが第1の送信データを生成するステップと、
出力先変更手段が前記第1の送信データを前記通信手段でなく前記内部通信手段に出力するステップと、
前記内部通信手段が前記第1の送信データを前記第1のコアに送信するステップと、
データ送信先制御手段が、前記第1の送信データを前記第1のアプリ又は前記通信手段のどちらに出力するかを、前記第1の送信データの送信先情報が登録されたリストテーブルに従い制御するステップと、
を有するデータ通信方法。
A data communication method in which a first application executed by one core of an electronic control device and a second application executed by a second core respectively communicate data with the outside,
The second application generating first transmission data;
An output destination changing unit outputting the first transmission data to the internal communication unit instead of the communication unit;
The internal communication means transmitting the first transmission data to the first core;
The data transmission destination control unit controls whether the first transmission data is output to the first application or the communication unit according to a list table in which transmission destination information of the first transmission data is registered. Steps,
A data communication method comprising:
JP2010281720A 2010-12-17 2010-12-17 Vehicle control device and data communication method Pending JP2012128788A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010281720A JP2012128788A (en) 2010-12-17 2010-12-17 Vehicle control device and data communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010281720A JP2012128788A (en) 2010-12-17 2010-12-17 Vehicle control device and data communication method

Publications (1)

Publication Number Publication Date
JP2012128788A true JP2012128788A (en) 2012-07-05

Family

ID=46645707

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010281720A Pending JP2012128788A (en) 2010-12-17 2010-12-17 Vehicle control device and data communication method

Country Status (1)

Country Link
JP (1) JP2012128788A (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5372297B1 (en) * 2012-12-20 2013-12-18 三菱電機株式会社 In-vehicle device and program
JP2014058210A (en) * 2012-09-18 2014-04-03 Hitachi Automotive Systems Ltd Vehicle control device and vehicle control system
WO2015065096A1 (en) * 2013-10-31 2015-05-07 주식회사 엘지화학 Module relay device and relay method therefor
KR20160097593A (en) * 2015-02-09 2016-08-18 현대모비스 주식회사 Apparatus and method of vehicle control
WO2017056725A1 (en) * 2015-09-30 2017-04-06 日立オートモティブシステムズ株式会社 In-vehicle control device
JP2017076838A (en) * 2015-10-13 2017-04-20 株式会社デンソー Electronic control unit
JP2019074851A (en) * 2017-10-13 2019-05-16 株式会社デンソー Electronic control device
CN113031927A (en) * 2021-03-26 2021-06-25 苏州挚途科技有限公司 Data input and output method, device and system
US11196610B2 (en) 2015-12-04 2021-12-07 Mitsubishi Electric Corporation Transfer control apparatus, vehicle, and transfer control method
WO2023036194A1 (en) * 2021-09-08 2023-03-16 长城汽车股份有限公司 Data transmission method, electronic system, and storage medium

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014058210A (en) * 2012-09-18 2014-04-03 Hitachi Automotive Systems Ltd Vehicle control device and vehicle control system
US9405601B2 (en) 2012-12-20 2016-08-02 Mitsubishi Electric Corporation In-vehicle apparatus and program
WO2014097442A1 (en) * 2012-12-20 2014-06-26 三菱電機株式会社 On-board device, and program
CN104781789B (en) * 2012-12-20 2018-06-05 三菱电机株式会社 Car-mounted device
CN104781789A (en) * 2012-12-20 2015-07-15 三菱电机株式会社 On-board device, and program
JP5372297B1 (en) * 2012-12-20 2013-12-18 三菱電機株式会社 In-vehicle device and program
KR101748904B1 (en) * 2013-10-31 2017-06-20 주식회사 엘지화학 Apparatus and method for engaging the multiple modules
WO2015065096A1 (en) * 2013-10-31 2015-05-07 주식회사 엘지화학 Module relay device and relay method therefor
CN105247473B (en) * 2013-10-31 2019-06-28 株式会社Lg化学 Module relay device and relay method thereof
US10110696B2 (en) 2013-10-31 2018-10-23 Lg Chem, Ltd. Module relay device and relay method therefor
CN105247473A (en) * 2013-10-31 2016-01-13 株式会社Lg化学 Module relay device and relay method thereof
KR102275869B1 (en) 2015-02-09 2021-07-12 현대모비스 주식회사 Apparatus and method of vehicle control
KR20160097593A (en) * 2015-02-09 2016-08-18 현대모비스 주식회사 Apparatus and method of vehicle control
JPWO2017056725A1 (en) * 2015-09-30 2018-03-15 日立オートモティブシステムズ株式会社 In-vehicle control device
CN108025685A (en) * 2015-09-30 2018-05-11 日立汽车系统株式会社 On-vehicle control apparatus
WO2017056725A1 (en) * 2015-09-30 2017-04-06 日立オートモティブシステムズ株式会社 In-vehicle control device
US10552368B2 (en) 2015-09-30 2020-02-04 Hitachi Automotive Systems, Ltd. In-vehicle control device
CN108025685B (en) * 2015-09-30 2020-12-01 日立汽车系统株式会社 Vehicle control device
JP2017076838A (en) * 2015-10-13 2017-04-20 株式会社デンソー Electronic control unit
US11196610B2 (en) 2015-12-04 2021-12-07 Mitsubishi Electric Corporation Transfer control apparatus, vehicle, and transfer control method
JP2019074851A (en) * 2017-10-13 2019-05-16 株式会社デンソー Electronic control device
CN113031927A (en) * 2021-03-26 2021-06-25 苏州挚途科技有限公司 Data input and output method, device and system
WO2023036194A1 (en) * 2021-09-08 2023-03-16 长城汽车股份有限公司 Data transmission method, electronic system, and storage medium

Similar Documents

Publication Publication Date Title
JP2012128788A (en) Vehicle control device and data communication method
EP3798835B1 (en) Method, device, and system for implementing hardware acceleration processing
US12026112B2 (en) Seamlessly integrated microcontroller chip
JP2009265963A (en) Information processing system and task execution control method
CN101566976B (en) Information processing apparatus and information processing method
JP2011022934A (en) Electronic control unit and method for detecting failure
KR20160051883A (en) Virtual retry queue
Pöhnl et al. A middleware journey from microcontrollers to microprocessors
US8843728B2 (en) Processor for enabling inter-sequencer communication following lock competition and accelerator registration
CN102859488B (en) Coprocessor with task flow control
JP7613146B2 (en) CONTROL DEVICE, METHOD, PROGRAM, AND VEHICLE
JP2010134698A (en) Information processing system
JP5981004B2 (en) Semiconductor device
JP2007219816A (en) Multiprocessor system
US20060184942A1 (en) System, method and medium for using and/or providing operating system information to acquire a hybrid user/operating system lock
US20060184948A1 (en) System, method and medium for providing asynchronous input and output with less system calls to and from an operating system
JP5805546B2 (en) Semiconductor device
JP2013062734A (en) Information processing device
CN101278277B (en) Operation processing device
JP2007011739A (en) Load management apparatus and load management method
JP2013125305A (en) Multiprocessor device
CN118550511A (en) A multi-core software architecture optimization method, device, electronic device and storage medium
CN119854737A (en) Data transmission method and device, vehicle-mounted terminal, vehicle and storage medium
JP2009042888A (en) Bus arbitration method in multi-cpu system