gatecat
14863bc04e
Update placers to use new cluster APIs
...
Signed-off-by: gatecat <gatecat@ds0.me>
2021-05-06 11:47:07 +01:00
gatecat
b62dcc4bcc
arch_api: Outline of new cluster API
...
Signed-off-by: gatecat <gatecat@ds0.me>
2021-05-06 11:47:06 +01:00
Keith Rothman
e7d81913a4
Add "checkPipAvailForNet" to Arch API.
...
This is important for distiguishing valid pseudo pips in the FPGA
interchange arch. This also avoids a double or triple lookup of
pip->net map.
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-03-22 09:17:55 -07:00
gatecat
4026082470
docs/archapi: Typo fixes
...
Signed-off-by: gatecat <gatecat@ds0.me>
2021-02-24 15:28:33 +00:00
Keith Rothman
0758f68020
Update archapi.md with latest signature.
...
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-02-23 14:08:59 -08:00
gatecat
e571c707b5
Update generic.md
...
Signed-off-by: gatecat <gatecat@ds0.me>
2021-02-20 10:51:30 +00:00
gatecat
7922b3bfc4
Replace DelayInfo with DelayPair/DelayQuad
...
This replaces the arch-specific DelayInfo structure with new DelayPair
(min/max only) and DelayQuad (min/max for both rise and fall) structures
that form part of common code.
This further reduces the amount of arch-specific code; and also provides
useful data structures for timing analysis which will need to delay
with pairs/quads of delays as it is improved.
While there may be a small performance cost to arches that didn't
separate the rise/fall cases (arches that aren't currently separating
the min/max cases just need to be fixed...) in DelayInfo, my expectation
is that inlining will mean this doesn't make much difference.
Signed-off-by: gatecat <gatecat@ds0.me>
2021-02-19 11:31:33 +00:00
gatecat
cb957795a3
Update docs/archapi.md
...
Signed-off-by: gatecat <gatecat@ds0.me>
2021-02-17 11:25:53 +00:00
gatecat
c7c13cd95f
Remove isValidBelForCell
...
This Arch API dates from when we were first working out how to
implement placement validity checking, and in practice is little used by
the core parts of placer1/HeAP and the Arch implementation involves a
lot of duplication with isBelLocationValid.
In the short term; placement validity checking is better served by the
combination of checkBelAvail and isValidBelForCellType before placement;
followed by isBelLocationValid after placement (potentially after
moving/swapping multiple cells).
Longer term, removing this API makes things a bit cleaner for a new
validity checking API.
Signed-off-by: gatecat <gatecat@ds0.me>
2021-02-16 13:31:36 +00:00
gatecat
f0b2a91bda
generic: Update docs
...
Signed-off-by: gatecat <gatecat@ds0.me>
2021-02-15 10:37:06 +00:00
gatecat
1b6cdce925
Merge pull request #575 from YosysHQ/gatecat/belpin-2
...
Support for cell pin to bel pin mappings
2021-02-15 09:38:22 +00:00
gatecat
cede682585
Merge pull request #579 from litghost/add_control_for_split_io
...
Add control to whether GenericFrontend splits IO ports.
2021-02-12 18:22:06 +00:00
Keith Rothman
e28dedbbe3
Update docs.
...
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-02-12 08:07:09 -08:00
gatecat
c956cae824
Make BaseArch getDecalGraphics return an empty range
...
Fix assertion failure when opening the GUI on an arch without any
decals.
Signed-off-by: gatecat <gatecat@ds0.me>
2021-02-12 10:35:51 +00:00
Keith Rothman
99e397000c
Add getBelHidden and add some missing "override" statements.
...
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-02-11 14:58:02 -08:00
gatecat
85bb108ba4
Add getBelPinsForCellPin to Arch API
...
This is a basic implementation, without considering "M of N"
arrangements (e.g. for LUT permuation where you only want to route to 1
out of 4/6 sinks) or using a type other than IdString to identify bel
pins.
But this is also enough to start working out where in nextpnr will break
due to removing the 1:1 cell:bel pin cardinality, as a next step.
Signed-off-by: gatecat <gatecat@ds0.me>
2021-02-10 11:54:54 +00:00
gatecat
11db5a2f1d
Add BaseArchRanges for default ArchRanges types
...
Signed-off-by: gatecat <gatecat@ds0.me>
2021-02-09 10:39:14 +00:00
D. Shah
697c4fd08b
Update docs with API changes
...
Signed-off-by: D. Shah <dave@ds0.me>
2021-02-08 11:08:45 +00:00
D. Shah
3e631fe2f4
Add archArgs and archArgsToId to Arch API
...
Signed-off-by: D. Shah <dave@ds0.me>
2021-02-05 19:19:17 +00:00
D. Shah
0865198a9e
Update coding.md
...
Signed-off-by: D. Shah <dave@ds0.me>
2021-02-03 10:53:15 +00:00
D. Shah
9614d37229
docs: Update archapi.md with IdStringList
...
Signed-off-by: D. Shah <dave@ds0.me>
2021-02-02 17:00:14 +00:00
D. Shah
ff92d19fed
arch: Add getNameDelimiter API for string lists
...
Signed-off-by: D. Shah <dave@ds0.me>
2021-02-02 16:59:40 +00:00
Keith Rothman
01509ec7c9
Make BELs/PIPs lowercase as bels/pips per review comment.
...
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-02-02 07:43:38 -08:00
Keith Rothman
11c80c048b
Update documentation.
...
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-02-02 07:34:56 -08:00
Keith Rothman
878fcdd22d
Implement partitioning in placer_heap.
...
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-02-02 07:34:56 -08:00
Keith Rothman
b4160c228e
Add archcheck for partition methods.
...
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-02-02 07:34:56 -08:00
Keith Rothman
f3a7c691a3
Make some partition names consistent.
...
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-02-02 07:34:56 -08:00
Keith Rothman
2285c8dbbd
Initial refactoring of placer API.
...
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-02-02 07:34:56 -08:00
D. Shah
94e8847d67
cleanup: Spelling fixes
...
Signed-off-by: D. Shah <dave@ds0.me>
2021-01-28 15:19:06 +00:00
David Shah
2fe8bebc6c
nexus: Update docs and CMake
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:59:04 +00:00
William D. Jones
996b4100b9
Update netlist.md
...
Add information about how top-level ports and connected nets differ from other ports and nets.
2020-11-24 14:30:30 -05:00
David Shah
b18ea204c2
Remove wire alias API
...
It has not actually been implemented in any router for over 2.5 years and causes nothing more than confusion. It can always be added back if it forms part of a future solution; possibly as part of a more general database structure rethink.
Signed-off-by: David Shah <dave@ds0.me>
2020-10-15 09:36:15 +01:00
David Shah
c4244d967d
docs: Tidy up
...
Signed-off-by: David Shah <dave@ds0.me>
2020-10-01 09:02:29 +01:00
kittennbfive
b2438caec3
update doc - UNTESTED on real hardware
2020-09-28 14:49:35 +00:00
David Shah
7123209324
Allow selection of router algorithm
...
Signed-off-by: David Shah <dave@ds0.me>
2020-02-03 11:54:38 +00:00
David Shah
25f57a1e38
docs: Document getRouteBoundingBox
...
Signed-off-by: David Shah <dave@ds0.me>
2020-02-03 11:43:35 +00:00
David Shah
5774b13984
Document hierarchy structures
...
Signed-off-by: David Shah <dave@ds0.me>
2019-12-27 10:44:30 +00:00
David Shah
6bf3c261fa
First pass at data structures for hierarchy
...
Signed-off-by: David Shah <dave@ds0.me>
2019-12-27 10:44:30 +00:00
David Shah
b7079d159b
Update generic arch docs
...
Signed-off-by: David Shah <dave@ds0.me>
2019-11-26 21:52:02 +00:00
David Shah
1e4feed383
General documentation updates
...
Signed-off-by: David Shah <dave@ds0.me>
2019-11-26 21:47:20 +00:00
David Shah
98fe4438f1
ECP5 support is no longer experimental
...
Signed-off-by: David Shah <dave@ds0.me>
2019-11-26 16:10:53 +00:00
David Shah
8c0610e84f
ice40: Add set_frequency pcf command; and document pcf
...
Signed-off-by: David Shah <dave@ds0.me>
2019-10-13 18:48:39 +01:00
David Shah
a00d6c75aa
docs: Improvements to coding notes
...
Signed-off-by: David Shah <dave@ds0.me>
2019-10-03 11:34:31 +01:00
David Shah
137d9d33c1
docs: Working on coding tips
...
Signed-off-by: David Shah <dave@ds0.me>
2019-09-29 15:50:08 +02:00
David Shah
72244066bb
docs: More netlist documentation
...
Signed-off-by: David Shah <dave@ds0.me>
2019-09-29 15:22:56 +02:00
David Shah
cfe86dfd15
docs: Add docs for CellInfo and NetInfo
...
Signed-off-by: David Shah <dave@ds0.me>
2019-09-29 12:12:28 +02:00
David Shah
6bb098b476
docs: Add Python API documentation
...
Signed-off-by: David Shah <dave@ds0.me>
2019-09-19 15:52:18 +01:00
David Shah
ba050c21b9
docs: Fix typo
...
Signed-off-by: David Shah <dave@ds0.me>
2019-07-22 09:12:33 +01:00
David Shah
f0cd51e6bc
generic: Cell timing support
...
Signed-off-by: David Shah <dave@ds0.me>
2019-04-04 16:34:06 +01:00
David Shah
f2c911bf07
generic: Adding API usage documentation
...
Signed-off-by: David Shah <dave@ds0.me>
2019-04-02 15:30:01 +01:00