SPRUJ28E November 2021 – September 2024 AM68 , AM68A , TDA4AL-Q1 , TDA4VE-Q1 , TDA4VL-Q1
The bridge can optionally include a memory attribute lookup table to add the coherence memory attributes required for VBUSM.C for VBUSM commands missing them. It is implemented using up to 4 tables, a table of 64-KB regions and 1 to 3 tables of 16-MB regions. The first table is meant to cover an internal memory with smaller granularity, while the second to fourth tables are meant to cover the external memory with a much larger size and larger granularity. The external memory has one to three regions as its address space might be fragmented in the SoC memory map. Starting address and number of table entries for each region are shown in Table 10-135 and Table 10-136.
When a command without memory attributes, an atype = 0, is input to the M2C bridge, this table performs the lookup in parallel and returns the memory attributes to the M2C bridge in the next cycle. If the atype is another value, it is assumed the memory attributes on the VBUSM interface are valid. The lookup is performed by matching the address against the starting addresses, assuming the successive regions always starts at later address, including that the up to three 16-MB regions are given in increasing order. Then the offset from the starting address of the region and the region size, 64-KB or 16-MB, is used to calculate the entry of attributes for that address. Then a memory is read to retrieve the attributes and return them to the M2C bridge. An output FIFO is implemented to capture the attributes if they are not accepted immediately.
There is a memory attribute table module for each VBUSM slave interface. If the MAT is enabled, at least one of the 64-KB region and/or the first 16-MB region must be populated, or both. The second and third 16-MB regions are optional.