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
Clifford Wolf
8067ed9af0
Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr
2018-06-19 12:08:51 +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
David Shah
6f7070a365
ice40: More IdString API updates
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-19 11:21:16 +02:00
David Shah
e3519ddfcd
ice40: Adding support for tristate IO
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-19 11:12:18 +02:00
David Shah
ec2792764a
ice40: Removing deprecated API in cells.cc
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-19 10:50:23 +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
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
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
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
58e3104796
Updates from clangformat
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-18 14:07:18 +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
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
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
0b2345996d
Updates from clangformat
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-17 19:28:03 +02:00
Clifford Wolf
acfef6971e
Refactore ice40 chipdb to use a super-large C-string as output format
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-17 18:15:41 +02:00
Clifford Wolf
0af9156d7a
Minor chipdb.py improvement
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-17 16:28:05 +02:00
Clifford Wolf
4fe8ba5e9a
Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr into chipdbng
2018-06-17 16:14:58 +02:00
Clifford Wolf
105cde328b
Updates from clangformat
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-17 16:14:27 +02:00
Clifford Wolf
19b665177e
Move top-level ChipInfoPOD into ice40 chipdb blob
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-17 16:12:52 +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
Clifford Wolf
6f4af8387e
Move PackageInfoPOD to ice40 chipdb blob
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-17 15:53:17 +02:00
Clifford Wolf
5d46ff54ba
Move TileType array to ice40 chipdb blob
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-17 15:46:39 +02:00
Clifford Wolf
f38c5660cb
Move BitstreamInfoPOD to ice40 chipdb blob
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-17 15:39:19 +02:00
Clifford Wolf
a4ad3533fe
Move IerenInfoPOD to ice40 chipdb blob
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-17 15:25:58 +02:00
David Shah
f723aaa373
ice40: Fixing negative clock bitstream generation
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 15:21:35 +02:00
Clifford Wolf
246fe999dd
Move TileInfoPOD to chipdb blob
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-17 15:15:49 +02:00
Clifford Wolf
1f9c28ba58
Move SwitchInfoPOD to chipdb blob
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-17 15:05:17 +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
Clifford Wolf
a3e0842299
Move PipInfoPOD into ChipDB binary blob
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-17 14:46:10 +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
Clifford Wolf
c0a2f0b89f
Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr into chipdbng
2018-06-17 14:31:43 +02:00
Clifford Wolf
3b5c33d685
Move WireInfoPOD into ChipDB binary blob
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-17 14:30:26 +02:00
Clifford Wolf
84defd3fee
Minor refactoring of BinaryBlobAssembler, fix alignments
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-17 13:32:38 +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
12818fb694
ice40: Add symbol output to bitstream generation
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 12:38:21 +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
f9bfccf68e
Add 'get or default' functions
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 11:14:49 +02:00
David Shah
8ab0b06f5f
ice40: Fixing build
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 10:35:37 +02:00
Clifford Wolf
69e5bc5030
Progress with chipdb refactoring
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-16 19:25:37 +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
Clifford Wolf
ee06db3293
Progress with chipdb refactoring
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-16 18:42:29 +02:00
Clifford Wolf
f0edb625e3
Progress with chipdb refactoring
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-16 17:53:09 +02:00
David Shah
1e6124309f
ice40: Proper global promotion
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 17:44:35 +02:00
David Shah
bb92dc09a8
ice40: Promote reset signal
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 17:09:41 +02:00
Clifford Wolf
fe47e7fc2d
Update clangformat
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-16 15:25:33 +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
7ff1b7e02f
ice40: Fix RAM config in packer
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah
f079e0d204
ice40: Fix BRAM initialisation
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +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
c9a784ec0c
ice40: Include RAM init data in bitstream
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah
04f1d7516a
ice40: Fix bitstream generation when parameters are unspecified
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah
23b1fc02fb
ice40: Bitstream generation for RAM
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah
cabdfe3616
ice40: Only place IO at valid pins
...
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
David Shah
355d33632c
ice40: Another arch_place fix
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-14 21:52:01 +02:00
David Shah
66ea22bb5c
ice40: General fixes
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-14 21:12:15 +02:00