Component Description Format

S

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
 
1. I have given an example of the CDF file. Is the format right?
Yep it looks fine.

2. Do i have to load CDF file for every cell used in the library?
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)

3. How do i use this parameter variable in my actual pcell_Skill file?
Just like any pcell parameter.

4. What is the procedure of loading the CDF and pcell file in a cadence
session
- 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
 
I cannot figure out what is wrong in that skill syntax :
cdfDeleteCDF(ddGetObj("my_lib""my_cell))

Thanks for your help ;)
 
"okguy" <okguy74@***.*> writes:

I cannot figure out what is wrong in that skill syntax :
cdfDeleteCDF(ddGetObj("my_lib""my_cell))
^probable missing quotes

--
Jean-Marc
 
I cannot figure out what is wrong in that skill syntax :
cdfDeleteCDF(ddGetObj("my_lib" "my_cell"))
I tried : my_cdf=ddGetObj("my_lib" "my_cell")
And it did not flag error, so I guess the problem is more on the usage of
cdfDeleteCDF ...

BTW, merci Jean-Marc.
 
On Fri, 22 Jun 2007 10:54:35 -0400, "okguy" <okguy74@***.*> wrote:

I cannot figure out what is wrong in that skill syntax :
cdfDeleteCDF(ddGetObj("my_lib" "my_cell"))

I tried : my_cdf=ddGetObj("my_lib" "my_cell")
And it did not flag error, so I guess the problem is more on the usage of
cdfDeleteCDF ...

BTW, merci Jean-Marc.
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
Senior Solution Architect
Cadence Design Systems, UK.
 

Welcome to EDABoard.com

Sponsor

Back
Top