Home > Community > Forums > Custom IC Design > Driving an internal node several heirarchical layers down...

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

 Driving an internal node several heirarchical layers down... 

Last post Fri, Mar 14 2014 2:37 PM by Andrew Beckett. 1 replies.
Started by deklein 14 Mar 2014 10:55 AM. Topic has 1 replies and 410 views
Page 1 of 1 (2 items)
Sort Posts:
  • Fri, Mar 14 2014 10:55 AM

    • deklein
    • Not Ranked
    • Joined on Thu, Mar 13 2014
    • Posts 1
    • Points 20
    Driving an internal node several heirarchical layers down... Reply

    All,

    First, an apology. I am new to ADE XL and spectre, coming from hspice and MICA, so if I am asking a really obvious question, please pardon my ignorance. However, in my defence, this is stumping the local ADE XL expert. I have tried various searches of the forums and google without luck. So here goes:

    Suppose I have a schematic with an instance of a cell (A) in it. In this instance, there is another instance of cell (B). Now, futher suppose that to test the recovery of a circuit from a particular un-toward upset, I need to reach through the heirarchy and manipulate the voltage on a net in B that I'll call z. I do not have z as a pin on either B or A, it is simply a labeled wire in B. How do I do this?

    I've tried doing netsets, net expressions, declaring as global nets, etc. but either I am going it wrong, or it isn't working. And, while bringing this net out to a pin and then up through the heirarchy is possible, it would be a very ugly solution and probably cause trouble when this particular block is wrapped up for P&R. That is, the example I give here is very simple. The actual test case not so much.

    I ask because were I running hspice from the command line, I would have a command in the control deck that looked something like this and be done:

    gbreakB    xA.xB.z vss vcr pwl(1) verr gnd 0,1e12 1,1e5 2,1 3,1e-5

    That is, as I sweep verr from 0v -> 3v, I effectively short z to vss, causing the upset condition in B.

    Thanks,

    Dave

    • Post Points: 20
  • Fri, Mar 14 2014 2:37 PM

    Re: Driving an internal node several heirarchical layers down... Reply

    Hi Dave,

    You can do this in spectre too. Simply do:

    vbreak (I1.I2.z vss) vsource type=pulse ...

    in spectre syntax. If you are doing this from a schematic (which is presumably the case) you can use the deepprobe component that I created a few years ago as described in this solution. Since there's no support in the schematic editor for doing an out-of-cellView reference, this component allows you to place a component on your schematic where the parameter is the hierarchical node name; it instantiates an iprobe (a zero-volt source) between that hierarchical node and the pin of the instance - so you can then connect whatever you like down through the hierarchy. Obviously this is for testbench use only - more details in the solution.

    Regards,

    Andrew.

     

    • Post Points: 5
Page 1 of 1 (2 items)
Sort Posts:
Started by deklein at 14 Mar 2014 10:55 AM. Topic has 1 replies.