I have a log/anti log application that requires “slightly” matched diodes - something better than you get just by grabbing a bunch of 1N4148s from a bin. I need the matching to be across each group of 3 diodes. The goal is to be cheap, the relative accuracy of the circuit is somewhat loose - +/-20% Vf-vs-I match is plenty good.

All the diodes are continuously forward biased and operate over a 2 decade current range. The bandwidth is <1kHz.

I was wondering whether the flyback diodes inside of an ULN200x family of chips could be used for this purpose, assuming that otherwise the chip’s absolute maximum ratings won’t be exceeded (power dissipation, diode current, etc.).

My presumption is that they’d be better matched initially, and better thermally tracking, than a bunch of discrete diodes on a common heat spreader, say several leaded SMD diodes - not selected/matched - mounted close together on an aluminum substrate board.

I will likely post my own measurements, when I get a chance, as an answer - but I was looking for any suggestions/input anyone might have - as well as any alternative chips that could be conscripted for this purpose.

  • 2
    \$\begingroup\$ I have seen this in a professional testing equipment, and was surprised about the idea, but I don't know the engineering background of this decision. I only remember a low leakage current. \$\endgroup\$
    – Jens
    Commented Aug 7, 2022 at 5:37
  • \$\begingroup\$ I used to buy didoes in lots of 10 to 100, and they usually came in "sticky paper stripes". I guess it is very likely that the didoes stuck on each same stripe are from the the same chip/wafer, so should be very electrically matched. Reference: AliExpress 14 Values ​​Diode Kit, 350 Pieces, 1N4001, 1N4004, 1N4007, 1N5404, 1N5406, 1N5408, RL207, 1N5817, 1N5819, 1N5822, UF4007, FR107, 1N4148 HKD96.63/lot(350 pieces ) / to continue, ... \$\endgroup\$
    – tlfong01
    Commented Aug 7, 2022 at 5:55

5 Answers 5


I've measured thermal tracking on SOT23-6 dual matched transistors like DMMT3904, by sending a current pulse in one transistor and measuring the Vbe of both. Thermal coupling is very poor. They're two independent transistor dies, not monolithic, and the only thermal link between them is the plastic package. So they'll be at the same temperature only if ambient air heats the package, but not if they're self-heating or heated differently through the pins.

So you'd need your diodes to be on the same chip, a monolithic array, for matching and thermal tracking. Using ULN2003 is a nice idea.

There are also Transil diode arrays that might fit the purpose. Series resistance is very low due to the huge max current, but other diode characteristics like leakage and capacitance may not be adequate. This one seems to be monolithic (the datasheet mentions it). There are other tiny flip-chip multichannel ESD protection diodes where you can be sure it's monolithic because you can actually see the chip.

There are simple diode arrays but it is difficult to know if they're monolithic or just some diode chips on a common leadframe. That would still give good thermal tracking, but not matching. For example this one's package hints that all the diodes are on the center thermal pad, but it doesn't say whether they are independent diode dies or monolithic.

I'm interested in what you find...

EDIT: I've stumbled upon this, MMAD1108 is a monolithic 8 diode array. Nice thing is they all have independent pins. In fact searching for TVS diodes with N channels and 2N pins yields more diode arrays with independent pins. Here's a "monolithic matched diode array" UC3611 from TI, but they don't spec how matched they are.


I think the answer is a qualified yes, at least at DC. I haven’t checked anything at AC just yet.

Results so far:

I’ve picked 5 ULN2003 from the junk bin - all different lots, and from at least 2 different manufacturers. At 1mA, diode forward voltages match +/-0.5mV across the chip, at room temp, in all 5 of them.

I’ve ran those chips through a range of currents, from 1uA to 8mA, and 5 out of 7 diodes usually match within +/-0.1mV of each other. Tracking is almost an order of magnitude better.

Here's the static (DC) raw data for one of the chips, and the plots of it, including a black reference line (manually fitted). Highest precision is achieved within two orders of magnitude. Towards lower current, the mechanical stresses become an issue, and my test setup introduces some repeatability error as well since it's thermally rather crude.

enter image description here enter image description here

I’m not disappointed at all!

It looks like that the diodes closest to the sides of the die run at a slightly different temperature than the ones towards the middle. So a rule of thumb could be that a ULN200x has 5 diodes that are best matched - channels 2 through 6. My application needs three, so I’ll use channels 3,4,5 for that.

The diodes track well across all channels, but there's a slight channel-to-channel matching error - well under 1%, and mostly around 0.1%. That's an excellent result for such a basic chip, I think.

The voltages were measured with a DVM with input impedance of 10 Gohm.

I’ve also scoured the schematics of a variety of low- and high-side bipolar driver chips for any B-E junctions that could be accessed externally - rather than just the diodes (if present). Nothing promising yet.

For ULN2003, I've also measured the output V-I curves when all channels are turned on with 5V at the inputs. The voltage drop across the output transistor does not follow the exponential law. This is not unexpected, since the transistors are saturated and act like resistors, more-or-less.

I’ll be coming back to this answer and editing stuff in as I find out more.

  • 2
    \$\begingroup\$ Great! From this die shot, thermal matching should be alright, the diodes are pretty close wiki2.org/en/ULN2003A#/media/… \$\endgroup\$
    – bobflux
    Commented Aug 8, 2022 at 22:46
  • 1
    \$\begingroup\$ Very good investigative work! Nice! \$\endgroup\$ Commented Aug 11, 2022 at 7:30

While the datasheets don't specify any of these diode characteristics, at low currents (say < 10 mA), where the resistance of the metal interconnect won't come into play, they will likely match extremely well.

You should characterize some to see over what current range they will follow the exponential law -- at low currents, they may are leaky; at higher currents, some parasitic series resistance may have an effect. In addition, you might find that the VF of the diodes does depend on the VCOM voltage w.r.t. GND.


It should work. You might have to connect the GND pin to a negative bias point to keep sneak paths from conducting.

They're diodes so they don't respond in as ideal a fashion as diode-connected transistors do (most likely \$\eta \ne 1.0)\$, which may compromise this particular application.

  • \$\begingroup\$ My application is rather crude: limiting dissipation in an active rectifier/pre regulator that keeps the “raw DC” capacitor charged in a typical rectifier-capacitor-regulator scenario. If I can keep the accuracy of power regulation to say 20-50% within a span of a couple of volts, that’s plenty enough for me. Their non-ideality might just be good enough for this. The ultimate test will come in the target application. \$\endgroup\$ Commented Aug 8, 2022 at 18:52

The CA3046 transistor array can be used to provide a minimum of 4 B-E diodes. This is a monolithic die which guarantees the diode matching to 5mV, and the thermal matching should be excellent.

  • \$\begingroup\$ My concern is that while that chip is available second-hand and is made again by a factory in Ukraine IIRC, it’s not a part you can just buy from DigiKey. Good for retro stuff in small quantities, though. I was trying for a solution that’s easier to buy legit without worrying about counterfeits or large minimum quantities from Rochester. There is HFA3046… from Renesas, for $12 apiece. Nuts. \$\endgroup\$ Commented Aug 7, 2022 at 22:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.