I've been working on a new revision to the B2 board. I am running low on my B2 board stock and need to manufacture more boards. I've been making some big changes that I think will be very welcome improvements on the B2:
- More IO pins! Up 42 IO pins can be controlled by the FPGA. 33 of those IO pins are dedicated to user IO and are not shared with the USB port, LED, or SPI programming interface.
- LEDs! There is now a power LED and a bootloader LED that can also be re-purposed by the user.
- Better USB! The USB pull-up resistor is now controllable by the FPGA. This means the USB connection will be more reliable after programming the FPGA and when entering the bootloader via the reset button.
- Double the SPI flash! The SPI flash chip has been upgraded to 8MBit from 4MBit. This gives more space for user data like programs to be executed on a soft CPU core.
- Teensy 3.2 compatible foot-print (mostly). The main footprint is compatible with the Teensy 3.2. You can stack a Teensy 3.2 and TinyFPGA BX board on top of each other and not worry about shorting out any pins.
- More power and ground pins! There are now a total of 3 ground pins and 2 3.3v pins.
- Dedicated power and ground layers in the PCB! The PCB is now a 4-layer PCB with dedicated ground and power layers. This should help improve high-speed signal integrity.
- There will now be just the BX board. The B1 was going to use a smaller capacity FPGA, but it wasn't cheap enough compared to the B2 that it never made sense to manufacture. So now the BX will supersede the B2.
I'm very happy with these changes and have ordered 20 assembled prototypes. I'll be posting updates as the boards come back and are tested. I may sell a limited number of prototypes ahead of a bigger manufacturing run.
Sounds great, so what's the caveat? Well...the B-series TinyFPGA boards have always used an unconventional BGA fan-out. The iCE40 parts they use have a tiny 0.4mm ball pitch and this makes them very difficult to use without moving to a very expensive PCB process. This is not a problem for their target market of mobile devices, but does present some challenges for hobby FPGA boards.
The new BX boards are able to fan-out significantly more signals due to a change in how the outer pads are shaped on the board. They've been elongated into a pill shape to allow for some inner signals to be routed out. This is not standard and there is a risk that it won't work out.
I believe there are enough regularly shaped pads to align the BGA balls properly over the pill-shaped pads along the perimeter. This self-alignment along with solder paste on the pads will ensure good contact. The pill-shaped pads have the same surface area as the regular pads, but have a longer perimeter. I believe this will increase the surface tension slightly and may pull the package very slightly closer to the PCB. This should be OK since the layout of the elongated pads is very symmetrical. The BGA package should still be pulled down evenly and should retain the self-alignment properties of a regular BGA footprint.
This is partly why I ordered 20 prototype boards fully assembled from my PCBA manufacturer. I should be able to get an idea of the yield based on this small run. I'm feeling pretty good about the chances and am very excited for the prototypes to be delivered. Stay tuned!