Will metastability not occur at the same clock domain?

Discussion in 'VHDL' started by Tsun, Nov 28, 2011.

  1. Tsun

    Tsun

    Joined:
    Nov 28, 2011
    Messages:
    1
    It is known that flip-flop has setup and hold time requirement for signal transition to happen properly. On the other hand, any violation of setup or hold time will cause metastability.

    This is usually discussed in situation when a flip-flop is trying to register an asynchronous input, as discussed in the link below:

    http://www.asic-world.com/tidbits/metastablity.html

    It also suggests using cascaded flip-flops to prevent metastability to occur, according to the "So how do I avoid metastability?" section in the link above. In this case, Wouldn't metastability occur at the second flip-flop? Say at a rising clock edge, if fin(2) is going to change in delta time, it (as an input to the second flip-flop) may not fulfill the hold time and change too early so that the second flip-flop may not register it properly?

    Therefore, shouldn't we use falling clock edge for the first flip-flop, and rising edge for the second flip-flop? So that fin(2) will not change when the second flip-flop is trying to read it?
    Tsun, Nov 28, 2011
    #1
    1. Advertising

  2. Tsun

    jeppe

    Joined:
    Mar 10, 2008
    Messages:
    348
    Location:
    Denmark
    First of all - We like to concider Flop/Flops as digital components - But they are analoque inside and this leads to problems like metastability.

    The metastabile state could be seen as logic "½" and even a bad Flip/Flips (in terms of MTBF) will not be able to clock a logic "½" from the D-input to Q.
    The Q output bound to be either "0" or "1".

    But if you wan't to be sure (for sure) then you could study the book "Digital Design Principles and Practice) by Wakerly.
    In chapter 9, can will you find examples where the original Clk-frequency scaled down - in order to:
    1) Reduce the times per second where metastability can occur.
    2) Metastability will "die" after a few nano or microseconds and hence will the second Flip/Flop allways get a "good" signal.

    This solutions will cost you a counter for downscaling + 2 F/F for the De-Meta-Chain and finaly one F/F in order to synchronize the final signal.
    Last edited: Nov 29, 2011
    jeppe, Nov 29, 2011
    #2
    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. fabbl

    metastability

    fabbl, Jan 16, 2004, in forum: VHDL
    Replies:
    6
    Views:
    870
    fabbl
    Jan 20, 2004
  2. woko

    Metastability or what?

    woko, Sep 2, 2005, in forum: VHDL
    Replies:
    3
    Views:
    1,765
  3. Miguel Dias Moura
    Replies:
    4
    Views:
    443
    Hans Kesting
    May 6, 2004
  4. =?Utf-8?B?UmVkZHk=?=
    Replies:
    0
    Views:
    288
    =?Utf-8?B?UmVkZHk=?=
    Sep 25, 2006
  5. Ardni
    Replies:
    0
    Views:
    919
    Ardni
    Nov 7, 2008
Loading...

Share This Page