cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
fklosters
Newbie
Newbie
5,730 Views
Registered: ‎08-31-2016

MMCM with external feedback clock path

Dear All,

 

I am trying on a MMCM to open the CLKFB loop because it is possible to access the CLKFBOUT and CLKFBIN signals.

Idea is to fix the "CLKFBOUT_MULT_F" to a lower value and add an (external to the MMCM) divider block. The multiplication of both should fulfill the original "CLKFBOUT_MULT_F" and that the VCO is running in its operating range.

 

The issue I see with vivado 2016.2 is that there is a VCO operating range check based on the CLKIN frequency and the M divider. So in my case the message is that the VCO will run too low because the extra divider is not seen.

 

drc23-20.PNG

 

Is there a way to overrule this check so I can fully control the MMCM ?

 

Many thanks in advance.

 

BR

Frank

 

0 Kudos
5 Replies
balkris
Xilinx Employee
Xilinx Employee
5,724 Views
Registered: ‎08-01-2008

check this related post
https://forums.xilinx.com/t5/Design-Tools-Others/Drc-23-20-Rule-violation-PDRC-34-MMCM-adv-ClkFrequency-div-no/td-p/643198
Thanks and Regards
Balkrishan
--------------------------------------------------------------------------------------------
Please mark the post as an answer "Accept as solution" in case it helped resolve your query.
Give kudos in case a post in case it guided to the solution.
0 Kudos
arpansur
Moderator
Moderator
5,718 Views
Registered: ‎07-01-2015

Hi @fklosters,

 

Please keep VCO frequency in the required range given in error message by setting CLKFBOUT_MULT_F, DIVCLK_DIVIDE. You can change the CLKOUT_DEVIDE value to get the required output frequency.

Thanks,
Arpan
----------------------------------------------------------------------------------------------
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.
----------------------------------------------------------------------------------------------
1.JPG
0 Kudos
avrumw
Expert
Expert
5,717 Views
Registered: ‎01-23-2009

I don't think this is a legal configuration.

 

While it doesn't explicitly say this in the 7-series MMCM guide, in previous families it was explicitly stated that the CLKFBIN  must be combinatorially connected to the CLKFBOUT. The only exception (although it is not shown in the 7 series guide either) would be the use of the ODDR on an external clock feedback path in a zero delay buffer (where the ODDR mirrors the clock).

 

There is no provision for an external divider on the CLKFB path, which is why this error check is specifically tied to the M value of the MMCM (only).

 

Now, you could try to downgrade this error message using the

 

set_msg_config -id {[DRC 23-20]} -new_severity "WARNING"

 

But I seem to remember that changing the message priority of a DRC does not allow the tool to continue past it (but you can try).

 

Even if you can overcome the DRC warning, you will be in uncharted territory - the MMCM is not supposed to be used this way. While it may work, there are certainly no guarantees...

 

Avrum

Tags (1)
0 Kudos
gszakacs
Instructor
Instructor
5,709 Views
Registered: ‎08-14-2007

If the net that feeds CLKIN doesn't go anywhere else, you could work around this by creating a generated clock on that net with a higher frequency to fool the tools into getting a valid VCO frequency.

-- Gabor
0 Kudos
fklosters
Newbie
Newbie
5,696 Views
Registered: ‎08-31-2016

Thanks for the reply.

 

Indeed the:

set_msg_config -id {[DRC 23-20]} -new_severity "WARNING"

will not pass and because the error is still there.

 

Only using combinatorial logic will not be possible for what I had in mind.

0 Kudos