Shop OBEX P1 Docs P2 Docs Learn Events
P2D2 - An open hardware reference design for the P2 CPU - Page 4 — Parallax Forums

P2D2 - An open hardware reference design for the P2 CPU

1246738

Comments

  • jmgjmg Posts: 15,172
    Heater. wrote: »
    My only little point here is that if one is putting out a design, open source, with the expectation that fellow hobbyists can get it built easily, perhaps tweaking and customizing it for their own purposes, then perhaps it's nice to to keep it 2 layer and hence cheap.
    Yes, I agree, 2 layers is certainly a worthwhile target - worth a try.
    Some of this will come down to final PCB loading, & use, as the noise will vary with off board load capacitance / MHz and be more critical in Analog mixed designs.

  • jmgjmg Posts: 15,172
    @heater/JMG: Ok, so cost is a major factor, got it. My understanding was this was to be a reference design for best case design and use of the P2. With that understanding, I was thinking that performance with all that the P2 offers would be a preference over cost. Not debating the design, just trying to explain why my perspective of 4 layers should have no restrictions for this intent.
    I would expect both 4L and 2L boards to be built up, and then the differences can be measured.
    For designs that push mixed analog, and to try to measure the noise floor of the P2, I'd expect low noise linear regulators and 4 layer PCB. (with caps on the rear).
    I am still at a loss at how the discussion implies so much potential heat coming from the chip.
    Chip reported close to 1A, which is going to need attention to keep the die temperature down. When real silicon is here and loaded with real tasks, better thermal data will be available.
    @JMG: The final stencil design we used was a pattern of 9 rectangles equally spaced within the perimeter vias. This gave a wealth of solder paste to fill the center for heat transfer away from the parts, but also decent flow near the vias.
    Was that using blocked vias, or allowing solder into via ?
    What power wattage was the customer trying to handle, out of what size package ?

  • Heater.Heater. Posts: 21,230
    Well, it's OSH, so anyone can take it and add as many layers and square inches of copper as they like, right :)

    Anyway, it's a gorgeous piece of work Peter.


  • WBA ConsultingWBA Consulting Posts: 2,934
    edited 2018-06-26 08:34
    jmg: The vias were open, which is why we tried to avoid them. If the attempts were unsuccessful, the next course of action would have been filled vias. The part has a max of 3.8 watts. You could say the package is similar to a HTSSOP, but larger than a DRV8825PWP. Sorry, NDA on this one so have to stay within the lines of the red tape.

    For those of us who design, make, use, and routinely perform DFMs of everything from 2 layer legacy power supplies to significantly complex 18 layer designs, the comments I make should not be taken negatively or harshly, but as comments to the pool of knowledge here. If taken otherwise or as offensive, well, not much I can help there. Not sure why I have to keep saying this, but I haven't yet said anything meaning to offend anyone nor cause debate over what's right or wrong. Just because certain passions are strong about P2 doesn't mean others can't toss in their 2 cents. We're all here for the same reason; the success of Parallax and their products (or at least so I thought).

    Anyhow, back to the topic, here's a couple more links of worthiness regarding TQFP100 design when thermal pads are involved:
    https://www.nxp.com/docs/en/application-note/AN4388.pdf
    www.ti.com/lit/an/slma002g/slma002g.pdf
  • jmgjmg Posts: 15,172
    jmg: The vias were open, which is why we tried to avoid them. If the attempts were unsuccessful, the next course of action would have been filled vias. The part has a max of 3.8 watts. You could say the package is similar to a HTSSOP, but larger than a DRV8825PWP. Sorry, NDA on this one so have to stay within the lines of the red tape.
    Interesting, gives a useful reference point.

    For those of us who design, make, use, and routinely perform DFMs of everything from 2 layer legacy power supplies to significantly complex 18 layer designs, the comments I make should not be taken negatively or harshly, but as comments to the pool of knowledge here. If taken otherwise or as offensive, well, not much I can help there. Not sure why I have to keep saying this, but I haven't yet said anything meaning to offend anyone nor cause debate over what's right or wrong. Just because certain passions are strong about P2 doesn't mean others can't toss in their 2 cents. We're all here for the same reason; the success of Parallax and their products (or at least so I thought).
    Not sure I'm seeing anyone react negatively or harshly, to your posts, your 4 layer & thermal comments seemed quite valid to me ?

  • Heater.Heater. Posts: 21,230
    Most all comments are valid.

    At the end of the day it comes down to tradeoffs, value judgements and, well, whatever the guy doing the thing wants.
  • jmgjmg Posts: 15,172
    Yanomani wrote: »
    I'm using Kicad (R10571 nightly build) Gerber Viewer.
    As a small heads-up, KiCad has now fixed (R10576) GerbView Octagonal primitive handling, and this is how my test-edit (fixed Top rotate, and adds a hole for fun, because Gerber can do that) displays now in rc-204
    This display now matches the web gerber viewer. The rear layer is original Protel, not fixed, wrong octagonal rotate

    433 x 247 - 26K
  • jmg wrote: »
    As a small heads-up, KiCad has now fixed (R10576) GerbView Octagonal primitive handling, and this is how my test-edit (fixed Top rotate, and adds a hole for fun, because Gerber can do that) displays now in rc-204
    This display now matches the web gerber viewer. The rear layer is original Protel, not fixed, wrong octagonal rotate

    Hi jmg

    Thanks for the heads-up. :smile:

    I'll download and install the new version ASAP.

    Henrique
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2018-06-28 04:07
    I have delayed sending off any artwork as a gerber since I seem to still have trouble with the drill format. I have changed all the large octagons to round pads and changed the castellations to rectanges plus a few other changes. However I can't seem to get any of the gerber viewers to show the drill holes. The DRL file from Protel seems to be a binary format and it seems I need an Excellon text format file instead. I installed Eagle just to have a look at the drill file format it generates with an xln extension and it is certainly a text file with the correct M48 header etc.

    Does anyone know how to get Protel99SE to generate the correct drill file. I think I've tried just about every combination including trying exporting and importing into other programs but even DipTrace which seems to import a PCAD ASCII has the wrong scale as the text is huge and hole sizes seem to be less than 0.1mm!!

    I'm doing this because I am trying to supply gerbers rather than Protel format files, since JCLPCB only take gerbers, and making sure they are correct. The drill information is the only thing lacking.
  • jmgjmg Posts: 15,172
    edited 2018-06-28 04:43
    The DRL file from Protel seems to be a binary format and it seems I need an Excellon text format file instead. .
    Yes, most expect a Excellon Text file,
    KiCad gives this error message attached from that file.
    If you can't 'persuade' protel99 to give an ascii drill file, it may be possible to generate one via kicad ?

    Google finds this - suggests their ASCII drill files are TXT suffix ?
    560 x 273 - 21K
  • The TXT files are not Excellon format though, they do have an M48 on the second line but they don't have any of the other information that an XLN file has. This is the old Protel99SE so it mightn't be up to the right standard. Still a mystery......
  • jmgjmg Posts: 15,172
    edited 2018-06-28 05:03
    The TXT files are not Excellon format though, they do have an M48 on the second line but they don't have any of the other information that an XLN file has. This is the old Protel99SE so it mightn't be up to the right standard. Still a mystery......

    I checked the P2D2F.TXT, and that does look like a drill file, and it does import into GerbView, 'mostly', but it seems to not have enough info to scale correctly - ie comes in at 0,0, and with wrong scale.

    A KiCad Drill file has a couple more headers, I think around units, leadinf/trailing zero suppression etc
    M48
    ;DRILL file {KiCad (5.0.0-rc2-160-g7b7355772)} date 06/23/18 08:01:20
    ;FORMAT={-:-/ absolute / inch / decimal}
    FMAT,2
    INCH,TZ
    T1C0.0130
    T2C0.0315
    T3C0.0400
    T4C0.0472
    
  • jmgjmg Posts: 15,172
    Appears GerbView is assuming a certain number of digits, if I edit that drill file to remove one leading zero, with no added header at all, it then loads in what looks valid scale (but differing XY to the gerber info)
    M71
    M48
    T1F00S00C0.3000
    T2F00S00C0.5080
    T3F00S00C0.6350
    T4F00S00C0.9652
    %
    T01
    X0020320Y0194310
    X0020238Y0205827
    X0020320Y0216242
    Y0227330
    Y0238750
    Y0249750
    X0054356Y0263906
    
  • Yes, I've been manually editing the drill file to make it compatible with the format like this:
    M48
    FMAT,2
    ICI,OFF
    METRIC,TZ
    T1C0.3000
    T2C0.5080
    T3C0.6350
    T4C0.9652
    %
    G90
    M71
    T1
    X0002032Y0019431
    

    Still no luck. I'm testing with Mayhew's on-line 3D viewer btw.
  • jmgjmg Posts: 15,172
    edited 2018-06-28 05:58
    Yes, I've been manually editing the drill file to make it compatible with the format like this:
    M48
    FMAT,2
    ICI,OFF
    METRIC,TZ
    T1C0.3000
    T2C0.5080
    T3C0.6350
    T4C0.9652
    %
    G90
    M71
    T1
    X0002032Y0019431
    

    Still no luck. I'm testing with Mayhew's on-line 3D viewer btw.

    Can you shave off one leading zero in P99, & try that - our posts crossed.

    ie this seems to load ok into gerbView (no header, so defaults assumed)
    %
    T01
    X0020320Y0194310
    X0020238Y0205827
    X0020320Y0216242
    

    Addit: That file also loads ok into http://www.gerber-viewer.com/ (different origin, but same scale as gerber)
    Is there a way to control the origin in the drill file in P99 ?
  • I've got a feeling that there are some illegal parameters in the file since I made a copy of my edited file, chopped everything out except for my header plus drills for 3 of the tools. It seems to work, so I will now try most of the file except for a few lines that look invalid.
    M48
    FMAT,2
    ;ICI,OFF
    METRIC,LZ
    T1C0.3000
    T2C0.5080
    T3C0.6350
    T4C0.9652
    %
    G90
    M71
    T1
    X0002032Y0019431
    T2
    X000508Y00064262
    T3
    X0
    Y003556
    M30
    
  • jmgjmg Posts: 15,172
    edited 2018-06-28 06:16
    Attached is the file I edited, loads without errors & correct scale into GerbView and http://www.gerber-viewer.com/
    ( I had to append .txt to upload it here )
  • jmgjmg Posts: 15,172
    Still no luck. I'm testing with Mayhew's on-line 3D viewer btw.

    I tested that with a few files, and it works ok with files where Drill origin == Gerber origin. - shows cut-out holes.
    However, because it renders holes as negative, any drill not overlaying a PCB seems to render blank/white.

  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2018-06-28 06:40
    That didn't work but I have been refining what does and what doesn't. First off, I had to have both gerber and nc drill set to absolute origin and suppress leading zeros. Generate the cams and change the header with this:
    M48
    FMAT,2
    METRIC,TZ
    T01C0.3000
    T02C0.5080
    T03C0.6350
    T04C0.9652
    %
    G90
    M71
    
    The initial header looked like this:
    M71
    M48
    T1F00S00C0.3000
    T2F00S00C0.5080
    T3F00S00C0.6350
    T4F00S00C0.9652
    %
    
    So essentially rename the tool to T01 or change the T01 in the list to T1 etc and disregard speed and feed and reformat.

    and drop this into the 3D viewer and presto! (finally)
    P2D2F.png
    P2D2F-R.png
    1137 x 677 - 777K
  • jmgjmg Posts: 15,172
    That didn't work but I have been refining what does and what doesn't. First off, I had to have both gerber and nc drill set to absolute origin and suppress leading zeros.
    Yes, works best if they all have the same origin, and it is one less thing for the PCB FAB to 'get wrong'.

  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2018-06-28 06:51
    Yes, and so even though the Protel output does specify the tools and a M48 command, it is in the wrong format and missing parameters. I went back and checked the tool naming format and it turned out the it was ok to spec the tool as "T1" and refer to it as "T01" after all.

    So in the end it requires a 10 second text edit on the file to make it compatible (and absolute origin with LZS).
    M48
    FMAT,2
    METRIC,LZ
    T1C0.3000
    T2C0.5080
    T3C0.6350
    T4C0.9652
    %
    G90
    M71
    T01
    X2065020Y1858010
    X2064938Y1869527
    X2065020Y1879942
    Y1891030
    Y1902450
    Y1913450
    
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2018-06-28 07:07
    Here are the current gerbers I'm using. They include the copper (GxL), the outline (GxO), and the solder mask (GxS) layers plus the edited excellon drill file (TXT).

    I'm thinking of just getting a run of 50 from JCLPCB with the standard mask etc and HASL finish. I'd prefer the red mask and ENIG but if there's a mistake then it's cheap enough to replace this run.
  • jmgjmg Posts: 15,172
    That looks to import fine into GerbView :)
    I think it does have to have
    FMAT,2
    but does require
    METRIC,LZ
    527 x 185 - 23K
  • Gerbers check out with JCLPCB on-line so I submitted an order for 50 boards and to the heck with it, DHL as well, why not. After they review and ok them I will send payment for a whopping $50 USD!
  • Good news Peter. So what PCB thickness did you end up ordering from JCLPCB? 1.6mm?
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2018-06-28 07:40
    rogloh wrote: »
    Good news Peter. So what PCB thickness did you end up ordering from JCLPCB? 1.6mm?

    Darn, I meant to order 1mm but I suppose it doesn't matter for this run that I get 1.6mm.

    Update - it's now in production so I will have pcbs next week!
  • Peter, the issue with your Tools is that Protel is embedding infeed and spindle speeds in to the tool definitions and that is choking gerbview. Your edits are removing those parameters and that is why it works. See the "T" definitions here:
    https://web.archive.org/web/20071030075236/http://www.excellon.com/manuals/program.htm

    The 3D view looks good. I hve tried a few other 3D gerber viewers, but the one I love best is a CPU/memory hog. I may check out Gerbview. Can you do cross section views? That works wonders on multilayer boards when you need to visualize how inner layers connect to vias.
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2018-06-28 08:30
    Peter, the issue with your Tools is that Protel is embedding infeed and spindle speeds in to the tool definitions and that is choking gerbview. Your edits are removing those parameters and that is why it works. See the "T" definitions here:
    https://web.archive.org/web/20071030075236/http://www.excellon.com/manuals/program.htm

    The 3D view looks good. I hve tried a few other 3D gerber viewers, but the one I love best is a CPU/memory hog. I may check out Gerbview. Can you do cross section views? That works wonders on multilayer boards when you need to visualize how inner layers connect to vias.

    Ok wise guy, where were you when I couldn't get it to work? :)

    I tried stripping just the S&F info but the 3d viewer still wasn't happy. However, knowing what I know now I tried using the Protel TXT file as is except for swapping the M48 and M71 so that the file started with M48 and guess what? It worked! That was so simple in the end although it was in desperation that I started editing the TXT file.
    M48
    M71
    T1F00S00C0.3000
    T2F00S00C0.5080
    T3F00S00C0.6350
    T4F00S00C0.9652
    %
    T01
    X2065020Y1858010
    
    Oh yes, and the absolute position with LZS was necessary too where all the other sites say "relative position" etc.

    GERV wasn't happy with finding M71 without a METRIC and the drill layer was huge compared to the other layers.
    M71 code found but no METRIC specification in header.
    Assuming all tool sizes are MM.
    
    But GERBV worked with this basic header:
    M48
    FMAT,2
    METRIC,LZ
    M71
    T1F00S00C0.3000
    T2F00S00C0.5080
    T3F00S00C0.6350
    T4F00S00C0.9652
    %
    

    The 3D viewer does let you rotate so that you are looking from the edge but this is all I see;
    P2D2-TH.png

  • Cluso99Cluso99 Posts: 18,069
    edited 2018-06-28 08:51
    Peter,
    I've always output gerbers from Protel. There are a number of things you MUST do, otherwise the drill origin does not match the pcb origin. Also you need to convert to fixed decimals in the txt drill file. I have a compiled VB6 exe to do this. I forget the viewer I use to check the files.
    Sorry I wasn't around today. I'll check it out tomorrow and give you a call. Hope I can find my instructions as we moved house last week.
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2018-06-28 08:59
    Cluso99 wrote: »
    Peter,
    I've always output gerbers from Protel. There are a number of things you MUST do, otherwise the drill origin does not match the pcb origin. Also you need to convert to fixed decimals in the txt drill file. I have a compiled VB6 exe to do this. I forget the viewer I use to check the files.
    Sorry I wasn't around today. I'll check it out tomorrow and give you a call. Hope I can find my instructions as we moved house last week.

    Well, as it turns out, it was easy to bring the drill file up to Excellon format and I didn't have to worry about fixed decimals either, just set LZS and absolute position so that the gerber and the drill match up. So now both MayhewLabs 3D viewer and Gerbv work properly. I also used 4.4 mm format since the 3D viewer didn't seem to like inches.

Sign In or Register to comment.