ARM7

32-bit ARM processor architecture

ARM7
General information
Designed byARM Holdings
Architecture and classification
Instruction setARM (32-bit) (ARMv3)
ARM7T
Architecture and classification
Instruction setARM (32-bit),
Thumb (16-bit) (ARMv4T)
ARM7EJ-S
Architecture and classification
Instruction setARM (32-bit),
Thumb (16-bit),
Jazelle (8-bit) (ARMv5TEJ)

ARM7 is a group of 32-bit RISC ARM processor cores licensed by ARM Holdings for microcontroller use.[1] The ARM7 core family consists of ARM700, ARM710, ARM7DI, ARM710a, ARM720T, ARM740T, ARM710T, ARM7TDMI, ARM7TDMI-S, ARM7EJ-S. The ARM7TDMI and ARM7TDMI-S were the most popular cores of the family.

Since ARM7 cores were released from 1993 to 2001, they are no longer recommended for new IC designs; instead ARM Cortex-M or ARM Cortex-R cores are preferred.[1]

Overview

This generation introduced the Thumb 16-bit instruction set providing improved code density compared to previous designs. The most widely used ARM7 designs implement the ARMv4T architecture, but some implement ARMv3 or ARMv5TEJ. ARM7TDMI has 37 registers (31 GPR and 6 SPR). All these designs use a Von Neumann architecture,[citation needed] thus the few versions containing a cache do not separate data and instruction caches.

Some ARM7 cores are obsolete. One historically significant model, the ARM7DI[2] is notable for having introduced JTAG based on-chip debugging; the preceding ARM6 cores did not support it. The "D" represented a JTAG TAP for debugging; the "I" denoted an ICEBreaker debug module supporting hardware breakpoints and watchpoints, and letting the system be stalled for debugging. Subsequent cores included and enhanced this support.

It is a versatile processor designed for mobile devices and other low power electronics. This processor architecture is capable of up to 130 MIPS on a typical 0.13 μm process. The ARM7TDMI processor core implements ARM architecture v4T. The processor supports both 32-bit and 16-bit instructions via the ARM and Thumb instruction sets.

ARM licenses the processor to various semiconductor companies, which design full chips based on the ARM processor architecture.

ARM license

ARM Holdings neither manufactures nor sells CPU devices based on its own designs, but rather licenses the processor architecture 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 manufactured silicon containing the ARM CPU.

Silicon customization

Integrated device manufacturers (IDM) receive the ARM Processor IP as synthesizable RTL (written in Verilog). 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.

Cores

Year ARM7 Cores
1993 ARM700
1994 ARM710
1994 ARM7DI
1994 ARM7TDMI
1995 ARM710a
1997 ARM710T
1997 ARM720T
1997 ARM740T
2001 ARM7TDMI-S
2001 ARM7EJ-S

The original ARM7 was based on the earlier ARM6 design and used the same ARMv3 instruction set. The ARM710 variant was used in a CPU module for the Acorn Risc PC, and the first ARM based System on a Chip designs ARM7100 and ARM7500 used this core.

ARM7TDMI

The ARM7TDMI (ARM7 + 16 bit Thumb + JTAG Debug + fast Multiplier + enhanced ICE) processor implements the ARMv4 instruction set. It was licensed for manufacture by an array of semiconductor companies. In 2009, it was one of the most widely used ARM cores, and is found in numerous deeply embedded system designs. It was used in the popular video game console Game Boy Advance.

Texas Instruments licensed the ARM7TDMI, which was designed into the Nokia 6110, the first ARM-powered GSM phone.[3] This led to the popular series of Nokia phones using the processor, including the 3210 and 3310.[4]

The ARM7TDMI-S variant is the synthesizable core.

ARM7EJ-S

MediaTek MT3337V - ARM7EJ-S processor

The ARM7EJ-S (ARM7 + Enhanced + Jazelle - Synthesizable) is a version of the ARM7 implementing the ARMv5TE instruction set originally introduced with the more powerful ARM9E core.

Chips

Yamaha AICA sound processor in Dreamcast game console[5][6][7]

ARM7TDMI or ARM7TDMI-S core

Unreferenced ARM7 core

The Make Controller Kit with an Atmel AT91SAM7X256 (ARM) microcontroller
  • ADMtek ADM8628
  • Atmel AT91CAP7
  • Cirrus Logic CL-PS7110
  • Mediatek MT2502 (ARM7 EJ-STM)
  • NetSilicon NS7520
  • Nuvoton NUC500, NUC700
  • LH7
  • PortalPlayer 5002, 5003, 5020, 5021-TDF, 5022, 5024 SOCs (dual ARM7TDI cores)
  • Samsung S3C46Q0X01-EE8X, S3C44B0X
  • Yamaha AICA (ARM7DI) – sound processor with DSP[7]

Notable uses

  • Nokia 6110 – first GSM phone to use an ARM processor
  • Dreamcast – home video game console (audio coprocessor)
  • PlayStation 2 - home video game console (security handler)
  • Game Boy Advance – handheld video game console
  • Zune HD – portable media player
  • Roomba – robotic vacuum cleaner
  • Lego Mindstorms NXT - 2nd generation robotics toy line from Lego
  • iPod – the first 5 generations of the iPod Classic as well as the Mini and first Nano used dual-core ARM7TDMI processors.

See also

  • iconElectronics portal

References

  1. ^ a b ARM7 Family Webpage; ARM Holdings.
  2. ^ "ARM7DI Data Sheet"; Document Number ARM DDI 0027D; Issued: December 1994.
  3. ^ Sakr, Sharif. "ARM co-founder John Biggs". Engadget. Retrieved 23 December 2011. [...] the ARM7-TDMI was licensed by Texas Instruments and designed into the Nokia 6110, which was the first ARM-powered GSM phone.
  4. ^ Walshe, Ben (13 March 2018). "A look at devices that have shaped mobile gaming". Arm Community. Retrieved 12 September 2019.
  5. ^ "Remembering the Sega Dreamcast". 29 September 2009.
  6. ^ Shiro Hagiwara; Ian Oliver (1999). "Sega Dreamcast: Creating a Unified Entertainment World". IEEE Micro. 19 (6): 29–35. doi:10.1109/40.809375.
  7. ^ a b "Dreamcast/ Dev.Box System Architecture" (PDF). 2 September 1999.
  8. ^ a b c Atmel Legacy ARM-Based Solutions; Atmel.
  9. ^ SAM7S/SE ARM7 Microcontrollers; Atmel.
  10. ^ SAM7X/XC ARM7 Microcontrollers; Atmel.
  11. ^ STR7 ARM7 Microcontrollers; STMicroelectronics.
  12. ^ "Case No COMP/M.2820" (PDF). ec.europa.eu. 24 June 2002. Retrieved 20 January 2019.
  13. ^ "Alcatel Microelectronics MTC-20276 INTQ Data Sheet" (PDF). datasheet.datasheetarchive.com. October 1998. Retrieved 20 January 2019.
  14. ^ "Alcatel Microelectronics MTC-20277 INTT Data Sheet and User Manual" (PDF). datasheet.datasheetarchive.com. October 1998. Retrieved 20 January 2019.
  15. ^ "TargetSpecificOptimization". www.rockbox.org. Retrieved 11 January 2019.
  16. ^ "Ipod nano Generations - ipod touch generations". www.ipodlinux.org. Retrieved 11 January 2019.
  17. ^ "LPC2109/2119/2129 datasheet" (PDF). 14 June 2011. Retrieved 10 June 2020.

External links

Wikimedia Commons has media related to ARM7.
  • ARM7 official website
  • Architecture Reference Manual: ARMv4/5/6
  • Core Reference Manuals: ARM7DIARM7EJ-S,ARM7TDMI,ARM7TDMI-S,ARM710a, ARM710T,ARM720T,ARM740T
  • Instructions: Thumb (1), ARM and Thumb-2 (2), Vector Floating Point (3)
  • Opcodes: Thumb (1, 2), ARM (3, 4), GNU Assembler Directives 5
  • Differences between ARM7TDMI and ARM7TDMI-S
  • ARM Assembly Intro A starter's tutorial on ARM assembly
  • ARM7TDMI Microcontroller Development Resources - schematics, CAD files, header files
  • v
  • t
  • e
Classic ARM-based chips
Classic
processors
ARM7
ARM9
ARM11
ARMv2a
compatible
  • Amber (open FPGA core)
ARMv4
compatible
ARMv5TE
compatible
  • Intel/Marvell XScale
  • Marvell Sheeva, Feroceon, Jolteon, Mohawk
  • Faraday FA606TE, FA616TE, FA626TE, FA726TE
  • v
  • t
  • e
Embedded ARM-based chips
Embedded
microcontrollers
Cortex-M0
  • Cypress PSoC 4000, 4100, 4100M, 4200, 4200DS, 4200L, 4200M
  • Infineon XMC1000
  • Nordic nRF51
  • NXP LPC1100, LPC1200
  • nuvoTon NuMicro
  • Sonix SN32F700
  • STMicroelectronics STM32 F0
  • Toshiba TX00
  • Vorago VA108x0
Cortex-M0+
  • Cypress PSoC 4000S, 4100S, 4100S+, 4100PS, 4700S, FM0+
  • Holtek HT32F52000
  • Microchip (Atmel) SAM C2, D0, D1, D2, DA, L2, R2, R3
  • NXP LPC800, LPC11E60, LPC11U60
  • NXP (Freescale) Kinetis E, EA, L, M, V1, W0
  • Raspberry Pi RP2040
  • Renesas Synergy S1
  • Silicon Labs (Energy Micro) EFM32 Zero, Happy
  • STMicroelectronics STM32 L0
Cortex-M1
  • Altera FPGAs Cyclone-II, Cyclone-III, Stratix-II, Stratix-III
  • Microsemi (Actel) FPGAs Fusion, IGLOO/e, ProASIC3L, ProASIC3/E
  • Xilinx FPGAs Spartan-3, Virtex-2-3-4
Cortex-M3
Cortex-M4
  • Microchip (Atmel) SAM 4L, 4N, 4S
  • NXP (Freescale) Kinetis K, W2
  • Renesas RA4W1, RA6M1, RA6M2, RA6M3, RA6T1
Cortex-M4F
  • Cypress 6200, FM4
  • Infineon XMC4000
  • Microchip (Atmel) SAM 4C, 4E, D5, E5, G5
  • Microchip CEC1302
  • Nordic nRF52
  • NXP LPC4000, LPC4300
  • NXP (Freescale) Kinetis K, V3, V4
  • Renesas Synergy S3, S5, S7
  • Silicon Labs (Energy Micro) EFM32 Wonder
  • STMicroelectronics STM32 F3, F4, L4, L4+, WB
  • Texas Instruments LM4F/TM4C, MSP432
  • Toshiba TX04
Cortex-M7F
  • Microchip (Atmel) SAM E7, S7, V7
  • NXP (Freescale) Kinetis KV5x, i.MX RT 10xx, i.MX RT 11xx, S32K3xx
  • STMicroelectronics STM32 F7, H7
Cortex-M23
  • GigaDevice CD32E2xx
  • Microchip (Atmel) SAM L10, L11, and PIC 32CM-LE 32CM-LS
  • Nuvoton M23xx family, M2xx family, NUC1262, M2L31
  • Renesas S1JA, RA2A1, RA2L1, RA2E1, RA2E2
Cortex-M33F
  • Analog Devices ADUCM4
  • Dialog DA1469x
  • GigaDevice GD32E5, GD32W5
  • Nordic nRF91, nRF5340, nRF54
  • NXP LPC5500, i.MX RT600
  • ON RSL15
  • Renesas RA4, RA6
  • ST STM32 H5, L5, U5, WBA
  • Silicon Labs Wireless Gecko Series 2
Cortex-M35P
  • STMicroelectronics ST33K
Cortex-M55F
Cortex-M85F
  • Renesas RA8
Real-time
microprocessors
Cortex-R4F
  • Texas Instruments RM4, TMS570
  • Renesas RZ/T1
Cortex-R5F
Cortex-R7F
  • Renesas RZ/G2E, RZ/G2H, RZ/G2M, RZ/G2N
Cortex-R52F
  • NXP S32Z, S32E
  • Renesas RZ/N2L, RZ/T2L, RZ/T2M
Cortex-R52+F
  • STMicroelectronics Stellar G, Stellar P
  • v
  • t
  • e
Main
Architectures
Word length
4-bit
8-bit
16-bit
32-bit
64-bit
Interfaces
Programming
Debugging
Lists
See also