June 11th, 2007

In office chair

Propeller chip

I've just been reading about the Parallax Propeller 8-core microcontroller. I was never a big fan of their BASIC Stamp, but I have to say the Propeller sounds pretty cool, in an eccentric sort of way. The thing has 32K of shared RAM, 2K of local RAM per core, a 32K ROM containing an interpreter for a high-level language called SPIN, and multiple video generators (PAL, NTSC, or VGA). It doesn't have interrupts (the propeller philosophy is to dedicate a core to polling each input device), internal non-volatile memory (the monitor in ROM supports booting from an external i2c EEPROM), or much in the way of peripherals other than the video generators (want a UART or a PWM generator? program one of the cores to emulate one).

One big reservation I have about the Propeller is that it's so different to anything else available in the embedded systems market that if you developed an application for it you'd be locked into the platform with no practical way of porting it to another manufacturer's processors short of starting again from scratch. I also have some doubts about how fast it will be given the round-robin multiplexed fashion in which its cores access main memory. I suspect it will turn out to be excellent for rapid prototyping, one-offs, and hobbyists, but it's unlikely to make a significant dent in ARM, 8051, PIC, etc. sales for medium to high volume applications.