Trait libreda_pnr::place::mixed_size_placer::MixedSizePlacer
source · pub trait MixedSizePlacer<C: L2NBase> {
// Required methods
fn name(&self) -> &str;
fn find_cell_positions_impl(
&self,
placement_problem: &dyn PlacementProblem<C>
) -> Result<HashMap<C::CellInstId, SimpleTransform<C::Coord>>, PlacementError>;
// Provided method
fn find_cell_positions(
&self,
placement_problem: &dyn PlacementProblem<C>
) -> Result<HashMap<C::CellInstId, SimpleTransform<C::Coord>>, PlacementError> { ... }
}Expand description
Interface definition for mixed-size placement engines (for macro blocks and standard cells).
Required Methods§
sourcefn find_cell_positions_impl(
&self,
placement_problem: &dyn PlacementProblem<C>
) -> Result<HashMap<C::CellInstId, SimpleTransform<C::Coord>>, PlacementError>
fn find_cell_positions_impl( &self, placement_problem: &dyn PlacementProblem<C> ) -> Result<HashMap<C::CellInstId, SimpleTransform<C::Coord>>, PlacementError>
Actual implementation of MixedSizePlacer::find_cell_positions.
Provided Methods§
sourcefn find_cell_positions(
&self,
placement_problem: &dyn PlacementProblem<C>
) -> Result<HashMap<C::CellInstId, SimpleTransform<C::Coord>>, PlacementError>
fn find_cell_positions( &self, placement_problem: &dyn PlacementProblem<C> ) -> Result<HashMap<C::CellInstId, SimpleTransform<C::Coord>>, PlacementError>
Find the positions of all circuit instances inside circuit.
Parameters
placement_problem:PlacementProblemtrait object. This object bundles the netlist, layout and other parameters relevant for placement such as cell-sizes, fixed/movable cells, net weights.
Returns
Returns a HashMap which maps circuit instances to positions.