aboutsummaryrefslogtreecommitdiffstats
path: root/techlibs/ecp5/synth_ecp5.cc
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #1604 from whitequark/unify-ram-namingwhitequark2020-01-021-2/+2
|\ | | | | Harmonize BRAM/LUTRAM descriptions across all of Yosys
| * Harmonize BRAM/LUTRAM descriptions across all of Yosys.whitequark2020-01-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit: * renames all remaining instances of "DRAM" (which is ambiguous) to "LUTRAM" (which is not), finishing the work started in the commit 698ab9be; * renames memory rule files to brams.txt/lutrams.txt; * adds/renames script labels map_bram/map_lutram; * extracts where necessary script labels map_ffram and map_gates; * adds where necessary options -nobram/-nolutram. The end result is that BRAM/LUTRAM/FFRAM aspects of every target are now consistent with each other. Per architecture: * anlogic: rename drams.txt→lutrams.txt, add -nolutram, add :map_lutram, :map_ffram, :map_gates * ecp5: rename bram.txt→brams.txt, lutram.txt→lutrams.txt * efinix: rename bram.txt→brams.txt, add -nobram, add :map_ffram, :map_gates * gowin: rename bram.txt→brams.txt, dram.txt→lutrams.txt, rename -nodram→-nolutram (-nodram still recognized), rename :bram→:map_bram, :dram→:map_lutram, add :map_ffram, :map_gates
* | Update doc that "-retime" calls abc with "-dff -D 1"Eddie Hung2019-12-301-1/+1
| |
* | Revert "Revert "synth_* with -retime option now calls abc with -D 1 as well""Eddie Hung2019-12-301-1/+1
|/ | | | This reverts commit 6008bb7002f874e5c748eaa2050e7b6c17b32745.
* Nitpick cleanup for ecp5Eddie Hung2019-12-271-1/+1
|
* Revert "Optimise write_xaiger"Eddie Hung2019-12-201-5/+0
|
* Merge pull request #1558 from YosysHQ/eddie/xaiger_cleanupEddie Hung2019-12-191-0/+5
|\ | | | | Optimise write_xaiger
| * techmap/aigmap of whiteboxes to occur before abc9 instead of in write_xaigerEddie Hung2019-12-061-0/+5
| |
* | ecp5: Add support for mapping PRLD FFsDavid Shah2019-12-071-4/+13
|/ | | | Signed-off-by: David Shah <dave@ds0.me>
* ecp5: Use new autoname pass for better cell/net namesDavid Shah2019-11-151-0/+1
| | | | Signed-off-by: David Shah <dave@ds0.me>
* ecp5: Pass -nomfs to abc9David Shah2019-10-201-2/+2
| | | | | | Fixes #1459 Signed-off-by: David Shah <dave@ds0.me>
* ecp5: Add attrmvcp to copy syn_useioff to driving FFDavid Shah2019-10-101-0/+1
| | | | Signed-off-by: David Shah <dave@ds0.me>
* Rename abc_* names/attributes to more precisely be abc9_*Eddie Hung2019-10-041-5/+5
|
* Panic over. Model was elsewhere. Re-arrange for consistencyEddie Hung2019-10-041-0/+1
|
* Combine 'flatten' & 'coarse' labels in synth_ecp5 so proc run onceEddie Hung2019-09-261-9/+4
|
* Merge remote-tracking branch 'origin/master' into xc7dspEddie Hung2019-09-051-1/+6
|\
| * Merge remote-tracking branch 'origin/master' into xaig_arrivalEddie Hung2019-08-281-0/+2
| |\
| * | ecp5 to use -max_iter 1Eddie Hung2019-08-201-2/+1
| | |
| * | ecp5 to use abc_map.v and _unmap.vEddie Hung2019-08-201-1/+7
| | |
* | | Merge branch 'master' into xc7dspDavid Shah2019-08-301-0/+2
|\ \ \ | | |/ | |/|
| * | ecp5: Add GSR supportDavid Shah2019-08-271-0/+2
| |/ | | | | | | Signed-off-by: David Shah <dave@ds0.me>
* | ecp5: Replace '-dsp' with inverse logic '-nodsp' to match synth_xilinxDavid Shah2019-08-081-11/+11
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
* | ecp5: Bring up to date with mul2dsp changesDavid Shah2019-08-081-1/+2
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
* | Merge remote-tracking branch 'origin/master' into ice40dspEddie Hung2019-07-181-13/+17
|\|
| * synth_ecp5: rename dram to lutram everywhere.whitequark2019-07-161-11/+11
| |
| * synth_{ice40,ecp5}: more sensible pass label naming.whitequark2019-07-161-3/+7
| |
* | Merge remote-tracking branch 'origin/master' into xc7dspEddie Hung2019-07-101-1/+4
|\|
| * Error out if -abc9 and -retime specifiedEddie Hung2019-07-101-0/+3
| |
| * synth_ecp5: Fix typo in copyright headerDavid Shah2019-07-091-1/+1
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
* | Add mul2dsp multiplier splitting rule and ECP5 mappingDavid Shah2019-07-081-2/+31
|/ | | | Signed-off-by: David Shah <dave@ds0.me>
* Add _nowide variants of LUT libraries in -nowidelut flowsEddie Hung2019-06-261-1/+4
|
* Merge branch 'koriakin/xc7nocarrymux' into xaigEddie Hung2019-06-261-7/+6
|\
| * synth_ecp5 rename -nomux to -nowidelut, but preserve formerEddie Hung2019-06-261-6/+6
| |
* | ecp5: Add abc9 optionDavid Shah2019-06-141-6/+19
|/ | | | Signed-off-by: David Shah <dave@ds0.me>
* Add handling of init attributes in "opt_expr -undriven"Clifford Wolf2019-04-301-1/+1
| | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* Merge pull request #794 from daveshah1/ecp5improveClifford Wolf2019-02-281-3/+0
|\ | | | | ECP5 Improvements
| * ecp5: Support for flipflop initialisationDavid Shah2019-01-221-3/+0
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
* | ecp5: Use abc -dressDavid Shah2019-02-061-2/+2
|/ | | | Signed-off-by: David Shah <davey1576@gmail.com>
* Fix typographical and grammatical errors and inconsistencies.whitequark2019-01-021-1/+1
| | | | | | | | | | | | The initial list of hits was generated with the codespell command below, and each hit was evaluated and fixed manually while taking context into consideration. DIRS="kernel/ frontends/ backends/ passes/ techlibs/" DIRS="${DIRS} libs/ezsat/ libs/subcircuit" codespell $DIRS -S *.o -L upto,iff,thru,synopsys,uint More hits were found by looking through comments and strings manually.
* ecp5: Add DSP blackboxesDavid Shah2018-10-211-1/+1
| | | | Signed-off-by: David Shah <davey1576@gmail.com>
* ecp5: Add latch inferenceDavid Shah2018-10-191-3/+0
| | | | Signed-off-by: David Shah <dave@ds0.me>
* ecp5: First BRAM type maps successfullyDavid Shah2018-10-101-4/+1
| | | | Signed-off-by: David Shah <dave@ds0.me>
* Consistent use of 'override' for virtual methods in derived classes.Henner Zeller2018-07-201-4/+4
| | | | | | | | | 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)
* ecp5: ECP5 synthesis fixesDavid Shah2018-07-161-0/+4
| | | | Signed-off-by: David Shah <davey1576@gmail.com>
* ecp5: Adding synchronous set/reset supportDavid Shah2018-07-141-2/+3
| | | | Signed-off-by: David Shah <davey1576@gmail.com>
* ecp5: Initial arith_map implementationDavid Shah2018-07-131-6/+1
| | | | Signed-off-by: David Shah <davey1576@gmail.com>
* ecp5: Adding basic synth_ecp5 based on synth_ice40David Shah2018-07-131-0/+331
Signed-off-by: David Shah <davey1576@gmail.com>