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.

Rope memory from the Apollo Guidance Computer
Photo detail of a 16Kb rope core memory board from a 1974 computer
Core rope memory test sample from the Apollo program

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]

Operation

edit

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:

  • Set/reset: These are used to change all of the cores from one polarity to another.
  • Sense: A sense wire can detect a change in a core's polarity. It can pass through a core to indicate one bit state (typically '1') or bypass it to represent the other (typically '0').
  • Inhibit: Inhibit wires are used effectively to address which core to select.

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]

Memory density

edit

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).[citation needed]

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

References

edit
  1. ^ "Software as Hardware: Apollo's Rope Memory". Retrieved 29 Sep 2017.
  2. ^ "Computer for Apollo". MIT Science Reporter. 1965. WGBH.
  3. ^ Directed and Produced by: Duncan Copp, Nick Davidson, Christopher Riley (2008-07-07). "The Navigation Computer". Moon Machines. Episode 3. 22:40 minutes in. Science Channel.
  4. ^ "Software woven into wire: Core rope and the Apollo Guidance Computer". Retrieved 2024-03-20.
edit