It is my first time trying to use pz analysis tool in IC514, so I created a very simple testbench including a simple miller OTA and an ideal svsvs having 1 pole. I got some issues and 3 points to be enlightened :
- First, when there is only the svcvs in the testbench, the pz summary give the expected result (only one pole). However, when I add the miller OTA in the testbench, the pz summary for the same svcvs give a lot of pole and zero (more than 20) additionnal to the expected pole. However, I noticed that most of them cancel each others. My question is why this happen, even if the only common node between th 2 blocks is VSS ?
- hence, the second question is how can I display only the pole and zero that are not cancelled ?
- Third, how to define the right component eval freq, as the MOS are frequency dependent component and the result varies with the eval freq I specify?
The pz analysis has an option to do pole-zero cancellation, and you can specify the absdiff/reldiff parameters to control how close they are before cancellation. See "spectre -h pz" for more details.
Note that the component evaluation frequency is for devices where the component value is frequency dependent. That is for things like transmission lines - just because the impedance changes with frequency does not make the evaluation frequency important. Most of the time the evaluation frequency is not important.