[an error occurred while processing this directive]
|
Так как Вы написали.
process (clk)
begin
if (f56'event and f56 = '1') then
if cnt = rg0 then
cnt <= rg1;
else
cnt <= cnt - 1;
end if;
end if;
end process;
TI <= not(cnt(20));
Я бы сделал так:
process (clk)
begin
if (f56'event and f56 = '1') then
if cnt(20) = '1' then -- это период
cnt <= rgp;
else
cnt <= cnt - 1;
end if;
if cnt(20) = '1' then -- это длительность
Ti <= '1';
elsif cnt(k downto 0) = rgd
Ti <= '0';
end if;
end if;
end process;
E-mail: info@telesys.ru