-
Notifications
You must be signed in to change notification settings - Fork 79
Open
Description
Hi sir:
I am trying to integrated the chi here into a system, while I readed the implementation of the chi protocol , I found for a read transaction with seperate response (which is RespSepData and DataSepResp), if the DataSepResp comes first and we get all the data the transaction requested , the m_gotRspSepData will be set to true in HandleRxDat.
this may result in a TLM_GENERIC_ERROR_RESPONSE response when the RespSepData came sometime later after the DataSepResp in cache_chi::b_transport_rxrsp ?
m_gotRspSepData = true; |
virtual void b_transport_rxrsp(tlm::tlm_generic_payload& trans, sc_time& delay)
{
trans.set_response_status(tlm::TLM_GENERIC_ERROR_RESPONSE);
.....
ret = t->HandleRxRsp(trans, chiattr); // return false. see the comment blow
m_transmitter.Process(t);
}
// false here, so the trans respoonse will he TLM_GENERIC_ERROR_RESPONSE
// which is set at the first line of b_transport_rxrsp
if (ret) {
trans.set_response_status(
tlm::TLM_OK_RESPONSE);
}
Metadata
Metadata
Assignees
Labels
No labels