RoutingPad description (API) More...
Public Types | |
typedef Component | Inherit |
![]() | |
typedef Go | Inherit |
Static Public Member Functions | |
static RoutingPad * | create (Pin *) |
![]() | |
static ComponentFilter | getIsUnderFilter (const Box &area) |
![]() | |
static bool | autoMaterializationIsDisabled () |
static void | enableAutoMaterialization () |
static void | disableAutoMaterialization () |
Static Public Attributes | |
static const uint32_t | BiggestArea = (1 << 0) |
static const uint32_t | HighestLayer = (1 << 1) |
static const uint32_t | LowestLayer = (1 << 2) |
static const uint32_t | ShowWarning = (1 << 3) |
static const uint32_t | ComponentSelection = BiggestArea|HighestLayer|LowestLayer |
RoutingPad description (API)
The RoutingPad is a part of the trans-hierarchical mechanism. It allows to connect a Net from the top-level netlist to a plug in an Instance at any level inside the hierarchy, through a Plug Occurrence. RoutingPad can also be created from Pin or Contact Occurrences.
When the RoutingPad is created using a Plug Occurrence, it can be set afterward to any of master net external Component. A utility method RoutingPad::setOnBestComponent() is also provided to automatically set the RoutingPad on a Component matching criteria of surface or layer level.
The position of the RoutingPad is fixed relatively from the instances in it's occurrence path and the entity it refers. The reference point used on the entity is it's center whether it is a segment, a pin or a plug. In the later case, it is the center of the cell.
Useful for calling upon methods of the base class without knowing it.
|
static |
Special variant to create a RoutingPad from a top-level Pin.
bool Hurricane::RoutingPad::isPlacedOccurrence | ( | uint32_t | flags | ) | const |
Check wether all the instances in the occurrence path are placed. If at least, one is not and flags
contains RoutingPad::ShowWarning, display a warning.
When using a RoutingPad as a reference/anchor for other physical components (that is, the occurence entity is no longer a Plug), it is critical that it is in a truly meaningful position. And this is true only if all the instances in the occurrence's Path have a physical position (i.e. are placed).
|
inline |
Occurrence Hurricane::RoutingPad::getPlugOccurrence | ( | ) |
|
virtual |
Implements Hurricane::Component.
|
virtual |
Implements Hurricane::Component.
|
virtual |
Implements Hurricane::Component.
|
virtual |
Implements Hurricane::Component.
|
virtual |
Reimplemented from Hurricane::Component.
Point Hurricane::RoutingPad::getSourcePosition | ( | ) | const |
Point Hurricane::RoutingPad::getTargetPosition | ( | ) | const |
Point Hurricane::RoutingPad::getSourceX | ( | ) | const |
Point Hurricane::RoutingPad::getSourceY | ( | ) | const |
Point Hurricane::RoutingPad::getTargetX | ( | ) | const |
Point Hurricane::RoutingPad::getTargetY | ( | ) | const |
As the position of the RoutingPad is fixed relatively to the instance path and the anchoring component, it cannot be translated. Thus this method do nothing. The Routing pad will translate nevertheless with any translation of any of the instance in it's path or the anchor.
Implements Hurricane::Go.
void Hurricane::RoutingPad::setExternalComponent | ( | Component * | component | ) |
When the RoutingPad is anchored on a Plug, allow to set the component
that we will anchor on. The Occurrence of the RoutingPad is updated from the Plug to the component
.
component
must be tagged as Net external. void Hurricane::RoutingPad::setOnBestComponent | ( | uint32_t | flags | ) |
Automatically select the best component to anchor on, according to the criteria givens on flags
(selection occurs in net external components).
void Hurricane::RoutingPad::restorePlugOccurrence | ( | ) |
If the RoutingPad has been anchored on a Component, detach from it and revert to the Plug Occurrence.
|
static |
Select the external Component of biggest area.
|
static |
Select the external Component of in the highest layer.
|
static |
Select the external Component of in the lowest layer.
|
static |
Whether to display a warning or not while checking the instances placement.
|
static |
A mask to filter bit parts of a flag belonging to component selection.
Generated by doxygen 1.9.1 on Wed Nov 20 2024 | Return to top of page |
Hurricane VLSI Database | Copyright © 2000-2020 Bull S.A. All rights reserved |