Hardware Reference
In-Depth Information
if
,
impure
,
in
,
inertial
,
inout
,
is
, label,
library
, linkage, literal,
loop
,
map
,
mod
,
nand
, new, next,
nor
,
not
,
null
, of,
on
,
open
,
or
proce-
dure, process, property, protected, pure, range, record, register,
reject, release, rem, report, restrict, restrict_guarantee, return,
rol, ror, select, sequence, severity, shared, signal, sla, sll, sra,
strong, subtype, then, to, transport, type, unaffected, units,
until, use, variable, vmode, vprop, vunit, wait, when, while,
with,
,
others
,
out
,
package
, parameter,
port
,
postponed
,
xnor
,
xor
A.1.3 Syntaxregeln für Bezeichner
Bezeichner sind weitgehend frei wählbare Namen für Entwurfseinheiten, Ent-
wurfsbeschreibungen, Packages, Datentypen, Unterprogramme, Konstanten,
Variablen, Signale, Dateien, ..., deren Bedeutung in einer Deklaration festge-
legt und die anschließend über diesen Namen referenziert werden. Bezeichner
dürfen
• nur aus den Buchstaben »A« bis »Z«, »a« bis »z«, den Ziffern »0« bis »9«
und dem Unterstrich »_« bestehen,
• nur mit einem Buchstaben beginnen,
• nicht mit einem Unterstrich enden und
• keine zwei Unterstriche hintereinander enthalten.
Es wird nicht zwischen Groß- und Kleinschreibung unterschieden. Gleiche Be-
zeichner verdecken sich gegenseitig. Wenn für ein Unterprogramm und eine
Variable derselbe Bezeichner vereinbart wird, ist entweder nur der Bezeich-
ner der Variablen sichtbar, so dass es bei seiner Verwendung als Unterpro-
grammbezeichner einen Analysefehler gibt oder umgekehrt. Ausnahmen, in
denen gleiche Bezeichner mehrfach verwendet werden dürfen, sind überladene
Funktions- und Prozedurnamen (vgl. Abschnitt 3.1.4 und 3.1.7) und symbo-
lische Werte unterschiedlicher Aufzählungstypen (vgl. Abschnitt 3.2.2). Mys-
teriöse Fehlermeldungen haben oft eine Mehrfachdefinition gleicher Bezeich-
ner als Ursache, z.B. die Verwendung des Bezeichners für die Maßeinheit »fs«
(Femtosekunden) als Bezeichner für eine Funktion. Bei gleichen Wertebezeich-
nern für unterschiedliche Aufzählungstypen z.B. '0' für character, bit und
std_logic hat die Analyse gelegentlich Probleme, Ausdrücken den richtigen
Typ zuzuordnen. Abhilfe schafft eine explizite Typqualifikation. Dazu wird
der Typ, gefolgt von einem Hochkomma dem geklammerten Ausdruck voran-
gestellt, z.B.
...std_logic'( '0' ) ...
Weitere Regeln hier im Buch sind, dass
Search WWH ::




Custom Search