gatecat
336124b879
ice40: Fix wirenames containing / which is the list separator
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-03-30 20:57:00 +01:00
D. Shah
b31b21fd51
ice40: Implement IdStringList for all arch object names
...
Signed-off-by: D. Shah <dave@ds0.me>
2021-02-02 17:00:33 +00:00
D. Shah
c10238de8c
ice40: Switch from RelPtr to RelSlice
...
This replaces RelPtrs and a separate length field with a Rust-style
slice containing both a pointer and a length; with bounds checking
always enforced.
Thus iterating over these structures is both cleaner and safer.
Signed-off-by: D. Shah <dave@ds0.me>
2021-01-27 18:35:49 +00:00
David Shah
b24e0a609b
ice40: Fix getBelsByTile
...
Signed-off-by: David Shah <dave@ds0.me>
2020-06-29 19:52:31 +01:00
whitequark
89e0cc8078
Simplify and improve chipdb embedding/loading.
2020-06-26 08:36:07 +00:00
David Shah
4d8fa13033
ice40: Fix DSP cascade wires
...
Signed-off-by: David Shah <dave@ds0.me>
2019-09-03 11:53:43 +01:00
Simon Schubert
88eeafae12
ice40: add RGB_DRV/LED_DRV_CUR support for u4k
2019-06-10 14:04:25 +02:00
David Shah
e87fb69665
ice40: u4k merge fix
...
Signed-off-by: David Shah <dave@ds0.me>
2019-02-25 11:36:12 +00:00
David Shah
7a5699891a
Merge pull request #239 from YosysHQ/dsp_casc_dummy_wires
...
ice40: Add DSP SIGNEXTIN/OUT and ACCUMCI/O ports
2019-02-25 08:20:32 +00:00
Simon Schubert
7044f56246
ice40: support u4k
2019-02-23 17:39:20 +01:00
David Shah
a05f6b261e
ice40: Add DSP SIGNEXTIN/OUT and ACCUMCI/O ports
...
Signed-off-by: David Shah <davey1576@gmail.com>
2019-02-21 20:34:23 +00:00
Sylvain Munaut
325d46e284
ice40/chipdb: Add wires to global network for all cells that can drive it
...
The icebox DB is a bit inconsistent in how global network connections
are represented. Here we make it appear consistent by creating ports
on the cells that can drive it.
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2018-11-19 18:20:20 +01:00
Sylvain Munaut
3f4dc7c80e
ice40: Add GlobalNetowkrInfo in the chip database
...
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2018-11-19 18:20:20 +01:00
Sylvain Munaut
70e1fe423f
ice40/chipdb: Fix LOCKED keyword support to include all packages
...
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2018-11-19 13:12:43 +01:00
Clifford Wolf
801f630983
Add more missing iCE40 gfx (LP/HX is complete now)
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-19 18:43:38 +02:00
Clifford Wolf
7cdafb8121
Add iCE40 gfx for span-4 wires between IO tiles
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-19 16:31:02 +02:00
Clifford Wolf
a346793c19
Add iCE40 gfx for wires connecting fabric tiles and IO tiles
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-18 17:17:01 +02:00
Clifford Wolf
456a83430a
Improve iCE40 gfx for IO tiles and RAM tiles
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-18 16:20:33 +02:00
Clifford Wolf
5500cf3aff
Add ice40 wire attributes (grid position, segment list)
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-18 14:14:27 +02:00
Clifford Wolf
f875a37467
Get rid of old iCE40 id_ Arch members
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-08 17:17:16 +02:00
Clifford Wolf
e03ae50e21
Get rid of PortPin and BelType (ice40, generic, docs)
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-08 17:01:18 +02:00
Clifford Wolf
f6b3333a7d
Add new iCE40 delay estimator and delay predictor
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-04 19:50:49 +02:00
Clifford Wolf
700e68746a
Fix bug in ice40 chipdby.py add_wire() that moves some wires to X0/Y0
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-04 13:33:24 +02:00
Clifford Wolf
96291f17aa
Merge branch 'master' of github.com:YosysHQ/nextpnr into lutperm
2018-08-04 10:32:07 +02:00
David Shah
affc6da1af
ice40: Add SB_GB timing to database
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-04 08:28:13 +02:00
Clifford Wolf
8d372b86f3
Proper ice40 wire types
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-03 21:11:12 +02:00
Clifford Wolf
2a1d54389f
Add iCE40 pseudo-pips for lut permutation
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-03 17:37:59 +02:00
Clifford Wolf
e673d9d2db
Merge pull request #22 from YosysHQ/routethru
...
Add iCE40 LUT route-through pips
2018-08-03 12:51:37 +02:00
Clifford Wolf
36009645ce
Add LUT route-through pips to iCE40 architecture database
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-02 16:28:47 +02:00
David Shah
a7269a685e
ice40: Use real cell timings
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-02 16:02:51 +02:00
David Shah
c0aaac8dfa
ice40: Adding cell timings to chipdb
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-02 15:20:43 +02:00
Clifford Wolf
2652485a01
Use icestorm timing information
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-31 16:43:19 +02:00
Clifford Wolf
32ff0059fe
Add binary search to getBelPinWire() and getBelPinType()
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-31 11:55:25 +02:00
Clifford Wolf
b121008372
Towards better ice40 timing data
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-30 17:17:07 +02:00
David Shah
84e0082925
cmake: Set --fast and --slow chipdb.py arguments
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-30 16:40:56 +02:00
Clifford Wolf
3d8b0087c3
Add ice40 chipdb.py --fast/--slow
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-30 16:36:34 +02:00
Clifford Wolf
8f9b031ef0
Add iCE40 fast/slow delay fields to chipdb
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-30 16:21:20 +02:00
Clifford Wolf
a86c4f2f5d
Improvements in bbasm
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-26 15:22:52 +02:00
Clifford Wolf
c3859072d4
Use bbasm to create iCE40 chipdb
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-24 21:10:42 +02:00
Sergiusz Bazanski
b31e95f82c
Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr into q3k/pll
2018-07-24 15:54:03 +01:00
Clifford Wolf
c0c8dc7602
Remove uphill/downhill bel pins from ice40 db
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-24 15:44:39 +02:00
David Shah
a09f95bb06
ice40: Fix SPRAM and other primitives in corners other than (0, 0)
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-24 11:16:33 +02:00
Sergiusz Bazanski
eaae1d299c
ice40: move PLL->IO from pseudo pip to second uphill bel
2018-07-24 02:55:40 +01:00
Sergiusz Bazanski
65ceb20784
ice40: emit list of upbels in chipdb
2018-07-24 02:55:40 +01:00
Sergiusz Bazanski
69233385f8
ice40: Emit feed-through LUTs for PLL/LOCK
2018-07-24 02:55:40 +01:00
Sergiusz Bazanski
2b1f7875bb
ice40: Implement emitting PLLs
2018-07-24 02:38:10 +01:00
Clifford Wolf
e647604e2a
Add Context::archcheck() and "nextpnr-ice40 --test"
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-23 14:03:23 +02:00
Clifford Wolf
3788bd26e6
Bugfix in iCE40 chipdb.py
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-23 00:25:49 +02:00
Clifford Wolf
b60c9485d2
Add Arch::getBelPinType() and Arch::getWireBelPins() in iCE40 arch
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-22 11:56:51 +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