Conversion system for a processor with an expandable instruction set architecture for dynamically configuring execution resources

US10146543B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10146543-B2
Application numberUS-201615371485-A
CountryUS
Kind codeB2
Filing dateDec 7, 2016
Priority dateDec 8, 2015
Publication dateDec 4, 2018
Grant dateDec 4, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A conversion system that converts a standard executable program according to a predetermined ISA into a custom executable program executable by a general purpose processor. The processor includes a PEU that is programmable to execute a UDI. The conversion system includes a PEU programming tool that converts a functional description of a processing operation to be performed by the PEU of the processor into programming information for the PEU to perform the processing operation in response to the UDI. A converter converts the standard executable program into the custom executable program and includes an optimization routine that replaces a portion of the standard executable program with the specified UDI and that inserts the UDI into the custom executable program, and that further inserts a UDI load instruction that specifies the UDI and a location of the programming information in the custom executable program.

First claim

Opening claim text (preview).

The invention claimed is: 1. A conversion system for converting a standard executable program according to a predetermined instruction set architecture (ISA) into a custom executable program that is executable by a general purpose processor implemented according to the predetermined ISA, in which the processor includes a programmable execution unit (PEU) that is programmable to execute a specified user-defined instruction (UDI) received by the processor for execution, said compiler system comprising: a PEU programming tool that converts a functional description of a processing operation to be performed by the PEU of the processor into programming information for programming the PEU to perform the processing operation in response to the specified UDI; and a converter that converts the standard executable program into the custom executable program, wherein said converter comprises at least one optimization routine that replaces a portion of the standard executable program with the specified UDI and that inserts the UDI into the custom executable program, and that further inserts into the custom executable program a UDI load instruction that specifies the UDI and said programming information, wherein the programming information comprises a latency statement indicating the latency of the processing operation by a number of clock cycles to complete the processing operation, wherein the processor further includes a UDI loader and a ISA table, the UDI loader programming the PEU for the specified UDI in response to the UDI load instruction by accessing the programming information, wherein the UDI loader accesses the programming information by a programming information address field corresponding to the specified UDI in the ISA table that points to a location of the programming information in memory. 2. The conversion system of claim 1 , wherein said converter consults said PEU programming tool to incorporate the UDI and corresponding programming information into the custom executable program. 3. The conversion system of claim 1 , wherein said converter uses said at least one optimization routine to generate said functional description of a processing operation. 4. The conversion system of claim 1 , wherein said converter outputs an executable application that is executable by the processor, in which said executable application includes both the standard executable program and the custom executable program. 5. The conversion system of claim 1 , wherein said converter incorporates said programming information as UDI information into the standard executable program to provide the custom executable program. 6. The conversion system of claim 1 , wherein said PEU programming tool generates an output comprising UDI definitions and corresponding programming information, and wherein said converter links to said output of said PEU programming tool during recompilation of the custom executable program. 7. A method of converting a standard executable program according to a predetermined instruction set architecture (ISA) into a custom executable program that is executable by a general purpose processor implemented according to the predetermined ISA, in which the processor includes a programmable execution unit (PEU) that is programmable to execute a specified user-defined instruction (UDI) received by the processor for execution, said method comprising: converting a functional description of a processing operation to be performed by the PEU of the processor into programming information for programming the PEU to perform the processing operation in response to the specified UDI; and converting the standard executable program into the custom executable program, including replacing a portion of the standard executable program with the specified UDI in the custom executable program, inserting the UDI into the custom executable program, and further inserting into the custom executable program a UDI load instruction that specifies the UDI and the programming information, wherein the programming information comprises a latency statement indicating the latency of the processing operation by a number of clock cycles to complete the processing operation, wherein the processor further includes a UDI loader and a ISA table, the UDI loader programming the PEU for the specified UDI in response to the UDI load instruction by accessing the programming information, wherein the UDI loader accesses the programming information by a programming information address field corresponding to the specified UDI in the ISA table that points to a location of the programming information in memory. 8. The method of claim 7 , wherein said converting a functional description of a processing operation comprises consulting a PEU programming tool. 9. The method of claim 7 , wherein said converting the standard executable program comprises using at least one optimization routine to generate the functional description of the processing operation which is converted to the programming information. 10. The method of claim 7 , wherein said converting the standard executable program into the custom executable program comprises converting the standard executable program into an executable application that includes both the standard executable program and the custom executable program. 11. The method of claim 7 , wherein said converting the standard executable program comprises incorporating the programming information as UDI information into the custom executable program. 12. The method of claim 7 , wherein said converting a functional description comprises generating an output comprising UDI definitions and corresponding programming information, and wherein said converting the standard executable program comprises linking to the output during recompilation of the custom executable program.

Assignees

Inventors

Classifications

  • Unification in logic programming · CPC title

  • Procedural · CPC title

  • Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution · CPC title

  • using decoder, e.g. decoder per instruction set, adaptable or programmable decoders · CPC title

  • according to one or more bits in the instruction, e.g. prefix, sub-opcode · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10146543B2 cover?
A conversion system that converts a standard executable program according to a predetermined ISA into a custom executable program executable by a general purpose processor. The processor includes a PEU that is programmable to execute a UDI. The conversion system includes a PEU programming tool that converts a functional description of a processing operation to be performed by the PEU of the pro…
Who is the assignee on this patent?
Via Alliance Semiconductor Co Ltd
What technology area does this patent fall under?
Primary CPC classification G06F9/30196. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 04 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).