steve
5aee3b866a
do not assert if memory reference is invalid.
2001-05-17 03:35:22 +00:00
steve
a52b34cb64
Add pullup and pulldown devices.
2001-04-29 20:19:10 +00:00
steve
9bb2cee686
UDP instances need not have user supplied names.
2001-04-28 23:18:08 +00:00
steve
8dfa322b8b
Support for UDP devices in VVP (Stephen Boettcher)
2001-04-24 02:23:58 +00:00
steve
66cf3ec8fa
More UDP consolidation from Stephan Boettcher.
2001-04-22 23:09:45 +00:00
steve
f40d006c26
Generate code for task calls.
2001-04-02 02:28:12 +00:00
steve
2b0aaec8ab
FreeBSD port has a maintainer now.
2001-02-15 06:59:35 +00:00
steve
7ef3b44ab1
support evaluation of constant < in expressions.
2001-02-09 05:44:23 +00:00
steve
2fbc0af1ea
Fix expression widths for rvalues and parameters (PR#131,132)
2001-02-07 21:47:13 +00:00
steve
219df169a3
Generalize the evaluation of floating point delays, and
...
get it working with delay assignment statements.
Allow parameters to be referenced by hierarchical name.
2001-01-14 23:04:55 +00:00
steve
5276752276
Build task outputs as lval instead of nets. (PR#98)
2001-01-10 03:13:23 +00:00
steve
6bf599e839
Cope with width mismatches to module ports (PR#89)
2001-01-09 05:58:47 +00:00
steve
5144725b8f
Accept x in outputs of primitive. (PR#84)
2000-12-15 01:24:17 +00:00
steve
084a464cf1
Support decimal constants in behavioral delays.
2000-12-10 22:01:35 +00:00
steve
9ddd0491f7
Support delays on continuous assignment from idents. (PR#40)
2000-12-10 06:41:59 +00:00
steve
f6507cba43
Check lvalue of procedural continuous assign (PR#29)
2000-12-06 06:31:09 +00:00
steve
e310532434
Handle null statements inside a wait. (PR#60)
2000-12-01 23:52:49 +00:00
steve
28bc621f11
change set for support of nmos, pmos, rnmos, rpmos, notif0, and notif1
...
change set to correct behavior of bufif0 and bufif1
(Tim Leight)
Also includes fix for PR#27
2000-11-11 01:52:09 +00:00
steve
f4ed0e35af
Handle connectsion to internally unconnected modules (PR#38)
2000-11-05 06:05:59 +00:00
steve
ad4931e813
Add scope to threads in vvm, pass that scope
...
to vpi sysTaskFunc objects, and add vpi calls
to access that information.
$display displays scope in %m (PR#1)
2000-10-28 00:51:41 +00:00
steve
f915efaf15
Fix handling of errors in behavioral lvalues. (PR#28)
2000-10-26 17:09:46 +00:00
steve
76e2c509d7
Put logic devices into scopes.
2000-10-07 19:45:42 +00:00
steve
40028f263f
Do not put noop statements into blocks.
2000-09-29 22:58:57 +00:00
steve
cbe20e8bcf
fix null pointer when elaborating undefined task.
2000-09-24 17:41:13 +00:00
steve
9067c91656
Correctly measure comples l-values of assignments.
2000-09-20 02:53:14 +00:00
steve
b6ce313e91
move lval elaboration to PExpr virtual methods.
2000-09-09 15:21:26 +00:00
steve
4cf75adf94
Fix bit padding of assign signal-to-signal
2000-09-07 01:29:44 +00:00
steve
49570b8cd9
encapsulate access to the l-value expected width.
2000-09-07 00:06:53 +00:00
steve
24e46723b0
Change elaborate_lval to return NetAssign_ objects.
2000-09-03 17:58:35 +00:00
steve
115d24a292
Pull NetAssign_ creation out of constructors.
2000-09-02 23:40:12 +00:00
steve
ac81f6a201
Rearrange NetAssign to make NetAssign_ separate.
2000-09-02 20:54:20 +00:00
steve
a59bbdeb4f
Proper error messages when port direction is missing.
2000-08-18 04:38:57 +00:00
steve
0243fca8dc
Rearrange task and function elaboration so that the
...
NetTaskDef and NetFuncDef functions are created during
signal enaboration, and carry these objects in the
NetScope class instead of the extra, useless map in
the Design class.
2000-07-30 18:25:43 +00:00
steve
4494a7a4f3
Support elaboration of disable statements.
2000-07-27 05:13:44 +00:00
steve
739365abe5
Parse disable statements to pform.
2000-07-26 05:08:07 +00:00
steve
286cef19fb
Parse and elaborate timescale to scopes.
2000-07-22 22:09:03 +00:00
steve
42e4ff47c8
Move inital value handling from NetNet to Nexus
...
objects. This allows better propogation of inital
values.
Clean up constant propagation a bit to account
for regs that are not really values.
2000-07-14 06:12:56 +00:00
steve
18eb34921f
Add support for non-constant delays in delay statements,
...
Support evaluating ! in constant expressions, and
move some code from netlist.cc to net_proc.cc.
2000-07-07 04:53:53 +00:00
steve
66ae567b25
Index in memory assign should be a NetExpr.
2000-06-13 03:24:48 +00:00
steve
c1c0168893
Globally merge redundant event objects.
2000-05-31 02:26:49 +00:00
steve
fd09bc3e3e
Merge similar probes within a module.
2000-05-27 19:33:23 +00:00
steve
3676d66408
Module ports are really special PEIdent
...
expressions, because a name can be used
many places in the port list.
2000-05-16 04:05:15 +00:00
steve
367db72c99
Add support for procedural continuous assignment.
2000-05-11 23:37:26 +00:00
steve
e81ce68e8c
Use bufz to make assignments directional.
2000-05-08 05:28:29 +00:00
steve
c4d8ded269
non-blocking assignment to a bit select.
2000-05-07 21:17:21 +00:00
steve
b90cda1f3f
Carry strength values from Verilog source to the
...
pform and netlist for gates.
Change vvm constants to use the driver_t to drive
a constant value. This works better if there are
multiple drivers on a signal.
2000-05-07 04:37:55 +00:00
steve
1db70a0c46
Move signal elaboration to a seperate pass.
2000-05-02 16:27:38 +00:00
steve
69612ceb73
Move memories to the NetScope object.
2000-05-02 03:13:30 +00:00
steve
8d8f1e2401
Move signal tables to the NetScope class.
2000-05-02 00:58:11 +00:00
steve
77361fb8a0
Overly aggressive eliding of task calls.
2000-04-28 23:12:12 +00:00
steve
3a9be680a4
Skip empty tasks.
2000-04-28 22:17:47 +00:00
steve
08e9a114a2
Catch memory word parameters to tasks.
2000-04-28 16:50:53 +00:00
steve
a8114ae122
Add support for the procedural release statement.
2000-04-23 03:45:24 +00:00
steve
44838f8973
Add support for force assignment.
2000-04-22 04:20:19 +00:00
steve
99a891b8a1
Bit padding in assignment to memory.
2000-04-21 04:38:15 +00:00
steve
4f07c43976
Minor cleanup of NetTaskDef.
2000-04-18 01:02:53 +00:00
steve
b1fd927acb
Named events really should be expressed with PEIdent
...
objects in the pform,
Handle named events within the mix of net events
and edges. As a unified lot they get caught together.
wait statements are broken into more complex statements
that include a conditional.
Do not generate NetPEvent or NetNEvent objects in
elaboration. NetEvent, NetEvWait and NetEvProbe
take over those functions in the netlist.
2000-04-12 04:23:57 +00:00
steve
8dbd64121f
All events now use the NetEvent class.
2000-04-10 05:26:05 +00:00
steve
72b3508911
Catch event declarations during scope elaborate.
2000-04-09 17:44:30 +00:00
steve
e9b06f1022
Catch event names in parentheses.
2000-04-09 16:43:50 +00:00
steve
30e8289239
Simulate named event trigger and waits.
2000-04-04 03:20:15 +00:00
steve
6150be2324
detect unsupported block on named events.
2000-04-01 22:14:19 +00:00
steve
2dd010dc04
Named events as far as the pform.
2000-04-01 19:31:57 +00:00
steve
d97ab9be23
New and improved combinational primitives.
2000-03-29 04:37:10 +00:00
steve
94270ff988
Fix lval part select of non-blocking assign.
2000-03-20 15:28:58 +00:00
steve
01c5147079
Connect output of NB assign to indexed pin.
2000-03-12 21:41:47 +00:00
steve
78ab1a7bba
Locate scopes in statements.
2000-03-11 03:25:51 +00:00
steve
61822d48aa
Handle defparam to partial hierarchical names.
2000-03-10 06:20:48 +00:00
steve
e7efc2709a
Redesign the implementation of scopes and parameters.
...
I now generate the scopes and notice the parameters
in a separate pass over the pform. Once the scopes
are generated, I can process overrides and evalutate
paremeters before elaboration begins.
2000-03-08 04:36:53 +00:00
steve
b734ecf02f
Macintosh compilers do not support ident.
2000-02-23 02:56:53 +00:00
steve
5b52c384d6
Catch module instantiation arrays.
2000-02-18 05:15:02 +00:00
steve
bd09bed662
Mark the line numbers of NetCondit nodes.
2000-02-14 00:11:11 +00:00
steve
ee180f6cf0
Include the scope in named gates.
2000-02-06 23:13:14 +00:00
steve
fac3bde2c8
Elaborate parameters afer binding of overrides.
2000-01-10 01:35:23 +00:00
steve
9125a4c451
Careful with wires connected to multiple ports.
2000-01-09 20:37:57 +00:00
steve
2de887c2ff
Support named parameter override lists.
2000-01-09 05:50:48 +00:00
steve
0d5e4b40d0
Structural reduction XNOR.
2000-01-02 19:39:03 +00:00
steve
142b9e667d
Do not overrun the pin index when the LSB != 0.
2000-01-02 18:25:37 +00:00
steve
e6820ed169
Handle synthesis of concatenation.
2000-01-01 06:18:00 +00:00
steve
6e3c258edb
Detect duplicate scopes.
1999-12-14 23:42:16 +00:00
steve
3e1738dcec
Fix support for attaching attributes to primitive gates.
1999-12-11 05:45:41 +00:00
steve
3e2bb85f58
Synthesize LPM_RAM_DQ for writes into memories.
1999-12-05 02:24:08 +00:00
steve
cdb99e7638
Elaborate net repeat concatenations.
1999-12-02 04:08:10 +00:00
steve
e96e8c62be
NetESignal object no longer need to be NetNode
...
objects. Let them keep a pointer to NetNet objects.
1999-11-28 23:42:02 +00:00
steve
4cfa3e4047
Support the creation of scopes.
1999-11-27 19:07:57 +00:00
steve
26288eeeb4
Detect and list scope names.
1999-11-24 04:01:58 +00:00
steve
85ab6d160b
Handle multiply in constant expressions.
1999-11-21 20:03:24 +00:00
steve
4cfa715092
Memory name lookup handles scopes.
1999-11-21 17:35:37 +00:00
steve
b4aade1e4c
Fix coding errors handling names of logic devices,
...
and add support for buf device in vvm.
1999-11-21 01:16:51 +00:00
steve
a81dcd7955
Support memories in continuous assignments.
1999-11-21 00:13:08 +00:00
steve
9d6392fda9
Turn NetTmp objects into normal local NetNet objects,
...
and add the nodangle functor to clean up the local
symbols generated by elaboration and other steps.
1999-11-18 03:52:19 +00:00
steve
82f3f0f741
Create the vpiMemory handle type.
1999-11-10 02:52:24 +00:00
steve
206b37e5de
Fix NetConst being set to zero width, and clean
...
up elaborate_set_cmp_ for NetEBinary.
1999-11-05 21:45:19 +00:00
steve
cb5fc54b5e
Patch to synthesize unary ~ and the ternary operator.
...
Thanks to Larry Doolittle <LRDoolittle@lbl.gov>.
Add the LPM_MUX device, and integrate it with the
ternary synthesis from Larry. Replace the lpm_mux
generator in t-xnf.cc to use XNF EQU devices to
put muxs into function units.
Rewrite elaborate_net for the PETernary class to
also use the LPM_MUX device.
1999-11-04 03:53:26 +00:00
steve
e1bbbe5614
Include subtraction in LPM_ADD_SUB device.
1999-10-31 20:08:24 +00:00
steve
71ecf8c143
Add to netlist links pin name and instance number,
...
and arrange in vvm for pin connections by name
and instance number.
1999-10-31 04:11:27 +00:00
steve
8ab03fa90f
Catch unindexed memory reference.
1999-10-18 00:02:21 +00:00
steve
475dd5760a
Remove commented out do_assign.
1999-10-13 03:16:36 +00:00
steve
70a1236626
Structural case equals device.
1999-10-10 01:59:54 +00:00
steve
7201865554
Support parameters in continuous assignments.
1999-10-09 21:30:16 +00:00