Rev. 24.1.15, 10 July 2024

23.1.5 Diagram Filters

NOTE: Filters only apply to Schematic and Flow diagrams.

You can customize the diagram using the Filters button in the diagram editor toolbar.

Use the drop-down menu at the top of the dialog to select from available filters.

Use the buttons in the top-right corner of the dialog to create, duplicate, or delete the current filter.

Use the checkboxes at the bottom of the dialog to further clean up the diagram.

A filter is defined using filter rules (one per line). The general form of a filter rule is:

command element_kinds matching regex [ using color_name_or_code]

  • command is one of hide, show, or color

  • element_kinds is a comma-separated list of kinds. The available kinds are blocks, instances, types, signals, ports, input ports, output ports, and inout ports

  • regex is a regular expression that matches the relevant diagram element labels

  • color_name_or_code is a color specified by name, 6- or 3-digit hexadecimal code, or comma-separated decimal RGB code or the keyword random. This is relevant only for color rules.

TIP: You can use content assist to write the filters ( CTRL + Space).

To apply a filter rule only to elements under a specific instance, you must provide the relevant path in the regex section of the rule:

  • a path must always begin with the name of the top instance (or module) in the diagram (if instance is under top_instance, then top_instance/instance/... is valid, while instance/... is not)

  • a path consists only of names of instances (with the possible exception of the top module) and " /" (i.e. you can't use the module name in a path except if the diagram top is a module, and not an instance)

  • each level is separated from the previous using " /'''" (valid: '''top_instance/inst1/inst2/...; not valid: top_instance.inst1.inst2...)

  • regular expressions may be used in the path section of a rule (for example, top_instance/.*/some_instance)

  • if the regex contains " /' ", everything before the last "/" is the ''path, the rest is used to match the relevant diagram elements (in the following example, the bolded text is the path: '''top_instance/.*/inst1/ .*clk.*)

  • if the regex does not contain " /", it applies to all elements of the appropriate element_kinds

TIP: You can hide the hierarchy under an instance with the filter "hide blocks matching path/to/instance/.*".

With the predefined filter in the image above, the resulting diagram will be similar to the following: