Concepts not defined by IEEE Std. 1076¶
Some features required for a holistic language model are not defined in the VHDL LRM or made explicitly implementation specific to the implementer.
Design¶
The root element in the language model is a design mode out of multiple
sourcecode files (documents). Sourcecode files are compiled into libraries. Thus
a design has the two child nodes: Libraries
and Documents
. Each is a
list
.
Condensed definition of class Design
:
@Export
class Design(ModelEntity):
_libraries : List = [] #: List of all libraries defined for a design
_documents : List = [] #: List of all documents loaded for a design
def __init__(self):
@property
def Libraries(self):
@property
def Documents(self):
LibraryStatement¶
A library contains multiple design units. Each design unit listed in a library
is a primary design unit like: configuration
, entity
, package
or
context
.
Condensed definition of class LibraryStatement
:
@Export
class LibraryStatement(ModelEntity):
_contexts : List = None #: List of all contexts defined in a library.
_configurations : List = None #: List of all configurations defined in a library.
_entities : List = None #: List of all entities defined in a library.
_packages : List = None #: List of all packages defined in a library.
def __init__(self):
@property
def Context(self):
@property
def Configurations(self):
@property
def Entities(self):
@property
def Packages(self):
Sourcecode File¶
A source file contains multiple design units. Each design unit listed in a
sourcecode file is a primary or secondary`design unit like: ``configuration`,
entity
, architecture
, package
, package body
or context
.
Design unit may be preceded by a context made of library
, use
and
context
statements. These statements are not directly visible in the Document
object, because design unit contexts are consumed by the design units. See the
Libraries
and Uses
fields of each design unit to investigate the consumed
contexts.
Condensed definition of class Document
:
@Export
class Document(ModelEntity):
_contexts : List = None #: List of all contexts defined in a document.
_configurations : List = None #: List of all configurations defined in a document.
_entities : List = None #: List of all entities defined in a document.
_architectures : List = None #: List of all architectures defined in a document.
_packages : List = None #: List of all packages defined in a document.
_packageBodies : List = None #: List of all package bodies defined in a document.
def __init__(self):
@property
def Contexts(self):
@property
def Configurations(self):
@property
def Entities(self):
@property
def Architectures(self):
@property
def Packages(self):
@property
def PackageBodies(self):