Patent ID: 6412043
Filing Date: 2002-06-25
Classification: G06F

Abstract:
In a data processing system having a virtual cache memory and a translation lookaside buffer, the virtual cache memory having a plurality of entries, each of the entries of the virtual cache memory including physical address information, logical address information and permission information, the translation lookaside buffer having a plurality of entries, each of the entries of the translation lookaside buffer including physical address information, logical address information and permission information, a method comprising the steps of:A. initiating a memory access operation on a predetermined memory location based on logical address information and permission information associated with the memory access operation; B. accessing the virtual cache memory, and determining if there is a match between at least a portion of the logical address information of the memory access operation and at least a portion of the logical address information stored in the entries of the virtual cache; C. if there is a match between the logical address information of the memory access operation and logical address information of a particular entry of the virtual cache memory, then determining, based on the permission information of the memory access operation and the permission information of the particular entry of the virtual cache memory, whether the memory access operation is permitted by the permission information of the particular entry of the virtual cache memory; D. if the memory access operation is not permitted by the permission information of the particular entry of the virtual cache memory, then accessing the translation lookaside buffer based on the logical address information of the particular entry of the virtual cache memory; E. if there is a match between the logical address information of the particular entry of the virtual cache memory and the logical address information of a particular entry of the translation lookaside buffer, then determining, based on the permission information of the memory access operation and the permission information of the particular entry of the translation lookaside buffer, whether the memory access operation is permitted by the permission information of the particular entry of the translation lookaside buffer; F. if the memory access operation is permitted by the permission information of the particular entry of the translation lookaside buffer, then updating the permission information of the particular entry of the virtual cache memory based on the permission information of the particular entry of the translation lookaside buffer; and G. completing the memory access operation.