Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | | Merge pull request #2319 from YosysHQ/mwk/techmap-celltype-pattern | clairexen | 2020-08-20 | 1 | -4/+32 | |
|\ \ \ | |_|/ |/| | | techmap: Add support for [] wildcards in techmap_celltype. | |||||
| * | | techmap: Add support for [] wildcards in techmap_celltype. | Marcelina Kościelnicka | 2020-08-02 | 1 | -4/+32 | |
| |/ | | | | | | | Fixes #1826. | |||||
* / | Replace opt_rmdff with opt_dff. | Marcelina Kościelnicka | 2020-08-07 | 1 | -1/+1 | |
|/ | ||||||
* | Add dffunmap pass. | Marcelina Kościelnicka | 2020-07-31 | 2 | -0/+108 | |
| | | | | | To be used with backends that cannot deal with fancy FF types (like blif or smt). | |||||
* | techmap: Refactor to use FfInitVals. | Marcelina Kościelnicka | 2020-07-24 | 1 | -41/+4 | |
| | ||||||
* | shregmap: Refactor to use FfInitVals. | Marcelina Kościelnicka | 2020-07-24 | 1 | -39/+10 | |
| | ||||||
* | abc: Refactor to use FfInitVals. | Marcelina Kościelnicka | 2020-07-24 | 1 | -25/+6 | |
| | ||||||
* | dffinit: Refactor to use FfInitVals. | Marcelina Kościelnicka | 2020-07-24 | 1 | -41/+7 | |
| | ||||||
* | zinit: Refactor to use FfInitVals. | Marcelina Kościelnicka | 2020-07-24 | 1 | -43/+11 | |
| | ||||||
* | dfflegalize: Refactor to use FfInitVals. | Marcelina Kościelnicka | 2020-07-24 | 1 | -80/+25 | |
| | ||||||
* | techmap: Add _TECHMAP_CELLNAME_ special parameter. | Marcelina Kościelnicka | 2020-07-21 | 1 | -0/+6 | |
| | | | | | | | This parameter will resolve to the name of the cell being mapped. The first user of this parameter will be synth_intel_alm's Quartus output, which requires a unique (and preferably descriptive) name passed as a cell parameter for the memory cells. | |||||
* | dfflegalize: Gather init values from all wires. | Marcelina Kościelnicka | 2020-07-12 | 1 | -1/+1 | |
| | | | | Skipping non-selected wires is unsound in an obvious way. | |||||
* | dfflibmap: Refactor to use dfflegalize internally. | Marcelina Kościelnicka | 2020-07-09 | 1 | -211/+78 | |
| | ||||||
* | clkbufmap: improve input pad handling. | Marcelina Kościelnicka | 2020-07-09 | 1 | -17/+39 | |
| | | | | | | - allow inserting only the input pad cell - do not insert the usual buffer if the input pad already acts as a buffer | |||||
* | dfflegalize: Add special support for const-D latches. | Marcelina Kościelnicka | 2020-07-09 | 1 | -0/+18 | |
| | | | | | | Those can be created by `opt_dff` when optimizing `$adff` with const clock, or with D == Q. Make dfflegalize do the opposite transform when such dlatches would be otherwise unimplementable. | |||||
* | dfflegalize: typo fix | Marcelina Kościelnicka | 2020-07-07 | 1 | -1/+1 | |
| | ||||||
* | Naming fixes. | Marcelina Kościelnicka | 2020-07-05 | 2 | -2/+2 | |
| | ||||||
* | dfflegalize: Prefer mapping dff to sdff before adff | Marcelina Kościelnicka | 2020-07-05 | 1 | -1/+1 | |
| | | | | | | This ensures that, when both sync and async FFs are available and abc9 is involved, the sync FFs will be used, and will thus remain available for sequential synthesis. | |||||
* | abc9: only techmap (* abc9_flop *) modules | Eddie Hung | 2020-07-04 | 1 | -1/+1 | |
| | ||||||
* | abc9: techmap from user design to allow abc9_flop modules to be composed | Eddie Hung | 2020-07-04 | 1 | -1/+1 | |
| | | | | from other primitives | |||||
* | Add newlines to help text for dfflegalize | Rupert Swarbrick | 2020-07-03 | 1 | -11/+11 | |
| | | | | | | | | | | | | | I think these were probably missed by accident. Spotted because GCC spits out lots of messages like this: passes/techmap/dfflegalize.cc:114:7: warning: zero-length gnu_printf format string [-Wformat-zero-length] 114 | log(""); | ^~ (because we tell GCC that the first argument to log() looks like a printf control string in log.h, and a zero length such string triggers a warning). | |||||
* | Add dfflegalize pass. | Marcelina Kościelnicka | 2020-07-01 | 2 | -0/+1357 | |
| | ||||||
* | techmap: don't drop attributes on replaced cells. | whitequark | 2020-06-29 | 1 | -2/+3 | |
| | | | | | | This was introduced in 76c4ee4ea5cb6a3dc214f66237af22a1bedda010. Fixes #2204. | |||||
* | Merge pull request #2168 from whitequark/assert-unused-exprs | clairexen | 2020-06-25 | 2 | -7/+7 | |
|\ | | | | | Use (and ignore) the expression provided to log_assert in NDEBUG builds | |||||
| * | Remove YS_ATTRIBUTE(unused) where present just for log_assert()/log_debug(). | whitequark | 2020-06-19 | 2 | -7/+7 | |
| | | ||||||
* | | simplemap: Fix $dffsre mapping. | Marcelina Kościelnicka | 2020-06-23 | 1 | -1/+1 | |
| | | ||||||
* | | Update dff2dffe, dff2dffs, zinit to new FF types. | Marcelina Kościelnicka | 2020-06-23 | 3 | -43/+73 | |
| | | ||||||
* | | Add new FF types to simplemap. | Marcelina Kościelnicka | 2020-06-23 | 1 | -8/+133 | |
|/ | ||||||
* | Use C++11 final/override keywords. | whitequark | 2020-06-18 | 34 | -77/+77 | |
| | ||||||
* | msvc does not support designated initializers in structs | Anonymous Maarten | 2020-06-17 | 1 | -5/+5 | |
| | ||||||
* | flatten: accept processes. | whitequark | 2020-06-09 | 1 | -8/+8 | |
| | ||||||
* | flatten: preserve original object names via hdlname attribute. | whitequark | 2020-06-08 | 1 | -5/+16 | |
| | ||||||
* | flatten: only prepend $flatten once per wire. | whitequark | 2020-06-08 | 1 | -2/+6 | |
| | ||||||
* | flatten: make hygienic. | whitequark | 2020-06-08 | 1 | -155/+116 | |
| | | | | | | | | | | | | | | | | | | | | Before this commit, `flatten` matched the template objects with the newly created objects solely by their name. Because of this, it could be confused by code such as: module bar(); $dff a(); endmodule module foo(); bar b(); $dff \b.a (); endmodule After this commit, `flatten` avoids every possible case of name collision. Fixes #2106. | |||||
* | Merge pull request #2105 from whitequark/split-flatten-off-techmap | clairexen | 2020-06-08 | 3 | -325/+527 | |
|\ | | | | | Split `flatten` from `techmap` and simplify it | |||||
| * | flatten: clean up log messages. | whitequark | 2020-06-04 | 1 | -1/+1 | |
| | | ||||||
| * | flatten: topologically sort modules. | whitequark | 2020-06-04 | 1 | -55/+47 | |
| | | ||||||
| * | flatten: simplify. | whitequark | 2020-06-04 | 1 | -43/+7 | |
| | | | | | | | | | | | | | | `flatten` cannot derive modules in most cases because that would just yield processes, and it does not support `-autoproc`; in practice `flatten` has to be preceded by a call to `hierarchy`, which makes deriving unnecessary. | |||||
| * | flatten: simplify. NFC. | whitequark | 2020-06-04 | 1 | -7/+3 | |
| | | | | | | | | Remove redundant sigmaps. | |||||
| * | flatten: simplify. | whitequark | 2020-06-04 | 1 | -35/+0 | |
| | | | | | | | | | | Flattening does not benefit from topologically sorting cells within a module when processing them. | |||||
| * | flatten: simplify. NFC. | whitequark | 2020-06-04 | 1 | -11/+4 | |
| | | | | | | | | | | Flatten is non-recursive and doesn't need to keep track of handled cells. | |||||
| * | flatten: simplify. NFC. | whitequark | 2020-06-04 | 1 | -6/+4 | |
| | | | | | | | | Flattening always does "non-recursive" mapping. | |||||
| * | flatten: simplify. NFC. | whitequark | 2020-06-04 | 1 | -73/+39 | |
| | | | | | | | | The `celltypeMap` always maps `x` to `{x}`. | |||||
| * | flatten: simplify. NFC. | whitequark | 2020-06-04 | 1 | -8/+8 | |
| | | | | | | | | The `design` and `map` designs are always the same when flattening. | |||||
| * | RTLIL: factor out RTLIL::Module::addMemory. NFC. | whitequark | 2020-06-04 | 2 | -14/+2 | |
| | | ||||||
| * | flatten: rename techmap-related stuff. NFC. | whitequark | 2020-06-04 | 1 | -16/+16 | |
| | | ||||||
| * | techmap, flatten: remove dead options. | whitequark | 2020-06-04 | 2 | -928/+212 | |
| | | | | | | | | | | | | After splitting the passes, some options can never be activated, and most conditions involving them become dead. Remove them, and also all of the newly dead code. | |||||
| * | flatten: split from techmap. | whitequark | 2020-06-03 | 3 | -93/+1149 | |
| | | | | | | | | | | | | | | Although the two passes started out very similar, they diverged over time and now have little in common. Moreover, `techmap` is extremely complex while `flatten` does not have to be, and this complexity interferes with improving `flatten`. | |||||
* | | Merge pull request #2077 from YosysHQ/eddie/abc9_dff_improve | Eddie Hung | 2020-06-04 | 1 | -19/+60 | |
|\ \ | | | | | | | abc9: -dff improvements | |||||
| * | | abc9_ops: fix comment | Eddie Hung | 2020-05-30 | 1 | -1/+1 | |
| | | |