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

5 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

5 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

5 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

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

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

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

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

5 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

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

5 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)

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

5 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

5 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.

5 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.

5 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

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

5 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

5 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

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

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

5 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()

5 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

5 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

5 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

5 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

5 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

5 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.

5 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.

5 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.

5 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

5 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

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

5 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

5 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

5 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

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

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

5 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

5 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

5 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

5 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

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

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

5 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

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

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

5 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

5 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()

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

5 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

5 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

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

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

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

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

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

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

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

5 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

5 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

5 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

5 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.

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

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

5 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()

5 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>
5 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>
5 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>
5 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

5 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

5 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

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

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

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

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

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

5 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

5 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

5 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.

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

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

5 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

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

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

5 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

5 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

5 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

5 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 *)

5 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

5 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

5 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

5 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

5 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

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

5 years agoCleanup xilinx_dsp too
Eddie Hung [Thu, 19 Sep 2019 21:34:06 +0000 (14:34 -0700)]
Cleanup xilinx_dsp too

5 years agoRefactor ce{mux,pol} -> hold{mux,pol}
Eddie Hung [Thu, 19 Sep 2019 21:27:25 +0000 (14:27 -0700)]
Refactor ce{mux,pol} -> hold{mux,pol}

5 years agoAdd HOLD/RST support for SB_MAC16
Eddie Hung [Thu, 19 Sep 2019 21:02:55 +0000 (14:02 -0700)]
Add HOLD/RST support for SB_MAC16

5 years agoAdd support for SB_MAC16 CD and H registers
Eddie Hung [Thu, 19 Sep 2019 19:14:33 +0000 (12:14 -0700)]
Add support for SB_MAC16 CD and H registers

5 years agoRefactor ice40_dsp.pmg
Eddie Hung [Thu, 19 Sep 2019 19:00:48 +0000 (12:00 -0700)]
Refactor ice40_dsp.pmg