world leader in high performance signal processing
Trace:

Differences

This shows you the differences between two versions of the page.

making_the_blackfin_perform [2010/11/29 22:01]
lastman [Example - Dot Product] grammar fixes
making_the_blackfin_perform [2010/11/29 22:08] (current)
lastman [Example - FFT] grammar fixes
Line 113: Line 113:
 ===== Example - FFT ===== ===== Example - FFT =====
  
-Another good example of a of a commonly used function is the [[wp>Fast_Fourier_transform|Fast Fourier Transform]] (FFT). It is an efficient algorithm to compute the discrete Fourier transform (DFT) and its inverse. FFTs are of great importance to a wide variety of applications, from signal processing to solving partial differential equations to algorithms for quickly multiplying large integers.+Another good example of a commonly used function is the [[wp>Fast_Fourier_transform|Fast Fourier Transform]] (FFT). It is an efficient algorithm to compute the discrete Fourier transform (DFT) and its inverse. FFTs are of great importance to a wide variety of applications, from signal processing to solving partial differential equations to algorithms for quickly multiplying large integers.
  
 If <m 10>x = x_0, x_1,{cdots},~x_n</m> of complex numbers, the DFT is:\\ If <m 10>x = x_0, x_1,{cdots},~x_n</m> of complex numbers, the DFT is:\\
Line 122: Line 122:
 There are many ways and algorithms to calculate an FFT, [[wp>Cooley-Tukey_FFT_algorithm|Cooley Tukey]] being one of the most common.  There are many ways and algorithms to calculate an FFT, [[wp>Cooley-Tukey_FFT_algorithm|Cooley Tukey]] being one of the most common. 
  
-A C implementation is show at:? +A C implementation is shown at:? 
 <source trunk/user/blkfin-apps/ndso/src_ndso/int_fft.c:fix_fft() c uclinux-dist> <source trunk/user/blkfin-apps/ndso/src_ndso/int_fft.c:fix_fft() c uclinux-dist>
  
Line 130: Line 130:
 </code> </code>
  
-alternative solution is to use the fft function in the libbfdsp library:+An alternative solution is to use the fft function in the libbfdsp library:
  
 <code c> <code c>
Line 145: Line 145:
 </code> </code>
  
-The two different functions are the functionally equivalent, but from a performance standpoint, it is more than 50x difference. Using the built in functions, take only 18,400 cycles.+The two different functions are functionally equivalent, but from a performance standpoint, there is more than 50x difference. Using the built in function takes only 18,400 cycles.
  
 As another point of reference the following link points to a page which optimizes an FFT with intrinsics and inline assembler. [[example-builtin]] As another point of reference the following link points to a page which optimizes an FFT with intrinsics and inline assembler. [[example-builtin]]