Utilizing FPGAs correctly in new designs can allow exceptional design flexibility, significant function and feature upgrade paths, design-respin elimination and risk reduction. This paper presents practical FPGA design issues, tradeoffs and solutions distilled from years of design, debug, and integration experience. Topics include FPGA manufacturer and technology overview, an intelligent FPGA design cycle, estimating your FPGA design schedule and device requirements (gate count, speed, I/O count), selecting a manufacturer and device, example design tradeoff matrix, packaging options and trends, BGA design and layout tips, design entry, designing for integration, debug, added functionality, and design fixes, informed I/O pin assignment, partitioning, managing and documenting complex designs, design source and board version control, preparing for the FPGA to ASIC transition, and ten critical design decisions.