feature article
Subscribe Now

Kicking the CAN with Microchip MIPS

Microchip users, it’s time for your big-boy pants.

The company has launched a new 32-bit chip that tops its range of ubiquitous microcontrollers. It’s got grown-up features that could entice the company’s legions of 8-bit and 16-bit users to move up into the 32-bit world and experience life in the semi-big leagues.

“Thirty-two bits for 5 bucks” could be the headline here, as the new chips combine a 32-bit MIPS M4K core – a processor for real men—with an average price of $5. As usual for Microchip, the device is crammed to overflowing with peripherals and interfaces for most conceivable applications. In this case, the key gee-whiz features are CAN (controller-area network), 10/100 Ethernet, and USB.

There are really multiple chips in the new range, and they come in three flavors: the MX5, MX6, and MX7. The MX5 has CAN, the MX6 has Ethernet, and the MX7 has both. They all have quite a bit of I/O in addition, including USB, 512K of flash, 128K of SRAM, five I2C ports, six UARTs, four SPI interfaces, a bunch of timers, two analog comparators, and more. I like that the USB interfaces can do host mode, device mode, and on-the-go (OTG) mode. OTG is particularly useful because you can do peer-to-peer USB connections instead of going through a PC or USB hub. It turns USB into a convenient high-speed connection between any two devices. 

Recognizing that most of its customers are probably new to Ethernet, Microchip supplies the TCP/IP stack software for free. In fact, you get two stacks (a lightweight version and a more fully featured version), both in source code. Object code would be pointless, since Microchip doesn’t know what operating system you might be using. Same goes for the USB drivers, which can be daunting if you’ve never written USB code before.

Most of these peripherals have shown up on various Microchip chips before, but never in the high-end PIC32 family. As such, the new chips are kinda, sorta compatible with lesser PIC chips, in the sense that the peripherals and their drivers are the same, and (in some cases) the new chips are pin-compatible with some existing chips. That doesn’t mean you can uproot your old 8-bit PIC device and replace it with one of these, but it’s nice that Microchip made the effort to preserve as much compatibility as it could.

MIPS Ahoy!

What sets these processors apart is that they’re based on the he-man MIPS M4K 32-bit processor. That’s a big deal for Microchip, a company that made its name supplying dirt-cheap 8- and 16-bit microcontrollers to the masses. The strategy has worked extremely well for the company, which has moved up the sales charts for years and now ranks among the world’s biggest chip vendors. The only thing it needed was a range-topping 32-bit family, but there was no way to extend the 16-bit architecture to 32 bits.

Cue MIPS, the second most-popular 32-bit architecture after ARM. Although MIPS isn’t binary compatible with Microchip’s other controllers, it does use the same development tools, so it looks the same to programmers. Unless you peek under the hood at the object code, it appears that the 8-, 16-, and 32-bit families are all extension of one another. Nicely done.

Performance-wise, the M4K processor is in the same ballpark as an ARM9, AVR32, or Cortex-M3. In Microchip’s new MX5, MX6, and MX7 devices, the processor runs at 80 MHz. They don’t have floating-point units, but Microchip provides an FP library that does a good job of faking it.

Reality check: Keep in mind that this is pretty much the same RISC processor that was driving Silicon Graphic workstations not so long ago. The special effects in Jurassic Park were rendered with this processor. And now it occupies a small corner of a $5 microcontroller. Awesome.

At around $5 in quantity, these new MXx parts aren’t as cheap as Luminary Micro’s famous “32 bits for a buck,” nor as inexpensive as NXP’s new Cortex-M0 chip. But they’re also faster than either of those chips, and they come with a ton more peripherals. There’s obviously a lot of headroom for growth in the MIPS architecture, so once a Microchip customer makes the jump from a 16-bit PIC to the PIC32 family, it’s clear sailing from then on. Of course, the same could be said for ARM-based chips, and they have even broader software support than MIPS has. Microchip’s new MX5, MX6, and MX7 occupy that hotly contested middle ground where low-end microcontrollers meet high-end 32-bit embedded processors.

Leave a Reply

featured blogs
Aug 17, 2018
If you read my post Who Put the Silicon in Silicon Valley? then you know my conclusion: Let's go with Shockley. He invented the transistor, came here, hired a bunch of young PhDs, and sent them out (by accident, not design) to create the companies, that created the compa...
Aug 16, 2018
All of the little details were squared up when the check-plots came out for "final" review. Those same preliminary files were shared with the fab and assembly units and, of course, the vendors have c...
Aug 15, 2018
VITA 57.4 FMC+ Standard As an ANSI/VITA member, Samtec supports the release of the new ANSI/VITA 57.4-2018 FPGA Mezzanine Card Plus Standard. VITA 57.4, also referred to as FMC+, expands upon the I/O capabilities defined in ANSI/VITA 57.1 FMC by adding two new connectors that...
Aug 14, 2018
I worked at HP in Ft. Collins, Colorado back in the 1970s. It was a heady experience. We were designing and building early, pre-PC desktop computers and we owned the market back then. The division I worked for eventually migrated to 32-bit workstations, chased from the deskto...
Jul 30, 2018
As discussed in part 1 of this blog post, each instance of an Achronix Speedcore eFPGA in your ASIC or SoC design must be configured after the system powers up because Speedcore eFPGAs employ nonvolatile SRAM technology to store its configuration bits. The time required to pr...