we have liftoff - lisp code still needs fixing
ctree/ortree/sigbuf all tests working
This commit is contained in:
3
test/unit_tests/ctree_15/run/prsim.out
Normal file
3
test/unit_tests/ctree_15/run/prsim.out
Normal file
@ -0,0 +1,3 @@
|
||||
t.ctree_test.tmp[22] t.ctree_test.C2Els[0]._y t.ctree_test.tmp[17] t.in[14] t.in[4] t.in[2] t.in[8] t.in[13] t.ctree_test.tmp[21] t.ctree_test.tmp[23] t.out t.in[12] t.in[6] t.in[7] t.in[10] t.in[5] t.ctree_test.tmp[19] t.ctree_test.tmp[18] t.ctree_test.C3Els[0]._y t.in[3] t.ctree_test.tmp[24] t.ctree_test.C3Els[2]._y t.ctree_test.C2Els[4]._y t.in[0] t.in[1] t.ctree_test.tmp[15] t.ctree_test.tmp[16] t.in[11] t.ctree_test.tmp[20] t.ctree_test.C2Els[7]._y t.in[9] t.ctree_test.C2Els[2]._y t.ctree_test.C2Els[1]._y t.ctree_test.C2Els[6]._y t.ctree_test.C2Els[5]._y t.ctree_test.C2Els[3]._y t.ctree_test.C3Els[1]._y
|
||||
0
|
||||
1
|
138
test/unit_tests/ctree_15/run/test.prs
Normal file
138
test/unit_tests/ctree_15/run/test.prs
Normal file
@ -0,0 +1,138 @@
|
||||
= "GND" "GND"
|
||||
= "Vdd" "Vdd"
|
||||
~"t.ctree_test.C2Els[0].c1"&~"t.ctree_test.C2Els[0].c2"->"t.ctree_test.C2Els[0]._y"+
|
||||
"t.ctree_test.C2Els[0].c1"&"t.ctree_test.C2Els[0].c2"->"t.ctree_test.C2Els[0]._y"-
|
||||
"t.ctree_test.C2Els[0]._y"->"t.ctree_test.C2Els[0].y"-
|
||||
~("t.ctree_test.C2Els[0]._y")->"t.ctree_test.C2Els[0].y"+
|
||||
~"t.ctree_test.C2Els[1].c1"&~"t.ctree_test.C2Els[1].c2"->"t.ctree_test.C2Els[1]._y"+
|
||||
"t.ctree_test.C2Els[1].c1"&"t.ctree_test.C2Els[1].c2"->"t.ctree_test.C2Els[1]._y"-
|
||||
"t.ctree_test.C2Els[1]._y"->"t.ctree_test.C2Els[1].y"-
|
||||
~("t.ctree_test.C2Els[1]._y")->"t.ctree_test.C2Els[1].y"+
|
||||
~"t.ctree_test.C2Els[2].c1"&~"t.ctree_test.C2Els[2].c2"->"t.ctree_test.C2Els[2]._y"+
|
||||
"t.ctree_test.C2Els[2].c1"&"t.ctree_test.C2Els[2].c2"->"t.ctree_test.C2Els[2]._y"-
|
||||
"t.ctree_test.C2Els[2]._y"->"t.ctree_test.C2Els[2].y"-
|
||||
~("t.ctree_test.C2Els[2]._y")->"t.ctree_test.C2Els[2].y"+
|
||||
~"t.ctree_test.C2Els[3].c1"&~"t.ctree_test.C2Els[3].c2"->"t.ctree_test.C2Els[3]._y"+
|
||||
"t.ctree_test.C2Els[3].c1"&"t.ctree_test.C2Els[3].c2"->"t.ctree_test.C2Els[3]._y"-
|
||||
"t.ctree_test.C2Els[3]._y"->"t.ctree_test.C2Els[3].y"-
|
||||
~("t.ctree_test.C2Els[3]._y")->"t.ctree_test.C2Els[3].y"+
|
||||
~"t.ctree_test.C2Els[4].c1"&~"t.ctree_test.C2Els[4].c2"->"t.ctree_test.C2Els[4]._y"+
|
||||
"t.ctree_test.C2Els[4].c1"&"t.ctree_test.C2Els[4].c2"->"t.ctree_test.C2Els[4]._y"-
|
||||
"t.ctree_test.C2Els[4]._y"->"t.ctree_test.C2Els[4].y"-
|
||||
~("t.ctree_test.C2Els[4]._y")->"t.ctree_test.C2Els[4].y"+
|
||||
~"t.ctree_test.C2Els[5].c1"&~"t.ctree_test.C2Els[5].c2"->"t.ctree_test.C2Els[5]._y"+
|
||||
"t.ctree_test.C2Els[5].c1"&"t.ctree_test.C2Els[5].c2"->"t.ctree_test.C2Els[5]._y"-
|
||||
"t.ctree_test.C2Els[5]._y"->"t.ctree_test.C2Els[5].y"-
|
||||
~("t.ctree_test.C2Els[5]._y")->"t.ctree_test.C2Els[5].y"+
|
||||
~"t.ctree_test.C2Els[6].c1"&~"t.ctree_test.C2Els[6].c2"->"t.ctree_test.C2Els[6]._y"+
|
||||
"t.ctree_test.C2Els[6].c1"&"t.ctree_test.C2Els[6].c2"->"t.ctree_test.C2Els[6]._y"-
|
||||
"t.ctree_test.C2Els[6]._y"->"t.ctree_test.C2Els[6].y"-
|
||||
~("t.ctree_test.C2Els[6]._y")->"t.ctree_test.C2Els[6].y"+
|
||||
~"t.ctree_test.C2Els[7].c1"&~"t.ctree_test.C2Els[7].c2"->"t.ctree_test.C2Els[7]._y"+
|
||||
"t.ctree_test.C2Els[7].c1"&"t.ctree_test.C2Els[7].c2"->"t.ctree_test.C2Els[7]._y"-
|
||||
"t.ctree_test.C2Els[7]._y"->"t.ctree_test.C2Els[7].y"-
|
||||
~("t.ctree_test.C2Els[7]._y")->"t.ctree_test.C2Els[7].y"+
|
||||
~"t.ctree_test.C3Els[0].c1"&~"t.ctree_test.C3Els[0].c2"&~"t.ctree_test.C3Els[0].c3"->"t.ctree_test.C3Els[0]._y"+
|
||||
"t.ctree_test.C3Els[0].c1"&"t.ctree_test.C3Els[0].c2"&"t.ctree_test.C3Els[0].c3"->"t.ctree_test.C3Els[0]._y"-
|
||||
"t.ctree_test.C3Els[0]._y"->"t.ctree_test.C3Els[0].y"-
|
||||
~("t.ctree_test.C3Els[0]._y")->"t.ctree_test.C3Els[0].y"+
|
||||
~"t.ctree_test.C3Els[1].c1"&~"t.ctree_test.C3Els[1].c2"&~"t.ctree_test.C3Els[1].c3"->"t.ctree_test.C3Els[1]._y"+
|
||||
"t.ctree_test.C3Els[1].c1"&"t.ctree_test.C3Els[1].c2"&"t.ctree_test.C3Els[1].c3"->"t.ctree_test.C3Els[1]._y"-
|
||||
"t.ctree_test.C3Els[1]._y"->"t.ctree_test.C3Els[1].y"-
|
||||
~("t.ctree_test.C3Els[1]._y")->"t.ctree_test.C3Els[1].y"+
|
||||
~"t.ctree_test.C3Els[2].c1"&~"t.ctree_test.C3Els[2].c2"&~"t.ctree_test.C3Els[2].c3"->"t.ctree_test.C3Els[2]._y"+
|
||||
"t.ctree_test.C3Els[2].c1"&"t.ctree_test.C3Els[2].c2"&"t.ctree_test.C3Els[2].c3"->"t.ctree_test.C3Els[2]._y"-
|
||||
"t.ctree_test.C3Els[2]._y"->"t.ctree_test.C3Els[2].y"-
|
||||
~("t.ctree_test.C3Els[2]._y")->"t.ctree_test.C3Els[2].y"+
|
||||
= "t.ctree_test.tmp[15]" "t.ctree_test.C2Els[6].c1"
|
||||
= "t.ctree_test.tmp[15]" "t.ctree_test.C2Els[0].y"
|
||||
= "t.ctree_test.tmp[16]" "t.ctree_test.C2Els[6].c2"
|
||||
= "t.ctree_test.tmp[16]" "t.ctree_test.C2Els[1].y"
|
||||
= "t.ctree_test.tmp[17]" "t.ctree_test.C2Els[7].c1"
|
||||
= "t.ctree_test.tmp[17]" "t.ctree_test.C2Els[2].y"
|
||||
= "t.ctree_test.tmp[18]" "t.ctree_test.C2Els[7].c2"
|
||||
= "t.ctree_test.tmp[18]" "t.ctree_test.C2Els[3].y"
|
||||
= "t.ctree_test.tmp[19]" "t.ctree_test.C3Els[1].c1"
|
||||
= "t.ctree_test.tmp[19]" "t.ctree_test.C2Els[4].y"
|
||||
= "t.ctree_test.tmp[20]" "t.ctree_test.C3Els[1].c2"
|
||||
= "t.ctree_test.tmp[20]" "t.ctree_test.C2Els[5].y"
|
||||
= "t.ctree_test.tmp[21]" "t.ctree_test.C3Els[1].c3"
|
||||
= "t.ctree_test.tmp[21]" "t.ctree_test.C3Els[0].y"
|
||||
= "t.ctree_test.tmp[22]" "t.ctree_test.C3Els[2].c1"
|
||||
= "t.ctree_test.tmp[22]" "t.ctree_test.C2Els[6].y"
|
||||
= "t.ctree_test.tmp[23]" "t.ctree_test.C3Els[2].c2"
|
||||
= "t.ctree_test.tmp[23]" "t.ctree_test.C2Els[7].y"
|
||||
= "t.ctree_test.tmp[24]" "t.ctree_test.C3Els[2].c3"
|
||||
= "t.ctree_test.tmp[24]" "t.ctree_test.C3Els[1].y"
|
||||
= "t.ctree_test.supply.vdd" "t.ctree_test.C3Els[2].vdd"
|
||||
= "t.ctree_test.supply.vdd" "t.ctree_test.C3Els[1].vdd"
|
||||
= "t.ctree_test.supply.vdd" "t.ctree_test.C3Els[0].vdd"
|
||||
= "t.ctree_test.supply.vdd" "t.ctree_test.C2Els[7].vdd"
|
||||
= "t.ctree_test.supply.vdd" "t.ctree_test.C2Els[6].vdd"
|
||||
= "t.ctree_test.supply.vdd" "t.ctree_test.C2Els[5].vdd"
|
||||
= "t.ctree_test.supply.vdd" "t.ctree_test.C2Els[4].vdd"
|
||||
= "t.ctree_test.supply.vdd" "t.ctree_test.C2Els[3].vdd"
|
||||
= "t.ctree_test.supply.vdd" "t.ctree_test.C2Els[2].vdd"
|
||||
= "t.ctree_test.supply.vdd" "t.ctree_test.C2Els[1].vdd"
|
||||
= "t.ctree_test.supply.vdd" "t.ctree_test.C2Els[0].vdd"
|
||||
= "t.ctree_test.supply.vss" "t.ctree_test.C3Els[2].vss"
|
||||
= "t.ctree_test.supply.vss" "t.ctree_test.C3Els[1].vss"
|
||||
= "t.ctree_test.supply.vss" "t.ctree_test.C3Els[0].vss"
|
||||
= "t.ctree_test.supply.vss" "t.ctree_test.C2Els[7].vss"
|
||||
= "t.ctree_test.supply.vss" "t.ctree_test.C2Els[6].vss"
|
||||
= "t.ctree_test.supply.vss" "t.ctree_test.C2Els[5].vss"
|
||||
= "t.ctree_test.supply.vss" "t.ctree_test.C2Els[4].vss"
|
||||
= "t.ctree_test.supply.vss" "t.ctree_test.C2Els[3].vss"
|
||||
= "t.ctree_test.supply.vss" "t.ctree_test.C2Els[2].vss"
|
||||
= "t.ctree_test.supply.vss" "t.ctree_test.C2Els[1].vss"
|
||||
= "t.ctree_test.supply.vss" "t.ctree_test.C2Els[0].vss"
|
||||
= "t.ctree_test.in[0]" "t.ctree_test.C2Els[0].c1"
|
||||
= "t.ctree_test.in[0]" "t.ctree_test.tmp[0]"
|
||||
= "t.ctree_test.in[1]" "t.ctree_test.C2Els[0].c2"
|
||||
= "t.ctree_test.in[1]" "t.ctree_test.tmp[1]"
|
||||
= "t.ctree_test.in[2]" "t.ctree_test.C2Els[1].c1"
|
||||
= "t.ctree_test.in[2]" "t.ctree_test.tmp[2]"
|
||||
= "t.ctree_test.in[3]" "t.ctree_test.C2Els[1].c2"
|
||||
= "t.ctree_test.in[3]" "t.ctree_test.tmp[3]"
|
||||
= "t.ctree_test.in[4]" "t.ctree_test.C2Els[2].c1"
|
||||
= "t.ctree_test.in[4]" "t.ctree_test.tmp[4]"
|
||||
= "t.ctree_test.in[5]" "t.ctree_test.C2Els[2].c2"
|
||||
= "t.ctree_test.in[5]" "t.ctree_test.tmp[5]"
|
||||
= "t.ctree_test.in[6]" "t.ctree_test.C2Els[3].c1"
|
||||
= "t.ctree_test.in[6]" "t.ctree_test.tmp[6]"
|
||||
= "t.ctree_test.in[7]" "t.ctree_test.C2Els[3].c2"
|
||||
= "t.ctree_test.in[7]" "t.ctree_test.tmp[7]"
|
||||
= "t.ctree_test.in[8]" "t.ctree_test.C2Els[4].c1"
|
||||
= "t.ctree_test.in[8]" "t.ctree_test.tmp[8]"
|
||||
= "t.ctree_test.in[9]" "t.ctree_test.C2Els[4].c2"
|
||||
= "t.ctree_test.in[9]" "t.ctree_test.tmp[9]"
|
||||
= "t.ctree_test.in[10]" "t.ctree_test.C2Els[5].c1"
|
||||
= "t.ctree_test.in[10]" "t.ctree_test.tmp[10]"
|
||||
= "t.ctree_test.in[11]" "t.ctree_test.C2Els[5].c2"
|
||||
= "t.ctree_test.in[11]" "t.ctree_test.tmp[11]"
|
||||
= "t.ctree_test.in[12]" "t.ctree_test.C3Els[0].c1"
|
||||
= "t.ctree_test.in[12]" "t.ctree_test.tmp[12]"
|
||||
= "t.ctree_test.in[13]" "t.ctree_test.C3Els[0].c2"
|
||||
= "t.ctree_test.in[13]" "t.ctree_test.tmp[13]"
|
||||
= "t.ctree_test.in[14]" "t.ctree_test.C3Els[0].c3"
|
||||
= "t.ctree_test.in[14]" "t.ctree_test.tmp[14]"
|
||||
= "t.ctree_test.out" "t.ctree_test.C3Els[2].y"
|
||||
= "t.ctree_test.out" "t.ctree_test.tmp[25]"
|
||||
= "Vdd" "t.ctree_test.supply.vdd"
|
||||
= "GND" "t.ctree_test.supply.vss"
|
||||
= "t.out" "t.ctree_test.out"
|
||||
= "t.in[0]" "t.ctree_test.in[0]"
|
||||
= "t.in[1]" "t.ctree_test.in[1]"
|
||||
= "t.in[2]" "t.ctree_test.in[2]"
|
||||
= "t.in[3]" "t.ctree_test.in[3]"
|
||||
= "t.in[4]" "t.ctree_test.in[4]"
|
||||
= "t.in[5]" "t.ctree_test.in[5]"
|
||||
= "t.in[6]" "t.ctree_test.in[6]"
|
||||
= "t.in[7]" "t.ctree_test.in[7]"
|
||||
= "t.in[8]" "t.ctree_test.in[8]"
|
||||
= "t.in[9]" "t.ctree_test.in[9]"
|
||||
= "t.in[10]" "t.ctree_test.in[10]"
|
||||
= "t.in[11]" "t.ctree_test.in[11]"
|
||||
= "t.in[12]" "t.ctree_test.in[12]"
|
||||
= "t.in[13]" "t.ctree_test.in[13]"
|
||||
= "t.in[14]" "t.ctree_test.in[14]"
|
41
test/unit_tests/ctree_15/test.act
Normal file
41
test/unit_tests/ctree_15/test.act
Normal file
@ -0,0 +1,41 @@
|
||||
/*************************************************************************
|
||||
*
|
||||
* 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/treegates.act";
|
||||
import globals;
|
||||
|
||||
open tmpl::dataflow_neuro;
|
||||
|
||||
defproc ctree_15 (bool? in[15]; bool! out){
|
||||
ctree<15> ctree_test(.in=in, .out=out);
|
||||
ctree_test.supply.vss = GND;
|
||||
ctree_test.supply.vdd = Vdd;
|
||||
|
||||
}
|
||||
|
||||
ctree_15 t;
|
26
test/unit_tests/ctree_15/test.prsim
Normal file
26
test/unit_tests/ctree_15/test.prsim
Normal file
@ -0,0 +1,26 @@
|
||||
|
||||
system "echo '0'"
|
||||
|
||||
set t.in[0] 1
|
||||
set t.in[1] 1
|
||||
set t.in[2] 1
|
||||
set t.in[3] 1
|
||||
set t.in[4] 1
|
||||
set t.in[5] 1
|
||||
set t.in[6] 1
|
||||
set t.in[7] 1
|
||||
set t.in[8] 1
|
||||
set t.in[9] 1
|
||||
set t.in[10] 1
|
||||
set t.in[11] 1
|
||||
set t.in[12] 1
|
||||
set t.in[13] 1
|
||||
set t.in[14] 1
|
||||
|
||||
system "echo '1'"
|
||||
|
||||
cycle
|
||||
mode run
|
||||
assert t.out 1
|
||||
|
||||
|
Reference in New Issue
Block a user