-
公开(公告)号:US11068274B2
公开(公告)日:2021-07-20
申请号:US15843982
申请日:2017-12-15
发明人: Kenneth L. Ward , Susan E. Eisen , Dung Q. Nguyen , Albert J. Van Norstrand, Jr. , Glenn O. Kincaid , Christopher M. Mueller
摘要: A simultaneous multithreading processor is configured to select a first thread of the plurality of threads according to a predefined scheme, and access an instruction completion table to determine whether the first thread is eligible to have a first instruction prioritized. Responsive to determining that the first thread is eligible to have the first instruction prioritized, the simultaneous multithreading processor is further configured to execute the first instruction of the first thread using a dedicated prioritization resource.
-
公开(公告)号:US10831492B2
公开(公告)日:2020-11-10
申请号:US16028177
申请日:2018-07-05
发明人: Salma Ayub , Glenn O. Kincaid , Christopher M. Mueller , Dung Q. Nguyen , Eula Faye Abalos Tolentino , Albert J. Van Norstrand, Jr. , Kenneth L. Ward
摘要: Systems, methods, and computer program products are disclosed that control issuing branch instructions in a simultaneous multi-threading (SMT) system. An embodiment system includes an SMT processor circuit that receives, from one of a plurality of threads, a branch instruction having a favor bit. The SMT processor circuit schedules the branch instruction to issue, relative to branch instructions received from other threads in the plurality of threads, based on the favor bit. When the favor bit has a first value, the branch instruction is scheduled to have a higher priority to issue before the branch instructions received from other threads in the plurality of threads. When the favor bit has a second value, the branch instruction is scheduled to issue based an age of the branch instruction relative to respective ages of the branch instructions received from other threads in the plurality of threads.
-
公开(公告)号:US10831489B2
公开(公告)日:2020-11-10
申请号:US16110061
申请日:2018-08-23
发明人: Kenneth L. Ward , Susan E. Eisen , Dung Q. Nguyen , Glenn O. Kincaid , Joe Lee , Deepak K. Singh
摘要: Method and apparatus for completing atomic instructions in a microprocessor may be provided by identifying from a program-ordered Instruction Completion Table (ICT) a last entry in a completion window of instructions for completion in a current clock cycle of a processor; in response to determining that the last entry includes an atomic instruction that straddles the completion window: excluding the last entry from completion during the current clock cycle; completing instructions in the completion window for the current clock cycle; and shifting the completion window to include the last entry and a next entry adjacent to the last entry in the ICT in a next clock cycle.
-
公开(公告)号:US10725786B2
公开(公告)日:2020-07-28
申请号:US16109952
申请日:2018-08-23
发明人: Kenneth L. Ward , Susan E. Eisen , Dung Q. Nguyen , Glenn O. Kincaid , Joe Lee , Deepak K. Singh
摘要: Method and apparatus for a completion mechanism for a microprocessor are provided by marking entries in a section of an Instruction Completion Table (ICT) as ready to complete using corresponding Ready to Complete (RTC) status bits; determining a tail pointer indicating a start of the entries in the ICT that are ready for completion in a current clock cycle; performing a counting leading ones on an RTC vector that organizes the RTC status bits according to a program order for completing the entries to determine a count leading ones pointer that indicates an end of the entries in the ICT that are ready for completion in the current clock cycle; completing instructions included in the entries between the tail pointer and the count leading ones pointer in one clock cycle; and updating the tail pointer to a value of the count leading ones pointer for a subsequent clock cycle.
-
公开(公告)号:US11366671B2
公开(公告)日:2022-06-21
申请号:US16851377
申请日:2020-04-17
发明人: Kenneth L. Ward , Susan E. Eisen , Dung Q. Nguyen , Glenn O. Kincaid , Joe Lee , Deepak K. Singh
摘要: Method and apparatus for a completion mechanism for a microprocessor are provided by identifying entries in a section of an Instruction Completion Table (ICT) that are marked as ready to complete via corresponding Ready to Complete (RTC) status bits; determining a tail pointer indicating a start of the entries in the ICT that are ready for completion; determining a head pointer that indicates an end of the entries in the ICT that are ready for completion; completing instructions included in the entries between the tail pointer and the head pointer; and updating the tail pointer to a value of the head pointer for a subsequent instruction completion round.
-
公开(公告)号:US11269647B2
公开(公告)日:2022-03-08
申请号:US15845871
申请日:2017-12-18
发明人: Kenneth L. Ward , Susan E. Eisen , Dung Q. Nguyen , Glenn O. Kincaid , Christopher M. Mueller , Tu-An T. Nguyen , Gaurav Mittal , Deepak K. Singh
摘要: A simultaneous multithreading processor and related method of operating are disclosed. The method comprises dispatching portions of a first instruction to be executed by a respective plurality of execution units of the processor; receiving, at an instruction completion table of the processor, respective finish reports responsive to execution of the portions of the first instruction; determining, using the received finish reports, that all of the portions of the first instruction have been executed; and updating the instruction completion table to indicate that the first instruction is ready for completion.
-
公开(公告)号:US11086630B1
公开(公告)日:2021-08-10
申请号:US16802679
申请日:2020-02-27
摘要: A computer system includes a dispatch stage configured to dispatch a plurality of instructions in a program order, and an issue stage configured to issue at least one instruction among the plurality of instructions. The computer system further includes an execution stage configured to execute the at least one instruction to generate a finish report and to determine the at least one instruction is one of an exception-free instruction or an exception instruction. In response to determining the exception-free instruction, a first finish report associated with the exception-free instruction is output to a completion stage. In response to determining the exception instruction, a second finish report associated with the exception instruction is output to an exception unit so as to halt output of the second finish report to the completion stage.
-
公开(公告)号:US10552162B2
公开(公告)日:2020-02-04
申请号:US15876273
申请日:2018-01-22
摘要: Variable latency flush filtering including receiving a first flush instruction tag (ITAG) and a second flush ITAG, wherein the first flush ITAG and the second flush ITAG are instructions to invalidate internal operation results after an internal operation identified by the first flush ITAG and the second flush ITAG; determining that the second flush ITAG is before the first flush ITAG by comparing the first flush ITAG and the second flush ITAG; determining that the first flush ITAG requires adjustment; and delaying the flush to a subsequent cycle in response to determining that the second flush ITAG is before the first flush ITAG and determining that the first flush ITAG requires adjustment.
-
公开(公告)号:US11636043B2
公开(公告)日:2023-04-25
申请号:US17461919
申请日:2021-08-30
发明人: Charles D. Wait , Jake Truelove , David Campbell , Jody Joyner , Jon K. Kriegel , Glenn O. Kincaid
IPC分类号: G06F12/1009
摘要: A memory address translation system includes a translation requestor module configured to provide translation requests from a virtual address to a real address of a physical memory. A translation cache module is configured to receive the translation request from the translation requestor module. A sleep and wake control module is configured to compare the received VA to VA's of all presently active table walks of the table walk machines. Upon determining that there is an address match in a given table walk machine, the translation request is sent with an identification number (ID) to the translation requestor module, to be put to sleep. Each table walk machine is configured to provide a wake-up signal having an ID to the translation requestor module upon completion of its translation level, thereby triggering a waking up and processing of a presently sleeping translation request, to provide parallel translation table walks.
-
公开(公告)号:US20230062909A1
公开(公告)日:2023-03-02
申请号:US17461919
申请日:2021-08-30
发明人: Charles D. Wait , Jake Truelove , David Campbell , Jody Joyner , Jon K. Kriegel , Glenn O. Kincaid
IPC分类号: G06F12/1009
摘要: A memory address translation system includes a translation requestor module configured to provide translation requests from a virtual address to a real address of a physical memory. A translation cache module is configured to receive the translation request from the translation requestor module. A sleep and wake control module is configured to compare the received VA to VA's of all presently active table walks of the table walk machines. Upon determining that there is an address match in a given table walk machine, the translation request is sent with an identification number (ID) to the translation requestor module, to be put to sleep. Each table walk machine is configured to provide a wake-up signal having an ID to the translation requestor module upon completion of its translation level, thereby triggering a waking up and processing of a presently sleeping translation request, to provide parallel translation table walks.
-
-
-
-
-
-
-
-
-