Monday, December 8, 2014

The ARM Cortex-A9 Processor - Real World Uses

The ARM® Cortex®-A processor is found in compute-intensive applications.  ARM® Cortex®-A processors run full or rich operating systems such as Linux or UNIX.  I mentioned the ARM® Cortex®-A9 based MPCore in the last blog post.  The ARM® Cortex®-A9 processor processor is highly configurable.

Freescale Semiconductor implements an ARM® Cortex®-A9 processor called the i.MX 6.  Freescale sells the i.MX 6 processor in a lite, single, dual, dual-lite, and quad-core configuration. The i.MX 6 processor is used in critical applications across multiple industries.  These industries include aerospace, medical, and industrial.  i.MX processors can be found in Medical-CT scanners, ultrasound machines, automotive telematic systems, airplane computers, e-readers, and a host of other devices.  The power efficiency characteristics of the i.MX 6 make them attractive for wearables such as eye glasses and watches.

The OrCam, powered by the i.MX 6, is a clip-on wearable designed for users with vision impairments. The OrCam clips-on to a pair of eye glasses and continually scans the user's field of vision, detecting objects, and providing aural feedback via a bone conduction ear piece. For a quick overview of the OrCam, the following video is worth watching

OrCam Powered by Freescale i.MX 6Quad Processor and PMIC

The Kindle Fire HD 6 tablet also has an i.MX 6 processor.  Keep an eye out for wearables, watches, and glasses that have an i.MX 6 processor.

When it comes to development, the i.MX 6 is almost ideal.  The manuals and data sheets for the processor are very long. However; the one time programmable memory locations or eFuses on the i.MX 6 are highly configurable.  eFuses are standard in higher end microprocessors. The eFuses can be read or blown (one-time write to an on-chip memory location) via u-boot or the Freescale manufacturing tool.  They can also be pulled via the Linux sysfs interface.  There are over typically over 100 eFuses on higher end microprocessors.  A few of the important values that are stored in one-time programmable memory (eFuses) include the MAC address, boot configuration parameters, high-assurance boot (HAB) configuration parameters, and master key.  As a side note, many chips have on-chip memory locations that can only be written to one time.  U-boot conveniently supports reading and writing (blowing) the eFuses on many different microprocessors.  U-boot is open source and it supports one-time programmable memory (eFuses or OTP) on ARM®-based processors.  The U-Boot boot loader supports a large number of chip sets; including ARM®, AVR32, Blackfin, MicroBlaze, MIPS, PPC, and x86.

ARM and Cortex are registered trademarks of ARM Limited (or its subsidiaries) in the EU and/or elsewhere. All rights reserved.  ARM and TrustZone are registered trademarks of ARM Limited (or its subsidiaries) in the EU and/or elsewhere. All rights reserved.  ARM and SecurCore are registered trademarks of ARM Limited (or its subsidiaries) in the EU and/or elsewhere. All rights reserved. Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, Kinetis, MagniV, mobileGT, PEG, PowerQUICC, Processor Expert, QorIQ, QorIQ Qonverge, Qorivva, Ready Play, SafeAssure, the SafeAssure logo, StarCore, Symphony, VortiQa, Vybrid and Xtrinsic are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off.

No comments:

Post a Comment