E
EDA_hg81
Guest
I designen min, har jeg brukt to tilstandsmaskiner.
Første stat maskinen kjører under 4MHZ som genererer en 500us puls.
Andre statlige maskinen kjører under 16MHZ, som får denne 500us puls.
Min kode for å sjekke pulsen er som følger:
Code:
prosess (refclk)
begynne
if (rising_edge (refclk)) then
fstart_reg1 <= cformat;
fstart_reg2 <= fstart_reg1;
if (fstart_reg1 = '1 'and fstart_reg2 = '0') then
... ... ... ... ... ... ... ... ... ... ....
end if;
end if;
end process;
Første stat maskinen kjører under 4MHZ som genererer en 500us puls.
Andre statlige maskinen kjører under 16MHZ, som får denne 500us puls.
Min kode for å sjekke pulsen er som følger:
Code:
prosess (refclk)
begynne
if (rising_edge (refclk)) then
fstart_reg1 <= cformat;
fstart_reg2 <= fstart_reg1;
if (fstart_reg1 = '1 'and fstart_reg2 = '0') then
... ... ... ... ... ... ... ... ... ... ....
end if;
end if;
end process;