Home > Community > Forums > Custom IC SKILL > OCEAN script that identifies max settings

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

 OCEAN script that identifies max settings 

Last post Sun, Nov 13 2011 11:20 PM by Adrian P. 5 replies.
Started by Adrian P 09 Nov 2011 10:36 PM. Topic has 5 replies and 2096 views
Page 1 of 1 (6 items)
Sort Posts:
  • Wed, Nov 9 2011 10:36 PM

    • Adrian P
    • Not Ranked
    • Joined on Thu, Jan 1 2009
    • Posts 4
    • Points 50
    OCEAN script that identifies max settings Reply
    Hello,

    I am a student new to OCEAN. I am trying to optimize the gain of a multi-stage differential amplifier by finding the best combination of transistor parameters and biasing voltages. So far I have been using the following two approaches:

    1) a. Run a parametric analysis of multiple variables using ADE
    b. Plot gain of all outputs on a single graph
    c. Visually identify the best curve and look at what combination of parameters produced it.

    2) a. Run an OCEAN script that does the same parametric analysis and writes the output to a text document
    b. Take the text document and extract the data
    c. Analyze the data in MATLAB to identify the best curve and the settings that produced it

    Ideally, I would like my OCEAN script to identify the max gain, and more importantly the settings that produced it. I know that the max command could be used to determine the max gain, but I can't figure out how to get the settings that produced the max. Any suggestions?

    Thanks!


    Here is the script I am referring to in approach 2) :

    simulator('spectre)
    design("/home/po/pope0828/simulation/ocean_testing/spectre/schematic/netlist/netlist")
    resultsDir("/home/po/pope0828/simulation/ocean_testing/spectre/schematic")
    modelFile('("/home/mo/morris/g045/gpdk045/../models/spectre/gpdk045.scs" "mc"))

    analysis('ac ?start "1M" ?stop "100M" )

    desVar("width" 200n)
    desVar("fingers" 1)
    desVar("voltage_a" 1.1)
    desVar("voltage_b" 1.1)

    temp(27)

    paramAnalysis("width" ?values '(1.5e-07 1.6e-07 1.7e-07 1.8e-07 1.9e-07 1e-06) paramAnalysis("fingers" ?values '(1 2 3 4 5 6 7 8 9 10) paramAnalysis("voltage_a" ?values '(0.6 0.7 0.8 0.9 1.0 1.1 1.2) paramAnalysis("voltage_b" ?values '(0.6 0.7 0.8 0.9 1.0 1.1 1.2)))))

    paramRun()

    ocnPrint( ?output "./myoutput.txt" db20(VF("/net08")/VF("/net7")) ?precision 16 ?numberNotation 'scientific ?from 1M ?to 100M ?step 1M )
    • Post Points: 20
  • Thu, Nov 10 2011 12:49 AM

    • ebecheto
    • Top 200 Contributor
    • Joined on Fri, Oct 10 2008
    • Villeurbanne, Rhone
    • Posts 40
    • Points 725
    Re: OCEAN script that identifies max settings Reply

     Since VF("/net08")/VF("/net7") is a set of complex values, you just need to do :

    ymax(mag(VF("/net08")/VF("/net7")))

    I think you don't need more. But if you do,  ask for more

    • Post Points: 20
  • Thu, Nov 10 2011 7:19 PM

    • Adrian P
    • Not Ranked
    • Joined on Thu, Jan 1 2009
    • Posts 4
    • Points 50
    Re: OCEAN script that identifies max settings Reply
    Thanks for the response ebecheto.

    When I use the ymax command it finds the maximum value which is very useful, but it does not give me the settings that produced that maximum value. Ideally, I would like to know the maximum value and the settings that produced it.
    • Post Points: 20
  • Fri, Nov 11 2011 7:16 AM

    Re: OCEAN script that identifies max settings Reply

    Perhaps xmax is what you want then? (note, I did not read through your entire question)

    Andrew.

    • Post Points: 20
  • Fri, Nov 11 2011 11:43 AM

    • Adrian P
    • Not Ranked
    • Joined on Thu, Jan 1 2009
    • Posts 4
    • Points 50
    Re: OCEAN script that identifies max settings Reply

    Thank you Andrew.

     I will experiment with xmax over the weekend and report back.

    • Post Points: 5
  • Sun, Nov 13 2011 11:20 PM

    • Adrian P
    • Not Ranked
    • Joined on Thu, Jan 1 2009
    • Posts 4
    • Points 50
    Re: OCEAN script that identifies max settings Reply

    It turned out that I needed to use combinations of ymax(xmax(xmax(wave))) to get the different parameter values that proudeced the maximum.

    Thanks guys.

    • Post Points: 5
Page 1 of 1 (6 items)
Sort Posts:
Started by Adrian P at 09 Nov 2011 10:36 PM. Topic has 5 replies.