Tag Archives: Keil MDK-ARM Toolchain

ARM Keil ecosystem integrates the Atmel SAM ESV7


Keil is part of the ARM wide ecosystem, enabling developers to speed up system release to the market. 


Even the best System-on-Chip (SoC) is useless without software, as well as the best designed S/W needs H/W to flourish. The “old” embedded world has exploded into many emergent markets like the  IoT, wearables, and even automotive, which is no more restricted to motor control or airbags as innovative products from entertainment to ADAS are being developed. What is the common denominator with these emergent products? Each of these require more software functionality and fast memory algorithm with deterministic code execution, and consequently innovative hardware to support these requirements, such as the ARM Cortex-M7-based Atmel | SMART SAM ESV7.

AtmelChipLib Overview

ARM has released a complete software development environment for a range of ARM Cortex-M based MCU devices: Keil MDK. Keil is part of ARM wide ecosystem, enabling developers to speed up system release to the market. MDK includes the µVision IDE/Debugger and ARM C/C++ Compiler, along with the essential middleware components and software packs. If you’re familiar with Run-Time Environment stacked description, you’ll recognize the various stacks. Let’s focus on “CMSIS-Driver”. CMSIS is the standard software framework for Cortex-M MCUs, extending the SAM-ESV7 Chip Library with standardized drivers for middleware and generic component interfaces.

By definition, an MCU is designed to address multiple applications and the SAM ESV7 is dedicated to support performance demanding and DSP intensive systems. Thanks to its 300MHz clock, SAM ESV7 delivers up to 640 DMIPS and its DSP performance is double that available in the Cortex-M4. A double-precision floating-point unit and a double-issue instruction pipeline further position the Cortex-M7 for speed.

Atmel Cortex M7 based Dev board

Let’s review some of these applications where SAM ESV7 is the best choice…

Finger Printer Module

The goal is to provide human bio authentication module for office or house access control. The key design requirements are:

  • +300 MHz CPU performance to process recognition algorithms
  • Image sensor interface to read raw finger image data from finger sensor array
  • Low cost and smaller module size
  • Flash/memory to reduce BOM cost and module size
  • Memory interface to expand model with memory extension just in case.

The requirement for superior performance and an image sensor interface can be seen as essential needs, but which will make the difference will be to offer both cheaper BOM cost and smaller module size than the competitor? The SAM S70 integrates up to 2MB embedded Flash, which is twice more than the direct competitor and may allow reducing BOM and module size.

SAM S70 Finger Print

Automotive Radio System

Every cent counts in automotive design, and OEMs prefer using a MCU rather than MPU, at first for cost reasons. Building an attractive radio for tomorrow’s car requires developing very performing DSP algorithms. Such algorithms used to be developed on expansive DSP standard part, leading to large module size, including external Flash and MCU leading obviously to a heavy BOM. In a 65nm embedded Flash process device, the Cortex-M7 can achieve a 1500 CoreMark score while running at 300 MHz, and its DSP performance is double that available in the Cortex-M4. This DSP power can be used to manage eight channels of speaker processing, including six stages of biquads, delay, scaler, limiter and mute functions. The SAM S71 workload is only 63% of the CPU, leaving enough room to support Ethernet AVB stack — very popular in automotive.

One of the secret sauces of the Cortex-M7 architecture is to provide a way to bypass the standard execution mechanism using “tightly coupled memories,” or TCM. There is an excellent white paper describing TCM implementation in the SAM S70/E70 series, entitled “Run Blazingly Fast Algorithms with Cortex-M7 Tightly Coupled Memories” from Lionel Perdigon and Jacko Wilbrink, which you can find here.


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 the site. This blog first appeared on SemiWiki on October 23, 2015.

News from the Gallery

News from the Gallery

By Joerg Bertholdt, Director of Marketing, Tools and Software, Atmel Corporation

We launched Atmel Gallery less than 6 months ago, the first app store of its kind to deliver integrated embedded tools and embedded software straight into a development environment, specifically for Atmel Studio 6.

We were excited to get into uncharted territory, but also anxious about the types of reaction we’d get from our customers. It’s time to see how we did.

With over 25,000 developers – and counting — signed up for a Gallery account, our expectations have by far been exceeded. The servers handled the big demands very well, proving the infrastructure design and scalability.

 Keil MDK-ARM Toolchain from Keil enables Atmel Studio to use its highly optimizing ARM compiler

Keil MDK-ARM Toolchain from Keil enables Atmel Studio to use its highly optimizing ARM compiler

With the February update of the XDK, the Extension Developer’s Kit, partners have been able to easily integrate embedded software and package integrations as projects that install directly into Atmel Studio. For example, developers who are interested in exploring commercial real-time operating systems, now have access to Micrium’s uC/OS and Segger’s embOS. Trial versions of these RTOSes are available as ready-to-run example projects for Atmel’s ARM Cortex-M4 based SAM4S devices.

Two popular extensions are compiler plug-ins. The Keil MDK-ARM Toolchain from Keil enables Atmel Studio to use its highly optimizing ARM compilerCodeVisionAVR allows the use of HP Infotec’s AVR compiler, which also includes CodeWizardAVR, a graphical peripheral configuration tool for AVR MCUs.

Besides development tools and embedded software extensions, training modules such as Integrating USB In Your Design have also been made available through the Gallery. With the XDK supporting the development of hardware extension boards for Atmel’s Xplained Pro kits, the drivers for the first Xplained Pro partner board will soon be delivered as an Atmel Studio project.

We’re six months in and happy to see the masses have adopted Atmel Gallery.

Are you a Gallery user? Let us know what you like, what you’d like to see improved or if there are additional extensions you would want to see. Just comment on this blog or send me an email to joerg.bertholdt@atmel.com.

Haven’t checked out the Gallery yet, just take a look at gallery.atmel.com. Don’t have Atmel Studio 6? It’s free, you can download it from atmel.com.

Are you an independent software vendor or developer and want to be part of the growing Atmel Studio ecosystem, join the Gallery as a developer; the XDK makes it easy to participate.