CIRCT 22.0.0git
|
Classes | |
struct | Impl |
Internal implementation for LongestPathAnalysis. More... | |
Public Member Functions | |
__init__ (self, module, bool collect_debug_info=True, bool keep_only_max_delay_paths=False, bool lazy_computation=False) | |
LongestPathCollection | get_paths (self, value, int bit_pos, bool elaborate_paths=True) |
LongestPathCollection | get_all_paths (self, str module_name, bool elaborate_paths=True) |
Public Attributes | |
analysis | |
Main interface for performing longest path analysis on AIG circuits. This class provides a Python wrapper around the C++ LongestPathAnalysis, enabling timing analysis of AIG (And-Inverter Graph) circuits. It can identify critical timing paths and provide detailed path information. Attributes: analysis: The underlying C++ analysis object
aig.LongestPathAnalysis.__init__ | ( | self, | |
module, | |||
bool | collect_debug_info = True , |
||
bool | keep_only_max_delay_paths = False , |
||
bool | lazy_computation = False |
||
) |
Initialize the longest path analysis for a given module. Args: module: The MLIR module to analyze collect_debug_info: Whether to include debug points in the analysis. Debug points provide additional information about the path, but increase analysis time and memory usage. keep_only_max_delay_paths: Keep only maximum-delay paths in collections. lazy_computation: Enable lazy (on-demand) computation.
Definition at line 350 of file aig.py.
Referenced by aig.LongestPathCollection.merge().
LongestPathCollection aig.LongestPathAnalysis.get_all_paths | ( | self, | |
str | module_name, | ||
bool | elaborate_paths = True |
||
) |
Perform longest path analysis and return all timing paths inside the module hierarchy. This method analyzes the specified module and returns a collection of all timing paths, sorted by delay in descending order. Args: module_name: Name of the module to analyze Returns: LongestPathCollection containing all paths sorted by delay
Definition at line 386 of file aig.py.
References aig.LongestPathAnalysis.analysis, LongestPathAnalysisWrapper.analysis, DatapathCompressOpConversion.analysis, ArcInliner.analysis, and aig.LongestPathAnalysis.get_all_paths().
Referenced by aig.LongestPathAnalysis.get_all_paths().
LongestPathCollection aig.LongestPathAnalysis.get_paths | ( | self, | |
value, | |||
int | bit_pos, | ||
bool | elaborate_paths = True |
||
) |
Perform longest path analysis and return all timing paths to the specified value and bit position. Args: value: The value to analyze bit_pos: The bit position to analyze elaborate_paths: Whether to elaborate the paths with detailed information Returns: LongestPathCollection containing all paths sorted by delay
Definition at line 369 of file aig.py.
References aig.LongestPathAnalysis.analysis, LongestPathAnalysisWrapper.analysis, DatapathCompressOpConversion.analysis, ArcInliner.analysis, and aig.LongestPathAnalysis.get_paths().
Referenced by aig.LongestPathAnalysis.get_paths().
aig.LongestPathAnalysis.analysis |
Definition at line 365 of file aig.py.
Referenced by aig.LongestPathAnalysis.get_all_paths(), and aig.LongestPathAnalysis.get_paths().