Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description:
This PR introduces a set of functions for tracing the flow of signals in an FPGA bitstream. It accounts for intertile connections and supports tracing through LUTs and flip-flops. This PR also applies the introduced tracing functions to
find_sdram_pins
allowing us to find pins using only one or two bitstreams.Important Functions:
Visualization:
The tracing module also includes a visualization function that highlights active tiles in a path, providing a high-level overview of signal flow in the bitstream. This function uses matplotlib, with the import hidden within the function.
Example Usage:
Other Changes:
Codegen :
The
PnR
class in the codegen module was updated to support non-netlist type design files, and default parameters were added to the configuration classes. These changes should not affect any existing scripts.find_sdram_pin Results
The results of using tracing to identify sdram pins are identical to current results, with the exception of the results for the GW1NS-4. I am inclined to think tracing identifies the correct pins (the current results assign the same IO to multiple hyperram ports), but I have not been able to confirm this. The results are in this attached file:
compare.txt
Demo:
A small demo of the visualization function is included in the GIF below.