Erasmus :“When I first learned about this new circuit element, I began to get scared. I had seen all then Terminator movies and loved them, but had no concern that such the Terminator future would ever be made into reality. As soon as I saw the article on Memristors, I realised that the Terminator and Artificial Intelligence was indeed very possible as this new element become more commonplace and approached mainstream commercialisation.”
Kinkajou : “So tell us about Memristors”, old dog!
Erasmus : Memristors were developed as an adjunct to a theoretical breakthrough by Leon Chua in 1971. He described the existence of this new element in a series of mathematical equations describing the known circuit elements of Resistance, capacitance, and inductance.
A resistor relates voltage and current. This uses the classical formula V= I . R .
A capacitor relates voltage and charge. This uses the classical formula C= q/V .
And inductance element relates flux and current.
This uses the classical formula L=F/i.
It became obvious from these equations that there should be another element, the Memristor, the name being a combination of the circuit elements of memory and resistor. The element that appeared to be missing was called the Memristor. A memory store relates flux and charge. It uses the formula M=F/i.
What becomes interesting about the Memristor is that it has properties that cannot be duplicated by combinations of the other elements, notably resistance, capacitance or inductance. This means that new technology can do new things in new ways.
Chua’s original idea was that the resistance of a Memristor would depend upon how much charge (current) has gone through the device. In other words, if you push the charge in one direction, the resistance will increase.
If you push the charge (current) in the opposite direction, it will decrease. In summary, the resistance of the devices at any point in time is a function of history of the device – or how much charge went through it either forwards or backwards. The Memristor functions as a resistance circuit element with a memory.
The devices' resistance could be read with alternating current AC so that the stored value would not be affected. A memory store is a device whose resistance depends on the amount and polarity of the voltage applied to it, and the length of time that voltage has been applied. When the voltage is turned off a Memristor will remember its most recent resistance settings.
The diagram that summarises these elements is:
Electrical Circuit Components memristor
Kinkajou : Wow! Even I’m getting excited. I do remember though that it’s taken 50 years for transistors to evolve from inspiration to perspiration. Memristors are a great idea, but there still exists a gap between our hopes and our achievements.
Erasmus : True! I think innovation will follow a multi-layered process. Circuits will be designed and used for the more profitable applications. Then circuits will be adapted for alternate uses within these applications e.g. memory circuits growing into logic circuits. Then the competing paradigms (old vs. new computing) will change as new applications become obvious. The process will then recycle, with new applications for increasingly advanced technology becoming more obvious over time.
Kinkajou : Yes that’s true. We don’t know a lot about Memristors at this point in time, although everyone thinks they do, because they essentially don’t exist, except largely as ideas and potential.
The growth of this technology will depend on much more mundane factors influencing commercialisation such as unit costs, IO/s per device, performance on sequential and random access operations, performance on reading and writing operations, reliability, error rates, persistence of data lifetime, ease of programming, instructions per clock cycle, power use, data density and ease of system integration.
We won’t know the answers to these things until we have working technology. But the first step in developing working technology is the dream.
Erasmus: Yes! I can see databases growing to maintain increasing amounts of data close to the CPU in Memristor RAM. And if the technology delivers, there will be a huge drive to developing new computing architectures. Hard disc drives, solid state drives, flash drives, DRAM and even CMOS memory architectures may all be on the chopping block if this device delivers on its potential.
One proposal is to convert electrical signals into light signals, every time a bit has to travel more than 100 microns. It is proposed that Memristors with on chip photonic interconnects will improve the overall computational throughput of a computer system by two orders of magnitude per unit of power. This potentially could far outpace what Moore's law and transistors can accomplish.
It has even been proposed that Memristors need not be built on silicon. They may for example be able to take advantage of glass is a construction material. This opens the door for incorporating the new circuit in many more situations.
Erasmus :To summarise, a Memristor works off the history of its past usage. If you had a computer with Memristor circuitry you would need much less storage devices built into the computer because the data could be stored in the circuitry of the Memristor array. A computer can work with its database much like turning a light on and off. If the computer were turned off, the work and all the current computer settings would automatically and instantaneously be saved as well.
One analogy I have heard about Memristor function, likens them to a water pipe. A Memristor is a pipe that changes diameter with the amount and direction of water that flows through it. If water flows through this pipe in one direction, it expands (becoming less resistive).
But send the water in the opposite direction and the pipe shrinks (becoming more resistive). Further, the Memristor remembers its diameter when water last went through. Turn off the flow and the diameter of the pipe “freezes” until the water is turned back on. That freezing property suits Memristors brilliantly for computer memory. The ability to “indefinitely” store resistance values means that a Memristor can be used as a non-volatile memory.
Kinkajou : So what’s the good of it all?
Erasmus : This new circuit element (the Memristor) allows a number of amazing new processes to be introduced into silicon circuits.
Erasmus: Firstly the new circuit element can be used in the development of new memory applications.
Kinkajou : It all sounds so good that you have to wonder if it was written as a marketing spiel.
Erasmus : Yes. All technology has its limits, uses and failures. And how it can be used depends on how the numbers stack up. Still, let’s keep going in our talk on memory applications for Memristors.
Today when you turn the power off on your computer, the DRAM forgets what is in memory. So the next time you turn the power on for your computer you have to wait until all the data is loaded into DRAM from the hard disk.
With Memristors, and let's just say we now are using the Memristors only as storage, we now have very large quantities of data directly accessible to the CPU. Now this can take advantage of the fact the Memristors can be configured as CPUs. This is as close as computation and data can possibly get.
ADVANTAGE: speed of data load up, amount of data storage: data density
Erasmus : Secondly the new circuit elements may allow new operations to occur on silicon, replacing current silicon transistor workarounds
2. Crossbar Latches as Transistor Replacements or Augmenters
The power demands of operating transistors has been a barrier to miniaturisation and the development of microprocessor controllers in integrated state circuitry (ICC)s. Solid-state Memristors can be combined into devices called crossbar latches, which could replace transistors in future computers, taking up a much smaller area.
It has been proposed that because Memristors can be stacked and are optimally suited for memory applications; their data storage capacity can be made up to 2 orders of magnitude denser than existing memory circuits. Again, this potentially could far outpace what Moore's law and transistors can accomplish.
Erasmus : As another consideration for memory applications, the new circuit elements may allow the development of programmable hardware. This can have applications for low-power sensor construction as well as adding a layer of programmable intelligence to control systems.
3. Low-power and remote sensing applications:
It has been proposed that mem-capacitors and mem-inductors could be developed in complement to Memristors. This leads into changes in device design.
Using these logic elements it may be possible to build highly integrated low-power devices without the risk and expense of creating application-specific integrated circuits (ASICs).
The trouble with application-specific integrated circuits is that if a single mistake is made in the design of the computing package, the logic circuit will not work as proposed. This makes it difficult to develop devices for less commercially viable applications.
Currently many developers would rather spend money developing software than take a risk in developing application-specific integrated circuits, (ASICs). A design error is money wasted with little chance of recovery. And the pace of technology demands recurrent cycles of development and change, each with a chance of developmental errors impacting on profitability.
ASICs (application-specific integrated circuits) directly wire logic into hardware.
ASICs are completely designed for one purpose and one purpose only, they can't do anything else. Of all options ASICs are the fastest, densest, lowest power, have the highest upfront cost, and the cheapest per unit cost.
But if you make just one little mistake your ASIC will have to be redone at considerable time and expense. This is a start-up killer. Get your ASICs wrong and you are dead, which is why VCs like funding software, it's safer.
Microprocessors are the most general option. They interpret instructions step by step as dictated by a program. Microprocessors are universal so the cost can be spread out over many units, they are the least dense so they take a lot of space, and they use the most power. But their flexibility makes them the most practical option for system designers, even though you would rather not use them if you didn't have to.
As a system designer you want low cost, high integration, and low power usage, but this is beyond the capability of the small guy so microprocessors are the default option in many cases. For example, if you are making a sprinkler system controller that uses Wi-Fi for networking, most of your expense will be in the separate components parts, which raises the price out of reach of a mass market.
This is the primary reason most consumer products have poor performance. To get them cheap enough so that people will buy and still leave a healthy profit margin, you have to design dirt cheap and dirt stupid systems.
The Holy Grail in this area is the combination of low-power sensors, efficient cheap memory and computational power. This would deliver a semblance of intelligence to many control systems integrating sensor imports and control outputs. Software programmable hardware could well deliver a new level of robustness and error correction to chip/ transistor circuit manufacture.
Nanoscale Solar Power
Erasmus : Fourthly, the new circuit elements are capable of logic operations in their own right.
4 Logic operations
Memristors are not just capable of remembering. They can actually assist with logic operations. While this is an unusual concept because current computers do not use their memory to function as their CPU.
It turns out Memristors naturally implement something called material implication logic, which can be interconnected to create any logical operation, much the same way NAND GATES were used to build early supercomputers because they were easier to build. So what we have now is something that can be dynamically configured on the fly to act as either memory or CPU.
There is scope for programmable global logic and signal processing using Memristor elements. It will take time and development of physical architecture supporting Memristor elements, to allow the capabilities of these processing systems to expand to the point where their applications exceed their initial specifications.
Erasmus :Fifthly the new circuit elements once incorporated into existing systems will enable us to do things faster and differently. This has implications for existing computer architecture.
5 The computing Paradigm: parallel processing, speed, programmability
Memristors lend themselves to “ambient cloud” computing applications. Resources available within a locality can all be used to store data or to perform computations.
This suggests that in the long-term much of our computing architecture based on CPUs, RAM memory and hard disk drive memory may well be a technology of the past. The situation is analogous to the excitement greeting the development of the GPUs on video cards. While the sky may be the limit, reality, commercial, operational and maintenance constraints do exist in the real world.
The ability to dynamically switch Memristors between memory and logic operations constitutes a new computing paradigm. The essence here is that calculations can be performed on the same chips where data is stored rather than in a specialised CPU unit. The situation is: Putting the computation near the data.
With petabytes of persistent storage, co-located CPU and data, configurable numbers of dedicated CPUs, fast on device communication, presumably fast inter-device communication, and slow WAN communication, we have what appears to promise to be the equivalent of a largish cluster in a data centre.
Without the high speed, high bandwidth interconnects though; these devices will stay relatively specialized because otherwise we won't be able to service high request loads. Perhaps the proposed photonic Memristor linked devices may address some of these issues, long term.
A big concern is we have no feel for the latency characteristics of these devices. Many applications are highly latency sensitive, so their latency characteristics will have a big impact.
So it seems like we'll have an all-purpose device that can handle small to large data input sizes, small to large output sizes, and small to large computational demands. But we still have the slow WAN divide.
Many of the techniques for bridging data centres will still survive, but what will be different is that the size of the problems that can fit on a single system will grow immensely. This is the ultimate scale-up solution to scaling problems for computer systems.
When I look at Memristors ability to dynamically configure memory and logic devices on the fly, what I see is the perfect device for applying functions to data in massively parallel configurations. The potential for exploiting parallelism here is awesome.
Applications are currently seek limited. By shifting to a closer faster RAM solution the potential is to make applications CPU limited, but with the ability to create CPUs and operate them in parallel, we should not be CPU limited either.
It seems to me there will be a great need to invent efficient algorithms that take advantage of the special properties of Memristors. An algorithm like “dynamic programming” is a popular problem solving approach that solves complex problems by breaking them down into simpler steps, might really benefit from being implemented on Memristors.
Erasmus : A Better FPGA (Field Programmable Gate Array) is also potentially achievable using the new circuit element, the Memristor. This is also an easy call, given the ability of Memristors to act as CPUs.
FPGAs (field programmable gate arrays) are a new method of bypassing application-specific integrated circuits (ASIC). FPGAs are a collection of gates and that can be selectively connected by programming to build processors and custom hardware.
Once programmed computations run fast. Using FPGAs it's possible to build parallel hardware that produces high parallel throughput. FPGAs are flexible and efficient. They are attractive for a lot of applications and are less dense than ASICs because 90% of logic is in the programmable interconnect.
Kinkajou : So perhaps everyone can sit at home, using their spare computer capacity for doing protein folding calculations. You could have a protein or DNA operon named in your honour.
Kinkajou : What will systems and algorithms look like when our core assumptions have shifted so radically?
Erasmus : The future beckons.
Erasmus : Sixth, the new circuit will allow a new emphasis to develop analog computer processing.
6 Analog computation and circuit Applications:
Memristors are logical candidates for programmable logic circuits, signal processing, neural networks and control systems. Memristor based devices could be potentially used for stateful logic implication, allowing a replacement for CMOS-based logic computations.
Memristors can be combined with fuzzy logic systems to create neuro-fuzzy mem-resistive computing systems, with fuzzy input and output terminals. This type of system can learn based on the creation of fuzzy relations inspired Hebbian logic learning theory modelled on human synapse functions.
Memristor circuits could do things that digital computers currently do not do well, such as:
As the computer era went digital analog computations began to fade into the background. Analog computing was difficult to make scalable, to make reproducible and to make dependable in comparison to digital solutions.
However there are still many important areas of engineering and modelling problems which work better optimally with analog processes rather than digital processes. This suggests that these processes map better onto analog processing and analog computation rather than digital systems. Memristor applications may well allow us to return to much of the analog science that was developed up until the 1960s, preceded the digital computer age.
Ministers are not limited to base two numeral systems of binary coding i.e. ones and zeros. And Memristors are more likely to function like the synapses within the human brain, with a number of stable states at any one time. Hence the thought that Memristors could potentially mimic some of the functions of the human brain. Perhaps this is the dawning of the era of AI.
Memristor Vs Synapse structure
Erasmus : Seventh, systems can be designed which mimic biological systems and have a capacity to learn. AI?
7 Circuits which mimic Neuromorphic and biological systems (Learning Circuits):
Many of the developments of analog science computing have to do with advances in cognitive psychology, machine learning and modelling of artificial intelligence. It is possible that using this new circuit may allow better modelling of biological system behaviour.
It could allow computers to make decisions by understanding past patterns of data it has collected, similar to human brains. There is not the fascinating direction to take in understanding here. It is possible that neurones are more complicated than simple analog memory devices. Neurones may function more akin to memory and logic devices, much like a Memristor. Hence the potential for mimicking intelligence and developing AI.
Kinkajou: Will Memristors shift the CAPEX to OPEX equation in the same way we've seen the cloud flip the capex of buying machines upfront to the opex of leasing on demand? Will Memristors make it possible to make highly integrated devices that have fewer component parts and use lower power? If the technology holds true, it could revolutionize how embedded systems are built.
Erasmus : Ultimately, the problem is going to be related to the time and effort involved in designing a Memristor circuit. The money invested in circuit design is actually much larger than many people realise. Somebody also has to design the circuits and there’s currently no Memristor model. The key is going to be getting the necessary tools out into the community and finding a niche application for Memristors. How long this will take is more of a business decision than a technological one.
People love progress but they hate change. Memristors require change. They are not a plug compatible technology. You can't just drop a Memristor chip or RAM module into an existing system and have it work. It will take a system redesign. The question is when will the pain point in industry be sufficient to cause a migration to a new technology?
Kinkajou : If I can buy a Terminator, would you like one too. They’d be real cool as butlers.
Erasmus : Until someone reprograms one to serve you up as the last course.
Kinkajou : So what do you think Goo?
Goo : WE live in an age of technology and the pace of innovation continues. Still, in the long run, we can only do what the money lets us do. The obvious blind spot for us as a society is that there may be things that are worthwhile doing, but that can’t be done for lack of long term start-up capital for research.
The growth of computing power and progressive miniaturization may perhaps one day allow us to program semi- autonomous machines with some processing power, networkability, solar voltaic powering systems, sensors esp. position sensors and some limited mobility that hold a sort of distributed intelligence: “Sprites” if you will.
(Sort of like evolved mini-phone with apps.)You can almost see a swarm of tiny little machines almost embracing the planet in their enthusiasm to help us in our tasks. And I think Memristors may well be the innovation that gets us there.