Pipelining of FPGA code

Discussion in 'VHDL' started by dash82, Nov 30, 2007.

  1. dash82

    dash82 Guest

    Hi,

    I am trying to understand what Pipelined designing/architecture for
    FPGA's mean ?

    I went through documents which list all the benefits of using
    pipelining for FPGA's. But, none of them explicitly explained how
    pipelined architecture was better (efficiency-wise) against a non-
    pipelined architecture. I would'nt generally ask such kind of
    questions in a forum. But going through books and
    searching in Google didnt help me.

    It would help me if someone could point to some article / book /
    example (and
    preferably a Verilog /VHDL based one) which explains pipelining at in
    depth.

    Thanks.

    Shah.
    dash82, Nov 30, 2007
    #1
    1. Advertising

  2. On 30 Nov., 06:06, dash82 <> wrote:
    > I am trying to understand what Pipelined designing/architecture for
    > FPGA's mean ?


    The same as pipelined in any other HW architecture.
    A very basic answer is:
    The calculation of f = A + ((B + C) * D) could be done in one clock
    cycle, which slows down the maximum clock cycle of your device, as the
    longest datapath is through two adders and one multiplier.
    If you pipeline, you add registers in between and use three clock
    cycles to get the result with much faster clock cycles.
    f1 = B+C, f2 = f1 * D, f = A + f2
    The overall speed for one calculation would slow down a bit, as you
    add two register delays and need your clock to be slow enough for the
    slowest part of the operation. If you need this operation done for a
    datastream, you gain each clock cycle after the second one a new value
    for f(t) as f1(t+2) and f2(t+1) is calculated in parallel to f(t).

    bye Thomas
    Thomas Stanka, Nov 30, 2007
    #2
    1. Advertising

  3. Thomas Stanka wrote:
    > On 30 Nov., 06:06, dash82 <> wrote:
    >> I am trying to understand what Pipelined designing/architecture for
    >> FPGA's mean ?

    >
    > The same as pipelined in any other HW architecture.
    > A very basic answer is:
    > The calculation of f = A + ((B + C) * D) could be done in one clock
    > cycle, which slows down the maximum clock cycle of your device, as the
    > longest datapath is through two adders and one multiplier.
    > If you pipeline, you add registers in between and use three clock
    > cycles to get the result with much faster clock cycles.
    > f1 = B+C, f2 = f1 * D, f = A + f2
    > The overall speed for one calculation would slow down a bit, as you
    > add two register delays and need your clock to be slow enough for the
    > slowest part of the operation. If you need this operation done for a
    > datastream, you gain each clock cycle after the second one a new value
    > for f(t) as f1(t+2) and f2(t+1) is calculated in parallel to f(t).
    >

    http://en.wikipedia.org/wiki/Pipelining
    David R Brooks, Nov 30, 2007
    #3
  4. dash82

    dash82 Guest

    On Nov 30, 5:51 pm, David R Brooks <> wrote:
    > Thomas Stanka wrote:
    > > On 30 Nov., 06:06, dash82 <> wrote:
    > >> I am trying to understand what Pipelined designing/architecture for
    > >> FPGA's mean ?

    >
    > > The same as pipelined in any other HW architecture.
    > > A very basic answer is:
    > > The calculation of f = A + ((B + C) * D) could be done in one clock
    > > cycle, which slows down the maximum clock cycle of your device, as the
    > > longest datapath is through two adders and one multiplier.
    > > If you pipeline, you add registers in between and use three clock
    > > cycles to get the result with much faster clock cycles.
    > > f1 = B+C, f2 = f1 * D, f = A + f2
    > > The overall speed for one calculation would slow down a bit, as you
    > > add two register delays and need your clock to be slow enough for the
    > > slowest part of the operation. If you need this operation done for a
    > > datastream, you gain each clock cycle after the second one a new value
    > > for f(t) as f1(t+2) and f2(t+1) is calculated in parallel to f(t).

    >
    > http://en.wikipedia.org/wiki/Pipelining


    Thank you !
    dash82, Dec 2, 2007
    #4
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. koko

    Pipelining in VHDL

    koko, Apr 29, 2004, in forum: VHDL
    Replies:
    2
    Views:
    5,599
    mizocom
    Apr 29, 2004
  2. Vikram
    Replies:
    0
    Views:
    779
    Vikram
    Jul 24, 2008
  3. TheRightInfo

    FPGA BOARD FOR NEWBIE TO FPGA

    TheRightInfo, Feb 2, 2011, in forum: VHDL
    Replies:
    1
    Views:
    1,313
    Tricky
    Feb 2, 2011
  4. Oliver Mattos

    Re: FPGA BOARD FOR NEWBIE TO FPGA

    Oliver Mattos, Feb 2, 2011, in forum: VHDL
    Replies:
    0
    Views:
    1,105
    Oliver Mattos
    Feb 2, 2011
  5. deepthi.reddy.912
    Replies:
    0
    Views:
    1,617
    deepthi.reddy.912
    Apr 18, 2011
Loading...

Share This Page