UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Visitor raiatea
Visitor
1,156 Views
Registered: ‎06-01-2015

Clock domain tutorial

Hello,

could someone point me to documentation about multiple clock domain design ? I'm discovering the concept !

 

I'm a beginner, I did some things with a spartan3, basic examples in vhdl, but always with a single clock at 50MHz on the board.

I read that the ram and the multipliers on that fpga could run above 250MHz.

 

How can I create a module (using ram and mult) running at 100MHz with other modules running at 50MHz ?

Any simple VHDL code ?

 

Thank you

 

0 Kudos
3 Replies
Moderator
Moderator
1,148 Views
Registered: ‎09-15-2016

Re: Clock domain tutorial

Hi @raiatea

 

Check this document:

https://www.ece.ucsb.edu/its/bluespec/training/BSV/slides/Lec10_Multiple_Clocks.pdf

 

Regards

Rohit

----------------------------------------------------------------------------------------------
Kindly note- Please mark the Answer as "Accept as solution" if information provided is helpful.

Give Kudos to a post which you think is helpful and reply oriented.
----------------------------------------------------------------------------------------------

 

Regards
Rohit
----------------------------------------------------------------------------------------------
Kindly note- Please mark the Answer as "Accept as solution" if information provided is helpful.

Give Kudos to a post which you think is helpful and reply oriented.
----------------------------------------------------------------------------------------------

0 Kudos
Visitor raiatea
Visitor
1,130 Views
Registered: ‎06-01-2015

Re: Clock domain tutorial

Thank you for the link. Multiple clocks looks widely used in SoCs, but I can't find clear examples.

I looked too at the Timing Closure User Guide ug612, p157

 

I'm thinking about the following :

 

 - use the board clock at 50MHz and a PLL to generate clk0 at 50MHz, and clk2x at 100MHz

 - use clk0 for the modules at 50MHz and clk2x for the module at 100MHz

 - use a synchronous FIFO for crossing the domains

 

Any link to a code example in ISE, Vivado, university program, workshop,

or a book chapter about multiple clock design on FPGA ?

 

Regards

0 Kudos
Teacher drjohnsmith
Teacher
1,108 Views
Registered: ‎07-09-2009

Re: Clock domain tutorial

or you could run everything at 100 mhz, and a clock enable for the slower part of the circuit.

 

<== If this was helpful, please feel free to give Kudos, and close if it answers your question ==>
0 Kudos