steve
80f30be9d0
Add support for system functions in continuous assignments.
2006-06-18 04:15:50 +00:00
steve
71faebd6df
Make elaborate_expr methods aware of the width that the context
...
requires of it. In the process, fix sizing of the width of unary
minus is context determined sizes.
2006-06-02 04:48:49 +00:00
steve
019d61f633
Get self-determined unary - width right.
2006-05-19 04:44:55 +00:00
steve
a8b86ea3bb
More explicit datatype setup.
2006-05-01 20:47:58 +00:00
steve
0c9fb766b6
Get the data type of part select results right.
2006-04-30 05:17:48 +00:00
steve
47b72c3b74
Handle padding of MUX net results.
2006-04-28 05:09:51 +00:00
steve
a2c036d5ab
Allow concatenations as arguments to inout ports.
2006-04-28 04:28:35 +00:00
steve
c2ff3d501c
Fix support for indexed part select in continuous assign l-values.
2006-04-24 05:15:07 +00:00
steve
decfbff2b1
Clean up index expression error message.
2006-04-10 00:32:14 +00:00
steve
d434dd7296
Allow part selects of memory words in l-values.
2006-02-02 02:43:57 +00:00
steve
58f182a159
Node delays can be more general expressions in structural contexts.
2006-01-02 05:33:19 +00:00
steve
07f345da4d
Logical or/and return VT_LOGIC type.
2005-10-11 16:15:52 +00:00
steve
21af0dbe3f
Fix data type of parameters to logic.
2005-09-19 15:21:09 +00:00
steve
7235706923
Make sure div, mod and mult nodes have line number info.
2005-09-15 23:04:09 +00:00
steve
4dfdc147c5
fit type elaboration of logical not.
2005-09-14 15:15:44 +00:00
steve
4902c222fb
Check operand types for compatibility.
2005-09-01 04:10:47 +00:00
steve
b69f59f2ec
Handle memory references is continuous assignments.
2005-08-31 05:07:31 +00:00
steve
4a8be3db9c
Implement bi-directional part selects.
2005-08-06 17:58:16 +00:00
steve
9a16e030b5
Match data type of PV select input/output.
2005-07-15 04:13:25 +00:00
steve
d353ddb660
Get output type correct for binary mux (ternary) expression.
2005-07-15 00:42:02 +00:00
steve
b9799cf6ec
Remove NetVariable and ivl_variable_t structures.
2005-07-11 16:56:50 +00:00
steve
75ad90534b
Generalize signals to carry types.
2005-07-07 16:22:49 +00:00
steve
739a1839ed
Do sign extension of structuran nets.
2005-05-24 01:44:27 +00:00
steve
06e08dbdf0
Make sure comparison widths match.
2005-05-19 03:51:38 +00:00
steve
c34e44dad0
Make sig-eq-constant optimization more effective.
2005-05-10 05:10:40 +00:00
steve
7dd0d255a6
Add support for variable part select.
2005-05-08 23:40:14 +00:00
steve
d548c9a5f8
Handle synthesis of concatenation expressions.
2005-05-06 00:25:13 +00:00
steve
e8a6835d36
Make clear that memory addresses are cannonical.
2005-04-08 04:52:31 +00:00
steve
65c7ec00e7
Rework NetRamDq and IVL_LPM_RAM nodes.
2005-04-06 05:29:08 +00:00
steve
8184dfaed8
Handle wide operands to logical AND.
2005-03-19 06:59:53 +00:00
steve
ca488dff4e
Handle LPM shifts.
2005-03-19 06:23:49 +00:00
steve
53da6e9a33
Add support for LPM_UFUNC user defined functions.
2005-03-18 02:56:03 +00:00
steve
0f914bf35a
UPdate elabrate continuous assighn of string to net.
2005-03-13 01:26:48 +00:00
steve
ab1ca54df2
Update support for LPM_MOD.
2005-03-12 06:43:35 +00:00
steve
1c5b4881d7
Handle case inequality in netlists.
2005-03-09 05:52:03 +00:00
steve
257e1f9516
Support shifts and divide.
2005-02-19 02:43:38 +00:00
steve
d74177634c
Restructure NetMux devices to pass vectors.
...
Generate NetMux devices from ternary expressions,
Reduce NetMux devices to bufif when appropriate.
2005-02-12 06:25:40 +00:00
steve
97f83ffbe3
laborate reduction gates into LPM_RED_ nodes.
2005-02-03 04:56:20 +00:00
steve
20be0351ae
Elaborate unary subtract and NOT in netlist
...
contexts, and concatenation too.
2005-01-30 05:20:38 +00:00
steve
609b6a7baa
Netlist boolean expressions generate gate vectors.
2005-01-29 18:46:18 +00:00
steve
e04fb5c083
Elaborate parameter reference to desired width without concats.
2005-01-29 16:46:22 +00:00
steve
ade5bdcafe
Integrate pr1072 fix from v0_8-branch.
2005-01-29 00:37:06 +00:00
steve
99ace10774
Simplified NetMult and IVL_LPM_MULT.
2005-01-28 05:39:33 +00:00
steve
25de448d34
Remove obsolete NetSubnet class.
2005-01-22 18:16:00 +00:00
steve
e28636776a
Change case compare from logic to an LPM node.
2005-01-22 01:06:55 +00:00
steve
bf6a5d0f50
Implement LPM_COMPARE nodes as two-input vector functors.
2005-01-16 04:20:32 +00:00
steve
ead2481793
Fix elaboration of == compared to constants.
2005-01-13 00:23:10 +00:00
steve
9e94afe399
Use PartSelect/PV and VP to handle part selects through ports.
2005-01-09 20:16:00 +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
51dd41f81a
Fix excessive error message.
2004-10-04 03:09:38 +00:00
steve
e4ae832153
Clean up spurious trailing white space.
2004-10-04 01:10:51 +00:00
steve
2abdcfcaa4
Error message to match assertion.
2004-10-04 00:25:46 +00:00
steve
180bfc5e72
Detect and prevent implicit declaration of hierarchical names.
2004-09-24 04:25:19 +00:00
steve
7f67afe9d5
Add support for $unsigned.
2004-08-28 15:42:11 +00:00
steve
3dbc07f34d
Implement signed divide and signed right shift in nets.
2004-06-30 02:16:26 +00:00
steve
9ee0210cac
Code cleanup from Larry.
2004-06-24 15:22:23 +00:00
steve
69cfdbdc54
Fix broken calcuation of NE for constant.
2004-06-22 18:41:48 +00:00
steve
03d7448550
compare-to-constant uses sig len, not val len.
2004-06-18 16:38:22 +00:00
steve
fd371a3958
Handle equality compare to constants specially.
2004-06-16 23:32:58 +00:00
steve
9949040285
Add support for the default_nettype directive.
2004-06-13 04:56:53 +00:00
steve
ba309e60bb
Fix synthesis method for logical and/or
2004-06-01 01:04:57 +00:00
steve
5472b27e1f
Rewire/generalize parsing an elaboration of
...
function return values to allow for better
speed and more type support.
2004-05-31 23:34:36 +00:00
steve
177b6ffb6a
Addtrbute keys are perm_strings.
2004-02-20 18:53:33 +00:00
steve
27af95d402
Use perm_strings for named langiage items.
2004-02-18 17:11:54 +00:00
steve
2f8a40b159
Fix evaluation of compare to constant expression.
2004-02-15 04:23:48 +00:00
steve
930e5137ac
Catch real variables in net expressions.
2003-10-30 04:31:34 +00:00
steve
8dab4c6b53
memory index need not be self determined width.
2003-10-20 01:44:28 +00:00
steve
d1f0bcf620
Catch unsized expressions in continuous assigns.
2003-09-23 03:31:28 +00:00
steve
693794552c
Remove find_memory method from Design class.
2003-09-19 03:50:12 +00:00
steve
31c0a9dcd1
Missing case warnings.
2003-09-13 01:30:07 +00:00
steve
ca0a9faa90
Only build a mux as wide as can be selected.
2003-09-03 04:29:18 +00:00
steve
7c1401a2ba
Spelling patch.
2003-08-28 04:11:17 +00:00
steve
c96598a429
Primitive outputs have same limitations as continuous assignment.
2003-08-05 03:01:58 +00:00
steve
61195c5daa
Harmless fixup of warnings.
2003-06-21 01:21:42 +00:00
steve
76295ac873
More complete bit range internal error message,
...
Better test of part select ranges on non-zero
signal ranges.
2003-05-01 01:13:57 +00:00
steve
5d1d99a89f
Handle signed magnitude compare all the
...
way through to the vvp code generator.
2003-04-11 05:18:08 +00:00
steve
d18934d444
Sign extend NetMult inputs if result is signed.
2003-03-29 05:51:25 +00:00
steve
4e182ebf67
Some better internal error messages.
2003-03-26 06:16:38 +00:00
steve
1222153cdf
Keep parameter constants for the ivl_target API.
2003-03-10 23:40:53 +00:00
steve
badad63ab4
All NetObj objects have lex_string base names.
2003-03-06 00:28:41 +00:00
steve
a275133ff9
LPM objects store only their base names.
2003-02-26 01:29:24 +00:00
steve
8f0c02c0fa
Spelling fixes.
2003-01-27 05:09:17 +00:00
steve
07a427bf28
Detect null arguments to concatenation operator.
2003-01-19 00:35:39 +00:00
steve
ca3bf14fb6
Remove useless variable.
2003-01-17 05:48:35 +00:00
steve
c032186133
Reword some error messages for clarity.
2002-12-06 03:08:19 +00:00
steve
cfd8cbf850
Port expressions for output ports are lnets, not nets.
2002-11-09 19:20:48 +00:00
steve
3d3116d48b
Add support for binary NOR operator.
2002-09-18 04:29:55 +00:00
steve
dac99b9374
Add support for binary nand operator.
2002-09-12 15:49:43 +00:00
steve
447fee6f43
Fix padding of operand of unary minus.
2002-09-08 01:37:13 +00:00
steve
7b6678b2a1
Fix reverse bit ordered bit select in continuous assignment.
2002-08-31 03:48:50 +00:00
steve
63f97d8ec6
Carry mux output delays.
2002-08-21 02:28:03 +00:00
steve
640767b748
Constants can self-size themselves in unsized contexts.
2002-08-14 03:57:27 +00:00
steve
52bf4e613f
conditional ident string using autoconfig.
2002-08-12 01:34:58 +00:00
steve
693e9e5ad0
Store only the base name of memories.
2002-08-05 04:18:45 +00:00
steve
301040a67a
Avoid emitting to vvp local net symbols.
2002-07-05 21:26:17 +00:00
steve
b6a15b2f4d
Wide unary minus in continuous assignments.
2002-06-22 04:22:40 +00:00
steve
cd94019733
Remove NetTmp and add NetSubnet class.
2002-06-19 04:20:03 +00:00
steve
e6c0629626
Add language support for Verilog-2001 attribute
...
syntax. Hook this support into existing $attribute
handling, and add number and void value types.
Add to the ivl_target API new functions for access
of complex attributes attached to gates.
2002-05-23 03:08:50 +00:00
steve
9ef49379f4
Add support for non-constant bit select.
2002-04-23 03:53:59 +00:00
steve
0976fd393b
Do not allow implicit wires in sensitivity lists.
2002-04-22 00:53:39 +00:00