Cary R
951f9f2bbf
Add vpiType to the vpi_get_str() function.
...
vpi_get_str() can now return a reasonable value for most of the
types used in vvp. I'm not certain I got all of them, but they
are easy to add if any are missing. I also fixed a couple of
typos that I found while looking for all the different types.
2007-08-16 10:48:28 -07:00
Stephen Williams
1942899a3f
Fix return of net strength value.
...
The calculated return value for the calculated strength value of
a net was left dangling. This patch fixes that. See pr1770199 in
the regression test suite.
Signed-off-by: Stephen Williams <steve@icarus.com>
2007-08-10 21:51:13 -07:00
Cary R
1aa4394d75
Check the random function seed type and a fix to handle time variables.
...
The standard states that the seed for the random functions should be
an integer/time variable or a register. This patch fixes the compiletf
routines to check for this. There is also a small patch to
vvp/vpi_signal.cc that removes an assert that was failing and replaces
it with appropriate code. The assert was verifying that the source was
not bigger than an integer. The problem with this is that a time
variable or register may be bigger than an integer. I altered the code
to remove the assert and copy only the lower (8 * sizeof integer) bits.
The potential overflow/loss of precision is not checked. This passes
the regression tests.
2007-07-25 21:36:06 -07:00
Stephen Williams
21d6fb6bc6
Fix runtime crash dumping VCD
...
Words of net arrays were incorrectly added to the scope. They should
only be attached to the array, and accessed as a word of the array.
Signed-off-by: Stephen Williams <steve@icarus.com>
2007-06-30 09:34:02 -07:00
steve
91d84e7dc7
Major rework of array handling. Memories are replaced with the
...
more general concept of arrays. The NetMemory and NetEMemory
classes are removed from the ivl core program, and the IVL_LPM_RAM
lpm type is removed from the ivl_target API.
2007-01-16 05:44:14 +00:00
steve
316422d93b
Handle vpiRealVal reads of signals, and real anyedge events.
2006-12-09 19:06:53 +00:00
steve
9c16c34422
Put strings for reg objects.
2006-02-21 05:31:54 +00:00
steve
50ad415c0d
Support string values for memory words.
2006-02-21 02:39:27 +00:00
steve
0873c52474
vpi_signal supports vvp_fun_signal_vec types.
2005-11-30 00:42:14 +00:00
steve
35951510c5
Put vec8 and vec4 nets into seperate net classes.
2005-11-25 17:55:26 +00:00
steve
01a6dd61ca
Support put_value of string values.
2005-09-21 01:04:59 +00:00
steve
a8d49921ee
gcc4 compile errors.
2005-07-14 23:34:18 +00:00
steve
80cac983c6
More unified vec4 to hex string functions.
2005-06-13 00:54:04 +00:00
steve
2736859d8f
Remove useless references to functor.h
2005-06-12 01:10:26 +00:00
steve
a3f696cd06
Add vvp driver functor for logic outputs,
...
Add ostream output operators for debugging.
2005-04-13 06:34:20 +00:00
steve
313502f360
Implement VPI access to signal strengths,
...
Fix resolution of ambiguous drive pairs,
Fix spelling of scalar.
2005-03-12 04:27:42 +00:00
steve
85286cc086
Rearrange how memories are supported as vvp_vector4 arrays.
2005-03-03 04:33:10 +00:00
steve
65e9b6be12
Rework of internals to carry vectors through nexus instead
...
of single bits. Make the ivl, tgt-vvp and vvp initial changes
down this path.
2004-12-11 02:31:25 +00:00
steve
a7ae8adf9b
Support delayed/non-blocking assignment to reals and others.
2004-05-19 03:26:24 +00:00
steve
33783385d2
Get vpiModule of signals.
2004-03-09 03:11:02 +00:00
steve
a4c5ff0bd3
vpiStringVal does not include leading nulls.
2004-02-20 01:52:25 +00:00
steve
8d2858c555
vpiStringVal writes need to set all the bits of a reg.
2004-02-19 21:31:59 +00:00
steve
3dc73aa292
vpiIntVal treats x and z bits as 0.
2003-08-15 18:23:56 +00:00
steve
1c65ea08e8
1) Adds configure logic to clean up compiler warnings
...
2) adds acc_compare_handle, acc_fetch_range, acc_next_scope and
tf_isetrealdelay, acc_handle_scope
3) makes acc_next reentrant
4) adds basic vpiWire type support
5) fills in some acc_object_of_type() and acc_fetch_{full}type()
6) add vpiLeftRange/RigthRange to signals
2003-06-04 01:56:20 +00:00
steve
78a2ef04a9
Add put_value with transport delay.
2003-05-02 04:29:57 +00:00
steve
8ac644c746
Add vpoiScalarVal support for signals.
2003-04-12 18:56:57 +00:00
steve
ef47ea31fa
Use hashed name strings for identifiers.
2003-03-06 04:32:00 +00:00
steve
74192632fa
Permanent allocate vpiSignals more efficiently.
2003-02-16 23:40:05 +00:00
steve
b726395d1e
Spelling fixes.
2003-02-09 23:33:26 +00:00
steve
e6eae5fd15
Allocate res-buf in bigger chunks
2003-01-07 18:07:50 +00:00
steve
ef55086543
Support put of vpiStringVal to signals.
2002-11-25 23:33:45 +00:00
steve
0277035496
Fix wrecked rbuf in vpi_get_str of signals and memories.
2002-09-11 16:06:57 +00:00
steve
33f462fdf6
Actually set strength pointer when getting strength val.
2002-09-10 02:27:11 +00:00
steve
ea21fab379
Add support for %v is the display system task.
...
Change the encoding of H and L outputs from
the bufif devices so that they are logic x.
2002-09-06 04:56:28 +00:00
steve
52bf4e613f
conditional ident string using autoconfig.
2002-08-12 01:34:58 +00:00
steve
e2f537628f
integral type/ptrdiff_t warning.
2002-07-23 15:11:41 +00:00
steve
7fcaeacd65
Careful not to overrun vector buffer.
2002-07-23 02:36:34 +00:00
steve
2df2619029
Support put of wide vpiVectorVal to signal.
2002-07-19 00:36:36 +00:00
steve
e1a4e27173
Dynamic resizevpi result buf in more places.
2002-07-09 03:24:37 +00:00
steve
fd8ceac170
Names of vpi objects allocated as vpip_strings.
2002-07-05 17:14:15 +00:00
steve
5792220dcb
Remove the vpi object symbol table after compile.
2002-07-05 02:50:57 +00:00
steve
d3e63088d8
Dynamic size result buffer for _str and _get_value functions.
2002-07-03 23:39:57 +00:00
steve
ccbb1e5f5a
don't pollute name space
...
fix vecval for Z/X cases
2002-07-03 23:16:27 +00:00
steve
3f80bead1b
vpiName, vpiFullName support in memory types,
...
length checks for *_get_str() buffers,
temporary buffers for *_get_str() data,
dynamic storage for vpi_get_data() in memory types
shared with signal white space
2002-07-03 02:09:38 +00:00
steve
99b3cc4464
vpiVectorVal of very wide signals.
2002-06-30 02:52:36 +00:00
steve
f4a4ee00d0
Add support for special integer vectors.
2002-06-21 04:58:55 +00:00
steve
48da46986b
Support set by string for reg objects.
2002-05-15 04:48:46 +00:00
steve
ec82af0c74
Use Larrys bits-to-decimal-string code.
2002-02-03 01:01:51 +00:00
steve
77c4c88a4c
String prints of non-round vectors (PR378)
2002-01-09 03:29:12 +00:00
steve
125c631091
Remove result length restrictions for vpi_get_value.
2001-12-18 05:31:54 +00:00
steve
ec4f8c80d5
Support functor delays for gates and UDP devices.
...
(Stephan Boettcher)
2001-12-06 03:31:24 +00:00
steve
fa23dafdae
Use functor pointers where vvp_ipoint_t is unneeded.
2001-11-07 03:34:41 +00:00
steve
a75326e2e0
Rewrite the functor type to have fewer functor modes,
...
and use objects to manage the different types.
(Stephan Boettcher)
2001-10-31 04:27:46 +00:00
steve
3924c51097
Support vpiVectorVal for signals. (Philip Blundell)
2001-10-18 04:52:31 +00:00
steve
706f2ffc89
Support getting scope of scope, and scope of signals.
2001-10-15 01:49:50 +00:00
steve
41384a0e41
Reduce VCD output by removing duplicates. (Stephan Boettcher)
2001-09-30 05:18:46 +00:00
steve
b2b8b89cd8
Make configure detect malloc.h
2001-09-15 18:27:04 +00:00
steve
606c1d38bb
Nets (wires) do not use their own functors.
...
Modifications to propagation of values.
(Stephan Boettcher)
2001-08-09 19:38:23 +00:00
steve
82bccd335d
Initial implementation of vvp_fvectors.
...
(Stephan Boettcher)
2001-08-08 01:05:06 +00:00
steve
6d5fcf5853
Implement string value for signals.
2001-07-24 01:34:56 +00:00
steve
cfbfd9ec1d
Properly pad unknow values. (Stephan Boettcher)
2001-07-16 18:48:07 +00:00
steve
a7328ecce1
Rewire signal callback support for fast lookup. (Stephan Boettcher)
2001-07-13 03:02:34 +00:00
steve
2531ed89cd
Properly support signal full names.
2001-06-29 00:44:56 +00:00
steve
1f3eedcfd7
Some documentation of callback behavior.
2001-06-21 23:05:08 +00:00
steve
541f269c20
Support cbValueChange callbacks.
2001-06-21 22:54:12 +00:00
steve
19251f7a79
Propagate strength-values instead of drive strengths.
2001-05-30 03:02:35 +00:00
steve
150fc6f3ee
correctly interpret signed decimal values.
2001-05-22 04:08:49 +00:00
steve
e85b669307
Add the glossary file.
2001-05-15 15:09:08 +00:00
steve
bf96986c38
test width of target with bit size of long.
2001-05-14 00:42:32 +00:00
steve
a88f030b52
Now that the interactive debugger exists,
...
there is no use for the output dump.
2001-05-09 04:23:18 +00:00
steve
2e12635494
Add to the debugger the ability to view and
...
break on functors.
Add strengths to functors at compile time,
and Make functors pass their strengths as they
propagate their output.
2001-05-08 23:32:26 +00:00
steve
8b5f62a5e5
Support $deposit to a wire or reg.
2001-04-26 00:01:33 +00:00
steve
aec5841c7f
Implement vpi_put_value for signals.
2001-04-25 04:45:52 +00:00
steve
6a236061de
Add the .var/s and .net/s statements for VPI support.
2001-04-05 01:34:26 +00:00
steve
6322400b83
support decimal strings from signals.
2001-04-04 17:43:19 +00:00
steve
f7f5ccce05
Add vpiOctStrVal access to signals.
2001-03-25 20:45:09 +00:00
steve
31b0037299
Support making hex strings.
2001-03-25 19:38:05 +00:00
steve
9e04ef4abd
Add the .net statement.
2001-03-25 00:35:35 +00:00
steve
2b8d9abd3e
Allow var objects as vpiHandle arguments to %vpi_call.
2001-03-21 05:13:03 +00:00
steve
52c7108782
Add support for variable vectors.
2001-03-20 06:16:23 +00:00