Component Description Format

Discussion in 'Cadence' started by Shankar, Apr 17, 2006.

  1. Shankar

    Shankar Guest

    Hi All,
    I want to generate a set of pcells, for which some of the
    parameter options i wanted it to be in pre defined cyclic fields. I
    have few questions regarding this

    1. I have given an example of the CDF file. Is the format right?
    2. Do i have to load CDF file for every cell used in the library?
    3. How do i use this parameter variable in my actual pcell_Skill file?
    4. What is the procedure of loading the CDF and pcell file in a cadence
    session


    /****************************************************/
    loadi "/user/shankar/Skill/cdfLoad"
    LIBRARY = "test_pcells"
    CELL = "nmoslv"
    /****************************************************/

    let( ( libId cellId cdfId )
    unless( cellId = ddGetObj( LIBRARY CELL )
    error( "Could not get cell %s." CELL )
    )
    when( cdfId = cdfGetBaseCellCDF( cellId )
    cdfDeleteCDF( cdfId )
    )
    cdfId = cdfCreateBaseCellCDF( cellId )

    ;;; Parameters
    cdfCreateParam( cdfId
    ?name "backgate"
    ?prompt "Backgate Contact"
    ?defValue "none"
    ?choices '("none" "butting" "non-butting" "dual butting"
    "dual non-butting" )
    ?type "cyclic"
    )
    cdfId->formInitProc = ""
    cdfId->doneProc = ""
    cdfId->buttonFieldWidth = 340
    cdfId->fieldHeight = 35
    cdfId->fieldWidth = 350
    cdfId->promptWidth = 175
    cdfId->cell = "nmoslv"
    cdfSaveCDF( cdfId )
    )


    Please help me in sorting out the issues

    Rgds,
    Shankar
     
    Shankar, Apr 17, 2006
    #1
  2. Shankar

    S. Badel Guest

    1. I have given an example of the CDF file. Is the format right?

    Yep it looks fine.
    Hmm, not sure what you mean here. You have to run this code once for each cell.
    (With the correct values for LIBRARY and CELL variable at the top of the file)
    Just like any pcell parameter.
    - load any skill code required by your pcell.
    - create the pcell using pcDefinePCell() code.
    - create the CDF using code similar to what you have given.

    once the pcells are created, only loading any skill code used by the cells is required.


    stéphane
     
    S. Badel, Apr 18, 2006
    #2
  3. ^probable missing quotes
     
    Jean-Marc Bourguet, Jun 22, 2007
    #3
  4. That's because the argument to cdfDeleteCDF should be a CDF object,
    not a dd object.

    So something like:

    cdfDeleteCDF(cdfGetBaseCellCDF(ddGetObj("my_lib" "my_cell")))

    is what you want.

    Regards,

    Andrew.
     
    Andrew Beckett, Jun 27, 2007
    #4
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.