Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
commit
c06912d446
|
@ -150,93 +150,90 @@ namespace tmpl {
|
|||
)
|
||||
}
|
||||
|
||||
// export template<pint N>
|
||||
// defproc demux (avMx1of2<N> in; avMx1of2<N> out1; avMx1of2<N> out2; bool? reset_B, c_t, c_f; power supply) {
|
||||
// //control
|
||||
// bool _en, _reset_BX,_reset_BXX[N], _out_v;
|
||||
export template<pint N>
|
||||
defproc demux (avMx1of2<N> in; avMx1of2<N> out1; avMx1of2<N> out2; bool? reset_B; avMx1of2<1> cond; power supply) {
|
||||
//control
|
||||
bool _en, _reset_BX,_reset_BXX[2*N], _out_v, _in_c_v_;
|
||||
|
||||
// OR2_X1 out_or(.a=out1.v, .b=out2.v, .y=_out_v,.vdd=supply.vdd,.vss=supply.vss);
|
||||
// A_3C_RB_X4 inack_ctl(.c1=_en,.c2=_in_c_v_,.c3= _out_v,.y=in.a,.pr_B=_reset_BXX,.sr_B=_reset_BXX,.vdd=supply.vdd,.vss=supply.vss);
|
||||
// A_1C1P_X1 en_ctl(.c1=in.a,.p1=_out_v,.y=_en,.vdd=supply.vdd,.vss=supply.vss);
|
||||
// BUF_X1 reset_buf(.a=reset_B, .y=_reset_BX,.vdd=supply.vdd,.vss=supply.vss);
|
||||
// sigbuf<2*N> reset_bufarray(.in=_reset_BX, .out=_reset_BXX);
|
||||
// A_1C1P_X1 en_ctl(.c1=in.a,.p1=out.v,.y=_en,.vdd=supply.vdd,.vss=supply.vss);
|
||||
OR2_X1 out_or(.a=out1.v, .b=out2.v, .y=_out_v,.vdd=supply.vdd,.vss=supply.vss);
|
||||
A_3C_RB_X4 inack_ctl(.c1=_en,.c2=_in_c_v_,.c3= _out_v,.y=in.a,.pr_B=_reset_BX,.sr_B=_reset_BX,.vdd=supply.vdd,.vss=supply.vss);
|
||||
A_1C1P_X1 en_ctl(.c1=in.a,.p1=_out_v,.y=_en,.vdd=supply.vdd,.vss=supply.vss);
|
||||
BUF_X1 reset_buf(.a=reset_B, .y=_reset_BX,.vdd=supply.vdd,.vss=supply.vss);
|
||||
sigbuf<2*N> reset_bufarray(.in=_reset_BX, .out=_reset_BXX);
|
||||
//validity
|
||||
bool _in_v, _c_f_buf[N], _c_t_buf[N], _c_v;
|
||||
|
||||
sigbuf<N> c_buf_t(.in=cond.d.d[0].t, .out=_c_t_buf);
|
||||
sigbuf<N> c_buf_f(.in=cond.d.d[0].f, .out=_c_f_buf);
|
||||
|
||||
OR2_X1 c_f_c_t_or(.a=cond.d.d[0].t, .b=cond.d.d[0].f, .y=_c_v,.vdd=supply.vdd,.vss=supply.vss);
|
||||
ctree<N> vc(.in=in.d,.out=_in_v,.supply=supply);
|
||||
|
||||
A_2C_B_X1 c_el(.c1=_c_v, .c2=_in_v, .y=_in_c_v_,.vdd=supply.vdd,.vss=supply.vss);
|
||||
BUF_X4 in_v_buf(.a=_in_v, .y=in.v,.vdd=supply.vdd,.vss=supply.vss);
|
||||
|
||||
|
||||
//function
|
||||
//func buffer out1
|
||||
bool _out1_a_BX_t[N],_out1_a_BX_f[N],_out1_a_B,_en1_X_t[N],_en1_X_f[N];
|
||||
A_2C2N_RB_X4 out1_f_buf_func[N];
|
||||
A_2C2N_RB_X4 out1_t_buf_func[N];
|
||||
sigbuf<N> out1_en_buf_t(.in=_en, .out=_en1_X_t, .supply=supply);
|
||||
sigbuf<N> out1_en_buf_f(.in=_en, .out=_en1_X_f, .supply=supply);
|
||||
INV_X1 out1_a_inv(.a=out1.a,.y=_out1_a_B);
|
||||
sigbuf<N> out1_a_B_buf_f(.in=_out1_a_B,.out=_out1_a_BX_t);
|
||||
sigbuf<N> out1_a_B_buf_t(.in=_out1_a_B,.out=_out1_a_BX_f);
|
||||
(i:N:
|
||||
out1_f_buf_func[i].y=out1.d.d[i].f;
|
||||
out1_t_buf_func[i].y=out1.d.d[i].t;
|
||||
out1_f_buf_func[i].c1=_en1_X_f[i];
|
||||
out1_t_buf_func[i].c1=_en1_X_t[i];
|
||||
out1_f_buf_func[i].c2=_out1_a_BX_f[i];
|
||||
out1_t_buf_func[i].c2=_out1_a_BX_t[i];
|
||||
out1_f_buf_func[i].n1=in.d.d[i].f;
|
||||
out1_t_buf_func[i].n1=in.d.d[i].t;
|
||||
out1_f_buf_func[i].vdd=supply.vdd;
|
||||
out1_t_buf_func[i].vdd=supply.vdd;
|
||||
out1_f_buf_func[i].vss=supply.vss;
|
||||
out1_t_buf_func[i].vss=supply.vss;
|
||||
out1_t_buf_func[i].pr_B = _reset_BXX[i];
|
||||
out1_t_buf_func[i].sr_B = _reset_BXX[i];
|
||||
out1_f_buf_func[i].pr_B = _reset_BXX[i];
|
||||
out1_f_buf_func[i].sr_B = _reset_BXX[i];
|
||||
out1_f_buf_func[i].n2=_c_t_buf[i];
|
||||
out1_t_buf_func[i].n2=_c_t_buf[i];
|
||||
)
|
||||
|
||||
// //validity
|
||||
// bool _in_v, _c_f_buf, _c_t_buf, _c_v, _in_c_v_;
|
||||
|
||||
// sigbuf<N> c_buf_t(.in=c_t, .out=_c_t_buf);
|
||||
// sigbuf<N> c_buf_f(.in=c_f, .out=_c_f_buf);
|
||||
|
||||
// OR2_X1 c_f_c_t_or(.a=c_t, .b=c_f, .y=_c_v,.vdd=supply.vdd,.vss=supply.vss);
|
||||
// ctree<N> vc(.in=in.d,.out=_in_v,.supply=supply);
|
||||
|
||||
// A_2C_RB_X4 c_el(.c1=_c_v, .c2=_in_v, .y=_in_c_v_,.vdd=supply.vdd,.vss=supply.vss);
|
||||
// BUF_X4 in_v_buf(.a=_in_v, .y=in.v,.vdd=supply.vdd,.vss=supply.vss);
|
||||
|
||||
|
||||
// //function
|
||||
// //func buffer out1
|
||||
// bool _out1_a_BX_t[N],_out1_a_BX_f[N],_out1_a_B,_en1_X_t[N],_en1_X_f[N];
|
||||
// A_2C2N_RB_X4 out1_f_buf_func[N];
|
||||
// A_2C2N_RB_X4 out1_t_buf_func[N];
|
||||
// sigbuf<N> out1_en_buf_t(.in=_en, .out=_en1_X_t, .supply=supply);
|
||||
// sigbuf<N> out1_en_buf_f(.in=_en, .out=_en1_X_f, .supply=supply);
|
||||
// INV_X1 out1_a_inv(.a=out1.a,.y=_out1_a_B);
|
||||
// sigbuf<N> out1_a_B_buf_f(.in=_out1_a_B,.out=_out1_a_BX_t);
|
||||
// sigbuf<N> out1_a_B_buf_t(.in=_out1_a_B,.out=_out1_a_BX_f);
|
||||
// (i:N:
|
||||
// out1_f_buf_func[i].y=out1.d.d[i].f;
|
||||
// out1_t_buf_func[i].y=out1.d.d[i].t;
|
||||
// out1_f_buf_func[i].c1=_en1_X_f[i];
|
||||
// out1_t_buf_func[i].c1=_en1_X_t[i];
|
||||
// out1_f_buf_func[i].c2=_out1_a_BX_f[i];
|
||||
// out1_t_buf_func[i].c2=_out1_a_BX_t[i];
|
||||
// out1_f_buf_func[i].n1=in.d.d[i].f;
|
||||
// out1_t_buf_func[i].n1=in.d.d[i].t;
|
||||
// out1_f_buf_func[i].vdd=supply.vdd;
|
||||
// out1_t_buf_func[i].vdd=supply.vdd;
|
||||
// out1_f_buf_func[i].vss=supply.vss;
|
||||
// out1_t_buf_func[i].vss=supply.vss;
|
||||
// out1_t_buf_func[i].pr_B = _reset_BXX[i];
|
||||
// out1_t_buf_func[i].sr_B = _reset_BXX[i];
|
||||
// out1_f_buf_func[i].pr_B = _reset_BXX[i];
|
||||
// out1_f_buf_func[i].sr_B = _reset_BXX[i];
|
||||
// out1_f_buf_func[i].n2=_c_t_buf;
|
||||
// out1_t_buf_func[i].n2=_c_t_buf;
|
||||
// )
|
||||
// //func buffer out2
|
||||
// bool _out2_a_BX_t[N],_out2_a_BX_f[N],_out2_a_B,_en2_X_t[N],_en2_X_f[N];
|
||||
// A_2C2N_RB_X4 out2_f_buf_func[N];
|
||||
// A_2C2N_RB_X4 out2_t_buf_func[N];
|
||||
// sigbuf<N> out2_en_buf_t(.in=_en, .out=_en2_X_t, .supply=supply);
|
||||
// sigbuf<N> out2_en_buf_f(.in=_en, .out=_en2_X_f, .supply=supply);
|
||||
// INV_X1 out2_a_inv(.a=out2.a,.y=_out2_a_B);
|
||||
// sigbuf<N> out2_a_B_buf_f(.in=_out2_a_B,.out=_out2_a_BX_t);
|
||||
// sigbuf<N> out2_a_B_buf_t(.in=_out2_a_B,.out=_out2_a_BX_f);
|
||||
// (i:N:
|
||||
// out2_f_buf_func[i].y=out2.d.d[i].f;
|
||||
// out2_t_buf_func[i].y=out2.d.d[i].t;
|
||||
// out2_f_buf_func[i].c1=_en2_X_f[i];
|
||||
// out2_t_buf_func[i].c1=_en2_X_t[i];
|
||||
// out2_f_buf_func[i].c2=_out2_a_BX_f[i];
|
||||
// out2_t_buf_func[i].c2=_out2_a_BX_t[i];
|
||||
// out2_f_buf_func[i].n1=in.d.d[i].f;
|
||||
// out2_t_buf_func[i].n1=in.d.d[i].t;
|
||||
// out2_f_buf_func[i].vdd=supply.vdd;
|
||||
// out2_t_buf_func[i].vdd=supply.vdd;
|
||||
// out2_f_buf_func[i].vss=supply.vss;
|
||||
// out2_t_buf_func[i].vss=supply.vss;
|
||||
// out2_t_buf_func[i].pr_B = _reset_BXX[i+N-1];
|
||||
// out2_t_buf_func[i].sr_B = _reset_BXX[i+N-1];
|
||||
// out2_f_buf_func[i].pr_B = _reset_BXX[i+N-1];
|
||||
// out2_f_buf_func[i].sr_B = _reset_BXX[i+N-1];
|
||||
// out2_f_buf_func[i].n2=_c_f_buf;
|
||||
// out2_t_buf_func[i].n2=_c_f_buf;
|
||||
// )
|
||||
|
||||
// }
|
||||
|
||||
//func buffer out2
|
||||
bool _out2_a_BX_t[N],_out2_a_BX_f[N],_out2_a_B,_en2_X_t[N],_en2_X_f[N];
|
||||
A_2C2N_RB_X4 out2_f_buf_func[N];
|
||||
A_2C2N_RB_X4 out2_t_buf_func[N];
|
||||
sigbuf<N> out2_en_buf_t(.in=_en, .out=_en2_X_t, .supply=supply);
|
||||
sigbuf<N> out2_en_buf_f(.in=_en, .out=_en2_X_f, .supply=supply);
|
||||
INV_X1 out2_a_inv(.a=out2.a,.y=_out2_a_B);
|
||||
sigbuf<N> out2_a_B_buf_f(.in=_out2_a_B,.out=_out2_a_BX_t);
|
||||
sigbuf<N> out2_a_B_buf_t(.in=_out2_a_B,.out=_out2_a_BX_f);
|
||||
(i:N:
|
||||
out2_f_buf_func[i].y=out2.d.d[i].f;
|
||||
out2_t_buf_func[i].y=out2.d.d[i].t;
|
||||
out2_f_buf_func[i].c1=_en2_X_f[i];
|
||||
out2_t_buf_func[i].c1=_en2_X_t[i];
|
||||
out2_f_buf_func[i].c2=_out2_a_BX_f[i];
|
||||
out2_t_buf_func[i].c2=_out2_a_BX_t[i];
|
||||
out2_f_buf_func[i].n1=in.d.d[i].f;
|
||||
out2_t_buf_func[i].n1=in.d.d[i].t;
|
||||
out2_f_buf_func[i].vdd=supply.vdd;
|
||||
out2_t_buf_func[i].vdd=supply.vdd;
|
||||
out2_f_buf_func[i].vss=supply.vss;
|
||||
out2_t_buf_func[i].vss=supply.vss;
|
||||
out2_t_buf_func[i].pr_B = _reset_BXX[i+N-1];
|
||||
out2_t_buf_func[i].sr_B = _reset_BXX[i+N-1];
|
||||
out2_f_buf_func[i].pr_B = _reset_BXX[i+N-1];
|
||||
out2_f_buf_func[i].sr_B = _reset_BXX[i+N-1];
|
||||
out2_f_buf_func[i].n2=_c_f_buf[i];
|
||||
out2_t_buf_func[i].n2=_c_f_buf[i];
|
||||
)
|
||||
}
|
||||
|
||||
export template<pint N>
|
||||
defproc fork (avMx1of2<N> in; avMx1of2<N> out1; avMx1of2<N> out2 ; bool? reset_B; power supply) {
|
||||
|
@ -313,6 +310,8 @@ namespace tmpl {
|
|||
out2_f_buf_func[i].sr_B = _reset_BXX[i+N-1];
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
// export template<pint N>
|
||||
// defproc merge (avMx1of2<N> in1; avMx1of2<N> in2; avMx1of2<N> out ; bool? reset_B; power supply) {
|
||||
|
||||
|
|
|
@ -78,9 +78,15 @@ defproc ortree (bool? in[N]; bool! out; power supply)
|
|||
(k:N:tmp[k] = in[k];)
|
||||
|
||||
/* array to hold the actual C-elments, either A2C or A3C */
|
||||
OR2_X1 C2Els[lenTree2Count];
|
||||
OR3_X1 C3Els[lenTree3Count];
|
||||
|
||||
|
||||
[lenTree2Count > 0 ->
|
||||
OR2_X1 C2Els[lenTree2Count];
|
||||
]
|
||||
|
||||
[lenTree3Count > 0 ->
|
||||
OR3_X1 C3Els[lenTree3Count];
|
||||
]
|
||||
|
||||
(h:lenTree2Count:C2Els[h].vdd = supply.vdd;)
|
||||
(h:lenTree3Count:C3Els[h].vdd = supply.vdd;)
|
||||
|
||||
|
@ -196,8 +202,14 @@ defproc ctree (std::data::Mx1of2?<N> in; bool! out; power supply)
|
|||
//(k:N:tmp[k] = in[k];)
|
||||
|
||||
/* array to hold the actual C-elments, either A2C or A3C */
|
||||
A_2C_B_X1 C2Els[lenTree2Count];
|
||||
A_3C_B_X1 C3Els[lenTree3Count];
|
||||
[lenTree2Count > 0 ->
|
||||
A_2C_B_X1 C2Els[lenTree2Count];
|
||||
]
|
||||
|
||||
[lenTree3Count > 0 ->
|
||||
A_3C_B_X1 C3Els[lenTree3Count];
|
||||
]
|
||||
|
||||
|
||||
(h:lenTree2Count:C2Els[h].vdd = supply.vdd;)
|
||||
(h:lenTree3Count:C3Els[h].vdd = supply.vdd;)
|
||||
|
|
|
@ -1,12 +0,0 @@
|
|||
= "GND" "GND"
|
||||
= "Vdd" "Vdd"
|
||||
= "Reset" "Reset"
|
||||
"a.a"&"a._v"->"a._u"-
|
||||
~"a.a"|~"a._v"->"a._u"+
|
||||
"a.b"&"a._u"->"a._v"-
|
||||
~"a.b"|~"a._u"->"a._v"+
|
||||
"a._u"->"a.u"-
|
||||
~("a._u")->"a.u"+
|
||||
"a._v"->"a.v"-
|
||||
~("a._v")->"a.v"+
|
||||
mk_excllo("a._u","a._v")
|
|
@ -0,0 +1,330 @@
|
|||
my_demux.my_demux._c_f_buf[0] my_demux.my_demux._out1_a_BX_f[0] my_demux.my_demux.out1_f_buf_func[1].n1 my_demux.my_demux._en my_demux.my_demux._en2_X_t[0] my_demux.my_demux.vc.OR2_tf[2]._y my_demux.my_demux.out1_f_buf_func[5].n1 my_demux.my_demux.out1_t_buf_func[2].n1 my_demux.my_demux._c_t_buf[0] my_demux.my_demux._out2_a_BX_t[0] my_demux.my_demux.out1_f_buf_func[6].n1 my_demux.my_demux.out1_t_buf_func[4].n1 my_demux.my_demux._out1_a_B my_demux.my_demux.vc.tmp[9] my_demux.my_demux._out1_a_BX_t[0] my_demux.my_demux._en1_X_t[0] my_demux.my_demux.c_buf_f.in my_demux.my_demux.vc.tmp[7] my_demux.my_demux._out2_a_BX_f[0] my_demux.my_demux._en2_X_f[0] my_demux.my_demux.c_buf_t.in my_demux.my_demux.out1_t_buf_func[1].n1 my_demux.my_demux.out1_f_buf_func[0].n1 my_demux.out1.a my_demux.my_demux.out1_t_buf_func[0].n1 my_demux.my_demux.out1_f_buf_func[2].n1 my_demux.my_demux.c_buf_t.buf2._y my_demux.my_demux.vc.C2Els[1]._y my_demux.my_demux._en1_X_f[0] my_demux.my_demux.out1_f_buf_func[4].n1 my_demux.my_demux.vc.tmp[6] my_demux.my_demux.vc.tmp[1] my_demux.my_demux.out_or._y my_demux.my_demux.out1_f_buf_func[3].n1 my_demux.my_demux.vc.OR2_tf[5]._y my_demux.my_demux.vc.OR2_tf[0]._y my_demux.my_demux.out1_t_buf_func[3].n1 my_demux.my_demux.vc.C2Els[0]._y my_demux.my_demux.out1_t_buf_func[6].n1 my_demux.my_demux.vc.tmp[8] my_demux.my_demux._c_v my_demux.out2.a my_demux.my_demux.out2_a_B_buf_t.buf2._y my_demux.my_demux.out1_t_buf_func[5].n1 my_demux.my_demux._in_c_v_ my_demux.out2.v my_demux.my_demux._in_v my_demux.my_demux.vc.tmp[4] my_demux.my_demux.out1_en_buf_f.buf2._y my_demux.my_demux.out2_en_buf_f.buf2._y my_demux.my_demux.vc.tmp[0] my_demux.my_demux.vc.OR2_tf[3]._y my_demux.my_demux._out2_a_B my_demux.my_demux.vc.tmp[5] my_demux.out1.v my_demux.my_demux.c_buf_f.buf2._y my_demux.my_demux.out1_a_B_buf_t.buf2._y my_demux.my_demux._out_v my_demux.my_demux.vc.C3Els[0]._y my_demux.in.v my_demux.my_demux.vc.C3Els[1]._y my_demux.my_demux.out2_en_buf_t.buf2._y my_demux.my_demux.out2_a_B_buf_f.buf2._y my_demux.my_demux.in_v_buf._y my_demux.my_demux.vc.tmp[3] my_demux.my_demux.vc.OR2_tf[1]._y my_demux.my_demux.vc.OR2_tf[6]._y my_demux.my_demux.vc.tmp[2] my_demux.my_demux.out1_a_B_buf_f.buf2._y my_demux.my_demux.c_f_c_t_or._y my_demux.my_demux.out1_en_buf_t.buf2._y my_demux.my_demux.vc.OR2_tf[4]._y my_demux.my_demux.c_el._y
|
||||
119199 my_demux.my_demux.out1_f_buf_func[0].n1 : 0
|
||||
119199 my_demux.my_demux.c_buf_f.in : 0
|
||||
119199 my_demux.my_demux.c_buf_t.in : 0
|
||||
119199 my_demux.my_demux.out1_f_buf_func[1].n1 : 0
|
||||
119199 my_demux.my_demux.out1_f_buf_func[3].n1 : 0
|
||||
119199 my_demux.out1.a : 0
|
||||
119199 my_demux.out2.v : 0
|
||||
119199 my_demux.my_demux.out1_t_buf_func[6].n1 : 0
|
||||
119199 my_demux.out2.a : 0
|
||||
119199 my_demux.out1.v : 0
|
||||
119199 my_demux.my_demux.out1_t_buf_func[2].n1 : 0
|
||||
119199 my_demux.my_demux.out1_f_buf_func[6].n1 : 0
|
||||
119199 my_demux.my_demux.out1_t_buf_func[5].n1 : 0
|
||||
119199 my_demux.my_demux.out1_t_buf_func[0].n1 : 0
|
||||
119199 my_demux.my_demux.out1_f_buf_func[2].n1 : 0
|
||||
119199 my_demux.my_demux.out1_f_buf_func[5].n1 : 0
|
||||
119199 my_demux.my_demux.out1_t_buf_func[4].n1 : 0
|
||||
119199 my_demux.my_demux.out1_t_buf_func[1].n1 : 0
|
||||
119199 my_demux.my_demux.out1_f_buf_func[4].n1 : 0
|
||||
119199 my_demux.my_demux.out1_t_buf_func[3].n1 : 0
|
||||
119200 my_demux.my_demux.c_buf_f.buf2._y : 1 [by my_demux.my_demux.c_buf_f.in:=0]
|
||||
119200 my_demux.my_demux.vc.OR2_tf[5]._y : 1 [by my_demux.my_demux.out1_f_buf_func[5].n1:=0]
|
||||
119236 my_demux.my_demux.c_buf_t.buf2._y : 1 [by my_demux.my_demux.c_buf_t.in:=0]
|
||||
119239 my_demux.my_demux.out_or._y : 1 [by my_demux.out1.v:=0]
|
||||
119286 my_demux.my_demux.vc.OR2_tf[0]._y : 1 [by my_demux.my_demux.out1_t_buf_func[0].n1:=0]
|
||||
119311 my_demux.my_demux._out1_a_B : 1 [by my_demux.out1.a:=0]
|
||||
119333 my_demux.my_demux.out1_a_B_buf_f.buf2._y : 0 [by my_demux.my_demux._out1_a_B:=1]
|
||||
119378 my_demux.my_demux.vc.tmp[5] : 0 [by my_demux.my_demux.vc.OR2_tf[5]._y:=1]
|
||||
119403 my_demux.my_demux._out_v : 0 [by my_demux.my_demux.out_or._y:=1]
|
||||
119456 my_demux.my_demux.vc.OR2_tf[6]._y : 1 [by my_demux.my_demux.out1_f_buf_func[6].n1:=0]
|
||||
119493 my_demux.my_demux.vc.OR2_tf[2]._y : 1 [by my_demux.my_demux.out1_f_buf_func[2].n1:=0]
|
||||
119536 my_demux.my_demux._en : 1 [by my_demux.my_demux._out_v:=0]
|
||||
119543 my_demux.my_demux.out2_en_buf_t.buf2._y : 0 [by my_demux.my_demux._en:=1]
|
||||
119566 my_demux.my_demux.out1_en_buf_f.buf2._y : 0 [by my_demux.my_demux._en:=1]
|
||||
119757 my_demux.my_demux.out1_en_buf_t.buf2._y : 0 [by my_demux.my_demux._en:=1]
|
||||
119790 my_demux.my_demux._c_f_buf[0] : 0 [by my_demux.my_demux.c_buf_f.buf2._y:=1]
|
||||
119848 my_demux.my_demux._en1_X_t[0] : 1 [by my_demux.my_demux.out1_en_buf_t.buf2._y:=0]
|
||||
119852 my_demux.my_demux.vc.tmp[2] : 0 [by my_demux.my_demux.vc.OR2_tf[2]._y:=1]
|
||||
119938 my_demux.my_demux.c_f_c_t_or._y : 1 [by my_demux.my_demux.c_buf_t.in:=0]
|
||||
120039 my_demux.my_demux._c_t_buf[0] : 0 [by my_demux.my_demux.c_buf_t.buf2._y:=1]
|
||||
120158 my_demux.my_demux.out1_a_B_buf_t.buf2._y : 0 [by my_demux.my_demux._out1_a_B:=1]
|
||||
120165 my_demux.my_demux._out1_a_BX_f[0] : 1 [by my_demux.my_demux.out1_a_B_buf_t.buf2._y:=0]
|
||||
120408 my_demux.my_demux.vc.OR2_tf[3]._y : 1 [by my_demux.my_demux.out1_t_buf_func[3].n1:=0]
|
||||
121005 my_demux.my_demux.vc.OR2_tf[1]._y : 1 [by my_demux.my_demux.out1_t_buf_func[1].n1:=0]
|
||||
121111 my_demux.my_demux.vc.tmp[1] : 0 [by my_demux.my_demux.vc.OR2_tf[1]._y:=1]
|
||||
121206 my_demux.my_demux.vc.OR2_tf[4]._y : 1 [by my_demux.my_demux.out1_f_buf_func[4].n1:=0]
|
||||
121284 my_demux.my_demux.vc.tmp[4] : 0 [by my_demux.my_demux.vc.OR2_tf[4]._y:=1]
|
||||
121481 my_demux.my_demux.vc.tmp[0] : 0 [by my_demux.my_demux.vc.OR2_tf[0]._y:=1]
|
||||
121756 my_demux.my_demux.vc.C2Els[0]._y : 1 [by my_demux.my_demux.vc.tmp[0]:=0]
|
||||
122127 my_demux.my_demux._c_v : 0 [by my_demux.my_demux.c_f_c_t_or._y:=1]
|
||||
123195 my_demux.my_demux.vc.tmp[3] : 0 [by my_demux.my_demux.vc.OR2_tf[3]._y:=1]
|
||||
123650 my_demux.my_demux.vc.C2Els[1]._y : 1 [by my_demux.my_demux.vc.tmp[3]:=0]
|
||||
123662 my_demux.my_demux.vc.tmp[8] : 0 [by my_demux.my_demux.vc.C2Els[1]._y:=1]
|
||||
126256 my_demux.my_demux._en2_X_t[0] : 1 [by my_demux.my_demux.out2_en_buf_t.buf2._y:=0]
|
||||
133652 my_demux.my_demux.out2_en_buf_f.buf2._y : 0 [by my_demux.my_demux._en:=1]
|
||||
134056 my_demux.my_demux._en2_X_f[0] : 1 [by my_demux.my_demux.out2_en_buf_f.buf2._y:=0]
|
||||
135118 my_demux.my_demux.vc.tmp[6] : 0 [by my_demux.my_demux.vc.OR2_tf[6]._y:=1]
|
||||
135130 my_demux.my_demux.vc.C3Els[0]._y : 1 [by my_demux.my_demux.vc.tmp[6]:=0]
|
||||
140752 my_demux.my_demux.vc.tmp[7] : 0 [by my_demux.my_demux.vc.C2Els[0]._y:=1]
|
||||
141046 my_demux.my_demux.vc.tmp[9] : 0 [by my_demux.my_demux.vc.C3Els[0]._y:=1]
|
||||
145322 my_demux.my_demux.vc.C3Els[1]._y : 1 [by my_demux.my_demux.vc.tmp[9]:=0]
|
||||
148221 my_demux.my_demux._in_v : 0 [by my_demux.my_demux.vc.C3Els[1]._y:=1]
|
||||
148223 my_demux.my_demux.c_el._y : 1 [by my_demux.my_demux._in_v:=0]
|
||||
149461 my_demux.my_demux._out1_a_BX_t[0] : 1 [by my_demux.my_demux.out1_a_B_buf_f.buf2._y:=0]
|
||||
152516 my_demux.my_demux.in_v_buf._y : 1 [by my_demux.my_demux._in_v:=0]
|
||||
152758 my_demux.my_demux._in_c_v_ : 0 [by my_demux.my_demux.c_el._y:=1]
|
||||
153765 my_demux.in.v : 0 [by my_demux.my_demux.in_v_buf._y:=1]
|
||||
166711 my_demux.my_demux._out2_a_B : 1 [by my_demux.out2.a:=0]
|
||||
166877 my_demux.my_demux.out2_a_B_buf_f.buf2._y : 0 [by my_demux.my_demux._out2_a_B:=1]
|
||||
166952 my_demux.my_demux._out2_a_BX_t[0] : 1 [by my_demux.my_demux.out2_a_B_buf_f.buf2._y:=0]
|
||||
170210 my_demux.my_demux.out2_a_B_buf_t.buf2._y : 0 [by my_demux.my_demux._out2_a_B:=1]
|
||||
170555 my_demux.my_demux._out2_a_BX_f[0] : 1 [by my_demux.my_demux.out2_a_B_buf_t.buf2._y:=0]
|
||||
177027 my_demux.my_demux._en1_X_f[0] : 1 [by my_demux.my_demux.out1_en_buf_f.buf2._y:=0]
|
||||
System initialized
|
||||
177027 Reset : 0
|
||||
177165 my_demux._reset_B : 1 [by Reset:=0]
|
||||
182428 my_demux.my_demux.reset_buf._y : 0 [by my_demux._reset_B:=1]
|
||||
182430 my_demux.my_demux._reset_BX : 1 [by my_demux.my_demux.reset_buf._y:=0]
|
||||
226347 my_demux.my_demux.reset_bufarray.buf4._y : 0 [by my_demux.my_demux._reset_BX:=1]
|
||||
226348 my_demux.my_demux._reset_BXX[0] : 1 [by my_demux.my_demux.reset_bufarray.buf4._y:=0]
|
||||
System reset completed
|
||||
|
||||
Output neutral checked
|
||||
226348 my_demux.my_demux.c_buf_t.in : 1
|
||||
226348 my_demux.my_demux.out1_t_buf_func[6].n1 : 1
|
||||
226348 my_demux.my_demux.out1_t_buf_func[1].n1 : 1
|
||||
226348 my_demux.my_demux.out1_t_buf_func[5].n1 : 1
|
||||
226348 my_demux.my_demux.out1_t_buf_func[4].n1 : 1
|
||||
226348 my_demux.my_demux.out1_t_buf_func[0].n1 : 1
|
||||
226348 my_demux.my_demux.out1_t_buf_func[3].n1 : 1
|
||||
226348 my_demux.my_demux.out1_t_buf_func[2].n1 : 1
|
||||
226359 my_demux.my_demux.c_f_c_t_or._y : 0 [by my_demux.my_demux.c_buf_t.in:=1]
|
||||
226364 my_demux.my_demux.vc.OR2_tf[4]._y : 0 [by my_demux.my_demux.out1_t_buf_func[4].n1:=1]
|
||||
226415 my_demux.my_demux.vc.OR2_tf[1]._y : 0 [by my_demux.my_demux.out1_t_buf_func[1].n1:=1]
|
||||
226718 my_demux.my_demux.vc.OR2_tf[6]._y : 0 [by my_demux.my_demux.out1_t_buf_func[6].n1:=1]
|
||||
226720 my_demux.my_demux.vc.tmp[6] : 1 [by my_demux.my_demux.vc.OR2_tf[6]._y:=0]
|
||||
226876 my_demux.my_demux.vc.OR2_tf[3]._y : 0 [by my_demux.my_demux.out1_t_buf_func[3].n1:=1]
|
||||
226896 my_demux.my_demux.c_buf_t.buf2._y : 0 [by my_demux.my_demux.c_buf_t.in:=1]
|
||||
226899 my_demux.my_demux._c_t_buf[0] : 1 [by my_demux.my_demux.c_buf_t.buf2._y:=0]
|
||||
226928 my_demux.my_demux.out1_t_buf_func[0]._y : 0 [by my_demux.my_demux._c_t_buf[0]:=1]
|
||||
226929 my_demux.my_demux.out1_t_buf_func[0].y : 1 [by my_demux.my_demux.out1_t_buf_func[0]._y:=0]
|
||||
226943 my_demux.my_demux.out1_t_buf_func[4]._y : 0 [by my_demux.my_demux._c_t_buf[0]:=1]
|
||||
227052 my_demux.my_demux.out1_t_buf_func[3]._y : 0 [by my_demux.my_demux._c_t_buf[0]:=1]
|
||||
227074 my_demux.my_demux.out1_t_buf_func[3].y : 1 [by my_demux.my_demux.out1_t_buf_func[3]._y:=0]
|
||||
227160 my_demux.my_demux.out1_t_buf_func[4].y : 1 [by my_demux.my_demux.out1_t_buf_func[4]._y:=0]
|
||||
227216 my_demux.my_demux.out1_t_buf_func[1]._y : 0 [by my_demux.my_demux._c_t_buf[0]:=1]
|
||||
227217 my_demux.my_demux.out1_t_buf_func[1].y : 1 [by my_demux.my_demux.out1_t_buf_func[1]._y:=0]
|
||||
228500 my_demux.my_demux.out1_t_buf_func[2]._y : 0 [by my_demux.my_demux._c_t_buf[0]:=1]
|
||||
228783 my_demux.my_demux.vc.OR2_tf[2]._y : 0 [by my_demux.my_demux.out1_t_buf_func[2].n1:=1]
|
||||
228989 my_demux.my_demux.vc.OR2_tf[5]._y : 0 [by my_demux.my_demux.out1_t_buf_func[5].n1:=1]
|
||||
229148 my_demux.my_demux.vc.tmp[5] : 1 [by my_demux.my_demux.vc.OR2_tf[5]._y:=0]
|
||||
229660 my_demux.my_demux.out1_t_buf_func[5]._y : 0 [by my_demux.my_demux._c_t_buf[0]:=1]
|
||||
230081 my_demux.my_demux.out1_t_buf_func[2].y : 1 [by my_demux.my_demux.out1_t_buf_func[2]._y:=0]
|
||||
230910 my_demux.my_demux.vc.OR2_tf[0]._y : 0 [by my_demux.my_demux.out1_t_buf_func[0].n1:=1]
|
||||
232197 my_demux.my_demux.vc.tmp[0] : 1 [by my_demux.my_demux.vc.OR2_tf[0]._y:=0]
|
||||
238128 my_demux.my_demux.vc.tmp[2] : 1 [by my_demux.my_demux.vc.OR2_tf[2]._y:=0]
|
||||
239456 my_demux.my_demux.vc.tmp[1] : 1 [by my_demux.my_demux.vc.OR2_tf[1]._y:=0]
|
||||
240582 my_demux.my_demux.out1_t_buf_func[6]._y : 0 [by my_demux.my_demux._c_t_buf[0]:=1]
|
||||
240727 my_demux.my_demux.out1_t_buf_func[6].y : 1 [by my_demux.my_demux.out1_t_buf_func[6]._y:=0]
|
||||
241688 my_demux.my_demux.vc.C2Els[0]._y : 0 [by my_demux.my_demux.vc.tmp[1]:=1]
|
||||
244520 my_demux.my_demux.vc.tmp[7] : 1 [by my_demux.my_demux.vc.C2Els[0]._y:=0]
|
||||
249336 my_demux.my_demux.out1_t_buf_func[5].y : 1 [by my_demux.my_demux.out1_t_buf_func[5]._y:=0]
|
||||
250289 my_demux.my_demux.vc.tmp[4] : 1 [by my_demux.my_demux.vc.OR2_tf[4]._y:=0]
|
||||
253239 my_demux.my_demux._c_v : 1 [by my_demux.my_demux.c_f_c_t_or._y:=0]
|
||||
256643 my_demux.my_demux.vc.C3Els[0]._y : 0 [by my_demux.my_demux.vc.tmp[4]:=1]
|
||||
256644 my_demux.my_demux.vc.tmp[9] : 1 [by my_demux.my_demux.vc.C3Els[0]._y:=0]
|
||||
287834 my_demux.my_demux.vc.tmp[3] : 1 [by my_demux.my_demux.vc.OR2_tf[3]._y:=0]
|
||||
327118 my_demux.my_demux.vc.C2Els[1]._y : 0 [by my_demux.my_demux.vc.tmp[3]:=1]
|
||||
327280 my_demux.my_demux.vc.tmp[8] : 1 [by my_demux.my_demux.vc.C2Els[1]._y:=0]
|
||||
334649 my_demux.my_demux.vc.C3Els[1]._y : 0 [by my_demux.my_demux.vc.tmp[8]:=1]
|
||||
334663 my_demux.my_demux._in_v : 1 [by my_demux.my_demux.vc.C3Els[1]._y:=0]
|
||||
334670 my_demux.my_demux.in_v_buf._y : 0 [by my_demux.my_demux._in_v:=1]
|
||||
334823 my_demux.my_demux.c_el._y : 0 [by my_demux.my_demux._in_v:=1]
|
||||
334824 my_demux.my_demux._in_c_v_ : 1 [by my_demux.my_demux.c_el._y:=0]
|
||||
356227 my_demux.in.v : 1 [by my_demux.my_demux.in_v_buf._y:=0]
|
||||
356227 my_demux.out1.v : 1
|
||||
356228 my_demux.my_demux.out_or._y : 0 [by my_demux.out1.v:=1]
|
||||
356229 my_demux.my_demux._out_v : 1 [by my_demux.my_demux.out_or._y:=0]
|
||||
358472 my_demux.my_demux.inack_ctl._y : 0 [by my_demux.my_demux._out_v:=1]
|
||||
358659 my_demux.in.a : 1 [by my_demux.my_demux.inack_ctl._y:=0]
|
||||
358660 my_demux.my_demux._en : 0 [by my_demux.in.a:=1]
|
||||
358661 my_demux.my_demux.out2_en_buf_t.buf2._y : 1 [by my_demux.my_demux._en:=0]
|
||||
358666 my_demux.my_demux._en2_X_t[0] : 0 [by my_demux.my_demux.out2_en_buf_t.buf2._y:=1]
|
||||
359513 my_demux.my_demux.out1_en_buf_f.buf2._y : 1 [by my_demux.my_demux._en:=0]
|
||||
360404 my_demux.my_demux._en1_X_f[0] : 0 [by my_demux.my_demux.out1_en_buf_f.buf2._y:=1]
|
||||
362842 my_demux.my_demux.out2_en_buf_f.buf2._y : 1 [by my_demux.my_demux._en:=0]
|
||||
362843 my_demux.my_demux._en2_X_f[0] : 0 [by my_demux.my_demux.out2_en_buf_f.buf2._y:=1]
|
||||
393442 my_demux.my_demux.out1_en_buf_t.buf2._y : 1 [by my_demux.my_demux._en:=0]
|
||||
393459 my_demux.my_demux._en1_X_t[0] : 0 [by my_demux.my_demux.out1_en_buf_t.buf2._y:=1]
|
||||
393459 my_demux.my_demux.out1_t_buf_func[0].n1 : 0
|
||||
393459 my_demux.my_demux.out1_t_buf_func[6].n1 : 0
|
||||
393459 my_demux.my_demux.out1_t_buf_func[2].n1 : 0
|
||||
393459 my_demux.my_demux.out1_t_buf_func[5].n1 : 0
|
||||
393459 my_demux.my_demux.out1_t_buf_func[1].n1 : 0
|
||||
393459 my_demux.my_demux.out1_t_buf_func[4].n1 : 0
|
||||
393459 my_demux.my_demux.out1_t_buf_func[3].n1 : 0
|
||||
393460 my_demux.my_demux.vc.OR2_tf[4]._y : 1 [by my_demux.my_demux.out1_t_buf_func[4].n1:=0]
|
||||
393462 my_demux.my_demux.vc.OR2_tf[2]._y : 1 [by my_demux.my_demux.out1_t_buf_func[2].n1:=0]
|
||||
393501 my_demux.my_demux.vc.OR2_tf[3]._y : 1 [by my_demux.my_demux.out1_t_buf_func[3].n1:=0]
|
||||
393596 my_demux.my_demux.vc.tmp[3] : 0 [by my_demux.my_demux.vc.OR2_tf[3]._y:=1]
|
||||
394400 my_demux.my_demux.vc.OR2_tf[5]._y : 1 [by my_demux.my_demux.out1_t_buf_func[5].n1:=0]
|
||||
394735 my_demux.my_demux.vc.tmp[5] : 0 [by my_demux.my_demux.vc.OR2_tf[5]._y:=1]
|
||||
396032 my_demux.my_demux.vc.OR2_tf[0]._y : 1 [by my_demux.my_demux.out1_t_buf_func[0].n1:=0]
|
||||
396040 my_demux.my_demux.vc.tmp[0] : 0 [by my_demux.my_demux.vc.OR2_tf[0]._y:=1]
|
||||
396277 my_demux.my_demux.vc.tmp[4] : 0 [by my_demux.my_demux.vc.OR2_tf[4]._y:=1]
|
||||
401820 my_demux.my_demux.vc.OR2_tf[6]._y : 1 [by my_demux.my_demux.out1_t_buf_func[6].n1:=0]
|
||||
401854 my_demux.my_demux.vc.tmp[6] : 0 [by my_demux.my_demux.vc.OR2_tf[6]._y:=1]
|
||||
407195 my_demux.my_demux.vc.tmp[2] : 0 [by my_demux.my_demux.vc.OR2_tf[2]._y:=1]
|
||||
408113 my_demux.my_demux.vc.C2Els[1]._y : 1 [by my_demux.my_demux.vc.tmp[2]:=0]
|
||||
408117 my_demux.my_demux.vc.tmp[8] : 0 [by my_demux.my_demux.vc.C2Els[1]._y:=1]
|
||||
415741 my_demux.my_demux.vc.C3Els[0]._y : 1 [by my_demux.my_demux.vc.tmp[6]:=0]
|
||||
452421 my_demux.my_demux.vc.OR2_tf[1]._y : 1 [by my_demux.my_demux.out1_t_buf_func[1].n1:=0]
|
||||
454819 my_demux.my_demux.vc.tmp[1] : 0 [by my_demux.my_demux.vc.OR2_tf[1]._y:=1]
|
||||
458034 my_demux.my_demux.vc.C2Els[0]._y : 1 [by my_demux.my_demux.vc.tmp[1]:=0]
|
||||
462119 my_demux.my_demux.vc.tmp[9] : 0 [by my_demux.my_demux.vc.C3Els[0]._y:=1]
|
||||
505153 my_demux.my_demux.vc.tmp[7] : 0 [by my_demux.my_demux.vc.C2Els[0]._y:=1]
|
||||
505201 my_demux.my_demux.vc.C3Els[1]._y : 1 [by my_demux.my_demux.vc.tmp[7]:=0]
|
||||
505204 my_demux.my_demux._in_v : 0 [by my_demux.my_demux.vc.C3Els[1]._y:=1]
|
||||
505382 my_demux.my_demux.in_v_buf._y : 1 [by my_demux.my_demux._in_v:=0]
|
||||
526359 my_demux.in.v : 0 [by my_demux.my_demux.in_v_buf._y:=1]
|
||||
First Cond Checked
|
||||
526359 my_demux.out1.a : 1
|
||||
538258 my_demux.my_demux._out1_a_B : 0 [by my_demux.out1.a:=1]
|
||||
544209 my_demux.my_demux.out1_a_B_buf_f.buf2._y : 1 [by my_demux.my_demux._out1_a_B:=0]
|
||||
545036 my_demux.my_demux._out1_a_BX_t[0] : 0 [by my_demux.my_demux.out1_a_B_buf_f.buf2._y:=1]
|
||||
545037 my_demux.my_demux.out1_t_buf_func[2]._y : 1 [by my_demux.my_demux._out1_a_BX_t[0]:=0]
|
||||
545040 my_demux.my_demux.out1_t_buf_func[4]._y : 1 [by my_demux.my_demux._out1_a_BX_t[0]:=0]
|
||||
545041 my_demux.my_demux.out1_t_buf_func[4].y : 0 [by my_demux.my_demux.out1_t_buf_func[4]._y:=1]
|
||||
545109 my_demux.my_demux.out1_t_buf_func[3]._y : 1 [by my_demux.my_demux._out1_a_BX_t[0]:=0]
|
||||
545132 my_demux.my_demux.out1_t_buf_func[6]._y : 1 [by my_demux.my_demux._out1_a_BX_t[0]:=0]
|
||||
545173 my_demux.my_demux.out1_t_buf_func[2].y : 0 [by my_demux.my_demux.out1_t_buf_func[2]._y:=1]
|
||||
545209 my_demux.my_demux.out1_t_buf_func[0]._y : 1 [by my_demux.my_demux._out1_a_BX_t[0]:=0]
|
||||
545220 my_demux.my_demux.out1_t_buf_func[1]._y : 1 [by my_demux.my_demux._out1_a_BX_t[0]:=0]
|
||||
545232 my_demux.my_demux.out1_t_buf_func[1].y : 0 [by my_demux.my_demux.out1_t_buf_func[1]._y:=1]
|
||||
545373 my_demux.my_demux.out1_t_buf_func[6].y : 0 [by my_demux.my_demux.out1_t_buf_func[6]._y:=1]
|
||||
549168 my_demux.my_demux.out1_t_buf_func[0].y : 0 [by my_demux.my_demux.out1_t_buf_func[0]._y:=1]
|
||||
564155 my_demux.my_demux.out1_t_buf_func[3].y : 0 [by my_demux.my_demux.out1_t_buf_func[3]._y:=1]
|
||||
577743 my_demux.my_demux.out1_a_B_buf_t.buf2._y : 1 [by my_demux.my_demux._out1_a_B:=0]
|
||||
581643 my_demux.my_demux._out1_a_BX_f[0] : 0 [by my_demux.my_demux.out1_a_B_buf_t.buf2._y:=1]
|
||||
582324 my_demux.my_demux.out1_t_buf_func[5]._y : 1 [by my_demux.my_demux._out1_a_BX_t[0]:=0]
|
||||
583353 my_demux.my_demux.out1_t_buf_func[5].y : 0 [by my_demux.my_demux.out1_t_buf_func[5]._y:=1]
|
||||
System reset completed
|
||||
|
||||
Output neutral checked
|
||||
583353 my_demux.my_demux.c_buf_t.in : 0
|
||||
583353 my_demux.out1.v : 0
|
||||
583353 my_demux.out1.a : 0
|
||||
583354 my_demux.my_demux.c_buf_t.buf2._y : 1 [by my_demux.my_demux.c_buf_t.in:=0]
|
||||
583354 my_demux.my_demux._out1_a_B : 1 [by my_demux.out1.a:=0]
|
||||
583355 my_demux.my_demux.out1_a_B_buf_t.buf2._y : 0 [by my_demux.my_demux._out1_a_B:=1]
|
||||
583391 my_demux.my_demux._c_t_buf[0] : 0 [by my_demux.my_demux.c_buf_t.buf2._y:=1]
|
||||
583409 my_demux.my_demux.c_f_c_t_or._y : 1 [by my_demux.my_demux.c_buf_t.in:=0]
|
||||
585101 my_demux.my_demux._c_v : 0 [by my_demux.my_demux.c_f_c_t_or._y:=1]
|
||||
585114 my_demux.my_demux.c_el._y : 1 [by my_demux.my_demux._c_v:=0]
|
||||
586919 my_demux.my_demux._out1_a_BX_f[0] : 1 [by my_demux.my_demux.out1_a_B_buf_t.buf2._y:=0]
|
||||
602098 my_demux.my_demux._in_c_v_ : 0 [by my_demux.my_demux.c_el._y:=1]
|
||||
606729 my_demux.my_demux.out1_a_B_buf_f.buf2._y : 0 [by my_demux.my_demux._out1_a_B:=1]
|
||||
607086 my_demux.my_demux._out1_a_BX_t[0] : 1 [by my_demux.my_demux.out1_a_B_buf_f.buf2._y:=0]
|
||||
628359 my_demux.my_demux.out_or._y : 1 [by my_demux.out1.v:=0]
|
||||
628384 my_demux.my_demux._out_v : 0 [by my_demux.my_demux.out_or._y:=1]
|
||||
628405 my_demux.my_demux.inack_ctl._y : 1 [by my_demux.my_demux._out_v:=0]
|
||||
628406 my_demux.in.a : 0 [by my_demux.my_demux.inack_ctl._y:=1]
|
||||
638054 my_demux.my_demux._en : 1 [by my_demux.in.a:=0]
|
||||
638055 my_demux.my_demux.out2_en_buf_f.buf2._y : 0 [by my_demux.my_demux._en:=1]
|
||||
638055 my_demux.my_demux.out1_en_buf_t.buf2._y : 0 [by my_demux.my_demux._en:=1]
|
||||
638060 my_demux.my_demux._en2_X_f[0] : 1 [by my_demux.my_demux.out2_en_buf_f.buf2._y:=0]
|
||||
638215 my_demux.my_demux.out2_en_buf_t.buf2._y : 0 [by my_demux.my_demux._en:=1]
|
||||
638623 my_demux.my_demux._en2_X_t[0] : 1 [by my_demux.my_demux.out2_en_buf_t.buf2._y:=0]
|
||||
638636 my_demux.my_demux._en1_X_t[0] : 1 [by my_demux.my_demux.out1_en_buf_t.buf2._y:=0]
|
||||
639091 my_demux.my_demux.out1_en_buf_f.buf2._y : 0 [by my_demux.my_demux._en:=1]
|
||||
639102 my_demux.my_demux._en1_X_f[0] : 1 [by my_demux.my_demux.out1_en_buf_f.buf2._y:=0]
|
||||
639102 my_demux.my_demux.c_buf_f.in : 1
|
||||
639102 my_demux.my_demux.out1_t_buf_func[6].n1 : 1
|
||||
639102 my_demux.my_demux.out1_f_buf_func[1].n1 : 1
|
||||
639102 my_demux.my_demux.out1_t_buf_func[5].n1 : 1
|
||||
639102 my_demux.my_demux.out1_f_buf_func[4].n1 : 1
|
||||
639102 my_demux.my_demux.out1_f_buf_func[0].n1 : 1
|
||||
639102 my_demux.my_demux.out1_f_buf_func[3].n1 : 1
|
||||
639102 my_demux.my_demux.out1_t_buf_func[2].n1 : 1
|
||||
639106 my_demux.my_demux.vc.OR2_tf[1]._y : 0 [by my_demux.my_demux.out1_f_buf_func[1].n1:=1]
|
||||
639116 my_demux.my_demux.c_buf_f.buf2._y : 0 [by my_demux.my_demux.c_buf_f.in:=1]
|
||||
639120 my_demux.my_demux.vc.OR2_tf[6]._y : 0 [by my_demux.my_demux.out1_t_buf_func[6].n1:=1]
|
||||
639190 my_demux.my_demux.vc.tmp[6] : 1 [by my_demux.my_demux.vc.OR2_tf[6]._y:=0]
|
||||
639206 my_demux.my_demux.vc.OR2_tf[5]._y : 0 [by my_demux.my_demux.out1_t_buf_func[5].n1:=1]
|
||||
639330 my_demux.my_demux.vc.OR2_tf[2]._y : 0 [by my_demux.my_demux.out1_t_buf_func[2].n1:=1]
|
||||
639341 my_demux.my_demux.vc.tmp[2] : 1 [by my_demux.my_demux.vc.OR2_tf[2]._y:=0]
|
||||
639949 my_demux.my_demux.vc.tmp[1] : 1 [by my_demux.my_demux.vc.OR2_tf[1]._y:=0]
|
||||
640149 my_demux.my_demux.c_f_c_t_or._y : 0 [by my_demux.my_demux.c_buf_f.in:=1]
|
||||
640152 my_demux.my_demux._c_v : 1 [by my_demux.my_demux.c_f_c_t_or._y:=0]
|
||||
640306 my_demux.my_demux.vc.OR2_tf[0]._y : 0 [by my_demux.my_demux.out1_f_buf_func[0].n1:=1]
|
||||
640360 my_demux.my_demux.vc.tmp[0] : 1 [by my_demux.my_demux.vc.OR2_tf[0]._y:=0]
|
||||
640575 my_demux.my_demux._c_f_buf[0] : 1 [by my_demux.my_demux.c_buf_f.buf2._y:=0]
|
||||
640656 my_demux.my_demux.out2_t_buf_func[6]._y : 0 [by my_demux.my_demux._c_f_buf[0]:=1]
|
||||
640667 my_demux.my_demux.out2_f_buf_func[3]._y : 0 [by my_demux.my_demux._c_f_buf[0]:=1]
|
||||
641280 my_demux.my_demux.out2_f_buf_func[3].y : 1 [by my_demux.my_demux.out2_f_buf_func[3]._y:=0]
|
||||
641508 my_demux.my_demux.vc.C2Els[0]._y : 0 [by my_demux.my_demux.vc.tmp[0]:=1]
|
||||
641736 my_demux.my_demux.out2_t_buf_func[2]._y : 0 [by my_demux.my_demux._c_f_buf[0]:=1]
|
||||
641781 my_demux.my_demux.out2_t_buf_func[2].y : 1 [by my_demux.my_demux.out2_t_buf_func[2]._y:=0]
|
||||
642400 my_demux.my_demux.out2_t_buf_func[6].y : 1 [by my_demux.my_demux.out2_t_buf_func[6]._y:=0]
|
||||
647557 my_demux.my_demux.vc.OR2_tf[3]._y : 0 [by my_demux.my_demux.out1_f_buf_func[3].n1:=1]
|
||||
648554 my_demux.my_demux.vc.tmp[3] : 1 [by my_demux.my_demux.vc.OR2_tf[3]._y:=0]
|
||||
648886 my_demux.my_demux.out2_f_buf_func[4]._y : 0 [by my_demux.my_demux._c_f_buf[0]:=1]
|
||||
649227 my_demux.my_demux.out2_t_buf_func[5]._y : 0 [by my_demux.my_demux._c_f_buf[0]:=1]
|
||||
649411 my_demux.my_demux.out2_f_buf_func[4].y : 1 [by my_demux.my_demux.out2_f_buf_func[4]._y:=0]
|
||||
650127 my_demux.my_demux.out2_t_buf_func[5].y : 1 [by my_demux.my_demux.out2_t_buf_func[5]._y:=0]
|
||||
650203 my_demux.my_demux.vc.C2Els[1]._y : 0 [by my_demux.my_demux.vc.tmp[3]:=1]
|
||||
650255 my_demux.my_demux.vc.tmp[8] : 1 [by my_demux.my_demux.vc.C2Els[1]._y:=0]
|
||||
651652 my_demux.my_demux.out2_f_buf_func[0]._y : 0 [by my_demux.my_demux._c_f_buf[0]:=1]
|
||||
651659 my_demux.my_demux.out2_f_buf_func[0].y : 1 [by my_demux.my_demux.out2_f_buf_func[0]._y:=0]
|
||||
655530 my_demux.my_demux.vc.tmp[7] : 1 [by my_demux.my_demux.vc.C2Els[0]._y:=0]
|
||||
658558 my_demux.my_demux.out2_f_buf_func[1]._y : 0 [by my_demux.my_demux._c_f_buf[0]:=1]
|
||||
670546 my_demux.my_demux.vc.OR2_tf[4]._y : 0 [by my_demux.my_demux.out1_f_buf_func[4].n1:=1]
|
||||
674170 my_demux.my_demux.out2_f_buf_func[1].y : 1 [by my_demux.my_demux.out2_f_buf_func[1]._y:=0]
|
||||
677013 my_demux.my_demux.vc.tmp[4] : 1 [by my_demux.my_demux.vc.OR2_tf[4]._y:=0]
|
||||
689628 my_demux.my_demux.vc.tmp[5] : 1 [by my_demux.my_demux.vc.OR2_tf[5]._y:=0]
|
||||
689630 my_demux.my_demux.vc.C3Els[0]._y : 0 [by my_demux.my_demux.vc.tmp[5]:=1]
|
||||
689984 my_demux.my_demux.vc.tmp[9] : 1 [by my_demux.my_demux.vc.C3Els[0]._y:=0]
|
||||
690117 my_demux.my_demux.vc.C3Els[1]._y : 0 [by my_demux.my_demux.vc.tmp[9]:=1]
|
||||
690118 my_demux.my_demux._in_v : 1 [by my_demux.my_demux.vc.C3Els[1]._y:=0]
|
||||
690122 my_demux.my_demux.in_v_buf._y : 0 [by my_demux.my_demux._in_v:=1]
|
||||
690664 my_demux.my_demux.c_el._y : 0 [by my_demux.my_demux._in_v:=1]
|
||||
690665 my_demux.my_demux._in_c_v_ : 1 [by my_demux.my_demux.c_el._y:=0]
|
||||
735685 my_demux.in.v : 1 [by my_demux.my_demux.in_v_buf._y:=0]
|
||||
735685 my_demux.out2.v : 1
|
||||
748063 my_demux.my_demux.out_or._y : 0 [by my_demux.out2.v:=1]
|
||||
748142 my_demux.my_demux._out_v : 1 [by my_demux.my_demux.out_or._y:=0]
|
||||
750575 my_demux.my_demux.inack_ctl._y : 0 [by my_demux.my_demux._out_v:=1]
|
||||
750663 my_demux.in.a : 1 [by my_demux.my_demux.inack_ctl._y:=0]
|
||||
758445 my_demux.my_demux._en : 0 [by my_demux.in.a:=1]
|
||||
758475 my_demux.my_demux.out2_en_buf_t.buf2._y : 1 [by my_demux.my_demux._en:=0]
|
||||
758504 my_demux.my_demux.out1_en_buf_t.buf2._y : 1 [by my_demux.my_demux._en:=0]
|
||||
759912 my_demux.my_demux.out1_en_buf_f.buf2._y : 1 [by my_demux.my_demux._en:=0]
|
||||
760597 my_demux.my_demux._en1_X_f[0] : 0 [by my_demux.my_demux.out1_en_buf_f.buf2._y:=1]
|
||||
777888 my_demux.my_demux._en1_X_t[0] : 0 [by my_demux.my_demux.out1_en_buf_t.buf2._y:=1]
|
||||
786772 my_demux.my_demux.out2_en_buf_f.buf2._y : 1 [by my_demux.my_demux._en:=0]
|
||||
803487 my_demux.my_demux._en2_X_f[0] : 0 [by my_demux.my_demux.out2_en_buf_f.buf2._y:=1]
|
||||
817979 my_demux.my_demux._en2_X_t[0] : 0 [by my_demux.my_demux.out2_en_buf_t.buf2._y:=1]
|
||||
817979 my_demux.my_demux.out1_f_buf_func[0].n1 : 0
|
||||
817979 my_demux.my_demux.out1_t_buf_func[6].n1 : 0
|
||||
817979 my_demux.my_demux.out1_t_buf_func[2].n1 : 0
|
||||
817979 my_demux.my_demux.out1_t_buf_func[5].n1 : 0
|
||||
817979 my_demux.my_demux.out1_f_buf_func[1].n1 : 0
|
||||
817979 my_demux.my_demux.out1_f_buf_func[4].n1 : 0
|
||||
817979 my_demux.my_demux.out1_f_buf_func[3].n1 : 0
|
||||
817982 my_demux.my_demux.vc.OR2_tf[3]._y : 1 [by my_demux.my_demux.out1_f_buf_func[3].n1:=0]
|
||||
817991 my_demux.my_demux.vc.OR2_tf[5]._y : 1 [by my_demux.my_demux.out1_t_buf_func[5].n1:=0]
|
||||
817992 my_demux.my_demux.vc.tmp[5] : 0 [by my_demux.my_demux.vc.OR2_tf[5]._y:=1]
|
||||
818020 my_demux.my_demux.vc.tmp[3] : 0 [by my_demux.my_demux.vc.OR2_tf[3]._y:=1]
|
||||
818022 my_demux.my_demux.vc.OR2_tf[2]._y : 1 [by my_demux.my_demux.out1_t_buf_func[2].n1:=0]
|
||||
818106 my_demux.my_demux.vc.OR2_tf[0]._y : 1 [by my_demux.my_demux.out1_f_buf_func[0].n1:=0]
|
||||
818148 my_demux.my_demux.vc.OR2_tf[6]._y : 1 [by my_demux.my_demux.out1_t_buf_func[6].n1:=0]
|
||||
818198 my_demux.my_demux.vc.tmp[0] : 0 [by my_demux.my_demux.vc.OR2_tf[0]._y:=1]
|
||||
818212 my_demux.my_demux.vc.OR2_tf[4]._y : 1 [by my_demux.my_demux.out1_f_buf_func[4].n1:=0]
|
||||
818214 my_demux.my_demux.vc.tmp[4] : 0 [by my_demux.my_demux.vc.OR2_tf[4]._y:=1]
|
||||
819258 my_demux.my_demux.vc.OR2_tf[1]._y : 1 [by my_demux.my_demux.out1_f_buf_func[1].n1:=0]
|
||||
819259 my_demux.my_demux.vc.tmp[1] : 0 [by my_demux.my_demux.vc.OR2_tf[1]._y:=1]
|
||||
820760 my_demux.my_demux.vc.C2Els[0]._y : 1 [by my_demux.my_demux.vc.tmp[1]:=0]
|
||||
820762 my_demux.my_demux.vc.tmp[7] : 0 [by my_demux.my_demux.vc.C2Els[0]._y:=1]
|
||||
820875 my_demux.my_demux.vc.tmp[6] : 0 [by my_demux.my_demux.vc.OR2_tf[6]._y:=1]
|
||||
820893 my_demux.my_demux.vc.C3Els[0]._y : 1 [by my_demux.my_demux.vc.tmp[6]:=0]
|
||||
821012 my_demux.my_demux.vc.tmp[9] : 0 [by my_demux.my_demux.vc.C3Els[0]._y:=1]
|
||||
830774 my_demux.my_demux.vc.tmp[2] : 0 [by my_demux.my_demux.vc.OR2_tf[2]._y:=1]
|
||||
836494 my_demux.my_demux.vc.C2Els[1]._y : 1 [by my_demux.my_demux.vc.tmp[2]:=0]
|
||||
836502 my_demux.my_demux.vc.tmp[8] : 0 [by my_demux.my_demux.vc.C2Els[1]._y:=1]
|
||||
836556 my_demux.my_demux.vc.C3Els[1]._y : 1 [by my_demux.my_demux.vc.tmp[8]:=0]
|
||||
887094 my_demux.my_demux._in_v : 0 [by my_demux.my_demux.vc.C3Els[1]._y:=1]
|
||||
887099 my_demux.my_demux.in_v_buf._y : 1 [by my_demux.my_demux._in_v:=0]
|
||||
888166 my_demux.in.v : 0 [by my_demux.my_demux.in_v_buf._y:=1]
|
||||
Second Cond Checked
|
Binary file not shown.
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,49 @@
|
|||
/*************************************************************************
|
||||
*
|
||||
* This file is part of ACT dataflow neuro library.
|
||||
* It's the testing facility for cell_lib_std.act
|
||||
*
|
||||
* Copyright (c) 2022 University of Groningen - Ole Richter
|
||||
* Copyright (c) 2022 University of Groningen - Hugh Greatorex
|
||||
* Copyright (c) 2022 University of Groningen - Michele Mastella
|
||||
* Copyright (c) 2022 University of Groningen - Madison Cotteret
|
||||
*
|
||||
* This source describes Open Hardware and is licensed under the CERN-OHL-W v2 or later
|
||||
*
|
||||
* You may redistribute and modify this documentation and make products
|
||||
* using it under the terms of the CERN-OHL-W v2 (https:/cern.ch/cern-ohl).
|
||||
* This documentation is distributed WITHOUT ANY EXPRESS OR IMPLIED
|
||||
* WARRANTY, INCLUDING OF MERCHANTABILITY, SATISFACTORY QUALITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE. Please see the CERN-OHL-W v2
|
||||
* for applicable conditions.
|
||||
*
|
||||
* Source location: https://git.web.rug.nl/bics/actlib_dataflow_neuro
|
||||
*
|
||||
* As per CERN-OHL-W v2 section 4.1, should You produce hardware based on
|
||||
* these sources, You must maintain the Source Location visible in its
|
||||
* documentation.
|
||||
*
|
||||
**************************************************************************
|
||||
*/
|
||||
|
||||
import "../../dataflow_neuro/primitives.act";
|
||||
import globals;
|
||||
|
||||
open tmpl::dataflow_neuro;
|
||||
|
||||
|
||||
defproc demux_7 (avMx1of2<7> in; avMx1of2<7> out1; avMx1of2<7> out2; avMx1of2<1> cond){
|
||||
|
||||
demux<7> my_demux(.in=in, .out1=out1,.out2 = out2, .cond = cond);
|
||||
//Low active Reset
|
||||
bool _reset_B;
|
||||
prs {
|
||||
Reset => _reset_B-
|
||||
}
|
||||
my_demux.supply.vss = GND;
|
||||
my_demux.supply.vdd = Vdd;
|
||||
my_demux.reset_B = _reset_B;
|
||||
|
||||
}
|
||||
|
||||
demux_7 my_demux;
|
|
@ -0,0 +1,82 @@
|
|||
watchall
|
||||
set-qdi-channel-neutral "my_demux.in" 7
|
||||
set my_demux.out1.a 0
|
||||
set my_demux.out1.v 0
|
||||
set my_demux.out2.a 0
|
||||
set my_demux.out2.v 0
|
||||
set my_demux.cond.d.d[0].t 0
|
||||
set my_demux.cond.d.d[0].f 0
|
||||
cycle
|
||||
system "echo 'System initialized'"
|
||||
|
||||
set Reset 0
|
||||
cycle
|
||||
system "echo 'System reset completed'"
|
||||
status X
|
||||
mode run
|
||||
|
||||
assert-qdi-channel-neutral "my_demux.out1" 7
|
||||
assert-qdi-channel-neutral "my_demux.out2" 7
|
||||
assert-qdi-channel-neutral "my_demux.in" 7
|
||||
cycle
|
||||
|
||||
system "echo 'Output neutral checked'"
|
||||
|
||||
set my_demux.cond.d.d[0].t 1
|
||||
set my_demux.cond.d.d[0].f 0
|
||||
set-qdi-channel-valid "my_demux.in" 7 127
|
||||
cycle
|
||||
assert my_demux.in.v 1
|
||||
assert my_demux.in.a 0
|
||||
|
||||
assert-qdi-channel-valid "my_demux.out1" 7 127
|
||||
set my_demux.out1.v 1
|
||||
cycle
|
||||
assert my_demux.in.a 1
|
||||
set-qdi-channel-neutral "my_demux.in" 7
|
||||
cycle
|
||||
set my_demux.out1.a 1
|
||||
|
||||
|
||||
system "echo 'First Cond Checked'"
|
||||
|
||||
|
||||
set Reset 0
|
||||
cycle
|
||||
system "echo 'System reset completed'"
|
||||
status X
|
||||
mode run
|
||||
|
||||
assert-qdi-channel-neutral "my_demux.out1" 7
|
||||
assert-qdi-channel-neutral "my_demux.out2" 7
|
||||
assert-qdi-channel-neutral "my_demux.in" 7
|
||||
cycle
|
||||
|
||||
system "echo 'Output neutral checked'"
|
||||
|
||||
set my_demux.cond.d.d[0].t 0
|
||||
set my_demux.cond.d.d[0].f 0
|
||||
set my_demux.out1.a 0
|
||||
set my_demux.out1.v 0
|
||||
set my_demux.out2.a 0
|
||||
set my_demux.out2.v 0
|
||||
cycle
|
||||
|
||||
set my_demux.cond.d.d[0].t 0
|
||||
set my_demux.cond.d.d[0].f 1
|
||||
set-qdi-channel-valid "my_demux.in" 7 100
|
||||
cycle
|
||||
assert my_demux.in.v 1
|
||||
assert my_demux.in.a 0
|
||||
|
||||
assert-qdi-channel-valid "my_demux.out2" 7 100
|
||||
set my_demux.out2.v 1
|
||||
cycle
|
||||
assert my_demux.in.a 1
|
||||
set-qdi-channel-neutral "my_demux.in" 7
|
||||
cycle
|
||||
|
||||
|
||||
system "echo 'Second Cond Checked'"
|
||||
|
||||
|
Binary file not shown.
Loading…
Reference in New Issue