Core rope memory
This article needs more citations. (December 2017) |
| Computer memory and data storage types |
|---|
| Volatile |
| Non-volatile |



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]
Invention at AT&T
[edit]The concept, originally known as a Diamond ring or Diamond ring translator, pre-dates its use as a computer memory. It was originally invented in the early 1940s by T. L. Dimond at Bell Laboratories for Bell's Number Five Crossbar Switching System, a type of electromechanical telephone switch.[4] When a telephone user made a long-distance call, there needed to be some way to record the number making the call so they could send that customer the bill.[5]
At the time, all of the numbers in a particular exchange had the same three digit central office code. At any given office, only the last four digits of the number, the station or line code, could change. This simplified accounting as only those four digits needed to be recorded. The translator consisted of four vertical rows of ten large cores, forty cores in total. When a customer was added, a wire from that user's connection was threaded through the correct cores for each of the four digits. For instance, if a user's line code was KLondike 5-1234 (555-1234 in modern terms), a wire from their connection would be threaded through core 1 in the top row of cores, core 2 in the second, and so forth.[5]
When the user placed a long-distance call, their line was connected to the translator, activating the cores which it threaded through. The translator then activated each row line in turn, which caused the sense lines in those columns to be activated if that was the wired digit. In early models of the #5 these were printed to punch tape by the Automatic Message Accounting system, using a variant of binary coded decimal. Later versions, the Centralized Automatic Message Accounting, replaced the punch tape with magnetic tape and a more complex encoding scheme.[5]
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 twelve 16-bit words per core.[6]
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]- ↑ "Software as Hardware: Apollo's Rope Memory". Retrieved 29 Sep 2017.
- ↑ "Computer for Apollo". MIT Science Reporter. 1965. WGBH.
- ↑ 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.
- ↑ R. J. Chapuis and A. E. Joel Jr., 100 Years of Telephone Switching, part 2: Electronics, Computers and Telephone Switching (2nd. edition), p. 33, IOS Press 2003.
- 1 2 3 Phil Ryals. "Dimond Rings and Read-Only Ropes". Archived from the original on 2015-09-12.
- ↑ "Software woven into wire: Core rope and the Apollo Guidance Computer". Retrieved 2024-03-20.
External links
[edit]- "Computer for Apollo" NASA/MIT film from 1965 which demonstrates how rope memory was manufactured.
- Visual Introduction to the Apollo Guidance Computer, part 3: Manufacturing the Apollo Guidance Computer. Deprecated link archived 2012-12-12 at archive.today – By Raytheon; hosted by the Library of the California Institute of Technology's History of Recent Science & Technology site (originally hosted by the Dibner Institute)
- Computers in Spaceflight: The NASA Experience – By James Tomayko (Chapter 2, Part 5, "The Apollo guidance computer: Hardware")
- Brent Hilpert's Core Rope & Woven-Wire Memory Systems page has a detailed explanation of pulse-transformer and switching-core techniques.
- SV3ORA's Core rope memory: A practical guide of how to build your own gives a description, schematics and photos of a simple core rope memory board using the pulse transformer technique, including a demonstration of operation.
- Software woven into wire: Core rope and the Apollo Guidance Computer, extensive blog post by computer restoration expert Ken Shirriff
- Australian 'ropes' demonstrated at MIT Letter from Ramon L. Alonso to Gordon Rose, dated 10 December 1963: "We are finding the Australian ideas on ‘ropes' to be very fruitful indeed, and we are going ahead with some development work on them."