Struct libreda_lefdef::lef_ast::Macro
source · pub struct Macro {Show 13 fields
pub name: String,
pub class: Option<MacroClass>,
pub fixed_mask: bool,
pub foreign: Vec<(String, Point<f64>, Orient)>,
pub origin: Point<f64>,
pub eeq: Option<String>,
pub size: Option<(f64, f64)>,
pub symmetry: Symmetry,
pub sites: Vec<Site>,
pub pins: Vec<MacroPin>,
pub obs: Vec<LayerGeometries>,
pub density: Vec<()>,
pub properties: BTreeMap<String, ()>,
}Expand description
MACRO definition.
Fields§
§name: StringName of the macro.
class: Option<MacroClass>Class of the macro.
fixed_mask: boolDisable shifting of masks. When set, shifting of macro pin mask assignments to other masks is not allowed. Used for technologies that use multi-mask patterning.
foreign: Vec<(String, Point<f64>, Orient)>Name of the corresponding cell layout in the GDS/OASIS file. Associated with an offset and orientation.
origin: Point<f64>Coordinate of the origin of the macro. Default is (0, 0). A placement of a cell in DEF is given by the location of the origin.
eeq: Option<String>Name of electrically equivalent macro.
size: Option<(f64, f64)>Width and height of the macro.
symmetry: SymmetrySymmetry of the macro. Tells how the macro can be mirrored and rotated.
sites: Vec<Site>SITES associated with the macro. Normal macros have only one associated site.
pins: Vec<MacroPin>Definitions of the electrical pins of the macro.
obs: Vec<LayerGeometries>Obstructions (blockages).
density: Vec<()>Density specifications.
properties: BTreeMap<String, ()>Additional properties of the macro.