dbOpenScratchDesign
dbOpenScratchDesign(
t_libraryName
t_cellViewType
)
=> d_cellViewID
Description
Opens a scratch design of the specified cellview type scoped to the specified library.
The function allows you to create an in-memory design or a scratch-pad area that does not require any directories or files to exist on the disk, does not require locking, and is guaranteed to be unique. It can be used as a scratch-pad in which you can do perform what-if experiments without committing anything to disk.
You can used the scratch design as a regular design, but it has the following restrictions:
- It cannot be saved in any manner.
- It cannot be used as a custom via master.
- It can be used as an instance master only when instantiated in another scratch design.
Arguments
|
Cellview type of the scratch design. For example, |
Value Returned
Examples
Opens a layout cellview and a scratch layout design and creates an instance of the layout cellview in the scratch layout design.
\i layoutDB = dbOpenCellViewByType("testlib" "cell0" "layout" "maskLayout" "r")
\t db:0x2990e59b
\i scratchDB = dbOpenScratchDesign("testlib" "maskLayout")
\t db:0x2790e61a
\i dbCreateInst(scratchDB layoutDB "I0" 0:0 "R0")
\t db:0x2720de1
The scratch design does not exist in the library.
\i ddGetObj("testlib" scratchDB~>cellName)
\t nil
The scratch design cannot be saved.
\i dbSave(scratchDB)
\w *WARNING* (DB-270000): dbSave: Attempt to save a scratch-mode design.
\t nil
Return to top