Ken Shirriff Profile picture
@kenshirriff@oldbytes.space Computer history. Reverse-engineering old chips. Restored Apollo Guidance Computer, Alto. Ex-Google, Sun, Msft. So-called boffin.
20 subscribers
Feb 3 18 tweets 7 min read
The Intel 386 processor (1985) was a key step in the evolution of x86, moving to 32 bits as well as a CMOS implementation. A less visible design change is its use of standard cell logic (marked in red), building many circuits from standardized building blocks. 1/17 A die photo of the 386 processor. The standard cell regions are highlighted with red boxes. These areas have a striped appearance and are less dense than other circuitry. The 386 was originally scheduled for 50 person-years of development time, but it fell behind schedule. The designers made a risky decision to use "automatic place and route", letting software do some layout. This worked and the chip was completed ahead of schedule. 2/17
May 14, 2023 8 tweets 3 min read
The Intel 8086 processor (1978) started the PC era and most desktop computers still use the x86 architecture. Its instruction set is complicated with a variety of formats. This made decoding each instruction a challenge. The Group Decode ROM was a key part. 🧵 A die photo of the Intel 80... Most 8086 instructions are implemented in microcode, a level of instructions below the familiar machine instructions. But before microcode can run, something called the Group Decode ROM categorizes instructions according to their structure, shown as colors below. A table showing the 8068 op...
May 12, 2023 11 tweets 5 min read
Here's a silicon wafer for Intel's iAPX 432 processor (1981), a failed "micro-mainframe". Each rectangle on the wafer is one processor chip. But what are those five unusual rectangles? Those are test circuits... 🧵 A 4" silicon wafer, a ... Creating chips on a silicon wafer is complicated and lots can go wrong. A few test circuits were placed on the die so Intel could check the important characteristics and make sure everything was okay. The white squares are test pads. Tiny probes contact the pads for measurements. Closeup of the test circuit...
Apr 24, 2023 9 tweets 5 min read
This Central Air Data Computer (CADC) was introduced in 1955. It computed airspeed, altitude, etc for fighter planes. But instead of a processor, it was an analog computer that used tiny gears for its computations. Let's look at how one of its modules works.🧵 The CADC is a cylindrical m... Planes determine altitude and speed from air pressure readings. But near the speed of sound, things become very nonlinear. As fighter planes became supersonic in the 1950s, the CADC was built to compute these nonlinear functions using rotations of gears and cams. A vintage ad for the "...The air data equations. The...A closeup of the CADC showi...
Mar 22, 2023 14 tweets 6 min read
Soviet cosmonauts used the Globus INK to track their position above the Earth. In use from 1967 into the 21st century, the Globus is an analog computer, crammed full of tiny gears. I reverse-engineered the Globus and can explain how these gears compute the orbit. 🧵 The Globus is a gray metal ...With the cover off, the com... The key component is a differential gear assembly that adds two rotations. Three spur gears provide two inputs and an output, while the spider gear assembly spins to generate the sum. The differential in your car uses a similar principle. This diagram shows the comp...
Mar 11, 2023 7 tweets 3 min read
Intel introduced the 8086 microprocessor in 1978 and it still has a huge influence through the modern x86 architecture used today. This 16-bit processor contains a bunch of registers, some of them hidden. I reverse-engineered the 5-bit code that it uses to select registers. 🧵 A closeup of the 8086 die w... Instructions for the 8086 processor specify registers through 3 bits in the opcode or following byte. This is expanded to a 5-bit code to support 16-bit registers (red), 8-bit registers (blue), segment registers (green), and special internal registers. A table showing how registe...A table showing the 5-bit c...
Mar 7, 2023 4 tweets 3 min read
The rotating globe of the Globus INK (1967) showed Soviet cosmonauts their location in orbit. This analog gear-driven computer has a "landing position" feature that rapidly spins the globe to show where they would land. Then it spins back to orbit.🧵 The Globus advances its position every second. That's the annoying clicking sound, solenoids ratcheting the gears forward. For the landing position, a separate motor (upper right) spins the globe, stopping when an arm hits the limit switch. The relay board controls the motor. A closeup of the Globus sho...The electronics board with ...
Mar 7, 2023 6 tweets 2 min read
Vonada's Engineering Maxims:
1. There is no such thing as ground.
2. Digital circuits are made from analog parts.
3. Prototype designs always work.
4. Asserted timing conditions are designed first; unasserted timing conditions are found later. Table of Vonada's Engineeri... 5. When all but one wire in a group of wires switch, that one will switch also.
6. When all but one gate in a module switches, that one will switch also.
7. Every little pico farad has a nano henry all its own.
Mar 4, 2023 9 tweets 5 min read
The rotating globe of the Globus INK (1967) showed Soviet cosmonauts their location in orbit. This electromechanical analog computer uses tiny gears for all its calculations, but it has an electronics board with relays to control the motors. Let's look at the electronics board.🧵 The Globus with the cover r...A closeup of gears inside t...Front view of the Globus, a...The electronics board insid... By flipping a switch on the Globus, the globe rapidly rotates to show the current landing position. This rotation is controlled by a swing arm that moves between two limit switches. One limit switch moves via a knob to control the angle to the landing site. A knob with three Cyrillic ...A diagram showing the swing...A knob and rotating digit d...
Feb 21, 2023 5 tweets 2 min read
How did Russian cosmonauts know where they were? The Globus INK (1967) showed the position of their Soyuz spacecraft on a rotating globe. It is an analog computer built from tiny gears. I reverse-engineered the wiring (which inconveniently had been cut) and we powered it up. 🧵 The Globus is driven by solenoids. We "overclocked" the Globus and ran it at 10 hertz instead of 1 hertz because its motion is too slow to see otherwise: 90 minutes for an orbit and 24 hours for the Earth to rotate. Here's a clip showing the Globus running at its correct speed.
Jan 21, 2023 15 tweets 7 min read
The Globus INK (1967) is a remarkable piece of Soviet spacecraft equipment. Its rotating globe showed cosmonauts the position of their Soyuz spacecraft. An electromechanical analog computer, it used gears, cams, and differentials to compute the position. Let's look inside 🧵 The Globus INK-2S is a gray...The Globus with the case re... The Globus used complex gear trains driven by solenoids to move the globe. A closeup showing many smal...A solenoid driving a ratche...
Jan 2, 2023 8 tweets 3 min read
The Intel 8086 processor was introduced in 1978, ancestor of the x86 architecture. The 8086 was the first microprocessor with prefetch, reading instructions from memory in advance for more speed. By reverse-engineering the chip under a microscope, I can explain how this works. 🧵 A die photo of the 8086 pro... The 8086 has a 6-byte prefetch queue (photo), which is tiny compared to the megabytes of cache on modern processors, but it increased performance by about 50%. Intel ran a bunch of simulations to decide on the 6-byte queue (4-byte on the 8088 with its narrower 8-bit bus). Closeup of the prefetch que...
Dec 16, 2022 6 tweets 4 min read
The Bendix Central Air Data Computer (CADC) was introduced in 1955. This complex mechanical analog computer uses tiny gears, cams, and differentials to determine airspeed, altitude, etc for fighter planes. I hooked a synchro up to the CADC and got some output from it. 🧵 The CADC is a cylinder cram...A closeup of gears and diff...The CADC on a workbench wit... Although the CADC performed computations mechanically, its outputs are electrical. It uses small synchros to convert shaft rotations to three-phase voltages. For accuracy, it uses two synchros for each measurement: coarse and fine. The connectors on the exter...A closeup of a synchro, lab...Text from the military spec...
Nov 11, 2022 13 tweets 8 min read
The Bendix Central Air Digital Computer (CADC) was introduced in 1955. It was a critical component of fighter planes, using tiny gears to compute parameters such as airspeed and altitude. It contained 46 synchros, 511 gears, 820 ball bearings, and a total of 2,781 major parts. 🧵 The Bendix Central Air Data...From the outside, the CADC ...The front of the CADC has r...A closeup of the complex ge... This analog computer performs calculations using rotating shafts and gears, where the angle of rotation indicates a numeric value. Differential gears perform addition and subtraction, while cams implement functions. Closeup of a differential g...A complex mechanism of inte...
Jul 28, 2022 58 tweets 29 min read
The HIMARS mobile rocket launcher has been in the news as a powerful new weapon in Ukraine. I thought a teardown of its internal electronics would be interesting. (Nobody would give me a HIMARS so this is a "virtual" teardown.) Laser gyros and other technology ahead... 1/57 HIMARS in Australia. Photo ...HIMARS launch in Ukrainian ...The Honeywell HG1700 IMU di...Top and bottom view of the ... The HIMARS vehicle holds 6 rockets in a launch pod, which it quickly swivels left and right, up and down to aim at the target. Nicknamed the "70km sniper", HIMARS rapidly fires highly-accurate rockets over long distances and drives away before the enemy can respond. 2/57 A HIMARS sitting in a field...A tan-colored HIMARS, sitti...A HIMARS firing a GMLRS ove...A HIMARS firing in the Kuwa...