Shop OBEX P1 Docs P2 Docs Learn Events
Next attempt at a board that can hit 340 MHz --> It works! - Page 10 — Parallax Forums

Next attempt at a board that can hit 340 MHz --> It works!

1567810

Comments

  • evanhevanh Posts: 15,260
    edited 2023-11-03 06:55

    @rogloh said:

    @evanh said:
    VGA test is what? A couple of cogs doing very little each. Biggest load is the streamer's hubRAM reads for video output.

    Unless its sourcing the image data from PSRAM perhaps, then more IO current will be apparent at high frequencies...?

    Yep, that is more. Two streamers then. But 25 MHz pixel clock still ain't a lot for 370 MHz sysclock.

  • RaymanRayman Posts: 14,012

    The vga test is just showing image from hub ram. So, only two cogs with light duty. Added serial output so can see how it does without vga connector installed.

    I’m wondering now if new solder paste isn’t as good as was used in older boards… might be a stretch but going to try with old paste next …

  • RaymanRayman Posts: 14,012

    Looks like lead free solder (SAC) has 20% higher thermal conductivity than the leaded solders I use...

  • RaymanRayman Posts: 14,012

    Tried a CMOS oscillator on lowest performing board, no help.
    But, did get the last little syringe of SAC305 lead-free solder from Microcenter. More optimistic about that...

  • RaymanRayman Posts: 14,012
    edited 2023-11-04 16:07

    First lead-free one out of the oven...
    It can do VGA test 345 MHz at room temperature and 360 out of freezer.

    So, not a vast improvement, but likely to meet goals of being able to run MegaYume and NeoYume at room temperature.
    Have to make a few more and see if there's a statistical benefit...

    here is the aforementioned VGA test btw. It would show a static 8bpp VGA image, if had a connector and monitor attached.
    The serial output lets me know if it's alive or locked up. This might be a way for me to cull bad boards before fully populating them...

    Second one does 330 MHz room temp and 350 MHz out of freezer. So, definitely not an obvious gain...
    Think I'm going to try the old lead solder paste again...

  • jmgjmg Posts: 15,149

    @Rayman said:
    Looks like lead free solder (SAC) has 20% higher thermal conductivity than the leaded solders I use...

    Does the solder fully wick thru the via holes ?

  • evanhevanh Posts: 15,260
    edited 2023-11-04 22:24

    @jmg said:
    Does the solder fully wick thru the via holes ?

    I've been pondering the right way to handle that myself. Presumably extra solder is needed. I'm thinking larger via size would be best for guaranteeing the vias do fill.

  • RaymanRayman Posts: 14,012

    I had a hunch that amount of solder wicking through vias was important.
    But now, it all just seems random.
    I want to try the thin stencil again...

    1013 x 315 - 47K
  • @Rayman said:

    I had a hunch that amount of solder wicking through vias was important.
    But now, it all just seems random.

    Once we are operating in the realm of 330-360MHz, what is to say these difference aren't also potentially related to natural process variation amongst P2 chips themselves when manufactured? Can OnSemi guarantee this performance from the P2 without binning them all first if it was originally designed for a target of just 180MHz? Not sure about that one. That being said, a better PCB design/manufacture for mitigating thermal effects should perform better than one that doesn't at the extremes. So, given both of these things can apply, it would probably be hard to tell the difference here unless we identify a standout trend in the results or do further testing until then. I do admire your persistence Rayman. :smile:

  • evanhevanh Posts: 15,260

    Ya, points for hard work!

  • @rogloh said:
    Once we are operating in the realm of 330-360MHz, what is to say these difference aren't also potentially related to natural process variation amongst P2 chips themselves when manufactured? Can OnSemi guarantee this performance from the P2 without binning them all first if it was originally designed for a target of just 180MHz? Not sure about that one. That being said, a better PCB design/manufacture for mitigating thermal effects should perform better than one that doesn't at the extremes. So, given both of these things can apply, it would probably be hard to tell the difference here unless we identify a standout trend in the results or do further testing until then. I do admire your persistence Rayman. :smile:

    That would be the case if we could find EVAL or EDGE boards that can't hit those speeds. From memory I want to say my EVAL starts glitching to major extent at around 370MHz. But we have collectively ran out of guesses as to what the special sauce is. I don't even think the thermals are as big a factor. I have a P2STAMP that gets extremely hot without crashing.


    I hope / vaguely promise the next silly project will not require as much overclock :) NeoYume really needs its 339 MHz to make sure line blitting always finishes in time.

    I still need to work more on the big P1 game. Haven't really done much of anything this past year :( (mostly due to writer's block and re-thinking the story a bunch - of course the hardest part about programming action-adventure games for 32k MCUs...) . The P2 cross-interpreter for that blazes along just fine at 252 MHz (probably can go even lower, but that's what video mode setting ends up with).

    Have also thought about making another emulator. Probably SNES? But that one's a giant mess with all the video modes, so it'd take a lot of time again. I know I can do the audio in one cog (NeoYume and MegaYume need two separate cogs for Z80 and YM26xx), so 3 cogs can be freed for video rendering... tricky to split it like that though.

    Oh well..

  • evanhevanh Posts: 15,260
    edited 2023-11-05 03:06

    How well a program works at temperature depends. Not everything crashes. Cogs will execute reliably in cogRAM at any temperature. It's the hubRAM accesses that get screwed over.

    Ada, you had an extreme demo of this posted on Youtube where the video output got increasingly glitchy as the temperature rose.

  • RaymanRayman Posts: 14,012
    edited 2023-11-06 23:17

    Here's the latest results. Tried thin stencil again...
    2 of 3 are OK. On third (A12), added extra paste under P2, but not clear made a difference.

    A12 was a bit disappointing with NeoYume. Expected it to work.
    It almost does, but USB stops after a second...

    A11 is also troubling. It actually starts MegaYume but dies after ~5 seconds. So, I count that in the short time scale failure and not the long time scale failure that forced air cooling can fix...

    Think I'm going to go with thin stencil, just because needs less rework. Unless further results are worse that here...
    Or, maybe not... None of the three thin stencil ones run NeoYume at room temperature start. Not enough statistics to say for sure, but seems worse than thick stencil...

    480 x 640 - 175K
    1444 x 457 - 168K
  • evanhevanh Posts: 15,260

    Rayman,
    I take it you've got an excess stock of PCBs yet to fill with components. So it'll be a while before you get a new board layout manufactured?

  • RaymanRayman Posts: 14,012

    @evanh Don't think I'm doing a new board design until somebody shows me a 4 layer design that does better than this...

  • Never ending stories of trial and error like this one once again teaches us that it's a bad idea to start with a completely new and unknown design and trying to improve it. It may have multiple faults, so if you fix one you don't know if it's successful or has any effect at all. If there are N variables with M possible states in the worst case you theoretically have to try out all M to the power of N possible combinations until you find the one that works. First it takes forever, second, you don't even know if there is a working state at all. Maybe you did something wrong you haven't noticed and that the one decisive factor is not inside the pool of variables you try.

    There are so many factors...

    • thermal design
    • ground and supply planes
    • number of decoupling caps
    • length of traces
    • number and quality of voltage regulators
    • EMI and crosstalk to sensitive signals (PLL, XI/XO)
    • IC process variations
    • soldering process variations

    You get much more reliable results if you start with a known good design and "reverse-fix" it step by step. If it starts to fail you can be sure that the last thing you changed definitively has an important effect. So I'd take a Parallax EVAL board, put a heatsink on it and power it from a clean DC supply. Check the max clock frequency it can run. Then replace the oscillator with a standard crystal. Does it still run at the max frequency? If yes, remove half of the decoupling caps. And so on...

    It doesn't help to check different things on different boards. If they behave differently you don't know if the P2 chip itself is to blame or the actual modification you applied.

  • RaymanRayman Posts: 14,012

    If the goal were to match the performance of Eval board, you'd definitely want to start from there.
    The goal here is a simpler version that can be built at the hobbyist level and at a much lower price point, but with the ability to at least run MegaYume.
    Aiming for all to run NeoYume, but that might not work out...

    If the Eval board is really going away and not replaced, that might be something I'd look into though.

  • jmgjmg Posts: 15,149

    There are still no columns on the test table for core voltage, and current ?

  • RaymanRayman Posts: 14,012

    I just checked a few and they are all 1.800 +/- .005 V.
    I think they have to be right on, because of the regulator...

    But, I do see some movement when loading. Might be something to check with scope...

  • evanhevanh Posts: 15,260
    edited 2023-11-07 22:20

    @Rayman said:
    @evanh Don't think I'm doing a new board design until somebody shows me a 4 layer design that does better than this...

    Really!? You don't think the almost total lack of thermal spread isn't an issue? It's pretty simple to remove that ring of unused capacitor footprints on the underside.

  • RaymanRayman Posts: 14,012

    @evanh Earlier versions didn't have the capacitors... The capacitors were added to hopefully improve things, doesn't seem to... But, might be useful for some future use...

  • evanhevanh Posts: 15,260

    @Rayman said:
    @evanh Earlier versions didn't have the capacitors...

    Are those usable? They'd be good candidates for testing at high wattage.

  • @Rayman said:
    I just checked a few and they are all 1.800 +/- .005 V.
    I think they have to be right on, because of the regulator...

    But, I do see some movement when loading. Might be something to check with scope...

    If not done already the supply voltages need to be looked at under load and with a scope, yes. Check high frequency noise/spikes too, not just DC levels. Also you can probe at the P2 pin side too after any IR losses with heavy current draw and at the bypass caps which should have reduced some of these spikes. Maybe you'll see a difference between your best and worst performing board for example. Could lead you towards identifying any marginal regulator support components or bypass caps perhaps if you were to see significantly more noise on some pins vs others under the same testing situation...however you are operating near the margins of P2 performance here anyway and ManAtWork is correct. It may be rather difficult to identify a single root cause that is the limit without exhaustive independent variable testing unless it obviously stands out by itself. So far it hasn't or you would have likely already figured it out.

    You probably want to test under heavy load that still works on bad boards vs good boards for comparison so the code doesn't lock up before you probe. You want to look at it under real operating load.

  • RaymanRayman Posts: 14,012

    I’m tempted to replace P2 on bad board with one from Eval board. Might do that…

    Just made a thin stencil board that can hit 360 MHz at room temp. So, looking like stencil thickness and amount of solder under P2 was red herring. Looking like random P2 chip features.

    Still, all the docs say 320 MHz is absolute max freq and these boards all do that.

  • pik33pik33 Posts: 2,352

    P2 on Eval has good cooling and this may enable it to run higher.
    On a p2-EC32 the limit is somewhere about 340 and it is the PSRAM that limits the clock.

  • @evanh said:

    @Rayman said:
    @evanh Don't think I'm doing a new board design until somebody shows me a 4 layer design that does better than this...

    Really!? You don't think the almost total lack of thermal spread isn't an issue?

    I maybe wouldn't actually think that. I think I mentioned it like 3 times, but that tiny P2STAMP board that @knivd sent me works very well, despite not being much larger than the P2 chip itself and having poor cooling as a result. At least it feels like it gets very hot. That one also has pretty noisy power, so hmm? I should maybe get one of those IR thermometers to measure chip temperatures of different boards during operation. Though I never tested max frequency of boards, either. @Rayman can you share the exact test that you use?

  • RaymanRayman Posts: 14,012

    @Wuerfel_21 post #276 has vga test

    MegaYume and NeoYume is recent

    Rogloh test is old but hasn’t changed afaik

  • evanhevanh Posts: 15,260

    @Wuerfel_21 said:
    I maybe wouldn't actually think that. I think I mentioned it like 3 times, but that tiny P2STAMP board that @knivd sent me works very well, despite not being much larger than the P2 chip itself and having poor cooling as a result. At least it feels like it gets very hot. That one also has pretty noisy power, so hmm? I should maybe get one of those IR thermometers to measure chip temperatures of different boards during operation. Though I never tested max frequency of boards, either. @Rayman can you share the exact test that you use?

    I hadn't responded because I wasn't convince it was particularly relevant. The Stamp is a very busy board. I haven't even plugged mine in so can't make too many proclamations but its thermal spread within its surface area possibly allows decent level of emissions from all components. Ie: The whole board radiates at the Prop2's temperature.

  • RaymanRayman Posts: 14,012

    There seems to be two thermal issues…. One takes minutes to happen and so is probably the whole die and board getting hot. This is fixed with forced air.

    The other one is instantaneous and I’m now thinking is inside the chip and board has no affect.

    Btw: some docs seem to imply P2 can run at 105 C at 320 MHz. But I don’t think that is possible with any board…

  • evanhevanh Posts: 15,260

    @Rayman said:
    Btw: some docs seem to imply P2 can run at 105 C at 320 MHz. But I don’t think that is possible with any board…

    It can as long as the die temperature is held to that. Problem is there's no easy way to determine such temperature. At high wattage the thermal gradient will also be high.

Sign In or Register to comment.