Prev: systemc
Next: sqrt(a^2 + b^2) in synthesizable VHDL?
From: Jeremy Ralph on 6 May 2006 15:54 If one wanted to develop an FPGA-based hardware accelerator that could attach to the average PC to process data stored in PC memory what options are there available. Decision factors are: + ease of use (dev kit, user's guide, examples) + ability to move data with minimal load on the host PC + cost + scalability (i.e. ability to upsize RAM and FPGA gates) + ability to instantiate a 32 bit RISC (or equiv) Someone recommended the TI & Altera Cyclone II PCIe dev board, which is said to be available soon. Any other recommendations? Also, what is the best way to move data between PC mem to FPGA? DMA? What transfer rates should one realistically expect? Thanks, Jeremy --- PDTi [ http://www.productive-eda.com ] SpectaReg -- Spec-down code and doc generation for register maps
From: Falk Brunner on 6 May 2006 16:06 Jeremy Ralph schrieb: > If one wanted to develop an FPGA-based hardware accelerator that could > attach to the average PC to process data stored in PC memory what > options are there available. Nice idea, but to beat a nowady CPU (Pentium 4 and Athlon 64 etc.) and a nowadays GPU (Nvidi Gforce whatever-is-uptodate etc.) is hard to achive even with the big guys in the business. (yeah, yeah, special task can be optimized to run faster on FPGA based hardware, but to speed up "normal" PC tasks is difficult) > Decision factors are: > + ease of use (dev kit, user's guide, examples) > + ability to move data with minimal load on the host PC > + cost > + scalability (i.e. ability to upsize RAM and FPGA gates) > + ability to instantiate a 32 bit RISC (or equiv) > Someone recommended the TI & Altera Cyclone II PCIe dev board, which is > said to be available soon. Any other recommendations? > Also, what is the best way to move data between PC mem to FPGA? DMA? Sure. > What transfer rates should one realistically expect? PCI is 133 Mbyte/s max. AGP is 2 GByte/s max. (AFAIK) PCI-Express is nx250 Mbyte/s (with n up to 16) MfG Falk
From: Piotr Wyderski on 6 May 2006 17:38 Jeremy Ralph wrote: > If one wanted to develop an FPGA-based hardware accelerator that could > attach to the average PC to process data stored in PC memory what > options are there available. What could it accelerate? Modern PCs are quite fast beasts... If you couldn't speed things up by a factor of, say, 300%, your device would be useless. Modest improvements by several tens of percents can be neglected -- Moore's law constantly works for you. FPGAs are good for special-purpose tasks, but there are not many such tasks in the realm of PCs. > + ability to instantiate a 32 bit RISC (or equiv) You already have a high-performance CPU on board, why do you need another one? Use your FPGA to do something massively parallel and let the CPU perform the CPU-ish stuff. The high rank Xilinx devices contain one or more PowerPCs for that purpose and that solution seems to be the best possible. > Also, what is the best way to move data between PC mem to FPGA? DMA? DMA is good, there are PCI frontend IP cores available. > What transfer rates should one realistically expect? 132MiB/s when not overclocked. Best regards Piotr Wyderski
From: Jeremy Ralph on 6 May 2006 20:52 Thanks Falk, for the numbers. Any reason why AGP couldn't be used for non-graphics streams? --- PDTi [ http://www.productive-eda.com ] SpectaReg -- Spec-down code and doc generation for register maps
From: Jeremy Ralph on 6 May 2006 21:46
Hi Piotr, Thanks for your response. Please find my comments below: >>>What could it accelerate? Modern PCs are quite fast beasts... >>If you couldn't speed things up by a factor of, say, 300%, your >>device would be useless. Modest improvements by several tens >>of percents can be neglected -- Moore's law constantly works >>for you. FPGAs are good for special-purpose tasks, but there >>are not many such tasks in the realm of PCs. So let's say one was able to demo a 50% performance improvement for some specialized task using FPGA, custom RTL and HAL. Let's say the design is scalable such that with 8X FPGA gates I'd get a 8*50% performance improvement. Yes, FPGAs are costly and can't compare to ASICs... but 50% in an FPGA could mean 400% in an ASIC. Moore's law also holds true for ASICS and FPGAs. >>You already have a high-performance CPU on board, why do you >>need another one? Use your FPGA to do something massively parallel >>and let the CPU perform the CPU-ish stuff. The high rank Xilinx >>devices contain one or more PowerPCs for that purpose and that >>solution seems to be the best possible. If the 32 bit RISC was optimized for some specialized task, then it might make sense to have it alongside a high-performance CPU. For acceleration stuff I don't envision a RISC being too useful. More interested in prototyping some RISC centric soft-IP designs. Hoping to kill two birds with one stone and find a board that can be used for both applications. Cheers, Jeremy --- PDTi [ http://www.productive-eda.com ] SpectaReg -- Spec-down code and doc generation for register maps |