Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions vpr/src/pack/prepack.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1141,11 +1141,12 @@ static AtomBlockId get_sink_block(const AtomBlockId block_id,
// Iterate through all sink blocks and check whether any of them
// is compatible with the block specified in the pack pattern.
bool connected_to_latch = false;
LogicalModelId latch_model_id = LogicalModels::MODEL_LATCH_ID;
AtomBlockId pattern_sink_block_id = AtomBlockId::INVALID();
for (const auto& sink_pin_id : net_sinks) {
auto sink_block_id = atom_nlist.pin_block(sink_pin_id);
if (atom_nlist.block_model(sink_block_id) == latch_model_id) {
// If the sink block has a clock, it is considered stateful (e.g., a latch or flip-flop).
// Mark this so we can later decide whether to drop the block based on the net’s fanout.
if (!atom_nlist.block_is_combinational(sink_block_id)) {
connected_to_latch = true;
}
if (primitive_type_feasible(sink_block_id, to_pb_type)) {
Expand Down