--- Quote Start ---
Depends on what you regard as
safe. Generally, the combinational output of process 2 can be expected to have glitches, because it's not registered. In this special case, rgboe is permanently '1' because hsync_count never reaches 144 and the first condition is always false.
Please also consider, that the sensitivity list of process 2 has no actual effect in synthesis, although Quartus II complains if it's missing.
--- Quote End ---
Uhm, i want the output registered!
With this code:
PROCESS (clock25)
begin
if (clock25'event and clock25 = '1') then
if (hsync_count >= 144 )
and (hsync_count < 784 )
and (vsync_count >= 39 )
and (vsync_count < 519 )
then
rgboe <= '0';
else
rgboe <= '1';
end if;
end if;
end process;
the combinational output is registered right?
When this process is executed, there is a reading in hsync_count register.
But the first process is writing a new value inside this register.
So, can be a timing violation or Quartus avoid this situation?
Thank you