← Back to Patent Explorer
US5267187A Expired / Lapsed US ⏱️ 0.0 years remaining

Logic structure and circuit for fast carry

Assignee: Xilinx Inc
•
Filing: 1992-09-11
•
Granted: 1993-11-30
•
Expires: 2012-09-11
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Programmable logic devices which include multiple blocks of combinatorial function generators and storage elements, and which are interconnected by a programmable interconnect structure are used, among other things for performing arithmetic functions which use logic for generating the carry function. When a large number of bits is to be processed, the carry function typically causes significant delay or requires significant additional components to achieve a result at high speed. The present invention provides dedicated hardware within the logic blocks for performing the carry function quickly and with a minimum number of components. The invention takes advantage of the fact that a carry signal to be added to two bits can be propagated to the next more significant bit when the two binary bits to be added are unequal, and that one of the bits can serve as the carry signal when the bits are equal.

Inventors

  • 👤 Hung-Cheng Hsieh
  • 👤 William S. Carter
  • 👤 Charles S. Erickson
  • 👤 Edmond Y. Cheung

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-03 22:56
CPC Classifications
G; G06; G06F; G06F7/00; G06F7/38; G06F7/48; G06F7/57; G06F7/50; G06F7/501; G06F7/503; G06F7/505; G06F7/5057; G06F7/506

Claims Analysis

Total Claims: 52
Claim 1
Independent Claim 300 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and further comprising: means for disconnecting said first input terminal from said carry-out terminal, said means for disconnecting being controllable to disconnect said first input terminal from said carry-out terminal independent of the states of said signals on said first and second input terminals; and means for applying an alternative signal to said carry-out terminal when said means for disconnecting is disconnecting.
Claim 2
Dependent Claim 300 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and further comprising: means for disconnecting said first input terminal from said carry-out terminal, said means for disconnecting being controllable to disconnect said first input terminal from said carry-out terminal independent of the states of said signals on said first and second input terminals; and means for applying an alternative signal to said carry-out terminal when said means for disconnecting is disconnecting.
Claim 3
Dependent Claim 32 words
A programmable logic device as in claim 1 further comprising: a third input terminal; means for selecting said alternative signal from a stored value and a signal on said third input terminal.
Claim 4
Dependent Claim 292 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and further comprising: a third input terminal; means for providing a signal on said third input terminal; means for selecting between causing said first switching means to connect said first input terminal to said carry-out terminal and causing said first switching means to apply said signal on said third terminal to said carry-out terminal.
Claim 5
Dependent Claim 292 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and further comprising: a third input terminal; means for providing a signal on said third input terminal; means for selecting between causing said first switching means to connect said first input terminal to said carry-out terminal and causing said first switching means to apply said signal on said third terminal to said carry-out terminal.
Claim 6
Dependent Claim 31 words
A programmable logic device as in claim 3 further comprising means for selecting between applying a stored value to said carry-out terminal and applying an input signal to said carry-out terminal.
Claim 7
Dependent Claim 264 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and further comprising: means for inverting or not inverting a signal to generate an operand; and means for applying said operand to said second input terminal.
Claim 8
Dependent Claim 264 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and further comprising: means for inverting or not inverting a signal to generate an operand; and means for applying said operand to said second input terminal.
Claim 9
Dependent Claim 394 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and further comprising: an XNOR gate; a first inverter and a second inverter; third and fourth switching means; and a first memory cell and a second memory cell, each having an output and an output-complement; wherein said first input terminal and said second input terminal are inputs to said XNOR gate, an output of said XNOR gate is input to said first inverter by said third switching means; the output of said first inverter is input to said second inverter; said output-complement of said first memory cell is input to said first inverter by said fourth controllable switching means, said first switching means is controlled by the output signal of said second inverter, said second switching means is controlled by said output signal of said first inverter, said third switching means is controlled by said output of said second memory cell, said fourth controllable switching means is controlled by said output-complement of said second memory cell.
Claim 10
Dependent Claim 394 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and further comprising: an XNOR gate; a first inverter and a second inverter; third and fourth switching means; and a first memory cell and a second memory cell, each having an output and an output-complement; wherein said first input terminal and said second input terminal are inputs to said XNOR gate, an output of said XNOR gate is input to said first inverter by said third switching means; the output of said first inverter is input to said second inverter; said output-complement of said first memory cell is input to said first inverter by said fourth controllable switching means, said first switching means is controlled by the output signal of said second inverter, said second switching means is controlled by said output signal of said first inverter, said third switching means is controlled by said output of said second memory cell, said fourth controllable switching means is controlled by said output-complement of said second memory cell.
Claim 11
Dependent Claim 19 words
A programmable logic device as in claim 6 in which said memory cells are static random access memory cells.
Claim 12
Dependent Claim 17 words
A programmable logic device as in claim 6 in which said memory cells are electrically programmable switches.
Claim 13
Dependent Claim 17 words
A programmable logic device as in claim 8 in which said electrically programmable switches are electrically erasable.
Claim 14
Dependent Claim 15 words
A programmable logic device as in claim 6 in which said memory cells are fuses.
Claim 15
Dependent Claim 15 words
A programmable logic device as in claim 6 in which said memory cells are antifuses.
Claim 16
Dependent Claim 292 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and further comprising a three-way multiplexer for selecting between causing said first switching means to connect said first input terminal to said carry-out terminal, causing said first switching means to connect a third input terminal to said carry-out terminal, and causing said first switching means to apply a stored value to said carry-out terminal.
Claim 17
Dependent Claim 292 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and further comprising a three-way multiplexer for selecting between causing said first switching means to connect said first input terminal to said carry-out terminal, causing said first switching means to connect a third input terminal to said carry-out terminal, and causing said first switching means to apply a stored value to said carry-out terminal.
Claim 18
Dependent Claim 336 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and further comprising: a third input terminal; means for providing a stored value; third, fourth, fifth, and sixth controllable switching means; and means for controlling said third, fourth, fifth and sixth controllable switching means such that: said third input terminal is coupled to said carry-out terminal only when said first, third, and fifth switching means are conductive; said stored value is coupled to said carry-out terminal only when said sixth and said first switching means are conductive; and said first input terminal is coupled to said carry-out terminal only when said fourth and first switching means are conductive.
Claim 19
Dependent Claim 336 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and further comprising: a third input terminal; means for providing a stored value; third, fourth, fifth, and sixth controllable switching means; and means for controlling said third, fourth, fifth and sixth controllable switching means such that: said third input terminal is coupled to said carry-out terminal only when said first, third, and fifth switching means are conductive; said stored value is coupled to said carry-out terminal only when said sixth and said first switching means are conductive; and said first input terminal is coupled to said carry-out terminal only when said fourth and first switching means are conductive.
Claim 20
Dependent Claim 340 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; in which said means for causing comprises: an XNOR gate having two input terminals coupled respectively to said first and second input terminals, and an output terminal; a first inverter, the output of said first inverter controlling said second switching means; means for providing a stored value; third switching means, wherein said third switching means selects between providing said stored value and a signal output from said XNOR gate to the input terminal of said first inverter; and a second inverter connected to the output terminal of said first inverter, the output terminal of said second inverter controlling said first switching means.
Claim 21
Dependent Claim 340 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; in which said means for causing comprises: an XNOR gate having two input terminals coupled respectively to said first and second input terminals, and an output terminal; a first inverter, the output of said first inverter controlling said second switching means; means for providing a stored value; third switching means, wherein said third switching means selects between providing said stored value and a signal output from said XNOR gate to the input terminal of said first inverter; and a second inverter connected to the output terminal of said first inverter, the output terminal of said second inverter controlling said first switching means.
Claim 22
Dependent Claim 374 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and further comprising: an XNOR gate; a first memory cell and second memory cell; a first multiplexer with at least two inputs and one output; a third input terminal; wherein the output of said first memory cell is an input of said first multiplexer; said third input terminal is an input of said first multiplexer; the output of said second memory cell selects between connecting said first memory cell and connecting said third input terminal to said output terminal of said first multiplexer; the output of said first multiplexer is an input of said XNOR gate; said second input terminal is coupled to an input of said XNOR gate; said second input terminal is coupled to an input of said XNOR gate; and said XNOR gate and said first input terminal control said means for causing.
Claim 23
Dependent Claim 374 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and further comprising: an XNOR gate; a first memory cell and second memory cell; a first multiplexer with at least two inputs and one output; a third input terminal; wherein the output of said first memory cell is an input of said first multiplexer; said third input terminal is an input of said first multiplexer; the output of said second memory cell selects between connecting said first memory cell and connecting said third input terminal to said output terminal of said first multiplexer; the output of said first multiplexer is an input of said XNOR gate; said second input terminal is coupled to an input of said XNOR gate; said second input terminal is coupled to an input of said XNOR gate; and said XNOR gate and said first input terminal control said means for causing.
Claim 24
Dependent Claim 337 words
An ordered array of logic blocks each comprising at least one array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; wherein said carry-out terminal of a second logic block is coupled to at least said carry-in terminal of a first logic block preceding said second logic block and to said carry-in terminal of a third logic block following said second logic block, and in which said logic blocks are positioned in a rectangular array of horizontal rows and vertical columns and in which said first logic block and said third logic block are positioned in one of the same column as said second logic block and the same row as said second logic block.
Claim 25
Dependent Claim 337 words
An ordered array of logic blocks each comprising at least one array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; wherein said carry-out terminal of a second logic block is coupled to at least said carry-in terminal of a first logic block preceding said second logic block and to said carry-in terminal of a third logic block following said second logic block, and in which said logic blocks are positioned in a rectangular array of horizontal rows and vertical columns and in which said first logic block and said third logic block are positioned in one of the same column as said second logic block and the same row as said second logic block.
Claim 26
Dependent Claim 28 words
An ordered array of logic blocks as in claim 16 in which said first logic block and said third logic block are contiguous to said second logic block.
Claim 27
Dependent Claim 112 words
An integrated circuit structure comprising: an array of configurable logic blocks, said configurable logic blocks each including means for calculating a selectable one of a plurality of functions of a plurality of input signals, including at least a sum function and another function having a truth table different from the sum function; and dedicated hardware for performing the carry function, said dedicated hardware including means for receiving at least some of said plurality of input signals; means for receiving a carry-in signal; means for providing a carry-out signal; and means for calculating said carry function from said carry-in signal and some of said plurality of input signals, and generating said carry-out signal.
Claim 28
Dependent Claim 112 words
An integrated circuit structure comprising: an array of configurable logic blocks, said configurable logic blocks each including means for calculating a selectable one of a plurality of functions of a plurality of input signals, including at least a sum function and another function having a truth table different from the sum function; and dedicated hardware for performing the carry function, said dedicated hardware including means for receiving at least some of said plurality of input signals; means for receiving a carry-in signal; means for providing a carry-out signal; and means for calculating said carry function from said carry-in signal and some of said plurality of input signals, and generating said carry-out signal.
Claim 29
Dependent Claim 41 words
An integrated circuit structure as in claim 18 further comprising: dedicated interconnect lines for interconnecting said hardware for performing the carry function in a first logic block to hardware for performing the carry function in at least a second logic block.
Claim 30
Dependent Claim 45 words
An integrated circuit structure as in claim 19 in which said dedicated interconnect lines further comprise lines for interconnecting said hardware for performing the carry function in a first logic block to hardware for performing the carry function in at least a third logic block.
Claim 31
Dependent Claim 130 words
An integrated circuit structure comprising: programmable interconnect lines; an array of configurable logic blocks, said configurable logic blocks each including means for calculating a selectable function of a plurality of input signals, including at least a sum function and another function; and dedicated hardware for performing the carry function, comprising: means for receiving at least some of said plurality of input signals; a carry-out terminal; means for generating a carry-out signal in response to a carry-in signal on said carry-in terminal and input signals on selected ones of said programmable interconnect lines, and placing said carry-out signal on said carry-out terminal; and means for selecting said carry-in signal of said third logic block from among at least carry-out signals on said carry-out terminals of said first and second logic blocks.
Claim 32
Dependent Claim 130 words
An integrated circuit structure comprising: programmable interconnect lines; an array of configurable logic blocks, said configurable logic blocks each including means for calculating a selectable function of a plurality of input signals, including at least a sum function and another function; and dedicated hardware for performing the carry function, comprising: means for receiving at least some of said plurality of input signals; a carry-out terminal; means for generating a carry-out signal in response to a carry-in signal on said carry-in terminal and input signals on selected ones of said programmable interconnect lines, and placing said carry-out signal on said carry-out terminal; and means for selecting said carry-in signal of said third logic block from among at least carry-out signals on said carry-out terminals of said first and second logic blocks.
Claim 33
Dependent Claim 39 words
An integrated circuit structure as in claim 21 in which said logic blocks are located in rows and columns within said integrated circuit structure, and said third logic block is positioned contiguous to said first and second logic blocks.
Claim 34
Dependent Claim 36 words
An integrated circuit structure as in claim 22 in which said first logic block is positioned to the left of said third logic block and said second logic block is positioned below said third logic block.
Claim 35
Dependent Claim 36 words
An integrated circuit structure as in claim 22 in which said first logic block is positioned to the left of said third logic block and said second logic block is positioned above said third logic block.
Claim 36
Dependent Claim 33 words
An integrated circuit structure as in claim 22 in which said first logic block is positioned above said third logic block and said second logic block is positioned below said third logic block.
Claim 37
Dependent Claim 40 words
An integrated circuit structure as in claim 21 in which said logic blocks are positioned in rows and columns and said first and second logic blocks are located in the same row or same column as said third logic block.
Claim 38
Dependent Claim 148 words
An array of configurable logic blocks, each logic block comprising: two stages, each stage comprising: at least a first input terminal and a second input terminal; a carry-in terminal; a carry-out terminal; dedicated circuitry for performing carry logic with at least three inputs and at least one output; wherein three of said at least three inputs comprise: a signal on said first input terminal; a signal on said second input terminal; and a signal on said carry-in terminal; and wherein said output is a carry function of said three inputs; said carry-out terminal of said first stage being connected directly to said carry-in terminal of said second stage, and said carry-out terminal of said second stage being connected through buffering means to said carry-in terminal of another one of said logic blocks; and controllable means for substituting for said carry-out signal a stored signal to said carry-out terminal.
Claim 39
Dependent Claim 148 words
An array of configurable logic blocks, each logic block comprising: two stages, each stage comprising: at least a first input terminal and a second input terminal; a carry-in terminal; a carry-out terminal; dedicated circuitry for performing carry logic with at least three inputs and at least one output; wherein three of said at least three inputs comprise: a signal on said first input terminal; a signal on said second input terminal; and a signal on said carry-in terminal; and wherein said output is a carry function of said three inputs; said carry-out terminal of said first stage being connected directly to said carry-in terminal of said second stage, and said carry-out terminal of said second stage being connected through buffering means to said carry-in terminal of another one of said logic blocks; and controllable means for substituting for said carry-out signal a stored signal to said carry-out terminal.
Claim 40
Dependent Claim 43 words
An array as in claim 27 further comprising: controllable means for selectively propagating said signal on said carry-in terminal to said carry-out terminal; or propagating said signal on one of said first input terminal and said second input terminal to said carry-out terminal.
Claim 41
Dependent Claim 28 words
An array as in claim 27 further comprising: a third input terminal; controllable means for selectively propagating a signal on said third input terminal to said carry-out terminal.
Claim 42
Dependent Claim 33 words
An array as in claim 27 further comprising: controllable means for selectively propagating said signal on said carry-in terminal to said carry-out terminal independent of signals on said first and second input terminals.
Claim 43
Dependent Claim 62 words
An array as in claim 27 further comprising: second means for computing the carry function of said signal on said first input terminal, said signal on said carry-in terminal, and a complement of said signal on said second input terminal; and means for selecting between using said at least one circuit or said at least one stage and using said second means.
Claim 44
Dependent Claim 291 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and further comprising: means for receiving a first input signal and placing said first input signal on said first input terminal; means for receiving a second input signal; means for selecting between placing said second input signal, the complement of said second input signal, and a constant value on said second input terminal.
Claim 45
Dependent Claim 291 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and further comprising: means for receiving a first input signal and placing said first input signal on said first input terminal; means for receiving a second input signal; means for selecting between placing said second input signal, the complement of said second input signal, and a constant value on said second input terminal.
Claim 46
Dependent Claim 43 words
A programmable logic device as in claim 32 in which said means for selecting comprises: means for replacing said second input signal with a first constant value; means for controlling said means for replacing; and means for selectively inverting said first constant value.
Claim 47
Dependent Claim 362 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and each logic block having at least: a first circuit and a second circuit, said carry-out terminal of said first circuit being connected to said carry-in terminal of said second circuit, said carry-out terminal of said second circuit being coupled to a carry-out terminal of said logic block; at least one carry-in terminal of said logic block; and means for using a signal on one of said at least one carry-in terminal of said logic block as a carry-in signal on said carry-in terminal of said first circuit; in which said second circuit further comprises: means for comparing a signal on said carry-out terminal of said first circuit to said carry-in signal on said first circuit, thereby being useful for detecting an overflow condition.
Claim 48
Dependent Claim 362 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and each logic block having at least: a first circuit and a second circuit, said carry-out terminal of said first circuit being connected to said carry-in terminal of said second circuit, said carry-out terminal of said second circuit being coupled to a carry-out terminal of said logic block; at least one carry-in terminal of said logic block; and means for using a signal on one of said at least one carry-in terminal of said logic block as a carry-in signal on said carry-in terminal of said first circuit; in which said second circuit further comprises: means for comparing a signal on said carry-out terminal of said first circuit to said carry-in signal on said first circuit, thereby being useful for detecting an overflow condition.
Claim 49
Dependent Claim 82 words
A programmable logic device as in claim 34 in which said means for comparing comprises: a first multiplexer for selecting between said carry-in signal of said first circuit and a first input signal to said second circuit; a second multiplexer for selecting between said carry-out signal of said first circuit and a second input signal to said second circuit; means for controlling said first and second multiplexers; means for generating the XOR function of signals provided by said first and second multiplexers.
Claim 50
Dependent Claim 28 words
A programmable logic device as in claim 35 in which said means for generating the XOR function of signals provided by said multiplexers comprises a combinatorial function generator.
Claim 51
Dependent Claim 274 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and controllable means for selectively propagating said signal on said carry-in terminal to said carry-out terminal; or propagating said signal on one of said first input terminal and said second input terminal to said carry-out terminal.
Claim 52
Dependent Claim 274 words
A programmable logic device comprising an array of logic blocks, each logic block having at least one circuit comprising: a first input terminal and a second input terminal; a carry-in terminal and a carry-out terminal; first switching means for connecting said first input terminal to said carry-out terminal; second switching means for connecting said carry-in terminal to said carry-out terminal; control means for causing said first switching means to connect said first input terminal to said carry-out terminal and for causing said second switching means to connect said carry-in terminal to said carry-out terminal; said control means causing said first switching means to connect said first input terminal to said carry-out terminal when and only when the logic value of a signal on said first input terminal is equal to the logic value of a signal on said second input terminal, and said control means causing said second switching means to connect said carry-in terminal to said carry-out terminal when and only when said logic value of said signal on said first input terminal does not equal said logic value of said signal on said second input terminal; said logic block further having means for generating at an output terminal one of a plurality of logic functions of a given set of inputs, at least one of said first and second input terminal further providing input to said means for generating one of a plurality of logic functions; and controllable means for selectively propagating said signal on said carry-in terminal to said carry-out terminal; or propagating said signal on one of said first input terminal and said second input terminal to said carry-out terminal.

References Cited (Backward Citations)

US4124899A Cited
US4124899B1 Cited
US4870302A Cited
US4706216A Cited
US4761759A Cited
US4758745A Cited
US4758745B1 Cited
US4920509A Cited
US4897808A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1996-11-29 1997-05-31 1997-11-30 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2000-11-29 2001-05-31 2001-11-30 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2004-11-29 2005-05-31 2005-11-30 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag