Patents by Inventor Robert Keith Mykland

Robert Keith Mykland has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11531638
    Abstract: A method and system are provided for configurable computation and data processing. A logical processor includes an array of logic elements. The processor may be a combinatorial circuit that can be applied to modify computational aspects of an array of reconfigurable circuits. A memory stores a plurality of instructions, each instruction including an instruction-fetch data portion and an output data transfer data portion. One or more memory controllers are coupled to the memory and receive instructions and/or output data from the memory. A back buffer is coupled with the memory controller and receives instructions from the memory controller. The back buffer sequentially asserts each received instruction upon one or more memory controllers. The memory controllers transfer data received from the memory to a target, such as an array of reconfigurable logic circuits that are optionally coupled to the memory, the back buffer, and one or more additional memory controllers.
    Type: Grant
    Filed: August 27, 2018
    Date of Patent: December 20, 2022
    Inventor: Robert Keith Mykland
  • Patent number: 10983947
    Abstract: A method and system for enabling persistence of a value by a dynamically reconfigurable processor (“DRP”) from the time of execution of an earlier executed instruction to a time of later executed instruction. The value may represent a constant a variable value of a software program. The value may be read from or written into a memory circuit, a DRP logic element, an iterator of a DRP logic element, or other value storing element or aspect of the DRP. The value may be maintained in a single logic element through the duration of one or more instruction execution cycles, or alternatively or additionally, the value may be transferred between or among one or more value storage hardware elements. The persistence of the value and transfer of the value within, into and/or out of the DRP enables later access of the value by, and/or positioning the value within, the DRP.
    Type: Grant
    Filed: September 11, 2013
    Date of Patent: April 20, 2021
    Inventor: Robert Keith Mykland
  • Publication number: 20200192860
    Abstract: A method and system are provided for configurable computation and data processing. A logical processor includes an array of logic elements. The processor may be a combinatorial circuit that can be applied to modify computational aspects of an array of reconfigurable circuits. A memory stores a plurality of instructions, each instruction including an instruction-fetch data portion and an output data transfer data portion. One or more memory controllers are coupled to the memory and receive instructions and/or output data from the memory. A back buffer is coupled with the memory controller and receives instructions from the memory controller. The back buffer sequentially asserts each received instruction upon one or more memory controllers. The memory controllers transfer data received from the memory to a target, such as an array of reconfigurable logic circuits that are optionally coupled to the memory, the back buffer, and one or more additional memory controllers.
    Type: Application
    Filed: August 27, 2018
    Publication date: June 18, 2020
    Applicant: ASCENIUM CORPORATION
    Inventor: ROBERT KEITH MYKLAND
  • Patent number: 10089277
    Abstract: A method and system are provided for configurable computation and data processing. A logical processor includes an array of logic elements. The processor may be a combinatorial circuit that can be applied to modify computational aspects of an array of reconfigurable circuits. A memory stores a plurality of instructions, each instruction including an instruction-fetch data portion and an output data transfer data portion. One or more memory controllers are coupled to the memory and receive instructions and/or output data from the memory. A back buffer is coupled with the memory controller and receives instructions from the memory controller. The back buffer sequentially asserts each received instruction upon one or more memory controllers. The memory controllers transfer data received from the memory to a target, such as an array of reconfigurable logic circuits that are optionally coupled to the memory, the back buffer, and one or more additional memory controllers.
    Type: Grant
    Filed: November 21, 2011
    Date of Patent: October 2, 2018
    Inventor: Robert Keith Mykland
  • Publication number: 20170192759
    Abstract: A computer-enabled method is presented whereby source code is segmented into a unit of work for increased efficiencies in processing by computing systems. A first system latency value of the first processor and a second latency value of the second processor are determined by assigning units of work to the first and second processors, respectively, in view of the workloads of the processors. The system latency values are subsequently compared, and units of computational work are assigned to the first or second processors based on the comparative values of the system latencies of the first and second processors, wherein the computing code comprising the units of work may be rewritten and reassigned between a plurality of processors. Additionally presented is a system by which the invented method may be implemented.
    Type: Application
    Filed: December 31, 2015
    Publication date: July 6, 2017
    Inventor: Robert Keith Mykland
  • Patent number: 9633160
    Abstract: A method and system are provided for deriving a resultant compiled software code with increased compatibility for placement and routing of a dynamically reconfigurable processor.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: April 25, 2017
    Inventor: Robert Keith Mykland
  • Patent number: 9477470
    Abstract: A method and system are provided for deriving a resultant software program from an originating software program having overlapping branches, wherein the resultant software project has either no overlapping branches or fewer overlapping branches than the originating software program. A preferred embodiment of the invented method generates a resultant software program that has no overlapping branches. The resultant software is more easily converted into programming reconfigurable logic than the originating software program. Separate and individually applicable aspects of the invented method are used to eliminate all four possible states of two overlapping branches, i.e., forward branch overlapping forward branch, back branch overlapping back branch, and each of the two possible and distinguishable states of forward branch and back branch overlap. One or more elements of each aspect of the invention may be performed by one or more computers or processors, or by means of a computer or a communications network.
    Type: Grant
    Filed: October 7, 2014
    Date of Patent: October 25, 2016
    Inventor: Robert Keith Mykland
  • Patent number: 9304770
    Abstract: A method and system are provided for deriving a resultant software code from an originating ordered list of instructions that does not include overlapping branch logic. The method may include deriving a plurality of unordered software constructs from a sequence of processor instructions; associating software constructs in accordance with an original logic of the sequence of processor instructions; determining and resolving memory precedence conflicts within the associated plurality of software constructs; resolving forward branch logic structures into conditional logic constructs; resolving back branch logic structures into loop logic constructs; and/or applying the plurality of unordered software constructs in a programming operation by a parallel execution logic circuitry. The resultant plurality of unordered software constructs may be converted into programming reconfigurable logic, computers or processors, and also by means of a computer network or an electronics communications network.
    Type: Grant
    Filed: December 20, 2012
    Date of Patent: April 5, 2016
    Inventor: Robert Keith Mykland
  • Patent number: 9158544
    Abstract: A method and system are provided for deriving a resultant software code from an originating ordered list of instructions that does not include overlapping branch logic. The method may include deriving a plurality of unordered software constructs from a sequence of processor instructions; associating software constructs in accordance with an original logic of the sequence of processor instructions; determining and resolving memory precedence conflicts within the associated plurality of software constructs; resolving forward branch logic structures into conditional logic constructs; resolving back branch logic structures into loop logic constructs; and/or applying the plurality of unordered software constructs in a programming operation by a parallel execution logic circuitry. The resultant plurality of unordered software constructs may be converted into programming reconfigurable logic, computers or processors, and also by means of a computer network or an electronics communications network.
    Type: Grant
    Filed: June 11, 2012
    Date of Patent: October 13, 2015
    Inventor: Robert Keith Mykland
  • Publication number: 20150227375
    Abstract: A method and system for enabling persistence of a value by a dynamically reconfigurable processor (“DRP”) from the time of execution of an earlier executed instruction to a time of later executed instruction. The value may represent a constant a variable value of a software program. The value may be read from or written into a memory circuit, a DRP logic element, an iterator of a DRP logic element, or other value storing element or aspect of the DRP. The value may be maintained in a single logic element through the duration of one or more instruction execution cycles, or alternatively or additionally, the value may be transferred between or among one or more value storage hardware elements. The persistence of the value and transfer of the value within, into and/or out of the DRP enables later access of the value by, and/or positioning the value within, the DRP.
    Type: Application
    Filed: September 11, 2013
    Publication date: August 13, 2015
    Inventor: ROBERT KEITH MYKLAND
  • Publication number: 20150205608
    Abstract: A method and system are provided for deriving a resultant software program from an originating software program having overlapping branches, wherein the resultant software project has either no overlapping branches or fewer overlapping branches than the originating software program. A preferred embodiment of the invented method generates a resultant software program that has no overlapping branches. The resultant software is more easily converted into programming reconfigurable logic than the originating software program. Separate and individually applicable aspects of the invented method are used to eliminate all four possible states of two overlapping branches, i.e., forward branch overlapping forward branch, back branch overlapping back branch, and each of the two possible and distinguishable states of forward branch and back branch overlap. One or more elements of each aspect of the invention may be performed by one or more computers or processors, or by means of a computer or a communications network.
    Type: Application
    Filed: October 7, 2014
    Publication date: July 23, 2015
    Inventor: ROBERT KEITH MYKLAND
  • Patent number: 8869123
    Abstract: A method and system are provided for deriving a resultant software program from an originating software program that may include overlapping branch logic. The method may include deriving a plurality of software objects from a sequence of processor instructions; associating software objects in accordance with an original logic of the sequence of processor instructions; determining and resolving memory precedence conflicts within the associated plurality of software objects; de-overlapping the execution of the associated plurality of software objects by replacing all overlapping branch logic instructions of the associated series of software objects with equivalent and non-overlapping branch logic instructions; and/or applying the de-overlapped associated plurality of software objects in a programming operation by a parallel execution logic circuitry.
    Type: Grant
    Filed: March 23, 2012
    Date of Patent: October 21, 2014
    Inventor: Robert Keith Mykland
  • Patent number: 8856768
    Abstract: A method and system are provided for deriving a resultant software program from an originating software program having overlapping branches, wherein the resultant software project has either no overlapping branches or fewer overlapping branches than the originating software program. A preferred embodiment of the invented method generates a resultant software program that has no overlapping branches. The resultant software is more easily converted into programming reconfigurable logic than the originating software program. Separate and individually applicable aspects of the invented method are used to eliminate all four possible states of two overlapping branches, i.e., forward branch overlapping forward branch, back branch overlapping back branch, and each of the two possible and distinguishable states of forward branch and back branch overlap. One or more elements of each aspect of the invention may be performed by one or more computers or processors, or by means of a computer or a communications network.
    Type: Grant
    Filed: January 30, 2012
    Date of Patent: October 7, 2014
    Inventor: Robert Keith Mykland
  • Publication number: 20140122835
    Abstract: A method and system are provided for deriving a resultant compiled software code with increased compatibility for placement and routing of a dynamically reconfigurable processor.
    Type: Application
    Filed: March 15, 2013
    Publication date: May 1, 2014
    Inventor: ROBERT KEITH MYKLAND
  • Publication number: 20140013080
    Abstract: A method and system are provided for deriving a resultant software code from an originating ordered list of instructions that does not include overlapping branch logic. The method may include deriving a plurality of unordered software constructs from a sequence of processor instructions; associating software constructs in accordance with an original logic of the sequence of processor instructions; determining and resolving memory precedence conflicts within the associated plurality of software constructs; resolving forward branch logic structures into conditional logic constructs; resolving back branch logic structures into loop logic constructs; and/or applying the plurality of unordered software constructs in a programming operation by a parallel execution logic circuitry. The resultant plurality of unordered software constructs may be converted into programming reconfigurable logic, computers or processors, and also by means of a computer network or an electronics communications network.
    Type: Application
    Filed: December 20, 2012
    Publication date: January 9, 2014
    Inventor: ROBERT KEITH MYKLAND
  • Publication number: 20130145134
    Abstract: A method and system are provided for deriving a resultant software code from an originating ordered list of instructions that does not include overlapping branch logic. The method may include deriving a plurality of unordered software constructs from a sequence of processor instructions; associating software constructs in accordance with an original logic of the sequence of processor instructions; determining and resolving memory precedence conflicts within the associated plurality of software constructs; resolving forward branch logic structures into conditional logic constructs; resolving back branch logic structures into loop logic constructs; and/or applying the plurality of unordered software constructs in a programming operation by a parallel execution logic circuitry. The resultant plurality of unordered software constructs may be converted into programming reconfigurable logic, computers or processors, and also by means of a computer network or an electronics communications network.
    Type: Application
    Filed: June 11, 2012
    Publication date: June 6, 2013
    Inventor: ROBERT KEITH MYKLAND
  • Publication number: 20120331450
    Abstract: A method and system are provided for deriving a resultant software program from an originating software program that may include overlapping branch logic. The method may include deriving a plurality of software objects from a sequence of processor instructions; associating software objects in accordance with an original logic of the sequence of processor instructions; determining and resolving memory precedence conflicts within the associated plurality of software objects; de-overlapping the execution of the associated plurality of software objects by replacing all overlapping branch logic instructions of the associated series of software objects with equivalent and non-overlapping branch logic instructions; and/or applying the de-overlapped associated plurality of software objects in a programming operation by a parallel execution logic circuitry.
    Type: Application
    Filed: March 23, 2012
    Publication date: December 27, 2012
    Inventor: ROBERT KEITH MYKLAND
  • Publication number: 20120331451
    Abstract: A method and system are provided for deriving a resultant software program from an originating software program having overlapping branches, wherein the resultant software project has either no overlapping branches or fewer overlapping branches than the originating software program. A preferred embodiment of the invented method generates a resultant software program that has no overlapping branches. The resultant software is more easily converted into programming reconfigurable logic than the originating software program. Separate and individually applicable aspects of the invented method are used to eliminate all four possible states of two overlapping branches, i.e., forward branch overlapping forward branch, back branch overlapping back branch, and each of the two possible and distinguishable states of forward branch and back branch overlap. One or more elements of each aspect of the invention may be performed by one or more computers or processors, or by means of a computer or a communications network.
    Type: Application
    Filed: January 30, 2012
    Publication date: December 27, 2012
    Inventor: ROBERT KEITH MYKLAND
  • Publication number: 20120331244
    Abstract: A method and system are provided for configurable computation and data processing. A logical processor includes an array of logic elements. The processor may be a combinatorial circuit that can be applied to modify computational aspects of an array of reconfigurable circuits. A memory stores a plurality of instructions, each instruction including an instruction-fetch data portion and an output data transfer data portion. One or more memory controllers are coupled to the memory and receive instructions and/or output data from the memory. A back buffer is coupled with the memory controller and receives instructions from the memory controller. The back buffer sequentially asserts each received instruction upon one or more memory controllers. The memory controllers transfer data received from the memory to a target, such as an array of reconfigurable logic circuits that are optionally coupled to the memory, the back buffer, and one or more additional memory controllers.
    Type: Application
    Filed: November 21, 2011
    Publication date: December 27, 2012
    Applicant: ASCENIUM CORPORATION
    Inventor: ROBERT KEITH MYKLAND
  • Patent number: 7840777
    Abstract: A general purpose computing system comprises a novel apparatus and method for data processing. The computing system design of one application of the present invention includes an instruction pipe having a decompression circuit, a reprogrammable logic unit and a data bus. Instructions and data may be accessed via a shared bus or via a separate instruction bus and data bus. The decompression circuit accepts compressed instructions and memory management directives from the instruction bus, decompresses each instruction, and transmits the decompressed instruction to the reprogrammable logic unit. A software compiler is provided that accepts high level programming language source code and creates instructions that are coded for acceptance and execution by the reprogrammable logic unit.
    Type: Grant
    Filed: July 18, 2005
    Date of Patent: November 23, 2010
    Assignee: Ascenium Corporation
    Inventor: Robert Keith Mykland