0
\$\begingroup\$

I have seen a number of data sheets of VR devices and many are being powered by FPGAs. Is there any specific reason for this? Why not to use an ASIC or a simple CPU, embedded processor or whatever?

In this article https://www.linkedin.com/pulse/fpga-use-image-processing-applications-virtual-gaming-john-pallazola they fail to elaborate the reason why they are using FPGA for this applications.

\$\endgroup\$
  • 2
    \$\begingroup\$ why not use simple CPU? Anybody who uses the word 'simple' or 'just' in a question has underestimated the requirements by a couple of orders of magnitude! \$\endgroup\$ – Neil_UK Jun 22 '17 at 5:34
  • \$\begingroup\$ Do you have any idea how much development and production of such an ASIC would cost? \$\endgroup\$ – PlasmaHH Jun 22 '17 at 6:57
  • \$\begingroup\$ Using an FPGA is a valid design choice, and only the people who made this choice can really answer your question. We can only guess, and as far as guesses go "because FPGAs are cool" is a perfectly valid answer. \$\endgroup\$ – Dmitry Grigoryev Jun 22 '17 at 7:35
1
\$\begingroup\$

I have seen a number of data sheets of VR devices and many are being powered by FPGAs. Is there any specific reason for this? Why not to use an ASIC or a simple CPU, embedded processor or whatever?

Why not use an ASIC?
A few reasons spring to mind:

Flexibility- An FPGA allows you to completely re-configure your image processing pipe depending on the required task.
Upgrade-ability - These are all fairly new systems for which the requirements are constantly changing. Who is going to want a VR system that may be obsolete when the next idea or improvement comes along, something that can be upgraded has far more chance of staying relevant.
Lead time- An ASIC has a very long design cycle. Great if you know exactly what you'll want a few years in advance, not so good if it may change.
Price - While the unit cost of an asic is low the design cost is huge. That's a big risk to take a long time before your product comes to market. It's far better to use FGPAs while the market is new and can cope with higher unit costs and then once it starts to grow in volume there will be a rush to cost reduce by going to ASICs

All of these basically come down to different ways of saying that in an emerging market flexibility is more important than the best possible unit cost or power consumption.

Why not use a simple CPU or embedded processor?
That one's easy. Speed, speed and speed. A simple CPU or embedded processor is far to slow. A complex CPU is to slow too.

Why do you need a GPU in your computer when you already have a really fast CPU? Because the CPU can do one or two things at a time. The GPU is slower and less flexible but it can do a few hundred copies of the same task at the same time which means it can get the job done faster.

The same is true in this situation, the FPGA may not clock as fast as a CPU but it can more than compensate for that by running hundreds or thousands of things in parallel. What's better: processing one pixel at a time or taking 10 times longer but for a single pixel but being able to do them all at the same time?

So why do VR systems use FPGAs? The same reason that anyone uses a high end FGPA, speed and flexibility.

| improve this answer | |
\$\endgroup\$

Not the answer you're looking for? Browse other questions tagged or ask your own question.