Fix connection of Direction of LMP_CLSHIFT

to constant values. Remember to add a signal
 to the nexus and connect the receiver in vvm.
This commit is contained in:
steve 2000-05-07 19:40:26 +00:00
parent b28f258463
commit ca6631fdda
3 changed files with 31 additions and 3 deletions

View File

@ -17,7 +17,7 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/
#if !defined(WINNT) && !defined(macintosh)
#ident "$Id: elab_net.cc,v 1.34 2000/05/07 04:37:56 steve Exp $"
#ident "$Id: elab_net.cc,v 1.35 2000/05/07 19:40:26 steve Exp $"
#endif
# include "PExpr.h"
@ -789,8 +789,10 @@ NetNet* PEBinary::elaborate_net_shift_(Design*des, const string&path,
connect(rsig->pin(idx), gate->pin_Distance(idx));
if (op_ == 'r') {
NetTmp*tmp = new NetTmp(scope, des->local_symbol(path));
NetConst*dir = new NetConst(des->local_symbol(path), verinum::V1);
connect(dir->pin(0), gate->pin_Direction());
connect(tmp->pin(0), gate->pin_Direction());
des->add_node(dir);
}
@ -1462,6 +1464,11 @@ NetNet* PEUnary::elaborate_net(Design*des, const string&path,
/*
* $Log: elab_net.cc,v $
* Revision 1.35 2000/05/07 19:40:26 steve
* Fix connection of Direction of LMP_CLSHIFT
* to constant values. Remember to add a signal
* to the nexus and connect the receiver in vvm.
*
* Revision 1.34 2000/05/07 04:37:56 steve
* Carry strength values from Verilog source to the
* pform and netlist for gates.

View File

@ -17,7 +17,7 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/
#if !defined(WINNT) && !defined(macintosh)
#ident "$Id: nexus_from_link.cc,v 1.3 2000/05/07 04:37:56 steve Exp $"
#ident "$Id: nexus_from_link.cc,v 1.4 2000/05/07 19:40:26 steve Exp $"
#endif
# include "netmisc.h"
@ -69,6 +69,7 @@ string nexus_from_link(const Link*lnk)
obj->name() << " pin " << pin << "(" <<
lnk->get_name() << "<" << lnk->get_inst() << ">)"
" type=" << typeid(*obj).name() << "?" << endl;
}
assert(sig);
ostrstream tmp;
@ -82,6 +83,11 @@ string nexus_from_link(const Link*lnk)
/*
* $Log: nexus_from_link.cc,v $
* Revision 1.4 2000/05/07 19:40:26 steve
* Fix connection of Direction of LMP_CLSHIFT
* to constant values. Remember to add a signal
* to the nexus and connect the receiver in vvm.
*
* Revision 1.3 2000/05/07 04:37:56 steve
* Carry strength values from Verilog source to the
* pform and netlist for gates.

View File

@ -17,7 +17,7 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/
#if !defined(WINNT) && !defined(macintosh)
#ident "$Id: t-vvm.cc,v 1.145 2000/05/07 18:20:07 steve Exp $"
#ident "$Id: t-vvm.cc,v 1.146 2000/05/07 19:40:26 steve Exp $"
#endif
# include <iostream>
@ -1262,6 +1262,16 @@ void target_vvm::lpm_clshift(ostream&os, const NetCLShift*gate)
<< ".key_Distance(" << idx << "));" << endl;
}
/* Connect the Direction pin... */
if (gate->pin_Direction().is_linked()) {
string nexus = nexus_from_link(&gate->pin_Direction());
unsigned ncode = nexus_wire_map[nexus];
init_code << " nexus_wire_table["<<ncode<<"].connect(&"
<< mname << ", " << mname
<< ".key_Direction(0));" << endl;
}
/* Connect the output drivers to the nexus nodes. */
for (unsigned idx = 0 ; idx < gate->width() ; idx += 1) {
string nexus = nexus_from_link(&gate->pin_Result(idx));
@ -2792,6 +2802,11 @@ extern const struct target tgt_vvm = {
};
/*
* $Log: t-vvm.cc,v $
* Revision 1.146 2000/05/07 19:40:26 steve
* Fix connection of Direction of LMP_CLSHIFT
* to constant values. Remember to add a signal
* to the nexus and connect the receiver in vvm.
*
* Revision 1.145 2000/05/07 18:20:07 steve
* Import MCD support from Stephen Tell, and add
* system function parameter support to the IVL core.