摘要 |
A memory management unit (MMU) having cross-domain control for controlling a CPU's right to access a memory in order to initiate performance of an operation. The MMU includes a translator for translating a virtual address issued by the CPU into a physical address, a data domain number (DDN) and an address domain number (ADN) both corresponding to a domain (a portion of the virtual address space), and a permission. The MMU further includes an environment controller for determining if the ADN corresponding to the operation is allowed access by the CPU. The translator includes an address translation unit (ATU), a data translation unit (DTU), translation table lookup logic, and permission control logic. The ATU generates the physical address, the ADN, and the permission from the virtual address. The DTU generates the DDN of tagged data specified by the CPU if the tagged data is a pointer. The TTLL supplies entry information to the ATU and DTU. The permission control logic evaluates the permission and either stops the operation or allows it to continue to be performed. The MMU further includes cross-domain control logic which evaluates the ADN and DDN to detect the attempted flow of domain specific information as a result of the operation. The cross-domain control logic includes the ability to prohibit the flow of information between domains and also includes the ability to prohibit the flow of control by the CPU between domains.
|