]> jspc29.x-matter.uni-frankfurt.de Git - trbnet.git/commitdiff
GbE bug on SCTRL fixed, causing the last word of last packet to get lost sometimes
authorMichael Boehmer <mboehmer@ph.tum.de>
Wed, 8 Jun 2022 13:14:54 +0000 (15:14 +0200)
committerMichael Boehmer <mboehmer@ph.tum.de>
Wed, 8 Jun 2022 13:14:54 +0000 (15:14 +0200)
gbe_trb/protocols/trb_net16_gbe_response_constructor_SCTRL.vhd
trb_net16_hub_base.vhd

index 667d14109e915519c2982c6eda4c2ec2241bebd3..467ceaf3ff275d28202fd5f4665470959c14a95b 100644 (file)
@@ -554,7 +554,8 @@ begin
                
                when LOAD_TO_HUB =>
                        state <= x"4";
-                       if (rx_fifo_q(17) = '1') then
+--                     if (rx_fifo_q(17) = '1') then
+                       if ((rx_fifo_q(17) = '1') and (GSC_INIT_READ_IN = '1')) then
                                if (reset_detected = '1') then
                                        dissect_next_state <= CLEANUP;
                                else
index 7596002ddb3eb6cb8b68a4e84843092bd70ecb2c..fe095ad045e5704095fade8c27d908d32d2756f0 100644 (file)
@@ -1781,19 +1781,29 @@ HUB_MED_CONNECTED(31 downto MII_NUMBER) <= (others => '1');
   
 --  buf_STAT_DEBUG( 3 downto 0 ) <= STAT_TIMEOUT(3*32+3 downto 3*32);
 --  buf_STAT_DEBUG( 7 downto 4 ) <= HUB_CTRL_final_activepoints(3*32+3 downto 3*32);
-  
-  buf_STAT_DEBUG(0) <= m_DATAREADY_OUT(6);
-  buf_STAT_DEBUG(1) <= m_READ_IN(6);
-  buf_STAT_DEBUG(2) <= m_PACKET_NUM_OUT(18);
-  buf_STAT_DEBUG(3) <= m_PACKET_NUM_OUT(19);
-  buf_STAT_DEBUG(4) <= m_PACKET_NUM_OUT(20);
-  buf_STAT_DEBUG(5) <= m_DATA_OUT(96);
-  buf_STAT_DEBUG(6) <= m_DATA_OUT(97);
-  buf_STAT_DEBUG(7) <= m_DATA_OUT(98);
-  buf_STAT_DEBUG(8) <= m_DATA_OUT(99);
-  buf_STAT_DEBUG(9) <= MPLEX_STAT(25);
+  buf_STAT_DEBUG(0) <= hub_to_buf_INIT_DATAREADY(3);
+  buf_STAT_DEBUG(1) <= hub_to_buf_INIT_READ(3);
+  buf_STAT_DEBUG(2) <= hub_to_buf_INIT_PACKET_NUM(9);
+  buf_STAT_DEBUG(3) <= hub_to_buf_INIT_PACKET_NUM(10);
+  buf_STAT_DEBUG(4) <= hub_to_buf_INIT_PACKET_NUM(11);
+  buf_STAT_DEBUG(5) <= hub_to_buf_INIT_DATA(48);
+  buf_STAT_DEBUG(6) <= hub_to_buf_INIT_DATA(49);
+  buf_STAT_DEBUG(7) <= hub_to_buf_INIT_DATA(50);
+  buf_STAT_DEBUG(8) <= hub_to_buf_INIT_DATA(51);
   buf_STAT_DEBUG(31 downto 10) <= (others => '0');
   
+--  buf_STAT_DEBUG(0) <= m_DATAREADY_OUT(6);
+--  buf_STAT_DEBUG(1) <= m_READ_IN(6);
+--  buf_STAT_DEBUG(2) <= m_PACKET_NUM_OUT(18);
+--  buf_STAT_DEBUG(3) <= m_PACKET_NUM_OUT(19);
+--  buf_STAT_DEBUG(4) <= m_PACKET_NUM_OUT(20);
+--  buf_STAT_DEBUG(5) <= m_DATA_OUT(96);
+--  buf_STAT_DEBUG(6) <= m_DATA_OUT(97);
+--  buf_STAT_DEBUG(7) <= m_DATA_OUT(98);
+--  buf_STAT_DEBUG(8) <= m_DATA_OUT(99);
+--  buf_STAT_DEBUG(9) <= MPLEX_STAT(25);
+--  buf_STAT_DEBUG(31 downto 10) <= (others => '0');
+  
   IOBUF_STAT_INIT_OBUF_DEBUG <= iobuf_stat_init_obuf_debug_i;
   IOBUF_STAT_REPLY_OBUF_DEBUG <= iobuf_stat_reply_obuf_debug_i;
   IOBUF_CTRL_GEN <= (others => '0');