Patents by Inventor John Stuart Freeman

John Stuart Freeman 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: 10997339
    Abstract: A method for designing a system on a target device includes performing high-level compilation on a high-level language source file to generate a hardware description language (HDL) of the system and a serial testbench for the system. Verification is performed on the system that examines a parallel nature of the system by using the serial testbench.
    Type: Grant
    Filed: June 14, 2017
    Date of Patent: May 4, 2021
    Assignee: Intel Corporation
    Inventors: John Stuart Freeman, Byron Sinclair, Dirk Seynhaeve
  • Patent number: 10599404
    Abstract: A method of compiling program code includes determining if the program code controls a programmable logic device to execute other program code. The program code is a parallel program having a barrier function call for a group of threads. If it is determined that program code is to control the programmable logic device, then the program code is transformed by replacing the barrier function call with control logic inserted into the program code such that the transformed program code remains a parallel program and maintains synchronization among the group of threads. A compiler system that compiles program code with a barrier function call for a group of threads is also described.
    Type: Grant
    Filed: June 1, 2012
    Date of Patent: March 24, 2020
    Assignee: Altera Corporation
    Inventors: David Neto, Deshanand Singh, Tomasz Czajkowski, John Stuart Freeman, Tian Yi David Han
  • Patent number: 10437743
    Abstract: The present embodiments relate to interface circuitry between a serial interface circuit and an array of processing elements in an integrated circuit. The interface circuitry may include a daisy chain of feeder circuits and a daisy chain of drain circuits. If desired, the interface circuitry may include multiple daisy chains of feeder circuits and/or multiple daisy chains of drain circuits. These multiple daisy chains of feeder circuits and drains circuits may be coupled in parallel, respectively. In some embodiments, the interface circuitry may include synchronization circuitry that is coupled between the daisy chains of drain circuits and the serial interface circuit. Pipeline register stages between feeder circuits and/or between drain circuits may enable the placement of the feeder circuits and/or the drain circuits spatially close to the processing elements of the array of processing elements.
    Type: Grant
    Filed: April 1, 2016
    Date of Patent: October 8, 2019
    Assignee: Altera Corporation
    Inventors: Davor Capalija, Andrei Mihai Hagiescu Miriste, John Stuart Freeman, Alan Baker
  • Publication number: 20180365346
    Abstract: A method for designing a system on a target device includes performing high-level compilation on a high-level language source file to generate a hardware description language (HDL) of the system and a serial testbench for the system. Verification is performed on the system that examines a parallel nature of the system by using the serial testbench.
    Type: Application
    Filed: June 14, 2017
    Publication date: December 20, 2018
    Inventors: John Stuart Freeman, Byron Sinclair, Dirk Seynhaeve
  • Patent number: 10120969
    Abstract: Systems and methods for generating and deploying integrated circuit (IC) applications are provided. Global variable implementation logic may be used to optimize implementation, on an integrated circuit, of functionality represented by high-level code including global variables. A compiler's intermediate representation is analyzed for one or more characteristics that may be used to determine one or more initialization parameters, one or more scope parameters, one or more implementation parameters, or any combination thereof of the functionality. An HDL is generated based upon the one or more initialization parameters, the one or more scope parameters, the one or more implementation parameters, or the any combination thereof.
    Type: Grant
    Filed: June 30, 2016
    Date of Patent: November 6, 2018
    Assignee: Altera Corporation
    Inventors: Byron Sinclair, Andrew Chaang Ling, John Stuart Freeman
  • Patent number: 9922150
    Abstract: A method for designing a system on a target device includes describing the system in a high-level synthesis language where the system includes a configurable clock to drive the system at a specified clock frequency. A hardware description language (HDL) of the system is generated from the high-level synthesis language. An initial compilation of the HDL of the system is performed in response to the specified clock frequency. Timing analysis is performed on the system after the initial compilation of the HDL to determine a maximum frequency which the system can be driven. The configurable clock is programmed to drive the system at the maximum frequency.
    Type: Grant
    Filed: November 11, 2014
    Date of Patent: March 20, 2018
    Assignee: Altera Corporation
    Inventors: Peter Yiannacouras, John Stuart Freeman, Deshanand Singh
  • Patent number: 9424043
    Abstract: Systems and methods for enhancing performance of programs implemented on an integrated circuit (IC) are provided. A forward-flow selector may determine a common branch for adding a data set to and removing a data set from. By selecting a common branch for adding and removing a data set, there will be a pipeline stage for data flowing into the branch. Accordingly, the embodiments described herein enhance throughput by increasing the number of datasets that may enter a branched pipeline without stalling.
    Type: Grant
    Filed: December 27, 2012
    Date of Patent: August 23, 2016
    Assignee: Altera Corporation
    Inventors: John Stuart Freeman, Tomasz S. Czajkowski
  • Patent number: 9166597
    Abstract: Systems and methods for offloading computations of an integrated circuit (IC) to a processor are provided. In particular, a programmable logic designer, compiler, etc. may dictate particular logic to offload to a processor. This offloading may enhance programmable logic area utilization and/or increase throughput.
    Type: Grant
    Filed: April 1, 2014
    Date of Patent: October 20, 2015
    Assignee: Altera Corporation
    Inventors: Dmitry Nikolai Denisenko, John Stuart Freeman
  • Patent number: 9117022
    Abstract: Systems and methods for increasing speed and reducing area for arbitration logic in an integrated circuit (IC) are provided. For example, in one embodiment, a method includes arbitrating at least one master request in a first level of arbitration blocks. A second level of arbitration blocks arbitrates at least two arbitration blocks from the first level. A first level of multiplexers multiplex at least one master payload based at least in part upon the arbitration of the first level of arbitration blocks. A second level of multiplexers multiplex at least two signals propagated from the first level of multiplexers.
    Type: Grant
    Filed: January 17, 2012
    Date of Patent: August 25, 2015
    Assignee: Altera Corporation
    Inventors: Gordon Raymond Chiu, John Stuart Freeman
  • Patent number: 8201114
    Abstract: A method for optimizing a system on a target device is disclosed. A LUT is unpacked to form a plurality of LUTs of a smaller size upon determining that the unpacking can satisfy one or more predefined objectives. The plurality of LUTs are repacked such that the design for the system is improved. Other embodiments are disclosed.
    Type: Grant
    Filed: November 17, 2009
    Date of Patent: June 12, 2012
    Assignee: Altera Corporation
    Inventors: Valavan Manohararajah, Gordon Raymond Chiu, John Stuart Freeman