What are FPGAs and what are they good for?
From SeedWiki
Revision as of 17:38, 24 September 2009 by Yoavfreund (Talk | contribs)
- Why FPGAs rather than GPUs - the Energy story.
- On the short time scale - GPUs are good if the memory pattern fits your application, but impossible otherwise. With FPGAs you can design the architecture according to the memory pattern.
- An excellent lecture that explains why the chip industry is moving to multi-core and the challenges that this creates for computer science: [Dave Patterson/ Computer Architecture is Back: Parallel Computing Landscape]
- Clock rates stopped doubling around 2004. Number of transistors on chip is still doubling. You can pack a lot of chips close together if they don't produce too much heat.
- Old paradigm: limited number of transistors, unlimited energy, New paradigm: unlimited number of transistors, limited energy.
- Response time limited applications: interactive displays, experimental image analysis, adaptive routing, high frequency trading.
- The importance of streaming and of minimizing buffering.
- Example problems: detecting changes in video, popping bubbles, detecting C. Elegans.
- Debugging software that is known to make mistakes. The visibility problem.
- The basic arhitecture.
- The tools: EDK, ISE, microblaze, Verilog, System Generator, mercurial.