As the subject suggests, there is a MOS in a subcircuit which I want to reference it to use it in extracting info during simulation like VDS etc.
Ex. a Mos named N0 is in the instance of the subcircuit named "inst1" which inturn is a part of a bigger subcircuit "Inst2" in the topLevel. So from the topLevel I would reference it like: "Inst2.inst1.XN0.M0". [Final use: .extract label=VDSN0 vds(Inst2.inst1.XN0.M0)]
The prefix of "X" and the suffix ".M0" I am able to obtain by some manipulation of cdf params, but I am stuck in finding the rest of the part (Inst2.Inst1).
If anyone could help, it would be nice.
Thanks and Regards,
It's probably geGetInstHier() that you want - this will tell you the hierarchical path down to the current cellView (from where you started - i.e. this assumes you pushed down through the hierarchy), and then you can add on the info for the selected instance to the end.
In reply to Andrew Beckett:
Thanks a lot. I just tested and I indeed needed exactly this.However, the assumption that the user will descend from the toplevel is obvious, but just in case someone (the user) opens the view separately, isn't there any fancy way to get the names of parent cellView and the parent above etc ?Regards,
In reply to Atul Dwivedi:
There is no information in a cellView to be able to find out what your parent is. You could (conceivably) search through every cellView in all the libraries in your cds.lib to find out any cellView that instantiates you, and then repeat this operation over and over again - this would be very slow, and also the likelihood would be that there are multiple instantiations of the block you've opened, and so how would you know which one was intended?
So it's not a sensible idea.