aboutsummaryrefslogtreecommitdiffstats
path: root/common
Commit message (Collapse)AuthorAgeFilesLines
* placer1: Unlock even if placement failsDavid Shah2020-06-291-0/+2
| | | | | | | | Prevents a hang during routing when using --force Fixes #462 Signed-off-by: David Shah <dave@ds0.me>
* Fix clangformat and execute itMiodrag Milanovic2020-06-272-7/+9
|
* Merge pull request #460 from whitequark/better-embedDavid Shah2020-06-262-0/+96
|\ | | | | Simplify and improve chipdb embedding/loading
| * Simplify and improve chipdb embedding/loading.whitequark2020-06-262-0/+96
| |
* | HeAP: Add timeout to IO placementDavid Shah2020-06-251-0/+4
|/ | | | Signed-off-by: David Shah <dave@ds0.me>
* clangformatDavid Shah2020-06-121-12/+6
| | | | Signed-off-by: David Shah <dave@ds0.me>
* Merge pull request #447 from whitequark/wasiDavid Shah2020-05-244-8/+62
|\ | | | | Port nextpnr-{ice40,ecp5} to WASI
| * Port nextpnr-{ice40,ecp5} to WASI.whitequark2020-05-234-8/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | clangformatDavid Shah2020-05-161-3/+2
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
* | Fix embarassing use of topographical when meaning topologicalEddie Hung2020-05-141-16/+16
|/
* Add missing --top optionDavid Shah2020-05-091-0/+5
| | | | Signed-off-by: David Shah <dave@ds0.me>
* python: Also convert regular map keys to stringDavid Shah2020-04-241-1/+3
| | | | Signed-off-by: David Shah <dave@ds0.me>
* python: Wrap map IdString key when accessed by indexDavid Shah2020-04-241-1/+2
| | | | Signed-off-by: David Shah <dave@ds0.me>
* design_utils: Set port.net to null when disconnectingSylvain Munaut2020-04-241-0/+1
| | | | | | | | Without this the python bindings can't actually connect anything else to a disconnected port since the assert in connect_ports will think it's still connected Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* command.cc: Use correct constant for default routerRangel Ivanov2020-04-041-1/+1
| | | | | | Otherwise --help reports that the default router is heap Signed-off-by: Rangel Ivanov <rangelivanov88@gmail.com>
* router2: Prevent overflowDavid Shah2020-03-221-2/+3
| | | | Signed-off-by: David Shah <dave@ds0.me>
* Merge branch 'master' of ssh.github.com:YosysHQ/nextpnrDavid Shah2020-03-171-5/+15
|\
| * Replace assertion failure with errorDavid Shah2020-03-131-5/+15
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
* | timing: Improve robustness to dangling/undriven logicDavid Shah2020-03-171-0/+10
|/ | | | Signed-off-by: David Shah <dave@ds0.me>
* pycontainers: Properly handle KeyErrorsSylvain Munaut2020-03-041-5/+11
| | | | | | | | | | | | | We raise a C++ exception to abort the rest of the execution of the function. At the same time we standardize on using a throw runtime error as the method to avoid warning when not returning values. (some places used this throw and some other used std::terminate) Fixes #403 Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* svg: Basic SVG graphics renderingDavid Shah2020-02-154-0/+165
| | | | Signed-off-by: David Shah <dave@ds0.me>
* placer1: Add routeability optimisation (off by default)David Shah2020-02-122-3/+89
| | | | Signed-off-by: David Shah <dave@ds0.me>
* HeAP: backport out-of-range fixDavid Shah2020-02-121-2/+2
| | | | Signed-off-by: David Shah <dave@ds0.me>
* HeAP: Add X and Y scaling factors for asymmetric archesDavid Shah2020-02-122-16/+29
| | | | Signed-off-by: David Shah <dave@ds0.me>
* HeAP: Make beta configurableDavid Shah2020-02-122-9/+10
| | | | Signed-off-by: David Shah <dave@ds0.me>
* HeAP: Improve handling of heterogeneous slice archesDavid Shah2020-02-122-94/+205
| | | | Signed-off-by: David Shah <dave@ds0.me>
* HeAP: Make solver tolerance arch-configurableDavid Shah2020-02-122-3/+5
| | | | Signed-off-by: David Shah <dave@ds0.me>
* placer1: Allow scaling HPWL differently in each directionDavid Shah2020-02-122-6/+14
| | | | Signed-off-by: David Shah <dave@ds0.me>
* Merge pull request #391 from YosysHQ/router2-upstreamDavid Shah2020-02-046-2/+1234
|\ | | | | Upstreaming router2
| * router2: Improve flow and log outputDavid Shah2020-02-031-5/+12
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: Add a simple timing heuristicDavid Shah2020-02-031-0/+27
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * Allow selection of router algorithmDavid Shah2020-02-031-0/+17
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: Make magic numbers configurableDavid Shah2020-02-032-39/+85
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: Fix case of undriven unsunk arcsDavid Shah2020-02-031-0/+2
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: Multi-thread in more casesDavid Shah2020-02-031-6/+32
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: Flatten wire structureDavid Shah2020-02-031-79/+88
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: Experiment with data structuresDavid Shah2020-02-031-36/+63
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: Profile nets by route timeDavid Shah2020-02-031-0/+24
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: ImprovementsDavid Shah2020-02-033-14/+19
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: reduce bias cost factorDavid Shah2020-02-031-1/+1
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: special case improvementDavid Shah2020-02-031-1/+1
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: reduce memory footprintDavid Shah2020-02-031-21/+28
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: debuggingDavid Shah2020-02-032-3/+12
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: debuggingDavid Shah2020-02-031-1/+6
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: first pass at reserved wiresDavid Shah2020-02-031-3/+65
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: debugging some edge casesDavid Shah2020-02-031-10/+10
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: speedupDavid Shah2020-02-031-1/+2
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: Improve backwards routing of some casesDavid Shah2020-02-031-1/+27
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: tweaksDavid Shah2020-02-031-3/+5
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * router2: Attempt to fix some stuck routing casesDavid Shah2020-02-031-9/+26
| | | | | | | | Signed-off-by: David Shah <dave@ds0.me>