yosys.git
3 years agoAdd "verific -cfg" command
Claire Xenia Wolf [Mon, 1 Nov 2021 09:41:51 +0000 (10:41 +0100)]
Add "verific -cfg" command

Signed-off-by: Claire Xenia Wolf <claire@clairexen.net>
3 years agoBump version
github-actions[bot] [Mon, 1 Nov 2021 01:05:04 +0000 (01:05 +0000)]
Bump version

3 years agoMerge pull request #3066 from YosysHQ/claire/verific_gclk
Claire Xen [Sun, 31 Oct 2021 17:04:54 +0000 (18:04 +0100)]
Merge pull request #3066 from YosysHQ/claire/verific_gclk

Fix verific gclk handling for async-load FFs

3 years agoFix verific gclk handling for async-load FFs
Claire Xenia Wolf [Sun, 31 Oct 2021 16:12:29 +0000 (17:12 +0100)]
Fix verific gclk handling for async-load FFs

Signed-off-by: Claire Xenia Wolf <claire@clairexen.net>
3 years agoBump version
github-actions[bot] [Sat, 30 Oct 2021 00:51:07 +0000 (00:51 +0000)]
Bump version

3 years agoAdd missing items in CHANGELOG
Miodrag Milanovic [Fri, 29 Oct 2021 11:31:41 +0000 (13:31 +0200)]
Add missing items in CHANGELOG

3 years agoUpdate command reference part of manual
Miodrag Milanovic [Fri, 29 Oct 2021 11:10:50 +0000 (13:10 +0200)]
Update command reference part of manual

3 years agoBump version
github-actions[bot] [Thu, 28 Oct 2021 00:52:35 +0000 (00:52 +0000)]
Bump version

3 years agoMerge pull request #3063 from YosysHQ/micko/verific_aldff
Miodrag Milanović [Wed, 27 Oct 2021 15:20:31 +0000 (17:20 +0200)]
Merge pull request #3063 from YosysHQ/micko/verific_aldff

Enable async load dff emit by default in Verific

3 years agoecp5: Add support for mapping aldff.
Marcelina Kościelnicka [Wed, 27 Oct 2021 12:04:21 +0000 (14:04 +0200)]
ecp5: Add support for mapping aldff.

3 years agoEnable async load dff emit by default in Verific
Miodrag Milanovic [Wed, 27 Oct 2021 13:56:56 +0000 (15:56 +0200)]
Enable async load dff emit by default in Verific

3 years agoRevert "Compile option for enabling async load verific support"
Miodrag Milanovic [Wed, 27 Oct 2021 13:55:43 +0000 (15:55 +0200)]
Revert "Compile option for enabling async load verific support"

This reverts commit b8624ad2aef941776f5b4a08f66f8d43e70f8467.

3 years agoproc_dff: Emit $aldff.
Marcelina Kościelnicka [Sat, 2 Oct 2021 00:34:13 +0000 (02:34 +0200)]
proc_dff: Emit $aldff.

3 years agodfflegalize: Add tests for aldff lowering.
Marcelina Kościelnicka [Wed, 27 Oct 2021 11:37:26 +0000 (13:37 +0200)]
dfflegalize: Add tests for aldff lowering.

3 years agodfflegalize: Add tests targetting aldff.
Marcelina Kościelnicka [Wed, 27 Oct 2021 11:14:34 +0000 (13:14 +0200)]
dfflegalize: Add tests targetting aldff.

3 years agodfflegalize: Refactor, add aldff support.
Marcelina Kościelnicka [Wed, 27 Oct 2021 08:14:07 +0000 (10:14 +0200)]
dfflegalize: Refactor, add aldff support.

3 years agoBump version
github-actions[bot] [Wed, 27 Oct 2021 00:51:44 +0000 (00:51 +0000)]
Bump version

3 years agoverilog: use derived module info to elaborate cell connections
Zachary Snow [Wed, 20 Oct 2021 00:46:26 +0000 (18:46 -0600)]
verilog: use derived module info to elaborate cell connections

- Attempt to lookup a derived module if it potentially contains a port
  connection with elaboration ambiguities
- Mark the cell if module has not yet been derived
- This can be extended to implement automatic hierarchical port
  connections in a future change

3 years agoSplit out logic for reprocessing an AstModule
Rupert Swarbrick [Wed, 20 Oct 2021 00:43:30 +0000 (18:43 -0600)]
Split out logic for reprocessing an AstModule

This will enable other features to use same core logic for replacing an
existing AstModule with a newly elaborated version.

3 years agoBump version
github-actions[bot] [Tue, 26 Oct 2021 00:51:59 +0000 (00:51 +0000)]
Bump version

3 years agoCompile option for enabling async load verific support
Miodrag Milanovic [Mon, 25 Oct 2021 07:04:43 +0000 (09:04 +0200)]
Compile option for enabling async load verific support

3 years agoBump version
github-actions[bot] [Fri, 22 Oct 2021 01:00:39 +0000 (01:00 +0000)]
Bump version

3 years agoChange implicit conversions from bool to Sig* to explicit.
Marcelina Kościelnicka [Thu, 21 Oct 2021 16:26:47 +0000 (18:26 +0200)]
Change implicit conversions from bool to Sig* to explicit.

Also fixes some completely broken code in extract_reduce.

3 years agoMerge pull request #3057 from YosysHQ/claire/verific_latches
Claire Xen [Thu, 21 Oct 2021 11:00:53 +0000 (13:00 +0200)]
Merge pull request #3057 from YosysHQ/claire/verific_latches

Initial Verific impoter support for {PRIM,WIDE_OPER}_DLATCH{,RS}

3 years agoFix verific.cc PRIM_DLATCH handling
Claire Xenia Wolf [Thu, 21 Oct 2021 10:13:35 +0000 (12:13 +0200)]
Fix verific.cc PRIM_DLATCH handling

Signed-off-by: Claire Xenia Wolf <claire@clairexen.net>
3 years agoInitial Verific impoter support for {PRIM,WIDE_OPER}_DLATCH{,RS}
Claire Xenia Wolf [Thu, 21 Oct 2021 03:42:47 +0000 (05:42 +0200)]
Initial Verific impoter support for {PRIM,WIDE_OPER}_DLATCH{,RS}

Signed-off-by: Claire Xenia Wolf <claire@clairexen.net>
3 years agoextract_reduce: Refactor and fix input signal construction.
Marcelina Kościelnicka [Thu, 21 Oct 2021 00:58:10 +0000 (02:58 +0200)]
extract_reduce: Refactor and fix input signal construction.

Fixes #3047.

3 years agoBump version
github-actions[bot] [Thu, 21 Oct 2021 00:59:29 +0000 (00:59 +0000)]
Bump version

3 years agoIf verific have vhdl lib it is required by other libs
Miodrag Milanovic [Wed, 20 Oct 2021 11:08:08 +0000 (13:08 +0200)]
If verific have vhdl lib it is required by other libs

3 years agoForgot to remove from main list
Miodrag Milanovic [Wed, 20 Oct 2021 10:37:22 +0000 (12:37 +0200)]
Forgot to remove from main list

3 years agoOption to disable verific VHDL support
Miodrag Milanovic [Wed, 20 Oct 2021 08:02:58 +0000 (10:02 +0200)]
Option to disable verific VHDL support

3 years agoBump version
github-actions[bot] [Wed, 20 Oct 2021 00:56:49 +0000 (00:56 +0000)]
Bump version

3 years agoFixed Verific parser error in ice40 cell library
Claire Xenia Wolf [Tue, 19 Oct 2021 10:33:01 +0000 (12:33 +0200)]
Fixed Verific parser error in ice40 cell library

non-net output port 'Q' cannot be initialized at declaration in SystemVerilog mode

3 years agoMerge pull request #3045 from galibert/master
Miodrag Milanović [Tue, 19 Oct 2021 09:23:57 +0000 (11:23 +0200)]
Merge pull request #3045 from galibert/master

CycloneV: Add (passthrough) support for cyclonev_hps_interface_mpu_general_purpose

3 years agoFixes in vcdcd.pl for newer Perl versions
Claire Xenia Wolf [Tue, 19 Oct 2021 08:56:43 +0000 (10:56 +0200)]
Fixes in vcdcd.pl for newer Perl versions

Signed-off-by: Claire Xenia Wolf <claire@clairexen.net>
3 years agoBump version
github-actions[bot] [Mon, 18 Oct 2021 00:56:23 +0000 (00:56 +0000)]
Bump version

3 years agodfflegalize: remove redundant check for initialized dlatch
Paul Annesley [Sun, 17 Oct 2021 01:56:32 +0000 (12:56 +1100)]
dfflegalize: remove redundant check for initialized dlatch

This if condition is repeated verbatim, and I can't imagine a legitimate
way the inputs could change in between. I imagine it's a copy/paste
mistake.

3 years agoCycloneV: Add (passthrough) support for cyclonev_oscillator
Olivier Galibert [Sun, 17 Oct 2021 18:00:03 +0000 (20:00 +0200)]
CycloneV: Add (passthrough) support for cyclonev_oscillator

3 years agoCycloneV: Add (passthrough) support for cyclonev_hps_interface_mpu_general_purpose
Olivier Galibert [Thu, 14 Oct 2021 14:56:10 +0000 (16:56 +0200)]
CycloneV: Add (passthrough) support for cyclonev_hps_interface_mpu_general_purpose

3 years agoBump version
github-actions[bot] [Sat, 16 Oct 2021 00:58:22 +0000 (00:58 +0000)]
Bump version

3 years agoMerge pull request #3044 from YosysHQ/micko/verific_bufif1
Claire Xen [Fri, 15 Oct 2021 14:43:25 +0000 (16:43 +0200)]
Merge pull request #3044 from YosysHQ/micko/verific_bufif1

Support PRIM_BUFIF1 primitive, fixes #2981

3 years agoSupport PRIM_BUFIF1 primitive
Miodrag Milanovic [Thu, 14 Oct 2021 11:04:32 +0000 (13:04 +0200)]
Support PRIM_BUFIF1 primitive

3 years agoBump version
github-actions[bot] [Tue, 12 Oct 2021 00:57:44 +0000 (00:57 +0000)]
Bump version

3 years agoMerge pull request #3039 from YosysHQ/claire/verific_aldff
Claire Xen [Mon, 11 Oct 2021 08:01:56 +0000 (10:01 +0200)]
Merge pull request #3039 from YosysHQ/claire/verific_aldff

Add support for $aldff flip-flops to verific importer

3 years agoAdd Verific adffe/dffsre/aldffe FIXMEs
Claire Xenia Wolf [Mon, 11 Oct 2021 08:00:20 +0000 (10:00 +0200)]
Add Verific adffe/dffsre/aldffe FIXMEs

Signed-off-by: Claire Xenia Wolf <claire@clairexen.net>
3 years agoMerge pull request #3040 from YosysHQ/micko/split_module_ports
Claire Xen [Mon, 11 Oct 2021 07:56:05 +0000 (09:56 +0200)]
Merge pull request #3040 from YosysHQ/micko/split_module_ports

Split module ports, 20 per line

3 years agoMerge pull request #3041 from YosysHQ/mmicko/module_attr
Claire Xen [Mon, 11 Oct 2021 07:54:28 +0000 (09:54 +0200)]
Merge pull request #3041 from YosysHQ/mmicko/module_attr

Import module attributes from Verific

3 years agoImport module attributes from Verific
Miodrag Milanovic [Sun, 10 Oct 2021 08:01:45 +0000 (10:01 +0200)]
Import module attributes from Verific

3 years agoSplit module ports, 20 per line
Miodrag Milanovic [Sat, 9 Oct 2021 11:40:55 +0000 (13:40 +0200)]
Split module ports, 20 per line

3 years agoBump version
github-actions[bot] [Sat, 9 Oct 2021 00:51:28 +0000 (00:51 +0000)]
Bump version

3 years agoFixes and add comments for open FIXME items
Claire Xenia Wolf [Fri, 8 Oct 2021 15:24:45 +0000 (17:24 +0200)]
Fixes and add comments for open FIXME items

Signed-off-by: Claire Xenia Wolf <claire@clairexen.net>
3 years agoAdd support for $aldff flip-flops to verific importer
Claire Xenia Wolf [Fri, 8 Oct 2021 14:21:25 +0000 (16:21 +0200)]
Add support for $aldff flip-flops to verific importer

Signed-off-by: Claire Xenia Wolf <claire@clairexen.net>
3 years agoFix a regression from #3035.
Marcelina Kościelnicka [Fri, 8 Oct 2021 12:51:57 +0000 (14:51 +0200)]
Fix a regression from #3035.

3 years agoBump version
github-actions[bot] [Fri, 8 Oct 2021 00:57:28 +0000 (00:57 +0000)]
Bump version

3 years agoFfData: some refactoring.
Marcelina Kościelnicka [Wed, 6 Oct 2021 20:16:55 +0000 (22:16 +0200)]
FfData: some refactoring.

- FfData now keeps track of the module and underlying cell, if any (so
  calling emit on FfData created from a cell will replace the existing cell)
- FfData implementation is split off to its own .cc file for faster
  compilation
- the "flip FF data sense by inserting inverters in front and after"
  functionality that zinit uses is moved onto FfData class and beefed up
  to have dffsr support, to support more use cases

3 years agoBump version
github-actions[bot] [Tue, 5 Oct 2021 00:53:24 +0000 (00:53 +0000)]
Bump version

3 years agoverific set db_infer_set_reset_registers
Miodrag Milanovic [Mon, 4 Oct 2021 14:48:33 +0000 (16:48 +0200)]
verific set db_infer_set_reset_registers

3 years agoBump version
github-actions[bot] [Sun, 3 Oct 2021 00:58:23 +0000 (00:58 +0000)]
Bump version

3 years agoHook up $aldff support in various passes.
Marcelina Kościelnicka [Fri, 1 Oct 2021 23:23:43 +0000 (01:23 +0200)]
Hook up $aldff support in various passes.

3 years agozinit: Refactor to use FfData.
Marcelina Kościelnicka [Fri, 1 Oct 2021 22:05:22 +0000 (00:05 +0200)]
zinit: Refactor to use FfData.

3 years agokernel/ff: Refactor FfData to enable FFs with async load.
Marcelina Kościelnicka [Fri, 1 Oct 2021 21:50:48 +0000 (23:50 +0200)]
kernel/ff: Refactor FfData to enable FFs with async load.

- *_en is split into *_ce (clock enable) and *_aload (async load aka
  latch gate enable), so both can be present at once
- has_d is removed
- has_gclk is added (to have a clear marker for $ff)
- d_is_const and val_d leftovers are removed
- async2sync, clk2fflogic, opt_dff are updated to operate correctly on
  FFs with async load

3 years agoAdd $aldff and $aldffe: flip-flops with async load.
Marcelina Kościelnicka [Fri, 1 Oct 2021 02:33:00 +0000 (04:33 +0200)]
Add $aldff and $aldffe: flip-flops with async load.

3 years agoSpecify minimum bison version 3.0+
Zachary Snow [Fri, 1 Oct 2021 20:41:11 +0000 (14:41 -0600)]
Specify minimum bison version 3.0+

Yosys works with bison 3.0 (or newer), but not bison 2.7 (the previous
release). Ideally, we would require "3" rather than "3.0" to give a
better error message, but bison 2.3, which still ships with macOS, does
not support major-only version requirements. With this change, building
with an outdated bison yields: `frontends/rtlil/rtlil_parser.y:25.10-14:
require bison 3.0, but have 2.3`.

3 years agosimplemap: refactor to use FfData.
Marcelina Kościelnicka [Fri, 1 Oct 2021 22:42:36 +0000 (00:42 +0200)]
simplemap: refactor to use FfData.

3 years agoMerge pull request #3017 from YosysHQ/claire/short_rtlil_x_const
Miodrag Milanović [Tue, 28 Sep 2021 16:03:14 +0000 (18:03 +0200)]
Merge pull request #3017 from YosysHQ/claire/short_rtlil_x_const

Add optimization to rtlil back-end for all-x parameter values

3 years agoBump version
github-actions[bot] [Tue, 28 Sep 2021 00:53:49 +0000 (00:53 +0000)]
Bump version

3 years agoPrepare for next release cycle
Miodrag Milanovic [Mon, 27 Sep 2021 14:24:43 +0000 (16:24 +0200)]
Prepare for next release cycle

3 years agoAdd optimization to rtlil back-end for all-x parameter values
Claire Xenia Wolf [Mon, 27 Sep 2021 14:02:20 +0000 (16:02 +0200)]
Add optimization to rtlil back-end for all-x parameter values

Signed-off-by: Claire Xenia Wolf <claire@clairexen.net>
3 years agoBump version
github-actions[bot] [Sat, 25 Sep 2021 00:51:53 +0000 (00:51 +0000)]
Bump version

3 years agoMerge pull request #3014 from YosysHQ/claire/fix-vgtest
Claire Xen [Fri, 24 Sep 2021 15:50:34 +0000 (17:50 +0200)]
Merge pull request #3014 from YosysHQ/claire/fix-vgtest

Fix "make vgtest"

3 years agoFix TOK_ID memory leak in for_initialization
Zachary Snow [Thu, 23 Sep 2021 17:33:55 +0000 (13:33 -0400)]
Fix TOK_ID memory leak in for_initialization

3 years agoFix "make vgtest" so it runs to the end (but now it fails ;)
Claire Xenia Wolf [Wed, 22 Sep 2021 15:34:20 +0000 (17:34 +0200)]
Fix "make vgtest" so it runs to the end (but now it fails ;)

Signed-off-by: Claire Xenia Wolf <claire@clairexen.net>
3 years agoBump version
github-actions[bot] [Wed, 22 Sep 2021 00:54:54 +0000 (00:54 +0000)]
Bump version

3 years agosv: support wand and wor of data types
Zachary Snow [Sat, 14 Aug 2021 03:51:28 +0000 (20:51 -0700)]
sv: support wand and wor of data types

This enables the usage of declarations of wand or wor with a base type
of logic, integer, or a typename. Note that declarations of nets with
2-state base types is still permitted, in violation of the spec.

3 years agoverilog: fix multiple AST_PREFIX scope resolution issues
Zachary Snow [Tue, 3 Aug 2021 00:42:34 +0000 (18:42 -0600)]
verilog: fix multiple AST_PREFIX scope resolution issues

- Root AST_PREFIX nodes are now subject to genblk expansion to allow
  them to refer to a locally-visible generate block
- Part selects on AST_PREFIX member leafs can now refer to generate
  block items (previously would not resolve and raise an error)
- Add source location information to AST_PREFIX nodes

3 years agoBump version
github-actions[bot] [Sun, 19 Sep 2021 00:52:56 +0000 (00:52 +0000)]
Bump version

3 years agoMerge pull request #3010 from the6p4c/master
Miodrag Milanović [Sat, 18 Sep 2021 07:16:58 +0000 (09:16 +0200)]
Merge pull request #3010 from the6p4c/master

Fix protobuf backend build dependencies - intermittent build issue due to missing rule

3 years agoFix protobuf backend build dependencies
the6p4c [Fri, 17 Sep 2021 03:36:37 +0000 (13:36 +1000)]
Fix protobuf backend build dependencies

backends/protobuf/protobuf.cc depends on the source and header files
generated by protoc, but this dependency wasn't explicitly declared. Add
a rule to the Makefile to fix intermittent build failures when the
protobuf header/source file isn't built before protobuf.cc.

3 years agoBump version
github-actions[bot] [Tue, 14 Sep 2021 00:56:06 +0000 (00:56 +0000)]
Bump version

3 years agoverilog: Squash flex-triggered warning.
Marcelina Kościelnicka [Mon, 13 Sep 2021 13:38:54 +0000 (15:38 +0200)]
verilog: Squash flex-triggered warning.

3 years agoUpdates for CHANGELOG (#2997)
Miodrag Milanović [Mon, 13 Sep 2021 14:25:42 +0000 (16:25 +0200)]
Updates for CHANGELOG (#2997)

Added missing changes from git log and  group items

3 years agoBump version
github-actions[bot] [Sat, 11 Sep 2021 00:50:11 +0000 (00:50 +0000)]
Bump version

3 years agoMerge pull request #3001 from YosysHQ/claire/sigcheck
Miodrag Milanović [Fri, 10 Sep 2021 15:32:04 +0000 (17:32 +0200)]
Merge pull request #3001 from YosysHQ/claire/sigcheck

Add additional check to SigSpec

3 years agoAdd additional check to SigSpec
Claire Xenia Wolf [Fri, 10 Sep 2021 14:51:34 +0000 (16:51 +0200)]
Add additional check to SigSpec

Signed-off-by: Claire Xenia Wolf <claire@clairexen.net>
3 years agoyosys-smtbmc: Fix reused loop variable.
Marcelina Kościelnicka [Fri, 10 Sep 2021 02:55:48 +0000 (04:55 +0200)]
yosys-smtbmc: Fix reused loop variable.

Fixes #2999.

3 years agoBump version
github-actions[bot] [Fri, 10 Sep 2021 00:55:14 +0000 (00:55 +0000)]
Bump version

3 years agoabc9: make re-entrant (#2993)
Eddie Hung [Thu, 9 Sep 2021 17:06:31 +0000 (10:06 -0700)]
abc9: make re-entrant (#2993)

* Add testcase

* Cleanup some state at end of abc9

* Re-assign abc9_box_id from scratch

* Suppress delete unless prep_bypass did something

3 years agoabc9: holes module to instantiate cells with NEW_ID (#2992)
Eddie Hung [Thu, 9 Sep 2021 17:06:20 +0000 (10:06 -0700)]
abc9: holes module to instantiate cells with NEW_ID (#2992)

* Add testcase

* holes module to instantiate cells with NEW_ID

3 years agoabc9: replace cell type/parameters if derived type already processed (#2991)
Eddie Hung [Thu, 9 Sep 2021 17:05:55 +0000 (10:05 -0700)]
abc9: replace cell type/parameters if derived type already processed (#2991)

* Add close bracket

* Add testcase

* Replace cell type/param if in unmap_design

* Improve abc9_box error message too

* Update comment as per review

3 years agoBump version
github-actions[bot] [Fri, 3 Sep 2021 00:50:30 +0000 (00:50 +0000)]
Bump version

3 years agoupdate required verific version
Miodrag Milanovic [Thu, 2 Sep 2021 12:59:16 +0000 (14:59 +0200)]
update required verific version

3 years agoBump version
github-actions[bot] [Wed, 1 Sep 2021 00:55:51 +0000 (00:55 +0000)]
Bump version

3 years agosv: support declaration in generate for initialization
Zachary Snow [Tue, 31 Aug 2021 17:45:02 +0000 (11:45 -0600)]
sv: support declaration in generate for initialization

This is accomplished by generating a unique name for the genvar,
renaming references to the genvar only in the loop's initialization,
guard, and incrementation, and finally adding a localparam inside the
loop body with the original name so that the genvar can be shadowed as
expected.

3 years agoBump version
github-actions[bot] [Tue, 31 Aug 2021 00:51:55 +0000 (00:51 +0000)]
Bump version

3 years agosv: support declaration in procedural for initialization
Zachary Snow [Mon, 30 Aug 2021 17:35:36 +0000 (11:35 -0600)]
sv: support declaration in procedural for initialization

In line with other tools, this adds an extra wrapping block around such
for loops to appropriately scope the variable.

3 years agoBump version
github-actions[bot] [Mon, 30 Aug 2021 00:49:03 +0000 (00:49 +0000)]
Bump version

3 years ago[ECP5] fix wrong link for syn_* attributes description (#2984)
kittennbfive [Sun, 29 Aug 2021 09:45:23 +0000 (09:45 +0000)]
[ECP5] fix wrong link for syn_* attributes description (#2984)

3 years agoBump version
github-actions[bot] [Mon, 23 Aug 2021 00:46:01 +0000 (00:46 +0000)]
Bump version

3 years agoAdd DLLDELD
ECP5-PCIe [Sun, 22 Aug 2021 16:08:04 +0000 (18:08 +0200)]
Add DLLDELD

3 years agoopt_merge: Remove and reinsert init when connecting nets.
Marcelina Kościelnicka [Sun, 22 Aug 2021 15:01:58 +0000 (17:01 +0200)]
opt_merge: Remove and reinsert init when connecting nets.

Mutating the SigMap by adding a new connection will throw off FfInitVals
index.  Work around this by removing the relevant init values from index
whenever we connect nets, then re-add the new init value.

Should fix #2920.