pyIPCMI.ToolChain.Aldec.ActiveHDL

Exceptions

  • ActiveHDLException: An ActiveHDLException is raised if Active-HDL catches a system exception.

Classes

  • AldecActiveHDLEditions: Enumeration of all Active-HDL editions provided by Aldec itself.
  • ActiveHDLEditions: Enumeration of all Active-HDL editions provided by Aldec inclusive editions
  • Configuration: Base class for all tool Configuration classes.
  • ActiveHDL: Factory for executable abstractions in Active-HDL.
  • VHDLLibraryTool: Abstraction layer of Active-HDL’s VHDL library management tool ‘vlib’.
  • VHDLCompiler: Abstraction layer of Active-HDL’s VHDL compiler ‘vcom’.
  • VHDLStandaloneSimulator: Abstraction layer of Active-HDL’s VHDL standalone simulator ‘vsimsa’.

Functions

  • VLibFilter(): A line based output stream filter for Active-HDL’s VHDL library management
  • VComFilter(): A line based output stream filter for Active-HDL’s VHDL compiler.
  • VSimFilter(): A line based output stream filter for Active-HDL’s VHDL simulator.
exception pyIPCMI.ToolChain.Aldec.ActiveHDL.ActiveHDLException(message='')[source]

An ActiveHDLException is raised if Active-HDL catches a system exception.

Inheritance

Inheritance diagram of ActiveHDLException

Members

__init__(message='')

Exception initializer

Parameters:message (str) – The exception message.
__str__()

Returns the exception’s message text.

args
class pyIPCMI.ToolChain.Aldec.ActiveHDL.AldecActiveHDLEditions(name, section)[source]

Enumeration of all Active-HDL editions provided by Aldec itself.

Inheritance

Inheritance diagram of AldecActiveHDLEditions

Members

StandardEdition = 1
StudentEdition = 2
class pyIPCMI.ToolChain.Aldec.ActiveHDL.ActiveHDLEditions(name, section)[source]

Enumeration of all Active-HDL editions provided by Aldec inclusive editions shipped by other vendors.

Inheritance

Inheritance diagram of ActiveHDLEditions

Members

StandardEdition = 1
LatticeEdition = 2
class pyIPCMI.ToolChain.Aldec.ActiveHDL.Configuration(host: pyIPCMI.Base.IHost)[source]

Inheritance

Inheritance diagram of Configuration

Members

_vendor = 'Aldec'

The name of the tools vendor.

_toolName = 'Aldec Active-HDL'

The name of the tool.

_section = 'INSTALL.Aldec.ActiveHDL'

The name of the configuration section. Pattern: INSTALL.Vendor.ToolName.

_multiVersionSupport = True

Aldec Active-HDL supports multiple versions installed on the same system.

_template = {'Windows': {'INSTALL.Aldec.ActiveHDL': {'Edition': ('${${SectionName}:Edition}', 'Active-HDL'), 'BinaryDirectory': ('${${SectionName}:BinaryDirectory}', '${InstallationDirectory}/BIN'), 'SectionName': ('%{PathWithRoot}#${Version}', None), 'InstallationDirectory': ('${${SectionName}:InstallationDirectory}', '${INSTALL.Aldec:InstallationDirectory}/Active-HDL'), 'Version': '10.3'}}}

The template for the configuration sections represented as nested dictionaries.

CheckDependency()[source]

Check if general Aldec support is configured in pyIPCMI.

ConfigureForAll()[source]

Configuration routine for Aldec Active-HDL on all supported platforms.

  1. Ask if Active-HDL is installed.
  • Pass → skip this configuration. Don’t change existing settings.
  • Yes → collect installation information for Active-HDL.
  • No → clear the Active-HDL configuration section.
  1. Ask for Active-HDL’s version.
  2. Ask for Active-HDL’s edition (normal, student).
  3. Ask for Active-HDL’s installation directory.
_ConfigureEdition()[source]

Configure Active-HDL for Aldec.

ClearSection(writeWarnings=False)[source]

Clear the configuration section associated to this Configuration class.

ConfigureForDarwin()[source]

Start the configuration procedure for Darwin.

This method is a wrapper for ConfigureForAll(). Overwrite this method to implement a Darwin specific configuration routine.

ConfigureForLinux()[source]

Start the configuration procedure for Linux.

This method is a wrapper for ConfigureForAll(). Overwrite this method to implement a Linux specific configuration routine.

ConfigureForWindows()[source]

Start the configuration procedure for Windows.

This method is a wrapper for ConfigureForAll(). Overwrite this method to implement a Windows specific configuration routine.

classmethod GetSections(platform)[source]

Return all section names for this configuration.

Host

Return the hosting object.

IsConfigured()[source]

Return true if the configurations section is configured

IsSupportedPlatform()[source]

Return true if the given platform is supported by this configuration routine.

Log(entry, condition=True)

Write an entry to the local logger.

LogDebug(*args, condition=True, **kwargs)
LogDryRun(*args, condition=True, **kwargs)
LogError(*args, condition=True, **kwargs)
LogFatal(*args, condition=True, **kwargs)
LogInfo(*args, condition=True, **kwargs)
LogNormal(*args, condition=True, **kwargs)
LogQuiet(*args, condition=True, **kwargs)
LogVerbose(*args, condition=True, **kwargs)
LogWarning(*args, condition=True, **kwargs)
Logger

Return the local logger instance.

PrepareOptions(writeWarnings=True)[source]
PrepareSections(warningWasWritten, writeWarnings=True)[source]
PrepareVersionedSections(writeWarnings=False)
RunPostConfigurationTasks()[source]

Virtual method. Overwrite to execute post-configuration tasks.

SectionName

Return the configuration’s section name.

State

Return the configuration state.

_Ask(question, default, beforeDefault='', afterDefault='', indent=1)
_AskInstalled(question)[source]

Ask a Yes/No/Pass question.

_AskYes_NoPass(question, indent=1)

Ask a yes/NO/pass question.

_Ask_YesNoPass(question, indent=1)

Ask a YES/no/pass question.

_Configuration__CheckActiveHDLVersion(binPath, version)

Compare the given Active-HDL version with the tool’s version string.

_ConfigureBinaryDirectory()

Updates section with value from _template and returns directory as Path object.

_ConfigureInstallationDirectory()[source]

Asks for installation directory and updates section. Checks if entered directory exists and returns Path object. If no installation directory was configured before, then _GetDefaultInstallationDir is called.

_ConfigureVersion()

If no version was configured before, then _GetDefaultVersion is called. Asks for version and updates section. Returns version as string.

_GetDefaultEdition()

Returns unresolved default edition (str) from template.

Overwrite this method in a sub-class for automatic search of editions.

_GetDefaultInstallationDirectory()[source]

Return unresolved default installation directory (str) from template.

Overwrite function in sub-class for automatic search of installation directory.

_GetDefaultOptionValue(optionName)[source]
_GetDefaultVersion()

Returns unresolved default version (str) from template.

Overwrite this method in a sub-class for automatic search of version.

_PrintAvailableEditions(editions, selectedEdition)

Print all available editions and return the selected index.

_TestDefaultInstallPath(defaults)[source]

Helper function for automatic search of installation directory.

_TryLog(*args, condition=True, **kwargs)
class pyIPCMI.ToolChain.Aldec.ActiveHDL.ActiveHDL(platform, dryrun, binaryDirectoryPath, version, logger=None)[source]

Factory for executable abstractions in Active-HDL.

Inheritance

Inheritance diagram of ActiveHDL

Members

GetVHDLLibraryTool()[source]

Return an instance of Active-HDL’s VHDL library management tool ‘vlib’.

GetVHDLCompiler()[source]

Return an instance of Active-HDL’s VHDL compiler ‘vcom’.

GetSimulator()[source]

Return an instance of Active-HDL’s VHDL simulator ‘vsim’.

class pyIPCMI.ToolChain.Aldec.ActiveHDL.VHDLLibraryTool(toolchain: pyIPCMI.ToolChain.ToolMixIn)[source]

Abstraction layer of Active-HDL’s VHDL library management tool ‘vlib’.

Inheritance

Inheritance diagram of VHDLLibraryTool

Members

class Executable[source]
_value = None
class SwitchLibraryName[source]
_value = None
Parameters = [<class 'pyIPCMI.ToolChain.Aldec.ActiveHDL.VHDLLibraryTool.Executable'>, <class 'pyIPCMI.ToolChain.Aldec.ActiveHDL.VHDLLibraryTool.SwitchLibraryName'>]
CreateLibrary()[source]
GetReader()
HasErrors

True if errors or fatals errors were found while processing the output stream.

HasWarnings

True if errors or fatals errors were found while processing the output stream.

Log(entry, condition=True)

Write an entry to the local logger.

LogDebug(*args, condition=True, **kwargs)
LogDryRun(*args, condition=True, **kwargs)
LogError(*args, condition=True, **kwargs)
LogFatal(*args, condition=True, **kwargs)
LogInfo(*args, condition=True, **kwargs)
LogNormal(*args, condition=True, **kwargs)
LogQuiet(*args, condition=True, **kwargs)
LogVerbose(*args, condition=True, **kwargs)
LogWarning(*args, condition=True, **kwargs)
Logger

Return the local logger instance.

Path
ReadUntilBoundary(indent=0)
Send(line, end='\n')
SendBoundary()
StartProcess(parameterList)
Terminate()
_TryLog(*args, condition=True, **kwargs)
_pyIPCMI_BOUNDARY = '====== pyIPCMI BOUNDARY ======'
class pyIPCMI.ToolChain.Aldec.ActiveHDL.VHDLCompiler(toolchain: pyIPCMI.ToolChain.ToolMixIn)[source]

Abstraction layer of Active-HDL’s VHDL compiler ‘vcom’.

Inheritance

Inheritance diagram of VHDLCompiler

Members

class Executable[source]
_value = None
class FlagNoRangeCheck[source]
_name = 'norangecheck'
_value = None
class SwitchVHDLVersion[source]
_pattern = '-{1}'
_name = ''
_value = None
class SwitchVHDLLibrary[source]
_name = 'work'
_value = None
class ArgSourceFile[source]
_value = None
Parameters = [<class 'pyIPCMI.ToolChain.Aldec.ActiveHDL.VHDLCompiler.Executable'>, <class 'pyIPCMI.ToolChain.Aldec.ActiveHDL.VHDLCompiler.FlagNoRangeCheck'>, <class 'pyIPCMI.ToolChain.Aldec.ActiveHDL.VHDLCompiler.SwitchVHDLVersion'>, <class 'pyIPCMI.ToolChain.Aldec.ActiveHDL.VHDLCompiler.SwitchVHDLLibrary'>, <class 'pyIPCMI.ToolChain.Aldec.ActiveHDL.VHDLCompiler.ArgSourceFile'>]
Compile()[source]
GetReader()
HasErrors

True if errors or fatals errors were found while processing the output stream.

HasWarnings

True if errors or fatals errors were found while processing the output stream.

Log(entry, condition=True)

Write an entry to the local logger.

LogDebug(*args, condition=True, **kwargs)
LogDryRun(*args, condition=True, **kwargs)
LogError(*args, condition=True, **kwargs)
LogFatal(*args, condition=True, **kwargs)
LogInfo(*args, condition=True, **kwargs)
LogNormal(*args, condition=True, **kwargs)
LogQuiet(*args, condition=True, **kwargs)
LogVerbose(*args, condition=True, **kwargs)
LogWarning(*args, condition=True, **kwargs)
Logger

Return the local logger instance.

Path
ReadUntilBoundary(indent=0)
Send(line, end='\n')
SendBoundary()
StartProcess(parameterList)
Terminate()
_TryLog(*args, condition=True, **kwargs)
_pyIPCMI_BOUNDARY = '====== pyIPCMI BOUNDARY ======'
class pyIPCMI.ToolChain.Aldec.ActiveHDL.VHDLStandaloneSimulator(toolchain: pyIPCMI.ToolChain.ToolMixIn)[source]

Abstraction layer of Active-HDL’s VHDL standalone simulator ‘vsimsa’.

Inheritance

Inheritance diagram of VHDLStandaloneSimulator

Members

class Executable[source]
_value = None
class SwitchBatchCommand[source]
_name = 'do'
_value = None
Parameters = [<class 'pyIPCMI.ToolChain.Aldec.ActiveHDL.VHDLStandaloneSimulator.Executable'>, <class 'pyIPCMI.ToolChain.Aldec.ActiveHDL.VHDLStandaloneSimulator.SwitchBatchCommand'>]
Simulate()[source]
GetReader()
HasErrors

True if errors or fatals errors were found while processing the output stream.

HasWarnings

True if errors or fatals errors were found while processing the output stream.

Log(entry, condition=True)

Write an entry to the local logger.

LogDebug(*args, condition=True, **kwargs)
LogDryRun(*args, condition=True, **kwargs)
LogError(*args, condition=True, **kwargs)
LogFatal(*args, condition=True, **kwargs)
LogInfo(*args, condition=True, **kwargs)
LogNormal(*args, condition=True, **kwargs)
LogQuiet(*args, condition=True, **kwargs)
LogVerbose(*args, condition=True, **kwargs)
LogWarning(*args, condition=True, **kwargs)
Logger

Return the local logger instance.

Path
ReadUntilBoundary(indent=0)
Send(line, end='\n')
SendBoundary()
StartProcess(parameterList)
Terminate()
_TryLog(*args, condition=True, **kwargs)
_pyIPCMI_BOUNDARY = '====== pyIPCMI BOUNDARY ======'

Functions

pyIPCMI.ToolChain.Aldec.ActiveHDL.VLibFilter(gen)[source]

A line based output stream filter for Active-HDL’s VHDL library management tool.

pyIPCMI.ToolChain.Aldec.ActiveHDL.VComFilter(gen)[source]

A line based output stream filter for Active-HDL’s VHDL compiler.

pyIPCMI.ToolChain.Aldec.ActiveHDL.VSimFilter(gen)[source]

A line based output stream filter for Active-HDL’s VHDL simulator.