diff --git a/libraries/base/dp/tb/vhdl/tb_dp_offload_tx_v3.vhd b/libraries/base/dp/tb/vhdl/tb_dp_offload_tx_v3.vhd
index 7b079c77f94b7d4ad1563a0d9b803b01f22bfdc8..200c61a94cf251ebe6021954755f7926634298c2 100644
--- a/libraries/base/dp/tb/vhdl/tb_dp_offload_tx_v3.vhd
+++ b/libraries/base/dp/tb/vhdl/tb_dp_offload_tx_v3.vhd
@@ -86,7 +86,7 @@ ARCHITECTURE tb OF tb_dp_offload_tx_v3 IS
   CONSTANT c_sync_period              : NATURAL := 5;
   CONSTANT c_sync_offset              : NATURAL := 2;
   CONSTANT c_bsn_init                 : STD_LOGIC_VECTOR(c_dp_stream_bsn_w-1 DOWNTO 0) := TO_DP_BSN(0);
-  CONSTANT c_nof_sync                 : NATURAL := 5;
+  CONSTANT c_nof_sync                 : NATURAL := 3;
   CONSTANT c_nof_packets              : NATURAL := c_sync_period * c_nof_sync;
 
   CONSTANT c_hdr_len                  : NATURAL := 7;
@@ -157,9 +157,9 @@ ARCHITECTURE tb OF tb_dp_offload_tx_v3 IS
 
   -- RX: Corresponding storage of c_udp_offload_hdr_field_arr in MM register words
   CONSTANT c_expected_rx_hdr_word_arr : t_slv_32_arr(0 TO c_udp_offload_nof_hdr_words-1) := ( -- word address
-                                                                             X"0000000B",     -- 0   = dp_bsn[31:0]        -- dynamic value obtained from simulation
+                                                                             X"00000002",     -- 0   = dp_bsn[31:0]        -- dynamic value obtained from simulation
                                                                              X"00000000",     -- 1   = dp_bsn[63:32]
-                                                                             X"00000000",     -- 2   = dp_sync             -- dynamic value obtained from simulation
+                                                                             X"00000001",     -- 2   = dp_sync             -- dynamic value obtained from simulation
                                                                              X"03040506",     -- 3   = dp_reserved[31:0]
                                                                              X"00000102",     -- 4   = dp_reserved[47:32]
                                                                              X"00000000",     -- 5   = udp_checksum
@@ -520,8 +520,7 @@ BEGIN
     VARIABLE v_word : STD_LOGIC_VECTOR(c_word_w-1 DOWNTO 0);
   BEGIN
     proc_common_wait_until_hi_lo(dp_clk, verify_snk_in.sync);
-    proc_common_wait_until_hi_lo(dp_clk, verify_snk_in.sync);
-    proc_common_wait_until_hi_lo(dp_clk, verify_snk_in.sync);
+    -- Check first packet after sync with dp_sync = 1
     -- wait some latency until header fields of this sync packet are available via MM
     proc_common_wait_some_cycles(dp_clk, 10);
     print_str("");
@@ -534,9 +533,27 @@ BEGIN
       -- View word in wave window
       rx_hdr_word <= v_word;
       -- Verify expected word
-      ASSERT c_expected_rx_hdr_word_arr(I) = v_word REPORT "Unexpected rx_hdr_word at address " & int_to_str(I) & ", expected " & slv_to_hex(c_expected_rx_hdr_word_arr(I)) SEVERITY ERROR;
+      ASSERT v_word = c_expected_rx_hdr_word_arr(I) REPORT "Unexpected rx_hdr_word at address " & int_to_str(I) & ", expected " & slv_to_hex(c_expected_rx_hdr_word_arr(I)) SEVERITY ERROR;
     END LOOP;
     print_str("");
+
+    -- Check dp_bsn and dp_sync of second packet after sync with dp_sync = 0
+    proc_common_wait_until_hi_lo(dp_clk, verify_snk_in.sop);
+    -- wait some latency until header fields of this sync packet are available via MM
+    proc_common_wait_some_cycles(dp_clk, 10);
+    -- dp_bsn lo
+    proc_mem_mm_bus_rd(0, mm_clk, reg_dp_offload_rx_hdr_dat_mosi);
+    proc_mem_mm_bus_rd_latency(c_mem_reg_rd_latency, mm_clk);
+    v_word := reg_dp_offload_rx_hdr_dat_miso.rddata(31 DOWNTO 0);
+    rx_hdr_word <= v_word;  -- View word in wave window
+    ASSERT v_word = INCR_UVEC(c_expected_rx_hdr_word_arr(0), 1) REPORT "Unexpected dp_bsn from MM" SEVERITY ERROR;
+    -- dp_sync
+    proc_mem_mm_bus_rd(2, mm_clk, reg_dp_offload_rx_hdr_dat_mosi);
+    proc_mem_mm_bus_rd_latency(c_mem_reg_rd_latency, mm_clk);
+    v_word := reg_dp_offload_rx_hdr_dat_miso.rddata(31 DOWNTO 0);
+    rx_hdr_word <= v_word;  -- View word in wave window
+    ASSERT v_word = TO_UVEC(0, 32) REPORT "Unexpected dp_sync from MM" SEVERITY ERROR;
+
     WAIT;
   END PROCESS;