BSWM Overview

Micael Coutinho,autosarbswbswm

The Basic Software Mode Manager implements mode management for your Autosar application based on requests, rules and actions. Learn about the BswM here

The BswM (Basic Software Mode Manager) implements the mode management for your Autosar application. It works by processing mode requests from the BSW modules and the application layers, according to created rules, and performing a set of actions after processing the rules. If ECU modes are new to you, make sure you read our article Mode Management (opens in a new tab).

The BSW Mode Manager is a unique BSW module, where the mode management, its core functionality, is almost completely molded by its configuration. It sort-of acts as a framework, where we create rules for it to execute a set of actions, when these are applied. This freedom also reflects on the way the BswM is generated, as it can be generated based on configuration or intreperter-based, kind of like its own little language. So, the Autosar tooling providers have some degree of flexibility on how they want to implement it.

The BswM functionality is split into two different tasks:

Rules

A rule is defined as a logical expression (AND, OR, XOR, NOT or NAND) where its inputs are mode request conditions. They are evaluated when there is a change in the mode request condition or in the BswM main function. The result is a boolean true or false, which is used to decide the action list to execute.

There are two types of mode request coditions:

Action Lists

An action list is an ordered set of actions that are to be executed upon the results of mode arbitration. There are three types of actions, within the action lists:

The BswM does not need to store or react to the return values of module-specific actions from other BSW modules (but the BswM can return a Det error in case of an error return value). As such, the BSW modules always indicate as an input the current mode, to be used in mode arbitration.

There are two types of action lists:

Mode Processing Procedure

There are at least 3 steps as part of the mode processing cycle:

BswM mode processing procedure example, as per Autosar Specification { w: 771, h: 778 }

BswM mode processing procedure example, as per Autosar Specification

For today, we will stop here. In this article, we managed to provide you with a good overview on how the BswM works, its purpose in the Autosar layered architecture and how it interacts with other modules. In the upcoming articles, we'll look at the ports and interfaces involving the BswM, the available actions you can use, how to write rules and the API specification for it. So, expect a few more articles regarding the BswM!

Author: Micael Coutinho (opens in a new tab)

References:

© AutosarToday —@LinkedIn