13.07.2015 Views

Intel 80200 Processor based on Intel XScale Microarchitecture

Intel 80200 Processor based on Intel XScale Microarchitecture

Intel 80200 Processor based on Intel XScale Microarchitecture

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Errata34. Aborted Store that Hits the Data Cache May Mark Write-Back Data as DirtyProblem:Workaround:When there is an aborted store that hits clean data in the data cache (data in an aligned four wordrange that has not been modified from the core since it was last loaded in from memory or cleaned),the data in the array is not modified (the store is blocked), but the dirty bit is set.When the line is then aged out of the data cache or explicitly cleaned, the data in that four wordrange is evicted to external memory, even though it has never been changed. In normal operati<strong>on</strong>this is nothing more than an extra store <strong>on</strong> the bus that writes the same data to memory that isalready there.Here is the boundary c<strong>on</strong>diti<strong>on</strong> where this might be visible:1. A cache line is loaded into the cache at address A.2. Another master externally modifies address A.3. A core store instructi<strong>on</strong> attempts to modify A, hits the cache, aborts because of MMUpermissi<strong>on</strong>s, and is backed out of the cache. That line normally is not marked dirty, butbecause of this errata is marked as dirty.4. The cache line at A then ages out or is explicitly cleaned. The original data from locati<strong>on</strong> Awill be evicted to external memory, overwriting the data written by the external master.This <strong>on</strong>ly happens when software is allowing an external master to modify memory that is,write-back or write-allocate in the <str<strong>on</strong>g>80200</str<strong>on</strong>g> page tables, and depending <strong>on</strong> the fact that the data is not'dirty' in the <str<strong>on</strong>g>80200</str<strong>on</strong>g> cache, to preclude the cached versi<strong>on</strong> from overwriting the external memoryversi<strong>on</strong>. When there are any semaphores or any other handshaking to prevent collisi<strong>on</strong>s <strong>on</strong> sharedmemory, this is not a problem.For this shared memory regi<strong>on</strong>, mark it as write-through memory in the <str<strong>on</strong>g>80200</str<strong>on</strong>g> page table. Thisprevents the data from ever being written out as dirty.Status: NoFix. Will not be fixed <strong>on</strong> D-step. See the Table “Summary Table of Changes” <strong>on</strong> page 7.35. Data Cache Unit Signals Incorrect Number of Misses or Memory Operati<strong>on</strong>sto the Performance M<strong>on</strong>itoring UnitProblem:Workaround:Under certain c<strong>on</strong>diti<strong>on</strong>s inside the Data Cache Unit pipeline, the DCU can allow an operati<strong>on</strong> tomove from the D2 pipe stage to the D3 pipe stage without the deasserti<strong>on</strong> of D2 stall. The operati<strong>on</strong>that does this is not properly signaled to the Performance M<strong>on</strong>itoring Unit and therefore the PMUcount of cache misses and memory operati<strong>on</strong>s can be lower than expected.No workaround.Status: Fixed. Fixed <strong>on</strong> C-step. See the Table “Summary Table of Changes” <strong>on</strong> page 7.24 <str<strong>on</strong>g>Intel</str<strong>on</strong>g> ® <str<strong>on</strong>g>80200</str<strong>on</strong>g> <str<strong>on</strong>g>Processor</str<strong>on</strong>g> <str<strong>on</strong>g>based</str<strong>on</strong>g> <strong>on</strong> <str<strong>on</strong>g>Intel</str<strong>on</strong>g> ® <strong>XScale</strong> <strong>Microarchitecture</strong> Specificati<strong>on</strong> Update

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!