PoC.bus.Arbiter¶
This module implements a generic arbiter. It currently supports the following arbitration strategies:
- Round Robin (RR)
Entity Declaration:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | entity bus_Arbiter is
generic (
STRATEGY : string := "RR"; -- RR, LOT
PORTS : positive := 1;
WEIGHTS : T_INTVEC := (0 => 1);
OUTPUT_REG : boolean := TRUE
);
port (
Clock : in std_logic;
Reset : in std_logic;
Arbitrate : in std_logic;
Request_Vector : in std_logic_vector(PORTS - 1 downto 0);
Arbitrated : out std_logic;
Grant_Vector : out std_logic_vector(PORTS - 1 downto 0);
Grant_Index : out std_logic_vector(log2ceilnz(PORTS) - 1 downto 0)
);
end entity;
|