Core rope memory is a form of read-only memory (ROM) for computers. It was used in the UNIVAC I (Universal Automatic Computer I) and the UNIVAC II, developed by the Eckert-Mauchly Computer Corporation in the 1950s, as it was a popular technology for program and data storage in that era. It was later used in the 1960s by early NASA Mars space probes and then in the Apollo Guidance Computer (AGC),[1] which was built by Raytheon.
The software for the AGC was written by programmers at the Massachusetts Institute of Technology (MIT) Instrumentation Lab, and was woven into core rope memory by female workers in factories.[2] Some programmers nicknamed the finished product LOL memory, for Little Old Lady memory.[3]
Similar to magnetic-core memory, magnetic rings (or cores) are used to determine the data of the software. Unlike magnetic-core memory, the cores themselves are not used to store the data; the way a core is wired controls whether that core represents a '0' or a '1'.
There are three main types of functions a wire can have in core rope memory:
To read from core rope memory, the set/reset wire is given a strong current to change the polarity of the cores. This induces a small voltage on the sense wires passing through them, which can then be used to interpret binary data. The inhibit wires pass a current in the opposite direction of the set/reset wire for all cores but the desired one, acting like a memory addressing system. This prevents the sense wires from detecting polarity changes from the other magnetic cores.
The sense wires are used to encode the data by either going through a core or bypassing it. By using many sense wires, multiple bits of data can be stored for each core. In the case of the Apollo Guidance Computer, each core had 192 sense wires passing through it, which could store 12 16-bit words per core.[4]
By the standards of the time, a relatively large amount of data could be stored in a small installed volume of core rope memory: 72 kilobytes per cubic foot, or roughly 2.5 megabytes per cubic meter. This was about 18 times the amount of magnetic-core memory (within two cubic feet).
-- | +Core rope, core memory data density (number of data units per volume of memory) | ||||
---|---|---|---|---|---|
Memory technology | Data units per cubic foot | Data units per cubic meter | |||
Bytes | Bits | Bytes | Bits | ||
Core rope ROM | 72 KB | 576 Kbit | ~2.5 MB | ~20 Mbit | |
Magnetic-core RAM | 4 KB | 32 Kbit | ~140 KB | ~1 Mbit |