fvm.toolchains.toolchains module
Toolchain interface for FVM
- fvm.toolchains.toolchains.define_steps(framework, steps, toolchain)[source]
Import the corresponding toolchain module and call its define_steps function to define the steps in the framework.
- Parameters:
framework (fvm.framework.FvmFramework) – the FvmFramework object
steps (fvm.steps.Steps) – the Steps object where the steps will be registered
toolchain (str) – toolchain name
- fvm.toolchains.toolchains.formal_initialize_reset(framework, toolchain, reset, active_high=True, cycles=1)[source]
Import the corresponding toolchain module and call its formal_initialize_reset function to initialize the design with a reset sequence.
- Parameters:
framework (fvm.framework.FvmFramework) – the FvmFramework object
toolchain (str) – toolchain name
reset (str) – reset signal name
active_high (bool) – True if the reset is active high, False if active low. Defaults to True
cycles (int) – number of cycles to hold the reset
- fvm.toolchains.toolchains.generics_to_args(toolchain, generics)[source]
Import the corresponding toolchain module and call its generics_to_args function to convert generics to command line arguments.
- Parameters:
toolchain (str) – toolchain name
generics (dict) – dictionary of generics
- fvm.toolchains.toolchains.get_default_flags(toolchain)[source]
Returns tool flags for a specific toolchain
- Parameters:
toolchain (str) – toolchain name
- Returns:
list of default flags
- Return type:
list
- fvm.toolchains.toolchains.get_linecheck_patterns(framework, step=None)[source]
Import the corresponding toolchain module and call its get_linecheck_{step} function to obtain patterns.
- Parameters:
framework (fvm.framework.FvmFramework) – the FvmFramework object
step (str or None) – step name (optional)
- fvm.toolchains.toolchains.get_toolchain()[source]
Get the toolchain from a specific environment variable. If the environment variable is not set, the value of DEFAULT_TOOLCHAIN is returned.
In the future, if the environment variable is not set, we plan to auto-detect which tools are available in the PATH and assign the first we find (with some priority)
- Returns:
toolchain name
- Return type:
str
- fvm.toolchains.toolchains.set_coverage_goal(toolchain, step, goal)[source]
Import the corresponding toolchain module and call its set_coverage_goal function to set the coverage goal for a specific step.
- Parameters:
toolchain (str) – toolchain name
step (str) – step name
goal (int or float) – coverage goal
- fvm.toolchains.toolchains.set_timeout(framework, toolchain, step, timeout)[source]
Import the corresponding toolchain module and call its set_timeout function to set the timeout for a specific step.
- Parameters:
framework (fvm.framework.FvmFramework) – the FvmFramework object
toolchain (str) – toolchain name
step (str) – step name
timeout (str) – timeout