In generic,
The whole Autosar is the standard interface specification for the software to manage the ECUs connected in Remote. It is not about the Local devices like AM, FM, etc. and their drivers. The physical interface is restricted to CAN, Flexray, LIN which are for Networking inside automotive. So, all these layers NM (Network Manager), SM (State Manager), TP (Transport Protocol), IF (Interface), EcuM are closely inter-related (like the TCP/IP protocol stack which is for only the Ethernet controller, but not anything related to serial, I2C, etc.).
---
What did you feel?
Compilation itself clubs all modules... Every module has header file included from another from RTE to CANIf, EcuM to Wrapper modules. Needs to be independent. For example, Only CAN_NM, CAN_SM, etc. specific to the CAN should be able to be compiled independently.
The corresponding module is included.
Then the module_cfg.h is from GenData\Inc
Then, Rte_module_type.h. In this module_Lcfg.h and module_PBcfg.h
#include
"SwcTskDvcDspCtl.h" → "SwcTsk?????.h" means the Calls for the specific Application module.
OS wrapper -> Develop\PF\PF_SYS_MNG\Src
----
ECM_callout_stubs.c
\Develop\PF\PF_SYS_WRP
SH-1/SH-2/SH-DSP CPU Description Example for Other CPU
CMP/GE R1,R0
BT TRGET0
BF TRGET1
T bit is set when R0 ≥ R1. The
program branches to TRGET0.
When R0 ≥ R1 and to TRGET1.
When R0 < R1.
CMP.W R1,R0
BGE TRGET0
BLT TRGET1