US20150311898A1 - Spare gate cell for integrated circuit - Google Patents
Spare gate cell for integrated circuit Download PDFInfo
- Publication number
- US20150311898A1 US20150311898A1 US14/262,795 US201414262795A US2015311898A1 US 20150311898 A1 US20150311898 A1 US 20150311898A1 US 201414262795 A US201414262795 A US 201414262795A US 2015311898 A1 US2015311898 A1 US 2015311898A1
- Authority
- US
- United States
- Prior art keywords
- inputs
- spare
- input
- transistor
- spare gate
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17724—Structural details of logic blocks
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/003—Modifications for increasing the reliability for protection
- H03K19/00392—Modifications for increasing the reliability for protection by circuit redundancy
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/1733—Controllable logic circuits
- H03K19/1735—Controllable logic circuits by wiring, e.g. uncommitted logic arrays
- H03K19/1736—Controllable logic circuits by wiring, e.g. uncommitted logic arrays in which the wiring can be modified
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17748—Structural details of configuration resources
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17748—Structural details of configuration resources
- H03K19/17764—Structural details of configuration resources for reliability
Definitions
- the present invention relates generally to spare gate cell circuitry and, more particularly, to configurable spare gate cells for inclusion in an integrated circuit.
- SOC system-on-chip
- a typical spare gate cell includes a collection of transistors coupled together into a pre-defined logic gate or other functional logic circuit, which can then be used to perform a certain function.
- These pre-defined spare gates can be configured to implement various logic functions such as NAND, NOR, inverter, etc.
- One known spare gate cell includes a configurable building block circuit having at least two inputs and an output.
- the configurable building block circuit is capable of selectively performing a plurality of possible logic functions on signals appearing on the inputs to produce a logic signal on the output, where selection of a logic function depends on connections of the input leads of the configurable building block circuit.
- VLSI very large scale integration circuits are constructed with at least three metal layers and usually seven or more metal layers. Implementing changes in the metal layer is only feasible if the spare cell corresponding to the desired functionality already exists in the layout of the SOC. Thus, spare cells usually are sprinkled throughout a design. However, a further complication is that only one logic function can be performed by a spare cell at any one time so that ‘n’ spare cells are required to perform ‘n’ functionalities. Therefore, silicon area and power requirements are high.
- FIG. 1 is a simplified schematic diagram of an integrated circuit that has a plurality of spare cells in accordance with an embodiment of the invention
- FIG. 2 is a simplified block diagram of one of the spare cells included in the integrated circuit device of FIG. 1 in accordance with an embodiment of the present invention
- FIG. 3 is a schematic circuit diagram of a spare gate cell in accordance with an embodiment of the invention.
- FIG. 4 is a table illustrating a first set of possible logical operations capable of being performed by the spare gate cell of FIG. 3 ;
- FIG. 5 is a schematic circuit diagram of the spare gate cell of FIG. 3 being used to implement a first set of functions in accordance with an embodiment of the present invention
- FIG. 6 is a table illustrating a second set of possible logical operations capable of being performed by the spare gate cell of FIG. 3 ;
- FIG. 7 is a schematic circuit diagram of the spare gate cell of FIG. 3 being used to implement a second set of functions in accordance with an embodiment of the present invention.
- FIG. 8 is a table illustrating a third set of possible logical operations capable of being performed by the spare gate cell of FIG. 3 .
- the present invention provides a spare cell having at least two inputs and at least two outputs, the spare cell being capable of selectively performing, concurrently, a plurality of logic functions on signals appearing at the inputs to produce logic signals at the outputs, where selection of the plurality of logic functions depends on connections of at least one of the inputs of the spare cell.
- an output of the spare cell may be connected to an input of the spare cell.
- a plurality of different functionalities can be provided simultaneously by the same spare cell.
- different, concurrent multi-output operations can be realized. This saves on silicon area and power consumption compared with known arrangements.
- a further advantage is that the spare cell can be connected and configured by making a change only to a metal layer of the IC design. Thus, there is no need to recreate costly photo masks. Changes in the cell's physical connections are made only at the input/output pins, and no internal nodes need to be modified.
- multi-functionality spare cells in accordance with the invention may be implemented in an integrated circuit and may be distributed at random locations throughout the circuit. By using spare cells in accordance with the invention in this way, the probability of finding a desired functionality close to an ECO site, or of implementing a particular functionality ‘N’ times, is increased.
- a spare cell is configured to provide a function set of logical operations to be performed on a sub-set of its inputs by setting, at a predetermined logical value, at least one input, which is not included in the subset, to predetermined logical values and/or connecting it to an output of the spare gate cell.
- a first function set of logical operations comprises a buffer, inverter, NAND and AND.
- One example of a multiplicity of logical functions that can be performed concurrently with this first functional set includes an AND operation on two inputs, a NAND operation on three inputs, and a NAND operation on two inputs.
- a second function set of logical operations includes a buffer, inverter, XOR, exclusive NOR, NOR, OR, and AND.
- One example of a plurality of logical functions that can be performed concurrently with this second functional set comprises an inverter, a buffer and an XNOR (exclusive NOR).
- a third function set of logical operations comprises NAND, negative latch, positive latch, multiplexer, tri-state inverter, set and reset or set or reset scanning flip-flop.
- One example of a plurality of logical functions that can be performed concurrently with this third functional set comprises an inverter and a positive latch.
- An example of a spare gate cell in accordance with the invention may comprise a plurality of building blocks.
- the building blocks include a multiplexer, a latch and a scan flip-flop.
- An integrated circuit such as a SOC, may include one or several or many spare cells of the present invention.
- One of the spare cells may be configured to have a different functional set from another spare cell.
- the integrated circuit 100 may comprise, for example, a system-on-chip (SOC) device or an ASIC.
- the integrated circuit 100 includes a plurality of spare gate cells that are arranged in a random fashion in the integrated circuit device 100 .
- Eight spare gate cells 101 - 108 are shown in FIG. 1 but fewer or more than eight may be included in other examples.
- One or more of the spare gate cells 101 - 108 may be used and set to have a desired functionality by making changes in the appropriate metal layer of the integrated circuit device 100 .
- a spare gate cell 201 has eight inputs labelled A through H and four outputs labelled Q 1 , Q 2 , Q 3 , Q 4 .
- the spare cell 201 comprises transistor-transistor logic (TTL) circuitry capable of performing, concurrently, several of the plurality of logical operations in a manner to be described below.
- TTL transistor-transistor logic
- the remaining inputs that are not included in the subset are used as selection (or control) inputs and depending on the logical value of these selection inputs, the circuitry of the spare cell 201 performs certain logical operations on at least some of the subset of inputs in order to produce certain output values at the outputs Q 1 to Q 4 . In some example embodiments, one or more outputs are fed back to one or more inputs of the spare cell 201 .
- FIG. 2 illustrates the possibility of input B receiving either output Q 1 or Q 2 and input G receiving output Q 2 .
- the spare cell 201 comprises basic building blocks that include a multiplexer, a latch and a scan flip-flop.
- the spare cell 201 also includes one or more inverters (NOT gates) that can be selectively employed to invert or buffer an input for serving as either an input to another part of the circuitry of the spare cell 201 .
- NOT gates inverters
- some of the circuitry of a multiplexer or a latch is employed to perform simple logic gate operations such as a NAND operation.
- FIG. 3 a simplified circuit diagram of the spare cell 201 of FIG. 2 is illustrated.
- the circuit of FIG. 3 has eight inputs, A through H and four outputs Q 1 -Q 4 .
- the annotations AN, CN and EN mean “NOTTED” (or inverted) versions of the inputs A, C and E respectively.
- the annotation CI means a twice inverted (or buffered) version of the input C.
- a first inverter 301 receives input A and produces an inverted version AN at its output.
- a second inverter 302 receives input C and produces an inverted version CN, which in turn is fed to a third inverter 303 , which produces a twice inverted version CI at its output.
- a fourth inverter 304 receives input E and produces an inverted version EN at its output.
- a first transistor 305 which comprises a P-MOSFET (metal oxide semiconductor field effect transistor) receives input E on its gate terminal.
- a second transistor 306 which comprises P-MOSFET receives EN (i.e. the inverted version of input E) at its gate terminal.
- Source terminals of the first and second transistors 305 and 306 are connected to a supply voltage Vs.
- a third transistor 307 which also is a P-MOSFET, receives input D at its gate terminal. Its source terminal is connected to the drain terminal of the first transistor 305 .
- a fourth transistor 308 also a P-MOSFET has a gate terminal that receives input F. The source terminal of the fourth transistor 308 is connected to the drain terminal of the second transistor 306 .
- the drain terminals of both third and fourth transistors 307 , 308 are connected to a source terminal of a fifth transistor 309 , which also is a P-MOSFET.
- the gate terminal of the fifth transistor 309 receives CI.
- a sixth transistor 310 which comprises an N-MOSFET, receives input EN on its gate terminal.
- a seventh transistor 311 which is an N-MOSFET receives input E on its gate terminal.
- Source terminals of the sixth and seventh transistors 310 , 311 are connected to ground.
- An eighth transistor 312 which is an N-MOSFET receives input D on its gate terminal and its source terminal is connected to the drain terminal of the sixth transistor 310 .
- a ninth transistor 313 which is an N-MOSFET, receives input F of its gate terminal and its source terminal is connected to the drain terminal of the seventh transistor 311 .
- the drain terminals of the eighth and ninth transistors 312 , 313 are connected to a source terminal of a tenth transistor 314 , which is an N-MOSFET.
- the tenth transistor 314 receives CN on its gate terminal.
- the drain terminal of the tenth transistor 314 is connected to the source terminal of the fifth transistor 309 at a first node 315 .
- the first node 315 serves as the output Q 1 .
- the first through tenth transistors ( 305 - 314 ) form a multiplexer building block whose output comprises one of the outputs of the spare cell 201 .
- the first node 315 and also serves as an input to a further stage of the circuitry, which includes a building block comprising configurable logic gates.
- the first node 315 is connected to the gate terminals of eleventh and twelfth transistors 316 , 317 .
- the eleventh transistor 316 comprises a P-MOSFET whose source terminal is connected to the voltage supply Vs and whose drain terminal is connected to a second node 318 .
- Connected in parallel with the eleventh transistor 316 is a thirteenth transistor 319 , which is also a P-MOSFET.
- the source terminal of the thirteenth transistor 319 is connected to the voltage supply Vs and its drain terminal is connected to the second node 318 , while its gate terminal receives the input H.
- the twelfth transistor 317 is an N-MOSFET whose drain terminal is connected to the second node 318 and whose source terminal is connected to a drain terminal of a fourteenth transistor 320 .
- the fourteenth transistor 320 comprises an N-MOSFET and has its source terminal connected to ground and its gate terminal receives the input H.
- the second node 318 serves as an output of the building block comprising the eleventh, twelfth, thirteenth and fourteenth transistors and also serves as the output Q 2 of the spare cell 201 .
- An additional element 321 comprising a tri-state inverter is connected across the outputs Q 2 and Q 1 with its input being connected to Q 2 and its output being connected to Q 1 .
- the additional element 321 also receives the signals CN and CI.
- the additional element functions as a tri-state inverter, which retains the state of the first node 315 when CI is a logical “1.”
- the second node 318 also serves as an input to a subsequent building block comprising a latch.
- the second node 318 is connected to the gate terminals of fifteenth and sixteenth transistors 322 , 323 .
- the fifteenth transistor 322 is a P-MOSFET whose source terminal is connected to the voltage supply Vs and whose drain terminal is connected to a third node 324 .
- a seventeenth transistor 325 Connected in parallel with the fifteenth transistor 322 is a seventeenth transistor 325 , which is also a P-MOSFET.
- the source terminal of the seventeenth transistor 335 is connected to the voltage supply Vs, its drain terminal is connected to the second node 318 , and its gate terminal receives the input G.
- the sixteenth transistor 323 comprises an N-MOSFET whose drain terminal is connected to the third node 324 and whose source terminal is connected to a drain terminal of a an eighteenth transistor 326 .
- the eighteenth transistor 326 comprises an N-MOSFET and has its source terminal connected to ground and its gate terminal receives the input G.
- the third node 324 is connected to a source terminal of a nineteenth transistor 327 , which comprises a P-MOSFET.
- the nineteenth transistor 327 is connected in parallel with a twentieth transistor 328 , which comprises an N-MOSFET.
- the gate terminal of the nineteenth transistor 327 receives the input AN and its drain terminal is connected to a fourth node 329 .
- the drain terminal of the twentieth transistor 328 is connected to the third node 324 , its source terminal is connected to the fourth node 329 , and its gate terminal is connected to a gate terminal of a twenty-first transistor 330 .
- the gate terminals of the twentieth and twenty-first transistors 328 , 330 both receive the input A.
- the twenty-first transistor 330 comprises a P-MOSFET and is connected in parallel with a twenty-second transistor 331 , which comprises an N-MOSFET.
- the drain terminal of the twenty-first transistor 330 and the source terminal of the twenty-second transistor 331 are both connected to the fourth node 329 .
- the source terminal of the twenty-first transistor 330 and the drain terminal of the twenty-second transistor 331 are connected to an output of a fifth inverter 332 whose input receives the input B.
- the fourth node 329 serves as the output Q 3 of the spare cell 201 and also as an input to a subsequent building block comprising a scan flip-flop.
- the fourth node 329 is connected to a source terminal of a twenty-third transistor 333 which comprises a P-MOSFET.
- the twenty-third transistor 333 is connected in parallel with a twenty-fourth transistor 334 , which comprises an N-MOSFET.
- the gate terminal of the twenty-third transistor 333 receives the input CN and its drain terminal is connected to a fifth node 335 .
- the drain terminal of the twenty-fourth transistor 334 is connected to the fourth node 329 , its source terminal is connected to the fifth node 329 , and its gate terminal is connected to CI.
- the fifth node 335 is connected to gate terminals of twenty-fifth and twenty-sixth transistors 336 , 337 .
- the twenty-fifth transistor 336 comprises a P-MOSFET whose source terminal is connected to the voltage supply Vs and whose drain terminal is connected to a sixth node 338 .
- a twenty-seventh transistor 339 Connected in parallel with the twenty-fifty transistor 336 is a twenty-seventh transistor 339 , which is also a P-MOSFET.
- the source terminal of the twenty-seventh transistor 339 is connected to the voltage supply Vs, its drain terminal is connected to the fifth node 338 , and its gate terminal receives the input H.
- the twenty-sixth transistor 337 comprises an N-MOSFET whose drain terminal is connected to the sixth node 338 and whose source terminal is connected to a drain terminal of a twenty-eighth transistor 340 .
- the twenty-eighth transistor 340 comprises an N-MOSFET and has its source terminal connected to ground and its gate terminal receives the input H.
- the fifth node 335 and the sixth node 338 are connected to a transistor array.
- the transistor array comprises a twenty-ninth transistor 341 , which comprises a P-MOSFET whose source terminal is connected to the voltage supply Vs, whose gate terminal is connected to the sixth node 338 , and whose drain terminal is connected to a source terminal of a thirtieth transistor 342 .
- the thirtieth transistor 342 comprises a P-MOSFET whose gate terminal receives the input C 1 and whose drain terminal is connected to a drain terminal of a thirty-first transistor 343 .
- the drain terminals of the thirtieth and thirty-first transistors 342 , 343 are also connected to the fifth node 335 .
- the thirty-first transistor 343 comprises an N-MOSFET whose gate terminal receives the input CN and whose source terminal is connected to a thirty-second transistor 344 .
- the thirty-second transistor 344 comprises an N-MOSFET whose source terminal is connected to ground and whose gate terminal is connected to the sixth node 338 .
- the sixth node 338 is also connected to gate terminals of thirty-fourth and thirty-fifth transistors 345 , 346 .
- the thirty-fourth transistor 345 comprises a P-MOSFET whose source terminal is connected to the voltage supply Vs and whose drain terminal is connected to an input of a sixth inverter 347 .
- a thirty-sixth transistor 348 Connected in parallel with the thirty-fourth transistor 345 is a thirty-sixth transistor 348 , which is also a P-MOSFET.
- the source terminal of the thirty-sixth transistor 348 is connected to the voltage supply Vs, its drain terminal is connected to the input of the sixth inverter 347 , and its gate terminal receives the input G.
- the thirty-fifth transistor 346 comprises an N-MOSFET whose drain terminal is connected to the input of the sixth inverter 347 and whose source terminal is connected to a drain terminal of a thirty-seventh transistor 349 .
- the thirty-seventh transistor 349 comprises an N-MOSFET and has its source terminal connected to ground and its gate terminal receives the input G.
- An output of the sixth inverter 347 serves as the output Q 4 of the spare cell.
- two or more of the inputs A-H of the circuit of FIG. 3 are used as selection (or control) inputs so that when they are set at some fixed logical value (“0” or “1”) or connected to the output Q 1 , is capable of performing a multiplicity of selectable logic functions and further, is also capable of performing, concurrently, a plurality of logic functions.
- a first function set is illustrated in the table of FIG. 4 where settings labelled 1 through 7 relate to different logical operations depending on connections of the inputs.
- the inputs C and D are set to a logical “0.”
- the remaining inputs A, B and E-H comprise a subset of inputs and the circuitry of the spare gate cell performs logical operations on this subset of inputs to provide output values at Q 1 , Q 2 and Q 3 as shown in the table of FIG. 4 .
- the circuit of FIG. 3 reduces to that shown in FIG. 5 . Comparing the circuits of FIGS. 3 and 5 reveals that the scan flip-flop is unused and that only certain components of the multiplexer are active and are used as logic gates.
- the output Q 1 is fed back to input G and the inputs A, F and H are set to a logical “1”.
- This setting provides, simultaneously, an inverted version of input E (at output Q 1 ) and a buffered version of input E at output Q 2 .
- this first function set can provide a logical functions which include; buffer, inverter, a first NAND operation, second NAND operation, a first AND operation and a second AND operation.
- the input C is set to a logical “0” and the input F is set to a logical “1.”
- the remaining inputs A, B, D, E, G and H comprise the subset of inputs and the circuitry of the spare cell performs logical operations on this subset of inputs to provide output values at Q 1 , Q 2 and Q 3 as shown in the table of FIG. 6 .
- the inputs B, D, G and H are used as additional control inputs with the subset of inputs comprising just A and E.
- the output Q 1 is fed back to input B, inputs C and D are set at a logical “0” and the inputs F, G and H are set to a logical “1”.
- This setting provides, simultaneously, an inverted version of input E (at output Q 1 ), a buffered version of input E at output Q 2 and input A XORed with input E at output Q 3 .
- this second function set can provide logical functions that include: buffer, inverter, AND, exclusive NOR, XOR, two NOR operations, and two OR operations.
- two or more of the inputs A-H of the circuit of FIG. 3 are used as selection (or control) inputs with the remaining inputs comprising a subset to be operated on by the circuitry of the spare cell.
- one or more inputs are used as control inputs and fixed at a logical value and another input is connected to an external clock signal.
- a third function set is illustrated in the table of FIG. 8 where settings labelled 17 through 31 relate to different logical operations depending on connections of the inputs.
- the input C is set to a logical “0” and the input H is set to a logical “1.”
- the spare cell operates as a multiplexer, selecting between inputs D and F under the control of input E (and its inverse EN).
- the result of the multiplexing operation can be taken from either output Q 1 or output Q 2 or both, one being an inverted version of the other.
- the spare cell performs the function of a scan flip-flop whose output can be taken from output Q 4 .
- the spare cell acts as a positive reset latch with an output at Q 4 and can simultaneously provide an inverted version of input B on output Q 3 .
- the output Q 1 is fed back into input B, inputs C and E are set at a logical “0” and inputs G and H are set at a logical “1”.
- the spare cell acts as a tri-state inverter (at output Q 3 ). Further inspection of the table of FIG. 8 reveals that this third set can provide logical functions that include: negative and positive latches, a multiplexer, a tri-state inverter, and set and reset/set/reset scan flip-flop.
- the present invention provides a spare cell that be used to implement one or more logic functions simultaneously, and that only the input/output pins of the spare cell need to be changed and not the intermediate nodes of the circuit.
- the cell can be configured by making changes only to metal-1.
- connections as discussed herein may be any type of connection suitable to transfer signals from or to the respective nodes, units or devices, for example via intermediate devices. Accordingly, unless implied or stated otherwise, the connections may for example be direct connections or indirect connections.
- the connections may be illustrated or described in reference to being a single connection, a plurality of connections, unidirectional connections, or bidirectional connections. However, different embodiments may vary the implementation of the connections. For example, separate unidirectional connections may be used rather than bidirectional connections and vice versa.
- plurality of connections may be replaced with a single connection that transfers multiple signals serially or in a time multiplexed manner. Likewise, single connections carrying multiple signals may be separated out into various different connections carrying subsets of these signals. Therefore, many options exist for transferring signals.
- Each signal described herein may be designed as positive or negative logic.
- the signal In the case of a negative logic signal, the signal is active low where the logically true state corresponds to a logic level zero.
- the signal In the case of a positive logic signal, the signal is active high where the logically true state corresponds to a logic level one.
- any of the signals described herein can be designed as either negative or positive logic signals. Therefore, in alternate embodiments, those signals described as positive logic signals may be implemented as negative logic signals, and those signals described as negative logic signals may be implemented as positive logic signals.
- assert or “set” and “negate” (or “de-assert” or “clear”) are used herein when referring to the rendering of a signal, status bit, or similar apparatus into its logically true or logically false state, respectively. If the logically true state is a logic level one, the logically false state is a logic level zero. And if the logically true state is a logic level zero, the logically false state is a logic level one.
- the integrated circuit of FIG. 1 may be packaged with one or more other dies. That is, an integrated circuit device may comprise one or more dies in a single package with circuit elements formed on the dies and which are connectable to other components outside the package through suitable connections such as package pins and bond wires between the pins and the dies.
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
Description
- The present invention relates generally to spare gate cell circuitry and, more particularly, to configurable spare gate cells for inclusion in an integrated circuit.
- Large integrated circuits such as a system-on-chip (SOC) device have many logic circuits. Often, the circuit design must be updated or changed to correct errors or bugs discovered during simulations and testing. For example, during de-bugging, last minute changes to the SOC design, sometimes called Engineering Design Orders (ECO) are made by connecting one or more spare cells already located in the design to implement the correction. A typical spare gate cell includes a collection of transistors coupled together into a pre-defined logic gate or other functional logic circuit, which can then be used to perform a certain function. These pre-defined spare gates can be configured to implement various logic functions such as NAND, NOR, inverter, etc.
- One known spare gate cell includes a configurable building block circuit having at least two inputs and an output. The configurable building block circuit is capable of selectively performing a plurality of possible logic functions on signals appearing on the inputs to produce a logic signal on the output, where selection of a logic function depends on connections of the input leads of the configurable building block circuit.
- The increasing pressure of time-to-market has forced IC designers to improve capability of handling incremental design changes. These design changes, known as Engineering Change Orders or ECOs, are requested after silicon chips have been manufactured, thus the photo masks need to be changed. Since it is expensive to change the photo masks, it is more efficient and less expensive if the ECO can be implemented by changing only one or more of the metal layers of the design (used for interconnect), while the base layers (for cells) remain the same.
- Most current VLSI (very large scale integration) circuits are constructed with at least three metal layers and usually seven or more metal layers. Implementing changes in the metal layer is only feasible if the spare cell corresponding to the desired functionality already exists in the layout of the SOC. Thus, spare cells usually are sprinkled throughout a design. However, a further complication is that only one logic function can be performed by a spare cell at any one time so that ‘n’ spare cells are required to perform ‘n’ functionalities. Therefore, silicon area and power requirements are high.
- Thus, it would be advantageous to provide a spare cell that mitigates the above disadvantages of known arrangements.
- The invention, together with objects and advantages thereof, may best be understood by reference to the following description of preferred embodiments together with the accompanying drawings in which:
-
FIG. 1 is a simplified schematic diagram of an integrated circuit that has a plurality of spare cells in accordance with an embodiment of the invention; -
FIG. 2 is a simplified block diagram of one of the spare cells included in the integrated circuit device ofFIG. 1 in accordance with an embodiment of the present invention; -
FIG. 3 is a schematic circuit diagram of a spare gate cell in accordance with an embodiment of the invention; -
FIG. 4 is a table illustrating a first set of possible logical operations capable of being performed by the spare gate cell ofFIG. 3 ; -
FIG. 5 is a schematic circuit diagram of the spare gate cell ofFIG. 3 being used to implement a first set of functions in accordance with an embodiment of the present invention; -
FIG. 6 is a table illustrating a second set of possible logical operations capable of being performed by the spare gate cell ofFIG. 3 ; -
FIG. 7 is a schematic circuit diagram of the spare gate cell ofFIG. 3 being used to implement a second set of functions in accordance with an embodiment of the present invention; and -
FIG. 8 is a table illustrating a third set of possible logical operations capable of being performed by the spare gate cell ofFIG. 3 . - The detailed description set forth below in connection with the appended drawings is intended as a description of presently preferred embodiments of the invention, and is not intended to represent the only forms in which the present invention may be practised. It is to be understood that the same or equivalent functions may be accomplished by different embodiments that are intended to be encompassed within the spirit and scope of the invention. In the drawings, like numerals are used to indicate like elements throughout. Furthermore, terms “comprises,” “comprising,” or any other variation thereof, are intended to cover a non-exclusive inclusion, such that module, circuit, device components, structures and method steps that comprises a list of elements or steps does not include only those elements but may include other elements or steps not expressly listed or inherent to such module, circuit, device components or steps. An element or step proceeded by “comprises . . . a” does not, without more constraints, preclude the existence of additional identical elements or steps that comprises the element or step.
- In one embodiment, the present invention provides a spare cell having at least two inputs and at least two outputs, the spare cell being capable of selectively performing, concurrently, a plurality of logic functions on signals appearing at the inputs to produce logic signals at the outputs, where selection of the plurality of logic functions depends on connections of at least one of the inputs of the spare cell. Optionally, an output of the spare cell may be connected to an input of the spare cell.
- Advantageously, a plurality of different functionalities can be provided simultaneously by the same spare cell. Thus, depending on different input configurations, different, concurrent multi-output operations can be realized. This saves on silicon area and power consumption compared with known arrangements. A further advantage is that the spare cell can be connected and configured by making a change only to a metal layer of the IC design. Thus, there is no need to recreate costly photo masks. Changes in the cell's physical connections are made only at the input/output pins, and no internal nodes need to be modified.
- In one example embodiment, several multi-functionality spare cells in accordance with the invention may be implemented in an integrated circuit and may be distributed at random locations throughout the circuit. By using spare cells in accordance with the invention in this way, the probability of finding a desired functionality close to an ECO site, or of implementing a particular functionality ‘N’ times, is increased.
- In one example embodiment, a spare cell is configured to provide a function set of logical operations to be performed on a sub-set of its inputs by setting, at a predetermined logical value, at least one input, which is not included in the subset, to predetermined logical values and/or connecting it to an output of the spare gate cell.
- In one example embodiment, a first function set of logical operations comprises a buffer, inverter, NAND and AND. One example of a multiplicity of logical functions that can be performed concurrently with this first functional set includes an AND operation on two inputs, a NAND operation on three inputs, and a NAND operation on two inputs.
- In another example embodiment, a second function set of logical operations includes a buffer, inverter, XOR, exclusive NOR, NOR, OR, and AND. One example of a plurality of logical functions that can be performed concurrently with this second functional set comprises an inverter, a buffer and an XNOR (exclusive NOR).
- In a further example embodiment, a third function set of logical operations comprises NAND, negative latch, positive latch, multiplexer, tri-state inverter, set and reset or set or reset scanning flip-flop. One example of a plurality of logical functions that can be performed concurrently with this third functional set comprises an inverter and a positive latch.
- By re-configuring the inputs of the spare cell of the present invention, alternative function sets can be implemented.
- An example of a spare gate cell in accordance with the invention may comprise a plurality of building blocks. In one example, the building blocks include a multiplexer, a latch and a scan flip-flop.
- An integrated circuit, such as a SOC, may include one or several or many spare cells of the present invention. One of the spare cells may be configured to have a different functional set from another spare cell.
- Referring now to
FIG. 1 , an integratedcircuit 100 is shown. Theintegrated circuit 100 may comprise, for example, a system-on-chip (SOC) device or an ASIC. The integratedcircuit 100 includes a plurality of spare gate cells that are arranged in a random fashion in theintegrated circuit device 100. Eight spare gate cells 101-108 are shown inFIG. 1 but fewer or more than eight may be included in other examples. One or more of the spare gate cells 101-108 may be used and set to have a desired functionality by making changes in the appropriate metal layer of theintegrated circuit device 100. - Referring now to
FIG. 2 , a spare gate cell 201 has eight inputs labelled A through H and four outputs labelled Q1, Q2, Q3, Q4. The spare cell 201 comprises transistor-transistor logic (TTL) circuitry capable of performing, concurrently, several of the plurality of logical operations in a manner to be described below. A subset of the inputs A to H are used as signal inputs and these signals are operated on by the circuitry of the spare cell 201 to produce logical output values at the outputs Q1 to Q4. The remaining inputs that are not included in the subset are used as selection (or control) inputs and depending on the logical value of these selection inputs, the circuitry of the spare cell 201 performs certain logical operations on at least some of the subset of inputs in order to produce certain output values at the outputs Q1 to Q4. In some example embodiments, one or more outputs are fed back to one or more inputs of the spare cell 201. -
FIG. 2 illustrates the possibility of input B receiving either output Q1 or Q2 and input G receiving output Q2. In one example, the spare cell 201 comprises basic building blocks that include a multiplexer, a latch and a scan flip-flop. In some examples, the spare cell 201 also includes one or more inverters (NOT gates) that can be selectively employed to invert or buffer an input for serving as either an input to another part of the circuitry of the spare cell 201. In other examples, some of the circuitry of a multiplexer or a latch is employed to perform simple logic gate operations such as a NAND operation. - With reference now to
FIG. 3 , a simplified circuit diagram of the spare cell 201 ofFIG. 2 is illustrated. Hence, the circuit ofFIG. 3 has eight inputs, A through H and four outputs Q1-Q4. InFIG. 3 (andFIGS. 5 and 7 ), the annotations AN, CN and EN mean “NOTTED” (or inverted) versions of the inputs A, C and E respectively. The annotation CI means a twice inverted (or buffered) version of the input C. - A
first inverter 301 receives input A and produces an inverted version AN at its output. Asecond inverter 302 receives input C and produces an inverted version CN, which in turn is fed to athird inverter 303, which produces a twice inverted version CI at its output. Afourth inverter 304 receives input E and produces an inverted version EN at its output. - A
first transistor 305, which comprises a P-MOSFET (metal oxide semiconductor field effect transistor) receives input E on its gate terminal. Asecond transistor 306, which comprises P-MOSFET receives EN (i.e. the inverted version of input E) at its gate terminal. Source terminals of the first and 305 and 306 are connected to a supply voltage Vs. Asecond transistors third transistor 307, which also is a P-MOSFET, receives input D at its gate terminal. Its source terminal is connected to the drain terminal of thefirst transistor 305. Afourth transistor 308, also a P-MOSFET has a gate terminal that receives input F. The source terminal of thefourth transistor 308 is connected to the drain terminal of thesecond transistor 306. The drain terminals of both third and 307, 308 are connected to a source terminal of afourth transistors fifth transistor 309, which also is a P-MOSFET. The gate terminal of thefifth transistor 309 receives CI. Asixth transistor 310, which comprises an N-MOSFET, receives input EN on its gate terminal. Aseventh transistor 311, which is an N-MOSFET receives input E on its gate terminal. Source terminals of the sixth and 310, 311 are connected to ground. Anseventh transistors eighth transistor 312, which is an N-MOSFET receives input D on its gate terminal and its source terminal is connected to the drain terminal of thesixth transistor 310. Aninth transistor 313, which is an N-MOSFET, receives input F of its gate terminal and its source terminal is connected to the drain terminal of theseventh transistor 311. The drain terminals of the eighth and 312, 313 are connected to a source terminal of aninth transistors tenth transistor 314, which is an N-MOSFET. Thetenth transistor 314 receives CN on its gate terminal. The drain terminal of thetenth transistor 314 is connected to the source terminal of thefifth transistor 309 at afirst node 315. Thefirst node 315 serves as the output Q1. The first through tenth transistors (305-314) form a multiplexer building block whose output comprises one of the outputs of the spare cell 201. - The
first node 315 and also serves as an input to a further stage of the circuitry, which includes a building block comprising configurable logic gates. Thefirst node 315 is connected to the gate terminals of eleventh and 316, 317. Thetwelfth transistors eleventh transistor 316 comprises a P-MOSFET whose source terminal is connected to the voltage supply Vs and whose drain terminal is connected to asecond node 318. Connected in parallel with theeleventh transistor 316 is athirteenth transistor 319, which is also a P-MOSFET. The source terminal of thethirteenth transistor 319 is connected to the voltage supply Vs and its drain terminal is connected to thesecond node 318, while its gate terminal receives the input H. Thetwelfth transistor 317 is an N-MOSFET whose drain terminal is connected to thesecond node 318 and whose source terminal is connected to a drain terminal of afourteenth transistor 320. Thefourteenth transistor 320 comprises an N-MOSFET and has its source terminal connected to ground and its gate terminal receives the input H. Thesecond node 318 serves as an output of the building block comprising the eleventh, twelfth, thirteenth and fourteenth transistors and also serves as the output Q2 of the spare cell 201. - An
additional element 321 comprising a tri-state inverter is connected across the outputs Q2 and Q1 with its input being connected to Q2 and its output being connected to Q1. Theadditional element 321 also receives the signals CN and CI. The additional element functions as a tri-state inverter, which retains the state of thefirst node 315 when CI is a logical “1.” Thesecond node 318 also serves as an input to a subsequent building block comprising a latch. Thesecond node 318 is connected to the gate terminals of fifteenth and 322, 323. Thesixteenth transistors fifteenth transistor 322 is a P-MOSFET whose source terminal is connected to the voltage supply Vs and whose drain terminal is connected to athird node 324. Connected in parallel with thefifteenth transistor 322 is aseventeenth transistor 325, which is also a P-MOSFET. The source terminal of theseventeenth transistor 335 is connected to the voltage supply Vs, its drain terminal is connected to thesecond node 318, and its gate terminal receives the input G. Thesixteenth transistor 323 comprises an N-MOSFET whose drain terminal is connected to thethird node 324 and whose source terminal is connected to a drain terminal of a aneighteenth transistor 326. Theeighteenth transistor 326 comprises an N-MOSFET and has its source terminal connected to ground and its gate terminal receives the input G. Thethird node 324 is connected to a source terminal of anineteenth transistor 327, which comprises a P-MOSFET. Thenineteenth transistor 327 is connected in parallel with atwentieth transistor 328, which comprises an N-MOSFET. The gate terminal of thenineteenth transistor 327 receives the input AN and its drain terminal is connected to afourth node 329. The drain terminal of thetwentieth transistor 328 is connected to thethird node 324, its source terminal is connected to thefourth node 329, and its gate terminal is connected to a gate terminal of a twenty-first transistor 330. The gate terminals of the twentieth and twenty- 328, 330 both receive the input A. The twenty-first transistors first transistor 330 comprises a P-MOSFET and is connected in parallel with a twenty-second transistor 331, which comprises an N-MOSFET. The drain terminal of the twenty-first transistor 330 and the source terminal of the twenty-second transistor 331 are both connected to thefourth node 329. The source terminal of the twenty-first transistor 330 and the drain terminal of the twenty-second transistor 331 are connected to an output of afifth inverter 332 whose input receives the input B. Thefourth node 329 serves as the output Q3 of the spare cell 201 and also as an input to a subsequent building block comprising a scan flip-flop. - The
fourth node 329 is connected to a source terminal of a twenty-third transistor 333 which comprises a P-MOSFET. The twenty-third transistor 333 is connected in parallel with a twenty-fourth transistor 334, which comprises an N-MOSFET. The gate terminal of the twenty-third transistor 333 receives the input CN and its drain terminal is connected to afifth node 335. The drain terminal of the twenty-fourth transistor 334 is connected to thefourth node 329, its source terminal is connected to thefifth node 329, and its gate terminal is connected to CI. Thefifth node 335 is connected to gate terminals of twenty-fifth and twenty- 336, 337. The twenty-sixth transistors fifth transistor 336 comprises a P-MOSFET whose source terminal is connected to the voltage supply Vs and whose drain terminal is connected to asixth node 338. Connected in parallel with the twenty-fiftytransistor 336 is a twenty-seventh transistor 339, which is also a P-MOSFET. The source terminal of the twenty-seventh transistor 339 is connected to the voltage supply Vs, its drain terminal is connected to thefifth node 338, and its gate terminal receives the input H. The twenty-sixth transistor 337 comprises an N-MOSFET whose drain terminal is connected to thesixth node 338 and whose source terminal is connected to a drain terminal of a twenty-eighth transistor 340. The twenty-eighth transistor 340 comprises an N-MOSFET and has its source terminal connected to ground and its gate terminal receives the input H. Thefifth node 335 and thesixth node 338 are connected to a transistor array. The transistor array comprises a twenty-ninth transistor 341, which comprises a P-MOSFET whose source terminal is connected to the voltage supply Vs, whose gate terminal is connected to thesixth node 338, and whose drain terminal is connected to a source terminal of athirtieth transistor 342. Thethirtieth transistor 342 comprises a P-MOSFET whose gate terminal receives the input C1 and whose drain terminal is connected to a drain terminal of a thirty-first transistor 343. The drain terminals of the thirtieth and thirty- 342, 343 are also connected to thefirst transistors fifth node 335. The thirty-first transistor 343 comprises an N-MOSFET whose gate terminal receives the input CN and whose source terminal is connected to a thirty-second transistor 344. The thirty-second transistor 344 comprises an N-MOSFET whose source terminal is connected to ground and whose gate terminal is connected to thesixth node 338. Thesixth node 338 is also connected to gate terminals of thirty-fourth and thirty- 345, 346. The thirty-fifth transistors fourth transistor 345 comprises a P-MOSFET whose source terminal is connected to the voltage supply Vs and whose drain terminal is connected to an input of asixth inverter 347. Connected in parallel with the thirty-fourth transistor 345 is a thirty-sixth transistor 348, which is also a P-MOSFET. The source terminal of the thirty-sixth transistor 348 is connected to the voltage supply Vs, its drain terminal is connected to the input of thesixth inverter 347, and its gate terminal receives the input G. The thirty-fifth transistor 346 comprises an N-MOSFET whose drain terminal is connected to the input of thesixth inverter 347 and whose source terminal is connected to a drain terminal of a thirty-seventh transistor 349. The thirty-seventh transistor 349 comprises an N-MOSFET and has its source terminal connected to ground and its gate terminal receives the input G. An output of thesixth inverter 347 serves as the output Q4 of the spare cell. - Referring now to the table of
FIG. 4 and the circuit diagram ofFIG. 5 , two or more of the inputs A-H of the circuit ofFIG. 3 are used as selection (or control) inputs so that when they are set at some fixed logical value (“0” or “1”) or connected to the output Q1, is capable of performing a multiplicity of selectable logic functions and further, is also capable of performing, concurrently, a plurality of logic functions. A first function set is illustrated in the table ofFIG. 4 where settings labelled 1 through 7 relate to different logical operations depending on connections of the inputs. For this first function set, the inputs C and D are set to a logical “0.” The remaining inputs A, B and E-H comprise a subset of inputs and the circuitry of the spare gate cell performs logical operations on this subset of inputs to provide output values at Q1, Q2 and Q3 as shown in the table ofFIG. 4 . When the inputs C and D are set to logical “0” the circuit ofFIG. 3 reduces to that shown inFIG. 5 . Comparing the circuits ofFIGS. 3 and 5 reveals that the scan flip-flop is unused and that only certain components of the multiplexer are active and are used as logic gates. - Referring to the table of
FIG. 4 again, it can be seen that for the setting labelled 1, the circuit performs logic operations on the subset of inputs such that output Q1 gives the result of input E NANDed with input F, output Q2 is the result of Boolean operations on inputs E, F and H and output Q3 is the result of further Boolean operations on the inputs A, B, E, F, G and H. All three outputs Q1, Q2 and Q3 are available simultaneously for use in the integrated circuit ofFIG. 1 , for example. Seven different settings are shown in the table ofFIG. 4 for various connections of the inputs. As another example, for settingnumber 3, the inputs A, F, G and H on used as additional control inputs with the subset of inputs comprising just B and E. In this example, the output Q1 is fed back to input G and the inputs A, F and H are set to a logical “1”. This setting provides, simultaneously, an inverted version of input E (at output Q1) and a buffered version of input E at output Q2. Further inspection of the table ofFIG. 4 reveals that this first function set can provide a logical functions which include; buffer, inverter, a first NAND operation, second NAND operation, a first AND operation and a second AND operation. - Referring now to the table of
FIG. 6 and the circuit diagram ofFIG. 7 , two or more of the inputs A-H of the circuit ofFIG. 3 are again used as selection (or control) inputs with the remaining inputs comprising a subset to be operated on by the circuitry of the spare cell. A second function set is illustrated in the table ofFIG. 6 where settings labelled 8 through 16 relate to different logical operations depending on connections of the inputs. For this second function set, the input C is set to a logical “0” and the input F is set to a logical “1.” The remaining inputs A, B, D, E, G and H comprise the subset of inputs and the circuitry of the spare cell performs logical operations on this subset of inputs to provide output values at Q1, Q2 and Q3 as shown in the table ofFIG. 6 . - For example, when the input C is set to a logical “0” and the input F is set to a logical “1”, the circuit of
FIG. 3 reduces to that shown inFIG. 7 . Comparing the circuits ofFIGS. 3 and 7 reveals that the scan flip-flop is unused and that only certain components of the multiplexer are active and are used as logic gates. - Referring to the table of
FIG. 6 again, it can be seen that for the setting labelled 8, the circuit performs logic operations on the subset of inputs such that output Q1 gives the result of input D “NORed” with input E, output Q2 is the result of Boolean operations on inputs D, E and H and output Q3 is the result of further Boolean operations on the inputs A, B, D, E, G and H. All three outputs Q1, Q2 and Q3 are available simultaneously for use in the integrated circuit ofFIG. 1 , for example. Nine different settings are shown in the table ofFIG. 4 for various connections of the inputs. As another example, for settingnumber 16, the inputs B, D, G and H are used as additional control inputs with the subset of inputs comprising just A and E. In this example, the output Q1 is fed back to input B, inputs C and D are set at a logical “0” and the inputs F, G and H are set to a logical “1”. This setting provides, simultaneously, an inverted version of input E (at output Q1), a buffered version of input E at output Q2 and input A XORed with input E at output Q3. Further inspection of the table ofFIG. 6 reveals that this second function set can provide logical functions that include: buffer, inverter, AND, exclusive NOR, XOR, two NOR operations, and two OR operations. - Referring now to the table of
FIG. 8 and the circuit diagram ofFIG. 3 , in some examples, two or more of the inputs A-H of the circuit ofFIG. 3 are used as selection (or control) inputs with the remaining inputs comprising a subset to be operated on by the circuitry of the spare cell. In other examples, one or more inputs are used as control inputs and fixed at a logical value and another input is connected to an external clock signal. A third function set is illustrated in the table ofFIG. 8 where settings labelled 17 through 31 relate to different logical operations depending on connections of the inputs. - In one example of this third function set, for the setting labelled 24, the input C is set to a logical “0” and the input H is set to a logical “1.” With this setting, the spare cell operates as a multiplexer, selecting between inputs D and F under the control of input E (and its inverse EN). The result of the multiplexing operation can be taken from either output Q1 or output Q2 or both, one being an inverted version of the other.
- In another example, for the setting labelled 17, by setting input A to a logical “1” and connecting a clock signal to input C, the spare cell performs the function of a scan flip-flop whose output can be taken from output Q4.
- In a further example, for the setting labelled 29, when input A is set to a logical “0”, the input H is set to a logical “1” and the input C is connected to a clock signal, the spare cell acts as a positive reset latch with an output at Q4 and can simultaneously provide an inverted version of input B on output Q3. In another example, for the setting labelled 21, the output Q1 is fed back into input B, inputs C and E are set at a logical “0” and inputs G and H are set at a logical “1”. In this example, the spare cell acts as a tri-state inverter (at output Q3). Further inspection of the table of
FIG. 8 reveals that this third set can provide logical functions that include: negative and positive latches, a multiplexer, a tri-state inverter, and set and reset/set/reset scan flip-flop. - While the above examples show a spare cell having eight inputs and four outputs, it will be understood that more or fewer inputs and outputs may be used to provide a multiplicity of concurrent operations.
- It should now be clear that the present invention provides a spare cell that be used to implement one or more logic functions simultaneously, and that only the input/output pins of the spare cell need to be changed and not the intermediate nodes of the circuit. Thus, the cell can be configured by making changes only to metal-1.
- The connections as discussed herein may be any type of connection suitable to transfer signals from or to the respective nodes, units or devices, for example via intermediate devices. Accordingly, unless implied or stated otherwise, the connections may for example be direct connections or indirect connections. The connections may be illustrated or described in reference to being a single connection, a plurality of connections, unidirectional connections, or bidirectional connections. However, different embodiments may vary the implementation of the connections. For example, separate unidirectional connections may be used rather than bidirectional connections and vice versa. Also, plurality of connections may be replaced with a single connection that transfers multiple signals serially or in a time multiplexed manner. Likewise, single connections carrying multiple signals may be separated out into various different connections carrying subsets of these signals. Therefore, many options exist for transferring signals.
- Although specific conductivity types or polarity of potentials have been described in the examples, it will be appreciated that conductivity types and polarities potentials may be reversed that signals.
- Each signal described herein may be designed as positive or negative logic. In the case of a negative logic signal, the signal is active low where the logically true state corresponds to a logic level zero. In the case of a positive logic signal, the signal is active high where the logically true state corresponds to a logic level one. Note that any of the signals described herein can be designed as either negative or positive logic signals. Therefore, in alternate embodiments, those signals described as positive logic signals may be implemented as negative logic signals, and those signals described as negative logic signals may be implemented as positive logic signals. Furthermore, the terms “assert” or “set” and “negate” (or “de-assert” or “clear”) are used herein when referring to the rendering of a signal, status bit, or similar apparatus into its logically true or logically false state, respectively. If the logically true state is a logic level one, the logically false state is a logic level zero. And if the logically true state is a logic level zero, the logically false state is a logic level one.
- The integrated circuit of
FIG. 1 may be packaged with one or more other dies. That is, an integrated circuit device may comprise one or more dies in a single package with circuit elements formed on the dies and which are connectable to other components outside the package through suitable connections such as package pins and bond wires between the pins and the dies. - The description of the preferred embodiments of the present invention has been presented for purposes of illustration and description, but is not intended to be exhaustive or to limit the invention to the forms disclosed. It will be appreciated by those skilled in the art that changes could be made to the embodiments described above without departing from the broad inventive concept thereof. It is understood, therefore, that this invention is not limited to the particular embodiment disclosed, but covers modifications within the spirit and scope of the present invention as defined by the appended claims.
Claims (10)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US14/262,795 US9154135B1 (en) | 2014-04-27 | 2014-04-27 | Spare gate cell for integrated circuit |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US14/262,795 US9154135B1 (en) | 2014-04-27 | 2014-04-27 | Spare gate cell for integrated circuit |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| US9154135B1 US9154135B1 (en) | 2015-10-06 |
| US20150311898A1 true US20150311898A1 (en) | 2015-10-29 |
Family
ID=54203908
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US14/262,795 Active US9154135B1 (en) | 2014-04-27 | 2014-04-27 | Spare gate cell for integrated circuit |
Country Status (1)
| Country | Link |
|---|---|
| US (1) | US9154135B1 (en) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP3244449A1 (en) | 2016-05-13 | 2017-11-15 | NXP USA, Inc. | Integrated circuit with spare cells |
| CN109428587B (en) | 2017-08-31 | 2023-10-27 | 恩智浦美国有限公司 | Level shifter backup unit |
| TWI665573B (en) * | 2018-01-02 | 2019-07-11 | 慧榮科技股份有限公司 | Circuit design method and associated computer program product |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6255845B1 (en) | 1999-11-16 | 2001-07-03 | Advanced Micro Devices, Inc. | Efficient use of spare gates for post-silicon debug and enhancements |
| FR2846491B1 (en) | 2002-10-25 | 2005-08-12 | Atmel Corp | ARCHITECTURE COMPRISING REPLACEMENT CELLS TO REPAIR DESIGN ERRORS IN INTEGRATED CIRCUITS AFTER MANUFACTURING |
| US8103989B2 (en) | 2008-02-26 | 2012-01-24 | International Business Machines Corporation | Method and system for changing circuits in an integrated circuit |
| US20100231256A1 (en) | 2009-03-10 | 2010-09-16 | Freescale Semiconductor, Inc | Spare cell library design for integrated circuit |
| US8810280B2 (en) * | 2011-10-06 | 2014-08-19 | Oracle International Corporation | Low leakage spare gates for integrated circuits |
-
2014
- 2014-04-27 US US14/262,795 patent/US9154135B1/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| US9154135B1 (en) | 2015-10-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9024657B2 (en) | Architectural floorplan for a structured ASIC manufactured on a 28 NM CMOS process lithographic node or smaller | |
| US9106229B1 (en) | Programmable interposer circuitry | |
| US8629548B1 (en) | Clock network fishbone architecture for a structured ASIC manufactured on a 28 NM CMOS process lithographic node | |
| CN103177152B (en) | Partial reconfiguration circuitry | |
| US9425771B2 (en) | Low area flip-flop with a shared inverter | |
| KR102038745B1 (en) | Input/output circuits and methods of implementing an input/output circuit | |
| US12147750B2 (en) | Multiplexer | |
| US6924671B2 (en) | General-purpose logic module and cell using the same | |
| CN103155414A (en) | hardened programmable device | |
| US9154135B1 (en) | Spare gate cell for integrated circuit | |
| KR930001749B1 (en) | Programmable logic circuit | |
| CN111812490B (en) | A method for testing signal transmission delay in FPGA chip | |
| US11386254B2 (en) | Semiconductor circuit and semiconductor circuit layout system | |
| US11392743B2 (en) | Multiplexer | |
| CN106409342B (en) | Area efficient multi-bit flip-flop topology | |
| US10069487B1 (en) | Delay chain having Schmitt triggers | |
| US20160061895A1 (en) | Addressable ring oscillator test chip | |
| US9569570B2 (en) | Configurable delay cell | |
| US10574214B1 (en) | Circuit for and method of storing data in an integrated circuit device | |
| US12265417B2 (en) | Configurable clock macro circuits and methods | |
| US6864712B2 (en) | Hardening logic devices | |
| US20240356548A1 (en) | Output Driver Circuits And Methods With Hot-Socket Protection | |
| US20260031819A1 (en) | Systems and Methods for a Multi-Mode Programmable IO | |
| US20240220671A1 (en) | Circuits And Methods For Tampering Detection | |
| US20240194683A1 (en) | Semiconductor integrated circuit, layout design system, layout designing method, and non-transitory computer-readable storage medium storing program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| AS | Assignment |
Owner name: FREESCALE SEMICONDUCTOR, INC., TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:JAJODIA, REECHA;GOYAL, GAURAV;REEL/FRAME:032763/0984 Effective date: 20140421 |
|
| AS | Assignment |
Owner name: CITIBANK, N.A., AS NOTES COLLATERAL AGENT, NEW YORK Free format text: SUPPLEMENT TO IP SECURITY AGREEMENT;ASSIGNOR:FREESCALE SEMICONDUCTOR, INC.;REEL/FRAME:033460/0337 Effective date: 20140729 Owner name: CITIBANK, N.A., AS NOTES COLLATERAL AGENT, NEW YORK Free format text: SUPPLEMENT TO IP SECURITY AGREEMENT;ASSIGNOR:FREESCALE SEMICONDUCTOR, INC.;REEL/FRAME:033462/0267 Effective date: 20140729 Owner name: CITIBANK, N.A., AS NOTES COLLATERAL AGENT, NEW YORK Free format text: SUPPLEMENT TO IP SECURITY AGREEMENT;ASSIGNOR:FREESCALE SEMICONDUCTOR, INC.;REEL/FRAME:033462/0293 Effective date: 20140729 Owner name: CITIBANK, N.A., AS NOTES COLLATERAL AGENT, NEW YOR Free format text: SUPPLEMENT TO IP SECURITY AGREEMENT;ASSIGNOR:FREESCALE SEMICONDUCTOR, INC.;REEL/FRAME:033462/0267 Effective date: 20140729 Owner name: CITIBANK, N.A., AS NOTES COLLATERAL AGENT, NEW YOR Free format text: SUPPLEMENT TO IP SECURITY AGREEMENT;ASSIGNOR:FREESCALE SEMICONDUCTOR, INC.;REEL/FRAME:033462/0293 Effective date: 20140729 Owner name: CITIBANK, N.A., AS NOTES COLLATERAL AGENT, NEW YOR Free format text: SUPPLEMENT TO IP SECURITY AGREEMENT;ASSIGNOR:FREESCALE SEMICONDUCTOR, INC.;REEL/FRAME:033460/0337 Effective date: 20140729 |
|
| STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
| AS | Assignment |
Owner name: FREESCALE SEMICONDUCTOR, INC., TEXAS Free format text: PATENT RELEASE;ASSIGNOR:CITIBANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:037357/0903 Effective date: 20151207 |
|
| AS | Assignment |
Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS;ASSIGNOR:CITIBANK, N.A.;REEL/FRAME:037444/0082 Effective date: 20151207 Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS;ASSIGNOR:CITIBANK, N.A.;REEL/FRAME:037444/0109 Effective date: 20151207 |
|
| AS | Assignment |
Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: SECURITY AGREEMENT SUPPLEMENT;ASSIGNOR:NXP B.V.;REEL/FRAME:038017/0058 Effective date: 20160218 |
|
| AS | Assignment |
Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: SUPPLEMENT TO THE SECURITY AGREEMENT;ASSIGNOR:FREESCALE SEMICONDUCTOR, INC.;REEL/FRAME:039138/0001 Effective date: 20160525 |
|
| AS | Assignment |
Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12092129 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT;ASSIGNOR:NXP B.V.;REEL/FRAME:039361/0212 Effective date: 20160218 |
|
| AS | Assignment |
Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 14/258,829 AND REPLACE ITWITH 14/258,629 PREVIOUSLY RECORDED ON REEL 037444 FRAME 0082. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OFSECURITY INTEREST IN PATENTS;ASSIGNOR:CITIBANK, N.A.;REEL/FRAME:039639/0332 Effective date: 20151207 Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION14/258,829 AND REPLACE IT WITH 14/258,629 PREVIOUSLY RECORDED ON REEL 037444 FRAME 0109. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS;ASSIGNOR:CITIBANK, N.A.;REEL/FRAME:039639/0208 Effective date: 20151207 Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: CORRECTIVE ASSIGNMENT OF INCORRECT APPLICATION 14/258,829 PREVIOUSLY RECORDED ON REEL 037444 FRAME 0109. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS;ASSIGNOR:CITIBANK, N.A.;REEL/FRAME:039639/0208 Effective date: 20151207 |
|
| AS | Assignment |
Owner name: NXP, B.V., F/K/A FREESCALE SEMICONDUCTOR, INC., NETHERLANDS Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:040925/0001 Effective date: 20160912 Owner name: NXP, B.V., F/K/A FREESCALE SEMICONDUCTOR, INC., NE Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:040925/0001 Effective date: 20160912 |
|
| AS | Assignment |
Owner name: NXP B.V., NETHERLANDS Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:040928/0001 Effective date: 20160622 |
|
| AS | Assignment |
Owner name: NXP USA, INC., TEXAS Free format text: MERGER;ASSIGNOR:FREESCALE SEMICONDUCTOR, INC.;REEL/FRAME:041144/0363 Effective date: 20161107 |
|
| AS | Assignment |
Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12681366 PREVIOUSLY RECORDED ON REEL 039361 FRAME 0212. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT;ASSIGNOR:NXP B.V.;REEL/FRAME:042762/0145 Effective date: 20160218 Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12681366 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT;ASSIGNOR:NXP B.V.;REEL/FRAME:042985/0001 Effective date: 20160218 |
|
| MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |
|
| AS | Assignment |
Owner name: NXP B.V., NETHERLANDS Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:050744/0097 Effective date: 20190903 Owner name: NXP B.V., NETHERLANDS Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:050745/0001 Effective date: 20190903 |
|
| AS | Assignment |
Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 042762 FRAME 0145. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT;ASSIGNOR:NXP B.V.;REEL/FRAME:051145/0184 Effective date: 20160218 Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 039361 FRAME 0212. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT;ASSIGNOR:NXP B.V.;REEL/FRAME:051029/0387 Effective date: 20160218 Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 042985 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT;ASSIGNOR:NXP B.V.;REEL/FRAME:051029/0001 Effective date: 20160218 Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT;ASSIGNOR:NXP B.V.;REEL/FRAME:051030/0001 Effective date: 20160218 Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION12298143 PREVIOUSLY RECORDED ON REEL 039361 FRAME 0212. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT;ASSIGNOR:NXP B.V.;REEL/FRAME:051029/0387 Effective date: 20160218 Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION12298143 PREVIOUSLY RECORDED ON REEL 042985 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT;ASSIGNOR:NXP B.V.;REEL/FRAME:051029/0001 Effective date: 20160218 Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION12298143 PREVIOUSLY RECORDED ON REEL 042762 FRAME 0145. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT;ASSIGNOR:NXP B.V.;REEL/FRAME:051145/0184 Effective date: 20160218 |
|
| AS | Assignment |
Owner name: NXP B.V., NETHERLANDS Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVEAPPLICATION 11759915 AND REPLACE IT WITH APPLICATION11759935 PREVIOUSLY RECORDED ON REEL 040928 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITYINTEREST;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:052915/0001 Effective date: 20160622 Owner name: NXP B.V., NETHERLANDS Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040928 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:052915/0001 Effective date: 20160622 |
|
| AS | Assignment |
Owner name: NXP, B.V. F/K/A FREESCALE SEMICONDUCTOR, INC., NETHERLANDS Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVEAPPLICATION 11759915 AND REPLACE IT WITH APPLICATION11759935 PREVIOUSLY RECORDED ON REEL 040925 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITYINTEREST;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:052917/0001 Effective date: 20160912 Owner name: NXP, B.V. F/K/A FREESCALE SEMICONDUCTOR, INC., NETHERLANDS Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040925 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:052917/0001 Effective date: 20160912 |
|
| MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |