Auto stash before merge of "dev" and "origin/dev"
This commit is contained in:
1 parent
c41d7f4fdf
commit
cd1947a2ce
16 files changed
+23301
-3006
No files matched your search
+43
-390
@@ -1,427 +1,80 @@
|
|||||||
/*************************************************************************
|
namespace cell {
|
||||||
*
|
|
||||||
* This file is part of ACT dataflow neuro library
|
|
||||||
*
|
|
||||||
* Copyright (c) 2020-2021 Rajit Manohar
|
|
||||||
* Copyright (c) 2022 University of Groningen - Ole Richter
|
|
||||||
* 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.
|
|
||||||
*
|
|
||||||
**************************************************************************
|
|
||||||
*/
|
|
||||||
|
|
||||||
namespace tmpl {
|
export defcell g0x0 (bool? in[2]; bool! out)
|
||||||
namespace dataflow_neuro {
|
|
||||||
|
|
||||||
export defproc TIELO_X1(bool! y; bool vdd, vss)
|
|
||||||
{
|
|
||||||
y = vss;
|
|
||||||
}
|
|
||||||
|
|
||||||
export defproc TIEHI_X1(bool! y; bool vdd, vss)
|
|
||||||
{
|
|
||||||
y = vdd;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*-- inverters --*/
|
|
||||||
|
|
||||||
defproc inv (bool! y; bool? a, vdd, vss)
|
|
||||||
{
|
{
|
||||||
prs {
|
prs {
|
||||||
a => y-
|
[keeper=0] ~in[0] & ~in[1] -> out+
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
template<pint nf>
|
export defcell g1x0 (bool? in[2]; bool! out)
|
||||||
defproc szinv <: inv()
|
|
||||||
{
|
|
||||||
[nf = 0 -> sizing { y {-1} }
|
|
||||||
[] else -> sizing { y {-2*nf,svt,nf} }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|
||||||
export defcell INV_X1<: szinv<0>() { }
|
|
||||||
export defcell INV_X2<: szinv<1>() { }
|
|
||||||
export defcell INV_X4<: szinv<2>() { }
|
|
||||||
export defcell INV_X8<: szinv<4>() { }
|
|
||||||
|
|
||||||
|
|
||||||
/*-- signal buffers --*/
|
|
||||||
|
|
||||||
defproc buf (bool! y; bool? a, vdd, vss)
|
|
||||||
{
|
|
||||||
bool _y;
|
|
||||||
prs {
|
|
||||||
a => _y-
|
|
||||||
_y => y-
|
|
||||||
}
|
|
||||||
}
|
|
||||||
export defcell BUF_X1<: buf()
|
|
||||||
{
|
|
||||||
sizing { _y {-1}; y {-1} }
|
|
||||||
}
|
|
||||||
export defcell BUF_X2<: buf()
|
|
||||||
{
|
|
||||||
sizing { _y {-1}; y {-2} }
|
|
||||||
}
|
|
||||||
export defcell BUF_X3<: buf()
|
|
||||||
{
|
|
||||||
sizing { _y {-1.5}; y {-3} }
|
|
||||||
}
|
|
||||||
export defcell BUF_X4<: buf()
|
|
||||||
{
|
|
||||||
sizing { _y {-1.5}; y {-4,2} }
|
|
||||||
}
|
|
||||||
export defcell BUF_X6<: buf()
|
|
||||||
{
|
|
||||||
sizing { _y {-3}; y {-6,2} }
|
|
||||||
}
|
|
||||||
export defcell BUF_X8<: buf()
|
|
||||||
{
|
|
||||||
sizing { _y {-4,2}; y {-8,4} }
|
|
||||||
}
|
|
||||||
export defcell BUF_X12<: buf()
|
|
||||||
{
|
|
||||||
sizing { _y {-6,2}; y {-12,4} }
|
|
||||||
}
|
|
||||||
|
|
||||||
/*-- delay cells --*/
|
|
||||||
// TODO properly
|
|
||||||
|
|
||||||
// export defcell DLY4_X1(bool! y; bool? a, vdd, vss)
|
|
||||||
// {
|
|
||||||
// bool _y, __y, ___y;
|
|
||||||
// prs {
|
|
||||||
// a => _y-
|
|
||||||
// _y => __y-
|
|
||||||
// __y => ___y-
|
|
||||||
// ___y => y-
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
export defcell DLY4_X1(bool! y; bool? a, vdd, vss)
|
|
||||||
{
|
|
||||||
BUF_X1 bufchain[16];
|
|
||||||
(i:0..14: bufchain[i].y = bufchain[i+1].a;)
|
|
||||||
bufchain[0].a = a;
|
|
||||||
bufchain[15].y = y;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*-- simple gates --*/
|
|
||||||
|
|
||||||
export defcell NOR2_X1(bool! y; bool? a, b, vdd, vss)
|
|
||||||
{
|
{
|
||||||
prs {
|
prs {
|
||||||
a | b => y-
|
[keeper=0] in[0] & in[1] -> out-
|
||||||
}
|
}
|
||||||
sizing { y {-1} }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export defcell NOR3_X1(bool! y; bool? a, b, c, vdd, vss)
|
export defcell g2x0 (bool? in[1]; bool! out)
|
||||||
{
|
{
|
||||||
prs {
|
prs {
|
||||||
a | b | c => y-
|
[keeper=0] ~in[0] -> out+
|
||||||
}
|
}
|
||||||
sizing { y {-1} }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export defcell NOR4_X1(bool! y; bool? a, b, c, d, vdd, vss)
|
export defcell g3x0 (bool? in[2]; bool! out)
|
||||||
{
|
{
|
||||||
prs {
|
prs {
|
||||||
a | b | c | d => y-
|
[keeper=0] in[0] & in[1] -> out-
|
||||||
|
[keeper=0] ~in[0] | ~in[1] -> out+
|
||||||
}
|
}
|
||||||
sizing { y {-1} }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export defcell g4x0 (bool? in[2]; bool! out)
|
||||||
export defcell OR2_X1(bool! y; bool? a, b, vdd, vss)
|
|
||||||
{
|
|
||||||
bool _y;
|
|
||||||
prs {
|
|
||||||
a | b => _y-
|
|
||||||
_y => y-
|
|
||||||
}
|
|
||||||
sizing { _y{-1}; y{-1} }
|
|
||||||
}
|
|
||||||
|
|
||||||
export defcell OR2_X2(bool! y; bool? a, b, vdd, vss)
|
|
||||||
{
|
|
||||||
bool _y;
|
|
||||||
prs {
|
|
||||||
a | b => _y-
|
|
||||||
_y => y-
|
|
||||||
}
|
|
||||||
sizing { _y{-1}; y{-2} }
|
|
||||||
}
|
|
||||||
|
|
||||||
export defcell OR3_X1(bool! y; bool? a, b, c, vdd, vss)
|
|
||||||
{
|
|
||||||
bool _y;
|
|
||||||
prs {
|
|
||||||
a | b | c => _y-
|
|
||||||
_y => y-
|
|
||||||
}
|
|
||||||
sizing { _y{-1}; y{-1} }
|
|
||||||
}
|
|
||||||
|
|
||||||
export defcell OR4_X1(bool! y; bool? a, b, c, d, vdd, vss)
|
|
||||||
{
|
|
||||||
bool _y;
|
|
||||||
prs {
|
|
||||||
a | b | c | d => _y-
|
|
||||||
_y => y-
|
|
||||||
}
|
|
||||||
sizing { _y{-1}; y{-1} }
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
export defcell NAND2_X1(bool! y; bool? a, b, vdd, vss)
|
|
||||||
{
|
{
|
||||||
prs {
|
prs {
|
||||||
a & b => y-
|
[keeper=0] in[0] | in[1] -> out-
|
||||||
|
~(in[0] | in[1]) -> out+
|
||||||
}
|
}
|
||||||
sizing { y{-1} }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export defcell NAND3_X1(bool! y; bool? a, b, c, vdd, vss)
|
export defcell g5x0 (bool? in[1]; bool! out)
|
||||||
{
|
{
|
||||||
prs {
|
prs {
|
||||||
a & b & c => y-
|
[keeper=0] in[0] -> out-
|
||||||
}
|
}
|
||||||
sizing { y{-1} }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export defcell NAND4_X1(bool! y; bool? a, b, c, d, vdd, vss)
|
export defcell g6x0 (bool? in[3]; bool! out)
|
||||||
{
|
{
|
||||||
prs {
|
prs {
|
||||||
a & b & c & d => y-
|
[keeper=0] ~in[0] & ~in[1] & ~in[2] -> out+
|
||||||
}
|
|
||||||
sizing { y{-1} }
|
|
||||||
}
|
|
||||||
|
|
||||||
export defcell AND2_X1(bool! y; bool? a, b, vdd, vss)
|
|
||||||
{
|
|
||||||
bool _y;
|
|
||||||
prs {
|
|
||||||
a & b => _y-
|
|
||||||
_y => y-
|
|
||||||
}
|
|
||||||
sizing { _y{-1}; y{-1} }
|
|
||||||
}
|
|
||||||
|
|
||||||
export defcell AND2_X2(bool! y; bool? a, b, vdd, vss)
|
|
||||||
{
|
|
||||||
bool _y;
|
|
||||||
prs {
|
|
||||||
a & b => _y-
|
|
||||||
_y => y-
|
|
||||||
}
|
|
||||||
sizing { _y{-1}; y{-2} }
|
|
||||||
}
|
|
||||||
|
|
||||||
export defcell AND3_X1(bool! y; bool? a, b, c, vdd, vss)
|
|
||||||
{
|
|
||||||
bool _y;
|
|
||||||
prs {
|
|
||||||
a & b & c => _y-
|
|
||||||
_y => y-
|
|
||||||
}
|
|
||||||
sizing { _y{-1}; y{-1} }
|
|
||||||
}
|
|
||||||
|
|
||||||
export defcell AND4_X1(bool! y; bool? a, b, c, d, vdd, vss)
|
|
||||||
{
|
|
||||||
bool _y;
|
|
||||||
prs {
|
|
||||||
a & b & c & d => _y-
|
|
||||||
_y => y-
|
|
||||||
}
|
|
||||||
sizing { _y{-1}; y{-1} }
|
|
||||||
}
|
|
||||||
|
|
||||||
export defcell XOR2_X1(bool! y; bool? a, b, vdd, vss)
|
|
||||||
{
|
|
||||||
bool _a, _b;
|
|
||||||
prs {
|
|
||||||
a => _a-
|
|
||||||
b => _b-
|
|
||||||
|
|
||||||
[keeper=0] ~b & ~_a | ~_b & ~a -> y+
|
|
||||||
_b & _a | b & a -> y-
|
|
||||||
}
|
|
||||||
sizing { _a{-1}; _b{-1}; y{-1} }
|
|
||||||
}
|
|
||||||
|
|
||||||
export defcell XNOR2_X1(bool! y; bool? a, b, vdd, vss)
|
|
||||||
{
|
|
||||||
bool _a, _b;
|
|
||||||
prs {
|
|
||||||
a => _a-
|
|
||||||
b => _b-
|
|
||||||
|
|
||||||
[keeper=0] ~b & ~a | ~_b & ~_a -> y+
|
|
||||||
b & _a | _b & a -> y-
|
|
||||||
}
|
|
||||||
sizing { _a{-1}; _b{-1}; y{-1} }
|
|
||||||
}
|
|
||||||
|
|
||||||
export defcell MUX2_X1(bool! y; bool? a, b, s, vdd, vss)
|
|
||||||
{
|
|
||||||
// y = !( S ? b : a )
|
|
||||||
// Actually looks more like
|
|
||||||
// if s = 0 -> use A
|
|
||||||
// Adjusted to fit the XFAB Muxes
|
|
||||||
bool _s;
|
|
||||||
bool _y;
|
|
||||||
prs {
|
|
||||||
s => _s-
|
|
||||||
|
|
||||||
[keeper=0] ~a & ~s | ~b & ~_s -> _y+
|
|
||||||
a & _s | b & s -> _y-
|
|
||||||
_y => y-
|
|
||||||
}
|
|
||||||
sizing { _s{-1}; y{-1}; _y{-1}}
|
|
||||||
}
|
|
||||||
|
|
||||||
export defcell MUX4_X1(bool! y; bool? a, b, c, d, s0, s1, vdd, vss)
|
|
||||||
{
|
|
||||||
// y = !( S ? a : b )
|
|
||||||
bool _s0;
|
|
||||||
bool _s1;
|
|
||||||
bool _yab;
|
|
||||||
bool _ycd;
|
|
||||||
|
|
||||||
prs {
|
|
||||||
s0 => _s0-
|
|
||||||
s1 => _s1-
|
|
||||||
|
|
||||||
[keeper=0] a & _s0 | b & s0 -> _yab-
|
|
||||||
~a & ~s0 | ~b & ~_s0 -> _yab+
|
|
||||||
|
|
||||||
[keeper=0] c & _s0 | d & s0 -> _ycd-
|
|
||||||
~c & ~s0 | ~d & ~_s0 -> _ycd+
|
|
||||||
|
|
||||||
[keeper=0]_yab & _s1 | _ycd & s1 -> y-
|
|
||||||
~_yab & ~s1 | ~_ycd & ~_s1 -> y+
|
|
||||||
|
|
||||||
}
|
|
||||||
sizing {_s0{-1}; _s1{-1}; y{-1}; _yab{-1}; _ycd{-1}}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
export defcell OAI21_X1(bool! y; bool? a, b, c, vdd, vss)
|
|
||||||
{
|
|
||||||
prs {
|
|
||||||
(a | b) & c => y-
|
|
||||||
}
|
|
||||||
sizing { y{-1} }
|
|
||||||
}
|
|
||||||
|
|
||||||
export defcell AOI21_X1(bool! y; bool? a, b, c, vdd, vss)
|
|
||||||
{
|
|
||||||
prs {
|
|
||||||
a & b | c => y-
|
|
||||||
}
|
|
||||||
sizing { y{-1} }
|
|
||||||
}
|
|
||||||
|
|
||||||
export defcell OAI22_X1(bool! y; bool? a, b, c, d, vdd, vss)
|
|
||||||
{
|
|
||||||
// y = !((a|b) & (c|d))
|
|
||||||
prs {
|
|
||||||
(a | b) & (c | d) => y-
|
|
||||||
}
|
|
||||||
sizing { y{-1} }
|
|
||||||
}
|
|
||||||
|
|
||||||
export defcell AOI22_X1(bool! y; bool? a, b, c, d, vdd, vss)
|
|
||||||
{
|
|
||||||
prs {
|
|
||||||
a & b | c & d => y-
|
|
||||||
}
|
|
||||||
sizing { y{-1} }
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*--- buffered transmission gates ---*/
|
|
||||||
|
|
||||||
export defcell TBUF1_X1 (bool! y; bool? a, en, vdd, vss)
|
|
||||||
{
|
|
||||||
bool _en;
|
|
||||||
prs {
|
|
||||||
en => _en-
|
|
||||||
|
|
||||||
~a & ~_en -> y+
|
|
||||||
a & en -> y-
|
|
||||||
}
|
|
||||||
sizing { _en{-1}; y{-1} }
|
|
||||||
}
|
|
||||||
|
|
||||||
export defcell TBUF_X2 (bool! y; bool? a, en, vdd, vss)
|
|
||||||
{
|
|
||||||
bool _en;
|
|
||||||
prs {
|
|
||||||
en => _en-
|
|
||||||
|
|
||||||
~a & ~_en -> y+
|
|
||||||
a & en -> y-
|
|
||||||
}
|
|
||||||
sizing { _en{-2}; y{-2,2} }
|
|
||||||
}
|
|
||||||
|
|
||||||
export defcell TBUF_X4 (bool! y; bool? a, en, vdd, vss)
|
|
||||||
{
|
|
||||||
bool _en;
|
|
||||||
prs {
|
|
||||||
en => _en-
|
|
||||||
|
|
||||||
~a & ~_en -> y+
|
|
||||||
a & en -> y-
|
|
||||||
}
|
|
||||||
sizing { _en{-4}; y{-4,4} }
|
|
||||||
}
|
|
||||||
|
|
||||||
export defproc DFFQ_R_X1 (bool? clk_B, reset_B, d; bool! q,q_B; bool? vdd,vss)
|
|
||||||
{
|
|
||||||
bool _clk_B, __clk_B, _mqi,_mqib,_sqi,_sqib;
|
|
||||||
prs {
|
|
||||||
|
|
||||||
// Creating delayed versions of the clock
|
|
||||||
clk_B => _clk_B-
|
|
||||||
_clk_B => __clk_B-
|
|
||||||
|
|
||||||
(~d & ~_clk_B)|(~reset_B)|(~__clk_B&~_mqi) -> _mqib+
|
|
||||||
((d & __clk_B)|(_mqi & _clk_B))&reset_B -> _mqib-
|
|
||||||
|
|
||||||
_mqib => _mqi-
|
|
||||||
|
|
||||||
(~_mqi &~__clk_B)|(~reset_B)|(~_sqi&~_clk_B) -> _sqib+
|
|
||||||
((_mqi &_clk_B)|(_sqi&__clk_B))&reset_B -> _sqib-
|
|
||||||
|
|
||||||
_sqib => _sqi-
|
|
||||||
_sqib => q-
|
|
||||||
|
|
||||||
q => q_B-
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export template<pint w,l> defcell p0(bool? in[2]; bool! out) {
|
||||||
|
prs { passp<w,l> (in[0],in[1],out) }
|
||||||
|
}
|
||||||
|
|
||||||
|
export template<pint w,l> defcell n0(bool? in[2]; bool! out) {
|
||||||
|
prs { passn<w,l> (in[0],in[1],out) }
|
||||||
|
}
|
||||||
|
|
||||||
|
export template<pint w,l> defcell t0(bool? in[3]; bool! out) {
|
||||||
|
prs { transgate<w,l> (in[0],in[1],in[2],out) }
|
||||||
|
}
|
||||||
|
|
||||||
|
export defcell p1(bool? in[2]; bool! out) {
|
||||||
|
prs { passp (in[0],in[1],out) }
|
||||||
|
}
|
||||||
|
|
||||||
|
export defcell n1(bool? in[2]; bool! out) {
|
||||||
|
prs { passn (in[0],in[1],out) }
|
||||||
|
}
|
||||||
|
|
||||||
|
export defcell t1(bool? in[3]; bool! out) {
|
||||||
|
prs { transgate (in[0],in[1],in[2],out) }
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -418,7 +418,7 @@ defproc sigbuf (bool? in; bool! out[N]; power supply)
|
|||||||
{
|
{
|
||||||
|
|
||||||
{ N >= 0 : "sigbuf: parameter error" };
|
{ N >= 0 : "sigbuf: parameter error" };
|
||||||
{ N <= 128 : "sigbuf: parameter error, N too big" };
|
// { N <= 43 : "sigbuf: parameter error, N too big" };
|
||||||
|
|
||||||
/* -- just use in sized driver here -- */
|
/* -- just use in sized driver here -- */
|
||||||
[ N <= 4 ->
|
[ N <= 4 ->
|
||||||
@@ -433,7 +433,7 @@ defproc sigbuf (bool? in; bool! out[N]; power supply)
|
|||||||
BUF_X6 buf6 (.a = in, .y = out[0], .vdd = supply.vdd, .vss = supply.vss);
|
BUF_X6 buf6 (.a = in, .y = out[0], .vdd = supply.vdd, .vss = supply.vss);
|
||||||
[] N >= 19 & N <= 29 ->
|
[] N >= 19 & N <= 29 ->
|
||||||
BUF_X8 buf8 (.a = in, .y = out[0], .vdd = supply.vdd, .vss = supply.vss);
|
BUF_X8 buf8 (.a = in, .y = out[0], .vdd = supply.vdd, .vss = supply.vss);
|
||||||
[] N >= 30 & N <= 48->
|
[] N >= 30 ->
|
||||||
BUF_X12 buf12 (.a = in, .y = out[0], .vdd = supply.vdd, .vss = supply.vss);
|
BUF_X12 buf12 (.a = in, .y = out[0], .vdd = supply.vdd, .vss = supply.vss);
|
||||||
[] N >= 49 & N <= 64 ->
|
[] N >= 49 & N <= 64 ->
|
||||||
BUF_X16 buf16 (.a = in, .y = out[0], .vdd = supply.vdd, .vss = supply.vss);
|
BUF_X16 buf16 (.a = in, .y = out[0], .vdd = supply.vdd, .vss = supply.vss);
|
||||||
|
|||||||
File diff suppressed because it is too large.
Load diff
@@ -8749,51 +8749,51 @@
|
|||||||
= "b.demux.in.a" "b.demux.demux.cond.a"
|
= "b.demux.in.a" "b.demux.demux.cond.a"
|
||||||
= "b.demux.in.a" "b.demux.demux.in.a"
|
= "b.demux.in.a" "b.demux.demux.in.a"
|
||||||
= "b.demux.in.v" "b.demux.demux.in.v"
|
= "b.demux.in.v" "b.demux.demux.in.v"
|
||||||
|
= "b.demux.in.d.d[7].d[0]" "b.demux.demux.in.d.d[6].f"
|
||||||
|
= "b.demux.in.d.d[7].d[0]" "b.demux.demux.in.d.d[6].d[0]"
|
||||||
= "b.demux.in.d.d[7].d[0]" "b.demux.in.d.d[7].f"
|
= "b.demux.in.d.d[7].d[0]" "b.demux.in.d.d[7].f"
|
||||||
|
= "b.demux.in.d.d[7].d[1]" "b.demux.demux.in.d.d[6].t"
|
||||||
|
= "b.demux.in.d.d[7].d[1]" "b.demux.demux.in.d.d[6].d[1]"
|
||||||
= "b.demux.in.d.d[7].d[1]" "b.demux.in.d.d[7].t"
|
= "b.demux.in.d.d[7].d[1]" "b.demux.in.d.d[7].t"
|
||||||
= "b.demux.in.d.d[6].d[0]" "b.demux.demux.in.d.d[6].f"
|
= "b.demux.in.d.d[6].d[0]" "b.demux.demux.in.d.d[5].f"
|
||||||
= "b.demux.in.d.d[6].d[0]" "b.demux.demux.in.d.d[6].d[0]"
|
= "b.demux.in.d.d[6].d[0]" "b.demux.demux.in.d.d[5].d[0]"
|
||||||
= "b.demux.in.d.d[6].d[0]" "b.demux.in.d.d[6].f"
|
= "b.demux.in.d.d[6].d[0]" "b.demux.in.d.d[6].f"
|
||||||
= "b.demux.in.d.d[6].d[1]" "b.demux.demux.in.d.d[6].t"
|
= "b.demux.in.d.d[6].d[1]" "b.demux.demux.in.d.d[5].t"
|
||||||
= "b.demux.in.d.d[6].d[1]" "b.demux.demux.in.d.d[6].d[1]"
|
= "b.demux.in.d.d[6].d[1]" "b.demux.demux.in.d.d[5].d[1]"
|
||||||
= "b.demux.in.d.d[6].d[1]" "b.demux.in.d.d[6].t"
|
= "b.demux.in.d.d[6].d[1]" "b.demux.in.d.d[6].t"
|
||||||
= "b.demux.in.d.d[5].d[0]" "b.demux.demux.in.d.d[5].f"
|
= "b.demux.in.d.d[5].d[0]" "b.demux.demux.in.d.d[4].f"
|
||||||
= "b.demux.in.d.d[5].d[0]" "b.demux.demux.in.d.d[5].d[0]"
|
= "b.demux.in.d.d[5].d[0]" "b.demux.demux.in.d.d[4].d[0]"
|
||||||
= "b.demux.in.d.d[5].d[0]" "b.demux.in.d.d[5].f"
|
= "b.demux.in.d.d[5].d[0]" "b.demux.in.d.d[5].f"
|
||||||
= "b.demux.in.d.d[5].d[1]" "b.demux.demux.in.d.d[5].t"
|
= "b.demux.in.d.d[5].d[1]" "b.demux.demux.in.d.d[4].t"
|
||||||
= "b.demux.in.d.d[5].d[1]" "b.demux.demux.in.d.d[5].d[1]"
|
= "b.demux.in.d.d[5].d[1]" "b.demux.demux.in.d.d[4].d[1]"
|
||||||
= "b.demux.in.d.d[5].d[1]" "b.demux.in.d.d[5].t"
|
= "b.demux.in.d.d[5].d[1]" "b.demux.in.d.d[5].t"
|
||||||
= "b.demux.in.d.d[4].d[0]" "b.demux.demux.in.d.d[4].f"
|
= "b.demux.in.d.d[4].d[0]" "b.demux.demux.in.d.d[3].f"
|
||||||
= "b.demux.in.d.d[4].d[0]" "b.demux.demux.in.d.d[4].d[0]"
|
= "b.demux.in.d.d[4].d[0]" "b.demux.demux.in.d.d[3].d[0]"
|
||||||
= "b.demux.in.d.d[4].d[0]" "b.demux.in.d.d[4].f"
|
= "b.demux.in.d.d[4].d[0]" "b.demux.in.d.d[4].f"
|
||||||
= "b.demux.in.d.d[4].d[1]" "b.demux.demux.in.d.d[4].t"
|
= "b.demux.in.d.d[4].d[1]" "b.demux.demux.in.d.d[3].t"
|
||||||
= "b.demux.in.d.d[4].d[1]" "b.demux.demux.in.d.d[4].d[1]"
|
= "b.demux.in.d.d[4].d[1]" "b.demux.demux.in.d.d[3].d[1]"
|
||||||
= "b.demux.in.d.d[4].d[1]" "b.demux.in.d.d[4].t"
|
= "b.demux.in.d.d[4].d[1]" "b.demux.in.d.d[4].t"
|
||||||
= "b.demux.in.d.d[3].d[0]" "b.demux.demux.in.d.d[3].f"
|
= "b.demux.in.d.d[3].d[0]" "b.demux.demux.in.d.d[2].f"
|
||||||
= "b.demux.in.d.d[3].d[0]" "b.demux.demux.in.d.d[3].d[0]"
|
= "b.demux.in.d.d[3].d[0]" "b.demux.demux.in.d.d[2].d[0]"
|
||||||
= "b.demux.in.d.d[3].d[0]" "b.demux.in.d.d[3].f"
|
= "b.demux.in.d.d[3].d[0]" "b.demux.in.d.d[3].f"
|
||||||
= "b.demux.in.d.d[3].d[1]" "b.demux.demux.in.d.d[3].t"
|
= "b.demux.in.d.d[3].d[1]" "b.demux.demux.in.d.d[2].t"
|
||||||
= "b.demux.in.d.d[3].d[1]" "b.demux.demux.in.d.d[3].d[1]"
|
= "b.demux.in.d.d[3].d[1]" "b.demux.demux.in.d.d[2].d[1]"
|
||||||
= "b.demux.in.d.d[3].d[1]" "b.demux.in.d.d[3].t"
|
= "b.demux.in.d.d[3].d[1]" "b.demux.in.d.d[3].t"
|
||||||
= "b.demux.in.d.d[2].d[0]" "b.demux.demux.in.d.d[2].f"
|
= "b.demux.in.d.d[2].d[0]" "b.demux.demux.in.d.d[1].f"
|
||||||
= "b.demux.in.d.d[2].d[0]" "b.demux.demux.in.d.d[2].d[0]"
|
= "b.demux.in.d.d[2].d[0]" "b.demux.demux.in.d.d[1].d[0]"
|
||||||
= "b.demux.in.d.d[2].d[0]" "b.demux.in.d.d[2].f"
|
= "b.demux.in.d.d[2].d[0]" "b.demux.in.d.d[2].f"
|
||||||
= "b.demux.in.d.d[2].d[1]" "b.demux.demux.in.d.d[2].t"
|
= "b.demux.in.d.d[2].d[1]" "b.demux.demux.in.d.d[1].t"
|
||||||
= "b.demux.in.d.d[2].d[1]" "b.demux.demux.in.d.d[2].d[1]"
|
= "b.demux.in.d.d[2].d[1]" "b.demux.demux.in.d.d[1].d[1]"
|
||||||
= "b.demux.in.d.d[2].d[1]" "b.demux.in.d.d[2].t"
|
= "b.demux.in.d.d[2].d[1]" "b.demux.in.d.d[2].t"
|
||||||
= "b.demux.in.d.d[1].d[0]" "b.demux.demux.in.d.d[1].f"
|
= "b.demux.in.d.d[1].d[0]" "b.demux.demux.in.d.d[0].f"
|
||||||
= "b.demux.in.d.d[1].d[0]" "b.demux.demux.in.d.d[1].d[0]"
|
= "b.demux.in.d.d[1].d[0]" "b.demux.demux.in.d.d[0].d[0]"
|
||||||
= "b.demux.in.d.d[1].d[0]" "b.demux.in.d.d[1].f"
|
= "b.demux.in.d.d[1].d[0]" "b.demux.in.d.d[1].f"
|
||||||
= "b.demux.in.d.d[1].d[1]" "b.demux.demux.in.d.d[1].t"
|
= "b.demux.in.d.d[1].d[1]" "b.demux.demux.in.d.d[0].t"
|
||||||
= "b.demux.in.d.d[1].d[1]" "b.demux.demux.in.d.d[1].d[1]"
|
= "b.demux.in.d.d[1].d[1]" "b.demux.demux.in.d.d[0].d[1]"
|
||||||
= "b.demux.in.d.d[1].d[1]" "b.demux.in.d.d[1].t"
|
= "b.demux.in.d.d[1].d[1]" "b.demux.in.d.d[1].t"
|
||||||
= "b.demux.in.d.d[0].d[0]" "b.demux.demux.in.d.d[0].f"
|
|
||||||
= "b.demux.in.d.d[0].d[0]" "b.demux.demux.in.d.d[0].d[0]"
|
|
||||||
= "b.demux.in.d.d[0].d[0]" "b.demux.demux.cond.d.d[0].f"
|
= "b.demux.in.d.d[0].d[0]" "b.demux.demux.cond.d.d[0].f"
|
||||||
= "b.demux.in.d.d[0].d[0]" "b.demux.demux.cond.d.d[0].d[0]"
|
= "b.demux.in.d.d[0].d[0]" "b.demux.demux.cond.d.d[0].d[0]"
|
||||||
= "b.demux.in.d.d[0].d[0]" "b.demux.in.d.d[0].f"
|
= "b.demux.in.d.d[0].d[0]" "b.demux.in.d.d[0].f"
|
||||||
= "b.demux.in.d.d[0].d[1]" "b.demux.demux.in.d.d[0].t"
|
|
||||||
= "b.demux.in.d.d[0].d[1]" "b.demux.demux.in.d.d[0].d[1]"
|
|
||||||
= "b.demux.in.d.d[0].d[1]" "b.demux.demux.cond.d.d[0].t"
|
= "b.demux.in.d.d[0].d[1]" "b.demux.demux.cond.d.d[0].t"
|
||||||
= "b.demux.in.d.d[0].d[1]" "b.demux.demux.cond.d.d[0].d[1]"
|
= "b.demux.in.d.d[0].d[1]" "b.demux.demux.cond.d.d[0].d[1]"
|
||||||
= "b.demux.in.d.d[0].d[1]" "b.demux.in.d.d[0].t"
|
= "b.demux.in.d.d[0].d[1]" "b.demux.in.d.d[0].t"
|
||||||
|
|||||||
@@ -59,6 +59,7 @@ assert b.in.v 1
|
|||||||
assert b.in.a 1
|
assert b.in.a 1
|
||||||
|
|
||||||
assert-qdi-channel-valid "b.out2" 7 100
|
assert-qdi-channel-valid "b.out2" 7 100
|
||||||
|
assert-qdi-channel-neutral "b.out1" 7
|
||||||
set b.out2.v 1
|
set b.out2.v 1
|
||||||
cycle
|
cycle
|
||||||
assert b.in.a 1
|
assert b.in.a 1
|
||||||
|
|||||||
@@ -0,0 +1,204 @@
|
|||||||
|
//
|
||||||
|
// Verilog module for: INV_X1<>
|
||||||
|
//
|
||||||
|
module _0_0tmpl_0_0dataflow__neuro_0_0INV__X1(y, a);
|
||||||
|
output y;
|
||||||
|
input a;
|
||||||
|
|
||||||
|
// -- signals ---
|
||||||
|
reg y;
|
||||||
|
wire a;
|
||||||
|
|
||||||
|
// --- instances
|
||||||
|
endmodule
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: A_2P_U_X4<>
|
||||||
|
//
|
||||||
|
module _0_0tmpl_0_0dataflow__neuro_0_0A__2P__U__X4(p1, p2, y);
|
||||||
|
input p1;
|
||||||
|
input p2;
|
||||||
|
output y;
|
||||||
|
|
||||||
|
// -- signals ---
|
||||||
|
reg y;
|
||||||
|
wire p2;
|
||||||
|
wire p1;
|
||||||
|
|
||||||
|
// --- instances
|
||||||
|
endmodule
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: INV_X2<>
|
||||||
|
//
|
||||||
|
module _0_0tmpl_0_0dataflow__neuro_0_0INV__X2(y, a);
|
||||||
|
output y;
|
||||||
|
input a;
|
||||||
|
|
||||||
|
// -- signals ---
|
||||||
|
reg y;
|
||||||
|
wire a;
|
||||||
|
|
||||||
|
// --- instances
|
||||||
|
endmodule
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: A_2C1N_RB_X1<>
|
||||||
|
//
|
||||||
|
module _0_0tmpl_0_0dataflow__neuro_0_0A__2C1N__RB__X1(y, c1, c2, n1, pr_B, sr_B);
|
||||||
|
output y;
|
||||||
|
input c1;
|
||||||
|
input c2;
|
||||||
|
input n1;
|
||||||
|
input pr_B;
|
||||||
|
input sr_B;
|
||||||
|
|
||||||
|
// -- signals ---
|
||||||
|
wire sr_B;
|
||||||
|
reg y;
|
||||||
|
wire c2;
|
||||||
|
wire c1;
|
||||||
|
reg _y;
|
||||||
|
wire pr_B;
|
||||||
|
wire n1;
|
||||||
|
|
||||||
|
// --- instances
|
||||||
|
endmodule
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: BUF_X2<>
|
||||||
|
//
|
||||||
|
module _0_0tmpl_0_0dataflow__neuro_0_0BUF__X2(y, a);
|
||||||
|
output y;
|
||||||
|
input a;
|
||||||
|
|
||||||
|
// -- signals ---
|
||||||
|
reg y;
|
||||||
|
reg _y;
|
||||||
|
wire a;
|
||||||
|
|
||||||
|
// --- instances
|
||||||
|
endmodule
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: A_1C1P_X1<>
|
||||||
|
//
|
||||||
|
module _0_0tmpl_0_0dataflow__neuro_0_0A__1C1P__X1(y, c1, p1);
|
||||||
|
output y;
|
||||||
|
input c1;
|
||||||
|
input p1;
|
||||||
|
|
||||||
|
// -- signals ---
|
||||||
|
wire c1;
|
||||||
|
wire p1;
|
||||||
|
reg y;
|
||||||
|
|
||||||
|
// --- instances
|
||||||
|
endmodule
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: A_2C1P1N_RB_X1<>
|
||||||
|
//
|
||||||
|
module _0_0tmpl_0_0dataflow__neuro_0_0A__2C1P1N__RB__X1(y, c1, c2, p1, n1, pr_B, sr_B);
|
||||||
|
output y;
|
||||||
|
input c1;
|
||||||
|
input c2;
|
||||||
|
input p1;
|
||||||
|
input n1;
|
||||||
|
input pr_B;
|
||||||
|
input sr_B;
|
||||||
|
|
||||||
|
// -- signals ---
|
||||||
|
wire sr_B;
|
||||||
|
wire n1;
|
||||||
|
wire p1;
|
||||||
|
wire c2;
|
||||||
|
reg y;
|
||||||
|
wire c1;
|
||||||
|
reg _y;
|
||||||
|
wire pr_B;
|
||||||
|
|
||||||
|
// --- instances
|
||||||
|
endmodule
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: A_3P_U_X4<>
|
||||||
|
//
|
||||||
|
module _0_0tmpl_0_0dataflow__neuro_0_0A__3P__U__X4(p1, p2, p3, y);
|
||||||
|
input p1;
|
||||||
|
input p2;
|
||||||
|
input p3;
|
||||||
|
output y;
|
||||||
|
|
||||||
|
// -- signals ---
|
||||||
|
wire p2;
|
||||||
|
wire p3;
|
||||||
|
wire p1;
|
||||||
|
reg y;
|
||||||
|
|
||||||
|
// --- instances
|
||||||
|
endmodule
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: nrn_hs_2d<>
|
||||||
|
//
|
||||||
|
module _0_0tmpl_0_0dataflow__neuro_0_0nrn__hs__2d(\in.d.d[0] , \in.a , \outx.d.d[0] , \outx.a , \outy.d.d[0] , \outy.a , reset_B);
|
||||||
|
input \in.d.d[0] ;
|
||||||
|
output \in.a ;
|
||||||
|
output \outx.d.d[0] ;
|
||||||
|
input \outx.a ;
|
||||||
|
output \outy.d.d[0] ;
|
||||||
|
input \outy.a ;
|
||||||
|
input reset_B;
|
||||||
|
|
||||||
|
// -- signals ---
|
||||||
|
reg \outx.d.d[0] ;
|
||||||
|
reg \in.a ;
|
||||||
|
reg _reqB;
|
||||||
|
reg \outy.d.d[0] ;
|
||||||
|
wire reset_B;
|
||||||
|
reg _y_a_B;
|
||||||
|
wire \outy.a ;
|
||||||
|
reg _x_a_B;
|
||||||
|
reg _reset_BX;
|
||||||
|
wire \in.d.d[0] ;
|
||||||
|
wire \outx.a ;
|
||||||
|
reg _en;
|
||||||
|
reg _req;
|
||||||
|
|
||||||
|
// --- instances
|
||||||
|
_0_0tmpl_0_0dataflow__neuro_0_0INV__X1 \req_inv (.y(_reqB), .a(_req));
|
||||||
|
_0_0tmpl_0_0dataflow__neuro_0_0A__2P__U__X4 \pu_y (.p1(_reqB), .p2(\outy.a ), .y(\outy.d.d[0] ));
|
||||||
|
_0_0tmpl_0_0dataflow__neuro_0_0INV__X2 \inv_x (.y(_x_a_B), .a(\outx.a ));
|
||||||
|
_0_0tmpl_0_0dataflow__neuro_0_0INV__X2 \inv_y (.y(_y_a_B), .a(\outy.a ));
|
||||||
|
_0_0tmpl_0_0dataflow__neuro_0_0A__2C1N__RB__X1 \A_ack (.y(\in.a ), .c1(_en), .c2(\in.d.d[0] ), .n1(_req), .pr_B(_reset_BX), .sr_B(_reset_BX));
|
||||||
|
_0_0tmpl_0_0dataflow__neuro_0_0BUF__X2 \reset_buf (.y(_reset_BX), .a(reset_B));
|
||||||
|
_0_0tmpl_0_0dataflow__neuro_0_0A__1C1P__X1 \A_en (.y(_en), .c1(\in.a ), .p1(_req));
|
||||||
|
_0_0tmpl_0_0dataflow__neuro_0_0A__2C1P1N__RB__X1 \A_req (.y(_req), .c1(_en), .c2(_y_a_B), .p1(_x_a_B), .n1(\in.d.d[0] ), .pr_B(_reset_BX), .sr_B(_reset_BX));
|
||||||
|
_0_0tmpl_0_0dataflow__neuro_0_0A__3P__U__X4 \pu_x (.p1(\outx.a ), .p2(_reqB), .p3(_y_a_B), .y(\outx.d.d[0] ));
|
||||||
|
endmodule
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: nrn_hs_2d_inst<>
|
||||||
|
//
|
||||||
|
module nrn__hs__2d__inst(\in.d.d[0] , \in.a , \outx.d.d[0] , \outx.a , \outy.d.d[0] , \outy.a );
|
||||||
|
input \in.d.d[0] ;
|
||||||
|
output \in.a ;
|
||||||
|
output \outx.d.d[0] ;
|
||||||
|
input \outx.a ;
|
||||||
|
output \outy.d.d[0] ;
|
||||||
|
input \outy.a ;
|
||||||
|
|
||||||
|
// -- signals ---
|
||||||
|
reg \outx.d.d[0] ;
|
||||||
|
wire \outy.a ;
|
||||||
|
wire \in.d.d[0] ;
|
||||||
|
reg \outy.d.d[0] ;
|
||||||
|
reg _reset_B;
|
||||||
|
wire \outx.a ;
|
||||||
|
reg \in.a ;
|
||||||
|
|
||||||
|
// --- instances
|
||||||
|
_0_0tmpl_0_0dataflow__neuro_0_0nrn__hs__2d \b (.\in.d.d[0] (\in.d.d[0] ), .\in.a (\in.a ), .\outx.d.d[0] (\outx.d.d[0] ), .\outx.a (\outx.a ), .\outy.d.d[0] (\outy.d.d[0] ), .\outy.a (\outy.a ), .reset_B(_reset_B));
|
||||||
|
endmodule
|
||||||
|
|
||||||
@@ -0,0 +1,746 @@
|
|||||||
|
b.b.dly_y[3].dly[0].y b.outy[4].a b.b.dly_y[2].dly[2].y b.outx[2].a b.b.neurons[3]._x_a_B b.outy[0].a b.outx[0].a b.b.dly_y[4].dly[3]._y b.in[4].r b.b.neurons[8]._x_a_B b.b.dly_y[3].dly[3].y b.b.dly_x[2].dly[1].y b.b.neurons[12]._y_a_B b.in[12].r b.in[5].r b.b.neurons[14]._y_a_B b.outy[3].a b.outy[1].a b.b.neurons[3]._y_a_B b.b.dly_x[0].dly[3]._y b.b.dly_y[0].dly[0].y b.in[14].r b.b.pd_x[0].in b.b.dly_y[4].dly[3].y b.in[1].r b.b.neurons[10]._x_a_B b.b.pd_x[1].in b.b.dly_y[3].dly[3].__y b.b.dly_y[0].dly[2].y b.b.dly_x[0].dly[1].y b.b.dly_y[2].dly[0].y b.b.dly_x[0].dly[1].___y b.in[2].r b.b.dly_x[2].dly[0].y b.in[11].r b.b.dly_y[2].dly[1].__y b.outx[1].a b.b.pd_y[2].in b.b.neurons[14]._x_a_B b.b.neurons[11]._y_a_B b.b.pd_x[1]._out b.b.pd_x[1].buf2._y b.in[8].r b.b.pd_y[4].__out b.b.dly_y[1].dly[1].y b.b.pd_y[4]._out b.b.neurons[6]._y_a_B b.b.pd_y[3].inv.y b.b.neurons[13]._y_a_B b.in[0].r b.b.neurons[7]._x_a_B b.b.dly_x[2].dly[2].___y b.b.pd_y[2].__out b.b.pd_y[0].in b.b.neurons[11]._x_a_B b.b.dly_x[2].dly[2].y b.b.pd_y[0].__out b.in[7].r b.b.pd_y[0].inv.y b.b.pd_y[3].in b.b.dly_y[2].dly[2].__y b.b.dly_y[2].dly[3].___y b.b.dly_x[1].dly[2].y b.in[3].r b.b.dly_x[1].dly[3].__y b.b.dly_x[1].dly[1].y b.b.dly_y[3].dly[1].y b.b.neurons[12]._x_a_B b.b.dly_y[4].dly[0].__y b.b.dly_y[3].dly[2].___y b.b.dly_y[0].dly[2]._y b.b.dly_y[1].dly[3].___y b.b.dly_x[2].dly[3].___y b.b.dly_y[2].dly[4]._y b.b.pd_x[0].buf2._y b.b.dly_x[0].dly[2].___y b.b.dly_y[0].dly[2].___y b.b.dly_y[3].dly[4].__y b.b.dly_x[1].dly[2].__y b.b.neurons[8]._y_a_B b.b.dly_y[1].dly[2].___y b.b.neurons[10]._y_a_B b.b.pd_y[4].in b.b.dly_y[2].dly[3].__y b.in[6].r b.b.pd_y[1].in b.b.neurons[9]._y_a_B b.b.dly_y[1].dly[0].__y b.b.dly_y[1].dly[3].__y b.outy[2].a b.b.dly_y[0].dly[0].___y b.b.dly_y[3].dly[3]._y b.in[9].r b.b.pd_x[2].inv.y b.b.dly_y[4].dly[4].__y b.b.dly_y[4].dly[1].y b.b.dly_x[2].dly[2]._y b.b.dly_y[2].dly[3].y b.b.dly_x[1].dly[1]._y b.b.neurons[13]._x_a_B b.b.neurons[5]._y_a_B b.b.dly_x[2].dly[4]._y b.b.pd_x[2]._out b.b.dly_y[0].dly[1].__y b.b.neurons[6]._x_a_B b.b.neurons[0]._x_a_B b.b.neurons[2]._y_a_B b.b.neurons[7]._y_a_B b.b.dly_y[2].dly[1].___y b.b.pd_x[2].in b.b.dly_y[4].dly[1]._y b.b.dly_y[3].dly[1].___y b.b.dly_x[1].dly[1].__y b.b.pd_y[3].__out b.b.dly_y[4].dly[2].___y b.b.dly_y[2].dly[1]._y b.b.dly_y[2].dly[0].___y b.b.pd_y[1].__out b.b.dly_y[0].dly[3].__y b.b.dly_x[1].dly[3].___y b.b.dly_x[1].dly[1].___y b.b.pd_x[0]._out b.b.dly_y[2].dly[1].y b.b.dly_x[0].dly[0]._y b.b.dly_y[4].dly[2].y b.b.neurons[1]._x_a_B b.b.neurons[2]._x_a_B b.b.dly_y[0].dly[1]._y b.b.pd_y[4].inv.y b.b.dly_y[4].dly[2]._y b.b.dly_y[1].dly[0].y b.b.pd_y[3]._out b.b.dly_x[1].dly[0].__y b.b.dly_x[1].dly[3].y b.b.dly_x[0].dly[3].y b.b.pd_y[3].buf2._y b.b.pd_y[0]._out b.in[10].r b.b.dly_y[1].dly[3]._y b.b.dly_x[0].dly[4]._y b.b.dly_x[1].dly[4]._y b.b.dly_y[4].dly[3].___y b.b.dly_x[1].dly[0].y b.b.dly_x[0].dly[0].y b.b.neurons[4]._x_a_B b.b.dly_y[3].dly[0]._y b.b.dly_y[0].dly[1].y b.b.dly_x[2].dly[0].__y b.b.dly_y[4].dly[0].y b.in[13].r b.b.dly_y[1].dly[2]._y b.b.dly_y[1].dly[2].y b.b.pd_y[1]._out b.b.dly_x[0].dly[3].__y b.b.neurons[5]._x_a_B b.b.dly_y[3].dly[4]._y b.b.dly_x[1].dly[0].___y b.b.dly_y[4].dly[4].___y b.b.pd_y[1].buf2._y b.b.dly_y[0].dly[3].___y b.b.dly_y[2].dly[0].__y b.b.dly_y[4].dly[4]._y b.b.pd_x[0].buf1._y b.b.dly_x[2].dly[3]._y b.b.dly_x[0].dly[4].__y b.b.dly_y[1].dly[4]._y b.b.neurons[4]._y_a_B b.b.pd_x[0].__out b.b.pd_x[2].__out b.b.dly_x[2].dly[3].__y b.b.pd_y[2].buf1._y b.b.neurons[9]._x_a_B b.b.dly_y[1].dly[0].___y b.b.dly_x[0].dly[0].__y b.b.dly_x[1].dly[0]._y b.b.dly_x[2].dly[1].__y b.b.dly_x[2].dly[3].y b.b.dly_x[0].dly[0].___y b.b.dly_y[1].dly[0]._y b.b.pd_y[1].buf1._y b.b.dly_y[4].dly[1].___y b.b.dly_y[2].dly[4].__y b.b.pd_x[1].__out b.b.dly_y[3].dly[1]._y b.b.dly_y[1].dly[1]._y b.b.dly_x[1].dly[2]._y b.b.dly_y[0].dly[3].y b.b.dly_y[3].dly[1].__y b.b.neurons[1]._y_a_B b.b.dly_x[0].dly[3].___y b.b.dly_y[0].dly[0].__y b.b.dly_y[3].dly[4].___y b.b.pd_x[1].buf1._y b.b.dly_x[2].dly[4].___y b.b.dly_y[0].dly[1].___y b.b.dly_y[0].dly[3]._y b.b.pd_y[2].inv.y b.b.dly_y[2].dly[2]._y b.b.dly_y[3].dly[0].__y b.b.dly_y[2].dly[0]._y b.b.dly_y[1].dly[4].___y b.b.dly_y[0].dly[4].___y b.b.neurons[0]._y_a_B b.b.dly_y[4].dly[2].__y b.b.dly_y[4].dly[1].__y b.b.dly_x[2].dly[4].__y b.b.dly_x[0].dly[1]._y b.b.pd_y[4].buf1._y b.b.dly_x[2].dly[2].__y b.b.dly_x[1].dly[4].___y b.b.dly_y[4].dly[0]._y b.b.dly_x[0].dly[2].__y b.b.dly_x[2].dly[0].___y b.b.pd_x[2].buf2._y b.b.dly_y[1].dly[3].y b.b.dly_y[2].dly[3]._y b.b.dly_x[0].dly[2].y b.b.dly_y[0].dly[4].__y b.b.dly_y[1].dly[2].__y b.b.dly_x[0].dly[2]._y b.b.dly_y[3].dly[2].y b.b.dly_y[2].dly[4].___y b.b.pd_y[2].buf2._y b.b.pd_x[0].inv.y b.b.pd_y[2]._out b.b.dly_y[0].dly[2].__y b.b.dly_y[1].dly[1].___y b.b.pd_y[1].inv.y b.b.pd_x[1].inv.y b.b.pd_y[0].buf1._y b.b.dly_y[4].dly[3].__y b.b.pd_y[0].buf2._y b.b.dly_y[2].dly[2].___y b.b.dly_x[1].dly[3]._y b.b.dly_y[4].dly[0].___y b.b.dly_y[1].dly[1].__y b.b.dly_x[0].dly[4].___y bLine truncated
|
||||||
|
151293 b.in[0].r : 0
|
||||||
|
151293 b.b.neurons[0]._req : 1
|
||||||
|
151293 b.b.neurons[0]._en : 0
|
||||||
|
151293 b.in[2].r : 0
|
||||||
|
151293 b.in[6].r : 0
|
||||||
|
151293 b.in[14].r : 0
|
||||||
|
151293 b.outy[3].r : 1
|
||||||
|
151293 b.in[13].r : 0
|
||||||
|
151293 b.outy[2].r : 1
|
||||||
|
151293 b.outy[1].r : 1
|
||||||
|
151293 b.in[5].r : 0
|
||||||
|
151293 b.in[12].r : 0
|
||||||
|
151293 b.outy[0].r : 1
|
||||||
|
151293 b.outx[2].r : 1
|
||||||
|
151293 b.in[11].r : 0
|
||||||
|
151293 b.outx[1].r : 1
|
||||||
|
151293 b.outx[0].r : 1
|
||||||
|
151293 b.in[1].r : 0
|
||||||
|
151293 b.in[4].r : 0
|
||||||
|
151293 b.in[10].r : 0
|
||||||
|
151293 b.outy[4].a : 0
|
||||||
|
151293 b.outy[3].a : 0
|
||||||
|
151293 b.in[9].r : 0
|
||||||
|
151293 b.outy[2].a : 0
|
||||||
|
151293 b.outy[1].a : 0
|
||||||
|
151293 b.in[3].r : 0
|
||||||
|
151293 b.in[8].r : 0
|
||||||
|
151293 b.outy[0].a : 0
|
||||||
|
151293 b.outx[2].a : 0
|
||||||
|
151293 b.in[7].r : 0
|
||||||
|
151293 b.outx[1].a : 0
|
||||||
|
151293 b.outx[0].a : 0
|
||||||
|
151294 b.b.neurons[0].pu_y.a : X [by b.b.neurons[0]._req:=1]
|
||||||
|
151294 b.b.keep_y[1]._y : 0 [by b.outy[1].r:=1]
|
||||||
|
151294 b.b.dly_x[1].dly[0]._y : 1 [by b.outx[1].a:=0]
|
||||||
|
151294 b.b.neurons[6]._x_a_B : 1 [by b.outx[0].a:=0]
|
||||||
|
151294 b.b.neurons[5]._y_a_B : 1 [by b.outy[1].a:=0]
|
||||||
|
151294 b.b.neurons[5]._x_a_B : 1 [by b.outx[2].a:=0]
|
||||||
|
151294 b.b.neurons[7]._x_a_B : 1 [by b.outx[1].a:=0]
|
||||||
|
WARNING: unstable `b.b.keep_y[3]._y'-
|
||||||
|
>> cause: b.outy[3].r (val: 0)
|
||||||
|
>> time: 151296
|
||||||
|
151296 b.outy[3].r : 0
|
||||||
|
151296 b.b.neurons[10]._y_a_B : 1 [by b.outy[3].a:=0]
|
||||||
|
151297 b.b.dly_y[4].dly[0]._y : 1 [by b.outy[4].a:=0]
|
||||||
|
151297 b.b.neurons[0]._y_a_B : 1 [by b.outy[0].a:=0]
|
||||||
|
151301 b.b.keep_x[1]._y : 0 [by b.outx[1].r:=1]
|
||||||
|
151305 b.b.dly_x[2].dly[0]._y : 1 [by b.outx[2].a:=0]
|
||||||
|
151306 b.b.dly_x[0].dly[0]._y : 1 [by b.outx[0].a:=0]
|
||||||
|
151307 b.b.dly_x[0].dly[0].__y : 0 [by b.b.dly_x[0].dly[0]._y:=1]
|
||||||
|
151310 b.b.neurons[0].pu_x.a : X [by b.b.neurons[0]._req:=1]
|
||||||
|
151311 b.b.neurons[0].pu_x.a : 1 [by b.b.neurons[0]._req:=1]
|
||||||
|
151322 b.b.neurons[0].pu_y.a : 0 [by b.b.neurons[0]._y_a_B:=1]
|
||||||
|
151326 b.b.dly_x[2].dly[0].__y : 0 [by b.b.dly_x[2].dly[0]._y:=1]
|
||||||
|
151327 b.outx[1].r : 0
|
||||||
|
151327 b.b.dly_x[2].dly[0].___y : 1 [by b.b.dly_x[2].dly[0].__y:=0]
|
||||||
|
151330 b.b.neurons[0]._x_a_B : 1 [by b.outx[0].a:=0]
|
||||||
|
151335 b.outy[1].r : 0
|
||||||
|
151340 b.b.keep_y[1]._y : 1 [by b.outy[1].r:=0]
|
||||||
|
151341 b.b.neurons[9]._y_a_B : 1 [by b.outy[3].a:=0]
|
||||||
|
151349 b.b.neurons[10]._x_a_B : 1 [by b.outx[1].a:=0]
|
||||||
|
151366 b.b.dly_y[0].dly[0]._y : 1 [by b.outy[0].a:=0]
|
||||||
|
151388 b.b.keep_x[2]._y : 0 [by b.outx[2].r:=1]
|
||||||
|
151389 b.b.neurons[2]._y_a_B : 1 [by b.outy[0].a:=0]
|
||||||
|
151429 b.b.neurons[2]._x_a_B : 1 [by b.outx[2].a:=0]
|
||||||
|
151466 b.b.neurons[3]._y_a_B : 1 [by b.outy[1].a:=0]
|
||||||
|
151471 b.b.neurons[11]._y_a_B : 1 [by b.outy[3].a:=0]
|
||||||
|
151477 b.b.neurons[4]._y_a_B : 1 [by b.outy[1].a:=0]
|
||||||
|
151488 b.b.keep_x[1]._y : 1 [by b.outx[1].r:=0]
|
||||||
|
151534 b.b.neurons[11]._x_a_B : 1 [by b.outx[2].a:=0]
|
||||||
|
151628 b.outx[2].r : 0
|
||||||
|
151654 b.b.dly_y[4].dly[0].__y : 0 [by b.b.dly_y[4].dly[0]._y:=1]
|
||||||
|
151665 b.b.dly_y[4].dly[0].___y : 1 [by b.b.dly_y[4].dly[0].__y:=0]
|
||||||
|
151947 b.b.dly_y[0].dly[0].__y : 0 [by b.b.dly_y[0].dly[0]._y:=1]
|
||||||
|
151961 b.b.dly_y[0].dly[0].___y : 1 [by b.b.dly_y[0].dly[0].__y:=0]
|
||||||
|
151979 b.b.dly_y[0].dly[0].y : 0 [by b.b.dly_y[0].dly[0].___y:=1]
|
||||||
|
151983 b.b.dly_y[0].dly[1]._y : 1 [by b.b.dly_y[0].dly[0].y:=0]
|
||||||
|
152036 b.b.keep_x[2]._y : 1 [by b.outx[2].r:=0]
|
||||||
|
152087 b.b.dly_y[0].dly[1].__y : 0 [by b.b.dly_y[0].dly[1]._y:=1]
|
||||||
|
152120 b.b.dly_y[1].dly[0]._y : 1 [by b.outy[1].a:=0]
|
||||||
|
WARNING: unstable `b.b.keep_x[0]._y'-
|
||||||
|
>> cause: b.outx[0].r (val: 0)
|
||||||
|
>> time: 152211
|
||||||
|
152211 b.outx[0].r : 0 [by b.b.neurons[0].pu_x.a:=1]
|
||||||
|
152234 b.b.keep_y[2]._y : 0 [by b.outy[2].r:=1]
|
||||||
|
152322 b.b.neurons[4]._x_a_B : 1 [by b.outx[1].a:=0]
|
||||||
|
152364 b.b.dly_x[2].dly[0].y : 0 [by b.b.dly_x[2].dly[0].___y:=1]
|
||||||
|
152712 b.b.dly_y[4].dly[0].y : 0 [by b.b.dly_y[4].dly[0].___y:=1]
|
||||||
|
152940 b.b.dly_y[4].dly[1]._y : 1 [by b.b.dly_y[4].dly[0].y:=0]
|
||||||
|
152985 b.b.neurons[12]._x_a_B : 1 [by b.outx[0].a:=0]
|
||||||
|
153324 b.b.dly_y[1].dly[0].__y : 0 [by b.b.dly_y[1].dly[0]._y:=1]
|
||||||
|
153691 b.b.neurons[13]._y_a_B : 1 [by b.outy[4].a:=0]
|
||||||
|
153783 b.b.dly_y[4].dly[1].__y : 0 [by b.b.dly_y[4].dly[1]._y:=1]
|
||||||
|
153853 b.b.dly_y[4].dly[1].___y : 1 [by b.b.dly_y[4].dly[1].__y:=0]
|
||||||
|
153866 b.b.neurons[0]._req : 0
|
||||||
|
153869 b.b.neurons[0]._en : 1 [by b.b.neurons[0]._req:=0]
|
||||||
|
153877 b.b.neurons[0].pu_y.a : 1 [by b.b.neurons[0]._req:=0]
|
||||||
|
154110 b.b.keep_y[0]._y : 0 [by b.outy[0].r:=1]
|
||||||
|
154508 b.b.neurons[14]._y_a_B : 1 [by b.outy[4].a:=0]
|
||||||
|
154783 b.b.dly_y[1].dly[0].___y : 1 [by b.b.dly_y[1].dly[0].__y:=0]
|
||||||
|
154837 b.b.dly_y[1].dly[0].y : 0 [by b.b.dly_y[1].dly[0].___y:=1]
|
||||||
|
154857 b.b.neurons[9]._x_a_B : 1 [by b.outx[0].a:=0]
|
||||||
|
155193 b.b.neurons[1]._x_a_B : 1 [by b.outx[1].a:=0]
|
||||||
|
155252 b.b.neurons[14]._x_a_B : 1 [by b.outx[2].a:=0]
|
||||||
|
155985 b.b.dly_y[1].dly[1]._y : 1 [by b.b.dly_y[1].dly[0].y:=0]
|
||||||
|
157146 b.b.dly_y[1].dly[1].__y : 0 [by b.b.dly_y[1].dly[1]._y:=1]
|
||||||
|
157244 b.b.neurons[7]._y_a_B : 1 [by b.outy[2].a:=0]
|
||||||
|
159654 b.b.keep_y[3]._y : X [by b.outy[3].r:=0]
|
||||||
|
159735 b.b.keep_y[3]._y : 1 [by b.outy[3].r:=0]
|
||||||
|
160819 b.b.dly_x[2].dly[1]._y : 1 [by b.b.dly_x[2].dly[0].y:=0]
|
||||||
|
160955 b.b.dly_x[0].dly[0].___y : 1 [by b.b.dly_x[0].dly[0].__y:=0]
|
||||||
|
163192 b.b.neurons[6]._y_a_B : 1 [by b.outy[2].a:=0]
|
||||||
|
165026 b.outy[0].r : 0 [by b.b.neurons[0].pu_y.a:=1]
|
||||||
|
165118 b.b.keep_y[0]._y : 1 [by b.outy[0].r:=0]
|
||||||
|
165180 b.b.keep_x[0]._y : X [by b.outx[0].r:=0]
|
||||||
|
165798 b.b.dly_y[1].dly[1].___y : 1 [by b.b.dly_y[1].dly[1].__y:=0]
|
||||||
|
167542 b.b.dly_y[1].dly[1].y : 0 [by b.b.dly_y[1].dly[1].___y:=1]
|
||||||
|
168155 b.b.dly_y[1].dly[2]._y : 1 [by b.b.dly_y[1].dly[1].y:=0]
|
||||||
|
168278 b.b.dly_x[1].dly[0].__y : 0 [by b.b.dly_x[1].dly[0]._y:=1]
|
||||||
|
168323 b.b.dly_x[1].dly[0].___y : 1 [by b.b.dly_x[1].dly[0].__y:=0]
|
||||||
|
169320 b.b.dly_x[1].dly[0].y : 0 [by b.b.dly_x[1].dly[0].___y:=1]
|
||||||
|
170339 b.b.neurons[8]._x_a_B : 1 [by b.outx[2].a:=0]
|
||||||
|
170969 b.b.dly_x[1].dly[1]._y : 1 [by b.b.dly_x[1].dly[0].y:=0]
|
||||||
|
171494 b.b.dly_x[1].dly[1].__y : 0 [by b.b.dly_x[1].dly[1]._y:=1]
|
||||||
|
171896 b.b.dly_x[2].dly[1].__y : 0 [by b.b.dly_x[2].dly[1]._y:=1]
|
||||||
|
171948 b.b.dly_x[2].dly[1].___y : 1 [by b.b.dly_x[2].dly[1].__y:=0]
|
||||||
|
171955 b.b.dly_x[2].dly[1].y : 0 [by b.b.dly_x[2].dly[1].___y:=1]
|
||||||
|
172270 b.b.dly_y[2].dly[0]._y : 1 [by b.outy[2].a:=0]
|
||||||
|
172394 b.b.dly_x[1].dly[1].___y : 1 [by b.b.dly_x[1].dly[1].__y:=0]
|
||||||
|
172396 b.b.dly_x[1].dly[1].y : 0 [by b.b.dly_x[1].dly[1].___y:=1]
|
||||||
|
172750 b.b.dly_x[1].dly[2]._y : 1 [by b.b.dly_x[1].dly[1].y:=0]
|
||||||
|
172883 b.b.dly_x[1].dly[2].__y : 0 [by b.b.dly_x[1].dly[2]._y:=1]
|
||||||
|
172884 b.b.dly_x[1].dly[2].___y : 1 [by b.b.dly_x[1].dly[2].__y:=0]
|
||||||
|
172888 b.b.dly_x[1].dly[2].y : 0 [by b.b.dly_x[1].dly[2].___y:=1]
|
||||||
|
173434 b.b.dly_x[1].dly[3]._y : 1 [by b.b.dly_x[1].dly[2].y:=0]
|
||||||
|
173491 b.b.keep_x[0]._y : 1 [by b.outx[0].r:=0]
|
||||||
|
174668 b.b.neurons[3]._x_a_B : 1 [by b.outx[0].a:=0]
|
||||||
|
178737 b.b.dly_y[2].dly[0].__y : 0 [by b.b.dly_y[2].dly[0]._y:=1]
|
||||||
|
178738 b.b.dly_y[2].dly[0].___y : 1 [by b.b.dly_y[2].dly[0].__y:=0]
|
||||||
|
178938 b.b.dly_x[0].dly[0].y : 0 [by b.b.dly_x[0].dly[0].___y:=1]
|
||||||
|
179017 b.b.dly_x[0].dly[1]._y : 1 [by b.b.dly_x[0].dly[0].y:=0]
|
||||||
|
181450 b.b.dly_x[0].dly[1].__y : 0 [by b.b.dly_x[0].dly[1]._y:=1]
|
||||||
|
181538 b.b.dly_x[0].dly[1].___y : 1 [by b.b.dly_x[0].dly[1].__y:=0]
|
||||||
|
182177 b.b.dly_y[1].dly[2].__y : 0 [by b.b.dly_y[1].dly[2]._y:=1]
|
||||||
|
183531 b.b.dly_y[0].dly[1].___y : 1 [by b.b.dly_y[0].dly[1].__y:=0]
|
||||||
|
183590 b.b.dly_y[0].dly[1].y : 0 [by b.b.dly_y[0].dly[1].___y:=1]
|
||||||
|
183620 b.b.dly_y[0].dly[2]._y : 1 [by b.b.dly_y[0].dly[1].y:=0]
|
||||||
|
185087 b.b.dly_y[0].dly[2].__y : 0 [by b.b.dly_y[0].dly[2]._y:=1]
|
||||||
|
187567 b.b.dly_x[2].dly[2]._y : 1 [by b.b.dly_x[2].dly[1].y:=0]
|
||||||
|
188581 b.b.neurons[1]._y_a_B : 1 [by b.outy[0].a:=0]
|
||||||
|
189320 b.b.dly_x[0].dly[1].y : 0 [by b.b.dly_x[0].dly[1].___y:=1]
|
||||||
|
190005 b.b.dly_x[0].dly[2]._y : 1 [by b.b.dly_x[0].dly[1].y:=0]
|
||||||
|
190778 b.b.neurons[8]._y_a_B : 1 [by b.outy[2].a:=0]
|
||||||
|
191116 b.b.dly_y[2].dly[0].y : 0 [by b.b.dly_y[2].dly[0].___y:=1]
|
||||||
|
191243 b.b.dly_y[2].dly[1]._y : 1 [by b.b.dly_y[2].dly[0].y:=0]
|
||||||
|
191412 b.b.dly_y[2].dly[1].__y : 0 [by b.b.dly_y[2].dly[1]._y:=1]
|
||||||
|
191455 b.b.dly_y[2].dly[1].___y : 1 [by b.b.dly_y[2].dly[1].__y:=0]
|
||||||
|
191467 b.b.dly_y[2].dly[1].y : 0 [by b.b.dly_y[2].dly[1].___y:=1]
|
||||||
|
192746 b.b.dly_y[2].dly[2]._y : 1 [by b.b.dly_y[2].dly[1].y:=0]
|
||||||
|
192979 b.b.dly_y[2].dly[2].__y : 0 [by b.b.dly_y[2].dly[2]._y:=1]
|
||||||
|
192982 b.b.dly_y[2].dly[2].___y : 1 [by b.b.dly_y[2].dly[2].__y:=0]
|
||||||
|
193020 b.b.dly_y[2].dly[2].y : 0 [by b.b.dly_y[2].dly[2].___y:=1]
|
||||||
|
193021 b.b.dly_y[2].dly[3]._y : 1 [by b.b.dly_y[2].dly[2].y:=0]
|
||||||
|
196299 b.b.neurons[13]._x_a_B : 1 [by b.outx[1].a:=0]
|
||||||
|
197671 b.b.neurons[12]._y_a_B : 1 [by b.outy[4].a:=0]
|
||||||
|
198412 b.b.dly_y[3].dly[0]._y : 1 [by b.outy[3].a:=0]
|
||||||
|
198504 b.b.dly_y[3].dly[0].__y : 0 [by b.b.dly_y[3].dly[0]._y:=1]
|
||||||
|
201231 b.b.dly_y[3].dly[0].___y : 1 [by b.b.dly_y[3].dly[0].__y:=0]
|
||||||
|
201233 b.b.dly_y[3].dly[0].y : 0 [by b.b.dly_y[3].dly[0].___y:=1]
|
||||||
|
201234 b.b.dly_y[3].dly[1]._y : 1 [by b.b.dly_y[3].dly[0].y:=0]
|
||||||
|
202735 b.b.dly_y[3].dly[1].__y : 0 [by b.b.dly_y[3].dly[1]._y:=1]
|
||||||
|
202737 b.b.dly_y[3].dly[1].___y : 1 [by b.b.dly_y[3].dly[1].__y:=0]
|
||||||
|
202755 b.b.dly_y[3].dly[1].y : 0 [by b.b.dly_y[3].dly[1].___y:=1]
|
||||||
|
202874 b.b.dly_y[3].dly[2]._y : 1 [by b.b.dly_y[3].dly[1].y:=0]
|
||||||
|
204275 b.b.dly_y[4].dly[1].y : 0 [by b.b.dly_y[4].dly[1].___y:=1]
|
||||||
|
204283 b.b.dly_y[4].dly[2]._y : 1 [by b.b.dly_y[4].dly[1].y:=0]
|
||||||
|
204337 b.b.dly_y[4].dly[2].__y : 0 [by b.b.dly_y[4].dly[2]._y:=1]
|
||||||
|
205773 b.b.dly_y[2].dly[3].__y : 0 [by b.b.dly_y[2].dly[3]._y:=1]
|
||||||
|
205778 b.b.dly_y[2].dly[3].___y : 1 [by b.b.dly_y[2].dly[3].__y:=0]
|
||||||
|
206720 b.b.dly_x[0].dly[2].__y : 0 [by b.b.dly_x[0].dly[2]._y:=1]
|
||||||
|
206721 b.b.dly_x[0].dly[2].___y : 1 [by b.b.dly_x[0].dly[2].__y:=0]
|
||||||
|
206845 b.b.dly_y[2].dly[3].y : 0 [by b.b.dly_y[2].dly[3].___y:=1]
|
||||||
|
206846 b.b.dly_y[2].dly[4]._y : 1 [by b.b.dly_y[2].dly[3].y:=0]
|
||||||
|
206859 b.b.dly_x[0].dly[2].y : 0 [by b.b.dly_x[0].dly[2].___y:=1]
|
||||||
|
206910 b.b.dly_y[2].dly[4].__y : 0 [by b.b.dly_y[2].dly[4]._y:=1]
|
||||||
|
206912 b.b.dly_y[2].dly[4].___y : 1 [by b.b.dly_y[2].dly[4].__y:=0]
|
||||||
|
206949 b.b.pd_y[2].in : 0 [by b.b.dly_y[2].dly[4].___y:=1]
|
||||||
|
206951 b.b.dly_x[2].dly[2].__y : 0 [by b.b.dly_x[2].dly[2]._y:=1]
|
||||||
|
206982 b.b.dly_x[0].dly[3]._y : 1 [by b.b.dly_x[0].dly[2].y:=0]
|
||||||
|
207002 b.b.dly_x[2].dly[2].___y : 1 [by b.b.dly_x[2].dly[2].__y:=0]
|
||||||
|
207013 b.b.dly_x[2].dly[2].y : 0 [by b.b.dly_x[2].dly[2].___y:=1]
|
||||||
|
207014 b.b.dly_x[2].dly[3]._y : 1 [by b.b.dly_x[2].dly[2].y:=0]
|
||||||
|
207023 b.b.dly_x[2].dly[3].__y : 0 [by b.b.dly_x[2].dly[3]._y:=1]
|
||||||
|
207048 b.b.dly_x[2].dly[3].___y : 1 [by b.b.dly_x[2].dly[3].__y:=0]
|
||||||
|
207092 b.b.pd_y[2].buf1._y : 1 [by b.b.pd_y[2].in:=0]
|
||||||
|
207424 b.b.dly_x[0].dly[3].__y : 0 [by b.b.dly_x[0].dly[3]._y:=1]
|
||||||
|
207569 b.b.dly_x[0].dly[3].___y : 1 [by b.b.dly_x[0].dly[3].__y:=0]
|
||||||
|
208594 b.b.dly_y[3].dly[2].__y : 0 [by b.b.dly_y[3].dly[2]._y:=1]
|
||||||
|
208824 b.b.dly_y[3].dly[2].___y : 1 [by b.b.dly_y[3].dly[2].__y:=0]
|
||||||
|
209515 b.b.dly_y[3].dly[2].y : 0 [by b.b.dly_y[3].dly[2].___y:=1]
|
||||||
|
209529 b.b.dly_y[3].dly[3]._y : 1 [by b.b.dly_y[3].dly[2].y:=0]
|
||||||
|
210255 b.outy[2].r : 0
|
||||||
|
210504 b.b.dly_y[1].dly[2].___y : 1 [by b.b.dly_y[1].dly[2].__y:=0]
|
||||||
|
210613 b.b.pd_y[2]._out : 0 [by b.b.pd_y[2].buf1._y:=1]
|
||||||
|
210624 b.b.pd_y[2].buf2._y : 1 [by b.b.pd_y[2]._out:=0]
|
||||||
|
210625 b.b.pd_y[2].__out : 0 [by b.b.pd_y[2].buf2._y:=1]
|
||||||
|
210626 b.b.pd_y[2].inv.y : 1 [by b.b.pd_y[2].__out:=0]
|
||||||
|
211072 b.b.dly_y[3].dly[3].__y : 0 [by b.b.dly_y[3].dly[3]._y:=1]
|
||||||
|
211866 b.b.keep_y[2]._y : 1 [by b.outy[2].r:=0]
|
||||||
|
217301 b.b.dly_x[2].dly[3].y : 0 [by b.b.dly_x[2].dly[3].___y:=1]
|
||||||
|
217573 b.b.dly_y[3].dly[3].___y : 1 [by b.b.dly_y[3].dly[3].__y:=0]
|
||||||
|
217940 b.b.dly_x[2].dly[4]._y : 1 [by b.b.dly_x[2].dly[3].y:=0]
|
||||||
|
218072 b.b.dly_x[2].dly[4].__y : 0 [by b.b.dly_x[2].dly[4]._y:=1]
|
||||||
|
218073 b.b.dly_x[2].dly[4].___y : 1 [by b.b.dly_x[2].dly[4].__y:=0]
|
||||||
|
218090 b.b.pd_x[2].in : 0 [by b.b.dly_x[2].dly[4].___y:=1]
|
||||||
|
218242 b.b.pd_x[2].buf1._y : 1 [by b.b.pd_x[2].in:=0]
|
||||||
|
218997 b.b.dly_x[1].dly[3].__y : 0 [by b.b.dly_x[1].dly[3]._y:=1]
|
||||||
|
219000 b.b.dly_x[1].dly[3].___y : 1 [by b.b.dly_x[1].dly[3].__y:=0]
|
||||||
|
219366 b.b.dly_y[3].dly[3].y : 0 [by b.b.dly_y[3].dly[3].___y:=1]
|
||||||
|
219372 b.b.dly_y[3].dly[4]._y : 1 [by b.b.dly_y[3].dly[3].y:=0]
|
||||||
|
219424 b.b.dly_x[1].dly[3].y : 0 [by b.b.dly_x[1].dly[3].___y:=1]
|
||||||
|
221225 b.b.pd_x[2]._out : 0 [by b.b.pd_x[2].buf1._y:=1]
|
||||||
|
221885 b.b.dly_x[1].dly[4]._y : 1 [by b.b.dly_x[1].dly[3].y:=0]
|
||||||
|
221960 b.b.dly_y[3].dly[4].__y : 0 [by b.b.dly_y[3].dly[4]._y:=1]
|
||||||
|
221962 b.b.dly_y[3].dly[4].___y : 1 [by b.b.dly_y[3].dly[4].__y:=0]
|
||||||
|
222055 b.b.pd_x[2].buf2._y : 1 [by b.b.pd_x[2]._out:=0]
|
||||||
|
222156 b.b.pd_y[3].in : 0 [by b.b.dly_y[3].dly[4].___y:=1]
|
||||||
|
222294 b.b.pd_y[3].buf1._y : 1 [by b.b.pd_y[3].in:=0]
|
||||||
|
222311 b.b.pd_y[3]._out : 0 [by b.b.pd_y[3].buf1._y:=1]
|
||||||
|
222328 b.b.pd_y[3].buf2._y : 1 [by b.b.pd_y[3]._out:=0]
|
||||||
|
222658 b.b.pd_x[2].__out : 0 [by b.b.pd_x[2].buf2._y:=1]
|
||||||
|
222659 b.b.pd_x[2].inv.y : 1 [by b.b.pd_x[2].__out:=0]
|
||||||
|
222754 b.b.pd_y[3].__out : 0 [by b.b.pd_y[3].buf2._y:=1]
|
||||||
|
222755 b.b.pd_y[3].inv.y : 1 [by b.b.pd_y[3].__out:=0]
|
||||||
|
223737 b.b.dly_x[0].dly[3].y : 0 [by b.b.dly_x[0].dly[3].___y:=1]
|
||||||
|
224763 b.b.dly_x[0].dly[4]._y : 1 [by b.b.dly_x[0].dly[3].y:=0]
|
||||||
|
224764 b.b.dly_x[0].dly[4].__y : 0 [by b.b.dly_x[0].dly[4]._y:=1]
|
||||||
|
224783 b.b.dly_x[0].dly[4].___y : 1 [by b.b.dly_x[0].dly[4].__y:=0]
|
||||||
|
224951 b.b.pd_x[0].in : 0 [by b.b.dly_x[0].dly[4].___y:=1]
|
||||||
|
225490 b.b.pd_x[0].buf1._y : 1 [by b.b.pd_x[0].in:=0]
|
||||||
|
225651 b.b.pd_x[0]._out : 0 [by b.b.pd_x[0].buf1._y:=1]
|
||||||
|
225824 b.b.pd_x[0].buf2._y : 1 [by b.b.pd_x[0]._out:=0]
|
||||||
|
228016 b.b.dly_y[1].dly[2].y : 0 [by b.b.dly_y[1].dly[2].___y:=1]
|
||||||
|
228371 b.b.pd_x[0].__out : 0 [by b.b.pd_x[0].buf2._y:=1]
|
||||||
|
228372 b.b.pd_x[0].inv.y : 1 [by b.b.pd_x[0].__out:=0]
|
||||||
|
243077 b.b.dly_y[1].dly[3]._y : 1 [by b.b.dly_y[1].dly[2].y:=0]
|
||||||
|
243078 b.b.dly_y[1].dly[3].__y : 0 [by b.b.dly_y[1].dly[3]._y:=1]
|
||||||
|
243468 b.b.dly_y[1].dly[3].___y : 1 [by b.b.dly_y[1].dly[3].__y:=0]
|
||||||
|
243675 b.b.dly_y[1].dly[3].y : 0 [by b.b.dly_y[1].dly[3].___y:=1]
|
||||||
|
244508 b.b.dly_y[1].dly[4]._y : 1 [by b.b.dly_y[1].dly[3].y:=0]
|
||||||
|
244536 b.b.dly_y[1].dly[4].__y : 0 [by b.b.dly_y[1].dly[4]._y:=1]
|
||||||
|
244543 b.b.dly_y[1].dly[4].___y : 1 [by b.b.dly_y[1].dly[4].__y:=0]
|
||||||
|
244591 b.b.dly_y[0].dly[2].___y : 1 [by b.b.dly_y[0].dly[2].__y:=0]
|
||||||
|
244595 b.b.dly_y[0].dly[2].y : 0 [by b.b.dly_y[0].dly[2].___y:=1]
|
||||||
|
244817 b.b.dly_x[1].dly[4].__y : 0 [by b.b.dly_x[1].dly[4]._y:=1]
|
||||||
|
244957 b.b.pd_y[1].in : 0 [by b.b.dly_y[1].dly[4].___y:=1]
|
||||||
|
245123 b.b.pd_y[1].buf1._y : 1 [by b.b.pd_y[1].in:=0]
|
||||||
|
246374 b.b.dly_y[0].dly[3]._y : 1 [by b.b.dly_y[0].dly[2].y:=0]
|
||||||
|
254875 b.b.dly_y[4].dly[2].___y : 1 [by b.b.dly_y[4].dly[2].__y:=0]
|
||||||
|
255019 b.b.dly_y[0].dly[3].__y : 0 [by b.b.dly_y[0].dly[3]._y:=1]
|
||||||
|
255808 b.b.dly_y[4].dly[2].y : 0 [by b.b.dly_y[4].dly[2].___y:=1]
|
||||||
|
255875 b.b.dly_y[0].dly[3].___y : 1 [by b.b.dly_y[0].dly[3].__y:=0]
|
||||||
|
255947 b.b.dly_y[4].dly[3]._y : 1 [by b.b.dly_y[4].dly[2].y:=0]
|
||||||
|
256142 b.b.dly_y[4].dly[3].__y : 0 [by b.b.dly_y[4].dly[3]._y:=1]
|
||||||
|
256144 b.b.dly_y[4].dly[3].___y : 1 [by b.b.dly_y[4].dly[3].__y:=0]
|
||||||
|
267691 b.b.dly_x[1].dly[4].___y : 1 [by b.b.dly_x[1].dly[4].__y:=0]
|
||||||
|
267697 b.b.pd_x[1].in : 0 [by b.b.dly_x[1].dly[4].___y:=1]
|
||||||
|
267951 b.b.pd_x[1].buf1._y : 1 [by b.b.pd_x[1].in:=0]
|
||||||
|
267959 b.b.pd_x[1]._out : 0 [by b.b.pd_x[1].buf1._y:=1]
|
||||||
|
267960 b.b.pd_x[1].buf2._y : 1 [by b.b.pd_x[1]._out:=0]
|
||||||
|
267966 b.b.pd_x[1].__out : 0 [by b.b.pd_x[1].buf2._y:=1]
|
||||||
|
282084 b.b.dly_y[0].dly[3].y : 0 [by b.b.dly_y[0].dly[3].___y:=1]
|
||||||
|
284993 b.b.pd_y[1]._out : 0 [by b.b.pd_y[1].buf1._y:=1]
|
||||||
|
285174 b.b.dly_y[0].dly[4]._y : 1 [by b.b.dly_y[0].dly[3].y:=0]
|
||||||
|
285219 b.b.pd_y[1].buf2._y : 1 [by b.b.pd_y[1]._out:=0]
|
||||||
|
285220 b.b.pd_y[1].__out : 0 [by b.b.pd_y[1].buf2._y:=1]
|
||||||
|
285226 b.b.pd_y[1].inv.y : 1 [by b.b.pd_y[1].__out:=0]
|
||||||
|
285993 b.b.dly_y[0].dly[4].__y : 0 [by b.b.dly_y[0].dly[4]._y:=1]
|
||||||
|
285995 b.b.dly_y[0].dly[4].___y : 1 [by b.b.dly_y[0].dly[4].__y:=0]
|
||||||
|
289557 b.b.pd_y[0].in : 0 [by b.b.dly_y[0].dly[4].___y:=1]
|
||||||
|
289572 b.b.pd_y[0].buf1._y : 1 [by b.b.pd_y[0].in:=0]
|
||||||
|
309593 b.b.dly_y[4].dly[3].y : 0 [by b.b.dly_y[4].dly[3].___y:=1]
|
||||||
|
309700 b.b.dly_y[4].dly[4]._y : 1 [by b.b.dly_y[4].dly[3].y:=0]
|
||||||
|
309793 b.b.dly_y[4].dly[4].__y : 0 [by b.b.dly_y[4].dly[4]._y:=1]
|
||||||
|
310373 b.b.pd_y[0]._out : 0 [by b.b.pd_y[0].buf1._y:=1]
|
||||||
|
311445 b.b.dly_y[4].dly[4].___y : 1 [by b.b.dly_y[4].dly[4].__y:=0]
|
||||||
|
312203 b.b.pd_y[4].in : 0 [by b.b.dly_y[4].dly[4].___y:=1]
|
||||||
|
314312 b.b.pd_y[0].buf2._y : 1 [by b.b.pd_y[0]._out:=0]
|
||||||
|
314826 b.b.pd_y[4].buf1._y : 1 [by b.b.pd_y[4].in:=0]
|
||||||
|
314827 b.b.pd_y[4]._out : 0 [by b.b.pd_y[4].buf1._y:=1]
|
||||||
|
315028 b.b.pd_y[0].__out : 0 [by b.b.pd_y[0].buf2._y:=1]
|
||||||
|
315029 b.b.pd_y[0].inv.y : 1 [by b.b.pd_y[0].__out:=0]
|
||||||
|
316567 b.b.pd_y[4].buf2._y : 1 [by b.b.pd_y[4]._out:=0]
|
||||||
|
319002 b.b.pd_x[1].inv.y : 1 [by b.b.pd_x[1].__out:=0]
|
||||||
|
328719 b.b.pd_y[4].__out : 0 [by b.b.pd_y[4].buf2._y:=1]
|
||||||
|
356918 b.b.pd_y[4].inv.y : 1 [by b.b.pd_y[4].__out:=0]
|
||||||
|
[] set Reset 1
|
||||||
|
|
||||||
|
[] set Reset 0
|
||||||
|
356918 Reset : 0
|
||||||
|
356919 b._reset_B : 1 [by Reset:=0]
|
||||||
|
356920 b.b.rsbx.buf2._y : 0 [by b._reset_B:=1]
|
||||||
|
356925 b.b.rsb_pd_x.buf1._y : 0 [by b._reset_B:=1]
|
||||||
|
356947 b.b.pd_x[0].reset_B : 1 [by b.b.rsb_pd_x.buf1._y:=0]
|
||||||
|
356954 b.b.pd_x[2].nand_out : 0 [by b.b.pd_x[0].reset_B:=1]
|
||||||
|
357012 b.b.pd_x[1].nand_out : 0 [by b.b.pd_x[0].reset_B:=1]
|
||||||
|
378519 b.b.rsb[0].in : 1 [by b.b.rsbx.buf2._y:=0]
|
||||||
|
378520 b.b.rsb[3].buf1._y : 0 [by b.b.rsb[0].in:=1]
|
||||||
|
378521 b.b.rsb[3].out[0] : 1 [by b.b.rsb[3].buf1._y:=0]
|
||||||
|
378522 b.b.neurons[10].reset_buf._y : 0 [by b.b.rsb[3].out[0]:=1]
|
||||||
|
378532 b.b.rsb[0].buf1._y : 0 [by b.b.rsb[0].in:=1]
|
||||||
|
378560 b.b.rsb[2].buf1._y : 0 [by b.b.rsb[0].in:=1]
|
||||||
|
378623 b.b.rsb[1].buf1._y : 0 [by b.b.rsb[0].in:=1]
|
||||||
|
379386 b.b.rsb[2].out[0] : 1 [by b.b.rsb[2].buf1._y:=0]
|
||||||
|
379444 b.b.neurons[6].reset_buf._y : 0 [by b.b.rsb[2].out[0]:=1]
|
||||||
|
379455 b.b.pd_x[0].nand_out : 0 [by b.b.pd_x[0].reset_B:=1]
|
||||||
|
379643 b.b.rsb[4].buf1._y : 0 [by b.b.rsb[0].in:=1]
|
||||||
|
380456 b.b.rsb[1].out[0] : 1 [by b.b.rsb[1].buf1._y:=0]
|
||||||
|
380470 b.b.neurons[5].reset_buf._y : 0 [by b.b.rsb[1].out[0]:=1]
|
||||||
|
380575 b.b.neurons[5]._reset_BX : 1 [by b.b.neurons[5].reset_buf._y:=0]
|
||||||
|
380812 b.b.neurons[3].reset_buf._y : 0 [by b.b.rsb[1].out[0]:=1]
|
||||||
|
380921 b.b.neurons[3]._reset_BX : 1 [by b.b.neurons[3].reset_buf._y:=0]
|
||||||
|
381668 b.b.rsb[0].out[0] : 1 [by b.b.rsb[0].buf1._y:=0]
|
||||||
|
381669 b.b.neurons[2].reset_buf._y : 0 [by b.b.rsb[0].out[0]:=1]
|
||||||
|
381670 b.b.neurons[2]._reset_BX : 1 [by b.b.neurons[2].reset_buf._y:=0]
|
||||||
|
381677 b.b.neurons[0].reset_buf._y : 0 [by b.b.rsb[0].out[0]:=1]
|
||||||
|
381829 b.b.neurons[7].reset_buf._y : 0 [by b.b.rsb[2].out[0]:=1]
|
||||||
|
381830 b.b.neurons[7]._reset_BX : 1 [by b.b.neurons[7].reset_buf._y:=0]
|
||||||
|
391693 b.b.neurons[9].reset_buf._y : 0 [by b.b.rsb[3].out[0]:=1]
|
||||||
|
394782 b.b.neurons[9]._reset_BX : 1 [by b.b.neurons[9].reset_buf._y:=0]
|
||||||
|
395934 b.b.neurons[8].reset_buf._y : 0 [by b.b.rsb[2].out[0]:=1]
|
||||||
|
396217 b.b.neurons[6]._reset_BX : 1 [by b.b.neurons[6].reset_buf._y:=0]
|
||||||
|
396408 b.b.rsb_pd_y.buf2._y : 0 [by b._reset_B:=1]
|
||||||
|
397158 b.b.pd_y[0].reset_B : 1 [by b.b.rsb_pd_y.buf2._y:=0]
|
||||||
|
397168 b.b.pd_y[1].nand_out : 0 [by b.b.pd_y[0].reset_B:=1]
|
||||||
|
397209 b.b.pd_y[4].nand_out : 0 [by b.b.pd_y[0].reset_B:=1]
|
||||||
|
397478 b.b.pd_y[2].nand_out : 0 [by b.b.pd_y[0].reset_B:=1]
|
||||||
|
398347 b.b.neurons[10]._reset_BX : 1 [by b.b.neurons[10].reset_buf._y:=0]
|
||||||
|
403913 b.b.pd_y[0].nand_out : 0 [by b.b.pd_y[0].reset_B:=1]
|
||||||
|
404740 b.b.pd_y[3].nand_out : 0 [by b.b.pd_y[0].reset_B:=1]
|
||||||
|
416294 b.b.neurons[4].reset_buf._y : 0 [by b.b.rsb[1].out[0]:=1]
|
||||||
|
416295 b.b.neurons[4]._reset_BX : 1 [by b.b.neurons[4].reset_buf._y:=0]
|
||||||
|
416842 b.b.rsb[4].out[0] : 1 [by b.b.rsb[4].buf1._y:=0]
|
||||||
|
416843 b.b.neurons[14].reset_buf._y : 0 [by b.b.rsb[4].out[0]:=1]
|
||||||
|
416858 b.b.neurons[14]._reset_BX : 1 [by b.b.neurons[14].reset_buf._y:=0]
|
||||||
|
418071 b.b.neurons[0]._reset_BX : 1 [by b.b.neurons[0].reset_buf._y:=0]
|
||||||
|
418529 b.b.neurons[13].reset_buf._y : 0 [by b.b.rsb[4].out[0]:=1]
|
||||||
|
418572 b.b.neurons[12].reset_buf._y : 0 [by b.b.rsb[4].out[0]:=1]
|
||||||
|
419026 b.b.neurons[12]._reset_BX : 1 [by b.b.neurons[12].reset_buf._y:=0]
|
||||||
|
419621 b.b.neurons[1].reset_buf._y : 0 [by b.b.rsb[0].out[0]:=1]
|
||||||
|
419937 b.b.neurons[1]._reset_BX : 1 [by b.b.neurons[1].reset_buf._y:=0]
|
||||||
|
442803 b.b.neurons[13]._reset_BX : 1 [by b.b.neurons[13].reset_buf._y:=0]
|
||||||
|
442899 b.b.neurons[11].reset_buf._y : 0 [by b.b.rsb[3].out[0]:=1]
|
||||||
|
442900 b.b.neurons[11]._reset_BX : 1 [by b.b.neurons[11].reset_buf._y:=0]
|
||||||
|
444660 b.b.neurons[8]._reset_BX : 1 [by b.b.neurons[8].reset_buf._y:=0]
|
||||||
|
[] Neurons 0,1,3 spike
|
||||||
|
444660 b.in[0].r : 1
|
||||||
|
444660 b.in[3].r : 1
|
||||||
|
444660 b.in[1].r : 1
|
||||||
|
444680 b.b.neurons[1].A_req._y : 0 [by b.in[1].r:=1]
|
||||||
|
445043 b.b.neurons[0].A_req._y : 0 [by b.in[0].r:=1]
|
||||||
|
445130 b.b.neurons[0]._req : 1 [by b.b.neurons[0].A_req._y:=0]
|
||||||
|
445142 b.b.neurons[0].A_ack._y : 0 [by b.b.neurons[0]._req:=1]
|
||||||
|
445287 b.in[0].a : 1 [by b.b.neurons[0].A_ack._y:=0]
|
||||||
|
446003 b.b.neurons[1]._req : 1 [by b.b.neurons[1].A_req._y:=0]
|
||||||
|
446188 b.b.neurons[0]._en : 0 [by b.in[0].a:=1]
|
||||||
|
446222 b.b.neurons[1].A_ack._y : 0 [by b.b.neurons[1]._req:=1]
|
||||||
|
447352 b.b.neurons[1].pu_y.a : 0 [by b.b.neurons[1]._req:=1]
|
||||||
|
451852 b.b.neurons[0].pu_y.a : 0 [by b.b.neurons[0]._req:=1]
|
||||||
|
452123 b.b.neurons[3].A_req._y : 0 [by b.in[3].r:=1]
|
||||||
|
452141 b.b.neurons[3]._req : 1 [by b.b.neurons[3].A_req._y:=0]
|
||||||
|
454335 b.b.neurons[3].pu_y.a : 0 [by b.b.neurons[3]._req:=1]
|
||||||
|
454455 b.outy[1].r : 1 [by b.b.neurons[3].pu_y.a:=0]
|
||||||
|
454553 b.in[1].a : 1 [by b.b.neurons[1].A_ack._y:=0]
|
||||||
|
456617 b.b.neurons[1]._en : 0 [by b.in[1].a:=1]
|
||||||
|
460770 b.b.keep_y[1]._y : 0 [by b.outy[1].r:=1]
|
||||||
|
478933 b.outy[0].r : 1 [by b.b.neurons[1].pu_y.a:=0]
|
||||||
|
479525 b.b.keep_y[0]._y : 0 [by b.outy[0].r:=1]
|
||||||
|
490113 b.b.neurons[3].A_ack._y : 0 [by b.b.neurons[3]._req:=1]
|
||||||
|
490120 b.in[3].a : 1 [by b.b.neurons[3].A_ack._y:=0]
|
||||||
|
490121 b.b.neurons[3]._en : 0 [by b.in[3].a:=1]
|
||||||
|
[] removing in reqs
|
||||||
|
490121 b.in[0].r : 0
|
||||||
|
490121 b.in[3].r : 0
|
||||||
|
490121 b.in[1].r : 0
|
||||||
|
490245 b.b.neurons[0].A_ack._y : 1 [by b.in[0].r:=0]
|
||||||
|
490605 b.in[0].a : 0 [by b.b.neurons[0].A_ack._y:=1]
|
||||||
|
491173 b.b.neurons[1].A_ack._y : 1 [by b.in[1].r:=0]
|
||||||
|
496051 b.b.neurons[3].A_ack._y : 1 [by b.in[3].r:=0]
|
||||||
|
497148 b.in[3].a : 0 [by b.b.neurons[3].A_ack._y:=1]
|
||||||
|
501367 b.in[1].a : 0 [by b.b.neurons[1].A_ack._y:=1]
|
||||||
|
[] y0 chosen, give ack
|
||||||
|
501367 b.outy[0].a : 1
|
||||||
|
501371 b.b.neurons[0]._y_a_B : 0 [by b.outy[0].a:=1]
|
||||||
|
501627 b.b.neurons[0].pu_y.a : 1 [by b.b.neurons[0]._y_a_B:=0]
|
||||||
|
504748 b.b.neurons[2]._y_a_B : 0 [by b.outy[0].a:=1]
|
||||||
|
513031 b.b.neurons[0].pu_x.a : 0 [by b.outy[0].a:=1]
|
||||||
|
519028 b.b.neurons[1].pu_x.a : 0 [by b.outy[0].a:=1]
|
||||||
|
519065 b.outx[1].r : 1 [by b.b.neurons[1].pu_x.a:=0]
|
||||||
|
519077 b.b.keep_x[1]._y : 0 [by b.outx[1].r:=1]
|
||||||
|
521259 b.b.dly_y[0].dly[0]._y : 0 [by b.outy[0].a:=1]
|
||||||
|
521268 b.b.dly_y[0].dly[0].__y : 1 [by b.b.dly_y[0].dly[0]._y:=0]
|
||||||
|
521695 b.b.dly_y[0].dly[0].___y : 0 [by b.b.dly_y[0].dly[0].__y:=1]
|
||||||
|
521937 b.b.dly_y[0].dly[0].y : 1 [by b.b.dly_y[0].dly[0].___y:=0]
|
||||||
|
522772 b.b.dly_y[0].dly[1]._y : 0 [by b.b.dly_y[0].dly[0].y:=1]
|
||||||
|
527961 b.outx[0].r : 1 [by b.b.neurons[0].pu_x.a:=0]
|
||||||
|
529521 b.b.keep_x[0]._y : 0 [by b.outx[0].r:=1]
|
||||||
|
539286 b.b.neurons[1]._y_a_B : 0 [by b.outy[0].a:=1]
|
||||||
|
569508 b.b.dly_y[0].dly[1].__y : 1 [by b.b.dly_y[0].dly[1]._y:=0]
|
||||||
|
569768 b.b.dly_y[0].dly[1].___y : 0 [by b.b.dly_y[0].dly[1].__y:=1]
|
||||||
|
576379 b.b.neurons[1].pu_y.a : 1 [by b.b.neurons[1]._y_a_B:=0]
|
||||||
|
578756 b.b.dly_y[0].dly[1].y : 1 [by b.b.dly_y[0].dly[1].___y:=0]
|
||||||
|
578757 b.b.dly_y[0].dly[2]._y : 0 [by b.b.dly_y[0].dly[1].y:=1]
|
||||||
|
614807 b.b.dly_y[0].dly[2].__y : 1 [by b.b.dly_y[0].dly[2]._y:=0]
|
||||||
|
615191 b.b.dly_y[0].dly[2].___y : 0 [by b.b.dly_y[0].dly[2].__y:=1]
|
||||||
|
615210 b.b.dly_y[0].dly[2].y : 1 [by b.b.dly_y[0].dly[2].___y:=0]
|
||||||
|
615219 b.b.dly_y[0].dly[3]._y : 0 [by b.b.dly_y[0].dly[2].y:=1]
|
||||||
|
637173 b.b.dly_y[0].dly[3].__y : 1 [by b.b.dly_y[0].dly[3]._y:=0]
|
||||||
|
637361 b.b.dly_y[0].dly[3].___y : 0 [by b.b.dly_y[0].dly[3].__y:=1]
|
||||||
|
683137 b.b.dly_y[0].dly[3].y : 1 [by b.b.dly_y[0].dly[3].___y:=0]
|
||||||
|
686737 b.b.dly_y[0].dly[4]._y : 0 [by b.b.dly_y[0].dly[3].y:=1]
|
||||||
|
686885 b.b.dly_y[0].dly[4].__y : 1 [by b.b.dly_y[0].dly[4]._y:=0]
|
||||||
|
705762 b.b.dly_y[0].dly[4].___y : 0 [by b.b.dly_y[0].dly[4].__y:=1]
|
||||||
|
705777 b.b.pd_y[0].in : 1 [by b.b.dly_y[0].dly[4].___y:=0]
|
||||||
|
716386 b.b.pd_y[0].buf1._y : 0 [by b.b.pd_y[0].in:=1]
|
||||||
|
717273 b.b.pd_y[0]._out : 1 [by b.b.pd_y[0].buf1._y:=0]
|
||||||
|
725255 b.b.pd_y[0].buf2._y : 0 [by b.b.pd_y[0]._out:=1]
|
||||||
|
725256 b.b.pd_y[0].__out : 1 [by b.b.pd_y[0].buf2._y:=0]
|
||||||
|
731982 b.b.pd_y[0].inv.y : 0 [by b.b.pd_y[0].__out:=1]
|
||||||
|
732347 b.b.pd_y[0].nand_out : 1 [by b.b.pd_y[0].inv.y:=0]
|
||||||
|
741305 b.outy[0].r : 0 [by b.b.pd_y[0].nand_out:=1]
|
||||||
|
742689 b.b.keep_y[0]._y : 1 [by b.outy[0].r:=0]
|
||||||
|
[] x0 chosen, give ack
|
||||||
|
742689 b.outx[0].a : 1
|
||||||
|
742692 b.b.neurons[6]._x_a_B : 0 [by b.outx[0].a:=1]
|
||||||
|
742710 b.b.neurons[0]._x_a_B : 0 [by b.outx[0].a:=1]
|
||||||
|
742712 b.b.neurons[0].pu_x.a : 1 [by b.b.neurons[0]._x_a_B:=0]
|
||||||
|
742713 b.b.neurons[0].A_req._y : 1 [by b.b.neurons[0]._x_a_B:=0]
|
||||||
|
742714 b.b.neurons[0]._req : 0 [by b.b.neurons[0].A_req._y:=1]
|
||||||
|
742730 b.b.neurons[3]._x_a_B : 0 [by b.outx[0].a:=1]
|
||||||
|
743271 b.b.dly_x[0].dly[0]._y : 0 [by b.outx[0].a:=1]
|
||||||
|
744566 b.b.neurons[9]._x_a_B : 0 [by b.outx[0].a:=1]
|
||||||
|
746166 b.b.neurons[0]._en : 1 [by b.b.neurons[0]._req:=0]
|
||||||
|
750404 b.b.dly_x[0].dly[0].__y : 1 [by b.b.dly_x[0].dly[0]._y:=0]
|
||||||
|
751264 b.b.dly_x[0].dly[0].___y : 0 [by b.b.dly_x[0].dly[0].__y:=1]
|
||||||
|
751265 b.b.dly_x[0].dly[0].y : 1 [by b.b.dly_x[0].dly[0].___y:=0]
|
||||||
|
751340 b.b.dly_x[0].dly[1]._y : 0 [by b.b.dly_x[0].dly[0].y:=1]
|
||||||
|
752198 b.b.neurons[12]._x_a_B : 0 [by b.outx[0].a:=1]
|
||||||
|
779291 b.b.dly_x[0].dly[1].__y : 1 [by b.b.dly_x[0].dly[1]._y:=0]
|
||||||
|
779365 b.b.dly_x[0].dly[1].___y : 0 [by b.b.dly_x[0].dly[1].__y:=1]
|
||||||
|
781635 b.b.dly_x[0].dly[1].y : 1 [by b.b.dly_x[0].dly[1].___y:=0]
|
||||||
|
781733 b.b.dly_x[0].dly[2]._y : 0 [by b.b.dly_x[0].dly[1].y:=1]
|
||||||
|
787504 b.b.dly_x[0].dly[2].__y : 1 [by b.b.dly_x[0].dly[2]._y:=0]
|
||||||
|
819232 b.b.dly_x[0].dly[2].___y : 0 [by b.b.dly_x[0].dly[2].__y:=1]
|
||||||
|
823085 b.b.dly_x[0].dly[2].y : 1 [by b.b.dly_x[0].dly[2].___y:=0]
|
||||||
|
829226 b.b.dly_x[0].dly[3]._y : 0 [by b.b.dly_x[0].dly[2].y:=1]
|
||||||
|
831586 b.b.dly_x[0].dly[3].__y : 1 [by b.b.dly_x[0].dly[3]._y:=0]
|
||||||
|
831590 b.b.dly_x[0].dly[3].___y : 0 [by b.b.dly_x[0].dly[3].__y:=1]
|
||||||
|
831595 b.b.dly_x[0].dly[3].y : 1 [by b.b.dly_x[0].dly[3].___y:=0]
|
||||||
|
831886 b.b.dly_x[0].dly[4]._y : 0 [by b.b.dly_x[0].dly[3].y:=1]
|
||||||
|
831980 b.b.dly_x[0].dly[4].__y : 1 [by b.b.dly_x[0].dly[4]._y:=0]
|
||||||
|
831981 b.b.dly_x[0].dly[4].___y : 0 [by b.b.dly_x[0].dly[4].__y:=1]
|
||||||
|
832017 b.b.pd_x[0].in : 1 [by b.b.dly_x[0].dly[4].___y:=0]
|
||||||
|
832019 b.b.pd_x[0].buf1._y : 0 [by b.b.pd_x[0].in:=1]
|
||||||
|
853837 b.b.pd_x[0]._out : 1 [by b.b.pd_x[0].buf1._y:=0]
|
||||||
|
853873 b.b.pd_x[0].buf2._y : 0 [by b.b.pd_x[0]._out:=1]
|
||||||
|
853874 b.b.pd_x[0].__out : 1 [by b.b.pd_x[0].buf2._y:=0]
|
||||||
|
853888 b.b.pd_x[0].inv.y : 0 [by b.b.pd_x[0].__out:=1]
|
||||||
|
853900 b.b.pd_x[0].nand_out : 1 [by b.b.pd_x[0].inv.y:=0]
|
||||||
|
877931 b.outx[0].r : 0 [by b.b.pd_x[0].nand_out:=1]
|
||||||
|
899488 b.b.keep_x[0]._y : 1 [by b.outx[0].r:=0]
|
||||||
|
[] remove x ack
|
||||||
|
899488 b.outx[0].a : 0
|
||||||
|
899489 b.b.neurons[9]._x_a_B : 1 [by b.outx[0].a:=0]
|
||||||
|
899700 b.b.neurons[12]._x_a_B : 1 [by b.outx[0].a:=0]
|
||||||
|
906900 b.b.dly_x[0].dly[0]._y : 1 [by b.outx[0].a:=0]
|
||||||
|
909833 b.b.dly_x[0].dly[0].__y : 0 [by b.b.dly_x[0].dly[0]._y:=1]
|
||||||
|
909972 b.b.dly_x[0].dly[0].___y : 1 [by b.b.dly_x[0].dly[0].__y:=0]
|
||||||
|
909976 b.b.dly_x[0].dly[0].y : 0 [by b.b.dly_x[0].dly[0].___y:=1]
|
||||||
|
910331 b.b.dly_x[0].dly[1]._y : 1 [by b.b.dly_x[0].dly[0].y:=0]
|
||||||
|
910409 b.b.dly_x[0].dly[1].__y : 0 [by b.b.dly_x[0].dly[1]._y:=1]
|
||||||
|
911386 b.b.neurons[3]._x_a_B : 1 [by b.outx[0].a:=0]
|
||||||
|
912478 b.b.neurons[0]._x_a_B : 1 [by b.outx[0].a:=0]
|
||||||
|
942438 b.b.neurons[6]._x_a_B : 1 [by b.outx[0].a:=0]
|
||||||
|
948614 b.b.dly_x[0].dly[1].___y : 1 [by b.b.dly_x[0].dly[1].__y:=0]
|
||||||
|
948640 b.b.dly_x[0].dly[1].y : 0 [by b.b.dly_x[0].dly[1].___y:=1]
|
||||||
|
948904 b.b.dly_x[0].dly[2]._y : 1 [by b.b.dly_x[0].dly[1].y:=0]
|
||||||
|
948965 b.b.dly_x[0].dly[2].__y : 0 [by b.b.dly_x[0].dly[2]._y:=1]
|
||||||
|
948970 b.b.dly_x[0].dly[2].___y : 1 [by b.b.dly_x[0].dly[2].__y:=0]
|
||||||
|
949042 b.b.dly_x[0].dly[2].y : 0 [by b.b.dly_x[0].dly[2].___y:=1]
|
||||||
|
949153 b.b.dly_x[0].dly[3]._y : 1 [by b.b.dly_x[0].dly[2].y:=0]
|
||||||
|
949172 b.b.dly_x[0].dly[3].__y : 0 [by b.b.dly_x[0].dly[3]._y:=1]
|
||||||
|
949271 b.b.dly_x[0].dly[3].___y : 1 [by b.b.dly_x[0].dly[3].__y:=0]
|
||||||
|
949638 b.b.dly_x[0].dly[3].y : 0 [by b.b.dly_x[0].dly[3].___y:=1]
|
||||||
|
949687 b.b.dly_x[0].dly[4]._y : 1 [by b.b.dly_x[0].dly[3].y:=0]
|
||||||
|
949722 b.b.dly_x[0].dly[4].__y : 0 [by b.b.dly_x[0].dly[4]._y:=1]
|
||||||
|
955899 b.b.dly_x[0].dly[4].___y : 1 [by b.b.dly_x[0].dly[4].__y:=0]
|
||||||
|
960723 b.b.pd_x[0].in : 0 [by b.b.dly_x[0].dly[4].___y:=1]
|
||||||
|
960751 b.b.pd_x[0].buf1._y : 1 [by b.b.pd_x[0].in:=0]
|
||||||
|
961738 b.b.pd_x[0]._out : 0 [by b.b.pd_x[0].buf1._y:=1]
|
||||||
|
982241 b.b.pd_x[0].buf2._y : 1 [by b.b.pd_x[0]._out:=0]
|
||||||
|
982301 b.b.pd_x[0].__out : 0 [by b.b.pd_x[0].buf2._y:=1]
|
||||||
|
991871 b.b.pd_x[0].inv.y : 1 [by b.b.pd_x[0].__out:=0]
|
||||||
|
993974 b.b.pd_x[0].nand_out : 0 [by b.b.pd_x[0].inv.y:=1]
|
||||||
|
[] x1 remaining, give ack
|
||||||
|
993974 b.outx[1].a : 1
|
||||||
|
993975 b.b.neurons[7]._x_a_B : 0 [by b.outx[1].a:=1]
|
||||||
|
993977 b.b.neurons[13]._x_a_B : 0 [by b.outx[1].a:=1]
|
||||||
|
1004891 b.b.neurons[4]._x_a_B : 0 [by b.outx[1].a:=1]
|
||||||
|
1011682 b.b.neurons[1]._x_a_B : 0 [by b.outx[1].a:=1]
|
||||||
|
1011712 b.b.neurons[1].A_req._y : 1 [by b.b.neurons[1]._x_a_B:=0]
|
||||||
|
1011718 b.b.neurons[1]._req : 0 [by b.b.neurons[1].A_req._y:=1]
|
||||||
|
1011719 b.b.neurons[1]._en : 1 [by b.b.neurons[1]._req:=0]
|
||||||
|
1012638 b.b.dly_x[1].dly[0]._y : 0 [by b.outx[1].a:=1]
|
||||||
|
1012765 b.b.dly_x[1].dly[0].__y : 1 [by b.b.dly_x[1].dly[0]._y:=0]
|
||||||
|
1012768 b.b.dly_x[1].dly[0].___y : 0 [by b.b.dly_x[1].dly[0].__y:=1]
|
||||||
|
1012854 b.b.dly_x[1].dly[0].y : 1 [by b.b.dly_x[1].dly[0].___y:=0]
|
||||||
|
1013151 b.b.neurons[1].pu_x.a : 1 [by b.b.neurons[1]._x_a_B:=0]
|
||||||
|
1013786 b.b.dly_x[1].dly[1]._y : 0 [by b.b.dly_x[1].dly[0].y:=1]
|
||||||
|
1015279 b.b.dly_x[1].dly[1].__y : 1 [by b.b.dly_x[1].dly[1]._y:=0]
|
||||||
|
1019715 b.b.neurons[10]._x_a_B : 0 [by b.outx[1].a:=1]
|
||||||
|
1024002 b.b.dly_x[1].dly[1].___y : 0 [by b.b.dly_x[1].dly[1].__y:=1]
|
||||||
|
1038355 b.b.dly_x[1].dly[1].y : 1 [by b.b.dly_x[1].dly[1].___y:=0]
|
||||||
|
1038629 b.b.dly_x[1].dly[2]._y : 0 [by b.b.dly_x[1].dly[1].y:=1]
|
||||||
|
1038630 b.b.dly_x[1].dly[2].__y : 1 [by b.b.dly_x[1].dly[2]._y:=0]
|
||||||
|
1046781 b.b.dly_x[1].dly[2].___y : 0 [by b.b.dly_x[1].dly[2].__y:=1]
|
||||||
|
1066626 b.b.dly_x[1].dly[2].y : 1 [by b.b.dly_x[1].dly[2].___y:=0]
|
||||||
|
1066628 b.b.dly_x[1].dly[3]._y : 0 [by b.b.dly_x[1].dly[2].y:=1]
|
||||||
|
1066987 b.b.dly_x[1].dly[3].__y : 1 [by b.b.dly_x[1].dly[3]._y:=0]
|
||||||
|
1069003 b.b.dly_x[1].dly[3].___y : 0 [by b.b.dly_x[1].dly[3].__y:=1]
|
||||||
|
1093514 b.b.dly_x[1].dly[3].y : 1 [by b.b.dly_x[1].dly[3].___y:=0]
|
||||||
|
1093516 b.b.dly_x[1].dly[4]._y : 0 [by b.b.dly_x[1].dly[3].y:=1]
|
||||||
|
1107947 b.b.dly_x[1].dly[4].__y : 1 [by b.b.dly_x[1].dly[4]._y:=0]
|
||||||
|
1107950 b.b.dly_x[1].dly[4].___y : 0 [by b.b.dly_x[1].dly[4].__y:=1]
|
||||||
|
1145239 b.b.pd_x[1].in : 1 [by b.b.dly_x[1].dly[4].___y:=0]
|
||||||
|
1145583 b.b.pd_x[1].buf1._y : 0 [by b.b.pd_x[1].in:=1]
|
||||||
|
1147366 b.b.pd_x[1]._out : 1 [by b.b.pd_x[1].buf1._y:=0]
|
||||||
|
1147395 b.b.pd_x[1].buf2._y : 0 [by b.b.pd_x[1]._out:=1]
|
||||||
|
1147466 b.b.pd_x[1].__out : 1 [by b.b.pd_x[1].buf2._y:=0]
|
||||||
|
1147828 b.b.pd_x[1].inv.y : 0 [by b.b.pd_x[1].__out:=1]
|
||||||
|
1147911 b.b.pd_x[1].nand_out : 1 [by b.b.pd_x[1].inv.y:=0]
|
||||||
|
1196073 b.outx[1].r : 0 [by b.b.pd_x[1].nand_out:=1]
|
||||||
|
1196180 b.b.keep_x[1]._y : 1 [by b.outx[1].r:=0]
|
||||||
|
[] remove acks
|
||||||
|
1196180 b.outx[1].a : 0
|
||||||
|
1196180 b.outy[0].a : 0
|
||||||
|
1196181 b.b.neurons[4]._x_a_B : 1 [by b.outx[1].a:=0]
|
||||||
|
1196181 b.b.neurons[7]._x_a_B : 1 [by b.outx[1].a:=0]
|
||||||
|
1196183 b.b.neurons[1]._x_a_B : 1 [by b.outx[1].a:=0]
|
||||||
|
1196192 b.b.dly_x[1].dly[0]._y : 1 [by b.outx[1].a:=0]
|
||||||
|
1196220 b.b.dly_x[1].dly[0].__y : 0 [by b.b.dly_x[1].dly[0]._y:=1]
|
||||||
|
1196228 b.b.dly_x[1].dly[0].___y : 1 [by b.b.dly_x[1].dly[0].__y:=0]
|
||||||
|
1197038 b.b.neurons[13]._x_a_B : 1 [by b.outx[1].a:=0]
|
||||||
|
1200525 b.b.neurons[10]._x_a_B : 1 [by b.outx[1].a:=0]
|
||||||
|
1201161 b.b.neurons[2]._y_a_B : 1 [by b.outy[0].a:=0]
|
||||||
|
1217583 b.b.dly_x[1].dly[0].y : 0 [by b.b.dly_x[1].dly[0].___y:=1]
|
||||||
|
1229526 b.b.neurons[1]._y_a_B : 1 [by b.outy[0].a:=0]
|
||||||
|
1232609 b.b.dly_y[0].dly[0]._y : 1 [by b.outy[0].a:=0]
|
||||||
|
1232874 b.b.dly_y[0].dly[0].__y : 0 [by b.b.dly_y[0].dly[0]._y:=1]
|
||||||
|
1232953 b.b.dly_y[0].dly[0].___y : 1 [by b.b.dly_y[0].dly[0].__y:=0]
|
||||||
|
1232961 b.b.dly_y[0].dly[0].y : 0 [by b.b.dly_y[0].dly[0].___y:=1]
|
||||||
|
1233002 b.b.dly_y[0].dly[1]._y : 1 [by b.b.dly_y[0].dly[0].y:=0]
|
||||||
|
1233641 b.b.dly_y[0].dly[1].__y : 0 [by b.b.dly_y[0].dly[1]._y:=1]
|
||||||
|
1247149 b.b.neurons[0]._y_a_B : 1 [by b.outy[0].a:=0]
|
||||||
|
1251914 b.b.dly_x[1].dly[1]._y : 1 [by b.b.dly_x[1].dly[0].y:=0]
|
||||||
|
1251931 b.b.dly_x[1].dly[1].__y : 0 [by b.b.dly_x[1].dly[1]._y:=1]
|
||||||
|
1267196 b.b.dly_y[0].dly[1].___y : 1 [by b.b.dly_y[0].dly[1].__y:=0]
|
||||||
|
1276209 b.b.dly_x[1].dly[1].___y : 1 [by b.b.dly_x[1].dly[1].__y:=0]
|
||||||
|
1297821 b.b.dly_x[1].dly[1].y : 0 [by b.b.dly_x[1].dly[1].___y:=1]
|
||||||
|
1297822 b.b.dly_x[1].dly[2]._y : 1 [by b.b.dly_x[1].dly[1].y:=0]
|
||||||
|
1297823 b.b.dly_x[1].dly[2].__y : 0 [by b.b.dly_x[1].dly[2]._y:=1]
|
||||||
|
1298249 b.b.dly_x[1].dly[2].___y : 1 [by b.b.dly_x[1].dly[2].__y:=0]
|
||||||
|
1298587 b.b.dly_x[1].dly[2].y : 0 [by b.b.dly_x[1].dly[2].___y:=1]
|
||||||
|
1298713 b.b.dly_x[1].dly[3]._y : 1 [by b.b.dly_x[1].dly[2].y:=0]
|
||||||
|
1298715 b.b.dly_x[1].dly[3].__y : 0 [by b.b.dly_x[1].dly[3]._y:=1]
|
||||||
|
1299525 b.b.dly_x[1].dly[3].___y : 1 [by b.b.dly_x[1].dly[3].__y:=0]
|
||||||
|
1299685 b.b.dly_x[1].dly[3].y : 0 [by b.b.dly_x[1].dly[3].___y:=1]
|
||||||
|
1312415 b.b.dly_y[0].dly[1].y : 0 [by b.b.dly_y[0].dly[1].___y:=1]
|
||||||
|
1327516 b.b.dly_x[1].dly[4]._y : 1 [by b.b.dly_x[1].dly[3].y:=0]
|
||||||
|
1327517 b.b.dly_x[1].dly[4].__y : 0 [by b.b.dly_x[1].dly[4]._y:=1]
|
||||||
|
1327522 b.b.dly_x[1].dly[4].___y : 1 [by b.b.dly_x[1].dly[4].__y:=0]
|
||||||
|
1328092 b.b.pd_x[1].in : 0 [by b.b.dly_x[1].dly[4].___y:=1]
|
||||||
|
1374848 b.b.dly_y[0].dly[2]._y : 1 [by b.b.dly_y[0].dly[1].y:=0]
|
||||||
|
1376980 b.b.dly_y[0].dly[2].__y : 0 [by b.b.dly_y[0].dly[2]._y:=1]
|
||||||
|
1376982 b.b.dly_y[0].dly[2].___y : 1 [by b.b.dly_y[0].dly[2].__y:=0]
|
||||||
|
1377020 b.b.dly_y[0].dly[2].y : 0 [by b.b.dly_y[0].dly[2].___y:=1]
|
||||||
|
1386708 b.b.pd_x[1].buf1._y : 1 [by b.b.pd_x[1].in:=0]
|
||||||
|
1386765 b.b.pd_x[1]._out : 0 [by b.b.pd_x[1].buf1._y:=1]
|
||||||
|
1386766 b.b.pd_x[1].buf2._y : 1 [by b.b.pd_x[1]._out:=0]
|
||||||
|
1389342 b.b.dly_y[0].dly[3]._y : 1 [by b.b.dly_y[0].dly[2].y:=0]
|
||||||
|
1389346 b.b.dly_y[0].dly[3].__y : 0 [by b.b.dly_y[0].dly[3]._y:=1]
|
||||||
|
1389892 b.b.dly_y[0].dly[3].___y : 1 [by b.b.dly_y[0].dly[3].__y:=0]
|
||||||
|
1389903 b.b.dly_y[0].dly[3].y : 0 [by b.b.dly_y[0].dly[3].___y:=1]
|
||||||
|
1389915 b.b.dly_y[0].dly[4]._y : 1 [by b.b.dly_y[0].dly[3].y:=0]
|
||||||
|
1391598 b.b.dly_y[0].dly[4].__y : 0 [by b.b.dly_y[0].dly[4]._y:=1]
|
||||||
|
1395486 b.b.pd_x[1].__out : 0 [by b.b.pd_x[1].buf2._y:=1]
|
||||||
|
1396354 b.b.pd_x[1].inv.y : 1 [by b.b.pd_x[1].__out:=0]
|
||||||
|
1412802 b.b.pd_x[1].nand_out : 0 [by b.b.pd_x[1].inv.y:=1]
|
||||||
|
1419766 b.b.dly_y[0].dly[4].___y : 1 [by b.b.dly_y[0].dly[4].__y:=0]
|
||||||
|
1419786 b.b.pd_y[0].in : 0 [by b.b.dly_y[0].dly[4].___y:=1]
|
||||||
|
1422426 b.b.pd_y[0].buf1._y : 1 [by b.b.pd_y[0].in:=0]
|
||||||
|
1451134 b.b.pd_y[0]._out : 0 [by b.b.pd_y[0].buf1._y:=1]
|
||||||
|
1453563 b.b.pd_y[0].buf2._y : 1 [by b.b.pd_y[0]._out:=0]
|
||||||
|
1456439 b.b.pd_y[0].__out : 0 [by b.b.pd_y[0].buf2._y:=1]
|
||||||
|
1458573 b.b.pd_y[0].inv.y : 1 [by b.b.pd_y[0].__out:=0]
|
||||||
|
1483536 b.b.pd_y[0].nand_out : 0 [by b.b.pd_y[0].inv.y:=1]
|
||||||
|
[] y1 remaining, give ack
|
||||||
|
1483536 b.outy[1].a : 1
|
||||||
|
1483558 b.b.neurons[4]._y_a_B : 0 [by b.outy[1].a:=1]
|
||||||
|
1483662 b.b.neurons[5]._y_a_B : 0 [by b.outy[1].a:=1]
|
||||||
|
1484027 b.b.dly_y[1].dly[0]._y : 0 [by b.outy[1].a:=1]
|
||||||
|
1484045 b.b.dly_y[1].dly[0].__y : 1 [by b.b.dly_y[1].dly[0]._y:=0]
|
||||||
|
1484046 b.b.dly_y[1].dly[0].___y : 0 [by b.b.dly_y[1].dly[0].__y:=1]
|
||||||
|
1489497 b.b.neurons[3].pu_x.a : 0 [by b.outy[1].a:=1]
|
||||||
|
1489551 b.outx[0].r : 1 [by b.b.neurons[3].pu_x.a:=0]
|
||||||
|
1489577 b.b.keep_x[0]._y : 0 [by b.outx[0].r:=1]
|
||||||
|
1506884 b.b.dly_y[1].dly[0].y : 1 [by b.b.dly_y[1].dly[0].___y:=0]
|
||||||
|
1509517 b.b.dly_y[1].dly[1]._y : 0 [by b.b.dly_y[1].dly[0].y:=1]
|
||||||
|
1511746 b.b.neurons[3]._y_a_B : 0 [by b.outy[1].a:=1]
|
||||||
|
1511789 b.b.dly_y[1].dly[1].__y : 1 [by b.b.dly_y[1].dly[1]._y:=0]
|
||||||
|
1511798 b.b.neurons[3].pu_y.a : 1 [by b.b.neurons[3]._y_a_B:=0]
|
||||||
|
1511897 b.b.dly_y[1].dly[1].___y : 0 [by b.b.dly_y[1].dly[1].__y:=1]
|
||||||
|
1511898 b.b.dly_y[1].dly[1].y : 1 [by b.b.dly_y[1].dly[1].___y:=0]
|
||||||
|
1516198 b.b.dly_y[1].dly[2]._y : 0 [by b.b.dly_y[1].dly[1].y:=1]
|
||||||
|
1516199 b.b.dly_y[1].dly[2].__y : 1 [by b.b.dly_y[1].dly[2]._y:=0]
|
||||||
|
1516200 b.b.dly_y[1].dly[2].___y : 0 [by b.b.dly_y[1].dly[2].__y:=1]
|
||||||
|
1519513 b.b.dly_y[1].dly[2].y : 1 [by b.b.dly_y[1].dly[2].___y:=0]
|
||||||
|
1519519 b.b.dly_y[1].dly[3]._y : 0 [by b.b.dly_y[1].dly[2].y:=1]
|
||||||
|
1519523 b.b.dly_y[1].dly[3].__y : 1 [by b.b.dly_y[1].dly[3]._y:=0]
|
||||||
|
1546542 b.b.dly_y[1].dly[3].___y : 0 [by b.b.dly_y[1].dly[3].__y:=1]
|
||||||
|
1546544 b.b.dly_y[1].dly[3].y : 1 [by b.b.dly_y[1].dly[3].___y:=0]
|
||||||
|
1546548 b.b.dly_y[1].dly[4]._y : 0 [by b.b.dly_y[1].dly[3].y:=1]
|
||||||
|
1546549 b.b.dly_y[1].dly[4].__y : 1 [by b.b.dly_y[1].dly[4]._y:=0]
|
||||||
|
1546574 b.b.dly_y[1].dly[4].___y : 0 [by b.b.dly_y[1].dly[4].__y:=1]
|
||||||
|
1546749 b.b.pd_y[1].in : 1 [by b.b.dly_y[1].dly[4].___y:=0]
|
||||||
|
1549124 b.b.pd_y[1].buf1._y : 0 [by b.b.pd_y[1].in:=1]
|
||||||
|
1562236 b.b.pd_y[1]._out : 1 [by b.b.pd_y[1].buf1._y:=0]
|
||||||
|
1600530 b.b.pd_y[1].buf2._y : 0 [by b.b.pd_y[1]._out:=1]
|
||||||
|
1600879 b.b.pd_y[1].__out : 1 [by b.b.pd_y[1].buf2._y:=0]
|
||||||
|
1602420 b.b.pd_y[1].inv.y : 0 [by b.b.pd_y[1].__out:=1]
|
||||||
|
1602504 b.b.pd_y[1].nand_out : 1 [by b.b.pd_y[1].inv.y:=0]
|
||||||
|
1602505 b.outy[1].r : 0 [by b.b.pd_y[1].nand_out:=1]
|
||||||
|
1657298 b.b.keep_y[1]._y : 1 [by b.outy[1].r:=0]
|
||||||
|
[] x0 req, give ack
|
||||||
|
1657298 b.outx[0].a : 1
|
||||||
|
1657306 b.b.neurons[9]._x_a_B : 0 [by b.outx[0].a:=1]
|
||||||
|
1657359 b.b.neurons[3]._x_a_B : 0 [by b.outx[0].a:=1]
|
||||||
|
1657371 b.b.neurons[3].pu_x.a : 1 [by b.b.neurons[3]._x_a_B:=0]
|
||||||
|
1657443 b.b.neurons[0]._x_a_B : 0 [by b.outx[0].a:=1]
|
||||||
|
1670066 b.b.neurons[3].A_req._y : 1 [by b.b.neurons[3]._x_a_B:=0]
|
||||||
|
1670073 b.b.neurons[3]._req : 0 [by b.b.neurons[3].A_req._y:=1]
|
||||||
|
1670074 b.b.neurons[3]._en : 1 [by b.b.neurons[3]._req:=0]
|
||||||
|
1670849 b.b.dly_x[0].dly[0]._y : 0 [by b.outx[0].a:=1]
|
||||||
|
1671129 b.b.dly_x[0].dly[0].__y : 1 [by b.b.dly_x[0].dly[0]._y:=0]
|
||||||
|
1685216 b.b.dly_x[0].dly[0].___y : 0 [by b.b.dly_x[0].dly[0].__y:=1]
|
||||||
|
1685223 b.b.dly_x[0].dly[0].y : 1 [by b.b.dly_x[0].dly[0].___y:=0]
|
||||||
|
1689483 b.b.dly_x[0].dly[1]._y : 0 [by b.b.dly_x[0].dly[0].y:=1]
|
||||||
|
1692982 b.b.dly_x[0].dly[1].__y : 1 [by b.b.dly_x[0].dly[1]._y:=0]
|
||||||
|
1692991 b.b.dly_x[0].dly[1].___y : 0 [by b.b.dly_x[0].dly[1].__y:=1]
|
||||||
|
1693549 b.b.dly_x[0].dly[1].y : 1 [by b.b.dly_x[0].dly[1].___y:=0]
|
||||||
|
1693636 b.b.dly_x[0].dly[2]._y : 0 [by b.b.dly_x[0].dly[1].y:=1]
|
||||||
|
1696273 b.b.neurons[12]._x_a_B : 0 [by b.outx[0].a:=1]
|
||||||
|
1704435 b.b.neurons[6]._x_a_B : 0 [by b.outx[0].a:=1]
|
||||||
|
1749021 b.b.dly_x[0].dly[2].__y : 1 [by b.b.dly_x[0].dly[2]._y:=0]
|
||||||
|
1749022 b.b.dly_x[0].dly[2].___y : 0 [by b.b.dly_x[0].dly[2].__y:=1]
|
||||||
|
1749059 b.b.dly_x[0].dly[2].y : 1 [by b.b.dly_x[0].dly[2].___y:=0]
|
||||||
|
1749224 b.b.dly_x[0].dly[3]._y : 0 [by b.b.dly_x[0].dly[2].y:=1]
|
||||||
|
1756236 b.b.dly_x[0].dly[3].__y : 1 [by b.b.dly_x[0].dly[3]._y:=0]
|
||||||
|
1766391 b.b.dly_x[0].dly[3].___y : 0 [by b.b.dly_x[0].dly[3].__y:=1]
|
||||||
|
1766475 b.b.dly_x[0].dly[3].y : 1 [by b.b.dly_x[0].dly[3].___y:=0]
|
||||||
|
1766503 b.b.dly_x[0].dly[4]._y : 0 [by b.b.dly_x[0].dly[3].y:=1]
|
||||||
|
1766817 b.b.dly_x[0].dly[4].__y : 1 [by b.b.dly_x[0].dly[4]._y:=0]
|
||||||
|
1766860 b.b.dly_x[0].dly[4].___y : 0 [by b.b.dly_x[0].dly[4].__y:=1]
|
||||||
|
1766930 b.b.pd_x[0].in : 1 [by b.b.dly_x[0].dly[4].___y:=0]
|
||||||
|
1812523 b.b.pd_x[0].buf1._y : 0 [by b.b.pd_x[0].in:=1]
|
||||||
|
1812524 b.b.pd_x[0]._out : 1 [by b.b.pd_x[0].buf1._y:=0]
|
||||||
|
1812530 b.b.pd_x[0].buf2._y : 0 [by b.b.pd_x[0]._out:=1]
|
||||||
|
1812531 b.b.pd_x[0].__out : 1 [by b.b.pd_x[0].buf2._y:=0]
|
||||||
|
1839134 b.b.pd_x[0].inv.y : 0 [by b.b.pd_x[0].__out:=1]
|
||||||
|
1843014 b.b.pd_x[0].nand_out : 1 [by b.b.pd_x[0].inv.y:=0]
|
||||||
|
1843016 b.outx[0].r : 0 [by b.b.pd_x[0].nand_out:=1]
|
||||||
|
1850313 b.b.keep_x[0]._y : 1 [by b.outx[0].r:=0]
|
||||||
|
[] remove acks
|
||||||
|
1850313 b.outx[0].a : 0
|
||||||
|
1850313 b.outy[1].a : 0
|
||||||
|
1850314 b.b.neurons[12]._x_a_B : 1 [by b.outx[0].a:=0]
|
||||||
|
1850383 b.b.neurons[3]._x_a_B : 1 [by b.outx[0].a:=0]
|
||||||
|
1850440 b.b.neurons[0]._x_a_B : 1 [by b.outx[0].a:=0]
|
||||||
|
1850484 b.b.neurons[6]._x_a_B : 1 [by b.outx[0].a:=0]
|
||||||
|
1850623 b.b.neurons[9]._x_a_B : 1 [by b.outx[0].a:=0]
|
||||||
|
1850683 b.b.neurons[5]._y_a_B : 1 [by b.outy[1].a:=0]
|
||||||
|
1851339 b.b.dly_x[0].dly[0]._y : 1 [by b.outx[0].a:=0]
|
||||||
|
1853611 b.b.neurons[3]._y_a_B : 1 [by b.outy[1].a:=0]
|
||||||
|
1854775 b.b.dly_x[0].dly[0].__y : 0 [by b.b.dly_x[0].dly[0]._y:=1]
|
||||||
|
1854781 b.b.dly_x[0].dly[0].___y : 1 [by b.b.dly_x[0].dly[0].__y:=0]
|
||||||
|
1855863 b.b.neurons[4]._y_a_B : 1 [by b.outy[1].a:=0]
|
||||||
|
1864858 b.b.dly_y[1].dly[0]._y : 1 [by b.outy[1].a:=0]
|
||||||
|
1864874 b.b.dly_y[1].dly[0].__y : 0 [by b.b.dly_y[1].dly[0]._y:=1]
|
||||||
|
1864884 b.b.dly_y[1].dly[0].___y : 1 [by b.b.dly_y[1].dly[0].__y:=0]
|
||||||
|
1864933 b.b.dly_y[1].dly[0].y : 0 [by b.b.dly_y[1].dly[0].___y:=1]
|
||||||
|
1864940 b.b.dly_y[1].dly[1]._y : 1 [by b.b.dly_y[1].dly[0].y:=0]
|
||||||
|
1864942 b.b.dly_y[1].dly[1].__y : 0 [by b.b.dly_y[1].dly[1]._y:=1]
|
||||||
|
1882499 b.b.dly_x[0].dly[0].y : 0 [by b.b.dly_x[0].dly[0].___y:=1]
|
||||||
|
1884959 b.b.dly_x[0].dly[1]._y : 1 [by b.b.dly_x[0].dly[0].y:=0]
|
||||||
|
1885017 b.b.dly_x[0].dly[1].__y : 0 [by b.b.dly_x[0].dly[1]._y:=1]
|
||||||
|
1887111 b.b.dly_x[0].dly[1].___y : 1 [by b.b.dly_x[0].dly[1].__y:=0]
|
||||||
|
1887418 b.b.dly_y[1].dly[1].___y : 1 [by b.b.dly_y[1].dly[1].__y:=0]
|
||||||
|
1887425 b.b.dly_y[1].dly[1].y : 0 [by b.b.dly_y[1].dly[1].___y:=1]
|
||||||
|
1892099 b.b.dly_y[1].dly[2]._y : 1 [by b.b.dly_y[1].dly[1].y:=0]
|
||||||
|
1892141 b.b.dly_y[1].dly[2].__y : 0 [by b.b.dly_y[1].dly[2]._y:=1]
|
||||||
|
1902611 b.b.dly_y[1].dly[2].___y : 1 [by b.b.dly_y[1].dly[2].__y:=0]
|
||||||
|
1902884 b.b.dly_y[1].dly[2].y : 0 [by b.b.dly_y[1].dly[2].___y:=1]
|
||||||
|
1907863 b.b.dly_y[1].dly[3]._y : 1 [by b.b.dly_y[1].dly[2].y:=0]
|
||||||
|
1911443 b.b.dly_y[1].dly[3].__y : 0 [by b.b.dly_y[1].dly[3]._y:=1]
|
||||||
|
1913542 b.b.dly_x[0].dly[1].y : 0 [by b.b.dly_x[0].dly[1].___y:=1]
|
||||||
|
1913670 b.b.dly_x[0].dly[2]._y : 1 [by b.b.dly_x[0].dly[1].y:=0]
|
||||||
|
1949501 b.b.dly_y[1].dly[3].___y : 1 [by b.b.dly_y[1].dly[3].__y:=0]
|
||||||
|
1959463 b.b.dly_y[1].dly[3].y : 0 [by b.b.dly_y[1].dly[3].___y:=1]
|
||||||
|
1959542 b.b.dly_y[1].dly[4]._y : 1 [by b.b.dly_y[1].dly[3].y:=0]
|
||||||
|
1959543 b.b.dly_y[1].dly[4].__y : 0 [by b.b.dly_y[1].dly[4]._y:=1]
|
||||||
|
1959648 b.b.dly_y[1].dly[4].___y : 1 [by b.b.dly_y[1].dly[4].__y:=0]
|
||||||
|
1966194 b.b.pd_y[1].in : 0 [by b.b.dly_y[1].dly[4].___y:=1]
|
||||||
|
1966747 b.b.dly_x[0].dly[2].__y : 0 [by b.b.dly_x[0].dly[2]._y:=1]
|
||||||
|
1966757 b.b.dly_x[0].dly[2].___y : 1 [by b.b.dly_x[0].dly[2].__y:=0]
|
||||||
|
1966801 b.b.dly_x[0].dly[2].y : 0 [by b.b.dly_x[0].dly[2].___y:=1]
|
||||||
|
1966848 b.b.pd_y[1].buf1._y : 1 [by b.b.pd_y[1].in:=0]
|
||||||
|
1966937 b.b.dly_x[0].dly[3]._y : 1 [by b.b.dly_x[0].dly[2].y:=0]
|
||||||
|
1966975 b.b.dly_x[0].dly[3].__y : 0 [by b.b.dly_x[0].dly[3]._y:=1]
|
||||||
|
1966979 b.b.dly_x[0].dly[3].___y : 1 [by b.b.dly_x[0].dly[3].__y:=0]
|
||||||
|
1967171 b.b.pd_y[1]._out : 0 [by b.b.pd_y[1].buf1._y:=1]
|
||||||
|
1967298 b.b.pd_y[1].buf2._y : 1 [by b.b.pd_y[1]._out:=0]
|
||||||
|
1968072 b.b.dly_x[0].dly[3].y : 0 [by b.b.dly_x[0].dly[3].___y:=1]
|
||||||
|
1988151 b.b.dly_x[0].dly[4]._y : 1 [by b.b.dly_x[0].dly[3].y:=0]
|
||||||
|
1988152 b.b.dly_x[0].dly[4].__y : 0 [by b.b.dly_x[0].dly[4]._y:=1]
|
||||||
|
1988173 b.b.dly_x[0].dly[4].___y : 1 [by b.b.dly_x[0].dly[4].__y:=0]
|
||||||
|
1994034 b.b.pd_x[0].in : 0 [by b.b.dly_x[0].dly[4].___y:=1]
|
||||||
|
2008428 b.b.pd_x[0].buf1._y : 1 [by b.b.pd_x[0].in:=0]
|
||||||
|
2008440 b.b.pd_x[0]._out : 0 [by b.b.pd_x[0].buf1._y:=1]
|
||||||
|
2008842 b.b.pd_x[0].buf2._y : 1 [by b.b.pd_x[0]._out:=0]
|
||||||
|
2011488 b.b.pd_x[0].__out : 0 [by b.b.pd_x[0].buf2._y:=1]
|
||||||
|
2017014 b.b.pd_y[1].__out : 0 [by b.b.pd_y[1].buf2._y:=1]
|
||||||
|
2017296 b.b.pd_y[1].inv.y : 1 [by b.b.pd_y[1].__out:=0]
|
||||||
|
2017791 b.b.pd_x[0].inv.y : 1 [by b.b.pd_x[0].__out:=0]
|
||||||
|
2048035 b.b.pd_y[1].nand_out : 0 [by b.b.pd_y[1].inv.y:=1]
|
||||||
|
2081946 b.b.pd_x[0].nand_out : 0 [by b.b.pd_x[0].inv.y:=1]
|
||||||
Binary file not shown.
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,46 @@
|
|||||||
|
/*************************************************************************
|
||||||
|
*
|
||||||
|
* 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/coders.act";
|
||||||
|
import globals;
|
||||||
|
|
||||||
|
open tmpl::dataflow_neuro;
|
||||||
|
|
||||||
|
defproc nrn_hs_2d_inst(a1of1 in; a1of1 outx, outy)
|
||||||
|
{
|
||||||
|
bool _reset_B;
|
||||||
|
prs {
|
||||||
|
Reset => _reset_B-
|
||||||
|
}
|
||||||
|
nrn_hs_2d b(.in = in, .outx = outx, .outy = outy);
|
||||||
|
b.supply.vdd = Vdd;
|
||||||
|
b.supply.vss = GND;
|
||||||
|
b.reset_B = _reset_B;
|
||||||
|
}
|
||||||
|
|
||||||
|
nrn_hs_2d_inst b;
|
||||||
@@ -0,0 +1,202 @@
|
|||||||
|
watchall
|
||||||
|
|
||||||
|
set b.in[0].r 0
|
||||||
|
set b.in[1].r 0
|
||||||
|
set b.in[2].r 0
|
||||||
|
set b.in[3].r 0
|
||||||
|
set b.in[4].r 0
|
||||||
|
set b.in[5].r 0
|
||||||
|
set b.in[6].r 0
|
||||||
|
set b.in[7].r 0
|
||||||
|
set b.in[8].r 0
|
||||||
|
set b.in[9].r 0
|
||||||
|
set b.in[10].r 0
|
||||||
|
set b.in[11].r 0
|
||||||
|
set b.in[12].r 0
|
||||||
|
set b.in[13].r 0
|
||||||
|
set b.in[14].r 0
|
||||||
|
|
||||||
|
set b.outx[0].a 0
|
||||||
|
set b.outx[1].a 0
|
||||||
|
set b.outx[2].a 0
|
||||||
|
|
||||||
|
set b.outy[0].a 0
|
||||||
|
set b.outy[1].a 0
|
||||||
|
set b.outy[2].a 0
|
||||||
|
set b.outy[3].a 0
|
||||||
|
set b.outy[4].a 0
|
||||||
|
|
||||||
|
set b.outx[0].r 1
|
||||||
|
set b.outx[1].r 1
|
||||||
|
set b.outx[2].r 1
|
||||||
|
|
||||||
|
set b.outy[0].r 1
|
||||||
|
set b.outy[1].r 1
|
||||||
|
set b.outy[2].r 1
|
||||||
|
set b.outy[3].r 1
|
||||||
|
set b.outy[4].r 0
|
||||||
|
|
||||||
|
set b.b.neurons[0]._en 0
|
||||||
|
set b.b.neurons[0]._req 1
|
||||||
|
|
||||||
|
# set Reset 0
|
||||||
|
cycle
|
||||||
|
|
||||||
|
system "echo '[] set Reset 1'"
|
||||||
|
set Reset 1
|
||||||
|
cycle
|
||||||
|
status X
|
||||||
|
|
||||||
|
|
||||||
|
system "echo '[] set Reset 0'"
|
||||||
|
set Reset 0
|
||||||
|
mode run
|
||||||
|
cycle
|
||||||
|
|
||||||
|
assert b.outx[0].r 0
|
||||||
|
assert b.outx[1].r 0
|
||||||
|
assert b.outx[2].r 0
|
||||||
|
|
||||||
|
assert b.outy[0].r 0
|
||||||
|
assert b.outy[1].r 0
|
||||||
|
assert b.outy[2].r 0
|
||||||
|
assert b.outy[3].r 0
|
||||||
|
assert b.outy[4].r 0
|
||||||
|
|
||||||
|
|
||||||
|
system "echo '[] Neurons 0,1,3 spike'"
|
||||||
|
set b.in[0].r 1
|
||||||
|
set b.in[1].r 1
|
||||||
|
set b.in[3].r 1
|
||||||
|
cycle
|
||||||
|
assert b.outx[0].r 0
|
||||||
|
assert b.outx[1].r 0
|
||||||
|
assert b.outx[2].r 0
|
||||||
|
|
||||||
|
assert b.outy[0].r 1
|
||||||
|
assert b.outy[1].r 1
|
||||||
|
assert b.outy[2].r 0
|
||||||
|
assert b.outy[3].r 0
|
||||||
|
assert b.outy[4].r 0
|
||||||
|
|
||||||
|
assert b.in[0].a 1
|
||||||
|
assert b.in[1].a 1
|
||||||
|
assert b.in[3].a 1
|
||||||
|
|
||||||
|
system "echo '[] removing in reqs'"
|
||||||
|
set b.in[0].r 0
|
||||||
|
set b.in[1].r 0
|
||||||
|
set b.in[3].r 0
|
||||||
|
cycle
|
||||||
|
assert b.in[0].a 0
|
||||||
|
assert b.in[1].a 0
|
||||||
|
assert b.in[3].a 0
|
||||||
|
|
||||||
|
|
||||||
|
system "echo '[] y0 chosen, give ack'"
|
||||||
|
set b.outy[0].a 1
|
||||||
|
cycle
|
||||||
|
assert b.outx[0].r 1
|
||||||
|
assert b.outx[1].r 1
|
||||||
|
assert b.outx[2].r 0
|
||||||
|
|
||||||
|
assert b.outy[0].r 0
|
||||||
|
assert b.outy[1].r 1
|
||||||
|
assert b.outy[2].r 0
|
||||||
|
assert b.outy[3].r 0
|
||||||
|
assert b.outy[4].r 0
|
||||||
|
|
||||||
|
system "echo '[] x0 chosen, give ack'"
|
||||||
|
set b.outx[0].a 1
|
||||||
|
cycle
|
||||||
|
assert b.outx[0].r 0
|
||||||
|
assert b.outx[1].r 1
|
||||||
|
assert b.outx[2].r 0
|
||||||
|
|
||||||
|
assert b.outy[0].r 0
|
||||||
|
assert b.outy[1].r 1
|
||||||
|
assert b.outy[2].r 0
|
||||||
|
assert b.outy[3].r 0
|
||||||
|
assert b.outy[4].r 0
|
||||||
|
|
||||||
|
system "echo '[] remove x ack'"
|
||||||
|
set b.outx[0].a 0
|
||||||
|
cycle
|
||||||
|
assert b.outx[0].r 0
|
||||||
|
assert b.outx[1].r 1
|
||||||
|
assert b.outx[2].r 0
|
||||||
|
|
||||||
|
assert b.outy[0].r 0
|
||||||
|
assert b.outy[1].r 1
|
||||||
|
assert b.outy[2].r 0
|
||||||
|
assert b.outy[3].r 0
|
||||||
|
assert b.outy[4].r 0
|
||||||
|
|
||||||
|
system "echo '[] x1 remaining, give ack'"
|
||||||
|
set b.outx[1].a 1
|
||||||
|
cycle
|
||||||
|
assert b.outx[0].r 0
|
||||||
|
assert b.outx[1].r 0
|
||||||
|
assert b.outx[2].r 0
|
||||||
|
|
||||||
|
assert b.outy[0].r 0
|
||||||
|
assert b.outy[1].r 1
|
||||||
|
assert b.outy[2].r 0
|
||||||
|
assert b.outy[3].r 0
|
||||||
|
assert b.outy[4].r 0
|
||||||
|
|
||||||
|
system "echo '[] remove acks'"
|
||||||
|
set b.outx[1].a 0
|
||||||
|
set b.outy[0].a 0
|
||||||
|
cycle
|
||||||
|
assert b.outx[0].r 0
|
||||||
|
assert b.outx[1].r 0
|
||||||
|
assert b.outx[2].r 0
|
||||||
|
|
||||||
|
assert b.outy[0].r 0
|
||||||
|
assert b.outy[1].r 1
|
||||||
|
assert b.outy[2].r 0
|
||||||
|
assert b.outy[3].r 0
|
||||||
|
assert b.outy[4].r 0
|
||||||
|
|
||||||
|
system "echo '[] y1 remaining, give ack'"
|
||||||
|
set b.outy[1].a 1
|
||||||
|
cycle
|
||||||
|
assert b.outx[0].r 1
|
||||||
|
assert b.outx[1].r 0
|
||||||
|
assert b.outx[2].r 0
|
||||||
|
|
||||||
|
assert b.outy[0].r 0
|
||||||
|
assert b.outy[1].r 0
|
||||||
|
assert b.outy[2].r 0
|
||||||
|
assert b.outy[3].r 0
|
||||||
|
assert b.outy[4].r 0
|
||||||
|
|
||||||
|
system "echo '[] x0 req, give ack'"
|
||||||
|
set b.outx[0].a 1
|
||||||
|
cycle
|
||||||
|
assert b.outx[0].r 0
|
||||||
|
assert b.outx[1].r 0
|
||||||
|
assert b.outx[2].r 0
|
||||||
|
|
||||||
|
assert b.outy[0].r 0
|
||||||
|
assert b.outy[1].r 0
|
||||||
|
assert b.outy[2].r 0
|
||||||
|
assert b.outy[3].r 0
|
||||||
|
assert b.outy[4].r 0
|
||||||
|
|
||||||
|
|
||||||
|
system "echo '[] remove acks'"
|
||||||
|
set b.outx[0].a 0
|
||||||
|
set b.outy[1].a 0
|
||||||
|
cycle
|
||||||
|
assert b.outx[0].r 0
|
||||||
|
assert b.outx[1].r 0
|
||||||
|
assert b.outx[2].r 0
|
||||||
|
|
||||||
|
assert b.outy[0].r 0
|
||||||
|
assert b.outy[1].r 0
|
||||||
|
assert b.outy[2].r 0
|
||||||
|
assert b.outy[3].r 0
|
||||||
|
assert b.outy[4].r 0
|
||||||
|
|
||||||
@@ -0,0 +1,107 @@
|
|||||||
|
//
|
||||||
|
// Verilog module for: INV_X1<>
|
||||||
|
//
|
||||||
|
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: A_2P_U_X4<>
|
||||||
|
//
|
||||||
|
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: INV_X2<>
|
||||||
|
//
|
||||||
|
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: A_2C1N_RB_X1<>
|
||||||
|
//
|
||||||
|
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: BUF_X2<>
|
||||||
|
//
|
||||||
|
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: A_1C1P_X1<>
|
||||||
|
//
|
||||||
|
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: A_2C1P1N_RB_X1<>
|
||||||
|
//
|
||||||
|
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: A_3P_U_X4<>
|
||||||
|
//
|
||||||
|
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: nrn_hs_2d<>
|
||||||
|
//
|
||||||
|
module _0_0tmpl_0_0dataflow__neuro_0_0nrn__hs__2d(\in.d.d[0] , \in.a , \outx.d.d[0] , \outx.a , \outy.d.d[0] , \outy.a , reset_B, vdd, vss);
|
||||||
|
input vdd;
|
||||||
|
input vss;
|
||||||
|
input \in.d.d[0] ;
|
||||||
|
output \in.a ;
|
||||||
|
output \outx.d.d[0] ;
|
||||||
|
input \outx.a ;
|
||||||
|
output \outy.d.d[0] ;
|
||||||
|
input \outy.a ;
|
||||||
|
input reset_B;
|
||||||
|
|
||||||
|
// -- signals ---
|
||||||
|
reg \outx.d.d[0] ;
|
||||||
|
reg \in.a ;
|
||||||
|
reg _reqB;
|
||||||
|
reg \outy.d.d[0] ;
|
||||||
|
wire reset_B;
|
||||||
|
reg _y_a_B;
|
||||||
|
wire \outy.a ;
|
||||||
|
reg _x_a_B;
|
||||||
|
reg _reset_BX;
|
||||||
|
wire \in.d.d[0] ;
|
||||||
|
wire \outx.a ;
|
||||||
|
reg _en;
|
||||||
|
reg _req;
|
||||||
|
|
||||||
|
// --- instances
|
||||||
|
INV_X1 \req_inv (.y(_reqB), .a(_req), .vdd(vdd), .vss(vss));
|
||||||
|
A_2P_U_X4 \pu_y (.p1(_reqB), .p2(\outy.a ), .y(\outy.d.d[0] ), .vdd(vdd), .vss(vss));
|
||||||
|
INV_X2 \inv_x (.y(_x_a_B), .a(\outx.a ), .vdd(vdd), .vss(vss));
|
||||||
|
INV_X2 \inv_y (.y(_y_a_B), .a(\outy.a ), .vdd(vdd), .vss(vss));
|
||||||
|
A_2C1N_RB_X1 \A_ack (.y(\in.a ), .c1(_en), .c2(\in.d.d[0] ), .n1(_req), .pr_B(_reset_BX), .sr_B(_reset_BX), .vdd(vdd), .vss(vss));
|
||||||
|
BUF_X2 \reset_buf (.y(_reset_BX), .a(reset_B), .vdd(vdd), .vss(vss));
|
||||||
|
A_1C1P_X1 \A_en (.y(_en), .c1(\in.a ), .p1(_req), .vdd(vdd), .vss(vss));
|
||||||
|
A_2C1P1N_RB_X1 \A_req (.y(_req), .c1(_en), .c2(_y_a_B), .p1(_x_a_B), .n1(\in.d.d[0] ), .pr_B(_reset_BX), .sr_B(_reset_BX), .vdd(vdd), .vss(vss));
|
||||||
|
A_3P_U_X4 \pu_x (.p1(\outx.a ), .p2(_reqB), .p3(_y_a_B), .y(\outx.d.d[0] ), .vdd(vdd), .vss(vss));
|
||||||
|
endmodule
|
||||||
|
|
||||||
|
//
|
||||||
|
// Verilog module for: nrn_hs_2d_inst<>
|
||||||
|
//
|
||||||
|
module nrn__hs__2d__inst(\in.d.d[0] , \in.a , \outx.d.d[0] , \outx.a , \outy.d.d[0] , \outy.a , vdd, vss);
|
||||||
|
input vdd;
|
||||||
|
input vss;
|
||||||
|
input \in.d.d[0] ;
|
||||||
|
output \in.a ;
|
||||||
|
output \outx.d.d[0] ;
|
||||||
|
input \outx.a ;
|
||||||
|
output \outy.d.d[0] ;
|
||||||
|
input \outy.a ;
|
||||||
|
|
||||||
|
// -- signals ---
|
||||||
|
reg \outx.d.d[0] ;
|
||||||
|
wire \outy.a ;
|
||||||
|
wire \in.d.d[0] ;
|
||||||
|
reg \outy.d.d[0] ;
|
||||||
|
reg _reset_B;
|
||||||
|
wire \outx.a ;
|
||||||
|
reg \in.a ;
|
||||||
|
|
||||||
|
// --- instances
|
||||||
|
_0_0tmpl_0_0dataflow__neuro_0_0nrn__hs__2d \b (.\in.d.d[0] (\in.d.d[0] ), .\in.a (\in.a ), .\outx.d.d[0] (\outx.d.d[0] ), .\outx.a (\outx.a ), .\outy.d.d[0] (\outy.d.d[0] ), .\outy.a (\outy.a ), .reset_B(_reset_B), .vdd(vdd), .vss(vss));
|
||||||
|
endmodule
|
||||||
|
|
||||||
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
@@ -39,12 +39,11 @@ open std::data;
|
|||||||
open tmpl::dataflow_neuro;
|
open tmpl::dataflow_neuro;
|
||||||
|
|
||||||
defproc chip_texel_test (bd<14> in; bd<14> out; Mx1of2<8> reg_data[16];
|
defproc chip_texel_test (bd<14> in; bd<14> out; Mx1of2<8> reg_data[16];
|
||||||
bool? bd_dly_cfg[4], bd_dly_cfg2[2], loopback_en){
|
bool? bd_dly_cfg[4], bd_dly_cfg2[2], loopback_en, _reset_B){
|
||||||
|
|
||||||
bool _reset_B;
|
// prs {
|
||||||
prs {
|
// Reset => _reset_B-
|
||||||
Reset => _reset_B-
|
// }
|
||||||
}
|
|
||||||
power supply;
|
power supply;
|
||||||
supply.vdd = Vdd;
|
supply.vdd = Vdd;
|
||||||
supply.vss = GND;
|
supply.vss = GND;
|
||||||
|
|||||||
File diff suppressed because it is too large.
Load diff
Reference in new issue
Block a user