Hi!
I try to use scoreboard in conjunction with my own VVC. I follow the example in “UVVM_VVC_Framework_essential mechanism.pdf”.
I understand the examples at pg 11 and 12 13… but IMHO they are wrong. If I use this piece of code:
wait until (global_sbi_vvc_transaction_trigger(C_SBI_VVC_1) = ‘1’) or (global_uart_vvc_transaction_trigger(TX, C_UART_VVC_1) = ‘1’);
if global_sbi_vvc_transaction_trigger(C_SBI_VVC_1)’event then
case shared_sbi_vvc_transaction_info(C_SBI_VVC_1).bt.operation is
my dut_model process adds elements at scoreboard twice. This is because VVCs calls twice the function set_global_vvc_transaction_info.
So, I’m digging into uart tb example and I follow this piece of code:
if uart_tx_transaction_info.bt.operation = TRANSMIT and uart_tx_transaction_info.bt.transaction_status = IN_PROGRESS then
and it works for me.
It could be an error in documentation or I don’t understand something?
Regards.