Skip to content Skip to navigation

Connexions

You are here: Home » Content » Overview of the ARM Embedded Processors from Texas Instruments

Navigation

Recently Viewed

This feature requires Javascript to be enabled.
 

Overview of the ARM Embedded Processors from Texas Instruments

Module by: Miguel Morales. E-mail the authorEdited By: Gene Frantz, Charmaine Cooper Hussain

Summary: This module is a brief overview of ARM architectures from Texas Instruments, including a guide on how to select the ARM architecture that is right for your application and a deep dive into the Stellaris® ARM Cortex-M architecture.

ARM embedded processors – selecting the right one

ARM embedded processors are ubiquitous. With the vast number of ARM-based processors available, selecting the right one for a senior project can seem daunting. This chapter will help you select the right TI ARM processor.

At a high level, ARM embedded processors can be split into three tiers of performance: the Cortex-A, -R and –M series.

ARM Cortex-A microprocessors

  • Highest-performance microprocessors/use external memory.
  • For use with a complex operating system.
  • Applications:
    .
  • Author's note:
    • Use a Cortex-A device if you:
      • Are ready and willing to develop high-complexity software for your application, including running, debugging and compiling high-level operating systems like Windows, Linux or Android.
      • Are using the microprocessor to program a user interface larger than 7 inches, or wish to display any kind of streaming video on any size display.
      • You wish to program a field bus protocol.
    • If you are interested in working with a Cortex-A device from TI, see the BeagleBone website at http://beagleboard.org/bone/.

ARM Cortex-R microcontrollers

  • Medium-performance real-time microcontrollers/use integrated memory.
  • Designed for safety- and life-critical applications with precise real-time requirements.
  • Applications:
  • Author's note:
    • Use a Cortex-R device if you:
      • Are ready and willing to develop medium-complexity software, especially if you are interested in safety-critical embedded software development.
      • Want to develop a real transportation or safety application.
    • If you are interested in working with a Cortex-R device from TI, see the TMS570 microcontroller USB kit website at http://www.ti.com/tool/tmdx570ls20susb.

ARM Cortex-M microcontrollers

  • Lowest-power microcontrollers/use integrated memory.
  • Designed for cost- and power-sensitive applications.
  • Applications:
    .
  • Author's note:
    • Use a Cortex-M device if you:
      • Are interested in the lowest-complexity solution for your application.
      • Can meet the needs of your application with 150 MHz or less and without a multithreaded OS running in the system.
      • Are looking for the smallest, least-expensive or lowest-power ARM device.
    • If you are interested in working with a Cortex-M device from TI, visit the Stellaris® LaunchPad™ development tool website at http://www.ti.com/stellaris-launchpad.

TI's ARM-based platforms (as of August 2012) are outlined in Figure 1.

Figure 1
Figure 1 (Picture 0.jpg)

Stellaris microcontrollers. Offering performance up to 80 MHz and a high degree of connectivity and analog integration to the microcontroller markets, Stellaris MCUs are ideal for applications that require memory, analog components and communications interfaces to be on a single chip within a compact package.

Concerto™ microcontrollers. Concerto F28M35x microcontrollers combine TI’s performance C28x™ core and control peripherals with an ARM Cortex-M3 core and connectivity peripherals to deliver a clearly partitioned architecture that supports real-time control and advanced connectivity in a single MCU.

Hercules™ microcontrollers. For high-reliability applications such as transportation, the TMS570 provides DSP-like performance with safety-critical features implemented in hardware to ensure continuous and uninterrupted operation. The TMS570 has a dual-core architecture, with the second core running in lockstep for redundancy and self-checking.

Sitara™ microprocessors. Offering performance up to 1.5 GHz, Sitara ARM MPUs are ideal for applications needing a high-level operating system, wired and wireless network connectivity, concurrent applications, and support for rich graphics with an advanced user interface.

OMAP™ multicore microprocessors. The OMAP platform for digital media processing brings together an ARM core with advanced video acceleration, plus a high-performance C6000™ DSP for applications that need to support real-time video, image and audio data processing. With the ability to provide computationally intensive real-time signal-processing performance, developers can implement complex applications such as video analytics, speech recognition, baseband channel management and power monitoring with a single chip.

Deep dive into Cortex-M – Stellaris ARM Cortex-M4F

Stellaris microcontrollers (MCUs) are 32-bit, RISC-based mixed-signal processors designed specifically for ease of use and connectivity. Common applications include end-equipment in the computing, industrial and smart grid markets.

To get a better idea of what Stellaris MCUs are and how they can be used to solve an application problem, let’s take a look at a typical block diagram for the device. Figure 2 shows the block diagram for the LM4F232H5, one of the LM4F devices.

Figure 2
Figure 2 (graphics1.jpg)

The block diagram provides guidance on the key features of a particular device. Let’s take a closer look at some of the more prominent features. (Most of this section is transcribed from the LM4F232H5QC data sheet, available at http://www.ti.com/lit/gpn/lm4f232h5qc.)

  • Integrated memory:
    • Includes both volatile (RAM) and nonvolatile (flash, EEPROM) memories.
    • EEPROM supports an endurance of up to 500,000 writes.
    • Read-only memory (ROM) includes the software libraries used to program peripherals.
  • Analog:
    • ADC: two 12-bit SAR ADCs, each with up to 12 channels of single- or dual-ended inputs.
    • Comparators: three analog comparators, each with two.
  • Serial communications peripherals – both synchronous and asynchronous:
    • Two controller area network (CAN) 2.0 A/B controllers.
    • USB 2.0 controller, supporting USB On-the-Go, host and device modes.
    • Eight universal asynchronous receiver/transmitter (UART) modules, capable of infrared data (IrDA), 9-bit and ISO 7816 modes.
    • Six inter-integrated circuit (I2C) modules.
    • Four serial peripheral interface (SPI) modules.
  • Motion control:
    • Two PWM modules, with a total of 16 advanced PWM outputs for motion and energy applications.
    • Eight fault inputs to promote low-latency shutdown.
    • Two quadrature encode inputs (QEIs).
  • GPIOs:
    • The 64-LQFP has a maximum of 43 GPIOs; the 100-LQFP package has a maximum of 69 GPIOs; the 144-LQFP has a maximum of 105 GPIOs.
    • All pins have configurable pullup and pulldown resistors.
  • Timers:
    • Systick timer – A 24-bit system timer.
    • Twelve general-purpose timers – each 32 bits, with up to two capture/compare inputs.
    • Two watchdog timers – each 32 bits.
  • Hibernation module (HIB):
    • In HIB mode, power supplies are turned off to the main part of the microcontroller and only the hibernation module circuitry is active. An external wake event or RTC event is required to bring the microcontroller back to run mode.
  • Oscillators:
    • Precision internal oscillator (PIOSC) – on-chip oscillator; operates at 16 MHz ±1 percent at room temperature.
    • Main oscillator (MOSC) – connection for a single-ended clock source to OSC0 or a high-frequency external crystal [5-25 MHz].
    • Hibernation module clock source – connection for a 32.758-kHz oscillator.
  • CPU and debugging capabilities:
    • 80 MHz is the maximum CPU clock speed for the LM4F232.
    • Other core modules:
      • Nested vector interrupt controller (NVIC) – provides programmable interrupt priority and low-latency interrupt handling, including automatic nesting of interrupts.
      • Memory protection unit (MPU) – divides the memory map into a number of regions and defines the location, size, access permissions and memory attributes of each region.
      • Floating-point unit (FPU) – supports single-precision add, subtract, multiply, divide, multiply and accumulate, and square-root operations. It also provides conversions between fixed- and floating-point data formats.
    • Debugging modules:
      • Joint Test Action Group (JTAG) port – an IEEE-standard, four-pin debugging interface used to communicate with the LM4F232 during debugging.
      • Single-wire debugging/test (SWD/T) port – an ARM-standard two-pin debugging port, provided as an alternative to JTAG.
      • Embedded trace module (ETM) – a real-time trace module providing instruction and data tracing of the Cortex-M4F core.
      • Author’s note: Leveraging the ETM requires the use of a nonstandard debugging tool as well as hardware that supports an ETM connection. Although the debugging tools exist, no hardware that supports an ETM connection is available as of September 2012. See www.ti.com/stellaris for any updates on the LM4F kits that are available.

Each of these modules is brought out through pins on a package. In the case of the LM4F232H5QC, the pin diagram is shown in Figure 3. This pin diagram can also be found in the LM4F232H5QC data sheet under the bookmark “Pin Diagram.”

Figure 3
Figure 3 (graphics2.jpg)

This view is helpful because it identifies the necessary connections to the LM4F232, namely the power supply (VDDx, GNDx), the programming/debugging tool connections (TCK, TMS, TDI, TDO) and some of the key peripheral connections (HIB, USB). However, many of the signals, such as the timer capture/compare pins and analog inputs, are not shown. That granularity is provided in the signal tables in the data sheet. An excerpt from the LM4F232H5QC signal tables is shown in Table 1.

graphics3.png

Table 1. Exerpt from the LM4F232H5QC data sheet showing showing part of the signal table.

Using these tables, you can start to map the desired functionality to your design. Figure 4 is a schematic drawing depicting the baseline connections for an LM4F120 design. The LM4F120 and the LM4F232 are actually members of the same device family, so the schematic applies to the part under discussion.

Figure 4
Figure 4 (graphics4.jpg)

Since the LM4F power rail is specified as 3.3 V ± 5 percent, a typical 3.3-V supply will work well. Note the decoupling capacitors on the VDD pins. Signals like WAKE and RESET are connected to user switches that are configured as pullups. A 16-MHz oscillator and 32-kHz oscillator are connected to the MOSC and HIBOSC pins, respectively.

Figure 5 goes one step further to demonstrate an example connection to the debugging, USB and user interface signals.

Figure 5
Figure 5 (graphics5.jpg)

Note the connections to the USB connector and the JTAG signals. Since this is a schematic from the Stellairs LaunchPad evaluation kit, this also includes the connections to a virtual COM port bus that uses UART on Port A pins 0 and 1 to communicate back to the debugging emulator. The schematic also includes the breakout to the pin headers. These other pin connections can be used to connect all other signals.

Now that we have explained the basics of how to include an LM4F device in your system, let’s review the documents you can use to take your design to the next level.

  • Device-specific data sheet (example: LM4F232H5QC data sheet:)
    • The data sheet includes detailed descriptions of the modules, register descriptions, maximum operating conditions, electrical parameters, performance boundaries and package descriptions for each device. Each part number has its own data sheet.
  • Device-specific errata (example: LM4F232H5QC errata:)
    • The errata document is a critical supplement to the data sheet because it lists any bugs that affect the operation of the device, as well as any workarounds. Note that errata vary by revision, so it is important to map the revision of your device to the correct errata document.

Data sheet deep dive

Beyond the pin diagram and signal tables, let’s highlight some other areas you should focus on when you first look at the data sheet.

Boundary and recommended operating conditions

  • Maximum ratings and recommended operating conditions (Table 2):

graphics6.jpg

Table 2. Table from data sheet showing reccomended operating conditions.

The maximum ratings indicate the voltage and current conditions that should not be exceeded, under any condition, without risking damage to the device (Table 3). The recommended operating conditions document the conditions under which the part is guaranteed to operate (Table 4). The minimum and maximum electrical specifications in the data sheet are specified under these conditions.

graphics7.jpg

Table 3. Table in data sheet showing maximum ratings.

graphics8.jpg

Table 4. Recommended operating conditions table from a data sheet.

Power consumption numbers (Table 5):

graphics9.jpg

Table 5. Power consumption data table from a data sheet.

  • Package information that includes package tolerances is useful when creating device footprints in schematic/PCB CAD tools (Figure 6):
Figure 6
Figure 6 (graphics10.jpg)

To select your part, please refer to the series of questions and answers near the end of Section 2.2, "Overview of the MSP430 microcontroller from Texas Instruments," that begins with the question, "What problem am I trying to solve?" You can walk through this process for Stellaris processors just as you can for MSP430 microcontrollers.

There are a variety of LM4F devices that will fit a variety of different needs. Sometimes the easiest way to see whether a device is the right one for your application is to get your hands on an evaluation module. In the case of the LM4F232 family, the Stellaris LaunchPad development tool is the recommended kit.

The Stellaris LaunchPad evaluation kit costs less than $10 and provides a variety of booster packs to extend its functionality (Figure 7). See www.ti.com/stellaris to start your design today.

Figure 7
Figure 7 (graphics11.jpg)

Content actions

Download module as:

PDF | EPUB (?)

What is an EPUB file?

EPUB is an electronic book format that can be read on a variety of mobile devices.

Downloading to a reading device

For detailed instructions on how to download this content's EPUB to your specific device, click the "(?)" link.

| More downloads ...

Add module to:

My Favorites (?)

'My Favorites' is a special kind of lens which you can use to bookmark modules and collections. 'My Favorites' can only be seen by you, and collections saved in 'My Favorites' can remember the last module you were on. You need an account to use 'My Favorites'.

| A lens I own (?)

Definition of a lens

Lenses

A lens is a custom view of the content in the repository. You can think of it as a fancy kind of list that will let you see content through the eyes of organizations and people you trust.

What is in a lens?

Lens makers point to materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

Who can create a lens?

Any individual member, a community, or a respected organization.

What are tags? tag icon

Tags are descriptors added by lens makers to help label content, attaching a vocabulary that is meaningful in the context of the lens.

| External bookmarks