started token buffer and token fifo. conmtinued arbiter tb

This commit is contained in:
2022-02-25 19:16:40 +01:00
parent c20bfd74ee
commit 72bccc295b
12 changed files with 1285 additions and 40 deletions

View File

@@ -1,36 +1,58 @@
t.in1.r t.in2.r t.out.r t.a.arbiter._y1 t.a.arbiter._y2 t.out.a t.in1.a t.a._y1_arb t.a._y2_arb t.in2.a t.a.or_cell._y t.a.ack_cell1._y t.a.ack_cell2._y
[0] code starts
0 t.in1.r : 0
0 t.out.a : 0
0 t.in2.r : 0
1 t.a.arbiter._y1 : 1 [by t.in1.r:=0]
7092 t.a.arbiter._y2 : 1 [by t.in2.r:=0]
7094 t.a._y2_arb : 0 [by t.a.arbiter._y2:=1]
10468 t.a._y1_arb : 0 [by t.a.arbiter._y1:=1]
15221 t.a.ack_cell1._y : 1 [by t.a._y1_arb:=0]
16358 t.in1.a : 0 [by t.a.ack_cell1._y:=1]
t.out.r t.a._y2_arb t.in2.a t.a.or_cell._y t.a.ack_cell2._y
[0] reset done
16358 t.in1.r : 1
WARNING: weak-interference `t.a._y1_arb'
>> cause: t.a.arbiter._y1 (val: 0)
>> time: 16472
16472 t.a.arbiter._y1 : 0 [by t.in1.r:=1]
81838 t.a._y1_arb : X [by t.a.arbiter._y1:=0]
WRONG ASSERT: "t.out.r" has value X and not 1.
81838 t.out.a : 1
WARNING: weak-interference `t.in1.a'
>> cause: t.a.ack_cell1._y (val: X)
>> time: 83564
83564 t.a.ack_cell1._y : X [by t.out.a:=1]
83603 t.in1.a : X [by t.a.ack_cell1._y:=X]
WRONG ASSERT: "t.in1.a" has value X and not 1.
[1] test in1 done
10582 t.a.or_cell._y : 1 [by t.a._y1_arb:=0]
11605 t.a.ack_cell1._y : 1 [by t.a._y1_arb:=0]
11847 t.a.ack_cell2._y : 1 [by t.a._y2_arb:=0]
11886 t.in2.a : 0 [by t.a.ack_cell2._y:=1]
13331 t.in1.a : 0 [by t.a.ack_cell1._y:=1]
75948 t.out.r : 0 [by t.a.or_cell._y:=1]
[1] reset done
----------------------------------------------------------------------------------------------------
75948 t.in1.r : 1
75963 t.a.arbiter._y1 : 0 [by t.in1.r:=1]
76454 t.a._y1_arb : 1 [by t.a.arbiter._y1:=0]
76467 t.a.or_cell._y : 0 [by t.a._y1_arb:=1]
76507 t.out.r : 1 [by t.a.or_cell._y:=0]
76507 t.out.a : 1
76922 t.a.ack_cell1._y : 0 [by t.out.a:=1]
76942 t.in1.a : 1 [by t.a.ack_cell1._y:=0]
[2] test in1 done
----------------------------------------------------------------------------------------------------
76942 t.in1.r : 0
83003 t.a.arbiter._y1 : 1 [by t.in1.r:=0]
83050 t.a._y1_arb : 0 [by t.a.arbiter._y1:=1]
83066 t.a.or_cell._y : 1 [by t.a._y1_arb:=0]
127164 t.out.r : 0 [by t.a.or_cell._y:=1]
127164 t.out.a : 0
140888 t.a.ack_cell1._y : 1 [by t.out.a:=0]
140892 t.in1.a : 0 [by t.a.ack_cell1._y:=1]
[3] reset done
----------------------------------------------------------------------------------------------------
140892 t.in2.r : 1
150021 t.a.arbiter._y2 : 0 [by t.in2.r:=1]
150036 t.a._y2_arb : 1 [by t.a.arbiter._y2:=0]
193284 t.a.or_cell._y : 0 [by t.a._y2_arb:=1]
230215 t.out.r : 1 [by t.a.or_cell._y:=0]
230215 t.out.a : 1
230270 t.a.ack_cell2._y : 0 [by t.out.a:=1]
281923 t.in2.a : 1 [by t.a.ack_cell2._y:=0]
[4] test in2 done
----------------------------------------------------------------------------------------------------
281923 t.in2.r : 0
311703 t.a.arbiter._y2 : 1 [by t.in2.r:=0]
325552 t.a._y2_arb : 0 [by t.a.arbiter._y2:=1]
350364 t.a.or_cell._y : 1 [by t.a._y2_arb:=0]
364707 t.out.r : 0 [by t.a.or_cell._y:=1]
364707 t.out.a : 0
365129 t.a.ack_cell2._y : 1 [by t.out.a:=0]
413843 t.in2.a : 0 [by t.a.ack_cell2._y:=1]
[5] reset done
----------------------------------------------------------------------------------------------------
83603 t.in1.r : 0
83603 t.out.a : 0
83618 t.a.arbiter._y1 : 1 [by t.in1.r:=0]
84109 t.a._y1_arb : 0 [by t.a.arbiter._y1:=1]
84122 t.a.ack_cell1._y : 1 [by t.a._y1_arb:=0]
84162 t.in1.a : 0 [by t.a.ack_cell1._y:=1]
WRONG ASSERT: "t.out.r" has value X and not 0.
WRONG ASSERT: "t.in2.a" has value X and not 0.
[2] reset done

View File

@@ -31,7 +31,7 @@
~("t.a.arbiter._y1"|"t.a.arbiter.c")->"t.a.arbiter.y1"+
"t.a.arbiter._y2"|"t.a.arbiter.d"->"t.a.arbiter.y2"-
~("t.a.arbiter._y2"|"t.a.arbiter.d")->"t.a.arbiter.y2"+
mk_excllo("t.a.arbiter.y1","t.a.arbiter.y2")
mk_excllo("t.a.arbiter._y1","t.a.arbiter._y2")
= "t.a._y1_arb" "t.a.arbiter.y1"
= "t.a._y1_arb" "t.a.or_cell.a"
= "t.a._y1_arb" "t.a.ack_cell1.c2"