blob: 61f11fee40e0523f2de0d76b8afbf86e8ec0a1a2 (
plain)
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
|
LIBRARY IEEE;
USE IEEE.std_logic_1164.all;
entity forgen is
generic(
bus_width : integer := 15;
TOP_GP2 : integer:= 0
);
port(
sysclk, reset, wrb : in std_logic;
din : in std_logic_vector(bus_width downto 0);
rdout: out std_logic_vector(bus_width downto 0)
);
end forgen;
architecture rtl of forgen is
component wbit1 -- register bit default 1
port(
clk : in std_logic;
wrb : in std_logic;
reset : in std_logic;
enb : in std_logic;
din : in std_logic;
dout : out std_logic);
end component;
signal regSelect : std_logic_vector(bus_width * 2 downto 0);
begin
-----------------------------------------------------
-- Reg : GP 2
-- Active : 32
-- Type : RW
-----------------------------------------------------
reg_gp2 : for bitnum in 0 to bus_width generate
wbit1_inst : wbit1
PORT MAP(
clk => sysclk,
wrb => wrb,
reset => reset,
enb => regSelect(TOP_GP2),
din => din(bitnum),
dout => rdout(bitnum)
);
end generate;
process(sysclk) begin
if sysclk'event and sysclk = '1' then
regSelect(1) <= '1';
end if;
end process;
end rtl;
|