What is AUTOSAR Memory Stack | Software modules and device drivers
This blog is part of a series of articles to help you learn about layered architecture of AUTOSAR.
Through this article our AUTOSAR development team, which is based in Bangalore, India, has tried to share knowledge with the community of AUTOSAR developers and automotive OEMS and Suppliers.
In this blog we will introduce you to AUTOSAR Memory Stack (MemStack). This will help you understand the software modules and device drivers associated with Memory Stack.
Introduction: AUTOSAR Memory Stack (MemStack):
Memory Stack (MemStack) provides basic memory management services to the upper Application layer and to the Basic Software Modules (BSW) of the AUTOSAR layered architecture.
The memory management services ensure access to the memory cluster, to the devices or software functions, for reading and writing data to non-volatile memory media like Flash or EEPROM
The following block diagram show various software modules and device drivers associated with AUTOSAR Memory Stack:
(Source – ARC CORE)
Software Modules and Device Drivers – AUTOSAR MemStack
Memory Stack in AUTOSAR layered architecture is a collection of software modules and device drivers.
Following is the list of modules in different layers of AUTOSAR:
- Non-Volatile Memory Manager (NvM) – it is part of the AUTOSAR Services Layer
- Memory Interface (MemIf) – it is part of the AUTOSAR ECU Abstraction Layer
- Flash EEPROM Emulation (Fee) – it is part of the AUTOSAR ECU Abstraction Layer
- EEPROM Abstraction (Ea) – it is part of the AUTOSAR ECU Abstraction Layer
- Flash Driver (Fls) – it is part of the AUTOSAR MCAL Layer
- EEPROM Driver (Eep) – it is part of the AUTOSAR MCAL Layer
Description of AUTOSAR Memory Stack software modules
- Non-Volatile Memory Manager (NvM): The NvM module ensures data storage and maintenance of NV (non volatile) data according to the individual requirements in an automotive environment.
- Memory Interface (MemIf) Module: The Memory Abstraction Interface (MemIf) module facilitates abstraction from the underlying FEE and EA modules. Hence MemIf module provides upper layer (NvM) with a virtual segmentation on a uniform linear address space.
- EEPROM Abstraction (Ea): EEPROM driver provides services for reading, writing, erasing data to/from an EEPROM. It also provides a service for comparing a data block in the EEPROM with a data block in the memory (e.g. RAM).
- Flash EEPROM Emulation (FEE) Module: The Flash EEPROM Emulation (FEE) abstracts from the device, a specific addressing scheme and segmentation.
- Flash Driver (Fls): Fls Driver Initializes Flash and reads/writes to Flash memory.
- EEPROM driver (EeP): EEPROM driver provides services for reading, writing, erasing to/from an EEPROM.
The NvM module manages the NV data of an EEPROM and/or a FLASH EEPROM emulation device.
This ensures that the Non-Volatile Memory Manager (NvM) is independent of the driver interface layers of EEPROM (Eep) and Flash interface (Fls)
Ea module facilitates abstraction from the addressing scheme of underlying EEPROM driver and hence provides a uniform addressing scheme.
This ensures that the upper layer (NvM) need not be changed if the underlying EEPROM driver and device is replaced.
This provides the upper layers (NvM) with a virtual addressing scheme, segmentation as well as a “virtually” unlimited number of erase cycles.
It also provides a service for comparing a data block in the EEPROM with a data block in the memory (e.g. RAM).
Related posts on AUTOSAR software development
- AUTOSAR Microcontroller Abstraction Layer (MCAL): Learn about the fundamentals of the MCAL layer from our AUTOSAR team. Know more about the various device drivers and the layered architecture of the AUTOSAR MCAL. And get the details about how the Microcontroller Abstraction Layer (MCAL) works
- AUTOSAR Communication Stack (ComStack): Our AUTOSAR development team explains what are the different software modules of a Communication Stack (ComStack). Also, learn about the software modules of CAN based Communication Stack in AUTOSAR
- AUTOSAR Development partnership: Find out what is AUTOmotive Open System Architecture (AUTOSAR) development partnership and why OEMs, Tier-I suppliers, Semiconductor Vendors and Embedded hardware and software service providers collaborated to form this global partnership
AUTOSAR development: Customer Success stories
- Implementation of AUTOSAR compliant MCAL (Microcontroller Abstraction Layer)
- AUTOSAR compliant ECU software development
ASK OUR EXPERTS
Car HUD (Heads-up Display)
Go-to-market in 6 months with our automotive grade hardware and software design
Automotive Control Units
Electronic Control Units (ECU) development services for Body Control Modules (BCM), Powertrain, Chassis and Infotainment
AUTOSAR Software Services
AUTOSAR MCAL development, RTE and BSW integration, Application Layer development, Tools configuration and code generation
CUSTOMER SUCCESS STORIES
Find out how J1939 stack resolved on-chip memory issue for an Automotive Tier-I supplier
Modular architecture re-design across fleet management product lines - GPS fleet security, vehicle and trailer tracking
Design and development – Sensor Networks, Custom IoT gateway, Cloud and Mobile App