SWRZ150A December   2024  – October 2025 AWR2544

 

  1.   1
  2. 1Introduction
  3. 2Device Nomenclature
  4. 3Device Markings
  5. 4Advisory to Silicon Variant / Revision Map
  6. 5Known Design Exceptions to Functional Specifications
    1.     MSS#25
    2.     MSS#27
    3.     MSS#28
    4.     MSS#29
    5.     MSS#30
    6.     MSS#33
    7.     MSS#40
    8. 5.1  MSS#49
    9. 5.2  MSS#52
    10. 5.3  MSS#53
    11. 5.4  MSS#54
    12. 5.5  MSS#55
    13. 5.6  MSS#56
    14. 5.7  MSS#57
    15. 5.8  MSS#58
    16. 5.9  MSS#59
    17. 5.10 MSS#60
    18. 5.11 MSS#61
    19. 5.12 MSS#62
    20. 5.13 MSS#63
    21. 5.14 MSS#64
    22. 5.15 MSS#65
    23.     MSS#68
    24.     MSS#71
    25. 5.16 ANA#12A
    26.     ANA#37A
    27.     ANA#39
    28.     ANA#43
    29.     ANA#44
    30.     ANA#45
    31.     ANA#47
    32.     ANA#59
  7.   Trademarks
  8. 6Revision History

MSS#63

Potential L2 Cache Corruption During Block Coherence operations issue

Revision(s) Affected:

AWR2544

Description:

A potential L2 cache corruption issue during block coherence operations has been identified. Under a specific set of circumstances, L1D or L2 block coherence operations can cause L2 cache corruption. The problem arises when the following four actions happen back to back in the same L2 set:

  1. L1D write miss

  2. Victim writeback due to block coherence operations

  3. Write allocate for some address

  4. Read or write allocate for some address

This issue applies to all the block coherence operations listed below:

  • L1D writeback

  • L1D invalidate

  • L1D writeback with invalidate

  • L2 writeback

  • L2 invalidate

  • L2 writeback with invalidate

Workaround(s):

The workaround requires that the memory system be idle during the block coherence operations. Hence programs must wait for block coherence operations to complete before continuing. This applies to L1D and L2 memory block coherence operations. To issue a block coherence operation follow the sequence below.

  1. Disable interrupts.

  2. Write the starting address to the corresponding BAR register.

  3. Write the word count to the corresponding WC register.

  4. Wait for completion by one of the following methods:

    1. Issue an MFENCE instruction (preferred).

    2. Poll the WC register until the word count field reads as 0.

  5. Perform 16 NOPs.

  6. Restore interrupts.

For further information about the cache control registers (BAR and WC) see the TMS320C66x DSP CorePac User Guide (SPRUGW0). The MFENCE instruction is new to the C66x DSP. It stalls the DSP until all outstanding memory operations complete. For further information about the MFENCE instruction, see the C66x DSP and Instruction Set Reference Guide (SPRUGH7).