Automated bug fixing
US-2019391904-A1 · Dec 26, 2019 · US
US11816487B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11816487-B2 |
| Application number | US-202117471170-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 10, 2021 |
| Priority date | Dec 29, 2020 |
| Publication date | Nov 14, 2023 |
| Grant date | Nov 14, 2023 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
An instruction conversion device, an instruction conversion method, an instruction conversion system, and a processor are provided. The instruction conversion device includes a monitor for determining whether a ready-for-execution instruction is an instruction that belongs to a new instruction set or an extended instruction set, wherein the new instruction set and the extended instruction set have the same type of the instruction set architecture as that of the processor. If the ready-for-execution instruction is determined as an extended instruction, this extended instruction is converted into a converted instruction sequence by means of the conversion system, this converted instruction sequence is then sent to the processor for executions, thereby extending the lifespans of the electronic devices embodied with old-version processors.
Opening claim text (preview).
What is claimed is: 1. An instruction conversion device, comprising: a monitor adapted to determine whether a ready-for-execution instruction is a supported instruction or an extended instruction, wherein, the ready-for-execution instruction is executed through a processor if the ready-for-execution instruction is the supported instruction; and in response to that the ready-for-execution instruction is the extended instruction: an emulation flag is asserted by the monitor and a microinstruction corresponding to the extended instruction is generated by the processor; and in response to that the emulation flag is asserted by the monitor and the microinstruction corresponding to the extended instruction is retired by the processor, a conversion system is triggered to convert the ready-for-execution instruction into a converted instruction sequence, and the converted instruction sequence is sent to the processor for executions. 2. The instruction conversion device according to claim 1 , wherein the processor comprises: an executor coupled to the monitor, wherein the processor uses the executor to execute the ready-for-execution instruction when the ready-for-execution instruction is the supported instruction, and the processor uses the executor to execute the ready-for-execution instruction according to the converted instruction sequence of the extended instruction when the ready-for-execution instruction is the extended instruction. 3. The instruction conversion device according to claim 1 , wherein the processor comprises a conversion cache, the processor stores the converted instruction sequence of the extended instruction into the conversion cache, and the ready-for-execution instruction is executed according to the converted instruction sequence stored in the conversion cache if the ready-for-execution instruction is the extended instruction and the converted instruction sequence has been stored. 4. The instruction conversion device according to claim 3 , wherein if the converted instruction sequence of the extended instruction is not stored in the processor, the monitor sends the extended instruction to the conversion system which converts the extended instruction to obtain the converted instruction sequence, and the ready-for-execution instruction is executed through the processor if the converted instruction sequence is stored in the processor. 5. The instruction conversion device according to claim 3 , wherein an executor in the processor directly executes the converted instruction sequence when the processor has stored the converted instruction sequence of the extended instruction. 6. The instruction conversion device according to claim 3 , wherein the emulation flag is disposed in the processor when the processor does not store the converted instruction sequence of the extended instruction; and when the emulation flag is asserted, the extended instruction is converted to the converted instruction sequence by the conversion system, and then the converted instruction sequence is stored into the processor, and the processor executes the ready-for-execution instruction through executing the converted instruction sequence. 7. The instruction conversion device according to claim 1 , wherein the conversion system comprises: an exception processing module, wherein the exception processing module generates an exception and notifies an application program of the exception when the conversion system converts a unconvertible instruction and an abnormality or an exception occurs. 8. The instruction conversion device according to claim 1 , wherein the monitor determines whether the ready-for-execution instruction is the supported instruction or the extended instruction according to a prefix, an escape code, and an opcode. 9. The instruction conversion device according to claim 1 , wherein the supported instruction and the extended instruction are a same type of instruction. 10. The instruction conversion device according to claim 9 , wherein the supported instruction and the extended instruction are both instructions compatible to Complex Instruction Set Computing (CISC) processors, instructions compatible to Reduced Instruction Set Computing (RISC) processors, instructions compatible to Microprocessor without Interlocked Pipeline Stages (MIPS) processors, or instructions compatible to Reduced Instruction Set Computing-five (RISC-V) processors. 11. The instruction conversion device according to claim 1 , wherein the converted instruction sequence consists of microinstructions, and the converted instruction sequence is directly sent to the processor for executions without being decoded through an instruction decoder. 12. The instruction conversion device according to claim 1 , wherein the microinstruction corresponding to the extended instruction includes a no operation instruction, and after the no operation instruction is retired, the conversion system is requested to generate the converted instruction sequence for the extended instruction. 13. The instruction conversion device according to claim 1 , wherein the conversion system is stored in a basic input/output system, and is loaded into an operating system when a system embodied with the processor is turned on. 14. The instruction conversion device according to claim 1 , wherein the converted instruction sequence of the extended instruction is directly fed to the processor by the conversion system through at least one pin of the processor, or the converted instruction sequence of the extended instruction is directed to the processor by reading and writing a model specific register. 15. An instruction conversion method, comprising: determining whether a ready-for-execution instruction is a supported instruction or an extended instruction; executing the ready-for-execution instruction through a processor if the ready-for-execution instruction is the supported instruction; and in response to that the ready-for-execution instruction is the extended instruction: using a monitor to assert an emulation flag and using the processor to generate a microinstruction corresponding to the extended instruction; and in response to that the emulation flag is asserted by the monitor and the microinstruction corresponding to the extended instruction is retired by the processor, triggering a conversion system to convert the ready-for-execution instruction into a converted instruction sequence, and sending the converted instruction sequence to the processor for executions. 16. The instruction conversion method according to claim 15 , wherein the processor comprises: an executor coupled to the monitor, wherein the processor uses the executor to execute the ready-for-execution instruction when the monitor determines that the ready-for-execution instruction is the supported instruction, and wherein the processor uses the executor to execute the ready-for-execution instruction according to the converted instruction sequence of the extended instruction when the monitor determines that the ready-for-execution instruction is the extended instruction. 17. The instruction conversion method according to claim 15 , further comprising: storing the converted instruction sequence of the extended instruction through the processor; executing the ready-for-execution instruction according to the stored converted instruction sequence if the ready-for-execution instruction is the extended instruction and the converted instruction sequence has been stored. 18. The instruction conversion method according to claim 17 , further comp
Instruction completion, e.g. retiring, committing or graduating · CPC title
Result writeback, i.e. updating the architectural state or memory · CPC title
Instruction analysis, e.g. decoding, instruction word fields · CPC title
Runtime instruction translation, e.g. macros · CPC title
Prefetch instructions; cache control instructions · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.