Mechanism for selectively imposing interference order between page-table fetches and corresponding data fetches
First Claim
1. A method for selectively imposing inter-reference ordering between memory reference operations of a shared memory multiprocessor system, the system having a plurality of processors, each processor having a translation buffer (TB) configured to store a plurality of page table entries (PTEs), each PTE containing information for mapping a virtual address to a physical address of a page stored in a memory of the system, the method comprising the steps of:
- issuing a memory reference operation from a processor to control logic of the multiprocessor system to retrieve a PTE associated with a specific page in the memory;
generating a commit-signal at the control logic in response to the issued memory reference operation, the commit-signal being generated substantially sooner than completion of the memory reference operation and indicating apparent completion of the memory reference operation rather than actual completion of the operation;
receiving the PTE at the processor in response to the memory reference operation; and
loading the received PTE into the TB only upon receipt of the commit-signal associated with the memory reference operation at the processor.
3 Assignments
0 Petitions
Accused Products
Abstract
A technique selectively imposes inter-reference ordering between memory reference operations issued by a processor of a multiprocessor system to addresses within a page pertaining to a page table entry (PTE) that is affected by a translation buffer (TB) miss flow routine. The TB miss flow is used to retrieve information contained in the PTE for mapping a virtual address to a physical address and, subsequently, to allow retrieval of data at the mapped physical address. The PTE that is retrieved in response to a memory reference (read) operation is not loaded into the TB until a commit-signal associated with that read operation is returned to the processor. Once the PTE and associated commit-signal are returned, the processor loads the PTE into the TB so that it can be used for a subsequent read operation directed to the data at the physical address.
68 Citations
10 Claims
-
1. A method for selectively imposing inter-reference ordering between memory reference operations of a shared memory multiprocessor system, the system having a plurality of processors, each processor having a translation buffer (TB) configured to store a plurality of page table entries (PTEs), each PTE containing information for mapping a virtual address to a physical address of a page stored in a memory of the system, the method comprising the steps of:
-
issuing a memory reference operation from a processor to control logic of the multiprocessor system to retrieve a PTE associated with a specific page in the memory;
generating a commit-signal at the control logic in response to the issued memory reference operation, the commit-signal being generated substantially sooner than completion of the memory reference operation and indicating apparent completion of the memory reference operation rather than actual completion of the operation;
receiving the PTE at the processor in response to the memory reference operation; and
loading the received PTE into the TB only upon receipt of the commit-signal associated with the memory reference operation at the processor. - View Dependent Claims (2, 3, 4)
associating the commit-signal with the memory reference operation using a ComSig field of the packet in conjunction with an entry of a miss address file (MAF) corresponding to the memory reference operation.
-
-
4. The method of claim 3 wherein the step of associating further comprises the steps of:
-
assigning the MAF entry a value; and
loading the MAF entry value into the ComSig field during the step of generating the commit-signal.
-
-
5. Apparatus for selectively imposing inter-reference ordering between first and second memory reference operations issued by a processor of a shared memory multiprocessor system, the apparatus comprising:
-
a commit-signal structure generated by control logic of the multiprocessor system in response to the first memory reference operation issued to the system, the commit-signal structure having a mechanism for associating the commit-signal with the first memory reference operation; and
a miss address file (MAF) having a plurality of MAF entries, each MAF entry corresponding to a memory reference operation issued by the processor, a first MAF entry including a field having contents that indicate whether the commit-signal associated with the first memory reference operation is received by the processor, wherein receipt of the commit-signal by the processor indicates apparent completion of the first memory reference operation. - View Dependent Claims (6, 7, 8, 9, 10)
a translation buffer (TB) configured to store a plurality of page table entries (PTEs), each PTE containing information for mapping a virtual address to a physical address.
-
-
7. The apparatus of claim 6 wherein the first memory reference operation is issued to retrieve a PTE.
-
8. The apparatus of claim 7 wherein the retrieved PTE is loaded into the TB only upon receipt by the processor of the commit-signal associated with the first memory reference operation.
-
9. The apparatus of claim 8 wherein the commit-signal structure is a commit-signal packet comprising a ComSig field characterized by the assertion of a single, commit-signal bit.
-
10. The apparatus of claim 8 wherein the commit-signal structure is a commit-signal packet comprising a ComSig field having a valid bit and a ComSig MAF field whose contents identify the first memory reference operation.
Specification