Home > Community > Blogs > PCB Design > what s good about pcb si dml path setting see for yourself in the spb16 3 release
Login with a Cadence account.
Not a member yet?
Create a permanent login account to make interactions with Cadence more conveniennt.

Register | Membership benefits
Get email delivery of the PCB Design blog (individual posts).


* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

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

Comments(0)Filed under: PCB Signal and power integrity, PCB design, IBIS-AMI, PCB Editor, SI, Signal Intregrity, SigWave, SiP, PCB, SPB 16.3, SigXP UI, Allegro 16.3, PCB SI, IBIS, Digital SiP design, SPB16.3, SI analysis and modeling, design, DML

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:

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


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


Leave a Comment

E-mail (will not be published)
 I have read and agree to the Terms of use and Community Guidelines.
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.