User manual

Table Of Contents
Zynq-7000 AP SoC Technical Reference Manual www.xilinx.com 87
UG585 (v1.11) September 27, 2016
Chapter 3: Application Processing Unit
TLB Maintenance Operations
The following rules describe the TLB maintenance operations:
A TLB invalidate operation is complete when all memory accesses using the TLB entries that
have been invalidated have been observed by all observers to the extent that those accesses are
required to be observed, as determined by the shareability and cacheability of the memory
locations accessed by the accesses. In addition, once the TLB invalidate operation is complete,
no new memory accesses that can be observed by those observers using those TLB entries will
be performed.
A TLB maintenance operation is only guaranteed to be complete after the execution of a DSB
instruction.
An ISB instruction, or a return from an exception, causes the effect of all completed TLB
maintenance operations that appear in program order before the ISB or return from exception
to be visible to all subsequent instructions, including the instruction fetches for those
instructions.
An exception causes all completed TLB maintenance operations that appear in the instruction
stream before the point where the exception was taken to be visible to all subsequent
instructions, including the instruction fetches for those instructions.
All TLB maintenance operations are executed in program order relative to each other.
The execution of a Data or Unified TLB maintenance operation is guaranteed not to affect any
explicit memory access of any instruction that appears in program order before the TLB
maintenance operation. This means no memory barrier instruction is required. This ordering is
guaranteed by the hardware implementation.
The execution of a Data or Unified TLB maintenance operation is only guaranteed to be visible
to a subsequent explicit load or store operation after both:
X-Ref Target - Figure 3-9
Figure 3-9: Translation Process
Translation
Request
Translation
Result
Translation
Fault
Perform
Translation
Entry
exists in
Page
Table?
TLB Update
Is the
translation
in TLB?
Ye s
No
No No
Ye s
Ye s
Tabl e
walking
enabled?
UG585_c3_10_102112