To no one’s great surprise, there’s yet another new ARM chip available in the market. This time the perpetrator is Toshiba, and its lyrically named TMPM330FDFG is a new low-cost microcontroller based on the Cortex-M3 processor design.
The new chip marks Toshiba’s first step into the world of ARM Cortex-M3 processors. The company has certainly produced its share of microprocessors and microcontrollers before – probably numbering in the billions by now – but never one based on ARM’s newish low-end architecture. It’s a move designed to broaden Toshiba’s product portfolio and attract a new kind of customer.
The chip itself is both innovative and traditional. The peripheral mix is pretty standard for a 16-bit microcontroller: UART, I2C, timers, counters, analog inputs, and so forth. Its 40-MHz clock rate is quick but unremarkable — what makers of compact cars would call “peppy.” In short, there’s nothing in the new chip that would offend a typical embedded designer.
The only new part (for Toshiba, at least) is the chip’s Cortex-M3 processor core. Toshiba has long been a vendor of MIPS-based processors, and the TMPM330FDFG is the company’s first chip based on arch-rival ARM’s Cortex-M3 processor architecture. It’s also a direct competitor to Toshiba’s own 16-bit designs. This new chip is a milestone as well as a microcontroller.
What’s a Cortex-M3?
For those unfamiliar with ARM’s processor-designation taxonomy, the Cortex M-series is ARM’s low-end processor design. The high-end and midrange designs are – perhaps predictably – called the A and the R. Get it? All M-series processors (and specifically, the M3) use ARM’s “Thumb 2” instruction set, a 16-bit subset of the traditional 32-bit RISC architecture. Slicing the instruction word down to just 16 bits saves memory, although it also obviously limits the repertoire of instructions the chip can decode and execute. Remember, cutting the number of bits in half doesn’t cut the number of opcode combinations in half; it cuts them by a factor of 65,535.
On the plus side, M3 instructions are brief and easily decoded, so even though it takes more M3 instructions to do the same work as “normal” ARM instructions, the overall savings in memory is significant, according to ARM. What’s better, M3-based chips can fetch and execute from 16-bit-wide memory instead of needing a 32-bit path to code. The whole idea is to reduce cost and allow ARM to wedge itself into the lucrative and high-volume market for 16-bit processors. So far it looks like mission accomplished.
Most 32-bit processor families (such as MIPS, PowerPC, x86, 68K, and others) are just that: 32-bit families. None has successfully gone “down market” into the 16-bit realm where sales volumes are much higher but profit margins are slimmer. ARM’s thinking was that if it could scale back its popular 32-bit processor architecture to create a 16-bit derivative, it could capture the hearts and minds of 16-bit designers. Then, when those designers someday moved up-market to 32-bit chips, they’d presumably be predisposed to favor ARM. ARM had to break binary compatibility to do it – the 16-bit instruction set is obviously different from the 32-bit “original” version – but that hasn’t prevented hundreds of embedded designers from dipping a toe into the ARM waters.
Texas: 134, Japan: 1
Small startup Luminary Micro had the distinction of producing the very first M3-based processor a few years ago. That chip put the Texas company on the map, so to speak, while simultaneously launching ARM into the 16-bit marketplace.
Luminary made a splash by announcing its chip would sell for just $1, albeit in large quantities. Even so, that was a killer deal for an ARM processor and, uh, lowered everyone’s expectations for the whole Cortex-M series. None of the subsequent M3-based chips have quite matched the low-water mark of that original bargain basement price, but M3-based chips have certainly been affordable, with most coming in well below $10. Toshiba says its new chip will sell for $6 in 10,000-unit quantities.
Compared to Luminary’s bewildering variety of 134 different M3-based chips, the lone new Toshiba chip offers more flash memory (512 MB compared to 256 MB, maximum, from Luminary) but less SRAM (32 KB versus 64 KB). Clock speeds are in the same ballpark, and, with the same instruction set, performance should be identical, clock-for-clock. Luminary Micro offers Ethernet, USB, PWM (pulse-width modulation), CAN, and IEEE-1588 interfaces on some of its chips, all things the Toshiba part lacks. Both companies offer the usual assortment of UARTs, timers, and A/D converters. What would a microcontroller be without unnecessary timers?
It’s not really fair to compare Toshiba’s lone chip against Luminary Micro’s well-stocked arsenal of assorted devices. With a head start of several years, Luminary’s been able to tweak and fine-tune its product mix to address all manner of embedded applications. Toshiba, for its part, has launched with a fairly generic single chip. That situation won’t last. Given Toshiba’s long history of designing and building microcontrollers, we can expect a full menu of options from the Japanese vendor before long.