Reply To: Setting tKeep per transaction using Send
Why OSVVM™? › Forums › OSVVM › Setting tKeep per transaction using Send › Reply To: Setting tKeep per transaction using Send
Hi Senthil
See OsvvmLibraries/Documentation/AxiStream_user_guide.pdf:
7.3 Setting and Checking TKeep and TStrb
On the AxiStream interface, a TStrb value that corresponds to a data value of ‘1’ indicates the value
contains valid data. A value of ‘0’ indicates it is a filler value. A TKeep value of ‘1’ indicates the value is
either valid data or a filler value that may not be dropped. A value of ‘0’ indicates the value may be
dropped by the interface.
Rather than supplying this sort of information as a value in the transaction call, the OSVVM
AxiStreamTransmitter VC uses a data value of X”UU” to indicate the data byte is to have TStrb = ‘0’ and
TKeep = ‘0’ and a data value of X”WW” to indicate the data byte is to have TStrb = ‘0’ and TKeep = ‘1’.
This applies to values supplied either via the Send transaction or via the BurstFifo for a SendBurst
transaction.
Similarly, in the AxiStreamReceiver VC, when TKeep = ‘0’, then the corresponding data byte will be X”UU”
and if TKeep = ‘1’ and TStrb = ‘0’, then the corresponding data byte will be X”WW”. If the transaction is
a GetBurst, and the BurstFIFO is configured to receive bytes, and the DropUndriven VC parameter is
TRUE, and the received byte is X”UU”, then it will be dropped (ie not put into the BurstFIFO).
Best Regards,
Jim