OpenCores
no use no use 1/1 no use no use
Clock Domain Crossing
by sunith on May 21, 2013
sunith
Posts: 1
Joined: Jun 1, 2012
Last seen: Aug 12, 2013
in asynchronous fifo if one clock domain is writing at 100MHz and other clock domain reading at 10MHz, how to synchronize them.
RE: Clock Domain Crossing
by Jezmo on May 21, 2013
Jezmo
Posts: 8
Joined: Apr 10, 2010
Last seen: Nov 21, 2013
this is nothing to do with clock domain crossing, its you writing data 10 x faster than its being read, what do you imagine is going to happen?
Fifos are not magic, you still need some form of flow control to stop the fifo from becoming full.
RE: Clock Domain Crossing
by kuzmi4 on May 31, 2013
kuzmi4
Posts: 45
Joined: Aug 1, 2008
Last seen: Nov 3, 2021
2 sunith
besides flow control you will need also gray-counters
RE: Clock Domain Crossing
by eteam on May 31, 2013
eteam
Posts: 32
Joined: Jun 5, 2009
Last seen: Mar 25, 2016
There are many possible implementations of an async FIFO. Some use grey counters, some do not. Understand and solve the basic problem of clock domain crossing, first, and proceed from there.
besides flow control you will need also gray-counters
RE: Clock Domain Crossing
by kkp on Mar 12, 2017
kkp
Posts: 1
Joined: Mar 27, 2014
Last seen: Aug 27, 2023
in asynchronous fifo if one clock domain is writing at 100MHz and other clock domain reading at 10MHz, how to synchronize them.
RE: Clock Domain Crossing
by dgisselq on Mar 13, 2017
dgisselq
Posts: 247
Joined: Feb 20, 2015
Last seen: Jul 15, 2022
Clifford Cummings wrote a wonderful document on how to do clock domain crossings. I just found it (again) here.

My favorite way of handling crossings across a FIFO is to send a "half-full" wire. You might be successful synchronizing this with a closed loop solution, such as section 4.5 of the document describes. On the other hand, FIFOs tend to be well behaved, so you might find the open loop synchronizer on this half-full wire to be sufficient.

Just some thoughts for you,
Dan

no use no use 1/1 no use no use
© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.