Method and apparatus for instruction scheduling using software pipelining

US9354850B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9354850-B2
Application numberUS-201414507272-A
CountryUS
Kind codeB2
Filing dateOct 6, 2014
Priority dateOct 7, 2013
Publication dateMay 31, 2016
Grant dateMay 31, 2016

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 method for scheduling loop processing of a reconfigurable processor includes generating a dependence graph of instructions for the loop processing; mapping a first register file of the reconfigurable processor on an arrow indicating inter-iteration dependence on the dependence graph; and searching for schedules of the instructions based on the mapping result.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for scheduling processing of a loop in a reconfigurable processor, the method comprising: generating a dependence graph of instructions for the processing of the loop; detecting an arrow of the dependence graph indicating inter-iteration dependence on the dependence graph; mapping a register file of the reconfigurable processor on the detected arrow of the dependence graph indicating the inter-iteration dependence on the dependence graph; and searching for schedules of the instructions for the processing of the loop based on the mapping. 2. The method of claim 1 , wherein the register file is a central register file connected to at least one load/store unit of the reconfigurable processor implementing a memory access instruction. 3. The method of claim 1 , wherein the mapping of the register file comprises: adding a node between a function-unit-type (FU-type) node when the arrow is directed towards the FU-type node; and allocating the register file to the node. 4. The method of claim 1 , wherein the mapping of the register file comprises allocating the register file to a register-file-type (RF-type) node when the arrow is directed towards the RF-type node. 5. The method of claim 1 , further comprising adding a node onto the dependence graph, wherein the node resets a control signal for storing a context of the reconfigurable processor in a predetermined cycle. 6. The method of claim 5 , wherein the predetermined cycle is an integer-multiple cycle of an initiation interval between iterations of the loop. 7. The method of claim 5 , further comprising adding another node onto the dependence graph, wherein the another node temporarily stops the processing of the loop when the control signal is reset or an end condition of the loop is satisfied. 8. A non-transitory computer-readable recording medium having recorded thereon a computer program for executing the method of claim 1 . 9. A scheduling apparatus comprising: a memory that stores instructions for processing of a loop; and a modulo scheduler that generates a dependence graph of the instructions for the processing of the loop and schedules operations of a reconfigurable processor that processes the loop, wherein the modulo scheduler detects an arrow of the dependence graph indicating inter-iteration dependence on the dependence graph, maps a register file of the reconfigurable processor on the detected arrow of the dependence graph indicating the inter-iteration dependence on the dependence graph, and searches for schedules of the instructions for the processing of the loop based on the mapping. 10. The scheduling apparatus of claim 9 , wherein the modulo scheduler adds a node between a function-unit-type (FU-type) node when the arrow is directed towards the FU-type node in order to allocate the register file to the node, and allocates the register file to a register-file-type (RF-type) node when the arrow is directed towards the RF-type node. 11. The scheduling apparatus of claim 9 , wherein the modulo scheduler adds a node onto the dependence graph that resets a control signal to store a context while processing the loop, and adds another node onto the dependence graph that temporarily stops the processing of the loop according to an input of the control signal.

Assignees

Inventors

Classifications

  • Organisation of register space, e.g. banked or distributed register file · CPC title

  • G06F8/443Primary

    Optimisation · CPC title

  • G06F8/433Primary

    Dependency analysis; Data or control flow analysis · CPC title

  • G06F8/4452Primary

    Software pipelining · 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 US9354850B2 cover?
A method for scheduling loop processing of a reconfigurable processor includes generating a dependence graph of instructions for the loop processing; mapping a first register file of the reconfigurable processor on an arrow indicating inter-iteration dependence on the dependence graph; and searching for schedules of the instructions based on the mapping result.
Who is the assignee on this patent?
Samsung Electronics Co Ltd
What technology area does this patent fall under?
Primary CPC classification G06F8/443. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 31 2016 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).