0 Product(s) to Quote.

Quote Basket / Quote Request

Facebook MySpace Twitter Digg Delicious Stumbleupon Google Bookmarks RSS Feed 

Follow Sundance DSP on twitter
Facebook MySpace Twitter Digg Delicious Stumbleupon Google Bookmarks RSS Feed 


box-left
right-box-corner
Price per Unit (piece): Add to Quote Basket

FC200

Sundance DSP's new fixed point FFT core combines performance and flexibility to offer an off-the-shelf product, which can be easily integrated into many applications. This product can be offered in both source and compiled version depending on the requirements.

Features

  • With a generic and re-configurable architecture, the number of bits of input vector, number of butterfly processors and number of input and output points are easily changeable.
  • By using a Pipeline structure, simultaneous input, parallel processing of most operations, and output (Triple memory FFT Processor) are ensured.
  • 32 to 1024 points (or more) FFT Processors.
  • Up to 32 input bits and up to 16 coefficients bits.
  • Single, double and quad butterfly versions available.
  • Fast operation, 100 clock cycles for 32 points single butterfly and 60 clock cycles for 32 points double butterfly. For instance, if a 32-point FFT core with only one Butterfly processor is used then 100 clock cycle are needed. For the same FFT with 2 butterfly processors the operation will take 60 cycles.
  • The code is in RTL format and no primitives from Xilinx or any other vendor are needed.

Description

A 32-point FFT example is described here to illustrate the operation of this IP core. A 32-point complex inputs with 2 butterfly processors is shown here. The core will receive 32 sets of complex fixed-point inputs serially and will calculate the FFT. Figure 1 depicts the computational architecture, comprising 5 columns and 16 rows. Here all processing is done with only butterfly processors a and b.



Figure 1: Buttefly and processor assignment for FFT Computation

Input and Output signals
Signal Name Mode Description Type Bit Width
FClockInputClock SignalBit1
ResetInputResets the circuitBit1
EnableInputDenotes validity of input dataBit1
OutEnInputShows output data maybe readyBit1
InputRInputReal part of input dataSignedN
InputIInputImaginary part of input dataSignedN
InFullOutputShows overflow in input bufferBit1
OutReadyOutputShows output data is ready to come outBit1
DataValidOutputShows output bus has valid dataBit1
OutputROutputReal part of output dataSignedN
OutputIOutputImaginary part of output dataSignedN

Timing Diagram

As shown in Figure 2, when Enable is active the input ports are supposed to be valid and the input vector is accepted in the input ports. After several clock pulses the output is ready and DataValid signal is activated.



Figure 2: Input and Output timing diagrams

Synthesys and Timing Report

FFT Processor Core Specifications, Synthesized on Xilinx V1000E(-6) FPGA

FFT Points FFT Pointsutterfly Units Input Bits Precision Bits Operation Clock Cycles FPGA Freq(MHz Operation Time (us) CLBs Flip Flops Memory Bits
3211610100V1000E651.538142414652.5k
6411610216V1000E633.428148515455k
12811610476V1000E647.4371564164210k
256116101056V1000E6316.7611583171120k
512116102340V1000E5939.6611671178440k
1024116105160V1000E5987.4571762186080k
322161060V1000E620.967298928342.5k
6421610120V1000E621.935311429925k
12821610252V1000E624.0643275317410k
25621610544V1000E618.9183275330920k
512216101188V1000E5720.8423467345640k
1024216102600V1000E5448.1483603359180k
324161040V1000E600.666662655212.5k
644161072V1000E591.220689358295k
12841610140V1000E592.3727239619010k
25641610288V1000E505.767292644720k
51241610612V1000E51127765675140k
1024416101320V1000E49278031702480k

 

FFT Processor Core Specifications, Synthesized on Xilinx V1000E(-8) FPGA

FFT Points Butterfly Units Input Bits Precision Bits Operation Clock Cycles FPGA Freq (MHz)Operation Time (�s) CLBs FlipFlops Memory Bits
3211610100V1000E871.15142414652.5k
6411610216V1000E842.57148515455k
12811610476V1000E855.61564164210k
256116101056V1000E8412.571583171120k
512116102340V1000E78301671178440k
1024116105160V1000E7866.151762186080k
322161060V1000E830.723298928342.5k
6421610120V1000E831.466311429925k
12821610252V1000E833.0363275317410k
25621610544V1000E816.7163275330920k
512216101188V1000E7615.633467345640k
1024216102600V1000E7236.113603359180k
324161040V1000E800.5662655212.5k
644161072V1000E780.923689358295k
12841610140V1000E781.7957239619010k
25641610288V1000E674.37292644720k
51241610612V1000E6897765675140k
1024416101320V1000E6520.38031702480k

 

Devices

  • Xilinx Virtex-II, Virtex-II Pro, Virtex-4. Amongst Sundance modules, this can be implemented on:
  • SMT398 (Virtex II and ZBT SRAM)
  • SMT338-VP (Virtex-II pro and DDR SDRAM)
  • SMT398-VP (Virtex-II pro and QDRII SDRAM)
  • SMT368 (Virtex-4 and ZBT RAM)
box-bottom
Last Updated: Sunday, 05 February 2012 02:57