From 12494398e9a09688c48f542b359252f2d5fce5ee Mon Sep 17 00:00:00 2001 From: James Cherry Date: Sun, 23 Jun 2019 19:52:29 -0700 Subject: [PATCH] set_clock_sense -> set_sense, LibertyPort::driveResistance --- doc/OpenSTA.odt | Bin 75419 -> 75487 bytes liberty/EquivCells.cc | 18 ++++++++-- liberty/Liberty.cc | 77 ++++++++++++++++++++++-------------------- liberty/Liberty.hh | 11 +++--- sdc/WriteSdc.cc | 2 +- search/Property.cc | 24 ++++++------- search/Search.cc | 10 ------ search/Search.hh | 12 ++++++- tcl/Sdc.tcl | 34 ++++++++++++++++--- 9 files changed, 116 insertions(+), 72 deletions(-) diff --git a/doc/OpenSTA.odt b/doc/OpenSTA.odt index 32579683cf871276039799555cc09f4c93b35bc7..ada6d8789164ec662731b6b78a226697952f4c78 100644 GIT binary patch delta 45677 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%0AJ}R@&=^*u!{d2$RVP`YuSBX2> zDmvdBzHL+ocxqh&Bcet zS|E5%3W0BtvpotCXqFQ0Y<6IgSOiFmz;ndhb)_s?irx6yV2lfB0B7e96ODGWT(OG44rZsby7 zT(6ytou}7cT7613fCqkzK45g8&foq)IZpTOTY|)++dMUoh)eg|O#)8mr^b8pPv}=~ zSzhMPCvp*c>5)vQnZrXH5@L27)lCzY8nLXhw<@H9yU z=_jzw)}VlZ#vBXxA}E7^9(6?nMGCf((|!0bGc`KYt!~OYpl~|3kD82xmq{fA7HzwE z=UHsw+S1;d4W9IObs1^1axl>xP1w@uH1b)mZSO~l$r2=#DnAssS5B-viJ>^gwkWNl z6=~yhc-PV*3r8>-3Emf6W+pr~DP==uqEETDKE0zDkKk(#626;!qab9-05MXu3vB7l z2jfx*`_-fjATVN*D+UT;`Wwcp4arJRXwJ#SBFP$Y8KG&G7e2@`*kT5^47>=AXS~T?3 z3dDL6phdk1G>)RVg&Q_98R>(@zp8O;*DO_qH9k)%1IQwhvx2hhqOg@D$Yuhxr>Ghk zxFah=6-*gbla@ilRE=2ME9C)-riYY8_;$`hFI9F)5@VId5sxH$AHa7x`DSX8s6xz`XO`5YOYhy2!(^!eN# z=FIv~4vY@NhcpnVM6G>PfbJk%R3e?f+V+TuSV&knD=FM6%I_6(qKHY26Dx)MD7V%o zirpNUWN9)pDu(RgHTvSgyVzV2(U}WIm_fe2%}XSwa2l%9w70Bys}{h zBF@_AS^JW@BZ*mv^C>9re+VHk3j?__Z1a=RKiT(8?ONRiipM`pntJ?2)vsIk9h-M9 z4dJ_~u+3Y1q=c1}-))blRsM)P4*qN#_WJ@Y$sEBTg<&~C_m7xRlr?(iK2aR55IEh~ z5%^_rFPw5Hs<%ohCGiG@esz#N*YSy2`6Wz$TW7Xl#}$(GCB-6EhCYH|a#T7Le#Y6O zFLAMu=Uc;9R7+;t5MAUI<3$PghVvD;9RW1W`EJ6c#|0{YaUpU9jefX0T%~zdzU8(8 z=TT&gDD%9OKx@I-&W{tp%=zamL7)!QG0@l{yCF8oyqp_*rnO@pc6Zi&wj^H3a|5zg zg}mq))ltLmMSIf?U&XPi5>|FCXdR!ztW$-g+LSxR{-|co>5}Pc=%HG?C-BDdV22sG zzAQ*YnhUvBT9pG^2$JsxkwwZXJ!$Z{IWnXQ@ZyeT{S3|VM&mGIjV zSWJ00^fhI*W?7Q9eOM zXFp9KBOmrll#z}&AEWOAEl`AfE3ndL>Kj)*R-GI5OMO=}6x2Iznba>H#rfi`vmMtP zDir3+BP1ZQPZdbSf^FL8g`m$Kn1B`#Sx6u9Yvv$bo*l)v_?zd&uuLx_irJ%v4oTI5 zsitmj`w>YGLQj0Z?@a|c`7Qgkp=tv|>?N_NfHX{5k2tz@*>8>r5`cs;#xa5ofo!eF z#X8F`)Ati3Ts4j}95B7AF$}`bi5{EmX?`Vx87S)T=!%bnqC4ggL3(lM9StjrvmdaI zQVgZr3s1odx~|SI^R(!H#*>o_eDXV*vMnYT)9k|PDdw~u-2eVp&nBshngMlx6nT-W zHx=JucA$*ssMq4h4N&cfO)9T0lgy$uCHJQ#2Rq!HhON-IROPLah47aE|Z9nVJf>K2vIQiA@!&aafm*-zsu7i~MD}Pn`$PC|2Vu-%_ z$p3cuBQmTjD6Nrziu)vJ#D{X$_W9m!-*s0#M6);{6Wtv1XFkv;1gA`NJyK6C=(+9P zDrzv6yX~xskFDiD{D)MTO2Eh28gM$Js>UI1)P~o*uP7X)r5-||W${NH1ZMnL3*Vv@ zoU55uOSi@35wsbg&J@iB#P#F00+ah7hf_&^O|>w@XkpSspy5qMOSoLUbo->iA`xOk z^FoRD!r?J2K?4vnvq=u~IS&n;#l5yy(!~UcV~1?@&&UdyQb)

x8GBCQqd{__`&T|_BAPIJB6Fj(RP>OOlbVdx_ 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 diff --git a/liberty/EquivCells.cc b/liberty/EquivCells.cc index 7b392f60..43f9730c 100644 --- a/liberty/EquivCells.cc +++ b/liberty/EquivCells.cc @@ -43,13 +43,25 @@ hashPort(const LibertyPort *port); static unsigned hashString(const char *str); -class CellDriveResistanceLess +static float +cellDriveResistance(const LibertyCell *cell) +{ + LibertyCellPortBitIterator port_iter(cell); + while (port_iter.hasNext()) { + auto port = port_iter.next(); + if (port->direction()->isOutput()) + return port->driveResistance(); + } + return 0.0; +} + +class CellDriveResistanceGreater { public: bool operator()(const LibertyCell *cell1, const LibertyCell *cell2) const { - return cell1->driveResistance() > cell2->driveResistance(); + return cellDriveResistance(cell1) > cellDriveResistance(cell2); } }; @@ -62,7 +74,7 @@ EquivCells::EquivCells(LibertyLibrarySeq *equiv_libs, // Sort the equiv sets by drive resistance. for (auto cell : unique_equiv_cells_) { auto equivs = equiv_cells_.findKey(cell); - sort(equivs, CellDriveResistanceLess()); + sort(equivs, CellDriveResistanceGreater()); } if (map_libs) { for (auto lib : *map_libs) diff --git a/liberty/Liberty.cc b/liberty/Liberty.cc index a28d4ab5..fb1dcb09 100644 --- a/liberty/Liberty.cc +++ b/liberty/Liberty.cc @@ -1440,42 +1440,6 @@ LibertyCell::setCornerCell(LibertyCell *corner_cell, //////////////////////////////////////////////////////////////// -// Use the min/max "drive" for all the timing arcs in the cell. -float -LibertyCell::driveResistance(const TransRiseFall *tr, - const MinMax *min_max) const -{ - float max_drive = min_max->initValue(); - LibertyCellTimingArcSetIterator set_iter(this); - while (set_iter.hasNext()) { - TimingArcSet *set = set_iter.next(); - if (!set->role()->isTimingCheck()) { - TimingArcSetArcIterator arc_iter(set); - while (arc_iter.hasNext()) { - TimingArc *arc = arc_iter.next(); - if (tr == nullptr - || arc->toTrans()->asRiseFall() == tr) { - GateTimingModel *model = dynamic_cast(arc->model()); - if (model) { - float drive = model->driveResistance(this, nullptr); - if (min_max->compare(drive, max_drive)) - max_drive = drive; - } - } - } - } - } - return max_drive; -} - -float -LibertyCell::driveResistance() const -{ - return driveResistance(nullptr, MinMax::max()); -} - -//////////////////////////////////////////////////////////////// - float LibertyCell::ocvArcDepth() const { @@ -1953,6 +1917,47 @@ LibertyPort::capacitanceIsOneValue() const return capacitance_.isOneValue(); } +//////////////////////////////////////////////////////////////// + +// Use the min/max "drive" for all the timing arcs in the cell. +float +LibertyPort::driveResistance(const TransRiseFall *tr, + const MinMax *min_max) const +{ + float max_drive = min_max->initValue(); + bool found_drive = false; + LibertyCellTimingArcSetIterator set_iter(liberty_cell_, nullptr, this); + while (set_iter.hasNext()) { + TimingArcSet *set = set_iter.next(); + if (!set->role()->isTimingCheck()) { + TimingArcSetArcIterator arc_iter(set); + while (arc_iter.hasNext()) { + TimingArc *arc = arc_iter.next(); + if (tr == nullptr + || arc->toTrans()->asRiseFall() == tr) { + GateTimingModel *model = dynamic_cast(arc->model()); + if (model) { + float drive = model->driveResistance(liberty_cell_, nullptr); + if (min_max->compare(drive, max_drive)) + max_drive = drive; + found_drive = true; + } + } + } + } + } + if (found_drive) + return max_drive; + else + return 0.0; +} + +float +LibertyPort::driveResistance() const +{ + return driveResistance(nullptr, MinMax::max()); +} + void LibertyPort::setFunction(FuncExpr *func) { diff --git a/liberty/Liberty.hh b/liberty/Liberty.hh index f82fa793..806ffa7a 100644 --- a/liberty/Liberty.hh +++ b/liberty/Liberty.hh @@ -411,7 +411,7 @@ public: bool isClockGateOther() const; bool isClockGate() const; void setClockGateType(ClockGateType type); - // Internal to LibertyCellTimingArcSetIterator. + // from or to may be nullptr to wildcard. TimingArcSetSeq *timingArcSets(const LibertyPort *from, const LibertyPort *to) const; size_t timingArcSetCount() const; @@ -490,10 +490,6 @@ public: virtual void finish(bool infer_latches, Report *report, Debug *debug); - float driveResistance(const TransRiseFall *tr, - const MinMax *min_max) const; - // Max of rise/fall. - float driveResistance() const; bool isBuffer() const; // Only valid when isBuffer() returns true. void bufferPorts(// Return values. @@ -607,6 +603,7 @@ class LibertyCellTimingArcSetIterator : public TimingArcSetSeq::ConstIterator { public: LibertyCellTimingArcSetIterator(const LibertyCell *cell); + // from or to may be nullptr to wildcard. LibertyCellTimingArcSetIterator(const LibertyCell *cell, const LibertyPort *from, const LibertyPort *to); @@ -659,6 +656,10 @@ public: void setCapacitance(const TransRiseFall *tr, const MinMax *min_max, float cap); + float driveResistance(const TransRiseFall *tr, + const MinMax *min_max) const; + // Max of rise/fall. + float driveResistance() const; FuncExpr *function() const { return function_; } void setFunction(FuncExpr *func); FuncExpr *&functionRef() { return function_; } diff --git a/sdc/WriteSdc.cc b/sdc/WriteSdc.cc index df039e02..e0d4a4e6 100644 --- a/sdc/WriteSdc.cc +++ b/sdc/WriteSdc.cc @@ -918,7 +918,7 @@ WriteSdc::writeClockSense(PinClockPair &pin_clk, flag = "-negative"; else if (sense == ClockSense::stop) flag = "-stop_propagation"; - fprintf(stream_, "set_clock_sense %s ", flag); + fprintf(stream_, "set_sense -type clock %s ", flag); const Clock *clk = pin_clk.second; if (clk) { fprintf(stream_, "-clock "); diff --git a/search/Property.cc b/search/Property.cc index c7121ee2..1b41c4c3 100644 --- a/search/Property.cc +++ b/search/Property.cc @@ -527,18 +527,6 @@ getProperty(const LibertyCell *cell, return PropertyValue(cell->filename()); else if (stringEqual(property, "library")) return PropertyValue(cell->libertyLibrary()); - else if (stringEqual(property, "drive_resistance_rise_min")) - return PropertyValue(cell->driveResistance(TransRiseFall::rise(), - MinMax::min())); - else if (stringEqual(property, "drive_resistance_rise_max")) - return PropertyValue(cell->driveResistance(TransRiseFall::rise(), - MinMax::max())); - else if (stringEqual(property, "drive_resistance_fall_min")) - return PropertyValue(cell->driveResistance(TransRiseFall::fall(), - MinMax::min())); - else if (stringEqual(property, "drive_resistance_fall_max")) - return PropertyValue(cell->driveResistance(TransRiseFall::fall(), - MinMax::max())); else if (stringEqual(property, "is_buffer")) return PropertyValue(cell->isBuffer()); else if (stringEqual(property, "dont_use")) @@ -656,6 +644,18 @@ getProperty(const LibertyPort *port, float cap = port->capacitance(TransRiseFall::rise(), MinMax::max()); return PropertyValue(sta->units()->capacitanceUnit()->asString(cap, 6)); } + else if (stringEqual(property, "drive_resistance_rise_min")) + return PropertyValue(port->driveResistance(TransRiseFall::rise(), + MinMax::min())); + else if (stringEqual(property, "drive_resistance_rise_max")) + return PropertyValue(port->driveResistance(TransRiseFall::rise(), + MinMax::max())); + else if (stringEqual(property, "drive_resistance_fall_min")) + return PropertyValue(port->driveResistance(TransRiseFall::fall(), + MinMax::min())); + else if (stringEqual(property, "drive_resistance_fall_max")) + return PropertyValue(port->driveResistance(TransRiseFall::fall(), + MinMax::max())); else throw PropertyUnknown("liberty port", property); } diff --git a/search/Search.cc b/search/Search.cc index 0413ba37..72a2e887 100644 --- a/search/Search.cc +++ b/search/Search.cc @@ -192,16 +192,6 @@ SearchThru::searchThru(Edge *edge) && loopEnabled(edge, sdc, graph, search); } -class ClkArrivalSearchPred : public EvalPred -{ -public: - ClkArrivalSearchPred(const StaState *sta); - virtual bool searchThru(Edge *edge); - -private: - DISALLOW_COPY_AND_ASSIGN(ClkArrivalSearchPred); -}; - ClkArrivalSearchPred::ClkArrivalSearchPred(const StaState *sta) : EvalPred(sta) { diff --git a/search/Search.hh b/search/Search.hh index 4d39f102..daa06935 100644 --- a/search/Search.hh +++ b/search/Search.hh @@ -346,6 +346,7 @@ public: VisitPathEnds *visitPathEnds() { return visit_path_ends_; } GatedClk *gatedClk() { return gated_clk_; } Genclks *genclks() { return genclks_; } + void findClkVertexPins(PinSet &clk_pins); protected: void init(StaState *sta); @@ -376,7 +377,6 @@ protected: const PathAnalysisPt *path_ap, Arrival insertion, TagGroupBldr *tag_bldr); - void findClkVertexPins(PinSet &clk_pins); Tag *clkDataTag(const Pin *pin, Clock *clk, const TransRiseFall *tr, @@ -624,6 +624,16 @@ protected: bool search_thru_latches_; }; +class ClkArrivalSearchPred : public EvalPred +{ +public: + ClkArrivalSearchPred(const StaState *sta); + virtual bool searchThru(Edge *edge); + +private: + DISALLOW_COPY_AND_ASSIGN(ClkArrivalSearchPred); +}; + // Class for visiting fanin/fanout paths of a vertex. // This used by forward/backward search to find arrival/required path times. class PathVisitor : public VertexVisitor diff --git a/tcl/Sdc.tcl b/tcl/Sdc.tcl index 4625f2b7..eb2096df 100644 --- a/tcl/Sdc.tcl +++ b/tcl/Sdc.tcl @@ -1434,15 +1434,41 @@ proc set_clock_latency { args } { ################################################################ +define_cmd_args "set_sense" \ + {[-type clock|data] [-positive] [-negative] [-pulse pulse_type]\ + [-stop_propagation] [-clocks clocks] pins} + +proc set_sense { args } { + parse_key_args "set_clock_sense" args keys {-type} flags {} 0 + + set type "clock" + if { [info exists keys(-type)] } { + set type $keys(-type) + if { $type == "data" } { + sdc_warn "set_sense -type data not supported." + } elseif { $type == "clock" } { + set_clock_sense_cmd1 "set_sense" $args + } else { + sdc_error "set_sense -type clock|data" + } + } +} + +# deprecated in SDC 2.1 define_cmd_args "set_clock_sense" \ {[-positive] [-negative] [-pulse pulse_type] [-stop_propagation] \ [-clock clocks] pins} proc set_clock_sense { args } { + sdc_warn "set_clock_sense is deprecated as of SDC 2.1. Use set_sense -type clock." + set_clock_sense_cmd1 "set_clock_sense" $args +} + +proc set_clock_sense_cmd1 { cmd cmd_args } { # SDC uses -clock, OT, OC use -clocks - parse_key_args "set_clock_sense" args keys {-clock -clocks -pulse} \ - flags {-positive -negative -stop_propagation} - check_argc_eq1 "set_clock_sense" $args + parse_key_args $cmd cmd_args keys {-clock -clocks -pulse} \ + flags {-positive -negative -stop_propagation} 0 + check_argc_eq1 "set_clock_sense" $cmd_args set pulse [info exists keys(-pulse)] if { $pulse } { @@ -1458,7 +1484,7 @@ proc set_clock_sense { args } { sta_warn "-positive, -negative, -stop_propagation and -pulse are mutually exclusive." } - set pins [get_port_pins_error "pins" [lindex $args 0]] + set pins [get_port_pins_error "pins" [lindex $cmd_args 0]] set clks {} if {[info exists keys(-clock)]} { set clks [get_clocks_warn "clock" $keys(-clock)]