Patents by Inventor Stephen M. Trimberger

Stephen M. Trimberger 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: 6601227
    Abstract: Optimal routing line segments and associated buffers are pre-engineered for each family of ASIC chips by simulating wires segments of various lengths using distributed resistance and capacitance wire models, and by estimating crosstalk from neighboring line segments. During ASIC design, space is reserved on the ASIC substrate for fabricating the buffers, which are selectively connected by local metal and diffusion structures to form long distance interconnections. Signals are passed from an ASIC circuit structure to a selected long distance interconnection by connecting an output terminal of the ASIC structure either to the input terminal of a buffer located at one end of the interconnection, or by connecting the output terminal directed to a line segment of the interconnection.
    Type: Grant
    Filed: June 27, 2001
    Date of Patent: July 29, 2003
    Assignee: Xilinx, Inc.
    Inventor: Stephen M. Trimberger
  • Patent number: 6573748
    Abstract: Described are programmable logic systems and methods in which programmable logic devices receive configuration data. In some embodiments, one or more input/output blocks of a programmable logic device are adapted to store a value identifying a remote memory space as a source of reconfiguration data. In other embodiments, external memory spaces for storing configuration data are adapted to store the value.
    Type: Grant
    Filed: November 6, 2001
    Date of Patent: June 3, 2003
    Assignee: Xilinx, Inc.
    Inventor: Stephen M. Trimberger
  • Publication number: 20030053335
    Abstract: Structures and methods for selectively applying a well bias to only those portions of a PLD where such a bias is necessary or desirable, e.g., applying a positive well bias to transistors on critical paths within a user's design. A substrate for an integrated circuit includes a plurality of wells, each of which can be independently and programmably biased with the same or a different well bias voltage. In one embodiment, FPGA implementation software automatically determines the critical paths and generates a configuration bitstream that enables positive well biasing only for the transistors participating in the critical paths, or only for programmable logic elements (e.g., CLBs or lookup tables) containing those transistors. In another embodiment, negative well biasing is selectively applied to reduce leakage current.
    Type: Application
    Filed: September 18, 2001
    Publication date: March 20, 2003
    Applicant: Xilinx, Inc.
    Inventors: Michael J. Hart, Steven P. Young, Daniel Gitlin, Hua Shen, Stephen M. Trimberger
  • Patent number: 6525560
    Abstract: A programmable logic device (PLD) includes a die having first and second bond pads, each being weakly pulled to a first voltage. A package enclosing the die has an external pad configured to receive a second voltage. A conductor couples one and only one of the first and second bond pads to the external pad, such that one bond pad is pulled to the first voltage, and the other bond pad is pulled to the second voltage. A logic circuit on the die is coupled the first and second bond pads. The logic circuit enables the PLD to be configured in response to a first type of bit stream if the first bond pad is pulled to the second voltage, and enables the PLD to be configured only in response to a second type of bit stream if the second bond pad is pulled to the second voltage. In another embodiment, a bond pad is weakly pulled to a first voltage, and can be connected or not connected to an external pin for applying a second voltage.
    Type: Grant
    Filed: December 12, 2001
    Date of Patent: February 25, 2003
    Assignee: Xilinx, Inc.
    Inventors: Stephen M. Trimberger, Austin H. Lesea
  • Patent number: 6496971
    Abstract: An FPGA has an on-chip processor that reads configuration data onto the FPGA and controls the loading of that configuration data into FPGA configuration memory cells. After FPGA power-up, the processor reads a configuration mode code from predetermined terminals of the FPGA. If the configuration mode code has a first value, then the processor executes a first configuration program so that configuration data is received onto the FPGA in accordance with a first configuration mode. If the configuration mode code has a second value, then the processor executes a second configuration program so that configuration data is received onto the FPGA in accordance with a second configuration mode. The configuration programs can be stored in metal-mask ROM on-chip so they can be changed without re-laying out the remainder of the FPGA. Providing multiple configuration programs allows the FPGA to support multiple configuration modes using the same processor hardware.
    Type: Grant
    Filed: February 7, 2000
    Date of Patent: December 17, 2002
    Assignee: Xilinx, Inc.
    Inventors: Austin H. Lesea, Stephen M. Trimberger
  • Patent number: 6480954
    Abstract: A programmable logic device (PLD) comprises at least one configurable element, and a plurality of programmable logic elements for configuring the configurable element(s). Alternatively, a PLD comprises an interconnect structure and a plurality of programmable logic elements for configuring the interconnect structure. In either embodiment, at least one of the programmable logic elements includes N memory cells. A predetermined one of the N memory cells forms part of a memory slice, wherein at least a portion of each slice of the programmable logic device is allocated to either configuration data or user data memory. Typically, one memory slice provides one configuration of the programmable logic device. In accordance with one embodiment, a memory access port is coupled between at least one of the N memory cells and either one configurable element or the interconnect, thereby facilitating loading of new configuration data into other memory slices during the one configuration.
    Type: Grant
    Filed: June 6, 2001
    Date of Patent: November 12, 2002
    Assignee: Xilinx Inc.
    Inventors: Stephen M. Trimberger, Richard A. Carberry, Robert Anders Johnson, Jennifer Wong
  • Patent number: 6460131
    Abstract: In accordance with the present invention, an FPGA input/output buffer including a tristate enable register is provided. A bus line provides the FPGA output through a tristate buffer to the pad or pin. A register controls the state of the tristate buffer. A register for providing an input signal from the pad or pin may also be provided. By placing an address on address lines controlling the register clocks, any selected one of the input/output buffers can be accessed. In one embodiment, separate addresses are provided for loading a tristate control value into the output control register and for loading data into the input register.
    Type: Grant
    Filed: June 8, 1999
    Date of Patent: October 1, 2002
    Assignee: Xilinx Inc.
    Inventor: Stephen M. Trimberger
  • Patent number: 6421817
    Abstract: An FPGA configuration provides a virtual instruction. In a generic computation, the output pattern of a first instruction is compared to the input pattern of a second instruction. If the input and output patterns of the first and second instructions do not match, then a pattern manipulation instruction is inserted between the first and second instructions. At this point, the input and output patterns of the first and second instructions should match and the computation task can be completed. The method of providing virtual instructions is applicable to any FPGA. In a standard FPGA, the data stored in the storage elements of the FPGA, such as flip-flops, is retained for the next configuration of the FPGA. In this manner, successive configurations can communicate data using the patterns of the storage elements, thereby allowing standard FPGAs to implement virtual instructions. Alternatively, a standard FPGA could write out data to an external memory using a predetermined pattern of addresses.
    Type: Grant
    Filed: April 3, 2000
    Date of Patent: July 16, 2002
    Assignee: Xilinx, Inc.
    Inventors: Sundararajarao Mohan, Stephen M. Trimberger
  • Patent number: 6366117
    Abstract: It is sometimes desirable to encrypt a design for loading into a PLD so that an attacker may not learn and copy the design as it is being copied into the PLD. According to the invention, the encrypted design is decrypted by a key or keys within the PLD that are preserved when power is removed by either being stored in nonvolatile memory or by being backed up with a battery that switches into operation when the power is removed from the PLD.
    Type: Grant
    Filed: November 28, 2000
    Date of Patent: April 2, 2002
    Assignee: Xilinx, Inc.
    Inventors: Raymond C. Pang, Jennifer Wong, Scott O. Frake, Jane W. Sowards, Venu M. Kondapalli, F. Erich Goetting, Stephen M. Trimberger, Kameswara K. Rao
  • Publication number: 20020010853
    Abstract: A programmable logic device (PLD) comprises at least one configurable element, and a plurality of programmable logic elements for configuring the configurable element(s). Alternatively, a PLD comprises an interconnect structure and a plurality of programmable logic elements for configuring the interconnect structure. In either embodiment, at least one of the programmable logic elements includes N memory cells. A predetermined one of the N memory cells forms part of a memory slice, wherein at least a portion of each slice of the programmable logic device is allocated to either configuration data or user data memory. Typically, one memory slice provides one configuration of the programmable logic device. In accordance with one embodiment, a memory access port is coupled between at least one of the N memory cells and either one configurable element or the interconnect, thereby facilitating loading of new configuration data into other memory slices during the one configuration.
    Type: Application
    Filed: June 6, 2001
    Publication date: January 24, 2002
    Applicant: Xilinx, Inc.
    Inventors: Stephen M. Trimberger, Richard A. Carberry, Robert Anders Johnson, Jennifer Wong
  • Patent number: 6263430
    Abstract: A programmable logic device (PLD) comprises at least one configurable element, and a plurality of programmable logic elements for configuring the configurable element(s). Alternatively, a PLD comprises an interconnect structure and a plurality of programmable logic elements for configuring the interconnect structure. In either embodiment, at least one of the programmable logic elements includes N memory cells. A predetermined one of the N memory cells forms part of a memory slice, wherein at least a portion of each slice of the programmable logic device is allocated to either configuration data or user data memory. Typically, one memory slice provides one configuration of the programmable logic device. In accordance with one embodiment, a memory access port is coupled between at least one of the N memory cells and either one configurable element or the interconnect, thereby facilitating loading of new configuration data into other memory slices during the one configuration.
    Type: Grant
    Filed: July 29, 1999
    Date of Patent: July 17, 2001
    Assignee: Xilinx, Inc.
    Inventors: Stephen M. Trimberger, Richard A. Carberry, Robert Anders Johnson, Jennifer Wong
  • Patent number: 6255675
    Abstract: A programmable capacitor in an integrated circuit (IC) comprises a conductive line located parallel to an interconnect. When a bias voltage is applied to the conductive line, a parasitic capacitance is created between the interconnect and the conductive line. By properly sizing and locating the conductive line, a desired capacitance can be coupled to the interconnect. A bias control circuit can apply or remove the bias voltage from the conductive line, thereby enabling the capacitance to be coupled or decoupled, respectively, from the interconnect. Because of its simple construction, multiple capacitive structures can be formed around a single interconnect to provide capacitive adjustment capability. By changing the number of conductive lines to which the bias voltage is applied, the total capacitance provided by the multiple capacitive structures can be varied. A feedback loop can be incorporated to provide adjustment during IC operation.
    Type: Grant
    Filed: July 10, 1998
    Date of Patent: July 3, 2001
    Assignee: Xilinx, Inc.
    Inventor: Stephen M. Trimberger
  • Patent number: 6242947
    Abstract: A window pane architecture for FPGAs utilizes spaced subarrays having routing channels therebetween. In one embodiment, at least one routing channel includes segmented and staggered routing wires to minimize current loading and capacitive time delay. Connections between the configurable logic blocks, interconnect, and routing wires may be accomplished with switch matrices and programmable interconnect points.
    Type: Grant
    Filed: May 19, 2000
    Date of Patent: June 5, 2001
    Assignee: Xilinx, Inc.
    Inventor: Stephen M. Trimberger
  • Patent number: 6173241
    Abstract: A system and method for event-driven simulation of a circuit is disclosed. The system includes a simulation history of events and node values at various times throughout the simulation of the circuit. The system allows the user to access the simulation history during the simulation, make changes to the state of the circuit at any time recorded within the simulation history, and resume the simulation of the circuit automatically corrected for any changes.
    Type: Grant
    Filed: June 10, 1997
    Date of Patent: January 9, 2001
    Assignee: Xilinx, Inc.
    Inventor: Stephen M. Trimberger
  • Patent number: 6167558
    Abstract: A fault tolerance method for FPGAs featuring interconnect resources made up of wiring segments that are programmably coupled to two or more configurable logic blocks (CLBs) through connection switches. In accordance with a first embodiment, one of the wiring segments is designated as being reserved for each CLB. During routing, a wiring segment is assigned to a signal path only if the signal path is not associated with signal transmission to or from the CLB to which the wiring segment is reserved. In accordance with a second embodiment, one or more connection switches are designated as reserved switches for each horizontal segment. During routing, the reserved switches are not used to route signal paths. Fault tolerance is then performed by shifting the logic portion assigned to a defective CLB and/or the associated switch configuration data along its row towards a spare CLB located at the end of the row.
    Type: Grant
    Filed: February 20, 1998
    Date of Patent: December 26, 2000
    Assignee: Xilinx, Inc.
    Inventor: Stephen M. Trimberger
  • Patent number: 6105105
    Abstract: A flash reconfigurable programmable logic device is applied as a dynamic execution unit for a sequence of instructions. The sequence of instructions includes control portion, and a portion which indicates which configuration of the flash configurable programmable logic device is to be used with that instruction. In each execution cycle, a configuration is selected in accordance with the instruction being executed, switching from one configuration of the programmable logic device to any other configuration stored on the device in a single cycle. The configuration store stores a set of configuration words defining respective logic functions of the configurable logic elements in the programmable logic device. The configuration select circuits operate to apply a selected configuration word from the set of configuration words to configure the configurable logic elements. An instruction store stores a sequence of instructions for execution by the programmable logic device.
    Type: Grant
    Filed: May 4, 1999
    Date of Patent: August 15, 2000
    Assignee: Xilinx, Inc.
    Inventor: Stephen M. Trimberger
  • Patent number: 6094065
    Abstract: A heterogeneous integrated circuit device comprising a field programmable gate array (FPGA) programmably connected to a mask-defined application specific logic area (ASLA) on an integrated circuit thus providing a flexible low cost alternative to a homogeneous device of one type or the other. By integrating both on a single monolithic IC, the user benefits from both low cost and flexibility. Routing of signals between gate arrays and between the gate arrays and input/output (I/O) circuits is also implemented as a combination of mask-defined and programmably-configured interconnections.
    Type: Grant
    Filed: October 20, 1998
    Date of Patent: July 25, 2000
    Assignee: Xilinx, Inc.
    Inventors: Danesh Tavana, Wilson K. Yee, Stephen M. Trimberger
  • Patent number: 6094385
    Abstract: An array of memory cells including a first block of memory cells having a first replacement column of memory cells is provided. The first replacement column is able to replace any defective column of memory cells in the first block. To accomplish this, a defective column in the first block is identified. A first set of data (intended for the defective column) is stored in the first replacement column. The first set of data is then routed from the first replacement column to output terminals of the defective column using a set of bit lines in the first block. The array can further include a second block of memory cells having a second replacement column of memory cells, along with a set of switches for selectively connecting and disconnecting bit lines in the first and second blocks. The set of switches provides a means to divide the bit lines into separate bit lines for the first and second blocks, thereby allowing defective columns in the first and second blocks to be repaired simultaneously.
    Type: Grant
    Filed: August 10, 1999
    Date of Patent: July 25, 2000
    Assignee: Xilinx, Inc.
    Inventor: Stephen M. Trimberger
  • Patent number: 6084429
    Abstract: A window pane architecture for FPGAs utilizes spaced subarrays having routing channels therebetween. In one embodiment, at least one routing channel includes segmented and staggered routing wires to minimize current loading and capacitive time delay. Connections between the configurable logic blocks, interconnect, and routing wires may be accomplished with switch matrices and programmable interconnect points.
    Type: Grant
    Filed: April 24, 1998
    Date of Patent: July 4, 2000
    Assignee: Xilinx, Inc.
    Inventor: Stephen M. Trimberger
  • Patent number: 6047115
    Abstract: A dynamically reconfigurable FPGA includes an array of tiles on a logic plane and a plurality of memory planes. Each tile has associated storage elements on each memory plane, called local memory. This local memory allows large amounts of data to pass from one FPGA configuration (memory plane) to another with no external memory access, thereby transferring data to/from the storage elements in the logic plane at very high speed. Typically, all the local memory can be simultaneously transferred to/from other memory planes in one cycle. Each FPGA configuration provides a virtual instruction. The present invention uses two different types of virtual instructions: computational and pattern manipulation instructions. Computational instructions perform some computation with data stored in some pre-defined local memory pattern. Pattern manipulation instructions move the local data into different memory locations to create the pattern required by the next instruction.
    Type: Grant
    Filed: May 29, 1997
    Date of Patent: April 4, 2000
    Assignee: Xilinx, Inc.
    Inventors: Sundararajarao Mohan, Stephen M. Trimberger