diff --git a/libraries/base/dp/src/vhdl/dp_block_validate_bsn_at_sync.vhd b/libraries/base/dp/src/vhdl/dp_block_validate_bsn_at_sync.vhd index c21ef65e507057dd120d32a1d9a0f4629863e52a..2923f620bad5a91927818f8e6da72ecc430f5e6d 100644 --- a/libraries/base/dp/src/vhdl/dp_block_validate_bsn_at_sync.vhd +++ b/libraries/base/dp/src/vhdl/dp_block_validate_bsn_at_sync.vhd @@ -192,7 +192,10 @@ BEGIN ); bsn_at_sync <= bs_sosi.bsn WHEN bs_sosi.sync = '1' ELSE bsn_at_sync_reg; - bsn_ok <= bsn_ok_reg WHEN in_sosi.sync = '0' ELSE '1' WHEN in_sosi.bsn = bsn_at_sync ELSE '0'; + + bsn_ok <= bsn_ok_reg WHEN in_sosi.sync = '0' ELSE + '1' WHEN in_sosi.bsn = bsn_at_sync AND TO_UINT(in_sosi.channel) = g_check_channel ELSE '0'; + out_valid <= '1' WHEN in_sosi.sop = '1' AND TO_UINT(in_sosi.channel) /= g_check_channel ELSE bsn_ok WHEN in_sosi.sop = '1' AND TO_UINT(in_sosi.channel) = g_check_channel ELSE out_valid_reg;