Product Documentation
Virtuoso Layout Suite SKILL Reference
Product Version IC23.1, November 2023

leReportTrimmedShapesInCustomStyle

leReportTrimmedShapesInCustomStyle(
d_cvId
[ ?layerName t_layerName ]
[ ?depth x_depth ]
[ ?createMarker g_createMarker ]
[ ?printReport g_printReport ]
[ ?showReportWindow g_showReportWindow ]
[ ?saveReport t_saveReport ]
[ ?markerSeverity t_markerSeverity ]
) 
=> l_lists / nil

Description

Reports pathsegs on the specified layer that have overlapping trim shapes and pathsegs that are abutted to trim shapes but do not have a relevant patch type. The function also reports the following: polygons, rectangles, and paths abutting or overlapping trim shapes, trim shapes that are abutted to pathsegs but do not have a bridge metal, and the trim shapes that are not abutted to pathsegs, polygons, rectangles, or paths in the same cellview. The function searches for trim shapes and metal shapes in the hierarchy up to the depth specified.

The function can be called from read-only cellviews also.

Arguments

d_cvId

Cellview ID where shapes are to be searched.

?layerName t_layerName

Layer name on which shapes are to be searched.

?depth x_depth

Depth up to which shapes are to be searched in the hierarchy.

?createMarker g_createMarker

Specify whether markers are to be created. Valid values: t or nil.

?printReport g_printReport

Specify whether the report is to be printed in CIW.

Valid values: t or nil.

?showReportWindow g_showReportWindow

Specify whether the report is to be displayed in a separate window. Valid values: t or nil.

?saveReport t_saveReport

Specifies the directory where the report is to be saved. The report file follows the naming convention cellName.rpt.

?markerSeverity t_markerSeverity

Specifies the severity to be applied to the marker generated.

Value Returned

l_lists

Returns a list of lists. Each list displays (t_layerName (t_type ("sameCellView" ld_fig) ("differentClone" ld_fig) ("differentCellView" ld_fig)))

When trim shapes and pathsegs are in the same cellview, they are returned in the ld_fig list of samecellView. When trim shapes and pathSegs are in a different clone, they are returned in the ld_fig list of differentClone. When trim shapes and pathsegs are in a different cellview, they are returned in the ld_fig list of differentCellView.

The report returns the list of trim shapes that trim pathsegs on the specified layer name, at different levels in the hierarchy up to the specified depth, as type overlapping trim. It returns the list of pathsegs on the specified layer name that have abutting trim shapes at different levels in the hierarchy up to the specified depth, but do not have the relevant patch type set, as type missing patchType. If a trim shape has metal shapes abutted in the same cellview and also in a different cellview, the metal shapes only in the same cellview are reported.

The trim shape is represented by a list, which could be a nested list, if it comes from more than one level down. Each level of the list has the ID of the instance in the corresponding level in the hierarchy. For example, if there is a trim shape in a master cellview two levels down, for the top cellview, it will return a nested list. The output of this function is same as dbGetTrueOverlaps.

The function prints coordinates of the shapes.

nil

The report is not printed in CIW.

Examples

Prints the list of trim shapes in the hierarchy up to level 5.

leReportTrimmedShapesInCustomStyle( geGetEditCellView() ?depth 5 ?printReport t)
=> Metal1 shapes overlapped by a trim shape. Run converter to convert to Innovus-compatible style.
 Cellview cdn10FF:Level1TrimAndMetal1_2:layout - 2 found
  PathSeg at (84.322 -25.095) BBox : (77.379 -26.645) (91.265 -23.544)
  PathSeg at (65.869 -25.095) BBox : (59.572 -26.645) (72.166 -23.544)
 Cellview cdn10FF:test_InstsInside:layout - 8 found
  PathSeg at (-10.432 -49.682) BBox : (-18.500 -51.233) (-2.364 -48.133)
  PathSeg at (8.369 -48.432) BBox : (6.190 -49.983) (10.548 -46.883)
  PathSeg at (23.464 -41.408) BBox : (16.289 -42.408) (30.639 -40.408)
  PathSeg at (6.537 -41.678) BBox : (-0.019 -43.228) (13.092 -40.129)
  PathSeg at (22.891 -36.889) BBox : (15.868 -38.438) (29.914 -35.339)
  PathSeg at (-12.809 -32.072) BBox : (-21.163 -33.621) (-4.454 -30.521)
  PathSeg at (57.423 -2.660) BBox : (55.244 -4.210) (59.602 -1.111)
  PathSeg at (6.537 -36.416) BBox : (-0.019 -37.965) (13.092 -34.865)
 Cellview cdn10FF:Level1TrimAndMetal1:layout - 6 found
  PathSeg at (-38.075 -2.719) BBox : (-46.132 -3.719) (-30.018 -1.719)
  PathSeg at (84.186 -37.325) BBox : (76.129 -38.325) (92.243 -36.325)
  PathSeg at (84.935 -31.211) BBox : (76.942 -32.761) (92.928 -29.661)
  PathSeg at (51.242 -39.215) BBox : (48.020 -40.765) (54.463 -37.665)
  PathSeg at (70.133 -37.965) BBox : (67.954 -39.515) (72.312 -36.415)
  PathSeg at (47.069 -22.165) BBox : (40.484 -23.165) (53.653 -21.165)
 Cellview cdn10FF:testDesign2:layout - 1 found
  PathSeg at (-60.076 -23.187) BBox : (-73.506 -24.187) (-46.646 -22.187)
Metal1 shapes overlapped by a trim shape in a different clone. A manual conversion
is required.
 Cellview cdn10FF:test_InstsInside:layout - 6 found
  PathSeg at (76.314 -3.910) BBox : (73.093 -5.460) (79.536 -2.361)
  PathSeg at (41.788 4.364) BBox : (34.083 3.364) (49.493 5.364)
  PathSeg at (61.228 4.014) BBox : (54.931 2.465) (67.525 5.564)
  PathSeg at (43.759 8.883) BBox : (37.462 7.333) (50.056 10.434)
  PathSeg at (61.228 10.091) BBox : (54.931 8.540) (67.525 11.640)
  PathSeg at (80.487 13.140) BBox : (73.903 12.140) (87.072 14.140)
Metal1 shapes overlapped by a trim shape in a different cellview. A manual conversion is required.
 Cellview cdn10FF:Level1TrimAndMetal1:layout - 1 found
  PathSeg at (-37.326 3.395) BBox : (-45.319 1.845) (-29.333 4.945)
 Cellview cdn10FF:testDesign2:layout - 1 found
  PathSeg at (-26.700 8.913) BBox : (-38.451 7.913) (-14.949 9.913)
Trim shapes are not abutted to any Metal1 shape in the same cellview. Delete the trim shape or create a metal shape manually.
 Cellview cdn10FF:Level1TrimAndMetal1_2:layout - 4 found
  Trim at (69.519 -37.947) BBox : (66.562 -39.491) (72.476 -36.404)
  Trim at (51.957 -40.788) BBox : (51.007 -47.338) (52.907 -34.238)
  Trim at (69.806 -31.194) BBox : (68.856 -32.737) (70.756 -29.650)
  Trim at (48.450 -24.555) BBox : (45.498 -31.105) (51.401 -18.005)
 Cellview cdn10FF:Level1TrimAndMetal1:layout - 2 found
  Trim at (-52.309 9.435) BBox : (-53.259 8.088) (-51.359 10.783)
  Trim at (69.952 -25.171) BBox : (69.002 -26.518) (70.902 -23.823)
(("Metal1" 
 (("overlapping trim" 
  (("sameCellView" 
   (db:0x248fcb9f db:0x248fc020 db:0x248fc01c db:0x248fc01e db:0x248fc01d
   db:0x248fc533 db:0x248fc53a db:0x248fc531 db:0x248fc534 db:0x248fc537
   db:0x248fc536 db:0x248fc535 db:0x248fc532 db:0x248fcba0 db:0x248fcba1
   db:0x248fd39e db:0x248fd39f
   )
  ) 
  ("differentClone" 
   (db:0x248fc51e db:0x248fc539 db:0x248fc538 db:0x248fc51d db:0x248fc51c
   db:0x248fc51f
   )
  ) 
  ("differentCellView" 
   ((db:0x248fd09b db:0x248fcba0) db:0x248fd39e)
   )
  )
 ) 
  ("missing same cellview metal" 
   (("sameCellView" 
    (db:0x248fcb9f db:0x248fc020 db:0x248fc01f db:0x248fc01e db:0x248fc01c)
   )
   )
  )
  )
)
)

Return to top
 ⠀
X