source: vis_dev/vis-2.1/examples/gigamax/gigamax.mv @ 12

Last change on this file since 12 was 11, checked in by cecile, 13 years ago

Add vis

File size: 36.2 KB
Line 
1# vl2mv gigamax.v
2# version: 0.2
3# date:    11:15:57 12/11/95 (PST)
4.model main
5# I/O ports
6
7.mv p2_cmd 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
8.mv m_cmd 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
9.mv p0_cmd 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
10.mv nond_CMD 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
11.mv CMD 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
12.mv p1_cmd 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
13.subckt processor p0 CMD=CMD  master=p0_master  REPLY_OWNED=REPLY_OWNED  REPLY_WAITING=REPLY_WAITING  REPLY_STALL=REPLY_STALL  cmd=p0_cmd  reply_owned=p0_reply_owned  reply_waiting=p0_reply_waiting  reply_stall=p0_reply_stall 
14.subckt processor p1 CMD=CMD  master=p1_master  REPLY_OWNED=REPLY_OWNED  REPLY_WAITING=REPLY_WAITING  REPLY_STALL=REPLY_STALL  cmd=p1_cmd  reply_owned=p1_reply_owned  reply_waiting=p1_reply_waiting  reply_stall=p1_reply_stall 
15.subckt processor p2 CMD=CMD  master=p2_master  REPLY_OWNED=REPLY_OWNED  REPLY_WAITING=REPLY_WAITING  REPLY_STALL=REPLY_STALL  cmd=p2_cmd  reply_owned=p2_reply_owned  reply_waiting=p2_reply_waiting  reply_stall=p2_reply_stall 
16.subckt memory m CMD=CMD  master=m_master  REPLY_OWNED=REPLY_OWNED  REPLY_WAITING=REPLY_WAITING  REPLY_STALL=REPLY_STALL  cmd=m_cmd  reply_owned=m_reply_owned  reply_waiting=m_reply_waiting  reply_stall=m_reply_stall 
17# assign REPLY_OWNED  = p0_reply_owned  | p1_reply_owned  | p2_reply_owned
18# p0_reply_owned  | p1_reply_owned
19.names p0_reply_owned p1_reply_owned _n1
20.def 1
210 0 0
22# p0_reply_owned  | p1_reply_owned  | p2_reply_owned
23.names _n1 p2_reply_owned _n2
24.def 1
250 0 0
26.names _n2 REPLY_OWNED$raw_n0
27- =_n2
28# assign REPLY_WAITING  = p0_reply_waiting  | p1_reply_waiting  | p2_reply_waiting
29# p0_reply_waiting  | p1_reply_waiting
30.names p0_reply_waiting p1_reply_waiting _n4
31.def 1
320 0 0
33# p0_reply_waiting  | p1_reply_waiting  | p2_reply_waiting
34.names _n4 p2_reply_waiting _n5
35.def 1
360 0 0
37.names _n5 REPLY_WAITING$raw_n3
38- =_n5
39# assign REPLY_STALL  = p0_reply_stall  | p1_reply_stall  | p2_reply_stall  | m_reply_stall
40# p0_reply_stall  | p1_reply_stall
41.names p0_reply_stall p1_reply_stall _n7
42.def 1
430 0 0
44# p0_reply_stall  | p1_reply_stall  | p2_reply_stall
45.names _n7 p2_reply_stall _n8
46.def 1
470 0 0
48# p0_reply_stall  | p1_reply_stall  | p2_reply_stall  | m_reply_stall
49.names _n8 m_reply_stall _n9
50.def 1
510 0 0
52.names _n9 REPLY_STALL$raw_n6
53- =_n9
54# assign CMD  = (p1_cmd  == 0 && p2_cmd  == 0 && m_cmd  == 0) ? p0_cmd  : (p0_cmd  == 0 && p2_cmd  == 0 && m_cmd  == 0) ? p1_cmd  : (p0_cmd  == 0 && p1_cmd  == 0 && m_cmd  == 0) ? p2_cmd  : (p0_cmd  == 0 && p1_cmd  == 0 && p2_cmd  == 0) ? m_cmd  : nond_CMD
55.mv CMD$raw_na 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
56.mv _nc 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
57.names _nc
58idle
59# p1_cmd  == 0
60.names p1_cmd _nc _nb
61.def 0
62- =p1_cmd 1
63.mv _ne 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
64.names _ne
65idle
66# p2_cmd  == 0
67.names p2_cmd _ne _nd
68.def 0
69- =p2_cmd 1
70# p1_cmd  == 0 && p2_cmd  == 0
71.names _nb _nd _nf
72.def 0
731 1 1
74.mv _n11 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
75.names _n11
76idle
77# m_cmd  == 0
78.names m_cmd _n11 _n10
79.def 0
80- =m_cmd 1
81# p1_cmd  == 0 && p2_cmd  == 0 && m_cmd  == 0
82.names _nf _n10 _n12
83.def 0
841 1 1
85.mv _n14 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
86.names _n14
87idle
88# p0_cmd  == 0
89.names p0_cmd _n14 _n13
90.def 0
91- =p0_cmd 1
92.mv _n16 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
93.names _n16
94idle
95# p2_cmd  == 0
96.names p2_cmd _n16 _n15
97.def 0
98- =p2_cmd 1
99# p0_cmd  == 0 && p2_cmd  == 0
100.names _n13 _n15 _n17
101.def 0
1021 1 1
103.mv _n19 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
104.names _n19
105idle
106# m_cmd  == 0
107.names m_cmd _n19 _n18
108.def 0
109- =m_cmd 1
110# p0_cmd  == 0 && p2_cmd  == 0 && m_cmd  == 0
111.names _n17 _n18 _n1a
112.def 0
1131 1 1
114.mv _n1c 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
115.names _n1c
116idle
117# p0_cmd  == 0
118.names p0_cmd _n1c _n1b
119.def 0
120- =p0_cmd 1
121.mv _n1e 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
122.names _n1e
123idle
124# p1_cmd  == 0
125.names p1_cmd _n1e _n1d
126.def 0
127- =p1_cmd 1
128# p0_cmd  == 0 && p1_cmd  == 0
129.names _n1b _n1d _n1f
130.def 0
1311 1 1
132.mv _n21 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
133.names _n21
134idle
135# m_cmd  == 0
136.names m_cmd _n21 _n20
137.def 0
138- =m_cmd 1
139# p0_cmd  == 0 && p1_cmd  == 0 && m_cmd  == 0
140.names _n1f _n20 _n22
141.def 0
1421 1 1
143.mv _n24 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
144.names _n24
145idle
146# p0_cmd  == 0
147.names p0_cmd _n24 _n23
148.def 0
149- =p0_cmd 1
150.mv _n26 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
151.names _n26
152idle
153# p1_cmd  == 0
154.names p1_cmd _n26 _n25
155.def 0
156- =p1_cmd 1
157# p0_cmd  == 0 && p1_cmd  == 0
158.names _n23 _n25 _n27
159.def 0
1601 1 1
161.mv _n29 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
162.names _n29
163idle
164# p2_cmd  == 0
165.names p2_cmd _n29 _n28
166.def 0
167- =p2_cmd 1
168# p0_cmd  == 0 && p1_cmd  == 0 && p2_cmd  == 0
169.names _n27 _n28 _n2a
170.def 0
1711 1 1
172# (p0_cmd  == 0 && p1_cmd  == 0 && p2_cmd  == 0) ? m_cmd  : nond_CMD
173.mv _n2b 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
174.names m_cmd nond_CMD _n2a _n2b
175- - 0 =nond_CMD
176- - 1 =m_cmd
177# (p0_cmd  == 0 && p1_cmd  == 0 && m_cmd  == 0) ? p2_cmd  : (p0_cmd  == 0 && p1_cmd  == 0 && p2_cmd  == 0) ? m_cmd  : nond_CMD
178.mv _n2c 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
179.names p2_cmd _n2b _n22 _n2c
180- - 0 =_n2b
181- - 1 =p2_cmd
182# (p0_cmd  == 0 && p2_cmd  == 0 && m_cmd  == 0) ? p1_cmd  : (p0_cmd  == 0 && p1_cmd  == 0 && m_cmd  == 0) ? p2_cmd  : (p0_cmd  == 0 && p1_cmd  == 0 && p2_cmd  == 0) ? m_cmd  : nond_CMD
183.mv _n2d 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
184.names p1_cmd _n2c _n1a _n2d
185- - 0 =_n2c
186- - 1 =p1_cmd
187# (p1_cmd  == 0 && p2_cmd  == 0 && m_cmd  == 0) ? p0_cmd  : (p0_cmd  == 0 && p2_cmd  == 0 && m_cmd  == 0) ? p1_cmd  : (p0_cmd  == 0 && p1_cmd  == 0 && m_cmd  == 0) ? p2_cmd  : (p0_cmd  == 0 && p1_cmd  == 0 && p2_cmd  == 0) ? m_cmd  : nond_CMD
188.mv _n2e 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
189.names p0_cmd _n2d _n12 _n2e
190- - 0 =_n2d
191- - 1 =p0_cmd
192.names _n2e CMD$raw_na
193- =_n2e
194# assign p0_master  = nond0_master
195.names nond0_master p0_master$raw_n2f
196- =nond0_master
197# assign p1_master  = (p0_master ) ? 0 : nond1_master
198.names _n31
1990
200# (p0_master ) ? 0 : nond1_master
201.names _n31 nond1_master p0_master _n32
2020 - 1 0
2031 - 1 1
204- 0 0 0
205- 1 0 1
206.names _n32 p1_master$raw_n30
207- =_n32
208# assign p2_master  = (p0_master  || p1_master ) ? 0 : nond2_master
209# p0_master  || p1_master
210.names p0_master p1_master _n35
211.def 1
2120 0 0
213.names _n36
2140
215# (p0_master  || p1_master ) ? 0 : nond2_master
216.names _n36 nond2_master _n35 _n37
2170 - 1 0
2181 - 1 1
219- 0 0 0
220- 1 0 1
221.names _n37 p2_master$raw_n34
222- =_n37
223# assign m_master  = ((p0_master  || p1_master ) || p2_master ) ? 0 : nondm_master
224# p0_master  || p1_master
225.names p0_master p1_master _n3a
226.def 1
2270 0 0
228# (p0_master  || p1_master ) || p2_master
229.names _n3a p2_master _n3b
230.def 1
2310 0 0
232.names _n3c
2330
234# ((p0_master  || p1_master ) || p2_master ) ? 0 : nondm_master
235.names _n3c nondm_master _n3b _n3d
2360 - 1 0
2371 - 1 1
238- 0 0 0
239- 1 0 1
240.names _n3d m_master$raw_n39
241- =_n3d
242# assign nond0_master  = $NDset ( 0,1 )
243.names nond0_master
2440
2451
246# assign nond1_master  = $NDset ( 0,1 )
247.names nond1_master
2480
2491
250# assign nond2_master  = $NDset ( 0,1 )
251.names nond2_master
2520
2531
254# assign nondm_master  = $NDset ( 0,1 )
255.names nondm_master
2560
2571
258# assign nond_CMD  = $NDset ( 0,1,2,3,4,5,6,7,8 )
259.names nond_CMD
260idle
261read_shared
262read_owned
263write_invalid
264write_shared
265write_resp_invalid
266write_resp_shared
267invalidate
268response
269# conflict arbitrators
270.names REPLY_OWNED$raw_n0  REPLY_OWNED
2710 0
2721 1
273.names m_master$raw_n39  m_master
2740 0
2751 1
276.names REPLY_WAITING$raw_n3  REPLY_WAITING
2770 0
2781 1
279.names p1_master$raw_n30  p1_master
2800 0
2811 1
282.names p2_master$raw_n34  p2_master
2830 0
2841 1
285.names REPLY_STALL$raw_n6  REPLY_STALL
2860 0
2871 1
288.names CMD$raw_na  CMD
289- =CMD$raw_na
290.names p0_master$raw_n2f  p0_master
2910 0
2921 1
293# non-blocking assignments
294# latches
295# quasi-continuous assignment
296.end
297
298
299.model processor
300# I/O ports
301.inputs REPLY_OWNED
302.outputs reply_waiting
303.inputs REPLY_WAITING
304.inputs master
305.outputs reply_owned
306.outputs reply_stall
307.outputs cmd
308.inputs REPLY_STALL
309.inputs CMD
310
311.mv snoop 3 invalid shared owned
312.mv cmd 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
313.mv CMD 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
314.mv state 3 invalid shared owned
315.mv nond_cmd 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
316.subckt bus_device Bdevice CMD=CMD  master=master  REPLY_STALL=REPLY_STALL  REPLY_WAITING=REPLY_WAITING  waiting=waiting  reply_waiting=reply_waiting  abort=abort 
317.subckt cache_device Cdevice CMD=CMD  master=master  abort=abort  waiting=waiting  state=state  snoop=snoop  reply_owned=reply_owned  readable=readable  writable=writable 
318# assign cmd  = (master  && state  == invalid ) ? nond_cmd  : (master  && state  == shared ) ? 2 : (master  && state  == owned  && snoop  == owned ) ? 5 : (master  && state  == owned  && snoop  == shared ) ? 6 : (master  && state  == owned  && snoop  == invalid ) ? 3 : 0
319.mv cmd$raw_n49 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
320.mv _n4b 3 invalid shared owned
321.names _n4b
322invalid
323# state  == 0
324.names state _n4b _n4a
325.def 0
326- =state 1
327# master  && state  == 0
328.names master _n4a _n4c
329.def 0
3301 1 1
331.mv _n4e 3 invalid shared owned
332.names _n4e
333shared
334# state  == 1
335.names state _n4e _n4d
336.def 0
337- =state 1
338# master  && state  == 1
339.names master _n4d _n4f
340.def 0
3411 1 1
342.mv _n51 3 invalid shared owned
343.names _n51
344owned
345# state  == 2
346.names state _n51 _n50
347.def 0
348- =state 1
349# master  && state  == 2
350.names master _n50 _n52
351.def 0
3521 1 1
353.mv _n54 3 invalid shared owned
354.names _n54
355owned
356# snoop  == 2
357.names snoop _n54 _n53
358.def 0
359- =snoop 1
360# master  && state  == 2 && snoop  == 2
361.names _n52 _n53 _n55
362.def 0
3631 1 1
364.mv _n57 3 invalid shared owned
365.names _n57
366owned
367# state  == 2
368.names state _n57 _n56
369.def 0
370- =state 1
371# master  && state  == 2
372.names master _n56 _n58
373.def 0
3741 1 1
375.mv _n5a 3 invalid shared owned
376.names _n5a
377shared
378# snoop  == 1
379.names snoop _n5a _n59
380.def 0
381- =snoop 1
382# master  && state  == 2 && snoop  == 1
383.names _n58 _n59 _n5b
384.def 0
3851 1 1
386.mv _n5d 3 invalid shared owned
387.names _n5d
388owned
389# state  == 2
390.names state _n5d _n5c
391.def 0
392- =state 1
393# master  && state  == 2
394.names master _n5c _n5e
395.def 0
3961 1 1
397.mv _n60 3 invalid shared owned
398.names _n60
399invalid
400# snoop  == 0
401.names snoop _n60 _n5f
402.def 0
403- =snoop 1
404# master  && state  == 2 && snoop  == 0
405.names _n5e _n5f _n61
406.def 0
4071 1 1
408.mv _n62 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
409.names _n62
410write_invalid
411.mv _n63 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
412.names _n63
413idle
414# (master  && state  == 2 && snoop  == 0) ? 3 : 0
415.mv _n64 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
416.names _n62 _n63 _n61 _n64
417- - 0 =_n63
418- - 1 =_n62
419.mv _n65 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
420.names _n65
421write_resp_shared
422# (master  && state  == 2 && snoop  == 1) ? 6 : (master  && state  == 2 && snoop  == 0) ? 3 : 0
423.mv _n66 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
424.names _n65 _n64 _n5b _n66
425- - 0 =_n64
426- - 1 =_n65
427.mv _n67 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
428.names _n67
429write_resp_invalid
430# (master  && state  == 2 && snoop  == 2) ? 5 : (master  && state  == 2 && snoop  == 1) ? 6 : (master  && state  == 2 && snoop  == 0) ? 3 : 0
431.mv _n68 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
432.names _n67 _n66 _n55 _n68
433- - 0 =_n66
434- - 1 =_n67
435.mv _n69 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
436.names _n69
437read_owned
438# (master  && state  == 1) ? 2 : (master  && state  == 2 && snoop  == 2) ? 5 : (master  && state  == 2 && snoop  == 1) ? 6 : (master  && state  == 2 && snoop  == 0) ? 3 : 0
439.mv _n6a 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
440.names _n69 _n68 _n4f _n6a
441- - 0 =_n68
442- - 1 =_n69
443# (master  && state  == 0) ? nond_cmd  : (master  && state  == 1) ? 2 : (master  && state  == 2 && snoop  == 2) ? 5 : (master  && state  == 2 && snoop  == 1) ? 6 : (master  && state  == 2 && snoop  == 0) ? 3 : 0
444.mv _n6b 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
445.names nond_cmd _n6a _n4c _n6b
446- - 0 =_n6a
447- - 1 =nond_cmd
448.names _n6b cmd$raw_n49
449- =_n6b
450# assign nond_cmd  = $NDset ( 1,2 )
451.names nond_cmd
452read_shared
453read_owned
454# assign reply_stall  = $NDset ( 0,1 )
455.names reply_stall
4560
4571
458# conflict arbitrators
459.names cmd$raw_n49  cmd
460- =cmd$raw_n49
461# non-blocking assignments
462# latches
463# quasi-continuous assignment
464.end
465
466
467.model memory
468# I/O ports
469.inputs REPLY_OWNED
470.outputs reply_waiting
471.inputs REPLY_WAITING
472.inputs master
473.outputs reply_owned
474.outputs reply_stall
475.outputs cmd
476.inputs REPLY_STALL
477.inputs CMD
478
479.mv cmd 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
480.mv CMD 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
481.mv nond_cmd 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
482# assign reply_owned  = 0
483.names reply_owned$raw_n70
4840
485# assign reply_waiting  = 0
486.names reply_waiting$raw_n71
4870
488# assign abort  = REPLY_STALL  || (CMD  == read_shared  || CMD  == read_owned ) && REPLY_WAITING  || (CMD  == read_shared  || CMD  == read_owned ) && REPLY_OWNED
489.mv _n74 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
490.names _n74
491read_shared
492# CMD  == 1
493.names CMD _n74 _n73
494.def 0
495- =CMD 1
496.mv _n76 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
497.names _n76
498read_owned
499# CMD  == 2
500.names CMD _n76 _n75
501.def 0
502- =CMD 1
503# CMD  == 1 || CMD  == 2
504.names _n73 _n75 _n77
505.def 1
5060 0 0
507# (CMD  == 1 || CMD  == 2) && REPLY_WAITING
508.names _n77 REPLY_WAITING _n78
509.def 0
5101 1 1
511# REPLY_STALL  || (CMD  == 1 || CMD  == 2) && REPLY_WAITING
512.names REPLY_STALL _n78 _n79
513.def 1
5140 0 0
515.mv _n7b 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
516.names _n7b
517read_shared
518# CMD  == 1
519.names CMD _n7b _n7a
520.def 0
521- =CMD 1
522.mv _n7d 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
523.names _n7d
524read_owned
525# CMD  == 2
526.names CMD _n7d _n7c
527.def 0
528- =CMD 1
529# CMD  == 1 || CMD  == 2
530.names _n7a _n7c _n7e
531.def 1
5320 0 0
533# (CMD  == 1 || CMD  == 2) && REPLY_OWNED
534.names _n7e REPLY_OWNED _n7f
535.def 0
5361 1 1
537# REPLY_STALL  || (CMD  == 1 || CMD  == 2) && REPLY_WAITING  || (CMD  == 1 || CMD  == 2) && REPLY_OWNED
538.names _n79 _n7f _n80
539.def 1
5400 0 0
541.names _n80 abort$raw_n72
542- =_n80
543# assign cmd  = (master  && busy ) ? nond_cmd  : 0
544.mv cmd$raw_n81 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
545# master  && busy
546.names master busy _n82
547.def 0
5481 1 1
549.mv _n83 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
550.names _n83
551idle
552# (master  && busy ) ? nond_cmd  : 0
553.mv _n84 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
554.names nond_cmd _n83 _n82 _n84
555- - 0 =_n83
556- - 1 =nond_cmd
557.names _n84 cmd$raw_n81
558- =_n84
559# assign reply_stall  = (busy  && (CMD  == read_shared  || CMD  == read_owned  || CMD  == write_invalid  || CMD  == write_shared  || CMD  == write_resp_invalid  || CMD  == write_resp_shared )) ? 1 : nond_reply_stall
560.mv _n87 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
561.names _n87
562read_shared
563# CMD  == 1
564.names CMD _n87 _n86
565.def 0
566- =CMD 1
567.mv _n89 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
568.names _n89
569read_owned
570# CMD  == 2
571.names CMD _n89 _n88
572.def 0
573- =CMD 1
574# CMD  == 1 || CMD  == 2
575.names _n86 _n88 _n8a
576.def 1
5770 0 0
578.mv _n8c 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
579.names _n8c
580write_invalid
581# CMD  == 3
582.names CMD _n8c _n8b
583.def 0
584- =CMD 1
585# CMD  == 1 || CMD  == 2 || CMD  == 3
586.names _n8a _n8b _n8d
587.def 1
5880 0 0
589.mv _n8f 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
590.names _n8f
591write_shared
592# CMD  == 4
593.names CMD _n8f _n8e
594.def 0
595- =CMD 1
596# CMD  == 1 || CMD  == 2 || CMD  == 3 || CMD  == 4
597.names _n8d _n8e _n90
598.def 1
5990 0 0
600.mv _n92 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
601.names _n92
602write_resp_invalid
603# CMD  == 5
604.names CMD _n92 _n91
605.def 0
606- =CMD 1
607# CMD  == 1 || CMD  == 2 || CMD  == 3 || CMD  == 4 || CMD  == 5
608.names _n90 _n91 _n93
609.def 1
6100 0 0
611.mv _n95 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
612.names _n95
613write_resp_shared
614# CMD  == 6
615.names CMD _n95 _n94
616.def 0
617- =CMD 1
618# CMD  == 1 || CMD  == 2 || CMD  == 3 || CMD  == 4 || CMD  == 5 || CMD  == 6
619.names _n93 _n94 _n96
620.def 1
6210 0 0
622# busy  && (CMD  == 1 || CMD  == 2 || CMD  == 3 || CMD  == 4 || CMD  == 5 || CMD  == 6)
623.names busy _n96 _n97
624.def 0
6251 1 1
626.names _n98
6271
628# (busy  && (CMD  == 1 || CMD  == 2 || CMD  == 3 || CMD  == 4 || CMD  == 5 || CMD  == 6)) ? 1 : nond_reply_stall
629.names _n98 nond_reply_stall _n97 _n99
6300 - 1 0
6311 - 1 1
632- 0 0 0
633- 1 0 1
634.names _n99 reply_stall$raw_n85
635- =_n99
636# assign nond_reply_stall  = $NDset ( 0,1 )
637.names nond_reply_stall
6380
6391
640# assign nond_cmd  = $NDset ( 8,0 )
641.names nond_cmd
642response
643idle
644# busy  = 0
645.names busy$raw_n9f
6460
647# non-blocking assignments for initial
648.names abort _na0
649- =abort
650# busy  = busy
651.names busy busy$abort_na1$true
652- =busy
653.mv _na3 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
654.names _na3
655response
656# CMD  == 8
657.names CMD _na3 _na2
658.def 0
659- =CMD 1
660# master  && CMD  == 8
661.names master _na2 _na4
662.def 0
6631 1 1
664.names _na4 _na5
665- =_na4
666# busy  = 0
667.names busy$_na4_na6$true
6680
669.names master _na7
6700 1 
6711 0 
672.mv _na9 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
673.names _na9
674read_owned
675# CMD  == 2
676.names CMD _na9 _na8
677.def 0
678- =CMD 1
679# !master  && CMD  == 2
680.names _na7 _na8 _naa
681.def 0
6821 1 1
683.mv _nac 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
684.names _nac
685read_shared
686# CMD  == 1
687.names CMD _nac _nab
688.def 0
689- =CMD 1
690# !master  && CMD  == 2 || CMD  == 1
691.names _naa _nab _nad
692.def 1
6930 0 0
694.names _nad _nae
695- =_nad
696# busy  = 1
697.names busy$_nad_naf$true
6981
699# if/else (!master  && CMD  == 2 || CMD  == 1)
700.names busy$_nad_naf$true busy _nad busy$_nad$raw_nb2
7010 - 1 0
7021 - 1 1
703- 0 0 0
704- 1 0 1
705# if/else (master  && CMD  == 8)
706.names busy$_na4_na6$true busy$_nad$raw_nb2 _na4 busy$_na4$raw_nb5
7070 - 1 0
7081 - 1 1
709- 0 0 0
710- 1 0 1
711# if/else (abort )
712.names busy$abort_na1$true busy$_na4$raw_nb5 abort busy$abort$raw_nba
7130 - 1 0
7141 - 1 1
715- 0 0 0
716- 1 0 1
717# conflict arbitrators
718.names _na0 _na5 _nae _nbe
719.def 0
720 1 - - 1
721 0 1 - 1
722 0 0 1 1
723.names _nbe busy$abort$raw_nba busy _nbf
7241 0 - 0
7251 1 - 1
7260 - 0 0
7270 - 1 1
728.names reply_waiting$raw_n71  reply_waiting
7290 0
7301 1
731.names abort$raw_n72  abort
7320 0
7331 1
734.names reply_owned$raw_n70  reply_owned
7350 0
7361 1
737.names reply_stall$raw_n85  reply_stall
7380 0
7391 1
740.names cmd$raw_n81  cmd
741- =cmd$raw_n81
742# non-blocking assignments
743# latches
744.r busy$raw_n9f busy
7450 0
7461 1
747.latch _nbf busy
748# quasi-continuous assignment
749.end
750
751
752.model cache_device
753# I/O ports
754.outputs writable
755.outputs readable
756.outputs snoop
757.inputs master
758.outputs reply_owned
759.inputs abort
760.inputs CMD
761.outputs state
762.inputs waiting
763
764.mv snoop 3 invalid shared owned
765.mv nond_state 3 invalid shared owned
766.mv nond_snoop 3 invalid shared owned
767.mv CMD 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
768.mv state 3 invalid shared owned
769# assign readable  = ((state  == shared ) || (state  == owned )) && !waiting
770.mv _nc2 3 invalid shared owned
771.names _nc2
772shared
773# state  == 1
774.names state _nc2 _nc1
775.def 0
776- =state 1
777.mv _nc4 3 invalid shared owned
778.names _nc4
779owned
780# state  == 2
781.names state _nc4 _nc3
782.def 0
783- =state 1
784# (state  == 1) || (state  == 2)
785.names _nc1 _nc3 _nc5
786.def 1
7870 0 0
788.names waiting _nc6
7890 1 
7901 0 
791# ((state  == 1) || (state  == 2)) && !waiting
792.names _nc5 _nc6 _nc7
793.def 0
7941 1 1
795.names _nc7 readable$raw_nc0
796- =_nc7
797# assign writable  = (state  == owned ) && (!waiting )
798.mv _nca 3 invalid shared owned
799.names _nca
800owned
801# state  == 2
802.names state _nca _nc9
803.def 0
804- =state 1
805.names waiting _ncb
8060 1 
8071 0 
808# (state  == 2) && (!waiting )
809.names _nc9 _ncb _ncc
810.def 0
8111 1 1
812.names _ncc writable$raw_nc8
813- =_ncc
814# assign reply_owned  = (!master ) && (state  == owned )
815.names master _nce
8160 1 
8171 0 
818.mv _nd0 3 invalid shared owned
819.names _nd0
820owned
821# state  == 2
822.names state _nd0 _ncf
823.def 0
824- =state 1
825# (!master ) && (state  == 2)
826.names _nce _ncf _nd1
827.def 0
8281 1 1
829.names _nd1 reply_owned$raw_ncd
830- =_nd1
831# assign nond_snoop  = $NDset ( 1,2 )
832.names nond_snoop
833shared
834owned
835# assign nond_state  = $NDset ( 1,0 )
836.names nond_state
837shared
838invalid
839# state  = 0
840.mv state$raw_nd6 3 invalid shared owned
841.names state$raw_nd6
842invalid
843# non-blocking assignments for initial
844# snoop  = 0
845.mv snoop$raw_nd7 3 invalid shared owned
846.names snoop$raw_nd7
847invalid
848# non-blocking assignments for initial
849.names abort _nd8
850- =abort
851# snoop  = snoop
852.mv snoop$abort_nd9$true 3 invalid shared owned
853.names snoop snoop$abort_nd9$true
854- =snoop
855.names master _nda
8560 1 
8571 0 
858.mv _ndc 3 invalid shared owned
859.names _ndc
860owned
861# state  == 2
862.names state _ndc _ndb
863.def 0
864- =state 1
865# !master  && state  == 2
866.names _nda _ndb _ndd
867.def 0
8681 1 1
869.mv _ndf 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
870.names _ndf
871read_shared
872# CMD  == 1
873.names CMD _ndf _nde
874.def 0
875- =CMD 1
876# !master  && state  == 2 && CMD  == 1
877.names _ndd _nde _ne0
878.def 0
8791 1 1
880.names _ne0 _ne1
881- =_ne0
882# snoop  = nond_snoop
883.mv snoop$_ne0_ne2$true 3 invalid shared owned
884.names nond_snoop snoop$_ne0_ne2$true
885- =nond_snoop
886.mv _ne4 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
887.names _ne4
888write_resp_invalid
889# CMD  == 5
890.names CMD _ne4 _ne3
891.def 0
892- =CMD 1
893# master  && CMD  == 5
894.names master _ne3 _ne5
895.def 0
8961 1 1
897.names _ne5 _ne6
898- =_ne5
899# snoop  = 0
900.mv snoop$_ne5_ne7$true 3 invalid shared owned
901.names snoop$_ne5_ne7$true
902invalid
903.mv _ne9 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
904.names _ne9
905write_resp_shared
906# CMD  == 6
907.names CMD _ne9 _ne8
908.def 0
909- =CMD 1
910# master  && CMD  == 6
911.names master _ne8 _nea
912.def 0
9131 1 1
914.names _nea _neb
915- =_nea
916# snoop  = 0
917.mv snoop$_nea_nec$true 3 invalid shared owned
918.names snoop$_nea_nec$true
919invalid
920# if/else (master  && CMD  == 6)
921.mv snoop$_nea$raw_nef 3 invalid shared owned
922.names snoop$_nea_nec$true snoop _nea snoop$_nea$raw_nef
923- - 0 =snoop
924- - 1 =snoop$_nea_nec$true
925# if/else (master  && CMD  == 5)
926.mv snoop$_ne5$raw_nf1 3 invalid shared owned
927.names snoop$_ne5_ne7$true snoop$_nea$raw_nef _ne5 snoop$_ne5$raw_nf1
928- - 0 =snoop$_nea$raw_nef
929- - 1 =snoop$_ne5_ne7$true
930# if/else (!master  && state  == 2 && CMD  == 1)
931.mv snoop$_ne0$raw_nf5 3 invalid shared owned
932.names snoop$_ne0_ne2$true snoop$_ne5$raw_nf1 _ne0 snoop$_ne0$raw_nf5
933- - 0 =snoop$_ne5$raw_nf1
934- - 1 =snoop$_ne0_ne2$true
935# if/else (abort )
936.mv snoop$abort$raw_nf9 3 invalid shared owned
937.names snoop$abort_nd9$true snoop$_ne0$raw_nf5 abort snoop$abort$raw_nf9
938- - 0 =snoop$_ne0$raw_nf5
939- - 1 =snoop$abort_nd9$true
940.names abort _nfc
941- =abort
942# state  = state
943.mv state$abort_nfd$true 3 invalid shared owned
944.names state state$abort_nfd$true
945- =state
946.names _nff
9471
948# master  == 1
949.names master _nff _n100
950.def 0
9510 1 1
9521 0 1
953.names _n100 _nfe
9540 1 
9551 0 
956.names _nfe _n102
957- =_nfe
958.mv _n105 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
959.names _n105
960read_shared
961.names CMD _n105 _n104
962.def 0
963- =CMD 1
964.names _n104  _n103
9651 1
9660 0
967# state  = 1
968.mv state$_n103_n106$true 3 invalid shared owned
969.names state$_n103_n106$true
970shared
971.mv _n109 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
972.names _n109
973read_owned
974.names CMD _n109 _n108
975.def 0
976- =CMD 1
977.names _n108  _n107
9781 1
9790 0
980# state  = 2
981.mv state$_n107_n10a$true 3 invalid shared owned
982.names state$_n107_n10a$true
983owned
984.mv _n10d 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
985.names _n10d
986write_invalid
987.names CMD _n10d _n10c
988.def 0
989- =CMD 1
990.names _n10c  _n10b
9911 1
9920 0
993# state  = 0
994.mv state$_n10b_n10e$true 3 invalid shared owned
995.names state$_n10b_n10e$true
996invalid
997.mv _n111 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
998.names _n111
999write_resp_invalid
1000.names CMD _n111 _n110
1001.def 0
1002- =CMD 1
1003.names _n110  _n10f
10041 1
10050 0
1006# state  = 0
1007.mv state$_n10f_n112$true 3 invalid shared owned
1008.names state$_n10f_n112$true
1009invalid
1010.mv _n115 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
1011.names _n115
1012write_shared
1013.names CMD _n115 _n114
1014.def 0
1015- =CMD 1
1016.names _n114  _n113
10171 1
10180 0
1019# state  = 1
1020.mv state$_n113_n116$true 3 invalid shared owned
1021.names state$_n113_n116$true
1022shared
1023.mv _n119 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
1024.names _n119
1025write_resp_shared
1026.names CMD _n119 _n118
1027.def 0
1028- =CMD 1
1029.names _n118  _n117
10301 1
10310 0
1032# state  = 1
1033.mv state$_n117_n11a$true 3 invalid shared owned
1034.names state$_n117_n11a$true
1035shared
1036# case (CMD )
1037.mv state$_n117$raw_n120 3 invalid shared owned
1038.names state$_n117_n11a$true state _n117 state$_n117$raw_n120
1039- - 0 =state
1040- - 1 =state$_n117_n11a$true
1041.mv state$_n113$raw_n123 3 invalid shared owned
1042.names state$_n113_n116$true state$_n117$raw_n120 _n113 state$_n113$raw_n123
1043- - 0 =state$_n117$raw_n120
1044- - 1 =state$_n113_n116$true
1045.mv state$_n10f$raw_n12b 3 invalid shared owned
1046.names state$_n10f_n112$true state$_n113$raw_n123 _n10f state$_n10f$raw_n12b
1047- - 0 =state$_n113$raw_n123
1048- - 1 =state$_n10f_n112$true
1049.mv state$_n10b$raw_n133 3 invalid shared owned
1050.names state$_n10b_n10e$true state$_n10f$raw_n12b _n10b state$_n10b$raw_n133
1051- - 0 =state$_n10f$raw_n12b
1052- - 1 =state$_n10b_n10e$true
1053.mv state$_n107$raw_n13b 3 invalid shared owned
1054.names state$_n107_n10a$true state$_n10b$raw_n133 _n107 state$_n107$raw_n13b
1055- - 0 =state$_n10b$raw_n133
1056- - 1 =state$_n107_n10a$true
1057.mv state$_n103$raw_n143 3 invalid shared owned
1058.names state$_n103_n106$true state$_n107$raw_n13b _n103 state$_n103$raw_n143
1059- - 0 =state$_n107$raw_n13b
1060- - 1 =state$_n103_n106$true
1061.names master _n14a
10620 1 
10631 0 
1064.mv _n14c 3 invalid shared owned
1065.names _n14c
1066shared
1067# state  == 1
1068.names state _n14c _n14b
1069.def 0
1070- =state 1
1071# !master  && state  == 1
1072.names _n14a _n14b _n14d
1073.def 0
10741 1 1
1075.mv _n14f 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
1076.names _n14f
1077read_owned
1078# CMD  == 2
1079.names CMD _n14f _n14e
1080.def 0
1081- =CMD 1
1082.mv _n151 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
1083.names _n151
1084invalidate
1085# CMD  == 7
1086.names CMD _n151 _n150
1087.def 0
1088- =CMD 1
1089# CMD  == 2 || CMD  == 7
1090.names _n14e _n150 _n152
1091.def 1
10920 0 0
1093# !master  && state  == 1 && (CMD  == 2 || CMD  == 7)
1094.names _n14d _n152 _n153
1095.def 0
10961 1 1
1097.names _n153 _n154
1098- =_n153
1099# state  = 0
1100.mv state$_n153_n155$true 3 invalid shared owned
1101.names state$_n153_n155$true
1102invalid
1103.mv _n157 3 invalid shared owned
1104.names _n157
1105shared
1106# state  == 1
1107.names state _n157 _n156
1108.def 0
1109- =state 1
1110.names _n156 _n158
1111- =_n156
1112# state  = nond_state
1113.mv state$_n156_n159$true 3 invalid shared owned
1114.names nond_state state$_n156_n159$true
1115- =nond_state
1116# if/else (state  == 1)
1117.mv state$_n156$raw_n15f 3 invalid shared owned
1118.names state$_n156_n159$true state _n156 state$_n156$raw_n15f
1119- - 0 =state
1120- - 1 =state$_n156_n159$true
1121# if/else (!master  && state  == 1 && (CMD  == 2 || CMD  == 7))
1122.mv state$_n153$raw_n164 3 invalid shared owned
1123.names state$_n153_n155$true state$_n156$raw_n15f _n153 state$_n153$raw_n164
1124- - 0 =state$_n156$raw_n15f
1125- - 1 =state$_n153_n155$true
1126# if/else (master  == 1)
1127.mv state$_nfe$raw_n16c 3 invalid shared owned
1128.names state$_n103$raw_n143 state$_n153$raw_n164 _nfe state$_nfe$raw_n16c
1129- - 0 =state$_n153$raw_n164
1130- - 1 =state$_n103$raw_n143
1131# if/else (abort )
1132.mv state$abort$raw_n174 3 invalid shared owned
1133.names state$abort_nfd$true state$_nfe$raw_n16c abort state$abort$raw_n174
1134- - 0 =state$_nfe$raw_n16c
1135- - 1 =state$abort_nfd$true
1136# conflict arbitrators
1137.names writable$raw_nc8  writable
11380 0
11391 1
1140.names readable$raw_nc0  readable
11410 0
11421 1
1143.names _nd8 _ne1 _ne6 _neb _n179
1144.def 0
1145 1 - - - 1
1146 0 1 - - 1
1147 0 0 1 - 1
1148 0 0 0 1 1
1149.mv _n17a 3 invalid shared owned
1150.names _n179 snoop$abort$raw_nf9 snoop _n17a
11511 - - =snoop$abort$raw_nf9
11520 - - =snoop
1153.names reply_owned$raw_ncd  reply_owned
11540 0
11551 1
1156.names _nfc _n102 _n103 _n107 _n10b _n10f _n113 _n117 _n154 _n158 _n187
1157.def 0
1158 1 - - - - - - - - - 1
1159 0 1 1 - - - - - - - 1
1160 0 1 0 1 - - - - - - 1
1161 0 1 0 0 1 - - - - - 1
1162 0 1 0 0 0 1 - - - - 1
1163 0 1 0 0 0 0 1 - - - 1
1164 0 1 0 0 0 0 0 1 - - 1
1165 0 0 - - - - - - 1 - 1
1166 0 0 - - - - - - 0 1 1
1167.mv _n188 3 invalid shared owned
1168.names _n187 state$abort$raw_n174 state _n188
11691 - - =state$abort$raw_n174
11700 - - =state
1171# non-blocking assignments
1172# latches
1173.r snoop$raw_nd7 snoop
1174- =snoop$raw_nd7
1175.latch _n17a snoop
1176.r state$raw_nd6 state
1177- =state$raw_nd6
1178.latch _n188 state
1179# quasi-continuous assignment
1180.end
1181
1182
1183.model bus_device
1184# I/O ports
1185.outputs reply_waiting
1186.inputs REPLY_WAITING
1187.inputs master
1188.outputs abort
1189.inputs REPLY_STALL
1190.inputs CMD
1191.outputs waiting
1192
1193.mv CMD 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
1194# assign reply_waiting  = !master  && waiting
1195.names master _n196
11960 1 
11971 0 
1198# !master  && waiting
1199.names _n196 waiting _n197
1200.def 0
12011 1 1
1202.names _n197 reply_waiting$raw_n195
1203- =_n197
1204# assign abort  = REPLY_STALL  || ((CMD  == read_shared  || CMD  == read_owned ) && REPLY_WAITING )
1205.mv _n19a 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
1206.names _n19a
1207read_shared
1208# CMD  == 1
1209.names CMD _n19a _n199
1210.def 0
1211- =CMD 1
1212.mv _n19c 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
1213.names _n19c
1214read_owned
1215# CMD  == 2
1216.names CMD _n19c _n19b
1217.def 0
1218- =CMD 1
1219# CMD  == 1 || CMD  == 2
1220.names _n199 _n19b _n19d
1221.def 1
12220 0 0
1223# (CMD  == 1 || CMD  == 2) && REPLY_WAITING
1224.names _n19d REPLY_WAITING _n19e
1225.def 0
12261 1 1
1227# REPLY_STALL  || ((CMD  == 1 || CMD  == 2) && REPLY_WAITING )
1228.names REPLY_STALL _n19e _n19f
1229.def 1
12300 0 0
1231.names _n19f abort$raw_n198
1232- =_n19f
1233# waiting  = 0
1234.names waiting$raw_n1a0
12350
1236# non-blocking assignments for initial
1237.names abort _n1a1
1238- =abort
1239# waiting  = waiting
1240.names waiting waiting$abort_n1a2$true
1241- =waiting
1242.mv _n1a4 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
1243.names _n1a4
1244read_shared
1245# CMD  == 1
1246.names CMD _n1a4 _n1a3
1247.def 0
1248- =CMD 1
1249# master  && CMD  == 1
1250.names master _n1a3 _n1a5
1251.def 0
12521 1 1
1253.names _n1a5 _n1a6
1254- =_n1a5
1255# waiting  = 1
1256.names waiting$_n1a5_n1a7$true
12571
1258.mv _n1a9 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
1259.names _n1a9
1260read_owned
1261# CMD  == 2
1262.names CMD _n1a9 _n1a8
1263.def 0
1264- =CMD 1
1265# master  && CMD  == 2
1266.names master _n1a8 _n1aa
1267.def 0
12681 1 1
1269.names _n1aa _n1ab
1270- =_n1aa
1271# waiting  = 1
1272.names waiting$_n1aa_n1ac$true
12731
1274.names master _n1ad
12750 1 
12761 0 
1277.mv _n1af 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
1278.names _n1af
1279response
1280# CMD  == 8
1281.names CMD _n1af _n1ae
1282.def 0
1283- =CMD 1
1284# !master  && CMD  == 8
1285.names _n1ad _n1ae _n1b0
1286.def 0
12871 1 1
1288.names _n1b0 _n1b1
1289- =_n1b0
1290# waiting  = 0
1291.names waiting$_n1b0_n1b2$true
12920
1293.names master _n1b3
12940 1 
12951 0 
1296.mv _n1b5 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
1297.names _n1b5
1298write_resp_invalid
1299# CMD  == 5
1300.names CMD _n1b5 _n1b4
1301.def 0
1302- =CMD 1
1303# !master  && CMD  == 5
1304.names _n1b3 _n1b4 _n1b6
1305.def 0
13061 1 1
1307.names _n1b6 _n1b7
1308- =_n1b6
1309# waiting  = 0
1310.names waiting$_n1b6_n1b8$true
13110
1312.names master _n1b9
13130 1 
13141 0 
1315.mv _n1bb 9 idle read_shared read_owned write_invalid write_shared write_resp_invalid write_resp_shared invalidate response
1316.names _n1bb
1317write_resp_shared
1318# CMD  == 6
1319.names CMD _n1bb _n1ba
1320.def 0
1321- =CMD 1
1322# !master  && CMD  == 6
1323.names _n1b9 _n1ba _n1bc
1324.def 0
13251 1 1
1326.names _n1bc _n1bd
1327- =_n1bc
1328# waiting  = 0
1329.names waiting$_n1bc_n1be$true
13300
1331# if/else (!master  && CMD  == 6)
1332.names waiting$_n1bc_n1be$true waiting _n1bc waiting$_n1bc$raw_n1c1
13330 - 1 0
13341 - 1 1
1335- 0 0 0
1336- 1 0 1
1337# if/else (!master  && CMD  == 5)
1338.names waiting$_n1b6_n1b8$true waiting$_n1bc$raw_n1c1 _n1b6 waiting$_n1b6$raw_n1c4
13390 - 1 0
13401 - 1 1
1341- 0 0 0
1342- 1 0 1
1343# if/else (!master  && CMD  == 8)
1344.names waiting$_n1b0_n1b2$true waiting$_n1b6$raw_n1c4 _n1b0 waiting$_n1b0$raw_n1c9
13450 - 1 0
13461 - 1 1
1347- 0 0 0
1348- 1 0 1
1349# if/else (master  && CMD  == 2)
1350.names waiting$_n1aa_n1ac$true waiting$_n1b0$raw_n1c9 _n1aa waiting$_n1aa$raw_n1ce
13510 - 1 0
13521 - 1 1
1353- 0 0 0
1354- 1 0 1
1355# if/else (master  && CMD  == 1)
1356.names waiting$_n1a5_n1a7$true waiting$_n1aa$raw_n1ce _n1a5 waiting$_n1a5$raw_n1d3
13570 - 1 0
13581 - 1 1
1359- 0 0 0
1360- 1 0 1
1361# if/else (abort )
1362.names waiting$abort_n1a2$true waiting$_n1a5$raw_n1d3 abort waiting$abort$raw_n1d8
13630 - 1 0
13641 - 1 1
1365- 0 0 0
1366- 1 0 1
1367# conflict arbitrators
1368.names reply_waiting$raw_n195  reply_waiting
13690 0
13701 1
1371.names abort$raw_n198  abort
13720 0
13731 1
1374.names _n1a1 _n1a6 _n1ab _n1b1 _n1b7 _n1bd _n1dc
1375.def 0
1376 1 - - - - - 1
1377 0 1 - - - - 1
1378 0 0 1 - - - 1
1379 0 0 0 1 - - 1
1380 0 0 0 0 1 - 1
1381 0 0 0 0 0 1 1
1382.names _n1dc waiting$abort$raw_n1d8 waiting _n1dd
13831 0 - 0
13841 1 - 1
13850 - 0 0
13860 - 1 1
1387# non-blocking assignments
1388# latches
1389.r waiting$raw_n1a0 waiting
13900 0
13911 1
1392.latch _n1dd waiting
1393# quasi-continuous assignment
1394.end
1395
1396
Note: See TracBrowser for help on using the repository browser.