![]() Mediatek MT6280A ARM Cortex-R4 | |
General information | |
---|---|
Designed by | Arm Ltd. |
Architecture and classification | |
Instruction set | ARMv7-R,ARMv8-R, ARM (32-bit), ARM (64-bit), Thumb (16-bit) |
TheARM Cortex-R is a family of32-bit and64-bitRISCARM processor cores licensed byArm Ltd. The cores are optimized for hardreal-time andsafety-critical applications. Cores in this family implement the ARM Real-time (R) profile, which is one of three architecture profiles, the other two being the Application (A) profile implemented by theCortex-A family and the Microcontroller (M) profile implemented by theCortex-M family. The ARM Cortex-R family of microprocessors currently consists of ARM Cortex-R4(F), ARM Cortex-R5(F), ARM Cortex-R7(F), ARM Cortex-R8(F), ARM Cortex-R52(F), ARM Cortex-R52+(F), and ARM Cortex-R82(F).
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:
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 amemory management unit (MMU). Models prior to the R82 could not usevirtual memory, which made them unsuitable for many applications, such as full-featuredLinux.[1] However, manyreal-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 Holdings neither manufactures nor sells CPU devices based on its own designs, but rather licenses the core designs to interested parties. ARM offers a variety of licensing terms, varying in cost and deliverables. To all licensees, ARM provides an integratable hardware description of the ARM core, as well as complete software development toolset and the right to sell manufacturedsilicon containing the ARM CPU.
Integrated device manufacturers (IDM) receive the ARM ProcessorIP assynthesizableRTL (written inVerilog). In this form, they have the ability to perform architectural level optimizations and extensions. This allows the manufacturer to achieve custom design goals, such as higher clock speed, very low power consumption, instruction set extensions, optimizations for size, debug support, etc. To determine which components have been included in a particular ARM CPU chip, consult the manufacturer datasheet and related documentation.
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:
ARM Core | Bit Width | ARM Website | ARM Technical Reference Manual | ARM Architecture Reference Manual |
---|---|---|---|---|
Cortex-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) |