01-05-2019, 01:11 PM
We've all been fooled by faults over the years. The laws of physics continue to function.
I don't understand the other problem that Jac showed me in his 567 line experiments. The main output vertical count runs from 0 to N-2. Would normally be N-1 but the reset is pipelined. Reset at 565 (correct for 567 lines) gives a horizontal shift in the picture, 563 works OK.
It may be something like this. All vertical operations should have a clock enable from an H or H/2 pulse. In this bit of code the CE (H_RESET) is within the IF statement, not outside it. So FRAME_RESET is acting at different point on the line to the self reset.
I don't understand the other problem that Jac showed me in his 567 line experiments. The main output vertical count runs from 0 to N-2. Would normally be N-1 but the reset is pipelined. Reset at 565 (correct for 567 lines) gives a horizontal shift in the picture, 563 works OK.
Quote: if FRAME_RESET = '1' and SW_8A = '1' then V_COUNT <= 403; ODD_FIELD <= false;
elsif FRAME_RESET = '1' and SW_8A = '0' then V_COUNT <= 563; ODD_FIELD <= false; -- was 563
elsif H_RESET then -- H_RESET
V_RESET <= V_COUNT = (LINES_IN_A_FRAME - 2);
if V_RESET then V_COUNT <= 0; ODD_FIELD <= not ODD_FIELD;
else V_COUNT <= V_COUNT + 1;
end if;
It may be something like this. All vertical operations should have a clock enable from an H or H/2 pulse. In this bit of code the CE (H_RESET) is within the IF statement, not outside it. So FRAME_RESET is acting at different point on the line to the self reset.
www.borinsky.co.uk Jeffrey Borinsky www.becg.tv








