aboutsummaryrefslogtreecommitdiffstats
path: root/ice40
Commit message (Collapse)AuthorAgeFilesLines
* CMake: require at least version 3.5 (Ubuntu 16.04).whitequark2020-06-251-1/+1
|
* CMake: rewrite chipdb handling from ground up.whitequark2020-06-255-127/+145
|
* ice40: Add fallback behavior for Extra Cell config bits vectorsSylvain Munaut2020-06-021-1/+11
| | | | | | | This helps make new nextpnr compatible with old chipdbs when a parameters goes from single bit to multi bit. Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* ice40: Add support for the 2nd bit of SHIFTREG_DIV_MODESylvain Munaut2020-06-021-1/+1
| | | | | | This requires the matching chipdb update from icestorm project ! Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* Merge pull request #447 from whitequark/wasiDavid Shah2020-05-241-2/+2
|\ | | | | Port nextpnr-{ice40,ecp5} to WASI
| * Port nextpnr-{ice40,ecp5} to WASI.whitequark2020-05-231-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This involves very few changes, all typical to WASM ports: * WASM doesn't currently support threads or atomics so those are disabled. * WASM doesn't currently support exceptions so the exception machinery is stubbed out. * WASM doesn't (and can't) have mmap(), so an emulation library is used. That library currently doesn't support MAP_SHARED flags, so MAP_PRIVATE is used instead. There is also an update to bring ECP5 bbasm CMake rules to parity with iCE40 ones, since although it is possible to embed chipdb into nextpnr on WASM, a 200 MB WASM file has very few practical uses. The README is not updated and there is no included toolchain file because at the moment it's not possible to build nextpnr with upstream boost and wasi-libc. Boost requires a patch (merged, will be available in boost 1.74.0), wasi-libc requires a few unmerged patches.
* | Fix spelling of 'unsupported'Nathaniel Graff2020-05-131-4/+4
|/ | | | Signed-off-by: Nathaniel Graff <nathaniel.graff@sifive.com>
* ice40: Derive oscillator frequency constraintsDavid Shah2020-03-291-0/+40
| | | | Signed-off-by: David Shah <dave@ds0.me>
* ice40: Fix output register timing analysis for registered output enableSylvain Munaut2020-03-291-1/+1
| | | | | | | Wrong bits were being tested. [5:4] is what's controlling the output enable path. Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* ice40: Always copy DFF attrs to LCDavid Shah2020-03-191-0/+5
| | | | Signed-off-by: David Shah <dave@ds0.me>
* Merge pull request #400 from YosysHQ/dave/tri-fixesDavid Shah2020-03-101-1/+18
|\ | | | | Improve handling of unused inout port bits
| * Improve handling of unused inout port bitsDavid Shah2020-02-251-1/+18
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
* | build: Default the ECP5 and iCE40 roots to the install prefixSylvain Munaut2020-03-031-1/+1
|/ | | | | | | | | If the user specifies a custom install prefix, chances are icestrom/trellis are also in that prefix rather than the hardcoded /usr/local Fixes #351 Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* router2: Improve flow and log outputDavid Shah2020-02-031-1/+1
| | | | Signed-off-by: David Shah <dave@ds0.me>
* ice40: Implement getRouteBoundingBox for router2David Shah2020-02-032-0/+26
| | | | Signed-off-by: David Shah <dave@ds0.me>
* Allow selection of router algorithmDavid Shah2020-02-032-2/+17
| | | | Signed-off-by: David Shah <dave@ds0.me>
* More adjustments to .bba file locationsLarry Doolittle2020-01-141-3/+2
| | | | | | | | | | Follows PM discussion with Marcus Comstedt. Extend changes in .bba file location (made in commit b6a7b60) to ice40 and MSVC cases, so all cases become compatible with read-only access to git tree. Only known down-side is inefficiency when building out-of-tree for multiple architectures; people following that use case should consider using PREGENERATED_BBA_PATH. It would be nice if there were less copy-paste in MSVC vs. non-MSVC content in family.cmake, but that would have to be addressed by someone more skilled in Cmake and MSVC.
* Preserve hierarchy through packingDavid Shah2019-12-272-0/+5
| | | | Signed-off-by: David Shah <dave@ds0.me>
* python: Add bindings for hierarchy structuresDavid Shah2019-12-271-0/+2
| | | | Signed-off-by: David Shah <dave@ds0.me>
* json: Remove legacy frontendDavid Shah2019-12-271-1/+0
| | | | Signed-off-by: David Shah <dave@ds0.me>
* frontend/generic: Fix regressionsDavid Shah2019-12-271-1/+3
| | | | Signed-off-by: David Shah <dave@ds0.me>
* Work around Qt MOC issue with IdString enumsDavid Shah2019-12-271-0/+4
| | | | Signed-off-by: David Shah <dave@ds0.me>
* ice40: Improve error handling of Lattice-style parametersDavid Shah2019-12-101-0/+3
| | | | Signed-off-by: David Shah <dave@ds0.me>
* Add bba #embed supportClifford Wolf2019-12-011-5/+14
| | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* ice40: Make HeAP the default placerDavid Shah2019-11-261-0/+4
| | | | Signed-off-by: David Shah <dave@ds0.me>
* Merge pull request #345 from YosysHQ/dave/sdfDavid Shah2019-11-182-15/+23
|\ | | | | Improve handling of top level IO and add SDF support
| * sdf: Working on support for CVCDavid Shah2019-10-241-1/+1
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * ice40: Preserve top level IO properlyDavid Shah2019-10-192-14/+22
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
* | ice40: cmake: fix build with pregenerated bba pathSean Cross2019-10-241-8/+0
|/ | | | | | | | | | | | | | | When building using non-pregenerated bba files, the rule to create bbasm files gets called twice: once unconditionally, and once as part of the conditional that determines we're not using a pregenerated bba path. If we _are_ using a pregenerated bba path, then this rule gets called anyway, resulting in a build error. Remove the duplicate, unconditional creation of the bba file generation, to fix the build when using pregenerated files, and to speed up the build when not using pregenerated files. Signed-off-by: Sean Cross <sean@xobs.io>
* ice40: Add set_frequency pcf command; and document pcfDavid Shah2019-10-131-0/+4
| | | | Signed-off-by: David Shah <dave@ds0.me>
* ice40: Add support for PLL DELAY_ADJUSTMENT_MODEDavid Shah2019-09-231-1/+15
| | | | | | Fixes #336 Signed-off-by: David Shah <dave@ds0.me>
* ice40: Fix carry feed-out when we have to split the chain nextDavid Shah2019-09-231-2/+19
| | | | Signed-off-by: David Shah <dave@ds0.me>
* Merge pull request #332 from YosysHQ/dave/python-refactorDavid Shah2019-09-191-96/+2
|\ | | | | Improving Python API and adding docs for it
| * python: Refactor out bindings shared between ECP5 and iCE40David Shah2019-09-151-96/+2
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
* | Merge branch 'precompiled-bba' of https://github.com/xobs/nextpnr into ↵David Shah2019-09-191-10/+32
|\ \ | | | | | | | | | xobs-precompiled-bba
| * | ice40: support PREGENERATED_BBA_PATHSean Cross2019-09-171-18/+31
| |/ | | | | | | | | | | | | Add support for pregenerating BBA files, to build on Windows and Darwin. Signed-off-by: Sean Cross <sean@xobs.io>
* | Merge pull request #330 from zeldin/bbaDavid Shah2019-09-191-5/+6
|\ \ | |/ |/| bba: Default to native endian in bbasm
| * CMake: Generate chipdbs in build tree when building out-of-treeMarcus Comstedt2019-09-151-3/+4
| | | | | | | | Signed-off-by: Marcus Comstedt <marcus@mc.pp.se>
| * bba: Require explicit endianness flag, and supply itMarcus Comstedt2019-09-151-2/+2
| | | | | | | | Signed-off-by: Marcus Comstedt <marcus@mc.pp.se>
* | python: Fix getWireBelPinsDavid Shah2019-09-152-0/+20
|/ | | | | | Fixes #327 Signed-off-by: David Shah <dave@ds0.me>
* Merge pull request #329 from YosysHQ/dave/net_aliasesDavid Shah2019-09-131-0/+5
|\ | | | | json: Add support for net aliases
| * json: Add support for net aliasesDavid Shah2019-09-131-0/+5
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
* | ice40: Move clock constraints across SB_IO and SB_GB_IODavid Shah2019-09-131-0/+20
|/ | | | Signed-off-by: David Shah <dave@ds0.me>
* ice40: Fix DSP cascade wiresDavid Shah2019-09-031-4/+9
| | | | Signed-off-by: David Shah <dave@ds0.me>
* ice40: Only warn about default package if there is no package argumentSylvain Munaut2019-08-101-3/+4
| | | | Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* Add deprecation warning for default packagesDavid Shah2019-08-083-3/+5
| | | | Signed-off-by: David Shah <dave@ds0.me>
* ice40/examples: Fix blinky.shDavid Shah2019-08-081-1/+1
| | | | Signed-off-by: David Shah <dave@ds0.me>
* ice40: Add better stats on LC packingDavid Shah2019-08-082-1/+15
| | | | Signed-off-by: David Shah <dave@ds0.me>
* ice40: Fix regressionDavid Shah2019-08-051-1/+3
| | | | Signed-off-by: David Shah <dave@ds0.me>
* Major Property improvements for common and iCE40David Shah2019-08-058-161/+169
| | | | Signed-off-by: David Shah <dave@ds0.me>