
Public Version
MMU Basic Programming Model
www.ti.com
Table 15-7. Design Parameters of the MMU Instances
MMU Instance
Virtual Address Space
TLB Entries
MMU1 (camera MMU)
4GB
8 entries
MMU2 (IVA2.2 MMU)
4GB
32 entries
15.4 MMU Basic Programming Model
MMU instances handle translation from virtual into physical addresses. Virtual addresses are issued by
the Camera or the IVA2.2 subsystems to the MMU, which converts them into physical addresses. These
physical addresses correspond to actual memory resource. Refer to
, Memory Mapping for more
information on the device memory mapping.
MMU instances can be used dynamically or statically, in other words, MMU can be managed by the MPU
software or configured directly.
An MMU is configured dynamically when a software subroutine writes translation tables into the
appropriate physical memory space. Translation tables are most likely stored in external SDRAM (see
SMS,
, SDRAM Memory Scheduler, for more details). They are automatically written by
the MPU OS (Symbian™, Linux®,…). Operating System may limit the memory section size to page or
sections. A MPU memory management software treats all information concerning addressing. Sub-set
tables can be copied into external SDRAM to automatically create a given MMU translation table.
Features such as mixed region, endianness, element size are then overwritten in SDRAM to match one’s
need and customize Camera or IVA2.2 subsystems’ need (8-bit exchange in little-endian format for
example). Note that 16MB sections and 64KB page table entries must be duplicated 16 times with the
same content in translation tables. This process avoids a second read operation when an access points to
another element than first one in the table. If they are not copied the MMU will behave in an unpredictable
way.
When an MMU is configured statically, translation tables are not used, and TLB entries are written directly
by the programmer.
shows the configuration strategies: static, dynamic and mixed use of MMU.
2680
Memory Management Units
SWPU177N – December 2009 – Revised November 2010
Copyright © 2009–2010, Texas Instruments Incorporated