
Сообщение от
Mick
Длительность прерывания 32 такта процессора.
да так сделано в спектруме, но это не означает что так правильно )
по хорошему нужно примерно так
Код:
--INT
process(vsync,сpu_m1,cpu_iorq)
begin
if (cpu_iorq and cpu_m1) = '1' then
cpu_int <= '0';
elsif vsync'event and vsync = '1' then
cpu_int <= '1';
end if;
end process;
VGA_VSYNC <= vsync;
правда квартус выдаст warning что клок vsync не прописан в sdc файле, поэтому нужно его там создать )
p.s. активный уровень сигналов сpu_m1 и cpu_iorq - "1", для активного "0" будет - "if (cpu_iorq or cpu_m1) = '0' then"