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

P2D2 - An open hardware reference design for the P2 CPU

18911131438

Comments

  • Cluso99Cluso99 Posts: 18,069
    edited 2018-10-16 21:06
    I needed this to check the pinout connection for the PropPlug or Serial header so decided to post here for reference. (see page 1)

    P2D2-PropPlug.jpg

    P2D2-PropPlugCct.jpg


    221 x 238 - 29K
    433 x 138 - 28K
  • Cluso99Cluso99 Posts: 18,069
    Currently my P2D2 doesn't have the reset transistor circuit so I am looking for my PropPlug equivalent board with 5V header too. Not unpacked since my move :(

    Then I'll add the transistor circuit and try the cheapie <$2 CP2102 board.

    FWIW Peter, we need a 10K pull-up on the P2 RESn pin. Think that's been mentioned before, but just in case.
  • Sorry, i left the transistor off your board after u reworked it but you are probably the one person who could use it. There is a10k pull-up added to the reset pad in the top left corner but you may notice. Otherwise there is a10k pullup in the transistor reset circuit.
    I loaded the other pcb with my transistor reset and it works fine even with a prop plug. I think parallax may have loaded the other boards with a standard npn, not the digital one with the pulldown.

    Your board was fully tested after the rework. You can even type ctrl R in TAQOZ to restore all the extensions i added plus the game of life demo.

    Don't forget that there is a proper overlay pdf that makes it very easy to find labels and values. I'll post the link back in here later when I'm back at the computer.
  • Cluso99Cluso99 Posts: 18,069
    edited 2018-10-16 23:00
    Thanks Peter :)
    I was tired last night when I arrived home. Not a good time to play :(
    Just found my FT232 board so I'm connecting it up now. I have about an hour before I need to leave.

    BTW no worries about the reset circuit. As you know, I have the parts and can happily solder the pcb :)
  • roglohrogloh Posts: 5,837
    edited 2018-10-17 01:22
    Hi @"Peter Jakacki" , when approximately might your next rev of P2D2 boards be made do you think?

    To be safe I am happy to wait until then for getting one I guess, and I'm not one of the lucky early ones to have any P2 chips to play with anyway.

    I'm actually laying out a base board that uses your board at the moment as the main processor module. Hopefully the dimensions and the pinouts of your P2D2 are not going to change too much more, or at least after I complete my own board in perhaps (optimistically) 2-3 weeks time. If they are going to be changing I may have to modify/delay my plans somewhat.
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2018-10-17 04:12
    I'm thinking of finalizing the board and getting it done before the next batch of P2 chips are available. Along with that I will have my dev board for it to plug into but I'm looking at what I like to have on that board and now HDMI looks possible too. I just realized I could add a PHY for Ethernet too.
  • roglohrogloh Posts: 5,837
    edited 2018-10-17 05:02
    I'm thinking of finalizing the board and getting it done before the next batch of P2 chips are available. Along with that I will have my dev board for it to plug into but I'm looking at what I like to have on that board and now HDMI looks possible too. I just realized I could add a PHY for Ethernet too.

    That would be cool Peter. Do you expect any pinout or dimension changes?

    In my case I think it makes sense to just keep some GPIO pins free to bring out a double wide PMOD interface (8 IO pins) and this could possibly be used for this new HDMI mode if it eventuates, SPI Ethernet, or VGA, extra UARTs, WIFI, I2C, PS/2 (with 5V option) etc, etc. Then nothing gets locked in and keeps a lot of flexibility with existing PMOD modules, or people can always roll their own as well.
  • jmgjmg Posts: 15,175
    I did not find any 'perfect' thru hole heatsinks, but did find some good value sticky mounting heatsinks.
    These should fit P2D2 on either/both sides.

    Search eBay for heatsink 13 x 14 x 6.5 mm

    They come in Blue/Black/Plain and are $3/12 or 25c each.
    s-l500.jpg
  • roglohrogloh Posts: 5,837
    edited 2018-10-17 05:49
    I'm sort of hoping I might be able to squeeze in an optional small 25x25x7mm 5V fan under a reverse mounted P2D2 (facing the component side) although the amount of airflow possible this way might be low unless I route some extra cutouts below the fan which I may be able to do. My board also in an optional enclosure so I think it might need some amount of circulation if the P2 is running full speed. I hope that the fan clearance is okay - I've seen the P2D2 in person at Tubular's work and it looks like it's low profile and the clearance might be enough.
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2018-10-17 06:04
    i'm mounting a small 25/30mm fan in a cutout on the dev board so that when the P2D2 is plugged in upside down the fan will blow onto the top of the chip as it seems to work best this way. The fan will be mounted under the board so clearance isn't a problem.


    BTW - for anyone who hasn't come across it yet in the P2D2 Dropbox folder, this is the assembly overlay for the P2 with values and labels. I always print these as page sized references when assembling or referring to the pcb, rather than trying to read a tiny silkscreen. This is a combo of my silkscreen and a few mechanical layers that hold values and designators.

    Image and PDF and link.


    p2d2%20overlay.png
  • Interesting approach Peter. I can't afford a full cutout below as I need some components there but I might have some holes/slots drilled there to assist feeding some air. If I have the clearance it might be okay to raise the fan a couple of mm higher with a spacer to get some extra suction in at the sides and not just try to create a vacuum. :smile:
  • That combination of a fan mounted below your dev board cutout and the heatsink jmg found might be a decent combination if you plan to overclock etc.
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2018-10-17 06:26
    rogloh wrote: »
    That combination of a fan mounted below your dev board cutout and the heatsink jmg found might be a decent combination if you plan to overclock etc.

    If I use a fan then I don't need a heatsink as I found that I can run at 340MHz+ indefinitely and the chip temperature is always below 40'C. I'm not worried about using any space under the module as this is a dev board designed to try out various ideas and interfaces. If I need to overclock in a product I may end up using a metal case and having the P2D2 using that as a heatsink since the exterior of a metal case is more likely to have airflow. Unless you cut slots and even use a fan to force airflow in an enclosure then there is not much advantage to a heatsink alone as the heat needs to be dissipated somehow.

    BTW, Chip wanted the 1.8V available externally but I'm reluctant to make this accessible normally since we don't want to power external devices that could compromise the P2 itself and besides it is easy enough to use another 1.8V regulator. So I think the pinout should remain the same and the 3.3V pins are available for external devices. I may end up using a switcher for the 3.3V rail on the P2D2 along with an option of a 3.3V LDO that could optionally split the VIO as we do now.
  • Cluso99Cluso99 Posts: 18,069
    edited 2018-10-17 08:09
    Liftoff :)

    My P2D2 is working :)

    I have booted into TAQOZ and the Monitor :)

    First observation showing 80mA but unsure if it's correct. Cannot power from my laptop yet as 5V collapses to a little over 3V. Need to check further. Now working :)

    Initially had a problem getting a response. I was using my PropPlug equivalent with real FT232RL. It was a misunderstanding on my part... pressed the right arrow cursor key instead of greater than :(

    So the correct boot sequence using PST at 115,200 baud, reset using DTR, then type 3 characters... ">" then " " (a space character) then the escape key. The P2D2 will respond with the TAQOZ message. From there, Ctl-D will go to the Monitor giving a monitor message.

    In the Monitor, type "100-" and enter (without quotes) and you will dump cog $100. "100-140" will dump cog $100-$13F. Escape and enter to return to TAQOZ.

    "> " followed by Ctl-D (without quotes) boots to the Monitor.

    YIPEE :):):)
  • cgraceycgracey Posts: 14,206
    That's great, Cluso99.

    Now we can find out if the SD boot works.
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2018-10-17 13:04
    @Cluso99 - don't forget that you can type ctrl R or type RESTORE in TAQOZ to restore a saved image from $F0000 in Flash which in this case has the extensions I've loaded for changing the clock amongst other things as well as a terminal version of the Game of Life (type DEMO). I will be adding an assembler soon so that I can even compile Tachyon from TAQOZ on the P2 itself and save the binary directly to SD for booting.
  • jmgjmg Posts: 15,175
    edited 2018-10-17 21:30
    BTW, Chip wanted the 1.8V available externally but I'm reluctant to make this accessible normally since we don't want to power external devices that could compromise the P2 itself and besides it is easy enough to use another 1.8V regulator. So I think the pinout should remain the same and the 3.3V pins are available for external devices. I may end up using a switcher for the 3.3V rail on the P2D2 along with an option of a 3.3V LDO that could optionally split the VIO as we do now.
    You could maybe bring the 1v8 to separate pins ?

    For a regulator upgrade, in my trawling regulators, I did find some well priced, well spec'd regulators and from OnSemi

    Best 'low voltage, small regulator for P2, with PGood' looks to be NCV6324BMTAAWTBG
    (but there is also NCP6354, NCP6334B, NCP6324B, NCV6324B alternates here) - cheapest and newest data of those is NCx6324B ( OnSemi say 3000 $0.36 Data: May, 2017 − Rev. 5)

    It seems in NCx6324B Automotive spec 'comes for free', and there is a 'WDFNW8, 2 x 2 mm, 0.5 mm Pitch Package with Wettable Flanks' that the Automotive guys like for inspection, which produces the part code NCV6324BMTAAWTBG >2A output, 2.5~5.5V (abs max 7.0V) 3MHz, 1uH inductor.

    This could manage both 3v3 and 1v8 regulation, R-adjustable.

    If you wanted to add additional spike/reverse protection, there are BZD27B5V6P / BZD27B5V1P are 2% spec, compact power package zeners.
  • Cluso99Cluso99 Posts: 18,069
    Peter,
    I'll get to try a few things this afternoon just to get comfortable with P2. Then I can get on to testing the booting resistors and SD.
    If you are around I'll give you a buz and we can try a few of your TAQOZ things out :)

  • Cluso99 wrote: »
    Peter,
    I'll get to try a few things this afternoon just to get comfortable with P2. Then I can get on to testing the booting resistors and SD.
    If you are around I'll give you a buz and we can try a few of your TAQOZ things out :)

    I should be available all day today, so no problems. I might even get TAQOZ to save an image to a file so that it can boot automatically.
  • @"Peter Jakacki",

    you know of my love and hate relationship of TAQOZ but having TAQOZ looking for some 'bootfile.fth' on SD at startup, loading a startup script, would be wonderful.

    On top of the ability to load a bootsector or bootfile ala @Cluso99, load a TAQOZ start script. 'Autoexec.tqz'? 'cexeotua.tqz? the name does not really matter... it is a editable text file! (well somehow, it will be FORTH)

    It could load a additional dictionary or even your full TACHION, but it also could run other programs from SD or just load some TAQOZ firmware to make a serial controlled servo controller out of a P2.

    Mike

  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2018-10-18 00:13
    msrobots wrote: »
    @"Peter Jakacki",

    you know of my love and hate relationship of TAQOZ but having TAQOZ looking for some 'bootfile.fth' on SD at startup, loading a startup script, would be wonderful.

    On top of the ability to load a bootsector or bootfile ala @Cluso99, load a TAQOZ start script. 'Autoexec.tqz'? 'cexeotua.tqz? the name does not really matter... it is a editable text file! (well somehow, it will be FORTH)

    It could load a additional dictionary or even your full TACHION, but it also could run other programs from SD or just load some TAQOZ firmware to make a serial controlled servo controller out of a P2.

    Mike

    Forth can end up looking a lot like English, or Spanish, or Spanglish, or even Gibberish. Sure, you can write a program in Forth, or better still, you can write a program in an application specific language that runs on Forth. Just remember that the "compiler" is extensible too and becomes a part of Forth. Back in the early days I wrote a compiler for CPLDs in Forth that also handled the low level programming too. So simply by typing in plain text or pasting my PLD source I could compile and burn PLDs on the run. Here's part of what that CPLD language looked like and bearing in mind that I kept it simple so it still used the natural Forth style of spaces etc.:
    J- CLK/4	= CLK/2 & 8MHZ ;
    K- CLK/4	= CLK/2 & 8MHZ ;
    
    RAMOE*		= IOEN* # ( IOEN* ! & R/W ) ;
    RAMWE* !	= IOEN* ! & R/W ! & PH2 ;
    WRITE* !	= R/W ;
    BUSEN* !	= IOEN* ! ;
    
    ; Multiplexer function - DUAL 4 TO 1
    
    VDAT1 !		= ( D0 & CLK/2 ! & CLK/4 ! )
    		# ( D1 & CLK/2 & CLK/4 ! )
    		# ( D2 & CLK/2 ! & CLK/4 )
    		# ( D3 & CLK/2 & CLK/4 ) ;
    

    The original code I could print on one page but the CPLD version ended up at 1,000 lines but half of that were extensions and ICP support.
    BTW, the reason for the DIY at the time was simply the ridiculou$ price of the programmer not to mention the compiler.
  • Cluso99Cluso99 Posts: 18,069
    The Monitor can load & run a file. This file can be any binary, so it can load & run another version of TAQOZ/TACHYON. We have a lot of flexibility here :)
  • Cluso99Cluso99 Posts: 18,069
    edited 2018-10-18 02:07
    Peter,

    The P2D2 is a fantastic little board. Its nice and tight (compact) and with all I/O brought out to easy 0.1" pitch makes adding external pcbs to do other things quite simple.

    Having uSD and Flash on the pcb makes development a breeze.

    Once over finger trouble, it was a breeze to get going. Having TAQOZ & Monitor in ROM allows operation immediately after a serial terminal is connected.

    In reality, it's not possible to squeeze this pcb much smaller without sacrificing the I/O.

    Fantastic job Peter! Thanks heaps for doing this :)
  • Is the assembled P2D2 board going to be available through Parallax?
  • I am thinking of offering the newer version along with an optional dev board that the P2D2 can plug into and maybe a simpler dev board too. Of course the P2D2 can be used stand-alone too. I think Parallax likes to go big and chunky whereas I like to keep it modular :)
  • Cluso99Cluso99 Posts: 18,069
    I'm in the tiny and modular camp too :)
  • Cluso99Cluso99 Posts: 18,069
    Just had a session with Peter and TAQOZ.

    It is really nice to be able to use the P2 out of the box to do a few tests, etc, all without loading any code!!!
  • It is really nice to be able to use the P2 out of the box to do a few tests, etc, all without loading any code!!!

    Totally. We got a taste of that with P2 HOT edition. It was super compelling.

    This one is an order better, on this front, and with the respin comes the better ROM we know you guys want and can do.

    Good times ahead.

    And thank you. It's appreciated.
  • jmg wrote: »
    For a regulator upgrade, in my trawling regulators, I did find some well priced, well spec'd regulators and from OnSemi

    Best 'low voltage, small regulator for P2, with PGood' looks to be NCV6324BMTAAWTBG
    (but there is also NCP6354, NCP6334B, NCP6324B, NCV6324B alternates here) - cheapest and newest data of those is NCx6324B ( OnSemi say 3000 $0.36 Data: May, 2017 − Rev. 5)

    Thanks for the link. I am taking a look at these parts since my revised P2D2 will have 2 switchers anyway and these parts can bring the cost down while still being compact with a power-good output. I still like the XCL parts though but it's good to have options.
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2018-10-29 07:50
    I decided to change the format of my P2D2 dev board and make it so that other boards can plug into it horizontally as well as an overhead option for the P2D2 itself.

    I spent an hour or so and put my P2D2 onto a smaller matrix board than what I originally planned, hence my change of thought on the dev board pcb. BTW, I always design pcbs with connectors and enclosures in mind, so the dev board will not only fit into standard enclosures, but the connectors also will protrude correctly. I find it easier to mount the pcb on the lid so that connector cutouts are a simple nibble and file on the edge of the box where it mates to the lid.

    This is only my matrix test board, not my dev board layout, but I will post something soon on that. The ribbon cable is a standard 15-way VGA adaptor cable that comes with many video cards.

    IMG20181029172901~01.jpg
    661 x 947 - 202K
Sign In or Register to comment.