pyIPCMI.ToolChain.Xilinx.Vivado.py¶
Exceptions
VivadoException
: Base class for all tool specific exceptions
Classes
Configuration
: Base class for all tool Configuration classes.ToolMixIn
: Undocumented.Vivado
: Undocumented.XElab
: Represent an executable.XSim
: Represent an executable.Synth
: Represent an executable.VivadoProject
: Undocumented.VivadoProjectFile
: Undocumented.XilinxDesignConstraintFile
: Undocumented.
Functions
ElaborationFilter()
: Undocumented.SimulatorFilter()
: Undocumented.CompilerFilter()
: Undocumented.
-
exception
pyIPCMI.ToolChain.Xilinx.Vivado.
VivadoException
(message='')[source] Inheritance
Members
-
__init__
(message='') Exception initializer
Parameters: message (str) – The exception message.
-
__str__
() Returns the exception’s message text.
-
args
-
-
class
pyIPCMI.ToolChain.Xilinx.Vivado.
Configuration
(host: pyIPCMI.Base.IHost)[source] Inheritance
Members
-
_vendor
= 'Xilinx' The name of the tools vendor.
-
_toolName
= 'Xilinx Vivado' The name of the tool.
-
_section
= 'INSTALL.Xilinx.Vivado' The name of the configuration section. Pattern:
INSTALL.Vendor.ToolName
.
-
_multiVersionSupport
= True Xilinx Vivado supports multiple versions installed on the same system.
-
_template
= {'Linux': {'INSTALL.Xilinx.Vivado': {'SectionName': ('%{PathWithRoot}#${Version}', None), 'Version': '2016.3', 'InstallationDirectory': ('${${SectionName}:InstallationDirectory}', '${INSTALL.Xilinx:InstallationDirectory}/Vivado/${Version}'), 'BinaryDirectory': ('${${SectionName}:BinaryDirectory}', '${InstallationDirectory}/bin')}}, 'Windows': {'INSTALL.Xilinx.Vivado': {'SectionName': ('%{PathWithRoot}#${Version}', None), 'Version': '2016.3', 'InstallationDirectory': ('${${SectionName}:InstallationDirectory}', '${INSTALL.Xilinx:InstallationDirectory}/Vivado/${Version}'), 'BinaryDirectory': ('${${SectionName}:BinaryDirectory}', '${InstallationDirectory}/bin')}}} The template for the configuration sections represented as nested dictionaries.
-
CheckDependency
()[source] Check if general Xilinx 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__CheckVivadoVersion
(binPath, version)
-
_ConfigureBinaryDirectory
() Updates section with value from
_template
and returns directory asPath
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.Xilinx.Vivado.
ToolMixIn
(platform, dryrun, binaryDirectoryPath, version, logger=None)[source] Inheritance
Members
-
class
pyIPCMI.ToolChain.Xilinx.Vivado.
Vivado
(platform, dryrun, binaryDirectoryPath, version, logger=None)[source] Inheritance
Members
-
PreparseEnvironment
(installationDirectory)[source]
-
GetElaborator
()[source]
-
GetSimulator
()[source]
-
GetSynthesizer
()[source]
-
-
class
pyIPCMI.ToolChain.Xilinx.Vivado.
XElab
(toolchain: pyIPCMI.ToolChain.ToolMixIn)[source] Inheritance
Members
-
class
Executable
[source] -
_value
= None
-
-
class
FlagRangeCheck
[source] -
_name
= 'rangecheck'
-
_value
= None
-
-
class
SwitchMultiThreading
[source] -
_name
= 'mt'
-
_value
= None
-
-
class
SwitchVerbose
[source] -
_name
= 'verbose'
-
_value
= None
-
-
class
SwitchDebug
[source] -
_name
= 'debug'
-
_value
= None
-
-
class
SwitchOptimization
[source] -
_pattern
= '--{0}{1}'
-
_name
= 'O'
-
_value
= None
-
-
class
SwitchTimeResolution
[source] -
_name
= 'timeprecision_vhdl'
-
_value
= None
-
-
class
SwitchProjectFile
[source] -
_name
= 'prj'
-
_value
= None
-
-
class
SwitchLogFile
[source] -
_name
= 'log'
-
_value
= None
-
-
class
SwitchSnapshot
[source] -
_name
= 's'
-
_value
= None
-
-
class
ArgTopLevel
[source] -
_value
= None
-
-
Parameters
= [<class 'pyIPCMI.ToolChain.Xilinx.Vivado.XElab.Executable'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.XElab.FlagRangeCheck'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.XElab.SwitchMultiThreading'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.XElab.SwitchTimeResolution'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.XElab.SwitchVerbose'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.XElab.SwitchDebug'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.XElab.SwitchOptimization'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.XElab.SwitchProjectFile'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.XElab.SwitchLogFile'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.XElab.SwitchSnapshot'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.XElab.ArgTopLevel'>]
-
Link
()[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
-
class
pyIPCMI.ToolChain.Xilinx.Vivado.
XSim
(toolchain: pyIPCMI.ToolChain.ToolMixIn)[source] Inheritance
Members
-
class
Executable
[source] -
_value
= None
-
-
class
SwitchLogFile
[source] -
_name
= '-log'
-
_value
= None
-
-
class
FlagGuiMode
[source] -
_name
= '-gui'
-
_value
= None
-
-
class
SwitchTclBatchFile
[source] -
_name
= '-tclbatch'
-
_value
= None
-
-
class
SwitchWaveformFile
[source] -
_name
= '-view'
-
_value
= None
-
-
class
SwitchSnapshot
[source] -
_value
= None
-
-
Parameters
= [<class 'pyIPCMI.ToolChain.Xilinx.Vivado.XSim.Executable'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.XSim.SwitchLogFile'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.XSim.FlagGuiMode'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.XSim.SwitchTclBatchFile'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.XSim.SwitchWaveformFile'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.XSim.SwitchSnapshot'>]
-
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 ======'
-
class
-
class
pyIPCMI.ToolChain.Xilinx.Vivado.
Synth
(toolchain: pyIPCMI.ToolChain.ToolMixIn)[source] Inheritance
Members
-
class
Executable
[source] -
_value
= None
-
-
class
SwitchLogFile
[source] -
_name
= 'log'
-
_value
= None
-
-
class
SwitchSourceFile
[source] -
_name
= 'source'
-
_value
= None
-
-
class
SwitchMode
[source] -
_name
= 'mode'
-
_value
= 'batch'
-
-
Parameters
= [<class 'pyIPCMI.ToolChain.Xilinx.Vivado.Synth.Executable'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.Synth.SwitchLogFile'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.Synth.SwitchSourceFile'>, <class 'pyIPCMI.ToolChain.Xilinx.Vivado.Synth.SwitchMode'>]
-
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
-
class
pyIPCMI.ToolChain.Xilinx.Vivado.
VivadoProject
(name)[source] Inheritance
Members
-
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.Xilinx.Vivado.
VivadoProjectFile
(file)[source] Inheritance
Members
-
FileName
-
FileSet
-
FileType
-
Open
()
-
Path
-
Project
-
ReadFile
()
-
_FileType
= <FileTypes.ProjectFile bits=0x0002 data=UNDEFINED>
-
_ReadContent
()
-
-
class
pyIPCMI.ToolChain.Xilinx.Vivado.
XilinxDesignConstraintFile
(file, project=None, fileSet=None)[source] Inheritance
Members
-
_FileType
= <FileTypes.XdcConstraintFile bits=0x0800 data=UNDEFINED>
-
FileName
-
FileSet
-
FileType
-
Open
()
-
Path
-
Project
-
ReadFile
()
-
_ReadContent
()
-
Functions
-
pyIPCMI.ToolChain.Xilinx.Vivado.
ElaborationFilter
(gen)[source]
-
pyIPCMI.ToolChain.Xilinx.Vivado.
SimulatorFilter
(gen)[source]
-
pyIPCMI.ToolChain.Xilinx.Vivado.
CompilerFilter
(gen)[source]