Inheritance diagram for oaOccNet:
Public Methods | |
oaBoolean | isEmpty () const |
oaBoolean | isImplicit () const |
oaBoolean | isGlobal () const |
oaSigType | getSigType () const |
oaUInt4 | getNumBits () const |
void | getName (oaName &name) const |
void | getName (const oaNameSpace &ns, oaString &name) const |
void | getPathName (oaName &pathName) const |
void | getPathName (const oaNameSpace &ns, oaString &pathName) const |
oaOccBitNet * | getBit (oaUInt4 bitIndex) const |
oaOccNet * | getAssignedNet (oaBoolean ignoreDefault=false) const |
oaOccNet * | getAssignedNet (oaAssignedNetSpec &spec, oaBoolean ignoreDefault=false) const |
oaNet * | getNet () const |
oaModNet * | getModNet () const |
oaCollection< oaOccNet, oaOccNet > | getGlobalNets () const |
oaCollection< oaOccInstTerm, oaOccNet > | getInstTerms (oaUInt4 filterFlags=oacInstTermIterNotImplicit) const |
oaOccMemNetCollection | getMemberNets (oaBoolean unique=true) const |
oaCollection< oaOccBitNet, oaOccNet > | getSingleBitMembers () const |
oaCollection< oaOccNet, oaOccNet > | getSpan () const |
oaCollection< oaOccTerm, oaOccNet > | getTerms (oaUInt4 filterFlags=oacTermIterAllNotHidden|oacTermIterNotImplicit) const |
Static Public Methods | |
oaOccNet * | find (const oaOccurrence *occurrence, const oaName &name) |
Public Types | |
enum | { dtIndex = oacNetDataType } |
oaOccNet objects are always in the occurrence domain. Nets span the domains in a design. An oaOccNet may be an occurrence of an oaNet in the block hierarchy and may be an occurrence of an oaModNet in the module hierarchy.
Multi-bit nets represent a collection of logical connections. Nets can include busNets having a single base name with an index range, or they can include bundleNets, which are a more complex grouping of nets. Multi-bit nets can have overlapping names. For example, busNets addr<7:0>
and addr<3:0>
.
All occBusNets with the same root name are managed by an oaOccBusNetDef. The occBusNetDef tracks:
The occBusNetBits are automatically created for each bit of a occBusNet, if they do not already exist. They are available for those applications performing scalarized connectivity traversal of the data.
The bundleNets can contain scalarNets or buses. When a bundleNet is created, the constituent scalarNets and busNets are automatically created in addition to the bundleNet itself. All automatically created net objects are considered "implicit." Implicit nets are more restricted in terms of the operations that are allowed to work with them.
Names are normally associated with occNets. The various net objects take and return names through the general oaName object but also use the oaScalarName, oaVectorBitName, oaVectorName, and oaBundleName objects. These name objects manage the mapping of names from one nameSpace to another. For example, a net is created using the name in CDBA nameSpace; another application can retrieve the net's name in the Verilog nameSpace.
You can have two or more occNets that are equivalent. Equivalent occNets are traversed separately or logically as the same net. You can only set single-bit nets equivalent to each other.
The oaOccNet class can be observed by deriving from oaObserver<oaOccNet>.
|
This function searches the specified occurrence for a occNet with the specified name. If name is hierarchical, then this function will descend into lower levels of occurrence hierarchy, expanding the hierarchy and binding the master designs as needed. If name is a bundle name, and any of its members is hierarchical, all of the members must have the same hierarchical path or an exception is thrown. If the net is found, the function returns the net. Otherwise, NULL is returned.
|
|
This function returns the occurence net assigned to this net as per the inherited connections specification. NULL will be returned in the following cases:
Exceptions are thrown for cases when an assignment is found but a net with that name does not exist or if the default net name needs to be used, 'ignoreDefault' is false, but there is no net that matches the default net name specified. This version is for diagnostic use and returns the set of connectDefs and/or assignments that were looked at in the hierarchy for resolving the assigned net via the 'spec' parameter. Clients can inspect the array which will consist of pointers to either connectDef or assignment objects in the occurrence domain.
|
|
This function returns the occurence net assigned to this net as per the inherited connections specification. NULL will be returned in the following cases:
Exceptions are thrown for cases when an assignment is found but a net with that name does not exist or if the default net name needs to be used, 'ignoreDefault' is false, but there is no net that matches the default net name specified.
|
|
This function returns a pointer to the occNet that corresponds to the specified bitIndex bit of this net. For scalarNets, this function simply returns the net. For busNets, the busNetBit corresponding to the bitIndex position is returned. For example, if this net is a busNet "a[7:0]" and bitIndex is zero, this function will return the busNetBit corresponding to "a[7]". For bundleNets, a scalarNet or busNetBit is returned.
|
|
This function returns an oaOccNet collection consisting of all global nets with the same local name as this global net. An oacInvalidGlobalNet exception is thrown if this net is not a global net.
|
|
This function returns a collection of instTerms in this net. The filter flag bits are defined below and may be logically OR'd together to refine the contents of the collection.
|
|
This function returns a collection of occurrence nets of which this occurrence net is a member. For example, if an occurrence hierarchy contains both scalar net The member net capability for occurrence nets exactly parallels the capability for oaNets in the block domain. See oaNet::getMemberNets for details on which nets are members of which other nets.
|
|
This function returns a pointer to the corresponding net in the module domain. NULL will be returned if this net is an occurrence of a physical-only net.
Reimplemented in oaOccBundleNet, oaOccBusNet, oaOccBusNetBit, and oaOccScalarNet. |
|
This function returns the local name of this net in the specified nameSpace in the specified name string. The name is relative to the parent occurrence of this net.
|
|
This function returns the local name of this net within its parent occurrence.
|
|
This function returns a pointer to the corresponding net in the block domain. NULL is returned if this occurrence net is not visible to the block domain.
Reimplemented in oaOccBundleNet, oaOccBusNet, oaOccBusNetBit, and oaOccScalarNet. |
|
This function returns the number of bits in this net. |
|
This function returns the full path name of this net in the specified nameSpace in the specified pathName string. The pathName is relative to the top occurrence in the occurrence hierarchy containing this net.
|
|
This function returns the full path name of this net, relative to the top occurrence in the occurrence hierarchy containing this net.
|
|
This function returns the signal type of this net, which is the signal type of the corresponding oaModNet. |
|
This function returns a collection of single-bit member nets that are in this net. If this net is a single-bit net, the collection contains itself. If this net is a busNet, the collection contains all of the corresponding busNetBits. |
|
This function returns a collection of all occNets in the same span as this net. The span is defined as the set of nets connected across the module hierarchy. The span of nets does not cross the design hierarchy. The span of a net will change as the connectivity through occTerms and occInstTerms changes. |
|
This function returns a collection of terminals in this modNet. By default, the collection only contains explicit terminals associated with this net.
|
|
This function returns a boolean value that indicates if this net has any objects attached to it or associated with it. |
|
This function returns a boolean value that indicates if this net is designated as a global net. Global nets connect implicitly to all global nets of the same name no matter what cellView in a hierarchy they appear in. |
|
This function returns a boolean value that indicates if this occNet is an implicit net. Implicit nets only exist because they are components of an explicit busNet or bundleNet. |
|
|
Copyright © 2002 - 2010 Cadence Design Systems, Inc.
All Rights Reserved.