Parallax, based in Rocklin, California, previously mainly known as manufacturer of the so-called BasicStamp, a micro-controller system based on PIC controllers from Microchip, has developed its own micro-controller, called the “Propeller” utilizing an architecture that is different in many aspects from other commercially available micro-controllers.
The “Propeller” is based on a completely symmetrical arrangement of eight RISC processors (so-called “Cogs”) that work completely autonomously processing controller tasks either individually or in co-operative groups. Each Cog is clocked at up to 80 MHz delivering a maximum of 20 RISC MIPS (4 cycles per instruction). In addition, there is a sophisticated clock management system which allows for standby operation at less than 10µA at 3.3 V supplies. Besides 32 Kbyte global RAM and 32 Kbyte ROM containing character sets, sine wave and log/antilog tables, each Cog owns 2 Kbytes local RAM, which can be used in different ways depending on the software concept. For object-oriented programming,
Parallax has developed an easy-to-learn programming language called "Spin" which is syntactically similar to the common programming languages. Compiled Spin code stored in the global RAM is executed by an extremely fast interpreter, which is loaded into the local RAM of each Cog under system control. Alternatively, individual Cogs can also execute Assembler code in order to achieve maximum computing performance. Of course, the Propeller Assembler is unique to this platform but has obvious similarities with Z80 Assembler and is therefore easy to learn. In the Propeller chip, there is no prioritization among the Cogs. In fact, each Cog can carry out tasks individually, initialize, start or stop any other Cog. Access to the common data pool (global memory) is made in a time division fashion. The same applies to the 32 I/O pins to which every Cog has access to.
With the support of I/O Assistant Units, it is also possible to generate complex timings for PWM or Sigma-Delta modulation. Hence, besides trivial I/O functions, “soft” D/A and A/D converters can be realized as well. With the Propeller chip, Parallax did not invent parallel processing which has been around for a long time (e.g. Transputers). However, what’s new about the Propeller chip is, that a parallel processing is now available in form of a single device competing with ARM7 and other micro-controllers, delivering enormous computing power combined with a lot of flexibility.
It will be interesting to see whether and when a community will form that will really make the Propeller be an accepted competitor in the micro-controller marketplace. Price: 15 US$ from 1000 pieces, 25 US$ each. The Starter Kit for Propeller including the development tools is available at less than 200 US$.
Andreas Bayer
Model Number | P8X32A |
Package Types | 40-pin DIP, 44-pin LQFP, 44-pin QFN |
Power Requirements | 3.3 volts DC |
External Clock Speed | DC to 80 MHz (4 MHz to 8 MHz with Clock PLL running) |
Internal RC Oscillator | 12 MHz or 20 KHz |
System Clock Speed | DC to 80 MHz |
Global RAM/ROM | 64 K bytes; 32K RAM / 32 K ROM |
Processor RAM | 2 K bytes each |
RAM/ROM Organization | 32 bits (4 bytes or 1 long) |
I/O Pins | 32 |
Current Source/Sink per I/O | 50 mA |
Propeller Spezifikationen |