Eddie Hung
3dc3c749d5
Add DSP_MINWIDTH=11 for ice40 since ice40_dsp uses this threshold
2019-07-19 11:41:00 -07:00
Eddie Hung
1d14cec7fd
Add a DSP_MINWIDTH macro, and soft-logic for {A_WIDTH,B_WIDTH} <= 1 too
2019-07-19 11:39:24 -07:00
Eddie Hung
9ad11ea2cc
Fine tune ice40_dsp.pmg, add support for packing subsets of registers
2019-07-19 10:57:32 -07:00
Eddie Hung
8f0e796be1
Add support for ice40 signed multipliers
2019-07-19 10:38:13 -07:00
Eddie Hung
7bdb3996e2
Merge branch 'xc7dsp' into ice40dsp
2019-07-19 10:28:38 -07:00
Eddie Hung
ca94c2d3c4
Fix typo in B
2019-07-19 10:27:44 -07:00
Eddie Hung
d439a830c6
Merge remote-tracking branch 'origin/eddie/signed_ice40_dsp' into ice40dsp
2019-07-19 09:40:47 -07:00
David Shah
80884d6f7b
ice40: Fix test_dsp_model.sh
...
Signed-off-by: David Shah <dave@ds0.me>
2019-07-19 17:33:57 +01:00
David Shah
79f14c7514
ice40/cells_sim.v: Fix sign of J and K partial products
...
Signed-off-by: David Shah <dave@ds0.me>
2019-07-19 17:33:41 +01:00
Eddie Hung
2168568f43
Use sign_headroom instead
2019-07-19 09:16:13 -07:00
David Shah
3c84271543
ice40/cells_sim.v: LSB of A/B only signed in 8x8 mode
...
Signed-off-by: David Shah <dave@ds0.me>
2019-07-19 17:13:34 +01:00
Eddie Hung
171cd2ff73
Add tests for all combinations of A and B signedness for comb mul
2019-07-19 08:52:49 -07:00
Eddie Hung
f7753720fe
Don't copy ref if exists already
2019-07-19 08:45:35 -07:00
Eddie Hung
bddd641290
Fix SB_MAC sim model -- do not sign extend internal products?
2019-07-18 21:03:54 -07:00
Eddie Hung
601fac97e4
Add params
2019-07-18 21:02:49 -07:00
Eddie Hung
a777be3091
Merge remote-tracking branch 'origin/master' into ice40dsp
2019-07-18 20:37:39 -07:00
Eddie Hung
0157043b97
Merge remote-tracking branch 'origin/master' into xc7dsp
2019-07-18 20:36:48 -07:00
Eddie Hung
15c2a79ab9
Do not define `DSP_SIGNEDONLY macro if no exists
2019-07-18 16:04:58 -07:00
Eddie Hung
42e40dbd0a
Merge remote-tracking branch 'origin/master' into ice40dsp
2019-07-18 15:45:25 -07:00
Eddie Hung
09411dd996
ice40_dsp to accept $__MUL16X16 too
2019-07-18 15:38:28 -07:00
Eddie Hung
266c1ae122
synth_ice40 to decompose into 16x16
2019-07-18 15:38:09 -07:00
Eddie Hung
2339b7fc37
mul2dsp to create cells that can be interchanged with $mul
2019-07-18 15:37:35 -07:00
Eddie Hung
802470746c
Check if RHS is empty first
2019-07-18 15:22:00 -07:00
Eddie Hung
e22a752242
Make consistent
2019-07-18 15:21:23 -07:00
Eddie Hung
90ac147eb2
Do not autoremove ffP aor muxP
2019-07-18 15:02:41 -07:00
Eddie Hung
08fe63c61e
Improve pattern matcher to match subsets of $dffe? cells
2019-07-18 14:08:18 -07:00
Eddie Hung
79d63479ea
Improve A/B reg packing
2019-07-18 13:30:35 -07:00
Eddie Hung
e075f0dda0
Do not autoremove A/B registers since they might have other consumers
2019-07-18 13:22:22 -07:00
Eddie Hung
0727b2c902
Fix xilinx_dsp index cast
2019-07-18 13:18:04 -07:00
Eddie Hung
8326af5418
Fix signed multiplier decomposition
2019-07-18 13:11:26 -07:00
Eddie Hung
5562cb08a4
Use single DSP_SIGNEDONLY macro
2019-07-18 13:09:55 -07:00
David Shah
9cb0456b6f
Merge pull request #1208 from ZirconiumX/intel_cleanups
...
Assorted synth_intel cleanups from @bwidawsk
2019-07-18 19:04:28 +01:00
Dan Ravensloft
0c999ac2c4
synth_intel: Use stringf
2019-07-18 19:02:23 +01:00
Eddie Hung
2024357f32
Working for unsigned
2019-07-18 10:53:18 -07:00
David Shah
8e0f7c18f1
Merge pull request #1207 from ZirconiumX/intel_new_pass_names
...
synth_intel: rename for consistency with #1184
2019-07-18 17:34:55 +01:00
Dan Ravensloft
50f5e29724
synth_intel: s/not family/no family/
2019-07-18 17:28:21 +01:00
Eddie Hung
d5cd2c80be
Cleanup
2019-07-18 09:20:48 -07:00
Dan Ravensloft
d5b3b3bc6f
synth_intel: revert change to run_max10
2019-07-18 17:09:15 +01:00
Ben Widawsky
999811572a
intel_synth: Fix help message
...
cyclonev has been a "supported" family since the initial commit. The old
commit message suggested to use a10gx which is incorrect.
Aside from the obvious lack of functional change due to this just being
a help message, users who were previously using "a10gx" for "cyclonev" will
also have no functional change by using "cyclonev" instead.
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2019-07-18 17:06:25 +01:00
Ben Widawsky
f950a7a75d
intel_synth: Small code cleanup to remove if ladder
...
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2019-07-18 17:06:12 +01:00
Ben Widawsky
809b94a67b
intel_synth: Make family explicit and match
...
The help and code default to MAX10 for the family, however the couple of
if ladders defaulted to cycloneive. Fix this inconsistency and the next
patch will clean it up.
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2019-07-18 17:06:03 +01:00
Ben Widawsky
060e77c09b
intel_synth: Minor code cleanups
...
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2019-07-18 17:05:54 +01:00
Dan Ravensloft
c78ab8ebc5
synth_intel: rename for consistency with #1184
...
Also fix a typo in the help message.
2019-07-18 16:46:21 +01:00
Eddie Hung
c76607b9bc
Wrong wildcard symbol
2019-07-18 08:14:58 -07:00
Eddie Hung
20b7120d66
Merge branch 'xc7dsp' of github.com:YosysHQ/yosys into xc7dsp
2019-07-18 08:11:33 -07:00
Clifford Wolf
e66e8fb59d
Merge pull request #1184 from whitequark/synth-better-labels
...
synth_{ice40,ecp5}: more sensible pass label naming
2019-07-18 15:34:28 +02:00
Clifford Wolf
927f0caa9d
Merge pull request #1203 from whitequark/write_verilog-zero-width-values
...
write_verilog: dump zero width constants correctly
2019-07-18 15:31:27 +02:00
David Shah
16b0ccf04c
mul2dsp: Lower partial products always have unsigned inputs
...
Signed-off-by: David Shah <dave@ds0.me>
2019-07-18 11:33:37 +01:00
Eddie Hung
e3f8e59f18
Make all operands signed
2019-07-17 14:25:40 -07:00
Eddie Hung
58e63feae1
Update comment
2019-07-17 13:26:17 -07:00