Low noise buffer

Abstract: The switching noise generated by a data output buffer is greatly reduced by "precharging" the output node to an intermediate voltage between a pre-existent logic level and a different logic level, during a system's "dead" time, with a precharging output current pulse having a constant time derivative during a first time interval and a constant time derivative of opposite sign during a second time interval, before performing the actual switching with an output current having a constant time derivative, during a third time interval. The partial charging or discharging of the load capacitance before actually performing a switching, with a controlled, triangular-shaped, output current pulse, avoids any abrupt change of output current and thus limits switching noise. The buffer of the invention is particularly useful in high-speed memory devices.

Description: The present invention relates to a buffer, capable of being integrated in CMOS technology, for driving a capacitive load at high-speed. A typical application of the circuit of the invention is the driving of the output nodes of an integrated circuit which must operate at a high switching speed, such as a memory or alike device. When an output buffer of an integrated circuit switches from one to another logic level the voltage on its output node in order to transfer a certain datum from an input node thereof to the external world, an inductive overvoltage is generated on the supply rails (V DD and V SS ) whose value is given by the product of a parasitic line inductance L (which is typically comprised between few nH and about 15nH) and the time derivative of the output current I OUT which is delivered by the buffer in order to quickly charge or discharge the capacitance of a load connected to its output node. This overvoltage (commonly referred to as switching noise) may reach such a level as to be prejudicial to a correct functioning of the integrated circuit of which the buffer is part. The problem is aggravated by the fact that in many cases, in the same integrated circuit, there are a plurality of output nodes having similar drive requirements in terms of speed and of capacitive load (e.g. the data outputs of a high-speed memory), where the occurrence of a simultaneous switching of the same logic polarity of a large number of output nodes is possible. The problem of reducing the switching noise without excessively penalising the switching speed has already been tackled in a number of proposals. For example, EP-A-0,284,357 filed on March 22, 1988 by S. Oshima et al; entitled "Semiconductor Integrated Circuit Having a Data Output Buffer Circuit", suggests to maintain "separate" the supply pads and metal lines of the "internal" portion of the integrated circuit from dedicated supply pads and metal lines for powering the buffers, in order to reduce the noise which is induced on the supply lines of the internal circuitry of the device upon the switchings of the output voltage. This in view of the fact that the greater contribution to the parasitic inductance of a supply line is due to the connecting wire (bonding wire) between pad and pin. This approach is certainly useful but insufficient. Another known technique for reducing the switching noise consists in introducing appropriate phase shifts between the switching of different output nodes, in order to avoid the summary of the effects of a simultaneous switching of the same sign of different nodes. Another similar technique consists in substituting a single pull-up and a single pull-down transistor of the buffer with a plurality of transistors in parallel, respectively, in addition to phase-shifting suitably the switchings of the plurality pull-up and/or pull-down transistors of a buffer (re: D.T. Wong et al: "An 11-ns 8K x 18 CMOS Static RAM with 0.5µm Devices", IEEE J. Solid-State Circuits , vol. SC-23, No. 5, Oct. 1988, pp. 1095-1103). These techniques have the drawback of depending strongly from the fabrication process and in any case they need an accurate experimental characterization. Several techniques are known which are base on precharging the output node to an intermediate voltage level, between V SS and V DD , before effecting the switching (re: T. Wada et al: "A 34-ns 1-Mbit CMOS SRAM Using Triple Polysilicon", IEEE J . Solid-State Circuits, vol. SC-22, No. 5, Oct. 1987, pp. 727-732, or H. Okuyama et al: "A 7-ns 32K x 8 CMOS SRAM", IEEE J. Solid-State Circuits, vol. SC-23, No. 5, Oct. 1988, pp.1054-1059). In this way, the voltage swing on the output node at the switching instant is somewhat reduced and so is also the time-variation of the current associated with the switching. This technique is useful when there is a dead-time between a "request" for a new datum and the actual reading thereof, as for example in memory circuits, as will be evident to a skilled technician. A similar technique is described in EP-A-0,271,331, filed on December 9, 1987 by S. Takayasu, entitled: "Semiconductor Integrated Circuit". According to this reference, a precharge of the output node is carried out only when the starting output level is a logic high ("1") and is performed for reaching an output voltage value capable of appearing as a logic high level if it is applied to the input of an electronic circuit (e.g. 2.5 V). Viceversa, when the starting output level is a logic low ("0") a precharge is not performed because such a situation is not considered critical. The document US-A-5,057,711 describes an output buffer capable of limiting the peak value of the output current by introducing a precharge phase before the actual switching phase. The document US-A-4,983,860 describes an output buffer employing a precharge technique for precharging the output node without an excessive power consumption. Among the objective there is also that of reducing the noise on the supply lines. The document EP-A-0 086 333 discloses a precharge circuit for digital circuitry for speeding-up the precharge process without producing excessively high current peaks. The document EP-A-5,028,818 discloses an output buffer implementing the technique of precharging the output node to reduce power consumption. Among the objectives there is also a reduction of the switching noise induced on the supply line. The precharge techniques recalled above and which are applicable to memories, alleviate the problem but do not eliminate it. Another technique having a wide application for reducing the switching noise consists in controlling the driving of the pull-up and pull-down output transistors in such a way that the output current I OUT that is delivered have a peak value of its time derivative (dI OUT /dt) as low as possible, compatibly with switching speed requirements. For example, it has been proposed to drive the gate electrodes of the pull-up and pull-down output transistors through a resistance connected in series to the gates or to the positive and/or to the negative supply rail of the logic circuits which drive said gate electrodes. This for the purpose of slowing down, through a pre-established time constant, the rise and drop of the driving voltage which is applied to said gate electrodes, thus making the variation of the output current which is delivered by the buffer less abrupt (re: EP-A-0,251,910, filed on June 25, 1987, by M. Naganuma, entitled: "CMOS Output Buffer Circuit,", or the article by K.L. Wang et al: "A 21-ns 32K x 8 CMOS Static RAM with a Selectively Pumped p-Well Array", IEEE J . Solid State Circuits , vol. SC-22, No. 5 Oct. 1987, pp. 704-711). Performing such a control of the driving voltages by means of active networks has also been proposed (re: W.C.H. Gubbels et al: "A 40-ns/100pF Low- Power Full-CMOS 256K (32K x 8) SRAM", IEEE J. Solid-State Circuits, vol. SC-22, No. 5, Oct. 1987, pp. 741-747; or S.T. Chu et al: "A 25-ns Low-Power Full-CMOS 1-Mbit (128.K x 8) SRAM", IEEE J. Solid-State Circuits, vol. SC-23, No. 5, Oct. 1988, pp. 1078-1084). In a prior European patent application, no. 91121952.5, filed on December 20 1991, by the same Applicant,of the instant application and wherein the inventors are designated as being: F. Maloberti, S. Portaluri and G. Torelli, an output buffer is described wherein the output pull-up and pull-down transistors are driven by use of purposely generated voltage ramps, in order to reduce the switching noise. The state of the art is such that there is room for further improving the performance of such output buffers in terms of minimising the overvoltages induced on the supply lines (switching noise), while simultaneously ensuring a high speed which, in the case of memories would permit attainment of extremely small access times. A remarkable progress toward this end is achieved by the present invention, the subject of which are an improved method and a circuit for driving a capacitve load with a low-switching noise at a high-speed Basically, the method of the invention consists in precharging the output node of a buffer to an intermediate level between a voltage pre-existing on the output node and a pre-established voltage, which in general terms may be a logic voltage representative of a certain datum, by an output current having a time derivative which is substantially constant and of a first sign during a first time interval, and a time derivative substantially constant and of a sign opposite to the preceding one, during a second time interval, and finally effecting a switching of the output node voltage in function of a certain logic signal which is applied to an input node of the buffer circuit by a current having a substantially constant time derivative, during a third time interval. Preferably, the time derivatives of the different output currents of the buffer during the three time intervals have an identical absolute value. The fact that the time derivatives have the same absolute value at least during said first and second time intervals, produces a waveform of the current delivered through the output node of the buffer which is substantially triangular (or more precisely having an isosceles triangle shape) during such a precharge phase. Of course, the condition of constancy, in terms of absolute value, of the time derivative of the output current is an ideal condition to which the behaviour of the real circuit tends. In practice, a "soft" or "filletted" shape of the waveform is obtained which substantially approaches said ideal condition. A fundamental requisite of the method of the invention is that the output current be controlled during a whole switching cycle, i.e.: during a precharge phase and during a subsequent switching phase of the output voltage, with a particular emphasis to the instant when the sign of the time derivative of the current during the precharge phase inverts itself, i.e.: at the instant when the output current from a rising phase passes to a decreasing phase. By the term "precharge", it is obviously intended to identify both a capacitance charging process as well as a capacitance discharging process, i.e.: a process for "prearranging" to a certain (intermediate) state of charge a capacitance. If such a control is not actuated and, for example, the precharge process is stopped abruptly when the output voltage reaches a certain preset intermediate value, a sharp drop of the output current (precharge current) could occur from which a switching noise peak which could also be extremely high, could ensue. Therefore, minimisation of the switching noise is satisfactorily achieved when the waveform of the output current will not present any other discontinuity beside the slope inversion point during the precharge phase. In practice this is obtained with a substantially triangular waveform of the precharge current. The circuit of the invention implements these essential conditions. Basically, the circuit of the invention comprises a first control block for an output pull-up branch (i.e. a transistor or a network equivalent thereto) and a second control block for an output pull-down branch (i.e. a transistor or a network equivalent thereto), which are driven by a first enable signal present on a first node of the circuit and a control signal. These two signals are applied to respective enable and control signal inputs of the two control blocks. At least a first inverter is functionally connected between an output node of the circuit and, through a first switch, to the control signal input of the first block. At least a second inverter, is functionally connected between the output node and, through a second switch, to the control signal input of the second block. At least a third inverter, capable of driving, through a third switch said first node of the circuit during a precharge phase has an input which is capacitively coupled to a ground potential and connected through a fourth switch to the output node of the circuit. At least three more switches connect an input node of the circuit to the said control signal inputs of the two blocks during a switching phase and a static active phase of the circuit and to said first node of the circuit during a switching phase. All the switches are driven by the use of two pairs of phase-opposed timing signals. Advantageously the second inverter may have a threshold voltage which varies in function of the voltage which is present on said node of the circuit which is capacitively coupled to ground and which is connected to the output node of the circuit through said fourth switch at least during said switching phase and said static active phase, and disconnected from said output node during said precharge phase. The invention will be more easily understood through the following description of a preferred embodiment and by reference to the annexed drawings, wherein, Fig. 1. is a functional block diagram of the circuit of the invention; Fig. 2. is a circuit diagram according to an embodiment of the invention; Fig. 3. is an output current diagram showing the waveform during a precharge phase, according to an ideal behaviour of the circuit of the invention; Fig. 4. is a circuit equivalent to an output pull-down portion of a buffer. In consideration of the particular importance that such an application represents, the circuit of the invention will be described in relation to a utilization as a data output buffer for a memory device which may comprise 16 alike data output buffers integrated on the same chip. According to common practice, these memory devices may assume three different operative states to which correspond different operative states of the data output buffers. 1) Stand-by phase. During this phase, the chip is disabled, and memory data output pins have to be kept in a high-impedance state. This is commonly effected by means of a dedicated control signal (SB) capable of determining, through the plurality of transistors dedicated to this purpose which are functionally connected in the circuits of the buffer, a nonconducting state of the pull-up and pull-down output branches of the buffer, in order to minimize power consumption during such an operative stand-by phase. 2) Read phase. During this operative phase the memory device is enabled, and the addressed memory cells are read. This operative phase is actually divided into three steps or periods. During a first step (read request identification period) , the read request is identified and the input and addressing circuits are set. In a second step ( sensing period,) as defined by means of a dedicated timing signal CKO which is kept high during this step, the information stored in the addressed cells is sensed and decoded. In a third step or last step (data output transition period), which begins when the signal CKO undergoes a 1 to 0 transition), each data output node is brought to the voltage level corresponding to the value of the read datum (V OH or V OL for an "1" or a "0" logic state, of the respective addressed cell), by a relative output buffer. 3) Static active phase. During this phase, the chip is enabled and the data which have been previously read and latched, are continuously delivered through the data output pins of the device. During this operative phase, a low output impedance of the buffers if required. In an application of this kind, the time interval of the read phase (CKO signal in a high state) may be exploited for presetting the output node to an appropriate intermediate voltage level without substantially affecting the access time of the memory. This approach is aimed at reducing the voltage step which must be produced on an output node for effecting the switching (i.e. during the third step of the operative read phase) whenever this becomes necessary. In this way, the amount of electrical charge, which must pass through the output during the brief period of time in which the actual switching is performed, is reduced and so is the peak amplitude of the current which must be delivered for performing the switching in a certain interval of time. Of course, this precharge phase may be carried out only if there is a "dead" time between the instant when the system "senses" that a new datum must be transferred to the output and a subsequent instant when the logic level which needs to be transferred to the output is made available. Under this aspect, the memory circuits represent a typical example because through the passing of the circuit from a stand-by to an active condition or through a change of address signals, a read request is detected at first, thereafter the memory cells corresponding to the new address are read and finally the read data are transferred to the output terminals. Therefore, the period of time during which the memory cells are being read may be utilised for carrying out a precharge phase of the output nodes. The second implemented condition (i.e. the particular control exerted on the output current) has the purpose of minimizing the peak value of the time derivative of the output current delivered by the output buffer and therefore the noise (LdI/dt) which is induced on the supply lines. A functional block diagram of a buffer of the invention is shown in Fig. 1, while in Fig. 2 an embodiment of the circuit is shown wherein the functional blocks of Fig. 1 are identified wherever necessary also by means of dash-line boundaries, for facilitating identification. In the circuit of Fig. 2, natural, n-channel transistors are identified by the label nat. Basically the timing signals which control the operating phases of the circuit are: SB (by which a stand-by condition of the circuit may be determined) and CKO (which, as said before, a read time interval for data to be transferred to the output nodes). Nevertheless the CKO signal may remain high also during a stand-by phase. Of course, it is assumed that also the respective inverted signals ( SB and CKO ) be available, as they normally are. For the purpose of achieving a precise identification of the read period of the memory cells, and in order to permit during such a period a presetting (precharging) of the output nodes, it is necessary to have an additional control signal PR available, namely PR (- PR), which may be conveniently generated as an AND signal of the CKO and SB signals, according to a common technique as will be evident to a skilled technician without the need to describe in detail the functional circuit which may be used for this purpose. The PR ( PR ) signal will be high during the whole precharge of the ouput node phase and will be low during any other operative phase of the buffer. In the following table the logic states of the control signals during the distinct operative phases of the circuit of the invention are set forth. SB CKO Operating phase 0 0 Active state (outside a reading phase): PR = 0 0 1 Reading phase of memory cells: PR = 1; (a precharge of the output node is carried out during this period) 1 1 Stand-by (PR = 0) 1 0 Inexistent With reference to the figures, the switches depicted in Fig. 1 may be made as shown in Fig. 2; namely: the switch S1, composed of MT1A and MT2A (active when CKO is low); the switch S2, composed of MT3 and MT4 (active when CKO is high); the switch S3, composed of MT1 and MT2 (active when CKO is low); the switch S4, composed of MT5 and MT6 (active when CKO is high); the switch S5, composed of MP3 and MP4 (active when CKO is low); the switch S6, composed of MP1 and MP2 (active when CKO is high); and the switch S7, composed of MK6 and MK7 (active when PR is low). As a consequence, during a read cycle and in particular during a phase of transfer to the output of a new datum i.e. (switching phase of the output buffer) and during a static active state of the circuit, the switches S1, S3, S5 and S7 are closed. The switches S2, S4, S6 are closed during a precharge phase. Finally, the switches S2, S4, S6 and S7 are closed during a stand-by phase. An operative stand-by phase may be present only in certain applications, while as far as the subject of the present invention is concerned, which is tied to the control of the output current during a precharge phase and during a subsequent switching phase for transferring the datum to the output, as well as, of course, during a phase of static retaining of the output level during a static active state, it is overall important that the voltage at nodes C2 and C3 be controlled (be equivalent to) by the voltage of) the "datum" present at an input node of the buffer during the phase of transferring the datum to the output and during a subsequent static active phase. Viceversa the nodes C2 and C3 must be controlled by the output voltage V 0 (through the inverters I1 and I3) during an output node precharge phase. The node C1 must be controlled by the datum present at the input of the buffer during a phase of transferring the datum to the output and during a static active phase. Viceversa the node C1 must be controlled (through the inverter I2) by the voltage V opr,i which is present on the buffer output node at the beginning of a precharge phase, during the ensusing precharge phase, as will be pointed out later on in this description. With reference to the functional diagram of Fig. 1, for each of the two control blocks PU (pull-up control) and PD (pull-down control) for the output transistors MU and MD, respectively, an enabling signal input (ENABLE) and a control signal input (CONTROL) may be recognised. If the enabling signal input (ENABLE) of the PU block is low, the output signal of the block is always high, therefore the MU (pull-up) transistor is switched-off. When the enabling signal input (ENABLE) is high, the output of the PU block will be either high or low depending from the value of the control signal input (CONTROL): if the CONTROL node is also high, the output signal of the block becomes low, therefore the MU transistor is switched-on and charges the output node toward a higher voltage (maximum value = V DD ); if the CONTROL node is low, the output signal of the block is high and therefore the transistor MU is switched-off. The operation of the PD block is similar. When the enabling signal input node ( ENABLE ) is high, the output of the block PD is always low, therefore the MD transistor is switched-off. Conversely, when the enabling signal input node (ENABLE) is low, then if the control signal input node (CONTROL) is also low, the output voltage of the block PD is at a high level, therefore the MD transistor is made conducting and discharges the output node toward a lower voltage value (minimum value = ground potential); if the control signal input node (CONTROL) is high, the output of the block PD goes low and therefore the MD transistor is switched off. The voltage which is applied to the ENABLE and ENABLE terminals of the two control blocks PU and PD; respectively, is the same, i.e. the voltage which is present on the node C1 of the buffer circuit. During a phase of transfer of a datum to the output and during a static active phase of the buffer, the two control blocks PU and PD have the datum signal (DATUM), applied to their signal inputs because S5 is closed, while S6 is open and the switches S1 and S3 are closed, while S2 and S4 are open, therefore the two control blocks PU and PD are controlled by the datum itself. During a precharge phase, the "enabling" of the two control blocks depends from the value that the output node of the buffer had (V opr,i ), before the start of the precharge phase, by the use of the inverter I2, and in view of the fact that the switch S6 is closed, while S5 and S7 are open. Moreover the switches S2 and S4 are closed, while the switches S1 and S3 are open and therefore the two blocks PU and PD are "controlled" by the output voltage V 0 , by the use of the inverters I1 and I3. It may be easily observed that during a transfer phase of a datum to the output (and during a static active phase) the output voltage is brought to (or maintained at) the same logic level of the datum (DATUM) which is present on the input node of the buffer. During a precharge phase, either the control blocks, PU or the control block PD is activated depending on whether the value of the existing output voltage V opr,i is low or high respectively. Because the CONTROL signals for the two blocks PU and PD are the output signals of the inverters I1 and I3, respectively, an input of which is connected to the output node of the buffer, a precharge of the output node toward a level opposite to the starting level is achieved. However when the voltage on the output node of the buffer will have dropped (or risen) by a certain amount, the inverter (I3 or I1) whose output provides the CONTROL signal to the enabled one of the two control blocks will switch, thus at a certain point, the output transistor which was conducting will be switched-off. Of course, the other output transistor will and at that point the precharge will be terminated. Of course, throughout the precharge phase the other output transistor will remain in an off state because the relative (other) control block is disabled. Each of the control blocks PU and PD implements a control of its output voltage whereby the value of the current delivered by the driven output transistor (MU or MD) varies in function of time by an approximatively linear law, at least until the current delivered by the output transistor is determined essentially by its gate voltage level, i.e. as far as the conducting output transistor operates in a saturation zone of its characteristic. In practice, the enabled one of the two control blocks PU and PD, will generate an output voltage which substantially vary in function of the square root of time, thus the current delivered by driven output transistor (MU or MD) presents a linear, variation in function of time. Such a control is exerted by one or the other of the two control blocks during a transfer phase of the datum to the output during a precharge phase, therefore the switching noise is effectively minimized throughout all phases of operation of the buffer. When the output transistor which is conducting enters in a so-called triode-region of its characteristic (i.e. during a final portion of a switching phase) the output current will decrease without undergoing abrupt changes. It is important to note that during a precharge phase, at a certain instant t 0 , i.e. at the instant when the output voltage reaches a certain pre-established value, the control signal (CONTROL) of the block which is active at that moment switches, nevertheless the block remains active. Upon the switching of the control signal, (CONTROL), an inversion of the slope of the precharge current occurs. This precharge current which in absolute value was rising up to the instant t 0 , after this instant begins to decrease and, after a certain interval of time will become null, thus ending the precharge process, as shown in the diagram of Fig. 3. This slope inversion of the output current during a precharge phase is obtained by the use of the two inverters I1 and I3 which have different threshold voltages: I1 will generally have a threshold voltage lower than I3. The third inverter I2 has a threshold voltage which is preferably comprised between the threshold voltages of the other two invertes I1 and I3. The threshold voltages of the two inverters I1 and I3 must be designed accurately to ensue that the value of the ouput voltage at the end of a precharge phase will be as desired. According to a preferred embodiment, for optimizing the operation of the circuit, and particularly for ensuring a good performance during precharge phases, whichever the value of the existing output voltage V opr,i is, the inverter I3 should preferably have a variable threshold, controlled by the value of the existing output voltage V opr,i . It is particularly preferred that the threshold voltage of I3 decrease with a decrease of the value of the existing output voltage V opr,i . This may be obtained, for example, with by the circuit depicted in Fig. 2. The gate voltage of the MA7 transistor depends from the value of V opr,i , in a way that it decreases when the latter voltage increases. This determines a change of the current delivered by MA12, which increases with an increase of V opr,i , and of the current delivered by MA13, which decreases when V opr,i rises, as well as of the "resistance" opposed by MA1 which increases with a rise of V opr,i . This leads to an increase of the threshold voltage of the inverter I3 upon the rising of the value of V opr,i , as desired. The two inverters composed of MA8 ... MA11, which in the diagram of Fig. 2 are connected in cascade to the inverter I3 having a variable threshold, have the purpose of "squaring" the overall transfer characteristic of the inverter, in order to provide a control signal having an appropriate logic level to the PD block. The circuit shown in Fig. 2 comprises also transistors capable of placing the buffer in a high output impedance state (i.e. for implementing a so-called "tristate" output circuit) when the device in a stand-by state (i.e. when the signal SB is high), thus reducing substantially to nil the current drain of the buffer circuit during such a stand-by phase. In the circuit shown in Fig. 2, the pull-up transistor MU is replaced by a network composed of the transistors M23, M24, M24B and the resistor Ro (which, eventually may have a substantially null value). This network represents a "pull-up branch" of the buffer. The purpose of this embodiment of the pull-up output branch is that of avoiding a direct connection to the output node of the buffer of a p-channel transistor capable of delivering a relatively high current, in view of the fact that to the output node is already connected and n-channel pull-down transistor typically having a relatively high W/L ratio. A direct connection of two complementary transistors having a high W/L ratio could in fact create latch-up problems. Of course, the buffer shown is capable of maintaining a static output level for an indeterminate period of time during an active static condition of the buffer. This is also obtained by the control blocks PU and PD. In this operative phase, if the datum voltage level is high, the output of the PU block is low and also the output of the PD block is low, therefore the output pull-up branch is conducting while the output pull-down branch is off and therefore the output is maintained in a high logic state. The opposite occurs if the datum is a logic low. Finally it should be noted that the two blocks PU and PD, because of the relationships between the respective driving signals, exclude a contemporaneous conducting state of the two output transistors, MU and MD, except during transient phenomena which, obviously must be limited to a minimum. As it will be evident to a skilled technician, the operative phases of the circuit may be different from those described in relation to the embodiment shown in the figures and they may contemplate a different number of control signals and/or a different use thereof as compared to the control signals utilized in the example shown, namely CKO, PR and optionally also SB. Clearly a determination of the control signals which are needed or desired will depend on peculiar requirements of the application. For example, an additional control signal MEM may be used for the purpose of defining (determining) an active static condition, and so forth. The most important field of application of the output buffer of the invention is in high-speed memories having a large number of output data pins. Of course, the output buffer of the invention is useful also in other digital circuits wherein there is a need to drive relatively heavy capacitive loads at high speed, particularly external loads connected to the integrated circuit, with a high output parallelism. On the other hand, it is essential, in order to be able to perform a precharge phase, that the operation of the integrated circuit wherein the output buffer is used, present a "dead" time between an instant when the system senses that a new level, different from an existing one, must be transferred to the output, and a successive instant when a logic signal which must be transferred to the output is made available on the input node of the output buffer. Notwithstanding that this description refers to the case of an output buffer of an integrated circuit it is evident that the buffer of the invention is suitable also to drive internal capacitive loads of the integrated circuit if particular conditions warrant the use of such a buffer, and by considering that primarily switching noise generation is a phenomenon tied to parasitic inductances of supply lines. OPERATION OF AN OUTPUT BUFFER OF THE INVENTION The operation of the circuit shown in Fig. 2, and particularly suited for a memory device, is as follows Output transition. At the beginning of this period, the gate electrode of transistor M5 (G5) is at a low level while the gate electrode of transistors M24 and M24B (G24) is at a high level (it will be shown, in fact, that the output transistors are in the off state at the end of an output precharge phase). The initial output voltage is equal to V OPR , which has an appropriate intermediate level between the V DD and V SS values, as will be shown later. The output transition period begins when the signal CKO goes low. The logic level of the datum read from a memory cell is transferred onto nodes C1, C2 and C3. Transistors MX10 and MX11 included in the driving circuits PU and PD are kept on during the output transition period (CKO = 0) and can be regarded as short circuits. By assuming that the read datum be a logic "0", the output node will need to be discharged from V OPR towards ground potential and the nodes C1, C2 and C3 are brought to a low level. As far as the pull-up section of the buffer is concerned, the node C1 keep MX3 on and MX4 off, and the node C2 keeps M20 on (while MX9, M13 and M14 are kept off. Therefore, the node G24 is kept at a high level. Transistors M24 and M24B remain in an off state and the pull-up branch give no contribution to the output current. With reference to the pull-down section, transistor MX6 is off, while transistors M6 and MX5 are on, and can be regarded as short circuits. Node C3 keeps transistors M11, M12 and MX12 on and transistor M1 off. The gate electrode of M5 begins to be charged through M11, MX12 and the series connection of M7 (which acts substantially as a diode) and M12. Therefore, M5 begins to conduct and allows the load capacitance C L of the buffer to be discharged. As the voltage on node G5 increases, thus increasing the output current sunk by M5, the voltage across the branch composed of M12 and M7 decreases, thus decreasing the value of the current flowing through the branch itself. Therefore, node G5 is charged with a current which decreases in function of time. An equivalent diagram of the circuit which discharges the load capacitance is shown in Fig. 4, where C5 and I V represent, the overall capacitance of node G5 and the time-dependent current sourced by the driving circuit PD to charge this capacitance, respectively. Assuming that M5 works in its saturation region, the output current I out is given by I out = k' 2 W e L e ( V gs - V th ) 2 where k', W e and L e are the conduction factor, the effective width and the effective length, respectively, of transistor M5, and V gs and V th are its gate-to-source voltage and its threshold voltage. By taking the time derivative, the following is obtained: dI out dt = k' W e L e ( V gs -V th ) dV gs dt . The current-voltage relationship of capacitor C 5 is given by. I v = C 5 dV gs dt . By substituting (3) into the equation (2), the following is obtained: dI out dt = k' W e L e ( V gs -V th ) I v C 5 . To achieve a constant value of the time derivative of the output current (dI out /dt), the voltage difference V gs - V th and the current I v must be inversely proportional to each other. Therefore, I v should decrease while V gs is increasing. In the driving circuit PD, as shown above, this is obtained by means of the series connection of diode-connected transistor M7 and transistor M12. Therefore, the output current I out shows a substantially linear variation with time, as long as M5 operates in its saturation region. When M5 enters the so-called triode-operating-region, its current driving capability decreases. The design of the driving circuit PD and of transistor M5 may be optimized in order that, when the voltage on the G5 node reaches its maximum value (not above V DD ), the M5 transistor works in its triode-region and its drain current is controlled by the output voltage. Therefore, the output current I out decreases without any sharp variation until it reaches a static low level value thus preventing large voltage peaks from being induced across the parasitic inductance of ground lines. By assuming now that the read datum be a logic "1", during the output transition period the output node will need to be charged from V OPR towards V DD . Nodes C1 and C3 are at a high level, therefore the transistors MX6 and M1 are kept on, while MX5 is kept off and M11, M12 and MX12 are also kept off. Therefore, node G5 is kept at a low level and the pull-down transistor M5 remains in an off state. The operation of the driving circuit PU, when the read datum is "1" is similar to the operation of the driving circuit PD, when the read datum is "0". At the beginning of this period, the node G24 is assumed to be charged at the supply voltage V DD . Transistors MX4 and M19 may be regarded as short circuits, therefore, node G24 is discharged through M14, MX9 and the series connection of M18 and M13, thus turning transistors M24 and M24B on. The current provided by the driving circuit PU to discharge node G24, decreases with increasing time, therefore the output current sourced by M24 increases with an almost constant time derivative until transistor M24 works in its saturation region and/or the gate-to-source voltage of transistor M23 is so large that it does not substantially affect the current driving capability of the branch composed of M24 and M23 (high-speed pull-up branch). When transistor M23 is switched off due to the increasing voltage applied to its source, transistor M24B provides the output current required to continue charging the load capacitance and to meet static high-level output specifications. Transistor M24B is included in the pull-up structure just for this purpose. Its contribution to the output current during fast dynamic operation is smaller than the contribution provided by M24; however, it should also be taken into account when optimizing the design of the buffer. As in the previous case (read datum = = 0), the output current sourced by the pull-up structure is smoothly decreased from its peak value to its high-level static value thanks to the operating conditions of the output transistors, therefore no large voltage peak is induced across parasitic inductance across the V DD line. Active static operation This working condition of the buffer represents the prosecution of a switching phase, and is not a "real" operating phase, and for this reason may not be univocally defined by the control signals SB and CK0. During this phase, the datum which has been previously read and latched, has to be continuously available on the output node, with a low impedance driving condition. If the read datum is "0", nodes G5 and G24 are kept at a high level. Transistors M24 and M24B are kept in an off state, while transistor M5 is kept on, therefore the output node is forced to ground potential with a low output impedance. If the read datum is "1", nodes G5 and G24 are kept at a low level. Transistor M5 is kept off, while transistors M24 and M24B are kept on, thereby forcing the output node to a high level with a low output impedance. As pointed out above, to reduce the possibility of latch-up, it is preferable to avoid a direct connection of a large, pull-up, p-channel transistor to the output node, because a large n-channel, pull-down, transistor (M5) is already connected thereto. Therefore, an n-channel, device, M23 (e.g. a natural transistor) may be advantageously connected in series with M24. To meet high-level output static specifications, a p-channel transistor M24B may be connected in parallel to the high-speed pull-up branch, as shown. The aspect ratio W/L of this transistor may be designed so as to make it capable of driving just the current required by static, high-level, output specifications, and therefore it may have drastically smaller dimensions than transistor M24. Finally, a resistance R 0 may be connected in series to M24B in order not to degrade the circuit reliability as far as latch-up possibility is concerned. Output precharge phase A precharge phase begins when the signal PR goes high. In the analysis of the circuit operation during an output presetting phase (SB = 0, CKO = 1, and therefore PR = 1) the case when the output node is initially at a low level (ground potential) will be considered first. In this case, during the output presetting period, the output node must be charged to V OPR . Node G24 is initially at a high level, and transistors M24 and M24B are in a an off state. The output voltage, V 0i present at the beginning of the precharge period is stored on the internal capacitance C G , and controls the node C1 through the inverter I2 (which for example may have a nominal threshold value: V T2 = 1.6 V) and the following transfer gate S6 composed of the transistors MP1 and MP2. The node C1 is forced high, so node G5 is forced to ground potential and transistors M5 is kept in an off state during the whole output presetting period. It should be noted that when a read operation has to be carried out starting from a static active phase in the presence of a low initial ouput voltage, the node G5 is initially at a high voltage, therefore it must be discharged to ground potential at the beginning of the output presetting (precharging) period. The discharge of the node G5 is made fast enough to allow a fast start of the charging of the load capacitance through the pull-up branch and substantially prevent crossover currents from flowing through the output pull-up and pull-down structures which are connected in series across the supply rails. The output node was assumed to be intially at a low level, so the input node of the inverter I1 (which may for example have a nominal threshold voltage V T1 = 1.1 V), and which controls the node G2, is at a high level. Because the node G1 is also at a high level, at the beginning of the output precharge period, the driving circuit PU is substantially in the same working conditions as during an output transition period when a high level has to be delivered to the output terminal (the only difference relates to MX10 which is kept off during a precharging period). Therefore, the node G24 is discharged under the control of the driving circuit PU. The resulting current delivered through the output by the transistor M24 increases with time, showing an approximately constant time derivative. The value of the current which discharges the node G24 during the output precharge period is somewhat smaller than during the output transition period because the transistor MX9 gives no current contribution to the process of discharging the node G24. In fact, during an output transition period, a slightly faster discharge of the gate electrodes of the transistors M24 and M24B is required because they operate with a lower drain-to-source voltage. When the output voltage reaches the threshold level V T1 , the output voltage of the inverter I1 goes low, and transistors M13 and M14 are switched off while transistor M20 is switched on. Therefore, node G24 is increasingly charged toward V DD and the output current sourced by the transistors M24 and M24B decreases with the progressing of time. In practice, the digital switching of the output of the inverter I1 causes an inversion in the slope of the output current ramp, in accordance with the waveform shown in Fig. 3. Thanks to a proper sizing of the transistors which implement the driving circuit PU, transistors M24 and M24B are smoothly brought to an off state before the output precharge period is over. Therefore, when the output transition period begins and the control of the output buffer is returned to the datum node, the output precharge current has already dropped to zero and therefore sharp variations of the output current are prevented. The buffer operation when the output node has to be discharged from an initial high level to V OPR during a precharge period of the output node is similar to the operation in the opposite case described above. During this period, the node C1 is kept at a low level, therefore transistors M24 and M24B are kept in an off state. The driving circuit PD charges the gate electrode of transistor M5, which becomes capable of sinking the current required to discharge the output capacitance C L . The circuits PD and PU are similar, and the control of the two blocks is performed by similar techniques, therefore the same considerations and features discussed above are also applicable to this case. The node G5 is first recharged and then discharged according to a law which ideally provides a linear increase and a linear decrease, respectively, of the output current sunk by M5. The output current at the end of the precharge period is null. Also in this case, a high speed of operation is ensured and crossover currents through the output structures at the beginning of the precharge period are prevented. However, in this case, the inversion of the slope of the output current ramp is performed by the use of a control circuit which is based on an inverter, I3, having a variable threshold voltage, which is composed of the transistors MA1-MA4, MA12, MA13, and transistors MA5, MA6 and MA7 which generate a threshold adjustment voltage. In fact, in order to ensure an optimum operation of the buffer during the output precharge period, the current value of the output voltage V out , which causes a slope inversion of the discharge current ramp, must be a function of the initial output voltage, V 0i . To reach the nominal voltage V OPR which may be equal to 1.8 V, the slope inversion should occur when the V out reaches 3.4 V when V 0i is 5 V, or 2.1 V when V oi is 2.4 V respectively. If an inverter having a fixed threshold voltage V T3L is used and if the threshold voltage is relatively low, e.g. 2.1 V, in the presence of a high initial output voltage, the output current sunk by M5 during the whole precharge period could make the output voltage too low at the end of the precharge period. If an inverter with a fixed threshold voltage (V T3H ) and having a relatively high threshold voltage: e.g. 3.4 V, is used, in the presence of an initial output voltage lower than (V T3H ), no discharge of the load capacitance would occur, and the output voltage would remain unchanged until the beginning of the following output transition phase. This type of problem is not present when, during the output precharge period the output node must be precharged from a low level to V OPR by the driving circuit PU. In that case in fact, the initial output voltage may vary within a range which is much smaller than in the case when the output node has to be discharged and the output precharge operation is suitably performed using a conventional fixed threshold inverter (I1) having an appropriate threshold voltage. Advantageously, the output voltage which is present at the beginning of a precharge period, and which is stored in the internal capacitance C G , causes a change of the threshold voltage (V T3v ) of the inverter I3. It is easily seen that the threshold voltage (V T3v ) increases when V 0i is large and decreases when V 0i is low, as required. The nominal threshold voltage of the inverter is modified within a certain range in function of the initial output voltage V 0i , which may vary for example, from 2 V to 5 V. This ensures a correct operation of the buffer with any value of V 0i fitting within the range from V SS to V DD . The two inverters connected in cascade to the inverter I3 and composed of transistors MA8 to MA11, provide a squaring in the transfer characteristic of the inverter, and thus ensure output voltage levels suitable to correctly drive the control block PD. Due to propagation delays, the slope of the output current ramp is actually inverted with some delay after the instant when V out reaches the predetermined threshold value (V T1 or V T3v ). Therefore, additional charge is delivered to the output capacitance before the ramp slope inversion takes place. The effect of this contribution on the voltage present on the output terminal at the end of the precharge period depends on the value of the load capacitance C L and therefore the design of the buffer may be optimized to meet maximum-load specifications. The voltage applied to the input of the inverter I2 may be the initial output voltage V 0i , as sampled on the capacitance C G . The output node of the inverter I2 drives the node C1 during the output node precharge period. In turn, the node C1 drives both control blocks PU and PD by means of the transistors MX3, MX4, and MX5, MX6 respectively. In this way, a better control of the output current is achieved also in the presence of a relatively small load capacitance. For instance, it may be assumed that the output node must be discharged during a precharge period and that such an additional control be absent. When C L is relatively small, the output voltage V out may reach a value which is lower than the threshold voltage V T1 during the output node precharge period. Therefore, the node G24 would be discharged and as a consequence the transistor M24 would provide a non-negligible output current. Therefore the waveform of the output current would be different from the desired one. Moreover, a sharp variation of output current could occur if transients are not over before the end of the precharge period, when the ensuing output transition phase requires an inversion of the polarity of the output current. A similar problem would occur when the load capacitance need to be charged from a low level to V OPR during an output node precharge period. In the embodiment of a buffer object of the present invention shown in Fig. 2, the node C1 is maintained at a correct voltage level during the whole precharge period, because the sampled output voltage V 0i is utilized as an input control voltage and therefore the above noted problems are prevented. Stand-by During a stand-by period (SB = = 1, CKO = 1), the transistors M5 and M24 and M24B are kept in an off state. Therefore, the upward node is maintained in a high impedance state as required. Current consumption During stand-by, the output node voltage is undetermined because the output terminal can be either floating or controlled by an external circuit. When the device is in an active phase, the output voltage is at a value comprised between the specified dynamic and static levels for some time interval after a specified access time. Therefore, the inverters I1, I2, and I3, which are required to work only during the output preset period, may be conveniently disabled when the device is not in this working phase, in order to minimize the power consumption of the buffer during stand-by as well as during active static phases. Disabling is implemented by the signals PR and PR. The two inverters connected in cascade to the variable-threshold inverter I3 do not need disabling as the "output node" of I3 is tied to ground when the buffer is not in a output precharge phase of operation. During stand-by, the signal SB is kept high and therefore the driving circuits PU and PD do not draw any bias current, regardless of the value of the output voltage. During a static active operation, the nodes C1, C2 and C3 are controlled by the DATUM line, which may be placed at a "1" or "0" logic level depending for example, on the content of the read cell memory when the sensing period is over. Therefore, during this phase, when all transients are over, the two driving blocks PU and PD do not draw current. Therefore, the power dissipation of the output buffer during stand-by and static active phases of operation is due solely to leakage currents. During output precharge and transition phases, as well as during the transients following an output transition phase, a number of internal circuit nodes must be charged or discharged, therefore the current consumption of the buffer cannot be neglected. However, as already shown above, the buffer may be provided advantageously with a circuital arrangements capable of minimizing the crossover currents and this further contributes to reduce the noise which is induced on the supply lines, besides limiting consumption.

Claims: A method for reducing the switching noise caused by a buffer circuit capable of generating a current for bringing to a pre-established voltage an output node in function of a certain logic signal applied to an input node of the buffer, which comprises precharging said output node to an intermediate voltage between a pre-existent voltage of said output node and a different pre-established voltage before bringing the output node to one of said preestablished voltages, in function of said logic signal applied to the input, characterized by controlling a precharging current to maintain a constant time derivative of a first sign of the current, during a first time interval of precharge and a constant current time derivative of opposite sign of the current during a second time interval of precharge; controlling the charge current that brings the output voltage to said pre-established voltage to maintain a constant time derivative during a successive third time interval. A method according to claim 1, wherein said time derivatives during identical first and second intervals of time have an identical absolute value. A method according to claim 1, wherein said current during said third interval has a time derivative of absolute value equal to that of said precharging current of the preceding time intervals. A buffer circuit for high-speed driving a capacitive load connected to an output node (OUT) of the circuit, in function of a signal applied to an input node (DATUM) of the circuit with a low switching noise, by precharging said output node to an intermediate voltage between a pre-existent voltage of said output node and a different pre-established voltage before bringing the output node to one of said preestablished voltages, in function of said logic signal applied to the input, wherein the buffer comprises a first control block (PU) for a pull-up output branch (MU) and a second control block (PD) for a pull-down output branch (MD), driven by a first or enabling signal, present on a first node (C1) of the circuit and by a second or control signal fed to respective inputs (ENABLE, ENABLE , CONTROL) of said control blocks (PU, PD) controlling a precharging current to maintain a constant time derivative of a first sign of the current, during a first time interval of precharge and a constant current time derivative of opposite sign of the current, during a second time interval of precharge, and controlling the charge current that brings the output voltage to said pre-established voltage to maintain a constant time derivative during a successive third time interval; a first inverter (I1), functionally connected between said output node (OUT), and, through a first switch (S2), a control signal input node (C2) of said first control block (PU), during an output node precharge phase; a second inverter (I3), functionally connected between said output node and, through a second switch (S4), to a control signal input node (C3) of said second control block (PD), during said precharge phase; a third inverter (I2), capable of driving said first node (C1) of the circuit during said precharge phase and connected thereto through a third switch (S6), and having an input node which is capacitively coupled (C) to ground potential and connected, through a fourth switch (S7) to said output node (OUT), at least during a swifching phase and an active static phase of the operation of the buffer; switch means (S1, S3, and S5), capable of connecting said input node (DATUM) to said control signal input nodes (C2, C3) of said control blocks (PU and PD) and to said first circuit node (C1), during said switching phase of the buffer; said switches and switch means being driven by a first pair (CKO, CKO ) and a second pair (PR, PR ) of control signals. A circuit as defined in claim 4, wherein said second inverter (I3) has an input which is connected to said input node of said third inverter (I2) capacitively coupled to ground and connected to said output node of the buffer through said fourth switch and has a threshold voltage which is variable in function of the voltage present on said node capacitively coupled to ground at the start of a precharge phase. A circuit as defined in claim 4, wherein said output pull-up branch (MU) is composed of a network having a first branch which is substantially constituted by a pair of complementary transistors, functionally connected in series among each other, and wherein a first p-channel transistor has a source connected to a supply node while the complementary n-channel transistor has a source connected to the output node of the circuit and a gate connected to a constant voltage, and a second branch constituted by a second p-channel transistor having a drain connected through a resistance to said output node of the circuit; the gate of said first p-channel transistor and the gate of said second p-channel transistor being driven by the same signal. A circuit as defined in claim 4, further comprising means, driven by a third pair of control signals, (SB, SB ), capable of determining a high output impedance condition of the circuit, for reducing the current drawn by the circuit during a stand-by phase of operation. A circuit as defined in claim 7, wherein said means comprise at least a third p-channel transistor driven through a gate terminal thereof by a first signal ( SB ) of said third pair of control signals and functionally connected between a supply node and a driving node of said pull-up output branch (MU) and by a second n-channel transistor, driven through a gate terminal thereof by the other signal (SB) of said third pair of control signals and functionally connected between a driving node of said, pull-down, output branch (MD) and ground. A circuit as defined in claim 4, wherein between the output node of said second inverter (I3) having a variable threshold and said second switch (S4) there are two additional inverters connected in cascade, capable of squaring the overall transfer characteristic in order to provide appropriate logic levels to the control signal input of said second control block (PD). A circuit as defined in claim 7, wherein said first pair of control signals (CKO, CKO ) and said third pair of control signals (SB, SB ) are in-phase among each other, during a static active phase of a stand-by phase of operation of the circuit and in phase-opposition among each other during an output node precharge phase of operation and the direct signal (PR) of said second pair of control signals is produced on the output node of a logic AND gate circuit, to the input of which the direct signal (CKO) of said first pair of control signals and the inverted signal ( SB ) of said third pair of control signals are fed.

Inventors: MALOBERTI FRANCO, MARCHESI GIANMARCO, TORELLI GUIDO, MALOBERTI, FRANCO, MARCHESI, GIANMARCO, TORELLI, GUIDO
Applicants: ST MICROELECTRONICS SRL, STMICROELECTRONICS S.R.L.
Application year: 1992
Main classification: H03K19
IPC codes: H03K17, G11C11, G11C7, H03K19