From 8b4befd4fcfb38dcf9e3d62089155658ba2e9093 Mon Sep 17 00:00:00 2001 From: steve Date: Tue, 1 May 2001 01:09:39 +0000 Subject: [PATCH] Add support for memory objects. (Stephan Boettcher) --- vvp/Makefile.in | 4 +- vvp/README.txt | 73 +++++++- vvp/codes.h | 13 +- vvp/compile.cc | 108 +++++++++++- vvp/compile.h | 19 ++- vvp/lexor.lex | 9 +- vvp/memory.cc | 422 ++++++++++++++++++++++++++++++++++++++++++++++ vvp/memory.h | 57 +++++++ vvp/parse.y | 47 +++++- vvp/parse_misc.cc | 12 +- vvp/parse_misc.h | 14 +- vvp/schedule.cc | 65 ++++++- vvp/schedule.h | 19 ++- vvp/vthread.cc | 57 ++++++- 14 files changed, 894 insertions(+), 25 deletions(-) create mode 100644 vvp/memory.cc create mode 100644 vvp/memory.h diff --git a/vvp/Makefile.in b/vvp/Makefile.in index 243340d9d..4d91b9d1d 100644 --- a/vvp/Makefile.in +++ b/vvp/Makefile.in @@ -16,7 +16,7 @@ # 59 Temple Place - Suite 330 # Boston, MA 02111-1307, USA # -#ident "$Id: Makefile.in,v 1.14 2001/04/24 02:23:59 steve Exp $" +#ident "$Id: Makefile.in,v 1.15 2001/05/01 01:09:39 steve Exp $" # # SHELL = /bin/sh @@ -61,7 +61,7 @@ V = vpi_modules.o vpi_const.o vpi_iter.o vpi_mcd.o vpi_priv.o \ vpi_scope.o vpi_signal.o vpi_tasks.o vpi_time.o O = main.o parse.o parse_misc.o lexor.o compile.o functor.o symbols.o \ -codes.o vthread.o schedule.o tables.o udp.o $V +codes.o vthread.o schedule.o tables.o udp.o memory.o $V vvp: $O $(CXX) $(rdynamic) $(CXXFLAGS) $(LDFLAGS) -o vvp $O $(dllib) diff --git a/vvp/README.txt b/vvp/README.txt index c49fa7723..d91fdc5df 100644 --- a/vvp/README.txt +++ b/vvp/README.txt @@ -1,7 +1,7 @@ /* * Copyright (c) 2001 Stephen Williams (steve@icarus.com) * - * $Id: README.txt,v 1.20 2001/04/30 04:51:27 steve Exp $ + * $Id: README.txt,v 1.21 2001/05/01 01:09:39 steve Exp $ */ VVP SIMULATION ENGINE @@ -281,6 +281,77 @@ This prevents any real functor being created and connected, and instead leaves the input unconnected and initializes the wire with the specified value, instead of the default z. +MEMORY STATEMENTS: + +Three types of memory stetement perform (1) creation of a memory, (2) +connecting a read port to an existing memory, and (3) initializing the +memory's contents. + +