dukepeople.ee.duke.edu/~jmorizio/ece261/f08/projects/fft.pdf · 2008. 12. 9. · company...

30
Duke Complex Multiplier for FFT ECE 261 Project 2008 Team Members: Xuan Bao Xiaoyan Yin Kai Wang Yang Jiang Complex Multiplier for FFT Algorithm

Upload: others

Post on 06-Feb-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

  • Duke

    Complex Multiplier for FFT

    ECE 261 Project 2008

    Team Members:

    Xuan Bao Xiaoyan YinKai Wang Yang Jiang

    Complex Multiplier for FFT Algorithm

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Index

    Brief Introduction1

    Structure implementation2

    Feature Evaluation3

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Brief Introduction to the projectFast Fourier Transform (FFT) is an efficient algorithm to compute the Discrete Fourier Transform (DFT) and its inverse. The algorism is based on a factorization of N as described in Fig.1-1. A 16-point DFT is divided into 4 4-point DFT.

    x0

    x15

    x14

    x13

    x12

    x11

    x10

    x9

    x8

    x7

    x6

    x5

    x4

    x3

    x2

    x1

    X0

    X15

    X11

    X7

    X3

    X14

    X10

    X6

    X2

    X13

    X9

    X5

    X1

    X12

    X8

    X4

    Fig.1-1.

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Brief Introduction to the project

    (A+Bj)(C+Dj)=(AC-BD)+j(AD+BC)

    Fig.1-2.

    Fig.1-2. shows the basic unit used for implementing FFT algorithm, the complex multiplier. The function is

    (A+Bj)(C+Dj)=(AC-BD)+j(AD+BC)

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Brief Introduction to the projectThe top level overview of our design is given as Fig 1-3.

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Index

    Brief Introduction1

    2

    Feature Evaluation3

    Structure Implementation

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Structure Implementation

    Structure consists of…

    FIFO × 6Ripple carry Adder × 1Ripple carry Subtractor × 1Signed Multiplier × 4

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    FIFO Implementation

    SchematicThis is the schematic of one FIFO component. It contains 8 Dflipflops with reset and works as a buffer for both input and output.

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    FIFO Implementation

    This is the digital simulation result of FIFO component. All possible patterns have been exhaustively tested. To make top level testing easier, we then rewrote the verilog for Dflipflop. The key part of codes is shown above.

    Digital Simulation

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    FIFO Implementation

    Layout

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Ripple Carry Adder Implementation

    Halfadder implementation

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Fulladder implementation

    Ripple Carry Adder Implementation

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Ripple Carry Adder Implementation

    8 bit Ripple Carry Adder implementation

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Ripple Carry Adder Implementation

    Layout

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Subtractor Implementation

    8 bit Ripple Carry Subtractor implementation

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Subtractor Implementation

    Layout

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Multiplier Implementation

    Unsigned Multiplication

    Algorithm: shift and addition

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Multiplier Implementation

    Signed Multiplication

    Algorithm we use: Baugh-Woodley technique

    How to modify?

    Need some modifications based on unsigned multiplication.

    Only need a few more full adders and change some AND2 gates to NAND2 gates.

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Multiplier Implementation

    Schematic

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Multiplier ImplementationDigital simulation

    Results: 0*-8=0 -3*-5=15

    -3*3=-9-3*2=-6

    -4*2=-8…

    Realizes the multiplication of input X and Y, with the correct outcome Z=XY, which will be sent to Ripple Carry Adder or Ripple Carry Subtractor to calculate:

    AD+BC & AC-BD

    Consists of:

    Nand2 × 6And2 × 10

    Full Adders × 9Half Adders × 3

    Inv × 1

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Multiplier ImplementationLayout

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    System Implementation

    Schematic

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    (A+Bj)(C+Dj)=(AC-BD)+j(AD+BC)

    Q1= AD+BC

    Q2= AC-BD

    The latency between input and output is one clock cycle

    System Implementation

    Digital Simulation

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    System Implementation

    Layout

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    System Implementation

    Pass DRC & LVS

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Index

    Brief Introduction1

    Structure Implementation2

    Feature Evaluation3

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Feature Evaluation

    Number of transistors

    Area (mm^2)

    Power Consumption:

    Components Totaltransistors

    SUM*1 DIFF*1 MULT*4 FIFO*6

    252 288 434*4 256*6 3812

    2.011*2.416=4.850mm^2

    ( ) ( ) ( )

    2

    2 60.1 3812 12 0.8 / 2 2 / 5 10

    0.0915 /

    P C V f

    m fF m

    mW MHz

    α

    λ μ λ μ

    = ⋅ ⋅ ⋅

    = ⋅ ⋅ ⋅ ⋅ ⋅ ⋅⎡ ⎤⎣ ⎦=

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Feature Evaluation

    Power Consumption:From eldo simulation can get latency in critical path:

    FIFO_latency=1.45833ns

    Multiplier_latency=4.06742ns

    Subtractor_latency=0.933838ns

    So, total latency=1.45833+4.06742+0.933838=6.459588(ns)

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Feature Evaluation

    Power Consumption:So, the maximum frequency is:

    So, power consumption is:

    9

    1 1 155( )_ 6.459588 10

    f MHztotal latency −

    = = =×

    ( ) ( ) ( )

    2

    2 60.1 3812 12 0.8 / 2 2 / 5 10

    0.0915 / 15514

    P C V f

    m fF m

    mW MHz MHzmW

    α

    λ μ λ μ

    = ⋅ ⋅ ⋅

    = ⋅ ⋅ ⋅ ⋅ ⋅ ⋅⎡ ⎤⎣ ⎦= ⋅=

  • www.themegallery.comwww.themegallery.com Company LogoCompany Logo

    Duke

    Feature EvaluationTop-down demonstration of layout. Firstly, the top level. Let’s take a look at the floor plan.

    FIFOFIFO

    FIFO FIFO

    FIFO

    FIFO

    Multipli er

    Multipli er

    Multiplier

    Multiplier

    Sum

    Sub

    Complex Multiplier for FFTIndexBrief Introduction to the projectBrief Introduction to the projectBrief Introduction to the projectIndexStructure ImplementationFIFO ImplementationFIFO ImplementationFIFO ImplementationRipple Carry Adder ImplementationRipple Carry Adder ImplementationRipple Carry Adder ImplementationRipple Carry Adder ImplementationSubtractor ImplementationSubtractor ImplementationMultiplier ImplementationMultiplier ImplementationMultiplier ImplementationMultiplier ImplementationMultiplier ImplementationSystem ImplementationSystem ImplementationSystem ImplementationSystem ImplementationIndex Feature Evaluation Feature Evaluation Feature EvaluationFeature Evaluation