autosar sucks

what is AUTOSAR

basically it’s an micro-service architecture for vehicle EE system.

Each micro-service is called software component(swc), and it has uniform interfaces, while of which the implementation is varied. as the goal of AUTOSAR said: share on the standard (interface), compete in the implementation.

the inter-connect of micro-services is through virtual function bus(vfb), which works as a gateway, guiding data flow from port A, from micro-serviceA to port B, from micro-serviceB

the benefits of AUTOSAR is obvious, to design the interface at system level first, if any changed need, it can be updated quickly. after the system architecture is fixed, then go to the implementation details.

refer

input description

  • software components(micro-services) description, only define the data flow, interface functions

  • system, system topology(interconnection among ECUs, and available data buses, protocols etc)

  • hardware, the available hardware(processors, sensors, actuators etc)

system configuration

used to distributes the software component descritpions to different ECU

ECU configuration

the basic software(BST) and run-time environment(rte) of each ECU has been configured, this is based on the dedication of the application software components to each ECU.

generation of executables

in this step to implement the software components, then build. this can be automated done by tool-chains.

all steps up to now are supported by defining exchange formats(xml) and work methods.

image

basic software

each swc has well-defined ports, either provider port(PPort) or request port(RPort), the swc interface can either be a client-server interface or sender-receiver interface.

with a PPort, the swc will impelment data generation; with a RPort, the swc will implement data read.

communication manager (ComM), is a resource mananger to encapsulates communication related basic software modules.

the actual bus states are controlled by the corresponding bus state manager, e.g. CAN/FlexRay/Lin bus. when ComM request a specific commmunication mode from the state manager, it will map the communication mode to a special bus state.

network management modules (NM) works in bus-sleep mode and only support broadcast communication.

diagnostic communication manager(DCM), a common API for diagnostic services.

CAN driver performs the hardware access and provides a hardware-independent API to upper layers; it can access hardware resources and converts the given information for transmission into a hardware specic format and triggers the transmission.

runtime environment(RTE)

between basic software to upper application softwares, I think it’s mostly vfb.

application software components

for now, e.g. ADAS, traditional EE.