FPGARelated.com
Books

100 Power Tips For FPGA Designers

Evgeni Stavinov 2011

This book is a collection of short articles on various aspects of FPGA design: synthesis, simulation, porting ASIC designs, floorplanning and timing closure, design methodologies, performance, area and power optimizations, RTL coding, IP core selection, and many others. The book is intended for system architects, design engineers, and students who want to improve their FPGA design skills. Both novice and seasoned logic and hardware engineers can find bits of useful information. This book is written by a practicing FPGA logic designer, and contains a lot of illustrations, code examples, and scripts. Rather than providing information applicable to all FPGA vendors, this book edition focuses on Xilinx Virtex-6 and Spartan-6 FPGA families. Code examples are written in Verilog HDL. All code examples, scripts, and projects provided in the book are available on accompanying website: http://outputlogic.com/100_fpga_power_tips


Why Read This Book

You should read this book if you want a compact, hands‑on compendium of practical tricks and workarounds that experienced FPGA designers use every day. It gives bite‑sized, immediately actionable advice on synthesis, timing closure, floorplanning, power reduction and tool flows — ideal when you need quick solutions rather than long theory.

Who Will Benefit

Practicing FPGA engineers and system architects who already write RTL in Verilog and use Xilinx toolchains, plus students wanting practical, real‑world tips to complement textbook knowledge.

Level: Intermediate — Prerequisites: Basic digital logic and RTL design knowledge, familiarity with Verilog, and hands‑on experience with FPGA toolchains (Xilinx ISE/EDK era tool flow or equivalent).

Get This Book

Key Takeaways

  • Apply Verilog coding idioms that map efficiently to Xilinx fabric to improve timing and area.
  • Use floorplanning and constraint strategies to achieve timing closure on mid‑to‑large designs.
  • Reduce dynamic power through clocking, resource choices and low‑level synthesis options.
  • Leverage synthesis and P&R tool settings, scripts and workarounds specific to Virtex‑6/Spartan‑6.
  • Port ASIC RTL to FPGA with minimal changes by understanding area, clocking and I/O tradeoffs.
  • Set up effective simulation, debug and regression flows including useful scripts and testbench tips.

Topics Covered

  1. Introduction and how to use 100 tips
  2. Synthesis: getting efficient results from the tool
  3. RTL coding styles and Verilog idioms for FPGAs
  4. Constraints, timing analysis and achieving timing closure
  5. Floorplanning and placement strategies
  6. Clocking, clock trees, PLLs/DCMs and latency considerations
  7. Power optimization techniques for FPGA designs
  8. Porting ASIC designs to FPGA platforms
  9. IP selection, integration and bus interfacing
  10. Simulation, verification and useful testbench practices
  11. Scripting, automation and build flow tips (TCL/scripts)
  12. Case studies and worked examples (Virtex‑6 / Spartan‑6)
  13. Appendices: cheat sheets, common pitfalls and references

Languages, Platforms & Tools

VerilogXilinx Virtex-6Xilinx Spartan-6Generic Xilinx FPGA families (pre‑Vivado era)Xilinx ISE / EDK (pre‑Vivado toolchain)ModelSim/ISim (simulation)Synthesis / P&R tools (Xilinx)TCL and small scripting utilities

How It Compares

Compared to Pong P. Chu's "FPGA Prototyping" (hands‑on, tutorial examples), Stavinov's book is shorter, tip‑oriented and practitioner‑focused; compared to Steve Kilts' "FPGA-Based System Design" it is less academic and more about tool tricks and low‑level optimizations.

Related Books