Product Documentation
Virtuoso Schematic Editor User Guide
Product Version IC23.1, November 2023

14


The Search Assistant and Toolbar

This chapter contains the following topics on how to use Search functionality in the Virtuoso Schematic Editor L/XL:

Introducing Search

The Search assistant pane and Search toolbar provide a wide range of design search facilities, including dynamic context search categories, fast keyword directed searching with immediate feedback, and an intuitive user interface (UI) that makes design data searching both simple and productive.

Search uses Virtuoso platform data structures and commands, and presents them through an interactive UI allowing you to refine queries based on the results fed back. Precise searches within searches are then possible as design data is structured and contains unique identifiers for netlisting and backannotation purposes.

The schematic editor also provides database (cellview) centric Find and Replace functionality via the Edit – Find and Edit – Replace options.

Some of the key features provided by Search include the ability to:

Search Terminology

To fully appreciate the extent of the functionality provided by Schematics Search, you should be familiar with some of the common terminology used:

Term Description

Category

A search option that matches a specific type of content.

Search results are collected in categories which provide a convenient means of characterizing and sorting hits. Categories can be specific to a particular session window, object, or stage in the design flow.

Category Group

A collection of categories that share common characteristics.

In order to provide quick access to related objects, categories can also belong to one, or more, category groups that are always referenced by name.

You can choose to search individual categories or across all categories simultaneously (for example, typing an instance name may generate search results across many categories). Therefore, multi-dimensional searches, and the ability to browse and sort hits across dimensions, can greatly speed up the browsing of design data.

See also the Search Categories Pull-Down.

Context Aware

An application specific collection of search categories.

As there is potential for a large amount of design data content, it is important that search space is minimized as much as possible. This helps focus the number of hits, as well as simplifying feedback and allowing quicker search performance.

This search space reduction is achieved by limiting each search to data that is associated with the current view or application. For example, searching a schematic sheet will only return hits for the associated cellview. Descending into another cellview, or changing the active window, will change the search scope.

Categories are registered and unregistered dynamically so that each scope can prioritize hits according to the available context information.

See also Ranking Hits.

History

Displays the most recent search criteria entered.

As search queries can be difficult to remember, Search functionality maintains a history of applied queries. These can be accessed through a pull-down menu.

See also Search History/Results Pull-Down.

Hit

A target object that matches a given query.

By instantly displaying search results, you can then refine your search criteria interactively. In schematic views, because many objects have unique identifiers, a single word search will often be sufficient, removing the need to specifically state the object type.

For example, it is common in schematics to use naming conventions to distinguish types of instances (the schematic editor’s automatic naming functionality helps reinforce this). Resistors may be named r1, r2, res5, and capacitors named cap1...cap5, nets named net1...net50, and so on. In such cases, typing “r”, “cap”, or “net” will often be sufficient to list a small number of results to find the desired object.

Design teams may adopt certain naming conventions which can be used to filter objects without the need to build these conventions into the search engine.

Hit Group

A collection of hits from the samecategory.

Keyword

A special query word that matches a category or a category group.

Each category or category group has one or more keywords that allow you to limit the scope of searches. This is particularly useful where specific identifiers are not known. For example, when presented with a new schematic, you may quickly navigate the design data using keywords such as cells, pins, notes, or markers.

Implicit keywords are also created for each category group so that a single keyword may match multiple categories.

As you will realize, keywords only become useful once they are known. To help with this a number of conventions and UI aids are provided:

  • each category name is a keyword.
  • each category group name is a keyword.
  • each keyword is a plural noun which will make it less likely to clash with identifier substrings.
  • keywords match text in existing menu entries and commands.
  • keywords may end in an optional “:” character (although this is guaranteed to only match a category or category group).
Keyword matches are always case insensitive, but may be treated as regular query words, which means that they may additionally be matched using the current search options.

Query

An expression that contains words, keywords, and operators.

Each query is first split into multiple terms, each of which is categorized as being either a regular search word or keyword.

Words are matched using logical operators specified through the following Find With options:

  • All Of The Words (AND)
  • Any Of The Words (OR)
  • The Exact Phrase (EXACTLY)
  • None Of The Words (NOT)

Terms are delimited by whitespace, but the Find With: The Exact Phrase option can be used to define multiple word terms.

The default search mode uses the AND operator so that results are refined as more terms are entered.

See also Advanced Search.

Result

A collection of hit groups that are generated by the search engine.

Scope

Where the search result was found. This could be in the current tab, the current window, all windows, the current hierarchy, or the top-level hierarchy.

See also Advanced Search and Displaying The Search Scope.

Target

A category object that is matched using a search query.

Word

A regular query token that is matched with the content search data.

There are four types of word matching that are available:

  • Prefix
  • Substring
  • Exactly
  • Suffix

These Match Word options do not apply to keywords, but allow you to take advantage of naming conventions that you may have adopted in your design.

All characters of a word will be matched.

See also Advanced Search.

Accessing the Search Assistant and Toolbar

Hiding the Search Assistant and Toolbar

The Search User Interface

Search functionality in Schematics comprises of two main search entry mechanisms:

The Search Toolbar

Figure 14-1 The Search Toolbar

The Search toolbar comprises of the following UI components:

Search Query Entry

The Search Query Entry field is used to enter any search queries (searches) that you want to perform on the current design data.

When the Search toolbar is inactive, the word Search will be displayed in gray text in the entry field (alternatively, the current category will be displayed). As search queries are entered in the Search Query Entry field, results will begin to display immediately in the Search History/Results Pull-Down.

If a query is taking some time to complete a progress bar will be displayed in the status bar area at the bottom right of the schematic’s window. This search can be canceled (stopped) using the Ctrl+C keys.

Right-clicking over the Search Query Entry field will display a context-menu which will allow to perform a variety of text editing tasks including Cut, Copy and Paste (see also Search Toolbar Context-Menus).

Search Categories Pull-Down

The Search Categories (see category) pull down is used to refine the scope of your search. For example you can choose to only include Instances in your Search Query Entry.

If you want to perform multiple category group searches enter the category keywords in the Search Query Entry field. For example you could enter “Instances Nets Libraries”.

From the pull-down you can also choose to:

You can choose to Enable All or Disable All search categories (plug-ins).

Advanced Search

The Advanced Search pull-down is located to the far right of The Search Toolbar and The Search Assistant Pane, and provides the following commonly used search options to refine your search results.

Figure 14-4 The Advanced Search Pull-Down

Advanced Search Use Model Example

To locate all devices in a design hierarchy click the Advanced Search pull-down, on the Search toolbar, and then select Top-Level Hierarchy from the From Within section.

The “cells” returned in the query results will detail all of the devices used in the design (sorted by name or library). Each device will also have a Master Status column which can be used to identify unbound devices.

To locate all blocks which use a particular device, you can use a hierarchical instances query. For example, “nmos instance”.

Search History/Results Pull-Down

The pull-down option on the immediate right of the Search Query Entry field has a dual purpose.

The Search History option changes to a Clear Query option (X) after a search has been run.

Figure 14-6 Clear Query replaces Search History after a search has completed

Figure 14-7 Search History results for a search on “Pins”

The Search Results pull-down can display up to 30 hits, with at least one search result from each matched search category on display. See also Ranking Hits and Displaying The Search Scope.

You can extend initial search results by performing one of the following:

You can dismiss search history/results by clicking elsewhere on the session window, or selecting the Esc key.

Because search results only reflect a snapshot, object selection is one-directional. That is, cross-selection of results works only in the design canvas.

Ranking Hits

The category with the highest rank score will appear at the top of the results list. You should note however that ranking only influences the UI presentation, as all hits will remain accessible.

Search Results Pull-Down ToolTip Information

Floating your cursor over a specific result in the Search Results pull-down will raise a ToolTip which details full information on the current search result.

For example, if you have an Instance Pin highlighted, the ToolTip will display Name, Instance, Net and Direction property information.

Selecting a Search Result

Selection of an object listed in the displayed Search Results will cause that item to be selected in the current session window view, highlighted in the Navigator Assistant pane and it’s properties also displayed in the Property Editor Assistant pane.

Searching Further on Search Results

A right-click over a search result allows you to perform a search on that particular result (for example, “Search For: “vdd!”). Clicking on this option will perform a search within a search, and the search results list will update to only display those search results that include “vdd!”. All other search results will be dismissed.

Search Toolbar Context-Menus

Right-clicking over the following Search toolbar UI components will display a related context-menu.

Saving Search Results

You can save search results by right-clicking over any displayed results and selecting the Save Results option from the search context-menu.

Selecting Save Results will display the Save Search Results Form from where you can save search results as a .csv file.

This file can then be re-opened in, for example, a text editor or a spreadsheet application.

You can also save search results using the Search Assistant Pane Context-Menus.

Figure 14-9 Save Search Results Form

The Search Assistant Pane

Figure 14-10 The Search assistant pane

The interactive Search assistant pane is a dockable/undockable pane that offers additional search viewing information to that offered by The Search Toolbar.

The Search assistant pane becomes active in either of the following cases:

  1. By choosing to use the Search assistant rather than The Search Toolbar to perform a design search, or
  2. The Search assistant pane will also become active when a category title is selected in the Search toolbar search results or if you click the Select All option from the Search Results pull-down.
The total number of search hits is displayed in the top-left corner of the Search assistant pane. Floating your cursor over this number will also display how many potential result targets there were and how long it took to perform the current search. For example, “238 hits from 1700 targets, found in 0.29 seconds”. A maximum of 1023 search hits can be displayed at any given time. If the number of search hits exceeds 1023, refine your search conditions to display all results.

The Search assistant pane comprises of the following UI components that are also available with The Search Toolbar:

The Search assistant pane also has the following unique UI components:

Search Results Table

As mentioned, the Search Results Table will display search results if you choose to use The Search Assistant Pane rather than The Search Toolbar to perform a design search, or if you choose a category title or click the Select All option from the Search Results pull-down.

The Search Results Table is a fully populated version of the Search Results pull-down available from The Search Toolbar. It contains a number of features that enable you to better interpret results.

Figure 14-12 Search Results Table

Column heading titles are updated depending on the object category result currently selected. For example, if you have an Instance Pin result selected the column titles will display related property details on Name, Instance, Net and Direction. However, if you have a Net result selected the column titles will be labeled No. Connections and Instance Pins.

If currently available, object selection in the Search Results Table (and the Search Results pull-down) will also be reflected in the Navigator Assistant pane and the Property Editor Assistant pane, with the Navigator showing the selected object’s location in the current hierarchy and the Property Editor detailing associated object properties.

Likewise, if you search on constraints using the Search assistant, selecting one or more constraint results in the Search assistant will cause the constraints to be automatically selected in the Constraint Manager. Double-clicking on these results will also run the default action of selecting all constraint members and having these selections also cross-selected in the Navigator and Property Editor assistants.

As search results only reflect a snapshot, object selection is one-directional. That is, cross-selection of results works only in the design canvas.

Displaying The Search Scope

For any given search result, the owner is usually a cellview in the form lib:cell:view. As this information can be expansive it is detailed in a separate Owner column, displaying those results found in the current window with a white background and those found out-of-context in a gray background. The Owner column can then be sorted to group results by their source cellview rather than by (the default) object name.

Owner information is also displayed in the ToolTip information.

Figure 14-13 The Search Scope is shown in the Owner column

Search Assistant Pane Context-Menus

Right-clicking over the following Search assistant pane UI components will display a related context-menu.

Search Results Table ToolTip Information

Floating your cursor over a specific search result in the Search Results Table will raise a ToolTip which details full information on the current search result. This is especially useful when data is obscured.

For example, if you have an Instance highlighted, the ToolTip will display Name, Library, Cell, View and Owner information.


Return to top
 ⠀
X