Hacker News new | past | comments | ask | show | jobs | submit login
Reverse-engineering the TL431: the most common chip you’ve never heard of (2014) (righto.com)
251 points by pngmangi on April 16, 2020 | hide | past | favorite | 46 comments



Richi's Lab[1] also contains a large number of pictures and analysis of decapped ICs. He's also documented his decapping process[2] which uses an oven rather than the dangerous acids, making it more approachable.

It's all in German, but Google Translate does a good enough job that it's easy to follow.

He's got a very interesting comparison of STM32 originals and clones, as well as various voltage references, 555 timers etc.

A personal favorite is the LTZ1000[3]. The die is a piece of art.

[1]: https://www.richis-lab.de/index.htm

[2]: https://www.richis-lab.de/decap-ofen.htm

[3]: https://www.richis-lab.de/REF03.htm


Particularly for German, I highly recommend https://deepl.com it does a much better job than google translate.


They don't seem to support translating a whole page, or am I missing something? Copy/pasting is tedious.


Interesting implementation of an on-chip heater, that's very neat. It really is a piece of art, you'd hang in on your wall at a nice large size just to look at.


Yeah I've seriously considered doing just that, perfect geek art :)


I'm pretty sure there is a niche market for high res prints of historically relevant dies. 4004, i386, 1st pentium, 6502, 6810, 6809, 68000, 741, the ones listed above, 29000, assorted RAM chips, the synth engine from a DX11 and so on. I'd probably buy a couple printed with high quality ink on canvas.


I have a 4004 print as a rug for my son. It's very pretty. Not sure if he'll like it when he hits the age to have opinions about such things, but I'll probably cadge it at that point.


there is something reassuringly "analogue" about how these artifacts get over the technology limits of diffusion/mask/layer systems, to make building blocks:

"I need a resistor? fine: lay out a huge amount of stuff"

"No, I need it more accurate! fine: lay out tracks, now burn fuses to select from unit-scale tracks the 'right' number, and if you want better use a laser to do it"


The general rule for precision electronics is that you want to avoid anything that needs high absolute accuracy (because such things get expensive fast even as discrete components) and instead rely on accurate ratios between parameters, matched pairs of components and inaccurate, but long term stable parameters that can be calibrated out.


> The general rule for precision electronics is that you want to avoid anything that needs high absolute accuracy (because such things get expensive fast even as discrete components) and instead rely on accurate ratios between parameters, matched pairs of components and inaccurate, but long term stable parameters that can be calibrated out.

The omitted serial comma made that really hard to parse for me. In case it did for anyone else, I think that it's:

> (accurate ratios between parameters) and (matched pairs of components) and (inaccurate, but long-term stable, parameters that can be calibrated out).


I've started using hyphens to offset clauses that nest inside of other comma-separated syntactic structures for this reason. It keeps my intent way more clear without forcing the reader to reparse the sentence if they incorrectly guess how the commas are supposed to line up.

> accurate ratios between parameters, and matched pairs of components, and inaccurate - but long-term stable - parameters that can be calibrated out.

is much easier to follow at a glance.


That is what I wanted to rewrite it to, but it is too late to edit the comment ;)


Even more fundamentally, feels amazing to me now that this was all manually laid out!

Each generation of ICs made it easier to create more sophisticated computers which in turn enabled the creation of yet more sophisticated ICs.


The link on forming capacitors leads to a rather interesting old book on IC fabrication, which is still relevant for fundamentals (you can scroll up for other devices):

http://books.google.com/books?id=aByz--9D63wC&lpg=PA31&ots=Z...


> The MagSafe adapter and other laptop adapters use it, as well as minicomputers, LEDdrivers, audio power supplies, video games and televisions.[4]

The word minicomputers is a dead link to https://web.archive.org/web/20170118103738/http://bitsavers...., which is some reference documentation for the HP 1000 A600 computer.


Thanks, I've fixed the link.


Looks like (2014).

Nice explanation. Always fun to see the actual intersection where physical properties create a functional circuit.


Any other suggestions for common yet generally unknown chips?


The NE555-timer is quite a cool little thing.

More common operational amplifiers are also worth looking into (TL072 is one of my favorites).

Lastly, the 7400-series logic chips are SO interesting. If you need the programmer's version of a jigsaw puzzle, try to build somewhat advanced designs using those. It's very fun and a good learning experience (although hard!).

This guy is building a computer on a breadboard – very intersting indeed: https://www.youtube.com/channel/UCS0N5baNlQWJCUrhCEo8WlA


NE555 is not "unknown" (most popular chip in the entire history of electronic engineering), 74xx and TL072 are not unknown either, anyone who knows a little bit of hardware knows the chip.

TL431 is popular yet unknown to most people outside the world of switched-mode power supply. I think the OP wants some popular yet relatively less-known chip to those who is outside of the field.


Thanks for the suggestions. Take a look at project5474.org if you want to see the internals of many 7400-series chips explained. Also, I've done a 555 timer teardown: http://www.righto.com/2016/02/555-timer-teardown-inside-worl...


Maxim's MAX038 (no relation with the 8038), a single chip analog multi waveform generator that goes from 0.1Hz to 20 MHz. Maxim discontinued it in the early 2000s but never replaced it.

https://www.maximintegrated.com/en/products/analog/clock-gen...


This is a good one, endless number of function generator circuits have been built around MAX038, I have a MAX038-based function generator on my desk right now. It's an analog generator and its stability is nowhere near a PLL/DDS-based generator, but it was a robust solution for a low-cost generator.


8051 ( https://en.wikipedia.org/wiki/Intel_MCS-51 ).

Still probably the most common microcontroller in existence, just because it's embedded in so many other ICs. 40 years old this year.


It's amazing how many of those old chips are still out there, but deep inside something else. I came across a 6502 embedded in a sensor SOC about 3 years ago. A 6502 for goodness sake.


Any of the zillion stm8 variants that surround us every where.


Yay for STM8. Cheap as dirt especially for how capable they are, and pretty sweet architecture for an 8 bit.


No GCC support, only 6 registers.. meh.

I think AVR is most friendliest from all 8 bit architectures.


Most 8-bit machines are historical and suffered from the technological limitation of its time, they usually have few registers, an accumulator-based architecture, no multiplication/division instructions, limited addressing mode (especially, no efficient base+addr). So in general, they are not suitable for compiled languages, and hand-tuned assembly is required for good performance. But it actually makes sense for mass-produced applications when simplicity and cost are important. On the other hand, I believe the AVR is one of the only major 8-bit architectures designed using a modern approach, specially optimized for modern C-based programming.


STM8 is a fairly new design although with some similarities to the 6502 and 6800. It does have multiply and divide instructions. It also has a plethora of addressing modes:

    ld a, #42        ; immediate. C constants
    ld a, var        ; direct. C globals and statics
    ld a, (sp, 4)    ; sp relative. C locals and arguments
    ld a, (x)        ; indirect. C *ptr (ptr in register)
    ld a, (x, 42)    ; indexed indirect. C ptr->foo (ptr in register)
    ld a, [ptr]      ; memory indirect. C *ptr (ptr in memory)
    ld a, ([ptr],x)  ; indexed memory indirect. C ptr->foo (ptr in memory)
There are more, but mainly variations in width and PC relative jumps.


Thanks for the correction.


SDCC is the open source compiler of choice for stm8. It's not GCC, but it's enough.

I'd be tempted to agree about the registers except that it takes wider instructions to encode the registers used so a well thought out accumulator based architecture can result in very compact code. stm8 has a lot of one byte instructions and most except for branches and word operations are single cycle as well.


UC2842/3842 (Primary side of a Flyback SMPS), versus TL431 which is on the secondary side.

Power supplies shipped in the past 10 years are most likely using an Onsemi variant of TI UC2842/3842.


Back in the days of tape recorders/players it would be the operational transconductance amplifier like the NE5517.


LM13700 transconductance amplifier; simple chip, decades of history; used in lots of (musical) synthesizers.


TL494. Up till very recent times was widely used in all kinds of PSUs, especially in AT ones.


LM358 op-amp?


Yeah. That and the LM393/LM339 type comparator-not exactly unknown though. But if I see those used appropriately in a circuit, it's the opposite effect of seeing 741 op-amps and 555 timers and TIP120 transistors.

Another one - the 33063/34063 type low-voltage DC/DC switchers. Like the TL431, hobbyists almost never use them but they're all over the place.


I'm a big fan of the LT3574 switching regulator[1]. Makes it very easy to split an input supply out to dual rails for op-amps, or just for general regulation. It provides an isolated output without needing optoisolators or a sense winding on the transformer. And since they're flyback converters they can output a voltage above or below the input, allowing for wide variation in the input needed. And in typical LT fashion the datasheet is extremely thorough and well-written. Including a step-by-step design example. And plenty of reference designs. I use the +-12V output one quite a bit for powering op-amps, it lets me make use of the fixed 5V output third channel on my bench supply!

Not the cheapest though, about $7 each in qt1 on DigiKey, but that's rarely an issue at the hobby scale. And the ability to use a cheaper transformer and not need an optoisolator can make it save BOM cost even at large scale production.

[1] https://www.analog.com/media/en/technical-documentation/data...


I learned about those while google searching every component on my first Arduino in hopes to better understand how the thing worked.


This was really interesting, but also it just as a byproduct of the explanation actually explains how the core circuit elements are actually implemented (resistors, NPN vs. PNP transistors) which I found really interesting. I had a general idea of transistor implementation, but always just assumed resistors were varying dopants or some such, rather than the now obvious "make it longer/thinner".


As a rule, you want your resistors made of metal. Semiconductor resistors have a lot of really surprising behavior.

But, yeah, if precision and stability do not matter, it's cheaper to make them out of silicon.


> As a rule, you want your resistors made of metal. Semiconductor resistors have a lot of really surprising behavior.

So much so that probably the most common semiconductor resistors where linearity is needed are actually transistors. Stick on external reference resistor in, use current mirrors inside to distribute the reference current around the circuit, and use transistors in the active region (linear region for FETs). It's also cheaper since transistors take less area than resistors.


Follow up dumb question - I thought transistors take time to charge/discharge/do-physics-things, how do they avoid resistance changing over time.


They change a bit, but primarily at startup. After that they're controlled by the stability of the biasing.

I'd recommend "Designing Analog Chips" by Hans Camenzind[0], the designer of the 555 timer. Particularly chapter 3, "Current Mirrors".

[0] http://www.designinganalogchips.com/ has a free pdf


I am pleased that part of his reverse-engineering process included smashing open the package using a vice-grips as this is the kind of barbaric method I would use. I feel more connected to the article in this way.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: