Atmel ARM-based processors
Atmel ARM-based processors are microcontrollers and microprocessors integrated circuits, by Microchip Technology (previously Atmel), that are based on various 32-bit ARM processor cores, with in-house designed peripherals and tool support.
Overview
ARM licenses the core design for a series of 32-bit processors. ARM does not manufacture any complete silicon products, just intellectual property (IP). The ARM processors are RISC (reduced instruction set computing). This is similar to Microchip’s AVR 8-bit products, a later adoption of RISC architecture. Whereas the AVR architecture used Harvard architecture exclusively, some ARM cores are Harvard (Cortex-M3) and others are Von Neumann architecture (ARM7TDMI).
Semiconductor companies such as Microchip take the ARM cores, which use a consistent set of instructions and register naming, and add peripheral circuits such as ADCs (analog to digital converters), clock management, and serial communications such as USART, SPI, I2C, CAN, LIN, USB, Ethernet, and LCD, Camera or Touch controllers. Microchip made efforts to adapt advanced peripherals and power management that used very little power and can operate independently without having the CPU core powered up (sleepwalking). They also provided for DMA between external interfaces and memories increasing data throughput with minimal processor intervention.
Microchip sells both MCUs (microcontroller units) that have internal Flash memory, and MPUs (microprocessor units) that use external memory. In addition to the chips themselves, Microchip offers demo boards, both on its website, and through distribution channels such as Digi-key, Farnell, Ineltek, Arrow, Avnet, Future Electronics, and Mouser.
Some of the Microchip ARM-based products are meant for specific applications, such as their SAM4CP that is used in smart-grid energy meters.
History
- 1995 sign ARM ARM7TDMI "Thumb" core license agreement (ARMv4T Von Neumann architecture) (an MPU core Atmel made into MCU)
- AT91M40800 (1998)
- AT91M42800A
- AT91M55800A
- AT91R40008
- AT91FR40162 (2002)
- SAM7S/SE
- SAM7X/XC
- SAM7L
- 1995 sign ARM920T/ARM9TDMI (MPU) core license agreement (ARMv4T Von Neumann architecture)
- AT91RM9200 (2003)
- 2000 sign ARM926EJ/ARM9E (MPU) core license agreement (ARMv5 architecture)
- AT91SAM9260 (2006)
- AT91SAM9263 (2007)
- SAM9XE (2008)
- SAM9N/CN,
- SAM9R (2009)
- SAM9G (2009)
- SAM9X
- SAM9M (2010)
- 2004 sign ARM1176JZ-S core license agreement (not used in Atmel parts)
- 2008 sign Cortex license agreement with ARM Holdings.[1]
- Cortex-M3 (MCU) (ARMv7-M Harvard architecture)
- Cortex-M4 (MCU) (ARMv7E-M Harvard architecture)
- Cortex-A5 (MPU) (ARMv7-A architecture)
- Cortex-M0+ (MCU)in the SAM D20 (2013) (ARMv6-M architecture) – In June 2013, Atmel announced the SAMD20 series based on the ARM Cortex-M0+.[14]
- Cortex-M7 (MCU) (ARMv7-M architecture)
- SAMS70 series, (2015) Atmel announced the SAM S70 series based on the ARM Cortex-M7.[15]
- SAME70 series, (2015) Atmel announced the SAM S70 series based on the ARM Cortex-M7.[15]
- SAMV70 series, (2015) Atmel announced the SAM S70 series based on the ARM Cortex-M7, which is the first Atmel chip automotive grade with a Cortex-M7 core.[16]
Products
Microcontrollers
Microcontrollers have internal program memory as well as the conventional internal registers and RAM. Microchip ARM MCUs range from the SAM D10 series with as few as 14 pins, to the 144-pin SAM S70 and SAM E70 products.
The SAM4S, SAM4N, SAM3S, SAM3N, SAM7S (64-pin) families have pin-compatible IC footprints, except for USB device, though they are not voltage level compatible.[17]
SAM D
The SAM D[18] family from Microchip consists of four different sub series (SAM D10, SAM D11, SAM D20, SAM D21). The devices are all based on the ARM Cortex-M0+ processor and offer different pin, memory, and feature combinations. The devices are pin- and code-compatible and share peripherals like the Event System and the SERCOM module. The Arduino Zero board uses an ATSAMD21G18 chip.[19]
The SAM D5X/E5X features the 32-bit Cortex-M4F.
SAM 3
In 2009 Atmel announced the ATSAM3U line of flash-based microcontrollers based on the ARM Cortex-M3 processor, as a higher end evolution of the SAM7 microcontroller products. They have a top clock speed in the range of 100 MHz, and come in a variety of flash sizes. In the summer 2009 these parts were still sampling, and a development board had recently been made available.
In December 2009, the ATSAM3S line was announced. This features several enhancements for lower power operation and bill of materials cost reduction.
Market watchers observe that these Cortex-M3 products are competition for Atmel's own AVR32 UC3A products. Both are microcontrollers with largely identical peripherals and other hardware technology, flash-based, similar clock speeds, and with dense 16/32 bit RISC instruction sets.
SAM 4
The ATSAM4 is based on the ARM Cortex-M4 core. The SAM4E includes a FPU (Floating-Point Unit). The SAM4C includes a dual-core ARM Cortex-M4 (one core with a FPU).
1st of August 2017, the ATSAMD/Exx family was announced. This features several enhancements for lower power operation and more peripherals Ethernet and CANBUS-FD in SAMExx series.
- SAM4C – ARM Cortex-M4/M4F dual-core, which includes FPU
- SAM4E – ARM Cortex-M4F core, which includes FPU
- SAM4L – ARM Cortex-M4 core
- SAM4N – ARM Cortex-M4 core, pin-to-pin compatibility with SAM4S, SAM3S, SAM3N, SAM7S devices
- SAM4S – ARM Cortex-M4 core
- SAMG – ARM Cortex-M4F core, which includes FPU
- SAME - ARM Cortex-M4F core, which includes FPU, Ethernet MAC, CAN-FD and Integrated Security including Symmetric (AES) and Asymmetric (ECC) Encryption, Public Key Exchange Support(PUKCC), TRNG and SHA- based memory Integrity checker.
SAM x70
These are based on the ARM Cortex-M7 core.
- SAMS70 – general purpose high performance MCU
- SAME70 – connectivity high performance MCU
- SAMV70, SAMV71 – automotive high performance MCU
Legacy
AT91SAM7
There are a wide variety of AT91 flash-based microcontrollers, based on ARM7TDMI cores. These chips have a top clock speed in the range of 60 MHz, and come with a variety of flash sizes and peripheral sets.
- SAM7L – low power operation
- SAM7S – USB and other peripherals. SAM7S 64-pin chips are compatible with SAM4S, SAM4N SAM3S, SAM3N families.
- SAM7SE – USB, external memory support, and other peripherals
- SAM7X – Ethernet, USB, CAN, and other peripherals
- SAM7XC -–cryptographic extensions (notably AES support) to AT91SAM7X chips
Microprocessors
AT91SAM9
The AT91SAM9XE flash-based microcontrollers are based on the ARM926ej-s cores. They have a top clock speed in the range of 200 up to 400 MHz, and come with a variety of flash sizes. They somewhat resemble flash-equipped AT91SAM9260 chips.
Microchip introduced the AT91SAM9 processors (using the ARM926ej-s core, with the ARMv5TEJ architecture) as its first broad market follow on to the highly successful AT91RM9200 processor. These processors improved on that predecessor by using less power, incorporating a newer and more powerful ARM core, and providing a variety of chips with different peripheral sets. While most are clocked at up to about 200 MHz, some can run at twice that speed. Processors include:
SAMA5
This series is based on the ARM Cortex-A5 core.[1][21]
- SAMA5D2
- SAMA5D2 – 10/100 Ethernet, CAN, LCD, ClassD audio, QSPI, USB HSIC, Raw Bayer Image Sensor Interface, LPDDR3/LPDDR2/LPDDR/DDR2, up to 10 UART
- SAMA5D3
- SAMA5D31 – 10/100 Ethernet, LCD
- SAMA5D33 – Gigabit Ethernet, LCD
- SAMA5D34 – Gigabit Ethernet, LCD, dual CAN
- SAMA5D35 – no LCD, dual CAN, one Gigabit Ethernet + one 10/100 Ethernet
- SAMA5D36 – LCD, dual CAN, one Gigabit Ethernet + one 10/100 Ethernet
- SAMA5D4
- SAMA5D4 – 528 MHz (840 DMIPS), Neon, 128 KB L2 cache, video decoder, LCD, Ethernet
Smart Energy
- SAM 4C/CM
Arduino boards
- Official
- Arduino Due with 84 MHz Atmel ATSAM3X8E (ARM Cortex-M3 core).
- Arduino Zero with 48 MHz Atmel ATSAMD21G18 (ARM Cortex-M0+ core).
- Arduino MKR1000 with 48 MHz Atmel ATSAMW25 (ARM Cortex-M0+ core).
- Shield Compatible
- Shield-compatible Rascal with 400 MHz Atmel AT91SAM9G20 (ARM926EJ-S core).
Atmel boards
- Xplained Pro
- Xplained
- SAM W21
- SAMA5
Development tools
Cortex-M
IDE
Integrated development environments:
- Windows
- Microchip - MPLAB and Atmel Studio 7
- IAR – Embedded Workbench for ARM
- Crossware – Development Suite for ARM
- Linux
Debuggers
- Atmel-ICE
- JTAG-ICE
- Segger J-Link
- Crossware Jaguar
Documentation
The amount of documentation for all ARM chips is daunting, especially for newcomers. The documentation for microcontrollers from past decades would easily be inclusive in a single document, but as chips have evolved so has the documentation grown. The total documentation is especially hard to grasp for all ARM chips since it consists of documents from the IC manufacturer (for example, Microchip) and documents from CPU core vendor (ARM Holdings).
A typical top-down documentation tree is: manufacturer website, manufacturer marketing slides, manufacturer datasheet for the exact physical chip, manufacturer detailed reference manual that describes common peripherals and aspects of a physical chip family, ARM core generic user guide, ARM core technical reference manual, ARM architecture reference manual that describes the instruction set(s).
- Documentation tree (top to bottom)
- Microchip Microcontrollers and Microprocessors website
- Microchip ARM-series marketing slides
- Microchip ARM-chip datasheet
- ARM core website
- ARM core generic user guide
- ARM core technical reference manual
- ARM architecture reference manual
Microchip has additional documents, such as: evaluation board user manuals, application notes, getting started guides, software library documents, errata, and more. See External Links section for links to official Microchip and ARM documents.
See also
- ARM architecture, List of ARM microprocessor cores, ARM Cortex-M
- Microcontroller, List of common microcontrollers
- Embedded system, Single-board microcontroller
- Interrupt, Interrupt handler, Comparison of real-time operating systems
- JTAG, SWD
References
- Press Release; Atmel; February 4, 2013.
- "Press Release; Atmel; June 1, 2009". Archived from the original on 2014-07-14. Retrieved 2013-01-06.
- "Press Release; Atmel; December 15, 2009". Archived from the original on 2014-07-14. Retrieved 2013-01-06.
- "Press Release; Atmel; November 9, 2010". Archived from the original on 2014-07-14. Retrieved 2013-01-06.
- "Press Release; Atmel; February 28, 2012". Archived from the original on 2013-03-17. Retrieved 2013-01-06.
- "Press Release; Atmel; October 26, 2011". Archived from the original on 2013-03-17. Retrieved 2013-01-06.
- "Press Release; Atmel; September 24, 2012". Archived from the original on 2013-03-17. Retrieved 2013-01-06.
- Press Release; Atmel; January 14, 2013.
- Press Release; Atmel; August 12, 2014.
- Press Release; Atmel; January 7, 2014.
- Press Release; Atmel; January 5, 2015.
- Press Release; Atmel; October 1, 2014.
- Press Release; Atmel; September 14, 2015.
- Press Release; Atmel; June 17, 2013.
- Press Release; Atmel; July 15, 2015.
- Press Release; Atmel; Jan 6, 2015.
- Pin-compatible Cortex replacement for Microchip ARM7 SAM7S derivatives; ECE; May 2011.
- Microsite; Atmel; July 11, 2014.
- Arduino Zero; arduino.cc
- Arduino Due; arduino.cc
- SAMA5 webpage; Microchip.com
- Buildroot
- Openembedded
- "meta-atmel Yocto Compliant layer". Archived from the original on 2019-01-22. Retrieved 2019-10-05.
Further reading
External links
- Microcontrollers, Digital Signal Controllers and Microprocessors official documents
- ARM official documents
- Other