[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

USRE34363E - Configurable electrical circuit having configurable logic elements and configurable interconnects - Google Patents

Configurable electrical circuit having configurable logic elements and configurable interconnects Download PDF

Info

Publication number
USRE34363E
USRE34363E US07/720,275 US72027591A USRE34363E US RE34363 E USRE34363 E US RE34363E US 72027591 A US72027591 A US 72027591A US RE34363 E USRE34363 E US RE34363E
Authority
US
United States
Prior art keywords
lines
configurable logic
iaddend
iadd
interconnect
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
US07/720,275
Inventor
Ross H. Freeman, deceased
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xilinx Inc
Original Assignee
Xilinx Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xilinx Inc filed Critical Xilinx Inc
Priority to US07/720,275 priority Critical patent/USRE34363E/en
Application granted granted Critical
Publication of USRE34363E publication Critical patent/USRE34363E/en
Anticipated expiration legal-status Critical
Assigned to XILINX, INC. reassignment XILINX, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: FREEMAN, ROSS H.
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/1733Controllable logic circuits
    • H03K19/1735Controllable logic circuits by wiring, e.g. uncommitted logic arrays
    • H03K19/1736Controllable logic circuits by wiring, e.g. uncommitted logic arrays in which the wiring can be modified
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17704Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form the logic functions being realised by the interconnection of rows and columns
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17724Structural details of logic blocks
    • H03K19/17728Reconfigurable logic blocks, e.g. lookup tables
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17736Structural details of routing resources
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/17752Structural details of configuration resources for hot reconfiguration

Definitions

  • This invention relates to configurable electrical circuits and in particular, to a method and means for providing on-chip programming of each of a plurality of logic elements formed on a chip of semiconductor material to configure each logic element to carry out certain desired functions, and to configure interconnects between the logic elements.
  • Gate arrays are well known in the prior art. Typically a gate array is produced by interconnecting a plurality of active devices in a base array in any one of a number of ways to achieve a desired logic function. As gate arrays become more complex, the simulation of the logic to be achieved from a given interconnection of the active devices in the base array becomes more difficult and is typically carried out using a computer program. The layout of the actual interconnections for the active devices in the base array to yield a finished gate array is then derived using a computer aided design program of a type well known in the art. The process of designing such a structure is complex and reasonably expensive requiring the use of logic simulation and verification programs and semiconductor device layout programs. Accordingly, a need exists for an alternative approach which significantly simplifies the obtaining of a given logic function from a base array.
  • I provide a structure which I denote as a configurable logic array which allows changing the configuration of the finished integrated circuit from time-to-time (even when the integrated circuit is installed in a system) to provide any one of a plurality of logical functions from the same integrated circuit.
  • a new type of integrated circuit is achieved which is capable of being configured to provide any one of a plurality of logic functions depending upon the tasks which the system of which it is a part is called upon to perform.
  • configurable logic element I mean a combination of devices which are capable of being electrically interconnected by switches operated in response to control bits to perform any one of a plurality of logical functions.
  • a configurable logic array of my invention is comprised of a multiplicity of configurable logic elements each of which can include all the circuit elements necessary to provide one or more of the functions provided by an AND gate, flip flop, inverter, NOR gate, exclusive OR gate, and combinations of these functions to form more complex functions.
  • the particular function to be carried out by a configurable logic element is determined by control signals applied to the configurable logic element from control logic.
  • the configurable logic element of one embodiment of my invention can function as an AND gate, an OR gate, a NOR gate, a NAND gate or an exclusive OR gate or any one of a number of other logic elements without any change in physical structure.
  • structure is provided to allow any one of a plurality of functions to be performed by each configurable logic element. Selecting a desired function is done by providing control logic to store and generate control signals which control the configuration of each configurable logic element.
  • control signals are stored and transmitted by control logic formed integrally with and as part of the integrated circuit chip containing the configurable logic element.
  • control information can be stored and/or generated outside this integrated circuit and transmitted through pins to the configurable logic element.
  • a given set of control signals is transmitted to one configurable logic element to control the configuration of that configurable logic element.
  • the control logic is thus arranged to provide any one set of a plurality of sets of control bits to each configurable logic element on the chip.
  • the actual set of control bits provided to each configurable logic element on the integrated circuit chip depends on the function to be carried out by the integrated circuit chip or by each configurable logic element on the chip.
  • the configuration of each logic element on the chip is determined by the intended function of the total chip and by the intended function of that configurable logic element as part of the chip.
  • the resulting structure is known as a "Configurable Logic Array" or "CLA” and each logic element in the array is known as a “Configurable Logic Element” or "CLE”.
  • each integrated circuit chip has in addition to and associated with the control logic certain on-chip data routing circuitry including configurable interconnects.
  • the on-chip data routing is achieved by using a memory to store the particular data used to configure the configurable logic elements and by then transferring the data from the memory to a novel combination of a dynamic shift register and static latch element within or associated with each configurable logic element on the chip.
  • the particular structure of this invention is versatile in that it can be implemented particularly easily using P channel, N channel, or CMOS technologies in the embodiment shown. Of course, structure incorporating the principles of this invention can, if desired, be implemented using any other appropriate semiconductor technology.
  • the novel dynamic shift register-static latch element of this invention is particularly useful in that the structural "overhead" (i.e., access circuitry and routing circuitry) is kept to a minimum relative to the useful logic functions on the total chip. Of particular importance, no addressing, data selection, or decoding in each configurable logic element is necessary when this novel combination of a dynamic shift register and static latch element is used to implement the configurable logic array of my invention.
  • FIG. 1 illustrates some of the various logic functions capable of being provided by each logic element in a configurable logic array
  • FIG. 2 illustrates the internal logic structure of one possible logic element capable of implementing a number of useful functions with two variables A, B and certain configuration control bits, C0 through C5;
  • FIG. 3A illustrates a 16 bit RAM select circuit wherein any one of sixteen possible input states is capable of being identified and 2 16 functions are capable of being implemented;
  • FIG. 3B illustrates a selection structure for selecting any one of sixteen bits capable of implementing 2 16 functions, for transmittal to an output lead;
  • FIG. 3C illustrates one possible Karnaugh plot for the structure of FIG. 3A
  • FIG. 3D illustrates the logic gates represented by placing a binary one in the Karnaugh map of FIG. 3C at the intersections of the first and second rows and the first column.
  • FIG. 4A illustrates one embodiment of my configurable electrical circuit wherein a plurality of configurable logic elements (shown as nine logic elements) are formed on an integrated circuit chip together with an array of leads including leads from the logic elements and from input/output pads, and programmable interconnects formed between selected leads to yield desired logic functions;
  • FIG. 4B shows the key to the cross-connections between crossing conductive leads in FIG. .[.4B.]. .Iadd.4A.Iaddend.;
  • FIG. 5 represents a portion of the circuitry of a novel combination static and dynamic shift register appropriate for use with the configurable logic array of this invention
  • FIGS. 6A through 6H represent wave forms of use in explaining the operation of the novel structure of FIG. 5;
  • FIG. 7A represents a schematic diagram of a configurable logic array showing nine of N configurable logic elements where N is a selected integer greater than 9 and selected interconnections between conductive leads;
  • FIGS. 7B-1 through 7B-7 are the key showing the types of interconnections made by the symbols shown in FIG. 7A;
  • FIG. 8A illustrates a system with a microprocessor controller and four configurable logic arrays
  • FIG. 8B illustrates a combination of four configurable logic arrays together with a nonvolatile memory
  • FIGS. 9A through 9G illustrate various topologies for forming interconnections such as those shown in FIGS. 7B-1 through 7B-7 between two or more leads in a configurable logic array;
  • FIGS. 10A and 10B show a circuit for implementing the bidirectional buffer/amplifier represented by an "X" in a box in FIGS. 4A and 4B;
  • FIG. 11 shows a single board microcomputer using the Configurable Logic Array of this invention.
  • FIG. 1 illustrates certain logic functions capable of being integrated into a configurable logic element.
  • the 28 functions shown in FIG. 1 are merely illustrative and other elements not shown can, if desired, be included in a configurable logic element. The following elements are shown:
  • FIG. 2 illustrates the internal logic structure of one possible logic element which is capable of implementing all useful functions of the two variables A and B, with the functions being selected by configuration control signals C0, C0, C1, C1 . . . through C5, as shown in FIG. 2.
  • configuration control signals C0, C0, C1, C1 . . . through C5 as shown in FIG. 2.
  • the input leads labeled A and B are shunted past inverters 21 and 22, respectively, by high level signals on the C1 and C0 configuration control leads.
  • Leads C1 and C0 are connected to well-known pass transistors 29c and 29d. (Throughout this specification a pass transistor will be represented by the symbol shown within the circles 29c and 29d).
  • Low level signals are applied to the configuration control leads C0, C1, C4.
  • NOR gate 26 converts the high level signal from gate 25 to a low level signal to turn off MOS transistor 29a (the source of which is grounded and the drain of which is connected to the output lead 28) and to turn on through NOR gate 27 N channel transistor 29b (the drain of which is connected to a power supply and the source of which is connected to both the output lead 28 and the drain of N channel transistor 29a).
  • MOS transistor 29a the source of which is grounded and the drain of which is connected to the output lead 28
  • N channel transistor 29b the drain of which is connected to a power supply and the source of which is connected to both the output lead 28 and the drain of N channel transistor 29a.
  • FIG. 3A illustrates a 16 bit RAM capable of producing one of sixteen output signals in response to any one of sixteen possible combinations of input signals.
  • input signals A and B control the X decoder to select any one of the four columns in the 16 bit RAM.
  • Input signals C and D control the Y decoder to select any one of the four rows in the 16 bit RAM.
  • the 16 bit RAM produces an output signal representative of the bit at the intersection of the selected row and column. There are 16 such intersections and thus sixteen such bits.
  • FIG. 3C illustrates a 16 bit RAM capable of producing one of sixteen output signals in response to any one of sixteen possible combinations of input signals.
  • FIG. 3B shows another structure for yielding any one of sixteen select bits in a 16-bit RAM.
  • Each of registers 0-15 in the vertical column to the left labelled “16 Select Bits”, contains a selected signal, either binary 1 or 0.
  • a particular bit stored in a particular one of the sixteen locations in the 16 Select Bits register is transmitted to the output lead.
  • the signal A, B, C, D is applied to the leads so labeled.
  • the signal A, B, C, and D is applied to the appropriate columns. Again, any one of 2 16 logic functions can be implemented using this structure.
  • FIG. 4A illustrates an embodiment of a configurable logic array of this invention containing nine configurable logical elements. As shown in FIG. 4A, nine logical elements are placed on an integrated circuit chip together with interconnects and variable switches for connecting various leads to other leads.
  • Each of logic elements 40-1 through 40-9 represents a collection of circuitry such as that shown in FIG. 2 or some similar structure capable of being configured as described above with respect to FIG. 2 to perform any one of a number of logic functions.
  • To program the circuitry.[.,.]. of a logic element such as shown in FIG. 2 selected signals are applied to input leads of the configurable logic element identified as configuration control input leads from a source such as the RAM of FIG. 3A or 3B described above thereby to generate a desired logical function in each of the logic elements.
  • FIG. 4A no specific I/O pad has been identified as an input lead for applying the configuration control signals to the logic elements. However, any particular I/O pad can be selected for this purpose.
  • the configuration control bits can be input into the configurable logic array of FIG. 4A either in series or in parallel depending upon design considerations. Input of configuration control bits is described later in conjunction with FIGS. 5, 8A, and 8B.
  • another I/O pad will be used on input clock signals to clock the logic elements both for the shifting in of the configuration control signals to each configurable logic elements and for controlling the operation of each logic element during the functioning of the integrated circuit chip in its intended manner.
  • the combination of logic elements 40-1 through 40-9 as configured by the configuration control bits plus the interconnect structure of FIG. 4A yields the desired logical output for the Configurable Logic Array.
  • FIG. 4B illustrates the meaning of the interconnects symbols used in FIG. 4A.
  • FIG. 5 illustrates a novel shift register of use in this invention.
  • the shift register of FIG. 5 is illustrated showing two basic storage cells. Each storage cell is capable of storing one bit of information.
  • an actual shift register will contain as many storage cells as required to configure the logic element of which the shift register is a part, to its desired configuration.
  • an input signal provided on one of the I/O pads shown in FIG. 4A is applied to input lead 58 of FIG. 5, which in FIG.
  • This input signal (shown in FIG. 6D) contains the pulses to be stored in the shift register as configuration control bits to configure the configurable logic element to perform a desired logic function or to configure an interconnection between leads in a manner to be described shortly.
  • the sequence of pulses applied to input lead 58 of FIG. 5 represents those pulses which when stored in the storage cells of the shift register will activate the configuration control bits in the proper manner to achieve the desired functional and/or interconnection result.
  • the pulses C0, C1, C2, C3, C4, and C5 would be represented by 1,1,X,X,0,1.
  • the sequence of pulses applied to input lead 58 of FIG. 5 is synchronized with clocking pulses ⁇ 1 and ⁇ 2 applied to leads 57 and 59 respectively.
  • clocking pulse ⁇ 1 goes high (FIG. 6A)
  • clocking pulse ⁇ 2 is low (FIG. 6B)
  • the hold signal (FIG. 6C) is low during shifting thereby facilitating the passage of data through sequentially connected cells 5-1, 5-2 et al. of the shift register of FIG. 5.
  • the input signal (FIG. 6D) on lead 58 (FIG. 5) is low during approximately the first half cycle of the clocking period t1.
  • the output signal Q1 of inverter 51-1 goes to a high level in response to the low level input signal on lead 58 and ⁇ 1 high to enable PASS transistor 53-1.
  • the clock signal ⁇ 1 goes low (FIG. 6A) and the clock signal ⁇ 2 shortly thereafter goes high (FIG. 6B) to enable PASS transistor 55-1. Consequently, the high level output signal Q1 is transmitted to the input lead of inverter 52-1 by enabled pass transistor 55-1 and thereby produces a low level output signal Q1 on the output lead of inverter 52-1.
  • the output signal Q1 (FIG. 6F) from inverter 52-1 is low level.
  • the output signals Q2 and Q2 (FIGS. 6G, 6H) from inverters 51-2 and 52-2 in the second cell are still indeterminate because no known signal has yet propagated to the second storage cell 5-2 to change the signals of these inverters to a known state.
  • the output signal Q1 is transmitted through pass transistor 55-1 to inverter 52-1 thereby driving the output signal Q1 from inverter 52-1 to high level.
  • the previous low level signal Q1 from inverter 52-1 has driven the output signal Q2 of inverter 51-2 to a high level when d1 was at a high level to enable PASS transistor 53-2.
  • the change in ⁇ 2 from a low level to a high level in the second half of period t2 to enable PASS transistor 55-2 drives the output signal Q2 from inverter 52-2 to a low level.
  • the input signal on lead 58 (FIG. 6D) is transmitted through each of the cells 5-1, 5-2, 5-3 et al. in the shift register.
  • the hold signal (FIG. 6C) is enabled (i.e., driven to a high level) thereby to connect the feedback leads 50-1, 50-2, and 50-3 et al. from the output leads of inverters of one stage to input leads of inverters of the same stage so as to hold the information then in each cell indefinitely.
  • the signal stored in a given cell of FIG. 5 is connected to a configuration control portion of a logic element or to an interconnect pass device.
  • the signals Q 1 , Q 1 , Q 2 , Q 2 , etc., from the shift register of FIG. 5 are directly connected to the (configuration) control inputs of a logic element such as shown in FIG. 4A or the pass devices of the configurable interconnect (to be explained later in conjunction with FIG. 9A).
  • ⁇ 1 When ⁇ 1 is low, ⁇ 2 and hold may be brought high, thus holding the data indefinitely.
  • the entire shaft register may be set or cleared by setting or clearing the input with ⁇ 1 and ⁇ 2 both high and HOLD low. Enough set/reset time must be allowed for the signal to propagate the entire length of the shift register to clear the shift register in this manner. Naturally this time is dependent upon the length of the shift register.
  • the shift register operates in its dynamic phase by storing the information being shifted as charge on the gates of the pass transistors (not shown in FIG. 5 but shown in FIG. 2 and well-known) comprising inverters 51-1, 52-1, 51-2, 52-2 et al. of the shift register. These inverters are of well-known design and will not be described in detail.
  • the use of the dynamic shift register is an important feature of the invention because each cell of a dynamic shift register uses six transistors and thus takes up very little area.
  • the dynamic shift register is converted to a static latch by adding only one transistor to each cell.
  • the novel dynamic shift register-static latch can be easily fabricated as part of a configurable logic element without adding significant complexity to the circuit or consuming significant semiconductor area. Because of the "hold" signal, the dynamic shift register can be driven at a very low frequency because placing the shift register on hold automatically refreshes the data. Thus a separate refresh circuit is not needed.
  • the novel, dynamic shift register static latch circuit is unique in that it does not need refreshing once it has been latched into a hold position. This is accomplished by use of the feedback circuit comprising lead 50-1 and pass transistor 54-1 in cell 5-1, for example.
  • FIG. 7A shows an additional configurable logic array containing a plurality of configurable logic elements.
  • configurable logic elements 70-1, 70-2, 70-4 and 70-5 are shown in their entirety while configurable logic elements 70-3, 70-6 and 70-7 through 70-9 are shown partially. The complete interconnections of these last five logical elements are not shown.
  • the structure shown in FIG. 7A is merely illustrative of the types of configurations and connections which can be implemented using the configurable logic array of this invention and does not depict an actual circuit configured to carry out an intended function.
  • FIG. 7A given leads can be interconnected by any one of a plurality of different means (i.e., interconnection structures).
  • the symbols representing the interconnections shown in FIG. 7A are illustrated in FIG. 7B.
  • FIGS. 9A through 9G the conventions used in these schematics are explained in FIGS. 9A through 9G.
  • FIG. 9A is the schematic of a circuit for making a number of different interconnections between two cross-over leads such as shown in FIG. 7B-3, horizontal lead 90-1 and vertical lead 90-2.
  • pass transistor 2 when activated into the conducting state, connects lead 90-3 to lead 90-1.
  • Pass transistor 1 when conducting, connects lead 90-3 to lead 90-4.
  • Pass transistor 4 when conducting, connects lead 90-4 to lead 90-2 and pass transistor 3, when conducting, connects lead 90-1 to lead 90-2.
  • Pass transistors 6 and 5 when off, separate lead 90-2 from lead 90-3 and separate lead 90-1 from lead 90-4 respectively.
  • pass transistor 6 is activated.
  • FIG. 9B a plurality of pass transistors 92-1 through 92-13 are shown.
  • the convention adopted in FIG. 9B is to have a given pass transistor represented by a single short time.
  • the line labelled 92-1 represents a pass transistor.
  • Pass transistor 92-1 is drawn so that its two ends point to the ends of the leads 91-5 and 91-6 being interconnected by pass transistor 92-1.
  • the right end 93a of pass transistor 92-1 is aimed to the end 94a of lead 91-5.
  • the left end 93b of pass transistor 92-1 is aimed to the end 94b of lead 91-6.
  • the other ends of the transistors are not labelled.
  • pass transistor 92-7 interconnects horizontal lead 91-4 with vertical lead 92-8.
  • Pass transistor 92-13 interconnects horizontal lead 91-4 with horizontal lead 91-2.
  • Pass transistor 92-12 interconnects lead 91-3 with lead 91-5. Similar connections can be made between the other pass transistors and the other leads.
  • lead 91-3 can be connected to lead 91-2 by turning on pass transistor 92-10.
  • lead 91-3 can be connected to lead 91-4 by turning on pass transistor 92-13.
  • lead 91-3 could be connected to lead 91-4 by turning on pass transistor 92-11.
  • lead 91-6 could be connected to the three leads 91-2, 91-3, 91-4 by turning on pass transistor 92-8.
  • a large number of permutations of interconnections can be made using this structure.
  • FIG. 9B In the case where all the pass transistors are turned on, all the leads 91-1 to 91-6 are interconnected. The resulting structure has a large capacitance which can actually be used in circuits as a component. Of course, all leads in FIG. 9B can be interconnected by turning on as few as five pass transistors. Note that in FIG. 9B leads 91-1 and 91-2 cannot be directly connected to each other nor can lead 91-4 be directly connected to lead 91-5 without involving another lead. However, this omission is not of importance because in an integrated circuit there is in general no need for two parallel leads to carry the same signal. Of course, two additional pass transistors could be added to the structure of FIG. 9B. FIG. 9B is considered to be merely a symbolic representation of intersecting leads and leads 91-1 and 91-2 are merely shown for convenience as being parallel but in fact can represent non-parallel leads on an integrated circuit.
  • leads 1 to 8 are shown coming together at a complicated intersection. Leads 1 and 8 are parallel horizontal to the left, leads 4 and 5 are parallel horizontal to the right, leads 2 and 3 are parallel vertical up and leads 6 and 7 are parallel vertical down. Looking for a moment at lead 6, the end 6a of lead 6 can be connected sensibly to the ends "a" of leads 1, 2, 3, 4, 5 and 8. It is not sensible to connect lead 6 to lead 7 because theoretically the two leads are going in one direction and only one lead is required to carry the necessary information in that direction. Since lead 6 has six possible connections and there are eight leads, a total of forty-eight possible connections are offered by the structure of FIG. 9D.
  • pass transistor 6-8 interconnects the end 6a of lead 6 to the end 8a of lead 8.
  • Pass transistor 7-5 interconnects the end of lead 7 to the end of lead 5. Because of the complexity of the structure of FIG. 9D a slightly different convention (a line with numbers on both ends) has been adopted for representing the pass transistor than that which was described above in conjunction with FIG. 9B.
  • FIG. 9E illustrates types of interconnections possible using the method of this invention.
  • the leads interconnected are illustrated by showing continuous lines or broken lines depending on whether a given lead is connected to another lead or left unconnected. These interconnections are self-explanatory.
  • FIG. 9F illustrates the connections that would be possible if the four pass transistors 1-6, 2-5, 3-8, 4-7 omitted from FIG. 9D were in fact included.
  • the dashed lines show the interconnections possible by these omitted transistors.
  • FIG. 9D shows only twenty pass transistors whereas twenty-four pass transistors are necessary to make all possible connections between the leads.
  • FIG. 9G illustrates the way in which it is possible to interconnect leads 4 and 7 without the four transistor connections shown in FIG. 9F being present.
  • lead 4 is connected directly to lead 8 by means of transistor 4-8 while lead 8 is connected to lead 7 by pass transistor 8-7.
  • FIG. 9C illustrates the configuration of FIG. 9D with the full twenty-four interconnection transistors shown rather than merely the twenty shown in FIG. 9D.
  • pass transistors 1-6, 7-4, 2-5 and 8-3 have been added to the transistors shown in FIG. 9D.
  • the other pass transistors shown in FIG. 9D have not been numbered in FIG. 9C except for pass transistor 6-8.
  • each of the interconnections shown above in FIGS. 9A through 9G requires only one gate in order to connect one lead to another except for the particular configuration illustrated in FIG. 9G wherein two gates are required. This means that the speed of circuits formed using the interconnections of this invention is greater than the speed of circuits using prior art interconnections.
  • FIGS. 7B-1 through 7B-7 The symbology used in FIGS. 7B-1 through 7B-7 is identical to the symbology just explained in conjunction with FIGS. 9A through 9G.
  • FIG. 7B-7 illustrates on the left the symbol for a 20 transistor interchange and on the right the locations of the 20 transistors, and corresponds precisely to the interchange explained above in conjunction with FIG. 9D.
  • FIG. 7B-1 illustrates three transistors capable of making a T connection, a cross-connection, or a four-way connection but not a vertical only connection and therefore not a full interconnection.
  • full interconnection is meant the ability to connect each of the leads (in FIG. 7B-1, four leads) coming into a node to a given node or to each of the other leads coming into the node in any combination.
  • FIG. 7B-2 shows a one transistor interconnection to connect a row with a column.
  • FIG. 7B-3 shows a six transistor full cross interconnection wherein any one of four leads coming into a node can be connected to any one of the other three leads.
  • FIG. 7B-4 shows six leads coming into an intersection wherein ten pass transistors are used to interconnect any one of the six input leads to any one of the five other leads input to the node.
  • FIG. 7B-5 illustrates a four-lead node where two horizontal continuous leads are interconnected with two separate vertical leads using five pass transistors.
  • FIG. 7B-6 illustrates a three-transistor interconnection wherein any one of three leads coming into a node can be interconnected with any one of the other two leads.
  • FIG. 7B-7 illustrates the twenty-transistor interchange for interconnecting any one of eight input leads to any one of the other eight input leads except that lead parallel and adjacent to the lead being interconnected as illustrated in FIG. 9D and except for the four interconnections shown in FIG. 9F.
  • FIGS. 8A and 8B illustrate two possible systems capable of using the configurable logic arrays of this invention.
  • a microprocessor microcontroller produces address signals, control signals and data signals which are transmitted to a master configurable logic array. Also shown are N slave CLAs.
  • the control bits to control each of the configurable logic elements in each slave configurable logic array are transmitted on the data leads from the microcontroller to the master configurable logic array. From the master configurable logic array, this data is transmitted in series to each one of N configurable logic arrays where N is a selected integer.
  • the control bits for controlling the configuration of each configurable logic element in each of the configurable logic arrays are transmitted in series through slave configurable logic array 1, slave configurable logic array 2 through to the Nth configurable array.
  • the data is stored in serial shift registers as described above in conjunction with FIG. 5.
  • the hold signal shown in FIG. 6C is raised to a high level thereby locking each data bit into the proper location in the corresponding shift register thus configurating each configurable logic element in each configurable logic array.
  • the data clock signals are applied on a separate lead to each configurable logic array, as shown, to clock in the control data.
  • the address arrow pointing to CLA (master) in FIG. 8A merely indicates that the microprocessor has the ability to select a particular master configurable logic array for receipt of data from the microprocessor.
  • the master configurable logic array is capable of going into the nonvolatile memory with addresses to select particular data to be retrieved from the memory to be used to configure each of the slave configurable logic arrays.
  • the microprocessor produces address signals which will go to off chip memory or to other circuitry (not shown).
  • FIG. 8B the structure is similar to that shown in FIG. 8A except that a nonvolatile memory such as a ROM, EPROM or E 2 PROM is used as the source for the configuration control bits to be transmitted into each of the configurable logic arrays.
  • a nonvolatile memory such as a ROM, EPROM or E 2 PROM is used as the source for the configuration control bits to be transmitted into each of the configurable logic arrays.
  • the structure of FIG. 8B is unique in that when power is turned on or when a reset signal is applied to the master CLA, the master CLA initiates the transfer of the information for controlling or configuring the Configurable Logic Array from the non-volatile memory to the master CLA and to the .[.salve.]. .Iadd.slave .Iaddend.CLAs 1 to N. In this sense, the structure of FIG. 8B is self-configuring in response to power on or a reset signal.
  • Configurable Logic Array 110 performs the chip decode functions, the latching functions and the various special logic that is necessary to implement a single board microcomputer.
  • the CLA has an output lead ("DONE") which is low from the time the power is turned on until the single board microcomputer is fully functional.
  • the first event that occurs when power is turned on is that the Configurable Logic Array 110 forces the Z8002 CPU 111 into the reset state. Reset forces the outputs of the CPU to be tri-stated (i.e., to go to high impedance level) which makes it possible for the Configurable Logic Array to use the control lines from the CPU 111 while it is being configured.
  • the Configurable Logic Array 110 through a set of address lines (LA 1 -LA 12 ) addresses the EPROMS 113 which are also used for the bootstrap of the Z8002 CPU 111. In addition, the EPROMS 113 have available in them configuration information for the CLA 110.
  • the CLA 110 has signals which, during the self-loading time, are fixed so that particular bi-directional buffers 112 can be set in the correct direction for loading data from the EPROMS 113 to the Configurable Logic Array 110.
  • Configurable Logic Array 110 then sequentially addresses locations in the EPROMS 113 which are read into the Configurable Logic Array 110 to configure the CLA 110.
  • array 110 When array 110 is totally configured it then takes on its new functions and unlatches the DONE output which releases the reset line to the CPU 111.
  • CPU 111 is then in control of the entire system.
  • the decode used herein decodes the addresses from the CPU to create chip enables and chip selects for the various RAMS and EPROMS in the system and for the I/O devices as well.
  • FIG. 10A shows the bi-directional buffer as comprising an inverter 101 connected into a CMOS inverter comprising p-channel transistor 103 and n-channel transistor 104, the output lead of which is gated by pass transistor 108.
  • inverter 102 feeds an input signal onto the gates of p-channel pass transistor 105 connected in series with n-channel transistor 106.
  • the output from the node between the p- and n-channel transistors is controlled by pass transistor 107.
  • the pass transistors 107 and 108 are activated by the Q, Q signals from the storage element which can comprise a standard flip-flop.
  • the buffer passes a signal in one direction or the other on leads 109a or 109b, depending upon whether or not pass transistor 107 or pass transistor 108 is turned on.
  • FIG. 10B illustrates schematically the circuit of FIG. 10A.
  • the series connected p-channel and n-channel transistors 103 and 104 have been represented by inverter 103' and series connected p-channel pass transistor 105 and n-channel pass transistor 106 have been represented by .[.invertor.]. .Iadd.inverter .Iaddend.105'.
  • the two circuits are identical.
  • directional amplifiers (shown by an X in a box) are used to amplify signals which have been attenuated by a number of pass transistors. This speeds up considerably the operation of the circuit. The delay of a signal increases approximately in proportion to the square of the number of pass transistors through which a signal must pass. The amplifier brings the signal voltage back to its normal level.
  • a configurable logic element in a Configurable Logic Array is capable of being reconfigured even after the Configurable Logic Array has been installed in a circuit. Indeed, this is one of the key advantages of the Configurable Logic Array of this invention.
  • a Configurable Logic Array can be reconfigured to provide a new logical function as part of its normal operation in the system of which it is a part.
  • I/O pads can be used as either input or output pads and can be controlled by any internal signal using pass transistors.

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Logic Circuits (AREA)

Abstract

A configurable logic array comprises a plurality of configurable logic elements variably interconnected in response to control signals to perform a selected logic function. Each configurable logic element in the array is in itself capable of performing any one of a plurality of logic functions depending upon the control information placed in the configurable logic element. Each configurable logic element can have its function varied even after it is installed in a system by changing the control information placed in that element. Structure is provided for storing control information and providing access to the stored control information to allow each configurable logic element to be properly configured prior to the initiation of operation of the system of which the array is a part. Novel interconnection structures are provided to facilitate the configuring of each logic element.

Description

This .[.application.]. is a .Iadd.reissue of U.S. Pat. No. 4,870,302 issued Sep. 26, 1989 on application Ser. No. 07/158,011, which was .Iaddend.a continuation of application Ser. No. 06/588,478, filed Mar. 12, 1984, .Iadd.now abandoned.Iaddend..
BACKGROUND OF THE INVENTION
1. Field of the Invention
This invention relates to configurable electrical circuits and in particular, to a method and means for providing on-chip programming of each of a plurality of logic elements formed on a chip of semiconductor material to configure each logic element to carry out certain desired functions, and to configure interconnects between the logic elements.
2. Prior Art
Gate arrays are well known in the prior art. Typically a gate array is produced by interconnecting a plurality of active devices in a base array in any one of a number of ways to achieve a desired logic function. As gate arrays become more complex, the simulation of the logic to be achieved from a given interconnection of the active devices in the base array becomes more difficult and is typically carried out using a computer program. The layout of the actual interconnections for the active devices in the base array to yield a finished gate array is then derived using a computer aided design program of a type well known in the art. The process of designing such a structure is complex and reasonably expensive requiring the use of logic simulation and verification programs and semiconductor device layout programs. Accordingly, a need exists for an alternative approach which significantly simplifies the obtaining of a given logic function from a base array.
SUMMARY
In accordance with this invention, I provide a structure which I denote as a configurable logic array which allows changing the configuration of the finished integrated circuit from time-to-time (even when the integrated circuit is installed in a system) to provide any one of a plurality of logical functions from the same integrated circuit. In accordance with my invention, by providing a number of "configurable logical elements" (also referred to herein as "logic elements") in the base array, a new type of integrated circuit is achieved which is capable of being configured to provide any one of a plurality of logic functions depending upon the tasks which the system of which it is a part is called upon to perform. By "configurable logic element" I mean a combination of devices which are capable of being electrically interconnected by switches operated in response to control bits to perform any one of a plurality of logical functions.
A configurable logic array of my invention is comprised of a multiplicity of configurable logic elements each of which can include all the circuit elements necessary to provide one or more of the functions provided by an AND gate, flip flop, inverter, NOR gate, exclusive OR gate, and combinations of these functions to form more complex functions. In accordance with my invention, the particular function to be carried out by a configurable logic element is determined by control signals applied to the configurable logic element from control logic. Depending on the control signals, the configurable logic element of one embodiment of my invention can function as an AND gate, an OR gate, a NOR gate, a NAND gate or an exclusive OR gate or any one of a number of other logic elements without any change in physical structure. In accordance with my invention, structure is provided to allow any one of a plurality of functions to be performed by each configurable logic element. Selecting a desired function is done by providing control logic to store and generate control signals which control the configuration of each configurable logic element.
In one embodiment of my invention, the control signals are stored and transmitted by control logic formed integrally with and as part of the integrated circuit chip containing the configurable logic element. However, if desired the control information can be stored and/or generated outside this integrated circuit and transmitted through pins to the configurable logic element.
In general, in accordance with my invention, a given set of control signals is transmitted to one configurable logic element to control the configuration of that configurable logic element. The control logic is thus arranged to provide any one set of a plurality of sets of control bits to each configurable logic element on the chip. The actual set of control bits provided to each configurable logic element on the integrated circuit chip depends on the function to be carried out by the integrated circuit chip or by each configurable logic element on the chip. The configuration of each logic element on the chip is determined by the intended function of the total chip and by the intended function of that configurable logic element as part of the chip. Thus the resulting structure is known as a "Configurable Logic Array" or "CLA" and each logic element in the array is known as a "Configurable Logic Element" or "CLE".
In general, each integrated circuit chip has in addition to and associated with the control logic certain on-chip data routing circuitry including configurable interconnects. In one embodiment the on-chip data routing is achieved by using a memory to store the particular data used to configure the configurable logic elements and by then transferring the data from the memory to a novel combination of a dynamic shift register and static latch element within or associated with each configurable logic element on the chip.
The particular structure of this invention is versatile in that it can be implemented particularly easily using P channel, N channel, or CMOS technologies in the embodiment shown. Of course, structure incorporating the principles of this invention can, if desired, be implemented using any other appropriate semiconductor technology. The novel dynamic shift register-static latch element of this invention is particularly useful in that the structural "overhead" (i.e., access circuitry and routing circuitry) is kept to a minimum relative to the useful logic functions on the total chip. Of particular importance, no addressing, data selection, or decoding in each configurable logic element is necessary when this novel combination of a dynamic shift register and static latch element is used to implement the configurable logic array of my invention.
This invention will be more fully understood in conjunction with the following detailed description taken together with the drawings.
DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates some of the various logic functions capable of being provided by each logic element in a configurable logic array;
FIG. 2 illustrates the internal logic structure of one possible logic element capable of implementing a number of useful functions with two variables A, B and certain configuration control bits, C0 through C5;
FIG. 3A illustrates a 16 bit RAM select circuit wherein any one of sixteen possible input states is capable of being identified and 216 functions are capable of being implemented;
FIG. 3B illustrates a selection structure for selecting any one of sixteen bits capable of implementing 216 functions, for transmittal to an output lead;
FIG. 3C illustrates one possible Karnaugh plot for the structure of FIG. 3A;
FIG. 3D illustrates the logic gates represented by placing a binary one in the Karnaugh map of FIG. 3C at the intersections of the first and second rows and the first column.
FIG. 4A illustrates one embodiment of my configurable electrical circuit wherein a plurality of configurable logic elements (shown as nine logic elements) are formed on an integrated circuit chip together with an array of leads including leads from the logic elements and from input/output pads, and programmable interconnects formed between selected leads to yield desired logic functions;
FIG. 4B shows the key to the cross-connections between crossing conductive leads in FIG. .[.4B.]. .Iadd.4A.Iaddend.;
FIG. 5 represents a portion of the circuitry of a novel combination static and dynamic shift register appropriate for use with the configurable logic array of this invention;
FIGS. 6A through 6H represent wave forms of use in explaining the operation of the novel structure of FIG. 5;
FIG. 7A represents a schematic diagram of a configurable logic array showing nine of N configurable logic elements where N is a selected integer greater than 9 and selected interconnections between conductive leads;
FIGS. 7B-1 through 7B-7 are the key showing the types of interconnections made by the symbols shown in FIG. 7A;
FIG. 8A illustrates a system with a microprocessor controller and four configurable logic arrays;
FIG. 8B illustrates a combination of four configurable logic arrays together with a nonvolatile memory;
FIGS. 9A through 9G illustrate various topologies for forming interconnections such as those shown in FIGS. 7B-1 through 7B-7 between two or more leads in a configurable logic array;
FIGS. 10A and 10B show a circuit for implementing the bidirectional buffer/amplifier represented by an "X" in a box in FIGS. 4A and 4B; and
FIG. 11 shows a single board microcomputer using the Configurable Logic Array of this invention.
DETAILED DESCRIPTION
The following detailed description of this invention is meant to be illustrative only and not limiting. Other embodiments of this invention will be obvious to those skilled in the art in view of the following disclosure.
Turning now to FIG. 1, FIG. 1 illustrates certain logic functions capable of being integrated into a configurable logic element. The 28 functions shown in FIG. 1 are merely illustrative and other elements not shown can, if desired, be included in a configurable logic element. The following elements are shown:
______________________________________                                    
Element  Function                                                         
______________________________________                                    
 1       AND gate                                                         
 2       NAND gate                                                        
 3       AND gate with inverted input                                     
 4       NAND gate with inverted input                                    
 5       OR gate                                                          
 6       NOR gate                                                         
 7       exclusive OR gate                                                
 8       exclusive NOR gate                                               
 9       3 input AND gate                                                 
10       3 input NAND gate                                                
11       3 input OR gate                                                  
12       3 input NOR gate                                                 
13       OR gate with one input comprising AND gate                       
14       NOR gate with one input comprising AND gate                      
15       AND gate with one input comprising OR gate                       
16       NAND gate with one input comprising OR gate                      
17       3 input AND gate with one input inverted                         
18       3 input NAND gate with one inverted input                        
19       3 input OR gate with one inverted input                          
20       3 lead NOR gate with one inverted input                          
21       one of two inputs multiplexer                                    
22       inverting one of two inputs multiplexer                          
23       "D" flip-flop with reset                                         
24       Set-Reset latch                                                  
25       "D" flip-flop with reset and inverted                            
         output                                                           
26       Set-reset latch with reset and inverted                          
         output                                                           
27       "D" flip-flop with set                                           
28       "D" flip-flop with set and inverted output                       
______________________________________                                    
Of course, other logic elements can also be implemented in accordance with this invention.
FIG. 2 illustrates the internal logic structure of one possible logic element which is capable of implementing all useful functions of the two variables A and B, with the functions being selected by configuration control signals C0, C0, C1, C1 . . . through C5, as shown in FIG. 2. For example, to implement an AND gate function using the structure shown in FIG. 2, the input leads labeled A and B are shunted past inverters 21 and 22, respectively, by high level signals on the C1 and C0 configuration control leads. Leads C1 and C0 are connected to well-known pass transistors 29c and 29d. (Throughout this specification a pass transistor will be represented by the symbol shown within the circles 29c and 29d). Low level signals are applied to the configuration control leads C0, C1, C4. Assuming that C0, C1 and all of the other leads are connected to N channel MOS pass transistors, the control signals, C2, C2, C3 and C3 are "don's cares". That is, these signals can be high or low without affecting the output signal. In addition, a high level signal on C5 is applied to enable AND gate 25. Thus AND gate 25 serves as a two input AND gate providing to NOR gate 26 the logical AND of input variables A and B. The signal from AND gate 25 is passed through NOR gate 26. NOR gate 26 converts the high level signal from gate 25 to a low level signal to turn off MOS transistor 29a (the source of which is grounded and the drain of which is connected to the output lead 28) and to turn on through NOR gate 27 N channel transistor 29b (the drain of which is connected to a power supply and the source of which is connected to both the output lead 28 and the drain of N channel transistor 29a). Thus the structure of FIG. 2 configured as described above is an AND gate. Other logic functions can also be produced by appropriate selection of the control signals to be supplied to the configuration control leads C0 through C5 to activate the appropriate pass transistors and gates within the structure.
FIG. 3A illustrates a 16 bit RAM capable of producing one of sixteen output signals in response to any one of sixteen possible combinations of input signals. Thus input signals A and B control the X decoder to select any one of the four columns in the 16 bit RAM. Input signals C and D control the Y decoder to select any one of the four rows in the 16 bit RAM. The 16 bit RAM produces an output signal representative of the bit at the intersection of the selected row and column. There are 16 such intersections and thus sixteen such bits. There are 216 possible combinations of functions capable of being represented by the set of 16 bits present in the 16 bit RAM. Thus, if a NOR gate is to be simulated by the 16 bits in the RAM, the Karnaugh map for the RAM would be as shown in FIG. 3C. In FIG. 3C all bits are "0" except the bit at the intersection of the first row (representing A=0, B= 0) and the first column (representing C=0, D=0). Should a less frequently used function be desired to be generated by the 16 bit RAM, (for example, should a "1" output signal be desired for A=1, B=0, C=0 and D=0) then a binary "1" is stored at the intersection of the second row and the first column. Should a binary "1" be desired both when A=0, B=0, C=0 and D=0 and also when A=1, B=0, C=0 and D=0, then a binary "1" is stored at each of the intersections of the first column with the first row and the second row. The logic circuit represented by this loading of the RAM is as shown in FIG. 3D. Thus the RAM of FIG. 3A represents an elegant and simple implementations of any one of 216 logic functions.
FIG. 3B shows another structure for yielding any one of sixteen select bits in a 16-bit RAM. Each of registers 0-15 in the vertical column to the left labelled "16 Select Bits", contains a selected signal, either binary 1 or 0. By selecting the proper combination of A, B, C, and D, a particular bit stored in a particular one of the sixteen locations in the 16 Select Bits register is transmitted to the output lead. Thus, for example, to transmit the bit in the "1" register to the output lead, the signal A, B, C, D is applied to the leads so labeled. To transmit the signal labeled "15" in the sixteenth location in the 16 Select Bits register to the output lead, the signal A, B, C, and D is applied to the appropriate columns. Again, any one of 216 logic functions can be implemented using this structure.
FIG. 4A illustrates an embodiment of a configurable logic array of this invention containing nine configurable logical elements. As shown in FIG. 4A, nine logical elements are placed on an integrated circuit chip together with interconnects and variable switches for connecting various leads to other leads. Each of logic elements 40-1 through 40-9 represents a collection of circuitry such as that shown in FIG. 2 or some similar structure capable of being configured as described above with respect to FIG. 2 to perform any one of a number of logic functions. To program the circuitry.[.,.]. of a logic element such as shown in FIG. 2 selected signals are applied to input leads of the configurable logic element identified as configuration control input leads from a source such as the RAM of FIG. 3A or 3B described above thereby to generate a desired logical function in each of the logic elements. In FIG. 4A, no specific I/O pad has been identified as an input lead for applying the configuration control signals to the logic elements. However, any particular I/O pad can be selected for this purpose. The configuration control bits can be input into the configurable logic array of FIG. 4A either in series or in parallel depending upon design considerations. Input of configuration control bits is described later in conjunction with FIGS. 5, 8A, and 8B. In addition, another I/O pad will be used on input clock signals to clock the logic elements both for the shifting in of the configuration control signals to each configurable logic elements and for controlling the operation of each logic element during the functioning of the integrated circuit chip in its intended manner. The combination of logic elements 40-1 through 40-9 as configured by the configuration control bits plus the interconnect structure of FIG. 4A yields the desired logical output for the Configurable Logic Array. FIG. 4B illustrates the meaning of the interconnects symbols used in FIG. 4A.
To configure a logic element such as logic element 40-1 (FIG. 4A) a number of bits must be applied to the configuration control leads such as leads C0 through C5, as shown, for example, in FIG. 2. To do this, a shift register is utilized, in the preferred embodiment as part of each configurable logic element. FIG. 5 illustrates a novel shift register of use in this invention. The shift register of FIG. 5 is illustrated showing two basic storage cells. Each storage cell is capable of storing one bit of information. Of course, an actual shift register will contain as many storage cells as required to configure the logic element of which the shift register is a part, to its desired configuration. In operation, an input signal provided on one of the I/O pads shown in FIG. 4A is applied to input lead 58 of FIG. 5, which in FIG. 4A would be one of the logic element input lines. This input signal (shown in FIG. 6D) contains the pulses to be stored in the shift register as configuration control bits to configure the configurable logic element to perform a desired logic function or to configure an interconnection between leads in a manner to be described shortly. Thus the sequence of pulses applied to input lead 58 of FIG. 5 represents those pulses which when stored in the storage cells of the shift register will activate the configuration control bits in the proper manner to achieve the desired functional and/or interconnection result. For example, if the circuit of FIG. 2 is to be configured to form an AND gate, the pulses C0, C1, C2, C3, C4, and C5 would be represented by 1,1,X,X,0,1.
The sequence of pulses applied to input lead 58 of FIG. 5 is synchronized with clocking pulses φ1 and φ2 applied to leads 57 and 59 respectively. Thus in the first period of operation clocking pulse φ1 goes high (FIG. 6A), clocking pulse φ2 is low (FIG. 6B), the hold signal (FIG. 6C) is low during shifting thereby facilitating the passage of data through sequentially connected cells 5-1, 5-2 et al. of the shift register of FIG. 5. To shift the pattern 01010 into the shift register, the following operations occur: The input signal (FIG. 6D) on lead 58 (FIG. 5) is low during approximately the first half cycle of the clocking period t1. The output signal Q1 of inverter 51-1 goes to a high level in response to the low level input signal on lead 58 and φ1 high to enable PASS transistor 53-1. During the first clocking period t1, the clock signal φ1 goes low (FIG. 6A) and the clock signal φ2 shortly thereafter goes high (FIG. 6B) to enable PASS transistor 55-1. Consequently, the high level output signal Q1 is transmitted to the input lead of inverter 52-1 by enabled pass transistor 55-1 and thereby produces a low level output signal Q1 on the output lead of inverter 52-1. Thus at the end of period t1, the output signal Q1 (FIG. 6F) from inverter 52-1 is low level. The output signals Q2 and Q2 (FIGS. 6G, 6H) from inverters 51-2 and 52-2 in the second cell are still indeterminate because no known signal has yet propagated to the second storage cell 5-2 to change the signals of these inverters to a known state.
At the beginning of the second period (labeled "t2" in FIGS. 6A through 6H), φ1 goes high (FIGS. 6A through 6H) and φ2 is low (FIG. 6B) having gone low before period t1 ended. The input signal (FIG. 6D) now has risen to a high level representing a binary 1 and thus the output signal Q1 of inverter 51-1 has gone low. The output signal Q1 of inverter 52-1 remains low because pass transistor 55-1 is held off by the low level φ2 signal. Some time through the second period φ1 goes low followed a fraction of time later by φ2 going high. At this time, the output signal Q1 is transmitted through pass transistor 55-1 to inverter 52-1 thereby driving the output signal Q1 from inverter 52-1 to high level. Meanwhile, during period t2 the previous low level signal Q1 from inverter 52-1 has driven the output signal Q2 of inverter 51-2 to a high level when d1 was at a high level to enable PASS transistor 53-2. Also the change in φ2 from a low level to a high level in the second half of period t2 to enable PASS transistor 55-2 drives the output signal Q2 from inverter 52-2 to a low level. In this manner, the input signal on lead 58 (FIG. 6D) is transmitted through each of the cells 5-1, 5-2, 5-3 et al. in the shift register. Upon the transfer into the shift register of the desired information, the hold signal (FIG. 6C) is enabled (i.e., driven to a high level) thereby to connect the feedback leads 50-1, 50-2, and 50-3 et al. from the output leads of inverters of one stage to input leads of inverters of the same stage so as to hold the information then in each cell indefinitely. In operation, the signal stored in a given cell of FIG. 5 is connected to a configuration control portion of a logic element or to an interconnect pass device.
The signals Q1, Q1, Q2, Q2, etc., from the shift register of FIG. 5 are directly connected to the (configuration) control inputs of a logic element such as shown in FIG. 4A or the pass devices of the configurable interconnect (to be explained later in conjunction with FIG. 9A). When φ1 is low, φ2 and hold may be brought high, thus holding the data indefinitely. The entire shaft register may be set or cleared by setting or clearing the input with φ1 and φ2 both high and HOLD low. Enough set/reset time must be allowed for the signal to propagate the entire length of the shift register to clear the shift register in this manner. Naturally this time is dependent upon the length of the shift register.
The shift register operates in its dynamic phase by storing the information being shifted as charge on the gates of the pass transistors (not shown in FIG. 5 but shown in FIG. 2 and well-known) comprising inverters 51-1, 52-1, 51-2, 52-2 et al. of the shift register. These inverters are of well-known design and will not be described in detail. The use of the dynamic shift register is an important feature of the invention because each cell of a dynamic shift register uses six transistors and thus takes up very little area. Uniquely, the dynamic shift register is converted to a static latch by adding only one transistor to each cell. Thus the novel dynamic shift register-static latch can be easily fabricated as part of a configurable logic element without adding significant complexity to the circuit or consuming significant semiconductor area. Because of the "hold" signal, the dynamic shift register can be driven at a very low frequency because placing the shift register on hold automatically refreshes the data. Thus a separate refresh circuit is not needed.
It will be apparent from the above description that the novel, dynamic shift register static latch circuit is unique in that it does not need refreshing once it has been latched into a hold position. This is accomplished by use of the feedback circuit comprising lead 50-1 and pass transistor 54-1 in cell 5-1, for example.
FIG. 7A shows an additional configurable logic array containing a plurality of configurable logic elements. In particular, configurable logic elements 70-1, 70-2, 70-4 and 70-5 are shown in their entirety while configurable logic elements 70-3, 70-6 and 70-7 through 70-9 are shown partially. The complete interconnections of these last five logical elements are not shown. The structure shown in FIG. 7A is merely illustrative of the types of configurations and connections which can be implemented using the configurable logic array of this invention and does not depict an actual circuit configured to carry out an intended function.
As shown in FIG. 7A, given leads can be interconnected by any one of a plurality of different means (i.e., interconnection structures). The symbols representing the interconnections shown in FIG. 7A are illustrated in FIG. 7B. In particular, while the schematics depicting various interconnections are to some extent self-explanatory, the conventions used in these schematics are explained in FIGS. 9A through 9G.
FIG. 9A is the schematic of a circuit for making a number of different interconnections between two cross-over leads such as shown in FIG. 7B-3, horizontal lead 90-1 and vertical lead 90-2. Thus, in FIG. 9A, pass transistor 2, when activated into the conducting state, connects lead 90-3 to lead 90-1. Pass transistor 1, when conducting, connects lead 90-3 to lead 90-4. Pass transistor 4, when conducting, connects lead 90-4 to lead 90-2 and pass transistor 3, when conducting, connects lead 90-1 to lead 90-2. Pass transistors 6 and 5, when off, separate lead 90-2 from lead 90-3 and separate lead 90-1 from lead 90-4 respectively. Thus, should it be desired to connect vertical lead 90-2 to vertical lead 90-3, pass transistor 6 is activated. Likewise, should it be desired to connect horizontal lead 90-1 to horizontal lead 90-4, pass transistor 5 is activated. The terminology used to represent the possible connections between a plurality of leads can become quite complex. Thus, a simplified notation system as shown in FIGS. 9B to 9E has been adopted.
In FIG. 9B, a plurality of pass transistors 92-1 through 92-13 are shown. The convention adopted in FIG. 9B is to have a given pass transistor represented by a single short time. Thus, the line labelled 92-1 represents a pass transistor. Pass transistor 92-1 is drawn so that its two ends point to the ends of the leads 91-5 and 91-6 being interconnected by pass transistor 92-1. Thus, the right end 93a of pass transistor 92-1 is aimed to the end 94a of lead 91-5. The left end 93b of pass transistor 92-1 is aimed to the end 94b of lead 91-6. For simplicity and to avoid cluttering the drawing in FIG. 9B, the other ends of the transistors are not labelled. However, by visually aligning the line representing a given pass transistor with the ends of the leads 91-1 through 91-6 the particular two leads interconnected by that pass transistor can be determined. Thus, pass transistor 92-7 interconnects horizontal lead 91-4 with vertical lead 92-8. Pass transistor 92-13 interconnects horizontal lead 91-4 with horizontal lead 91-2. Pass transistor 92-12 interconnects lead 91-3 with lead 91-5. Similar connections can be made between the other pass transistors and the other leads.
The above description assumes that only two leads are to be interconnected. If more than two leads are to be interconnected, the structure of FIG. 9B can also be used for this purpose. Thus, lead 91-3 can be connected to lead 91-2 by turning on pass transistor 92-10. Simultaneously, lead 91-3 can be connected to lead 91-4 by turning on pass transistor 92-13. Alternatively, lead 91-3 could be connected to lead 91-4 by turning on pass transistor 92-11. Of course, this would also connect lead 91-4 through lead 91-3 and pass transistor 92-10 to lead 91-2. In addition, lead 91-6, for example, could be connected to the three leads 91-2, 91-3, 91-4 by turning on pass transistor 92-8. Clearly, a large number of permutations of interconnections can be made using this structure. In the case where all the pass transistors are turned on, all the leads 91-1 to 91-6 are interconnected. The resulting structure has a large capacitance which can actually be used in circuits as a component. Of course, all leads in FIG. 9B can be interconnected by turning on as few as five pass transistors. Note that in FIG. 9B leads 91-1 and 91-2 cannot be directly connected to each other nor can lead 91-4 be directly connected to lead 91-5 without involving another lead. However, this omission is not of importance because in an integrated circuit there is in general no need for two parallel leads to carry the same signal. Of course, two additional pass transistors could be added to the structure of FIG. 9B. FIG. 9B is considered to be merely a symbolic representation of intersecting leads and leads 91-1 and 91-2 are merely shown for convenience as being parallel but in fact can represent non-parallel leads on an integrated circuit.
With reference to FIGS. 9C and 9D two other possible interconnection representations are illustrated. In FIG. 9D leads 1 to 8 are shown coming together at a complicated intersection. Leads 1 and 8 are parallel horizontal to the left, leads 4 and 5 are parallel horizontal to the right, leads 2 and 3 are parallel vertical up and leads 6 and 7 are parallel vertical down. Looking for a moment at lead 6, the end 6a of lead 6 can be connected sensibly to the ends "a" of leads 1, 2, 3, 4, 5 and 8. It is not sensible to connect lead 6 to lead 7 because theoretically the two leads are going in one direction and only one lead is required to carry the necessary information in that direction. Since lead 6 has six possible connections and there are eight leads, a total of forty-eight possible connections are offered by the structure of FIG. 9D. Since a given pass transistor connects two ends, twenty-four pass transistors are required to make the required forty-eight connections. The particular pass transistors have their ends labelled in FIG. 9D to illustrate the leads which are connected by a given pass transistor. Thus, pass transistor 6-8 interconnects the end 6a of lead 6 to the end 8a of lead 8. Pass transistor 7-5 interconnects the end of lead 7 to the end of lead 5. Because of the complexity of the structure of FIG. 9D a slightly different convention (a line with numbers on both ends) has been adopted for representing the pass transistor than that which was described above in conjunction with FIG. 9B.
FIG. 9E illustrates types of interconnections possible using the method of this invention. The leads interconnected are illustrated by showing continuous lines or broken lines depending on whether a given lead is connected to another lead or left unconnected. These interconnections are self-explanatory.
FIG. 9F illustrates the connections that would be possible if the four pass transistors 1-6, 2-5, 3-8, 4-7 omitted from FIG. 9D were in fact included. The dashed lines show the interconnections possible by these omitted transistors. Thus, FIG. 9D shows only twenty pass transistors whereas twenty-four pass transistors are necessary to make all possible connections between the leads. FIG. 9G illustrates the way in which it is possible to interconnect leads 4 and 7 without the four transistor connections shown in FIG. 9F being present. Thus, to connect lead 4 to lead 7, lead 4 is connected directly to lead 8 by means of transistor 4-8 while lead 8 is connected to lead 7 by pass transistor 8-7.
FIG. 9C illustrates the configuration of FIG. 9D with the full twenty-four interconnection transistors shown rather than merely the twenty shown in FIG. 9D. As shown in FIG. 9C pass transistors 1-6, 7-4, 2-5 and 8-3 have been added to the transistors shown in FIG. 9D. For convenience and to avoid cluttering the drawing, the other pass transistors shown in FIG. 9D have not been numbered in FIG. 9C except for pass transistor 6-8.
Note that each of the interconnections shown above in FIGS. 9A through 9G requires only one gate in order to connect one lead to another except for the particular configuration illustrated in FIG. 9G wherein two gates are required. This means that the speed of circuits formed using the interconnections of this invention is greater than the speed of circuits using prior art interconnections.
The symbology used in FIGS. 7B-1 through 7B-7 is identical to the symbology just explained in conjunction with FIGS. 9A through 9G. Thus, for example, FIG. 7B-7 illustrates on the left the symbol for a 20 transistor interchange and on the right the locations of the 20 transistors, and corresponds precisely to the interchange explained above in conjunction with FIG. 9D.
FIG. 7B-1 illustrates three transistors capable of making a T connection, a cross-connection, or a four-way connection but not a vertical only connection and therefore not a full interconnection. By full interconnection is meant the ability to connect each of the leads (in FIG. 7B-1, four leads) coming into a node to a given node or to each of the other leads coming into the node in any combination.
FIG. 7B-2 shows a one transistor interconnection to connect a row with a column. FIG. 7B-3 shows a six transistor full cross interconnection wherein any one of four leads coming into a node can be connected to any one of the other three leads. FIG. 7B-4 shows six leads coming into an intersection wherein ten pass transistors are used to interconnect any one of the six input leads to any one of the five other leads input to the node. FIG. 7B-5 illustrates a four-lead node where two horizontal continuous leads are interconnected with two separate vertical leads using five pass transistors.
FIG. 7B-6 illustrates a three-transistor interconnection wherein any one of three leads coming into a node can be interconnected with any one of the other two leads. FIG. 7B-7 illustrates the twenty-transistor interchange for interconnecting any one of eight input leads to any one of the other eight input leads except that lead parallel and adjacent to the lead being interconnected as illustrated in FIG. 9D and except for the four interconnections shown in FIG. 9F.
FIGS. 8A and 8B illustrate two possible systems capable of using the configurable logic arrays of this invention. In FIG. 8A, a microprocessor microcontroller produces address signals, control signals and data signals which are transmitted to a master configurable logic array. Also shown are N slave CLAs. As shown in FIG. 8A, the control bits to control each of the configurable logic elements in each slave configurable logic array are transmitted on the data leads from the microcontroller to the master configurable logic array. From the master configurable logic array, this data is transmitted in series to each one of N configurable logic arrays where N is a selected integer. The control bits for controlling the configuration of each configurable logic element in each of the configurable logic arrays are transmitted in series through slave configurable logic array 1, slave configurable logic array 2 through to the Nth configurable array. The data is stored in serial shift registers as described above in conjunction with FIG. 5. When the proper bits are located in the proper storage cells in each shift register, the hold signal shown in FIG. 6C is raised to a high level thereby locking each data bit into the proper location in the corresponding shift register thus configurating each configurable logic element in each configurable logic array. The data clock signals are applied on a separate lead to each configurable logic array, as shown, to clock in the control data.
The address arrow pointing to CLA (master) in FIG. 8A merely indicates that the microprocessor has the ability to select a particular master configurable logic array for receipt of data from the microprocessor. In FIG. 8B the master configurable logic array is capable of going into the nonvolatile memory with addresses to select particular data to be retrieved from the memory to be used to configure each of the slave configurable logic arrays. In FIG. 8A the microprocessor produces address signals which will go to off chip memory or to other circuitry (not shown).
In FIG. 8B the structure is similar to that shown in FIG. 8A except that a nonvolatile memory such as a ROM, EPROM or E2 PROM is used as the source for the configuration control bits to be transmitted into each of the configurable logic arrays. The structure of FIG. 8B is unique in that when power is turned on or when a reset signal is applied to the master CLA, the master CLA initiates the transfer of the information for controlling or configuring the Configurable Logic Array from the non-volatile memory to the master CLA and to the .[.salve.]. .Iadd.slave .Iaddend.CLAs 1 to N. In this sense, the structure of FIG. 8B is self-configuring in response to power on or a reset signal.
A single board microcomputer using a Configurable Logic Array of this invention is shown in FIG. 11. Configurable Logic Array 110 performs the chip decode functions, the latching functions and the various special logic that is necessary to implement a single board microcomputer. The CLA has an output lead ("DONE") which is low from the time the power is turned on until the single board microcomputer is fully functional.
The first event that occurs when power is turned on is that the Configurable Logic Array 110 forces the Z8002 CPU 111 into the reset state. Reset forces the outputs of the CPU to be tri-stated (i.e., to go to high impedance level) which makes it possible for the Configurable Logic Array to use the control lines from the CPU 111 while it is being configured. The Configurable Logic Array 110 through a set of address lines (LA1 -LA12) addresses the EPROMS 113 which are also used for the bootstrap of the Z8002 CPU 111. In addition, the EPROMS 113 have available in them configuration information for the CLA 110. The CLA 110 has signals which, during the self-loading time, are fixed so that particular bi-directional buffers 112 can be set in the correct direction for loading data from the EPROMS 113 to the Configurable Logic Array 110. Configurable Logic Array 110 then sequentially addresses locations in the EPROMS 113 which are read into the Configurable Logic Array 110 to configure the CLA 110. When array 110 is totally configured it then takes on its new functions and unlatches the DONE output which releases the reset line to the CPU 111. CPU 111 is then in control of the entire system. The decode used herein decodes the addresses from the CPU to create chip enables and chip selects for the various RAMS and EPROMS in the system and for the I/O devices as well.
The bi-directional selectable buffer 112 shown in FIG. 11 is illustrated in more detail in FIGS. 10A and 10B. FIG. 10A shows the bi-directional buffer as comprising an inverter 101 connected into a CMOS inverter comprising p-channel transistor 103 and n-channel transistor 104, the output lead of which is gated by pass transistor 108. In the other direction, inverter 102 feeds an input signal onto the gates of p-channel pass transistor 105 connected in series with n-channel transistor 106. The output from the node between the p- and n-channel transistors is controlled by pass transistor 107. The pass transistors 107 and 108 are activated by the Q, Q signals from the storage element which can comprise a standard flip-flop. Thus, the buffer passes a signal in one direction or the other on leads 109a or 109b, depending upon whether or not pass transistor 107 or pass transistor 108 is turned on.
FIG. 10B illustrates schematically the circuit of FIG. 10A. In FIG. 10B, the series connected p-channel and n- channel transistors 103 and 104 have been represented by inverter 103' and series connected p-channel pass transistor 105 and n-channel pass transistor 106 have been represented by .[.invertor.]. .Iadd.inverter .Iaddend.105'. Of course, in operation, the two circuits are identical.
With reference to FIGS. 4A and 4B directional amplifiers (shown by an X in a box) are used to amplify signals which have been attenuated by a number of pass transistors. This speeds up considerably the operation of the circuit. The delay of a signal increases approximately in proportion to the square of the number of pass transistors through which a signal must pass. The amplifier brings the signal voltage back to its normal level.
In view of the above description, it will be obvious to those skilled in the art that a configurable logic element in a Configurable Logic Array is capable of being reconfigured even after the Configurable Logic Array has been installed in a circuit. Indeed, this is one of the key advantages of the Configurable Logic Array of this invention. Thus, a Configurable Logic Array can be reconfigured to provide a new logical function as part of its normal operation in the system of which it is a part.
Another advantage of this invention is that the I/O pads can be used as either input or output pads and can be controlled by any internal signal using pass transistors.
While one embodiment of this invention has been described, other embodiments of this invention will be obvious in view of the above disclosure.

Claims (39)

I claim:
1. An interconnect structure for programmably interconnecting lines within an integrated circuit comprising:
at least three sets of interconnect lines including a first set, a second set, and a third set;
programmable means, not including said sets of interconnect lines, for connecting at least one of said lines in said first set to at least one of said lines in said second set, for connecting at least one of said lines in said first set to at least one of said lines in said third set, and for connecting at least one of said lines in said second set to at least one of said lines in said third set.
2. An array of interconnect structures, each said interconnect structure as in claim 1, and each interconnect structure in said array having its own selected number of interconnect lines and its own programmable means for connecting interconnect lines in its own first, second and third sets.
3. An interconnect structure as in claim 1 in which
said first set comprises two lines; and
said programmable means comprises
means for connecting each of said two lines in said first set to at least one line in said second set and
means for connecting each of said two lines in said first set to said at least one line in said third set.
4. An array of interconnect structures, each said interconnect structure as in claim 3, and each interconnect structure in said array having its own selected number of interconnect lines and its own programmable means for connecting interconnect lines in its own first, second and third sets.
5. An interconnect structure as in claim 3 in which
said second set comprises two lines, and
said third set comprises two lines; and
said programmable means comprises
means for connecting each of said two lines in said first set to each of said two lines in said second set,
means for connecting each of said two lines in said first set to each of said two lines in said third set, and
means for connecting each of said two lines in said second set to each of said two lines in said third set.
6. An array of interconnect structures, each said interconnect structure as in claim 5, and each interconnect structure in said array having its own selected number of interconnect lines and its own programmable means for connecting interconnect lines in its own first, second and third sets.
7. An interconnect structure as in claim 5 in which said at least three sets of interconnect lines includes a fourth set, and said interconnect structure further comprises:
programmable means for connecting at least one of said lines in said fourth set to at least one of said lines in said first, second and third sets.
8. An array of interconnect structures, each said interconnect structure as in claim 7, and each interconnect structure in said array having its own selected number of interconnect lines and its own programmable means for connecting interconnect lines in its own first, second, third and fourth sets.
9. An interconnect structure as in claim 7 in which said programmable means for connecting at least one of said lines in said first, second, third, and fourth sets comprises programmable means for connecting said two lines in said first set to each of said two lines in said second set, for connecting said two lines in said first set to each of said two lines in said third set, for connecting said two lines in said first set to each of two lines in said fourth set, for connecting said two lines in said second set to each of said two lines in said third set, for connecting said two lines in said second set to each of said two lines in said fourth set, and for connecting said two lines in said third set to each of said two lines in said fourth set.
10. An array of interconnect structures, each said interconnect structure as in claim 9, and each interconnect structure in said array having its own selected number of interconnect lines and its own programmable means for connecting.
11. A configurable system comprising:
one master configurable logic array;
a plurality of slave configurable logic arrays;
at least one memory;
said master configurable logic array having
means for retrieving data from said at least one memory,
means for first using said data for configuring itself, and
means for passing some of said data to said plurality of slave configurable logic arrays.
12. A configurable system as in claim 11 in which said means for retrieving data from said at least one memory includes
means for addressing said memory cells in said at least one memory, and
means for transferring selected data from said at least one memory to said master configurable logic array.
13. A configurable system as in claim 11 in which said plurality of slave configurable logic arrays include
means for being configured and
means for receiving and passing said data from said master configurable logic array to said plurality of slave configurable logic arrays whereby each of said slave configurable logic arrays is programmed according to said data in said at least one memory.
14. A configurable system as in claim 11 in which said means for passing some of said data to said plurality of slave configurable logic arrays comprises
means for passing said data through said plurality of slave configurable logic arrays sequentially by means of a shift register controlled by clock signals provided by said master configurable logic array.
15. A configurable system comprising:
a master configurable logic array;
a plurality of slave configurable logic arrays; and
a controller including
means for addressing said configurable logic arrays and
means for sending data to said configurable logic arrays; wherein said master configurable logic array includes
means for being configured by said data from said controller and
means for configuring said slave configurable logic arrays.
16. A configurable system as in claim 15 in which said slave configurable logic arrays include means for being configured and means for receiving and passing said data from said master configurable logic array.
17. A configurable system as in claim 15 in which said means for addressing further includes means for controlling sending said data from said means for sending data.
18. A configurable system as in claim 15 in which said means for configuring said slave configurable logic arrays comprises means for receiving data from said controller, means for passing some of said data to said slave configurable logic arrays and means for controlling the passing of said data to said slave configurable logic arrays.
19. A configurable system as in claim 15 in which said means for being configured of said master configurable logic array comprises means for receiving configuration control bits from said controller, and said means for configuring said slave configurable logic arrays comprises means for passing said data through said plurality of slave configurable logic arrays sequentially by means of a shift register as controlled by clock signals provided by said master configurable logic array.
20. A configurable system as in claim 11 wherein said memory is nonvolatile.
21. A programmable circuit comprising:
a plurality of configurable logic elements, each configurable logic element having a plurality of input leads and at least one output lead and having a programming means to cause said configurable logic element to perform a selected logic function;
a plurality of input/output ports;
a group of interconnect lines;
means for programmably connecting each of said input leads of each of said configurable logic elements to at least one of said interconnect lines;
means for programmably connecting said at least one output lead of each of said configurable logic elements to at least one of said interconnect lines;
means for programmably connecting each of said input/output ports to at least one of said interconnect lines; and
means for programmably connecting each one of said interconnect lines to at least one other of said interconnect lines;
whereby each of said input leads and each of said at least one output lead of each of said configurable logic elements can be connected directly or indirectly to each of said input/output ports and to each other, and whereby each of said configurable logic elements can be programmed to perform a selected one of a plurality of logic functions, and said configurable logic elements can be connected to each other and to said input/output ports in a selectable manner.
22. A programmable circuit as in claim 21 wherein said programming means of each of said configurable logic elements comprises logic element pass transistors.
23. A programmable circuit as in claim 22 wherein said programming means includes a plurality of memory cells and wherein each of said logic element pass transistors is controlled by a corresponding one of said plurality of memory cells.
24. A programmable circuit as in claim 23 in which said plurality of memory cells forms at least part of a shift register, control signals being loaded into said memory cells by being transferred through said shift register until each of said signals is properly located in said corresponding one of said memory cells.
25. A programmable circuit as in claim 23 in which said memory cells can be re-programmed.
26. A programmable circuit as in claim 21 in which each of said interconnect lines is capable of being connected directly or indirectly to one or more of the other of said interconnect lines, to one or more of said input/output ports, to one or more of said input leads and to one or more of said output leads, thereby allowing a user to connect said leads and lines together as desired.
27. A programmable .[.interconnect.]. circuit as in claim 21 wherein said means for programmably connecting each of said input leads of each of said configurable logic elements to at least one of said interconnect lines, said means for programmably connecting said at least one output lead of each of said configurable logic elements to at least one of said interconnect lines, said means for programmably connecting each of said input/output ports to at least one of said interconnect lines, and said means for programmably connecting each of said interconnect lines to at least one other of said interconnect lines comprise pass transistors.
28. A programmable circuit as in claim 27
wherein said means for programmably connecting further comprises memory means, said memory cells forming at least part of a shift register,
wherein each of said pass transistors is controlled by one of said memory cells, and
wherein said means for programmably connecting further comprises means for transferring said series of signals through said shift register until each of said signals is properly located in an associated one of said memory cells uniquely coupled to one of said pass transistors.
29. A programmable circuit as in claim 28 in which said means for programmably connecting includes means for changing the contents of said memory cells, thereby to reconfigure said programmable circuit. .Iadd.
30. A programmable circuit comprising:
a plurality of logic elements, each logic element having a plurality of input leads and at least one output lead, and having a programming means to cause said logic element to perform a selected logic function;
a plurality of input/output ports;
a group of interconnect lines;
means for programmably connecting each of said input leads of each of said logic elements to at least one of said interconnect lines;
means for programmably connecting said at least one output lead of each of said logic elements to at least one of said interconnect lines;
means for programmably connecting each of said input/output ports to at least one of said interconnect lines; and
means for programmably connecting each of said interconnect lines to at least one other of said interconnect lines;
whereby each of said logic elements can be programmed to perform a selected one of a plurality of logic functions, and said logic elements can be connected to each other and to said input/output ports in a selectable manner. .Iaddend. .Iadd.31. A programmable circuit as in claim 30 wherein programming means of each of said logic elements comprises transistors. .Iaddend. .Iadd.32. A programmable circuit as in claim 31 wherein said programming means includes a plurality of memory cells and wherein said transistors are controlled by said plurality of memory cells. .Iaddend. .Iadd.33. A programmable circuit as in claim 32 in which said plurality of memory cells forms at least part of a shift register, control signals being loaded into said memory cells by being transferred through said shift register until each of said signals is properly located in said corresponding one of said memory cells. .Iaddend. .Iadd.34. A programmable circuit as in claim 32 in which said memory cells can be re-programmed.
.Iaddend. .Iadd.35. A programmable circuit as in claim 30 in which each of said interconnect lines is capable of being connected directly or indirectly to one or more of the other of said interconnect lines, to one or more of said input/output ports, to one or more of said input leads and to one or more of said output leads, thereby allowing a user to connect said leads and lines together as desired. .Iaddend. .Iadd.36. A programmable circuit as in claim 30 wherein said means for programmably connecting comprise transistors. .Iaddend. .Iadd.37. A programmable circuit as in claim 36
wherein said means for programmably connecting further comprise memory cells, said memory cells forming at least part of a shift register,
wherein said transistors are controlled by said memory cells, and
wherein said means for programmably connecting further comprises means for transferring said series of signals through said shift register until each of said signals is properly located in an associated one of said memory cells. .Iaddend. .Iadd.38. A programmable circuit as in claim 37 in which said means for programmably connecting includes means for changing the contents of said memory cells, thereby to reconfigure said programmable circuit. .Iaddend. .Iadd.39. A programmable circuit comprising:
a plurality of logic elements, each logic element having a plurality of input leads and at least one output lead, and having a programming means to cause said logic element to perform a selected logic function;
a group of interconnect lines;
means for programmably connecting each of said input leads of each of said logic elements to at least one of said interconnect lines;
means for programmably connecting said at least one output lead of each of said logic elements to at least one of said interconnect lines; and
means for programmably connecting each of said interconnect lines to at least one other of said interconnect lines;
whereby each of said logic elements can be programmed to perform a selected one of a plurality of logic functions, and said logic elements can be
connected to each other in a selectable manner. .Iaddend. .Iadd.40. A programmable circuit as in claim 39 wherein said programming means of each of said configurable logic elements comprises transistors. .Iaddend. .Iadd.41. A programmable circuit as in claim 40 wherein said programming means includes a plurality of memory cells and wherein said transistors are controlled by said plurality of memory cells. .Iaddend. .Iadd.42. A programmable circuit as in claim 41 in which said plurality of memory cells forms at least part of a shift register, control signals being loaded into said memory cells by being transferred through said shift register until each of said signals is properly located in said corresponding one of said memory cells. .Iaddend. .Iadd.43. A programmable circuit as in claim 41 in which said memory cells can be re-programmed. .Iaddend. .Iadd.44. A programmable circuit as in claim 39 in which each of said interconnect lines is capable of being connected directly or indirectly to one or more of the other of said interconnect lines, to one or more of said input leads and to one or more of said output leads, thereby allowing a user to connect said leads and lines together as desired. .Iaddend. .Iadd.45. A programmable circuit as in claim 39 wherein said means for programmably connecting comprise transistors. .Iaddend. .Iadd.46. A programmable circuit as in claim 45
wherein said means for programmably connecting further comprise memory cells, said memory cells forming at least part of a shift register,
wherein said transistors are controlled by said memory cells, and
wherein said means for programmably connecting further comprises means for transferring said series of signals through said shift register until each of said signals is properly located in an associated one of said memory
cells. .Iaddend. .Iadd.47. A programmable circuit as in claim 46 in which said means for programmably connecting includes means for changing the contents of said memory cells, thereby to reconfigure said programmable circuit. .Iaddend. .Iadd.48. A programmable integrated circuit comprising:
a plurality of logic elements, each logic element having a plurality of input leads and at least one output lead;
a group of interconnect lines;
means for programmably connecting said input and output leads of said logic elements to each other through said interconnect lines; and
programming means responsive to electrical signals for causing said logic elements to perform a selected logic function, and causing said input and output leads of said logic elements to be connected together as desired. .Iaddend. .Iadd.49. A programmable circuit as in claim 48 wherein said programming means of each of said logic elements comprises transistors. .Iaddend. .Iadd.50. A programmable circuit as in claim 49 wherein said programming means includes a plurality of memory cells and wherein said transistors are controlled by said plurality of memory cells. .Iaddend. .Iadd.51. A programmable circuit as in claim 50 in which said plurality of memory cells forms at least part of a shift register, control signals being loaded into said memory cells by being transferred through said shift register until each of said signals is properly located in said corresponding one of said memory cells. .Iaddend. .Iadd.52. A programmable circuit as in claim 50 in which said memory cells can be re-programmed. .Iaddend. .Iadd.53. A programmable circuit as in claim 48 in which each of said interconnect lines is capable of being connected directly or indirectly to one or more of the other of said interconnect lines, to one or more of said input leads and to one or more of said output leads, thereby allowing a user to connect said leads and lines together as desired. .Iaddend. .Iadd.54. A programmable circuit as in claim 48 wherein said means for programmably connecting comprise transistors. .Iaddend. .Iadd.55. A programmable circuit as in claim 54
wherein said means for programmably connecting further comprise memory cells, said memory cells forming at least part of a shift register,
wherein said transistors are controlled by said memory cells, and
wherein said means for programmably connecting further comprises means for transferring said series of signals through said shift register until each of said signals is properly located in an associated one of said memory
cells. .Iaddend. .Iadd.56. A programmable circuit as in claim 55 in which said means for programmably connecting includes means for changing the contents of said memory cells, thereby to reconfigure said programmable circuit. .Iaddend. .Iadd.57. A configurable logic array chip comprising:
a plurality of storage cells for holding configuration information, said configuration information configuring said configurable logic array chip; and
means for causing said configuration information to be loaded into said storage cells from a device external to said configurable logic array chip. .Iaddend. .Iadd.58. A configurable logic array chip as in claim 57 in which said means for causing said configuration information to be loaded causes said configuration information to be loaded in response to said system being powered up. .Iaddend. .Iadd.59. A configurable logic array chip as in claim 57 in which said means for causing said configuration information to be loaded causes said configuration information to be loaded in response to said system being reset. .Iaddend. .Iadd.60. A system comprising:
said configurable logic array chip as in claim 57; and
said device external to said configurable logic array chip. .Iaddend. .Iadd.61. A system as in claim 60 in which said means for storing said configuration information comprises a nonvolatile memory device. .Iaddend. .Iadd.62. A system as in claim 61 further including means for loading said configuration information into said configurable logic array chip as a serial bit stream. .Iaddend. .Iadd.63. A system as in claim 61 further including means for loading said configuration information into said configurable logic array chip in parallel. .Iaddend. .Iadd.64. A system comprising a configurable logic array chip as in claim 57 and further comprising second means not part of said configurable logic array chip for causing said configuration information to be loaded into said storage cells. .Iaddend. .Iadd.65. A system as in claim 64 in which said second means comprises a microprocessor. .Iaddend. .Iadd.66. A system as in claim 65 further comprising said device external to said configurable logic array chip. .Iaddend. .Iadd.67. A system as in claim 66 in which said means for storing said configuration information comprises a nonvolatile memory. .Iaddend. .Iadd.68. A system as in claim 65 in which said microprocessor provides control, address, and data information to said configurable logic array chip. .Iaddend. .Iadd.69. A system comprising a first configurable logic array chip as in claim 57 and further comprising:
a second configurable logic array chip comprising means for holding information in storage cells, said information in said storage cells configuring said second configurable logic array chip; and
means for passing configuration information from said first configurable logic array chip to said second configurable logic array chip. .Iaddend.
.Iadd.70. A system as in claim 69 in which said means for passing comprises a shift register. .Iaddend. .Iadd.71. A system comprising:
a first configurable logic array chip;
means for loading configuration information into said first configurable logic array chip;
said first configurable logic array chip including means for loading configuration information into a second configurable logic array chip. .Iaddend. .Iadd.72. A system as in claim 71 in which said means for loading configuration information into said first configurable logic array chip is a microprocessor. .Iaddend. .Iadd.73. A system as in claim 72 in which said microprocessor has access to a storage device for holding said configuration information. .Iaddend. .Iadd.74. A system as in claim 71 in which said means for loading configuration information into said first configurable logic array chip is a third configurable logic array chip. .Iaddend. .Iadd.75. A system as in claim 71 further comprising said second configurable logic array chip connected so as to receive said configuration information from said first configurable logic array chip. .Iaddend. .Iadd.76. A system as in claim 73 in which said first and second configurable logic array chips include means for being configured by said configuration information. .Iaddend. .Iadd.77. In a system having a configurable logic array chip and means for loading configuration information into said configurable logic array chip, and means for operating said configurable logic array chip, a method for configuring said configurable logic array chip comprising the steps of:
connecting to said configurable logic array chip means for taking data from a supplier of configuration information;
disabling said means for operating said configurable logic array chip;
taking said information from said supplier of information; and
enabling said means for operating said configurable logic array chip. .Iaddend. .Iadd.78. A method for configuring as in claim 77 comprising the further step, performed between disabling and enabling said means for operating, of passing some of said information from said configurable logic array chip to another configurable logic array chip. .Iaddend. .Iadd.79. A method for configuring as in claim 77 in which said step of connecting a means for taking said information from said supplier of configuration information comprises connecting leads from said configurable logic array chip to means for controlling direction on a line such that initial direction of said line is established for allowing data to flow from said supplier of information to said configurable logic array
chip. .Iaddend. .Iadd.80. A method for configuring as in claim 77 in which said step of taking said information from said supplier of information comprises sequentially addressing said supplier of information with a counter which is part of said configurable logic array chip. .Iaddend. .Iadd.81. A configurable system comprising:
one master configurable logic array;
at least one slave configurable logic array;
at least one memory;
said master configurable logic array having
means for retrieving data from said at least one memory,
means for first using said data for configuring itself, and
means for passing some of said data to said at least one slave configurable logic array. .Iaddend. .Iadd.82. A configurable system as in claim 81 in which said means for retrieving data from said at least one memory includes
means for addressing memory cells in said at least one memory, and
means for transferring selected data from said at least one memory to said
master configurable logic array. .Iaddend. .Iadd.83. A configurable system as in claim 81 in which said at least one slave configurable logic array includes
means for being configured and
means for receiving and passing said data from said master configurable logic array to said at least one slave configurable logic array whereby each of said at least one slave configurable logic array is programmed according to said data in said at least one memory. .Iaddend. .Iadd.84. A configurable system as in claim 81 in which said means for passing some of said data to said at least one slave configurable logic array comprises
means for passing said data through said at least one slave configurable logic array sequentially by means of a shift register controlled by clock signals provided by said master configurable logic array. .Iaddend. .Iadd.85. A configurable system as in claim 81 wherein said memory is nonvolatile. .Iaddend. .Iadd.86. A configurable system comprising:
a master configurable logic array;
at least one slave configurable logic array; and a controller including
means for addressing said configurable logic arrays and
means for sending data to said configurable logic arrays;
wherein said master configurable logic array includes
means for being configured by said data from said controller and
means for configuring said at least one slave configurable logic array. .Iaddend. .Iadd.87. A configurable system as in claim 86 in which said at least one slave configurable logic array includes means for being configured and means for receiving and passing said data from said master
configurable logic array. .Iaddend. .Iadd.88. A configurable system as in claim 86 in which said means for addressing further includes means for controlling sending said data from said means for sensing data. .Iaddend. .Iadd.89. A configurable system as in claim 86 in which said means for configuring said at least one slave configurable logic array comprises means for receiving data from said controller, means for passing some of said data to said at least one slave configurable logic array, and means for controlling the passing of said data to said at least one slave configurable logic array. .Iaddend. .Iadd.90. A configurable system as in claim 86 in which said means for being configured of said master configurable logic array comprises means for receiving configuration control bits from said controller, and said means for configuring said at least one slave configurable logic array comprises means for passing said data through said at least one slave configurable logic array sequentially by means of a shift register as controlled by clock signals provided by said master configurable logic array. .Iaddend. .Iadd.91. An interconnect structure for programmably interconnecting lines within an integrated circuit comprising:
at least three sets of interconnect lines including a first set, a second set, and a third set;
programmable means for connecting at least one of said lines in said first set to at least one of said lines in said second set, for connecting at least one of said lines in said first set to at least one of said lines in said third set, and for connecting at least one of said lines in said second set to at least one of said lines in said third set, each pair of said lines being connectable by a single programmable means. .Iaddend. .Iadd.92. An interconnect structure for programmably interconnecting lines within an integrated circuit comprising:
at least three sets of interconnect lines including a first set, a second set, and a third set;
first programmable means for connecting at least one of said lines in said first set to at least one of said lines in said second set, second programmable means for connecting at least one of said lines in said first set to at least one of said lines in said third set, and third programmable means for connecting at least one of said lines in said second set to at least one of said lines in said third set, said first, second, and third programmable means being controllable independent of each other. .Iaddend. .Iadd.93. An interconnect structure for programmably interconnecting lines within an integrated circuit comprising:
at least three sets of interconnect lines including a first set, a second set, and a third set;
first programmable means for connecting at least one of said lines in said first set to at least one of said lines in said second set, second programmable means for connecting at least one of said lines in said first set to at least one of said lines in said third set, and third programmable means for connecting at least one of said lines in said second set to at least one of said lines in said third set, said first, second, and third programmable means being connected such that a signal can pass between any two of said at least one of said lines in said first, second, and third sets through only a single means for connecting. .Iaddend. .Iadd.94. An array of interconnect structures, each said interconnect structure as in claim 91, 92 or 93, and each interconnect structure in said array having its own selected number of interconnect lines and its own programmable means for connecting interconnect lines in its own first, second and third sets. .Iaddend. .Iadd.95. An interconnect structure as in claim 91, 92, or 93 in which said first set comprises two lines; and said programmable means comprises
means for connecting each of said two lines in said first set to at least one line in said second set and
means for connecting each of said two lines in said first set to said at least one line in said third set. .Iaddend. .Iadd.96. An array of interconnect structures, each said interconnect structure as in claim 95, and each interconnect structure in said array having its own selected number of interconnect lines and its own programmable means for connecting interconnect lines in its own first, second and third sets. .Iaddend. .Iadd.97. An interconnect structure as in claim 95 in which said second set comprises two lines, and said third set comprises two lines; and said programmable means comprises
means for connecting each of said two lines in said first set to each of said two lines in said second set,
means for connecting each of said two lines in said first set to each of said two lines in said third set, and
means for connecting each of said two lines in said second set to each of said two lines in said third set. .Iaddend. .Iadd.98. An array of interconnect structures, each said interconnect structure as in claim 97, and each interconnect structure in said array having its own selected number of interconnect lines and its own programmable means for connecting interconnect lines in its own first, second and third sets. .Iaddend. .Iadd.99. An interconnect structure as in claim 97 in which said at least three sets of interconnect lines includes a fourth set, and said interconnect structure further comprises:
programmable means for connecting at least one of said lines in said fourth set to at least one of said lines in said first, second and third sets. .Iaddend. .Iadd.100. An array of interconnect structures, each said interconnect structure as in claim 99, and each interconnect structure in said array having its own selected number of interconnect lines and its own programmable means for connecting interconnect lines in its own first, second, third and fourth sets. .Iaddend. .Iadd.101. An interconnect structure as in claim 99 in which said programmable means for connecting at least one of said lines in said first, second, third, and fourth sets comprises programmable means for connecting said two lines in said first set to each of said two lines in said second set, for connecting said two lines in said first set to each of said two lines in said third set, for connecting said two lines in said first set to each of two lines in said fourth set, for connecting said two lines in said second set to each of said two lines in said third set, for connecting said two lines in said second set to each of said two lines in said fourth set, and for connecting said two lines in said third set to each of said two lines in said fourth set. .Iaddend. .Iadd.102. An array of interconnect structures, each said interconnect structure as in claim 101, and each interconnect structure in said array having its own selected number of interconnect
lines and its own programmable means for connecting. .Iaddend. .Iadd.103. A programmable circuit comprising:
a plurality of logic elements, each logic element having a plurality of input leads for receiving input signals and at least one output lead, each said logic element being configurable to perform a selected logic function to said input signals, and providing said logic function as an output signal on said output lead;
a group of interconnect lines;
programming means responsive to electrical signals for connecting selected ones of said input and output leads of said logic elements to each other through said interconnect lines and causing said logic elements to perform a selected logic function. .Iaddend. .Iadd.104. Structure of claim 103 wherein said logic elements can be programmed to perform logic functions on said input signals asynchronously. .Iaddend. .Iadd.105. Structure of claim 103 wherein said logic elements can be programmed to provide said output signal on said interconnect lines asynchronously. .Iaddend.
US07/720,275 1984-03-12 1991-06-24 Configurable electrical circuit having configurable logic elements and configurable interconnects Expired - Lifetime USRE34363E (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US07/720,275 USRE34363E (en) 1984-03-12 1991-06-24 Configurable electrical circuit having configurable logic elements and configurable interconnects

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US58847884A 1984-03-12 1984-03-12
US07/720,275 USRE34363E (en) 1984-03-12 1991-06-24 Configurable electrical circuit having configurable logic elements and configurable interconnects

Related Parent Applications (2)

Application Number Title Priority Date Filing Date
US58847884A Continuation 1984-03-12 1984-03-12
US07/158,011 Reissue US4870302A (en) 1984-03-12 1988-02-19 Configurable electrical circuit having configurable logic elements and configurable interconnects

Publications (1)

Publication Number Publication Date
USRE34363E true USRE34363E (en) 1993-08-31

Family

ID=27080295

Family Applications (1)

Application Number Title Priority Date Filing Date
US07/720,275 Expired - Lifetime USRE34363E (en) 1984-03-12 1991-06-24 Configurable electrical circuit having configurable logic elements and configurable interconnects

Country Status (1)

Country Link
US (1) USRE34363E (en)

Cited By (370)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994011949A1 (en) * 1992-11-10 1994-05-26 Infinite Technology Corporation Programmable logic networks
US5336950A (en) * 1991-08-29 1994-08-09 National Semiconductor Corporation Configuration features in a configurable logic array
US5367208A (en) * 1986-09-19 1994-11-22 Actel Corporation Reconfigurable programmable interconnect architecture
US5424589A (en) * 1993-02-12 1995-06-13 The Board Of Trustees Of The Leland Stanford Junior University Electrically programmable inter-chip interconnect architecture
US5426379A (en) * 1994-07-29 1995-06-20 Xilinx, Inc. Field programmable gate array with built-in bitstream data expansion
US5430687A (en) * 1994-04-01 1995-07-04 Xilinx, Inc. Programmable logic device including a parallel input device for loading memory cells
US5450022A (en) * 1994-10-07 1995-09-12 Xilinx Inc. Structure and method for configuration of a field programmable gate array
US5453706A (en) * 1994-04-01 1995-09-26 Xilinx, Inc. Field programmable gate array providing contention free configuration and reconfiguration
US5457408A (en) * 1994-11-23 1995-10-10 At&T Corp. Method and apparatus for verifying whether a bitstream received by a field programmable gate array (FPGA) is intended for that FPGA
WO1995030952A1 (en) * 1994-05-04 1995-11-16 Atmel Corporation Programmable logic device with regional and universal signal routing
US5473267A (en) * 1993-02-16 1995-12-05 Sgs-Thomson Microelectronics Limited Programmable logic device with memory that can store routing data of logic data
US5488582A (en) * 1992-07-02 1996-01-30 Atmel Corporation Non-disruptive, randomly addressable memory system
US5504440A (en) * 1994-01-27 1996-04-02 Dyna Logic Corporation High speed programmable logic architecture
US5504439A (en) * 1994-04-01 1996-04-02 Xilinx, Inc. I/O interface cell for use with optional pad
US5519629A (en) * 1993-07-19 1996-05-21 Hewlett-Packard Company Tileable gate array cell for programmable logic devices and gate array having tiled gate array cells
US5523706A (en) * 1993-07-02 1996-06-04 Altera Corporation High speed, low power macrocell
US5537057A (en) * 1995-02-14 1996-07-16 Altera Corporation Programmable logic array device with grouped logic regions and three types of conductors
US5541530A (en) * 1995-05-17 1996-07-30 Altera Corporation Programmable logic array integrated circuits with blocks of logic regions grouped into super-blocks
US5543732A (en) * 1995-05-17 1996-08-06 Altera Corporation Programmable logic array devices with interconnect lines of various lengths
US5543730A (en) * 1995-05-17 1996-08-06 Altera Corporation Techniques for programming programmable logic array devices
US5550843A (en) * 1994-04-01 1996-08-27 Xilinx, Inc. Programmable scan chain testing structure and method
US5559450A (en) * 1995-07-27 1996-09-24 Lucent Technologies Inc. Field programmable gate array with multi-port RAM
US5561367A (en) * 1992-07-23 1996-10-01 Xilinx, Inc. Structure and method for testing wiring segments in an integrated circuit device
US5565793A (en) * 1995-08-22 1996-10-15 Altera Corporation Programmable logic array integrated circuit devices with regions of enhanced interconnectivity
US5570039A (en) * 1995-07-27 1996-10-29 Lucent Technologies Inc. Programmable function unit as parallel multiplier cell
US5570040A (en) * 1995-03-22 1996-10-29 Altera Corporation Programmable logic array integrated circuit incorporating a first-in first-out memory
US5572148A (en) * 1995-03-22 1996-11-05 Altera Corporation Programmable logic array integrated circuit with general-purpose memory configurable as a random access or FIFO memory
US5581198A (en) * 1995-02-24 1996-12-03 Xilinx, Inc. Shadow DRAM for programmable logic devices
WO1996042140A1 (en) * 1995-06-09 1996-12-27 Advanced Micro Devices, Inc. Field programmable gate array (fpga) with interconnect encoding
US5590305A (en) * 1994-03-28 1996-12-31 Altera Corporation Programming circuits and techniques for programming logic
US5596766A (en) * 1992-11-10 1997-01-21 Infinite Technology Corporation Configurable logic networks
WO1997003444A1 (en) * 1995-07-10 1997-01-30 Xilinx, Inc. System comprising field programmable gate array and intelligent memory
US5614844A (en) * 1994-01-27 1997-03-25 Dyna Logic Corporation High speed programmable logic architecture
US5614840A (en) * 1995-05-17 1997-03-25 Altera Corporation Programmable logic array integrated circuits with segmented, selectively connectable, long interconnection conductors
US5617573A (en) * 1994-05-23 1997-04-01 Xilinx, Inc. State splitting for level reduction
US5627480A (en) * 1996-02-08 1997-05-06 Xilinx, Inc. Tristatable bidirectional buffer for tristate bus lines
US5631576A (en) * 1995-09-01 1997-05-20 Altera Corporation Programmable logic array integrated circuit devices with flexible carry chains
US5631578A (en) * 1995-06-02 1997-05-20 International Business Machines Corporation Programmable array interconnect network
US5633806A (en) * 1992-10-12 1997-05-27 Mitsubishi Denki Kabushiki Kaisha Semiconductor integrated circuit and method of designing same
US5646546A (en) * 1995-06-02 1997-07-08 International Business Machines Corporation Programmable logic cell having configurable gates and multiplexers
US5646544A (en) * 1995-06-05 1997-07-08 International Business Machines Corporation System and method for dynamically reconfiguring a programmable gate array
US5656950A (en) * 1995-10-26 1997-08-12 Xilinx, Inc. Interconnect lines including tri-directional buffer circuits
US5670895A (en) * 1995-10-19 1997-09-23 Altera Corporation Routing connections for programmable logic array integrated circuits
US5671432A (en) * 1995-06-02 1997-09-23 International Business Machines Corporation Programmable array I/O-routing resource
US5672985A (en) * 1995-12-18 1997-09-30 Altera Corporation Programmable logic array integrated circuits with carry and/or cascade rings
US5677638A (en) * 1996-02-02 1997-10-14 Xilinx, Inc. High speed tristate bus with multiplexers for selecting bus driver
US5682107A (en) * 1994-04-01 1997-10-28 Xilinx, Inc. FPGA architecture with repeatable tiles including routing matrices and logic matrices
US5684980A (en) * 1992-07-29 1997-11-04 Virtual Computer Corporation FPGA virtual computer for executing a sequence of program instructions by successively reconfiguring a group of FPGA in response to those instructions
US5689195A (en) * 1995-05-17 1997-11-18 Altera Corporation Programmable logic array integrated circuit devices
US5691653A (en) * 1996-01-16 1997-11-25 Altera Corporation Product term based programmable logic array devices with reduced control memory requirements
US5694058A (en) * 1996-03-20 1997-12-02 Altera Corporation Programmable logic array integrated circuits with improved interconnection conductor utilization
US5703498A (en) * 1995-06-02 1997-12-30 International Business Machines Corporation Programmable array clock/reset resource
US5705938A (en) * 1995-05-02 1998-01-06 Xilinx, Inc. Programmable switch for FPGA input/output signals
US5723984A (en) 1996-06-07 1998-03-03 Advanced Micro Devices, Inc. Field programmable gate array (FPGA) with interconnect encoding
US5726584A (en) * 1996-03-18 1998-03-10 Xilinx, Inc. Virtual high density programmable integrated circuit having addressable shared memory cells
US5726484A (en) * 1996-03-06 1998-03-10 Xilinx, Inc. Multilayer amorphous silicon antifuse
US5737631A (en) * 1995-04-05 1998-04-07 Xilinx Inc Reprogrammable instruction set accelerator
US5737235A (en) * 1995-05-02 1998-04-07 Xilinx Inc FPGA with parallel and serial user interfaces
US5742179A (en) * 1994-01-27 1998-04-21 Dyna Logic Corporation High speed programmable logic architecture
US5744979A (en) * 1992-07-23 1998-04-28 Xilinx, Inc. FPGA having logic cells configured by SRAM memory cells and interconnect configured by antifuses
US5748979A (en) * 1995-04-05 1998-05-05 Xilinx Inc Reprogrammable instruction set accelerator using a plurality of programmable execution units and an instruction page table
US5752077A (en) * 1995-05-15 1998-05-12 Motorola, Inc. Data processing system having a multi-function input/output port with individual pull-up and pull-down control
US5754823A (en) * 1995-02-23 1998-05-19 Datalogic, Inc. Configurable I/O system using logic state arrays
US5760611A (en) * 1996-10-25 1998-06-02 International Business Machines Corporation Function generator for programmable gate array
US5764080A (en) * 1995-08-24 1998-06-09 Altera Corporation Input/output interface circuitry for programmable logic array integrated circuit devices
US5773993A (en) * 1996-09-26 1998-06-30 Xilinx, Inc. Configurable electronic device which is compatible with a configuration bitstream of a prior generation configurable electronic device
US5781032A (en) * 1996-09-09 1998-07-14 International Business Machines Corporation Programmable inverter circuit used in a programmable logic cell
US5781756A (en) * 1994-04-01 1998-07-14 Xilinx, Inc. Programmable logic device with partially configurable memory cells and a method for configuration
US5787007A (en) * 1996-01-30 1998-07-28 Xilinx, Inc. Structure and method for loading RAM data within a programmable logic device
US5789938A (en) 1996-09-04 1998-08-04 Xilinx, Inc. Structure and method for reading blocks of data from selectable points in a memory device
US5815726A (en) * 1994-11-04 1998-09-29 Altera Corporation Coarse-grained look-up table architecture
US5818730A (en) * 1996-12-05 1998-10-06 Xilinx, Inc. FPGA one turn routing structure and method using minimum diffusion area
US5821773A (en) * 1995-09-06 1998-10-13 Altera Corporation Look-up table based logic element with complete permutability of the inputs to the secondary signals
US5821772A (en) * 1996-08-07 1998-10-13 Xilinx, Inc. Programmable address decoder for programmable logic device
US5828230A (en) * 1997-01-09 1998-10-27 Xilinx, Inc. FPGA two turn routing structure with lane changing and minimum diffusion area
US5835998A (en) * 1996-04-04 1998-11-10 Altera Corporation Logic cell for programmable logic devices
US5844854A (en) * 1996-09-18 1998-12-01 Altera Corporation Programmable logic device with two dimensional memory addressing
US5844422A (en) * 1996-11-13 1998-12-01 Xilinx, Inc. State saving and restoration in reprogrammable FPGAs
US5847580A (en) * 1996-10-10 1998-12-08 Xilinx, Inc. High speed bidirectional bus with multiplexers
US5847577A (en) * 1995-02-24 1998-12-08 Xilinx, Inc. DRAM memory cell for programmable logic devices
US5869979A (en) * 1996-04-05 1999-02-09 Altera Corporation Technique for preconditioning I/Os during reconfiguration
US5870327A (en) * 1996-07-19 1999-02-09 Xilinx, Inc. Mixed mode RAM/ROM cell using antifuses
US5872463A (en) * 1996-04-04 1999-02-16 Altera Corporation Routing in programmable logic devices using shared distributed programmable logic connectors
US5880597A (en) * 1996-09-18 1999-03-09 Altera Corporation Interleaved interconnect for programmable logic array devices
US5883526A (en) * 1997-04-17 1999-03-16 Altera Corporation Hierarchical interconnect for programmable logic devices
US5889413A (en) * 1996-11-22 1999-03-30 Xilinx, Inc. Lookup tables which double as shift registers
US5889411A (en) * 1997-02-26 1999-03-30 Xilinx, Inc. FPGA having logic element carry chains capable of generating wide XOR functions
US5894565A (en) * 1996-05-20 1999-04-13 Atmel Corporation Field programmable gate array with distributed RAM and increased cell utilization
US5907248A (en) * 1997-02-26 1999-05-25 Xilinx, Inc. FPGA interconnect structure with high-speed high fanout capability
US5909126A (en) * 1995-05-17 1999-06-01 Altera Corporation Programmable logic array integrated circuit devices with interleaved logic array blocks
US5923868A (en) * 1994-07-29 1999-07-13 Cypress Semiconductor Corp. Methods for maximizing routability in a programmable interconnect matrix having less than full connectability
US5936424A (en) * 1996-02-02 1999-08-10 Xilinx, Inc. High speed bus with tree structure for selecting bus driver
US5936425A (en) * 1995-05-17 1999-08-10 Altera Corporation Tri-statable input/output circuitry for programmable logic
US5943242A (en) 1995-11-17 1999-08-24 Pact Gmbh Dynamically reconfigurable data processing system
US5999015A (en) 1997-02-20 1999-12-07 Altera Corporation Logic region resources for programmable logic devices
US6038650A (en) 1997-02-04 2000-03-14 Pactgmbh Method for the automatic address generation of modules within clusters comprised of a plurality of these modules
US6046603A (en) 1997-12-12 2000-04-04 Xilinx, Inc. Method and apparatus for controlling the partial reconfiguration of a field programmable gate array
US6069489A (en) 1998-08-04 2000-05-30 Xilinx, Inc. FPGA having fast configuration memory data readback
US6088795A (en) 1996-12-27 2000-07-11 Pact Gmbh Process for automatic dynamic reloading of data flow processors (DFPs) and units with two or three-dimensional programmable cell architectures (FPGAs, DPGAs and the like)
US6086629A (en) 1997-12-04 2000-07-11 Xilinx, Inc. Method for design implementation of routing in an FPGA using placement directives such as local outputs and virtual buffers
US6097210A (en) 1998-08-04 2000-08-01 Xilinx, Inc. Multiplexer array with shifted input traces
US6119181A (en) 1996-12-20 2000-09-12 Pact Gmbh I/O and memory bus system for DFPs and units with two- or multi-dimensional programmable cell architectures
US6137307A (en) 1998-08-04 2000-10-24 Xilinx, Inc. Structure and method for loading wide frames of data from a narrow input bus
US6144573A (en) 1998-06-26 2000-11-07 Altera Corporation Programmable logic devices with improved content addressable memory capabilities
US6154052A (en) 1999-02-04 2000-11-28 Xilinx, Inc. Combined tristate/carry logic mechanism
US6172520B1 (en) 1997-12-30 2001-01-09 Xilinx, Inc. FPGA system with user-programmable configuration ports and method for reconfiguring the FPGA
US6175530B1 (en) 1999-05-14 2001-01-16 Xilinx, Inc. Method for detecting low power on an FPGA interface device
US6177808B1 (en) * 1998-04-30 2001-01-23 Compaq Computer Corporation Integration of bidirectional switches with programmable logic
US6181159B1 (en) 1997-05-06 2001-01-30 Altera Corporation Integrated circuit incorporating a programmable cross-bar switch
US6181162B1 (en) 1994-04-10 2001-01-30 Altera Corporation Programmable logic device with highly routable interconnect
US6184710B1 (en) 1997-03-20 2001-02-06 Altera Corporation Programmable logic array devices with enhanced interconnectivity between adjacent logic regions
US6184706B1 (en) 1996-04-05 2001-02-06 Altera Corporation Logic device architecture and method of operation
US6185724B1 (en) 1997-12-02 2001-02-06 Xilinx, Inc. Template-based simulated annealing move-set that improves FPGA architectural feature utilization
US6184707B1 (en) 1998-10-07 2001-02-06 Altera Corporation Look-up table based logic element with complete permutability of the inputs to the secondary signals
US6191614B1 (en) 1999-04-05 2001-02-20 Xilinx, Inc. FPGA configuration circuit including bus-based CRC register
US6191611B1 (en) 1997-10-16 2001-02-20 Altera Corporation Driver circuitry for programmable logic devices with hierarchical interconnection resources
US6191998B1 (en) 1997-10-16 2001-02-20 Altera Corporation Programmable logic device memory array circuit having combinable single-port memory arrays
US6201410B1 (en) 1997-02-26 2001-03-13 Xilinx, Inc. Wide logic gate implemented in an FPGA configurable logic element
US6204689B1 (en) 1997-02-26 2001-03-20 Xilinx, Inc. Input/output interconnect circuit for FPGAs
US6204687B1 (en) 1999-08-13 2001-03-20 Xilinx, Inc. Method and structure for configuring FPGAS
US6204690B1 (en) 1997-02-26 2001-03-20 Xilinx, Inc. FPGA architecture with offset interconnect lines
US6209118B1 (en) 1998-01-21 2001-03-27 Micron Technology, Inc. Method for modifying an integrated circuit
US6218876B1 (en) 1999-01-08 2001-04-17 Altera Corporation Phase-locked loop circuitry for programmable logic devices
US6219305B1 (en) 1996-09-17 2001-04-17 Xilinx, Inc. Method and system for measuring signal propagation delays using ring oscillators
US6225823B1 (en) 1997-10-16 2001-05-01 Altera Corporation Input/output circuitry for programmable logic devices
US6232845B1 (en) 1996-09-17 2001-05-15 Xilinx, Inc. Circuit for measuring signal delays in synchronous memory elements
US6233205B1 (en) 1996-09-17 2001-05-15 Xilinx, Inc. Built-in self test method for measuring clock to out delays
US6243664B1 (en) 1998-10-27 2001-06-05 Cypress Semiconductor Corporation Methods for maximizing routability in a programmable interconnect matrix having less than full connectability
US6242767B1 (en) 1997-11-10 2001-06-05 Lightspeed Semiconductor Corp. Asic routing architecture
US6242946B1 (en) 1996-04-15 2001-06-05 Altera Corporation Embedded memory block with FIFO mode for programmable logic device
US6242947B1 (en) 1998-04-24 2001-06-05 Xilinx, Inc. PLD having a window pane architecture with segmented interconnect wiring between logic block arrays
US6255846B1 (en) 1997-10-16 2001-07-03 Altera Corporation Programmable logic devices with enhanced multiplexing capabilities
US6255848B1 (en) 1999-04-05 2001-07-03 Xilinx, Inc. Method and structure for reading, modifying and writing selected configuration memory cells of an FPGA
US6259272B1 (en) 1995-05-17 2001-07-10 Altera Corporation Programmable logic array integrated circuit architectures
US6259271B1 (en) 1996-07-18 2001-07-10 Altera Corporation Configuration memory integrated circuit
US6262596B1 (en) 1999-04-05 2001-07-17 Xilinx, Inc. Configuration bus interface circuit for FPGAS
US6263400B1 (en) * 1997-08-21 2001-07-17 Altera Corporation Memory cells configurable as CAM or RAM in programmable logic devices
US6265895B1 (en) 1998-01-30 2001-07-24 Altera Corporation Programmable logic device incorporating a memory efficient interconnection device
US6271681B1 (en) 1997-02-20 2001-08-07 Altera Corporation PCI-compatible programmable logic devices
US6278288B1 (en) 1997-10-16 2001-08-21 Altera Corporation Programmable logic device with enhanced multiplexing capabilities in interconnect resources
US6278291B1 (en) 1995-05-17 2001-08-21 Altera Corporation Programmable logic array devices with interconnect lines of various lengths
US6289494B1 (en) 1997-11-12 2001-09-11 Quickturn Design Systems, Inc. Optimized emulation and prototyping architecture
US6288970B1 (en) 1997-10-16 2001-09-11 Altera Corporation Programmable logic device memory array circuit having combinable single-port memory arrays
US6288568B1 (en) 1996-11-22 2001-09-11 Xilinx, Inc. FPGA architecture with deep look-up table RAMs
US6297665B1 (en) 1996-11-22 2001-10-02 Xilinx, Inc. FPGA architecture with dual-port deep look-up table RAMS
US6300794B1 (en) 1996-10-10 2001-10-09 Altera Corporation Programmable logic device with hierarchical interconnection resources
US6301695B1 (en) 1999-01-14 2001-10-09 Xilinx, Inc. Methods to securely configure an FPGA using macro markers
US6305005B1 (en) 1999-01-14 2001-10-16 Xilinx, Inc. Methods to securely configure an FPGA using encrypted macros
US6308311B1 (en) 1999-05-14 2001-10-23 Xilinx, Inc. Method for reconfiguring a field programmable gate array from a host
US6320412B1 (en) 1999-12-20 2001-11-20 Btr, Inc. C/O Corporate Trust Co. Architecture and interconnect for programmable logic circuits
US6323682B1 (en) 1996-11-22 2001-11-27 Xilinx, Inc. FPGA architecture with wide function multiplexers
US6324676B1 (en) 1999-01-14 2001-11-27 Xilinx, Inc. FPGA customizable to accept selected macros
US6326806B1 (en) * 2000-03-29 2001-12-04 Xilinx, Inc. FPGA-based communications access point and system for reconfiguration
US6335634B1 (en) 1997-10-16 2002-01-01 Srinivas T. Reddy Circuitry and methods for internal interconnection of programmable logic devices
US6338106B1 (en) 1996-12-20 2002-01-08 Pact Gmbh I/O and memory bus system for DFPS and units with two or multi-dimensional programmable cell architectures
US6340897B1 (en) 1995-03-22 2002-01-22 Altera Corporation Programmable logic array integrated circuit with general-purpose memory configurable as a random access or FIFO memory
US6342792B1 (en) 1999-03-04 2002-01-29 Altera Corporation Logic module circuitry for programmable logic devices
US6347061B1 (en) 1997-03-21 2002-02-12 Altera Corporation Programmable logic array device with random access memory configurable as product terms
US6351809B1 (en) 1999-05-14 2002-02-26 Xilinx, Inc. Method of disguising a USB port connection
US6353551B1 (en) 1997-08-19 2002-03-05 Altera Corporation Static random access memory circuits
US6357037B1 (en) 1999-01-14 2002-03-12 Xilinx, Inc. Methods to securely configure an FPGA to accept selected macros
US6362646B1 (en) 1997-06-20 2002-03-26 Altera Corporation Method and apparatus for reducing memory resources in a programmable logic device
US6369608B1 (en) 2001-01-18 2002-04-09 Xillinx, Inc. Conditioning semiconductor-on-insulator transistors for programmable logic devices
US6384630B2 (en) 1996-06-05 2002-05-07 Altera Corporation Techniques for programming programmable logic array devices
US6392954B2 (en) 1997-10-14 2002-05-21 Altera Corporation Dual port programmable logic device variable depth and width memory array
US6396303B1 (en) 1997-02-26 2002-05-28 Xilinx, Inc. Expandable interconnect structure for FPGAS
US6405299B1 (en) 1997-02-11 2002-06-11 Pact Gmbh Internal bus system for DFPS and units with two- or multi-dimensional programmable cell architectures, for managing large volumes of data with a high interconnection complexity
US6407576B1 (en) 1999-03-04 2002-06-18 Altera Corporation Interconnection and input/output resources for programmable logic integrated circuit devices
US6417690B1 (en) * 1995-05-03 2002-07-09 Btr, Inc. Floor plan for scalable multiple level tab oriented interconnect architecture
US6425068B1 (en) 1996-12-09 2002-07-23 Pact Gmbh Unit for processing numeric and logic operations for use in central processing units (cpus), multiprocessor systems, data-flow processors (dsps), systolic processors and field programmable gate arrays (epgas)
US6424567B1 (en) 1999-07-07 2002-07-23 Philips Electronics North America Corporation Fast reconfigurable programmable device
US6427156B1 (en) 1997-01-21 2002-07-30 Xilinx, Inc. Configurable logic block with AND gate for efficient multiplication in FPGAS
US6446249B1 (en) 2000-05-11 2002-09-03 Quickturn Design Systems, Inc. Emulation circuit with a hold time algorithm, logic and analyzer and shadow memory
US6453382B1 (en) 1998-11-05 2002-09-17 Altera Corporation Content addressable memory encoded outputs
US6452459B1 (en) 1999-07-22 2002-09-17 Xilinx, Inc. Circuit for measuring signal delays of synchronous memory elements
US6462578B2 (en) * 1993-08-03 2002-10-08 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US6466520B1 (en) 1996-09-17 2002-10-15 Xilinx, Inc. Built-in AC self test using pulse generators
US6467009B1 (en) 1998-10-14 2002-10-15 Triscend Corporation Configurable processor system unit
US6480023B1 (en) 2000-10-13 2002-11-12 Xilinx, Inc. Configurable logic block for PLD
US6480027B1 (en) 1999-03-04 2002-11-12 Altera Corporation Driver circuitry for programmable logic devices
US6480937B1 (en) 1998-02-25 2002-11-12 Pact Informationstechnologie Gmbh Method for hierarchical caching of configuration data having dataflow processors and modules having two-or multidimensional programmable cell structure (FPGAs, DPGAs, etc.)--
US6480028B2 (en) 1998-11-18 2002-11-12 Altera Corporation Programmable logic device architectures with super-regions having logic regions and memory region
US6487618B1 (en) 1999-05-14 2002-11-26 Xilinx, Inc. Method for resisting an FPGA interface device
US6507216B1 (en) 1998-11-18 2003-01-14 Altera Corporation Efficient arrangement of interconnection resources on programmable logic devices
US6507217B2 (en) 1993-08-03 2003-01-14 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US6512289B1 (en) 2000-05-09 2003-01-28 Xilinx, Inc. Direct current regulation on integrated circuits under high current design conditions
US20030023762A1 (en) * 2001-07-25 2003-01-30 Xilinx, Inc. Configurable communication integrated circuit
US6518787B1 (en) 2000-09-21 2003-02-11 Triscend Corporation Input/output architecture for efficient configuration of programmable input/output cells
US6526520B1 (en) 1997-02-08 2003-02-25 Pact Gmbh Method of self-synchronization of configurable elements of a programmable unit
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
US6560665B1 (en) 1999-05-14 2003-05-06 Xilinx Inc. Embedding firmware for a microprocessor with configuration data for a field programmable gate array
US6563367B1 (en) 2000-08-16 2003-05-13 Altera Corporation Interconnection switch structures
US6566906B1 (en) 2001-09-18 2003-05-20 Altera Corporation Specialized programmable logic region with low-power mode
US6570404B1 (en) 1996-03-29 2003-05-27 Altera Corporation High-performance programmable logic architecture
US6586966B1 (en) 2001-09-13 2003-07-01 Altera Corporation Data latch with low-power bypass mode
US6590826B1 (en) 2002-01-22 2003-07-08 Xilinx, Inc. Self-addressing FIFO
US6594810B1 (en) 2001-10-04 2003-07-15 M2000 Reconfigurable integrated circuit with a scalable architecture
US6603332B2 (en) 1999-02-25 2003-08-05 Xilinx, Inc. Configurable logic block for PLD with logic gate for combining output with another configurable logic block
US20030155587A1 (en) * 2002-01-18 2003-08-21 Lyle Smith ASIC routing architecture
US6613611B1 (en) 2000-12-22 2003-09-02 Lightspeed Semiconductor Corporation ASIC routing architecture with variable number of custom masks
US6624654B1 (en) 2002-05-16 2003-09-23 Xilinx, Inc. Methods for implementing circuits in programmable logic devices to minimize the effects of single event upsets
US6624656B1 (en) 1999-10-15 2003-09-23 Triscend Corporation Input/output circuit with user programmable functions
US6630838B1 (en) 2001-01-23 2003-10-07 Xilinx, Inc. Method for implementing dynamic burn-in testing using static test signals
US6631520B1 (en) 1999-05-14 2003-10-07 Xilinx, Inc. Method and apparatus for changing execution code for a microcontroller on an FPGA interface device
US6654889B1 (en) 1999-02-19 2003-11-25 Xilinx, Inc. Method and apparatus for protecting proprietary configuration data for programmable logic devices
US6657457B1 (en) 2000-03-15 2003-12-02 Intel Corporation Data transfer on reconfigurable chip
US6661253B1 (en) 2000-08-16 2003-12-09 Altera Corporation Passgate structures for use in low-voltage applications
US6664807B1 (en) 2002-01-22 2003-12-16 Xilinx, Inc. Repeater for buffering a signal on a long data line of a programmable logic device
US6687884B1 (en) 2002-05-16 2004-02-03 Xilinx, Inc. Testing for shorts between interconnect lines in a partially defective programmable logic device
US20040034841A1 (en) * 2001-10-30 2004-02-19 Frederic Reblewski Emulation components and system including distributed event monitoring, and testing of an IC design under emulation
US6697979B1 (en) 1997-12-22 2004-02-24 Pact Xpp Technologies Ag Method of repairing integrated circuits
US6717433B2 (en) 1995-10-13 2004-04-06 Jean Barbier Reconfigurable integrated circuit with integrated debugging facilities and scalable programmable interconnect
US6721840B1 (en) 2000-08-18 2004-04-13 Triscend Corporation Method and system for interfacing an integrated circuit to synchronous dynamic memory and static memory
US6724810B1 (en) 2000-11-17 2004-04-20 Xilinx, Inc. Method and apparatus for de-spreading spread spectrum signals
US6754686B1 (en) 2000-10-13 2004-06-22 Xilinx, Inc. Literal sharing method for fast sum-of-products logic
US6754760B1 (en) 2000-08-21 2004-06-22 Xilinx, Inc. Programmable interface for a configurable system bus
US6772405B1 (en) 2002-06-13 2004-08-03 Xilinx, Inc. Insertable block tile for interconnecting to a device embedded in an integrated circuit
US20040153608A1 (en) * 2001-01-09 2004-08-05 Martin Vorbach Method of hierarchical caching of configuration data having dataflow processors and modules having two- or multidimensional programmable cell structure (FPGAs, DPGAs, etc.)
US6781407B2 (en) 2002-01-09 2004-08-24 Xilinx, Inc. FPGA and embedded circuitry initialization and processing
US6798239B2 (en) 2001-09-28 2004-09-28 Xilinx, Inc. Programmable gate array having interconnecting logic to support embedded fixed logic circuitry
US6813754B2 (en) 2002-11-05 2004-11-02 Lattice Semiconductor Corporation Placement processing for programmable logic devices
USRE38651E1 (en) * 1994-05-18 2004-11-09 Altera Corporation Variable depth and width memory device
US20040225992A1 (en) * 2002-02-22 2004-11-11 Xilinx, Inc. Method and system for creating a customized support package for an FPGA-based system-on-chip (SoC)
US6820248B1 (en) 2002-02-14 2004-11-16 Xilinx, Inc. Method and apparatus for routing interconnects to devices with dissimilar pitches
US20040260530A1 (en) * 2001-10-30 2004-12-23 Frederic Josso Distributed configuration of integrated circuits in an emulation system
US6839874B1 (en) 2002-02-28 2005-01-04 Xilinx, Inc. Method and apparatus for testing an embedded device
US6842039B1 (en) 2002-10-21 2005-01-11 Altera Corporation Configuration shift register
US20050040850A1 (en) * 2001-09-28 2005-02-24 Xilinx, Inc. Programmable gate array and embedded circuitry initialization and processing
US20050058186A1 (en) * 2003-09-11 2005-03-17 Xilinx, Inc. Channel bonding of a plurality of multi-gigabit transceivers
US6874107B2 (en) 2001-07-24 2005-03-29 Xilinx, Inc. Integrated testing of serializer/deserializer in FPGA
US6886092B1 (en) 2001-11-19 2005-04-26 Xilinx, Inc. Custom code processing in PGA by providing instructions from fixed logic processor portion to programmable dedicated processor portion
US6920551B1 (en) 2001-03-08 2005-07-19 Xilinx, Inc. Configurable processor system
US6934922B1 (en) 2002-02-27 2005-08-23 Xilinx, Inc. Timing performance analysis
US6937062B1 (en) 2001-09-18 2005-08-30 Altera Corporation Specialized programmable logic region with low-power mode
US20050193051A1 (en) * 1999-03-16 2005-09-01 Fujitsu Limited Logic circuit
US20050218928A1 (en) * 2004-03-30 2005-10-06 Pani Peter M Scalable non-blocking switching network for programmable logic
US6961919B1 (en) 2002-03-04 2005-11-01 Xilinx, Inc. Method of designing integrated circuit having both configurable and fixed logic circuitry
US6973405B1 (en) 2002-05-22 2005-12-06 Xilinx, Inc. Programmable interactive verification agent
US6976160B1 (en) 2002-02-22 2005-12-13 Xilinx, Inc. Method and system for controlling default values of flip-flops in PGA/ASIC-based designs
US6983405B1 (en) 2001-11-16 2006-01-03 Xilinx, Inc., Method and apparatus for testing circuitry embedded within a field programmable gate array
US20060023704A1 (en) * 2004-07-29 2006-02-02 Pani Peter M Interconnection fabric using switching networks in hierarchy
US6996713B1 (en) 2002-03-29 2006-02-07 Xilinx, Inc. Method and apparatus for protecting proprietary decryption keys for programmable logic devices
US6996758B1 (en) 2001-11-16 2006-02-07 Xilinx, Inc. Apparatus for testing an interconnecting logic fabric
US20060028240A1 (en) * 2004-08-03 2006-02-09 Altera Corporation Enhanced passgate structures for reducing leakage current
US7000210B2 (en) 2002-11-05 2006-02-14 Lattice Semiconductor Corporation Adaptive adjustment of constraints during PLD placement processing
US7003660B2 (en) 2000-06-13 2006-02-21 Pact Xpp Technologies Ag Pipeline configuration unit protocols and communication
US20060038586A1 (en) * 2003-06-10 2006-02-23 Renxin Xia Apparatus and methods for communicating with programmable logic devices
US7007121B1 (en) 2002-02-27 2006-02-28 Xilinx, Inc. Method and apparatus for synchronized buses
EP1643507A2 (en) 1997-08-19 2006-04-05 Altera Corporation Static random access memory circuits
US20060080632A1 (en) * 2004-09-30 2006-04-13 Mathstar, Inc. Integrated circuit layout having rectilinear structure of objects
US20060083093A1 (en) * 2004-10-15 2006-04-20 Dover Lance W Non-volatile configuration data storage for a configurable memory
US7035787B2 (en) 2001-10-30 2006-04-25 Mentor Graphics Corporation Emulation components and system including distributed routing and configuration of emulation resources
US7058920B2 (en) 2001-05-06 2006-06-06 Altera Corporation Methods for designing PLD architectures for flexible placement of IP function blocks
US7065684B1 (en) 2002-04-18 2006-06-20 Xilinx, Inc. Circuits and methods for measuring signal propagation delays on integrated circuits
US7071732B1 (en) 2003-12-09 2006-07-04 Xilinx, Inc. Scalable complex programmable logic device with segmented interconnect resources
US7076595B1 (en) 2001-05-18 2006-07-11 Xilinx, Inc. Programmable logic device including programmable interface core and central processing unit
US7082592B1 (en) 2003-06-16 2006-07-25 Altera Corporation Method for programming programmable logic device having specialized functional blocks
US7085858B1 (en) 1999-10-15 2006-08-01 Xilinx, Inc. Configuration in a configurable system on a chip
US7085973B1 (en) 2002-07-09 2006-08-01 Xilinx, Inc. Testing address lines of a memory controller
US7088767B1 (en) 2002-03-01 2006-08-08 Xilinx, Inc. Method and apparatus for operating a transceiver in different data rates
US7092865B1 (en) 2002-09-10 2006-08-15 Xilinx, Inc. Method and apparatus for timing modeling
US7099426B1 (en) 2002-09-03 2006-08-29 Xilinx, Inc. Flexible channel bonding and clock correction operations on a multi-block data path
US7107374B1 (en) 2001-09-05 2006-09-12 Xilinx, Inc. Method for bus mastering for devices resident in configurable system logic
US7111217B1 (en) 2002-02-28 2006-09-19 Xilinx, Inc. Method and system for flexibly nesting JTAG TAP controllers for FPGA-based system-on-chip (SoC)
US7111110B1 (en) 2002-12-10 2006-09-19 Altera Corporation Versatile RAM for programmable logic device
US7111220B1 (en) 2002-03-01 2006-09-19 Xilinx, Inc. Network physical layer with embedded multi-standard CRC generator
US7119576B1 (en) 2000-09-18 2006-10-10 Altera Corporation Devices and methods with programmable logic and digital signal processing regions
US7134025B1 (en) 2002-03-29 2006-11-07 Xilinx, Inc. Methods and circuits for preventing the overwriting of memory frames in programmable logic devices
US7139848B1 (en) 2000-12-08 2006-11-21 Xilinx, Inc. DMA protocol extension for packet-based transfer
US7148722B1 (en) 1997-02-20 2006-12-12 Altera Corporation PCI-compatible programmable logic devices
US7174443B1 (en) 1996-12-20 2007-02-06 Pact Xpp Technologies Ag Run-time reconfiguration method for programmable units
US7187709B1 (en) 2002-03-01 2007-03-06 Xilinx, Inc. High speed configurable transceiver architecture
US20070057693A1 (en) * 2005-09-13 2007-03-15 M2000 Reconfigurable circuit with redundant reconfigurable cluster(S)
US20070083730A1 (en) * 2003-06-17 2007-04-12 Martin Vorbach Data processing device and method
US7210129B2 (en) 2001-08-16 2007-04-24 Pact Xpp Technologies Ag Method for translating programs for reconfigurable architectures
US20070118783A1 (en) * 2005-11-23 2007-05-24 M2000 Inc. Runtime reconfiguration of reconfigurable circuits
US7266725B2 (en) 2001-09-03 2007-09-04 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
US20070247189A1 (en) * 2005-01-25 2007-10-25 Mathstar Field programmable semiconductor object array integrated circuit
US7346644B1 (en) 2000-09-18 2008-03-18 Altera Corporation Devices and methods with programmable logic and digital signal processing regions
US7394284B2 (en) 2002-09-06 2008-07-01 Pact Xpp Technologies Ag Reconfigurable sequencer structure
USRE40423E1 (en) 1996-07-29 2008-07-08 Xilinx, Inc. Multiport RAM with programmable data port configuration
US20080204072A1 (en) * 2003-03-31 2008-08-28 Tsutomu Sasao Programmable Logic Device
US7423453B1 (en) 2006-01-20 2008-09-09 Advantage Logic, Inc. Efficient integrated circuit layout scheme to implement a scalable switching network used in interconnection fabric
US7434191B2 (en) 2001-09-03 2008-10-07 Pact Xpp Technologies Ag Router
US7444531B2 (en) 2001-03-05 2008-10-28 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US20080265936A1 (en) * 2007-04-27 2008-10-30 Dsm Solutions, Inc. Integrated circuit switching device, structure and method of manufacture
US20080278678A1 (en) * 2003-10-09 2008-11-13 Howell Thomas A Eyeglasses with user monitoring
US20090033361A1 (en) * 2007-08-03 2009-02-05 Dsm Solutions, Inc. Switching circuits and methods for programmable logic devices
US7577822B2 (en) 2001-12-14 2009-08-18 Pact Xpp Technologies Ag Parallel task operation in processor and reconfigurable coprocessor configured based on information in link list including termination information for synchronization
US7581076B2 (en) 2001-03-05 2009-08-25 Pact Xpp Technologies Ag Methods and devices for treating and/or processing data
EP2104109A1 (en) 2006-08-08 2009-09-23 Nantero, Inc. Nonvolatile resistive memories, latch circuits, and operation circuits having scalable two-terminal nanotube switches
US7595659B2 (en) 2000-10-09 2009-09-29 Pact Xpp Technologies Ag Logic cell array and bus system
US7657877B2 (en) 2001-06-20 2010-02-02 Pact Xpp Technologies Ag Method for processing data
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
US7698358B1 (en) 2003-12-24 2010-04-13 Altera Corporation Programmable logic device with specialized functional block
US20100095147A1 (en) * 2005-09-13 2010-04-15 Abound Logic, S.A.S. Reconfigurable circuit with redundant reconfigurable cluster(s)
US7710148B2 (en) 2008-06-02 2010-05-04 Suvolta, Inc. Programmable switch circuit and method, method of manufacture, and devices and systems including the same
US7768314B2 (en) 2004-05-12 2010-08-03 National University Corporation Okayama University Integrated circuit with multidimensional switch topology
US7786749B1 (en) 2009-05-19 2010-08-31 Sillcon Storage Technology, Inc. Programmable integrated circuit having built in test circuit
US7814137B1 (en) 2007-01-09 2010-10-12 Altera Corporation Combined interpolation and decimation filter for programmable logic device
US7816947B1 (en) 2008-03-31 2010-10-19 Man Wang Method and apparatus for providing a non-volatile programmable transistor
US7822799B1 (en) 2006-06-26 2010-10-26 Altera Corporation Adder-rounder circuitry for specialized processing block in programmable logic device
US7822881B2 (en) 1996-12-27 2010-10-26 Martin Vorbach Process for automatic dynamic reloading of data flow processors (DFPs) and units with two- or three-dimensional programmable cell architectures (FPGAs, DPGAs, and the like)
US20100272811A1 (en) * 2008-07-23 2010-10-28 Alkermes,Inc. Complex of trospium and pharmaceutical compositions thereof
US7836117B1 (en) 2006-04-07 2010-11-16 Altera Corporation Specialized processing block for programmable logic device
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US20100327907A1 (en) * 2009-06-24 2010-12-30 Ting Benjamin S Enhanced permutable switching network with multicasting signals for interconnection fabric
US7865541B1 (en) 2007-01-22 2011-01-04 Altera Corporation Configuring floating point operations in a programmable logic device
US7930336B2 (en) 2006-12-05 2011-04-19 Altera Corporation Large multiplier for programmable logic device
US7948267B1 (en) 2010-02-09 2011-05-24 Altera Corporation Efficient rounding circuits and methods in configurable integrated circuit devices
US7949699B1 (en) 2007-08-30 2011-05-24 Altera Corporation Implementation of decimation filter in integrated circuit device using ram-based data storage
US7996827B2 (en) 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US8041759B1 (en) 2006-02-09 2011-10-18 Altera Corporation Specialized processing block for programmable logic device
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
US8127061B2 (en) 2002-02-18 2012-02-28 Martin Vorbach Bus systems and reconfiguration methods
US8156284B2 (en) 2002-08-07 2012-04-10 Martin Vorbach Data processing method and device
US8230411B1 (en) 1999-06-10 2012-07-24 Martin Vorbach Method for interleaving a program over a plurality of cells
US8244789B1 (en) 2008-03-14 2012-08-14 Altera Corporation Normalization of floating point operations in a programmable integrated circuit device
US8250503B2 (en) 2006-01-18 2012-08-21 Martin Vorbach Hardware definition method including determining whether to implement a function as hardware or software
US8255448B1 (en) 2008-10-02 2012-08-28 Altera Corporation Implementing division in a programmable integrated circuit device
US8266199B2 (en) 2006-02-09 2012-09-11 Altera Corporation Specialized processing block for programmable logic device
US8266198B2 (en) 2006-02-09 2012-09-11 Altera Corporation Specialized processing block for programmable logic device
US8281108B2 (en) 2002-01-19 2012-10-02 Martin Vorbach Reconfigurable general purpose processor having time restricted configurations
US8301681B1 (en) 2006-02-09 2012-10-30 Altera Corporation Specialized processing block for programmable logic device
US8307023B1 (en) 2008-10-10 2012-11-06 Altera Corporation DSP block for implementing large multiplier on a programmable integrated circuit device
US8386553B1 (en) 2006-12-05 2013-02-26 Altera Corporation Large multiplier for programmable logic device
US8386550B1 (en) 2006-09-20 2013-02-26 Altera Corporation Method for configuring a finite impulse response filter in a programmable logic device
US8396914B1 (en) 2009-09-11 2013-03-12 Altera Corporation Matrix decomposition in an integrated circuit device
US8412756B1 (en) 2009-09-11 2013-04-02 Altera Corporation Multi-operand floating point operations in a programmable integrated circuit device
US8458243B1 (en) 2010-03-03 2013-06-04 Altera Corporation Digital signal processing circuit blocks with support for systolic finite-impulse-response digital filtering
US8468192B1 (en) 2009-03-03 2013-06-18 Altera Corporation Implementing multipliers in a programmable integrated circuit device
US8484265B1 (en) 2010-03-04 2013-07-09 Altera Corporation Angular range reduction in an integrated circuit device
US8510354B1 (en) 2010-03-12 2013-08-13 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8539014B2 (en) 2010-03-25 2013-09-17 Altera Corporation Solving linear matrices in an integrated circuit device
US8539016B1 (en) 2010-02-09 2013-09-17 Altera Corporation QR decomposition in an integrated circuit device
US8543634B1 (en) 2012-03-30 2013-09-24 Altera Corporation Specialized processing block for programmable integrated circuit device
US8549055B2 (en) 2009-03-03 2013-10-01 Altera Corporation Modular digital signal processing circuitry with optionally usable, dedicated connections between modules of the circuitry
US8577951B1 (en) 2010-08-19 2013-11-05 Altera Corporation Matrix operations in an integrated circuit device
US8589463B2 (en) 2010-06-25 2013-11-19 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8601044B2 (en) 2010-03-02 2013-12-03 Altera Corporation Discrete Fourier Transform in an integrated circuit device
US8620980B1 (en) 2005-09-27 2013-12-31 Altera Corporation Programmable device with specialized multiplier blocks
US8626815B1 (en) 2008-07-14 2014-01-07 Altera Corporation Configuring a programmable integrated circuit device to perform matrix multiplication
US8645449B1 (en) 2009-03-03 2014-02-04 Altera Corporation Combined floating point adder and subtractor
US8645450B1 (en) 2007-03-02 2014-02-04 Altera Corporation Multiplier-accumulator circuitry and methods
US8645451B2 (en) 2011-03-10 2014-02-04 Altera Corporation Double-clocked specialized processing block in an integrated circuit device
US8650236B1 (en) 2009-08-04 2014-02-11 Altera Corporation High-rate interpolation or decimation filter in integrated circuit device
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
US8706790B1 (en) 2009-03-03 2014-04-22 Altera Corporation Implementing mixed-precision floating-point operations in a programmable integrated circuit device
US8762443B1 (en) 2011-11-15 2014-06-24 Altera Corporation Matrix operations in an integrated circuit device
US8805916B2 (en) 2009-03-03 2014-08-12 Altera Corporation Digital signal processing circuitry with redundancy and bidirectional data paths
US8812820B2 (en) 2003-08-28 2014-08-19 Pact Xpp Technologies Ag Data processing device and method
US8812576B1 (en) 2011-09-12 2014-08-19 Altera Corporation QR decomposition in an integrated circuit device
US8862650B2 (en) 2010-06-25 2014-10-14 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8886696B1 (en) 2009-03-03 2014-11-11 Altera Corporation Digital signal processing circuitry with redundancy and ability to support larger multipliers
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
US8949298B1 (en) 2011-09-16 2015-02-03 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US8959137B1 (en) 2008-02-20 2015-02-17 Altera Corporation Implementing large multipliers in a programmable integrated circuit device
US8996600B1 (en) 2012-08-03 2015-03-31 Altera Corporation Specialized processing block for implementing floating-point multiplier with subnormal operation support
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US9053045B1 (en) 2011-09-16 2015-06-09 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US20150171865A1 (en) * 2012-05-02 2015-06-18 Semiconductor Energy Laboratory Co., Ltd. Programmable logic device
US9098332B1 (en) 2012-06-01 2015-08-04 Altera Corporation Specialized processing block with fixed- and floating-point structures
US9189200B1 (en) 2013-03-14 2015-11-17 Altera Corporation Multiple-precision processing block in a programmable integrated circuit device
US9207909B1 (en) 2012-11-26 2015-12-08 Altera Corporation Polynomial calculations optimized for programmable integrated circuit device structures
US9348795B1 (en) 2013-07-03 2016-05-24 Altera Corporation Programmable device using fixed and configurable logic to implement floating-point rounding
US9379687B1 (en) 2014-01-14 2016-06-28 Altera Corporation Pipelined systolic finite impulse response filter
US9600278B1 (en) 2011-05-09 2017-03-21 Altera Corporation Programmable device using fixed and configurable logic to implement recursive trees
US9684488B2 (en) 2015-03-26 2017-06-20 Altera Corporation Combined adder and pre-adder for high-radix multiplier circuit
US10942706B2 (en) 2017-05-05 2021-03-09 Intel Corporation Implementation of floating-point trigonometric functions in an integrated circuit device

Citations (108)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3201574A (en) * 1960-10-07 1965-08-17 Rca Corp Flexible logic circuit
GB1059213A (en) 1963-07-05 1967-02-15 Westinghouse Electric Corp Computing device
GB1090520A (en) 1965-10-18 1967-11-08 Ibm Logic circuits
GB1101851A (en) 1965-01-20 1968-01-31 Ncr Co Generalized logic circuitry
US3431433A (en) * 1964-05-29 1969-03-04 Robert George Ball Digital storage devices using field effect transistor bistable circuits
US3439185A (en) * 1966-01-11 1969-04-15 Rca Corp Logic circuits employing field-effect transistors
US3446990A (en) * 1965-12-10 1969-05-27 Stanford Research Inst Controllable logic circuits employing functionally identical gates
US3483400A (en) * 1966-06-15 1969-12-09 Sharp Kk Flip-flop circuit
US3564514A (en) * 1969-05-23 1971-02-16 Honeywell Inc Programmable logic apparatus
CA869681A (en) 1971-04-27 Antonazzi Mario Universal printed circuit card contact test fixture
US3576984A (en) * 1968-08-09 1971-05-04 Bunker Ramo Multifunction logic network
US3619583A (en) * 1968-10-11 1971-11-09 Bell Telephone Labor Inc Multiple function programmable arrays
US3667054A (en) * 1971-02-10 1972-05-30 Us Navy Pulse train decoder with pulse width rejection
US3691401A (en) * 1971-03-10 1972-09-12 Honeywell Inf Systems Convertible nand/nor gate
US3743948A (en) * 1969-12-04 1973-07-03 North American Rockwell Pulse train sorter
US3750115A (en) * 1972-04-28 1973-07-31 Gen Electric Read mostly associative memory cell for universal logic
US3816725A (en) * 1972-04-28 1974-06-11 Gen Electric Multiple level associative logic circuits
US3818252A (en) * 1971-12-20 1974-06-18 Hitachi Ltd Universal logical integrated circuit
US3818452A (en) * 1972-04-28 1974-06-18 Gen Electric Electrically programmable logic circuits
US3838296A (en) * 1973-10-29 1974-09-24 Nat Semiconductor Corp Emitter coupled logic transistor circuit
US3849638A (en) * 1973-07-18 1974-11-19 Gen Electric Segmented associative logic circuits
US3936812A (en) * 1974-12-30 1976-02-03 Ibm Corporation Segmented parallel rail paths for input/output signals
US3967251A (en) * 1975-04-17 1976-06-29 Xerox Corporation User variable computer memory module
US3983543A (en) * 1975-06-30 1976-09-28 International Business Machines Corporation Random access memory read/write buffer circuits incorporating complementary field effect transistors
US3987287A (en) * 1974-12-30 1976-10-19 International Business Machines Corporation High density logic array
FR2160969B1 (en) 1971-11-22 1976-10-29 Rca Corp
US3990045A (en) * 1974-06-24 1976-11-02 International Business Machines Corporation Array logic fabrication for use in pattern recognition equipments and the like
US4020469A (en) * 1975-04-09 1977-04-26 Frank Manning Programmable arrays
US4032894A (en) * 1976-06-01 1977-06-28 International Business Machines Corporation Logic array with enhanced flexibility
US4068214A (en) * 1976-02-03 1978-01-10 Massachusetts Institute Of Technology Asynchronous logic array
US4084152A (en) * 1976-06-30 1978-04-11 International Business Machines Corporation Time shared programmable logic array
US4091359A (en) * 1976-02-20 1978-05-23 Siemens Aktiengesellschaft Modular logic circuit utilizing charge-storage transistors
US4103182A (en) * 1976-09-01 1978-07-25 Hewlett-Packard Company Programmable transfer gate array
US4107549A (en) * 1977-05-10 1978-08-15 Moufah Hussein T Ternary logic circuits with CMOS integrated circuits
US4120043A (en) * 1976-04-30 1978-10-10 Burroughs Corporation Method and apparatus for multi-function, stored logic Boolean function generation
US4123669A (en) * 1977-09-08 1978-10-31 International Business Machines Corporation Logical OR circuit for programmed logic arrays
US4124899A (en) * 1977-05-23 1978-11-07 Monolithic Memories, Inc. Programmable array logic circuit
US4125869A (en) * 1975-07-11 1978-11-14 National Semiconductor Corporation Interconnect logic
US4154978A (en) * 1977-12-08 1979-05-15 Operating Systems, Inc. Self-contained bidirectional amplifying repeater
US4157589A (en) * 1977-09-09 1979-06-05 Gte Laboratories Incorporated Arithmetic logic apparatus
US4157480A (en) * 1976-08-03 1979-06-05 National Research Development Corporation Inverters and logic gates employing inverters
US4161662A (en) * 1976-01-22 1979-07-17 Motorola, Inc. Standardized digital logic chip
US4177452A (en) * 1978-06-05 1979-12-04 International Business Machines Corporation Electrically programmable logic array
US4195352A (en) * 1977-07-08 1980-03-25 Xerox Corporation Split programmable logic array
US4207556A (en) * 1976-12-14 1980-06-10 Nippon Telegraph And Telephone Public Corporation Programmable logic array arrangement
US4208728A (en) * 1978-12-21 1980-06-17 Bell Telephone Laboratories, Incorporated Programable logic array
US4233667A (en) * 1978-10-23 1980-11-11 International Business Machines Corporation Demand powered programmable logic array
US4237542A (en) * 1977-06-30 1980-12-02 International Business Machines Corporation Programmable logic arrays
US4240094A (en) * 1978-03-20 1980-12-16 Harris Corporation Laser-configured logic array
US4244032A (en) * 1977-12-16 1981-01-06 Oliver Douglas E Apparatus for programming a PROM by propagating data words from an address bus to the PROM data terminals
US4245324A (en) * 1978-12-15 1981-01-13 International Business Machines Corporation Compact programmable logic read array having multiple outputs
US4249246A (en) * 1978-02-27 1981-02-03 Nippon Electric Co., Ltd. Programmable logic array for generating EOR sums of input signals
US4268908A (en) * 1979-02-26 1981-05-19 International Business Machines Corporation Modular macroprocessing system comprising a microprocessor and an extendable number of programmed logic arrays
US4281398A (en) * 1980-02-12 1981-07-28 Mostek Corporation Block redundancy for memory array
US4284953A (en) * 1977-12-23 1981-08-18 Motorola, Inc. Character framing circuit
US4290121A (en) * 1977-12-02 1981-09-15 Texas Instruments Incorporated Variable function programmed calculator
US4292548A (en) * 1979-07-27 1981-09-29 Instituto Venezolano De Investigaciones Cientificas (Ivic) Dynamically programmable logic circuits
US4293783A (en) * 1978-11-01 1981-10-06 Massachusetts Institute Of Technology Storage/logic array
US4295064A (en) * 1978-06-30 1981-10-13 International Business Machines Corporation Logic and array logic driving circuits
US4307379A (en) * 1977-11-10 1981-12-22 Raytheon Company Integrated circuit component
US4331893A (en) * 1976-09-24 1982-05-25 Giddings & Lewis, Inc. Boolean logic processor without accumulator output feedback
US4336601A (en) * 1978-07-04 1982-06-22 Mamoru Tanaka Rewritable programmable logic array
US4348736A (en) * 1978-10-05 1982-09-07 International Business Machines Corp. Programmable logic array adder
US4348737A (en) * 1978-10-31 1982-09-07 International Business Machines Corporation Multiple-function programmable logic arrays
US4357678A (en) * 1979-12-26 1982-11-02 International Business Machines Corporation Programmable sequential logic array mechanism
US4366393A (en) * 1979-03-15 1982-12-28 Nippon Electric Co., Ltd. Integrated logic circuit adapted to performance tests
US4380811A (en) * 1980-04-25 1983-04-19 International Business Machines Corp. Programmable logic array with self correction of faults
EP0079127A1 (en) 1981-11-06 1983-05-18 Texas Instruments Incorporated Programmable system component
US4390970A (en) * 1980-12-15 1983-06-28 Texas Instruments Incorporated Rotating register utilizing field effect transistors
US4392198A (en) * 1979-07-18 1983-07-05 Matsushita Electric Industrial Company, Limited Method of producing microaddresses and a computer system for achieving the method
US4395646A (en) * 1980-11-03 1983-07-26 International Business Machines Corp. Logic performing cell for use in array structures
US4399516A (en) * 1981-02-10 1983-08-16 Bell Telephone Laboratories, Incorporated Stored-program control machine
US4409680A (en) * 1981-08-27 1983-10-11 Ncr Corporation High speed write control for synchronous registers
US4409499A (en) * 1982-06-14 1983-10-11 Standard Microsystems Corporation High-speed merged plane logic function array
US4414547A (en) * 1981-08-05 1983-11-08 General Instrument Corporation Storage logic array having two conductor data column
US4415818A (en) * 1979-01-16 1983-11-15 Nippon Telegraph & Telephone Corp. Programmable sequential logic circuit devices
US4415973A (en) * 1980-03-28 1983-11-15 International Computers Limited Array processor with stand-by for replacing failed section
US4422072A (en) * 1981-07-30 1983-12-20 Signetics Corporation Field programmable logic array circuit
US4433331A (en) * 1981-12-14 1984-02-21 Bell Telephone Laboratories, Incorporated Programmable logic array interconnection matrix
US4446382A (en) * 1982-02-24 1984-05-01 Moore Russell L Arrangement to time separate bidirectional current flow
US4453096A (en) * 1976-11-04 1984-06-05 U.S. Philips Corporation MOS Transistor type integrated circuit for the execution of logical operations on a plurality of data signals
US4458297A (en) * 1981-01-16 1984-07-03 Mosaic Systems, Inc. Universal interconnection substrate
US4458163A (en) * 1981-07-20 1984-07-03 Texas Instruments Incorporated Programmable architecture logic
US4495629A (en) * 1983-01-25 1985-01-22 Storage Technology Partners CMOS scannable latch
US4508977A (en) * 1983-01-11 1985-04-02 Burroughs Corporation Re-programmable PLA
US4513307A (en) * 1982-05-05 1985-04-23 Rockwell International Corporation CMOS/SOS transistor gate array apparatus
US4519050A (en) * 1982-06-17 1985-05-21 Intel Corporation Radiation shield for an integrated circuit memory with redundant elements
US4541067A (en) * 1982-05-10 1985-09-10 American Microsystems, Inc. Combinational logic structure using PASS transistors
US4541114A (en) * 1983-05-05 1985-09-10 Research Environmental/Institute of Michigan Routing techniques using serial neighborhood image analyzing system
US4551815A (en) * 1983-12-12 1985-11-05 Aerojet-General Corporation Functionally redundant logic network architectures with logic selection means
US4551814A (en) * 1983-12-12 1985-11-05 Aerojet-General Corporation Functionally redundant logic network architectures
US4558236A (en) * 1983-10-17 1985-12-10 Sanders Associates, Inc. Universal logic circuit
US4564773A (en) * 1981-08-13 1986-01-14 Fujitsu Limited Semiconductor gate array device having an improved interconnection structure
US4575794A (en) * 1982-02-22 1986-03-11 International Business Machines Corp. Clocking mechanism for multiple overlapped dynamic programmable logic arrays used in a digital control unit
US4600846A (en) * 1983-10-06 1986-07-15 Sanders Associates, Inc. Universal logic circuit modules
US4622648A (en) * 1982-05-10 1986-11-11 American Microsystems, Inc. Combinational logic structure using PASS transistors
US4642487A (en) * 1984-09-26 1987-02-10 Xilinx, Inc. Special interconnect for configurable logic array
US4670749A (en) * 1984-04-13 1987-06-02 Zilog, Inc. Integrated circuit programmable cross-point connection technique
US4700187A (en) * 1985-12-02 1987-10-13 Concurrent Logic, Inc. Programmable, asynchronous logic cell and array
US4706217A (en) * 1985-03-28 1987-11-10 Kabushiki Kaisha Toshiba Sequential logic circuit
US4717912A (en) * 1982-10-07 1988-01-05 Advanced Micro Devices, Inc. Apparatus for producing any one of a plurality of signals at a single output
US4727268A (en) * 1985-02-28 1988-02-23 Kabushiki Kaisha Toshiba Logic circuitry having two programmable interconnection arrays
US4742383A (en) * 1983-01-12 1988-05-03 International Business Machines Corporation Multi-function FET masterslice cell
US4742252A (en) * 1985-03-29 1988-05-03 Advanced Micro Devices, Inc. Multiple array customizable logic device
US4758745A (en) 1986-09-19 1988-07-19 Actel Corporation User programmable integrated circuit interconnect architecture and test method
US4774421A (en) 1984-05-03 1988-09-27 Altera Corporation Programmable logic array device using EPROM technology
EP0094234B1 (en) 1982-05-10 1989-03-08 American Microsystems, Incorporated Combinational logic structure using pass transistors
GB2171231B (en) 1985-02-14 1989-11-01 Intel Corp Software programmable logic array

Patent Citations (113)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA869681A (en) 1971-04-27 Antonazzi Mario Universal printed circuit card contact test fixture
US3201574A (en) * 1960-10-07 1965-08-17 Rca Corp Flexible logic circuit
GB1059213A (en) 1963-07-05 1967-02-15 Westinghouse Electric Corp Computing device
US3431433A (en) * 1964-05-29 1969-03-04 Robert George Ball Digital storage devices using field effect transistor bistable circuits
US3400379A (en) * 1965-01-20 1968-09-03 Ncr Co Generalized logic circuitry
GB1101851A (en) 1965-01-20 1968-01-31 Ncr Co Generalized logic circuitry
GB1090520A (en) 1965-10-18 1967-11-08 Ibm Logic circuits
US3446990A (en) * 1965-12-10 1969-05-27 Stanford Research Inst Controllable logic circuits employing functionally identical gates
US3439185A (en) * 1966-01-11 1969-04-15 Rca Corp Logic circuits employing field-effect transistors
US3483400A (en) * 1966-06-15 1969-12-09 Sharp Kk Flip-flop circuit
US3576984A (en) * 1968-08-09 1971-05-04 Bunker Ramo Multifunction logic network
US3619583A (en) * 1968-10-11 1971-11-09 Bell Telephone Labor Inc Multiple function programmable arrays
US3564514A (en) * 1969-05-23 1971-02-16 Honeywell Inc Programmable logic apparatus
US3743948A (en) * 1969-12-04 1973-07-03 North American Rockwell Pulse train sorter
US3667054A (en) * 1971-02-10 1972-05-30 Us Navy Pulse train decoder with pulse width rejection
US3691401A (en) * 1971-03-10 1972-09-12 Honeywell Inf Systems Convertible nand/nor gate
FR2160969B1 (en) 1971-11-22 1976-10-29 Rca Corp
US3818252A (en) * 1971-12-20 1974-06-18 Hitachi Ltd Universal logical integrated circuit
US3750115A (en) * 1972-04-28 1973-07-31 Gen Electric Read mostly associative memory cell for universal logic
US3816725A (en) * 1972-04-28 1974-06-11 Gen Electric Multiple level associative logic circuits
US3818452A (en) * 1972-04-28 1974-06-18 Gen Electric Electrically programmable logic circuits
US3849638A (en) * 1973-07-18 1974-11-19 Gen Electric Segmented associative logic circuits
US3838296A (en) * 1973-10-29 1974-09-24 Nat Semiconductor Corp Emitter coupled logic transistor circuit
US3990045A (en) * 1974-06-24 1976-11-02 International Business Machines Corporation Array logic fabrication for use in pattern recognition equipments and the like
US3987287A (en) * 1974-12-30 1976-10-19 International Business Machines Corporation High density logic array
US3936812A (en) * 1974-12-30 1976-02-03 Ibm Corporation Segmented parallel rail paths for input/output signals
US4020469A (en) * 1975-04-09 1977-04-26 Frank Manning Programmable arrays
US3967251A (en) * 1975-04-17 1976-06-29 Xerox Corporation User variable computer memory module
US3983543A (en) * 1975-06-30 1976-09-28 International Business Machines Corporation Random access memory read/write buffer circuits incorporating complementary field effect transistors
US4125869A (en) * 1975-07-11 1978-11-14 National Semiconductor Corporation Interconnect logic
US4161662A (en) * 1976-01-22 1979-07-17 Motorola, Inc. Standardized digital logic chip
US4068214A (en) * 1976-02-03 1978-01-10 Massachusetts Institute Of Technology Asynchronous logic array
US4091359A (en) * 1976-02-20 1978-05-23 Siemens Aktiengesellschaft Modular logic circuit utilizing charge-storage transistors
US4120043A (en) * 1976-04-30 1978-10-10 Burroughs Corporation Method and apparatus for multi-function, stored logic Boolean function generation
GB1516817A (en) 1976-06-01 1978-07-05 Ibm Arrangements for performing logical operations
US4032894A (en) * 1976-06-01 1977-06-28 International Business Machines Corporation Logic array with enhanced flexibility
US4084152A (en) * 1976-06-30 1978-04-11 International Business Machines Corporation Time shared programmable logic array
US4157480A (en) * 1976-08-03 1979-06-05 National Research Development Corporation Inverters and logic gates employing inverters
US4103182A (en) * 1976-09-01 1978-07-25 Hewlett-Packard Company Programmable transfer gate array
US4331893A (en) * 1976-09-24 1982-05-25 Giddings & Lewis, Inc. Boolean logic processor without accumulator output feedback
US4453096A (en) * 1976-11-04 1984-06-05 U.S. Philips Corporation MOS Transistor type integrated circuit for the execution of logical operations on a plurality of data signals
US4207556A (en) * 1976-12-14 1980-06-10 Nippon Telegraph And Telephone Public Corporation Programmable logic array arrangement
US4107549A (en) * 1977-05-10 1978-08-15 Moufah Hussein T Ternary logic circuits with CMOS integrated circuits
US4124899A (en) * 1977-05-23 1978-11-07 Monolithic Memories, Inc. Programmable array logic circuit
US4124899B1 (en) * 1977-05-23 1987-04-28
US4237542A (en) * 1977-06-30 1980-12-02 International Business Machines Corporation Programmable logic arrays
US4195352A (en) * 1977-07-08 1980-03-25 Xerox Corporation Split programmable logic array
US4123669A (en) * 1977-09-08 1978-10-31 International Business Machines Corporation Logical OR circuit for programmed logic arrays
US4157589A (en) * 1977-09-09 1979-06-05 Gte Laboratories Incorporated Arithmetic logic apparatus
US4307379A (en) * 1977-11-10 1981-12-22 Raytheon Company Integrated circuit component
US4290121A (en) * 1977-12-02 1981-09-15 Texas Instruments Incorporated Variable function programmed calculator
US4154978A (en) * 1977-12-08 1979-05-15 Operating Systems, Inc. Self-contained bidirectional amplifying repeater
US4244032A (en) * 1977-12-16 1981-01-06 Oliver Douglas E Apparatus for programming a PROM by propagating data words from an address bus to the PROM data terminals
US4284953A (en) * 1977-12-23 1981-08-18 Motorola, Inc. Character framing circuit
US4249246A (en) * 1978-02-27 1981-02-03 Nippon Electric Co., Ltd. Programmable logic array for generating EOR sums of input signals
US4240094A (en) * 1978-03-20 1980-12-16 Harris Corporation Laser-configured logic array
US4177452A (en) * 1978-06-05 1979-12-04 International Business Machines Corporation Electrically programmable logic array
US4295064A (en) * 1978-06-30 1981-10-13 International Business Machines Corporation Logic and array logic driving circuits
US4336601A (en) * 1978-07-04 1982-06-22 Mamoru Tanaka Rewritable programmable logic array
US4348736A (en) * 1978-10-05 1982-09-07 International Business Machines Corp. Programmable logic array adder
US4233667A (en) * 1978-10-23 1980-11-11 International Business Machines Corporation Demand powered programmable logic array
US4348737A (en) * 1978-10-31 1982-09-07 International Business Machines Corporation Multiple-function programmable logic arrays
US4293783A (en) * 1978-11-01 1981-10-06 Massachusetts Institute Of Technology Storage/logic array
US4245324A (en) * 1978-12-15 1981-01-13 International Business Machines Corporation Compact programmable logic read array having multiple outputs
US4208728A (en) * 1978-12-21 1980-06-17 Bell Telephone Laboratories, Incorporated Programable logic array
US4415818A (en) * 1979-01-16 1983-11-15 Nippon Telegraph & Telephone Corp. Programmable sequential logic circuit devices
US4268908A (en) * 1979-02-26 1981-05-19 International Business Machines Corporation Modular macroprocessing system comprising a microprocessor and an extendable number of programmed logic arrays
US4366393A (en) * 1979-03-15 1982-12-28 Nippon Electric Co., Ltd. Integrated logic circuit adapted to performance tests
US4392198A (en) * 1979-07-18 1983-07-05 Matsushita Electric Industrial Company, Limited Method of producing microaddresses and a computer system for achieving the method
US4292548A (en) * 1979-07-27 1981-09-29 Instituto Venezolano De Investigaciones Cientificas (Ivic) Dynamically programmable logic circuits
US4357678A (en) * 1979-12-26 1982-11-02 International Business Machines Corporation Programmable sequential logic array mechanism
EP0031431B1 (en) 1979-12-26 1984-03-07 International Business Machines Corporation Programmable sequential logic array mechanism
US4281398A (en) * 1980-02-12 1981-07-28 Mostek Corporation Block redundancy for memory array
US4415973A (en) * 1980-03-28 1983-11-15 International Computers Limited Array processor with stand-by for replacing failed section
US4380811A (en) * 1980-04-25 1983-04-19 International Business Machines Corp. Programmable logic array with self correction of faults
US4395646A (en) * 1980-11-03 1983-07-26 International Business Machines Corp. Logic performing cell for use in array structures
US4390970A (en) * 1980-12-15 1983-06-28 Texas Instruments Incorporated Rotating register utilizing field effect transistors
US4458297A (en) * 1981-01-16 1984-07-03 Mosaic Systems, Inc. Universal interconnection substrate
US4399516A (en) * 1981-02-10 1983-08-16 Bell Telephone Laboratories, Incorporated Stored-program control machine
US4458163A (en) * 1981-07-20 1984-07-03 Texas Instruments Incorporated Programmable architecture logic
US4422072A (en) * 1981-07-30 1983-12-20 Signetics Corporation Field programmable logic array circuit
US4414547A (en) * 1981-08-05 1983-11-08 General Instrument Corporation Storage logic array having two conductor data column
US4564773A (en) * 1981-08-13 1986-01-14 Fujitsu Limited Semiconductor gate array device having an improved interconnection structure
US4409680A (en) * 1981-08-27 1983-10-11 Ncr Corporation High speed write control for synchronous registers
EP0079127A1 (en) 1981-11-06 1983-05-18 Texas Instruments Incorporated Programmable system component
US4433331A (en) * 1981-12-14 1984-02-21 Bell Telephone Laboratories, Incorporated Programmable logic array interconnection matrix
US4575794A (en) * 1982-02-22 1986-03-11 International Business Machines Corp. Clocking mechanism for multiple overlapped dynamic programmable logic arrays used in a digital control unit
US4446382A (en) * 1982-02-24 1984-05-01 Moore Russell L Arrangement to time separate bidirectional current flow
US4513307A (en) * 1982-05-05 1985-04-23 Rockwell International Corporation CMOS/SOS transistor gate array apparatus
EP0094234B1 (en) 1982-05-10 1989-03-08 American Microsystems, Incorporated Combinational logic structure using pass transistors
US4622648A (en) * 1982-05-10 1986-11-11 American Microsystems, Inc. Combinational logic structure using PASS transistors
US4541067A (en) * 1982-05-10 1985-09-10 American Microsystems, Inc. Combinational logic structure using PASS transistors
US4409499A (en) * 1982-06-14 1983-10-11 Standard Microsystems Corporation High-speed merged plane logic function array
US4519050A (en) * 1982-06-17 1985-05-21 Intel Corporation Radiation shield for an integrated circuit memory with redundant elements
US4717912A (en) * 1982-10-07 1988-01-05 Advanced Micro Devices, Inc. Apparatus for producing any one of a plurality of signals at a single output
US4508977A (en) * 1983-01-11 1985-04-02 Burroughs Corporation Re-programmable PLA
US4742383A (en) * 1983-01-12 1988-05-03 International Business Machines Corporation Multi-function FET masterslice cell
US4495629A (en) * 1983-01-25 1985-01-22 Storage Technology Partners CMOS scannable latch
US4541114A (en) * 1983-05-05 1985-09-10 Research Environmental/Institute of Michigan Routing techniques using serial neighborhood image analyzing system
US4600846A (en) * 1983-10-06 1986-07-15 Sanders Associates, Inc. Universal logic circuit modules
US4558236A (en) * 1983-10-17 1985-12-10 Sanders Associates, Inc. Universal logic circuit
US4551814A (en) * 1983-12-12 1985-11-05 Aerojet-General Corporation Functionally redundant logic network architectures
US4551815A (en) * 1983-12-12 1985-11-05 Aerojet-General Corporation Functionally redundant logic network architectures with logic selection means
US4670749A (en) * 1984-04-13 1987-06-02 Zilog, Inc. Integrated circuit programmable cross-point connection technique
US4774421A (en) 1984-05-03 1988-09-27 Altera Corporation Programmable logic array device using EPROM technology
US4642487A (en) * 1984-09-26 1987-02-10 Xilinx, Inc. Special interconnect for configurable logic array
GB2171231B (en) 1985-02-14 1989-11-01 Intel Corp Software programmable logic array
US4727268A (en) * 1985-02-28 1988-02-23 Kabushiki Kaisha Toshiba Logic circuitry having two programmable interconnection arrays
US4706217A (en) * 1985-03-28 1987-11-10 Kabushiki Kaisha Toshiba Sequential logic circuit
US4742252A (en) * 1985-03-29 1988-05-03 Advanced Micro Devices, Inc. Multiple array customizable logic device
US4700187A (en) * 1985-12-02 1987-10-13 Concurrent Logic, Inc. Programmable, asynchronous logic cell and array
US4758745A (en) 1986-09-19 1988-07-19 Actel Corporation User programmable integrated circuit interconnect architecture and test method
US4758745B1 (en) 1986-09-19 1994-11-15 Actel Corp User programmable integrated circuit interconnect architecture and test method

Non-Patent Citations (40)

* Cited by examiner, † Cited by third party
Title
Alan C. Folmsbee, "PROM Cell Made With An EPROM Process", IEEE Conference on IEDM, 1983, pp. 574-576.
Alan C. Folmsbee, PROM Cell Made With An EPROM Process , IEEE Conference on IEDM, 1983, pp. 574 576. *
Altera, EP300 "Erasable Programmable Logic Device", Rev. 2.0, Undated.
Altera, EP300 Erasable Programmable Logic Device , Rev. 2.0, Undated. *
Altera, EP600. "Erasable Programmable Logic Device", Rev. 1.0. Copyright 1984, 1985 Altera Corporation.
Altera, EP600. Erasable Programmable Logic Device , Rev. 1.0. Copyright 1984, 1985 Altera Corporation. *
B. S. Raju et al., "Programmable Cellular Arrays", International Journal of Control, vol. 14, No. 6, Dec. 1971, pp. 1041-1061; London, G. B.
B. S. Raju et al., Programmable Cellular Arrays , International Journal of Control, vol. 14, No. 6, Dec. 1971, pp. 1041 1061; London, G. B. *
C. Mead and L. Conway, "Introduction to VLSI-Systems", Addison-Wesley Pub., Reading, U.S., Oct. 1980, pp. 150-158.
C. Mead and L. Conway, Introduction to VLSI Systems , Addison Wesley Pub., Reading, U.S., Oct. 1980, pp. 150 158. *
Gamblin et al., "Thin Film Universal Logic Block", IBM T.D.B., vol. 9, No. 6, Nov. 1966, pp. 662-664.
Gamblin et al., Thin Film Universal Logic Block , IBM T.D.B., vol. 9, No. 6, Nov. 1966, pp. 662 664. *
Greer, D. L., "An Associative Logic Matrix" IEEE Journal of Solid-State Circuits, vol. SC-11, No. 5, Oct. 1976.
Greer, D. L., An Associative Logic Matrix IEEE Journal of Solid State Circuits, vol. SC 11, No. 5, Oct. 1976. *
J. I Raffel, MIT Lincoln Laboratory, "On the Use of Nonvolatile Programmable Links for Restructurable VLSI", Proceedings of the Caltech Conference on VLSI, California Institute of Technology, Jan. 1979.
J. I Raffel, MIT Lincoln Laboratory, On the Use of Nonvolatile Programmable Links for Restructurable VLSI , Proceedings of the Caltech Conference on VLSI, California Institute of Technology, Jan. 1979. *
K. J. Dean et al., "Non-Arithmetical Cellular Arrays", Proceedings of the Institution of Electrical Engineers, vol. 119, No. 7, Jul. 1972, pp. 785-789.
K. J. Dean et al., Non Arithmetical Cellular Arrays , Proceedings of the Institution of Electrical Engineers, vol. 119, No. 7, Jul. 1972, pp. 785 789. *
Kye S. Hedlund and Lawrence Snyder, Department of Computer Sciences, Purdue University, "Wafer Scale Integration of Configurable, Highly Parallel (CHiP) Processors", IEEE Proceedings of the 1982 International Conference on Parallel Processing, Aug. 24-27, 1982.
Kye S. Hedlund and Lawrence Snyder, Department of Computer Sciences, Purdue University, Wafer Scale Integration of Configurable, Highly Parallel (CHiP) Processors , IEEE Proceedings of the 1982 International Conference on Parallel Processing, Aug. 24 27, 1982. *
Lawrence Snyder, Department of Computer Sciences, Purdue University, "Overview of the CHiP Computer", Proceedings of the first International Conference on Very Large Scale Integration held at the University of Edinburgh 18-Aug. 1981.
Lawrence Snyder, Department of Computer Sciences, Purdue University, Overview of the CHiP Computer , Proceedings of the first International Conference on Very Large Scale Integration held at the University of Edinburgh 18 Aug. 1981. *
Lawrence Snyder, Purdue University, "Introduction to the Configurable, Highly Parallel Computer", IEEE, Computer, vol. 15, No. 1, Jan. 1982, pp. 47-56.
Lawrence Snyder, Purdue University, Introduction to the Configurable, Highly Parallel Computer , IEEE, Computer, vol. 15, No. 1, Jan. 1982, pp. 47 56. *
Machart et al., "General Function Circuit", IBM T.D.B., vol. 15, No. 1, Jun. 1972, p. 11.
Machart et al., General Function Circuit , IBM T.D.B., vol. 15, No. 1, Jun. 1972, p. 11. *
Mead and Conway, "Introduction to VLSI Systems" copyright 1980 by Addison-Wesley Publishing Co., pp. 263-292.
Mead and Conway, Introduction to VLSI Systems copyright 1980 by Addison Wesley Publishing Co., pp. 263 292. *
Patil, S. S. and Welch, T. A., "A Programmable Logic Approach for VLSI", IEEE Transactions on Computers, vol. C-28, No. 9, Sep. 1979.
Patil, S. S. and Welch, T. A., A Programmable Logic Approach for VLSI , IEEE Transactions on Computers, vol. C 28, No. 9, Sep. 1979. *
R. D. Harrod and H. R. Moore, "Ungated Common I/O Buffer for Card Testing", IBM T.D.B., vol. 21, No. 6, Nov. 1978.
R. D. Harrod and H. R. Moore, Ungated Common I/O Buffer for Card Testing , IBM T.D.B., vol. 21, No. 6, Nov. 1978. *
William Spaw, Alan C. Folmsbee, and George Canepa, "Nonvolatile Memories", IEEE Conference on ISSCC, Feb. 11, 1982.
William Spaw, Alan C. Folmsbee, and George Canepa, Nonvolatile Memories , IEEE Conference on ISSCC, Feb. 11, 1982. *
Wood, R. A., "A High Density Programmable Logic Array Chip", IEEE Transactions on Computers, vol. C-28, No. 9, Sep. 1979.
Wood, R. A., A High Density Programmable Logic Array Chip , IEEE Transactions on Computers, vol. C 28, No. 9, Sep. 1979. *
Wood, R. A., Hsieh, Yu Nian, Price, C. A., and Wang, P. P., An Electrically Alterable PLA for Fast Turnaround Time VLSI Development Hardware , IEEE Journal of Solid State Circuits, vol. SC 16, No. 5, Oct. 1981. *
Wood, R. A., Hsieh, Yu-Nian, Price, C. A., and Wang, P. P., "An Electrically Alterable PLA for Fast Turnaround-Time VLSI Development Hardware", IEEE Journal of Solid-State Circuits, vol. SC-16, No. 5, Oct. 1981.
X. Chen and S. L. Hurst, "A Comparison of Universal-Logic-Module Realizations and Their Application in the Synthesis of Combinatorial and Sequantial Logic Networks", IEEE Transactions on Computers, C-31 No. 2, Feb. 1982.
X. Chen and S. L. Hurst, A Comparison of Universal Logic Module Realizations and Their Application in the Synthesis of Combinatorial and Sequantial Logic Networks , IEEE Transactions on Computers, C 31 No. 2, Feb. 1982. *

Cited By (620)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5510730A (en) * 1986-09-19 1996-04-23 Actel Corporation Reconfigurable programmable interconnect architecture
US5367208A (en) * 1986-09-19 1994-11-22 Actel Corporation Reconfigurable programmable interconnect architecture
US5336950A (en) * 1991-08-29 1994-08-09 National Semiconductor Corporation Configuration features in a configurable logic array
US5488582A (en) * 1992-07-02 1996-01-30 Atmel Corporation Non-disruptive, randomly addressable memory system
US5805503A (en) * 1992-07-02 1998-09-08 Atmel Corporation Non-disruptive randomly addressable memory system
US5561367A (en) * 1992-07-23 1996-10-01 Xilinx, Inc. Structure and method for testing wiring segments in an integrated circuit device
US5744979A (en) * 1992-07-23 1998-04-28 Xilinx, Inc. FPGA having logic cells configured by SRAM memory cells and interconnect configured by antifuses
US5684980A (en) * 1992-07-29 1997-11-04 Virtual Computer Corporation FPGA virtual computer for executing a sequence of program instructions by successively reconfiguring a group of FPGA in response to those instructions
US5633806A (en) * 1992-10-12 1997-05-27 Mitsubishi Denki Kabushiki Kaisha Semiconductor integrated circuit and method of designing same
US5596766A (en) * 1992-11-10 1997-01-21 Infinite Technology Corporation Configurable logic networks
WO1994011949A1 (en) * 1992-11-10 1994-05-26 Infinite Technology Corporation Programmable logic networks
US5357152A (en) * 1992-11-10 1994-10-18 Infinite Technology Corporation Logic system of logic networks with programmable selected functions and programmable operational controls
US5424589A (en) * 1993-02-12 1995-06-13 The Board Of Trustees Of The Leland Stanford Junior University Electrically programmable inter-chip interconnect architecture
US5473267A (en) * 1993-02-16 1995-12-05 Sgs-Thomson Microelectronics Limited Programmable logic device with memory that can store routing data of logic data
US5523706A (en) * 1993-07-02 1996-06-04 Altera Corporation High speed, low power macrocell
US5519629A (en) * 1993-07-19 1996-05-21 Hewlett-Packard Company Tileable gate array cell for programmable logic devices and gate array having tiled gate array cells
US7646218B2 (en) 1993-08-03 2010-01-12 Actel Corporation Architecture and interconnect scheme for programmable logic circuits
US20060202717A1 (en) * 1993-08-03 2006-09-14 Ting Benjamin S Architecture and interconnect scheme for programmable logic circuits
US6507217B2 (en) 1993-08-03 2003-01-14 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US7409664B2 (en) 1993-08-03 2008-08-05 Actel Corporation Architecture and interconnect scheme for programmable logic circuits
US7078933B2 (en) 1993-08-03 2006-07-18 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US20100073024A1 (en) * 1993-08-03 2010-03-25 Ting Benjamin S Architecture and interconnect scheme for programmable logic circuits
US6597196B2 (en) 1993-08-03 2003-07-22 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US8289047B2 (en) 1993-08-03 2012-10-16 Actel Corporation Architecture and interconnect scheme for programmable logic circuits
US20060095886A1 (en) * 1993-08-03 2006-05-04 Ting Beniamin S Architecture and interconnect scheme for programmable logic circuits
US6703861B2 (en) 1993-08-03 2004-03-09 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US6747482B2 (en) 1993-08-03 2004-06-08 Btr. Inc. Architecture and interconnect scheme for programmable logic circuits
US6989688B2 (en) 1993-08-03 2006-01-24 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US7142012B2 (en) 1993-08-03 2006-11-28 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US20080265938A1 (en) * 1993-08-03 2008-10-30 Ting Benjamin S Architecture and interconnect scheme for programmable logic circuits
US20110050282A1 (en) * 1993-08-03 2011-03-03 Ting Benjamin S Architecture and interconnect scheme for programmable logic circuits
US20060076974A1 (en) * 1993-08-03 2006-04-13 Ting Benjamin S Architecture and interconnect scheme for programmable logic circuits
US7017136B2 (en) 1993-08-03 2006-03-21 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US6462578B2 (en) * 1993-08-03 2002-10-08 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US5808479A (en) * 1994-01-27 1998-09-15 Dyna Logic Corporation High speed programmable logic architecture
US5742179A (en) * 1994-01-27 1998-04-21 Dyna Logic Corporation High speed programmable logic architecture
US5614844A (en) * 1994-01-27 1997-03-25 Dyna Logic Corporation High speed programmable logic architecture
US6218856B1 (en) 1994-01-27 2001-04-17 Xilinx, Inc. High speed programmable logic architecture
WO1997037431A1 (en) * 1994-01-27 1997-10-09 Dyna Logic Corporation High speed programmable logic architecture
US5504440A (en) * 1994-01-27 1996-04-02 Dyna Logic Corporation High speed programmable logic architecture
US5590305A (en) * 1994-03-28 1996-12-31 Altera Corporation Programming circuits and techniques for programming logic
US5453706A (en) * 1994-04-01 1995-09-26 Xilinx, Inc. Field programmable gate array providing contention free configuration and reconfiguration
US5430687A (en) * 1994-04-01 1995-07-04 Xilinx, Inc. Programmable logic device including a parallel input device for loading memory cells
US5781756A (en) * 1994-04-01 1998-07-14 Xilinx, Inc. Programmable logic device with partially configurable memory cells and a method for configuration
US5682107A (en) * 1994-04-01 1997-10-28 Xilinx, Inc. FPGA architecture with repeatable tiles including routing matrices and logic matrices
US5883525A (en) * 1994-04-01 1999-03-16 Xilinx, Inc. FPGA architecture with repeatable titles including routing matrices and logic matrices
US5550843A (en) * 1994-04-01 1996-08-27 Xilinx, Inc. Programmable scan chain testing structure and method
US5675589A (en) * 1994-04-01 1997-10-07 Xilinx, Inc. Programmable scan chain testing structure and method
US5504439A (en) * 1994-04-01 1996-04-02 Xilinx, Inc. I/O interface cell for use with optional pad
US6181162B1 (en) 1994-04-10 2001-01-30 Altera Corporation Programmable logic device with highly routable interconnect
US5594366A (en) * 1994-05-04 1997-01-14 Atmel Corporation Programmable logic device with regional and universal signal routing
WO1995030952A1 (en) * 1994-05-04 1995-11-16 Atmel Corporation Programmable logic device with regional and universal signal routing
USRE38651E1 (en) * 1994-05-18 2004-11-09 Altera Corporation Variable depth and width memory device
US5617573A (en) * 1994-05-23 1997-04-01 Xilinx, Inc. State splitting for level reduction
US5426379A (en) * 1994-07-29 1995-06-20 Xilinx, Inc. Field programmable gate array with built-in bitstream data expansion
US5923868A (en) * 1994-07-29 1999-07-13 Cypress Semiconductor Corp. Methods for maximizing routability in a programmable interconnect matrix having less than full connectability
US5450022A (en) * 1994-10-07 1995-09-12 Xilinx Inc. Structure and method for configuration of a field programmable gate array
US5815726A (en) * 1994-11-04 1998-09-29 Altera Corporation Coarse-grained look-up table architecture
US5457408A (en) * 1994-11-23 1995-10-10 At&T Corp. Method and apparatus for verifying whether a bitstream received by a field programmable gate array (FPGA) is intended for that FPGA
US5598109A (en) * 1995-02-14 1997-01-28 Altera Corporation Programmable logic array device with grouped logic regions and three types of conductors
US5537057A (en) * 1995-02-14 1996-07-16 Altera Corporation Programmable logic array device with grouped logic regions and three types of conductors
US5754823A (en) * 1995-02-23 1998-05-19 Datalogic, Inc. Configurable I/O system using logic state arrays
US5581198A (en) * 1995-02-24 1996-12-03 Xilinx, Inc. Shadow DRAM for programmable logic devices
US5847577A (en) * 1995-02-24 1998-12-08 Xilinx, Inc. DRAM memory cell for programmable logic devices
US5570040A (en) * 1995-03-22 1996-10-29 Altera Corporation Programmable logic array integrated circuit incorporating a first-in first-out memory
US5572148A (en) * 1995-03-22 1996-11-05 Altera Corporation Programmable logic array integrated circuit with general-purpose memory configurable as a random access or FIFO memory
US6340897B1 (en) 1995-03-22 2002-01-22 Altera Corporation Programmable logic array integrated circuit with general-purpose memory configurable as a random access or FIFO memory
US5737631A (en) * 1995-04-05 1998-04-07 Xilinx Inc Reprogrammable instruction set accelerator
US5748979A (en) * 1995-04-05 1998-05-05 Xilinx Inc Reprogrammable instruction set accelerator using a plurality of programmable execution units and an instruction page table
USRE37195E1 (en) 1995-05-02 2001-05-29 Xilinx, Inc. Programmable switch for FPGA input/output signals
US5737235A (en) * 1995-05-02 1998-04-07 Xilinx Inc FPGA with parallel and serial user interfaces
US5705938A (en) * 1995-05-02 1998-01-06 Xilinx, Inc. Programmable switch for FPGA input/output signals
US7009422B2 (en) 1995-05-03 2006-03-07 Btr, Inc. Floor plan for scalable multiple level tab oriented interconnect architecture
US20060114023A1 (en) * 1995-05-03 2006-06-01 Ting Benjamin S Floor plan for scalable multiple level tab oriented interconnect architecture
US6417690B1 (en) * 1995-05-03 2002-07-09 Btr, Inc. Floor plan for scalable multiple level tab oriented interconnect architecture
US7126375B2 (en) 1995-05-03 2006-10-24 Btr, Inc. Floor plan for scalable multiple level tab oriented interconnect architecture
US5752077A (en) * 1995-05-15 1998-05-12 Motorola, Inc. Data processing system having a multi-function input/output port with individual pull-up and pull-down control
US5796267A (en) * 1995-05-17 1998-08-18 Altera Corporation Tri-Statable input/output circuitry for programmable logic
US6396304B2 (en) 1995-05-17 2002-05-28 Altera Corporation Programmable logic array integrated circuits with blocks of logic regions grouped into super-blocks
US5689195A (en) * 1995-05-17 1997-11-18 Altera Corporation Programmable logic array integrated circuit devices
US5680061A (en) * 1995-05-17 1997-10-21 Altera Corporation Techniques for programming programmable logic array devices
US5986470A (en) 1995-05-17 1999-11-16 Altera Corporation Programmable logic array integrated circuit devices
US6191608B1 (en) 1995-05-17 2001-02-20 Altera Corporation Techniques for programming programmable logic array devices
US6204688B1 (en) 1995-05-17 2001-03-20 Altera Corporation Programmable logic array integrated circuit devices with interleaved logic array blocks
US5936425A (en) * 1995-05-17 1999-08-10 Altera Corporation Tri-statable input/output circuitry for programmable logic
US5543732A (en) * 1995-05-17 1996-08-06 Altera Corporation Programmable logic array devices with interconnect lines of various lengths
US5543730A (en) * 1995-05-17 1996-08-06 Altera Corporation Techniques for programming programmable logic array devices
US5705939A (en) * 1995-05-17 1998-01-06 Altera Corporation Programmable logic array integrated circuits with segmented, selectively connectable, long interconnection conductors
US6184705B1 (en) 1995-05-17 2001-02-06 Altera Corporation Techniques for programming programmable logic array devices
US6259272B1 (en) 1995-05-17 2001-07-10 Altera Corporation Programmable logic array integrated circuit architectures
US5614840A (en) * 1995-05-17 1997-03-25 Altera Corporation Programmable logic array integrated circuits with segmented, selectively connectable, long interconnection conductors
US6392438B1 (en) 1995-05-17 2002-05-21 Altera Corporation Programmable logic array integrated circuit devices
US6154055A (en) 1995-05-17 2000-11-28 Altera Corporation Programmable logic array integrated circuit devices
US6366121B2 (en) 1995-05-17 2002-04-02 Altera Corporation Programmable logic array integrated circuit architectures
US5541530A (en) * 1995-05-17 1996-07-30 Altera Corporation Programmable logic array integrated circuits with blocks of logic regions grouped into super-blocks
US5717901A (en) * 1995-05-17 1998-02-10 Altera Corporation Variable depth and width memory device
US5850152A (en) * 1995-05-17 1998-12-15 Altera Corporation Programmable logic array integrated circuit devices
US5850151A (en) * 1995-05-17 1998-12-15 Altera Corporation Programmable logic array intergrated circuit devices
US5909126A (en) * 1995-05-17 1999-06-01 Altera Corporation Programmable logic array integrated circuit devices with interleaved logic array blocks
US6278291B1 (en) 1995-05-17 2001-08-21 Altera Corporation Programmable logic array devices with interconnect lines of various lengths
US6815981B2 (en) 1995-05-17 2004-11-09 Altera Corporation Programmable logic array integrated circuit devices
US5703498A (en) * 1995-06-02 1997-12-30 International Business Machines Corporation Programmable array clock/reset resource
US5631578A (en) * 1995-06-02 1997-05-20 International Business Machines Corporation Programmable array interconnect network
US5646546A (en) * 1995-06-02 1997-07-08 International Business Machines Corporation Programmable logic cell having configurable gates and multiplexers
US5671432A (en) * 1995-06-02 1997-09-23 International Business Machines Corporation Programmable array I/O-routing resource
US5748009A (en) * 1995-06-02 1998-05-05 International Business Machines Corporation Programmable logic cell
US5717346A (en) * 1995-06-02 1998-02-10 International Business Machines Corporation Low skew multiplexer network and programmable array clock/reset application thereof
US5646544A (en) * 1995-06-05 1997-07-08 International Business Machines Corporation System and method for dynamically reconfiguring a programmable gate array
WO1996042140A1 (en) * 1995-06-09 1996-12-27 Advanced Micro Devices, Inc. Field programmable gate array (fpga) with interconnect encoding
US5760607A (en) * 1995-07-10 1998-06-02 Xilinx, Inc. System comprising field programmable gate array and intelligent memory
WO1997003444A1 (en) * 1995-07-10 1997-01-30 Xilinx, Inc. System comprising field programmable gate array and intelligent memory
US5559450A (en) * 1995-07-27 1996-09-24 Lucent Technologies Inc. Field programmable gate array with multi-port RAM
EP0756383A2 (en) 1995-07-27 1997-01-29 AT&T IPM Corp. Field programmable gate array with multi-port RAM
US5570039A (en) * 1995-07-27 1996-10-29 Lucent Technologies Inc. Programmable function unit as parallel multiplier cell
US5565793A (en) * 1995-08-22 1996-10-15 Altera Corporation Programmable logic array integrated circuit devices with regions of enhanced interconnectivity
US5764080A (en) * 1995-08-24 1998-06-09 Altera Corporation Input/output interface circuitry for programmable logic array integrated circuit devices
US6049225A (en) 1995-08-24 2000-04-11 Altera Corporation Input/output interface circuitry for programmable logic array integrated circuit devices
US5631576A (en) * 1995-09-01 1997-05-20 Altera Corporation Programmable logic array integrated circuit devices with flexible carry chains
US5821773A (en) * 1995-09-06 1998-10-13 Altera Corporation Look-up table based logic element with complete permutability of the inputs to the secondary signals
US20040178820A1 (en) * 1995-10-13 2004-09-16 Jean Barbier Reconfigurable integrated circuit with integrated debugging facilities and scalable programmable interconnect
US6717433B2 (en) 1995-10-13 2004-04-06 Jean Barbier Reconfigurable integrated circuit with integrated debugging facilities and scalable programmable interconnect
US5670895A (en) * 1995-10-19 1997-09-23 Altera Corporation Routing connections for programmable logic array integrated circuits
US5656950A (en) * 1995-10-26 1997-08-12 Xilinx, Inc. Interconnect lines including tri-directional buffer circuits
US5943242A (en) 1995-11-17 1999-08-24 Pact Gmbh Dynamically reconfigurable data processing system
US6859869B1 (en) 1995-11-17 2005-02-22 Pact Xpp Technologies Ag Data processing system
US5672985A (en) * 1995-12-18 1997-09-30 Altera Corporation Programmable logic array integrated circuits with carry and/or cascade rings
US5691653A (en) * 1996-01-16 1997-11-25 Altera Corporation Product term based programmable logic array devices with reduced control memory requirements
US5787007A (en) * 1996-01-30 1998-07-28 Xilinx, Inc. Structure and method for loading RAM data within a programmable logic device
US5936424A (en) * 1996-02-02 1999-08-10 Xilinx, Inc. High speed bus with tree structure for selecting bus driver
US5677638A (en) * 1996-02-02 1997-10-14 Xilinx, Inc. High speed tristate bus with multiplexers for selecting bus driver
US5627480A (en) * 1996-02-08 1997-05-06 Xilinx, Inc. Tristatable bidirectional buffer for tristate bus lines
US5726484A (en) * 1996-03-06 1998-03-10 Xilinx, Inc. Multilayer amorphous silicon antifuse
US5726584A (en) * 1996-03-18 1998-03-10 Xilinx, Inc. Virtual high density programmable integrated circuit having addressable shared memory cells
US5694058A (en) * 1996-03-20 1997-12-02 Altera Corporation Programmable logic array integrated circuits with improved interconnection conductor utilization
US6570404B1 (en) 1996-03-29 2003-05-27 Altera Corporation High-performance programmable logic architecture
US6882176B1 (en) 1996-03-29 2005-04-19 Altera Corporation High-performance programmable logic architecture
US5872463A (en) * 1996-04-04 1999-02-16 Altera Corporation Routing in programmable logic devices using shared distributed programmable logic connectors
US5835998A (en) * 1996-04-04 1998-11-10 Altera Corporation Logic cell for programmable logic devices
US6414514B1 (en) 1996-04-05 2002-07-02 Altera Corporation Logic device architecture and method of operation
US6208162B1 (en) 1996-04-05 2001-03-27 Altera Corporation Technique for preconditioning I/Os during reconfiguration
US6184706B1 (en) 1996-04-05 2001-02-06 Altera Corporation Logic device architecture and method of operation
US5869979A (en) * 1996-04-05 1999-02-09 Altera Corporation Technique for preconditioning I/Os during reconfiguration
US6294928B1 (en) 1996-04-05 2001-09-25 Altera Corporation Programmable logic device with highly routable interconnect
US6492834B1 (en) 1996-04-05 2002-12-10 Altera Corporation Programmable logic device with highly routable interconnect
US6242946B1 (en) 1996-04-15 2001-06-05 Altera Corporation Embedded memory block with FIFO mode for programmable logic device
US5894565A (en) * 1996-05-20 1999-04-13 Atmel Corporation Field programmable gate array with distributed RAM and increased cell utilization
US6292021B1 (en) 1996-05-20 2001-09-18 Atmel Corporation FPGA structure having main, column and sector reset lines
US6384630B2 (en) 1996-06-05 2002-05-07 Altera Corporation Techniques for programming programmable logic array devices
US5723984A (en) 1996-06-07 1998-03-03 Advanced Micro Devices, Inc. Field programmable gate array (FPGA) with interconnect encoding
US6614259B2 (en) 1996-07-18 2003-09-02 Altera Corporation Configuration memory integrated circuit
US6259271B1 (en) 1996-07-18 2001-07-10 Altera Corporation Configuration memory integrated circuit
US5870327A (en) * 1996-07-19 1999-02-09 Xilinx, Inc. Mixed mode RAM/ROM cell using antifuses
USRE40423E1 (en) 1996-07-29 2008-07-08 Xilinx, Inc. Multiport RAM with programmable data port configuration
US5821772A (en) * 1996-08-07 1998-10-13 Xilinx, Inc. Programmable address decoder for programmable logic device
US5789938A (en) 1996-09-04 1998-08-04 Xilinx, Inc. Structure and method for reading blocks of data from selectable points in a memory device
US5923614A (en) * 1996-09-04 1999-07-13 Xilinx, Inc. Structure and method for reading blocks of data from selectable points in a memory device
US5781032A (en) * 1996-09-09 1998-07-14 International Business Machines Corporation Programmable inverter circuit used in a programmable logic cell
US6356514B1 (en) 1996-09-17 2002-03-12 Xilinx, Inc. Built-in self test method for measuring clock to out delays
US6232845B1 (en) 1996-09-17 2001-05-15 Xilinx, Inc. Circuit for measuring signal delays in synchronous memory elements
US6233205B1 (en) 1996-09-17 2001-05-15 Xilinx, Inc. Built-in self test method for measuring clock to out delays
US6219305B1 (en) 1996-09-17 2001-04-17 Xilinx, Inc. Method and system for measuring signal propagation delays using ring oscillators
US6611477B1 (en) 1996-09-17 2003-08-26 Xilinx, Inc. Built-in self test using pulse generators
US6466520B1 (en) 1996-09-17 2002-10-15 Xilinx, Inc. Built-in AC self test using pulse generators
US5844854A (en) * 1996-09-18 1998-12-01 Altera Corporation Programmable logic device with two dimensional memory addressing
US5880597A (en) * 1996-09-18 1999-03-09 Altera Corporation Interleaved interconnect for programmable logic array devices
US5773993A (en) * 1996-09-26 1998-06-30 Xilinx, Inc. Configurable electronic device which is compatible with a configuration bitstream of a prior generation configurable electronic device
US20030201794A1 (en) * 1996-10-10 2003-10-30 Altera Corporation Programmable logic device with hierarchical interconnection resources
US6798242B2 (en) 1996-10-10 2004-09-28 Altera Corporation Programmable logic device with hierarchical interconnection resources
US6417694B1 (en) 1996-10-10 2002-07-09 Altera Corporation Programmable logic device with hierarchical interconnection resources
US6300794B1 (en) 1996-10-10 2001-10-09 Altera Corporation Programmable logic device with hierarchical interconnection resources
US6577160B2 (en) 1996-10-10 2003-06-10 Altera Corporation Programmable logic device with hierarchical interconnection resources
US5847580A (en) * 1996-10-10 1998-12-08 Xilinx, Inc. High speed bidirectional bus with multiplexers
US5760611A (en) * 1996-10-25 1998-06-02 International Business Machines Corporation Function generator for programmable gate array
US5844422A (en) * 1996-11-13 1998-12-01 Xilinx, Inc. State saving and restoration in reprogrammable FPGAs
US5889413A (en) * 1996-11-22 1999-03-30 Xilinx, Inc. Lookup tables which double as shift registers
US6323682B1 (en) 1996-11-22 2001-11-27 Xilinx, Inc. FPGA architecture with wide function multiplexers
US6288568B1 (en) 1996-11-22 2001-09-11 Xilinx, Inc. FPGA architecture with deep look-up table RAMs
US6262597B1 (en) 1996-11-22 2001-07-17 Xilinx, Inc. FIFO in FPGA having logic elements that include cascadable shift registers
US6297665B1 (en) 1996-11-22 2001-10-02 Xilinx, Inc. FPGA architecture with dual-port deep look-up table RAMS
US5818730A (en) * 1996-12-05 1998-10-06 Xilinx, Inc. FPGA one turn routing structure and method using minimum diffusion area
US6188091B1 (en) 1996-12-05 2001-02-13 Xilinx, Inc. FPGA one turn routing structure using minimum diffusion area
US6425068B1 (en) 1996-12-09 2002-07-23 Pact Gmbh Unit for processing numeric and logic operations for use in central processing units (cpus), multiprocessor systems, data-flow processors (dsps), systolic processors and field programmable gate arrays (epgas)
US7565525B2 (en) 1996-12-09 2009-07-21 Pact Xpp Technologies Ag Runtime configurable arithmetic and logic cell
US7822968B2 (en) 1996-12-09 2010-10-26 Martin Vorbach Circuit having a multidimensional structure of configurable cells that include multi-bit-wide inputs and outputs
US6728871B1 (en) 1996-12-09 2004-04-27 Pact Xpp Technologies Ag Runtime configurable arithmetic and logic cell
US8156312B2 (en) 1996-12-09 2012-04-10 Martin Vorbach Processor chip for reconfigurable data processing, for processing numeric and logic operations and including function and interconnection control units
US7237087B2 (en) 1996-12-09 2007-06-26 Pact Xpp Technologies Ag Reconfigurable multidimensional array processor allowing runtime reconfiguration of selected individual array cells
US7650448B2 (en) 1996-12-20 2010-01-19 Pact Xpp Technologies Ag I/O and memory bus system for DFPS and units with two- or multi-dimensional programmable cell architectures
US7243175B2 (en) 1996-12-20 2007-07-10 Pact Xpp Technologies Ag I/O and memory bus system for DFPs and units with two-or multi-dimensional programmable cell architectures
US7337249B2 (en) 1996-12-20 2008-02-26 Pact Xpp Technologies Ag I/O and memory bus system for DFPS and units with two- or multi-dimensional programmable cell architectures
US8195856B2 (en) 1996-12-20 2012-06-05 Martin Vorbach I/O and memory bus system for DFPS and units with two- or multi-dimensional programmable cell architectures
US6513077B2 (en) 1996-12-20 2003-01-28 Pact Gmbh I/O and memory bus system for DFPs and units with two- or multi-dimensional programmable cell architectures
US6338106B1 (en) 1996-12-20 2002-01-08 Pact Gmbh I/O and memory bus system for DFPS and units with two or multi-dimensional programmable cell architectures
US7174443B1 (en) 1996-12-20 2007-02-06 Pact Xpp Technologies Ag Run-time reconfiguration method for programmable units
US6119181A (en) 1996-12-20 2000-09-12 Pact Gmbh I/O and memory bus system for DFPs and units with two- or multi-dimensional programmable cell architectures
US20040199688A1 (en) * 1996-12-20 2004-10-07 Martin Vorbach I/O and memory bus system for DFPs and units with two-or multi-dimensional programmable cell architectures
US6721830B2 (en) 1996-12-20 2004-04-13 Pact Xpp Technologies Ag I/O and memory bus system for DFPs and units with two- or multi-dimensional programmable cell architectures
US7899962B2 (en) 1996-12-20 2011-03-01 Martin Vorbach I/O and memory bus system for DFPs and units with two- or multi-dimensional programmable cell architectures
US6088795A (en) 1996-12-27 2000-07-11 Pact Gmbh Process for automatic dynamic reloading of data flow processors (DFPs) and units with two or three-dimensional programmable cell architectures (FPGAs, DPGAs and the like)
US6477643B1 (en) 1996-12-27 2002-11-05 Pact Gmbh Process for automatic dynamic reloading of data flow processors (dfps) and units with two-or-three-dimensional programmable cell architectures (fpgas, dpgas, and the like)
US7822881B2 (en) 1996-12-27 2010-10-26 Martin Vorbach Process for automatic dynamic reloading of data flow processors (DFPs) and units with two- or three-dimensional programmable cell architectures (FPGAs, DPGAs, and the like)
US5828230A (en) * 1997-01-09 1998-10-27 Xilinx, Inc. FPGA two turn routing structure with lane changing and minimum diffusion area
US6708191B2 (en) 1997-01-21 2004-03-16 Xilinx, Inc. Configurable logic block with and gate for efficient multiplication in FPGAS
US6427156B1 (en) 1997-01-21 2002-07-30 Xilinx, Inc. Configurable logic block with AND gate for efficient multiplication in FPGAS
US6038650A (en) 1997-02-04 2000-03-14 Pactgmbh Method for the automatic address generation of modules within clusters comprised of a plurality of these modules
US7036036B2 (en) 1997-02-08 2006-04-25 Pact Xpp Technologies Ag Method of self-synchronization of configurable elements of a programmable module
USRE45109E1 (en) 1997-02-08 2014-09-02 Pact Xpp Technologies Ag Method of self-synchronization of configurable elements of a programmable module
US6968452B2 (en) 1997-02-08 2005-11-22 Pact Xpp Technologies Ag Method of self-synchronization of configurable elements of a programmable unit
USRE44365E1 (en) 1997-02-08 2013-07-09 Martin Vorbach Method of self-synchronization of configurable elements of a programmable module
US6526520B1 (en) 1997-02-08 2003-02-25 Pact Gmbh Method of self-synchronization of configurable elements of a programmable unit
USRE44383E1 (en) 1997-02-08 2013-07-16 Martin Vorbach Method of self-synchronization of configurable elements of a programmable module
USRE45223E1 (en) 1997-02-08 2014-10-28 Pact Xpp Technologies Ag Method of self-synchronization of configurable elements of a programmable module
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
US7010667B2 (en) * 1997-02-11 2006-03-07 Pact Xpp Technologies Ag Internal bus system for DFPS and units with two- or multi-dimensional programmable cell architectures, for managing large volumes of data with a high interconnection complexity
US6405299B1 (en) 1997-02-11 2002-06-11 Pact Gmbh Internal bus system for DFPS and units with two- or multi-dimensional programmable cell architectures, for managing large volumes of data with a high interconnection complexity
US6646467B1 (en) 1997-02-20 2003-11-11 Altera Corporation PCI-compatible programmable logic devices
US7148722B1 (en) 1997-02-20 2006-12-12 Altera Corporation PCI-compatible programmable logic devices
US6271681B1 (en) 1997-02-20 2001-08-07 Altera Corporation PCI-compatible programmable logic devices
US5999015A (en) 1997-02-20 1999-12-07 Altera Corporation Logic region resources for programmable logic devices
US6292022B2 (en) 1997-02-26 2001-09-18 Xilinx, Inc. Interconnect structure for a programmable logic device
US6204690B1 (en) 1997-02-26 2001-03-20 Xilinx, Inc. FPGA architecture with offset interconnect lines
US6396303B1 (en) 1997-02-26 2002-05-28 Xilinx, Inc. Expandable interconnect structure for FPGAS
US6448808B2 (en) 1997-02-26 2002-09-10 Xilinx, Inc. Interconnect structure for a programmable logic device
US5889411A (en) * 1997-02-26 1999-03-30 Xilinx, Inc. FPGA having logic element carry chains capable of generating wide XOR functions
US6204689B1 (en) 1997-02-26 2001-03-20 Xilinx, Inc. Input/output interconnect circuit for FPGAs
US5907248A (en) * 1997-02-26 1999-05-25 Xilinx, Inc. FPGA interconnect structure with high-speed high fanout capability
US6201410B1 (en) 1997-02-26 2001-03-13 Xilinx, Inc. Wide logic gate implemented in an FPGA configurable logic element
US6320411B1 (en) 1997-03-20 2001-11-20 Altera Corporation Programmable logic array devices with enhanced interconnectivity between adjacent logic regions
US6184710B1 (en) 1997-03-20 2001-02-06 Altera Corporation Programmable logic array devices with enhanced interconnectivity between adjacent logic regions
US6347061B1 (en) 1997-03-21 2002-02-12 Altera Corporation Programmable logic array device with random access memory configurable as product terms
US6556500B2 (en) 1997-03-21 2003-04-29 Altera Corporation Programmable logic array device with random access memory configurable as product terms
US5883526A (en) * 1997-04-17 1999-03-16 Altera Corporation Hierarchical interconnect for programmable logic devices
US6181159B1 (en) 1997-05-06 2001-01-30 Altera Corporation Integrated circuit incorporating a programmable cross-bar switch
US6404225B1 (en) 1997-05-06 2002-06-11 Altera Corporation Integrated circuit incorporating a programmable cross-bar switch
US6362646B1 (en) 1997-06-20 2002-03-26 Altera Corporation Method and apparatus for reducing memory resources in a programmable logic device
US6353551B1 (en) 1997-08-19 2002-03-05 Altera Corporation Static random access memory circuits
EP1643507A2 (en) 1997-08-19 2006-04-05 Altera Corporation Static random access memory circuits
US6263400B1 (en) * 1997-08-21 2001-07-17 Altera Corporation Memory cells configurable as CAM or RAM in programmable logic devices
US6392954B2 (en) 1997-10-14 2002-05-21 Altera Corporation Dual port programmable logic device variable depth and width memory array
US6191998B1 (en) 1997-10-16 2001-02-20 Altera Corporation Programmable logic device memory array circuit having combinable single-port memory arrays
US6278288B1 (en) 1997-10-16 2001-08-21 Altera Corporation Programmable logic device with enhanced multiplexing capabilities in interconnect resources
US6384625B1 (en) 1997-10-16 2002-05-07 Altera Corporation Programmable logic devices with enhanced multiplexing capabilities
US6288970B1 (en) 1997-10-16 2001-09-11 Altera Corporation Programmable logic device memory array circuit having combinable single-port memory arrays
US6225823B1 (en) 1997-10-16 2001-05-01 Altera Corporation Input/output circuitry for programmable logic devices
US6255846B1 (en) 1997-10-16 2001-07-03 Altera Corporation Programmable logic devices with enhanced multiplexing capabilities
US6636070B1 (en) 1997-10-16 2003-10-21 Altera Corp Driver circuitry for programmable logic devices with hierarchical interconnection resources
US6335634B1 (en) 1997-10-16 2002-01-01 Srinivas T. Reddy Circuitry and methods for internal interconnection of programmable logic devices
US6480025B1 (en) 1997-10-16 2002-11-12 Altera Corporation Driver circuitry for programmable logic devices with hierarchical interconnection resources
US6191611B1 (en) 1997-10-16 2001-02-20 Altera Corporation Driver circuitry for programmable logic devices with hierarchical interconnection resources
US6242767B1 (en) 1997-11-10 2001-06-05 Lightspeed Semiconductor Corp. Asic routing architecture
US6289494B1 (en) 1997-11-12 2001-09-11 Quickturn Design Systems, Inc. Optimized emulation and prototyping architecture
US6625793B2 (en) 1997-11-12 2003-09-23 Quickturn Design Systems, Inc. Optimized emulation and prototyping architecture
US6185724B1 (en) 1997-12-02 2001-02-06 Xilinx, Inc. Template-based simulated annealing move-set that improves FPGA architectural feature utilization
US6086629A (en) 1997-12-04 2000-07-11 Xilinx, Inc. Method for design implementation of routing in an FPGA using placement directives such as local outputs and virtual buffers
US6046603A (en) 1997-12-12 2000-04-04 Xilinx, Inc. Method and apparatus for controlling the partial reconfiguration of a field programmable gate array
US6697979B1 (en) 1997-12-22 2004-02-24 Pact Xpp Technologies Ag Method of repairing integrated circuits
US8819505B2 (en) 1997-12-22 2014-08-26 Pact Xpp Technologies Ag Data processor having disabled cores
US6172520B1 (en) 1997-12-30 2001-01-09 Xilinx, Inc. FPGA system with user-programmable configuration ports and method for reconfiguring the FPGA
US6209118B1 (en) 1998-01-21 2001-03-27 Micron Technology, Inc. Method for modifying an integrated circuit
US6601228B1 (en) 1998-01-21 2003-07-29 Micron Technology, Inc. Method for modifying an integrated circuit
US20040098702A1 (en) * 1998-01-21 2004-05-20 Laberge Paul A. Method for modifying an integrated circuit
US7222325B2 (en) 1998-01-21 2007-05-22 Laberge Paul A Method for modifying an integrated circuit
US6265895B1 (en) 1998-01-30 2001-07-24 Altera Corporation Programmable logic device incorporating a memory efficient interconnection device
US6571381B1 (en) 1998-02-25 2003-05-27 Pact Xpp Technologies Ag Method for deadlock-free configuration of dataflow processors and modules with a two- or multidimensional programmable cell structure (FPGAs, DPGAs, etc.)
US6480937B1 (en) 1998-02-25 2002-11-12 Pact Informationstechnologie Gmbh Method for hierarchical caching of configuration data having dataflow processors and modules having two-or multidimensional programmable cell structure (FPGAs, DPGAs, etc.)--
US6687788B2 (en) 1998-02-25 2004-02-03 Pact Xpp Technologies Ag Method of hierarchical caching of configuration data having dataflow processors and modules having two-or multidimensional programmable cell structure (FPGAs, DPGAs , etc.)
US6242947B1 (en) 1998-04-24 2001-06-05 Xilinx, Inc. PLD having a window pane architecture with segmented interconnect wiring between logic block arrays
US6177808B1 (en) * 1998-04-30 2001-01-23 Compaq Computer Corporation Integration of bidirectional switches with programmable logic
US6144573A (en) 1998-06-26 2000-11-07 Altera Corporation Programmable logic devices with improved content addressable memory capabilities
US6344989B1 (en) 1998-06-26 2002-02-05 Altera Corporation Programmable logic devices with improved content addressable memory capabilities
US6069489A (en) 1998-08-04 2000-05-30 Xilinx, Inc. FPGA having fast configuration memory data readback
US6137307A (en) 1998-08-04 2000-10-24 Xilinx, Inc. Structure and method for loading wide frames of data from a narrow input bus
US6323681B1 (en) 1998-08-04 2001-11-27 Xilinx, Inc. Circuits and methods for operating a multiplexer array
US6154048A (en) 1998-08-04 2000-11-28 Xilinx, Inc. Structure and method for loading narrow frames of data from a wide input bus
US6097210A (en) 1998-08-04 2000-08-01 Xilinx, Inc. Multiplexer array with shifted input traces
US6201406B1 (en) 1998-08-04 2001-03-13 Xilinx, Inc. FPGA configurable by two types of bitstreams
US6184707B1 (en) 1998-10-07 2001-02-06 Altera Corporation Look-up table based logic element with complete permutability of the inputs to the secondary signals
US6467009B1 (en) 1998-10-14 2002-10-15 Triscend Corporation Configurable processor system unit
US6243664B1 (en) 1998-10-27 2001-06-05 Cypress Semiconductor Corporation Methods for maximizing routability in a programmable interconnect matrix having less than full connectability
US6453382B1 (en) 1998-11-05 2002-09-17 Altera Corporation Content addressable memory encoded outputs
US6507216B1 (en) 1998-11-18 2003-01-14 Altera Corporation Efficient arrangement of interconnection resources on programmable logic devices
US6480028B2 (en) 1998-11-18 2002-11-12 Altera Corporation Programmable logic device architectures with super-regions having logic regions and memory region
US6670825B1 (en) 1998-11-18 2003-12-30 Altera Corporation Efficient arrangement of interconnection resources on programmable logic devices
US6879183B2 (en) 1998-11-18 2005-04-12 Altera Corporation Programmable logic device architectures with super-regions having logic regions and a memory region
US6469553B1 (en) 1999-01-08 2002-10-22 Altera Corporation Phase-locked loop circuitry for programmable logic devices
US6218876B1 (en) 1999-01-08 2001-04-17 Altera Corporation Phase-locked loop circuitry for programmable logic devices
US6301695B1 (en) 1999-01-14 2001-10-09 Xilinx, Inc. Methods to securely configure an FPGA using macro markers
US6381732B1 (en) 1999-01-14 2002-04-30 Xilinx, Inc. FPGA customizable to accept selected macros
US6357037B1 (en) 1999-01-14 2002-03-12 Xilinx, Inc. Methods to securely configure an FPGA to accept selected macros
US6324676B1 (en) 1999-01-14 2001-11-27 Xilinx, Inc. FPGA customizable to accept selected macros
US6305005B1 (en) 1999-01-14 2001-10-16 Xilinx, Inc. Methods to securely configure an FPGA using encrypted macros
US6154052A (en) 1999-02-04 2000-11-28 Xilinx, Inc. Combined tristate/carry logic mechanism
US6654889B1 (en) 1999-02-19 2003-11-25 Xilinx, Inc. Method and apparatus for protecting proprietary configuration data for programmable logic devices
US6603332B2 (en) 1999-02-25 2003-08-05 Xilinx, Inc. Configurable logic block for PLD with logic gate for combining output with another configurable logic block
US8468329B2 (en) 1999-02-25 2013-06-18 Martin Vorbach Pipeline configuration protocol and configuration unit communication
US20040222818A1 (en) * 1999-03-04 2004-11-11 Altera Corporation Interconnection resources for programmable logic integrated circuit devices
US6342792B1 (en) 1999-03-04 2002-01-29 Altera Corporation Logic module circuitry for programmable logic devices
US6480027B1 (en) 1999-03-04 2002-11-12 Altera Corporation Driver circuitry for programmable logic devices
US6614261B2 (en) 1999-03-04 2003-09-02 Altera Corp Interconnection and input/output resources for programable logic integrated circuit devices
US7492188B2 (en) 1999-03-04 2009-02-17 Altera Corporation Interconnection and input/output resources for programmable logic integrated circuit devices
US6727727B2 (en) 1999-03-04 2004-04-27 Altera Corporation Interconnection resources for programmable logic integrated circuit devices
US20050218930A1 (en) * 1999-03-04 2005-10-06 Altera Corporation Interconnection resources for programmable logic integrated circuit devices
US20080074143A1 (en) * 1999-03-04 2008-03-27 Tony Ngai Interconnection and input/output resources for programmable logic integrated circuit devices
US6989689B2 (en) 1999-03-04 2006-01-24 Altera Corporation Interconnection and input/output resources for programmable logic integrated circuit devices
US6897680B2 (en) 1999-03-04 2005-05-24 Altera Corporation Interconnection resources for programmable logic integrated circuit devices
US7317332B2 (en) 1999-03-04 2008-01-08 Altera Corporation Interconnection and input/output resources for programmable logic integrated circuit devices
US20090289660A1 (en) * 1999-03-04 2009-11-26 Tony Ngai Interconnection and input/output resources for programmable logic integrated circuit devices
US7123052B2 (en) 1999-03-04 2006-10-17 Altera Corporation Interconnection resources for programmable logic integrated circuit devices
US7839167B2 (en) 1999-03-04 2010-11-23 Altera Corporation Interconnection and input/output resources for programmable logic integrated circuit devices
US6690195B1 (en) 1999-03-04 2004-02-10 Altera Corporation Driver circuitry for programmable logic devices
US6894533B2 (en) 1999-03-04 2005-05-17 Altera Corporation Interconnection and input/output resources for programmable logic integrated circuit devices
US6366120B1 (en) 1999-03-04 2002-04-02 Altera Corporation Interconnection resources for programmable logic integrated circuit devices
US6525564B2 (en) 1999-03-04 2003-02-25 Altera Corporation Interconnection resources for programmable logic integrated circuit devices
US6407576B1 (en) 1999-03-04 2002-06-18 Altera Corporation Interconnection and input/output resources for programmable logic integrated circuit devices
US20070030029A1 (en) * 1999-03-04 2007-02-08 Altera Corporation, A Corporation Of Delaware Interconnection and input/output resources for programmable logic integrated circuit devices
US7203714B1 (en) * 1999-03-16 2007-04-10 Fujitsu Limited Logic circuit
US20050193051A1 (en) * 1999-03-16 2005-09-01 Fujitsu Limited Logic circuit
US6191614B1 (en) 1999-04-05 2001-02-20 Xilinx, Inc. FPGA configuration circuit including bus-based CRC register
US6255848B1 (en) 1999-04-05 2001-07-03 Xilinx, Inc. Method and structure for reading, modifying and writing selected configuration memory cells of an FPGA
US6429682B1 (en) 1999-04-05 2002-08-06 Xilinx, Inc. Configuration bus interface circuit for FPGAs
US6262596B1 (en) 1999-04-05 2001-07-17 Xilinx, Inc. Configuration bus interface circuit for FPGAS
US6631520B1 (en) 1999-05-14 2003-10-07 Xilinx, Inc. Method and apparatus for changing execution code for a microcontroller on an FPGA interface device
US6560665B1 (en) 1999-05-14 2003-05-06 Xilinx Inc. Embedding firmware for a microprocessor with configuration data for a field programmable gate array
US6175530B1 (en) 1999-05-14 2001-01-16 Xilinx, Inc. Method for detecting low power on an FPGA interface device
US6308311B1 (en) 1999-05-14 2001-10-23 Xilinx, Inc. Method for reconfiguring a field programmable gate array from a host
US6351809B1 (en) 1999-05-14 2002-02-26 Xilinx, Inc. Method of disguising a USB port connection
US6487618B1 (en) 1999-05-14 2002-11-26 Xilinx, Inc. Method for resisting an FPGA interface device
US8230411B1 (en) 1999-06-10 2012-07-24 Martin Vorbach Method for interleaving a program over a plurality of cells
US8312200B2 (en) 1999-06-10 2012-11-13 Martin Vorbach Processor chip including a plurality of cache elements connected to a plurality of processor cores
US8726250B2 (en) 1999-06-10 2014-05-13 Pact Xpp Technologies Ag Configurable logic integrated circuit having a multidimensional structure of configurable elements
US6424567B1 (en) 1999-07-07 2002-07-23 Philips Electronics North America Corporation Fast reconfigurable programmable device
US6452459B1 (en) 1999-07-22 2002-09-17 Xilinx, Inc. Circuit for measuring signal delays of synchronous memory elements
US6204687B1 (en) 1999-08-13 2001-03-20 Xilinx, Inc. Method and structure for configuring FPGAS
US7330912B1 (en) 1999-10-15 2008-02-12 Xilinx, Inc. Configuration in a configurable system on a chip
US6870397B1 (en) 1999-10-15 2005-03-22 Xilinx, Inc. Input/output circuit with user programmable functions
US6624656B1 (en) 1999-10-15 2003-09-23 Triscend Corporation Input/output circuit with user programmable functions
US7085858B1 (en) 1999-10-15 2006-08-01 Xilinx, Inc. Configuration in a configurable system on a chip
US6320412B1 (en) 1999-12-20 2001-11-20 Btr, Inc. C/O Corporate Trust Co. Architecture and interconnect for programmable logic circuits
US6657457B1 (en) 2000-03-15 2003-12-02 Intel Corporation Data transfer on reconfigurable chip
US6326806B1 (en) * 2000-03-29 2001-12-04 Xilinx, Inc. FPGA-based communications access point and system for reconfiguration
US20030080407A1 (en) * 2000-05-09 2003-05-01 Xilinx, Inc. Method of monitoring internal voltage and controlling a parameter of an integrated circuit
US6835579B2 (en) 2000-05-09 2004-12-28 Xilinx, Inc Method of monitoring internal voltage and controlling a parameter of an integrated circuit
US6512289B1 (en) 2000-05-09 2003-01-28 Xilinx, Inc. Direct current regulation on integrated circuits under high current design conditions
US6697957B1 (en) 2000-05-11 2004-02-24 Quickturn Design Systems, Inc. Emulation circuit with a hold time algorithm, logic analyzer and shadow memory
US6446249B1 (en) 2000-05-11 2002-09-03 Quickturn Design Systems, Inc. Emulation circuit with a hold time algorithm, logic and analyzer and shadow memory
US7003660B2 (en) 2000-06-13 2006-02-21 Pact Xpp Technologies Ag Pipeline configuration unit protocols and communication
US8301872B2 (en) 2000-06-13 2012-10-30 Martin Vorbach Pipeline configuration protocol and configuration unit communication
US7800405B2 (en) 2000-08-16 2010-09-21 Altera Corporation Passgate structures for use in low-voltage applications
US20090267645A1 (en) * 2000-08-16 2009-10-29 Altera Corporation Passgate structures for use in low-voltage applications
US7119574B1 (en) 2000-08-16 2006-10-10 Altera Corporation Passage structures for use in low-voltage applications
US6563367B1 (en) 2000-08-16 2003-05-13 Altera Corporation Interconnection switch structures
US6661253B1 (en) 2000-08-16 2003-12-09 Altera Corporation Passgate structures for use in low-voltage applications
US7557608B2 (en) 2000-08-16 2009-07-07 Altera Corporation Passgate structures for use in low-voltage applications
US6721840B1 (en) 2000-08-18 2004-04-13 Triscend Corporation Method and system for interfacing an integrated circuit to synchronous dynamic memory and static memory
US6754760B1 (en) 2000-08-21 2004-06-22 Xilinx, Inc. Programmable interface for a configurable system bus
US7346644B1 (en) 2000-09-18 2008-03-18 Altera Corporation Devices and methods with programmable logic and digital signal processing regions
US7119576B1 (en) 2000-09-18 2006-10-10 Altera Corporation Devices and methods with programmable logic and digital signal processing regions
US6518787B1 (en) 2000-09-21 2003-02-11 Triscend Corporation Input/output architecture for efficient configuration of programmable input/output cells
US8471593B2 (en) 2000-10-06 2013-06-25 Martin Vorbach Logic cell array and bus system
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
US9047440B2 (en) 2000-10-06 2015-06-02 Pact Xpp Technologies Ag Logical cell array and bus system
US7595659B2 (en) 2000-10-09 2009-09-29 Pact Xpp Technologies Ag Logic cell array and bus system
US6754686B1 (en) 2000-10-13 2004-06-22 Xilinx, Inc. Literal sharing method for fast sum-of-products logic
US6978427B1 (en) 2000-10-13 2005-12-20 Xilinx, Inc. Literal sharing method for fast sum-of-products logic
US6480023B1 (en) 2000-10-13 2002-11-12 Xilinx, Inc. Configurable logic block for PLD
US6724810B1 (en) 2000-11-17 2004-04-20 Xilinx, Inc. Method and apparatus for de-spreading spread spectrum signals
US7139848B1 (en) 2000-12-08 2006-11-21 Xilinx, Inc. DMA protocol extension for packet-based transfer
US6613611B1 (en) 2000-12-22 2003-09-02 Lightspeed Semiconductor Corporation ASIC routing architecture with variable number of custom masks
US20050257009A9 (en) * 2001-01-09 2005-11-17 Martin Vorbach Method of hierarchical caching of configuration data having dataflow processors and modules having two- or multidimensional programmable cell structure (fpgas, dpgas, etc.)
US6990555B2 (en) 2001-01-09 2006-01-24 Pact Xpp Technologies Ag Method of hierarchical caching of configuration data having dataflow processors and modules having two- or multidimensional programmable cell structure (FPGAs, DPGAs, etc.)
US20040153608A1 (en) * 2001-01-09 2004-08-05 Martin Vorbach Method of hierarchical caching of configuration data having dataflow processors and modules having two- or multidimensional programmable cell structure (FPGAs, DPGAs, etc.)
US6369608B1 (en) 2001-01-18 2002-04-09 Xillinx, Inc. Conditioning semiconductor-on-insulator transistors for programmable logic devices
US6630838B1 (en) 2001-01-23 2003-10-07 Xilinx, Inc. Method for implementing dynamic burn-in testing using static test signals
US8312301B2 (en) 2001-03-05 2012-11-13 Martin Vorbach Methods and devices for treating and processing data
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US8145881B2 (en) 2001-03-05 2012-03-27 Martin Vorbach Data processing device and method
US9075605B2 (en) 2001-03-05 2015-07-07 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US8099618B2 (en) 2001-03-05 2012-01-17 Martin Vorbach Methods and devices for treating and processing data
US7581076B2 (en) 2001-03-05 2009-08-25 Pact Xpp Technologies Ag Methods and devices for treating and/or processing data
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US7444531B2 (en) 2001-03-05 2008-10-28 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US6920551B1 (en) 2001-03-08 2005-07-19 Xilinx, Inc. Configurable processor system
US8201129B2 (en) 2001-05-06 2012-06-12 Altera Corporation PLD architecture for flexible placement of IP function blocks
US9094014B2 (en) 2001-05-06 2015-07-28 Altera Corporation PLD architecture for flexible placement of IP function blocks
US8732646B2 (en) 2001-05-06 2014-05-20 Altera Corporation PLD architecture for flexible placement of IP function blocks
US8407649B2 (en) 2001-05-06 2013-03-26 Altera Corporation PLD architecture for flexible placement of IP function blocks
US7058920B2 (en) 2001-05-06 2006-06-06 Altera Corporation Methods for designing PLD architectures for flexible placement of IP function blocks
US7584447B2 (en) 2001-05-06 2009-09-01 Altera Corporation PLD architecture for flexible placement of IP function blocks
US20060236018A1 (en) * 2001-05-18 2006-10-19 Xilinx, Inc. Programmable logic device including programmable interface core and central processing unit
US20070255886A1 (en) * 2001-05-18 2007-11-01 Xilinx, Inc. Programmable logic device including programmable interface core and central processing unit
US7266632B2 (en) 2001-05-18 2007-09-04 Xilinx, Inc. Programmable logic device including programmable interface core and central processing unit
US7406557B2 (en) 2001-05-18 2008-07-29 Xilinx, Inc. Programmable logic device including programmable interface core and central processing unit
US7076595B1 (en) 2001-05-18 2006-07-11 Xilinx, Inc. Programmable logic device including programmable interface core and central processing unit
US7657877B2 (en) 2001-06-20 2010-02-02 Pact Xpp Technologies Ag Method for processing data
US20100095094A1 (en) * 2001-06-20 2010-04-15 Martin Vorbach Method for processing data
US6874107B2 (en) 2001-07-24 2005-03-29 Xilinx, Inc. Integrated testing of serializer/deserializer in FPGA
US20030023762A1 (en) * 2001-07-25 2003-01-30 Xilinx, Inc. Configurable communication integrated circuit
US6957283B2 (en) * 2001-07-25 2005-10-18 Xilinx, Inc. Configurable communication integrated circuit
US7210129B2 (en) 2001-08-16 2007-04-24 Pact Xpp Technologies Ag Method for translating programs for reconfigurable architectures
US7996827B2 (en) 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US8869121B2 (en) 2001-08-16 2014-10-21 Pact Xpp Technologies Ag Method for the translation of programs for reconfigurable architectures
US7434191B2 (en) 2001-09-03 2008-10-07 Pact Xpp Technologies Ag Router
US7480825B2 (en) 2001-09-03 2009-01-20 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
US7840842B2 (en) 2001-09-03 2010-11-23 Martin Vorbach Method for debugging reconfigurable architectures
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
US8209653B2 (en) 2001-09-03 2012-06-26 Martin Vorbach Router
US8429385B2 (en) 2001-09-03 2013-04-23 Martin Vorbach Device including a field having function cells and information providing cells controlled by the function cells
US8407525B2 (en) 2001-09-03 2013-03-26 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
US7266725B2 (en) 2001-09-03 2007-09-04 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
US8069373B2 (en) 2001-09-03 2011-11-29 Martin Vorbach Method for debugging reconfigurable architectures
US7107374B1 (en) 2001-09-05 2006-09-12 Xilinx, Inc. Method for bus mastering for devices resident in configurable system logic
US6586966B1 (en) 2001-09-13 2003-07-01 Altera Corporation Data latch with low-power bypass mode
US6958624B1 (en) 2001-09-13 2005-10-25 Altera Corporation Data latch with low-power bypass mode
US6714042B1 (en) 2001-09-18 2004-03-30 Altera Corporation Specialized programmable logic region with low-power mode
US6566906B1 (en) 2001-09-18 2003-05-20 Altera Corporation Specialized programmable logic region with low-power mode
US6937062B1 (en) 2001-09-18 2005-08-30 Altera Corporation Specialized programmable logic region with low-power mode
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
US7420392B2 (en) 2001-09-28 2008-09-02 Xilinx, Inc. Programmable gate array and embedded circuitry initialization and processing
US6798239B2 (en) 2001-09-28 2004-09-28 Xilinx, Inc. Programmable gate array having interconnecting logic to support embedded fixed logic circuitry
US20050040850A1 (en) * 2001-09-28 2005-02-24 Xilinx, Inc. Programmable gate array and embedded circuitry initialization and processing
US6594810B1 (en) 2001-10-04 2003-07-15 M2000 Reconfigurable integrated circuit with a scalable architecture
US7130788B2 (en) 2001-10-30 2006-10-31 Mentor Graphics Corporation Emulation components and system including distributed event monitoring, and testing of an IC design under emulation
US20040034841A1 (en) * 2001-10-30 2004-02-19 Frederic Reblewski Emulation components and system including distributed event monitoring, and testing of an IC design under emulation
US7305633B2 (en) 2001-10-30 2007-12-04 Mentor Graphics Corporation Distributed configuration of integrated circuits in an emulation system
US20040260530A1 (en) * 2001-10-30 2004-12-23 Frederic Josso Distributed configuration of integrated circuits in an emulation system
US7035787B2 (en) 2001-10-30 2006-04-25 Mentor Graphics Corporation Emulation components and system including distributed routing and configuration of emulation resources
US7080300B1 (en) 2001-11-16 2006-07-18 Xilinx, Inc. Testing a programmable logic device with embedded fixed logic using a scan chain
US6983405B1 (en) 2001-11-16 2006-01-03 Xilinx, Inc., Method and apparatus for testing circuitry embedded within a field programmable gate array
US6996758B1 (en) 2001-11-16 2006-02-07 Xilinx, Inc. Apparatus for testing an interconnecting logic fabric
US6886092B1 (en) 2001-11-19 2005-04-26 Xilinx, Inc. Custom code processing in PGA by providing instructions from fixed logic processor portion to programmable dedicated processor portion
US7539848B1 (en) 2001-11-19 2009-05-26 Xilinx, Inc. Configurable logic fabric including two fixed logic processors with individual interface to receive availability signal from custom operation code configured processor
US7194600B2 (en) 2001-11-19 2007-03-20 Xilinx, Inc. Method and apparatus for processing data with a programmable gate array using fixed and programmable processors
US7577822B2 (en) 2001-12-14 2009-08-18 Pact Xpp Technologies Ag Parallel task operation in processor and reconfigurable coprocessor configured based on information in link list including termination information for synchronization
US6781407B2 (en) 2002-01-09 2004-08-24 Xilinx, Inc. FPGA and embedded circuitry initialization and processing
US6885043B2 (en) 2002-01-18 2005-04-26 Lightspeed Semiconductor Corporation ASIC routing architecture
US20030155587A1 (en) * 2002-01-18 2003-08-21 Lyle Smith ASIC routing architecture
US8281108B2 (en) 2002-01-19 2012-10-02 Martin Vorbach Reconfigurable general purpose processor having time restricted configurations
US6664807B1 (en) 2002-01-22 2003-12-16 Xilinx, Inc. Repeater for buffering a signal on a long data line of a programmable logic device
US6590826B1 (en) 2002-01-22 2003-07-08 Xilinx, Inc. Self-addressing FIFO
US6820248B1 (en) 2002-02-14 2004-11-16 Xilinx, Inc. Method and apparatus for routing interconnects to devices with dissimilar pitches
US8127061B2 (en) 2002-02-18 2012-02-28 Martin Vorbach Bus systems and reconfiguration methods
US7552415B2 (en) 2002-02-22 2009-06-23 Xilinx, Inc. Method and system for creating a customized support package for an FPGA-based system-on-chip (SoC)
US6996796B2 (en) 2002-02-22 2006-02-07 Xilinx, Inc. Method and system for creating a customized support package for an FPGA-based system-on-chip (SoC)
US20040225992A1 (en) * 2002-02-22 2004-11-11 Xilinx, Inc. Method and system for creating a customized support package for an FPGA-based system-on-chip (SoC)
US6976160B1 (en) 2002-02-22 2005-12-13 Xilinx, Inc. Method and system for controlling default values of flip-flops in PGA/ASIC-based designs
US6934922B1 (en) 2002-02-27 2005-08-23 Xilinx, Inc. Timing performance analysis
US7254794B1 (en) 2002-02-27 2007-08-07 Xilinx, Inc. Timing performance analysis
US7007121B1 (en) 2002-02-27 2006-02-28 Xilinx, Inc. Method and apparatus for synchronized buses
US7111217B1 (en) 2002-02-28 2006-09-19 Xilinx, Inc. Method and system for flexibly nesting JTAG TAP controllers for FPGA-based system-on-chip (SoC)
US6839874B1 (en) 2002-02-28 2005-01-04 Xilinx, Inc. Method and apparatus for testing an embedded device
US7088767B1 (en) 2002-03-01 2006-08-08 Xilinx, Inc. Method and apparatus for operating a transceiver in different data rates
US7111220B1 (en) 2002-03-01 2006-09-19 Xilinx, Inc. Network physical layer with embedded multi-standard CRC generator
US7187709B1 (en) 2002-03-01 2007-03-06 Xilinx, Inc. High speed configurable transceiver architecture
US6961919B1 (en) 2002-03-04 2005-11-01 Xilinx, Inc. Method of designing integrated circuit having both configurable and fixed logic circuitry
US7389429B1 (en) 2002-03-29 2008-06-17 Xilinx, Inc. Self-erasing memory for protecting decryption keys and proprietary configuration data
US7373668B1 (en) 2002-03-29 2008-05-13 Xilinx, Inc. Methods and circuits for protecting proprietary configuration data for programmable logic devices
US7134025B1 (en) 2002-03-29 2006-11-07 Xilinx, Inc. Methods and circuits for preventing the overwriting of memory frames in programmable logic devices
US7366306B1 (en) 2002-03-29 2008-04-29 Xilinx, Inc. Programmable logic device that supports secure and non-secure modes of decryption-key access
US7200235B1 (en) 2002-03-29 2007-04-03 Xilinx, Inc. Error-checking and correcting decryption-key memory for programmable logic devices
US7162644B1 (en) 2002-03-29 2007-01-09 Xilinx, Inc. Methods and circuits for protecting proprietary configuration data for programmable logic devices
US6996713B1 (en) 2002-03-29 2006-02-07 Xilinx, Inc. Method and apparatus for protecting proprietary decryption keys for programmable logic devices
US7219237B1 (en) 2002-03-29 2007-05-15 Xilinx, Inc. Read- and write-access control circuits for decryption-key memories on programmable logic devices
US7065684B1 (en) 2002-04-18 2006-06-20 Xilinx, Inc. Circuits and methods for measuring signal propagation delays on integrated circuits
US6812731B1 (en) 2002-05-16 2004-11-02 Xilinx, Inc. Quintuple modular redundancy for high reliability circuits implemented in programmable logic devices
US6624654B1 (en) 2002-05-16 2003-09-23 Xilinx, Inc. Methods for implementing circuits in programmable logic devices to minimize the effects of single event upsets
US6687884B1 (en) 2002-05-16 2004-02-03 Xilinx, Inc. Testing for shorts between interconnect lines in a partially defective programmable logic device
US6720793B1 (en) 2002-05-16 2004-04-13 Xilinx, Inc. Quintuple modular redundancy for high reliability circuits implemented in programmable logic devices
US6973405B1 (en) 2002-05-22 2005-12-06 Xilinx, Inc. Programmable interactive verification agent
US6772405B1 (en) 2002-06-13 2004-08-03 Xilinx, Inc. Insertable block tile for interconnecting to a device embedded in an integrated circuit
US7085973B1 (en) 2002-07-09 2006-08-01 Xilinx, Inc. Testing address lines of a memory controller
US7526689B1 (en) 2002-07-09 2009-04-28 Xilinx, Inc. Testing address lines of a memory controller
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
US8156284B2 (en) 2002-08-07 2012-04-10 Martin Vorbach Data processing method and device
US8281265B2 (en) 2002-08-07 2012-10-02 Martin Vorbach Method and device for processing data
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
US7099426B1 (en) 2002-09-03 2006-08-29 Xilinx, Inc. Flexible channel bonding and clock correction operations on a multi-block data path
US7928763B2 (en) 2002-09-06 2011-04-19 Martin Vorbach Multi-core processing system
US7602214B2 (en) 2002-09-06 2009-10-13 Pact Xpp Technologies Ag Reconfigurable sequencer structure
US7394284B2 (en) 2002-09-06 2008-07-01 Pact Xpp Technologies Ag Reconfigurable sequencer structure
US8803552B2 (en) 2002-09-06 2014-08-12 Pact Xpp Technologies Ag Reconfigurable sequencer structure
US7782087B2 (en) 2002-09-06 2010-08-24 Martin Vorbach Reconfigurable sequencer structure
US7092865B1 (en) 2002-09-10 2006-08-15 Xilinx, Inc. Method and apparatus for timing modeling
US7379855B1 (en) 2002-09-10 2008-05-27 Xilinx, Inc. Method and apparatus for timing modeling
US7112992B1 (en) 2002-10-21 2006-09-26 Altera Corporation Configuration shift register
US6842039B1 (en) 2002-10-21 2005-01-11 Altera Corporation Configuration shift register
US6813754B2 (en) 2002-11-05 2004-11-02 Lattice Semiconductor Corporation Placement processing for programmable logic devices
US7000210B2 (en) 2002-11-05 2006-02-14 Lattice Semiconductor Corporation Adaptive adjustment of constraints during PLD placement processing
US7480763B2 (en) 2002-12-10 2009-01-20 Altera Corporation Versatile RAM for a programmable logic device
US7111110B1 (en) 2002-12-10 2006-09-19 Altera Corporation Versatile RAM for programmable logic device
US20080204072A1 (en) * 2003-03-31 2008-08-28 Tsutomu Sasao Programmable Logic Device
US7486109B2 (en) 2003-03-31 2009-02-03 Kitakyushu Foundation For The Advancement Of Industry, Science And Technology Programmable logic device
US7650438B2 (en) 2003-06-10 2010-01-19 Altera Corporation Apparatus and methods for communicating with programmable logic devices
US7574533B2 (en) 2003-06-10 2009-08-11 Altera Corporation Apparatus and methods for communicating with programmable logic devices
US20080157813A1 (en) * 2003-06-10 2008-07-03 Altera Corporation Apparatus and methods for communicating with programmable logic devices
US8554959B2 (en) 2003-06-10 2013-10-08 Altera Corporation Apparatus and methods for communicating with programmable devices
US20060038586A1 (en) * 2003-06-10 2006-02-23 Renxin Xia Apparatus and methods for communicating with programmable logic devices
US20080143378A1 (en) * 2003-06-10 2008-06-19 Altera Corporation Apparatus and methods for communicating with programmable logic devices
US7356620B2 (en) 2003-06-10 2008-04-08 Altera Corporation Apparatus and methods for communicating with programmable logic devices
US9274980B2 (en) 2003-06-10 2016-03-01 Altera Corporation Apparatus and methods for communicating with programmable devices
US8719458B2 (en) 2003-06-10 2014-05-06 Altera Corporation Apparatus and methods for communicating with programmable devices
US8190787B2 (en) 2003-06-10 2012-05-29 Altera Corporation Apparatus and methods for communicating with programmable devices
US7082592B1 (en) 2003-06-16 2006-07-25 Altera Corporation Method for programming programmable logic device having specialized functional blocks
US20070083730A1 (en) * 2003-06-17 2007-04-12 Martin Vorbach Data processing device and method
US8812820B2 (en) 2003-08-28 2014-08-19 Pact Xpp Technologies Ag Data processing device and method
US20050058186A1 (en) * 2003-09-11 2005-03-17 Xilinx, Inc. Channel bonding of a plurality of multi-gigabit transceivers
US7421014B2 (en) 2003-09-11 2008-09-02 Xilinx, Inc. Channel bonding of a plurality of multi-gigabit transceivers
US20080278678A1 (en) * 2003-10-09 2008-11-13 Howell Thomas A Eyeglasses with user monitoring
US7071732B1 (en) 2003-12-09 2006-07-04 Xilinx, Inc. Scalable complex programmable logic device with segmented interconnect resources
US8364738B1 (en) 2003-12-24 2013-01-29 Altera Corporation Programmable logic device with specialized functional block
US7698358B1 (en) 2003-12-24 2010-04-13 Altera Corporation Programmable logic device with specialized functional block
US8698519B2 (en) 2004-03-30 2014-04-15 Advantage Logic, Inc. Scalable non-blocking switching network for programmable logic
US20080272806A1 (en) * 2004-03-30 2008-11-06 Pani Peter M Scalable non-blocking switching network for programmable logic
US20060006906A1 (en) * 2004-03-30 2006-01-12 Pani Peter M Scalable non-blocking switching network for programmable logic
US20100244895A1 (en) * 2004-03-30 2010-09-30 Pani Peter M Scalable non-blocking switching network for programmable logic
US7768302B2 (en) 2004-03-30 2010-08-03 Advantage Logic, Inc. Scalable non-blocking switching network for programmable logic
US20110089972A1 (en) * 2004-03-30 2011-04-21 Pani Peter M Scalable non-blocking switching network for programmable logic
US20070268041A1 (en) * 2004-03-30 2007-11-22 Pani Peter M Scalable non-blocking switching network for programmable logic
US20090273368A1 (en) * 2004-03-30 2009-11-05 Pani Peter M Scalable non-blocking switching network for programmable logic
US7256614B2 (en) 2004-03-30 2007-08-14 Advantage Logic, Inc. Scalable non-blocking switching network for programmable logic
US8242807B2 (en) 2004-03-30 2012-08-14 Advantage Logic, Inc. Scalable non-blocking switching network for programmable logic
US6975139B2 (en) 2004-03-30 2005-12-13 Advantage Logic, Inc. Scalable non-blocking switching network for programmable logic
US20050218928A1 (en) * 2004-03-30 2005-10-06 Pani Peter M Scalable non-blocking switching network for programmable logic
US7557613B2 (en) 2004-03-30 2009-07-07 Advantage Logic, Inc. Scalable non-blocking switching network for programmable logic
US7863932B2 (en) 2004-03-30 2011-01-04 Advantage Logic, Inc. Scalable non-blocking switching network for programmable logic
US7417457B2 (en) 2004-03-30 2008-08-26 Advantage Logic, Inc. Scalable non-blocking switching network for programmable logic
US7986163B2 (en) 2004-03-30 2011-07-26 Advantage Logic, Inc. Scalable non-blocking switching network for programmable logic
US7768314B2 (en) 2004-05-12 2010-08-03 National University Corporation Okayama University Integrated circuit with multidimensional switch topology
US20060023704A1 (en) * 2004-07-29 2006-02-02 Pani Peter M Interconnection fabric using switching networks in hierarchy
US7460529B2 (en) 2004-07-29 2008-12-02 Advantage Logic, Inc. Interconnection fabric using switching networks in hierarchy
US20060028240A1 (en) * 2004-08-03 2006-02-09 Altera Corporation Enhanced passgate structures for reducing leakage current
US7292065B2 (en) 2004-08-03 2007-11-06 Altera Corporation Enhanced passgate structures for reducing leakage current
US20060080632A1 (en) * 2004-09-30 2006-04-13 Mathstar, Inc. Integrated circuit layout having rectilinear structure of objects
US7386654B2 (en) * 2004-10-15 2008-06-10 Intel Corporation Non-volatile configuration data storage for a configurable memory
US20060083093A1 (en) * 2004-10-15 2006-04-20 Dover Lance W Non-volatile configuration data storage for a configurable memory
US20070247189A1 (en) * 2005-01-25 2007-10-25 Mathstar Field programmable semiconductor object array integrated circuit
US20070057693A1 (en) * 2005-09-13 2007-03-15 M2000 Reconfigurable circuit with redundant reconfigurable cluster(S)
US7478261B2 (en) 2005-09-13 2009-01-13 M2000 Reconfigurable circuit with redundant reconfigurable cluster(s)
US20100095147A1 (en) * 2005-09-13 2010-04-15 Abound Logic, S.A.S. Reconfigurable circuit with redundant reconfigurable cluster(s)
US8010826B2 (en) 2005-09-13 2011-08-30 Meta Systems Reconfigurable circuit with redundant reconfigurable cluster(s)
US8620980B1 (en) 2005-09-27 2013-12-31 Altera Corporation Programmable device with specialized multiplier blocks
US20070118783A1 (en) * 2005-11-23 2007-05-24 M2000 Inc. Runtime reconfiguration of reconfigurable circuits
US7529998B2 (en) 2005-11-23 2009-05-05 M2000 Sa. Runtime reconfiguration of reconfigurable circuits
US7275196B2 (en) 2005-11-23 2007-09-25 M2000 S.A. Runtime reconfiguration of reconfigurable circuits
US8250503B2 (en) 2006-01-18 2012-08-21 Martin Vorbach Hardware definition method including determining whether to implement a function as hardware or software
US7423453B1 (en) 2006-01-20 2008-09-09 Advantage Logic, Inc. Efficient integrated circuit layout scheme to implement a scalable switching network used in interconnection fabric
US8041759B1 (en) 2006-02-09 2011-10-18 Altera Corporation Specialized processing block for programmable logic device
US8266199B2 (en) 2006-02-09 2012-09-11 Altera Corporation Specialized processing block for programmable logic device
US8266198B2 (en) 2006-02-09 2012-09-11 Altera Corporation Specialized processing block for programmable logic device
US8301681B1 (en) 2006-02-09 2012-10-30 Altera Corporation Specialized processing block for programmable logic device
US7836117B1 (en) 2006-04-07 2010-11-16 Altera Corporation Specialized processing block for programmable logic device
US7822799B1 (en) 2006-06-26 2010-10-26 Altera Corporation Adder-rounder circuitry for specialized processing block in programmable logic device
EP2104109A1 (en) 2006-08-08 2009-09-23 Nantero, Inc. Nonvolatile resistive memories, latch circuits, and operation circuits having scalable two-terminal nanotube switches
EP2104108A1 (en) 2006-08-08 2009-09-23 Nantero, Inc. Nonvolatile resistive memories, latch circuits, and operation circuits having scalable two-terminal nanotube switches
US8386550B1 (en) 2006-09-20 2013-02-26 Altera Corporation Method for configuring a finite impulse response filter in a programmable logic device
US8386553B1 (en) 2006-12-05 2013-02-26 Altera Corporation Large multiplier for programmable logic device
US9395953B2 (en) 2006-12-05 2016-07-19 Altera Corporation Large multiplier for programmable logic device
US9063870B1 (en) 2006-12-05 2015-06-23 Altera Corporation Large multiplier for programmable logic device
US8788562B2 (en) 2006-12-05 2014-07-22 Altera Corporation Large multiplier for programmable logic device
US7930336B2 (en) 2006-12-05 2011-04-19 Altera Corporation Large multiplier for programmable logic device
US7814137B1 (en) 2007-01-09 2010-10-12 Altera Corporation Combined interpolation and decimation filter for programmable logic device
US7865541B1 (en) 2007-01-22 2011-01-04 Altera Corporation Configuring floating point operations in a programmable logic device
US8645450B1 (en) 2007-03-02 2014-02-04 Altera Corporation Multiplier-accumulator circuitry and methods
US20080265936A1 (en) * 2007-04-27 2008-10-30 Dsm Solutions, Inc. Integrated circuit switching device, structure and method of manufacture
US7629812B2 (en) 2007-08-03 2009-12-08 Dsm Solutions, Inc. Switching circuits and methods for programmable logic devices
US20090033361A1 (en) * 2007-08-03 2009-02-05 Dsm Solutions, Inc. Switching circuits and methods for programmable logic devices
US7949699B1 (en) 2007-08-30 2011-05-24 Altera Corporation Implementation of decimation filter in integrated circuit device using ram-based data storage
US8959137B1 (en) 2008-02-20 2015-02-17 Altera Corporation Implementing large multipliers in a programmable integrated circuit device
US8244789B1 (en) 2008-03-14 2012-08-14 Altera Corporation Normalization of floating point operations in a programmable integrated circuit device
US8886695B1 (en) 2008-03-14 2014-11-11 Altera Corporation Normalization of floating point operations in a programmable integrated circuit device
US7816947B1 (en) 2008-03-31 2010-10-19 Man Wang Method and apparatus for providing a non-volatile programmable transistor
US7710148B2 (en) 2008-06-02 2010-05-04 Suvolta, Inc. Programmable switch circuit and method, method of manufacture, and devices and systems including the same
US8626815B1 (en) 2008-07-14 2014-01-07 Altera Corporation Configuring a programmable integrated circuit device to perform matrix multiplication
US20100272811A1 (en) * 2008-07-23 2010-10-28 Alkermes,Inc. Complex of trospium and pharmaceutical compositions thereof
US8255448B1 (en) 2008-10-02 2012-08-28 Altera Corporation Implementing division in a programmable integrated circuit device
US8307023B1 (en) 2008-10-10 2012-11-06 Altera Corporation DSP block for implementing large multiplier on a programmable integrated circuit device
US8751551B2 (en) 2009-03-03 2014-06-10 Altera Corporation Modular digital signal processing circuitry with optionally usable, dedicated connections between modules of the circuitry
US8549055B2 (en) 2009-03-03 2013-10-01 Altera Corporation Modular digital signal processing circuitry with optionally usable, dedicated connections between modules of the circuitry
US8706790B1 (en) 2009-03-03 2014-04-22 Altera Corporation Implementing mixed-precision floating-point operations in a programmable integrated circuit device
US8645449B1 (en) 2009-03-03 2014-02-04 Altera Corporation Combined floating point adder and subtractor
US8468192B1 (en) 2009-03-03 2013-06-18 Altera Corporation Implementing multipliers in a programmable integrated circuit device
US8886696B1 (en) 2009-03-03 2014-11-11 Altera Corporation Digital signal processing circuitry with redundancy and ability to support larger multipliers
US8620977B1 (en) 2009-03-03 2013-12-31 Altera Corporation Modular digital signal processing circuitry with optionally usable, dedicated connections between modules of the circuitry
US8805916B2 (en) 2009-03-03 2014-08-12 Altera Corporation Digital signal processing circuitry with redundancy and bidirectional data paths
US7786749B1 (en) 2009-05-19 2010-08-31 Sillcon Storage Technology, Inc. Programmable integrated circuit having built in test circuit
US20100327907A1 (en) * 2009-06-24 2010-12-30 Ting Benjamin S Enhanced permutable switching network with multicasting signals for interconnection fabric
US7999570B2 (en) 2009-06-24 2011-08-16 Advantage Logic, Inc. Enhanced permutable switching network with multicasting signals for interconnection fabric
US8395415B2 (en) 2009-06-24 2013-03-12 Advantage Logic, Inc. Enhanced permutable switching network with multicasting signals for interconnection fabric
US8650236B1 (en) 2009-08-04 2014-02-11 Altera Corporation High-rate interpolation or decimation filter in integrated circuit device
US8396914B1 (en) 2009-09-11 2013-03-12 Altera Corporation Matrix decomposition in an integrated circuit device
US8412756B1 (en) 2009-09-11 2013-04-02 Altera Corporation Multi-operand floating point operations in a programmable integrated circuit device
US7948267B1 (en) 2010-02-09 2011-05-24 Altera Corporation Efficient rounding circuits and methods in configurable integrated circuit devices
US8539016B1 (en) 2010-02-09 2013-09-17 Altera Corporation QR decomposition in an integrated circuit device
US8601044B2 (en) 2010-03-02 2013-12-03 Altera Corporation Discrete Fourier Transform in an integrated circuit device
US8732225B1 (en) 2010-03-03 2014-05-20 Altera Corporation Digital signal processing circuit blocks with support for systolic finite-impulse-response digital filtering
US8589465B1 (en) 2010-03-03 2013-11-19 Altera Corporation Digital signal processing circuit blocks with support for systolic finite-impulse-response digital filtering
US8458243B1 (en) 2010-03-03 2013-06-04 Altera Corporation Digital signal processing circuit blocks with support for systolic finite-impulse-response digital filtering
US8484265B1 (en) 2010-03-04 2013-07-09 Altera Corporation Angular range reduction in an integrated circuit device
US8510354B1 (en) 2010-03-12 2013-08-13 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8539014B2 (en) 2010-03-25 2013-09-17 Altera Corporation Solving linear matrices in an integrated circuit device
US8589463B2 (en) 2010-06-25 2013-11-19 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8862650B2 (en) 2010-06-25 2014-10-14 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8812573B2 (en) 2010-06-25 2014-08-19 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8577951B1 (en) 2010-08-19 2013-11-05 Altera Corporation Matrix operations in an integrated circuit device
US8645451B2 (en) 2011-03-10 2014-02-04 Altera Corporation Double-clocked specialized processing block in an integrated circuit device
US9600278B1 (en) 2011-05-09 2017-03-21 Altera Corporation Programmable device using fixed and configurable logic to implement recursive trees
US8812576B1 (en) 2011-09-12 2014-08-19 Altera Corporation QR decomposition in an integrated circuit device
US9053045B1 (en) 2011-09-16 2015-06-09 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US8949298B1 (en) 2011-09-16 2015-02-03 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US8762443B1 (en) 2011-11-15 2014-06-24 Altera Corporation Matrix operations in an integrated circuit device
US8543634B1 (en) 2012-03-30 2013-09-24 Altera Corporation Specialized processing block for programmable integrated circuit device
US20150171865A1 (en) * 2012-05-02 2015-06-18 Semiconductor Energy Laboratory Co., Ltd. Programmable logic device
US9379706B2 (en) * 2012-05-02 2016-06-28 Semiconductor Energy Laboratory Co., Ltd. Programmable logic device
US9098332B1 (en) 2012-06-01 2015-08-04 Altera Corporation Specialized processing block with fixed- and floating-point structures
US8996600B1 (en) 2012-08-03 2015-03-31 Altera Corporation Specialized processing block for implementing floating-point multiplier with subnormal operation support
US9207909B1 (en) 2012-11-26 2015-12-08 Altera Corporation Polynomial calculations optimized for programmable integrated circuit device structures
US9189200B1 (en) 2013-03-14 2015-11-17 Altera Corporation Multiple-precision processing block in a programmable integrated circuit device
US9348795B1 (en) 2013-07-03 2016-05-24 Altera Corporation Programmable device using fixed and configurable logic to implement floating-point rounding
US9379687B1 (en) 2014-01-14 2016-06-28 Altera Corporation Pipelined systolic finite impulse response filter
US9684488B2 (en) 2015-03-26 2017-06-20 Altera Corporation Combined adder and pre-adder for high-radix multiplier circuit
US10942706B2 (en) 2017-05-05 2021-03-09 Intel Corporation Implementation of floating-point trigonometric functions in an integrated circuit device

Similar Documents

Publication Publication Date Title
USRE34363E (en) Configurable electrical circuit having configurable logic elements and configurable interconnects
US4870302A (en) Configurable electrical circuit having configurable logic elements and configurable interconnects
US4642487A (en) Special interconnect for configurable logic array
US4706216A (en) Configurable logic element
US6373779B1 (en) Block RAM having multiple configurable write modes for use in a field programmable gate array
US4414547A (en) Storage logic array having two conductor data column
JP2564044B2 (en) Programmable logic circuit
EP0204034B1 (en) Configurable logic array
JPH03231515A (en) Programmable logic device
US20020130681A1 (en) Programmable logic array integrated circuits
CA1204171A (en) Programmable logic array
GB1573661A (en) Digital logic circuit
US5465055A (en) RAM-logic tile for field programmable gate arrays
CN101286737B (en) Time sequence control circuit of configurable and programmable logic unit
GB2202355A (en) Configurable storage circuit
CA1274882A (en) Configurable electrical circuit having configurable logic elements and configurable interconnects
US6567970B1 (en) PLD configuration architecture
US6642743B2 (en) System for rapid configuration of a programmable logic device
US5629636A (en) Ram-logic tile for field programmable gate arrays
US6222381B1 (en) Self-configurable parallel processing system made from self-dual code/data processing cells utilizing a non-shifting memory
JPH0273596A (en) Integrated circuit
JPS6074817A (en) Integrated circuit
JPH0447492B2 (en)

Legal Events

Date Code Title Description
FPAY Fee payment

Year of fee payment: 8

FPAY Fee payment

Year of fee payment: 12

AS Assignment

Owner name: XILINX, INC.,CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:FREEMAN, ROSS H.;REEL/FRAME:024369/0667

Effective date: 19840309