-
Notifications
You must be signed in to change notification settings - Fork 415
Custom pin assignment results in unroutability errors. #181
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
Comments
kmurray
added a commit
that referenced
this issue
Apr 19, 2017
Previously this was not checked and exhibited itself as unconnectible pins during routing, with no obvious cause (see Github issue #181).
b568631 adds extra error checking to detect pins missing pin locations. Your original architecture now produces the following error message:
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Expected Behaviour
When I change the setting in the architecture file from 'spread' pin locations (which produces only left output pins for my test architecture) to custom pin location set to left output, I expect the same routing result.
Current Behaviour
Using
<pinlocations pattern="spread"/>
, my design routes perfectly, with all of the outputs from basic BLE going out from the left pin.When I comment out the above line and instead say the following,
I get VPR errors such as the following
WARNING(2): in check_rr_graph: fringe node 53 has no fanin.
This is possible on a fringe node based on low Fc_out, N, and certain lengths.
ERROR(1): in check_rr_graph: node 145 has no fanin.
ERROR(2): in check_rr_graph: node 146 has no fanin.
ERROR(3): in check_rr_graph: node 147 has no fanin.
ERROR(4): in check_rr_graph: node 155 has no fanin.
ERROR(5): in check_rr_graph: node 156 has no fanin.
ERROR(6): in check_rr_graph: node 157 has no fanin.
ERROR(7): in check_rr_graph: node 165 has no fanin.
ERROR(8): in check_rr_graph: node 166 has no fanin.
ERROR(9): in check_rr_graph: node 167 has no fanin.
.
.
.
.
Build rr_graph took 0.006289 seconds.
Confirming router algorithm: TIMING_DRIVEN.
WARNING(3): Empty heap occurred in get_heap_head.
WARNING(4): Some blocks are impossible to connect in this architecture.
Cannot route net #11 (top^a~3) to sink #1 -- no possible path. //NOTE: this is actually the nets from my own circuit.
Routing failed.
Using low: 6, high: -1, current: 12
WARNING(5): in check_rr_graph: fringe node 53 has no fanin.
This is possible on a fringe node based on low Fc_out, N, and certain lengths.
ERROR(76): in check_rr_graph: node 145 has no fanin.
ERROR(77): in check_rr_graph: node 146 has no fanin.
ERROR(78): in check_rr_graph: node 147 has no fanin.
.
.
.
.
.
.
Using low: 768, high: -1, current: 1536
ERROR(601):
Type: Routing
File: SRC/base/place_and_route.c
Line: 343
Message: This circuit requires a channel width above 1000, probably is not going to route.
Aborting routing procedure.
<<<
One observation I have made is that it says 'routing algorithm used : TIMING_DRIVEN' yet the options '--timing_analysis off --timing_driven_clustering off' have been supplied..
Reproducing Error
I am using the latest master version.
I have only tested reproducibility with the K4_90_nm.xml architecture with the edits made as stated above.
(Spread changed to Custom).
The verilog file I have tested was the ch_intrinsics.v and was run with the following :
Please let me know if any other Context or System specs are needed.
Regards
Calvin
The text was updated successfully, but these errors were encountered: