FPGA pcb for P1V
Cluso99
Posts: 18,069
in Propeller 1
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???
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
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.
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.
Which parts in particular are you considering? I would also consider just using a programmable oscillator as they are quite cheap these days.
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.
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.
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).
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.
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...
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.
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
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.
Yes I am using a 25FL116 for <$1. Beats the Altera parts around $15!!!!
Thanks
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
I'm always on the lookout for good, cheap FPGA boards.
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)
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???)
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 ?
Could be, I noticed some issues like that as die revisions come thru from vendors.
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.
did you get any further with the CIV board ?
Thanks
Ale
The story of my life, what were we talking about ? ;-)