I want to make an ac model which has got sample and hold (zero-order). I found the block, zvcvs, for that. Can somebody suggest the suitable parameters' values to implement that.
I tried Polynomial argument = z or inversez
S to Z Transformation = default (I assume it means none)
Specification type = polynomial
And then I tried various polynomails (order 1 or 2) to get sample-and-hold fft output for a simple wideband spectrum signal-input but seems I am doing something somewhere wrong. I am not very good at digital and z and bilinear transforms, so I think the capability is there but somehow I am not able to implement it using zvcvs. Can somebody please help me with it - implementing sample and zero-order hold using zvcvs.
That's interesting - I am trying to use a zvcvs in a PLL model and it doesn't do what I assumed it would do!
I hope someone will be along soon ...
In reply to keble6:
In reply to agaurav:
If you are not getting an answer on the forum, I recommend contacting Cadence Customer Support at http://support.cadence.com and filing a Service Request.
Sr. Staff Support AE, Global Customer Support
Cadence Design Systems, Inc.
In reply to Tawna:
You can do an implementation of 1/(1-z^-1) by using:
//vsin (samp 0) vsource type=sine ampl=1 freq=20kr1 (samp 0) resistor r=1ksh (hold 0 samp 0) zvcvs ts=1u numer= denom=[1 -1] r2 (hold 0) resistor r=1ktran tran stop=3/20k
For example. Note that you can't simulate this in an "ac" analysis - this doesn't make any sense. And you can't simulate this with pss/pac (which might make some sense because it has a periodic operating point) because the z-domain controlled sources are not supported in the Shooting Newton method because they have "hidden states". It's not clear to me if that's what you wanted anyway...
In reply to Andrew Beckett:
Both ac and noise analyses perform a small-signal analysis around a DC operating point. For any circuit with periodic behaviour, simulating around a DC operating point is not terribly useful - it's not wrong, but almost certainly not what you're looking for. For example, if you have a switch capacitor filter, simulating the noise around a particular bias point, with some of the switches open and some closed will not tell you anything very useful - because you really need the time-averaged response, not the response about a single DC operating point. That's what pss/pac or pss/pnoise give you - the pss captures a periodic steady state (i.e. a periodic operating point) and then the small signal analysis gives you a time-averaged small-signal response over that period.
The same is true if you use a zvcvs - a single bias point is meaningless. It shouldn't error out - in the same way as it shouldn't error out if you try to analyse a circuit which relies on periodic behaviour in ac/noise. It does however error out if you try to analyse it using pss because the component has some internal "state" storage which is not visible to the PSS solver. The way you'd have to solve that is by using a suitable Verilog-A model as outlined in this paper on Hidden States.
I'm not sure what your question is from the above? I've explained why what you're trying to do doesn't make sense with a zvcvs.
If you had a laplace representation you could use svcvs, in which case all would be OK (because these do not require periodic behaviour). Maybe that's what you want? But if you really want a sample-and-hold, you'll have to use a Verilog-A based approach and use PSS and corresponding small-signal analyses. Or use the real circuit (and PSS)