prepared things for having unit test ready
This commit is contained in:
		| @@ -19,10 +19,10 @@ | ||||
| # | ||||
| # ----------------------------------------------------------------------------- | ||||
|  | ||||
| TARGETACT=__all__.act stdcells.act acells.act primitives.act   | ||||
| TARGETACT=__all__.act cell_lib_std.act cell_lib_async.act primitives.act   | ||||
| SUBDIRS= | ||||
| # template because its a template based appoach no syntesis so it would be wrong in syn | ||||
| TARGETACTSUBDIR=template/dataflow_neuro | ||||
| TARGETACTSUBDIR=tmpl/dataflow_neuro | ||||
|  | ||||
| include $(ACT_HOME)/scripts/Makefile.std | ||||
|  | ||||
|   | ||||
| @@ -22,6 +22,6 @@ | ||||
|  ************************************************************************** | ||||
|  */ | ||||
|  | ||||
| import template::dataflow_neuro::cell_lib_std; | ||||
| import template::dataflow_neuro::cell_lib_async; | ||||
| import template::dataflow_neuro::primitives; | ||||
| import tmpl::dataflow_neuro::cell_lib_std; | ||||
| import tmpl::dataflow_neuro::cell_lib_async; | ||||
| import tmpl::dataflow_neuro::primitives; | ||||
| @@ -24,9 +24,9 @@ | ||||
|  ************************************************************************** | ||||
|  */ | ||||
|  | ||||
| namespace async_template { | ||||
|  | ||||
|         export defcell A_1C1P2N_RB_X1 (bool! y; bool? c1,p1,n1,n2,pr_B, sr_B, vdd, vss) { | ||||
| namespace tmpl { | ||||
|     namespace dataflow_neuro{ | ||||
|         export defcell A_1C1P2N_RB_X1 (bool! y; bool? c1,p1,n1,n2,pr_B, sr_B; bool vdd, vss) { | ||||
|             bool _y; | ||||
|             prs{ | ||||
|                 (~p1 & ~c1)|~pr_B -> _y+ | ||||
| @@ -41,7 +41,7 @@ namespace async_template { | ||||
|                     } | ||||
|         } | ||||
|  | ||||
|         export defcell A_1C1P2N_R_X1 (bool! y; bool? c1,p1,n1,n2,pr_B, sr_B, vdd, vss) { | ||||
|         export defcell A_1C1P2N_R_X1 (bool! y; bool? c1,p1,n1,n2,pr_B, sr_B; bool vdd, vss) { | ||||
|             prs{ | ||||
|                 (~p1 & ~c1)|~pr_B -> y- | ||||
|                 c1 & n1 & n2 & sr_B -> y+ | ||||
| @@ -54,7 +54,7 @@ namespace async_template { | ||||
|         } | ||||
|  | ||||
|  | ||||
|         export defcell A_1C1P_1N_X1 (bool! y; bool? c1, p1, n1, vdd, vss) | ||||
|         export defcell A_1C1P_1N_X1 (bool! y; bool? c1, p1, n1; bool vdd, vss) | ||||
|         { | ||||
|         prs{ | ||||
|             ~p1 & ~c1 -> y+ | ||||
| @@ -65,7 +65,7 @@ namespace async_template { | ||||
|             y {-1}} | ||||
|         } | ||||
|  | ||||
|         export defcell A_1C1P_B (bool! y; bool? c1, p1, vdd, vss) | ||||
|         export defcell A_1C1P_B (bool! y; bool? c1, p1; bool vdd, vss) | ||||
|         { | ||||
|         bool _y; | ||||
|         prs{ | ||||
| @@ -79,7 +79,7 @@ namespace async_template { | ||||
|         } | ||||
|  | ||||
|  | ||||
|         export defcell A_1C1P (bool! y; bool? c1, p1, vdd, vss) | ||||
|         export defcell A_1C1P (bool! y; bool? c1, p1; bool vdd, vss) | ||||
|         { | ||||
|         prs{ | ||||
|             ~p1 & ~c1 -> y+ | ||||
| @@ -90,7 +90,7 @@ namespace async_template { | ||||
|             y {-1}} | ||||
|         } | ||||
|  | ||||
|         export defcell A_1C2P1N_X1 (bool! y; bool? c1, p1, p2, n1, vdd, vss) | ||||
|         export defcell A_1C2P1N_X1 (bool! y; bool? c1, p1, p2, n1; bool vdd, vss) | ||||
|         { | ||||
|         prs{ | ||||
|             ~p1 & ~p2 & ~c1 -> y+ | ||||
| @@ -101,7 +101,7 @@ namespace async_template { | ||||
|             y {-1}} | ||||
|         } | ||||
|  | ||||
|         export defcell A_1C2P_B_X1 (bool! y; bool? c1, p1, p2, vdd, vss) | ||||
|         export defcell A_1C2P_B_X1 (bool! y; bool? c1, p1, p2; bool vdd, vss) | ||||
|         { | ||||
|         bool _y; | ||||
|         prs{ | ||||
| @@ -115,7 +115,7 @@ namespace async_template { | ||||
|         } | ||||
|          | ||||
|  | ||||
|         export defcell A_1C2P (bool! y; bool? c1, p1, p2, vdd, vss) | ||||
|         export defcell A_1C2P (bool! y; bool? c1, p1, p2; bool vdd, vss) | ||||
|         { | ||||
|         prs{ | ||||
|             ~p1 & ~p2 & ~c1 -> y+ | ||||
| @@ -126,7 +126,7 @@ namespace async_template { | ||||
|             y {-1}} | ||||
|         } | ||||
|  | ||||
|         export defcell A_1C3P2P2N_R_X1 (bool! y; bool? c1, p1, p2, p3, p4, p5, n1, n2, pr_B, sr_B, vdd, vss) | ||||
|         export defcell A_1C3P2P2N_R_X1 (bool! y; bool? c1, p1, p2, p3, p4, p5, n1, n2, pr_B, sr_B; bool  vdd, vss) | ||||
|         { | ||||
|         prs{ | ||||
|             (~p1 & ~p2 & ~p3 & ~c1)|(~p4&~p5&~c1)|~pr_B -> y+ | ||||
| @@ -137,7 +137,7 @@ namespace async_template { | ||||
|             y {-1}} | ||||
|         } | ||||
|  | ||||
|         export defcell A_2C2N2N_RB_X1 (bool ! y; bool? c1, c2, n1, n2, n3, n4, pr_B, sr_B; bool? vdd, vss) | ||||
|         export defcell A_2C2N2N_RB_X1 (bool ! y; bool? c1, c2, n1, n2, n3, n4, pr_B, sr_B; bool vdd, vss) | ||||
|         { | ||||
|         bool _y; | ||||
|         prs{ | ||||
| @@ -151,7 +151,7 @@ namespace async_template { | ||||
|             y {-1}; _y{-1}} | ||||
|         } | ||||
|  | ||||
|         export defcell A_2C2N2N_RB_X2 (bool ! y; bool? c1, c2, n1, n2, n3, n4, pr_B, sr_B; bool? vdd, vss) | ||||
|         export defcell A_2C2N2N_RB_X2 (bool ! y; bool? c1, c2, n1, n2, n3, n4, pr_B, sr_B; bool vdd, vss) | ||||
|         { | ||||
|         bool _y; | ||||
|         prs{ | ||||
| @@ -439,7 +439,7 @@ namespace async_template { | ||||
|                 p_n_mode <- 1; | ||||
|             y {-1}} | ||||
|         } | ||||
|         } | ||||
|         }} | ||||
|  | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -26,35 +26,35 @@ | ||||
|  */ | ||||
|  | ||||
| import "cell_lib_async.act"; | ||||
|  | ||||
| async_template::A_1C1P2N_RB_X1 cell1; | ||||
| async_template::A_1C1P2N_R_X1 cell2; | ||||
| async_template::A_1C1P_1N_X1 cell3; | ||||
| async_template::A_1C1P_B cell4; | ||||
| async_template::A_1C1P cell5; | ||||
| async_template::A_1C2P1N_X1 cell6; | ||||
| async_template::A_1C2P_B_X1 cell7; | ||||
| async_template::A_1C2P cell8; | ||||
| async_template::A_1C3P2P2N_R_X1 cell9; | ||||
| async_template::A_2C2N2N_RB_X1 cell10; | ||||
| async_template::A_2C2N2N_RB_X2 cell11; | ||||
| async_template::A_2C2N2N_RB_X4 cell12; | ||||
| async_template::A_2C2N2N_R_X1 cell13; | ||||
| async_template::A_2C2N_R_B_X2 cell14; | ||||
| async_template::A_2C2N_R_B_X4 cell15; | ||||
| async_template::A_2C2N_R_X1 cell16; | ||||
| async_template::A_2C_B_X1 cell17; | ||||
| async_template::A_2C_RB_X1 cell18; | ||||
| async_template::A_2C_R_X1 cell19; | ||||
| async_template::A_2C_X1 cell20; | ||||
| async_template::A_3C_RB_X1 cell21; | ||||
| async_template::A_3C_RB_X2 cell22; | ||||
| async_template::A_3C_RB_X4 cell23; | ||||
| async_template::A_3C_R_X1 cell24; | ||||
| async_template::A_3C_X1 cell25; | ||||
| async_template::A_4C_RB_X1 cell26; | ||||
| async_template::A_4C_RB_X2 cell27; | ||||
| async_template::A_4C_RB_X4 cell28; | ||||
| async_template::A_4C_R_X1 cell29; | ||||
| async_template::A_4P1N1N_B_X1 cell30; | ||||
| async_template::A_4P1N1N_X1 cell31; | ||||
| open tmpl::dataflow_neuro; | ||||
| A_1C1P2N_RB_X1 cell1; | ||||
| A_1C1P2N_R_X1 cell2; | ||||
| A_1C1P_1N_X1 cell3; | ||||
| A_1C1P_B cell4; | ||||
| A_1C1P cell5; | ||||
| A_1C2P1N_X1 cell6; | ||||
| A_1C2P_B_X1 cell7; | ||||
| A_1C2P cell8; | ||||
| A_1C3P2P2N_R_X1 cell9; | ||||
| A_2C2N2N_RB_X1 cell10; | ||||
| A_2C2N2N_RB_X2 cell11; | ||||
| A_2C2N2N_RB_X4 cell12; | ||||
| A_2C2N2N_R_X1 cell13; | ||||
| A_2C2N_R_B_X2 cell14; | ||||
| A_2C2N_R_B_X4 cell15; | ||||
| A_2C2N_R_X1 cell16; | ||||
| A_2C_B_X1 cell17; | ||||
| A_2C_RB_X1 cell18; | ||||
| A_2C_R_X1 cell19; | ||||
| A_2C_X1 cell20; | ||||
| A_3C_RB_X1 cell21; | ||||
| A_3C_RB_X2 cell22; | ||||
| A_3C_RB_X4 cell23; | ||||
| A_3C_R_X1 cell24; | ||||
| A_3C_X1 cell25; | ||||
| A_4C_RB_X1 cell26; | ||||
| A_4C_RB_X2 cell27; | ||||
| A_4C_RB_X4 cell28; | ||||
| A_4C_R_X1 cell29; | ||||
| A_4P1N1N_B_X1 cell30; | ||||
| A_4P1N1N_X1 cell31; | ||||
| @@ -21,12 +21,12 @@ | ||||
|  * | ||||
|  ************************************************************************** | ||||
|  */ | ||||
| import template::dataflow_neuro::cell_lib_std; | ||||
| import template::dataflow_neuro::cell_lib_async; | ||||
| import tmpl::dataflow_neuro::cell_lib_std; | ||||
| import tmpl::dataflow_neuro::cell_lib_async; | ||||
| import std::channel; | ||||
| open std::channel; | ||||
|  | ||||
| namespace template { | ||||
| namespace tmpl { | ||||
|     namespace dataflow_neuro { | ||||
|  | ||||
|         // @ole talk to rajit, we use valid the wrong way arround according to stdlib | ||||
|   | ||||
		Reference in New Issue
	
	Block a user