'Reversible' Computers More Energy Efficient
James Clark writes "As Congress continues work on a federal energy bill, a group of University of Florida researchers is working to implement a radical idea for making computers more energy efficient -- as well as smaller and faster." Reversible computing rears its head again.
Has anyone ever built even a very simple reversible computer? Or is this like quantum computers: all theory, no practice?
"They redundantly repeated themselves over and over again incessantly without end ad infinitum" -- ibid.
I mean, say you have a CMOS OR gate. If both of the inputs are high, then the NMOS transistors will close and the PMOS transistors will open. Energy is lost only when electrons 'leak through' when the gate changes (and of course, electrons that leak through but don't affect the computation, which I guess happens all the time). How would reversing the computation affect this? Maybe if you were using plain PMOS or something...
autopr0n is like, down and stuff.
Universiteit Gent has some pictures of reversible logic gates, including a four-bit adder composed out of Feynman's "NOT, the CONTROLLED NOT, and the CONTROLLED CONTROLLED NOT" reversible logic gates, and some other circuits they've built.
They also have links to other sites about reversible logic and reversible computing, such as Ralph Merkle's Reversible Computing page (from Xerox).
Also note the bottom of the page: there's a vacancy in the research group, for all those just aching for a chance to work on reversible computing! (Looks like you'll have to speak Dutch, though.) ;-)
Dlugar
Computer Go: Writing Software to Play the Ancient Game of Go
Isn't it just easier to use the excess heat to power a Stirling engine to recapture waste energy?
Maybe the Stirling idea is going too far.
How about a more efficient circuit? It's been awhile since college, but isn't excess heat a sign that the circuit is inefficient?
While it's not completely frivolous research, it's not the first avenue I would approach when looking at this problem. It seems more difficult and time-consuming to add in circuitry to re-use the energy to perform other actions inside of a CPU. It seems like you'd have a better chance at compounding the problem, rather than helping it.
However, make the circuit more efficient, you'll generate less heat. That would be my first goal. What kind of efficiency do they get with today's CPUs?
With this reversible thinking, I have an idea. I need a little help from the anti-SUV crowd... wouldn't all gasoline engines be better off with really big flywheels?
-- No sig for you!
(k = Boltzmann's constant, W = number of states)
Information (in bits) I = log_2 W = ln W / ln 2
Hence S = kI/ln 2 or roughly S = kI.
Heat Q = ST = kTI.
Let's say we destroy 100 gigabits of information at a temperature of 300 K. Since k = 1.38E-23 J/K, this means a heat of about 4E-10 Joules. Which is not very much, and does not really contribute to the heat produced by CPUs.
In fact, I think this is the way to find a theoretical minimum for the heat produced from information processing. We can try and make more efficient processors to get closer, just like we can increase the efficiency of engines to get closer to the thermodynamic limit.
Escher was the first MC and Giger invented the HR department.
Please cite your references or evidence to this statement if you wish to be taken seriously.
Several companies are currently working on complex and high-performance designs using asynchronous techniques. It's true that it is currently more difficult, predominantly because current design tools are all geared towards generating and testing "standard" clocked logic, but it is being done and it does not by any stretch "blow".
It will be quite some time before all of the components on a motherboard are asynchronous, but groups -have- designed processors, memory controllers, and other components in asynchronous.
For but the briefest of examples... check out this article or this article. No, it isn't the answer to everything... but it's much farther along than you seem to realize