Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Add "-device" argument to synth_ice40 | Eddie Hung | 2019-04-17 | 4 | -7/+20 |
| | |||||
* | Missing abc_flop_q attribute on SPRAM | Eddie Hung | 2019-04-17 | 1 | -1/+1 |
| | |||||
* | Map to SB_LUT4 from fastest input first | Eddie Hung | 2019-04-17 | 1 | -7/+11 |
| | |||||
* | Mark seq output ports with "abc_flop_q" attr | Eddie Hung | 2019-04-17 | 1 | -24/+24 |
| | |||||
* | Also update Makefile.inc | Eddie Hung | 2019-04-17 | 1 | -3/+3 |
| | |||||
* | synth_ice40 to use renamed files | Eddie Hung | 2019-04-17 | 1 | -2/+2 |
| | |||||
* | Rename to abc.* | Eddie Hung | 2019-04-17 | 3 | -0/+0 |
| | |||||
* | Revert "Try using an ICE40_CARRY_LUT primitive to avoid ABC issues" | Eddie Hung | 2019-04-17 | 7 | -102/+35 |
| | | | | This reverts commit a7632ab3326c5247b8152a53808413b259c13253. | ||||
* | Try using an ICE40_CARRY_LUT primitive to avoid ABC issues | Eddie Hung | 2019-04-17 | 7 | -35/+102 |
| | |||||
* | Fix spacing | Eddie Hung | 2019-04-17 | 1 | -5/+5 |
| | |||||
* | Add SB_LUT4 to box library | Eddie Hung | 2019-04-16 | 3 | -0/+16 |
| | |||||
* | Add ice40 box files | Eddie Hung | 2019-04-16 | 6 | -1/+27 |
| | |||||
* | Merge branch 'master' into xaig | Eddie Hung | 2019-04-08 | 5 | -42/+198 |
|\ | |||||
| * | Remove ice40/cells_sim.v hack to avoid warning for blocking memory writes | Clifford Wolf | 2019-03-12 | 1 | -19/+0 |
| | | | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
| * | Fix typo in ice40_braminit help msg | Clifford Wolf | 2019-03-09 | 1 | -1/+1 |
| | | | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
| * | Merge pull request #859 from smunaut/ice40_braminit | Clifford Wolf | 2019-03-09 | 4 | -37/+212 |
| |\ | | | | | | | iCE40 BRAM primitives init from file | ||||
| | * | ice40: Run ice40_braminit pass by default | Sylvain Munaut | 2019-03-08 | 1 | -0/+1 |
| | | | | | | | | | | | | Signed-off-by: Sylvain Munaut <tnt@246tNt.com> | ||||
| | * | ice40: Add ice40_braminit pass to allow initialization of BRAM from file | Sylvain Munaut | 2019-03-08 | 3 | -37/+211 |
| | | | | | | | | | | | | | | | | | | | | | | | | This adds a INIT_FILE attribute to the SB_RAM40_4K blocks that will initialize content from a hex file. Same behavior is imlemented in the simulation model and in a new pass for actual synthesis Signed-off-by: Sylvain Munaut <tnt@246tNt.com> | ||||
| * | | ice40: use 2 bits for READ/WRITE MODE for SB_RAM map | Elms | 2019-02-28 | 1 | -2/+2 |
| |/ | | | | | | | | | | | EBLIF output .param will only use necessary 2 bits Signed-off-by: Elms <elms@freshred.net> | ||||
* | | Merge remote-tracking branch 'origin/master' into xaig | Eddie Hung | 2019-02-26 | 1 | -1/+1 |
|\| | |||||
| * | Merge pull request #740 from daveshah1/improve_dress | Clifford Wolf | 2019-02-22 | 1 | -1/+1 |
| |\ | | | | | | | Improve ABC netname preservation | ||||
| | * | ice40: Use abc -dress in synth_ice40 | David Shah | 2019-02-06 | 1 | -1/+1 |
| | | | | | | | | | | | | Signed-off-by: David Shah <davey1576@gmail.com> | ||||
* | | | Merge remote-tracking branch 'origin/master' into xaig | Eddie Hung | 2019-02-21 | 6 | -58/+667 |
|\| | | |||||
| * | | Bugfix in ice40_dsp | Clifford Wolf | 2019-02-21 | 2 | -20/+33 |
| | | | | | | | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
| * | | Add ice40 test_dsp_map test case generator | Clifford Wolf | 2019-02-20 | 2 | -0/+99 |
| | | | | | | | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
| * | | Add "synth_ice40 -dsp" | Clifford Wolf | 2019-02-20 | 1 | -3/+27 |
| | | | | | | | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
| * | | Improve iCE40 SB_MAC16 model | Clifford Wolf | 2019-02-20 | 5 | -121/+179 |
| | | | | | | | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
| * | | Add first draft of functional SB_MAC16 model | Clifford Wolf | 2019-02-19 | 4 | -53/+467 |
| |/ | | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* / | synth_ice40 to have new -abc9 arg | Eddie Hung | 2019-02-14 | 1 | -4/+12 |
|/ | |||||
* | Merge pull request #772 from whitequark/synth_lut | Clifford Wolf | 2019-01-02 | 1 | -1/+1 |
|\ | | | | | synth: add k-LUT mode | ||||
| * | synth_ice40: use 4-LUT coarse synthesis mode. | whitequark | 2019-01-02 | 1 | -1/+1 |
| | | |||||
* | | Fix typographical and grammatical errors and inconsistencies. | whitequark | 2019-01-02 | 1 | -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. | ||||
* | Rename "fine:" label to "map:" in "synth_ice40" | Clifford Wolf | 2018-12-16 | 1 | -1/+1 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Merge pull request #724 from whitequark/equiv_opt | Clifford Wolf | 2018-12-16 | 1 | -0/+2 |
|\ | | | | | equiv_opt: new command, for verifying optimization passes | ||||
| * | equiv_opt: pass -D EQUIV when techmapping. | whitequark | 2018-12-07 | 1 | -0/+2 |
| | | | | | | | | | | This allows avoiding techmap crashes e.g. because of large memories in white-box cell models. | ||||
* | | Merge pull request #730 from smunaut/ffssr_dont_touch | Clifford Wolf | 2018-12-16 | 1 | -0/+3 |
|\ \ | | | | | | | ice40: Honor the "dont_touch" attribute in FFSSR pass | ||||
| * | | ice40: Honor the "dont_touch" attribute in FFSSR pass | Sylvain Munaut | 2018-12-08 | 1 | -0/+3 |
| |/ | | | | | | | | | | | | | This is useful if you want to place FF manually ... can't merge SR in those because it might make the manual placement invalid Signed-off-by: Sylvain Munaut <tnt@246tNt.com> | ||||
* | | Merge pull request #725 from olofk/ram4k-init | Clifford Wolf | 2018-12-16 | 1 | -0/+19 |
|\ \ | | | | | | | Only use non-blocking assignments of SB_RAM40_4K for yosys | ||||
| * | | Only use non-blocking assignments of SB_RAM40_4K for yosys | Olof Kindgren | 2018-12-06 | 1 | -0/+19 |
| |/ | | | | | | | | | | | | | | | | | | | | | In an initial statement, blocking assignments are normally used and e.g. verilator throws a warning if non-blocking ones are used. Yosys cannot however properly resolve the interdependencies if blocking assignments are used in the initialization of SB_RAM_40_4K and thus this has been used. This patch will change to use non-blocking assignments only for yosys | ||||
* / | synth_ice40: split `map_gates` off `fine`. | whitequark | 2018-12-06 | 1 | -0/+4 |
|/ | |||||
* | synth_ice40: add -noabc option, to use built-in LUT techmapping. | whitequark | 2018-12-05 | 1 | -2/+16 |
| | | | | This should be combined with -relut to get sensible results. | ||||
* | opt_lut: add -dlogic, to avoid disturbing logic such as carry chains. | whitequark | 2018-12-05 | 1 | -2/+2 |
| | |||||
* | synth_ice40: add -relut option, to run ice40_unlut and opt_lut. | whitequark | 2018-12-05 | 1 | -1/+13 |
| | |||||
* | Extract ice40_unlut pass from ice40_opt. | whitequark | 2018-12-05 | 3 | -13/+109 |
| | | | | | | | | Currently, `ice40_opt -unlut` would map SB_LUT4 to $lut and convert them back to logic immediately. This is not desirable if the goal is to operate on $lut cells. If this is desirable, the same result as `ice40_opt -unlut` can be achieved by running simplemap and opt after ice40_unlut. | ||||
* | ice40: Add option to only use CE if it'd be use by more than X FFs | Sylvain Munaut | 2018-11-27 | 1 | -0/+14 |
| | | | | Signed-off-by: Sylvain Munaut <tnt@246tNt.com> | ||||
* | Add iCE40 SB_SPRAM256KA simulation model | Clifford Wolf | 2018-09-10 | 1 | -9/+30 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Consistent use of 'override' for virtual methods in derived classes. | Henner Zeller | 2018-07-20 | 4 | -10/+10 |
| | | | | | | | | | 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) | ||||
* | ice40: Add CIN_CONST and CIN_SET parameters to ICESTORM_LC | David Shah | 2018-07-13 | 1 | -2/+6 |
| | | | | Signed-off-by: David Shah <davey1576@gmail.com> | ||||
* | Add "synth_ice40 -json" | Clifford Wolf | 2018-06-13 | 1 | -9/+22 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Fix ice40_opt for cases where a port is connected to a signal with width != 1 | Clifford Wolf | 2018-06-11 | 1 | -9/+25 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> |