[ARMv8] Definition of exception levels EL0, EL1, EL2, EL3

tags: ARMv8  EL  exception level  

I work for an internationally renowned terminal manufacturer and am responsible for the research and development of modem chips.
In the early days of 5G, he was responsible for the development of the terminal data service layer and the core network. Currently, he is leading the research on technical standards for 6G computing power networks.


Blog content mainly revolves around:
  5G/6G Protocol Explanation
Explanation of Computing Power Network (Cloud Computing, Edge Computing, Terminal Computing)
  Advanced C Language Explanation
Explanation of Rust language

Exception levels

The ARMv8-A series defines a series of exception levels, from EL0 to EL3, the meaning of which is explained in detail below:

  • In ELn, as n increases, the execution authority of the software also increases accordingly;
  • EL0 is called Unprivileged Execute;
  • EL2 provides support for virtualization
  • EL3 provides a safe state switching function (switching between safe state and non-installation state)

Note that EL0 and EL1 must be implemented, and EL2 and EL3 are optional. Moreover, the EL implemented in a PE may be discontinuous, for example, only EL0, EL1, and EL3 are implemented.


Exception level switching

In the AARCH64 state, exception level switching can only occur inan exception was triggered,orexception handling returnIn the process, where:

  • When an exception occurs, the exception level either increases or remains the same;
  • When returning from exception handling, the exception level can only decrease or remain the same.

When an exception is about to enter or return from exception handling to another exception level (including the case where the exception level remains unchanged), the exception level to be entered/returned is calledtarget exception levelEach exception level has an explicit target exception level, which is either defined by default or through the corresponding bit of the system register(Note that the target exception level with no exception level is EL0).


Resource usage at different exception levels

When a PE executes at an exception level, the PE can access the following resources:

  • the set of resources available for the current exception level and current security state;
  • Resources available on all lower exception levels in the current security state.

This means that if EL3 is implemented, then when executing at EL3, the PE can access all resources available on all exception levels (both safe and unsafe).


Common Exception Level Model

ELnApplication range
EL0application
EL1Operating system or some privileged functions
EL2Hypervisor
EL3Secure Monitor

Security state

Armv8-A architecture providestwo security statesEach state has an associated physical memory address space,As follows:

  • Secure state: In this state, PE can access the physical address space in the secure state and the non-secure state;
  • Non-secure state: Only non-secure physical address space can be accessed.


here it isBe kind like waterThanks for reading



Intelligent Recommendation

ARM EL0-3

In ARMv8, User, FIQ, IRQ, Abort, Undefined, System are all cancelled and replaced by four privileged privilege modes: EL0, EL1, EL2, and EL3 (compared with the previous privileged mode/non-privileged ...

ATF EL3 Runtime Service

1 Introduction What is the runtime service? Do you write? Listen to me slowly. Software executed in the normal world and the security world is lower than the EL3 level will use a security monitor requ...

Elasticsearch score setting and definition of different levels of tokenizer

Query all data match query specifies the word segmentation method to control the matching accuracy The query contains the data of Home Inns International Ganzhou Must include hotel and international. ...

SpringBoot global exception definition

Directly on the code:    ...

More Recommendation

Exception definition, throw and handle

RenAny error is called an exception. When it happens unexpectedly, the execution unit must have the control of delivery. This is a meat-bunny dog--there is no return process. The PL/SQL engine treats ...

Python exception definition and principle

The role of exceptions in the program Error Handling: Ability to capture and respond to error messages in exception handling statements Event Notification: That is, when our application is in the proc...

Definition and architecture of exception

Article Directory 1. Exception definition and architecture 1.1 Definition 1.2 Structural system 1.2.1 Throwable 1.2.2 Error 1.2.3 Exception 2. Common exceptions 2.1 Runtime exceptions 1. NullPointerEx...

springboot exception definition

inBasicErrorController.javain By defaultDefaultErrorViewResolver.java Handling exception pages The default exception page is the html file in the error folder. The returned html is determined by ...

Java exception one: exception definition; exception classification

1. Exception definition Compiler errors during compilation often remind us, but errors during runtime are not easy to detect in advance. 2. Anomaly classification Exceptions are various situations tha...

Copyright  DMCA © 2018-2026 - All Rights Reserved - www.programmersought.com  User Notice

Top