Commit Graph

616 Commits

Author SHA1 Message Date
Eddie Hung 5aa4cf2efb Call now-more-flexibile update_budget() during routing, but using any actual delays that we have 2018-07-21 13:59:48 -07:00
Eddie Hung 926c186ec7 Add Arch::getBudgetOverride() to eliminate hack for COUT 2018-07-21 13:05:09 -07:00
Eddie Hung e44dc25f09 Uncomment out negative slack messages during update_budget(), make verbose 2018-07-21 12:47:09 -07:00
Clifford Wolf 9e6deed3b8 Merge branch 'q3k/lock-2-electric-boogaloo' into 'master'
Basic locking and threading for Arch/GUI

See merge request SymbioticEDA/nextpnr!10
2018-07-21 19:45:24 +00:00
Clifford Wolf 30e2f0e1e8 Add Loc constructors
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-21 21:40:06 +02:00
Eddie Hung 31c9fd28fe Merge remote-tracking branch 'origin/master' into redist_slack 2018-07-21 12:27:44 -07:00
Eddie Hung 1f6897733b Merge branch 'redist_slack' into 'redist_slack'
# Conflicts:
#   common/timing.cc
2018-07-21 19:03:23 +00:00
Sergiusz Bazanski 6588aafdb8 Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr into q3k/lock-2-electric-boogaloo 2018-07-21 20:00:42 +01:00
Clifford Wolf 39b843ecac Merge branch 'router1ng' into 'master'
Router1ng

See merge request SymbioticEDA/nextpnr!13
2018-07-21 17:59:44 +00:00
Clifford Wolf c796b301d3 Bugfix in router1: Also bind src_wire
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-21 19:36:48 +02:00
David Shah b2452f4646 HACK: set carry budgets to zero 2018-07-21 19:33:42 +02:00
Clifford Wolf 2f996e6a30 Add final sanity check in router1
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-21 17:54:47 +02:00
Clifford Wolf 41194d934b Refactoring of router1
- Use source-sink pairs as jobs, not whole nets
- Route nets with smallest slack first
- Preserve routes for already routed source-sink pairs
- Add small incentive for re-using wires

Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-21 17:02:53 +02:00
David Shah 80097526ee Fix placement bug with VexRiscV reported by John McMaster
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-21 16:45:46 +02:00
Clifford Wolf 78f40ca0af Change DelayInfo semantics to what we actually need
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-21 13:52:59 +02:00
Clifford Wolf c556242976 Add getWireDelay API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-21 13:38:44 +02:00
David Shah bbb140c699 Quick hack to route nets with lowest budget first 2018-07-21 11:52:41 +02:00
Eddie Hung d23cdd6c06 Avoid hysteresis preventing placer from stopping 2018-07-21 11:19:06 +02:00
Eddie Hung 241418dc25 Add update_budget() to timing.h header 2018-07-21 11:19:06 +02:00
Eddie Hung 1cd5c9dac8 Update comment 2018-07-21 11:19:06 +02:00
Eddie Hung 3eecccc6f7 Avoid hysteresis preventing placer from stopping 2018-07-21 01:59:16 -07:00
Eddie Hung f89115c3e3 Add update_budget() to timing.h header 2018-07-21 01:55:46 -07:00
Eddie Hung 27a79a3a4f Update comment 2018-07-21 01:55:20 -07:00
Sergiusz Bazanski 0311a27a53 Use UI lock for yielding 2018-07-20 18:34:59 +01:00
Sergiusz Bazanski 76e5236fb3 Nuke IdStringDB 2018-07-20 18:24:16 +01:00
Sergiusz Bazanski b5b956bd21 Remove dead code. 2018-07-20 17:57:16 +01:00
Clifford Wolf fd8239e170 Add Location APIs to generic arch
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-20 18:09:22 +02:00
Clifford Wolf f6fa0300ae Improve iCE40 and common Loc code
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-20 17:33:57 +02:00
Clifford Wolf e16b4a325e Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr into gridapi 2018-07-20 17:13:26 +02:00
Sergiusz Bazanski 19f4b68f07 clang-format and uncomment debug 2018-07-20 13:19:56 +01:00
Sergiusz Bazanski b4b111a053 Move pthread yield hack into BaseCtx 2018-07-20 13:15:22 +01:00
Sergiusz Bazanski b84a446eef Mix-in Deterministic RNG at Context instead of BaseCtx 2018-07-20 11:04:54 +01:00
Sergiusz Bazanski 55d5f8f248 Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr into q3k/lock-2-electric-boogaloo 2018-07-20 10:59:33 +01:00
David Shah 6c38df7295 ice40: Adding cell definition for DSPs
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-19 13:22:46 +02:00
David Shah d221e90706 Reducing performance cost of asserts
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-19 11:43:10 +02:00
Clifford Wolf 609794f9e6 Add Net/Cell "udata" field
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-18 13:29:58 +02:00
Serge Bazanski 03508faabf WIP. 2018-07-17 19:16:26 +01:00
Clifford Wolf ddfc535df7 Add ArchNetInfo and ArchCellInfo
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-17 20:04:49 +02:00
Serge Bazanski 2f5b94fe30 Add basic external locking, lock from P&R 2018-07-17 16:27:50 +01:00
Serge Bazanski 498bef3f3e Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr into q3k/lock-2-electric-boogaloo 2018-07-17 16:03:48 +01:00
Clifford Wolf c0f1af87f6 Add Loc struct for x/y/z bel locations
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-17 17:03:44 +02:00
David Shah 924037129c Fix driver finder when net is undriven
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-17 11:00:18 +02:00
David Shah 56fa8cc669 refactor: Remove incorrect uses of the term 'wirelength'
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-16 17:13:40 +02:00
Serge Bazanski 91db413c60 Refactor RNG out to separate DeterministicRNG class
This well also allow for better lifecycle control over the state of the
RNG in the future.
2018-07-14 20:33:32 +01:00
Serge Bazanski 59a790cd00 Refactor IdString functionality into IdStringDB
This lets us more precisely control the lifetime of IdString databases
in contexts/arches.
2018-07-14 20:24:20 +01:00
Sergiusz Bazanski 57f75385b0 Revert "Make PnR use Unlocked methods"
This reverts commit 9e4f97290a.
2018-07-14 18:53:08 +01:00
Sergiusz Bazanski 447ed83638 Revert "Introduce proxies for locked access to ctx"
This reverts commit 89809a8b81.
2018-07-14 18:52:56 +01:00
Sergiusz Bazanski 36b4e3382d Revert "Make GUI nice and smooth."
This reverts commit a8c84e90a3.
2018-07-14 18:50:50 +01:00
Sergiusz Bazanski b0c05c7f75 Revert "Refactor proxies to nextpnr."
This reverts commit 9b17fe385c.
2018-07-14 18:50:37 +01:00
Sergiusz Bazanski d9c3c117a3 Revert "clang-format"
This reverts commit 8ca7a6da25.
2018-07-14 18:50:34 +01:00
Sergiusz Bazanski ade67ecf21 Revert "Move read methods to ReadMethods, remove some legacy access to Arch"
This reverts commit 3352ff4abb.
2018-07-14 18:50:23 +01:00
Sergiusz Bazanski 3352ff4abb Move read methods to ReadMethods, remove some legacy access to Arch 2018-07-14 11:46:32 +01:00
Sergiusz Bazanski 8ca7a6da25 clang-format 2018-07-14 11:10:59 +01:00
Sergiusz Bazanski 9b17fe385c Refactor proxies to nextpnr. 2018-07-14 11:10:31 +01:00
Sergiusz Bazanski a8c84e90a3 Make GUI nice and smooth. 2018-07-13 20:53:52 +01:00
Sergiusz Bazanski 89809a8b81 Introduce proxies for locked access to ctx 2018-07-13 18:58:59 +01:00
Sergiusz Bazanski 9e4f97290a Make PnR use Unlocked methods 2018-07-13 14:50:58 +01:00
Sergiusz Bazanski 499951cb65 Remove legacy graphics API
For now we do not optimize the OpenGL renderer against the new decal
API, but this can be done in the future.
2018-07-12 21:30:36 +01:00
Clifford Wolf b8a42ff53b Updates from clang-format
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-12 22:04:13 +02:00
Clifford Wolf 13e7cd8681 Add GraphicElement style enum
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-12 21:04:47 +02:00
Clifford Wolf a436035424 Add Groups API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-12 17:22:29 +02:00
Clifford Wolf 7daa8524c8 Add ctx->place() API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-11 18:15:08 +02:00
Clifford Wolf 7df67c91b3 Add ctx->route() API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-11 18:04:09 +02:00
Clifford Wolf 2a01b5e4d3 New refreshUi API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-11 17:02:13 +02:00
Miodrag Milanovic 09735694b2 Fixed MSVC build 2018-07-11 14:39:42 +02:00
Clifford Wolf ce6afb5f7f Merge branch 'ice40gfx' into 'master'
Ice40gfx

See merge request SymbioticEDA/nextpnr!7
2018-07-11 12:04:53 +00:00
Clifford Wolf 7081cca016 Add GUI Decals API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-11 14:03:23 +02:00
David Shah 29d65bd368 ecp5: Working on bitstream gen
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:42:09 +02:00
David Shah b397dd8071 ecp5: Adding bitstream gen for slice config
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:42:09 +02:00
David Shah c4af52dd5b ecp5: Working on arch implementation
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:41:36 +02:00
Miodrag Milanovic 2ad355ebeb Renamed dummy->generic for tests, also fix warning 2018-07-11 08:05:42 +02:00
Eddie Hung 18c93104be NPNR_ASSERT not to implicitly construct strings 2018-07-08 15:48:54 -07:00
Miodrag Milanovic fcff203c23 typeof to decltype 2018-07-05 10:13:29 +02:00
David Shah 11fb625195 python: Renaming and fixing 'generic' build
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-04 14:55:24 +02:00
David Shah f1bddc2852 common: Remove deprecated global IdStrings
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-04 14:55:24 +02:00
David Shah 46db500123 python: More design-related bindings, dump_design.py working again
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-04 14:55:24 +02:00
David Shah 79e91368f9 python: Update wrapper for non-unique_ptr maps
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-04 14:55:24 +02:00
David Shah f6432aa88e python: Adding more wrapped bindings for ice40
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-04 14:55:24 +02:00
David Shah f8ad2b31a9 python: Translate NPNR_ASSERTs to Python
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-04 14:55:24 +02:00
David Shah 3e8bdb5cbd python: New wrapper system working for unique_ptr maps
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-04 14:55:24 +02:00
David Shah a382d906ef python: Developing context wrappers for maps
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-04 14:55:24 +02:00
David Shah 45ec502ded python: Adding more bindings
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-04 14:55:24 +02:00
David Shah 1e96d65ded python: Add context wrapper support for ranges
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-04 14:55:24 +02:00
David Shah 4bc12f2ead Progress on new wrapper system
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-04 14:55:24 +02:00
David Shah 65195513eb python: Restructuring wrapper system
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-04 14:55:24 +02:00
David Shah 2e8c0c872f Add NPNR_ASSERT_FALSE, use in bitstream.cc
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-04 13:04:31 +02:00
Miodrag Milanovic 6eaae6196c Fixed debug msvc build and fixed inaccessible base 2018-07-04 12:23:55 +02:00
David Shah e0a851976f refactor: Replace assert with NPNR_ASSERT
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-04 12:15:23 +02:00
David Shah c9d1bce859 common: Adding NPNR_ASSERT
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-04 12:04:26 +02:00
Miodrag Milanovic 1cf8293019 Fixed macros and includes for MSVC 2018-07-03 08:53:44 +02:00
David Shah fe1ad5b086 python: Tweaking how the new wrappers will work
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-02 14:14:08 +02:00
David Shah b720a7fddc Starting to develop a new Python wrapper system
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-01 16:40:40 +02:00
Clifford Wolf e6dc9ce77d Add implementations for generic arch db API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-30 17:31:24 +02:00
Clifford Wolf 25f07549a1 Refactor IdString::global_ctx
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-30 07:47:04 +02:00
Clifford Wolf c73759f9f1 Split "arch.h" in "arch.h" and "archdefs.h"
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-29 20:36:34 +02:00
David Shah 302ccc14cf ice40: UltraPlus SPRAM working
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-29 19:58:08 +02:00
David Shah 27e7bc3b4b Improving the SA+legalisation flow
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-29 17:04:22 +02:00
David Shah d908928b56 Tidying up the SA placer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-29 15:47:56 +02:00
David Shah 23789b7569 Increase temp and diameter after legalisation
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-29 15:30:00 +02:00
David Shah 4977b35d2f Start legalisation at a much lower SA temperature
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-29 15:18:44 +02:00
David Shah 1aa4be770c Make single-cell placer less likely to get stuck
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-29 13:28:06 +02:00
David Shah b5f473cd7a Integrating SA placer and legaliser
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-29 13:12:44 +02:00
David Shah c18b7b3f6e ice40: Reworking placement legalisation to allow integration with SA placer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-29 12:02:34 +02:00
Miodrag Milanovic 2037fff742 remove emb.cc 2018-06-28 17:57:26 +02:00
David Shah 92ddc31003 Improving debugability
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-27 15:08:37 +02:00
David Shah b0b16a344a Improving post-ripup placement in the legaliser
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-27 12:18:52 +02:00
David Shah 87a5b72126 Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr 2018-06-27 12:00:37 +02:00
David Shah 2cc7ade05b Refactor common placement functions out of SA placer for use in legaliser
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-27 12:00:13 +02:00
Miodrag Milanovic bafb4702c7 reinit python tab 2018-06-27 11:45:19 +02:00
Miodrag Milanovic 0bd73c1977 Make GUI use recreated context 2018-06-26 15:47:43 +02:00
David Shah 6f12f2b7e8 Working on debugging the carry legaliser
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-26 15:06:59 +02:00
David Shah 962c566ffb Fixing Python bindings bugs
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-26 14:21:54 +02:00
David Shah 103dde79de Fixing Python bindings after adding unique_ptr
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-26 14:13:52 +02:00
Miodrag Milanovic db890d3a81 nets and cells are unique_ptr's 2018-06-25 21:33:48 +02:00
David Shah 6d154cfa13 ice40: Creating a carry chain splitter function
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-25 15:39:46 +02:00
Miodrag Milanovic fb5fb497b5 Fix some memory leaks 2018-06-25 14:34:08 +02:00
David Shah bdd54a6847 Refactor: remove PlacementValidityChecker and move methods to Arch
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-25 11:43:59 +02:00
David Shah 37bad1f99e Fixing the Python bindings following Context/Arch refactoring
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-23 19:51:22 +02:00
Clifford Wolf 0ccd9febeb Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr 2018-06-23 16:14:39 +02:00
David Shah 1e8840b0f9 Update from increased clangformat line length
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-23 16:12:52 +02:00
Miodrag Milanovic 4b78ae15df clangformat cleanup 2018-06-23 16:06:49 +02:00
Clifford Wolf a40d9dc514 Improve router ripup handling
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-23 15:58:24 +02:00
Clifford Wolf a1681560a3 Updates from clangformat
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-23 15:28:09 +02:00
Clifford Wolf b5efe3ecbc Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr 2018-06-23 15:16:37 +02:00
Clifford Wolf 746d63f9fa Refactoring bind/unbind API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-23 15:16:24 +02:00
Miodrag Milanovic 550866620a removed all deprecated unused api calls 2018-06-23 15:01:49 +02:00
Miodrag Milanovic 82ec1be31f Added BUILD_GUI, BUILD_PYTHON and BUILD_TESTS cmake options, 2018-06-23 14:32:49 +02:00
David Shah d72fe0c230 place_sa: Add option to disable timing-driven placement
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-23 12:18:44 +02:00
Miodrag Milanovic 6f4e49bb47 cleaned some warnings 2018-06-23 08:01:36 +02:00
Clifford Wolf aa81f9d648 Switched from clifford@clifford.at to clifford@symbioticeda.com for copyright headers
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-22 16:19:17 +02:00
Clifford Wolf 001c6ceb56 Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr 2018-06-22 15:38:17 +02:00
David Shah f86a0d6c8c place_sa: Tweak weighting given to timing
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-22 15:17:00 +02:00
David Shah d7939f96e6 place_sa: Fix temp printing
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-22 15:03:33 +02:00
David Shah ce4ad44fd1 Print quasi-TNS statistic during placement
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-22 14:58:27 +02:00
David Shah 63baa10032 ice40: Make the packer deterministic
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-22 12:57:22 +02:00
David Shah 71176ac538 Fixing 5k bitstream gen and place heuristics
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-22 12:34:42 +02:00
Clifford Wolf 9b98a7175b Add total visit counts to router log output
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-21 20:41:20 +02:00
Clifford Wolf 2c98231f88 Updates from clangformat
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-21 19:36:20 +02:00
Clifford Wolf bfae4663fc Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr
# Conflicts:
#	common/route.cc
2018-06-21 19:31:50 +02:00
Clifford Wolf 38dc1cc550 Work "overtime" to find better solutions in routing search algorithm
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-21 19:17:04 +02:00
Miodrag Milanovic 8fac26c2b7 Fixed return codes for packer, placer and router 2018-06-21 17:56:45 +02:00
Miodrag Milanovic 54549d36e9 log_error now trows exception, main is covering catch 2018-06-21 17:44:18 +02:00
Clifford Wolf fcfb85e9dc Zero-initialize PortRef budgets
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-21 16:25:25 +02:00
Clifford Wolf 4fefdbd57c Cleanup parse_json_file API, some other cleanups
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-21 16:16:58 +02:00
Clifford Wolf a29bfc788e Add ctx->checksum(), slightly improve log messages
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-21 15:47:41 +02:00
Clifford Wolf 477c33efba Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr 2018-06-21 14:27:50 +02:00
Clifford Wolf 08020400b3 Fix build of "dummy" architexture
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-21 14:16:07 +02:00
Clifford Wolf 993f6ef7d3 Improve log messages, move many messages to verbose mode
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-21 14:09:50 +02:00
Clifford Wolf 693c34ad06 Improvements in router
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-21 14:08:45 +02:00
Miodrag Milanovic 9c03909eba Make arch specific main window 2018-06-21 13:41:33 +02:00
David Shah 56ed679f83 Add frequency setting and fix slack calculation
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-21 11:59:20 +02:00
David Shah 9e28e45bd5 place_sa: Make the heuristic closer to arachne, seems to improve routability
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-21 11:45:58 +02:00
David Shah e526a4115b place_sa: Use int64_t for "wirelength" metric
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-21 10:45:18 +02:00
David Shah 1df8a8b440 place_sa: Reduce effect of rounding errors
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-20 20:25:48 +02:00
David Shah 93ed8ca405 Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr 2018-06-20 20:14:08 +02:00
David Shah c27c96f4f0 place_sa: Improvements including supporting force and ordering consistency
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-20 20:12:23 +02:00
Clifford Wolf f2ae9a713b Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr 2018-06-20 19:37:16 +02:00
Clifford Wolf 9475997a2d Improve --tmfuzz mode and iCE40 delay estimator
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-20 19:22:03 +02:00
David Shah c515e5da2d Improving placement timing heuristic
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-20 17:54:07 +02:00
David Shah 4fc9625040 WIP: adding timing budget to placer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-20 17:08:57 +02:00
David Shah e45508f6c4 Improving timing annotator
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-20 15:15:51 +02:00
Clifford Wolf 2da90889ef Add "nextpnr-ice40 --tmfuzz"
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-20 14:04:10 +02:00
Clifford Wolf 3fda636e70 Minor refactoring of router infrastructure
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-20 13:32:50 +02:00
David Shah c667f640d5 Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr 2018-06-20 13:01:30 +02:00
David Shah 4648d3bc83 Working on the timing annotator
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-20 13:01:22 +02:00
Clifford Wolf 37f7802c6c Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr 2018-06-20 12:58:08 +02:00
Clifford Wolf 7c3593ea5a Updates from clangformat
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-20 12:57:59 +02:00
Clifford Wolf cb9c6c6ef2 Changes to estimatePosition API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-20 12:57:38 +02:00
Clifford Wolf c3837027b2 Add better iCE40 delay estimates
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-20 12:50:38 +02:00
David Shah 5ca4663294 Working on the timing budget annnotator
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-20 12:21:56 +02:00
David Shah 2a41211ce1 Another stub delay calculation function
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-20 11:53:49 +02:00
David Shah 1436ae21a2 Adding stubs for delay annotation and cell timing lookup
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-20 11:44:28 +02:00
David Shah 5d1b87b0a4 place_sa: Set placement strengths
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-20 11:19:25 +02:00
Clifford Wolf a06d2aeb4d Add PlaceStrength
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-20 11:09:49 +02:00
David Shah 1b3432b701 place_sa: Refactor to put SA placer in its own class
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-20 10:46:14 +02:00
Clifford Wolf 5af5bd23d0 Add Context::sorted_shuffle API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-19 16:23:23 +02:00
Clifford Wolf 3bf68753bb Improve "initial placement" log messages in placer_sa
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-19 15:44:44 +02:00
David Shah 7e7aea2c69 place_sa: Add log output during initial placement
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-19 15:34:07 +02:00
Miodrag Milanovic b5c1b09079 Small gui improvements and open json functionality 2018-06-19 15:17:34 +02:00
Clifford Wolf 3a505638a6 Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr
# Conflicts:
#	common/place_sa.cc
#	ice40/arch.h
2018-06-19 15:03:54 +02:00
Clifford Wolf d7f424b809 Improved log messages in SA placer, minor changes from clangformat
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-19 15:00:24 +02:00
David Shah 9008669867 Major performance improvement to placement validity check
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-19 14:44:49 +02:00
Clifford Wolf 2603c6d805 Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr 2018-06-19 14:34:45 +02:00
David Shah 786bd6b25a place_sa: Use context-wide rng
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-19 14:31:49 +02:00
Clifford Wolf fd40d6f58d Updates from clangformat
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-19 14:10:42 +02:00
Clifford Wolf 5f37da9704 Add Context::force and "nextpnr-ice40 --force"
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-19 14:10:42 +02:00
Clifford Wolf d2ff5fec08 Add rng to Context, start using ctx->verbose
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-19 12:49:40 +02:00
Clifford Wolf c910846c5c Refactor Arch/Context design hierarchy
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-19 12:08:37 +02:00
Clifford Wolf 79d1075345 Getting rid of old IdString API users, Add ctx to many internal APIs
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-18 17:08:35 +02:00
Clifford Wolf 58dfdfa9c8 Getting rid of users of old IdString API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-18 16:32:19 +02:00
Clifford Wolf 7ef4d0726b Getting rid of users of old IdString API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-18 16:08:19 +02:00
Clifford Wolf 0dd185a141 Getting rid of users of old IdString API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-18 15:53:18 +02:00
Clifford Wolf 71d07fd0bf Updates from clangformat
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-18 14:57:38 +02:00
Clifford Wolf 3d7444ba9b Deprecate old IdString API with implizit global context
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-18 14:56:14 +02:00
Clifford Wolf babd5f39ab Towards IdString as per-context facility
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-18 14:53:01 +02:00
Clifford Wolf 3fe353ea03 Fixed include of "design.h" in "route.h"
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-18 14:20:37 +02:00
Clifford Wolf ce2a9f2af1 Move contents of design.h to nextpnr.h
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-18 14:18:56 +02:00
Clifford Wolf cbcd2ea3ac Rename chip.h to arch.h
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-18 14:12:39 +02:00
Clifford Wolf 8ee149f4fc Rename Design to Context, derive from Arch instead of instantiating
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-18 14:06:37 +02:00
Clifford Wolf ad18cdb087 Rename Chip to Arch and ChipArgs to ArchArgs
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-18 13:35:25 +02:00
Clifford Wolf 2f5e9542c2 Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr 2018-06-18 13:13:51 +02:00
David Shah ef2d0d2cb9 Fix hash specialisation for BelType and warnings in place_sa.cc
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-18 12:20:06 +02:00
Clifford Wolf e0aa5c969e Improvements in router
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-18 11:58:37 +02:00
David Shah fc7490370b Improving code style and fixing dummy
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-18 11:43:59 +02:00
Clifford Wolf b728cb71d1 Improve router log output
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-17 19:43:07 +02:00
Clifford Wolf 3cfd6841dc Improve router log messages
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-17 19:27:48 +02:00
David Shah 2f9810a346 Speed up placer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 16:18:59 +02:00
David Shah f66999a883 Minor performance tweaks and fixes
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 16:03:16 +02:00
David Shah 748171dae2 place_sa: Adding seed option
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 15:04:53 +02:00
David Shah 681c9654d7 place_sa: Add a rip-up feature when initial placement fails
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 14:36:19 +02:00
David Shah 153b800f6a place_sa: Make placement independant of unordered_map ordering
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 13:24:42 +02:00
David Shah 1b077320dc General reformatting
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 12:53:39 +02:00
David Shah 6a937e0b45 Updating copyrights
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 11:49:57 +02:00
David Shah 3afce5ff5a Improving the placer output
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 11:45:41 +02:00
David Shah c604426341 place_sa: Ignore Bels locked by manual placement for SA swaps
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 11:33:31 +02:00
David Shah f9bfccf68e Add 'get or default' functions
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 11:14:49 +02:00
David Shah e95f38e88e place_sa: Run a validity check at the end of placement
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 10:55:19 +02:00
David Shah 0df9a11b1f Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr 2018-06-16 18:45:56 +02:00
David Shah e497575c8e place: Fix placer validity checks
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 18:45:48 +02:00
ZipCPU 218c4cd740 Renamed place.h to place_sa.h in place_sa.cc
Signed-off-by: ZipCPU <dgisselq@ieee.org>
2018-06-16 12:09:51 -04:00
ZipCPU 41156d188e Changed place.h place_sa.h 2018-06-16 12:03:25 -04:00
ZipCPU 6d68af1e62 Renamed placer to Simulated-Annealing placer 2018-06-16 11:59:42 -04:00
David Shah bb92dc09a8 ice40: Promote reset signal
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 17:09:41 +02:00
David Shah c4241db117 Tweaking placer and router
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 16:54:57 +02:00
Clifford Wolf ad0df6cea8 Update placer for new Chip API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-16 15:38:26 +02:00
Clifford Wolf 4d14bc2914 Merge remote-tracking branch 'origin/master' into chipdbng 2018-06-16 15:25:03 +02:00
Clifford Wolf 6acf23cf37 Some refactoring of Chip API (prep for chipdb refactoring)
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-16 15:23:04 +02:00
David Shah ef2164708b router: Fixing loop issue
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:49:38 +02:00
David Shah c0a2627179 place: Tidying up the SA placer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah 71903e29d4 place: Reformat placer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah 2479b4ecbf Improve placement heuristic
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
Clifford Wolf 579455d1b0 Fix router for routing to the same dest wire twice
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-16 14:44:10 +02:00
David Shah 432fe52274 Remove dead code
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah 47566cf5e9 Improving SA placer performance
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah 2d993d8ee9 Very slow SA placer based on arachne-pnr
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah 32dcf6b3fe Experimenting with more unplacing
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah 104c2dad9b Adding randomness and changes metrics to placer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah 828c96f80b Updating placer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah 2f01ec5157 Update basic placer to use new API
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah 3ef45d2a27 Another heuristic experiment
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah b1e08fa064 Playing about with placement heuristics
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah 6b74d326d4 experiment: Simple heuristic-based placer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
Clifford Wolf 5d343a168b Fix router for routing to the same dest wire twice
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-15 20:56:40 +02:00
Clifford Wolf 8c46cc2fce Add output of estimated total wire delay to router (as metric for placement quality)
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-14 19:13:14 +02:00
Clifford Wolf 66ced800d7 Increase ripup penalties over time
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-14 15:45:47 +02:00
Clifford Wolf 312699e590 Add route-ripup routing loop
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-14 15:09:13 +02:00
Clifford Wolf 7787ce5fd9 Refactor position/delay estimation API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-14 12:43:00 +02:00
David Shah b1cbae1293 python: Clear SIGINT handler after Python loads
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-14 10:08:54 +02:00
Clifford Wolf 9b3af68e44 Improve router error reporting
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-13 18:28:02 +02:00
Clifford Wolf 3d5954f997 Improve router error messages
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-13 18:10:09 +02:00
Clifford Wolf 794fc6df60 Add support for CellInfo->pins in router
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-13 17:52:18 +02:00
Clifford Wolf 9eb4943bd5 Fix router error handling for unplaced cells
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-13 17:26:03 +02:00
Clifford Wolf aa4fedfd54 Add A*-like optimizations to router
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-13 16:52:21 +02:00
David Shah a76f5c5678 Remove IO buffers when fed by SB_IO
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-13 10:50:05 +02:00
Miodrag Milanovic 9953012154 reveresed logic for enabling main file, and made tests link arch files 2018-06-12 19:56:03 +02:00
David Shah 330d393c59 Fixing regression due to IDStrings
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-12 16:04:02 +02:00
Clifford Wolf da33da5bc2 Minor clangformat changes
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-12 15:52:38 +02:00
Clifford Wolf 136ce3d18f Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr 2018-06-12 15:51:51 +02:00
Clifford Wolf 9c275d0a65 Add fast IdString <-> PortPin conversion
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-12 15:50:33 +02:00
David Shah b77a03d195 Minimal Python bindings for IdString
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-12 15:48:22 +02:00
Clifford Wolf 7e879953d6 Add proper fast IdString
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-12 15:37:28 +02:00
David Shah 6707b985b4 ice40: Add support for LC placement constraints in packer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-12 15:13:50 +02:00
Clifford Wolf a139654980 Add IdString API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-12 15:08:01 +02:00
Clifford Wolf d62e341d5a Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr 2018-06-12 14:25:12 +02:00
Clifford Wolf 391d49c13e Add nextpnr namespace
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-12 14:24:59 +02:00
David Shah 47eeda40bc Implement the placement validity checker
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-12 13:45:59 +02:00
David Shah 2f61a9b98a ice40: Start working on a packer, currently not tested
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-12 12:13:11 +02:00
David Shah 5f813410aa ice40: Adding cell utilities for packing
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-12 11:49:54 +02:00
David Shah 3ce32b6b1d Adding some utilities for packing
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-12 11:02:07 +02:00
Clifford Wolf be73894bea Add "nextpnr.h"
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-11 20:12:57 +02:00
Clifford Wolf ac67482380 Remove pool, dict, vector namespace aliases
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-11 19:56:33 +02:00
Clifford Wolf 70f322ab44 Renamed LOC attribute to BEL, fix ice40 IO bel names
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-09 19:52:22 +02:00
David Shah 72f5e640af Adding basic placement constraints
Specify the attribute (* LOC="bel_name" *) on any cell to constrain its
placement to that bel.

Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-09 19:38:37 +02:00
Clifford Wolf dfbfbf87db Add very basic router
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-09 18:19:20 +02:00
Clifford Wolf 208d378322 Remove writing on sell types to cout (left over debug output?)
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-09 15:20:13 +02:00
David Shah 57cd67dbc1 Improving the Python bindings, particularly the map/pair wrappers
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-08 15:53:24 +02:00
David Shah c16a971c0f python: Fixing builds as importable module
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-08 11:17:04 +02:00
David Shah 7f330af9f3 Reformat remaining files
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-08 11:04:02 +02:00
ZipCPU 4499864024 Applied clang-format to my own contributions 2018-06-07 15:38:24 -04:00
ZipCPU a4f687548e Adjusted info message names for rule-checker and parser 2018-06-07 12:04:01 -04:00
Clifford Wolf 37d2fc65b1 Fix placer build for dummy arch
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-07 17:50:36 +02:00
ZipCPU c352f6536b Moved placer definitions to place.h, main automatically runs placer now 2018-06-07 09:49:21 -04:00
ZipCPU f32b9622d5 Initial (random) placer capability
This commit also includes changes to jsonparse to allow it to
1) recognize ports with no connection, and set their net pointers to NULL
2) recognize designs with a ports node rather than a ports_direction

The rule checker has also been modified to accommodate possible NULL netlists

The ice40 chip now also has iterator operations ++bi and bi++.
2018-06-07 09:38:14 -04:00
ZipCPU 1ed5c641c1 Merge branch 'master' into gqtech 2018-06-07 07:45:22 -04:00
David Shah ed0c44891f Replacing Boost type_traits with std
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-07 13:36:42 +02:00
David Shah c3e0252703 Reformat Python bindings and ice40 main
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-07 13:10:53 +02:00
David Shah 9ebc879826 Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr 2018-06-07 12:59:41 +02:00
David Shah b0e66d441c Global design object working
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-07 12:57:52 +02:00
Clifford Wolf 1ea8fa4881 clang-format for design and chip codebase
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-07 12:56:49 +02:00
Clifford Wolf 2edde06c07 Fix clang-format include order issues
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-07 12:48:53 +02:00
David Shah a5249da02d Working on global Python design object
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-07 12:40:31 +02:00
David Shah e576f71838 Developing Python bindings for Design and related types 2018-06-07 11:41:54 +02:00
David Shah 3769b20580 Adding Python to/from string wrappers for internal IDs 2018-06-07 09:47:00 +02:00
David Shah bdd9313582 Allow loading and running Python files before GUI starts
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-07 08:56:54 +02:00
ZipCPU 109287ee90 Removed unused set of warnings from log.cc 2018-06-06 17:17:44 -04:00
David Shah 3a6e400f44 rulecheck.cc: Add missing return
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-06 21:14:42 +02:00
ZipCPU 16b9a2f1b5 Attempt to add JSON parser--not working yet w/ build system 2018-06-06 14:44:54 -04:00
ZipCPU 5e463b8543 Merge branch 'master' into gqtech 2018-06-06 12:21:04 -04:00
ZipCPU 468ed85280 Applied Rule Check to parser results, refactored JSON parser 2018-06-06 12:20:24 -04:00
Clifford Wolf 5ff9aafb20 Refactor Chip API and iCE40 database
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-06 15:13:41 +02:00
ZipCPU d0ee08aeb1 Merge branch 'master' into gqtech 2018-06-06 07:55:18 -04:00
ZipCPU 2e6d0b752a Removed erroneous BEL assignment in JSON parser 2018-06-06 07:49:35 -04:00
Miodrag Milanovic 7cb42f4368 Initial GUI work 2018-06-05 21:03:06 +02:00
ZipCPU bd08f9e698 Removed the log_ dependencies from json-parser 2018-06-05 11:39:27 -04:00
ZipCPU 8b6f8382b8 Added some logging functions, borrowed from Yosys 2018-06-05 11:15:35 -04:00
ZipCPU 709ce3884d Initial JSON parser 2018-06-05 09:01:26 -04:00
David Shah 3b78eda5d3 Add 'styles' to GraphicElement
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-04 13:30:20 +02:00
Clifford Wolf eb3c89bee9 Replace GuiLine with GraphicElement
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-04 12:02:58 +02:00
David Shah 363ddd0f3c Python bindings working on both architectures
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-02 13:48:28 +02:00
David Shah d3f74eb056 Simple Python test working
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-02 13:48:28 +02:00
David Shah f353453a7f Add architecture specific Python defs
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-02 13:48:28 +02:00
David Shah a7415bfbc3 Adding generic Python range and iterator bindings
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-02 13:48:28 +02:00
David Shah d62f7abd95 Creating an empty Python module
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-02 13:48:28 +02:00
Clifford Wolf 3b0d1beabb Add DelayInfo struct
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-05-29 20:04:29 +02:00
Clifford Wolf 1338f0f9eb Add Makefile
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-05-26 11:17:50 +02:00
Clifford Wolf 5e48758b30 Directory structure
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-05-26 10:47:35 +02:00