v2.0: 修复了许多问题,可以作为基准版本了

This commit is contained in:
YuhangQ 2023-08-24 03:14:28 +00:00
parent dcc8a7262b
commit 64dbc5c402
35 changed files with 126169 additions and 77462 deletions

View File

@ -1,59 +1,61 @@
# generated by verilog2bench.py https://gitea.yuhangq.com/YuhangQ/any2bench # generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
# gates: 49
INPUT(NET_1) INPUT(G1)
INPUT(NET_2) INPUT(G2)
INPUT(NET_3) INPUT(G3)
INPUT(NET_4) INPUT(G4)
INPUT(NET_5) INPUT(G5)
INPUT(NET_6) INPUT(G6)
INPUT(NET_7) INPUT(G7)
OUTPUT(NET_112) OUTPUT(G47)
OUTPUT(NET_41) OUTPUT(G49)
OUTPUT(NET_42) OUTPUT(G12)
OUTPUT(NET_45) OUTPUT(G23)
OUTPUT(NET_46) OUTPUT(G46)
OUTPUT(NET_8) OUTPUT(G48)
OUTPUT(NET_9) OUTPUT(G16)
new_n15_ = NOT ( NET_3 ) G8 = NOT ( G1 )
NET_112 = AND ( NET_5, NET_4, new_n15_ ) G9 = OR ( G1, G2 )
new_n17_ = NAND ( NET_2, NET_1 ) G10 = NOT ( G2 )
new_n18_ = OR ( NET_2, NET_1 ) G11 = NAND ( G1, G2 )
new_n19_ = AND ( new_n18_, new_n17_ ) G12 = BUF ( G3 )
new_n20_ = NOT ( NET_1 ) G13 = NOT ( G4 )
new_n21_ = NOT ( NET_2 ) G14 = NOT ( G5 )
new_n22_ = NOR ( new_n21_, new_n20_ ) G15 = NOT ( G6 )
new_n23_ = NOR ( new_n22_, NET_4 ) G16 = BUF ( G7 )
new_n24_ = NAND ( new_n23_, new_n19_, NET_3 ) G17 = NAND ( G8, G2 )
new_n25_ = NAND ( new_n23_, NET_5, NET_3 ) G18 = NOT ( G9 )
new_n26_ = NAND ( NET_4, NET_3 ) G19 = NAND ( G1, G10 )
new_n27_ = NAND ( new_n26_, new_n22_ ) G20 = NOT ( G11 )
new_n28_ = NOT ( NET_4 ) G21 = NAND ( G11, G4 )
new_n29_ = NOR ( NET_5, new_n28_ ) G22 = NAND ( G11, G6 )
new_n30_ = NAND ( new_n29_, new_n15_ ) G23 = AND ( G5, G6, G13 )
NET_41 = NAND ( new_n30_, new_n27_, new_n25_, new_n24_ ) G24 = NAND ( G11, G6, G14 )
new_n32_ = NAND ( new_n18_, new_n17_ ) G25 = NAND ( G5, G15 )
new_n33_ = NAND ( new_n32_, new_n28_, NET_3 ) G26 = NAND ( G9, G15 )
new_n34_ = NOR ( new_n29_, new_n15_ ) G27 = NAND ( G15, G18 )
new_n35_ = OR ( new_n34_, new_n32_ ) G28 = NAND ( G5, G18 )
new_n36_ = NAND ( new_n32_, NET_5, NET_3 ) G29 = NAND ( G17, G19 )
NET_42 = NAND ( new_n36_, new_n35_, new_n33_ ) G30 = NAND ( G20, G15 )
new_n38_ = NAND ( new_n19_, NET_5, NET_3 ) G31 = NAND ( G11, G23 )
new_n39_ = NAND ( new_n29_, new_n22_ ) G32 = NAND ( G4, G25 )
new_n40_ = AND ( new_n39_, new_n38_ ) G33 = NOT ( G25 )
new_n41_ = OR ( new_n33_, new_n22_ ) G34 = NAND ( G11, G25 )
new_n42_ = NAND ( new_n17_, NET_5, new_n28_ ) G35 = NAND ( G4, G25, G9 )
new_n43_ = NAND ( new_n22_, NET_5, NET_3 ) G36 = NAND ( G27, G14, G4 )
new_n44_ = AND ( new_n43_, new_n42_, new_n30_ ) G37 = NAND ( G4, G28, G26 )
NET_45 = NAND ( new_n44_, new_n41_, new_n40_ ) G38 = NOT ( G29 )
new_n46_ = NOT ( NET_5 ) G39 = NAND ( G30, G22, G14, G13 )
new_n47_ = NOR ( new_n46_, NET_4 ) G40 = NOT ( G32 )
new_n48_ = NOR ( new_n47_, NET_3 ) G41 = NAND ( G29, G32 )
new_n49_ = OR ( new_n48_, new_n17_ ) G42 = NAND ( G21, G33 )
new_n50_ = NAND ( new_n17_, new_n46_, new_n28_, new_n15_ ) G43 = NAND ( G20, G33 )
new_n51_ = NAND ( new_n17_, NET_112 ) G44 = NAND ( G13, G34 )
new_n52_ = AND ( new_n51_, new_n50_ ) G45 = NAND ( G38, G40 )
NET_46 = NAND ( new_n52_, new_n49_, new_n40_, new_n24_ ) G46 = NAND ( G24, G37, G42 )
NET_8 = BUF ( NET_6 ) G47 = NAND ( G43, G35, G31, G39 )
NET_9 = BUF ( NET_7 ) G48 = NAND ( G36, G44 )
G49 = NAND ( G41, G45 )

View File

@ -1,187 +1,199 @@
# generated by verilog2bench.py https://gitea.yuhangq.com/YuhangQ/any2bench # generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
INPUT(NET_1) # gates: 160
INPUT(NET_10)
INPUT(NET_11) INPUT(G1)
INPUT(NET_12) INPUT(G2)
INPUT(NET_13) INPUT(G3)
INPUT(NET_14) INPUT(G4)
INPUT(NET_15) INPUT(G5)
INPUT(NET_16) INPUT(G6)
INPUT(NET_17) INPUT(G7)
INPUT(NET_18) INPUT(G8)
INPUT(NET_19) INPUT(G9)
INPUT(NET_2) INPUT(G10)
INPUT(NET_20) INPUT(G11)
INPUT(NET_21) INPUT(G12)
INPUT(NET_22) INPUT(G13)
INPUT(NET_23) INPUT(G14)
INPUT(NET_24) INPUT(G15)
INPUT(NET_25) INPUT(G16)
INPUT(NET_26) INPUT(G17)
INPUT(NET_27) INPUT(G18)
INPUT(NET_28) INPUT(G19)
INPUT(NET_29) INPUT(G20)
INPUT(NET_3) INPUT(G21)
INPUT(NET_30) INPUT(G22)
INPUT(NET_31) INPUT(G23)
INPUT(NET_32) INPUT(G24)
INPUT(NET_33) INPUT(G25)
INPUT(NET_34) INPUT(G26)
INPUT(NET_4) INPUT(G27)
INPUT(NET_5) INPUT(G28)
INPUT(NET_6) INPUT(G29)
INPUT(NET_7) INPUT(G30)
INPUT(NET_8) INPUT(G31)
INPUT(NET_9) INPUT(G32)
OUTPUT(NET_100) INPUT(G33)
OUTPUT(NET_139) INPUT(G34)
OUTPUT(NET_140)
OUTPUT(NET_141) OUTPUT(G156)
OUTPUT(NET_142) OUTPUT(G46)
OUTPUT(NET_143) OUTPUT(G157)
OUTPUT(NET_144) OUTPUT(G151)
OUTPUT(NET_145) OUTPUT(G88)
OUTPUT(NET_146) OUTPUT(G92)
OUTPUT(NET_147) OUTPUT(G150)
OUTPUT(NET_148) OUTPUT(G87)
OUTPUT(NET_149) OUTPUT(G5)
OUTPUT(NET_150) OUTPUT(G149)
OUTPUT(NET_325) OUTPUT(G90)
OUTPUT(NET_35) OUTPUT(G155)
OUTPUT(NET_36) OUTPUT(G160)
OUTPUT(NET_37) OUTPUT(G89)
OUTPUT(NET_38) OUTPUT(G85)
OUTPUT(NET_57) OUTPUT(G159)
OUTPUT(NET_76) OUTPUT(G45)
OUTPUT(NET_77) OUTPUT(G86)
OUTPUT(NET_78) OUTPUT(G152)
OUTPUT(NET_79) OUTPUT(G44)
OUTPUT(NET_80) OUTPUT(G84)
OUTPUT(NET_81) OUTPUT(G35)
OUTPUT(NET_82) OUTPUT(G43)
OUTPUT(NET_83) OUTPUT(G93)
OUTPUT(NET_84) OUTPUT(G106)
OUTPUT(NET_85) OUTPUT(G83)
OUTPUT(NET_86) OUTPUT(G153)
OUTPUT(NET_87) OUTPUT(G154)
OUTPUT(NET_97) OUTPUT(G158)
OUTPUT(NET_98) OUTPUT(G91)
OUTPUT(NET_99) OUTPUT(G109)
new_n69_ = NOT ( NET_33 ) OUTPUT(G108)
new_n70_ = NOR ( NET_31, NET_30, NET_27, NET_26 ) OUTPUT(G82)
new_n71_ = OR ( new_n70_, new_n69_ ) OUTPUT(G107)
new_n72_ = NOT ( new_n71_ )
new_n73_ = NAND ( new_n72_, NET_7, NET_6, NET_5 ) G35 = NOT ( G5 )
new_n74_ = NAND ( new_n71_, NET_20 ) G36 = NOT ( G6 )
NET_100 = NAND ( new_n74_, new_n73_ ) G37 = NOT ( G7 )
new_n76_ = NOT ( NET_28 ) G38 = NOT ( G8 )
new_n77_ = NOT ( NET_25 ) G39 = NAND ( G18, G5 )
new_n78_ = OR ( NET_32, new_n77_ ) G40 = NAND ( G19, G5 )
new_n79_ = OR ( new_n78_, NET_27 ) G41 = NAND ( G20, G5 )
new_n80_ = NOT ( NET_32 ) G42 = NAND ( G21, G5 )
new_n81_ = NOT ( NET_31 ) G43 = BUF ( G22 )
new_n82_ = NAND ( new_n81_, NET_29, new_n77_ ) G44 = BUF ( G23 )
new_n83_ = NAND ( new_n82_, new_n80_ ) G45 = BUF ( G24 )
new_n84_ = NAND ( NET_32, NET_30 ) G46 = BUF ( G25 )
new_n85_ = NAND ( new_n84_, new_n83_ ) G47 = NOT ( G26 )
new_n86_ = NAND ( new_n85_, new_n79_ ) G48 = NAND ( G26, G5 )
new_n87_ = NAND ( new_n86_, NET_34, new_n76_ ) G49 = NAND ( G26, G5 )
new_n88_ = NAND ( NET_34, NET_28 ) G50 = NOT ( G27 )
new_n89_ = OR ( new_n88_, NET_26 ) G51 = NOT ( G28 )
new_n90_ = NAND ( new_n89_, new_n87_, new_n71_ ) G52 = NOT ( G29 )
new_n91_ = NAND ( new_n90_, NET_8, NET_33 ) G53 = NAND ( G29, G5 )
new_n92_ = NOT ( NET_5 ) G54 = NAND ( G30, G5 )
new_n93_ = OR ( new_n90_, new_n92_ ) G55 = NAND ( G30, G5 )
new_n94_ = NOR ( NET_32, NET_25 ) G56 = NOT ( G31 )
new_n95_ = OR ( new_n94_, NET_28 ) G57 = NOT ( G32 )
new_n96_ = NAND ( new_n95_, new_n90_, new_n69_ ) G58 = OR ( G31, G27, G32, G28 )
NET_139 = NAND ( new_n96_, new_n93_, new_n91_ ) G59 = NOT ( G33 )
new_n98_ = NAND ( new_n90_, NET_9, NET_33 ) G60 = OR ( G26, G33 )
new_n99_ = NOT ( NET_6 ) G61 = NAND ( G33, G5 )
new_n100_ = OR ( new_n90_, new_n99_ ) G62 = NAND ( G33, G5 )
new_n101_ = NAND ( new_n90_, new_n78_, new_n69_, new_n76_ ) G63 = NOT ( G34 )
NET_140 = NAND ( new_n101_, new_n100_, new_n98_ ) G64 = NAND ( G27, G35 )
new_n103_ = NAND ( new_n90_, NET_33, NET_10 ) G65 = NAND ( G35, G1 )
new_n104_ = NOT ( NET_7 ) G66 = NAND ( G22, G35 )
new_n105_ = OR ( new_n90_, new_n104_ ) G67 = NAND ( G23, G35 )
new_n106_ = NAND ( new_n90_, new_n69_, new_n80_, new_n76_ ) G68 = NAND ( G24, G35 )
NET_141 = NAND ( new_n106_, new_n105_, new_n103_ ) G69 = NAND ( G25, G35 )
new_n108_ = NAND ( new_n90_, NET_5, new_n69_ ) G70 = NAND ( G3, G35 )
new_n109_ = NAND ( new_n89_, new_n87_, new_n71_, NET_8 ) G71 = NAND ( G35, G28 )
new_n110_ = NAND ( new_n90_, NET_33, NET_11 ) G72 = NAND ( G35, G4 )
NET_142 = NAND ( new_n110_, new_n109_, new_n108_ ) G73 = NAND ( G31, G35 )
new_n112_ = NAND ( new_n90_, NET_6, new_n69_ ) G74 = NAND ( G35, G32 )
new_n113_ = NAND ( new_n89_, new_n87_, new_n71_, NET_9 ) G75 = NAND ( G35, G2 )
new_n114_ = NAND ( new_n90_, NET_33, NET_12 ) G76 = NOT ( G53 )
NET_143 = NAND ( new_n114_, new_n113_, new_n112_ ) G77 = NAND ( G56, G33 )
new_n116_ = NAND ( new_n90_, NET_7, new_n69_ ) G78 = NAND ( G34, G58 )
new_n117_ = NAND ( new_n89_, new_n87_, new_n71_, NET_10 ) G79 = NAND ( G59, G26 )
new_n118_ = NAND ( new_n90_, NET_33, NET_13 ) G80 = NAND ( G59, G30, G57, G47 )
NET_144 = NAND ( new_n118_, new_n117_, new_n116_ ) G81 = NAND ( G52, G60 )
new_n120_ = NAND ( new_n90_, NET_8, new_n69_ ) G82 = NAND ( G53, G64 )
new_n121_ = NAND ( new_n89_, new_n87_, new_n71_, NET_11 ) G83 = NAND ( G53, G65 )
new_n122_ = NAND ( new_n90_, NET_33, NET_14 ) G84 = NAND ( G66, G39 )
NET_145 = NAND ( new_n122_, new_n121_, new_n120_ ) G85 = NAND ( G40, G67 )
new_n124_ = NAND ( new_n90_, NET_9, new_n69_ ) G86 = NAND ( G68, G41 )
new_n125_ = NAND ( new_n89_, new_n87_, new_n71_, NET_12 ) G87 = NAND ( G69, G42 )
new_n126_ = NAND ( new_n90_, NET_33, NET_15 ) G88 = NAND ( G70, G48 )
NET_146 = NAND ( new_n126_, new_n125_, new_n124_ ) G89 = NAND ( G49, G71 )
new_n128_ = NAND ( new_n90_, new_n69_, NET_10 ) G90 = NAND ( G72, G54 )
new_n129_ = NAND ( new_n89_, new_n87_, new_n71_, NET_13 ) G91 = NAND ( G73, G61 )
new_n130_ = NAND ( new_n90_, NET_33, NET_16 ) G92 = NAND ( G55, G74 )
NET_147 = NAND ( new_n130_, new_n129_, new_n128_ ) G93 = NAND ( G75, G62 )
new_n132_ = NAND ( new_n90_, new_n69_, NET_11 ) G94 = NAND ( G76, G50 )
new_n133_ = NAND ( new_n89_, new_n87_, new_n71_, NET_14 ) G95 = NOT ( G78 )
NET_148 = NAND ( new_n133_, new_n132_ ) G96 = NAND ( G18, G78 )
new_n135_ = NAND ( new_n90_, new_n69_, NET_12 ) G97 = NAND ( G78, G19 )
new_n136_ = NAND ( new_n89_, new_n87_, new_n71_, NET_15 ) G98 = NAND ( G78, G20 )
NET_149 = NAND ( new_n136_, new_n135_ ) G99 = NAND ( G78, G21 )
new_n138_ = NAND ( new_n90_, new_n69_, NET_13 ) G100 = NOT ( G79 )
new_n139_ = NAND ( new_n89_, new_n87_, new_n71_, NET_16 ) G101 = NAND ( G38, G6, G37, G95 )
NET_150 = NAND ( new_n139_, new_n138_ ) G102 = NAND ( G7, G38, G36, G95 )
NET_325 = NOT ( NET_34 ) G103 = NAND ( G95, G37, G36, G8 )
new_n142_ = NAND ( NET_325, NET_26 ) G104 = NAND ( G7, G95, G6, G8 )
NET_76 = NAND ( new_n142_, new_n88_ ) G105 = NAND ( G100, G51 )
new_n144_ = NAND ( NET_325, NET_1 ) G106 = NAND ( G96, G101 )
NET_77 = NAND ( new_n144_, new_n88_ ) G107 = NAND ( G97, G102 )
new_n146_ = NAND ( NET_325, NET_21 ) G108 = NAND ( G103, G98 )
new_n147_ = NAND ( NET_34, NET_17 ) G109 = NAND ( G104, G99 )
NET_78 = NAND ( new_n147_, new_n146_ ) G110 = NAND ( G80, G105, G77 )
new_n149_ = NAND ( NET_325, NET_22 ) G111 = NAND ( G52, G110, G5 )
new_n150_ = NAND ( NET_34, NET_18 ) G112 = NAND ( G78, G111, G94 )
NET_79 = NAND ( new_n150_, new_n149_ ) G113 = AND ( G112, G63 )
new_n152_ = NAND ( NET_325, NET_23 ) G114 = AND ( G34, G112 )
new_n153_ = NAND ( NET_34, NET_19 ) G115 = NOT ( G112 )
NET_80 = NAND ( new_n153_, new_n152_ ) G116 = NAND ( G81, G113 )
new_n155_ = NAND ( NET_325, NET_24 ) G117 = NAND ( G52, G113, G79 )
new_n156_ = NAND ( NET_34, NET_20 ) G118 = NAND ( G52, G113, G59 )
NET_81 = NAND ( new_n156_, new_n155_ ) G119 = NAND ( G113, G6 )
new_n158_ = NAND ( NET_325, NET_3 ) G120 = NAND ( G7, G113 )
new_n159_ = NAND ( NET_34, NET_25 ) G121 = NAND ( G113, G8 )
NET_82 = NAND ( new_n159_, new_n158_ ) G122 = NAND ( G113, G9 )
new_n161_ = NAND ( NET_325, NET_27 ) G123 = NAND ( G113, G10 )
NET_83 = NAND ( new_n161_, new_n159_ ) G124 = NAND ( G11, G113 )
new_n163_ = NAND ( NET_4, NET_325 ) G125 = NAND ( G12, G113 )
new_n164_ = NAND ( NET_34, NET_29 ) G126 = NAND ( G13, G113 )
NET_84 = NAND ( new_n164_, new_n163_ ) G127 = NAND ( G113, G14 )
new_n166_ = NAND ( NET_325, NET_30 ) G128 = NAND ( G114, G9 )
new_n167_ = NAND ( NET_34, NET_32 ) G129 = NAND ( G114, G10 )
NET_85 = NAND ( new_n167_, new_n166_ ) G130 = NAND ( G11, G114 )
new_n169_ = OR ( NET_34, new_n81_ ) G131 = NAND ( G12, G114 )
NET_86 = NAND ( new_n169_, new_n164_ ) G132 = NAND ( G13, G114 )
new_n171_ = NAND ( NET_325, NET_2 ) G133 = NAND ( G114, G14 )
NET_87 = NAND ( new_n171_, new_n167_ ) G134 = NAND ( G114, G15 )
new_n173_ = NAND ( new_n72_, new_n104_, new_n99_, NET_5 ) G135 = NAND ( G114, G16 )
new_n174_ = NAND ( new_n71_, NET_17 ) G136 = NAND ( G17, G114 )
NET_97 = NAND ( new_n174_, new_n173_ ) G137 = NAND ( G6, G115 )
new_n176_ = NAND ( new_n72_, new_n104_, NET_6, new_n92_ ) G138 = NAND ( G7, G115 )
new_n177_ = NAND ( new_n71_, NET_18 ) G139 = NAND ( G115, G8 )
NET_98 = NAND ( new_n177_, new_n176_ ) G140 = NAND ( G9, G115 )
new_n179_ = NAND ( new_n72_, NET_7, new_n99_, new_n92_ ) G141 = NAND ( G10, G115 )
new_n180_ = NAND ( new_n71_, NET_19 ) G142 = NAND ( G11, G115 )
NET_99 = NAND ( new_n180_, new_n179_ ) G143 = NAND ( G12, G115 )
NET_35 = BUF ( NET_21 ) G144 = NAND ( G13, G115 )
NET_36 = BUF ( NET_22 ) G145 = NAND ( G115, G14 )
NET_37 = BUF ( NET_23 ) G146 = NAND ( G15, G115 )
NET_38 = BUF ( NET_24 ) G147 = NAND ( G115, G16 )
NET_57 = BUF ( NET_34 ) G148 = NAND ( G17, G115 )
G149 = NAND ( G116, G137, G128 )
G150 = NAND ( G129, G138, G117 )
G151 = NAND ( G118, G139, G130 )
G152 = NAND ( G119, G131, G140 )
G153 = NAND ( G141, G132, G120 )
G154 = NAND ( G121, G142, G133 )
G155 = NAND ( G143, G122, G134 )
G156 = NAND ( G144, G123, G135 )
G157 = NAND ( G136, G145, G124 )
G158 = NAND ( G146, G125 )
G159 = NAND ( G126, G147 )
G160 = NAND ( G148, G127 )

File diff suppressed because it is too large Load Diff

View File

@ -1,72 +1,75 @@
# generated by verilog2bench.py https://gitea.yuhangq.com/YuhangQ/any2bench # generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
INPUT(NET_1) # gates: 56
INPUT(NET_10)
INPUT(NET_11) INPUT(G1)
INPUT(NET_2) INPUT(G2)
INPUT(NET_3) INPUT(G3)
INPUT(NET_4) INPUT(G4)
INPUT(NET_5) INPUT(G5)
INPUT(NET_6) INPUT(G6)
INPUT(NET_7) INPUT(G7)
INPUT(NET_8) INPUT(G8)
INPUT(NET_9) INPUT(G9)
OUTPUT(NET_12) INPUT(G10)
OUTPUT(NET_13) INPUT(G11)
OUTPUT(NET_135)
OUTPUT(NET_136) OUTPUT(G54)
OUTPUT(NET_14) OUTPUT(G55)
OUTPUT(NET_15) OUTPUT(G25)
OUTPUT(NET_16) OUTPUT(G26)
OUTPUT(NET_17) OUTPUT(G28)
OUTPUT(NET_48) OUTPUT(G51)
OUTPUT(NET_49) OUTPUT(G50)
OUTPUT(NET_50) OUTPUT(G27)
OUTPUT(NET_51) OUTPUT(G56)
OUTPUT(NET_52) OUTPUT(G13)
OUTPUT(NET_57) OUTPUT(G24)
OUTPUT(NET_60) OUTPUT(G48)
new_n27_ = OR ( NET_5, NET_3 ) OUTPUT(G53)
new_n28_ = NOT ( NET_4 ) OUTPUT(G49)
new_n29_ = OR ( new_n28_, NET_1 )
new_n30_ = OR ( new_n29_, new_n27_ ) G12 = NOT ( G1 )
new_n31_ = NAND ( NET_5, NET_3 ) G13 = BUF ( G3 )
new_n32_ = NOR ( new_n31_, new_n28_ ) G14 = NOT ( G4 )
new_n33_ = OR ( new_n32_, NET_2 ) G15 = NOT ( G5 )
NET_135 = NAND ( new_n33_, new_n30_ ) G16 = NAND ( G1, G5 )
new_n35_ = NOR ( new_n28_, NET_1 ) G17 = NAND ( G4, G5 )
new_n36_ = NOT ( NET_1 ) G18 = AND ( G4, G6, G5 )
new_n37_ = NOR ( NET_4, new_n36_ ) G19 = NOT ( G6 )
new_n38_ = NOR ( new_n37_, new_n35_ ) G20 = OR ( G4, G6 )
new_n39_ = NAND ( NET_4, NET_1 ) G21 = OR ( G6, G5 )
new_n40_ = NAND ( new_n39_, NET_5 ) G22 = NAND ( G4, G6 )
NET_48 = AND ( new_n40_, new_n38_, NET_3 ) G23 = NAND ( G6, G5 )
new_n42_ = NOT ( NET_5 ) G24 = BUF ( G7 )
new_n43_ = NAND ( new_n42_, new_n28_, NET_3 ) G25 = BUF ( G8 )
new_n44_ = NOT ( NET_3 ) G26 = BUF ( G9 )
new_n45_ = NAND ( NET_5, new_n28_, new_n44_, new_n36_ ) G27 = BUF ( G10 )
new_n46_ = NAND ( NET_3, NET_1 ) G28 = BUF ( G11 )
NET_49 = NAND ( new_n46_, new_n45_, new_n43_ ) G29 = NAND ( G14, G1, G6 )
new_n48_ = OR ( new_n43_, NET_1 ) G30 = NAND ( G15, G14, G6 )
new_n49_ = OR ( new_n27_, new_n28_ ) G31 = NAND ( G15, G1 )
new_n50_ = NAND ( NET_5, new_n44_, NET_1 ) G32 = NOT ( G16 )
NET_50 = NAND ( new_n50_, new_n49_, new_n48_, new_n39_ ) G33 = OR ( G18, G2 )
new_n52_ = OR ( new_n37_, new_n42_ ) G34 = NAND ( G4, G12, G19, G15 )
new_n53_ = OR ( new_n27_, NET_4 ) G35 = NAND ( G19, G1 )
NET_51 = NAND ( new_n53_, new_n52_, new_n29_ ) G36 = NOT ( G20 )
new_n55_ = OR ( new_n39_, NET_3 ) G37 = NAND ( G21, G12 )
new_n56_ = AND ( new_n31_, new_n27_ ) G38 = NOT ( G30 )
NET_52 = NAND ( new_n56_, new_n55_, new_n38_ ) G39 = NAND ( G4, G32 )
new_n58_ = NAND ( new_n56_, new_n28_ ) G40 = NAND ( G19, G32 )
new_n59_ = OR ( new_n39_, NET_5 ) G41 = NAND ( G35, G5 )
NET_57 = NAND ( new_n59_, new_n58_, new_n46_ ) G42 = NAND ( G36, G5 )
new_n61_ = XOR ( new_n31_, NET_4 ) G43 = NAND ( G12, G36, G5 )
new_n62_ = OR ( new_n61_, new_n56_ ) G44 = NAND ( G15, G36 )
new_n63_ = NAND ( new_n62_, new_n58_ ) G45 = NAND ( G4, G37 )
NET_60 = NAND ( new_n63_, NET_1 ) G46 = NAND ( G4, G37 )
NET_12 = BUF ( NET_6 ) G47 = NAND ( G38, G12 )
NET_13 = BUF ( NET_7 ) G48 = NAND ( G34, G39 )
NET_136 = NAND ( new_n33_, new_n30_ ) G49 = NAND ( G20, G22, G31, G41 )
NET_14 = BUF ( NET_8 ) G50 = NAND ( G16, G42, G34, G29 )
NET_15 = BUF ( NET_9 ) G51 = NAND ( G33, G43 )
NET_16 = BUF ( NET_10 ) G52 = AND ( G23, G44 )
NET_17 = BUF ( NET_11 ) G53 = NAND ( G40, G46, G30 )
G54 = NAND ( G47, G45 )
G55 = NAND ( G52, G37 )
G56 = NAND ( G17, G1, G52 )

View File

@ -1,477 +1,503 @@
# generated by verilog2bench.py https://gitea.yuhangq.com/YuhangQ/any2bench # generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
INPUT(NET_1) # gates: 441
INPUT(NET_10)
INPUT(NET_11) INPUT(G1)
INPUT(NET_12) INPUT(G2)
INPUT(NET_13) INPUT(G3)
INPUT(NET_14) INPUT(G4)
INPUT(NET_15) INPUT(G5)
INPUT(NET_16) INPUT(G6)
INPUT(NET_17) INPUT(G7)
INPUT(NET_18) INPUT(G8)
INPUT(NET_19) INPUT(G9)
INPUT(NET_2) INPUT(G10)
INPUT(NET_20) INPUT(G11)
INPUT(NET_21) INPUT(G12)
INPUT(NET_22) INPUT(G13)
INPUT(NET_23) INPUT(G14)
INPUT(NET_24) INPUT(G15)
INPUT(NET_25) INPUT(G16)
INPUT(NET_26) INPUT(G17)
INPUT(NET_27) INPUT(G18)
INPUT(NET_28) INPUT(G19)
INPUT(NET_29) INPUT(G20)
INPUT(NET_3) INPUT(G21)
INPUT(NET_30) INPUT(G22)
INPUT(NET_31) INPUT(G23)
INPUT(NET_32) INPUT(G24)
INPUT(NET_33) INPUT(G25)
INPUT(NET_34) INPUT(G26)
INPUT(NET_35) INPUT(G27)
INPUT(NET_36) INPUT(G28)
INPUT(NET_37) INPUT(G29)
INPUT(NET_38) INPUT(G30)
INPUT(NET_39) INPUT(G31)
INPUT(NET_4) INPUT(G32)
INPUT(NET_40) INPUT(G33)
INPUT(NET_41) INPUT(G34)
INPUT(NET_42) INPUT(G35)
INPUT(NET_43) INPUT(G36)
INPUT(NET_44) INPUT(G37)
INPUT(NET_45) INPUT(G38)
INPUT(NET_46) INPUT(G39)
INPUT(NET_47) INPUT(G40)
INPUT(NET_48) INPUT(G41)
INPUT(NET_49) INPUT(G42)
INPUT(NET_5) INPUT(G43)
INPUT(NET_50) INPUT(G44)
INPUT(NET_6) INPUT(G45)
INPUT(NET_7) INPUT(G46)
INPUT(NET_8) INPUT(G47)
INPUT(NET_9) INPUT(G48)
OUTPUT(NET_183) INPUT(G49)
OUTPUT(NET_184) INPUT(G50)
OUTPUT(NET_185)
OUTPUT(NET_186) OUTPUT(G246)
OUTPUT(NET_189) OUTPUT(G390)
OUTPUT(NET_206) OUTPUT(G247)
OUTPUT(NET_209) OUTPUT(G368)
OUTPUT(NET_240) OUTPUT(G420)
OUTPUT(NET_241) OUTPUT(G350)
OUTPUT(NET_242) OUTPUT(G57)
OUTPUT(NET_243) OUTPUT(G430)
OUTPUT(NET_244) OUTPUT(G405)
OUTPUT(NET_249) OUTPUT(G185)
OUTPUT(NET_263) OUTPUT(G392)
OUTPUT(NET_289) OUTPUT(G248)
OUTPUT(NET_290) OUTPUT(G228)
OUTPUT(NET_291) OUTPUT(G432)
OUTPUT(NET_292) OUTPUT(G441)
OUTPUT(NET_328) OUTPUT(G365)
OUTPUT(NET_329) OUTPUT(G250)
OUTPUT(NET_330) OUTPUT(G347)
OUTPUT(NET_331) OUTPUT(G206)
OUTPUT(NET_341) OUTPUT(G253)
OUTPUT(NET_342) OUTPUT(G271)
OUTPUT(NET_343) OUTPUT(G440)
OUTPUT(NET_344) OUTPUT(G389)
OUTPUT(NET_353) OUTPUT(G218)
OUTPUT(NET_354) OUTPUT(G55)
OUTPUT(NET_355) OUTPUT(G418)
OUTPUT(NET_356) OUTPUT(G307)
OUTPUT(NET_369) OUTPUT(G375)
OUTPUT(NET_370) OUTPUT(G366)
OUTPUT(NET_371) OUTPUT(G349)
OUTPUT(NET_372) OUTPUT(G58)
OUTPUT(NET_382) OUTPUT(G431)
OUTPUT(NET_383) OUTPUT(G406)
OUTPUT(NET_384) OUTPUT(G184)
OUTPUT(NET_385) OUTPUT(G225)
OUTPUT(NET_395) OUTPUT(G183)
OUTPUT(NET_396) OUTPUT(G433)
OUTPUT(NET_397) OUTPUT(G419)
OUTPUT(NET_398) OUTPUT(G403)
OUTPUT(NET_410) OUTPUT(G249)
OUTPUT(NET_411) OUTPUT(G182)
OUTPUT(NET_412) OUTPUT(G377)
OUTPUT(NET_413) OUTPUT(G367)
OUTPUT(NET_418) OUTPUT(G376)
OUTPUT(NET_419) OUTPUT(G378)
OUTPUT(NET_420) OUTPUT(G227)
OUTPUT(NET_51) OUTPUT(G56)
OUTPUT(NET_52) OUTPUT(G52)
OUTPUT(NET_53) OUTPUT(G54)
OUTPUT(NET_54) OUTPUT(G404)
OUTPUT(NET_55) OUTPUT(G417)
OUTPUT(NET_56) OUTPUT(G59)
OUTPUT(NET_57) OUTPUT(G226)
OUTPUT(NET_58) OUTPUT(G391)
new_n108_ = NOT ( NET_23 ) OUTPUT(G439)
new_n109_ = NOT ( NET_24 ) OUTPUT(G348)
new_n110_ = NAND ( NET_25, new_n109_, new_n108_ ) OUTPUT(G53)
new_n111_ = OR ( new_n110_, NET_22 )
new_n112_ = NOT ( NET_25 ) G51 = NOT ( G1 )
new_n113_ = NAND ( new_n112_, NET_24, new_n108_, NET_22 ) G52 = BUF ( G2 )
new_n114_ = NAND ( new_n113_, new_n111_ ) G53 = BUF ( G3 )
new_n115_ = NOT ( NET_48 ) G54 = BUF ( G4 )
new_n116_ = OR ( NET_50, NET_49 ) G55 = BUF ( G5 )
new_n117_ = NOR ( new_n116_, new_n115_ ) G56 = BUF ( G6 )
new_n118_ = NAND ( new_n117_, new_n114_ ) G57 = BUF ( G7 )
new_n119_ = NOT ( NET_34 ) G58 = BUF ( G8 )
new_n120_ = OR ( new_n117_, new_n119_ ) G59 = BUF ( G9 )
NET_183 = NAND ( new_n120_, new_n118_ ) G60 = NOT ( G18 )
new_n122_ = NOT ( NET_36 ) G61 = NOT ( G19 )
new_n123_ = OR ( new_n117_, new_n122_ ) G62 = NOT ( G20 )
NET_184 = NAND ( new_n123_, new_n118_ ) G63 = NOT ( G21 )
new_n125_ = NOT ( NET_44 ) G64 = NOT ( G22 )
new_n126_ = OR ( new_n117_, new_n125_ ) G65 = NOT ( G23 )
NET_185 = NAND ( new_n126_, new_n118_ ) G66 = NOT ( G24 )
new_n128_ = NOT ( NET_47 ) G67 = OR ( G24, G23, G22 )
new_n129_ = OR ( new_n117_, new_n128_ ) G68 = NOT ( G25 )
NET_186 = NAND ( new_n129_, new_n118_ ) G69 = NAND ( G24, G25 )
new_n131_ = NOR ( new_n109_, NET_22 ) G70 = NOR ( G26, G29, G27, G28 )
new_n132_ = OR ( new_n131_, new_n112_, new_n108_ ) G71 = NOT ( G30 )
new_n133_ = NAND ( new_n132_, new_n113_, new_n110_ ) G72 = NOT ( G31 )
new_n134_ = NAND ( new_n133_, new_n117_ ) G73 = NOT ( G33 )
new_n135_ = NOT ( NET_35 ) G74 = NOT ( G48 )
new_n136_ = OR ( new_n117_, new_n135_ ) G75 = NOT ( G49 )
NET_189 = NAND ( new_n136_, new_n134_ ) G76 = NAND ( G49, G48 )
new_n138_ = NAND ( NET_49, NET_48 ) G77 = OR ( G49, G48 )
new_n139_ = NOT ( NET_18 ) G78 = AND ( G1, G50 )
new_n140_ = NOT ( NET_19 ) G79 = NOT ( G50 )
new_n141_ = NOR ( new_n112_, new_n109_ ) G80 = OR ( G49, G50 )
new_n142_ = AND ( new_n141_, NET_23 ) G81 = NAND ( G48, G50 )
new_n143_ = NOT ( NET_20 ) G82 = OR ( G48, G50 )
new_n144_ = NOT ( NET_21 ) G83 = NAND ( G49, G50 )
new_n145_ = AND ( NET_22, new_n144_, new_n143_ ) G84 = AND ( G62, G60, G61, G22, G63 )
new_n146_ = NAND ( new_n145_, new_n142_, new_n140_, new_n139_ ) G85 = AND ( G65, G22 )
new_n147_ = NOR ( new_n146_, new_n138_ ) G86 = NAND ( G66, G25 )
new_n148_ = NOR ( NET_49, NET_48 ) G87 = NAND ( G65, G64, G66, G25 )
new_n149_ = NOR ( new_n148_, new_n147_ ) G88 = NOT ( G69 )
new_n150_ = OR ( new_n149_, NET_1 ) G89 = NAND ( G71, G73, G32, G72, G70 )
new_n151_ = NOR ( NET_50, NET_48 ) G90 = NAND ( G74, G27 )
new_n152_ = NOT ( new_n151_ ) G91 = NAND ( G74, G28 )
NET_206 = NAND ( new_n152_, new_n150_, new_n116_ ) G92 = NAND ( G74, G29 )
new_n154_ = NOT ( new_n114_ ) G93 = NAND ( G74, G30 )
new_n155_ = NAND ( new_n141_, new_n108_, NET_22 ) G94 = NAND ( G31, G74 )
new_n156_ = NAND ( new_n155_, new_n154_ ) G95 = NAND ( G74, G32 )
new_n157_ = NAND ( new_n156_, new_n117_ ) G96 = NAND ( G74, G33 )
new_n158_ = NOT ( NET_46 ) G97 = NAND ( G75, G48 )
new_n159_ = OR ( new_n117_, new_n158_ ) G98 = NOT ( G76 )
NET_209 = NAND ( new_n159_, new_n157_ ) G99 = NOT ( G77 )
new_n161_ = NOT ( NET_49 ) G100 = NAND ( G77, G69 )
new_n162_ = NOT ( NET_1 ) G101 = NAND ( G77, G68 )
new_n163_ = NOR ( new_n146_, new_n162_ ) G102 = NAND ( G74, G78 )
new_n164_ = NOR ( new_n163_, new_n161_ ) G103 = NAND ( G78, G75 )
new_n165_ = OR ( new_n164_, new_n115_ ) G104 = NOT ( G80 )
new_n166_ = NOT ( NET_50 ) G105 = NOT ( G81 )
new_n167_ = NOR ( new_n166_, new_n161_ ) G106 = NAND ( G81, G80, G48 )
new_n168_ = NOT ( new_n167_ ) G107 = NOT ( G82 )
NET_240 = NAND ( new_n168_, new_n165_ ) G108 = NOT ( G83 )
new_n170_ = NAND ( new_n146_, NET_49, NET_48 ) G109 = NAND ( G83, G37 )
new_n171_ = NAND ( NET_50, new_n115_, NET_1 ) G110 = NAND ( G38, G83 )
new_n172_ = NAND ( new_n171_, new_n170_, new_n168_ ) G111 = NAND ( G83, G39 )
NET_241 = NOR ( new_n172_, new_n139_ ) G112 = NAND ( G83, G40 )
NET_242 = NOR ( new_n172_, new_n140_ ) G113 = NAND ( G41, G83 )
NET_243 = NOR ( new_n172_, new_n143_ ) G114 = NAND ( G42, G83 )
NET_244 = NOR ( new_n172_, new_n144_ ) G115 = NAND ( G43, G83 )
new_n177_ = NOT ( NET_22 ) G116 = NAND ( G85, G24, G68 )
new_n178_ = NAND ( new_n109_, new_n108_, new_n177_ ) G117 = NAND ( G88, G23 )
new_n179_ = NAND ( new_n178_, new_n155_, new_n154_ ) G118 = NAND ( G85, G88 )
new_n180_ = NAND ( new_n179_, new_n117_ ) G119 = NOT ( G89 )
new_n181_ = NOT ( NET_45 ) G120 = NAND ( G99, G50 )
new_n182_ = OR ( new_n117_, new_n181_ ) G121 = NAND ( G99, G78 )
NET_249 = NAND ( new_n182_, new_n180_ ) G122 = NAND ( G104, G48 )
new_n184_ = NOR ( new_n146_, NET_1 ) G123 = NAND ( G104, G42 )
new_n185_ = NOR ( new_n184_, NET_50 ) G124 = NAND ( G38, G104 )
new_n186_ = NOR ( new_n185_, new_n151_ ) G125 = NAND ( G104, G41 )
new_n187_ = OR ( new_n186_, new_n161_ ) G126 = NAND ( G104, G37 )
new_n188_ = NAND ( NET_50, new_n161_, NET_1 ) G127 = NAND ( G43, G104 )
new_n189_ = NAND ( NET_50, NET_48 ) G128 = NAND ( G104, G39 )
NET_263 = NAND ( new_n189_, new_n188_, new_n187_ ) G129 = NAND ( G104, G40 )
new_n191_ = NOT ( new_n148_ ) G130 = NAND ( G105, G47 )
new_n192_ = NAND ( new_n172_, new_n191_ ) G131 = NAND ( G105, G36 )
new_n193_ = NOT ( new_n192_ ) G132 = NAND ( G105, G44 )
new_n194_ = NAND ( new_n193_, new_n142_, new_n177_ ) G133 = NAND ( G105, G34 )
new_n195_ = OR ( new_n148_, new_n142_ ) G134 = NAND ( G105, G46 )
new_n196_ = NAND ( new_n195_, new_n172_ ) G135 = NAND ( G105, G35 )
new_n197_ = NAND ( new_n196_, NET_22 ) G136 = NAND ( G105, G45 )
NET_289 = NAND ( new_n197_, new_n194_ ) G137 = NAND ( G27, G106 )
new_n199_ = NAND ( new_n193_, new_n141_, new_n108_ ) G138 = NAND ( G28, G106 )
new_n200_ = OR ( new_n148_, new_n141_ ) G139 = NAND ( G29, G106 )
new_n201_ = NAND ( new_n200_, new_n172_ ) G140 = NAND ( G106, G30 )
new_n202_ = NAND ( new_n201_, NET_23 ) G141 = NAND ( G31, G106 )
NET_290 = NAND ( new_n202_, new_n199_ ) G142 = NAND ( G106, G32 )
new_n204_ = NAND ( new_n193_, NET_25, new_n109_ ) G143 = NAND ( G33, G106 )
new_n205_ = OR ( new_n148_, NET_25 ) G144 = NAND ( G107, G49 )
new_n206_ = NAND ( new_n205_, new_n172_ ) G145 = NAND ( G116, G87 )
new_n207_ = NAND ( new_n206_, NET_24 ) G146 = NOT ( G117 )
NET_291 = NAND ( new_n207_, new_n204_ ) G147 = NAND ( G117, G77 )
new_n209_ = OR ( new_n192_, NET_25 ) G148 = NOT ( G122 )
new_n210_ = OR ( new_n172_, new_n112_ ) G149 = NAND ( G34, G122 )
NET_292 = NAND ( new_n210_, new_n209_ ) G150 = NAND ( G122, G36 )
new_n212_ = NOT ( NET_17 ) G151 = NAND ( G122, G44 )
new_n213_ = NOR ( new_n191_, new_n166_ ) G152 = NAND ( G47, G122 )
new_n214_ = NOR ( new_n213_, new_n147_ ) G153 = NAND ( G35, G122 )
new_n215_ = NOR ( new_n214_, NET_1 ) G154 = NAND ( G122, G45 )
new_n216_ = NOT ( NET_33 ) G155 = NAND ( G46, G122 )
new_n217_ = NOR ( NET_31, NET_30 ) G156 = NAND ( G123, G90, G130 )
new_n218_ = NOR ( NET_29, NET_28, NET_27, NET_26 ) G157 = NAND ( G131, G91, G124 )
new_n219_ = NAND ( new_n218_, new_n217_, new_n216_, NET_32 ) G158 = NAND ( G132, G125, G92 )
new_n220_ = NAND ( new_n219_, new_n215_, NET_48 ) G159 = NAND ( G133, G93, G126 )
new_n221_ = OR ( new_n220_, new_n212_ ) G160 = NAND ( G127, G134, G94 )
new_n222_ = NOT ( NET_9 ) G161 = NAND ( G128, G135, G95 )
new_n223_ = OR ( new_n215_, new_n222_ ) G162 = NAND ( G136, G76, G96, G129 )
new_n224_ = NAND ( new_n166_, new_n161_, NET_40 ) G163 = NAND ( G97, G144 )
new_n225_ = OR ( new_n189_, new_n181_ ) G164 = NOT ( G145 )
new_n226_ = OR ( NET_48, new_n216_ ) G165 = NAND ( G146, G84 )
new_n227_ = NAND ( new_n226_, new_n225_, new_n224_, new_n138_ ) G166 = NAND ( G146, G22 )
new_n228_ = OR ( new_n138_, new_n212_ ) G167 = NAND ( G148, G145 )
new_n229_ = NAND ( new_n166_, NET_49, NET_48 ) G168 = NOT ( G156 )
new_n230_ = NAND ( new_n229_, NET_33 ) G169 = NOT ( G157 )
new_n231_ = NAND ( new_n230_, new_n228_ ) G170 = NOT ( G158 )
new_n232_ = AND ( new_n231_, new_n227_ ) G171 = NOT ( G159 )
new_n233_ = NOR ( new_n231_, new_n227_ ) G172 = NOT ( G160 )
new_n234_ = OR ( new_n233_, new_n232_ ) G173 = NOT ( G161 )
new_n235_ = NAND ( new_n215_, NET_48 ) G174 = NOT ( G162 )
new_n236_ = NOR ( new_n219_, new_n235_ ) G175 = AND ( G163, G82 )
new_n237_ = NOT ( new_n236_ ) G176 = AND ( G74, G163 )
new_n238_ = OR ( new_n237_, new_n234_ ) G177 = NOT ( G163 )
NET_328 = NAND ( new_n238_, new_n223_, new_n221_ ) G178 = NAND ( G118, G164 )
new_n240_ = NAND ( new_n148_, NET_50, NET_1 ) G179 = NAND ( G98, G165 )
new_n241_ = OR ( new_n219_, new_n170_ ) G180 = NOT ( G165 )
new_n242_ = NAND ( new_n241_, new_n240_ ) G181 = NAND ( G86, G164, G166 )
new_n243_ = NAND ( new_n242_, NET_48 ) G182 = NAND ( G167, G152 )
new_n244_ = OR ( new_n243_, new_n234_ ) G183 = NAND ( G167, G151 )
new_n245_ = OR ( new_n242_, new_n212_ ) G184 = NAND ( G167, G150 )
NET_329 = NAND ( new_n245_, new_n244_ ) G185 = NAND ( G167, G149 )
new_n247_ = NOR ( NET_49, new_n115_ ) G186 = NAND ( G176, G145 )
new_n248_ = NOT ( new_n247_ ) G187 = NAND ( G26, G177 )
new_n249_ = OR ( new_n248_, new_n234_ ) G188 = NAND ( G177, G27 )
new_n250_ = NOR ( new_n151_, new_n161_ ) G189 = NAND ( G177, G28 )
new_n251_ = NOR ( new_n250_, new_n148_ ) G190 = NAND ( G177, G29 )
new_n252_ = OR ( new_n251_, new_n216_ ) G191 = NAND ( G177, G30 )
new_n253_ = AND ( new_n251_, new_n115_ ) G192 = NAND ( G31, G177 )
new_n254_ = NAND ( new_n253_, new_n179_ ) G193 = NAND ( G177, G32 )
NET_330 = NAND ( new_n254_, new_n252_, new_n249_ ) G194 = NAND ( G177, G33 )
new_n256_ = NAND ( new_n168_, NET_40 ) G195 = NOT ( G178 )
new_n257_ = OR ( new_n234_, new_n168_ ) G196 = NAND ( G178, G176 )
NET_331 = NAND ( new_n257_, new_n256_ ) G197 = NAND ( G148, G178 )
new_n259_ = NOT ( NET_16 ) G198 = NAND ( G179, G83, G102 )
new_n260_ = OR ( new_n138_, new_n259_ ) G199 = NOT ( G179 )
new_n261_ = NAND ( new_n229_, NET_32 ) G200 = NAND ( G98, G180 )
new_n262_ = NAND ( new_n261_, new_n260_ ) G201 = NAND ( G180, G1 )
new_n263_ = NOR ( new_n262_, new_n232_ ) G202 = NAND ( G51, G180 )
new_n264_ = NOT ( new_n232_ ) G203 = NAND ( G176, G181 )
new_n265_ = NOT ( new_n262_ ) G204 = NAND ( G148, G181 )
new_n266_ = NOR ( new_n265_, new_n264_ ) G205 = NAND ( G195, G67 )
new_n267_ = NAND ( new_n166_, new_n161_, NET_39 ) G206 = NAND ( G155, G197 )
new_n268_ = NOT ( NET_32 ) G207 = AND ( G77, G198 )
new_n269_ = OR ( NET_48, new_n268_ ) G208 = NOT ( G198 )
new_n270_ = OR ( new_n189_, new_n135_ ) G209 = NAND ( G147, G198 )
new_n271_ = NAND ( new_n270_, new_n269_, new_n267_ ) G210 = NAND ( G100, G198 )
new_n272_ = OR ( new_n271_, new_n266_, new_n263_ ) G211 = NAND ( G101, G198 )
new_n273_ = NAND ( new_n271_, new_n264_ ) G212 = NAND ( G119, G199 )
new_n274_ = NAND ( new_n273_, new_n265_ ) G213 = NAND ( G200, G77 )
new_n275_ = NAND ( new_n271_, new_n232_ ) G214 = NAND ( G200, G120 )
new_n276_ = NAND ( new_n275_, new_n262_ ) G215 = NAND ( G200, G179 )
new_n277_ = NAND ( new_n276_, new_n274_ ) G216 = NAND ( G201, G49 )
new_n278_ = NAND ( new_n277_, new_n272_ ) G217 = NAND ( G202, G79 )
new_n279_ = NAND ( new_n278_, new_n236_ ) G218 = NAND ( G204, G153 )
new_n280_ = NOT ( NET_8 ) G219 = NAND ( G205, G176 )
new_n281_ = OR ( new_n215_, new_n280_ ) G220 = NAND ( G205, G148 )
new_n282_ = OR ( new_n220_, new_n259_ ) G221 = NAND ( G146, G64, G207 )
NET_341 = NAND ( new_n282_, new_n281_, new_n279_ ) G222 = NAND ( G88, G65, G207 )
new_n284_ = NOT ( new_n243_ ) G223 = NAND ( G207, G25, G66 )
new_n285_ = NAND ( new_n278_, new_n284_ ) G224 = NAND ( G207, G68 )
new_n286_ = OR ( new_n242_, new_n259_ ) G225 = AND ( G21, G208 )
NET_342 = NAND ( new_n286_, new_n285_ ) G226 = AND ( G20, G208 )
new_n288_ = NAND ( new_n278_, new_n247_ ) G227 = AND ( G208, G19 )
new_n289_ = NAND ( new_n253_, new_n114_ ) G228 = AND ( G208, G18 )
new_n290_ = NOR ( new_n131_, new_n108_ ) G229 = NAND ( G208, G25 )
new_n291_ = OR ( new_n290_, new_n109_ ) G230 = NAND ( G209, G22 )
new_n292_ = NAND ( new_n291_, new_n253_, NET_25 ) G231 = NAND ( G210, G23 )
new_n293_ = OR ( new_n251_, new_n268_ ) G232 = NAND ( G24, G211 )
NET_343 = NAND ( new_n293_, new_n292_, new_n289_, new_n288_ ) G233 = NAND ( G212, G121 )
new_n295_ = NAND ( new_n168_, NET_39 ) G234 = NAND ( G51, G213 )
new_n296_ = NAND ( new_n278_, new_n167_ ) G235 = NAND ( G51, G214 )
NET_344 = NAND ( new_n296_, new_n295_ ) G236 = AND ( G10, G215 )
new_n298_ = NOT ( NET_15 ) G237 = NAND ( G11, G215 )
new_n299_ = OR ( new_n138_, new_n298_ ) G238 = NAND ( G12, G215 )
new_n300_ = NAND ( new_n229_, NET_31 ) G239 = NAND ( G13, G215 )
new_n301_ = NAND ( new_n300_, new_n299_ ) G240 = NAND ( G14, G215 )
new_n302_ = NAND ( new_n166_, new_n161_, NET_43 ) G241 = NAND ( G15, G215 )
new_n303_ = NOT ( NET_31 ) G242 = NAND ( G16, G215 )
new_n304_ = OR ( NET_48, new_n303_ ) G243 = NAND ( G215, G17 )
new_n305_ = OR ( new_n189_, new_n158_ ) G244 = NAND ( G216, G48 )
new_n306_ = NAND ( new_n305_, new_n304_, new_n302_ ) G245 = NAND ( G217, G82 )
new_n307_ = NAND ( new_n306_, new_n301_ ) G246 = NAND ( G154, G220 )
new_n308_ = OR ( new_n306_, new_n301_ ) G247 = NAND ( G224, G229 )
new_n309_ = NAND ( new_n308_, new_n307_ ) G248 = NAND ( G221, G230 )
new_n310_ = OR ( new_n271_, new_n232_ ) G249 = NAND ( G222, G231 )
new_n311_ = NAND ( new_n310_, new_n262_ ) G250 = NAND ( G232, G223 )
new_n312_ = NAND ( new_n311_, new_n275_ ) G251 = AND ( G233, G48 )
new_n313_ = XOR ( new_n312_, new_n309_ ) G252 = NOT ( G233 )
new_n314_ = OR ( new_n313_, new_n237_ ) G253 = NAND ( G234, G82, G80 )
new_n315_ = NOT ( NET_7 ) G254 = NOT ( G235 )
new_n316_ = OR ( new_n215_, new_n315_ ) G255 = NAND ( G2, G235 )
new_n317_ = OR ( new_n220_, new_n298_ ) G256 = NAND ( G235, G3 )
NET_353 = NAND ( new_n317_, new_n316_, new_n314_ ) G257 = NAND ( G4, G235 )
new_n319_ = OR ( new_n313_, new_n243_ ) G258 = NAND ( G5, G235 )
new_n320_ = OR ( new_n242_, new_n298_ ) G259 = NAND ( G235, G6 )
NET_354 = NAND ( new_n320_, new_n319_ ) G260 = NAND ( G235, G7 )
new_n322_ = OR ( new_n313_, new_n248_ ) G261 = NAND ( G8, G235 )
new_n323_ = OR ( new_n251_, new_n303_ ) G262 = NAND ( G235, G9 )
new_n324_ = NAND ( new_n253_, new_n156_ ) G263 = NOT ( G236 )
NET_355 = NAND ( new_n324_, new_n323_, new_n322_ ) G264 = NAND ( G237, G137 )
new_n326_ = NAND ( new_n168_, NET_43 ) G265 = NAND ( G238, G138 )
new_n327_ = OR ( new_n313_, new_n168_ ) G266 = NAND ( G239, G139 )
NET_356 = NAND ( new_n327_, new_n326_ ) G267 = NAND ( G240, G140 )
new_n329_ = NOT ( NET_14 ) G268 = NAND ( G241, G141 )
new_n330_ = OR ( new_n138_, new_n329_ ) G269 = NAND ( G242, G142 )
new_n331_ = NAND ( new_n229_, NET_30 ) G270 = NAND ( G143, G243 )
new_n332_ = NAND ( new_n331_, new_n330_ ) G271 = NAND ( G244, G83 )
new_n333_ = NAND ( new_n166_, new_n161_, NET_37 ) G272 = NAND ( G245, G49 )
new_n334_ = NOT ( NET_30 ) G273 = NAND ( G10, G252 )
new_n335_ = OR ( NET_48, new_n334_ ) G274 = NAND ( G11, G252 )
new_n336_ = OR ( new_n189_, new_n119_ ) G275 = NAND ( G12, G252 )
new_n337_ = NAND ( new_n336_, new_n335_, new_n333_ ) G276 = NAND ( G252, G13 )
new_n338_ = NAND ( new_n337_, new_n332_ ) G277 = NAND ( G14, G252 )
new_n339_ = OR ( new_n337_, new_n332_ ) G278 = NAND ( G252, G15 )
new_n340_ = NAND ( new_n339_, new_n338_ ) G279 = NAND ( G16, G252 )
new_n341_ = NAND ( new_n312_, new_n308_ ) G280 = NAND ( G252, G17 )
new_n342_ = NAND ( new_n341_, new_n340_, new_n307_ ) G281 = AND ( G254, G48 )
new_n343_ = NAND ( new_n341_, new_n307_ ) G282 = NOT ( G264 )
new_n344_ = NAND ( new_n343_, new_n339_, new_n338_ ) G283 = NAND ( G264, G168 )
new_n345_ = NAND ( new_n344_, new_n342_ ) G284 = NOT ( G265 )
new_n346_ = OR ( new_n345_, new_n237_ ) G285 = OR ( G265, G157 )
new_n347_ = NOT ( NET_6 ) G286 = NAND ( G265, G157 )
new_n348_ = OR ( new_n215_, new_n347_ ) G287 = NAND ( G265, G169 )
new_n349_ = OR ( new_n220_, new_n329_ ) G288 = NOT ( G266 )
NET_369 = NAND ( new_n349_, new_n348_, new_n346_ ) G289 = OR ( G266, G158 )
new_n351_ = OR ( new_n345_, new_n243_ ) G290 = NAND ( G158, G266 )
new_n352_ = OR ( new_n242_, new_n329_ ) G291 = NAND ( G266, G170 )
NET_370 = NAND ( new_n352_, new_n351_ ) G292 = NOT ( G267 )
new_n354_ = OR ( new_n345_, new_n248_ ) G293 = OR ( G159, G267 )
new_n355_ = OR ( new_n251_, new_n334_ ) G294 = NAND ( G159, G267 )
NET_371 = NAND ( new_n355_, new_n354_, new_n289_ ) G295 = NAND ( G171, G267 )
new_n357_ = NAND ( new_n168_, NET_37 ) G296 = NOT ( G268 )
new_n358_ = OR ( new_n345_, new_n168_ ) G297 = OR ( G160, G268 )
NET_372 = NAND ( new_n358_, new_n357_ ) G298 = NAND ( G160, G268 )
new_n360_ = NAND ( new_n166_, new_n161_, NET_41 ) G299 = NAND ( G172, G268 )
new_n361_ = NOT ( NET_29 ) G300 = NOT ( G269 )
new_n362_ = OR ( NET_48, new_n361_ ) G301 = OR ( G161, G269 )
new_n363_ = OR ( new_n189_, new_n125_ ) G302 = NAND ( G161, G269 )
new_n364_ = NAND ( new_n363_, new_n362_, new_n360_ ) G303 = NAND ( G173, G269 )
new_n365_ = NOT ( NET_13 ) G304 = NAND ( G270, G174 )
new_n366_ = OR ( new_n138_, new_n365_ ) G305 = NOT ( G270 )
new_n367_ = NAND ( new_n229_, NET_29 ) G306 = NAND ( G162, G270 )
new_n368_ = NAND ( new_n367_, new_n366_ ) G307 = NAND ( G81, G103, G272 )
new_n369_ = NAND ( new_n368_, new_n364_ ) G308 = AND ( G89, G281 )
new_n370_ = OR ( new_n368_, new_n364_ ) G309 = AND ( G119, G281 )
new_n371_ = NAND ( new_n370_, new_n369_ ) G310 = NAND ( G156, G282 )
new_n372_ = NAND ( new_n343_, new_n339_ ) G311 = NAND ( G284, G157 )
new_n373_ = NAND ( new_n372_, new_n338_ ) G312 = NAND ( G158, G288 )
new_n374_ = XOR ( new_n373_, new_n371_ ) G313 = NAND ( G159, G292 )
new_n375_ = OR ( new_n374_, new_n237_ ) G314 = NAND ( G160, G296 )
new_n376_ = NOT ( NET_5 ) G315 = NAND ( G300, G161 )
new_n377_ = OR ( new_n215_, new_n376_ ) G316 = NAND ( G162, G305 )
new_n378_ = OR ( new_n220_, new_n365_ ) G317 = NOT ( G306 )
NET_382 = NAND ( new_n378_, new_n377_, new_n375_ ) G318 = NAND ( G10, G308 )
new_n380_ = OR ( new_n374_, new_n243_ ) G319 = NAND ( G11, G308 )
new_n381_ = OR ( new_n242_, new_n365_ ) G320 = NAND ( G308, G12 )
NET_383 = NAND ( new_n381_, new_n380_ ) G321 = NAND ( G308, G13 )
new_n383_ = OR ( new_n374_, new_n248_ ) G322 = NAND ( G308, G14 )
new_n384_ = OR ( new_n251_, new_n361_ ) G323 = NAND ( G308, G15 )
NET_384 = NAND ( new_n384_, new_n383_, new_n289_ ) G324 = NAND ( G308, G16 )
new_n386_ = NAND ( new_n168_, NET_41 ) G325 = NAND ( G308, G17 )
new_n387_ = OR ( new_n374_, new_n168_ ) G326 = NAND ( G310, G283 )
NET_385 = NAND ( new_n387_, new_n386_ ) G327 = NAND ( G311, G287 )
new_n389_ = NAND ( new_n166_, new_n161_, NET_38 ) G328 = NAND ( G291, G312 )
new_n390_ = NOT ( NET_28 ) G329 = NAND ( G313, G295 )
new_n391_ = OR ( NET_48, new_n390_ ) G330 = NAND ( G314, G299 )
new_n392_ = OR ( new_n189_, new_n122_ ) G331 = NAND ( G303, G315 )
new_n393_ = NAND ( new_n392_, new_n391_, new_n389_ ) G332 = NAND ( G304, G316 )
new_n394_ = NOT ( NET_12 ) G333 = NAND ( G301, G317 )
new_n395_ = OR ( new_n138_, new_n394_ ) G334 = NOT ( G326 )
new_n396_ = NAND ( new_n229_, NET_28 ) G335 = NOT ( G327 )
new_n397_ = NAND ( new_n396_, new_n395_ ) G336 = NOT ( G328 )
new_n398_ = OR ( new_n397_, new_n393_ ) G337 = NOT ( G329 )
new_n399_ = NAND ( new_n397_, new_n393_ ) G338 = NOT ( G330 )
new_n400_ = NAND ( new_n399_, new_n398_ ) G339 = NOT ( G331 )
new_n401_ = NAND ( new_n369_, new_n372_, new_n338_ ) G340 = NAND ( G331, G306 )
new_n402_ = NAND ( new_n401_, new_n370_ ) G341 = NAND ( G332, G309 )
new_n403_ = XNOR ( new_n402_, new_n400_ ) G342 = NAND ( G251, G332 )
new_n404_ = OR ( new_n403_, new_n237_ ) G343 = NAND ( G175, G332 )
new_n405_ = NOT ( NET_4 ) G344 = NAND ( G332, G108 )
new_n406_ = OR ( new_n215_, new_n405_ ) G345 = NAND ( G302, G333 )
new_n407_ = OR ( new_n220_, new_n394_ ) G346 = NAND ( G339, G317 )
NET_395 = NAND ( new_n407_, new_n406_, new_n404_ ) G347 = NAND ( G325, G262, G341 )
new_n409_ = OR ( new_n403_, new_n243_ ) G348 = NAND ( G342, G280 )
new_n410_ = OR ( new_n242_, new_n394_ ) G349 = NAND ( G194, G343, G219 )
NET_396 = NAND ( new_n410_, new_n409_ ) G350 = NAND ( G112, G344 )
new_n412_ = OR ( new_n403_, new_n248_ ) G351 = NOT ( G345 )
new_n413_ = OR ( new_n251_, new_n390_ ) G352 = NAND ( G345, G297 )
NET_397 = NAND ( new_n413_, new_n412_, new_n289_ ) G353 = NAND ( G330, G345 )
new_n415_ = NAND ( new_n168_, NET_38 ) G354 = NAND ( G340, G346 )
new_n416_ = OR ( new_n403_, new_n168_ ) G355 = NAND ( G338, G351 )
NET_398 = NAND ( new_n416_, new_n415_ ) G356 = NAND ( G352, G298 )
new_n418_ = NAND ( new_n166_, new_n161_, NET_42 ) G357 = NAND ( G354, G309 )
new_n419_ = NOT ( NET_27 ) G358 = NAND ( G354, G251 )
new_n420_ = OR ( NET_48, new_n419_ ) G359 = NAND ( G354, G175 )
new_n421_ = OR ( new_n189_, new_n128_ ) G360 = NAND ( G354, G108 )
new_n422_ = NAND ( new_n421_, new_n420_, new_n418_ ) G361 = AND ( G355, G353 )
new_n423_ = NOT ( NET_11 ) G362 = NOT ( G356 )
new_n424_ = OR ( new_n138_, new_n423_ ) G363 = NAND ( G356, G293 )
new_n425_ = NAND ( new_n229_, NET_27 ) G364 = NAND ( G356, G329 )
new_n426_ = NAND ( new_n425_, new_n424_ ) G365 = NAND ( G357, G261, G324 )
new_n427_ = NAND ( new_n426_, new_n422_ ) G366 = NAND ( G279, G358 )
new_n428_ = NOR ( new_n426_, new_n422_ ) G367 = NAND ( G359, G193, G203 )
new_n429_ = NOT ( new_n428_ ) G368 = NAND ( G360, G111 )
new_n430_ = NAND ( new_n429_, new_n427_ ) G369 = NAND ( G309, G361 )
new_n431_ = NAND ( new_n402_, new_n399_ ) G370 = NAND ( G251, G361 )
new_n432_ = NAND ( new_n431_, new_n398_ ) G371 = NAND ( G175, G361 )
new_n433_ = XNOR ( new_n432_, new_n430_ ) G372 = NAND ( G108, G361 )
new_n434_ = OR ( new_n433_, new_n237_ ) G373 = NAND ( G362, G337 )
new_n435_ = NOT ( NET_3 ) G374 = NAND ( G294, G363 )
new_n436_ = OR ( new_n215_, new_n435_ ) G375 = NAND ( G260, G323, G369 )
new_n437_ = OR ( new_n220_, new_n423_ ) G376 = NAND ( G278, G370 )
NET_410 = NAND ( new_n437_, new_n436_, new_n434_ ) G377 = NAND ( G371, G196, G192 )
new_n439_ = OR ( new_n433_, new_n243_ ) G378 = NAND ( G115, G372 )
new_n440_ = OR ( new_n242_, new_n423_ ) G379 = AND ( G364, G373 )
NET_411 = NAND ( new_n440_, new_n439_ ) G380 = NOT ( G374 )
new_n442_ = OR ( new_n433_, new_n248_ ) G381 = NAND ( G374, G289 )
new_n443_ = OR ( new_n251_, new_n419_ ) G382 = NAND ( G374, G328 )
NET_412 = NAND ( new_n443_, new_n442_, new_n289_ ) G383 = NAND ( G379, G309 )
new_n445_ = NAND ( new_n168_, NET_42 ) G384 = NAND ( G379, G251 )
new_n446_ = OR ( new_n433_, new_n168_ ) G385 = NAND ( G379, G175 )
NET_413 = NAND ( new_n446_, new_n445_ ) G386 = NAND ( G379, G108 )
new_n448_ = NAND ( new_n432_, new_n427_ ) G387 = NAND ( G336, G380 )
new_n449_ = AND ( new_n448_, new_n429_ ) G388 = NAND ( G290, G381 )
new_n450_ = NOT ( NET_10 ) G389 = NAND ( G322, G259, G383 )
new_n451_ = OR ( new_n138_, new_n450_ ) G390 = NAND ( G277, G384 )
new_n452_ = OR ( new_n451_, new_n449_ ) G391 = NAND ( G186, G385, G191 )
new_n453_ = OR ( new_n432_, new_n428_ ) G392 = NAND ( G109, G386 )
new_n454_ = NAND ( new_n453_, new_n427_ ) G393 = AND ( G382, G387 )
new_n455_ = NAND ( new_n454_, new_n451_ ) G394 = NOT ( G388 )
new_n456_ = NAND ( new_n455_, new_n452_ ) G395 = NAND ( G285, G388 )
new_n457_ = NAND ( new_n456_, new_n236_ ) G396 = NAND ( G388, G327 )
new_n458_ = NOT ( NET_2 ) G397 = NAND ( G309, G393 )
new_n459_ = OR ( new_n215_, new_n458_ ) G398 = NAND ( G251, G393 )
new_n460_ = OR ( new_n220_, new_n450_ ) G399 = NAND ( G175, G393 )
NET_418 = NAND ( new_n460_, new_n459_, new_n457_ ) G400 = NAND ( G108, G393 )
new_n462_ = NAND ( new_n456_, new_n284_ ) G401 = NAND ( G335, G394 )
new_n463_ = OR ( new_n242_, new_n450_ ) G402 = NAND ( G395, G286 )
NET_419 = NAND ( new_n463_, new_n462_ ) G403 = NAND ( G321, G397, G258 )
new_n465_ = NAND ( new_n456_, new_n247_ ) G404 = NAND ( G398, G276 )
new_n466_ = NOT ( NET_26 ) G405 = NAND ( G186, G399, G190 )
new_n467_ = OR ( new_n251_, new_n466_ ) G406 = NAND ( G113, G400 )
NET_420 = NAND ( new_n467_, new_n465_, new_n289_ ) G407 = AND ( G401, G396 )
NET_51 = BUF ( NET_2 ) G408 = NOT ( G402 )
NET_52 = BUF ( NET_3 ) G409 = NAND ( G264, G402 )
NET_53 = BUF ( NET_4 ) G410 = NAND ( G326, G402 )
NET_54 = BUF ( NET_5 ) G411 = NAND ( G309, G407 )
NET_55 = BUF ( NET_6 ) G412 = NAND ( G251, G407 )
NET_56 = BUF ( NET_7 ) G413 = NAND ( G175, G407 )
NET_57 = BUF ( NET_8 ) G414 = NAND ( G108, G407 )
NET_58 = BUF ( NET_9 ) G415 = NAND ( G408, G282 )
G416 = NAND ( G334, G408 )
G417 = NAND ( G257, G411, G320 )
G418 = NAND ( G275, G412 )
G419 = NAND ( G186, G413, G189 )
G420 = NAND ( G414, G110 )
G421 = NAND ( G415, G156 )
G422 = AND ( G416, G410 )
G423 = NAND ( G421, G409 )
G424 = NAND ( G422, G309 )
G425 = NAND ( G422, G251 )
G426 = NAND ( G422, G175 )
G427 = NAND ( G422, G108 )
G428 = NOT ( G423 )
G429 = NAND ( G236, G423 )
G430 = NAND ( G424, G256, G319 )
G431 = NAND ( G425, G274 )
G432 = NAND ( G186, G426, G188 )
G433 = NAND ( G427, G114 )
G434 = NAND ( G428, G263 )
G435 = AND ( G429, G434 )
G436 = NAND ( G435, G309 )
G437 = NAND ( G435, G251 )
G438 = NAND ( G435, G175 )
G439 = NAND ( G255, G436, G318 )
G440 = NAND ( G273, G437 )
G441 = NAND ( G186, G187, G438 )

View File

@ -1,193 +1,213 @@
# generated by verilog2bench.py https://gitea.yuhangq.com/YuhangQ/any2bench # generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
INPUT(NET_1) # gates: 183
INPUT(NET_10)
INPUT(NET_11) INPUT(G1)
INPUT(NET_12) INPUT(G2)
INPUT(NET_13) INPUT(G3)
INPUT(NET_14) INPUT(G4)
INPUT(NET_15) INPUT(G5)
INPUT(NET_16) INPUT(G6)
INPUT(NET_17) INPUT(G7)
INPUT(NET_18) INPUT(G8)
INPUT(NET_19) INPUT(G9)
INPUT(NET_2) INPUT(G10)
INPUT(NET_20) INPUT(G11)
INPUT(NET_21) INPUT(G12)
INPUT(NET_22) INPUT(G13)
INPUT(NET_23) INPUT(G14)
INPUT(NET_24) INPUT(G15)
INPUT(NET_25) INPUT(G16)
INPUT(NET_26) INPUT(G17)
INPUT(NET_27) INPUT(G18)
INPUT(NET_28) INPUT(G19)
INPUT(NET_29) INPUT(G20)
INPUT(NET_3) INPUT(G21)
INPUT(NET_30) INPUT(G22)
INPUT(NET_4) INPUT(G23)
INPUT(NET_5) INPUT(G24)
INPUT(NET_6) INPUT(G25)
INPUT(NET_7) INPUT(G26)
INPUT(NET_8) INPUT(G27)
INPUT(NET_9) INPUT(G28)
OUTPUT(NET_103) INPUT(G29)
OUTPUT(NET_119) INPUT(G30)
OUTPUT(NET_120)
OUTPUT(NET_123) OUTPUT(G132)
OUTPUT(NET_135) OUTPUT(G154)
OUTPUT(NET_136) OUTPUT(G183)
OUTPUT(NET_137) OUTPUT(G157)
OUTPUT(NET_138) OUTPUT(G155)
OUTPUT(NET_144) OUTPUT(G100)
OUTPUT(NET_162) OUTPUT(G158)
OUTPUT(NET_163) OUTPUT(G113)
OUTPUT(NET_166) OUTPUT(G182)
OUTPUT(NET_167) OUTPUT(G101)
OUTPUT(NET_31) OUTPUT(G180)
OUTPUT(NET_32) OUTPUT(G99)
OUTPUT(NET_33) OUTPUT(G32)
OUTPUT(NET_34) OUTPUT(G181)
OUTPUT(NET_91) OUTPUT(G49)
OUTPUT(NET_92) OUTPUT(G96)
OUTPUT(NET_93) OUTPUT(G98)
OUTPUT(NET_94) OUTPUT(G159)
OUTPUT(NET_95) OUTPUT(G156)
OUTPUT(NET_96) OUTPUT(G51)
OUTPUT(NET_97) OUTPUT(G97)
OUTPUT(NET_98) OUTPUT(G102)
new_n56_ = NOT ( NET_11 ) OUTPUT(G133)
new_n57_ = NOT ( NET_12 ) OUTPUT(G103)
new_n58_ = NAND ( NET_14, NET_13 ) OUTPUT(G50)
new_n59_ = OR ( new_n58_, new_n57_ )
new_n60_ = NOR ( new_n59_, NET_1 ) G31 = NOT ( G1 )
new_n61_ = NOR ( new_n60_, new_n56_ ) G32 = BUF ( G10 )
new_n62_ = NOT ( NET_10 ) G33 = NOT ( G11 )
new_n63_ = NOR ( NET_11, new_n62_ ) G34 = AND ( G12, G11 )
new_n64_ = NOR ( new_n56_, NET_10 ) G35 = NOT ( G12 )
NET_103 = OR ( new_n64_, new_n63_, new_n61_ ) G36 = NOT ( G13 )
new_n66_ = OR ( new_n59_, new_n62_ ) G37 = NOT ( G14 )
new_n67_ = NAND ( new_n66_, NET_11 ) G38 = AND ( G14, G15 )
new_n68_ = AND ( new_n67_, NET_1 ) G39 = NOT ( G15 )
NET_119 = OR ( new_n68_, new_n63_ ) G40 = OR ( G14, G15, G13 )
new_n70_ = NOT ( NET_13 ) G41 = NOT ( G16 )
new_n71_ = OR ( NET_14, new_n70_ ) G42 = NOT ( G17 )
new_n72_ = OR ( new_n71_, new_n62_ ) G43 = NOT ( G18 )
new_n73_ = NOR ( new_n56_, new_n62_ ) G44 = NOT ( G19 )
new_n74_ = NAND ( new_n73_, NET_14 ) G45 = NOT ( G20 )
new_n75_ = NAND ( new_n74_, new_n70_ ) G46 = NOT ( G21 )
new_n76_ = OR ( new_n67_, new_n70_ ) G47 = NOT ( G22 )
new_n77_ = NAND ( new_n76_, new_n75_ ) G48 = NOT ( G23 )
NET_120 = NAND ( new_n77_, new_n72_ ) G49 = BUF ( G28 )
new_n79_ = NOT ( NET_14 ) G50 = BUF ( G29 )
new_n80_ = NAND ( new_n73_, new_n79_ ) G51 = BUF ( G30 )
new_n81_ = NAND ( new_n67_, NET_14 ) G52 = NAND ( G12, G33 )
NET_123 = NAND ( new_n81_, new_n80_ ) G53 = NAND ( G35, G11 )
new_n83_ = NAND ( new_n73_, new_n60_ ) G54 = NAND ( G37, G15, G13 )
new_n84_ = NAND ( new_n83_, NET_27 ) G55 = NAND ( G37, G36, G15 )
new_n85_ = NOT ( NET_23 ) G56 = NAND ( G37, G15, G34 )
new_n86_ = OR ( new_n83_, new_n85_ ) G57 = NAND ( G38, G13 )
NET_135 = NAND ( new_n86_, new_n84_ ) G58 = NAND ( G36, G38 )
new_n88_ = NAND ( new_n83_, NET_28 ) G59 = NAND ( G39, G11 )
new_n89_ = NOT ( NET_24 ) G60 = NAND ( G37, G39, G13 )
new_n90_ = OR ( new_n83_, new_n89_ ) G61 = NAND ( G14, G36, G39 )
NET_136 = NAND ( new_n90_, new_n88_ ) G62 = NAND ( G14, G39, G13 )
new_n92_ = NAND ( new_n83_, NET_29 ) G63 = NAND ( G39, G34 )
new_n93_ = NOT ( NET_25 ) G64 = NOT ( G52 )
new_n94_ = OR ( new_n83_, new_n93_ ) G65 = NAND ( G16, G52 )
NET_137 = NAND ( new_n94_, new_n92_ ) G66 = NAND ( G17, G52 )
new_n96_ = NAND ( new_n83_, NET_30 ) G67 = NAND ( G18, G52 )
new_n97_ = NOT ( NET_26 ) G68 = NAND ( G19, G52 )
new_n98_ = OR ( new_n83_, new_n97_ ) G69 = NAND ( G20, G52 )
NET_138 = NAND ( new_n98_, new_n96_ ) G70 = NAND ( G21, G52 )
new_n100_ = OR ( new_n64_, new_n57_ ) G71 = NAND ( G22, G52 )
new_n101_ = NAND ( new_n73_, NET_14, NET_13, new_n57_ ) G72 = NAND ( G23, G52 )
NET_144 = NAND ( new_n101_, new_n100_ ) G73 = NOT ( G53 )
new_n103_ = NAND ( new_n79_, NET_13, new_n57_ ) G74 = NOT ( G57 )
new_n104_ = NAND ( new_n79_, new_n70_, NET_12 ) G75 = NOT ( G58 )
new_n105_ = AND ( new_n104_, new_n103_, new_n59_ ) G76 = AND ( G60, G54 )
new_n106_ = NOT ( NET_21 ) G77 = NAND ( G60, G55, G40, G58 )
new_n107_ = NAND ( new_n106_, new_n79_, NET_13, NET_12 ) G78 = AND ( G57, G61 )
new_n108_ = NAND ( NET_14, new_n70_, new_n57_ ) G79 = NAND ( G61, G62 )
new_n109_ = NAND ( new_n79_, new_n70_, new_n57_ ) G80 = NAND ( G2, G64 )
new_n110_ = OR ( new_n58_, NET_12 ) G81 = NAND ( G3, G64 )
new_n111_ = OR ( NET_13, new_n57_ ) G82 = NAND ( G64, G4 )
new_n112_ = AND ( new_n111_, new_n110_ ) G83 = NAND ( G64, G5 )
new_n113_ = AND ( new_n112_, new_n109_ ) G84 = NAND ( G6, G64 )
new_n114_ = NAND ( new_n113_, new_n108_, new_n59_, NET_22 ) G85 = NAND ( G7, G64 )
new_n115_ = NOT ( NET_15 ) G86 = NAND ( G64, G8 )
new_n116_ = OR ( new_n111_, new_n79_ ) G87 = NAND ( G9, G64 )
new_n117_ = AND ( new_n109_, new_n108_, new_n105_ ) G88 = NAND ( G74, G31 )
new_n118_ = NAND ( new_n117_, new_n116_, new_n115_ ) G89 = NAND ( G74, G11 )
new_n119_ = NOT ( NET_20 ) G90 = NAND ( G34, G75 )
new_n120_ = NAND ( new_n79_, NET_13, NET_12 ) G91 = NAND ( G76, G58 )
new_n121_ = NAND ( new_n120_, new_n117_, new_n119_ ) G92 = AND ( G78, G62 )
new_n122_ = NAND ( new_n121_, new_n118_, new_n114_, new_n107_ ) G93 = NAND ( G60, G78 )
new_n123_ = NAND ( new_n120_, new_n113_, NET_16 ) G94 = NAND ( G45, G78, G54, G58 )
new_n124_ = NOT ( NET_17 ) G95 = NOT ( G79 )
new_n125_ = AND ( new_n120_, new_n105_, new_n110_ ) G96 = NAND ( G80, G65 )
new_n126_ = NAND ( new_n125_, new_n116_, new_n124_ ) G97 = NAND ( G66, G81 )
new_n127_ = NOT ( NET_16 ) G98 = NAND ( G82, G67 )
new_n128_ = NAND ( new_n125_, new_n108_, new_n127_ ) G99 = NAND ( G68, G83 )
new_n129_ = NAND ( new_n128_, new_n126_, new_n123_ ) G100 = NAND ( G69, G84 )
new_n130_ = NAND ( new_n113_, new_n59_, NET_20 ) G101 = NAND ( G70, G85 )
new_n131_ = NAND ( new_n120_, new_n103_ ) G102 = NAND ( G71, G86 )
new_n132_ = NOT ( NET_22 ) G103 = NAND ( G87, G72 )
new_n133_ = NAND ( new_n109_, new_n110_, new_n59_, new_n132_ ) G104 = NOT ( G88 )
new_n134_ = OR ( new_n133_, new_n131_ ) G105 = NAND ( G12, G88 )
new_n135_ = NAND ( new_n112_, new_n71_, NET_15 ) G106 = NAND ( G12, G89 )
new_n136_ = NOT ( NET_19 ) G107 = NOT ( G91 )
new_n137_ = NAND ( NET_14, NET_12 ) G108 = NAND ( G91, G19 )
new_n138_ = OR ( new_n70_, NET_12 ) G109 = NAND ( G92, G76 )
new_n139_ = NAND ( new_n138_, new_n137_, new_n136_ ) G110 = NAND ( G92, G58 )
new_n140_ = AND ( new_n139_, new_n135_, new_n134_, new_n63_ ) G111 = NOT ( G93 )
new_n141_ = NAND ( new_n113_, new_n108_, NET_18 ) G112 = NAND ( G12, G104, G11 )
new_n142_ = NAND ( new_n120_, new_n113_, new_n59_, NET_21 ) G113 = NAND ( G105, G53, G52 )
new_n143_ = NAND ( new_n142_, new_n141_, new_n140_, new_n130_ ) G114 = NOT ( G106 )
new_n144_ = NAND ( NET_17, new_n79_, NET_13, NET_12 ) G115 = NAND ( G1, G106 )
new_n145_ = NOT ( NET_18 ) G116 = NAND ( G15, G106 )
new_n146_ = NAND ( new_n145_, NET_14, NET_13, new_n57_ ) G117 = NAND ( G57, G107 )
new_n147_ = NAND ( new_n146_, new_n144_ ) G118 = NAND ( G78, G55, G107 )
new_n148_ = NOR ( new_n147_, new_n143_, new_n129_, new_n122_ ) G119 = NAND ( G40, G107 )
new_n149_ = OR ( new_n148_, new_n64_ ) G120 = NAND ( G16, G107, G95 )
new_n150_ = NAND ( new_n149_, NET_10 ) G121 = NAND ( G92, G43, G107 )
new_n151_ = OR ( new_n150_, new_n105_ ) G122 = NAND ( G109, G44 )
new_n152_ = AND ( new_n149_, new_n62_ ) G123 = NAND ( G110, G48 )
new_n153_ = OR ( new_n152_, new_n89_ ) G124 = AND ( G111, G55 )
NET_162 = NAND ( new_n153_, new_n151_ ) G125 = NOT ( G112 )
new_n155_ = NAND ( new_n149_, new_n131_, NET_10 ) G126 = NAND ( G28, G112 )
new_n156_ = OR ( new_n152_, new_n97_ ) G127 = NAND ( G112, G29 )
NET_163 = NAND ( new_n156_, new_n155_ ) G128 = NAND ( G112, G30 )
new_n158_ = OR ( new_n150_, NET_14 ) G129 = NAND ( G112, G10 )
new_n159_ = OR ( new_n152_, new_n85_ ) G130 = NAND ( G114, G33 )
new_n160_ = OR ( new_n150_, new_n112_ ) G131 = NAND ( G59, G114 )
NET_166 = NAND ( new_n160_, new_n159_, new_n158_ ) G132 = NAND ( G115, G53 )
new_n162_ = OR ( new_n150_, NET_12 ) G133 = NAND ( G116, G63 )
new_n163_ = OR ( new_n152_, new_n93_ ) G134 = NOT ( G117 )
NET_167 = NAND ( new_n163_, new_n162_, new_n158_ ) G135 = NAND ( G21, G117 )
new_n165_ = NAND ( new_n64_, NET_2 ) G136 = NOT ( G118 )
new_n166_ = OR ( new_n64_, new_n115_ ) G137 = NAND ( G47, G118 )
NET_91 = NAND ( new_n166_, new_n165_ ) G138 = NAND ( G17, G119 )
new_n168_ = NAND ( new_n64_, NET_3 ) G139 = NAND ( G40, G55, G108, G122 )
new_n169_ = OR ( new_n64_, new_n127_ ) G140 = NAND ( G124, G58 )
NET_92 = NAND ( new_n169_, new_n168_ ) G141 = NAND ( G124, G62 )
new_n171_ = NAND ( new_n64_, NET_4 ) G142 = NAND ( G124, G40, G41, G54 )
new_n172_ = OR ( new_n64_, new_n124_ ) G143 = NAND ( G24, G125 )
NET_93 = NAND ( new_n172_, new_n171_ ) G144 = NAND ( G25, G125 )
new_n174_ = NAND ( new_n64_, NET_5 ) G145 = NAND ( G26, G125 )
new_n175_ = OR ( new_n64_, new_n145_ ) G146 = NAND ( G27, G125 )
NET_94 = NAND ( new_n175_, new_n174_ ) G147 = NAND ( G130, G13 )
new_n177_ = NAND ( new_n64_, NET_6 ) G148 = NAND ( G131, G14 )
new_n178_ = OR ( new_n64_, new_n136_ ) G149 = NAND ( G134, G62 )
NET_95 = NAND ( new_n178_, new_n177_ ) G150 = NAND ( G55, G134 )
new_n180_ = NAND ( new_n64_, NET_7 ) G151 = NAND ( G18, G40, G136 )
new_n181_ = OR ( new_n64_, new_n119_ ) G152 = NAND ( G140, G42 )
NET_96 = NAND ( new_n181_, new_n180_ ) G153 = NAND ( G46, G141 )
new_n183_ = NAND ( new_n64_, NET_8 ) G154 = NAND ( G143, G126 )
new_n184_ = OR ( new_n64_, new_n106_ ) G155 = NAND ( G144, G127 )
NET_97 = NAND ( new_n184_, new_n183_ ) G156 = NAND ( G145, G128 )
new_n186_ = NAND ( new_n64_, NET_9 ) G157 = NAND ( G146, G129 )
new_n187_ = OR ( new_n64_, new_n132_ ) G158 = NAND ( G147, G90 )
NET_98 = NAND ( new_n187_, new_n186_ ) G159 = NAND ( G148, G56 )
NET_31 = BUF ( NET_27 ) G160 = NAND ( G149, G22 )
NET_32 = BUF ( NET_28 ) G161 = NAND ( G23, G150 )
NET_33 = BUF ( NET_29 ) G162 = AND ( G151, G120, G121, G142 )
NET_34 = BUF ( NET_30 ) G163 = NAND ( G152, G138, G62 )
G164 = NAND ( G153, G135, G40 )
G165 = NAND ( G137, G160, G40 )
G166 = NAND ( G161, G40, G123 )
G167 = AND ( G166, G94, G73, G165, G162 )
G168 = NAND ( G139, G164, G167, G163 )
G169 = NAND ( G168, G52 )
G170 = AND ( G169, G11 )
G171 = NAND ( G169, G33 )
G172 = NAND ( G170, G79 )
G173 = NAND ( G170, G119 )
G174 = NAND ( G170, G93 )
G175 = NAND ( G170, G77 )
G176 = NAND ( G171, G24 )
G177 = NAND ( G171, G25 )
G178 = NAND ( G171, G26 )
G179 = NAND ( G171, G27 )
G180 = NAND ( G173, G172, G176 )
G181 = NAND ( G174, G177 )
G182 = NAND ( G172, G175, G178 )
G183 = NAND ( G172, G179 )

View File

@ -1,172 +1,204 @@
# generated by verilog2bench.py https://gitea.yuhangq.com/YuhangQ/any2bench # generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
INPUT(NET_1) # gates: 170
INPUT(NET_10)
INPUT(NET_11) INPUT(G1)
INPUT(NET_12) INPUT(G2)
INPUT(NET_13) INPUT(G3)
INPUT(NET_14) INPUT(G4)
INPUT(NET_15) INPUT(G5)
INPUT(NET_16) INPUT(G6)
INPUT(NET_17) INPUT(G7)
INPUT(NET_18) INPUT(G8)
INPUT(NET_19) INPUT(G9)
INPUT(NET_2) INPUT(G10)
INPUT(NET_20) INPUT(G11)
INPUT(NET_21) INPUT(G12)
INPUT(NET_22) INPUT(G13)
INPUT(NET_23) INPUT(G14)
INPUT(NET_24) INPUT(G15)
INPUT(NET_25) INPUT(G16)
INPUT(NET_26) INPUT(G17)
INPUT(NET_27) INPUT(G18)
INPUT(NET_28) INPUT(G19)
INPUT(NET_29) INPUT(G20)
INPUT(NET_3) INPUT(G21)
INPUT(NET_4) INPUT(G22)
INPUT(NET_5) INPUT(G23)
INPUT(NET_6) INPUT(G24)
INPUT(NET_7) INPUT(G25)
INPUT(NET_8) INPUT(G26)
INPUT(NET_9) INPUT(G27)
OUTPUT(NET_102) INPUT(G28)
OUTPUT(NET_103) INPUT(G29)
OUTPUT(NET_104)
OUTPUT(NET_105) OUTPUT(G126)
OUTPUT(NET_106) OUTPUT(G125)
OUTPUT(NET_107) OUTPUT(G163)
OUTPUT(NET_108) OUTPUT(G111)
OUTPUT(NET_109) OUTPUT(G167)
OUTPUT(NET_110) OUTPUT(G127)
OUTPUT(NET_111) OUTPUT(G112)
OUTPUT(NET_116) OUTPUT(G124)
OUTPUT(NET_117) OUTPUT(G170)
OUTPUT(NET_118) OUTPUT(G165)
OUTPUT(NET_119) OUTPUT(G117)
OUTPUT(NET_120) OUTPUT(G122)
OUTPUT(NET_121) OUTPUT(G123)
OUTPUT(NET_122) OUTPUT(G69)
OUTPUT(NET_123) OUTPUT(G115)
OUTPUT(NET_136) OUTPUT(G118)
OUTPUT(NET_152) OUTPUT(G113)
OUTPUT(NET_153) OUTPUT(G166)
OUTPUT(NET_154) OUTPUT(G164)
OUTPUT(NET_155) OUTPUT(G131)
OUTPUT(NET_156) OUTPUT(G39)
OUTPUT(NET_157) OUTPUT(G162)
OUTPUT(NET_158) OUTPUT(G128)
OUTPUT(NET_159) OUTPUT(G168)
OUTPUT(NET_30) OUTPUT(G169)
OUTPUT(NET_45) OUTPUT(G116)
new_n59_ = XNOR ( NET_22, NET_11 ) OUTPUT(G129)
new_n60_ = XNOR ( NET_28, NET_17 ) OUTPUT(G114)
new_n61_ = XNOR ( NET_21, NET_10 ) OUTPUT(G134)
new_n62_ = XNOR ( NET_27, NET_16 )
new_n63_ = NAND ( new_n62_, new_n61_, new_n60_, new_n59_ ) G30 = NOT ( G2 )
new_n64_ = XNOR ( NET_26, NET_15 ) G31 = NOT ( G11 )
new_n65_ = XNOR ( NET_24, NET_13 ) G32 = NOT ( G12 )
new_n66_ = XNOR ( NET_25, NET_14 ) G33 = NOT ( G13 )
new_n67_ = XNOR ( NET_23, NET_12 ) G34 = NOT ( G14 )
new_n68_ = NAND ( new_n67_, new_n66_, new_n65_, new_n64_ ) G35 = NOT ( G15 )
new_n69_ = NOR ( new_n68_, new_n63_ ) G36 = NOT ( G16 )
new_n70_ = NAND ( new_n69_, NET_20, NET_19 ) G37 = NOT ( G17 )
new_n71_ = NOT ( NET_19 ) G38 = NOT ( G18 )
new_n72_ = NOR ( NET_29, new_n71_ ) G39 = BUF ( G19 )
new_n73_ = OR ( new_n72_, NET_20 ) G40 = OR ( G19, G2 )
new_n74_ = NOT ( NET_20 ) G41 = NOT ( G20 )
new_n75_ = OR ( NET_29, new_n74_ ) G42 = AND ( G21, G20 )
NET_102 = NAND ( new_n75_, new_n73_, new_n70_ ) G43 = NOT ( G21 )
new_n77_ = NOT ( NET_21 ) G44 = NAND ( G21, G2 )
new_n78_ = NAND ( NET_29, NET_20 ) G45 = OR ( G21, G2 )
new_n79_ = OR ( new_n78_, new_n77_ ) G46 = NOT ( G22 )
new_n80_ = OR ( NET_20, NET_19 ) G47 = NOT ( G23 )
new_n81_ = NAND ( new_n80_, new_n78_, NET_10 ) G48 = NOT ( G24 )
NET_103 = NAND ( new_n81_, new_n79_ ) G49 = NOT ( G25 )
new_n83_ = NOT ( NET_22 ) G50 = NOT ( G26 )
new_n84_ = OR ( new_n78_, new_n83_ ) G51 = NOT ( G27 )
new_n85_ = NAND ( new_n80_, new_n78_, NET_11 ) G52 = NOT ( G28 )
NET_104 = NAND ( new_n85_, new_n84_ ) G53 = NOT ( G29 )
new_n87_ = NOT ( NET_23 ) G54 = NAND ( G30, G20 )
new_n88_ = OR ( new_n78_, new_n87_ ) G55 = NAND ( G21, G30 )
new_n89_ = NAND ( new_n80_, new_n78_, NET_12 ) G56 = NAND ( G21, G30 )
NET_105 = NAND ( new_n89_, new_n88_ ) G57 = NAND ( G22, G31 )
new_n91_ = NOT ( NET_24 ) G58 = NAND ( G23, G32 )
new_n92_ = OR ( new_n78_, new_n91_ ) G59 = NAND ( G24, G33 )
new_n93_ = NAND ( new_n80_, new_n78_, NET_13 ) G60 = NAND ( G34, G25 )
NET_106 = NAND ( new_n93_, new_n92_ ) G61 = NAND ( G35, G26 )
new_n95_ = NOT ( NET_25 ) G62 = NAND ( G36, G27 )
new_n96_ = OR ( new_n78_, new_n95_ ) G63 = NAND ( G28, G37 )
new_n97_ = NAND ( new_n80_, new_n78_, NET_14 ) G64 = NAND ( G38, G29 )
NET_107 = NAND ( new_n97_, new_n96_ ) G65 = NAND ( G21, G41 )
new_n99_ = NOT ( NET_26 ) G66 = NAND ( G41, G2 )
new_n100_ = OR ( new_n78_, new_n99_ ) G67 = NAND ( G30, G42 )
new_n101_ = NAND ( new_n80_, new_n78_, NET_15 ) G68 = NAND ( G43, G20 )
NET_108 = NAND ( new_n101_, new_n100_ ) G69 = NAND ( G44, G41 )
new_n103_ = NOT ( NET_27 ) G70 = NOT ( G44 )
new_n104_ = OR ( new_n78_, new_n103_ ) G71 = NAND ( G11, G46 )
new_n105_ = NAND ( new_n80_, new_n78_, NET_16 ) G72 = NAND ( G12, G47 )
NET_109 = NAND ( new_n105_, new_n104_ ) G73 = NAND ( G48, G13 )
new_n107_ = NOT ( NET_28 ) G74 = NAND ( G14, G49 )
new_n108_ = OR ( new_n78_, new_n107_ ) G75 = NAND ( G15, G50 )
new_n109_ = NAND ( new_n80_, new_n78_, NET_17 ) G76 = NAND ( G16, G51 )
NET_110 = NAND ( new_n109_, new_n108_ ) G77 = NAND ( G52, G17 )
new_n111_ = OR ( new_n78_, new_n69_ ) G78 = NAND ( G18, G53 )
new_n112_ = NOR ( NET_29, NET_18 ) G79 = NAND ( G43, G54 )
new_n113_ = OR ( new_n74_, NET_19 ) G80 = NOT ( G65 )
new_n114_ = OR ( new_n113_, new_n112_ ) G81 = AND ( G67, G68 )
new_n115_ = NOT ( NET_29 ) G82 = NOT ( G68 )
new_n116_ = NAND ( NET_9, new_n115_, new_n74_, NET_19 ) G83 = NAND ( G55, G68 )
NET_111 = NAND ( new_n116_, new_n114_, new_n111_ ) G84 = NAND ( G22, G70 )
new_n118_ = NAND ( new_n80_, new_n78_ ) G85 = NAND ( G23, G70 )
NET_116 = NOR ( new_n118_, new_n107_ ) G86 = NAND ( G24, G70 )
NET_117 = NOR ( new_n118_, new_n103_ ) G87 = NAND ( G70, G25 )
NET_118 = NOR ( new_n118_, new_n99_ ) G88 = NAND ( G70, G26 )
NET_119 = NOR ( new_n118_, new_n95_ ) G89 = NAND ( G70, G27 )
NET_120 = NOR ( new_n118_, new_n91_ ) G90 = NAND ( G28, G70 )
NET_121 = NOR ( new_n118_, new_n87_ ) G91 = NAND ( G70, G29 )
NET_122 = NOR ( new_n118_, new_n83_ ) G92 = AND ( G71, G72, G57, G58 )
NET_123 = NOR ( new_n118_, new_n77_ ) G93 = AND ( G74, G59, G73, G60 )
new_n127_ = OR ( NET_20, new_n71_ ) G94 = AND ( G62, G76, G75, G61 )
new_n128_ = NAND ( NET_20, NET_19 ) G95 = AND ( G63, G77, G64, G78 )
new_n129_ = OR ( new_n128_, NET_29 ) G96 = NAND ( G80, G40 )
new_n130_ = NAND ( new_n129_, new_n127_, new_n113_ ) G97 = NAND ( G80, G30 )
new_n131_ = NAND ( new_n130_, NET_1 ) G98 = NAND ( G81, G65 )
new_n132_ = OR ( new_n69_, new_n128_ ) G99 = NAND ( G30, G10, G82 )
new_n133_ = NAND ( new_n132_, new_n113_ ) G100 = NAND ( G11, G83 )
new_n134_ = NAND ( new_n133_, NET_29 ) G101 = NAND ( G83, G12 )
NET_136 = NAND ( new_n134_, new_n131_ ) G102 = NAND ( G83, G13 )
new_n136_ = OR ( NET_29, NET_20 ) G103 = NAND ( G83, G14 )
new_n137_ = OR ( new_n115_, NET_19 ) G104 = NAND ( G83, G15 )
new_n138_ = NAND ( new_n137_, new_n136_, new_n111_ ) G105 = NAND ( G16, G83 )
new_n139_ = NAND ( new_n138_, NET_21, NET_20 ) G106 = NAND ( G83, G17 )
new_n140_ = NAND ( new_n137_, new_n136_, new_n111_, NET_2 ) G107 = NAND ( G83, G18 )
NET_152 = NAND ( new_n140_, new_n139_ ) G108 = NAND ( G95, G94, G93, G92 )
new_n142_ = NAND ( new_n138_, NET_22, NET_20 ) G109 = NAND ( G97, G81 )
new_n143_ = NAND ( new_n137_, new_n136_, new_n111_, NET_3 ) G110 = NAND ( G1, G98 )
new_n144_ = NAND ( new_n115_, new_n74_, NET_2, NET_19 ) G111 = NAND ( G100, G84 )
NET_153 = NAND ( new_n144_, new_n143_, new_n142_ ) G112 = NAND ( G85, G101 )
new_n146_ = NAND ( new_n138_, NET_23, NET_20 ) G113 = NAND ( G86, G102 )
new_n147_ = NAND ( new_n137_, new_n136_, new_n111_, NET_4 ) G114 = NAND ( G87, G103 )
new_n148_ = NAND ( NET_3, new_n115_, new_n74_, NET_19 ) G115 = NAND ( G88, G104 )
NET_154 = NAND ( new_n148_, new_n147_, new_n146_ ) G116 = NAND ( G105, G89 )
new_n150_ = NAND ( new_n138_, NET_24, NET_20 ) G117 = NAND ( G106, G90 )
new_n151_ = NAND ( new_n137_, new_n136_, new_n111_, NET_5 ) G118 = NAND ( G107, G91 )
new_n152_ = NAND ( NET_4, new_n115_, new_n74_, NET_19 ) G119 = NOT ( G108 )
NET_155 = NAND ( new_n152_, new_n151_, new_n150_ ) G120 = NAND ( G108, G70 )
new_n154_ = NAND ( new_n138_, NET_25, NET_20 ) G121 = NAND ( G108, G42 )
new_n155_ = NAND ( new_n137_, new_n136_, new_n111_, NET_6 ) G122 = AND ( G109, G29 )
new_n156_ = NAND ( NET_5, new_n115_, new_n74_, NET_19 ) G123 = AND ( G28, G109 )
NET_156 = NAND ( new_n156_, new_n155_, new_n154_ ) G124 = AND ( G109, G27 )
new_n158_ = NAND ( new_n138_, NET_26, NET_20 ) G125 = AND ( G109, G26 )
new_n159_ = NAND ( new_n137_, new_n136_, new_n111_, NET_7 ) G126 = AND ( G109, G25 )
new_n160_ = NAND ( NET_6, new_n115_, new_n74_, NET_19 ) G127 = AND ( G24, G109 )
NET_157 = NAND ( new_n160_, new_n159_, new_n158_ ) G128 = AND ( G23, G109 )
new_n162_ = NAND ( new_n138_, NET_27, NET_20 ) G129 = AND ( G22, G109 )
new_n163_ = NAND ( new_n137_, new_n136_, new_n111_, NET_8 ) G130 = NAND ( G119, G42 )
new_n164_ = NAND ( NET_7, new_n115_, new_n74_, NET_19 ) G131 = NAND ( G96, G120, G99 )
NET_158 = NAND ( new_n164_, new_n163_, new_n162_ ) G132 = NAND ( G45, G120, G66 )
new_n166_ = NAND ( new_n138_, NET_28, NET_20 ) G133 = NAND ( G121, G65 )
new_n167_ = NAND ( new_n137_, new_n136_, new_n111_, NET_9 ) G134 = NAND ( G56, G79, G130 )
new_n168_ = NAND ( NET_8, new_n115_, new_n74_, NET_19 ) G135 = AND ( G21, G132 )
NET_159 = NAND ( new_n168_, new_n167_, new_n166_ ) G136 = AND ( G132, G82 )
NET_45 = NAND ( new_n78_, new_n71_ ) G137 = NOT ( G132 )
NET_30 = BUF ( NET_18 ) G138 = NAND ( G133, G2 )
G139 = NAND ( G22, G135 )
G140 = NAND ( G23, G135 )
G141 = NAND ( G24, G135 )
G142 = NAND ( G135, G25 )
G143 = NAND ( G135, G26 )
G144 = NAND ( G135, G27 )
G145 = NAND ( G28, G135 )
G146 = NAND ( G135, G29 )
G147 = NAND ( G3, G136 )
G148 = NAND ( G136, G4 )
G149 = NAND ( G5, G136 )
G150 = NAND ( G6, G136 )
G151 = NAND ( G7, G136 )
G152 = NAND ( G8, G136 )
G153 = NAND ( G9, G136 )
G154 = NAND ( G137, G3 )
G155 = NAND ( G137, G4 )
G156 = NAND ( G137, G5 )
G157 = NAND ( G137, G6 )
G158 = NAND ( G7, G137 )
G159 = NAND ( G137, G8 )
G160 = NAND ( G137, G9 )
G161 = NAND ( G137, G10 )
G162 = NAND ( G110, G138 )
G163 = NAND ( G154, G139 )
G164 = NAND ( G140, G147, G155 )
G165 = NAND ( G141, G148, G156 )
G166 = NAND ( G157, G149, G142 )
G167 = NAND ( G150, G158, G143 )
G168 = NAND ( G159, G144, G151 )
G169 = NAND ( G160, G152, G145 )
G170 = NAND ( G146, G153, G161 )

View File

@ -1,206 +1,234 @@
# generated by verilog2bench.py https://gitea.yuhangq.com/YuhangQ/any2bench # generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
INPUT(NET_1) # gates: 206
INPUT(NET_10)
INPUT(NET_11) INPUT(G1)
INPUT(NET_12) INPUT(G2)
INPUT(NET_13) INPUT(G3)
INPUT(NET_14) INPUT(G4)
INPUT(NET_15) INPUT(G5)
INPUT(NET_16) INPUT(G6)
INPUT(NET_17) INPUT(G7)
INPUT(NET_18) INPUT(G8)
INPUT(NET_19) INPUT(G9)
INPUT(NET_2) INPUT(G10)
INPUT(NET_20) INPUT(G11)
INPUT(NET_21) INPUT(G12)
INPUT(NET_22) INPUT(G13)
INPUT(NET_23) INPUT(G14)
INPUT(NET_24) INPUT(G15)
INPUT(NET_25) INPUT(G16)
INPUT(NET_26) INPUT(G17)
INPUT(NET_27) INPUT(G18)
INPUT(NET_28) INPUT(G19)
INPUT(NET_3) INPUT(G20)
INPUT(NET_4) INPUT(G21)
INPUT(NET_5) INPUT(G22)
INPUT(NET_6) INPUT(G23)
INPUT(NET_7) INPUT(G24)
INPUT(NET_8) INPUT(G25)
INPUT(NET_9) INPUT(G26)
OUTPUT(NET_121) INPUT(G27)
OUTPUT(NET_123) INPUT(G28)
OUTPUT(NET_124)
OUTPUT(NET_125) OUTPUT(G206)
OUTPUT(NET_126) OUTPUT(G152)
OUTPUT(NET_153) OUTPUT(G47)
OUTPUT(NET_154) OUTPUT(G51)
OUTPUT(NET_156) OUTPUT(G54)
OUTPUT(NET_157) OUTPUT(G205)
OUTPUT(NET_176) OUTPUT(G156)
OUTPUT(NET_177) OUTPUT(G145)
OUTPUT(NET_178) OUTPUT(G148)
OUTPUT(NET_179) OUTPUT(G196)
OUTPUT(NET_180) OUTPUT(G142)
OUTPUT(NET_187) OUTPUT(G46)
OUTPUT(NET_188) OUTPUT(G48)
OUTPUT(NET_189) OUTPUT(G45)
OUTPUT(NET_29) OUTPUT(G197)
OUTPUT(NET_30) OUTPUT(G178)
OUTPUT(NET_31) OUTPUT(G177)
OUTPUT(NET_32) OUTPUT(G198)
OUTPUT(NET_33) OUTPUT(G203)
OUTPUT(NET_34) OUTPUT(G147)
new_n52_ = NOT ( NET_27 ) OUTPUT(G146)
new_n53_ = OR ( NET_25, NET_18 ) OUTPUT(G204)
new_n54_ = NOR ( new_n53_, NET_17 ) OUTPUT(G199)
new_n55_ = NAND ( new_n54_, new_n52_ )
new_n56_ = OR ( new_n55_, NET_5 ) G29 = NOT ( G3 )
new_n57_ = NAND ( new_n56_, NET_16 ) G30 = NOT ( G4 )
new_n58_ = NAND ( NET_25, NET_17 ) G31 = NOT ( G5 )
NET_121 = NAND ( new_n58_, new_n57_ ) G32 = NOT ( G6 )
new_n60_ = NOT ( NET_17 ) G33 = NOT ( G7 )
new_n61_ = NAND ( NET_7, new_n52_, NET_18, new_n60_ ) G34 = NAND ( G9, G11, G8, G10 )
new_n62_ = NAND ( new_n61_, NET_12 ) G35 = NOT ( G12 )
new_n63_ = NOT ( NET_21 ) G36 = NOT ( G13 )
new_n64_ = OR ( new_n61_, new_n63_ ) G37 = NOR ( G13, G14 )
NET_123 = NAND ( new_n64_, new_n62_ ) G38 = NOT ( G14 )
new_n66_ = NAND ( new_n61_, NET_13 ) G39 = NOT ( G15 )
new_n67_ = NOT ( NET_24 ) G40 = OR ( G15, G7 )
new_n68_ = OR ( new_n61_, new_n67_ ) G41 = NOT ( G16 )
NET_124 = NAND ( new_n68_, new_n66_ ) G42 = NAND ( G16, G15 )
new_n70_ = NAND ( new_n61_, NET_14 ) G43 = NAND ( G13, G16 )
new_n71_ = NOT ( NET_19 ) G44 = OR ( G13, G16 )
new_n72_ = OR ( new_n61_, new_n71_ ) G45 = BUF ( G17 )
NET_125 = NAND ( new_n72_, new_n70_ ) G46 = BUF ( G18 )
new_n74_ = NAND ( new_n61_, NET_15 ) G47 = BUF ( G19 )
new_n75_ = NOT ( NET_28 ) G48 = BUF ( G20 )
new_n76_ = OR ( new_n61_, new_n75_ ) G49 = NOT ( G21 )
NET_126 = NAND ( new_n76_, new_n74_ ) G50 = NOT ( G22 )
new_n78_ = NOR ( new_n52_, NET_18 ) G51 = BUF ( G23 )
new_n79_ = NOT ( NET_18 ) G52 = NOT ( G24 )
new_n80_ = NOR ( NET_27, new_n79_ ) G53 = NOT ( G25 )
new_n81_ = NOR ( new_n80_, new_n78_ ) G54 = BUF ( G26 )
new_n82_ = OR ( NET_6, new_n52_ ) G55 = NOT ( G27 )
new_n83_ = NOT ( NET_25 ) G56 = NOT ( G28 )
new_n84_ = OR ( NET_27, new_n83_ ) G57 = NAND ( G4, G29 )
new_n85_ = NAND ( new_n84_, new_n82_, new_n81_, new_n60_ ) G58 = NAND ( G15, G32 )
new_n86_ = NAND ( new_n85_, NET_20 ) G59 = NAND ( G34, G16 )
new_n87_ = NOT ( NET_6 ) G60 = NAND ( G35, G27 )
new_n88_ = NOR ( NET_27, new_n60_ ) G61 = NAND ( G15, G36 )
new_n89_ = NAND ( new_n88_, new_n87_, NET_18 ) G62 = NAND ( G16, G36 )
NET_153 = NAND ( new_n89_, new_n86_ ) G63 = NAND ( G4, G37 )
new_n91_ = OR ( new_n52_, NET_17 ) G64 = NAND ( G38, G15 )
new_n92_ = OR ( NET_25, NET_17 ) G65 = NAND ( G16, G39 )
new_n93_ = NAND ( new_n92_, NET_7 ) G66 = NAND ( G14, G39 )
new_n94_ = NAND ( new_n88_, NET_25 ) G67 = NAND ( G13, G39 )
new_n95_ = NAND ( new_n94_, new_n93_, new_n91_, new_n81_ ) G68 = AND ( G41, G14 )
new_n96_ = NAND ( new_n95_, NET_23 ) G69 = NAND ( G37, G41 )
new_n97_ = NAND ( new_n88_, NET_7, new_n83_, new_n79_ ) G70 = NAND ( G41, G15 )
new_n98_ = NAND ( new_n80_, NET_25, new_n60_ ) G71 = NAND ( G13, G41 )
NET_154 = NAND ( new_n98_, new_n97_, new_n96_, new_n61_ ) G72 = NOT ( G42 )
new_n100_ = NOT ( NET_4 ) G73 = NAND ( G44, G7 )
new_n101_ = OR ( new_n53_, NET_17 ) G74 = NAND ( G13, G49 )
new_n102_ = NOR ( new_n101_, new_n100_ ) G75 = NAND ( G22, G35, G52, G27 )
new_n103_ = NAND ( new_n102_, NET_3, NET_27, NET_1 ) G76 = NAND ( G55, G12 )
new_n104_ = NAND ( new_n102_, NET_3, NET_27 ) G77 = NAND ( G57, G42 )
new_n105_ = NAND ( new_n104_, NET_22 ) G78 = NOT ( G61 )
NET_156 = NAND ( new_n105_, new_n103_ ) G79 = NOT ( G63 )
new_n107_ = NAND ( new_n102_, NET_3, NET_27, NET_2 ) G80 = NOT ( G64 )
new_n108_ = NAND ( new_n104_, NET_26 ) G81 = NAND ( G41, G40, G64 )
NET_157 = NAND ( new_n108_, new_n107_ ) G82 = NOT ( G65 )
new_n110_ = NAND ( NET_27, NET_18, new_n60_ ) G83 = AND ( G66, G64 )
new_n111_ = NOT ( new_n88_ ) G84 = NAND ( G68, G15 )
new_n112_ = AND ( NET_9, NET_8, NET_25 ) G85 = NAND ( G68, G7, G39 )
new_n113_ = NAND ( new_n112_, NET_11, NET_10 ) G86 = NAND ( G13, G68, G39 )
new_n114_ = NOT ( NET_7 ) G87 = NOT ( G69 )
new_n115_ = NAND ( new_n114_, NET_27, NET_18 ) G88 = NAND ( G71, G62 )
new_n116_ = OR ( new_n53_, new_n100_ ) G89 = NAND ( G14, G72, G33 )
new_n117_ = NAND ( new_n116_, new_n115_, new_n113_ ) G90 = NOT ( G75 )
new_n118_ = NAND ( new_n117_, NET_17 ) G91 = NAND ( G75, G41 )
new_n119_ = OR ( new_n110_, new_n87_ ) G92 = NAND ( G60, G76 )
new_n120_ = AND ( new_n119_, new_n55_ ) G93 = NAND ( G37, G77 )
new_n121_ = OR ( new_n100_, NET_25 ) G94 = NAND ( G38, G30, G78 )
new_n122_ = NAND ( new_n121_, new_n78_, new_n58_ ) G95 = NAND ( G41, G78 )
new_n123_ = NAND ( new_n114_, new_n52_, NET_25, new_n60_ ) G96 = NAND ( G16, G79 )
new_n124_ = AND ( new_n123_, new_n89_, new_n61_ ) G97 = NAND ( G3, G80, G50 )
new_n125_ = NAND ( new_n124_, new_n122_, new_n120_, new_n118_ ) G98 = NAND ( G55, G3, G80 )
new_n126_ = NAND ( new_n75_, NET_24, new_n63_, NET_19 ) G99 = NAND ( G13, G81, G59 )
new_n127_ = NAND ( new_n126_, new_n60_ ) G100 = NAND ( G14, G82, G32 )
new_n128_ = NAND ( new_n127_, new_n125_, new_n111_ ) G101 = NAND ( G38, G13, G82 )
new_n129_ = NAND ( new_n128_, NET_18 ) G102 = NAND ( G4, G82, G38 )
new_n130_ = NAND ( new_n92_, new_n58_, NET_27 ) G103 = NAND ( G13, G82 )
NET_176 = NAND ( new_n130_, new_n129_, new_n110_ ) G104 = NAND ( G37, G82, G7 )
new_n132_ = NOR ( new_n126_, new_n79_, NET_17 ) G105 = NAND ( G83, G41, G58, G67 )
new_n133_ = NOR ( new_n101_, NET_5 ) G106 = NOT ( G84 )
new_n134_ = OR ( new_n133_, new_n132_ ) G107 = NOT ( G85 )
new_n135_ = NAND ( new_n134_, new_n125_, new_n52_ ) G108 = NAND ( G17, G85 )
new_n136_ = NAND ( new_n125_, new_n60_ ) G109 = NAND ( G18, G85 )
new_n137_ = NAND ( new_n136_, NET_25 ) G110 = NAND ( G85, G19 )
NET_177 = NAND ( new_n137_, new_n135_ ) G111 = NAND ( G20, G85 )
new_n139_ = OR ( new_n125_, new_n52_ ) G112 = AND ( G4, G87 )
new_n140_ = OR ( new_n52_, NET_25 ) G113 = NAND ( G87, G39 )
new_n141_ = NAND ( new_n140_, new_n125_, NET_17 ) G114 = NAND ( G87, G31 )
new_n142_ = OR ( new_n140_, NET_17 ) G115 = NAND ( G87, G31, G39 )
NET_178 = NAND ( new_n142_, new_n141_, new_n139_, new_n110_ ) G116 = NAND ( G3, G87 )
new_n144_ = OR ( new_n126_, NET_25 ) G117 = NAND ( G88, G15 )
new_n145_ = NAND ( new_n144_, new_n52_, new_n60_ ) G118 = NAND ( G88, G80 )
new_n146_ = NAND ( new_n145_, new_n110_, new_n101_ ) G119 = NAND ( G68, G90 )
new_n147_ = NAND ( new_n146_, new_n125_ ) G120 = NAND ( G90, G36 )
new_n148_ = OR ( new_n125_, new_n60_ ) G121 = NOT ( G92 )
NET_179 = NAND ( new_n148_, new_n147_ ) G122 = NAND ( G50, G92 )
new_n150_ = NOT ( NET_3 ) G123 = AND ( G96, G89, G94 )
new_n151_ = NOR ( new_n101_, new_n150_ ) G124 = NAND ( G70, G83, G103, G73 )
new_n152_ = NOR ( new_n83_, NET_16 ) G125 = NAND ( G105, G23 )
new_n153_ = NOR ( new_n152_, new_n151_ ) G126 = NAND ( G106, G6 )
new_n154_ = OR ( new_n153_, new_n52_ ) G127 = NAND ( G106, G36 )
new_n155_ = OR ( new_n110_, NET_25 ) G128 = NAND ( G107, G24 )
new_n156_ = NAND ( new_n88_, NET_25, new_n79_ ) G129 = NAND ( G107, G27 )
new_n157_ = NAND ( new_n156_, new_n155_ ) G130 = NAND ( G22, G107 )
new_n158_ = NAND ( new_n157_, NET_11 ) G131 = NAND ( G12, G107 )
new_n159_ = NAND ( new_n158_, new_n154_ ) G132 = NAND ( G3, G15, G112 )
new_n160_ = NAND ( new_n92_, new_n78_, new_n58_ ) G133 = NAND ( G29, G112 )
new_n161_ = NAND ( new_n160_, new_n156_, new_n120_, new_n116_ ) G134 = NAND ( G2, G112, G56 )
new_n162_ = NAND ( new_n161_, new_n159_ ) G135 = NAND ( G53, G112, G1 )
new_n163_ = OR ( new_n161_, new_n75_ ) G136 = NAND ( G115, G21 )
NET_180 = NAND ( new_n163_, new_n162_ ) G137 = NAND ( G74, G116 )
new_n165_ = NAND ( new_n78_, NET_3, new_n71_ ) G138 = NAND ( G114, G119 )
new_n166_ = NAND ( new_n157_, NET_10 ) G139 = NAND ( G41, G120, G39 )
new_n167_ = NAND ( new_n166_, new_n165_ ) G140 = NAND ( G121, G22 )
new_n168_ = NAND ( new_n88_, NET_4, new_n79_ ) G141 = NAND ( G124, G26 )
new_n169_ = AND ( new_n168_, new_n156_, new_n120_ ) G142 = NAND ( G125, G100 )
new_n170_ = NOT ( NET_26 ) G143 = AND ( G113, G126 )
new_n171_ = NAND ( new_n102_, new_n170_, NET_2 ) G144 = NAND ( G127, G101 )
new_n172_ = NAND ( new_n102_, new_n150_ ) G145 = NAND ( G128, G108 )
new_n173_ = NAND ( new_n172_, new_n171_, new_n169_ ) G146 = NAND ( G109, G129 )
new_n174_ = NAND ( new_n173_, new_n167_ ) G147 = NAND ( G110, G130 )
new_n175_ = OR ( new_n173_, new_n71_ ) G148 = NAND ( G131, G111 )
NET_187 = NAND ( new_n175_, new_n174_ ) G149 = NOT ( G132 )
new_n177_ = XNOR ( NET_28, NET_24 ) G150 = NAND ( G132, G25 )
new_n178_ = NAND ( new_n177_, new_n71_ ) G151 = NAND ( G28, G132 )
new_n179_ = OR ( new_n177_, new_n71_ ) G152 = NAND ( G43, G136 )
new_n180_ = NAND ( new_n179_, new_n178_, NET_27, NET_17 ) G153 = NAND ( G137, G15 )
new_n181_ = NAND ( new_n157_, NET_8 ) G154 = NAND ( G139, G69, G84 )
new_n182_ = NAND ( new_n181_, new_n180_ ) G155 = NAND ( G140, G122 )
new_n183_ = NAND ( NET_27, NET_17 ) G156 = NAND ( G104, G86, G141, G85 )
new_n184_ = OR ( new_n100_, NET_3 ) G157 = AND ( G143, G101 )
new_n185_ = AND ( new_n184_, new_n183_ ) G158 = NAND ( G99, G85, G143, G123, G100 )
new_n186_ = OR ( new_n185_, new_n53_ ) G159 = NAND ( G144, G10 )
new_n187_ = NAND ( new_n186_, new_n169_ ) G160 = NAND ( G144, G8 )
new_n188_ = NAND ( new_n187_, new_n182_ ) G161 = NAND ( G144, G9 )
new_n189_ = OR ( new_n187_, new_n63_ ) G162 = NAND ( G144, G11 )
NET_188 = NAND ( new_n189_, new_n188_ ) G163 = NAND ( G149, G1 )
new_n191_ = NAND ( new_n78_, NET_3, new_n67_ ) G164 = NAND ( G2, G149 )
new_n192_ = NAND ( new_n157_, NET_9 ) G165 = NAND ( G72, G155 )
new_n193_ = NAND ( new_n192_, new_n191_ ) G166 = AND ( G157, G102 )
new_n194_ = NOT ( NET_22 ) G167 = NAND ( G157, G118, G63 )
new_n195_ = NAND ( new_n102_, new_n194_, NET_1 ) G168 = NOT ( G158 )
new_n196_ = NAND ( new_n195_, new_n172_, new_n169_ ) G169 = NAND ( G41, G158 )
new_n197_ = NAND ( new_n196_, new_n193_ ) G170 = NAND ( G158, G138, G39 )
new_n198_ = OR ( new_n196_, new_n67_ ) G171 = NAND ( G65, G158, G91 )
NET_189 = NAND ( new_n198_, new_n197_ ) G172 = NAND ( G158, G16, G61 )
NET_29 = BUF ( NET_23 ) G173 = NAND ( G158, G154 )
NET_30 = BUF ( NET_20 ) G174 = NAND ( G159, G97 )
NET_31 = BUF ( NET_12 ) G175 = NAND ( G98, G161 )
NET_32 = BUF ( NET_13 ) G176 = NAND ( G162, G153 )
NET_33 = BUF ( NET_14 ) G177 = NAND ( G150, G163 )
NET_34 = BUF ( NET_15 ) G178 = NAND ( G164, G151 )
G179 = NAND ( G165, G160 )
G180 = NAND ( G134, G133, G166 )
G181 = NAND ( G93, G166 )
G182 = NAND ( G133, G135, G166 )
G183 = NOT ( G167 )
G184 = NAND ( G168, G15 )
G185 = NAND ( G168, G16 )
G186 = NAND ( G13, G169 )
G187 = NAND ( G171, G14 )
G188 = NAND ( G167, G176 )
G189 = NOT ( G180 )
G190 = NAND ( G180, G174 )
G191 = NOT ( G181 )
G192 = NAND ( G181, G179 )
G193 = NOT ( G182 )
G194 = NAND ( G175, G182 )
G195 = NAND ( G183, G12 )
G196 = NAND ( G184, G95, G172, G84 )
G197 = NAND ( G185, G173 )
G198 = NAND ( G170, G186 )
G199 = NAND ( G117, G187, G84 )
G200 = NAND ( G189, G22 )
G201 = NAND ( G191, G24 )
G202 = NAND ( G193, G27 )
G203 = NAND ( G188, G195 )
G204 = NAND ( G190, G200 )
G205 = NAND ( G192, G201 )
G206 = NAND ( G194, G202 )

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,386 +1,430 @@
# generated by verilog2bench.py https://gitea.yuhangq.com/YuhangQ/any2bench # generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
INPUT(NET_1) # gates: 362
INPUT(NET_10)
INPUT(NET_11) INPUT(G1)
INPUT(NET_12) INPUT(G2)
INPUT(NET_13) INPUT(G3)
INPUT(NET_14) INPUT(G4)
INPUT(NET_15) INPUT(G5)
INPUT(NET_16) INPUT(G6)
INPUT(NET_17) INPUT(G7)
INPUT(NET_18) INPUT(G8)
INPUT(NET_19) INPUT(G9)
INPUT(NET_2) INPUT(G10)
INPUT(NET_20) INPUT(G11)
INPUT(NET_21) INPUT(G12)
INPUT(NET_22) INPUT(G13)
INPUT(NET_23) INPUT(G14)
INPUT(NET_24) INPUT(G15)
INPUT(NET_25) INPUT(G16)
INPUT(NET_26) INPUT(G17)
INPUT(NET_27) INPUT(G18)
INPUT(NET_28) INPUT(G19)
INPUT(NET_29) INPUT(G20)
INPUT(NET_3) INPUT(G21)
INPUT(NET_30) INPUT(G22)
INPUT(NET_31) INPUT(G23)
INPUT(NET_32) INPUT(G24)
INPUT(NET_33) INPUT(G25)
INPUT(NET_34) INPUT(G26)
INPUT(NET_35) INPUT(G27)
INPUT(NET_36) INPUT(G28)
INPUT(NET_37) INPUT(G29)
INPUT(NET_38) INPUT(G30)
INPUT(NET_39) INPUT(G31)
INPUT(NET_4) INPUT(G32)
INPUT(NET_40) INPUT(G33)
INPUT(NET_41) INPUT(G34)
INPUT(NET_42) INPUT(G35)
INPUT(NET_43) INPUT(G36)
INPUT(NET_44) INPUT(G37)
INPUT(NET_45) INPUT(G38)
INPUT(NET_46) INPUT(G39)
INPUT(NET_47) INPUT(G40)
INPUT(NET_48) INPUT(G41)
INPUT(NET_49) INPUT(G42)
INPUT(NET_5) INPUT(G43)
INPUT(NET_50) INPUT(G44)
INPUT(NET_51) INPUT(G45)
INPUT(NET_52) INPUT(G46)
INPUT(NET_53) INPUT(G47)
INPUT(NET_54) INPUT(G48)
INPUT(NET_55) INPUT(G49)
INPUT(NET_56) INPUT(G50)
INPUT(NET_57) INPUT(G51)
INPUT(NET_58) INPUT(G52)
INPUT(NET_59) INPUT(G53)
INPUT(NET_6) INPUT(G54)
INPUT(NET_60) INPUT(G55)
INPUT(NET_61) INPUT(G56)
INPUT(NET_62) INPUT(G57)
INPUT(NET_63) INPUT(G58)
INPUT(NET_7) INPUT(G59)
INPUT(NET_8) INPUT(G60)
INPUT(NET_9) INPUT(G61)
OUTPUT(NET_171) INPUT(G62)
OUTPUT(NET_172) INPUT(G63)
OUTPUT(NET_173)
OUTPUT(NET_174) OUTPUT(G98)
OUTPUT(NET_215) OUTPUT(G246)
OUTPUT(NET_216) OUTPUT(G231)
OUTPUT(NET_217) OUTPUT(G251)
OUTPUT(NET_218) OUTPUT(G310)
OUTPUT(NET_219) OUTPUT(G253)
OUTPUT(NET_220) OUTPUT(G328)
OUTPUT(NET_221) OUTPUT(G356)
OUTPUT(NET_223) OUTPUT(G278)
OUTPUT(NET_224) OUTPUT(G126)
OUTPUT(NET_225) OUTPUT(G68)
OUTPUT(NET_251) OUTPUT(G311)
OUTPUT(NET_252) OUTPUT(G214)
OUTPUT(NET_253) OUTPUT(G309)
OUTPUT(NET_255) OUTPUT(G66)
OUTPUT(NET_256) OUTPUT(G204)
OUTPUT(NET_257) OUTPUT(G201)
OUTPUT(NET_258) OUTPUT(G342)
OUTPUT(NET_259) OUTPUT(G315)
OUTPUT(NET_260) OUTPUT(G209)
OUTPUT(NET_261) OUTPUT(G320)
OUTPUT(NET_262) OUTPUT(G247)
OUTPUT(NET_263) OUTPUT(G212)
OUTPUT(NET_264) OUTPUT(G108)
OUTPUT(NET_286) OUTPUT(G360)
OUTPUT(NET_287) OUTPUT(G325)
OUTPUT(NET_288) OUTPUT(G250)
OUTPUT(NET_289) OUTPUT(G349)
OUTPUT(NET_290) OUTPUT(G313)
OUTPUT(NET_291) OUTPUT(G102)
OUTPUT(NET_292) OUTPUT(G305)
OUTPUT(NET_301) OUTPUT(G103)
OUTPUT(NET_302) OUTPUT(G252)
OUTPUT(NET_303) OUTPUT(G254)
OUTPUT(NET_318) OUTPUT(G67)
OUTPUT(NET_319) OUTPUT(G362)
OUTPUT(NET_320) OUTPUT(G249)
OUTPUT(NET_321) OUTPUT(G232)
OUTPUT(NET_322) OUTPUT(G121)
OUTPUT(NET_323) OUTPUT(G279)
OUTPUT(NET_324) OUTPUT(G334)
OUTPUT(NET_325) OUTPUT(G314)
OUTPUT(NET_326) OUTPUT(G65)
OUTPUT(NET_327) OUTPUT(G215)
OUTPUT(NET_328) OUTPUT(G263)
OUTPUT(NET_333) OUTPUT(G298)
OUTPUT(NET_337) OUTPUT(G213)
OUTPUT(NET_338) OUTPUT(G335)
OUTPUT(NET_339) OUTPUT(G332)
OUTPUT(NET_64) OUTPUT(G211)
OUTPUT(NET_65) OUTPUT(G312)
OUTPUT(NET_66) OUTPUT(G264)
OUTPUT(NET_67) OUTPUT(G333)
OUTPUT(NET_68) OUTPUT(G291)
OUTPUT(NET_69) OUTPUT(G308)
OUTPUT(NET_70) OUTPUT(G245)
OUTPUT(NET_71) OUTPUT(G248)
OUTPUT(NET_72) OUTPUT(G178)
OUTPUT(NET_73) OUTPUT(G239)
OUTPUT(NET_75) OUTPUT(G255)
new_n127_ = NOT ( NET_58 ) OUTPUT(G110)
new_n128_ = OR ( NET_59, new_n127_ ) OUTPUT(G280)
new_n129_ = NAND ( NET_59, NET_57 ) OUTPUT(G306)
NET_171 = NAND ( new_n129_, new_n128_ )
new_n131_ = OR ( new_n127_, NET_57, NET_55 ) G64 = NOT ( G1 )
new_n132_ = NAND ( new_n127_, NET_57, NET_1 ) G65 = BUF ( G11 )
NET_172 = NAND ( new_n132_, new_n131_, NET_59 ) G66 = BUF ( G12 )
new_n134_ = NOT ( NET_50 ) G67 = BUF ( G13 )
new_n135_ = NAND ( NET_47, NET_10 ) G68 = BUF ( G14 )
new_n136_ = OR ( new_n135_, new_n134_ ) G69 = NOT ( G17 )
new_n137_ = NOT ( NET_44 ) G70 = AND ( G18, G17 )
new_n138_ = OR ( NET_62, new_n137_ ) G71 = NOT ( G18 )
NET_173 = NAND ( new_n138_, new_n136_ ) G72 = NOT ( G19 )
new_n140_ = NOR ( NET_50, NET_42 ) G73 = NOT ( G20 )
new_n141_ = OR ( new_n140_, NET_46 ) G74 = OR ( G19, G20 )
new_n142_ = NAND ( NET_50, NET_42 ) G75 = NOT ( G29 )
NET_174 = NAND ( new_n142_, new_n141_ ) G76 = NAND ( G28, G29 )
new_n144_ = NOT ( NET_61 ) G77 = NAND ( G27, G29 )
new_n145_ = NAND ( new_n144_, NET_60, NET_52 ) G78 = OR ( G29, G30 )
new_n146_ = NOT ( NET_60 ) G79 = NOT ( G30 )
new_n147_ = NAND ( new_n144_, new_n146_, NET_43 ) G80 = AND ( G31, G30 )
NET_215 = NAND ( new_n147_, new_n145_ ) G81 = NOT ( G31 )
new_n149_ = NOR ( NET_46, NET_42 ) G82 = OR ( G31, G30 )
new_n150_ = NAND ( new_n149_, NET_53 ) G83 = NOT ( G32 )
new_n151_ = NOT ( NET_46 ) G84 = NOT ( G33 )
new_n152_ = NAND ( new_n151_, NET_42 ) G85 = NOT ( G34 )
new_n153_ = NAND ( new_n152_, NET_41 ) G86 = NOT ( G35 )
NET_216 = NAND ( new_n153_, new_n150_ ) G87 = NOT ( G36 )
new_n155_ = NAND ( NET_62, NET_42 ) G88 = NOT ( G37 )
new_n156_ = NAND ( new_n155_, NET_46 ) G89 = NOT ( G38 )
new_n157_ = NOT ( NET_53 ) G90 = NOT ( G39 )
new_n158_ = OR ( new_n157_, NET_42 ) G91 = NOT ( G40 )
NET_217 = NAND ( new_n158_, new_n156_ ) G92 = NOT ( G41 )
new_n160_ = OR ( new_n129_, new_n127_ ) G93 = OR ( G40, G41, G42 )
new_n161_ = NOT ( NET_59 ) G94 = NOT ( G42 )
new_n162_ = NAND ( NET_58, NET_55 ) G95 = NAND ( G41, G42 )
new_n163_ = OR ( new_n162_, new_n161_ ) G96 = NOT ( G43 )
new_n164_ = NAND ( new_n163_, NET_43 ) G97 = NOT ( G45 )
NET_218 = NAND ( new_n164_, new_n160_ ) G98 = BUF ( G46 )
new_n166_ = NOT ( NET_57 ) G99 = NOT ( G47 )
new_n167_ = NAND ( new_n161_, new_n127_, new_n166_ ) G100 = NAND ( G47, G10 )
new_n168_ = OR ( NET_58, NET_1 ) G101 = NAND ( G47, G43 )
new_n169_ = OR ( new_n168_, new_n129_ ) G102 = BUF ( G48 )
new_n170_ = NAND ( new_n169_, NET_45 ) G103 = BUF ( G49 )
NET_219 = NAND ( new_n170_, new_n167_ ) G104 = NOT ( G50 )
new_n172_ = OR ( new_n155_, new_n151_ ) G105 = NAND ( G47, G50, G10 )
new_n173_ = NOT ( NET_52 ) G106 = NOT ( G51 )
new_n174_ = OR ( new_n149_, new_n173_ ) G107 = NOT ( G52 )
NET_220 = NAND ( new_n174_, new_n172_ ) G108 = BUF ( G54 )
new_n176_ = NAND ( new_n144_, NET_60, new_n173_ ) G109 = NOT ( G55 )
new_n177_ = NAND ( new_n176_, NET_53 ) G110 = BUF ( G56 )
new_n178_ = OR ( new_n144_, NET_60 ) G111 = NOT ( G57 )
NET_221 = NAND ( new_n178_, new_n177_ ) G112 = NOT ( G58 )
new_n180_ = OR ( new_n151_, NET_42 ) G113 = NAND ( G55, G58 )
new_n181_ = NAND ( NET_62, NET_46 ) G114 = OR ( G1, G58 )
new_n182_ = NAND ( new_n181_, NET_42 ) G115 = NOT ( G59 )
NET_223 = NAND ( new_n182_, new_n180_ ) G116 = NAND ( G59, G57, G58 )
new_n184_ = NAND ( new_n128_, NET_49 ) G117 = OR ( G59, G57, G58 )
new_n185_ = OR ( new_n128_, NET_57 ) G118 = NAND ( G59, G57 )
NET_224 = NAND ( new_n185_, new_n184_ ) G119 = NOT ( G60 )
new_n187_ = OR ( new_n173_, NET_51 ) G120 = NOT ( G61 )
new_n188_ = NAND ( new_n187_, new_n144_, NET_60 ) G121 = OR ( G47, G62, G43 )
NET_225 = NAND ( new_n188_, new_n178_ ) G122 = NOT ( G62 )
new_n190_ = NAND ( new_n145_, NET_51 ) G123 = NAND ( G19, G62, G20 )
new_n191_ = OR ( new_n145_, NET_51 ) G124 = NAND ( G19, G62 )
NET_251 = NAND ( new_n191_, new_n190_ ) G125 = NAND ( G62, G20 )
new_n193_ = NOT ( NET_54 ) G126 = BUF ( G63 )
NET_252 = NAND ( new_n191_, new_n193_ ) G127 = NAND ( G70, G16 )
new_n195_ = NOT ( NET_15 ) G128 = NAND ( G72, G20 )
new_n196_ = NOT ( NET_16 ) G129 = NAND ( G72, G20 )
new_n197_ = NAND ( NET_18, NET_17 ) G130 = NAND ( G72, G53, G73 )
new_n198_ = OR ( new_n197_, new_n196_ ) G131 = NAND ( G73, G19 )
new_n199_ = NOR ( new_n128_, new_n166_ ) G132 = NAND ( G73, G53 )
new_n200_ = NOT ( new_n199_ ) G133 = NAND ( G73, G19 )
new_n201_ = NOR ( new_n200_, new_n198_ ) G134 = NAND ( G74, G52 )
NET_253 = NOR ( new_n201_, new_n195_ ) G135 = NOT ( G78 )
new_n203_ = NOT ( NET_41 ) G136 = AND ( G79, G31 )
new_n204_ = NAND ( NET_56, new_n203_ ) G137 = NAND ( G80, G26 )
new_n205_ = NAND ( NET_47, NET_41 ) G138 = NAND ( G25, G80 )
new_n206_ = NAND ( new_n205_, new_n204_ ) G139 = NAND ( G81, G30 )
new_n207_ = NAND ( new_n206_, new_n134_ ) G140 = NAND ( G82, G83 )
new_n208_ = NAND ( new_n135_, NET_50 ) G141 = NAND ( G78, G83 )
NET_255 = NAND ( new_n208_, new_n207_ ) G142 = NAND ( G92, G42 )
new_n210_ = NOR ( NET_47, new_n203_ ) G143 = AND ( G39, G93 )
new_n211_ = NAND ( new_n210_, NET_2 ) G144 = NAND ( G94, G41 )
new_n212_ = NOT ( new_n210_ ) G145 = NOT ( G95 )
new_n213_ = NAND ( new_n212_, NET_19 ) G146 = NAND ( G40, G95 )
NET_256 = NAND ( new_n213_, new_n211_ ) G147 = NAND ( G96, G56 )
new_n215_ = NAND ( new_n210_, NET_3 ) G148 = NAND ( G97, G41 )
new_n216_ = NAND ( new_n212_, NET_20 ) G149 = NAND ( G97, G42 )
NET_257 = NAND ( new_n216_, new_n215_ ) G150 = NAND ( G97, G33 )
new_n218_ = NAND ( new_n210_, NET_4 ) G151 = NAND ( G34, G97 )
new_n219_ = NAND ( new_n212_, NET_21 ) G152 = NAND ( G35, G97 )
NET_258 = NAND ( new_n219_, new_n218_ ) G153 = NAND ( G36, G97 )
new_n221_ = NAND ( new_n210_, NET_5 ) G154 = NAND ( G37, G97 )
new_n222_ = NAND ( new_n212_, NET_22 ) G155 = NAND ( G38, G97 )
NET_259 = NAND ( new_n222_, new_n221_ ) G156 = NAND ( G39, G97 )
new_n224_ = NAND ( new_n210_, NET_6 ) G157 = NAND ( G40, G97 )
new_n225_ = NAND ( new_n212_, NET_23 ) G158 = NAND ( G43, G99 )
NET_260 = NAND ( new_n225_, new_n224_ ) G159 = NAND ( G50, G100 )
new_n227_ = NAND ( new_n210_, NET_7 ) G160 = NAND ( G52, G106 )
new_n228_ = NAND ( new_n212_, NET_24 ) G161 = NAND ( G111, G58, G109 )
NET_261 = NAND ( new_n228_, new_n227_ ) G162 = NAND ( G112, G64, G59, G57 )
new_n230_ = NAND ( new_n210_, NET_8 ) G163 = NAND ( G112, G1, G57 )
new_n231_ = NAND ( new_n212_, NET_25 ) G164 = NOT ( G113 )
NET_262 = NAND ( new_n231_, new_n230_ ) G165 = NAND ( G111, G113 )
new_n233_ = NAND ( new_n210_, NET_9 ) G166 = NAND ( G58, G115 )
new_n234_ = NAND ( new_n212_, NET_26 ) G167 = NAND ( G57, G115 )
NET_263 = NAND ( new_n234_, new_n233_ ) G168 = NAND ( G61, G119 )
new_n236_ = OR ( NET_59, new_n166_ ) G169 = NAND ( G61, G119 )
new_n237_ = NAND ( new_n162_, new_n166_ ) G170 = NAND ( G60, G120, G52 )
new_n238_ = NAND ( new_n237_, new_n168_ ) G171 = NAND ( G120, G44, G119 )
new_n239_ = NAND ( new_n238_, NET_59 ) G172 = NAND ( G60, G120, G107 )
NET_264 = NAND ( new_n239_, new_n236_ ) G173 = NAND ( G45, G122 )
new_n241_ = NAND ( new_n199_, new_n198_ ) G174 = NAND ( G124, G20 )
new_n242_ = OR ( new_n241_, new_n195_ ) G175 = NAND ( G125, G19 )
new_n243_ = NAND ( new_n200_, NET_11 ) G176 = NAND ( G128, G43 )
NET_286 = NAND ( new_n243_, new_n242_ ) G177 = NAND ( G131, G50 )
new_n245_ = OR ( new_n241_, new_n196_ ) G178 = NAND ( G134, G123 )
new_n246_ = NAND ( new_n200_, NET_12 ) G179 = NAND ( G135, G81 )
new_n247_ = OR ( new_n241_, new_n197_ ) G180 = NAND ( G136, G22 )
NET_287 = NAND ( new_n247_, new_n246_, new_n245_ ) G181 = NAND ( G136, G21 )
new_n249_ = NAND ( new_n200_, NET_14 ) G182 = NOT ( G139 )
new_n250_ = OR ( new_n241_, NET_18 ) G183 = NAND ( G32, G139 )
NET_288 = NAND ( new_n250_, new_n249_ ) G184 = NAND ( G140, G75 )
new_n252_ = OR ( new_n200_, new_n197_ ) G185 = OR ( G38, G143 )
new_n253_ = NAND ( new_n252_, NET_16 ) G186 = NAND ( G144, G142 )
NET_289 = NAND ( new_n253_, new_n247_ ) G187 = NAND ( G40, G145 )
new_n255_ = NAND ( new_n200_, NET_18 ) G188 = NAND ( G145, G91 )
NET_290 = NAND ( new_n255_, new_n250_ ) G189 = NAND ( G147, G101 )
new_n257_ = NAND ( new_n200_, NET_48 ) G190 = NOT ( G158 )
NET_291 = NAND ( new_n257_, new_n169_ ) G191 = NAND ( G21, G158 )
new_n259_ = NAND ( new_n144_, NET_60, NET_52, NET_51 ) G192 = NAND ( G158, G22 )
new_n260_ = NAND ( new_n259_, NET_55 ) G193 = NAND ( G23, G158 )
NET_292 = NAND ( new_n260_, new_n147_ ) G194 = NAND ( G158, G24 )
new_n262_ = NOT ( NET_31 ) G195 = NAND ( G25, G158 )
new_n263_ = NOT ( NET_32 ) G196 = NAND ( G158, G26 )
new_n264_ = NOT ( NET_33 ) G197 = NAND ( G27, G158 )
new_n265_ = NOT ( NET_37 ) G198 = NAND ( G28, G158 )
new_n266_ = NOR ( NET_40, NET_39, NET_38 ) G199 = NAND ( G60, G160, G120 )
new_n267_ = NOR ( new_n266_, new_n265_ ) G200 = NAND ( G46, G162 )
new_n268_ = OR ( new_n267_, NET_36 ) G201 = NAND ( G59, G163, G161 )
new_n269_ = NAND ( new_n268_, NET_35, NET_34 ) G202 = NAND ( G59, G164 )
new_n270_ = NAND ( new_n269_, new_n264_, new_n263_, new_n262_ ) G203 = NAND ( G165, G114 )
new_n271_ = AND ( new_n270_, NET_44 ) G204 = NAND ( G166, G118 )
new_n272_ = NOT ( NET_30 ) G205 = NOT ( G166 )
new_n273_ = NOT ( NET_28 ) G206 = NAND ( G49, G166 )
new_n274_ = NAND ( NET_29, new_n273_, NET_19 ) G207 = NOT ( G170 )
new_n275_ = NAND ( NET_27, NET_25 ) G208 = NAND ( G51, G170 )
new_n276_ = NAND ( NET_29, NET_28, NET_23 ) G209 = NAND ( G171, G170 )
new_n277_ = NOT ( NET_29 ) G210 = NAND ( G172, G53 )
new_n278_ = NAND ( new_n277_, NET_28, NET_21 ) G211 = NAND ( G173, G105 )
new_n279_ = NAND ( new_n278_, new_n276_, new_n275_, new_n274_ ) G212 = NAND ( G133, G174 )
new_n280_ = NAND ( new_n279_, new_n272_ ) G213 = NAND ( G175, G132 )
new_n281_ = NAND ( new_n277_, NET_28, NET_22 ) G214 = NAND ( G176, G130 )
new_n282_ = NAND ( NET_27, NET_26 ) G215 = NAND ( G129, G177 )
new_n283_ = NAND ( NET_29, NET_28, NET_24 ) G216 = NAND ( G24, G182 )
new_n284_ = NOT ( NET_27 ) G217 = NAND ( G23, G182 )
new_n285_ = NAND ( new_n277_, new_n273_, new_n284_ ) G218 = AND ( G37, G36, G185 )
new_n286_ = NAND ( NET_29, new_n273_, NET_20 ) G219 = NOT ( G187 )
new_n287_ = AND ( new_n286_, new_n285_, new_n283_ ) G220 = NAND ( G187, G39 )
new_n288_ = NAND ( new_n287_, new_n282_, new_n281_ ) G221 = NAND ( G146, G188 )
new_n289_ = NAND ( new_n288_, NET_30 ) G222 = NAND ( G104, G189 )
NET_301 = NAND ( new_n289_, new_n280_, new_n271_ ) G223 = NAND ( G2, G190 )
new_n291_ = NOT ( NET_17 ) G224 = NAND ( G3, G190 )
new_n292_ = OR ( new_n250_, new_n291_ ) G225 = NAND ( G4, G190 )
new_n293_ = NAND ( new_n200_, NET_13 ) G226 = NAND ( G190, G5 )
new_n294_ = NAND ( new_n199_, new_n198_, NET_18, new_n291_ ) G227 = NAND ( G190, G6 )
NET_302 = NAND ( new_n294_, new_n293_, new_n292_ ) G228 = NAND ( G7, G190 )
new_n296_ = NAND ( new_n199_, NET_18 ) G229 = NAND ( G8, G190 )
new_n297_ = NAND ( new_n296_, NET_17 ) G230 = NAND ( G9, G190 )
NET_303 = NAND ( new_n297_, new_n294_ ) G231 = NAND ( G169, G199 )
new_n299_ = NAND ( new_n270_, NET_44, NET_30 ) G232 = NAND ( G117, G200 )
NET_318 = NOR ( new_n299_, new_n285_ ) G233 = NAND ( G202, G44 )
new_n301_ = NOR ( new_n270_, new_n137_ ) G234 = NAND ( G59, G203 )
new_n302_ = NOT ( NET_34 ) G235 = NAND ( G205, G57 )
new_n303_ = NOT ( NET_35 ) G236 = NAND ( G205, G111 )
new_n304_ = NOT ( NET_36 ) G237 = NAND ( G106, G207 )
new_n305_ = NAND ( NET_40, NET_39, NET_38 ) G238 = NAND ( G51, G207 )
new_n306_ = OR ( new_n305_, new_n265_, new_n304_ ) G239 = NAND ( G210, G168 )
new_n307_ = OR ( new_n306_, new_n303_ ) G240 = NAND ( G76, G180, G216, G179, G137 )
new_n308_ = OR ( new_n307_, new_n302_ ) G241 = NAND ( G77, G181, G217, G138 )
new_n309_ = OR ( new_n308_, new_n264_ ) G242 = OR ( G35, G34, G218, G33 )
new_n310_ = NAND ( new_n309_, new_n263_ ) G243 = NAND ( G219, G39 )
new_n311_ = OR ( new_n308_, new_n264_, new_n263_ ) G244 = NAND ( G219, G90 )
new_n312_ = NAND ( new_n311_, new_n310_, new_n301_ ) G245 = NAND ( G222, G159 )
new_n313_ = OR ( NET_44, new_n263_ ) G246 = NAND ( G223, G191 )
NET_319 = NAND ( new_n313_, new_n312_ ) G247 = NAND ( G192, G224 )
new_n315_ = NAND ( new_n308_, new_n264_ ) G248 = NAND ( G193, G225 )
new_n316_ = NAND ( new_n315_, new_n309_, new_n301_ ) G249 = NAND ( G226, G194 )
new_n317_ = OR ( NET_44, new_n264_ ) G250 = NAND ( G195, G227 )
NET_320 = NAND ( new_n317_, new_n316_ ) G251 = NAND ( G196, G228 )
new_n319_ = NAND ( new_n307_, new_n302_ ) G252 = NAND ( G197, G229 )
new_n320_ = NAND ( new_n319_, new_n308_, new_n301_ ) G253 = NAND ( G230, G198 )
new_n321_ = OR ( NET_44, new_n302_ ) G254 = NAND ( G233, G116 )
NET_321 = NAND ( new_n321_, new_n320_ ) G255 = NAND ( G167, G234 )
new_n323_ = NAND ( new_n306_, new_n303_ ) G256 = NOT ( G235 )
new_n324_ = NAND ( new_n323_, new_n307_, new_n301_ ) G257 = NAND ( G235, G48 )
new_n325_ = OR ( NET_44, new_n303_ ) G258 = NAND ( G11, G235 )
NET_322 = NAND ( new_n325_, new_n324_ ) G259 = NAND ( G235, G12 )
new_n327_ = OR ( new_n305_, new_n265_ ) G260 = NAND ( G13, G235 )
new_n328_ = NAND ( new_n327_, new_n304_ ) G261 = NAND ( G235, G14 )
new_n329_ = OR ( new_n327_, new_n304_ ) G262 = NAND ( G18, G235 )
new_n330_ = NAND ( new_n329_, new_n328_, new_n301_ ) G263 = NAND ( G236, G206 )
new_n331_ = OR ( NET_44, new_n304_ ) G264 = NAND ( G208, G237 )
NET_323 = NAND ( new_n331_, new_n330_ ) G265 = NOT ( G237 )
new_n333_ = NAND ( new_n305_, new_n265_ ) G266 = NAND ( G55, G238 )
new_n334_ = NAND ( new_n333_, new_n327_, new_n301_ ) G267 = NAND ( G32, G240 )
new_n335_ = OR ( NET_44, new_n265_ ) G268 = NAND ( G241, G83 )
NET_324 = NAND ( new_n335_, new_n334_ ) G269 = NOT ( G242 )
new_n337_ = NOT ( NET_38 ) G270 = NAND ( G45, G242 )
new_n338_ = NAND ( NET_40, NET_39 ) G271 = NOT ( G243 )
new_n339_ = OR ( new_n338_, new_n337_ ) G272 = NAND ( G38, G243 )
new_n340_ = NAND ( new_n338_, new_n337_ ) G273 = NAND ( G220, G244 )
new_n341_ = NAND ( new_n340_, new_n339_, new_n301_ ) G274 = AND ( G127, G256 )
new_n342_ = OR ( NET_44, new_n337_ ) G275 = NAND ( G70, G256, G16 )
NET_325 = NAND ( new_n342_, new_n341_ ) G276 = NAND ( G70, G256 )
new_n344_ = OR ( NET_40, NET_39 ) G277 = NAND ( G18, G256 )
new_n345_ = NAND ( new_n344_, new_n338_, new_n301_ ) G278 = NAND ( G257, G162 )
new_n346_ = NAND ( new_n137_, NET_39 ) G279 = OR ( G54, G265 )
NET_326 = NAND ( new_n346_, new_n345_ ) G280 = NAND ( G171, G266 )
new_n348_ = NOT ( NET_40 ) G281 = AND ( G45, G269 )
new_n349_ = NAND ( new_n301_, new_n348_ ) G282 = NOT ( G270 )
new_n350_ = OR ( NET_44, new_n348_ ) G283 = NAND ( G32, G270 )
NET_327 = NAND ( new_n350_, new_n349_ ) G284 = NAND ( G38, G271 )
new_n352_ = NOR ( NET_29, NET_28 ) G285 = NAND ( G89, G271 )
new_n353_ = NOR ( new_n352_, NET_30 ) G286 = NAND ( G71, G274 )
new_n354_ = OR ( new_n353_, NET_27 ) G287 = NAND ( G18, G274, G69 )
new_n355_ = NAND ( new_n354_, new_n271_ ) G288 = NAND ( G70, G274 )
new_n356_ = OR ( new_n271_, new_n272_ ) G289 = NAND ( G274, G15 )
NET_328 = NAND ( new_n356_, new_n355_ ) G290 = NAND ( G274, G16 )
new_n358_ = XOR ( new_n311_, new_n262_ ) G291 = AND ( G275, G15 )
new_n359_ = NAND ( new_n358_, new_n301_ ) G292 = NAND ( G276, G16 )
new_n360_ = OR ( NET_44, new_n262_ ) G293 = NAND ( G277, G17 )
NET_333 = NAND ( new_n360_, new_n359_ ) G294 = NAND ( G281, G186 )
new_n362_ = OR ( NET_29, new_n273_ ) G295 = NAND ( G94, G281 )
new_n363_ = NAND ( new_n299_, NET_28 ) G296 = NAND ( G273, G281 )
new_n364_ = OR ( new_n299_, new_n277_, NET_28 ) G297 = NAND ( G221, G281 )
NET_337 = NAND ( new_n364_, new_n363_, new_n362_ ) G298 = NAND ( G268, G282, G267 )
new_n366_ = NAND ( new_n272_, new_n273_, new_n284_ ) G299 = NAND ( G32, G282 )
new_n367_ = OR ( new_n362_, new_n272_ ) G300 = NAND ( G183, G282, G141 )
new_n368_ = NAND ( new_n367_, new_n366_ ) G301 = NAND ( G184, G282 )
new_n369_ = NAND ( new_n368_, new_n271_ ) G302 = NOT ( G284 )
new_n370_ = NAND ( new_n299_, NET_29 ) G303 = NAND ( G37, G284 )
NET_338 = NAND ( new_n370_, new_n369_ ) G304 = NAND ( G272, G285 )
new_n372_ = OR ( new_n299_, new_n277_, new_n273_ ) G305 = NAND ( G286, G262 )
new_n373_ = NAND ( new_n299_, NET_27 ) G306 = NAND ( G261, G286 )
NET_339 = NAND ( new_n373_, new_n372_ ) G307 = NOT ( G286 )
NET_75 = OR ( NET_62, NET_47, NET_41 ) G308 = NAND ( G289, G258 )
NET_64 = BUF ( NET_49 ) G309 = NAND ( G259, G290, G288 )
NET_65 = BUF ( NET_48 ) G310 = NAND ( G292, G288 )
NET_66 = BUF ( NET_54 ) G311 = NAND ( G287, G293 )
NET_67 = BUF ( NET_11 ) G312 = NAND ( G294, G148 )
NET_68 = BUF ( NET_12 ) G313 = NAND ( G295, G149 )
NET_69 = BUF ( NET_13 ) G314 = NAND ( G296, G156 )
NET_70 = BUF ( NET_14 ) G315 = NAND ( G297, G157 )
NET_71 = BUF ( NET_45 ) G316 = NOT ( G299 )
NET_72 = BUF ( NET_56 ) G317 = NAND ( G299, G31 )
NET_73 = BUF ( NET_63 ) G318 = NAND ( G299, G29 )
G319 = NAND ( G299, G30 )
G320 = NAND ( G301, G283 )
G321 = NAND ( G37, G302 )
G322 = NAND ( G302, G88 )
G323 = NAND ( G304, G281 )
G324 = NAND ( G307, G17 )
G325 = AND ( G135, G81, G316 )
G326 = NAND ( G80, G316 )
G327 = NAND ( G136, G316 )
G328 = NAND ( G317, G300 )
G329 = NOT ( G321 )
G330 = NAND ( G321, G36 )
G331 = NAND ( G303, G322 )
G332 = NAND ( G155, G323 )
G333 = NAND ( G287, G324, G260 )
G334 = NAND ( G318, G326 )
G335 = NAND ( G327, G139, G319 )
G336 = NAND ( G36, G329 )
G337 = NAND ( G87, G329 )
G338 = NAND ( G331, G281 )
G339 = NOT ( G336 )
G340 = NAND ( G35, G336 )
G341 = NAND ( G330, G337 )
G342 = NAND ( G154, G338 )
G343 = NAND ( G35, G339 )
G344 = NAND ( G86, G339 )
G345 = NAND ( G341, G281 )
G346 = NOT ( G343 )
G347 = NAND ( G34, G343 )
G348 = NAND ( G340, G344 )
G349 = NAND ( G153, G345 )
G350 = NAND ( G346, G34 )
G351 = NAND ( G346, G85 )
G352 = NAND ( G348, G281 )
G353 = NOT ( G350 )
G354 = NAND ( G350, G33 )
G355 = NAND ( G347, G351 )
G356 = NAND ( G152, G352 )
G357 = NAND ( G353, G84 )
G358 = NAND ( G355, G281 )
G359 = NAND ( G354, G357 )
G360 = NAND ( G358, G151 )
G361 = NAND ( G359, G281 )
G362 = NAND ( G150, G361 )

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,17 +1,18 @@
# c17 # generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
# gates: 11
INPUT(1) INPUT(G1)
INPUT(2) INPUT(G2)
INPUT(3) INPUT(G3)
INPUT(6) INPUT(G4)
INPUT(7) INPUT(G5)
OUTPUT(22) OUTPUT(G11)
OUTPUT(23) OUTPUT(G10)
10 = NAND(1, 3) G6 = NAND ( G3, G1 )
11 = NAND(3, 6) G7 = NAND ( G4, G3 )
16 = NAND(2, 11) G8 = NAND ( G2, G7 )
19 = NAND(11, 7) G9 = NAND ( G7, G5 )
22 = NAND(10, 16) G10 = NAND ( G6, G8 )
23 = NAND(16, 19) G11 = NAND ( G8, G9 )

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,207 +1,208 @@
# c432 # generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
# gates: 196
INPUT(1) INPUT(G1)
INPUT(4) INPUT(G2)
INPUT(8) INPUT(G3)
INPUT(11) INPUT(G4)
INPUT(14) INPUT(G5)
INPUT(17) INPUT(G6)
INPUT(21) INPUT(G7)
INPUT(24) INPUT(G8)
INPUT(27) INPUT(G9)
INPUT(30) INPUT(G10)
INPUT(34) INPUT(G11)
INPUT(37) INPUT(G12)
INPUT(40) INPUT(G13)
INPUT(43) INPUT(G14)
INPUT(47) INPUT(G15)
INPUT(50) INPUT(G16)
INPUT(53) INPUT(G17)
INPUT(56) INPUT(G18)
INPUT(60) INPUT(G19)
INPUT(63) INPUT(G20)
INPUT(66) INPUT(G21)
INPUT(69) INPUT(G22)
INPUT(73) INPUT(G23)
INPUT(76) INPUT(G24)
INPUT(79) INPUT(G25)
INPUT(82) INPUT(G26)
INPUT(86) INPUT(G27)
INPUT(89) INPUT(G28)
INPUT(92) INPUT(G29)
INPUT(95) INPUT(G30)
INPUT(99) INPUT(G31)
INPUT(102) INPUT(G32)
INPUT(105) INPUT(G33)
INPUT(108) INPUT(G34)
INPUT(112) INPUT(G35)
INPUT(115) INPUT(G36)
OUTPUT(223) OUTPUT(G164)
OUTPUT(329) OUTPUT(G194)
OUTPUT(370) OUTPUT(G85)
OUTPUT(421) OUTPUT(G134)
OUTPUT(430) OUTPUT(G196)
OUTPUT(431) OUTPUT(G193)
OUTPUT(432) OUTPUT(G195)
118 = NOT(1) G37 = NOT ( G1 )
119 = NOT(4) G38 = NOT ( G2 )
122 = NOT(11) G39 = NOT ( G4 )
123 = NOT(17) G40 = NOT ( G6 )
126 = NOT(24) G41 = NOT ( G8 )
127 = NOT(30) G42 = NOT ( G10 )
130 = NOT(37) G43 = NOT ( G12 )
131 = NOT(43) G44 = NOT ( G14 )
134 = NOT(50) G45 = NOT ( G16 )
135 = NOT(56) G46 = NOT ( G18 )
138 = NOT(63) G47 = NOT ( G20 )
139 = NOT(69) G48 = NOT ( G22 )
142 = NOT(76) G49 = NOT ( G24 )
143 = NOT(82) G50 = NOT ( G26 )
146 = NOT(89) G51 = NOT ( G28 )
147 = NOT(95) G52 = NOT ( G30 )
150 = NOT(102) G53 = NOT ( G32 )
151 = NOT(108) G54 = NOT ( G34 )
154 = NAND(118, 4) G55 = NAND ( G37, G2 )
157 = NOR(8, 119) G56 = NOR ( G3, G38 )
158 = NOR(14, 119) G57 = NOR ( G5, G38 )
159 = NAND(122, 17) G58 = NAND ( G39, G6 )
162 = NAND(126, 30) G59 = NOR ( G40, G7 )
165 = NAND(130, 43) G60 = NOR ( G40, G9 )
168 = NAND(134, 56) G61 = NAND ( G10, G41 )
171 = NAND(138, 69) G62 = NOR ( G11, G42 )
174 = NAND(142, 82) G63 = NOR ( G42, G13 )
177 = NAND(146, 95) G64 = NAND ( G14, G43 )
180 = NAND(150, 108) G65 = NOR ( G44, G15 )
183 = NOR(21, 123) G66 = NOR ( G44, G17 )
184 = NOR(27, 123) G67 = NAND ( G45, G18 )
185 = NOR(34, 127) G68 = NOR ( G19, G46 )
186 = NOR(40, 127) G69 = NOR ( G21, G46 )
187 = NOR(47, 131) G70 = NAND ( G47, G22 )
188 = NOR(53, 131) G71 = NOR ( G23, G48 )
189 = NOR(60, 135) G72 = NOR ( G25, G48 )
190 = NOR(66, 135) G73 = NAND ( G49, G26 )
191 = NOR(73, 139) G74 = NOR ( G27, G50 )
192 = NOR(79, 139) G75 = NOR ( G29, G50 )
193 = NOR(86, 143) G76 = NAND ( G51, G30 )
194 = NOR(92, 143) G77 = NOR ( G52, G31 )
195 = NOR(99, 147) G78 = NOR ( G33, G52 )
196 = NOR(105, 147) G79 = NAND ( G53, G34 )
197 = NOR(112, 151) G80 = NOR ( G54, G35 )
198 = NOR(115, 151) G81 = NOR ( G54, G36 )
199 = AND(154, 159, 162, 165, 168, 171, 174, 177, 180) G82 = AND ( G67, G76, G79, G70, G73, G55, G58, G61, G64 )
203 = NOT(199) G83 = NOT ( G82 )
213 = NOT(199) G84 = NOT ( G82 )
223 = NOT(199) G85 = NOT ( G82 )
224 = XOR(203, 154) G86 = XOR ( G55, G83 )
227 = XOR(203, 159) G87 = XOR ( G58, G83 )
230 = XOR(203, 162) G88 = XOR ( G61, G83 )
233 = XOR(203, 165) G89 = XOR ( G64, G83 )
236 = XOR(203, 168) G90 = XOR ( G67, G83 )
239 = XOR(203, 171) G91 = XOR ( G70, G83 )
242 = NAND(1, 213) G92 = XOR ( G73, G83 )
243 = XOR(203, 174) G93 = XOR ( G76, G83 )
246 = NAND(213, 11) G94 = XOR ( G79, G83 )
247 = XOR(203, 177) G95 = NAND ( G1, G84 )
250 = NAND(213, 24) G96 = NAND ( G4, G84 )
251 = XOR(203, 180) G97 = NAND ( G8, G84 )
254 = NAND(213, 37) G98 = NAND ( G12, G84 )
255 = NAND(213, 50) G99 = NAND ( G16, G84 )
256 = NAND(213, 63) G100 = NAND ( G20, G84 )
257 = NAND(213, 76) G101 = NAND ( G84, G24 )
258 = NAND(213, 89) G102 = NAND ( G28, G84 )
259 = NAND(213, 102) G103 = NAND ( G32, G84 )
260 = NAND(224, 157) G104 = NAND ( G86, G56 )
263 = NAND(224, 158) G105 = NAND ( G86, G57 )
264 = NAND(227, 183) G106 = NAND ( G59, G87 )
267 = NAND(230, 185) G107 = NAND ( G60, G87 )
270 = NAND(233, 187) G108 = NAND ( G62, G88 )
273 = NAND(236, 189) G109 = NAND ( G63, G88 )
276 = NAND(239, 191) G110 = NAND ( G65, G89 )
279 = NAND(243, 193) G111 = NAND ( G66, G89 )
282 = NAND(247, 195) G112 = NAND ( G68, G90 )
285 = NAND(251, 197) G113 = NAND ( G69, G90 )
288 = NAND(227, 184) G114 = NAND ( G91, G71 )
289 = NAND(230, 186) G115 = NAND ( G91, G72 )
290 = NAND(233, 188) G116 = NAND ( G74, G92 )
291 = NAND(236, 190) G117 = NAND ( G75, G92 )
292 = NAND(239, 192) G118 = NAND ( G77, G93 )
293 = NAND(243, 194) G119 = NAND ( G78, G93 )
294 = NAND(247, 196) G120 = NAND ( G80, G94 )
295 = NAND(251, 198) G121 = NAND ( G81, G94 )
296 = AND(260, 264, 267, 270, 273, 276, 279, 282, 285) G122 = NOT ( G105 )
300 = NOT(263) G123 = NOT ( G107 )
301 = NOT(288) G124 = NOT ( G109 )
302 = NOT(289) G125 = NOT ( G111 )
303 = NOT(290) G126 = NOT ( G113 )
304 = NOT(291) G127 = NOT ( G115 )
305 = NOT(292) G128 = NOT ( G117 )
306 = NOT(293) G129 = NOT ( G119 )
307 = NOT(294) G130 = AND ( G116, G104, G112, G114, G110, G106, G120, G118, G108 )
308 = NOT(295) G131 = NOT ( G121 )
309 = NOT(296) G132 = NOT ( G130 )
319 = NOT(296) G133 = NOT ( G130 )
329 = NOT(296) G134 = NOT ( G130 )
330 = XOR(309, 260) G135 = XOR ( G104, G132 )
331 = XOR(309, 264) G136 = XOR ( G132, G106 )
332 = XOR(309, 267) G137 = XOR ( G108, G132 )
333 = XOR(309, 270) G138 = XOR ( G132, G110 )
334 = NAND(8, 319) G139 = XOR ( G132, G112 )
335 = XOR(309, 273) G140 = XOR ( G114, G132 )
336 = NAND(319, 21) G141 = XOR ( G132, G116 )
337 = XOR(309, 276) G142 = XOR ( G132, G118 )
338 = NAND(319, 34) G143 = XOR ( G120, G132 )
339 = XOR(309, 279) G144 = NAND ( G3, G133 )
340 = NAND(319, 47) G145 = NAND ( G7, G133 )
341 = XOR(309, 282) G146 = NAND ( G11, G133 )
342 = NAND(319, 60) G147 = NAND ( G15, G133 )
343 = XOR(309, 285) G148 = NAND ( G19, G133 )
344 = NAND(319, 73) G149 = NAND ( G23, G133 )
345 = NAND(319, 86) G150 = NAND ( G27, G133 )
346 = NAND(319, 99) G151 = NAND ( G31, G133 )
347 = NAND(319, 112) G152 = NAND ( G35, G133 )
348 = NAND(330, 300) G153 = NAND ( G135, G122 )
349 = NAND(331, 301) G154 = NAND ( G136, G123 )
350 = NAND(332, 302) G155 = NAND ( G137, G124 )
351 = NAND(333, 303) G156 = NAND ( G138, G125 )
352 = NAND(335, 304) G157 = NAND ( G126, G139 )
353 = NAND(337, 305) G158 = NAND ( G127, G140 )
354 = NAND(339, 306) G159 = NAND ( G128, G141 )
355 = NAND(341, 307) G160 = NAND ( G142, G129 )
356 = NAND(343, 308) G161 = NAND ( G143, G131 )
357 = AND(348, 349, 350, 351, 352, 353, 354, 355, 356) G162 = AND ( G160, G161, G158, G153, G159, G154, G156, G157, G155 )
360 = NOT(357) G163 = NOT ( G162 )
370 = NOT(357) G164 = NOT ( G162 )
371 = NAND(14, 360) G165 = NAND ( G163, G5 )
372 = NAND(360, 27) G166 = NAND ( G9, G163 )
373 = NAND(360, 40) G167 = NAND ( G163, G13 )
374 = NAND(360, 53) G168 = NAND ( G163, G17 )
375 = NAND(360, 66) G169 = NAND ( G163, G21 )
376 = NAND(360, 79) G170 = NAND ( G163, G25 )
377 = NAND(360, 92) G171 = NAND ( G29, G163 )
378 = NAND(360, 105) G172 = NAND ( G33, G163 )
379 = NAND(360, 115) G173 = NAND ( G163, G36 )
380 = NAND(4, 242, 334, 371) G174 = NAND ( G95, G165, G2, G144 )
381 = NAND(246, 336, 372, 17) G175 = NAND ( G166, G96, G145, G6 )
386 = NAND(250, 338, 373, 30) G176 = NAND ( G97, G10, G146, G167 )
393 = NAND(254, 340, 374, 43) G177 = NAND ( G98, G168, G147, G14 )
399 = NAND(255, 342, 375, 56) G178 = NAND ( G148, G18, G99, G169 )
404 = NAND(256, 344, 376, 69) G179 = NAND ( G149, G170, G22, G100 )
407 = NAND(257, 345, 377, 82) G180 = NAND ( G171, G101, G26, G150 )
411 = NAND(258, 346, 378, 95) G181 = NAND ( G172, G151, G102, G30 )
414 = NAND(259, 347, 379, 108) G182 = NAND ( G152, G173, G103, G34 )
415 = NOT(380) G183 = NOT ( G174 )
416 = AND(381, 386, 393, 399, 404, 407, 411, 414) G184 = NOT ( G177 )
417 = NOT(393) G185 = NOT ( G179 )
418 = NOT(404) G186 = NOT ( G180 )
419 = NOT(407) G187 = NOT ( G181 )
420 = NOT(411) G188 = AND ( G181, G182, G177, G180, G175, G178, G176, G179 )
421 = NOR(415, 416) G189 = NAND ( G184, G176 )
422 = NAND(386, 417) G190 = NAND ( G177, G185, G178, G176 )
425 = NAND(386, 393, 418, 399) G191 = NAND ( G177, G178, G186 )
428 = NAND(399, 393, 419) G192 = NAND ( G177, G180, G176, G187 )
429 = NAND(386, 393, 407, 420) G193 = NOR ( G188, G183 )
430 = NAND(381, 386, 422, 399) G194 = NAND ( G178, G189, G176, G175 )
431 = NAND(381, 386, 425, 428) G195 = NAND ( G191, G176, G175, G190 )
432 = NAND(381, 422, 425, 429) G196 = NAND ( G192, G189, G175, G190 )

View File

@ -1,279 +1,280 @@
# c499 # generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
# gates: 243
INPUT(1) INPUT(G1)
INPUT(5) INPUT(G2)
INPUT(9) INPUT(G3)
INPUT(13) INPUT(G4)
INPUT(17) INPUT(G5)
INPUT(21) INPUT(G6)
INPUT(25) INPUT(G7)
INPUT(29) INPUT(G8)
INPUT(33) INPUT(G9)
INPUT(37) INPUT(G10)
INPUT(41) INPUT(G11)
INPUT(45) INPUT(G12)
INPUT(49) INPUT(G13)
INPUT(53) INPUT(G14)
INPUT(57) INPUT(G15)
INPUT(61) INPUT(G16)
INPUT(65) INPUT(G17)
INPUT(69) INPUT(G18)
INPUT(73) INPUT(G19)
INPUT(77) INPUT(G20)
INPUT(81) INPUT(G21)
INPUT(85) INPUT(G22)
INPUT(89) INPUT(G23)
INPUT(93) INPUT(G24)
INPUT(97) INPUT(G25)
INPUT(101) INPUT(G26)
INPUT(105) INPUT(G27)
INPUT(109) INPUT(G28)
INPUT(113) INPUT(G29)
INPUT(117) INPUT(G30)
INPUT(121) INPUT(G31)
INPUT(125) INPUT(G32)
INPUT(129) INPUT(G33)
INPUT(130) INPUT(G34)
INPUT(131) INPUT(G35)
INPUT(132) INPUT(G36)
INPUT(133) INPUT(G37)
INPUT(134) INPUT(G38)
INPUT(135) INPUT(G39)
INPUT(136) INPUT(G40)
INPUT(137) INPUT(G41)
OUTPUT(724) OUTPUT(G216)
OUTPUT(725) OUTPUT(G217)
OUTPUT(726) OUTPUT(G227)
OUTPUT(727) OUTPUT(G215)
OUTPUT(728) OUTPUT(G230)
OUTPUT(729) OUTPUT(G213)
OUTPUT(730) OUTPUT(G221)
OUTPUT(731) OUTPUT(G214)
OUTPUT(732) OUTPUT(G226)
OUTPUT(733) OUTPUT(G235)
OUTPUT(734) OUTPUT(G233)
OUTPUT(735) OUTPUT(G238)
OUTPUT(736) OUTPUT(G236)
OUTPUT(737) OUTPUT(G240)
OUTPUT(738) OUTPUT(G234)
OUTPUT(739) OUTPUT(G218)
OUTPUT(740) OUTPUT(G224)
OUTPUT(741) OUTPUT(G228)
OUTPUT(742) OUTPUT(G239)
OUTPUT(743) OUTPUT(G219)
OUTPUT(744) OUTPUT(G225)
OUTPUT(745) OUTPUT(G229)
OUTPUT(746) OUTPUT(G237)
OUTPUT(747) OUTPUT(G232)
OUTPUT(748) OUTPUT(G243)
OUTPUT(749) OUTPUT(G242)
OUTPUT(750) OUTPUT(G220)
OUTPUT(751) OUTPUT(G241)
OUTPUT(752) OUTPUT(G223)
OUTPUT(753) OUTPUT(G222)
OUTPUT(754) OUTPUT(G231)
OUTPUT(755) OUTPUT(G212)
250 = XOR(1, 5) G42 = XOR ( G2, G1 )
251 = XOR(9, 13) G43 = XOR ( G4, G3 )
252 = XOR(17, 21) G44 = XOR ( G1, G5 )
253 = XOR(25, 29) G45 = XOR ( G5, G6 )
254 = XOR(33, 37) G46 = XOR ( G2, G6 )
255 = XOR(41, 45) G47 = XOR ( G7, G3 )
256 = XOR(49, 53) G48 = XOR ( G8, G7 )
257 = XOR(57, 61) G49 = XOR ( G4, G8 )
258 = XOR(65, 69) G50 = XOR ( G10, G9 )
259 = XOR(73, 77) G51 = XOR ( G11, G12 )
260 = XOR(81, 85) G52 = XOR ( G13, G9 )
261 = XOR(89, 93) G53 = XOR ( G13, G14 )
262 = XOR(97, 101) G54 = XOR ( G14, G10 )
263 = XOR(105, 109) G55 = XOR ( G11, G15 )
264 = XOR(113, 117) G56 = XOR ( G15, G16 )
265 = XOR(121, 125) G57 = XOR ( G12, G16 )
266 = AND(129, 137) G58 = XOR ( G18, G17 )
267 = AND(130, 137) G59 = XOR ( G20, G19 )
268 = AND(131, 137) G60 = XOR ( G21, G17 )
269 = AND(132, 137) G61 = XOR ( G22, G21 )
270 = AND(133, 137) G62 = XOR ( G18, G22 )
271 = AND(134, 137) G63 = XOR ( G19, G23 )
272 = AND(135, 137) G64 = XOR ( G23, G24 )
273 = AND(136, 137) G65 = XOR ( G20, G24 )
274 = XOR(1, 17) G66 = XOR ( G25, G26 )
275 = XOR(33, 49) G67 = XOR ( G27, G28 )
276 = XOR(5, 21) G68 = XOR ( G25, G29 )
277 = XOR(37, 53) G69 = XOR ( G30, G29 )
278 = XOR(9, 25) G70 = XOR ( G26, G30 )
279 = XOR(41, 57) G71 = XOR ( G27, G31 )
280 = XOR(13, 29) G72 = XOR ( G31, G32 )
281 = XOR(45, 61) G73 = XOR ( G28, G32 )
282 = XOR(65, 81) G74 = AND ( G41, G33 )
283 = XOR(97, 113) G75 = AND ( G34, G41 )
284 = XOR(69, 85) G76 = AND ( G41, G35 )
285 = XOR(101, 117) G77 = AND ( G36, G41 )
286 = XOR(73, 89) G78 = AND ( G37, G41 )
287 = XOR(105, 121) G79 = AND ( G41, G38 )
288 = XOR(77, 93) G80 = AND ( G39, G41 )
289 = XOR(109, 125) G81 = AND ( G41, G40 )
290 = XOR(250, 251) G82 = XOR ( G43, G42 )
293 = XOR(252, 253) G83 = XOR ( G48, G45 )
296 = XOR(254, 255) G84 = XOR ( G50, G51 )
299 = XOR(256, 257) G85 = XOR ( G44, G52 )
302 = XOR(258, 259) G86 = XOR ( G54, G46 )
305 = XOR(260, 261) G87 = XOR ( G47, G55 )
308 = XOR(262, 263) G88 = XOR ( G56, G53 )
311 = XOR(264, 265) G89 = XOR ( G57, G49 )
314 = XOR(274, 275) G90 = XOR ( G58, G59 )
315 = XOR(276, 277) G91 = XOR ( G64, G61 )
316 = XOR(278, 279) G92 = XOR ( G66, G67 )
317 = XOR(280, 281) G93 = XOR ( G68, G60 )
318 = XOR(282, 283) G94 = XOR ( G62, G70 )
319 = XOR(284, 285) G95 = XOR ( G63, G71 )
320 = XOR(286, 287) G96 = XOR ( G72, G69 )
321 = XOR(288, 289) G97 = XOR ( G65, G73 )
338 = XOR(290, 293) G98 = XOR ( G82, G83 )
339 = XOR(296, 299) G99 = XOR ( G82, G84 )
340 = XOR(290, 296) G100 = XOR ( G84, G88 )
341 = XOR(293, 299) G101 = XOR ( G83, G88 )
342 = XOR(302, 305) G102 = XOR ( G91, G90 )
343 = XOR(308, 311) G103 = XOR ( G90, G92 )
344 = XOR(302, 308) G104 = XOR ( G96, G92 )
345 = XOR(305, 311) G105 = XOR ( G96, G91 )
346 = XOR(266, 342) G106 = XOR ( G78, G98 )
347 = XOR(267, 343) G107 = XOR ( G80, G99 )
348 = XOR(268, 344) G108 = XOR ( G100, G79 )
349 = XOR(269, 345) G109 = XOR ( G81, G101 )
350 = XOR(270, 338) G110 = XOR ( G74, G102 )
351 = XOR(271, 339) G111 = XOR ( G103, G76 )
352 = XOR(272, 340) G112 = XOR ( G104, G75 )
353 = XOR(273, 341) G113 = XOR ( G77, G105 )
354 = XOR(314, 346) G114 = XOR ( G93, G106 )
367 = XOR(315, 347) G115 = XOR ( G107, G95 )
380 = XOR(316, 348) G116 = XOR ( G94, G108 )
393 = XOR(317, 349) G117 = XOR ( G97, G109 )
406 = XOR(318, 350) G118 = XOR ( G110, G85 )
419 = XOR(319, 351) G119 = XOR ( G87, G111 )
432 = XOR(320, 352) G120 = XOR ( G86, G112 )
445 = XOR(321, 353) G121 = XOR ( G113, G89 )
554 = NOT(354) G122 = NOT ( G114 )
555 = NOT(367) G123 = NOT ( G114 )
556 = NOT(380) G124 = NOT ( G114 )
557 = NOT(354) G125 = NOT ( G114 )
558 = NOT(367) G126 = NOT ( G114 )
559 = NOT(393) G127 = NOT ( G115 )
560 = NOT(354) G128 = NOT ( G115 )
561 = NOT(380) G129 = NOT ( G115 )
562 = NOT(393) G130 = NOT ( G115 )
563 = NOT(367) G131 = NOT ( G115 )
564 = NOT(380) G132 = NOT ( G116 )
565 = NOT(393) G133 = NOT ( G116 )
566 = NOT(419) G134 = NOT ( G116 )
567 = NOT(445) G135 = NOT ( G116 )
568 = NOT(419) G136 = NOT ( G116 )
569 = NOT(432) G137 = NOT ( G117 )
570 = NOT(406) G138 = NOT ( G117 )
571 = NOT(445) G139 = NOT ( G117 )
572 = NOT(406) G140 = NOT ( G117 )
573 = NOT(432) G141 = NOT ( G117 )
574 = NOT(406) G142 = NOT ( G118 )
575 = NOT(419) G143 = NOT ( G118 )
576 = NOT(432) G144 = NOT ( G118 )
577 = NOT(406) G145 = NOT ( G118 )
578 = NOT(419) G146 = NOT ( G118 )
579 = NOT(445) G147 = NOT ( G119 )
580 = NOT(406) G148 = NOT ( G119 )
581 = NOT(432) G149 = NOT ( G119 )
582 = NOT(445) G150 = NOT ( G119 )
583 = NOT(419) G151 = NOT ( G119 )
584 = NOT(432) G152 = NOT ( G120 )
585 = NOT(445) G153 = NOT ( G120 )
586 = NOT(367) G154 = NOT ( G120 )
587 = NOT(393) G155 = NOT ( G120 )
588 = NOT(367) G156 = NOT ( G120 )
589 = NOT(380) G157 = NOT ( G121 )
590 = NOT(354) G158 = NOT ( G121 )
591 = NOT(393) G159 = NOT ( G121 )
592 = NOT(354) G160 = NOT ( G121 )
593 = NOT(380) G161 = NOT ( G121 )
594 = AND(554, 555, 556, 393) G162 = AND ( G129, G124, G134, G117 )
595 = AND(557, 558, 380, 559) G163 = AND ( G115, G139, G125, G135 )
596 = AND(560, 367, 561, 562) G164 = AND ( G140, G126, G130, G116 )
597 = AND(354, 563, 564, 565) G165 = AND ( G141, G131, G114, G136 )
598 = AND(574, 575, 576, 445) G166 = AND ( G152, G121, G147, G142 )
599 = AND(577, 578, 432, 579) G167 = AND ( G119, G143, G153, G157 )
600 = AND(580, 419, 581, 582) G168 = AND ( G158, G120, G144, G148 )
601 = AND(406, 583, 584, 585) G169 = AND ( G159, G149, G154, G118 )
602 = OR(594, 595, 596, 597) G170 = OR ( G165, G163, G162, G164 )
607 = OR(598, 599, 600, 601) G171 = OR ( G169, G168, G167, G166 )
620 = AND(406, 566, 432, 567, 602) G172 = AND ( G170, G155, G119, G160, G118 )
625 = AND(406, 568, 569, 445, 602) G173 = AND ( G170, G150, G121, G156, G118 )
630 = AND(570, 419, 432, 571, 602) G174 = AND ( G170, G161, G119, G120, G145 )
635 = AND(572, 419, 573, 445, 602) G175 = AND ( G146, G170, G151, G121, G120 )
640 = AND(354, 586, 380, 587, 607) G176 = AND ( G114, G132, G115, G171, G137 )
645 = AND(354, 588, 589, 393, 607) G177 = AND ( G114, G117, G171, G127, G133 )
650 = AND(590, 367, 380, 591, 607) G178 = AND ( G122, G115, G171, G138, G116 )
655 = AND(592, 367, 593, 393, 607) G179 = AND ( G117, G171, G116, G128, G123 )
692 = AND(354, 620) G180 = AND ( G114, G172 )
693 = AND(367, 620) G181 = AND ( G116, G172 )
694 = AND(380, 620) G182 = AND ( G115, G172 )
695 = AND(393, 620) G183 = AND ( G172, G117 )
696 = AND(354, 625) G184 = AND ( G173, G114 )
697 = AND(367, 625) G185 = AND ( G173, G116 )
698 = AND(380, 625) G186 = AND ( G173, G115 )
699 = AND(393, 625) G187 = AND ( G173, G117 )
700 = AND(354, 630) G188 = AND ( G114, G174 )
701 = AND(367, 630) G189 = AND ( G116, G174 )
702 = AND(380, 630) G190 = AND ( G115, G174 )
703 = AND(393, 630) G191 = AND ( G174, G117 )
704 = AND(354, 635) G192 = AND ( G114, G175 )
705 = AND(367, 635) G193 = AND ( G116, G175 )
706 = AND(380, 635) G194 = AND ( G115, G175 )
707 = AND(393, 635) G195 = AND ( G175, G117 )
708 = AND(406, 640) G196 = AND ( G176, G118 )
709 = AND(419, 640) G197 = AND ( G120, G176 )
710 = AND(432, 640) G198 = AND ( G119, G176 )
711 = AND(445, 640) G199 = AND ( G121, G176 )
712 = AND(406, 645) G200 = AND ( G177, G118 )
713 = AND(419, 645) G201 = AND ( G177, G120 )
714 = AND(432, 645) G202 = AND ( G119, G177 )
715 = AND(445, 645) G203 = AND ( G177, G121 )
716 = AND(406, 650) G204 = AND ( G178, G118 )
717 = AND(419, 650) G205 = AND ( G178, G120 )
718 = AND(432, 650) G206 = AND ( G119, G178 )
719 = AND(445, 650) G207 = AND ( G178, G121 )
720 = AND(406, 655) G208 = AND ( G179, G118 )
721 = AND(419, 655) G209 = AND ( G179, G120 )
722 = AND(432, 655) G210 = AND ( G119, G179 )
723 = AND(445, 655) G211 = AND ( G179, G121 )
724 = XOR(1, 692) G212 = XOR ( G180, G17 )
725 = XOR(5, 693) G213 = XOR ( G18, G181 )
726 = XOR(9, 694) G214 = XOR ( G19, G182 )
727 = XOR(13, 695) G215 = XOR ( G20, G183 )
728 = XOR(17, 696) G216 = XOR ( G184, G21 )
729 = XOR(21, 697) G217 = XOR ( G185, G22 )
730 = XOR(25, 698) G218 = XOR ( G186, G23 )
731 = XOR(29, 699) G219 = XOR ( G187, G24 )
732 = XOR(33, 700) G220 = XOR ( G25, G188 )
733 = XOR(37, 701) G221 = XOR ( G189, G26 )
734 = XOR(41, 702) G222 = XOR ( G27, G190 )
735 = XOR(45, 703) G223 = XOR ( G191, G28 )
736 = XOR(49, 704) G224 = XOR ( G192, G29 )
737 = XOR(53, 705) G225 = XOR ( G193, G30 )
738 = XOR(57, 706) G226 = XOR ( G194, G31 )
739 = XOR(61, 707) G227 = XOR ( G195, G32 )
740 = XOR(65, 708) G228 = XOR ( G1, G196 )
741 = XOR(69, 709) G229 = XOR ( G2, G197 )
742 = XOR(73, 710) G230 = XOR ( G198, G3 )
743 = XOR(77, 711) G231 = XOR ( G199, G4 )
744 = XOR(81, 712) G232 = XOR ( G200, G5 )
745 = XOR(85, 713) G233 = XOR ( G201, G6 )
746 = XOR(89, 714) G234 = XOR ( G202, G7 )
747 = XOR(93, 715) G235 = XOR ( G203, G8 )
748 = XOR(97, 716) G236 = XOR ( G204, G9 )
749 = XOR(101, 717) G237 = XOR ( G205, G10 )
750 = XOR(105, 718) G238 = XOR ( G11, G206 )
751 = XOR(109, 719) G239 = XOR ( G207, G12 )
752 = XOR(113, 720) G240 = XOR ( G208, G13 )
753 = XOR(117, 721) G241 = XOR ( G14, G209 )
754 = XOR(121, 722) G242 = XOR ( G15, G210 )
755 = XOR(125, 723) G243 = XOR ( G211, G16 )

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,473 +1,474 @@
# c880 # generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
# gates: 443
INPUT(1) INPUT(G1)
INPUT(8) INPUT(G2)
INPUT(13) INPUT(G3)
INPUT(17) INPUT(G4)
INPUT(26) INPUT(G5)
INPUT(29) INPUT(G6)
INPUT(36) INPUT(G7)
INPUT(42) INPUT(G8)
INPUT(51) INPUT(G9)
INPUT(55) INPUT(G10)
INPUT(59) INPUT(G11)
INPUT(68) INPUT(G12)
INPUT(72) INPUT(G13)
INPUT(73) INPUT(G14)
INPUT(74) INPUT(G15)
INPUT(75) INPUT(G16)
INPUT(80) INPUT(G17)
INPUT(85) INPUT(G18)
INPUT(86) INPUT(G19)
INPUT(87) INPUT(G20)
INPUT(88) INPUT(G21)
INPUT(89) INPUT(G22)
INPUT(90) INPUT(G23)
INPUT(91) INPUT(G24)
INPUT(96) INPUT(G25)
INPUT(101) INPUT(G26)
INPUT(106) INPUT(G27)
INPUT(111) INPUT(G28)
INPUT(116) INPUT(G29)
INPUT(121) INPUT(G30)
INPUT(126) INPUT(G31)
INPUT(130) INPUT(G32)
INPUT(135) INPUT(G33)
INPUT(138) INPUT(G34)
INPUT(143) INPUT(G35)
INPUT(146) INPUT(G36)
INPUT(149) INPUT(G37)
INPUT(152) INPUT(G38)
INPUT(153) INPUT(G39)
INPUT(156) INPUT(G40)
INPUT(159) INPUT(G41)
INPUT(165) INPUT(G42)
INPUT(171) INPUT(G43)
INPUT(177) INPUT(G44)
INPUT(183) INPUT(G45)
INPUT(189) INPUT(G46)
INPUT(195) INPUT(G47)
INPUT(201) INPUT(G48)
INPUT(207) INPUT(G49)
INPUT(210) INPUT(G50)
INPUT(219) INPUT(G51)
INPUT(228) INPUT(G52)
INPUT(237) INPUT(G53)
INPUT(246) INPUT(G54)
INPUT(255) INPUT(G55)
INPUT(259) INPUT(G56)
INPUT(260) INPUT(G57)
INPUT(261) INPUT(G58)
INPUT(267) INPUT(G59)
INPUT(268) INPUT(G60)
OUTPUT(388) OUTPUT(G424)
OUTPUT(389) OUTPUT(G156)
OUTPUT(390) OUTPUT(G349)
OUTPUT(391) OUTPUT(G128)
OUTPUT(418) OUTPUT(G350)
OUTPUT(419) OUTPUT(G153)
OUTPUT(420) OUTPUT(G180)
OUTPUT(421) OUTPUT(G170)
OUTPUT(422) OUTPUT(G434)
OUTPUT(423) OUTPUT(G413)
OUTPUT(446) OUTPUT(G145)
OUTPUT(447) OUTPUT(G443)
OUTPUT(448) OUTPUT(G126)
OUTPUT(449) OUTPUT(G422)
OUTPUT(450) OUTPUT(G117)
OUTPUT(767) OUTPUT(G148)
OUTPUT(768) OUTPUT(G176)
OUTPUT(850) OUTPUT(G131)
OUTPUT(863) OUTPUT(G441)
OUTPUT(864) OUTPUT(G442)
OUTPUT(865) OUTPUT(G423)
OUTPUT(866) OUTPUT(G143)
OUTPUT(874) OUTPUT(G177)
OUTPUT(878) OUTPUT(G154)
OUTPUT(879) OUTPUT(G429)
OUTPUT(880) OUTPUT(G179)
269 = NAND(1, 8, 13, 17) G61 = NAND ( G2, G4, G3, G1 )
270 = NAND(1, 26, 13, 17) G62 = NAND ( G4, G5, G3, G1 )
273 = AND(29, 36, 42) G63 = AND ( G8, G7, G6 )
276 = AND(1, 26, 51) G64 = AND ( G8, G7, G6 )
279 = NAND(1, 8, 51, 17) G65 = NOR ( G8, G4 )
280 = NAND(1, 8, 13, 55) G66 = AND ( G8, G4 )
284 = NAND(59, 42, 68, 72) G67 = AND ( G9, G5, G1 )
285 = NAND(29, 68) G68 = NAND ( G2, G4, G9, G1 )
286 = NAND(59, 68, 74) G69 = NAND ( G2, G3, G10, G1 )
287 = AND(29, 75, 80) G70 = AND ( G8, G7, G11 )
290 = AND(29, 75, 42) G71 = NAND ( G12, G6 )
291 = AND(29, 36, 80) G72 = NAND ( G8, G12, G11, G13 )
292 = AND(29, 36, 42) G73 = NAND ( G12, G11, G15 )
293 = AND(59, 75, 80) G74 = AND ( G8, G16, G6 )
294 = AND(59, 75, 42) G75 = AND ( G8, G16, G11 )
295 = AND(59, 36, 80) G76 = AND ( G17, G16, G6 )
296 = AND(59, 36, 42) G77 = AND ( G17, G7, G6 )
297 = AND(85, 86) G78 = AND ( G17, G16, G11 )
298 = OR(87, 88) G79 = AND ( G17, G7, G11 )
301 = NAND(91, 96) G80 = AND ( G18, G19 )
302 = OR(91, 96) G81 = OR ( G21, G20 )
303 = NAND(101, 106) G82 = NAND ( G25, G24 )
304 = OR(101, 106) G83 = OR ( G25, G24 )
305 = NAND(111, 116) G84 = NAND ( G27, G26 )
306 = OR(111, 116) G85 = OR ( G27, G26 )
307 = NAND(121, 126) G86 = NAND ( G29, G28 )
308 = OR(121, 126) G87 = OR ( G29, G28 )
309 = AND(8, 138) G88 = NAND ( G31, G30 )
310 = NOT(268) G89 = OR ( G31, G30 )
316 = AND(51, 138) G90 = AND ( G2, G34 )
317 = AND(17, 138) G91 = AND ( G9, G34 )
318 = AND(152, 138) G92 = AND ( G34, G4 )
319 = NAND(59, 156) G93 = AND ( G38, G34 )
322 = NOR(17, 42) G94 = NAND ( G11, G40 )
323 = AND(17, 42) G95 = NAND ( G41, G42 )
324 = NAND(159, 165) G96 = OR ( G41, G42 )
325 = OR(159, 165) G97 = NAND ( G44, G43 )
326 = NAND(171, 177) G98 = OR ( G44, G43 )
327 = OR(171, 177) G99 = NAND ( G46, G45 )
328 = NAND(183, 189) G100 = OR ( G46, G45 )
329 = OR(183, 189) G101 = NAND ( G47, G48 )
330 = NAND(195, 201) G102 = OR ( G47, G48 )
331 = OR(195, 201) G103 = AND ( G50, G24 )
332 = AND(210, 91) G104 = AND ( G25, G50 )
333 = AND(210, 96) G105 = AND ( G26, G50 )
334 = AND(210, 101) G106 = AND ( G27, G50 )
335 = AND(210, 106) G107 = AND ( G28, G50 )
336 = AND(210, 111) G108 = AND ( G29, G50 )
337 = AND(255, 259) G109 = AND ( G30, G50 )
338 = AND(210, 116) G110 = AND ( G55, G56 )
339 = AND(255, 260) G111 = AND ( G55, G57 )
340 = AND(210, 121) G112 = AND ( G55, G59 )
341 = AND(255, 267) G113 = NOT ( G60 )
342 = NOT(269) G114 = NOT ( G61 )
343 = NOT(273) G115 = NOT ( G63 )
344 = OR(270, 273) G116 = OR ( G63, G62 )
345 = NOT(276) G117 = BUF ( G64 )
346 = NOT(276) G118 = NOR ( G66, G65 )
347 = NOT(279) G119 = NOT ( G67 )
348 = NOR(280, 284) G120 = NOT ( G67 )
349 = OR(280, 285) G121 = NOT ( G68 )
350 = OR(280, 286) G122 = NOT ( G70 )
351 = NOT(293) G123 = OR ( G69, G71 )
352 = NOT(294) G124 = NOR ( G69, G72 )
353 = NOT(295) G125 = OR ( G69, G73 )
354 = NOT(296) G126 = BUF ( G74 )
355 = NAND(89, 298) G127 = NOT ( G75 )
356 = AND(90, 298) G128 = BUF ( G77 )
357 = NAND(301, 302) G129 = NOT ( G78 )
360 = NAND(303, 304) G130 = NOT ( G79 )
363 = NAND(305, 306) G131 = BUF ( G80 )
366 = NAND(307, 308) G132 = NAND ( G22, G81 )
369 = NOT(310) G133 = AND ( G81, G23 )
375 = NOR(322, 323) G134 = NAND ( G83, G82 )
376 = NAND(324, 325) G135 = NAND ( G84, G85 )
379 = NAND(326, 327) G136 = NAND ( G86, G87 )
382 = NAND(328, 329) G137 = NAND ( G88, G89 )
385 = NAND(330, 331) G138 = NAND ( G96, G95 )
388 = BUFF(290) G139 = NAND ( G97, G98 )
389 = BUFF(291) G140 = NAND ( G100, G99 )
390 = BUFF(292) G141 = NAND ( G102, G101 )
391 = BUFF(297) G142 = NOT ( G113 )
392 = OR(270, 343) G143 = BUF ( G114 )
393 = NOT(345) G144 = OR ( G115, G62 )
399 = NOT(346) G145 = BUF ( G116 )
400 = AND(348, 73) G146 = NOT ( G119 )
401 = NOT(349) G147 = NOT ( G120 )
402 = NOT(350) G148 = BUF ( G122 )
403 = NOT(355) G149 = NOT ( G123 )
404 = NOT(357) G150 = AND ( G14, G124 )
405 = NOT(360) G151 = NOT ( G125 )
406 = AND(357, 360) G152 = NAND ( G127, G121 )
407 = NOT(363) G153 = BUF ( G129 )
408 = NOT(366) G154 = BUF ( G130 )
409 = AND(363, 366) G155 = NOT ( G132 )
410 = NAND(347, 352) G156 = BUF ( G133 )
411 = NOT(376) G157 = NOT ( G134 )
412 = NOT(379) G158 = NOT ( G135 )
413 = AND(376, 379) G159 = AND ( G134, G135 )
414 = NOT(382) G160 = NOT ( G136 )
415 = NOT(385) G161 = NOT ( G137 )
416 = AND(382, 385) G162 = AND ( G136, G137 )
417 = AND(210, 369) G163 = NOT ( G138 )
418 = BUFF(342) G164 = NOT ( G139 )
419 = BUFF(344) G165 = AND ( G138, G139 )
420 = BUFF(351) G166 = NOT ( G140 )
421 = BUFF(353) G167 = NOT ( G141 )
422 = BUFF(354) G168 = AND ( G141, G140 )
423 = BUFF(356) G169 = AND ( G142, G50 )
424 = NOT(400) G170 = BUF ( G144 )
425 = AND(404, 405) G171 = AND ( G10, G94, G146 )
426 = AND(407, 408) G172 = AND ( G4, G76, G146 )
427 = AND(319, 393, 55) G173 = NAND ( G10, G76, G146 )
432 = AND(393, 17, 287) G174 = NAND ( G118, G11, G146, G40 )
437 = NAND(393, 287, 55) G175 = NAND ( G4, G94, G146 )
442 = NAND(375, 59, 156, 393) G176 = BUF ( G147 )
443 = NAND(393, 319, 17) G177 = BUF ( G149 )
444 = AND(411, 412) G178 = NOT ( G150 )
445 = AND(414, 415) G179 = BUF ( G151 )
446 = BUFF(392) G180 = BUF ( G155 )
447 = BUFF(399) G181 = AND ( G158, G157 )
448 = BUFF(401) G182 = AND ( G161, G160 )
449 = BUFF(402) G183 = AND ( G163, G164 )
450 = BUFF(403) G184 = AND ( G166, G167 )
451 = NOT(424) G185 = AND ( G35, G171 )
460 = NOR(406, 425) G186 = AND ( G171, G36 )
463 = NOR(409, 426) G187 = AND ( G37, G171 )
466 = NAND(442, 410) G188 = AND ( G171, G39 )
475 = AND(143, 427) G189 = AND ( G172, G113 )
476 = AND(310, 432) G190 = AND ( G172, G113 )
477 = AND(146, 427) G191 = AND ( G172, G113 )
478 = AND(310, 432) G192 = AND ( G172, G113 )
479 = AND(149, 427) G193 = OR ( G173, G142 )
480 = AND(310, 432) G194 = OR ( G173, G142 )
481 = AND(153, 427) G195 = OR ( G173, G142 )
482 = AND(310, 432) G196 = OR ( G173, G142 )
483 = NAND(443, 1) G197 = NAND ( G152, G174 )
488 = OR(369, 437) G198 = NAND ( G175, G1 )
489 = OR(369, 437) G199 = NOT ( G178 )
490 = OR(369, 437) G200 = NOR ( G181, G159 )
491 = OR(369, 437) G201 = NOR ( G182, G162 )
492 = NOR(413, 444) G202 = NOR ( G165, G183 )
495 = NOR(416, 445) G203 = NOR ( G168, G184 )
498 = NAND(130, 460) G204 = NOR ( G189, G185 )
499 = OR(130, 460) G205 = NOR ( G190, G186 )
500 = NAND(463, 135) G206 = NOR ( G191, G187 )
501 = OR(463, 135) G207 = NOR ( G188, G192 )
502 = AND(91, 466) G208 = AND ( G197, G24 )
503 = NOR(475, 476) G209 = AND ( G25, G197 )
504 = AND(96, 466) G210 = AND ( G197, G26 )
505 = NOR(477, 478) G211 = AND ( G27, G197 )
506 = AND(101, 466) G212 = AND ( G197, G28 )
507 = NOR(479, 480) G213 = AND ( G29, G197 )
508 = AND(106, 466) G214 = AND ( G197, G30 )
509 = NOR(481, 482) G215 = AND ( G31, G197 )
510 = AND(143, 483) G216 = AND ( G198, G35 )
511 = AND(111, 466) G217 = AND ( G198, G36 )
512 = AND(146, 483) G218 = AND ( G198, G37 )
513 = AND(116, 466) G219 = AND ( G198, G39 )
514 = AND(149, 483) G220 = AND ( G41, G199 )
515 = AND(121, 466) G221 = AND ( G42, G199 )
516 = AND(153, 483) G222 = AND ( G43, G199 )
517 = AND(126, 466) G223 = AND ( G44, G199 )
518 = NAND(130, 492) G224 = AND ( G45, G199 )
519 = OR(130, 492) G225 = NAND ( G46, G199 )
520 = NAND(495, 207) G226 = NAND ( G47, G199 )
521 = OR(495, 207) G227 = NAND ( G48, G199 )
522 = AND(451, 159) G228 = NAND ( G200, G32 )
523 = AND(451, 165) G229 = OR ( G200, G32 )
524 = AND(451, 171) G230 = NAND ( G33, G201 )
525 = AND(451, 177) G231 = OR ( G33, G201 )
526 = AND(451, 183) G232 = NAND ( G202, G32 )
527 = NAND(451, 189) G233 = OR ( G202, G32 )
528 = NAND(451, 195) G234 = NAND ( G49, G203 )
529 = NAND(451, 201) G235 = OR ( G49, G203 )
530 = NAND(498, 499) G236 = NOR ( G90, G208 )
533 = NAND(500, 501) G237 = NOR ( G209, G91 )
536 = NOR(309, 502) G238 = NOR ( G210, G92 )
537 = NOR(316, 504) G239 = NOR ( G211, G93 )
538 = NOR(317, 506) G240 = NOR ( G212, G216 )
539 = NOR(318, 508) G241 = NOR ( G213, G217 )
540 = NOR(510, 511) G242 = NOR ( G218, G214 )
541 = NOR(512, 513) G243 = NOR ( G219, G215 )
542 = NOR(514, 515) G244 = NAND ( G228, G229 )
543 = NOR(516, 517) G245 = NAND ( G231, G230 )
544 = NAND(518, 519) G246 = NAND ( G232, G233 )
547 = NAND(520, 521) G247 = NAND ( G234, G235 )
550 = NOT(530) G248 = NAND ( G236, G204 )
551 = NOT(533) G249 = NAND ( G205, G237 )
552 = AND(530, 533) G250 = NAND ( G206, G238 )
553 = NAND(536, 503) G251 = NAND ( G207, G239 )
557 = NAND(537, 505) G252 = NAND ( G240, G193 )
561 = NAND(538, 507) G253 = NAND ( G241, G194 )
565 = NAND(539, 509) G254 = NAND ( G195, G242 )
569 = NAND(488, 540) G255 = NAND ( G196, G243 )
573 = NAND(489, 541) G256 = NOT ( G244 )
577 = NAND(490, 542) G257 = NOT ( G245 )
581 = NAND(491, 543) G258 = AND ( G244, G245 )
585 = NOT(544) G259 = NOT ( G246 )
586 = NOT(547) G260 = NOT ( G247 )
587 = AND(544, 547) G261 = AND ( G247, G246 )
588 = AND(550, 551) G262 = NAND ( G41, G248 )
589 = AND(585, 586) G263 = OR ( G41, G248 )
590 = NAND(553, 159) G264 = AND ( G248, G54 )
593 = OR(553, 159) G265 = NAND ( G249, G42 )
596 = AND(246, 553) G266 = OR ( G249, G42 )
597 = NAND(557, 165) G267 = AND ( G249, G54 )
600 = OR(557, 165) G268 = NAND ( G43, G250 )
605 = AND(246, 557) G269 = OR ( G43, G250 )
606 = NAND(561, 171) G270 = AND ( G54, G250 )
609 = OR(561, 171) G271 = NAND ( G44, G251 )
615 = AND(246, 561) G272 = OR ( G44, G251 )
616 = NAND(565, 177) G273 = AND ( G251, G54 )
619 = OR(565, 177) G274 = NAND ( G252, G45 )
624 = AND(246, 565) G275 = OR ( G252, G45 )
625 = NAND(569, 183) G276 = AND ( G252, G54 )
628 = OR(569, 183) G277 = NAND ( G253, G46 )
631 = AND(246, 569) G278 = OR ( G253, G46 )
632 = NAND(573, 189) G279 = AND ( G253, G54 )
635 = OR(573, 189) G280 = NAND ( G47, G254 )
640 = AND(246, 573) G281 = OR ( G47, G254 )
641 = NAND(577, 195) G282 = AND ( G254, G54 )
644 = OR(577, 195) G283 = NAND ( G255, G48 )
650 = AND(246, 577) G284 = OR ( G255, G48 )
651 = NAND(581, 201) G285 = AND ( G255, G54 )
654 = OR(581, 201) G286 = AND ( G256, G257 )
659 = AND(246, 581) G287 = AND ( G260, G259 )
660 = NOR(552, 588) G288 = NOT ( G262 )
661 = NOR(587, 589) G289 = AND ( G263, G262 )
662 = NOT(590) G290 = NOR ( G220, G264 )
665 = AND(593, 590) G291 = NOT ( G265 )
669 = NOR(596, 522) G292 = AND ( G265, G266 )
670 = NOT(597) G293 = NOR ( G267, G221 )
673 = AND(600, 597) G294 = NOT ( G268 )
677 = NOR(605, 523) G295 = AND ( G268, G269 )
678 = NOT(606) G296 = NOR ( G222, G270 )
682 = AND(609, 606) G297 = NOT ( G271 )
686 = NOR(615, 524) G298 = AND ( G272, G271 )
687 = NOT(616) G299 = NOR ( G223, G273 )
692 = AND(619, 616) G300 = NOT ( G274 )
696 = NOR(624, 525) G301 = AND ( G274, G275 )
697 = NOT(625) G302 = NOR ( G276, G224 )
700 = AND(628, 625) G303 = NOT ( G277 )
704 = NOR(631, 526) G304 = AND ( G278, G277 )
705 = NOT(632) G305 = NOR ( G110, G279 )
708 = AND(635, 632) G306 = NOT ( G280 )
712 = NOR(337, 640) G307 = AND ( G280, G281 )
713 = NOT(641) G308 = NOR ( G111, G282 )
717 = AND(644, 641) G309 = NOT ( G283 )
721 = NOR(339, 650) G310 = AND ( G284, G283 )
722 = NOT(651) G311 = NAND ( G284, G58 )
727 = AND(654, 651) G312 = NAND ( G284, G58, G281 )
731 = NOR(341, 659) G313 = NAND ( G278, G284, G58, G281 )
732 = NAND(654, 261) G314 = NOR ( G285, G112 )
733 = NAND(644, 654, 261) G315 = NOR ( G258, G286 )
734 = NAND(635, 644, 654, 261) G316 = NOR ( G261, G287 )
735 = NOT(662) G317 = NOT ( G288 )
736 = AND(228, 665) G318 = AND ( G53, G288 )
737 = AND(237, 662) G319 = AND ( G289, G52 )
738 = NOT(670) G320 = NOT ( G291 )
739 = AND(228, 673) G321 = AND ( G53, G291 )
740 = AND(237, 670) G322 = AND ( G52, G292 )
741 = NOT(678) G323 = NOT ( G294 )
742 = AND(228, 682) G324 = AND ( G53, G294 )
743 = AND(237, 678) G325 = NAND ( G294, G266 )
744 = NOT(687) G326 = AND ( G295, G52 )
745 = AND(228, 692) G327 = NOT ( G297 )
746 = AND(237, 687) G328 = AND ( G53, G297 )
747 = NOT(697) G329 = NAND ( G297, G269 )
748 = AND(228, 700) G330 = NAND ( G266, G297, G269 )
749 = AND(237, 697) G331 = AND ( G52, G298 )
750 = NOT(705) G332 = NOT ( G300 )
751 = AND(228, 708) G333 = AND ( G53, G300 )
752 = AND(237, 705) G334 = AND ( G52, G301 )
753 = NOT(713) G335 = NOT ( G303 )
754 = AND(228, 717) G336 = AND ( G53, G303 )
755 = AND(237, 713) G337 = AND ( G304, G52 )
756 = NOT(722) G338 = NOT ( G306 )
757 = NOR(727, 261) G339 = AND ( G53, G306 )
758 = AND(727, 261) G340 = NAND ( G278, G306 )
759 = AND(228, 727) G341 = AND ( G307, G52 )
760 = AND(237, 722) G342 = NOT ( G309 )
761 = NAND(644, 722) G343 = AND ( G53, G309 )
762 = NAND(635, 713) G344 = NAND ( G309, G281 )
763 = NAND(635, 644, 722) G345 = NAND ( G278, G309, G281 )
764 = NAND(609, 687) G346 = NOR ( G310, G58 )
765 = NAND(600, 678) G347 = AND ( G310, G58 )
766 = NAND(600, 609, 687) G348 = AND ( G310, G52 )
767 = BUFF(660) G349 = BUF ( G315 )
768 = BUFF(661) G350 = BUF ( G316 )
769 = NOR(736, 737) G351 = NOR ( G319, G318 )
770 = NOR(739, 740) G352 = NOR ( G321, G322 )
771 = NOR(742, 743) G353 = NOR ( G326, G324 )
772 = NOR(745, 746) G354 = NOR ( G328, G331 )
773 = NAND(750, 762, 763, 734) G355 = NOR ( G333, G334 )
777 = NOR(748, 749) G356 = NOR ( G336, G337 )
778 = NAND(753, 761, 733) G357 = NOR ( G339, G341 )
781 = NOR(751, 752) G358 = NAND ( G311, G342 )
782 = NAND(756, 732) G359 = NAND ( G344, G312, G338 )
785 = NOR(754, 755) G360 = NAND ( G340, G335, G345, G313 )
786 = NOR(757, 758) G361 = NOR ( G346, G347 )
787 = NOR(759, 760) G362 = NOR ( G343, G348 )
788 = NOR(700, 773) G363 = NOR ( G307, G358 )
789 = AND(700, 773) G364 = AND ( G307, G358 )
790 = NOR(708, 778) G365 = NOR ( G359, G304 )
791 = AND(708, 778) G366 = AND ( G359, G304 )
792 = NOR(717, 782) G367 = NOR ( G301, G360 )
793 = AND(717, 782) G368 = AND ( G301, G360 )
794 = AND(219, 786) G369 = NAND ( G275, G360 )
795 = NAND(628, 773) G370 = AND ( G361, G51 )
796 = NAND(795, 747) G371 = NOR ( G363, G364 )
802 = NOR(788, 789) G372 = NOR ( G365, G366 )
803 = NOR(790, 791) G373 = NOR ( G367, G368 )
804 = NOR(792, 793) G374 = NAND ( G332, G369 )
805 = NOR(340, 794) G375 = NOR ( G109, G370 )
806 = NOR(692, 796) G376 = AND ( G371, G51 )
807 = AND(692, 796) G377 = AND ( G372, G51 )
808 = AND(219, 802) G378 = AND ( G373, G51 )
809 = AND(219, 803) G379 = NOR ( G374, G298 )
810 = AND(219, 804) G380 = AND ( G374, G298 )
811 = NAND(805, 787, 731, 529) G381 = NAND ( G272, G374 )
812 = NAND(619, 796) G382 = NAND ( G272, G374, G269 )
813 = NAND(609, 619, 796) G383 = NAND ( G272, G374, G266, G269 )
814 = NAND(600, 609, 619, 796) G384 = NAND ( G314, G227, G375, G362 )
815 = NAND(738, 765, 766, 814) G385 = NOR ( G108, G376 )
819 = NAND(741, 764, 813) G386 = NOR ( G107, G377 )
822 = NAND(744, 812) G387 = NOR ( G106, G378 )
825 = NOR(806, 807) G388 = NOR ( G380, G379 )
826 = NOR(335, 808) G389 = NAND ( G381, G327 )
827 = NOR(336, 809) G390 = NAND ( G323, G382, G329 )
828 = NOR(338, 810) G391 = NAND ( G383, G320, G330, G325 )
829 = NOT(811) G392 = NOT ( G384 )
830 = NOR(665, 815) G393 = NAND ( G385, G357, G226, G308 )
831 = AND(665, 815) G394 = NAND ( G356, G305, G386, G225 )
832 = NOR(673, 819) G395 = NAND ( G355, G387, G302 )
833 = AND(673, 819) G396 = AND ( G388, G51 )
834 = NOR(682, 822) G397 = NOR ( G295, G389 )
835 = AND(682, 822) G398 = AND ( G295, G389 )
836 = AND(219, 825) G399 = NOR ( G390, G292 )
837 = NAND(826, 777, 704) G400 = AND ( G390, G292 )
838 = NAND(827, 781, 712, 527) G401 = NOR ( G289, G391 )
839 = NAND(828, 785, 721, 528) G402 = AND ( G289, G391 )
840 = NOT(829) G403 = NAND ( G391, G263 )
841 = NAND(815, 593) G404 = NOT ( G392 )
842 = NOR(830, 831) G405 = NOT ( G393 )
843 = NOR(832, 833) G406 = NOT ( G394 )
844 = NOR(834, 835) G407 = NOT ( G395 )
845 = NOR(334, 836) G408 = NOR ( G105, G396 )
846 = NOT(837) G409 = NOR ( G397, G398 )
847 = NOT(838) G410 = NOR ( G399, G400 )
848 = NOT(839) G411 = NOR ( G401, G402 )
849 = AND(735, 841) G412 = AND ( G403, G317 )
850 = BUFF(840) G413 = BUF ( G404 )
851 = AND(219, 842) G414 = NOT ( G405 )
852 = AND(219, 843) G415 = NOT ( G406 )
853 = AND(219, 844) G416 = NOT ( G407 )
854 = NAND(845, 772, 696) G417 = NAND ( G299, G354, G408 )
855 = NOT(846) G418 = AND ( G409, G51 )
856 = NOT(847) G419 = AND ( G410, G51 )
857 = NOT(848) G420 = AND ( G411, G51 )
858 = NOT(849) G421 = NOT ( G412 )
859 = NOR(417, 851) G422 = BUF ( G414 )
860 = NOR(332, 852) G423 = BUF ( G415 )
861 = NOR(333, 853) G424 = BUF ( G416 )
862 = NOT(854) G425 = NOT ( G417 )
863 = BUFF(855) G426 = NOR ( G104, G418 )
864 = BUFF(856) G427 = NOR ( G103, G419 )
865 = BUFF(857) G428 = NOR ( G420, G169 )
866 = BUFF(858) G429 = BUF ( G421 )
867 = NAND(859, 769, 669) G430 = NOT ( G425 )
868 = NAND(860, 770, 677) G431 = NAND ( G426, G353, G296 )
869 = NAND(861, 771, 686) G432 = NAND ( G427, G352, G293 )
870 = NOT(862) G433 = NAND ( G428, G290, G351 )
871 = NOT(867) G434 = BUF ( G430 )
872 = NOT(868) G435 = NOT ( G431 )
873 = NOT(869) G436 = NOT ( G432 )
874 = BUFF(870) G437 = NOT ( G433 )
875 = NOT(871) G438 = NOT ( G435 )
876 = NOT(872) G439 = NOT ( G436 )
877 = NOT(873) G440 = NOT ( G437 )
878 = BUFF(875) G441 = BUF ( G438 )
879 = BUFF(876) G442 = BUF ( G439 )
880 = BUFF(877) G443 = BUF ( G440 )

View File

@ -1,79 +1,88 @@
#include <unordered_set> #include <unordered_set>
#include "circuit.h" #include "checker.h"
#include "paras.h"
using namespace atpg_ls; namespace atpg_ls {
double LUTCircuit::check() { Circuit *right_circuit;
Circuit *wrong_circuit;
// static bool init = 0; int check_fault(const Pattern &p, const TMP_FAULT &f) {
// static std::unordered_set<Gate*> dt; for(int i=0; i<p.input_vector.size(); i++) {
right_circuit->PIs[i]->value = p.input_vector[i];
printf("checking circuit ...\n"); wrong_circuit->PIs[i]->value = p.input_vector[i];
double score_value_unsatisfied_cost = 0;
double score_fault_detected_weight = 0;
double score_fault_propagated_weight = 0;
double score_fault_update_cost = 0;
int unsatisfied_lut = 0;
for(LUT* lut : luts) {
assert(lut->vsat == (lut->value == lut->cal_value()));
if(!lut->vsat) {
score_value_unsatisfied_cost += lut->vunat_cost;
unsatisfied_lut++;
// printf("vunsat: %s\n", lut->name);
} }
if(lut->uptag) { for(Gate* gate : right_circuit->gates) {
score_fault_update_cost += lut->up_cost; gate->value = gate->cal_value();
} else {
int t_fd[2], t_fpl[2];
lut->cal_fault_info(t_fd, t_fpl);
assert(t_fd[0] == lut->fd[0]);
assert(t_fd[1] == lut->fd[1]);
assert(t_fpl[0] == lut->fpl[0]);
assert(t_fpl[1] == lut->fpl[1]);
} }
int input = 0; for(Gate* gate : wrong_circuit->gates) {
for(int i=0; i<lut->fanins.size(); i++) { if(gate->name == f.g->name) {
input |= (lut->fanins[i]->value << i); gate->value = f.stuck_at;
} continue;
input <<= 1;
input |= lut->value;
for(int i=lut->fanins.size(); i<lut->fanins.size()+lut->inner_gates.size(); i++) {
LUT::FaultInfo &info = lut->fault_table[i][input];
Gate* g = lut->inner_gates[i-lut->fanins.size()];
int t_fd[2], t_fpl[2];
t_fd[0] = info.fd[0] && lut->fd[!lut->value];
t_fd[1] = info.fd[1] && lut->fd[!lut->value];
t_fpl[0] = info.fpl[0] + info.fd[0] * lut->fpl[!lut->value];
t_fpl[1] = info.fpl[1] + info.fd[1] * lut->fpl[!lut->value];
score_fault_detected_weight += t_fd[0] * g->fault_detected_weight[0];
score_fault_detected_weight += t_fd[1] * g->fault_detected_weight[1];
if(!g->isPO) {
score_fault_propagated_weight += (double)t_fpl[0] / g->avg_dist * g->fault_detected_weight[0];
score_fault_propagated_weight += (double)t_fpl[1] / g->avg_dist * g->fault_detected_weight[1];
}
} }
gate->value = gate->cal_value();
} }
printf("=====================================\n"); for(int i=0; i<right_circuit->POs.size(); i++) {
printf("unsat_lut: %d\n", unsatisfied_lut); if(right_circuit->POs[i]->value != wrong_circuit->POs[i]->value) {
printf("score_value_unsatisfied_cost: %.2f\n", score_value_unsatisfied_cost); return true;
printf("score_fault_detected_weight: %.2f\n", score_fault_detected_weight); }
printf("score_fault_propagated_weight: %.2f\n", score_fault_propagated_weight); }
printf("score_fault_update_cost: %.2f\n", score_fault_update_cost); return false;
double score = - score_value_unsatisfied_cost + score_fault_detected_weight + score_fault_propagated_weight - score_fault_update_cost;
printf("score: %d\n", score);
return score;
} }
int final_check(const std::set<TMP_FAULT> &faults, const std::vector<Pattern> &patterns) {
std::set<TMP_FAULT> detected_faults;
for(auto &p : patterns) {
for(auto &f : p.detected_faults) {
printf("checking fault %s %d ... ", f.g->name.c_str(), f.stuck_at);
assert(faults.count(f));
assert(detected_faults.count(f) == 0);
// check if F is detected by P
// printf("pi size %d %d\n", right_circuit->PIs.size(), p.input_vector.size());
assert(right_circuit->PIs.size() == p.input_vector.size());
assert(wrong_circuit->PIs.size() == p.input_vector.size());
int detected = check_fault(p, f);
if(detected) {
printf("detected\n");
detected_faults.insert(f);
} else {
printf("undetected\n");
assert(false);
}
}
}
printf("final coverage: %d/%d(%.2f) pattern: %d\n", detected_faults.size(), faults.size(), (double)detected_faults.size()/faults.size(), patterns.size());
return 1;
}
void init_final_checker() {
right_circuit = new Circuit();
wrong_circuit = new Circuit();
right_circuit->parse_from_file(OPT(instance).c_str());
wrong_circuit->parse_from_file(OPT(instance).c_str());
right_circuit->insert_lines_for_stem();
wrong_circuit->insert_lines_for_stem();
right_circuit->init_topo_index();
wrong_circuit->init_topo_index();
}
}

16
src/checker.h Normal file
View File

@ -0,0 +1,16 @@
#pragma once
#include "fault.h"
#include "pattern.h"
#include "circuit.h"
#include <set>
namespace atpg_ls {
int check_fault(const Pattern &p, const TMP_FAULT &f);
int final_check(const std::set<TMP_FAULT> &faults, const std::vector<Pattern> &patterns);
void init_final_checker();
};

View File

@ -376,3 +376,77 @@ void Circuit::print() {
} }
printf(")\n"); printf(")\n");
} }
double LUTCircuit::check() {
// static bool init = 0;
// static std::unordered_set<Gate*> dt;
printf("checking circuit ...\n");
double score_value_unsatisfied_cost = 0;
double score_fault_detected_weight = 0;
double score_fault_propagated_weight = 0;
double score_fault_update_cost = 0;
int unsatisfied_lut = 0;
for(LUT* lut : luts) {
assert(lut->vsat == (lut->value == lut->cal_value()));
if(!lut->vsat) {
score_value_unsatisfied_cost += lut->vunat_cost;
unsatisfied_lut++;
// printf("vunsat: %s\n", lut->name);
}
if(lut->uptag) {
score_fault_update_cost += lut->up_cost;
} else {
int t_fd[2], t_fpl[2];
lut->cal_fault_info(t_fd, t_fpl);
assert(t_fd[0] == lut->fd[0]);
assert(t_fd[1] == lut->fd[1]);
assert(t_fpl[0] == lut->fpl[0]);
assert(t_fpl[1] == lut->fpl[1]);
}
int input = 0;
for(int i=0; i<lut->fanins.size(); i++) {
input |= (lut->fanins[i]->value << i);
}
input <<= 1;
input |= lut->value;
for(int i=lut->fanins.size(); i<lut->fanins.size()+lut->inner_gates.size(); i++) {
LUT::FaultInfo &info = lut->fault_table[i][input];
Gate* g = lut->inner_gates[i-lut->fanins.size()];
int t_fd[2], t_fpl[2];
t_fd[0] = info.fd[0] && lut->fd[!lut->value];
t_fd[1] = info.fd[1] && lut->fd[!lut->value];
t_fpl[0] = info.fpl[0] + info.fd[0] * lut->fpl[!lut->value];
t_fpl[1] = info.fpl[1] + info.fd[1] * lut->fpl[!lut->value];
score_fault_detected_weight += t_fd[0] * g->fault_detected_weight[0];
score_fault_detected_weight += t_fd[1] * g->fault_detected_weight[1];
if(!g->isPO) {
score_fault_propagated_weight += (double)t_fpl[0] / g->avg_dist * g->fault_detected_weight[0];
score_fault_propagated_weight += (double)t_fpl[1] / g->avg_dist * g->fault_detected_weight[1];
}
}
}
printf("=====================================\n");
printf("unsat_lut: %d\n", unsatisfied_lut);
printf("score_value_unsatisfied_cost: %.2f\n", score_value_unsatisfied_cost);
printf("score_fault_detected_weight: %.2f\n", score_fault_detected_weight);
printf("score_fault_propagated_weight: %.2f\n", score_fault_propagated_weight);
printf("score_fault_update_cost: %.2f\n", score_fault_update_cost);
double score = - score_value_unsatisfied_cost + score_fault_detected_weight + score_fault_propagated_weight - score_fault_update_cost;
printf("score: %d\n", score);
return score;
}

View File

@ -7,32 +7,6 @@ using ll = long long;
namespace atpg_ls { namespace atpg_ls {
struct TMP_FAULT {
/* data */
Gate *g;
std::string name;
int stuck_at;
int is_stem;
int is_PO;
friend bool operator < (const TMP_FAULT &lhs, const TMP_FAULT &rhs) {
if(lhs.name != rhs.name) {
return lhs.name < rhs.name;
}
if(lhs.stuck_at != rhs.stuck_at) {
return lhs.stuck_at < rhs.stuck_at;
}
if(lhs.is_stem != rhs.is_stem) {
return lhs.is_stem < rhs.is_stem;
}
if(lhs.is_PO != rhs.is_PO) {
return lhs.is_PO < rhs.is_PO;
}
return false;
}
};
class Simulator; class Simulator;
class Circuit; class Circuit;
@ -54,7 +28,7 @@ void ls_flip(LUT *lut);
void ls_main(); void ls_main();
void ls_init(); void ls_init();
void ls_random_sol(); void ls_random_sol();
void ls_gen_sol(Gate* target, int stuck_at); void ls_gen_sol(const TMP_FAULT &target);
// checker // checker
double check(); double check();

View File

@ -4,11 +4,30 @@
namespace atpg_ls { namespace atpg_ls {
class Fault { struct TMP_FAULT {
public: /* data */
Gate* gate; Gate *g;
enum Type { SA0, SA1 } type;
Fault(Gate* gate, Type type):gate(gate),type(type) {} std::string name;
int stuck_at;
int is_stem;
int is_PO;
friend bool operator < (const TMP_FAULT &lhs, const TMP_FAULT &rhs) {
if(lhs.name != rhs.name) {
return lhs.name < rhs.name;
}
if(lhs.stuck_at != rhs.stuck_at) {
return lhs.stuck_at < rhs.stuck_at;
}
if(lhs.is_stem != rhs.is_stem) {
return lhs.is_stem < rhs.is_stem;
}
if(lhs.is_PO != rhs.is_PO) {
return lhs.is_PO < rhs.is_PO;
}
return false;
}
}; };
} }

View File

@ -14,8 +14,6 @@ int Gate::cal_propagate_len(bool x) {
return fpl[x]; return fpl[x];
} }
std::queue<Gate*> q;
for(Gate* out : fanouts) { for(Gate* out : fanouts) {
if(!out->is_detected(this)) continue; if(!out->is_detected(this)) continue;
fpl[!value] = std::max(fpl[!value], out->fault_propagated_len[!out->value] + 1); fpl[!value] = std::max(fpl[!value], out->fault_propagated_len[!out->value] + 1);
@ -37,8 +35,8 @@ bool Gate::is_propagated() {
bool Gate::cal_fault_detected(bool x) { bool Gate::cal_fault_detected(bool x) {
if(isPO) { if(isPO) {
if(x == 0) return value; if(x == !value) return 1;
else return !value; else return 0;
} }
bool sa0 = 0; bool sa0 = 0;
@ -46,12 +44,12 @@ bool Gate::cal_fault_detected(bool x) {
for(Gate* out : fanouts) { for(Gate* out : fanouts) {
if(!out->is_propagated()) continue; if(!out->is_propagated()) continue;
if(out->cal_value() != out->value) continue; if(out->cal_value() != out->value) continue;
this->value = !this->value; this->value = !this->value;
bool detect = out->cal_value() != out->value; bool detect = (out->cal_value() != out->value);
this->value = !this->value; this->value = !this->value;
if(!detect) continue; if(!detect) continue;
sa0 |= this->value; sa0 |= this->value;

View File

@ -1,11 +1,14 @@
#include <set> #include <set>
#include <chrono> #include <chrono>
#include <iostream> #include <iostream>
#include <map>
#include "circuit.h" #include "circuit.h"
#include "paras.h" #include "paras.h"
#include "simulator.h" #include "simulator.h"
#include "sat_atpg.h" #include "sat_atpg.h"
#include "pattern.h"
#include "checker.h"
using namespace atpg_ls; using namespace atpg_ls;
@ -152,18 +155,13 @@ void LUTCircuit::ls_main() {
for(Gate* g : C->gates) { for(Gate* g : C->gates) {
std::string name = g->name; std::string name = g->name;
// if(name.find("_") != std::string::npos) {
// name = name.substr(0, name.find("_"));
// }
if(g->is_stem) { if(g->is_stem) {
// printf("stem: %s\n", name.c_str());
faults.push(TMP_FAULT{g, name, 0, 1, 0}); faults.push(TMP_FAULT{g, name, 0, 1, 0});
faults.push(TMP_FAULT{g, name, 1, 1, 0}); faults.push(TMP_FAULT{g, name, 1, 1, 0});
} else { } else {
if(g->isPO) { if(g->isPO) {
// printf("out: %s\n", name.c_str());
faults.push(TMP_FAULT{g, name, 0, g->type != Gate::LINE, g->type == Gate::LINE}); faults.push(TMP_FAULT{g, name, 0, g->type != Gate::LINE, g->type == Gate::LINE});
faults.push(TMP_FAULT{g, name, 1, g->type != Gate::LINE, g->type == Gate::LINE}); faults.push(TMP_FAULT{g, name, 1, g->type != Gate::LINE, g->type == Gate::LINE});
continue; continue;
@ -204,41 +202,21 @@ void LUTCircuit::ls_main() {
t_verify_set.insert(f); t_verify_set.insert(f);
} }
std::map<std::pair<std::string, int>, std::pair<int, int>> mp;
for(TMP_FAULT &f : t_faults) { for(TMP_FAULT &f : t_faults) {
faults.push(f); faults.push(f);
mp[std::make_pair(f.g->name, f.stuck_at)] = std::make_pair(f.is_stem, f.is_PO);
} }
// std::sort(t_faults.begin(), t_faults.end(), [](const TMP_FAULT &a, const TMP_FAULT &b) {
// int ta = std::atoi(a.g->name.substr(1).c_str());
// int tb = std::atoi(b.g->name.substr(1).c_str());
// return ta < tb;
// });
// for(auto &f : t_faults) {
// }
printf("fault-size: %d\n", t_faults.size()); printf("fault-size: %d\n", t_faults.size());
printf("verify-size: %d\n", t_verify_set.size()); printf("verify-size: %d\n", t_verify_set.size());
assert(t_faults.size() == t_verify_set.size()); assert(t_faults.size() == t_verify_set.size());
// for(TMP_FAULT &f : t_faults) { std::vector<Pattern> patterns;
// printf("!! Fault: %s stuck-at: %d is_stem: %d is_po: %d\n", f.g->name.c_str(), f.stuck_at, f.is_stem, f.is_PO);
// std::vector<int> input_vector;
// bool detected = sat_atpg(f, input_vector);
// printf(">> Fault: %s stuck-at: %d is_stem: %d is_po: %d detected: %d\n", f.g->name.c_str(), f.stuck_at, f.is_stem, f.is_PO, detected);
// }
// exit(0);
auto start = std::chrono::high_resolution_clock::now(); auto start = std::chrono::high_resolution_clock::now();
// int cnt = 0;
while(!faults.empty()) { while(!faults.empty()) {
while(!faults.empty()) { while(!faults.empty()) {
@ -271,6 +249,8 @@ void LUTCircuit::ls_main() {
continue; continue;
} }
printf("sat !\n");
assert(inputs.size() == PIs.size()); assert(inputs.size() == PIs.size());
for(int i=0; i<inputs.size(); i++) { for(int i=0; i<inputs.size(); i++) {
@ -283,12 +263,6 @@ void LUTCircuit::ls_main() {
} }
printf("\n"); printf("\n");
int score;
simulator->simulate(PIs, score, fault_detected);
if(simulator->name2gate[g->name]->fault_detected[stuck_at]) {
printf(" successful!\n");
for(LUT* lut : luts) { for(LUT* lut : luts) {
lut->input_var = 0; lut->input_var = 0;
for(int i=0; i<lut->fanins.size(); i++) { for(int i=0; i<lut->fanins.size(); i++) {
@ -297,37 +271,54 @@ void LUTCircuit::ls_main() {
} }
} }
ls_gen_sol(g, stuck_at); ls_gen_sol(f);
int res = simulator->verify(this, fault_detected); int score;
assert(res == 1); simulator->simulate(PIs, score, fault_detected);
} else { Pattern pattern;
printf(" failed!\n"); for(LUT* lut : PIs) {
simulator->name2gate[g->name]->fault_detected[stuck_at] = 1; pattern.input_vector.push_back(lut->value);
// exit(-1);
} }
// printf("g: %s\n", g->name.c_str()); assert(check_fault(pattern, f));
// assert(simulator->name2gate[g->name]->fault_detected[stuck_at]);
simulator->name2gate[g->name]->fault_detected[stuck_at] = 1;
assert(fault_detected[g->id-1][stuck_at] == 0);
int num_fault = 0; int num_fault = 0;
// check if real detected
for(Gate* g : simulator->gates) { for(Gate* g : simulator->gates) {
if(g->fault_detected[0] && !fault_detected[g->id-1][0]) { for(int i=0; i<=1; i++) {
fault_detected[g->id-1][0] = 1; if(g->fault_detected[i] && !fault_detected[g->id-1][i]) {
num_detected_fault++; fault_detected[g->id-1][i] = 1;
num_undetected_fault--;
num_fault++; if(mp.count(std::make_pair(g->name, i))) {
auto [is_tem, is_PO] = mp[std::make_pair(g->name, i)];
TMP_FAULT f = TMP_FAULT{g, g->name, i, is_tem, is_PO};
int res = check_fault(pattern, f);
if(!res) {
printf("fault: %s SA%d is not real detected!\n", g->name.c_str(), i);
fault_detected[g->id-1][i] = 0;
} else {
pattern.detected_faults.push_back(f);
}
} }
if(g->fault_detected[1] && !fault_detected[g->id-1][1]) { if(fault_detected[g->id-1][i]) {
fault_detected[g->id-1][1] = 1;
num_detected_fault++; num_detected_fault++;
num_undetected_fault--; num_undetected_fault--;
num_fault++; num_fault++;
} }
} }
}
}
patterns.push_back(pattern);
assert(num_fault > 0);
if(num_fault > 0) { if(num_fault > 0) {
num_pattern++; num_pattern++;
@ -342,12 +333,32 @@ void LUTCircuit::ls_main() {
// break; // break;
} }
for(int i=0; i<num_gates; i++) {
if(fault_detected[i][0] == 0) {
printf("undetected: %s SA0\n", simulator->gates[i]->name.c_str());
}
if(fault_detected[i][1] == 0) {
printf("undetected: %s SA1\n", simulator->gates[i]->name.c_str());
}
}
printf("====== local search end ======\n");
final_check(t_verify_set, patterns);
auto end = std::chrono::high_resolution_clock::now(); auto end = std::chrono::high_resolution_clock::now();
auto duration = std::chrono::duration_cast<std::chrono::milliseconds>(end - start).count(); auto duration = std::chrono::duration_cast<std::chrono::milliseconds>(end - start).count();
std::cout << "Execution time: " << duration << " milliseconds" << std::endl; std::cout << "Execution time: " << duration << " milliseconds" << std::endl;
} }
void LUTCircuit::ls_gen_sol(Gate* target, int stuck_at) { void LUTCircuit::ls_gen_sol(const TMP_FAULT &target) {
std::vector<int> best_sol;
int best_score = -1;
simulator->simulate(PIs, best_score, fault_detected);
for(LUT* lut : PIs) {
best_sol.push_back(lut->value);
}
for(int step=0; ; step++) { for(int step=0; ; step++) {
// printf("step: %d\n", step); // printf("step: %d\n", step);
@ -369,25 +380,61 @@ void LUTCircuit::ls_gen_sol(Gate* target, int stuck_at) {
// printf("dert_fault_propagated_weight: %.2f\n", pick->score_fault_propagated_weight); // printf("dert_fault_propagated_weight: %.2f\n", pick->score_fault_propagated_weight);
// printf("dert_up_cost: %.2f\n", pick->score_fault_update_cost); // printf("dert_up_cost: %.2f\n", pick->score_fault_update_cost);
int last = simulator->name2gate[target->name]->fault_detected[stuck_at];
ls_flip(pick); ls_flip(pick);
// double t2 = check(); // double t2 = check();
// assert(((t2 - t1) - pick->score) < 1e-6); // assert(((t2 - t1) - pick->score) < 1e-6);
if(pick->isPI) { if(pick->isPI) {
int score;
simulator->simulate(PIs, score, fault_detected); // printf("step: %d score: %d\n", step, score);
if(simulator->name2gate[target->name]->fault_detected[stuck_at] != last) {
Pattern p;
for(LUT* lut : PIs) {
p.input_vector.push_back(lut->value);
}
int res = check_fault(p, target);
if(!res) {
ls_flip(pick); ls_flip(pick);
pick->CC = 0; pick->CC = 0;
} else {
int score;
simulator->simulate(PIs, score, fault_detected);
if(score > best_score) {
best_score = score;
best_sol.clear();
for(LUT* lut : PIs) {
best_sol.push_back(lut->value);
} }
// printf("step: %d fd: %d\n", step, score);
} }
} }
}
}
assert(best_score != -1);
for(int i=0; i<PIs.size(); i++) {
PIs[i]->value = best_sol[i];
}
for(LUT* lut : luts) {
lut->input_var = 0;
for(int i=0; i<lut->fanins.size(); i++) {
LUT* in = lut->fanins[i];
lut->input_var |= (in->value << i);
}
lut->value = lut->cal_value();
lut->vsat = 1;
}
for(LUT* lut : rtopo_luts) {
lut->cal_fault_info(lut->fd, lut->fpl);
}
} }
void LUTCircuit::ls_init() { void LUTCircuit::ls_init() {
for(LUT* lut : luts) { for(LUT* lut : luts) {
static int cnt = 0; static int cnt = 0;

View File

@ -2,6 +2,7 @@
#include "simulator.h" #include "simulator.h"
#include "paras.h" #include "paras.h"
#include "sat_atpg.h" #include "sat_atpg.h"
#include "checker.h"
using namespace atpg_ls; using namespace atpg_ls;
@ -31,6 +32,8 @@ int main(int argc, char *argv[]) {
circuit->print(); circuit->print();
init_final_checker();
/** /**
* D算法/ - 200000F = (123) -> F -> (5,6) * D算法/ - 200000F = (123) -> F -> (5,6)
* SAT - 200000F * avg(N) (1011) (1010) * SAT - 200000F * avg(N) (1011) (1010)

17
src/pattern.h Normal file
View File

@ -0,0 +1,17 @@
#pragma once
#include "fault.h"
#include <vector>
namespace atpg_ls {
class Pattern {
public:
std::vector<int> input_vector;
std::vector<TMP_FAULT> detected_faults;
};
}