yosys.git
4 years agoMissing (* mul2dsp *) for sliceB
Eddie Hung [Fri, 27 Sep 2019 21:21:47 +0000 (14:21 -0700)]
Missing (* mul2dsp *) for sliceB

4 years agoOoops AREG and BREG to default to -1
Eddie Hung [Fri, 27 Sep 2019 18:57:53 +0000 (11:57 -0700)]
Ooops AREG and BREG to default to -1

4 years agoUpdate doc with max cascade chain of 20
Eddie Hung [Thu, 26 Sep 2019 21:31:02 +0000 (14:31 -0700)]
Update doc with max cascade chain of 20

4 years agoDo not always zero out C (e.g. during cascade breaks)
Eddie Hung [Thu, 26 Sep 2019 20:59:05 +0000 (13:59 -0700)]
Do not always zero out C (e.g. during cascade breaks)

4 years agoUpdate doc
Eddie Hung [Thu, 26 Sep 2019 20:44:41 +0000 (13:44 -0700)]
Update doc

4 years agoZero out ports
Eddie Hung [Thu, 26 Sep 2019 20:40:38 +0000 (13:40 -0700)]
Zero out ports

4 years agoxilinx_dsp_cascade to also cascade AREG and BREG
Eddie Hung [Thu, 26 Sep 2019 20:29:18 +0000 (13:29 -0700)]
xilinx_dsp_cascade to also cascade AREG and BREG

4 years agoTry recursive pmgen for P cascade
Eddie Hung [Thu, 26 Sep 2019 19:09:57 +0000 (12:09 -0700)]
Try recursive pmgen for P cascade

4 years agoCombine 'flatten' & 'coarse' labels in synth_ecp5 so proc run once
Eddie Hung [Thu, 26 Sep 2019 17:45:14 +0000 (10:45 -0700)]
Combine 'flatten' & 'coarse' labels in synth_ecp5 so proc run once

4 years agoTypo
Eddie Hung [Thu, 26 Sep 2019 17:34:14 +0000 (10:34 -0700)]
Typo

4 years agoCREG to check for \keep
Eddie Hung [Thu, 26 Sep 2019 17:32:01 +0000 (10:32 -0700)]
CREG to check for \keep

4 years agoRemove newline
Eddie Hung [Thu, 26 Sep 2019 17:31:55 +0000 (10:31 -0700)]
Remove newline

4 years agoselect once
Eddie Hung [Thu, 26 Sep 2019 17:15:05 +0000 (10:15 -0700)]
select once

4 years agoStop trying to be too smart by prematurely optimising
Eddie Hung [Thu, 26 Sep 2019 16:57:11 +0000 (09:57 -0700)]
Stop trying to be too smart by prematurely optimising

4 years agomul2dsp.v slice names
Eddie Hung [Thu, 26 Sep 2019 05:58:55 +0000 (22:58 -0700)]
mul2dsp.v slice names

4 years agoDo not die if DSP48E1.P has no users (would otherwise get 'clean'-ed)
Eddie Hung [Thu, 26 Sep 2019 05:58:03 +0000 (22:58 -0700)]
Do not die if DSP48E1.P has no users (would otherwise get 'clean'-ed)

4 years agoReject if (* init *) present
Eddie Hung [Thu, 26 Sep 2019 01:21:08 +0000 (18:21 -0700)]
Reject if (* init *) present

4 years agoRemove unnecessary check for A_SIGNED != B_SIGNED; be more explicit
Eddie Hung [Thu, 26 Sep 2019 00:26:47 +0000 (17:26 -0700)]
Remove unnecessary check for A_SIGNED != B_SIGNED; be more explicit

4 years agoRevert "Remove _TECHMAP_CELLTYPE_ check since all $mul"
Eddie Hung [Thu, 26 Sep 2019 00:25:44 +0000 (17:25 -0700)]
Revert "Remove _TECHMAP_CELLTYPE_ check since all $mul"

This reverts commit 234738b103d4f2b3d937ed928fd89bc4e31627f1.

4 years agoRevert "No need for $__mul anymore?"
Eddie Hung [Thu, 26 Sep 2019 00:24:11 +0000 (17:24 -0700)]
Revert "No need for $__mul anymore?"

This reverts commit 1d875ac76a354f654f28b9632d83f6b43542e827.

4 years agoRework xilinx_dsp postAdd for new wreduce call
Eddie Hung [Thu, 26 Sep 2019 00:22:30 +0000 (17:22 -0700)]
Rework xilinx_dsp postAdd for new wreduce call

4 years agoOnly wreduce on t:$add
Eddie Hung [Thu, 26 Sep 2019 00:22:04 +0000 (17:22 -0700)]
Only wreduce on t:$add

4 years agoRemove _TECHMAP_CELLTYPE_ check since all $mul
Eddie Hung [Wed, 25 Sep 2019 23:51:31 +0000 (16:51 -0700)]
Remove _TECHMAP_CELLTYPE_ check since all $mul

4 years agoFix memory issue since SigSpec& could be invalidated
Eddie Hung [Wed, 25 Sep 2019 23:45:51 +0000 (16:45 -0700)]
Fix memory issue since SigSpec& could be invalidated

4 years agoNo need for $__mul anymore?
Eddie Hung [Wed, 25 Sep 2019 21:06:21 +0000 (14:06 -0700)]
No need for $__mul anymore?

4 years agounextend only used in init
Eddie Hung [Wed, 25 Sep 2019 21:05:59 +0000 (14:05 -0700)]
unextend only used in init

4 years agoCall 'wreduce' after mul2dsp to avoid unextend()
Eddie Hung [Wed, 25 Sep 2019 21:04:36 +0000 (14:04 -0700)]
Call 'wreduce' after mul2dsp to avoid unextend()

4 years agoOops. Actually use __NAME__ in ABC_DSP48E1 macro
Eddie Hung [Wed, 25 Sep 2019 17:33:16 +0000 (10:33 -0700)]
Oops. Actually use __NAME__ in ABC_DSP48E1 macro

4 years agoAdd (* techmap_autopurge *) to abc_unmap.v too
Eddie Hung [Tue, 24 Sep 2019 05:02:22 +0000 (22:02 -0700)]
Add (* techmap_autopurge *) to abc_unmap.v too

4 years ago"abc_padding" attr for blackbox outputs that were padded, remove them later
Eddie Hung [Tue, 24 Sep 2019 04:58:40 +0000 (21:58 -0700)]
"abc_padding" attr for blackbox outputs that were padded, remove them later

4 years agoForce $inout.out ports to begin with '$' to indicate internal
Eddie Hung [Tue, 24 Sep 2019 04:58:04 +0000 (21:58 -0700)]
Force $inout.out ports to begin with '$' to indicate internal

4 years agoAdd techmap_autopurge to outputs in abc_map.v too
Eddie Hung [Tue, 24 Sep 2019 04:56:28 +0000 (21:56 -0700)]
Add techmap_autopurge to outputs in abc_map.v too

4 years agoRevert "Add a xilinx_finalise pass"
Eddie Hung [Tue, 24 Sep 2019 02:52:55 +0000 (19:52 -0700)]
Revert "Add a xilinx_finalise pass"

This reverts commit 23d90e0439ffef510632ce45a3d2aff1c129f405.

4 years agoRevert "Remove (* techmap_autopurge *) from abc_unmap.v since no effect"
Eddie Hung [Tue, 24 Sep 2019 02:52:55 +0000 (19:52 -0700)]
Revert "Remove (* techmap_autopurge *) from abc_unmap.v since no effect"

This reverts commit 67c2db3486a7b2ff34f89dc861fb66d51ba6101b.

4 years agoRevert "Vivado does not like zero width port connections"
Eddie Hung [Tue, 24 Sep 2019 02:52:54 +0000 (19:52 -0700)]
Revert "Vivado does not like zero width port connections"

This reverts commit 895e2befa76bd326cc47fd40de112ea067fcaf98.

4 years agoVivado does not like zero width port connections
Eddie Hung [Tue, 24 Sep 2019 02:04:07 +0000 (19:04 -0700)]
Vivado does not like zero width port connections

4 years agoRemove (* techmap_autopurge *) from abc_unmap.v since no effect
Eddie Hung [Tue, 24 Sep 2019 01:56:18 +0000 (18:56 -0700)]
Remove (* techmap_autopurge *) from abc_unmap.v since no effect

4 years agoAdd a xilinx_finalise pass
Eddie Hung [Tue, 24 Sep 2019 01:56:02 +0000 (18:56 -0700)]
Add a xilinx_finalise pass

4 years agoSet [AB]CASCREG to legal values
Eddie Hung [Mon, 23 Sep 2019 23:00:11 +0000 (16:00 -0700)]
Set [AB]CASCREG to legal values

4 years agoComment to explain separating CREG packing
Eddie Hung [Mon, 23 Sep 2019 20:58:10 +0000 (13:58 -0700)]
Comment to explain separating CREG packing

4 years agoSeparate out CREG packing into new pattern, to avoid conflict with PREG
Eddie Hung [Mon, 23 Sep 2019 20:27:10 +0000 (13:27 -0700)]
Separate out CREG packing into new pattern, to avoid conflict with PREG

4 years agoMove log_debug("\n") later
Eddie Hung [Mon, 23 Sep 2019 20:27:00 +0000 (13:27 -0700)]
Move log_debug("\n") later

4 years agoMove unextend initialisation later
Eddie Hung [Mon, 23 Sep 2019 20:26:34 +0000 (13:26 -0700)]
Move unextend initialisation later

4 years agoUse new port() overload once more
Eddie Hung [Mon, 23 Sep 2019 20:00:44 +0000 (13:00 -0700)]
Use new port() overload once more

4 years agoMerge remote-tracking branch 'origin/master' into xc7dsp
Eddie Hung [Mon, 23 Sep 2019 17:58:28 +0000 (10:58 -0700)]
Merge remote-tracking branch 'origin/master' into xc7dsp

4 years agoMerge pull request #1392 from YosysHQ/eddie/fix1391
Clifford Wolf [Sat, 21 Sep 2019 09:25:36 +0000 (11:25 +0200)]
Merge pull request #1392 from YosysHQ/eddie/fix1391

(* techmap_autopurge *) fixes when ports aren't consistently-sized

4 years agoHell let's add the original #1381 testcase too
Eddie Hung [Sat, 21 Sep 2019 00:58:51 +0000 (17:58 -0700)]
Hell let's add the original #1381 testcase too

4 years agoRevert abc9.cc
Eddie Hung [Sat, 21 Sep 2019 00:52:23 +0000 (17:52 -0700)]
Revert abc9.cc

4 years agoAdd testcase
Eddie Hung [Sat, 21 Sep 2019 00:49:26 +0000 (17:49 -0700)]
Add testcase

4 years agoTrim mismatched connection to be same (smallest) size
Eddie Hung [Sat, 21 Sep 2019 00:48:37 +0000 (17:48 -0700)]
Trim mismatched connection to be same (smallest) size

4 years agoFix first testcase in #1391
Eddie Hung [Sat, 21 Sep 2019 00:42:36 +0000 (17:42 -0700)]
Fix first testcase in #1391

4 years agoGrammar
Eddie Hung [Fri, 20 Sep 2019 21:24:31 +0000 (14:24 -0700)]
Grammar

4 years agoUse new port/param overload in pmg
Eddie Hung [Fri, 20 Sep 2019 21:21:22 +0000 (14:21 -0700)]
Use new port/param overload in pmg

4 years agoOutput pattern matcher items as log_debug()
Eddie Hung [Fri, 20 Sep 2019 19:42:28 +0000 (12:42 -0700)]
Output pattern matcher items as log_debug()

4 years agoOPMODE is port not param
Eddie Hung [Fri, 20 Sep 2019 19:37:29 +0000 (12:37 -0700)]
OPMODE is port not param

4 years agoMerge remote-tracking branch 'origin/master' into xc7dsp
Eddie Hung [Fri, 20 Sep 2019 19:21:36 +0000 (12:21 -0700)]
Merge remote-tracking branch 'origin/master' into xc7dsp

4 years agoDo not run xilinx_dsp_cascadeAB for now
Eddie Hung [Fri, 20 Sep 2019 19:18:37 +0000 (12:18 -0700)]
Do not run xilinx_dsp_cascadeAB for now

4 years agoWIP for xiinx_dsp_cascadeAB
Eddie Hung [Fri, 20 Sep 2019 19:07:14 +0000 (12:07 -0700)]
WIP for xiinx_dsp_cascadeAB

4 years agoRun until convergence
Eddie Hung [Fri, 20 Sep 2019 19:04:16 +0000 (12:04 -0700)]
Run until convergence

4 years agoCleanup ice40_dsp.pmg
Eddie Hung [Fri, 20 Sep 2019 19:03:45 +0000 (12:03 -0700)]
Cleanup ice40_dsp.pmg

4 years agoCleanup xilinx_dsp
Eddie Hung [Fri, 20 Sep 2019 19:03:25 +0000 (12:03 -0700)]
Cleanup xilinx_dsp

4 years agoMore exceptions
Eddie Hung [Fri, 20 Sep 2019 19:03:10 +0000 (12:03 -0700)]
More exceptions

4 years agoFix signedness bug
Eddie Hung [Fri, 20 Sep 2019 17:11:36 +0000 (10:11 -0700)]
Fix signedness bug

4 years agoUpdate doc
Eddie Hung [Fri, 20 Sep 2019 17:07:54 +0000 (10:07 -0700)]
Update doc

4 years agoAdd a xilinx_dsp_cascade matcher for PCIN -> PCOUT
Eddie Hung [Fri, 20 Sep 2019 17:00:09 +0000 (10:00 -0700)]
Add a xilinx_dsp_cascade matcher for PCIN -> PCOUT

4 years agoAdd an overload for port/param with default value
Eddie Hung [Fri, 20 Sep 2019 16:59:42 +0000 (09:59 -0700)]
Add an overload for port/param with default value

4 years agoRe-add DSP_A_MINWIDTH, remove unnec. opt_expr -fine from synth_ice40
Eddie Hung [Fri, 20 Sep 2019 16:02:29 +0000 (09:02 -0700)]
Re-add DSP_A_MINWIDTH, remove unnec. opt_expr -fine from synth_ice40

4 years agoRevert "Move mul2dsp before wreduce"
Eddie Hung [Fri, 20 Sep 2019 15:56:16 +0000 (08:56 -0700)]
Revert "Move mul2dsp before wreduce"

This reverts commit e4f4f6a9d5cf8bb23870fc483f16f66c80ceebab.

4 years agoMove mul2dsp before wreduce
Eddie Hung [Fri, 20 Sep 2019 15:41:40 +0000 (08:41 -0700)]
Move mul2dsp before wreduce

4 years agoSmall cleanup
Eddie Hung [Fri, 20 Sep 2019 15:41:28 +0000 (08:41 -0700)]
Small cleanup

4 years agoMerge pull request #1386 from YosysHQ/clifford/fix1360
Clifford Wolf [Fri, 20 Sep 2019 11:30:28 +0000 (13:30 +0200)]
Merge pull request #1386 from YosysHQ/clifford/fix1360

Fix handling of read_verilog config in AstModule::reprocess_module()

4 years agoFix handling of read_verilog config in AstModule::reprocess_module(), fixes #1360
Clifford Wolf [Fri, 20 Sep 2019 10:16:20 +0000 (12:16 +0200)]
Fix handling of read_verilog config in AstModule::reprocess_module(), fixes #1360

Signed-off-by: Clifford Wolf <clifford@clifford.at>
4 years agoUpdate CHANGELOG
Clifford Wolf [Fri, 20 Sep 2019 08:28:20 +0000 (10:28 +0200)]
Update CHANGELOG

Signed-off-by: Clifford Wolf <clifford@clifford.at>
4 years agoAdd "add -mod"
Clifford Wolf [Fri, 20 Sep 2019 08:27:17 +0000 (10:27 +0200)]
Add "add -mod"

Signed-off-by: Clifford Wolf <clifford@clifford.at>
4 years agoMerge pull request #1384 from YosysHQ/clifford/fix1381
Clifford Wolf [Fri, 20 Sep 2019 07:58:42 +0000 (09:58 +0200)]
Merge pull request #1384 from YosysHQ/clifford/fix1381

Add techmap_autopurge attribute

4 years agoDisable support for SB_MAC16 reset since it is async
Eddie Hung [Fri, 20 Sep 2019 05:48:57 +0000 (22:48 -0700)]
Disable support for SB_MAC16 reset since it is async

4 years agoSB_MAC16 ffCD to not pack same as ffO
Eddie Hung [Fri, 20 Sep 2019 05:39:47 +0000 (22:39 -0700)]
SB_MAC16 ffCD to not pack same as ffO

4 years agoAdd more complicated macc testcase
Eddie Hung [Fri, 20 Sep 2019 05:39:15 +0000 (22:39 -0700)]
Add more complicated macc testcase

4 years agoClarify
Eddie Hung [Fri, 20 Sep 2019 04:58:34 +0000 (21:58 -0700)]
Clarify

4 years agoUpdate doc for ice40_dsp
Eddie Hung [Fri, 20 Sep 2019 04:57:11 +0000 (21:57 -0700)]
Update doc for ice40_dsp

4 years agoTidy up, fix undriven
Eddie Hung [Fri, 20 Sep 2019 03:04:52 +0000 (20:04 -0700)]
Tidy up, fix undriven

4 years agoAdd an index
Eddie Hung [Fri, 20 Sep 2019 03:04:44 +0000 (20:04 -0700)]
Add an index

4 years ago$__ABC_REG to have WIDTH parameter
Eddie Hung [Fri, 20 Sep 2019 02:37:45 +0000 (19:37 -0700)]
$__ABC_REG to have WIDTH parameter

4 years agoFix DSP48E1 timing by breaking P path if MREG or PREG
Eddie Hung [Fri, 20 Sep 2019 01:59:28 +0000 (18:59 -0700)]
Fix DSP48E1 timing by breaking P path if MREG or PREG

4 years agoRevert "Different approach to timing"
Eddie Hung [Fri, 20 Sep 2019 01:33:38 +0000 (18:33 -0700)]
Revert "Different approach to timing"

This reverts commit 41256f48a5f3231e231cbdf9380a26128f272044.

4 years agoDifferent approach to timing
Eddie Hung [Fri, 20 Sep 2019 01:33:29 +0000 (18:33 -0700)]
Different approach to timing

4 years agoFix width of D
Eddie Hung [Fri, 20 Sep 2019 01:08:46 +0000 (18:08 -0700)]
Fix width of D

4 years agoAdd mac.sh and macc_tb.v for testing
Eddie Hung [Fri, 20 Sep 2019 01:08:16 +0000 (18:08 -0700)]
Add mac.sh and macc_tb.v for testing

4 years agoSuppress $anyseq warnings
Eddie Hung [Thu, 19 Sep 2019 23:27:14 +0000 (16:27 -0700)]
Suppress $anyseq warnings

4 years agoUse ID() macro
Eddie Hung [Thu, 19 Sep 2019 23:13:22 +0000 (16:13 -0700)]
Use ID() macro

4 years agoUse (* techmap_autopurge *) to suppress techmap warnings
Eddie Hung [Thu, 19 Sep 2019 22:58:01 +0000 (15:58 -0700)]
Use (* techmap_autopurge *) to suppress techmap warnings

4 years agoD is 25 bits not 24 bits wide
Eddie Hung [Thu, 19 Sep 2019 22:55:49 +0000 (15:55 -0700)]
D is 25 bits not 24 bits wide

4 years agoMerge remote-tracking branch 'origin/clifford/fix1381' into xc7dsp
Eddie Hung [Thu, 19 Sep 2019 22:47:41 +0000 (15:47 -0700)]
Merge remote-tracking branch 'origin/clifford/fix1381' into xc7dsp

4 years agoWhen two boxes connect to each other, need not be a (* keep *)
Eddie Hung [Thu, 19 Sep 2019 22:40:28 +0000 (15:40 -0700)]
When two boxes connect to each other, need not be a (* keep *)

4 years agoRe-enable sign extension for C input
Eddie Hung [Thu, 19 Sep 2019 22:40:17 +0000 (15:40 -0700)]
Re-enable sign extension for C input

4 years agosynth_xilinx to infer DSPs for Y_WIDTH >= 9 and [AB]_WIDTH >= 2
Eddie Hung [Thu, 19 Sep 2019 21:58:06 +0000 (14:58 -0700)]
synth_xilinx to infer DSPs for Y_WIDTH >= 9 and [AB]_WIDTH >= 2

4 years agoTidy up synth_ice40, only restrict DSP_B_MINWIDTH=2
Eddie Hung [Thu, 19 Sep 2019 21:57:38 +0000 (14:57 -0700)]
Tidy up synth_ice40, only restrict DSP_B_MINWIDTH=2

4 years agoDo not perform width-checks for DSP48E1 which is much more complicated
Eddie Hung [Thu, 19 Sep 2019 21:50:11 +0000 (14:50 -0700)]
Do not perform width-checks for DSP48E1 which is much more complicated

4 years agoRemove TODO as check should not be necessary
Eddie Hung [Thu, 19 Sep 2019 21:49:47 +0000 (14:49 -0700)]
Remove TODO as check should not be necessary

4 years agoRevert index to select
Eddie Hung [Thu, 19 Sep 2019 21:46:53 +0000 (14:46 -0700)]
Revert index to select