I'm interested in using FPGAs in my future projects. I wish to get started by soldering the FPGA TQFP chip on a breakout board and build a test circuit on a breadboard. However, I'm having problems trying to find a guide on FPGA board basics. Can anyone recommend a site, book that can help me get into FPGA board design?
This is probably not such a great idea as a way to start out compared to buying an FPGA development board.
TQFP packages are fairly large physically, so will "shadow" much of the breadboard unless you do something odd such as have the PCB vertical. Smaller BGA (and possibly QFN?) packages aren't going to be as much fun to hand solder. For that matter, only a fairly limited selection of FPGAs are even stocked in TQFP by distributors (where FPGA's are concerned, don't go by the configurations theoretically possible on the data sheet, plan based on those that someone lists as in stock and ready to ship)
Most modern FPGAs requires multiple power supply voltages, at least if you want I/O above their 1.2 or 1.8v core voltage. This means multiple power busses to distribute to multiple supply pins spread around the chip, all needing decoupling. And that works better on 4 layer boards than on 2, though it can be done with some care.
You'll spend a lot of time building, rather than learning about the devices before you try to physically instantiate one on a board.
You'll face the simultaneous challenges of an unproven circuit and and an HDL design not yet proven compatible with the hardware details of the chip.
In short, I'd strongly recommend starting with a working board to get some experience (and where you can initially leverage example projects already written for it) and only then doing a custom design.
I actually started the same way, I etched my own simple board for a 64 pin TQFP package from Actel (now MicroSemi) and it was an excellent way to learn the ropes, though it required quite a bit of reading before even starting to layout the board. Luckily it worked first time though.
For FPGA board design, possibly the best resource is the application notes and reference designs provided by the vendor themselves. For example Xilinx have a wealth of material on layout for different packages and families. Here are a few examples:
You have package specific notes like:
If you are starting work with FPGA, it's not going to be easy. I am going to guess that you have had some experience with using an HDL. If you don't I really recommend you get an evaluation kit before going off with making your custom boards. Terasic offers some great cyclone II development kits for a great price. If you are a student you get even further discounts. Check it out here. The CYCLONE boards are the cheaper ones that you would be interested in for learning. The stratix boards are overkill for most hobbyist applications.
In terms of soldering TQFP packages, they can range from easy to hard depending on the method you use. Below are two methods for soldering.
- Stencil Mask Reflow Method: You can use a stencil mask which you can get your board house to provide you. What you do is simple. Place a stencil mask and apply a thin layer of solder paste. Pick and place the parts onto the board and place it in either a reflow oven, hot plate, or an electric skillet following the reflow profile. This method is shown here.
- Hand Solder Method: You can hand solder SMD components. It is difficult with tqfp packages but defiantly possible. You need to ensure that you get a board with a solder mask applied. This will prevent short circuits by preventing solder from bridging between pads. In a nutshell, you apply some solder flux to the area to be soldered, tack the edges of the IC/component you are soldering, and reflow solder onto the board. This method is described in great detail by EEVBlog on youtube here. You should take care and use very thin profile solder so that you don't accidentally put too much solder on the board.
As for learning HDL, well like I said, if you are just starting with it, I STRONGLY RECOMEND getting a development kit and get comfortable with HDL.
One last thing I forgot to mention. Be careful when you do the PCB design. Take the limitations of the board house into account and make sure to properly configure the design rule check in the software you use. I personally recomend that you use Eagle as it is free and relatively easy to use. The free version of Eagle, however limits your board size.
I hope this helps with your project. Feel free to ask more questions if you have any.