• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC SKILL
  3. PasCdfDone errors from callbacks

Stats

  • Replies 0
  • Subscribers 143
  • Views 39
  • Members are here 0

PasCdfDone errors from callbacks

BS202501273649
BS202501273649 1 hour ago

I am using using SKILL to create a single instance and set some properties.  This code generally works fine on other PDKs but on this PDK I am sometimes seeing an error (though the error is wrapped in a warning (?!)):

WARNING* (CDF-262): Cannot call doneProc SKILL function '(apply GFcdfDone (db:0x3015251a))' because a SKILL error '*Error* PasCdfDone: failed to find valid initialization data!'.

I'll include the full transcript below but basically it creates a schematic, instantiates a single instance with `dbCreateParamInst` and then sets some parameters.  When the callbacks are invoked using `CCSinvokeCdfCallbacks` I am seeing this `PasCdfDone` error message even though I am using the flags on the `CCSinvokeCdfCallbacks` call which usually fixes that problem.

The device ends up correctly instantiated with the properties set correctly but the warning seems to imply that some part of the callback code has not executed correctly and so some parameters of the device might not be correct.

The really odd behaviour is that this is what happens the first time I run the code.  But if I do the creation and instantiation again then the error does not appear - as you can see below.

I am running this in Virtuoso IC23.1-64b.ISR15.37.   The version of CCSInvokeCdfCallbacks is CCSinvokeCdfCallbacks.il 04/25/22.17:40:23 1.19

procedure( createSchematic(pdkLibraryName libraryName cellName)

if(!ddGetObj(libraryName)
ddCreateLib( libraryName ".")
techBindTechFile( (ddGetObj libraryName) pdkLibraryName)
)
; Create Cellview
dbOpenCellViewByType(libraryName cellName "schematic" "schematic" "w")
)

procedure( createInst(cellview pdkLibraryName masterName instanceName)
let( (master instance)
master=dbOpenCellViewByType(pdkLibraryName masterName "symbol" "schematicSymbol" nil)
instance = dbCreateParamInst( cellview master instanceName 0:0 "R0" 1 )
schCheck(cellview)
dbSave(cellview)
instance
)
)

procedure( setProp(instance propName propValue)
let( (prop)
prop = dbSearchPropByName(instance propName)
if( prop then
dbReplaceProp(instance propName "string" propValue)
else
dbCreateProp(instance propName "string" propValue)
)
)
)

cellview = createSchematic("foundryLib" "testLib" "testCell")
instance = createInst(cellview "foundryLib" "foundryCell" "I0")

setProp(instance "dimensionMode" "FingerWidth")
setProp(instance "l" "50n")
setProp(instance "wf" "110n")
setProp(instance "n" "1")
CCSinvokeCdfCallbacks(cellview ?callInitProc t ?useInstCDF t ?order list( "dimensionMode" "wf" "l" "n"))
createSchematic
createInst
setProp
db:0x30152d9a
INFO (SCH-1170): Extracting "testCell schematic"
Warning: Pin "b" on instance "I0": floating input/output.
Warning: Pin "s" on instance "I0": floating input/output.
Warning: Pin "g" on instance "I0": floating input.
Warning: Pin "d" on instance "I0": floating input/output.
db:0x3015251a
db:0x30151b9f
db:0x30151ba0
db:0x30151ba1
db:0x30151ba2
t
*WARNING* **Info** when Finger Length is "0.050u", maximum allowable Finger Width is "35.000u"
*WARNING* **Info** when Finger Width is "0.110u", maximum allowable Finger Length is "10.000u"
*WARNING* (CDF-262): Cannot call doneProc SKILL function '(apply GFcdfDone (db:0x3015251a))' because a SKILL error '*Error* PasCdfDone: failed to find valid initialization data!'.
t


cellview = createSchematic("foundryLib" "testLib" "testCell")
instance = createInst(cellview "foundryLIb" "foundryCell" "I0")

setProp(instance "dimensionMode" "FingerWidth")
setProp(instance "l" "50n")
setProp(instance "wf" "110n")
setProp(instance "n" "1")
CCSinvokeCdfCallbacks(cellview ?callInitProc t ?useInstCDF t ?order list( "dimensionMode" "wf" "l" "n"))
db:0x30152d9a
INFO (SCH-1170): Extracting "testCell schematic"
Warning: Pin "b" on instance "I0": floating input/output.
Warning: Pin "s" on instance "I0": floating input/output.
Warning: Pin "g" on instance "I0": floating input.
Warning: Pin "d" on instance "I0": floating input/output.
db:0x30151d9a
db:0x3015181f
db:0x30151820
db:0x30151821
db:0x30151822
t
*WARNING* **Info** when Finger Length is "0.050u", maximum allowable Finger Width is "35.000u"
*WARNING* **Info** when Finger Width is "0.110u", maximum allowable Finger Length is "10.000u"
t


  • Cancel
  • Sign in to reply

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information