Qckvu3 Web Page Header


Qckvu3 Revision History

This page summarizes the changes and fixes to each version of the Qckvu3/Care Area Wizard project.




Version Qckvu 3.88b Linux 11/19/19








Version Qckvu 3.82a 3/12/15

Attribute Plugin

New attribute plugin finder is included with this release. Old release caused a crash while searching for an OASIS attribute.




Version Qckvu 3.82 9/26/13

New Plugin Open File Function

Plugin can be developed to control Qckvu3 to open a file. Refer to qckplugin.h in the csv_plugin_sample directory.


OASIS Open Error
"OASIS Memory Error: Adding data to load database failed."

This error occurs during loading when opening an OASIS file that has a table of CELLNAME records which are not contiguous.

When a "floating/new" CELLNAME record exists after the end of a cell, the cell would not be correctly categorized as having layer data inside of it.

This directs the database to expect no layer data for that cell. So when the loading phase tries to add geometries/layers to this cell, the program thinks a memory error has occurred. This has now been fixed; a non-contiguous table of CELLNAME records for non-strict mode is now working correctly.


Info Not Reporting Data due to Info Filtering Setting

When clicking on a geometry, the data for that geometry is not reported as expected.

The reason for this is due to 'info filtering' being turned on. Now, if infoing filtering is turned on, a yellow warning message shows up in the status bar as a reminder.

To see the status of 'info-filtering' use the menu Info/Info Filter.


Program Crash When Opening Empty File With No Layer Data

Previous versions might crash when opening an empty file with no layer data depending on which plugins are installed. This has been fixed.


Missing Data during Zoom and Pan

Data might be missing when zooming in/panning if the coordinates of the data is beyond +-1.07 billion um, depending on unit and grid. This has been fixed.

Though coordinate limits are still 32 bit (+-2.14 billion um, depending on unit and grid). Zooming to outside of +-2.14 would still yield a blank display.


Qckvu3 Doesn't Redraw or Crashes with X Error

Previous versions might not redraw a new picture when zooming in and out or it might crash with X error messages dumped to the console. This could happen when a plugin is changes the states of Qckvu3 between redraws. This has now been fixed.


Layer Sidebar Page Up/Page Down

Page up and down in the layer sidebar would skip one layer and display one layer too far (page down from layer 1 to 5 would show layer 7 to 11). This has been fixed.


OASIS ASCII Strings Error

Illegal characters in OASIS ASCII a-strings are now allowed and they do no cause an OASIS file open error anymore.


Info Data Extents Box Highlight Instead Of Data Highlight

Previous version would highlight the extents box of the data when infoing the data. This would happen if the data has adjacent vertices very close to each other while the extents is relatively larger. e.g. a long path with many vertices. This has been fixed to highlight the actual data instead of the extents.


New Feature - Skip Redundant OASIS Repetition Elements

Added a new control in the Settings menu. When turned on, elements of any OASIS repetition which are inserted at the same point of another element in the same repetition are considered redundant and will be skipped during drawing and data processing. While this means that the software producing the OASIS file likely had redundant placements, it will speed up rendering of such poorly constructed files.

Info Crashing from too many elements

Previous versions might crash when there are lots of geometries and references under a the requested info point or window. This has been fixed.




Version Qckvu 3.75 4/20/12

Cell Reference Info

After finding an object using the same info control as in previous versions, users can now query the object's parent and grandparents by going to Tools/Cell Reference Info.
A list of parent and grandparents of the current info object is listed and single clicking on each of these cell names will draw a box highlighting the reference of that parent.
Double clicking on a cell name in this parent list will go into the cell just like selecting the cell to view. Once viewing the new cell, the same operation can be done to info an object and traverse it's parent and grandparents reference box.
To go back out to the previous viewing cell, single click the cell name in the View Cell History list.
The color and pixel width of the parent reference box are controllable via the controls on the bottom of the dialog.
Going into a new view cell is just like opening a cell in the cell dialog to change the current viewing cell. It will trigger a open new cell event to various plugins if the plugins have to do something when the viewing cell is changed.

Info Filter

Added an Info Filter control to the Info menu to allow users to select what data are reported when infoing. The 4 selections are boundaries/ paths, texts, references and filtered areas. Set the filter before infoing a point or window. Default is to report all 4 kinds of data with all 4 selected in the menu.
Various plugins has select object/info controls, those controls will now force this new Info Filter to be set according to the plugin's functionality - if the plugin only wants to select/info references, now the filter will be set to only report references. To select a different filter setting after a plugin sets it, simply go to the Info/Info Filter menu and select accordingly.

Precised Cell Extents For Cells With Paths

Extents for cells with paths along it's bounding box area are now calculated more precisely according to the path width and path end extensions. Only in some extreme cases of non orthogonal angled paths would the extents be not exact.

Info High Memory Usage

When infoing a large area, Qckvu3 might use a significant amount of memory. This memory wouldn't be released until the next infoing, now pressing escape/stop (to clear the info) would release the memory.

Open Layers Filter Reminder Message

When opening a GDSII or OASIS file, if the Open Layers Filter is turned on to open only certain layers or ignore certain layers, a yellow message in the status bar is now shown. If the filter is not meant to be turned on, users can stop the file open.
After the file is opened, the yellow message stays behind reminding users the opened layers are listed in the layer sidebar.
Press Esc, or right click, or click the Stop button to clear the yellow message.
The yellow message will also clear if it's up and the Open Filters dialog OK is clicked.

Layers List Separator In Layer Filter Dialog

Specifying a list of layers can now be done with , [space] ; e.g. 1, 2 3; 4 will be auto fixed to 1,2,3,4
Colon : is still used to specify datatype. e.g. 1:0, 2:5 3:10; 4:20 is 1:0,2:5,3:10,4:20

Extract Speed Improvement

Multiple windows extraction can have a 7 times speed up when a large number of extraction windows is specified.


Version Qckvu 3.64 7/20/11

Ignore Texts Filter

Added control to ignore all texts in the GDSII or OASIS file. Set this in the Open Filters dialog before opening the file. Default is ignore texts off. This setting is remembered between Qckvu3 runs.

Remember Open Layers and Ignore Cells Filters

A new "Remember Layer & Cell Filters" control is added to the Open Filters dialog to remember the "Layers To Open" and "Cells To Ignore" settings between Qckvu3 runs.
If remembered, users can just run Qckvu3 and open a GDSII or OASIS file and the remembered layers and cells to be opened would be used automatically.
Default is to not remember the layer and cell filters. Clicking Reset All To Default Settings will turn off this remember control.
Note that if certain layers/cells to be opened are remembered, users might not be aware of it when opening a file in the next Qckvu3 run and missing data might be the unwanted behavior.

Extract Speed Improvement

Multiple windows extraction can have a 7 times speed up when a large number of extraction windows is specified.

Get Structure References

When finding cell references, previous versions might skip some data resulting in incomplete results, or it might access some data unnecessarily resulting in slow searching.
These 2 issues have now been fixed and the search speed could be many times faster.

Qckvu3 Crashing When Infoing OASIS

Starting in Qckvu3 v3.51 (5/5/2010), infoing OASIS would crash when there are display filtered areas being info-ed.
Since single click in the default zoom window mode is also infoing, users might be confused that the zooming is actually crashing.

Measured Distance Off By 1

Previous versions would report the measured distance off by 1 if the distance is negative and the GDSII file has a grid of 1.0. This has been fixed.

Incorrect Running Lines When Zooming In Tight To Long Non Manhattan Data

Previous versions would draw incorrect data with running lines when zooming in tight to non manhattan data with large extents. This has been fixed.

Opening GDSII file crashing at the beginning of loading

When opening a GDSII file after a cache file is opened, it might crash at the beginning of loading (when the first text is added to the database during loading).
The crash would only happen if the 2nd GDSII file has more text than the 1st GDSII cache file; AND that the cache file was generated after a GDSII file was opened which has more text than the GDSII file that the cache was generated from.
This has been fixed with no memory maps cache files backward compatibility issue.

Opening OASIS error, "Uncompress error: Buffer error"

When opening an OASIS, this error might occur if the OASIS file has CBLOCKS which uncompresses to more than 2MB. It has now been fixed.

Missing/wrong OASIS data when load to memory is turned off

Starting in v3.40 (2/3/2010), OASIS cell placements with magnification or angle would be missing or wrong in the drawing and get vector data result when load to memory is turned off. This has been fixed.


Version Qckvu 3.56 8/10/10

NetTrace Plug-in v1.05

Improved Net tracing plug in.

Smart Info

When Using the info function on an object, users don't have to click on the object vertex to find it anymore. Users can now click inside the object or on an edge of a polygon to info it.
When multiple objects exist near the info point, Qckvu reports the nearest object first. Tabbing through will report the next nearest object.

Use the Info Point mode for this Smart Info feature. The old Info Window mode remains the same - the info window area must contain an object vertex to find the object.

Info window is multithread and it reports the first object and returns right the way. Info point is single thread and it waits.


Version Qckvu 3.55 5/28/10

OASIS Attribute Finder New Features - Smart Attribute Filter

As the user types a string in the text box, the attribute list gets filtered to best match the typed string. This behavior happens on the fly. This feature allows the user to narrow down the search to list of attributes based on a pattern in their names.

OASIS Attribute Finder New Features - Select All/Invert Selection buttons

Allow the user to quickly select all/multiple attributes.

OASIS Attribute Finder New Features - Enhanced Results

The results list box enlists the attributes that were detected in the search area. Clicking on any one of those attributes highlights all polygons associated with that attribute so that it stands out from the rest. If 'Zoom to trace extents' is set, the Qckvu3 view will change to fit to the extents of the trace.

OASIS Attribute Finder New Features - Get info

Using the Qckvu3 'Info Tool', one can ID a polygon/reference and get information about the attributes associated with it.

Ignore OASIS Attributes Control in Open Filters Dialog

Attributes are default to be ignored during open. If OASIS attributes support is needed, turn off the Ignore control and then open the OASIS file.


Version Qckvu 3.51 5/5/10

Support for OASIS Property Attributes

We added the ability to search and highlight OASIS geometries and cell placements by the attributes associated with them.
At present, any PROPERTY record associated with a GEOMETRY or PLACEMENT that has S flag = 0 (non-standard property) and a string as property value, is treated as an attribute.
The 'Find OASIS Attributes' dialog in the Tools menu allows a user to see all the attribute strings defined in an OASIS file and search/highlight all features (Geometry, Placement) associated with a particular attribute name or regular expression.
Search for attributes is performed only in the current view. Only visible features (layer turned ON) will be found.

Faster OASIS Zoom Pan and Operations

OASIS zoom pan and data processing has now been further optimized to be 3X faster than previous versions depending on the data. For a GDSII corresponding OASIS file, the OASIS zoom pan and data processing speed is now almost the same as GDSII or 1.5X slower than GDSII (it was 5X slower than GDSII in previous versions).

OASIS "Load To Memory On" Speed and Memory Usage

When Load To Memory is turned on for OASIS, previous versions of Qckvu3 do not yield any zoom pan and data processing speed up, and they use just a little more memory.
This version now puts the whole OASIS file in memory and thus all zoom pan and data processing are getting data directly from memory for faster operations. Memory usage is exactly the size of the OASIS file more than when "Load To Memory" is turned off.


Version Qckvu 3.50 4/17/10

Open Filters for GDSII and OASIS

Qckvu3 now supports selective open of certain layers and cells of a GDSII or OASIS file. Go to File/GDSII/OASIS Open Filters and access these filters before opening the file.
Use these filters to open larger files to reduce both memory usage and various processing times.
The layer and cell filters are not remembered between Qckvu3 runs, Qckvu3 defaults to open all layers and all cells.
Qckvu3 defaults to open all layers and all cells.
Open Filters are not used when opening GDSII Cache Files.
Click on Reset to set all filters back to the default settings.

Ignore Layers Open Filter for GDSII and OASIS

Added ignore layers in addition to open layers. The specified layers will be ignored while all other layers in the file would be opened.

Ignore Empty References Open Filter for GDSII and OASIS

New Ignore References To Empty Cells control where empty references would be ignored or not during the open loading phase.
Ignoring empty references would use less memory.
Ignored empty cells and references to empty cells are still included in the file report and the cell dialog. They are just not added to the database for drawing, infoing and data traversing.
Default is ignore references to empty cells.

Other Pre Open Settings for GDSII and OASIS

Load File To Memory and Items Per Quad are now moved from the Preference dialog to the Open Filters dialog. They are both settings which should be set before a file is opened.

Remembering Open Filters

"Load File To Memory", "Items Per Quad" and "Ignore References To Empty Cells" are remembered between Qckvu3 runs.
The list of open/ignore layers, ignore cell names and ignore regular expressions are also remembered. But the layers and cells filters are always default to be turned off (to prevent undesired data dropped).
To reuse the previous layer and cell filters setting, simply turn them back on and the list of layer numbers, cell names and regular expressions would be reused without reentering them.

Fast Reopen GDSII Cache Function

Added a new function to quickly reopen a GDSII file using cache files. After a GDSII file is opened, users can create GDSII cache files which can then be reopened very quickly. e.g. A 32GB GDSII file opens in 12 mins, while it's corresponding cache files can be opened in 10 seconds.
To create cache files, open the GDSII file with "Load To Memory" turned on. Access "Load To Memory" from the Select GDSII dialog box or the Preference dialog box.
Once the GDSII file is opened, go to Create GDSII Cache Files and specify the directory folder where the cache files should be generated. Specify a new directory in an existing directory and it will be created.
The names of the 2 cache files are fixed to be GDSIIFileName.scan.b64 and GDSIIFileName.dbload.b64. (where b64 specifies big endian 64 bit for SunOS, l64 for X86/Linux 64 bit, b32 for SunOS 32 bit and l32 for X86/Linux 32 bit).
Once the cache files are created in the specified directory folder, they can be reopened. To open a pair of cache files (.scan and .dbload), go to Select GDSII Cache and select the .dbload file. It will automatically finds the corresponding .scan file.
Users don't need the original GDSII file to open the cache files, unless of course the GDSII file has been changed and new cache files should then be regenerated.
When opening cache files, Load File To Memory on/off can still be used to use more or less memory for faster or slower zoom and pan.
Users cannot create cache files when a cache file is opened, it means nothing.
These cache files are not cross platform compatible.
This cache file function is only available for GDSII, not OASIS or OpenAccess.
If used with GDSII Open Filters, the cache files only contains the data layer data, cells and references opened. And the filters won't be used when reopening the cache files.
A separately licensed new program, QckCache, is included in this Qckvu3 release which can be used to create cache files for GDSII file. A batch running QckCache on GDSII file(s) can be set up to create cache files for fast reopen.

Info Point Mode

Added an Info Point Mode where users can just click a point and Qckvu3 will find info data within +/- 6 pixels thresold of the point click area.
The old Info Window Mode is still available where users click 2 points to define the window area to search for info data.
With the new Info Point Mode, i and ? are now shortcuts for Info Point; q (query) is for Info Window Mode.
(This Info Point Mode actually works exactly the same as Zoom Window Mode where users can actually click on a point and it would do infoing.)

Faster OASIS Find Array References

Finding OASIS array references in CAW is now faster with the same optimization developed for GDSII in v3.41.

Separate Controls for Text and Cell Reference Markers

Added a new control to turn on just text insertion markers. The old reference markers control now turns on/off cell reference markers only. Note that text markers are only drawn if both draw text mode and text markers are turned on.

Keyboard shortcut - x.

Changed Keyboard Shortcuts

i or ? - Info Point
q - Info Window Mode
x - Text Markers on/off

Warning When Opening a Larger File

Added a warning when users open a GDSII file bigger than 8GB or an OASIS file bigger than 2GB and "Load To Memory" is turned off. This warning will tell users that they cannot create cache files or do editing since "Load To Memory" is turned off and ask if they want to continue the open.

Extract Output Has Extra Data

Extract would generate polygons duplicated at the same location 5 times. This has been fixed.


Version Qckvu 3.40 2/11/10

Major Memory Usage Optimization

Memory usage is now reduced to less than half of the previous versions. An average of 10% to 20% of the GDSII file size can be expected.

Some performance data:
42GB GDS - Memory usage reduced from 20GB to 7.3GB
32GB GDS - Memory usage reduced from 9GB to 3.6GB
15GB GDS - Memory usage reduced from 7.4GB to 2.7GB
2.5GB OAS - Memory usage reduced from 4.8GB to 3.1GB

Programmer Notes:
- Default quad tree now stores 256 per quad instead of 32.
- Uses 5 bytes per file position. Still uses 8 per pointer when loaded into memory.

Memory Usage Controls

2 controls are added to the Preferences dialog to control Qckvu3 to use more or less memory when a file is opened.

Load File To Memory / Open For Edit
and
Items Per Quad

Load File To Memory / Open For Edit

Turn this on for editing.
Or turn this on for faster redraws (if there is enough RAM memory), but it will use more memory.

Turn this off to use less memory but redraws will be slower.
Default is Off.

Items Per Quad

Set this value to 1024 to use less memory but redraws and data traversal would be relatively slower.
Set this to 32 to use more memory but redraws and data traversal would be faster.
Default is 256.
This setting should be set before a file is opened. After a file is opened, changing this setting does not affect the currently opened file session.
This setting is remembered between Qckvu3 runs.


Version Qckvu 3.33 10/17/09

Direct Support for GZ, Zip, Compressed GDSII File

Direct open of a gz, zip or compressed GDSII file is now supported.

Editing - Adding and Deleting Data to a GDSII or OASIS File

Brand new Editing option for Qckvu3 GDSII and OASIS.
Rectangles, polygons and paths can be added to any cell in the GDSII or OASIS file. Each data can be drawn using the mouse to the current viewing cell using various mouse input snapping modes to specify the coordinates. The data will then be added to the selected layer:datatype.

Both rectangles and polygons are added as GDSII or OASIS boundaries. Paths are added as GDSII or OASIS paths with the specified width and path extension.

A new layer can be added via the Layer Dialog.

Boundaries and paths can also be deleted. Select the Delete Mode in the Edit dialog, then grab a window to find the path or boundary for deletion, click Delete to delete.

Undo and Redo are available.

Changed data can be saved to a new file (GDSII to GDSII, OASIS to OASIS).

New FLEXlm Environment Variable $ARTWORK_LICENSE_FILE

Added new environment variable $ARTWORK_LICENSE_FILE for specifying the FLEXlm license server. This is in addition to $LM_LICENSE_FILE.

Layer Dialog

Previous versions would revert applied settings back if the dialog is closed without saving. This has been fixed.
A layer can be added from this dialog. The added layer can then be selected in the Edit dialog and used for adding new paths and boundaries on that new layer.

Load File To Memory Mode

This mode in the Select GDSII and Select OASIS dialog boxes is also used to open the GDSII or OASIS file for editing.

Snap to Object, Filtered Area

When snap to object finds a filtered area, the vertex found is 0,0. This has been fixed.

Plug-in Crashes Qckvu3 During File Open

Previous versions of Qckvu3 might crash during a long file open after the first file open if something is done to a Plug-in. This has been fixed.

OASIS Cell Array References

Previous versions might show missing OASIS cell array references data if the number of rows and columns of the array is different. This has been fixed.

Open OpenAccess Crash

Versions before v3.31 would crash when selecting an OpenAccess library in the open OpenAccess dialog and the library has a cell that's not a layout view. This has been fixed.

GDSII File Open Reported Time

If the GDSII file has warnings, the time spent to open the file was reported including the time spent before the warnings message box was dismissed. This has been fixed.


Version Qckvu 3.31 09/17/09

New Cell References Outline and Label Filter Controls

Drawing outline and label for different references can now be controlled by whether they are single or array references or both. Further filtering can be done using the minimum array dimension or minimum size (size is for both single and array references).

Report Info Details

Info detail information in the bottom text area scrolls to the right when it's longer than the text area width. This has been fixed to always show the beginning of the info text.

Home View, Middle Click Redraw, Not Remembered

In v3.30, when redrawing at home view using middle click, the new home view isn't remembered; zoom home after that will draw the old home picture. This has been fixed.

Ending Point, Line, Rectangle, Polygon - Snap Object

Ending an object draw (point, line, rectangle, polygon) now clears the flashing info object if snap object mode was on for the last vertex of the object. This also serves as an acknowledgement to the user that the object is "ended/accepted". A message on the bottom status text of Qckvu3 is also shown in yellow reminding the user to right click to pop up the menu to accept the object vertex and end the point, line or rectangle. This message is not shown for polygon where a rubber band is a better reminder.

OpenAccess Crashing On Open

When opening an OpenAccess cell, if that cell doesn't have a layout view, previous versions would crash on the open OpenAccess dialog box. This has been fixed.


Version Qckvu 3.30 09/04/09

New Qckvu3 Lite

Qckvu3 Lite is available for GDSII (limit 1GB) and OASIS (limit 250MB). No lite version for OpenAccess.

Universal Mouse Navigation

All mouse input modes (except pan) now work like this:

With these controls, users can now navigate to anywhere without changing mode and without moving the mouse outside of the Qckvu3's drawing area.
The sensitivity of drag to left and right is +/- 6 pixels. So if users actually intend to do a click but accidentally move the mouse a bit, it remains a mouse click (instead of drag left or right).
The cursor changes as the mouse is drag left or right, it indicates the mode when it is changed.

New Info Object Point Mode (Zoom Window Mode with Info)

In zoom window mode, it has always been push mouse, drag and release to zoom to a window area. Single clicking the mouse didn't do anything.
Now, single clicking does an Info Object Point search of the objects around where the mouse is clicked (the search radius is +/- 6 pixels).
This becomes the Info Object Point mode.
Users now don't need to change mode to do zoom window, zoom out and info object vertex.
Space to walk around an object and to stop the info flashing. Esc, toolbar stop button or right click to clear the info object.

Info Object Window Mode

Previous info point and window mode now becomes Info Window mode. Click and click to define the 2 points of a rectangular window area to info.
Push left mouse, drag to right and release to zoom window. Push left mouse, drag to left and release to zoom out.
Users now don't need to change mode to do zoom window, zoom out and info window.
Space to walk around an object and to stop the info flashing. Esc, toolbar stop button or right click to clear the info object.

Zoom In and Out Keyboard Shortcuts Ctrl+ Ctrl-

Keyboard shortcut to zoom in 2X from the center is Ctrl+ on the number pad. Keyboard shortcut to zoom out 2X from the center is Ctrl- on the number pad.
Zoom

After an object is highlighted in Info mode, the highlight blinks. Pressing the space bar (or clicking on "Walk Around Object") to jump to the next vertex stops the blinking.

This "stop blinking" also works for info on cell references and texts even though there are no vertices to walk around.


Version Qckvu 3.09 11/13/08

Licensing the Plug In

The CA Wizard Plug In now has its own license and will not function unless a separate CA Wizard license is available.

Qckvu3 Cell References Nesting Levels Setting

The nesting levels display control in the cell reference dialog in Qckvu3 now has a list box of nesting levels 0 to 20. User can select multiple levels to draw cell references boxes and labels.

Qckvu3 Load File To Memory Setting Remembered

The "Load File To Memory" setting in the "Select GDSII" and "Select OASIS" dialogs is now remembered from session to session. Load On or Off status is displayed in the text area when opening a file.


Version Qckvu 3.07 10/15/08


Version Qckvu 3.06 10/15/08

Highlight Dialog



Version Qckvu 3.05 10/07/08 CA Wizard 1.01 10/07/08

Load File To Memory has been implemented. If there is enough RAM to hold both the quad tree (generated by QIS) and the input data in memory, then using the Load File to Memory control will result in much faster highlighting of cells and highlighting of selection sets. Unfortunately it is not possible to know exactly the size of the quad tree and amount of RAM the input data will require. More work will be done on possible ways of predicting this.


Version 3.04 09/30/08