ARM11
![]() | This article may contain embedded lists. by removing items or incorporating them into the text of the article. (November 2015) |
General information | |
---|---|
Designed by | Thumb-2 (32-bit) |
ARM11 is a group of
Overview
Announced | |
---|---|
Year | Core |
2002 | ARM1136J(F)-S |
2003 | ARM1156T2(F)-S |
2003 | ARM1176JZ(F)-S |
2005 | ARM11MPCore |
The ARM11 product family (announced 29 April 2002) introduced the ARMv6 architectural additions which had been announced in October 2001. These include
, and others. The initial ARM11 core (ARM1136) was released to licensees in October 2002.The ARM11 family are currently the only ARMv6-architecture cores. There are, however, ARMv6-M cores (Cortex-M0 and Cortex-M1), addressing microcontroller applications;[3] ARM11 cores target more demanding applications.
Differences from ARM9
In terms of instruction set, ARM11 builds on the preceding ARM9 generation. It incorporates all ARM926EJ-S features[citation needed] and adds the ARMv6 instructions for media support (SIMD) and accelerating IRQ response.
Microarchitecture improvements in ARM11 cores[4] include:
- SIMD instructions which can double MPEG-4 and audio digital signal processing algorithm speed
- Cache is physically addressed, solving many cache aliasing problems and reducing context switch overhead.
- Unaligned and mixed-endian data access is supported.
- Reduced heat production and lower overheating risk
- Redesigned pipeline, supporting faster clock speeds (target up to 1 GHz)
- Longer: 8 (vs 5) stages
- Out-of-order completion for some operations (e.g., stores)
- Dynamic branch prediction/folding (like XScale)
- Cache misses don't block execution of non-dependent instructions.
- Load/store parallelism
- ALUparallelism
- 64-bitdata paths
JTAG debug support (for halting, stepping, breakpoints, and watchpoints) was simplified. The EmbeddedICE module was replaced with an interface which became part of the ARMv7 architecture. The hardware tracing modules (ETM and ETB) are compatible, but updated, versions of those used in the ARM9. In particular, trace semantics were updated to address parallel instruction execution and data transfers.
ARM makes an effort to promote recommended Verilog coding styles and techniques. This ensures semantically rigorous designs, preserving identical semantics throughout the chip design flow, which included extensive use of formal verification techniques. Without such attention, integrating an ARM11 with third-party designs could risk exposing hard-to-find latent bugs. Due to ARM cores being integrated into many different designs, using a variety of logic synthesis tools and chip manufacturing processes, the impact of its register-transfer level (RTL) quality is magnified many times.[5] The ARM11 generation focused more on synthesis than previous generations, making such concerns more of an issue.
Cores
There are four ARM11 cores:
- ARM1136[6]
- ARM1156, introduced Thumb2 instructions
- ARM1176, introduced security extensions[7]
- ARM11MPcore, introduced multicore support
Chips
![](http://upload.wikimedia.org/wikipedia/commons/thumb/6/6f/Raspberry_Pi_B%2B_top.jpg/220px-Raspberry_Pi_B%2B_top.jpg)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/4/47/KraftCom_CoaxLine_Adapter_CN-KE502M_-_Atheros_AR7400-AG2C-9835.jpg/220px-KraftCom_CoaxLine_Adapter_CN-KE502M_-_Atheros_AR7400-AG2C-9835.jpg)
![]() |
- Ambarella A5s, A7, A7L
- ASPEED Technology Inc. AST25xx
- Broadcom BCM2835 (Raspberry Pi 1 A/B, Pi Zero), BCM21553
- Cavium ECONA CNS3000 series[9]
- CSR Quatro 4230, 45xx, 53xx
- i.MX31, i.MX35
- Infotmic IMAPX2xx
- Nintendo CTR-CPU (Nintendo 3DS, New Nintendo 3DS)
- NTC Module 1879VYa1Ya, K1879KhB1Ya, 1879KhK1Ya, K1888VS018
- Nvidia Tegra
- MediaTek MT6276, MT6573
- Mindspeed Comcerto 1000 (Freescale LS102MA)
- Philips Semiconductor/ STn8820
- PLX Technology NAS782x
- Qualcomm MSM720x, MSM7x27
- Qualcomm Atheros AR7400
- Samsung S3C64xx, S5P64xx, S5L87xx, S5L89xx or Exynos Dual with Logic11
- Telechips TCC8902
- TMS320 C55x or C64x DSPas a second core
- iPhone 3G series, with a Samsung ARM 1176JZ chip
- Xcometic KVM2800
See also
- ARM architecture
- Interrupt, Interrupt handler
- JTAG
- List of ARM architectures and cores
- Real-time operating system, Comparison of real-time operating systems
References
- ^ a b ARM11 Family Webpage; ARM Holdings.
- ^ "ARM11 MPCore Processor Revision: r2p0 Technical Reference Manual". p. 36(1-4),301-302(8-7,8-8). Retrieved 14 December 2023.
- ^ not supported by Linux as of version 3.3
- ^ "The ARM11 Microarchitecture", ARM Ltd, 2002
- ^ The Dangers of Living with an X (bugs hidden in your Verilog), Version 1.1 (14 October 2003).
- ^ "ARM1136JF-S and ARM1136J-S Technical Reference Manual Revision: r1p5; ARM DDI 0211K".
- ^ "ARM1176JZF-S Technical Reference Manual Revision: r0p7". Retrieved 4 October 2012.
- ^ "BCM2835 – Raspberry Pi Documentation". raspberrypi.org. Retrieved 15 April 2017.
- ^ "Cavium Networks Introduces ECONA Family of Super Energy Efficient ARM-Based System-on-Chip (SoC) Processors for the Digital Home that break the 1 Watt Barrier" (Press release). Cavium. 8 September 2009. Archived from the original on 17 November 2015. Retrieved 14 November 2015.
External links
![](http://upload.wikimedia.org/wikipedia/en/thumb/4/4a/Commons-logo.svg/30px-Commons-logo.svg.png)
- ARM11 official documents
- ARM11 official website
- Architecture Reference Manuals: ARMv4/5/6, ARMv7-A/R
- Core Reference Manuals: ARM1136J(F)-S, ARM1156T2-S, ARM1156T2F-S, ARM1176JZ-S, ARM1176JZF-S, ARM11 MPCore
- Coprocessor Reference Manual: VFP11 (Floating-Point for ARM1136JF-S)
- Quick Reference Cards
- Instructions: Thumb (1), ARM and Thumb-2 (2), Vector Floating Point (3)
- Opcodes: Thumb (1, 2), ARM (3, 4), GNU Assembler Directives 5.
- Other
- ARM11 lacks an integer hardware division instruction Archived 4 July 2020 at the Wayback Machine
- The ARM11 Architecture, 2009, by Ian Davey and Payton Oliveri