Altera goes back to 1984, when you could get 720KB on a floppy. After all these years, FPGAs still provide the right mix of being flexible like software while still being fixed and fast like hardware. Why does this cool idea persist in new product designs?
Fortunately the big FPGA vendors, such as Xilinx, have continued to invest in R&D. Innovations from internal genius and acquisitions have resulted in some irresistible features. With Gigabit transceivers, gaming level calculations, and advanced packaging, FPGAs have been advancing like pioneers. FPGAs also benefited from others’ investments. Millions of consumers like me who buy a new computer every year have funded the IC manufacturers while they perfect techniques FPGAs adopt. I have yet to attend a design meeting where the marketing people can dream on the white board more than the FPGA could handle.
Willing and Brilliant Nerds
Designing an FPGA requires the insight to imagine the whole system with fluid boundaries of HW to SW. Designers must have hardware dude discipline, but also software hacker creative problem solving. You have to start with the understanding of clock domains and hard logic, and keep some details like timing. But after that, you have to let go. Trust the compiler to handle the nitty-gritty gate details. This frees up your design energies to redefine the problems by pushing functionality around between blocks, and even sometimes on or off chip. This blend of hardware and software has matured to the point where the right degree at an engineering university is no longer CS or EE but a hybrid. Not all engineers do well thinking in the in-between world of hardware and software, but they are out there.
Since there is a whole layer of detail in FPGA design that is not nailed down as in an ASIC, FPGA design necessarily leans on automation. FPGA synthesis, routing, and Mentor design software combine to manage a huge pile of interacting details and provide users with top level controls and constraints. Your high and mid-level understanding directs built-in rule engines to execute the minutia. Having the capability to reorganize your pin-out, for example, is useless if you don’t have the confidence you are doing it in compliance with all those tables and notes in the 2000 page data sheet. Even better is the automation to kick off an optimization engine to unravel your I/O connections to the board instead of manual pin swap trial and error.
FPGAs Boldly Go
Since there is still money to be made from quickly accomplishing the previously impossible, FPGAs continue to expand into new areas. For over a decade I’ve seen “Experienced FPGA Designer” repeatedly pop up on local most wanted listings and according to this weeks’ job boards that isn’t slowing down. The chips, the software and the talent are all out there. So, be fearless, dream up the impossible, and let FPGAs live up to their reputation.