Shop OBEX P1 Docs P2 Docs Learn Events
Prop2 features not found on other offerings? — Parallax Forums

Prop2 features not found on other offerings?

Its been a while and I am out of touch with Prop2. Does the Prop2 design have any features NOT found on other offerings? Is the Prop2 a unique set of otherwise readily available features?

The Prop1 was interesting due to its deterministic execution, does the prop2 offer the same?

Personally, I would have been happy with a Prop2 that was identical to Prop1, manufactured on a smaller (22nm/14nm today?) process, just smaller and faster. Any "smaller/faster otherwise the same" design on the table?

Thanks!

«1

Comments

  • Well the single biggest deal for me is quadrature decode. The future is robotics and REAL robots have closed loop feedback systems.
  • jmgjmg Posts: 15,145
    The Prop1 was interesting due to its deterministic execution, does the prop2 offer the same?
    Yes. now 16 COGS, similar rules to P1
    Adds interrupts too, and HUB exec.
    Personally, I would have been happy with a Prop2 that was identical to Prop1, manufactured on a smaller (22nm/14nm today?) process, just smaller and faster. Any "smaller/faster otherwise the same" design on the table?
    Not for 22nm, as the mask costs are enormous.
    P2 is done at an affordable process, but will be significantly faster than P1.
    Its been a while and I am out of touch with Prop2. Does the Prop2 design have any features NOT found on other offerings? Is the Prop2 a unique set of otherwise readily available features?
    Plenty of features not found on other MCUs.
    Streamer & Smart Pin Cells are quite unique, and would need a FPGA to duplicate.

    16 Cores is also quite rare, XMOS is about the only other embedded device close to that, tho some MPUs / ARMS now come in multiple cores.

    Prop2 should pair nicely with boards like Raspberry Pi et al.
  • evanhevanh Posts: 15,187
    edited 2017-01-29 21:15
    The Prop1 was interesting due to its deterministic execution, does the prop2 offer the same?

    The Cogs are still just as deterministic.

    The 16-clock round robin Hub access still exists albeit only on 16-long address spacing. Accessing consecutive longs on incrementing addresses will be 17-clock intervals. Every second long will be 18-clock intervals. More random locations is a little more jittery.

    There is also optional bursting transfer modes (SETQx and RD/WRFAST) for consecutive addresses that can transfer up to a long per clock per Cog. These can provide fast deterministic HubRAM accesses with caveats, one biggie being the data locations must be consecutive addresses.

    SmartPins and Streamers offer new options to do less bit-bashing and therefore less constraints on determinism.
  • cgraceycgracey Posts: 14,133
    I venture to say that what the Prop2 offers that other chips don't is the ability to be easily programmed at a low level (PASM) for exactly precise behavior. The rest of the world seems to consider "implementation" a bygone issue, but counting on libraries to interface to silicon that wasn't intended to be directly programmed by the user doesn't allow one to pivot even one degree off-center. The Prop2, on the other hand, can engage lots of signals on a first-principals basis. It's NOT rich in high-speed licensed protocols, though. And it's not as fast as it could be if it were fabricated in a modern process, like 28nm. It does let you achieve exacting signal behavior at much less effort than an FPGA would require, but it's not as wide-open as an FPGA is in possibilities. It's something between a microcontroller and an FPGA.
  • DavidZemonDavidZemon Posts: 2,973
    edited 2017-01-30 04:33
    cgracey wrote: »
    I venture to say that what the Prop2 offers that other chips don't is the ability to be easily programmed at a low level (PASM) for exactly precise behavior. The rest of the world seems to consider "implementation" a bygone issue, but counting on libraries to interface to silicon that wasn't intended to be directly programmed by the user doesn't allow one to pivot even one degree off-center. The Prop2, on the other hand, can engage lots of signals on a first-principals basis. It's NOT rich in high-speed licensed protocols, though. And it's not as fast as it could be if it were fabricated in a modern process, like 28nm. It does let you achieve exacting signal behavior at much less effort than an FPGA would require, but it's not as wide-open as an FPGA is in possibilities. It's something between a microcontroller and an FPGA.

    That's a really interesting comparison, Chip. Thanks. And to add to that last point of "something between a microcontroller and an FPGA..." that is programmed in PASM/C/C++/Forth/Spin/Basic/JS/Python instead of Verilog. That is cool :D

    --Edited to add JS/Python, since they're surely on their way--
  • evanhevanh Posts: 15,187
    No, not Javascript! :P
  • evanhevanh Posts: 15,187
    edited 2017-01-30 04:50
    evanh wrote: »
    The 16-clock round robin Hub access still exists albeit only on 16-long address spacing. Accessing consecutive longs on incrementing addresses will be 17-clock intervals. Every second long will be 18-clock intervals. More random locations is a little more jittery.

    Actually, Chip, given an ideal timing alignment, what is the shortest turnaround on a plain RDLONG? I'm thinking RDLONG can be notably quicker on the ideal address spacing and a string of WRLONGs might even be able to write every second long and keep up with the hub rotation ... using SETQ would be superior in this case but for wider spacings I see it being useful to know the options.
  • cgraceycgracey Posts: 14,133
    edited 2017-01-30 18:03
    evanh wrote: »
    evanh wrote: »
    The 16-clock round robin Hub access still exists albeit only on 16-long address spacing. Accessing consecutive longs on incrementing addresses will be 17-clock intervals. Every second long will be 18-clock intervals. More random locations is a little more jittery.

    Actually, Chip, given an ideal timing alignment, what is the shortest turnaround on a plain RDLONG? I'm thinking RDLONG can be notably quicker on the ideal address spacing and a string of WRLONGs might even be able to write every second long and keep up with the hub rotation ... using SETQ would be superior in this case but for wider spacings I see it being useful to know the options.

    I think 5 clocks is the fastest a RDLONG can run in. So, maybe if you were to read/write every 11th (16-5) long address, you could get optimal throughput for coordinated writing and reading from separate cogs. WRLONG is a lower-overhead instruction, so RDLONG will be the limiter.
  • evanhevanh Posts: 15,187
    Thanks Chip.
  • RaymanRayman Posts: 13,861
    My favorite thing about P2 is that it's a lot like P1, only much better :)
  • Heater.Heater. Posts: 21,230
    Quite so.

    If 16 cores is not an enormous differentiator between the P2 and most other MCU's I don't know what is.

    The very idea that you can load the thing up with what are effectively 16 totally independent programs with no timing interaction between each other makes building systems much easier. Being able to chop and change software components without any weird side effects is great.

    I know Chip is keen on that down to the metal programming with no OS or libraries and other gunk. Which is great for those that want to get into it.

    But even for those who are not into getting down to such details it's a huge advantage. We can use objects created by those that do:)
  • I have used all sorts of different micro's over the years 8,16 & 32 bit.
    I always find myself using the word "FUN" a lot when describing/using the Propllers 1 & 2 .
    Sometimes I have to go back to the "others" which is a experience I don't enjoy at all.

    My favorite feature is the elegant assembly language. :):)
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2017-01-31 00:47
    Yes, I have to agree with ozpropdev, the Props are FUN, and I love a good assembly language instruction set. MCUs should be capable of being I/O intensive as they are after all designed to control things in the real world, yet most micros these days seem to reply upon a more powerful CPU and all the peripherals they can think of etched into silicon. Many of these are very powerful "CPUs" with peripherals, able to run GUI O/S's but they are not very good real-time real-world "controllers".

    I see the Prop's cogs, not so much as CPUs, but as programmable peripherals which along with the unrestricted access to any pin allows us to shape the silicon to our needs, rather than us being shaped by the silicon. Also, a lot of these other micros are obsolete within a couple of years anyway, they just aren't flexible enough to adapt.
  • ErNaErNa Posts: 1,742
    There are two important questions: What do I do and How do I do it. We raise the first question and very soon we focus on the second. Given normal controllers, the solutions realized are "mainstreamed" and immediately I can compeed with others, showing how brilliant my solution is. The moment you use a propeller, every person can present brilliant solutions. So what?
    Now we are in a new position: we first answer the question: how can I do it, using the propellers unique features, and next: What to do, that others can't and everbody wants? The prop is located in a different class, so should be used to solve different class tasks.
    The play station educates kids to play, the lame station educates kids by playing.
  • JohnR2010JohnR2010 Posts: 431
    edited 2017-01-31 12:37
    Oh it is exciting to see this conversation!! Hopes are rising! Is 2017 the year? Heater hit the nail on the head for me
    Heater. wrote: »
    I know Chip is keen on that down to the metal programming with no OS or libraries and other gunk. Which is great for those that want to get into it.
    But even for those who are not into getting down to such details it's a huge advantage. We can use objects created by those that do:)
    Can anyone comment on the power management of the Prop2. The most enjoyable prop 1 projects I have worked on were extended run battery based projects. It is so rewarding to see them run on batteries as designed over a year later! If we are going to have all that power and the same sleep activity with the ability to switch to internal clock on the fly this could be a game changer. If not hey the Prop 1 knocks this out of the park already!!

  • The P2 also has 512KB of HUB RAM and USB!!!
    What P1 user wouldn't want that !?!

    J
  • Heater.Heater. Posts: 21,230
    Last I heard the P2 was never going to be as low power as the P1. Due to the process technology available.

    The rational being that If you want low power the P1 is not going away. If you want more, faster there is the P2. If you want both, tough, physics does not allow it.

    Things may have changed a bit since the year or two I last saw this discussed. I suspect not by much.
  • jmgjmg Posts: 15,145
    JohnR2010 wrote: »
    Can anyone comment on the power management of the Prop2.

    P2 uses a speed-optimized process, and that means higher static Icc.
    IIRC Chip has mentioned Static Icc targets in ~ 1mA region, rather than some uA.

    That said, there was work done to speed reboot of P2, and it is a static CMOS process, so you could likely do a co-operative power management design, where a small, low power MCU (EFM8SB1 or similar) manages the power envelope and clocks.

    eg Lowering Vcc to some Ram-retention figure (value tbf) will significantly lower Icc, then wakeups to raise Vcc and speed the Clock would be faster than a reboot, and give a sleep-resume type operation.

    It might be possible (with care) to use the Lower Freq Osc in P2, plus a P2 pin, to self-modulate Vcc, but that would likely have a higher Icc than a paired MCU.
  • Are cogs powered down when not in use, or is their clock just stopped, or nothing? If significant, how about smart pins?
  • jmgjmg Posts: 15,145
    Are cogs powered down when not in use, or is their clock just stopped, or nothing? If significant, how about smart pins?
    In CMOS, anything clocking needs power.
    Conventional 'power down' in CMOS is to stop the clock, did you mean also Power Supply Switch elements ?

    I don't think P2 has any Power Supply switch (too hard to emulate in a FPGA for one), but I understand it does have clock region enables ( & enables on things like VCO/PLL).
    Static power is not a function of clock, it is a leakage across the whole device.

    Chip gave frequency values for oscillators / temp recently, don't think I saw Icc values for the Oscillator Cells ?
  • cgraceycgracey Posts: 14,133
    Are cogs powered down when not in use, or is their clock just stopped, or nothing? If significant, how about smart pins?

    At the Verilog level, almost all flops have enables. During synthesis, most of those will wind up being clock-gated. So, if the synthesis tool perceives that a cog-enable signal is a semi-global clock qualifier, it may gate all that cog's clocks with that cog-enable signal. There is no powering-down of silicon sections in this design, though, which is common practice in much higher-density processes. We are probably going to have a quiescent current draw in the 1.8V logic section of about 1mA, just from VDD-to-GND leakage. The I/O pins which run at 3.3V, on the other hand, have leakages of only nano-amps, which are negligible.
  • JohnR2010JohnR2010 Posts: 431
    edited 2017-01-31 22:14
    Heater. wrote: »
    Last I heard the P2 was never going to be as low power as the P1. Due to the process technology available.
    Yea I was thinking that would be the case. I though I read a few years ago the prop 2 would be a 1.3v machine and was hoping some magic power / speed benefit would take place! I'm so out of touch with it I need to start reading up on current specs. I will see if I can find the most recent specs.
    jmg wrote: »
    That said, there was work done to speed reboot of P2, and it is a static CMOS process, so you could likely do a co-operative power management design, where a small, low power MCU (EFM8SB1 or similar) manages the power envelope and clocks.
    That sounds interesting! But a 1mA draw 100% of the time will kill my battery projects (my one year on battery projects anyway). Prop 1 does the job and there are a lot of SoCs out there designed for this so not a problem.

  • jmgjmg Posts: 15,145
    edited 2017-01-31 22:22
    cgracey wrote: »
    There is no powering-down of silicon sections in this design, though, which is common practice in much higher-density processes. We are probably going to have a quiescent current draw in the 1.8V logic section of about 1mA, just from VDD-to-GND leakage.

    Do you have any indications from OnSemi of a RAM retention Vcc-Core voltage ( & expected Icc), and maybe Vcc-Icc point, for Clocking from LF_Osc (20kHz?) .

    How far down in Vcc, did you simulate the LF_Osc ?
    I'd expect the VCO-PLL to not tolerate Vcc changes, but LF_Osc may be able to work over a wider range.
  • rjo__rjo__ Posts: 2,114
    thej wrote: »
    The P2 also has 512KB of HUB RAM and USB!!!
    What P1 user wouldn't want that !?!

    J

    Isn't that 1MB?

  • rjo__ wrote: »
    thej wrote: »
    The P2 also has 512KB of HUB RAM and USB!!!
    What P1 user wouldn't want that !?!

    J

    Isn't that 1MB?
    Some FPGA images may have 1MB but real silicon will have 512kB the last I knew.

  • It's only 1MB on the FPGA, because it happens to be available.
    The target actual silicon size is 512KB.
  • cgraceycgracey Posts: 14,133
    jmg wrote: »
    cgracey wrote: »
    There is no powering-down of silicon sections in this design, though, which is common practice in much higher-density processes. We are probably going to have a quiescent current draw in the 1.8V logic section of about 1mA, just from VDD-to-GND leakage.

    Do you have any indications from OnSemi of a RAM retention Vcc-Core voltage ( & expected Icc), and maybe Vcc-Icc point, for Clocking from LF_Osc (20kHz?) .

    How far down in Vcc, did you simulate the LF_Osc ?
    I'd expect the VCO-PLL to not tolerate Vcc changes, but LF_Osc may be able to work over a wider range.

    I only tested the low-freq OSC at the corner cases. I'm sure it will run down to very low voltages, as it's just a Schmitt-trigger relaxation oscillator.

    I don't know how low VDD can go before the OnSemi static RAMs lose their data. I would think they could go very low, though, as they use 6T SRAM cells.

    It seems reasonable that if you had a means to drop VDD, you could wait around for some turn-back-on event while using the 20KHz RC oscillator mode, before returning VDD to 1.8V.
  • rjo__rjo__ Posts: 2,114
    Roy,

    Thanks. Another reason to get some more P123 boards.

    Rich
  • RaymanRayman Posts: 13,861
    Had to go back to P1 today to improve a FLIR Lepton data capture thing.
    I like the P1, but it's very frustrating to be always running out of cogs or memory or both.
    Working with P2 is very liberating in that regard.
  • Is the "P2 family" still being considered?
Sign In or Register to comment.