Home > Community > Forums > Custom IC SKILL > pcell parameter order

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

 pcell parameter order 

Last post Thu, May 31 2012 12:01 PM by Yaosan Yeo. 3 replies.
Started by Yaosan Yeo 30 May 2012 03:02 PM. Topic has 3 replies and 1415 views
Page 1 of 1 (4 items)
Sort Posts:
  • Wed, May 30 2012 3:02 PM

    • Yaosan Yeo
    • Top 500 Contributor
    • Joined on Thu, Feb 9 2012
    • Toronto, Ontario
    • Posts 22
    • Points 335
    pcell parameter order Reply
    I used the GUI based method to create a pcell. When I use it in my layout, the parameters seem to be in random order. Is there an easy way to arrange them in a specific order e.g. alphabetically?
    • Post Points: 35
  • Wed, May 30 2012 3:04 PM

    Re: pcell parameter order Reply

     Yes, define CDF for the component. Then you can alter the order and prompts to whatever you want.

    Andrew.

    • Post Points: 20
  • Wed, May 30 2012 3:07 PM

    • skillUser
    • Top 10 Contributor
    • Joined on Fri, Sep 19 2008
    • Austin, TX
    • Posts 2,571
    • Points 15,610
    Re: pcell parameter order Reply

    Hi Yaosan,

    CDF parameters are normally listed in the order that they were created or added, so I presume that you didn't create CDF?

    Hope it helps!

    Lawrence.

    • Post Points: 5
  • Thu, May 31 2012 12:01 PM

    • Yaosan Yeo
    • Top 500 Contributor
    • Joined on Thu, Feb 9 2012
    • Toronto, Ontario
    • Posts 22
    • Points 335
    Re: pcell parameter order Reply

    Thanks Andrew and Lawrence, defining CDF solves my problem.

    I used some SKILL code to generate the initial CDF from the pcell's parameters, then I used the Edit CDF GUI to set the parameter's order, which works perfectly.

    procedure( ysGenPcellCDF(libName cellName viewName)
    let( ( cellView p params cdf )
    cellView = dbOpenCellViewByType( libName cellName viewName )

    ; get list of parameters
    unless( p = car( exists( prop cellView->prop prop->name == "parameters" ) )
    error( "No parameters found for '%s:%s' in '%s'" cellName viewName libName )
    )

    params = p->prop

    when( cdf = cdfGetCellCDF( ddGetObj( libName cellName ) )
    cdfDeleteCDF(cdf) ; remove old CDF
    )

    cdf = cdfCreateBaseCellCDF( ddGetObj( libName cellName ) )

    foreach( param params
    cdfCreateParam( cdf
    ?name param->name
    ?type lowerCase(param->valueType)
    ?prompt param->name
    ?defValue param->value
    )
    )
    ))

    • Post Points: 5
Page 1 of 1 (4 items)
Sort Posts:
Started by Yaosan Yeo at 30 May 2012 03:02 PM. Topic has 3 replies.