Glade Reference

Change Log 2021

Contents for 2020 can be found here


Version 5.0.13 / 4.7.52 release on 01/01/2021

- Update net browser after Edit->setNet cmd

- bugfix: save changes to SDL map list after editing.

- bugfix: schematic autorouter now routes correctly to offgrid locations.

- bugfix: Single segment rulers were not commited on 2nd click/return.

- bugfix: Clearing hilights caused possible memory corruption issue.


Version 5.0.14 / 4.7.53 release on 18/01/2021

- Properties internal cleanup. Class 'proplist' renamed 'properties'. Class pListItem has private members and accessor functions. orient_t type property removed (it was only used for DEF ROWs, and an integer prop type used in replacement).

- bugfix: stretch wire could remove extra vertices.

- Callbacks implemented for properties. dbSetPropCallback() and dbGetPropCallback() functions added. A Python callback function registered to a property will be called when that property is changed, e.g. in the query dialog of the Create Instance dialog. This allows automatic updating e.g. changing the 'fins' property on a mos device could alter the 'w' property via a callback.

To add a callback: Use the Query dialog to display properties e.g of a symbol. Enter the name of the callback function in the callback field. Only the function name is required. A python file must exist in the paython path with the same name as the callback, and extension .py (much the same as for PCells). The python function should have a single argument, 'pyDBObject', which is the dbObj which called the callback. See for example the FreePDK15 example PDK.

- Initial version of simulation environment. The current supported simulator is Xyce from Sandia Labs ( And example PDK (XyceLib) is supplied with the Glade distribution.

- Library rebinding did not rebind some unbound instances. This has been fixed.

- Stipple patterns were incorrectly copied in certain cases from the techfile.


Version 5.0.15 / 4.7.54 release on 23/01/2021

- Internal memory manager improvements.

- enhancement: various memory leaks cleaned up. This is only likely to affect Glade API users.


Version 5.0.16/ 4.7.55 release on 23/01/2021

- enhancement: Via contents can now be shown, like instances, when creating or moving vias if the 'Draw Moving Instance Contents' option is on (Display Options Misc dialog).

- enhancement: Runlength dependent spacing rule:

geomSpace(layer, rule, runlength, flags, msg)

Checks the spacing of projecting edges of layer is not less than rule (microns).
The length of projecting edges is specified by runlength (microns), and flags modifier for runlength can be lessthan, greaterthan, equals, not_equals, as well as horizontal, vertical, diagonal.


Version 5.0.17 release on 05/02/2021

- bugfix: Arcs drawn incorrectly when moving a symbol in a schematic with rotation during move.

- bugfix: Popup menus with Query item did not show query dialog.

- bugfix: Command line options were case sensitive; they have now been made case insensitive.

-enhancement: added ui::booleanOp() for layer based booleans via Python without using geom... commands. This is compatible with C++ API.


Version 5.0.18 release on 12/02/2021

- bugfix: Crash occasionally on closing a library.

- bugfix: Various internal memory leaks fixed.


Version 5.0.19 release on 01/03/2021

- bugfix: Changing probe colour etc. in probe dock window did not change colour of highlighted net/instance in schematic.

- enhancement: Added X axis selection in plot window.

- enhancement: Added greaterorequal and lessorequal flags to DRC checks that supported greaterthan and lessthan flags.

- bugfix: Callouts and XY coords on plot window were not working correctly.

- enhancement: geom... DRC functions flag coverage extended.


Version 5.0.20 release on 05/03/2021

- bugfix: eliminate flicker for drawn rulers when dynamic highlight is on.

- enhancement: Ruler snap feature for layout. Set the Display Options->Snap Settings->Snap to Edges and on giving the Ruler cmd the cursor will highlight edges/centrelines/vertices to snap the start and the stop of the ruler to.

- bugfix: Stretching a HSeg edge caused a crash.

- bugfix: HSeg/VSeg centreline drawn incorrectly when selected/highlighted.

- bugfix: Stretching a HSeg/VSeg did not lock ends.

- bugfix: Display Options 'Show Via Instance Names' did not control display of via names.

- bugfix: Fixed a crash when using output_only flag with spacing check.


Version 5.0.21 release on 12/03/2021

- bugfix: Occasional crash when using rulers in snap mode.

- bugfix: Couldn't change properties of non-PCell instances. This was a bug introduced in 5.0.14.

- bugfix: Crash on close after deleting an empty LPP.

- enhancement: geomSpace() now handles spacing between manhattan and diagonal/any angle shapes.

- bugfix: Simulation netlister didn't handle top level cell with instances correctly in some cases.


Version 5.0.22 release on 26/03/2021

- enhancement: Supports spice3f5 simulator

- bugfix: Fixed a crash if a plot expression was deleted from the plot window and then added again.

- enhancement: DC Operating point analysis added to simulation menu. If the 'Backannotate to schematic' option is chosen, then net voltages will be backannotated to the schematic as a property on wires called 'voltage'. With highlighting on, tooltips will be shown for wires that have the net property set.

- enhancement: extractMOS() and extractMOSDevice() now extract BSIM instance parameters SA, SB, (distance from diffusion edge to gate) and SC (distance of well edge to gate) allowing more accurate simulation of layout dependent effects (LDE).

- enhancement: Schematic wiring improvement with better snapping to offgrid pin centres.

- bugfix: Removal of colinear start/end points of Schematic wires improved.


Version 5.0.23 release on 05/04/2021

- bugfix: NLP escaped ] was not processed correctly.

- bugfix: NLP netlisting added extra spaces after expression delimiters.


Version 5.0.24 release on 10/04/2021

- bugfix: geomEnclose with 2 shapes abutting but not overlapping gave error.

- bugfix: opposite flag for drc checkes did not create error marker for non-manhattan edges.


Version 5.0.25 release on 24/05/2021

- enhancement: geomLength() check added

- bugfix: msg dock window minimum size reduced to improve layout for small display sizes.

- bugfix: geomExtension() very infrequently missed an error


Version 5.0.26 release on 14/06/2021

- bugfix: Instance name/master text size adjusted to fit instance bounding box correctly.

- bugfix: Changing PCell instance parameters using query dialog was failing to change them.

- bugfix: Search dialog criteria that required floating point values rounded everything to integers.

- bugfix: World View window drag/zoom etc was not working correctly.

- bugfix: Drawing MPPs with OFFSET values was incorrect for selection/hilighting.

- bugfix: Show cellView layers did not handle MPP layers.


Version 5.0.27 release on 21/06/2021

- bugfix: World View window not handling Edit In Place.

- bugfix: Draw Ruler invert text option not working.

- bugfix: Dynamic highlight flickered and did not retain last highlighted object.

- bugfix: Draw Ruler in snap mode was flickering.

- bugfix: Zoom to cursor not working correctly in Edit In Place mode.

- bugfix: Crash when calling dbCreateHole() with a python list.

- bugfix: MPP bBox() function returned incorrect value for MPPs with offsets.

- bugfix: Rulers not working correctly in Edit in Place mode.

- bugfix: Crash on exit if World View window was open.

- bugfix: Gravity was not working in Edit In Place.

- enhancement: Gravity now snaps to MPP outline(s) as well as centreline.


Version 5.0.28 release on 01/07/2021

- bugfix: Crash when highlighting a vertex (partial select mode, dynamic highlighting on).

- bugfix: Crash when using World View window on non-WIN32 platforms


Version 5.0.29 release on 06/07/2021

- bugfix: Fixed issues with geomPitch() and geomSpace() cmd when used with equals / not_equal modifiers.

- bugfix: Netlisters write .GLOBAL instead of *.GLOBAL as Xyce didn't understand the former.

- bugfix: Hierarchy browser ascend cmd did not ascend from a descended instance.

- enhancement: Probe dock window can specify single or multiple plots for probes.


Version 5.0.30 release on 19/07/2021

- bugfix: PCells with string default args were not getting evaluated correctly.

- enhancement: GDS2 reader/writer can write property for device recognition region shapes. Note that as a result, the ui::importGds2/exportGds2 function arg list has changed and existing scripts will need to be updated.

- enhancement: DRC selection operations can have a count criteria i.e. report selection only if the number of interactions is <,<=,==,!=,>,>= some value.

- bugfix: Edge projection (drc flag = opposite) sometimes was incorrect.


Version 5.0.31 release on 01/08/2021

- bugfix: Fixed an issue with saveInterconnect() where polygons-with-holes inside other polygons-with-holes were not getting processed correctly.

- enhancement: extractMOS() now supports 5 terminal MOSFETs

- bugfix: MPPs and viaInsts with connectivity did not create shapes with net info in the geometry engine.

- enhancement: listType properties are now supported. These can be used in PCell arguments so that the property dialog will edit the property using a comboBox to choose from a value in the list. As part of this work, listType properties can have a 'choices' parameter set which is a list of the permitted values of the property. A side effect is the database version is updated to 660.

- bugfix: A few cornder cases in dbCreateHole() have been fixed, in particular where polygons with non-manhattan edges were used.

- enhancement: LSW 'None Visible' and 'None Selectable' buttons don't make system layers invisible/unselectable.

- enhancement: LSW Show CellView Layers / Show Viewport Layers handles MPPs, viaInsts.

- enhancement: LSW Show Viewport Layers is updated as viewport changes.

- bugfix: Fixed a bug whereby closing a window could make an underlying window inoperative.


Version 5.0.32 release on 25/08/2021

- enhancement: cdb::pin::use() renames getUse() and cdb::pin::dir() renamed getDir() to avoid python reserved word clash.

- bugfix: Schematic autorouter could hang when trying to route to solder dots.

- bugfix: Create Instance dialog did not show cellViews with a $ in the name.

- bugfix: Import GDS2 with duplicate cell names ignored gave a crash.

- bugfix: Under certain circumstances, closing a library could cause a crash.


Version 5.0.33 release on 01/09/2021

- enhancement: Nudge command added. The selected set can be moved repetitiely by a small amount in the X or Y direction using the arrow keys rather than the mouse.

- bugfix: Fixed a crash that could occur when creating an instance in a schematic.

- bugfix: Fixed a crash when using ruler in snap mode and OpenGL.


Version 5.0.34 release on 16/09/2021

- enhancement: 'Ignore Instances' command in schematic editor. This toggles the 'nlAction' property on the selected instances causing them to be removed from the netlist when set. A cross is shown on any instances with this property set.

- bugfix: Reading a GDS2 file with duplicate cells and using 'Duplicate Cells - Overwrite' could cause a crash.

- bugfix: Fixed an issue in OpenGL mode where stipple patterns could be 'noisy'.

- enhancement: Schematic autorouter improvement - giving less bends in route.

- bugfix: In schematic editor, Cancel button in Move dialog didn't cancel cmd.


Version 5.0.35 release on 25/09/2021

- bugfix: Fixed locale issue for license check

- bugfix: cdlFlatten did not handle model names for RLC elements correctly.

- enhancement: around 10% reduction in memory usage for large designs.

- bugfix: schematic autorouter cost functions were not passed from preferences file to canvas.

- bugfix: Items smaller than the filter size for display weren't selected using area select.


Version 5.0.36 release on 03/10/2021

- bugfix: Tracks were not drawn for OpenGL canvas.

- bugfix: geomLength() was not working correctly.

- enhancement: Preliminary release of the layout point to point interactive router. This is a grid based router useful for LEF/DEF designs and it requires the routing grid to be defined (although will fall back to the layout X and Y snap grid if the grid is not defined). It is an option to the Create Path command with the same mode of operation. When starting or finishinga path it will snap to pin shape centres if within the routing grid. The 'U' (layer up) and 'D' (layer down) bindkeys work as before to drop a via and change layer to the above/below routing layer. Layers on type BLOCKAGE and other net/pin shapes not on the same net form obstructions for the router.


Version 5.0.37 release on 11/10/2021

- bugfix: geom<selectionMode> could miss shapes in certain conditions.

- bugfix: canvas thread termination issue could cause a hang on some Linux platforms.

- bugfix: when instances are present from another library, setting a layer invisible did not make layers of instances invisible.

- bugfix: geomGetVertices() caused a crash later during geomEnd()



Copyright Peardrop Design 2020.