The Raspberry Pi uses an ARM-based system-on-a-chip rather than an x86 processor. All models of the Raspberry Pi, from the earliest Raspberry Pi Model B to the latest Raspberry Pi 4 Model B, have used ARM processors. The ARM architecture is very different from x86, offering advantages like reduced power consumption that make it popular in mobile and embedded devices.
What is an ARM Processor?
ARM stands for Advanced RISC Machine. ARM processors use RISC (Reduced Instruction Set Computer) architecture, which differs from the CISC (Complex Instruction Set Computer) design used in x86 processors found in most Windows PCs and Macs.
Key advantages of RISC processors like ARM include:
- Simpler, more efficient design requiring fewer transistors
- Lower power consumption due to less complexity
- High performance at lower clock speeds than CISC
- Good balance of performance and efficiency for embedded systems
ARM processors are 32-bit or 64-bit designs based on the ARM instruction set. Rather than manufacturing their own chips, ARM licenses its IP cores and architectures to companies like Broadcom, Qualcomm, Apple, Samsung, Nvidia, and others. These companies integrate the ARM cores into their system-on-a-chip (SoC) designs.
The ARM business model differs greatly from x86, where Intel and AMD traditionally manufacture their own processors. By licensing IP instead of manufacturing, ARM achieved much wider adoption, especially in mobile devices. ARM chips can be tailored to target particular performance levels and power budgets.
ARM in Embedded Systems and IoT Devices
ARM processors are ubiquitous in smartphones and tablets. The architecture’s emphasis on power efficiency makes it ideal for battery-powered mobile devices. But ARM also dominates many other segments, including:
- Embedded electronics and microcontrollers
- Smart home devices and IoT
- Networking and telecom infrastructure
- Automotive infotainment and ADAS systems
ARM’s reduced complexity leads to smaller silicon die area and lower costs compared to x86. Chip designers can integrate all the required peripherals and connectivity on a single SoC. The Cortex-M series of ARM cores target microcontroller applications with strong demand for low power and small footprint.
Even some servers and supercomputers now use ARM chips due to their energy efficiency. Amazon’s Graviton server processors use ARM Neoverse cores, competing with AMD and Intel x86.
Raspberry Pi and ARM
The Raspberry Pi was envisioned as an affordable computer for promoting programming education. To achieve the right balance of performance, functionality, size and cost, the creators chose an ARM system-on-chip rather than using an Intel or AMD x86 processor.
The original Raspberry Pi Model B in 2012 used a Broadcom BCM2835 SoC with a single-core 700MHz ARM1176JZF-S processor and VideoCore IV GPU. Since then, newer Raspberry Pi boards have upgraded to more powerful ARM processors while retaining the same affordable price point and flexible, open design.
Here’s a brief history of the ARM-based processors used across Raspberry Pi models:
- Raspberry Pi 1 Model B – Broadcom BCM2835 with ARM1176JZF-S (ARMv6)
- Raspberry Pi 1 Model B+ – Broadcom BCM2835 with ARM1176JZF-S (ARMv6)
- Raspberry Pi 2 Model B – Broadcom BCM2836 with Cortex-A7 (ARMv7)
- Raspberry Pi 3 Model B – Broadcom BCM2837 with Cortex-A53 (ARMv8)
- Raspberry Pi 3 Model B+ – Broadcom BCM2837B0 with Cortex-A53 (ARMv8)
- Raspberry Pi 4 Model B – Broadcom BCM2711 with Cortex-A72 (ARMv8)
As shown above, newer Pi boards have taken advantage of ARM’s 64-bit capable Cortex-A series processors. The latest Raspberry Pi 4 Model B features a quad-core Cortex-A72 CPU capable of 1.5GHz clock speeds, alongside upgraded graphics, memory, and connectivity. But it retains the same versatile Pi form factor and interface ports that have made Raspberry Pi popular among DIYers, hobbyists, and educators.
Raspberry Pi Differences from x86 PCs
Compared to Windows and Mac machines based on x86 processors, the Raspberry Pi platform has some notable differences:
- Instruction set architecture – ARM uses RISC vs x86 CISC
- Processor manufacturing – Raspberry Pi uses 3rd party ARM SoCs vs x86 chips made by Intel/AMD
- Support – Windows/macOS target x86 while Pi runs Linux and ARM-compatible operating systems
- Performance – Pi 4 is capable but lower overall performance than modern PCs
- Use cases – Pi focused on embedded applications vs PC general computing
Software support is a key consideration. Windows and macOS only support x86, while the Pi runs operating systems like Raspbian, Ubuntu, RISC OS, and others that work on ARM. Apps and software packages on x86 PCs must be recompiled for ARM to work on Raspberry Pi.
However, the open source Linux environment gives the Pi flexibility. ARM compatible distributions like Debian allow the Pi to leverage a vast selection of existing software. The Pi’s GPIO pins also enable interfacing with electronics projects.
Can Raspberry Pi Run x86 Software?
The ARM processors used in Raspberry Pi cannot natively run x86 software, operating systems, or machine code. The CPU architectures have different underlying instruction sets. Porting software from x86 to ARM requires recompiling the source code on an ARM toolchain.
However, there are a few options for running x86 software on a Raspberry Pi:
- Emulation – QEMU and other x86 emulators allow running x86 software on ARM, but with limited performance
- Cross-compiling – Open source projects can be cross-compiled from x86 to ARM
- Compatibility layers – Wine and Box86 translate Linux/x86 calls to ARM on-the-fly
Performance will not match native x86 hardware, so ports and recompiles are better for intensive applications. But techniques like emulation provide Raspberry Pi users with flexibility in the software they can run.
Differences Between ARM and x86 Performance
Comparing the performance of ARM vs x86 processors is not straightforward. There are architectural differences in how the rival architectures handle instructions and pipelining that make direct clock-to-clock comparisons difficult.
Some key architectural differences that impact performance:
- x86 has longer instruction pipelines that allow higher clock speeds but greater stalls
- ARM has shorter pipelines and lower clocks, but avoids pipeline stalls
- x86 uses CISC so more instructions need to be decoded
- ARM RISC executes simpler instructions requiring less decoding
- Advanced x86 branch prediction and out-of-order execution improve performance
In the PC space, top-end Intel and AMD x86 processors clearly outpace even the fastest ARM designs used in mobile. But ARM has lower power draw for the performance level. The efficiency of ARM allows excellent performance per watt characteristics.
Benchmarking tests can provide a basic measure of performance differences. But real-world usage depends heavily on the software, operating system environment, and workload characteristics.
The Raspberry Pi family of single-board computers leverages ARM processors rather than x86 chips. This allows outstanding performance per watt characteristics ideal for embedded applications. All models of Raspberry Pi from the original Model B to today’s Pi 4 Model B use ARM system-on-chips from Broadcom.
Compared to x86 PCs, the Pi offers simplified hardware interfacing, lower power draw, and smaller size. But software support differs since Windows and macOS only run on x86. Overall, the ARM architecture provides Raspberry Pi with an optimized blend of performance, functionality, and affordability.