P
Pieter
I'am a student in belgium and for an project in school. I've got to
make an project with a virtex II pro and the program is write in VHDL.
The purpose of the project is to make an vhdl-code so that an composite
signal is translated to an RGB signal to send to a VGA screen, like a
computer screen.
In one of the sub program i' have following problem :
There is an 10-bits input signal and a clock input. The program will
scan the 10-bits input signal and when the code FF 00 00 is detected
than the program will send bit 8 to and output. But the problem is now
that he sends it a clock pulse to late, so theres a clock pulse delay
when he detected it and when it sends it to the output. The program is
the following :
signal TRS : std_logic;
signal A,B,C : std_logic;
signal Fo_in : std_logic;
if rising_edge(clk) then
if YCrCb_rg2(9 downto 2) = "00000000" then--00
A := '1';
else
A := '0';
end if;
if YCrCb_rg3(9 downto 2) = "00000000" then--00
B := '1';
else
B := '0';
end if;
if YCrCb_rg4(9 downto 2) = "11111111" then--FF
C := '1';
else
C := '0';
end if;
end if;
if rst= '1' then
Fo_in <= '0';
elsif TRS = '1' then
Fo_in <= YCrCb_rg1(8);
end if;
TRS := A AND B AND C;
Fo <= Fo_in; --send to the ouput pin
Should i use variables instead of signals maybe?? Thanks in advance and
hope that you understand my english a bit.
make an project with a virtex II pro and the program is write in VHDL.
The purpose of the project is to make an vhdl-code so that an composite
signal is translated to an RGB signal to send to a VGA screen, like a
computer screen.
In one of the sub program i' have following problem :
There is an 10-bits input signal and a clock input. The program will
scan the 10-bits input signal and when the code FF 00 00 is detected
than the program will send bit 8 to and output. But the problem is now
that he sends it a clock pulse to late, so theres a clock pulse delay
when he detected it and when it sends it to the output. The program is
the following :
signal TRS : std_logic;
signal A,B,C : std_logic;
signal Fo_in : std_logic;
if rising_edge(clk) then
if YCrCb_rg2(9 downto 2) = "00000000" then--00
A := '1';
else
A := '0';
end if;
if YCrCb_rg3(9 downto 2) = "00000000" then--00
B := '1';
else
B := '0';
end if;
if YCrCb_rg4(9 downto 2) = "11111111" then--FF
C := '1';
else
C := '0';
end if;
end if;
if rst= '1' then
Fo_in <= '0';
elsif TRS = '1' then
Fo_in <= YCrCb_rg1(8);
end if;
TRS := A AND B AND C;
Fo <= Fo_in; --send to the ouput pin
Should i use variables instead of signals maybe?? Thanks in advance and
hope that you understand my english a bit.