![]() |
|||||||||||||||
|
| Next Page |
A remarkable commercial phenomenon has been quietly occurring under the noses of industrial electronics OEMs. The price that a mid-tier 8-bit microcontroller (MCU) fetched less than five years ago will now buy you a fully-fledged 32-bit MCU. Such are the brutal economics of the semiconductor industry; it is remarkable that the MCU manufacturers are still able to earn their keep in such circumstances. Colin Weaving, Technical Director, Future Electronics (EMEA) explains. The fact is that MCU companies are selling more units than ever before, they are still making money, they are still expanding their product ranges and indeed the market is still attracting new entrants convinced that they can take market share from the incumbents.
How the 32-bit world is encroaching on the 8-bit market Two large, established MCU manufacturers – Freescale Semiconductor and NXP Semiconductors – act as exemplars of the way the 32-bit MCU is widening its reach. And the two have completely different approaches to users of 8-bit devices. Freescale, one of the world’s top three suppliers of 8-bit MCUs, is agnostic about the 8- and 32-bit question. It recognises that there will always be applications that are best suited to an 8-bit device, and others that an 8-bit device would be totally incapable of running. To support this position they have produced the Flexis™ family of devices. These are a pin- and peripheral-compatible series of 8- and 32-bit devices based on their HCS08 and ColdFire® cores.
![]() Fig.1: The CrossBow Future-Blox system allows code to be tested on 8- and 32-bit MCUs.
Coupled with Future Electronics’ CrossBow Future-Blox development system (see Figure 1) and a common compiler, the designer can now write one piece of code and test it on both processors to evaluate which is the best fit. With these crossover parts, the designer now has easy access to an extensive range of products at both ends of the performance spectrum. Supporting this methodology, Freescale has also made its entry-level ColdFire v1 32-bit processor feel like an 8-bit machine; it has extensions to improve 8-bit operand handling, while the two-stage fetch and execute pipelines give it real 32-bit performance. NXP’s strategy, by contrast, is to give users 32-bit performance at such a competitive price that they will have no reason to design with an 8-bit device. Entry-level devices in the LPC2100 family, for instance, sell for prices similar to many 8-bit MCUs, but can run their processor at 75MHz. They offer at least 8kB of Flash in small 48-pin QFP packages, but still provide the usual array of 8-bit peripherals such as UARTs, ADCs, I2C ports, multiple interrupts and so on. As with the ColdFire parts, the core feels like an 8-bit engine to the user but has sufficient 32-bit features to produce 32-bit performance. NXP, therefore, aims to offer the best of both worlds: high performance and a low price.
Loyalty to the 8-bit MCU So why have existing 8-bit users not migrated en masse to lowcost 32-bit parts? Experience with Future’s broad customer base shows that there are four basic reasons to stick with an 8-bit MCU:
Interestingly, the 32-bit MCU manufacturers can claim to have an answer to every one of these arguments. First, they would say it is true that companies with products that evolve slowly often find it sensible not to re-invent the wheel and take the risk of designing with a new architecture. But this argument carries its own risk; rigid adherence to the status quo can mean missing out on new market and business opportunities; and by using Future’s CrossBow development board running Freescale’s Flexis devices, the comparison between 8- and 32-bit architectures is easier and quicker than ever before. In terms of power consumption, the case for 8-bit efficiency is not nearly as clear-cut as a comparison of processor core current drain figures would suggest. This is because total device power consumption is the sum of I/O drive current, core current and peripheral current. In reality, I/O current for both 8- and 32-bit MCUs will be more or less the same as they will both be driving the same I/O. Current consumption for the core of an ARM Cortex™ or a Freescale MCF51QE 32-bit part is given as about 0.5mA per megahertz, which approximates 8-bit power consumption. Often a 32-bit machine can be run slower than an 8-bit machine to deliver the same performance. This means that core power consumption will often be similar in practice. So are 32-bit MCUs more complex and difficult to code? The traditional view is that 32-bit processors come with baggage such as cache handling, multi-stage pipelines, and memory management units. In fact, the low-cost 32-bit MCUs have had features stripped out to allow them to meet tight price points, so they are not as complex as their high-end cousins. Manufacturers have also worked hard to make them easy to work with. So, for instance, the ARM Cortex (from STMicroelectronics) has a three-stage pipeline with branch prediction. The effect is to enable the CPU to process more than one instruction per clock, but the workings are effectively hidden from the programmer, so the perceived complexity is low. Perhaps the most compelling argument in favour of the 8-bit device is the hard real-time performance. 8-bit suppliers would claim that an 8-bit MCU running a tight loop, hand-coded in Assembler, is the way to achieve the best real-time performance. But very few applications require extreme real-time performance. The latest ARM Cortex device from STMicroelectronics claims an interrupt latency of 6 clock cycles (inter-interrupt), with better than one instruction per clock. This puts 32-bit MCUs safely in the real-time domain.
The 8-bit fights back So what are the 8-bit suppliers doing to counter these arguments? Some manufacturers are beginning to equip 8-bit MCUs with features normally only found in 32-bit devices, such as Ethernet MACs and in-circuit emulation sub-systems. Clocking rates have also been increased to provide higher performance than could previously have been expected from an 8-bit device. The Freescale HCS08-based MC9S08QE128, for instance, runs at 50MHz. Furthermore, 8-bit parts are starting to break free of an old restriction: their inability to offer more than 64kB of address space. As an example, in the MC9S08QE128, Freescale has for the first time integrated 128kB of programme memory on an 8-bit MCU. This approach is expected to continue; by offering more peripherals, more memory and higher clock speeds, suppliers hope that 8-bit users will take the seemingly low-risk option of sticking with their current architecture, as well as its limitations.
![]() Fig.2: PSoC devices allow dynamic reconfiguration of peripheral sets.
Some of the newer entrants into the market are taking a revolutionary (as opposed to an evolutionary) approach. For example, Cypress Semiconductor, with its 8-bit PSoC® family, does away with the concept of fixed peripherals. PSoC devices contain an 8-bit processor core with programmable digital and analogue building blocks. These blocks allow the user to dynamically reconfigure their own peripheral set on the fly (see Figure 2), a fascinating alternative to the high-powered but fixed peripheral set offered by the lowcost 32-bit MCUs. Supported by a C-friendly core and excellent design tools, PSoC gives the user the ability to address multiple product specifications with a single part or family of parts.
Is there a successor to the 8-bit MCU in sight? It seems likely that in the medium term, the 8-bit MCU will survive and thrive. In fact, product designers now benefit from an unprecedented choice of products as the 8- and 32-bit worlds fight it out for market dominance. It will certainly be interesting to look back in ten years to see if the wellknown 8-bit suppliers of today are still producing their traditional core products, or whether another architecture – one of the 32-bit machines above or their respective successors – will have become a universal microcontroller.
|
![]()
|