diff --git a/src/mpl/src/MplObserver.h b/src/mpl/src/MplObserver.h index 97b2a6b8f5e..0b7ab7daa97 100644 --- a/src/mpl/src/MplObserver.h +++ b/src/mpl/src/MplObserver.h @@ -56,6 +56,8 @@ class MplObserver virtual void setOutline(const odb::Rect& outline) {} virtual void setGuides(const std::map& guides) {} virtual void setFences(const std::map& fences) {} + virtual void addNotch(const odb::Rect& notch) {} + virtual void clearNotches() {} virtual void setIOConstraintsMap( const ClusterToBoundaryRegionMap& io_cluster_to_constraint) { diff --git a/src/mpl/src/SACoreSoftMacro.cpp b/src/mpl/src/SACoreSoftMacro.cpp index 9a5ff198cf7..10bda4ad17d 100644 --- a/src/mpl/src/SACoreSoftMacro.cpp +++ b/src/mpl/src/SACoreSoftMacro.cpp @@ -624,15 +624,124 @@ void SACoreSoftMacro::attemptMacroClusterAlignment() } } -float SACoreSoftMacro::calSingleNotchPenalty(float width, float height) +void SACoreSoftMacro::fillCoordsLists(std::vector& x_coords, + std::vector& y_coords) { - return std::sqrt((width * height) - / block_->dbuAreaToMicrons(outline_.area())); + std::vector x_point; + std::vector y_point; + + for (auto& macro : macros_) { + if (macro.isStdCellCluster()) { + continue; + } + x_point.push_back(macro.getX()); + x_point.push_back(macro.getX() + macro.getWidth()); + y_point.push_back(macro.getY()); + y_point.push_back(macro.getY() + macro.getHeight()); + } + x_point.push_back(0); + y_point.push_back(0); + x_point.push_back(outline_.dx()); + y_point.push_back(outline_.dy()); + + std::ranges::sort(x_point); + std::ranges::sort(y_point); + + int epsilon = outline_.dx() / 100; + for (int i = 0; i < x_point.size(); i++) { + if (i + 1 < x_point.size() + && std::abs(x_point[i + 1] - x_point[i]) <= epsilon) { + continue; + } + x_coords.push_back(x_point[i]); + } + + epsilon = outline_.dy() / 100; + for (int i = 0; i < y_point.size(); i++) { + if (i + 1 < y_point.size() + && std::abs(y_point[i + 1] - y_point[i]) <= epsilon) { + continue; + } + y_coords.push_back(y_point[i]); + } +} + +SACoreSoftMacro::Neighbors SACoreSoftMacro::findNeighbors( + std::vector>& grid, + int start_row, + int start_col, + int end_row, + int end_col) +{ + int num_y = grid.size(); + int num_x = grid.front().size(); + + Neighbors neighbors; + if (start_row > 0) { + for (int i = start_col; i <= end_col; i++) { + if (!grid[start_row - 1][i]) { + neighbors.bottom = false; + break; + } + } + } + if (end_row < num_y - 1) { + for (int i = start_col; i <= end_col; i++) { + if (!grid[end_row + 1][i]) { + neighbors.top = false; + break; + } + } + } + if (start_col > 0) { + for (int i = start_row; i <= end_row; i++) { + if (!grid[i][start_col - 1]) { + neighbors.left = false; + break; + } + } + } + if (end_col < num_x - 1) { + for (int i = start_row; i <= end_row; i++) { + if (!grid[i][end_col + 1]) { + neighbors.right = false; + break; + } + } + } + + return neighbors; +} + +bool SACoreSoftMacro::isSegmentEmpty(std::vector>& grid, + int start_row, + int start_col, + int end_row, + int end_col) +{ + for (int i = start_row; i <= end_row; i++) { + for (int j = start_col; j <= end_col; j++) { + if (grid[i][j]) { + return false; + } + } + } + + return true; +} + +float SACoreSoftMacro::calSingleNotchPenalty(int width, int height) +{ + return std::sqrt((static_cast(width) * height) / outline_.area()); } // If there is no HardMacroCluster, we do not consider the notch penalty void SACoreSoftMacro::calNotchPenalty() { + if (graphics_) { + graphics_->clearNotches(); + } + if (notch_weight_ <= 0.0) { return; } @@ -649,37 +758,28 @@ void SACoreSoftMacro::calNotchPenalty() if (!isValid()) { width = std::max(width_, outline_.dx()); height = std::max(height_, outline_.dy()); - notch_penalty_ = calSingleNotchPenalty(block_->dbuToMicrons(width), - block_->dbuToMicrons(height)); + notch_penalty_ = calSingleNotchPenalty(width, height); + + if (graphics_) { + graphics_->setNotchPenalty({.name = "Notch", + .weight = notch_weight_, + .value = notch_penalty_, + .normalization_factor = norm_notch_penalty_}); + } return; } // Create grids based on location of MixedCluster and HardMacroCluster - std::set x_point; - std::set y_point; - for (auto& macro : macros_) { - if (!macro.isMacroCluster() && !macro.isMixedCluster()) { - continue; - } - x_point.insert(macro.getX()); - x_point.insert(macro.getX() + macro.getWidth()); - y_point.insert(macro.getY()); - y_point.insert(macro.getY() + macro.getHeight()); - } - x_point.insert(0); - y_point.insert(0); - x_point.insert(outline_.dx()); - y_point.insert(outline_.dy()); + std::vector x_coords; + std::vector y_coords; + fillCoordsLists(x_coords, y_coords); - std::vector x_coords(x_point.begin(), x_point.end()); - std::vector y_coords(y_point.begin(), y_point.end()); int num_x = x_coords.size() - 1; int num_y = y_coords.size() - 1; - // Assign cluster locations for notch detection std::vector> grid(num_y, std::vector(num_x, false)); for (auto& macro : macros_) { - if (!macro.isMacroCluster() && !macro.isMixedCluster()) { + if (macro.isStdCellCluster()) { continue; } int x_start = getSegmentIndex(macro.getX(), x_coords); @@ -693,34 +793,83 @@ void SACoreSoftMacro::calNotchPenalty() } } - // An empty grid cell surrounded by 3 or more edges is considered a notch - for (int row = 0; row < num_y; row++) { - for (int col = 0; col < num_x; col++) { - if (grid[row][col]) { + for (int start_row = 0; start_row < num_y; start_row++) { + for (int start_col = 0; start_col < num_x; start_col++) { + if (grid[start_row][start_col]) { continue; } - int surroundings = 0; - if (row == 0 || grid[row - 1][col]) { - surroundings++; - } - if (row == num_y - 1 || grid[row + 1][col]) { - surroundings++; - } - if (col == 0 || grid[row][col - 1]) { - surroundings++; - } - if (col == num_x - 1 || grid[row][col + 1]) { - surroundings++; + int end_row = start_row; + int end_col = start_col; + + Neighbors current_neighbors + = findNeighbors(grid, start_row, start_col, end_row, end_col); + bool expand_rows = true; + bool expand_cols = true; + + while (expand_rows || expand_cols) { + if (expand_rows) { + end_row += 1; + if (end_row < num_y + && isSegmentEmpty(grid, start_row, start_col, end_row, end_col)) { + Neighbors expanded_neighbors + = findNeighbors(grid, start_row, start_col, end_row, end_col); + if (expanded_neighbors.total() > current_neighbors.total() + || expanded_neighbors == current_neighbors) { + current_neighbors = expanded_neighbors; + } else { + expand_rows = false; + end_row -= 1; + } + } else { + expand_rows = false; + end_row -= 1; + } + } + + if (expand_cols) { + end_col += 1; + if (end_col < num_x + && isSegmentEmpty(grid, start_row, start_col, end_row, end_col)) { + Neighbors expanded_neighbors + = findNeighbors(grid, start_row, start_col, end_row, end_col); + if (expanded_neighbors.total() > current_neighbors.total() + || expanded_neighbors == current_neighbors) { + current_neighbors = expanded_neighbors; + } else { + expand_cols = false; + end_col -= 1; + } + } else { + expand_cols = false; + end_col -= 1; + } + } } - if (surroundings >= 3) { - width = x_coords[col + 1] - x_coords[col]; - height = y_coords[row + 1] - y_coords[row]; + width = x_coords[end_col + 1] - x_coords[start_col]; + height = y_coords[end_row + 1] - y_coords[start_row]; + + bool is_notch = false; + if (current_neighbors.total() == 4) { + is_notch = true; + } else if (current_neighbors.top && current_neighbors.bottom) { + if (height < notch_h_th_) { + is_notch = true; + } + } else if (current_neighbors.left && current_neighbors.right) { + if (width < notch_v_th_) { + is_notch = true; + } + } - if (width <= notch_h_th_ || height <= notch_v_th_) { - notch_penalty_ += calSingleNotchPenalty(block_->dbuToMicrons(width), - block_->dbuToMicrons(height)); + if (is_notch) { + notch_penalty_ += calSingleNotchPenalty(width, height); + if (graphics_) { + graphics_->addNotch(odb::Rect(x_coords[start_col], + y_coords[start_row], + x_coords[end_col + 1], + y_coords[end_row + 1])); } } } @@ -1052,7 +1201,7 @@ void SACoreSoftMacro::attemptCentralization(const float pre_cost) calPenalty(); // revert centralization - if (calNormCost() > pre_cost) { + if (calNormCost() > pre_cost && !force_centralization_) { centralization_was_reverted_ = true; setClustersLocations(clusters_locations); diff --git a/src/mpl/src/SACoreSoftMacro.h b/src/mpl/src/SACoreSoftMacro.h index cde4101e7e9..6a4b53833b9 100644 --- a/src/mpl/src/SACoreSoftMacro.h +++ b/src/mpl/src/SACoreSoftMacro.h @@ -71,7 +71,22 @@ class SACoreSoftMacro : public SimulatedAnnealingCore void enableEnhancements() { enhancements_on_ = true; }; + void forceCentralization() { force_centralization_ = true; } + private: + // Used to calculate notches + struct Neighbors + { + bool top = true; + bool bottom = true; + bool left = true; + bool right = true; + + int total() { return top + bottom + left + right; } + + bool operator==(const Neighbors&) const = default; + }; + float calNormCost() const override; void calPenalty() override; @@ -84,7 +99,18 @@ class SACoreSoftMacro : public SimulatedAnnealingCore int getSegmentIndex(int segment, const std::vector& coords); void calBoundaryPenalty(); - float calSingleNotchPenalty(float width, float height); + void fillCoordsLists(std::vector& x_coords, std::vector& y_coords); + Neighbors findNeighbors(std::vector>& grid, + int start_row, + int start_col, + int end_row, + int end_col); + bool isSegmentEmpty(std::vector>& grid, + int start_row, + int tart_col, + int end_row, + int end_col); + float calSingleNotchPenalty(int width, int height); void calNotchPenalty(); void calMacroBlockagePenalty(); void calFixedMacrosPenalty(); @@ -136,6 +162,7 @@ class SACoreSoftMacro : public SimulatedAnnealingCore bool enhancements_on_ = false; bool centralization_was_reverted_ = false; + bool force_centralization_ = false; }; } // namespace mpl diff --git a/src/mpl/src/graphics.cpp b/src/mpl/src/graphics.cpp index a079201c0df..38ce9015dde 100644 --- a/src/mpl/src/graphics.cpp +++ b/src/mpl/src/graphics.cpp @@ -404,9 +404,10 @@ void Graphics::drawObjects(gui::Painter& painter) drawCluster(root_, painter); } - // Draw blockages only during SA for SoftMacros + // Draw blockages and notches only during SA for SoftMacros if (!soft_macros_.empty()) { drawAllBlockages(painter); + drawNotches(painter); } painter.setPen(gui::Painter::kWhite, true); @@ -573,6 +574,20 @@ void Graphics::drawGuides(gui::Painter& painter) } } +void Graphics::drawNotches(gui::Painter& painter) +{ + painter.setPen(gui::Painter::kYellow, true); + + for (const auto& notch : notches_) { + odb::Rect rect = notch; + rect.moveDelta(outline_.xMin(), outline_.yMin()); + + painter.setBrush(gui::Painter::kYellow, gui::Painter::kDiagonal); + + painter.drawRect(rect); + } +} + void Graphics::drawBlockedRegionsIndication(gui::Painter& painter) { painter.setPen(gui::Painter::kRed, true); @@ -747,6 +762,16 @@ void Graphics::setFences(const std::map& fences) fences_ = fences; } +void Graphics::addNotch(const odb::Rect& notch) +{ + notches_.emplace_back(notch); +} + +void Graphics::clearNotches() +{ + notches_.clear(); +} + void Graphics::setIOConstraintsMap( const ClusterToBoundaryRegionMap& io_cluster_to_constraint) { diff --git a/src/mpl/src/graphics.h b/src/mpl/src/graphics.h index 1c9cbc723a1..57b499addd3 100644 --- a/src/mpl/src/graphics.h +++ b/src/mpl/src/graphics.h @@ -68,6 +68,8 @@ class Graphics : public gui::Renderer, public MplObserver void setCurrentCluster(Cluster* current_cluster) override; void setGuides(const std::map& guides) override; void setFences(const std::map& fences) override; + void addNotch(const odb::Rect& notch) override; + void clearNotches() override; void setIOConstraintsMap( const ClusterToBoundaryRegionMap& io_cluster_to_constraint) override; void setBlockedRegionsForPins( @@ -88,6 +90,7 @@ class Graphics : public gui::Renderer, public MplObserver gui::Painter& painter); void drawFences(gui::Painter& painter); void drawGuides(gui::Painter& painter); + void drawNotches(gui::Painter& painter); template void drawBundledNets(gui::Painter& painter, const std::vector& macros); template @@ -131,6 +134,7 @@ class Graphics : public gui::Renderer, public MplObserver Cluster* current_cluster_{nullptr}; std::map guides_; // Id -> Guidance Region std::map fences_; // Id -> Fence + std::vector notches_; int x_mark_size_{0}; // For blocked regions. diff --git a/src/mpl/src/hier_rtlmp.cpp b/src/mpl/src/hier_rtlmp.cpp index af3067e1815..2865b0a70ca 100644 --- a/src/mpl/src/hier_rtlmp.cpp +++ b/src/mpl/src/hier_rtlmp.cpp @@ -1351,6 +1351,9 @@ void HierRTLMP::placeChildren(Cluster* parent) std::vector inflated_macros = applyUtilization(utilization, outline, macros); + const bool single_array_single_std_cell_cluster + = singleArraySingleStdCellCluster(macros); + std::unique_ptr sa = std::make_unique(tree_.get(), outline, @@ -1376,7 +1379,9 @@ void HierRTLMP::placeChildren(Cluster* parent) sa->setFences(fences); sa->setGuides(guides); sa->setNets(nets); - + if (single_array_single_std_cell_cluster) { + sa->forceCentralization(); + } sa_batch.push_back(std::move(sa)); } diff --git a/src/mpl/src/mpl.tcl b/src/mpl/src/mpl.tcl index eb97e694841..d552c846c8e 100644 --- a/src/mpl/src/mpl.tcl +++ b/src/mpl/src/mpl.tcl @@ -75,7 +75,7 @@ proc rtl_macro_placer { args } { set guidance_weight 10.0 set fence_weight 10.0 set boundary_weight 50.0 - set notch_weight 10.0 + set notch_weight 50.0 set macro_blockage_weight 10.0 set target_util 0.25 set min_ar 0.33 diff --git a/src/mpl/test/boundary_push2.defok b/src/mpl/test/boundary_push2.defok index 3099a86ee08..4852d6d8e8c 100644 --- a/src/mpl/test/boundary_push2.defok +++ b/src/mpl/test/boundary_push2.defok @@ -183,60 +183,60 @@ TRACKS Y 140 DO 282 STEP 3200 LAYER metal9 ; TRACKS X 190 DO 282 STEP 3200 LAYER metal10 ; TRACKS Y 140 DO 282 STEP 3200 LAYER metal10 ; COMPONENTS 54 ; - - MACRO_1 HM_100x100_1x1 + FIXED ( 239440 18530 ) S ; - - MACRO_2 HM_100x100_1x1 + FIXED ( 600 219570 ) S ; + - MACRO_1 HM_100x100_1x1 + FIXED ( 600 219570 ) S ; + - MACRO_2 HM_100x100_1x1 + FIXED ( 239440 18530 ) S ; - MACRO_3 HM_100x100_1x1 + FIXED ( 239440 219570 ) S ; - MACRO_4 HM_100x100_1x1 + FIXED ( 600 18530 ) S ; - - _001_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _002_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _003_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _004_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _005_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _006_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _007_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _008_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _009_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _010_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _011_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _012_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _013_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _014_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _015_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _016_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _017_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _018_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _019_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _020_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _021_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _022_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _023_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _024_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _025_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _026_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _027_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _028_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _029_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _030_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _031_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _032_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _033_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _034_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _035_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _036_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _037_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _038_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _039_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _040_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _041_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _042_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _043_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _044_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _045_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _046_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _047_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _048_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _049_ DFF_X1 + PLACED ( 215245 219800 ) N ; - - _050_ DFF_X1 + PLACED ( 215245 219800 ) N ; + - _001_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _002_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _003_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _004_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _005_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _006_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _007_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _008_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _009_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _010_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _011_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _012_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _013_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _014_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _015_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _016_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _017_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _018_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _019_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _020_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _021_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _022_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _023_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _024_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _025_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _026_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _027_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _028_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _029_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _030_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _031_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _032_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _033_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _034_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _035_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _036_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _037_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _038_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _039_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _040_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _041_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _042_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _043_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _044_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _045_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _046_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _047_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _048_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _049_ DFF_X1 + PLACED ( 215245 320400 ) N ; + - _050_ DFF_X1 + PLACED ( 215245 320400 ) N ; END COMPONENTS PINS 4 ; - io_1 + NET io_1 + DIRECTION INPUT + USE SIGNAL ; diff --git a/src/mpl/test/boundary_push3.defok b/src/mpl/test/boundary_push3.defok index e83a459164f..2a6e7299d7d 100644 --- a/src/mpl/test/boundary_push3.defok +++ b/src/mpl/test/boundary_push3.defok @@ -183,60 +183,60 @@ TRACKS Y 140 DO 282 STEP 3200 LAYER metal9 ; TRACKS X 190 DO 282 STEP 3200 LAYER metal10 ; TRACKS Y 140 DO 282 STEP 3200 LAYER metal10 ; COMPONENTS 54 ; - - MACRO_1 HM_100x100_1x1 + FIXED ( 219400 610 ) S ; + - MACRO_1 HM_100x100_1x1 + FIXED ( 219400 241970 ) S ; - MACRO_2 HM_100x100_1x1 + FIXED ( 18200 610 ) S ; - - MACRO_3 HM_100x100_1x1 + FIXED ( 219400 241970 ) S ; + - MACRO_3 HM_100x100_1x1 + FIXED ( 219400 610 ) S ; - MACRO_4 HM_100x100_1x1 + FIXED ( 18200 241970 ) S ; - - _001_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _002_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _003_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _004_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _005_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _006_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _007_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _008_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _009_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _010_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _011_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _012_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _013_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _014_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _015_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _016_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _017_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _018_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _019_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _020_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _021_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _022_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _023_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _024_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _025_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _026_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _027_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _028_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _029_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _030_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _031_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _032_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _033_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _034_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _035_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _036_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _037_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _038_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _039_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _040_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _041_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _042_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _043_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _044_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _045_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _046_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _047_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _048_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _049_ DFF_X1 + PLACED ( 216790 217075 ) N ; - - _050_ DFF_X1 + PLACED ( 216790 217075 ) N ; + - _001_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _002_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _003_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _004_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _005_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _006_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _007_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _008_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _009_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _010_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _011_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _012_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _013_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _014_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _015_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _016_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _017_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _018_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _019_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _020_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _021_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _022_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _023_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _024_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _025_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _026_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _027_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _028_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _029_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _030_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _031_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _032_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _033_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _034_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _035_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _036_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _037_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _038_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _039_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _040_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _041_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _042_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _043_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _044_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _045_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _046_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _047_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _048_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _049_ DFF_X1 + PLACED ( 317390 217587 ) N ; + - _050_ DFF_X1 + PLACED ( 317390 217587 ) N ; END COMPONENTS PINS 4 ; - io_1 + NET io_1 + DIRECTION INPUT + USE SIGNAL ; diff --git a/src/mpl/test/io_constraints1.defok b/src/mpl/test/io_constraints1.defok index 0697e65f7dc..5b73f8a2993 100644 --- a/src/mpl/test/io_constraints1.defok +++ b/src/mpl/test/io_constraints1.defok @@ -114,157 +114,157 @@ TRACKS Y 140 DO 282 STEP 3200 LAYER metal9 ; TRACKS X 190 DO 282 STEP 3200 LAYER metal10 ; TRACKS Y 140 DO 282 STEP 3200 LAYER metal10 ; COMPONENTS 151 ; - - MACRO_1 HM_100x100_1x1 + FIXED ( 91820 8010 ) S ; - - _001_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _002_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _003_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _004_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _005_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _006_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _007_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _008_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _009_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _010_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _011_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _012_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _013_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _014_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _015_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _016_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _017_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _018_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _019_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _020_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _021_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _022_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _023_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _024_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _025_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _026_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _027_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _028_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _029_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _030_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _031_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _032_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _033_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _034_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _035_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _036_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _037_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _038_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _039_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _040_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _041_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _042_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _043_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _044_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _045_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _046_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _047_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _048_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _049_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _050_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _051_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _052_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _053_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _054_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _055_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _056_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _057_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _058_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _059_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _060_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _061_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _062_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _063_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _064_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _065_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _066_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _067_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _068_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _069_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _070_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _071_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _072_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _073_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _074_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _075_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _076_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _077_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _078_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _079_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _080_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _081_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _082_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _083_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _084_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _085_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _086_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _087_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _088_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _089_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _090_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _091_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _092_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _093_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _094_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _095_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _096_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _097_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _098_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _099_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _100_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _101_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _102_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _103_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _104_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _105_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _106_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _107_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _108_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _109_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _110_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _111_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _112_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _113_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _114_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _115_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _116_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _117_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _118_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _119_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _120_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _121_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _122_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _123_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _124_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _125_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _126_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _127_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _128_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _129_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _130_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _131_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _132_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _133_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _134_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _135_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _136_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _137_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _138_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _139_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _140_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _141_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _142_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _143_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _144_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _145_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _146_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _147_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _148_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _149_ DFF_X1 + PLACED ( 44680 123200 ) N ; - - _150_ DFF_X1 + PLACED ( 44680 123200 ) N ; + - MACRO_1 HM_100x100_1x1 + FIXED ( 20000 8010 ) S ; + - _001_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _002_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _003_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _004_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _005_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _006_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _007_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _008_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _009_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _010_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _011_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _012_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _013_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _014_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _015_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _016_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _017_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _018_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _019_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _020_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _021_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _022_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _023_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _024_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _025_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _026_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _027_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _028_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _029_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _030_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _031_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _032_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _033_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _034_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _035_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _036_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _037_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _038_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _039_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _040_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _041_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _042_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _043_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _044_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _045_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _046_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _047_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _048_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _049_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _050_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _051_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _052_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _053_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _054_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _055_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _056_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _057_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _058_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _059_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _060_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _061_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _062_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _063_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _064_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _065_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _066_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _067_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _068_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _069_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _070_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _071_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _072_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _073_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _074_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _075_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _076_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _077_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _078_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _079_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _080_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _081_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _082_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _083_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _084_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _085_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _086_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _087_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _088_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _089_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _090_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _091_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _092_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _093_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _094_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _095_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _096_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _097_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _098_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _099_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _100_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _101_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _102_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _103_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _104_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _105_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _106_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _107_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _108_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _109_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _110_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _111_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _112_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _113_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _114_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _115_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _116_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _117_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _118_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _119_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _120_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _121_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _122_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _123_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _124_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _125_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _126_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _127_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _128_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _129_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _130_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _131_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _132_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _133_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _134_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _135_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _136_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _137_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _138_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _139_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _140_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _141_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _142_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _143_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _144_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _145_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _146_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _147_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _148_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _149_ DFF_X1 + PLACED ( 260680 123200 ) N ; + - _150_ DFF_X1 + PLACED ( 260680 123200 ) N ; END COMPONENTS PINS 3 ; - io_1 + NET io_1 + DIRECTION INPUT + USE SIGNAL ; diff --git a/src/mpl/test/io_constraints10.defok b/src/mpl/test/io_constraints10.defok index b94e04f6c48..cdf65d01a3a 100644 --- a/src/mpl/test/io_constraints10.defok +++ b/src/mpl/test/io_constraints10.defok @@ -114,157 +114,157 @@ TRACKS Y 140 DO 282 STEP 3200 LAYER metal9 ; TRACKS X 190 DO 282 STEP 3200 LAYER metal10 ; TRACKS Y 140 DO 282 STEP 3200 LAYER metal10 ; COMPONENTS 151 ; - - MACRO_1 HM_100x100_1x1 + FIXED ( 20000 18090 ) S ; - - _001_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _002_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _003_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _004_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _005_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _006_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _007_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _008_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _009_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _010_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _011_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _012_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _013_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _014_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _015_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _016_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _017_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _018_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _019_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _020_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _021_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _022_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _023_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _024_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _025_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _026_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _027_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _028_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _029_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _030_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _031_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _032_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _033_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _034_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _035_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _036_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _037_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _038_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _039_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _040_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _041_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _042_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _043_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _044_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _045_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _046_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _047_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _048_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _049_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _050_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _051_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _052_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _053_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _054_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _055_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _056_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _057_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _058_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _059_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _060_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _061_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _062_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _063_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _064_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _065_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _066_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _067_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _068_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _069_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _070_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _071_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _072_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _073_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _074_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _075_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _076_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _077_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _078_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _079_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _080_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _081_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _082_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _083_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _084_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _085_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _086_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _087_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _088_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _089_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _090_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _091_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _092_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _093_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _094_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _095_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _096_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _097_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _098_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _099_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _100_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _101_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _102_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _103_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _104_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _105_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _106_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _107_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _108_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _109_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _110_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _111_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _112_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _113_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _114_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _115_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _116_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _117_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _118_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _119_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _120_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _121_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _122_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _123_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _124_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _125_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _126_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _127_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _128_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _129_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _130_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _131_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _132_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _133_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _134_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _135_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _136_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _137_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _138_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _139_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _140_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _141_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _142_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _143_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _144_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _145_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _146_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _147_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _148_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _149_ DFF_X1 + PLACED ( 252798 123600 ) N ; - - _150_ DFF_X1 + PLACED ( 252798 123600 ) N ; + - MACRO_1 HM_100x100_1x1 + FIXED ( 74900 18090 ) S ; + - _001_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _002_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _003_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _004_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _005_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _006_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _007_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _008_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _009_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _010_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _011_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _012_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _013_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _014_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _015_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _016_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _017_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _018_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _019_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _020_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _021_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _022_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _023_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _024_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _025_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _026_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _027_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _028_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _029_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _030_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _031_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _032_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _033_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _034_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _035_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _036_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _037_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _038_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _039_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _040_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _041_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _042_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _043_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _044_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _045_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _046_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _047_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _048_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _049_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _050_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _051_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _052_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _053_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _054_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _055_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _056_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _057_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _058_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _059_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _060_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _061_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _062_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _063_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _064_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _065_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _066_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _067_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _068_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _069_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _070_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _071_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _072_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _073_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _074_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _075_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _076_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _077_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _078_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _079_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _080_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _081_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _082_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _083_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _084_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _085_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _086_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _087_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _088_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _089_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _090_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _091_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _092_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _093_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _094_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _095_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _096_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _097_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _098_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _099_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _100_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _101_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _102_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _103_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _104_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _105_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _106_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _107_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _108_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _109_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _110_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _111_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _112_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _113_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _114_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _115_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _116_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _117_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _118_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _119_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _120_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _121_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _122_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _123_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _124_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _125_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _126_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _127_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _128_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _129_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _130_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _131_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _132_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _133_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _134_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _135_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _136_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _137_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _138_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _139_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _140_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _141_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _142_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _143_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _144_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _145_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _146_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _147_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _148_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _149_ DFF_X1 + PLACED ( 30217 123600 ) N ; + - _150_ DFF_X1 + PLACED ( 30217 123600 ) N ; END COMPONENTS PINS 3 ; - io_1 + NET io_1 + DIRECTION INPUT + USE SIGNAL ; diff --git a/src/mpl/test/io_constraints3.defok b/src/mpl/test/io_constraints3.defok index 8060590ce47..4487cdcc05b 100644 --- a/src/mpl/test/io_constraints3.defok +++ b/src/mpl/test/io_constraints3.defok @@ -114,207 +114,207 @@ TRACKS Y 140 DO 282 STEP 3200 LAYER metal9 ; TRACKS X 190 DO 282 STEP 3200 LAYER metal10 ; TRACKS Y 140 DO 282 STEP 3200 LAYER metal10 ; COMPONENTS 201 ; - - MACRO_1 HM_100x100_1x1 + FIXED ( 91820 41330 ) S ; - - _001_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _002_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _003_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _004_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _005_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _006_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _007_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _008_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _009_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _010_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _011_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _012_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _013_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _014_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _015_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _016_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _017_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _018_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _019_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _020_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _021_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _022_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _023_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _024_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _025_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _026_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _027_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _028_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _029_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _030_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _031_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _032_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _033_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _034_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _035_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _036_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _037_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _038_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _039_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _040_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _041_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _042_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _043_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _044_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _045_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _046_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _047_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _048_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _049_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _050_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _051_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _052_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _053_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _054_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _055_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _056_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _057_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _058_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _059_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _060_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _061_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _062_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _063_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _064_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _065_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _066_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _067_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _068_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _069_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _070_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _071_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _072_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _073_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _074_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _075_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _076_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _077_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _078_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _079_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _080_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _081_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _082_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _083_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _084_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _085_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _086_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _087_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _088_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _089_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _090_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _091_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _092_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _093_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _094_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _095_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _096_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _097_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _098_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _099_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _100_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _101_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _102_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _103_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _104_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _105_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _106_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _107_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _108_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _109_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _110_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _111_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _112_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _113_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _114_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _115_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _116_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _117_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _118_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _119_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _120_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _121_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _122_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _123_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _124_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _125_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _126_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _127_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _128_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _129_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _130_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _131_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _132_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _133_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _134_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _135_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _136_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _137_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _138_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _139_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _140_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _141_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _142_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _143_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _144_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _145_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _146_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _147_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _148_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _149_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _150_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _151_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _152_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _153_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _154_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _155_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _156_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _157_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _158_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _159_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _160_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _161_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _162_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _163_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _164_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _165_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _166_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _167_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _168_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _169_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _170_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _171_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _172_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _173_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _174_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _175_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _176_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _177_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _178_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _179_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _180_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _181_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _182_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _183_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _184_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _185_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _186_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _187_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _188_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _189_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _190_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _191_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _192_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _193_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _194_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _195_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _196_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _197_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _198_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _199_ DFF_X1 + PLACED ( 43321 123600 ) N ; - - _200_ DFF_X1 + PLACED ( 43321 123600 ) N ; + - MACRO_1 HM_100x100_1x1 + FIXED ( 20000 18090 ) S ; + - _001_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _002_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _003_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _004_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _005_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _006_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _007_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _008_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _009_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _010_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _011_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _012_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _013_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _014_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _015_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _016_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _017_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _018_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _019_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _020_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _021_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _022_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _023_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _024_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _025_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _026_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _027_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _028_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _029_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _030_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _031_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _032_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _033_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _034_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _035_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _036_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _037_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _038_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _039_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _040_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _041_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _042_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _043_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _044_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _045_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _046_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _047_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _048_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _049_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _050_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _051_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _052_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _053_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _054_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _055_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _056_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _057_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _058_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _059_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _060_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _061_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _062_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _063_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _064_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _065_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _066_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _067_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _068_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _069_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _070_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _071_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _072_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _073_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _074_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _075_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _076_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _077_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _078_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _079_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _080_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _081_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _082_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _083_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _084_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _085_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _086_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _087_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _088_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _089_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _090_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _091_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _092_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _093_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _094_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _095_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _096_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _097_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _098_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _099_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _100_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _101_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _102_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _103_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _104_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _105_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _106_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _107_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _108_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _109_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _110_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _111_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _112_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _113_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _114_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _115_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _116_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _117_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _118_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _119_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _120_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _121_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _122_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _123_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _124_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _125_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _126_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _127_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _128_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _129_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _130_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _131_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _132_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _133_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _134_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _135_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _136_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _137_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _138_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _139_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _140_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _141_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _142_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _143_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _144_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _145_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _146_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _147_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _148_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _149_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _150_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _151_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _152_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _153_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _154_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _155_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _156_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _157_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _158_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _159_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _160_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _161_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _162_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _163_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _164_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _165_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _166_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _167_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _168_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _169_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _170_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _171_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _172_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _173_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _174_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _175_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _176_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _177_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _178_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _179_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _180_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _181_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _182_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _183_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _184_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _185_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _186_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _187_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _188_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _189_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _190_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _191_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _192_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _193_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _194_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _195_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _196_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _197_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _198_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _199_ DFF_X1 + PLACED ( 260680 133200 ) N ; + - _200_ DFF_X1 + PLACED ( 260680 133200 ) N ; END COMPONENTS PINS 3 ; - io_1 + NET io_1 + DIRECTION INPUT + USE SIGNAL ; diff --git a/src/mpl/test/io_constraints4.defok b/src/mpl/test/io_constraints4.defok index 38411b04b40..ab7ef443d08 100644 --- a/src/mpl/test/io_constraints4.defok +++ b/src/mpl/test/io_constraints4.defok @@ -114,407 +114,407 @@ TRACKS Y 140 DO 282 STEP 3200 LAYER metal9 ; TRACKS X 190 DO 282 STEP 3200 LAYER metal10 ; TRACKS Y 140 DO 282 STEP 3200 LAYER metal10 ; COMPONENTS 401 ; - - MACRO_1 HM_100x100_1x1 + FIXED ( 29260 8010 ) S ; - - _001_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _002_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _003_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _004_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _005_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _006_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _007_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _008_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _009_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _010_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _011_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _012_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _013_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _014_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _015_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _016_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _017_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _018_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _019_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _020_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _021_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _022_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _023_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _024_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _025_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _026_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _027_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _028_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _029_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _030_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _031_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _032_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _033_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _034_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _035_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _036_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _037_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _038_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _039_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _040_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _041_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _042_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _043_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _044_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _045_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _046_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _047_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _048_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _049_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _050_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _051_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _052_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _053_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _054_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _055_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _056_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _057_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _058_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _059_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _060_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _061_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _062_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _063_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _064_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _065_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _066_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _067_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _068_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _069_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _070_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _071_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _072_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _073_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _074_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _075_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _076_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _077_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _078_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _079_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _080_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _081_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _082_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _083_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _084_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _085_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _086_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _087_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _088_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _089_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _090_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _091_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _092_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _093_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _094_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _095_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _096_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _097_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _098_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _099_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _100_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _101_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _102_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _103_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _104_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _105_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _106_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _107_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _108_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _109_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _110_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _111_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _112_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _113_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _114_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _115_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _116_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _117_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _118_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _119_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _120_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _121_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _122_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _123_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _124_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _125_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _126_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _127_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _128_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _129_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _130_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _131_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _132_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _133_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _134_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _135_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _136_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _137_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _138_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _139_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _140_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _141_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _142_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _143_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _144_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _145_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _146_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _147_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _148_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _149_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _150_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _151_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _152_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _153_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _154_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _155_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _156_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _157_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _158_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _159_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _160_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _161_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _162_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _163_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _164_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _165_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _166_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _167_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _168_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _169_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _170_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _171_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _172_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _173_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _174_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _175_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _176_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _177_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _178_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _179_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _180_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _181_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _182_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _183_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _184_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _185_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _186_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _187_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _188_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _189_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _190_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _191_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _192_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _193_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _194_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _195_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _196_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _197_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _198_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _199_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _200_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _201_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _202_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _203_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _204_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _205_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _206_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _207_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _208_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _209_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _210_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _211_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _212_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _213_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _214_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _215_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _216_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _217_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _218_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _219_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _220_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _221_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _222_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _223_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _224_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _225_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _226_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _227_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _228_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _229_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _230_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _231_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _232_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _233_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _234_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _235_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _236_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _237_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _238_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _239_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _240_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _241_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _242_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _243_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _244_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _245_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _246_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _247_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _248_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _249_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _250_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _251_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _252_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _253_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _254_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _255_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _256_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _257_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _258_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _259_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _260_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _261_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _262_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _263_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _264_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _265_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _266_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _267_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _268_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _269_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _270_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _271_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _272_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _273_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _274_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _275_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _276_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _277_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _278_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _279_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _280_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _281_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _282_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _283_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _284_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _285_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _286_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _287_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _288_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _289_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _290_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _291_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _292_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _293_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _294_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _295_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _296_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _297_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _298_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _299_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _300_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _301_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _302_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _303_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _304_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _305_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _306_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _307_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _308_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _309_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _310_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _311_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _312_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _313_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _314_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _315_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _316_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _317_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _318_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _319_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _320_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _321_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _322_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _323_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _324_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _325_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _326_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _327_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _328_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _329_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _330_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _331_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _332_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _333_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _334_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _335_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _336_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _337_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _338_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _339_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _340_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _341_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _342_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _343_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _344_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _345_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _346_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _347_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _348_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _349_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _350_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _351_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _352_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _353_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _354_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _355_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _356_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _357_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _358_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _359_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _360_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _361_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _362_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _363_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _364_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _365_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _366_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _367_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _368_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _369_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _370_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _371_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _372_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _373_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _374_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _375_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _376_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _377_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _378_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _379_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _380_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _381_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _382_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _383_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _384_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _385_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _386_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _387_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _388_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _389_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _390_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _391_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _392_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _393_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _394_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _395_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _396_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _397_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _398_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _399_ DFF_X1 + PLACED ( 265309 68600 ) N ; - - _400_ DFF_X1 + PLACED ( 265309 68600 ) N ; + - MACRO_1 HM_100x100_1x1 + FIXED ( 72000 8010 ) S ; + - _001_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _002_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _003_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _004_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _005_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _006_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _007_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _008_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _009_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _010_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _011_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _012_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _013_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _014_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _015_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _016_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _017_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _018_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _019_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _020_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _021_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _022_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _023_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _024_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _025_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _026_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _027_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _028_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _029_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _030_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _031_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _032_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _033_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _034_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _035_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _036_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _037_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _038_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _039_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _040_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _041_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _042_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _043_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _044_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _045_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _046_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _047_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _048_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _049_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _050_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _051_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _052_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _053_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _054_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _055_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _056_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _057_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _058_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _059_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _060_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _061_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _062_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _063_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _064_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _065_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _066_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _067_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _068_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _069_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _070_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _071_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _072_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _073_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _074_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _075_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _076_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _077_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _078_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _079_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _080_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _081_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _082_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _083_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _084_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _085_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _086_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _087_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _088_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _089_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _090_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _091_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _092_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _093_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _094_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _095_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _096_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _097_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _098_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _099_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _100_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _101_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _102_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _103_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _104_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _105_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _106_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _107_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _108_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _109_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _110_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _111_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _112_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _113_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _114_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _115_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _116_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _117_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _118_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _119_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _120_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _121_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _122_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _123_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _124_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _125_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _126_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _127_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _128_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _129_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _130_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _131_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _132_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _133_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _134_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _135_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _136_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _137_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _138_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _139_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _140_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _141_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _142_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _143_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _144_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _145_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _146_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _147_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _148_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _149_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _150_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _151_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _152_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _153_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _154_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _155_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _156_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _157_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _158_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _159_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _160_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _161_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _162_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _163_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _164_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _165_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _166_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _167_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _168_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _169_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _170_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _171_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _172_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _173_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _174_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _175_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _176_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _177_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _178_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _179_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _180_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _181_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _182_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _183_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _184_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _185_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _186_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _187_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _188_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _189_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _190_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _191_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _192_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _193_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _194_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _195_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _196_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _197_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _198_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _199_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _200_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _201_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _202_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _203_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _204_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _205_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _206_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _207_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _208_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _209_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _210_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _211_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _212_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _213_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _214_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _215_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _216_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _217_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _218_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _219_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _220_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _221_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _222_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _223_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _224_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _225_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _226_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _227_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _228_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _229_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _230_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _231_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _232_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _233_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _234_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _235_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _236_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _237_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _238_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _239_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _240_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _241_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _242_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _243_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _244_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _245_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _246_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _247_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _248_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _249_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _250_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _251_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _252_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _253_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _254_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _255_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _256_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _257_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _258_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _259_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _260_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _261_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _262_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _263_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _264_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _265_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _266_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _267_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _268_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _269_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _270_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _271_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _272_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _273_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _274_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _275_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _276_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _277_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _278_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _279_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _280_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _281_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _282_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _283_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _284_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _285_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _286_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _287_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _288_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _289_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _290_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _291_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _292_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _293_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _294_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _295_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _296_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _297_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _298_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _299_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _300_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _301_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _302_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _303_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _304_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _305_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _306_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _307_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _308_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _309_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _310_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _311_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _312_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _313_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _314_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _315_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _316_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _317_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _318_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _319_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _320_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _321_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _322_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _323_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _324_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _325_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _326_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _327_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _328_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _329_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _330_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _331_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _332_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _333_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _334_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _335_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _336_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _337_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _338_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _339_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _340_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _341_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _342_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _343_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _344_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _345_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _346_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _347_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _348_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _349_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _350_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _351_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _352_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _353_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _354_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _355_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _356_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _357_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _358_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _359_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _360_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _361_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _362_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _363_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _364_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _365_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _366_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _367_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _368_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _369_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _370_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _371_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _372_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _373_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _374_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _375_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _376_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _377_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _378_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _379_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _380_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _381_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _382_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _383_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _384_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _385_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _386_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _387_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _388_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _389_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _390_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _391_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _392_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _393_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _394_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _395_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _396_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _397_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _398_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _399_ DFF_X1 + PLACED ( 28767 68600 ) N ; + - _400_ DFF_X1 + PLACED ( 28767 68600 ) N ; END COMPONENTS PINS 3 ; - io_1 + NET io_1 + DIRECTION INPUT + USE SIGNAL ; diff --git a/test/orfs/mock-array/mock-array.bzl b/test/orfs/mock-array/mock-array.bzl index 714ebed015b..391570f31f0 100644 --- a/test/orfs/mock-array/mock-array.bzl +++ b/test/orfs/mock-array/mock-array.bzl @@ -284,6 +284,7 @@ def mock_array(name, config): "RTLMP_MAX_MACRO": "64", "RTLMP_MIN_INST": "50", "RTLMP_MIN_MACRO": "8", + "RTLMP_NOTCH_WT": "0", }, macros = ["Element_{name}_base_generate_abstract".format(name = name)], sources = { diff --git a/test/tinyRocket_nangate45.metrics_limits b/test/tinyRocket_nangate45.metrics_limits index d4ac44c4eb6..e9b7c7c91ff 100644 --- a/test/tinyRocket_nangate45.metrics_limits +++ b/test/tinyRocket_nangate45.metrics_limits @@ -1,23 +1,23 @@ { "IFP::instance_count" : "28653.6" - ,"DPL::design_area" : "64628.399999999994" - ,"DPL::utilization" : "28.08" - ,"RSZ::repair_design_buffer_count" : "1119" - ,"RSZ::max_slew_slack" : "0" - ,"RSZ::max_capacitance_slack" : "-63.070456802721004" + ,"DPL::design_area" : "64680.0" + ,"DPL::utilization" : "28.2" + ,"RSZ::repair_design_buffer_count" : "1154" + ,"RSZ::max_slew_slack" : "-4.494017150052186" + ,"RSZ::max_capacitance_slack" : "-92.72903549036563" ,"RSZ::max_fanout_slack" : "0" - ,"RSZ::worst_slack_min" : "-0.12444233740144965" - ,"RSZ::worst_slack_max" : "-0.1762098735689086" + ,"RSZ::worst_slack_min" : "-0.12271508012646327" + ,"RSZ::worst_slack_max" : "-0.19377981956432846" ,"RSZ::tns_max" : "-484.72339999999997" ,"RSZ::hold_buffer_count" : "0" ,"GRT::ANT::errors" : "0" ,"DRT::drv" : "0" - ,"DRT::worst_slack_min" : "-0.12421854418893152" - ,"DRT::worst_slack_max" : "-0.25774287844645155" - ,"DRT::tns_max" : "-487.5754921986957" - ,"DRT::clock_skew" : "0.03894846222449398" - ,"DRT::max_slew_slack" : "-4.4481844540659035" - ,"DRT::max_capacitance_slack" : "-78.62798730581582" + ,"DRT::worst_slack_min" : "-0.12274949704120003" + ,"DRT::worst_slack_max" : "-0.2642268031382453" + ,"DRT::tns_max" : "-490.4226550070227" + ,"DRT::clock_skew" : "0.05412705437062065" + ,"DRT::max_slew_slack" : "-42.05331678907984" + ,"DRT::max_capacitance_slack" : "-108.49811096050963" ,"DRT::max_fanout_slack" : "0" ,"DRT::clock_period" : "2.03" ,"DRT::ANT::errors" : "0"