Product Documentation
Cadence Application Infrastructure SKILL Reference
Product Version IC23.1, November 2023

ccpCopyDesign

ccpCopyDesign(
G_src
G_dest
[ g_overWrite ]
[ s_expFlag ]
[ q_copySkipLibList ]
[ l_copyViewTypeList ]
[ l_copyViewNameList ]
[ t_vNameSimExp ]
[ t_vNameSpace ]
[ s_whatToUpdate ]
[ q_updateLibList ]
[ g_addProp ]
[ g_existenceCheck ]
[ g_reReferenceCustomVias ]
)
=> t / nil

Description

Copies a design, after expanding it, to the destination library you specify.

ccpCopyDesign first traverses the top level design, which is specified by the source cell or view G_src. It uses the pcdb (parent/child database) API to find all references to other cells. It then traverses those cells, except the ones that are in libraries listed in q_copySkipLibList. ccpCopyDesign then copies the data, using the following filtering process:

Temporary Directories: If the source data that is being copied is in a library that has a temporary directory assigned, then ccpCopyDesign copies files from both the regular library directory and its temporary directory. If the same file exists in both the temporary directory and the library directory, the file in the temporary directory is the one that is copied, regardless of its datestamp or whether it is a source file or a derived file. Files are copied to the temporary directory of the destination library only if there are pre-existing files of the same name in the directory; otherwise they are copied into the regular destination library.

Name Conflicts: If two objects in the source list have the same name, ccpCopyDesign will not copy them to the same location in one copy operation, unless you choose to automatically rename them.

Arguments

G_src

Sources gdmSpec object. Must be a cell or view.

G_dest

Specifies gdmSpec object as destination. Must be a library.

g_overWrite

Overwrites the object if it already exists at the destination. If g_overWrite is t and the object is managed and not already checked out, it is checked out by the system.

s_expFlag

Expands the flag options. Can be one of the following predefined symbols:

  • CCP_EXPAND_COMANAGED: Expands a directory and includes only the coManaged and alsoManaged files, which are defined in the dataReg.

Some applications have co-managed files stored at different directory levels. These co-managed files will also be included for copy.

The prop.xx file, which is invalid in OpenAccess libraries, is no longer automatically included in co-managed sets.

  • CCP_EXPAND_ALL: Expands everything in a directory.

q_copySkipLibList

Excludes gdmSpecList object containing the libraries while copying. q_copySkipLibList is a stop list—design objects in the libraries are not traversed.

l_copyViewTypeList

List of strings specifying the view types to copy. If the list is empty, includes all view types in the hierarchy.

The default value is nil.

l_copyViewNameList

Lists view names to copy. If the list is empty, includes all view names in the hierarchy.

The default value is nil.

t_vNameSimExp

Specifies the views to copy. This option is ignored if you use CCP_NO_EXPAND as the value of the s_expFlag argument.

t_vNameSpace

Displays the name space in which the arguments t_vNameSimExp and l_copyViewNameList are provided. Can be one of the following strings: VHDL, Verilog, Verilog-A, CDBA, Concept, Library, LibraryUnix, or LibraryNT.

s_whatToUpdate

One of the following predefined symbols, which tells the cross-reference updater what to update:

  • CCP_UPDATE_COPIED_DATA: Updates cross-references in only the copied data.
  • CCP_UPDATE_DESTLIB_ONLY: Updates all cross-references in the destination library.
  • CCP_UPDATE_FROM_LIBLIST: Updates cross-references in the libraries you specify in the q_updateLibList argument.

This argument is optional; its default value is CCP_UPDATE_COPIED_DATA.

q_updateLibList

Takes a gdmSpecList object containing library gdmSpec objects, which specify the libraries in which to update cross-references.

Valid only if the s_whatToUpdate argument has a value of CCP_UPDATE_FROM_LIBLIST. Otherwise, this argument is ignored.

If q_updateLibList is empty and s_whatToUpdate is CCP_UPDATE_FROM_LIBLIST, copy proceeds but no updating is done.

g_addProp

Copies files from library and cell property. It is recommended that you use nil for this argument because of potential conflicts between property files. Properties are usually added by the copy updaters. Default is nil.

g_existenceCheck

Sets a flag for the Virtuoso post-copy updater to validate the existence of layers, purposes, viaDefs, and siteDefs in the technology database of the destination library after the copy command is completed. Default is 0.

g_reReferenceCustomVias

Sets a flag for the Virtuoso post-copy updater to update custom via definitions to point to cellviews in the destination library. Default is 0.

Value Returned

t

The design was copied.

nil

The design was not copied.

Related Topics

Generic Design Management (GDM) Functions

Name Spaces for Different Data Types

ccpCopy


Return to top
 ⠀
X