...
Table of Contents | ||||
---|---|---|---|---|
|
General
destroy()
This method is used to destroy the analyzer object.
This method takes no argument.
Once the analyzer is destroyed every python variable referencing it becomes obsolete so nxpython behavior is safe.
Example:
Code Block | ||
---|---|---|
| ||
analyzer = project.createAnalyzer()
analyzer.launch()
analyzer.destroy() |
launch(parameters)
This method is used to run the static timing analysis.
The analyzer computes a maximum of 'searchPathsLimit' paths for each domain, considering only the paths which slack is less than or equal to 'maximumSlack'.
Temperature and voltage can also be supplied to adjust timing values.
When not given, the parameters take their default values.
Arguments:
Name | Type | Description |
parameters | dictionary | Keys are the names of the parameters to set (see following table), values must match the type specified. |
Available Parameters:
Name | Type | Description (Default value in bold) |
searchPathLimit | unsigned | maximum number of paths computed for each domain. (default value is 10) |
maximumSlack | integer | maximum reportable slack in ps. (default is unlimited) |
conditions | string
| ‘bestcase’ : Voltage = typical core voltage + 0.1V Temperature = -40°C 'typical’ : Voltage = typical core voltage Temperature = 25°C ‘worstcase’ : Voltage = typical core voltage - 0.1V Temperature = 125°C |
Example:
Code Block | ||
---|---|---|
| ||
analyzer = project.createAnalyzer()
parameters = { 'searchPathLimit': 15, 'conditions': 'worstcase'}
analyzer.launch (parameters)
parameters = { 'searchPathLimit': 15, ‘maximumSlack’ : 500, 'conditions': 'worstcase' }
analyzer.launch (parameters) |
Note |
---|
The project step must be at the minimum “prepared” to run this method. |
preAnalyze()
This method is used to analyze timing constraints without running the static timing analysis.
This method takes no argument.
Example:
Code Block | ||
---|---|---|
| ||
project.createClock(target = 'getClockNet(CLK)', name ='clk', period = 8, rising = 0, falling = 4)
analyzer = project.createAnalyzer()
analyzer.preAnalyze() |
developCKGs()
This method automatically creates a generated clock constraint on each output of the PLLs and WFGs in current project. This constraint is used by timing driven algorithms and static timing analysis.
...
clearTimingConstraints()
This method is used to reset clear all design constraints from the current project.
Reseted Cleared constraints can be clocks, generated clocks, derived clocks of PLLs and WFGs, input delays, output delays, clock groups, analysis case, false paths, multicycle paths, min delay paths, and max delays paths.
...
Code Block |
---|
p.createClock(target=getClockNet('clk1'),name='clk1',period=20.000,rising=0,falling=10.000) #Clk1 is created with 50 MHz frequency p.resetTimingConstraintsclearTimingConstraints() |
Clock Creation
createClock( target = ‘target', name = ‘name’, period = ]0, ], rising = [0,period[, falling = ]rising, rising+period] )
...