Prototyping a hobbyist Analog Multiplier

18 views
Skip to first unread message

John Calhoun

unread,
Feb 19, 2026, 10:48:29 AM (yesterday) Feb 19
to Analog Computers
If you want to add a multiplier to your analog computer build, the AD633 from Analog Devices is the obvious choice. For my purposes though ti appears I cannot use it. I need a multiplier that operates using what I call a hobbyist voltage of 0-5VDC (USB power).


Custom chip aside, there are a number of ways to multiply voltages for an analog computer. One that I have been experimenting with recently is the PWM technique. It's a very clever technique but in a way it feels a bit like cheating since the voltages to be multiplied are sort of "quantized".

As I understand it, an oscillator drives a triangle wave that is then used to vary the duty cycle of a signal that presents either Y (the multiplicand) or the negative value of Y (-Y) to an output. In order to smooth that PWM output back to DC, a resistor and capacitor do the filtering.

I've attached a schematic of the latest version that I have prototyped.


PWM Multiplier Schematic.pdf

John Calhoun

unread,
Feb 19, 2026, 11:08:59 AM (yesterday) Feb 19
to Analog Computers
An MCP6004 quad-op-amp is used since it is a rail-to-rail op-amp capable of running from a 0-5V source (with a 2.5V virtual ground).

Two of the four op-amps are employed to generate the triangle wave. An op-amp is configured as a relaxation oscillator feeding a square wave to a second op-amp that is configured as an integrator. The result is a triangle wave running at about 3 kHz for the values specified in the schematic. The triangle wave is independent of either X or Y multiplicands. It does though make use of virtual ground (VREF)—or 2.5V in this case.

Rather than a dedicated comparator, it was easy (lazy) to use another of the MCP6004 op-amps. The comparator takes the X multiplicand at one input and the triangle wave for the other input. The output of the comparator is either high or low (~5V or ~0V) depending upon the compared voltages. Were the X voltage right in the middle of the range, or 2.5V, half the time the triangle wave is above 2.5V and half the time below. The output then would be a square wave with a 50% duty cycle. Varying the voltage of X then will vary the duty cycle of the output.

That duty-cycled output (PWM) feeds into an analog switch: the CD4053B multiplexer. One of the analog switches is used—its output is our X×Y. What does it switch between? It switches between the Y multiplicand voltage and the negated Y (-Y) multiplicand voltage (we get our negative Y by using the last of the four op-amps as an inverter). For the previous example of a 50% duty cycle, the analog switch will output a signal that averages "machine 0" volts (in the case of our virtual ground, that would be 2.5V).

I've attached a photo of my breadboard prototype as well as a custom perfboard prototype.

IMG_9239.jpeg

IMG_9237.jpeg

John Calhoun

unread,
Feb 19, 2026, 11:15:56 AM (yesterday) Feb 19
to Analog Computers
I tediously spent yesterday afternoon and evening testing the previous PWM multiplier prototype. I dialed in X values in 0.50 increments from 0.50 VDC to 4.50 VDC, while also varying Y from 0.50 VDC to 4.50 VDC. I then recorded the X×Y voltage at the output.

Eighty-one measurements later, I was able to create a spreadsheet showing the resulting voltages I recorded from the multiplier plotted against the expected values. I have not run an error analysis on it to give a hard number, but for what I am calling a hobbyist analog computer, the charts look pretty good.

Attached the spreadsheet results.
PWM Multiplier Spreadhseet.pdf
Reply all
Reply to author
Forward
0 new messages