Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

How to pass data b/w Synchronous Domains

Status
Not open for further replies.

spartanthewarrior

Full Member level 2
Joined
Jun 13, 2007
Messages
122
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,296
Activity points
2,142
Hi All,

Can any body tell me

How to pass data between two synchronous domains?

Regards
 

shelby

Full Member level 2
Joined
Jan 4, 2007
Messages
124
Helped
38
Reputation
74
Reaction score
18
Trophy points
1,298
Activity points
2,045
Synchronous domains need to be balanced during CTS. If one frequency is a multiple of another, then the design must ensure the faster domain does not sent data faster than the slower domain can handle.
 

aamir77i

Newbie level 3
Joined
Sep 28, 2007
Messages
4
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,299
people use dual rank synchronizers to pass data. i.e. chain of two flip flops .
 

shitansh

Full Member level 5
Joined
Jan 6, 2009
Messages
296
Helped
50
Reputation
98
Reaction score
28
Trophy points
1,308
Location
India-Gujarat
Activity points
3,019
Hi,

Two flop synchronizer works well if you are sending data form slower clock domain to faster clock domain. In reverse way some data may lost.

so to transfer data from and to either domain handshake synchronization is must.

--
Shitansh Vaghela
 

skyfaye

Member level 5
Joined
Feb 25, 2008
Messages
82
Helped
25
Reputation
50
Reaction score
11
Trophy points
1,288
Activity points
1,876
If it's synchronous and the same frequency, then you don't need to do anything. If it's synchronous but the frequencies are multiple of each other, then you need to stretch the fast clock's signals to match the slow clock's frequency or else you might not be able to latch it correctly.

Some of the responses are for data transfer across an ASYNCHRONOUS clock domains, so you can ignore them.

- Hung
 

pavan.ps

Newbie level 5
Joined
Sep 17, 2008
Messages
9
Helped
1
Reputation
2
Reaction score
0
Trophy points
1,281
Activity points
1,318
Sample the data with the negedge of high sync clk and
use it with the low sync clk

Data rate should be compatible with low sync clk.
 

supercat

Member level 3
Joined
Jun 14, 2010
Messages
57
Helped
5
Reputation
10
Reaction score
1
Trophy points
1,288
Activity points
2,030
skyfaye said:
If it's synchronous and the same frequency, then you don't need to do anything.

It's important to ensure that data is not sampled on or near clock edges where it might change. If two domains have clocks that are "almost" perfectly in sync, you should have data leaving each domain change on the opposite clock edge from where it will be sampled in the other. To minimize "round trip" lag, it may be helpful to, if you can, have the two domains operate on opposite clock edges from each other. That way, the delay when passing between domains would be a half clock rather than a full clock.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Top