Skip to content
Snippets Groups Projects
Commit 3dc963c1 authored by Eric Kooistra's avatar Eric Kooistra
Browse files

Add functions to derive MAC, IP address from GN index.

parent 5289dd4f
Branches
No related tags found
1 merge request!288Resolve L2SDP-836
...@@ -38,9 +38,30 @@ PACKAGE tb_eth_tester_pkg is ...@@ -38,9 +38,30 @@ PACKAGE tb_eth_tester_pkg is
CONSTANT c_eth_tester_ip_dst_addr : STD_LOGIC_VECTOR(31 DOWNTO 0) := x"0A6300FE"; -- 0A6300FE = '10.99.0.254' = DOP36-enp2s0 CONSTANT c_eth_tester_ip_dst_addr : STD_LOGIC_VECTOR(31 DOWNTO 0) := x"0A6300FE"; -- 0A6300FE = '10.99.0.254' = DOP36-enp2s0
CONSTANT c_eth_tester_udp_dst_port : STD_LOGIC_VECTOR(15 DOWNTO 0) := TO_UVEC(6001, 16); -- 0x1771 = 6001 CONSTANT c_eth_tester_udp_dst_port : STD_LOGIC_VECTOR(15 DOWNTO 0) := TO_UVEC(6001, 16); -- 0x1771 = 6001
-- Map global node index on UniBoard2 to node MAC address and node IP address
FUNCTION func_eth_tester_gn_index_to_mac_15_0(gn_index : NATURAL) RETURN STD_LOGIC_VECTOR;
FUNCTION func_eth_tester_gn_index_to_ip_15_0(gn_index : NATURAL) RETURN STD_LOGIC_VECTOR;
END tb_eth_tester_pkg; END tb_eth_tester_pkg;
PACKAGE BODY tb_eth_tester_pkg IS PACKAGE BODY tb_eth_tester_pkg IS
FUNCTION func_eth_tester_gn_index_to_mac_15_0(gn_index : NATURAL) RETURN STD_LOGIC_VECTOR IS
CONSTANT c_unb_nr : NATURAL := gn_index / 4; -- 4 PN per Uniboard2
CONSTANT c_node_nr : NATURAL := gn_index MOD 4;
CONSTANT c_mac_15_0 : STD_LOGIC_VECTOR(15 DOWNTO 0) := TO_UVEC(c_unb_nr, 8) & TO_UVEC(c_node_nr, 8);
BEGIN
RETURN c_mac_15_0;
END func_eth_tester_gn_index_to_mac_15_0;
FUNCTION func_eth_tester_gn_index_to_ip_15_0(gn_index : NATURAL) RETURN STD_LOGIC_VECTOR IS
CONSTANT c_unb_nr : NATURAL := gn_index / 4; -- 4 PN per Uniboard2
CONSTANT c_node_nr : NATURAL := gn_index MOD 4;
CONSTANT c_ip_15_0 : STD_LOGIC_VECTOR(15 DOWNTO 0) := TO_UVEC(c_unb_nr, 8) & TO_UVEC(c_node_nr+1, 8); -- +1 to avoid IP = *.*.*.0
BEGIN
RETURN c_ip_15_0;
END func_eth_tester_gn_index_to_ip_15_0;
END tb_eth_tester_pkg; END tb_eth_tester_pkg;
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment