Lofty
25ca4cdc01
awooter: retry partitioning if there are overused wires
2023-12-06 17:52:37 +00:00
Lofty
bed9ae6c17
awooter: multithreaded routing
2023-12-06 17:52:37 +00:00
Lofty
1685482552
awooter: fix multithreaded partitioning
2023-12-06 17:52:37 +00:00
Lofty
879b6e6691
awooter: single-thread pathfinding
2023-12-06 17:52:37 +00:00
Lofty
7ef4be49dc
awooter: cargo fmt
2023-12-06 17:52:37 +00:00
Lofty
a1fb22909c
awooter: partitioner improvements
2023-12-06 17:52:37 +00:00
SpaceCat-Chan
a7e25754e1
make pip exploration not cursed
2023-12-06 17:52:37 +00:00
SpaceCat-Chan
8e66d3d7d8
add uphill pips iter
2023-12-06 17:52:37 +00:00
SpaceCat-Chan
1c0885435c
make find_best_pip take an arc instead of wires
2023-12-06 17:52:37 +00:00
SpaceCat-Chan
fe5daebba5
improve partition sanity check quality of life
2023-12-06 17:52:37 +00:00
SpaceCat-Chan
38908e64fb
use new arc type in partitioner
2023-12-06 17:52:37 +00:00
SpaceCat-Chan
88f88e48cb
only search pips inside partition bounds
2023-12-06 17:52:37 +00:00
Lofty
686648c406
awooter: wip
2023-12-06 17:52:37 +00:00
SpaceCat-Chan
d64289da65
finalize downhill iterator
2023-12-06 17:52:37 +00:00
SpaceCat-Chan
0c647c0471
create downhill iter wrapper
2023-12-06 17:52:37 +00:00
Lofty
0aadeab542
awooter: further clean up
2023-12-06 17:52:37 +00:00
Lofty
063c96c3df
awooter: add Arc struct
2023-12-06 17:52:37 +00:00
SpaceCat-Chan
b50e56a543
split partitioning code into seperate file
2023-12-06 17:52:37 +00:00
SpaceCat-Chan
862fbf7ca7
split arc extraction into function
2023-12-06 17:52:37 +00:00
Lofty
6279d1642c
awooter: clean up unused code
2023-12-06 17:52:37 +00:00
Lofty
fbbcf6aa67
awooter: return of the progress bar
2023-12-06 17:52:37 +00:00
SpaceCat-Chan
d7dbaa2c7e
fix bug in split_line_over_x
2023-12-06 17:52:37 +00:00
Lofty
b4a442ba29
awooter: simple time measurement
2023-12-06 17:52:37 +00:00
SpaceCat-Chan
0a46c5b491
make partitioner run in parallel over nets
2023-12-06 17:52:37 +00:00
Lofty
3931daefc7
awooter: atomics instead
2023-12-06 17:52:37 +00:00
Lofty
1b80a559e2
awooter: better locking
2023-12-06 17:52:37 +00:00
Lofty
026c2883e5
awooter: properly parallelise
2023-12-06 17:52:37 +00:00
Lofty
937acd3ee9
awooter: clamp pip indices
2023-12-06 17:52:37 +00:00
Lofty
49b6d894d1
awooter: cargo fmt
2023-12-06 17:52:37 +00:00
Lofty
8276bf255d
awooter: parallelise partitioning
2023-12-06 17:52:37 +00:00
Lofty
ac43ddbcc5
awooter: refactor and bugfix
...
Co-authored-by: Spacecat-Chan <49094338+SpaceCat-Chan@users.noreply.github.com>
2023-12-06 17:52:37 +00:00
Lofty
5d74f340dd
awooter: further prettify
2023-12-06 17:52:37 +00:00
Lofty
94c921a48e
awooter: prettify
2023-12-06 17:52:37 +00:00
Lofty
9a2532be45
awooter: net-based partitioner
2023-12-06 17:52:37 +00:00
Lofty
95e802ee3d
awooter: wire storage and some cleanup
2023-12-06 17:52:37 +00:00
Lofty
153c8a9c6c
awooter: 'better' FFI API
2023-12-06 17:52:37 +00:00
Lofty
d27bcbf19e
awooter: fix an API soundness issue
2023-12-06 17:52:37 +00:00
Lofty
2662354aae
awooter: partition experiment code
2023-12-06 17:52:37 +00:00
Lofty
c821a68da7
awooter: add net import code
2023-12-06 17:52:37 +00:00
Jubilee
a579b5852a
Specify PROFILE when importing awooter
...
Otherwise CMake and Corrosion get confused about how to put things together.
2023-12-06 17:52:37 +00:00
Lofty
8052a3eea6
awooter: highly, highly WIP
2023-12-06 17:52:37 +00:00
gatecat
6d9322457e
static: Reduce stddev of initial solution
...
Signed-off-by: gatecat <gatecat@ds0.me>
2023-11-26 16:51:47 +01:00
YRabbit
c13b34f20e
gowin: Himbaechel. Add BSRAM for all chips.
...
The following primitives are implemented for the GW1N-1, GW2A-18,
GW2AR-18C, GW1NSR-4C, GW1NR-9C, GW1NR-9 and GW1N-4 chips:
* pROM - read only memory - (bitwidth: 1, 2, 4, 8, 16, 32).
* pROMX9 - read only memory - (bitwidth: 9, 18, 36).
* SDPB - semidual port - (bitwidth: 1, 2, 4, 8, 16, 32).
* SDPX9B - semidual port - (bitwidth: 9, 18, 36).
* DPB - dual port - (bitwidth: 16).
* DPX9B - dual port - (bitwidth: 18).
* SP - single port - (bitwidth: 1, 2, 4, 8, 16, 32).
* SPX9 - single port - (bitwidth: 9, 18, 36).
For GW1NSR-4C and GW1NR-9 chips, SP/SPX9 primitives with data widths
of 32/36 bits are implemented using a pair of 16-bit wide
primitives.
Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
2023-11-26 13:08:09 +01:00
YRabbit
90d4863dd4
gowin: Himbaechel. Add GW1NZ-1 BSRAM.
...
The following primitives are implemented for the GW1NZ-1 chip:
* pROM - read only memory - (bitwidth: 1, 2, 4, 8, 16, 32).
* pROMX9 - read only memory - (bitwidth: 9, 18, 36).
* SDPB - semidual port - (bitwidth: 1, 2, 4, 8, 16, 32).
* SDPX9B - semidual port - (bitwidth: 9, 18, 36).
* DPB - dual port - (bitwidth: 16).
* DPX9B - dual port - (bitwidth: 18).
* SP - single port - (bitwidth: 1, 2, 4, 8, 16, 32).
* SPX9 - single port - (bitwidth: 9, 18, 36).
Also:
- The creation of databases for GW1NS-2 has been removed - this was not
planned to be supported in Himbaechel from the very beginning and
even examples were not created in apicula for this chip due to the
lack of boards with it on sale.
- It is temporarily prohibited to connect DFFs and LUTs into clusters
because for some reason this prevents the creation of images on lower
chips (placer cannot find the placement), although without these
clusters the images are quite working. Requires further research.
- Added creation of ALU with mode 0 - addition. Such an element is not
generated by Yosys, but it is a favorite vendor element and its
support here greatly simplifies the compilation of vendor netlists.
Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
2023-11-26 13:08:09 +01:00
YRabbit
f2c280feda
gowin: Himbaechel. Initial BSRAM support
...
Only pROM/pROMX9 for now
Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
2023-11-26 13:08:09 +01:00
Miodrag Milanovic
e3f4578b3b
CRLF -> LF eol
2023-11-23 09:22:07 +01:00
Miodrag Milanovic
ec60542ffd
create wiremap for himbaechel arch
2023-11-23 09:22:07 +01:00
Miodrag Milanovic
1ec8e411d7
set render bound box, so grid is displayed
2023-11-23 08:21:26 +01:00
Miodrag Milanovic
0b8a93eed5
fix compile warning
2023-11-23 08:21:26 +01:00
gatecat
de3d5be8f0
python: Remove deprecated use of Py_SetProgramName
...
Signed-off-by: gatecat <gatecat@ds0.me>
2023-11-23 06:49:15 +01:00