Patent ID: 8751830

Claim:
A method of accessing data in a data processing system, the method comprising: in response to a memory access request initiated by a thread in a processing core, accessing a memory address translation data structure to perform a memory address translation for the memory access request; accessing an encryption-related page attribute in the memory address translation data structure to determine whether the memory page associated with the memory access request is encrypted, wherein the encryption-related page attribute comprises a level attribute that identifies at least one level of a multi-level memory architecture within which the memory page is encrypted; and selectively streaming secure data in the memory page through an encryption engine to perform an encryption operation on the secure data based upon whether the memory page associated with the memory access request is determined to be encrypted; wherein the memory access request comprises a first memory access request associated with a first process executed by the processing core, the method further comprising: in response to a second memory access request associated with a second process that is not authorized to access the memory page, asserting a software exception; and in response to the second memory access request, determining whether the memory page is encrypted, and when the memory page is encrypted, indicating that the page is encrypted when asserting the software exception.