DVT VHDL IDE User Guide
Rev. 19.1.17, 17 May 2019

21.5.2 Preview Structural Changes in the Design Hierarchy

Any change to a module or entity definition, like new ports or new signals being added, affects all its instances. Before proceeding to source code changes, you can preview the design structural changes.

Terminology:

  • output instance is the module instance where the connection starts. It outputs the signal that will be connected. output module is the module being instantiated as an output instance.

  • input instance is the module instance where the connection ends. It inputs the signal that will be connected. input module is the module being instantiated as an input instance.

  • closest parent instance is the parent instance through which a signal is routed to connect the ports leading from the output instance to the input instance across the design hierarchy. No ports will be added to the closest parent instance. The closest parent module is the module corresponding to the closest parent instance.

  • relevant modules are the modules that will change by adding new ports and/or new signals. relevant instances are instances of relevant modules.

Ports are added only to modules that are instantiated on the paths leading from the output module instance and the input module instance to the closest parent instance. Ports are added to the output module or the input module only if the connection is not using an existing port.

All the instances that will not change are grayed out. All relevant instances are highlighted. If you hide the irrelevant instances, only the grayed out instances enclosing relevant instances are kept in the tree.

The following filters in the Connect Instances Toolbar help you understand the structural changes:

  • Show Design Hierarchy to see the unfiltered design hierarchy.

  • Minimal Path highlights just the affected path from the output instance to the input instance. It includes the closest parent instance through which the signal is routed. It presents the connection between the instances you've selected without considering the side effects caused by other instances.

  • Direct Changes highlights all the "similar" instances that are connected. It practically presents all the instances of the closest parent module.

  • Indirect Changes highlights all the changes in the design that are not Direct Changes. For example an output module could be instantiated outside the closest parent module design hierarchy, in "isolation" from the input module. As such these may be unexpected changes that lead to dangling ports.

  • All Changes highlights all the changes in the design. Here you see all the relevant instances. It is the union of Direct Changes and Indirect Changes.

Note 1: Changes are computed on all tops.

Example

We connect blue1: Blue ( output instance) to d1 : D ( input instance). b1 : B is the closest parent instance and B is the closest parent module. The relevant instances are highlighted.

The structural changes of the filters above are:

Show Design Hierarchy Minimal Path Direct Changes Indirect Changes All Changes