Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 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). | ||||
* | opt_expr: Remove -clkinv option, make it the default. | Marcelina Kościelnicka | 2020-07-31 | 2 | -14/+14 |
| | | | | | Adds -noclkinv option just in case the old behavior was actually useful to someone. | ||||
* | synth_ice40: Use opt_dff. | Marcelina Kościelnicka | 2020-07-30 | 2 | -247/+86 |
| | | | | | | | | | The main part is converting ice40_dsp to recognize the new FF types created in opt_dff instead of trying to recognize the mux patterns on its own. The fsm call has been moved upwards because the passes cannot deal with $dffe/$sdff*, and other optimizations don't help it much anyway. | ||||
* | synth_xilinx: Use opt_dff. | Marcelina Kościelnicka | 2020-07-30 | 5 | -861/+200 |
| | | | | | | | | | The main part is converting xilinx_dsp to recognize the new FF types created in opt_dff instead of trying to recognize the patterns on its own. The fsm call has been moved upwards because the passes cannot deal with $dffe/$sdff*, and other optimizations don't help it much anyway. | ||||
* | async2sync: Support all FF types. | Marcelina Kościelnicka | 2020-07-30 | 2 | -145/+162 |
| | |||||
* | Add opt_dff pass. | Marcelina Kościelnicka | 2020-07-30 | 2 | -0/+876 |
| | |||||
* | opt_expr: Fix handling of $_XNOR_ cells with A = B. | Marcelina Kościelnicka | 2020-07-29 | 1 | -1/+1 |
| | | | | Fixes #2311. | ||||
* | equiv_induct: Fix up assumption for $equiv cells in -undef mode. | Marcelina Kościelnicka | 2020-07-27 | 1 | -1/+3 |
| | | | | | | | | | | | | | | | | Before this fix, equiv_induct only assumed that one of the following is true: - defined value of A is equal to defined value of B - A is undefined This lets through valuations where A is defined, B is undefined, and the defined (meaningless) value of B happens to match the defined value of A. Instead, tighten this up to OR of the following: - defined value of A is equal to defined value of B, and B is not undefined - A is undefined | ||||
* | async2sync: Refactor to use FfInitVals. | Marcelina Kościelnicka | 2020-07-24 | 1 | -53/+11 |
| | |||||
* | memory_dff: Refactor to use FfInitVals. | Marcelina Kościelnicka | 2020-07-24 | 1 | -12/+5 |
| | |||||
* | proc_dlatch: Refactor to use FfInitVals. | Marcelina Kościelnicka | 2020-07-24 | 1 | -28/+8 |
| | |||||
* | pmux2shift: Refactor to use FfInitVals. | Marcelina Kościelnicka | 2020-07-24 | 1 | -15/+4 |
| | |||||
* | wreduce: Refactor to use FfInitVals. | Marcelina Kościelnicka | 2020-07-24 | 1 | -37/+7 |
| | |||||
* | 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 |
| | |||||
* | clk2fflogic: Support all FF types. | Marcelina Kościelnicka | 2020-07-24 | 1 | -200/+122 |
| | |||||
* | memory_dff: recognize more dff cells | Marcelina Kościelnicka | 2020-07-23 | 1 | -11/+112 |
| | |||||
* | 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. | ||||
* | qbfsat: Add `-solver-option` option. | Alberto Gonzalez | 2020-07-20 | 2 | -1/+15 |
| | |||||
* | opt_merge: Dedup one more use of FF cell type list. | Marcelina Kościelnicka | 2020-07-15 | 1 | -3/+1 |
| | |||||
* | proc_dlatch: Remove init values for combinatorial processes. | Marcelina Kościelnicka | 2020-07-12 | 1 | -0/+33 |
| | | | | Fixes #2258. | ||||
* | 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 | ||||
* | clk2fflogic: Consistently treat async control signals as negative hold. | Marcelina Kościelnicka | 2020-07-09 | 1 | -57/+51 |
| | | | | | | | This fixes some dfflegalize equivalence checks, and breaks others — and I strongly suspect the others are due to bad support for multiple async inputs in `proc` (in particular, lack of proper support for dlatchsr and sketchy circuits on dffsr control inputs). | ||||
* | 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. | ||||
* | opt_expr: Fix crash on $mul optimization with more zeros removed than Y has. | Marcelina Kościelnicka | 2020-07-05 | 1 | -0/+8 |
| | | | | Fixes #2221. | ||||
* | 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). | ||||
* | Merge pull request #2208 from boqwxp/qbfsat-cleanup | clairexen | 2020-07-02 | 2 | -255/+273 |
|\ | | | | | qbfsat: Cleanup and refactoring | ||||
| * | qbfsat: Remove useless comment and #ifndef guards. | Alberto Gonzalez | 2020-07-01 | 1 | -5/+0 |
| | | |||||
| * | qbfsat: Specify default values for some options in the help message. | Alberto Gonzalez | 2020-07-01 | 1 | -0/+2 |
| | | |||||
| * | qbfsat: Clean up external executable command lines and update temporary ↵ | Alberto Gonzalez | 2020-07-01 | 1 | -3/+7 |
| | | | | | | | | directory name. | ||||
| * | qbfsat: Clean up and refactor data structures into `qbfsat.h`. | Alberto Gonzalez | 2020-07-01 | 2 | -248/+265 |
| | | |||||
* | | Merge pull request #2186 from YosysHQ/mwk/dfflegalize | clairexen | 2020-07-02 | 2 | -0/+1357 |
|\ \ | | | | | | | Add dfflegalize pass. | ||||
| * | | Add dfflegalize pass. | Marcelina Kościelnicka | 2020-07-01 | 2 | -0/+1357 |
| | | | |||||
* | | | Merge pull request #2211 from YosysHQ/mwk/fix-fmcombine-ff | clairexen | 2020-07-02 | 1 | -2/+1 |
|\ \ \ | | | | | | | | | fmcombine: use the master ff cell type list | ||||
| * | | | fmcombine: use the master ff cell type list | Marcelina Kościelnicka | 2020-06-30 | 1 | -2/+1 |
| |/ / | |||||
* | | | Merge pull request #2210 from YosysHQ/mwk/fix-opt_merge | clairexen | 2020-07-02 | 1 | -3/+1 |
|\ \ \ | |_|/ |/| | | opt_merge: use the master FF type list | ||||
| * | | opt_merge: use the master FF type list | Marcelina Kościelnicka | 2020-06-30 | 1 | -3/+1 |
| |/ | |||||
* | | Merge pull request #2138 from boqwxp/qbfsat-oflag | clairexen | 2020-07-01 | 1 | -16/+47 |
|\ \ | | | | | | | qbfsat: Add `-O[012]` options to control pre-solving simplification with ABC | ||||
| * | | qbfsat: Add `-O[012]` options to control pre-solving simplification with ABC. | Alberto Gonzalez | 2020-06-30 | 1 | -16/+47 |
| | | | | | | | | | | | | | | | | | | Thanks to @mwk for the gate mapping part of the ABC scripts. Co-Authored-By: Marcelina Kościelnicka <mwk@0x04.net> |