首页 / design / oaAreaHalo

oaAreaHalo

模块: oapy._oa._design 导入: from oapy._oa import _design

概览

oaAreaHalooapy 中可用,可通过 _design 模块访问。

本页汇总 oaAreaHalo 当前在 oapy 中可用的 Python 接口。

详细说明

An area halo is a type of blockage associated with an instance or a master, representing an area around the master's prBoundary。 The shape of the halo is determined from the shape of the prBoundary of the master and the given offsets, and it is automatically updated to reflect changes in the master's prBoundary。 The area halo is most commonly used to prevent standard cells from being placed within a certain range of an instance。 This is usually done to make sure there is enough space to properly route to the (presumably) large number of pins on the side of a block。 Note that the oaAreaHalo object officially supports rectilinear boundaries only i.e。 the owner, if it is an oaPRBoundary object should represent a rectilinear figure, or, if it is an explicit instance, the singleton oaPRBoundary for the instance master should be rectilinear。 Clients can use an oaAreaBlockage object to describe a halo with a fixed shape which can be rectilinear or non-rectilinear。

方法总览

状态 Python 调用
obj.getOffsets(left, bottom, right, top)
obj.isSoft()
obj.setOffsets(left, bottom, right, top)
obj.setSoft(soft)
_design.oaAreaHalo.create(owner, left=0, bottom=0, right=0, top=0)
_design.oaAreaHalo.find(owner)

方法说明

obj.getOffsets(left, bottom, right, top)

绑定状态: 已绑定

Python 调用: obj.getOffsets(left, bottom, right, top)

This function returns the offsets for the halo of the blockage。

参数

  • left: The left offset for the halo。
  • bottom: The bottom offset for the halo。
  • right: The right offset for the halo。
  • top: The top offset for the halo。

Python 示例

from oapy._oa import _design

# assume obj is a oaAreaHalo
obj.getOffsets(left, bottom, right, top)

obj.isSoft()

绑定状态: 已绑定

Python 调用: obj.isSoft()

This function gets the soft attribute for this derived blockage。

Python 示例

from oapy._oa import _design

# assume obj is a oaAreaHalo
obj.isSoft()

obj.setOffsets(left, bottom, right, top)

绑定状态: 已绑定

Python 调用: obj.setOffsets(left, bottom, right, top)

This function updates the offsets for the halo of the blockage。

参数

  • left: The left offset for the halo。
  • bottom: The bottom offset for the halo。
  • right: The right offset for the halo。
  • top: The top offset for the halo。

Python 示例

from oapy._oa import _design

# assume obj is a oaAreaHalo
obj.setOffsets(left, bottom, right, top)

obj.setSoft(soft)

绑定状态: 已绑定

Python 调用: obj.setSoft(soft)

This function sets the soft attribute for this derived blockage。 A halo with this attribute indicates that standard cells should not be placed within the halo, but later optimization phases can use the halo area。

参数

  • soft:

Python 示例

from oapy._oa import _design

# assume obj is a oaAreaHalo
obj.setSoft(soft)

_design.oaAreaHalo.create(owner, left=0, bottom=0, right=0, top=0)

绑定状态: 已绑定

Python 调用: _design.oaAreaHalo.create(owner, left=0, bottom=0, right=0, top=0)

This is the constructor for an area halo。 Only one area halo can exist per owner object。 Attempting to create multiple area halos on an object will result in an exception being thrown。 Note that the left, bottom, right and top halo offset values should be specified relative to the respective edges of the prBoundary in the master。 When an instance is transformed, the edges of the instance’s halo follow the edges of the prBoundary, regardless of whether the owner of the halo is the prBoundary or the instance。

参数

  • owner: The instance or prBoundary around which to create the blockage。
  • left: The left offset for the halo。
  • bottom: The bottom offset for the halo。
  • right: The right offset for the halo。
  • top: The top offset for the halo。

异常

  • oacInvalidBlockageOwner
  • oacAreaHaloAlreadyExists

Python 示例

from oapy._oa import _design

_design.oaAreaHalo.create(owner, left=0, bottom=0, right=0, top=0)

_design.oaAreaHalo.find(owner)

绑定状态: 已绑定

Python 调用: _design.oaAreaHalo.find(owner)

This function returns the area halo for the specified owner if one exists。

参数

  • owner: The instance or prBoundary around which to create the blockage。

异常

  • oacInvalidBlockageOwner

Python 示例

from oapy._oa import _design

_design.oaAreaHalo.find(owner)