Shop OBEX P1 Docs P2 Docs Learn Events
The propeller can only grow from here — Parallax Forums

The propeller can only grow from here

SONIC the HedgehogSONIC the Hedgehog Posts: 321
edited 2012-02-11 22:05 in Propeller 1
So to my understanding parallax introduced the world to the propeller in 2006. But what has been done with it? This chip is absolutely amazing! I praise the engineers and the brains behind this and the genius of a president who had the guts to set a new standard. If you compare it to the average CPU in a computer, it's not as fast not as powerful. Well, it may be small, but with eight cores at 20 MIPS, you could finish a program faster with much more precision then a tradition CPU. In fact mom spent some 560 dollars on a computer that had a four core CPU. I saw the eight core parallax propeller at fry's electronics for 12.99. I've heard of the new propeller 2 and I believe that it will be even more powerful and features look amazing. I think that parallax can't go wrong with this, but only get better, and raise the bar for other competitors in the microprocessor department. But what dos propeller two mean for propeller one? I say more opportunities. When Sega released the genesis, they chose the mc680000. So what does that have to do with this? Well, the predecessor to sega's genesis was the master system. So what. Well we know that the Z80 was at the heart of the master system, but wasn't enough to compete. So out comes genesis. The catch here is that the genesis also included the Z80. My point? Well, the propeller 2 spells good new for the propeller 1. Why? I believe that a whole new host of embedded systems can be created with complex, yet easily manageable architecture. I have strong belief the propeller would indeed survive as a micro computer system, using both versions of the propeller chip, making the overal system size manageable, and very easy to keep up with. The bottom line, I think the propeller chip deserves to be at the heart of a commercially available micro computer. The architecture removes the need for large, and very processor demanding programs and solutions with eight cores, providing the opportunity for a true, muiltitasking system!!!!
I have a dream to at least one day make a prototype of this system, and in all honesty, I don't care where it goes, I would just like to see this happen.
So, who agree and disagrees?
«13456

Comments

  • KyeKye Posts: 2,200
    edited 2012-01-21 06:38
    Parallax needs to get on having some good tools for the chip. Lack of good tools has been a big problem.

    The chip is good otherwise.
  • SONIC the HedgehogSONIC the Hedgehog Posts: 321
    edited 2012-01-21 06:50
    I both agree and disagree. When it comes to programming things like windows and directX, it's pretty easy to find the help, but hard to find things that parallax has already granted us. Tale for example the Spin IDE. That was free and is throughly explained and came with data sheets, but I can't even find free version of Windows Visual C++ 2005 express. I just think that the chip is overall under looked. People don't compare to CPUs nowadays because they don't think of it as one. In fact my dad was astounded when I told him you could generate video signals with the propeller. In terms of tools they do really only supply the IDE and data sheet. But that is free, and of you subscribe to Microsofts official XB360 dev kit, all you get is the IDE, and you are expected to know everything else.
  • SONIC the HedgehogSONIC the Hedgehog Posts: 321
    edited 2012-01-21 06:53
    I also noticed that even when computers first came out back in the 80s, they told you everything about how their computer operates, and how you could even modify it, and learn to easily use it. I believe as computer systems grow the companies are keeping everything secret just because they don't want any competition from platforms that are based off of their own system.
  • BigFootBigFoot Posts: 259
    edited 2012-01-21 11:18
    I agree with Kye, the Prop1 is a great chip for certain applications but the tools are lacking. Hopefully
    Parallax will address this when they release the Prop II.
  • SONIC the HedgehogSONIC the Hedgehog Posts: 321
    edited 2012-01-21 11:45
    There really aren't many tools, but that doesn't exactly hold it back. One easy to use all around tool can be efficient than hundreds of complex tools. I think that with the prop 1 though that it was mainly for learning/simplicity in projects. And there is nothing wrong with that, but I think more tools would be helpful at times.
  • localrogerlocalroger Posts: 3,452
    edited 2012-01-21 14:12
    The OBEX was an attempt to crowdsource some of the tools that would be needed to use the Propeller. It's been kindasorta successful; I've certainly gotten lots of code off of it, but I've also had to modify nearly everything for particular needs. Code that lives in small memory or needs cycle by cycle timing doesn't tend to be very flexible.

    The design of the chip is beyond brilliant. It was the ability to generate video in software that sucked me into Propellerland, and not as in X--- land sorta kind yeah you can do it but it was an original design goal that influenced the whole instruction set. I've done some programming for the Atari 2600 Stella chipset, using a standard 6502 CPU and doing the video stuff in software, and it's a much bigger pain because the cycle counts for instructions vary. The Propeller was very obviously designed from the ground up to do video in software, and at a farily low clock rate compared to the video bit rate.

    And putting in eight cores EACH of which can do video in software -- well where else do you find that for eight dollars?
  • SONIC the HedgehogSONIC the Hedgehog Posts: 321
    edited 2012-01-21 18:43
    Exactly. I havent worked with Stella hardware, but I have woeked with atari 800 and some sega hardware. That fact that it has eight ecores each with video, plus a clock rate of 80 mHz and 2k ram per cog. From what I hear also the prop is based off of an RISC or something but I don't if this true. The prop and a single 32k EEPROM is enough by itself to emulate a sega Saturn, which is something actual desktops can barely do. That's why I think the prop would make an excelent server or a business computer or even a gaming computer that requires many variables and methods and objects to be kept track of.
  • CircuitsoftCircuitsoft Posts: 1,166
    edited 2012-01-21 19:30
    Problem is, the Sega Saturn used a non-polygon-based 3D accelerator. That's why desktops struggle to emulate it. Look up "nVidia NV1" on Wikipedia. Prop would be even worse, though the Prop II may be better.
  • SONIC the HedgehogSONIC the Hedgehog Posts: 321
    edited 2012-01-21 19:37
    No actually it does use polygons. I actually have read a PDF and official sega documents on generating polygons. It uses quads instead of triangles, but my point is that Saturn had two CPUs two GPUs and even multiple audio processors. I'm saying that each cog could b as functional as ine. I understand it wouldn't work exactly the same because the prop isn't anspecialized chip. The prop is great multi processing system and that's why it would make a great computer or game system because it could truly multi task.
  • CircuitsoftCircuitsoft Posts: 1,166
    edited 2012-01-22 00:06
    I guess I rather thought it used Quadratic Surfaces.
  • RossHRossH Posts: 5,512
    edited 2012-01-22 00:34
    Kye wrote: »
    Parallax needs to get on having some good tools for the chip. Lack of good tools has been a big problem.

    The chip is good otherwise.

    Well, I guess I should disagree here on behalf of all the many tool builders in these forums :)

    There have in fact been some amazing tools built for the Propeller (and before anyone thinks I am taking Kye's comment as a personal affront, I am excluding Catalina, which is after all a fairly pedestrian port of a fairly pedestrian C compiler - I am actually thinking of tools like Hanno's ViewPort and Brad's BST. PropForth is another one. And of course the various Basic compilers. Even Kye himself has contributed some really amazing OBEX components).

    The trouble is that Parallax has not gotten behind any of these tools - the way other chip manufacturers do as a matter of course. In fact Parallax still doesn't seem to see the connection between good software tools and increased chip sales. Parallax Semiconductor appears to be a bust so far, and the rate of release of the "gold standard" OBEX components is glacial to say the least. And also (to saddle up my own latest hobbyhorse for a minute) none of these "gold standard" OBEX components are any use at all from the plethora of other languages now available on the Propeller - because there is no standard for how such components should be integrated and used!

    No wonder that the general consensus of opinion about the Propeller chip seems to be that "the chip is good" but no-one in the commercial or industrial sphere actually uses it for much (I'm excluding us dedicated fans here in the forums of course - I doubt if our combined chip purchases will keep the wolf from Parallax's door).

    Parallax had to have their head battered against the wall repeatedly about the absolute necessity of a C compiler, and here we are 5 years after the Prop 1 was first released with (1) a discontinued and unsupported commercial C compiler, (2) a home-brewed C compiler built by a fan; and (3) a very immature alpha port of GCC!

    After five years! The next generation of the Propeller is nearing release, and the first one has never reached its full potential because of a lack of understanding that software is just as important to a chip's success as hardware!

    Ross.
  • SONIC the HedgehogSONIC the Hedgehog Posts: 321
    edited 2012-01-22 06:03
    I'm pretty sure that it just depends on how the programmer decides to program.
  • SONIC the HedgehogSONIC the Hedgehog Posts: 321
    edited 2012-01-22 06:21
    I disagree with that. I agree about the amazing tools, but the Commodore 64 was the best selling PC to date, and it ran a basic that was not at all alike the coco or the atari800. It's not the languages, because the amiga also didn't run C++ but that was a major seller. In fact if anything SPIN will propel(get it?) the Propeller chip further because of what no other language can do for this microprocessor. This has alot of potential, and if you brought the clock up to say 1.8gHz and boosted the ram to 50mb then it could easily enter the market as a micro computer. And besides that have you ever heard of partions? If you want a Mac, but want windows make a partion? If you want C and a propeller make a partion. This is obviously easier said then done, but still. Video games came from one guy who proposed an idea and was actually not agreed with. They didn't think it would be successful. Parallax can still be the underdog and win, because not even an i7 is an eight core processor. Tpain once said,"It's not hardcore, unless it's hexicore." well the Propeller is eight core, so what now? It is true that yes software is just as important as hardware, and it is. But understand that Intel and Nvidia and AMD and Mircosoft and Sony and all those hardware/software companies have is teams. Nvidias graphics cards, intel's CPUs, Sony's PS3s, all of them were made by a team who fully understands what exactly the hardware is capable of and exactly how it operates and can easily give it tool. One man create the propeller and built it with the help of another. Two people can't build drivers every month. Two people can bring out new generations every year, and the fact that tell us how the prop works, well that's awesome and old school. The Commodore, the COCO, the Atari 800 computers, all of then came packaged with manuals that described exactly how the computer operates, it's circuitry and even every command In syntax detail. That's why homebrew for those still exist because it's easy and understandable to make good games. For the PS3 and XB360 it's expensive to buy dev kits and I'm sure they don't tell you much. That's why you don't see to many indie games that are downright spectacular. Or games like MW3 cheaper. Because no one else could mamke that game and you are willing to pay that money. But the wolf won't come bitting at the door, I will assure you that.
  • Dave HeinDave Hein Posts: 6,347
    edited 2012-01-22 07:25
    I've never heard of a "partion". What is that? I googled it and the Urban Dictionary says that its a part of a portion, like a slice of pizza. Did you mean partition?

    I disagree that the Spin language will propel the Propeller. I think Spin has held the Propeller back from being more widely accepted. I have studied the Spin language in detail, and have written a simulator that executes Spin bytecodes. However, I am hesitant to do a lot of programming in Spin because it is a proprietary language. Any effort I put into writing Spin code cannot be used on other processors or run on a PC, Mac or Linux system. This is part of the reason I wrote spinsim, so I could run Spin code on a PC.

    Spin has some nice features for beginners, but it also contains a lot of features that are confusing to beginners, and even some experienced programmers. In retrospect, I think it would have been much better to have released the Prop with a PBasic language for beginning programmers and programmers that wanted to upgrade from the Stamp to the Prop. Some of the features of Spin are too complicated for a lot of people that only know how to program the Stamp.

    If Parallax wanted a more advanced language for the Prop at the beginning they should have used a subset of the C++ syntax for Spin. This would make it a lot easier for Spin programmers to transition to C/C++, which is a more advanced and widely accepted language. Spin is close to being a subset of C++, but the slight differences in syntax causes problems.

    PropGCC will provide the path for growth for the Prop, and the Prop 2 will get a lot of attention from developers who are currently using other solutions.

    Dave
  • SONIC the HedgehogSONIC the Hedgehog Posts: 321
    edited 2012-01-22 07:32
    First of all, a partion is when you take a part of your Mac or Windows or whatever operating system of computer and install a different operating system in the hard drive. Second I wold like to see a C++ because I've been working with that longer and agree some of the operators are confusing, but it has alot in common with C++. I think C++ would further expandmthe Propeller, but spin is a great. I think that parallax might to something about this, and that would make the propeller even more successful. But I think spin does deseve some respect because you can't exactly bring out the multiprocessing abilities of the Propeller, so if you did port the C++ to the propeller, you would still have to modify it unless you wanted just one cog.
  • Dave HeinDave Hein Posts: 6,347
    edited 2012-01-22 07:52
    I respect the effort that Chip and others at Parallax did to develop Spin. The development effort they did on the Spin VM and tools was is very impressive.

    The belief that only Spin can bring out the multiprocessing abilities of the Prop is incorrect. Almost any language can support functions that do cognew, coginit, lockset, etc. GCC is able to convert these directly into assembly instructions.

    One advantage of Spin is it's VM that executes bytecodes that are very compact. However, it would have been possible to develop a register-based VM instead of a stack-based VM that would work well with C/C++ and would also use compact bytecodes. In fact, this is how the ZOG C/C++ compiler works.
  • Mike GreenMike Green Posts: 23,101
    edited 2012-01-22 07:55
    The word is partition. Look it up in a dictionary.

    C++ has many pieces and some of them are very very expensive in terms of resources used, both memory and speed. That's why there really aren't any full C++ implementations used for microcontrollers. You'll see some partial implementations like for the Arduino.
  • Dave HeinDave Hein Posts: 6,347
    edited 2012-01-22 08:05
    Mike Green wrote: »
    C++ has many pieces and some of them are very very expensive in terms of resources used, both memory and speed. That's why there really aren't any full C++ implementations used for microcontrollers. You'll see some partial implementations like for the Arduino.
    Mike, that's why I suggested that Spin should have used a subset of C++, but the same syntax as C++.

    BTW, I looked at the details of ZOG and it looks like its VM is also stack-based. I was wrong in thinking that it used registers.
  • SONIC the HedgehogSONIC the Hedgehog Posts: 321
    edited 2012-01-22 08:05
    Partition! That's what I meant, by all I'm saying is, C++ would still have to be modified in order to get a port of it on the Propeller. Since y already have ZOG C++ or whatever, you might as well boost the ROM up to 2mb and put Windows CE on it. Like Mr. Green said there are many parts to C++, but with the way spin already is, you culd simply shift a couple of the operands we are already familiar with.
  • SONIC the HedgehogSONIC the Hedgehog Posts: 321
    edited 2012-01-22 08:10
    Mike, that's why I suggested that Spin should have used a subset of C++, but the same syntax as C++.
    that would a brilliant idea. Spin is easy to learn, but already knowing C++ helps understand it better. Using a subset would make the most sense from a third party developer.
  • SONIC the HedgehogSONIC the Hedgehog Posts: 321
    edited 2012-01-22 08:12
    And as for ZOG C++ I've never seen it so I might have to check I out sometime. Where might i be able to find it?
  • Heater.Heater. Posts: 21,230
    edited 2012-01-22 08:38
    RossH,

    Yep, Prop users have been so desperate for tools that they come up with things
    like, building a Z80 emulation so they can run CP/M on the Prop and hence the
    first C compiler to run on a Prop, BDS C. Or the byte code interpreting system
    Zog so as to be able to use a real GCC C/C++ compiler. Then there are all the BASIC
    Forth and other systems that have grown up.

    What happened in recent years is the massive interest in "open source". Both
    open source software, starting with compilers and open source hardware designs.
    A lot of the success of the Arduino can be put down to it's open source roots.
    You might say that the average user does not care about how open source his
    compiler is, but those who want to contribute to a "community" of like
    minded users are seriously put off by proprietary systems and hence a lot
    of good developers have their fun elsewhere.

    Parallax has been very slow to to realize and/or embrace this open source
    phenomena. Luckily they are now fully behind it with the sponsoring of the GCC
    tool chain and a total rewrite of the Spin compiler as an open source tool in
    the near future.
    ..a very immature alpha port of GCC!

    propgcc may still be in beta but I don't think "very immature" is fair. It has
    handled everything I have thrown at it and performed optimizations I would
    never have imagined. "C code compiled to run in a COG", your kidding me right?

    As ever, C++ is a perfectly fine language for micro-controllers. Stay away from memory and time eating features and it performs as well as C code written to do the same job. In fact it can generate identical code as object oriented code written in C. You only take a hit in C++ overheads if you are doing things that would give you those overheads in C as well.

    I know micro-controller C++ implementations may come with out all the big time standard library features but language wise the Arduino C++ is no "subset".
  • SONIC the HedgehogSONIC the Hedgehog Posts: 321
    edited 2012-01-22 08:45
    That's very interesting. If you can use C++ with this GCC, could you, per say, include other objects using the "#include<file.h>" command?
  • Heater.Heater. Posts: 21,230
    edited 2012-01-22 08:56
    Yes of course #include works as expected in propgcc.

    Also I was just typing this:

    Sonic,

    No, C++ does not need to be modified to use it with the Prop. My Zog system runs
    C++ code on the Prop no problem. Compiled to byte codes and interpreted. A lot
    like the Spin system really.

    The up and coming GCC compiler for the Prop also compiles normal C++ to Prop
    assembler, both real native assembler and LMM executed assembler. Very
    impressive it is to.

    Boosting the ROM to megabytes helps nothing as the RAM from which code is run
    is only 32K and 196K in Prop II (I think). Also remember that executing Prop
    instructions from RAM is at least 4 times slower than running from COG. The Prop
    is a very special micro-controller and will not make a nice general purpose CPU
    compared to those that are designed to be that.

    Any talk of putting WinCE on the Prop will get you onto by ignore list:)

    You can do a google search for "site:forums.parallax.com zog" and I'm sure you
    will find it. I have not done much work on it for a while as there is so much
    going on around here. Be aware that Zog is not a compiler it is just a simple
    byte code interpreter for the instructions of the ZPU processor for which there
    is a GCC taget.
  • SONIC the HedgehogSONIC the Hedgehog Posts: 321
    edited 2012-01-22 09:08
    Ahh I see. And I was joking about the whole WinCE. My only question is how would activate other cogs and place functions into those cogs. And since you can still use include files I would assume it work the same way as the relationship between the top object and regular objects in spin.
  • SONIC the HedgehogSONIC the Hedgehog Posts: 321
    edited 2012-01-22 09:11
    Alright!! Well thanks a bunch, and because of the info you have shared with me the level complete music is going of in my head! Yeah 1:30 time! 59 rings! Ahh chaos emerald!
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2012-01-22 09:38
    Maybe I'm wrong, but I get the sense that the OP wants to get the power of a PC from the Propeller. If I wanted the complexity and performance of a PC, I'd just close this browser and open a C++ compiler. Personally, I love and use the Propeller for two reasons. One, which has been stated is it's accessibly to everyone. Like the computers of the 80's I can get under the hood and understand it. I'm hoping that the release of Prop II will continue this trend while making more features available. Two, is that the limitations provide a challenge to see just how much I can pull together with very little. (These are my reasons, and naturally from the view of a hobbyist.)

    As mentioned there is plenty of software support both buried in these forums as well as the obex. User contributed software is a two-edged sword. While it takes burden of the company to produce, it also adds the potential of complication if something should go wrong with the code in a mission critical operation if Parallax promotes it officially (Gold Standard). Careful care is required here. The only fault I've ever found in Parallax regarding new code is their speed to adopt new developments. (It was more than two years from the release of fsrw to when we saw any official products which used the SD card.) That being said, big companies can't turn on a dime.

    If I wanted am ARM (or some other stronger processor) which could handle C, and run linux where would the fun be in that? I'd just use it to run BST and go back to programming my Propeller. :)

    OBC
  • Heater.Heater. Posts: 21,230
    edited 2012-01-22 09:39
    Sonic,'
    And I was joking about the whole WinCE.

    Excellent:)

    Yes, in fact there is project underway to translate Spin source code into C++. Spin objects become simple C++ classes.

    Starting other cogs from C or C++ is the same, both Catalina and GCC have builtin functions for COGNEW and all the other special Prop features.
  • SONIC the HedgehogSONIC the Hedgehog Posts: 321
    edited 2012-01-22 09:48
    Ahh that's helpful! Thnks a bunch.
    Like the computers of the 80's I can get under the hood and understand it.
    My point exactly. That's half the reason I like the propeller. They tell you everything about it and it is easy to get under the hood. But I think that putting C++ and unix and Linux wuld just be fun. Trying to get the power of PC from the propeller while maintaining a small and somwhat simple architecture can be a challenge, but fun and thats what I want to try and do. Not to sell my end result of an experiment for profit, but just so others can learn, and I cam learn along with challenging my self. I would really like to become a software and hardware engineer when I grow up and I plan on going to collage for it! The propeller is fun and I'm sure it will always stay that way.
    But to heater, the only time I'd ever put any windows on the prop would be for Dreamcast. BAM!
  • SONIC the HedgehogSONIC the Hedgehog Posts: 321
    edited 2012-01-22 09:54
    Also I have another question. If the cognew function stays the same, would I still need an array of longs to use as the address for the class/function I am launching into the cog?
Sign In or Register to comment.