From a8a00ff3fbf29798d104ba53151a7b249694d62f Mon Sep 17 00:00:00 2001 From: Eddie Hung Date: Tue, 18 Dec 2018 18:20:23 -0800 Subject: [PATCH] Disable entering HROW from INT_[LR].CLK[01] --- xc7/arch.cc | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/xc7/arch.cc b/xc7/arch.cc index b3c302a3..bb569d16 100644 --- a/xc7/arch.cc +++ b/xc7/arch.cc @@ -138,6 +138,7 @@ TorcInfo::TorcInfo(BaseCtx *ctx, const std::string &inDeviceName, const std::str const boost::regex re_CLB_I1_6("CLBL[LM]_(L|LL|M)_[A-D]([1-6])"); const boost::regex bufg_i("CLK_BUFG_BUFGCTRL\\d+_I0"); const boost::regex bufg_o("CLK_BUFG_BUFGCTRL\\d+_O"); + const boost::regex hrow("CLK_HROW_CLK[01]_[34]"); std::unordered_map> delay_lookup; std::unordered_map segment_to_anchor; Tilewire currentTilewire; @@ -322,6 +323,13 @@ TorcInfo::TorcInfo(BaseCtx *ctx, const std::string &inDeviceName, const std::str } } + // Disable entering HROW from INT_[LR].CLK[01] + if (boost::starts_with(tileTypeName, "CLK_HROW")) { + ewi.set(a.getSourceTilewire()); + if (boost::regex_match(ewi.mWireName, hrow)) + continue; + } + pips.emplace_back(p); pip_to_arc.emplace_back(a); // arc_to_pip.emplace(a, p.index);