Why do digital designs often need multiple clock domains?

Status
Not open for further replies.

matrixofdynamism

Advanced Member level 2
Joined
Apr 17, 2011
Messages
593
Helped
24
Reputation
48
Reaction score
23
Trophy points
1,298
Visit site
Activity points
7,681
Digital designs often need multiple clock domains. I once heard of a design that had more than 10 clock domains on a very large FPGA.

One case I have seen of needing multiple clock domains was when I had to use a DDR3 controller in Platform Designer for a design that targeted Intel FPGA.

One more case I came across is where the FPGA was implementing a communication protocol stack and the part that interfaced with the physical medium had to run at a certain frequency for the receiver electronics on the other side to work correctly. In these cases, something outside the FPGA forced the design to contain multiple clock domains.

However, lets assume that there is no external component that forces such a requirement. Why would one need to have multiple clock domains in that case? Does it still happen?
 

You might have multiple same-frequency, different-phase
clocks recovered / reconstructed from serial data input,
whose exact timing is independent of your master clock.
Each of those is its own domain until you "bring it on
board" through some synchronizing logic.
 

Hi,

you say "not coming from an external signal".

So generated inside:
* You may use internal PLL/VCO to generate a modulated RF signal for data transmission
* You may use 2 internal PLLs to generate two (slightly) different frequencies for dedicated undersampling (ADC)
* You may use a PLL to generate a spread spectrum clock

* Usually I call clocks generated by a divider: to be within the same clock domain ... unless you use them as a true new timing reference.

Klaus
 

Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…