A flip-flop circuit with metastability reduction having two internal flip-flops connected in a parallel configuration relative to an input line with a input data delay connected to the data input of one of the flip-flops. The outputs are combined and since at least one of the flip-flop outputs should be stable, if the output of one of the flip-flop goes into a metastable state, the output of the other flip-flop will stabilize it, thus producing a stable output.
|
1. A flip-flop circuit with metastability reduction comprising:
a first and a second flip-flop circuit connected together in a parallel configuration relative to an input line, each flip-flop circuit having a data input terminal associated with the input line, a clock input terminal, and an output terminal; a input data delay connected to the data input terminal of the first flip-flop circuit; and wherein the output terminal of the first flip-flop circuit is connected to the output terminal of the second flip-flop circuit to form a single circuit output.
6. A flip-flop circuit with metastability reduction comprising:
a first and a second flip-flop circuit, each flip-flop circuit having a data input terminal, a clock input terminal, and an output terminal, the data input terminal of the first flip-flop circuit being connected to the data input terminal of the second flip-flop circuit, the clock terminal of the first flip-flop circuit being connected to the clock terminal of the second flip-flop circuit, and the output terminal of the first flip-flop circuit being connected to the output terminal of the second flip-flop circuit to form a single circuit output; a input data delay connected to the data input terminal of the first flip-flop circuit; and wherein each of the first and second flip-flop circuits produce a flip-flop output signal on their respective output terminal, and wherein at least one of the flip-flop output signals is in a stable state.
3. The flip-flop circuit of
4. The flip-flop circuit of
5. The flip-flop circuit of
7. The flip-flop circuit of
|
The present invention relates generally to flip-flop circuits and more specifically to a circuit for preventing a metastable output state when the data input is asynchronous.
Latching circuits, such as flip-flops, are often used to synchronize signals that are operating at a different frequency than the system clock signal. Synchronous circuits usually require the system clock to define precisely when events can occur. Events can occur once per clock cycle at a specified point in the clock period known as the triggering edge. These circuits perform reliably if the input signals are stable for specified times before and after every triggering edge. These specified times are called the set up and hold times. When the set up and hold conditions are violated, the output response of the flip-flop is uncertain. The output may assume a metastable state in which the output of the digital logic circuit is not at a logic level 1 or a logic level 0, but instead is at an output level between logic level 0 and logic level 1. In asynchronous circuits, this problem occurs quite often. The output goes into a metastable state when the signal being input to the flip-flop undergoes a transition from one logic level to the other simultaneously with the triggering edge of the clock pulse. Once in a metastable state, the output can oscillate for an indefinite time, or suddenly switch after an indefinite time. The output becomes unpredictable and can generate random failures in a digital system.
There have been many attempts in the prior art to eliminate the problem of metastability in latching circuits. For example, U.S. Pat. No. 4,929,850 to Breuninger employs two flip-flops in series to reduce the chance of metastability. There is a timing relationship between the two flip-flops such that the propagation time of the first flip-flop input to its high output level plus the set up time of the second flip-flop must be less than the minimum propagation delay time of the clock between the clock input to the first flip-flop and the clock input to the second flip-flop. Other circuitry, such as described in U.S. Pat. No. 5,789,945 to Cline, and U.S. Pat. No. 5,081,377 to Freyman, aim to reduce length of the metastable state by using a feedback system. Other circuits, such as the circuits described in U.S. Pat. No. 5,489,865 to Colvin, Sr., U.S. Pat. No. 5,999,029 to Nguyen et al., and U.S. Pat. No. 4,999,528 to Keech, attempt to prevent the simultaneous assertion of more than one input signal using a combination of logic gates as pre-filter. The circuit described by U.S. Pat. No. 5,036,221 to Brucculeri et al., tries to eliminate meta-stable event using an edge detector as an early warning signal to disable/reenable the clock input.
It is the object of the present invention to provide a simple circuit to minimize the problem of metastability.
The above object has been met by a flip-flop having metastability reduction. The newly provided flip-flop uses two flip-flops connected in a parallel configuration with an offset or delay connected to the data input of the first flip-flop. The outputs of the two flip-flops are combined and it is expected that this will increase the probability that the output of at least one of the flip-flops will be stable. Thus, when the output of one of the flip-flops goes into a metastable state, the output of the other flip-flop will be stable. When the outputs of the flip-flops are combined, the combined output should follow the output of the stable flip-flop such that the overall output of the circuit is stable. Thus, the effect of the metastability is minimized.
With reference to
With reference to
First, with reference to the operation of the second flip-flop 31, it can be seen that the data signal 41 is initially in a low state. The output signal 43 of the flip-flop 31 is also in a low state. At time (t) equals 3 nanoseconds (ns), the data signal 41 rises to a high state. At the same time, the clock signal 45 is on the rising, or triggering edge. This is the event that causes a metastable signal to occur. As shown, the output signal 43 is in a metastable state 55. In the metastable state, the signal is neither low nor high for an unspecified period of time. Eventually the signal 43 may adjust and become stable by going back into a low state as is shown in the example of FIG. 2. At the next rising edge of the clock signal 45 (at 5 ns), the output signal 43 rises to a high state. At time=7.5 ns, the data signal 41 goes low. The output signal (Q2) 43 stays high until the next rising edge of the clock signal at t=9 ns. Then, the data signal 41 goes high again at about t=9.5 ns. Again, the output signal 43 rises to a high logic level at the next rising edge of the clock signal t=11 ns. Then, the data signal 41 goes low at t=13 ns. Again, this occurs at the triggering edge of the clock signal, which results in the flip-flop output signal 43 going into a metastable state 56. The output signal 43 goes back to a high state and then transitions to a low state at the next triggering edge of the clock (t=15 ns).
Next, the operation of the first flip-flop circuit 30 will be discussed. Again, the delayed data signal ({circumflex over (D)}) 42 is low, and the first flip-flop output signal (Q1) 44 is low. Then at about t=3.5 ns, the data signal ({circumflex over (D)}) 42 goes high. As can be seen the delayed data signal 42 has been shifted so that data transitions do not occur at the same time as the triggering edge of the clock. The output signal 44 remains in the low state 55 and then eventually goes high at the next rising edge of the clock (t=5 ns). The data signal goes low just before t=8 ns and then the output signal goes low at the next triggering edge of the clock 45 (at t=9 ns). Then, the data signal goes high just before t=10 ns and the output signal 44 follows to go to a high state at the next clock edge (t=11 ns). Finally, the data signal goes low at about t=13.25 ns and the output signal 44 follows the data signal by going to a low state when the next triggering edge clock signal occurs at t=15 ns.
With reference to
A diagram illustrating the timing employed in the metastable circuit of the present invention is shown in FIG. 4. The clock signal 83 is shown to have a triggering edge 93 as the clock transitions from a low state to a high state. The data signal 81 is shown to transition from one state (Data 0) to the other logic state (Data 1). In this transition, there is a window 91 in which the signal could cause the output signal to become metastable. The duration of this window is illustrated by the period T 95 which is centered on the triggering edge 93 of the clock signal 91. The delayed data signal 82 is shown to be similar to the data signal 81, except that it is delayed by a small period of time 96. The potential metastable window 92 of the delayed data signal 82 is thus also shifted such that only a portion of the period T' 97 of metastable window 92 is within the period T 95 of the metastable window of the data signal 81. When the two data signals, 81 and 82, are combined, this results in an output signal 84 having a smaller metastable window 94 than either of the metastable windows 91, 92 of either of the data signals 81, 82. Thus, the metastability cancellation circuit of the present invention reduces the metastability window, resulting in a more stable output signal.
Patent | Priority | Assignee | Title |
10868526, | Dec 14 2018 | NXP USA, INC. | Synchronizer with controlled metastability characteristics |
6781429, | Jun 18 2003 | Advanced Micro Devices | Latch circuit with metastability trap and method therefor |
6906555, | Jun 10 2003 | Prevention of metastability in bistable circuits | |
6924682, | Oct 10 2003 | MEDIATEK INC | Latch circuit with metastability trap and method therefor |
7880506, | Mar 03 2009 | ICERA INC | Resolving metastability |
Patent | Priority | Assignee | Title |
4929850, | Sep 17 1987 | Texas Instruments Incorporated | Metastable resistant flip-flop |
4999528, | Nov 14 1989 | Metastable-proof flip-flop | |
5036221, | Mar 31 1989 | Texas Instruments Incorporated; TEXAS INSTRUMENTS INCORPORATED, 13500 NORTH CENTRAL EXPRESSWAY, DALLAS, TEXAS 75265 A CORP OF DE | Circuit for eliminating metastable events associated with a data signal asynchronous to a clock signal |
5081377, | Sep 21 1990 | AT&T Bell Laboratories; American Telephone and Telegraph Company | Latch circuit with reduced metastability |
5250858, | Feb 19 1992 | NXP B V | Double-edge triggered memory device and system |
5489865, | Feb 28 1992 | CREATIVE TECHNOLOGY LTD | Circuit for filtering asynchronous metastability of cross-coupled logic gates |
5789945, | Feb 27 1996 | ST Wireless SA | Method and circuit for improving metastable resolving time in low-power multi-state devices |
5825224, | Jul 29 1996 | Oracle America, Inc | Edge-triggered dual-rail dynamic flip-flop with self-shut-off mechanism |
5999029, | Jun 28 1996 | AVAGO TECHNOLOGIES GENERAL IP SINGAPORE PTE LTD | Meta-hardened flip-flop |
6265923, | Apr 02 2000 | Oracle America, Inc | Dual rail dynamic flip-flop with single evaluation path |
6320442, | Aug 25 1998 | AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED | Dual clock D type flip-flop |
6339345, | Oct 28 1999 | TOSHIBA MEMORY CORPORATION | Semiconductor device equipped with output circuit adjusting duration of high and low levels |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Dec 19 2001 | Neoaxiom Corporation | (assignment on the face of the patent) | / | |||
May 21 2002 | WANG, DAVID Y | NEOAXIOM CORPORATION, A CALIFORNIA CORPORATION | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 012963 | /0287 | |
Dec 23 2004 | Neoaxiom Corporation | Acard Technology Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 015487 | /0131 |
Date | Maintenance Fee Events |
May 12 2006 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
May 17 2006 | R2551: Refund - Payment of Maintenance Fee, 4th Yr, Small Entity. |
May 17 2006 | STOL: Pat Hldr no Longer Claims Small Ent Stat |
Mar 23 2010 | M2552: Payment of Maintenance Fee, 8th Yr, Small Entity. |
Apr 02 2010 | LTOS: Pat Holder Claims Small Entity Status. |
Oct 17 2014 | REM: Maintenance Fee Reminder Mailed. |
Mar 11 2015 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Mar 11 2006 | 4 years fee payment window open |
Sep 11 2006 | 6 months grace period start (w surcharge) |
Mar 11 2007 | patent expiry (for year 4) |
Mar 11 2009 | 2 years to revive unintentionally abandoned end. (for year 4) |
Mar 11 2010 | 8 years fee payment window open |
Sep 11 2010 | 6 months grace period start (w surcharge) |
Mar 11 2011 | patent expiry (for year 8) |
Mar 11 2013 | 2 years to revive unintentionally abandoned end. (for year 8) |
Mar 11 2014 | 12 years fee payment window open |
Sep 11 2014 | 6 months grace period start (w surcharge) |
Mar 11 2015 | patent expiry (for year 12) |
Mar 11 2017 | 2 years to revive unintentionally abandoned end. (for year 12) |