Why doesn't anyone use a fpga?

DSP's still do manipulation of waves way more accurately( when trying to replicate an analogy system) then CPU's ( FMA has actually helped CPU's a lot here) but i can still get closer sounds out of my DSP's (line 6 POD and Axe FX).

DSPs often have an accumulator twice the width of word size, ie a 48 bit accumulator for 24 bit samples. However a modern CPU will destroy any DSP running everything in DP floating point, faster *and* with more precision.

The reason your audio sounds better on your dedicated hardware is because the analogue part is much better.

most high end Networking gear is all FPGA's. They used to be custom now all the heavy lifting on the high end platforms is FGPA based.

There are still high performance markets where FPGA's are what the designers are choosing

As Aaron says, low volume, and programmed for a specific task.

Cheers
 
D

As Aaron says, low volume, and programmed for a specific task.

Cheers
hardly low volume, high volume actually. The reasons for FGPA's are around features.


The reason your audio sounds better on your dedicated hardware is because the analogue part is much better.

it enters my computer digital and leaves digital (USB from the same devices ) instead of using there effects i disable them all and pass to other software.
 
Last edited by a moderator:
DSP's still do manipulation of waves way more accurately( when trying to replicate an analogy system) then CPU's ( FMA has actually helped CPU's a lot here) but i can still get closer sounds out of my DSP's (line 6 POD and Axe FX).

Not really. CPUs can give higher accuracy than DSPs. What you are likely running into is 24x24->48b on the DSPs vs 32b ints on CPUs. CPUs can also do 64x64->128 if you want or DP both of which are higher precision.

Both the items you listed are using fairly basic and cheap DSPs which cannot hold a candle to even a modern day cellphone SOC in performance. In both those products, you are actually paying for their form factor/design and their software. The underlying processing hardware is pretty basic.


most high end Networking gear is all FPGA's. They used to be custom now all the heavy lifting on the high end platforms is FGPA based.

They use FPGAs for glue, but most of the heavy lifting (actual switching, inspection, etc) is handled by custom designs. There is some that is all FPGA but that is more time to market than anything or ultra-low volume.

There are still high performance markets where FPGA's are what the designers are choosing

only because the market is so low volume. When you are going to sell say, 1-2K (or an order of magnitude less) of a core switch that is going to be obsolete in 18-24m, you do what you have to to cut NRE. But nothing with actual volume is primarily FPGA. And those tend to have really basic functionality. You generally have to wait for the actual ASIC until you get a lot of the features.
 
hardly low volume, high volume actually. The reasons for FGPA's are around features.

Yes, LOW VOLUME. The networking equipment making heavy use of FPGAs is by definition low volume. All the high volume parts are handled by ASICs (sometimes with some FPGAs acting as glue between different asics). Anything 10Gb and under using primarily FPGAs at this point is very antiquated (I can go boy OTS ASICs to make almost any size 10Gb switch/router at this point, and the 40Gb chips are coming out now).



it enters my computer digital and leaves digital (USB from the same devices ) instead of using there effects i disable them all and pass to other software.

It is likely simply an issue of software. There is nothing in the dig pre-amps that cannot be done with the processing power of a modern smartphone in higher quality.
 
Judging from the wikipedia article on FPGAs (and common sense), it sounds like FPGAs are just not competitive with other technologies for either performance or power consumption.

Perhaps Sony is wanting the ability to patch the PS4 hardware after release in the event of a break on their security infrastructure?
 
They use FPGAs for glue, but most of the heavy lifting (actual switching, inspection, etc) is handled by custom designs. There is some that is all FPGA but that is more time to market than anything or ultra-low volume.
nope all the hardware forwarding tables and surounding logic are in FGPA's, for example Cisco got burnt really badly by draft 802.11n to 802.11n and since then you will find outside of 1gbps interfaces (which tends to be broadcom chips on new hardwarde) all the new hardware pushing new capabilities are FPGA. things that are still up in the air like TRILL or LISP which fundamentally change the way packet forwarding works means that FPGA's offer some nice advantages.



only because the market is so low volume. When you are going to sell say, 1-2K (or an order of magnitude less) of a core switch that is going to be obsolete in 18-24m, you do what you have to to cut NRE. But nothing with actual volume is primarily FPGA. And those tend to have really basic functionality. You generally have to wait for the actual ASIC until you get a lot of the features.

your way off here, but right now im running late for work :oops:
Your numbers are way way way way to low.
 
Judging from the wikipedia article on FPGAs (and common sense), it sounds like FPGAs are just not competitive with other technologies for either performance or power consumption.
They are competitive, for the niche they've staked out for themselves as mentioned about 50 times in this thread by now - low-volume custom designs, and also when prototyping other chips. :)

FPGAs are apparantly generally not competitive as a part of mass-produced gadgets, although it has happened that they appear here and there. There are always exceptions to the rule. If you're making a lot of something, it would be cheaper to implement whatever you're imprinting on the FPGA in a hardwired silicon chip than buying a FPGA first - which is multiple times larger in area than what said hardwired chip would be. Power draw is greater too, as you mentioned, and clock speed might be limited.

Perhaps Sony is wanting the ability to patch the PS4 hardware after release in the event of a break on their security infrastructure?
From a Sony perspective, if the hardware is patchable, what would stop the badguys from patching it and then totally eating your lunch, pirating all your precious softwarez? :D
 
nope all the hardware forwarding tables and surounding logic are in FGPA's, for example Cisco got burnt really badly by draft 802.11n to 802.11n and since then you will find outside of 1gbps interfaces (which tends to be broadcom chips on new hardwarde) all the new hardware pushing new capabilities are FPGA. things that are still up in the air like TRILL or LISP which fundamentally change the way packet forwarding works means that FPGA's offer some nice advantages.

your way off here, but right now im running late for work :oops:
Your numbers are way way way way to low.

Cisco, Juniper and Alcatel-Lucent all have custom network processors in their edge and core routers. That isn't to say they don't use FPGAs as well. Here's an example:

http://www.alcatel-lucent.com/fp3/
 
So you test/prototype a chip on fpga then finalize to ASIC later?

Yes, they can be used that way.

Creating custom ASICs is very expensive, so if you're shipping something that is low volume it can be more cost effective to use an FPGA instead. You can develop FPGA "software" fairly rapidly. Even though FPGAs are expensive as a unit, it works out to be cheaper than designing and fabbing a custom ASIC on a low-volume product.

I remember reading the Sony statement/rumour about including an FPGA or programmable device in their console. I guess the idea is that you have programmable logic that can be reconfigured by an application developer, instead of relying on a fixed function DSP or microprocessor. That way you can customize the logic to help you burn through massively parallel workloads, to get more calculations per clock cycle. Honestly, I think it's a scary idea, and can't see it happening. The last thing I want is a console that has an FPGA that needs to be programmed every time a game boots, not to mention the stability problems they're risking in having developers mess with VHDL or Verilog design. If Sony were to provide an FPGA with a base library of functionality, I think they lose the real benefit of having an FPGA, which is customized capability. It's a stupid idea. I'll trade the questionable flexibility for stability any day of the week.
 
So you test/prototype a chip on fpga then finalize to ASIC later?

They're also often used for small production run devices where making custom silicon doesn't make sense.
For example, I have a CNC motion controller here that uses an FPGA to generate the pulse train that's fed to the stepper drivers. It could be done in software, but the FPGA allows a degree of performance (not talking just speed) in this particular application that would be hard to match, and it's not a price sensitive application.
 
Grall said:
They are competitive, for the niche they've staked out for themselves as mentioned about 50 times in this thread by now - low-volume custom designs, and also when prototyping other chips. :)

Right, that's why I speculated about it being to enable post-sale security patching.

From a Sony perspective, if the hardware is patchable, what would stop the badguys from patching it and then totally eating your lunch, pirating all your precious softwarez? :D

You'd require the patches to be signed, with the signature verified by a small, secure module?

Really, what else could they possibly want with an fpga in mass-market hardware? Are they going to want to be able to reprogram the fpga to switch between ps2, psp, and vita compatibility support? Are they wanting to be able to redesign the HDMI support circuitry to support further evolution of the standard? Do they want to be able to let people plug a Kinnect 2 into the thing later on?

How long does it take to (re)program an fpga, anyway? How many field reconfiguration can typical fpga's sustain? Are we talking 10 times over a console's lifetime, or 10,00?
 
Right, that's why I speculated about it being to enable post-sale security patching.
I honestly cannot think of a way a FPGA would be superior to a simple microcontroller dedicated to security purposes. Cortex-A5 is like 1/4th of a mm^2 on 28nm, add enough dedicated sram and storage that you can implement a proper security policy and you are still below half a mm^2.

Really, what else could they possibly want with an fpga in mass-market hardware?
Good question.

Are they going to want to be able to reprogram the fpga to switch between ps2, psp, and vita compatibility support?
I doubt any reasonable amount of programmable logic would be able to do any of that.

How long does it take to (re)program an fpga, anyway?
Depends a lot on the configuration, how quickly you want to be able to do it, and how much cost and die area you are willing to sacrifice to make it quick. If you don't want to use any sort of persistent storage, and want snappy updates, we are talking about a few hundred milliseconds.

How many field reconfiguration can typical fpga's sustain? Are we talking 10 times over a console's lifetime, or 10,00?
Billions. FPGA is made of cells, which are made of normal transistors. Each cell typically contains a few inputs, 1-bit ALU, programmable Look-Up-Tables, and a little control logic.
Example from Wikipedia:


Programming typically consists of feeding the desired values to the LUTs, selecting the desired operating mode for the ALU, and tying the outputs from some cells to the inputs of other, neighboring cells. Reprogramming is not fundamentally different from the normal operation of CPUs or GPUs.
 
I imagine your 'everything' wasn't all that much, in the big scheme of things. :) Even the now fairly modest and unassuming GPU in the PS3 is what, 550something million trannies? There's not one single FPGA on earth that can model something like that...lest it be one manufactured by space aliens perhaps. :)

Much less the beastly ASICs used in the radeon 5870/geforce 480 series of boards...

To be fair, a lot of the transistors on modern GPUs are used for SRAM and high end FPGAs do have a lot of SRAM blocks, in addition to other hard macros. But the logic capacity probably does still fall far short.
 
You'd require the patches to be signed, with the signature verified by a small, secure module?
...And when your master key leaks (or gets cracked due to being mathematically less-than-ideal) as has(1) happened(2) on(3) occasion(4) in(5) the(6) tech industry, then what?

This is a cat-and-mouse game that can never really be won no matter the efforts taken. Concievably, the more complex and complicated your security mechanism is, the more fragile it will be. KISS, you know? :)
 
I think Next Gen Consoles will become mostly Servers for your other devices, would having a FPGA help with that?
 
Last edited by a moderator:
...And when your master key leaks (or gets cracked due to being mathematically less-than-ideal) as has(1) happened(2) on(3) occasion(4) in(5) the(6) tech industry, then what?

This is a cat-and-mouse game that can never really be won no matter the efforts taken. Concievably, the more complex and complicated your security mechanism is, the more fragile it will be. KISS, you know? :)

I was thinking of GeoHotz' trace-shorting crack of the PS3's hypervisor. An FPGA could perhaps be used to do upgradeable encryption / decryption of data in RAM, for instance?
 
Yes, they can be used that way.

Creating custom ASICs is very expensive, so if you're shipping something that is low volume it can be more cost effective to use an FPGA instead. You can develop FPGA "software" fairly rapidly. Even though FPGAs are expensive as a unit, it works out to be cheaper than designing and fabbing a custom ASIC on a low-volume product.

I remember reading the Sony statement/rumour about including an FPGA or programmable device in their console. I guess the idea is that you have programmable logic that can be reconfigured by an application developer, instead of relying on a fixed function DSP or microprocessor. That way you can customize the logic to help you burn through massively parallel workloads, to get more calculations per clock cycle. Honestly, I think it's a scary idea, and can't see it happening. The last thing I want is a console that has an FPGA that needs to be programmed every time a game boots, not to mention the stability problems they're risking in having developers mess with VHDL or Verilog design. If Sony were to provide an FPGA with a base library of functionality, I think they lose the real benefit of having an FPGA, which is customized capability. It's a stupid idea. I'll trade the questionable flexibility for stability any day of the week.
I agree with this sentiment. I also find it very hard to believe that game developers would get actual access to the FPGA. However, I can see several typeof applications that would benefit from the programmability and parallel computing power of an FPGA. Such as:
  • Image processing, skeleton tracing etc. for new EyeToy/Kinect type of device
  • Image stream encoding for current and upcoming standards such as tranforming stereoscoping streams for n-displays (lenticular displays).
The advantage of having a programmable device for the tasks above are obvious.
 
I agree with this sentiment. I also find it very hard to believe that game developers would get actual access to the FPGA. However, I can see several typeof applications that would benefit from the programmability and parallel computing power of an FPGA. Such as:
  • Image processing, skeleton tracing etc. for new EyeToy/Kinect type of device
  • Image stream encoding for current and upcoming standards such as tranforming stereoscoping streams for n-displays (lenticular displays).
The advantage of having a programmable device for the tasks above are obvious.

Exactly non of those tasks you mentioned would in any way justify the increase in costs the inclusion of an FPGA would add to the console BOM.
When vendors are usually looking for the cheapest solution they can possibly get away with for the tasks above (either tiny, cheap dedicated HW, some extra logic on the the CPU/GPU die or just do it in software...) I don't think you have much of a case for a scenario where using FPGA would be considered a useful alternative.

In fact just about the only place I can see there being some kind of use for it would be hardware security.

However given the fact that console security breaches this generation have barely made a dent in hardware & software sales a solution like this would probably be considered overkill.
 
Exactly non of those tasks you mentioned would in any way justify the increase in costs the inclusion of an FPGA would add to the console BOM.
When vendors are usually looking for the cheapest solution they can possibly get away with for the tasks above (either tiny, cheap dedicated HW, some extra logic on the the CPU/GPU die or just do it in software...) I don't think you have much of a case for a scenario where using FPGA would be considered a useful alternative.

FPGAs don´t need to cost an arm and a leg. Just take Xilinx new Zync series on 28 nm with integrated ARM cores, a pretty bleeding edge FPGA in my opinion. It´s planned to be in the $15 range, it´s even aimed at the automotive industry.
http://www.fpgagurus.edn.com/blog/fpga-gurus-blog/xilinx-christens-zynq-7000-family-embedded-arm

Next thing you are telling me is that the automotive industry isn´t cost sensitive. :p
 
Back
Top