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
Alan M. Feldstein
bd9923dbbd
latch synthesis fix: Connect gate pin in netlist.
2010-11-25 09:21:46 -08:00
Stephen Williams
d49e44594b
Fix reported build errors with gcc 4.3
...
Add missing includes to cstring et al.
2008-01-21 18:04:30 -08:00
Alan M. Feldstein
5cae6b64af
Fixed dangling latch gate inputs.
...
With -tfnf, observed
(latch 43020 1 43022 43021)
in the output file. That 3rd number is the ID of the gate nexus. However, it was only found as
(dangle 43022)
The purpose of this patch is to fix that in the common code.
2007-10-24 16:16:23 -07:00
steve
0e3768f829
Handle statement output override better in blocks.
2006-07-23 19:42:33 +00:00
steve
f02b2c9d7a
Fix handling of exploded memories with partial or missing resets.
2006-04-16 19:26:37 +00:00
steve
312d09dc1d
Handle asynchronous demux/bit replacements.
2006-03-26 23:09:21 +00:00
steve
b8bc531f05
Fix the memsynth1 case.
2006-03-12 07:34:16 +00:00
steve
79cb8c883a
Add support for negedge FFs by using attributes.
2006-02-25 05:03:28 +00:00
steve
7527c466ed
Handle synthesis of FF vectors with l-value decoder.
2006-02-19 00:11:31 +00:00
steve
eb0a78e9ce
When mux has wide select but sparse choices, use 1hot translation.
2006-01-21 21:42:31 +00:00
steve
327c897d7e
Spellig fixes.
2005-02-19 16:39:30 +00:00
steve
e4ae832153
Clean up spurious trailing white space.
2004-10-04 01:10:51 +00:00
steve
3dbc07f34d
Implement signed divide and signed right shift in nets.
2004-06-30 02:16:26 +00:00
steve
177b6ffb6a
Addtrbute keys are perm_strings.
2004-02-20 18:53:33 +00:00
steve
1295058e5d
parameter keys are per_strings.
2004-02-20 06:22:56 +00:00
steve
536068bdfb
Memory and Event names use perm_string.
2004-02-19 06:57:10 +00:00
steve
27af95d402
Use perm_strings for named langiage items.
2004-02-18 17:11:54 +00:00
steve
d4525ddc16
Some systems dlsym requires leading _ or not on whim.
2003-12-12 05:43:08 +00:00
steve
be0b42f210
Warning about sprintf.
2003-11-26 01:37:38 +00:00
steve
12033d7bd4
Move the DLL= flag to target config files.
2003-11-13 05:55:33 +00:00
steve
43f28b53a3
Design::get_flag returns const char* instead of string.
2003-11-10 20:59:03 +00:00
steve
7521aa83f8
Pass FF synchronous set values to code generator.
2003-09-03 23:33:29 +00:00
steve
0a012c5d90
Fix uninitialized sset member.
2003-08-22 04:14:33 +00:00
steve
e561819179
Add synthesis support for synchronous reset.
2003-08-15 02:23:52 +00:00
steve
d653a7e88d
Add support for triand and trior.
2003-07-30 01:13:28 +00:00
steve
31b1fb4ec4
Watch out for moving nexus_ptr while adding pins to nexus.
2003-07-26 04:06:58 +00:00
steve
77da147629
Fix some enumeration warnings.
2003-07-05 20:42:08 +00:00
steve
21ff80075a
Various warnings fixed.
2003-06-24 01:38:02 +00:00
steve
bad861dba3
Module attributes make it al the way to ivl_target.
2003-06-23 01:25:44 +00:00
steve
2321df4bfc
Remove short int restrictions from vvp opcodes. (part 2)
2003-06-17 21:28:59 +00:00
steve
2356741169
Clear pin pointers if pin is not connected.
2003-05-13 16:30:39 +00:00
steve
3bd08e6212
Allow primitives to hvae unconnected input ports.
2003-05-13 01:56:15 +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
1222153cdf
Keep parameter constants for the ivl_target API.
2003-03-10 23:40:53 +00:00
steve
22d392a75c
Obsolete the ivl_event_name function.
2003-03-06 01:24:37 +00:00
steve
badad63ab4
All NetObj objects have lex_string base names.
2003-03-06 00:28:41 +00:00
steve
486274cfa1
Scope names stored only as basename.
2003-03-03 02:22:41 +00:00
steve
e941e7e805
Spelling fixes.
2003-01-30 16:23:07 +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
c3a1a9514f
Assert some task definition sanity.
2003-01-16 21:43:52 +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
a9dfef0f55
Fix the call to FormatMessage under Windows.
2002-11-05 02:12:35 +00:00
steve
0cc8396244
Cast for gcc convenience.
2002-11-03 22:44:19 +00:00
steve
6a1e3f7e27
Slightly more verbose load fail message.
2002-11-03 20:47:23 +00:00
steve
9ce2806710
Fix synth2 handling of aset/aclr signals where
...
flip-flops are split by begin-end blocks.
2002-10-23 01:45:24 +00:00
steve
166621bcb3
Generate vvp code for asynch set/reset of NetFF.
2002-09-26 03:18:04 +00:00
steve
52bf4e613f
conditional ident string using autoconfig.
2002-08-12 01:34:58 +00:00