10
\$\begingroup\$

How does the Parallax Propeller stack up against other multi core solutions? I just saw an article about the open stomp project that won their design contest. I wanted to see what other people thought of the chip. Any similar, but better products?

How does spin rate?

\$\endgroup\$
6
  • 3
    \$\begingroup\$ How is this not closed as "opinion based"? \$\endgroup\$ – Austin Dec 3 '15 at 17:07
  • \$\begingroup\$ Before this QA site becomes Electrical Engineering it had been called ChipHacker, and this kind of question was welcome. See the history here: meta.electronics.stackexchange.com/questions/586/… \$\endgroup\$ – Daniel Grillo Dec 3 '15 at 17:30
  • \$\begingroup\$ I would prefer some question like this one could be locked instead of closed. Locked with that message: "This question exists because it has historical significance, but it is not considered a good, on-topic question for this site, so please do not use it as evidence that you can ask similar questions here. This question and its answers are frozen and cannot be changed." \$\endgroup\$ – Daniel Grillo Dec 3 '15 at 17:34
  • \$\begingroup\$ When I looked into using this device the popular use case was not to use the parallelism as originally intended. Instead opting for larger easier to develop programs. Actually trying to get it to do the parallel thing took some work finding information and tools, may have even had to make my own tools, not sure where I left that project... \$\endgroup\$ – old_timer Dec 19 '18 at 20:43
  • \$\begingroup\$ One BIG thing to watch out for is the wiring of the VDD and GND lines. Both pins in each pair must be directly connected to one another. If this isn't done (even briefly) then the external crystal/clock input will die (permanently) leaving you with just the (imprecise) internal oscillator for a clock. This isn't a huge issue if the IC is soldered but if it's breadboarded you need to be super-careful. \$\endgroup\$ – Alex Hajnal Dec 19 '18 at 21:16
13
\$\begingroup\$

It does what it does very well. Spin is a nice easy language to get your head around and as an interpreted language, quite efficient with a nice compact bytecode.

Spin is not blazingly fast, but raw PASM is pretty sprightly (50ns instruction cycle).

Having 8 identical cores with a completely deterministic instruction cycle makes for a very versatile little chip. As long as you remember it is a microcontroller and play within its limits, it's an incredibly nice chip to use.

I keep a stack of proto-boards handy for rapid prototypes. The ability to do crash and burn compile/test cycles in a matter of seconds (it takes about 7 seconds to download the absolute largest program into the chip and huge compiles rarely take more than 2 seconds - more often in the hundreds of milliseconds) makes for a very fast turnaround development cycle.

Parallax really concentrates on the beginner market, so along with being a pretty potent little machine, it is very easy for a greenhorn to get working in short order.

Native 32 bit integer math is nice too.

I did not mean that to sound like Parallax products are only suitable for the beginner. The Propeller is a "grown ups" processor with plenty of oomph in the right places, it's just that Parallax provides a lot of hand holding for the beginner to help them get started.

\$\endgroup\$
11
\$\begingroup\$

Big difference to other MCUs is that the propeller has very little hardware add-ons. No I2C, no serial interface, no AD and so on ... oh .. not to forget NO INTERRUPTS. Only a video generator per COG and 2 counters per COG (COG is the name of a core). On the first glance this does not sound very good!

But that's exactly what the 8 COGs are meant for. Instead of adding hardware here and there and offering thousands of different types of microcontrollers for every possibly useful combination, the propeller is designed to do all that in software or get support by external chips that do things much better than the internal circuits.

SPIN supports modular software development by so called Objects. And Parallax supports the developers by offering a internet platform for Object Exchange. So, if you need a chip with 8 serial ports ... pick an object that implements 4 serial prots per COG, use it in 2 COGs and there you are.

I did PIC programming and AVR programming before, but the propeller is so easy to use and you get results much faster than with other controllers. Mainly because the Objects can be used without changes in most cases. Interrupt driven controller software most times needs to be adapted to fit in the own environment.

PS:

Brian stated:

The software is a FREE download on Parallax's web site. You will need to purchase a programmer, such as the PROP PLUG, for a modest price.

That could be missunderstood. You don't have to buy a PROP PLUG. I'm still running my propeller on a breadboard with a non Parallax USB to serial converter. In their documents you can also find a serial interface which only needs some resistors & transistor.

For a start with the propeller you only need: 1. the propeller 2. a interface (serial or USB to serial) THAT'S IT! Very inexpensive. Of course some Objects will not run at that low speed.

Add on: A 5 MHz crystal to get the full 80MHz internal speed generated with PLL. (full speed means the speed given in the spec as max. frequency ;o) A min. 32kByte serial EEPROM to store one program.

Ah ... EEPROM ... another difference to other microcontrollers. The propeller does not have any internal non-volatile memory to store programs on, like FLASH or internal EEPROM. It's booting from external EEPROM -or FRAM- into it's internal RAM. I already damaged AVRs just by programming to often, which I think is very usual when developing programs. This won't happen with the propeller! EEPROM gone? Well .. attach the next one.

\$\endgroup\$
5
\$\begingroup\$

Spin is fast enough to bit-bang serial I/O at 19200 Baud.

There's a large library of routines, mostly I/O drivers, but with a vocal tract synthesis program that sings in 4-part harmony and a variety of video drivers for TV and VGA displays among other things. There's even a floating point library including the usual transcendental functions.

\$\endgroup\$
5
\$\begingroup\$

I agree with Brad Campbell's post above. I started Propeller programming about a year and a half ago and have become a big fan of this MCU.

Here are a couple of additional items.

Speed: DC to 80 MHZ.

The software is a FREE download on Parallax's web site. You will need to purchase a programmer, such as the PROP PLUG, for a modest price.

All the documentation, including numerous tutorials, are also free to download.

Check out Parallax's forum. The design engineers are very active on the forum and very available for help questions.

Parallax also has great customer service.

\$\endgroup\$
4
\$\begingroup\$

You mention other multi core solutions, but do not give any area to compare with.

Any solution can possibly be better depending on what process is. The Propeller has a vast following, with some very knowledgeable people. It has a broad range of functions already found, and some yet to be discovered. The chip has actually surprised the designers in some areas, and that within itself is a huge positive mark.

For most items to be controlled with a micro, it will hand almost any task. It's not the fastest, nor the most expensive, but I find it hard to beat for the price.

\$\endgroup\$
3
\$\begingroup\$

Another multicore option is XMOS - 1600 MIPS from four cores, with eight 100/50 MIPS hardware threads per core. They start at $7.50 for a single-core 400 MIPS QFP device. The (excellent) development tools are free.

Leon

\$\endgroup\$
1
\$\begingroup\$

I know this post is ancient, but I stumbled upon it while searching for something else.

I cannot recommend the Propeller enough. I have learned more about EE using that thing that I have with just about anything else. It's just so versatile.

Plus, one thing to mention is the PASM (assembly language). It has one of the easiest assembly language instruction sets I've ever seen. Being familiar with 6502, I found it easy to learn. And, there are very few instructions. Which sounds like a limitation but it isn't! It just makes it easier and faster to learn.

It's not perfect (what is?) but I found the PASM so much easier to use that I actually prefer it over SPIN.

\$\endgroup\$

Not the answer you're looking for? Browse other questions tagged or ask your own question.