OpenCores
URL https://opencores.org/ocsvn/ahb_system_generator/ahb_system_generator/trunk

Subversion Repositories ahb_system_generator

[/] [ahb_system_generator/] [trunk/] [src/] [ahb_components.vhd] - Blame information for rev 3

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 federico.a
library ieee;
2
use ieee.std_logic_1164.all;
3
use ieee.std_logic_arith.all;
4
 
5
use work.ahb_package.all;
6
use work.ahb_funct.all;
7
use work.ahb_configure.all;
8
 
9
package ahb_components is
10
 
11
component fifo
12
generic (
13
  fifohempty_level: in integer:= 1;
14
  fifohfull_level: in integer:= 3;
15
  fifo_length: in integer:= 4);
16
port (
17
  hresetn: in std_logic;
18
  clk: in std_logic;
19
  fifo_reset: in std_logic;
20
  fifo_write: in std_logic;
21
  fifo_read: in std_logic;
22
  fifo_count: out std_logic_vector(nb_bits(fifo_length)-1 downto 0);
23
  fifo_full: out std_logic;
24
  fifo_hfull: out std_logic;
25
  fifo_empty: out std_logic;
26
  fifo_hempty: out std_logic;
27
  fifo_datain: in std_logic_vector(31 downto 0);
28
  fifo_dataout: out std_logic_vector(31 downto 0)
29
  );
30
end component;
31
 
32
component ahb_master
33
generic (
34
 fifohempty_level: in integer;
35
 fifohfull_level: in integer;
36
 fifo_length: in integer);
37
port (
38
  hresetn: in std_logic;
39
  hclk: in std_logic;
40
  mst_in: in mst_in_t;
41
  mst_out: out mst_out_t;
42
  dma_start: in start_type_t;
43
  m_wrap_out: out wrap_out_t;
44
  m_wrap_in: in wrap_in_t;
45
  slv_running: in std_logic;
46
  mst_running: out std_logic;
47
  eot_int: out std_logic);
48
end component;
49
 
50
component ahb_arbiter
51
  generic(
52
    num_arb: in integer;
53
    num_arb_msts: in integer range 1 to 15;
54
    def_arb_mst: in integer range 0 to 15;
55
    num_slvs: in integer range 1 to 15;
56
    alg_number: in integer range 0 to 5);
57
  port(
58
    hresetn: in std_logic;
59
    hclk: in std_logic;
60
    remap: in std_logic;
61
    mst_in_v: in mst_out_v_t(num_arb_msts-1 downto 0);
62
    mst_out_v: out mst_in_v_t(num_arb_msts-1 downto 0);
63
    slv_out_v: out slv_in_v_t(num_slvs-1 downto 0);
64
    slv_in_v: in slv_out_v_t(num_slvs-1 downto 0));
65
end component;
66
 
67
component ahb_slave_wait
68
  generic (
69
    num_slv: in integer range 0 to 15:= 1;
70
    fifohempty_level: in integer:= 2;
71
    fifohfull_level: in integer:= 5;
72
    fifo_length: in integer:= 8);
73
  port(
74
    hresetn: in std_logic;
75
    hclk: in std_logic;
76
        remap: in std_logic;
77
    slv_in: in slv_in_t;
78
    slv_out: out slv_out_t;
79
    mst_running: in std_logic;
80
    prior_in: in std_logic;
81
    slv_running: out std_logic;
82
    slv_err: out std_logic;
83
    s_wrap_out: out wrap_out_t;
84
    s_wrap_in: in wrap_in_t);
85
end component;
86
 
87
component mst_wrap
88
generic (
89
--synopsys translate_off
90
dump_file: in string:= "mst_wrap.log";
91
dump_type: in integer;
92
--synopsys translate_on
93
ahb_max_addr: in integer:= 4;
94
m_const_lat_write: in integer;
95
m_const_lat_read: in integer;
96
m_write_burst: in integer;
97
m_read_burst: in integer);
98
port (
99
  hresetn: in std_logic;
100
  clk: in std_logic;
101
  conf: in conf_type_t;
102
  dma_start: out start_type_t;
103
  m_wrap_in: in wrap_out_t;
104
  m_wrap_out: out wrap_in_t);
105
end component;
106
 
107
component slv_mem
108
generic (
109
--synopsys translate_off
110
dump_file: in string:= "slv_wrap.log";
111
dump_type: in integer;
112
--synopsys translate_on
113
ahb_max_addr: in integer:= 8;
114
s_const_lat_write: in integer;
115
s_const_lat_read: in integer;
116
s_write_burst: in integer;
117
s_read_burst: in integer);
118
port (
119
  hresetn: in std_logic;
120
  clk: in std_logic;
121
  conf: in conf_type_t;
122
  dma_start: out start_type_t;
123
  s_wrap_in: in wrap_out_t;
124
  s_wrap_out: out wrap_in_t
125
  );
126
end component;
127
 
128
component uut_stimulator
129
generic (
130
stim_type: in uut_params_t;
131
enable: in integer;
132
eot_enable: in integer);
133
port(
134
  hclk : in std_logic;
135
  hresetn : in std_logic;
136
  amba_error: in std_logic;
137
  eot_int: in std_logic;
138
  conf: out conf_type_t;
139
  sim_end: out std_logic);
140
end component;
141
 
142
end;
143
 
144
package body ahb_components is
145
end;
146
 
147
 
148
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.