You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
update_serving_requests is called at line 465 in src/Controller.h. At this point the WRITE request has just been issued. Shouldn't the function be called after the WRITE request has finished writing data to the DRAM?
Compare this with how a READ request is dealt with: after issuing the READ command, the depart field of the request is set to clk + channel->spec->read_latency, and the request is placed on the pending buffer. Only after the specified time has elapsed is update_serving_requests called for the said READ request. So shouldn't the same be followed for a WRITE request? (with its own corresponding write_latency, of course)
One possible reason that I could think of: the Controller need not wait for the WRITE request to complete before returning a completion indication, because ultimately it does not need any data from the DRAM, unlike a READ request.
If that is the case, can't the completion indication be returned as soon as the ACT for the corresponding WRITE request is issued?
The text was updated successfully, but these errors were encountered:
beta-47
changed the title
update_serving_requests for WRITE requests being possibly called incorrectly
Why is update_serving_requests for WRITE requests called at the time when they are issued to the DRAM?
Apr 4, 2022
update_serving_requests is called at line 465 in src/Controller.h. At this point the WRITE request has just been issued. Shouldn't the function be called after the WRITE request has finished writing data to the DRAM?
Compare this with how a READ request is dealt with: after issuing the READ command, the depart field of the request is set to clk + channel->spec->read_latency, and the request is placed on the pending buffer. Only after the specified time has elapsed is update_serving_requests called for the said READ request. So shouldn't the same be followed for a WRITE request? (with its own corresponding write_latency, of course)
One possible reason that I could think of: the Controller need not wait for the WRITE request to complete before returning a completion indication, because ultimately it does not need any data from the DRAM, unlike a READ request.
If that is the case, can't the completion indication be returned as soon as the ACT for the corresponding WRITE request is issued?
The text was updated successfully, but these errors were encountered: