P-Lab's Zilog Z80 Single-Board Computer Channels Its Inner Apollo with Woven-Wire Core Memory
Inspired by NASA core-rope systems of the 1960s, this SBC uses a woven-wire ROM to program a Z80 for Fibonacci calculations.
Pseudonymous maker "P-Lab" has made a Zilog Z80-based single-board computer with a difference: it packs a simplified version of the sort of core-rope memory that sent NASA's Apollo missions to the moon.
"This is a demonstration board to show the operation of the so-called 'Woven-Wire Read-Only Memory,'" P-Lab explains of the device, which performs its computation with a Zilog Z80 eight-bit processor and outputs to a pair of seven-segment displays. "This technique is related to the well-known 'Core Rope' Read-Only memory used by NASA in Apollo missions (and not only) in the AGC (Apollo Guidance Computer), but it's simpler."
Magnetic-core memory is, as the name implies, memory built using magnetic cores woven onto wires that can read and change their polarity β storing data one-bit per magnetic core. Core rope memory is a variant of this, simplified by the exclusion of any ability to write β with data being stored for later retrieval in the way the magnetic cores are wired together, rather than their magnetic polarity at any given point in time.
The most famous use of magnetic rope memory as a robust read-only memory is in NASA's Mars space probes of the 1960s and the Apollo Guidance Computer, which took astronauts to the moon and back again. It's this latter implementation that inspired P-Lab's Z80-powered single-board computer, though its memory is simpler still β just 16 bytes of woven-wire core memory.
"Functionally," P-Lab explains, "the microprocessor reads and executes the previously woven code with wires passing in and out of the individual cores. The sequences of 1s and 0s are nothing more than the translation of the program source code into binary. Individual lines are activated via a 2N2222 transistor, which is driven by the 4-to-16 decoder connected to the first four bits of the Address Bus. The design was made with scavenged material, some choices are also a consequence of the layout chosen for the components (e.g., the A/B direction of the 74HC245 requiring an inverter)."
P-Lab has documented the project on their GitHub Pages site, with more information β and a demonstration of using the system to calculate a Fibonacci sequence β available in the video embedded above and on the P-Lab YouTube channel.