pub fn legalize<L, LN>(
    legalizer: &L,
    chip: &mut LN,
    top_cell: &LN::CellId,
    core_area: &SimplePolygon<LN::Coord>,
    cell_outlines: &HashMap<LN::CellId, Rect<LN::Coord>>,
    movable_instances: &HashSet<LN::CellInstId>
)where
    L: SimpleStdCellLegalizer<LN>,
    LN: L2NEdit<Coord = Coord>,
Expand description

Find legal positions and move the cells to those.

  • legalizer: Legalization engine that finds the legal positions of the movable cells.
  • top_cell: The cell whose content should be legalized.
  • core_area: The region to be used for the placement.
  • cell_outlines: Abutment boxes of the standard-cells.
  • fixed_instances: Cell instanced that can be moved.