Parallax Propeller
From Wikipedia, the free encyclopedia
The Parallax Propeller is a 32bit multiprocessor microcontroller with 8 CPU cores. It was introduced in 2006 and has a unique architecture[1].
Each of the eight 32bit cores (known as COGs) has an elementary ALU (divide assembler instructions are not available at this time) and each core has access to 512 "long words" of instructions and data. Self-modifying code is possible. Access to the 32kb memory and to the pins of the 32bit PortA is controlled in round-robin fashion by an internal bus controller called the Hub. The Hub is a fixed feature of the chip.
The initial release runs at clock speed from 32KHz up to 80 MHz, and when running at 80MHz, the proprietary interpreted Spin computer language executes approximately 80.000 instruction-tokens per seconds on each core, giving 8 times 80.000 for 640.000 high level instructions per second. Most Low-level machine-language instructions take 4 clock-cycles to execute, resulting in 20MIPS per COG, or 160MIPS in total for all 8 COGs.
The initial packaging of the chip provided one 32 bit port in a 40pin 0.6" DIP chip. Each of the 8 cores could access the 32bit port A in turn, (though generally a core handling serial UART duties would need only 2 or 3 of the pins for Rx, Tx, and possibly handshaking duties) and another core with another task would be assigned several more pins, and so on. It is always possible for each core to access all 32 pins 20 million times a second if need be.
This design choice makes the implementation of "virtual I/O devices" easy. For example, in the "Hydra Console", (a computer system designed for developing video games for by hobbyists) this feature is used to generate a simple virtual Video display generator purely in software.
Further developments planned for the packaging of the initial silicon version are a second 32bit port, and various surface mount packagings.
Follow on silicon versions will execute SPIN instructions in a single clock cycle, permit higher clock rates, and may include additional 32bit cores. Sixteen are possible.
[edit] External links
Propeller Page at Parallax Inc: [2]