In this article I will discuss about the Basic Software Mode Manager module, BSWM. BSWM is a module in the services layer of AUTOSAR and it mostly takes care of Vehicle and Application mode management. It takes care of Basic Software and Application Software component’s Mode Arbitration and Mode Control. Mode arbitration is based on evaluation of simple rules. The rules are composed of simple boolean expressions. After arbitration a set of actions which might or might not be a part of a single action list are executed. The execution of the actions in the action list after arbitration is completely based on configuration.
BSWM interacts with different BSW and Application modules. It receives application mode requests through RTE and the mode switch notification from BSWM also passes through RTE to the application. ECUM communicates with BSWM to notify the ECU states and also to notify the wakeup source states. WDGM mode switch indications to SW-C’s go through BSWM. COMM mode switch indication go through BSWM to SW-C’s. BSWM can also request communication modes to COMM. Handling of IPDU’s in COM is also possible using BSWM. BSWM can also trigger transmission of IPDU.
BSWM can enable and disable routing groups of I-PDUs in the PDUR. BUS specific SM(State Manager) related mode switch indications go to SW-C through BSWM. BSWM also handled some more actions related to BUS specific SM’s. DCM performs mode requests to the BSWM based on the diagnostic requests it receives. BSWM will use the NM interfaces to control the NM communication based on the current mode. BSWM has actions causing the NvM to read and write all blocks during startup and shutdown.
There are two ways of processing the mode arbitration:
- Immediate Operation – done immediately within the context of a mode request/indication.
- Deferred Operation – done cyclically during the main function of BSWM
Configuring Immediate or Deferred Operation for processing is a configuration option.
In the above figure, the SW-C issues a mode switch request to the BSWM which is propogated to the BSWM via the RTE. The BSWM evaluates the mode request based on the configured boolean rules. BSWM mostly contains an actions list configured for all possible results of the rule evaluation e.g. it contains a TRUE action list and a FALSE action list for a boolean rule. Based on the result it triggers either a TRUE or a FALSE action list. After the actions are performed from the action list a mode indication is given to the upper layer i.e. the application via the RTE, if configured. As a part of the actions executed the BSWM module interacts with different basic and application software modules.