Digital potentiometers are resistive elements that are controlled by digital codes. They differ from their analog counterparts in that they are silicon-based rather than mechanical devices. Instead of turning a shaft or wiper to change resistance, as is done with an analog potentiometer, the user simply sends the appropriate code that corresponds to the resistance that's needed. A digital potentiometer typically contains a resistive ladder. Different digital codes correspond to different taps on this ladder. By changing the code and therefore the location on the ladder, the user changes the output resistance of the digital potentiometer. Some of these devices have no on-chip memory, while others incorporate nonvolatile memory for saving the “wiper” position. Still other digital potentiometers are one-time programmable (OTP). As is the case with traditional potentiometers, digital pots have three terminals (top, bottom and wiper), which provides a voltage divider function. And just as with the mechanical versions, some digital pots connect the wiper to the low-side or high-side terminal, providing a rheostat function.