Basic Software Module

From automotive wiki

Jump to: navigation, search

for BSW Mode Manager (BswM) see here

The Basic Software (BSW) consists of Basic Software Modules (BSWM) as a collection of software files (code and description) that define a certain basic software functionality present on an ECU.

Standard software may be composed of several software modules that are developed independently. A software module may consist of Integration Code, and/or standard software.

Vertically the Basic Software can be grouped into five 'columns':

Services Layer

The Services Layer is the highest layer of the Basic Software which also applies for its relevance for the application software: while access to I/O signals is covered by the Microcontroller Abstraction Layer, the Services Layer offers

  • Operating system services
  • Vehicle network communication and management services
  • Memory services (NVRAM management)
  • Diagnosic Services (including KWP2000 interface and error memory)
  • ECU state management
  • Logical and temporal program flow monitoring (WdgM)


The Services Layer consists of the following parts:

Communication Services

Memory Services

System Services

Diagnostic Services

(as part of System Services)

ECU Abstraction Layer

The ECU Abstraction Layer is located above the Microcontroller Abstraction Layer (MCAL) and abstracts from the ECU schematic. It is implemented for a specific ECU (therefore hardware dependent) and offers an API for access to peripherals and devices regardless of their location (onchip/offchip) and their connection to the microcontroller (port pins, type of interface) to make higher software layers independent of the ECU hardware layout.

The ECU Abstraction Layer consists of the following parts:

Communication HW Abstraction

Memory HW Abstraction

Onboard Device Abstraction

I/O HW Abstraction

Microcontroller Abstraction Layer

The Microcontroller Abstraction Layer (MCAL) is the lowest software layer of the Basic Software. It is uC dependent and contains drivers to enable the access of on-chip peripheral devices of a microcontroller and off-chip memory mapped peripheral devices by a defined API. The purpose is to make higher software layers independent of the microcontroller.

The Microcontroller Abstraction Layer consists of the following parts:

Communication Drivers

I/O Drivers

Memory Drivers

Microcontroller Drivers


Table of Basic Software Modules

(based on AUTOSAR R4.2.2)

 

Module Name

Ma / Msn

Mod. ID

Mod. ID

ADC Driver

Adc

123

0x7B

BSW Mode Manager

BswM

42

0x2A

BSW Scheduler Module

SchM

130

0x82

CAN Driver

Can

80

0x50

CAN Interface

CanIf

60

0x3C

CAN Network Management

CanNm

31

0x1F

CAN State Manager

CanSM

140

0x8C

CAN Transceiver Driver

CanTrcv

70

0x46

CAN Transport Layer

CanTp

35

0x23

COM

Com

50

0x32

COM Based Transformer

ComXf

175

0xAF

COM Manager

ComM

12

0x0C

Complex Driver

n/a

255

0xFF

Core Test

CorTst

103

0x67

Crypto Service Manager

Csm

110

0x6E

Debugging

Dbg

57

0x39

Default Error Tracer

Det

15

0x0F

Diagnostic Communication Manager

Dcm

53

0x35

Diagnostic Event Manager

Dem

54

0x36

Diagnostic Log and Trace

Dlt

55

0x37

Diagnostic over IP

DoIP

173

0xAD

DIO Driver

Dio

120

0x78

E2E Transformer

E2EXf

176

0xB0

ECU State Manager

EcuM

10

0x0A

EEPROM Abstraction

Ea

40

0x23

EEPROM Driver

Eep

90

0x5A

Ethernet Driver

Eth

88

0x58

Ethernet Interface

EthIf

65

0x41

Ethernet State Manager

EthSM

143

0x8F

Ethernet Switch Driver

EthSwt

89

0x59

Ethernet Transceiver Driver

EthTrcv

73

0x49

Flash Driver

Fls

92

0x5C

Flash EEPROM Emulation

Fee

21

0x15

Flash Test

FlsTst

104

0x68

FlexRay AUTOSAR Transport Layer

FrArTp

38

0x26

FlexRay Driver

Fr

81

0x51

FlexRay Interface

FrIf

61

0x3D

FlexRay ISO Transport Layer

FrTp

36

0x24

FlexRay Network Management

FrNm

32

0x20

FlexRay State Manager

FrSM

142

0x8E

FlexRay Transceiver Driver

FrTrcv

71

0x47

Function Inhibition Manager

FiM

11

0x0B

GPT Driver

Gpt

100

0x64

ICU Driver

Icu

122

0x7A

IO HW Abstraction

n/a

254

0xFE

IPDU Multiplexer

IpduM

52

0x34

Large Data COM

LdCom

49

0x31

LIN Driver

Lin

82

0x52

LIN Interface

LinIf

62

0x3E

LIN Network Management

LinNm

63

0x3F

LIN State Manager

LinSM

141

0x8D

LIN Transceiver Driver

LinTrcv

64

0x40

MCU Driver

Mcu

101

0x65

Memory Abstraction Interface

MemIf

22

0x16

Network Management Interface

Nm

29

0x1D

NVRAM Manager

NvM

20

0x14

OCU Driver

Ocu

125

0x7D

OS

Os

1

0x01

PDU Router

PduR

51

0x33

Port Driver

Port

124

0x7C

PWM Driver

Pwm

121

0x79

RAM Test

RamTst

93

0x5D

RTE

Rte

2

0x02

SAE J1939 Diagnostic Communication Manager

J1939Dcm

58

0x3A

SAE J1939 Network Management

J1939Nm

34

0x22

SAE J1939 Request Manager

J1939Rm

59

0x3B

SAE J1939 Transport Layer

J1939Tp

37

0x25

Secure Onboard Communication

SecOC

150

0x96

Service Discovery

Sd

171

0xAB

Socket Adaptor

SoAd

56

0x38

SOME/IP Transformer

SomeIpXf

174

0xAE

SPI Handler / Driver

Spi

83

0x53

Synchronized Time-Base Manager

StbM

160

0xA0

TCP/IP Stack

TcpIp

170

0xAA

Time Service

Tm

14

0x0E

Time Sync Over CAN

CanTSyn

161

0xA1

Time Sync Over Ethernet

EthTSyn

164

0xA4

Time Sync Over FlexRay

FrTSyn

163

0xA3

TTCAN Driver

Ttcan

84

0x54

TTCAN Interface

TtcanIf

66

0x42

UDP Network Management

UdpNm

33

0x21

Watchdog Driver

Wdg

102

0x66

Watchdog Interface

WdgIf

43

0x2B

Watchdog Manager

WdgM

13

0x0D

XCP

Xcp

212

0xD4

CRC Library

Crc

201

0xC9

BFx Library

Bfx

205

0xCD

Crypto Abstraction Library

Cal

206

0xCE

E2E Library

E2E

207

0xCF

EFx Library

Efx

208

0xD0

IFl Library

Ifl

209

0xD1

MFl Library

Mfl

210

0xD2

MFx Library

Mfx

211

0xD3

IFx Library

Ifx

213

0xD5