Fix testcase
[yosys.git] / tests / various / muxpack.ys
1 read_verilog muxpack.v
2 design -save read
3
4 hierarchy -top mux_if_unbal_4_1
5 prep
6 design -save gold
7 muxpack
8 opt
9 stat
10 select -assert-count 0 t:$mux
11 select -assert-count 1 t:$pmux
12 design -stash gate
13 design -import gold -as gold
14 design -import gate -as gate
15 miter -equiv -flatten -make_assert -make_outputs gold gate miter
16 sat -verify -prove-asserts -show-ports miter
17
18 design -load read
19 hierarchy -top mux_if_unbal_5_3
20 prep
21 design -save gold
22 muxpack
23 opt
24 stat
25 select -assert-count 0 t:$mux
26 select -assert-count 1 t:$pmux
27 design -stash gate
28 design -import gold -as gold
29 design -import gate -as gate
30 miter -equiv -flatten -make_assert -make_outputs gold gate miter
31 sat -verify -prove-asserts -show-ports miter
32
33 # TODO: Currently ExclusiveDatabase only analyses $eq cells
34 #design -load read
35 #hierarchy -top mux_if_unbal_5_3_invert
36 #prep
37 #design -save gold
38 #muxpack
39 #opt
40 #stat
41 #select -assert-count 0 t:$mux
42 #select -assert-count 1 t:$pmux
43 #design -stash gate
44 #design -import gold -as gold
45 #design -import gate -as gate
46 #miter -equiv -flatten -make_assert -make_outputs gold gate miter
47 #sat -verify -prove-asserts -show-ports miter
48
49 design -load read
50 hierarchy -top mux_if_unbal_5_3_width_mismatch
51 prep
52 design -save gold
53 muxpack
54 opt
55 stat
56 select -assert-count 0 t:$mux
57 select -assert-count 2 t:$pmux
58 design -stash gate
59 design -import gold -as gold
60 design -import gate -as gate
61 miter -equiv -flatten -make_assert -make_outputs gold gate miter
62 sat -verify -prove-asserts -show-ports miter
63
64 design -load read
65 hierarchy -top mux_if_unbal_4_1_missing
66 prep
67 design -save gold
68 muxpack
69 opt
70 stat
71 select -assert-count 0 t:$mux
72 select -assert-count 1 t:$pmux
73 design -stash gate
74 design -import gold -as gold
75 design -import gate -as gate
76 miter -equiv -flatten -make_assert -make_outputs gold gate miter
77 sat -verify -prove-asserts -show-ports miter
78
79 design -load read
80 hierarchy -top mux_if_unbal_5_3_order
81 prep
82 design -save gold
83 muxpack
84 opt
85 stat
86 select -assert-count 0 t:$mux
87 select -assert-count 1 t:$pmux
88 design -stash gate
89 design -import gold -as gold
90 design -import gate -as gate
91 miter -equiv -flatten -make_assert -make_outputs gold gate miter
92 sat -verify -prove-asserts -show-ports miter
93
94 design -load read
95 hierarchy -top mux_if_unbal_4_1_nonexcl
96 prep
97 design -save gold
98 muxpack
99 opt
100 stat
101 select -assert-count 0 t:$mux
102 select -assert-count 1 t:$pmux
103 design -stash gate
104 design -import gold -as gold
105 design -import gate -as gate
106 miter -equiv -flatten -make_assert -make_outputs gold gate miter
107 sat -verify -prove-asserts -show-ports miter
108
109 design -load read
110 hierarchy -top mux_if_unbal_5_3_nonexcl
111 prep
112 design -save gold
113 muxpack
114 opt
115 stat
116 select -assert-count 0 t:$mux
117 select -assert-count 1 t:$pmux
118 design -stash gate
119 design -import gold -as gold
120 design -import gate -as gate
121 miter -equiv -flatten -make_assert -make_outputs gold gate miter
122 sat -verify -prove-asserts -show-ports miter
123
124 design -load read
125 hierarchy -top mux_case_unbal_8_7
126 prep
127 design -save gold
128 muxpack
129 opt
130 stat
131 select -assert-count 0 t:$mux
132 select -assert-count 1 t:$pmux
133 design -stash gate
134 design -import gold -as gold
135 design -import gate -as gate
136 miter -equiv -flatten -make_assert -make_outputs gold gate miter
137 sat -verify -prove-asserts -show-ports miter
138
139 design -load read
140 hierarchy -top mux_if_bal_8_2
141 prep
142 design -save gold
143 muxpack
144 opt
145 stat
146 select -assert-count 7 t:$mux
147 select -assert-count 0 t:$pmux
148 design -stash gate
149 design -import gold -as gold
150 design -import gate -as gate
151 miter -equiv -flatten -make_assert -make_outputs gold gate miter
152 sat -verify -prove-asserts -show-ports miter
153
154 design -load read
155 hierarchy -top mux_if_bal_5_1
156 prep
157 design -save gold
158 muxpack
159 opt
160 stat
161 select -assert-count 4 t:$mux
162 select -assert-count 0 t:$pmux
163 design -stash gate
164 design -import gold -as gold
165 design -import gate -as gate
166 miter -equiv -flatten -make_assert -make_outputs gold gate miter
167 sat -verify -prove-asserts -show-ports miter
168
169 design -load read
170 hierarchy -top cliffordwolf_nonexclusive_select
171 prep
172 design -save gold
173 muxpack
174 opt
175 stat
176 select -assert-count 3 t:$mux
177 select -assert-count 0 t:$pmux
178 design -stash gate
179 design -import gold -as gold
180 design -import gate -as gate
181 miter -equiv -flatten -make_assert -make_outputs gold gate miter
182 sat -verify -prove-asserts -show-ports miter
183
184 #design -load read
185 #hierarchy -top cliffordwolf_freduce
186 #prep
187 #design -save gold
188 #proc; opt; freduce; opt
189 #show
190 #muxpack
191 #opt
192 #stat
193 #select -assert-count 0 t:$mux
194 #select -assert-count 1 t:$pmux
195 #design -stash gate
196 #design -import gold -as gold
197 #design -import gate -as gate
198 #miter -equiv -flatten -make_assert -make_outputs gold gate miter
199 #sat -verify -prove-asserts -show-ports miter
200
201 design -load read
202 hierarchy -top case_nonexclusive_select
203 prep
204 design -save gold
205 muxpack
206 opt
207 stat
208 select -assert-count 0 t:$mux
209 select -assert-count 2 t:$pmux
210 design -stash gate
211 design -import gold -as gold
212 design -import gate -as gate
213 miter -equiv -flatten -make_assert -make_outputs gold gate miter
214 sat -verify -prove-asserts -show-ports miter
215
216 design -load read
217 hierarchy -top case_nonoverlap
218 prep
219 design -save gold
220 muxpack
221 opt
222 stat
223 select -assert-count 0 t:$mux
224 select -assert-count 1 t:$pmux
225 design -stash gate
226 design -import gold -as gold
227 design -import gate -as gate
228 miter -equiv -flatten -make_assert -make_outputs gold gate miter
229 sat -verify -prove-asserts -show-ports miter
230
231 design -load read
232 hierarchy -top case_overlap
233 #prep # Do not prep otherwise $pmux's overlapping entry will get removed
234 proc
235 design -save gold
236 muxpack
237 opt
238 stat
239 select -assert-count 0 t:$mux
240 select -assert-count 2 t:$pmux
241 design -stash gate
242 design -import gold -as gold
243 design -import gate -as gate
244 miter -equiv -flatten -make_assert -make_outputs gold gate miter
245 sat -verify -prove-asserts -show-ports miter