How to make right selection between FPGA and DSP

Sep 16
06:49

2008

Piter

Piter

  • Share this article on Facebook
  • Share this article on Twitter
  • Share this article on Linkedin

Electronic device that helps design engineers to create custom logic for high commutation signal processing & DSP is a CPU for signal processing applications that has been designed to execute signal processing algorithms for which the principle algorithm that is multiply-and-accumulate operation is similar to all other algorithms

mediaimage
EE Times-India | eetindia

FPGA is an electronic device that helps the design engineers to create custom logic for high commutation signal processing and DSP is a CPU for signal processing applications that has been designed to execute signal processing algorithms for which the principle algorithm that is multiply-and-accumulate operation is similar to all other algorithms. In the implementation of DSP (Digital Signal Processor) and FPGA (Field Programmable Gate Array),How to make right selection between FPGA and DSP Articles design engineers focus on various parameters such as: Power Consumption, System Performance, Form Factor, System’s Future Upgrade Ability, Non-Recurring Engineering (NRE) Investment, Bill-of-Materials (BOM) Cost and Project Risk. Generally the engineers know about DSP but not completely aware of FPGA and hence this creates a situation where they need to select any one of them.

These devices are very different from each other and designed to serve different purposes. DSP provide an optimized platform for signal processing algorithms implemented in software whereas FPGA were for glue logic. Nowadays, there are certain applications where both these devices deliver optimum solutions. FPGA is the better choice for networking applications and DSP is at its best in video applications. This example indicates their performance has gone through a remarkable change over the years.

In terms of cost-performance values, DSP and FPGA are compared in three MMAC (Millions of Multiply-Accumulate Operations per Second) performance categories viz. High, Medium and Low.

MMAC is the number of fixed-point-32-bit or single-precision floating-point multiply-and-accumulate operations that can be executed in units of millions per second. The table given below can help the design engineers in making the right selection between DSP and FPGA.

MMAC Category

Device Cost Range

Minimum Cents/MMAC for FPGA

Minimum Cents/MMAC for DSP

High (>1000 MMAC)

$100 to $300

2.9

5.8

$300 to $1000

4.2

13.4

$1000 to $10000

20

-

Medium (300 to 1000 MMAC)

$10 to $30

1.4

1.6

$30 to $100

2.8

3

Low (<300 MMAC)

< $10

-

1.8

For applications with perfor­mance requirements above 1000 MMAC, FPGA/DSP Hybrid solu­tions are often the ideal solution. These applications often include multiple signal processing algo­rithms, some of which have low performance requirements. In such cases, relatively inexpen­sive DSPs can implement the algorithms with low-to-medium performance requirements, leaving the higher-performance algorithms to FPGAs. For designs with MMAC re­quirement below 300 MMAC, DSPs are in general the optimum solution from cost/performance perspective. For designs with MMAC requirement between 300 and 1000 MMAC, the DSP is generally preferable when it comes with application specific resources (such as video/audio ports, ARM processor, etc., as is the case with the DaVinci digi­tal media processors). When a DSP with application specific resources does not exist, other aspects of the design must be considered.

Applications where system architects search for platforms provided by DSP and FPGA such as video ports and other interface connectivity, digital signal processing power, for executing management and controlling tasks are:

  • Digital Cameras

  • Digital Video Recorders

  • Set-top-boxes in video applications

  • Entertainment devices

Beganto Electronic Components