Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
AUTOSAR Fundamentals and Applications

You're reading from   AUTOSAR Fundamentals and Applications Establishing a solid foundation for automotive software design with AUTOSAR

Arrow left icon
Product type Paperback
Published in Dec 2024
Publisher Packt
ISBN-13 9781805120872
Length 254 pages
Edition 1st Edition
Languages
Arrow right icon
Author (1):
Arrow left icon
Hossam Soffar Hossam Soffar
Author Profile Icon Hossam Soffar
Hossam Soffar
Arrow right icon
View More author details
Toc

Table of Contents (16) Chapters Close

Preface 1. Part 1: Introduction – The Genesis and Framework of AUTOSAR
2. Chapter 1: Exploring the Genesis and Objectives of AUTOSAR FREE CHAPTER 3. Chapter 2: Introducing the AUTOSAR Software Layers 4. Chapter 3: AUTOSAR Methodology and Data Exchange Formats 5. Part 2: Investigating the Building Blocks of AUTOSAR
6. Chapter 4: Working with Software Components and RTE 7. Chapter 5: Designing and Implementing Events and Interfaces 8. Chapter 6: Getting Started with the AUTOSAR Operating System 9. Chapter 7: Exploring the Communication Stack 10. Part 3: Beyond Fundamentals – Advanced AUTOSAR Concepts
11. Chapter 8: Securing the AUTOSAR System with Crypto and Security Stack 12. Chapter 9: Dealing with Memory and Mode Management 13. Chapter 10: Wrapping Up and Extending Knowledge with a Use Case 14. Index 15. Other Books You May Enjoy

Software architecture and design

The defined architecture is based on a modular, layered approach that emphasizes the separation of concerns, clear interfaces, and independence of components. AUTOSAR provides guidelines and best practices for software architecture and design, which enable software engineers to develop high-quality, standardized SWCs that can be easily integrated into different automotive systems and devices.

Layers

A layer in software architecture refers to a logical grouping of SWCs that share a common set of responsibilities and are designed to work together to perform a specific set of tasks.

It can be seen as a horizontal slice through the software architecture, with each layer providing a specific set of services to the layer above it, as shown in Figure 1.9. The layers are typically designed to be modular and loosely coupled so that changes made to one layer do not affect the functionality of the other layers.

The AUTOSAR layered architecture provides the necessary mechanisms for achieving software and hardware independence by dividing the software into three main layers that run on a microcontroller, as shown in the following figure:

Figure 1.9 – AUTOSAR layered architecture

Figure 1.9 – AUTOSAR layered architecture

Let’s discuss these layers in further detail:

  • Application layer: This is where the SWCs that contain the algorithms and functionality of the system are located. This layer is responsible for implementing the high-level behavior of the system and uses the interface of the lower layers to access the hardware resources. Some examples of functions are monitoring the battery charge for a battery charger ECU and setting and viewing the temperature through the human-machine interface (HMI).
  • AUTOSAR RTE: The RTE serves as both a binding and isolating layer between the ASW and BSW layers. All communication and service usage between these two layers must occur within the RTE. We will dive into the specifics of this topic in greater detail in Chapter 4.
  • Basic software: The BSW layer is divided into three different layers, each providing specific functionality required for the proper functioning of an ECU. These layers are as follows:
    • Services layer: This layer offers a variety of services for applications to utilize. It comprises services such as System Services, Memory Services, Crypto Services, and Diagnostic and Communication Services.
    • ECU abstraction layer: This layer delivers ECU-related abstractions, including I/O Hardware Abstraction, Onboard Device Abstraction as an external watchdog, Memory Hardware Abstraction, and Crypto Hardware Abstraction, to enable hardware independence for applications.
    • Microcontroller abstraction layer (MCAL): This layer provides a driver implementation for the MCU in use, enabling communication between the BSW layers above and the microcontroller hardware peripherals.

Further exploration of the layers will be conducted in Chapter 2.

Stacks

A stack refers to a collection of software layers or components that work together to provide a specific functionality or service. Each layer in the stack represents a distinct set of functions and services and is responsible for performing a specific set of tasks. The layers communicate with each other through well-defined interfaces, and the data is passed between the layers in a hierarchical manner, with each layer providing services to the layer above it. The architecture is shown in the following figure:

Figure 1.10 – AUTOSAR stacks

Figure 1.10 – AUTOSAR stacks

Some of the main AUTOSAR stacks that we will dive into in our journey are the following:

  • Memory Stack
  • Communication (CAN, Ethernet, LIN, and FlexRay)
  • Diagnostic
  • IO Hardware Abstraction
  • Security
You have been reading a chapter from
AUTOSAR Fundamentals and Applications
Published in: Dec 2024
Publisher: Packt
ISBN-13: 9781805120872
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image