1 95-1 under-graduate project mid-term paper reading presentation adviser: prof. an-yeu wu mentor:...
TRANSCRIPT
![Page 1: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/1.jpg)
1
95-1 Under-Graduate ProjectMid-Term Paper Reading Presentation
Adviser: Prof. An-Yeu WuMentor: 詹承洲
第二組溫仁揚 溫昌懌
![Page 2: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/2.jpg)
2
A New Approach to Pipeline FFT Processor
Shousheng He & Mats TorkelsonDepartment of Applied Electronics, Lund University, S-22100 Lund, SWEDE
N
![Page 3: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/3.jpg)
3
Outline What is FFT How to solve FFT by hardware Approaches to Pipeline FFT A closer look to Radix- Simulation by C language Future Work Conclusion Reference
22
![Page 4: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/4.jpg)
4
What is FFT
Discrete Fourier Transform is defined as:
with complexity Fast Fourier Transform (FFT) is an
efficient algorithm which reduced the complexity into
![Page 5: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/5.jpg)
5
What is FFT(cont’d) The Cooly-Tukey algorithm
by symmetry,
Hence, we re-express the size N transform into 2 size N/2 transforms
![Page 6: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/6.jpg)
6
How to Solve FFT by Hardwares
Divide & Conquer
Butterfly
Twiddle Factor
![Page 7: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/7.jpg)
7
W(n) –twiddle factor
Radix-22DIFFFT :
![Page 8: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/8.jpg)
8
Approach to Pipeline FFT R2MDC
R2SDF
R4MDC
R4SDF
![Page 9: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/9.jpg)
9
Approach to Pipeline FFT(cont’d)
R4SDC
Radix-
Still many other approaches, ex:
Radix- , Mixed Radix, Chirp-Z… etc.
22
32
We focus on this structure today
![Page 10: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/10.jpg)
10
A Closer Look to Radix-22x(0)+x(8)[x(0)+x(8)]+[x(4)+(12)]
W(n)
![Page 11: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/11.jpg)
11
A Closer Look to Radix- (cont’d)
22A 256-point model of Radix-
22
The size of register is 2n
W2(n)=e{-j*(n15*(k11+2*k12) )} W3(n)= e{-j*4*n3*(k21+2*k22)}
![Page 12: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/12.jpg)
12
First clks, push inputs into registerfile.
n2
A Closer Look to Radix- (cont’d)
22
n2 12 n
Then start to do thebutterfly.
From +1 clk to next clks, push inputsinto register file 12 n
n2
Then start to do thebutterfly
![Page 13: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/13.jpg)
13
A Closer Look to Radix-22
input
BF2i
Register
BF2ii
Register
W(n)
output
counter
![Page 14: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/14.jpg)
14
Simulation by C language (cont’d)
Main function (A 64 points model)int main(void)
{ ……//declare variables, assign inputsfor(clk=0;clk<=2*N;clk++){ BF2i ( 5,clk>>5 ); //first BF #5 REGIST(5); //first regs BF2ii( 4,clk>>5 ,(clk>>4)%2 ); //second BF #4 REGIST(4); //second regs Zr[0][4] = W2 * Zr[0][4] ; //twiddle factor
} //end of for
//print outputs and make comparison to theoretical value
} //end of main
Do it 3 times with different parameters
![Page 15: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/15.jpg)
15
Simulation by C language (cont’d)
void BF2i(char t,bool s)// 4 inputs which are Xr(n), Xi(n), Xr(n+N/2),
Xi(n+N/2) ,clk signal in the fiqure{ if (s){ Zr[0][t]= Zr[0][t+1]+regr[t][pow(2,t)-1]; Zi[0][t]= Zi[0][t+1]+regi[t][pow(2,t)-1]; Zr[1][t]= regr[t][pow(2,t)-1]-Zr[0][t+1]; Zi[1][t]= regi[t][pow(2,t)-1]-Zi[0][t+1]; }// the vatue of Zs when s==1 else{ Zr[0][t]=regr[t][pow(2,t)-1]; Zi[0][t]=regi[t][pow(2,t)-1]; Zr[1][t]=Zr[0][t+1]; Zi[1][t]=Zi[0][t+1]; }// the value of Zs when s==0 }// end of BF2i
regr[t][2^t-1]regi[t][2^t-1]
Zr[0][t+1]Zi[0][t+1]
Zr[0][t]Zi[0][t]
Zr[1][t]Zi[1][t]
BF2i
![Page 16: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/16.jpg)
16
Simulation by C language (cont’d)
S=0 :
S=1 :
![Page 17: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/17.jpg)
17
Simulation by C language (cont’d)
BF2iivoid BF2ii(char t, bool s, bool g){if(g){ if(s){ Zr[0][t]=regr[t][pow(2,t)-1]+Zr[0][t+1]; Zi[0][t]=regi[t][pow(2,t)-1]+Zi[0][t+1]; Zr[1][t]=regr[t][pow(2,t)-1]-Zr[0][t+1]; Zi[1][t]=regi[t][pow(2,t)-1]-Zi[0][t+1]; } else {
…}
else{ … }}
Zr[0][t+1]Zi[0][t+1]
Zr[1][t]Zi[1][t]
regr[t][2^t-1]regi[t][2^t-1]
Zr[0][t]Zi[0][t]
![Page 18: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/18.jpg)
18
Simulation by C language (cont’d)
g=0:
g=1, s=0,1:
![Page 19: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/19.jpg)
19
Simulation by C language (cont’d)
Register
12 n
void REGIST(char num){ for (char l=pow(2,num-1); l>=1;l--) { // from MSB to LSB regr[num][l]=regr[num][l-1]; regi[num][l]=regi[num][l-1]; } // end of for loop regr[num][0]=Zr[1][num]; regi[num][0]=Zi[1][num];}//end of function
-1 … 1 012 n
Zr[1][num]Zi[1][num]
![Page 20: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/20.jpg)
20
Simulation by C language (cont’d)
Simulation results:
16 points
completed 64 points with error
![Page 21: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/21.jpg)
21
Future Work
Develop more points Perform it in HDL language, ex: Verilo
g Final Presentation
![Page 22: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/22.jpg)
22
Conclusion
Under how to solve FFT by hardware
Develop W(n) to 64 points Construct Radix22 ‘s model C simulation with some faults
![Page 23: 1 95-1 Under-Graduate Project Mid-Term Paper Reading Presentation Adviser: Prof. An-Yeu Wu Mentor: 詹承洲 第二組 溫仁揚 溫昌懌](https://reader036.vdocuments.net/reader036/viewer/2022081503/56649e615503460f94b5d5ee/html5/thumbnails/23.jpg)
23
Reference Shousheng He & Torkelson, M.,”A new approach to pipeline
FFT processor,” Proceedings of IPPS’96, 15-19 April 1996, pp766-770.
Shousheng He & Torkelson, M.,”Designing Pipeline FFT Processor for OFDM (de)Modulation,” Signals, Systems, and Electronics’98 29 Sep-2 Oct 1998,pp 257-262.
施信毓 ,”95-1 Under-Graduate Project, Final Project: single-path Delay Feedback FFT”,04 Oct 2006.
http://www.clecom.co.uk/science/autosignal/help/FFT_Algorithms.htm
http://en.wikipedia.org/ http://zh.wikipedia.org/