Zoom all the way in to see the detail of this 512 bytes of hand woven memory. Later core planes were machine woven; this was from an early '60s Burroughs machine.
The original image above is 8MB, so here are reduced size versions that load faster, use whichever works best for you...
I made the photo by scanning the board on my Brother MFC with a 1200 DPI scanner. The image is just shy of 6000x6000 pixels, so that makes the board about 5" square.
But if you think these bits are tiny, they got a lot smaller when they went to machine weaving. Maybe half or quarter this size.
Of course, "tiny" is relative, isn't it? At least you can see these bits, not like your newfangled semiconductor memory.
You can see the kickback pulse here, the big one is where the bit was “set”. Reading is always destructive, so the next pulse does not have the kickback: https://live.staticflickr.com/7890/47241409541_5915191605_o_...
It’s great fun and actually very simple once you understood the (already relatively simple) concept. My “magnetic core bit” is literally just a few wires going through the cores (https://live.staticflickr.com/7874/33365624228_61caed6e71_k_... ), though I later added a couple of transistors to form a sense amp. I got the cores by just looking for tiny ferrite cores on eBay, highly unlikely that they were meant as memory cores.
For driving them, I just set my function generator to its maximum output, 10V at 50Ohm output impedance. Anything less than that and you barely get a kickback, so it’s really not efficient, in any way.
I built a small 4 bit (2 x 2) using #2 iron nuts and LM293D H-bridges as the drivers. The hysteresis band of the nuts was really small so it made it pretty unreliable sadly.
Perhaps the most interesting fallout from core memory was the invention of FRAM which looks like a serial EEPROM (in 8 pin PDIPs) but are in fact small ferro-magnetic memories. Unlimited writes and all that.
First time I hear about this. Sounds wild, couldn't find a good explanation of how this works though.
You can get to the patent from here. The way I understand it, depending how/where the mylar sheet is punched or not (figure 8 is the unpunched sheet, figure 9/10 show a punched one) you will interrupt some of the connections and that particular line (the primary) will pass outside or inside the transformer core, so the secondary will be energized or not (1/0 output). By changing the mylar sheets you can "reprogram" the microcode ROM. I'm not an electrical engineer, so my terminology might not be 100% correct :)
More on this:
The Model 30 used CCROS (Card Capacitor Read-Only Store). Like TROS, this used a mylar sheet with holes punched in it. However, in this case, the holes were capacitively sensed; an air compressor forced the sense lines against the card. The card was the same size as a punch card, so you could punch new microcode with a keypunch.
The Model 50 and Model 65 used BCROS (Balanced Capacitor Read Only Storage). This was kind of like CCROS, but faster. It used 8 inch by 18 inch mylar sheets with an etched copper pattern like a PCB. Each sheet held 35,200 bits and the system used 16 sheets.
The Model 25 stored microcode in the regular core memory, a rather boring solution. For faster performance, the high-end System/360 machines had hardwired control rather than microcode.
It blows my mind thinking there was an air compressor to push sheets over the sense lines. I can't imagine how loud/full of different types of noise the mainframe as a whole was...
It's a bit long, but well worth the time to watch.
In 1965, as demand for core memory increased, IBM moved some production to Japan and Taiwan, where labor costs were so low that manual stringing of cores was cheaper than automated assembly. Unfortunately for IBM, competitors also moved production to Asia, negating the advantage IBM had from automation.
Someone built their own rope memory reader (https://www.youtube.com/watch?v=WquhaobDqLU) to access data stored in the Apollo modules.
Assembling core memory is a lot easier, there's a very simple pattern, and verifying that it works correctly isn't that hard either.
This is like weaving a complicated rug with many colors and a single-color rug.