IP Hierarchies - From IPs to projects

IP Hierarchies are built up from the parent-child resource relationships of each IPV in the system. They constitute a Project Component and IP BOM (CIPB) which may represent a large SoC or a smaller subsystem.

IP Hierarchies can be reused in different contexts, when the top level IP in the hierarchy is attached as a resource to a new IP. IP Hierarchies provide traceability to see where any given IP or IP Version is use in any project across an organization. 

IP Hierarchy overview

The Helix IPLM IP Hierarchy, along with the contents of each IPV, constitutes the Component and IP BOM (CIPB) for a project. The IP Hierarchy provides traceability through Helix IPLM releases, capturing the relationships and version dependencies between different IPVs.

Usage of IPV releases is tracked through IP Hierarchies, providing the ability to know exactly where each IP is used, both in real time as releases are made, and years later when a product already in production needs to be checked.

IP Hierarchies are the basis for building workspaces in Helix IPLM, with allows the changes in each workspace to be compared agains the reference hierarchy. Updates are delivered based on the hierarchy, and new releases are reconciled against the hierarchy and promoted back up to the central Helix IPLM server for distribution across the organization

IP resource dependencies

An IP release captures the contents of the IP in the DM system plus the relationships between IPVs, as IP resources. Each IP resource can in turn have its own resources, which allows an IP Hierarchy to be constructed. There is no limit to the number of levels in each hierarchy.

Each individual IP is the same type of object no matter which level of the hierarchy it resides in, as each is reusable as a resource or a new project tree.


IP resource interfaces

IPLM Web

The resources of an IP can be modified, with either additions, modifications, or deletions of existing resources for the IPLM Web IP edit function, available either from the IP page or the latest IPV release page.

The resource version, Line, and alias can be selected.

Command line

IP Resource management is also available from the Command Line interface (CLI) either via the 'pi ip edit' command (for an existing IP) or the 'pi ip add' command (when creating a new IP). These capabilities mirror the IPLM Web configuration options for resource names, versions, and lines.

Saving the template will result in a new release of the IP, if resources have been changed.

IP Resources in PiCLI
# Resources are optional
# One resource per line (newlines require a leading space)
resources = ARM.cortex@1.TRUNK
            tutorial.CADenv@GOLD.TRUNK
            tutorial.analog_top@HEAD.TRUNK
            tutorial.digital_top@2.TRUNK
            tutorial.fusa@LATEST.TRUNK
            tutorial.padring@1.TRUNK
            tutorial.verif_config@1.TRUNK

# Private resources are only loaded when this IP is the top level of a Workspace.
# This is useful to prevent subsystem test benches from loading into bigger Workspaces.
private_resources =