Atmel SAM4S16 architecture
Atmel has filled out its high end microcontroller line with the 120 MHz SAM4S16 (Fig. 1) based on Arm's Cortex-M4 architecture. Other parts in this SAM4 family will add floating point support that the SAM4S16 lacks. Future SAM4X parts will run at 150 MHz and include interfaces such as Ethernet and CAN as well as 802.15.4 support. It is pin compatible with Atmel SAM7S, SAM3N and SAM3S MCUs.
The SAM4S16 has some competition in the Cortex-M4 space. For example, STmicroelectronics' STM32 F4 series includes Arm's floating point module (see Cortex-M4 Delivers 210 DMIPS Using 0-wait Memory). There is also Freescale's Kinetis line (see Cortex-M4 Mixes With FlexMemory).
The Cortex-M4 core uses the Thumb-2 instruction set and has a 3-stage pipeline. It supports saturating arithmetic used for signal processing chores. The core has hardware division and fast digital-signal-processing oriented multiply accumulate (MAC) support. The bus matrix supports four masters at one time including the 21-channel DMA controller.
The SAM4S16 Digital Signal Controller (DSC) targets low power applications that can take advantage of its Full Speed USB support and Atmel's QTouch capacitive touch technology. The chip has 1 Mbyte of flash and 128 Kbytes of SRAM. A boot ROM provides flexible start up options. External memory support includes SRAM, PSRAM, NOR flash, and NAND flash devices. The interface can also be used for a LCD module. There is also a Parallel Input/Output (IO) data capture mode.
Other interfaces include high-speed SDIO/SD/MMC plus 2 UARTs, 2 USART, 2 I2C, 3 SPI, and I2S ports. There is a 16-channel, 12-bit ADC and 2-channel, 12-bit DAC plus a temperature sensor and analog comparator.
The chip supports JTAG and serial debugging. It also has the Arm Instrumentation Trace Module (ITM) support.
Dynamic mode power consumption is 200µA/MHz when operating at low frequencies. The chips consumes 30mA at 100MHz. It can use as little as 3µA at 1.8V in back-up mode with the RTC running. The chip comes in a LQFP 100 package. The supply voltage is 1.62V to 3.6V.