steve
5a2dd3393f
Skip assign if index is invalid.
2005-05-09 00:38:12 +00:00
steve
48aa0f0075
Better handle assignment to bit/part select.
2005-05-07 03:16:31 +00:00
steve
df271c9fa3
Link signals that are source of procedural continuous assign.
2005-05-01 22:04:12 +00:00
steve
d8a456bd67
The indexed set can write a vector, not just a bit.
2005-03-22 05:18:34 +00:00
steve
8e135a1020
Non blocking assign to memory words.
2005-03-06 17:07:48 +00:00
steve
0fb1fd36ee
Handle memory words in l-value concatenations.
2005-03-05 05:47:42 +00:00
steve
85286cc086
Rearrange how memories are supported as vvp_vector4 arrays.
2005-03-03 04:33:10 +00:00
steve
2fcaac4060
Support constant part select writes to l-values, and large part select reads from signals.
2005-02-15 07:12:55 +00:00
steve
4051f7d986
Handle bitmux lvalues for constant r-values.
2005-02-14 05:00:11 +00:00
steve
aaf35ab1a9
Handle bit selects in l-values to assignments.
2005-02-14 01:51:39 +00:00
steve
7250337941
Integrate fixes from 0.8 branch.
2005-01-28 19:39:03 +00:00
steve
e11ac0b1d8
Use %set/v to trigger events.
2004-12-18 18:53:26 +00:00
steve
59bac26f4f
Implement release functionality.
2004-12-17 04:46:40 +00:00
steve
ffedf32476
cassign and deassign handle concatenated l-values.
2004-12-11 05:43:30 +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
896f1b0de1
Generate code for nb assign to reals.
2004-05-19 03:25:42 +00:00
steve
e56b77a43f
Add support for wait on list of named events.
2003-12-03 02:46:23 +00:00
steve
5496a38499
vvp_signal_label does not return a unique string.
2003-10-25 02:07:57 +00:00
steve
cee34f8a8a
Support time0 resolution of combinational threads.
2003-09-04 20:28:05 +00:00
steve
d4b7c835de
All the threads of a named fork go into sub-scope.
2003-07-29 05:12:10 +00:00
steve
4b20ffc829
Use set/x0/x if the target vector is too wide for set/x0.
2003-05-26 04:45:37 +00:00
steve
cd7a313f56
Account for nested fork scopes in disable.
2003-05-17 04:38:19 +00:00
steve
2a29c4fd62
Support real expressions in case statements.
2003-05-14 05:26:41 +00:00
steve
f354c43941
Use hash code for scope labels.
2003-03-25 02:15:48 +00:00
steve
06d5c8135c
Allow real-valued vpi functions to have arguments.
2003-03-15 04:45:18 +00:00
steve
0bf901e9bb
Use number for event labels.
2003-03-06 01:17:46 +00:00
steve
970c4950f4
Merge vpi_call and vpi_func draw functions.
2003-02-28 20:21:13 +00:00
steve
514bb4a6a9
Handle assign of real values to vectors.
2003-02-27 20:38:12 +00:00
steve
ce489d8d84
Allow $display of $simtime.
2003-02-03 01:09:20 +00:00
steve
04ada23119
Support in various contexts the $realtime
...
system task.
2003-01-27 00:14:37 +00:00
steve
46253ed873
Rework expression parsing and elaboration to
...
accommodate real/realtime values and expressions.
2003-01-26 21:15:58 +00:00
steve
03afbf157b
%set/x0 instruction to support bounds checking.
2002-11-21 22:43:13 +00:00
steve
91580d1fcc
Generate unique labels for force functors.
2002-11-17 18:31:09 +00:00
steve
07e49e215e
Use the vectorized %assign where appropriate.
2002-11-08 05:00:31 +00:00
steve
db899bd1b5
Use Vector %set to set constants in variables.
2002-11-07 05:19:55 +00:00
steve
c6dcc38fe0
Vectorize load from REG variables.
2002-11-07 03:12:17 +00:00
steve
703ad04067
Allow expression lookaside map to spam statements.
2002-09-27 20:24:42 +00:00
steve
778e96330d
Add thread expression lookaside map.
2002-09-27 16:33:34 +00:00
steve
6f23fa61ac
Allow results in register bits 47 in certain cases.
2002-09-24 04:20:32 +00:00
steve
28725d0d74
Optimize ==1 when in context where x vs z doesnt matter.
2002-09-13 03:12:50 +00:00
steve
c9b4b66af2
Watch for x indices in l-value of non-blocking assignments.
2002-09-01 00:19:35 +00:00
steve
7b6678b2a1
Fix reverse bit ordered bit select in continuous assignment.
2002-08-31 03:48:50 +00:00
steve
aa390f2a91
Fix l-value indexing of memories and vectors so that
...
an unknown (x) index causes so cell to be addresses.
Fix tangling of label identifiers in the fork-join
code generator.
2002-08-27 05:39:57 +00:00
steve
8ab2ec6f86
Allow release to handle removal of target net.
2002-08-19 00:06:11 +00:00
steve
52bf4e613f
conditional ident string using autoconfig.
2002-08-12 01:34:58 +00:00
steve
cc74d2a6b0
Add force to nets.
2002-08-07 00:54:39 +00:00
steve
89314d4772
Do not use hierarchical names of memories to
...
generate vvp labels. -tdll target does not
used hierarchical name string to look up the
memory objects in the design.
2002-08-04 18:28:14 +00:00
steve
41f7ecacfc
Eliminate use of ivl_signal_name for signal labels.
2002-08-03 22:30:48 +00:00
steve
24a2487c18
Generate %cmpi/u where appropriate.
2002-06-02 18:57:17 +00:00
steve
422754f36f
Support carrying the scope of named begin-end
...
blocks down to the code generator, and have
the vvp code generator use that to support disable.
2002-05-27 00:08:45 +00:00
steve
d482da4803
Reduce the while loop expression if needed.
2002-04-22 02:41:30 +00:00
steve
5882c6a481
Redo handling of assignment internal delays.
...
Leave it possible for them to be calculated
at run time.
2002-04-21 22:31:02 +00:00
steve
f03ec88c2a
Handle empty true case of conditional statements.
2002-04-14 19:19:21 +00:00
steve
84bf0cee59
Vector constants to vpi_call can have sign.
2002-04-14 03:54:40 +00:00
steve
3275d1f252
Support signed expressions through to VPI.
2002-04-14 02:56:19 +00:00
steve
5840368f2d
Handle certain special cases of stime.
2002-01-11 05:23:05 +00:00
steve
2d3e85d941
Make sure fork labels are globally unique.
2001-12-05 05:41:20 +00:00
steve
6e0b77a8da
Generate force code for variable l-values.
2001-11-18 01:28:18 +00:00
steve
08f0f5a1f7
DLL target support for force and release.
2001-11-14 03:28:49 +00:00
steve
560c003e03
make fork label into complete statemnt.
2001-11-01 19:31:40 +00:00
steve
5d20dd63ec
Generate code for deassign and cassign.
2001-11-01 04:26:57 +00:00
steve
83d3a60d5c
Add trailing ; to fork-join out labels.
2001-10-19 23:52:36 +00:00
steve
b2b8b89cd8
Make configure detect malloc.h
2001-09-15 18:27:04 +00:00
steve
a9e54e7553
dead comments.
2001-09-01 00:58:16 +00:00
steve
b8be5e80cd
Generate code for l-value bit selects.
2001-08-26 23:00:13 +00:00
steve
e35ed6e91c
Change the NetAssign_ class to refer to the signal
...
instead of link into the netlist. This is faster
and uses less space. Make the NetAssignNB carry
the delays instead of the NetAssign_ lval objects.
Change the vvp code generator to support multiple
l-values, i.e. concatenations of part selects.
2001-08-25 23:50:02 +00:00
steve
15c2b0317d
statement ends after while loop labels.
2001-08-16 03:45:17 +00:00
steve
1be77d68ce
Evaluate part selects when passed to system tasks.
2001-07-28 01:18:07 +00:00
steve
cd8e491028
Support calculated delays in vvp.tgt.
2001-07-19 04:55:06 +00:00
steve
45d4117c02
Handle null parameters to system tasks.
2001-06-29 02:41:05 +00:00
steve
96d04bb5a0
Handle short inputs to tasks. (Stephan Boettcher)
2001-06-23 00:30:42 +00:00
steve
82e8e51736
1. Logic with more than 4 inputs
...
2. Id and name mangling
3. A memory leak in draw_net_in_scope()
(Stephan Boettcher)
2001-06-18 03:10:34 +00:00
steve
e68ba4c73a
Attach noops to case labels.
2001-05-24 04:31:00 +00:00
steve
0872ad34cf
Behavioral ternary operators for vvp.
2001-05-17 04:37:02 +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
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
b5e0f46229
Generate null statements for conditional labels.
2001-05-03 04:55:28 +00:00
steve
57b0d9691e
Right shift by constant.
2001-04-21 03:26:23 +00:00
steve
c97692d715
Generate code for disable.
2001-04-21 00:55:46 +00:00
steve
39bcdfb7b4
Use the new %fork syntax.
2001-04-18 05:12:03 +00:00
steve
70aeb980d8
vvp support for <= with internal delay.
2001-04-15 02:58:11 +00:00
steve
0550287658
Generate vvp code for functions with ports.
2001-04-06 02:28:02 +00:00
steve
82947a9343
Generate vvp code for the repeat statement.
2001-04-05 03:20:57 +00:00
steve
0653f859bc
Support forever loops in the tgt-vvp target.
2001-04-04 04:50:35 +00:00
steve
1b2a6f8bed
Fix broken look scanning down bits of number.
2001-04-04 04:28:41 +00:00
steve
c6cf665c4a
emit vpi parameters values as vectors.
2001-04-04 04:14:09 +00:00
steve
19c84ff9a2
Support non-blocking assignments.
2001-04-03 04:50:37 +00:00
steve
3ffb3c7011
thread bit allocation leak in assign.
2001-04-02 04:09:20 +00:00
steve
f40d006c26
Generate code for task calls.
2001-04-02 02:28:12 +00:00
steve
141808b787
Scopes and numbers as vpi_call parameters.
2001-04-02 00:27:53 +00:00
steve
2443c655f2
Generate code for while statements.
2001-04-01 06:49:04 +00:00
steve
4352ce6753
Generate code for casex and casez
2001-04-01 04:34:59 +00:00
steve
0f6eea7024
Handle $time as system task parameter.
2001-03-31 19:08:22 +00:00
steve
97dd559fca
Clear results of condition expressions.
2001-03-31 19:02:13 +00:00
steve
b3a3b888d8
Generate vvp code for case statements.
2001-03-31 17:36:38 +00:00
steve
b36b6d0ca0
Generate code for fork/join statements.
2001-03-30 05:49:52 +00:00
steve
966f7a4bff
Behavioral trigger statements.
2001-03-29 03:47:38 +00:00
steve
a4e528f0c3
Add the ivl_event_t to ivl_target, and use that to generate
...
.event statements in vvp way ahead of the thread that uses it.
2001-03-28 06:07:39 +00:00
steve
61e3eed49c
Generate code for simple @ statements.
2001-03-27 06:27:40 +00:00
steve
afb8e285db
Support error code from target_t::end_design method.
2001-03-27 03:31:06 +00:00
steve
5d051ffbde
Skip true clause if condition ix 0, x or z
2001-03-25 03:53:24 +00:00
steve
9ec5fa972e
Draw signal inputs to system tasks.
2001-03-25 03:24:10 +00:00
steve
034cdae445
assignments with non-trival r-values.
2001-03-23 01:54:32 +00:00
steve
565088160e
Geneate code for conditional statements.
2001-03-22 05:06:21 +00:00
steve
27e717839a
Scan the scopes of a design, and draw behavioral
...
blocking assignments of constants to vectors.
2001-03-21 01:49:43 +00:00
steve
e8518c5056
Put processes in the proper scope.
2001-03-20 01:44:13 +00:00
steve
1563643c92
Add the tgt-vvp code generator target.
2001-03-19 01:20:46 +00:00