( ESNUG 278 Item 9 ) ----------------------------------------------- [1/28/98]

From: Shashi Aluru <saluru@fore.com>
Subject: Synch Problems Across 2 Clock Domains When Freqs Are Close

John,

May be some of your experienced readers can help us out.

In one of our designs we are synchronizing a fifo across 2 clock domains.
The write to the fifo is through one clock & read is through another clock.
We use gray coding scheme and 3 stages of flip-flop to synchronise the write
and read pointers to the fifo.  The problem we are seeing in the lab is when
the 2 oscillators have the same frequency some data is getting lost.  When
the 2 clocks are different frequencies we don't see any problem.

We are suspecting that it is because of meta-stability caused by using 2
clocks of similar frequencies.  The problem cannot be reproduced in
simulations.  The synchronizing circuit looks something like this.

           _______             ______             _______
  in1 --->|D     Q|---------->|D    Q|---------->|D    Q |---> out1
          |       |           |      |           |       | (synchronized)
 wr_clk --|>______|  rd_clk --|>_____|  rd_clk --|>______|  
 

We have similar synchronizing circuits in our earlier ASICs.  Any ideas
as what exactly is happening?

  - Shashi Aluru
    FORE Systems, Inc



 Sign up for the DeepChip newsletter.
Email
 Read what EDA tool users really think.


Feedback About Wiretaps ESNUGs SIGN UP! Downloads Trip Reports Advertise

"Relax. This is a discussion. Anything said here is just one engineer's opinion. Email in your dissenting letter and it'll be published, too."
This Web Site Is Modified Every 2-3 Days
Copyright 1991-2024 John Cooley.  All Rights Reserved.
| Contact John Cooley | Webmaster | Legal | Feedback Form |

   !!!     "It's not a BUG,
  /o o\  /  it's a FEATURE!"
 (  >  )
  \ - / 
  _] [_     (jcooley 1991)