等待语句有三种形式:
    wait on A, B;      -- A 或B 变化时,进程激活。
    wait until Enable = '1'; -- 满足条件时,进程激活。
    wait for 5 ns;      -- 过5 ns 后,进程激活。
  三者可以任意组合:
    wait on A, B until Enable = '1'; -- 等待A, B变化,且Enable = '1'时激活。
    wait on A, B for 5 ns;      -- 等待A, B变化,或到达5 ns 时激活。
    wait until Enable = '1' for 5 ns;
      -- 等待Enable = '1'时激活,或者到达5 ns 时激活。
    wait on A, B until Enable = '1' for 5 ns;
      --等待A, B变化,且Enable = '1'时激活,或者到达5 ns 时激活。
      --三者组合式的执行规则:(onuntil )或 for。   
  
进程中可以由若干等待语句。运行开始时,进程处于激活状态,从第一个顺序语句开始执行,遇到第一个等待语句是挂起。当该等待语句的条件满足时,进程再次激活,从该等待语句接着运行,直到遇到下一个等待语句再次挂起。以后每次激活后,运行到下一个等待语句挂起。如果进程执行到最后一个语句,则下一个语句是第一个语句。
  图2.6的是含有多个等待语句的进程运行过程示意图。
  p1: process
  begin
    …
    wait on s1;
    …
    wait on s2;
    …
    wait on s1;
    …
  end process p1;
图2.6 进程运行过程示意图