SPRUI30H November 2015 – May 2024 DRA745 , DRA746 , DRA750 , DRA756
When Mflag[i][63:0] ≠ 0 is signaled at TILERi or both TILERs, the transactions of TILERi or both TILERs form an additional new group called the high priority group. Within this group, reads and writes are sorted and arbitrated the same way as in the normal priority group. Arbitration between transactions out of the high priority group and out of the normal priority group is based on a weighted round-robin algorithm. Weight is software selectable using the DMM_EMERGENCY[20:16] WEIGHT bit field. Weight selection is considered static (that is, behavior is undefined when software changes the weight, and DMM is not empty of transaction).
The counter that is implemented to support the weighted round-robin is enabled as long as emergency signaling is present. The counter increments by one each time a command (from the normal or the high priority group) is pushed to ROBIN. The counter wraps on DMM_EMERGENCY[20:16] WEIGHT value. One command from the normal priority group is serviced in any of the following scenarios:
Setting the DMM_EMERGENCY[0] ENABLE bit to 1 enables the emergency arbitration scheme.
It is recommended to set the DMM_EMERGENCY[0] ENABLE bit to 1, and the DMM_EMERGENCY[20:16] WEIGHT bit to 0x8. This provides better and faster recovery behavior, and benefits system performance.