Added stuff for line end pull U/D

This commit is contained in:
2022-03-04 12:33:49 +01:00
parent 0e9f2ae506
commit 1abcc9dc55
7 changed files with 843 additions and 0 deletions

View File

@ -0,0 +1,17 @@
t.in.a t.lepu.nor_out t.lepu.__out t.lepu.buf1._y t.lepu._out t.out t.lepu.buf2._y
1 t.in.a : 0
7093 t.lepu.buf1._y : 1 [by t.in.a:=0]
17560 t.lepu._out : 0 [by t.lepu.buf1._y:=1]
17562 t.lepu.nor_out : 1 [by t.lepu._out:=0]
22313 t.lepu.buf2._y : 1 [by t.lepu._out:=0]
23450 t.lepu.__out : 0 [by t.lepu.buf2._y:=1]
yo man
23450 Reset : 0
23564 t._reset_B : 1 [by Reset:=0]
88930 t.lepu.nor_out : 0 [by t._reset_B:=1]
90656 t.out : 1 [by t.lepu.nor_out:=0]
90656 t.in.a : 1
90695 t.lepu.buf1._y : 0 [by t.in.a:=1]
90710 t.lepu._out : 1 [by t.lepu.buf1._y:=0]
91201 t.lepu.buf2._y : 0 [by t.lepu._out:=1]
91214 t.lepu.__out : 1 [by t.lepu.buf2._y:=0]

View File

@ -0,0 +1,42 @@
= "GND" "GND"
= "Vdd" "Vdd"
= "Reset" "Reset"
"Reset"->"t._reset_B"-
~("Reset")->"t._reset_B"+
= "t._reset_B" "t.lepu.reset_B"
~"t.lepu.pull_up.a"->"t.lepu.pull_up.y"+
"t.lepu.aenor.a"|"t.lepu.aenor.b"->"t.lepu.aenor.y"-
~("t.lepu.aenor.a"|"t.lepu.aenor.b")->"t.lepu.aenor.y"+
= "t.lepu._out" "t.lepu.aenor.a"
= "t.lepu._out" "t.lepu.buf2.a"
= "t.lepu._out" "t.lepu.buf1.y"
= "t.lepu.nor_out" "t.lepu.pull_up.a"
= "t.lepu.nor_out" "t.lepu.aenor.y"
"t.lepu.buf1.a"->"t.lepu.buf1._y"-
~("t.lepu.buf1.a")->"t.lepu.buf1._y"+
"t.lepu.buf1._y"->"t.lepu.buf1.y"-
~("t.lepu.buf1._y")->"t.lepu.buf1.y"+
= "t.lepu.reset_B" "t.lepu.aenor.b"
= "t.lepu.supply.vdd" "t.lepu.aenor.vdd"
= "t.lepu.supply.vdd" "t.lepu.buf2.vdd"
= "t.lepu.supply.vdd" "t.lepu.buf1.vdd"
= "t.lepu.supply.vss" "t.lepu.aenor.vss"
= "t.lepu.supply.vss" "t.lepu.buf2.vss"
= "t.lepu.supply.vss" "t.lepu.buf1.vss"
= "t.lepu.__out" "t.lepu.buf2.y"
"t.lepu.buf2.a"->"t.lepu.buf2._y"-
~("t.lepu.buf2.a")->"t.lepu.buf2._y"+
"t.lepu.buf2._y"->"t.lepu.buf2.y"-
~("t.lepu.buf2._y")->"t.lepu.buf2.y"+
= "t.lepu.in.d.d[0]" "t.lepu.in.r"
= "t.lepu.in.a" "t.lepu.buf1.a"
= "t.lepu.in.d.d[0]" "t.lepu.in.r"
= "t.lepu.out" "t.lepu.pull_up.y"
= "Vdd" "t.lepu.supply.vdd"
= "GND" "t.lepu.supply.vss"
= "t.out" "t.lepu.out"
= "t.in.d.d[0]" "t.in.r"
= "t.in.r" "t.lepu.in.r"
= "t.in.a" "t.lepu.in.a"
= "t.in.d.d[0]" "t.lepu.in.d.d[0]"
= "t.in.d.d[0]" "t.in.r"

View File

@ -0,0 +1,48 @@
/*************************************************************************
*
* 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/primitives.act";
import globals;
open tmpl::dataflow_neuro;
defproc lepu (a1of1 in; bool! out){
line_end_pull_up lepu(.in=in, .out=out);
//Low active Reset
bool _reset_B;
prs {
Reset => _reset_B-
}
lepu.supply.vss = GND;
lepu.supply.vdd = Vdd;
lepu.reset_B = _reset_B;
}
lepu t;

View File

@ -0,0 +1,15 @@
watchall
set t.in.a 0
cycle
system "echo 'yo man'"
set Reset 0
cycle
set t.in.a 1
cycle
assert t.out 1