70
F. Firouzi et al.
Fig. 2.11 Applications of ARM Cortex profiles
cache, memory management, or floating-point unit. This profile is utilized with
RAM, FLASH, and peripherals in Cortex-M series. Because Cortex-M chips are
focused on being cost-efficient rather than high performing, they are a top choice
for IoT applications.
• Application Profile (A-Profile) – Highest-performance processers built based
on ARMv7-A and ARMv8-A architecture, capable of operating at more than
5GHz. It exploits a more expansive instruction set, cache(s), floating-point
unity, and memory management. In contrast with the M-Profile, this profile
focused on high performance and is not as cost-efficient. These profiles are
considered microprocessors and are meant to be utilized in conjunction with offchip FLASH and RAM. These microprocessors are usually run by an operating
system, mostly Linux. Cortex-A is the best option for GPS devices, tablets,
gaming systems, or smartphones.
• Real-Time Profile (R-Profile) – A trade-off between the A-Profile and the MProfile, this profile is utilized by the Cortex-R series. R-Profile is generally used
in network devices, automotive applications, hard-disk controllers, and highspeed microcontroller applications.
2.5.2 Architecture
In this section, we will briefly review the Cortex-M3 processor, utilized successfully
in many smart IoT objects (see Fig. 2.12). This processor includes a 32-bit data path,
32-bit registers, 32-bit memory, and a 32-bit processor all designed within a Harvard
architecture. This means that data and instruction access can occur simultaneously
because it utilizes a separate data bus and instruction bus [8, 9]. Note that chip
manufacturers (e.g., Texas Instrument, Samsung, etc.) to be able to design and
produce a microcontroller need to license the ARM cores (processors) and then add
F. Firouzi et al.
Fig. 2.11 Applications of ARM Cortex profiles
cache, memory management, or floating-point unit. This profile is utilized with
RAM, FLASH, and peripherals in Cortex-M series. Because Cortex-M chips are
focused on being cost-efficient rather than high performing, they are a top choice
for IoT applications.
• Application Profile (A-Profile) – Highest-performance processers built based
on ARMv7-A and ARMv8-A architecture, capable of operating at more than
5GHz. It exploits a more expansive instruction set, cache(s), floating-point
unity, and memory management. In contrast with the M-Profile, this profile
focused on high performance and is not as cost-efficient. These profiles are
considered microprocessors and are meant to be utilized in conjunction with offchip FLASH and RAM. These microprocessors are usually run by an operating
system, mostly Linux. Cortex-A is the best option for GPS devices, tablets,
gaming systems, or smartphones.
• Real-Time Profile (R-Profile) – A trade-off between the A-Profile and the MProfile, this profile is utilized by the Cortex-R series. R-Profile is generally used
in network devices, automotive applications, hard-disk controllers, and highspeed microcontroller applications.
2.5.2 Architecture
In this section, we will briefly review the Cortex-M3 processor, utilized successfully
in many smart IoT objects (see Fig. 2.12). This processor includes a 32-bit data path,
32-bit registers, 32-bit memory, and a 32-bit processor all designed within a Harvard
architecture. This means that data and instruction access can occur simultaneously
because it utilizes a separate data bus and instruction bus [8, 9]. Note that chip
manufacturers (e.g., Texas Instrument, Samsung, etc.) to be able to design and
produce a microcontroller need to license the ARM cores (processors) and then add
