pyIPCMI.ToolChain.Altera.Quartus.py

Exceptions

  • QuartusException: Base class for all tool specific exceptions

Classes

  • QuartusEditions: Enumeration of all Quartus editions provided by Altera itself.
  • Configuration: Base class for all tool Configuration classes.
  • Quartus: Undocumented.
  • Map: Represent an executable.
  • TclShell: Represent an executable.
  • QuartusSession: Undocumented.
  • QuartusProject: Undocumented.
  • QuartusSettings: Undocumented.
  • QuartusProjectFile: Undocumented.

Functions

  • MapFilter(): Undocumented.
exception pyIPCMI.ToolChain.Altera.Quartus.QuartusException(message='')[source]

Inheritance

Inheritance diagram of QuartusException

Members

__init__(message='')

Exception initializer

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

Returns the exception’s message text.

args
class pyIPCMI.ToolChain.Altera.Quartus.QuartusEditions(name, section)[source]

Enumeration of all Quartus editions provided by Altera itself.

Inheritance

Inheritance diagram of QuartusEditions

Members

AlteraQuartus = 1
IntelQuartus = 2
class pyIPCMI.ToolChain.Altera.Quartus.Configuration(host: pyIPCMI.Base.IHost)[source]

Inheritance

Inheritance diagram of Configuration

Members

_vendor = 'Altera'

The name of the tools vendor.

_toolName = 'Altera Quartus'

The name of the tool.

_section = 'INSTALL.Altera.Quartus'

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

_multiVersionSupport = True

Altera Quartus supports multiple versions installed on the same system.

_template = {'Linux': {'INSTALL.Altera.Quartus': {'SectionName': ('%{PathWithRoot}#${Version}', None), 'Version': '16.0', 'InstallationDirectory': ('${${SectionName}:InstallationDirectory}', '${INSTALL.Altera:InstallationDirectory}/${Version}/quartus'), 'BinaryDirectory': ('${${SectionName}:BinaryDirectory}', '${InstallationDirectory}/bin')}}, 'Windows': {'INSTALL.Altera.Quartus': {'SectionName': ('%{PathWithRoot}#${Version}', None), 'Version': '16.0', 'InstallationDirectory': ('${${SectionName}:InstallationDirectory}', '${INSTALL.Altera:InstallationDirectory}/${Version}/quartus'), 'BinaryDirectory': ('${${SectionName}:BinaryDirectory}', '${InstallationDirectory}/bin64')}}}

The template for the configuration sections represented as nested dictionaries.

CheckDependency()[source]

Check if general Altera support is configured in pyIPCMI.

ConfigureForAll()[source]

Start a generic (platform independent) configuration procedure.

Overwrite this method to implement a generic configuration routine for a (tool) Configuration class.

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__CheckQuartusVersion(binPath, version)
_ConfigureBinaryDirectory()

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

_ConfigureEdition(editions, defaultEdition)
_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.Altera.Quartus.Quartus(platform, dryrun, binaryDirectoryPath, version, logger=None)[source]

Inheritance

Inheritance diagram of Quartus

Members

GetMap()[source]
GetTclShell()[source]
class pyIPCMI.ToolChain.Altera.Quartus.Map(toolchain: pyIPCMI.ToolChain.ToolMixIn)[source]

Inheritance

Inheritance diagram of Map

Members

class Executable[source]
class ArgProjectName[source]
class SwitchArgumentFile[source]
_name = 'f'
class SwitchDeviceFamily[source]
_name = 'family'
class SwitchDevicePart[source]
_name = 'part'
Parameters = [<class 'pyIPCMI.ToolChain.Altera.Quartus.Map.Executable'>, <class 'pyIPCMI.ToolChain.Altera.Quartus.Map.ArgProjectName'>, <class 'pyIPCMI.ToolChain.Altera.Quartus.Map.SwitchArgumentFile'>, <class 'pyIPCMI.ToolChain.Altera.Quartus.Map.SwitchDeviceFamily'>, <class 'pyIPCMI.ToolChain.Altera.Quartus.Map.SwitchDevicePart'>]
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.Altera.Quartus.TclShell(toolchain: pyIPCMI.ToolChain.ToolMixIn)[source]

Inheritance

Inheritance diagram of TclShell

Members

class Executable[source]
class SwitchShell[source]
_name = 's'
Parameters = [<class 'pyIPCMI.ToolChain.Altera.Quartus.TclShell.Executable'>, <class 'pyIPCMI.ToolChain.Altera.Quartus.TclShell.SwitchShell'>]
GetReader()
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.Altera.Quartus.QuartusSession(host)[source]

Inheritance

Inheritance diagram of QuartusSession

Members

exit()[source]
class pyIPCMI.ToolChain.Altera.Quartus.QuartusProject(host, name, projectFile=None)[source]

Inheritance

Inheritance diagram of QuartusProject

Members

Create(session=None)[source]
Save(session)[source]
Read()[source]
Open(session)[source]
Close(session)[source]
AddExternalVHDLLibraries(library)
AddFile(file, fileSet=None)
AddFileSet(fileSet)
AddSourceFile(file, fileSet=None)
Board
CreateFileSet(name, setDefault=True)
DefaultFileSet
Device
Environment
ExternalVHDLLibraries
ExtractVHDLLibrariesFromVHDLSourceFiles()
FileSets
Files(fileType=<FileTypes(Text|ProjectFile|FileListFile|RulesFile|SourceFile|VHDLSourceFile|VerilogSourceFile|PythonSourceFile|CocotbSourceFile|ConstraintFile|UcfConstraintFile|XdcConstraintFile|SdcConstraintFile|LdcConstraintFile|SettingsFile|QuartusSettingsFile) bits=0xFFFF>, fileSet=None)
GetVariables()
Name
RootDirectory
Tool
ToolChain
VHDLLibraries
VHDLVersion
pprint(indent=0)
class pyIPCMI.ToolChain.Altera.Quartus.QuartusSettings(name, settingsFile=None)[source]

Inheritance

Inheritance diagram of QuartusSettings

Members

File
GlobalAssignments
Parameters
CopySourceFilesFromProject(project)[source]
Write()[source]
FileName
FileSet
FileType
Open()
Path
Project
ReadFile()
_FileType = <FileTypes.SettingsFile bits=0x4000 data=UNDEFINED>
_ReadContent()
class pyIPCMI.ToolChain.Altera.Quartus.QuartusProjectFile(file)[source]

Inheritance

Inheritance diagram of QuartusProjectFile

Members

FileName
FileSet
FileType
Open()
Path
Project
ReadFile()
_FileType = <FileTypes.ProjectFile bits=0x0002 data=UNDEFINED>
_ReadContent()

Functions

pyIPCMI.ToolChain.Altera.Quartus.MapFilter(gen)[source]