Patents by Inventor Gregg William Baeckler

Gregg William Baeckler 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: 8176111
    Abstract: An improved method and apparatus for performing floating-point division is disclosed. In a particular embodiment, fractional operands are pre-scaled and an estimate of a reciprocal of the pre-scaled fractional divisor is obtained from a lookup table using a portion of the bits of the pre-scaled fractional divisor. This value is used to scale the fractional operands and a multiply-add operation is used based on principles of series expansion to compute a final result with an acceptable degree of accuracy.
    Type: Grant
    Filed: January 14, 2008
    Date of Patent: May 8, 2012
    Assignee: Altera Corporation
    Inventors: Jianhua Liu, Gregg William Baeckler
  • Patent number: 8166436
    Abstract: Programming software defining an algorithm that provides improved power, area and frequency predictability of a logic design early in the synthesis flow process, prior to Technology Mapping, without degrading the power, speed or area of the design implementation for PLDs. The method of the algorithm involves performing a high level synthesis of the logic design to generate a netlist, performing a multilevel synthesis on the netlist to generate a gate implementation of the netlist, and performing technology mapping on the gate implementation to map the gate implementation to actual resources on the target device. During the high level synthesis of the logic design into the netlist, technology mapping is performed on a selected portion of the logic design.
    Type: Grant
    Filed: April 27, 2009
    Date of Patent: April 24, 2012
    Assignee: Altera Corporation
    Inventor: Gregg William Baeckler
  • Patent number: 7902864
    Abstract: Disclosed is a programmable logic device (“PLD”) including at least one lookup table (“LUT”) based logic element (“LE”) of a first type and at least one LUT based LE of a second type. The first type of LE is different from the second type of LE. The term ‘different’ when used herein to describe the relationship of a first logic structure and/or its components to a second logic structure and/or its components indicates a difference in hardware design as opposed to a configuration difference or non-designed differences resulting, for example, from manufacturing variability. Additionally, a PLD can include at least one logic array block (“LAB”) of a first type having at least one LUT based LE and at least one LAB of a second type having at least one LUT based LE. The first type of LAB being different from the second type of LAB.
    Type: Grant
    Filed: December 1, 2005
    Date of Patent: March 8, 2011
    Assignee: Altera Corporation
    Inventors: Michael D. Hutton, Keith Duwel, Gregg William Baeckler
  • Patent number: 7890910
    Abstract: A programmable logic device architecture having logic elements with dedicated hardware to configure the look up tables of the logic element to either perform logic functions or to operate as a register for pipelining or other purposes. The programmable logic device includes a general interconnect and a plurality of logic array blocks interconnected by the general interconnect. Each of the plurality of logic blocks further includes one or more logic elements. The logic elements each include a first look up table, a second look up table, and dedicated hardware within the logic element to configure the first look table and the second look up table as a register without having to use the general interconnect. In one embodiment, the dedicated hardware includes a plurality of dedicated interconnects within the logic element to configure the two look up tables as a pair of cross coupled muxes or latches when configured as a register.
    Type: Grant
    Filed: August 4, 2006
    Date of Patent: February 15, 2011
    Assignee: Altera Corporation
    Inventors: Michael D. Hutton, Gregg William Baeckler, Jinyong Yuan, Chris Wysocki, Pouyan Djahani
  • Patent number: 7877710
    Abstract: A method for managing vectorless estimation includes identifying a semantic structure. A signal activity is assigned to an output of the semantic structure. Vectorless estimation is performed on non-semantic structures.
    Type: Grant
    Filed: May 1, 2006
    Date of Patent: January 25, 2011
    Assignee: Altera Corporation
    Inventors: David Neto, Vaughn Betz, Meghal Varia, Gregg William Baeckler
  • Patent number: 7797667
    Abstract: A hardware accelerator factors functions during the compilation of a user design. The hardware accelerator includes cofactor units, each adapted to determine a cofactor of a function in response to a specified factorization and a set of input values. The factorization specifies the constant function inputs and varying function inputs. Each cofactor unit determines the cofactor of the function in response to a different constant value. The hardware accelerator operates all of the cofactor units simultaneously to determine some or all of the cofactors of a function for a factorization in parallel. Signature generators determine attributes of the cofactors. A signature analyzer uses these attributes to identify identical cofactors, constant cofactors, and inverse cofactors. The signature analyzer returns potentially optimal factorizations to compilation software applications for possible incorporation into user designs.
    Type: Grant
    Filed: December 1, 2009
    Date of Patent: September 14, 2010
    Assignee: Altera Corporation
    Inventor: Gregg William Baeckler
  • Patent number: 7725871
    Abstract: Valid implementations of functions with programmable logic blocks are efficiently determined by creating an approximation of a hardware configuration of programmable logic blocks to quickly screen out configurations unlikely to provide a valid results. If a configuration passes this first phase, the approximation is refined to search for valid function implementations with the hardware configuration. The approximation and refinement may use a partitioning of function input variables to logic blocks to reduce the search space. Additional conflict clauses may be used to further reduce the search space. Implementations of sample functions or other previously considered functions may be analyzed to identify conflict clauses that are reusable for analyzing other functions. A representation of potential implementations of a function can be subdivided into subsets and analyzed separately. The intersection of the solutions from each subset are valid implementations of the function.
    Type: Grant
    Filed: May 19, 2008
    Date of Patent: May 25, 2010
    Assignee: Altera Corporation
    Inventors: Sean A. Safarpour, Gregg William Baeckler, Jinyong Yuan
  • Patent number: 7705628
    Abstract: A programmable logic device architecture having logic elements with dedicated hardware to configure the look up tables of the logic element to either perform logic functions or to operate as a register for pipelining or other purposes. The programmable logic device includes a general interconnect and a plurality of logic array blocks interconnected by the general interconnect. Each of the plurality of logic blocks further includes one or more logic elements. The logic elements each include a first look up table, a second look up table, and dedicated hardware within the logic element to configure the first look table and the second look up table as a register without having to use the general interconnect. In one embodiment, the dedicated hardware includes a plurality of dedicated interconnects within the logic element to configure the two look up tables as a pair of cross coupled muxes or latches when configured as a register.
    Type: Grant
    Filed: July 12, 2006
    Date of Patent: April 27, 2010
    Assignee: Altera Corporation
    Inventors: Michael D. Hutton, Andy L. Lee, Gregg William Baeckler, Jinyong Yuan, Keith Duwel
  • Patent number: 7640528
    Abstract: A hardware accelerator factors functions during the compilation of a user design. The hardware accelerator includes cofactor units, each adapted to determine a cofactor of a function in response to a specified factorization and a set of input values. The factorization specifies the constant function inputs and varying function inputs. Each cofactor unit determines the cofactor of the function in response to a different constant value. The hardware accelerator operates all of the cofactor units simultaneously to determine some or all of the cofactors of a function for a factorization in parallel. Signature generators determine attributes of the cofactors. A signature analyzer uses these attributes to identify identical cofactors, constant cofactors, and inverse cofactors. The signature analyzer returns potentially optimal factorizations to compilation software applications for possible incorporation into user designs.
    Type: Grant
    Filed: August 4, 2006
    Date of Patent: December 29, 2009
    Assignee: Altera Corporation
    Inventor: Gregg William Baeckler
  • Patent number: 7634705
    Abstract: Methods and apparatus are provided for more efficiently implementing error checking code circuitry on a programmable chip. In one example, Cyclic Redundancy Check (CRC) exclusive OR (XOR) circuitry is decomposed to allow efficient implementation on lookup tables (LUTs) of various sizes on a device. XOR cancellation factoring is used to break up wide CRC XORs into blocks that fit in various LUTs while maintaining focus on minimizing logic depth and logic area. Simulated annealing is used to further reduce logic area cost.
    Type: Grant
    Filed: April 12, 2006
    Date of Patent: December 15, 2009
    Assignee: Altera Corporation
    Inventors: Gregg William Baeckler, Babette Van Antwerpen
  • Patent number: 7543265
    Abstract: Programming software defining an algorithm that provides improved power, area and frequency predictability of a logic design early in the synthesis flow process, prior to Technology Mapping, without degrading the power, speed or area of the design implementation for PLDs. The method of the algorithm involves performing a high level synthesis of the logic to generate a netlist, performing a multilevel synthesis on the netlist to generate a gate implementation of the netlist; and performing technology mapping on the gate implementation to map the gate implementation to actual resources on the target device. During the high level synthesis of the logic into the netlist, technology mapping is performed on a selected portion of the logic to improve the predictability of the power, area and/or frequency of the logic design without substantially degrading the performance of the power, area and frequency of the logic design.
    Type: Grant
    Filed: April 26, 2006
    Date of Patent: June 2, 2009
    Assignee: Altera Corporation
    Inventor: Gregg William Baeckler
  • Patent number: 7441212
    Abstract: State machines are identified from a netlist of circuit elements of a user design. Strongly connected components in the netlist are identified as candidates for analysis. The registers of each strongly connected component are identified. An optimal set of inputs and potential state transition logic is identified for the registers in the component. A set of reachable states from an initial state of the registers of a component is determined by simulating state transitions in response to permutations of input values. State machine information is created to assist compilation software in optimizing the user design. Optimizations can include identifying redundant circuit elements based on the set of reachable states and reencoding the state machine with a different state encoding scheme to reduce the amount of state transition and output logic. A subset of the set of reachable states representing a one-hot encoded state machine may be further isolated and optimized.
    Type: Grant
    Filed: September 7, 2005
    Date of Patent: October 21, 2008
    Assignee: Altera Corporation
    Inventors: Babette van Antwerpen, Gregg William Baeckler
  • Patent number: 7415693
    Abstract: A method for designing a system includes caching a representation of a first subnet with a synthesis result of the first subnet. The synthesis result of the first subnet is utilized for a second subnet in response to determining that a representation of the second subnet is identical to the representation of the first subnet.
    Type: Grant
    Filed: May 21, 2004
    Date of Patent: August 19, 2008
    Assignee: Altera Corporation
    Inventors: Babette van Antwerpen, Gregg William Baeckler, Jinyong Yuan
  • Patent number: 7386828
    Abstract: Valid implementations of functions with programmable logic blocks are efficiently determined by creating an approximation of a hardware configuration of programmable logic blocks to quickly screen out configurations unlikely to provide a valid results. If a configuration passes this first phase, the approximation is refined to search for valid function implementations with the hardware configuration. The approximation and refinement may use a partitioning of function input variables to logic blocks to reduce the search space. Additional conflict clauses may be used to further reduce the search space. Implementations of sample functions or other previously considered functions may be analyzed to identify conflict clauses that are reusable for analyzing other functions. A representation of potential implementations of a function can be subdivided into subsets and analyzed separately. The intersection of the solutions from each subset are valid implementations of the function.
    Type: Grant
    Filed: February 23, 2006
    Date of Patent: June 10, 2008
    Assignee: Altera Corporation
    Inventors: Sean A. Safarpour, Gregg William Baeckler, Jinyong Yuan
  • Patent number: 7373631
    Abstract: Methods for facilitating the synthesis of structured ASICs that are functionally equivalent to FPGAs make use of the synthesis of a user's logic design for the FPGA. Each of several relatively small parts of the user's logic as synthesized for the FPGA technology is resynthesized for the structured ASIC implementation. The resynthesis may handle different kinds of parts of the logic differently. For example, for a part for which an ASIC synthesis is already known and available in a library, the known ASIC synthesis may be retrieved from the library. More extensive resynthesis (including, for example, logic minimization and function packing) may be performed on other parts of the logic for which library syntheses are not available.
    Type: Grant
    Filed: August 11, 2004
    Date of Patent: May 13, 2008
    Assignee: Altera Corporation
    Inventors: Jinyong Yuan, Gregg William Baeckler, James G Schleicher, II, Michael Hutton
  • Patent number: 7249329
    Abstract: Technology mapping techniques for determining whether a function can be implemented using an incomplete lookup table (LUT) are provided. For example, the output of a function is compared to the output of an incomplete LUT for each binary value of the function's input signals and for each binary value of the bits stored in the incomplete LUT. For a LUT that is functionally asymmetric, the process can be repeated for multiple permutations of the input signals with respect to the input terminals of the LUT. As another example, the user function is converted into a network of multiplexers and complete LUTs, which are analyzed to determine if an incomplete LUT can implement the function. As another example, a truth table is constructed for a function. The truth table variables are then tested one by one as candidates for each input position using co-factoring and dependency checking.
    Type: Grant
    Filed: June 1, 2004
    Date of Patent: July 24, 2007
    Assignee: Altera Corporation
    Inventors: Gregg William Baeckler, Jinyong Yuan, David W. Mendel
  • Patent number: 7224183
    Abstract: A configuration for a programmable device is determined to implement an incomplete function using at least two logic cells. Function inputs are partitioned into portions associated with first and second logic cells. The partitioning is screened to determine if it is potentially acceptable by determining if a portion of the function can be implemented using a complete look-up table. If the partitioning of the function inputs is potentially acceptable, the function inputs are assigned to the input ports of the logic cells. Variables are assigned to look-up table locations and a correspondence is determined between function input and output values, the variables, and the look-up table locations. Boolean tautology rules are applied to the correspondence to simplify the variables. If the simplified variables are consistent, a configuration is output that includes assignments of function inputs to input ports and look-up table data based on the simplified variables.
    Type: Grant
    Filed: August 10, 2005
    Date of Patent: May 29, 2007
    Assignee: Altera Corporation
    Inventors: Gregg William Baeckler, Babette van Antwerpen