A layperson's introduction to Spintronics Memory
Introduction I want to give an introduction on several physics topics at a level understandable to laypeople (high school level physics background). Making physics accessible to laypeople is a...
Introduction
I want to give an introduction on several physics topics at a level understandable to laypeople (high school level physics background). Making physics accessible to laypeople is a much discussed topic at universities. It can be very hard to translate the professional terms into a language understandable by people outside the field. So I will take this opportunity to challenge myself to (hopefully) create an understandable introduction to interesting topics in modern physics. To this end, I will take liberties in explaining things, and not always go for full scientific accuracy, while hopefully still getting the core concepts across. If a more in-depth explanation is wanted, please ask in the comments and I will do my best to answer.
Previous topics
Bookmarkable meta post with links to all previous topics
Today's topic
Today's topic is spintronics storage devices for computers. I will try to explain how we can use an electron's spin to read and write data and why this is more efficient than current technologies.
What do we need to have a storage device?
In order to be able to save a bit (a 0 or a 1 in computer science speak), we need to be able to represent both the 0 and the 1 in some physical way. We could for example flip a light switch and say light on is 1, light off is 0. We will also need to be able to read the information we stored, in this case we can simply look at the lamp to see if we're storing a 0 or a 1. We would also like for this information to be stored even when power is cut, so that next time we power the hardware back on, we will still be able to read the data. Lastly, we want to be able to change between 0 and 1 freely; no one wants to go back to the CD days for storage.
Now for some basic concepts.
What is spin?
Spin arises from quantum mechanics. However, for the purpose of explaining spin storage devices we can think of an electron's spin as a bar magnet. Each electron can be thought of as a freely rotating bar magnet that will align itself with the fields from nearby magnets. Think of it as a compass (the electron) aligning itself to a fridge magnet when it's held near the compass.
Why are some metals magnetic?
Why can we make permanent magnets out of iron, but not copper? In all metals, we have spins that are free to rotate. This means that we can turn a metal into a magnet by holding it near another magnet, it will "copy" the other magnet's magnetisation - its spins will rotate in the direction of the field. But as soon as we remove the magnet, our metal will stop being magnetic. This is because the spins are freely rotating, the spins will align to the magnet's magnetisation when they feel it, but nothing is holding them in place as soon as it's removed. We call this property paramagnetism.
However, iron (and some other metals) will retain a nearby magnet's magnetisation even when the magnet is removed. This is because in these materials, called ferromagnets, it costs energy for the spins to rotate away from the material's magnetisation. They are pinned into place.
What happens if we expose half of our ferromagnet to a magnetisation pointing in one way (let's call it up), and the other half to a magnet whose magnetisation is pointing the other way (which we call down)? The ferromagnet would copy both magnetisation directions and create a boundary region - a so-called domain wall - in the centre. The spins in this domain wall will slowly rotate over the thickness of the wall so that at one end they're pointing up and at the other end they're pointing down.
How can we use spin to store data?
What if, instead of a light bulb, we used a bar magnet as our storage medium. We could magnetise our bar magnet in one direction to store a 1 and magnetise it in the other direction to store a 0. To read what we have stored, we simply check the bar magnet's magnetisation.
Let's work out this idea. We want to be able to efficiently change the magnetisation of a bar magnet and we want to be able to read the bar magnet's magnetisation. We will use a ferromagnet because it will retain our data indefinitely (its magnetisation will not change unless we force it to). We know it costs energy to flip the spins inside a ferromagnet, so we will want to use a very tiny ferromagnet - it will have less spins which means it will cost us less energy to change the magnetisation (i.e. flip the spins).
Magnetoresistance
A-ha, now we're getting into the fancy-titled paragraphs. What do you, dear reader, think would happen when we send a current (e.g. a bunch of electrons) through a magnet? What would happen to the current's electrons (also called itinerant electrons, to distinguish them from the non-moving electrons of the metal)? At the boundary of the magnet, where the current enters, only the electrons who (through random chance) have a spin that's aligned to the magnet's magnetisation will pass through. We call this effect magnetoresistance, as in effect part of our current will feel a resistance - they cannot pass through to the magnet. So to rephrase, the current inside the magnet will be "magnetised" - all of the spins of the itinerant electrons are pointing the same way.
Current induced domain wall motion
So now we know what happens to a current that's inside a magnet. What happens when this current meets a domain wall - the region where the magnetisation changes direction? The itinerant electrons' spins will start rotating along with the magnetisation, but the static electrons of the ferromagnet will also start rotating in the opposite way due to the magnetisation they feel from the current (more experienced readers will recognise this as conservation of angular momentum). So the spins inside the current will slowly rotate until they are pointing the opposite direction and can continue passage from the up-magnetised part of the ferromagnet into the down-magnetised part. But the spins that belong to the ferromagnet itself will be rotating in the opposite manner, slowly rotating from down to up as the current passes through. This means the boundary region between up and down magnetisation, the domain wall, will move along with the current.
So in short, by sending a current through a magnet that's magnetised in opposite directions at each end, we can force our preferred magnetisation to expand in the current's direction. By reversing the direction of the current we can then magnetise the other way again.
So we can say magnetising up (pushing current through (let's say) from left to right) can be our 1 and magnetising down (pushing current through from right to left) can be our 0. This would allow us to store data permanently as even when we remove the current our magnet will remember its magnetisation. If we make a really tiny ferromagnet we will only need a really tiny current to flip it's magnetisation too. So we can scale this process down to get to really good efficiencies. In the lab these types of devices are down to nanometre scale and require extremely little current to be operated.
Reading the data
OK, so now we know how to write data. But how do we read it? The key effect here will be magnetoresistance, as explained earlier in the post.
Let's look at this picture. The red dotted line shows our write currents, the big bar is our ferromagnet. The arrows pointing up and down at the sides are our magnetisation direction, the double-pointed arrow in the centre shows the region where we flip the magnetisation by sending through a current.
Now we jam a third, permanently magnetised, bit of metal (let's call it the read terminal) on top of the centre of our bar. We send a current from this read connector to one of the ends of the ferromagnet. If the ferromagnet's magnetisation is aligned to that of the read terminal we will experience a low (magneto)resistance, but if the ferromagnet is magnetised in the opposite direction we will experience a high resistance. By measuring the difference in resistance we can determine if we have a 0 or a 1 stored. We just need to be careful not to send too big of a current, else that would influence our ferromagnet's magnetisation. But small currents means better efficiency, so this is not a problem at all.
Conclusion
This concludes the post, we have seen how to use spins and magnets to both write and read data and we understand why this is efficient.
Feedback
As usual, please let me know where I missed the mark. Also let me know if things are not clear to you, I will try to explain further in the comments!