Closed Flians closed 2 years ago
When I insert buffer for inv6 using dry_run with the parameter until_sat, I found that the dry_run is endless.
inv6
dry_run
until_sat
And while in mockturtle::buffer_insertion::optimize can be not finished:
while
mockturtle::buffer_insertion::optimize
bool updated; do { updated = find_and_move_chunks(); } while ( updated && _ps.optimization_effort == buffer_insertion_params::until_sat );
Can you help me solve it?
The source of inv6.v:
module top( x0 , x1 , x2 , x3 , x4 , x5 , x6 , x7 , x8 , x9 , x10 , x11 , x12 , x13 , x14 , x15 , x16 , x17 , x18 , x19 , x20 , x21 , x22 , x23 , x24 , x25 , x26 , x27 , x28 , x29 , x30 , x31 , x32 , y0 , y1 , y2 , y3 , y4 , y5 , y6 , y7 , y8 , y9 , y10 , y11 , y12 , y13 , y14 , y15 , y16 , y17 , y18 , y19 , y20 , y21 , y22 ); input x0 , x1 , x2 , x3 , x4 , x5 , x6 , x7 , x8 , x9 , x10 , x11 , x12 , x13 , x14 , x15 , x16 , x17 , x18 , x19 , x20 , x21 , x22 , x23 , x24 , x25 , x26 , x27 , x28 , x29 , x30 , x31 , x32 ; output y0 , y1 , y2 , y3 , y4 , y5 , y6 , y7 , y8 , y9 , y10 , y11 , y12 , y13 , y14 , y15 , y16 , y17 , y18 , y19 , y20 , y21 , y22 ; wire n34 , n35 , n36 , n37 , n38 , n39 , n40 , n41 , n42 , n43 , n44 , n45 , n46 , n47 , n48 , n49 , n50 , n51 , n52 , n53 , n54 , n55 , n56 , n57 , n58 , n59 , n60 , n61 , n62 , n63 , n64 , n65 , n66 , n67 , n68 , n69 , n70 , n71 , n72 , n73 , n74 , n75 , n76 , n77 , n78 , n79 , n80 , n81 , n82 , n83 , n84 , n85 , n86 , n87 , n88 , n89 , n90 , n91 , n92 , n93 , n94 , n95 , n96 , n97 , n98 , n99 , n100 , n101 , n102 , n103 , n104 , n105 , n106 , n107 , n108 , n109 , n110 , n111 , n112 , n113 , n114 , n115 , n116 , n117 , n118 , n119 , n120 , n121 , n122 , n123 , n124 , n125 , n126 , n127 , n128 , n129 , n130 , n131 , n132 , n133 , n134 , n135 , n136 , n137 , n138 , n139 , n140 , n141 , n142 , n143 , n144 , n145 , n146 , n147 , n148 , n149 , n150 , n151 , n152 , n153 , n154 , n155 , n156 , n157 , n158 , n159 , n160 , n161 , n162 , n163 , n164 , n165 , n166 , n167 , n168 , n169 , n170 , n171 , n172 , n173 , n174 , n175 , n176 , n177 , n178 , n179 , n180 , n181 , n182 , n183 , n184 , n185 , n186 , n187 , n188 , n189 , n190 , n191 , n192 , n193 , n194 , n195 , n196 , n197 , n198 , n199 , n200 , n201 , n202 , n203 , n204 , n205 , n206 , n207 , n208 , n209 , n210 , n211 , n212 , n213 , n214 , n215 , n216 , n217 , n218 , n219 , n220 , n221 , n222 , n223 , n224 , n225 , n226 , n227 , n228 , n229 , n230 , n231 , n232 , n233 , n234 , n235 , n236 , n237 , n238 , n239 , n240 , n241 , n242 , n243 , n244 , n245 , n246 , n247 , n248 , n249 , n250 , n251 , n252 , n253 , n254 , n255 , n256 , n257 , n258 , n259 , n260 , n261 , n262 , n263 , n264 , n265 , n266 , n267 , n268 , n269 , n270 , n271 , n272 , n273 , n274 , n275 , n276 , n277 , n278 , n279 , n280 , n281 , n282 , n283 , n284 , n285 , n286 , n287 , n288 , n289 , n290 , n291 , n292 , n293 , n294 , n295 , n296 , n297 , n298 , n299 , n300 , n301 , n302 , n303 , n304 , n305 , n306 , n307 , n308 , n309 , n310 , n311 , n312 , n313 , n314 , n315 , n316 , n317 , n318 , n319 , n320 , n321 , n322 , n323 , n324 , n325 , n326 , n327 , n328 , n329 , n330 , n331 , n332 , n333 , n334 , n335 , n336 , n337 , n338 , n339 , n340 , n341 , n342 , n343 , n344 , n345 , n346 , n347 , n348 , n349 , n350 , n351 , n352 , n353 , n354 , n355 , n356 , n357 , n358 , n359 , n360 , n361 , n362 , n363 , n364 , n365 , n366 , n367 , n368 , n369 , n370 , n371 , n372 , n373 , n374 , n375 , n376 , n377 , n378 , n379 , n380 , n381 , n382 ; assign n34 = ~x16 & x31 ; assign n35 = ~x15 & n34 ; assign n37 = x28 & x30 ; assign n36 = x1 & x22 ; assign n38 = ( x31 & ~n36 ) | ( x31 & n37 ) | ( ~n36 & n37 ) ; assign n39 = n37 & ~n38 ; assign n40 = ( ~x0 & n35 ) | ( ~x0 & n39 ) | ( n35 & n39 ) ; assign n42 = x1 & x29 ; assign n41 = x24 & x28 ; assign n43 = ( x32 & ~n41 ) | ( x32 & n42 ) | ( ~n41 & n42 ) ; assign n44 = n42 & ~n43 ; assign n45 = x4 | n44 ; assign n46 = x32 & ~n45 ; assign n47 = ( ~x0 & n44 ) | ( ~x0 & n46 ) | ( n44 & n46 ) ; assign n48 = ~x0 & x3 ; assign n49 = ( x28 & x30 ) | ( x28 & n48 ) | ( x30 & n48 ) ; assign n50 = n48 & ~n49 ; assign n51 = x29 & ~x30 ; assign n52 = ~x0 & x28 ; assign n53 = ( x0 & n51 ) | ( x0 & ~n52 ) | ( n51 & ~n52 ) ; assign n54 = ( x0 & x3 ) | ( x0 & n53 ) | ( x3 & n53 ) ; assign n80 = x0 | x28 ; assign n58 = x11 | x12 ; assign n55 = ( x12 & x21 ) | ( x12 & x29 ) | ( x21 & x29 ) ; assign n56 = ( ~x12 & x20 ) | ( ~x12 & x29 ) | ( x20 & x29 ) ; assign n57 = n55 & n56 ; assign n59 = ( x19 & n57 ) | ( x19 & ~n58 ) | ( n57 & ~n58 ) ; assign n60 = ( ~x11 & n58 ) | ( ~x11 & n59 ) | ( n58 & n59 ) ; assign n61 = n58 & n60 ; assign n66 = ( ~x9 & x10 ) | ( ~x9 & n61 ) | ( x10 & n61 ) ; assign n62 = x11 & ~x29 ; assign n63 = ( x11 & ~x21 ) | ( x11 & n62 ) | ( ~x21 & n62 ) ; assign n64 = ( ~x11 & x12 ) | ( ~x11 & n63 ) | ( x12 & n63 ) ; assign n65 = ( ~x12 & n58 ) | ( ~x12 & n64 ) | ( n58 & n64 ) ; assign n67 = ( x9 & x10 ) | ( x9 & ~n65 ) | ( x10 & ~n65 ) ; assign n68 = n66 & n67 ; assign n69 = x11 & ~x12 ; assign n70 = ~x9 & x10 ; assign n71 = ( x9 & n69 ) | ( x9 & ~n70 ) | ( n69 & ~n70 ) ; assign n75 = x19 & x20 ; assign n72 = x10 & ~x11 ; assign n73 = ~x12 & n72 ; assign n74 = ( ~x10 & x29 ) | ( ~x10 & n73 ) | ( x29 & n73 ) ; assign n76 = ( x21 & n74 ) | ( x21 & ~n75 ) | ( n74 & ~n75 ) ; assign n77 = n75 & n76 ; assign n78 = x9 & ~n77 ; assign n79 = ( n68 & n71 ) | ( n68 & ~n78 ) | ( n71 & ~n78 ) ; assign n81 = ( x30 & n79 ) | ( x30 & n80 ) | ( n79 & n80 ) ; assign n82 = ~n80 & n81 ; assign n101 = x0 | x16 ; assign n83 = x1 & x23 ; assign n90 = x28 & n83 ; assign n84 = x15 & ~x17 ; assign n85 = x7 & ~x17 ; assign n86 = ( x6 & x15 ) | ( x6 & ~n85 ) | ( x15 & ~n85 ) ; assign n87 = ( x17 & n84 ) | ( x17 & ~n86 ) | ( n84 & ~n86 ) ; assign n88 = x15 & x17 ; assign n89 = ~x14 & n88 ; assign n91 = ( n87 & n89 ) | ( n87 & n90 ) | ( n89 & n90 ) ; assign n92 = n90 & n91 ; assign n95 = ~x14 & x15 ; assign n96 = ( ~x17 & x28 ) | ( ~x17 & n95 ) | ( x28 & n95 ) ; assign n97 = n95 & ~n96 ; assign n93 = ( x11 & x12 ) | ( x11 & n70 ) | ( x12 & n70 ) ; assign n94 = n70 & ~n93 ; assign n98 = ~n92 & n94 ; assign n99 = n97 & n98 ; assign n100 = ( x30 & n92 ) | ( x30 & n99 ) | ( n92 & n99 ) ; assign n102 = ( ~x18 & n100 ) | ( ~x18 & n101 ) | ( n100 & n101 ) ; assign n103 = ~n101 & n102 ; assign n114 = x1 & ~x9 ; assign n111 = ~x10 & x11 ; assign n104 = x23 & ~x28 ; assign n105 = ~x16 & n104 ; assign n106 = x6 | x8 ; assign n107 = x18 & ~n106 ; assign n108 = ( x6 & x17 ) | ( x6 & n107 ) | ( x17 & n107 ) ; assign n109 = x17 | x18 ; assign n110 = ( n105 & n108 ) | ( n105 & ~n109 ) | ( n108 & ~n109 ) ; assign n112 = ( x12 & n110 ) | ( x12 & ~n111 ) | ( n110 & ~n111 ) ; assign n113 = n111 & n112 ; assign n115 = ( x30 & n113 ) | ( x30 & ~n114 ) | ( n113 & ~n114 ) ; assign n116 = n114 & n115 ; assign n121 = ~x16 & x17 ; assign n122 = x16 & x18 ; assign n123 = x17 & x18 ; assign n124 = ( x6 & x17 ) | ( x6 & n123 ) | ( x17 & n123 ) ; assign n125 = ( n121 & n122 ) | ( n121 & ~n124 ) | ( n122 & ~n124 ) ; assign n117 = ( x28 & n58 ) | ( x28 & n70 ) | ( n58 & n70 ) ; assign n118 = n70 & ~n117 ; assign n119 = x28 | n118 ; assign n120 = ( n83 & n118 ) | ( n83 & n119 ) | ( n118 & n119 ) ; assign n126 = ( x30 & n120 ) | ( x30 & ~n125 ) | ( n120 & ~n125 ) ; assign n127 = ( n116 & n125 ) | ( n116 & n126 ) | ( n125 & n126 ) ; assign n128 = ~x15 & n127 ; assign n129 = ~x0 & n128 ; assign n131 = x1 & x18 ; assign n130 = x0 | x15 ; assign n132 = ( ~x22 & n130 ) | ( ~x22 & n131 ) | ( n130 & n131 ) ; assign n133 = n131 & ~n132 ; assign n134 = ( x18 & n118 ) | ( x18 & n130 ) | ( n118 & n130 ) ; assign n135 = ~n130 & n134 ; assign n136 = ( n119 & n133 ) | ( n119 & n135 ) | ( n133 & n135 ) ; assign n137 = x15 & ~x18 ; assign n144 = x1 & n137 ; assign n138 = ( x22 & x28 ) | ( x22 & ~n137 ) | ( x28 & ~n137 ) ; assign n139 = x9 | x10 ; assign n140 = ~x28 & n139 ; assign n141 = ( ~x22 & n137 ) | ( ~x22 & n140 ) | ( n137 & n140 ) ; assign n142 = x11 & x12 ; assign n143 = ( n138 & ~n141 ) | ( n138 & n142 ) | ( ~n141 & n142 ) ; assign n145 = ~n136 & n143 ; assign n146 = n144 & n145 ; assign n147 = ( x30 & n136 ) | ( x30 & n146 ) | ( n136 & n146 ) ; assign n148 = ~x17 & n147 ; assign n149 = ( x0 & n101 ) | ( x0 & n148 ) | ( n101 & n148 ) ; assign n150 = x1 & ~x6 ; assign n151 = ( ~x8 & x10 ) | ( ~x8 & n150 ) | ( x10 & n150 ) ; assign n152 = n150 & ~n151 ; assign n153 = ~x17 & x22 ; assign n154 = x16 & n153 ; assign n155 = ( ~n142 & n152 ) | ( ~n142 & n154 ) | ( n152 & n154 ) ; assign n156 = n142 & n155 ; assign n157 = ~x0 & n156 ; assign n158 = ( ~x14 & x17 ) | ( ~x14 & n156 ) | ( x17 & n156 ) ; assign n159 = ( x0 & ~x16 ) | ( x0 & n158 ) | ( ~x16 & n158 ) ; assign n160 = ( ~x0 & n157 ) | ( ~x0 & n159 ) | ( n157 & n159 ) ; assign n161 = x10 & ~n58 ; assign n162 = ( n157 & n160 ) | ( n157 & n161 ) | ( n160 & n161 ) ; assign n163 = x28 & n36 ; assign n164 = ( x16 & x17 ) | ( x16 & ~n163 ) | ( x17 & ~n163 ) ; assign n165 = n163 & ~n164 ; assign n166 = x9 | x28 ; assign n167 = ( x30 & n165 ) | ( x30 & ~n166 ) | ( n165 & ~n166 ) ; assign n168 = ( x16 & x17 ) | ( x16 & ~n58 ) | ( x17 & ~n58 ) ; assign n169 = n58 | n168 ; assign n170 = ~x6 & x7 ; assign n171 = ( x28 & n70 ) | ( x28 & ~n170 ) | ( n70 & ~n170 ) ; assign n172 = n70 & ~n171 ; assign n173 = ~n169 & n172 ; assign n174 = ( x30 & n165 ) | ( x30 & n173 ) | ( n165 & n173 ) ; assign n175 = ( n162 & n167 ) | ( n162 & n174 ) | ( n167 & n174 ) ; assign n176 = ~x18 & n175 ; assign n177 = x15 & n176 ; assign n178 = x0 | n177 ; assign n179 = x0 & x7 ; assign n200 = x16 | x18 ; assign n180 = x22 & x28 ; assign n181 = x1 & n180 ; assign n185 = ( ~x15 & x17 ) | ( ~x15 & n170 ) | ( x17 & n170 ) ; assign n186 = n170 & ~n185 ; assign n182 = ( ~x6 & x15 ) | ( ~x6 & x17 ) | ( x15 & x17 ) ; assign n183 = ( x14 & x15 ) | ( x14 & ~x17 ) | ( x15 & ~x17 ) ; assign n184 = n182 & ~n183 ; assign n187 = n184 & ~n186 ; assign n188 = ~x0 & n187 ; assign n189 = ( n181 & n186 ) | ( n181 & n188 ) | ( n186 & n188 ) ; assign n190 = x12 | x14 ; assign n196 = x30 & ~n190 ; assign n191 = x15 & ~x28 ; assign n192 = ( x17 & n190 ) | ( x17 & n191 ) | ( n190 & n191 ) ; assign n193 = x0 | x9 ; assign n194 = ( x10 & ~x11 ) | ( x10 & n193 ) | ( ~x11 & n193 ) ; assign n195 = ~n193 & n194 ; assign n197 = ( n192 & n195 ) | ( n192 & ~n196 ) | ( n195 & ~n196 ) ; assign n198 = n196 & n197 ; assign n199 = ( x30 & n189 ) | ( x30 & n198 ) | ( n189 & n198 ) ; assign n201 = n179 | n199 ; assign n202 = ( n179 & ~n200 ) | ( n179 & n201 ) | ( ~n200 & n201 ) ; assign n232 = ~n58 & n70 ; assign n228 = ( ~x28 & n58 ) | ( ~x28 & n122 ) | ( n58 & n122 ) ; assign n215 = x15 & ~x16 ; assign n226 = ( x18 & ~n170 ) | ( x18 & n215 ) | ( ~n170 & n215 ) ; assign n227 = n215 & ~n226 ; assign n229 = ( ~x28 & n58 ) | ( ~x28 & n227 ) | ( n58 & n227 ) ; assign n230 = n130 & ~n227 ; assign n231 = ( n228 & n229 ) | ( n228 & ~n230 ) | ( n229 & ~n230 ) ; assign n233 = n179 | n231 ; assign n234 = ( n179 & n232 ) | ( n179 & n233 ) | ( n232 & n233 ) ; assign n203 = x7 & ~x15 ; assign n204 = ( x16 & x28 ) | ( x16 & n203 ) | ( x28 & n203 ) ; assign n205 = n203 & ~n204 ; assign n206 = ( x0 & ~x12 ) | ( x0 & n111 ) | ( ~x12 & n111 ) ; assign n207 = ( ~x15 & x16 ) | ( ~x15 & n106 ) | ( x16 & n106 ) ; assign n208 = ( x0 & x15 ) | ( x0 & ~x28 ) | ( x15 & ~x28 ) ; assign n209 = x6 & ~x16 ; assign n210 = ( x0 & ~x28 ) | ( x0 & n209 ) | ( ~x28 & n209 ) ; assign n211 = ( n207 & n208 ) | ( n207 & n210 ) | ( n208 & n210 ) ; assign n212 = ( x12 & ~n111 ) | ( x12 & n211 ) | ( ~n111 & n211 ) ; assign n213 = ( n205 & ~n206 ) | ( n205 & n212 ) | ( ~n206 & n212 ) ; assign n214 = n111 & n213 ; assign n216 = ( x28 & n170 ) | ( x28 & ~n215 ) | ( n170 & ~n215 ) ; assign n217 = n215 & n216 ; assign n218 = n214 & ~n217 ; assign n219 = ~x9 & n218 ; assign n220 = ( ~x28 & n122 ) | ( ~x28 & n130 ) | ( n122 & n130 ) ; assign n221 = n122 & ~n220 ; assign n222 = ( ~x18 & n36 ) | ( ~x18 & n221 ) | ( n36 & n221 ) ; assign n223 = n36 & n222 ; assign n224 = ( n36 & n217 ) | ( n36 & n221 ) | ( n217 & n221 ) ; assign n225 = n36 & n224 ; assign n235 = ( n219 & n223 ) | ( n219 & n225 ) | ( n223 & n225 ) ; assign n236 = n234 | n235 ; assign n237 = ~x17 & x30 ; assign n238 = ( n179 & n236 ) | ( n179 & n237 ) | ( n236 & n237 ) ; assign n242 = x1 & ~x10 ; assign n239 = x12 & ~x16 ; assign n240 = ( x17 & x23 ) | ( x17 & ~n239 ) | ( x23 & ~n239 ) ; assign n241 = n239 & n240 ; assign n243 = ( x11 & n241 ) | ( x11 & ~n242 ) | ( n241 & ~n242 ) ; assign n244 = n242 & n243 ; assign n245 = x16 & ~x17 ; assign n246 = ( x28 & ~n161 ) | ( x28 & n245 ) | ( ~n161 & n245 ) ; assign n247 = n245 & ~n246 ; assign n248 = ( ~x9 & n244 ) | ( ~x9 & n247 ) | ( n244 & n247 ) ; assign n249 = x18 & x30 ; assign n250 = ~x15 & n249 ; assign n251 = ( x16 & x17 ) | ( x16 & ~x23 ) | ( x17 & ~x23 ) ; assign n252 = ( x16 & x17 ) | ( x16 & x28 ) | ( x17 & x28 ) ; assign n253 = ~n251 & n252 ; assign n254 = ~n248 & n253 ; assign n255 = x1 & n254 ; assign n256 = ( n248 & n250 ) | ( n248 & n255 ) | ( n250 & n255 ) ; assign n257 = ~x0 & n256 ; assign n258 = x0 & ~x7 ; assign n259 = n257 | n258 ; assign n267 = x6 | x15 ; assign n260 = x1 & ~x8 ; assign n261 = ( x10 & ~x23 ) | ( x10 & n260 ) | ( ~x23 & n260 ) ; assign n262 = n260 & ~n261 ; assign n263 = ( x18 & ~n142 ) | ( x18 & n262 ) | ( ~n142 & n262 ) ; assign n264 = n142 & n263 ; assign n265 = ( x12 & x18 ) | ( x12 & n72 ) | ( x18 & n72 ) ; assign n266 = n72 & ~n265 ; assign n268 = ( n264 & n266 ) | ( n264 & ~n267 ) | ( n266 & ~n267 ) ; assign n269 = ~n267 & n268 ; assign n270 = ( x18 & n95 ) | ( x18 & ~n161 ) | ( n95 & ~n161 ) ; assign n271 = n95 & ~n270 ; assign n272 = ( ~n166 & n269 ) | ( ~n166 & n271 ) | ( n269 & n271 ) ; assign n273 = ~n166 & n272 ; assign n274 = ( x15 & x18 ) | ( x15 & ~n90 ) | ( x18 & ~n90 ) ; assign n275 = n90 & ~n274 ; assign n276 = ( x30 & n273 ) | ( x30 & n275 ) | ( n273 & n275 ) ; assign n277 = ( n121 & n179 ) | ( n121 & n276 ) | ( n179 & n276 ) ; assign n278 = ( x0 & ~n179 ) | ( x0 & n277 ) | ( ~n179 & n277 ) ; assign n279 = ~n179 & n278 ; assign n280 = x24 & ~x25 ; assign n281 = ~x0 & n280 ; assign n282 = ( x25 & x29 ) | ( x25 & n281 ) | ( x29 & n281 ) ; assign n283 = x28 & n282 ; assign n284 = x0 | x1 ; assign n285 = ( x0 & n283 ) | ( x0 & n284 ) | ( n283 & n284 ) ; assign n286 = ~x0 & x1 ; assign n287 = ( ~x13 & x22 ) | ( ~x13 & n286 ) | ( x22 & n286 ) ; assign n288 = n286 & ~n287 ; assign n289 = ( x29 & ~n41 ) | ( x29 & n288 ) | ( ~n41 & n288 ) ; assign n290 = n41 & n289 ; assign n292 = x1 & x28 ; assign n291 = ~x0 & x24 ; assign n293 = ( x29 & n291 ) | ( x29 & ~n292 ) | ( n291 & ~n292 ) ; assign n294 = n292 & n293 ; assign n295 = x5 | x22 ; assign n296 = ( x5 & n37 ) | ( x5 & n295 ) | ( n37 & n295 ) ; assign n297 = ~x0 & n296 ; assign n298 = ( ~x28 & x30 ) | ( ~x28 & n58 ) | ( x30 & n58 ) ; assign n299 = ~n58 & n298 ; assign n300 = ( x10 & n193 ) | ( x10 & n299 ) | ( n193 & n299 ) ; assign n301 = ~n193 & n300 ; assign n302 = x26 & ~x27 ; assign n303 = x3 & n302 ; assign n304 = ( x26 & n301 ) | ( x26 & ~n303 ) | ( n301 & ~n303 ) ; assign n305 = x0 | n304 ; assign n306 = x3 & x27 ; assign n307 = ( x3 & x26 ) | ( x3 & n306 ) | ( x26 & n306 ) ; assign n308 = ( n301 & ~n306 ) | ( n301 & n307 ) | ( ~n306 & n307 ) ; assign n309 = ( x27 & ~n306 ) | ( x27 & n308 ) | ( ~n306 & n308 ) ; assign n310 = x0 | n309 ; assign n311 = ~x28 & x30 ; assign n312 = ~x0 & n311 ; assign n313 = x10 | x12 ; assign n314 = x9 | n313 ; assign n315 = x12 & x21 ; assign n316 = ( x9 & x29 ) | ( x9 & n315 ) | ( x29 & n315 ) ; assign n317 = ( x12 & x19 ) | ( x12 & x21 ) | ( x19 & x21 ) ; assign n318 = ( ~x12 & x19 ) | ( ~x12 & x20 ) | ( x19 & x20 ) ; assign n319 = n317 & n318 ; assign n320 = ( ~x9 & x29 ) | ( ~x9 & n319 ) | ( x29 & n319 ) ; assign n321 = n316 & n320 ; assign n322 = x10 & n321 ; assign n323 = ( x11 & ~n314 ) | ( x11 & n322 ) | ( ~n314 & n322 ) ; assign n324 = x12 | n77 ; assign n325 = ( n72 & n77 ) | ( n72 & n324 ) | ( n77 & n324 ) ; assign n326 = x9 & ~n323 ; assign n327 = n325 & n326 ; assign n328 = ( n312 & n323 ) | ( n312 & n327 ) | ( n323 & n327 ) ; assign n332 = x3 & ~x29 ; assign n333 = x30 | n332 ; assign n335 = x10 & x11 ; assign n334 = x21 & x29 ; assign n336 = ( x12 & n334 ) | ( x12 & ~n335 ) | ( n334 & ~n335 ) ; assign n337 = n335 & n336 ; assign n349 = ( x9 & x30 ) | ( x9 & ~n337 ) | ( x30 & ~n337 ) ; assign n341 = ~x11 & x12 ; assign n338 = ~x12 & x19 ; assign n339 = ( x21 & x29 ) | ( x21 & ~n338 ) | ( x29 & ~n338 ) ; assign n340 = n338 & n339 ; assign n342 = ( x10 & ~x11 ) | ( x10 & n340 ) | ( ~x11 & n340 ) ; assign n343 = ( x11 & n341 ) | ( x11 & n342 ) | ( n341 & n342 ) ; assign n346 = ~x10 & n334 ; assign n344 = ( x11 & ~x12 ) | ( x11 & n75 ) | ( ~x12 & n75 ) ; assign n345 = n75 & n344 ; assign n347 = n343 | n345 ; assign n348 = ( n343 & n346 ) | ( n343 & n347 ) | ( n346 & n347 ) ; assign n350 = ( x9 & ~x30 ) | ( x9 & n348 ) | ( ~x30 & n348 ) ; assign n351 = n349 & ~n350 ; assign n329 = ( x3 & x29 ) | ( x3 & x30 ) | ( x29 & x30 ) ; assign n330 = ( x2 & x29 ) | ( x2 & ~x30 ) | ( x29 & ~x30 ) ; assign n331 = ~n329 & n330 ; assign n352 = x28 | n331 ; assign n353 = ( n333 & ~n351 ) | ( n333 & n352 ) | ( ~n351 & n352 ) ; assign n354 = ( x0 & ~x28 ) | ( x0 & n353 ) | ( ~x28 & n353 ) ; assign n370 = ( x3 & ~x28 ) | ( x3 & x30 ) | ( ~x28 & x30 ) ; assign n371 = ~x0 & n370 ; assign n358 = ( x11 & ~x12 ) | ( x11 & n139 ) | ( ~x12 & n139 ) ; assign n359 = ~n139 & n358 ; assign n355 = x9 & x12 ; assign n356 = ( x21 & x29 ) | ( x21 & ~n355 ) | ( x29 & ~n355 ) ; assign n357 = n355 & n356 ; assign n360 = n75 & n357 ; assign n361 = ( ~x10 & n359 ) | ( ~x10 & n360 ) | ( n359 & n360 ) ; assign n364 = ~x12 & x21 ; assign n365 = ~x11 & n364 ; assign n366 = ( ~n111 & n142 ) | ( ~n111 & n365 ) | ( n142 & n365 ) ; assign n367 = x9 & n366 ; assign n362 = x20 & x29 ; assign n363 = x19 & n362 ; assign n368 = n361 | n363 ; assign n369 = ( n361 & n367 ) | ( n361 & n368 ) | ( n367 & n368 ) ; assign n372 = ( x28 & x30 ) | ( x28 & ~n369 ) | ( x30 & ~n369 ) ; assign n373 = n371 & ~n372 ; assign n380 = ~x28 & x29 ; assign n377 = x12 & x19 ; assign n374 = ~x0 & x9 ; assign n375 = ( x10 & x11 ) | ( x10 & ~n374 ) | ( x11 & ~n374 ) ; assign n376 = n374 & n375 ; assign n378 = ( x20 & n376 ) | ( x20 & ~n377 ) | ( n376 & ~n377 ) ; assign n379 = n377 & n378 ; assign n381 = ( x30 & n379 ) | ( x30 & ~n380 ) | ( n379 & ~n380 ) ; assign n382 = n380 & n381 ; assign y0 = n40 ; assign y1 = n47 ; assign y2 = n50 ; assign y3 = n54 ; assign y4 = n82 ; assign y5 = n103 ; assign y6 = n129 ; assign y7 = n149 ; assign y8 = n178 ; assign y9 = n202 ; assign y10 = n238 ; assign y11 = n259 ; assign y12 = n279 ; assign y13 = n285 ; assign y14 = n290 ; assign y15 = n294 ; assign y16 = n297 ; assign y17 = n305 ; assign y18 = n310 ; assign y19 = n328 ; assign y20 = n354 ; assign y21 = n373 ; assign y22 = n382 ; endmodule
Thanks for reporting!
When I insert buffer for
inv6
usingdry_run
with the parameteruntil_sat
, I found that thedry_run
is endless.And
while
inmockturtle::buffer_insertion::optimize
can be not finished:Can you help me solve it?
The source of inv6.v: