VHDL Declarations
Component Declaration component name  
  [generic (interface_constant {; interface_constant});]  
  [port (interface_signal {; interface_signal});]  
end component;
 
Constant Declaration constant name {,name} : type [constraint] := expression; type ist entweder ein typ oder ein subtyp 
constraint muß bei unconstraint typen angegeben werden, wenn es nicht aus expression ermittelt werden kann 
constraint kann auch einen typ einschränken
Function Body function name [(interface_declaration {;interface_declaration})] return type  
is  
  {declaration}  
begin  
  {statement}  
end [name];
alle Parameter müssen vom typ in sein 
alle Arten von Deklarationen außer Component und Signal dürfen verwendet werden 
als Statements sind erlaubt: asserts, case, if, loops, null, procedure calls, return, simple signal Zuweisung, variablen Zuweisung 
Function Declaration function name [(interface_declaration {;interface_declaration})] return type;  
Interface Declaration [constant] name {,name}: [in] type [constraint] [:= expresion]  
[signal] name {,name}: [mode] [res_function] type [constraint] [bus] [:=expression]  
[variable] name {,name}: {mode] type [constraint] [:=expression]
modi für signale sind: in, out, inout, buffer 
modi für variablen: in, out, inout
Procedure Body procedure name [(interface_declaration {;interface_declaration})]  
is  
  {declaration}  
begin  
  {statement}  
end [name];
alle Arten von Deklarationen außer Component und Signal dürfen verwendet werden 
als Statements sind erlaubt: asserts, case, if, loops, null, procedure calls, return, simple signal Zuweisung, variablen Zuweisung 
Procedure Declaration procedure name [(interface_declaration {;interface_declaration});  
Signal Declaration signal name {,name}: [res_function] type [constraint] [register|bus] [:= expression];  
Subtype Declaration subtype name is [res_function] type [constraint];  
Type Declaration type name [is type_definition] typ definitionen sind entweder skalare (integer, reals, enumerations, physical types), composite typen (array, records), acces typen (pointer) oder files
Use Clause use use_name {,use_name};  
Variable Declaration variable name {,name}: typ [constraint] [:=expression];  
© Chris Hübsch 02.07.1997