5 ms·
Some observations: 1. Interesting, how fundamentally analog element such as capacitor, find its way into dynamic logic circuits. 2. The article states that as
by SomeoneFromCA 3y ago
Some observations:
1. Interesting, how fundamentally analog element such as capacitor, find its way into dynamic logic circuits.
2. The article states that asynchronous computers are not made anymore. Is not google TPU asynchronous?
- dekhn 3y agoAll digital logic is fundamentally analog. No, the TPU is not async. It has a single main clock. It does work in parallel, but it's still synchronously clocked. As neat as async is, it's truly a paradigm shift that affects nearly everything about your system and most of us can'd think in partial differential equations.
- kens 3y agoOne of Vonada's 14 engineering maxims is "Digital circuits are made from analog parts." That said, dynamic logic that depends on capacitance is more analog than most digital logic :-) Vonada's engineering maxims: https://twitter.com/kenshirriff/status/1633154548318732289 https://twitter.com/kenshirriff/status/1633154548318732289
- dekhn 3y agoOK I learned a bit today- I didn't realize transistors were considered "active", or that dynamic logic was uncommon. Vonada's engineering maxims are pretty scary to me- an amateur hobbyist soldering various chips together to build simple projects like "a rotary encoding controlling a binary counter visualized with LEDs". I spend many hours soldering and carefully debugging every individual component, and when I integrate, spend many more hours debugging why something doesn't work. The failures are almost always because I did something dumb, like wiring up VCC and GND backward, I honestly don't know that I'd be able to debug "When all but one wire in a group of wires switch, that one will switch also." in my binary counter's inputs or outputs.
- tzs 3y ago> Vonada's engineering maxims are pretty scary to me- an amateur hobbyist soldering various chips together to build simple projects like "a rotary encoding controlling a binary counter visualized with LEDs" Fortunately for probably most hobby projects you don't have to worry about most of those things. A lot of those maxims concern failures of the lumped element model. The lumped element model is a model where all the capacitance occurs in capacitors, all the resistance is in resistors, all the inductance is in inductors, and so on, and wires are zero resistance conductors of current that do not couple magnetically or inductively with anything. If clock speeds aren't too high, there is enough gap between the highest 0 logic voltage and the lowest 1 logic voltage, wires aren't too long, voltages and currents aren't too high or too low, and you don't do anything like put loops in your wires (other than when you are intentionally trying to make an inductor) the deviations of reality from the lumped element model shouldn't cause any problems. As you deal with higher frequencies reality starts to noticeably diverge from the lumped element model. You have to start worrying about things like capacitance between leads on your components, inductance between wires, and wires acting like transmission lines. Keep going up in frequency and you can get to a point where you have to use software that can solve (exactly or numerically) Maxwell's equations for the fields around things and take into account interactions with those fields. Hobbyist projects can do things that get past where the lumped element model is all you need, such as WiFi or Bluetooth which operate at several GHz, but usually those functions are handled by modules that the hobbyist buys that are (hopefully!) designed by people who know how to deal with high frequencies. E.g., you buy an RF module that does the scary radio stuff, and you control it from a microcontroller that is running an order of magnitude or more slower than the RF module, and whatever inputs and sensors and non-radio outputs you have are probably at least an order of magnitude slower than your microcontroller. Those non-RF parts of the project are likely to be well in the realm where lumped element works. Most of the rest of the maxims concern things that are mostly going to be a problem for big projects where you might be worrying about things like synchronizing things across dozens of subsystems and with very tight tolerances.
- dfox 3y agoIn digital circuits the “frequency” when the lumped model breaks down is determined by the slew-rate (ie. spectral content of the edges), not the bitrate/clock frequency. In the electronics hobbyist community there are many cases when you can run into that issue head first while just connecting modules together (because the whatever IC on the module has significantly faster slew-rate than you need). Another example are MCUs with somewhat high internal clock rates and their power requirements, even 20-ish year old dsPIC requires somewhat involved supply decoupling topology to work at all (and the quality of decoupling for ESP32 has direct effect on signal quality and how much of RF noise it spews out).
- akira2501 3y agoMuch different from one of Bob Widlar's random maxims that was "[digital?] every idiot can count to one."
- SomeoneFromCA 3y agoNo one argues, that digital logic is indeed analoh, however you rarely see reliance on a passive element (in analog sense), to be "active" in a digital sense. DRAM is the only widely known example.
- hasmanean 3y agoWell using analog effects in digital logic has its risks…at relativistic speeds the capacitor dimensions will change, altering capacitance. Depending on the direction of travel, it could go up or down. ;)
- dreamcompiler 3y agoIt's only because capacitors let you use fewer transistors. Any effort to shrink memory cells as much as possible inevitably leads to a capacitor-transistor hybrid solution. In logic circuits class they don't talk about areal constraints, but IC designers have to think about such things.
- duskwuff 3y ago> you rarely see reliance on a passive element (in analog sense), to be "active" in a digital sense This technique is referred to as "dynamic logic". It was common in the early days of MOS ICs -- for instance, it was used extensively in the original 6502 -- and still finds some usage in high-performance ICs.
- elromulous 3y agoIn VLSI you pay a lot of attention to those capacitances. I've even designed some VLSI circuits that make intentional use of those capacitances.
- Tuna-Fish 3y agoNobody designs async things anymore, because they are much harder to validate, partly because there is no async equivalent of all the tooling used to validate synchronous logic. The final product might be better, but if it takes 3 years longer to ship because validation is harder, there is no room for it in the market. (Because the synchronous competitor has already shipped their next version on a better process node by the time you get yours out.)
- jiggawatts 3y agoMaybe that was a valid rule of thumb for decades that everyone internalised as a hard rule… but recent process changes haven’t delivered anywhere near the giant leaps that they used to. Maybe now it would be worth revisiting, especially since we can throw so much computer power at validation!
- jhallenworld 3y agoSo at the opposite end of the speed spectrum, you might enjoy my relay computer: it uses a capacitor for the master part of the flip-flop for exactly the same reason- to save on the number of active components. See: https://relaysbc.sourceforge.net/circuits.html#:~:text=Low%20relay%20count%20master%2Dslave%20flip%2Dflop https://relaysbc.sourceforge.net/circuits.html#:~:text=Low%2...