Close

Testing Manufactured Boards

A project log for TinyFPGA B-Series

Low-cost, open-source FPGA boards in a tiny form factor with built-in USB, SPI flash, LDO, and MEMS clock.

luke-valentyLuke Valenty 08/25/2017 at 06:330 Comments

The firmware and hardware of the production programmer/tester for the B-series boards is finished.  This is what I use to program the bootloader onto the SPI flash and test all of the components of the board.  The TinyFPGA B-Series boards have many more components than the #TinyFPGA A-Series boards and there is a lot more that can go wrong.  

During PCB manufacture the final step is electrical test.  The bare PCBs are tested automatically using a machine that probes all of the traces and ensures there are no shorts or opens.  After the board is populated with all of its components further tests must be made.  The connectivity of each of the components must be tested as well as their basic functionality.  This is what the pogo-bed tester firmware currently does:

  1. Test 1.2v and 3.3v levels from the voltage regulators.
  2. Program and read back bootloader bitstream in SPI flash.
  3. Test the clock and PLL by using the PLL to generate a new clock and use a verilog counter to divide the clock into pulses that can be counted by the #Teensy 3.0 & 3.1 & 3.2 & 3.5 & 3.6 microcontroller on the tester.  The PLL needs to be tested because there are external decoupling capacitors on dedicated pins for the FPGA's internal PLL.
  4. Test each of the IO pins to ensure the connection from the through-hole on the board is good all the way to the fabric of the FPGA.

So far all of the boards are passing, however I anticipate there will be some boards that fail due to one reason or another.  Any failing boards will be analyzed and feedback sent to the manufacturer and/or updates made to the PCB layout.

With current progress the hardware is ready to be listed on Tindie for sale, however I will need to make sure there is a getting started guide that can get people up and running with the board quickly.

Discussions