(1) 传输延迟的处理
若延迟时间是在驱动器中其他所有事项处理安排之后的值,则将一个新的波形元素加在驱动器的尾部。
若延迟时间是在驱动器中某事项处理之前安排一个事项处理A,则将丢弃A之后的所有事项处理。
例1:(图2.9)
signal S: Integer := 0;
P1: process
begin
S <= transport 1 after 1 ns;
S <= transport 2 after 2 ns;
wait;
end process;
第一个语句安排(1,1ns),第二个语句在其后安排(2, 2ns), 如图2.9所示。
图2.9 例1的事项处理

|
例2:例1中将两个赋值语句互换位置:
signal S: Integer := 0;
P1: process
begin
S <= transport 2 after 2 ns;
S <= transport 1 after 1 ns;
wait;
end process;
第一个语句安排(2, 2ns),第二个语句安排(1,1ns), 要安排在(2,2ns)之前,并把原(2, 2ns)删除。如图2.10所示。
图2.10 例2的事项处理表

|
例3:
signal S: Integer := 0;
P1: process
begin
S <= transport 1 after 1 ns, 3 after 3 ns,
5 after 5 ns;
S <= transport 4 after 4 ns;
wait;
end process;
在执行第2个语句时, 将(4,4ns)安排在(5,5ns)之前,并把原(5, 5ns)删除, 如图2.11所示。
图2.11 例3的事项处理表
|
|