5 ms·
Don’t speed and efficiency make up the entire set of practical uses for digital computing? I don’t know what it means to say “No there are no practical uses oth
by dahart 3y ago
Don’t speed and efficiency make up the entire set of practical uses for digital computing? I don’t know what it means to say “No there are no practical uses other than speed”. That sounds like the answer summary is “Yes”. ;)
> There’s no concept of “calling a function either”
This is true for the THAT machine in the article, but your comment seems to be making a lot of assumptions about analog that aren’t necessarily true. Digital computing is an abstraction over analog circuits, and it can be done at a higher level than, say, CMOS logic gates. We definitely do know how to build analog computers that have function calls.
- analog31 3y ago>>> Don’t speed and efficiency make up the entire set of practical uses for digital computing? A couple more uses: First is "noise immunity:" The fact that you can perform a computation twice and get the same answer, and chain multiple processing steps together with no degradation. Though to be fair this includes digital computation by pencil and paper. Second, complex operations that simply can't be conceptualized in the analog domain.
- dahart 3y agoYou’re totally right about chaining and repeated computations, however I think it’s possible to do this with analog machines as well by factoring in threshold in and precision tolerances. Digital floating point has precision limits too, they’re just a different kind (I’m referring to rounding, for example). I know that’s not at all what you meant about noise, I’m just saying the bigger picture is that both digital and analog computation has limited precision, and both can have increased precision and can meet specific tolerances by adding more wires. Typical fp32 and especially fp64 has way higher precision than a typical single analog signal, but that doesn’t mean that very high precision with analog isn’t possible, it just means we don’t often do it. The fundamental differences might be less black and white than you or the gp imagine.
- corethree 3y ago>I think it’s possible to do this with analog machines as well by factoring in threshold in and precision tolerances. With enough compositions even the smallest tolerances will add up. This presents a scaling problem in analog electronics. With the miniaturization of electronics into nano scale components this noise is even more prevalent. Additionally the way a transistor works it's just easier to use these things in saturation mode. And one more thing. Yes precision can be "equivalent" but exactness is not. An analog computer cannot represent the value 1 consistently. It essentially can never be precise. There will always be noise on the voltage. A digital computer has finite precision but it has exact finite precision.. so it can represent the exact integer 1. And you can increase precision arbitrarily by using more bytes up to the point where you use up all available bytes in memory. You don't technically have to use the default floating point values which have limited size. With an analog computer you cannot do this at all.
- dahart 3y ago> With enough compositions even the smallest tolerances will add up. This is true of digital floating point too, chained compositions lose precision. > A digital computer has finite precision but it has exact finite precision.. so it can represent the exact integer 1. I’m not sure what you mean here exactly. Most real numbers cannot be represented exactly, and the idea of an exact number in digital integers and/or floating point still comes with a tolerance range. It’s only possible to have an exact number by construction or a-priori knowledge, but not in general and especially not when processing input data. It is possible to have an “exact” analog number, within a tolerance range. > With an analog computer you cannot do this at all. That’s incorrect. It’s true a single analog signal has noise and not incredible precision / resolution. That’s not a limitation of analog computing in general, it’s a limitation of choosing to use a single signal. You don’t have to use only a single signal. If you used, say, one analog signal per decimal digit, you can have as much practical precision as you can afford digits/signals. Then it becomes a bit more “digital” but the math doesn’t need to be implemented using gate logic. Digital lines also have analog noise, we just threshold and abstract it away. The line between digital and analog is always there but you can move it. It is possible with analog circuitry to quantize a signal and/or interpret and have an analog ‘repeater’ that will rectify the signal into the interpreted value, correcting for line noise. This way it’s possible to do some amount of integer math without introducing noise into the result. This isn’t common or particularly practical, but it does help clarify what analog and digital really mean. Hey you’re right about these being common issues, and about the typical advantages of digital logic, you’re just overstating the limitations and fundamental differences between digital and analog, and making assumptions about where that line is being drawn without considering all possibilities.
- buescher 3y agoAnalog circuits still have finite bandwidth and rise/response times. The engineering trade-offs are more complicated than the gp presents. The big but mixed advantage of an analog control loop or signal processing chain is "no software". There's no real reason to do simulations on an analog computer today, though I think using one for model-in-the-loop would be fun, and somebody is probably doing it somewhere.
- dahart 3y agoSome people are building analog chip startups today because there are reasons to do analog computation. Among the applications are low-precision high-speed parallel math, neural networks, and image and audio processing.
- buescher 3y agoNothing new, really - from 1989: http://www.carvermead.caltech.edu/documents/Neural_Network_Almanac.pdf http://www.carvermead.caltech.edu/documents/Neural_Network_A... Synaptics and Foveon turned out OK.
- dahart 3y agoThere are a bunch of companies looking at Photonic (optical analog chips - https://en.wikipedia.org/wiki/Photonic_integrated_circuit https://en.wikipedia.org/wiki/Photonic_integrated_circuit ) And I can’t even count how many startups are proposing analog chips in the last 2 years. https://mythic.ai/ https://mythic.ai/ https://www.digitimes.com/news/a20230509VL200/ai-analog-ic-canada-eda-ic-design-distribution.html https://www.digitimes.com/news/a20230509VL200/ai-analog-ic-c... https://www.zdnet.com/article/ai-chip-startup-ceremorphic-comes-out-of-stealth-mode/ https://www.zdnet.com/article/ai-chip-startup-ceremorphic-co... https://www.eenewseurope.com/en/blumind-startup-pursues-analog-ai-at-the-edge/ https://www.eenewseurope.com/en/blumind-startup-pursues-anal... https://www.eetimes.com/rain-demonstrates-ai-training-on-analog-chip/ https://www.eetimes.com/rain-demonstrates-ai-training-on-ana... https://www.eetimes.com/ai-startup-aspinity-launches-low-power-analog-chip/ https://www.eetimes.com/ai-startup-aspinity-launches-low-pow... https://www.zdnet.com/article/the-future-is-analog-startup-infinityq-pushes-novel-quantum-computer/ https://www.zdnet.com/article/the-future-is-analog-startup-i...
- corethree 3y ago> That sounds like the answer summary is “Yes”. ;) Practically speaking digital computers are so fast that the simulation of analog is more or less the same. In gaming we run entire physics simulations and they are so fast they appear as analog. And these are for real time simulations. We can run simulations slower and at resolution beyond what's possible with analog. First analog would be limited by noise. So there's a limit with resolution here. Digital offers virtually unlimited resolution by using symbols to represent numbers. The advantage of analog here is that at the highest resolution of simulation possible with analog it will be faster than digital. That's all. >We definitely do know how to build analog computers that have function calls. No. A function call involves a stack and saving context onto that stack. An analog computer is a function in itself. There is no "call". I neglected to mention the "delay" from input to output as one replyer mentioned but that's just details. That would be the closest thing to memory since the delay means your accessing a result from the past.
- dahart 3y agoA function “call” is a software abstraction. What you’re calling a function call by defining it as stack based is a pure software abstraction. A stack is one way to implement functions, but not the only way. Capacitors can provide analog immediate access memory. Analog delay lines and feedback circuits can provide conceptually recursive functions, and those are common in analog circuits today. It’s true that analog has limited precision, though no reason you can’t represent higher precision via multiple analog signals, just like how digital requires more bits. All the rest of it still looks to me like you’re making some incorrect assumptions about what’s possible with analog circuitry.
- corethree 3y agoA function call is indeed a software abstraction. Outside of software nobody "calls" functions at all. That was my entire point. In mathematics you have function application which is close to the idea of the function call. And this idea also doesn't exist in analog computing. Ironically, Mathematics does model what's going on in an analog computer on a field called signal processing. In signal processing it's called a transform. >It’s true that analog has limited precision, though no reason you can’t represent higher precision via multiple analog signals, You can't. The only way to do this with multiple signals is to make each signal represent a digit or a portion of digits of the final value. But if you did this you'd be going digital. You likely won't be doing binary but it's still digital.