Abundance Of Choice: The range of 8-bit architectures is mind-boggling. One of the oldest is the Intel 8051, available from a variety of sources, including Atmel and Infineon. Unique products are created by adding peripheral support like USB and CAN controllers.
Triscend takes an interesting tack with its E5 processor. It surrounds an 8051 core with reconfigurable peripheral blocks. The Philips XA extends the 8051 architecture into the 16-bit realm, while retaining 8-bit source code compatibility.
Another popular 8-bit architecture is the Microchip PIC. Ubicom's SX has a similar architecture, but the company extended it in subtle ways to differentiate it from Microchip's products. A number of popular alternatives also tend to have a single source, like Atmel's AVR, STMicroelectronics' ST7, NEC's 78K0, Motorola's 68Hxx, Hitachi's H8, and Zilog Z8 product lines.
Matching Peripheral Controllers: In most cases, the processor architecture is an issue when considering existing developer expertise. But peripherals tend to be more important when selecting a product.
Rich Steele, a product marketing engineer at Motorola, gives an excellent example with the ST72141. This ST7-based microcontroller includes a state machine dedicated to motor control. It enables the chip to manage a brushless dc motor that would otherwise need a DSP to handle the necessary computations. The ST7 can't do these computations alone. But with a dedicated peripheral, the 8-bit processor has cycles to spare.
Dedicated communication peripherals that support I2C, CAN, and LIN make distributed microcontrollers practical. However, they're not the only network communication available. Small TCP/IP stacks are commonly available for microcontroller platforms. CMX Micronet runs on a variety of platforms and works with serial and Ethernet interfaces. Web server performance on an 8-bit microcontroller is insufficient to handle hundreds of simultaneous requests. But the performance is more than sufficient to service a couple of Web browsers checking system status or changing the system configuration via a Web page.
On the wireless side, IEEE 802.11b and Bluetooth tend to be overkill for most microcontroller applications, but don't rule them out. More interesting is the 802-15.4, which is designed for 250-kbit/s and 20-kbit/s speeds and very low-power operation.
Ron Cates, Microchip's product marketing manager, also reminds us to consider latency versus steady-state throughput in a design. DMA controllers or other microcontroller peripheral support may provide more than enough horsepower for many applications that would otherwise require a 32-bit processor.
Software Connections: Microcontroller development used to be dedicated to assembly language programmers. But times have changed. Operating systems like those from CMX and Keil Software make more sophisticated application development significantly easier, especially with memory capacities exceeding 64 kbytes.
Higher memory capacities have pushed development to C. Compilers from companies like Keil and Hi-Tech Software deliver code efficiency on a par with top-notch assembler programmers. A higher-level language also makes portability and maintainability much simpler. While C appears to be the way to go, it's not alone. Java and Forth may also be suitable for many embedded applications (see "8-Bit Java," p. 50).
Assembler still has its place in the 8-bit world. Many applications only need a couple of kilobytes of program memory, and even C can be overkill in these environments.
As 8-bit micros expand their influence, so do 16- and 32-bit systems. Most 16-bit microcontrollers are similar to their 8-bit counterparts when it comes to peripherals, although the 16-bit peripherals often have more power. The 16-bit microcontrollers normally provide more memory and higher speeds than 8-bit processors, but at higher costs while consuming more power.
One reason why 32-bit processors haven't posed a threat to 8-bit processors is that peripheral and memory integration wasn't a consideration. Products like NetSilicon's NET+ line marry 32-bit ARM processors with a peripheral complement commonly found on smaller microcontrollers. With higher performance and a larger memory space, these microcontrollers are ideal for network applications that accomplish more than just linking a peripheral to the network.
There seems to be no end to the potential of 8-bit microcontrollers, although competition from the high end will keep 8-bit prices low. The market for 8-bit hardware and software designers is growing, so there may be something small in your future.