• 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. Blogs
  2. System, PCB, & Package Design
  3. What's Good About PCB SI DML Path Setting? See For Yourself…
Jerry GenPart
Jerry GenPart

Community Member

Blog Activity
Options
  • Subscribe by email
  • More
  • Cancel
CDNS - RequestDemo

Try Cadence Software for your next design!

Free Trials
PCB SI
PCB
SI
SPB16.3
SiP
Signal Intregrity
Digital SiP design
IBIS
SigXP UI
PCB Signal and power integrity
Allegro 16.3
SPB 16.3
IBIS-AMI
SigWave
PCB Editor
design
PCB design
SI analysis and modeling
dml

What's Good About PCB SI DML Path Setting? See For Yourself in the SPB16.3 Release!

29 Sep 2010 • 4 minute read

With the SPB16.3 release of Allegro PCB SI, there’s a new methodology for Device Modeling Language (DML) path setting and searching.

In previous releases, DML and IML paths were controlled graphically with the Library Browser, as shown below:



 
They could also be set through the use of environment variables such as signal_devlibs:

set SIGNAL_DEVLIBS /hm/test/dml/devices.dml $ALLEGRO_INSTALL_DIR/signal/cds_models.ndx

Regardless of the method used, model paths were based on individual DML files or indices rather than directories. This caused issues with portability across environments. Additionally, even though the example above references another variable ($ALLEGRO_INSTALL_DIR), the full path was stored in a configuration file (case.cfg) in the .run directory.

Read on for more details …
_____________________

 

Setting the Search Path


In SPB16.3, there is no longer an Analyze > Library command in the menu since the Library Browser no longer exists. To invoke the Model Browser, select Analyze > Model Browser.



 
This will launch the new Model Browser:



 
Selecting the Set Search Path button displays the following form:



 
This form is used to manage the search path and file extensions for all model formats.


In the Directories To Be Searched for Model Files section, the first entry is the current directory, and the remaining two are Cadence defaults. The Add Directory... button is used to add directories that contain dml files. When a directory is added, the dmls in that directory are loaded, as seen in the Command Window:



 
The Move To Top, Move Up, Move Down, and Move To Bottom buttons can be used to set the order of the DML directories. This is similar to setting the order of the DML files in the old Library Browser, but here the priority of directories to be searched for models is being set.



 
When a directory of dmls is added, the new environment variable SI_MODEL_PATH is written to your local env file:

set SI_MODEL_PATH = . D:/Cadence/SPB_16.3/share/local/pcb/signal D:/Cadence/SPB_16.3/share/pcb/signal D:/dmls


If the list of directories is not as expected, select the Reset to Default button:



 
This is a quick way to reset the new SI environment variables without having to edit your local env file.


Library Management


The DML Library Management dialog, available by selecting the Library Mgmt button in the Model Browser, is the new location for a lot of the core functionality previously found in the old Library Browser, such as creating a new library, merging libraries, and creating indices.



 
Recall that search ordering is prioritized by directories, not by individual dml/ndx files. Because of this, there are no controls here to move dml files up or down, but there are new controls to ignore libraries.


You can ignore libraries in directories by selecting the checkbox in the Ignore Library column. When ignoring libraries, the new environment variable SI_IGNORE_DML_LIBS is written to $HOME/pcbenv/env:

set SI_IGNORE_DML_LIBS = D:/dmls/cy9389v.dml D:/dmls/71v2576z.dml


The DML Library Management dialog is also used to set your working library, using a checkbox Working Library column. When a working library is selected, the new environment variable SI_DML_WORKING_LIB is written to $HOME/pcbenv/env:

set SI_DML_WORKING_LIB = test1.dml


To merge libraries, select the checkbox in the Select for Merge/Index column for the particular dmls, then select Merge Libs. Similarly, to create an index, select the checkbox in the Select for Merge/Index column for the particular dmls, then select Make Lib Index.


Setting File Extensions


File extensions for all model formats can be set in the Set Model Search Path dialog.



 
If extensions are changed in the form, they are written to the new SI_MODEL_FILE_EXT environment variable in $HOME/pcbenv/env.

set SI_MODEL_FILE_EXT = Generic_IBIS(ibs) IBIS_Buffer(buf) IBIS_EBD(ebd) IBIS_ICM(icm) IBIS_Pin_List(pin) IBIS_Package(pkg,pckg) Quad(mod) Generic_SPICE(spc) HSpice_Input(sp) HSpice_Output(lis) Spectre(spc) Touchstone(S?p,s??,snp) DML(ndx,dml) Interconnect(iml) ABIML(abiml)


Environment Variables


There are four new SI environment variables used to control model searching:
•    SI_MODEL_FILE_EXT
•    SI_MODEL_PATH
•    SI_IGNORE_DML_LIBS
•    SI_DML_WORKING_LIB

These new environment variable settings support the use of variables in the paths, making them more portable. For example:

set SI_MODEL_PATH = . $MY_LIB_PATH $GLOBAL_LIB_PATH


The variables for MY_LIB_PATH and GLOBAL_LIB_PATH are only expanded when the files are opened and are not stored anywhere in their expanded format.


The new SI path variables are searched in the following order:

•    $HOME/pcbenv/env file
•    <install_dir>/share/pcb/text/env file
•    A system environment variable of the same name

These new path variables are updated based on existing case.cfg files in run directories when pre-SPB16.3 designs are opened.

Please share your experiences in using this new SPB16.3 capability.

Jerry "GenPart" Grzenia


CDNS - RequestDemo

Have a question? Need more information?

Contact Us

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

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