Identifiers are probably the most common operand. An identifier in VHDL is a user-defined name for any of this
(1) Constant,
(2) Variable,
(3) Function,
(4) Signal,
(5) Entity, port,
(6) Subprogram,
(7) Parameter,
and (8) Instantance
There are two types of identifiers : basic identifiers and extended identifiers.
A data objects hold a value of specified type, which is created by means of an object declaration. In the following example signal is one of the type of data object. e.g. signal sl: std- logic
(i) Constant
(ii) File
(iii) Variable
(iv) Signals
A constant is an object whose value may never be changed during the simulation process. The constant declaration contains one or more identifiers. The Syntax of constant is,
constant constant_name : type := value;
Example :
constant width: integer:= 8; constant x: std_logic:= 16; constant delay: time:= 10ns;
A sequence of value called file. The value can be read or write to file using read procedures and write procedures respectively. The Syntax of file is :
file identifier : subtype_indication [ file_open_information ];
Example :
type IntegerFile is file of INTEGER; file F1: IntegerFile;
A variable is an object with single current value. A signal value of given type having different values assigned to different times called as variable. The Syntax of variable is,:
variable variable_name : type;
variable variable_name : type := initial_value;
Example :
variable A,B: bit; variable sum : std_logic_vector(7 downto 0);
Signal is an object with a past history of values. The term signal refers to objects declared by signal declarations and port declarations. The Syntax of signal is :
signal signal_name : type;
signal signal_name : type := initial_value;
Example 1 :
signal A,B: std_logic; signal DELAY: time:=10ns;
Example 2 :
entity testing is port (A,B: in Std_Logic; C: out Std_logic); end entity VK; architecture Ex_testing of testing is signal Temp : Std_Logic; begin Temp<= A xor B; C<= not Temp; end architecture Ex_testing;
Each statement of the architecture Ex_testing may use any of the four signals: A, B, C declared as a port in the entity part (above the architecture section), Temp which is a single signal of the type Std_Logic