CAN architecture discussion

This page is for discussion.  When you have any opinion, please add a comments.

Overview

AGL Instrument Cluster CAN architecture assumes that CAN network management is outside of Linux.  

Socket CAN is used as a mechanism for distributing data to each container inside Linux. 

Why raw CAN data( not abstract data) ?  We think so Linux side functions (such as meter , remote diagnostic function) may require raw data.


CAN Communicator is a component responsible for CAN communication.  It is intended to work outside of Linux. 

There are multiple ways to implement the CAN comunicator.

When the microcontroller is inside of SoC (ex. R-CarE3), CAN comunicator will be implemented on it.  In that case,  RTOS and Linux are connected using shared memory.

When the microcontroller doese not have SoC, CAN comunicator will be implemented on outside microcontroller.  In that case, RTOS and Linux are connected using peripheral ( such as SPI, UART, etc).

R-Car E3 System Block Diagram

Ref. https://www.renesas.com/us/en/solutions/automotive/soc/r-car-e3.html

R-Car D3 System Block Diagram

https://www.renesas.com/us/en/solutions/automotive/soc/r-car-d3.html


When implementing the CAN Communicator, there are some questions which automatically arise and should be discussed (based on the slide CAN_arch_p3.pptx: