1 | # vl2mv exampleS.v |
---|
2 | # version: 0.2 |
---|
3 | # date: 11:15:09 12/11/95 (PST) |
---|
4 | .model resource |
---|
5 | # I/O ports |
---|
6 | |
---|
7 | .mv r_st 2 I B |
---|
8 | .mv r_m_st 4 R G U D |
---|
9 | .mv m_st 4 R G U D |
---|
10 | .mv r_r_st 2 I B |
---|
11 | .subckt a0 a0 req=req grant=grant use=use release=release |
---|
12 | # assign req = (m_st == R ) |
---|
13 | .mv _n2 4 R G U D |
---|
14 | .names _n2 |
---|
15 | R |
---|
16 | # m_st == 0 |
---|
17 | .names m_st _n2 _n1 |
---|
18 | .def 0 |
---|
19 | - =m_st 1 |
---|
20 | .names _n1 req$raw_n0 |
---|
21 | - =_n1 |
---|
22 | # assign use = (m_st == U ) |
---|
23 | .mv _n5 4 R G U D |
---|
24 | .names _n5 |
---|
25 | U |
---|
26 | # m_st == 2 |
---|
27 | .names m_st _n5 _n4 |
---|
28 | .def 0 |
---|
29 | - =m_st 1 |
---|
30 | .names _n4 use$raw_n3 |
---|
31 | - =_n4 |
---|
32 | # assign release = (m_st == D ) |
---|
33 | .mv _n8 4 R G U D |
---|
34 | .names _n8 |
---|
35 | D |
---|
36 | # m_st == 3 |
---|
37 | .names m_st _n8 _n7 |
---|
38 | .def 0 |
---|
39 | - =m_st 1 |
---|
40 | .names _n7 release$raw_n6 |
---|
41 | - =_n7 |
---|
42 | # m_st = 0 |
---|
43 | .mv m_st$raw_n9 4 R G U D |
---|
44 | .names m_st$raw_n9 |
---|
45 | R |
---|
46 | # non-blocking assignments for initial |
---|
47 | # assign r_m_st = $NDset ( 2,3 ) |
---|
48 | .names r_m_st |
---|
49 | U |
---|
50 | D |
---|
51 | .mv _ne 4 R G U D |
---|
52 | .names _ne |
---|
53 | R |
---|
54 | .names m_st _ne _nd |
---|
55 | .def 0 |
---|
56 | - =m_st 1 |
---|
57 | .names _nd _nc |
---|
58 | 1 1 |
---|
59 | 0 0 |
---|
60 | .names grant _nf |
---|
61 | - =grant |
---|
62 | # m_st = 1 |
---|
63 | .mv m_st$grant_n10$true 4 R G U D |
---|
64 | .names m_st$grant_n10$true |
---|
65 | G |
---|
66 | # if/else (grant ) |
---|
67 | .mv m_st$grant$raw_n13 4 R G U D |
---|
68 | .names m_st$grant_n10$true m_st grant m_st$grant$raw_n13 |
---|
69 | - - 0 =m_st |
---|
70 | - - 1 =m_st$grant_n10$true |
---|
71 | .mv _n16 4 R G U D |
---|
72 | .names _n16 |
---|
73 | G |
---|
74 | .names m_st _n16 _n15 |
---|
75 | .def 0 |
---|
76 | - =m_st 1 |
---|
77 | .names _n15 _n14 |
---|
78 | 1 1 |
---|
79 | 0 0 |
---|
80 | # m_st = 2 |
---|
81 | .mv m_st$_n14_n17$true 4 R G U D |
---|
82 | .names m_st$_n14_n17$true |
---|
83 | U |
---|
84 | .mv _n1a 4 R G U D |
---|
85 | .names _n1a |
---|
86 | U |
---|
87 | .names m_st _n1a _n19 |
---|
88 | .def 0 |
---|
89 | - =m_st 1 |
---|
90 | .names _n19 _n18 |
---|
91 | 1 1 |
---|
92 | 0 0 |
---|
93 | # m_st = r_m_st |
---|
94 | .mv m_st$_n18_n1b$true 4 R G U D |
---|
95 | .names r_m_st m_st$_n18_n1b$true |
---|
96 | - =r_m_st |
---|
97 | .mv _n1e 4 R G U D |
---|
98 | .names _n1e |
---|
99 | D |
---|
100 | .names m_st _n1e _n1d |
---|
101 | .def 0 |
---|
102 | - =m_st 1 |
---|
103 | .names _n1d _n1c |
---|
104 | 1 1 |
---|
105 | 0 0 |
---|
106 | # m_st = 0 |
---|
107 | .mv m_st$_n1c_n1f$true 4 R G U D |
---|
108 | .names m_st$_n1c_n1f$true |
---|
109 | R |
---|
110 | # case (m_st ) |
---|
111 | .mv m_st$_n1c$raw_n22 4 R G U D |
---|
112 | .names m_st$_n1c_n1f$true m_st _n1c m_st$_n1c$raw_n22 |
---|
113 | - - 0 =m_st |
---|
114 | - - 1 =m_st$_n1c_n1f$true |
---|
115 | .mv m_st$_n18$raw_n23 4 R G U D |
---|
116 | .names m_st$_n18_n1b$true m_st$_n1c$raw_n22 _n18 m_st$_n18$raw_n23 |
---|
117 | - - 0 =m_st$_n1c$raw_n22 |
---|
118 | - - 1 =m_st$_n18_n1b$true |
---|
119 | .mv m_st$_n14$raw_n27 4 R G U D |
---|
120 | .names m_st$_n14_n17$true m_st$_n18$raw_n23 _n14 m_st$_n14$raw_n27 |
---|
121 | - - 0 =m_st$_n18$raw_n23 |
---|
122 | - - 1 =m_st$_n14_n17$true |
---|
123 | .mv m_st$_nc$raw_n2b 4 R G U D |
---|
124 | .names m_st$grant$raw_n13 m_st$_n14$raw_n27 _nc m_st$_nc$raw_n2b |
---|
125 | - - 0 =m_st$_n14$raw_n27 |
---|
126 | - - 1 =m_st$grant$raw_n13 |
---|
127 | # r_st = 0 |
---|
128 | .mv r_st$raw_n2f 2 I B |
---|
129 | .names r_st$raw_n2f |
---|
130 | I |
---|
131 | # non-blocking assignments for initial |
---|
132 | # assign grant = (r_st == B ) |
---|
133 | .mv _n32 2 I B |
---|
134 | .names _n32 |
---|
135 | B |
---|
136 | # r_st == 1 |
---|
137 | .names r_st _n32 _n31 |
---|
138 | .def 0 |
---|
139 | - =r_st 1 |
---|
140 | .names _n31 grant$raw_n30 |
---|
141 | - =_n31 |
---|
142 | # assign r_r_st = $NDset ( 1,0 ) |
---|
143 | .names r_r_st |
---|
144 | B |
---|
145 | I |
---|
146 | .mv _n37 2 I B |
---|
147 | .names _n37 |
---|
148 | I |
---|
149 | .names r_st _n37 _n36 |
---|
150 | .def 0 |
---|
151 | - =r_st 1 |
---|
152 | .names _n36 _n35 |
---|
153 | 1 1 |
---|
154 | 0 0 |
---|
155 | .names req _n38 |
---|
156 | - =req |
---|
157 | # r_st = r_r_st |
---|
158 | .mv r_st$req_n39$true 2 I B |
---|
159 | .names r_r_st r_st$req_n39$true |
---|
160 | - =r_r_st |
---|
161 | # r_st = 0 |
---|
162 | .mv r_st$req_n3a$false 2 I B |
---|
163 | .names r_st$req_n3a$false |
---|
164 | I |
---|
165 | # if/else (req ) |
---|
166 | .mv r_st$req$raw_n3c 2 I B |
---|
167 | .names r_st$req_n39$true r_st$req_n3a$false req r_st$req$raw_n3c |
---|
168 | - - 0 =r_st$req_n3a$false |
---|
169 | - - 1 =r_st$req_n39$true |
---|
170 | .mv _n41 2 I B |
---|
171 | .names _n41 |
---|
172 | B |
---|
173 | .names r_st _n41 _n40 |
---|
174 | .def 0 |
---|
175 | - =r_st 1 |
---|
176 | .names _n40 _n3f |
---|
177 | 1 1 |
---|
178 | 0 0 |
---|
179 | .names release _n42 |
---|
180 | - =release |
---|
181 | # r_st = 0 |
---|
182 | .mv r_st$release_n43$true 2 I B |
---|
183 | .names r_st$release_n43$true |
---|
184 | I |
---|
185 | # if/else (release ) |
---|
186 | .mv r_st$release$raw_n46 2 I B |
---|
187 | .names r_st$release_n43$true r_st release r_st$release$raw_n46 |
---|
188 | - - 0 =r_st |
---|
189 | - - 1 =r_st$release_n43$true |
---|
190 | # case (r_st ) |
---|
191 | .mv r_st$_n3f$raw_n49 2 I B |
---|
192 | .names r_st$release$raw_n46 r_st _n3f r_st$_n3f$raw_n49 |
---|
193 | - - 0 =r_st |
---|
194 | - - 1 =r_st$release$raw_n46 |
---|
195 | .mv r_st$_n35$raw_n4a 2 I B |
---|
196 | .names r_st$req$raw_n3c r_st$_n3f$raw_n49 _n35 r_st$_n35$raw_n4a |
---|
197 | - - 0 =r_st$_n3f$raw_n49 |
---|
198 | - - 1 =r_st$req$raw_n3c |
---|
199 | # conflict arbitrators |
---|
200 | .names _n35 _n38 _n3f _n42 _n4e |
---|
201 | .def 0 |
---|
202 | 1 1 - - 1 |
---|
203 | 1 0 - - 1 |
---|
204 | 0 - 1 1 1 |
---|
205 | .mv _n4f 2 I B |
---|
206 | .names _n4e r_st$_n35$raw_n4a r_st _n4f |
---|
207 | 1 - - =r_st$_n35$raw_n4a |
---|
208 | 0 - - =r_st |
---|
209 | .names release$raw_n6 release |
---|
210 | 0 0 |
---|
211 | 1 1 |
---|
212 | .names req$raw_n0 req |
---|
213 | 0 0 |
---|
214 | 1 1 |
---|
215 | .names use$raw_n3 use |
---|
216 | 0 0 |
---|
217 | 1 1 |
---|
218 | .names _nc _nf _n14 _n18 _n1c _n5a |
---|
219 | .def 0 |
---|
220 | 1 1 - - - 1 |
---|
221 | 0 - 1 - - 1 |
---|
222 | 0 - 0 1 - 1 |
---|
223 | 0 - 0 0 1 1 |
---|
224 | .mv _n5b 4 R G U D |
---|
225 | .names _n5a m_st$_nc$raw_n2b m_st _n5b |
---|
226 | 1 - - =m_st$_nc$raw_n2b |
---|
227 | 0 - - =m_st |
---|
228 | .names grant$raw_n30 grant |
---|
229 | 0 0 |
---|
230 | 1 1 |
---|
231 | # non-blocking assignments |
---|
232 | # latches |
---|
233 | .r r_st$raw_n2f r_st |
---|
234 | - =r_st$raw_n2f |
---|
235 | .latch _n4f r_st |
---|
236 | .r m_st$raw_n9 m_st |
---|
237 | - =m_st$raw_n9 |
---|
238 | .latch _n5b m_st |
---|
239 | # quasi-continuous assignment |
---|
240 | .end |
---|
241 | |
---|
242 | |
---|
243 | .model a0 |
---|
244 | # I/O ports |
---|
245 | .inputs release |
---|
246 | .inputs req |
---|
247 | .inputs use |
---|
248 | .inputs grant |
---|
249 | |
---|
250 | # assign e0 = 1 |
---|
251 | .names e0$raw_n66 |
---|
252 | 1 |
---|
253 | # assign r0 = s3 || f0 |
---|
254 | # s3 || f0 |
---|
255 | .names s3 f0 _n68 |
---|
256 | .def 1 |
---|
257 | 0 0 0 |
---|
258 | .names _n68 r0$raw_n67 |
---|
259 | - =_n68 |
---|
260 | # assign trigger = s0 |
---|
261 | .names s0 trigger$raw_n69 |
---|
262 | - =s0 |
---|
263 | .subckt a0_seq0 a0_seq0 e=e0 r=r0 s=s0 f=f0 req=req |
---|
264 | # assign e3 = trigger |
---|
265 | .names trigger e3$raw_n6a |
---|
266 | - =trigger |
---|
267 | # assign r3 = 0 |
---|
268 | .names r3$raw_n6b |
---|
269 | 0 |
---|
270 | .subckt a0_seq3 a0_seq3 e=e3 r=r3 s=s3 f=f3 req=req grant=grant use=use release=release |
---|
271 | # conflict arbitrators |
---|
272 | .names r3$raw_n6b r3 |
---|
273 | 0 0 |
---|
274 | 1 1 |
---|
275 | .names trigger$raw_n69 trigger |
---|
276 | 0 0 |
---|
277 | 1 1 |
---|
278 | .names e0$raw_n66 e0 |
---|
279 | 0 0 |
---|
280 | 1 1 |
---|
281 | .names e3$raw_n6a e3 |
---|
282 | 0 0 |
---|
283 | 1 1 |
---|
284 | .names r0$raw_n67 r0 |
---|
285 | 0 0 |
---|
286 | 1 1 |
---|
287 | # non-blocking assignments |
---|
288 | # latches |
---|
289 | # quasi-continuous assignment |
---|
290 | .end |
---|
291 | |
---|
292 | |
---|
293 | .model a0_seq0 |
---|
294 | # I/O ports |
---|
295 | .inputs e |
---|
296 | .outputs f |
---|
297 | .inputs req |
---|
298 | .inputs r |
---|
299 | .outputs s |
---|
300 | |
---|
301 | .mv st 4 S D X T |
---|
302 | # st = 0 |
---|
303 | .mv st$raw_n6c 4 S D X T |
---|
304 | .names st$raw_n6c |
---|
305 | S |
---|
306 | # non-blocking assignments for initial |
---|
307 | # assign s = (((st == S ) && e && (req ))) |
---|
308 | .mv _n6f 4 S D X T |
---|
309 | .names _n6f |
---|
310 | S |
---|
311 | # st == 0 |
---|
312 | .names st _n6f _n6e |
---|
313 | .def 0 |
---|
314 | - =st 1 |
---|
315 | # (st == 0) && e |
---|
316 | .names _n6e e _n70 |
---|
317 | .def 0 |
---|
318 | 1 1 1 |
---|
319 | # (st == 0) && e && (req ) |
---|
320 | .names _n70 req _n71 |
---|
321 | .def 0 |
---|
322 | 1 1 1 |
---|
323 | .names _n71 s$raw_n6d |
---|
324 | - =_n71 |
---|
325 | # assign f = (((st == S ) && e && !(req )) || (st == T )) |
---|
326 | .mv _n74 4 S D X T |
---|
327 | .names _n74 |
---|
328 | S |
---|
329 | # st == 0 |
---|
330 | .names st _n74 _n73 |
---|
331 | .def 0 |
---|
332 | - =st 1 |
---|
333 | # (st == 0) && e |
---|
334 | .names _n73 e _n75 |
---|
335 | .def 0 |
---|
336 | 1 1 1 |
---|
337 | .names req _n76 |
---|
338 | 0 1 |
---|
339 | 1 0 |
---|
340 | # (st == 0) && e && !(req ) |
---|
341 | .names _n75 _n76 _n77 |
---|
342 | .def 0 |
---|
343 | 1 1 1 |
---|
344 | .mv _n79 4 S D X T |
---|
345 | .names _n79 |
---|
346 | T |
---|
347 | # st == 3 |
---|
348 | .names st _n79 _n78 |
---|
349 | .def 0 |
---|
350 | - =st 1 |
---|
351 | # ((st == 0) && e && !(req )) || (st == 3) |
---|
352 | .names _n77 _n78 _n7a |
---|
353 | .def 1 |
---|
354 | 0 0 0 |
---|
355 | .names _n7a f$raw_n72 |
---|
356 | - =_n7a |
---|
357 | .mv _n7d 4 S D X T |
---|
358 | .names _n7d |
---|
359 | S |
---|
360 | .names st _n7d _n7c |
---|
361 | .def 0 |
---|
362 | - =st 1 |
---|
363 | .names _n7c _n7b |
---|
364 | 1 1 |
---|
365 | 0 0 |
---|
366 | # e && (req ) |
---|
367 | .names e req _n7e |
---|
368 | .def 0 |
---|
369 | 1 1 1 |
---|
370 | .names _n7e _n7f |
---|
371 | - =_n7e |
---|
372 | # st = 0 |
---|
373 | .mv st$_n7e_n80$true 4 S D X T |
---|
374 | .names st$_n7e_n80$true |
---|
375 | S |
---|
376 | .names req _n81 |
---|
377 | 0 1 |
---|
378 | 1 0 |
---|
379 | # e && !(req ) |
---|
380 | .names e _n81 _n82 |
---|
381 | .def 0 |
---|
382 | 1 1 1 |
---|
383 | .names _n82 _n83 |
---|
384 | - =_n82 |
---|
385 | # st = 3 |
---|
386 | .mv st$_n82_n84$true 4 S D X T |
---|
387 | .names st$_n82_n84$true |
---|
388 | T |
---|
389 | # if/else (e && !(req )) |
---|
390 | .mv st$_n82$raw_n87 4 S D X T |
---|
391 | .names st$_n82_n84$true st _n82 st$_n82$raw_n87 |
---|
392 | - - 0 =st |
---|
393 | - - 1 =st$_n82_n84$true |
---|
394 | # if/else (e && (req )) |
---|
395 | .mv st$_n7e$raw_n89 4 S D X T |
---|
396 | .names st$_n7e_n80$true st$_n82$raw_n87 _n7e st$_n7e$raw_n89 |
---|
397 | - - 0 =st$_n82$raw_n87 |
---|
398 | - - 1 =st$_n7e_n80$true |
---|
399 | .names r _n8c |
---|
400 | - =r |
---|
401 | # st = 0 |
---|
402 | .mv st$r_n8d$true 4 S D X T |
---|
403 | .names st$r_n8d$true |
---|
404 | S |
---|
405 | # if/else (r ) |
---|
406 | .mv st$r$raw_n90 4 S D X T |
---|
407 | .names st$r_n8d$true st r st$r$raw_n90 |
---|
408 | - - 0 =st |
---|
409 | - - 1 =st$r_n8d$true |
---|
410 | # case (st ) |
---|
411 | .mv st$_n7b$raw_n92 4 S D X T |
---|
412 | .names st$_n7e$raw_n89 st$r$raw_n90 _n7b st$_n7b$raw_n92 |
---|
413 | - - 0 =st$r$raw_n90 |
---|
414 | - - 1 =st$_n7e$raw_n89 |
---|
415 | # conflict arbitrators |
---|
416 | .names f$raw_n72 f |
---|
417 | 0 0 |
---|
418 | 1 1 |
---|
419 | .names s$raw_n6d s |
---|
420 | 0 0 |
---|
421 | 1 1 |
---|
422 | .names _n7b _n7f _n83 _n8c _n95 |
---|
423 | .def 0 |
---|
424 | 1 1 - - 1 |
---|
425 | 1 0 1 - 1 |
---|
426 | 0 - - 1 1 |
---|
427 | .mv _n96 4 S D X T |
---|
428 | .names _n95 st$_n7b$raw_n92 st _n96 |
---|
429 | 1 - - =st$_n7b$raw_n92 |
---|
430 | 0 - - =st |
---|
431 | # non-blocking assignments |
---|
432 | # latches |
---|
433 | .r st$raw_n6c st |
---|
434 | - =st$raw_n6c |
---|
435 | .latch _n96 st |
---|
436 | # quasi-continuous assignment |
---|
437 | .end |
---|
438 | |
---|
439 | |
---|
440 | .model a0_seq3 |
---|
441 | # I/O ports |
---|
442 | .inputs release |
---|
443 | .inputs e |
---|
444 | .outputs f |
---|
445 | .inputs req |
---|
446 | .inputs r |
---|
447 | .outputs s |
---|
448 | .inputs use |
---|
449 | .inputs grant |
---|
450 | |
---|
451 | .subckt a0_seq1 a0_seq1 e=e1 r=r1 s=s1 f=f1 req=req grant=grant |
---|
452 | .subckt a0_seq2 a0_seq2 e=e2 r=r2 s=s2 f=f2 use=use release=release |
---|
453 | # assign r1 = r |
---|
454 | .names r r1$raw_n99 |
---|
455 | - =r |
---|
456 | # assign r2 = r |
---|
457 | .names r r2$raw_n9a |
---|
458 | - =r |
---|
459 | .subckt then then e=s1 r=r s=e2 |
---|
460 | # assign s = s2 |
---|
461 | .names s2 s$raw_n9b |
---|
462 | - =s2 |
---|
463 | # assign f = f1 || f2 |
---|
464 | # f1 || f2 |
---|
465 | .names f1 f2 _n9d |
---|
466 | .def 1 |
---|
467 | 0 0 0 |
---|
468 | .names _n9d f$raw_n9c |
---|
469 | - =_n9d |
---|
470 | # assign e1 = e |
---|
471 | .names e e1$raw_n9e |
---|
472 | - =e |
---|
473 | # conflict arbitrators |
---|
474 | .names r1$raw_n99 r1 |
---|
475 | 0 0 |
---|
476 | 1 1 |
---|
477 | .names r2$raw_n9a r2 |
---|
478 | 0 0 |
---|
479 | 1 1 |
---|
480 | .names f$raw_n9c f |
---|
481 | 0 0 |
---|
482 | 1 1 |
---|
483 | .names s$raw_n9b s |
---|
484 | 0 0 |
---|
485 | 1 1 |
---|
486 | .names e1$raw_n9e e1 |
---|
487 | 0 0 |
---|
488 | 1 1 |
---|
489 | # non-blocking assignments |
---|
490 | # latches |
---|
491 | # quasi-continuous assignment |
---|
492 | .end |
---|
493 | |
---|
494 | |
---|
495 | .model a0_seq1 |
---|
496 | # I/O ports |
---|
497 | .inputs e |
---|
498 | .outputs f |
---|
499 | .inputs req |
---|
500 | .inputs r |
---|
501 | .outputs s |
---|
502 | .inputs grant |
---|
503 | |
---|
504 | .mv st 4 S D X T |
---|
505 | # st = 0 |
---|
506 | .mv st$raw_n9f 4 S D X T |
---|
507 | .names st$raw_n9f |
---|
508 | S |
---|
509 | # non-blocking assignments for initial |
---|
510 | # assign s = (((st == S ) && e && (grant )) || ((st == X ) && (!r ) && (grant ))) |
---|
511 | .mv _na2 4 S D X T |
---|
512 | .names _na2 |
---|
513 | S |
---|
514 | # st == 0 |
---|
515 | .names st _na2 _na1 |
---|
516 | .def 0 |
---|
517 | - =st 1 |
---|
518 | # (st == 0) && e |
---|
519 | .names _na1 e _na3 |
---|
520 | .def 0 |
---|
521 | 1 1 1 |
---|
522 | # (st == 0) && e && (grant ) |
---|
523 | .names _na3 grant _na4 |
---|
524 | .def 0 |
---|
525 | 1 1 1 |
---|
526 | .mv _na6 4 S D X T |
---|
527 | .names _na6 |
---|
528 | X |
---|
529 | # st == 2 |
---|
530 | .names st _na6 _na5 |
---|
531 | .def 0 |
---|
532 | - =st 1 |
---|
533 | .names r _na7 |
---|
534 | 0 1 |
---|
535 | 1 0 |
---|
536 | # (st == 2) && (!r ) |
---|
537 | .names _na5 _na7 _na8 |
---|
538 | .def 0 |
---|
539 | 1 1 1 |
---|
540 | # (st == 2) && (!r ) && (grant ) |
---|
541 | .names _na8 grant _na9 |
---|
542 | .def 0 |
---|
543 | 1 1 1 |
---|
544 | # ((st == 0) && e && (grant )) || ((st == 2) && (!r ) && (grant )) |
---|
545 | .names _na4 _na9 _naa |
---|
546 | .def 1 |
---|
547 | 0 0 0 |
---|
548 | .names _naa s$raw_na0 |
---|
549 | - =_naa |
---|
550 | # assign f = (((st == S ) && e && !(req ) && !(grant )) || ((st == X ) && !(req ) && !(grant )) || (st == T )) |
---|
551 | .mv _nad 4 S D X T |
---|
552 | .names _nad |
---|
553 | S |
---|
554 | # st == 0 |
---|
555 | .names st _nad _nac |
---|
556 | .def 0 |
---|
557 | - =st 1 |
---|
558 | # (st == 0) && e |
---|
559 | .names _nac e _nae |
---|
560 | .def 0 |
---|
561 | 1 1 1 |
---|
562 | .names req _naf |
---|
563 | 0 1 |
---|
564 | 1 0 |
---|
565 | # (st == 0) && e && !(req ) |
---|
566 | .names _nae _naf _nb0 |
---|
567 | .def 0 |
---|
568 | 1 1 1 |
---|
569 | .names grant _nb1 |
---|
570 | 0 1 |
---|
571 | 1 0 |
---|
572 | # (st == 0) && e && !(req ) && !(grant ) |
---|
573 | .names _nb0 _nb1 _nb2 |
---|
574 | .def 0 |
---|
575 | 1 1 1 |
---|
576 | .mv _nb4 4 S D X T |
---|
577 | .names _nb4 |
---|
578 | X |
---|
579 | # st == 2 |
---|
580 | .names st _nb4 _nb3 |
---|
581 | .def 0 |
---|
582 | - =st 1 |
---|
583 | .names req _nb5 |
---|
584 | 0 1 |
---|
585 | 1 0 |
---|
586 | # (st == 2) && !(req ) |
---|
587 | .names _nb3 _nb5 _nb6 |
---|
588 | .def 0 |
---|
589 | 1 1 1 |
---|
590 | .names grant _nb7 |
---|
591 | 0 1 |
---|
592 | 1 0 |
---|
593 | # (st == 2) && !(req ) && !(grant ) |
---|
594 | .names _nb6 _nb7 _nb8 |
---|
595 | .def 0 |
---|
596 | 1 1 1 |
---|
597 | # ((st == 0) && e && !(req ) && !(grant )) || ((st == 2) && !(req ) && !(grant )) |
---|
598 | .names _nb2 _nb8 _nb9 |
---|
599 | .def 1 |
---|
600 | 0 0 0 |
---|
601 | .mv _nbb 4 S D X T |
---|
602 | .names _nbb |
---|
603 | T |
---|
604 | # st == 3 |
---|
605 | .names st _nbb _nba |
---|
606 | .def 0 |
---|
607 | - =st 1 |
---|
608 | # ((st == 0) && e && !(req ) && !(grant )) || ((st == 2) && !(req ) && !(grant )) || (st == 3) |
---|
609 | .names _nb9 _nba _nbc |
---|
610 | .def 1 |
---|
611 | 0 0 0 |
---|
612 | .names _nbc f$raw_nab |
---|
613 | - =_nbc |
---|
614 | .mv _nbf 4 S D X T |
---|
615 | .names _nbf |
---|
616 | S |
---|
617 | .names st _nbf _nbe |
---|
618 | .def 0 |
---|
619 | - =st 1 |
---|
620 | .names _nbe _nbd |
---|
621 | 1 1 |
---|
622 | 0 0 |
---|
623 | # e && (grant ) |
---|
624 | .names e grant _nc0 |
---|
625 | .def 0 |
---|
626 | 1 1 1 |
---|
627 | .names _nc0 _nc1 |
---|
628 | - =_nc0 |
---|
629 | # st = 0 |
---|
630 | .mv st$_nc0_nc2$true 4 S D X T |
---|
631 | .names st$_nc0_nc2$true |
---|
632 | S |
---|
633 | # e && (req ) |
---|
634 | .names e req _nc3 |
---|
635 | .def 0 |
---|
636 | 1 1 1 |
---|
637 | .names _nc3 _nc4 |
---|
638 | - =_nc3 |
---|
639 | # st = 2 |
---|
640 | .mv st$_nc3_nc5$true 4 S D X T |
---|
641 | .names st$_nc3_nc5$true |
---|
642 | X |
---|
643 | .names req _nc6 |
---|
644 | 0 1 |
---|
645 | 1 0 |
---|
646 | # e && !(req ) |
---|
647 | .names e _nc6 _nc7 |
---|
648 | .def 0 |
---|
649 | 1 1 1 |
---|
650 | .names grant _nc8 |
---|
651 | 0 1 |
---|
652 | 1 0 |
---|
653 | # e && !(req ) && !(grant ) |
---|
654 | .names _nc7 _nc8 _nc9 |
---|
655 | .def 0 |
---|
656 | 1 1 1 |
---|
657 | .names _nc9 _nca |
---|
658 | - =_nc9 |
---|
659 | # st = 3 |
---|
660 | .mv st$_nc9_ncb$true 4 S D X T |
---|
661 | .names st$_nc9_ncb$true |
---|
662 | T |
---|
663 | # if/else (e && !(req ) && !(grant )) |
---|
664 | .mv st$_nc9$raw_nce 4 S D X T |
---|
665 | .names st$_nc9_ncb$true st _nc9 st$_nc9$raw_nce |
---|
666 | - - 0 =st |
---|
667 | - - 1 =st$_nc9_ncb$true |
---|
668 | # if/else (e && (req )) |
---|
669 | .mv st$_nc3$raw_nd0 4 S D X T |
---|
670 | .names st$_nc3_nc5$true st$_nc9$raw_nce _nc3 st$_nc3$raw_nd0 |
---|
671 | - - 0 =st$_nc9$raw_nce |
---|
672 | - - 1 =st$_nc3_nc5$true |
---|
673 | # if/else (e && (grant )) |
---|
674 | .mv st$_nc0$raw_nd4 4 S D X T |
---|
675 | .names st$_nc0_nc2$true st$_nc3$raw_nd0 _nc0 st$_nc0$raw_nd4 |
---|
676 | - - 0 =st$_nc3$raw_nd0 |
---|
677 | - - 1 =st$_nc0_nc2$true |
---|
678 | .mv _nd9 4 S D X T |
---|
679 | .names _nd9 |
---|
680 | X |
---|
681 | .names st _nd9 _nd8 |
---|
682 | .def 0 |
---|
683 | - =st 1 |
---|
684 | .names _nd8 _nd7 |
---|
685 | 1 1 |
---|
686 | 0 0 |
---|
687 | # r || (grant ) |
---|
688 | .names r grant _nda |
---|
689 | .def 1 |
---|
690 | 0 0 0 |
---|
691 | .names _nda _ndb |
---|
692 | - =_nda |
---|
693 | # st = 0 |
---|
694 | .mv st$_nda_ndc$true 4 S D X T |
---|
695 | .names st$_nda_ndc$true |
---|
696 | S |
---|
697 | .names req _ndd |
---|
698 | 0 1 |
---|
699 | 1 0 |
---|
700 | .names grant _nde |
---|
701 | 0 1 |
---|
702 | 1 0 |
---|
703 | # !(req ) && !(grant ) |
---|
704 | .names _ndd _nde _ndf |
---|
705 | .def 0 |
---|
706 | 1 1 1 |
---|
707 | .names _ndf _ne0 |
---|
708 | - =_ndf |
---|
709 | # st = 3 |
---|
710 | .mv st$_ndf_ne1$true 4 S D X T |
---|
711 | .names st$_ndf_ne1$true |
---|
712 | T |
---|
713 | # if/else (!(req ) && !(grant )) |
---|
714 | .mv st$_ndf$raw_ne4 4 S D X T |
---|
715 | .names st$_ndf_ne1$true st _ndf st$_ndf$raw_ne4 |
---|
716 | - - 0 =st |
---|
717 | - - 1 =st$_ndf_ne1$true |
---|
718 | # if/else (r || (grant )) |
---|
719 | .mv st$_nda$raw_ne6 4 S D X T |
---|
720 | .names st$_nda_ndc$true st$_ndf$raw_ne4 _nda st$_nda$raw_ne6 |
---|
721 | - - 0 =st$_ndf$raw_ne4 |
---|
722 | - - 1 =st$_nda_ndc$true |
---|
723 | .names r _ne9 |
---|
724 | - =r |
---|
725 | # st = 0 |
---|
726 | .mv st$r_nea$true 4 S D X T |
---|
727 | .names st$r_nea$true |
---|
728 | S |
---|
729 | # if/else (r ) |
---|
730 | .mv st$r$raw_ned 4 S D X T |
---|
731 | .names st$r_nea$true st r st$r$raw_ned |
---|
732 | - - 0 =st |
---|
733 | - - 1 =st$r_nea$true |
---|
734 | # case (st ) |
---|
735 | .mv st$_nd7$raw_nef 4 S D X T |
---|
736 | .names st$_nda$raw_ne6 st$r$raw_ned _nd7 st$_nd7$raw_nef |
---|
737 | - - 0 =st$r$raw_ned |
---|
738 | - - 1 =st$_nda$raw_ne6 |
---|
739 | .mv st$_nbd$raw_nf3 4 S D X T |
---|
740 | .names st$_nc0$raw_nd4 st$_nd7$raw_nef _nbd st$_nbd$raw_nf3 |
---|
741 | - - 0 =st$_nd7$raw_nef |
---|
742 | - - 1 =st$_nc0$raw_nd4 |
---|
743 | # conflict arbitrators |
---|
744 | .names f$raw_nab f |
---|
745 | 0 0 |
---|
746 | 1 1 |
---|
747 | .names s$raw_na0 s |
---|
748 | 0 0 |
---|
749 | 1 1 |
---|
750 | .names _nbd _nc1 _nc4 _nca _nd7 _ndb _ne0 _ne9 _nf6 |
---|
751 | .def 0 |
---|
752 | 1 1 - - - - - - 1 |
---|
753 | 1 0 1 - - - - - 1 |
---|
754 | 1 0 0 1 - - - - 1 |
---|
755 | 0 - - - 1 1 - - 1 |
---|
756 | 0 - - - 1 0 1 - 1 |
---|
757 | 0 - - - 0 - - 1 1 |
---|
758 | .mv _nf7 4 S D X T |
---|
759 | .names _nf6 st$_nbd$raw_nf3 st _nf7 |
---|
760 | 1 - - =st$_nbd$raw_nf3 |
---|
761 | 0 - - =st |
---|
762 | # non-blocking assignments |
---|
763 | # latches |
---|
764 | .r st$raw_n9f st |
---|
765 | - =st$raw_n9f |
---|
766 | .latch _nf7 st |
---|
767 | # quasi-continuous assignment |
---|
768 | .end |
---|
769 | |
---|
770 | |
---|
771 | .model a0_seq2 |
---|
772 | # I/O ports |
---|
773 | .inputs release |
---|
774 | .inputs e |
---|
775 | .outputs f |
---|
776 | .inputs r |
---|
777 | .outputs s |
---|
778 | .inputs use |
---|
779 | |
---|
780 | .mv st 4 S D X T |
---|
781 | # st = 0 |
---|
782 | .mv st$raw_nfa 4 S D X T |
---|
783 | .names st$raw_nfa |
---|
784 | S |
---|
785 | # non-blocking assignments for initial |
---|
786 | # assign s = (((st == S ) && e && (release )) || ((st == X ) && (!r ) && (release ))) |
---|
787 | .mv _nfd 4 S D X T |
---|
788 | .names _nfd |
---|
789 | S |
---|
790 | # st == 0 |
---|
791 | .names st _nfd _nfc |
---|
792 | .def 0 |
---|
793 | - =st 1 |
---|
794 | # (st == 0) && e |
---|
795 | .names _nfc e _nfe |
---|
796 | .def 0 |
---|
797 | 1 1 1 |
---|
798 | # (st == 0) && e && (release ) |
---|
799 | .names _nfe release _nff |
---|
800 | .def 0 |
---|
801 | 1 1 1 |
---|
802 | .mv _n101 4 S D X T |
---|
803 | .names _n101 |
---|
804 | X |
---|
805 | # st == 2 |
---|
806 | .names st _n101 _n100 |
---|
807 | .def 0 |
---|
808 | - =st 1 |
---|
809 | .names r _n102 |
---|
810 | 0 1 |
---|
811 | 1 0 |
---|
812 | # (st == 2) && (!r ) |
---|
813 | .names _n100 _n102 _n103 |
---|
814 | .def 0 |
---|
815 | 1 1 1 |
---|
816 | # (st == 2) && (!r ) && (release ) |
---|
817 | .names _n103 release _n104 |
---|
818 | .def 0 |
---|
819 | 1 1 1 |
---|
820 | # ((st == 0) && e && (release )) || ((st == 2) && (!r ) && (release )) |
---|
821 | .names _nff _n104 _n105 |
---|
822 | .def 1 |
---|
823 | 0 0 0 |
---|
824 | .names _n105 s$raw_nfb |
---|
825 | - =_n105 |
---|
826 | # assign f = (((st == S ) && e && !(use ) && !(release )) || ((st == X ) && !(use ) && !(release )) || (st == T )) |
---|
827 | .mv _n108 4 S D X T |
---|
828 | .names _n108 |
---|
829 | S |
---|
830 | # st == 0 |
---|
831 | .names st _n108 _n107 |
---|
832 | .def 0 |
---|
833 | - =st 1 |
---|
834 | # (st == 0) && e |
---|
835 | .names _n107 e _n109 |
---|
836 | .def 0 |
---|
837 | 1 1 1 |
---|
838 | .names use _n10a |
---|
839 | 0 1 |
---|
840 | 1 0 |
---|
841 | # (st == 0) && e && !(use ) |
---|
842 | .names _n109 _n10a _n10b |
---|
843 | .def 0 |
---|
844 | 1 1 1 |
---|
845 | .names release _n10c |
---|
846 | 0 1 |
---|
847 | 1 0 |
---|
848 | # (st == 0) && e && !(use ) && !(release ) |
---|
849 | .names _n10b _n10c _n10d |
---|
850 | .def 0 |
---|
851 | 1 1 1 |
---|
852 | .mv _n10f 4 S D X T |
---|
853 | .names _n10f |
---|
854 | X |
---|
855 | # st == 2 |
---|
856 | .names st _n10f _n10e |
---|
857 | .def 0 |
---|
858 | - =st 1 |
---|
859 | .names use _n110 |
---|
860 | 0 1 |
---|
861 | 1 0 |
---|
862 | # (st == 2) && !(use ) |
---|
863 | .names _n10e _n110 _n111 |
---|
864 | .def 0 |
---|
865 | 1 1 1 |
---|
866 | .names release _n112 |
---|
867 | 0 1 |
---|
868 | 1 0 |
---|
869 | # (st == 2) && !(use ) && !(release ) |
---|
870 | .names _n111 _n112 _n113 |
---|
871 | .def 0 |
---|
872 | 1 1 1 |
---|
873 | # ((st == 0) && e && !(use ) && !(release )) || ((st == 2) && !(use ) && !(release )) |
---|
874 | .names _n10d _n113 _n114 |
---|
875 | .def 1 |
---|
876 | 0 0 0 |
---|
877 | .mv _n116 4 S D X T |
---|
878 | .names _n116 |
---|
879 | T |
---|
880 | # st == 3 |
---|
881 | .names st _n116 _n115 |
---|
882 | .def 0 |
---|
883 | - =st 1 |
---|
884 | # ((st == 0) && e && !(use ) && !(release )) || ((st == 2) && !(use ) && !(release )) || (st == 3) |
---|
885 | .names _n114 _n115 _n117 |
---|
886 | .def 1 |
---|
887 | 0 0 0 |
---|
888 | .names _n117 f$raw_n106 |
---|
889 | - =_n117 |
---|
890 | .mv _n11a 4 S D X T |
---|
891 | .names _n11a |
---|
892 | S |
---|
893 | .names st _n11a _n119 |
---|
894 | .def 0 |
---|
895 | - =st 1 |
---|
896 | .names _n119 _n118 |
---|
897 | 1 1 |
---|
898 | 0 0 |
---|
899 | # e && (release ) |
---|
900 | .names e release _n11b |
---|
901 | .def 0 |
---|
902 | 1 1 1 |
---|
903 | .names _n11b _n11c |
---|
904 | - =_n11b |
---|
905 | # st = 0 |
---|
906 | .mv st$_n11b_n11d$true 4 S D X T |
---|
907 | .names st$_n11b_n11d$true |
---|
908 | S |
---|
909 | # e && (use ) |
---|
910 | .names e use _n11e |
---|
911 | .def 0 |
---|
912 | 1 1 1 |
---|
913 | .names _n11e _n11f |
---|
914 | - =_n11e |
---|
915 | # st = 2 |
---|
916 | .mv st$_n11e_n120$true 4 S D X T |
---|
917 | .names st$_n11e_n120$true |
---|
918 | X |
---|
919 | .names use _n121 |
---|
920 | 0 1 |
---|
921 | 1 0 |
---|
922 | # e && !(use ) |
---|
923 | .names e _n121 _n122 |
---|
924 | .def 0 |
---|
925 | 1 1 1 |
---|
926 | .names release _n123 |
---|
927 | 0 1 |
---|
928 | 1 0 |
---|
929 | # e && !(use ) && !(release ) |
---|
930 | .names _n122 _n123 _n124 |
---|
931 | .def 0 |
---|
932 | 1 1 1 |
---|
933 | .names _n124 _n125 |
---|
934 | - =_n124 |
---|
935 | # st = 3 |
---|
936 | .mv st$_n124_n126$true 4 S D X T |
---|
937 | .names st$_n124_n126$true |
---|
938 | T |
---|
939 | # if/else (e && !(use ) && !(release )) |
---|
940 | .mv st$_n124$raw_n129 4 S D X T |
---|
941 | .names st$_n124_n126$true st _n124 st$_n124$raw_n129 |
---|
942 | - - 0 =st |
---|
943 | - - 1 =st$_n124_n126$true |
---|
944 | # if/else (e && (use )) |
---|
945 | .mv st$_n11e$raw_n12b 4 S D X T |
---|
946 | .names st$_n11e_n120$true st$_n124$raw_n129 _n11e st$_n11e$raw_n12b |
---|
947 | - - 0 =st$_n124$raw_n129 |
---|
948 | - - 1 =st$_n11e_n120$true |
---|
949 | # if/else (e && (release )) |
---|
950 | .mv st$_n11b$raw_n12f 4 S D X T |
---|
951 | .names st$_n11b_n11d$true st$_n11e$raw_n12b _n11b st$_n11b$raw_n12f |
---|
952 | - - 0 =st$_n11e$raw_n12b |
---|
953 | - - 1 =st$_n11b_n11d$true |
---|
954 | .mv _n134 4 S D X T |
---|
955 | .names _n134 |
---|
956 | X |
---|
957 | .names st _n134 _n133 |
---|
958 | .def 0 |
---|
959 | - =st 1 |
---|
960 | .names _n133 _n132 |
---|
961 | 1 1 |
---|
962 | 0 0 |
---|
963 | # r || (release ) |
---|
964 | .names r release _n135 |
---|
965 | .def 1 |
---|
966 | 0 0 0 |
---|
967 | .names _n135 _n136 |
---|
968 | - =_n135 |
---|
969 | # st = 0 |
---|
970 | .mv st$_n135_n137$true 4 S D X T |
---|
971 | .names st$_n135_n137$true |
---|
972 | S |
---|
973 | .names use _n138 |
---|
974 | 0 1 |
---|
975 | 1 0 |
---|
976 | .names release _n139 |
---|
977 | 0 1 |
---|
978 | 1 0 |
---|
979 | # !(use ) && !(release ) |
---|
980 | .names _n138 _n139 _n13a |
---|
981 | .def 0 |
---|
982 | 1 1 1 |
---|
983 | .names _n13a _n13b |
---|
984 | - =_n13a |
---|
985 | # st = 3 |
---|
986 | .mv st$_n13a_n13c$true 4 S D X T |
---|
987 | .names st$_n13a_n13c$true |
---|
988 | T |
---|
989 | # if/else (!(use ) && !(release )) |
---|
990 | .mv st$_n13a$raw_n13f 4 S D X T |
---|
991 | .names st$_n13a_n13c$true st _n13a st$_n13a$raw_n13f |
---|
992 | - - 0 =st |
---|
993 | - - 1 =st$_n13a_n13c$true |
---|
994 | # if/else (r || (release )) |
---|
995 | .mv st$_n135$raw_n141 4 S D X T |
---|
996 | .names st$_n135_n137$true st$_n13a$raw_n13f _n135 st$_n135$raw_n141 |
---|
997 | - - 0 =st$_n13a$raw_n13f |
---|
998 | - - 1 =st$_n135_n137$true |
---|
999 | .names r _n144 |
---|
1000 | - =r |
---|
1001 | # st = 0 |
---|
1002 | .mv st$r_n145$true 4 S D X T |
---|
1003 | .names st$r_n145$true |
---|
1004 | S |
---|
1005 | # if/else (r ) |
---|
1006 | .mv st$r$raw_n148 4 S D X T |
---|
1007 | .names st$r_n145$true st r st$r$raw_n148 |
---|
1008 | - - 0 =st |
---|
1009 | - - 1 =st$r_n145$true |
---|
1010 | # case (st ) |
---|
1011 | .mv st$_n132$raw_n14a 4 S D X T |
---|
1012 | .names st$_n135$raw_n141 st$r$raw_n148 _n132 st$_n132$raw_n14a |
---|
1013 | - - 0 =st$r$raw_n148 |
---|
1014 | - - 1 =st$_n135$raw_n141 |
---|
1015 | .mv st$_n118$raw_n14e 4 S D X T |
---|
1016 | .names st$_n11b$raw_n12f st$_n132$raw_n14a _n118 st$_n118$raw_n14e |
---|
1017 | - - 0 =st$_n132$raw_n14a |
---|
1018 | - - 1 =st$_n11b$raw_n12f |
---|
1019 | # conflict arbitrators |
---|
1020 | .names f$raw_n106 f |
---|
1021 | 0 0 |
---|
1022 | 1 1 |
---|
1023 | .names s$raw_nfb s |
---|
1024 | 0 0 |
---|
1025 | 1 1 |
---|
1026 | .names _n118 _n11c _n11f _n125 _n132 _n136 _n13b _n144 _n151 |
---|
1027 | .def 0 |
---|
1028 | 1 1 - - - - - - 1 |
---|
1029 | 1 0 1 - - - - - 1 |
---|
1030 | 1 0 0 1 - - - - 1 |
---|
1031 | 0 - - - 1 1 - - 1 |
---|
1032 | 0 - - - 1 0 1 - 1 |
---|
1033 | 0 - - - 0 - - 1 1 |
---|
1034 | .mv _n152 4 S D X T |
---|
1035 | .names _n151 st$_n118$raw_n14e st _n152 |
---|
1036 | 1 - - =st$_n118$raw_n14e |
---|
1037 | 0 - - =st |
---|
1038 | # non-blocking assignments |
---|
1039 | # latches |
---|
1040 | .r st$raw_nfa st |
---|
1041 | - =st$raw_nfa |
---|
1042 | .latch _n152 st |
---|
1043 | # quasi-continuous assignment |
---|
1044 | .end |
---|
1045 | |
---|
1046 | |
---|
1047 | .model then |
---|
1048 | # I/O ports |
---|
1049 | .inputs e |
---|
1050 | .inputs r |
---|
1051 | .outputs s |
---|
1052 | |
---|
1053 | .mv st 4 S D X T |
---|
1054 | # st = 0 |
---|
1055 | .mv st$raw_n155 4 S D X T |
---|
1056 | .names st$raw_n155 |
---|
1057 | S |
---|
1058 | # non-blocking assignments for initial |
---|
1059 | # assign s = (st == D ) |
---|
1060 | .mv _n158 4 S D X T |
---|
1061 | .names _n158 |
---|
1062 | D |
---|
1063 | # st == 1 |
---|
1064 | .names st _n158 _n157 |
---|
1065 | .def 0 |
---|
1066 | - =st 1 |
---|
1067 | .names _n157 s$raw_n156 |
---|
1068 | - =_n157 |
---|
1069 | .mv _n15b 4 S D X T |
---|
1070 | .names _n15b |
---|
1071 | S |
---|
1072 | .names st _n15b _n15a |
---|
1073 | .def 0 |
---|
1074 | - =st 1 |
---|
1075 | .names _n15a _n159 |
---|
1076 | 1 1 |
---|
1077 | 0 0 |
---|
1078 | .names e _n15c |
---|
1079 | - =e |
---|
1080 | # st = 2 |
---|
1081 | .mv st$e_n15d$true 4 S D X T |
---|
1082 | .names st$e_n15d$true |
---|
1083 | X |
---|
1084 | # if/else (e ) |
---|
1085 | .mv st$e$raw_n160 4 S D X T |
---|
1086 | .names st$e_n15d$true st e st$e$raw_n160 |
---|
1087 | - - 0 =st |
---|
1088 | - - 1 =st$e_n15d$true |
---|
1089 | .mv _n163 4 S D X T |
---|
1090 | .names _n163 |
---|
1091 | X |
---|
1092 | .names st _n163 _n162 |
---|
1093 | .def 0 |
---|
1094 | - =st 1 |
---|
1095 | .names _n162 _n161 |
---|
1096 | 1 1 |
---|
1097 | 0 0 |
---|
1098 | # st = 1 |
---|
1099 | .mv st$_n161_n164$true 4 S D X T |
---|
1100 | .names st$_n161_n164$true |
---|
1101 | D |
---|
1102 | .names r _n165 |
---|
1103 | - =r |
---|
1104 | # st = 0 |
---|
1105 | .mv st$r_n166$true 4 S D X T |
---|
1106 | .names st$r_n166$true |
---|
1107 | S |
---|
1108 | # if/else (r ) |
---|
1109 | .mv st$r$raw_n169 4 S D X T |
---|
1110 | .names st$r_n166$true st r st$r$raw_n169 |
---|
1111 | - - 0 =st |
---|
1112 | - - 1 =st$r_n166$true |
---|
1113 | # case (st ) |
---|
1114 | .mv st$_n161$raw_n16b 4 S D X T |
---|
1115 | .names st$_n161_n164$true st$r$raw_n169 _n161 st$_n161$raw_n16b |
---|
1116 | - - 0 =st$r$raw_n169 |
---|
1117 | - - 1 =st$_n161_n164$true |
---|
1118 | .mv st$_n159$raw_n16f 4 S D X T |
---|
1119 | .names st$e$raw_n160 st$_n161$raw_n16b _n159 st$_n159$raw_n16f |
---|
1120 | - - 0 =st$_n161$raw_n16b |
---|
1121 | - - 1 =st$e$raw_n160 |
---|
1122 | # conflict arbitrators |
---|
1123 | .names s$raw_n156 s |
---|
1124 | 0 0 |
---|
1125 | 1 1 |
---|
1126 | .names _n159 _n15c _n161 _n165 _n172 |
---|
1127 | .def 0 |
---|
1128 | 1 1 - - 1 |
---|
1129 | 0 - 1 - 1 |
---|
1130 | 0 - 0 1 1 |
---|
1131 | .mv _n173 4 S D X T |
---|
1132 | .names _n172 st$_n159$raw_n16f st _n173 |
---|
1133 | 1 - - =st$_n159$raw_n16f |
---|
1134 | 0 - - =st |
---|
1135 | # non-blocking assignments |
---|
1136 | # latches |
---|
1137 | .r st$raw_n155 st |
---|
1138 | - =st$raw_n155 |
---|
1139 | .latch _n173 st |
---|
1140 | # quasi-continuous assignment |
---|
1141 | .end |
---|
1142 | |
---|
1143 | |
---|