Hard Processor System Technical Reference Manual: Agilex™ 5 SoCs

ID 814346
Date 4/01/2024
Public
Document Table of Contents

4.3.9.2. Translation Table Walk Sequence

The page table walk sequence is shown in the following figure.

Figure 46. Page Table Walk Sequence

For address translation, there can be maximum 36 page table walks required. SMMU software can limit the number of page table walks as per application.

The full page table walk sequence is described as follows:

  • Up to two fetches to read the Stream Table Entry (STE)
    • If SMMU is configured for a single-level stream table, then only one fetch is required
  • Up to two fetches to read the Context Descriptor (CD)
    • For single-level CD table, only one fetch is required
  • Up to four fetches from the stage 1 page table
    • Maximum number of stage 1 page table walks can be configured by the software
  • Up to seven stage 2 page table walk sequences of up to four fetches each
    • A stage 2 walk occurs for each CD and stage 1 table fetch. An extra stage 2 walk occurs for the final translated address.
    • Maximum number of stage 2 page table walks by configuring the stage 2 starting level or by increasing the granule size.

The example of an address translation mechanism and stages are shown in the following figure.

Figure 47. Address Translation Phases

In this example, the stream ID selects the STE from a linear stream table, the STE points to a translation table stage 2 and points to a single CD for stage 1 configuration, and the CD points to translation tables for stage 1.

For Agilex™ 5 implementation, there is no Sub-Stream ID. So, there is only one CD pointed by the STE.

The translation stages and final address generation flow are shown is the following figure.

Figure 48. Translation Stages and Addresses