Project

General

Profile

479 markw
-------------------------------------------------------------------[09.05.2016]
483 markw
-- DVI
479 markw
-------------------------------------------------------------------------------
-- Engineer: MVV

library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;

483 markw
entity dvi is
479 markw
port (
I_CLK_PIXEL : in std_logic; -- pixelclock
I_HSYNC : in std_logic;
I_VSYNC : in std_logic;
I_BLANK : in std_logic;
I_RED : in std_logic_vector(7 downto 0);
I_GREEN : in std_logic_vector(7 downto 0);
I_BLUE : in std_logic_vector(7 downto 0);

483 markw
O_R : out std_logic_vector(9 downto 0);
O_G : out std_logic_vector(9 downto 0);
O_B : out std_logic_vector(9 downto 0));
end entity dvi;

architecture rtl of dvi is

479 markw
signal r : std_logic_vector(9 downto 0);
signal g : std_logic_vector(9 downto 0);
signal b : std_logic_vector(9 downto 0);
483 markw
479 markw
begin
encode_r : entity work.encoder
port map (
483 markw
CLK => I_CLK_PIXEL,
DATA => I_RED,
C => "00",
VDE => not(I_BLANK),
ENCODED => r);
479 markw
encode_g : entity work.encoder
port map (
483 markw
CLK => I_CLK_PIXEL,
DATA => I_GREEN,
C => "00",
VDE => not(I_BLANK),
ENCODED => g);
479 markw
encode_b : entity work.encoder
port map (
483 markw
CLK => I_CLK_PIXEL,
DATA => I_BLUE,
C => (I_VSYNC & I_HSYNC),
VDE => not(I_BLANK),
ENCODED => b);
479 markw
483 markw
o_r <= r;
o_g <= g;
o_b <= b;
479 markw
end architecture rtl;