28
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT Speaker: Darcy Tsai Advisor: Prof. An-Yeu Wu Date: 2013/10/31

102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

Embed Size (px)

DESCRIPTION

102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT. Speaker: Darcy Tsai Advisor: Prof. An- Yeu Wu Date: 2013/10/31. Outline. Introduction of Fast Fourier Transform (FFT) DFT/IDFT & FFT/IFFT Flow Graph of FFT Algorithm Hardware Implementation Radix-n FFT Algorithm - PowerPoint PPT Presentation

Citation preview

Page 1: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB

Graduate Institute of Electronics Engineering, NTU

102-1 Under-Graduate ProjectCase Study: Single-path Delay Feedback FFT

Speaker: Darcy TsaiAdvisor: Prof. An-Yeu Wu

Date: 2013/10/31

Page 2: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page2

Outline

Introduction of Fast Fourier Transform (FFT)DFT/IDFT & FFT/IFFTFlow Graph of FFT AlgorithmHardware ImplementationRadix-n FFT Algorithm

System Design FlowFloating Point ModelingFixed Point ModelingSimulation

Page 3: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page3

DFT/IDFT

Definition of Discrete Fourier Transform (DFT) and Inverse DFT (IDFT)

x[n]

Time domain

sequence

X[k]

Frequency domain

spectrum

1

0

][][N

n

knNWnxkX

DFT

10 Nk

IDFT

1

0

][1

][N

n

knNWkXN

nx 10 Nn

Twiddle factor : Nj

N eW2

Page 4: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page4

FFT/IFFT Fast Fourier Transform (FFT) is based on the

concept of “Divide-and-Conquer” The complexity of DFT: N2

The complexity of FFT: Nlog2N

Decimation-in-Time (DIT) FFT Algorithm —

Page 5: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page5

Flow Graph of DIT FFT Algorithm

Pre-processing Post-processing

Page 6: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page6

Flow Graph of DIT FFT Algorithm

Computation: Nlog2N

log2N stages

N N N

Page 7: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page7

Flow Graph of DIT FFT Algorithm

Bit-reverse order Normal order

DFT-4DFT-2

000

100

010

110

001

101

011

111

000

001

010

011

100

101

110

111

[1]

Page 8: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page8

Flow Graph of DIF FFT Algorithm

Bit-reverse order

000

001

010

011

100

101

110

111

000

100

010

110

001

101

011

111

DFT-2DFT-4

[1]

Normal order

Page 9: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page9

Hardware Implementation

Slow ———— Speed ———— Fast

Small ———— Area ———— Large

1

1

1

1

1

1

1

1

1

1

1

1

WN0

WN0

WN0

WN0

WN0

WN2

WN0

WN2

WN0

WN2

WN1

WN3

[ ]0

[ ]4

[ ]2

[ ]6

[ ]1

[ ]5

[ ]3

[ ]7

X [ ]0

X [ ]1

X [ ]2

X [ ]3

X [ ]4

X [ ]5

X [ ]6

X [ ]7

Fully Spread

Complex ———— Control ———— Simple

Reuse of Single Butterfly

Fully Spread

Page 10: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page10

Hardware Implementation

BF2

8

XBF2

4

XBF2

2

XBF2

1

[2]

Page 11: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page11

Radix-4 FFT Algorithm

Radix-4: decimation into 4 groups

Page 12: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page12

BF4

3*64

XBF4

3*16

XBF4

3*4

XBF4

3*1

Radix-2 Single-path Delay Feedback for N=16

BF2

8

XBF2

4

XBF2

2

XBF2

1

Radix-4 Single-path Delay Feedback for N=256

[2]

Page 13: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page13

Radix-n FFT Algorithm

For Radix-n FFT, the complexity is NlognN

Larger N —Less complex multiplierLess stagesMore complex butterfly structure

Designing at algorithm level outperforms othersPipeline, Parallel, Retiming, Folding/Unfolding

Page 14: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page14

Relationship of Radix-4 & Radix-22

BF2i BF2iiBF4

BF2i BF2ii

[2]

Page 15: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page15

Radix-22 Single-path Delay Feedback for N=256

BF2i

128

x(n) BF2ii

64

XBF2i

32

BF2ii

16

BF2i

8

BF2ii

4

XBF2i

2

BF2ii

1

X(k)X

W1(n) W2(n) W3(n)

01234567clk

[2]s

BF2i

0

1

0

1

0

1

0

1

Xr(n)

Xi(n)

Xr(n+N/2)

Xi(n+N/2)

Zr(n)

Zi(n)

Zr(n+N/2)

Zi(n+N/2)

-

-

s t s t s t s t

Xi(n+N/2)

Xr(n+N/2)

ts

BF2ii

0

1

0

1

0

1

0

1

Xr(n)

Xi(n)

Zr(n)

Zi(n)

Zr(n+N/2)

Zi(n+N/2)

±

0

11

0

Page 16: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page16

System Design Flow

MATLABVerilog

MATLAB

Physical Model

Floating Point Model

Optimize

Fixed Point Model

Simulation

Verification

Page 17: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page17

Floating Point Model

Implemented with MATLAB / C codeTranslate physical structure to high level

languageKeep original signal flow intact

Page 18: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page18

Floating Point ModelButterfly(8)Butterfly(16) Butterfly(4) Butterfly(2)

116W

216W

316W

416W6

16W

916W

316W

216W

616W

-j-j

-j-j

-j

-j

-j

-j

)0(x

)1(x

)2(x

)3(x

)4(x

)5(x

)6(x

)7(x

)8(x

)9(x

)15(x

)10(x)11(x

)12(x

)13(x

)14(x

Page 19: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page19

Fixed Point Model Simulate truncation due to limited word-length Dynamic range of input is critical

Ex: Only 3-bit of fractional part

1.422(10) 1.422(10) (floating point)

1.422(10) 1.011011(2) = 1 + 2-2+ 2-3 = 1.375

Input signal are truncated to limited precision Apply truncation where arithmetic is applied after the

multiplier module Twiddle factors are also truncated before introduced

to multiplier

Fixed Point Model of FFT

Page 20: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page20

Fixed Point Model of FFT

316W

116W

216W

316W

416W6

16W

916W

216W

616W

-j-j

-j-j

-j

-j

-j

-j

)0(x

)1(x

)2(x

)3(x

)4(x

)5(x

)6(x

)7(x

)8(x

)9(x

)15(x

)10(x)11(x

)12(x

)13(x

)14(x

Page 21: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page21

Simulation

Parameterize the word-lengths of inputInteger word-lengthFractional word-lengthTwiddle factor word-length

Insert randomly generated floating point input Compare with floating point result from

MATLAB (SQNR computing)

Page 22: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page22

P. 22

Calculation of SQNR

SQNR: Signal-to-Quantization-Noise Ratio

floating-pointalgorithm

fixed pointalgorithm

++

-x(n)

n=1,2,...Ne(n)

y(n)^

y(n)

Page 23: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page23

Optimal set: 2+6 = 8Integer 2 bitsFractional 6 bits

Page 24: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page24

Optimal set: 9+2 = 11Integer 2 bitsTwiddle 9 bits

Page 25: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page25

Optimal set: 9+7 = 15Twiddle 9 bitsFractional 7 bits

Page 26: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page26

Verification

Word-lengths chosen:Integer 2 bitsFractional 7 bitsTwiddle 9 bits

Run multiple random tests (105 times) to ensure we have desired results

Adjust bit lengths to ensure the SQNR 50 if ≧necessary

Page 27: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page27

Fractional 7 bits, Twiddle 9+1 bits

Page 28: 102-1 Under-Graduate Project Case Study: Single-path Delay Feedback FFT

ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU

page28

References

[1] Alan V.Oppenheim, Ronald W. Schafer, “Discrete-time signal processing” 2nd edition.

[2] E.H. Wold and A.M. Despain. “Pipelined and parallel-pipelined FFT processors for VLSI implementation.,” IEEE Trans. Comput., May 1984

[3] Shousheng He and Torkelson, M., “A new approach to pipeline FFT processor,” Proceedings of IPPS '96, 15-19 April 1996, pp766 –770.