Larry Doolittle
76103f2167
Spelling fixes
...
Mostly comments, but a few format strings
2011-03-04 17:46:57 -08:00
Cary R
34661e9af5
V0.8: Rework the NetLatch and back end code.
...
This patch reworks the NetLatch class to better match the NetFF class
(e.g. it adds a place for the async controls and value, adds a dump
routine, etc.) and moves it into the normal netlist.{h,cc} files. It
removes the unused Aload and Sload routines, etc. from the NetFF class.
It switches the latch to use the existing ff object to pass information
to the target and uses the existing FF routines as applicable.
ivl_lpm_async_clr()
ivl_lpm_async_set()
ivl_lpm_aset_value()
ivl_lpm_clk() for the gate
ivl_lpm_data()
ivl_lpm_q()
It adds support for generating a latch UDP just like is done for the
D flip-flop in the tgt-vvp code generator and fixes a bug in the
generation of the clear signal when both the Aclr and Aset signals
clear the register.
2011-01-12 16:19:32 -08:00
Cary R
ae14a58bff
V0.8: Remove deprecated #ident and fix some other compile warnings
...
This patch removes #ident since it is deprecated in recent gcc
versions. It also removes all the CVS comments and fixes a few
other compilation warnings. There are still a few compilation
warnings, but this takes care of most of them. Fixing the rest
will require a bit more thought.
2011-01-12 15:49:03 -08:00
Cary R
b8d9f19eb0
Use MOS instead of bufif devices for mux optimization.
...
This patch mirrors what was done in development to fix the mux
with one input as Z optimization. It should use a MOS device
instead of a bufif device.
2008-11-28 09:16:21 -08:00
steve
c045f51a7f
Spelling fixes (larry doolittle)
2007-02-26 19:51:38 +00:00
steve
c1333a21ef
Prevent constant mux outputs from confusing itself.
2006-11-12 01:20:45 +00:00
steve
e0bbfa512c
Constant propagate addresses through NetRamDq read ports.
2006-04-23 04:26:13 +00:00
steve
d97560caa7
Fix overly agressive constant propagation through MUX causing lost Z bits.
2005-09-11 02:50:51 +00:00
steve
fd29ba3398
Reduce mux slices that are constant throughout range.
2005-08-28 22:00:39 +00:00
steve
44fbf60885
More thorough constant propagation through MUX devices.
2005-08-28 19:51:02 +00:00
steve
a0d69113c3
More thorough constant propagation through MUX devices.
2005-08-28 19:50:03 +00:00
steve
177b6ffb6a
Addtrbute keys are perm_strings.
2004-02-20 18:53:33 +00:00
steve
074dcc934a
Do not remove constants accessible to VPI.
2003-11-08 17:53:34 +00:00
steve
fad43d78b0
Donot elide FF that has set or clr connections.
2003-10-31 02:40:06 +00:00
steve
65c8722d72
Handle X values in constant == nets.
2003-04-25 05:06:32 +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
e941e7e805
Spelling fixes.
2003-01-30 16:23:07 +00:00
steve
8f0c02c0fa
Spelling fixes.
2003-01-27 05:09:17 +00:00
steve
d2ac85e2c7
Copy gate delays when doing gate delay substitutions.
2002-08-20 04:12:22 +00:00
steve
52bf4e613f
conditional ident string using autoconfig.
2002-08-12 01:34:58 +00:00
steve
9fc4e1eddd
Cache calculated driven value.
2002-06-25 01:33:22 +00:00
steve
58c2e12507
Make link_drive_constant cache its results in
...
the Nexus, to improve cprop performance.
2002-06-24 01:49:38 +00:00
steve
bfad382fd1
Carry Verilog 2001 attributes with processes,
...
all the way through to the ivl_target API.
Divide signal reference counts between rval
and lval references.
2002-05-26 01:39:02 +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
b14a0b885a
Fix bug removing pairs of ones in XOR.
2002-04-14 02:51:37 +00:00
steve
78bb3d6f09
Comments about xor evaluation.
2002-02-03 00:06:28 +00:00
steve
400580179f
Get sense of 1-bit == operator right.
2001-12-31 01:56:08 +00:00
steve
874bab10e4
NetObj constructor finally requires a scope.
2001-10-28 01:14:53 +00:00
steve
b825f8d2b2
Create a config.h.in file to hold all the config
...
junk, and support gcc 3.0. (Stephan Boettcher)
2001-07-25 03:10:48 +00:00
steve
b3a5a0e5ab
Generate vvp code for GT and GE comparisons.
2001-06-15 04:14:18 +00:00
steve
f480943649
Support structural addition.
2001-06-07 02:12:43 +00:00
steve
debe707097
check signals in the cprop functor.
2001-02-18 01:07:32 +00:00
steve
59b69c6dd1
Constant propagation for compare ==.
2001-02-16 03:27:31 +00:00
steve
f45ba008d8
Catch constants driving root module ports. (PR#130)
2001-02-10 04:50:54 +00:00
steve
365b149ec1
Propagate initial value of constants into wires.
2000-12-30 03:11:15 +00:00
steve
e33fb3ce51
Propagate constants through xnor gates. (PR#51)
2000-11-23 01:55:52 +00:00
steve
e05b9a4769
Replace AND constand propagation.
2000-11-19 05:26:58 +00:00
steve
2750977e4a
Thorough constant propagation for or and nor gates.
2000-11-18 05:13:27 +00:00
steve
fc6978e4de
Handle constant propagation through XOR gates,
...
including reducing the gate to a constant,
a buffer or an inverter if possible.
2000-11-18 04:10:37 +00:00
steve
a8da692540
Add support for the t-dll backend grabing flip-flops.
2000-11-11 00:03:36 +00:00
steve
76e2c509d7
Put logic devices into scopes.
2000-10-07 19:45:42 +00:00
steve
20d07a7366
Eliminate zero inputs to xor.
2000-10-06 21:26:34 +00:00
steve
b5a36fef70
use bufif0 if z is in true case of mux.
2000-08-02 14:48:01 +00:00
steve
cb7b1b6c94
Unlink z constants from nets.
2000-07-25 02:55:13 +00:00
steve
2a08824ae9
Detect muxing Vz as a bufufN.
2000-07-15 05:13:43 +00:00
steve
583868e74e
Redesign Links to include the Nexus class that
...
carries properties of the connected set of links.
2000-06-25 19:59:41 +00:00
steve
e52ada617e
Get rid of useless next_link method.
2000-06-24 22:55:19 +00:00
steve
ea96c3ef66
Support initialization of FF Q value.
2000-05-14 17:55:04 +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