You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/learning-paths/automotive/openadkit2_safetyisolation/1_functional_safety.md
+52-61Lines changed: 52 additions & 61 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,67 +8,61 @@ layout: learningpathall
8
8
9
9
## Why Functional Safety Matters in Automotive Software
10
10
11
-
[Functional Safety](https://en.wikipedia.org/wiki/Functional_safety) refers to a system's ability to detect potential faults and respond appropriately to ensure that the system remains in a safe state, preventing harm to individuals or damage to equipment.
11
+
Functional Safety refers to a system's ability to detect potential faults and respond appropriately to ensure that the system remains in a safe state, preventing harm to individuals or damage to equipment.
12
12
13
-
This is particularly important in **automotive, autonomous driving, medical devices, industrial control, robotics and aerospace** applications, where system failures can lead to severe consequences.
13
+
This is particularly important in automotive, autonomous driving, medical devices, industrial control, robotics and aerospace applications, where system failures can lead to severe consequences.
14
14
15
-
In software development, Functional Safety focuses on minimizing risks through **software design, testing, and validation** to ensure that critical systems operate in a predictable, reliable, and verifiable manner. This means developers must consider:
16
-
-**Error detection mechanisms**
17
-
-**Exception handling**
18
-
-**Redundancy design**
19
-
-**Development processes compliant with safety standards**
15
+
In software development, Functional Safety focuses on minimizing risks through software design, testing, and validation to ensure that critical systems operate in a predictable, reliable, and verifiable manner. This means developers must consider:
16
+
- Error detection mechanisms
17
+
- Exception handling
18
+
- Redundancy design
19
+
- Development processes compliant with safety standards
20
20
21
21
### Definition and Importance of Functional Safety
22
22
23
-
The core of Functional Safety lies in **risk management**, which aims to reduce the impact of system failures.
23
+
The core of Functional Safety lies in risk management, which aims to reduce the impact of system failures.
24
24
25
-
In autonomous vehicles, Functional Safety ensures that if sensor data is incorrect, the system can enter a **safe state**, preventing incorrect driving decisions.
25
+
In autonomous vehicles, Functional Safety ensures that if sensor data is incorrect, the system can enter a safe state, preventing incorrect driving decisions.
26
26
27
27
The three core objectives of Functional Safety are:
28
-
1.**Prevention**
29
-
- Reducing the likelihood of errors through rigorous software development processes and testing. In the electric vehicle, the battery systems monitor temperature to prevent overheating.
- Controlling the impact of failures to ensure the overall safety of the system.
28
+
1. Prevention: Reducing the likelihood of errors through rigorous software development processes and testing. In the electric vehicle, the battery systems monitor temperature to prevent overheating.
29
+
2. Detection: Quickly identifying errors using built-in diagnostic mechanisms, such as built-in self-test.
30
+
3. Mitigation: Controlling the impact of failures to ensure the overall safety of the system.
34
31
35
-
This approach is critical in applications such as **autonomous driving, flight control, and medical implants**, where failures can result in **severe consequences**.
32
+
This approach is critical in applications such as autonomous driving, flight control, and medical implants, where failures can result in severe consequences.
36
33
37
34
### ISO 26262: Automotive Functional Safety Standard
38
35
39
-
[ISO 26262](https://www.iso.org/standard/68383.html) is a functional safety standard specifically for **automotive electronics and software systems**. It defines a comprehensive [V-model](https://en.wikipedia.org/wiki/V-model) aligned safety lifecycle, covering all phases from **requirement analysis, design, development, testing, to maintenance**.
36
+
ISO 26262 is a functional safety standard specifically for automotive electronics and software systems. It defines a comprehensive V-model aligned safety lifecycle, covering all phases from requirement analysis, design, development, testing, to maintenance.
40
37
41
38
Key Concepts of ISO 26262:
42
-
-**ASIL (Automotive Safety Integrity Level)**
43
-
- Evaluates the risk level of different system components (A, B, C, D, where **D represents the highest safety requirement**).
39
+
- ASIL (Automotive Safety Integrity Level)
40
+
- Evaluates the risk level of different system components (A, B, C, D, where D represents the highest safety requirement).
44
41
- For example: ASIL A can be Dashboard light failure (low risk) and ASIL D is Brake system failure (high risk).
- Analyzes hazards and assesses risks to determine necessary safety measures.
48
-
-**Safety Mechanisms**
44
+
- Safety Mechanisms
49
45
- Includes real-time error detection, system-level fault tolerance, and defined fail-safe or fail-operational fallback states.
50
46
51
47
Typical Application Scenarios:
52
-
-**Autonomous Driving Systems**:
48
+
- Autonomous Driving Systems:
53
49
- Ensures that even if sensors (e.g., LiDAR, radar, cameras) provide faulty data, the vehicle will not make dangerous decisions.
54
-
-**Powertrain Control**:
50
+
- Powertrain Control:
55
51
- Prevents braking system failures that could lead to loss of control.
56
-
-**Battery Management System (BMS)**:
52
+
- Battery Management System (BMS):
57
53
- Prevents battery overheating or excessive discharge in electric vehicles.
58
54
59
-
For more details, you can check this video: [What is Functional Safety?](https://www.youtube.com/watch?v=R0CPzfYHdpQ)
60
-
61
-
62
55
### Common Use Cases of Functional Safety in Automotive
63
-
-**Autonomous Driving**:
56
+
57
+
- Autonomous Driving:
64
58
- Ensures the vehicle can operate safely or enter a fail-safe state when sensors like LiDAR, radar, or cameras malfunction.
65
59
- Functional Safety enables real-time fault detection and fallback logic to prevent unsafe driving decisions.
66
60
67
-
-**Powertrain Control**:
61
+
- Powertrain Control:
68
62
- Monitors throttle and brake signals to prevent unintended acceleration or braking loss.
69
63
- Includes redundancy, plausibility checks, and emergency overrides to maintain control under failure conditions.
70
64
71
-
-**Battery Management Systems (BMS)**:
65
+
- Battery Management Systems (BMS):
72
66
- Protects EV batteries from overheating, overcharging, or deep discharge.
73
67
- Safety functions include temperature monitoring, voltage balancing, and relay cut-off mechanisms to prevent thermal runaway.
74
68
@@ -77,7 +71,7 @@ A widely adopted approach in modern automotive platforms is the Safety Island—
77
71
78
72
### Safety Island: Enabling Functional Safety in Autonomous Systems
79
73
80
-
In automotive systems, a **General ECU (Electronic Control Unit)** typically runs non-critical tasks such as infotainment or navigation, whereas a **Safety Island** is dedicated to executing safety-critical control logic (e.g., braking, steering) with strong isolation, redundancy, and determinism.
74
+
In automotive systems, a General ECU (Electronic Control Unit) typically runs non-critical tasks such as infotainment or navigation, whereas a Safety Island is dedicated to executing safety-critical control logic (e.g., braking, steering) with strong isolation, redundancy, and determinism.
81
75
82
76
The table below compares the characteristics of a General ECU and a Safety Island in terms of their role in supporting Functional Safety.
83
77
@@ -91,53 +85,50 @@ The table below compares the characteristics of a General ECU and a Safety Islan
91
85
92
86
This contrast highlights why safety-focused software needs a dedicated hardware domain with certified execution behavior.
93
87
94
-
**Safety Island** is an independent safety subsystem separate from the main processor. It is responsible for monitoring and managing system safety. If the main processor fails or becomes inoperable, Safety Island can take over critical safety functions such as **deceleration, stopping, and fault handling** to prevent catastrophic system failures.
88
+
Safety Island is an independent safety subsystem separate from the main processor. It is responsible for monitoring and managing system safety. If the main processor fails or becomes inoperable, Safety Island can take over critical safety functions such as deceleration, stopping, and fault handling to prevent catastrophic system failures.
95
89
96
90
Key Capabilities of Safety Island
97
-
-**System Health Monitoring**
91
+
- System Health Monitoring
98
92
- Continuously monitors the operational status of the main processor (e.g., ADAS control unit, ECU) and detects potential errors or anomalies.
99
-
-**Fault Detection and Isolation**
93
+
- Fault Detection and Isolation
100
94
- Independently evaluates and initiates emergency handling if the main processing unit encounters errors, overheating, computational failures, or unresponsiveness.
101
-
-**Providing Essential Safety Functions**
95
+
- Providing Essential Safety Functions
102
96
- Even if the main system crashes, Safety Island can still execute minimal safety operations, such as:
- Industrial Equipment → Emergency power cutoff or speed reduction
105
99
106
-
107
100
### Why Safety Island Matters for Functional Safety
108
101
109
102
Safety Island plays a critical role in Functional Safety by ensuring that the system can handle high-risk scenarios and minimize catastrophic failures.
110
103
111
104
How Safety Island Enhances Functional Safety
112
-
1.**Acts as an Independent Redundant Safety Layer**
105
+
1. Acts as an Independent Redundant Safety Layer
113
106
- Even if the main system fails, it can still operate independently.
114
-
2.**Supports ASIL-D Safety Level**
115
-
- Monitors ECU health status and executes emergency safety strategies (e.g., emergency braking).
116
-
3.**Provides Independent Fault Detection and Recovery Mechanisms**
117
-
-**Fail-Safe**: Activates a **safe mode**, such as limiting vehicle speed or switching to manual control.
118
-
-**Fail-Operational**: Ensures that high-safety applications (e.g., aerospace systems) can continue operating under certain conditions.
119
-
120
-
For more insights on **Arm's Functional Safety solutions**, you can refer to: [Arm Functional Safety Compute Blog](https://community.arm.com/arm-community-blogs/b/automotive-blog/posts/functional-safety-compute)
121
-
107
+
2. Supports ASIL-D Safety Level
108
+
- Monitors ECU health status and executes emergency safety strategies, such as emergency braking.
109
+
3. Provides Independent Fault Detection and Recovery Mechanisms
110
+
- Fail-Safe: Activates a safe mode, such as limiting vehicle speed or switching to manual control.
111
+
- Fail-Operational: Ensures that high-safety applications, such as aerospace systems, can continue operating under certain conditions.
122
112
123
113
### Functional Safety in the Software Development Lifecycle
124
114
125
-
Functional Safety impacts **both hardware and software development**, particularly in areas such as requirement changes, version management, and testing validation.
115
+
Functional Safety impacts both hardware and software development, particularly in areas such as requirement changes, version management, and testing validation.
126
116
For example, in ASIL-D level applications, every code modification requires a complete impact analysis and regression testing to ensure that new changes do not introduce additional risks.
127
117
128
118
### Functional Safety Requirements in Software Development
119
+
129
120
These practices ensure the software development process meets industry safety standards and can withstand system-level failures:
130
-
-**Requirement Specification**
131
-
- Clearly defining **safety-critical requirements** and conducting risk assessments.
132
-
-**Safety-Oriented Programming**
133
-
- Following **MISRA C, CERT C/C++ standards** and using static analysis tools to detect errors.
134
-
-**Fault Handling Mechanisms**
135
-
- Implementing **redundancy design and health monitoring** to handle anomalies.
136
-
-**Testing and Verification**
137
-
- Using **Hardware-in-the-Loop (HIL)** testing to ensure software safety in real hardware environments.
138
-
-**Version Management and Change Control**
139
-
- Using **Git, JIRA, Polarion** to track changes for safety audits.
140
-
141
-
This learning path builds upon the previous containerized [learning path](https://learn.arm.com/learning-paths/automotive/openadkit1_container) guide and introduces Functional Safety design practices from the earliest development stages.
142
-
143
-
By establishing an ASIL Partitioning software development environment and leveraging [**SOAFEE**](https://www.soafee.io/) technologies, developers can enhance software consistency and maintainability in Functional Safety applications.
121
+
- Requirement Specification
122
+
- Clearly defining safety-critical requirements and conducting risk assessments.
123
+
- Safety-Oriented Programming
124
+
- Following MISRA C, CERT C/C++ standards and using static analysis tools to detect errors.
125
+
- Fault Handling Mechanisms
126
+
- Implementing redundancy design and health monitoring to handle anomalies.
127
+
- Testing and Verification
128
+
- Using Hardware-in-the-Loop (HIL) testing to ensure software safety in real hardware environments.
129
+
- Version Management and Change Control
130
+
- Using Git, JIRA, Polarion to track changes for safety audits.
131
+
132
+
By establishing an ASIL Partitioning software development environment and leveraging SOAFEE technologies, you can enhance software consistency and maintainability in Functional Safety applications.
133
+
134
+
This Learning Path follows [Deploy Open AD Kit containerized autonomous driving simulation on Arm Neoverse](/learning-paths/automotive/openadkit1_container/) and introduces Functional Safety design practices from the earliest development stages.
0 commit comments