Embodiments relate to the field of electronic circuits. In particular to the calibration of programmable input/output pad components at an operating voltage using an external reference resistor.
Programmable input/output (I/O) interfaces are programmed to be compatible with various I/O protocols. To accomplish this, the programmable I/O pad components (such as resistors and transistors) are calibrated. Implementations use exact replicas of the programmable I/O pad, an external resistor, and a fixed voltage to measure the effective resistance of the pad at the fixed voltage. The external resistor is used because the resistor is sufficiently divorced from the device's presently-occurring operating conditions, and therefore remains stable enough to provide a reliable reference.
Embodiments will be readily understood by the following detailed description in conjunction with the accompanying drawings. Embodiments are illustrated by way of example and not by way of limitation in the figures of the accompanying drawings.
In the following detailed description, reference is made to the accompanying drawings which form a part hereof, and in which are shown by way of illustration embodiments in which the invention may be practiced. It is to be understood that other embodiments may be utilized and structural or logical changes may be made without departing from the scope of the disclosure. Therefore, the following detailed description is not to be taken in a limiting sense, and the scope of embodiments is defined by the appended claims and their equivalents.
Various operations may be described as multiple discrete operations in turn, in a manner that may be helpful in understanding embodiments; however, the order of description should not be construed to imply that these operations are order dependent. Also, embodiments may have fewer operations than described. A description of multiple discrete operations should not be construed to imply that all operations are necessary. Also, embodiments may have fewer operations than described. A description of multiple discrete operations should not be construed to imply that all operations are necessary.
The terms “coupled” and “connected,” along with their derivatives, may be used. It should be understood that these terms are not intended as synonyms for each other. Rather, in particular embodiments, “connected” may be used to indicate that two or more elements are in direct physical or electrical contact with each other. “Coupled” may mean that two or more elements are in direct physical or electrical contact. However, “coupled” may also mean that two or more elements are not in direct contact with each other, but yet still cooperate or interact with each other.
For the purposes of the description, a phrase in the form “A/B” means A or B. For the purposes of the description, a phrase in the form “A and/or B” means “(A), (B), or (A and B)”. For the purposes of the description, a phrase in the form “at least one of A, B, and C” means “(A), (B), (C), (A and B), (A and C), (B and C), or (A, B and C)”. For the purposes of the description, a phrase in the form “(A)B” means “(B) or (AB)” that is, A is an optional element.
The description may use the phrases “in an embodiment,” or “in embodiments,” which may each refer to one or more of the same or different embodiments. Furthermore, the terms “comprising,” “including,” “having,” and the like, as used with respect to embodiments, are synonymous.
In various embodiments, methods, apparatuses, and systems for calibrating programmable input/output (I/O) pad components using a calibration component—separate from the I/O pad components—a desired operational voltage, and an external reference resistance are provided. Known approaches to calibrating programmable I/O pads include using an external resistor and a fixed voltage along with an exact replica of the I/O pad being configured. Problems with these approaches arise because many I/O pads include transistors, and a transistor's effective resistance is substantially non-linear as a function of operating voltage. Thus, measuring the effective resistance at a fixed operating voltage is not always sufficiently accurate when the desired operating voltage of the I/O pad is different from the fixed voltage. Also, using an entire replica of the I/O pad results in additional complexity and cost.
Embodiments may vary a current through a calibration component modeling an I/O pad component. The current is referenced to an external reference resistor having a stable resistance, the desired operating voltage, and a variable multiplication factor. Embodiments determine when a voltage across the calibration component equals the desired operating voltage, and extrapolates at least one I/O pad configuration parameter from at least the multiplication factor that causes the model component voltage to equal the desired operating voltage. Embodiments may use the multiplication factor to determine an effective resistance across the calibration component at the desired operating voltage, and use that effective resistance to extrapolate the I/O pad configuration parameters.
In embodiments, the calibration components may be near or exact replicas of the I/O pad components for which configuration parameters are extrapolated. In other embodiments, some or all of the calibration components may have different properties from the I/O pad components, but may have sufficient similar operating characteristics as the I/O pad components such that configuration parameters can be extrapolated, even though an effective resistance across the calibration component at the desired operating voltage may be different from the effective resistance across the I/O pad components at the desired operating voltage.
In embodiments, the calibration components may be subject to the same operating conditions as are the programmable I/O pads. That way, determining the effective resistance across calibration components may provide useful information as to the appropriate configuration parameters of the programmable I/O pad. Maintaining an external reference resistor may provide a stable reference resistance such that the programmable I/O pad can be accurately configured to have a resistance according to the desired configuration of the programmable I/O pads.
Calibration structure 103 may comprise one or more calibration components 121 operatively coupled to variable current generator 111 and to comparison circuit 113. In embodiments, calibration component 121 may be a PMOS transistor, a NMOS transistor, a resistor, or other component. Measurement structure 101 may be configured to vary the variable current through calibration component 121, as it receives incrementally larger or smaller multiplication factor inputs. Comparison circuit may be configured to compare the voltage across calibration component 121 to desired operating voltage 115 and to produce a comparison signal indicating which is larger. In this way, measurement structure 103 may effectively generate a virtually-variable stable resistor for use to compare with the effective resistance of calibration component 121 at the desired operating voltage 115.
Variable current generator 211 may be configured to generate a variable current through calibration component 221, based on desired operating voltage 215, the multiplication factor, and external reference resistor Rext. Comparison circuit 213 may be configured to generate the comparison signal indicating one or more of whether the voltage across calibration component 221 is greater-than, less-than, greater-than-or-equal-to, or less-than-or-equal to desired operating voltage 215.
Configuration logic 205 may be configured to receive a comparison signal from comparison circuit 213. Configuration logic 205 may be configured to determine a multiplication factor that causes a state change in the comparison signal. Configuration logic 205 may be configured to extrapolate, from this determined multiplication factor, one or more configuration parameters for programming programmable I/O pad 207 and/or I/O pad component 231.
In embodiments, measurement structure 201, calibration structure 203, configuration logic 205, and programmable I/O pad 207 may all be included within a single integrated circuit. External reference resistor Rext may be an external resistor, sufficiently shielded from the current operating conditions of calibration structure 203 and programmable I/O pad 207.
In embodiments, the layouts of calibration components 221 in calibration structure 203 may be carefully controlled during manufacture such that their operating characteristics closely match pad component 231 in I/O pad 207. Thus, knowledge of their effective resistances at desired operating voltage 215 may be useful to determine the operating characteristics of the I/O pad components at the same voltage. In embodiments, calibration components may be the same as pad component 231. In other embodiments, it may be a scaled version of pad component 231. In embodiments, several I/O pads may share the same calibration components. This may be effective, for example, where several I/O pads are in a bank sharing a single supply voltage. In such cases, the local process variations may be small. In embodiments, calibration components 221 may be smaller in scale than I/O pad component 231. The configuration logic may then use simple calculations to determine the effective resistance of I/O pad components 231 from the effective resistance of calibration components 221.
Calibration structure 350 may include one or more calibration components such as PMOS transistors 353 and 355, NMOS transistor 355, and resistor 357. In embodiments, more or fewer calibration components may be included. A series of pass transistor switches (having with calibration control points N1, N2, N3, P1, and P2) may be operable to selectively couple one of these calibration components to differential amplifier 307. MES_P switches may be operable to couple the PMOS transistors to the negative (“−”) terminal of differential amplifier 307, as well as to couple voltage VIO to the positive (“+”) terminal of amplifier 307. MES_N switches may be operable to couple NMOS transistor 359 and/or resistor 357 to the positive terminal of amplifier 307, and the negative terminal of amplifier 307 to ground.
To measure the effective resistance of the PMOS transistors, configuration logic (not shown) may be configured to activate the MES_P switches, switch N1, and one of P1 or P2, depending on which PMOS transistor's effective resistance is needed. Enabling switch N1 may activate current mirror 361. Current mirror 361 may be configured to duplicate variable current Iz through one of PMOS transistors 353 or 355 as current Ip. Current Ip through one of PMOS transistors 353 or 355 may generate a voltage Vp on wire segment P. Amplifier 307 may be configured to determine an absolute difference between the negative terminal voltage and the positive terminal voltage. Thus, by selectively coupling wire segment P to the negative terminal and the positive terminal to voltage VIO, amplifier 307 may output a voltage equal to the voltage across one of PMOS transistors 353 or 355.
Similarly, activating switches MES_N and switch N3 may couple wire segment N to the positive terminal of amplifier 307 and the negative terminal to ground. Thus, current Iz may be driven through NMOS transistor 359, and generate voltage Vn on wire segment N. Amplifier 307 may output a voltage equal to the voltage across NMOS transistor 359, which may also be equal to voltage Vn on wire segment N. Activating switch N2 instead of N3 may couple configuration resistor 357 to the positive terminal of amplifier 307 to determine the voltage across configuration resistor 357.
Comparator 309 may be configured to compare voltage Voper to the output of amplifier 307 and to produce a signal indicating whether the voltage across one of the configuration components is greater than (or less than) Voper. In embodiments, differential amplifier 307 may reliably reproduce the voltages of wire segment N and/or wire segment P to an input of comparator 309.
Configuration logic (not shown) may be coupled to the output of comparator 309 and may be configured to vary multiplication factor MUL in an incremental fashion—or other fashion—until the output of comparator 309 changes from one state to another. The configuration logic may be configured to determine configuration parameters for a programmable I/O pad (not shown) based on the value of MUL that causes the output of comparator 309 to change from one state to another. For example, the value of the external reference resistance Rext may be known, as are Voper and the value of MUL that causes the output of comparator 309 to change. An effective resistance across one of the configuration components may be determined using these values. In embodiments, the configuration logic may be configured to determine the effective resistance across one of the configuration components as a function of Rext and MUL. Configuration parameter values may be determined based on this effective resistance. In other embodiments, lookup tables may be used to determine the configuration parameter values based on the determined value of MUL that causes the effective voltage across the configuration component to equal desired operational voltage Voper, without calculating the effective resistance.
Although certain embodiments have been illustrated and described herein for purposes of description of the preferred embodiment, it will be appreciated by those of ordinary skill in the art that a wide variety of alternate and/or equivalent embodiments or implementations calculated to achieve the same purposes may be substituted for the embodiments shown and described without departing from the scope of the disclosure. Those with skill in the art will readily appreciate that embodiments of the disclosure may be implemented in a very wide variety of ways. This application is intended to cover any adaptations or variations of the embodiments discussed herein. Therefore, it is manifestly intended that embodiments of the disclosure be limited only by the claims and the equivalents thereof.