Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge pull request #2319 from YosysHQ/mwk/techmap-celltype-pattern | clairexen | 2020-08-20 | 1 | -1/+1 |
|\ | | | | | techmap: Add support for [] wildcards in techmap_celltype. | ||||
| * | techmap: Add support for [] wildcards in techmap_celltype. | Marcelina Kościelnicka | 2020-08-02 | 1 | -1/+1 |
| | | | | | | | | Fixes #1826. | ||||
* | | Respect \A_SIGNED for $shift | Xiretza | 2020-08-18 | 2 | -6/+16 |
| | | | | | | | | | | | | This reflects the behaviour of $shr/$shl, which sign-extend their A operands to the size of their output, then do a logical shift (shift in 0-bits). | ||||
* | | Replace opt_rmdff with opt_dff. | Marcelina Kościelnicka | 2020-08-07 | 1 | -3/+3 |
|/ | |||||
* | simcells: Fix reset polarity for $_DLATCH_???_ cells. | Marcelina Kościelnicka | 2020-06-30 | 2 | -5/+5 |
| | |||||
* | Add new FF types to simplemap. | Marcelina Kościelnicka | 2020-06-23 | 1 | -1/+1 |
| | |||||
* | Add new builtin FF types | Marcelina Kościelnicka | 2020-06-23 | 3 | -0/+2293 |
| | | | | | | | | | | | | | | The new types include: - FFs with async reset and enable (`$adffe`, `$_DFFE_[NP][NP][01][NP]_`) - FFs with sync reset (`$sdff`, `$_SDFF_[NP][NP][01]_`) - FFs with sync reset and enable, reset priority (`$sdffs`, `$_SDFFE_[NP][NP][01][NP]_`) - FFs with sync reset and enable, enable priority (`$sdffce`, `$_SDFFCE_[NP][NP][01][NP]_`) - FFs with async reset, set, and enable (`$dffsre`, `$_DFFSRE_[NP][NP][NP][NP]_`) - latches with reset or set (`$adlatch`, `$_DLATCH_[NP][NP][01]_`) The new FF types are not actually used anywhere yet (this is left for future commits). | ||||
* | Use C++11 final/override keywords. | whitequark | 2020-06-18 | 2 | -8/+8 |
| | |||||
* | Do not optimize away FFs in "prep" and Verific fron-end | Claire Wolf | 2020-06-09 | 1 | -2/+2 |
| | | | | Signed-off-by: Claire Wolf <claire@symbioticeda.com> | ||||
* | Merge pull request #2077 from YosysHQ/eddie/abc9_dff_improve | Eddie Hung | 2020-06-04 | 1 | -1/+1 |
|\ | | | | | abc9: -dff improvements | ||||
| * | abc9_ops: -reintegrate use SigMap to remove (* init *) from $_DFF_[NP]_ | Eddie Hung | 2020-05-29 | 1 | -1/+1 |
| | | |||||
* | | Add flooring division operator | Xiretza | 2020-05-28 | 2 | -0/+71 |
| | | | | | | | | | | | | | | | | | | | | The $div and $mod cells use truncating division semantics (rounding towards 0), as defined by e.g. Verilog. Another rounding mode, flooring (rounding towards negative infinity), can be used in e.g. VHDL. The new $divfloor cell provides this flooring division. This commit also fixes the handling of $div in opt_expr, which was previously optimized as if it was $divfloor. | ||||
* | | Add flooring modulo operator | Xiretza | 2020-05-28 | 2 | -3/+124 |
|/ | | | | | | | | | | | The $div and $mod cells use truncating division semantics (rounding towards 0), as defined by e.g. Verilog. Another rounding mode, flooring (rounding towards negative infinity), can be used in e.g. VHDL. The new $modfloor cell provides this flooring modulo (also known as "remainder" in several languages, but this name is ambiguous). This commit also fixes the handling of $mod in opt_expr, which was previously optimized as if it was $modfloor. | ||||
* | Add force_downto and force_upto wire attributes. | Marcelina Kościelnicka | 2020-05-19 | 6 | -23/+88 |
| | | | | Fixes #2058. | ||||
* | abc9: use (* abc9_keep *) instead of (* abc9_scc *); apply to $_DFF_?_ | Eddie Hung | 2020-05-14 | 2 | -14/+2 |
| | | | | instead of moving them to $__ prefix | ||||
* | abc9: preserve $_DFF_?_.Q's (* init *); rely on clean to remove it | Eddie Hung | 2020-05-14 | 2 | -5/+4 |
| | |||||
* | abc9_ops/xaiger: further reducing Module::derive() calls by ... | Eddie Hung | 2020-05-14 | 2 | -7/+5 |
| | | | | replacing _all_ (* abc9_box *) instantiations with their derived types | ||||
* | Cleanup; reduce Module::derive() calls | Eddie Hung | 2020-05-14 | 2 | -4/+4 |
| | |||||
* | abc9: only do +/abc9_map if `DFF | Eddie Hung | 2020-05-14 | 1 | -0/+2 |
| | |||||
* | abc9: not enough to techmap_fail on (* init=1 *), hide them using $__ | Eddie Hung | 2020-05-14 | 2 | -10/+26 |
| | |||||
* | abc9: add flop boxes to basic $_DFF_P_ and $_DFF_N_ too | Eddie Hung | 2020-05-14 | 4 | -0/+55 |
| | |||||
* | abc9_ops: add 'dff' label for auto handling of (* abc9_flop *) boxes | Eddie Hung | 2020-05-14 | 1 | -3/+0 |
| | |||||
* | techlibs/common: more robustness when *_WIDTH = 0 | Eddie Hung | 2020-05-05 | 2 | -7/+30 |
| | |||||
* | Fix the truth table for $_SR_* cells. | Marcelina Kościelnicka | 2020-04-15 | 3 | -26/+21 |
| | | | | | | | | This brings the documented behavior for these cells in line with $_DFFSR_* and $_DLATCHSR_*, which is that R has priority over S. The models were already reflecting that behavior. Also get rid of sim-synth mismatch in the models while we're at it. | ||||
* | Merge pull request #1648 from YosysHQ/eddie/cmp2lcu | Eddie Hung | 2020-04-03 | 4 | -11/+120 |
|\ | | | | | "techmap -map +/cmp2lcu.v" for decomposing arithmetic compares to $lcu | ||||
| * | cmp2lcu: rename _90_lcu_cmp -> _80_lcu_cmp | Eddie Hung | 2020-04-03 | 1 | -1/+1 |
| | | |||||
| * | cmp2lcu: fail if `LUT_WIDTH < 2 | Eddie Hung | 2020-04-03 | 1 | -1/+1 |
| | | |||||
| * | synth: only techmap cmp2{lut,lcu} if -lut | Eddie Hung | 2020-04-03 | 1 | -1/+1 |
| | | |||||
| * | synth: use +/cmp2lcu.v in generic 'synth' too | Eddie Hung | 2020-04-03 | 1 | -2/+2 |
| | | |||||
| * | Cleanup +/cmp2lut.v | Eddie Hung | 2020-04-03 | 1 | -8/+0 |
| | | |||||
| * | +/cmp2lcu.v to work efficiently for fully/partially constant inputs | Eddie Hung | 2020-04-03 | 1 | -33/+42 |
| | | |||||
| * | Refactor +/cmp2lcu.v into recursive techmap | Eddie Hung | 2020-04-03 | 1 | -38/+65 |
| | | |||||
| * | Cleanup | Eddie Hung | 2020-04-03 | 1 | -31/+28 |
| | | |||||
| * | Cleanup cmp2lcu.v | Eddie Hung | 2020-04-03 | 1 | -16/+16 |
| | | |||||
| * | techmap +/cmp2lcu.v for decomposing arithmetic compares to $lcu | Eddie Hung | 2020-04-03 | 2 | -0/+84 |
| | | |||||
| * | cmp2lut: comment out unused since 362f4f9 | Eddie Hung | 2020-04-03 | 1 | -8/+8 |
| | | |||||
* | | simcells.v: Generate the fine FF cell types by a python script. | Marcin Kościelnicki | 2020-04-02 | 2 | -19/+270 |
|/ | | | | | | This makes adding more FF types in the future much more manageable. Fixes #1824. | ||||
* | Fix invalid verilog syntax | Miodrag Milanovic | 2020-03-14 | 1 | -1/+1 |
| | |||||
* | Merge pull request #1691 from ZirconiumX/use-flowmap-in-noabc | N. Engelhardt | 2020-03-03 | 1 | -2/+17 |
|\ | | | | | Add -flowmap option to `synth{,_ice40}` | ||||
| * | Add -flowmap to synth and synth_ice40 | Dan Ravensloft | 2020-02-28 | 1 | -2/+17 |
| | | |||||
* | | Create +/abc9_model.v for $__ABC9_{DELAY,FF_} | Eddie Hung | 2020-02-27 | 2 | -0/+11 |
|/ | |||||
* | techmap: fix shiftx2mux decomposition | Eddie Hung | 2020-02-07 | 1 | -8/+6 |
| | |||||
* | shiftx2mux: fix select out of bounds | Eddie Hung | 2020-02-05 | 1 | -1/+2 |
| | |||||
* | Merge remote-tracking branch 'origin/master' into eddie/shiftx2mux | Eddie Hung | 2020-02-05 | 2 | -2/+0 |
|\ | |||||
| * | abc9_ops: -write_box is empty, output a dummy box to prevent ABC error | Eddie Hung | 2020-01-15 | 2 | -2/+0 |
| | | |||||
* | | Explicitly create separate $mux cells | Eddie Hung | 2020-01-21 | 1 | -2/+2 |
| | | |||||
* | | Fix tests -- when Y_WIDTH is non-pow-2 | Eddie Hung | 2020-01-21 | 1 | -3/+4 |
| | | |||||
* | | Move from +/shiftx2mux.v into +/techmap.v; cleanup | Eddie Hung | 2020-01-21 | 3 | -73/+69 |
| | | |||||
* | | New techmap +/shiftx2mux.v which decomposes LSB first; better for ABC | Eddie Hung | 2020-01-21 | 2 | -0/+39 |
|/ | |||||
* | Do not map $eq and $ne in cmp2lut, only proper arithmetic cmp | Clifford Wolf | 2019-11-11 | 1 | -1/+1 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> |