7 ms·
FPGAs for Dummies [pdf]
- malanj 12y agoInteresting, they claim a 5x power efficiency for FPGAs over GPUs in Monte Carlo Black-Scholes simulation. http://postimg.org/image/6o52lcgir/ http://postimg.org/image/6o52lcgir/ I wonder if Amazon will start hosting FPGA boosted compute instances anytime soon...
- aylons 12y agoAt Amazon scale, most of the time they could use an FPGA, they would be better served by an ASIC. The only exception I can think of would be if they dynamically implemented different algorithms in a FPGA in a just-in-time model. Or, at least, in a regular basis.
- adamnemecek 12y agoHe's talking about FPGAs for AWS. ASICs would not make sense for that.
- linker3000 12y agoMinor point: The book refers to LEGOs (sic). That will upset the pedants. /Proof readers lose 1 point.
- tryp 12y agoI am truly excited that there is a push to popularize FPGAs. They often allow a fundamentally different approach to problems and afford a massive improvement in efficiency and flexibility when applied to a given task. This book is a very approachable high-level answer to the question "wtf is an fpga and why do I care?" but I'm a bit disappointed that is lacks much direction on where to look next for more depth. I'll take the liberty to suggest a couple possibilities here: http://www.fpga4fun.com/ http://www.fpga4fun.com/ Fpga4Fun is pretty accessible. http://opencores.com/ http://opencores.com/ Opencores is kind of a SourceForge for FPGA stuff. There are lots of interesting components there to mix into a project. nitpick: This is my first encounter with the ASSP (Application-Specific Standard Product) initialism. It seems like a needless distinction from ASIC to me.
- sargun 12y agoFPGAs have finally become used in some compute clouds. Specifically, Microsoft published some work in this space called Catapult: ftp://ftp.cs.utexas.edu/pub/dburger/papers/ISCA14-Catapult.pdf I predict that we'll see FPGAs become in use more often, but there are certain hurdles in both the operational, and programmability model that need to first be solved. Disclaimer: I used to work for MSFT.
- agumonkey 12y agoI second that, the parallella board comes with a Zinq 6000 IIRC, it's amazing to me that you can get a nice FPGA at such low price.
- zvrba 12y agoRelated: eMIPS from Microsoft; a CPU supporting dynamic (run-time) definition of instructions. Runs on a FPGA. http://research.microsoft.com/en-us/projects/emips/default.aspx http://research.microsoft.com/en-us/projects/emips/default.a...
- chuckcode 12y agoI'd love to see a higher level language binding for FPGAs like CUDA for GPUs. I've seen real experts make data fly through an FPGA but it seemed like development was slow (no surprise given 8hrs just to compile) and getting the clocking/pipelining right to run at really high speeds was non-trivial. In contrast using CUDA for GPUs was pretty approachable even for regular developers to get started although it did take expertise to squeeze all of the performance out of them. Hard to beat FPGAs though when you need low latency though...
- oflordal 12y agoI have not tried it myself but both Altera and Xilinx can compile opencl for their FPGAs nowadays
- radikalus 12y agoI've still never really seen any FPGA deployments beyond using them basically as DSPs in finance which is too bad as I would LOVE to play with something that can rip through the generation of stochastic processes quickly.
- asynchronous13 12y agoI've been using an embedded system based on a combination of FPGA and DSP for about ten years now. If I could go back in time and start over, I would ditch the FPGA. The reason I say that is because of the time costs associated with realizing any benefit of an FPGA design. 1) FPGA based design is "future proof", we can use the same hardware to interface with new sensors in the future! Reality: we could spin a new rev of the circuit board faster than we can develop and debug the new interface in the FPGA. 2) everything can done in parallel! Reality: it's faster (development time) to put a soft core CPU on the FPGA and write linear c code to get the job done. When that solution runs fast enough, why spend more time optimizing? Bad FPGA developers are hard to find, good FPGA developers are nearly impossible to find. FPGAs are super cool. For certain niche applications they can't be beat. But most of the time, the development cost is just not worth it.
- vonmoltke 12y agoSounds like the program I used to work on, though we were doing FPGA cards feeding into a small MPI cluster. The only real reason I can think of to use FPGAs in production is that you need ASIC-like functionality, but the total build out isn't worth the cost of taping out an ASIC. On my first program the hardware had several FPGAs and CPLDs for that reason. That design was finalized in 1994, though. Today those chips could be replaced by microcontrollers. As microcontrollers and soft-core processors get more capable, the applications for FPGAs will decrease.
- reportingsjr 12y agoAny time you are dealing with massive amounts of data in a fairly restricted environment (something out in the field) FPGAs are about your only solution. Image processing is really one of the largest and best uses of FPGAs that I have seen. I think they are very overblown for many things though. I'm sure eventually when semiconductor technology slows down (Moore's Law) that FPGAs will start becoming worthwhile for most things simply due to their efficiency. We are still a long way from that though!
- 12y ago
- aniijbod 12y agoFPGAs for dummies? This is FPGAs for dummies (and it's in pure Australian) https://www.youtube.com/watch?v=gUsHwi4M4xE https://www.youtube.com/watch?v=gUsHwi4M4xE