Commit Graph

2086 Commits

Author SHA1 Message Date
Miodrag Milanovic
44d6f16b66 Support ecp5 read write additional cell info 2019-06-03 21:01:05 +02:00
Miodrag Milanovic
82ed1803c7 use NEXTPNR_BEL, since BEL is initial placement 2019-06-02 18:38:20 +02:00
Miodrag Milanovic
7c65da417b Read constraints and placing from file 2019-06-02 17:33:37 +02:00
Miodrag Milanovic
1894cb549c preserve constraints 2019-06-02 16:46:07 +02:00
Miodrag Milanovic
d0273f7faa option to disable packing 2019-06-02 10:01:20 +02:00
Miodrag Milanovic
5c47b6034e added no-place and no-route options 2019-06-02 09:13:19 +02:00
Miodrag Milanovic
eff1a1341a Revert "Do not add VCC if not used, loading json works"
This reverts commit f1b3a14bc2.
2019-06-02 08:51:32 +02:00
Miodrag Milanovic
bab6c9a09f Proper save message 2019-06-02 08:50:48 +02:00
Miodrag Milanovic
d5d8213871 Added support for attributes/properties types 2019-06-01 15:52:32 +02:00
Miodrag Milanovic
ccbe2dd18d Add reading attributes to nets from json 2019-06-01 11:41:50 +02:00
Miodrag Milanovic
aa0568628f Add writing routing data to json 2019-06-01 11:41:34 +02:00
Miodrag Milanovic
5013724c0a Solve issue with nets/cells not visible on load 2019-06-01 10:27:01 +02:00
Miodrag Milanovic
f1b3a14bc2 Do not add VCC if not used, loading json works 2019-05-31 13:38:18 +02:00
Miodrag Milanovic
1657479c81 Solve some of connection issues 2019-05-31 11:50:49 +02:00
Miodrag Milanovic
545068dec4 Initial work on jsonwrite 2019-05-31 11:09:13 +02:00
David Shah
150004e393
Merge pull request #281 from whitequark/prefer-ports-as-netlabel
When choosing between labels for one net, always prefer ports
2019-05-29 21:35:15 +01:00
whitequark
a0c9a70a5e When choosing between labels for one net, always prefer ports.
1. Ports are already used in PCF and LPF files, so it is natural
that the developer would use them for constraints as well.

2. Unpredictable (the set of netlabels nextpnr looks at depends on
the optimizations during synthesis) net naming makes it impossible
for code generators like nMigen to reliably apply clock constraints.
2019-05-29 18:05:48 +00:00
Miodrag Milanovic
2ea1ccf2e6 Added explanation, fixes issue #278 2019-05-27 19:10:50 +02:00
Miodrag Milanović
68c16c2db7
Merge pull request #279 from YosysHQ/gui-no-aa
option to disable anti aliasing in gui
2019-05-25 10:41:35 -07:00
Miodrag Milanovic
9b8d3b7546 option to disable anti aliasing in gui 2019-05-25 08:42:17 +02:00
Miodrag Milanović
0d1c7118e3
Merge pull request #169 from ajeakins/master
Fix device view not showing anything on macOS.
2019-05-23 23:53:52 -07:00
David Shah
95f3d4cc6e
Merge pull request #277 from mbuesch/assert_catch_warning
gui: Fix warning: catching polymorphic type by value
2019-05-22 13:25:10 +01:00
Michael Buesch
3d4f1dc60b gui: Fix warning: catching polymorphic type by value
gui/application.cc: In member function ‘virtual bool nextpnr_ice40::Application::notify(QObject*, QEvent*)’:
gui/application.cc:56:32: warning: catching polymorphic type ‘class nextpnr_ice40::assertion_failure’ by value [-Wcatch-value=]
2019-05-20 22:17:45 +02:00
David Shah
c9ba65e7b2
Merge pull request #245 from twam/fix_osx
Use cmake's find_library to search for pytrellis.
2019-05-18 12:15:08 +01:00
David Shah
1b6a81a8cc
Merge pull request #274 from smunaut/ice40_hfosc_trim
ice40: Add support for HFOSC trimming
2019-05-13 12:58:15 +01:00
Sylvain Munaut
e17299a1ca ice40: Add support for HFOSC trimming
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2019-05-13 12:52:58 +02:00
Tobias Müller
ea91ea163e Use cmake's find_library to search for pytrellis. 2019-05-11 12:39:50 +02:00
David Shah
643d7dec4c
Merge pull request #273 from YosysHQ/ecp5_mclk
ecp5: Fix USRMCLK primitive
2019-05-10 21:09:43 +01:00
David Shah
12f375a239 ecp5: Fix USRMCLK primitive
Signed-off-by: David Shah <dave@ds0.me>
2019-05-10 18:51:45 +01:00
Adrian Jeakins
d00288198f Bring back check that GL contexts get the format requested. 2019-05-01 21:32:48 +01:00
David Shah
5344bc3b65
Merge pull request #261 from YosysHQ/pygeneric
Python API for generic architecture
2019-04-19 17:40:55 +01:00
David Shah
0be844e6a8
Merge pull request #270 from smunaut/sb_io_conflict
SB IO conflict checks
2019-04-17 16:18:40 +01:00
David Shah
e7bb262e96
Merge pull request #269 from smunaut/pll_gb_place
PLL GB usage and placement fix
2019-04-17 16:17:09 +01:00
Sylvain Munaut
66b64f928b ice40: Check for SB_IO shared wires conflicts in isValidBelForCell
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2019-04-17 16:07:22 +02:00
Sylvain Munaut
c4cb0c5e49 ice40: In assignCellInfo get PIN_TYPE/NEG_TRIGGER from params and not attrs
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2019-04-17 16:07:16 +02:00
David Shah
87a2446081 ci: Bump Yosys version for tcl argument support
Signed-off-by: David Shah <dave@ds0.me>
2019-04-17 13:27:37 +01:00
Sylvain Munaut
6387a3d33e ice40: Only create padin gbuf for PLLs if global output actually used
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2019-04-17 14:06:23 +02:00
David Shah
c33da42365 ci: Run generic example simple.sh
Signed-off-by: David Shah <dave@ds0.me>
2019-04-17 13:02:01 +01:00
David Shah
9fa13b5adc pybindings: make errors in Python scripts stop nextpnr execution
Signed-off-by: David Shah <dave@ds0.me>
2019-04-17 11:12:58 +01:00
David Shah
ede81dc095 generic: Disable GUI as it isn't supported yet
Signed-off-by: David Shah <dave@ds0.me>
2019-04-17 11:03:06 +01:00
David Shah
48c4c1ed05 generic/examples: Add FASM writer Python script
Signed-off-by: David Shah <dave@ds0.me>
2019-04-17 11:00:23 +01:00
David Shah
90ceb829f3 pybindings: Fix use of import in user scripts
Signed-off-by: David Shah <dave@ds0.me>
2019-04-17 10:57:19 +01:00
David Shah
037e13b883
Merge pull request #267 from noopwafel/lock-for-timing
timing_opt: Add locks to optimise()
2019-04-16 16:29:26 +01:00
Alyssa Milburn
c1cc356bb0 timing_opt: Add locks to optimise()
Signed-off-by: Alyssa Milburn <amilburn@zall.org>
2019-04-16 16:03:12 +02:00
Sylvain Munaut
9dd68aa0e2 ice40: Take placed SB_GBs into account when placing PLLs
Because the PLLs drive global networks, we need to account for
already existing and placed SB_GBs when trying to place/pack them.

Theses can be user instanciated SB_GBs with BEL attribute, or
SB_GB_IOs that got converted during the IO packing.

This patch assumes that:
 - If a PLL is used the output A global network is always used, even
   if there is no connection to the global output pin
 - If a PLL with a singe output is used, then the B output global
   network is still free to be used by whatever.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2019-04-16 10:12:28 +02:00
Eddie Hung
250c914763
Merge pull request #266 from xanderlent/patch-1
Fix ice40 example directory in README.md
2019-04-15 22:50:53 -07:00
Alexander Lent
003619e91c
Fix ice40 example directory in README.md
ice40/blinky.* moved to ice40/examples/blinky/blinky.* in commit 1780f42b9a
2019-04-15 21:27:11 -07:00
David Shah
db7e850ee8
Merge pull request #264 from smunaut/fix_sb_unused_in
ice40/pack: During IO packing, remove any unused input connection
2019-04-11 13:32:01 +01:00
Sylvain Munaut
6cb4e2e83b ice40/pack: During IO packing, remove any unused input connection
This is mostly for the benefit of PLL placement because the D_IN_x
ports are used for other purposes when PLL is enabled so we need to
make sure nothing is connected there already. (even an unused net is
too much)

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2019-04-11 13:52:23 +02:00
David Shah
22da6c8a65
Merge pull request #263 from YosysHQ/placer1_incr_bb
placer1: Improve incremental bounding box updates
2019-04-10 11:01:34 +01:00