Skip to content

Update OpenFPGA Branch #2979

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 851 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
851 commits
Select commit Hold shift + click to select a range
cd1dff4
[vpr] add missing support on tileable routing
tangxifan Apr 12, 2024
997a72a
[vpr] now use the switch index from direct defintion
tangxifan May 3, 2024
632f7aa
[test] remove out-of-date koios entry
tangxifan May 3, 2024
0559025
[vpr] syntax and sanity checks
tangxifan May 3, 2024
1350d55
[lib] support multiple ptc number for rr graph I/O
tangxifan May 3, 2024
727fbeb
[lib] update rr graph I/O auto-gen files
tangxifan May 3, 2024
f2b1016
[lib] update rr graph reader
tangxifan May 3, 2024
e86c882
[lib] fixed a few bugs
tangxifan May 3, 2024
feea6d1
[vpr] fixed a bug where rr graph I/O always require node_ptc_nums
tangxifan May 3, 2024
922fed0
[vpr] debugging
tangxifan May 4, 2024
d03db90
[lib] debugging
tangxifan May 4, 2024
b1d03c6
[lib] fixed the bug in I/O of rrgraph. Seems that the ostream require…
tangxifan May 4, 2024
e5a4fa4
[lib] add resize for ptc nums
tangxifan May 4, 2024
5be9125
[lib] fixed the bug on rr graph io. Should use temp_string_
tangxifan May 4, 2024
15a6a7f
[lib] fixed a bug on node lookup assignment in RR graph I/O when supp…
tangxifan May 5, 2024
fa18ce0
[lib] now add rc data for CHANX and CHANY nodes in tileable rr graph
tangxifan May 5, 2024
fbc7797
[test] now use L1 and L4 in the tileable arch
tangxifan May 5, 2024
1606e98
[test] add new testcases for tileable rr graph
tangxifan May 5, 2024
e133c58
[core] fixed a bug where Y-axis segments may not be found
tangxifan May 7, 2024
59cec73
[core] add methods to identify opins for connection blocks
tangxifan May 19, 2024
aae47fb
[core] syntax
tangxifan May 19, 2024
cde781f
[core] fixed a bug on rr gsb when sorting edges from OPINs
tangxifan May 20, 2024
0e723b6
[core] add more debuggin messages
tangxifan May 21, 2024
a497068
Update device_grid_annotation.cpp
Wang-Yuanqi-source May 26, 2024
0d940c0
Update tileable_chan_details_builder.cpp
Wang-Yuanqi-source May 26, 2024
e05a3dd
Update tileable_rr_graph_node_builder.cpp
Wang-Yuanqi-source May 26, 2024
65889cc
Update tileable_rr_graph_gsb.h
Wang-Yuanqi-source May 26, 2024
2d7d141
Update tileable_rr_graph_edge_builder.cpp
Wang-Yuanqi-source May 26, 2024
164566a
Update tileable_rr_graph_gsb.cpp
Wang-Yuanqi-source May 26, 2024
3bf7656
Update tileable_rr_graph_gsb.h
Wang-Yuanqi-source May 26, 2024
adfe0c6
Update tileable_rr_graph_builder.cpp
Wang-Yuanqi-source May 26, 2024
71d7509
Update read_xml_arch_file.cpp
Wang-Yuanqi-source May 26, 2024
c06c748
Update physical_types.h
Wang-Yuanqi-source May 26, 2024
a54f296
Update tileable_chan_details_builder.cpp
Wang-Yuanqi-source May 26, 2024
e41d3ca
Update chan_node_details.cpp
Wang-Yuanqi-source May 26, 2024
56fb6c3
Update chan_node_details.h
Wang-Yuanqi-source May 26, 2024
25d6c35
Update tileable_rr_graph_edge_builder.h
Wang-Yuanqi-source May 26, 2024
1a7b167
Update tileable_rr_graph_edge_builder.cpp
Wang-Yuanqi-source May 26, 2024
970197c
Update tileable_rr_graph_edge_builder.h
Wang-Yuanqi-source May 26, 2024
73ecd2c
Update tileable_rr_graph_gsb.h
Wang-Yuanqi-source May 26, 2024
083918f
Update rr_graph_view.h
Wang-Yuanqi-source May 26, 2024
71d1e7d
Update rr_graph_storage.h
Wang-Yuanqi-source May 26, 2024
5d041b2
Update rr_graph_storage.cpp
Wang-Yuanqi-source May 26, 2024
a5e8f4d
Update rr_graph_builder.h
Wang-Yuanqi-source May 26, 2024
05a9bf4
Update physical_types.h
Wang-Yuanqi-source Jun 9, 2024
209860b
Update read_xml_arch_file.cpp
Wang-Yuanqi-source Jun 9, 2024
7c8a86a
Update SetupGrid.cpp
Wang-Yuanqi-source Jun 9, 2024
09cb741
Update vpr_context.h
Wang-Yuanqi-source Jun 9, 2024
8b4c5c6
Update SetupGrid.h
Wang-Yuanqi-source Jun 9, 2024
94f03ba
Update vpr_api.cpp
Wang-Yuanqi-source Jun 9, 2024
22466d3
Update tileable_rr_graph_edge_builder.cpp
Wang-Yuanqi-source Jun 9, 2024
113bac0
Update tileable_rr_graph_builder.cpp
Wang-Yuanqi-source Jun 9, 2024
483d00d
Update tileable_rr_graph_edge_builder.h
Wang-Yuanqi-source Jun 9, 2024
0d549ec
Update tileable_rr_graph_node_builder.cpp
Wang-Yuanqi-source Jun 9, 2024
680df0f
Update tileable_rr_graph_node_builder.h
Wang-Yuanqi-source Jun 9, 2024
068d309
Update read_xml_arch_file.cpp
Wang-Yuanqi-source Jun 15, 2024
61d2983
Update tileable_rr_graph_builder.cpp
Wang-Yuanqi-source Jun 15, 2024
11a50e2
Update check_rr_graph.cpp
Wang-Yuanqi-source Jun 15, 2024
9b609e2
Update check_route.cpp
Wang-Yuanqi-source Jun 15, 2024
6c76c4b
Update rr_graph_uxsdcxx_serializer.h
Wang-Yuanqi-source Jun 15, 2024
4728f93
Update rr_graph_uxsdcxx_interface.h
Wang-Yuanqi-source Jun 15, 2024
55ee6d2
Update rr_graph.cpp
Wang-Yuanqi-source Jun 15, 2024
09f572f
Update rr_graph2.cpp
Wang-Yuanqi-source Jun 15, 2024
7cf4de1
Update vpr_utils.cpp
Wang-Yuanqi-source Jun 15, 2024
500fea1
Update overuse_report.cpp
Wang-Yuanqi-source Jun 15, 2024
570259a
Update router_lookahead_map_utils.cpp
Wang-Yuanqi-source Jun 15, 2024
77c9f64
Update router_lookahead_map.cpp
Wang-Yuanqi-source Jun 15, 2024
7ca18cf
Update rr_graph_uxsdcxx.h
Wang-Yuanqi-source Jun 15, 2024
b5d20be
Update rr_spatial_lookup.cpp
Wang-Yuanqi-source Jun 15, 2024
b2d0421
Update check_rr_graph.h
Wang-Yuanqi-source Jun 15, 2024
af6063a
Update tileable_rr_graph_edge_builder.cpp
Wang-Yuanqi-source Jun 15, 2024
18675d4
Update tileable_rr_graph_gsb.cpp
Wang-Yuanqi-source Jun 15, 2024
3cd2e8f
Update tileable_rr_graph_gsb.h
Wang-Yuanqi-source Jun 15, 2024
52ebf3a
Update rr_node_types.h
Wang-Yuanqi-source Jun 15, 2024
974e7ab
Update rr_graph_builder.h
Wang-Yuanqi-source Jun 15, 2024
9c04559
Update rr_graph_storage.cpp
Wang-Yuanqi-source Jun 15, 2024
3acd074
Update rr_graph_storage.h
Wang-Yuanqi-source Jun 15, 2024
9751680
Update rr_graph_cost.h
Wang-Yuanqi-source Jun 15, 2024
78c1265
[vpr] bypass 0-fan-in node in power estimator
tangxifan Jun 4, 2024
1f828b6
resolve merge conflicts.
Tulong4Dev Jun 6, 2024
92fa685
Update alloc_and_load_rr_indexed_data.cpp
Wang-Yuanqi-source Jul 13, 2024
a3cfe95
Update read_route.cpp
Wang-Yuanqi-source Jul 13, 2024
6d817f5
Update describe_rr_node.cpp
Wang-Yuanqi-source Jul 13, 2024
72fb12c
Update check_route.cpp
Wang-Yuanqi-source Jul 13, 2024
19cc4e1
Update rr_graph_area.cpp
Wang-Yuanqi-source Jul 13, 2024
9856d13
Update tileable_rr_graph_edge_builder.cpp
Wang-Yuanqi-source Jul 13, 2024
52186e3
Update tileable_chan_details_builder.cpp
Wang-Yuanqi-source Jul 13, 2024
9e7eed5
Update read_xml_arch_file.cpp
Wang-Yuanqi-source Jul 14, 2024
6b24231
Update vpr_utils.h
Wang-Yuanqi-source Jul 14, 2024
d7d656e
Update vpr_utils.cpp
Wang-Yuanqi-source Jul 14, 2024
ea029e1
Update router_lookahead_map_utils.cpp
Wang-Yuanqi-source Jul 14, 2024
2a45a9e
Update tileable_rr_graph_builder.cpp
Wang-Yuanqi-source Jul 14, 2024
bc843fe
Update vpr_utils.cpp
Wang-Yuanqi-source Jul 14, 2024
aeae54f
Removing warnings from libencrypt and libdecrypt
behzadmehmood Jun 25, 2024
799e9cf
Updating libencryption/libdecryption for compatibility with openssl3
behzadmehmood Jul 8, 2024
1f4119f
Not dumping decrypted xml
behzadmehmood Jul 8, 2024
9c2ff68
Commenting unused variables in pugixml_loc.cpp
behzadmehmood Jul 8, 2024
18fc2e0
[vpr] add a new option to enable perimeter cbx and cby
tangxifan Jul 3, 2024
79122a0
[vpr] updating tileable rr graph generator
tangxifan Jul 3, 2024
70ece4f
[vpr] upgraded tileable rr_graph to support perimeter cb
tangxifan Jul 3, 2024
fd9c954
[vpr] syntax
tangxifan Jul 3, 2024
a69ac75
[test] add perimeter_cb to strong test
tangxifan Jul 3, 2024
0c108e3
[test] add new test
tangxifan Jul 3, 2024
3ba211c
[vpr] fixed a bug on access invalid grid nodes
tangxifan Jul 3, 2024
a75f15a
[lib] relax check_rr_node on (x, y) range as now CHANX and CHANY can …
tangxifan Jul 3, 2024
0edc499
[vpr] typo on debug string
tangxifan Jul 4, 2024
e0808d9
[vpr] fix minor bug where sort edge is not applicable to boundary gsb…
tangxifan Jul 4, 2024
b171535
[vpr] fixing a bug where sorted edges are not located
tangxifan Jul 4, 2024
f4f607e
[vpr] now when cb on perimeter, I/O pins can access three sides
tangxifan Jul 4, 2024
fc85125
[vpr] syntax
tangxifan Jul 4, 2024
14640aa
[vpr] syntax
tangxifan Jul 4, 2024
2fc5d3c
[vpr] syntax
tangxifan Jul 4, 2024
5f6269b
[vpr] fixed a bug where perimeter cb are not connected to adjancet sbs
tangxifan Jul 4, 2024
14a9522
[vpr] fixing some bugs in rr gsb
tangxifan Jul 4, 2024
dabb815
[core] debug
tangxifan Jul 4, 2024
c756dae
[vpr] now change to a simpler rr gsb coordinate system: grid is moved…
tangxifan Jul 5, 2024
7f04baa
[vpr] update gsb builder in tileable rr graph for changing the coordi…
tangxifan Jul 5, 2024
fc53101
[vpr] syntax
tangxifan Jul 5, 2024
aa11639
[vpr] debugging
tangxifan Jul 5, 2024
d3a7212
[core] fixed a bug where gsb nodes are not correctly added
tangxifan Jul 5, 2024
d6e7859
[core] debug
tangxifan Jul 5, 2024
51f71cb
[core] debugging
tangxifan Jul 5, 2024
7342db8
[core] debug
tangxifan Jul 5, 2024
0d0e500
[core] debug
tangxifan Jul 5, 2024
335c58c
[core] fixed a critical bug
tangxifan Jul 5, 2024
edfb0dc
Minor changes for code clean-up
behzadmehmood Jul 9, 2024
fbb7a3c
Updating code to avoid possible memory leaks
behzadmehmood Jul 9, 2024
75e5434
Dynamically allocating memory for session key
behzadmehmood Jul 9, 2024
980a64b
Adding test for XML encryption/decryption
behzadmehmood Jul 10, 2024
9284bde
Updating CMake for libencrypt
behzadmehmood Jul 10, 2024
d8aaad4
Correcting typo and removing valgrind call from workflow file
behzadmehmood Jul 10, 2024
4a0493d
added unit test for libdecryption
NadeemYaseen Jul 13, 2024
7b563df
[core] fixed a bug where sb may go out of boundary
tangxifan Jul 8, 2024
b30308e
[core] code format
tangxifan Jul 8, 2024
cb31437
[core] debugging
tangxifan Jul 8, 2024
84eacb0
Create vib_inf.cpp
Wang-Yuanqi-source Oct 22, 2024
f8be3e3
Create vib_inf.h
Wang-Yuanqi-source Oct 22, 2024
344a1f1
Update rr_graph_storage.h
Wang-Yuanqi-source Oct 22, 2024
2bee895
Update physical_types.h
Wang-Yuanqi-source Oct 22, 2024
0d503d0
Update read_xml_arch_file.cpp
Wang-Yuanqi-source Oct 22, 2024
625c135
Update check_rr_graph.cpp
Wang-Yuanqi-source Oct 22, 2024
8022dfc
Update check_rr_graph.h
Wang-Yuanqi-source Oct 22, 2024
2beb254
Update rr_graph_uxsdcxx_serializer.h
Wang-Yuanqi-source Oct 22, 2024
758c6e6
Update SetupGrid.cpp
Wang-Yuanqi-source Oct 22, 2024
71f343c
Update vpr_api.cpp
Wang-Yuanqi-source Oct 22, 2024
893bc8e
Update vpr_context.h
Wang-Yuanqi-source Oct 22, 2024
8d0c209
Update connection_router.cpp
Wang-Yuanqi-source Oct 22, 2024
00c2648
Update overuse_report.cpp
Wang-Yuanqi-source Oct 22, 2024
936e84f
Update router_lookahead_map_utils.cpp
Wang-Yuanqi-source Oct 22, 2024
8916ce1
Update router_lookahead_map.cpp
Wang-Yuanqi-source Oct 22, 2024
51846a0
Update rr_graph.cpp
Wang-Yuanqi-source Oct 22, 2024
83aa0b7
Update tileable_rr_graph_builder.cpp
Wang-Yuanqi-source Oct 22, 2024
9da2f44
Update tileable_rr_graph_edge_builder.cpp
Wang-Yuanqi-source Oct 22, 2024
e0de9a7
Update tileable_rr_graph_edge_builder.h
Wang-Yuanqi-source Oct 22, 2024
ee2e4cd
Update tileable_rr_graph_gsb.cpp
Wang-Yuanqi-source Oct 22, 2024
a06cf9b
Update tileable_rr_graph_gsb.h
Wang-Yuanqi-source Oct 22, 2024
651a51c
Update tileable_rr_graph_node_builder.cpp
Wang-Yuanqi-source Oct 22, 2024
0a32c0b
Update tileable_rr_graph_node_builder.h
Wang-Yuanqi-source Oct 22, 2024
44a5e0a
Update vpr_utils.cpp
Wang-Yuanqi-source Oct 22, 2024
dfdc7d1
Update vpr_utils.h
Wang-Yuanqi-source Oct 22, 2024
78bc7f9
Update tileable_chan_details_builder.cpp
Wang-Yuanqi-source Oct 22, 2024
891e0b1
[core] adapt to side var changes
tangxifan Oct 7, 2024
bc94978
[core] fixed a bug where sink node cannot be mirror
tangxifan Oct 7, 2024
1597cfd
[core] fix the bug where skip sync-routing results are not applicable…
tangxifan Oct 17, 2024
3806dcc
Update tileable_rr_graph_gsb.cpp
Wang-Yuanqi-source Nov 4, 2024
cafd0b9
Update rr_spatial_lookup.cpp
Wang-Yuanqi-source Nov 4, 2024
6ac45f3
Update rr_gsb.cpp
Wang-Yuanqi-source Nov 4, 2024
62e1809
Update tileable_rr_graph_gsb.h
Wang-Yuanqi-source Nov 4, 2024
bd7c78e
Update tileable_rr_graph_node_builder.cpp
Wang-Yuanqi-source Nov 4, 2024
664e31b
Update tileable_rr_graph_node_builder.h
Wang-Yuanqi-source Nov 4, 2024
9af7da2
Update check_rr_graph.cpp
Wang-Yuanqi-source Nov 4, 2024
cef788c
Update check_rr_graph.h
Wang-Yuanqi-source Nov 4, 2024
edb7971
Update vib_inf.h
Wang-Yuanqi-source Nov 4, 2024
12112ea
Update physical_types.h
Wang-Yuanqi-source Nov 4, 2024
d06f57a
Update vib_inf.cpp
Wang-Yuanqi-source Nov 4, 2024
239a492
Update read_xml_arch_file.cpp
Wang-Yuanqi-source Nov 4, 2024
3e2b982
Update SetupVPR.cpp
Wang-Yuanqi-source Nov 4, 2024
310fd0d
Update SetupGrid.cpp
Wang-Yuanqi-source Nov 4, 2024
b23868e
Update SetupGrid.h
Wang-Yuanqi-source Nov 4, 2024
19eb088
Create SetupVibGrid.cpp
Wang-Yuanqi-source Nov 4, 2024
9647af3
Create SetupVibGrid.h
Wang-Yuanqi-source Nov 4, 2024
b3f3646
Update vpr_api.cpp
Wang-Yuanqi-source Nov 4, 2024
5693364
Update vpr_context.h
Wang-Yuanqi-source Nov 4, 2024
1b8de6d
Update rr_graph.xsd
Wang-Yuanqi-source Nov 4, 2024
f846637
Update tileable_rr_graph_edge_builder.cpp
Wang-Yuanqi-source Nov 4, 2024
5945527
Update tileable_rr_graph_edge_builder.h
Wang-Yuanqi-source Nov 4, 2024
c1a8c08
Update rr_graph.cpp
Wang-Yuanqi-source Nov 4, 2024
988e67d
Update rr_graph_uxsdcxx_serializer.h
Wang-Yuanqi-source Nov 4, 2024
0aea77b
Update overuse_report.cpp
Wang-Yuanqi-source Nov 4, 2024
ea06d3d
Update router_lookahead_map.cpp
Wang-Yuanqi-source Nov 4, 2024
2f232e4
Update router_lookahead_map_utils.cpp
Wang-Yuanqi-source Nov 4, 2024
ed19f2e
Update rr_gsb.h
Wang-Yuanqi-source Nov 4, 2024
27b8b77
Update tileable_rr_graph_node_builder.cpp
Wang-Yuanqi-source Nov 25, 2024
ae9a2d4
Update SetupVibGrid.cpp
Wang-Yuanqi-source Nov 25, 2024
279168d
Update tileable_rr_graph_builder.cpp
Wang-Yuanqi-source Nov 25, 2024
33a0f57
Update tileable_rr_graph_edge_builder.cpp
Wang-Yuanqi-source Nov 25, 2024
3ecf4d0
Update tileable_rr_graph_gsb.cpp
Wang-Yuanqi-source Nov 25, 2024
d92e8ff
Update rr_gsb.h
Wang-Yuanqi-source Nov 25, 2024
2500737
Update tileable_rr_graph_gsb.h
Wang-Yuanqi-source Nov 25, 2024
2eb51e1
Update tileable_rr_graph_edge_builder.h
Wang-Yuanqi-source Nov 25, 2024
8b3595b
Update vib_inf.h
Wang-Yuanqi-source Nov 25, 2024
3fb902b
Update vib_inf.cpp
Wang-Yuanqi-source Nov 25, 2024
f0b87d7
Update tileable_rr_graph_gsb.cpp
Wang-Yuanqi-source Nov 25, 2024
8cdf123
Update index.rst
Wang-Yuanqi-source Nov 29, 2024
d46a4c8
Create VIB.rst
Wang-Yuanqi-source Nov 29, 2024
26c1bf4
Add files via upload
Wang-Yuanqi-source Nov 29, 2024
2fccc85
Create vib_test_arch.xml
Wang-Yuanqi-source Nov 29, 2024
febef05
Create music.blif
Wang-Yuanqi-source Nov 29, 2024
7f8de6b
Add files via upload
Wang-Yuanqi-source Nov 29, 2024
6b7519b
[lib] syntax
tangxifan Nov 13, 2024
70580f1
[core] resolve conflicts
tangxifan Nov 13, 2024
6133075
Update vib_test_arch.xml
Wang-Yuanqi-source Jan 18, 2025
c52b71c
Create config.txt
Wang-Yuanqi-source Jan 18, 2025
6d05273
Create golden_results.txt
Wang-Yuanqi-source Jan 18, 2025
f7e11e1
Update task_list.txt
Wang-Yuanqi-source Jan 18, 2025
296366d
Update VIB.rst
Wang-Yuanqi-source Feb 11, 2025
9c00bc0
Update VIB.rst
Wang-Yuanqi-source Feb 11, 2025
554d456
Update VIB.rst
Wang-Yuanqi-source Feb 11, 2025
2c57780
Update VIB.rst
Wang-Yuanqi-source Feb 11, 2025
f9634ef
Update VIB.rst
Wang-Yuanqi-source Feb 11, 2025
e184624
Update VIB.rst
Wang-Yuanqi-source Feb 11, 2025
8b11be1
Delete doc/src/Images/double-level.png
Wang-Yuanqi-source Feb 11, 2025
6033ae7
Add files via upload
Wang-Yuanqi-source Feb 11, 2025
bad02cd
Add files via upload
Wang-Yuanqi-source Feb 11, 2025
9e96996
Update VIB.rst
Wang-Yuanqi-source Feb 11, 2025
6890759
Update VIB.rst
Wang-Yuanqi-source Feb 11, 2025
a959673
Update VIB.rst
Wang-Yuanqi-source Feb 12, 2025
1526e7d
Update VIB.rst
Wang-Yuanqi-source Feb 12, 2025
192663f
Update VIB.rst
Wang-Yuanqi-source Feb 12, 2025
d88844f
Add files via upload
Wang-Yuanqi-source Feb 12, 2025
4af373e
Rename example.png to vib_example.png
Wang-Yuanqi-source Feb 12, 2025
b35ed18
Update VIB.rst
Wang-Yuanqi-source Feb 12, 2025
862936a
Update VIB.rst
Wang-Yuanqi-source Feb 12, 2025
116dca7
[core] syntax
tangxifan Jan 13, 2025
2c62fd2
[core] clang warning
tangxifan Jan 17, 2025
4716a1d
[core] clang warning
tangxifan Jan 17, 2025
0fd6650
[core] compiler warning
tangxifan Jan 17, 2025
9a28fd8
[core] clang syntax
tangxifan Jan 17, 2025
7fc4a55
fix merging issues
amin1377 Apr 14, 2025
3a43d39
[submodule] update submodules
amin1377 Apr 14, 2025
2249b5d
[vpr][utils] make alloc_and_load_pb_graph_pin_lookup_from_index and f…
amin1377 Apr 14, 2025
977787a
[vpr][util] remove unused functions
amin1377 Apr 14, 2025
7fb5465
fix merge conflits
amin1377 Apr 14, 2025
8203e9a
fix compile errors
amin1377 Apr 14, 2025
0a779ae
make format
amin1377 Apr 14, 2025
0e1a907
Merge branch 'openfpga' into openfpga_update
amin1377 Apr 15, 2025
1eea779
[pugixml] fix deleting pointer
amin1377 Apr 15, 2025
6acee2b
[read_xml] revert new changes
amin1377 Apr 15, 2025
14680bd
remove unused vars
amin1377 Apr 15, 2025
ec72fff
[vib] return -1 if a valid index is not found
amin1377 Apr 15, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
9 changes: 5 additions & 4 deletions .clang-format
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ AllowShortIfStatementsOnASingleLine: true
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: true
AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: true
BinPackArguments: true
BinPackParameters: false
Expand All @@ -34,7 +34,7 @@ BraceWrapping:
SplitEmptyFunction: false
SplitEmptyRecord: true
SplitEmptyNamespace: true
BreakBeforeBinaryOperators: All
BreakBeforeBinaryOperators: NonAssignment
BreakBeforeBraces: Custom
BreakBeforeInheritanceComma: false
BreakBeforeTernaryOperators: true
Expand Down Expand Up @@ -68,10 +68,11 @@ IncludeIsMainRegex: '([-_](test|unittest))?$'
IndentCaseLabels: true
IndentWidth: 4
IndentWrappedFunctionNames: false
IndentPPDirectives: AfterHash
IndentPPDirectives: None
InsertNewlineAtEOF: true
JavaScriptQuotes: Leave
JavaScriptWrapImports: true
KeepEmptyLinesAtTheStartOfBlocks: false
KeepEmptyLinesAtTheStartOfBlocks: true
MacroBlockBegin: ''
MacroBlockEnd: ''
MaxEmptyLinesToKeep: 1
Expand Down
5 changes: 2 additions & 3 deletions .github/scripts/hostsetup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -70,9 +70,8 @@ apt install -y \
g++-9 \
gcc-9 \
wget \
openssl \
libssl-dev \
libtbb-dev
libtbb-dev \
openssl

# installing the latest version of cmake
apt install -y apt-transport-https ca-certificates gnupg
Expand Down
5 changes: 2 additions & 3 deletions .github/scripts/install_dependencies.sh
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,8 @@ sudo apt install -y \
clang-16 \
clang-17 \
clang-18 \
clang-format-14 \
libtbb-dev \
openssl
clang-format-18 \
libtbb-dev

pip install -r requirements.txt

Expand Down
6 changes: 2 additions & 4 deletions .github/workflows/nightly_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,6 @@ on:
# - '**.md'
# - '**.rst'
workflow_dispatch:
schedule:
- cron: '0 0 * * *' # daily

# We want to cancel previous runs for a given PR or branch / ref if another CI
# run is requested.
Expand Down Expand Up @@ -65,9 +63,9 @@ jobs:
- {test: "vtr_reg_strong", cores: "16", options: "", cmake: "-DVTR_ASSERT_LEVEL=3", extra_pkgs: "libeigen3-dev"}
- {test: "vtr_reg_strong_odin", cores: "16", options: "", cmake: "-DVTR_ASSERT_LEVEL=3 -DWITH_ODIN=ON", extra_pkgs: "libeigen3-dev"}
- {test: "vtr_reg_strong_odin", cores: "16", options: "-skip_qor", cmake: "-DVTR_ASSERT_LEVEL=3 -DVTR_ENABLE_SANITIZE=ON -DWITH_ODIN=ON", extra_pkgs: "libeigen3-dev"}
# - {test: "vtr_reg_system_verilog", cores: "16", options: "", cmake: "-DYOSYS_F4PGA_PLUGINS=ON", extra_pkgs: ""} # Test turned off -> F4PGA conflicts with Yosys (version 42)
- {test: "vtr_reg_system_verilog", cores: "16", options: "", cmake: "-DSYNLIG_SYSTEMVERILOG=ON", extra_pkgs: ""}
- {test: "odin_reg_strong", cores: "16", options: "", cmake: "-DWITH_ODIN=ON", extra_pkgs: ""}
- {test: "parmys_reg_strong", cores: "16", options: "", cmake: "-DYOSYS_F4PGA_PLUGINS=OFF", extra_pkgs: ""}
- {test: "parmys_reg_strong", cores: "16", options: "", cmake: "-DSYNLIG_SYSTEMVERILOG=ON", extra_pkgs: ""}

env:
DEBIAN_FRONTEND: "noninteractive"
Expand Down
106 changes: 106 additions & 0 deletions .github/workflows/nightly_test_manual.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
name: NightlyTestManual

# This workflow can only be dispatched.
on:
workflow_dispatch:

# Automatically runs every Sunday 5 AM UTC.
# Results should be ready ~15 hours later (Sunday 8 PM UTC), on time for Monday mornings.
schedule:
- cron: '0 5 * * 0'

# We want to cancel previous runs for a given PR or branch / ref if another CI
# run is requested.
# See: https://docs.github.com/en/actions/using-jobs/using-concurrency
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

env:
# default compiler for all non-compatibility tests
MATRIX_EVAL: "CC=gcc-13 && CXX=g++-13"

jobs:
Run-tests:
# Prevents from running on forks where no custom runners are available
if: ${{ github.repository_owner == 'verilog-to-routing' }}

name: 'Nightly Tests Manual Run'
# This workflow is expected to take around 19 hours. Giving it 24 hours
# before timing out.
timeout-minutes: 1440
runs-on: [self-hosted, Linux, X64, SAVI]

steps:
# Clean previous runs of this workflow.
- name: 'Cleanup build folder'
run: |
rm -rf ./* || true
rm -rf ./.??* || true

# Checkout the VTR repo.
- uses: actions/checkout@v4
with:
submodules: 'true'

# Get the extra benchmarks
- name: 'Get Extra Benchmarks'
run: |
make get_titan_benchmarks
make get_ispd_benchmarks
./dev/upgrade_vtr_archs.sh
make get_symbiflow_benchmarks

# Build VTR using the default build options.
- name: 'Build VTR'
run: |
make -j12
make env
source .venv/bin/activate
pip install -r requirements.txt

# Run all of the nightly tests.
# TODO: We could expose more parallelism if we had one task list which ran
# all of these.
- name: 'Run Nightly Test 1'
if: success() || failure()
run: |
source .venv/bin/activate
./run_reg_test.py -j12 vtr_reg_nightly_test1

- name: 'Run Nightly Test 2'
if: success() || failure()
run: |
source .venv/bin/activate
./run_reg_test.py -j12 vtr_reg_nightly_test2

- name: 'Run Nightly Test 3'
if: success() || failure()
run: |
source .venv/bin/activate
./run_reg_test.py -j12 vtr_reg_nightly_test3


- name: 'Run Nightly Test 4'
if: success() || failure()
run: |
source .venv/bin/activate
./run_reg_test.py -j12 vtr_reg_nightly_test4

- name: 'Run Nightly Test 5'
if: success() || failure()
run: |
source .venv/bin/activate
./run_reg_test.py -j12 vtr_reg_nightly_test5

- name: 'Run Nightly Test 6'
if: success() || failure()
run: |
source .venv/bin/activate
./run_reg_test.py -j12 vtr_reg_nightly_test6

- name: 'Run Nightly Test 7'
if: success() || failure()
run: |
source .venv/bin/activate
./run_reg_test.py -j12 vtr_reg_nightly_test7
3 changes: 2 additions & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,8 @@ jobs:
with:
python-version: 3.10.10
- uses: actions/checkout@v4
with:
submodules: 'true'

- name: Install dependencies
run: ./.github/scripts/install_dependencies.sh
Expand Down Expand Up @@ -439,7 +441,6 @@ jobs:
- { name: 'GCC 11 (Ubuntu Noble - 24.04)', eval: 'CC=gcc-11 && CXX=g++-11', }
- { name: 'GCC 12 (Ubuntu Noble - 24.04)', eval: 'CC=gcc-12 && CXX=g++-12', }
- { name: 'GCC 14 (Ubuntu Noble - 24.04)', eval: 'CC=gcc-14 && CXX=g++-14', }
- { name: 'Clang 15 (Ubuntu Noble - 24.04)', eval: 'CC=clang-15 && CXX=clang++-15', }
- { name: 'Clang 16 (Ubuntu Noble - 24.04)', eval: 'CC=clang-16 && CXX=clang++-16', }
- { name: 'Clang 17 (Ubuntu Noble - 24.04)', eval: 'CC=clang-17 && CXX=clang++-17', }
- { name: 'Clang 18 (Ubuntu Noble - 24.04)', eval: 'CC=clang-18 && CXX=clang++-18', }
Expand Down
4 changes: 3 additions & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
[submodule "libs/EXTERNAL/libcatch2"]
path = libs/EXTERNAL/libcatch2
url = https://github.com/catchorg/Catch2.git

# fork where in branch v1.0.0_no_complication_warnings there are compilation warnings fixes for upstream tag v1.0.0 of sockpp
[submodule "libs/EXTERNAL/sockpp"]
path = libs/EXTERNAL/sockpp
url = https://github.com/w0lek/sockpp.git # fork where in branch v1.0.0_no_complication_warnings there are compilation warnings fixes for upstream tag v1.0.0 of sockpp
url = https://github.com/w0lek/sockpp.git
1 change: 1 addition & 0 deletions .gitpod.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ RUN apt-get update \
python-lxml \
qt5-default \
wget \
default-jre \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*

Expand Down
58 changes: 58 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,64 @@ _The following are changes which have been implemented in the VTR master branch

### Removed


## v9.0.0 - 2024-12-23

### Added
* Support for Advanced Architectures:
* 3D FPGA and RAD architectures.
* Architectures with hard Networks-on-Chip (NoCs).
* Distinct horizontal and vertical channel widths and types.
* Diagonal routing wires and other complex wire shapes (L-shaped, T-shaped, ....).

* New Benchmark Suites:
* Koios: A deep-learning-focused benchmark suite with various design sizes.
* Hermes: Benchmarks utilizing hard NoCs.
* TitanNew: Large benchmarks targeting the Stratix 10 architecture.

* Commercial FPGAs Architecture Captures:
* Intel’s Stratix 10 FPGA architecture.
* AMD’s 7-series FPGA architecture.

* Parmys Logic Synthesis Flow:
* Better Verilog language coverage
* More efficient hard block mapping

* VPR Graphics Visualizations:
* New interface for improved usability and underlying graphics rewritten using EZGL/GTK to allow more UI widgets.
* Algorithm breakpoint visualizations for placement and routing algorithm debugging.
* User-guided (manual) placement optimization features.
* Enabled a live connection for client graphical application to VTR engines through sockets (server mode).
* Interactive timing path analysis (IPA) client using server mode.

* Performance Enhancements:
* Parallel router for faster inter-cluster routing or flat routing.

* Re-clustering API to modify packing decisions during the flow.
* Support for floorplanning and placement constraints.
* Unified intra- and inter-cluster (flat) routing.
* Comprehensive web-based VTR utilities and API documentation.

### Changed
* The default values of many command line options (e.g. inner_num is 0.5 instead of 1.0)
* Changes to placement engine
* Smart centroid initial placement algorithm.
* Multiple smart placement directed moves.
* Reinforcement learning-based placement algorithm.
* Changes to routing engine
* Faster lookahead creation.
* More accurate lookahead for large blocks.
* More efficient heap and pruning strategies.
* max `pres_fac` capped to avoid possible numeric issues.


### Fixed
* Many algorithmic and coding bugs are fixed in this release

### Removed
* Breadth-first (non-timing-driven) router.
* Non-linear congestion placement cost.

## v8.0.0 - 2020-03-24

### Added
Expand Down
19 changes: 9 additions & 10 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,6 @@ option(VTR_ENABLE_SANITIZE "Enable address/leak/undefined-behaviour sanitizers (
option(VTR_ENABLE_PROFILING "Enable performance profiler (gprof)" OFF)
option(VTR_ENABLE_COVERAGE "Enable code coverage tracking (gcov)" OFF)
option(VTR_ENABLE_DEBUG_LOGGING "Enable debug logging" OFF)
option(VTR_ENABLE_VERSION "Enable version number up-to-date during compilation" ON)
option(VTR_ENABLE_VERBOSE "Enable increased debug verbosity" OFF)
option(SPEC_CPU "Enable SPEC CPU v8 support" OFF)

Expand Down Expand Up @@ -61,10 +60,10 @@ option(ODIN_SANITIZE "Enable building odin with sanitize flags" OFF)

# Allow the user to enable building Yosys
option(WITH_PARMYS "Enable Yosys as elaborator and parmys-plugin as partial mapper" ON)
option(YOSYS_F4PGA_PLUGINS "Enable building and installing Yosys SystemVerilog and UHDM plugins" OFF)
option(SYNLIG_SYSTEMVERILOG "Enable building and installing Synlig SystemVerilog and UHDM plugins" OFF)

set(VTR_VERSION_MAJOR 8)
set(VTR_VERSION_MINOR 1)
set(VTR_VERSION_MAJOR 9)
set(VTR_VERSION_MINOR 0)
set(VTR_VERSION_PATCH 0)
set(VTR_VERSION_PRERELEASE "dev")

Expand Down Expand Up @@ -94,9 +93,9 @@ add_definitions("-DVTR_ASSERT_LEVEL=${VTR_ASSERT_LEVEL}")
include(CheckCXXCompilerFlag)

#
# We require c++17 support
# We require c++20 support
#
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF) #No compiler specific extensions

Expand Down Expand Up @@ -161,7 +160,7 @@ else()
"-Wcast-align" #Warn if a cast causes memory alignment changes
"-Wshadow" #Warn if local variable shadows another variable
"-Wformat=2" #Sanity checks for printf-like formatting
"-Wno-format-nonliteral" # But don't worry about non-literal formtting (i.e. run-time printf format strings)
"-Wno-format-nonliteral" # But don't worry about non-literal formatting (i.e. run-time printf format strings)
"-Wlogical-op" #Checks for logical op when bit-wise expected
"-Wmissing-declarations" #Warn if a global function is defined with no declaration
"-Wmissing-include-dirs" #Warn if a user include directory is missing
Expand All @@ -179,10 +178,10 @@ else()
"-Wduplicated-cond" #Warn about identical conditions in if-else chains
"-Wduplicated-branches" #Warn when different branches of an if-else chain are equivalent
"-Wnull-dereference" #Warn about null pointer dereference execution paths
"-Wuninitialized" #Warn about unitialized values
"-Wuninitialized" #Warn about uninitialized values
"-Winit-self" #Warn about self-initialization
"-Wcatch-value=3" #Warn when catch statements don't catch by reference
"-Wextra-semi" #Warn about redudnant semicolons
"-Wextra-semi" #Warn about redundant semicolons
"-Wimplicit-fallthrough=3" #Warn about case fallthroughs, but allow 'fallthrough' comments to suppress warnings
#GCC-like optional
#"-Wsuggest-final-types" #Suggest where 'final' would help if specified on a type methods
Expand Down Expand Up @@ -454,7 +453,7 @@ if(${WITH_ODIN})
endif()

# handle cmake params to compile Yosys SystemVerilog/UHDM plugins
if(${YOSYS_F4PGA_PLUGINS})
if(${SYNLIG_SYSTEMVERILOG})
# avoid compiling plugins in case the Parmys frontend is not active
if(NOT ${WITH_PARMYS})
message(SEND_ERROR "Utilizing SystemVerilog/UHDM plugins requires activating Parmys frontend. Please set WITH_PARMYS.")
Expand Down
1 change: 1 addition & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ RUN apt-get update -qq \
&& apt-get -y install --no-install-recommends \
wget \
ninja-build \
default-jre \
libeigen3-dev \
libtbb-dev \
python3-pip \
Expand Down
Loading
Loading