steve
bae8507c90
Implement .arith/mod.
2005-03-12 06:42:28 +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
1c5b4881d7
Handle case inequality in netlists.
2005-03-09 05:52:03 +00:00
steve
789c95b1c1
reimplement memory ports.
2005-03-09 04:52:40 +00:00
steve
85286cc086
Rearrange how memories are supported as vvp_vector4 arrays.
2005-03-03 04:33:10 +00:00
steve
589eb1d315
Implement .arith/div.
2005-02-19 01:32:52 +00:00
steve
c5e7e2ec0a
Signals may receive part vectors from %set/x0
...
instructions. Re-implement the %set/x0 to do
just that. Remove the useless %set/x0/x instruction.
2005-02-14 01:50:23 +00:00
steve
4fce321900
Support C8 constants.
2005-02-12 03:27:18 +00:00
steve
84b3e8e2dc
Get .arith/sub working.
2005-01-30 05:06:49 +00:00
steve
0609c5f18c
Use scheduler to initialize constant functor inputs.
2005-01-29 17:53:25 +00:00
steve
a121e703f3
Add vector4 implementation of .arith/mult.
2005-01-28 05:34:25 +00:00
steve
6c5e840617
Implement vectored CMP_EQ and NE
2005-01-22 16:21:11 +00:00
steve
b86fdd6bbc
Implement the .cmp/eeq LPM node.
2005-01-22 01:06:20 +00:00
steve
1c3668ea7f
Reimplement comparators as vvp_vector4_t nodes.
2005-01-16 04:19:08 +00:00
steve
b1b93f860c
Fix uninitialized fun pointer for resolver nodes.
2004-12-31 05:54:46 +00:00
steve
26d97558c4
Replace single release with release/net and release/reg.
2004-12-17 04:47:47 +00:00
steve
78dda42493
Add the force/v instruction.
2004-12-15 17:17:42 +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
e4ae832153
Clean up spurious trailing white space.
2004-10-04 01:10:51 +00:00
steve
57b8ca191f
Add signed LPM divide.
2004-06-30 02:15:57 +00:00
steve
050ec6f325
Add signed modulus operator.
2004-06-19 15:52:53 +00:00
steve
35619771dd
Add structural equality compare nodes.
2004-06-16 16:33:25 +00:00
steve
a7ae8adf9b
Support delayed/non-blocking assignment to reals and others.
2004-05-19 03:26:24 +00:00
steve
59c5759fdf
Add $push flag for threads.
2003-09-04 20:26:30 +00:00
steve
d653a7e88d
Add support for triand and trior.
2003-07-30 01:13:28 +00:00
steve
c6cf7e017b
Forgot to read the /x parameter for %load/x
2003-07-22 20:30:24 +00:00
steve
dccd7ec7e2
Remove the vvp_cpoint_t indirect code pointer.
2003-07-03 20:03:36 +00:00
steve
71a404a546
Add arithmetic shift operators.
2003-06-18 03:55:18 +00:00
steve
96ca885aca
Remove short int restrictions from vvp opcodes.
2003-06-17 19:17:42 +00:00
steve
e157b3f9c5
Add the set/x0/x instruction.
2003-05-26 04:44:54 +00:00
steve
c29b1639e1
Useless cast.
2003-05-25 03:04:55 +00:00
steve
639d3aad1e
More thorough overflow error message.
2003-05-24 02:48:37 +00:00
steve
3770dda0b8
Assert that parameters fix into opcode.
2003-05-23 03:44:34 +00:00
steve
54ea845f34
VPI Access to named events.
2003-04-23 03:09:25 +00:00
steve
2c1e36ae9a
Add signed versions of .cmp/gt/ge
2003-04-11 05:15:38 +00:00
steve
4b543de7f9
Add support for division of real operands.
2003-03-28 02:33:56 +00:00
steve
f45fd155c4
Remove the obsolete functor delete functions.
2003-03-13 04:36:57 +00:00
steve
654ad4c97e
Direct support for string parameters.
2003-03-10 23:37:07 +00:00
steve
aa3297a925
Add the cvt/vr instruction.
2003-02-27 20:36:29 +00:00
steve
b726395d1e
Spelling fixes.
2003-02-09 23:33:26 +00:00
steve
dd56d9a17c
Add the %sub/wr instruction.
2003-02-06 17:41:47 +00:00
steve
ce489d8d84
Allow $display of $simtime.
2003-02-03 01:09:20 +00:00
steve
fec6a10771
Make $time and $realtime available to $display uniquely.
2003-02-01 05:50:04 +00:00
steve
04ada23119
Support in various contexts the $realtime
...
system task.
2003-01-27 00:14:37 +00:00
steve
7de4108bad
Add %cvt/ir and %cvt/ri instructions, and support
...
real values passed as arguments to VPI tasks.
2003-01-26 18:16:22 +00:00
steve
9a5a00f836
Add thread word array, and add the instructions,
...
%add/wr, %cmp/wr, %load/wr, %mul/wr and %set/wr.
2003-01-25 23:48:05 +00:00
steve
c2070777b2
The $time system task returns the integer time
...
scaled to the local units. Change the internal
implementation of vpiSystemTime the $time functions
to properly account for this. Also add $simtime
to get the simulation time.
2002-12-21 00:55:57 +00:00
steve
03afbf157b
%set/x0 instruction to support bounds checking.
2002-11-21 22:43:13 +00:00
steve
1b84893ccb
Add the %assign/v0 instruction.
2002-11-08 04:59:57 +00:00
steve
d7ae85a13a
Add vector set and load instructions.
2002-11-07 02:32:39 +00:00
steve
3d3116d48b
Add support for binary NOR operator.
2002-09-18 04:29:55 +00:00
steve
466656b167
Allow forward references of memories.
2002-09-18 02:55:18 +00:00
steve
dac99b9374
Add support for binary nand operator.
2002-09-12 15:49:43 +00:00
steve
cbca31555d
Add the %subi instruction, and use it where possible.
2002-08-28 18:38:07 +00:00
steve
1db8319bce
Add the %load/nx opcode to index vpi nets.
2002-08-28 17:15:06 +00:00
steve
985c34bfd9
Fix behavioral eval of x?a:b expressions.
2002-08-22 03:38:40 +00:00
steve
52bf4e613f
conditional ident string using autoconfig.
2002-08-12 01:34:58 +00:00
steve
41239078a9
Fix initialization of symbol table string heap.
2002-07-15 00:21:42 +00:00
steve
54b96ea7bd
Count different types of functors.
2002-07-05 20:08:44 +00:00
steve
fd8ceac170
Names of vpi objects allocated as vpip_strings.
2002-07-05 17:14:15 +00:00
steve
a05d8c2823
Symbol table uses more efficient key string allocator,
...
and remove all the symbol tables after compile is done.
2002-07-05 04:40:59 +00:00
steve
5792220dcb
Remove the vpi object symbol table after compile.
2002-07-05 02:50:57 +00:00
steve
f4a4ee00d0
Add support for special integer vectors.
2002-06-21 04:58:55 +00:00
steve
d68153dea3
Add %cmpi/u instruction.
2002-06-02 18:55:58 +00:00
steve
1ce50993f0
Add the %muli instruction.
2002-05-31 20:04:22 +00:00
steve
b6b364a09d
Add %addi, which is faster to simulate.
2002-05-29 16:29:34 +00:00
steve
e9af0c7485
Support scope iterate over vpiNet,vpiReg/vpiMemory.
2002-05-10 16:00:57 +00:00
steve
68f1316eba
Fix uninitialized memory accesses.
2002-05-07 04:15:43 +00:00
steve
52ea13819a
Add the assign/d instruction for computed delays.
2002-04-21 22:29:49 +00:00
steve
eb27dc8db3
Support signed integer division.
2002-04-14 18:41:34 +00:00
steve
3275d1f252
Support signed expressions through to VPI.
2002-04-14 02:56:19 +00:00
steve
de252965ac
Add the .ufunc statement.
2002-03-18 00:19:34 +00:00
steve
b0a489fb7f
Debug code for write to constants.
2002-03-08 05:41:45 +00:00
steve
dee52dd2d0
Magic stime object support.
2002-01-11 05:21:47 +00:00
steve
03d188fc52
Support weak functor inputs.
2002-01-06 03:15:13 +00:00
steve
dd79885f6d
Add structural modulus support down to vvp.
2002-01-03 04:19:01 +00:00
steve
ace6b0a767
Give tri0 and tri1 their proper strengths.
2001-12-15 02:11:51 +00:00
steve
7d494fd3d5
Support tri0 and tri1 resolvers.
2001-12-15 01:54:38 +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
bf9a8f5021
Code rearrange. (Stephan Boettcher)
2001-11-06 03:07:21 +00:00
steve
7a0e73ef3d
Handle procedural constant functor pointers.
2001-11-01 04:42:39 +00:00
steve
82c0a2ebac
Add force/cassign/release/deassign support. (Stephan Boettcher)
2001-11-01 03:00:19 +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
73283768a5
Support rnpmos devices. (Philip Blundell)
2001-10-18 17:30:25 +00:00
steve
36e1eab3f4
Add arith/div object.
2001-10-16 02:47:37 +00:00
steve
a3217db7b2
Add %div support (Anthony Bybell)
2001-10-16 01:26:54 +00:00
steve
1b69bb5d2f
Handle mode-42 functor init.
2001-10-14 03:41:58 +00:00
steve
6cf2ddf541
M42 implementation of mode 2 (Stephan Boettcher)
2001-10-12 03:00:08 +00:00
steve
ad6bbe539f
functor lookup includes vpi signal search.
2001-10-12 02:53:47 +00:00
steve
f12864f69e
Propagate initial value of UDP.
2001-10-11 18:29:21 +00:00
steve
789efb9832
Collect functor reference handling into a single function. (Stephan Boettcher)
2001-10-09 16:57:47 +00:00
steve
64ff74df37
Add the PMOS and NMOS functor types.
2001-10-09 02:28:16 +00:00
steve
b2b8b89cd8
Make configure detect malloc.h
2001-09-15 18:27:04 +00:00
steve
03b635604a
initial structural memory propagation (Stephan Boettcher)
2001-09-11 01:54:58 +00:00
steve
c29e11ed36
Add the assign/x0 and set/x opcodes.
2001-08-26 22:59:32 +00:00
steve
794ce68a6c
Only use fvectors for nets and vars.
2001-08-25 17:22:32 +00:00
steve
645c8913f1
Neaten and document the resolv object.
2001-08-10 04:31:09 +00:00
steve
066284d5c2
Make sure arithmetic objects run at time 0.
2001-08-10 00:50:50 +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
ed86dee65d
Initialize initial functor tables.
2001-07-30 03:53:01 +00:00
steve
7e0b0d7328
Support C<su0> and C<su1> special symbols.
2001-07-28 03:12:39 +00:00
steve
c5234e95cd
Make the -M flag add module search paths.
2001-07-26 03:13:51 +00:00
steve
54140dadcf
Add the load/x instruction for bit selects.
2001-07-22 00:04:50 +00:00
steve
e773ccfe49
Add support for the delayx opcode.
2001-07-19 04:40:55 +00:00
steve
4e700bffb8
support postpone of $systask parameters. (Stephan Boettcher)
2001-07-11 04:43:57 +00:00
steve
608e5a4dbb
Add the .shift/r functor.
2001-07-07 02:57:33 +00:00
steve
1e231c3338
Properly initialize unconnected shift inputs.
2001-07-06 05:02:43 +00:00
steve
39c39f0162
Add structural left shift (.shift/l)
2001-07-06 04:46:44 +00:00
steve
ab7b353ace
support fast programming by only writing the bits
...
that are listed in the input file.
2001-06-30 23:03:16 +00:00
steve
baac893d22
Support non-const right shift (unsigned).
2001-06-30 21:07:26 +00:00
steve
a2d465804f
Add the %shiftl/i0 instruction.
2001-06-23 18:26:26 +00:00
steve
c93cb71162
Allow forward references of task scopes. (Stephan Boettcher)
2001-06-23 01:04:07 +00:00
steve
81536481cc
Add structural EEQ gates (Stephan Boettcher)
2001-06-19 03:01:10 +00:00
steve
4159c98c58
More behavioral unary reduction operators.
...
(Stephan Boettcher)
2001-06-18 01:09:32 +00:00
steve
4b82d26f5e
Add support for structural multiply in t-dll.
...
Add code generators and vvp support for both
structural and behavioral multiply.
2001-06-16 23:45:05 +00:00
steve
e002b1c1c4
Add .cmp statements for structural comparison.
2001-06-15 04:07:57 +00:00
steve
7009dc8d9b
Change the VPI call process so that loaded .vpi modules
...
use a function table instead of implicit binding.
2001-06-15 03:28:30 +00:00
steve
5a279dbdc8
Instructions can forward reference functors.
2001-06-10 17:12:51 +00:00
steve
3ad3a2ab57
support scan of scope from VPI.
2001-06-10 16:47:49 +00:00
steve
19a7f3faeb
Implement .arith/sub subtraction.
2001-06-07 03:09:03 +00:00
steve
f3019ff5a0
Add structural addition.
2001-06-05 03:05:41 +00:00
steve
1e9184f0f9
Make the bufif0 and bufif1 gates strength aware,
...
and accurately propagate strengths of outputs.
2001-05-31 04:12:43 +00:00
steve
19251f7a79
Propagate strength-values instead of drive strengths.
2001-05-30 03:02:35 +00:00
steve
39ffe91230
Add behavioral modulus.
2001-05-24 04:20:10 +00:00
steve
a7411eb00d
Get the initial inputs to functors set at xxxx.
2001-05-22 04:08:16 +00:00
steve
660fd7c1d4
Update the mingw build to not require cygwin files.
2001-05-22 02:14:47 +00:00
steve
224af78463
Add support for system function calls.
2001-05-20 00:46:12 +00:00
steve
26cfbb2b7b
calculate the output of resolvers.
2001-05-13 21:05:06 +00:00
steve
f05b13c630
A resolver that understands some simple strengths.
2001-05-12 20:38:06 +00:00
steve
44a182d92c
VVP support for memories in expressions,
...
including general support for thread bit
vectors as system task parameters.
(Stephan Boettcher)
2001-05-10 00:26:53 +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
4537de8120
Implement the .resolv syntax.
2001-05-09 02:53:25 +00:00
steve
914ad85e63
Add ivl and vvp.tgt support for memories in
...
expressions and l-values. (Stephan Boettcher)
2001-05-08 23:59:33 +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
e328cf9fed
Add the %ix/get instruction. (Stephan Boettcher)
2001-05-06 17:42:22 +00:00
steve
78af3dbdc0
Regularize the mode-42 functor handling.
2001-05-06 03:51:37 +00:00
steve
8d0f7e1594
Propagate non-x constant net values.
2001-05-06 00:18:13 +00:00
steve
de5930f7d8
Add the beginnings of an interactive debugger.
2001-05-05 23:55:46 +00:00
steve
a225fe304d
Document memory related opcodes,
...
parser uses numbv_s structures instead of the
symbv_s and a mess of unions,
Add the %is/sub instruction.
(Stephan Boettcher)
2001-05-02 23:16:50 +00:00
steve
0f9eb13245
Remove the init parameter of functors, and instead use
...
the special C<?> symbols to initialize inputs. This is
clearer and more regular.
2001-05-02 04:05:16 +00:00
steve
06437b7fba
Support behavioral subtraction.
2001-05-02 01:57:25 +00:00
steve
2bf7653ab9
Implement %ix/load.
2001-05-01 05:00:02 +00:00
steve
cb39b3b65c
Account for ipoint_input_index behavior in inputs_connect.
2001-05-01 02:18:15 +00:00
steve
8b4befd4fc
Add support for memory objects. (Stephan Boettcher)
2001-05-01 01:09:39 +00:00
steve
8057faccc1
Fix up functor inputs to support C<?> values.
2001-04-30 03:53:19 +00:00
steve
431b16639d
Add bufif0 and bufif1 functors.
2001-04-29 23:13:33 +00:00
steve
014e68b62f
Support .net constant inputs.
2001-04-29 22:59:46 +00:00
steve
efe41c2435
input connect cleanup. (Stephan Boettcher)
2001-04-28 20:24:03 +00:00