Prev: Narrowband Rician fading
Next: phase of FFT
From: septer012 on 19 Jan 2010 14:28 I am new to FastFT and have to do project at my new job. I have to do a 1024 point FFT. The sample memory is 128k 1024*128 = 131072 There are 131072 samples I am processing. I have figured it out to that I have to do 8 Radix-4 calculations and 1 Radix-2 calculation. 4^8 = 65,536.0 2*4^8 = 131,072.0 I however am unsure about ordering of operations. Is it as simple as?: R4 > R4 > R4 > R4 > R4 > R4 > R4 > R4 > R2 > "Re-order outputs" Any help and or feedback would be really appreciated.
From: Jerry Avins on 19 Jan 2010 15:05 septer012 wrote: > I am new to FastFT and have to do project at my new job. > > I have to do a 1024 point FFT. > The sample memory is 128k > 1024*128 = 131072 > > There are 131072 samples I am processing. > > I have figured it out to that I have to do 8 Radix-4 calculations and 1 > Radix-2 calculation. > 4^8 = 65,536.0 > 2*4^8 = 131,072.0 > > I however am unsure about ordering of operations. > > Is it as simple as?: > > R4 > R4 > R4 > R4 > R4 > R4 > R4 > R4 > R2 > "Re-order outputs" > > Any help and or feedback would be really appreciated. I think you are looking at the problem with some unwarranted assumptions. What benefit do you suppose using two radices confers? Is the sample memory all the memory available to you? In-place FFTs are more difficult than buffer-to-buffer. (I don't know offhand how to program one.) You don't tell us what processor you use, what memory resources (including disk) you have, what your time requirements are, or what language you program in. Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
From: septer012 on 19 Jan 2010 15:53 Sorry, allow me to be more clear. I am doing 2 FFT's. FFT1 is N=1024 FFT2 is N=131072 I am using a TMS320VC33. The SRAM I will have available to me will likely be 256kx32. I am not doing the sampling but the data being sent to me is sampled at 10khz. What I am looking for is near 5kHz for the first FFT I believe I have to do a single Radix-4 computation. for the second FFT I believe I have to do (8) Radix-4's and (1) Radix-2 to cover the number of data points. Is there a specific order I have to handle the cascade? Thank you, Daniel
From: Jerry Avins on 19 Jan 2010 16:05 septer012 wrote: > Sorry, allow me to be more clear. > > I am doing 2 FFT's. > > FFT1 is N=1024 > FFT2 is N=131072 > > I am using a TMS320VC33. A lovely low-power processor. :-) > The SRAM I will have available to me will likely be 256kx32. > I am not doing the sampling but the data being sent to me is sampled at > 10khz. What I am looking for is near 5kHz > > for the first FFT I believe I have to do a single Radix-4 computation. > > for the second FFT I believe I have to do (8) Radix-4's and (1) Radix-2 to > cover the number of data points. Is there a specific order I have to > handle the cascade? We're even; I wasn't clear either. How does the appropriate radix depend on the size of the data set? Aside from working memory, you will need 262.144K to have separate input and output arrays, more than available. So you seem to be constrained to an in-place algorithm. Have you checked TI's application notes? Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
From: septer012 on 19 Jan 2010 16:26
I am receiving 32bit data packets with 24bit data inside. I will convert the 24bit data to 32 bit floating point. The radix-2/4 methods are what I am trying to learn I have no other reason to use them other then the fact that I am using the DSK compiler that came with this old development board. And I really dont know how to use it (environment), let alone if there is an FFT library function and how it works. I barely got it to run and compile and run some code on the board (its fairly old and bad). |