Tag Archives: Telematics

3 design hooks of Atmel MCUs for connected cars


The MPU and MCU worlds are constantly converging and colliding, and the difference between them is not a mere on-off switch — it’s more of a sliding bar. 


In February 2015, BMW reported that it patched the security flaw which could allow hackers to remotely unlock the doors of more than 2 million BMW, Mini and Rolls-Royce vehicles. Earlier, researchers at ADAC, a German motorist association, had demonstrated how they could intercept communications with BMW’s ConnectedDrive telematics service and unlock the doors.

security-needs-for-connected-car-by-atmel

BMW uses SIM card installed in the car to connect to a smartphone app over the Internet. Here, the ADAC researchers created a fake mobile network and tricked nearby cars into taking commands by reverse engineering the BMW’s telematics software.

The BMW hacking episode was a rude awakening for the connected car movement. The fact that prominent features like advanced driver assistance systems (ADAS) are all about safety and security is also a testament is that secure connectivity will be a prime consideration for the Internet of Cars.

Built-in Security

Atmel is confident that it can establish secure connections for the vehicles by merging its security expertise with performance and low-power gains of ARM Cortex-M7 microcontrollers. The San Jose, California-based chip supplier claims to have launched the industry’s first auto-qualified M7-based MCUs with Ethernet AVB and media LB peripherals. In addition, this high-end MCU series for in-vehicle infotainment offers the CAN 2.0 and CAN flexible data rate controller for higher bandwidth requirements.

Nicolas Schieli, Automotive MCU Marketing Director at Atmel, acknowledges that security is something new in the automotive environment that needs to be tackled as cars become more connected. “Anything can connect to the controller area network (CAN) data links.”

Schieli notes that the Cotex-M7 has embedded enhanced security features within its architecture and scalability. On top of that, Atmel is using its years of expertise in Trusted Platform Modules and crypto memories to securely connect cars to the Internet, not to mention the on-chip SHA and AES crypto engines in SAM E70/V70/V71 microcontrollers for encryption of data streams. “These built-in security features accelerate authentication of both firmware and applications.”

Crypto

Schieli notes that the Cotex-M7 has embedded enhanced security features within its architecture and scalability. On top of that, Atmel is using its years of expertise in Trusted Platform Modules and crypto memories to securely connect cars to the Internet, not to mention the on-chip SHA and AES crypto engines in SAM E70/V70/V71 microcontrollers for encryption of data streams. “These built-in security features accelerate authentication of both firmware and applications.”

He explained how the access to the Flash, SRAM, core registers and internal peripherals is blocked to enable security. It’s done either through the SW-DP/JTAG-DP interface or the Fast Flash Programming Interface. The automotive-qualified SAM V70 and V71 microcontrollers support Ethernet AVB and Media LB standards, and they are targeted for in-vehicle infotainment connectivity, audio amplifiers, telematics and head control units companion devices.

Software Support

The second major advantage that Atmel boasts in the connected car environment is software expertise and an ecosystem to support infotainment applications. For instance, a complete automotive Ethernet Audio Video Bridging (AVB) stack is being ported to the SAM V71 microcontrollers.

Software support is a key leverage in highly fragmented markets like automotive electronics. Atmel’s software package encompasses peripheral drivers, open-source middleware and real-time operating system (RTOS) features. The middleware features include USB class drivers, Ethernet stacks, storage file systems and JPEG encoder and decoder.

Next, the company offers support for several RTOS platforms like RTX, embOS, Thread-X, FreeRTOS and NuttX. Atmel also facilitates the software porting of any proprietary or commercial RTOS and middleware. Moreover, the MCU supplier from San Jose features support for specific automotive software such as AUTOSAR and Ethernet AVB stacks.

Atmel supports IDEs such as IAR or ARM MDK and Atmel Studio and it provides a full-featured board that covers all MCU series, including E70, V70 and V71 devices. And, a single board can cover all Atmel microcontrollers. Moreover, the MCU supplier provides Board Support Package for Xplained evaluation kit and easy porting to customer boards through board definition file (board.h).

Beyond that, Atmel is packing more functionality and software features into its M7 microcontrollers. Take SAM V71 devices, for example, which have three software-selectable low-power modes: sleep, wait and backup. In sleep mode, the processor is stopped while all other functions can be kept running. While in wait mode, all clocks and functions are stopped but some peripherals can be configured to wake up the system based on predefined conditions. In backup mode, RTT, RTC and wake-up logic are running. Furthermore, the microcontroller can meet the most stringent key-off requirements while retaining 1Kbyte of SRAM and wake-up on CAN.

Transition from MPU to MCU

Cortex-M7 is pushing the microcontroller performance in the realm of microprocessors. MPUs, which boast memory management unit and can run operating systems like Linux, eventually lead to higher memory costs. “Automakers and systems integrators are increasingly challenged in getting performance point breakthrough because they are running out of Flash capacity,” explained Schieli.

On the other hand, automotive OEMs are trying to squeeze costs in order to bring the connected car riches to non-luxury vehicles, and here M7 microcontrollers can help bring down costs and improve the simplification of car connectivity.

The M7 microcontrollers enable automotive embedded systems without the requirement of a Linux head and can target applications with high performance while running RTOS or bare metal implementation. In other words, M7 opens up avenues for automotive OEMs if they want to make a transition from MPU to MCU for cost benefits.

However, the MPU and MCU worlds are constantly converging and colliding, and the difference between them is not a mere on-off switch. It’s more of a sliding bar. Atmel, having worked on both sides of the fence, can help hardware developers to manage that sliding bar well. “Atmel is using M7 architecture to help bridge the gap between microprocessors and high-end MCUs,” Schieli concludes.


Majeed Ahmad is the author of books Smartphone: Mobile Revolution at the Crossroads of Communications, Computing and Consumer Electronics and The Next Web of 50 Billion Devices: Mobile Internet’s Past, Present and Future.

Simply the highest performing Cortex-M MCU


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.

Atmel has a wide MCU offering from the lower end 8-bit MCU to the higher end Cortex-A5 MPU.

The Cortex-M7 family fits within the SAM4 Cortex-M4 and the SAM9 ARM9 products.
The Cortex-M7 family offers high performance up to 645 Dhrystone MIPS but as there is no Memory Management Unit, we can not run Operating System such as Linux. This family targets applications with high performance requirements and running RTOS or bare metal solution.

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.

SAM S70 Block diagram

SAM S70 Block diagram

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.

SRAM Partition Atmel Cortex M7
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
Atmel's SMART | ARM Cortex M7 SAM S Series Target Applications

Target Applications depicted above for Atmel’s SMART | ARM based Cortex M7 SAM S Series. The SAM S series are general-purpose Flash MCUs based on the high-performance 32-bit ARM based Cortex-M7 RISC processors with floating point unit (FPU).

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.