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:
1 DATA_BITS : positive := 8;
2 DATA_FIFO_DEPTH : positive := 8;
3 META_BITS : T_POSVEC := (0 => 8);
4 META_FIFO_DEPTH : T_POSVEC := (0 => 16)
5 );
6 port (
7 Clock : in std_logic;
8 Reset : in std_logic;
9 -- IN Port
10 In_Valid : in std_logic;
11 In_Data : in std_logic_vector(DATA_BITS - 1 downto 0);
12 In_SOF : in std_logic;
13 In_EOF : in std_logic;
14 In_Ack : out std_logic;
15 In_Meta_rst : out std_logic;
16 In_Meta_nxt : out std_logic_vector(META_BITS'length - 1 downto 0);
17 In_Meta_Data : in std_logic_vector(isum(META_BITS) - 1 downto 0);
18 -- OUT Port
19 Out_Valid : out std_logic;
20 Out_Data : out std_logic_vector(DATA_BITS - 1 downto 0);
21 Out_SOF : out std_logic;
22 Out_EOF : out std_logic;
23 Out_Ack : in std_logic;
24 Out_Meta_rst : in std_logic;
25 Out_Meta_nxt : in std_logic_vector(META_BITS'length - 1 downto 0);
26 Out_Meta_Data : out std_logic_vector(isum(META_BITS) - 1 downto 0)
27 );
28end entity;
29
30
31architecture rtl of stream_FIFO is