initial structural memory propagation (Stephan Boettcher)
This commit is contained in:
parent
167f94bdbf
commit
03b635604a
|
|
@ -17,7 +17,7 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||
*/
|
||||
#if !defined(WINNT)
|
||||
#ident "$Id: compile.cc,v 1.98 2001/08/26 22:59:32 steve Exp $"
|
||||
#ident "$Id: compile.cc,v 1.99 2001/09/11 01:54:58 steve Exp $"
|
||||
#endif
|
||||
|
||||
# include "arith.h"
|
||||
|
|
@ -1109,6 +1109,12 @@ void compile_memory_port(char *label, char *memid,
|
|||
define_functor_symbol(label, ix);
|
||||
free(label);
|
||||
|
||||
for (unsigned i=0; i<nfun; i++) {
|
||||
vvp_ipoint_t iix = ipoint_index(ix, i);
|
||||
functor_t ip = functor_index(iix);
|
||||
ip->ival = 0xaa;
|
||||
}
|
||||
|
||||
inputs_connect(ix, argc, argv);
|
||||
free(argv);
|
||||
|
||||
|
|
@ -1629,6 +1635,9 @@ vvp_ipoint_t debug_lookup_functor(const char*name)
|
|||
|
||||
/*
|
||||
* $Log: compile.cc,v $
|
||||
* Revision 1.99 2001/09/11 01:54:58 steve
|
||||
* initial structural memory propagation (Stephan Boettcher)
|
||||
*
|
||||
* Revision 1.98 2001/08/26 22:59:32 steve
|
||||
* Add the assign/x0 and set/x opcodes.
|
||||
*
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||
*/
|
||||
#if !defined(WINNT)
|
||||
#ident "$Id: memory.cc,v 1.6 2001/08/09 19:37:05 steve Exp $"
|
||||
#ident "$Id: memory.cc,v 1.7 2001/09/11 01:54:58 steve Exp $"
|
||||
#endif
|
||||
|
||||
#include "memory.h"
|
||||
|
|
@ -163,6 +163,7 @@ void memory_new(vvp_memory_t mem, char *name, int msb, int lsb,
|
|||
mem->name = name;
|
||||
}
|
||||
|
||||
static void update_addr(vvp_memory_port_t addr);
|
||||
|
||||
void memory_port_new(vvp_memory_t mem, vvp_ipoint_t ix,
|
||||
unsigned nbits, unsigned bitoff,
|
||||
|
|
@ -192,7 +193,6 @@ void memory_port_new(vvp_memory_t mem, vvp_ipoint_t ix,
|
|||
vvp_ipoint_t ifdx = ipoint_index(ix, idx);
|
||||
functor_t iobj = functor_index(ifdx);
|
||||
|
||||
iobj->ival = 0xaa;
|
||||
iobj->oval = 0x02;
|
||||
iobj->mode = M42;
|
||||
iobj->out = 0;
|
||||
|
|
@ -201,6 +201,8 @@ void memory_port_new(vvp_memory_t mem, vvp_ipoint_t ix,
|
|||
|
||||
a->cur_addr = VVP_MEMORY_NO_ADDR;
|
||||
a->cur_bits = 0x0;
|
||||
|
||||
update_addr(a);
|
||||
}
|
||||
|
||||
void memory_init_nibble(vvp_memory_t mem, unsigned idx, unsigned char val)
|
||||
|
|
@ -265,8 +267,6 @@ unsigned char functor_get_input(vvp_ipoint_t ip)
|
|||
return (bits >> (2*ipoint_port(ip))) & 3;
|
||||
}
|
||||
|
||||
static void update_addr(vvp_memory_port_t addr);
|
||||
|
||||
static
|
||||
bool update_addr_bit(vvp_memory_port_t addr, vvp_ipoint_t ip)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue