Shop OBEX P1 Docs P2 Docs Learn Events
FPGA pcb for P1V — Parallax Forums

FPGA pcb for P1V

I am looking at making a minimal FPGA board to run various versions of P1V.\

Here are my thoughts...

* 2"x2" pcb
* Cyclone IV EP4CExxE22CxN (144 PQFP)
* EEPROM 64KB 24C512 (for P1V)
* FLASH 2MB (for Cyclone IV)
* 48MHz Oscillator
* 64 I/O at 3V3 (brought out to 0.1" headers - not soldered)
* 3V3, 2V5 & 1V2 Voltage Regulators from 5V DC input
* Decoupling capacitors

There will be solder links to cater for EP4CE 6/15/22 C 6/7/8 N (note 10 is not cost effective).

I am not planning on fitting anything else on the board to keep it cheap and simple.

On the Parallax board I noted that the oscillator is decoupled by a capacitor. Is this necessary???

BTW I have the parts to build my first/one board using an EP4CE6E22C8N.

Any thoughts???




Comments

  • How hard would it be to get the P1V to boot from SPI flash instead of EEPROM?
  • jmgjmg Posts: 15,173
    edited 2015-12-09 02:36
    Cluso99 wrote: »
    On the Parallax board I noted that the oscillator is decoupled by a capacitor. Is this necessary???
    Always a good idea to decouple analog parts like Oscillators, and I'd add some Vcc choices via resistors, as Oscillator come in 3v3, 3v0, 2v8, 1v8 etc

    Cluso99 wrote: »
    * EEPROM 64KB 24C512 (for P1V)
    * 48MHz Oscillator
    Any thoughts???
    Looks useful.
    Is the EEPROM a bit small ?

    I'm not sure on the PLL choices in Cyclone IV, but if you can access the PLL, 48MHz is probably ok.
    I've been looking at Epson/AVX TCXO's - quite good prices, there 26MHz is common, (plus a few others) but they all seem to be Clipped Sine, which means a SOT23 tiny logic buffer.

    Addit: Obvious question is why no P1 included on the Board ?
    P1 is still the cheapest per-COG price, so a P1V best targets what the P1 cannot do already.
  • Cluso99Cluso99 Posts: 18,069
    @David,
    Probably not that difficult provided the Flash is available on I/O pins - need to check.

    @jmg
    I have never decoupled oscillators, but almost always used xtals not oscillators which are of course very different animals.
    I have a Mouser 581-KC3225K48.0C1GE0 48MHz oscillator for this job.

    EEPROM is the usual 64KB for the prop although most users only ever use 32KB. Even with larger Hub RAM there will likely be SD support anyway - just on another board.

    I want the board to be simple and cheap. Adding a P1 negates this. Anything can be added by an addon board while not restricting the market. That's my thoughts anyway.
  • I'm considering using an FPGA for a design as I really just need a P1 with more RAM and I/O. I would really love to use a P2 but that is still an unrealistic view to have as first silicon is still a long way off and not guaranteed to work first time. Then again I might just use multiple P1s.

    Which parts in particular are you considering? I would also consider just using a programmable oscillator as they are quite cheap these days.
  • jmgjmg Posts: 15,173
    Cluso99 wrote: »
    I want the board to be simple and cheap. Adding a P1 negates this.
    Depends on what you measure.
    Adding a P1 lowers the cost per COG of the system board.
    The incremental cost is just the footprint cost, as fitting it is optional.

    Of course, if your application does not use many COGS, it may fit in just P1V alone and then P1 is added cost, if you chose to fit it.

  • Cluso99Cluso99 Posts: 18,069
    My first build will just use the EP4CE6E22C8N. Only a 6K LE device so not sure how many cogs I will get. Chip price is $11.95 from mouser.

    PCB wills be 2 layer enig. I am hoping I can get the cost under $10 plus the FPGA cost. There is no point in competing with the other FPGA boards. They obviously buy the togas at big discounts that are not available to small users.
  • AleAle Posts: 2,363
    Go ahead. 2x2" you say ? (better gets only with BGA). I'd say do it, and I'd like 2 of them. (Think if it may be possible to put a footprint for a SRAM or SDRAM on the underside).
  • Cluso99Cluso99 Posts: 18,069
    @Ale
    I don't think there will be any space once I put the power planes and bypass capacitors on the underside. But a plug in pcb with SRAM would make sense, particularly for a small FPGA.

    I have two layouts partially done. One has all 144 pins brought out to a double row of 0.1" pitch. The other has just sets of double rows of 0.1" pitch (currently 2 sides only) for the 32 I/O per side. Not sure which to go with so I am completing the power planes and bypass capacitors first.

    If space permits, I might put a footprint for a second (50MHz) oscillator. Footprint will be 1206 (3225).



  • LoopyBytelooseLoopyByteloose Posts: 12,537
    edited 2015-12-09 08:14
    Lattice has some FPGAs that might work well and ARE NOT Ball Gate Array chips. They also have a complete suite of software in Windows, but lack some important compents in Linux (simualtion to confirm the design's stablity).

    Ball Gate Arrays require sophisticated printer circuit multi-layer board design -- way beyond my skill set and pocket book. So I limited my FPGA concepts to using proven boards devloped my more knowlegible main-stream engineers.

    The BeMicroCV (A2) is no longer availabe, but it is an excellent platform for the Propeller P1V as it only cost $50 USD and cloned the P1 completely.
    https://www.arrow.com/en/products/bemicrocv/arrow-development-tools#page-1

    The BeMicroCV9 can still do the same and much more, but it is $150 USD.

    And the free version of Quartus II now supports the the CVA9 in V15.xxx. But the CV was really a great bargain.
  • AleAle Posts: 2,363
    I recently bought this form *bay EP4C6 development board.
    Of course I thought it is a EP4C22... the E22 in the part's name confused me :(. Anyways, what I wanted to say is these parts have very little IO. I know you are planning just 64 of them, and th EP4C22 has like 78 ?... And 3 power supplies, you can get away with just providing 2 of them, the user should have 3.3 V handy.
    That board is not bad but the expansion connector has the VGA and PS/2 lines (Why oh why), resistors for 15 bit color !, all IOs are used (IR receiver anyone ?) and there is no SD card reader, that would have been better as IO or built-in flash, I think :).
    I still want 2 of your beautiful modules :) DIY kits or bare-borads are good too :)

    I have no experience yet with BGA but I'd really want to know how doable is it to solder a BGA device per hand (hot air), in the you tube videos seems relatively easy... I just don't know if I would commit the resources for that...
  • jmgjmg Posts: 15,173
    Ale wrote: »
    I have no experience yet with BGA but I'd really want to know how doable is it to solder a BGA device per hand (hot air), in the you tube videos seems relatively easy... I just don't know if I would commit the resources for that...
    Hot air as in hot air gun ? - that seems the least suited to BGA.
    Better would be a hot plate, or a toaster oven as that gets heat into the underside evenly, and heats the balls that way, with no sideways force at all on the package, and no extreme thermal profiles.

  • Cluso99Cluso99 Posts: 18,069
    BGA is not for me!

    The E22 specifies the QFP144 and IIRC 14x14mm 0.5mm pitch. EP4CExx{E22}CxN where xx=6/10/15/22 LE size and x=6/7/8 for speed.

    I will try and put a microSD on the pcb if I can find enough space.

    Some of the variants of the fpga only have 64 usable I/O provided the flash is on these pins. So there will be a couple of restrictions to having all 64 I/O. They waste a lot of pins for clock inputs! And they don't seem to be usable as normal I/O either!

    BTW I have just very successfully soldered a new board of mine with a 1206(3225) xtal and 0402 capacitors :)
  • AleAle Posts: 2,363
    I wonder why you don't want to use a max10 device ? they are single supply (some of them are!) you could save some spece due to the lack of regulators (or maybe just 1).
  • AleAle Posts: 2,363
    Hei Cluso, did you consider going max10 ? Just asking. Looking at the prices and the requirements, it may be a good idea:

    The EPCS4 is 13 € from Mouser and the EP4C22 is 32, a max10 10M40SCE144 is 47 €. Can you use a normal SPI flash as configuration device ? That could save a couple bucks
    QFP144 is 20x20 mm plus legs.
  • Cluso99Cluso99 Posts: 18,069
    Ale wrote: »
    Hei Cluso, did you consider going max10 ? Just asking. Looking at the prices and the requirements, it may be a good idea:

    The EPCS4 is 13 € from Mouser and the EP4C22 is 32, a max10 10M40SCE144 is 47 €. Can you use a normal SPI flash as configuration device ? That could save a couple bucks
    QFP144 is 20x20 mm plus legs.
    When I looked last the Max10 didn't have large enough LEs. Since Cyclone IV worked fine with P1V I decided it was the best fit and the range of 6/10/15/22 LE sizes made sense.

    Yes I am using a 25FL116 for <$1. Beats the Altera parts around $15!!!!

  • Any update on this? I might be interested in getting a board too.

    Thanks
  • Cluso99Cluso99 Posts: 18,069
    cbmeeks wrote: »
    Any update on this? I might be interested in getting a board too.
    Thanks
    Not yet.

    I have the ground plane on the top side under the fpga. The underside will have the 3 power planes under the chip plus all the bypass caps. Once this is completed I can see how much space I will have left. Need to find some time to do this in between other things ;)
  • Cool.

    I'm always on the lookout for good, cheap FPGA boards.

  • jmgjmg Posts: 15,173
    edited 2015-12-16 20:40
    Comparing EP4C with MAX 10, in TQFP144, I notice:

    EP4C starts at 91 io and drops to 81/79 as larger cores fit.
    MAX10 starts at 101 io and stays at 101 io

    MAX10 has a smaller sibling in 144,
    $7.38 2000LE 110592R 101io **
    and
    $17.46 8000LE 387072R 101io

    buys 40% more RAM, 10 more io, and 27% more LE.

    MAX10 scales ( 50000LE 1677312R 101) to twice the size of EP4C
    - and I think it is significantly faster, and needs no off-chip FLASH to load.

    MAX10 shows 101 io on all 144pin parts, but Pin migrate shows 10M04-10M25 - looks like outside that, they differ in LVDS - not sure if they keep Vcc/GND but it would be daft not to, if they keep IO count.

    ** I see arrow lists 10M02SCE144C8G 100+ $5.76
    I wonder what could be done with a [P1+10M02] ?

    ( & 10M08SCE144C8G 100+ $13.62)
  • Cluso99Cluso99 Posts: 18,069
    edited 2015-12-16 22:46
    @jmg
    Don't know how you are comparing these...
    All Qty 1 from mouser

    EP4CE6E22C8N $11.95
    EP4CE10E22C8N $22.45 (buy CE15 !!!)
    EP4CE15E22C8N $23.14
    EP4CE22E22C8N $35.52

    10M02SCE144C8G $7.38
    10M04SCE144C8G $11.43
    10M08SCE144C8G $17.46
    10M16SCE144C8G $34.11
    10M40SCE144C8G $51.66
    10M50SCE144C8G $57.69

    So the Cyclone IV 15K LE $23.14 vs MAX10 16K LE $34.11
    The smaller 6K cyclone $11.95 vs 4K $11.43 or 8K 17.46
    The larger 22K cyclone $35.52 vs 40K $51.66 (big jump for more LEs unless required)

    Doesn't make much sense to me to use MAX10 - presume the MAX10 E144 footprints are the same for the family???

    BTW I note one MAX 10M08SAE.. is EOL already (probably a new replacement out???)
  • jmgjmg Posts: 15,173
    Cluso99 wrote: »
    Doesn't make much sense to me to use MAX10 -

    So you don't care about MHz and RAM and future build options and eliminating FLASH device ?
    Did you check MHz & LE reports for MAX10 and Cyclone builds ?
    Cluso99 wrote: »
    BTW I note one MAX 10M08SAE.. is EOL already (probably a new replacement out???)
    Could be, I noticed some issues like that as die revisions come thru from vendors.

    Cluso99 wrote: »
    presume the MAX10 E144 footprints are the same for the family???
    Altera show footprint span from 04 to 25, outside that the IO count is the same, but the LVDS changes, but the top documents do not explain if they are otherwise compatible (ignoring details like LVDS)

    The 10M02SCE144C8G is interesting, as it is cheap enough to use as a co-processor peripheral-whiteboard.
  • AleAle Posts: 2,363
    Hei Cluso,

    did you get any further with the CIV board ?

    Thanks

    Ale
  • Cluso99Cluso99 Posts: 18,069
    I only got as far as connecting the io pins to the edge connector before I was distracted :(
  • AleAle Posts: 2,363
    before I was distracted

    The story of my life, what were we talking about ? ;-)
Sign In or Register to comment.