1. Get the DB get commands number of cells ?
Dbget [ dbget p top. Name DTMF_CHIP].numinsts
2. Find all a valuable cells in database?
Dbget u top .insts .cell .name
3. Find number of macros and its area?
Dbget [ dbget p1 top. Insts .cell. baseclass block].size
4. Find NAND2X1 area, find number of nand gates placed in that core area?
Dbget [ dbget u p1 top. Insts.cell.name NAND2X1].size
{1.98 5.04}=9.9792
Dbget [dbget u -p1 top. Insts.cell.name NAND2X1].numrefs
5. Find number of i/ps and o/ps?
Dbget [dbget p1 top.insts.cell.baseclass block].numinputs
Dbget [dbget p1 top.insts.cell.baseclass block].numoutpus
6. Get area core,die?
Dbget [dbget p1 top.name DTMF_CHIP].fplan.box ={0,0 1458.805,1436.52}=2.09u
Dbget [dbget p1 top.name DTMF_CHIP].fplan.corebox={335.28,335.44
1123.805,1101.52}=0.604u
7. Add blockage in core area and change it to soft blockage?
Create placeBlockage type soft -box {300 400 500 600} -name softBlockage2
8. For soft blockage change into potial block and add 50% partial blockage?
Create placeBlockage -type portial density 50 -box{300 400 500 600} name
softBlockage2
9. For an given cell , no of i/ps and no of o/ps?
Dbget[dbget p1 top.insts.cell.name pllclk}.numinputs
Dbget[dbget p1 top.insts.cell.name pllclk}.numoutputs
10. Add halo of io to each macro command?
Addhalotoblock 5 5 5 5 DTMF_INST/PLL_INST
Get a list of unplaced cells: (Laurent Lefebure)
dbGet [dbGet -p top.insts.pStatus unplaced].name
See what metal layers your block's IO pins are on: (Bob Dwyer)
dbGet top.terms.pins.allShapes.layer.name
Get a list of NONDEFAULT rules in the design: (Gary Nunn)
dbGet head.rules.name
Get the placement status of an instance: (Ali Aslani)
dbGet [dbGetInstByName instName].pStatus
Get the points of a rectangular routing blockage: (Bob Dwyer)
dbGet top.fplan.rBlkgs.shapes.rect
Get the points of a rectilinear routing blockage: (Jon Cooper)
dbGet top.fplan.rBlkgs.shapes.poly
Get a list of all cell types used in the design: (Gary Nunn)
dbGet -u top.insts.cell.name
(The "-u" filters out duplicate objects.)
Get the size of block placement halos: (Kari Summers / Bob Dwyer)
dbGet [dbGet -p2 top.insts.cell.subClass block*].pHaloTop
dbGet [dbGet -p2 top.insts.cell.subClass block*].pHaloBot
dbGet [dbGet -p2 top.insts.cell.subClass block*].pHaloLef
dbGet [dbGet -p2 top.insts.cell.subClass block*].pHaloRight
Get the size and top/bottom layers of block routing halos: (Bob Dwyer)
dbGet [dbGet -p2 top.insts.cell.subClass block*].rHaloSideSize
dbGet [dbGet -p2 top.insts.cell.subClass block*].rHaloBotLayer.name
dbGet [dbGet -p2 top.insts.cell.subClass block*].rHaloTopLayer.name
Make sure all your tiehi/lo connections have tie cells (and are not connected to a rail instead): (Gary
Nunn)
dbGet top.insts.instTerms.isTieHi 1
dbGet top.insts.instTerms.isTieLo 1
(Should return "0x0" if all connections have tie cells.
If "1"s are returned, use the following to find the terms that still need a tie cell:)
dbGet [dbGet -p top.insts.instTerms.isTieHi 1].name
dbGet [dbGet -p top.insts.instTerms.isTieLo 1].name
Change the routing status of a net (for example, from FIXED to ROUTED): (Gary Nunn)
dbSet [dbGet -p top.nets.name netName].wires.status routed
Get the status of your design: (Siva Kumar)
dbGet top.statusIoPlaced
dbGet top.statusPlaced
dbGet top.statusClockSynthesized
dbGet top.statusRouted
dbGet top.statusRCExtracted
dbGet top.statusPowerAnalyzed
List all the FIXED instances in your design: (Bob Dwyer)
dbGet [dbGet -p top.insts.pStatus fixed].name
Find out which layers are used in a net: (Bob Dwyer)
dbGet [dbGet -p top.nets.name netName].wires.layer.name
Find all the instances of a certain cell type: (Laurent Lefebure)
dbGet [dbGet -p2 top.insts.cell.name cellName].name
Get the size of a cell in the library, but not necessarily in the current design: (Rob Lipsey)
dbGet [dbGetCellByName cellName].size