Eight 'cogs' in one chip
PARALLAX, represented by R.T. Nollett , has developed its own micro-controller called the Propeller utilising 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 (called Cogs) that work completely autonomously processing controller tasks either individually or in co-operative groups.
Each Cog is clocked at up to 80MHz 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.3V supplies.
Besides 32kB global RAM and 32kB ROM containing character sets, sine wave and log/antilogue tables, each Cog owns 2kB 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 prioritisation among the Cogs. In fact, each Cog can carry out tasks individually, initialise, 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 realised as well.
Each Cog can generate either VGA or composite video so interfacing to small VGA monitor panels or small LCD modules is a breeze. Objects created already include Full Duplex serial UART and many of the high level functions that exist for the Basic Stamp modules have already been developed.
The editor program can be downloaded from www.parallax.com 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 parallel processing is now available in the form of a single device competing with ARM7 and other micro-controllers, delivering enormous computing power combined with a lot of flexibility.