×

Happy to Help!

This website doesn't store cookies. Enjoy the experience, without worrying about your data!

Great, thanks!

What is AUTOSAR Memory Stack | Software modules and device drivers

  • 0

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:

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.
  • The NvM module manages the NV data of an EEPROM and/or a FLASH EEPROM emulation device.

  • 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.
  • This ensures that the Non-Volatile Memory Manager (NvM) is independent of the driver interface layers of EEPROM (Eep) and Flash interface (Fls)

  • 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).
  • 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.

  • Flash EEPROM Emulation (FEE) Module: The Flash EEPROM Emulation (FEE) abstracts from the device, a specific addressing scheme and segmentation.
  • This provides the upper layers (NvM) with a virtual addressing scheme, segmentation as well as a “virtually” unlimited number of erase cycles.

  • 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.
  • 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

 

AUTOSAR software development services

autosar-development-services


  • 0

What is AUTOSAR Development Partnership and AUTOSAR MCAL Layer

AUTOSAR Development Partnership

AUTOSAR, which stands for AUTomotive Open System Architecture, is a partnership at a global scale between Automotive OEMs, Tier-I suppliers, semiconductor vendors, embedded hardware design houses and embedded software engineering service providers

This worldwide strong partnership has its roots in one common belief – “Cooperate on standards, compete on implementation” as mentioned in the AUTOSAR charter.

Goals of the AUTOSAR Development Partnership

  • Standardization of basic software functionality of automotive ECUs
  • Scalability to different vehicle and platform variants
  • Transferability of embedded software
  • Support of different functional domains
  • Definition of an open AUTOSAR architecture
  • Collaboration between various embedded partners
  • Development of highly dependable systems
  • Support of applicable automotive international standards and state-of-the-art technologies

(Adapted from www.autosar[dot]org)

What is AUTOSAR MCAL Layer?

MCAL (Microcontroller Abstraction Layer), conforming to the microcontroller abstraction layer of AUTOSAR specifications, is the driver module of the infrastructure software. MCAL realizes notification mechanism to support instruction, response and information distribution to different processes. The main components are DIO, ADC, PWM, PWD, EEP, FLS, CCU, WDT, SPI, IIC etc.

(Source – www.automotivetechis.wordpress.com)

Learn more about the software architecture, device drivers and tools configuration related to AUTOSAR MCAL (Microcontroller Abstraction Layer).

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 Memory Stack (MemStack): Get introduced to the various software modules of AUTOSAR Memory Stack (MemStack) that provide basic memory management services to the upper layers. Our AUTOSAR development team shares the basics of AUTOSAR 3.0 and 4.0

AUTOSAR Migration Services | AUTOSAR MCAL Drivers Development Services

As a CMMI Level 3 organization, we, at Embitel Technologies, have partnered with global customers and gained extensive project experience and in-depth understanding of the AUTOSAR standard.

We have also developed a robust implementation and quality model – the EmbiQ Model.

How can we add value to your AUTOSAR roadmap? See our service offerings:

autosar-migration

AUTOSAR Migration

autosar-embedded-platform

Platform(s) Evaluation

autosar-mcal-services

AUTOSAR MCAL Services

autosar-migration

RTE, BSW integration

autosar-embedded-platform

Application Layer – MBD and implementation

autosar-mcal-services

AUTOSAR Tools

 

For more details, you can refer to this link – AUTOSAR Service Offerings

Also check our AUTOSAR customer success stories: MCAL development and testing for a Freescale Power PC Controller (MPC5554) based system

 

More Details of our AUTOSAR Service Offerings:

AUTOSAR Migration Strategy

Technical and business workshops to analyze your product roadmaps and assessment of AUTOSAR migration strategy across product lines

RTE and BSW integration

Integration of RTE (Run-time environment) and AUTOSAR BSW stack (basic software) with the application.

Embedded Platform(s) consulting

Technical assessment and evaluation of embedded platforms across product linesto identify the one best suited for the customer’s applications

Application Layer – MBD and implementation

Model-Based Development (AUTOSAR, DaVinci Developer) and logic implementation for application layer of the AUTOSAR Software Stack

AUTOSAR MCAL Drivers – Development, code generation and testing

  • Development of Microcontroller Drivers (MCU, GPT), Communication Drivers (CAN, LIN, FlexRay, MOST), I/O Drivers (ICU, PWM, ADC, PORT)
  • Code generation for all the standard tools
  • Automated MIL and SIL testing of the AUTOSAR MCAL(Microcontroller Abstraction Layer) drivers

AUTOSAR Tools – Configuration and Code Generation

  • Configuration and code generation (exe file) for Comasso, Vector , ECU Spectrum, KSAR AUTOSAR.
  • DaVinci Developer tool for AUTOSAR software architecture design
  • Expertise in Code generation tools based on Pearl and Python.

 

What is AUTOSAR Layered Architecture?

AUTOSAR uses a three-layered architecture:

  • Basic Software (AUTOSAR BSW): Basic Software is the standardized software layer, which provides services to the AUTOSAR Software Components and is necessary to run the functional part of the software. It does not fulfill any functional job itself and is situated below the AUTOSAR RTE (Runtime Environment). The Basic Software contains standardized and ECU specific modules.
  • Runtime environment (AUTOSAR RTE): Middleware which abstracts from the network topology for the inter- and intra-ECU information exchange between the application software components and between the Basic Software (BSW) and the applications.
  • Application Layer: application software components that interact with the runtime environment (RTE).

Source – AUTOSAR.org