Find resistor values for arbitrary programmable-amplifier gains

-August 03, 2006

When available fixed-gain values match design requirements, a PGA (programmable-gain-amplifier) IC offers a drop-in choice, but what does a designer do when a suitable PGA is unavailable? Before the PGA's advent, a circuit designer who needed selectable, fixed amounts of gain chose a suitable operational amplifier and designed a switched-resistor gain-setting network. This Design Idea discusses two methods of designing the desired resistive network.

Figure 1 shows a series-ladder-resistor network comprising a string of resistors whose junctions connect to switch-selectable taps that determine the circuit's gain. Little current flows through the switch, and the resistance of the switch thus doesn't affect the design. A circuit with N discrete-gain values requires an N-position switch, usually an analog multiplexer, and N+1 resistors in its ladder. Equation 1 describes the circuit's gain in the general case:


You can solve Equation 1 for the resistor summations and expand a few terms as follows:

(4, 5)



Next, normalize R1 to 1Ω and solve the equations for R1:

(7, 8)



A network that synthesizes N gain values results in an N×N matrix whose upper echelon equals the desired gains minus one, in ascending order, and its lower echelon equals negative one. To produce the resistor values for the desired gains, invert the matrix and calculate its dot product with a unity matrix. For example, a circuit requiring four gain values of three, five, 24, and 50 also requires five resistors. Stuffing and solving the matrix yields:


Scale the resistors' values to 1 kΩ and select the closest available standard resistor values to produce gains of:


Figure 2 shows a parallel-resistor-ladder network. To select a gain value, connect an additional resistor in parallel with the other resistors. A circuit with N discrete gains requires N resistors in the ladder; an additional gain resistor, RG; and N–1 switches. Equation 14 describes the circuit's gain in the general case:


and Equation 15 describes the parallel-resistor combination for each gain:


The nth value of RP equals the nth–1 value of RP in parallel with the ladder's nth resistor. Solve the following equations for the nth resistor value:





To find the desired network's resistors, select the desired gain values and RG and then use Equation 14 to calculate the parallel values. Use the resulting values to solve Equation 15 and find the required resistor values. As in the previous example, a circuit must produce gain values of three, five, 24, and 50. Four gain values require four resistors. Let RG=1Ω. Solving Equation 14 for the parallel-values matrix yields:


Substituting these values into Equation 15 yields the resistors' values:

(20, 21, 22)



Scaling to 1 kΩ and selecting the closest available standard-value resistors yields gains of:


Reference 1 provides a review of the matrix math.

  1. Freeman, Larry, "Review of Matrices," Math Refresher, Dec 19, 2005,

Loading comments...

Write a Comment

To comment please Log In