From f2a0dffb496db2e8bfb653976b7d6ff55c2e9d3b Mon Sep 17 00:00:00 2001 From: Mathias Kreider <m.kreider@gsi.de> Date: Fri, 10 Feb 2012 12:26:40 +0000 Subject: [PATCH] --- hdl/eb_testbench/EB_2_wb_converter.vhd | 45 +++++-- hdl/eb_testbench/EB_2_wb_converter.vhd.bak | 47 +++++-- hdl/eb_testbench/EB_CORE.vhd | 63 ++-------- hdl/eb_testbench/EB_CORE.vhd.bak | 54 +------- hdl/eb_testbench/EB_RX_CTRL.vhd | 87 ++++++------- hdl/eb_testbench/EB_RX_CTRL.vhd.bak | 87 ++++++------- hdl/eb_testbench/EB_TX_CTRL.vhd | 1 - hdl/eb_testbench/EB_TX_CTRL.vhd.bak | 2 +- hdl/eb_testbench/eb_tb.cr.mti | 116 +++++++++--------- hdl/eb_testbench/eb_tb.mpf | 62 +++++----- hdl/eb_testbench/main.sv | 2 +- hdl/eb_testbench/main.sv.bak | 4 +- hdl/eb_testbench/wb_binary_file_source.svh | 2 +- .../wb_binary_file_source.svh.bak | 10 +- 14 files changed, 256 insertions(+), 326 deletions(-) diff --git a/hdl/eb_testbench/EB_2_wb_converter.vhd b/hdl/eb_testbench/EB_2_wb_converter.vhd index e34528a..73bba01 100644 --- a/hdl/eb_testbench/EB_2_wb_converter.vhd +++ b/hdl/eb_testbench/EB_2_wb_converter.vhd @@ -74,7 +74,9 @@ architecture behavioral of eb_2_wb_converter is ------------------------------------------------------------------------------------------ constant c_width_int : integer := 24; type t_state_RX is (IDLE, EB_HDR_REC, EB_HDR_PROC, EB_HDR_PROBE_ID, CYC_HDR_REC, CYC_HDR_READ_PROC, CYC_HDR_READ_GET_ADR, WB_READ_RDY, WB_READ, CYC_HDR_WRITE_PROC, CYC_HDR_WRITE_GET_ADR, WB_WRITE_RDY, WB_WRITE, CYC_DONE, EB_DONE, ERROR); -type t_state_TX is (IDLE, EB_HDR_INIT, EB_HDR_PROBE_ID, PACKET_HDR_SEND, EB_HDR_SEND, RDY, CYC_HDR_INIT, CYC_HDR_SEND, BASE_WRITE_ADR_SEND, DATA_SEND, ZERO_PAD_WRITE, ZERO_PAD_WAIT, ERROR); +type t_state_TX is (IDLE, EB_HDR_INIT, EB_HDR_PROBE_ID, EB_HDR_PROBE_WAIT, PACKET_HDR_SEND, EB_HDR_SEND, RDY, CYC_HDR_INIT, CYC_HDR_SEND, BASE_WRITE_ADR_SEND, DATA_SEND, ZERO_PAD_WRITE, ZERO_PAD_WAIT, ERROR); + + signal s_state_RX : t_state_RX := IDLE; signal s_state_TX : t_state_TX := IDLE; @@ -103,6 +105,7 @@ signal s_WB_ACK_cnt_big : unsigned(8 downto 0); alias a_WB_ACK_cnt : unsigned(7 downto 0) is s_WB_ACK_cnt_big(7 downto 0); alias a_WB_ACK_cnt_err : unsigned(0 downto 0) is s_WB_ACK_cnt_big(8 downto 8); +signal s_EB_probe_wait_cnt : unsigned(3 downto 0); signal s_EB_TX_zeropad_cnt : unsigned(7 downto 0); signal s_EB_RX_byte_cnt : unsigned(15 downto 0); signal s_EB_TX_byte_cnt : unsigned(15 downto 0); @@ -261,6 +264,7 @@ s_WB_master_o.CYC <= s_WB_CYC; s_WB_master_o.WE <= s_WB_WE; EB_RX_o.STALL <= s_rx_fifo_am_full; EB_RX_o.ACK <= s_EB_RX_ACK; +EB_RX_o.ERR <= '0'; s_rx_fifo_we <= EB_RX_i.STB AND NOT (s_rx_fifo_am_full); -- OR s_packet_reception_complete); @@ -346,6 +350,16 @@ begin end if; end if; + --Counter: Probewait + if(s_state_TX = EB_HDR_PROBE_ID) then + s_EB_probe_wait_cnt <= (others => '0'); + else + if(s_state_TX = EB_HDR_PROBE_WAIT) then + s_EB_probe_wait_cnt <= s_EB_probe_wait_cnt +1; + end if; + end if; + + end if; end if; end process; @@ -399,13 +413,15 @@ begin else --eb hdr seems valid, prepare answering packet. Prefill RX buffer if(unsigned(s_rx_fifo_gauge) > 3) then - s_state_TX <= EB_HDR_INIT; - if(s_EB_RX_HDR.PROBE = '0') then -- no probe, prepare cycle reception - s_state_RX <= CYC_HDR_REC; - else - s_state_RX <= EB_HDR_PROBE_ID ; - end if; + s_state_RX <= CYC_HDR_REC; + s_state_TX <= EB_HDR_INIT; + else + report "EB: Waiting for buffer ..." severity note; end if; + if(s_EB_RX_HDR.PROBE = '1') then -- no probe, prepare cycle reception + s_state_RX <= EB_HDR_PROBE_ID ; + s_state_TX <= EB_HDR_INIT; + end if; end if; when EB_HDR_PROBE_ID => s_state_RX <= EB_DONE; @@ -502,12 +518,23 @@ begin --TODO: padding to 64bit alignment when EB_HDR_SEND => if(s_tx_fifo_full = '0') then if(s_EB_RX_HDR.PROBE = '1') then - s_state_TX <= IDLE; + s_state_TX <= EB_HDR_PROBE_ID; else s_state_TX <= RDY; end if; end if; + when EB_HDR_PROBE_ID => s_state_TX <= EB_HDR_PROBE_WAIT; + + + + + when EB_HDR_PROBE_WAIT => if(s_EB_probe_wait_cnt > 3 AND s_tx_fifo_empty = '1' ) then + s_state_TX <= IDLE; + end if; + + + when CYC_HDR_INIT => s_state_TX <= CYC_HDR_SEND; when CYC_HDR_SEND => if(s_tx_fifo_full = '0') then @@ -609,7 +636,7 @@ begin when EB_HDR_REC => if(EB_RX_i.CYC = '1' AND s_rx_fifo_empty = '0') then s_EB_RX_HDR <= to_EB_HDR(s_rx_fifo_q); - s_EB_packet_length <= unsigned(byte_count_rx_i) - 42; -- Length - IPHDR - UDPHDR + s_EB_packet_length <= unsigned(byte_count_rx_i); s_rx_fifo_rd <= '1'; end if; diff --git a/hdl/eb_testbench/EB_2_wb_converter.vhd.bak b/hdl/eb_testbench/EB_2_wb_converter.vhd.bak index 4595ba4..653578e 100644 --- a/hdl/eb_testbench/EB_2_wb_converter.vhd.bak +++ b/hdl/eb_testbench/EB_2_wb_converter.vhd.bak @@ -74,7 +74,9 @@ architecture behavioral of eb_2_wb_converter is ------------------------------------------------------------------------------------------ constant c_width_int : integer := 24; type t_state_RX is (IDLE, EB_HDR_REC, EB_HDR_PROC, EB_HDR_PROBE_ID, CYC_HDR_REC, CYC_HDR_READ_PROC, CYC_HDR_READ_GET_ADR, WB_READ_RDY, WB_READ, CYC_HDR_WRITE_PROC, CYC_HDR_WRITE_GET_ADR, WB_WRITE_RDY, WB_WRITE, CYC_DONE, EB_DONE, ERROR); -type t_state_TX is (IDLE, EB_HDR_INIT, EB_HDR_PROBE_ID, PACKET_HDR_SEND, EB_HDR_SEND, RDY, CYC_HDR_INIT, CYC_HDR_SEND, BASE_WRITE_ADR_SEND, DATA_SEND, ZERO_PAD_WRITE, ZERO_PAD_WAIT, ERROR); +type t_state_TX is (IDLE, EB_HDR_INIT, EB_HDR_PROBE_ID, EB_HDR_PROBE_WAIT, PACKET_HDR_SEND, EB_HDR_SEND, RDY, CYC_HDR_INIT, CYC_HDR_SEND, BASE_WRITE_ADR_SEND, DATA_SEND, ZERO_PAD_WRITE, ZERO_PAD_WAIT, ERROR); + + signal s_state_RX : t_state_RX := IDLE; signal s_state_TX : t_state_TX := IDLE; @@ -103,6 +105,7 @@ signal s_WB_ACK_cnt_big : unsigned(8 downto 0); alias a_WB_ACK_cnt : unsigned(7 downto 0) is s_WB_ACK_cnt_big(7 downto 0); alias a_WB_ACK_cnt_err : unsigned(0 downto 0) is s_WB_ACK_cnt_big(8 downto 8); +signal s_EB_probe_wait_cnt : unsigned(7 downto 0); signal s_EB_TX_zeropad_cnt : unsigned(7 downto 0); signal s_EB_RX_byte_cnt : unsigned(15 downto 0); signal s_EB_TX_byte_cnt : unsigned(15 downto 0); @@ -261,6 +264,7 @@ s_WB_master_o.CYC <= s_WB_CYC; s_WB_master_o.WE <= s_WB_WE; EB_RX_o.STALL <= s_rx_fifo_am_full; EB_RX_o.ACK <= s_EB_RX_ACK; +EB_RX_o.ERR <= '0'; s_rx_fifo_we <= EB_RX_i.STB AND NOT (s_rx_fifo_am_full); -- OR s_packet_reception_complete); @@ -346,6 +350,16 @@ begin end if; end if; + --Counter: Probewait + if(s_state_TX = EB_HDR_PROBE_ID) then + s_EB_probe_wait_cnt <= (others => '0'); + else + if(s_state_TX = EB_HDR_PROBE_WAIT) then + s_EB_probe_wait_cnt <= s_EB_probe_wait_cnt +1; + end if; + end if; + + end if; end if; end process; @@ -399,13 +413,15 @@ begin else --eb hdr seems valid, prepare answering packet. Prefill RX buffer if(unsigned(s_rx_fifo_gauge) > 3) then - s_state_TX <= EB_HDR_INIT; - if(s_EB_RX_HDR.PROBE = '0') then -- no probe, prepare cycle reception - s_state_RX <= CYC_HDR_REC; - else - s_state_RX <= EB_HDR_PROBE_ID ; - end if; + s_state_RX <= CYC_HDR_REC; + s_state_TX <= EB_HDR_INIT; + else + report "EB: Waiting for buffer ..." severity note; end if; + if(s_EB_RX_HDR.PROBE = '1') then -- no probe, prepare cycle reception + s_state_RX <= EB_HDR_PROBE_ID ; + s_state_TX <= EB_HDR_INIT; + end if; end if; when EB_HDR_PROBE_ID => s_state_RX <= EB_DONE; @@ -502,12 +518,23 @@ begin --TODO: padding to 64bit alignment when EB_HDR_SEND => if(s_tx_fifo_full = '0') then if(s_EB_RX_HDR.PROBE = '1') then - s_state_TX <= IDLE; + s_state_TX <= EB_HDR_PROBE_ID; else s_state_TX <= RDY; end if; end if; + when EB_HDR_PROBE_ID => s_state_TX <= EB_HDR_PROBE_WAIT; + + + + + when EB_HDR_PROBE_WAIT => if(s_EB_probe_wait_cnt > 3 AND s_tx_fifo_empty = '1' ) then + s_state_TX <= IDLE; + end if; + + + when CYC_HDR_INIT => s_state_TX <= CYC_HDR_SEND; when CYC_HDR_SEND => if(s_tx_fifo_full = '0') then @@ -550,7 +577,7 @@ begin if (nRST_i = '0') then s_EB_TX_HDR <= init_EB_HDR; - PROBE_ID <= X"DEADBEEF"; + PROBE_ID <= X"1337BEEF"; s_EB_TX_CUR_CYCLE <= to_EB_CYC(test); s_EB_TX_base_wr_adr<= (others => '0'); s_EB_RX_CUR_CYCLE <= to_EB_CYC(test); @@ -609,7 +636,7 @@ begin when EB_HDR_REC => if(EB_RX_i.CYC = '1' AND s_rx_fifo_empty = '0') then s_EB_RX_HDR <= to_EB_HDR(s_rx_fifo_q); - s_EB_packet_length <= unsigned(byte_count_rx_i) - 42; -- Length - IPHDR - UDPHDR + s_EB_packet_length <= unsigned(byte_count_rx_i); s_rx_fifo_rd <= '1'; end if; diff --git a/hdl/eb_testbench/EB_CORE.vhd b/hdl/eb_testbench/EB_CORE.vhd index d907ffa..6ce2a6b 100644 --- a/hdl/eb_testbench/EB_CORE.vhd +++ b/hdl/eb_testbench/EB_CORE.vhd @@ -39,7 +39,7 @@ use work.wb16_package.all; entity EB_CORE is -generic(g_master_slave : STRING := "SLAVE"; g_eth_framing : natural := 1); +generic(g_master_slave : STRING := "SLAVE"); port ( clk_i : in std_logic; --! clock input @@ -65,9 +65,9 @@ port src_STALL_i : in std_logic; -- src_ERR_i : in std_logic; -- src_ACK_i : in std_logic; -- - src_adr_o : out std_logic_vector(1 downto 0); + src_adr_o : out std_logic_vector(1 downto 0); - src_sel_o : out std_logic_vector(1 downto 0); + src_sel_o : out std_logic_vector(1 downto 0); -------------------------------------------------------------- debug_TX_TOL_o : out std_logic_vector(15 downto 0); hex_switch_i : in std_logic_vector(3 downto 0); @@ -146,6 +146,7 @@ signal RXCTRL_2_TXCTRL_reply_MAC : std_logic_vector(47 downto 0); signal RXCTRL_2_TXCTRL_reply_IP : std_logic_vector(31 downto 0); signal RXCTRL_2_TXCTRL_reply_PORT : std_logic_vector(15 downto 0); signal RXCTRL_2_TXCTRL_TOL : std_logic_vector(15 downto 0); +signal RXCTRL_2_CORE_LEN : std_logic_vector(15 downto 0); signal RXCTRL_2_TXCTRL_valid : std_logic; --EB <-> TXCTRL @@ -179,7 +180,6 @@ end component; component EB_TX_CTRL is -generic(g_eth_framing : natural := 1); port( clk_i : in std_logic; nRst_i : in std_logic; @@ -205,8 +205,7 @@ port( end component; component EB_RX_CTRL is -generic(g_eth_framing : natural := 1); - port( + port( clk_i : in std_logic; nRst_i : in std_logic; @@ -222,7 +221,8 @@ generic(g_eth_framing : natural := 1); reply_IP_o : out std_logic_vector(4*8-1 downto 0); reply_Port_o : out std_logic_vector(2*8-1 downto 0); TOL_o : out std_logic_vector(2*8-1 downto 0); - + payload_len_o : out std_logic_vector(2*8-1 downto 0); + my_mac_i : in std_logic_vector(6*8-1 downto 0); my_ip_i : in std_logic_vector(4*8-1 downto 0); my_port_i : in std_logic_vector(2*8-1 downto 0); @@ -310,50 +310,8 @@ end component; debug_TX_TOL_o <= RXCTRL_2_TXCTRL_TOL; - --- file_sink1: binary_sink generic map ( filename => "Eb_RX_data.dat", - -- wordsize => 32, - -- endian => 0) - -- port map ( clk_i => clk_i, - -- nRST_i => nRST_i, - -- rdy_o => open, - -- sample_i => RXCTRL_2_EB_wb_master.CYC, - -- valid_i => DEBUG_sink1_valid, - -- data_i => RXCTRL_2_EB_wb_master.DAT ); - --- file_sink2: binary_sink generic map ( filename => "Eb_WB_data_o.dat", - -- wordsize => 32, - -- endian => 0) - -- port map ( clk_i => clk_i, - -- nRST_i => nRST_i, - -- rdy_o => open, - -- sample_i => DEBUG_WB_master_o.CYC, - -- valid_i => DEBUG_sink23_valid, - -- data_i => DEBUG_WB_master_o.DAT ); - - -- file_sink3: binary_sink generic map ( filename => "Eb_WB_addr.dat", - -- wordsize => 32, - -- endian => 0) - -- port map ( clk_i => clk_i, - -- nRST_i => nRST_i, - -- rdy_o => open, - -- sample_i => DEBUG_WB_master_o.CYC, - -- valid_i => DEBUG_sink23_valid, - -- data_i => DEBUG_WB_master_o.ADR ); - - -- file_sink4: binary_sink generic map ( filename => "Eb_WB_data_i.dat", - -- wordsize => 32, - -- endian => 0) - -- port map ( clk_i => clk_i, - -- nRST_i => nRST_i, - -- rdy_o => open, - -- sample_i => DEBUG_WB_master_o.CYC, - -- valid_i => WB_master_i.ACK, - -- data_i => WB_master_i.DAT ); - - DEBUG_sink1_valid <= (RXCTRL_2_EB_wb_master.STB AND NOT EB_2_RXCTRL_wb_slave.STALL); DEBUG_sink23_valid <= (DEBUG_WB_master_o.STB AND NOT WB_master_i.STALL); @@ -444,7 +402,6 @@ master : if(g_master_slave = "MASTER") generate ); TXCTRL : EB_TX_CTRL - generic map(g_eth_framing => g_eth_framing) port map ( clk_i => clk_i, @@ -469,7 +426,6 @@ master : if(g_master_slave = "MASTER") generate RXCTRL: EB_RX_CTRL - generic map(g_eth_framing => g_eth_framing) port map ( clk_i => clk_i, nRst_i => nRst_i, wb_master_i => EB_2_RXCTRL_wb_master, @@ -494,7 +450,6 @@ end generate; slave : if(g_master_slave = "SLAVE") generate TXCTRL : EB_TX_CTRL - generic map(g_eth_framing => g_eth_framing) port map ( clk_i => clk_i, @@ -519,7 +474,6 @@ slave : if(g_master_slave = "SLAVE") generate RXCTRL: EB_RX_CTRL - generic map(g_eth_framing => g_eth_framing) port map ( clk_i => clk_i, nRst_i => nRst_i, wb_master_i => EB_2_RXCTRL_wb_master, @@ -532,6 +486,7 @@ slave : if(g_master_slave = "SLAVE") generate reply_IP_o => RXCTRL_2_TXCTRL_reply_IP, reply_PORT_o => RXCTRL_2_TXCTRL_reply_PORT, TOL_o => RXCTRL_2_TXCTRL_TOL, + payload_len_o => RXCTRL_2_CORE_LEN, my_mac_i => CFG_MY_MAC, my_ip_i => CFG_MY_IP, my_port_i => CFG_MY_PORT, @@ -553,7 +508,7 @@ slave : if(g_master_slave = "SLAVE") generate EB_TX_i => TXCTRL_2_EB_wb_master, EB_TX_o => EB_2_TXCTRL_wb_master, - byte_count_rx_i => RXCTRL_2_TXCTRL_TOL, + byte_count_rx_i => RXCTRL_2_CORE_LEN, config_master_i => CFG_2_eb_slave, config_master_o => eb_2_CFG_slave, diff --git a/hdl/eb_testbench/EB_CORE.vhd.bak b/hdl/eb_testbench/EB_CORE.vhd.bak index 2035ff8..0b9e2f7 100644 --- a/hdl/eb_testbench/EB_CORE.vhd.bak +++ b/hdl/eb_testbench/EB_CORE.vhd.bak @@ -39,7 +39,7 @@ use work.wb16_package.all; entity EB_CORE is -generic(g_master_slave : STRING := "SLAVE"; g_eth_framing : natural := 1); +generic(g_master_slave : STRING := "SLAVE"); port ( clk_i : in std_logic; --! clock input @@ -65,9 +65,9 @@ port src_STALL_i : in std_logic; -- src_ERR_i : in std_logic; -- src_ACK_i : in std_logic; -- - src_adr_o : out std_logic_vector(1 downto 0); + src_adr_o : out std_logic_vector(1 downto 0); - src_sel_o : out std_logic_vector(1 downto 0); + src_sel_o : out std_logic_vector(1 downto 0); -------------------------------------------------------------- debug_TX_TOL_o : out std_logic_vector(15 downto 0); hex_switch_i : in std_logic_vector(3 downto 0); @@ -179,7 +179,6 @@ end component; component EB_TX_CTRL is -generic(g_eth_framing : STRING := "ON"); port( clk_i : in std_logic; nRst_i : in std_logic; @@ -205,7 +204,6 @@ port( end component; component EB_RX_CTRL is -generic(g_eth_framing : natural := 1); port( clk_i : in std_logic; nRst_i : in std_logic; @@ -310,49 +308,7 @@ end component; debug_TX_TOL_o <= RXCTRL_2_TXCTRL_TOL; - - --- file_sink1: binary_sink generic map ( filename => "Eb_RX_data.dat", - -- wordsize => 32, - -- endian => 0) - -- port map ( clk_i => clk_i, - -- nRST_i => nRST_i, - -- rdy_o => open, - -- sample_i => RXCTRL_2_EB_wb_master.CYC, - -- valid_i => DEBUG_sink1_valid, - -- data_i => RXCTRL_2_EB_wb_master.DAT ); - --- file_sink2: binary_sink generic map ( filename => "Eb_WB_data_o.dat", - -- wordsize => 32, - -- endian => 0) - -- port map ( clk_i => clk_i, - -- nRST_i => nRST_i, - -- rdy_o => open, - -- sample_i => DEBUG_WB_master_o.CYC, - -- valid_i => DEBUG_sink23_valid, - -- data_i => DEBUG_WB_master_o.DAT ); - - -- file_sink3: binary_sink generic map ( filename => "Eb_WB_addr.dat", - -- wordsize => 32, - -- endian => 0) - -- port map ( clk_i => clk_i, - -- nRST_i => nRST_i, - -- rdy_o => open, - -- sample_i => DEBUG_WB_master_o.CYC, - -- valid_i => DEBUG_sink23_valid, - -- data_i => DEBUG_WB_master_o.ADR ); - - -- file_sink4: binary_sink generic map ( filename => "Eb_WB_data_i.dat", - -- wordsize => 32, - -- endian => 0) - -- port map ( clk_i => clk_i, - -- nRST_i => nRST_i, - -- rdy_o => open, - -- sample_i => DEBUG_WB_master_o.CYC, - -- valid_i => WB_master_i.ACK, - -- data_i => WB_master_i.DAT ); - DEBUG_sink1_valid <= (RXCTRL_2_EB_wb_master.STB AND NOT EB_2_RXCTRL_wb_slave.STALL); DEBUG_sink23_valid <= (DEBUG_WB_master_o.STB AND NOT WB_master_i.STALL); @@ -444,7 +400,6 @@ master : if(g_master_slave = "MASTER") generate ); TXCTRL : EB_TX_CTRL - generic map(g_eth_framing => g_eth_framing) port map ( clk_i => clk_i, @@ -469,7 +424,6 @@ master : if(g_master_slave = "MASTER") generate RXCTRL: EB_RX_CTRL - generic map(g_eth_framing => g_eth_framing) port map ( clk_i => clk_i, nRst_i => nRst_i, wb_master_i => EB_2_RXCTRL_wb_master, @@ -494,7 +448,6 @@ end generate; slave : if(g_master_slave = "SLAVE") generate TXCTRL : EB_TX_CTRL - generic map(g_eth_framing => g_eth_framing) port map ( clk_i => clk_i, @@ -519,7 +472,6 @@ slave : if(g_master_slave = "SLAVE") generate RXCTRL: EB_RX_CTRL - generic map(g_eth_framing => g_eth_framing) port map ( clk_i => clk_i, nRst_i => nRst_i, wb_master_i => EB_2_RXCTRL_wb_master, diff --git a/hdl/eb_testbench/EB_RX_CTRL.vhd b/hdl/eb_testbench/EB_RX_CTRL.vhd index 727ed53..6fe41ff 100644 --- a/hdl/eb_testbench/EB_RX_CTRL.vhd +++ b/hdl/eb_testbench/EB_RX_CTRL.vhd @@ -40,7 +40,6 @@ use work.wb32_package.all; use work.wb16_package.all; entity EB_RX_CTRL is - generic(g_eth_framing : natural := 1); port( clk_i : in std_logic; nRst_i : in std_logic; @@ -57,7 +56,8 @@ entity EB_RX_CTRL is reply_IP_o : out std_logic_vector(4*8-1 downto 0); reply_Port_o : out std_logic_vector(2*8-1 downto 0); TOL_o : out std_logic_vector(2*8-1 downto 0); - + payload_len_o : out std_logic_vector(2*8-1 downto 0); + my_mac_i : in std_logic_vector(6*8-1 downto 0); my_ip_i : in std_logic_vector(4*8-1 downto 0); my_port_i : in std_logic_vector(2*8-1 downto 0); @@ -133,6 +133,7 @@ architecture behavioral of EB_RX_CTRL is signal ETH_RX : ETH_HDR; signal IPV4_RX : IPV4_HDR; signal UDP_RX : UDP_HDR; + signal payload_len : std_logic_vector(2*8-1 downto 0); signal RX_HDR_slv : std_logic_vector(c_IPV4_HLEN*8-1 downto 0) ; @@ -164,7 +165,7 @@ begin - Shift_in : sipo_flag generic map (16, c_IPV4_HLEN*8) + Shift_in : sipo_flag generic map (16, c_IPV4_HLEN*8) --IP header is longest possibility port map (d_i => RX_slave_i.DAT, q_o => RX_HDR_slv, clk_i => clk_i, @@ -216,7 +217,7 @@ begin RX_hdr_o.STALL <= HDR_STALL; - + MUX_RX : with state_mux select RX_slave_o <= conv_A when PAYLOAD, RX_hdr_o when others; @@ -240,6 +241,7 @@ begin reply_MAC_o <= ETH_RX.SRC; reply_IP_o <= IPV4_RX.SRC; reply_PORT_o <= UDP_RX.SRC_PORT; + payload_len_o <= payload_len; TOL_o <= IPV4_RX.TOL; @@ -251,34 +253,28 @@ begin -- SYNC RESET --========================================================================== if (nRST_i = '0') then - if(g_eth_framing = 1) then - state_HDR <= ETH; - else - state_HDR <= IPV4; - end if; - counter_input <= 0; - hdr_done <= '0'; - HDR_STALL <= '0'; - else - - if(counter_clr = '1') then - if(g_eth_framing = 1) then - state_HDR <= ETH; - else - state_HDR <= IPV4; - end if; - counter_input <= 0; + + state_HDR <= ETH; + counter_input <= 0; + hdr_done <= '0'; + state_mux <= HEADER; + HDR_STALL <= '0'; + else + + if(counter_clr = '1') then + state_HDR <= ETH; + counter_input <= 0; hdr_done <= '0'; state_mux <= HEADER; + end if; + + - - - - - if(state_RX = HDR_RECEIVE) then + if(state_RX = HDR_RECEIVE) then if(RX_slave_i.CYC = '1' and RX_slave_i.STB = '1') then counter_input <= counter_input +2; + end if; case state_HDR is @@ -336,13 +332,18 @@ end process; - + payload_len <= (others => '0'); else counter_clr <= '0'; sipo_clr <= '0'; - + RX_hdr_o.ACK <= '0'; + if(RX_slave_i.CYC = '1' and RX_slave_i.STB = '1') then + RX_hdr_o.ACK <= '1'; + end if; + + if((RX_slave_i.CYC = '0') and not ((state_RX = PAYLOAD_RECEIVE) or (state_RX = IDLE))) then --packet aborted before completion state_RX <= error; else @@ -350,32 +351,16 @@ end process; case state_RX is when IDLE => counter_clr <= '1'; if(RX_slave_i.CYC = '1' and RX_slave_i.STB = '1') then - --check if this is synthesised correctly - - - state_RX <= HDR_RECEIVE; - valid_o <= '1'; - end if; + state_RX <= HDR_RECEIVE; + end if; when HDR_RECEIVE => if(hdr_done = '1') then state_RX <= PAYLOAD_RECEIVE; - - - end if; - - when WAIT_STATE => state_RX <= CHECK_HDR; - - when CHECK_HDR => if(ETH_RX.TYP = x"0800" and IPV4_RX.PRO = x"11") then - valid_o <= '1'; - -- - - state_rx <= PAYLOAD_RECEIVE; - else - report("BAD PACKET HDR") severity warning; - state_rx <= error; - end if; - - + payload_len <= std_logic_vector(unsigned(UDP_RX .MLEN)-8); + valid_o <= '1'; + end if; + + when PAYLOAD_RECEIVE => if(RX_slave_i.CYC = '0') then state_RX <= IDLE; diff --git a/hdl/eb_testbench/EB_RX_CTRL.vhd.bak b/hdl/eb_testbench/EB_RX_CTRL.vhd.bak index 809ab9e..cfa2f47 100644 --- a/hdl/eb_testbench/EB_RX_CTRL.vhd.bak +++ b/hdl/eb_testbench/EB_RX_CTRL.vhd.bak @@ -40,7 +40,6 @@ use work.wb32_package.all; use work.wb16_package.all; entity EB_RX_CTRL is - generic(g_eth_framing : natural := 1); port( clk_i : in std_logic; nRst_i : in std_logic; @@ -57,7 +56,8 @@ entity EB_RX_CTRL is reply_IP_o : out std_logic_vector(4*8-1 downto 0); reply_Port_o : out std_logic_vector(2*8-1 downto 0); TOL_o : out std_logic_vector(2*8-1 downto 0); - + payload_len_o : out std_logic_vector(2*8-1 downto 0); + my_mac_i : in std_logic_vector(6*8-1 downto 0); my_ip_i : in std_logic_vector(4*8-1 downto 0); my_port_i : in std_logic_vector(2*8-1 downto 0); @@ -133,6 +133,7 @@ architecture behavioral of EB_RX_CTRL is signal ETH_RX : ETH_HDR; signal IPV4_RX : IPV4_HDR; signal UDP_RX : UDP_HDR; + signal payload_len : std_logic_vector(2*8-1 downto 0); signal RX_HDR_slv : std_logic_vector(c_IPV4_HLEN*8-1 downto 0) ; @@ -164,7 +165,7 @@ begin - Shift_in : sipo_flag generic map (16, c_IPV4_HLEN*8) + Shift_in : sipo_flag generic map (16, c_IPV4_HLEN*8) --IP header is longest possibility port map (d_i => RX_slave_i.DAT, q_o => RX_HDR_slv, clk_i => clk_i, @@ -216,7 +217,7 @@ begin RX_hdr_o.STALL <= HDR_STALL; - + MUX_RX : with state_mux select RX_slave_o <= conv_A when PAYLOAD, RX_hdr_o when others; @@ -240,6 +241,7 @@ begin reply_MAC_o <= ETH_RX.SRC; reply_IP_o <= IPV4_RX.SRC; reply_PORT_o <= UDP_RX.SRC_PORT; + payload_len_o <= payload_len; TOL_o <= IPV4_RX.TOL; @@ -251,34 +253,28 @@ begin -- SYNC RESET --========================================================================== if (nRST_i = '0') then - if(g_eth_framing = 1) then - state_HDR <= ETH; - else - state_HDR <= IPV4; - end if; - counter_input <= 0; - hdr_done <= '0'; - HDR_STALL <= '0'; - else - - if(counter_clr = '1') then - if(g_eth_framing = 1) then - state_HDR <= ETH; - else - state_HDR <= IPV4; - end if; - counter_input <= 0; + + state_HDR <= ETH; + counter_input <= 0; + hdr_done <= '0'; + state_mux <= HEADER; + HDR_STALL <= '0'; + else + + if(counter_clr = '1') then + state_HDR <= ETH; + counter_input <= 0; hdr_done <= '0'; state_mux <= HEADER; + end if; + + - - - - - if(state_RX = HDR_RECEIVE) then + if(state_RX = HDR_RECEIVE) then if(RX_slave_i.CYC = '1' and RX_slave_i.STB = '1') then counter_input <= counter_input +2; + end if; case state_HDR is @@ -336,13 +332,18 @@ end process; - + payload_len <= (others => '0'); else counter_clr <= '0'; sipo_clr <= '0'; - + RX_slave_o.ACK <= '0'; + if(RX_slave_i.CYC = '1' and RX_slave_i.STB = '1') then + RX_slave_o.ACK <= '1'; + end if; + + if((RX_slave_i.CYC = '0') and not ((state_RX = PAYLOAD_RECEIVE) or (state_RX = IDLE))) then --packet aborted before completion state_RX <= error; else @@ -350,32 +351,16 @@ end process; case state_RX is when IDLE => counter_clr <= '1'; if(RX_slave_i.CYC = '1' and RX_slave_i.STB = '1') then - --check if this is synthesised correctly - - - state_RX <= HDR_RECEIVE; - - end if; + state_RX <= HDR_RECEIVE; + end if; when HDR_RECEIVE => if(hdr_done = '1') then state_RX <= PAYLOAD_RECEIVE; - - - end if; - - when WAIT_STATE => state_RX <= CHECK_HDR; - - when CHECK_HDR => if(ETH_RX.TYP = x"0800" and IPV4_RX.PRO = x"11") then - valid_o <= '1'; - -- - - state_rx <= PAYLOAD_RECEIVE; - else - report("BAD PACKET HDR") severity warning; - state_rx <= error; - end if; - - + payload_len <= std_logic_vector(unsigned(UDP_RX .MLEN)-8); + valid_o <= '1'; + end if; + + when PAYLOAD_RECEIVE => if(RX_slave_i.CYC = '0') then state_RX <= IDLE; diff --git a/hdl/eb_testbench/EB_TX_CTRL.vhd b/hdl/eb_testbench/EB_TX_CTRL.vhd index cfb4ce7..8860c6d 100644 --- a/hdl/eb_testbench/EB_TX_CTRL.vhd +++ b/hdl/eb_testbench/EB_TX_CTRL.vhd @@ -39,7 +39,6 @@ use work.wb32_package.all; use work.wb16_package.all; entity EB_TX_CTRL is -generic(g_eth_framing : natural := 1); port( clk_i : in std_logic; nRst_i : in std_logic; diff --git a/hdl/eb_testbench/EB_TX_CTRL.vhd.bak b/hdl/eb_testbench/EB_TX_CTRL.vhd.bak index bb24fe0..cfb4ce7 100644 --- a/hdl/eb_testbench/EB_TX_CTRL.vhd.bak +++ b/hdl/eb_testbench/EB_TX_CTRL.vhd.bak @@ -39,7 +39,7 @@ use work.wb32_package.all; use work.wb16_package.all; entity EB_TX_CTRL is -generic(g_eth_framing : STRING := "ON"); +generic(g_eth_framing : natural := 1); port( clk_i : in std_logic; nRst_i : in std_logic; diff --git a/hdl/eb_testbench/eb_tb.cr.mti b/hdl/eb_testbench/eb_tb.cr.mti index 3e81434..155f0b1 100644 --- a/hdl/eb_testbench/eb_tb.cr.mti +++ b/hdl/eb_testbench/eb_tb.cr.mti @@ -23,6 +23,18 @@ Model Technology ModelSim SE vlog 10.0c Compiler 2011.07 Jul 21 2011 Top level modules: --none-- +} {} {}} /home/mkreider/hdlprojects/eb_testbench/EB_RX_CTRL.vhd {1 {vcom -work work -2002 -explicit -vopt /home/mkreider/hdlprojects/eb_testbench/EB_RX_CTRL.vhd +Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 +-- Loading package STANDARD +-- Loading package TEXTIO +-- Loading package std_logic_1164 +-- Loading package NUMERIC_STD +-- Loading package EB_HDR_PKG +-- Loading package wb32_package +-- Loading package wb16_package +-- Compiling entity EB_RX_CTRL +-- Compiling architecture behavioral of EB_RX_CTRL + } {} {}} /home/mkreider/hdlprojects/eb_testbench/alt_FIFO_am_full_flag.vhd {1 {vcom -work work -2002 -explicit -vopt /home/mkreider/hdlprojects/eb_testbench/alt_FIFO_am_full_flag.vhd Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 -- Loading package STANDARD @@ -98,28 +110,28 @@ Model Technology ModelSim SE vlog 10.0c Compiler 2011.07 Jul 21 2011 Top level modules: --none-- -} {} {}} /home/mkreider/hdlprojects/eb_testbench/if_wishbone_types.svh {1 {vlog -work work -vopt -sv -nocovercells /home/mkreider/hdlprojects/eb_testbench/if_wishbone_types.svh -Model Technology ModelSim SE vlog 10.0c Compiler 2011.07 Jul 21 2011 - -Top level modules: - --none-- - -} {} {}} /home/mkreider/hdlprojects/eb_testbench/wishbone_pkg.vhd {1 {vcom -work work -2002 -explicit -vopt /home/mkreider/hdlprojects/eb_testbench/wishbone_pkg.vhd +} {} {}} /home/mkreider/hdlprojects/eb_testbench/wr_fabric_pkg.vhd {1 {vcom -work work -2002 -explicit -vopt /home/mkreider/hdlprojects/eb_testbench/wr_fabric_pkg.vhd Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 -- Loading package STANDARD -- Loading package TEXTIO -- Loading package std_logic_1164 --- Loading package NUMERIC_STD --- Compiling package wishbone_pkg +-- Compiling package wr_fabric_pkg +-- Compiling package body wr_fabric_pkg +-- Loading package wr_fabric_pkg -} {} {}} /home/mkreider/hdlprojects/eb_testbench/wr_fabric_pkg.vhd {1 {vcom -work work -2002 -explicit -vopt /home/mkreider/hdlprojects/eb_testbench/wr_fabric_pkg.vhd +} {} {}} /home/mkreider/hdlprojects/eb_testbench/wishbone_pkg.vhd {1 {vcom -work work -2002 -explicit -vopt /home/mkreider/hdlprojects/eb_testbench/wishbone_pkg.vhd Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 -- Loading package STANDARD -- Loading package TEXTIO -- Loading package std_logic_1164 --- Compiling package wr_fabric_pkg --- Compiling package body wr_fabric_pkg --- Loading package wr_fabric_pkg +-- Loading package NUMERIC_STD +-- Compiling package wishbone_pkg + +} {} {}} /home/mkreider/hdlprojects/eb_testbench/if_wishbone_types.svh {1 {vlog -work work -vopt -sv -nocovercells /home/mkreider/hdlprojects/eb_testbench/if_wishbone_types.svh +Model Technology ModelSim SE vlog 10.0c Compiler 2011.07 Jul 21 2011 + +Top level modules: + --none-- } {} {}} /home/mkreider/hdlprojects/eb_testbench/EB_checksum.vhd {1 {vcom -work work -2002 -explicit -vopt /home/mkreider/hdlprojects/eb_testbench/EB_checksum.vhd Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 @@ -131,6 +143,16 @@ Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 -- Compiling entity EB_checksum -- Compiling architecture behavioral of EB_checksum +} {} {}} /home/mkreider/hdlprojects/eb_testbench/vhdl_2008_workaround_pkg.vhd {1 {vcom -work work -2002 -explicit -vopt /home/mkreider/hdlprojects/eb_testbench/vhdl_2008_workaround_pkg.vhd +Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 +-- Loading package STANDARD +-- Loading package TEXTIO +-- Loading package std_logic_1164 +-- Loading package NUMERIC_STD +-- Compiling package vhdl_2008_workaround_pkg +-- Compiling package body vhdl_2008_workaround_pkg +-- Loading package vhdl_2008_workaround_pkg + } {} {}} /home/mkreider/hdlprojects/eb_testbench/if_wb_link.svh {1 {vlog -work work -vopt -sv -nocovercells /home/mkreider/hdlprojects/eb_testbench/if_wb_link.svh Model Technology ModelSim SE vlog 10.0c Compiler 2011.07 Jul 21 2011 -- Compiling interface IWishboneLink @@ -144,27 +166,15 @@ Model Technology ModelSim SE vlog 10.0c Compiler 2011.07 Jul 21 2011 Top level modules: --none-- -} {} {}} /home/mkreider/hdlprojects/eb_testbench/vhdl_2008_workaround_pkg.vhd {1 {vcom -work work -2002 -explicit -vopt /home/mkreider/hdlprojects/eb_testbench/vhdl_2008_workaround_pkg.vhd +} {} {}} /home/mkreider/hdlprojects/eb_testbench/sipo_flag.vhd {1 {vcom -work work -2002 -explicit -vopt /home/mkreider/hdlprojects/eb_testbench/sipo_flag.vhd Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 -- Loading package STANDARD -- Loading package TEXTIO -- Loading package std_logic_1164 -- Loading package NUMERIC_STD --- Compiling package vhdl_2008_workaround_pkg --- Compiling package body vhdl_2008_workaround_pkg -- Loading package vhdl_2008_workaround_pkg - -} {} {}} /home/mkreider/hdlprojects/eb_testbench/main.sv {1 {vlog -work work -vopt -sv -nocovercells /home/mkreider/hdlprojects/eb_testbench/main.sv -Model Technology ModelSim SE vlog 10.0c Compiler 2011.07 Jul 21 2011 --- Compiling interface IWishboneMaster --- Compiling interface IWishboneSlave --- Compiling package main_sv_unit --- Compiling interface IWishboneMaster --- Compiling interface IWishboneSlave --- Compiling module main - -Top level modules: - main +-- Compiling entity sipo_flag +-- Compiling architecture behavioral of sipo_flag } {} {}} /home/mkreider/hdlprojects/eb_testbench/piso_flag.vhd {1 {vcom -work work -2002 -explicit -vopt /home/mkreider/hdlprojects/eb_testbench/piso_flag.vhd Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 @@ -175,15 +185,11 @@ Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 -- Compiling entity piso_flag -- Compiling architecture behavioral of piso_flag -} {} {}} /home/mkreider/hdlprojects/eb_testbench/sipo_flag.vhd {1 {vcom -work work -2002 -explicit -vopt /home/mkreider/hdlprojects/eb_testbench/sipo_flag.vhd -Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 --- Loading package STANDARD --- Loading package TEXTIO --- Loading package std_logic_1164 --- Loading package NUMERIC_STD --- Loading package vhdl_2008_workaround_pkg --- Compiling entity sipo_flag --- Compiling architecture behavioral of sipo_flag +} {} {}} /home/mkreider/hdlprojects/eb_testbench/simdrv_defs.svh {1 {vlog -work work -vopt -sv -nocovercells /home/mkreider/hdlprojects/eb_testbench/simdrv_defs.svh +Model Technology ModelSim SE vlog 10.0c Compiler 2011.07 Jul 21 2011 + +Top level modules: + --none-- } {} {}} /home/mkreider/hdlprojects/eb_testbench/EB_HDR_pkg.vhd {1 {vcom -work work -2002 -explicit -vopt /home/mkreider/hdlprojects/eb_testbench/EB_HDR_pkg.vhd Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 @@ -195,12 +201,6 @@ Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 -- Compiling package body EB_HDR_PKG -- Loading package EB_HDR_PKG -} {} {}} /home/mkreider/hdlprojects/eb_testbench/simdrv_defs.svh {1 {vlog -work work -vopt -sv -nocovercells /home/mkreider/hdlprojects/eb_testbench/simdrv_defs.svh -Model Technology ModelSim SE vlog 10.0c Compiler 2011.07 Jul 21 2011 - -Top level modules: - --none-- - } {} {}} /home/mkreider/hdlprojects/eb_testbench/if_wishbone_accessor.svh {1 {vlog -work work -vopt -sv -nocovercells /home/mkreider/hdlprojects/eb_testbench/if_wishbone_accessor.svh Model Technology ModelSim SE vlog 10.0c Compiler 2011.07 Jul 21 2011 @@ -217,16 +217,7 @@ Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 -- Compiling package body wb32_package -- Loading package wb32_package -} {} {}} /home/mkreider/hdlprojects/eb_testbench/if_wb_slave.svh {1 {vlog -work work -vopt -sv -nocovercells /home/mkreider/hdlprojects/eb_testbench/if_wb_slave.svh -Model Technology ModelSim SE vlog 10.0c Compiler 2011.07 Jul 21 2011 --- Compiling interface IWishboneSlave --- Compiling package if_wb_slave_svh_unit --- Compiling interface IWishboneSlave - -Top level modules: - --none-- - -} {} {}} /home/mkreider/hdlprojects/eb_testbench/mini_bone.vhd {1 {vcom -work work -2002 -explicit -vopt /home/mkreider/hdlprojects/eb_testbench/mini_bone.vhd +} {} {}} /home/mkreider/hdlprojects/eb_testbench/xmini_bone.vhd {1 {vcom -work work -2002 -explicit -vopt /home/mkreider/hdlprojects/eb_testbench/xmini_bone.vhd Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 -- Loading package STANDARD -- Loading package TEXTIO @@ -234,10 +225,10 @@ Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 -- Loading package NUMERIC_STD -- Loading package wishbone_pkg -- Loading package wr_fabric_pkg --- Compiling entity mini_bone --- Compiling architecture wrapper of mini_bone +-- Compiling entity xmini_bone +-- Compiling architecture behavioral of xmini_bone -} {} {}} /home/mkreider/hdlprojects/eb_testbench/xmini_bone.vhd {1 {vcom -work work -2002 -explicit -vopt /home/mkreider/hdlprojects/eb_testbench/xmini_bone.vhd +} {} {}} /home/mkreider/hdlprojects/eb_testbench/mini_bone.vhd {1 {vcom -work work -2002 -explicit -vopt /home/mkreider/hdlprojects/eb_testbench/mini_bone.vhd Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 -- Loading package STANDARD -- Loading package TEXTIO @@ -245,7 +236,16 @@ Model Technology ModelSim SE vcom 10.0c Compiler 2011.07 Jul 21 2011 -- Loading package NUMERIC_STD -- Loading package wishbone_pkg -- Loading package wr_fabric_pkg --- Compiling entity xmini_bone --- Compiling architecture behavioral of xmini_bone +-- Compiling entity mini_bone +-- Compiling architecture wrapper of mini_bone + +} {} {}} /home/mkreider/hdlprojects/eb_testbench/if_wb_slave.svh {1 {vlog -work work -vopt -sv -nocovercells /home/mkreider/hdlprojects/eb_testbench/if_wb_slave.svh +Model Technology ModelSim SE vlog 10.0c Compiler 2011.07 Jul 21 2011 +-- Compiling interface IWishboneSlave +-- Compiling package if_wb_slave_svh_unit +-- Compiling interface IWishboneSlave + +Top level modules: + --none-- } {} {}} diff --git a/hdl/eb_testbench/eb_tb.mpf b/hdl/eb_testbench/eb_tb.mpf index 871752b..76f2c3c 100644 --- a/hdl/eb_testbench/eb_tb.mpf +++ b/hdl/eb_testbench/eb_tb.mpf @@ -654,7 +654,7 @@ Resolution = ns UserTimeUnit = default ; Default run length -RunLength = 100 ns +RunLength = 15 us ; Maximum iterations that can be run without advancing simulation time IterationLimit = 5000 @@ -1678,61 +1678,61 @@ Project_Files_Count = 29 Project_File_0 = /home/mkreider/hdlprojects/eb_testbench/wishbone_package16.vhd Project_File_P_0 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328191040 vhdl_disableopt 0 cover_excludedefault 0 vhdl_vital 0 vhdl_warn1 1 vhdl_showsource 0 vhdl_explicit 1 vhdl_warn2 1 vhdl_0InOptions {} cover_covercells 0 vhdl_warn3 1 vhdl_options {} cover_optlevel 3 voptflow 1 vhdl_warn4 1 ood 0 toggle - vhdl_warn5 1 compile_to work cover_noshort 0 compile_order 25 dont_compile 0 cover_nosub 0 vhdl_use93 2002 Project_File_1 = /home/mkreider/hdlprojects/eb_testbench/if_wb_master.svh -Project_File_P_1 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 folder {Top Level} last_compile 1327407856 cover_fsm 0 cover_branch 0 vlog_noload 0 vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 4 dont_compile 0 cover_expr 0 cover_stmt 0 +Project_File_P_1 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 cover_fsm 0 last_compile 1327407856 vlog_noload 0 cover_branch 0 folder {Top Level} vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 4 dont_compile 0 cover_expr 0 cover_stmt 0 Project_File_2 = /home/mkreider/hdlprojects/eb_testbench/wb_packet_sink.svh -Project_File_P_2 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 folder {Top Level} last_compile 1327407856 cover_fsm 0 cover_branch 0 vlog_noload 0 vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 8 dont_compile 0 cover_expr 0 cover_stmt 0 +Project_File_P_2 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 cover_fsm 0 last_compile 1327407856 vlog_noload 0 cover_branch 0 folder {Top Level} vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 8 dont_compile 0 cover_expr 0 cover_stmt 0 Project_File_3 = /home/mkreider/hdlprojects/eb_testbench/alt_FIFO_am_full_flag.vhd Project_File_P_3 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328191766 vhdl_disableopt 0 vhdl_vital 0 cover_excludedefault 0 vhdl_warn1 1 vhdl_warn2 1 vhdl_explicit 1 vhdl_showsource 0 vhdl_warn3 1 cover_covercells 0 vhdl_0InOptions {} vhdl_warn4 1 voptflow 1 cover_optlevel 3 vhdl_options {} vhdl_warn5 1 toggle - ood 0 cover_noshort 0 compile_to work compile_order 27 cover_nosub 0 dont_compile 0 vhdl_use93 2002 Project_File_4 = /home/mkreider/hdlprojects/eb_testbench/WB_bus_adapter_streaming_sg.vhd Project_File_P_4 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328191114 vhdl_disableopt 0 vhdl_vital 0 cover_excludedefault 0 vhdl_warn1 1 vhdl_warn2 1 vhdl_explicit 1 vhdl_showsource 0 vhdl_warn3 1 cover_covercells 0 vhdl_0InOptions {} vhdl_warn4 1 voptflow 1 cover_optlevel 3 vhdl_options {} vhdl_warn5 1 toggle - ood 0 cover_noshort 0 compile_to work compile_order 24 cover_nosub 0 dont_compile 0 vhdl_use93 2002 Project_File_5 = /home/mkreider/hdlprojects/eb_testbench/EB_RX_CTRL.vhd -Project_File_P_5 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328808735 vhdl_disableopt 0 cover_excludedefault 0 vhdl_vital 0 vhdl_warn1 1 vhdl_showsource 0 vhdl_explicit 1 vhdl_warn2 1 vhdl_0InOptions {} cover_covercells 0 vhdl_warn3 1 vhdl_options {} cover_optlevel 3 voptflow 1 vhdl_warn4 1 ood 0 toggle - vhdl_warn5 1 compile_to work cover_noshort 0 compile_order 19 dont_compile 0 cover_nosub 0 vhdl_use93 2002 +Project_File_P_5 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328869211 vhdl_disableopt 0 vhdl_vital 0 cover_excludedefault 0 vhdl_warn1 1 vhdl_warn2 1 vhdl_explicit 1 vhdl_showsource 0 vhdl_warn3 1 cover_covercells 0 vhdl_0InOptions {} vhdl_warn4 1 voptflow 1 cover_optlevel 3 vhdl_options {} vhdl_warn5 1 toggle - ood 0 cover_noshort 0 compile_to work compile_order 19 cover_nosub 0 dont_compile 0 vhdl_use93 2002 Project_File_6 = /home/mkreider/hdlprojects/eb_testbench/eb_config_new.vhd Project_File_P_6 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328792784 vhdl_disableopt 0 vhdl_vital 0 cover_excludedefault 0 vhdl_warn1 1 vhdl_warn2 1 vhdl_explicit 1 vhdl_showsource 0 vhdl_warn3 1 cover_covercells 0 vhdl_0InOptions {} vhdl_warn4 1 voptflow 1 cover_optlevel 3 vhdl_options {} vhdl_warn5 1 toggle - ood 0 cover_noshort 0 compile_to work compile_order 28 cover_nosub 0 dont_compile 0 vhdl_use93 2002 Project_File_7 = /home/mkreider/hdlprojects/eb_testbench/EB_TX_CTRL.vhd -Project_File_P_7 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328792966 vhdl_disableopt 0 vhdl_vital 0 cover_excludedefault 0 vhdl_warn1 1 vhdl_warn2 1 vhdl_explicit 1 vhdl_showsource 0 vhdl_warn3 1 cover_covercells 0 vhdl_0InOptions {} vhdl_warn4 1 voptflow 1 cover_optlevel 3 vhdl_options {} vhdl_warn5 1 toggle - ood 0 cover_noshort 0 compile_to work compile_order 20 cover_nosub 0 dont_compile 0 vhdl_use93 2002 +Project_File_P_7 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328864313 vhdl_disableopt 0 cover_excludedefault 0 vhdl_vital 0 vhdl_warn1 1 vhdl_showsource 0 vhdl_explicit 1 vhdl_warn2 1 vhdl_0InOptions {} cover_covercells 0 vhdl_warn3 1 vhdl_options {} cover_optlevel 3 voptflow 1 vhdl_warn4 1 ood 0 toggle - vhdl_warn5 1 compile_to work cover_noshort 0 compile_order 20 dont_compile 0 cover_nosub 0 vhdl_use93 2002 Project_File_8 = /home/mkreider/hdlprojects/eb_testbench/EB_2_wb_converter.vhd -Project_File_P_8 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328801786 vhdl_disableopt 0 cover_excludedefault 0 vhdl_vital 0 vhdl_warn1 1 vhdl_showsource 0 vhdl_explicit 1 vhdl_warn2 1 vhdl_0InOptions {} cover_covercells 0 vhdl_warn3 1 vhdl_options {} cover_optlevel 3 voptflow 1 vhdl_warn4 1 ood 0 toggle - vhdl_warn5 1 compile_to work cover_noshort 0 compile_order 16 dont_compile 0 cover_nosub 0 vhdl_use93 2002 +Project_File_P_8 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328872196 vhdl_disableopt 0 vhdl_vital 0 cover_excludedefault 0 vhdl_warn1 1 vhdl_warn2 1 vhdl_explicit 1 vhdl_showsource 0 vhdl_warn3 1 cover_covercells 0 vhdl_0InOptions {} vhdl_warn4 1 voptflow 1 cover_optlevel 3 vhdl_options {} vhdl_warn5 1 toggle - ood 0 cover_noshort 0 compile_to work compile_order 16 cover_nosub 0 dont_compile 0 vhdl_use93 2002 Project_File_9 = /home/mkreider/hdlprojects/eb_testbench/EB_CORE.vhd -Project_File_P_9 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328792886 vhdl_disableopt 0 vhdl_vital 0 cover_excludedefault 0 vhdl_warn1 1 vhdl_warn2 1 vhdl_explicit 1 vhdl_showsource 0 vhdl_warn3 1 cover_covercells 0 vhdl_0InOptions {} vhdl_warn4 1 voptflow 1 cover_optlevel 3 vhdl_options {} vhdl_warn5 1 toggle - ood 0 cover_noshort 0 compile_to work compile_order 15 cover_nosub 0 dont_compile 0 vhdl_use93 2002 +Project_File_P_9 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328867050 vhdl_disableopt 0 vhdl_vital 0 cover_excludedefault 0 vhdl_warn1 1 vhdl_warn2 1 vhdl_explicit 1 vhdl_showsource 0 vhdl_warn3 1 cover_covercells 0 vhdl_0InOptions {} vhdl_warn4 1 voptflow 1 cover_optlevel 3 vhdl_options {} vhdl_warn5 1 toggle - ood 0 cover_noshort 0 compile_to work compile_order 15 cover_nosub 0 dont_compile 0 vhdl_use93 2002 Project_File_10 = /home/mkreider/hdlprojects/eb_testbench/wb_fabric_defs.svh -Project_File_P_10 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 cover_fsm 0 cover_branch 0 vlog_noload 0 last_compile 1327407856 folder {Top Level} cover_excludedefault 0 vlog_enable0In 0 vlog_disableopt 0 cover_covercells 0 voptflow 1 cover_optlevel 3 vlog_showsource 0 vlog_hazard 0 toggle - vlog_0InOptions {} ood 0 cover_noshort 0 vlog_upper 0 compile_to work vlog_options {} compile_order 9 cover_expr 0 dont_compile 0 cover_stmt 0 +Project_File_P_10 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 vlog_noload 0 cover_branch 0 folder {Top Level} last_compile 1327407856 cover_fsm 0 cover_excludedefault 0 vlog_enable0In 0 vlog_disableopt 0 cover_covercells 0 voptflow 1 cover_optlevel 3 vlog_showsource 0 vlog_hazard 0 toggle - vlog_0InOptions {} ood 0 cover_noshort 0 vlog_upper 0 compile_to work vlog_options {} compile_order 9 cover_expr 0 dont_compile 0 cover_stmt 0 Project_File_11 = /home/mkreider/hdlprojects/eb_testbench/eth_packet.svh -Project_File_P_11 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 folder {Top Level} last_compile 1327407856 cover_fsm 0 cover_branch 0 vlog_noload 0 vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 2 dont_compile 0 cover_expr 0 cover_stmt 0 -Project_File_12 = /home/mkreider/hdlprojects/eb_testbench/wr_fabric_pkg.vhd -Project_File_P_12 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1327407856 vhdl_disableopt 0 vhdl_vital 0 cover_excludedefault 0 vhdl_warn1 1 vhdl_warn2 1 vhdl_explicit 1 vhdl_showsource 0 vhdl_warn3 1 cover_covercells 0 vhdl_0InOptions {} vhdl_warn4 1 voptflow 1 cover_optlevel 3 vhdl_options {} vhdl_warn5 1 toggle - ood 0 cover_noshort 0 compile_to work compile_order 12 cover_nosub 0 dont_compile 0 vhdl_use93 2002 +Project_File_P_11 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 cover_fsm 0 last_compile 1327407856 vlog_noload 0 cover_branch 0 folder {Top Level} vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 2 dont_compile 0 cover_expr 0 cover_stmt 0 +Project_File_12 = /home/mkreider/hdlprojects/eb_testbench/if_wishbone_types.svh +Project_File_P_12 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 cover_fsm 0 last_compile 1327407856 vlog_noload 0 cover_branch 0 folder {Top Level} vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 6 dont_compile 0 cover_expr 0 cover_stmt 0 Project_File_13 = /home/mkreider/hdlprojects/eb_testbench/wishbone_pkg.vhd Project_File_P_13 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328182231 vhdl_disableopt 0 vhdl_vital 0 cover_excludedefault 0 vhdl_warn1 1 vhdl_warn2 1 vhdl_explicit 1 vhdl_showsource 0 vhdl_warn3 1 cover_covercells 0 vhdl_0InOptions {} vhdl_warn4 1 voptflow 1 cover_optlevel 3 vhdl_options {} vhdl_warn5 1 toggle - ood 0 cover_noshort 0 compile_to work compile_order 1 cover_nosub 0 dont_compile 0 vhdl_use93 2002 -Project_File_14 = /home/mkreider/hdlprojects/eb_testbench/if_wishbone_types.svh -Project_File_P_14 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 folder {Top Level} last_compile 1327407856 cover_fsm 0 cover_branch 0 vlog_noload 0 vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 6 dont_compile 0 cover_expr 0 cover_stmt 0 +Project_File_14 = /home/mkreider/hdlprojects/eb_testbench/wr_fabric_pkg.vhd +Project_File_P_14 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1327407856 vhdl_disableopt 0 vhdl_vital 0 cover_excludedefault 0 vhdl_warn1 1 vhdl_warn2 1 vhdl_explicit 1 vhdl_showsource 0 vhdl_warn3 1 cover_covercells 0 vhdl_0InOptions {} vhdl_warn4 1 voptflow 1 cover_optlevel 3 vhdl_options {} vhdl_warn5 1 toggle - ood 0 cover_noshort 0 compile_to work compile_order 12 cover_nosub 0 dont_compile 0 vhdl_use93 2002 Project_File_15 = /home/mkreider/hdlprojects/eb_testbench/EB_checksum.vhd Project_File_P_15 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328191632 vhdl_disableopt 0 vhdl_vital 0 cover_excludedefault 0 vhdl_warn1 1 vhdl_warn2 1 vhdl_explicit 1 vhdl_showsource 0 vhdl_warn3 1 cover_covercells 0 vhdl_0InOptions {} vhdl_warn4 1 voptflow 1 cover_optlevel 3 vhdl_options {} vhdl_warn5 1 toggle - ood 0 cover_noshort 0 compile_to work compile_order 17 cover_nosub 0 dont_compile 0 vhdl_use93 2002 -Project_File_16 = /home/mkreider/hdlprojects/eb_testbench/vhdl_2008_workaround_pkg.vhd -Project_File_P_16 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328191147 vhdl_disableopt 0 vhdl_vital 0 cover_excludedefault 0 vhdl_warn1 1 vhdl_warn2 1 vhdl_explicit 1 vhdl_showsource 0 vhdl_warn3 1 cover_covercells 0 vhdl_0InOptions {} vhdl_warn4 1 voptflow 1 cover_optlevel 3 vhdl_options {} vhdl_warn5 1 toggle - ood 0 cover_noshort 0 compile_to work compile_order 23 cover_nosub 0 dont_compile 0 vhdl_use93 2002 +Project_File_16 = /home/mkreider/hdlprojects/eb_testbench/if_wb_link.svh +Project_File_P_16 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 cover_fsm 0 last_compile 1327407856 vlog_noload 0 cover_branch 0 folder {Top Level} vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 3 dont_compile 0 cover_expr 0 cover_stmt 0 Project_File_17 = /home/mkreider/hdlprojects/eb_testbench/wb_binary_file_source.svh -Project_File_P_17 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 cover_fsm 0 cover_branch 0 vlog_noload 0 last_compile 1328266887 folder {Top Level} cover_excludedefault 0 vlog_enable0In 0 vlog_disableopt 0 cover_covercells 0 voptflow 1 cover_optlevel 3 vlog_showsource 0 vlog_hazard 0 toggle - vlog_0InOptions {} ood 0 cover_noshort 0 vlog_upper 0 compile_to work vlog_options {} compile_order 14 cover_expr 0 dont_compile 0 cover_stmt 0 -Project_File_18 = /home/mkreider/hdlprojects/eb_testbench/if_wb_link.svh -Project_File_P_18 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 folder {Top Level} last_compile 1327407856 cover_fsm 0 cover_branch 0 vlog_noload 0 vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 3 dont_compile 0 cover_expr 0 cover_stmt 0 -Project_File_19 = /home/mkreider/hdlprojects/eb_testbench/sipo_flag.vhd -Project_File_P_19 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328191228 vhdl_disableopt 0 vhdl_vital 0 cover_excludedefault 0 vhdl_warn1 1 vhdl_warn2 1 vhdl_explicit 1 vhdl_showsource 0 vhdl_warn3 1 cover_covercells 0 vhdl_0InOptions {} vhdl_warn4 1 voptflow 1 cover_optlevel 3 vhdl_options {} vhdl_warn5 1 toggle - ood 0 cover_noshort 0 compile_to work compile_order 22 cover_nosub 0 dont_compile 0 vhdl_use93 2002 +Project_File_P_17 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 vlog_noload 0 last_compile 1328872346 folder {Top Level} cover_branch 0 cover_fsm 0 vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 14 dont_compile 0 cover_expr 0 cover_stmt 0 +Project_File_18 = /home/mkreider/hdlprojects/eb_testbench/vhdl_2008_workaround_pkg.vhd +Project_File_P_18 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328191147 vhdl_disableopt 0 vhdl_vital 0 cover_excludedefault 0 vhdl_warn1 1 vhdl_warn2 1 vhdl_explicit 1 vhdl_showsource 0 vhdl_warn3 1 cover_covercells 0 vhdl_0InOptions {} vhdl_warn4 1 voptflow 1 cover_optlevel 3 vhdl_options {} vhdl_warn5 1 toggle - ood 0 cover_noshort 0 compile_to work compile_order 23 cover_nosub 0 dont_compile 0 vhdl_use93 2002 +Project_File_19 = /home/mkreider/hdlprojects/eb_testbench/main.sv +Project_File_P_19 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 vlog_noload 0 cover_branch 0 folder {Top Level} last_compile 1328872936 cover_fsm 0 cover_excludedefault 0 vlog_enable0In 0 vlog_disableopt 0 cover_covercells 0 voptflow 1 cover_optlevel 3 vlog_showsource 0 vlog_hazard 0 toggle - vlog_0InOptions {} ood 0 cover_noshort 0 vlog_upper 0 compile_to work vlog_options {} compile_order 0 cover_expr 0 dont_compile 0 cover_stmt 0 Project_File_20 = /home/mkreider/hdlprojects/eb_testbench/piso_flag.vhd Project_File_P_20 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328191255 vhdl_disableopt 0 vhdl_vital 0 cover_excludedefault 0 vhdl_warn1 1 vhdl_warn2 1 vhdl_explicit 1 vhdl_showsource 0 vhdl_warn3 1 cover_covercells 0 vhdl_0InOptions {} vhdl_warn4 1 voptflow 1 cover_optlevel 3 vhdl_options {} vhdl_warn5 1 toggle - ood 0 cover_noshort 0 compile_to work compile_order 21 cover_nosub 0 dont_compile 0 vhdl_use93 2002 -Project_File_21 = /home/mkreider/hdlprojects/eb_testbench/main.sv -Project_File_P_21 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 folder {Top Level} cover_branch 0 cover_fsm 0 last_compile 1328793452 vlog_noload 0 cover_excludedefault 0 vlog_enable0In 0 vlog_disableopt 0 cover_covercells 0 voptflow 1 cover_optlevel 3 vlog_showsource 0 vlog_hazard 0 toggle - vlog_0InOptions {} ood 0 cover_noshort 0 vlog_upper 0 compile_to work vlog_options {} compile_order 0 cover_expr 0 dont_compile 0 cover_stmt 0 -Project_File_22 = /home/mkreider/hdlprojects/eb_testbench/EB_HDR_pkg.vhd -Project_File_P_22 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328801006 vhdl_disableopt 0 cover_excludedefault 0 vhdl_vital 0 vhdl_warn1 1 vhdl_showsource 0 vhdl_explicit 1 vhdl_warn2 1 vhdl_0InOptions {} cover_covercells 0 vhdl_warn3 1 vhdl_options {} cover_optlevel 3 voptflow 1 vhdl_warn4 1 ood 0 toggle - vhdl_warn5 1 compile_to work cover_noshort 0 compile_order 18 dont_compile 0 cover_nosub 0 vhdl_use93 2002 -Project_File_23 = /home/mkreider/hdlprojects/eb_testbench/simdrv_defs.svh -Project_File_P_23 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 folder {Top Level} last_compile 1327407856 cover_fsm 0 cover_branch 0 vlog_noload 0 vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 7 dont_compile 0 cover_expr 0 cover_stmt 0 +Project_File_21 = /home/mkreider/hdlprojects/eb_testbench/sipo_flag.vhd +Project_File_P_21 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328191228 vhdl_disableopt 0 vhdl_vital 0 cover_excludedefault 0 vhdl_warn1 1 vhdl_warn2 1 vhdl_explicit 1 vhdl_showsource 0 vhdl_warn3 1 cover_covercells 0 vhdl_0InOptions {} vhdl_warn4 1 voptflow 1 cover_optlevel 3 vhdl_options {} vhdl_warn5 1 toggle - ood 0 cover_noshort 0 compile_to work compile_order 22 cover_nosub 0 dont_compile 0 vhdl_use93 2002 +Project_File_22 = /home/mkreider/hdlprojects/eb_testbench/simdrv_defs.svh +Project_File_P_22 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 cover_fsm 0 last_compile 1327407856 vlog_noload 0 cover_branch 0 folder {Top Level} vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 7 dont_compile 0 cover_expr 0 cover_stmt 0 +Project_File_23 = /home/mkreider/hdlprojects/eb_testbench/EB_HDR_pkg.vhd +Project_File_P_23 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328801006 vhdl_disableopt 0 cover_excludedefault 0 vhdl_vital 0 vhdl_warn1 1 vhdl_showsource 0 vhdl_explicit 1 vhdl_warn2 1 vhdl_0InOptions {} cover_covercells 0 vhdl_warn3 1 vhdl_options {} cover_optlevel 3 voptflow 1 vhdl_warn4 1 ood 0 toggle - vhdl_warn5 1 compile_to work cover_noshort 0 compile_order 18 dont_compile 0 cover_nosub 0 vhdl_use93 2002 Project_File_24 = /home/mkreider/hdlprojects/eb_testbench/if_wishbone_accessor.svh -Project_File_P_24 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 folder {Top Level} last_compile 1327407856 cover_fsm 0 cover_branch 0 vlog_noload 0 vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 5 dont_compile 0 cover_expr 0 cover_stmt 0 +Project_File_P_24 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 cover_fsm 0 last_compile 1327407856 vlog_noload 0 cover_branch 0 folder {Top Level} vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 5 dont_compile 0 cover_expr 0 cover_stmt 0 Project_File_25 = /home/mkreider/hdlprojects/eb_testbench/wishbone_package32.vhd Project_File_P_25 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328191023 vhdl_disableopt 0 cover_excludedefault 0 vhdl_vital 0 vhdl_warn1 1 vhdl_showsource 0 vhdl_explicit 1 vhdl_warn2 1 vhdl_0InOptions {} cover_covercells 0 vhdl_warn3 1 vhdl_options {} cover_optlevel 3 voptflow 1 vhdl_warn4 1 ood 0 toggle - vhdl_warn5 1 compile_to work cover_noshort 0 compile_order 26 dont_compile 0 cover_nosub 0 vhdl_use93 2002 -Project_File_26 = /home/mkreider/hdlprojects/eb_testbench/if_wb_slave.svh -Project_File_P_26 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 vlog_noload 0 last_compile 1328197801 folder {Top Level} cover_branch 0 cover_fsm 0 vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 13 dont_compile 0 cover_expr 0 cover_stmt 0 +Project_File_26 = /home/mkreider/hdlprojects/eb_testbench/xmini_bone.vhd +Project_File_P_26 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1327407856 vhdl_disableopt 0 cover_excludedefault 0 vhdl_vital 0 vhdl_warn1 1 vhdl_showsource 0 vhdl_explicit 1 vhdl_warn2 1 vhdl_0InOptions {} cover_covercells 0 vhdl_warn3 1 vhdl_options {} cover_optlevel 3 voptflow 1 vhdl_warn4 1 ood 0 toggle - vhdl_warn5 1 compile_to work cover_noshort 0 compile_order 11 dont_compile 0 cover_nosub 0 vhdl_use93 2002 Project_File_27 = /home/mkreider/hdlprojects/eb_testbench/mini_bone.vhd Project_File_P_27 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1328197717 vhdl_disableopt 0 cover_excludedefault 0 vhdl_vital 0 vhdl_warn1 1 vhdl_showsource 0 vhdl_explicit 1 vhdl_warn2 1 vhdl_0InOptions {} cover_covercells 0 vhdl_warn3 1 vhdl_options {} cover_optlevel 3 voptflow 1 vhdl_warn4 1 ood 0 toggle - vhdl_warn5 1 compile_to work cover_noshort 0 compile_order 10 dont_compile 0 cover_nosub 0 vhdl_use93 2002 -Project_File_28 = /home/mkreider/hdlprojects/eb_testbench/xmini_bone.vhd -Project_File_P_28 = vhdl_novitalcheck 0 file_type vhdl group_id 0 cover_nofec 0 vhdl_nodebug 0 vhdl_1164 1 vhdl_noload 0 vhdl_synth 0 vhdl_enable0In 0 folder {Top Level} last_compile 1327407856 vhdl_disableopt 0 cover_excludedefault 0 vhdl_vital 0 vhdl_warn1 1 vhdl_showsource 0 vhdl_explicit 1 vhdl_warn2 1 vhdl_0InOptions {} cover_covercells 0 vhdl_warn3 1 vhdl_options {} cover_optlevel 3 voptflow 1 vhdl_warn4 1 ood 0 toggle - vhdl_warn5 1 compile_to work cover_noshort 0 compile_order 11 dont_compile 0 cover_nosub 0 vhdl_use93 2002 +Project_File_28 = /home/mkreider/hdlprojects/eb_testbench/if_wb_slave.svh +Project_File_P_28 = cover_toggle 0 vlog_protect 0 file_type systemverilog group_id 0 cover_exttoggle 0 cover_nofec 0 cover_cond 0 vlog_1995compat SV vlog_nodebug 0 folder {Top Level} last_compile 1328197801 cover_fsm 0 cover_branch 0 vlog_noload 0 vlog_enable0In 0 cover_excludedefault 0 vlog_disableopt 0 cover_covercells 0 vlog_hazard 0 vlog_showsource 0 cover_optlevel 3 voptflow 1 ood 0 vlog_0InOptions {} toggle - vlog_options {} compile_to work vlog_upper 0 cover_noshort 0 compile_order 13 dont_compile 0 cover_expr 0 cover_stmt 0 Project_Sim_Count = 0 Project_Folder_Count = 0 Echo_Compile_Output = 1 diff --git a/hdl/eb_testbench/main.sv b/hdl/eb_testbench/main.sv index 26f010d..80caa2a 100644 --- a/hdl/eb_testbench/main.sv +++ b/hdl/eb_testbench/main.sv @@ -223,7 +223,7 @@ module main; $display("Iteration %d", retries); - seed = retries; + seed = retries+3; for(i=0;i<n_writes;i++) mbone_write(i, $dist_uniform(seed, 0, (1<<31)-1)); diff --git a/hdl/eb_testbench/main.sv.bak b/hdl/eb_testbench/main.sv.bak index e7a6f56..32bb6a4 100644 --- a/hdl/eb_testbench/main.sv.bak +++ b/hdl/eb_testbench/main.sv.bak @@ -51,7 +51,7 @@ module main; EB_CORE #( .g_master_slave("SLAVE"), - .g_eth_framing("OFF")) + .g_eth_framing(1)) DUT ( .clk_i (clk_sys), @@ -223,7 +223,7 @@ module main; $display("Iteration %d", retries); - seed = retries; + seed = retries+2; for(i=0;i<n_writes;i++) mbone_write(i, $dist_uniform(seed, 0, (1<<31)-1)); diff --git a/hdl/eb_testbench/wb_binary_file_source.svh b/hdl/eb_testbench/wb_binary_file_source.svh index c0dff36..f65692d 100644 --- a/hdl/eb_testbench/wb_binary_file_source.svh +++ b/hdl/eb_testbench/wb_binary_file_source.svh @@ -37,7 +37,7 @@ int r, i, j, len, file; wb_cycle_t cyc; wb_xfer_t xf; - file_name = "test_V4.pcap"; + file_name = "etherbone-v4-req.pcap"; file = $fopen(file_name, "rb"); i = $fgetc(file); $display("test char %0d \n", i); diff --git a/hdl/eb_testbench/wb_binary_file_source.svh.bak b/hdl/eb_testbench/wb_binary_file_source.svh.bak index 43f5fe2..0f71c1a 100644 --- a/hdl/eb_testbench/wb_binary_file_source.svh.bak +++ b/hdl/eb_testbench/wb_binary_file_source.svh.bak @@ -33,11 +33,11 @@ class WBPacketSource extends EthPacketSource; reg [15:0] pdata[0:`MEM_SIZE]; reg [80*8:1] file_name; -int r, i, len, file; +int r, i, j, len, file; wb_cycle_t cyc; wb_xfer_t xf; - file_name = "test_V4.pcap"; + file_name = "etherbone-v4-pf.pcap"; file = $fopen(file_name, "rb"); i = $fgetc(file); $display("test char %0d \n", i); @@ -58,8 +58,8 @@ int r, i, len, file; - - for(i=0; i < len; i += 0) + j = 0; + for(i=0; j < len; i++) begin xf.a = WRF_DATA; if(i==len-1 && (len&1)) @@ -70,7 +70,7 @@ int r, i, len, file; xf.size = 2; xf.d = pdata[i]; end - i += xf.size; + j += xf.size; cyc.data.push_back(xf); end -- GitLab