• 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. techRuleSet Pre-Fill

Stats

  • Locked Locked
  • Replies 1
  • Subscribers 143
  • Views 8779
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

techRuleSet Pre-Fill

Kevin Buck
Kevin Buck over 3 years ago

I'm trying to auto-populate PVS forms automatically (I'm still using PVS because our tool version is IC6.1.8-64b-500.9). I have a PVSPreFormTrigger function that successfully auto-populates the run directory field:

procedure( PVSPreFormTrigger( runType presetFile winId )
let( (tmpName f )

;; create a temporary presets file
tmpName = sprintf( nil "/tmp/ipvs.%s.%d.pretrigger" runType ipcGetPid() )

f = outfile( tmpName )

fprintf( f "[ pvsgui.Run%s ]\n" runType )

when( winId~>cellView~>cell~>name

;; construct Run Directory name as "pvs/[DRC or LVS]_${PROJECT}_cell"
fprintf( f "RunDir \"%s\"\n" strcat( "pvs/" runType "_${PROJECT}_" winId~>cellView~>cell~>name ) )

); when

close(f)

;; return the name of presets file
tmpName

);let
);procedure

I also have a techRuleSet file that contains the following:

pvsRuleSet( "default"
(DrcRules "ruledecks/ohc15l_drc.pvl" )
(DrcGuiPreset "ruledecks/virtuoso6.drc_preset_golden")
(LvsRules "ruledecks/ohc15l_lvs.pvl" )
(LvsGuiPreset "ruledecks/virtuoso6.lvs_preset_golden")
)

My file structure looks like this:

~/analog/pvtech.lib (file)
~/analog/ruledecks (folder containing the files listed below)

ohc15l_ant.pvl
ohc15l_density.pvl
ohc15l_drc.pvl
ohc15l_lvs.pvl
techRuleSets
virtuoso6.drc_preset_golden
virtuoso6.lvs_preset_golden

The pvtech.lib file is a single line with an include statement that defines another path to the central location for the technology information (INCLUDE $TECH_PATH/pvtech.lib). The file pointed to then defines the library as:

DEFINE PVS_LPE ./ruledecks/LPE

From the tool manual it seems that the techRuleSets file should automatically fill the DRC and LVS submission forms with the presets specified by the default rule set if the techRuleSets file is in the correct place and the correct path is specified. This part of the manual shows that the techRuleSets file should live with the pvl files but it's not clear to me whether or not the tool expects this techRuleSets file to live in the central repository or in the local directory where we have copied our pvl files (https://support.cadence.com/apex/techpubDocViewerPage?xmlName=pegasususer.xml&title=Cadence%20Pegasus%20User%20Guide%20--%20Setting%20up%20of%20Technology%20Data%20-%20Technology%20Directory&hash=pgfId-1065185&c_version=22.10&path=pegasususer/pegasususer22.10/appc_TechData_tk_Setting_up_of_Technology_Data.html#pgfId-1065185). I've tried placing the techRuleSets file here, one also exists in the central repository but it just exists for linking locally. I've also tried changing the relative path in the techRuleSets file to point to files from ~/analog/ruledecks, ~/analog and from the repository but none of them seem to work. I get the message in the bottom right corner of the GUI that no presets file was loaded.

I'm probably missing something simple here, hopefully someone can point me in the right direction. Slight smile

  • Cancel
  • Kevin Buck
    Kevin Buck over 3 years ago

    To clarify, the file I'm using is called techRuleSets. I noticed a few instances where I wrote techRuleSet in my question.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

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