Miodrag Milanovic
64f7306b24
initialize netShareWeight
2022-12-22 20:16:13 +01:00
Miodrag Milanovic
4af8964069
propagate netShareWeight
2022-12-22 16:11:10 +01:00
Miodrag Milanovic
bd628ce591
Remove deprecated functions
2022-12-22 15:26:39 +01:00
myrtle
a80d63b268
Merge pull request #1066 from arjenroodselaar/place_timeout
...
Timeout when legal placement can't be found for cell
2022-12-21 07:10:09 +00:00
Arjen Roodselaar
be1f700b0b
Set divisor instead of absolute value
2022-12-20 13:10:37 -08:00
Arjen Roodselaar
923458a2c9
Allow setting cell placement timeout
2022-12-20 11:15:06 -08:00
Arjen Roodselaar
d5299f144f
Add --no-placer-timeout flag to override timeout during refinement
2022-12-19 22:58:52 -08:00
Arjen Roodselaar
2712cbf6e4
Increase timeout
2022-12-19 14:00:19 -08:00
Arjen Roodselaar
6e0311efca
Timeout when legal placement can't be found for cell
2022-12-17 16:07:57 -08:00
gatecat
ccb573298c
heap: encourage more spreading of heterogenous chains
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-12-17 10:50:20 +00:00
gatecat
603b60da8d
api: add explain_invalid option to isBelLocationValid
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-12-07 10:27:58 +01:00
gatecat
d1afd6c0f1
heap: Remove custom bounding-box type
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-12-07 10:02:16 +01:00
gatecat
e260ac33ab
refactor: ArcBounds -> BoundingBox
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-12-07 10:00:53 +01:00
gatecat
c62a947a28
api: Make NetInfo* of checkPipAvailForNet const
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-12-02 14:20:39 +01:00
gatecat
8a69bd0735
Fix "implicit copy constructor for 'Property' is deprecated"
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-11-10 10:57:41 +01:00
gatecat
445d32497d
run clangformat
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-10-17 12:35:02 +02:00
airskywater
9572f6f032
Modify code to meet the code style preferences
2022-09-24 14:46:35 +08:00
airskywater
c702e15a3f
Add more sanity check for pointers
2022-09-24 12:03:44 +08:00
airskywater
78f67ae5bc
fix runtime segmentation fault
...
disable null pointer dereference!
2022-09-24 11:35:40 +08:00
myrtle
f4e6bbd383
Merge pull request #1019 from antmicro/support-clock-relations
...
Support cross-domain clock relations in timing analyser
2022-09-20 15:55:43 +02:00
Maciej Kurc
9000c41c4b
Added the --ignore-rel-clk option to control timing checks for cross-domain paths, formatted code
...
Signed-off-by: Maciej Kurc <mkurc@antmicro.com>
2022-09-20 14:40:40 +02:00
gatecat
415c097df8
router2: Reserve source wire, too
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-09-20 13:42:51 +02:00
Maciej Kurc
1f1bae3e23
Code cleanup
...
Signed-off-by: Maciej Kurc <mkurc@antmicro.com>
2022-08-31 16:19:15 +02:00
Maciej Kurc
60a6e8b070
Added timing check for cross-domain paths for related clocks
...
Signed-off-by: Maciej Kurc <mkurc@antmicro.com>
2022-08-31 14:15:33 +02:00
Maciej Kurc
9a61ad9234
Augmented TimingAnalyser class with detection of clock to clock relations
...
Signed-off-by: Maciej Kurc <mkurc@antmicro.com>
2022-08-30 17:30:58 +02:00
Miodrag Milanovic
a00b997cf1
add missing overrides
2022-08-22 12:35:24 +02:00
Miodrag Milanovic
1aa797b820
Fix parameter order
2022-08-22 12:32:50 +02:00
gatecat
05167fcb8b
pybindings: Mark CellInfo::bel as readonly
...
bel bindings should be updated with bindBel/unbindBel during placement, or setting the BEL attribute for constraints before placement.
Fixes #522
Signed-off-by: gatecat <gatecat@ds0.me>
2022-08-18 15:09:41 +02:00
gatecat
77c82b0fbf
refactor: id(stringf(...)) to new idf(...) helper
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-08-10 10:57:46 +01:00
gatecat
09e388f453
netlist: Add PseudoCell API
...
When implementing concepts such as partition pins or deliberately split
nets, there's a need for something that looks like a cell (starts/ends
routing with pins on nets, has timing data) but isn't mapped to a fixed
bel in the architecture, but instead can have pin mappings defined at
runtime.
The PseudoCell allows this by providing an alternate, virtual-function
based API for such cells. When a cell has `pseudo_cell` used, instead of
calling functions such as getBelPinWire, getBelLocation or getCellDelay
in the Arch API; such data is provided by the cell itself, fully
flexible at runtime regardless of arch, via methods on the PseudoCell
implementation.
2022-07-08 14:30:57 +02:00
gatecat
e1ba379fb7
generic: Use arch_pybindings_shared
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-07-04 18:39:00 +02:00
gatecat
447b5b905c
Don't assert on mixed domain paths in report
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-05-22 13:56:36 +01:00
YRabbit
1aa693732c
common: Correct a minor typo in the message
...
Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
2022-05-10 21:19:02 +10:00
gatecat
19cade3b3b
prefine: Do full-tile swaps, too
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-04-19 18:37:16 +01:00
gatecat
61b3e2e1ff
Move general parallel detail place code out of parallel_refine
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-04-17 20:10:49 +01:00
gatecat
49f178ed94
Split up common into kernel,place,route
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-04-08 13:42:54 +01:00
gatecat
774d3944b3
parallel_refine: Fix compile error with some configs
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-03-19 18:43:31 +00:00
YRabbit
e3b9c971f9
BUGFIX: disable the thousands separator
...
The wire numbers are very large and it is undesirable to use a thousand
separator there. This is a side effect of enabling locale.
Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
2022-03-16 15:05:27 +10:00
YRabbit
53ddbbaa85
Set the locale as early as possible
...
Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
2022-03-16 05:39:55 +10:00
gatecat
df7e26c1aa
clangformat
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-03-09 17:12:59 +00:00
Catherine
626eccdb89
Add missing part of commit aee35768
.
2022-03-08 17:24:29 +00:00
Catherine
aee35768f4
Disable parallel refinement on WebAssembly.
2022-03-05 16:32:44 +00:00
gatecat
cc9f99a80c
parallel_refine: New, parallelised placement refinement pass
2022-03-03 18:37:53 +00:00
gatecat
86699b42f6
Switch to potentially-sparse net users array
...
This uses a new data structure for net.users that allows gaps, so
removing a port from a net is no longer an O(n) operation on the number
of users the net has.
Signed-off-by: gatecat <gatecat@ds0.me>
2022-02-27 13:47:05 +00:00
gatecat
434a9737bb
Add indexed_store container type
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-02-26 15:11:33 +00:00
gatecat
75c45dbef1
Add IdStringList::concat overrides taking IdString
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-02-20 18:26:17 +00:00
gatecat
6a32aca4ac
refactor: New member functions to replace design_utils
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-02-18 11:13:18 +00:00
gatecat
30fd86ce69
refactor: New NetInfo and CellInfo constructors
2022-02-16 15:10:57 +00:00
gatecat
84399caebe
run clangformat
...
Signed-off-by: gatecat <gatecat@ds0.me>
2022-02-03 15:28:46 +00:00
YRabbit
22e4081c73
gowin: Add GUI.
...
* Items such as LUT, DFF, MUX, ALU, IOB are displayed;
* Local wires, 1-2-4-8 wires are displayed;
* The clock spines, taps and branches are displayed with some caveats.
For now, you can not create a project in the GUI because of possible
conflict with another PR (about GW1NR-9C support), but you can specify
the board in the command line and load .JSON and .CST in the GUI.
Although ALUs are displayed, but the CIN and COUT wires are not. This is
still an unsolved problem.
Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
2022-01-29 14:45:17 +10:00