USRE40011E1 - System for coupling programmable logic device to external circuitry which selects a logic standard and uses buffers to modify output and input signals accordingly - Google Patents

System for coupling programmable logic device to external circuitry which selects a logic standard and uses buffers to modify output and input signals accordingly Download PDF

Info

Publication number
USRE40011E1
USRE40011E1 US10/084,757 US8475701A USRE40011E US RE40011 E1 USRE40011 E1 US RE40011E1 US 8475701 A US8475701 A US 8475701A US RE40011 E USRE40011 E US RE40011E
Authority
US
United States
Prior art keywords
input
programmable
logic
output device
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
US10/084,757
Inventor
Nghia Tran
Ying Xuan Li
Janusz Balicki
John Costello
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Altera Corp
Original Assignee
Altera Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=24168954&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=USRE40011(E1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Altera Corp filed Critical Altera Corp
Priority to US10/084,757 priority Critical patent/USRE40011E1/en
Application granted granted Critical
Publication of USRE40011E1 publication Critical patent/USRE40011E1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1057Data output buffers, e.g. comprising level conversion circuits, circuits for adapting load
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1045Read-write mode select circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17736Structural details of routing resources
    • H03K19/17744Structural details of routing resources for input/output signals
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/1778Structural details for adapting physical parameters
    • H03K19/17788Structural details for adapting physical parameters for input/output [I/O] voltages

Definitions

  • This invention relates to programmable logic devices (“PLDs”), and more particularly to a new architecture for the input/output (I/O) circuitry which couples the PLDs to external circuitry.
  • PLDs programmable logic devices
  • I/O input/output
  • Programmable logic devices are integrated circuits which are able to implement combinational and/or sequential digital functions which may be defined by a designer and programmed into the device.
  • PLDs may be configured by a user to implement any Boolean expression or registered function with built-in logic structures. Once a PLD is configured, the user must connect the PLD to external circuitry which provides input signals to, and receives output signals from, the PLD.
  • each PLD must be configured to operate with specific external circuitry. For example, if a user utilizes Transistor-to-Transistor Logic (TTL) or CMOS external circuitry, the PLD must be configured to provide the appropriate drive signals. However, the selection of open drain logic may require different drive parameters and thus, a different PLD, even though the basic PLD is substantially the same. This deficiency is even more apparent in view of the programmable nature of PLDs and the flexibility provided to the end users.
  • TTL Transistor-to-Transistor Logic
  • PLDs as semiconductor devices, are susceptible to a wide range of potential hazards, such as electrostatic discharge (ESD). To avoid these potential problems, care must be taken in connecting the PLD pins to external circuitry. Any pins which are used as input pins should preferably be driven by an active source (including bi-directional pins during input operations). Additionally, unused pins are typically tied to ground to avoid the potential of additional DC current and noise being introduced into the circuits.
  • ESD electrostatic discharge
  • Output loading of the PLD I/O pins is typically resistive and/or capacitive. Resistive loading exists where the device output sinks or sources a current during steady-state operation (e.g., TTL inputs, terminated buses, and discrete bipolar transistors). Capacitive loading typically occurs from packaging and printed circuit board traces. Further, an important design consideration of the interface between the PLD and external circuitry is that the target device can supply both the current and speed necessary for the given loads.
  • GTL interface drivers typically operate with a voltage swing on the order of about 0.8 volts to 1.2 volts, which are intended to drive a CMOS binary communications bus.
  • HSTL High-Speed Transistor Logic
  • GTL typically operates with a voltage swing of about a predetermined voltage plus 0.050 volts to the predetermined voltage minus 0.050 volts and at relatively higher switching frequencies than GTL (for terminated HSTL, the predetermined voltage is the termination voltage, while non-terminated HSTL uses a reference voltage).
  • a PLD having GTL drivers must interface with a GTL bus.
  • a PLD having TTL drivers must interface with a TTL bus or discrete TTL components.
  • a PLD having HSTL drivers must interface with a HSTL bus or discrete HSTL components.
  • I/O architecture which may be programmed by a user to select any one of several logic standards, such that a single PLD may be used with external circuitry that operates at different logic levels.
  • I/O architecture which includes programmable I/O buffers that interface with various different logic standards.
  • programmable I/O devices are provided which interface with TTL, CMOS, open drain, GTL and HSTL (both terminated and non-terminated) logic standards.
  • TTL, CMOS, open drain, GTL and HSTL both terminated and non-terminated logic standards.
  • the preferred embodiment of the present invention provides a programmable logic circuit having four states (i.e., two bits) which are correspond to voltage levels representative of various logic standards. By adding an additional bit to the logic circuit and additional driving circuitry, additional logic standards may be supported.
  • FIG. 1 is a schematic block diagram of an illustrative embodiment of an input/output circuit incorporating principles of the present invention
  • FIG. 2 is a schematic diagram of a programmable output buffer of the input/output circuit of FIG. 1 , constructed in accordance with the principles of the present invention
  • FIG. 3 is a schematic diagram of one embodiment of a programmable input buffer of the input/output circuit of FIG. 1 , constructed in accordance with the principles of the present invention
  • FIG. 4 is a schematic diagram of an alternate embodiment of a programmable input buffer of the input/output circuit of FIG. 1 , constructed in accordance with the principles of the present invention
  • FIG. 5 is a schematic diagram of another alternate embodiment of a programmable input buffer of the input/output circuit of FIG. 1 , constructed in accordance with the principles of the present invention.
  • FIG. 1 shows a schematic block diagram of a programmable input/output (I/O) circuit 100 which incorporates principles of the present invention.
  • I/O circuit 100 includes output driver 102 , input driver 104 , I/O pad 106 , and programmable elements 108 and 110 .
  • Output driver 102 which has an input terminal to receive output signals from a programmable logic device (PLD) (not shown), provides an output signal (OUT) to I/O pad 106 at an appropriate voltage level that corresponds to a selected logic standard. Additionally, output driver 102 has three control lines which receive signals ENABLE, SB 0 (Select Bit 0 ), and SB 1 (Select Bit 1 ).
  • PLD programmable logic device
  • Input driver 104 which has an input terminal to receive signals from I/O pad 106 and output buffer 102 , provides input signals to the PLD at the appropriate level of voltage, regardless of the voltage level of the signal receive on the input terminal.
  • input driver 104 also receives control signal SB 1 from programmable element 108 .
  • Programmable elements 108 and 110 may be of any variety of memory cells.
  • elements 108 and 110 may be SRAM (static random access memory), EPROM (erasable programmable read-only memory), EEPROM (electrically erasable programmable read-only memory), or antifuses.
  • elements 108 and 110 be formed from the same variety of programmable elements as the PLD to which they are attached.
  • the PLD utilizes EEPROM elements (such as in the MAX 7000 family of PLDs available from Altera Corporation, San Jose, Calif.)
  • each I/O circuit 100 should also include EEPROM elements for programmable elements 108 and 110 .
  • a PLD utilizing EEPROMs may be configured with I/O circuits 100 utilizing SRAM elements).
  • I/O circuit 100 depends on the status of programmable elements 108 and 110 .
  • output driver 102 and input driver 104 are configured to convert PLD voltage levels to voltage levels corresponding to the selected logic standard. Further, output driver 102 does not change its output voltage levels until an ENABLE signal is received on the appropriate control line, as described more fully below.
  • input driver 104 adjusts the voltage levels it operates with as soon as signal SB 1 changes.
  • each voltage level corresponds to one or more of the appropriate voltages necessary to drive devices in accordance with a given logic standard.
  • output driver 102 and input driver 104 are configured to operate with TTL/CMOS voltage levels in interfacing with I/O pad 106 .
  • FIG. 2 shows a schematic circuit diagram of one embodiment of output driver 102 of FIG. 1 .
  • Output driver 102 includes inverter 202 , which is adapted to receive the ENABLE signal and NOR gate 204 , which receives the inverted ENABLE signal from inverter 202 and signal SB 0 from element 110 (of FIG. 1 ).
  • the output of NOR gate 204 is provided as one input to NAND gate 206 , while the OUT signal is provided as the other input.
  • the OUT signal is inverted by inverter 208 and provided as one input to NAND gate 210 , while the ENABLE signal is the other input signal.
  • Inverters 212 and 214 are preferably both CMOS inverters which are formed by fabricating an n-channel MOSFET and a p-channel MOSFET with merged floating regions, as is well known in the art. Thus, inverters 212 and 214 are formed by n-channel MOSFETs 216 and 218 , respectively, and p-channel MOSFETs 220 and 222 , respectively. The outputs of inverters 212 and 214 are coupled to n-channel MOSFETs 224 and 226 , respectively.
  • Signal SB 1 is provided to inverter 228 , whose output is coupled to transmission gate 230 .
  • Signal SB 1 is also coupled to the gate of n-channel MOSFET 232 .
  • the input of transmission gate 230 is coupled to the output of NAND gate 210 , while the output of gate 230 is coupled to the gate of n-channel MOSFET 234 .
  • MOSFET 234 is used to adjust the trip point of inverter 214 .
  • the output of NAND gate 210 is also coupled to the gate of n-channel MOSFET 236 .
  • Inverter 214 provides an input signal to inverter 238 that is inverted and supplied as one input to NOR gate 240 .
  • the other input for NOR gate 240 is the inverted SB 1 signal output from inverter 228 .
  • NOR gate 240 drives the gate of n-channel MOSFET 242 , which has its drain and source regions connected between MOSFET 236 and the output terminal of output driver 102 (designated as V OUT ).
  • Output driver 102 which is active high (as described below), operates as follows.
  • ENABLE When ENABLE is low, the output of inverter 202 is high so that NOR gate 204 provides a low signal.
  • the low signal is input to NAND gate 206 , which produces a high signal to inverter 212 .
  • Inverter 212 inverts the high signal to drive the gate of n-channel MOSFET 224 with a low signal, which keeps MOSFET 224 turned off.
  • the low ENABLE signal is also provided as an input to NAND gate 210 , which produces a high signal to inverter 214 .
  • Inverter 214 inverts the high signal to drive the gate of n-channel MOSFET 226 with a low signal, which keeps MOSFET 226 turned off. Because both MOSFETs 224 and 226 are turned off, irrespective of signals SB 1 and SB 0 , signal OUT is not passed to V OUT . Thus, when ENABLE is low, output driver 102 is inactive.
  • Output driver 102 is turned on when ENABLE is set high.
  • the logic standard applied by output driver 102 is determined by the status of Select Bits SB 1 and SB 0 .
  • the high ENABLE signal is input to inverter 202 and NAND gate 210 , which potentially activates NOR gate 204 and NAND gate 210 .
  • the other input to NOR gate 204 is signal SB 0 , such that NOR gate 204 produces a high output if signal SB 0 is low.
  • MOSFET 224 has its drain and source nodes connected between predetermined voltage source V CCIO and terminal V OUT , respectively.
  • a high output signal from NOR gate 204 (i.e., when signal SB 0 is low) is combined with signal OUT such that NAND gate 206 acts as an inverter on the OUT signal.
  • the signal inverted by NAND gate 206 is inverted by inverter 212 such that the signal input to the gate of MOSFET 224 is the same as that of signal OUT.
  • MOSFET 224 is turned on and if signal OUT is low, MOSFET 224 is turned off.
  • the second MOSFET which controls the output signal is MOSFET 226 , which is connected between predetermined voltage source V SSIO and terminal V OUT (while it is preferable that V SSIO is separate from internal ground source V SS —to reduce noise—the principles of the present invention may be practiced using a common ground).
  • the state of MOSFET 226 is determined based upon signals SB 1 and OUT.
  • Signal OUT is inverted by inverter 208 and input to NAND gate 210 , which together act as a buffer to signal OUT (that is controlled by signal ENABLE).
  • signal OUT is provided as an input to inverter 214 .
  • the inverted signal controls MOSFET 226 such that MOSFET 226 is on when signal OUT is low, and off when signal OUT is high.
  • Signal SB 1 which is inverted by inverter 228 , drives the gate of MOSFET 232 .
  • the inverted SB 1 signal determines whether transmission gate 230 passes the signal as its input (which corresponds to signal OUT). When transmission gate 230 is on, it passes signal OUT to the gate of MOSFET 234 .
  • the inverted SB 1 signal is also provided as one input to NOR gate 240 .
  • the other input to NOR gate 240 is signal OUT (i.e., signal OUT, after it has been inverted twice by inverters 214 and 238 ).
  • the output of NOR gate 240 drives the gate of MOSFET 242 , which has a source region connected to terminal V OUT .
  • Signal OUT also drives the gate of MOSFET 236 , such that MOSFET 236 is on when signal OUT is high.
  • the circuitry including inverters 228 and 238 , NOR gate 240 , transmission gate 230 , and MOSFETs 232 , 234 , 236 , and 242 provide noise reduction for output driver 102 during transitions of signal OUT from low to high when Select Signal SB 1 is high (because when SB 1 is low, NOR gate 240 always provides a low output keeping MOSFET 242 turned off—i.e., TTL and open drain).
  • MOSFET 242 While OUT is low, MOSFET 242 is on and MOSFET 236 is off. When OUT goes high, MOSFET 236 is immediately turned on such that MOSFETs 236 and 242 are on causing the gate and drain of MOSFET 226 to be tied together. Once the time delay introduced by inverter 236 and NOR gate 240 lapses, MOSFET 242 turns off and normal operation continues. Thus, noise is reduced during the low-to-high transition by temporarily coupling the gate and drain of MOSFET 226 together. Further, the noise reduction is only applicable during GTL/HSTL operations (i.e., when signal SB 1 is high).
  • FIG. 3 shows one embodiment of input driver 104 as input driver circuit 300 .
  • Driver circuit 300 merges the TTL portion with the GTL portion to reduce transistor count and layout area. However, due to the merged circuitry, the TTL and GTL circuits may not be independently optimized.
  • Driver circuit 300 includes p-channel MOSFETs 302 and 304 , and n-channel MOSFET 306 , all having a gate coupled to receive signal V OUT from output driver 102 to I/O pad 106 .
  • MOSFET 302 is coupled between predetermined voltage source V CC and one side of the source/drain channel of MOSFET 304 .
  • An additional p-channel MOSFET 308 is also coupled the source/drain channel of MOSFET 304 .
  • MOSFET 304 The other side of the source/drain channel of MOSFET 304 is coupled to a series of inverters 314 , 316 , and 318 , which provide signal IN to the PLD.
  • N-channel MOSFET 320 has a source/drain channel coupled between the input of inverter 314 and MOSFET 306 .
  • the gate of MOSFET 320 is driven by inverted signal SB 1 (which is inverted by inverter 322 ).
  • N-channel MOSFET 324 has a source/drain channel coupled between MOSFET 304 and ground, while n-channel MOSFET 326 is coupled between MOSFET 308 and ground, however, MOSFET 326 is diode-connected.
  • the gates of MOSFETs 324 and 326 are coupled together and to one end of the source/drain channel of n-channel MOSFET 328 , while the other end is coupled to ground.
  • MOSFET 328 is driven by the inverted SB 1 signal received from inverter 322 .
  • P-channel MOSFET 310 and n-channel MOSFET 312 have their gates coupled together such that one of MOSFETs 310 and 312 is on at all times.
  • the gates of MOSFETs 310 and 312 are coupled to receive signal SB 1 , which is the only Signal Bit utilized by input driver circuit 300 .
  • MOSFETs 310 and 312 also have their source/drain channels coupled together and to the gate of MOSFET 308 such that the gate of MOSFET 308 is always provided with one or predetermined voltages V CC or V REF (V REF may typically be about 0.8 volts).
  • MOSFETs 302 , 304 , 308 , 324 and 326 are coupled together to form a differential amplifier.
  • the inputs to the differential amplifier are the gates of MOSFETs 304 and 308 .
  • MOSFET 304 receives the input signal from either output buffer 102 or I/O pad 106
  • MOSFET 308 receives the predetermined reference voltage. The input signal is only compared to the reference voltage by the differential amplifier when the amplifier is activated by Select Signal SB 1 .
  • inverter 322 When signal SB 1 is high—i.e., logic standard GTL or HSTL is selected—inverter 322 provides a low signal to the gates of MOSFETs 320 and 328 , turning them both off. At the same time, the high SB 1 signal is provided to the gates of MOSFETs 310 and 312 , which turns MOSFET 310 off (because it is a p-channel device) and MOSFET 312 on (because it is an n-channel device). MOSFET 312 provides V REF (which is a reference voltage, typically about 0.8 volts) to MOSFET 308 , turning it on.
  • V REF which is a reference voltage, typically about 0.8 volts
  • MOSFETs 324 and 326 are coupled together to produce a current mirror within the differential amplifier such that the current passing through MOSFETs 304 and 324 is substantially equal to the current passing through MOSFETs 308 and 326 .
  • the current mirror is turned on and off by MOSFET 328 in conjunction with signal SB 1 (i.e., when SB 1 is low, MOSFET 328 is turned on which grounds the gates of MOSFETs 324 and 326 , effectively turning off the current mirror).
  • signal IN is directly related to the current passing through the branches of the current mirror.
  • inverter 314 if signal V OUT is higher than V REF when SB 1 is high, the current mirror is not turned on because p-channel MOSFET 302 is off (such that the current from voltage source V CC does not pass into the current mirror). Because the current mirror is off, the input to inverter 314 is low. The low signal is inverted three times and supplied as a high signal to terminal IN. Three inverters are provided to enable the driver circuit to drive circuits having increased loads by sizing inverter 314 to be smaller than inverters 316 and 318 . Thus, inverters 316 and 318 act to buffer and amplify the signal output from inverter 314 . The smaller size of inverter 314 is used to reduce the loading at the output of the input buffer to allow it to switch faster.
  • MOSFET 302 when signal V OUT is lower than V REF and SB 1 is high, MOSFET 302 is on which turns on the current mirror. A current then passes down each branch of the current mirror and provides a high input to inverter 314 . The high signal is inverted three times to provide a low signal to terminal IN.
  • a low SB 1 signal turns on MOSFET 310 which provides V CC to MOSFET 308 , turning it off.
  • the low SB 1 signal also turns on MOSFET 328 which grounds the current mirror, and turns on MOSFET 320 .
  • MOSFET 320 acts in conjunction with MOSFET 306 to provide a current path depending on the state of signal V OUT When signal VOUT is high, MOSFETs 306 and 320 are on which grounds the input to inverter 314 .
  • the grounded signal is inverted three times to provide a high signal to terminal IN.
  • MOSFETs 302 and 304 are turned on and MOSFET 306 is turned off.
  • a high signal is input to inverter 314 which is inverted three times and provided as a low signal to terminal IN.
  • I/O circuit 100 may require additional settings by a user to properly program the buffer circuitry.
  • V CCIO is typically set about 5.0 volts, which provides a high signal from about 2.4 volts to about 3.5 volts.
  • I/O pad 106 is coupled to a terminating resistor, which sets the appropriate voltage levels because MOSFET 224 is permanently off (due to signal SB 0 being set high).
  • GTL/HSTL non-terminated logic operates in a manner similar to open drain, in that MOSFET 224 is always off. However, the input voltage levels are set by the value of the reference voltage V REF . For GTL/HSTL terminated, the voltage levels are determined by setting V CCIO to be equal to the termination voltage (typically from about 1.2 volts to about 1.6 volts).
  • FIG. 4 shows an alternate embodiment of input buffer 104 as buffer circuit 400 .
  • buffer 400 the TTL and GTL input driving circuits are not merged, requiring higher transistor count than buffer 300 .
  • buffer 400 provides the capability to independently optimize the operational speed of the TTL and GTL input buffers.
  • Buffer circuit 400 includes inverter 402 and n-channel MOSFET 404 which are adapted to receive signal V OUT from output buffer 102 or I/O pad 106 MOSFET 404 , which has a source connected to drive the gate of p-channel MOSFET 406 , is itself driven by Select Signal SB 1 (once again, the only Select Signal utilized by input buffer 104 ). Select Signal SB 1 is also inverted by inverter 408 and provided to p-channel MOSFETs 410 and 412 . MOSFET 410 connects the inverted V OUT signal (from inverter 402 ) to the input of inverter 414 , which is coupled in series through inverters 416 and 418 to terminal IN.
  • P-channel MOSFET 420 is coupled to act as the current source for the current mirror formed by n-channel MOSFETs 422 and 424 , with MOSFET 422 being diodeconnected.
  • P-channel MOSFET 426 is coupled to mirror the characteristics of MOSFET 406 , but is constantly driven on by reference voltage V REF .
  • V REF reference voltage
  • n-channel MOSFET 412 turns the current mirror on and off in conjunction with signal SB 1 by grounding the gates of MOSFETs 422 and 424 .
  • p-channel MOSFET 428 which is connected between reference voltage V CC and the gate of MOSFETs 406 and 420 , keeps the current mirror turned off when SB 1 is low by providing V CC to the gates of MOSFETs 406 and 420 to turn them off.
  • Buffer circuit 400 operates as follows. When signal SB 1 is low, the current mirror is turned off and MOSFET 410 is turned on. Therefore, the V OUT signal applied by output buffer 102 or I/O pad 106 is level translated first by inverter 402 then inverted three times (by inverters 414 , 416 , and 418 ) back to its original state and provided to terminal IN (i.e., a high signal V OUT ends up as a high signal at terminal IN and vice versa).
  • MOSFETs 410 , 412 , and 428 are turned off, which terminates the direct path from terminal V OUT to terminal IN and turns on the current mirror.
  • MOSFET 404 which is coupled to terminal V OUT , is turned on to provide signal V OUT as a driving signal to the gate of MOSFET 406 .
  • the output of the current mirror is taken from a node between MOSFETs 406 and 424 and is coupled to the input of inverter 414 .
  • MOSFETS 406 and 420 are turned on, activating the current mirror to cause a high signal to be input to inverter 414 .
  • the high signal is inverted three times to provide a low signal to terminal IN.
  • MOSFETS 406 and 420 are turned off, de-activating the current mirror to cause a low signal to be input to inverter 414 .
  • the low signal is inverted three times to provide a high signal to terminal IN.
  • FIG. 5 shows another alternate embodiment of input buffer 104 as buffer circuit 500 .
  • Buffer circuit 500 is substantially similar to buffer circuit 400 of FIG. 4 , except for a slight rearrangement of input signals which enables two inverters to be eliminated. The elimination of the inverters provides a buffer circuit requiring slightly less chip area than buffer 400 . However, because of the eliminated inversion stage, buffer circuit 500 may only be used to drive smaller loads than buffer circuit 400 . Circuit components that are the same in buffer circuits 400 and 500 are numbered using buffer circuit 400 's reference numerals. Accordingly, the discussion above for those components applies likewise to buffer circuit 500 unless otherwise described.
  • buffer circuits 400 and 500 are as follows.
  • Buffer 500 is implemented without inverters 402 and 418 .
  • the signal from terminal V OUT is only inverted twice, instead of four times, before being received by terminal IN.
  • the current mirror must be configured to provide output signals which are inverted from the output signals of the current mirror of FIG. 4 .
  • signal V OUT is supplied as an input to MOSFET 404 in buffer 400
  • signal V OUT is provided as an input to MOSFET 426 in buffer 500 (i.e., the opposing branch of the current mirror).
  • reference voltage V REF which constantly drives MOSFET 426 on in buffer 400 , is instead provided as the input to MOSFET 404 in buffer 500 .
  • the switching of signal V OUT and V REF changes the operation of the current mirror as follows.
  • a programmable logic device having a programmable logic circuit to select any one of several different logic drivers is provided.
  • One skilled in the art will appreciate that the present invention can be practiced by other than the described embodiment, which is presented for purposes of illustration and not of limitation.
  • the detailed schematics of the input buffers and output buffer show specific configurations of n-channel and p-channel MOSFETs, the principles of the present invention may be practiced using n-channel MOSFETs for p-channel MOSFETs and vice versa with a slight adjustment of signal inputs and outputs.
  • the present invention is limited only by the claims which follow.

Abstract

A programmable input/output device for use with a programmable logic device (PLD) is presented comprising an input buffer, an output buffer and programmable elements. The programmable elements may be programmed to select a logic standard for the input/output device to operate at. For instance, a given set of Select Bits applied to the programmable elements may select TTL logic, in which case the input and output buffers would operate according to the voltage levels appropriate for TTL logic (e.g., 0.4 volts to 2.4 volts). For a different set of Select Bits, the GTL logic standard would be applied (e.g., 0.8 volts to 1.2 volts). The invention enables a single PLD to be used in conjunction with various types of external circuitry.

Description

BACKGROUND OF THE INVENTION
This invention relates to programmable logic devices (“PLDs”), and more particularly to a new architecture for the input/output (I/O) circuitry which couples the PLDs to external circuitry.
Programmable logic devices are integrated circuits which are able to implement combinational and/or sequential digital functions which may be defined by a designer and programmed into the device. Thus, PLDs may be configured by a user to implement any Boolean expression or registered function with built-in logic structures. Once a PLD is configured, the user must connect the PLD to external circuitry which provides input signals to, and receives output signals from, the PLD.
One deficiency of conventional PLDs and their I/O circuitry is that each PLD must be configured to operate with specific external circuitry. For example, if a user utilizes Transistor-to-Transistor Logic (TTL) or CMOS external circuitry, the PLD must be configured to provide the appropriate drive signals. However, the selection of open drain logic may require different drive parameters and thus, a different PLD, even though the basic PLD is substantially the same. This deficiency is even more apparent in view of the programmable nature of PLDs and the flexibility provided to the end users.
Further, the nature of PLDs, as semiconductor devices, is that they are susceptible to a wide range of potential hazards, such as electrostatic discharge (ESD). To avoid these potential problems, care must be taken in connecting the PLD pins to external circuitry. Any pins which are used as input pins should preferably be driven by an active source (including bi-directional pins during input operations). Additionally, unused pins are typically tied to ground to avoid the potential of additional DC current and noise being introduced into the circuits.
Output loading of the PLD I/O pins is typically resistive and/or capacitive. Resistive loading exists where the device output sinks or sources a current during steady-state operation (e.g., TTL inputs, terminated buses, and discrete bipolar transistors). Capacitive loading typically occurs from packaging and printed circuit board traces. Further, an important design consideration of the interface between the PLD and external circuitry is that the target device can supply both the current and speed necessary for the given loads.
Various attempts have also been made at providing interface circuitry that operates at lower power levels, for example, the Gunning Transistor Logic (GTL) interface described in Gunning U.S. Pat. No. 5,023,488. GTL interface drivers typically operate with a voltage swing on the order of about 0.8 volts to 1.2 volts, which are intended to drive a CMOS binary communications bus. Another interface, High-Speed Transistor Logic (HSTL) typically operates with a voltage swing of about a predetermined voltage plus 0.050 volts to the predetermined voltage minus 0.050 volts and at relatively higher switching frequencies than GTL (for terminated HSTL, the predetermined voltage is the termination voltage, while non-terminated HSTL uses a reference voltage).
One deficiency of Gunning and other known driver circuitry is the limited scope with which the circuitry may be used. A PLD having GTL drivers must interface with a GTL bus. A PLD having TTL drivers must interface with a TTL bus or discrete TTL components. A PLD having HSTL drivers must interface with a HSTL bus or discrete HSTL components.
In view of the foregoing, it would be desirable to be able to provide an I/O architecture which provides the capability to drive multiple logic standards.
It would also be desirable to be able to provide an I/O architecture having the capability to selectively drive any one of multiple logic standards.
It would further be desirable to be able to provide an I/O architecture which may be programmed by a user to select any one of several logic standards, such that a single PLD may be used with external circuitry that operates at different logic levels.
SUMMARY OF THE INVENTION
It is an object of this invention to provide an I/O architecture which provides the capability to drive multiple logic standards.
It is a further object of this invention to provide an I/O architecture having the capability to selectively drive any one of multiple logic standards.
It is a further object of this invention to provide an I/O architecture which may be programmed by a user to select any one of several logic standards, such that a single PLD may be used with external circuitry that operates at different logic levels.
These and other objects are accomplished in accordance with the principles of the present invention by providing an I/O architecture which includes programmable I/O buffers that interface with various different logic standards. In a preferred embodiment of the present invention, programmable I/O devices are provided which interface with TTL, CMOS, open drain, GTL and HSTL (both terminated and non-terminated) logic standards. Those skilled in the art will understand that other logic standards, both those presently available and others still to be developed, may be incorporated into I/O circuits such as those described herein without departing from the scope of the present invention.
The preferred embodiment of the present invention provides a programmable logic circuit having four states (i.e., two bits) which are correspond to voltage levels representative of various logic standards. By adding an additional bit to the logic circuit and additional driving circuitry, additional logic standards may be supported.
BRIEF DESCRIPTION OF THE DRAWINGS
The above and other objects and advantages of the invention will be apparent upon consideration of the following detailed description, taken in conjunction with the accompanying drawings, in which like reference numerals refer to like parts throughout, and in which:
FIG. 1 is a schematic block diagram of an illustrative embodiment of an input/output circuit incorporating principles of the present invention;
FIG. 2 is a schematic diagram of a programmable output buffer of the input/output circuit of FIG. 1, constructed in accordance with the principles of the present invention;
FIG. 3 is a schematic diagram of one embodiment of a programmable input buffer of the input/output circuit of FIG. 1, constructed in accordance with the principles of the present invention;
FIG. 4 is a schematic diagram of an alternate embodiment of a programmable input buffer of the input/output circuit of FIG. 1, constructed in accordance with the principles of the present invention;
FIG. 5 is a schematic diagram of another alternate embodiment of a programmable input buffer of the input/output circuit of FIG. 1, constructed in accordance with the principles of the present invention.
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 shows a schematic block diagram of a programmable input/output (I/O) circuit 100 which incorporates principles of the present invention. I/O circuit 100 includes output driver 102, input driver 104, I/O pad 106, and programmable elements 108 and 110. Output driver 102, which has an input terminal to receive output signals from a programmable logic device (PLD) (not shown), provides an output signal (OUT) to I/O pad 106 at an appropriate voltage level that corresponds to a selected logic standard. Additionally, output driver 102 has three control lines which receive signals ENABLE, SB0 (Select Bit 0), and SB1 (Select Bit 1).
Input driver 104, which has an input terminal to receive signals from I/O pad 106 and output buffer 102, provides input signals to the PLD at the appropriate level of voltage, regardless of the voltage level of the signal receive on the input terminal. In addition, input driver 104 also receives control signal SB1 from programmable element 108. Programmable elements 108 and 110 may be of any variety of memory cells. For example, elements 108 and 110 may be SRAM (static random access memory), EPROM (erasable programmable read-only memory), EEPROM (electrically erasable programmable read-only memory), or antifuses.
For convenience, simplicity and to reduce chip area, it is preferable that elements 108 and 110 be formed from the same variety of programmable elements as the PLD to which they are attached. Thus, if the PLD utilizes EEPROM elements (such as in the MAX 7000 family of PLDs available from Altera Corporation, San Jose, Calif.), each I/O circuit 100 should also include EEPROM elements for programmable elements 108 and 110. Further, while such a configuration is preferable, it is not a requirement of the present invention (i.e., a PLD utilizing EEPROMs may be configured with I/O circuits 100 utilizing SRAM elements).
The operation of I/O circuit 100 depends on the status of programmable elements 108 and 110. For a given set of programmable bits (i.e., setting the status of elements 108 and 110), output driver 102 and input driver 104 are configured to convert PLD voltage levels to voltage levels corresponding to the selected logic standard. Further, output driver 102 does not change its output voltage levels until an ENABLE signal is received on the appropriate control line, as described more fully below. In contrast to output driver 102, input driver 104 adjusts the voltage levels it operates with as soon as signal SB1 changes.
In the configuration shown in FIG. 1, where only two control bits are used (i.e., SB0 and SB1), there are four different sets of voltage levels which may be selected. Each voltage level corresponds to one or more of the appropriate voltages necessary to drive devices in accordance with a given logic standard.
For example, one possible I/O configuration for a given set of possible values of programmable elements 108 and 110 is given in the following Table 1:
TABLE 1
SB1 SB0 Logic Standard Voltages
0 0 TTL/CMOS
0 1 Open Drain
1 0 GTL/HSTL (non-terminated)
1 1 GTL/HSTL (terminated)
Thus, for example, if signals SB1 and SB0 are both set provide a logic low, output driver 102 and input driver 104 are configured to operate with TTL/CMOS voltage levels in interfacing with I/O pad 106.
FIG. 2 shows a schematic circuit diagram of one embodiment of output driver 102 of FIG. 1. Output driver 102 includes inverter 202, which is adapted to receive the ENABLE signal and NOR gate 204, which receives the inverted ENABLE signal from inverter 202 and signal SB0 from element 110 (of FIG. 1). The output of NOR gate 204 is provided as one input to NAND gate 206, while the OUT signal is provided as the other input. Additionally, the OUT signal is inverted by inverter 208 and provided as one input to NAND gate 210, while the ENABLE signal is the other input signal.
The output of NAND gate 206 is provided to inverter 212, while the output of NAND gate 210 is provided to inverter 214. Inverters 212 and 214 are preferably both CMOS inverters which are formed by fabricating an n-channel MOSFET and a p-channel MOSFET with merged floating regions, as is well known in the art. Thus, inverters 212 and 214 are formed by n- channel MOSFETs 216 and 218, respectively, and p- channel MOSFETs 220 and 222, respectively. The outputs of inverters 212 and 214 are coupled to n- channel MOSFETs 224 and 226, respectively.
Signal SB1 is provided to inverter 228, whose output is coupled to transmission gate 230. Signal SB1 is also coupled to the gate of n-channel MOSFET 232. The input of transmission gate 230 is coupled to the output of NAND gate 210, while the output of gate 230 is coupled to the gate of n-channel MOSFET 234. MOSFET 234 is used to adjust the trip point of inverter 214. The output of NAND gate 210 is also coupled to the gate of n-channel MOSFET 236.
Inverter 214 provides an input signal to inverter 238 that is inverted and supplied as one input to NOR gate 240. The other input for NOR gate 240 is the inverted SB1 signal output from inverter 228. NOR gate 240 drives the gate of n-channel MOSFET 242, which has its drain and source regions connected between MOSFET 236 and the output terminal of output driver 102 (designated as VOUT).
Output driver 102, which is active high (as described below), operates as follows. When ENABLE is low, the output of inverter 202 is high so that NOR gate 204 provides a low signal. The low signal is input to NAND gate 206, which produces a high signal to inverter 212. Inverter 212 inverts the high signal to drive the gate of n-channel MOSFET 224 with a low signal, which keeps MOSFET 224 turned off. At the same time, the low ENABLE signal is also provided as an input to NAND gate 210, which produces a high signal to inverter 214.
Inverter 214 inverts the high signal to drive the gate of n-channel MOSFET 226 with a low signal, which keeps MOSFET 226 turned off. Because both MOSFETs 224 and 226 are turned off, irrespective of signals SB1 and SB0, signal OUT is not passed to VOUT. Thus, when ENABLE is low, output driver 102 is inactive.
Output driver 102 is turned on when ENABLE is set high. The logic standard applied by output driver 102 is determined by the status of Select Bits SB1 and SB0. The high ENABLE signal is input to inverter 202 and NAND gate 210, which potentially activates NOR gate 204 and NAND gate 210. The other input to NOR gate 204 is signal SB0, such that NOR gate 204 produces a high output if signal SB0 is low.
If the output of NOR gate 204 is low, then the output of NAND gate 206 is high, regardless of the state of signal OUT. A high output signal from NAND gate 206 is inverted to a low signal by inverter 212, the low signal preventing MOSFET 224 from turning on. MOSFET 224 has its drain and source nodes connected between predetermined voltage source VCCIO and terminal VOUT, respectively.
A high output signal from NOR gate 204 (i.e., when signal SB0 is low) is combined with signal OUT such that NAND gate 206 acts as an inverter on the OUT signal. The signal inverted by NAND gate 206, is inverted by inverter 212 such that the signal input to the gate of MOSFET 224 is the same as that of signal OUT. Thus, if signal OUT is high, MOSFET 224 is turned on and if signal OUT is low, MOSFET 224 is turned off.
The second MOSFET which controls the output signal is MOSFET 226, which is connected between predetermined voltage source VSSIO and terminal VOUT (while it is preferable that VSSIO is separate from internal ground source VSS—to reduce noise—the principles of the present invention may be practiced using a common ground). The state of MOSFET 226 is determined based upon signals SB1 and OUT. Signal OUT is inverted by inverter 208 and input to NAND gate 210, which together act as a buffer to signal OUT (that is controlled by signal ENABLE). Thus, signal OUT is provided as an input to inverter 214. The inverted signal controls MOSFET 226 such that MOSFET 226 is on when signal OUT is low, and off when signal OUT is high.
Signal SB1, which is inverted by inverter 228, drives the gate of MOSFET 232. The inverted SB1 signal determines whether transmission gate 230 passes the signal as its input (which corresponds to signal OUT). When transmission gate 230 is on, it passes signal OUT to the gate of MOSFET 234. The inverted SB1 signal is also provided as one input to NOR gate 240. The other input to NOR gate 240 is signal OUT (i.e., signal OUT, after it has been inverted twice by inverters 214 and 238). The output of NOR gate 240 drives the gate of MOSFET 242, which has a source region connected to terminal VOUT. Signal OUT also drives the gate of MOSFET 236, such that MOSFET 236 is on when signal OUT is high.
The circuitry including inverters 228 and 238, NOR gate 240, transmission gate 230, and MOSFETs 232, 234, 236, and 242 provide noise reduction for output driver 102 during transitions of signal OUT from low to high when Select Signal SB1 is high (because when SB1 is low, NOR gate 240 always provides a low output keeping MOSFET 242 turned off—i.e., TTL and open drain).
While OUT is low, MOSFET 242 is on and MOSFET 236 is off. When OUT goes high, MOSFET 236 is immediately turned on such that MOSFETs 236 and 242 are on causing the gate and drain of MOSFET 226 to be tied together. Once the time delay introduced by inverter 236 and NOR gate 240 lapses, MOSFET 242 turns off and normal operation continues. Thus, noise is reduced during the low-to-high transition by temporarily coupling the gate and drain of MOSFET 226 together. Further, the noise reduction is only applicable during GTL/HSTL operations (i.e., when signal SB1 is high).
FIG. 3 shows one embodiment of input driver 104 as input driver circuit 300. Driver circuit 300 merges the TTL portion with the GTL portion to reduce transistor count and layout area. However, due to the merged circuitry, the TTL and GTL circuits may not be independently optimized. Driver circuit 300 includes p-channel MOSFETs 302 and 304, and n-channel MOSFET 306, all having a gate coupled to receive signal VOUT from output driver 102 to I/O pad 106. MOSFET 302 is coupled between predetermined voltage source VCC and one side of the source/drain channel of MOSFET 304. An additional p-channel MOSFET 308 is also coupled the source/drain channel of MOSFET 304.
The other side of the source/drain channel of MOSFET 304 is coupled to a series of inverters 314, 316, and 318, which provide signal IN to the PLD. N-channel MOSFET 320 has a source/drain channel coupled between the input of inverter 314 and MOSFET 306. The gate of MOSFET 320 is driven by inverted signal SB1 (which is inverted by inverter 322).
N-channel MOSFET 324 has a source/drain channel coupled between MOSFET 304 and ground, while n-channel MOSFET 326 is coupled between MOSFET 308 and ground, however, MOSFET 326 is diode-connected. The gates of MOSFETs 324 and 326 are coupled together and to one end of the source/drain channel of n-channel MOSFET 328, while the other end is coupled to ground. MOSFET 328 is driven by the inverted SB1 signal received from inverter 322.
P-channel MOSFET 310 and n-channel MOSFET 312 have their gates coupled together such that one of MOSFETs 310 and 312 is on at all times. The gates of MOSFETs 310 and 312 are coupled to receive signal SB1, which is the only Signal Bit utilized by input driver circuit 300. MOSFETs 310 and 312 also have their source/drain channels coupled together and to the gate of MOSFET 308 such that the gate of MOSFET 308 is always provided with one or predetermined voltages VCC or VREF (VREF may typically be about 0.8 volts).
MOSFETs 302, 304, 308, 324 and 326 are coupled together to form a differential amplifier. The inputs to the differential amplifier are the gates of MOSFETs 304 and 308. MOSFET 304 receives the input signal from either output buffer 102 or I/O pad 106, while MOSFET 308 receives the predetermined reference voltage. The input signal is only compared to the reference voltage by the differential amplifier when the amplifier is activated by Select Signal SB1.
When signal SB1 is high—i.e., logic standard GTL or HSTL is selected—inverter 322 provides a low signal to the gates of MOSFETs 320 and 328, turning them both off. At the same time, the high SB1 signal is provided to the gates of MOSFETs 310 and 312, which turns MOSFET 310 off (because it is a p-channel device) and MOSFET 312 on (because it is an n-channel device). MOSFET 312 provides VREF (which is a reference voltage, typically about 0.8 volts) to MOSFET 308, turning it on.
MOSFETs 324 and 326 are coupled together to produce a current mirror within the differential amplifier such that the current passing through MOSFETs 304 and 324 is substantially equal to the current passing through MOSFETs 308 and 326. The current mirror is turned on and off by MOSFET 328 in conjunction with signal SB1 (i.e., when SB1 is low, MOSFET 328 is turned on which grounds the gates of MOSFETs 324 and 326, effectively turning off the current mirror). Additionally, because MOSFET 320 is off when the current mirror is on (it is controlled by the same signal that controls MOSFET 328), the signal IN is directly related to the current passing through the branches of the current mirror.
However, if signal VOUT is higher than VREF when SB1 is high, the current mirror is not turned on because p-channel MOSFET 302 is off (such that the current from voltage source VCC does not pass into the current mirror). Because the current mirror is off, the input to inverter 314 is low. The low signal is inverted three times and supplied as a high signal to terminal IN. Three inverters are provided to enable the driver circuit to drive circuits having increased loads by sizing inverter 314 to be smaller than inverters 316 and 318. Thus, inverters 316 and 318 act to buffer and amplify the signal output from inverter 314. The smaller size of inverter 314 is used to reduce the loading at the output of the input buffer to allow it to switch faster.
On the other hand, when signal VOUT is lower than VREF and SB1 is high, MOSFET 302 is on which turns on the current mirror. A current then passes down each branch of the current mirror and provides a high input to inverter 314. The high signal is inverted three times to provide a low signal to terminal IN.
A low SB1 signal turns on MOSFET 310 which provides VCC to MOSFET 308, turning it off. The low SB1 signal also turns on MOSFET 328 which grounds the current mirror, and turns on MOSFET 320. MOSFET 320 acts in conjunction with MOSFET 306 to provide a current path depending on the state of signal VOUT When signal VOUT is high, MOSFETs 306 and 320 are on which grounds the input to inverter 314. The grounded signal is inverted three times to provide a high signal to terminal IN. When signal VOUT is low, MOSFETs 302 and 304 are turned on and MOSFET 306 is turned off. Thus, a high signal is input to inverter 314 which is inverted three times and provided as a low signal to terminal IN.
Operation of I/O circuit 100 may require additional settings by a user to properly program the buffer circuitry. For example, for use with the TTL/CMOS standards, VCCIO is typically set about 5.0 volts, which provides a high signal from about 2.4 volts to about 3.5 volts. For open drain logic, I/O pad 106 is coupled to a terminating resistor, which sets the appropriate voltage levels because MOSFET 224 is permanently off (due to signal SB0 being set high).
GTL/HSTL non-terminated logic operates in a manner similar to open drain, in that MOSFET 224 is always off. However, the input voltage levels are set by the value of the reference voltage VREF. For GTL/HSTL terminated, the voltage levels are determined by setting VCCIO to be equal to the termination voltage (typically from about 1.2 volts to about 1.6 volts).
FIG. 4 shows an alternate embodiment of input buffer 104 as buffer circuit 400. In buffer 400, the TTL and GTL input driving circuits are not merged, requiring higher transistor count than buffer 300. However, buffer 400 provides the capability to independently optimize the operational speed of the TTL and GTL input buffers.
Buffer circuit 400 includes inverter 402 and n-channel MOSFET 404 which are adapted to receive signal VOUT from output buffer 102 or I/O pad 106 MOSFET 404, which has a source connected to drive the gate of p-channel MOSFET 406, is itself driven by Select Signal SB1 (once again, the only Select Signal utilized by input buffer 104). Select Signal SB1 is also inverted by inverter 408 and provided to p-channel MOSFETs 410 and 412. MOSFET 410 connects the inverted VOUT signal (from inverter 402) to the input of inverter 414, which is coupled in series through inverters 416 and 418 to terminal IN.
P-channel MOSFET 420 is coupled to act as the current source for the current mirror formed by n- channel MOSFETs 422 and 424, with MOSFET 422 being diodeconnected. P-channel MOSFET 426 is coupled to mirror the characteristics of MOSFET 406, but is constantly driven on by reference voltage VREF. Thus, the two branches of the current mirror are formed by MOSFET pairs 422/426 and 406/424.
Similarly to MOSFET 328 of FIG. 3, n-channel MOSFET 412 turns the current mirror on and off in conjunction with signal SB1 by grounding the gates of MOSFETs 422 and 424. Additionally, p-channel MOSFET 428, which is connected between reference voltage VCC and the gate of MOSFETs 406 and 420, keeps the current mirror turned off when SB1 is low by providing VCC to the gates of MOSFETs 406 and 420 to turn them off.
Buffer circuit 400 operates as follows. When signal SB1 is low, the current mirror is turned off and MOSFET 410 is turned on. Therefore, the VOUT signal applied by output buffer 102 or I/O pad 106 is level translated first by inverter 402 then inverted three times (by inverters 414, 416, and 418) back to its original state and provided to terminal IN (i.e., a high signal VOUT ends up as a high signal at terminal IN and vice versa).
When signal SB1 is high, MOSFETs 410, 412, and 428 are turned off, which terminates the direct path from terminal VOUT to terminal IN and turns on the current mirror. MOSFET 404, which is coupled to terminal VOUT, is turned on to provide signal VOUT as a driving signal to the gate of MOSFET 406. The output of the current mirror is taken from a node between MOSFETs 406 and 424 and is coupled to the input of inverter 414.
If signal VOUT is lower than VREF, MOSFETS 406 and 420 are turned on, activating the current mirror to cause a high signal to be input to inverter 414. The high signal is inverted three times to provide a low signal to terminal IN. If signal VOUT is higher than VREF, MOSFETS 406 and 420 are turned off, de-activating the current mirror to cause a low signal to be input to inverter 414. The low signal is inverted three times to provide a high signal to terminal IN.
FIG. 5 shows another alternate embodiment of input buffer 104 as buffer circuit 500. Buffer circuit 500 is substantially similar to buffer circuit 400 of FIG. 4, except for a slight rearrangement of input signals which enables two inverters to be eliminated. The elimination of the inverters provides a buffer circuit requiring slightly less chip area than buffer 400. However, because of the eliminated inversion stage, buffer circuit 500 may only be used to drive smaller loads than buffer circuit 400. Circuit components that are the same in buffer circuits 400 and 500 are numbered using buffer circuit 400's reference numerals. Accordingly, the discussion above for those components applies likewise to buffer circuit 500 unless otherwise described.
The differences between buffer circuits 400 and 500 are as follows. Buffer 500 is implemented without inverters 402 and 418. Thus, when the current mirror is inactive, the signal from terminal VOUT is only inverted twice, instead of four times, before being received by terminal IN. Additionally, because there are only two inverters in series between the current mirror and terminal IN, the current mirror must be configured to provide output signals which are inverted from the output signals of the current mirror of FIG. 4.
Whereas signal VOUT is supplied as an input to MOSFET 404 in buffer 400, signal VOUT is provided as an input to MOSFET 426 in buffer 500 (i.e., the opposing branch of the current mirror). Additionally, reference voltage VREF, which constantly drives MOSFET 426 on in buffer 400, is instead provided as the input to MOSFET 404 in buffer 500. The switching of signal VOUT and VREF changes the operation of the current mirror as follows.
When signal SB1 is low, the only operational difference between buffers 400 and 500 is that signal VOUT is only inverted twice, because the current mirror remains off. However, when signal SB1 is high in buffer 500, MOSFET 428 is turned off and MOSFETs 404, 406 and 420 are turned on, which turns on the current mirror ( MOSFETs 406 and 420 are turned on by VREF which passes through MOSFET 404). Further, when signal VOUT is higher than VREF in buffer 500, MOSFET 426 is turned off so that no current is passed by the current mirror. Therefore, the current mirror outputs a high signal which is inverted twice and passed to terminal IN. When signal VOUT is lower than VREF in buffer 500, MOSFET 426 is turned on and the current mirror outputs a low signal which is inverted twice and passed to terminal IN.
Thus, a programmable logic device having a programmable logic circuit to select any one of several different logic drivers is provided. One skilled in the art will appreciate that the present invention can be practiced by other than the described embodiment, which is presented for purposes of illustration and not of limitation. For example, while the detailed schematics of the input buffers and output buffer show specific configurations of n-channel and p-channel MOSFETs, the principles of the present invention may be practiced using n-channel MOSFETs for p-channel MOSFETs and vice versa with a slight adjustment of signal inputs and outputs. Thus, the present invention is limited only by the claims which follow.

Claims (73)

1. A programmable input/output device for coupling a programmable logic device (PLD) to external circuitry, the input/output device comprising:
an input/output pad;
an output buffer adapted to receive output signals from the PLD, the output buffer modifying the output signals and being coupled to the input/output pad;
an input buffer adapted to receive input signals from the input/output pad and from the output buffer, the input buffer modifying the input signals and being coupled to the PLD to provide the PLD with the modified input signals; and
a plurality of logic standards; and
a plurality of programmable logic elements that select a logic standard from said plurality of logic standards with which the output buffer and the input buffer respectively modify the output and input signals.
2. The programmable input/output device of claim 1, wherein the plurality of programmable logic elements comprises:
a first programmable logic element coupled to the output buffer and the input buffer; and
a second programmable logic element coupled to the output buffer.
3. The programmable input/output device of claim 2, wherein the plurality of programmable logic elements are SRAM elements.
4. The programmable input/output device of claim 2, wherein the plurality of programmable logic elements are EPROM elements.
5. The programmable input/output device of claim 2, wherein the plurality of programmable logic elements are EEPROM elements.
6. The programmable input/output device of claim 2, wherein the plurality of programmable logic elements are antifuse elements.
7. The programmable input/output device of claim 2, wherein the plurality of programmable logic elements are elements from the group of SRAM, EPROM, EEPROM, and antifuse elements.
8. The programmable input/output device of claim 1, wherein the input/output device provides signal modification in accordance with TTL standards.
9. The programmable input/output device of claim 1, wherein the input/output device provides signal modification in accordance with CMOS logic standards.
10. The programmable input/output device of claim 1, wherein the input/output device provides signal modification in accordance with open drain logic standards.
11. The programmable input/output device of claim 1, wherein the input/output device provides signal modification in accordance with GTL standards.
12. The programmable input/output device of claim 1, wherein the input/output device provides signal modification in accordance with HSTL standards.
13. The programmable input/output device of claim 12, wherein the HSTL standard is terminated.
14. The programmable input/output device of claim 12, wherein the HSTL standard is non-terminated.
15. The programmable input/output device of claim 1, wherein the input buffer comprises:
a differential amplifier circuit being adapted to receive the input signals;
control circuitry that controls the modification of the input signals in accordance with the standard selected by the plurality of programmable logic elements; and
inversion circuitry that provides the modified input signals to the PLD.
16. The programmable input/output device of claim 15, wherein the differential amplifier circuit and the control circuit operate in conjunction with each other to provide the modifications of the input signals in accordance with a plurality of logic standards.
17. The programmable input/output device of claim 15, wherein the differential amplifier circuit and the control circuit operate independent of each other such that the modifications of the input signals are performed by the control circuitry in accordance with a first logic standard and by the differential amplifier circuit in accordance with a second logic standard, the first and second logic standards being selected by the plurality of programmable logic elements.
18. The programmable input/output device of claim 17, wherein the control circuitry is optimized for speed to provide modification in accordance with the first logic standard at increased speed.
19. The programmable input/output device of claim 17, wherein the differential amplifier circuit is optimized for speed to provide modification in accordance with the second logic standard at increased speed.
20. The programmable input/output device for coupling a programmable logic device (PLD) to external circuitry, the input/output device comprising:
means for coupling the input/output device to the external circuitry;
means for receiving output signals from the PLD and for modifying the output signals in accordance with a selected logic standard, the means for receiving providing the modified output signals to the means for coupling;
means for modifying input signals received from the means for receiving and the means for coupling in accordance with the selected logic standard, the means for modifying providing the modified input signals to the PLD; and means for selecting the selected logic standard from a plurality of logic standards.
21. The programmable input/output device of claim 20, wherein the means for receiving comprises:
circuitry for modifying the output signals to an appropriate high voltage level in accordance with the selected logic standard if the output signals are logic high signals; and
circuitry for modifying the output signals to an appropriate low voltage level in accordance with the selected logic standard if the output signals are logic low signals.
22. The programmable input/output device of claim 21, wherein the selected logic standard is TTL, the appropriate high signal is about 2.4 volts, and the appropriate low signal is about 0.4 volts.
23. The programmable input/output device of claim 21, wherein the selected logic standard is GTL, the appropriate high signal is about 1.2 volts, and the appropriate low signal is about 0.8 volts.
24. The programmable input/output device of claim 21, wherein the selected logic standard is CMOS, the appropriate high signal is about 3.5 volts, and the appropriate low signal is about 0 volts.
25. The programmable input/output device of claim 21, wherein the selected logic standard is open drain, the appropriate high signal is determined by external circuitry, and the appropriate low signal is less than about 0.4 volts.
26. The programmable input/output device of claim 21, wherein the selected logic standard is terminated HSTL, the appropriate high signal is determined by external circuitry, and the appropriate low signal is about equal to the appropriate high signal minus 0.1 volts.
27. The programmable input/output device of claim 21, wherein the selected logic standard is non-terminated HSTL, the appropriate high signal is about equal to a predetermined reference voltage plus 0.1 volts, and the appropriate low signal is about equal to the predetermined reference voltage minus 0.1 volts.
28. The programmable input/output device of claim 20, wherein the means for modifying comprises:
a first conversion circuit for converting the input signals in accordance with a first logic standard; and
a second conversion circuit for converting the input signals in accordance with a second logic standard.
29. The programmable input/output device of claim 28, wherein the first and second conversion circuits are merged into a single conversion circuit.
30. The programmable input/output device of claim 28, wherein the first and second conversion circuits are substantially independent of each other such that they may be independently optimized for operational speed improvements.
31. A method for providing a programmable logic device (PLD) with the capability of being selectively coupled to external circuitry which operates in accordance with a selected one of a plurality of logic standards, the methods comprising the steps of:
programmably selecting the selected one of a plurality of logic standards;
modifying output signals from the PLD in accordance with the selected logic standard such that high PLD signals correspond to high signals of the selected standard and low PLD signals correspond to low signal of the selected standard;
receiving input signals from an external interface; and
modifying the input signals in accordance with the selected logic standard such that high input signals are converted to high PLD signals and low input signals are converted to low PLD signals.
32. The method of claim 31, wherein the step of programmably selecting the selected one of a plurality of logic standards selects a logic standard from the group including: TTL, CMOS logic, open drain logic, GTL, terminated HSTL, and non-terminated HSTL.
33. The method of claim 31, wherein the step of programmably selecting comprises the step of applying a plurality of Select Bits to a plurality of programmable elements.
34. The method of claim 33, wherein the programmable elements are from the group including: SRAM, EPROM, EEPROM, and anti-fuse elements.
35. A programmable input/output device for coupling a programmable logic device (PLD) to external circuitry, the input/output device comprising:
an input/output pad;
an output buffer adapted to receive output signals from the PLD, the output buffer modifying the output signals and being coupled to the input/output pad;
an input buffer adapted to receive a reference signal and input signals from the input/output pad and from the output buffer, the input buffer comparing the received input signals to the reference signal to produce a differential signal and coupling the differential signal to the PLD to provide the PLD with modified input signals; and
a plurality of programmable elements that select the standard with which the output buffer and the input buffer respectively modify the output and input signals.
36. The programmable input/output device of claim 35, wherein the plurality of programmable elements further comprise:
a first programmable element coupled to the output buffer and the input buffer; and
a second programmable element coupled to the output buffer.
37. The programmable input/output device of claim 36, wherein the plurality of programmable elements are elements selected from the group consisting of SRAM, EPROM, EEPROM, fuse and antifuse elements.
38. The programmable input/output device of claim 35, wherein the input/output device provides signal modification in accordance with logic standards selected from the group consisting of TTL, CMOS, GTL, and HSTL.
39. The programmable input/output device of claim 35, wherein the input buffer comprises:
a differential amplifier circuit being adapted to receive the input signals;
control circuitry that controls the modification of the input signals in accordance with the standard selected by the plurality of programmable elements; and
inversion circuitry that provides the modified input signals to the PLD.
40. The programmable input/output device of claim 39, wherein the differential amplifier circuit and the control circuit operate in conjunction with each other to provide the modifications of the input signals in accordance with a plurality of logic standards.
41. The programmable input/output device of claim 39, wherein the differential amplifier circuit and the input buffer operate independent of each other such that the modifications of the input signals are performed by the input buffer in accordance with a first logic standard and by the differential amplifier circuit in accordance with a second logic standard, the first and second logic standards being selected by the plurality of programmable elements.
42. The programmable input/output device of claim 41, wherein the input buffer is optimized for speed to provide modification in accordance with the first logic standard at increased speed.
43. The programmable input/output device of claim 41, wherein the differential amplifier circuit is optimized for speed to provide modification in accordance with the second logic standard at increased speed.
44. A programmable input/output device for coupling a programmable logic device (PLD) to external circuitry, the input/output device comprising:
means for coupling the input/output device to the external circuitry;
means for receiving output signals from the PLD and for modifying the output signals in accordance with a selected logic standard, the means for receiving providing the modified output signals to the means for coupling;
means for modifying input signals received from the means for receiving and the means for coupling in accordance with the selected logic standard, the means for modifying including a means for comparing the received input signals to a reference signal to produce a differential signal and for providing the modified input signals to the PLD; and
means for selecting the selected logic standard from a plurality of logic standards.
45. The programmable input/output device of claim 44, wherein the means for receiving comprises:
circuitry for modifying the output signals to an appropriate high voltage level in accordance with the selected logic standard if the output signals are logic high signals; and
circuitry for modifying the output signals to an appropriate low voltage level in accordance with the selected logic standard if the output signals are logic low signals.
46. The programmable input/output device of claim 44, wherein the means for modifying comprises:
a first conversion circuit for converting the input signals in accordance with a first logic standard; and
a second conversion circuit for converting the input signals in accordance with a second logic standard.
47. The programmable input/output device of claim 46, wherein the first and second conversion circuits are merged into a single conversion circuit.
48. The programmable input/output device of claim 46, wherein the first and second conversion circuits are substantially independent of each other such that they may be independently optimized for operational speed improvements.
49. A method for providing a programmable logic device (PLD) with the capability of being selectively coupled to external circuitry that operates in accordance with a selected one of a plurality of logic standards, the method comprising:
programmably selecting the selected one of a plurality of logic standards;
modifying output signals from the PLD in accordance with the selected logic standard such that high PLD signals correspond to high signals of the selected standard and low PLD signals correspond to low signal of the selected standard;
receiving input signals from an external interface;
comparing the received input signals to a reference signal to produce a differential signal in accordance with the selected logic standard such that high input signals are converted to high PLD signals and low input signals are converted to low PLD signals.
50. The method of claim 49, wherein the programmably selecting further comprises selecting a logic standard selected from the group consisting of TTL, CMOS, open drain logic, GTL, terminated HSTL, and non-terminated HSTL.
51. The method of claim 49, wherein the programmably selecting further comprises applying a plurality of Select Bits to a plurality of programmable elements.
52. A programmable input/output device capable of operating at multiple logic standards comprising:
an input/output terminal;
a plurality of programmable elements; and
an input buffer having circuitry controlled by at least one of the plurality of programmable elements to select between a first logic standard and a second logic standard wherein the second logic standard is a differential logic standard.
53. The programmable input/output device of claim 52 wherein the differential logic standard is a standard selected from the group consisting of HSTL and GTL.
54. The programmable input/output device of claim 52 wherein the first logic standard is a standard selected from the group consisting of TTL or CMOS.
55. The programmable input/output device of claim 52 wherein the programmable elements are elements selected from the group consisting of SRAM, EPROM, EEPROM, and antifuse elements.
56. The programmable input/output device of claim 52 wherein the input buffer further comprises a differential amplifier circuit that is used for generating the differential logic standard.
57. The programmable input/output device of claim 52 wherein at least one programmable element is coupled to the input buffer.
58. The programmable input/output device of claim 52 further comprising an output buffer having circuitry controlled by at least one of the plurality of programmable elements to select between the first logic standard and the second logic standard.
59. The programmable input/output device of claim 58 wherein the second logic standard is a differential logic standard.
60. The programmable input/output device of claim 58 wherein at least one programmable element is coupled to the input buffer.
61. The programmable input/output device of claim 60 wherein the input buffer and the output buffer are controlled by the same programmable element.
62. A programmable input/output buffer capable of operating at multiple logic standards comprising:
an input/output terminal;
a plurality of programmable elements; and
an output buffer having circuitry controlled by at least one of the plurality of programmable elements to select between one logic standard and a differential logic standard.
63. The programmable input/output device of claim 62 wherein the differential logic standard is a standard selected from the group consisting of HSTL and GTL.
64. The programmable input/output device of claim 62 wherein the first logic standard is a standard selected from the group consisting of TTL and CMOS.
65. The programmable input/output device of claim 62 wherein the programmable elements are elements selected from the group consisting of SRAM, EPROM, EEPROM, and antifuse elements.
66. The programmable input/output device of claim 62 wherein at least one programmable element is coupled to the output buffer.
67. The programmable input/output device of claim 62 further comprising an input buffer having circuitry controlled by at least one of the plurality of programmable elements to select between the first logic standard and the second logic standard.
68. The programmable input/output device of claim 67 wherein the second logic standard is a differential logic standard.
69. The programmable input/output device of claim 67 wherein at least one programmable element is coupled to the output buffer.
70. The programmable input/output device of claim 69 wherein the input buffer and the output buffer are controlled by the same programmable element.
71. A programmable input/output device comprising:
an input/output terminal;
an input buffer and an output buffer coupled to the input/output terminal, each of which includes means for modifying signals applied to the input/output terminal to a selected one of multiple logic standards wherein at least one of the multiple logic standards is a differential logic standard; and
a plurality of programmable elements for selecting the logic standard at which the input and output buffers operate.
72. The programmable input/output device of claim 71 wherein the input buffer and the output buffer further comprise means for modifying signals applied to the input/output terminal to a logic standard selected from the group consisting of TTL, CMOS, GTL and HSTL.
73. The input/output device of claim 71, wherein the input buffer and the output buffer share at least one programmable element.
US10/084,757 1995-10-16 2001-10-19 System for coupling programmable logic device to external circuitry which selects a logic standard and uses buffers to modify output and input signals accordingly Expired - Lifetime USRE40011E1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/084,757 USRE40011E1 (en) 1995-10-16 2001-10-19 System for coupling programmable logic device to external circuitry which selects a logic standard and uses buffers to modify output and input signals accordingly

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/543,649 US5970255A (en) 1995-10-16 1995-10-16 System for coupling programmable logic device to external circuitry which selects a logic standard and uses buffers to modify output and input signals accordingly
US10/084,757 USRE40011E1 (en) 1995-10-16 2001-10-19 System for coupling programmable logic device to external circuitry which selects a logic standard and uses buffers to modify output and input signals accordingly

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US08/543,649 Reissue US5970255A (en) 1995-10-16 1995-10-16 System for coupling programmable logic device to external circuitry which selects a logic standard and uses buffers to modify output and input signals accordingly

Publications (1)

Publication Number Publication Date
USRE40011E1 true USRE40011E1 (en) 2008-01-22

Family

ID=24168954

Family Applications (2)

Application Number Title Priority Date Filing Date
US08/543,649 Ceased US5970255A (en) 1995-10-16 1995-10-16 System for coupling programmable logic device to external circuitry which selects a logic standard and uses buffers to modify output and input signals accordingly
US10/084,757 Expired - Lifetime USRE40011E1 (en) 1995-10-16 2001-10-19 System for coupling programmable logic device to external circuitry which selects a logic standard and uses buffers to modify output and input signals accordingly

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US08/543,649 Ceased US5970255A (en) 1995-10-16 1995-10-16 System for coupling programmable logic device to external circuitry which selects a logic standard and uses buffers to modify output and input signals accordingly

Country Status (1)

Country Link
US (2) US5970255A (en)

Families Citing this family (95)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6825698B2 (en) * 2001-08-29 2004-11-30 Altera Corporation Programmable high speed I/O interface
US6239612B1 (en) 1997-08-20 2001-05-29 Altera Corporation Programmable I/O cells with multiple drivers
US6107825A (en) 1997-10-16 2000-08-22 Altera Corporation Input/output circuitry for programmable logic devices
US7581077B2 (en) * 1997-10-30 2009-08-25 Commvault Systems, Inc. Method and system for transferring data in a storage operation
US6418478B1 (en) * 1997-10-30 2002-07-09 Commvault Systems, Inc. Pipelined high speed data transfer mechanism
US6693678B1 (en) * 1997-12-18 2004-02-17 Thomson Licensing S.A. Data bus driver having first and second operating modes for coupling data to the bus at first and second rates
US7739381B2 (en) 1998-03-11 2010-06-15 Commvault Systems, Inc. System and method for providing encryption in storage operations in a storage network, such as for use by application service providers that provide data storage services
US6433579B1 (en) 1998-07-02 2002-08-13 Altera Corporation Programmable logic integrated circuit devices with differential signaling capabilities
US6346827B1 (en) 1998-09-09 2002-02-12 Altera Corporation Programmable logic device input/output circuit configurable as reference voltage input circuit
US6472903B1 (en) 1999-01-08 2002-10-29 Altera Corporation Programmable logic device input/output architecture with power bus segmentation for multiple I/O standards
US7035880B1 (en) 1999-07-14 2006-04-25 Commvault Systems, Inc. Modular backup and retrieval system used in conjunction with a storage area network
US7389311B1 (en) 1999-07-15 2008-06-17 Commvault Systems, Inc. Modular backup and retrieval system
US7395282B1 (en) 1999-07-15 2008-07-01 Commvault Systems, Inc. Hierarchical backup and retrieval system
US7003641B2 (en) 2000-01-31 2006-02-21 Commvault Systems, Inc. Logical view with granular access to exchange data managed by a modular data and storage management system
US7155481B2 (en) 2000-01-31 2006-12-26 Commvault Systems, Inc. Email attachment management in a computer system
US6658436B2 (en) 2000-01-31 2003-12-02 Commvault Systems, Inc. Logical view and access to data managed by a modular data and storage management system
US6292010B1 (en) 2000-02-02 2001-09-18 Teradyne, Inc. Dynamic pin driver combining high voltage mode and high speed mode
US7200769B1 (en) 2001-08-29 2007-04-03 Altera Corporation Self-compensating delay chain for multiple-date-rate interfaces
US6603329B1 (en) 2001-08-29 2003-08-05 Altera Corporation Systems and methods for on-chip impedance termination
US6798237B1 (en) 2001-08-29 2004-09-28 Altera Corporation On-chip impedance matching circuit
US7167023B1 (en) 2001-08-29 2007-01-23 Altera Corporation Multiple data rate interface architecture
US6946872B1 (en) 2003-07-18 2005-09-20 Altera Corporation Multiple data rate interface architecture
US6806733B1 (en) 2001-08-29 2004-10-19 Altera Corporation Multiple data rate interface architecture
US6911860B1 (en) 2001-11-09 2005-06-28 Altera Corporation On/off reference voltage switch for multiple I/O standards
US6812732B1 (en) 2001-12-04 2004-11-02 Altera Corporation Programmable parallel on-chip parallel termination impedance and impedance matching
US6836144B1 (en) 2001-12-10 2004-12-28 Altera Corporation Programmable series on-chip termination impedance and impedance matching
US6812734B1 (en) 2001-12-11 2004-11-02 Altera Corporation Programmable termination with DC voltage level control
US7109744B1 (en) 2001-12-11 2006-09-19 Altera Corporation Programmable termination with DC voltage level control
US8370542B2 (en) 2002-09-16 2013-02-05 Commvault Systems, Inc. Combined stream auxiliary copy system and method
US6831480B1 (en) 2003-01-07 2004-12-14 Altera Corporation Programmable logic device multispeed I/O circuitry
US7307446B1 (en) 2003-01-07 2007-12-11 Altera Corporation Integrated circuit output driver circuitry with programmable preemphasis
US6940302B1 (en) 2003-01-07 2005-09-06 Altera Corporation Integrated circuit output driver circuitry with programmable preemphasis
US7454569B2 (en) 2003-06-25 2008-11-18 Commvault Systems, Inc. Hierarchical system and method for performing storage operations in a computer network
US6888369B1 (en) 2003-07-17 2005-05-03 Altera Corporation Programmable on-chip differential termination impedance
US6888370B1 (en) 2003-08-20 2005-05-03 Altera Corporation Dynamically adjustable termination impedance control techniques
US6859064B1 (en) 2003-08-20 2005-02-22 Altera Corporation Techniques for reducing leakage current in on-chip impedance termination circuits
US7440982B2 (en) 2003-11-13 2008-10-21 Commvault Systems, Inc. System and method for stored data archive verification
WO2005048085A2 (en) 2003-11-13 2005-05-26 Commvault Systems, Inc. System and method for performing an image level snapshot and for restoring partial volume data
US7613748B2 (en) 2003-11-13 2009-11-03 Commvault Systems, Inc. Stored data reverification management system and method
WO2005050381A2 (en) 2003-11-13 2005-06-02 Commvault Systems, Inc. Systems and methods for performing storage operations using network attached storage
WO2005065084A2 (en) 2003-11-13 2005-07-21 Commvault Systems, Inc. System and method for providing encryption in pipelined storage operations in a storage network
US7126399B1 (en) 2004-05-27 2006-10-24 Altera Corporation Memory interface phase-shift circuitry to support multiple frequency ranges
US7123051B1 (en) 2004-06-21 2006-10-17 Altera Corporation Soft core control of dedicated memory interface hardware in a programmable logic device
US7030675B1 (en) 2004-08-31 2006-04-18 Altera Corporation Apparatus and method for controlling a delay chain
US7598779B1 (en) 2004-10-08 2009-10-06 Altera Corporation Dual-mode LVDS/CML transmitter methods and apparatus
WO2006052872A2 (en) 2004-11-05 2006-05-18 Commvault Systems, Inc. System and method to support single instance storage operations
US7221193B1 (en) 2005-01-20 2007-05-22 Altera Corporation On-chip termination with calibrated driver strength
US7218155B1 (en) 2005-01-20 2007-05-15 Altera Corporation Techniques for controlling on-chip termination resistance using voltage range detection
US7365570B2 (en) * 2005-05-25 2008-04-29 Micron Technology, Inc. Pseudo-differential output driver with high immunity to noise and jitter
US7265587B1 (en) 2005-07-26 2007-09-04 Altera Corporation LVDS output buffer pre-emphasis methods and apparatus
US7679397B1 (en) 2005-08-05 2010-03-16 Altera Corporation Techniques for precision biasing output driver for a calibrated on-chip termination circuit
US7543125B2 (en) 2005-12-19 2009-06-02 Commvault Systems, Inc. System and method for performing time-flexible calendric storage operations
US7617262B2 (en) 2005-12-19 2009-11-10 Commvault Systems, Inc. Systems and methods for monitoring application data in a data replication system
US7606844B2 (en) 2005-12-19 2009-10-20 Commvault Systems, Inc. System and method for performing replication copy storage operations
US7620710B2 (en) * 2005-12-19 2009-11-17 Commvault Systems, Inc. System and method for performing multi-path storage operations
US7962709B2 (en) 2005-12-19 2011-06-14 Commvault Systems, Inc. Network redirector systems and methods for performing data replication
EP1974296B8 (en) 2005-12-19 2016-09-21 Commvault Systems, Inc. Systems and methods for performing data replication
US8655850B2 (en) 2005-12-19 2014-02-18 Commvault Systems, Inc. Systems and methods for resynchronizing information
US7636743B2 (en) 2005-12-19 2009-12-22 Commvault Systems, Inc. Pathname translation in a data replication system
US7651593B2 (en) 2005-12-19 2010-01-26 Commvault Systems, Inc. Systems and methods for performing data replication
US8726242B2 (en) 2006-07-27 2014-05-13 Commvault Systems, Inc. Systems and methods for continuous data replication
US8655914B2 (en) 2006-10-17 2014-02-18 Commvault Systems, Inc. System and method for storage operation access security
US7953162B2 (en) * 2006-11-17 2011-05-31 Intersil Americas Inc. Use of differential pair as single-ended data paths to transport low speed data
US8312323B2 (en) 2006-12-22 2012-11-13 Commvault Systems, Inc. Systems and methods for remote monitoring in a computer network and reporting a failed migration operation without accessing the data being moved
US8290808B2 (en) 2007-03-09 2012-10-16 Commvault Systems, Inc. System and method for automating customer-validated statement of work for a data storage environment
US7733118B2 (en) * 2008-03-06 2010-06-08 Micron Technology, Inc. Devices and methods for driving a signal off an integrated circuit
US8204859B2 (en) 2008-12-10 2012-06-19 Commvault Systems, Inc. Systems and methods for managing replicated database data
US9495382B2 (en) 2008-12-10 2016-11-15 Commvault Systems, Inc. Systems and methods for performing discrete data replication
US8434131B2 (en) 2009-03-20 2013-04-30 Commvault Systems, Inc. Managing connections in a data storage system
US8504517B2 (en) 2010-03-29 2013-08-06 Commvault Systems, Inc. Systems and methods for selective data replication
US8352422B2 (en) 2010-03-30 2013-01-08 Commvault Systems, Inc. Data restore systems and methods in a replication environment
US8725698B2 (en) 2010-03-30 2014-05-13 Commvault Systems, Inc. Stub file prioritization in a data replication system
US8504515B2 (en) 2010-03-30 2013-08-06 Commvault Systems, Inc. Stubbing systems and methods in a data replication environment
US8589347B2 (en) 2010-05-28 2013-11-19 Commvault Systems, Inc. Systems and methods for performing data replication
US9021198B1 (en) 2011-01-20 2015-04-28 Commvault Systems, Inc. System and method for sharing SAN storage
US9471578B2 (en) 2012-03-07 2016-10-18 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9298715B2 (en) 2012-03-07 2016-03-29 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9342537B2 (en) 2012-04-23 2016-05-17 Commvault Systems, Inc. Integrated snapshot interface for a data storage system
US9262435B2 (en) 2013-01-11 2016-02-16 Commvault Systems, Inc. Location-based data synchronization management
US9886346B2 (en) 2013-01-11 2018-02-06 Commvault Systems, Inc. Single snapshot for multiple agents
US9639426B2 (en) 2014-01-24 2017-05-02 Commvault Systems, Inc. Single snapshot for multiple applications
US9495251B2 (en) 2014-01-24 2016-11-15 Commvault Systems, Inc. Snapshot readiness checking and reporting
US9753812B2 (en) 2014-01-24 2017-09-05 Commvault Systems, Inc. Generating mapping information for single snapshot for multiple applications
US9632874B2 (en) 2014-01-24 2017-04-25 Commvault Systems, Inc. Database application backup in single snapshot for multiple applications
US9774672B2 (en) 2014-09-03 2017-09-26 Commvault Systems, Inc. Consolidated processing of storage-array commands by a snapshot-control media agent
US10042716B2 (en) 2014-09-03 2018-08-07 Commvault Systems, Inc. Consolidated processing of storage-array commands using a forwarder media agent in conjunction with a snapshot-control media agent
US9648105B2 (en) 2014-11-14 2017-05-09 Commvault Systems, Inc. Unified snapshot storage management, using an enhanced storage manager and enhanced media agents
US9448731B2 (en) 2014-11-14 2016-09-20 Commvault Systems, Inc. Unified snapshot storage management
US9904481B2 (en) 2015-01-23 2018-02-27 Commvault Systems, Inc. Scalable auxiliary copy processing in a storage management system using media agent resources
US9898213B2 (en) 2015-01-23 2018-02-20 Commvault Systems, Inc. Scalable auxiliary copy processing using media agent resources
US10503753B2 (en) 2016-03-10 2019-12-10 Commvault Systems, Inc. Snapshot replication operations based on incremental block change tracking
US11010261B2 (en) 2017-03-31 2021-05-18 Commvault Systems, Inc. Dynamically allocating streams during restoration of data
US10732885B2 (en) 2018-02-14 2020-08-04 Commvault Systems, Inc. Block-level live browsing and private writable snapshots using an ISCSI server
US11042318B2 (en) 2019-07-29 2021-06-22 Commvault Systems, Inc. Block-level data replication
US11809285B2 (en) 2022-02-09 2023-11-07 Commvault Systems, Inc. Protecting a management database of a data storage management system to meet a recovery point objective (RPO)

Citations (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4032800A (en) 1974-04-08 1977-06-28 Siemens Aktiengesellschaft Logic level conversion system
US4472647A (en) 1982-08-20 1984-09-18 Motorola, Inc. Circuit for interfacing with both TTL and CMOS voltage levels
US4527079A (en) 1983-11-01 1985-07-02 Advanced Micro Devices, Inc. Integrated circuit device accepting inputs and providing outputs at the levels of different logic families
US4609986A (en) 1984-06-14 1986-09-02 Altera Corporation Programmable logic array device using EPROM technology
US4617479A (en) 1984-05-03 1986-10-14 Altera Corporation Programmable logic array device using EPROM technology
US4625129A (en) 1982-09-30 1986-11-25 Fujitsu Limited Electronic circuit device having a power supply level switching circuit
US4677318A (en) 1985-04-12 1987-06-30 Altera Corporation Programmable logic storage element for programmable logic devices
US4713792A (en) 1985-06-06 1987-12-15 Altera Corporation Programmable macrocell using eprom or eeprom transistors for architecture control in programmable logic circuits
US4774421A (en) 1984-05-03 1988-09-27 Altera Corporation Programmable logic array device using EPROM technology
US4783607A (en) 1986-11-05 1988-11-08 Xilinx, Inc. TTL/CMOS compatible input buffer with Schmitt trigger
US4791312A (en) 1987-06-08 1988-12-13 Grumman Aerospace Corporation Programmable level shifting interface device
US4797583A (en) 1983-12-20 1989-01-10 Hitachi, Ltd. Level converting circuit for converting voltage levels, including a current amplifying arrangement
US4820937A (en) 1985-09-19 1989-04-11 Xilinx, Incorporated TTL/CMOS compatible input buffer
US4871930A (en) 1988-05-05 1989-10-03 Altera Corporation Programmable logic device with array blocks connected via programmable interconnect
JPH01274512A (en) 1988-04-27 1989-11-02 Hitachi Ltd Semiconductor logic device
US4879481A (en) 1988-09-02 1989-11-07 Cypress Semiconductor Corporation Dual I/O macrocell for high speed synchronous state machine
JPH0213124A (en) 1988-06-30 1990-01-17 Kawasaki Steel Corp Programmable logic element
US4899067A (en) 1988-07-22 1990-02-06 Altera Corporation Programmable logic devices with spare circuits for use in replacing defective circuits
EP0358501A2 (en) 1988-09-08 1990-03-14 Kawasaki Steel Corporation Programmable input/output circuit
US4912342A (en) 1988-05-05 1990-03-27 Altera Corporation Programmable logic device with array blocks with programmable clocking
US4933575A (en) 1988-02-15 1990-06-12 Nec Corporation Electric circuit interchangeable between sequential and combination circuits
JPH02161820A (en) 1988-09-08 1990-06-21 Kawasaki Steel Corp Programmable input/output circuit and programmable logic element
US4970410A (en) 1988-04-08 1990-11-13 Fujitsu Limited Semiconductor integrated circuit device having improved input/output interface circuit
US4972470A (en) 1987-08-06 1990-11-20 Steven Farago Programmable connector
US4975602A (en) 1990-02-23 1990-12-04 The United States Of America As Represented By The Secretary Of The Navy Logic level data conversion system
US4987578A (en) 1988-10-07 1991-01-22 Advanced Micro Devices, Inc. Mask programmable bus control gate array
US4994691A (en) 1990-04-16 1991-02-19 Advanced Micro Devices, Inc. TTL-to-CML translator circuit
US4999529A (en) 1989-06-30 1991-03-12 At&T Bell Laboratories Programmable logic level input buffer
US5003200A (en) 1988-09-20 1991-03-26 Kawasaki Steel Corporation Programmable logic device having programmable wiring for connecting adjacent programmable logic elements through a single switch station
US5023488A (en) 1990-03-30 1991-06-11 Xerox Corporation Drivers and receivers for interfacing VLSI CMOS circuits to transmission lines
US5028821A (en) 1990-03-01 1991-07-02 Plus Logic, Inc. Programmable logic device with programmable inverters at input/output pads
US5034634A (en) 1988-12-23 1991-07-23 Omron Tateisi Electronics Co. Multiple level programmable logic integrated circuit
US5101122A (en) 1990-02-06 1992-03-31 Mitsubishi Denki Kabushiki Kaisha Programmable logic device
US5121006A (en) 1991-04-22 1992-06-09 Altera Corporation Registered logic macrocell with product term allocation and adjacent product term stealing
US5121359A (en) 1989-09-29 1992-06-09 Sgs-Thomson Microelectronics, Inc. Configuration memory for programmable logic device
US5132573A (en) 1989-11-27 1992-07-21 Hitachi, Ltd. Semiconductor gate array device compatible with ecl signals and/or ttl signals
JPH04223617A (en) 1990-12-25 1992-08-13 Ricoh Co Ltd Interface for semiconductor integrated circuit device
US5151619A (en) 1990-10-11 1992-09-29 International Business Machines Corporation Cmos off chip driver circuit
EP0544461A2 (en) 1991-11-25 1993-06-02 AT&T Corp. Multiple voltage supplies for field programmable gate arrays and the like
US5220214A (en) 1991-04-22 1993-06-15 Altera Corporation Registered logic macrocell with product term allocation and adjacent product term stealing
US5235219A (en) 1992-04-01 1993-08-10 Gte Laboratories Incorporated Electrical circuitry with threshold control
US5243623A (en) * 1990-09-25 1993-09-07 National Semiconductor Corporation Switchable multi-mode transceiver interface device
US5260611A (en) 1991-09-03 1993-11-09 Altera Corporation Programmable logic array having local and long distance conductors
US5260610A (en) 1991-09-03 1993-11-09 Altera Corporation Programmable logic element interconnections for programmable logic array integrated circuits
USRE34444E (en) 1988-01-13 1993-11-16 Xilinx, Inc. Programmable logic device
US5282271A (en) 1991-10-30 1994-01-25 I-Cube Design Systems, Inc. I/O buffering system to a programmable switching apparatus
US5300835A (en) 1993-02-10 1994-04-05 Cirrus Logic, Inc. CMOS low power mixed voltage bidirectional I/O buffer
US5311080A (en) 1993-03-26 1994-05-10 At&T Bell Laboratories Field programmable gate array with direct input/output connection
US5317210A (en) 1993-02-23 1994-05-31 Altera Corporation I/O cell for programmable logic device providing latched, unlatched, and fast inputs
US5331220A (en) * 1993-02-12 1994-07-19 Xilinx, Inc. Soft wakeup output buffer
US5332935A (en) 1993-04-12 1994-07-26 Sierra Semiconductor ECL and TTL to CMOS logic converter
EP0608515A1 (en) 1993-01-29 1994-08-03 Motorola, Inc. Programmable drive output buffer
EP0616431A1 (en) 1993-03-19 1994-09-21 Advanced Micro Devices, Inc. Input buffer utilizing a cascode
US5350954A (en) 1993-03-29 1994-09-27 Altera Corporation Macrocell with flexible product term allocation
US5371422A (en) 1991-09-03 1994-12-06 Altera Corporation Programmable logic device having multiplexers and demultiplexers randomly connected to global conductors for interconnections between logic elements
US5374858A (en) 1991-10-10 1994-12-20 Texas Instruments Deutschland Gmbh Bus driver circuit
US5412599A (en) 1991-09-26 1995-05-02 Sgs-Thomson Microelectronics, S.R.L. Null consumption, nonvolatile, programmable switch
US5426744A (en) 1988-09-30 1995-06-20 Hitachi, Ltd. Single chip microprocessor for satisfying requirement specification of users
US5428305A (en) 1992-04-29 1995-06-27 Hughes Aircraft Company Differential logic level translator circuit with dual output logic levels selectable by power connector options
US5428800A (en) 1991-10-30 1995-06-27 I-Cube, Inc. Input/output (I/O) bidirectional buffer for interfacing I/O ports of a field programmable interconnection device with array ports of a cross-point switch
US5483178A (en) 1993-03-29 1996-01-09 Altera Corporation Programmable logic device with logic block outputs coupled to adjacent logic block output multiplexers
US5534794A (en) 1994-12-01 1996-07-09 Analog Devices, Inc. Selectable logic output stage
US5534798A (en) 1991-06-21 1996-07-09 Crosspoint Solutions, Inc. Multiplexer with level shift capabilities
US5581199A (en) * 1995-01-04 1996-12-03 Xilinx, Inc. Interconnect architecture for field programmable gate array using variable length conductors
US5589783A (en) 1994-07-29 1996-12-31 Sgs-Thomson Microelectronics, Inc. Variable input threshold adjustment
US5590305A (en) 1994-03-28 1996-12-31 Altera Corporation Programming circuits and techniques for programming logic
US5600267A (en) 1994-06-24 1997-02-04 Cypress Semiconductor Corporation Apparatus for a programmable CML to CMOS translator for power/speed adjustment
US5612637A (en) 1995-05-26 1997-03-18 National Semiconductor Corporation Supply and interface configurable input/output buffer
EP0426283B1 (en) 1989-10-31 1997-12-29 STMicroelectronics, Inc. Programmable logic device with multi-function input pin
US5732407A (en) 1995-12-11 1998-03-24 Hewlett-Packard Co. Configurable random access memory for programmable logic devices

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US34444A (en) * 1862-02-18 Improvement in pumps for deep wells

Patent Citations (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4032800A (en) 1974-04-08 1977-06-28 Siemens Aktiengesellschaft Logic level conversion system
US4472647A (en) 1982-08-20 1984-09-18 Motorola, Inc. Circuit for interfacing with both TTL and CMOS voltage levels
US4625129A (en) 1982-09-30 1986-11-25 Fujitsu Limited Electronic circuit device having a power supply level switching circuit
US4527079A (en) 1983-11-01 1985-07-02 Advanced Micro Devices, Inc. Integrated circuit device accepting inputs and providing outputs at the levels of different logic families
US4797583A (en) 1983-12-20 1989-01-10 Hitachi, Ltd. Level converting circuit for converting voltage levels, including a current amplifying arrangement
US4617479A (en) 1984-05-03 1986-10-14 Altera Corporation Programmable logic array device using EPROM technology
US4617479B1 (en) 1984-05-03 1993-09-21 Altera Semiconductor Corp. Programmable logic array device using eprom technology
US4774421A (en) 1984-05-03 1988-09-27 Altera Corporation Programmable logic array device using EPROM technology
US4609986A (en) 1984-06-14 1986-09-02 Altera Corporation Programmable logic array device using EPROM technology
US4677318A (en) 1985-04-12 1987-06-30 Altera Corporation Programmable logic storage element for programmable logic devices
US4713792A (en) 1985-06-06 1987-12-15 Altera Corporation Programmable macrocell using eprom or eeprom transistors for architecture control in programmable logic circuits
US4820937A (en) 1985-09-19 1989-04-11 Xilinx, Incorporated TTL/CMOS compatible input buffer
USRE34808E (en) 1986-11-05 1994-12-20 Xilinx, Inc. TTL/CMOS compatible input buffer with Schmitt trigger
US4783607A (en) 1986-11-05 1988-11-08 Xilinx, Inc. TTL/CMOS compatible input buffer with Schmitt trigger
US4791312A (en) 1987-06-08 1988-12-13 Grumman Aerospace Corporation Programmable level shifting interface device
US4972470A (en) 1987-08-06 1990-11-20 Steven Farago Programmable connector
USRE34444E (en) 1988-01-13 1993-11-16 Xilinx, Inc. Programmable logic device
US4933575B1 (en) 1988-02-15 1992-07-21 Nippon Electric Co
US4933575A (en) 1988-02-15 1990-06-12 Nec Corporation Electric circuit interchangeable between sequential and combination circuits
US4970410A (en) 1988-04-08 1990-11-13 Fujitsu Limited Semiconductor integrated circuit device having improved input/output interface circuit
JPH01274512A (en) 1988-04-27 1989-11-02 Hitachi Ltd Semiconductor logic device
US4871930A (en) 1988-05-05 1989-10-03 Altera Corporation Programmable logic device with array blocks connected via programmable interconnect
US4912342A (en) 1988-05-05 1990-03-27 Altera Corporation Programmable logic device with array blocks with programmable clocking
JPH0213124A (en) 1988-06-30 1990-01-17 Kawasaki Steel Corp Programmable logic element
US4899067A (en) 1988-07-22 1990-02-06 Altera Corporation Programmable logic devices with spare circuits for use in replacing defective circuits
US4879481A (en) 1988-09-02 1989-11-07 Cypress Semiconductor Corporation Dual I/O macrocell for high speed synchronous state machine
US4987319A (en) 1988-09-08 1991-01-22 Kawasaki Steel Corporation Programmable input/output circuit and programmable logic device
JPH02161820A (en) 1988-09-08 1990-06-21 Kawasaki Steel Corp Programmable input/output circuit and programmable logic element
EP0358501A2 (en) 1988-09-08 1990-03-14 Kawasaki Steel Corporation Programmable input/output circuit
US5003200A (en) 1988-09-20 1991-03-26 Kawasaki Steel Corporation Programmable logic device having programmable wiring for connecting adjacent programmable logic elements through a single switch station
US5426744A (en) 1988-09-30 1995-06-20 Hitachi, Ltd. Single chip microprocessor for satisfying requirement specification of users
US4987578A (en) 1988-10-07 1991-01-22 Advanced Micro Devices, Inc. Mask programmable bus control gate array
US5034634A (en) 1988-12-23 1991-07-23 Omron Tateisi Electronics Co. Multiple level programmable logic integrated circuit
US4999529A (en) 1989-06-30 1991-03-12 At&T Bell Laboratories Programmable logic level input buffer
US5121359A (en) 1989-09-29 1992-06-09 Sgs-Thomson Microelectronics, Inc. Configuration memory for programmable logic device
EP0426283B1 (en) 1989-10-31 1997-12-29 STMicroelectronics, Inc. Programmable logic device with multi-function input pin
US5132573A (en) 1989-11-27 1992-07-21 Hitachi, Ltd. Semiconductor gate array device compatible with ecl signals and/or ttl signals
US5101122A (en) 1990-02-06 1992-03-31 Mitsubishi Denki Kabushiki Kaisha Programmable logic device
US4975602A (en) 1990-02-23 1990-12-04 The United States Of America As Represented By The Secretary Of The Navy Logic level data conversion system
US5028821A (en) 1990-03-01 1991-07-02 Plus Logic, Inc. Programmable logic device with programmable inverters at input/output pads
US5023488A (en) 1990-03-30 1991-06-11 Xerox Corporation Drivers and receivers for interfacing VLSI CMOS circuits to transmission lines
US4994691A (en) 1990-04-16 1991-02-19 Advanced Micro Devices, Inc. TTL-to-CML translator circuit
US5243623A (en) * 1990-09-25 1993-09-07 National Semiconductor Corporation Switchable multi-mode transceiver interface device
US5151619A (en) 1990-10-11 1992-09-29 International Business Machines Corporation Cmos off chip driver circuit
JPH04223617A (en) 1990-12-25 1992-08-13 Ricoh Co Ltd Interface for semiconductor integrated circuit device
US5121006A (en) 1991-04-22 1992-06-09 Altera Corporation Registered logic macrocell with product term allocation and adjacent product term stealing
US5220214A (en) 1991-04-22 1993-06-15 Altera Corporation Registered logic macrocell with product term allocation and adjacent product term stealing
US5534798A (en) 1991-06-21 1996-07-09 Crosspoint Solutions, Inc. Multiplexer with level shift capabilities
US5260611A (en) 1991-09-03 1993-11-09 Altera Corporation Programmable logic array having local and long distance conductors
US5260610A (en) 1991-09-03 1993-11-09 Altera Corporation Programmable logic element interconnections for programmable logic array integrated circuits
US5371422A (en) 1991-09-03 1994-12-06 Altera Corporation Programmable logic device having multiplexers and demultiplexers randomly connected to global conductors for interconnections between logic elements
US5412599A (en) 1991-09-26 1995-05-02 Sgs-Thomson Microelectronics, S.R.L. Null consumption, nonvolatile, programmable switch
US5374858A (en) 1991-10-10 1994-12-20 Texas Instruments Deutschland Gmbh Bus driver circuit
US5282271A (en) 1991-10-30 1994-01-25 I-Cube Design Systems, Inc. I/O buffering system to a programmable switching apparatus
US5428800A (en) 1991-10-30 1995-06-27 I-Cube, Inc. Input/output (I/O) bidirectional buffer for interfacing I/O ports of a field programmable interconnection device with array ports of a cross-point switch
EP0544461A2 (en) 1991-11-25 1993-06-02 AT&T Corp. Multiple voltage supplies for field programmable gate arrays and the like
US5235219A (en) 1992-04-01 1993-08-10 Gte Laboratories Incorporated Electrical circuitry with threshold control
US5428305A (en) 1992-04-29 1995-06-27 Hughes Aircraft Company Differential logic level translator circuit with dual output logic levels selectable by power connector options
EP0608515A1 (en) 1993-01-29 1994-08-03 Motorola, Inc. Programmable drive output buffer
US5300835A (en) 1993-02-10 1994-04-05 Cirrus Logic, Inc. CMOS low power mixed voltage bidirectional I/O buffer
US5331220A (en) * 1993-02-12 1994-07-19 Xilinx, Inc. Soft wakeup output buffer
US5317210A (en) 1993-02-23 1994-05-31 Altera Corporation I/O cell for programmable logic device providing latched, unlatched, and fast inputs
EP0616431A1 (en) 1993-03-19 1994-09-21 Advanced Micro Devices, Inc. Input buffer utilizing a cascode
US5311080A (en) 1993-03-26 1994-05-10 At&T Bell Laboratories Field programmable gate array with direct input/output connection
US5483178A (en) 1993-03-29 1996-01-09 Altera Corporation Programmable logic device with logic block outputs coupled to adjacent logic block output multiplexers
US5350954A (en) 1993-03-29 1994-09-27 Altera Corporation Macrocell with flexible product term allocation
US5332935A (en) 1993-04-12 1994-07-26 Sierra Semiconductor ECL and TTL to CMOS logic converter
US5590305A (en) 1994-03-28 1996-12-31 Altera Corporation Programming circuits and techniques for programming logic
US5600267A (en) 1994-06-24 1997-02-04 Cypress Semiconductor Corporation Apparatus for a programmable CML to CMOS translator for power/speed adjustment
US5589783A (en) 1994-07-29 1996-12-31 Sgs-Thomson Microelectronics, Inc. Variable input threshold adjustment
US5534794A (en) 1994-12-01 1996-07-09 Analog Devices, Inc. Selectable logic output stage
US5581199A (en) * 1995-01-04 1996-12-03 Xilinx, Inc. Interconnect architecture for field programmable gate array using variable length conductors
US5612637A (en) 1995-05-26 1997-03-18 National Semiconductor Corporation Supply and interface configurable input/output buffer
US5732407A (en) 1995-12-11 1998-03-24 Hewlett-Packard Co. Configurable random access memory for programmable logic devices

Non-Patent Citations (21)

* Cited by examiner, † Cited by third party
Title
"IEEE 1194.1 BTL-Enabling Technology for High Speed Bus Applications", Jun. 1992, pp. 1-5.
A. L. Roberts, "Session XIX: High Density SRAMs", IEEE international Solid-State Circuits Conference, Feb. 1987, pp. 252-254.
Andrew Haines, "Field-programmable gate array with non-volatile configuration", Microprocessors and Microsystems, vol. 13, No. 5, Jun. 1989, pp. 305-312.
B. Prince, et al., "ICS going on a 3-V diet", IEEE Spectrum, May 1992, pp. 23-25.
B.A. Chappell, et al., "Fast CMOS ECL Receivers with 100mV Worst-Case Sensitivity" IEEE Journal of Solid-State Circuits, vol. 23, No. 1, Feb. 1988, pp. 59-66.
Bill Gunning, et al., "A CMOS Low-Voltage-Swing Transmission-Line Transceiver" IEEE International Solid-State Circuits Conference, 1992, pp. 58-59.
Carlo Guardiani, et al., "Applying a submicron mismatch model to practical IC design" IEEE 1994 Custom Integrated Circuits Conference, 1994, pp. 297-300.
F. Claude, "Cross-boundry PLDs", Semiconductor Currents, Jun. 1991, pp. 9-10.
H.I. Hanafi, et al., "Design and Characterization of CMOS Off-Chip Driver/Receiver with Reduced Power-Supply Disturbance", IEEE Journal of Solid-State Circuits, vol. 27, No. 5, May 1992, pp. 783-785.
J. Williams, "Mixing 3-V and 5-V Ics", IEEE Spectrum, Mar. 1993, pp. 40-42.
K. Knack, "Debunking High-Speed PCB Design Myths", ASIC & EDA, Jul. 1993, pp. 12-26.
M. Ueda, "A 3.3V ASIC for Mixed Voltage Applications with Shut Down Mode", IEEE Custom Integrated Circuits Conference, 1993, pp. 25.5.1-25.5.4.
M.J.M. Pelgrom, et al., "A 3/5 V Compatible I/O Buffer", IEEE Journal of Solid-State Circuits, vol. 30, No. 7, Jul. 1995, pp. 823-825.
M.J.M. Pelgrom, et al., "Matching Properties of MOS Transistor", IEEE Journal of Solid-State Circuits, vol. 24, No. 5, Oct. 1989, pp. 1433-1440.
R. C. Minnick, "A Survey of Microcellular Research," Journal of the Association for Computing Machinery, vol. 14, No. 2, pp. 203-241, Apr. 1967.
R. Senthinathan, "Application Specific CMOs Output Driver Circuit Design Techniques to Reduce Simultaneous Switching Noise", IEEE Journal of Solid-State Circuits Conference, vol. 28, No. 12, Dec. 1993, pp. 1383-1388.
R. Senthinathan, Simultaneious Switching Ground Noise Calculation for Packaged CMOs Devices, IEEE Journal of Solid-State Circuits Conference, vol. 26, No. 11, Nov. 1991, pp. 1724-1728.
Recent Developments in Switching Theory, A. Mukhopadhyay, ed., Academic Press, New York, 1971, Chapters VI and IX, pp. 229-254 and 369-422.
S. E. Wahlstrom, "Programmable Logic Arrays-Cheaper by the Millions," Electronics, Dec. 11, 1967, pp. 90-95.
S. H. Voldman, "ESD Protections in a Mixed Voltage Interface and Multi-Rail Disconnected Power Grid Environment in 0.50 and 0.25 Channel Length CMOS Technologies", EOS/ESD Symposium, pp. 3.4.1-3.4.10, 1994.
T.T. Vu., "A Gallium Arsenide SDFL Gate Array with On-chip RAM", IEEE Journal of Solid-State Circuits, vol. SC-19, No. 1, Feb. 1984, pp. 10-22.

Also Published As

Publication number Publication date
US5970255A (en) 1999-10-19

Similar Documents

Publication Publication Date Title
USRE40011E1 (en) System for coupling programmable logic device to external circuitry which selects a logic standard and uses buffers to modify output and input signals accordingly
US5013940A (en) Multi stage slew control for an IC output circuit
US6433579B1 (en) Programmable logic integrated circuit devices with differential signaling capabilities
US6400598B1 (en) Programmable logic integrated circuit devices with low voltage differential signaling capabilities
US5214320A (en) System and method for reducing ground bounce in integrated circuit output buffers
US6049245A (en) Power reduction circuit
US6218858B1 (en) Programmable input/output circuit for FPGA for use in TTL, GTL, GTLP, LVPECL and LVDS circuits
EP0260389B1 (en) Off-chip driver circuits
US7417454B1 (en) Low-swing interconnections for field programmable gate arrays
JPH08251001A (en) Output driving circuit and control of pull-up driving transistor
US5121000A (en) Edge-rate feedback CMOS output buffer circuits
US6184703B1 (en) Method and circuit for reducing output ground and power bounce noise
GB2289808A (en) CMOS driver with programmable switching speed
US6249146B1 (en) MOS output buffer with overvoltage protection circuitry
US5864244A (en) Tristate buffer circuit with transparent latching capability
US6559676B1 (en) Output buffer circuit
US5874837A (en) CMOS PECL driver with programmable current for varying voltage swings and termination types
US5495195A (en) Output buffer for a high density programmable logic device
JPH09121151A (en) Data output buffer
US4845388A (en) TTL-CMOS input buffer
JPH08279742A (en) Programmable current-driven output buffer,and driving-current-output selecting method for the output buffer
US6958626B2 (en) Off chip driver
US6529041B1 (en) System power control output circuit for programmable logic devices
KR100342210B1 (en) Transceiver driver with programmable edge rate control independent of fabrication process, supply voltage, and temperature
US6476638B1 (en) Input driver circuit with adjustable trip point for multiple input voltage standards

Legal Events

Date Code Title Description
FPAY Fee payment

Year of fee payment: 12