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)
      • SAM3U (2009)[2]
      • SAM3S (2009)[3]
      • SAM3N (2010)[4]
      • SAM3A (2012)[5]
      • SAM3X (2012)[5]
    • Cortex-M4 (MCU) (ARMv7E-M Harvard architecture)
      • SAM4S (2011)[6]
      • SAM4L (2012)[7]
      • SAM4E (2013) series based on the ARM Cortex-M4F, first Atmel MCU that has a FPU (Floating-Point Unit).[8]
      • SAM4N (2013)
      • SAM4C (2014) dual-core[9]
      • SAM G51/53 (2014) based on the ARM Cortex-M4F.[10]
      • SAM G54/55 (2015) based on the ARM Cortex-M4F.[11]
    • Cortex-A5 (MPU) (ARMv7-A architecture)
      • SAMA5D3 series, (2013) Atmel announced the SAMA5D3 series based on the ARM Cortex-A5, which is the first Atmel chip with a Cortex-A5 core.[1]
      • SAMA5D4 (2014)[12]
      • SAMA5D2 series (2015)[13]
    • 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

Arduino Due board with Atmel ATSAM3X8E (ARM Cortex-M3 core) microcontroller

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.

  • SAM3A
  • SAM3N
  • SAM3S – reduce power consumption
  • SAM3U – high-speed USB
  • SAM3X – the Arduino Due board uses the Atmel SAM3X8E microcontroller[20]

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

Atmel boards

  • Xplained Pro
  • Xplained
  • SAM W21
  • SAMA5

Development tools

Cortex-M

IDE

Integrated development environments:

Windows
Linux
  • Buildroot[22]
  • Openembedded[23]
  • meta-atmel Yocto compliant layer[24]

Debuggers

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)
  1. Microchip Microcontrollers and Microprocessors website
  2. Microchip ARM-series marketing slides
  3. Microchip ARM-chip datasheet
  4. ARM core website
  5. ARM core generic user guide
  6. ARM core technical reference manual
  7. 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.

gollark: Hutter search can find an asymptotically optimal solution to any well-defined problem, see.
gollark: Just define your problem generation problem rigorously and use Hutter search.
gollark: Just iterate over all possible strings and look for the most problemy ones.
gollark: Oh yes, I'll just do a 1729-dimensional Fourier transform on this 8051 to multiply these integers
gollark: In any case, the asymptotically-fastest multiplication algorithms are worse for any problem which fits into the universe.

See also

References

Further reading

Microcontrollers, Digital Signal Controllers and Microprocessors official documents
ARM official documents
Other
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.