Synopsys, Inc. v. Atoptech, Inc

Filing 929

PERMANENT INJUNCTION AND DISPOSITION ORDER. Signed by Judge Maxine M. Chesney on 12/19/16. (Attachments: # 1 Appendix Part One, # 2 Appendix Part Two, # 3 Appendix Part Three, # 4 Appendix Part Four, # 5 Appendix Part Five) (mmclc2, COURT STAFF) (Filed on 12/19/2016)

Download PDF
APPENDIX Part Five Trial Exhibit 1441, pages 191-259 si_filter_per_aggr_noise_peak_ratio filter _per_aggr_noise_peak_ratio Specifies the threshold for the voltage bump introduced by an aggr essor at a victim node, divided by Vee, be l ow which the aggressor net can be fi l tered out during electrical filterin g. Persistent parameter that specifies the noise peak voltage threshold below which an aggressor is ignored. The threshold is specified as a fraction of the supply voltage . Syntax: TYPE f i l ter_per_aggr_n oi se_peak_rat i o r ati o float where ratio is the minimum noise peak value as a fraction of the supply voltage below which the noise peak is ignored . DEFAULT The default value is 1.000e-02. 0 . 01 DESCRIPTION Speci fi es the threshold for the voltage bump introduced by an aggressor at a victim node; the default is 0.01 . This variable, along with si_ filter_ accum_ aggr_ noise_peak_ ratio , makes up a pair of var iables used by PrimeTime- SI during the e lectric a l filtering p hase, to determine whether an aggressor net can be filtered. An aggressor net, a long wi th its coupling capaci to rs, is filter ed when either of the following are true ; 1 . The peak voltage of the voltage bump induced on the victim net divided by Vee is less than the value of si_filter_per_aggr_noise_peak_ratio. 2 . The accumulated peak voltage of voltage bumps induced on the victim by aggressors to the victim ne t d ivided by Vee is less than the value of si_ filter_ accum_ aggr_ noise_peak_ ratio. Paras itic filterin g criter ia previously checked are contro ll ed by the variables si_ filter_per_ aggr_xcap, si_ filter_per_ aggr_ xcap_ to_ gcap_ ratio , and fi_ filter_ single_ to_ average_ all_xcap_ ratio . To de te rmine t h e current value of this variable, si_ filter_per_ aggr_ noise_peak_ ratio . type printvar 191 21 si_filter_per_aggr_to_average_aggr_xcap_ratio si_filter_ per_aggr_to_average_aggr_xcap_ratio Specifies the minimum value of the ratio of the tota l cross-coupled capaci ta nce between the aggressor net and the victim ne t to the average cross -coupled capacitance between the victim net a n d all of its aggressor nets, be l ow which an aggressor net can be filtered out during parasitic filtering. Persistent parameter that specifes whether to ignore the aggressor net if the ratio of the total cross-coupled capacitance between the aggressor net and the victim net to the average cross-coupled capacitance between the victim net and all of its aggressor nets is less than this value. Syntax: TYPE float si_fi l ter_per_aggr_to_average_aggr_xcap_ratio value The default values are 0. DEFAULT 0.0 DESCRIPTION Speci fies the threshold of the rati o of the total cross-coupled capacitance between the aggressor net and the victim net to the average cross-coupled capacitance between the victim net and all of its aggressor n e t s . This variable, along with si_ filter_per_ aggr_ xcap and si_ filter_per_ aggr_xcap_ to_ gcap_ ratio , makes up a set of th ree variables used by PrimeTime - SI du r ing the second stage of the parasitic fil tering phase, to determi ne whe ther an aggressor ne t can be filtered for a particular victim net. If it meets all of the filtering criteria described in the section labeled " Fi l tering Criteria ", a ne t is filtered as an aggressor n e t for t ha t particular victim net. However, the aggressor net can still be considered as an aggressor net to another victim net. Note that a coupling capacitor can be filtered at one end and not at the other . 192 22 si_filter_per_aggr_xcap si_JUter __ per-"ggr_xcap Specifies the minimum value of the total cross-coupled capacitance between the Persistent parameter that specifes whether to ignore the aggressor net if the total cross-coupled capacitance between the aggressor net and the victim net is less than the specified value. aggressor net and the victim net, below which an aggressor net can be filtered out during parasitic filtering . Syntax: TYPE si_f ilter_per_agg r_xcap value float The default values are 0. DEFAULT 0.0 DESCRIPTION Specifies t h e thresho l d, in library units, of the tota l cross-coupl ed capaci tance between the aggressor net and the victim net. This variable, along with si_ filter_per_ aggr_xcap_ to_ gcap_ ratio and si_ filter_per_ aggr_ to_ average_ aggr_xcap_ ratio , makes up a set of three variables used by PrimeTime-SI during the second stage of the parasitic filtering phase, to determine whether an aggressor ne t can be filtered for a particular victim ne t . If it meets all of the f i ltering cri ter i a described in the sec t ion labeled "F il tering Criteria " , a net is filtered as an aggressor net for that particular victim net . However, the aggressor net can s t ill be considered as an aggressor net to ano t her victim net . Note that a coupl ing capacitor can be fi l tered at one end and not at the other. 193 23 si_filter_per_aggr_xcap_to_gcap_ratio si_filter_per_aggr_xcap_to_gcap_ratio Specifies the minimum va l ue o f the rat i o o f the tota l cross-coup l ed capaci t ance be tween the aggressor ne t and the victim net to the total ground capacitance o f the victim net, below which an aggressor net can be filtered out during parasi t ic fi ltering . Persistent parameter that specifes whether to ignore the aggressor net if the ratio of the total TYPE cross-coupled capacitance between the aggressor net and the victim net to the total ground capacitance of the victim net is less than the specified value. Syntax: si filter_per_aggr_xcap_to_gcap_ rat io value float The default values are 0. DEFAULT 0.0 DESCRIPTION Specifies the threshold, i n library units, of the ratio of the total cross - coupled capac i tance between the aggressor net and the v i ctim n et to t he tota l ground capacitance of the victim n et . This variable, a l ong with ai_ filter_per_ aggr_xcap and ai_ filter_per_ aggr_ to_ average_ aggr_ xcap_ratio , makes up a set of three variables u sed by Pr i meTirne-S I during the second stage of the parasitic fi lter ing phase, to de t ermine whether an aggressor ne t can be fi l tered for a particula r v i ct i m ne t . If it meets all of t he fi l tering criteria described in the section labeled "Fi ltering Criteria", a net is fi l tered as an aggressor net for that particular victim net. However , the a ggressor n et can st ill be c on s i dered as an aggressor net t o ano t her victim net. Note that a coupling capacitor can be filtered at one end and no t at the other. 194 24 si_filter_total_aggr_xcap si_filter_total_aggr_xcap Specifies the minimum value of the total cross-coupled capacitance between the victim net and all aggressor nets, below which a victim net can be filtered out during parasitic fil t ering . Persistent parameter that specifes whether to ignore the victim net if the total cross-coupled capacitance between the victim net and all aggressor nets is Jess than the specified value. Syntax; TYPE si filter total aggr_ xcap value float The default values are 0. DEFAULT 0 .0 DESCRIPTION Speci f ies the t hresho l d, in library units, of the to tal cross- coupled capacitance between the victim net and all aggressor nets. This variable, along with si_ filter_ total_aggr_ xcap_ to_ gcap_ ratio , makes up a pair of variables used by PrimeTi me - SI dur ing t he first stage of the parasit i c f i lter ing phase , t o determi ne whether a victim net can be filtered. If it meets all of the filter ing criteria described in the sec ti on l a beled "Filterin g Criteria " , a victim net is filtered . However, the victim net can still be considered as an aggressor net . Note t ha t a coupling capacitor can be fil t ered at one end and not at the other. 195 25 si_filter_total_aggr_xcap_to_gcap_ratio si_filter_total_aggr_xcap_to_gcap_ratio Specifies the minimum value of the ratio o f t otal cross-coupled capac it ance to the tota l ground and cross - coupled capacitance, be l ow which a victim net can be filtered o u t during parasitic filtering. Persistent parameter that specifes whether to ignore the victim net if the ratio of total cross-coupled capacitance to the total ground and cross-coupled capacitance is less than the specified value. Syntax: TYPE si f i l t er_total_agg r xcap float The default values are 0. t o _gcap_rat~o val ue DEFAULT 0.0 DESCRIPTION Specifies the threshold of t he ratio of total cross - coupled capacitance to the total ground and cross-coupled capacitance of a vi ctim net. This variable, along with ai_ fi l ter_ tota l _ aggr_ xcap , makes up a pair of variables used by Pri meTime-SI during the first stage of the parasitic filtering phase, to determine whether a victim net can be filtered . If it meets all of the fil t ering criterial described in the section labe l ed "Filter i ng Criteria ", a vic t im net is filtered . However, the victim net can stil l be considered as an agg r essor ne t . Note tha t a coupl i ng capacit o r can be filtered at one end and not at the other . 196 26 si_noise_composite_aggr_mode noise_composite_aggr_mode Specifies the composite aggressor mode for noise analysis . Persistent parameter that controls whether a composite aggressor is used to model the combined noise of all small aggressors , including the filtered ones, when performing noise analysis using the PTSI-Iike model. TYPE Syntax: String no 1 se compos1 t e _ agg r_mode d i sa bl ed I no r mal I s t at i st i cal DEFAULT where the values have the following meaning: disabled dis a b led Do not use a composite aggressor to model the combined effect of all weak aggressors. n ormal Use a composite aggressor to model the combined effect of all weak aggressors and assume the worst possible aggressor alignment. sta t ist i ca l Use a composite aggressor to model the combined effect of all weak aggressors, and use a statistical model. Compared to the normal mode , this reduces the pessimism . DESCRIPTION This variable specifies which composite aggressor mode is used in PrimeTime SI noise ana l ysis . Al lowed values a re disabled (the default), which turns off the composite aggressor feature. normal, causes PrimeTime SI to calculate noise by uti l izing the non -sta tistical composite aggressor feature. Selecting statistical causes Pr imeTime SI to calculate noise by using t he statistical composite aggressor f low . In disabled composite aggresso r mode, PrimeT ime SI uses its original flow with composite aggressor comp le tely off to analyze the noise. In normal composite aggressor mode , PrimeTime SI aggregates the effect of mul tiple small aggressors into a single compos i te aggressor, t hereby reducing the computational complexity and improving t he performance . The default value is disabled. statistical composite aggressor mode reduces the pessimism for no i se analysis by reducing the effect of composite aggressor. For the current value of this variable, type printvar si_ noise_ composite_ aggr_ mode . 197 27 si_use_driving_cell_derate_for_delta_delay si_use_driving_cell_derate_for_delta_delay Allows crossta lk de l ta del ay for one net to be derated using the relevant derate factor for the cell drivi ng that net . Persistent parameter that controls whether crosstalk delta delay on a victim net w ill be derated using the same derate factor for the cell driving that net. TYPE Syntax: boolean s i u se_d ri ving_ cell_d e rate_fo r_de lt a_ delay t r ue I f a lse where the values have the following meaning : DEFAULT FALSE t rue Use the derating factor for the delay on a victim net also as a derating factor when calculating the deHa delay on a victim net caused by any aggressor net. false Do not use the derating factor on a victim net when calculating the delta delay that an aggressor causes on a victim net. GROUP si_variables DESCRIPTION The default value is false . When this variable is set to true the crosstalk de lta delays for each net will be derated using the derate factors from the cell driving that net. The relevant derate factor to be applied will adhere to the same precedenc e r ules as the driving cell itself. For example, if no i n stance-specific derate factor was set o n the driving cell then the hierarchical cell, the library ce l l and finally the globa l derate f actors wil l be checked for a relevant derate factor. To see what dera t e factors are to be applied to the net in q uestion , first obtain the driving cell ($driving_ cell) and u se : pt_ shell report_ timing_ derate [get_ c e lls $driving_ cell] If the command r eport_ timing is invoked with the - derate option then the un- derated cross t alk delta de l ay wi l l be reported as before . In addit i on the derate column wi ll report the net derate factor used to derate the de l ta-free n et delay. To determine the current value of this variable, enter the fo l lowing comman d : pt_ she l l printvar si_use_driving_cell_derate_for_delta_delay or pt_ shell echo $si_u s e_ driving_ cell_ derate_ for_ delta_ delay 198 28 si_xtal k_ composite_aggr_mode xtalk_composite_aggr _mode Specifies the composite aggressor mode for crosstalk delay . Persistent parameter that controls whether a composite aggressor is used to model the combined impact of all small aggressors, including the filtered ones, when performing crosstalk delay analysis using the PTSI-Iike model. TYPE Syntax: String x ta lk_co mp o si t e_ag g r _ mo de disab led DEFAULT I norma l I stat i s t ica l where the values have the following meaning: d is ab led d i sab led Do not use a composite aggressor to model the combined effect of all weak aggressors. n o rma l Use a composite aggressor to model the combined effect of all weak aggressors and assume the worst possible aggressor alignment. s ta t i st i c al Use a composite aggressor to model the combined effect of all weak aggressors , and use a statistical model. Compared to the normal mode, this reduces the pessimism. DESCRIPTION This variabl e spec i fi e s which composit e aggressor mode is used in Prime Time SI c r oss t alk delay ana lysis . Allowed values are disabled (the default), wh i ch turns o ff the composite aggressor feature . normal, causes Pr imeTime SI to calcul ate crossta l k delay by utilizing the non- statistical composite aggressor feature . Se l ect i ng statistical causes PrimeTime SI to calculate crosstal k by using the statistical composi t e aggr essor flow . In d i sabled composite aggressor mode, PrimeTime SI uses its orig i na l f l ow with composite aggressor completely of f to calcul ate the xta lk delay . I n normal composite aggressor mode, PrimeTime SI aggregates the effect of some small aggressors ( inc l uding filtered ones) i nto a single composite aggressor , thereby reducing the computational compl e xity and improving the pe r forman ce . The default value is disabled. statistical compos i te aggressor mode reduces the pessimism for xtal k delay analysis by reducing the effect of composite aggressor . For the c urrent va lue of th i s variable, type printvar si_ xtalk_ composite_ aggr_mode . 199 29 si_xtalk_composite_aggr_noise_peak_ratio xtalk_composite_agg r_noise _peak_rati o Used t o control t he composi t e aggressor selection f or x t a l k analys i s . Persistent parameter that specifies the noise peak threshold of an individual aggressor. If the noise peak is above the threshold , the noise impact of the aggressor is calculated individually. If the noise peak is below the threshold, the aggressor is considered weak and its noise impact is modeled by the composite aggressor. TYPE fl oat Syntax: rat~ o DEFAULT x t a lk_ compos ite _ a gg r_n oi se_peak rati o 0 . 01 where ratio is the threshold noise voltage as a fraction of the supply below which the impact of the aggressor is modeled as part of the composite aggressor. DESCRIPTION The default value is 1.000e-02. Specifies the threshold value in crossta l k b u mp to Vdd ratio, below which aggressors are selected into composite aggressor group. The defaul t value is 0.0 1 , which means all the aggressor nets with crosstalk bump to Vdd ratio less t han 0.01 wi l l be selected i n t o compos i te aggressor group . It works together wi t h other fi l terin g thresholds si_ filter_per_ aggr_ noise_peak_ ratio and si_ filter_ accum_ aggr_ noise_peak_ ratio to determine which aggressors can be selected in t o composite aggressor group . To de t ermine t he current value of thi s variable, t ype printvar si_ xtalk_ composite_ aggr_ noise_peak_ ratio at the PT she l l prompt . 200 30 si_xtalk_composite_aggr_quantile_high_pct xtalk_ composite _agg r_quantile _high_pct Used to control the composite aggressor creation f o r statistical ana l y sis . Persistent parameter that specifies the required confidence level to use for the statistical model of the composite aggressor. The value is the probability in percentage that a real noise bump will be smaller than the calculated bump. TYPE fl oat DEFAULT 99.73 This parameter is also used in the calculation of the virtual aggressor capacitance . if the Celtic-like noise model is chosen, the capacitance mode is chosen for the modelling of weak aggressors, and the binomial method is chosen to calculate that capacitance. Syntax: xt al k_composi te_aggr_qua nt ile_hi gh_p ct per c entage DESCRIPTION Th i s variable is set to the desired p r obabi l ity in per cen t age fo rmat that any given real combi ned bump height will be less than or equal to the computed composite aggressor bump height. Given the desired probability, the resulting quantile value for the composite aggresso r bump height will be calcu la ted. where percen tage is the likelihood that a real bump is smaller than or equal to the calculated composite bump. The default value is 99.73%, which corresponds to a 3-sigma probability. The default val ue of this variable is 99.73, which cor responds to a 3 - sigrna probability that t he real bump height from a ny randomly-chosen combi nation of aggressors wil l be covered by the composi te aggressor bump he i ght . To determine the current value of this variable, t ype printvar si_ xtalk_ composite_ aggr_ quantile_ high_pct at the PT shell prompt . 201 31 si_xtalk_delay_analysis_mode xtalk_delay_analysis_mode Specifies the arrival window a li gnment mode for crosstalk delay . Persistent parameter that specifies the alignment that is assumed between victim and aggressors during crosstalk delay analysis. TYPE String DEFAULT a ll_pa ths Syntax: xta l k_del ay_ analys i s mode all paths all _ violating_paths wo r s t _path where the values have the following meaning: a ll_paths Calculate crosstalk for all paths through the victim net. This is the most conservative approach. all_ violating_ paths Calculate crosstalk only for paths with a negative slack. wors t _path Calculate crosstalk only for the worst paths through the net, that is. the earliest and latest path. DESCRIPTION This var i ab l e specifies how the a l ignment between victim & aggressors is performed i n cross ta l k delay ana l ys is Pr i meTime SI. Al lowed v alues a re all_paths (the defau lt ). which causes PrimeTime SI to calculate crosstalk for all pa t hs through the vic tim net. worst_path , causes PrimeTime S I to calcula te crosstalk for all the worst paths(the e ar lies t /la test path! through the victim net . Se l ecting all_violating_paths causes PrimeTime SI to calculate crosstalk for all worst paths and p aths with the neg ative slack. The default value is all_paths I n all_paths alignment mode , PrimeTime SI con siders the largest possible c ro sstalk delta de l ay f or the given v ictim & aggressor arrival windows . This gurantees that all p aths going throu gh the v ictim net with different arrival times are conservative . This i s de fa u lt and tradational way PTSI calculated de lta delay. The li mi ta tion of th is approach i s worst c rosstalk delta delay applied to all paths i ncluding the worst path which causes slack of the design to be pessimistic . When the path based analysis is d one on a path using get_recalcul ated_timing_paths the above pe ss imism i s removed for the specific p ath. However i t is too expensive do path based analysis ana lys i s on a ll the paths of the design . I n worst_path al i gnment mode, PrimeTime SI aligns aggressors for the the earlist/ lates t paths on t he vict im, so only cross t alk affecting to these wors t pa th is con sidered. So only the cr os stalk affect t hat makes th e slowest (earliest ) path any slower( f aster) is calculated . If the slowest / earli est path is a se t_false_path, the t r ue pa t h is considerd . Considering the worst p a th i n stead of a ll paths, typically generates smaller delta delays and the wors t paths and the design slack becomes less pessimistic. This approach makes sure t hat design slack & worst path are conservative . There is a cav eat to worst_path a l ignment mode, the crosstalk delay is app li cabl e to worst pa t h only, so the sub-critical path de l ay may be i naccura t e. The side af f ect of this li mitation report_timing - nworst N, Nl could r eport paths with optimistic slacks. Also rep ort_ constraint - al l _ violators -max_ delay -min_delay will report less number of violations than r eally exis t on t h e design. Also as violating c r itical paths is fi xed , t he optimistic sub-critical path s will be critical and start viola t ing. Also bottleneck commands l i ke report_timing_bottleneck and report_si_bottleneck wil l be less ef fe ct ive . For some design flows the s ub- critical pa t h opt i mism is less of an iss ue if the design meets t he timing constraints, i.e. al l endp o ints in t he design show posit ive slacks. However , when the des ign has not met the t iming yet , getting conservative crosstalk deltas for a ll the violating paths (whose slack is n egative) is essential fo r the fix i ng flo w. The alignment mode all_violating_paths addre sses this by 202 aligning the aggressors for al l the violating and the worst path through any pin in the design. This means, a ll paths with negative slacks and also a ll the critica l paths thro ugh any pi n in the design (even if the slack for that worst path is posit i ve) have a co n servat i ve slack . This mode may show more pess i mi sm on worst paths than the worst_path mode and also the r untime mi ght get slightly higher t han worst_path . To reduce pessimism furth u r, in the new mode s worst_pa th a nd all_violating_path, another feature is enabled , where in the clock n / w seperate de l ay ca l culation i s 203 33 si_xtalk_exit_on_max_iteration_count xtalk_exit_on_max_iteration count Specifies a maximum number of incremen tal timing iterations, after which PrimeTime SI exits the analysis loop . Persistent parameter that specifies the maximum number of iterations allowed between total delay calculation and crosstalk-induced delay calculation . If there is no convergence after the specified maximum number of iterations. Aprisa fails and issues an error. TYPE Syntax: integer xta lk exit o n max iteration co unt maxcount DEFAULT where maxcount is the maximum number of iterations allowed . 2 The default value is 2. DESCRIPTION Specifies a maximum number of incremen tal timing iterat ions . PrimeTime-SI exits the analysis loop after performing this number of iterations . The default value of this variable is 2, meaning that PrimeTime-SI exits the analysis loop after performing two iterations . You can override this default by setting the variable to another integer; the minimum allowed value is 1. This variable is one of a set of six variables that determine exit criteria; PrimeTime-SI exits the analysis loop after completing the current iteration if one or more of the following is true: 1. The number of iterations performed equals the value of the xtalk_ max_ iteration_ count variable. 2. All delta delays fall between the values of the si_ xtalk_ exit_ on_ min_ delta_ delay and si_ xtalk_ exit_ on_ max_ delta_ delay variables . 3. The number of nets selected for reevaluation in the next iteration is less than t he value of t he si_ xtalk_ exit_ on_ number_ of_ reevaluated_ nets variable . 4. The percentage o f nets (relative to the total number of nets) selected for reeval ua tio n is less than the value of the si_ xtalk_ exit _ on_ reevaluated_ nets_pct variable. 5. The percentage of nets (relative to the number of cross-coupled nets) selected for ree valuation is less than the value of the si_ xtalk_ exit_ on_ coupled_ reevaluated_ nets_pct variable . 6 . You manually exit the analysis loop by p ressi ng Control-C to sen d an interrupt signal to the PrimeTime process. The interrupt is handled as any other exit criteria , at the end of the current iteration of the crosstalk analysis. You cannot i n terrupt iteration immediately without e xit ing PrimeTime . To determi ne the current val u e of this variabl e, si_ xtalk_ exit_ on_ max_ iteration_ count. type printvar 204 34 si _xtal k_reselect_delta_delay xtalk_reselect_delta_delay Specifies the th r eshold o f net de l ay change caused by cross t a l k analysis, above which PrimeTime - SI reselects the net for subsequent delay calculations . Persistent parameter that specifies the threshold delta delay inns above which the net is reselected for window filtering, provided reselection is enabled with the xtalk_reselect_delta_and_slack parameter. TYPE Syntax: x t alk re select_del t a _ de l ay d elta T float where de l taT is the threshold delta delay above which the net is reselected . DEFAULT The default value is 5.000. 5 DESCRIPTION This var i able specifies a r ese l ection t h r eshold in terms o f absolute delta delay. Nets that have at least on e n et arc with a cross t alk -annotated delta del ay above this threshold are se l ected for the next iteration of PrimeT i me-SI delay calculat i ons . Note that del t a de l ays are anno t ated on net arcs, but they capt u re the change of stage delay (cell plus net) because of cross t alk . This variable is one of a set of four variables that determine net resel ection criteria. The other t hree variabl es are as follows: si_ xtalk_ reselect_ delta_ delay_ ratio si_ xtalk_ reselect_ max_ mode_ slack si_ xtalk_ reselect_ min_mode_ slack All four variables are ignored if the variabl e si_xtalk_ reselect_ critical_path is t r ue . To determine the current value of this variable, type printvar si_xtalk_ reselect_ delta_ delay . 205 35 si_xtalk_reselect_delta_delay_ratio xtal k_reselect_delta _delay_ ratio Specifies the th reshold of the ratio of net delay change caused by crosstalk ana lys is to the total stage delay, above which PrimeTime-SI reselects a net for subsequent delay calculations . Persistent parameter that specifies the threshold delta delay as a fraction of the stage delay above which the net is reselected for window filtering , provided reseleclion is enabled with the xtalk_reselect_delta_and_slack parameter. TYPE Syntax: xta l k r ese lec t _ del t a _ de l ay_ rat i o d e l ta T float where d el taT is the fraction of stage delay above which the net is reselected. DEFAULT The default value is 0.950. 0 . 95 DESCRIPTION This va r iable specifies a reselection threshold in terms of the delta delay ratio . Nets that have at least one net arc with a crosstalk-annotated del ta delay , where the ratio of the annotated delta to the stage delay is above this threshold, are selected for the next iteration of PrimeTime - SI delay calculations. If a net has multiple stage delays (because o f a net fanout greater than one or multiple cell arcs ) , PrimeTime-SI considers the stage delta de lay and stage delay that resul t in higher delta to stage delay ratio , thus making reselection conservat i v e. This variable is o ne of a s et of four variables t hat determine net rese lection criteria . The other three variables are as follows : si_ xtalk_ reselect_delta_delay si_xtalk_reselect_max_mode slack si_ xtalk_ reselect_min_mode_ slack All fo u r variables are ignor e d if the variable si_ xtalk_ reselect_ critical_path is true . To determine the current value of this variable, si_ xtalk_ reselect_ delta_ delay_ ratio . type printvar 206 36 si_xtalk_reselect_max_mode_slack xtalk_reselect_max_mode_slack Specifies the max mode pin slack threshold, below which PrimeTime - SI reselects a net for subsequent delay calculations . Persistent parameter that specifies the threshold delta delay as a fraction of the stage delay above which the net is reselected for window filtering , provided reselection is enabled with the xta lk_reselect_de lta_and_slack parameter. TYPE Syntax: float xta lk_rese l ect_max_mode_s l ack setupSl ack DEFAULT where se t upS lack is the threshold slack below which a net is reselected . 0 Th e default value is 0.000. DESCRIPTION This variabl e specifies the pin s l ack t h reshold in the max mode. Nets that have at leas t one pin with a max mode slack below this threshol d are selected for the next iteration o f PrimeTime-SI delay cal cul ations. Max-mode pin sl a ck is the slack of t he worst max- mode (setup) path through the pin. This variable is one of a set of four variabl es that de t ermi ne ne t reselection criteria. The other three variables are as follows: si_xtalk_reselect_delta_delay si_xtalk_reselect_delta_delay_ratio si_xtalk_ reselect_ min_ mode_ slack All four variables are ignored if the variabl e si_xtalk_ reselect_ critical_path is true. To determine the current value of this variable, si_ xtalk_ reselect_max_ mode_ slack . type printvar 207 37 si_xtalk_reselect_min_mode_slack xtalk_reselect_min_mode_slack Specifies t he mi n mod e pi n s l ack t h reshold , below which Pr imeTime - S I reselects a net for s u bsequent delay calculat ion s . Persistent parameter that specifies the threshold delta delay as a fraction otthe stage delay above which the net is reselected for window fiHering, provided reselection is enabled with the xtalk_reselect_delta_and_slack parameter. TYPE Syntax: float xtal k reselect min mode s lack h o l dS lack DEFAULT where holdsl ack is the threshold slack below which a net is reselected. 0 The default value is 0.000_ DESCRIPTION This var i a ble specifies the pin slack thres h old i n the min mode. Nets that have at l east one pin with a min mode slack be l ow thi s threshold are selected for the next iteration of PrimeTime-SI delay calculat ions. Min - mode pin slack is t he slack of the worst mi n -mo d e (ho l d) pa t h through the pin. This var i ab le is one of a set of four variabl es t ha t de t ermine net reselection criteria . The other t hree variables are as f ollows: si_ xtalk_ reaelect_ delta_ delay si_ xtalk_ reaelect_ delta_ delay_ ratio si_ xtalk_ reselect_max_ mode_ slack All four variables are ignored if the variable si_ xtalk_ reselect _ critical_path is true. To determine the current value of this variable, type printvar si_ xtalk_ reselect_ min_ mode_ slack. 208 38 timing_aocvm_analysis_mode timing_aocvm_a nalysis_mode Configure a n AOCVM analysis. Persistent parameter that controls how the guard band derating factors specified with the -late or -early arguments should be combined with the distance- and logic-depth-dependent derating factor you defined with the read_aocvm Tel command. TYPE string These methods will be illustrated with the following example, based in the following assumptions: • GROUP timing_variables • A proper on-chip-variation file was read in with the read_aocvm Tel command . • DEFAULT The guardband derating was specified as follows: set_timing_derate - aocvm_ guardband -l ate 1 . 1 - early 0 . 9 For a particular delay, using this on-chip-variation file, the aocv late delay derating factor is 1.2. and the early delay derating factor is 0.8. The following three methods are provided to combine the guard band factors with the aocv factors : • corrolafed_components- ln this method, the marginal derating factor is the sum of the marginal guardband derating factor and the marginal aocv derating factor. DESCRIPTION \vhen this va riable is set to "", the defau lt AOCVM analysis is perfo r med . The default analysis is defi ned as follows . Late derating" 1 + (1.1-1) + (1.2-1)"' 1.3 Early derating= 1 + (0.9-1) + (0.8-1) = 0.7 • convofuted_components-ln this method, the total derating factor is the product of the guard band derating factor and the aocv derating factor. Depth is used to index the ra ndom component of variation in an AOCVM derate table. Depth is defined as the number of cell (or net) delay timing arcs i n a path f r om t h e path common poin t . Sepa ra te depth va lues a r e calculated for cell s a nd nets. Separ ate depth val ues are calculated for l aunch and capture paths . Both clock and da t a networks obje c ts are i nc l uded in the dep t h computation . Random coefficients aff ec t the depth computation ; for more i nformation see the set_ aocvm_coefficient manpage . Distance is used to index the systematic component of varia t ion in an AOCVM derate table . Distance is defined as the length of the d i agonal of the bounding box enclosing the cell (or net) delay timing arcs in a pa th from the path common point . Separate boundi ng boxes a nd d i stance values are calculated for ce l ls a nd ne t s. Both clock and data ne tworks ob jec ts are included in the bound ing box. The cell a t t he path endpoint is i ncluded in the cell bounding box . Only nod.es and terminals of the network along the ne t arc are i ncluded i n the net boundi ng box . Late derating = 1 .1 • 1.2 = 1.32 Early derating= 0.8 • 0.9 = 0.72 • normal-In this method, the marginal derating factor is the root-mean-square of the marginal gua rdband derating factor and the marginal aocv derating factor. Late derating" 1 + sqrt((1.1-1)**2 + (1 .2-1)**2) = 1.22 Early derating= 1 + sqrt((0 .9-1)*"2 + (0.8-1) ..2) = 0.78 Syntax: timing_aocvm_anal y sis_mode \ correlated_components I con volu t ed components I n orma l where the values have the following meaning : The timing_aocvm_analysis_mode variable is used to configure an AOCVM analysis . Choose f rom the following analys i s modes, which can all be combined exc ep t for the modes combined_launch_capture_depth and separate_data_and_clock_metrics (only one of the 2 modes can be specified due to their inherently contradictory flows) : clock_network_only combineQ_launch_capture_depth co r rela ted _ comp one nts Add the marginal guardband derating factor to the marginal aocv derating factor to determine the total marginal derating factor. convoluted_ comp onents Multiply the guardband with the aocv derating factor. no rmal Use the root-mean-square of the marginal derating factors to detenmine the total marginal derating factor. separate_data_anQLclock_metrics single_path_metrics The default va lue is normal. To configure a n AOCVM a nalysis, specify the analysis rnode(s) requi r ed i n the 209 39 timing_ aocvm_ analyais_mode variable. For example : pt_shell> set timing_ aocvm_ analysis_ mode "clock_ network_ only" To determine the current value of this variable, enter the following command : pt_shell> printvar timing_ aocvm_ analysis_mode The effect that of each of the AOCVM analysis modes has on the defaul t analysis is described below in detail : clock_network_only When this option is not specified (default) , AOCVM derati ng is applied throughout the design and constant (OCV) derating is ignored. When this option is specified, AOCVM derating is applied to arc delays in the clock network only. Clock networ k AOCVM depth and distance metrics are calculated based on clock network topology only. The data network receives constant (OCV ) derating, i f constan t derates have been annotated for data network objects; otherwise they are not derated. In the clock_network_only delay timing arcs in the data network are excluded from depth and distance calculations . The cel l at the path endpoint is st ill i ncluded in the cell bounding box. combined_launch_capture_depth In this mode , l aunch and capture depths are not calculated separately . The launch and capture paths are considered together and a combined depth i s calculated for the entire path. This option cannot be specified together with the separate_data_and_clock_metrics mode . separate_data_and_clock_metrics In this mode, separate depths are computed for the clock and data paths and the appropriate AOCV derates based on the separate depths are used for derating delays . This option cannot be specified together with the combined_launch_capture_depth mode . single_path_metrics I n this mode, a single set of path metrics is calculated for both cell and net objects . Separate path metrics are not calculated for cells and nets in a path. This behaviour i s backwardly compatible with the legacy Tel-based "LOCV" solution. Distance is measured by computing the diagonal of a bounding box around all of the cells in a path. Ports in the path and the common point are also included. This distance is used to lookup the systematic component of variation for both cells and nets. Depth is measured considering only the cells in a path . This depth is used to lookup the random component of variation for both cel ls and net s. 210 40 timing_aocvm_enable_analysis timing_aocvm_enable_analysis Enable PrimeTime's graph-based AOCVM analysis . Persistent parameter that controls whether to enable advanced on-chip variation analysis. This advanced analysis uses knowledge about geographical distance and logic depth to better calculate the impact of systematic and random variations within one chip. TYPE Boolean DEFAULT Use the read_aocvm Tel command to specify the two-dimensional distance- and logic-depth-dependent derating models. Use the set_timing_derate -aocvm_guardband Tel command to specify an additional guardband derating factor to use for either early or late paths. false GROUP timi ng_variables DESCRIPTION When false (default) the graph-based AOCVM timing update is not performed . A pathbased aocvm analysis can be performed in this mode using the -pba_mode option on the report_ timing and get_ timing_paths commands . In this mode constant timing derates specified u sing the set_ timing_ derate command are required to pessimistically bound the analysis. You should specify constant derates that do not clip the range of the path-based AOCVM derates to avoid optimism. When true the graph-based aocvm timing update is performed as part of the update_ timing command . A path-based aocvm analysis can also be performed in this mode . In this mode constant timing derates are no t required and, in fact, constant derates for static delays are ignored. Graph- based AOCVM derates computed during update_ timing tightly bound the path - based AOCVM derates withou t clipping their range . Note that setting this variable to true will automatically switch the design into on_chip_variation analysis mode using the set_ operating_conditions command. Use the timing_aocvm_ana/ysis_mode Tel variable to control how to combine these early and late guardbands with the advanced OCV derating factor. • If this variable is not set, then these derating factors are considered independent, and the total effect of these derating factors is the square root of the sum of the squares of the effects of derating . • lfthe variable is set with the value correlated_ components, then the derating factors are considered fully correlated and the total effect of deration is the sum of the effects of each derating factor. Use the report_ timing Tel command with the -aocvm argument to see the resulting derating factors that were applied to net and cell delay models in the reported liming paths. Syntax: tlmlng_aocvm_enable analysls true I false where the values have the following meaning : true Enable advanced on-chip variation analysis . fal s e Disable advanced on-chip variation analysis. The default value is false. 211 41 timing_clock_reconvergence_pessimism timing _clock_reconvergence_pessimism Select signal transition sense matching for computing clock reconvergence pessimism removal . There are two cases : Persistent parameter that controls when clock reconvergence pessimism removal (CRPR) is applied. • Both launch and capture clocks are active on the same transition of the clock at the end of the common path. • The launch and capture clocks are active on different transitions of the clock at the end of the common path . TYPE string DEFAULT Use this parameter to control whether pessimism is removed for both cases, or if it is only removed in case both clocks are triggered from the same clock transition in the common path normal This parameter only applies when CRPR is enabled , that is, when the fa paramete r fiming_remove_clock_reconvergence_pessimism is set. DESCRIPTION The calculated pessimism is the difference between the maximum and minimum delay on the clock path that is common between the launching and the capturing clock. Determines how the value of the c l ock reconvergen ce pessimism removal (crpr) is computed with r espect to transition sense. Allowed values are normal (the default) and same_transition . When set to nor ma l , the crpr value is computed even if the clock t ra n si t ions to the source and destination la t ches are in different d irect i ons on the common clock path . It is computed separately for rise and fal l transitions and the value with smal l e r absol u te va l ue is used. When set to same_transition, the crp r v a l u e i s computed o n ly when the clock transition to the source and d estination latches have a common path and the tran sit i on is i n the same di rect i on on e ach pin of the common path. Thus if the source a n d destination latches are trigg ered by differen t edge t ypes , crpr has a va l ue of zero . You can further scale down the applied pessimism for these two cases as follows: • Set the fa parameter.timing_crpr_same_trans_scaling_factor, to a number between 0 and 1to reduce the CRPR, when the launch and capture clocks are triggered from the same common clock trans~ion . • Set the Ia parameter, timing_crpr_scaling_factor, to a number between 0 and 1 to reduce the CRPR when the launch and capture clocks are triggered from different common clock transitions. Syntax: timi ng_ clock_ reconverge nce_pessimisrn normal I same_ transitio n where the values have the following meaning : Apply common-reconvergence pessimism (CRPR). Pessimism will be removed for both of the following cases: no rmal To d e t ermine the curr ent value of t h i s vari able, t ype printvar timing_ clock_reconvergence_pessimism or echo $timing_ clock_ reconvergence_pessimdsm . 1. Both launch and capture clocks are active on the same tran sition of the clock at the end of the common path. 2. The launch and capture clo cks are active on different transitions of the clock at the end of the common path. You can scale down the applied pessimism as follows: • Set the fa parameter, t iming_crpr_same_trans_scaling_factor. to a number between 0 and 1 to reduce the CRPR, for the case the launch and capture clocks are triggered from the clock trans~ion . • Set theta parameter, timing_crpr_scaling_factor, to a number between 0 and t to reduce the CRPR. in case the launch and capture clock edges are in a different phase. s ame transl ti on Only apply common-reconvergence pessimism (CRPR) when both launch and capture clocks are active on the same transition of the clock at the end of the common palh. This pessimism is the difference between the maximum and minimum delay on the dock path that is common between the launching and the capturing clock. Set the fa parameter. timing_crpr_same_trans_scaling_factor. to a number between 0 and 1 to scale the CRPR, for the case the launch and capture clocks are triggered from the clock transition. The defau~ value is normal. 212 42 timing_crpr_remove_clock_to_ data_ crp timing_crpr_remove_clock_to_data_crp Al lows the removal of Clock Reconvergence Pessimism (CRP) from paths that fan out directly from clock source to the data pin s of sequential devices . Persistent parameter that controls whether to remove Clock-to-data Reconvergence Pessimism (CRP) during timing analysis. TYPE By default, arrival time uncertainty of the clock signal and data signal are handled independent of each other. This approach may be overly pessimistic for cases where the clock path and data path share some logic. To reduce that pessimism, and to obtain a more accurate analysis, you may want to enable this parameter. boolean DEFAULT Syntax: FALSE t i rning_ c r p r_r emove_ clock_to _ data_ crp true I fa l se DESCRIPTION When this variable is set to true then CRP will be removed for all paths that fan out directly from clock source pins to the data pins of sequential devices. It should be noted that when this var i able is set to true all sequential devices that reside in the fanout of clock source pins must be handled seperately in the s ubsequen t timing update . This may cause a severe performance degradation t o the timing update . pt_ shel l echo $timing_ crpr_remove_ clock_to_data_ crp or pt_ shel l printvar timing_crpr_remove_clock_to_data_crp where the values have the following meaning: t r ue Remove clock-to-data CRP. This setting causes Aprisa to consume a lot more memory, and to run for a much longer time. f alse Do not remove clock-to-data CRP. This is much more efficient, but may be overly pessimistic. The default value is false . 213 43 timing_crpr_ threshold_ps timing_crpr_threshold_ps Specifies amount of pessimism that clock reconve rgence pessimism removal (CRPR) allowed to leave in the report . is Persistent parameter that specifies the amount of pessimism that Clock Reconvergence Pessimism Removal (CRPR) is allowed to leave in the report . So, this parameter effectively controls how much effort CRPR should spend on a reconvergent path. TYPE Syntax: float tirning_ c rpr_threshol d _ ps thre sh ol d DEFAULT 20 where threshold is a real number greater than 1.0, defining the maximum amount of pessimism that can be left in a reconvergent path after CRPR. The default value is 20.000. DESCRIPTION Specif i es amount of pessimism t hat clock reconvergence pessimism removal (CRPR) is a llowed to leave in the report. The unit is in picoseconds (ps), regardless of the units of t he main library. The threshold is per reported slack : setting the this variable to the TH1 value means that reported slack is no worse t han S- THl, where Sis the reported slack when timing_ crpr_ threshold_ps is set close to zero (the minimum allowed value is 1 p i cosecond) . The variable has no effect if CRPR is not active (timing_ remove_ clock_ reconvergence_pessimism is false) . The larger the value of timing_ crpr_ threshold_ps , the faster the runtime when CRPR is active . The recommended setting is about one half o f the stage (gate plus net) delay of a typ i ca l stage in the clock network. It provides a reasonable trade-of f between acc u racy and runtime in most cases. You may want to use different set tings throughout the design cycle : l arger during the des ign phase, smaller for sign-off . You mi ght have to experiment and set a d i fferent value when moving to a diffe ren t technology . To determine the current value of this variable, type printvar timing_ crpr_ threshold_ps . 214 44 timing_disable_bus_contention_check timing_disable_bus_contention_check Disab l e checking for timing violat ions resu l ting from tran sien t contention on design b u sse s . Persistent parameter that controls whether the timing analyzer should perform bus contention checks. Syntax: TYPE timi ng_d isab l e bus content ion c h e c k t r ue I f a l se Bool e an where the values have the following meaning : DEFAULT tr u e Do not perform bus contention checks. false f al se Perform bus contention checks. DESCRIPTION The default value is false. Appl i es only to bus designs that h ave mul t i ple th r ee-state drivers . When true, PrimeTime i g nores timing setup a n d hold (max a n d min) violation s tha t occur as a result of transient b us contention. When false (the de f au l t), Pr i me Time repo rt s these timing vio l ations . Bu s contention occurs when more t h an one driver is enabl ed a t the same time. By defau lt , PrimeTime t reats the bus as if it is in an unknown state during this region of conten tion, and reports a timin g violation if the setup and hold regions e x tend i n to the con ten tion region. Note that checki n g is done only for timing violation s, and n ot for logical and excessive power dissipation violations, which are o u tside the scope of stat i c timi ng a n alys i s tool s. S e t this var i able to t r ue onl y if y ou a re c e rtain t ha t transient b u s con t en t ion regions will never o ccur. By setting the val u e to t rue, you guarantee that on a mult i - d r i v e n th ree - s t a t e bus, t h e dr i ver s i n the previou s clock cycle a r e disabled be f o r e the d r ivers i n t he c ur rent clock cycle are e n abled . If yo u se t t h i s var iabl e to true, you must e n sure that the variabl e timing_ disable_ bus_ contention_ check is false . The variab le s timing_ disable_ bus_ c ontention_ check and timing_ disable_ floating_ bus_ check cannot b oth be true a t the same t ime. Du ring the switching between the h igh- impedance (Z) state a n d the high/low s t ate, the t i ming behav i or (for e x a mp l e, i ntr i nsic delay) o f t hree - s t ate b u ffe r s i s captured in the Synopsys library using the timi ng arc types t hree_sta t e_disable and three_ state_ enable . These timing arcs c o nn ect the e n able pin to the output p i n of the th r ee-state buffers . For detai l s, s e e the Library Comp iler Reference Manual. To determine the current value of this var i able, type printvar timing_disable_bus _contention_checks or echo $timing_disable_bus_contention_checks. 215 45 timing_disable_clock_gating_checks timing_disable_clock_gating _checks Disable checking for setup and hold clock gating violations. Persistent parameter that controls whether to perform clock-gating setup and hold checks . TYPE Syntax: timing_disable_clock_gating c he c k s true I f alse Boolean where the values have the following meaning : DEFAULT t rue Do not perform clock gating setup and hold checks . f alse fa l se Perform clock gating setup and hold checks. DESCRIPTION When true, disables clock - gating setup and hold checks. W hen false (the defa u lt), PrimeTime automatical l y determines clock-gating and performs clock - gating setup and hold chec k s. The default value is false . To determine the curr ent value o f this variabl e, t ype printvar timing_ disable_ clock_ gating_ checks or echo $timing_ disable _clock_ gating_ checks. 216 46 timing_disable_cond_default_arcs timing_disable_cond_default_arcs Disa bl e the d e faul t, n on-condition al t iming arc between pins t hat do have conditional arcs. Persistent parameter that controls whether the default condition of any conditional timing arc should be ignored. TYPE Syntax: t i ming _ disable_cond_de fault_ar c s t r u e Boolean I fa lse where the values have the following meaning : DEFAULT t rue Do not examine the default condition of conditional timing arcs. fal se false Do consider the default condition as any other condition of conditional timing arcs. DESCRIPTION When true, disab l es n o ncondi tional t i min g arcs between any pair of pins that have at least one conditional arc . When false ( the d efault), t hese n oncondi t ional timi ng arcs are not disabled . This variable is primarily intended to deal with the s itu ation between two pins that have con ditio n a l arcs, wh ere t here is always a default timi ng arc with no condition. The default value is false . Set this variable to true when the specified conditions cover all possible statedependent delays , so that the default arc is use l ess. For e x ample , consider a 2inpu t XOR gate with inputs as A a n d 8 and with output as Z. IE the delays between A and Z are specified with 2 arcs with respective c ond i tions '8' and '8- ", t h e default arc between A and Z is useless and shou ld be disabled . To determine the current value oE th i s variable, type printvar timing_disa~le_cond_default_ arcs or echo $t iming_disa~ l e_c ond_default _arcs . 217 47 timing_disable_floating_bus_check timing_disable_floating_bus_check Disable che cking for timing violations resulting from transient floati ng design buses. Persistent parameter that controls whether to check for floating busses. Syntax: TYPE Boolean DEFAULT timing_disable_floating_bus check true I false where the values have the following meaning: true Do not check for floating busses. fa l se Check for floating busses. false DESCRIPTION The default value is false. Applies only to bus designs that have multiple three-state drivers. When true, PrimeTime ignores timing setup and hold (max and min) violations that occur as a result of transient floating buses. When false ( the default), PrimeTime reports these timing vio l ations. Floating bus condition occurs when no driver controls the bus at a given time . By default, PrimeTime treats the bus as if it is i n an unkno'm state during this region of contention , and reports a timing violation if the se t up and ho l d regions extend i nto the floating region. Note tha t checking is done only for timing violations, and not for logi cal violations, which are outside the scope o f static timi ng analysis tools. Set this va l ue to true only if you are certain that transient floating bus regions will never occur . By setting the value to true, you guarantee that on a multi - driven three- state bus, the drivers in the previou s clock cycle are disabled before the new drivers i n the current c l ock cycle are enabled. If you set this variable to true, you must ensure that the variable timing_ disable_ bus_ contention_ check is false . The variables timing_ disable_ floating_ bus_ check and timing_ disable_ bus_ contention_ check cannot both be true at the same time. Du ring the switching between the high-impedance (Z) sta t e and the high/low state, the timing behavior (for example, intrinsic delay) of three - state buffers is captured in the Synopsys library using the timing arc types three_state_disable and three_state_enable. These timing arcs connect the enable p i n t o the output pin of the three - state buffers. For details, see the Library Compiler Reference Manual. To determine the current value of this variable, type printvar timing_disable_floating_bus_check or echo $timing_disable_floating_bus_check. 218 48 timing_disable_internal_inout_cell_paths timing_disable_internal_inout_cell_paths Enabl e bidirectiona l fe edback paths within a cell. Persistent parameter that controls whether to analyze feedback paths inside a cell through a bidirectional pin of that cell. TYPE Syntax: Boolean t imi ng_ disab l e_intern a l _i nou t_cell_p aths t r ue I f alse DEFAULT where the values have the following meaning : true t rue Do not analyze timing paths inside a cell through a bidirectional pin of that cell. fa l se Also analyze timing paths inside a cell through a bidirectional pin of that ceiL DESCRIPTION When true {the default), PrimeTime automatically disables bidirectional feedback paths in a cell. When false , b i d i rectional feedback path s i n cells are enabled . This variable has no effect on timing of b i directional feedback paths that involve more than one cell {tha t is, i f nets are involved); these f eedback paths are controlled by the variabl e timing_ disable_ int ernal_ inout_ net_ arc s. The default value is true. To determine the current val u e of this var i able, type printvar timing_ disable_ internal_ inout_ cell_paths or echo $timing_ disable_ internal_ inout_ cell_patha. 219 49 timing_disable_internal_inout_net_arcs ti ming_disable_interna l_inout_net_arcs Controls whether bidirectiona l feedback paths across nets are disabled or not. Persistent parameter that controls whether to analyze feedback paths through a bidirectional pin . TYPE Syntax: Boolean timi ng disable internal inout net arcs t r ue I f alse where the values have the fo llowing meaning : DEFAULT true DESCRIPTION When true (the default), PrimeTime automat i cally disables bidirec t ional feedback paths that i nvo l ve more than on e ce ll ; no path segmentation is required . When false , true Ignore feedback paths through bidirectional pins. f a l se Analyze feedback paths through bidirectional pins. The default value is false . these b idirectional feedback paths are enabled. This variable has no effect on timing of bi directiona l feedback paths that are completely conta ined in one cell (tha t is, if nets are not involved)i these feedback pa t hs are controlled by the variable timing_ disable_ int ernal_ inout _ cell_paths . To determi ne the curren t value o f this variable, type printvar timing_ disabl e_ internal_ inout_ net_ arcs or echo $t~ing_disable_ internal _ inout_net _arcs . 220 50 timing_disable_recovery_removal_checks timing_disable_recovery_removal_checks Di sab l e or enable the t i mi ng analysis o f r ecover y and r emoval checks i n the design. TYPE Persistent parameter that controls whether to perform recovery and removal timing checks. Recovery and removal checks are similar to setup and hold checks, but are intended for asynchronous signals. such as set and reset signals. Boolean Syntax: timin g_di sab le_re cov e ry_remov al_che ck s t r ue I fa l s e DEFAULT where the values have the following meaning: false tru e Do not perform recovery and removal checks. false Perform recovery and removal checks. DESCRIPTION When true, disables recovery and removal timing analysis. When false (the default ) , PrimeTime performs recovery and r emova l checks; for descriptions of these checks, see the man page for the report_ constraint command . The default value is false. To determi ne the current va l ue o f th is var i abl e , type printvar timing_ disable_ recovery_ removal_ checks or echo $timing_disable_recovery_removal_checks . 221 51 timing_early_launch_at_borrowing_latches Removes clock latency pessimism from the launch times for paths which begin a t the data pin s of transparent latches . ti ming_early_launch__a(~_ 6 orrowi ng ___latches _ Persistent parameter that controls the clock latency to use for latches io paths requiring time borrowing . TYPE Syntax: Boolean t imi n g_e a r ly_l au n ch _at _ bo ~r owi ng_l atch e s DEFAULT t rue I fal s e where the values have the following meaning : true true Use the early clock latency for the latch cell . fa l s e Use the late clock latency for the latch cell . DESCRIPTION I n the foll owing descri ption we assume that t he data paths of interest are setup paths since we refer specifical ly to time borrowing scenarios . However, i f timing_ allow_ short_path_ borrowing is enabled then the same d i scussion applies to borrowing hold paths too . The default value is true . When a latch i s i n it s tra n sparen t phase , da ta arriving at the 0-pin passes through the elemen t as though i t were combinational . To model this scenario, whenever PrimeTime determines that time borrowing occurs at such a 0-pin, paths which originate at the 0 -pin are created . Sometimes there i s a difference between the launching and cap t ur i ng latch latenc i es, due ei t her to reconvergent paths in the clock network or different min and max delays of cells in the clock network . For setup paths, Pr i meTime uses the late value to launch and the early value to capture. This achieves the tightest constraint and avoids optimism. However, for paths starting from l atch 0-pins this is pessimistic since data simply passes t hrough and thus does not even "see " the clock edge at the latch. When this tim i ng variable is se t to true (the default), such pessimism is e liminate d by us ing the early l atch l a t ency to l aunch s u ch paths . Note that onl y paths which originate from a latch 0-pin are affected . When t he variab l e is se t to false, late clock latency is used to launch a l l setup paths in the design . It i s recommended that the user avai l of this form of p essimism removal si n ce it does not cause the run-time of the analysi s to increase . However, it is also advised that the user disable it when c l ock reconvergence pessimism removal (CRPR) is enabled (i.e. when timing_ remove_ clock_ reconvergence_pessimism is true). CRPR may no t be applied to paths which have been launched using an ear ly latency or t h e resu lts may be optimistic . Since CRPR is a more sophisticated and accurate means of pess i mism r emoval, the use r shou ld disable timing_ early_ launch_ at_ borrowing_ latches when CRPR is enabled so tha t CRPR applies to all path s in the design. In this mode, note tha t the 0 - pin launc h time is not modif i ed by the open edge CRP - s i nce late launch laten cy is used at the path startpoint, to additional l y a d d CRP would be pessimistic, representi ng a "doub l e-counting " of early- l ate differences. To de t ermine the current value of thi s variable, type printvar timing_ early_ launch_ at_ borrowing_ latches or echo $timing_ early_ launch_ at_ borrowing_ latches . 222 52 timing_enable_preset_clear_arcs Controls whethe r PrimeTime enables or disables preset and clear arcs . ti ming_enable_preset_clear_arcs Persistent parameter that controls whether to analyze preset and clear timing constraints. TYPE Syntax: Boolean t i mi n g_ enab l e_ p r eset_c l ea r _ arcs tru e I f a l se DEFAULT where the values have the following meaning: false t rue DESCRIPTION When true, permanently enables asynchronous preset and clear timing arcs , so that you u se t hem to analyze timing paths. When false (the default), PrirneT ime disables a ll preset and clear t iming arcs . Take into account preset and clear timing constraints. fal se Ignore preset and clear timing constraints. The default value is false . Note that if there are a n y mini mum pu ls e width checks defined on asynchronous preset and clear pins they are performed regardless of the val ue of this variable. Also no t e the the -true and the -justify options of report_timing cannot be us ed unless this variable is at its default va l ue . To determine t he current value of this var iable, type printvar t iming_ enable_preset_ clear_ arcs . 223 53 ti ming_i n put_port_ d efau It_ clock Determines whether a defaul t clock is assumed at input ports for which the user has not defined a clock with set_ input_ delay. ti mi ng_i n put_port_ defau It_ clock Persistent parameter that controls whether to assign a default clock to an input port if no input delay is specified on that port. TYPE Syntax: Boolean timing_ input port defaul t clock true I false DEFAULT true DESCRIPTION This Boo lean variable affects t he behavior of PrirneTime when t he user sets an input delay without a clock on an input port. When true (the default va l ue), the input delay on th e port is set wi th respect to one imaginary clock so that the inputs are constrained. Thi s a l so causes the clocks along the pa ths driven by these input ports to become r elated. When false, no such imaginary clock is assumed. where the values have the following meaning: true Assign a default clock if no input delay is specified . false Do 11ot assign a default clock if no input delay is specified. The default value is false. To determine the current va l ue of this variable , type printvar timing_ input_port_ default_ clock . 224 54 timing_propagate_interclock_uncertainty timing_propagate_interclock_uncertainty Enabl es or disabl es the propagation of inte rclock uncertainty through transparent l a t ches i n PrimeTime. Persistent parameter that controls how Aprisa's timing analyzer handles clock uncertainty when the circuit contains transparent latches. TYPE Boolean DEFAULT false DESCRIPTION When false ( t he defau l t), the in terclock uncerta i nty is ca l culated for each l atchto-latch path independently, from the cloc k at the launch latch to the clock at the capture l atch, even when latches operate in transparent mode. When true, c lock uncer ta inty information is propagated through each latch oper a ting i n t rans p arent mode, as though it were a c ombinational e l ement . This allows an entire sequence of l atch-to-latch stages to be considered a single path for int erclock un c e r tainty ca l culation, p rovi d ed tha t time borrowing occurs at the endpoint of each intermedia t e stage. Operating with this variable set to true ca n lead to more accurate results for designs containing transpa r ent latches, at the cost of some CPU time and memory resources. To illustrate, consider a pipeline containing latches A, B, and C, c locked by clocks l , 2, and 3, respectively. PrimeTime treats the paths between A and B and between B a nd C as distinct. I n reality, however, if latch B is in transparent mode, data passes through i t as though it were a combinational e l ement . Rega rdless of whether interclock uncer ta i n ty h as been applied between clocks l and 3, the default behavi o r is to app l y the uncer tainty between clocks 2 a n d 3 when cal cula t i n g slack a t latch C. It is more a ccurate , however , to apply the u ncertai nty b etwe e n the c l ock a t the pa t h s ta r tpo i nt (clock 1 , l atch A) and the c l ock at the path endpoint (clock 3, la tch C), i f defined. By default, when this variable is false , inter-clock uncertainty is calculated for each latch-to-latch path independently. For example, assume a pipeline of three latches, A, B, and C, clocked wrth clocks 1, 2, and 3, respectively. Even if latch B is in transparent mode, the timing analyzer treats the path from A to Band the path from Bto Cas independent paths, each with its own clock uncertainty. \1\ihen the variable is set true, the timing analyzer treats the extended path from A through Bto Cas a single path , and calculates clock uncertainty based on clocks 1and 3. This approach is more accurate, but requires more run time and increases the memory foot print Syntax: timi ng_propagate_interclock_unce rtainty true I fa l se where the values have the following meaning : true Handle transparent latches when calculating clock uncertainty. false Do simple and fast clock uncertainty propagation that ignores latches in transparent mode. The default value is false. With timing_propagate_ interclock_ uncertainty set to true, the correct interclock u n certainty is appl ied, as though the path f rom latch A to la t ch C through the transparent l atch B were a single, ex t ended path . That is, t he uncertainty i s propagated through the transparent latch . To fin d out the startpoint of this ex t e n ded path, u se report_ timing -trace_latch_borrow . To determine the current value of thi s variable, t ype printvar timing_propagate_ interclock_ uncertainty or echo $timing_propagate_interclock_u n certainty . 225 55 timing_remove_clock_reconvergence_pessimism timing _remove_clock_reconvergence_pessimism _ Enables or disables clock reconve rgence pessimism remova l Persistent parameter that controls whether the timing analyzer will remove clock reconvergence pessimism. This pessimism arises in the default timing analysis when, in presence of on-chip-variation (OCV) and reconvergent clocks, overly conservative clock skew is calculated because one clock path uses minimum delay and another path uses maximum delay for the same cell. TYPE Boolean This pessimism can be removed but at a significant runtime penalty. DEFAULT Use theta parametertiming_clock_reconvergence_pessimism to select whether to apply the removal when both launching clock and capturing clock are in the same clock phase, that is, triggered by the same clock transition at the end of the common clock path, or when to apply the removal even if the launching and capturing clocks are driven from different clock transitions. false DESCRIPTION When this variable is set to true, PrimeTirne removes clock reconvergence pessimism from slack calcu lation and minimum pulse width checks. This variable replaces the following discontinued options : -report_ clock_ reconvergence_pessimism -remove_ c1ock_ reconvergence_pessimism The calculated pessimism is the difference between the maximum and minimum delay of the clock path that is common between the launching clock and the capturing clock .. Use the theta parameter, timing_crpr_same_trans_scaling_factor, to scale that pessimism when the launch and capture clocks are triggered from the same clock trans~ion. Use the theta parameter, timing_crpr_scaling_factor, to scale that pessimism when the launch and capture clocks are triggered from different clock transitions. Syntax: of the report _timing ~ report _ constraint , and get _ timing_p aths commands . timlng remove clock_reconvergence_pesslmlsm true I false C l ock reconvergence pessimism ( CRP) is a difference i n delay along the common part of the launching and capturing clock paths . T he most common causes of CRP are reconvergent paths in the clock network, and different min and ma x delay of cells in the clock network. CRP is independently calculated for rise and fal l clock paths . You can use the variable t~ing_c1ock_reconvergence_pessimism to contro l CRP calcu lat ion with res pect t o transition sen se. I n the case of the capturin g device being a levelsensi t ive latch two CRP values wil l be cacula ted: • crp_ open , which is the CRP correspon ding to t he openin g edge of the latch • crp_close , which is the CRP corres ponding to the closing edge of the latch The required time at the latch wi l l be increased by the val u e of crp_ open and hence reduce the amount of borrowing (if any) at the latch . Meanwhile, the maximum time borrow a l lowed at the latch is affected by shifting t h e closing edge by crp_close . For more details , see the PrimeTime User Guide : Fundamentals. For a more detailed descrip t ion of a CRP calulation, where the values have the following meaning: true Remove clock reconvergence pessimism. false Do not remove clock reconvergence pessimism. The default value is false . use the report_ crpr command. CRP is calculated differently for minimum pulse-width checks. It i s given as the min i mum of (maximum rise arrival time - minimum rise arriva l time) a n d (maximum fall arrival time ~ minimum fall arrival time ) at the pin where the check is being made . If the variable si_enab1e analysis is set t o true delays i n the clock network may a l so inc l ude delta delays result ing from crossta l k interaction. Such delays are dynamic in nature, that i s, they may vary from o n e clock c y cle to the n ext, causin g d i fferent de l ay variations (either speed - up or s l ow- down) on the same network, but dur ing d if ferent clock cycles . Starting with U-2003 _03 releas e PrimeT ime o n ly con side rs SI delta delays as par t of the CRP ca l cu lation if the type of timing check deployed de rives its da ta from t he same clock cycle. In transparent- la tch b ased designs , i t is recommended t h at the variable should be set to false when CRP removal (CRPR) is enabled_ I n t hi s case, CRPR will apply even to pa t hs whose startpoints are bo rr owing , leading to better pessimism reduction overall. timing_ ear~y- ~aunch_at _borrowing_ ~atches Any effective change in the value of the timing_remove _c~ock_reconvergence_pessimism variable causes ful l u pda te_ t i ming . You cannot p er f orm one repor t _ timing ope r at ion that considers CRP and one that does not without full update_timing in between. 226 For bac kwa rd compatibility, the discontinued options will app ear for the first few releases after they are obsole ted . However, if the design i s not u p to date at t he time they are executed , they wil l only set timing _remove_c l ock_reconve r gen ce_pess i mism to true If the design is up to date, then t he comma n d with t he discon tinue d option fails . Since the discontin u ed command options on ly set timing_rernove_clock_reconvergence_pessimism to true , the report_ c1ock_ reconvergence_pessimism option b ehavior is not backward compa t ible . I t causes slack to be removed pr io r t o s elect i ng the worst path In other words, i t behaves the same as the d iscon ti nu ed -remov e _ c1ock_ recon ver gance_pessimism option of the report _ timing , reyport_ constraint , and get_ timing_paths commands . As soon as possible , update your scripts t o set the timing_remove_c~ock_reconvergence_pessimism v ar iable to true instead of usi ng the disco n tinued options . L imita Lions : CRPR does not sup port pa t hs Lhat f a n ouL directly from c l ock so ur ce pins to the data pins of sequentia l devices. To enable support for such paths the variable t~ing_crpr_remove _c1ock_ to_data_crp must b e set to TRUE . CRPR does not s upport ideal clock l a tency set o n pins or ports. CRPR does not s u pport propaga ted clocks set on pin s or por ts as opposed to clock o bj ects . To turn CRP removal on : pt_ shel l set tim1ng_ remove_ c1ock_ reconvergence_pessimism TRUE TRUE pt_ shell report _ timing 227 57 si_ccs_aggressor_alignment_mode Specifies aggressor alignment mode used in the CCS - based gate - l eve l simu l ation engine . set_ param sil ccs_aggressor_alignment_mode lookahead Values : lookahead stage Usage : alignment mode for aggressors in computing delay # # TYPE string DEFAULT lookahead DESCRIPTION Specifies aggressor alignment mode used in the CCS-based gate-level simul a ti on en gine. Valid values include stage and lookahead. The default value is lookahead which enables the l ookahead a l ignment feature for the CCS- based gate-level simu l ation engine so that PrimeTime-SI wi l l find the a li gnment whi ch results to worst - case pa th delay. It is noted that such alignment may not correspond to worst case stage d elay . For complete information abou t the d ifference between worst-case sta ge a l ignmen t and worst-case path al i gnment, see the Pri meTi me -SI User Guide. To deter mine the current v alue of this v ariable, si_ ccs_ aggressor_ alignment_mode. type printvar 228 58 si_noise_nmos_threshold_ratio Specifies the technology threshold voltage for NMOS devices divided by the Vee . set_ param sil noise_ nmos_threshold_ ratio 0 . 200 Type float Usage NMOS threshold for SI noise analysis # # TYPE float DEFAULT 0.2 DESCRIPTION Specifies the technology threshol d voltage for NMOS devices divided by Vee; the default i s 0.2. This va r iable, along with si_noise_pmos_threshold_ r a tio , makes up a pa i r of variables used by PrimeTime-SI during the noi se analysis phase, to determine the steady state resistance value of the d rivers in absence of a noise library. When noise libr ary is not present for a ce l l or for a design, this activates the P rimeTirne-SI steady state resista nce es timation mode. In this mode, steady state resistance gets estimated based on the value of t he PMOS and NMOS threshold voltage val ues as wel l as other information extracted from the delay and slew t ables. 229 59 si_noise_pmos_threshold_ratio Specifies the t echnology threshold voltage for PMOS devices divided by t he Vee. set_ param sil noise_ pmos_threshold_ ratio 0 . 200 Type float Usage PMOS threshold for SI noise analysis # # TYPE float DEFAULT 0.2 DESCRIPTION Specifies the technology threshold voltage for PMOS devices divided by Vee ; the default is 0.2. Th is variable, a l ong with si_ noise_ nmos_ threshold_ ratio , makes up a pair of variables used by PrimeTime-SI during the noise analysis phase, to determine the steady state resistance value of the drivers i n absence of a noise library . When noise l ibrary is not present for a cel l or for a design , this activa t es the PrimeTime-SI s t eady state resistance estimation mode . In this mode, steady state resistance g ets estimated based on the value of the PMOS and NMOS th reshold vol t age values as well as other information extracted from the delay and s l ew tables . 230 60 si_xtalk_exit_on_coupled_reevaluated_nets_pct Specifies a maximum percentage of nets selected for reevaluation relat i ve to the total number of coupl ed nets, bel ow whi ch PrimeTime- SI exits t he ana l ysis loop. set_ param si l xtalk_exi t _on_coupled_ reevaluated_nets_pct 0.000 Type : float Usage # # TYPE floa t DEFAULT 0 DESCRIPTION Specifies a maximum percentage of nets selected for reevaluation relat i ve t o the total number of coupl ed nets . PrimeTime-SI exits the analysis loop after completing the current iteration, when the percentage of nets sel ected for reevaluation in the next iter ation is l ess than this number . The number of coupled nets is based on detailed parasitics as r ead in by read_parasitics . That is, cross t alk fil t ering does no t impact the count of coupled ne t s for t he purpose o f t his variable. The number of coupled nets counts al l i ndividual net segments in the same way that [get_nets h i erarch ical *] counts all nets i n the design. This variable is one of a set of si x variables t hat determine exi t criteria; PrirneTime-SI exits the analysis loop after completing the current iteration if one or more of t he fo l lowi ng is t rue : 1 . The number of i terations performed equa l s the value of the xtalk_max_ iteration_count var iabl e. 2 . All delta del ays fall between the va lues of t he si_xtalk_exit_on_min_delta_delay and si_xtalk_exit_on_max_delta_delay variables. 3 . The number of ne ts selec t ed for reevaluation i n the next iteration is less than the value of the si_xtal k_exit_on_number_of_reevaluated_nets variable. the analysis loop . 4 . The percentage of nets (relative to the tota l number of ne t s) selected for reeva l uation is les s than the value of the s i _xtalk_exi t _on_r eevaluated_nets_pct variable. 5 . The per centage of nets (relative to the number of cross - coupled nets ) selected f or reevalua tion is less than the value of the si_xtalk_exit_on_coupled_reevaluated_nets_pct vari able . 6 . You manually exit the analysis loop by press i ng Control - C to send an interrupt signal to the PrimeTime process . The interrupt is handled as any other exit criteria, a t the end of the curren t iteration of the crosstal k ana l ysis . You cannot interrupt i t er a t ion immediately without exi ting PrimeTime . To determine the current value of this variable, type printvar si_xtalk_exit_on_coupled_reevaluated_nets_pct . 231 61 si_xtalk_exit_on_number_of_reevaluated_nets Specifies a maximum numbe r o f ne ts sel ected for reevaluation, below which Pr i meT imeSI exits the ana l ys i s loop . set_ param sil xtalk_exit_on_number_of_ reevaluated_ nets 0 Type : uint Usage # # TYPE integer DEFAULT 0 DESCRIPTION Specifies a max imu m number of n ets selected for reevalua t ion . Pr irneTime - S I exits the analysis loop after completing the current itera tio n, when the number of n ets selected for reevaluation in the the next i teratio n is less than this number . Thi s variabl e i s one of a set of six variabl es that de term i ne ex i t cr iteria ; P rimeTime-SI exits the analysis l oop after completi n g the current iteration if one or more of t he following is true : 1 . The number of i t erat ions performed equals the value of the xtalk_ max_ iteration_ count va riab l e . 2. All d elta delays fall b e t ween the values of the si_ xtalk_ exit_ on_ min_ delta_ delay and si_ xtalk_ exit_ on_ max_ delta_ delay variables . 3 . The number of nets selected for reevaluation in the next iteration is l ess than the val u e of the si_ xtalk_ exit_ on_ number_ of_ reevaluated_ nets variable. 4 . The percentage of nets (relat i ve to the total number of net s) selec ted f or reeva luation is l ess t han the value of the si_ xtalk_ exit_ on_ reevaluated_ nets_pct variable. 5 . The pe rcentag e of n ets (relative to the number of cross-coup l ed net s) selected for reeval ua t ion is less than t he v alue of the si_ xtalk_ exit_ on_ coupled_ reevaluated_ nets_pct variab l e . 6. You manually exit the ana l ysis l oop by pressing Con trol- C t o send an interrupt s i gnal to the PrimeTi1 ne process. The interr upt is handl ed as any othe r exit criteria , at the end o f the current iteration of t he crosstalk analys is. You cannot i n te rrupt iteration immediate l y withou t exiting PrimeTirne . To determine the current val ue o f this variable, si_ xtalk_ exit_ on_ number_ of_ reevaluated_ nets . type printvar 232 62 si_xtalk_exit_on_reevaluated_nets_pct Specifies a maximum percentage of nets selected for reeval uation relative to the total number o f nets, below which PrimeTime - SI exits t he ana l ysis loop . set_ param sil xtalk_exit_on_ reevaluated_nets_pct 0.000 Type : float Usage # # TYPE floa t DEFAULT 0 DESCRIPTION Specifies a maximum percentage of net s reselected for evaluation, relative t o the total number of nets. PrimeTime-SI exits the analysis loop after completing the current iterat i on , when the percentage of nets selected for reevaluation in the next it eration is less than this number. This vari abl e is one o f a set of six variables that determi n e e xit criteria; PrimeTime - SI exits the analysis l oop after comp leting the c u rrent iteration if one or more of t he fol l owing is t r ue : 1 . The number of iterations performed equa l s the value of the xtalk_ max_ iteration_ count variabl e . 2 . All de lta delays fall between the values of the si_ xtalk_ exit_on_min_ delta_ delay and si_ xtalk_ exit_ on_max_ delta_delay var iables. 3 . The number of nets selec ted for reevaluation in the n ext i teration is less than the value of the si_ xtalk_ exit_ on_ number_of reevaluated_ nets var i able, 4. The percentage of nets (relat ive to the tota l number of nets ) selected for reevaluat i on is l ess than the value of the si_ xtal k_ exit_ on_ reevaluated_ nets_pct variable. 5. The percentage of nets (relative to the number of cross-coupled nets) selec ted for r eeval ua t ion is less than t he value of the si_xtalk_ exit_ on_ coupled_ reevaluated_ nets_pct variabl e . 6. You manually exit the analysis loop by pressing Control-C to send an interrupt signal to the PrimeTime process. The interrup t is handled as any other exit c ri teria , at the end of the current iteration of the crosstalk ana l ysis. You cannot interrupt iteration immediately without exiting PrimeTime. To determine the current value o f this variable, si_ xtalk_ exit_ on_ reevaluated_ nets_pct . type printvar 233 63 si_xtalk_reselect_delta_and_slack xtal k_reselect_ delta_and_ slack Reselect net s that satisfy both delta delay a nd slack rese l ec t ion c r iter ia . TYPE Persistent parameter that controls whether window filtering is performed on nets based on the reselection criteria xtalk_reselect_delta_delay, xtalk_reselect_delta_delay_ratio, xtalk_reselect_max_mode_slack, and xtalk_reselect_min_mode_slack. Boolean Syntax: DEFAULT false DESCRIPTION When true, t he intersect ion of sets of nets reselected by del t a delay a nd slack based criter i a is used . For a n et to b e reselected t he following must be true : - The ne t is reselected by absolute delta delay AND - The net is reselected by relative delta delay AND - The net is reselected by setup OR hold slack OR borrowing AND Critical pa t h rese l ection is not enabl ed . x tal k r ese le c t d elta a n d s l a ck tru e I fa l s e where the values have the following meaning: true Perform window filtering on nets based on the delta delay, max_mode_slack and min_mode_slack criteria. false Do not perform window filtering. The default value is false. When tr ue, the nets that sa t isfy only one of t he above criteria (e.g., absolu te delta) bu t not others (e . g., slack) are not counted in the repor t associated wi t h XTALK-004. When false , the union o f sets of nets res elected by delta delay and slack based criteria is used . For a net to be reselected t he following must be true: - The net is reselected by absolute de l ta del ay OR - The net is reselec t ed by relative delta delay OR - The net is reselected by setup OR h ol d slack OR borrowing OR - Critical path reselection is enabled AND the ne t is on the cri t ical pa t h . To de termi ne the current value of this variable, type printvar s i _xtalk_reselect_ delta_ and_ slack. 234 64 si_xtal k_reselect_delta_and_slack xtalk_reselect_delta_and slack Reselect nets that satisfy both delta delay and slack reselection criteria . TYPE Persistent parameter that controls whether window filtering is performed on nets based on the reselection criteria xtalk_reselect_delta_delay, xtalk_reselect_delta_delay_ratio, xtalk_reselect_max_mode_slack, and xtalk_reselect_min_mode_slack. Boolean Syntax: DEFAULT false DESCRIPTION When true , the intersection of sets of nets reselected by delta delay and slack based criteria is used. For a net to be reselected the following must be true: - The nee is reselected by absolute delta delay AND - The net is reselected by relative delta delay AND - The net is reselected by setup OR hold slac k OR borrowing AND Critical path reselection is not enabled. xtalk_reselect_d elta and slack true I fa ls e where the values have the following meaning: true Perform window filtering on nets based on the delta delay, max_mode_slack and min_mode_slack criteria. f als e Do not perform window filtering . The default value is false . W11en true, the nets thaL satisfy only one of the above criteria (e.g . , absolute delta) buc no t others (e.g., slack) are not counted in the report associated with XTALP:- 004 . When false, the union of sets of nets reselected by delta delay and slack based criteria is used. For a net to be reselected the following must be true : - The net is reselected by absolute de l ta de l ay OR - The net is reselected by relative delta delay OR - The net is reselected by setup OR hold slack OR borrowing OR - Critical p ath reselection is enabled AND the net is on the cri t ical path. To determine the current value of this variable, type printvar si_ xtalk_ reseleet_ delta_ and_ sla ek . 235 Attributes of the cell Object Class area floa t The area of a cell . If the cell is hierarchical, this includes net area . area double area b as e_name s t r i ng The leaf name of a cell. For example, the base_name of cell U1/U2/U3 is U3. base_name string (read-only) base name dont_ touch boo l ean Identifies cells to be excluded from optimization in Design Compiler. Cells with the dont_ touch attribute set to true are not modified or replaced during compilation in Design Compiler. Setting dont_ touch on a hierarchical cell sets the attribute on all cells below it. Set with se t _ dont_ touch, and used by c ha r ac t er ize_con tex t and create_ timing_ contex t . You can set and unset the dont_ t o u c h attribute. dont_touch bool dont touch in optimization full_name stri ng The complete name of a cell. For example, the full name cell U3 within cell U2 within cell U1 is U1/U2/ U3. The full_name attribute is not affected by full_name string (read-only) cell instance fullname i s_sequenti a 1 bool (read-on 1y) is sequential cell number_of_pins (read-only) uint number of pins (read-only) current_ instance. is_ sequent ia l boo l ean A cell is sequential if it is not combinational. nurnber_ of_pins integer Number of pins on the cell. The number of pins can be different before and after linking. For example, if some pins were unconnected in a Verilog instance, after linking to the lower-level design, additional pins can be created on the cell. 236 1 Attributes of the cell Object Class is_clock_gating_check cell boolean A ref_name cell string A is_memory_cell cell boolean A is_clock_gating_check (read-only) bool is an ICG or combinational cell with clock gating cell ref_name string (read-only) referred lib_cell name is_memory_cell bool (read-only) is a memory cell 237 2 Attributes of the clock Object Class full_name stri ng The name of the clock. This is set with create_clock. It is either the name given with the - name option , or the name of the first object to which the clock is attached. Once set, this attribute is read only. full_name string full name period float The clock period (or cycle time) is the shortest time during which the clock waveform repeats. For a simple waveform with one rising and one falling edge, the period is the difference between successive rising edges . Set with period float clock period propagated_clock bool (read-only) compute propagate delay on clock network for latency sources collection clock source (read-only) create_clock -period. propagated_clock boolean Specifies that clock latency (insertion delay) be determined by propagating delays from the clock source to destination register clock pins. lfthis attribute is not present, ideal clocking is assumed . Set with set_propagated_clock. sources stri ng This is a collection of the source pins or ports of the clock. The sources are defined with the create_clock command . (read-only) 238 3 Attributes of the clock Object Class is_generated clock boolean A is_generated bool is generated clock 239 4 Attributes of the clock Object Class master_ clock collection This attribute is defined for generated clock objects and returns the master clock object for that generated clock. master_clock collection (read-only) master clock of generated clock 240 5 Attributes of the lib_ cell Object Class ful l_name string The name of a library. For example, the full_ n ame of library tech1 read in from /u/user/lib1.db is tech1. This name can be ambiguous because several libraries of the same name can be read in from different files. source_f il e_n ame str ing The name of the file from which the library was read. For example, the source_file_name of library tech1 read in from /u/user/lib1.db is /u/ user/lib1.db. full_name string (read-only) full name source_file_name string (read-only) source file name 241 6 Attributes of the lib_ cell Object Class area float A floating-point value representing the area of a library cell. base_n a me string The name of a library cell. For example, the base_name of library cell tech1/AN2 is AN2. don t _ touch boolean f u ll_n ame area double cell area (read-only) base_name string base name (read- only) Identifies library cells to be excluded from optimization. Values are true (the default) or false. Library cells with the don t_t oucb attribute set to true are not modified or replaced during compile. Set in Design Compiler with set_dont_tou cb. dont_use bool do not use in optimization, equal to (user_dont_use OR auto_dont_use) s t r i ng The fully qualified name of a library cell. This is the name of the library followed by the library cell name. For example, the full_name of library cell AN2 in library tech1 is tech1/AN2. full_name string full name is_ sequen tial boolean This attribute is true if the library cell is sequential. i s_sequenti a l bool (read-only) is a sequential library cell n umber_ of_pins integer Number of pins on the library cell. number_of_pins uint (read-only) number of pins (read-only) 242 7 Attributes of the lib_ cell Object Class dont_touch l i b_ce ll boolean is_memory_cell l i b_ce ll boolean A A dont_touch is_memory_cell bool do not touch in optimization, equal to (user_dont_touch OR auto_dont_touch) (read-only) bool is a memory library cell 243 8 Attributes of the lib_pin Object Type base_ name stri ng fan out _ load flo at A floating-point value representing the fanout load value of a library pin . This value is used in computing max_fanout design rule cost. base_name f u ll_name string The fully qualified name of a library cell pin . This is the name of the library followed by the library cell name followed by a pin name. For example, the full_ name of pin Z on library cell AN2 in library tech1 is tech1/AN2/Z. string (read-only) base name fanout_ load float (read-only) fanout load full_name (read-only) string full name max_capacitance The leaf name of the library cell pin . For example, the base_name of tech1/AN2/Z is Z. float max capacitance load I I float A floating-point value representing the maximum capacitance design rule limit for a library pin . max_ fanout float A floating-point value representing the maximum fanout design rule limit for a library pin. max_ fanout float (read-only) max fanout max_ t ransition fl oat A floating-point value representing the maximum transition time design rule limit for a library pin. max_transition I float max transition A floating-point value representing the capacitance of a library pin . I pin_capacitance float pin cap max_ capacitance pin_ capacitance float 244 9 Attributes of the lib_pin Object Type pin_direction lib_pin string A pin_direction in out inout internal unknown (read-only) signal direction 245 10 Attributes of the net Object Type ba se name string The leaf name of a net. For example, the base name of net i1 fi1 z1 is i1 z1 . You cannot set this attribute. don t _ t o uc h boolean Identifies nets to be excluded from optimization in Design Compiler. Values are true (the default) or false. Nets with the don t _ to uch attribute set to true are not modified or replaced during compile with Design Compiler. Set with base_name string base name dont_touch bool dont touch in optimization full_name string full name total_capacitance_max float [range: 0.0000 .. inf] (read-only,application) max total cap (read-only) s et_ dont_ tou ch. fu l l _ name stri n g The complete name of a net. For example, the full_name of net i1z1 within cell i1 is i1/i1 z1 . The f u l l_n a me attribute is not affected by current instance. The f u ll_n a me attribute is read-only. tota l _ capacitance_ max f l oat A floating-point value representing the sum of all pin capacitances and the wire capacitance of a net for maximum conditions. You cannot set this attribute. t otal_ c a p a citance_ mi n float A floating-point value representing the sum of all pin capacitances and the wire capacitance of a net for minimum conditions. You cannot set this attribute. total_capacitance_min (read-only) float [range: 0.0000 .. inf] (read-only,application) min total cap 246 11 Attributes of the pin Object Class actual _ fal l _ transition_ max float A tloating-point value representing the largest falling transition time for a pin . actual_fall_transition_max float [range: -inf .. inf] (read-only,application) actual max fall transition actual _ fall _ transition_ min float A floating-point value representing the smallest falling transition time for a pin. actual_fall_transition_min float [range: -inf .. inf] (read-only,application) actual min fall transition actua l _ r ise transition_max float A floating-point value representing the largest rising transition time for a pin. actual_rise_transition_max float [range: -i nf . . i nf] (read-only,application) actual max rise transition actua l _ rise_ transition_ min float A floating-point value representing the smallest rising transition time for a pin. actual_rise_transition_min float [range: -i nf . . i nf] (read-only,application) actual min rise transition arrival_window string (read-only,application) arrival window arrival_wi n dow string The minimum and maximum arrivals for rise and fall transitions . In order to get the arrival_window attribute on pins that are not endpoints, set the variable timi n g_save_pin_arrival_ and_slack to true. 247 12 clocks string The collection of clock objects which propagate through this pin. It is undefined if no clocks are present. direc t i on string The direction of a pin . Value can be in, out, inout, or internal. The pin_ direction attribute is a synonym for direction. Directions can change as a result of linking a design, as references are resolved . f u ll name string The complete name of a pin to the top of the hierarchy. For example, the full name of pin Z on cell U2 within ce ll U1 is U1/ U2/Z. The setting of the current instance has no effect on the full name of a pin. See also the l ib_pin_name attribute. boolean This attribute is true if a pin is a three-state driver. float A floating-point value representing the maximum transition time design rule limit for a pin. 1s three~state max~transi t ion clocks collection (read-only,application) clocks direction in out inout internal unknown (read-only) signal direction full_name string pin full name (read-only) is_three_state bool is tri-state (read-only) max_transition float [range: -inf .. inf] (read-only,application) : max transition constraint 248 13 Attributes of the pin Object Class is_clock_gating_clock pin boolean A is_clock_gating_enable pin boolean A is_clock_gating_clock is_clock_gating_enable bool (read-only) is the clock pin of an clock gating cell bool (read-only) is the enable pin of an clock gating cell 249 14 Attributes of the port Object Class actua l fal l transi tion_ max floa t A floating-point value representing the largest falling transition time for a port. You cannot set this attribute. actual_fall_transition_max [range: -inf .. inf] float (read-only,application) actual max fall transition actual _ Eal l _ tra n sition_ mi n float A floating-point value representing the smallest falling transition time for a port. You cannot set th is attribute. actual_fall_transition_min [range: -inf .. inf] float (read-only,application) actual min fall transition act u a l_ r~se_ tra n sit~on_max fl oa t A floating-point value representing the largest rising transition time for a port. You cannot set this attribute. actual_rise_transition_max [range: -inf .. inf] float (read-only,application) actual max rise transition float A floating-point value representing the smallest rising transition time for a port. You cannot set this attribute. actual_rise_transition_min float [range: -inf .. inf] (read-only,application) actual min rise transition c l ocks string The collection of clock objects which propagate through this port. It is undefined if no clocks are present. clocks collection (read-only,application) clocks direc t i on stri ng The direction of a port. Value can be in, out, inout, or internal. The port_direction attribute is a synonym for direction. You cannot set this attribute. direction in out inout internal unknown signal direction act ual r~se tran sition_ min 250 15 ful l _name max_ transi t ion string floa t The name of a port. You cannot set this attribute. Specifies the maximum transition time for the net connected to this port. The compile command ensures that value. Set with set_ max_tran sition . full_name : string : full name (read-only) max_transition [range: -inf .. i nf] float (read-only,application) : max transition constraint 251 16 Attributes of the timing_path Object Class clock_uncertain ty float The clock uncertainty of the timing_path. The uncertainty can be defined with the clock_uncertainty set_ clock_u n ce rta in ty :float [range: -inf .. inf] (read-only) : clock uncertainty command. endpo i nt st ring The timing endpoint name of the timing_path, for example, U1/U5/ par_reg/0. endpoint collection end point e ndpo i nt_ c l ock string The clock name of the clock at the path endpoint. endpoint_clock collection (read-only) end-point clock endpo i nt_ c l ock_ close_ edge_ type stri ng The type of clock edge (rise or fall) that closes (latches) the data. endpoint_clock_close_edge_type rise fall (read-only) end-point clock close edge type endpoint_ clock_ c l ose_ edge_ v a l ue float The value of the closing edge of the endpoint clock. endpoint_clock_close_edge_value float [range: -inf .. inf] (read-only) end-point clock close edge value endpoint_clock_is_inverted boolean Returns true if the endpoint clock has been inverted. endpoint_clock_is_inverted bool (read-only) end-point clock is inverted endpoint_clock_is_propagated boolean Returns true if the endpoint clock is a propagated clock, false if it is an ideal clock. You can set a clock as propagated using the endpoint_clock_is_propagated (read-only) (read-only) bool end-point clock is propagated set_propagated_clock command. 252 17 endpoint_clock_latency endpo i nt_ c l oc k _ open_ edge_ t ype endpoint_c l oc k _open_edge_ value fl oa t str i ng float The latency of the endpoint clock. If the clock is propagated, it is the computed latency (or delay) from the clock source to the endpoint. You can set clock latency using the set_clock_latency command . endpoint_clock_latency The type of clock edge (rise or fall) that opens the endpoint latch. If the endpoint is edge-triggered, the open and close edges are the same. endpoint_clock_open_edge_type The value of the opening edge of the endpoint clock. endpoint_clock_open_edge_value : float float [range: -inf .. i nf] (read-only) : end-point clock latency rise fall Cread-only) : end-point clock open edge type [range: -inf .. i nf] (read-only) : end-point clock open edge value endpoint_cloc k_pin endpoint_ hold_ tirne_ v alue endpoint_ is_ level_ sensitive endpoint_ output_ delay_ value string float boolean float The complete path name of the endpoint clock pin, for example, U23/U _reg/out_reg[2)/C P. endpoint_clock_pin The value of the register hold time at the timing endpoint. For example, for a flip-flop this would be the library hold time for the flip-flop cell. endpoint_hold_time_value Returns true if the endpoint is a level-sensitive device, for example, a latch. Returns false if the endpoint is edge-triggered. The value of the output delay of the timing endpoint. You can set the output delay value with end-point clock pin float The value of the recovery time at the liming endpoint. Recovery and removal times are often defined for the asynchronous set and clear pins of registers . float [range: -i nf .. i nf] (read-only) : end-point hold time endpoint_is_level_sensitive Cread-only) : bool end - point is level sensitive endpoint_output_delay_value float [range: -inf .. i nf] (read-only) set_output_delay. endpoi nt_recovery_tirne_va l ue collection (read-only) end-point output delay endpoint_recovery_time_value : float [range: -inf .. i nf] (read-only) end - point recovery time 253 18 endpoint_rernoval_tirne_value endpoint_ setup_ time_value path_group fl oat float string The value of the removal time at the timing endpoint. Recovery and removal times are often defined for the asynchronous seUclear pins of registers. endpoint_removal_time_value : float [range: -inf (read - only) .. i nf] : end-point removal time The value of the setup time at the timing endpoint. Recovery and removal times are often defined for the asynchronous set and clear pins of registers. endpoint_setup_time_value The path group of the timing path . path_group float [range: -inf (read-only) .. i nf] end-point setup time string (read-only) : path group name path_ type string The type of timing path (maximum or minimum). A path for a setup check is path_type of max. path_ type max min min_max max_rise max_fall min_rise min_fall (read-only) path type points slack startpoint string string string Returns a collection of the timing points that comprise a timing path . For example , the timing points listed in the left-hand column of a report_ timing command correspond to this collection. A single timing path can consist of many timing points. You can iterate through each timing point using foreach_in_collection . The slack of the timing path . Negative values represent violated paths. Corresponds to the slack of a timing report. The startpoint of the timing path . Corresponds to the startpoint in the header of a timing report. points : collection Cread-only) timing points slack float [range: -inf (read-only) .. inf] slack startpoint : collection : start point (read-only) 254 19 startpo i nt_clock startpoint_clock_is_inverted startpoint_clock_is_propagated string The startpoint clock name of the timing path. boolean Returns true if the startpoint clock is inverted . boolean Returns true if the startpoint clock is a propagated clock, false if it is an ideal clock. You can set a clock as propagated using the se t _propagated_ c l ock startpoint_clock collection (read-only) start-point clock startpoint_clock_is_inverted bool (read-only) start-point clock is inverted startpoint_clock_is_propagated : bool (read-only) start-point clock is propagated command . startpoint_clock_ l atency float The latency of the startpoint clock. If the clock is propagated, it is the computed latency (or delay) from the clock source to the endpoint. You can set clock latency using the set_clock_latency command. startpoint_clock_latency : float [range: -inf .. inf] (read-only) start-point clock latency startpoint_ clock_ open_ edge_ t ype str i ng The type of clock edge (rise or fall) that launches the data. startpoint_clock_open_edge_type : rise fall (read-only) start-point clock open edge type startpoint_ clock_ open_ edge_ value float The value of the opening edge of the startpoint clock . startpoint_clock_open_edge_value : float [range: -inf .. inf] (read-only) : start-point clock open edge value startpoint_ inpu t _delay_va l ue float The value of the startpoint input delay. startpoint_input_delay_value float [range: -inf .. inf] (read-only) start-point input delay 255 20 startpoint_ is_ level_ sensi t ive boolean Returns true if the startpoint is a level-sensitive device, such as a latch . Returns false if the startpoint is edge-triggered. time_ borrowed_ from_ endpoint float Returns the amount of time borrowed from the timing endpoint. Time borrowing occurs in paths involving level-sensitive devices. time_lent_to_s t artpoint float Returns the amount of time lent to the timing startpoint. Time borrowing occurs in paths involving level-sensitive devices. startpoint_is_level_sensitive (read-only) bool start-point is level sensitive time_borrowed_from_endpoint [range: -inf .. i nf] float (read-only) : time borrowed from end-point time_lent_to_startpoint [range: -inf . . i nf] float (read-only) time lent to start-point 256 21 Attributes of the tim ing_point Object Class arrival str i ng The arrival time at the timing point, but not accounting for the following. - Clock latency to the startpoint clock -Time lent to the startpoint (due to latch borrowing) -Input delay These must be added to the arrival attribute value to arrive at the total arrival time based on the desired startpoint. arrival I float [range: -inf .. i nf] (read-only) : arrival time : collection pin or port (read-only) ob ject string The object at this point in the timing path . object rise_fa l l strin g Returns rise if the timing point is a rising-edge delay. Returns fall if the timing point is a falling-edge delay. ri se_fall rise fall Cread-on 1 y) rise or fall type slack float [range: -inf .. inf] (read-only) slack s tring The slack value at the timing point. slack t r ans i t i on s t ring The transition value at the timing point. transition float [range : -inf .. inf] (read - only) transition time 257 22 Attributes of the tim ing_point Object Class vo l tage f l oat The voltage level of the pin. voltage float [range: -inf .. inf] (read-only) rail voltage 258 23 Attributes of the timing_point Object Class vo l tage float The voltage level of the pin . voltage float [range: -inf .. inf] (read-only) rail voltage 259

Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.


Why Is My Information Online?