Skip to content

add pin counting filter option to pack_mol_in_existing_cluster #2585

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
5 changes: 3 additions & 2 deletions vpr/src/pack/re_cluster_util.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,8 @@ bool pack_mol_in_existing_cluster(t_pack_molecule* molecule,
std::unordered_set<AtomBlockId>* new_clb_atoms,
bool during_packing,
t_clustering_data& clustering_data,
t_lb_router_data*& router_data) {
t_lb_router_data*& router_data,
bool enable_pin_feasibility_filter) {
auto& helper_ctx = g_vpr_ctx.mutable_cl_helper();
auto& cluster_ctx = g_vpr_ctx.mutable_clustering();

Expand Down Expand Up @@ -241,7 +242,7 @@ bool pack_mol_in_existing_cluster(t_pack_molecule* molecule,
E_DETAILED_ROUTE_FOR_EACH_ATOM,
router_data,
0,
helper_ctx.enable_pin_feasibility_filter,
enable_pin_feasibility_filter,
//false,
helper_ctx.feasible_block_array_size,
target_ext_pin_util,
Expand Down
4 changes: 3 additions & 1 deletion vpr/src/pack/re_cluster_util.h
Original file line number Diff line number Diff line change
Expand Up @@ -100,14 +100,16 @@ bool start_new_cluster_for_mol(t_pack_molecule* molecule,
* @param clustering_data: A data structure containing helper data for the clustering process
* (is updated if this function is called during packing, especially intra_lb_routing data member).
* @param router_data: returns the intra logic block router data.
* @param enable_pin_feasibility_filter: do a pin couting based legality check (before or in place of intra-cluster routing check).
*/
bool pack_mol_in_existing_cluster(t_pack_molecule* molecule,
int molecule_size,
const ClusterBlockId& new_clb,
std::unordered_set<AtomBlockId>* new_clb_atoms,
bool during_packing,
t_clustering_data& clustering_data,
t_lb_router_data*& router_data);
t_lb_router_data*& router_data,
bool enable_pin_feasibility_filter = true);

/**
* @brief A function that fix the clustered netlist if the move is performed
Expand Down
Loading