ARM reaches out to embrace microcontrollers

Embedded Logic Solutions Pty Ltd
Friday, 11 February, 2011


Many semiconductor manufacturers now offer microcontrollers which are based on ARM technology. These microcontrollers offer an extensive peripheral mix combined with an outstanding price/performance relationship.

For those who have not yet considered an ARM-based MCU, additional factors such as the range of professional development tools, efficient operating systems and middleware, coupled with a wide variety of very attractive cost and memory options makes this the right time to evaluate.

Development of the ARM architecture began in 1983 in England by Acorn as a cost-effective successor to existing 6502 systems. The ARM architecture has a simple yet efficient instruction set which enables a compact silicon footprint and offers high execution speed at low power.

Acorn recognised the potential of this architecture and created an independent enterprise in 1990, called ARM, together with a group of funding partners.

Since then, the ARM architecture has grown to be the most popular architecture on the planet. It has been used in numerous designs and ASSPs can be found today in nearly all mobile phones, many MP3 Players, PDAs, cameras and navigation systems. In addition, ARM is used for many products in motor vehicle, medical and industrial applications.

The architecture has been used for standard microcontroller designs for some time. Today, more and more leading semiconductor manufacturers have used the robust ARM core as the basis for their microcontroller line up.

The common instruction set and integrated on-chip debug functionality enables the re-use of many toolchain components from one design to another. Furthermore, the re-use of software components and toolchain know-how can reduce development times for future projects.

The ARM architecture is a RISC implementation with the following command sentences:

  • With the original arm command sentence all instructions are 32-bit long. Most instructions can be implemented conditionally, avoiding BRAnch jumps associated with IF/THEN/ELSE statements;
  • With the introduction of ARM7TDMI core, the thumb command set was developed based on 16-bit instructions. Thumb instructions are short forms of frequently used 32-bit arm instructions. Although slightly more instructions are needed to write a program, the code size is reduced in practice by about 30-40%;
  • The thumb2 extension supplements thumb with many of the most popular ARM instructions and also enables conditional execution. In addition, the instruction set was optimised for high-level language compilers (C/C++) and common embedded requirements such as bit manipulation and hardware division. In summary, thumb2 combines the arithmetic performance of ARM with the code density of the thumb instruction set.

Some ARM cores have instruction set extensions for DSP algorithms. In addition, some microcontrollers use a floating point co-processor to accelerate floating point arithmetic in accordance with the IEEE754 standard.

Instruction set continuity between both ARM and thumb instruction set enables a unique proposition within the microcontroller industry. A user can qualify and re-use validated software libraries from one project to another within the same toolchain framework.

 
Figure 1: Components of the RealView microcontroller development kit of Keil.

This toolchain re-use can reduce ongoing IT maintenance costs across multiple projects and applications to maximise the company’s investment in software.

Cache: accelerates aggregate memory access speed by storing recently accessed information from slower system memory in a closely coupled RAM. MMU (memory management unit): enables virtual memory and is generally required for platform operating systems such as Windows CE or Linux. MPU (memory protection unit): administers the access to certain storage areas for safety-critical applications. TCM (tightly coup LED memory): memory (RAM, flash) is directly connected with CPU to offer fast access speed.

The success of the ARM architecture has resulted in a wide community of third-party developers who offer solutions for ARM. An overview of these companies can be found through the ARM Connected Community on www.arm.com.

In addition, the architecture is supported through several open-source projects, for example the GNU compiler, GDB debugger and Linux distributions. Some vendors specialise in supporting ARM microcontroller resulting in a complete end-to-end solution for software development. For example:

  • The Embedded Workbench for ARM of IAR supports nearly all ARM cores to program MCUs from almost every manufacturer;
  • The RealView microcontroller development kit of Keil offers derivative-specific support for more than 250 standard microcontrollers and combines the RealView ARM compiler, µVision2 Debugger/IDE and the RTX RTOS Kernel;
  • Many other manufacturers, for example Codesourcery, HITEX, iSYSTEM, Rowley, Raisonance along with new entrants such as Code Red offer solutions for microcontrollers, which use the GNU compiler as their basis. In addition, nearly all microcontroller manufacturers supply economical starter kits, which are usually supplied with a JTAG debugger and evaluation licences for development tools.

 
Figure 2: The real-time library is a collection of middleware components for ARM microcontrollers.

Many ARM microcontrollers integrate an extensive range of peripherals, for example:

  • Ethernet interface for TCP/IP applications;
  • LCD controller for controlling displays;
  • USB device, USB host or USB OTG interface for connecting PC peripherals and consumer devices;
  • CAN controller for motor vehicles and industrial applications;
  • SD/MMC interface for flash memory.

To exploit this extensive range of peripherals, complex software stacks and peripheral drivers are often needed. In addition, the employment of a real-time operating system is essential for many of today’s embedded applications.

With the onset of ARM standard microcontrollers third parties can now provide not only the software, but a software stack that has been optimised for the specific microcontroller peripheral set.

Some manufacturers (for example Segger) specialise in middleware for microcontrollers and offer extensive software solutions. The RealView real-time library from Keil is one example.

By implementing established middleware components the developer can then concentrate on providing the aspect of the application that really differentiates and adds value to their solutions, while reducing the development period.

 
Table 1: ARM cores for microcontrollers. ISA Extensions Memory.

By implementing the ARM architecture throughout their designs, developers benefit not only from a range of cost-effective microcontrollers, but also the extensive support provided by software producers and communities.

ARM continues to develop the core for several semiconductor manufacturers who are focused on the microcontroller market. Offering an extensive variety of microcontrollers that can, in turn, enable a vast array of embedded applications.

The following list gives an overview of the standard microcontroller families available today. This list includes more than 400 different memory variants.

 
Table 2: ARM standard microcontroller families.

Detailed technical parameters can be found on the Device Database on www.keil.com/arm/chips.asp which is being constantly updated.

Related Articles

Hidden semiconductor activity spotted by researchers

Researchers have discovered that the material that a semiconductor chip device is built on,...

3D reflectors help boost data rate in wireless communications

Cornell researchers have developed a semiconductor chip that will enable smaller devices to...

Scientists revolutionise wireless communication with 3D processors

Scientists have developed a method for using semiconductor technology to manufacture processors...


  • All content Copyright © 2024 Westwick-Farrow Pty Ltd