Clifford Wolf
62b66e0208
Rename getWireBelPin to getBelPinWire
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-22 10:59:21 +02:00
Clifford Wolf
1e96999863
clangformat
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-22 00:50:49 +02:00
Eddie Hung
926c186ec7
Add Arch::getBudgetOverride() to eliminate hack for COUT
2018-07-21 13:05: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
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
Miodrag Milanovic
f438fc615b
Added driver and users for nets
2018-07-21 20:21:48 +02:00
Clifford Wolf
39b843ecac
Merge branch 'router1ng' into 'master'
...
Router1ng
See merge request SymbioticEDA/nextpnr!13
2018-07-21 17:59:44 +00:00
Miodrag Milanovic
3175891cb5
Map ports to nets
2018-07-21 19:48:00 +02:00
Miodrag Milanovic
57c63e6921
create io cells out of asc
2018-07-21 17:54:35 +02:00
Miodrag Milanovic
912a79dc33
add cells that are in default state or no configuration
2018-07-21 17:38:22 +02:00
Miodrag Milanovic
7beb4739d4
Add used cells and attach them to bels
2018-07-21 17:04: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
Miodrag Milanovic
13339c0355
Assign proper pips
2018-07-21 15:08:49 +02:00
Miodrag Milanovic
3afcd812c9
add only missing net
2018-07-21 14:41:04 +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
Miodrag Milanovic
09a68affa3
Fix warnings and status
2018-07-21 12:22:41 +02:00
Miodrag Milanovic
fe239366b5
Made save project work as well
2018-07-21 12:15:50 +02:00
Miodrag Milanovic
20941292ad
fix introduced bug
2018-07-21 09:22:09 +02:00
Sergiusz Bazanski
be14e161ae
Re-enable drawing Pips.
2018-07-20 18:35:42 +01:00
Sergiusz Bazanski
5d0dbe9db9
clang-format
2018-07-20 18:24:34 +01:00
Sergiusz Bazanski
76e5236fb3
Nuke IdStringDB
2018-07-20 18:24:16 +01:00
Miodrag Milanovic
34ec70e88b
Bind wires to net
2018-07-20 18:42:27 +02: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
Miodrag Milanovic
6c835d76f2
Few more checks on parameters and error eol
2018-07-20 14:06:53 +02:00
Miodrag Milanovic
53034959f3
Start adding bitstream reading for ice40
2018-07-20 13:27:21 +02: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
3bad9c26cf
ice40: Optimise reset/enable net checking
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-20 11:36:32 +02:00
David Shah
79dc910b40
ice40: Trim DSP inputs that are constant where appropriate
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-19 14:32:30 +02:00
David Shah
bff7d673ed
ice40: Packer and bitstream gen support for MAC16s
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-19 14:03:48 +02: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
0cb9ec0757
ice40: Add virtual padin wires for intoscs and GB_IOs
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-19 12:04:35 +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
David Shah
b0d9b994eb
ice40: Adding data for extra cell configuration
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-19 11:14:43 +02:00
David Shah
08ceb8a059
ice40: Renaming
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-18 14:34:32 +02:00
David Shah
ddd94edfe0
ice40: Fixes for inverted clocks
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-18 14:01:19 +02:00
Clifford Wolf
acdaec249a
Cleanups in iCE40 blinky and picorv32 tests
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-18 13:46:00 +02:00
David Shah
d392b5f635
ice40: Use xArchArgs in validity check
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-18 12:51:07 +02:00
David Shah
70cfa7a6a4
ice40: Make assignArchArgs a Arch method; call also after legaliser
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-18 12:21:02 +02:00
David Shah
c75a924c3f
ice40: Assign ArchArgs after packing
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-18 12:12:05 +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
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
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
f3c6c76fff
Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr into q3k/lock-2-electric-boogaloo
2018-07-15 21:57:42 +01:00
Clifford Wolf
5531546d6b
Remove pip names from ice40 chip db to safe memory
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-15 21:41:34 +02:00
Clifford Wolf
164bd28348
Add iCE40 Pip gfx
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-15 20:29:32 +02: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
eafb9b4281
Fix revert issues.
2018-07-14 19:02:52 +01:00
Sergiusz Bazanski
d327a0afbb
Revert "Make ice40::Arch thread-safe"
...
This reverts commit 0816f447b7
.
2018-07-14 19:01:33 +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
09ca9ea39e
Revert "Comment arch.h"
...
This reverts commit dc3256e62f
.
2018-07-14 18:50:58 +01:00
Sergiusz Bazanski
89b9d6bc8a
Revert "Slight simplification of proxy code"
...
This reverts commit a71b576de6
.
2018-07-14 18:50:54 +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
d4a0feb1ad
Revert "Add read/mutate context stubs for ECP5"
...
This reverts commit f333a68753
.
2018-07-14 18:50:29 +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
2233040201
Revert "Remove legacy access to state via Arch"
...
This reverts commit 18b4b31678
.
2018-07-14 18:50:15 +01:00
Sergiusz Bazanski
339198b394
Revert "Remove unimplemented pybindings (for now)"
...
This reverts commit 53393b993f
.
2018-07-14 18:50:07 +01:00
Sergiusz Bazanski
9c013ce74c
Revert "Undo accidental picorv32.sh commit"
...
This reverts commit 98c5948856
.
2018-07-14 18:50:01 +01:00
Sergiusz Bazanski
98c5948856
Undo accidental picorv32.sh commit
2018-07-14 12:14:30 +01:00
Sergiusz Bazanski
53393b993f
Remove unimplemented pybindings (for now)
...
We need to re-jigger the template magic in common/pywrappers.h to be
proxy context aware.
2018-07-14 12:11:20 +01:00
Sergiusz Bazanski
18b4b31678
Remove legacy access to state via Arch
2018-07-14 12:02:28 +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
f333a68753
Add read/mutate context stubs for ECP5
2018-07-14 11:25:38 +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
a71b576de6
Slight simplification of proxy code
2018-07-13 19:45:35 +01:00
Sergiusz Bazanski
dc3256e62f
Comment arch.h
2018-07-13 19:22:39 +01:00
Sergiusz Bazanski
b8ca1a5582
Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr into q3k/lock-the-things
2018-07-13 19:10:27 +01:00
Sergiusz Bazanski
89809a8b81
Introduce proxies for locked access to ctx
2018-07-13 18:58:59 +01:00
Clifford Wolf
013cfebcc5
Improve handling of iCE40 BRAM bels
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-13 16:22:28 +02:00
Clifford Wolf
0f736f551c
Fix iCE40 wire gfx decals
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-13 16:15:15 +02:00
Sergiusz Bazanski
9e4f97290a
Make PnR use Unlocked methods
2018-07-13 14:50:58 +01:00
Clifford Wolf
44663fa589
Fix ice40 gfx wire indices
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-13 15:44:39 +02:00
Clifford Wolf
c05bea12e0
Add ctx->pack() API
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-13 15:16:44 +02:00
Clifford Wolf
45462ef3a7
Fix Ui/Decal handling of active/inactive arch objects
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-13 14:29:03 +02:00
Sergiusz Bazanski
0816f447b7
Make ice40::Arch thread-safe
...
We move all non-chip data to be private and guard them with an R/W
mutex.
We then modify all calls that access these fields to lock/shared_lock
the mutex as required.
Profiling the code before and after is an exercise left to the reader
:).
2018-07-13 12:35:39 +01:00
David Shah
e9668ed618
Fixing hash link problem
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-13 12:42:04 +02:00
Miodrag Milanovic
b5498c8a53
Fixed initial title and actions after new
2018-07-13 12:02:49 +02:00
Miodrag Milanovic
8e54ac1542
Use command line parameters settings for GUI as well.
2018-07-13 09:14:48 +02: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
ad60ab2ef1
Fix ice40 wire segments in lutff complex
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-12 21:46:16 +02:00
Clifford Wolf
4f87ea0eb6
Improve iCE40 wire database and gfx
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-12 21:05:09 +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
33e592e55e
Add missing wires to ice40 gfx
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-11 19:02:30 +02:00
Clifford Wolf
6ffae27aa1
Deterministic chipdb blobs
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-11 18:36:15 +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
e9b27860da
Unflip iCE40 tile graphics
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-11 17:40:02 +02:00
Clifford Wolf
2a01b5e4d3
New refreshUi API
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-11 17:02:13 +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
c4af52dd5b
ecp5: Working on arch implementation
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:41:36 +02:00
Clifford Wolf
87d88048ac
Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr into ice40gfx
2018-07-10 15:11:35 +02:00
Clifford Wolf
841714a3d6
Improve ic40 gfx
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-10 15:09:11 +02:00
Miodrag Milanovic
bfc47e9cd4
Added ICE40_HX1K_ONLY check in gui and main
2018-07-10 13:58:20 +02:00
Clifford Wolf
46d28551fc
Add ice40 LC output gfx
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-09 17:13:26 +02:00
David Shah
132c5b5019
Make logic cell positioning a constant
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-09 17:00:54 +02:00
David Shah
b5cf1c8257
Adding all LUT input wires
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-09 16:52:03 +02:00
David Shah
c921e4f24b
Add constants for switchbox locations
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-09 16:50:01 +02:00
David Shah
c6043ed570
Reorder gfx.h, add LUT0 inputs
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-09 16:42:30 +02:00
Clifford Wolf
ba6f3b45b8
Add ice40 gfx right vertical span-4
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-09 16:39:18 +02:00
Clifford Wolf
4576fc7c20
Vertical wires and span-12 wires
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-09 16:12:41 +02:00
David Shah
5b6fa934d8
Make LCs smaller and move them down
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-09 16:07:16 +02:00
David Shah
953560ae17
Add switchboxes
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-09 16:02:02 +02:00
Clifford Wolf
6198a68968
Add horizontal ice40 span4 wire gfx
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-09 15:45:01 +02:00
David Shah
1f36242d43
Add lutff_global switchbox
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-09 15:09:17 +02:00
Clifford Wolf
3be10f629a
Add ice40 wire gfx enums
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-09 15:05:44 +02:00
David Shah
a1cd9fcf73
Reduce line width, adding some switchboxes
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-09 14:53:20 +02:00
Miodrag Milanovic
4c06b9be1d
Python executable filename could be different
2018-07-08 19:27:42 +02:00
Miodrag Milanovic
9704ebd079
Added selection of chip and pacakge on new projet in GUI
2018-07-07 13:23:45 +02:00
Miodrag Milanovic
fcff203c23
typeof to decltype
2018-07-05 10:13:29 +02:00
David Shah
726f2020f1
python: Convert empty BelId to None
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-04 15:26:09 +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
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
4376ae43af
ice40: Near-complete Arch bindngs
...
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
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
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
Miodrag Milanovic
b96727549c
Building using MSVC works
2018-07-04 12:08:16 +02:00
Miodrag Milanovic
fd3c124f87
Add opetion to defie ICEBOX_ROOT, fix compile on other location
2018-07-03 20:46:05 +02:00
Miodrag Milanovic
1a8b4591f5
added parameter to call
2018-07-03 20:17:20 +02:00
Miodrag Milanovic
ec9a9de6d3
Make chibdb.py able to generate pure binary output
2018-07-03 20:14:49 +02:00
David Shah
5ca76461da
ice40: Improving routeability of carries
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-03 14:47:41 +02:00
David Shah
59b2091f77
ice40: Another carry timing fix
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-03 14:04:32 +02:00
David Shah
9c4feb32a4
ice40: Fix carry timing paths
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-03 13:45:42 +02:00
Miodrag Milanovic
1cf8293019
Fixed macros and includes for MSVC
2018-07-03 08:53:44 +02:00
Clifford Wolf
172ceef377
Improve blinky testbench, double blink frequency
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-30 08:00:51 +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
3b90f3698f
ice40: Fix carry packing in some degenerate cases
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-29 15:10:29 +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
960c650478
clangformat cleanup
2018-06-28 18:06:31 +02:00
David Shah
66670831b8
ice40: PLace legaliser produces a design that is at least routable for picosoc
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-28 16:31:52 +02:00
David Shah
27a9850921
Debugging carry legalisation
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-28 15:48:57 +02:00
David Shah
c0724a7e97
ice40: Only pack up to one SB_CARRY into a LC
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-27 16:24:44 +02:00
David Shah
28e851cf45
ice40: Fix IO packer
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-27 16:16:38 +02:00
David Shah
885fe93a17
ice40: Carry packer bugfix
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-27 15:24:34 +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
998ab2b20a
ice40: Fixing the carry packer for a larger design
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-27 12:43:29 +02:00
David Shah
53ce81343a
ice40: Add timing paths for carry
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-27 12:23:12 +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
Miodrag Milanovic
bafb4702c7
reinit python tab
2018-06-27 11:45:19 +02:00
David Shah
09c0d96105
ice40: Fixing packing of CIN constant drivers
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-26 20:02:19 +02:00
David Shah
67d4720989
ice40: Fixing carry chain legaliser
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-26 16:23:10 +02:00
David Shah
841d126672
CarryInSet added to bitstream gen, add counter tb
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-26 16:04:10 +02:00
David Shah
95de0a36b4
Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr
2018-06-26 15:58:35 +02:00
David Shah
21d5a04501
Carry chains now routable
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-26 15:55:50 +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
29df577f14
Fixing packing of carry cells
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-26 14:37:01 +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
David Shah
ded9df61dc
Working on debugging carry packer
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-26 13:08:28 +02:00
Miodrag Milanovic
e51dd15b6b
clang fix
2018-06-26 12:11:15 +02:00
David Shah
0a176b4fde
ice40: Working on carry legalisation
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-26 12:01:11 +02:00
Miodrag Milanovic
ac197e0b9e
fix one more
2018-06-26 11:22:48 +02:00
Miodrag Milanovic
db890d3a81
nets and cells are unique_ptr's
2018-06-25 21:33:48 +02:00
David Shah
64208da1f9
ice40: Remove constant driver cells in packer
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-25 16:29:37 +02:00
Miodrag Milanovic
a279720fc1
merge
2018-06-25 16:22:08 +02:00
David Shah
bee6bc461d
ice40: Working on the placement legaliser
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-25 16:15:47 +02:00
Miodrag Milanovic
6de8b4ef7d
some more memory leaks
2018-06-25 15:52:55 +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
David Shah
8d9444b6f0
ice40: More preparations for carry legalisation
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-25 14:45:33 +02:00
David Shah
fd8017449d
ice40: Helper functions for placement legalisation
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-25 13:52:44 +02:00
David Shah
28d8f8b2cb
ice40: Start work on the placement legaliser
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-25 13:09:50 +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
Miodrag Milanovic
1acaf41277
added project saving and loading
2018-06-24 14:38:45 +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
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
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
David Shah
289fca0976
ice40: Move global net test to Arch
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-23 12:09:01 +02:00
David Shah
2e6916ecab
ice40: Fix UltraPlus quasi-logic-cell bits
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-23 11:25:32 +02:00
Miodrag Milanovic
cb92c10b99
Cleanup almost all deprecation warnings
2018-06-23 09:42:48 +02:00
Miodrag Milanovic
761e28ce67
one more
2018-06-23 08:08:42 +02:00
Clifford Wolf
0508fb3627
Fix "dereferencing type-punned pointer" warnings
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-22 20:19:29 +02:00
David Shah
8850f86a8a
ice40: SB_LFOSC support, fabric routing only
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-22 19:21:39 +02:00
David Shah
6a783ef94f
Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr
2018-06-22 18:35:18 +02:00
David Shah
60e885d342
ice40: Adding extra cell wires to database; SB_WARMBOOT working
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-22 18:35:08 +02:00
Serge Bazanski
5dfe1969af
Merge branch 'q3k/gl' into 'master'
...
Modern OpenGL renderer
See merge request SymbioticEDA/nextpnr!1
2018-06-22 16:17:21 +00:00
David Shah
7c169c48d0
ice40: Preparations for extra cells support
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-22 17:44:26 +02:00
Sergiusz Bazanski
15a7a76415
Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr into q3k/gl
2018-06-22 15:54:05 +01:00
Miodrag Milanovic
e5bd4764b2
Added custom QApplication implementation
2018-06-22 16:49:15 +02:00
David Shah
cf78f1b0e4
ice40: Add UltraPlus tiles to database
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-22 16:40:22 +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
Sergiusz Bazanski
858acc5c1c
Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr into q3k/gl
2018-06-22 14:29:28 +01:00
Sergiusz Bazanski
98b1f0c041
Reimplement FPGAWidget in modern OpenGL.
2018-06-22 14:27:04 +01:00
Miodrag Milanovic
7f36828270
fixed namespace for gui section
2018-06-22 13:10:43 +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
2c98231f88
Updates from clangformat
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-21 19:36:20 +02:00
Miodrag Milanovic
c33a039ac3
Added return code to json parsing and pcf reading
2018-06-21 18:08:28 +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
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
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
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
Sergiusz Bazanski
4e480a9a61
chipdb.py style fix
2018-06-20 20:28:48 +01: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
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
c4e544856a
Fix jsonparse compiler warnings, clangformat updates
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-20 13:40:13 +02:00
David Shah
d5a032d00e
Fix chipdb UltraPlus wires
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-20 13:10:40 +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
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
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
df4b4d48f7
ice40: Tidying up carry packer a bit
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-19 16:23:02 +02:00
David Shah
8e26e4381b
ice40: WIP SB_CARRY packer
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-19 16:16:10 +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
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
David Shah
a8071a418d
ice40: Improve error reporting for invalid tristate usage
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-19 14:10:28 +02:00
David Shah
ecc2c486d9
ice40: Fix constant packer
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-19 13:48:04 +02:00
David Shah
7abfd36773
ice40: Don't deduplicate local tracks when counting
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-19 13:35:01 +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