Home > Community > Forums > Custom IC Design > Making a monte carlo simulation component specific

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: *

 Making a monte carlo simulation component specific 

Last post Fri, Aug 1 2014 6:11 AM by Andrew Beckett. 7 replies.
Started by simbamford 25 Feb 2013 02:36 AM. Topic has 7 replies and 1484 views
Page 1 of 1 (8 items)
Sort Posts:
  • Mon, Feb 25 2013 2:36 AM

    Making a monte carlo simulation component specific Reply
    Does anyone know how to specify that for a monte carlo mismatch simulation (presumably using spectre though I also have an ultrasim license), one or two specific transistors will not be subject to mismatch, i.e. will give nominal performance, whilst every other component will be subject to mismatch? Of course it would be convenient if this were possible through the virtuoso inferface, but any method would be useful.Any help gratefully received. 
    • Post Points: 35
  • Mon, Feb 25 2013 8:15 AM

    • smlogan
    • Top 75 Contributor
    • Joined on Tue, Jun 10 2014
    • Posts 105
    • Points 1,800
    Re: Making a monte carlo simulation component specific Reply
    Hi Simbamford,

    There is a transistor parameter mmcflag that is set to 1 when its parameters are to be statistically varied. If it is set to 0, its parameters will not vary. You can set this flag to 0 for those devices whose parameters you do not want to vary.

    Shawn
    • Post Points: 5
  • Mon, Feb 25 2013 8:57 AM

    Re: Making a monte carlo simulation component specific Reply

    In ADE XL (assuming you're using IC61X; there's no UI support for doing what you want in IC5141), on the "Gear" icon next to the Monte Carlo Sampling cyclic choice (also available via Run->Monte Carlo Sampling in the pulldown), there's a button at the bottom of the form called "Specify Instances/Devices". If you bring this up it allows you to specify devices for mismatch - either as an inclusion or exclusion list. It's partly used to allow the mismatch to correlate between multiple tests which have different testbenches, but can also be used for the purpose you describe.

    The mmcflag parameter that Shawn describes must be specific to a particular PDK because it's not a parameter in spectre as far as I know (certainly not for bsim4 or bsim3v3; to be honest, the mismatch variation is handled outside of the model, so I can't see how it would be done in the device model. For a PDK they might choose to multiply the mismatch variations by this flag inside their subckt models, but as I said, that would be PDK-specific).

    Regards,

    Andrew.

    • Post Points: 20
  • Mon, Feb 25 2013 11:43 AM

    • smlogan
    • Top 75 Contributor
    • Joined on Tue, Jun 10 2014
    • Posts 105
    • Points 1,800
    Re: Making a monte carlo simulation component specific Reply
    Andrew is correct. The mmcflag is a PDK specific parameter that has existed for several technologies of CMOS/bipolar PDK from, for example TSMC. If you are using a PDK, you might explore the resulting netlist you are creating to determine if such a parameter exists with your PDK. It facilitates the ability to examine the impact of mismatch variation of a particular - or a set of particular - devices on an output parameter.

    Shawn
    • Post Points: 20
  • Fri, Jun 28 2013 3:25 AM

    • jerry124
    • Not Ranked
    • Joined on Fri, Jun 28 2013
    • Posts 12
    • Points 180
    Re: Making a monte carlo simulation component specific Reply

    I am very new in runing mc simulations, so my question could be "strange". I am runing spectre mc from command line. I would like exclude some instances from mismatch. Is it posible to define  "Specify instances/devices --> specify instance to ignore" in my simulation file?

    • Post Points: 20
  • Fri, Jun 28 2013 6:13 AM

    Re: Making a monte carlo simulation component specific Reply

    Yes. Type "spectre -h montecarlo" and you'll see:

    10      ignore=[...]      If set, no variation is applied to specified subcircuit instances. In
                              addition, all subcircuits instantiated under this instance do not have
                              variation enabled. By default, mismatch is applied to all subcircuit
                              instances in the design and the process is applied globally.

    So you can specify on the montecarlo analysis statement ignore=[I1 I2 I3] etc.

    Andrew.

    • Post Points: 20
  • Fri, Aug 1 2014 6:02 AM

    • yaathrikan
    • Not Ranked
    • Joined on Fri, Aug 1 2014
    • Posts 1
    • Points 20
    Re: Making a monte carlo simulation component specific Reply

     Dear Andrew,

    I am using cadence 5, with UI. In this case how can one turn off the mismatches of an instance or say a particular mos. Other words, how can one see the contribution of this mos to to the total functionality under mismatch simulation.

    Br

    Arun

    • Post Points: 20
  • Fri, Aug 1 2014 6:11 AM

    Re: Making a monte carlo simulation component specific Reply

    Arun,

    There's no support for this in the IC5141 UI. 

    Regards,

    Andrew.

    • Post Points: 5
Page 1 of 1 (8 items)
Sort Posts:
Started by simbamford at 25 Feb 2013 02:36 AM. Topic has 7 replies.