ARM Cortex-R
Thumb (16-bit) |
The ARM Cortex-R is a family of
Overview
32-bit | |
---|---|
Year | Core |
2011 | Cortex-R4(F) |
2011 | Cortex-R5(F) |
2011 | Cortex-R7(F) |
2016 | Cortex-R8(F) |
2016 | Cortex-R52(F) |
2022 | Cortex-R52+(F) |
64-bit | |
---|---|
Year | Core |
2020 | Cortex-R82(F) |
The ARM Cortex-R is a family of ARM cores implementing the R profile of the ARM architecture; that profile is designed for high performance hard real-time and safety critical applications. It is similar to the A profile for applications processing but adds features which make it more fault tolerant and suitable for use in hard real-time and safety critical applications.
Real time and safety critical features added include:
- Tightly coupled memory (uncached memory with guaranteed fast access time)
- Increased exception handling in hardware
- Hardware division instructions
- Memory protection unit (MPU)
- Deterministic interrupt handling as well as fast non-maskable interrupts
- L1 cacheand buses
- Dual-core lockstep for CPU fault tolerance
The Armv8-R architecture includes virtualization features similar to those introduced in the Armv7-A architecture. Two stages of MPU-based translation are provided to enable multiple operating systems to be isolated from one another under the control of a hypervisor.
Prior to the R82, introduced on 4 September 2020,[1] the Cortex-R family did not have a memory management unit (MMU). Models prior to the R82 could not use virtual memory, which made them unsuitable for many applications, such as full-featured Linux.[1] However, many real-time operating systems (RTOS), with an emphasis on total control, have traditionally regarded the lack of an MMU as a feature, not a bug.[1] On the R82, it may be possible to run a traditional RTOS in parallel with a paged OS such as Linux, where Linux takes advantage of the MMU for flexibility, while the RTOS locks the MMU into a direct translation mode on pages assigned to the RTOS so as to retain full predictability for real-time functions.[1]
ARM license
Silicon customization
Integrated device manufacturers (IDM) receive the ARM Processor
Applications
The Cortex-R is suitable for use in computer-controlled systems where very low latency and/or a high level of safety is required. An example of a hard real-time, safety critical application would be a modern electronic braking system in an automobile. The system not only needs to be fast and responsive to a plethora of sensor data input, but is also responsible for human safety. A failure of such a system could lead to severe injury or loss of life.
Other examples of hard real-time and/or safety critical applications include:
- Medical device
- Programmable logic controller (PLC)
- Electronic control units (ECU) for a wide variety of applications
- Robotics
- Avionics
- Motion control
See also
- ARM architecture
- Interrupt, Interrupt handler
- SWD
- List of ARM architectures and cores
- List of ARM Cortex-M development tools
- Real-time operating system, Comparison of real-time operating systems
References
- ^ a b c d Salter, Jim (9 September 2020). "Arm's new Cortex-R82 is its first 64-bit real-time processor". arstechnica.com. Ars Technica. Retrieved 11 September 2020.
External links
- ARM Cortex-R official documents
ARM
CoreBit
WidthARM
WebsiteARM Technical
Reference ManualARM Architecture
Reference ManualCortex-R4(F) 32 Link Link ARMv7-R Cortex-R5(F) 32 Link Link ARMv7-R Cortex-R7(F) 32 Link Link ARMv7-R Cortex-R8(F) 32 Link Link ARMv7-R Cortex-R52(F) 32 Link Link ARMv8
Cortex-R52+(F) 32 Link Link ARMv8-R Cortex-R82(F) 64 Link Link ARMv8-R (AArch64)
- Migrating
- Migrating from MIPS to ARM – arm.com
- Migrating from PPC to ARM – arm.com
- Migrating from IA-32 (x86-32) to ARM – arm.com
- Other