Код антитвита:
Код
library IEEE;
use IEEE.STD_LOGIC_1164 .ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity antitwit_fix is
Port ( INSIG : in STD_LOGIC;
N1kHz : in STD_LOGIC;
OUTSIG : out STD_LOGIC);
end antitwit_fix;
architecture Behavioral of antitwit_fix is
signal INT1, INT2,: STD_LOGIC; -- декларируем внутренние сигналы
signal BUS1: STD_LOGIC_VECTOR (7 downto 0):= ”00000000”;
begin
process (N1kHz)
begin
if N1kHz 'event and N1kHz = ‘1’ then
if INT1 = '1’ then
BUS1 <= BUS1 + 1;
end if;
end if;
end process;
INT1 <= ‘1’ when or INSIG = ‘1’ else ‘0’;
OUTSIG <= INT2;
INT2 <= ‘0’ when BUS1 = ”00000000” else ‘1’;
end Behavioral;
use IEEE.STD_LOGIC_1164 .ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity antitwit_fix is
Port ( INSIG : in STD_LOGIC;
N1kHz : in STD_LOGIC;
OUTSIG : out STD_LOGIC);
end antitwit_fix;
architecture Behavioral of antitwit_fix is
signal INT1, INT2,: STD_LOGIC; -- декларируем внутренние сигналы
signal BUS1: STD_LOGIC_VECTOR (7 downto 0):= ”00000000”;
begin
process (N1kHz)
begin
if N1kHz 'event and N1kHz = ‘1’ then
if INT1 = '1’ then
BUS1 <= BUS1 + 1;
end if;
end if;
end process;
INT1 <= ‘1’ when or INSIG = ‘1’ else ‘0’;
OUTSIG <= INT2;
INT2 <= ‘0’ when BUS1 = ”00000000” else ‘1’;
end Behavioral;