12.07.2015 Views

COPYRIGHT 2008, PRINCETON UNIVERSITY PRESS

COPYRIGHT 2008, PRINCETON UNIVERSITY PRESS

COPYRIGHT 2008, PRINCETON UNIVERSITY PRESS

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

260 chapter 10TABLE 10.1Binary-Reversed 0–7DecimalDecimal Binary Reversal Reversal0 000 000 01 001 100 42 010 010 23 011 110 64 100 001 15 101 101 56 110 011 37 111 111 7Binary-Reversed 0–16DecimalDecimal Binary Reversal Reversal0 0000 0000 01 0001 1000 82 0010 0100 43 0011 1100 124 0100 0010 25 0101 1010 106 0110 0110 67 0111 1110 148 1000 0001 19 1001 1001 910 1010 0101 511 1011 1101 1312 1100 0011 313 1101 1011 1114 1110 0111 715 1111 1111 15(easier-to-follow) Java version of it is in Listing 10.2. Its input is N =2 n data to betransformed (FFTs always require 2 N input data). If the number of your input datais not a power of 2, then you can make it so by concatenating some of the initialdata to the end of your input until a power of 2 is obtained; since a DFT is alwaysperiodic, this just starts the period a little earlier. This program assigns complexnumbers at the 16 data pointsy m = m + mi, m =0,...,15, (10.75)reorders the data via bit reversal, and then makes four butterfly operations. Thedata are stored in the array dtr[max][2], with the second subscript denoting realand imaginary parts. We increase speed further by using the 1-D array data to makememory access more direct:data[1] = dtr[0][1], data[2] = dtr[1][1], data[3] = dtr[1][0],... ,−101<strong>COPYRIGHT</strong> <strong>2008</strong>, PRINCET O N UNIVE R S I T Y P R E S SEVALUATION COPY ONLY. NOT FOR USE IN COURSES.ALLpup_06.04 — <strong>2008</strong>/2/15 — Page 260

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!