Merge branch 'dev' of ssh://git.web.rug.nl:222/bics/actlib_dataflow_neuro into dev
This commit is contained in:
commit
3ed1cd9131
|
@ -653,10 +653,10 @@ namespace tmpl {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
export
|
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{
|
prs{
|
||||||
[keeper=0] a -> y-
|
[keeper=0] n1 -> y-
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -669,10 +669,10 @@ namespace tmpl {
|
||||||
}
|
}
|
||||||
|
|
||||||
export
|
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{
|
prs{
|
||||||
[keeper=0] ~a -> y+
|
[keeper=0] ~p1 -> y+
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -685,21 +685,21 @@ namespace tmpl {
|
||||||
}
|
}
|
||||||
|
|
||||||
export
|
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{
|
prs{
|
||||||
[keeper=0] ~a & ~b & ~c-> y+
|
[keeper=0] ~p1 & ~p2 & ~p3-> y+
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export
|
export
|
||||||
defproc PULLDOWN_X4(bool? a; bool! y; bool? vdd, vss) {
|
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
|
export
|
||||||
defproc PULLUP_X4(bool? a; bool! y; bool? vdd, vss) {
|
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){
|
defproc A_2C2P_RB_X1(bool! y;bool? c1,c2,p1,p2,reset_B,vdd,vss){
|
||||||
|
|
|
@ -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[Nx]; // TODO probably replace this with variable strength PU
|
||||||
A_1P_U_X4 pu_reset[Nx];
|
A_1P_U_X4 pu_reset[Nx];
|
||||||
(i: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].y = _out_acksB[i];
|
||||||
pu[i].vdd = supply.vdd;
|
pu[i].vdd = supply.vdd;
|
||||||
pu[i].vss = supply.vss;
|
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].y = _out_acksB[i];
|
||||||
pu_reset[i].vdd = supply.vdd;
|
pu_reset[i].vdd = supply.vdd;
|
||||||
pu_reset[i].vss = supply.vss;
|
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].vdd = supply.vdd;
|
||||||
pu[i].vss = supply.vss;
|
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].y = _out_acksB[i];
|
||||||
pu_reset[i].vdd = supply.vdd;
|
pu_reset[i].vdd = supply.vdd;
|
||||||
pu_reset[i].vss = supply.vss;
|
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);
|
A_2P_U_X4 pu_y(.p1 = _reqB, .p2 = outy.a, .y = outy.r, .vdd = supply.vdd, .vss = supply.vss);
|
||||||
|
|
||||||
// x_req pull up
|
// 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);
|
.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);
|
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_down(.n1=in, .y=out);
|
||||||
A_1N_U_X4 pull_downR(.a=inv.y, .y=out);
|
A_1N_U_X4 pull_downR(.n1=inv.y, .y=out);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue