I'd pay $40 for a P2, too. It's a whole different beast from an ARM Cortex. We really are talking apples and oranges. Or maybe lions and oxen. A Cortex M4 is like the ox - it will pull a wagon, but don't expect it to climb trees, bring down wildebeest, or perform tricks on command.
Ever notice the ever changing tide of ARM parts? Designing a long term project around one is an exercise in ERP.
I'm not sure this is very accurate, we first used an LPC2106 ARM7 over 7 years ago. The parts are still available, there are just better choices available now.
In the commercial marketplace, you're going to choose the best option available at the time, and the life cycle of many products is measured in months now. So you are always looking for more features with each new design. There are some niches where change is still slow, but most of those while very high margin are typically also very low volume. One of those niches is the DIY world, but that is a low volume market.
I'd pay $40 for a P2, too. It's a whole different beast from an ARM Cortex. We really are talking apples and oranges. Or maybe lions and oxen. A Cortex M4 is like the ox - it will pull a wagon, but don't expect it to climb trees, bring down wildebeest, or perform tricks on command.
Prop2 + 1MB flash + 1.8vreg vs. 160MHz+ ARM M3 with 512KB flash / 120KB+ ram with 90+ I/O
A low end M0 is reasonably comparable to a Prop1, but is not within light years of a P2.
You have obviously not bothered to read the existing prop2 docs, or you would have realized P2 has built in multipliers, dividers, ADC's, DAC's and much more - including multiple video outputs.
M4's (bare chips) will likely be more expensive than the P2, and faster for floating point (but not 20x+ faster, again read the P2 docs) *HOWEVER* they are single core devices; and P2 has eight cores.
If you don't like the Prop1 and Prop2 - which is of course your right - you are welcome to participate in ARM forums.
Oops, I did get fooled by the Freescale ARM part which is an M0 but has M4 in the part number, got to watch those searches. I'm well acquainted with the NXP line, and its M0 parts come in at around $1 even in small quantities. Ignoring the peripherals (prop gives up cores to emulate them), the low end M0s are the closest equivalent to the Prop core. But then all the ARMs don't need an extra voltage regulator (built in) and have far more memory and run lots faster, include hardware multiplies and more.
The M4s have floating point hardware built in, so they will out perform the Prop software emulation, probably by a factor of 20 or more for the same clock speed. The NXPs M4s have an LCD controller and external memory controller so can easily generate 16 or 24 bit VGA.
So in the pricing game the prop is going to have to find some niche, as it just doesn't compare to the ARM variants available, with new ones being introduced probably monthly or more frequently.
So in the pricing game the prop is going to have to find some niche, as it just doesn't compare to the ARM variants available, with new ones being introduced probably monthly or more frequently.
I would say it is a matter of taste. For the low volume applications I am working on, I prefer the Propeller. It works straight out of the box (tray or tube call them what you want!) is easy to use and saves me a lot of design time. With the OBEX, you don't have to re-invent the wheel. My time is worth much more than a 10$ IC (around 10-20 boards).
I would say it is a matter of taste. For the low volume applications I am working on, I prefer the Propeller. It works straight out of the box (tray or tube call them what you want!) is easy to use and saves me a lot of design time. With the OBEX, you don't have to re-invent the wheel. My time is worth much more than a 10$ IC (around 10-20 boards).
kindly,
Fred
I guess almost everything in OBEX will have to be ported to P2. Maybe this will be an opportunity to organize things better! :-)
I would not pay $40 for a P2 chip, as it would mean that I could not design boards around it that were price competitive.
'Tis a good point. And with the P2 we are more dependent on boards. 50 cents worth of Chinese perf board isn't going to get you there.
A low end M0 is reasonably comparable to a Prop1...
Depends so much on what you're doing. If all eight cogs are keeping busy, perhaps one running a UI in SPIN and the others supporting it in PASM, the P1 buries the M0. OTOH, if you're developing in C and employing a single execution thread, it hardly matters what you use. I've got several tubes of LPC1114 chips for just such contingencies. But in the right application, the P1 is simply brilliant!
We probably will not compete with the ARM based MCUs, though here is some food for thought.
I do have a 12 core MCU of my own design sitting in FPGA that I would love to get out there, it is inspired by the Propeller and Prop2 with an ARM Twist. It has 12 ARMv2 ISA cores with out support for HW interupts, each running in USER and SVC modes (SVC For handling SWIs), and a windowed memory format modeled after the Propeller2 with a couple of custom opcodes for accessing the shared memory allowing a 64-bit read or write with each access window. Though the shared memory is devided into four sections giving four cores access to seperate sections of the shared memory at a time. It also provides 1024 32-bit words of dedicated memory to each core plus a 64 32-bit word shared data/instruction cache that is 8 way associative. The MCU as a whole only has simple GPIO, with the idea of using soft peripherials like the Prop and Prop2. It also has a much simpler implementation of timers than the Prop, though still quite usefull.
I am currently working on extending it to support a per instruction multithreading akin to that provided by the Propeller 2.
The idea is to create something with the alure of the ARM, and the dynamic capability of the Propeller and Prop2.
If i ever get it to a point that Chip would like I will attempt to contact him and see if he is interested in getting the full rites to the design. Being based on the ARMv2 ISA there should not need to be any licensing from ARM LTD. though I have not contacted them to double check on this yet.
Ever notice the ever changing tide of ARM parts? Designing a long term project around one is an exercise in ERP.
One of the chief benefits of the P1 and P2 is shelf life. Their commitment to make the parts available for a long life cycle enables you to design without worrying if the particular A4300XYZABC-4 is available in 6 months.
The shelf life, software peripherals, and the flexibility of the P1 is why I prefer the prop. Although I have only completed a few projects to date each one has had unique requirements that would have forced me to use different uC's or a large number of external chips if I had used something else. Being able to use the same uC has saved a lot of time.
I think you also overestimate the ARM's capability against the P2, the biggest variable is the quality of the programmer; GIGO.
So true, and the clean consistent design of the prop, assembly language, and spin makes programming simpler as well.
... It also provides 1024 32-bit words of dedicated memory to each core plus a 64 32-bit word shared data/instruction cache that is 8 way associative. The MCU as a whole only has simple GPIO, with the idea of using soft peripherials like the Prop and Prop2. It also has a much simpler implementation of timers than the Prop, though still quite usefull....
Such a design is probably too niche to hit critical mass ?
It lacks a full-arm core, and so needs special design software which cannot directly use existing Prop or Arm code bases.
I think there is space for an asymmetric multi core, and a few are being tried, but it is important to consider existing SW base.
eg a Threaded Prop 1, with more COG memory could be (almost 100%?) backward compatible.
A natural choice for the 'big code half' could be ARM, and it could execute in place from QuadSPI Flash
Such a design is probably too niche to hit critical mass ?
It lacks a full-arm core, and so needs special design software which cannot directly use existing Prop or Arm code bases.
I think there is space for an asymmetric multi core, and a few are being tried, but it is important to consider existing SW base.
eg a Threaded Prop 1, with more COG memory could be (almost 100%?) backward compatible.
A natural choice for the 'big code half' could be ARM, and it could execute in place from QuadSPI Flash
Actually it will run much existing user mode ARMv2 software, I am running a home made OS on it that allows running some RISC OS Software, and it has no trouble with the software written for the ARMv2. Now the lack of support for HW interrupts would make porting existing OSes more difficult, though there is still a huge existing code base and many existing developer tools that can be used with my little MCU.
Though I must admit that I am looking forward to the Propeller 2, and I am working on an OS with a simple GUI designed to show off the abilities of the Propeller 2. Though my Propeller 2 emulator is currently running at 0.5MIPS on my 700MHz RISC OS System, and it is emulating a full speed Prop2 (thus it takes 640 times as long as real life to do anything) so things are going slow.
I think that a complete OS with a development sweat for the Propeller 2 that is available at or soon after the launch of the Propeller 2 will be a really good way to show off the capabilities of the Propeller 2 to those that are more familiar with the more traditional MCUs.
Actually it will run much existing user mode ARMv2 software, I am running a home made OS on it that allows running some RISC OS Software, and it has no trouble with the software written for the ARMv2. Now the lack of support for HW interrupts would make porting existing OSes more difficult, though there is still a huge existing code base and many existing developer tools that can be used with my little MCU.
Does that mean there is more memory available, than just this ? It also provides 1024 32-bit words of dedicated memory to each core
Though my Propeller 2 emulator is currently running at 0.5MIPS on my 700MHz RISC OS System, and it is emulating a full speed Prop2 (thus it takes 640 times as long as real life to do anything) so things are going slow.
Sounds cool, does this also have a Prop 1 Simulation mode ?
Actually it will run much existing user mode ARMv2 software, I am running a home made OS on it that allows running some RISC OS Software, and it has no trouble with the software written for the ARMv2. Now the lack of support for HW interrupts would make porting existing OSes more difficult, though there is still a huge existing code base and many existing developer tools that can be used with my little MCU.
Comments
I'm not sure this is very accurate, we first used an LPC2106 ARM7 over 7 years ago. The parts are still available, there are just better choices available now.
In the commercial marketplace, you're going to choose the best option available at the time, and the life cycle of many products is measured in months now. So you are always looking for more features with each new design. There are some niches where change is still slow, but most of those while very high margin are typically also very low volume. One of those niches is the DIY world, but that is a low volume market.
The P1 and P2 chips currently are very niche market, and in order to break into more markets have to be priced aggressively to win design-ins.
I could see paying $40 for a nice dev board - I recently got some M3 and M4 dev boards for around $15.
Prop2 + 1MB flash + 1.8vreg vs. 160MHz+ ARM M3 with 512KB flash / 120KB+ ram with 90+ I/O
A low end M0 is reasonably comparable to a Prop1, but is not within light years of a P2.
You have obviously not bothered to read the existing prop2 docs, or you would have realized P2 has built in multipliers, dividers, ADC's, DAC's and much more - including multiple video outputs.
M4's (bare chips) will likely be more expensive than the P2, and faster for floating point (but not 20x+ faster, again read the P2 docs) *HOWEVER* they are single core devices; and P2 has eight cores.
If you don't like the Prop1 and Prop2 - which is of course your right - you are welcome to participate in ARM forums.
Edit:
A bit of searching on DigiKey, and I found:
$18 http://www.digikey.ca/product-detail/en/MK60FN1M0VMD15/MK60FN1M0VMD15-ND/3743045
Nice single core ARM with LOTS of nice peripherals, 100 I/O, floating point, Ethernet, USB - nice chip, 144 LBGA package
This chip is likely better for some applications than the P2 - however the P2 is more applicable to other applications.
I would say it is a matter of taste. For the low volume applications I am working on, I prefer the Propeller. It works straight out of the box (tray or tube call them what you want!) is easy to use and saves me a lot of design time. With the OBEX, you don't have to re-invent the wheel. My time is worth much more than a 10$ IC (around 10-20 boards).
kindly,
Fred
'Tis a good point. And with the P2 we are more dependent on boards. 50 cents worth of Chinese perf board isn't going to get you there.
Depends so much on what you're doing. If all eight cogs are keeping busy, perhaps one running a UI in SPIN and the others supporting it in PASM, the P1 buries the M0. OTOH, if you're developing in C and employing a single execution thread, it hardly matters what you use. I've got several tubes of LPC1114 chips for just such contingencies. But in the right application, the P1 is simply brilliant!
I do have a 12 core MCU of my own design sitting in FPGA that I would love to get out there, it is inspired by the Propeller and Prop2 with an ARM Twist. It has 12 ARMv2 ISA cores with out support for HW interupts, each running in USER and SVC modes (SVC For handling SWIs), and a windowed memory format modeled after the Propeller2 with a couple of custom opcodes for accessing the shared memory allowing a 64-bit read or write with each access window. Though the shared memory is devided into four sections giving four cores access to seperate sections of the shared memory at a time. It also provides 1024 32-bit words of dedicated memory to each core plus a 64 32-bit word shared data/instruction cache that is 8 way associative. The MCU as a whole only has simple GPIO, with the idea of using soft peripherials like the Prop and Prop2. It also has a much simpler implementation of timers than the Prop, though still quite usefull.
I am currently working on extending it to support a per instruction multithreading akin to that provided by the Propeller 2.
The idea is to create something with the alure of the ARM, and the dynamic capability of the Propeller and Prop2.
If i ever get it to a point that Chip would like I will attempt to contact him and see if he is interested in getting the full rites to the design. Being based on the ARMv2 ISA there should not need to be any licensing from ARM LTD. though I have not contacted them to double check on this yet.
The shelf life, software peripherals, and the flexibility of the P1 is why I prefer the prop. Although I have only completed a few projects to date each one has had unique requirements that would have forced me to use different uC's or a large number of external chips if I had used something else. Being able to use the same uC has saved a lot of time.
So true, and the clean consistent design of the prop, assembly language, and spin makes programming simpler as well.
It lacks a full-arm core, and so needs special design software which cannot directly use existing Prop or Arm code bases.
I think there is space for an asymmetric multi core, and a few are being tried, but it is important to consider existing SW base.
eg a Threaded Prop 1, with more COG memory could be (almost 100%?) backward compatible.
A natural choice for the 'big code half' could be ARM, and it could execute in place from QuadSPI Flash
I think that a complete OS with a development sweat for the Propeller 2 that is available at or soon after the launch of the Propeller 2 will be a really good way to show off the capabilities of the Propeller 2 to those that are more familiar with the more traditional MCUs.
Does that mean there is more memory available, than just this ? It also provides 1024 32-bit words of dedicated memory to each core
Sounds cool, does this also have a Prop 1 Simulation mode ?
No it does not support Propeller 1 emulation as I do not need that because I have real Propeller 1 chips laying around.