Why develop a new MCU instead of using a high-performance MPU? Eric Esteve says “simplicity.”
By Eric Esteve
If you target high growth markets like wearable (sport watches, fitness bands, medical), industrial (mPOS, telematics, etc.) or smart appliances, you expect using a power efficient MCU delivering high DMIPs count. We are talking about systems requiring a low bill of material (BoM) both in terms of cost and devices count. Using a MCU (microController) and not a MPU (microProcessor) allows for the minimizing of power consumption as such device like the SAM S70 runs at the 300 MHz range, not the GigaHertz, while delivering 1500 CoreMark. In fact, it’s the industry’s highest performing Cortex-M MCUs, but the device is still a microcontroller, offering multiple interface peripherals and the related control capabilities, like 10/100 Ethernet MAC, HS USB port (including PHY), up to 8 UARTs, two SPI, three I2C, SDIOs and even interfaces with Atmel Wi-Fi and ZigBee companion IC.
This brand new SAM S/E/V 70 32-bit MCU is just filling the gap between the 32-bit MPU families based on Cortex-A5 ARM processor core delivering up to 850 DMIPS and the other 32-bit MCU based on ARM Cortex-M. Why develop a new MCU instead of using one of this high performance MPU? Simplicity is the first reason, as the MCU does not require using an operating system (OS) like Linux or else. Using a simple RTOS or even a scheduler will be enough. A powerful MCU will help to match increasing application requirements, like:
- Network Layers processing (gateway IoT)
- Higher Data Transfer Rates
- Better Audio and Image Processing to support standard evolution
- Graphical User Interface
- Last but not least: Security with AES-256, Integrity Check Monitor (SHA), TRNG and Memory Scrambling
Building MCU architecture probably requires more human intelligence to fulfill all these needs in a smaller and cheaper piece of silicon than for a MPU! Just look at the SAM S70 block diagram below, for instance.
The memory configuration is a good example. Close to the CPU, implementing 16k Bytes Instruction and 16k Bytes Data caches is a well-known practice. On top of the cache, the MCU can access Tightly Coupled Memories (TCM) through a controller running at MPU speed, or 300 MHz. These TCM are part of (up to) 384 Kbytes of SRAM, implemented by 16 Kbytes blocks and this SRAM can also be accessed through a 150 MHz bus matrix by most of the peripheral functions, either directly through a DMA (HS USB or Camera interface), either through a peripheral bridge. The best MCU architecture should provide the maximum flexibility: a MCU is not an ASSP but a general purpose device, targeting a wide range of applications. The customer benefits from flexibility when partitioning the SRAM into System RAM, Instruction TCM and Data TCM.
As you can see, the raw CPU performance efficiency can be increased by smart memory architecture. However, in terms of embedded Flash memory, we come back to a basic rule: the most eFlash is available on-chip, the easier and the safer will be the programming. The SAM S70 (or E70) family offers 512 Kbytes, 1 MB or 2 MB of eFlash… and this is a strong differentiator with the direct competitor offering only up to 1 MB of eFlash. Nothing magical here as the SAM S70 is processed on 65nm when the competition is lagging on 90nm. Targeting a most advanced node is not only good for embedding more Flash, it’s also good for CPU performance (300 MHz delivering 1500 DMIPS, obviously better than 200 MHz) — and it’s finally very positive in power consumption.
Indeed, Atmel has built a four mode strategy to minimize overall power consumption:
- Backup mode (VDDIO only) with low power regulators for SRAM retention
- Wait mode: all clocks and functions are stopped except some peripherals can be configured to wake up the system and Flash can be put in deep power down mode
- Sleep mode: the processor is stopped while all other functions can be kept running
- Active mode
If you think about IoT, the SAM S70 is suited to support gateway applications, among many other potential uses, ranging from wearable (medical or sport), industrial or automotive (in this case it will be the SAM V70 MCU, offering EMAC and dual CAN capability on top of S70).
This post has been republished with permission from SemiWiki.com, where Eric Esteve is a principle blogger as well as one of the four founding members of SemiWiki.com. This blog first appeared on SemiWiki on February 22, 2015.