Sensitivity List
  
    
    
     
   
   Formal Definition
  
   A list of signals a process is
   sensitive to. 
  
   Simplified Syntax
  
   (signal_name, signal_name, . . .) 
  
   Description
  
   The sensitivity list is a 
   compact way of specifying the set of signals, events on which may 
   resume a process. A sensitivity list is specified right after the 
   keyword process (Example 1). 
  
   The sensitivity list is equivalent to the wait
    on statement, which is the last statement of the process 
   statement section. 
  
   Only static signal names, for which reading is permitted, may appear 
   in the sensitivity list of a process, i.e. no function calls are 
   allowed in the list. 
  
   Examples
  
   Example 1 
  
   DFF : process (CLK,RST) 
   begin 
     if RST = '1' 
       then 
   Q <= '0'; 
       elsif 
   (CLK'event) and (CLK = '1') 
        then 
   Q <= D; 
     end if; 
   end process DFF; 
   -- DFF : process 
   -- begin 
   -- if RST = '1' 
   -- then Q <= '0'; 
   -- elsif (CLK'event) and (CLK = '1') 
   -- then Q <= D; 
   -- end if; 
   -- wait on RST,
    CLK; 
   -- end process DFF; 
  
     
   Here, the process is sensitive to the RST and CLK signals, i.e. an 
   event on any of these signals will cause the process to resume. This 
   process is equivalent to the one described in the comment section. 
  
   Important Notes
  
   - 
   
    A process with a sensitivity list may not contain any explicit wait 
    statements. Also, if such a process statement is a parent of a 
    procedure, then that procedure may not contain a wait statement as well. 
     
  
    
 
    |