From 812095840e9e1f57125b1ff187428f97ecad78dc Mon Sep 17 00:00:00 2001 From: alexmadison Date: Sun, 10 Apr 2022 19:42:09 +0200 Subject: [PATCH] fixed instability in buffers lol --- dataflow_neuro/primitives.act | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/dataflow_neuro/primitives.act b/dataflow_neuro/primitives.act index be93231..b4597a5 100644 --- a/dataflow_neuro/primitives.act +++ b/dataflow_neuro/primitives.act @@ -125,14 +125,13 @@ namespace tmpl { BUF_X4 in_v_buf(.a=_in_v, .y=in.v,.vdd=supply.vdd,.vss=supply.vss); //function - bool _out_a_BX_t[N],_out_a_BX_f[N],_out_a_B,_en_X_t[N],_en_X_f[N]; + bool _out_a_BX[N*2],_out_a_B,_en_X_t[N],_en_X_f[N]; A_2C1N_RB_X4 f_buf_func[N]; A_2C1N_RB_X4 t_buf_func[N]; sigbuf en_buf_t(.in=_en, .out=_en_X_t, .supply=supply); sigbuf en_buf_f(.in=_en, .out=_en_X_f, .supply=supply); INV_X1 out_a_inv(.a=out.a,.y=_out_a_B, .vss = supply.vss, .vdd = supply.vdd); - sigbuf out_a_B_buf_f(.in=_out_a_B,.out=_out_a_BX_t, .supply = supply); - sigbuf out_a_B_buf_t(.in=_out_a_B,.out=_out_a_BX_f, .supply = supply); + sigbuf out_a_B_buf(.in=_out_a_B,.out=_out_a_BX, .supply = supply); // check if you can also do single var to array connect a=b[N] // and remove them from the loop (i:N: @@ -140,8 +139,8 @@ namespace tmpl { t_buf_func[i].y=out.d.d[i].t; f_buf_func[i].c1=_en_X_f[i]; t_buf_func[i].c1=_en_X_t[i]; - f_buf_func[i].c2=_out_a_BX_f[i]; - t_buf_func[i].c2=_out_a_BX_t[i]; + f_buf_func[i].c2=_out_a_BX[i]; + t_buf_func[i].c2=_out_a_BX[i+N]; f_buf_func[i].n1=in.d.d[i].f; t_buf_func[i].n1=in.d.d[i].t; f_buf_func[i].vdd=supply.vdd;