clock multiplier in spartan 2

how to implement a clock multiplier in spartan2 from ref clock. I have input clock of 25 mhz and need to generate 50 Mhz clock.

Thanks

Ashish

Reply to
Ashish
Loading thread data ...

You can use a DLL or DCM for that; You could also search for Peter Alfkes paper 'six easy pieces', chapter 4

--
:wq
^X^Cy^K^X^C^C^C^C
Reply to
Ico

Yes thats simple trick. Thanks for your input.

Reply to
Ashish

Ashish,

If you decide to use the DLL (there is no DCM in Spartan 2) you should be aware that the "lock" output of the DLL will not de-assert after the initial lock, so you need a secondary means of detecting that lock was lost. When the DLL is not locked, the 2x clock output actually runs at 1x the input clock.

The six easy pieces approach will not generate a 50% duty cycle like the DCM.

There's always a trade-off...

Cheers, Gabor

Reply to
Gabor

The 6-easy-pieces XOR design works reliably, but it just generates one pulse on each input transition, irrespective of that transition's direction. Therefore the doubled clock does not have a defined duty cycle, and two adjacent output clocks (or pulses) may have different spacing, as a result of a non-50% input duty cycle. If these limitations are acceptable, it's a nice and simple/cheap way to double the clock frequency, and it works down to as low a frequency as you possibly might want. Peter Alfke, Xilinx

Reply to
Peter Alfke

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.