Add pullup and pulldown devices.
This commit is contained in:
parent
3ca55bf327
commit
a52b34cb64
|
|
@ -17,7 +17,7 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||
*/
|
||||
#if !defined(WINNT) && !defined(macintosh)
|
||||
#ident "$Id: design_dump.cc,v 1.112 2001/04/22 23:09:46 steve Exp $"
|
||||
#ident "$Id: design_dump.cc,v 1.113 2001/04/29 20:19:10 steve Exp $"
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
|
@ -298,6 +298,12 @@ void NetLogic::dump_node(ostream&o, unsigned ind) const
|
|||
case OR:
|
||||
o << "or";
|
||||
break;
|
||||
case PULLDOWN:
|
||||
o << "pulldown";
|
||||
break;
|
||||
case PULLUP:
|
||||
o << "pullup";
|
||||
break;
|
||||
case RNMOS:
|
||||
o << "rnmos";
|
||||
break;
|
||||
|
|
@ -936,6 +942,9 @@ void Design::dump(ostream&o) const
|
|||
|
||||
/*
|
||||
* $Log: design_dump.cc,v $
|
||||
* Revision 1.113 2001/04/29 20:19:10 steve
|
||||
* Add pullup and pulldown devices.
|
||||
*
|
||||
* Revision 1.112 2001/04/22 23:09:46 steve
|
||||
* More UDP consolidation from Stephan Boettcher.
|
||||
*
|
||||
|
|
|
|||
13
elaborate.cc
13
elaborate.cc
|
|
@ -17,7 +17,7 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||
*/
|
||||
#if !defined(WINNT) && !defined(macintosh)
|
||||
#ident "$Id: elaborate.cc,v 1.212 2001/04/28 23:18:08 steve Exp $"
|
||||
#ident "$Id: elaborate.cc,v 1.213 2001/04/29 20:19:10 steve Exp $"
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
|
@ -335,6 +335,14 @@ void PGBuiltin::elaborate(Design*des, const string&path) const
|
|||
cur[idx] = new NetLogic(scope, inm, pin_count(),
|
||||
NetLogic::PMOS);
|
||||
break;
|
||||
case PULLDOWN:
|
||||
cur[idx] = new NetLogic(scope, inm, pin_count(),
|
||||
NetLogic::PULLDOWN);
|
||||
break;
|
||||
case PULLUP:
|
||||
cur[idx] = new NetLogic(scope, inm, pin_count(),
|
||||
NetLogic::PULLUP);
|
||||
break;
|
||||
case XNOR:
|
||||
cur[idx] = new NetLogic(scope, inm, pin_count(),
|
||||
NetLogic::XNOR);
|
||||
|
|
@ -2307,6 +2315,9 @@ Design* elaborate(const map<string,Module*>&modules,
|
|||
|
||||
/*
|
||||
* $Log: elaborate.cc,v $
|
||||
* Revision 1.213 2001/04/29 20:19:10 steve
|
||||
* Add pullup and pulldown devices.
|
||||
*
|
||||
* Revision 1.212 2001/04/28 23:18:08 steve
|
||||
* UDP instances need not have user supplied names.
|
||||
*
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||
*/
|
||||
#if !defined(WINNT) && !defined(macintosh)
|
||||
#ident "$Id: ivl_target.h,v 1.55 2001/04/26 05:12:02 steve Exp $"
|
||||
#ident "$Id: ivl_target.h,v 1.56 2001/04/29 20:19:10 steve Exp $"
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
|
@ -174,6 +174,8 @@ typedef enum ivl_logic_e {
|
|||
IVL_LO_NOTIF0,
|
||||
IVL_LO_NOTIF1,
|
||||
IVL_LO_OR,
|
||||
IVL_LO_PULLDOWN,
|
||||
IVL_LO_PULLUP,
|
||||
IVL_LO_RNMOS,
|
||||
IVL_LO_RPMOS,
|
||||
IVL_LO_PMOS,
|
||||
|
|
@ -792,6 +794,9 @@ _END_DECL
|
|||
|
||||
/*
|
||||
* $Log: ivl_target.h,v $
|
||||
* Revision 1.56 2001/04/29 20:19:10 steve
|
||||
* Add pullup and pulldown devices.
|
||||
*
|
||||
* Revision 1.55 2001/04/26 05:12:02 steve
|
||||
* Implement simple MUXZ for ?: operators.
|
||||
*
|
||||
|
|
|
|||
14
netlist.h
14
netlist.h
|
|
@ -19,7 +19,7 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||
*/
|
||||
#if !defined(WINNT) && !defined(macintosh)
|
||||
#ident "$Id: netlist.h,v 1.204 2001/04/24 02:23:58 steve Exp $"
|
||||
#ident "$Id: netlist.h,v 1.205 2001/04/29 20:19:10 steve Exp $"
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
|
@ -995,12 +995,17 @@ class NetConst : public NetNode {
|
|||
* 0 -- output
|
||||
* 1 -- input data
|
||||
* 2 -- enable
|
||||
*
|
||||
* The pullup and pulldown gates have no inputs at all, and pin0 is
|
||||
* the output 1 or 0, depending on the gate type. It is the strength
|
||||
* of that value that is important.
|
||||
*/
|
||||
class NetLogic : public NetNode {
|
||||
|
||||
public:
|
||||
enum TYPE { AND, BUF, BUFIF0, BUFIF1, NAND, NMOS, NOR, NOT, NOTIF0,
|
||||
NOTIF1, OR, RNMOS, RPMOS, PMOS, XNOR, XOR };
|
||||
enum TYPE { AND, BUF, BUFIF0, BUFIF1, NAND, NMOS, NOR, NOT,
|
||||
NOTIF0, NOTIF1, OR, PULLDOWN, PULLUP, RNMOS, RPMOS,
|
||||
PMOS, XNOR, XOR };
|
||||
|
||||
explicit NetLogic(NetScope*s, const string&n, unsigned pins, TYPE t);
|
||||
|
||||
|
|
@ -2802,6 +2807,9 @@ extern ostream& operator << (ostream&, NetNet::Type);
|
|||
|
||||
/*
|
||||
* $Log: netlist.h,v $
|
||||
* Revision 1.205 2001/04/29 20:19:10 steve
|
||||
* Add pullup and pulldown devices.
|
||||
*
|
||||
* Revision 1.204 2001/04/24 02:23:58 steve
|
||||
* Support for UDP devices in VVP (Stephen Boettcher)
|
||||
*
|
||||
|
|
|
|||
11
t-dll.cc
11
t-dll.cc
|
|
@ -17,7 +17,7 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||
*/
|
||||
#if !defined(WINNT) && !defined(macintosh)
|
||||
#ident "$Id: t-dll.cc,v 1.36 2001/04/26 05:12:02 steve Exp $"
|
||||
#ident "$Id: t-dll.cc,v 1.37 2001/04/29 20:19:10 steve Exp $"
|
||||
#endif
|
||||
|
||||
# include "compiler.h"
|
||||
|
|
@ -366,6 +366,12 @@ void dll_target::logic(const NetLogic*net)
|
|||
case NetLogic::OR:
|
||||
obj->type_ = IVL_LO_OR;
|
||||
break;
|
||||
case NetLogic::PULLDOWN:
|
||||
obj->type_ = IVL_LO_PULLDOWN;
|
||||
break;
|
||||
case NetLogic::PULLUP:
|
||||
obj->type_ = IVL_LO_PULLUP;
|
||||
break;
|
||||
case NetLogic::RNMOS:
|
||||
obj->type_ = IVL_LO_RNMOS;
|
||||
break;
|
||||
|
|
@ -879,6 +885,9 @@ extern const struct target tgt_dll = { "dll", &dll_target_obj };
|
|||
|
||||
/*
|
||||
* $Log: t-dll.cc,v $
|
||||
* Revision 1.37 2001/04/29 20:19:10 steve
|
||||
* Add pullup and pulldown devices.
|
||||
*
|
||||
* Revision 1.36 2001/04/26 05:12:02 steve
|
||||
* Implement simple MUXZ for ?: operators.
|
||||
*
|
||||
|
|
|
|||
Loading…
Reference in New Issue