VHDL-SYNTAX

46 downloads 160 Views 264KB Size Report
Erläuterungen: Groß geschrieben: Selbsdefinierte Namen. z.B. VADD, CARRY_IN, TD. Klein geschrieben und fett gedruckt: VHDL-Schlüsselwort oder - Zeichen.
 F. Schubert 05/01

VHDL-Syntax

Prof. Dr. F. Schubert Fachhochschule Hamburg Fachbereich Elektrotechnik und Informatik Informationstechnik

VHDL-SYNTAX

05/2001 Pnr, Rch, Sbr, Swr

VHDL-Syntax

 F. Schubert 05/01

Erläuterungen: Groß geschrieben: Selbsdefinierte Namen z.B. VADD, CARRY_IN, TD Klein geschrieben und fett gedruckt: VHDL-Schlüsselwort oder -Zeichen z.B. entity, all, nand, is, std_ulogic, :=, : Bezeichnungen z.B. , In geschweiften Klammern { }: beliebig oft wiederholbar Alternativen werden durch einen Vertikalstrich | getrennt Hochgestellte „93“ bedeutet, daß das VHDL-Schlüsselwort nicht in VHDL-87 sondern nur in VHDL-93 definiert ist: 93 z.B. group

 F. Schubert 05/01

VHDL-Syntax

Struktur von VHDL-Modellen

1.) Empfohlene Grundstruktur ohne Komponenten -- use- und library-Deklarationen {[use . . . ;]} {[library . . . ;]} {[use . . . ; } -- entity entity . . . is [generic(. . .);] port(. . .); end . . . ; -- architecture architecture . . . of . . . is {[type . . . ;]} {[subtype . . . ;]} {[attribute . . . ;]} {[constant . . . ;]} {[signal . . . ;]} {[function . . . ;]} {[procedure . . . ;]}

-- Typ- und Signal-Deklarationen -- innerhalb der Architektur

-- Funktions- und Prozedur-- Deklarationen

VHDL-Syntax

 F. Schubert 05/01

begin {[]} {[]: [process(. . .) {[type . . . ;]} -- Typ- und Variablen{[subtype . . . ;]} -- Deklarationen innerhalb des {[variable . . . ;]} -- Prozesses {[constant . . . ;]} {[function . . . ;]} -- Funktions- und Prozedur{[procedure . . . ;]} -- Deklarationen begin {[]} end process [];]} end . . .;

VHDL-Syntax

 F. Schubert 05/01

2.) Empfohlene Struktur mit Komponenten -- use- und library-Deklarationen -- entity entity . . . is [generic(. . .);] port(. . .); end . . . ; -- architecure architecture . . . of . . . is -- Architektur -Deklarationen -- Komponentendeklarationen {[component [generic(. . .);] port(. . .); end component;]} [-- Komponentenkonfigurationen {[for all: . . . use entity . . . ;]} begin] -- Komponenteninstanziierung { . . . : . . . [generic map(. . . )] port map(. . . );} {[]} {[]} end . . .;

VHDL-Syntax

 F. Schubert 05/01

Operator für Werte vom Typ integer, real (für real nicht synthesefähig). Funktion: Subtraktion. Beispiele: Y := A – B; Y