4. Modes of Operation¶
The core supports the following standard modes of operations:
Debug: This is highest level of operation which provides access to all features of the core and the system. Typically, this mode is used for software development and bring-up phases. This mode is available only if the debugging option is enabled at design time.
Machine: This is the highest mode of software execution and is mandatory in all variants generated by the core. The code running in machine mode is inherently trusted and has access to all implementation resources.
Supervisor: This is an optional mode between the machine and user modes, typically used for providing isolation between a supervisor-level operating system and the user execution environment.
User: This is lowest mode of operation where user applications are executed.