PoC.bus.stream.FIFO
This module implements a generic buffer (FIFO) for the
PoC.Stream protocol. It is generic in
DATA_BITS
and in META_BITS
as well as in FIFO depths for data and
meta information.
Entity Declaration:
1entity stream_FIFO is
2 generic (
3 FRAMES : positive := 2;
4 DATA_BITS : positive := 8;
5 DATA_FIFO_DEPTH : positive := 8;
6 META_BITS : T_POSVEC := (0 => 8);
7 META_FIFO_DEPTH : T_POSVEC := (0 => 16)
8 );
9 port (
10 Clock : in std_logic;
11 Reset : in std_logic;
12 -- IN Port
13 In_Valid : in std_logic;
14 In_Data : in std_logic_vector(DATA_BITS - 1 downto 0);
15 In_SOF : in std_logic;
16 In_EOF : in std_logic;
17 In_Ack : out std_logic;
18 In_Meta_rst : out std_logic;
19 In_Meta_nxt : out std_logic_vector(META_BITS'length - 1 downto 0);
20 In_Meta_Data : in std_logic_vector(isum(META_BITS) - 1 downto 0);
21 -- OUT Port
22 Out_Valid : out std_logic;
23 Out_Data : out std_logic_vector(DATA_BITS - 1 downto 0);
24 Out_SOF : out std_logic;
25 Out_EOF : out std_logic;
26 Out_Ack : in std_logic;
27 Out_Meta_rst : in std_logic;
28 Out_Meta_nxt : in std_logic_vector(META_BITS'length - 1 downto 0);
29 Out_Meta_Data : out std_logic_vector(isum(META_BITS) - 1 downto 0)
30 );
31end entity;