Theory on why the Propeller is not used in the comsumer market
Microcontrolled
Posts: 2,461
After seeing all this talk about the Propeller being denied to the consumer/industrial market I think I have a few reasons why:
Reason 1: The Propeller is a highly versitile chip. It can do video, keyboard, mouse, and a number of other things, all simultaniously. For 8 dollars, this is a deal, right? Now think of consumer products. Can you name one that does all of the above? There are few that do.
Reason 2: The Propeller is not advanced enough to run is something like a smartphone, but too advanced to run in something like a toy. It is not only overkill, but would put a large cost on something usually cheap
Reason 3: Let's face it: this is the big one. There is no current standard language that supports multiprocessor functions, therefore, the Propeller has it's own language that most large companies don't think it worth paying for an education in. Even with the ICC compiler, it's not much.
Any thoughts on this? Do you think the Prop 2 will make this better
Reason 1: The Propeller is a highly versitile chip. It can do video, keyboard, mouse, and a number of other things, all simultaniously. For 8 dollars, this is a deal, right? Now think of consumer products. Can you name one that does all of the above? There are few that do.
Reason 2: The Propeller is not advanced enough to run is something like a smartphone, but too advanced to run in something like a toy. It is not only overkill, but would put a large cost on something usually cheap
Reason 3: Let's face it: this is the big one. There is no current standard language that supports multiprocessor functions, therefore, the Propeller has it's own language that most large companies don't think it worth paying for an education in. Even with the ICC compiler, it's not much.
Any thoughts on this? Do you think the Prop 2 will make this better
Comments
http://www.qualcomm.co.uk/products_services/chipsets/snapdragon.html
The Propeller 2 won't be competitive in that market. Qualcomm is working on a 2 GHz Snapdragon, BTW, and already has two-core devices.
With other ARM chips costing as little as 65c in quantity, the Propeller doesn't stand a chance of succeeding in the low-end market place.
The video capability of the Propeller is unique, but is mainly useful to hobbyists, as the OP has said. A low-cost 8-bit chip is sufficient for many low-end applications and can support all the I/O that is needed.
XMOS has their XC language that supports parallel processing and inter-processor communications, and is doing very well in high-performance embedded systems using multiple processors. Parallax needs something like that for the Propeller 2 if it is to compete in that market.
All those other systems are supported by proven software and hardware tools, and allow in-circuit debugging. JTAG should be provided on the Propeller 2 if it is to be attractive to developers.
As far as I can tell the PICAXE is just a custom programmed PIC chip. One CPU. Any "threads" performed by some software scheduling. That is nothing close to what the Prop has and does with it's 8 separate cores. It has been done with all micro-controllers/micro-processors since there were such things. Not so the Prop way.
Parallax would sooner do business with US than large, soulless companies who might use the Propeller in a washing machine with an LCD display. Parallax is gearing up a "commercial" extension of their existing company to tap those markets, but they do this because they truly love being and working with DIY'ers who build things and write programs.
With that insight, I have come to accept that the Propeller is a gift to me personally, and that Chip had me in mind when he designed it. The Propeller II will likely be the same way.
Thank you Chip for an awesome way to expand my mind.
Thank you Ken for providing so many great ways to get to it.
OBC
It will be interesting to see how Parallax targets the professional market place with the Propeller 2, if they attempt to do that. I think they will have an uphill struggle.
And about the missing debugger: It tells a lot about professionals, when their first question is: where is the debugger! If we could only call back those times, where someone coded over the week and tested on his fathers Apple the weekend. That would drastically reduce the burden to read code, hacked in on the fly!
I think, the success of the propeller is more, that Chip expected. And we are happy, that Parallax is not making money with this chip, we just pay a nominal charge!
When I came back to this hobby, I ran into Chip. His early words were "mission accomplished". OBC is spot on.
If the prop can come down in price a bit, while raising its core clock, plus code encryption, you WILL see many more companies use it.
I think that the industry doesn't use the prop chip for these reasons.
1. no code protect
2. its core clock is a bit low
3. its price is high (prop 1)
4. more pins would allow external ram
I look at the prop as a dsp AND fpga replacement.
To replace both, all 4 things above would need to be addressed.
Parallax could thrust themselves into competition with all dsp/fpga platforms,
if they crammed the prop2 with enough clock speed and extra pins.
Core clock speed takes care of the dsp.
And tons of pins takes care of the fpga.
I can't begin to express how many times my old boss wanted us engineers to come up with a cheap solution to the outdated, expensive and delicate dsp/fpga platform. Not to mention how the dsp/fpga platform requires much more when it comes to support chips and supporting power circuitry.
The prop needs a few .1uf caps and a 3.3v regulator. Easy.
Plus the fact that it can run over such a large voltage range, ulike the dsp/fpga platform.
IF the prop2 can increase pins, increase core clock, have code protect, require little support chips, and keep the price low... the industry will take notice.
Its all about COST DOWN, while maintaining current capabilities.
The fact that the prop has many cores really helps it gain a foot hold against todays DSP's
I mean look at the things people have made with the prop1!
Just think what will be possible with a 160mhz 8 core prop with 64 pins plus memory/high speed communication interface.
Forget debug, thats why we read our code 50 times over, and have scopes.
Even when I had a DSP/FPGA job, I rarely used the debug features,...
I do my debug/troubleshooting by reading the code over and over,
and looking at the schematic over and over, and scoping the pins over and over.
-Phil
I think Chip must be a genius and has done a fantastic job on the Propeller. However there are many other examples of one or a very few people designing processors.
The ARM processor was essentially designed by one person in the early 80's. From wikipedia:
The 6502 was basically Chuck Peddle's baby.
The Rekursiv was not a single chip solution but impressive for a one man design in the mid 80's http://en.wikipedia.org/wiki/Rekursiv
The Rekursiv was very impressive, I remember phoning Harland about it.
How many companies would take on such a project purely for their own use? Last I saw it was GEC-Marconi with their in house Locus 16 computer for radar systems.
The Ariel Atom will never likely be the number one selling car, Rocky's Burger Bar will never likely be the number one fast food franchise, but what does it really matter ?
Sure, everyone dreams of being number one, but there's no necessity for the Propeller to be where some people seem to think it must be, no real problem that it isn't there. It's not as if Parallax's immediate future depends upon that being achieved, no sign of Parallax going broke or Propellers going out of production, no sign of the Propeller market collapsing, so it seems a lot of fretting about nothing. There's no 'failure' that I can see.
Some people may look at the Propeller, turn away from it for any number of reasons ( and we can all imagine our own legitimate reasons why that may be ) and go to somewhere and something else. Parallax could address those concerns but there's no need to nor real reason to feel a need to if the business model is sound, existing customers are happy, the market is stable or growing.
Reading recent posts it feels like Parallax and the Propeller is deemed a failure by some if it's not up on the podium with others, that it's unacceptable being a small fish in a big pond. I don't see that as long as the small fish is getting along just fine.
Perhaps its my political perspective or British nature but it's the taking part not the winning which counts. Not failing is winning. Embrace what you have and let others worry about themselves.
Companies typically build on their own experience. Look at the rest of Parallax's product line. BASIC Stamp for the hobbyist & one-off controller market and educational robots. Chip knew that the SX line was going to die. He also knew he needed something faster and more capable that what he had on hand.
So Chip sat down and thought about his market -the kinds of things they did and what their challenges were. And he realized that non-deterministic behaviour makes interface control more difficult than it should be. The usual way to deal with the problem is to add special hardware, like UARTs, which can operate asynchronously with the main code. But for some applications N of this specialized silicon is not enough, but in most others it sits unused.
But if the microcontroller had multiple general purpose CPUs, then each could be dedicated to to the special function needed for that particular application. Each CPU could be completely deterministic, making interface control much easier.
Of course, Chip had certain limitations to deal with. 32 bit three operand instructions limits the address space to 9 bits for local memory. HUB address space is 64K probably because of the transistor budget. Both of these limits basically eliminated supporting C. Chip needed a tiny language, like BASIC, where the interpreter could fit into less than 512 instructions and supported the features of this chip. Thus SPIN was born.
I still don't agree with this. After spending uncounted hours with MPLAB, Keil, IAR Embedded Workbench, and Code-Red, my favorite two IDEs in the world are still the Proptool and the SX Key. Hands down.
Anything else is clunky, awkward, and slow...designed and implemented by people who were simply putting in time.
I'm stunned by the productivity possible with the Proptool, and I love the colors and shading. They provide code readability that I simply haven't experience in other attempts to exploit color.
They are very much gifts!
On the other hand, addressing the theme of this thread, I have to say that ARM continually blows me away. I have an ever increasing collection of Cortex M3 chips that are kept busy around the clock cranking through massively tedious problems in cryptography.
My current set-up reminds me of the Transputer days when we would have 100+ Transputers chained together working on the same problem. The chief differences are 1) my ARM chips are 1/100 the price of the Transputer, 2) they are 10x faster and, 3) they use but a tiny fraction of the electrical power.
I don't know how anyone manages to compete against ARM cores these days. Hippy's right: We should be happy the Propeller has carved out the modest but solid niche it has.
Welcome back hippy! We missed you.
I don't visit here quite so much anymore (one reason is that we have a pretty interesting election campaign going on here in Australia, which is taking up much of my spare time. Another is that due to the garish color scheme of these forums, I cannot "discretely" browse the forums while I'm at work any more). However, I continue to check in occasionally.
I'm interested to see that this argument is still going on, with all the usual supsects playing all their usual roles (hi Leon!). So I may as well get in on the game and restate my position ...
The point of these discussions is not really about what the Propeller was originally designed for. Obviously Chip had a specific market in mind, and achieved spectacular success in that market. Instead, what gets many us so excited is what the Propeller VERY NEARLY achieves as a result of Chip's brilliance.
Personally, I'd love for my company to be building things with Propellers inside. I love programming them, and I love what they can do. But we all know the reasons why this simply is not possible, so I won't restate them here.
These days I look at the Propeller and mostly just feel frustration that such a unique and wonderful design remains virtually unknown outside these forums. I am also now a bit fearful that by the time it arrives, the Propeller II will suffer much the same fate.
I will continue to play with the Propeller for my own purposes, and I will be interested to see whether the Propeller II comes any closer to achieving mainstream success. My current opinion is that it will come closer (mainly becasue of advances in the hardware) but will again miss out because of a lack of software support.
Ross.
@Heater... Yeah, the new Picaxe uses a multi threading scheme and it could not be even be compared the prop...BUT, it appears to do 4 things at once and that looks like it is rising as a trend. The 18m2 is also their first exclusive chip from PIC. it was made just for them.
I love the prop, but(Like everything in the world) It COULD be better. There is always room for improvement.
P.S i don't know Hippy. I think the goal of winning is what keeps the world going.
I guess we could beat the propeller and every other chip out there to death in comparison debates, but what for? Does the propeller really need to take some of the arduino's* market to be considered successful? (*or insert your other favorite non-Parallax chip there)
For me, I use the Propeller for my projects. I am also playing with a specific Cypress PSoC for a capacitive touch project. I'll leave the other chips to others for whatever reasons they choose, but, I won't bash them for doing so.
Here are some examples of products using them:
http://www.xmos.com/news/3-aug-2010/xmos-customers-build-better-products-faster
The Propeller obviously can't compete in those markets.
Interesting? I've not had to take a sleeping pill for weeks now.
http://www.bbc.co.uk/news/world-asia-pacific-10877774
But no-one here would have seen it.
Humanoido
Has anyone actually got 160 (or 200) MIPS out of one? I don't think that it's possible.
My XTALs are 6.5536 MHz for a clock speed of 104.85 MHz or 26.2 MIPs per core or 209MIPs per Propeller.
That speed is perfectly possible if all cores are, for example, just reading and writing some I/O pins and calculating something internally.
As soon as you need to do anything heavier, like use data in HUB you can divide that by 2 or 4 or so and if you need to execute "big" code divide by more than 4 for LMM or between 10 and 100 for interpreted code.
You are right though, the 20MIPs per cog is totally fictitious for most real world applications.
Humanoido