He escrito un código para verificar la diferencia en la asignación de resultados antes del "proceso final" y después del "proceso final" en VHDL. Y los resultados de la simulación que he publicado con ella.
entity signal_delay is
port (clock_50M: in Std_logic;
r: in std_logic;
r_delay1, r_delay2: out std_logic);
end signal_delay;
architecture ada of signal_delay is
signal r_1,r_2: std_logic;
begin
process(clock_50M)
begin
if ( clock_50M='1') then
r_1<= r;
r_2<=r_1;
end if ;
end process;
r_delay1<=r_1;
r_delay2<= r_2;
end ada;
---- caso: 2 ---------------------------------------- ---------------------
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity signal_delay is
port (clock_50M: in Std_logic;
r: in std_logic;
r_delay1, r_delay2: out std_logic);
end signal_delay;
architecture ada of signal_delay is
signal r_1,r_2: std_logic;
begin
process(clock_50M)
begin
if (clock_50M 'event and clock_50M='1') then
r_1<= r;
r_2<=r_1;
end if ;
r_delay1<=r_1;
r_delay2<= r_2;
end process;
end ada;