yosys.git
5 years agoFix abc9's scc breaker, also break on abc_scc_break attr
Eddie Hung [Tue, 25 Jun 2019 04:53:18 +0000 (21:53 -0700)]
Fix abc9's scc breaker, also break on abc_scc_break attr

5 years agoAdd tests/various/abc9.{v,ys} with SCC test
Eddie Hung [Tue, 25 Jun 2019 04:52:53 +0000 (21:52 -0700)]
Add tests/various/abc9.{v,ys} with SCC test

5 years agoMerge remote-tracking branch 'origin/master' into xaig
Eddie Hung [Tue, 25 Jun 2019 03:01:43 +0000 (20:01 -0700)]
Merge remote-tracking branch 'origin/master' into xaig

5 years agoMerge pull request #1124 from mmicko/json_ports
Clifford Wolf [Mon, 24 Jun 2019 06:52:12 +0000 (08:52 +0200)]
Merge pull request #1124 from mmicko/json_ports

Add upto and offset to JSON ports

5 years agoAdd comments to ecp5 box
Eddie Hung [Sat, 22 Jun 2019 21:33:47 +0000 (14:33 -0700)]
Add comments to ecp5 box

5 years agoAdd comment to xc7 box
Eddie Hung [Sat, 22 Jun 2019 21:28:24 +0000 (14:28 -0700)]
Add comment to xc7 box

5 years agoFix and cleanup ice40 boxes for carry in/out
Eddie Hung [Sat, 22 Jun 2019 21:27:41 +0000 (14:27 -0700)]
Fix and cleanup ice40 boxes for carry in/out

5 years agoCarry in/out box ordering now move to end, not swap with end
Eddie Hung [Sat, 22 Jun 2019 21:18:42 +0000 (14:18 -0700)]
Carry in/out box ordering now move to end, not swap with end

5 years agoRemove DFF and RAMD box info for now
Eddie Hung [Sat, 22 Jun 2019 03:41:14 +0000 (20:41 -0700)]
Remove DFF and RAMD box info for now

5 years agoMerge branch 'master' into xaig
Eddie Hung [Sat, 22 Jun 2019 03:31:56 +0000 (20:31 -0700)]
Merge branch 'master' into xaig

5 years agoAdd 'muxcover -dmux=<cost>' and '-nopartial' to CHANGELOG
Eddie Hung [Sat, 22 Jun 2019 03:30:24 +0000 (20:30 -0700)]
Add 'muxcover -dmux=<cost>' and '-nopartial' to CHANGELOG

5 years agoMerge remote-tracking branch 'origin/master' into xaig
Eddie Hung [Sat, 22 Jun 2019 00:43:29 +0000 (17:43 -0700)]
Merge remote-tracking branch 'origin/master' into xaig

5 years agoFix CHANGELOG
Eddie Hung [Sat, 22 Jun 2019 00:39:56 +0000 (17:39 -0700)]
Fix CHANGELOG

5 years agoReduce log_debug spam in parse_xaiger()
Eddie Hung [Sat, 22 Jun 2019 00:33:49 +0000 (17:33 -0700)]
Reduce log_debug spam in parse_xaiger()

5 years agoDo not rename non LUT cells in abc9
Eddie Hung [Fri, 21 Jun 2019 22:46:45 +0000 (15:46 -0700)]
Do not rename non LUT cells in abc9

5 years agoReplace assert with error message
Eddie Hung [Fri, 21 Jun 2019 22:45:51 +0000 (15:45 -0700)]
Replace assert with error message

5 years agoAdd log_push()/log_pop() inside write_xaiger
Eddie Hung [Sat, 22 Jun 2019 00:16:38 +0000 (17:16 -0700)]
Add log_push()/log_pop() inside write_xaiger

5 years agoMerge pull request #1108 from YosysHQ/clifford/fix1091
Eddie Hung [Sat, 22 Jun 2019 00:13:41 +0000 (17:13 -0700)]
Merge pull request #1108 from YosysHQ/clifford/fix1091

Add support for partial matches to muxcover

5 years agoOne more workaround for gcc-4.8
Eddie Hung [Fri, 21 Jun 2019 21:35:58 +0000 (14:35 -0700)]
One more workaround for gcc-4.8

5 years agoWorkaround issues exposed by gcc-4.8
Eddie Hung [Fri, 21 Jun 2019 21:23:39 +0000 (14:23 -0700)]
Workaround issues exposed by gcc-4.8

5 years agoNo point logging constant bit
Eddie Hung [Fri, 21 Jun 2019 19:46:55 +0000 (12:46 -0700)]
No point logging constant bit

5 years agoMove comment
Eddie Hung [Fri, 21 Jun 2019 19:43:20 +0000 (12:43 -0700)]
Move comment

5 years agoFix json formatting
Miodrag Milanovic [Fri, 21 Jun 2019 18:01:40 +0000 (20:01 +0200)]
Fix json formatting

5 years agoAdd upto and offset to JSON ports
Miodrag Milanovic [Fri, 21 Jun 2019 17:47:25 +0000 (19:47 +0200)]
Add upto and offset to JSON ports

5 years agoMerge pull request #1123 from mmicko/fix_typo
Clifford Wolf [Fri, 21 Jun 2019 17:25:35 +0000 (19:25 +0200)]
Merge pull request #1123 from mmicko/fix_typo

Fix json frontend loading upto

5 years agoReplace "muxcover -freedecode" with "muxcover -dmux=cost"
Clifford Wolf [Fri, 21 Jun 2019 17:24:41 +0000 (19:24 +0200)]
Replace "muxcover -freedecode" with "muxcover -dmux=cost"

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoFix typo
Miodrag Milanovic [Fri, 21 Jun 2019 17:09:34 +0000 (19:09 +0200)]
Fix typo

5 years agoMerge pull request #1085 from YosysHQ/eddie/shregmap_improve
Eddie Hung [Fri, 21 Jun 2019 15:56:56 +0000 (08:56 -0700)]
Merge pull request #1085 from YosysHQ/eddie/shregmap_improve

Improve shregmap to handle case where first flop is common to two chains

5 years agoMerge pull request #1122 from YosysHQ/clifford/jsonports
Clifford Wolf [Fri, 21 Jun 2019 14:58:12 +0000 (16:58 +0200)]
Merge pull request #1122 from YosysHQ/clifford/jsonports

Added JSON upto and offset

5 years agoAdded JSON upto and offset
Clifford Wolf [Fri, 21 Jun 2019 13:22:17 +0000 (15:22 +0200)]
Added JSON upto and offset

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoMerge pull request #1121 from YosysHQ/ecp5-ccu2c-inv
Clifford Wolf [Fri, 21 Jun 2019 13:07:39 +0000 (15:07 +0200)]
Merge pull request #1121 from YosysHQ/ecp5-ccu2c-inv

ecp5: Improve mapping of $alu when BI is used

5 years agoecp5: Improve mapping of $alu when BI is used
David Shah [Fri, 21 Jun 2019 08:44:13 +0000 (09:44 +0100)]
ecp5: Improve mapping of $alu when BI is used

Signed-off-by: David Shah <dave@ds0.me>
5 years agoMerge pull request #1117 from bwidawsk/more-home
Clifford Wolf [Fri, 21 Jun 2019 08:13:51 +0000 (10:13 +0200)]
Merge pull request #1117 from bwidawsk/more-home

Add a few more filename rewrites

5 years agoMerge pull request #1119 from YosysHQ/eddie/fix1118
Clifford Wolf [Fri, 21 Jun 2019 08:13:13 +0000 (10:13 +0200)]
Merge pull request #1119 from YosysHQ/eddie/fix1118

Make genvar a signed type

5 years agoMerge pull request #1116 from YosysHQ/eddie/fix1115
Clifford Wolf [Fri, 21 Jun 2019 08:12:32 +0000 (10:12 +0200)]
Merge pull request #1116 from YosysHQ/eddie/fix1115

Sign extend unsized 'bx and 'bz values

5 years agoAdd "muxcover -freedecode"
Clifford Wolf [Fri, 21 Jun 2019 08:02:10 +0000 (10:02 +0200)]
Add "muxcover -freedecode"

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoFix spacing
Eddie Hung [Fri, 21 Jun 2019 05:29:40 +0000 (22:29 -0700)]
Fix spacing

5 years agoRevert Makefile
Eddie Hung [Fri, 21 Jun 2019 05:28:55 +0000 (22:28 -0700)]
Revert Makefile

5 years agoRefactor bit2aig for less lookups
Eddie Hung [Fri, 21 Jun 2019 05:09:13 +0000 (22:09 -0700)]
Refactor bit2aig for less lookups

5 years agoFix gcc invalidation behaviour for write_aiger
Eddie Hung [Fri, 21 Jun 2019 04:56:02 +0000 (21:56 -0700)]
Fix gcc invalidation behaviour for write_aiger

5 years agoFix gcc error, due to dict invalidation during recursion
Eddie Hung [Fri, 21 Jun 2019 04:55:08 +0000 (21:55 -0700)]
Fix gcc error, due to dict invalidation during recursion

5 years agoFix gcc warning of potentially uninitialised
Eddie Hung [Fri, 21 Jun 2019 04:53:27 +0000 (21:53 -0700)]
Fix gcc warning of potentially uninitialised

5 years agoFix gcc invalidation behaviour for write_aiger
Eddie Hung [Fri, 21 Jun 2019 04:56:02 +0000 (21:56 -0700)]
Fix gcc invalidation behaviour for write_aiger

5 years agoImprovements in muxcover
Clifford Wolf [Thu, 20 Jun 2019 09:30:27 +0000 (11:30 +0200)]
Improvements in muxcover

- Slightly under-estimate cost of decoder muxes
- Prefer larger muxes at tree root at same cost
- Don't double-count input cost for partial muxes
- Add debug log output

5 years agoMissing a `clean` and `opt_expr -mux_bool` in test
Eddie Hung [Wed, 19 Jun 2019 17:15:41 +0000 (10:15 -0700)]
Missing a `clean` and `opt_expr -mux_bool` in test

5 years agoAdd test
Eddie Hung [Wed, 19 Jun 2019 17:07:34 +0000 (10:07 -0700)]
Add test

5 years agoAdd support for partial matches to muxcover, fixes #1091
Clifford Wolf [Wed, 19 Jun 2019 11:15:54 +0000 (13:15 +0200)]
Add support for partial matches to muxcover, fixes #1091

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agowrite_xaiger to flatten 1'bx/1'bz to 1'b0 again
Eddie Hung [Fri, 21 Jun 2019 02:40:17 +0000 (19:40 -0700)]
write_xaiger to flatten 1'bx/1'bz to 1'b0 again

5 years agoFix simple_abc9/generate test with 1'bx at MSB
Eddie Hung [Fri, 21 Jun 2019 02:37:03 +0000 (19:37 -0700)]
Fix simple_abc9/generate test with 1'bx at MSB

5 years agoFix different abc9 test
Eddie Hung [Fri, 21 Jun 2019 02:31:22 +0000 (19:31 -0700)]
Fix different abc9 test

5 years agoFix broken abc9.v test due to inout being 1'bx
Eddie Hung [Fri, 21 Jun 2019 02:27:00 +0000 (19:27 -0700)]
Fix broken abc9.v test due to inout being 1'bx

5 years agoRun simple_abc9 tests
Eddie Hung [Fri, 21 Jun 2019 02:06:51 +0000 (19:06 -0700)]
Run simple_abc9 tests

5 years agoMerge remote-tracking branch 'origin/master' into xaig
Eddie Hung [Fri, 21 Jun 2019 02:00:36 +0000 (19:00 -0700)]
Merge remote-tracking branch 'origin/master' into xaig

5 years agoFix issue with part of PI being 1'bx
Eddie Hung [Fri, 21 Jun 2019 00:29:45 +0000 (17:29 -0700)]
Fix issue with part of PI being 1'bx

5 years agoCall opt_expr -mux_undef to get rid of 1'bx in muxes prior to abc
Eddie Hung [Thu, 20 Jun 2019 23:45:09 +0000 (16:45 -0700)]
Call opt_expr -mux_undef to get rid of 1'bx in muxes prior to abc

5 years agoHandle COs driven by 1'bx
Eddie Hung [Thu, 20 Jun 2019 17:47:20 +0000 (10:47 -0700)]
Handle COs driven by 1'bx

5 years agoDo not call "setundef -zero" in abc9
Eddie Hung [Thu, 20 Jun 2019 17:22:14 +0000 (10:22 -0700)]
Do not call "setundef -zero" in abc9

5 years agowrite_xaiger to skip POs driven by 1'bx
Eddie Hung [Thu, 20 Jun 2019 17:21:57 +0000 (10:21 -0700)]
write_xaiger to skip POs driven by 1'bx

5 years agoActually, there might not be any harm in updating sigmap...
Eddie Hung [Fri, 21 Jun 2019 00:03:05 +0000 (17:03 -0700)]
Actually, there might not be any harm in updating sigmap...

5 years agoAdd comment as per @cliffordwolf
Eddie Hung [Thu, 20 Jun 2019 23:57:54 +0000 (16:57 -0700)]
Add comment as per @cliffordwolf

5 years agoAdd test
Eddie Hung [Thu, 20 Jun 2019 23:07:22 +0000 (16:07 -0700)]
Add test

5 years agoMake genvar a signed type
Eddie Hung [Thu, 20 Jun 2019 23:04:12 +0000 (16:04 -0700)]
Make genvar a signed type

5 years agoAdd CHANGELOG entry
Eddie Hung [Thu, 20 Jun 2019 19:45:40 +0000 (12:45 -0700)]
Add CHANGELOG entry

5 years agoExtend sign extension tests
Eddie Hung [Thu, 20 Jun 2019 19:43:59 +0000 (12:43 -0700)]
Extend sign extension tests

5 years agoMaintain "is_unsized" state of constants
Eddie Hung [Thu, 20 Jun 2019 19:43:39 +0000 (12:43 -0700)]
Maintain "is_unsized" state of constants

5 years agoRevert "Fix sign extension when sign is 1'bx"
Eddie Hung [Thu, 20 Jun 2019 19:40:05 +0000 (12:40 -0700)]
Revert "Fix sign extension when sign is 1'bx"

This reverts commit 0221f3e1c5b427678c5679027ee47ec7c0b8321d.

5 years agoAdd a few more filename rewrites
Ben Widawsky [Thu, 20 Jun 2019 17:27:59 +0000 (10:27 -0700)]
Add a few more filename rewrites

This now allows a full pipeline to work, something such as:
yosys -p "synth_ecp5 -json ~/work/fpga/prjtrellis/examples/ecp5_evn/blinky.v"

Otherwise, you will get something along the lines of:
ERROR: Can't open output file `~/work/fpga/prjtrellis/examples/ecp5_evn/blinky.v' for writing: No such file or directory

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
5 years agoRemove leftover comment
Eddie Hung [Thu, 20 Jun 2019 17:15:04 +0000 (10:15 -0700)]
Remove leftover comment

5 years agoAdd test
Eddie Hung [Thu, 20 Jun 2019 17:10:43 +0000 (10:10 -0700)]
Add test

5 years agoFix sign extension when sign is 1'bx
Eddie Hung [Thu, 20 Jun 2019 17:04:42 +0000 (10:04 -0700)]
Fix sign extension when sign is 1'bx

5 years agoFix typo, fixes #1095
Clifford Wolf [Thu, 20 Jun 2019 13:34:52 +0000 (15:34 +0200)]
Fix typo, fixes #1095

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoImprove shregmap help message, fixes #1113
Clifford Wolf [Thu, 20 Jun 2019 13:23:55 +0000 (15:23 +0200)]
Improve shregmap help message, fixes #1113

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoUpdate some .gitignore files
Clifford Wolf [Thu, 20 Jun 2019 12:27:57 +0000 (14:27 +0200)]
Update some .gitignore files

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoFix typo
Clifford Wolf [Thu, 20 Jun 2019 10:23:07 +0000 (12:23 +0200)]
Fix typo

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoMerge branch 'towoe-unpacked_arrays'
Clifford Wolf [Thu, 20 Jun 2019 10:06:58 +0000 (12:06 +0200)]
Merge branch 'towoe-unpacked_arrays'

5 years agoAdd proper test for SV-style arrays
Clifford Wolf [Thu, 20 Jun 2019 10:06:07 +0000 (12:06 +0200)]
Add proper test for SV-style arrays

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoMerge branch 'unpacked_arrays' of https://github.com/towoe/yosys-sv into towoe-unpack...
Clifford Wolf [Thu, 20 Jun 2019 10:03:00 +0000 (12:03 +0200)]
Merge branch 'unpacked_arrays' of https://github.com/towoe/yosys-sv into towoe-unpacked_arrays

5 years agoMerge pull request #1111 from acw1251/help_summary_fixes
Eddie Hung [Wed, 19 Jun 2019 22:30:50 +0000 (15:30 -0700)]
Merge pull request #1111 from acw1251/help_summary_fixes

Fixed the help summary line for a few commands

5 years agoFixed small typo in ice40_unlut help summary
acw1251 [Wed, 19 Jun 2019 20:39:46 +0000 (16:39 -0400)]
Fixed small typo in ice40_unlut help summary

5 years agoFixed the help summary line for a few commands
acw1251 [Wed, 19 Jun 2019 19:27:04 +0000 (15:27 -0400)]
Fixed the help summary line for a few commands

5 years agoFix bug in #1078, add entry to CHANGELOG
Eddie Hung [Wed, 19 Jun 2019 16:51:11 +0000 (09:51 -0700)]
Fix bug in #1078, add entry to CHANGELOG

5 years agoMerge pull request #1109 from YosysHQ/clifford/fix1106
Clifford Wolf [Wed, 19 Jun 2019 15:25:39 +0000 (17:25 +0200)]
Merge pull request #1109 from YosysHQ/clifford/fix1106

Add "read_verilog -pwires" feature

5 years agoAdd "read_verilog -pwires" feature, closes #1106
Clifford Wolf [Wed, 19 Jun 2019 12:38:50 +0000 (14:38 +0200)]
Add "read_verilog -pwires" feature, closes #1106

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoMerge pull request #1105 from YosysHQ/clifford/fixlogicinit
Clifford Wolf [Wed, 19 Jun 2019 11:53:07 +0000 (13:53 +0200)]
Merge pull request #1105 from YosysHQ/clifford/fixlogicinit

Improve handling of initial/default values

5 years agoUnpacked array declaration using size
Tobias Wölfel [Wed, 19 Jun 2019 10:47:48 +0000 (12:47 +0200)]
Unpacked array declaration using size

Allows fixed-sized array dimension specified by a single number.

This commit is based on the work from PeterCrozier
https://github.com/YosysHQ/yosys/pull/560.
But is split out of the original work.

5 years agoMake tests/aiger less chatty
Clifford Wolf [Wed, 19 Jun 2019 10:20:35 +0000 (12:20 +0200)]
Make tests/aiger less chatty

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoAdd defvalue test, minor autotest fixes for .sv files
Clifford Wolf [Wed, 19 Jun 2019 10:12:08 +0000 (12:12 +0200)]
Add defvalue test, minor autotest fixes for .sv files

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoUse input default values in hierarchy pass
Clifford Wolf [Wed, 19 Jun 2019 09:49:20 +0000 (11:49 +0200)]
Use input default values in hierarchy pass

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoAdd defaultvalue attribute
Clifford Wolf [Wed, 19 Jun 2019 09:37:11 +0000 (11:37 +0200)]
Add defaultvalue attribute

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoFix handling of "logic" variables with initial value
Clifford Wolf [Wed, 19 Jun 2019 09:25:11 +0000 (11:25 +0200)]
Fix handling of "logic" variables with initial value

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoMerge pull request #1100 from bwidawsk/home
Clifford Wolf [Wed, 19 Jun 2019 08:52:59 +0000 (10:52 +0200)]
Merge pull request #1100 from bwidawsk/home

Support ~ in filename parsing

5 years agoMerge pull request #1104 from whitequark/case-semantics
Clifford Wolf [Wed, 19 Jun 2019 08:50:32 +0000 (10:50 +0200)]
Merge pull request #1104 from whitequark/case-semantics

Clarify switch/case semantics in RTLIL

5 years agoExplain exact semantics of switch and case rules in the manual.
whitequark [Wed, 19 Jun 2019 05:22:40 +0000 (05:22 +0000)]
Explain exact semantics of switch and case rules in the manual.

5 years agoIn RTLIL::Module::check(), check process invariants.
whitequark [Wed, 19 Jun 2019 05:22:13 +0000 (05:22 +0000)]
In RTLIL::Module::check(), check process invariants.

5 years agoSupport filename rewrite in backends
Ben Widawsky [Mon, 17 Jun 2019 21:45:48 +0000 (14:45 -0700)]
Support filename rewrite in backends

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
5 years agoSupport ~ for home directory
Ben Widawsky [Mon, 17 Jun 2019 21:45:11 +0000 (14:45 -0700)]
Support ~ for home directory

This is tested on Linux only

v2:
Wrap functioanlity in ifndef _WIN32 (eddiehung)
Find '~/' instead of '~' (cliffordwolf)

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
5 years agoReally permute Xilinx LUT mappings as default LUT6.I5:A6
Eddie Hung [Tue, 18 Jun 2019 18:48:48 +0000 (11:48 -0700)]
Really permute Xilinx LUT mappings as default LUT6.I5:A6

5 years agoRevert "Fix (do not) permute LUT inputs, but permute mux selects"
Eddie Hung [Tue, 18 Jun 2019 18:35:21 +0000 (11:35 -0700)]
Revert "Fix (do not) permute LUT inputs, but permute mux selects"

This reverts commit da3d2eedd2b6391621e81b3eaaa28a571e058f9d.

5 years agoClean up
Eddie Hung [Tue, 18 Jun 2019 16:50:37 +0000 (09:50 -0700)]
Clean up

5 years agoFix (do not) permute LUT inputs, but permute mux selects
Eddie Hung [Tue, 18 Jun 2019 16:49:57 +0000 (09:49 -0700)]
Fix (do not) permute LUT inputs, but permute mux selects