SPRUIM2H May 2020 – October 2023 AM2431 , AM2432 , AM2434 , AM6411 , AM6412 , AM6421 , AM6422 , AM6441 , AM6442
The following sequence will occur for each VBUSM read which is sent to the source interface:
RINGACC extracts ring # from incoming read transaction address
RINGACC looks up ring state using ring number
RINGACC calculates effective read address using ring base + ring_index
RINGACC increments RD index and decrements RD and WR occupancy for ring
RINGACC re-evaluates pending bit for ring
RINGACC munges cid to add indicator in 4 MSBs to reconstitute routeid for returning read data
RINGACC pushes altered caddress, cid and unaltered remainder of command attributes to output fifo (note routeid is not included)
At a later time when read data returns:
RINGACC recovers original cid, crouteid, and ring number from scoreboard
RINGACC pushes restored rrouteid, rid, and unaltered read data,status, and other control signals to output read FIFO