Patents by Inventor Gary R. Lawman

Gary R. Lawman 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: 7328384
    Abstract: A method and apparatus that uses device defects as an identifier. Data is written to memory of an integrated circuit. Defects are identified based upon the writing of the data. An identifier for the IC is then derived using the identification of the defects.
    Type: Grant
    Filed: September 29, 2005
    Date of Patent: February 5, 2008
    Assignee: Xilinx, Inc.
    Inventors: Chidamber R. Kulkarni, Gary R. Lawman, Stephen M. Trimberger
  • Patent number: 6882182
    Abstract: A tunable clock distribution system is used to minimize the power dissipation of a clock distribution network in an integrated circuit. The tunable clock distribution system provides a tunable inductance on the clock distribution network to adjust a resonant frequency in the tunable clock distribution system. The inductance is tuned so that the resonant frequency of the tunable clock distribution system approaches the frequency of the clock signal on the clock distribution network. As the resonant frequency of the tunable clock distribution system approaches the frequency of the clock signal, the power dissipation of the clock distribution network decreases. Some embodiments also provide a tunable capacitance on the clock distribution network to adjust the resonant frequency of the tunable clock distribution system.
    Type: Grant
    Filed: September 23, 2003
    Date of Patent: April 19, 2005
    Assignee: Xilinx, Inc.
    Inventors: Robert O. Conn, Gary R. Lawman, Christopher H. Kingsley, Austin H. Lesea
  • Patent number: 6381732
    Abstract: A field programmable gate array (FPGA) is provided that can selectively accept or reject selected software (macros). Specifically, configuration data for the FPGA is passed through a configuration port to a decoder. The decoder processes the configuration data to detect locked macros. If a locked macro is detected, the decoder attempts to unlock the locked macro using one or more keys stored in a key table of the FGPA. If an appropriate key is in the key table, the decoder unlocks the locked macro to configure the FPGA. The keys can be pre-programmed into the FGPA by the macro vendor. If configuration data containing a locked macro is used with an FPGA without the appropriate key, configuration of the FPGA fails.
    Type: Grant
    Filed: August 7, 2001
    Date of Patent: April 30, 2002
    Assignee: Xilinx, Inc.
    Inventors: James L. Burnham, Gary R. Lawman, Joseph D. Linoff
  • Patent number: 6357037
    Abstract: A method is provided for configuring an FPGA to accept or reject selected software (macros). Specifically, if an end user desires to use a locked macro from a first macro vendor a locked macro from a second macro vendor in the same FPGA, a key manager prepares a keyed FPGA for the end user by pre-programming an FPGA with a first key, which is configured to unlock the first locked macro, and a second key, which is configured to unlock the second locked macro. The key manager obtains the first key from the first macro vendor and the second key from the second macro vendor. The keys are stored in a key table of the FPGA that is write-only from outside the FPGA. The end user pays a fee to the key manager for the keyed macro, but is not given access to the keys. The key manager apportions the fee from the end user and distributes appropriate licensing fees to the first macro vendor and the second macro vendor.
    Type: Grant
    Filed: January 14, 1999
    Date of Patent: March 12, 2002
    Assignee: Xilinx, Inc.
    Inventors: James L. Burnham, Gary R. Lawman, Joseph D. Linoff
  • Patent number: 6324676
    Abstract: A field programmable gate array (FPGA) is provided that can selectively accept or reject selected software (macros). Specifically, configuration data for the FPGA is passed through a configuration port to a decoder. The decoder processes the configuration data to detect locked macros. If a locked macro is detected, the decoder attempts to unlock the locked macro using one or more keys stored in a key table of the FGPA. If an appropriate key is in the key table, the decoder unlocks the locked macro to configure the FPGA. The keys can be pre-programmed into the FGPA by the macro vendor. If configuration data containing a locked macro is used with an FPGA without the appropriate key, configuration of the FPGA fails.
    Type: Grant
    Filed: January 14, 1999
    Date of Patent: November 27, 2001
    Assignee: Xilinx, Inc.
    Inventors: James L. Burnham, Gary R. Lawman, Joseph D. Linoff
  • Patent number: 6324672
    Abstract: A method of specifying design parameters is provided for configuring circuits for programmable ICs. A design database describing a circuit is displayed in table-based format on a computer screen display. The design database may include a memory map including data to be placed in bit-storage space in the target programmable IC. This design database requires no schematics or HDL description of the circuit, even for complicated application-specific circuits. The desired parameters are entered by the user, typically using toggle buttons, pull-down menus, or keyboard entry. The selected parameters are then entered into the design database, thereby configuring the design database in accordance with the selected parameters. Next, the design database is transmitted over a data communications link such as the internet to a second computer, on which the compilation software resides. The design is then compiled and the resulting netlist is transmitted back to the originating computer.
    Type: Grant
    Filed: February 16, 2000
    Date of Patent: November 27, 2001
    Assignee: Xilinx, Inc.
    Inventors: Gary R. Lawman, Joseph D. Linoff, Robert W. Wells
  • Patent number: 6301695
    Abstract: A method is provided for securely configuring an FPGA with macros. Specifically, if an end user desires to use a macro from a macro vendor, the end user creates a marked design file containing a macro marker rather than the actual macro. The marked design file is converted into configuration data by a macro manager. Specifically, the macro manager obtains the macro from the macro vendor and replaces the macro marker with the macro prior to converting the design file into configuration data. The macro manager provides the configuration data to the end user. Because only the macro manager has access to the macro, the possibility of unlicensed use of the macro is diminished.
    Type: Grant
    Filed: January 14, 1999
    Date of Patent: October 9, 2001
    Assignee: Xilinx, Inc.
    Inventors: James L. Burnham, Gary R. Lawman
  • Patent number: 6172520
    Abstract: The present invention allows one portion of an FPGA to reconfigure another portion of the same FPGA. The invention makes use of input/output ports that can be connected on the input side to a frame register for loading configuration data into the FPGA. When a portion of the FPGA is to be reconfigured, data are loaded by a portion of the FPGA not being reconfigured into the frame register of the FPGA and addressed to the portion of the FPGA being reconfigured. Loading of the data is accomplished by forming a configuration data stream in the portion of the FPGA not being reconfigured, then applying the configuration data stream to an output buffer of the FPGA and forwarding that data to an input buffer that is connected to a frame register of the FPGA configuration structure.
    Type: Grant
    Filed: February 12, 1999
    Date of Patent: January 9, 2001
    Assignee: Xilinx, Inc.
    Inventors: Gary R. Lawman, Bernard J. New
  • Patent number: 6118938
    Abstract: A table-based computer user interface and a method of providing design parameters are provided for configuring circuits for programmable ICs. A design database describing a circuit is displayed in table-based format on a computer screen display. The design database may include a memory map including data to be placed in bit-storage space in the target programmable IC. This design database requires no schematics or HDL description of the circuit, even for application-specific circuits and other complicated circuits. The desired parameters are entered by the user, typically using toggle buttons, pull-down menus, or keyboard entry. The selected parameters and memory map data are then entered into the design database, thereby configuring the design database in accordance with the selected parameters. In one embodiment, the user interface can also be used to display read data from a previously programmed programmable IC.
    Type: Grant
    Filed: April 4, 1997
    Date of Patent: September 12, 2000
    Assignee: Xilinx, Inc.
    Inventors: Gary R. Lawman, Joseph D. Linoff, Stephen L. Wasson
  • Patent number: 6107821
    Abstract: A programmable logic device (PLD) includes a plurality of logic resources, a plurality of multi-bit configuration memories (MBCMs), and a trigger logic structure. The plurality of MBCMs include multiple memory slices that allow the PLD to switch rapidly between configurations, or contexts. In one embodiment, at least one memory slice configures the PLD into a logic analysis context for providing on-chip testing. In one embodiment, the plurality of logic resources include a plurality of storage elements. State data generated by a user-defined context is stored in the plurality of storage elements. When the trigger logic structure provides a trigger signal, the PLD is reconfigured into the logic analysis context. The logic analysis context reads and processes the state data stored in the plurality of storage elements to test the performance of the user-defined context.
    Type: Grant
    Filed: February 8, 1999
    Date of Patent: August 22, 2000
    Assignee: Xilinx, Inc.
    Inventors: Steven H. Kelem, Gary R. Lawman
  • Patent number: 6049222
    Abstract: An FPGA includes an embedded non-volatile memory coupled to a configuration access port. The configuration access port allows the non-volatile memory to program the configuration memory of the FPGA. On power-on or reset, the non-volatile memory configures a first portion of the FPGA using configuration data stored in the non-volatile memory. Other portions of the FPGA can also be configured using the embedded non-volatile memory. Alternatively, an external configuration device can configure the other portions of the FPGA through a configuration port. Further, either the embedded non-volatile memory or the external configuration device can reconfigure the first portion of the FPGA.
    Type: Grant
    Filed: December 30, 1997
    Date of Patent: April 11, 2000
    Assignee: Xilinx, Inc
    Inventor: Gary R. Lawman
  • Patent number: 6044025
    Abstract: The invention provides a structure and method for configuring an FPGA from a PROM using a boundary scan chain. A PROM is provided that comprises JTAG circuitry. Configuration data is stored in the PROM memory as in known PROMs. When the data is retrieved from the PROM memory it is provided on a standard JTAG Test Access Port (TAP). The JTAG-compatible PROM is included as part of a JTAG scan chain, preferably directly preceding the FPGA to be configured by the PROM. The PROM can be controlled either externally or via JTAG commands received down the scan chain. Therefore, a reconfiguration of the FPGA can be initiated via standard JTAG commands. In one embodiment, the PROM itself is programmed with the FPGA configuration data using the JTAG TAP port.
    Type: Grant
    Filed: February 4, 1999
    Date of Patent: March 28, 2000
    Assignee: Xilinx, Inc.
    Inventor: Gary R. Lawman
  • Patent number: 6028445
    Abstract: A method is provided for configuring an FPGA using a decoder implemented in the FPGA. Specifically, an external configuration device or an embedded non-volatile memory configures a first portion of the FPGA as a decoder. Encoded configuration data is transferred to the decoder, which then configures other portions of the FPGA. In one embodiment, the decoder is a decompression unit, which decompresses compressed configuration data. In another embodiment, the decoder is an interpreter, which interprets configuration commands. In some embodiments, the portion of the FPGA used for the decoder can be reconfigured after the configuration of the other portions of the FPGA.
    Type: Grant
    Filed: December 30, 1997
    Date of Patent: February 22, 2000
    Assignee: Xilinx, Inc.
    Inventor: Gary R. Lawman
  • Patent number: 6023565
    Abstract: A method of specifying design parameters is provided for configuring circuits for programmable ICs. A design database describing a circuit is displayed in table-based format on a computer screen display. The design database may include a memory map including data to be placed in bit-storage space in the target programmable IC. This design database requires no schematics or HDL description of the circuit, even for complicated application-specific circuits. The desired parameters are entered by the user, typically using toggle buttons, pull-down menus, or keyboard entry. The selected parameters are then entered into the design database, thereby configuring the design database in accordance with the selected parameters. Next, the design database is transmitted over a data communications link such as the internet to a second computer, on which the compilation software resides. The design is then compiled and the resulting netlist is transmitted back to the originating computer.
    Type: Grant
    Filed: February 24, 1997
    Date of Patent: February 8, 2000
    Assignee: Xilinx, Inc.
    Inventors: Gary R. Lawman, Joseph D. Linoff, Robert W. Wells
  • Patent number: 5949690
    Abstract: The invention provides to the user a way of ascertaining the estimated delay through a circuit, by placing a timing attribute on the schematic symbol for the circuit that automatically displays the estimated delay. Reported delays may include maximum delay, typical delay, and/or minimum delay on the critical path. In a first embodiment, the schematic entry software consults a macro speeds file to obtain delay information for the macro. In a second embodiment, the macro delay information is added to the standard device speeds file. In a third embodiment, the symbol file (or other file) for the macro includes a formula for the critical path delay through the macro, based on the delays in the standard device speeds file. The schematic entry software therefore uses the standard device speeds file to calculate the macro delay. According to a second aspect of the invention, schematic-entry software accepts pointer-driven (e.g.
    Type: Grant
    Filed: September 26, 1997
    Date of Patent: September 7, 1999
    Assignee: Xilinx, Inc.
    Inventor: Gary R. Lawman
  • Patent number: 5946478
    Abstract: A method of generating and using a secure macro element for configuring programmable ICs is provided. The method provides a bitstream to a user, rather than providing a user-editable macro. Compilation software is provided to the user that combines the data from a "macro bitstream" (the bitstream comprising the macro data description) and the data from the user's own circuits to create the complete bitstream. The compilation software reserves the relevant portions of the complete bitstream for the macro, and does not assign user circuits to the areas controlled by those portions of the bitstream. In one embodiment of the invention, the user specifies a physical location on the programmable IC for the macro, so the macro data is optionally placed in a different location in the complete bitstream than in the macro bitstream.
    Type: Grant
    Filed: May 16, 1997
    Date of Patent: August 31, 1999
    Assignee: Xilinx, Inc.
    Inventor: Gary R. Lawman
  • Patent number: 5928338
    Abstract: In PCI devices, there are bits specified as read-only for use in configuring a system upon reset that could also be used after configuration for reading and writing. The present invention allows the use of such bit locations for other arbitrary user-defined purposes such as a mailbox register without interfering with the normal PCI local bus operation or configuration and with zero or minimum additional decode circuitry. Such user-defined registers can provide flag or mailbox type storage for various applications, and may be accessed by a configuration read/write cycle from otherwise normal memory or I/O based applications. Thus, the present invention, in effect, comprises a method for exploiting an otherwise unused storage resource in PCI or other local bus compatible devices.
    Type: Grant
    Filed: June 20, 1997
    Date of Patent: July 27, 1999
    Assignee: Xilinx, Inc.
    Inventor: Gary R. Lawman
  • Patent number: 5870309
    Abstract: The invention provides to the user a way of ascertaining the estimated delay through a circuit, by back-annotating the estimated delay through an instantiated macro into the HDL circuit description. Reported delays may include maximum delay, typical delay, and/or minimum delay on the critical path. Using well-known techniques for responding to textual keywords, a software procedure call is initiated whenever an HDL library macro instantiation is detected. The procedure looks up the associated timing data for the macro in a macro or device speeds file and back-annotates the data into the HDL circuit description, preferably as a comment directly following the macro instantiation. In another embodiment, the delay information is added when the file is saved. In yet another embodiment, the delay information is not added to the HDL file, but is written to a report file or displayed on the screen.
    Type: Grant
    Filed: November 7, 1997
    Date of Patent: February 9, 1999
    Assignee: Xilinx, Inc.
    Inventor: Gary R. Lawman
  • Patent number: 5673198
    Abstract: A system for providing real time design feedback to a user of a data processing system for designing an electronic circuit includes a display system, a graphical, textual or mixed user input process which displays user input on the display system for designing an electronic circuit, and an implementation process with which generates an implementation of the electronic circuit in for example a field programmable gate array. Feedback is provided by monitoring the user input process to detect a change in the design of the electronic circuit. Upon detection of a change, information about the change is forwarded to the implementation process. The implementation process is executed as a background process to the user input process, in response to the change to produce implementation data on an incremental basis. Information about the implementation data is displayed on the display system as feedback to the user during the design process.
    Type: Grant
    Filed: March 29, 1996
    Date of Patent: September 30, 1997
    Assignee: Xilinx, Inc.
    Inventors: Gary R. Lawman, Robert W. Wells