As many people who have experience with FPGA’s can attest, working with them can be very rewarding and satisfying. It can also be incredibly frustrating. Even the most weathered FPGA veterans can sometimes find themselves stuck, and without a clue as to why. Zip CPU has recently released a blog post discussing that particular state of frustration, and how he has managed to return from the depths of despair.
In his in-depth post, he examines three cases where he got stuck when using FPGAs, and how he discovered the source of his frustration. The first project that he was having difficulties with was his ongoing HDMI Video Project. For this, he is using a Nexys Video and is attempting to be able to process the HDMI signals associated with 3D head-sets, such as the Oculus Rift.
In the post, he goes into detail about the symptoms of the issue, as well as how the problem was diagnosed.
He then goes on to illustrate two additional projects in which the issues seemed beyond discovery, and how he used debugging tools (such as the Digital Discovery!) to suss out the problems. He concludes the post with an overall statement regarding his experiences debugging FPGA designs.
In each of these examples, the easiest part of the design to get right was the logic. The hardest part, the part which had sent me to FPGA Hell in the first place, was dealing with those parts and components of my design which I could not simulate. Further, in two out of three of these examples, an external logic analyzer, Digilent’s Digital Discovery, rescued me.
Please make sure to stop by the Zip CPU blog and read the full post, and feel free to share your FPGA experiences in the comments below.