aboutsummaryrefslogtreecommitdiffstats
path: root/passes/techmap
Commit message (Collapse)AuthorAgeFilesLines
* Liberty file parser now accepts superfluous ;Niels Moseley2019-03-271-1/+1
|
* Liberty file parser now accepts superfluous ;Niels Moseley2019-03-271-7/+54
|
* spaces -> tabsNiels Moseley2019-03-251-78/+78
|
* EOL is now accepted as ';' replacement on lines that look like: ↵Niels Moseley2019-03-251-4/+3
| | | | feature_xyz(option)
* Updated the liberty parser to accept [A:B] ranges (AST has not been ↵Niels Moseley2019-03-242-7/+90
| | | | updated). Liberty parser now also accepts key : value pair lines that do not end in ';'.
* Clean up some whitepsace outliersLarry Doolittle2019-02-262-4/+4
|
* abc: Improved recovered netnames, also preserve src on nets with dressDavid Shah2019-02-061-4/+13
| | | | Signed-off-by: David Shah <davey1576@gmail.com>
* abc: Preserve naming through ABC using 'dress' commandDavid Shah2019-02-061-29/+51
| | | | Signed-off-by: David Shah <dave@ds0.me>
* flowmap: clean up terminology.whitequark2019-01-081-17/+18
| | | | | | | | | | * "map": group gates into LUTs; * "pack": replace gates with LUTs. This is important because we have FlowMap and DF-Map, and currently our messages are ambiguous. Also clean up some other log messages while we're at it.
* flowmap: implement depth relaxation.whitequark2019-01-081-22/+680
|
* flowmap: construct a max-volume max-flow min-cut, not just any one.whitequark2019-01-061-7/+10
|
* flowmap: add -minlut option, to allow postprocessing with opt_lut.whitequark2019-01-041-7/+21
|
* flowmap: cleanup for clarity. NFCI.whitequark2019-01-041-107/+141
|
* flowmap: improve debug graph output. NFC.whitequark2019-01-041-47/+76
|
* flowmap: add link to longer version of paper. NFC.whitequark2019-01-041-2/+3
|
* flowmap: new techmap pass.whitequark2019-01-032-0/+874
|
* Add "dffinit -noreinit" parameterIcenowy Zheng2018-12-181-1/+14
| | | | | | | | | | | | | | | Sometimes the FF cell might be initialized during the map process, e.g. some FPGA platforms (Anlogic Eagle and Lattice ECP5 for example) has only a "SR" pin for a FF for async reset, that resets the FF to the initial value, which means the async reset value should be set as the initial value. In this case the DFFINIT pass shouldn't reinitialize it to a different value, which will lead to error. Add a "-noreinit" parameter for the safeguard. If a FF is not technically initialized before DFFINIT pass, the default value should be set to x. Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
* Add "dffinit -strinit high low"Icenowy Zheng2018-12-181-2/+16
| | | | | | | | | | On some platforms the string to initialize DFF might not be "high" and "low", e.g. with Anlogic TD it's "SET" and "RESET". Add a "-strinit" parameter for dffinit to allow specify the strings used for high and low. Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
* Revert "Proof-of-concept: preserve naming through ABC using dress"Clifford Wolf2018-12-161-51/+29
|
* Merge pull request #735 from daveshah1/trifixesClifford Wolf2018-12-161-3/+4
|\ | | | | deminout fixes
| * deminout: Consider $tribuf cellsDavid Shah2018-12-121-2/+2
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * deminout: Don't demote constant-driven inouts to inputsDavid Shah2018-12-121-1/+2
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
* | Merge pull request #714 from daveshah1/abc_preserve_namingClifford Wolf2018-12-161-29/+51
|\ \ | | | | | | Proof-of-concept: preserve naming through ABC using dress
| * | abc: Preserve naming through ABC using 'dress' commandDavid Shah2018-12-061-29/+51
| |/ | | | | | | Signed-off-by: David Shah <dave@ds0.me>
* / lut2mux: handle 1-bit INIT constant in $lut cells.whitequark2018-12-051-1/+1
|/ | | | | This pass already handles INIT constants shorter than 2^width, but that was not done for the recursion base case.
* Fix typoClifford Wolf2018-12-041-1/+1
| | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* dff2dffe: Add option for unmap to only remove DFFE with low CE signal useSylvain Munaut2018-11-271-1/+36
| | | | Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* DFFLIBMAP: changed 'missing pin' error into a warning with additional ↵Niels Moseley2018-11-061-1/+10
| | | | reason/info.
* Allow square brackets in liberty identifiersClifford Wolf2018-11-051-2/+2
| | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* Liberty file newline handling is more relaxed. More descriptive error messageNiels Moseley2018-11-031-4/+7
|
* Report an error when a liberty file contains pin references that reference ↵Niels Moseley2018-11-031-0/+3
| | | | non-existing pins
* Merge pull request #591 from hzeller/virtual-overrideClifford Wolf2018-08-1528-62/+62
|\ | | | | Consistent use of 'override' for virtual methods in derived classes.
| * Consistent use of 'override' for virtual methods in derived classes.Henner Zeller2018-07-2028-62/+62
| | | | | | | | | | | | | | | | | | o Not all derived methods were marked 'override', but it is a great feature of C++11 that we should make use of. o While at it: touched header files got a -*- c++ -*- for emacs to provide support for that language. o use YS_OVERRIDE for all override keywords (though we should probably use the plain keyword going forward now that C++11 is established)
* | Add missing <deque> include (MSVC build fix)Clifford Wolf2018-07-221-0/+1
|/ | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* ecp5: Adding synchronous set/reset supportDavid Shah2018-07-143-3/+155
| | | | Signed-off-by: David Shah <davey1576@gmail.com>
* Be slightly less aggressive in "deminout" passClifford Wolf2018-06-191-4/+28
| | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* Fix infinite loop in abc command under emscriptenRobert Ou2018-05-181-5/+7
|
* Add an option to statically link abc into yosysRobert Ou2018-05-181-0/+20
| | | | This is currently incomplete because the output filter no longer works.
* Fix iopadmap for loops between tristate IO buffersClifford Wolf2018-05-151-0/+21
| | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* Fix iopadmap for cases where IO pins already have buffers on themClifford Wolf2018-05-151-1/+35
| | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* Add ABC FAQ to "help abc"Clifford Wolf2018-05-041-2/+6
| | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* Replace -ignore_redef with -[no]overwriteClifford Wolf2018-05-031-2/+2
| | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* Added missing dont_use handling for SR FFs to dfflibmapClifford Wolf2018-04-051-0/+4
| | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* Fix handling of src attributes in flattenClifford Wolf2018-03-101-7/+2
| | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* Add "dffinit -highlow" and fix synth_intelClifford Wolf2018-01-091-0/+20
| | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* Add support for "yosys -E"Clifford Wolf2018-01-071-0/+1
| | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* Value of properties can be expression.Staf Verhaegen2018-01-031-2/+22
| | | | | | | | | | | | | | Example found in the 2007.03 Liberty Reference Manual that was also found in the wild: input_voltage(CMOS) { vil : 0.3 * VDD ; vih : 0.7 * VDD ; vimin : -0.5 ; vimax : VDD + 0.5 ; } Current implementation just parses the expression but no interpretation is done.
* Rewrite ABC output to include proper net names in timing reportClifford Wolf2017-10-101-2/+17
|
* Added missing "break"Andrew Zonenberg2017-09-151-0/+1
|
* Implemented off-chain support for extract_reduceAndrew Zonenberg2017-09-151-84/+157
|