-
Notifications
You must be signed in to change notification settings - Fork 0
/
vp_mmanip_test.vhd
67 lines (57 loc) · 1.39 KB
/
vp_mmanip_test.vhd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
library ieee;
use ieee.std_logic_1164.all;
use work.vga_util.all;
entity vp_mmanip_test is
port (
clk: in std_logic;
vga_hs: out std_logic;
vga_vs: out std_logic;
vga_r: out std_logic_vector(3 downto 0);
vga_g: out std_logic_vector(3 downto 0);
vga_b: out std_logic_vector(3 downto 0);
btnc, btnu, btnl, btnr, btnd: in std_logic;
sw: in std_logic_vector(15 downto 0);
dig_en: out std_logic_vector(7 downto 0);
seg_cs: out std_logic_vector(7 downto 0);
led: out std_logic_vector(9 downto 0)
);
end entity;
architecture structural of vp_mmanip_test is
signal addrb: std_logic_vector(15 downto 0) := X"0000";
signal dib, dob: std_logic_vector(7 downto 0) := X"00";
signal enb, regceb, web: std_logic := '0';
begin
video_pipeline_inst: entity work.video_pipeline(rtl)
generic map (
videomode => (640, 480, 60)
) port map (
clk => clk, en => '1', reset => '0',
hsync => vga_hs, vsync => vga_vs,
red => vga_r, green => vga_g, blue => vga_b,
addrb => addrb,
dib => dib,
dob => dob,
enb => enb,
regceb => regceb,
web => web
);
mmanip_inst: entity work.memory_manipulator(rtl)
port map (
clk => clk,
btnc => btnc,
btnu => btnu,
btnl => btnl,
btnr => btnr,
btnd => btnd,
sw => sw,
dig_en => dig_en,
seg_cs => seg_cs,
led => led,
address => addrb,
di => dib,
do => dob,
en => enb,
regce => regceb,
we => web
);
end architecture;