yosys.git
5 years agoUpdate README.md
Clifford Wolf [Thu, 5 Sep 2019 15:20:29 +0000 (17:20 +0200)]
Update README.md

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoRename conflicting wires on flatten/techmap, add "hierconn" attribute, fixes #1220
Clifford Wolf [Thu, 5 Sep 2019 11:51:53 +0000 (13:51 +0200)]
Rename conflicting wires on flatten/techmap, add "hierconn" attribute, fixes #1220

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoAdd flatten handling of pre-existing wires as created by interfaces, fixes #1145
Clifford Wolf [Mon, 26 Aug 2019 22:55:43 +0000 (00:55 +0200)]
Add flatten handling of pre-existing wires as created by interfaces, fixes #1145

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoMerge pull request #1356 from emilazy/fix-makefile-shell
whitequark [Thu, 5 Sep 2019 00:20:47 +0000 (00:20 +0000)]
Merge pull request #1356 from emilazy/fix-makefile-shell

Use $(shell :; ...) in Makefile to force shell

5 years agoUse $(shell :; ...) in Makefile to force shell
Emily [Wed, 4 Sep 2019 23:30:29 +0000 (00:30 +0100)]
Use $(shell :; ...) in Makefile to force shell

Did you think that `$(shell command -v ...)` would actually get run by
the shell? Foolish mortal; GNU Make is obviously far more wise than
thee, as it optimizes it to a direct -- and hence broken (since
`command` is a shell builtin) -- exec. This horrifying contortion
ensures that an actual shell runs the command and fixes the behaviour.

@Shizmob found the source of this misbehaviour; turns out gmake has a
hard-coded, incomplete list of shell builtins:

    https://github.com/mirror/make/blob/715c787dc69bac37827a7d6ea6d40a86c55b5583/src/job.c#L2691

This contains `command`, but the whole function is full of horrible
heuristic garbage so who knows. I'm so sorry.

5 years agoMerge pull request #1354 from emilazy/remove-which-use
whitequark [Wed, 4 Sep 2019 18:55:17 +0000 (18:55 +0000)]
Merge pull request #1354 from emilazy/remove-which-use

Replace `which` with `command -v` in Makefile too

5 years agoReplace `which` with `command -v` in Makefile too
Emily [Wed, 4 Sep 2019 18:01:00 +0000 (19:01 +0100)]
Replace `which` with `command -v` in Makefile too

5 years agoMerge pull request #1338 from YosysHQ/eddie/deferred_top
Eddie Hung [Wed, 4 Sep 2019 17:55:41 +0000 (10:55 -0700)]
Merge pull request #1338 from YosysHQ/eddie/deferred_top

hierarchy -auto-top to work with (* top *) modules from read/read_verilog -defer

5 years agoAdopt @cliffordwolf's suggestion
Eddie Hung [Tue, 3 Sep 2019 19:18:50 +0000 (12:18 -0700)]
Adopt @cliffordwolf's suggestion

5 years agoExpand test with `hierarchy' without -auto-top
Eddie Hung [Tue, 3 Sep 2019 19:17:26 +0000 (12:17 -0700)]
Expand test with `hierarchy' without -auto-top

5 years agoAdd `read -noverific` before read
Eddie Hung [Tue, 3 Sep 2019 17:52:34 +0000 (10:52 -0700)]
Add `read -noverific` before read

5 years agoMerge remote-tracking branch 'origin/master' into eddie/deferred_top
Eddie Hung [Tue, 3 Sep 2019 17:49:21 +0000 (10:49 -0700)]
Merge remote-tracking branch 'origin/master' into eddie/deferred_top

5 years agoMerge pull request #1351 from emilazy/remove-which-use
Clifford Wolf [Tue, 3 Sep 2019 07:27:47 +0000 (09:27 +0200)]
Merge pull request #1351 from emilazy/remove-which-use

Use `command -v` rather than `which`

5 years agoUse `command -v` rather than `which`
Emily [Mon, 2 Sep 2019 23:57:32 +0000 (00:57 +0100)]
Use `command -v` rather than `which`

5 years agoMerge branch 'master' of github.com:YosysHQ/yosys
Eddie Hung [Mon, 2 Sep 2019 19:13:33 +0000 (12:13 -0700)]
Merge branch 'master' of github.com:YosysHQ/yosys

5 years agoRecognise built-in types (e.g. $_DFF_*)
Eddie Hung [Sat, 31 Aug 2019 03:15:09 +0000 (20:15 -0700)]
Recognise built-in types (e.g. $_DFF_*)

5 years agoMerge pull request #1344 from YosysHQ/eddie/ice40_signed_macc
Eddie Hung [Sun, 1 Sep 2019 17:11:33 +0000 (10:11 -0700)]
Merge pull request #1344 from YosysHQ/eddie/ice40_signed_macc

ice40_dsp to allow signed multipliers

5 years agoMerge pull request #1347 from mmicko/fix_select_error_msg
Clifford Wolf [Sun, 1 Sep 2019 11:30:57 +0000 (13:30 +0200)]
Merge pull request #1347 from mmicko/fix_select_error_msg

Fix select command error msg, fixes issue #1081

5 years agoMerge pull request #1346 from mmicko/fix_ecp5_cells_sim
David Shah [Sun, 1 Sep 2019 09:01:27 +0000 (10:01 +0100)]
Merge pull request #1346 from mmicko/fix_ecp5_cells_sim

Fix TRELLIS_FF simulation model

5 years agoFix select command error msg, fixes issue #1081
Miodrag Milanovic [Sun, 1 Sep 2019 09:00:09 +0000 (11:00 +0200)]
Fix select command error msg, fixes issue #1081

5 years agoFix TRELLIS_FF simulation model
Miodrag Milanovic [Sat, 31 Aug 2019 09:12:06 +0000 (11:12 +0200)]
Fix TRELLIS_FF simulation model

5 years agoecp5_gsr: Fix typo
David Shah [Sat, 31 Aug 2019 08:58:46 +0000 (09:58 +0100)]
ecp5_gsr: Fix typo

Signed-off-by: David Shah <dave@ds0.me>
5 years agoMissing dep for test_pmgen
Eddie Hung [Fri, 30 Aug 2019 21:00:40 +0000 (14:00 -0700)]
Missing dep for test_pmgen

5 years agoMerge pull request #1340 from YosysHQ/eddie/abc_no_clean
Eddie Hung [Fri, 30 Aug 2019 19:27:09 +0000 (12:27 -0700)]
Merge pull request #1340 from YosysHQ/eddie/abc_no_clean

abc9 to not call "clean" at end of run (often called outside)

5 years agoImprove tests/ice40/macc.ys for SB_MAC16
Eddie Hung [Fri, 30 Aug 2019 19:22:59 +0000 (12:22 -0700)]
Improve tests/ice40/macc.ys for SB_MAC16

5 years agoDo not restrict multiplier to unsigned
Eddie Hung [Fri, 30 Aug 2019 19:22:14 +0000 (12:22 -0700)]
Do not restrict multiplier to unsigned

5 years agoMerge pull request #1310 from SergeyDegtyar/master
Eddie Hung [Fri, 30 Aug 2019 17:54:22 +0000 (10:54 -0700)]
Merge pull request #1310 from SergeyDegtyar/master

Add new tests for ice40 architecture

5 years agoMerge pull request #1321 from YosysHQ/eddie/xilinx_srl
Eddie Hung [Fri, 30 Aug 2019 17:32:03 +0000 (10:32 -0700)]
Merge pull request #1321 from YosysHQ/eddie/xilinx_srl

xilinx_srl pass for shift register extraction

5 years agoFormat `-pwires`
Eddie Hung [Fri, 30 Aug 2019 17:27:07 +0000 (10:27 -0700)]
Format `-pwires`

5 years agoMerge remote-tracking branch 'origin/master' into eddie/xilinx_srl
Eddie Hung [Fri, 30 Aug 2019 16:37:32 +0000 (09:37 -0700)]
Merge remote-tracking branch 'origin/master' into eddie/xilinx_srl

5 years agomacc test fix
SergeyDegtyar [Fri, 30 Aug 2019 13:01:36 +0000 (16:01 +0300)]
macc test fix

5 years agoMerge pull request #1343 from whitequark/diamond-ffs
David Shah [Fri, 30 Aug 2019 12:28:21 +0000 (13:28 +0100)]
Merge pull request #1343 from whitequark/diamond-ffs

Add/update every Diamond FF primitive

5 years agoecp5: Add simulation equivalence check for Diamond FF implementations
David Shah [Fri, 30 Aug 2019 12:25:55 +0000 (13:25 +0100)]
ecp5: Add simulation equivalence check for Diamond FF implementations

Signed-off-by: David Shah <dave@ds0.me>
5 years agoFix macc test
SergeyDegtyar [Fri, 30 Aug 2019 12:22:46 +0000 (15:22 +0300)]
Fix macc test

5 years agodiv_mod test fix
SergeyDegtyar [Fri, 30 Aug 2019 11:17:03 +0000 (14:17 +0300)]
div_mod test fix

5 years agofix div_mod test
SergeyDegtyar [Fri, 30 Aug 2019 10:22:11 +0000 (13:22 +0300)]
fix div_mod test

5 years agoecp5: deduplicate Diamond FD/IFS/OFS/IO primitives.
whitequark [Fri, 30 Aug 2019 10:05:09 +0000 (10:05 +0000)]
ecp5: deduplicate Diamond FD/IFS/OFS/IO primitives.

5 years agoecp5: allow (and enable by default) GSR on FD/IFS/OFS primitives.
whitequark [Fri, 30 Aug 2019 09:56:19 +0000 (09:56 +0000)]
ecp5: allow (and enable by default) GSR on FD/IFS/OFS primitives.

5 years agoecp5: add missing FD primitives.
whitequark [Fri, 30 Aug 2019 09:54:48 +0000 (09:54 +0000)]
ecp5: add missing FD primitives.

5 years agoecp5: fix CEMUX on IFS/OFS primitives.
whitequark [Fri, 30 Aug 2019 09:42:33 +0000 (09:42 +0000)]
ecp5: fix CEMUX on IFS/OFS primitives.

5 years agoFix test for counter
SergeyDegtyar [Fri, 30 Aug 2019 09:38:28 +0000 (12:38 +0300)]
Fix test for counter

5 years agoMerge branch 'master' into master
Sergey [Fri, 30 Aug 2019 07:29:47 +0000 (10:29 +0300)]
Merge branch 'master' into master

5 years agoAdd new tests.
SergeyDegtyar [Fri, 30 Aug 2019 06:45:33 +0000 (09:45 +0300)]
Add new tests.

5 years agoRemove unnecessary common.v(assertions for testbenches).
SergeyDegtyar [Fri, 30 Aug 2019 06:17:32 +0000 (09:17 +0300)]
Remove unnecessary common.v(assertions for testbenches).

5 years agoRemove simulation from run-test.sh (unnecessary paths)
SergeyDegtyar [Fri, 30 Aug 2019 06:11:03 +0000 (09:11 +0300)]
Remove simulation from run-test.sh (unnecessary paths)

5 years agoRemove simulation from run-test.sh
SergeyDegtyar [Fri, 30 Aug 2019 05:53:35 +0000 (08:53 +0300)]
Remove simulation from run-test.sh

5 years agoMerge pull request #1337 from YosysHQ/eddie/fix_carry_wrapper
Eddie Hung [Fri, 30 Aug 2019 05:10:45 +0000 (22:10 -0700)]
Merge pull request #1337 from YosysHQ/eddie/fix_carry_wrapper

Fix $__ICE40_CARRY_WRAPPER, restore abc9 functionality

5 years agoNicer formatting
Eddie Hung [Fri, 30 Aug 2019 00:24:48 +0000 (17:24 -0700)]
Nicer formatting

5 years agoparse_xaiger() to do "clean -purge"
Eddie Hung [Fri, 30 Aug 2019 00:24:25 +0000 (17:24 -0700)]
parse_xaiger() to do "clean -purge"

5 years agoOutput has priority over input when stitching in abc9
Eddie Hung [Fri, 30 Aug 2019 00:24:03 +0000 (17:24 -0700)]
Output has priority over input when stitching in abc9

5 years agoGroup abc_* attribute doc with other attributes
Eddie Hung [Thu, 29 Aug 2019 19:13:52 +0000 (12:13 -0700)]
Group abc_* attribute doc with other attributes

5 years agoabc9 to not call "clean" at end of run (often called outside)
Eddie Hung [Thu, 29 Aug 2019 19:12:59 +0000 (12:12 -0700)]
abc9 to not call "clean" at end of run (often called outside)

5 years agoMerge pull request #2 from YosysHQ/master
Sergey [Thu, 29 Aug 2019 18:09:40 +0000 (21:09 +0300)]
Merge pull request #2 from YosysHQ/master

Pull from upstream

5 years agoMerge pull request #3 from YosysHQ/Sergey/tests_ice40
Sergey [Thu, 29 Aug 2019 18:07:34 +0000 (21:07 +0300)]
Merge pull request #3 from YosysHQ/Sergey/tests_ice40

Merge my changes to tests_ice40 branch

5 years agoFix typo that's gone unnoticed for 5 months!?!
Eddie Hung [Thu, 29 Aug 2019 17:33:28 +0000 (10:33 -0700)]
Fix typo that's gone unnoticed for 5 months!?!

5 years agoAdd constant expression attribute to test
Eddie Hung [Thu, 29 Aug 2019 16:10:20 +0000 (09:10 -0700)]
Add constant expression attribute to test

5 years agoRemove newline
Eddie Hung [Thu, 29 Aug 2019 16:08:58 +0000 (09:08 -0700)]
Remove newline

5 years agoRestore non-deferred code, deferred case to ignore non constant attr
Eddie Hung [Thu, 29 Aug 2019 16:02:10 +0000 (09:02 -0700)]
Restore non-deferred code, deferred case to ignore non constant attr

5 years agoRename boxes too
Eddie Hung [Thu, 29 Aug 2019 14:03:32 +0000 (07:03 -0700)]
Rename boxes too

5 years agoBump YOSYS_VER
Clifford Wolf [Thu, 29 Aug 2019 10:05:26 +0000 (12:05 +0200)]
Bump YOSYS_VER

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoAdd comments for examples from Lattice user guide
SergeyDegtyar [Thu, 29 Aug 2019 07:49:46 +0000 (10:49 +0300)]
Add comments for examples from Lattice user guide

5 years ago-auto-top should check $abstract (deferred) modules with (* top *)
Eddie Hung [Thu, 29 Aug 2019 02:59:25 +0000 (19:59 -0700)]
-auto-top should check $abstract (deferred) modules with (* top *)

5 years agoread_verilog -defer should still populate module attributes
Eddie Hung [Thu, 29 Aug 2019 02:59:09 +0000 (19:59 -0700)]
read_verilog -defer should still populate module attributes

5 years agoAdd failing test
Eddie Hung [Thu, 29 Aug 2019 02:58:58 +0000 (19:58 -0700)]
Add failing test

5 years agoAdd run-test.sh too
Eddie Hung [Thu, 29 Aug 2019 01:47:48 +0000 (18:47 -0700)]
Add run-test.sh too

5 years agoDo not overwrite LUT param
Eddie Hung [Thu, 29 Aug 2019 01:45:09 +0000 (18:45 -0700)]
Do not overwrite LUT param

5 years agoAdd SB_CARRY to ice40_opt test
Eddie Hung [Thu, 29 Aug 2019 01:44:57 +0000 (18:44 -0700)]
Add SB_CARRY to ice40_opt test

5 years agoAdd ice40_opt test
Eddie Hung [Thu, 29 Aug 2019 01:34:32 +0000 (18:34 -0700)]
Add ice40_opt test

5 years agoCleanup
Eddie Hung [Thu, 29 Aug 2019 01:10:33 +0000 (18:10 -0700)]
Cleanup

5 years agoTrailing comma
Eddie Hung [Thu, 29 Aug 2019 00:25:54 +0000 (17:25 -0700)]
Trailing comma

5 years agoAdapt to $__ICE40_CARRY_WRAPPER
Eddie Hung [Thu, 29 Aug 2019 00:25:05 +0000 (17:25 -0700)]
Adapt to $__ICE40_CARRY_WRAPPER

5 years agoRevert "Remove $__ICE40_FULL_ADDER handling from ice40_opt; cannot reason with"
Eddie Hung [Thu, 29 Aug 2019 00:22:44 +0000 (17:22 -0700)]
Revert "Remove $__ICE40_FULL_ADDER handling from ice40_opt; cannot reason with"

This reverts commit 2aedee1f0e0f6a6214241f51f5c12d4b67c3ef6f.

5 years agoRemove $__ICE40_FULL_ADDER handling from ice40_opt; cannot reason with
Eddie Hung [Thu, 29 Aug 2019 00:07:36 +0000 (17:07 -0700)]
Remove $__ICE40_FULL_ADDER handling from ice40_opt; cannot reason with

CARRY_WRAPPER in the same way since I0 and I3 could be used

5 years agoUpdate box size and timings
Eddie Hung [Thu, 29 Aug 2019 00:07:24 +0000 (17:07 -0700)]
Update box size and timings

5 years agoUpdate to new $__ICE40_CARRY_WRAPPER
Eddie Hung [Thu, 29 Aug 2019 00:07:07 +0000 (17:07 -0700)]
Update to new $__ICE40_CARRY_WRAPPER

5 years agoAccount for D port being a constant
Eddie Hung [Wed, 28 Aug 2019 22:31:55 +0000 (15:31 -0700)]
Account for D port being a constant

5 years agoComment out *.sh used for testbenches as we have no more
Eddie Hung [Wed, 28 Aug 2019 19:36:20 +0000 (12:36 -0700)]
Comment out *.sh used for testbenches as we have no more

5 years agoMerge pull request #1334 from YosysHQ/clifford/async2synclatch
Eddie Hung [Wed, 28 Aug 2019 19:36:06 +0000 (12:36 -0700)]
Merge pull request #1334 from YosysHQ/clifford/async2synclatch

Add $dlatch support to async2sync

5 years agoUse equiv for memory and dpram
Eddie Hung [Wed, 28 Aug 2019 19:30:35 +0000 (12:30 -0700)]
Use equiv for memory and dpram

5 years agoUse equiv_opt for latches
Eddie Hung [Wed, 28 Aug 2019 19:21:15 +0000 (12:21 -0700)]
Use equiv_opt for latches

5 years agoMerge remote-tracking branch 'origin/clifford/async2synclatch' into Sergey/tests_ice40
Eddie Hung [Wed, 28 Aug 2019 19:18:32 +0000 (12:18 -0700)]
Merge remote-tracking branch 'origin/clifford/async2synclatch' into Sergey/tests_ice40

5 years agoNo need to replace Q of slice since $shiftx is autoremove-d
Eddie Hung [Wed, 28 Aug 2019 18:06:11 +0000 (11:06 -0700)]
No need to replace Q of slice since $shiftx is autoremove-d

5 years agoAdd (* clkbuf_sink *) to SRLC16E, reorder ports to match vendor
Eddie Hung [Wed, 28 Aug 2019 17:51:39 +0000 (10:51 -0700)]
Add (* clkbuf_sink *) to SRLC16E, reorder ports to match vendor

5 years agoMore cleanup
Eddie Hung [Wed, 28 Aug 2019 17:19:35 +0000 (10:19 -0700)]
More cleanup

5 years agoMore cleanup
Eddie Hung [Wed, 28 Aug 2019 17:11:09 +0000 (10:11 -0700)]
More cleanup

5 years agoDo not use default_params dict, hardcode default values, cleanup
Eddie Hung [Wed, 28 Aug 2019 17:06:40 +0000 (10:06 -0700)]
Do not use default_params dict, hardcode default values, cleanup

5 years agoAdd .gitignore
Eddie Hung [Wed, 28 Aug 2019 16:55:34 +0000 (09:55 -0700)]
Add .gitignore

5 years agoUse test_pmgen for xilinx_srl
Eddie Hung [Wed, 28 Aug 2019 16:55:09 +0000 (09:55 -0700)]
Use test_pmgen for xilinx_srl

5 years agoAlways generate if no match
Eddie Hung [Wed, 28 Aug 2019 16:54:56 +0000 (09:54 -0700)]
Always generate if no match

5 years agoRename test_pmgen arg xilinx_srl.{fixed,variable}
Eddie Hung [Wed, 28 Aug 2019 16:27:03 +0000 (09:27 -0700)]
Rename test_pmgen arg xilinx_srl.{fixed,variable}

5 years agoDo not simplemap for variable test
Eddie Hung [Wed, 28 Aug 2019 16:26:08 +0000 (09:26 -0700)]
Do not simplemap for variable test

5 years agoAdd xilinx_srl test
Eddie Hung [Wed, 28 Aug 2019 16:24:19 +0000 (09:24 -0700)]
Add xilinx_srl test

5 years agoMerge remote-tracking branch 'origin/master' into eddie/xilinx_srl
Eddie Hung [Wed, 28 Aug 2019 16:21:03 +0000 (09:21 -0700)]
Merge remote-tracking branch 'origin/master' into eddie/xilinx_srl

5 years agoMerge pull request #1332 from YosysHQ/dave/ecp5gsr
David Shah [Wed, 28 Aug 2019 11:44:02 +0000 (12:44 +0100)]
Merge pull request #1332 from YosysHQ/dave/ecp5gsr

ecp5: Add GSR and SGSR support

5 years agoMerge pull request #1335 from YosysHQ/clifford/paramap
Clifford Wolf [Wed, 28 Aug 2019 08:35:47 +0000 (10:35 +0200)]
Merge pull request #1335 from YosysHQ/clifford/paramap

Add "paramap" pass

5 years agoFix typo
Clifford Wolf [Wed, 28 Aug 2019 08:06:42 +0000 (10:06 +0200)]
Fix typo

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoAdd "paramap" pass
Clifford Wolf [Wed, 28 Aug 2019 08:03:27 +0000 (10:03 +0200)]
Add "paramap" pass

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoAdd $dlatch support to async2sync
Clifford Wolf [Wed, 28 Aug 2019 07:45:22 +0000 (09:45 +0200)]
Add $dlatch support to async2sync

Signed-off-by: Clifford Wolf <clifford@clifford.at>
5 years agoRevert "Add tests for ecp5"
SergeyDegtyar [Wed, 28 Aug 2019 06:49:58 +0000 (09:49 +0300)]
Revert "Add tests for ecp5"

This reverts commit 2270ead09fb4695442c66fe5c06445235f390f2b.

5 years agoAdd tests for ecp5
SergeyDegtyar [Wed, 28 Aug 2019 06:47:03 +0000 (09:47 +0300)]
Add tests for ecp5