@@ -90,13 +90,80 @@ def gen_rule_file(
9090 "round_value" : True ,
9191 "compare" : "<=" ,
9292 },
93+ "cts__timing__setup__ws" : {
94+ "mode" : "period" ,
95+ "padding" : 5 ,
96+ "min_max" : min ,
97+ "min_max_direct" : 0 ,
98+ "round_value" : False ,
99+ "compare" : ">=" ,
100+ },
101+ "cts__timing__setup__tns" : {
102+ "mode" : "padding" ,
103+ "padding" : 20 ,
104+ "min_max" : min ,
105+ "min_max_direct" : 0 ,
106+ "round_value" : False ,
107+ "compare" : ">=" ,
108+ },
109+ "cts__timing__hold__ws" : {
110+ "mode" : "period" ,
111+ "padding" : 5 ,
112+ "min_max" : min ,
113+ "min_max_direct" : 0 ,
114+ "round_value" : False ,
115+ "compare" : ">=" ,
116+ },
117+ "cts__timing__hold__tns" : {
118+ "mode" : "padding" ,
119+ "padding" : 20 ,
120+ "min_max" : min ,
121+ "min_max_direct" : 0 ,
122+ "round_value" : False ,
123+ "compare" : ">=" ,
124+ },
93125 # route
94126 "globalroute__antenna_diodes_count" : {
95- "mode" : "padding" ,
96- "padding" : 50 ,
127+ "mode" : "metric" ,
128+ "padding" : 0.1 ,
129+ "metric" : "globalroute__route__net" ,
130+ "min_max" : max ,
131+ "min_max_direct" : 100 ,
97132 "round_value" : True ,
98133 "compare" : "<=" ,
99134 },
135+ "globalroute__timing__setup__ws" : {
136+ "mode" : "period" ,
137+ "padding" : 5 ,
138+ "min_max" : min ,
139+ "min_max_direct" : 0 ,
140+ "round_value" : False ,
141+ "compare" : ">=" ,
142+ },
143+ "globalroute__timing__setup__tns" : {
144+ "mode" : "padding" ,
145+ "padding" : 20 ,
146+ "min_max" : min ,
147+ "min_max_direct" : 0 ,
148+ "round_value" : False ,
149+ "compare" : ">=" ,
150+ },
151+ "globalroute__timing__hold__ws" : {
152+ "mode" : "period" ,
153+ "padding" : 5 ,
154+ "min_max" : min ,
155+ "min_max_direct" : 0 ,
156+ "round_value" : False ,
157+ "compare" : ">=" ,
158+ },
159+ "globalroute__timing__hold__tns" : {
160+ "mode" : "padding" ,
161+ "padding" : 20 ,
162+ "min_max" : min ,
163+ "min_max_direct" : 0 ,
164+ "round_value" : False ,
165+ "compare" : ">=" ,
166+ },
100167 "detailedroute__route__wirelength" : {
101168 "mode" : "padding" ,
102169 "padding" : 15 ,
@@ -115,31 +182,74 @@ def gen_rule_file(
115182 "compare" : "<=" ,
116183 },
117184 "detailedroute__antenna_diodes_count" : {
118- "mode" : "padding" ,
119- "padding" : 50 ,
185+ "mode" : "metric" ,
186+ "padding" : 0.1 ,
187+ "metric" : "detailedroute__route__net" ,
120188 "min_max" : max ,
121- "min_max_direct" : 5 ,
189+ "min_max_direct" : 100 ,
122190 "round_value" : True ,
123191 "compare" : "<=" ,
124192 },
193+ "detailedroute__timing__setup__ws" : {
194+ "mode" : "period" ,
195+ "padding" : 5 ,
196+ "min_max" : min ,
197+ "min_max_direct" : 0 ,
198+ "round_value" : False ,
199+ "compare" : ">=" ,
200+ },
201+ "detailedroute__timing__setup__tns" : {
202+ "mode" : "padding" ,
203+ "padding" : 20 ,
204+ "min_max" : min ,
205+ "min_max_direct" : 0 ,
206+ "round_value" : False ,
207+ "compare" : ">=" ,
208+ },
209+ "detailedroute__timing__hold__ws" : {
210+ "mode" : "period" ,
211+ "padding" : 5 ,
212+ "min_max" : min ,
213+ "min_max_direct" : 0 ,
214+ "round_value" : False ,
215+ "compare" : ">=" ,
216+ },
217+ "detailedroute__timing__hold__tns" : {
218+ "mode" : "padding" ,
219+ "padding" : 20 ,
220+ "min_max" : min ,
221+ "min_max_direct" : 0 ,
222+ "round_value" : False ,
223+ "compare" : ">=" ,
224+ },
125225 # finish
126226 "finish__timing__setup__ws" : {
127227 "mode" : "period" ,
128228 "padding" : 5 ,
229+ "min_max" : min ,
230+ "min_max_direct" : 0 ,
129231 "round_value" : False ,
130232 "compare" : ">=" ,
131233 },
132234 "finish__timing__setup__tns" : {
133235 "mode" : "padding" ,
134- "padding" : 30 ,
236+ "padding" : 20 ,
237+ "min_max" : min ,
238+ "min_max_direct" : 0 ,
239+ "round_value" : False ,
240+ "compare" : ">=" ,
241+ },
242+ "finish__timing__hold__ws" : {
243+ "mode" : "period" ,
244+ "padding" : 5 ,
135245 "min_max" : min ,
136246 "min_max_direct" : 0 ,
137247 "round_value" : False ,
138248 "compare" : ">=" ,
139249 },
140250 "finish__timing__hold__tns" : {
141251 "mode" : "padding" ,
142- "padding" : 30 ,
252+ "padding" : 20 ,
143253 "min_max" : min ,
144254 "min_max_direct" : 0 ,
145255 "round_value" : False ,
@@ -151,21 +261,6 @@ def gen_rule_file(
151261 "round_value" : True ,
152262 "compare" : "<=" ,
153263 },
154- "finish__timing__drv__setup_violation_count" : {
155- "mode" : "metric" ,
156- "padding" : 5 ,
157- "metric" : "placeopt__design__instance__count__stdcell" ,
158- "round_value" : True ,
159- "compare" : "<=" ,
160- },
161- "finish__timing__drv__hold_violation_count" : {
162- "mode" : "padding" ,
163- "padding" : 25 ,
164- "min_max" : max ,
165- "min_max_sum" : 100 ,
166- "round_value" : True ,
167- "compare" : "<=" ,
168- },
169264 "finish__timing__wns_percent_delay" : {
170265 "mode" : "padding" ,
171266 "padding" : 20 ,
0 commit comments