Merge branch 'dev' of ssh://git.web.rug.nl:222/bics/actlib_dataflow_neuro into dev

This commit is contained in:
alexmadison 2022-04-12 12:18:59 +02:00
commit 3ed1cd9131
2 changed files with 14 additions and 14 deletions

View File

@ -653,10 +653,10 @@ namespace tmpl {
}
}
export
defproc A_1N_U_X4(bool? a; bool! y; bool? vdd, vss)
defproc A_1N_U_X4(bool? n1; bool! y; bool? vdd, vss)
{
prs{
[keeper=0] a -> y-
[keeper=0] n1 -> y-
}
}
@ -669,10 +669,10 @@ namespace tmpl {
}
export
defproc A_1P_U_X4(bool? a; bool! y; bool? vdd, vss)
defproc A_1P_U_X4(bool? p1; bool! y; bool? vdd, vss)
{
prs{
[keeper=0] ~a -> y+
[keeper=0] ~p1 -> y+
}
}
@ -685,21 +685,21 @@ namespace tmpl {
}
export
defproc A_3P_U_X4(bool? a, b, c; bool! y; bool? vdd, vss)
defproc A_3P_U_X4(bool? p1, p2, p3; bool! y; bool? vdd, vss)
{
prs{
[keeper=0] ~a & ~b & ~c-> y+
[keeper=0] ~p1 & ~p2 & ~p3-> y+
}
}
export
defproc PULLDOWN_X4(bool? a; bool! y; bool? vdd, vss) {
A_1N_U_X4 cell(.a = a, .y = y, .vdd = vdd, .vss = vss);
A_1N_U_X4 cell(.n1 = a, .y = y, .vdd = vdd, .vss = vss);
}
export
defproc PULLUP_X4(bool? a; bool! y; bool? vdd, vss) {
A_1P_U_X4 cell(.a = a, .y = y, .vdd = vdd, .vss = vss);
A_1P_U_X4 cell(.p1 = a, .y = y, .vdd = vdd, .vss = vss);
}
defproc A_2C2P_RB_X1(bool! y;bool? c1,c2,p1,p2,reset_B,vdd,vss){

View File

@ -268,12 +268,12 @@ defproc decoder_2d_hs (avMx1of2<NxC+NyC> in; a1of1 out[Nx*Ny]; bool? reset_B; po
A_1P_U_X4 pu[Nx]; // TODO probably replace this with variable strength PU
A_1P_U_X4 pu_reset[Nx];
(i:Nx:
pu[i].a = d_dr_xX[i].out[Ny];
pu[i].p1 = d_dr_xX[i].out[Ny];
pu[i].y = _out_acksB[i];
pu[i].vdd = supply.vdd;
pu[i].vss = supply.vss;
pu_reset[i].a = _reset_BX[i];
pu_reset[i].p1 = _reset_BX[i];
pu_reset[i].y = _out_acksB[i];
pu_reset[i].vdd = supply.vdd;
pu_reset[i].vss = supply.vss;
@ -384,7 +384,7 @@ defproc decoder_2d_hybrid (avMx1of2<NxC+NyC> in; a1of1 out[Nx*Ny]; bool? dly_cfg
pu[i].vdd = supply.vdd;
pu[i].vss = supply.vss;
pu_reset[i].a = _reset_BX[i];
pu_reset[i].p1 = _reset_BX[i];
pu_reset[i].y = _out_acksB[i];
pu_reset[i].vdd = supply.vdd;
pu_reset[i].vss = supply.vss;
@ -910,7 +910,7 @@ defproc decoder_2d_hybrid (avMx1of2<NxC+NyC> in; a1of1 out[Nx*Ny]; bool? dly_cfg
A_2P_U_X4 pu_y(.p1 = _reqB, .p2 = outy.a, .y = outy.r, .vdd = supply.vdd, .vss = supply.vss);
// x_req pull up
A_3P_U_X4 pu_x(.a = outx.a, .b = _reqB, .c = _y_a_B, .y = outx.r,
A_3P_U_X4 pu_x(.p1 = outx.a, .p2 = _reqB, .p3 = _y_a_B, .y = outx.r,
.vdd = supply.vdd, .vss = supply.vss);
@ -935,8 +935,8 @@ defproc decoder_2d_hybrid (avMx1of2<NxC+NyC> in; a1of1 out[Nx*Ny]; bool? dly_cfg
{
INV_X1 inv(.a = reset_B, .vdd=supply.vdd,.vss =supply.vss);
A_1N_U_X4 pull_down(.a=in, .y=out);
A_1N_U_X4 pull_downR(.a=inv.y, .y=out);
A_1N_U_X4 pull_down(.n1=in, .y=out);
A_1N_U_X4 pull_downR(.n1=inv.y, .y=out);
}