Miodrag Milanović
a530283600
Cleanup Context API ( #1593 )
...
* Cleanup Context API
* Remove exit to prvent crash
2025-10-23 14:44:14 +02:00
myrtle
c7cfb0aa4b
Remove use of boost system and filesystem ( #1591 )
...
Signed-off-by: gatecat <gatecat@ds0.me>
2025-10-22 15:01:21 +02:00
Miodrag Milanović
36045543c7
gatemate: support multiple clock distribution strategies ( #1574 )
...
* gatemate: support multiple clock distribution strategies
* error out on non supported cases
* Implement full use strategy
* Address review comments
2025-10-15 15:33:21 +02:00
Miodrag Milanović
e7f9060efb
placer_heap: fix clamping to region ( #1569 )
2025-10-06 09:08:24 +02:00
Miodrag Milanović
8ac7ed161a
gatemate: code cleanup and netlist fix ( #1554 )
2025-09-10 14:04:42 +02:00
myrtle
9715a1d565
heap: Allow chains to ripup other chains (opt-in only) ( #1552 )
...
Signed-off-by: gatecat <gatecat@ds0.me>
2025-09-05 09:02:19 +02:00
Miodrag Milanovic
8ab9301dc4
clangformat
2025-08-27 10:37:39 +02:00
Lofty
0a7cbe1cd7
router2: iteratively reserve arc driver wires, too ( #1539 )
2025-08-26 16:17:11 +02:00
Miodrag Milanovic
d796cc720b
clangformat
2025-08-22 11:08:39 +02:00
Lofty
0ad43e6ec7
gatemate: remove placement density restriction ( #1527 )
2025-08-08 17:02:56 +02:00
Miodrag Milanovic
0ebd7afab9
clangformat
2025-07-07 10:15:50 +02:00
myrtle
27635785c8
heap: Allow customising legalisation ordering ( #1507 )
...
Signed-off-by: gatecat <gatecat@ds0.me>
2025-07-01 15:32:28 +02:00
gatecat
ff695f26d5
sdc: Fix EOF handling during string parse
...
Fixes #1490
Signed-off-by: gatecat <gatecat@ds0.me>
2025-06-25 11:58:11 +02:00
Frans Skarman
0c86a218fd
Add sources to detailed timing report ( #1502 )
2025-06-25 11:39:25 +02:00
gatecat
226a2dfdb4
clangformat
...
Signed-off-by: gatecat <gatecat@ds0.me>
2025-05-20 13:19:52 +02:00
William D. Jones
b127fa9c11
bba: fix `#embed` on Windows.
2025-05-14 05:38:30 +01:00
Miodrag Milanović
7a3a43e150
placer1: add sanity check for try_swap_chain ( #1472 )
2025-04-13 19:11:11 +02:00
Lofty
661f76d51a
Add arch API function for pip inversion ( #1457 )
2025-02-27 12:21:15 +01:00
Catherine
77187613e3
kernel: look up ports when applying clock constraints. ( #1448 )
...
prjunnamed does not emit a net alias for toplevel ports. This works
fine for constraining IOs but breaks clock constraints. This commit
expands clock constraint application code to look up net aliases first,
ports second.
2025-01-31 08:30:39 +00:00
Catherine
cd7f7c12f1
CMake: refactor architecture-specific build system parts.
...
Two user-visible changes were made:
* `-DUSE_RUST` is replaced with `-DBUILD_RUST`, by analogy with
`-DBUILD_PYTHON`
* `-DCOVERAGE` was removed as it doesn't work with either modern GCC
or Clang
2025-01-21 17:13:03 +00:00
Catherine
43b2f38520
CMake: use imported target for pybind11.
...
This accounts for the use of either the system or the vendored pybind11.
Fixes #1428 .
2025-01-21 15:05:57 +00:00
Catherine
155adc3f5d
CMake: rationalize and refactor build system.
...
The two main changes, done together in this commit, are:
* Eliminating most instances of `aux_source_directory()`, replacing
them with explicit file listings; and
* Moving these file listings into respective subdirectories by
representing respective nextpnr components as interface libraries.
In addition, the GUI CMake script tree was simplified since it had
a lot of unused/redundant code.
The `aux_source_directory()` command is not recommended for use by
CMake itself because it misses dependency changes when adding/removing
files, and consequently causes build failures requiring a clean rebuild.
This commit does not touch anything related to architectures/families,
which are very complex and redundant all on their own.
2025-01-16 11:36:44 +01:00
Catherine
5fe680390f
Various fixes for clang/libc++ build ( #1415 )
...
* Gowin: add header includes required on libstdc++.
* kernel: fix incorrect printf-style format.
* himbaechel: add missing `override` qualifiers.
* Gowin: remove unnecessary `std::move`.
These calls inhibit RVO, a stronger optimization than moving an object.
2025-01-12 08:11:33 +01:00
Tarik Graba
f01465f628
Add attributes to the hierarchical cells ( #1405 )
...
* Adds attributes to the hierarchical cells
* python: add binding for hierarchical cells attributes
* frontend/base: import hierarchical cells attributes
2024-12-17 11:30:39 +01:00
Miodrag Milanović
d810aac867
Add GroupId related calls to Himbaechel API ( #1399 )
...
* Add GroupId related calls to Himbaechel API
* Example uarch using new API features
* Update drawGroup to propagate only GroupId
2024-12-05 13:59:33 +01:00
Miodrag Milanović
0e69425794
Add expandBoundingBox method to API ( #1395 )
...
* Add expandBoundingBox method to API
* Update API documentation
2024-11-26 10:13:41 +01:00
Meinhard Kissich
cf42baa43b
Fix RNG seed initialization ( #1383 )
2024-10-09 18:25:02 +02:00
Pepijn de Vos
028be1462a
apicula: add support for magic sip pins ( #1370 )
...
* apicula: add support for magic sip pins
* fix nullptr check
* DDR fix by xiwang
* WIP support for setting the iostd
* add iostd
2024-10-09 15:16:36 +02:00
Meinhard Kissich
d27993f019
Placer: Fix static legalise radius ( #1382 )
2024-10-08 15:20:33 +02:00
Rowan Goemans
0e5b1348e6
timing_log: Handle potentially missing net when reporting crit path ( #1381 )
2024-10-04 08:07:55 +02:00
myrtle
75d2ce6a92
heap: Fix ripup criterea ( #1378 )
...
Signed-off-by: gatecat <gatecat@ds0.me>
2024-10-02 22:36:57 +02:00
Lofty
268b32c341
router2: additional heatmap data
2024-10-02 16:29:55 +02:00
Adrien Prost-Boucle
b3b2392893
clang-format on basectx.h
2024-10-01 15:24:40 +02:00
Adrien Prost-Boucle
cc04882b17
BaseCtx : Fix crash in getNetByAlias()
2024-10-01 15:24:40 +02:00
gatecat
9b51c6e337
clangformat
...
Signed-off-by: gatecat <gatecat@ds0.me>
2024-09-30 14:51:33 +02:00
Adrien Prost-Boucle
cd51a0c2fc
Placer : Emit non-fatal error messages before ending the program
2024-09-24 12:06:56 +02:00
Adrien Prost-Boucle
2031a067a0
Himbaechel xilinx : More flexibility about types of DSP parameters
2024-09-24 12:06:56 +02:00
Adrien Prost-Boucle
a08229d6b6
Placer : Clearer messages in warnings and errors
2024-09-24 12:06:56 +02:00
Rowan Goemans
bbdf7aacb0
timing_log: warn on min time violation when timing fail is allowed
2024-09-24 08:57:21 +02:00
Rowan Goemans
0af42f1218
common: Use `NPNR_ASSERT_FALSE` for unreachable case
2024-09-24 08:57:21 +02:00
Rowan Goemans
93e233dad9
timing: Fix hold slack not matching reported path delay
2024-09-24 08:57:21 +02:00
Rowan Goemans
098dcaedec
timing: remove the articial clock delay inflation
2024-09-24 08:57:21 +02:00
Rowan Goemans
0fce4b8f4e
timing: lower clock_delay_fact to 1 to check if CI passes
2024-09-24 08:57:21 +02:00
Rowan Goemans
25d64b2105
timing_log: Fix logging indendation to match master
...
timing: Disable clock_skew analysis by default
2024-09-24 08:57:21 +02:00
Rowan Goemans
5488cd994b
router: Enable clock skew analysis during routing
2024-09-24 08:57:21 +02:00
Rowan Goemans
8ee2c5612c
timing: Add safe zero check function for delay_t
2024-09-24 08:57:21 +02:00
Rowan Goemans
a7f79fd681
timing: minor cleanup and stupid mistake fixups
2024-09-24 08:57:21 +02:00
Rowan Goemans
bca6f6394a
timing: Fix slack calculations
...
timing: Fix max_delay_by_domain_pair function
timing: Fix hold time check
2024-09-24 08:57:21 +02:00
Rowan Goemans
eb0bf9ea9c
report: Handle new segment types
...
timing_log: Use common segment type strings
2024-09-24 08:57:21 +02:00
Rowan Goemans
3b7fec8c4f
report: Handle new segment types
2024-09-24 08:57:21 +02:00