METHOD AND APPARATUS FOR TESTING AN IMPEDANCE-CONTROLLED INPUT/OUTPUT (I/O) BUFFER IN A HIGHLY EFFICIENT MANNER

Abstract: A method and apparatus for efficiently testing input/output (I/O) buffer are disclosed. The I/O buffer includes multiple transistors coupled to a data output terminal. The method includes enabling a single one of the multiple transistors. A predetermined electrical voltage level is then forced upon the data output terminal, and a resultant electrical current flowing through the data output terminal (e.g., in a direction away from the I/O buffer) is measured. The measured electrical current is compared to predetermined minimum and maximum current values. A ratio of the measured electrical current to a reference current is computed, and the computed current ratio is compared to a predetermined minimum and maximum current ratio. The above steps may be repeated until each of the multiple transistors has been enabled. The drive strength of a given transistor is a measure of the amount of electrical current the transistor causes to flow through the data output terminal when enabled. One or more of the multiple transistors has a drive strength which is less than all of the other transistors (i.e., a minimum drive strength). The reference current may be the amount of electrical current flowing through the data output terminal with the predetermined voltage level forced thereupon when the single enabled transistor has the minimum drive strength. By testing the impedances of the individual transistors of an I/O buffer independently, the method and apparatus accomplish I/O buffer testing in a highly efficient manner.

Description: TITLE: METHOD AND APPARATUS FOR TESTING AN IMPEDANCE-CONTROLLED INPUT/OUTPUT (I/O) BUFFER IN A HIGHLY EFFICIENT MANNER BACKGROUND OF THE INVENTION 1 Field of the Invention This invention relates to input/output (I O) buffers used to drive signals upon, and receive signal from, transmission lines, and more particularly to the testing of impedance-controlled I O buffers 2 Description of the Relevant Art Digital electronic devices typically communicate via electrical signals (e g , voltage and/or current) driven upon electrical conductors (e g , metal wires) As the operating frequencies (l e , "speeds") of digital electronic devices increase, electrical conductors used to route signals between components (I e , signal lmes) begin to behave like transmission lmes Transmission lines have characteristic impedances If the input impedance of a receiving device connected to a transmission Ime does not match the characteristic impedance of the transmission line, a portion of an incoming signal is reflected back toward a sending device Such reflections cause the received signal to be distorted If the distortion is great enough, the receiving device may erroneously interpret the logical value of the incoming signal Binary digital signals typically have a low voltage level associated with a logic low (I e , a logic "0"), a high voltage level associated with a logic high (l e , a logic "1"), "rise times" associated with transitions from the low voltage level to the high voltage level, and "fall times" associated with transitions from the high voltage level to the low voltage level A signal line behaves like a transmission Ime when the signal rise time (or signal fall time) is short with respect to the amount of time required for the signal to travel the length of the signal line (l e , the propagation delay time of the signal Ime) As a general rule, a signal Ime begins to behave like a transmission line when the propagation delay time of the signal line is greater than about one-quarter of the signal rise time (or signal fall tune) Resistive "termination" techniques are often applied to transmission lmes, and signal lines long enough to behave like transmission lines, in order to reduce reflections and the resultant signal distortion One or more electπcally resistive elements may be inserted between each sending device and the signal Ime (l e , transmission Ime) m order to cause the effective output impedances of the sending devices to more closely match the characteristic impedance of the transmission Ime Similarly, one or more electπcally resistive elements may be inserted between each receivmg device and the transmission line m order to cause the effective input impedances of the receivmg devices to more closely match the characteπstic impedance of the transmission Ime Impedance-controlled buffers are often used to drive "unterminated" transmission lmes In order to reduce signal reflections and distortion, the output impedance of an impedance-controlled I/O buffer connected to a transmission Ime is adjusted such that the output impedance is substantially equal to the characteristic impedance of the transmission Ime Several factors may affect this impedance matching, including (l) device variations due to vaπations in the fabrication process, (n) supply voltage variations, and (in) operating temperature variations As a result, the output impedances of impedance-controlled I/O buffers are generally made vaπable and controllable by a one or more logic signals. Fig. 1 is a block diagram of an exemplary impedance-controlled I/O buffer 10. I/O buffer 10 mcludes a pre-dπver section 12 coupled to a dπver section 14 Pre-dπver section 12 receives an mput data signal "DATA_IN" at a data mput terminal labeled "DATA_IN". Pre-dπver section 12 also receives binary p-channel transistor enable signals "EP1-EP5" and n-channel transistor enable signals "EN1-EN5" (e.g., from a control unit). Pre-dπver section 12 may mclude logic elements which produce p-channel transistor control signals "P1-P5" from enable signals EP1-EP5 and mput data signal DATA_IN, and n-channel transistor control signals "N1-N5" from enable signals EN1-EN5 and mput data signal DATA_IN. Dπver section 14 receives p-channel transistor control signals P1-P5 and n-channel transistor control signals N1-N5 and produces an output data signal "DATA_OUT" at an data output terminal labeled "DATA OUT". Fig. 2 is a circuit diagram of an exemplary embodiment of dπver section 14 Driver section 14 mcludes five dπver pairs 16-20. Each dπver pair mcludes a p-channel transistor and an n-channel transistor connected m seπes between a first power supply voltage VDD and a second power supply voltage VSS, where VDD > VSS. Within each dπver pair, a source region of the p-channel transistor is connected to VDD, a dram region of the p- channel transistor is connected to a dram region of the corresponding n-channel transistor at an output node, and a source region of the n-channel transistor is connected to VSS. The output nodes of all five dπver pairs are connected to the DATA_OUT terminal of I/O buffer 10 as shown m Fig. 2 Each dπver pair of dπver section 14 has an output electπcal impedance which is largely resistive and mversely related to the current sourcmg and sinking capability of the dπver (I e., the "dπve strength" of the dnver pair). The dπver pairs may be configured such that the relative dπve strengths double from one dπver pair to the next. For example, a first dπver pair 16 may have a base or reference dπve strength, and a corresponding base or reference output impedance. A second dπver pair 17 may have a dπve strength twice the dπve strength of dπver parr 16, and an output impedance half that of dπver pair 16 A third dπver pair 18 v ιγ have a dπve strength twice that of second dπver pair 17 and 4 times the dπve strength of first dπver pair 16, and an output impedance one- fourth that of dπver pair 16 A fourth dπver pair 19 may have a dπve strength twice that of third dπver pair 18 and 8 times the dπve strength of dπver pair 16, and an output impedance one-eighth that of dπver pair 16 A fifth dπver pair 20 may have a dπve strength twice that of fourth dπver pair 19 and 16 times the dπve strength of dπver pair 16, and an output impedance one-sixteenth that of driver pair 16 The transistors of dπver section 14 need not be enabled in pairs, hence the separate enable signals EP1- EP5 and EN1-EN5. When the DATA_IN signal is a logic high (I e., a logic '1'), at least one p-channel transistor of dπver section 14 is enabled by a corresponding enable signal EPx, where x is an mteger between 1 and 5, and the output impedance "ZOUT" of I/O buffer 10 is a parallel combmation of the impedances of all of the enabled p- channel transistors. Similarly, when the DATA IN signal is a logic low (i.e., a logic '0'), at least one n-channel transistor of dπver section 14 is enabled by a coπespondmg enable signal ENx, and the output impedance ZOUT of I/O buffer 10 is a parallel combmation of all of the enabled n-channel transistors Each transistor of driver section 14 has a different impedance mversely related to its cuπent sourcmg or sinkmg capability, thus the output impedance of I/O buffer 10 may be controlled by selectively asserting enable signals EP1-EP5 and EN1-EN5 The DATA OUT terminal of I/O buffer 10 may be connected to one end of a transmission line, and enable signals EP1-EP5 and EN1-EN5 may be selectively enabled (e.g., by a control unit) such that the output impedance ZOUT of I/O buffer 10 is substantially equal to the characteristic impedance of the transmission line. As a result, errors resulting from signal reflections and distortion may be reduced. Additionally, the values of enable signals EP1-EP5 and EN1-EN5 may be adjusted during operation to compensate for changes in the output impedance ZOUT of I/O buffer 10 due to variations in power supply voltages and/or variations in temperature. When the values of enable signals EP1-EP5 and EN1-EN5 are changed during operation, data transmission errors may occur during "transition times" of enable signals EP1-EP5 and EN1-EN5 when enable signals EP1-EP5 and EN1-EN5 are changing state. The changing values of enable signals EP1-EP5 and EN1-EN5 may produce an "intermediate" value of the output impedance ZOUT of I/O buffer 10 which is different from the original value and the desired final value. Intermediate values of ZOUT greater than original values may result in data transmission eπors. For example, if the output impedance ZOUT of I/O buffer 10 is changed immediately following a DATA_OUT transition from logic "1" to logic "0", and an intermediate value of ZOUT is greater than the original value, a positive eπor pulse may be generated at the DATA OUT terminal. After a time period equal to the propagation delay of the transmission line, such a positive eπor pulse will arrive at the end of the transmission line opposite I/O buffer 10. The amplitude of the positive error pulse may be doubled at the end of the transmission line opposite I/O buffer 10. If the doubled amplitude of the positive eπor pulse exceeds the logic switchpoint level (e.g., Vdd/2), the positive eπor pulse may result in a false received logic "1" signal (i.e., a data transmission eπor). In order to reduce data transmission eπors, enable signals EP1-EP5 and EN1-EN5 are always changed such that intermediate values of ZOUT are always less than original values. (See, for example, U.S. Patent No. 5,751,161, "Update Scheme for Impedance Controlled I/O Buffers", incorporated herein by reference in its entirety). In a straightforward approach to testing I/O buffer 10, all 25 (32) possible combinations of EP1-EP5 would be required to verify the output impedance ZOUT of I O buffer 10 when output data signal DATA OUT is a logic "1". Similarly, all 25 (32) possible combinations of EN1-EN5 would be required to verify the output impedance ZOUT of I/O buffer 10 when output data signal DATA_OUT is a logic "0". Thus at least 2 • 25 (64) separate tests are required to verify the output impedance ZOUT of I/O buffer 10. An integrated circuit may include, for example, hundreds of impedance-controlled I/O buffers 10. It is desirable to keep total testing time per integrated circuit to a minimum in order to produce as many integrated circuits as possible in a given amount of time. It would thus be beneficial to have a method and apparatus for testing a controlled-impedance I/O buffer in a manner which reduces the required test time. SUMMARY OF THE INVENTION A method and apparatus for testing an input/output (I O) buffer in a highly efficient manner are disclosed. The I/O buffer includes multiple transistors coupled to a data output terminal. The method includes enabling a single one of the multiple transistors. A predetermined electrical voltage level is then forced upon the data output terminal, and a resultant electrical cuπent flowing through the data output terminal (e.g., in a direction away from the I/O buffer) is measured. The measured electrical cuπent is compared to predetermined minimum and maximum cuπent values. A ratio of the measured electπcal cuπent to a reference cuπent is computed, and the computed cuπent ratio is compared to a predetermmed minimum and maximum cuπent ratio. The above steps may be repeated until each of the multiple transistors has been enabled. The dπve strength of a given transistor is a measure of the amount of electπcal cuπent the transistor causes to flow through the data output termmal when enabled. One or more of the multiple transistors has a dπve strength which is less than all of the other transistors (i.e., a minimum dπve strength). The reference cuπent may be the amount of electπcal cuπent flowing through the data output terminal with the predetermmed voltage level forced thereupon when the smgle enabled transistor has the minimum dπve strength. The I/O buffer may mclude multiple mputs for enablmg the multiple transistors and a data mput termmal. The enablmg step may mclude applymg signals to the mputs and the data mput termmal such that the smgle one of the multiple transistors is enabled. A grouping of such signals applied to the mputs of the I/O buffer is termed herein an "enable signal mput pattern " The multiple transistors may mclude several n-channel transistors coupled between a first power supply voltage and the data output termmal, and an equal number of p-channel transistors coupled between the data output termmal and a second power supply voltage. During testing, the data output termmal may forced to an electπcal voltage level midway between the first and second voltage levels. For example, when the first voltage level (e.g , VDD) is a referenced to the second voltage level (e g , VSS), the data output termmal may be forced to VDD/2 The predetermmed mmimum electπcal cuπent value may be determined from a maximum output impedance value for the I/O buffer when the smgle one of the multiple transistors is enabled Similarly, the predetermmed maximum electrical cuπent value may be determmed from a mmimum output impedance value for the I/O buffer when the smgle one of the multiple transistors is enabled. One or more of the several n-channel transistors may have a reference (e g., minimum) dπve strength, and the other n-channel transistors may have a dπve strength greater than the reference dπve strength. The predetermmed mmimum and maximum cuπent ratios used when a given n-channel transistor is the smgle transistor enabled may be based upon a ratio of the dπve strength of the enabled n-channel transistor to the reference dπve strength. The apparatus for testmg the I/O buffer mcludes a test unit adapted for couplmg to the I/O buffer. The test unit mcludes a memory unit for storing an enable signal mput pattern, and the coπespondmg mmimum and maximum electncal cuπent values and cuπent ratios. During use, the test unit may apply the enable signal mput pattern to the multiple inputs of the I/O buffer, force an electπcal voltage of VDD/2 upon the data output termmal, measure a resultant electπcal cuπent flowing through the data output termmal, compare the measured electπcal cuπent to the mmimum and maximum electncal cuπent values, compute a ratio of the measured electπcal cuπent to the reference cuπent, and compare the computed cuπent ratio to the mmimum and maximum cuπent ratios The logic states of I/O buffer mputs may define impedance "states" of the I/O buffer. Impedance differences between such I/O buffer impedance states must be sufficient to reduce transmission eπors By testmg the impedances of the individual transistors of an I/O buffer independently, the above descπbed method and apparatus accomplish I O buffer testmg m a highly efficient manner BRIEF DESCRIPTION OF THE DRAWINGS Other objects and advantages of the mvention will become apparent upon reading the following detailed descπption and upon reference to the accompanymg drawmgs m which: Fig. 1 is a block diagram of an exemplary impedance-controlled input/output (I/O) buffer, wherem the I/O buffer mcludes a pre-dπver section coupled to a dnver section; Fig. 2 is a circuit diagram of an exemplary embodiment of the dπver section of Fig. 1, wherem the dπver section mcludes multiple dπver pairs, and wherem each dπver pair mcludes a p-channel transistor coupled between a first power supply voltage VDD and a data output termmal and an n-channel transistor connected between the data output termmal a second power supply voltage VSS, where VDD > VSS; Fig. 3a is a diagram illustrating how the output impedance ZOUT of the I/O buffer may be determmed when a logic "1" is present upon the data output termmal, Fig. 3b is a diagram illustrating how the output impedance ZOUT of the I/O buffer may be determmed when a logic "0" is present upon the data output termmal; Figs. 4a-b illustrate a flow chart of one embodiment of a method for testing the controlled-impedance I/O buffer of Fig. 1, and Fig. 5 is a block diagram of one embodiment of an apparatus for testmg the controlled-impedance I/O buffer of Fig. 1 While the mvention is susceptible to vaπous modifications and alternative forms, specific embodiments thereof are shown by way of example m the drawings and will herem be descπbed in detail. It should be understood, however, that the drawmgs and detailed descπption thereto are not mtended to limit the mvention to the particular form disclosed, but on the contrary, the intention is to cover all modifications, equivalents and alternatives falling within the spint and scope of the present mvention as defined by the appended claims. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS As descπbed above, enable signals EP1-EP5 and EN1-EN5 may be asserted separately in order to enable one or more transistors of dπver pairs 16-20 of dπver section 14 The dπve strengths of transistors enabled simultaneously (i.e., operated in parallel) are additive, and the output impedance ZOUT of I O buffer 10 is a parallel combination of the impedances of all of the enabled transistors The testmg of I/O buffer 10 may be accomplished m a highly efficient manner by recognizing that it is only necessary to determine the output impedances of each mdividual transistor within dπver section 14. Tests in which multiple transistors are enabled simultaneously may be eliminated as the results can be predicted based upon the determinations of the output impedances of the mdividual transistors The output impedances of the individual transistors may vary over wide ranges (e g., ±20%) between lots due to manufacturing vaπations On the other hand, the relative output impedances of individual transistors formed simultaneously upon and within the same semiconductor substrate vary to a much lesser degree (e g , +10%). As a result, it is advantageous to determine the ratios of the output impedances of the mdividual transistors m addition to the absolute values of the output impedances Fig. 3 a is a diagram illustrating how the output impedance ZOUT of I/O buffer 10 may be determmed when output data signal DATA_OUT is a logic "1" at the DATA_OUT termmal of I O buffer 10. Output impedance ZOUT of I/O buffer 10 is represented by a resistor 22 connected between first power supply voltage VDD and the DATA_OUT termmal. A vaπable resistor 24 may be connected between the DATA OUT termmal and second power supply voltage VSS as shown m Fig. 3a. The resistance value of vaπable resistor 24 may be vaπed until voltage VOUT at the DATA_OUT termmal (l e., between the DATA_OUT termmal and second power supply voltage VSS) is midway between first power supply voltage VDD and second power supply voltage VSS. Normally, first power supply voltage VDD is referenced to second power supply voltage VSS, thus vaπable resistor 24 may be vaπed until voltage VOUT at the DATA_OUT termmal is equal to VDD/2. Herembelow, first power supply voltage VDD is assumed to be referenced to second power supply voltage VSS. When VOUT is equal to VDD/2, the resistance value of vanable resistor 24 is equal to output impedance ZOUT of I/O buffer 10. The resistance value of vaπable resistor 24 is also equal to VOUT /TOUT, where IOUT is the cuπent flowing out of the DATA_OUT termmal and through vaπable resistor 24 Smce VOUT is known to be equal to VDD/2, output impedance ZOUT of I/O buffer 10 may be determmed from IOUT In other words, output impedance ZOUT of I/O buffer 10 may be determmed by measuring cuπent IOUT flowing out of the DATA OUT termmal when the voltage at the DATA OUT termmal is forced to VDD/2. Fig. 3b is a diagram illustrating how output impedance ZOUT of I/O buffer 10 may be determmed when output data signal DATA_OUT is a logic "0" at the DATA_OUT termmal of I O buffer 10 In this case, output impedance ZOUT of I/O buffer 10 is represented by a resistor 26 connected between second power supply voltage VSS and the DATA_OUT termmal. Vaπable resistor 24 may be connected between the DATA_OUT termmal and first power supply voltage VDD as shown m Fig. 3b. The resistance value of vaπable resistor 24 may agam be vaπed until voltage VOUT at the DATA_OUT termmal is equal to VDD/2. As before, when VOUT is equal to VDD/2, the resistance value of vaπable resistor 24 is equal to output impedance ZOUT of I/O buffer 10 The resistance value of vaπable resistor 24 is also equal to (VOUT - VDD)/ IOUT It i . noted that m this case, IOUT is a negative value, as is (VOUT - VDD) Smce both VDD and VOUT are known values, output impedance ZOUT of I/O buffer 10 may be determmed from lout. In other words, output impedance ZOUT of I/O buffer 10 may agam be determmed by measuring cuπent lout flowing out of the DATA_OUT termmal when the voltage at the DATA_OUT termmal is forced to VDD/2 As output impedance ZOUT of I/O buffer 10 may be determmed by measuring cuπent IOUT flowing out of the DATA_OUT termmal when the voltage at the DATA_OUT termmal is forced to VDD/2, it is not necessary to calculate ZOUT and compare the impedance to minimum and maximum values of an acceptable range of impedance values. The mmimum and maximum values of the acceptable range of impedance values may be converted mto minimum and maximum values of an acceptable range of output cuπent IOUT when the voltage at the DATA_OUT termmal is forced to VDD/2 When a value of IOUT measured during testmg lies withm the convened minimum and maximum output cuπent values, the output impedance ZOUT of I/O buffer 10 is within the acceptable range of impedance values Thus measured values of IOUT may be compared to the converted minimum and maximum cuπent values in order to ensure the output impedance ZOUT of I O buffer 10 is withm the acceptable range of impedance values. Similarly, the ratios of output impedances of the transistors of dπver section 14 may be determmed by ratios of the coπespondmg measured values of IOUT. Such conversions reduce testmg time when testmg hardware or software must determine if output impedances of I/O buffers he withm acceptable ranges of impedance values during testmg. An efficient method for testmg controlled-impedance I/O buffer 10 will now be descπbed. First, a testmg table for the n-channel transistors m dπver section 14 may be generated. Table 1 below is an exemplary testmg table for the n-channel transistors withm dπver section 14 of I O buffer 10 Table 1. Exemplary Testing Table For N-Channel Transistors of I/O Buffer 10. Enable Minimum Maximum Minimum Maximum Input Cuπent Cuπent Cuπent Cuπent Pattern Value Value Ratio Ratio 00001 -4.0 -6.0 1.0 1.0 00010 -8.0 -12.0 1.9 2.1 00100 -16.0 -24.0 3.6 4 4 01000 -32.0 -48.0 7.2 8.8 10000 -64.0 -96.0 15.4 17.6 A first column of the testmg table mcludes enable signal mput patterns. Each enable signal mput pattern has 5 bit positions, one for each enable signal EN1- EN5. From left to nght, each bit position of an enable signal mput pattern coπesponds to EN5, EN4, EN3, EN2, and EN1. A logic "0" in a bit position disables (I e , "turns off) the coπespondmg n-channel transistor m dπver section 14, and a logic "1" m a bit position enable (i.e., "turns on") the coπespondmg n-channel transistor. Each enable signal mput pattern m the testmg table has a logic "1" m only one bit position, thus each enable signal mput pattern enables one and only one of the n-channel transistors m dπver section 14. The number of enable signal mput patterns m the testmg table is equal to the number of n-channel transistors m dπver section 14. The enable signal mput patterns are aπanged withm the testmg table m mcreasmg order of dπve strength of the n-channel transistor enabled by the pattern Second and third columns of the testmg table mclude minimum and maxunum values of output cuπent IOUT. During testmg, a smgle n-channel transistor is enabled, the voltage at the DATA_OUT termmal is forced to VDD/2, and the output cuπent IOUT flowing out of the DATA_OUT termmal is measured. It is noted that the values of output cuπent IOUT m the second and third columns of the testmg table are negative as cuπent flows into the DATA OUT termmal under the above conditions. Minimum and maxunum output impedance values for each of the n-channel transistors m dπver section 14 are converted to coπespondmg maximum and mmimum values of output cuπent IOUT as descπbed above. The second and third columns of the testmg table thus reflect mmimum and maximum values of acceptable ranges of output cuπent IOUT for enabled n-channel transistors m dπver section 14. Fourth and fifth columns of the testmg table include minimum and maximum cuπent ratios. The measured output cuπent IOUT of each n-channel transistor is divided by the output cuπent of the n-channel transistor of the dπver pair with the smallest dπve strength (l e , dπver pair 16) m order to determine a cuπent ratio The minimum and maximum cuπent ratios m the fourth and fifth columns of the testmg table reflect minimum and maximum values of acceptable ranges of cuπent ratios for the enabled n-channel transistors m dπver section 14 Figs.4a-b illustrate a flow chart of one embodiment of a method for testmg a controlled-impedance I/O buffer such as I/O buffer 10. In a step 30, an enable signal mput pattern is fetched. Each enable signal mput pattern enables only one n-channel transistor m dnver section 14, and the enable signal mput patterns are selected in mcreasmg order of dπve strength of the n-channel transistors. The next enable signal mput pattem may be selected from the testmg table descπbed above. When step 30 is executed for the first time, the enable signal mput pattern '00001' is fetched. In a step 32, the enable signal mput pattern is applied to the n-channel transistors. When I/O buffer 10 is the I/O buffer under test, the bits of the enable signal mput pattern are applied to coπespondmg enable signals EN1- EN5 of pre-dnver section 12. It is noted that signals may also applied to enable signals EP1-EP5 of pre-dπver section 12 to ensure all of the p-channel transistors of dπver section 14 are disabled When a logic "0" is applied to the DATA_IN termmal of I/O buffer 10 during a step 34, one of the n-channel transistors m dπver section 14 is enabled As descπbed above, pre-dπver section 12 may mclude logic elements which produce n-channel transistor control signals N1-N5 from enable signals EN1-EN5 and mput data signal DATA_IN When a logic "0" is applied to the DATA IN termmal of I/O buffer 10, pre-dπver section 12 may produce n-channel transistor control signals N1-N5 such that the logic values of control signals N1-N5 are the same as the logic values of respective enable signals EN1-EN5. Thus a selected n-channel transistor m dπver section 14 is enabled when a logic "0" is applied to the DATA_IN termmal of I/O buffer 10, the selected transistor bemg determmed by the enable signal mput pattern (i.e., enable signals EN1-EN5). In a step 36, a voltage of VDD/2 is forced upon the DATA_OUT termmal. This may be accomplished by connecting a vaπable resistor between the DATA_OUT termmal and power supply voltage VSS , and varying the resistance of the vaπable resistor until voltage VOUT at the DATA_OUT termmal is equal to VDD/2 as descπbed above. Output cuπent IOUT flowing out of the DATA OUT termmal with voltage VOUT equal to VDD/2 is measured in a subsequent step 38 In steps 40 and 42, measured output cuπent IOUT is compared to pre-established mmimum and maximum current values. The minimum and maximum cuπent values may be determmed by converting coπespondmg minimum and maxunum output impedance values to cuπent values as descπbed above, and may be found m respective columns two and three of the testmg table coπespondmg to the row mcludmg the enable signal mput pattern. If the measured output cuπent IOUT is not greater than or equal to the mmimum cuπent value m step 40, or less than or equal to the maximum cuπent value m step 42, the failure of the I/O buffer to meet the output cuπent (i.e., output impedance) specification may lead to rejection of the I/O buffer m a step 43. It is noted that the testmg may be continued m order to obtam additional information A ratio of the measured n-channel transistor output cuπent IOUT to the measured output cuπent for the n- channel transistor havmg the smallest dπve strength (e g , the n-channel transistor of dπver pair 16 m dπver section 14) is computed m steps 44, 46, and 48. As descnbed above, the enable signal mput patterns m the testmg table are aπanged in mcreasmg order of drive strength of the n-channel transistor enabled by the pattern Thus the first enable signal mput pattern enables the n-channel transistor havmg the smallest dπve strength A reference cuπent is set equal to the output cuπent of the n-channel transistor havmg the smallest dπve strength m steps 44 and 46. In a step 48, the current ratio for the n-channel transistor enabled by the enable signal mput pattern is computed by dividing the measured output cuπent IOUT by the reference cuπent. In steps 50 and 52, the cuπent ratio calculated m step 48 is compared to pre-established minimum and maximum cuπent ratios. The minimum and maximum cuπent ratios may be the minimum and maximum values of an acceptable range of cuπent ratios for the enabled n-channel transistor as descπbed above, and may be found m respective columns four and five of the testmg table coπespondmg to the row including the enable signal mput pattern. If the measured cuπent ratio is not greater than or equal to the minimum cuπent ratio m step 50, or less than or equal to the maximum cuπent ratio m step 52, the failure of the I/O buffer to meet the cuπent ratio specification may lead to the I/O buffer bemg rejected m a step 53. It is noted that the testmg may be contmued m order to obtain additional information A step 54 causes the above testmg steps to be repeated until there are no more enable signal mput patterns. The above steps may be repeated in order to test the portion of I/O buffer 10 pertaining to the p-channel transistors of dπver section 14. In step 30, each enable signal mput pattern enables only one p-channel transistor in dπver section 14, and the enable signal mput patterns are aπanged m mcreasmg order of dπve strength of the p- channel transistors. When step 30 is executed for the first time, an enable signal mput pattern '00001' may be fetched, where pre-dπver section 12 produces p-channel transistor control signals P1-P5 such that the logic values of control signals P1-P5 are the logical complements of respective enable signals EP1-EP5. In steps 32 and 34, pre- dnver section 12 may respond to a logic "1" applied to the DATA_IN termmal of I/O buffer 10 by generating control signals P1-P5. It is noted that signals may also applied to enable signals EN1-EN5 of pre-dnver section 12 to ensure all of the n-channel transistors of dπver section 14 are disabled. In step 36, the vaπable resistor may be connected between the DATA_OUT termmal and power supply voltage VDD, and the resistance of the vaπable resistor may be vaπed until voltage VOUT at the DATA OUT termmal is equal to VDD/2 as descπbed above. Fig. 5 is a block diagram of one embodiment of an apparatus 56 for testmg controlled-impedance I/O buffer 10. Apparatus 56 mcludes a test unit 58 coupled to I/O buffer 10. Test unit 58 provides signals EN1-EN5, DATA IN, and EP1-EP5 to I/O buffer 10 during testmg, and also has an electπcal connection to the DATA OUT termmal of I/O buffer 10. Test unit 58 may embody circuitry for accomplishing the above descπbed method of testmg I/O buffer 10 In the embodiment of Fig. 5, test unit 58 mcludes a memory umt 60 for storing the enable signal mput patterns, and the minimum and maxunum cuπent values and ratios coπespondmg to each enable signal mput pattem. Memory umt 60 may store testmg tables for the n-channel and p-channel transistors as descπbed above. During testmg of the n-channel transistors, test unit 58 may select and apply enable signal mput patterns to EN1-EN5, and may apply a logic "0" to the DATA_IN termmal of I/O buffer 10 During testmg of the p-channel transistors, test unit 58 may select and apply enable signal mput patterns to EP1-EP5, and may apply a logic "1" to the DATA IN termmal. Test unit 58 may mclude means for forcmg a voltage of VDD/2 upon the DATA_OUT termmal, and for measurmg the resultant output cuπent IOUT flowing through (e.g , out of) the DATA_OUT termmal Test unit 58 may mclude circuitry for comparing measured output cuπents IOUT the minimum and maximum cuπent values, calculating cuπent ratios, and comparmg the cuπent ratios to the mmimum and maximum cuπent ratios

Claims: WHAT IS CLAIMED IS: 1. A method for testmg an input/output (I/O) buffer mcludmg a plurality of transistors coupled to a data output termmal, the method compnsmg: enablmg a smgle one of the plurality of transistors; forcmg a predetermmed electncal voltage level upon the data output termmal; measurmg an electπcal cuπent flowing through the data output termmal with the predetermmed voltage level forced thereupon; comparing the measured electncal cuπent to a predetermmed minimum cuπent value and a predetermmed maximum electncal cuπent value; computing a ratio of the measured electncal cuπent to a reference cuπent; and comparing the computed cuπent ratio to a predetermmed minimum cuπent ratio and a predetermmed maximum cuπent ratio. 2. The method as recited m claim 1, wherem the dπve strength of a given transistor is a measure of the amount of electπcal cuπent the transistor causes to flow through the data output terminal when enabled 3. The method as recited m claim 1, wherem at least one of the plurality of the transistors has a mmimum dπve strength, and wherem the reference cuπent is the electπcal cuπent flowmg through the data output termmal with the predetermmed voltage level forced thereupon when the smgle enabled transistor has the minimum dπve strength. 4. The method as recited m claim 1 , wherem the I/O buffer further compπses a plurality of mputs for enabling the plurality of transistors and a data mput termmal, and wherem the enablmg compnses applymg signals to the mputs and the data mput termmal such that a smgle one of the plurality of tr.> ' .istors is enabled 5. The method as recited m claim 4, wherem the signals applied to the mputs of the I/O buffer compnse an enable signal mput pattern. 6. The method as recited m claim 1 , wherem the plurality of transistors compπses a plurality of p-channel transistors coupled between a first power supply voltage and the data output termmal and a plurality of n-channel transistors coupled between the data output termmal and a second power supply voltage, and wherem the predetermmed electncal voltage level used during the forcmg is midway between the first and second voltage levels. 7 The method as recited m claim 1 , wherem the first voltage level is a referenced to the second voltage level such that the predetermmed electπcal voltage level used during the forcing is half the first voltage level 8. The method as recited m claim 1, wherem the measurmg compπses measuring an electπcal cuπent flowmg through the data output termmal m a direction away from the I/O buffer when the data output termmal is forced to the predetermmed voltage level 9. The method as recited m claim 1 , wherem the predetermmed mmimum electπcal cuπent value is determined from a maximum output impedance value for the I/O buffer when the smgle one of the plurality of transistors is enabled. 10. The method as recited m claim 1, wherem the predetermmed maximum electπcal cuπent value is determined from a mmimum output impedance value for the I/O buffer when the smgle one of the plurality of transistors is enabled. 11. The method as recited m claim 6, wherem at least one of the plurality of n-channel transistors has a reference dπve strength, and wherem a remamder of the plurality of n-channel transistors have a dπve strength greater than the reference dπve strength, and wherem the predetermmed minimum and maximum cuπent ratios used when a given n-channel transistor is the smgle transistor enabled are based upon a ratio of the drive strength of the enabled n-channel transistor to the reference dπve strength. 12. A method for testmg an input/output (I/O) buffer including a plurality of transistors, wherem a first portion of the plurality of transistors are coupled between a power supply voltage VDD and a data output termmal, and wherem a second portion of the plurality of transistors are coupled between the data output termmal and a reference power supply voltage, and wherem the I/O buffer has a plurality of mputs for enablmg the plurality of transistors, the method compπsmg: applymg an enable signal mput pattern to the mputs of the I/O buffer, wherem the enable signal mput pattern enables a smgle one of the plurality of transistors, forcmg an electπcal voltage of VDD/2 upon the data output termmal, measuring an electπcal cuπent flowing through the data output termmal with the electπcal voltage VDD/2 forced thereupon, comparing the measured electncal cuπent to a predetermmed minimum electπcal value and a maximum electπcal cuπent value; computing a ratio of the measured electncal cuπent to a reference cuπent, comparing the computed cuπent ratio to a predetermmed mmimum cuπent ratio and maximum cuπent ratio; and repeating the above steps until each of the plurality of transistors has been enabled 13. The method as recited m claim 12, wherem at least one of the plurality of the transistors has a mmimum dπve strength, and wherein the reference cuπent is the electrical cuπent flowing through the data output terminal with the electπcal voltage VDD/2 forced thereupon when the smgle enabled transistor has the minimum dπve strength. 14. The method as recited m claim 12, wherem the measurmg compnses measuring an electπcal cuπent flowmg out of the data output termmal when forced to the predetermmed voltage level. 15. The method as recited m claim 12, wherem the predetermined minimum electncal cuπent value is determined from a maximum impedance value for the I/O buffer when the smgle one of the plurality of transistors is enabled. 16. The method as recited m claim 12, wherem the predetermmed maximum electncal cuπent value is determined from a mmimum output impedance value for the I/O buffer when the smgle one of the plurality of transistors is enabled 17. The method as recited m claim 12, wherem the first portion of the plurality of transistors compπses a plurality of n-channel transistors and the second portion of the plurality of transistors compπses a plurality of p- channel transistors 18. The method as recited m claim 17, wherem at least one of the plurality of n-channel transistors has a reference dnve strength, and wherem a remamder of the plurality of n-channel transistors have a dnve strength greater than the reference drive strength, and wherem the predetermmed mmimum and maximum cuπent ratios used when a given n-channel transistor is the smgle enabled transistor are based upon a ratio of the dnve strength of the enabled n-channel transistor to the reference dπve strength. 19. An apparatus for testmg an input/output (I/O) buffer, wherem the I/O buffer mcludes a plurality of transistors, and wherem a first portion of the plurality of transistors are coupled between a power supply voltage VDD and a data output terminal, and wherem a second portion of the plurality of transistors are coupled between the data output termmal and a reference power supply voltage, and wherem the I/O buffer has a plurality of mputs for enablmg the plurality of transistors, the apparatus compnsmg a test umt adapted for couplmg to the I/O buffer, wherem the test unit compnses a memory unit for storing an enable signal mput pattern, a mmimum electrical cuπent value, a maximum electπcal cuπent value, a mmimum cuπent ratio, and a maximum cuπent ratio, and wherem the enable signal mput pattern enables a smgle one of the plurality of transistors; and wherem durmg use the test unit applies the enable signal mput pattern to the plurality of mputs of the I/O buffer, forces an electπcal voltage of VDD/2 upon the data output termmal, measures an electrical cuπent flowing through the data output termmal with electncal voltage VDD/2 forced thereupon, compares the measured electrical cuπent to the mmimum and maximum electπcal cuπent values, computes a ratio of the measured electrical cuπent to a reference cuπent, and compares the computed cuπent ratio to the minimum and maximum cuπent ratios. 20. The method as recited in claim 19, wherein at least one of the plurality of the transistors has a minimum drive strength, and wherein the reference cuπent is the electrical cuπent flowing through the data output terminal with the electrical voltage of VDD/2 forced thereupon when the single enabled transistor has the minimum drive strength.

Inventors: ELACHKAR SAMIR M, LE THOMAS, ELACHKAR, SAMIR, M., LE, THOMAS
Applicants: SUN MICROSYSTEMS INC, SUN MICROSYSTEMS, INC.
Application year: 2000
Main classification: G11C29
IPC codes: G01R31, H03K19