yosys.git
2 years agoRelease version 0.14 yosys-0.14
Miodrag Milanovic [Mon, 7 Feb 2022 16:08:39 +0000 (17:08 +0100)]
Release version 0.14

2 years agoUpdate CHANGELOG and manual
Miodrag Milanovic [Mon, 7 Feb 2022 16:07:48 +0000 (17:07 +0100)]
Update CHANGELOG and manual

2 years agoMerge pull request #3185 from YosysHQ/micko/co_sim
Miodrag Milanović [Mon, 7 Feb 2022 15:36:43 +0000 (16:36 +0100)]
Merge pull request #3185 from YosysHQ/micko/co_sim

Add co-simulation in sim pass

2 years agoBump version
github-actions[bot] [Mon, 7 Feb 2022 00:56:31 +0000 (00:56 +0000)]
Bump version

2 years agonexus: Fix arith_map CO signal.
Marcelina Kościelnicka [Sun, 6 Feb 2022 11:48:44 +0000 (12:48 +0100)]
nexus: Fix arith_map CO signal.

Fixes #3187.

2 years agoError detection for co-simulation
Miodrag Milanovic [Fri, 4 Feb 2022 10:11:36 +0000 (11:11 +0100)]
Error detection for co-simulation

2 years agobug fix and cleanups
Miodrag Milanovic [Fri, 4 Feb 2022 09:01:06 +0000 (10:01 +0100)]
bug fix and cleanups

2 years agoBump version
github-actions[bot] [Thu, 3 Feb 2022 00:54:22 +0000 (00:54 +0000)]
Bump version

2 years agoMerge pull request #3183 from YosysHQ/micko/nto1mux
Miodrag Milanović [Wed, 2 Feb 2022 15:22:53 +0000 (16:22 +0100)]
Merge pull request #3183 from YosysHQ/micko/nto1mux

Use bmux for NTO1MUX

2 years agoUse bmux for NTO1MUX
Miodrag Milanovic [Wed, 2 Feb 2022 15:16:08 +0000 (16:16 +0100)]
Use bmux for NTO1MUX

2 years agoAdd test cases for co-simulation
Miodrag Milanovic [Wed, 2 Feb 2022 12:22:44 +0000 (13:22 +0100)]
Add test cases for co-simulation

2 years agoMerge pull request #3182 from yrabbit/wip-doc2
Miodrag Milanović [Wed, 2 Feb 2022 11:19:17 +0000 (12:19 +0100)]
Merge pull request #3182 from yrabbit/wip-doc2

Correct a typo in the manual

2 years agoCorrect a typo in the manual
YRabbit [Wed, 2 Feb 2022 11:14:38 +0000 (21:14 +1000)]
Correct a typo in the manual

Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
2 years agoFix Visual Studio build
Miodrag Milanovic [Wed, 2 Feb 2022 10:46:06 +0000 (11:46 +0100)]
Fix Visual Studio build

2 years agorespect hide_internal flag
Miodrag Milanovic [Wed, 2 Feb 2022 09:15:22 +0000 (10:15 +0100)]
respect hide_internal flag

2 years agounify cycles counting and cleanup
Miodrag Milanovic [Wed, 2 Feb 2022 09:08:23 +0000 (10:08 +0100)]
unify cycles counting and cleanup

2 years agoadded stimulus mode and param check
Miodrag Milanovic [Wed, 2 Feb 2022 08:37:32 +0000 (09:37 +0100)]
added stimulus mode and param check

2 years agoUpdate comment
Scott Thibault [Wed, 2 Feb 2022 01:30:31 +0000 (20:30 -0500)]
Update comment

2 years agoFix unextend method for signed constants
Scott Thibault [Tue, 1 Feb 2022 22:55:09 +0000 (17:55 -0500)]
Fix unextend method for signed constants

2 years agoerror when no signal found
Miodrag Milanovic [Mon, 31 Jan 2022 16:41:50 +0000 (17:41 +0100)]
error when no signal found

2 years agoMerge pull request #3176 from higuoxing/fix-ref-manual
Miodrag Milanović [Mon, 31 Jan 2022 15:11:00 +0000 (16:11 +0100)]
Merge pull request #3176 from higuoxing/fix-ref-manual

Fix the help message of synth_quicklogic command.

2 years agoCleanup
Miodrag Milanovic [Mon, 31 Jan 2022 12:45:28 +0000 (13:45 +0100)]
Cleanup

2 years agoCompare bits when not all are defined
Miodrag Milanovic [Mon, 31 Jan 2022 12:41:02 +0000 (13:41 +0100)]
Compare bits when not all are defined

2 years agoCleanup
Miodrag Milanovic [Mon, 31 Jan 2022 11:00:15 +0000 (12:00 +0100)]
Cleanup

2 years agomessage update
Miodrag Milanovic [Mon, 31 Jan 2022 10:41:52 +0000 (11:41 +0100)]
message update

2 years agoDisplay simulation time data
Miodrag Milanovic [Mon, 31 Jan 2022 09:52:47 +0000 (10:52 +0100)]
Display simulation time data

2 years agoUse edges when explicit
Miodrag Milanovic [Mon, 31 Jan 2022 08:38:25 +0000 (09:38 +0100)]
Use edges when explicit

2 years agoUpdating initial state and checks
Miodrag Milanovic [Mon, 31 Jan 2022 08:19:34 +0000 (09:19 +0100)]
Updating initial state and checks

2 years agoFix scope
Miodrag Milanovic [Mon, 31 Jan 2022 07:56:29 +0000 (08:56 +0100)]
Fix scope

2 years agoBump version
github-actions[bot] [Mon, 31 Jan 2022 00:54:31 +0000 (00:54 +0000)]
Bump version

2 years agoverilog backend: Emit a `wire` for ports as well.
Marcelina Kościelnicka [Sun, 30 Jan 2022 19:48:50 +0000 (20:48 +0100)]
verilog backend: Emit a `wire` for ports as well.

Fixes #3177.

2 years agoFix the help message of synth_quicklogic.
Xing GUO [Sun, 30 Jan 2022 14:10:05 +0000 (22:10 +0800)]
Fix the help message of synth_quicklogic.

2 years agoopt_reduce: Add $bmux and $demux optimization patterns.
Marcelina Kościelnicka [Sat, 29 Jan 2022 00:01:21 +0000 (01:01 +0100)]
opt_reduce: Add $bmux and $demux optimization patterns.

2 years agoBump version
github-actions[bot] [Sat, 29 Jan 2022 02:48:50 +0000 (02:48 +0000)]
Bump version

2 years agoAdd $bmux and $demux cells.
Marcelina Kościelnicka [Mon, 24 Jan 2022 15:02:29 +0000 (16:02 +0100)]
Add $bmux and $demux cells.

2 years agocheck if stop before start
Miodrag Milanovic [Fri, 28 Jan 2022 18:41:43 +0000 (19:41 +0100)]
check if stop before start

2 years agoset initial state, only flip-flops
Miodrag Milanovic [Fri, 28 Jan 2022 14:59:13 +0000 (15:59 +0100)]
set initial state, only flip-flops

2 years agoignore not found private signals
Miodrag Milanovic [Fri, 28 Jan 2022 13:20:16 +0000 (14:20 +0100)]
ignore not found private signals

2 years agopreserve VCD mangled names
Miodrag Milanovic [Fri, 28 Jan 2022 13:10:39 +0000 (14:10 +0100)]
preserve VCD mangled names

2 years agodetect edges even when x
Miodrag Milanovic [Fri, 28 Jan 2022 12:53:27 +0000 (13:53 +0100)]
detect edges even when x

2 years agorecursive check
Miodrag Milanovic [Fri, 28 Jan 2022 12:24:38 +0000 (13:24 +0100)]
recursive check

2 years agocleanup
Miodrag Milanovic [Fri, 28 Jan 2022 11:54:16 +0000 (12:54 +0100)]
cleanup

2 years agoDo actual compare
Miodrag Milanovic [Fri, 28 Jan 2022 11:50:41 +0000 (12:50 +0100)]
Do actual compare

2 years agoFix for limit_range_end when not writing vcd
Miodrag Milanovic [Fri, 28 Jan 2022 11:15:14 +0000 (12:15 +0100)]
Fix for limit_range_end when not writing vcd

2 years agoAdd more options and time handling
Miodrag Milanovic [Fri, 28 Jan 2022 09:18:02 +0000 (10:18 +0100)]
Add more options and time handling

2 years agoopt_dff: Don't mutate muxes while ModWalker is active.
Marcelina Kościelnicka [Thu, 27 Jan 2022 16:06:57 +0000 (17:06 +0100)]
opt_dff: Don't mutate muxes while ModWalker is active.

2 years agokernel/mem: Add read-first semantic emulation code.
Marcelina Kościelnicka [Thu, 27 Jan 2022 22:26:56 +0000 (23:26 +0100)]
kernel/mem: Add read-first semantic emulation code.

2 years agoBump version
github-actions[bot] [Fri, 28 Jan 2022 02:39:40 +0000 (02:39 +0000)]
Bump version

2 years agomanual: Fix a custom pass example.
Marcelina Kościelnicka [Thu, 27 Jan 2022 22:26:43 +0000 (23:26 +0100)]
manual: Fix a custom pass example.

Fixes #3156.

2 years agomemory_bram: Make use of new mem emulation functions to map more RAMs.
Marcelina Kościelnicka [Thu, 27 Jan 2022 17:19:43 +0000 (18:19 +0100)]
memory_bram: Make use of new mem emulation functions to map more RAMs.

2 years agokernel/mem: Add functions to emulate read port enable/init/reset signals.
Marcelina Kościelnicka [Thu, 27 Jan 2022 15:08:33 +0000 (16:08 +0100)]
kernel/mem: Add functions to emulate read port enable/init/reset signals.

2 years agoBump version
github-actions[bot] [Thu, 27 Jan 2022 00:56:19 +0000 (00:56 +0000)]
Bump version

2 years agochange to windows-2019
Miodrag Milanović [Wed, 26 Jan 2022 17:00:41 +0000 (18:00 +0100)]
change to windows-2019

2 years agoupdate version
Miodrag Milanovic [Wed, 26 Jan 2022 16:24:17 +0000 (17:24 +0100)]
update version

2 years agoDisplay values of outputs
Miodrag Milanovic [Wed, 26 Jan 2022 15:52:36 +0000 (16:52 +0100)]
Display values of outputs

2 years agoFix tabs/spaces
Miodrag Milanovic [Wed, 26 Jan 2022 15:39:51 +0000 (16:39 +0100)]
Fix tabs/spaces

2 years agoCheck if stimulated
Miodrag Milanovic [Wed, 26 Jan 2022 14:51:43 +0000 (15:51 +0100)]
Check if stimulated

2 years agoRead fst and use data to set inputs
Miodrag Milanovic [Wed, 26 Jan 2022 14:50:38 +0000 (15:50 +0100)]
Read fst and use data to set inputs

2 years agoAdd fstdata helper class
Miodrag Milanovic [Wed, 26 Jan 2022 09:23:38 +0000 (10:23 +0100)]
Add fstdata helper class

2 years agoCleanup of config to support platforms
Miodrag Milanovic [Wed, 26 Jan 2022 08:58:27 +0000 (09:58 +0100)]
Cleanup of config to support platforms

2 years agoAdd ability to write to FST file
Miodrag Milanovic [Wed, 26 Jan 2022 08:26:19 +0000 (09:26 +0100)]
Add ability to write to FST file

2 years agoAdd FST library
Miodrag Milanovic [Tue, 25 Jan 2022 08:53:41 +0000 (09:53 +0100)]
Add FST library

2 years agoBump version
github-actions[bot] [Thu, 20 Jan 2022 01:06:01 +0000 (01:06 +0000)]
Bump version

2 years agonexus: Fix BB sim model
gatecat [Wed, 19 Jan 2022 16:04:55 +0000 (16:04 +0000)]
nexus: Fix BB sim model

Signed-off-by: gatecat <gatecat@ds0.me>
2 years agoRemoved dbits 8 since 9 will always be picked
Miodrag Milanovic [Wed, 19 Jan 2022 07:51:25 +0000 (08:51 +0100)]
Removed dbits 8 since 9 will always be picked

2 years agoMerge pull request #3120 from Icenowy/anlogic-bram
Miodrag Milanović [Wed, 19 Jan 2022 07:49:58 +0000 (08:49 +0100)]
Merge pull request #3120 from Icenowy/anlogic-bram

anlogic: support BRAM mapping

2 years agoBump version
github-actions[bot] [Tue, 18 Jan 2022 01:00:53 +0000 (01:00 +0000)]
Bump version

2 years agoMerge pull request #3162 from YosysHQ/mmicko/windows_guidelines
Miodrag Milanović [Mon, 17 Jan 2022 12:20:45 +0000 (13:20 +0100)]
Merge pull request #3162 from YosysHQ/mmicko/windows_guidelines

Add info about VS build

2 years agoUpdate guidelines/Windows
Miodrag Milanović [Mon, 17 Jan 2022 12:11:15 +0000 (13:11 +0100)]
Update guidelines/Windows

Co-authored-by: N. Engelhardt <nakengelhardt@gmail.com>
2 years agoMerge pull request #3145 from nakengelhardt/advertise_suite_in_readme
N. Engelhardt [Mon, 17 Jan 2022 11:50:53 +0000 (12:50 +0100)]
Merge pull request #3145 from nakengelhardt/advertise_suite_in_readme

mention tabby+oss cad suite in readme

2 years agomention distributions' package manager
N. Engelhardt [Mon, 17 Jan 2022 11:49:32 +0000 (12:49 +0100)]
mention distributions' package manager

2 years agoAdd info about VS build
Miodrag Milanović [Mon, 17 Jan 2022 09:07:56 +0000 (10:07 +0100)]
Add info about VS build

2 years agoBump version
github-actions[bot] [Wed, 12 Jan 2022 00:59:23 +0000 (00:59 +0000)]
Bump version

2 years agoForgot one
Miodrag Milanovic [Tue, 11 Jan 2022 08:39:45 +0000 (09:39 +0100)]
Forgot one

2 years agoChange url to https
Miodrag Milanovic [Tue, 11 Jan 2022 07:56:33 +0000 (08:56 +0100)]
Change url to https

2 years agoNext dev cycle
Miodrag Milanovic [Tue, 11 Jan 2022 07:39:34 +0000 (08:39 +0100)]
Next dev cycle

2 years agoRelease version 0.13 yosys-0.13
Miodrag Milanovic [Tue, 11 Jan 2022 07:35:50 +0000 (08:35 +0100)]
Release version 0.13

2 years agoUpdate CHANGELOG
Miodrag Milanovic [Tue, 11 Jan 2022 07:21:12 +0000 (08:21 +0100)]
Update CHANGELOG

2 years agoBump version
github-actions[bot] [Sun, 9 Jan 2022 01:01:33 +0000 (01:01 +0000)]
Bump version

2 years agosv: auto add nosync to certain always_comb local vars
Zachary Snow [Fri, 7 Jan 2022 05:04:00 +0000 (22:04 -0700)]
sv: auto add nosync to certain always_comb local vars

If a local variable is always assigned before it is used, then adding
nosync prevents latches from being needlessly generated.

2 years agosv: fix size cast internal expression extension
Zachary Snow [Thu, 6 Jan 2022 06:33:08 +0000 (23:33 -0700)]
sv: fix size cast internal expression extension

2 years agoBump version
github-actions[bot] [Wed, 5 Jan 2022 01:00:24 +0000 (01:00 +0000)]
Bump version

2 years agologger: fix unmatched expected warnings and errors
Zachary Snow [Tue, 4 Jan 2022 03:12:22 +0000 (20:12 -0700)]
logger: fix unmatched expected warnings and errors

- Prevent unmatched expected error patterns from self-matching
- Prevent infinite recursion on unmatched expected warnings
- Always print the error message for unmatched error patterns
- Add test coverage for all unmatched message types
- Add test coverage for excess matched logs and warnings

2 years agoopt_dff: fix sequence point copy paste bug
Austin Seipp [Tue, 4 Jan 2022 16:49:54 +0000 (10:49 -0600)]
opt_dff: fix sequence point copy paste bug

Newer GCCs emit the following warning for opt_dff:

    passes/opt/opt_dff.cc:560:17: warning: operation on ‘ff.Yosys::FfData::has_clk’ may be undefined [-Wsequence-point]
      560 |      ff.has_clk = ff.has_ce = ff.has_clk = false;
          |      ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Which is correct: the order of whether the read or write of has_clk
occurs first is undefined since there is no sequence point between them.

This is almost certainly just a typo/copy paste error and objectively
wrong, so just fix it.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
2 years agomention tabby+oss cad suite in readme
N. Engelhardt [Tue, 4 Jan 2022 14:44:37 +0000 (15:44 +0100)]
mention tabby+oss cad suite in readme

2 years agomanual: Fix cell-stmt order
gatecat [Sat, 1 Jan 2022 18:26:59 +0000 (18:26 +0000)]
manual: Fix cell-stmt order

Signed-off-by: gatecat <gatecat@ds0.me>
2 years agoBump version
github-actions[bot] [Tue, 4 Jan 2022 00:58:28 +0000 (00:58 +0000)]
Bump version

2 years agofix iverilog compatibility for new case expr tests
Zachary Snow [Wed, 29 Dec 2021 17:38:55 +0000 (10:38 -0700)]
fix iverilog compatibility for new case expr tests

2 years agofixup verilog doubleslash test
Zachary Snow [Thu, 30 Dec 2021 07:06:23 +0000 (00:06 -0700)]
fixup verilog doubleslash test

- add generated doubleslash.v to .gitignore
- ensure backend verilog can be read again

2 years agosv: fix size cast clipping expression width
Zachary Snow [Thu, 30 Dec 2021 07:01:30 +0000 (00:01 -0700)]
sv: fix size cast clipping expression width

2 years agoUpdate manual
Miodrag Milanovic [Mon, 3 Jan 2022 10:57:11 +0000 (11:57 +0100)]
Update manual

2 years agoBump version
github-actions[bot] [Sun, 26 Dec 2021 01:00:33 +0000 (01:00 +0000)]
Bump version

2 years agoMerge pull request #3127 from whitequark/cxxrtl-no-reset-elided
Catherine [Sat, 25 Dec 2021 12:29:44 +0000 (12:29 +0000)]
Merge pull request #3127 from whitequark/cxxrtl-no-reset-elided

cxxrtl: don't reset elided wires with \init attribute

2 years agocxxrtl: don't reset elided wires with \init attribute.
Catherine [Sat, 25 Dec 2021 01:06:10 +0000 (01:06 +0000)]
cxxrtl: don't reset elided wires with \init attribute.

2 years agoBump version
github-actions[bot] [Wed, 22 Dec 2021 00:58:25 +0000 (00:58 +0000)]
Bump version

2 years agointel_alm: disable 256x40 M10K mode
Lofty [Tue, 21 Dec 2021 18:11:45 +0000 (18:11 +0000)]
intel_alm: disable 256x40 M10K mode

This BRAM mode uses both address ports, making it effectively single-port.
Since memory_bram can't presently map to single-port memories, remove it.

2 years agoBump version
github-actions[bot] [Tue, 21 Dec 2021 00:59:45 +0000 (00:59 +0000)]
Bump version

2 years agomemory_share: Fix SAT-based sharing for wide ports.
Marcelina Kościelnicka [Mon, 20 Dec 2021 16:10:30 +0000 (17:10 +0100)]
memory_share: Fix SAT-based sharing for wide ports.

Fixes #3117.

2 years agoBump version
github-actions[bot] [Sun, 19 Dec 2021 01:00:40 +0000 (01:00 +0000)]
Bump version

2 years agofix width detection of array querying function in case and case item expressions
Zachary Snow [Thu, 16 Dec 2021 01:15:09 +0000 (18:15 -0700)]
fix width detection of array querying function in case and case item expressions

I also removed the unnecessary shadowing of `width_hint` and `sign_hint`
in the corresponding case in `simplify()`.