Magnetic core memory is an early form of non-volatile random-access memory (RAM) that was widely used in computers from the 1950s to the 1970s. It stores data using tiny magnetic rings (cores) that can be magnetized in two different directions, representing binary values (0 or 1). Here's a detailed explanation of how it works:
### Components of Magnetic Core Memory:
1. **Magnetic Cores**: The memory consists of tiny toroidal (doughnut-shaped) magnetic cores, typically made from a ferrite material. Each core can be magnetized in one of two directions, which corresponds to a bit of data (0 or 1).
2. **Wires**:
- **X and Y Drive Wires**: Two perpendicular wires, known as X and Y lines, pass through the cores. These are used to set or read the magnetization state.
- **Sense Wire**: A separate sense wire passes through all the cores. It's used to detect the change in magnetization when a core's state is altered.
- **Inhibit Wire**: This wire is used to prevent the core from changing its state when needed.
### How Magnetic Core Memory Works:
Magnetic core memory operates by using a process known as **magnetic hysteresis**, where the core can maintain its magnetic state without the need for a constant electrical current.
1. **Writing Data**:
- When data is written, a current is sent through the X and Y drive wires. The intersection of these wires determines the specific core (memory cell) that is targeted.
- To write a "1", the current is strong enough to flip the magnetization of the selected core. This is called **saturation**.
- If a "0" is being written, the current sent through the X and Y wires is not strong enough to change the core's magnetic state. In some systems, the inhibit wire is used to block the core's magnetization flip if a "0" is needed.
2. **Reading Data**:
- To read the data, a current is applied to the X and Y wires in the same way as during a write operation, but instead of trying to set the magnetic state, the goal is to sense if the core changes its magnetization.
- If the core's magnetic state flips (for example, from 1 to 0), it induces a small voltage in the sense wire. This voltage is detected and interpreted as the data stored in the core.
- Importantly, reading the core's state is a **destructive process**. Once read, the core is always reset to a "0" state, so the system must immediately rewrite the original value back to the core if it was a "1".
3. **Non-Volatility**:
- Magnetic core memory retains its data even when power is turned off because the magnetic orientation of each core remains until it is deliberately changed. This makes it non-volatile, unlike modern RAM which loses data when powered down.
### Key Characteristics:
- **Reliability**: Core memory was highly reliable for its time because it was unaffected by power loss or most forms of electromagnetic interference.
- **Speed**: Though relatively slow by modern standards, core memory was faster than other early storage technologies such as vacuum tubes or drum memory.
- **Scalability**: Core memory systems were made up of matrices of cores. Each core represented a single bit of data, and multiple cores were arranged in a grid to store larger amounts of data.
### Diagram Explanation (Simplified Example):
Imagine a grid of cores, where each core represents a bit of data. Wires are run along the X and Y axes, and when a specific X and Y wire pair is energized, the corresponding core can be magnetized (or demagnetized). A sense wire is used to read whether the core's magnetic direction has changed, thereby determining whether it holds a 0 or 1.
---
Magnetic core memory was eventually replaced by semiconductor-based memory like DRAM, which was faster, cheaper, and capable of holding more data in smaller spaces. Nonetheless, magnetic core memory was a key technology during the early days of computing, helping drive the development of reliable and efficient computers.