The Designer's Guide Community Forum
https://designers-guide.org/forum/YaBB.pl
Measurements >> Phase Noise and Jitter Measurements >> PLL open loop simulation with Phase Models
https://designers-guide.org/forum/YaBB.pl?num=1200454697

Message started by Mauricio Pardo on Jan 15th, 2008, 7:38pm

Title: PLL open loop simulation with Phase Models
Post by Mauricio Pardo on Jan 15th, 2008, 7:38pm

Hi,

Can anyone give me some advice about how to simulate an open loop PLL (i.e. without closing the VCO output with the corresponding PFD input) without receiving the error message "Zero diagonal found in Jacobian at..."?

I need to know the phase noise performance of a possible mirror of the VCO.

Thanks,

Mauricio.

Title: Re: PLL open loop simulation with Phase Models
Post by Eugene on Jan 15th, 2008, 10:34pm

If you are using a phase domain model you have at least one free integration in your loop. Thus, when you open the loop you are trying to do a DC analysis of a free integration, which of course blows up at DC. You can tame the free integration at DC by placing an initial condition on it but I THINK that also removes the integration from your AC and noise analyses. I would try using VerilogA for the free integration and then exploiting a cool feature of VerilogA that lets you do different things for different analyses. You can write an "if" statement that bypasses the integration during DC analysis but then includes it for AC and noise analyses.

Title: Re: PLL open loop simulation with Phase Models
Post by Mauricio Pardo on Jan 16th, 2008, 2:40pm

Thanks for your response Eugene...

However, I'm new in all the Verilog-A stuff, and I don't know exactly how to bypass the DC analysis. A lot of things come now to my mind... First, the simulator runs a DC analysis although I only select AC analysis? How can be the clause for the if statement (if V = 0)?

I really appreciate if you can guide a lit bit more...

Thanks again for your reply.

Mauricio

Title: Re: PLL open loop simulation with Phase Models
Post by Eugene on Jan 16th, 2008, 7:35pm

There's an example of the"if" statement in the state_space_ave_pfd model in Cadence's pllLib. The path to the pllLib is
...dfII/samples/artist/pllLib

Title: Re: PLL open loop simulation with Phase Models
Post by jimwest on Feb 21st, 2008, 11:48pm


Eugene wrote on Jan 15th, 2008, 10:34pm:
If you are using a phase domain model you have at least one free integration in your loop. Thus, when you open the loop you are trying to do a DC analysis of a free integration, which of course blows up at DC. You can tame the free integration at DC by placing an initial condition on it but I THINK that also removes the integration from your AC and noise analyses. I would try using VerilogA for the free integration and then exploiting a cool feature of VerilogA that lets you do different things for different analyses. You can write an "if" statement that bypasses the integration during DC analysis but then includes it for AC and noise analyses.

To Eugene,
   I'm quite confused how to evaluate a pll with its phase domain model by DC and AC simulation.
Maybe AC can be used as trans in phase domain. But which parameter can we get by DC analysis?

Thanx.

Jim

Title: Re: PLL open loop simulation with Phase Models
Post by Ken Kundert on Feb 22nd, 2008, 12:52am

Perhaps we can go back to the beginning. I see no reason why you are getting a zero diagonal in the Jacobian. Perhaps you can describe more about this situation. Spectre generally tells you where in the circuit the 0 was detected, what did it finger?

-Ken

Title: Re: PLL open loop simulation with Phase Models
Post by Mauricio Pardo on Feb 22nd, 2008, 5:41am

Hi everyone...

All the situation appeared when I disconnected the feedback loop in the PLL (from the VCO to the PFD). What I was trying to do was trying to plot the phase noise of the VCO only to keep the plot in the Waveform Window and then plot the response of the PLL (restoring the feedback connection). Thus, when I try to run the AC and Noise analysis for the first situation, I obtained the message about the zero en the matrix, and the message was indicating the instance of the VCO and also reported the idt0.

Therefore, I conclude that the integration of the VCO was the responsible for the error...  To have my plot as reference, what I dit was to "comment" that statement in the Verilog model.

However, trying with different PLL configurations, once I while the error appears again limiting some of my ideas about alternative PLL configurations. Hence, my question is more directed in the "resulting noise transfer function plot" that an alternative configuration can configurate...  I think that the "comment" strategy does not work here because without the idt statement the loop is broken...

Is there any possible way to remove this situation? Is the error a notice that the PLL configuration that I am trying is weird or impossible to construct?

Thanks to everyone!

Mauricio.  

Title: Re: PLL open loop simulation with Phase Models
Post by Ken Kundert on Feb 22nd, 2008, 11:50am

Are you using behavioral models or transistors?

-Ken

Title: Re: PLL open loop simulation with Phase Models
Post by Mauricio Pardo on Feb 22nd, 2008, 11:56am

Hi Ken,

I am using the behavioral models in Verilog-A. I followed your paper in how to extract the noise characteristics.

Mauricio.

Title: Re: PLL open loop simulation with Phase Models
Post by Ken Kundert on Feb 22nd, 2008, 12:46pm

The problem is that the phase is undefined. You will need some feedback to make this work.

-Ken

The Designer's Guide Community Forum » Powered by YaBB 2.2.2!
YaBB © 2000-2008. All Rights Reserved.