正确的记录score
This commit is contained in:
parent
c80b0ea45b
commit
b4916a2a9b
@ -4,8 +4,8 @@ project(atpg)
|
|||||||
set(CMAKE_CXX_STANDARD 17)
|
set(CMAKE_CXX_STANDARD 17)
|
||||||
|
|
||||||
# 设置编译器优化选项
|
# 设置编译器优化选项
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -g")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O0 -g")
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O3 -g")
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O0 -g")
|
||||||
|
|
||||||
# 设置源文件和头文件的路径
|
# 设置源文件和头文件的路径
|
||||||
aux_source_directory(${PROJECT_SOURCE_DIR}/src SOURCES)
|
aux_source_directory(${PROJECT_SOURCE_DIR}/src SOURCES)
|
||||||
|
@ -1,62 +1,59 @@
|
|||||||
# generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
|
# generated by verilog2bench.py https://gitea.yuhangq.com/YuhangQ/any2bench
|
||||||
# gates: 52
|
|
||||||
|
|
||||||
INPUT(G1)
|
INPUT(NET_1)
|
||||||
INPUT(G2)
|
INPUT(NET_2)
|
||||||
INPUT(G3)
|
INPUT(NET_3)
|
||||||
INPUT(G4)
|
INPUT(NET_4)
|
||||||
INPUT(G5)
|
INPUT(NET_5)
|
||||||
INPUT(G6)
|
INPUT(NET_6)
|
||||||
INPUT(G7)
|
INPUT(NET_7)
|
||||||
|
|
||||||
OUTPUT(G29)
|
OUTPUT(NET_112)
|
||||||
OUTPUT(G51)
|
OUTPUT(NET_41)
|
||||||
OUTPUT(G49)
|
OUTPUT(NET_42)
|
||||||
OUTPUT(G50)
|
OUTPUT(NET_45)
|
||||||
OUTPUT(G52)
|
OUTPUT(NET_46)
|
||||||
|
OUTPUT(NET_8)
|
||||||
|
OUTPUT(NET_9)
|
||||||
|
|
||||||
G8 = NOT ( G1 )
|
new_n15_ = NOT ( NET_3 )
|
||||||
G9 = OR ( G2, G1 )
|
NET_112 = AND ( NET_5, NET_4, new_n15_ )
|
||||||
G10 = NOT ( G2 )
|
new_n17_ = NAND ( NET_2, NET_1 )
|
||||||
G11 = NAND ( G1, G2 )
|
new_n18_ = OR ( NET_2, NET_1 )
|
||||||
G12 = NOT ( G4 )
|
new_n19_ = AND ( new_n18_, new_n17_ )
|
||||||
G13 = NOT ( G5 )
|
new_n20_ = NOT ( NET_1 )
|
||||||
G14 = NOT ( G6 )
|
new_n21_ = NOT ( NET_2 )
|
||||||
G15 = NAND ( G2, G8 )
|
new_n22_ = NOR ( new_n21_, new_n20_ )
|
||||||
G16 = NOT ( G9 )
|
new_n23_ = NOR ( new_n22_, NET_4 )
|
||||||
G17 = NAND ( G1, G10 )
|
new_n24_ = NAND ( new_n23_, new_n19_, NET_3 )
|
||||||
G18 = NOT ( G11 )
|
new_n25_ = NAND ( new_n23_, NET_5, NET_3 )
|
||||||
G19 = NAND ( G4, G11 )
|
new_n26_ = NAND ( NET_4, NET_3 )
|
||||||
G20 = NAND ( G6, G11 )
|
new_n27_ = NAND ( new_n26_, new_n22_ )
|
||||||
G21 = AND ( G5, G12, G6 )
|
new_n28_ = NOT ( NET_4 )
|
||||||
G22 = NAND ( G6, G13, G11 )
|
new_n29_ = NOR ( NET_5, new_n28_ )
|
||||||
G23 = NAND ( G5, G14 )
|
new_n30_ = NAND ( new_n29_, new_n15_ )
|
||||||
G24 = NAND ( G9, G14 )
|
NET_41 = NAND ( new_n30_, new_n27_, new_n25_, new_n24_ )
|
||||||
G25 = NAND ( G16, G14 )
|
new_n32_ = NAND ( new_n18_, new_n17_ )
|
||||||
G26 = NAND ( G5, G16 )
|
new_n33_ = NAND ( new_n32_, new_n28_, NET_3 )
|
||||||
G27 = NAND ( G15, G17 )
|
new_n34_ = NOR ( new_n29_, new_n15_ )
|
||||||
G28 = NAND ( G18, G14 )
|
new_n35_ = OR ( new_n34_, new_n32_ )
|
||||||
G29 = BUF ( G21 )
|
new_n36_ = NAND ( new_n32_, NET_5, NET_3 )
|
||||||
G30 = NAND ( G21, G11 )
|
NET_42 = NAND ( new_n36_, new_n35_, new_n33_ )
|
||||||
G31 = NAND ( G4, G23 )
|
new_n38_ = NAND ( new_n19_, NET_5, NET_3 )
|
||||||
G32 = NOT ( G23 )
|
new_n39_ = NAND ( new_n29_, new_n22_ )
|
||||||
G33 = NAND ( G11, G23 )
|
new_n40_ = AND ( new_n39_, new_n38_ )
|
||||||
G34 = NAND ( G23, G9, G4 )
|
new_n41_ = OR ( new_n33_, new_n22_ )
|
||||||
G35 = NAND ( G25, G13, G4 )
|
new_n42_ = NAND ( new_n17_, NET_5, new_n28_ )
|
||||||
G36 = NAND ( G24, G26, G4 )
|
new_n43_ = NAND ( new_n22_, NET_5, NET_3 )
|
||||||
G37 = NOT ( G27 )
|
new_n44_ = AND ( new_n43_, new_n42_, new_n30_ )
|
||||||
G38 = NAND ( G28, G20, G13, G12 )
|
NET_45 = NAND ( new_n44_, new_n41_, new_n40_ )
|
||||||
G39 = NOT ( G31 )
|
new_n46_ = NOT ( NET_5 )
|
||||||
G40 = NAND ( G27, G31 )
|
new_n47_ = NOR ( new_n46_, NET_4 )
|
||||||
G41 = NAND ( G32, G19 )
|
new_n48_ = NOR ( new_n47_, NET_3 )
|
||||||
G42 = NAND ( G18, G32 )
|
new_n49_ = OR ( new_n48_, new_n17_ )
|
||||||
G43 = NAND ( G33, G12 )
|
new_n50_ = NAND ( new_n17_, new_n46_, new_n28_, new_n15_ )
|
||||||
G44 = NAND ( G39, G37 )
|
new_n51_ = NAND ( new_n17_, NET_112 )
|
||||||
G45 = NAND ( G36, G22, G41 )
|
new_n52_ = AND ( new_n51_, new_n50_ )
|
||||||
G46 = NAND ( G42, G30, G34, G38 )
|
NET_46 = NAND ( new_n52_, new_n49_, new_n40_, new_n24_ )
|
||||||
G47 = NAND ( G35, G43 )
|
NET_8 = BUF ( NET_6 )
|
||||||
G48 = NAND ( G40, G44 )
|
NET_9 = BUF ( NET_7 )
|
||||||
G49 = BUF ( G45 )
|
|
||||||
G50 = BUF ( G46 )
|
|
||||||
G51 = BUF ( G47 )
|
|
||||||
G52 = BUF ( G48 )
|
|
||||||
|
@ -1,221 +1,187 @@
|
|||||||
# generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
|
# generated by verilog2bench.py https://gitea.yuhangq.com/YuhangQ/any2bench
|
||||||
# gates: 186
|
INPUT(NET_1)
|
||||||
|
INPUT(NET_10)
|
||||||
INPUT(G1)
|
INPUT(NET_11)
|
||||||
INPUT(G2)
|
INPUT(NET_12)
|
||||||
INPUT(G3)
|
INPUT(NET_13)
|
||||||
INPUT(G4)
|
INPUT(NET_14)
|
||||||
INPUT(G5)
|
INPUT(NET_15)
|
||||||
INPUT(G6)
|
INPUT(NET_16)
|
||||||
INPUT(G7)
|
INPUT(NET_17)
|
||||||
INPUT(G8)
|
INPUT(NET_18)
|
||||||
INPUT(G9)
|
INPUT(NET_19)
|
||||||
INPUT(G10)
|
INPUT(NET_2)
|
||||||
INPUT(G11)
|
INPUT(NET_20)
|
||||||
INPUT(G12)
|
INPUT(NET_21)
|
||||||
INPUT(G13)
|
INPUT(NET_22)
|
||||||
INPUT(G14)
|
INPUT(NET_23)
|
||||||
INPUT(G15)
|
INPUT(NET_24)
|
||||||
INPUT(G16)
|
INPUT(NET_25)
|
||||||
INPUT(G17)
|
INPUT(NET_26)
|
||||||
INPUT(G18)
|
INPUT(NET_27)
|
||||||
INPUT(G19)
|
INPUT(NET_28)
|
||||||
INPUT(G20)
|
INPUT(NET_29)
|
||||||
INPUT(G21)
|
INPUT(NET_3)
|
||||||
INPUT(G22)
|
INPUT(NET_30)
|
||||||
INPUT(G23)
|
INPUT(NET_31)
|
||||||
INPUT(G24)
|
INPUT(NET_32)
|
||||||
INPUT(G25)
|
INPUT(NET_33)
|
||||||
INPUT(G26)
|
INPUT(NET_34)
|
||||||
INPUT(G27)
|
INPUT(NET_4)
|
||||||
INPUT(G28)
|
INPUT(NET_5)
|
||||||
INPUT(G29)
|
INPUT(NET_6)
|
||||||
INPUT(G30)
|
INPUT(NET_7)
|
||||||
INPUT(G31)
|
INPUT(NET_8)
|
||||||
INPUT(G32)
|
INPUT(NET_9)
|
||||||
INPUT(G33)
|
OUTPUT(NET_100)
|
||||||
INPUT(G34)
|
OUTPUT(NET_139)
|
||||||
|
OUTPUT(NET_140)
|
||||||
OUTPUT(G61)
|
OUTPUT(NET_141)
|
||||||
OUTPUT(G175)
|
OUTPUT(NET_142)
|
||||||
OUTPUT(G176)
|
OUTPUT(NET_143)
|
||||||
OUTPUT(G177)
|
OUTPUT(NET_144)
|
||||||
OUTPUT(G178)
|
OUTPUT(NET_145)
|
||||||
OUTPUT(G179)
|
OUTPUT(NET_146)
|
||||||
OUTPUT(G180)
|
OUTPUT(NET_147)
|
||||||
OUTPUT(G181)
|
OUTPUT(NET_148)
|
||||||
OUTPUT(G182)
|
OUTPUT(NET_149)
|
||||||
OUTPUT(G183)
|
OUTPUT(NET_150)
|
||||||
OUTPUT(G184)
|
OUTPUT(NET_325)
|
||||||
OUTPUT(G185)
|
OUTPUT(NET_35)
|
||||||
OUTPUT(G186)
|
OUTPUT(NET_36)
|
||||||
OUTPUT(G121)
|
OUTPUT(NET_37)
|
||||||
OUTPUT(G122)
|
OUTPUT(NET_38)
|
||||||
OUTPUT(G123)
|
OUTPUT(NET_57)
|
||||||
OUTPUT(G124)
|
OUTPUT(NET_76)
|
||||||
OUTPUT(G101)
|
OUTPUT(NET_77)
|
||||||
OUTPUT(G102)
|
OUTPUT(NET_78)
|
||||||
OUTPUT(G103)
|
OUTPUT(NET_79)
|
||||||
OUTPUT(G104)
|
OUTPUT(NET_80)
|
||||||
OUTPUT(G105)
|
OUTPUT(NET_81)
|
||||||
OUTPUT(G99)
|
OUTPUT(NET_82)
|
||||||
OUTPUT(G106)
|
OUTPUT(NET_83)
|
||||||
OUTPUT(G100)
|
OUTPUT(NET_84)
|
||||||
OUTPUT(G107)
|
OUTPUT(NET_85)
|
||||||
OUTPUT(G108)
|
OUTPUT(NET_86)
|
||||||
OUTPUT(G109)
|
OUTPUT(NET_87)
|
||||||
OUTPUT(G110)
|
OUTPUT(NET_97)
|
||||||
OUTPUT(G35)
|
OUTPUT(NET_98)
|
||||||
|
OUTPUT(NET_99)
|
||||||
G35 = BUF ( G5 )
|
new_n69_ = NOT ( NET_33 )
|
||||||
G36 = NOT ( G5 )
|
new_n70_ = NOR ( NET_31, NET_30, NET_27, NET_26 )
|
||||||
G37 = NOT ( G6 )
|
new_n71_ = OR ( new_n70_, new_n69_ )
|
||||||
G38 = NOT ( G7 )
|
new_n72_ = NOT ( new_n71_ )
|
||||||
G39 = NOT ( G8 )
|
new_n73_ = NAND ( new_n72_, NET_7, NET_6, NET_5 )
|
||||||
G40 = NAND ( G18, G5 )
|
new_n74_ = NAND ( new_n71_, NET_20 )
|
||||||
G41 = NAND ( G19, G5 )
|
NET_100 = NAND ( new_n74_, new_n73_ )
|
||||||
G42 = NAND ( G20, G5 )
|
new_n76_ = NOT ( NET_28 )
|
||||||
G43 = NAND ( G21, G5 )
|
new_n77_ = NOT ( NET_25 )
|
||||||
G44 = NOT ( G26 )
|
new_n78_ = OR ( NET_32, new_n77_ )
|
||||||
G45 = NAND ( G26, G5 )
|
new_n79_ = OR ( new_n78_, NET_27 )
|
||||||
G46 = NAND ( G26, G5 )
|
new_n80_ = NOT ( NET_32 )
|
||||||
G47 = NOT ( G27 )
|
new_n81_ = NOT ( NET_31 )
|
||||||
G48 = NOT ( G28 )
|
new_n82_ = NAND ( new_n81_, NET_29, new_n77_ )
|
||||||
G49 = NOT ( G29 )
|
new_n83_ = NAND ( new_n82_, new_n80_ )
|
||||||
G50 = NAND ( G29, G5 )
|
new_n84_ = NAND ( NET_32, NET_30 )
|
||||||
G51 = NAND ( G30, G5 )
|
new_n85_ = NAND ( new_n84_, new_n83_ )
|
||||||
G52 = NAND ( G30, G5 )
|
new_n86_ = NAND ( new_n85_, new_n79_ )
|
||||||
G53 = NOT ( G31 )
|
new_n87_ = NAND ( new_n86_, NET_34, new_n76_ )
|
||||||
G54 = NOT ( G32 )
|
new_n88_ = NAND ( NET_34, NET_28 )
|
||||||
G55 = OR ( G28, G31, G27, G32 )
|
new_n89_ = OR ( new_n88_, NET_26 )
|
||||||
G56 = NOT ( G33 )
|
new_n90_ = NAND ( new_n89_, new_n87_, new_n71_ )
|
||||||
G57 = OR ( G33, G26 )
|
new_n91_ = NAND ( new_n90_, NET_8, NET_33 )
|
||||||
G58 = NAND ( G33, G5 )
|
new_n92_ = NOT ( NET_5 )
|
||||||
G59 = NAND ( G33, G5 )
|
new_n93_ = OR ( new_n90_, new_n92_ )
|
||||||
G60 = NOT ( G34 )
|
new_n94_ = NOR ( NET_32, NET_25 )
|
||||||
G61 = BUF ( G36 )
|
new_n95_ = OR ( new_n94_, NET_28 )
|
||||||
G62 = NAND ( G27, G36 )
|
new_n96_ = NAND ( new_n95_, new_n90_, new_n69_ )
|
||||||
G63 = NAND ( G1, G36 )
|
NET_139 = NAND ( new_n96_, new_n93_, new_n91_ )
|
||||||
G64 = NAND ( G22, G36 )
|
new_n98_ = NAND ( new_n90_, NET_9, NET_33 )
|
||||||
G65 = NAND ( G23, G36 )
|
new_n99_ = NOT ( NET_6 )
|
||||||
G66 = NAND ( G24, G36 )
|
new_n100_ = OR ( new_n90_, new_n99_ )
|
||||||
G67 = NAND ( G25, G36 )
|
new_n101_ = NAND ( new_n90_, new_n78_, new_n69_, new_n76_ )
|
||||||
G68 = NAND ( G3, G36 )
|
NET_140 = NAND ( new_n101_, new_n100_, new_n98_ )
|
||||||
G69 = NAND ( G28, G36 )
|
new_n103_ = NAND ( new_n90_, NET_33, NET_10 )
|
||||||
G70 = NAND ( G4, G36 )
|
new_n104_ = NOT ( NET_7 )
|
||||||
G71 = NAND ( G31, G36 )
|
new_n105_ = OR ( new_n90_, new_n104_ )
|
||||||
G72 = NAND ( G32, G36 )
|
new_n106_ = NAND ( new_n90_, new_n69_, new_n80_, new_n76_ )
|
||||||
G73 = NAND ( G2, G36 )
|
NET_141 = NAND ( new_n106_, new_n105_, new_n103_ )
|
||||||
G74 = NOT ( G50 )
|
new_n108_ = NAND ( new_n90_, NET_5, new_n69_ )
|
||||||
G75 = NAND ( G33, G53 )
|
new_n109_ = NAND ( new_n89_, new_n87_, new_n71_, NET_8 )
|
||||||
G76 = NAND ( G34, G55 )
|
new_n110_ = NAND ( new_n90_, NET_33, NET_11 )
|
||||||
G77 = NAND ( G26, G56 )
|
NET_142 = NAND ( new_n110_, new_n109_, new_n108_ )
|
||||||
G78 = NAND ( G44, G54, G30, G56 )
|
new_n112_ = NAND ( new_n90_, NET_6, new_n69_ )
|
||||||
G79 = NAND ( G49, G57 )
|
new_n113_ = NAND ( new_n89_, new_n87_, new_n71_, NET_9 )
|
||||||
G80 = NAND ( G50, G62 )
|
new_n114_ = NAND ( new_n90_, NET_33, NET_12 )
|
||||||
G81 = NAND ( G50, G63 )
|
NET_143 = NAND ( new_n114_, new_n113_, new_n112_ )
|
||||||
G82 = NAND ( G40, G64 )
|
new_n116_ = NAND ( new_n90_, NET_7, new_n69_ )
|
||||||
G83 = NAND ( G41, G65 )
|
new_n117_ = NAND ( new_n89_, new_n87_, new_n71_, NET_10 )
|
||||||
G84 = NAND ( G42, G66 )
|
new_n118_ = NAND ( new_n90_, NET_33, NET_13 )
|
||||||
G85 = NAND ( G43, G67 )
|
NET_144 = NAND ( new_n118_, new_n117_, new_n116_ )
|
||||||
G86 = NAND ( G45, G68 )
|
new_n120_ = NAND ( new_n90_, NET_8, new_n69_ )
|
||||||
G87 = NAND ( G46, G69 )
|
new_n121_ = NAND ( new_n89_, new_n87_, new_n71_, NET_11 )
|
||||||
G88 = NAND ( G51, G70 )
|
new_n122_ = NAND ( new_n90_, NET_33, NET_14 )
|
||||||
G89 = NAND ( G58, G71 )
|
NET_145 = NAND ( new_n122_, new_n121_, new_n120_ )
|
||||||
G90 = NAND ( G52, G72 )
|
new_n124_ = NAND ( new_n90_, NET_9, new_n69_ )
|
||||||
G91 = NAND ( G59, G73 )
|
new_n125_ = NAND ( new_n89_, new_n87_, new_n71_, NET_12 )
|
||||||
G92 = NAND ( G74, G47 )
|
new_n126_ = NAND ( new_n90_, NET_33, NET_15 )
|
||||||
G93 = NOT ( G76 )
|
NET_146 = NAND ( new_n126_, new_n125_, new_n124_ )
|
||||||
G94 = NAND ( G18, G76 )
|
new_n128_ = NAND ( new_n90_, new_n69_, NET_10 )
|
||||||
G95 = NAND ( G19, G76 )
|
new_n129_ = NAND ( new_n89_, new_n87_, new_n71_, NET_13 )
|
||||||
G96 = NAND ( G20, G76 )
|
new_n130_ = NAND ( new_n90_, NET_33, NET_16 )
|
||||||
G97 = NAND ( G21, G76 )
|
NET_147 = NAND ( new_n130_, new_n129_, new_n128_ )
|
||||||
G98 = NOT ( G77 )
|
new_n132_ = NAND ( new_n90_, new_n69_, NET_11 )
|
||||||
G99 = BUF ( G80 )
|
new_n133_ = NAND ( new_n89_, new_n87_, new_n71_, NET_14 )
|
||||||
G100 = BUF ( G81 )
|
NET_148 = NAND ( new_n133_, new_n132_ )
|
||||||
G101 = BUF ( G82 )
|
new_n135_ = NAND ( new_n90_, new_n69_, NET_12 )
|
||||||
G102 = BUF ( G83 )
|
new_n136_ = NAND ( new_n89_, new_n87_, new_n71_, NET_15 )
|
||||||
G103 = BUF ( G84 )
|
NET_149 = NAND ( new_n136_, new_n135_ )
|
||||||
G104 = BUF ( G85 )
|
new_n138_ = NAND ( new_n90_, new_n69_, NET_13 )
|
||||||
G105 = BUF ( G86 )
|
new_n139_ = NAND ( new_n89_, new_n87_, new_n71_, NET_16 )
|
||||||
G106 = BUF ( G87 )
|
NET_150 = NAND ( new_n139_, new_n138_ )
|
||||||
G107 = BUF ( G88 )
|
NET_325 = NOT ( NET_34 )
|
||||||
G108 = BUF ( G89 )
|
new_n142_ = NAND ( NET_325, NET_26 )
|
||||||
G109 = BUF ( G90 )
|
NET_76 = NAND ( new_n142_, new_n88_ )
|
||||||
G110 = BUF ( G91 )
|
new_n144_ = NAND ( NET_325, NET_1 )
|
||||||
G111 = NAND ( G39, G38, G6, G93 )
|
NET_77 = NAND ( new_n144_, new_n88_ )
|
||||||
G112 = NAND ( G39, G37, G7, G93 )
|
new_n146_ = NAND ( NET_325, NET_21 )
|
||||||
G113 = NAND ( G38, G37, G8, G93 )
|
new_n147_ = NAND ( NET_34, NET_17 )
|
||||||
G114 = NAND ( G7, G6, G8, G93 )
|
NET_78 = NAND ( new_n147_, new_n146_ )
|
||||||
G115 = NAND ( G98, G48 )
|
new_n149_ = NAND ( NET_325, NET_22 )
|
||||||
G116 = NAND ( G111, G94 )
|
new_n150_ = NAND ( NET_34, NET_18 )
|
||||||
G117 = NAND ( G112, G95 )
|
NET_79 = NAND ( new_n150_, new_n149_ )
|
||||||
G118 = NAND ( G113, G96 )
|
new_n152_ = NAND ( NET_325, NET_23 )
|
||||||
G119 = NAND ( G114, G97 )
|
new_n153_ = NAND ( NET_34, NET_19 )
|
||||||
G120 = NAND ( G78, G75, G115 )
|
NET_80 = NAND ( new_n153_, new_n152_ )
|
||||||
G121 = BUF ( G116 )
|
new_n155_ = NAND ( NET_325, NET_24 )
|
||||||
G122 = BUF ( G117 )
|
new_n156_ = NAND ( NET_34, NET_20 )
|
||||||
G123 = BUF ( G118 )
|
NET_81 = NAND ( new_n156_, new_n155_ )
|
||||||
G124 = BUF ( G119 )
|
new_n158_ = NAND ( NET_325, NET_3 )
|
||||||
G125 = NAND ( G49, G5, G120 )
|
new_n159_ = NAND ( NET_34, NET_25 )
|
||||||
G126 = NAND ( G92, G76, G125 )
|
NET_82 = NAND ( new_n159_, new_n158_ )
|
||||||
G127 = AND ( G126, G60 )
|
new_n161_ = NAND ( NET_325, NET_27 )
|
||||||
G128 = AND ( G34, G126 )
|
NET_83 = NAND ( new_n161_, new_n159_ )
|
||||||
G129 = NOT ( G126 )
|
new_n163_ = NAND ( NET_4, NET_325 )
|
||||||
G130 = NAND ( G127, G79 )
|
new_n164_ = NAND ( NET_34, NET_29 )
|
||||||
G131 = NAND ( G77, G49, G127 )
|
NET_84 = NAND ( new_n164_, new_n163_ )
|
||||||
G132 = NAND ( G49, G56, G127 )
|
new_n166_ = NAND ( NET_325, NET_30 )
|
||||||
G133 = NAND ( G6, G127 )
|
new_n167_ = NAND ( NET_34, NET_32 )
|
||||||
G134 = NAND ( G7, G127 )
|
NET_85 = NAND ( new_n167_, new_n166_ )
|
||||||
G135 = NAND ( G8, G127 )
|
new_n169_ = OR ( NET_34, new_n81_ )
|
||||||
G136 = NAND ( G9, G127 )
|
NET_86 = NAND ( new_n169_, new_n164_ )
|
||||||
G137 = NAND ( G10, G127 )
|
new_n171_ = NAND ( NET_325, NET_2 )
|
||||||
G138 = NAND ( G11, G127 )
|
NET_87 = NAND ( new_n171_, new_n167_ )
|
||||||
G139 = NAND ( G12, G127 )
|
new_n173_ = NAND ( new_n72_, new_n104_, new_n99_, NET_5 )
|
||||||
G140 = NAND ( G13, G127 )
|
new_n174_ = NAND ( new_n71_, NET_17 )
|
||||||
G141 = NAND ( G14, G127 )
|
NET_97 = NAND ( new_n174_, new_n173_ )
|
||||||
G142 = NAND ( G9, G128 )
|
new_n176_ = NAND ( new_n72_, new_n104_, NET_6, new_n92_ )
|
||||||
G143 = NAND ( G10, G128 )
|
new_n177_ = NAND ( new_n71_, NET_18 )
|
||||||
G144 = NAND ( G11, G128 )
|
NET_98 = NAND ( new_n177_, new_n176_ )
|
||||||
G145 = NAND ( G12, G128 )
|
new_n179_ = NAND ( new_n72_, NET_7, new_n99_, new_n92_ )
|
||||||
G146 = NAND ( G13, G128 )
|
new_n180_ = NAND ( new_n71_, NET_19 )
|
||||||
G147 = NAND ( G14, G128 )
|
NET_99 = NAND ( new_n180_, new_n179_ )
|
||||||
G148 = NAND ( G15, G128 )
|
NET_35 = BUF ( NET_21 )
|
||||||
G149 = NAND ( G16, G128 )
|
NET_36 = BUF ( NET_22 )
|
||||||
G150 = NAND ( G17, G128 )
|
NET_37 = BUF ( NET_23 )
|
||||||
G151 = NAND ( G6, G129 )
|
NET_38 = BUF ( NET_24 )
|
||||||
G152 = NAND ( G7, G129 )
|
NET_57 = BUF ( NET_34 )
|
||||||
G153 = NAND ( G8, G129 )
|
|
||||||
G154 = NAND ( G129, G9 )
|
|
||||||
G155 = NAND ( G10, G129 )
|
|
||||||
G156 = NAND ( G11, G129 )
|
|
||||||
G157 = NAND ( G12, G129 )
|
|
||||||
G158 = NAND ( G13, G129 )
|
|
||||||
G159 = NAND ( G14, G129 )
|
|
||||||
G160 = NAND ( G15, G129 )
|
|
||||||
G161 = NAND ( G16, G129 )
|
|
||||||
G162 = NAND ( G17, G129 )
|
|
||||||
G163 = NAND ( G142, G130, G151 )
|
|
||||||
G164 = NAND ( G143, G131, G152 )
|
|
||||||
G165 = NAND ( G144, G132, G153 )
|
|
||||||
G166 = NAND ( G133, G145, G154 )
|
|
||||||
G167 = NAND ( G134, G146, G155 )
|
|
||||||
G168 = NAND ( G135, G147, G156 )
|
|
||||||
G169 = NAND ( G136, G148, G157 )
|
|
||||||
G170 = NAND ( G137, G149, G158 )
|
|
||||||
G171 = NAND ( G138, G150, G159 )
|
|
||||||
G172 = NAND ( G160, G139 )
|
|
||||||
G173 = NAND ( G161, G140 )
|
|
||||||
G174 = NAND ( G162, G141 )
|
|
||||||
G175 = BUF ( G163 )
|
|
||||||
G176 = BUF ( G164 )
|
|
||||||
G177 = BUF ( G165 )
|
|
||||||
G178 = BUF ( G166 )
|
|
||||||
G179 = BUF ( G167 )
|
|
||||||
G180 = BUF ( G168 )
|
|
||||||
G181 = BUF ( G169 )
|
|
||||||
G182 = BUF ( G170 )
|
|
||||||
G183 = BUF ( G171 )
|
|
||||||
G184 = BUF ( G172 )
|
|
||||||
G185 = BUF ( G173 )
|
|
||||||
G186 = BUF ( G174 )
|
|
||||||
|
1528
benchmark/b04.bench
1528
benchmark/b04.bench
File diff suppressed because it is too large
Load Diff
@ -1,73 +1,72 @@
|
|||||||
# generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
|
# generated by verilog2bench.py https://gitea.yuhangq.com/YuhangQ/any2bench
|
||||||
# gates: 59
|
INPUT(NET_1)
|
||||||
|
INPUT(NET_10)
|
||||||
INPUT(G1)
|
INPUT(NET_11)
|
||||||
INPUT(G2)
|
INPUT(NET_2)
|
||||||
INPUT(G3)
|
INPUT(NET_3)
|
||||||
INPUT(G4)
|
INPUT(NET_4)
|
||||||
INPUT(G5)
|
INPUT(NET_5)
|
||||||
INPUT(G6)
|
INPUT(NET_6)
|
||||||
INPUT(G7)
|
INPUT(NET_7)
|
||||||
INPUT(G8)
|
INPUT(NET_8)
|
||||||
INPUT(G9)
|
INPUT(NET_9)
|
||||||
INPUT(G10)
|
OUTPUT(NET_12)
|
||||||
INPUT(G11)
|
OUTPUT(NET_13)
|
||||||
|
OUTPUT(NET_135)
|
||||||
OUTPUT(G52)
|
OUTPUT(NET_136)
|
||||||
OUTPUT(G57)
|
OUTPUT(NET_14)
|
||||||
OUTPUT(G51)
|
OUTPUT(NET_15)
|
||||||
OUTPUT(G58)
|
OUTPUT(NET_16)
|
||||||
OUTPUT(G56)
|
OUTPUT(NET_17)
|
||||||
OUTPUT(G50)
|
OUTPUT(NET_48)
|
||||||
OUTPUT(G49)
|
OUTPUT(NET_49)
|
||||||
OUTPUT(G59)
|
OUTPUT(NET_50)
|
||||||
OUTPUT(G53)
|
OUTPUT(NET_51)
|
||||||
|
OUTPUT(NET_52)
|
||||||
G12 = NOT ( G1 )
|
OUTPUT(NET_57)
|
||||||
G13 = NOT ( G4 )
|
OUTPUT(NET_60)
|
||||||
G14 = NOT ( G5 )
|
new_n27_ = OR ( NET_5, NET_3 )
|
||||||
G15 = NAND ( G1, G5 )
|
new_n28_ = NOT ( NET_4 )
|
||||||
G16 = NAND ( G4, G5 )
|
new_n29_ = OR ( new_n28_, NET_1 )
|
||||||
G17 = AND ( G4, G5, G6 )
|
new_n30_ = OR ( new_n29_, new_n27_ )
|
||||||
G18 = NOT ( G6 )
|
new_n31_ = NAND ( NET_5, NET_3 )
|
||||||
G19 = OR ( G4, G6 )
|
new_n32_ = NOR ( new_n31_, new_n28_ )
|
||||||
G20 = OR ( G5, G6 )
|
new_n33_ = OR ( new_n32_, NET_2 )
|
||||||
G21 = NAND ( G6, G4 )
|
NET_135 = NAND ( new_n33_, new_n30_ )
|
||||||
G22 = NAND ( G6, G5 )
|
new_n35_ = NOR ( new_n28_, NET_1 )
|
||||||
G23 = NAND ( G1, G13, G6 )
|
new_n36_ = NOT ( NET_1 )
|
||||||
G24 = NAND ( G14, G13, G6 )
|
new_n37_ = NOR ( NET_4, new_n36_ )
|
||||||
G25 = NAND ( G1, G14 )
|
new_n38_ = NOR ( new_n37_, new_n35_ )
|
||||||
G26 = NOT ( G15 )
|
new_n39_ = NAND ( NET_4, NET_1 )
|
||||||
G27 = OR ( G2, G17 )
|
new_n40_ = NAND ( new_n39_, NET_5 )
|
||||||
G28 = NAND ( G4, G18, G14, G12 )
|
NET_48 = AND ( new_n40_, new_n38_, NET_3 )
|
||||||
G29 = NAND ( G1, G18 )
|
new_n42_ = NOT ( NET_5 )
|
||||||
G30 = NOT ( G19 )
|
new_n43_ = NAND ( new_n42_, new_n28_, NET_3 )
|
||||||
G31 = NAND ( G12, G20 )
|
new_n44_ = NOT ( NET_3 )
|
||||||
G32 = NOT ( G24 )
|
new_n45_ = NAND ( NET_5, new_n28_, new_n44_, new_n36_ )
|
||||||
G33 = NAND ( G4, G26 )
|
new_n46_ = NAND ( NET_3, NET_1 )
|
||||||
G34 = NAND ( G26, G18 )
|
NET_49 = NAND ( new_n46_, new_n45_, new_n43_ )
|
||||||
G35 = NAND ( G5, G29 )
|
new_n48_ = OR ( new_n43_, NET_1 )
|
||||||
G36 = NAND ( G30, G5 )
|
new_n49_ = OR ( new_n27_, new_n28_ )
|
||||||
G37 = NAND ( G5, G12, G30 )
|
new_n50_ = NAND ( NET_5, new_n44_, NET_1 )
|
||||||
G38 = NAND ( G30, G14 )
|
NET_50 = NAND ( new_n50_, new_n49_, new_n48_, new_n39_ )
|
||||||
G39 = NAND ( G4, G31 )
|
new_n52_ = OR ( new_n37_, new_n42_ )
|
||||||
G40 = NAND ( G4, G31 )
|
new_n53_ = OR ( new_n27_, NET_4 )
|
||||||
G41 = NAND ( G32, G12 )
|
NET_51 = NAND ( new_n53_, new_n52_, new_n29_ )
|
||||||
G42 = NAND ( G28, G33 )
|
new_n55_ = OR ( new_n39_, NET_3 )
|
||||||
G43 = NAND ( G21, G19, G35, G25 )
|
new_n56_ = AND ( new_n31_, new_n27_ )
|
||||||
G44 = NAND ( G36, G23, G28, G15 )
|
NET_52 = NAND ( new_n56_, new_n55_, new_n38_ )
|
||||||
G45 = NAND ( G27, G37 )
|
new_n58_ = NAND ( new_n56_, new_n28_ )
|
||||||
G46 = AND ( G22, G38 )
|
new_n59_ = OR ( new_n39_, NET_5 )
|
||||||
G47 = NAND ( G40, G24, G34 )
|
NET_57 = NAND ( new_n59_, new_n58_, new_n46_ )
|
||||||
G48 = NAND ( G39, G41 )
|
new_n61_ = XOR ( new_n31_, NET_4 )
|
||||||
G49 = BUF ( G42 )
|
new_n62_ = OR ( new_n61_, new_n56_ )
|
||||||
G50 = BUF ( G43 )
|
new_n63_ = NAND ( new_n62_, new_n58_ )
|
||||||
G51 = BUF ( G44 )
|
NET_60 = NAND ( new_n63_, NET_1 )
|
||||||
G52 = BUF ( G45 )
|
NET_12 = BUF ( NET_6 )
|
||||||
G53 = BUF ( G45 )
|
NET_13 = BUF ( NET_7 )
|
||||||
G54 = NAND ( G46, G31 )
|
NET_136 = NAND ( new_n33_, new_n30_ )
|
||||||
G55 = NAND ( G1, G16, G46 )
|
NET_14 = BUF ( NET_8 )
|
||||||
G56 = BUF ( G47 )
|
NET_15 = BUF ( NET_9 )
|
||||||
G57 = BUF ( G48 )
|
NET_16 = BUF ( NET_10 )
|
||||||
G58 = BUF ( G54 )
|
NET_17 = BUF ( NET_11 )
|
||||||
G59 = BUF ( G55 )
|
|
||||||
|
1013
benchmark/b07.bench
1013
benchmark/b07.bench
File diff suppressed because it is too large
Load Diff
@ -1,226 +1,193 @@
|
|||||||
# generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
|
# generated by verilog2bench.py https://gitea.yuhangq.com/YuhangQ/any2bench
|
||||||
# gates: 200
|
INPUT(NET_1)
|
||||||
|
INPUT(NET_10)
|
||||||
INPUT(G1)
|
INPUT(NET_11)
|
||||||
INPUT(G2)
|
INPUT(NET_12)
|
||||||
INPUT(G3)
|
INPUT(NET_13)
|
||||||
INPUT(G4)
|
INPUT(NET_14)
|
||||||
INPUT(G5)
|
INPUT(NET_15)
|
||||||
INPUT(G6)
|
INPUT(NET_16)
|
||||||
INPUT(G7)
|
INPUT(NET_17)
|
||||||
INPUT(G8)
|
INPUT(NET_18)
|
||||||
INPUT(G9)
|
INPUT(NET_19)
|
||||||
INPUT(G10)
|
INPUT(NET_2)
|
||||||
INPUT(G11)
|
INPUT(NET_20)
|
||||||
INPUT(G12)
|
INPUT(NET_21)
|
||||||
INPUT(G13)
|
INPUT(NET_22)
|
||||||
INPUT(G14)
|
INPUT(NET_23)
|
||||||
INPUT(G15)
|
INPUT(NET_24)
|
||||||
INPUT(G16)
|
INPUT(NET_25)
|
||||||
INPUT(G17)
|
INPUT(NET_26)
|
||||||
INPUT(G18)
|
INPUT(NET_27)
|
||||||
INPUT(G19)
|
INPUT(NET_28)
|
||||||
INPUT(G20)
|
INPUT(NET_29)
|
||||||
INPUT(G21)
|
INPUT(NET_3)
|
||||||
INPUT(G22)
|
INPUT(NET_30)
|
||||||
INPUT(G23)
|
INPUT(NET_4)
|
||||||
INPUT(G24)
|
INPUT(NET_5)
|
||||||
INPUT(G25)
|
INPUT(NET_6)
|
||||||
INPUT(G26)
|
INPUT(NET_7)
|
||||||
INPUT(G27)
|
INPUT(NET_8)
|
||||||
INPUT(G28)
|
INPUT(NET_9)
|
||||||
INPUT(G29)
|
OUTPUT(NET_103)
|
||||||
INPUT(G30)
|
OUTPUT(NET_119)
|
||||||
|
OUTPUT(NET_120)
|
||||||
OUTPUT(G175)
|
OUTPUT(NET_123)
|
||||||
OUTPUT(G134)
|
OUTPUT(NET_135)
|
||||||
OUTPUT(G154)
|
OUTPUT(NET_136)
|
||||||
OUTPUT(G176)
|
OUTPUT(NET_137)
|
||||||
OUTPUT(G177)
|
OUTPUT(NET_138)
|
||||||
OUTPUT(G155)
|
OUTPUT(NET_144)
|
||||||
OUTPUT(G108)
|
OUTPUT(NET_162)
|
||||||
OUTPUT(G109)
|
OUTPUT(NET_163)
|
||||||
OUTPUT(G110)
|
OUTPUT(NET_166)
|
||||||
OUTPUT(G111)
|
OUTPUT(NET_167)
|
||||||
OUTPUT(G112)
|
OUTPUT(NET_31)
|
||||||
OUTPUT(G113)
|
OUTPUT(NET_32)
|
||||||
OUTPUT(G114)
|
OUTPUT(NET_33)
|
||||||
OUTPUT(G115)
|
OUTPUT(NET_34)
|
||||||
OUTPUT(G197)
|
OUTPUT(NET_91)
|
||||||
OUTPUT(G198)
|
OUTPUT(NET_92)
|
||||||
OUTPUT(G199)
|
OUTPUT(NET_93)
|
||||||
OUTPUT(G200)
|
OUTPUT(NET_94)
|
||||||
OUTPUT(G172)
|
OUTPUT(NET_95)
|
||||||
OUTPUT(G173)
|
OUTPUT(NET_96)
|
||||||
OUTPUT(G174)
|
OUTPUT(NET_97)
|
||||||
|
OUTPUT(NET_98)
|
||||||
G31 = NOT ( G1 )
|
new_n56_ = NOT ( NET_11 )
|
||||||
G32 = NOT ( G11 )
|
new_n57_ = NOT ( NET_12 )
|
||||||
G33 = AND ( G12, G11 )
|
new_n58_ = NAND ( NET_14, NET_13 )
|
||||||
G34 = NOT ( G12 )
|
new_n59_ = OR ( new_n58_, new_n57_ )
|
||||||
G35 = NOT ( G13 )
|
new_n60_ = NOR ( new_n59_, NET_1 )
|
||||||
G36 = NOT ( G14 )
|
new_n61_ = NOR ( new_n60_, new_n56_ )
|
||||||
G37 = AND ( G15, G14 )
|
new_n62_ = NOT ( NET_10 )
|
||||||
G38 = NOT ( G15 )
|
new_n63_ = NOR ( NET_11, new_n62_ )
|
||||||
G39 = OR ( G15, G14, G13 )
|
new_n64_ = NOR ( new_n56_, NET_10 )
|
||||||
G40 = NOT ( G16 )
|
NET_103 = OR ( new_n64_, new_n63_, new_n61_ )
|
||||||
G41 = NOT ( G17 )
|
new_n66_ = OR ( new_n59_, new_n62_ )
|
||||||
G42 = NOT ( G18 )
|
new_n67_ = NAND ( new_n66_, NET_11 )
|
||||||
G43 = NOT ( G19 )
|
new_n68_ = AND ( new_n67_, NET_1 )
|
||||||
G44 = NOT ( G20 )
|
NET_119 = OR ( new_n68_, new_n63_ )
|
||||||
G45 = NOT ( G21 )
|
new_n70_ = NOT ( NET_13 )
|
||||||
G46 = NOT ( G22 )
|
new_n71_ = OR ( NET_14, new_n70_ )
|
||||||
G47 = NOT ( G23 )
|
new_n72_ = OR ( new_n71_, new_n62_ )
|
||||||
G48 = NAND ( G12, G32 )
|
new_n73_ = NOR ( new_n56_, new_n62_ )
|
||||||
G49 = NAND ( G11, G34 )
|
new_n74_ = NAND ( new_n73_, NET_14 )
|
||||||
G50 = NAND ( G15, G36, G13 )
|
new_n75_ = NAND ( new_n74_, new_n70_ )
|
||||||
G51 = NAND ( G35, G36, G15 )
|
new_n76_ = OR ( new_n67_, new_n70_ )
|
||||||
G52 = NAND ( G33, G15, G36 )
|
new_n77_ = NAND ( new_n76_, new_n75_ )
|
||||||
G53 = NAND ( G13, G37 )
|
NET_120 = NAND ( new_n77_, new_n72_ )
|
||||||
G54 = NAND ( G37, G35 )
|
new_n79_ = NOT ( NET_14 )
|
||||||
G55 = NAND ( G11, G38 )
|
new_n80_ = NAND ( new_n73_, new_n79_ )
|
||||||
G56 = NAND ( G36, G38, G13 )
|
new_n81_ = NAND ( new_n67_, NET_14 )
|
||||||
G57 = NAND ( G35, G38, G14 )
|
NET_123 = NAND ( new_n81_, new_n80_ )
|
||||||
G58 = NAND ( G14, G38, G13 )
|
new_n83_ = NAND ( new_n73_, new_n60_ )
|
||||||
G59 = NAND ( G33, G38 )
|
new_n84_ = NAND ( new_n83_, NET_27 )
|
||||||
G60 = NOT ( G48 )
|
new_n85_ = NOT ( NET_23 )
|
||||||
G61 = NAND ( G16, G48 )
|
new_n86_ = OR ( new_n83_, new_n85_ )
|
||||||
G62 = NAND ( G17, G48 )
|
NET_135 = NAND ( new_n86_, new_n84_ )
|
||||||
G63 = NAND ( G18, G48 )
|
new_n88_ = NAND ( new_n83_, NET_28 )
|
||||||
G64 = NAND ( G19, G48 )
|
new_n89_ = NOT ( NET_24 )
|
||||||
G65 = NAND ( G20, G48 )
|
new_n90_ = OR ( new_n83_, new_n89_ )
|
||||||
G66 = NAND ( G21, G48 )
|
NET_136 = NAND ( new_n90_, new_n88_ )
|
||||||
G67 = NAND ( G22, G48 )
|
new_n92_ = NAND ( new_n83_, NET_29 )
|
||||||
G68 = NAND ( G23, G48 )
|
new_n93_ = NOT ( NET_25 )
|
||||||
G69 = NOT ( G49 )
|
new_n94_ = OR ( new_n83_, new_n93_ )
|
||||||
G70 = NOT ( G53 )
|
NET_137 = NAND ( new_n94_, new_n92_ )
|
||||||
G71 = NOT ( G54 )
|
new_n96_ = NAND ( new_n83_, NET_30 )
|
||||||
G72 = AND ( G50, G56 )
|
new_n97_ = NOT ( NET_26 )
|
||||||
G73 = NAND ( G56, G51, G39, G54 )
|
new_n98_ = OR ( new_n83_, new_n97_ )
|
||||||
G74 = AND ( G53, G57 )
|
NET_138 = NAND ( new_n98_, new_n96_ )
|
||||||
G75 = NAND ( G57, G58 )
|
new_n100_ = OR ( new_n64_, new_n57_ )
|
||||||
G76 = NAND ( G2, G60 )
|
new_n101_ = NAND ( new_n73_, NET_14, NET_13, new_n57_ )
|
||||||
G77 = NAND ( G3, G60 )
|
NET_144 = NAND ( new_n101_, new_n100_ )
|
||||||
G78 = NAND ( G4, G60 )
|
new_n103_ = NAND ( new_n79_, NET_13, new_n57_ )
|
||||||
G79 = NAND ( G5, G60 )
|
new_n104_ = NAND ( new_n79_, new_n70_, NET_12 )
|
||||||
G80 = NAND ( G6, G60 )
|
new_n105_ = AND ( new_n104_, new_n103_, new_n59_ )
|
||||||
G81 = NAND ( G7, G60 )
|
new_n106_ = NOT ( NET_21 )
|
||||||
G82 = NAND ( G8, G60 )
|
new_n107_ = NAND ( new_n106_, new_n79_, NET_13, NET_12 )
|
||||||
G83 = NAND ( G9, G60 )
|
new_n108_ = NAND ( NET_14, new_n70_, new_n57_ )
|
||||||
G84 = NAND ( G70, G31 )
|
new_n109_ = NAND ( new_n79_, new_n70_, new_n57_ )
|
||||||
G85 = NAND ( G70, G11 )
|
new_n110_ = OR ( new_n58_, NET_12 )
|
||||||
G86 = NAND ( G33, G71 )
|
new_n111_ = OR ( NET_13, new_n57_ )
|
||||||
G87 = NAND ( G72, G54 )
|
new_n112_ = AND ( new_n111_, new_n110_ )
|
||||||
G88 = AND ( G74, G58 )
|
new_n113_ = AND ( new_n112_, new_n109_ )
|
||||||
G89 = NAND ( G74, G56 )
|
new_n114_ = NAND ( new_n113_, new_n108_, new_n59_, NET_22 )
|
||||||
G90 = NAND ( G74, G50, G54, G44 )
|
new_n115_ = NOT ( NET_15 )
|
||||||
G91 = NOT ( G75 )
|
new_n116_ = OR ( new_n111_, new_n79_ )
|
||||||
G92 = NAND ( G76, G61 )
|
new_n117_ = AND ( new_n109_, new_n108_, new_n105_ )
|
||||||
G93 = NAND ( G77, G62 )
|
new_n118_ = NAND ( new_n117_, new_n116_, new_n115_ )
|
||||||
G94 = NAND ( G78, G63 )
|
new_n119_ = NOT ( NET_20 )
|
||||||
G95 = NAND ( G79, G64 )
|
new_n120_ = NAND ( new_n79_, NET_13, NET_12 )
|
||||||
G96 = NAND ( G80, G65 )
|
new_n121_ = NAND ( new_n120_, new_n117_, new_n119_ )
|
||||||
G97 = NAND ( G81, G66 )
|
new_n122_ = NAND ( new_n121_, new_n118_, new_n114_, new_n107_ )
|
||||||
G98 = NAND ( G82, G67 )
|
new_n123_ = NAND ( new_n120_, new_n113_, NET_16 )
|
||||||
G99 = NAND ( G83, G68 )
|
new_n124_ = NOT ( NET_17 )
|
||||||
G100 = NOT ( G84 )
|
new_n125_ = AND ( new_n120_, new_n105_, new_n110_ )
|
||||||
G101 = NAND ( G12, G84 )
|
new_n126_ = NAND ( new_n125_, new_n116_, new_n124_ )
|
||||||
G102 = NAND ( G12, G85 )
|
new_n127_ = NOT ( NET_16 )
|
||||||
G103 = NOT ( G87 )
|
new_n128_ = NAND ( new_n125_, new_n108_, new_n127_ )
|
||||||
G104 = NAND ( G19, G87 )
|
new_n129_ = NAND ( new_n128_, new_n126_, new_n123_ )
|
||||||
G105 = NAND ( G88, G72 )
|
new_n130_ = NAND ( new_n113_, new_n59_, NET_20 )
|
||||||
G106 = NAND ( G88, G54 )
|
new_n131_ = NAND ( new_n120_, new_n103_ )
|
||||||
G107 = NOT ( G89 )
|
new_n132_ = NOT ( NET_22 )
|
||||||
G108 = BUF ( G92 )
|
new_n133_ = NAND ( new_n109_, new_n110_, new_n59_, new_n132_ )
|
||||||
G109 = BUF ( G93 )
|
new_n134_ = OR ( new_n133_, new_n131_ )
|
||||||
G110 = BUF ( G94 )
|
new_n135_ = NAND ( new_n112_, new_n71_, NET_15 )
|
||||||
G111 = BUF ( G95 )
|
new_n136_ = NOT ( NET_19 )
|
||||||
G112 = BUF ( G96 )
|
new_n137_ = NAND ( NET_14, NET_12 )
|
||||||
G113 = BUF ( G97 )
|
new_n138_ = OR ( new_n70_, NET_12 )
|
||||||
G114 = BUF ( G98 )
|
new_n139_ = NAND ( new_n138_, new_n137_, new_n136_ )
|
||||||
G115 = BUF ( G99 )
|
new_n140_ = AND ( new_n139_, new_n135_, new_n134_, new_n63_ )
|
||||||
G116 = NAND ( G12, G11, G100 )
|
new_n141_ = NAND ( new_n113_, new_n108_, NET_18 )
|
||||||
G117 = NAND ( G48, G49, G101 )
|
new_n142_ = NAND ( new_n120_, new_n113_, new_n59_, NET_21 )
|
||||||
G118 = NOT ( G102 )
|
new_n143_ = NAND ( new_n142_, new_n141_, new_n140_, new_n130_ )
|
||||||
G119 = NAND ( G1, G102 )
|
new_n144_ = NAND ( NET_17, new_n79_, NET_13, NET_12 )
|
||||||
G120 = NAND ( G15, G102 )
|
new_n145_ = NOT ( NET_18 )
|
||||||
G121 = NAND ( G103, G53 )
|
new_n146_ = NAND ( new_n145_, NET_14, NET_13, new_n57_ )
|
||||||
G122 = NAND ( G74, G51, G103 )
|
new_n147_ = NAND ( new_n146_, new_n144_ )
|
||||||
G123 = NAND ( G103, G39 )
|
new_n148_ = NOR ( new_n147_, new_n143_, new_n129_, new_n122_ )
|
||||||
G124 = NAND ( G91, G103, G16 )
|
new_n149_ = OR ( new_n148_, new_n64_ )
|
||||||
G125 = NAND ( G88, G103, G42 )
|
new_n150_ = NAND ( new_n149_, NET_10 )
|
||||||
G126 = NAND ( G105, G43 )
|
new_n151_ = OR ( new_n150_, new_n105_ )
|
||||||
G127 = NAND ( G106, G47 )
|
new_n152_ = AND ( new_n149_, new_n62_ )
|
||||||
G128 = AND ( G107, G51 )
|
new_n153_ = OR ( new_n152_, new_n89_ )
|
||||||
G129 = NOT ( G116 )
|
NET_162 = NAND ( new_n153_, new_n151_ )
|
||||||
G130 = NAND ( G28, G116 )
|
new_n155_ = NAND ( new_n149_, new_n131_, NET_10 )
|
||||||
G131 = NAND ( G29, G116 )
|
new_n156_ = OR ( new_n152_, new_n97_ )
|
||||||
G132 = NAND ( G30, G116 )
|
NET_163 = NAND ( new_n156_, new_n155_ )
|
||||||
G133 = NAND ( G10, G116 )
|
new_n158_ = OR ( new_n150_, NET_14 )
|
||||||
G134 = BUF ( G117 )
|
new_n159_ = OR ( new_n152_, new_n85_ )
|
||||||
G135 = NAND ( G118, G32 )
|
new_n160_ = OR ( new_n150_, new_n112_ )
|
||||||
G136 = NAND ( G118, G55 )
|
NET_166 = NAND ( new_n160_, new_n159_, new_n158_ )
|
||||||
G137 = NAND ( G49, G119 )
|
new_n162_ = OR ( new_n150_, NET_12 )
|
||||||
G138 = NAND ( G120, G59 )
|
new_n163_ = OR ( new_n152_, new_n93_ )
|
||||||
G139 = NOT ( G121 )
|
NET_167 = NAND ( new_n163_, new_n162_, new_n158_ )
|
||||||
G140 = NAND ( G21, G121 )
|
new_n165_ = NAND ( new_n64_, NET_2 )
|
||||||
G141 = NOT ( G122 )
|
new_n166_ = OR ( new_n64_, new_n115_ )
|
||||||
G142 = NAND ( G122, G46 )
|
NET_91 = NAND ( new_n166_, new_n165_ )
|
||||||
G143 = NAND ( G17, G123 )
|
new_n168_ = NAND ( new_n64_, NET_3 )
|
||||||
G144 = NAND ( G51, G39, G126, G104 )
|
new_n169_ = OR ( new_n64_, new_n127_ )
|
||||||
G145 = NAND ( G128, G54 )
|
NET_92 = NAND ( new_n169_, new_n168_ )
|
||||||
G146 = NAND ( G128, G58 )
|
new_n171_ = NAND ( new_n64_, NET_4 )
|
||||||
G147 = NAND ( G50, G39, G128, G40 )
|
new_n172_ = OR ( new_n64_, new_n124_ )
|
||||||
G148 = NAND ( G129, G24 )
|
NET_93 = NAND ( new_n172_, new_n171_ )
|
||||||
G149 = NAND ( G129, G25 )
|
new_n174_ = NAND ( new_n64_, NET_5 )
|
||||||
G150 = NAND ( G129, G26 )
|
new_n175_ = OR ( new_n64_, new_n145_ )
|
||||||
G151 = NAND ( G129, G27 )
|
NET_94 = NAND ( new_n175_, new_n174_ )
|
||||||
G152 = NAND ( G13, G135 )
|
new_n177_ = NAND ( new_n64_, NET_6 )
|
||||||
G153 = NAND ( G14, G136 )
|
new_n178_ = OR ( new_n64_, new_n136_ )
|
||||||
G154 = BUF ( G137 )
|
NET_95 = NAND ( new_n178_, new_n177_ )
|
||||||
G155 = BUF ( G138 )
|
new_n180_ = NAND ( new_n64_, NET_7 )
|
||||||
G156 = NAND ( G139, G58 )
|
new_n181_ = OR ( new_n64_, new_n119_ )
|
||||||
G157 = NAND ( G139, G51 )
|
NET_96 = NAND ( new_n181_, new_n180_ )
|
||||||
G158 = NAND ( G141, G39, G18 )
|
new_n183_ = NAND ( new_n64_, NET_8 )
|
||||||
G159 = NAND ( G145, G41 )
|
new_n184_ = OR ( new_n64_, new_n106_ )
|
||||||
G160 = NAND ( G146, G45 )
|
NET_97 = NAND ( new_n184_, new_n183_ )
|
||||||
G161 = NAND ( G148, G130 )
|
new_n186_ = NAND ( new_n64_, NET_9 )
|
||||||
G162 = NAND ( G149, G131 )
|
new_n187_ = OR ( new_n64_, new_n132_ )
|
||||||
G163 = NAND ( G150, G132 )
|
NET_98 = NAND ( new_n187_, new_n186_ )
|
||||||
G164 = NAND ( G151, G133 )
|
NET_31 = BUF ( NET_27 )
|
||||||
G165 = NAND ( G86, G152 )
|
NET_32 = BUF ( NET_28 )
|
||||||
G166 = NAND ( G52, G153 )
|
NET_33 = BUF ( NET_29 )
|
||||||
G167 = NAND ( G22, G156 )
|
NET_34 = BUF ( NET_30 )
|
||||||
G168 = NAND ( G23, G157 )
|
|
||||||
G169 = AND ( G158, G125, G124, G147 )
|
|
||||||
G170 = NAND ( G159, G143, G58 )
|
|
||||||
G171 = NAND ( G160, G140, G39 )
|
|
||||||
G172 = BUF ( G161 )
|
|
||||||
G173 = BUF ( G162 )
|
|
||||||
G174 = BUF ( G163 )
|
|
||||||
G175 = BUF ( G164 )
|
|
||||||
G176 = BUF ( G165 )
|
|
||||||
G177 = BUF ( G166 )
|
|
||||||
G178 = NAND ( G167, G142, G39 )
|
|
||||||
G179 = NAND ( G127, G168, G39 )
|
|
||||||
G180 = AND ( G69, G90, G169, G179, G178 )
|
|
||||||
G181 = NAND ( G144, G170, G171, G180 )
|
|
||||||
G182 = NAND ( G48, G181 )
|
|
||||||
G183 = AND ( G11, G182 )
|
|
||||||
G184 = NAND ( G32, G182 )
|
|
||||||
G185 = NAND ( G183, G75 )
|
|
||||||
G186 = NAND ( G183, G123 )
|
|
||||||
G187 = NAND ( G183, G89 )
|
|
||||||
G188 = NAND ( G183, G73 )
|
|
||||||
G189 = NAND ( G24, G184 )
|
|
||||||
G190 = NAND ( G25, G184 )
|
|
||||||
G191 = NAND ( G26, G184 )
|
|
||||||
G192 = NAND ( G27, G184 )
|
|
||||||
G193 = NAND ( G186, G185, G189 )
|
|
||||||
G194 = NAND ( G190, G187 )
|
|
||||||
G195 = NAND ( G188, G185, G191 )
|
|
||||||
G196 = NAND ( G185, G192 )
|
|
||||||
G197 = BUF ( G193 )
|
|
||||||
G198 = BUF ( G194 )
|
|
||||||
G199 = BUF ( G195 )
|
|
||||||
G200 = BUF ( G196 )
|
|
||||||
|
@ -1,230 +1,172 @@
|
|||||||
# generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
|
# generated by verilog2bench.py https://gitea.yuhangq.com/YuhangQ/any2bench
|
||||||
# gates: 197
|
INPUT(NET_1)
|
||||||
|
INPUT(NET_10)
|
||||||
INPUT(G1)
|
INPUT(NET_11)
|
||||||
INPUT(G2)
|
INPUT(NET_12)
|
||||||
INPUT(G3)
|
INPUT(NET_13)
|
||||||
INPUT(G4)
|
INPUT(NET_14)
|
||||||
INPUT(G5)
|
INPUT(NET_15)
|
||||||
INPUT(G6)
|
INPUT(NET_16)
|
||||||
INPUT(G7)
|
INPUT(NET_17)
|
||||||
INPUT(G8)
|
INPUT(NET_18)
|
||||||
INPUT(G9)
|
INPUT(NET_19)
|
||||||
INPUT(G10)
|
INPUT(NET_2)
|
||||||
INPUT(G11)
|
INPUT(NET_20)
|
||||||
INPUT(G12)
|
INPUT(NET_21)
|
||||||
INPUT(G13)
|
INPUT(NET_22)
|
||||||
INPUT(G14)
|
INPUT(NET_23)
|
||||||
INPUT(G15)
|
INPUT(NET_24)
|
||||||
INPUT(G16)
|
INPUT(NET_25)
|
||||||
INPUT(G17)
|
INPUT(NET_26)
|
||||||
INPUT(G18)
|
INPUT(NET_27)
|
||||||
INPUT(G19)
|
INPUT(NET_28)
|
||||||
INPUT(G20)
|
INPUT(NET_29)
|
||||||
INPUT(G21)
|
INPUT(NET_3)
|
||||||
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_102)
|
||||||
INPUT(G29)
|
OUTPUT(NET_103)
|
||||||
|
OUTPUT(NET_104)
|
||||||
OUTPUT(G142)
|
OUTPUT(NET_105)
|
||||||
OUTPUT(G190)
|
OUTPUT(NET_106)
|
||||||
OUTPUT(G191)
|
OUTPUT(NET_107)
|
||||||
OUTPUT(G192)
|
OUTPUT(NET_108)
|
||||||
OUTPUT(G193)
|
OUTPUT(NET_109)
|
||||||
OUTPUT(G194)
|
OUTPUT(NET_110)
|
||||||
OUTPUT(G195)
|
OUTPUT(NET_111)
|
||||||
OUTPUT(G196)
|
OUTPUT(NET_116)
|
||||||
OUTPUT(G197)
|
OUTPUT(NET_117)
|
||||||
OUTPUT(G130)
|
OUTPUT(NET_118)
|
||||||
OUTPUT(G131)
|
OUTPUT(NET_119)
|
||||||
OUTPUT(G132)
|
OUTPUT(NET_120)
|
||||||
OUTPUT(G133)
|
OUTPUT(NET_121)
|
||||||
OUTPUT(G134)
|
OUTPUT(NET_122)
|
||||||
OUTPUT(G135)
|
OUTPUT(NET_123)
|
||||||
OUTPUT(G136)
|
OUTPUT(NET_136)
|
||||||
OUTPUT(G137)
|
OUTPUT(NET_152)
|
||||||
OUTPUT(G151)
|
OUTPUT(NET_153)
|
||||||
OUTPUT(G83)
|
OUTPUT(NET_154)
|
||||||
OUTPUT(G156)
|
OUTPUT(NET_155)
|
||||||
OUTPUT(G189)
|
OUTPUT(NET_156)
|
||||||
OUTPUT(G149)
|
OUTPUT(NET_157)
|
||||||
OUTPUT(G148)
|
OUTPUT(NET_158)
|
||||||
OUTPUT(G147)
|
OUTPUT(NET_159)
|
||||||
OUTPUT(G146)
|
OUTPUT(NET_30)
|
||||||
OUTPUT(G145)
|
OUTPUT(NET_45)
|
||||||
OUTPUT(G144)
|
new_n59_ = XNOR ( NET_22, NET_11 )
|
||||||
OUTPUT(G143)
|
new_n60_ = XNOR ( NET_28, NET_17 )
|
||||||
|
new_n61_ = XNOR ( NET_21, NET_10 )
|
||||||
G30 = NOT ( G2 )
|
new_n62_ = XNOR ( NET_27, NET_16 )
|
||||||
G31 = NOT ( G11 )
|
new_n63_ = NAND ( new_n62_, new_n61_, new_n60_, new_n59_ )
|
||||||
G32 = NOT ( G12 )
|
new_n64_ = XNOR ( NET_26, NET_15 )
|
||||||
G33 = NOT ( G13 )
|
new_n65_ = XNOR ( NET_24, NET_13 )
|
||||||
G34 = NOT ( G14 )
|
new_n66_ = XNOR ( NET_25, NET_14 )
|
||||||
G35 = NOT ( G15 )
|
new_n67_ = XNOR ( NET_23, NET_12 )
|
||||||
G36 = NOT ( G16 )
|
new_n68_ = NAND ( new_n67_, new_n66_, new_n65_, new_n64_ )
|
||||||
G37 = NOT ( G17 )
|
new_n69_ = NOR ( new_n68_, new_n63_ )
|
||||||
G38 = NOT ( G18 )
|
new_n70_ = NAND ( new_n69_, NET_20, NET_19 )
|
||||||
G39 = OR ( G19, G2 )
|
new_n71_ = NOT ( NET_19 )
|
||||||
G40 = NOT ( G20 )
|
new_n72_ = NOR ( NET_29, new_n71_ )
|
||||||
G41 = AND ( G20, G21 )
|
new_n73_ = OR ( new_n72_, NET_20 )
|
||||||
G42 = NOT ( G21 )
|
new_n74_ = NOT ( NET_20 )
|
||||||
G43 = NAND ( G2, G21 )
|
new_n75_ = OR ( NET_29, new_n74_ )
|
||||||
G44 = OR ( G2, G21 )
|
NET_102 = NAND ( new_n75_, new_n73_, new_n70_ )
|
||||||
G45 = NOT ( G22 )
|
new_n77_ = NOT ( NET_21 )
|
||||||
G46 = NOT ( G23 )
|
new_n78_ = NAND ( NET_29, NET_20 )
|
||||||
G47 = NOT ( G24 )
|
new_n79_ = OR ( new_n78_, new_n77_ )
|
||||||
G48 = NOT ( G25 )
|
new_n80_ = OR ( NET_20, NET_19 )
|
||||||
G49 = NOT ( G26 )
|
new_n81_ = NAND ( new_n80_, new_n78_, NET_10 )
|
||||||
G50 = NOT ( G27 )
|
NET_103 = NAND ( new_n81_, new_n79_ )
|
||||||
G51 = NOT ( G28 )
|
new_n83_ = NOT ( NET_22 )
|
||||||
G52 = NOT ( G29 )
|
new_n84_ = OR ( new_n78_, new_n83_ )
|
||||||
G53 = NAND ( G20, G30 )
|
new_n85_ = NAND ( new_n80_, new_n78_, NET_11 )
|
||||||
G54 = NAND ( G21, G30 )
|
NET_104 = NAND ( new_n85_, new_n84_ )
|
||||||
G55 = NAND ( G21, G30 )
|
new_n87_ = NOT ( NET_23 )
|
||||||
G56 = NAND ( G22, G31 )
|
new_n88_ = OR ( new_n78_, new_n87_ )
|
||||||
G57 = NAND ( G23, G32 )
|
new_n89_ = NAND ( new_n80_, new_n78_, NET_12 )
|
||||||
G58 = NAND ( G24, G33 )
|
NET_105 = NAND ( new_n89_, new_n88_ )
|
||||||
G59 = NAND ( G25, G34 )
|
new_n91_ = NOT ( NET_24 )
|
||||||
G60 = NAND ( G26, G35 )
|
new_n92_ = OR ( new_n78_, new_n91_ )
|
||||||
G61 = NAND ( G27, G36 )
|
new_n93_ = NAND ( new_n80_, new_n78_, NET_13 )
|
||||||
G62 = NAND ( G28, G37 )
|
NET_106 = NAND ( new_n93_, new_n92_ )
|
||||||
G63 = NAND ( G29, G38 )
|
new_n95_ = NOT ( NET_25 )
|
||||||
G64 = NAND ( G21, G40 )
|
new_n96_ = OR ( new_n78_, new_n95_ )
|
||||||
G65 = NAND ( G2, G40 )
|
new_n97_ = NAND ( new_n80_, new_n78_, NET_14 )
|
||||||
G66 = NAND ( G41, G30 )
|
NET_107 = NAND ( new_n97_, new_n96_ )
|
||||||
G67 = NAND ( G20, G42 )
|
new_n99_ = NOT ( NET_26 )
|
||||||
G68 = NAND ( G40, G43 )
|
new_n100_ = OR ( new_n78_, new_n99_ )
|
||||||
G69 = NOT ( G43 )
|
new_n101_ = NAND ( new_n80_, new_n78_, NET_15 )
|
||||||
G70 = NAND ( G11, G45 )
|
NET_108 = NAND ( new_n101_, new_n100_ )
|
||||||
G71 = NAND ( G12, G46 )
|
new_n103_ = NOT ( NET_27 )
|
||||||
G72 = NAND ( G13, G47 )
|
new_n104_ = OR ( new_n78_, new_n103_ )
|
||||||
G73 = NAND ( G14, G48 )
|
new_n105_ = NAND ( new_n80_, new_n78_, NET_16 )
|
||||||
G74 = NAND ( G15, G49 )
|
NET_109 = NAND ( new_n105_, new_n104_ )
|
||||||
G75 = NAND ( G16, G50 )
|
new_n107_ = NOT ( NET_28 )
|
||||||
G76 = NAND ( G17, G51 )
|
new_n108_ = OR ( new_n78_, new_n107_ )
|
||||||
G77 = NAND ( G18, G52 )
|
new_n109_ = NAND ( new_n80_, new_n78_, NET_17 )
|
||||||
G78 = NAND ( G53, G42 )
|
NET_110 = NAND ( new_n109_, new_n108_ )
|
||||||
G79 = NOT ( G64 )
|
new_n111_ = OR ( new_n78_, new_n69_ )
|
||||||
G80 = AND ( G67, G66 )
|
new_n112_ = NOR ( NET_29, NET_18 )
|
||||||
G81 = NOT ( G67 )
|
new_n113_ = OR ( new_n74_, NET_19 )
|
||||||
G82 = NAND ( G67, G54 )
|
new_n114_ = OR ( new_n113_, new_n112_ )
|
||||||
G83 = BUF ( G68 )
|
new_n115_ = NOT ( NET_29 )
|
||||||
G84 = NAND ( G69, G22 )
|
new_n116_ = NAND ( NET_9, new_n115_, new_n74_, NET_19 )
|
||||||
G85 = NAND ( G69, G23 )
|
NET_111 = NAND ( new_n116_, new_n114_, new_n111_ )
|
||||||
G86 = NAND ( G69, G24 )
|
new_n118_ = NAND ( new_n80_, new_n78_ )
|
||||||
G87 = NAND ( G69, G25 )
|
NET_116 = NOR ( new_n118_, new_n107_ )
|
||||||
G88 = NAND ( G69, G26 )
|
NET_117 = NOR ( new_n118_, new_n103_ )
|
||||||
G89 = NAND ( G69, G27 )
|
NET_118 = NOR ( new_n118_, new_n99_ )
|
||||||
G90 = NAND ( G69, G28 )
|
NET_119 = NOR ( new_n118_, new_n95_ )
|
||||||
G91 = NAND ( G69, G29 )
|
NET_120 = NOR ( new_n118_, new_n91_ )
|
||||||
G92 = AND ( G71, G57, G70, G56 )
|
NET_121 = NOR ( new_n118_, new_n87_ )
|
||||||
G93 = AND ( G72, G58, G73, G59 )
|
NET_122 = NOR ( new_n118_, new_n83_ )
|
||||||
G94 = AND ( G74, G60, G75, G61 )
|
NET_123 = NOR ( new_n118_, new_n77_ )
|
||||||
G95 = AND ( G76, G62, G77, G63 )
|
new_n127_ = OR ( NET_20, new_n71_ )
|
||||||
G96 = NAND ( G79, G39 )
|
new_n128_ = NAND ( NET_20, NET_19 )
|
||||||
G97 = NAND ( G79, G30 )
|
new_n129_ = OR ( new_n128_, NET_29 )
|
||||||
G98 = NAND ( G80, G64 )
|
new_n130_ = NAND ( new_n129_, new_n127_, new_n113_ )
|
||||||
G99 = NAND ( G10, G30, G81 )
|
new_n131_ = NAND ( new_n130_, NET_1 )
|
||||||
G100 = NAND ( G11, G82 )
|
new_n132_ = OR ( new_n69_, new_n128_ )
|
||||||
G101 = NAND ( G12, G82 )
|
new_n133_ = NAND ( new_n132_, new_n113_ )
|
||||||
G102 = NAND ( G13, G82 )
|
new_n134_ = NAND ( new_n133_, NET_29 )
|
||||||
G103 = NAND ( G14, G82 )
|
NET_136 = NAND ( new_n134_, new_n131_ )
|
||||||
G104 = NAND ( G15, G82 )
|
new_n136_ = OR ( NET_29, NET_20 )
|
||||||
G105 = NAND ( G16, G82 )
|
new_n137_ = OR ( new_n115_, NET_19 )
|
||||||
G106 = NAND ( G17, G82 )
|
new_n138_ = NAND ( new_n137_, new_n136_, new_n111_ )
|
||||||
G107 = NAND ( G18, G82 )
|
new_n139_ = NAND ( new_n138_, NET_21, NET_20 )
|
||||||
G108 = NAND ( G92, G93, G94, G95 )
|
new_n140_ = NAND ( new_n137_, new_n136_, new_n111_, NET_2 )
|
||||||
G109 = NAND ( G80, G97 )
|
NET_152 = NAND ( new_n140_, new_n139_ )
|
||||||
G110 = NAND ( G1, G98 )
|
new_n142_ = NAND ( new_n138_, NET_22, NET_20 )
|
||||||
G111 = NAND ( G100, G84 )
|
new_n143_ = NAND ( new_n137_, new_n136_, new_n111_, NET_3 )
|
||||||
G112 = NAND ( G101, G85 )
|
new_n144_ = NAND ( new_n115_, new_n74_, NET_2, NET_19 )
|
||||||
G113 = NAND ( G102, G86 )
|
NET_153 = NAND ( new_n144_, new_n143_, new_n142_ )
|
||||||
G114 = NAND ( G103, G87 )
|
new_n146_ = NAND ( new_n138_, NET_23, NET_20 )
|
||||||
G115 = NAND ( G104, G88 )
|
new_n147_ = NAND ( new_n137_, new_n136_, new_n111_, NET_4 )
|
||||||
G116 = NAND ( G105, G89 )
|
new_n148_ = NAND ( NET_3, new_n115_, new_n74_, NET_19 )
|
||||||
G117 = NAND ( G106, G90 )
|
NET_154 = NAND ( new_n148_, new_n147_, new_n146_ )
|
||||||
G118 = NAND ( G107, G91 )
|
new_n150_ = NAND ( new_n138_, NET_24, NET_20 )
|
||||||
G119 = NOT ( G108 )
|
new_n151_ = NAND ( new_n137_, new_n136_, new_n111_, NET_5 )
|
||||||
G120 = NAND ( G69, G108 )
|
new_n152_ = NAND ( NET_4, new_n115_, new_n74_, NET_19 )
|
||||||
G121 = NAND ( G41, G108 )
|
NET_155 = NAND ( new_n152_, new_n151_, new_n150_ )
|
||||||
G122 = AND ( G29, G109 )
|
new_n154_ = NAND ( new_n138_, NET_25, NET_20 )
|
||||||
G123 = AND ( G28, G109 )
|
new_n155_ = NAND ( new_n137_, new_n136_, new_n111_, NET_6 )
|
||||||
G124 = AND ( G27, G109 )
|
new_n156_ = NAND ( NET_5, new_n115_, new_n74_, NET_19 )
|
||||||
G125 = AND ( G26, G109 )
|
NET_156 = NAND ( new_n156_, new_n155_, new_n154_ )
|
||||||
G126 = AND ( G25, G109 )
|
new_n158_ = NAND ( new_n138_, NET_26, NET_20 )
|
||||||
G127 = AND ( G24, G109 )
|
new_n159_ = NAND ( new_n137_, new_n136_, new_n111_, NET_7 )
|
||||||
G128 = AND ( G23, G109 )
|
new_n160_ = NAND ( NET_6, new_n115_, new_n74_, NET_19 )
|
||||||
G129 = AND ( G22, G109 )
|
NET_157 = NAND ( new_n160_, new_n159_, new_n158_ )
|
||||||
G130 = BUF ( G111 )
|
new_n162_ = NAND ( new_n138_, NET_27, NET_20 )
|
||||||
G131 = BUF ( G112 )
|
new_n163_ = NAND ( new_n137_, new_n136_, new_n111_, NET_8 )
|
||||||
G132 = BUF ( G113 )
|
new_n164_ = NAND ( NET_7, new_n115_, new_n74_, NET_19 )
|
||||||
G133 = BUF ( G114 )
|
NET_158 = NAND ( new_n164_, new_n163_, new_n162_ )
|
||||||
G134 = BUF ( G115 )
|
new_n166_ = NAND ( new_n138_, NET_28, NET_20 )
|
||||||
G135 = BUF ( G116 )
|
new_n167_ = NAND ( new_n137_, new_n136_, new_n111_, NET_9 )
|
||||||
G136 = BUF ( G117 )
|
new_n168_ = NAND ( NET_8, new_n115_, new_n74_, NET_19 )
|
||||||
G137 = BUF ( G118 )
|
NET_159 = NAND ( new_n168_, new_n167_, new_n166_ )
|
||||||
G138 = NAND ( G119, G41 )
|
NET_45 = NAND ( new_n78_, new_n71_ )
|
||||||
G139 = NAND ( G99, G96, G120 )
|
NET_30 = BUF ( NET_18 )
|
||||||
G140 = NAND ( G44, G65, G120 )
|
|
||||||
G141 = NAND ( G64, G121 )
|
|
||||||
G142 = BUF ( G122 )
|
|
||||||
G143 = BUF ( G123 )
|
|
||||||
G144 = BUF ( G124 )
|
|
||||||
G145 = BUF ( G125 )
|
|
||||||
G146 = BUF ( G126 )
|
|
||||||
G147 = BUF ( G127 )
|
|
||||||
G148 = BUF ( G128 )
|
|
||||||
G149 = BUF ( G129 )
|
|
||||||
G150 = NAND ( G78, G55, G138 )
|
|
||||||
G151 = BUF ( G139 )
|
|
||||||
G152 = AND ( G21, G140 )
|
|
||||||
G153 = AND ( G81, G140 )
|
|
||||||
G154 = NOT ( G140 )
|
|
||||||
G155 = NAND ( G2, G141 )
|
|
||||||
G156 = BUF ( G150 )
|
|
||||||
G157 = NAND ( G152, G22 )
|
|
||||||
G158 = NAND ( G152, G23 )
|
|
||||||
G159 = NAND ( G152, G24 )
|
|
||||||
G160 = NAND ( G152, G25 )
|
|
||||||
G161 = NAND ( G152, G26 )
|
|
||||||
G162 = NAND ( G152, G27 )
|
|
||||||
G163 = NAND ( G152, G28 )
|
|
||||||
G164 = NAND ( G152, G29 )
|
|
||||||
G165 = NAND ( G153, G3 )
|
|
||||||
G166 = NAND ( G4, G153 )
|
|
||||||
G167 = NAND ( G5, G153 )
|
|
||||||
G168 = NAND ( G6, G153 )
|
|
||||||
G169 = NAND ( G7, G153 )
|
|
||||||
G170 = NAND ( G8, G153 )
|
|
||||||
G171 = NAND ( G9, G153 )
|
|
||||||
G172 = NAND ( G3, G154 )
|
|
||||||
G173 = NAND ( G4, G154 )
|
|
||||||
G174 = NAND ( G5, G154 )
|
|
||||||
G175 = NAND ( G6, G154 )
|
|
||||||
G176 = NAND ( G7, G154 )
|
|
||||||
G177 = NAND ( G8, G154 )
|
|
||||||
G178 = NAND ( G9, G154 )
|
|
||||||
G179 = NAND ( G10, G154 )
|
|
||||||
G180 = NAND ( G155, G110 )
|
|
||||||
G181 = NAND ( G172, G157 )
|
|
||||||
G182 = NAND ( G158, G165, G173 )
|
|
||||||
G183 = NAND ( G159, G166, G174 )
|
|
||||||
G184 = NAND ( G160, G167, G175 )
|
|
||||||
G185 = NAND ( G161, G168, G176 )
|
|
||||||
G186 = NAND ( G162, G169, G177 )
|
|
||||||
G187 = NAND ( G163, G170, G178 )
|
|
||||||
G188 = NAND ( G164, G171, G179 )
|
|
||||||
G189 = BUF ( G180 )
|
|
||||||
G190 = BUF ( G181 )
|
|
||||||
G191 = BUF ( G182 )
|
|
||||||
G192 = BUF ( G183 )
|
|
||||||
G193 = BUF ( G184 )
|
|
||||||
G194 = BUF ( G185 )
|
|
||||||
G195 = BUF ( G186 )
|
|
||||||
G196 = BUF ( G187 )
|
|
||||||
G197 = BUF ( G188 )
|
|
||||||
|
@ -1,239 +1,206 @@
|
|||||||
# generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
|
# generated by verilog2bench.py https://gitea.yuhangq.com/YuhangQ/any2bench
|
||||||
# gates: 217
|
INPUT(NET_1)
|
||||||
|
INPUT(NET_10)
|
||||||
INPUT(G1)
|
INPUT(NET_11)
|
||||||
INPUT(G2)
|
INPUT(NET_12)
|
||||||
INPUT(G3)
|
INPUT(NET_13)
|
||||||
INPUT(G4)
|
INPUT(NET_14)
|
||||||
INPUT(G5)
|
INPUT(NET_15)
|
||||||
INPUT(G6)
|
INPUT(NET_16)
|
||||||
INPUT(G7)
|
INPUT(NET_17)
|
||||||
INPUT(G8)
|
INPUT(NET_18)
|
||||||
INPUT(G9)
|
INPUT(NET_19)
|
||||||
INPUT(G10)
|
INPUT(NET_2)
|
||||||
INPUT(G11)
|
INPUT(NET_20)
|
||||||
INPUT(G12)
|
INPUT(NET_21)
|
||||||
INPUT(G13)
|
INPUT(NET_22)
|
||||||
INPUT(G14)
|
INPUT(NET_23)
|
||||||
INPUT(G15)
|
INPUT(NET_24)
|
||||||
INPUT(G16)
|
INPUT(NET_25)
|
||||||
INPUT(G17)
|
INPUT(NET_26)
|
||||||
INPUT(G18)
|
INPUT(NET_27)
|
||||||
INPUT(G19)
|
INPUT(NET_28)
|
||||||
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_121)
|
||||||
INPUT(G28)
|
OUTPUT(NET_123)
|
||||||
|
OUTPUT(NET_124)
|
||||||
OUTPUT(G214)
|
OUTPUT(NET_125)
|
||||||
OUTPUT(G209)
|
OUTPUT(NET_126)
|
||||||
OUTPUT(G210)
|
OUTPUT(NET_153)
|
||||||
OUTPUT(G207)
|
OUTPUT(NET_154)
|
||||||
OUTPUT(G208)
|
OUTPUT(NET_156)
|
||||||
OUTPUT(G158)
|
OUTPUT(NET_157)
|
||||||
OUTPUT(G159)
|
OUTPUT(NET_176)
|
||||||
OUTPUT(G160)
|
OUTPUT(NET_177)
|
||||||
OUTPUT(G161)
|
OUTPUT(NET_178)
|
||||||
OUTPUT(G164)
|
OUTPUT(NET_179)
|
||||||
OUTPUT(G215)
|
OUTPUT(NET_180)
|
||||||
OUTPUT(G151)
|
OUTPUT(NET_187)
|
||||||
OUTPUT(G216)
|
OUTPUT(NET_188)
|
||||||
OUTPUT(G190)
|
OUTPUT(NET_189)
|
||||||
OUTPUT(G166)
|
OUTPUT(NET_29)
|
||||||
OUTPUT(G217)
|
OUTPUT(NET_30)
|
||||||
OUTPUT(G191)
|
OUTPUT(NET_31)
|
||||||
|
OUTPUT(NET_32)
|
||||||
G29 = NOT ( G3 )
|
OUTPUT(NET_33)
|
||||||
G30 = NOT ( G4 )
|
OUTPUT(NET_34)
|
||||||
G31 = NOT ( G5 )
|
new_n52_ = NOT ( NET_27 )
|
||||||
G32 = NOT ( G6 )
|
new_n53_ = OR ( NET_25, NET_18 )
|
||||||
G33 = NOT ( G7 )
|
new_n54_ = NOR ( new_n53_, NET_17 )
|
||||||
G34 = NAND ( G8, G9, G11, G10 )
|
new_n55_ = NAND ( new_n54_, new_n52_ )
|
||||||
G35 = NOT ( G12 )
|
new_n56_ = OR ( new_n55_, NET_5 )
|
||||||
G36 = NOT ( G13 )
|
new_n57_ = NAND ( new_n56_, NET_16 )
|
||||||
G37 = NOR ( G13, G14 )
|
new_n58_ = NAND ( NET_25, NET_17 )
|
||||||
G38 = NOT ( G14 )
|
NET_121 = NAND ( new_n58_, new_n57_ )
|
||||||
G39 = NOT ( G15 )
|
new_n60_ = NOT ( NET_17 )
|
||||||
G40 = OR ( G7, G15 )
|
new_n61_ = NAND ( NET_7, new_n52_, NET_18, new_n60_ )
|
||||||
G41 = NOT ( G16 )
|
new_n62_ = NAND ( new_n61_, NET_12 )
|
||||||
G42 = NAND ( G15, G16 )
|
new_n63_ = NOT ( NET_21 )
|
||||||
G43 = NAND ( G13, G16 )
|
new_n64_ = OR ( new_n61_, new_n63_ )
|
||||||
G44 = OR ( G16, G13 )
|
NET_123 = NAND ( new_n64_, new_n62_ )
|
||||||
G45 = NOT ( G21 )
|
new_n66_ = NAND ( new_n61_, NET_13 )
|
||||||
G46 = NOT ( G22 )
|
new_n67_ = NOT ( NET_24 )
|
||||||
G47 = NOT ( G24 )
|
new_n68_ = OR ( new_n61_, new_n67_ )
|
||||||
G48 = NOT ( G25 )
|
NET_124 = NAND ( new_n68_, new_n66_ )
|
||||||
G49 = NOT ( G27 )
|
new_n70_ = NAND ( new_n61_, NET_14 )
|
||||||
G50 = NOT ( G28 )
|
new_n71_ = NOT ( NET_19 )
|
||||||
G51 = NAND ( G4, G29 )
|
new_n72_ = OR ( new_n61_, new_n71_ )
|
||||||
G52 = NAND ( G15, G32 )
|
NET_125 = NAND ( new_n72_, new_n70_ )
|
||||||
G53 = NAND ( G16, G34 )
|
new_n74_ = NAND ( new_n61_, NET_15 )
|
||||||
G54 = NAND ( G27, G35 )
|
new_n75_ = NOT ( NET_28 )
|
||||||
G55 = NAND ( G15, G36 )
|
new_n76_ = OR ( new_n61_, new_n75_ )
|
||||||
G56 = NAND ( G16, G36 )
|
NET_126 = NAND ( new_n76_, new_n74_ )
|
||||||
G57 = NAND ( G4, G37 )
|
new_n78_ = NOR ( new_n52_, NET_18 )
|
||||||
G58 = NAND ( G15, G38 )
|
new_n79_ = NOT ( NET_18 )
|
||||||
G59 = NAND ( G16, G39 )
|
new_n80_ = NOR ( NET_27, new_n79_ )
|
||||||
G60 = NAND ( G14, G39 )
|
new_n81_ = NOR ( new_n80_, new_n78_ )
|
||||||
G61 = NAND ( G13, G39 )
|
new_n82_ = OR ( NET_6, new_n52_ )
|
||||||
G62 = AND ( G14, G41 )
|
new_n83_ = NOT ( NET_25 )
|
||||||
G63 = NAND ( G37, G41 )
|
new_n84_ = OR ( NET_27, new_n83_ )
|
||||||
G64 = NAND ( G15, G41 )
|
new_n85_ = NAND ( new_n84_, new_n82_, new_n81_, new_n60_ )
|
||||||
G65 = NAND ( G13, G41 )
|
new_n86_ = NAND ( new_n85_, NET_20 )
|
||||||
G66 = NOT ( G42 )
|
new_n87_ = NOT ( NET_6 )
|
||||||
G67 = NAND ( G7, G44 )
|
new_n88_ = NOR ( NET_27, new_n60_ )
|
||||||
G68 = NAND ( G13, G45 )
|
new_n89_ = NAND ( new_n88_, new_n87_, NET_18 )
|
||||||
G69 = NAND ( G27, G22, G47, G35 )
|
NET_153 = NAND ( new_n89_, new_n86_ )
|
||||||
G70 = NAND ( G12, G49 )
|
new_n91_ = OR ( new_n52_, NET_17 )
|
||||||
G71 = NAND ( G42, G51 )
|
new_n92_ = OR ( NET_25, NET_17 )
|
||||||
G72 = NOT ( G55 )
|
new_n93_ = NAND ( new_n92_, NET_7 )
|
||||||
G73 = NOT ( G57 )
|
new_n94_ = NAND ( new_n88_, NET_25 )
|
||||||
G74 = NOT ( G58 )
|
new_n95_ = NAND ( new_n94_, new_n93_, new_n91_, new_n81_ )
|
||||||
G75 = NAND ( G40, G58, G41 )
|
new_n96_ = NAND ( new_n95_, NET_23 )
|
||||||
G76 = NOT ( G59 )
|
new_n97_ = NAND ( new_n88_, NET_7, new_n83_, new_n79_ )
|
||||||
G77 = AND ( G58, G60 )
|
new_n98_ = NAND ( new_n80_, NET_25, new_n60_ )
|
||||||
G78 = NAND ( G15, G62 )
|
NET_154 = NAND ( new_n98_, new_n97_, new_n96_, new_n61_ )
|
||||||
G79 = NAND ( G7, G39, G62 )
|
new_n100_ = NOT ( NET_4 )
|
||||||
G80 = NAND ( G13, G39, G62 )
|
new_n101_ = OR ( new_n53_, NET_17 )
|
||||||
G81 = NOT ( G63 )
|
new_n102_ = NOR ( new_n101_, new_n100_ )
|
||||||
G82 = NAND ( G56, G65 )
|
new_n103_ = NAND ( new_n102_, NET_3, NET_27, NET_1 )
|
||||||
G83 = NAND ( G66, G33, G14 )
|
new_n104_ = NAND ( new_n102_, NET_3, NET_27 )
|
||||||
G84 = NOT ( G69 )
|
new_n105_ = NAND ( new_n104_, NET_22 )
|
||||||
G85 = NAND ( G41, G69 )
|
NET_156 = NAND ( new_n105_, new_n103_ )
|
||||||
G86 = NAND ( G70, G54 )
|
new_n107_ = NAND ( new_n102_, NET_3, NET_27, NET_2 )
|
||||||
G87 = NAND ( G37, G71 )
|
new_n108_ = NAND ( new_n104_, NET_26 )
|
||||||
G88 = NAND ( G72, G30, G38 )
|
NET_157 = NAND ( new_n108_, new_n107_ )
|
||||||
G89 = NAND ( G72, G41 )
|
new_n110_ = NAND ( NET_27, NET_18, new_n60_ )
|
||||||
G90 = NAND ( G73, G16 )
|
new_n111_ = NOT ( new_n88_ )
|
||||||
G91 = NAND ( G3, G46, G74 )
|
new_n112_ = AND ( NET_9, NET_8, NET_25 )
|
||||||
G92 = NAND ( G3, G49, G74 )
|
new_n113_ = NAND ( new_n112_, NET_11, NET_10 )
|
||||||
G93 = NAND ( G75, G53, G13 )
|
new_n114_ = NOT ( NET_7 )
|
||||||
G94 = NAND ( G14, G32, G76 )
|
new_n115_ = NAND ( new_n114_, NET_27, NET_18 )
|
||||||
G95 = NAND ( G13, G38, G76 )
|
new_n116_ = OR ( new_n53_, new_n100_ )
|
||||||
G96 = NAND ( G4, G38, G76 )
|
new_n117_ = NAND ( new_n116_, new_n115_, new_n113_ )
|
||||||
G97 = NAND ( G13, G76 )
|
new_n118_ = NAND ( new_n117_, NET_17 )
|
||||||
G98 = NAND ( G7, G37, G76 )
|
new_n119_ = OR ( new_n110_, new_n87_ )
|
||||||
G99 = NAND ( G52, G61, G41, G77 )
|
new_n120_ = AND ( new_n119_, new_n55_ )
|
||||||
G100 = NOT ( G78 )
|
new_n121_ = OR ( new_n100_, NET_25 )
|
||||||
G101 = NOT ( G79 )
|
new_n122_ = NAND ( new_n121_, new_n78_, new_n58_ )
|
||||||
G102 = NAND ( G17, G79 )
|
new_n123_ = NAND ( new_n114_, new_n52_, NET_25, new_n60_ )
|
||||||
G103 = NAND ( G18, G79 )
|
new_n124_ = AND ( new_n123_, new_n89_, new_n61_ )
|
||||||
G104 = NAND ( G19, G79 )
|
new_n125_ = NAND ( new_n124_, new_n122_, new_n120_, new_n118_ )
|
||||||
G105 = NAND ( G20, G79 )
|
new_n126_ = NAND ( new_n75_, NET_24, new_n63_, NET_19 )
|
||||||
G106 = AND ( G4, G81 )
|
new_n127_ = NAND ( new_n126_, new_n60_ )
|
||||||
G107 = NAND ( G81, G39 )
|
new_n128_ = NAND ( new_n127_, new_n125_, new_n111_ )
|
||||||
G108 = NAND ( G81, G31 )
|
new_n129_ = NAND ( new_n128_, NET_18 )
|
||||||
G109 = NAND ( G31, G39, G81 )
|
new_n130_ = NAND ( new_n92_, new_n58_, NET_27 )
|
||||||
G110 = NAND ( G3, G81 )
|
NET_176 = NAND ( new_n130_, new_n129_, new_n110_ )
|
||||||
G111 = NAND ( G15, G82 )
|
new_n132_ = NOR ( new_n126_, new_n79_, NET_17 )
|
||||||
G112 = NAND ( G74, G82 )
|
new_n133_ = NOR ( new_n101_, NET_5 )
|
||||||
G113 = NAND ( G84, G62 )
|
new_n134_ = OR ( new_n133_, new_n132_ )
|
||||||
G114 = NAND ( G84, G36 )
|
new_n135_ = NAND ( new_n134_, new_n125_, new_n52_ )
|
||||||
G115 = NOT ( G86 )
|
new_n136_ = NAND ( new_n125_, new_n60_ )
|
||||||
G116 = NAND ( G86, G46 )
|
new_n137_ = NAND ( new_n136_, NET_25 )
|
||||||
G117 = AND ( G83, G88, G90 )
|
NET_177 = NAND ( new_n137_, new_n135_ )
|
||||||
G118 = NAND ( G77, G64, G97, G67 )
|
new_n139_ = OR ( new_n125_, new_n52_ )
|
||||||
G119 = NAND ( G23, G99 )
|
new_n140_ = OR ( new_n52_, NET_25 )
|
||||||
G120 = NAND ( G6, G100 )
|
new_n141_ = NAND ( new_n140_, new_n125_, NET_17 )
|
||||||
G121 = NAND ( G100, G36 )
|
new_n142_ = OR ( new_n140_, NET_17 )
|
||||||
G122 = NAND ( G24, G101 )
|
NET_178 = NAND ( new_n142_, new_n141_, new_n139_, new_n110_ )
|
||||||
G123 = NAND ( G101, G27 )
|
new_n144_ = OR ( new_n126_, NET_25 )
|
||||||
G124 = NAND ( G101, G22 )
|
new_n145_ = NAND ( new_n144_, new_n52_, new_n60_ )
|
||||||
G125 = NAND ( G12, G101 )
|
new_n146_ = NAND ( new_n145_, new_n110_, new_n101_ )
|
||||||
G126 = NAND ( G3, G15, G106 )
|
new_n147_ = NAND ( new_n146_, new_n125_ )
|
||||||
G127 = NAND ( G106, G29 )
|
new_n148_ = OR ( new_n125_, new_n60_ )
|
||||||
G128 = NAND ( G2, G50, G106 )
|
NET_179 = NAND ( new_n148_, new_n147_ )
|
||||||
G129 = NAND ( G1, G48, G106 )
|
new_n150_ = NOT ( NET_3 )
|
||||||
G130 = NAND ( G21, G109 )
|
new_n151_ = NOR ( new_n101_, new_n150_ )
|
||||||
G131 = NAND ( G68, G110 )
|
new_n152_ = NOR ( new_n83_, NET_16 )
|
||||||
G132 = NAND ( G108, G113 )
|
new_n153_ = NOR ( new_n152_, new_n151_ )
|
||||||
G133 = NAND ( G41, G39, G114 )
|
new_n154_ = OR ( new_n153_, new_n52_ )
|
||||||
G134 = NAND ( G115, G22 )
|
new_n155_ = OR ( new_n110_, NET_25 )
|
||||||
G135 = NAND ( G26, G118 )
|
new_n156_ = NAND ( new_n88_, NET_25, new_n79_ )
|
||||||
G136 = NAND ( G94, G119 )
|
new_n157_ = NAND ( new_n156_, new_n155_ )
|
||||||
G137 = AND ( G107, G120 )
|
new_n158_ = NAND ( new_n157_, NET_11 )
|
||||||
G138 = NAND ( G95, G121 )
|
new_n159_ = NAND ( new_n158_, new_n154_ )
|
||||||
G139 = NAND ( G122, G102 )
|
new_n160_ = NAND ( new_n92_, new_n78_, new_n58_ )
|
||||||
G140 = NAND ( G123, G103 )
|
new_n161_ = NAND ( new_n160_, new_n156_, new_n120_, new_n116_ )
|
||||||
G141 = NAND ( G124, G104 )
|
new_n162_ = NAND ( new_n161_, new_n159_ )
|
||||||
G142 = NAND ( G125, G105 )
|
new_n163_ = OR ( new_n161_, new_n75_ )
|
||||||
G143 = NOT ( G126 )
|
NET_180 = NAND ( new_n163_, new_n162_ )
|
||||||
G144 = NAND ( G25, G126 )
|
new_n165_ = NAND ( new_n78_, NET_3, new_n71_ )
|
||||||
G145 = NAND ( G28, G126 )
|
new_n166_ = NAND ( new_n157_, NET_10 )
|
||||||
G146 = NAND ( G43, G130 )
|
new_n167_ = NAND ( new_n166_, new_n165_ )
|
||||||
G147 = NAND ( G15, G131 )
|
new_n168_ = NAND ( new_n88_, NET_4, new_n79_ )
|
||||||
G148 = NAND ( G78, G63, G133 )
|
new_n169_ = AND ( new_n168_, new_n156_, new_n120_ )
|
||||||
G149 = NAND ( G116, G134 )
|
new_n170_ = NOT ( NET_26 )
|
||||||
G150 = NAND ( G80, G79, G98, G135 )
|
new_n171_ = NAND ( new_n102_, new_n170_, NET_2 )
|
||||||
G151 = BUF ( G136 )
|
new_n172_ = NAND ( new_n102_, new_n150_ )
|
||||||
G152 = AND ( G137, G95 )
|
new_n173_ = NAND ( new_n172_, new_n171_, new_n169_ )
|
||||||
G153 = NAND ( G79, G94, G93, G117, G137 )
|
new_n174_ = NAND ( new_n173_, new_n167_ )
|
||||||
G154 = NAND ( G10, G138 )
|
new_n175_ = OR ( new_n173_, new_n71_ )
|
||||||
G155 = NAND ( G8, G138 )
|
NET_187 = NAND ( new_n175_, new_n174_ )
|
||||||
G156 = NAND ( G9, G138 )
|
new_n177_ = XNOR ( NET_28, NET_24 )
|
||||||
G157 = NAND ( G11, G138 )
|
new_n178_ = NAND ( new_n177_, new_n71_ )
|
||||||
G158 = BUF ( G139 )
|
new_n179_ = OR ( new_n177_, new_n71_ )
|
||||||
G159 = BUF ( G140 )
|
new_n180_ = NAND ( new_n179_, new_n178_, NET_27, NET_17 )
|
||||||
G160 = BUF ( G141 )
|
new_n181_ = NAND ( new_n157_, NET_8 )
|
||||||
G161 = BUF ( G142 )
|
new_n182_ = NAND ( new_n181_, new_n180_ )
|
||||||
G162 = NAND ( G143, G1 )
|
new_n183_ = NAND ( NET_27, NET_17 )
|
||||||
G163 = NAND ( G143, G2 )
|
new_n184_ = OR ( new_n100_, NET_3 )
|
||||||
G164 = BUF ( G146 )
|
new_n185_ = AND ( new_n184_, new_n183_ )
|
||||||
G165 = NAND ( G66, G149 )
|
new_n186_ = OR ( new_n185_, new_n53_ )
|
||||||
G166 = BUF ( G150 )
|
new_n187_ = NAND ( new_n186_, new_n169_ )
|
||||||
G167 = AND ( G152, G96 )
|
new_n188_ = NAND ( new_n187_, new_n182_ )
|
||||||
G168 = NAND ( G112, G57, G152 )
|
new_n189_ = OR ( new_n187_, new_n63_ )
|
||||||
G169 = NOT ( G153 )
|
NET_188 = NAND ( new_n189_, new_n188_ )
|
||||||
G170 = NAND ( G41, G153 )
|
new_n191_ = NAND ( new_n78_, NET_3, new_n67_ )
|
||||||
G171 = NAND ( G132, G39, G153 )
|
new_n192_ = NAND ( new_n157_, NET_9 )
|
||||||
G172 = NAND ( G85, G59, G153 )
|
new_n193_ = NAND ( new_n192_, new_n191_ )
|
||||||
G173 = NAND ( G16, G153, G55 )
|
new_n194_ = NOT ( NET_22 )
|
||||||
G174 = NAND ( G148, G153 )
|
new_n195_ = NAND ( new_n102_, new_n194_, NET_1 )
|
||||||
G175 = NAND ( G154, G91 )
|
new_n196_ = NAND ( new_n195_, new_n172_, new_n169_ )
|
||||||
G176 = NAND ( G156, G92 )
|
new_n197_ = NAND ( new_n196_, new_n193_ )
|
||||||
G177 = NAND ( G157, G147 )
|
new_n198_ = OR ( new_n196_, new_n67_ )
|
||||||
G178 = NAND ( G162, G144 )
|
NET_189 = NAND ( new_n198_, new_n197_ )
|
||||||
G179 = NAND ( G163, G145 )
|
NET_29 = BUF ( NET_23 )
|
||||||
G180 = NAND ( G155, G165 )
|
NET_30 = BUF ( NET_20 )
|
||||||
G181 = NAND ( G128, G127, G167 )
|
NET_31 = BUF ( NET_12 )
|
||||||
G182 = NAND ( G167, G87 )
|
NET_32 = BUF ( NET_13 )
|
||||||
G183 = NAND ( G129, G127, G167 )
|
NET_33 = BUF ( NET_14 )
|
||||||
G184 = NOT ( G168 )
|
NET_34 = BUF ( NET_15 )
|
||||||
G185 = NAND ( G169, G15 )
|
|
||||||
G186 = NAND ( G169, G16 )
|
|
||||||
G187 = NAND ( G13, G170 )
|
|
||||||
G188 = NAND ( G14, G172 )
|
|
||||||
G189 = NAND ( G177, G168 )
|
|
||||||
G190 = BUF ( G178 )
|
|
||||||
G191 = BUF ( G179 )
|
|
||||||
G192 = NOT ( G181 )
|
|
||||||
G193 = NAND ( G175, G181 )
|
|
||||||
G194 = NOT ( G182 )
|
|
||||||
G195 = NAND ( G180, G182 )
|
|
||||||
G196 = NOT ( G183 )
|
|
||||||
G197 = NAND ( G176, G183 )
|
|
||||||
G198 = NAND ( G184, G12 )
|
|
||||||
G199 = NAND ( G185, G78, G89, G173 )
|
|
||||||
G200 = NAND ( G174, G186 )
|
|
||||||
G201 = NAND ( G187, G171 )
|
|
||||||
G202 = NAND ( G111, G78, G188 )
|
|
||||||
G203 = NAND ( G192, G22 )
|
|
||||||
G204 = NAND ( G194, G24 )
|
|
||||||
G205 = NAND ( G196, G27 )
|
|
||||||
G206 = NAND ( G189, G198 )
|
|
||||||
G207 = BUF ( G199 )
|
|
||||||
G208 = BUF ( G200 )
|
|
||||||
G209 = BUF ( G201 )
|
|
||||||
G210 = BUF ( G202 )
|
|
||||||
G211 = NAND ( G193, G203 )
|
|
||||||
G212 = NAND ( G195, G204 )
|
|
||||||
G213 = NAND ( G197, G205 )
|
|
||||||
G214 = BUF ( G206 )
|
|
||||||
G215 = BUF ( G211 )
|
|
||||||
G216 = BUF ( G212 )
|
|
||||||
G217 = BUF ( G213 )
|
|
||||||
|
1298
benchmark/b11.bench
1298
benchmark/b11.bench
File diff suppressed because it is too large
Load Diff
2484
benchmark/b12.bench
2484
benchmark/b12.bench
File diff suppressed because it is too large
Load Diff
@ -1,463 +1,386 @@
|
|||||||
# generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
|
# generated by verilog2bench.py https://gitea.yuhangq.com/YuhangQ/any2bench
|
||||||
# gates: 405
|
INPUT(NET_1)
|
||||||
|
INPUT(NET_10)
|
||||||
INPUT(G1)
|
INPUT(NET_11)
|
||||||
INPUT(G2)
|
INPUT(NET_12)
|
||||||
INPUT(G3)
|
INPUT(NET_13)
|
||||||
INPUT(G4)
|
INPUT(NET_14)
|
||||||
INPUT(G5)
|
INPUT(NET_15)
|
||||||
INPUT(G6)
|
INPUT(NET_16)
|
||||||
INPUT(G7)
|
INPUT(NET_17)
|
||||||
INPUT(G8)
|
INPUT(NET_18)
|
||||||
INPUT(G9)
|
INPUT(NET_19)
|
||||||
INPUT(G10)
|
INPUT(NET_2)
|
||||||
INPUT(G11)
|
INPUT(NET_20)
|
||||||
INPUT(G12)
|
INPUT(NET_21)
|
||||||
INPUT(G13)
|
INPUT(NET_22)
|
||||||
INPUT(G14)
|
INPUT(NET_23)
|
||||||
INPUT(G15)
|
INPUT(NET_24)
|
||||||
INPUT(G16)
|
INPUT(NET_25)
|
||||||
INPUT(G17)
|
INPUT(NET_26)
|
||||||
INPUT(G18)
|
INPUT(NET_27)
|
||||||
INPUT(G19)
|
INPUT(NET_28)
|
||||||
INPUT(G20)
|
INPUT(NET_29)
|
||||||
INPUT(G21)
|
INPUT(NET_3)
|
||||||
INPUT(G22)
|
INPUT(NET_30)
|
||||||
INPUT(G23)
|
INPUT(NET_31)
|
||||||
INPUT(G24)
|
INPUT(NET_32)
|
||||||
INPUT(G25)
|
INPUT(NET_33)
|
||||||
INPUT(G26)
|
INPUT(NET_34)
|
||||||
INPUT(G27)
|
INPUT(NET_35)
|
||||||
INPUT(G28)
|
INPUT(NET_36)
|
||||||
INPUT(G29)
|
INPUT(NET_37)
|
||||||
INPUT(G30)
|
INPUT(NET_38)
|
||||||
INPUT(G31)
|
INPUT(NET_39)
|
||||||
INPUT(G32)
|
INPUT(NET_4)
|
||||||
INPUT(G33)
|
INPUT(NET_40)
|
||||||
INPUT(G34)
|
INPUT(NET_41)
|
||||||
INPUT(G35)
|
INPUT(NET_42)
|
||||||
INPUT(G36)
|
INPUT(NET_43)
|
||||||
INPUT(G37)
|
INPUT(NET_44)
|
||||||
INPUT(G38)
|
INPUT(NET_45)
|
||||||
INPUT(G39)
|
INPUT(NET_46)
|
||||||
INPUT(G40)
|
INPUT(NET_47)
|
||||||
INPUT(G41)
|
INPUT(NET_48)
|
||||||
INPUT(G42)
|
INPUT(NET_49)
|
||||||
INPUT(G43)
|
INPUT(NET_5)
|
||||||
INPUT(G44)
|
INPUT(NET_50)
|
||||||
INPUT(G45)
|
INPUT(NET_51)
|
||||||
INPUT(G46)
|
INPUT(NET_52)
|
||||||
INPUT(G47)
|
INPUT(NET_53)
|
||||||
INPUT(G48)
|
INPUT(NET_54)
|
||||||
INPUT(G49)
|
INPUT(NET_55)
|
||||||
INPUT(G50)
|
INPUT(NET_56)
|
||||||
INPUT(G51)
|
INPUT(NET_57)
|
||||||
INPUT(G52)
|
INPUT(NET_58)
|
||||||
INPUT(G53)
|
INPUT(NET_59)
|
||||||
INPUT(G54)
|
INPUT(NET_6)
|
||||||
INPUT(G55)
|
INPUT(NET_60)
|
||||||
INPUT(G56)
|
INPUT(NET_61)
|
||||||
INPUT(G57)
|
INPUT(NET_62)
|
||||||
INPUT(G58)
|
INPUT(NET_63)
|
||||||
INPUT(G59)
|
INPUT(NET_7)
|
||||||
INPUT(G60)
|
INPUT(NET_8)
|
||||||
INPUT(G61)
|
INPUT(NET_9)
|
||||||
INPUT(G62)
|
OUTPUT(NET_171)
|
||||||
INPUT(G63)
|
OUTPUT(NET_172)
|
||||||
|
OUTPUT(NET_173)
|
||||||
OUTPUT(G348)
|
OUTPUT(NET_174)
|
||||||
OUTPUT(G349)
|
OUTPUT(NET_215)
|
||||||
OUTPUT(G374)
|
OUTPUT(NET_216)
|
||||||
OUTPUT(G346)
|
OUTPUT(NET_217)
|
||||||
OUTPUT(G329)
|
OUTPUT(NET_218)
|
||||||
OUTPUT(G350)
|
OUTPUT(NET_219)
|
||||||
OUTPUT(G351)
|
OUTPUT(NET_220)
|
||||||
OUTPUT(G345)
|
OUTPUT(NET_221)
|
||||||
OUTPUT(G236)
|
OUTPUT(NET_223)
|
||||||
OUTPUT(G237)
|
OUTPUT(NET_224)
|
||||||
OUTPUT(G278)
|
OUTPUT(NET_225)
|
||||||
OUTPUT(G279)
|
OUTPUT(NET_251)
|
||||||
OUTPUT(G280)
|
OUTPUT(NET_252)
|
||||||
OUTPUT(G281)
|
OUTPUT(NET_253)
|
||||||
OUTPUT(G282)
|
OUTPUT(NET_255)
|
||||||
OUTPUT(G283)
|
OUTPUT(NET_256)
|
||||||
OUTPUT(G284)
|
OUTPUT(NET_257)
|
||||||
OUTPUT(G285)
|
OUTPUT(NET_258)
|
||||||
OUTPUT(G375)
|
OUTPUT(NET_259)
|
||||||
OUTPUT(G376)
|
OUTPUT(NET_260)
|
||||||
OUTPUT(G369)
|
OUTPUT(NET_261)
|
||||||
OUTPUT(G360)
|
OUTPUT(NET_262)
|
||||||
OUTPUT(G405)
|
OUTPUT(NET_263)
|
||||||
OUTPUT(G403)
|
OUTPUT(NET_264)
|
||||||
OUTPUT(G399)
|
OUTPUT(NET_286)
|
||||||
OUTPUT(G392)
|
OUTPUT(NET_287)
|
||||||
OUTPUT(G384)
|
OUTPUT(NET_288)
|
||||||
OUTPUT(G373)
|
OUTPUT(NET_289)
|
||||||
OUTPUT(G354)
|
OUTPUT(NET_290)
|
||||||
OUTPUT(G355)
|
OUTPUT(NET_291)
|
||||||
OUTPUT(G352)
|
OUTPUT(NET_292)
|
||||||
OUTPUT(G353)
|
OUTPUT(NET_301)
|
||||||
OUTPUT(G238)
|
OUTPUT(NET_302)
|
||||||
OUTPUT(G286)
|
OUTPUT(NET_303)
|
||||||
OUTPUT(G235)
|
OUTPUT(NET_318)
|
||||||
OUTPUT(G255)
|
OUTPUT(NET_319)
|
||||||
OUTPUT(G163)
|
OUTPUT(NET_320)
|
||||||
OUTPUT(G310)
|
OUTPUT(NET_321)
|
||||||
OUTPUT(G293)
|
OUTPUT(NET_322)
|
||||||
OUTPUT(G239)
|
OUTPUT(NET_323)
|
||||||
OUTPUT(G294)
|
OUTPUT(NET_324)
|
||||||
OUTPUT(G207)
|
OUTPUT(NET_325)
|
||||||
OUTPUT(G269)
|
OUTPUT(NET_326)
|
||||||
OUTPUT(G311)
|
OUTPUT(NET_327)
|
||||||
OUTPUT(G312)
|
OUTPUT(NET_328)
|
||||||
OUTPUT(G277)
|
OUTPUT(NET_333)
|
||||||
OUTPUT(G228)
|
OUTPUT(NET_337)
|
||||||
OUTPUT(G287)
|
OUTPUT(NET_338)
|
||||||
OUTPUT(G225)
|
OUTPUT(NET_339)
|
||||||
OUTPUT(G254)
|
OUTPUT(NET_64)
|
||||||
OUTPUT(G233)
|
OUTPUT(NET_65)
|
||||||
OUTPUT(G366)
|
OUTPUT(NET_66)
|
||||||
OUTPUT(G336)
|
OUTPUT(NET_67)
|
||||||
|
OUTPUT(NET_68)
|
||||||
G64 = NOT ( G1 )
|
OUTPUT(NET_69)
|
||||||
G65 = NOT ( G17 )
|
OUTPUT(NET_70)
|
||||||
G66 = AND ( G17, G18 )
|
OUTPUT(NET_71)
|
||||||
G67 = NOT ( G18 )
|
OUTPUT(NET_72)
|
||||||
G68 = NOT ( G19 )
|
OUTPUT(NET_73)
|
||||||
G69 = NOT ( G20 )
|
OUTPUT(NET_75)
|
||||||
G70 = OR ( G20, G19 )
|
new_n127_ = NOT ( NET_58 )
|
||||||
G71 = NOT ( G29 )
|
new_n128_ = OR ( NET_59, new_n127_ )
|
||||||
G72 = NAND ( G29, G28 )
|
new_n129_ = NAND ( NET_59, NET_57 )
|
||||||
G73 = NAND ( G29, G27 )
|
NET_171 = NAND ( new_n129_, new_n128_ )
|
||||||
G74 = OR ( G29, G30 )
|
new_n131_ = OR ( new_n127_, NET_57, NET_55 )
|
||||||
G75 = NOT ( G30 )
|
new_n132_ = NAND ( new_n127_, NET_57, NET_1 )
|
||||||
G76 = AND ( G30, G31 )
|
NET_172 = NAND ( new_n132_, new_n131_, NET_59 )
|
||||||
G77 = NOT ( G31 )
|
new_n134_ = NOT ( NET_50 )
|
||||||
G78 = OR ( G31, G30 )
|
new_n135_ = NAND ( NET_47, NET_10 )
|
||||||
G79 = NOT ( G32 )
|
new_n136_ = OR ( new_n135_, new_n134_ )
|
||||||
G80 = NOT ( G33 )
|
new_n137_ = NOT ( NET_44 )
|
||||||
G81 = NOT ( G34 )
|
new_n138_ = OR ( NET_62, new_n137_ )
|
||||||
G82 = NOT ( G35 )
|
NET_173 = NAND ( new_n138_, new_n136_ )
|
||||||
G83 = NOT ( G36 )
|
new_n140_ = NOR ( NET_50, NET_42 )
|
||||||
G84 = NOT ( G37 )
|
new_n141_ = OR ( new_n140_, NET_46 )
|
||||||
G85 = NOT ( G38 )
|
new_n142_ = NAND ( NET_50, NET_42 )
|
||||||
G86 = NOT ( G39 )
|
NET_174 = NAND ( new_n142_, new_n141_ )
|
||||||
G87 = NOT ( G40 )
|
new_n144_ = NOT ( NET_61 )
|
||||||
G88 = NOT ( G41 )
|
new_n145_ = NAND ( new_n144_, NET_60, NET_52 )
|
||||||
G89 = OR ( G40, G42, G41 )
|
new_n146_ = NOT ( NET_60 )
|
||||||
G90 = NOT ( G42 )
|
new_n147_ = NAND ( new_n144_, new_n146_, NET_43 )
|
||||||
G91 = NAND ( G41, G42 )
|
NET_215 = NAND ( new_n147_, new_n145_ )
|
||||||
G92 = NOT ( G43 )
|
new_n149_ = NOR ( NET_46, NET_42 )
|
||||||
G93 = NOT ( G45 )
|
new_n150_ = NAND ( new_n149_, NET_53 )
|
||||||
G94 = NOT ( G47 )
|
new_n151_ = NOT ( NET_46 )
|
||||||
G95 = NAND ( G10, G47 )
|
new_n152_ = NAND ( new_n151_, NET_42 )
|
||||||
G96 = NAND ( G47, G43 )
|
new_n153_ = NAND ( new_n152_, NET_41 )
|
||||||
G97 = NOT ( G50 )
|
NET_216 = NAND ( new_n153_, new_n150_ )
|
||||||
G98 = NAND ( G47, G50, G10 )
|
new_n155_ = NAND ( NET_62, NET_42 )
|
||||||
G99 = NOT ( G51 )
|
new_n156_ = NAND ( new_n155_, NET_46 )
|
||||||
G100 = NOT ( G52 )
|
new_n157_ = NOT ( NET_53 )
|
||||||
G101 = NOT ( G55 )
|
new_n158_ = OR ( new_n157_, NET_42 )
|
||||||
G102 = NOT ( G57 )
|
NET_217 = NAND ( new_n158_, new_n156_ )
|
||||||
G103 = NOT ( G58 )
|
new_n160_ = OR ( new_n129_, new_n127_ )
|
||||||
G104 = NAND ( G55, G58 )
|
new_n161_ = NOT ( NET_59 )
|
||||||
G105 = OR ( G1, G58 )
|
new_n162_ = NAND ( NET_58, NET_55 )
|
||||||
G106 = NOT ( G59 )
|
new_n163_ = OR ( new_n162_, new_n161_ )
|
||||||
G107 = NAND ( G58, G59, G57 )
|
new_n164_ = NAND ( new_n163_, NET_43 )
|
||||||
G108 = OR ( G57, G58, G59 )
|
NET_218 = NAND ( new_n164_, new_n160_ )
|
||||||
G109 = NAND ( G57, G59 )
|
new_n166_ = NOT ( NET_57 )
|
||||||
G110 = NOT ( G60 )
|
new_n167_ = NAND ( new_n161_, new_n127_, new_n166_ )
|
||||||
G111 = NOT ( G61 )
|
new_n168_ = OR ( NET_58, NET_1 )
|
||||||
G112 = OR ( G47, G62, G43 )
|
new_n169_ = OR ( new_n168_, new_n129_ )
|
||||||
G113 = NOT ( G62 )
|
new_n170_ = NAND ( new_n169_, NET_45 )
|
||||||
G114 = NAND ( G19, G20, G62 )
|
NET_219 = NAND ( new_n170_, new_n167_ )
|
||||||
G115 = NAND ( G62, G19 )
|
new_n172_ = OR ( new_n155_, new_n151_ )
|
||||||
G116 = NAND ( G62, G20 )
|
new_n173_ = NOT ( NET_52 )
|
||||||
G117 = NAND ( G66, G16 )
|
new_n174_ = OR ( new_n149_, new_n173_ )
|
||||||
G118 = NAND ( G20, G68 )
|
NET_220 = NAND ( new_n174_, new_n172_ )
|
||||||
G119 = NAND ( G20, G68 )
|
new_n176_ = NAND ( new_n144_, NET_60, new_n173_ )
|
||||||
G120 = NAND ( G69, G68, G53 )
|
new_n177_ = NAND ( new_n176_, NET_53 )
|
||||||
G121 = NAND ( G19, G69 )
|
new_n178_ = OR ( new_n144_, NET_60 )
|
||||||
G122 = NAND ( G53, G69 )
|
NET_221 = NAND ( new_n178_, new_n177_ )
|
||||||
G123 = NAND ( G19, G69 )
|
new_n180_ = OR ( new_n151_, NET_42 )
|
||||||
G124 = NAND ( G52, G70 )
|
new_n181_ = NAND ( NET_62, NET_46 )
|
||||||
G125 = NOT ( G74 )
|
new_n182_ = NAND ( new_n181_, NET_42 )
|
||||||
G126 = AND ( G31, G75 )
|
NET_223 = NAND ( new_n182_, new_n180_ )
|
||||||
G127 = NAND ( G76, G26 )
|
new_n184_ = NAND ( new_n128_, NET_49 )
|
||||||
G128 = NAND ( G76, G25 )
|
new_n185_ = OR ( new_n128_, NET_57 )
|
||||||
G129 = NAND ( G30, G77 )
|
NET_224 = NAND ( new_n185_, new_n184_ )
|
||||||
G130 = NAND ( G78, G79 )
|
new_n187_ = OR ( new_n173_, NET_51 )
|
||||||
G131 = NAND ( G74, G79 )
|
new_n188_ = NAND ( new_n187_, new_n144_, NET_60 )
|
||||||
G132 = NAND ( G42, G88 )
|
NET_225 = NAND ( new_n188_, new_n178_ )
|
||||||
G133 = AND ( G39, G89 )
|
new_n190_ = NAND ( new_n145_, NET_51 )
|
||||||
G134 = NAND ( G41, G90 )
|
new_n191_ = OR ( new_n145_, NET_51 )
|
||||||
G135 = NOT ( G91 )
|
NET_251 = NAND ( new_n191_, new_n190_ )
|
||||||
G136 = NAND ( G40, G91 )
|
new_n193_ = NOT ( NET_54 )
|
||||||
G137 = NAND ( G56, G92 )
|
NET_252 = NAND ( new_n191_, new_n193_ )
|
||||||
G138 = NAND ( G41, G93 )
|
new_n195_ = NOT ( NET_15 )
|
||||||
G139 = NAND ( G42, G93 )
|
new_n196_ = NOT ( NET_16 )
|
||||||
G140 = NAND ( G33, G93 )
|
new_n197_ = NAND ( NET_18, NET_17 )
|
||||||
G141 = NAND ( G34, G93 )
|
new_n198_ = OR ( new_n197_, new_n196_ )
|
||||||
G142 = NAND ( G35, G93 )
|
new_n199_ = NOR ( new_n128_, new_n166_ )
|
||||||
G143 = NAND ( G36, G93 )
|
new_n200_ = NOT ( new_n199_ )
|
||||||
G144 = NAND ( G37, G93 )
|
new_n201_ = NOR ( new_n200_, new_n198_ )
|
||||||
G145 = NAND ( G38, G93 )
|
NET_253 = NOR ( new_n201_, new_n195_ )
|
||||||
G146 = NAND ( G39, G93 )
|
new_n203_ = NOT ( NET_41 )
|
||||||
G147 = NAND ( G40, G93 )
|
new_n204_ = NAND ( NET_56, new_n203_ )
|
||||||
G148 = NAND ( G43, G94 )
|
new_n205_ = NAND ( NET_47, NET_41 )
|
||||||
G149 = NAND ( G50, G95 )
|
new_n206_ = NAND ( new_n205_, new_n204_ )
|
||||||
G150 = NAND ( G52, G99 )
|
new_n207_ = NAND ( new_n206_, new_n134_ )
|
||||||
G151 = NAND ( G102, G101, G58 )
|
new_n208_ = NAND ( new_n135_, NET_50 )
|
||||||
G152 = NAND ( G57, G59, G103, G64 )
|
NET_255 = NAND ( new_n208_, new_n207_ )
|
||||||
G153 = NAND ( G1, G57, G103 )
|
new_n210_ = NOR ( NET_47, new_n203_ )
|
||||||
G154 = NOT ( G104 )
|
new_n211_ = NAND ( new_n210_, NET_2 )
|
||||||
G155 = NAND ( G104, G102 )
|
new_n212_ = NOT ( new_n210_ )
|
||||||
G156 = NAND ( G58, G106 )
|
new_n213_ = NAND ( new_n212_, NET_19 )
|
||||||
G157 = NAND ( G57, G106 )
|
NET_256 = NAND ( new_n213_, new_n211_ )
|
||||||
G158 = NAND ( G61, G110 )
|
new_n215_ = NAND ( new_n210_, NET_3 )
|
||||||
G159 = NAND ( G61, G110 )
|
new_n216_ = NAND ( new_n212_, NET_20 )
|
||||||
G160 = NAND ( G60, G111, G52 )
|
NET_257 = NAND ( new_n216_, new_n215_ )
|
||||||
G161 = NAND ( G111, G110, G44 )
|
new_n218_ = NAND ( new_n210_, NET_4 )
|
||||||
G162 = NAND ( G111, G100, G60 )
|
new_n219_ = NAND ( new_n212_, NET_21 )
|
||||||
G163 = BUF ( G112 )
|
NET_258 = NAND ( new_n219_, new_n218_ )
|
||||||
G164 = NAND ( G45, G113 )
|
new_n221_ = NAND ( new_n210_, NET_5 )
|
||||||
G165 = NAND ( G20, G115 )
|
new_n222_ = NAND ( new_n212_, NET_22 )
|
||||||
G166 = NAND ( G19, G116 )
|
NET_259 = NAND ( new_n222_, new_n221_ )
|
||||||
G167 = NAND ( G43, G118 )
|
new_n224_ = NAND ( new_n210_, NET_6 )
|
||||||
G168 = NAND ( G50, G121 )
|
new_n225_ = NAND ( new_n212_, NET_23 )
|
||||||
G169 = NAND ( G124, G114 )
|
NET_260 = NAND ( new_n225_, new_n224_ )
|
||||||
G170 = NAND ( G125, G77 )
|
new_n227_ = NAND ( new_n210_, NET_7 )
|
||||||
G171 = NAND ( G126, G22 )
|
new_n228_ = NAND ( new_n212_, NET_24 )
|
||||||
G172 = NAND ( G126, G21 )
|
NET_261 = NAND ( new_n228_, new_n227_ )
|
||||||
G173 = NOT ( G129 )
|
new_n230_ = NAND ( new_n210_, NET_8 )
|
||||||
G174 = NAND ( G32, G129 )
|
new_n231_ = NAND ( new_n212_, NET_25 )
|
||||||
G175 = NAND ( G71, G130 )
|
NET_262 = NAND ( new_n231_, new_n230_ )
|
||||||
G176 = OR ( G38, G133 )
|
new_n233_ = NAND ( new_n210_, NET_9 )
|
||||||
G177 = NAND ( G132, G134 )
|
new_n234_ = NAND ( new_n212_, NET_26 )
|
||||||
G178 = NAND ( G40, G135 )
|
NET_263 = NAND ( new_n234_, new_n233_ )
|
||||||
G179 = NAND ( G135, G87 )
|
new_n236_ = OR ( NET_59, new_n166_ )
|
||||||
G180 = NAND ( G96, G137 )
|
new_n237_ = NAND ( new_n162_, new_n166_ )
|
||||||
G181 = NOT ( G148 )
|
new_n238_ = NAND ( new_n237_, new_n168_ )
|
||||||
G182 = NAND ( G21, G148 )
|
new_n239_ = NAND ( new_n238_, NET_59 )
|
||||||
G183 = NAND ( G22, G148 )
|
NET_264 = NAND ( new_n239_, new_n236_ )
|
||||||
G184 = NAND ( G23, G148 )
|
new_n241_ = NAND ( new_n199_, new_n198_ )
|
||||||
G185 = NAND ( G24, G148 )
|
new_n242_ = OR ( new_n241_, new_n195_ )
|
||||||
G186 = NAND ( G25, G148 )
|
new_n243_ = NAND ( new_n200_, NET_11 )
|
||||||
G187 = NAND ( G26, G148 )
|
NET_286 = NAND ( new_n243_, new_n242_ )
|
||||||
G188 = NAND ( G27, G148 )
|
new_n245_ = OR ( new_n241_, new_n196_ )
|
||||||
G189 = NAND ( G28, G148 )
|
new_n246_ = NAND ( new_n200_, NET_12 )
|
||||||
G190 = NAND ( G60, G150, G111 )
|
new_n247_ = OR ( new_n241_, new_n197_ )
|
||||||
G191 = NAND ( G46, G152 )
|
NET_287 = NAND ( new_n247_, new_n246_, new_n245_ )
|
||||||
G192 = NAND ( G151, G153, G59 )
|
new_n249_ = NAND ( new_n200_, NET_14 )
|
||||||
G193 = NAND ( G154, G59 )
|
new_n250_ = OR ( new_n241_, NET_18 )
|
||||||
G194 = NAND ( G105, G155 )
|
NET_288 = NAND ( new_n250_, new_n249_ )
|
||||||
G195 = NAND ( G156, G109 )
|
new_n252_ = OR ( new_n200_, new_n197_ )
|
||||||
G196 = NOT ( G156 )
|
new_n253_ = NAND ( new_n252_, NET_16 )
|
||||||
G197 = NAND ( G49, G156 )
|
NET_289 = NAND ( new_n253_, new_n247_ )
|
||||||
G198 = NOT ( G160 )
|
new_n255_ = NAND ( new_n200_, NET_18 )
|
||||||
G199 = NAND ( G51, G160 )
|
NET_290 = NAND ( new_n255_, new_n250_ )
|
||||||
G200 = NAND ( G160, G161 )
|
new_n257_ = NAND ( new_n200_, NET_48 )
|
||||||
G201 = NAND ( G53, G162 )
|
NET_291 = NAND ( new_n257_, new_n169_ )
|
||||||
G202 = NAND ( G164, G98 )
|
new_n259_ = NAND ( new_n144_, NET_60, NET_52, NET_51 )
|
||||||
G203 = NAND ( G165, G123 )
|
new_n260_ = NAND ( new_n259_, NET_55 )
|
||||||
G204 = NAND ( G122, G166 )
|
NET_292 = NAND ( new_n260_, new_n147_ )
|
||||||
G205 = NAND ( G167, G120 )
|
new_n262_ = NOT ( NET_31 )
|
||||||
G206 = NAND ( G119, G168 )
|
new_n263_ = NOT ( NET_32 )
|
||||||
G207 = BUF ( G169 )
|
new_n264_ = NOT ( NET_33 )
|
||||||
G208 = NAND ( G173, G24 )
|
new_n265_ = NOT ( NET_37 )
|
||||||
G209 = NAND ( G173, G23 )
|
new_n266_ = NOR ( NET_40, NET_39, NET_38 )
|
||||||
G210 = AND ( G37, G36, G176 )
|
new_n267_ = NOR ( new_n266_, new_n265_ )
|
||||||
G211 = NOT ( G178 )
|
new_n268_ = OR ( new_n267_, NET_36 )
|
||||||
G212 = NAND ( G39, G178 )
|
new_n269_ = NAND ( new_n268_, NET_35, NET_34 )
|
||||||
G213 = NAND ( G179, G136 )
|
new_n270_ = NAND ( new_n269_, new_n264_, new_n263_, new_n262_ )
|
||||||
G214 = NAND ( G180, G97 )
|
new_n271_ = AND ( new_n270_, NET_44 )
|
||||||
G215 = NAND ( G2, G181 )
|
new_n272_ = NOT ( NET_30 )
|
||||||
G216 = NAND ( G3, G181 )
|
new_n273_ = NOT ( NET_28 )
|
||||||
G217 = NAND ( G4, G181 )
|
new_n274_ = NAND ( NET_29, new_n273_, NET_19 )
|
||||||
G218 = NAND ( G5, G181 )
|
new_n275_ = NAND ( NET_27, NET_25 )
|
||||||
G219 = NAND ( G6, G181 )
|
new_n276_ = NAND ( NET_29, NET_28, NET_23 )
|
||||||
G220 = NAND ( G7, G181 )
|
new_n277_ = NOT ( NET_29 )
|
||||||
G221 = NAND ( G8, G181 )
|
new_n278_ = NAND ( new_n277_, NET_28, NET_21 )
|
||||||
G222 = NAND ( G9, G181 )
|
new_n279_ = NAND ( new_n278_, new_n276_, new_n275_, new_n274_ )
|
||||||
G223 = NAND ( G159, G190 )
|
new_n280_ = NAND ( new_n279_, new_n272_ )
|
||||||
G224 = NAND ( G191, G108 )
|
new_n281_ = NAND ( new_n277_, NET_28, NET_22 )
|
||||||
G225 = BUF ( G192 )
|
new_n282_ = NAND ( NET_27, NET_26 )
|
||||||
G226 = NAND ( G44, G193 )
|
new_n283_ = NAND ( NET_29, NET_28, NET_24 )
|
||||||
G227 = NAND ( G59, G194 )
|
new_n284_ = NOT ( NET_27 )
|
||||||
G228 = BUF ( G195 )
|
new_n285_ = NAND ( new_n277_, new_n273_, new_n284_ )
|
||||||
G229 = NAND ( G196, G57 )
|
new_n286_ = NAND ( NET_29, new_n273_, NET_20 )
|
||||||
G230 = NAND ( G196, G102 )
|
new_n287_ = AND ( new_n286_, new_n285_, new_n283_ )
|
||||||
G231 = NAND ( G198, G99 )
|
new_n288_ = NAND ( new_n287_, new_n282_, new_n281_ )
|
||||||
G232 = NAND ( G198, G51 )
|
new_n289_ = NAND ( new_n288_, NET_30 )
|
||||||
G233 = BUF ( G200 )
|
NET_301 = NAND ( new_n289_, new_n280_, new_n271_ )
|
||||||
G234 = NAND ( G158, G201 )
|
new_n291_ = NOT ( NET_17 )
|
||||||
G235 = BUF ( G202 )
|
new_n292_ = OR ( new_n250_, new_n291_ )
|
||||||
G236 = BUF ( G203 )
|
new_n293_ = NAND ( new_n200_, NET_13 )
|
||||||
G237 = BUF ( G204 )
|
new_n294_ = NAND ( new_n199_, new_n198_, NET_18, new_n291_ )
|
||||||
G238 = BUF ( G205 )
|
NET_302 = NAND ( new_n294_, new_n293_, new_n292_ )
|
||||||
G239 = BUF ( G206 )
|
new_n296_ = NAND ( new_n199_, NET_18 )
|
||||||
G240 = NAND ( G127, G171, G170, G72, G208 )
|
new_n297_ = NAND ( new_n296_, NET_17 )
|
||||||
G241 = NAND ( G73, G209, G128, G172 )
|
NET_303 = NAND ( new_n297_, new_n294_ )
|
||||||
G242 = OR ( G35, G33, G34, G210 )
|
new_n299_ = NAND ( new_n270_, NET_44, NET_30 )
|
||||||
G243 = NAND ( G39, G211 )
|
NET_318 = NOR ( new_n299_, new_n285_ )
|
||||||
G244 = NAND ( G211, G86 )
|
new_n301_ = NOR ( new_n270_, new_n137_ )
|
||||||
G245 = NAND ( G214, G149 )
|
new_n302_ = NOT ( NET_34 )
|
||||||
G246 = NAND ( G215, G182 )
|
new_n303_ = NOT ( NET_35 )
|
||||||
G247 = NAND ( G216, G183 )
|
new_n304_ = NOT ( NET_36 )
|
||||||
G248 = NAND ( G217, G184 )
|
new_n305_ = NAND ( NET_40, NET_39, NET_38 )
|
||||||
G249 = NAND ( G218, G185 )
|
new_n306_ = OR ( new_n305_, new_n265_, new_n304_ )
|
||||||
G250 = NAND ( G219, G186 )
|
new_n307_ = OR ( new_n306_, new_n303_ )
|
||||||
G251 = NAND ( G220, G187 )
|
new_n308_ = OR ( new_n307_, new_n302_ )
|
||||||
G252 = NAND ( G221, G188 )
|
new_n309_ = OR ( new_n308_, new_n264_ )
|
||||||
G253 = NAND ( G222, G189 )
|
new_n310_ = NAND ( new_n309_, new_n263_ )
|
||||||
G254 = BUF ( G223 )
|
new_n311_ = OR ( new_n308_, new_n264_, new_n263_ )
|
||||||
G255 = BUF ( G224 )
|
new_n312_ = NAND ( new_n311_, new_n310_, new_n301_ )
|
||||||
G256 = NAND ( G226, G107 )
|
new_n313_ = OR ( NET_44, new_n263_ )
|
||||||
G257 = NAND ( G227, G157 )
|
NET_319 = NAND ( new_n313_, new_n312_ )
|
||||||
G258 = NOT ( G229 )
|
new_n315_ = NAND ( new_n308_, new_n264_ )
|
||||||
G259 = NAND ( G48, G229 )
|
new_n316_ = NAND ( new_n315_, new_n309_, new_n301_ )
|
||||||
G260 = NAND ( G11, G229 )
|
new_n317_ = OR ( NET_44, new_n264_ )
|
||||||
G261 = NAND ( G12, G229 )
|
NET_320 = NAND ( new_n317_, new_n316_ )
|
||||||
G262 = NAND ( G13, G229 )
|
new_n319_ = NAND ( new_n307_, new_n302_ )
|
||||||
G263 = NAND ( G14, G229 )
|
new_n320_ = NAND ( new_n319_, new_n308_, new_n301_ )
|
||||||
G264 = NAND ( G18, G229 )
|
new_n321_ = OR ( NET_44, new_n302_ )
|
||||||
G265 = NAND ( G197, G230 )
|
NET_321 = NAND ( new_n321_, new_n320_ )
|
||||||
G266 = NAND ( G231, G199 )
|
new_n323_ = NAND ( new_n306_, new_n303_ )
|
||||||
G267 = NOT ( G231 )
|
new_n324_ = NAND ( new_n323_, new_n307_, new_n301_ )
|
||||||
G268 = NAND ( G55, G232 )
|
new_n325_ = OR ( NET_44, new_n303_ )
|
||||||
G269 = BUF ( G234 )
|
NET_322 = NAND ( new_n325_, new_n324_ )
|
||||||
G270 = NAND ( G32, G240 )
|
new_n327_ = OR ( new_n305_, new_n265_ )
|
||||||
G271 = NAND ( G241, G79 )
|
new_n328_ = NAND ( new_n327_, new_n304_ )
|
||||||
G272 = NOT ( G242 )
|
new_n329_ = OR ( new_n327_, new_n304_ )
|
||||||
G273 = NAND ( G242, G45 )
|
new_n330_ = NAND ( new_n329_, new_n328_, new_n301_ )
|
||||||
G274 = NOT ( G243 )
|
new_n331_ = OR ( NET_44, new_n304_ )
|
||||||
G275 = NAND ( G38, G243 )
|
NET_323 = NAND ( new_n331_, new_n330_ )
|
||||||
G276 = NAND ( G244, G212 )
|
new_n333_ = NAND ( new_n305_, new_n265_ )
|
||||||
G277 = BUF ( G245 )
|
new_n334_ = NAND ( new_n333_, new_n327_, new_n301_ )
|
||||||
G278 = BUF ( G246 )
|
new_n335_ = OR ( NET_44, new_n265_ )
|
||||||
G279 = BUF ( G247 )
|
NET_324 = NAND ( new_n335_, new_n334_ )
|
||||||
G280 = BUF ( G248 )
|
new_n337_ = NOT ( NET_38 )
|
||||||
G281 = BUF ( G249 )
|
new_n338_ = NAND ( NET_40, NET_39 )
|
||||||
G282 = BUF ( G250 )
|
new_n339_ = OR ( new_n338_, new_n337_ )
|
||||||
G283 = BUF ( G251 )
|
new_n340_ = NAND ( new_n338_, new_n337_ )
|
||||||
G284 = BUF ( G252 )
|
new_n341_ = NAND ( new_n340_, new_n339_, new_n301_ )
|
||||||
G285 = BUF ( G253 )
|
new_n342_ = OR ( NET_44, new_n337_ )
|
||||||
G286 = BUF ( G256 )
|
NET_325 = NAND ( new_n342_, new_n341_ )
|
||||||
G287 = BUF ( G257 )
|
new_n344_ = OR ( NET_40, NET_39 )
|
||||||
G288 = AND ( G258, G117 )
|
new_n345_ = NAND ( new_n344_, new_n338_, new_n301_ )
|
||||||
G289 = NAND ( G66, G16, G258 )
|
new_n346_ = NAND ( new_n137_, NET_39 )
|
||||||
G290 = NAND ( G258, G66 )
|
NET_326 = NAND ( new_n346_, new_n345_ )
|
||||||
G291 = NAND ( G258, G18 )
|
new_n348_ = NOT ( NET_40 )
|
||||||
G292 = NAND ( G152, G259 )
|
new_n349_ = NAND ( new_n301_, new_n348_ )
|
||||||
G293 = BUF ( G265 )
|
new_n350_ = OR ( NET_44, new_n348_ )
|
||||||
G294 = BUF ( G266 )
|
NET_327 = NAND ( new_n350_, new_n349_ )
|
||||||
G295 = OR ( G267, G54 )
|
new_n352_ = NOR ( NET_29, NET_28 )
|
||||||
G296 = NAND ( G161, G268 )
|
new_n353_ = NOR ( new_n352_, NET_30 )
|
||||||
G297 = AND ( G45, G272 )
|
new_n354_ = OR ( new_n353_, NET_27 )
|
||||||
G298 = NOT ( G273 )
|
new_n355_ = NAND ( new_n354_, new_n271_ )
|
||||||
G299 = NAND ( G32, G273 )
|
new_n356_ = OR ( new_n271_, new_n272_ )
|
||||||
G300 = NAND ( G38, G274 )
|
NET_328 = NAND ( new_n356_, new_n355_ )
|
||||||
G301 = NAND ( G274, G85 )
|
new_n358_ = XOR ( new_n311_, new_n262_ )
|
||||||
G302 = NAND ( G288, G67 )
|
new_n359_ = NAND ( new_n358_, new_n301_ )
|
||||||
G303 = NAND ( G18, G65, G288 )
|
new_n360_ = OR ( NET_44, new_n262_ )
|
||||||
G304 = NAND ( G288, G66 )
|
NET_333 = NAND ( new_n360_, new_n359_ )
|
||||||
G305 = NAND ( G15, G288 )
|
new_n362_ = OR ( NET_29, new_n273_ )
|
||||||
G306 = NAND ( G288, G16 )
|
new_n363_ = NAND ( new_n299_, NET_28 )
|
||||||
G307 = AND ( G15, G289 )
|
new_n364_ = OR ( new_n299_, new_n277_, NET_28 )
|
||||||
G308 = NAND ( G290, G16 )
|
NET_337 = NAND ( new_n364_, new_n363_, new_n362_ )
|
||||||
G309 = NAND ( G17, G291 )
|
new_n366_ = NAND ( new_n272_, new_n273_, new_n284_ )
|
||||||
G310 = BUF ( G292 )
|
new_n367_ = OR ( new_n362_, new_n272_ )
|
||||||
G311 = BUF ( G295 )
|
new_n368_ = NAND ( new_n367_, new_n366_ )
|
||||||
G312 = BUF ( G296 )
|
new_n369_ = NAND ( new_n368_, new_n271_ )
|
||||||
G313 = NAND ( G177, G297 )
|
new_n370_ = NAND ( new_n299_, NET_29 )
|
||||||
G314 = NAND ( G90, G297 )
|
NET_338 = NAND ( new_n370_, new_n369_ )
|
||||||
G315 = NAND ( G276, G297 )
|
new_n372_ = OR ( new_n299_, new_n277_, new_n273_ )
|
||||||
G316 = NAND ( G213, G297 )
|
new_n373_ = NAND ( new_n299_, NET_27 )
|
||||||
G317 = NAND ( G271, G270, G298 )
|
NET_339 = NAND ( new_n373_, new_n372_ )
|
||||||
G318 = NAND ( G32, G298 )
|
NET_75 = OR ( NET_62, NET_47, NET_41 )
|
||||||
G319 = NAND ( G131, G174, G298 )
|
NET_64 = BUF ( NET_49 )
|
||||||
G320 = NAND ( G298, G175 )
|
NET_65 = BUF ( NET_48 )
|
||||||
G321 = NOT ( G300 )
|
NET_66 = BUF ( NET_54 )
|
||||||
G322 = NAND ( G37, G300 )
|
NET_67 = BUF ( NET_11 )
|
||||||
G323 = NAND ( G301, G275 )
|
NET_68 = BUF ( NET_12 )
|
||||||
G324 = NAND ( G302, G264 )
|
NET_69 = BUF ( NET_13 )
|
||||||
G325 = NAND ( G302, G263 )
|
NET_70 = BUF ( NET_14 )
|
||||||
G326 = NOT ( G302 )
|
NET_71 = BUF ( NET_45 )
|
||||||
G327 = NAND ( G260, G305 )
|
NET_72 = BUF ( NET_56 )
|
||||||
G328 = NAND ( G306, G304, G261 )
|
NET_73 = BUF ( NET_63 )
|
||||||
G329 = BUF ( G307 )
|
|
||||||
G330 = NAND ( G304, G308 )
|
|
||||||
G331 = NAND ( G303, G309 )
|
|
||||||
G332 = NAND ( G138, G313 )
|
|
||||||
G333 = NAND ( G139, G314 )
|
|
||||||
G334 = NAND ( G146, G315 )
|
|
||||||
G335 = NAND ( G147, G316 )
|
|
||||||
G336 = BUF ( G317 )
|
|
||||||
G337 = NOT ( G318 )
|
|
||||||
G338 = NAND ( G31, G318 )
|
|
||||||
G339 = NAND ( G29, G318 )
|
|
||||||
G340 = NAND ( G30, G318 )
|
|
||||||
G341 = NAND ( G320, G299 )
|
|
||||||
G342 = NAND ( G37, G321 )
|
|
||||||
G343 = NAND ( G321, G84 )
|
|
||||||
G344 = NAND ( G323, G297 )
|
|
||||||
G345 = BUF ( G324 )
|
|
||||||
G346 = BUF ( G325 )
|
|
||||||
G347 = NAND ( G326, G17 )
|
|
||||||
G348 = BUF ( G327 )
|
|
||||||
G349 = BUF ( G328 )
|
|
||||||
G350 = BUF ( G330 )
|
|
||||||
G351 = BUF ( G331 )
|
|
||||||
G352 = BUF ( G332 )
|
|
||||||
G353 = BUF ( G333 )
|
|
||||||
G354 = BUF ( G334 )
|
|
||||||
G355 = BUF ( G335 )
|
|
||||||
G356 = AND ( G125, G77, G337 )
|
|
||||||
G357 = NAND ( G76, G337 )
|
|
||||||
G358 = NAND ( G126, G337 )
|
|
||||||
G359 = NAND ( G338, G319 )
|
|
||||||
G360 = BUF ( G341 )
|
|
||||||
G361 = NOT ( G342 )
|
|
||||||
G362 = NAND ( G36, G342 )
|
|
||||||
G363 = NAND ( G343, G322 )
|
|
||||||
G364 = NAND ( G145, G344 )
|
|
||||||
G365 = NAND ( G262, G303, G347 )
|
|
||||||
G366 = BUF ( G356 )
|
|
||||||
G367 = NAND ( G357, G339 )
|
|
||||||
G368 = NAND ( G358, G340, G129 )
|
|
||||||
G369 = BUF ( G359 )
|
|
||||||
G370 = NAND ( G36, G361 )
|
|
||||||
G371 = NAND ( G361, G83 )
|
|
||||||
G372 = NAND ( G363, G297 )
|
|
||||||
G373 = BUF ( G364 )
|
|
||||||
G374 = BUF ( G365 )
|
|
||||||
G375 = BUF ( G367 )
|
|
||||||
G376 = BUF ( G368 )
|
|
||||||
G377 = NOT ( G370 )
|
|
||||||
G378 = NAND ( G35, G370 )
|
|
||||||
G379 = NAND ( G371, G362 )
|
|
||||||
G380 = NAND ( G144, G372 )
|
|
||||||
G381 = NAND ( G35, G377 )
|
|
||||||
G382 = NAND ( G377, G82 )
|
|
||||||
G383 = NAND ( G379, G297 )
|
|
||||||
G384 = BUF ( G380 )
|
|
||||||
G385 = NOT ( G381 )
|
|
||||||
G386 = NAND ( G34, G381 )
|
|
||||||
G387 = NAND ( G382, G378 )
|
|
||||||
G388 = NAND ( G143, G383 )
|
|
||||||
G389 = NAND ( G34, G385 )
|
|
||||||
G390 = NAND ( G385, G81 )
|
|
||||||
G391 = NAND ( G387, G297 )
|
|
||||||
G392 = BUF ( G388 )
|
|
||||||
G393 = NOT ( G389 )
|
|
||||||
G394 = NAND ( G33, G389 )
|
|
||||||
G395 = NAND ( G390, G386 )
|
|
||||||
G396 = NAND ( G142, G391 )
|
|
||||||
G397 = NAND ( G393, G80 )
|
|
||||||
G398 = NAND ( G395, G297 )
|
|
||||||
G399 = BUF ( G396 )
|
|
||||||
G400 = NAND ( G397, G394 )
|
|
||||||
G401 = NAND ( G141, G398 )
|
|
||||||
G402 = NAND ( G400, G297 )
|
|
||||||
G403 = BUF ( G401 )
|
|
||||||
G404 = NAND ( G140, G402 )
|
|
||||||
G405 = BUF ( G404 )
|
|
||||||
|
60317
benchmark/b17.bench
60317
benchmark/b17.bench
File diff suppressed because it is too large
Load Diff
30458
benchmark/b20.bench
30458
benchmark/b20.bench
File diff suppressed because it is too large
Load Diff
31064
benchmark/b21.bench
31064
benchmark/b21.bench
File diff suppressed because it is too large
Load Diff
45905
benchmark/b22.bench
45905
benchmark/b22.bench
File diff suppressed because it is too large
Load Diff
@ -1 +1,623 @@
|
|||||||
ERROR: BUFF is not valid gate!
|
# c1355
|
||||||
|
|
||||||
|
INPUT(1)
|
||||||
|
INPUT(8)
|
||||||
|
INPUT(15)
|
||||||
|
INPUT(22)
|
||||||
|
INPUT(29)
|
||||||
|
INPUT(36)
|
||||||
|
INPUT(43)
|
||||||
|
INPUT(50)
|
||||||
|
INPUT(57)
|
||||||
|
INPUT(64)
|
||||||
|
INPUT(71)
|
||||||
|
INPUT(78)
|
||||||
|
INPUT(85)
|
||||||
|
INPUT(92)
|
||||||
|
INPUT(99)
|
||||||
|
INPUT(106)
|
||||||
|
INPUT(113)
|
||||||
|
INPUT(120)
|
||||||
|
INPUT(127)
|
||||||
|
INPUT(134)
|
||||||
|
INPUT(141)
|
||||||
|
INPUT(148)
|
||||||
|
INPUT(155)
|
||||||
|
INPUT(162)
|
||||||
|
INPUT(169)
|
||||||
|
INPUT(176)
|
||||||
|
INPUT(183)
|
||||||
|
INPUT(190)
|
||||||
|
INPUT(197)
|
||||||
|
INPUT(204)
|
||||||
|
INPUT(211)
|
||||||
|
INPUT(218)
|
||||||
|
INPUT(225)
|
||||||
|
INPUT(226)
|
||||||
|
INPUT(227)
|
||||||
|
INPUT(228)
|
||||||
|
INPUT(229)
|
||||||
|
INPUT(230)
|
||||||
|
INPUT(231)
|
||||||
|
INPUT(232)
|
||||||
|
INPUT(233)
|
||||||
|
|
||||||
|
OUTPUT(1324)
|
||||||
|
OUTPUT(1325)
|
||||||
|
OUTPUT(1326)
|
||||||
|
OUTPUT(1327)
|
||||||
|
OUTPUT(1328)
|
||||||
|
OUTPUT(1329)
|
||||||
|
OUTPUT(1330)
|
||||||
|
OUTPUT(1331)
|
||||||
|
OUTPUT(1332)
|
||||||
|
OUTPUT(1333)
|
||||||
|
OUTPUT(1334)
|
||||||
|
OUTPUT(1335)
|
||||||
|
OUTPUT(1336)
|
||||||
|
OUTPUT(1337)
|
||||||
|
OUTPUT(1338)
|
||||||
|
OUTPUT(1339)
|
||||||
|
OUTPUT(1340)
|
||||||
|
OUTPUT(1341)
|
||||||
|
OUTPUT(1342)
|
||||||
|
OUTPUT(1343)
|
||||||
|
OUTPUT(1344)
|
||||||
|
OUTPUT(1345)
|
||||||
|
OUTPUT(1346)
|
||||||
|
OUTPUT(1347)
|
||||||
|
OUTPUT(1348)
|
||||||
|
OUTPUT(1349)
|
||||||
|
OUTPUT(1350)
|
||||||
|
OUTPUT(1351)
|
||||||
|
OUTPUT(1352)
|
||||||
|
OUTPUT(1353)
|
||||||
|
OUTPUT(1354)
|
||||||
|
OUTPUT(1355)
|
||||||
|
|
||||||
|
242 = AND(225, 233)
|
||||||
|
245 = AND(226, 233)
|
||||||
|
248 = AND(227, 233)
|
||||||
|
251 = AND(228, 233)
|
||||||
|
254 = AND(229, 233)
|
||||||
|
257 = AND(230, 233)
|
||||||
|
260 = AND(231, 233)
|
||||||
|
263 = AND(232, 233)
|
||||||
|
266 = NAND(1, 8)
|
||||||
|
269 = NAND(15, 22)
|
||||||
|
272 = NAND(29, 36)
|
||||||
|
275 = NAND(43, 50)
|
||||||
|
278 = NAND(57, 64)
|
||||||
|
281 = NAND(71, 78)
|
||||||
|
284 = NAND(85, 92)
|
||||||
|
287 = NAND(99, 106)
|
||||||
|
290 = NAND(113, 120)
|
||||||
|
293 = NAND(127, 134)
|
||||||
|
296 = NAND(141, 148)
|
||||||
|
299 = NAND(155, 162)
|
||||||
|
302 = NAND(169, 176)
|
||||||
|
305 = NAND(183, 190)
|
||||||
|
308 = NAND(197, 204)
|
||||||
|
311 = NAND(211, 218)
|
||||||
|
314 = NAND(1, 29)
|
||||||
|
317 = NAND(57, 85)
|
||||||
|
320 = NAND(8, 36)
|
||||||
|
323 = NAND(64, 92)
|
||||||
|
326 = NAND(15, 43)
|
||||||
|
329 = NAND(71, 99)
|
||||||
|
332 = NAND(22, 50)
|
||||||
|
335 = NAND(78, 106)
|
||||||
|
338 = NAND(113, 141)
|
||||||
|
341 = NAND(169, 197)
|
||||||
|
344 = NAND(120, 148)
|
||||||
|
347 = NAND(176, 204)
|
||||||
|
350 = NAND(127, 155)
|
||||||
|
353 = NAND(183, 211)
|
||||||
|
356 = NAND(134, 162)
|
||||||
|
359 = NAND(190, 218)
|
||||||
|
362 = NAND(1, 266)
|
||||||
|
363 = NAND(8, 266)
|
||||||
|
364 = NAND(15, 269)
|
||||||
|
365 = NAND(22, 269)
|
||||||
|
366 = NAND(29, 272)
|
||||||
|
367 = NAND(36, 272)
|
||||||
|
368 = NAND(43, 275)
|
||||||
|
369 = NAND(50, 275)
|
||||||
|
370 = NAND(57, 278)
|
||||||
|
371 = NAND(64, 278)
|
||||||
|
372 = NAND(71, 281)
|
||||||
|
373 = NAND(78, 281)
|
||||||
|
374 = NAND(85, 284)
|
||||||
|
375 = NAND(92, 284)
|
||||||
|
376 = NAND(99, 287)
|
||||||
|
377 = NAND(106, 287)
|
||||||
|
378 = NAND(113, 290)
|
||||||
|
379 = NAND(120, 290)
|
||||||
|
380 = NAND(127, 293)
|
||||||
|
381 = NAND(134, 293)
|
||||||
|
382 = NAND(141, 296)
|
||||||
|
383 = NAND(148, 296)
|
||||||
|
384 = NAND(155, 299)
|
||||||
|
385 = NAND(162, 299)
|
||||||
|
386 = NAND(169, 302)
|
||||||
|
387 = NAND(176, 302)
|
||||||
|
388 = NAND(183, 305)
|
||||||
|
389 = NAND(190, 305)
|
||||||
|
390 = NAND(197, 308)
|
||||||
|
391 = NAND(204, 308)
|
||||||
|
392 = NAND(211, 311)
|
||||||
|
393 = NAND(218, 311)
|
||||||
|
394 = NAND(1, 314)
|
||||||
|
395 = NAND(29, 314)
|
||||||
|
396 = NAND(57, 317)
|
||||||
|
397 = NAND(85, 317)
|
||||||
|
398 = NAND(8, 320)
|
||||||
|
399 = NAND(36, 320)
|
||||||
|
400 = NAND(64, 323)
|
||||||
|
401 = NAND(92, 323)
|
||||||
|
402 = NAND(15, 326)
|
||||||
|
403 = NAND(43, 326)
|
||||||
|
404 = NAND(71, 329)
|
||||||
|
405 = NAND(99, 329)
|
||||||
|
406 = NAND(22, 332)
|
||||||
|
407 = NAND(50, 332)
|
||||||
|
408 = NAND(78, 335)
|
||||||
|
409 = NAND(106, 335)
|
||||||
|
410 = NAND(113, 338)
|
||||||
|
411 = NAND(141, 338)
|
||||||
|
412 = NAND(169, 341)
|
||||||
|
413 = NAND(197, 341)
|
||||||
|
414 = NAND(120, 344)
|
||||||
|
415 = NAND(148, 344)
|
||||||
|
416 = NAND(176, 347)
|
||||||
|
417 = NAND(204, 347)
|
||||||
|
418 = NAND(127, 350)
|
||||||
|
419 = NAND(155, 350)
|
||||||
|
420 = NAND(183, 353)
|
||||||
|
421 = NAND(211, 353)
|
||||||
|
422 = NAND(134, 356)
|
||||||
|
423 = NAND(162, 356)
|
||||||
|
424 = NAND(190, 359)
|
||||||
|
425 = NAND(218, 359)
|
||||||
|
426 = NAND(362, 363)
|
||||||
|
429 = NAND(364, 365)
|
||||||
|
432 = NAND(366, 367)
|
||||||
|
435 = NAND(368, 369)
|
||||||
|
438 = NAND(370, 371)
|
||||||
|
441 = NAND(372, 373)
|
||||||
|
444 = NAND(374, 375)
|
||||||
|
447 = NAND(376, 377)
|
||||||
|
450 = NAND(378, 379)
|
||||||
|
453 = NAND(380, 381)
|
||||||
|
456 = NAND(382, 383)
|
||||||
|
459 = NAND(384, 385)
|
||||||
|
462 = NAND(386, 387)
|
||||||
|
465 = NAND(388, 389)
|
||||||
|
468 = NAND(390, 391)
|
||||||
|
471 = NAND(392, 393)
|
||||||
|
474 = NAND(394, 395)
|
||||||
|
477 = NAND(396, 397)
|
||||||
|
480 = NAND(398, 399)
|
||||||
|
483 = NAND(400, 401)
|
||||||
|
486 = NAND(402, 403)
|
||||||
|
489 = NAND(404, 405)
|
||||||
|
492 = NAND(406, 407)
|
||||||
|
495 = NAND(408, 409)
|
||||||
|
498 = NAND(410, 411)
|
||||||
|
501 = NAND(412, 413)
|
||||||
|
504 = NAND(414, 415)
|
||||||
|
507 = NAND(416, 417)
|
||||||
|
510 = NAND(418, 419)
|
||||||
|
513 = NAND(420, 421)
|
||||||
|
516 = NAND(422, 423)
|
||||||
|
519 = NAND(424, 425)
|
||||||
|
522 = NAND(426, 429)
|
||||||
|
525 = NAND(432, 435)
|
||||||
|
528 = NAND(438, 441)
|
||||||
|
531 = NAND(444, 447)
|
||||||
|
534 = NAND(450, 453)
|
||||||
|
537 = NAND(456, 459)
|
||||||
|
540 = NAND(462, 465)
|
||||||
|
543 = NAND(468, 471)
|
||||||
|
546 = NAND(474, 477)
|
||||||
|
549 = NAND(480, 483)
|
||||||
|
552 = NAND(486, 489)
|
||||||
|
555 = NAND(492, 495)
|
||||||
|
558 = NAND(498, 501)
|
||||||
|
561 = NAND(504, 507)
|
||||||
|
564 = NAND(510, 513)
|
||||||
|
567 = NAND(516, 519)
|
||||||
|
570 = NAND(426, 522)
|
||||||
|
571 = NAND(429, 522)
|
||||||
|
572 = NAND(432, 525)
|
||||||
|
573 = NAND(435, 525)
|
||||||
|
574 = NAND(438, 528)
|
||||||
|
575 = NAND(441, 528)
|
||||||
|
576 = NAND(444, 531)
|
||||||
|
577 = NAND(447, 531)
|
||||||
|
578 = NAND(450, 534)
|
||||||
|
579 = NAND(453, 534)
|
||||||
|
580 = NAND(456, 537)
|
||||||
|
581 = NAND(459, 537)
|
||||||
|
582 = NAND(462, 540)
|
||||||
|
583 = NAND(465, 540)
|
||||||
|
584 = NAND(468, 543)
|
||||||
|
585 = NAND(471, 543)
|
||||||
|
586 = NAND(474, 546)
|
||||||
|
587 = NAND(477, 546)
|
||||||
|
588 = NAND(480, 549)
|
||||||
|
589 = NAND(483, 549)
|
||||||
|
590 = NAND(486, 552)
|
||||||
|
591 = NAND(489, 552)
|
||||||
|
592 = NAND(492, 555)
|
||||||
|
593 = NAND(495, 555)
|
||||||
|
594 = NAND(498, 558)
|
||||||
|
595 = NAND(501, 558)
|
||||||
|
596 = NAND(504, 561)
|
||||||
|
597 = NAND(507, 561)
|
||||||
|
598 = NAND(510, 564)
|
||||||
|
599 = NAND(513, 564)
|
||||||
|
600 = NAND(516, 567)
|
||||||
|
601 = NAND(519, 567)
|
||||||
|
602 = NAND(570, 571)
|
||||||
|
607 = NAND(572, 573)
|
||||||
|
612 = NAND(574, 575)
|
||||||
|
617 = NAND(576, 577)
|
||||||
|
622 = NAND(578, 579)
|
||||||
|
627 = NAND(580, 581)
|
||||||
|
632 = NAND(582, 583)
|
||||||
|
637 = NAND(584, 585)
|
||||||
|
642 = NAND(586, 587)
|
||||||
|
645 = NAND(588, 589)
|
||||||
|
648 = NAND(590, 591)
|
||||||
|
651 = NAND(592, 593)
|
||||||
|
654 = NAND(594, 595)
|
||||||
|
657 = NAND(596, 597)
|
||||||
|
660 = NAND(598, 599)
|
||||||
|
663 = NAND(600, 601)
|
||||||
|
666 = NAND(602, 607)
|
||||||
|
669 = NAND(612, 617)
|
||||||
|
672 = NAND(602, 612)
|
||||||
|
675 = NAND(607, 617)
|
||||||
|
678 = NAND(622, 627)
|
||||||
|
681 = NAND(632, 637)
|
||||||
|
684 = NAND(622, 632)
|
||||||
|
687 = NAND(627, 637)
|
||||||
|
690 = NAND(602, 666)
|
||||||
|
691 = NAND(607, 666)
|
||||||
|
692 = NAND(612, 669)
|
||||||
|
693 = NAND(617, 669)
|
||||||
|
694 = NAND(602, 672)
|
||||||
|
695 = NAND(612, 672)
|
||||||
|
696 = NAND(607, 675)
|
||||||
|
697 = NAND(617, 675)
|
||||||
|
698 = NAND(622, 678)
|
||||||
|
699 = NAND(627, 678)
|
||||||
|
700 = NAND(632, 681)
|
||||||
|
701 = NAND(637, 681)
|
||||||
|
702 = NAND(622, 684)
|
||||||
|
703 = NAND(632, 684)
|
||||||
|
704 = NAND(627, 687)
|
||||||
|
705 = NAND(637, 687)
|
||||||
|
706 = NAND(690, 691)
|
||||||
|
709 = NAND(692, 693)
|
||||||
|
712 = NAND(694, 695)
|
||||||
|
715 = NAND(696, 697)
|
||||||
|
718 = NAND(698, 699)
|
||||||
|
721 = NAND(700, 701)
|
||||||
|
724 = NAND(702, 703)
|
||||||
|
727 = NAND(704, 705)
|
||||||
|
730 = NAND(242, 718)
|
||||||
|
733 = NAND(245, 721)
|
||||||
|
736 = NAND(248, 724)
|
||||||
|
739 = NAND(251, 727)
|
||||||
|
742 = NAND(254, 706)
|
||||||
|
745 = NAND(257, 709)
|
||||||
|
748 = NAND(260, 712)
|
||||||
|
751 = NAND(263, 715)
|
||||||
|
754 = NAND(242, 730)
|
||||||
|
755 = NAND(718, 730)
|
||||||
|
756 = NAND(245, 733)
|
||||||
|
757 = NAND(721, 733)
|
||||||
|
758 = NAND(248, 736)
|
||||||
|
759 = NAND(724, 736)
|
||||||
|
760 = NAND(251, 739)
|
||||||
|
761 = NAND(727, 739)
|
||||||
|
762 = NAND(254, 742)
|
||||||
|
763 = NAND(706, 742)
|
||||||
|
764 = NAND(257, 745)
|
||||||
|
765 = NAND(709, 745)
|
||||||
|
766 = NAND(260, 748)
|
||||||
|
767 = NAND(712, 748)
|
||||||
|
768 = NAND(263, 751)
|
||||||
|
769 = NAND(715, 751)
|
||||||
|
770 = NAND(754, 755)
|
||||||
|
773 = NAND(756, 757)
|
||||||
|
776 = NAND(758, 759)
|
||||||
|
779 = NAND(760, 761)
|
||||||
|
782 = NAND(762, 763)
|
||||||
|
785 = NAND(764, 765)
|
||||||
|
788 = NAND(766, 767)
|
||||||
|
791 = NAND(768, 769)
|
||||||
|
794 = NAND(642, 770)
|
||||||
|
797 = NAND(645, 773)
|
||||||
|
800 = NAND(648, 776)
|
||||||
|
803 = NAND(651, 779)
|
||||||
|
806 = NAND(654, 782)
|
||||||
|
809 = NAND(657, 785)
|
||||||
|
812 = NAND(660, 788)
|
||||||
|
815 = NAND(663, 791)
|
||||||
|
818 = NAND(642, 794)
|
||||||
|
819 = NAND(770, 794)
|
||||||
|
820 = NAND(645, 797)
|
||||||
|
821 = NAND(773, 797)
|
||||||
|
822 = NAND(648, 800)
|
||||||
|
823 = NAND(776, 800)
|
||||||
|
824 = NAND(651, 803)
|
||||||
|
825 = NAND(779, 803)
|
||||||
|
826 = NAND(654, 806)
|
||||||
|
827 = NAND(782, 806)
|
||||||
|
828 = NAND(657, 809)
|
||||||
|
829 = NAND(785, 809)
|
||||||
|
830 = NAND(660, 812)
|
||||||
|
831 = NAND(788, 812)
|
||||||
|
832 = NAND(663, 815)
|
||||||
|
833 = NAND(791, 815)
|
||||||
|
834 = NAND(818, 819)
|
||||||
|
847 = NAND(820, 821)
|
||||||
|
860 = NAND(822, 823)
|
||||||
|
873 = NAND(824, 825)
|
||||||
|
886 = NAND(828, 829)
|
||||||
|
899 = NAND(832, 833)
|
||||||
|
912 = NAND(830, 831)
|
||||||
|
925 = NAND(826, 827)
|
||||||
|
938 = NOT(834)
|
||||||
|
939 = NOT(847)
|
||||||
|
940 = NOT(860)
|
||||||
|
941 = NOT(834)
|
||||||
|
942 = NOT(847)
|
||||||
|
943 = NOT(873)
|
||||||
|
944 = NOT(834)
|
||||||
|
945 = NOT(860)
|
||||||
|
946 = NOT(873)
|
||||||
|
947 = NOT(847)
|
||||||
|
948 = NOT(860)
|
||||||
|
949 = NOT(873)
|
||||||
|
950 = NOT(886)
|
||||||
|
951 = NOT(899)
|
||||||
|
952 = NOT(886)
|
||||||
|
953 = NOT(912)
|
||||||
|
954 = NOT(925)
|
||||||
|
955 = NOT(899)
|
||||||
|
956 = NOT(925)
|
||||||
|
957 = NOT(912)
|
||||||
|
958 = NOT(925)
|
||||||
|
959 = NOT(886)
|
||||||
|
960 = NOT(912)
|
||||||
|
961 = NOT(925)
|
||||||
|
962 = NOT(886)
|
||||||
|
963 = NOT(899)
|
||||||
|
964 = NOT(925)
|
||||||
|
965 = NOT(912)
|
||||||
|
966 = NOT(899)
|
||||||
|
967 = NOT(886)
|
||||||
|
968 = NOT(912)
|
||||||
|
969 = NOT(899)
|
||||||
|
970 = NOT(847)
|
||||||
|
971 = NOT(873)
|
||||||
|
972 = NOT(847)
|
||||||
|
973 = NOT(860)
|
||||||
|
974 = NOT(834)
|
||||||
|
975 = NOT(873)
|
||||||
|
976 = NOT(834)
|
||||||
|
977 = NOT(860)
|
||||||
|
978 = AND(938, 939, 940, 873)
|
||||||
|
979 = AND(941, 942, 860, 943)
|
||||||
|
980 = AND(944, 847, 945, 946)
|
||||||
|
981 = AND(834, 947, 948, 949)
|
||||||
|
982 = AND(958, 959, 960, 899)
|
||||||
|
983 = AND(961, 962, 912, 963)
|
||||||
|
984 = AND(964, 886, 965, 966)
|
||||||
|
985 = AND(925, 967, 968, 969)
|
||||||
|
986 = OR(978, 979, 980, 981)
|
||||||
|
991 = OR(982, 983, 984, 985)
|
||||||
|
996 = AND(925, 950, 912, 951, 986)
|
||||||
|
1001 = AND(925, 952, 953, 899, 986)
|
||||||
|
1006 = AND(954, 886, 912, 955, 986)
|
||||||
|
1011 = AND(956, 886, 957, 899, 986)
|
||||||
|
1016 = AND(834, 970, 860, 971, 991)
|
||||||
|
1021 = AND(834, 972, 973, 873, 991)
|
||||||
|
1026 = AND(974, 847, 860, 975, 991)
|
||||||
|
1031 = AND(976, 847, 977, 873, 991)
|
||||||
|
1036 = AND(834, 996)
|
||||||
|
1039 = AND(847, 996)
|
||||||
|
1042 = AND(860, 996)
|
||||||
|
1045 = AND(873, 996)
|
||||||
|
1048 = AND(834, 1001)
|
||||||
|
1051 = AND(847, 1001)
|
||||||
|
1054 = AND(860, 1001)
|
||||||
|
1057 = AND(873, 1001)
|
||||||
|
1060 = AND(834, 1006)
|
||||||
|
1063 = AND(847, 1006)
|
||||||
|
1066 = AND(860, 1006)
|
||||||
|
1069 = AND(873, 1006)
|
||||||
|
1072 = AND(834, 1011)
|
||||||
|
1075 = AND(847, 1011)
|
||||||
|
1078 = AND(860, 1011)
|
||||||
|
1081 = AND(873, 1011)
|
||||||
|
1084 = AND(925, 1016)
|
||||||
|
1087 = AND(886, 1016)
|
||||||
|
1090 = AND(912, 1016)
|
||||||
|
1093 = AND(899, 1016)
|
||||||
|
1096 = AND(925, 1021)
|
||||||
|
1099 = AND(886, 1021)
|
||||||
|
1102 = AND(912, 1021)
|
||||||
|
1105 = AND(899, 1021)
|
||||||
|
1108 = AND(925, 1026)
|
||||||
|
1111 = AND(886, 1026)
|
||||||
|
1114 = AND(912, 1026)
|
||||||
|
1117 = AND(899, 1026)
|
||||||
|
1120 = AND(925, 1031)
|
||||||
|
1123 = AND(886, 1031)
|
||||||
|
1126 = AND(912, 1031)
|
||||||
|
1129 = AND(899, 1031)
|
||||||
|
1132 = NAND(1, 1036)
|
||||||
|
1135 = NAND(8, 1039)
|
||||||
|
1138 = NAND(15, 1042)
|
||||||
|
1141 = NAND(22, 1045)
|
||||||
|
1144 = NAND(29, 1048)
|
||||||
|
1147 = NAND(36, 1051)
|
||||||
|
1150 = NAND(43, 1054)
|
||||||
|
1153 = NAND(50, 1057)
|
||||||
|
1156 = NAND(57, 1060)
|
||||||
|
1159 = NAND(64, 1063)
|
||||||
|
1162 = NAND(71, 1066)
|
||||||
|
1165 = NAND(78, 1069)
|
||||||
|
1168 = NAND(85, 1072)
|
||||||
|
1171 = NAND(92, 1075)
|
||||||
|
1174 = NAND(99, 1078)
|
||||||
|
1177 = NAND(106, 1081)
|
||||||
|
1180 = NAND(113, 1084)
|
||||||
|
1183 = NAND(120, 1087)
|
||||||
|
1186 = NAND(127, 1090)
|
||||||
|
1189 = NAND(134, 1093)
|
||||||
|
1192 = NAND(141, 1096)
|
||||||
|
1195 = NAND(148, 1099)
|
||||||
|
1198 = NAND(155, 1102)
|
||||||
|
1201 = NAND(162, 1105)
|
||||||
|
1204 = NAND(169, 1108)
|
||||||
|
1207 = NAND(176, 1111)
|
||||||
|
1210 = NAND(183, 1114)
|
||||||
|
1213 = NAND(190, 1117)
|
||||||
|
1216 = NAND(197, 1120)
|
||||||
|
1219 = NAND(204, 1123)
|
||||||
|
1222 = NAND(211, 1126)
|
||||||
|
1225 = NAND(218, 1129)
|
||||||
|
1228 = NAND(1, 1132)
|
||||||
|
1229 = NAND(1036, 1132)
|
||||||
|
1230 = NAND(8, 1135)
|
||||||
|
1231 = NAND(1039, 1135)
|
||||||
|
1232 = NAND(15, 1138)
|
||||||
|
1233 = NAND(1042, 1138)
|
||||||
|
1234 = NAND(22, 1141)
|
||||||
|
1235 = NAND(1045, 1141)
|
||||||
|
1236 = NAND(29, 1144)
|
||||||
|
1237 = NAND(1048, 1144)
|
||||||
|
1238 = NAND(36, 1147)
|
||||||
|
1239 = NAND(1051, 1147)
|
||||||
|
1240 = NAND(43, 1150)
|
||||||
|
1241 = NAND(1054, 1150)
|
||||||
|
1242 = NAND(50, 1153)
|
||||||
|
1243 = NAND(1057, 1153)
|
||||||
|
1244 = NAND(57, 1156)
|
||||||
|
1245 = NAND(1060, 1156)
|
||||||
|
1246 = NAND(64, 1159)
|
||||||
|
1247 = NAND(1063, 1159)
|
||||||
|
1248 = NAND(71, 1162)
|
||||||
|
1249 = NAND(1066, 1162)
|
||||||
|
1250 = NAND(78, 1165)
|
||||||
|
1251 = NAND(1069, 1165)
|
||||||
|
1252 = NAND(85, 1168)
|
||||||
|
1253 = NAND(1072, 1168)
|
||||||
|
1254 = NAND(92, 1171)
|
||||||
|
1255 = NAND(1075, 1171)
|
||||||
|
1256 = NAND(99, 1174)
|
||||||
|
1257 = NAND(1078, 1174)
|
||||||
|
1258 = NAND(106, 1177)
|
||||||
|
1259 = NAND(1081, 1177)
|
||||||
|
1260 = NAND(113, 1180)
|
||||||
|
1261 = NAND(1084, 1180)
|
||||||
|
1262 = NAND(120, 1183)
|
||||||
|
1263 = NAND(1087, 1183)
|
||||||
|
1264 = NAND(127, 1186)
|
||||||
|
1265 = NAND(1090, 1186)
|
||||||
|
1266 = NAND(134, 1189)
|
||||||
|
1267 = NAND(1093, 1189)
|
||||||
|
1268 = NAND(141, 1192)
|
||||||
|
1269 = NAND(1096, 1192)
|
||||||
|
1270 = NAND(148, 1195)
|
||||||
|
1271 = NAND(1099, 1195)
|
||||||
|
1272 = NAND(155, 1198)
|
||||||
|
1273 = NAND(1102, 1198)
|
||||||
|
1274 = NAND(162, 1201)
|
||||||
|
1275 = NAND(1105, 1201)
|
||||||
|
1276 = NAND(169, 1204)
|
||||||
|
1277 = NAND(1108, 1204)
|
||||||
|
1278 = NAND(176, 1207)
|
||||||
|
1279 = NAND(1111, 1207)
|
||||||
|
1280 = NAND(183, 1210)
|
||||||
|
1281 = NAND(1114, 1210)
|
||||||
|
1282 = NAND(190, 1213)
|
||||||
|
1283 = NAND(1117, 1213)
|
||||||
|
1284 = NAND(197, 1216)
|
||||||
|
1285 = NAND(1120, 1216)
|
||||||
|
1286 = NAND(204, 1219)
|
||||||
|
1287 = NAND(1123, 1219)
|
||||||
|
1288 = NAND(211, 1222)
|
||||||
|
1289 = NAND(1126, 1222)
|
||||||
|
1290 = NAND(218, 1225)
|
||||||
|
1291 = NAND(1129, 1225)
|
||||||
|
1292 = NAND(1228, 1229)
|
||||||
|
1293 = NAND(1230, 1231)
|
||||||
|
1294 = NAND(1232, 1233)
|
||||||
|
1295 = NAND(1234, 1235)
|
||||||
|
1296 = NAND(1236, 1237)
|
||||||
|
1297 = NAND(1238, 1239)
|
||||||
|
1298 = NAND(1240, 1241)
|
||||||
|
1299 = NAND(1242, 1243)
|
||||||
|
1300 = NAND(1244, 1245)
|
||||||
|
1301 = NAND(1246, 1247)
|
||||||
|
1302 = NAND(1248, 1249)
|
||||||
|
1303 = NAND(1250, 1251)
|
||||||
|
1304 = NAND(1252, 1253)
|
||||||
|
1305 = NAND(1254, 1255)
|
||||||
|
1306 = NAND(1256, 1257)
|
||||||
|
1307 = NAND(1258, 1259)
|
||||||
|
1308 = NAND(1260, 1261)
|
||||||
|
1309 = NAND(1262, 1263)
|
||||||
|
1310 = NAND(1264, 1265)
|
||||||
|
1311 = NAND(1266, 1267)
|
||||||
|
1312 = NAND(1268, 1269)
|
||||||
|
1313 = NAND(1270, 1271)
|
||||||
|
1314 = NAND(1272, 1273)
|
||||||
|
1315 = NAND(1274, 1275)
|
||||||
|
1316 = NAND(1276, 1277)
|
||||||
|
1317 = NAND(1278, 1279)
|
||||||
|
1318 = NAND(1280, 1281)
|
||||||
|
1319 = NAND(1282, 1283)
|
||||||
|
1320 = NAND(1284, 1285)
|
||||||
|
1321 = NAND(1286, 1287)
|
||||||
|
1322 = NAND(1288, 1289)
|
||||||
|
1323 = NAND(1290, 1291)
|
||||||
|
1324 = BUFF(1292)
|
||||||
|
1325 = BUFF(1293)
|
||||||
|
1326 = BUFF(1294)
|
||||||
|
1327 = BUFF(1295)
|
||||||
|
1328 = BUFF(1296)
|
||||||
|
1329 = BUFF(1297)
|
||||||
|
1330 = BUFF(1298)
|
||||||
|
1331 = BUFF(1299)
|
||||||
|
1332 = BUFF(1300)
|
||||||
|
1333 = BUFF(1301)
|
||||||
|
1334 = BUFF(1302)
|
||||||
|
1335 = BUFF(1303)
|
||||||
|
1336 = BUFF(1304)
|
||||||
|
1337 = BUFF(1305)
|
||||||
|
1338 = BUFF(1306)
|
||||||
|
1339 = BUFF(1307)
|
||||||
|
1340 = BUFF(1308)
|
||||||
|
1341 = BUFF(1309)
|
||||||
|
1342 = BUFF(1310)
|
||||||
|
1343 = BUFF(1311)
|
||||||
|
1344 = BUFF(1312)
|
||||||
|
1345 = BUFF(1313)
|
||||||
|
1346 = BUFF(1314)
|
||||||
|
1347 = BUFF(1315)
|
||||||
|
1348 = BUFF(1316)
|
||||||
|
1349 = BUFF(1317)
|
||||||
|
1350 = BUFF(1318)
|
||||||
|
1351 = BUFF(1319)
|
||||||
|
1352 = BUFF(1320)
|
||||||
|
1353 = BUFF(1321)
|
||||||
|
1354 = BUFF(1322)
|
||||||
|
1355 = BUFF(1323)
|
||||||
|
@ -1,18 +1,17 @@
|
|||||||
# generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
|
# c17
|
||||||
# gates: 11
|
|
||||||
|
|
||||||
INPUT(G1)
|
INPUT(1)
|
||||||
INPUT(G2)
|
INPUT(2)
|
||||||
INPUT(G3)
|
INPUT(3)
|
||||||
INPUT(G4)
|
INPUT(6)
|
||||||
INPUT(G5)
|
INPUT(7)
|
||||||
|
|
||||||
OUTPUT(G10)
|
OUTPUT(22)
|
||||||
OUTPUT(G11)
|
OUTPUT(23)
|
||||||
|
|
||||||
G6 = NAND ( G1, G3 )
|
10 = NAND(1, 3)
|
||||||
G7 = NAND ( G3, G4 )
|
11 = NAND(3, 6)
|
||||||
G8 = NAND ( G2, G7 )
|
16 = NAND(2, 11)
|
||||||
G9 = NAND ( G7, G5 )
|
19 = NAND(11, 7)
|
||||||
G10 = NAND ( G6, G8 )
|
22 = NAND(10, 16)
|
||||||
G11 = NAND ( G8, G9 )
|
23 = NAND(16, 19)
|
||||||
|
@ -1 +1,942 @@
|
|||||||
ERROR: BUFF is not valid gate!
|
# c1908
|
||||||
|
|
||||||
|
INPUT(1)
|
||||||
|
INPUT(4)
|
||||||
|
INPUT(7)
|
||||||
|
INPUT(10)
|
||||||
|
INPUT(13)
|
||||||
|
INPUT(16)
|
||||||
|
INPUT(19)
|
||||||
|
INPUT(22)
|
||||||
|
INPUT(25)
|
||||||
|
INPUT(28)
|
||||||
|
INPUT(31)
|
||||||
|
INPUT(34)
|
||||||
|
INPUT(37)
|
||||||
|
INPUT(40)
|
||||||
|
INPUT(43)
|
||||||
|
INPUT(46)
|
||||||
|
INPUT(49)
|
||||||
|
INPUT(53)
|
||||||
|
INPUT(56)
|
||||||
|
INPUT(60)
|
||||||
|
INPUT(63)
|
||||||
|
INPUT(66)
|
||||||
|
INPUT(69)
|
||||||
|
INPUT(72)
|
||||||
|
INPUT(76)
|
||||||
|
INPUT(79)
|
||||||
|
INPUT(82)
|
||||||
|
INPUT(85)
|
||||||
|
INPUT(88)
|
||||||
|
INPUT(91)
|
||||||
|
INPUT(94)
|
||||||
|
INPUT(99)
|
||||||
|
INPUT(104)
|
||||||
|
|
||||||
|
OUTPUT(2753)
|
||||||
|
OUTPUT(2754)
|
||||||
|
OUTPUT(2755)
|
||||||
|
OUTPUT(2756)
|
||||||
|
OUTPUT(2762)
|
||||||
|
OUTPUT(2767)
|
||||||
|
OUTPUT(2768)
|
||||||
|
OUTPUT(2779)
|
||||||
|
OUTPUT(2780)
|
||||||
|
OUTPUT(2781)
|
||||||
|
OUTPUT(2782)
|
||||||
|
OUTPUT(2783)
|
||||||
|
OUTPUT(2784)
|
||||||
|
OUTPUT(2785)
|
||||||
|
OUTPUT(2786)
|
||||||
|
OUTPUT(2787)
|
||||||
|
OUTPUT(2811)
|
||||||
|
OUTPUT(2886)
|
||||||
|
OUTPUT(2887)
|
||||||
|
OUTPUT(2888)
|
||||||
|
OUTPUT(2889)
|
||||||
|
OUTPUT(2890)
|
||||||
|
OUTPUT(2891)
|
||||||
|
OUTPUT(2892)
|
||||||
|
OUTPUT(2899)
|
||||||
|
|
||||||
|
190 = NOT(1)
|
||||||
|
194 = NOT(4)
|
||||||
|
197 = NOT(7)
|
||||||
|
201 = NOT(10)
|
||||||
|
206 = NOT(13)
|
||||||
|
209 = NOT(16)
|
||||||
|
212 = NOT(19)
|
||||||
|
216 = NOT(22)
|
||||||
|
220 = NOT(25)
|
||||||
|
225 = NOT(28)
|
||||||
|
229 = NOT(31)
|
||||||
|
232 = NOT(34)
|
||||||
|
235 = NOT(37)
|
||||||
|
239 = NOT(40)
|
||||||
|
243 = NOT(43)
|
||||||
|
247 = NOT(46)
|
||||||
|
251 = NAND(63, 88)
|
||||||
|
252 = NAND(66, 91)
|
||||||
|
253 = NOT(72)
|
||||||
|
256 = NOT(72)
|
||||||
|
257 = BUFF(69)
|
||||||
|
260 = BUFF(69)
|
||||||
|
263 = NOT(76)
|
||||||
|
266 = NOT(79)
|
||||||
|
269 = NOT(82)
|
||||||
|
272 = NOT(85)
|
||||||
|
275 = NOT(104)
|
||||||
|
276 = NOT(104)
|
||||||
|
277 = NOT(88)
|
||||||
|
280 = NOT(91)
|
||||||
|
283 = BUFF(94)
|
||||||
|
290 = NOT(94)
|
||||||
|
297 = BUFF(94)
|
||||||
|
300 = NOT(94)
|
||||||
|
303 = BUFF(99)
|
||||||
|
306 = NOT(99)
|
||||||
|
313 = NOT(99)
|
||||||
|
316 = BUFF(104)
|
||||||
|
319 = NOT(104)
|
||||||
|
326 = BUFF(104)
|
||||||
|
331 = BUFF(104)
|
||||||
|
338 = NOT(104)
|
||||||
|
343 = BUFF(1)
|
||||||
|
346 = BUFF(4)
|
||||||
|
349 = BUFF(7)
|
||||||
|
352 = BUFF(10)
|
||||||
|
355 = BUFF(13)
|
||||||
|
358 = BUFF(16)
|
||||||
|
361 = BUFF(19)
|
||||||
|
364 = BUFF(22)
|
||||||
|
367 = BUFF(25)
|
||||||
|
370 = BUFF(28)
|
||||||
|
373 = BUFF(31)
|
||||||
|
376 = BUFF(34)
|
||||||
|
379 = BUFF(37)
|
||||||
|
382 = BUFF(40)
|
||||||
|
385 = BUFF(43)
|
||||||
|
388 = BUFF(46)
|
||||||
|
534 = NOT(343)
|
||||||
|
535 = NOT(346)
|
||||||
|
536 = NOT(349)
|
||||||
|
537 = NOT(352)
|
||||||
|
538 = NOT(355)
|
||||||
|
539 = NOT(358)
|
||||||
|
540 = NOT(361)
|
||||||
|
541 = NOT(364)
|
||||||
|
542 = NOT(367)
|
||||||
|
543 = NOT(370)
|
||||||
|
544 = NOT(373)
|
||||||
|
545 = NOT(376)
|
||||||
|
546 = NOT(379)
|
||||||
|
547 = NOT(382)
|
||||||
|
548 = NOT(385)
|
||||||
|
549 = NOT(388)
|
||||||
|
550 = NAND(306, 331)
|
||||||
|
551 = NAND(306, 331)
|
||||||
|
552 = NAND(306, 331)
|
||||||
|
553 = NAND(306, 331)
|
||||||
|
554 = NAND(306, 331)
|
||||||
|
555 = NAND(306, 331)
|
||||||
|
556 = BUFF(190)
|
||||||
|
559 = BUFF(194)
|
||||||
|
562 = BUFF(206)
|
||||||
|
565 = BUFF(209)
|
||||||
|
568 = BUFF(225)
|
||||||
|
571 = BUFF(243)
|
||||||
|
574 = AND(63, 319)
|
||||||
|
577 = BUFF(220)
|
||||||
|
580 = BUFF(229)
|
||||||
|
583 = BUFF(232)
|
||||||
|
586 = AND(66, 319)
|
||||||
|
589 = BUFF(239)
|
||||||
|
592 = AND(49, 253, 319)
|
||||||
|
595 = BUFF(247)
|
||||||
|
598 = BUFF(239)
|
||||||
|
601 = NAND(326, 277)
|
||||||
|
602 = NAND(326, 280)
|
||||||
|
603 = NAND(260, 72)
|
||||||
|
608 = NAND(260, 300)
|
||||||
|
612 = NAND(256, 300)
|
||||||
|
616 = BUFF(201)
|
||||||
|
619 = BUFF(216)
|
||||||
|
622 = BUFF(220)
|
||||||
|
625 = BUFF(239)
|
||||||
|
628 = BUFF(190)
|
||||||
|
631 = BUFF(190)
|
||||||
|
634 = BUFF(194)
|
||||||
|
637 = BUFF(229)
|
||||||
|
640 = BUFF(197)
|
||||||
|
643 = AND(56, 257, 319)
|
||||||
|
646 = BUFF(232)
|
||||||
|
649 = BUFF(201)
|
||||||
|
652 = BUFF(235)
|
||||||
|
655 = AND(60, 257, 319)
|
||||||
|
658 = BUFF(263)
|
||||||
|
661 = BUFF(263)
|
||||||
|
664 = BUFF(266)
|
||||||
|
667 = BUFF(266)
|
||||||
|
670 = BUFF(269)
|
||||||
|
673 = BUFF(269)
|
||||||
|
676 = BUFF(272)
|
||||||
|
679 = BUFF(272)
|
||||||
|
682 = AND(251, 316)
|
||||||
|
685 = AND(252, 316)
|
||||||
|
688 = BUFF(197)
|
||||||
|
691 = BUFF(197)
|
||||||
|
694 = BUFF(212)
|
||||||
|
697 = BUFF(212)
|
||||||
|
700 = BUFF(247)
|
||||||
|
703 = BUFF(247)
|
||||||
|
706 = BUFF(235)
|
||||||
|
709 = BUFF(235)
|
||||||
|
712 = BUFF(201)
|
||||||
|
715 = BUFF(201)
|
||||||
|
718 = BUFF(206)
|
||||||
|
721 = BUFF(216)
|
||||||
|
724 = AND(53, 253, 319)
|
||||||
|
727 = BUFF(243)
|
||||||
|
730 = BUFF(220)
|
||||||
|
733 = BUFF(220)
|
||||||
|
736 = BUFF(209)
|
||||||
|
739 = BUFF(216)
|
||||||
|
742 = BUFF(225)
|
||||||
|
745 = BUFF(243)
|
||||||
|
748 = BUFF(212)
|
||||||
|
751 = BUFF(225)
|
||||||
|
886 = NOT(682)
|
||||||
|
887 = NOT(685)
|
||||||
|
888 = NOT(616)
|
||||||
|
889 = NOT(619)
|
||||||
|
890 = NOT(622)
|
||||||
|
891 = NOT(625)
|
||||||
|
892 = NOT(631)
|
||||||
|
893 = NOT(643)
|
||||||
|
894 = NOT(649)
|
||||||
|
895 = NOT(652)
|
||||||
|
896 = NOT(655)
|
||||||
|
897 = AND(49, 612)
|
||||||
|
898 = AND(56, 608)
|
||||||
|
899 = NAND(53, 612)
|
||||||
|
903 = NAND(60, 608)
|
||||||
|
907 = NAND(49, 612)
|
||||||
|
910 = NAND(56, 608)
|
||||||
|
913 = NOT(661)
|
||||||
|
914 = NOT(658)
|
||||||
|
915 = NOT(667)
|
||||||
|
916 = NOT(664)
|
||||||
|
917 = NOT(673)
|
||||||
|
918 = NOT(670)
|
||||||
|
919 = NOT(679)
|
||||||
|
920 = NOT(676)
|
||||||
|
921 = NAND(277, 297, 326, 603)
|
||||||
|
922 = NAND(280, 297, 326, 603)
|
||||||
|
923 = NAND(303, 338, 603)
|
||||||
|
926 = AND(303, 338, 603)
|
||||||
|
935 = BUFF(556)
|
||||||
|
938 = NOT(688)
|
||||||
|
939 = BUFF(556)
|
||||||
|
942 = NOT(691)
|
||||||
|
943 = BUFF(562)
|
||||||
|
946 = NOT(694)
|
||||||
|
947 = BUFF(562)
|
||||||
|
950 = NOT(697)
|
||||||
|
951 = BUFF(568)
|
||||||
|
954 = NOT(700)
|
||||||
|
955 = BUFF(568)
|
||||||
|
958 = NOT(703)
|
||||||
|
959 = BUFF(574)
|
||||||
|
962 = BUFF(574)
|
||||||
|
965 = BUFF(580)
|
||||||
|
968 = NOT(706)
|
||||||
|
969 = BUFF(580)
|
||||||
|
972 = NOT(709)
|
||||||
|
973 = BUFF(586)
|
||||||
|
976 = NOT(712)
|
||||||
|
977 = BUFF(586)
|
||||||
|
980 = NOT(715)
|
||||||
|
981 = BUFF(592)
|
||||||
|
984 = NOT(628)
|
||||||
|
985 = BUFF(592)
|
||||||
|
988 = NOT(718)
|
||||||
|
989 = NOT(721)
|
||||||
|
990 = NOT(634)
|
||||||
|
991 = NOT(724)
|
||||||
|
992 = NOT(727)
|
||||||
|
993 = NOT(637)
|
||||||
|
994 = BUFF(595)
|
||||||
|
997 = NOT(730)
|
||||||
|
998 = BUFF(595)
|
||||||
|
1001 = NOT(733)
|
||||||
|
1002 = NOT(736)
|
||||||
|
1003 = NOT(739)
|
||||||
|
1004 = NOT(640)
|
||||||
|
1005 = NOT(742)
|
||||||
|
1006 = NOT(745)
|
||||||
|
1007 = NOT(646)
|
||||||
|
1008 = NOT(748)
|
||||||
|
1009 = NOT(751)
|
||||||
|
1010 = BUFF(559)
|
||||||
|
1013 = BUFF(559)
|
||||||
|
1016 = BUFF(565)
|
||||||
|
1019 = BUFF(565)
|
||||||
|
1022 = BUFF(571)
|
||||||
|
1025 = BUFF(571)
|
||||||
|
1028 = BUFF(577)
|
||||||
|
1031 = BUFF(577)
|
||||||
|
1034 = BUFF(583)
|
||||||
|
1037 = BUFF(583)
|
||||||
|
1040 = BUFF(589)
|
||||||
|
1043 = BUFF(589)
|
||||||
|
1046 = BUFF(598)
|
||||||
|
1049 = BUFF(598)
|
||||||
|
1054 = NAND(619, 888)
|
||||||
|
1055 = NAND(616, 889)
|
||||||
|
1063 = NAND(625, 890)
|
||||||
|
1064 = NAND(622, 891)
|
||||||
|
1067 = NAND(655, 895)
|
||||||
|
1068 = NAND(652, 896)
|
||||||
|
1119 = NAND(721, 988)
|
||||||
|
1120 = NAND(718, 989)
|
||||||
|
1121 = NAND(727, 991)
|
||||||
|
1122 = NAND(724, 992)
|
||||||
|
1128 = NAND(739, 1002)
|
||||||
|
1129 = NAND(736, 1003)
|
||||||
|
1130 = NAND(745, 1005)
|
||||||
|
1131 = NAND(742, 1006)
|
||||||
|
1132 = NAND(751, 1008)
|
||||||
|
1133 = NAND(748, 1009)
|
||||||
|
1148 = NOT(939)
|
||||||
|
1149 = NOT(935)
|
||||||
|
1150 = NAND(1054, 1055)
|
||||||
|
1151 = NOT(943)
|
||||||
|
1152 = NOT(947)
|
||||||
|
1153 = NOT(955)
|
||||||
|
1154 = NOT(951)
|
||||||
|
1155 = NOT(962)
|
||||||
|
1156 = NOT(969)
|
||||||
|
1157 = NOT(977)
|
||||||
|
1158 = NAND(1063, 1064)
|
||||||
|
1159 = NOT(985)
|
||||||
|
1160 = NAND(985, 892)
|
||||||
|
1161 = NOT(998)
|
||||||
|
1162 = NAND(1067, 1068)
|
||||||
|
1163 = NOT(899)
|
||||||
|
1164 = BUFF(899)
|
||||||
|
1167 = NOT(903)
|
||||||
|
1168 = BUFF(903)
|
||||||
|
1171 = NAND(921, 923)
|
||||||
|
1188 = NAND(922, 923)
|
||||||
|
1205 = NOT(1010)
|
||||||
|
1206 = NAND(1010, 938)
|
||||||
|
1207 = NOT(1013)
|
||||||
|
1208 = NAND(1013, 942)
|
||||||
|
1209 = NOT(1016)
|
||||||
|
1210 = NAND(1016, 946)
|
||||||
|
1211 = NOT(1019)
|
||||||
|
1212 = NAND(1019, 950)
|
||||||
|
1213 = NOT(1022)
|
||||||
|
1214 = NAND(1022, 954)
|
||||||
|
1215 = NOT(1025)
|
||||||
|
1216 = NAND(1025, 958)
|
||||||
|
1217 = NOT(1028)
|
||||||
|
1218 = NOT(959)
|
||||||
|
1219 = NOT(1031)
|
||||||
|
1220 = NOT(1034)
|
||||||
|
1221 = NAND(1034, 968)
|
||||||
|
1222 = NOT(965)
|
||||||
|
1223 = NOT(1037)
|
||||||
|
1224 = NAND(1037, 972)
|
||||||
|
1225 = NOT(1040)
|
||||||
|
1226 = NAND(1040, 976)
|
||||||
|
1227 = NOT(973)
|
||||||
|
1228 = NOT(1043)
|
||||||
|
1229 = NAND(1043, 980)
|
||||||
|
1230 = NOT(981)
|
||||||
|
1231 = NAND(981, 984)
|
||||||
|
1232 = NAND(1119, 1120)
|
||||||
|
1235 = NAND(1121, 1122)
|
||||||
|
1238 = NOT(1046)
|
||||||
|
1239 = NAND(1046, 997)
|
||||||
|
1240 = NOT(994)
|
||||||
|
1241 = NOT(1049)
|
||||||
|
1242 = NAND(1049, 1001)
|
||||||
|
1243 = NAND(1128, 1129)
|
||||||
|
1246 = NAND(1130, 1131)
|
||||||
|
1249 = NAND(1132, 1133)
|
||||||
|
1252 = BUFF(907)
|
||||||
|
1255 = BUFF(907)
|
||||||
|
1258 = BUFF(910)
|
||||||
|
1261 = BUFF(910)
|
||||||
|
1264 = NOT(1150)
|
||||||
|
1267 = NAND(631, 1159)
|
||||||
|
1309 = NAND(688, 1205)
|
||||||
|
1310 = NAND(691, 1207)
|
||||||
|
1311 = NAND(694, 1209)
|
||||||
|
1312 = NAND(697, 1211)
|
||||||
|
1313 = NAND(700, 1213)
|
||||||
|
1314 = NAND(703, 1215)
|
||||||
|
1315 = NAND(706, 1220)
|
||||||
|
1316 = NAND(709, 1223)
|
||||||
|
1317 = NAND(712, 1225)
|
||||||
|
1318 = NAND(715, 1228)
|
||||||
|
1319 = NOT(1158)
|
||||||
|
1322 = NAND(628, 1230)
|
||||||
|
1327 = NAND(730, 1238)
|
||||||
|
1328 = NAND(733, 1241)
|
||||||
|
1334 = NOT(1162)
|
||||||
|
1344 = NAND(1267, 1160)
|
||||||
|
1345 = NAND(1249, 894)
|
||||||
|
1346 = NOT(1249)
|
||||||
|
1348 = NOT(1255)
|
||||||
|
1349 = NOT(1252)
|
||||||
|
1350 = NOT(1261)
|
||||||
|
1351 = NOT(1258)
|
||||||
|
1352 = NAND(1309, 1206)
|
||||||
|
1355 = NAND(1310, 1208)
|
||||||
|
1358 = NAND(1311, 1210)
|
||||||
|
1361 = NAND(1312, 1212)
|
||||||
|
1364 = NAND(1313, 1214)
|
||||||
|
1367 = NAND(1314, 1216)
|
||||||
|
1370 = NAND(1315, 1221)
|
||||||
|
1373 = NAND(1316, 1224)
|
||||||
|
1376 = NAND(1317, 1226)
|
||||||
|
1379 = NAND(1318, 1229)
|
||||||
|
1383 = NAND(1322, 1231)
|
||||||
|
1386 = NOT(1232)
|
||||||
|
1387 = NAND(1232, 990)
|
||||||
|
1388 = NOT(1235)
|
||||||
|
1389 = NAND(1235, 993)
|
||||||
|
1390 = NAND(1327, 1239)
|
||||||
|
1393 = NAND(1328, 1242)
|
||||||
|
1396 = NOT(1243)
|
||||||
|
1397 = NAND(1243, 1004)
|
||||||
|
1398 = NOT(1246)
|
||||||
|
1399 = NAND(1246, 1007)
|
||||||
|
1409 = NOT(1319)
|
||||||
|
1412 = NAND(649, 1346)
|
||||||
|
1413 = NOT(1334)
|
||||||
|
1416 = BUFF(1264)
|
||||||
|
1419 = BUFF(1264)
|
||||||
|
1433 = NAND(634, 1386)
|
||||||
|
1434 = NAND(637, 1388)
|
||||||
|
1438 = NAND(640, 1396)
|
||||||
|
1439 = NAND(646, 1398)
|
||||||
|
1440 = NOT(1344)
|
||||||
|
1443 = NAND(1355, 1148)
|
||||||
|
1444 = NOT(1355)
|
||||||
|
1445 = NAND(1352, 1149)
|
||||||
|
1446 = NOT(1352)
|
||||||
|
1447 = NAND(1358, 1151)
|
||||||
|
1448 = NOT(1358)
|
||||||
|
1451 = NAND(1361, 1152)
|
||||||
|
1452 = NOT(1361)
|
||||||
|
1453 = NAND(1367, 1153)
|
||||||
|
1454 = NOT(1367)
|
||||||
|
1455 = NAND(1364, 1154)
|
||||||
|
1456 = NOT(1364)
|
||||||
|
1457 = NAND(1373, 1156)
|
||||||
|
1458 = NOT(1373)
|
||||||
|
1459 = NAND(1379, 1157)
|
||||||
|
1460 = NOT(1379)
|
||||||
|
1461 = NOT(1383)
|
||||||
|
1462 = NAND(1393, 1161)
|
||||||
|
1463 = NOT(1393)
|
||||||
|
1464 = NAND(1345, 1412)
|
||||||
|
1468 = NOT(1370)
|
||||||
|
1469 = NAND(1370, 1222)
|
||||||
|
1470 = NOT(1376)
|
||||||
|
1471 = NAND(1376, 1227)
|
||||||
|
1472 = NAND(1387, 1433)
|
||||||
|
1475 = NOT(1390)
|
||||||
|
1476 = NAND(1390, 1240)
|
||||||
|
1478 = NAND(1389, 1434)
|
||||||
|
1481 = NAND(1399, 1439)
|
||||||
|
1484 = NAND(1397, 1438)
|
||||||
|
1487 = NAND(939, 1444)
|
||||||
|
1488 = NAND(935, 1446)
|
||||||
|
1489 = NAND(943, 1448)
|
||||||
|
1490 = NOT(1419)
|
||||||
|
1491 = NOT(1416)
|
||||||
|
1492 = NAND(947, 1452)
|
||||||
|
1493 = NAND(955, 1454)
|
||||||
|
1494 = NAND(951, 1456)
|
||||||
|
1495 = NAND(969, 1458)
|
||||||
|
1496 = NAND(977, 1460)
|
||||||
|
1498 = NAND(998, 1463)
|
||||||
|
1499 = NOT(1440)
|
||||||
|
1500 = NAND(965, 1468)
|
||||||
|
1501 = NAND(973, 1470)
|
||||||
|
1504 = NAND(994, 1475)
|
||||||
|
1510 = NOT(1464)
|
||||||
|
1513 = NAND(1443, 1487)
|
||||||
|
1514 = NAND(1445, 1488)
|
||||||
|
1517 = NAND(1447, 1489)
|
||||||
|
1520 = NAND(1451, 1492)
|
||||||
|
1521 = NAND(1453, 1493)
|
||||||
|
1522 = NAND(1455, 1494)
|
||||||
|
1526 = NAND(1457, 1495)
|
||||||
|
1527 = NAND(1459, 1496)
|
||||||
|
1528 = NOT(1472)
|
||||||
|
1529 = NAND(1462, 1498)
|
||||||
|
1530 = NOT(1478)
|
||||||
|
1531 = NOT(1481)
|
||||||
|
1532 = NOT(1484)
|
||||||
|
1534 = NAND(1471, 1501)
|
||||||
|
1537 = NAND(1469, 1500)
|
||||||
|
1540 = NAND(1476, 1504)
|
||||||
|
1546 = NOT(1513)
|
||||||
|
1554 = NOT(1521)
|
||||||
|
1557 = NOT(1526)
|
||||||
|
1561 = NOT(1520)
|
||||||
|
1567 = NAND(1484, 1531)
|
||||||
|
1568 = NAND(1481, 1532)
|
||||||
|
1569 = NOT(1510)
|
||||||
|
1571 = NOT(1527)
|
||||||
|
1576 = NOT(1529)
|
||||||
|
1588 = BUFF(1522)
|
||||||
|
1591 = NOT(1534)
|
||||||
|
1593 = NOT(1537)
|
||||||
|
1594 = NAND(1540, 1530)
|
||||||
|
1595 = NOT(1540)
|
||||||
|
1596 = NAND(1567, 1568)
|
||||||
|
1600 = BUFF(1517)
|
||||||
|
1603 = BUFF(1517)
|
||||||
|
1606 = BUFF(1522)
|
||||||
|
1609 = BUFF(1522)
|
||||||
|
1612 = BUFF(1514)
|
||||||
|
1615 = BUFF(1514)
|
||||||
|
1620 = BUFF(1557)
|
||||||
|
1623 = BUFF(1554)
|
||||||
|
1635 = NOT(1571)
|
||||||
|
1636 = NAND(1478, 1595)
|
||||||
|
1638 = NAND(1576, 1569)
|
||||||
|
1639 = NOT(1576)
|
||||||
|
1640 = BUFF(1561)
|
||||||
|
1643 = BUFF(1561)
|
||||||
|
1647 = BUFF(1546)
|
||||||
|
1651 = BUFF(1546)
|
||||||
|
1658 = BUFF(1554)
|
||||||
|
1661 = BUFF(1557)
|
||||||
|
1664 = BUFF(1557)
|
||||||
|
1671 = NAND(1596, 893)
|
||||||
|
1672 = NOT(1596)
|
||||||
|
1675 = NOT(1600)
|
||||||
|
1677 = NOT(1603)
|
||||||
|
1678 = NAND(1606, 1217)
|
||||||
|
1679 = NOT(1606)
|
||||||
|
1680 = NAND(1609, 1219)
|
||||||
|
1681 = NOT(1609)
|
||||||
|
1682 = NOT(1612)
|
||||||
|
1683 = NOT(1615)
|
||||||
|
1685 = NAND(1594, 1636)
|
||||||
|
1688 = NAND(1510, 1639)
|
||||||
|
1697 = BUFF(1588)
|
||||||
|
1701 = BUFF(1588)
|
||||||
|
1706 = NAND(643, 1672)
|
||||||
|
1707 = NOT(1643)
|
||||||
|
1708 = NAND(1647, 1675)
|
||||||
|
1709 = NOT(1647)
|
||||||
|
1710 = NAND(1651, 1677)
|
||||||
|
1711 = NOT(1651)
|
||||||
|
1712 = NAND(1028, 1679)
|
||||||
|
1713 = NAND(1031, 1681)
|
||||||
|
1714 = BUFF(1620)
|
||||||
|
1717 = BUFF(1620)
|
||||||
|
1720 = NAND(1658, 1593)
|
||||||
|
1721 = NOT(1658)
|
||||||
|
1723 = NAND(1638, 1688)
|
||||||
|
1727 = NOT(1661)
|
||||||
|
1728 = NOT(1640)
|
||||||
|
1730 = NOT(1664)
|
||||||
|
1731 = BUFF(1623)
|
||||||
|
1734 = BUFF(1623)
|
||||||
|
1740 = NAND(1685, 1528)
|
||||||
|
1741 = NOT(1685)
|
||||||
|
1742 = NAND(1671, 1706)
|
||||||
|
1746 = NAND(1600, 1709)
|
||||||
|
1747 = NAND(1603, 1711)
|
||||||
|
1748 = NAND(1678, 1712)
|
||||||
|
1751 = NAND(1680, 1713)
|
||||||
|
1759 = NAND(1537, 1721)
|
||||||
|
1761 = NOT(1697)
|
||||||
|
1762 = NAND(1697, 1727)
|
||||||
|
1763 = NOT(1701)
|
||||||
|
1764 = NAND(1701, 1730)
|
||||||
|
1768 = NOT(1717)
|
||||||
|
1769 = NAND(1472, 1741)
|
||||||
|
1772 = NAND(1723, 1413)
|
||||||
|
1773 = NOT(1723)
|
||||||
|
1774 = NAND(1708, 1746)
|
||||||
|
1777 = NAND(1710, 1747)
|
||||||
|
1783 = NOT(1731)
|
||||||
|
1784 = NAND(1731, 1682)
|
||||||
|
1785 = NOT(1714)
|
||||||
|
1786 = NOT(1734)
|
||||||
|
1787 = NAND(1734, 1683)
|
||||||
|
1788 = NAND(1720, 1759)
|
||||||
|
1791 = NAND(1661, 1761)
|
||||||
|
1792 = NAND(1664, 1763)
|
||||||
|
1795 = NAND(1751, 1155)
|
||||||
|
1796 = NOT(1751)
|
||||||
|
1798 = NAND(1740, 1769)
|
||||||
|
1801 = NAND(1334, 1773)
|
||||||
|
1802 = NAND(1742, 290)
|
||||||
|
1807 = NOT(1748)
|
||||||
|
1808 = NAND(1748, 1218)
|
||||||
|
1809 = NAND(1612, 1783)
|
||||||
|
1810 = NAND(1615, 1786)
|
||||||
|
1812 = NAND(1791, 1762)
|
||||||
|
1815 = NAND(1792, 1764)
|
||||||
|
1818 = BUFF(1742)
|
||||||
|
1821 = NAND(1777, 1490)
|
||||||
|
1822 = NOT(1777)
|
||||||
|
1823 = NAND(1774, 1491)
|
||||||
|
1824 = NOT(1774)
|
||||||
|
1825 = NAND(962, 1796)
|
||||||
|
1826 = NAND(1788, 1409)
|
||||||
|
1827 = NOT(1788)
|
||||||
|
1830 = NAND(1772, 1801)
|
||||||
|
1837 = NAND(959, 1807)
|
||||||
|
1838 = NAND(1809, 1784)
|
||||||
|
1841 = NAND(1810, 1787)
|
||||||
|
1848 = NAND(1419, 1822)
|
||||||
|
1849 = NAND(1416, 1824)
|
||||||
|
1850 = NAND(1795, 1825)
|
||||||
|
1852 = NAND(1319, 1827)
|
||||||
|
1855 = NAND(1815, 1707)
|
||||||
|
1856 = NOT(1815)
|
||||||
|
1857 = NOT(1818)
|
||||||
|
1858 = NAND(1798, 290)
|
||||||
|
1864 = NOT(1812)
|
||||||
|
1865 = NAND(1812, 1728)
|
||||||
|
1866 = BUFF(1798)
|
||||||
|
1869 = BUFF(1802)
|
||||||
|
1872 = BUFF(1802)
|
||||||
|
1875 = NAND(1808, 1837)
|
||||||
|
1878 = NAND(1821, 1848)
|
||||||
|
1879 = NAND(1823, 1849)
|
||||||
|
1882 = NAND(1841, 1768)
|
||||||
|
1883 = NOT(1841)
|
||||||
|
1884 = NAND(1826, 1852)
|
||||||
|
1885 = NAND(1643, 1856)
|
||||||
|
1889 = NAND(1830, 290)
|
||||||
|
1895 = NOT(1838)
|
||||||
|
1896 = NAND(1838, 1785)
|
||||||
|
1897 = NAND(1640, 1864)
|
||||||
|
1898 = NOT(1850)
|
||||||
|
1902 = BUFF(1830)
|
||||||
|
1910 = NOT(1878)
|
||||||
|
1911 = NAND(1717, 1883)
|
||||||
|
1912 = NOT(1884)
|
||||||
|
1913 = NAND(1855, 1885)
|
||||||
|
1915 = NOT(1866)
|
||||||
|
1919 = NAND(1872, 919)
|
||||||
|
1920 = NOT(1872)
|
||||||
|
1921 = NAND(1869, 920)
|
||||||
|
1922 = NOT(1869)
|
||||||
|
1923 = NOT(1875)
|
||||||
|
1924 = NAND(1714, 1895)
|
||||||
|
1927 = BUFF(1858)
|
||||||
|
1930 = BUFF(1858)
|
||||||
|
1933 = NAND(1865, 1897)
|
||||||
|
1936 = NAND(1882, 1911)
|
||||||
|
1937 = NOT(1898)
|
||||||
|
1938 = NOT(1902)
|
||||||
|
1941 = NAND(679, 1920)
|
||||||
|
1942 = NAND(676, 1922)
|
||||||
|
1944 = BUFF(1879)
|
||||||
|
1947 = NOT(1913)
|
||||||
|
1950 = BUFF(1889)
|
||||||
|
1953 = BUFF(1889)
|
||||||
|
1958 = BUFF(1879)
|
||||||
|
1961 = NAND(1896, 1924)
|
||||||
|
1965 = AND(1910, 601)
|
||||||
|
1968 = AND(602, 1912)
|
||||||
|
1975 = NAND(1930, 917)
|
||||||
|
1976 = NOT(1930)
|
||||||
|
1977 = NAND(1927, 918)
|
||||||
|
1978 = NOT(1927)
|
||||||
|
1979 = NAND(1919, 1941)
|
||||||
|
1980 = NAND(1921, 1942)
|
||||||
|
1985 = NOT(1933)
|
||||||
|
1987 = NOT(1936)
|
||||||
|
1999 = NOT(1944)
|
||||||
|
2000 = NAND(1944, 1937)
|
||||||
|
2002 = NOT(1947)
|
||||||
|
2003 = NAND(1947, 1499)
|
||||||
|
2004 = NAND(1953, 1350)
|
||||||
|
2005 = NOT(1953)
|
||||||
|
2006 = NAND(1950, 1351)
|
||||||
|
2007 = NOT(1950)
|
||||||
|
2008 = NAND(673, 1976)
|
||||||
|
2009 = NAND(670, 1978)
|
||||||
|
2012 = NOT(1979)
|
||||||
|
2013 = NOT(1958)
|
||||||
|
2014 = NAND(1958, 1923)
|
||||||
|
2015 = NOT(1961)
|
||||||
|
2016 = NAND(1961, 1635)
|
||||||
|
2018 = NOT(1965)
|
||||||
|
2019 = NOT(1968)
|
||||||
|
2020 = NAND(1898, 1999)
|
||||||
|
2021 = NOT(1987)
|
||||||
|
2022 = NAND(1987, 1591)
|
||||||
|
2023 = NAND(1440, 2002)
|
||||||
|
2024 = NAND(1261, 2005)
|
||||||
|
2025 = NAND(1258, 2007)
|
||||||
|
2026 = NAND(1975, 2008)
|
||||||
|
2027 = NAND(1977, 2009)
|
||||||
|
2030 = NOT(1980)
|
||||||
|
2033 = BUFF(1980)
|
||||||
|
2036 = NAND(1875, 2013)
|
||||||
|
2037 = NAND(1571, 2015)
|
||||||
|
2038 = NAND(2020, 2000)
|
||||||
|
2039 = NAND(1534, 2021)
|
||||||
|
2040 = NAND(2023, 2003)
|
||||||
|
2041 = NAND(2004, 2024)
|
||||||
|
2042 = NAND(2006, 2025)
|
||||||
|
2047 = NOT(2026)
|
||||||
|
2052 = NAND(2036, 2014)
|
||||||
|
2055 = NAND(2037, 2016)
|
||||||
|
2060 = NOT(2038)
|
||||||
|
2061 = NAND(2039, 2022)
|
||||||
|
2062 = NAND(2040, 290)
|
||||||
|
2067 = NOT(2041)
|
||||||
|
2068 = NOT(2027)
|
||||||
|
2071 = BUFF(2027)
|
||||||
|
2076 = NOT(2052)
|
||||||
|
2077 = NOT(2055)
|
||||||
|
2078 = NAND(2060, 290)
|
||||||
|
2081 = NAND(2061, 290)
|
||||||
|
2086 = NOT(2042)
|
||||||
|
2089 = BUFF(2042)
|
||||||
|
2104 = AND(2030, 2068)
|
||||||
|
2119 = AND(2033, 2068)
|
||||||
|
2129 = AND(2030, 2071)
|
||||||
|
2143 = AND(2033, 2071)
|
||||||
|
2148 = BUFF(2062)
|
||||||
|
2151 = BUFF(2062)
|
||||||
|
2196 = BUFF(2078)
|
||||||
|
2199 = BUFF(2078)
|
||||||
|
2202 = BUFF(2081)
|
||||||
|
2205 = BUFF(2081)
|
||||||
|
2214 = NAND(2151, 915)
|
||||||
|
2215 = NOT(2151)
|
||||||
|
2216 = NAND(2148, 916)
|
||||||
|
2217 = NOT(2148)
|
||||||
|
2222 = NAND(2199, 1348)
|
||||||
|
2223 = NOT(2199)
|
||||||
|
2224 = NAND(2196, 1349)
|
||||||
|
2225 = NOT(2196)
|
||||||
|
2226 = NAND(2205, 913)
|
||||||
|
2227 = NOT(2205)
|
||||||
|
2228 = NAND(2202, 914)
|
||||||
|
2229 = NOT(2202)
|
||||||
|
2230 = NAND(667, 2215)
|
||||||
|
2231 = NAND(664, 2217)
|
||||||
|
2232 = NAND(1255, 2223)
|
||||||
|
2233 = NAND(1252, 2225)
|
||||||
|
2234 = NAND(661, 2227)
|
||||||
|
2235 = NAND(658, 2229)
|
||||||
|
2236 = NAND(2214, 2230)
|
||||||
|
2237 = NAND(2216, 2231)
|
||||||
|
2240 = NAND(2222, 2232)
|
||||||
|
2241 = NAND(2224, 2233)
|
||||||
|
2244 = NAND(2226, 2234)
|
||||||
|
2245 = NAND(2228, 2235)
|
||||||
|
2250 = NOT(2236)
|
||||||
|
2253 = NOT(2240)
|
||||||
|
2256 = NOT(2244)
|
||||||
|
2257 = NOT(2237)
|
||||||
|
2260 = BUFF(2237)
|
||||||
|
2263 = NOT(2241)
|
||||||
|
2266 = AND(1164, 2241)
|
||||||
|
2269 = NOT(2245)
|
||||||
|
2272 = AND(1168, 2245)
|
||||||
|
2279 = NAND(2067, 2012, 2047, 2250, 899, 2256, 2253, 903)
|
||||||
|
2286 = BUFF(2266)
|
||||||
|
2297 = BUFF(2266)
|
||||||
|
2315 = BUFF(2272)
|
||||||
|
2326 = BUFF(2272)
|
||||||
|
2340 = AND(2086, 2257)
|
||||||
|
2353 = AND(2089, 2257)
|
||||||
|
2361 = AND(2086, 2260)
|
||||||
|
2375 = AND(2089, 2260)
|
||||||
|
2384 = AND(338, 2279, 313, 313)
|
||||||
|
2385 = AND(1163, 2263)
|
||||||
|
2386 = AND(1164, 2263)
|
||||||
|
2426 = AND(1167, 2269)
|
||||||
|
2427 = AND(1168, 2269)
|
||||||
|
2537 = NAND(2286, 2315, 2361, 2104, 1171)
|
||||||
|
2540 = NAND(2286, 2315, 2340, 2129, 1171)
|
||||||
|
2543 = NAND(2286, 2315, 2340, 2119, 1171)
|
||||||
|
2546 = NAND(2286, 2315, 2353, 2104, 1171)
|
||||||
|
2549 = NAND(2297, 2315, 2375, 2119, 1188)
|
||||||
|
2552 = NAND(2297, 2326, 2361, 2143, 1188)
|
||||||
|
2555 = NAND(2297, 2326, 2375, 2129, 1188)
|
||||||
|
2558 = AND(2286, 2315, 2361, 2104, 1171)
|
||||||
|
2561 = AND(2286, 2315, 2340, 2129, 1171)
|
||||||
|
2564 = AND(2286, 2315, 2340, 2119, 1171)
|
||||||
|
2567 = AND(2286, 2315, 2353, 2104, 1171)
|
||||||
|
2570 = AND(2297, 2315, 2375, 2119, 1188)
|
||||||
|
2573 = AND(2297, 2326, 2361, 2143, 1188)
|
||||||
|
2576 = AND(2297, 2326, 2375, 2129, 1188)
|
||||||
|
2594 = NAND(2286, 2427, 2361, 2129, 1171)
|
||||||
|
2597 = NAND(2297, 2427, 2361, 2119, 1171)
|
||||||
|
2600 = NAND(2297, 2427, 2375, 2104, 1171)
|
||||||
|
2603 = NAND(2297, 2427, 2340, 2143, 1171)
|
||||||
|
2606 = NAND(2297, 2427, 2353, 2129, 1188)
|
||||||
|
2611 = NAND(2386, 2326, 2361, 2129, 1188)
|
||||||
|
2614 = NAND(2386, 2326, 2361, 2119, 1188)
|
||||||
|
2617 = NAND(2386, 2326, 2375, 2104, 1188)
|
||||||
|
2620 = NAND(2386, 2326, 2353, 2129, 1188)
|
||||||
|
2627 = NAND(2297, 2427, 2340, 2104, 926)
|
||||||
|
2628 = NAND(2386, 2326, 2340, 2104, 926)
|
||||||
|
2629 = NAND(2386, 2427, 2361, 2104, 926)
|
||||||
|
2630 = NAND(2386, 2427, 2340, 2129, 926)
|
||||||
|
2631 = NAND(2386, 2427, 2340, 2119, 926)
|
||||||
|
2632 = NAND(2386, 2427, 2353, 2104, 926)
|
||||||
|
2633 = NAND(2386, 2426, 2340, 2104, 926)
|
||||||
|
2634 = NAND(2385, 2427, 2340, 2104, 926)
|
||||||
|
2639 = AND(2286, 2427, 2361, 2129, 1171)
|
||||||
|
2642 = AND(2297, 2427, 2361, 2119, 1171)
|
||||||
|
2645 = AND(2297, 2427, 2375, 2104, 1171)
|
||||||
|
2648 = AND(2297, 2427, 2340, 2143, 1171)
|
||||||
|
2651 = AND(2297, 2427, 2353, 2129, 1188)
|
||||||
|
2655 = AND(2386, 2326, 2361, 2129, 1188)
|
||||||
|
2658 = AND(2386, 2326, 2361, 2119, 1188)
|
||||||
|
2661 = AND(2386, 2326, 2375, 2104, 1188)
|
||||||
|
2664 = AND(2386, 2326, 2353, 2129, 1188)
|
||||||
|
2669 = NAND(2558, 534)
|
||||||
|
2670 = NOT(2558)
|
||||||
|
2671 = NAND(2561, 535)
|
||||||
|
2672 = NOT(2561)
|
||||||
|
2673 = NAND(2564, 536)
|
||||||
|
2674 = NOT(2564)
|
||||||
|
2675 = NAND(2567, 537)
|
||||||
|
2676 = NOT(2567)
|
||||||
|
2682 = NAND(2570, 543)
|
||||||
|
2683 = NOT(2570)
|
||||||
|
2688 = NAND(2573, 548)
|
||||||
|
2689 = NOT(2573)
|
||||||
|
2690 = NAND(2576, 549)
|
||||||
|
2691 = NOT(2576)
|
||||||
|
2710 = AND(2627, 2628, 2629, 2630, 2631, 2632, 2633, 2634)
|
||||||
|
2720 = NAND(343, 2670)
|
||||||
|
2721 = NAND(346, 2672)
|
||||||
|
2722 = NAND(349, 2674)
|
||||||
|
2723 = NAND(352, 2676)
|
||||||
|
2724 = NAND(2639, 538)
|
||||||
|
2725 = NOT(2639)
|
||||||
|
2726 = NAND(2642, 539)
|
||||||
|
2727 = NOT(2642)
|
||||||
|
2728 = NAND(2645, 540)
|
||||||
|
2729 = NOT(2645)
|
||||||
|
2730 = NAND(2648, 541)
|
||||||
|
2731 = NOT(2648)
|
||||||
|
2732 = NAND(2651, 542)
|
||||||
|
2733 = NOT(2651)
|
||||||
|
2734 = NAND(370, 2683)
|
||||||
|
2735 = NAND(2655, 544)
|
||||||
|
2736 = NOT(2655)
|
||||||
|
2737 = NAND(2658, 545)
|
||||||
|
2738 = NOT(2658)
|
||||||
|
2739 = NAND(2661, 546)
|
||||||
|
2740 = NOT(2661)
|
||||||
|
2741 = NAND(2664, 547)
|
||||||
|
2742 = NOT(2664)
|
||||||
|
2743 = NAND(385, 2689)
|
||||||
|
2744 = NAND(388, 2691)
|
||||||
|
2745 = NAND(2537, 2540, 2543, 2546, 2594, 2597, 2600, 2603)
|
||||||
|
2746 = NAND(2606, 2549, 2611, 2614, 2617, 2620, 2552, 2555)
|
||||||
|
2747 = AND(2537, 2540, 2543, 2546, 2594, 2597, 2600, 2603)
|
||||||
|
2750 = AND(2606, 2549, 2611, 2614, 2617, 2620, 2552, 2555)
|
||||||
|
2753 = NAND(2669, 2720)
|
||||||
|
2754 = NAND(2671, 2721)
|
||||||
|
2755 = NAND(2673, 2722)
|
||||||
|
2756 = NAND(2675, 2723)
|
||||||
|
2757 = NAND(355, 2725)
|
||||||
|
2758 = NAND(358, 2727)
|
||||||
|
2759 = NAND(361, 2729)
|
||||||
|
2760 = NAND(364, 2731)
|
||||||
|
2761 = NAND(367, 2733)
|
||||||
|
2762 = NAND(2682, 2734)
|
||||||
|
2763 = NAND(373, 2736)
|
||||||
|
2764 = NAND(376, 2738)
|
||||||
|
2765 = NAND(379, 2740)
|
||||||
|
2766 = NAND(382, 2742)
|
||||||
|
2767 = NAND(2688, 2743)
|
||||||
|
2768 = NAND(2690, 2744)
|
||||||
|
2773 = AND(2745, 275)
|
||||||
|
2776 = AND(2746, 276)
|
||||||
|
2779 = NAND(2724, 2757)
|
||||||
|
2780 = NAND(2726, 2758)
|
||||||
|
2781 = NAND(2728, 2759)
|
||||||
|
2782 = NAND(2730, 2760)
|
||||||
|
2783 = NAND(2732, 2761)
|
||||||
|
2784 = NAND(2735, 2763)
|
||||||
|
2785 = NAND(2737, 2764)
|
||||||
|
2786 = NAND(2739, 2765)
|
||||||
|
2787 = NAND(2741, 2766)
|
||||||
|
2788 = AND(2747, 2750, 2710)
|
||||||
|
2789 = NAND(2747, 2750)
|
||||||
|
2800 = AND(338, 2279, 99, 2788)
|
||||||
|
2807 = NAND(2773, 2018)
|
||||||
|
2808 = NOT(2773)
|
||||||
|
2809 = NAND(2776, 2019)
|
||||||
|
2810 = NOT(2776)
|
||||||
|
2811 = NOR(2384, 2800)
|
||||||
|
2812 = AND(897, 283, 2789)
|
||||||
|
2815 = AND(76, 283, 2789)
|
||||||
|
2818 = AND(82, 283, 2789)
|
||||||
|
2821 = AND(85, 283, 2789)
|
||||||
|
2824 = AND(898, 283, 2789)
|
||||||
|
2827 = NAND(1965, 2808)
|
||||||
|
2828 = NAND(1968, 2810)
|
||||||
|
2829 = AND(79, 283, 2789)
|
||||||
|
2843 = NAND(2807, 2827)
|
||||||
|
2846 = NAND(2809, 2828)
|
||||||
|
2850 = NAND(2812, 2076)
|
||||||
|
2851 = NAND(2815, 2077)
|
||||||
|
2852 = NAND(2818, 1915)
|
||||||
|
2853 = NAND(2821, 1857)
|
||||||
|
2854 = NAND(2824, 1938)
|
||||||
|
2857 = NOT(2812)
|
||||||
|
2858 = NOT(2815)
|
||||||
|
2859 = NOT(2818)
|
||||||
|
2860 = NOT(2821)
|
||||||
|
2861 = NOT(2824)
|
||||||
|
2862 = NOT(2829)
|
||||||
|
2863 = NAND(2829, 1985)
|
||||||
|
2866 = NAND(2052, 2857)
|
||||||
|
2867 = NAND(2055, 2858)
|
||||||
|
2868 = NAND(1866, 2859)
|
||||||
|
2869 = NAND(1818, 2860)
|
||||||
|
2870 = NAND(1902, 2861)
|
||||||
|
2871 = NAND(2843, 886)
|
||||||
|
2872 = NOT(2843)
|
||||||
|
2873 = NAND(2846, 887)
|
||||||
|
2874 = NOT(2846)
|
||||||
|
2875 = NAND(1933, 2862)
|
||||||
|
2876 = NAND(2866, 2850)
|
||||||
|
2877 = NAND(2867, 2851)
|
||||||
|
2878 = NAND(2868, 2852)
|
||||||
|
2879 = NAND(2869, 2853)
|
||||||
|
2880 = NAND(2870, 2854)
|
||||||
|
2881 = NAND(682, 2872)
|
||||||
|
2882 = NAND(685, 2874)
|
||||||
|
2883 = NAND(2875, 2863)
|
||||||
|
2886 = AND(2876, 550)
|
||||||
|
2887 = AND(551, 2877)
|
||||||
|
2888 = AND(553, 2878)
|
||||||
|
2889 = AND(2879, 554)
|
||||||
|
2890 = AND(555, 2880)
|
||||||
|
2891 = NAND(2871, 2881)
|
||||||
|
2892 = NAND(2873, 2882)
|
||||||
|
2895 = NAND(2883, 1461)
|
||||||
|
2896 = NOT(2883)
|
||||||
|
2897 = NAND(1383, 2896)
|
||||||
|
2898 = NAND(2895, 2897)
|
||||||
|
2899 = AND(2898, 552)
|
||||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,208 +1,207 @@
|
|||||||
# generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
|
# c432
|
||||||
# gates: 196
|
|
||||||
|
|
||||||
INPUT(G1)
|
INPUT(1)
|
||||||
INPUT(G2)
|
INPUT(4)
|
||||||
INPUT(G3)
|
INPUT(8)
|
||||||
INPUT(G4)
|
INPUT(11)
|
||||||
INPUT(G5)
|
INPUT(14)
|
||||||
INPUT(G6)
|
INPUT(17)
|
||||||
INPUT(G7)
|
INPUT(21)
|
||||||
INPUT(G8)
|
INPUT(24)
|
||||||
INPUT(G9)
|
INPUT(27)
|
||||||
INPUT(G10)
|
INPUT(30)
|
||||||
INPUT(G11)
|
INPUT(34)
|
||||||
INPUT(G12)
|
INPUT(37)
|
||||||
INPUT(G13)
|
INPUT(40)
|
||||||
INPUT(G14)
|
INPUT(43)
|
||||||
INPUT(G15)
|
INPUT(47)
|
||||||
INPUT(G16)
|
INPUT(50)
|
||||||
INPUT(G17)
|
INPUT(53)
|
||||||
INPUT(G18)
|
INPUT(56)
|
||||||
INPUT(G19)
|
INPUT(60)
|
||||||
INPUT(G20)
|
INPUT(63)
|
||||||
INPUT(G21)
|
INPUT(66)
|
||||||
INPUT(G22)
|
INPUT(69)
|
||||||
INPUT(G23)
|
INPUT(73)
|
||||||
INPUT(G24)
|
INPUT(76)
|
||||||
INPUT(G25)
|
INPUT(79)
|
||||||
INPUT(G26)
|
INPUT(82)
|
||||||
INPUT(G27)
|
INPUT(86)
|
||||||
INPUT(G28)
|
INPUT(89)
|
||||||
INPUT(G29)
|
INPUT(92)
|
||||||
INPUT(G30)
|
INPUT(95)
|
||||||
INPUT(G31)
|
INPUT(99)
|
||||||
INPUT(G32)
|
INPUT(102)
|
||||||
INPUT(G33)
|
INPUT(105)
|
||||||
INPUT(G34)
|
INPUT(108)
|
||||||
INPUT(G35)
|
INPUT(112)
|
||||||
INPUT(G36)
|
INPUT(115)
|
||||||
|
|
||||||
OUTPUT(G85)
|
OUTPUT(223)
|
||||||
OUTPUT(G134)
|
OUTPUT(329)
|
||||||
OUTPUT(G164)
|
OUTPUT(370)
|
||||||
OUTPUT(G193)
|
OUTPUT(421)
|
||||||
OUTPUT(G194)
|
OUTPUT(430)
|
||||||
OUTPUT(G195)
|
OUTPUT(431)
|
||||||
OUTPUT(G196)
|
OUTPUT(432)
|
||||||
|
|
||||||
G37 = NOT ( G1 )
|
118 = NOT(1)
|
||||||
G38 = NOT ( G2 )
|
119 = NOT(4)
|
||||||
G39 = NOT ( G4 )
|
122 = NOT(11)
|
||||||
G40 = NOT ( G6 )
|
123 = NOT(17)
|
||||||
G41 = NOT ( G8 )
|
126 = NOT(24)
|
||||||
G42 = NOT ( G10 )
|
127 = NOT(30)
|
||||||
G43 = NOT ( G12 )
|
130 = NOT(37)
|
||||||
G44 = NOT ( G14 )
|
131 = NOT(43)
|
||||||
G45 = NOT ( G16 )
|
134 = NOT(50)
|
||||||
G46 = NOT ( G18 )
|
135 = NOT(56)
|
||||||
G47 = NOT ( G20 )
|
138 = NOT(63)
|
||||||
G48 = NOT ( G22 )
|
139 = NOT(69)
|
||||||
G49 = NOT ( G24 )
|
142 = NOT(76)
|
||||||
G50 = NOT ( G26 )
|
143 = NOT(82)
|
||||||
G51 = NOT ( G28 )
|
146 = NOT(89)
|
||||||
G52 = NOT ( G30 )
|
147 = NOT(95)
|
||||||
G53 = NOT ( G32 )
|
150 = NOT(102)
|
||||||
G54 = NOT ( G34 )
|
151 = NOT(108)
|
||||||
G55 = NAND ( G37, G2 )
|
154 = NAND(118, 4)
|
||||||
G56 = NOR ( G3, G38 )
|
157 = NOR(8, 119)
|
||||||
G57 = NOR ( G5, G38 )
|
158 = NOR(14, 119)
|
||||||
G58 = NAND ( G39, G6 )
|
159 = NAND(122, 17)
|
||||||
G59 = NOR ( G7, G40 )
|
162 = NAND(126, 30)
|
||||||
G60 = NOR ( G9, G40 )
|
165 = NAND(130, 43)
|
||||||
G61 = NAND ( G41, G10 )
|
168 = NAND(134, 56)
|
||||||
G62 = NOR ( G11, G42 )
|
171 = NAND(138, 69)
|
||||||
G63 = NOR ( G13, G42 )
|
174 = NAND(142, 82)
|
||||||
G64 = NAND ( G43, G14 )
|
177 = NAND(146, 95)
|
||||||
G65 = NOR ( G15, G44 )
|
180 = NAND(150, 108)
|
||||||
G66 = NOR ( G17, G44 )
|
183 = NOR(21, 123)
|
||||||
G67 = NAND ( G45, G18 )
|
184 = NOR(27, 123)
|
||||||
G68 = NOR ( G19, G46 )
|
185 = NOR(34, 127)
|
||||||
G69 = NOR ( G21, G46 )
|
186 = NOR(40, 127)
|
||||||
G70 = NAND ( G47, G22 )
|
187 = NOR(47, 131)
|
||||||
G71 = NOR ( G23, G48 )
|
188 = NOR(53, 131)
|
||||||
G72 = NOR ( G25, G48 )
|
189 = NOR(60, 135)
|
||||||
G73 = NAND ( G49, G26 )
|
190 = NOR(66, 135)
|
||||||
G74 = NOR ( G27, G50 )
|
191 = NOR(73, 139)
|
||||||
G75 = NOR ( G29, G50 )
|
192 = NOR(79, 139)
|
||||||
G76 = NAND ( G51, G30 )
|
193 = NOR(86, 143)
|
||||||
G77 = NOR ( G31, G52 )
|
194 = NOR(92, 143)
|
||||||
G78 = NOR ( G33, G52 )
|
195 = NOR(99, 147)
|
||||||
G79 = NAND ( G53, G34 )
|
196 = NOR(105, 147)
|
||||||
G80 = NOR ( G35, G54 )
|
197 = NOR(112, 151)
|
||||||
G81 = NOR ( G36, G54 )
|
198 = NOR(115, 151)
|
||||||
G82 = AND ( G55, G58, G61, G64, G67, G70, G73, G76, G79 )
|
199 = AND(154, 159, 162, 165, 168, 171, 174, 177, 180)
|
||||||
G83 = NOT ( G82 )
|
203 = NOT(199)
|
||||||
G84 = NOT ( G82 )
|
213 = NOT(199)
|
||||||
G85 = NOT ( G82 )
|
223 = NOT(199)
|
||||||
G86 = XOR ( G83, G55 )
|
224 = XOR(203, 154)
|
||||||
G87 = XOR ( G83, G58 )
|
227 = XOR(203, 159)
|
||||||
G88 = XOR ( G83, G61 )
|
230 = XOR(203, 162)
|
||||||
G89 = XOR ( G83, G64 )
|
233 = XOR(203, 165)
|
||||||
G90 = XOR ( G83, G67 )
|
236 = XOR(203, 168)
|
||||||
G91 = XOR ( G83, G70 )
|
239 = XOR(203, 171)
|
||||||
G92 = XOR ( G83, G73 )
|
242 = NAND(1, 213)
|
||||||
G93 = XOR ( G83, G76 )
|
243 = XOR(203, 174)
|
||||||
G94 = XOR ( G83, G79 )
|
246 = NAND(213, 11)
|
||||||
G95 = NAND ( G1, G84 )
|
247 = XOR(203, 177)
|
||||||
G96 = NAND ( G84, G4 )
|
250 = NAND(213, 24)
|
||||||
G97 = NAND ( G84, G8 )
|
251 = XOR(203, 180)
|
||||||
G98 = NAND ( G84, G12 )
|
254 = NAND(213, 37)
|
||||||
G99 = NAND ( G84, G16 )
|
255 = NAND(213, 50)
|
||||||
G100 = NAND ( G84, G20 )
|
256 = NAND(213, 63)
|
||||||
G101 = NAND ( G84, G24 )
|
257 = NAND(213, 76)
|
||||||
G102 = NAND ( G84, G28 )
|
258 = NAND(213, 89)
|
||||||
G103 = NAND ( G84, G32 )
|
259 = NAND(213, 102)
|
||||||
G104 = NAND ( G86, G56 )
|
260 = NAND(224, 157)
|
||||||
G105 = NAND ( G86, G57 )
|
263 = NAND(224, 158)
|
||||||
G106 = NAND ( G87, G59 )
|
264 = NAND(227, 183)
|
||||||
G107 = NAND ( G87, G60 )
|
267 = NAND(230, 185)
|
||||||
G108 = NAND ( G88, G62 )
|
270 = NAND(233, 187)
|
||||||
G109 = NAND ( G88, G63 )
|
273 = NAND(236, 189)
|
||||||
G110 = NAND ( G89, G65 )
|
276 = NAND(239, 191)
|
||||||
G111 = NAND ( G89, G66 )
|
279 = NAND(243, 193)
|
||||||
G112 = NAND ( G90, G68 )
|
282 = NAND(247, 195)
|
||||||
G113 = NAND ( G90, G69 )
|
285 = NAND(251, 197)
|
||||||
G114 = NAND ( G91, G71 )
|
288 = NAND(227, 184)
|
||||||
G115 = NAND ( G91, G72 )
|
289 = NAND(230, 186)
|
||||||
G116 = NAND ( G92, G74 )
|
290 = NAND(233, 188)
|
||||||
G117 = NAND ( G92, G75 )
|
291 = NAND(236, 190)
|
||||||
G118 = NAND ( G93, G77 )
|
292 = NAND(239, 192)
|
||||||
G119 = NAND ( G93, G78 )
|
293 = NAND(243, 194)
|
||||||
G120 = NAND ( G94, G80 )
|
294 = NAND(247, 196)
|
||||||
G121 = NAND ( G94, G81 )
|
295 = NAND(251, 198)
|
||||||
G122 = NOT ( G105 )
|
296 = AND(260, 264, 267, 270, 273, 276, 279, 282, 285)
|
||||||
G123 = NOT ( G107 )
|
300 = NOT(263)
|
||||||
G124 = NOT ( G109 )
|
301 = NOT(288)
|
||||||
G125 = NOT ( G111 )
|
302 = NOT(289)
|
||||||
G126 = NOT ( G113 )
|
303 = NOT(290)
|
||||||
G127 = NOT ( G115 )
|
304 = NOT(291)
|
||||||
G128 = NOT ( G117 )
|
305 = NOT(292)
|
||||||
G129 = NOT ( G119 )
|
306 = NOT(293)
|
||||||
G130 = AND ( G104, G106, G108, G110, G112, G114, G116, G118, G120 )
|
307 = NOT(294)
|
||||||
G131 = NOT ( G121 )
|
308 = NOT(295)
|
||||||
G132 = NOT ( G130 )
|
309 = NOT(296)
|
||||||
G133 = NOT ( G130 )
|
319 = NOT(296)
|
||||||
G134 = NOT ( G130 )
|
329 = NOT(296)
|
||||||
G135 = XOR ( G132, G104 )
|
330 = XOR(309, 260)
|
||||||
G136 = XOR ( G132, G106 )
|
331 = XOR(309, 264)
|
||||||
G137 = XOR ( G132, G108 )
|
332 = XOR(309, 267)
|
||||||
G138 = XOR ( G132, G110 )
|
333 = XOR(309, 270)
|
||||||
G139 = XOR ( G132, G112 )
|
334 = NAND(8, 319)
|
||||||
G140 = XOR ( G132, G114 )
|
335 = XOR(309, 273)
|
||||||
G141 = XOR ( G132, G116 )
|
336 = NAND(319, 21)
|
||||||
G142 = XOR ( G132, G118 )
|
337 = XOR(309, 276)
|
||||||
G143 = XOR ( G132, G120 )
|
338 = NAND(319, 34)
|
||||||
G144 = NAND ( G3, G133 )
|
339 = XOR(309, 279)
|
||||||
G145 = NAND ( G133, G7 )
|
340 = NAND(319, 47)
|
||||||
G146 = NAND ( G133, G11 )
|
341 = XOR(309, 282)
|
||||||
G147 = NAND ( G133, G15 )
|
342 = NAND(319, 60)
|
||||||
G148 = NAND ( G133, G19 )
|
343 = XOR(309, 285)
|
||||||
G149 = NAND ( G133, G23 )
|
344 = NAND(319, 73)
|
||||||
G150 = NAND ( G133, G27 )
|
345 = NAND(319, 86)
|
||||||
G151 = NAND ( G133, G31 )
|
346 = NAND(319, 99)
|
||||||
G152 = NAND ( G133, G35 )
|
347 = NAND(319, 112)
|
||||||
G153 = NAND ( G135, G122 )
|
348 = NAND(330, 300)
|
||||||
G154 = NAND ( G136, G123 )
|
349 = NAND(331, 301)
|
||||||
G155 = NAND ( G137, G124 )
|
350 = NAND(332, 302)
|
||||||
G156 = NAND ( G138, G125 )
|
351 = NAND(333, 303)
|
||||||
G157 = NAND ( G139, G126 )
|
352 = NAND(335, 304)
|
||||||
G158 = NAND ( G140, G127 )
|
353 = NAND(337, 305)
|
||||||
G159 = NAND ( G141, G128 )
|
354 = NAND(339, 306)
|
||||||
G160 = NAND ( G142, G129 )
|
355 = NAND(341, 307)
|
||||||
G161 = NAND ( G143, G131 )
|
356 = NAND(343, 308)
|
||||||
G162 = AND ( G153, G154, G155, G156, G157, G158, G159, G160, G161 )
|
357 = AND(348, 349, 350, 351, 352, 353, 354, 355, 356)
|
||||||
G163 = NOT ( G162 )
|
360 = NOT(357)
|
||||||
G164 = NOT ( G162 )
|
370 = NOT(357)
|
||||||
G165 = NAND ( G5, G163 )
|
371 = NAND(14, 360)
|
||||||
G166 = NAND ( G163, G9 )
|
372 = NAND(360, 27)
|
||||||
G167 = NAND ( G163, G13 )
|
373 = NAND(360, 40)
|
||||||
G168 = NAND ( G163, G17 )
|
374 = NAND(360, 53)
|
||||||
G169 = NAND ( G163, G21 )
|
375 = NAND(360, 66)
|
||||||
G170 = NAND ( G163, G25 )
|
376 = NAND(360, 79)
|
||||||
G171 = NAND ( G163, G29 )
|
377 = NAND(360, 92)
|
||||||
G172 = NAND ( G163, G33 )
|
378 = NAND(360, 105)
|
||||||
G173 = NAND ( G163, G36 )
|
379 = NAND(360, 115)
|
||||||
G174 = NAND ( G2, G95, G144, G165 )
|
380 = NAND(4, 242, 334, 371)
|
||||||
G175 = NAND ( G96, G145, G166, G6 )
|
381 = NAND(246, 336, 372, 17)
|
||||||
G176 = NAND ( G97, G146, G167, G10 )
|
386 = NAND(250, 338, 373, 30)
|
||||||
G177 = NAND ( G98, G147, G168, G14 )
|
393 = NAND(254, 340, 374, 43)
|
||||||
G178 = NAND ( G99, G148, G169, G18 )
|
399 = NAND(255, 342, 375, 56)
|
||||||
G179 = NAND ( G100, G149, G170, G22 )
|
404 = NAND(256, 344, 376, 69)
|
||||||
G180 = NAND ( G101, G150, G171, G26 )
|
407 = NAND(257, 345, 377, 82)
|
||||||
G181 = NAND ( G102, G151, G172, G30 )
|
411 = NAND(258, 346, 378, 95)
|
||||||
G182 = NAND ( G103, G152, G173, G34 )
|
414 = NAND(259, 347, 379, 108)
|
||||||
G183 = NOT ( G174 )
|
415 = NOT(380)
|
||||||
G184 = NOT ( G177 )
|
416 = AND(381, 386, 393, 399, 404, 407, 411, 414)
|
||||||
G185 = NOT ( G179 )
|
417 = NOT(393)
|
||||||
G186 = NOT ( G180 )
|
418 = NOT(404)
|
||||||
G187 = NOT ( G181 )
|
419 = NOT(407)
|
||||||
G188 = AND ( G175, G176, G177, G178, G179, G180, G181, G182 )
|
420 = NOT(411)
|
||||||
G189 = NAND ( G176, G184 )
|
421 = NOR(415, 416)
|
||||||
G190 = NAND ( G176, G177, G185, G178 )
|
422 = NAND(386, 417)
|
||||||
G191 = NAND ( G178, G177, G186 )
|
425 = NAND(386, 393, 418, 399)
|
||||||
G192 = NAND ( G176, G177, G180, G187 )
|
428 = NAND(399, 393, 419)
|
||||||
G193 = NOR ( G183, G188 )
|
429 = NAND(386, 393, 407, 420)
|
||||||
G194 = NAND ( G175, G176, G189, G178 )
|
430 = NAND(381, 386, 422, 399)
|
||||||
G195 = NAND ( G175, G176, G190, G191 )
|
431 = NAND(381, 386, 425, 428)
|
||||||
G196 = NAND ( G175, G189, G190, G192 )
|
432 = NAND(381, 422, 425, 429)
|
||||||
|
@ -1,280 +1,279 @@
|
|||||||
# generate by dftconverter: https://gitea.yuhangq.com:8/YuhangQ/DFT_Converter
|
# c499
|
||||||
# gates: 243
|
|
||||||
|
|
||||||
INPUT(G1)
|
INPUT(1)
|
||||||
INPUT(G2)
|
INPUT(5)
|
||||||
INPUT(G3)
|
INPUT(9)
|
||||||
INPUT(G4)
|
INPUT(13)
|
||||||
INPUT(G5)
|
INPUT(17)
|
||||||
INPUT(G6)
|
INPUT(21)
|
||||||
INPUT(G7)
|
INPUT(25)
|
||||||
INPUT(G8)
|
INPUT(29)
|
||||||
INPUT(G9)
|
INPUT(33)
|
||||||
INPUT(G10)
|
INPUT(37)
|
||||||
INPUT(G11)
|
INPUT(41)
|
||||||
INPUT(G12)
|
INPUT(45)
|
||||||
INPUT(G13)
|
INPUT(49)
|
||||||
INPUT(G14)
|
INPUT(53)
|
||||||
INPUT(G15)
|
INPUT(57)
|
||||||
INPUT(G16)
|
INPUT(61)
|
||||||
INPUT(G17)
|
INPUT(65)
|
||||||
INPUT(G18)
|
INPUT(69)
|
||||||
INPUT(G19)
|
INPUT(73)
|
||||||
INPUT(G20)
|
INPUT(77)
|
||||||
INPUT(G21)
|
INPUT(81)
|
||||||
INPUT(G22)
|
INPUT(85)
|
||||||
INPUT(G23)
|
INPUT(89)
|
||||||
INPUT(G24)
|
INPUT(93)
|
||||||
INPUT(G25)
|
INPUT(97)
|
||||||
INPUT(G26)
|
INPUT(101)
|
||||||
INPUT(G27)
|
INPUT(105)
|
||||||
INPUT(G28)
|
INPUT(109)
|
||||||
INPUT(G29)
|
INPUT(113)
|
||||||
INPUT(G30)
|
INPUT(117)
|
||||||
INPUT(G31)
|
INPUT(121)
|
||||||
INPUT(G32)
|
INPUT(125)
|
||||||
INPUT(G33)
|
INPUT(129)
|
||||||
INPUT(G34)
|
INPUT(130)
|
||||||
INPUT(G35)
|
INPUT(131)
|
||||||
INPUT(G36)
|
INPUT(132)
|
||||||
INPUT(G37)
|
INPUT(133)
|
||||||
INPUT(G38)
|
INPUT(134)
|
||||||
INPUT(G39)
|
INPUT(135)
|
||||||
INPUT(G40)
|
INPUT(136)
|
||||||
INPUT(G41)
|
INPUT(137)
|
||||||
|
|
||||||
OUTPUT(G228)
|
OUTPUT(724)
|
||||||
OUTPUT(G229)
|
OUTPUT(725)
|
||||||
OUTPUT(G230)
|
OUTPUT(726)
|
||||||
OUTPUT(G231)
|
OUTPUT(727)
|
||||||
OUTPUT(G232)
|
OUTPUT(728)
|
||||||
OUTPUT(G233)
|
OUTPUT(729)
|
||||||
OUTPUT(G234)
|
OUTPUT(730)
|
||||||
OUTPUT(G235)
|
OUTPUT(731)
|
||||||
OUTPUT(G236)
|
OUTPUT(732)
|
||||||
OUTPUT(G237)
|
OUTPUT(733)
|
||||||
OUTPUT(G238)
|
OUTPUT(734)
|
||||||
OUTPUT(G239)
|
OUTPUT(735)
|
||||||
OUTPUT(G240)
|
OUTPUT(736)
|
||||||
OUTPUT(G241)
|
OUTPUT(737)
|
||||||
OUTPUT(G242)
|
OUTPUT(738)
|
||||||
OUTPUT(G243)
|
OUTPUT(739)
|
||||||
OUTPUT(G212)
|
OUTPUT(740)
|
||||||
OUTPUT(G213)
|
OUTPUT(741)
|
||||||
OUTPUT(G214)
|
OUTPUT(742)
|
||||||
OUTPUT(G215)
|
OUTPUT(743)
|
||||||
OUTPUT(G216)
|
OUTPUT(744)
|
||||||
OUTPUT(G217)
|
OUTPUT(745)
|
||||||
OUTPUT(G218)
|
OUTPUT(746)
|
||||||
OUTPUT(G219)
|
OUTPUT(747)
|
||||||
OUTPUT(G220)
|
OUTPUT(748)
|
||||||
OUTPUT(G221)
|
OUTPUT(749)
|
||||||
OUTPUT(G222)
|
OUTPUT(750)
|
||||||
OUTPUT(G223)
|
OUTPUT(751)
|
||||||
OUTPUT(G224)
|
OUTPUT(752)
|
||||||
OUTPUT(G225)
|
OUTPUT(753)
|
||||||
OUTPUT(G226)
|
OUTPUT(754)
|
||||||
OUTPUT(G227)
|
OUTPUT(755)
|
||||||
|
|
||||||
G42 = XOR ( G1, G2 )
|
250 = XOR(1, 5)
|
||||||
G43 = XOR ( G3, G4 )
|
251 = XOR(9, 13)
|
||||||
G44 = XOR ( G1, G5 )
|
252 = XOR(17, 21)
|
||||||
G45 = XOR ( G5, G6 )
|
253 = XOR(25, 29)
|
||||||
G46 = XOR ( G2, G6 )
|
254 = XOR(33, 37)
|
||||||
G47 = XOR ( G3, G7 )
|
255 = XOR(41, 45)
|
||||||
G48 = XOR ( G7, G8 )
|
256 = XOR(49, 53)
|
||||||
G49 = XOR ( G4, G8 )
|
257 = XOR(57, 61)
|
||||||
G50 = XOR ( G9, G10 )
|
258 = XOR(65, 69)
|
||||||
G51 = XOR ( G11, G12 )
|
259 = XOR(73, 77)
|
||||||
G52 = XOR ( G9, G13 )
|
260 = XOR(81, 85)
|
||||||
G53 = XOR ( G13, G14 )
|
261 = XOR(89, 93)
|
||||||
G54 = XOR ( G10, G14 )
|
262 = XOR(97, 101)
|
||||||
G55 = XOR ( G11, G15 )
|
263 = XOR(105, 109)
|
||||||
G56 = XOR ( G15, G16 )
|
264 = XOR(113, 117)
|
||||||
G57 = XOR ( G12, G16 )
|
265 = XOR(121, 125)
|
||||||
G58 = XOR ( G17, G18 )
|
266 = AND(129, 137)
|
||||||
G59 = XOR ( G19, G20 )
|
267 = AND(130, 137)
|
||||||
G60 = XOR ( G17, G21 )
|
268 = AND(131, 137)
|
||||||
G61 = XOR ( G21, G22 )
|
269 = AND(132, 137)
|
||||||
G62 = XOR ( G18, G22 )
|
270 = AND(133, 137)
|
||||||
G63 = XOR ( G19, G23 )
|
271 = AND(134, 137)
|
||||||
G64 = XOR ( G23, G24 )
|
272 = AND(135, 137)
|
||||||
G65 = XOR ( G20, G24 )
|
273 = AND(136, 137)
|
||||||
G66 = XOR ( G25, G26 )
|
274 = XOR(1, 17)
|
||||||
G67 = XOR ( G27, G28 )
|
275 = XOR(33, 49)
|
||||||
G68 = XOR ( G25, G29 )
|
276 = XOR(5, 21)
|
||||||
G69 = XOR ( G29, G30 )
|
277 = XOR(37, 53)
|
||||||
G70 = XOR ( G26, G30 )
|
278 = XOR(9, 25)
|
||||||
G71 = XOR ( G27, G31 )
|
279 = XOR(41, 57)
|
||||||
G72 = XOR ( G31, G32 )
|
280 = XOR(13, 29)
|
||||||
G73 = XOR ( G28, G32 )
|
281 = XOR(45, 61)
|
||||||
G74 = AND ( G33, G41 )
|
282 = XOR(65, 81)
|
||||||
G75 = AND ( G34, G41 )
|
283 = XOR(97, 113)
|
||||||
G76 = AND ( G35, G41 )
|
284 = XOR(69, 85)
|
||||||
G77 = AND ( G36, G41 )
|
285 = XOR(101, 117)
|
||||||
G78 = AND ( G37, G41 )
|
286 = XOR(73, 89)
|
||||||
G79 = AND ( G38, G41 )
|
287 = XOR(105, 121)
|
||||||
G80 = AND ( G39, G41 )
|
288 = XOR(77, 93)
|
||||||
G81 = AND ( G40, G41 )
|
289 = XOR(109, 125)
|
||||||
G82 = XOR ( G42, G43 )
|
290 = XOR(250, 251)
|
||||||
G83 = XOR ( G45, G48 )
|
293 = XOR(252, 253)
|
||||||
G84 = XOR ( G50, G51 )
|
296 = XOR(254, 255)
|
||||||
G85 = XOR ( G44, G52 )
|
299 = XOR(256, 257)
|
||||||
G86 = XOR ( G46, G54 )
|
302 = XOR(258, 259)
|
||||||
G87 = XOR ( G47, G55 )
|
305 = XOR(260, 261)
|
||||||
G88 = XOR ( G53, G56 )
|
308 = XOR(262, 263)
|
||||||
G89 = XOR ( G49, G57 )
|
311 = XOR(264, 265)
|
||||||
G90 = XOR ( G58, G59 )
|
314 = XOR(274, 275)
|
||||||
G91 = XOR ( G61, G64 )
|
315 = XOR(276, 277)
|
||||||
G92 = XOR ( G66, G67 )
|
316 = XOR(278, 279)
|
||||||
G93 = XOR ( G60, G68 )
|
317 = XOR(280, 281)
|
||||||
G94 = XOR ( G62, G70 )
|
318 = XOR(282, 283)
|
||||||
G95 = XOR ( G63, G71 )
|
319 = XOR(284, 285)
|
||||||
G96 = XOR ( G69, G72 )
|
320 = XOR(286, 287)
|
||||||
G97 = XOR ( G65, G73 )
|
321 = XOR(288, 289)
|
||||||
G98 = XOR ( G82, G83 )
|
338 = XOR(290, 293)
|
||||||
G99 = XOR ( G82, G84 )
|
339 = XOR(296, 299)
|
||||||
G100 = XOR ( G84, G88 )
|
340 = XOR(290, 296)
|
||||||
G101 = XOR ( G83, G88 )
|
341 = XOR(293, 299)
|
||||||
G102 = XOR ( G90, G91 )
|
342 = XOR(302, 305)
|
||||||
G103 = XOR ( G90, G92 )
|
343 = XOR(308, 311)
|
||||||
G104 = XOR ( G92, G96 )
|
344 = XOR(302, 308)
|
||||||
G105 = XOR ( G91, G96 )
|
345 = XOR(305, 311)
|
||||||
G106 = XOR ( G78, G98 )
|
346 = XOR(266, 342)
|
||||||
G107 = XOR ( G80, G99 )
|
347 = XOR(267, 343)
|
||||||
G108 = XOR ( G79, G100 )
|
348 = XOR(268, 344)
|
||||||
G109 = XOR ( G81, G101 )
|
349 = XOR(269, 345)
|
||||||
G110 = XOR ( G74, G102 )
|
350 = XOR(270, 338)
|
||||||
G111 = XOR ( G76, G103 )
|
351 = XOR(271, 339)
|
||||||
G112 = XOR ( G75, G104 )
|
352 = XOR(272, 340)
|
||||||
G113 = XOR ( G77, G105 )
|
353 = XOR(273, 341)
|
||||||
G114 = XOR ( G93, G106 )
|
354 = XOR(314, 346)
|
||||||
G115 = XOR ( G95, G107 )
|
367 = XOR(315, 347)
|
||||||
G116 = XOR ( G94, G108 )
|
380 = XOR(316, 348)
|
||||||
G117 = XOR ( G97, G109 )
|
393 = XOR(317, 349)
|
||||||
G118 = XOR ( G85, G110 )
|
406 = XOR(318, 350)
|
||||||
G119 = XOR ( G87, G111 )
|
419 = XOR(319, 351)
|
||||||
G120 = XOR ( G86, G112 )
|
432 = XOR(320, 352)
|
||||||
G121 = XOR ( G89, G113 )
|
445 = XOR(321, 353)
|
||||||
G122 = NOT ( G114 )
|
554 = NOT(354)
|
||||||
G123 = NOT ( G114 )
|
555 = NOT(367)
|
||||||
G124 = NOT ( G114 )
|
556 = NOT(380)
|
||||||
G125 = NOT ( G114 )
|
557 = NOT(354)
|
||||||
G126 = NOT ( G114 )
|
558 = NOT(367)
|
||||||
G127 = NOT ( G115 )
|
559 = NOT(393)
|
||||||
G128 = NOT ( G115 )
|
560 = NOT(354)
|
||||||
G129 = NOT ( G115 )
|
561 = NOT(380)
|
||||||
G130 = NOT ( G115 )
|
562 = NOT(393)
|
||||||
G131 = NOT ( G115 )
|
563 = NOT(367)
|
||||||
G132 = NOT ( G116 )
|
564 = NOT(380)
|
||||||
G133 = NOT ( G116 )
|
565 = NOT(393)
|
||||||
G134 = NOT ( G116 )
|
566 = NOT(419)
|
||||||
G135 = NOT ( G116 )
|
567 = NOT(445)
|
||||||
G136 = NOT ( G116 )
|
568 = NOT(419)
|
||||||
G137 = NOT ( G117 )
|
569 = NOT(432)
|
||||||
G138 = NOT ( G117 )
|
570 = NOT(406)
|
||||||
G139 = NOT ( G117 )
|
571 = NOT(445)
|
||||||
G140 = NOT ( G117 )
|
572 = NOT(406)
|
||||||
G141 = NOT ( G117 )
|
573 = NOT(432)
|
||||||
G142 = NOT ( G118 )
|
574 = NOT(406)
|
||||||
G143 = NOT ( G118 )
|
575 = NOT(419)
|
||||||
G144 = NOT ( G118 )
|
576 = NOT(432)
|
||||||
G145 = NOT ( G118 )
|
577 = NOT(406)
|
||||||
G146 = NOT ( G118 )
|
578 = NOT(419)
|
||||||
G147 = NOT ( G119 )
|
579 = NOT(445)
|
||||||
G148 = NOT ( G119 )
|
580 = NOT(406)
|
||||||
G149 = NOT ( G119 )
|
581 = NOT(432)
|
||||||
G150 = NOT ( G119 )
|
582 = NOT(445)
|
||||||
G151 = NOT ( G119 )
|
583 = NOT(419)
|
||||||
G152 = NOT ( G120 )
|
584 = NOT(432)
|
||||||
G153 = NOT ( G120 )
|
585 = NOT(445)
|
||||||
G154 = NOT ( G120 )
|
586 = NOT(367)
|
||||||
G155 = NOT ( G120 )
|
587 = NOT(393)
|
||||||
G156 = NOT ( G120 )
|
588 = NOT(367)
|
||||||
G157 = NOT ( G121 )
|
589 = NOT(380)
|
||||||
G158 = NOT ( G121 )
|
590 = NOT(354)
|
||||||
G159 = NOT ( G121 )
|
591 = NOT(393)
|
||||||
G160 = NOT ( G121 )
|
592 = NOT(354)
|
||||||
G161 = NOT ( G121 )
|
593 = NOT(380)
|
||||||
G162 = AND ( G124, G134, G129, G117 )
|
594 = AND(554, 555, 556, 393)
|
||||||
G163 = AND ( G125, G135, G115, G139 )
|
595 = AND(557, 558, 380, 559)
|
||||||
G164 = AND ( G126, G116, G130, G140 )
|
596 = AND(560, 367, 561, 562)
|
||||||
G165 = AND ( G114, G136, G131, G141 )
|
597 = AND(354, 563, 564, 565)
|
||||||
G166 = AND ( G142, G152, G147, G121 )
|
598 = AND(574, 575, 576, 445)
|
||||||
G167 = AND ( G143, G153, G119, G157 )
|
599 = AND(577, 578, 432, 579)
|
||||||
G168 = AND ( G144, G120, G148, G158 )
|
600 = AND(580, 419, 581, 582)
|
||||||
G169 = AND ( G118, G154, G149, G159 )
|
601 = AND(406, 583, 584, 585)
|
||||||
G170 = OR ( G162, G163, G164, G165 )
|
602 = OR(594, 595, 596, 597)
|
||||||
G171 = OR ( G166, G167, G168, G169 )
|
607 = OR(598, 599, 600, 601)
|
||||||
G172 = AND ( G118, G155, G119, G160, G170 )
|
620 = AND(406, 566, 432, 567, 602)
|
||||||
G173 = AND ( G118, G156, G150, G121, G170 )
|
625 = AND(406, 568, 569, 445, 602)
|
||||||
G174 = AND ( G145, G120, G119, G161, G170 )
|
630 = AND(570, 419, 432, 571, 602)
|
||||||
G175 = AND ( G146, G120, G151, G121, G170 )
|
635 = AND(572, 419, 573, 445, 602)
|
||||||
G176 = AND ( G114, G132, G115, G137, G171 )
|
640 = AND(354, 586, 380, 587, 607)
|
||||||
G177 = AND ( G114, G133, G127, G117, G171 )
|
645 = AND(354, 588, 589, 393, 607)
|
||||||
G178 = AND ( G122, G116, G115, G138, G171 )
|
650 = AND(590, 367, 380, 591, 607)
|
||||||
G179 = AND ( G123, G116, G128, G117, G171 )
|
655 = AND(592, 367, 593, 393, 607)
|
||||||
G180 = AND ( G114, G172 )
|
692 = AND(354, 620)
|
||||||
G181 = AND ( G116, G172 )
|
693 = AND(367, 620)
|
||||||
G182 = AND ( G115, G172 )
|
694 = AND(380, 620)
|
||||||
G183 = AND ( G117, G172 )
|
695 = AND(393, 620)
|
||||||
G184 = AND ( G114, G173 )
|
696 = AND(354, 625)
|
||||||
G185 = AND ( G116, G173 )
|
697 = AND(367, 625)
|
||||||
G186 = AND ( G115, G173 )
|
698 = AND(380, 625)
|
||||||
G187 = AND ( G117, G173 )
|
699 = AND(393, 625)
|
||||||
G188 = AND ( G114, G174 )
|
700 = AND(354, 630)
|
||||||
G189 = AND ( G116, G174 )
|
701 = AND(367, 630)
|
||||||
G190 = AND ( G115, G174 )
|
702 = AND(380, 630)
|
||||||
G191 = AND ( G117, G174 )
|
703 = AND(393, 630)
|
||||||
G192 = AND ( G114, G175 )
|
704 = AND(354, 635)
|
||||||
G193 = AND ( G116, G175 )
|
705 = AND(367, 635)
|
||||||
G194 = AND ( G115, G175 )
|
706 = AND(380, 635)
|
||||||
G195 = AND ( G117, G175 )
|
707 = AND(393, 635)
|
||||||
G196 = AND ( G118, G176 )
|
708 = AND(406, 640)
|
||||||
G197 = AND ( G120, G176 )
|
709 = AND(419, 640)
|
||||||
G198 = AND ( G119, G176 )
|
710 = AND(432, 640)
|
||||||
G199 = AND ( G121, G176 )
|
711 = AND(445, 640)
|
||||||
G200 = AND ( G118, G177 )
|
712 = AND(406, 645)
|
||||||
G201 = AND ( G120, G177 )
|
713 = AND(419, 645)
|
||||||
G202 = AND ( G119, G177 )
|
714 = AND(432, 645)
|
||||||
G203 = AND ( G121, G177 )
|
715 = AND(445, 645)
|
||||||
G204 = AND ( G118, G178 )
|
716 = AND(406, 650)
|
||||||
G205 = AND ( G120, G178 )
|
717 = AND(419, 650)
|
||||||
G206 = AND ( G119, G178 )
|
718 = AND(432, 650)
|
||||||
G207 = AND ( G121, G178 )
|
719 = AND(445, 650)
|
||||||
G208 = AND ( G118, G179 )
|
720 = AND(406, 655)
|
||||||
G209 = AND ( G120, G179 )
|
721 = AND(419, 655)
|
||||||
G210 = AND ( G119, G179 )
|
722 = AND(432, 655)
|
||||||
G211 = AND ( G121, G179 )
|
723 = AND(445, 655)
|
||||||
G212 = XOR ( G17, G180 )
|
724 = XOR(1, 692)
|
||||||
G213 = XOR ( G18, G181 )
|
725 = XOR(5, 693)
|
||||||
G214 = XOR ( G19, G182 )
|
726 = XOR(9, 694)
|
||||||
G215 = XOR ( G20, G183 )
|
727 = XOR(13, 695)
|
||||||
G216 = XOR ( G21, G184 )
|
728 = XOR(17, 696)
|
||||||
G217 = XOR ( G22, G185 )
|
729 = XOR(21, 697)
|
||||||
G218 = XOR ( G23, G186 )
|
730 = XOR(25, 698)
|
||||||
G219 = XOR ( G24, G187 )
|
731 = XOR(29, 699)
|
||||||
G220 = XOR ( G25, G188 )
|
732 = XOR(33, 700)
|
||||||
G221 = XOR ( G26, G189 )
|
733 = XOR(37, 701)
|
||||||
G222 = XOR ( G27, G190 )
|
734 = XOR(41, 702)
|
||||||
G223 = XOR ( G28, G191 )
|
735 = XOR(45, 703)
|
||||||
G224 = XOR ( G29, G192 )
|
736 = XOR(49, 704)
|
||||||
G225 = XOR ( G30, G193 )
|
737 = XOR(53, 705)
|
||||||
G226 = XOR ( G31, G194 )
|
738 = XOR(57, 706)
|
||||||
G227 = XOR ( G32, G195 )
|
739 = XOR(61, 707)
|
||||||
G228 = XOR ( G1, G196 )
|
740 = XOR(65, 708)
|
||||||
G229 = XOR ( G2, G197 )
|
741 = XOR(69, 709)
|
||||||
G230 = XOR ( G3, G198 )
|
742 = XOR(73, 710)
|
||||||
G231 = XOR ( G4, G199 )
|
743 = XOR(77, 711)
|
||||||
G232 = XOR ( G5, G200 )
|
744 = XOR(81, 712)
|
||||||
G233 = XOR ( G6, G201 )
|
745 = XOR(85, 713)
|
||||||
G234 = XOR ( G7, G202 )
|
746 = XOR(89, 714)
|
||||||
G235 = XOR ( G8, G203 )
|
747 = XOR(93, 715)
|
||||||
G236 = XOR ( G9, G204 )
|
748 = XOR(97, 716)
|
||||||
G237 = XOR ( G10, G205 )
|
749 = XOR(101, 717)
|
||||||
G238 = XOR ( G11, G206 )
|
750 = XOR(105, 718)
|
||||||
G239 = XOR ( G12, G207 )
|
751 = XOR(109, 719)
|
||||||
G240 = XOR ( G13, G208 )
|
752 = XOR(113, 720)
|
||||||
G241 = XOR ( G14, G209 )
|
753 = XOR(117, 721)
|
||||||
G242 = XOR ( G15, G210 )
|
754 = XOR(121, 722)
|
||||||
G243 = XOR ( G16, G211 )
|
755 = XOR(125, 723)
|
||||||
|
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
@ -1 +1,473 @@
|
|||||||
ERROR: BUFF is not valid gate!
|
# c880
|
||||||
|
|
||||||
|
INPUT(1)
|
||||||
|
INPUT(8)
|
||||||
|
INPUT(13)
|
||||||
|
INPUT(17)
|
||||||
|
INPUT(26)
|
||||||
|
INPUT(29)
|
||||||
|
INPUT(36)
|
||||||
|
INPUT(42)
|
||||||
|
INPUT(51)
|
||||||
|
INPUT(55)
|
||||||
|
INPUT(59)
|
||||||
|
INPUT(68)
|
||||||
|
INPUT(72)
|
||||||
|
INPUT(73)
|
||||||
|
INPUT(74)
|
||||||
|
INPUT(75)
|
||||||
|
INPUT(80)
|
||||||
|
INPUT(85)
|
||||||
|
INPUT(86)
|
||||||
|
INPUT(87)
|
||||||
|
INPUT(88)
|
||||||
|
INPUT(89)
|
||||||
|
INPUT(90)
|
||||||
|
INPUT(91)
|
||||||
|
INPUT(96)
|
||||||
|
INPUT(101)
|
||||||
|
INPUT(106)
|
||||||
|
INPUT(111)
|
||||||
|
INPUT(116)
|
||||||
|
INPUT(121)
|
||||||
|
INPUT(126)
|
||||||
|
INPUT(130)
|
||||||
|
INPUT(135)
|
||||||
|
INPUT(138)
|
||||||
|
INPUT(143)
|
||||||
|
INPUT(146)
|
||||||
|
INPUT(149)
|
||||||
|
INPUT(152)
|
||||||
|
INPUT(153)
|
||||||
|
INPUT(156)
|
||||||
|
INPUT(159)
|
||||||
|
INPUT(165)
|
||||||
|
INPUT(171)
|
||||||
|
INPUT(177)
|
||||||
|
INPUT(183)
|
||||||
|
INPUT(189)
|
||||||
|
INPUT(195)
|
||||||
|
INPUT(201)
|
||||||
|
INPUT(207)
|
||||||
|
INPUT(210)
|
||||||
|
INPUT(219)
|
||||||
|
INPUT(228)
|
||||||
|
INPUT(237)
|
||||||
|
INPUT(246)
|
||||||
|
INPUT(255)
|
||||||
|
INPUT(259)
|
||||||
|
INPUT(260)
|
||||||
|
INPUT(261)
|
||||||
|
INPUT(267)
|
||||||
|
INPUT(268)
|
||||||
|
|
||||||
|
OUTPUT(388)
|
||||||
|
OUTPUT(389)
|
||||||
|
OUTPUT(390)
|
||||||
|
OUTPUT(391)
|
||||||
|
OUTPUT(418)
|
||||||
|
OUTPUT(419)
|
||||||
|
OUTPUT(420)
|
||||||
|
OUTPUT(421)
|
||||||
|
OUTPUT(422)
|
||||||
|
OUTPUT(423)
|
||||||
|
OUTPUT(446)
|
||||||
|
OUTPUT(447)
|
||||||
|
OUTPUT(448)
|
||||||
|
OUTPUT(449)
|
||||||
|
OUTPUT(450)
|
||||||
|
OUTPUT(767)
|
||||||
|
OUTPUT(768)
|
||||||
|
OUTPUT(850)
|
||||||
|
OUTPUT(863)
|
||||||
|
OUTPUT(864)
|
||||||
|
OUTPUT(865)
|
||||||
|
OUTPUT(866)
|
||||||
|
OUTPUT(874)
|
||||||
|
OUTPUT(878)
|
||||||
|
OUTPUT(879)
|
||||||
|
OUTPUT(880)
|
||||||
|
|
||||||
|
269 = NAND(1, 8, 13, 17)
|
||||||
|
270 = NAND(1, 26, 13, 17)
|
||||||
|
273 = AND(29, 36, 42)
|
||||||
|
276 = AND(1, 26, 51)
|
||||||
|
279 = NAND(1, 8, 51, 17)
|
||||||
|
280 = NAND(1, 8, 13, 55)
|
||||||
|
284 = NAND(59, 42, 68, 72)
|
||||||
|
285 = NAND(29, 68)
|
||||||
|
286 = NAND(59, 68, 74)
|
||||||
|
287 = AND(29, 75, 80)
|
||||||
|
290 = AND(29, 75, 42)
|
||||||
|
291 = AND(29, 36, 80)
|
||||||
|
292 = AND(29, 36, 42)
|
||||||
|
293 = AND(59, 75, 80)
|
||||||
|
294 = AND(59, 75, 42)
|
||||||
|
295 = AND(59, 36, 80)
|
||||||
|
296 = AND(59, 36, 42)
|
||||||
|
297 = AND(85, 86)
|
||||||
|
298 = OR(87, 88)
|
||||||
|
301 = NAND(91, 96)
|
||||||
|
302 = OR(91, 96)
|
||||||
|
303 = NAND(101, 106)
|
||||||
|
304 = OR(101, 106)
|
||||||
|
305 = NAND(111, 116)
|
||||||
|
306 = OR(111, 116)
|
||||||
|
307 = NAND(121, 126)
|
||||||
|
308 = OR(121, 126)
|
||||||
|
309 = AND(8, 138)
|
||||||
|
310 = NOT(268)
|
||||||
|
316 = AND(51, 138)
|
||||||
|
317 = AND(17, 138)
|
||||||
|
318 = AND(152, 138)
|
||||||
|
319 = NAND(59, 156)
|
||||||
|
322 = NOR(17, 42)
|
||||||
|
323 = AND(17, 42)
|
||||||
|
324 = NAND(159, 165)
|
||||||
|
325 = OR(159, 165)
|
||||||
|
326 = NAND(171, 177)
|
||||||
|
327 = OR(171, 177)
|
||||||
|
328 = NAND(183, 189)
|
||||||
|
329 = OR(183, 189)
|
||||||
|
330 = NAND(195, 201)
|
||||||
|
331 = OR(195, 201)
|
||||||
|
332 = AND(210, 91)
|
||||||
|
333 = AND(210, 96)
|
||||||
|
334 = AND(210, 101)
|
||||||
|
335 = AND(210, 106)
|
||||||
|
336 = AND(210, 111)
|
||||||
|
337 = AND(255, 259)
|
||||||
|
338 = AND(210, 116)
|
||||||
|
339 = AND(255, 260)
|
||||||
|
340 = AND(210, 121)
|
||||||
|
341 = AND(255, 267)
|
||||||
|
342 = NOT(269)
|
||||||
|
343 = NOT(273)
|
||||||
|
344 = OR(270, 273)
|
||||||
|
345 = NOT(276)
|
||||||
|
346 = NOT(276)
|
||||||
|
347 = NOT(279)
|
||||||
|
348 = NOR(280, 284)
|
||||||
|
349 = OR(280, 285)
|
||||||
|
350 = OR(280, 286)
|
||||||
|
351 = NOT(293)
|
||||||
|
352 = NOT(294)
|
||||||
|
353 = NOT(295)
|
||||||
|
354 = NOT(296)
|
||||||
|
355 = NAND(89, 298)
|
||||||
|
356 = AND(90, 298)
|
||||||
|
357 = NAND(301, 302)
|
||||||
|
360 = NAND(303, 304)
|
||||||
|
363 = NAND(305, 306)
|
||||||
|
366 = NAND(307, 308)
|
||||||
|
369 = NOT(310)
|
||||||
|
375 = NOR(322, 323)
|
||||||
|
376 = NAND(324, 325)
|
||||||
|
379 = NAND(326, 327)
|
||||||
|
382 = NAND(328, 329)
|
||||||
|
385 = NAND(330, 331)
|
||||||
|
388 = BUFF(290)
|
||||||
|
389 = BUFF(291)
|
||||||
|
390 = BUFF(292)
|
||||||
|
391 = BUFF(297)
|
||||||
|
392 = OR(270, 343)
|
||||||
|
393 = NOT(345)
|
||||||
|
399 = NOT(346)
|
||||||
|
400 = AND(348, 73)
|
||||||
|
401 = NOT(349)
|
||||||
|
402 = NOT(350)
|
||||||
|
403 = NOT(355)
|
||||||
|
404 = NOT(357)
|
||||||
|
405 = NOT(360)
|
||||||
|
406 = AND(357, 360)
|
||||||
|
407 = NOT(363)
|
||||||
|
408 = NOT(366)
|
||||||
|
409 = AND(363, 366)
|
||||||
|
410 = NAND(347, 352)
|
||||||
|
411 = NOT(376)
|
||||||
|
412 = NOT(379)
|
||||||
|
413 = AND(376, 379)
|
||||||
|
414 = NOT(382)
|
||||||
|
415 = NOT(385)
|
||||||
|
416 = AND(382, 385)
|
||||||
|
417 = AND(210, 369)
|
||||||
|
418 = BUFF(342)
|
||||||
|
419 = BUFF(344)
|
||||||
|
420 = BUFF(351)
|
||||||
|
421 = BUFF(353)
|
||||||
|
422 = BUFF(354)
|
||||||
|
423 = BUFF(356)
|
||||||
|
424 = NOT(400)
|
||||||
|
425 = AND(404, 405)
|
||||||
|
426 = AND(407, 408)
|
||||||
|
427 = AND(319, 393, 55)
|
||||||
|
432 = AND(393, 17, 287)
|
||||||
|
437 = NAND(393, 287, 55)
|
||||||
|
442 = NAND(375, 59, 156, 393)
|
||||||
|
443 = NAND(393, 319, 17)
|
||||||
|
444 = AND(411, 412)
|
||||||
|
445 = AND(414, 415)
|
||||||
|
446 = BUFF(392)
|
||||||
|
447 = BUFF(399)
|
||||||
|
448 = BUFF(401)
|
||||||
|
449 = BUFF(402)
|
||||||
|
450 = BUFF(403)
|
||||||
|
451 = NOT(424)
|
||||||
|
460 = NOR(406, 425)
|
||||||
|
463 = NOR(409, 426)
|
||||||
|
466 = NAND(442, 410)
|
||||||
|
475 = AND(143, 427)
|
||||||
|
476 = AND(310, 432)
|
||||||
|
477 = AND(146, 427)
|
||||||
|
478 = AND(310, 432)
|
||||||
|
479 = AND(149, 427)
|
||||||
|
480 = AND(310, 432)
|
||||||
|
481 = AND(153, 427)
|
||||||
|
482 = AND(310, 432)
|
||||||
|
483 = NAND(443, 1)
|
||||||
|
488 = OR(369, 437)
|
||||||
|
489 = OR(369, 437)
|
||||||
|
490 = OR(369, 437)
|
||||||
|
491 = OR(369, 437)
|
||||||
|
492 = NOR(413, 444)
|
||||||
|
495 = NOR(416, 445)
|
||||||
|
498 = NAND(130, 460)
|
||||||
|
499 = OR(130, 460)
|
||||||
|
500 = NAND(463, 135)
|
||||||
|
501 = OR(463, 135)
|
||||||
|
502 = AND(91, 466)
|
||||||
|
503 = NOR(475, 476)
|
||||||
|
504 = AND(96, 466)
|
||||||
|
505 = NOR(477, 478)
|
||||||
|
506 = AND(101, 466)
|
||||||
|
507 = NOR(479, 480)
|
||||||
|
508 = AND(106, 466)
|
||||||
|
509 = NOR(481, 482)
|
||||||
|
510 = AND(143, 483)
|
||||||
|
511 = AND(111, 466)
|
||||||
|
512 = AND(146, 483)
|
||||||
|
513 = AND(116, 466)
|
||||||
|
514 = AND(149, 483)
|
||||||
|
515 = AND(121, 466)
|
||||||
|
516 = AND(153, 483)
|
||||||
|
517 = AND(126, 466)
|
||||||
|
518 = NAND(130, 492)
|
||||||
|
519 = OR(130, 492)
|
||||||
|
520 = NAND(495, 207)
|
||||||
|
521 = OR(495, 207)
|
||||||
|
522 = AND(451, 159)
|
||||||
|
523 = AND(451, 165)
|
||||||
|
524 = AND(451, 171)
|
||||||
|
525 = AND(451, 177)
|
||||||
|
526 = AND(451, 183)
|
||||||
|
527 = NAND(451, 189)
|
||||||
|
528 = NAND(451, 195)
|
||||||
|
529 = NAND(451, 201)
|
||||||
|
530 = NAND(498, 499)
|
||||||
|
533 = NAND(500, 501)
|
||||||
|
536 = NOR(309, 502)
|
||||||
|
537 = NOR(316, 504)
|
||||||
|
538 = NOR(317, 506)
|
||||||
|
539 = NOR(318, 508)
|
||||||
|
540 = NOR(510, 511)
|
||||||
|
541 = NOR(512, 513)
|
||||||
|
542 = NOR(514, 515)
|
||||||
|
543 = NOR(516, 517)
|
||||||
|
544 = NAND(518, 519)
|
||||||
|
547 = NAND(520, 521)
|
||||||
|
550 = NOT(530)
|
||||||
|
551 = NOT(533)
|
||||||
|
552 = AND(530, 533)
|
||||||
|
553 = NAND(536, 503)
|
||||||
|
557 = NAND(537, 505)
|
||||||
|
561 = NAND(538, 507)
|
||||||
|
565 = NAND(539, 509)
|
||||||
|
569 = NAND(488, 540)
|
||||||
|
573 = NAND(489, 541)
|
||||||
|
577 = NAND(490, 542)
|
||||||
|
581 = NAND(491, 543)
|
||||||
|
585 = NOT(544)
|
||||||
|
586 = NOT(547)
|
||||||
|
587 = AND(544, 547)
|
||||||
|
588 = AND(550, 551)
|
||||||
|
589 = AND(585, 586)
|
||||||
|
590 = NAND(553, 159)
|
||||||
|
593 = OR(553, 159)
|
||||||
|
596 = AND(246, 553)
|
||||||
|
597 = NAND(557, 165)
|
||||||
|
600 = OR(557, 165)
|
||||||
|
605 = AND(246, 557)
|
||||||
|
606 = NAND(561, 171)
|
||||||
|
609 = OR(561, 171)
|
||||||
|
615 = AND(246, 561)
|
||||||
|
616 = NAND(565, 177)
|
||||||
|
619 = OR(565, 177)
|
||||||
|
624 = AND(246, 565)
|
||||||
|
625 = NAND(569, 183)
|
||||||
|
628 = OR(569, 183)
|
||||||
|
631 = AND(246, 569)
|
||||||
|
632 = NAND(573, 189)
|
||||||
|
635 = OR(573, 189)
|
||||||
|
640 = AND(246, 573)
|
||||||
|
641 = NAND(577, 195)
|
||||||
|
644 = OR(577, 195)
|
||||||
|
650 = AND(246, 577)
|
||||||
|
651 = NAND(581, 201)
|
||||||
|
654 = OR(581, 201)
|
||||||
|
659 = AND(246, 581)
|
||||||
|
660 = NOR(552, 588)
|
||||||
|
661 = NOR(587, 589)
|
||||||
|
662 = NOT(590)
|
||||||
|
665 = AND(593, 590)
|
||||||
|
669 = NOR(596, 522)
|
||||||
|
670 = NOT(597)
|
||||||
|
673 = AND(600, 597)
|
||||||
|
677 = NOR(605, 523)
|
||||||
|
678 = NOT(606)
|
||||||
|
682 = AND(609, 606)
|
||||||
|
686 = NOR(615, 524)
|
||||||
|
687 = NOT(616)
|
||||||
|
692 = AND(619, 616)
|
||||||
|
696 = NOR(624, 525)
|
||||||
|
697 = NOT(625)
|
||||||
|
700 = AND(628, 625)
|
||||||
|
704 = NOR(631, 526)
|
||||||
|
705 = NOT(632)
|
||||||
|
708 = AND(635, 632)
|
||||||
|
712 = NOR(337, 640)
|
||||||
|
713 = NOT(641)
|
||||||
|
717 = AND(644, 641)
|
||||||
|
721 = NOR(339, 650)
|
||||||
|
722 = NOT(651)
|
||||||
|
727 = AND(654, 651)
|
||||||
|
731 = NOR(341, 659)
|
||||||
|
732 = NAND(654, 261)
|
||||||
|
733 = NAND(644, 654, 261)
|
||||||
|
734 = NAND(635, 644, 654, 261)
|
||||||
|
735 = NOT(662)
|
||||||
|
736 = AND(228, 665)
|
||||||
|
737 = AND(237, 662)
|
||||||
|
738 = NOT(670)
|
||||||
|
739 = AND(228, 673)
|
||||||
|
740 = AND(237, 670)
|
||||||
|
741 = NOT(678)
|
||||||
|
742 = AND(228, 682)
|
||||||
|
743 = AND(237, 678)
|
||||||
|
744 = NOT(687)
|
||||||
|
745 = AND(228, 692)
|
||||||
|
746 = AND(237, 687)
|
||||||
|
747 = NOT(697)
|
||||||
|
748 = AND(228, 700)
|
||||||
|
749 = AND(237, 697)
|
||||||
|
750 = NOT(705)
|
||||||
|
751 = AND(228, 708)
|
||||||
|
752 = AND(237, 705)
|
||||||
|
753 = NOT(713)
|
||||||
|
754 = AND(228, 717)
|
||||||
|
755 = AND(237, 713)
|
||||||
|
756 = NOT(722)
|
||||||
|
757 = NOR(727, 261)
|
||||||
|
758 = AND(727, 261)
|
||||||
|
759 = AND(228, 727)
|
||||||
|
760 = AND(237, 722)
|
||||||
|
761 = NAND(644, 722)
|
||||||
|
762 = NAND(635, 713)
|
||||||
|
763 = NAND(635, 644, 722)
|
||||||
|
764 = NAND(609, 687)
|
||||||
|
765 = NAND(600, 678)
|
||||||
|
766 = NAND(600, 609, 687)
|
||||||
|
767 = BUFF(660)
|
||||||
|
768 = BUFF(661)
|
||||||
|
769 = NOR(736, 737)
|
||||||
|
770 = NOR(739, 740)
|
||||||
|
771 = NOR(742, 743)
|
||||||
|
772 = NOR(745, 746)
|
||||||
|
773 = NAND(750, 762, 763, 734)
|
||||||
|
777 = NOR(748, 749)
|
||||||
|
778 = NAND(753, 761, 733)
|
||||||
|
781 = NOR(751, 752)
|
||||||
|
782 = NAND(756, 732)
|
||||||
|
785 = NOR(754, 755)
|
||||||
|
786 = NOR(757, 758)
|
||||||
|
787 = NOR(759, 760)
|
||||||
|
788 = NOR(700, 773)
|
||||||
|
789 = AND(700, 773)
|
||||||
|
790 = NOR(708, 778)
|
||||||
|
791 = AND(708, 778)
|
||||||
|
792 = NOR(717, 782)
|
||||||
|
793 = AND(717, 782)
|
||||||
|
794 = AND(219, 786)
|
||||||
|
795 = NAND(628, 773)
|
||||||
|
796 = NAND(795, 747)
|
||||||
|
802 = NOR(788, 789)
|
||||||
|
803 = NOR(790, 791)
|
||||||
|
804 = NOR(792, 793)
|
||||||
|
805 = NOR(340, 794)
|
||||||
|
806 = NOR(692, 796)
|
||||||
|
807 = AND(692, 796)
|
||||||
|
808 = AND(219, 802)
|
||||||
|
809 = AND(219, 803)
|
||||||
|
810 = AND(219, 804)
|
||||||
|
811 = NAND(805, 787, 731, 529)
|
||||||
|
812 = NAND(619, 796)
|
||||||
|
813 = NAND(609, 619, 796)
|
||||||
|
814 = NAND(600, 609, 619, 796)
|
||||||
|
815 = NAND(738, 765, 766, 814)
|
||||||
|
819 = NAND(741, 764, 813)
|
||||||
|
822 = NAND(744, 812)
|
||||||
|
825 = NOR(806, 807)
|
||||||
|
826 = NOR(335, 808)
|
||||||
|
827 = NOR(336, 809)
|
||||||
|
828 = NOR(338, 810)
|
||||||
|
829 = NOT(811)
|
||||||
|
830 = NOR(665, 815)
|
||||||
|
831 = AND(665, 815)
|
||||||
|
832 = NOR(673, 819)
|
||||||
|
833 = AND(673, 819)
|
||||||
|
834 = NOR(682, 822)
|
||||||
|
835 = AND(682, 822)
|
||||||
|
836 = AND(219, 825)
|
||||||
|
837 = NAND(826, 777, 704)
|
||||||
|
838 = NAND(827, 781, 712, 527)
|
||||||
|
839 = NAND(828, 785, 721, 528)
|
||||||
|
840 = NOT(829)
|
||||||
|
841 = NAND(815, 593)
|
||||||
|
842 = NOR(830, 831)
|
||||||
|
843 = NOR(832, 833)
|
||||||
|
844 = NOR(834, 835)
|
||||||
|
845 = NOR(334, 836)
|
||||||
|
846 = NOT(837)
|
||||||
|
847 = NOT(838)
|
||||||
|
848 = NOT(839)
|
||||||
|
849 = AND(735, 841)
|
||||||
|
850 = BUFF(840)
|
||||||
|
851 = AND(219, 842)
|
||||||
|
852 = AND(219, 843)
|
||||||
|
853 = AND(219, 844)
|
||||||
|
854 = NAND(845, 772, 696)
|
||||||
|
855 = NOT(846)
|
||||||
|
856 = NOT(847)
|
||||||
|
857 = NOT(848)
|
||||||
|
858 = NOT(849)
|
||||||
|
859 = NOR(417, 851)
|
||||||
|
860 = NOR(332, 852)
|
||||||
|
861 = NOR(333, 853)
|
||||||
|
862 = NOT(854)
|
||||||
|
863 = BUFF(855)
|
||||||
|
864 = BUFF(856)
|
||||||
|
865 = BUFF(857)
|
||||||
|
866 = BUFF(858)
|
||||||
|
867 = NAND(859, 769, 669)
|
||||||
|
868 = NAND(860, 770, 677)
|
||||||
|
869 = NAND(861, 771, 686)
|
||||||
|
870 = NOT(862)
|
||||||
|
871 = NOT(867)
|
||||||
|
872 = NOT(868)
|
||||||
|
873 = NOT(869)
|
||||||
|
874 = BUFF(870)
|
||||||
|
875 = NOT(871)
|
||||||
|
876 = NOT(872)
|
||||||
|
877 = NOT(873)
|
||||||
|
878 = BUFF(875)
|
||||||
|
879 = BUFF(876)
|
||||||
|
880 = BUFF(877)
|
||||||
|
1152
otuput.txt
Normal file
1152
otuput.txt
Normal file
File diff suppressed because it is too large
Load Diff
82
src/checker.cpp
Normal file
82
src/checker.cpp
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
#include <unordered_set>
|
||||||
|
|
||||||
|
#include "circuit.h"
|
||||||
|
|
||||||
|
int LUTCircuit::check() {
|
||||||
|
|
||||||
|
// static bool init = 0;
|
||||||
|
// static std::unordered_set<Gate*> dt;
|
||||||
|
|
||||||
|
printf("checking circuit ...\n");
|
||||||
|
|
||||||
|
int score_value_unsatisfied_cost = 0;
|
||||||
|
int score_fault_detected_weight = 0;
|
||||||
|
int score_fault_propagated_weight = 0;
|
||||||
|
int score_fault_update_cost = 0;
|
||||||
|
|
||||||
|
for(LUT* lut : luts) {
|
||||||
|
assert(lut->vsat == (lut->value == lut->cal_value()));
|
||||||
|
|
||||||
|
if(!lut->vsat) score_value_unsatisfied_cost += lut->vunat_cost;
|
||||||
|
|
||||||
|
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];
|
||||||
|
|
||||||
|
// if(lut->gate->name == "new_n546_") {
|
||||||
|
// printf("new_n546_: %d %d %d %d\n", t_fd[0], t_fd[1], t_fpl[0], t_fpl[1]);
|
||||||
|
// }
|
||||||
|
|
||||||
|
// if(t_fd[0] || t_fd[1]) {
|
||||||
|
// printf("find: %s\n", g->name.c_str());
|
||||||
|
// }
|
||||||
|
|
||||||
|
// printf("%10s - %10s fd %d %d fpl %d %d\n", lut->gate->name.c_str(), g->name.c_str(), t_fd[0], t_fd[1], t_fpl[0], t_fpl[1]);
|
||||||
|
|
||||||
|
// if(g->name == "new_n549_") {
|
||||||
|
// printf("new_n549_: %d %d %d %d fa: %s\n", t_fd[0], t_fd[1], t_fpl[0], t_fpl[1], lut->gate->name.c_str());
|
||||||
|
// }
|
||||||
|
|
||||||
|
score_fault_detected_weight += t_fd[0] * g->fault_detected_weight[0];
|
||||||
|
score_fault_detected_weight += t_fd[1] * g->fault_detected_weight[1];
|
||||||
|
|
||||||
|
score_fault_propagated_weight += t_fpl[0] * g->fault_propagated_weight[0];
|
||||||
|
score_fault_propagated_weight += t_fpl[1] * g->fault_propagated_weight[1];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
printf("score_value_unsatisfied_cost: %d\n", score_value_unsatisfied_cost);
|
||||||
|
printf("score_fault_detected_weight: %d\n", score_fault_detected_weight);
|
||||||
|
printf("score_fault_propagated_weight: %d\n", score_fault_propagated_weight);
|
||||||
|
printf("score_fault_update_cost: %d\n", score_fault_update_cost);
|
||||||
|
|
||||||
|
int score = - score_value_unsatisfied_cost + score_fault_detected_weight + score_fault_propagated_weight - score_fault_update_cost;
|
||||||
|
|
||||||
|
printf("score: %d\n", score);
|
||||||
|
|
||||||
|
return score;
|
||||||
|
}
|
195
src/circuit.cpp
195
src/circuit.cpp
@ -1,70 +1,56 @@
|
|||||||
|
#include <set>
|
||||||
|
#include <assert.h>
|
||||||
|
|
||||||
#include "circuit.h"
|
#include "circuit.h"
|
||||||
#include "set"
|
|
||||||
#include "paras.h"
|
#include "paras.h"
|
||||||
|
|
||||||
|
|
||||||
LUT* build_lut(Gate* gate) {
|
void LUTCircuit::print() {
|
||||||
|
|
||||||
// printf("=== build %s\n", gate->name.c_str());
|
std::set<Gate*> st;
|
||||||
|
|
||||||
LUT* lut = new LUT();
|
int total_gate = 0;
|
||||||
lut->fanout = gate;
|
|
||||||
lut->gates.push_back(gate);
|
|
||||||
|
|
||||||
std::set<Gate*> fanins;
|
printf("PIs: ( ");
|
||||||
|
for(LUT* lut : PIs) {
|
||||||
|
printf("%s ", lut->gate->name.c_str());
|
||||||
|
}
|
||||||
|
printf(")\n");
|
||||||
|
printf("POs: ( ");
|
||||||
|
for(LUT* lut : POs) {
|
||||||
|
printf("%s ", lut->gate->name.c_str());
|
||||||
|
}
|
||||||
|
printf(")\n");
|
||||||
|
|
||||||
for(Gate* g : gate->fanins) {
|
for(LUT* lut : luts) {
|
||||||
fanins.insert(g);
|
|
||||||
// printf("init fanins: %s\n", g->name.c_str());
|
printf("[v:%d vs:%d fd0:%d fd1:%d] ", lut->value, lut->vsat, lut->fd[0], lut->fd[1]);
|
||||||
|
printf("lut: %s inputs: ( ", lut->gate->name.c_str());
|
||||||
|
|
||||||
|
total_gate += lut->inner_gates.size();
|
||||||
|
|
||||||
|
for(LUT* in : lut->fanins) {
|
||||||
|
printf("%s ", in->gate->name.c_str());
|
||||||
|
}
|
||||||
|
printf(")\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
while(true) {
|
printf("total gate: %d\n", total_gate);
|
||||||
|
|
||||||
std::vector<Gate*> candidates;
|
|
||||||
for(Gate* fanin : fanins) {
|
|
||||||
if(fanin->fanouts.size() >= 2) continue;
|
|
||||||
if(fanin->isPI) continue;
|
|
||||||
|
|
||||||
int add = 0;
|
|
||||||
for(Gate* in : fanin->fanins) {
|
|
||||||
if(fanins.count(in) == 0) {
|
|
||||||
add++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if(fanins.size() - 1 + add <= OPT(lut)) {
|
|
||||||
candidates.push_back(fanin);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if(candidates.size() == 0) break;
|
|
||||||
|
|
||||||
Gate* random_gate = candidates[rand()%candidates.size()];
|
|
||||||
|
|
||||||
lut->gates.push_back(random_gate);
|
|
||||||
fanins.erase(random_gate);
|
|
||||||
|
|
||||||
for(Gate* in : random_gate->fanins) {
|
|
||||||
fanins.insert(in);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
for(Gate* in : fanins) {
|
|
||||||
lut->fanins.push_back(in);
|
|
||||||
}
|
|
||||||
|
|
||||||
return lut;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
LUTCircuit* Circuit::build_lut_circuit() {
|
LUTCircuit* Circuit::build_lut_circuit() {
|
||||||
|
|
||||||
|
LUTCircuit* C = new LUTCircuit();
|
||||||
|
|
||||||
|
std::unordered_map<Gate*, LUT*> gate2LUT;
|
||||||
|
|
||||||
std::queue<Gate*> q;
|
std::queue<Gate*> q;
|
||||||
std::set<Gate*> done;
|
std::set<Gate*> done;
|
||||||
|
|
||||||
for(Gate* gate : gates) {
|
for(Gate* gate : gates) {
|
||||||
// assert fanouts >= 2
|
// assert fanouts >= 2
|
||||||
if(gate->fanouts.size() >= 2 || gate->isPI || gate->isPO) {
|
if(gate->fanouts.size() >= 2 || gate->isPI || (gate->isPO && gate->fanouts.size() == 0)) {
|
||||||
q.push(gate);
|
q.push(gate);
|
||||||
done.insert(gate);
|
done.insert(gate);
|
||||||
}
|
}
|
||||||
@ -74,21 +60,120 @@ LUTCircuit* Circuit::build_lut_circuit() {
|
|||||||
Gate* gate = q.front();
|
Gate* gate = q.front();
|
||||||
q.pop();
|
q.pop();
|
||||||
|
|
||||||
LUT* lut = build_lut(gate);
|
LUT* lut = new LUT(gate);
|
||||||
|
|
||||||
printf("size: %d lut: %s inputs: ( ", lut->fanins.size(), lut->fanout->name.c_str());
|
gate2LUT[gate] = lut;
|
||||||
for(Gate* in : lut->fanins) {
|
|
||||||
printf("%s ", in->name.c_str());
|
|
||||||
}
|
|
||||||
printf(")\n");
|
|
||||||
|
|
||||||
for(Gate* in : lut->fanins) {
|
// printf("size: %d lut: %s inputs: ( ", lut->inner_gates.size(), lut->gate->name.c_str());
|
||||||
|
// for(Gate* in : lut->__gate_fanins) {
|
||||||
|
// printf("%s ", in->name.c_str());
|
||||||
|
// }
|
||||||
|
// printf(") [");
|
||||||
|
|
||||||
|
// for(Gate* inner : lut->inner_gates) {
|
||||||
|
// printf("%s ", inner->name.c_str());
|
||||||
|
// }
|
||||||
|
// printf("]\n");
|
||||||
|
|
||||||
|
for(Gate* in : lut->__gate_fanins) {
|
||||||
if(in->fanouts.size() < 2 && !in->isPI && done.count(in) == 0) {
|
if(in->fanouts.size() < 2 && !in->isPI && done.count(in) == 0) {
|
||||||
done.insert(in);
|
done.insert(in);
|
||||||
q.push(in);
|
q.push(in);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
C->luts.push_back(lut);
|
||||||
}
|
}
|
||||||
|
|
||||||
return nullptr;
|
for(LUT* lut : C->luts) {
|
||||||
|
|
||||||
|
lut->name = lut->gate->name.c_str();
|
||||||
|
|
||||||
|
std::sort(lut->inner_gates.begin(), lut->inner_gates.end(), [](Gate* a, Gate* b) {
|
||||||
|
return a->id < b->id;
|
||||||
|
});
|
||||||
|
|
||||||
|
for(Gate* in : lut->__gate_fanins) {
|
||||||
|
|
||||||
|
// if(gate2LUT.count(in) == 0) {
|
||||||
|
// printf("error: %s %s\n", in->name.c_str(), lut->name);
|
||||||
|
// // exit()
|
||||||
|
// }
|
||||||
|
assert(gate2LUT.count(in) > 0);
|
||||||
|
|
||||||
|
|
||||||
|
lut->fanins.push_back(gate2LUT[in]);
|
||||||
|
gate2LUT[in]->fanouts.push_back(lut);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(lut->isPI) {
|
||||||
|
C->PIs.push_back(lut);
|
||||||
|
lut->isPI = 1;
|
||||||
|
}
|
||||||
|
if(lut->isPO) {
|
||||||
|
C->POs.push_back(lut);
|
||||||
|
lut->isPO = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for(LUT* lut : C->luts) {
|
||||||
|
C->rtopo_luts.push_back(lut);
|
||||||
|
}
|
||||||
|
|
||||||
|
std::sort(C->luts.begin(), C->luts.end(), [](LUT* a, LUT* b) {
|
||||||
|
return a->gate->id < b->gate->id;
|
||||||
|
});
|
||||||
|
|
||||||
|
std::sort(C->rtopo_luts.begin(), C->rtopo_luts.end(), [](LUT* a, LUT* b) {
|
||||||
|
return a->gate->rtopo < b->gate->rtopo;
|
||||||
|
});
|
||||||
|
|
||||||
|
return C;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Circuit::init_topo_index() {
|
||||||
|
int topo = 1;
|
||||||
|
std::queue<Gate*> q;
|
||||||
|
|
||||||
|
std::unordered_map<Gate*, int> ins;
|
||||||
|
for(Gate* gate : gates) {
|
||||||
|
ins[gate] = gate->fanins.size();
|
||||||
|
}
|
||||||
|
|
||||||
|
for(auto in : PIs) {
|
||||||
|
in->id = topo++;
|
||||||
|
q.push(in);
|
||||||
|
}
|
||||||
|
|
||||||
|
while(!q.empty()) {
|
||||||
|
Gate* g = q.front(); q.pop();
|
||||||
|
for(Gate* out : g->fanouts) {
|
||||||
|
ins[out]--;
|
||||||
|
if(ins[out] == 0) {
|
||||||
|
out->id = topo++;
|
||||||
|
q.push(out);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 计算反向拓扑序
|
||||||
|
topo = 1;
|
||||||
|
std::unordered_map<Gate*, int> outs;
|
||||||
|
|
||||||
|
for(auto out : POs) {
|
||||||
|
out->rtopo = topo++;
|
||||||
|
q.push(out);
|
||||||
|
}
|
||||||
|
|
||||||
|
while(!q.empty()) {
|
||||||
|
Gate* g = q.front(); q.pop();
|
||||||
|
rtopo_gates.push_back(g);
|
||||||
|
for(Gate* in : g->fanins) {
|
||||||
|
outs[in]++;
|
||||||
|
if(outs[in] == in->fanouts.size()) {
|
||||||
|
in->rtopo = topo++;
|
||||||
|
q.push(in);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
@ -10,6 +10,21 @@ public:
|
|||||||
std::vector<LUT*> PIs;
|
std::vector<LUT*> PIs;
|
||||||
std::vector<LUT*> POs;
|
std::vector<LUT*> POs;
|
||||||
std::vector<LUT*> luts;
|
std::vector<LUT*> luts;
|
||||||
|
std::vector<LUT*> rtopo_luts;
|
||||||
|
|
||||||
|
void print();
|
||||||
|
|
||||||
|
// local search
|
||||||
|
|
||||||
|
void ls_update();
|
||||||
|
void ls_pick();
|
||||||
|
void ls_flip(LUT *lut);
|
||||||
|
void ls_main();
|
||||||
|
|
||||||
|
// checker
|
||||||
|
|
||||||
|
int check();
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class Circuit {
|
class Circuit {
|
||||||
@ -24,4 +39,6 @@ std::unordered_map<std::string, Gate*> name2gate;
|
|||||||
void parse_from_file(const char *filename);
|
void parse_from_file(const char *filename);
|
||||||
LUTCircuit* build_lut_circuit();
|
LUTCircuit* build_lut_circuit();
|
||||||
|
|
||||||
|
void init_topo_index();
|
||||||
|
|
||||||
};
|
};
|
112
src/gate.cpp
Normal file
112
src/gate.cpp
Normal file
@ -0,0 +1,112 @@
|
|||||||
|
#include "circuit.h"
|
||||||
|
|
||||||
|
#include "assert.h"
|
||||||
|
|
||||||
|
int Gate::cal_propagate_len(bool x) {
|
||||||
|
|
||||||
|
int fpl[2];
|
||||||
|
fpl[0] = fpl[1] = 0;
|
||||||
|
|
||||||
|
for(Gate* out : fanouts) {
|
||||||
|
if(!out->is_detected(this)) continue;
|
||||||
|
fpl[!value] = std::max(fpl[!value], out->fault_propagated_len[!out->value] + 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
return fpl[x];
|
||||||
|
}
|
||||||
|
|
||||||
|
bool Gate::is_detected(Gate* one_of_input) {
|
||||||
|
one_of_input->value = !one_of_input->value;
|
||||||
|
bool detect = cal_value() != value;
|
||||||
|
one_of_input->value = !one_of_input->value;
|
||||||
|
return (cal_value() == value) && detect;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool Gate::is_propagated() {
|
||||||
|
return fault_detected[0] || fault_detected[1];
|
||||||
|
}
|
||||||
|
|
||||||
|
bool Gate::cal_fault_detected(bool x) {
|
||||||
|
if(isPO) {
|
||||||
|
if(x == 0) return value;
|
||||||
|
else return !value;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool sa0 = 0;
|
||||||
|
bool sa1 = 0;
|
||||||
|
|
||||||
|
for(Gate* out : fanouts) {
|
||||||
|
if(!out->is_propagated()) continue;
|
||||||
|
|
||||||
|
if(out->cal_value() != out->value) continue;
|
||||||
|
|
||||||
|
this->value = !this->value;
|
||||||
|
bool detect = out->cal_value() != out->value;
|
||||||
|
this->value = !this->value;
|
||||||
|
if(!detect) continue;
|
||||||
|
|
||||||
|
sa0 |= this->value;
|
||||||
|
sa1 |= !this->value;
|
||||||
|
}
|
||||||
|
if(x == 0) return sa0;
|
||||||
|
else return sa1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int Gate::cal_value() {
|
||||||
|
int res;
|
||||||
|
|
||||||
|
switch(type) {
|
||||||
|
case NOT:
|
||||||
|
res = !fanins[0]->value;
|
||||||
|
break;
|
||||||
|
case BUF:
|
||||||
|
res = fanins[0]->value;
|
||||||
|
break;
|
||||||
|
case AND:
|
||||||
|
res = fanins[0]->value;
|
||||||
|
for(int i=1; i<fanins.size(); i++) {
|
||||||
|
res &= fanins[i]->value;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case NAND:
|
||||||
|
res = fanins[0]->value;
|
||||||
|
for(int i=1; i<fanins.size(); i++) {
|
||||||
|
res &= fanins[i]->value;
|
||||||
|
}
|
||||||
|
res = !res;
|
||||||
|
break;
|
||||||
|
case OR:
|
||||||
|
res = fanins[0]->value;
|
||||||
|
for(int i=1; i<fanins.size(); i++) {
|
||||||
|
res |= fanins[i]->value;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case NOR:
|
||||||
|
res = fanins[0]->value;
|
||||||
|
for(int i=1; i<fanins.size(); i++) {
|
||||||
|
res |= fanins[i]->value;
|
||||||
|
}
|
||||||
|
res = !res;
|
||||||
|
break;
|
||||||
|
case XOR:
|
||||||
|
res = fanins[0]->value;
|
||||||
|
for(int i=1; i<fanins.size(); i++) {
|
||||||
|
res ^= fanins[i]->value;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case XNOR:
|
||||||
|
res = fanins[0]->value;
|
||||||
|
for(int i=1; i<fanins.size(); i++) {
|
||||||
|
res ^= fanins[i]->value;
|
||||||
|
}
|
||||||
|
res = !res;
|
||||||
|
break;
|
||||||
|
case INPUT:
|
||||||
|
res = value;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
assert(false);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return res;
|
||||||
|
}
|
31
src/gate.h
31
src/gate.h
@ -26,21 +26,12 @@ public:
|
|||||||
std::vector<Gate*> fanins;
|
std::vector<Gate*> fanins;
|
||||||
std::vector<Gate*> reigon;
|
std::vector<Gate*> reigon;
|
||||||
|
|
||||||
// circuit-ls info
|
|
||||||
int value_satisfied;
|
|
||||||
int value_unsatisfied_cost;
|
|
||||||
|
|
||||||
int fault_propagated_len[2];
|
int fault_propagated_len[2];
|
||||||
int fault_propagated_weight[2];
|
int fault_propagated_weight[2];
|
||||||
|
|
||||||
int fault_detected[2];
|
int fault_detected[2];
|
||||||
int fault_detected_weight[2];
|
int fault_detected_weight[2];
|
||||||
|
|
||||||
int fault_need_update;
|
|
||||||
int fault_need_update_cost;
|
|
||||||
|
|
||||||
int CC;
|
|
||||||
|
|
||||||
bool is_propagated();
|
bool is_propagated();
|
||||||
|
|
||||||
int cal_value();
|
int cal_value();
|
||||||
@ -51,9 +42,6 @@ public:
|
|||||||
|
|
||||||
int cal_propagate_len(bool x);
|
int cal_propagate_len(bool x);
|
||||||
|
|
||||||
void update_gate_property();
|
|
||||||
void update_gate_statistics();
|
|
||||||
|
|
||||||
// ( partical ) score
|
// ( partical ) score
|
||||||
|
|
||||||
// score(x) = for y in neibor(x) { ~V_x,V_y make - ~V_x,V_y break }
|
// score(x) = for y in neibor(x) { ~V_x,V_y make - ~V_x,V_y break }
|
||||||
@ -62,23 +50,4 @@ public:
|
|||||||
|
|
||||||
// [ cal_FPLS(~Vx, fanouts) - cal_FPLS(Vx, fanouts) ] * - FPLS_COST(x)
|
// [ cal_FPLS(~Vx, fanouts) - cal_FPLS(Vx, fanouts) ] * - FPLS_COST(x)
|
||||||
// [ cal_FDS(~Vx, fanouts) - cal_FDS(Vx, fanouts) ] * - FDS_COST(x)
|
// [ cal_FDS(~Vx, fanouts) - cal_FDS(Vx, fanouts) ] * - FDS_COST(x)
|
||||||
|
|
||||||
int score;
|
|
||||||
|
|
||||||
int score_value_unsatisfied_cost;
|
|
||||||
int score_fault_propagated_weight[2];
|
|
||||||
int score_fault_detected_weight[2];
|
|
||||||
int score_fault_update_cost;
|
|
||||||
|
|
||||||
// score calculation function
|
|
||||||
|
|
||||||
int cal_score(int debug=0);
|
|
||||||
|
|
||||||
int cal_value_unsatisfied_cost();
|
|
||||||
|
|
||||||
int cal_score_fault_propagated_weight(int sa);
|
|
||||||
|
|
||||||
int cal_score_fault_detected_weight(int sa);
|
|
||||||
|
|
||||||
int cal_score_fault_update_cost();
|
|
||||||
};
|
};
|
125
src/ls.cpp
Normal file
125
src/ls.cpp
Normal file
@ -0,0 +1,125 @@
|
|||||||
|
#include <set>
|
||||||
|
|
||||||
|
#include "circuit.h"
|
||||||
|
|
||||||
|
void LUTCircuit::ls_flip(LUT *lut) {
|
||||||
|
|
||||||
|
lut->uptag = 0;
|
||||||
|
lut->value = !lut->value;
|
||||||
|
if(!lut->isPI) lut->vsat = !lut->vsat;
|
||||||
|
|
||||||
|
for(LUT* out : lut->fanouts) {
|
||||||
|
out->vsat = (out->cal_value() == out->value);
|
||||||
|
}
|
||||||
|
|
||||||
|
lut->cal_fault_info(lut->fd, lut->fpl);
|
||||||
|
|
||||||
|
for(LUT* r : lut->reigon) {
|
||||||
|
int t_fd[2], t_fpl[2];
|
||||||
|
r->cal_fault_info(t_fd, t_fpl);
|
||||||
|
|
||||||
|
if(t_fd[0] != r->fd[0] || t_fd[1] != r->fd[1] || t_fpl[0] != r->fpl[0] || t_fpl[1] != r->fpl[1]) {
|
||||||
|
r->uptag = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// lut->cal_score();
|
||||||
|
// for(LUT* r : lut->reigon) {
|
||||||
|
// r->cal_score();
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
|
||||||
|
void LUTCircuit::ls_main() {
|
||||||
|
printf("====== local search start ======\n");
|
||||||
|
|
||||||
|
printf("initing lookup table ...\n");
|
||||||
|
for(LUT* lut : luts) {
|
||||||
|
lut->init_lookup_table();
|
||||||
|
}
|
||||||
|
|
||||||
|
for(LUT* lut : luts) {
|
||||||
|
for(LUT* out :lut->fanouts) {
|
||||||
|
for(int i=0; i<out->fanins.size(); i++) {
|
||||||
|
if(out->fanins[i] == lut) {
|
||||||
|
lut->fault_info.push_back(out->fault_table[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for(LUT* lut : luts) {
|
||||||
|
std::set<LUT*> t_reigon;
|
||||||
|
for(LUT* out : lut->fanouts) {
|
||||||
|
for(LUT* in : out->fanins) {
|
||||||
|
t_reigon.insert(in);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for(LUT* in : lut->fanins) {
|
||||||
|
t_reigon.insert(in);
|
||||||
|
}
|
||||||
|
t_reigon.erase(lut);
|
||||||
|
for(LUT* r : t_reigon) {
|
||||||
|
lut->reigon.push_back(r);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
printf("generating initial solution ...\n");
|
||||||
|
|
||||||
|
for(LUT* lut : luts) {
|
||||||
|
lut->up_cost = 1;
|
||||||
|
lut->vunat_cost = 1;
|
||||||
|
for(Gate* g : lut->inner_gates) {
|
||||||
|
g->fault_detected_weight[0] = g->fault_detected_weight[1] = 1;
|
||||||
|
g->fault_propagated_weight[0] = g->fault_propagated_weight[1] = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for(LUT* lut : luts) {
|
||||||
|
lut->uptag = 0;
|
||||||
|
lut->value = rand() % 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
for(LUT* lut : luts) {
|
||||||
|
lut->vsat = (lut->value == lut->cal_value());
|
||||||
|
}
|
||||||
|
|
||||||
|
printf("topo: %d %d\n", luts.size(), rtopo_luts.size());
|
||||||
|
|
||||||
|
for(LUT* lut : rtopo_luts) {
|
||||||
|
lut->cal_fault_info(lut->fd, lut->fpl);
|
||||||
|
}
|
||||||
|
|
||||||
|
// for(LUT* lut : luts) {
|
||||||
|
// lut->cal_score();
|
||||||
|
// }
|
||||||
|
|
||||||
|
print();
|
||||||
|
|
||||||
|
int seed = time(0);
|
||||||
|
srand(seed);
|
||||||
|
|
||||||
|
int t1 = check();
|
||||||
|
|
||||||
|
// print();
|
||||||
|
|
||||||
|
LUT* pick = luts[rand() % luts.size()];
|
||||||
|
pick->cal_score();
|
||||||
|
|
||||||
|
printf(">>>> flip: %s\n", pick->name);
|
||||||
|
|
||||||
|
int s = pick->score;
|
||||||
|
|
||||||
|
printf("##### score: %d seed: %d\n", pick->score, seed);
|
||||||
|
printf("vusat_cost: %d fdw: %d fplw: %d up: %d\n", pick->score_value_unsatisfied_cost, pick->score_fault_detected_weight, pick->score_fault_propagated_weight, pick->score_fault_update_cost);
|
||||||
|
|
||||||
|
ls_flip(pick);
|
||||||
|
|
||||||
|
int t2 = check();
|
||||||
|
|
||||||
|
// print();
|
||||||
|
|
||||||
|
assert(s == (t2 - t1));
|
||||||
|
// print();
|
||||||
|
// exit(0);
|
||||||
|
|
||||||
|
}
|
194
src/lut.cpp
194
src/lut.cpp
@ -1,6 +1,196 @@
|
|||||||
|
#include <set>
|
||||||
|
|
||||||
#include "lut.h"
|
#include "lut.h"
|
||||||
|
#include "paras.h"
|
||||||
|
|
||||||
|
void LUT::cal_fault_info(int *fd, int* fpl) {
|
||||||
|
|
||||||
int LUT::value() {
|
fd[0] = fd[1] = fpl[0] = fpl[1] = 0;
|
||||||
return fanout->value;
|
if(isPO) {
|
||||||
|
fd[0] = value;
|
||||||
|
fd[1] = !value;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
for(int i=0; i<fanouts.size(); i++) {
|
||||||
|
LUT* out = fanouts[i];
|
||||||
|
|
||||||
|
if(!out->vsat) continue;
|
||||||
|
|
||||||
|
FaultInfo* info = nullptr;
|
||||||
|
|
||||||
|
int input = 0;
|
||||||
|
for(int j=0; j<out->fanins.size(); j++) {
|
||||||
|
if(out->fanins[j] == this) {
|
||||||
|
info = out->fault_table[j];
|
||||||
|
}
|
||||||
|
input |= (out->fanins[j]->value << j);
|
||||||
|
}
|
||||||
|
input <<= 1;
|
||||||
|
input |= out->value;
|
||||||
|
|
||||||
|
assert(info != nullptr);
|
||||||
|
|
||||||
|
int t_fd[2], t_fpl[2];
|
||||||
|
|
||||||
|
t_fd[0] = info[input].fd[0] && out->fd[!value];
|
||||||
|
t_fd[1] = info[input].fd[1] && out->fd[!value];
|
||||||
|
|
||||||
|
t_fpl[0] = info[input].fpl[0] + info[input].fd[0] * out->fpl[!value];
|
||||||
|
t_fpl[1] = info[input].fpl[1] + info[input].fd[1] * out->fpl[!value];
|
||||||
|
|
||||||
|
fd[0] = std::max(fd[0], t_fd[0]);
|
||||||
|
fd[1] = std::max(fd[1], t_fd[1]);
|
||||||
|
|
||||||
|
fpl[0] = std::max(fpl[0], t_fpl[0]);
|
||||||
|
fpl[1] = std::max(fpl[1], t_fpl[1]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int LUT::cal_value() {
|
||||||
|
if(isPI) return value;
|
||||||
|
int input = 0;
|
||||||
|
for(int i=0; i<fanins.size(); i++) {
|
||||||
|
input |= (fanins[i]->value << i);
|
||||||
|
}
|
||||||
|
return value_table[input];
|
||||||
|
}
|
||||||
|
|
||||||
|
LUT::LUT(Gate *gate):gate(gate), value(gate->value), name(gate->name.c_str()) {
|
||||||
|
|
||||||
|
isPI = gate->isPI;
|
||||||
|
isPO = gate->isPO;
|
||||||
|
|
||||||
|
inner_gates.push_back(gate);
|
||||||
|
|
||||||
|
std::set<Gate*> fanins;
|
||||||
|
|
||||||
|
for(Gate* g : gate->fanins) {
|
||||||
|
fanins.insert(g);
|
||||||
|
// printf("init fanins: %s\n", g->name.c_str());
|
||||||
|
}
|
||||||
|
|
||||||
|
while(true) {
|
||||||
|
|
||||||
|
std::vector<Gate*> candidates;
|
||||||
|
for(Gate* fanin : fanins) {
|
||||||
|
if(fanin->fanouts.size() >= 2) continue;
|
||||||
|
if(fanin->isPI) continue;
|
||||||
|
|
||||||
|
int add = 0;
|
||||||
|
for(Gate* in : fanin->fanins) {
|
||||||
|
if(fanins.count(in) == 0) {
|
||||||
|
add++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(fanins.size() - 1 + add <= OPT(lut)) {
|
||||||
|
candidates.push_back(fanin);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(candidates.size() == 0) break;
|
||||||
|
|
||||||
|
Gate* random_gate = candidates[rand()%candidates.size()];
|
||||||
|
|
||||||
|
inner_gates.push_back(random_gate);
|
||||||
|
fanins.erase(random_gate);
|
||||||
|
|
||||||
|
for(Gate* in : random_gate->fanins) {
|
||||||
|
fanins.insert(in);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for(Gate* in : fanins) {
|
||||||
|
__gate_fanins.push_back(in);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void LUT::init_lookup_table() {
|
||||||
|
value_table = new int[1 << fanins.size()];
|
||||||
|
fault_table = new FaultInfo *[fanins.size() + inner_gates.size()];
|
||||||
|
for (int i = 0; i < (fanins.size() + inner_gates.size()); i++) {
|
||||||
|
fault_table[i] = new FaultInfo[1 << (fanins.size() + 1)];
|
||||||
|
}
|
||||||
|
|
||||||
|
std::unordered_map<Gate*, int> gate_to_index;
|
||||||
|
|
||||||
|
for(int i=0; i<fanins.size(); i++) {
|
||||||
|
gate_to_index[fanins[i]->gate] = i;
|
||||||
|
}
|
||||||
|
for(int i=0; i<inner_gates.size(); i++) {
|
||||||
|
gate_to_index[inner_gates[i]] = i + fanins.size();
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i = 0; i < (1 << fanins.size()); i++) {
|
||||||
|
for (int j = 0; j < fanins.size(); j++) {
|
||||||
|
fanins[j]->gate->value = (i >> j) & 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (Gate *g : inner_gates) {
|
||||||
|
g->value = g->cal_value();
|
||||||
|
}
|
||||||
|
|
||||||
|
assert(inner_gates[inner_gates.size() - 1] == gate);
|
||||||
|
|
||||||
|
value_table[i] = gate->value;
|
||||||
|
|
||||||
|
gate->value = 0;
|
||||||
|
gate->fault_detected[0] = 0;
|
||||||
|
gate->fault_detected[1] = 1;
|
||||||
|
gate->fault_propagated_len[0] = 0;
|
||||||
|
gate->fault_propagated_len[1] = 0;
|
||||||
|
|
||||||
|
// continue;
|
||||||
|
|
||||||
|
std::queue<Gate *> q;
|
||||||
|
q.push(gate);
|
||||||
|
|
||||||
|
while (!q.empty()) {
|
||||||
|
Gate *g = q.front();
|
||||||
|
q.pop();
|
||||||
|
|
||||||
|
fault_table[gate_to_index[g]][(i<<1)|gate->value].fd[0] = g->fault_detected[0];
|
||||||
|
fault_table[gate_to_index[g]][(i<<1)|gate->value].fd[1] = g->fault_detected[1];
|
||||||
|
|
||||||
|
fault_table[gate_to_index[g]][(i<<1)|gate->value].fpl[0] = g->fault_propagated_len[0];
|
||||||
|
fault_table[gate_to_index[g]][(i<<1)|gate->value].fpl[1] = g->fault_propagated_len[1];
|
||||||
|
|
||||||
|
for (Gate *fanin : g->fanins) {
|
||||||
|
fanin->fault_detected[0] = fanin->cal_fault_detected(0);
|
||||||
|
fanin->fault_detected[1] = fanin->cal_fault_detected(1);
|
||||||
|
fanin->fault_propagated_len[0] = fanin->cal_propagate_len(0);
|
||||||
|
fanin->fault_propagated_len[1] = fanin->cal_propagate_len(1);
|
||||||
|
|
||||||
|
if(gate_to_index.count(fanin)) q.push(fanin);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
gate->value = 1;
|
||||||
|
gate->fault_detected[0] = 1;
|
||||||
|
gate->fault_detected[1] = 0;
|
||||||
|
gate->fault_propagated_len[0] = 0;
|
||||||
|
gate->fault_propagated_len[1] = 0;
|
||||||
|
|
||||||
|
q.push(gate);
|
||||||
|
|
||||||
|
while (!q.empty()) {
|
||||||
|
Gate *g = q.front();
|
||||||
|
q.pop();
|
||||||
|
|
||||||
|
fault_table[gate_to_index[g]][(i<<1)|gate->value].fd[0] = g->fault_detected[0];
|
||||||
|
fault_table[gate_to_index[g]][(i<<1)|gate->value].fd[1] = g->fault_detected[1];
|
||||||
|
fault_table[gate_to_index[g]][(i<<1)|gate->value].fpl[0] = g->fault_propagated_len[0];
|
||||||
|
fault_table[gate_to_index[g]][(i<<1)|gate->value].fpl[1] = g->fault_propagated_len[1];
|
||||||
|
|
||||||
|
for (Gate *fanin : g->fanins) {
|
||||||
|
fanin->fault_detected[0] = fanin->cal_fault_detected(0);
|
||||||
|
fanin->fault_detected[1] = fanin->cal_fault_detected(1);
|
||||||
|
fanin->fault_propagated_len[0] = fanin->cal_propagate_len(0);
|
||||||
|
fanin->fault_propagated_len[1] = fanin->cal_propagate_len(1);
|
||||||
|
|
||||||
|
if(gate_to_index.count(fanin)) q.push(fanin);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
52
src/lut.h
52
src/lut.h
@ -2,11 +2,55 @@
|
|||||||
|
|
||||||
class LUT {
|
class LUT {
|
||||||
public:
|
public:
|
||||||
std::vector<Gate*> fanins;
|
|
||||||
Gate* fanout;
|
|
||||||
std::vector<Gate*> gates;
|
|
||||||
|
|
||||||
int value();
|
LUT(Gate *gate);
|
||||||
|
|
||||||
|
Gate* gate;
|
||||||
|
|
||||||
|
bool isPI, isPO;
|
||||||
|
|
||||||
|
std::vector<LUT*> fanins;
|
||||||
|
|
||||||
|
std::vector<LUT*> fanouts;
|
||||||
|
|
||||||
|
std::vector<LUT*> reigon;
|
||||||
|
|
||||||
|
std::vector<Gate*> inner_gates;
|
||||||
|
std::vector<Gate*> __gate_fanins;
|
||||||
|
|
||||||
|
int& value;
|
||||||
|
const char* name;
|
||||||
|
|
||||||
|
int *value_table;
|
||||||
|
|
||||||
|
struct FaultInfo {
|
||||||
|
int fd[2];
|
||||||
|
int fpl[2];
|
||||||
|
} **fault_table;
|
||||||
|
|
||||||
|
std::vector<FaultInfo*> fault_info;
|
||||||
|
|
||||||
|
void init_lookup_table();
|
||||||
|
|
||||||
|
// local search
|
||||||
|
|
||||||
|
bool vsat, vunat_cost;
|
||||||
|
bool uptag, up_cost;
|
||||||
|
int fd[2];
|
||||||
|
int fpl[2];
|
||||||
|
|
||||||
|
int cal_value();
|
||||||
|
void cal_fault_info(int *t_fd, int* t_fpl);
|
||||||
|
|
||||||
|
// score
|
||||||
|
int score;
|
||||||
|
int score_value_unsatisfied_cost;
|
||||||
|
int score_fault_detected_weight;
|
||||||
|
int score_fault_propagated_weight;
|
||||||
|
int score_fault_update_cost;
|
||||||
|
|
||||||
|
void cal_score();
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
22
src/main.cpp
22
src/main.cpp
@ -1,28 +1,30 @@
|
|||||||
#include "paras.h"
|
|
||||||
#include "circuit.h"
|
#include "circuit.h"
|
||||||
|
#include "paras.h"
|
||||||
|
|
||||||
|
int main(int argc, char *argv[]) {
|
||||||
|
|
||||||
int main(int argc, char* argv[]) {
|
|
||||||
|
|
||||||
// 初始化命令行参数
|
// 初始化命令行参数
|
||||||
INIT_ARGS
|
INIT_ARGS
|
||||||
|
|
||||||
srand(19260817);
|
srand(19260817);
|
||||||
|
|
||||||
Circuit* circuit = new Circuit();
|
Circuit *circuit = new Circuit();
|
||||||
|
|
||||||
printf("parsing file %s ...", OPT(instance).c_str());
|
printf("parsing file %s ...\n", OPT(instance).c_str());
|
||||||
circuit->parse_from_file(OPT(instance).c_str());
|
circuit->parse_from_file(OPT(instance).c_str());
|
||||||
printf(" Done.\n");
|
circuit->init_topo_index();
|
||||||
|
|
||||||
|
printf("building lut circuit ...\n");
|
||||||
|
LUTCircuit *C = circuit->build_lut_circuit();
|
||||||
|
|
||||||
printf("====== Circuit Statistics ====== \n");
|
printf("====== Circuit Statistics ====== \n");
|
||||||
printf("PI:\t%ld\n", circuit->PIs.size());
|
printf("PI:\t%ld\n", circuit->PIs.size());
|
||||||
printf("PO:\t%ld\n", circuit->POs.size());
|
printf("PO:\t%ld\n", circuit->POs.size());
|
||||||
printf("Gate:\t%ld\n", circuit->name2gate.size());
|
printf("Gate:\t%ld\n", circuit->gates.size());
|
||||||
printf("================================ \n");
|
printf("LUT:\t%ld\n", C->luts.size());
|
||||||
|
// printf("================================ \n");
|
||||||
|
|
||||||
LUTCircuit* C = circuit->build_lut_circuit();
|
C->ls_main();
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
152
src/score.cpp
Normal file
152
src/score.cpp
Normal file
@ -0,0 +1,152 @@
|
|||||||
|
#include "lut.h"
|
||||||
|
|
||||||
|
void LUT::cal_score() {
|
||||||
|
|
||||||
|
score = 0;
|
||||||
|
score_value_unsatisfied_cost = 0;
|
||||||
|
score_fault_detected_weight = 0;
|
||||||
|
score_fault_propagated_weight = 0;
|
||||||
|
score_fault_update_cost = 0;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// printf("old_fd: %d %d\n", old_fd[0], old_fd[1]);
|
||||||
|
|
||||||
|
value = !value;
|
||||||
|
|
||||||
|
if(uptag) {
|
||||||
|
score_fault_update_cost -= up_cost;
|
||||||
|
}
|
||||||
|
|
||||||
|
// value sat score
|
||||||
|
|
||||||
|
if(!isPI) {
|
||||||
|
if(vsat) score_value_unsatisfied_cost += vunat_cost;
|
||||||
|
else score_value_unsatisfied_cost -= vunat_cost;
|
||||||
|
vsat = !vsat;
|
||||||
|
}
|
||||||
|
|
||||||
|
for(LUT* out : fanouts) {
|
||||||
|
if(!out->vsat && out->cal_value() == out->value) {
|
||||||
|
score_value_unsatisfied_cost -= out->vunat_cost;
|
||||||
|
out->vsat = 1;
|
||||||
|
}
|
||||||
|
if(out->vsat && out->cal_value() != out->value){
|
||||||
|
score_value_unsatisfied_cost += out->vunat_cost;
|
||||||
|
out->vsat = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int old_fd[2], old_fpl[2];
|
||||||
|
old_fd[0] = fd[0];
|
||||||
|
old_fd[1] = fd[1];
|
||||||
|
old_fpl[0] = fpl[0];
|
||||||
|
old_fpl[1] = fpl[1];
|
||||||
|
|
||||||
|
// fault detected score
|
||||||
|
|
||||||
|
cal_fault_info(fd, fpl);
|
||||||
|
|
||||||
|
// printf("fd: %d %d %d %d\n", fd[0], fd[1], old_fd[0], old_fd[1]);
|
||||||
|
|
||||||
|
for(LUT* out : fanouts) {
|
||||||
|
int in1 = 0, in2 = 0;
|
||||||
|
for(int i=0; i<out->fanins.size(); i++) {
|
||||||
|
if(out->fanins[i] == this) {
|
||||||
|
in1 |= (!value << i);
|
||||||
|
in2 |= (value << i);
|
||||||
|
} else {
|
||||||
|
in1 |= (out->fanins[i]->value << i);
|
||||||
|
in2 |= (out->fanins[i]->value << i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
in1 = (in1 << 1) | out->value;
|
||||||
|
in2 = (in2 << 1) | out->value;
|
||||||
|
|
||||||
|
for(int i=out->fanins.size(); i<out->fanins.size()+out->inner_gates.size(); i++) {
|
||||||
|
Gate* g = out->inner_gates[i-out->fanins.size()];
|
||||||
|
|
||||||
|
int t_fd1[2], t_fpl1[2];
|
||||||
|
int t_fd2[2], t_fpl2[2];
|
||||||
|
|
||||||
|
t_fd1[0] = out->fault_table[i][in1].fd[0] && out->fd[!out->value];
|
||||||
|
t_fd1[1] = out->fault_table[i][in1].fd[1] && out->fd[!out->value];
|
||||||
|
|
||||||
|
t_fd2[0] = out->fault_table[i][in2].fd[0] && out->fd[!out->value];
|
||||||
|
t_fd2[1] = out->fault_table[i][in2].fd[1] && out->fd[!out->value];
|
||||||
|
|
||||||
|
t_fpl1[0] = out->fault_table[i][in1].fpl[0] + out->fault_table[i][in1].fd[0] * out->fpl[!out->value];
|
||||||
|
t_fpl1[1] = out->fault_table[i][in1].fpl[1] + out->fault_table[i][in1].fd[1] * out->fpl[!out->value];
|
||||||
|
|
||||||
|
t_fpl2[0] = out->fault_table[i][in2].fpl[0] + out->fault_table[i][in2].fd[0] * out->fpl[!out->value];
|
||||||
|
t_fpl2[1] = out->fault_table[i][in2].fpl[1] + out->fault_table[i][in2].fd[1] * out->fpl[!out->value];
|
||||||
|
|
||||||
|
score_fault_detected_weight += (t_fd2[0] - t_fd1[0]) * g->fault_detected_weight[0];
|
||||||
|
score_fault_detected_weight += (t_fd2[1] - t_fd1[1]) * g->fault_detected_weight[1];
|
||||||
|
|
||||||
|
score_fault_propagated_weight += (t_fpl2[0] - t_fpl1[0]) * g->fault_propagated_weight[0];
|
||||||
|
score_fault_propagated_weight += (t_fpl2[1] - t_fpl1[1]) * g->fault_propagated_weight[1];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int in1 = 0, in2 = 0;
|
||||||
|
for(int i=0; i<fanins.size(); i++) {
|
||||||
|
in1 |= (fanins[i]->value << i);
|
||||||
|
}
|
||||||
|
in2 = in1;
|
||||||
|
in1 = (in1 << 1) | !value;
|
||||||
|
in2 = (in2 << 1) | value;
|
||||||
|
|
||||||
|
for(int i=fanins.size(); i<fanins.size()+inner_gates.size(); i++) {
|
||||||
|
Gate* g = inner_gates[i-fanins.size()];
|
||||||
|
|
||||||
|
int t_fd1[2], t_fpl1[2];
|
||||||
|
int t_fd2[2], t_fpl2[2];
|
||||||
|
|
||||||
|
t_fd1[0] = fault_table[i][in1].fd[0] && old_fd[value];
|
||||||
|
t_fd1[1] = fault_table[i][in1].fd[1] && old_fd[value];
|
||||||
|
|
||||||
|
t_fd2[0] = fault_table[i][in2].fd[0] && fd[!value];
|
||||||
|
t_fd2[1] = fault_table[i][in2].fd[1] && fd[!value];
|
||||||
|
|
||||||
|
t_fpl1[0] = fault_table[i][in1].fpl[0] + fault_table[i][in1].fd[0] * old_fpl[value];
|
||||||
|
t_fpl1[1] = fault_table[i][in1].fpl[1] + fault_table[i][in1].fd[1] * old_fpl[value];
|
||||||
|
|
||||||
|
t_fpl2[0] = fault_table[i][in2].fpl[0] + fault_table[i][in2].fd[0] * fpl[!value];
|
||||||
|
t_fpl2[1] = fault_table[i][in2].fpl[1] + fault_table[i][in2].fd[1] * fpl[!value];
|
||||||
|
|
||||||
|
score_fault_detected_weight += (t_fd2[0] - t_fd1[0]) * g->fault_detected_weight[0];
|
||||||
|
score_fault_detected_weight += (t_fd2[1] - t_fd1[1]) * g->fault_detected_weight[1];
|
||||||
|
|
||||||
|
score_fault_propagated_weight += (t_fpl2[0] - t_fpl1[0]) * g->fault_propagated_weight[0];
|
||||||
|
score_fault_propagated_weight += (t_fpl2[1] - t_fpl1[1]) * g->fault_propagated_weight[1];
|
||||||
|
}
|
||||||
|
|
||||||
|
// update cost score
|
||||||
|
for(LUT* r : reigon) {
|
||||||
|
int t_fd[2], t_fpl[2];
|
||||||
|
r->cal_fault_info(t_fd, t_fpl);
|
||||||
|
if(t_fd[0] == r->fd[0] && t_fd[1] == r->fd[1] && t_fpl[0] == r->fpl[0] && t_fpl[1] == r->fpl[1]) continue;
|
||||||
|
|
||||||
|
if(!r->uptag) {
|
||||||
|
score_fault_update_cost += r->up_cost;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
value = !value;
|
||||||
|
if(!isPI) vsat = !vsat;
|
||||||
|
|
||||||
|
fd[0] = old_fd[0];
|
||||||
|
fd[1] = old_fd[1];
|
||||||
|
fpl[0] = old_fpl[0];
|
||||||
|
fpl[1] = old_fpl[1];
|
||||||
|
|
||||||
|
for(LUT* out : fanouts) {
|
||||||
|
out->vsat = ( out->cal_value() == out->value );
|
||||||
|
}
|
||||||
|
|
||||||
|
score = - score_value_unsatisfied_cost + score_fault_detected_weight + score_fault_propagated_weight - score_fault_update_cost;
|
||||||
|
}
|
0
src/simulator.cpp
Normal file
0
src/simulator.cpp
Normal file
Loading…
x
Reference in New Issue
Block a user