Full Width [alt+shift+f] Shortcuts [alt+shift+k]
Sign Up [alt+shift+s] Log In [alt+shift+l]

Ken Shirriff's blog

Ken Shirriff's blog
Intel's $475 million error: the silicon behind the Pentium division bug In 1993, Intel released the high-performance Pentium processor, the start of the long-running...
a month ago
45
a month ago
In 1993, Intel released the high-performance Pentium processor, the start of the long-running Pentium line. The Pentium had many improvements over the previous processor, the Intel 486, including a faster floating-point division algorithm. A year later, Professor Nicely, a number...
Ken Shirriff's blog
Pi in the Pentium: reverse-engineering the constants in its floating-point unit Intel released the powerful Pentium processor in 1993, establishing a long-running brand of...
3 weeks ago
43
3 weeks ago
Intel released the powerful Pentium processor in 1993, establishing a long-running brand of high-performance processors.1 The Pentium includes a floating-point unit that can rapidly compute functions such as sines, cosines, logarithms, and exponentials. But how does the Pentium...
Ken Shirriff's blog
Reverse-engineering a carry-lookahead adder in the Pentium Addition is harder than you'd expect, at least for a computer. Computers use multiple types of adder...
2 weeks ago
27
2 weeks ago
Addition is harder than you'd expect, at least for a computer. Computers use multiple types of adder circuits with different tradeoffs of size versus speed. In this article, I reverse-engineer an 8-bit adder in the Pentium's floating point unit. This adder turns out to be a...
Ken Shirriff's blog
It's time to abandon the cargo cult metaphor The cargo cult metaphor is commonly used by programmers. This metaphor was popularized by Richard...
2 weeks ago
22
2 weeks ago
The cargo cult metaphor is commonly used by programmers. This metaphor was popularized by Richard Feynman's "cargo cult science" talk with a vivid description of South Seas cargo cults. However, this metaphor has three major problems. First, the pop-culture depiction of cargo...
Ken Shirriff's blog
Antenna diodes in the Pentium processor I was studying the silicon die of the Pentium processor and noticed some puzzling structures...
2 months ago
16
2 months ago
I was studying the silicon die of the Pentium processor and noticed some puzzling structures where signal lines were connected to the silicon substrate for no apparent reason. Two examples are in the photo below, where the metal wiring (orange) connects to small square regions of...
Ken Shirriff's blog
Interesting BiCMOS circuits in the Pentium, reverse-engineered Intel released the powerful Pentium processor in 1993, establishing a long-running brand of...
a week ago
15
a week ago
Intel released the powerful Pentium processor in 1993, establishing a long-running brand of processors. Earlier, I wrote about the ROM in the Pentium's floating point unit that holds constants such as π. In this post, I'll look at some interesting circuits associated with this...
Ken Shirriff's blog
Wealth distribution in the United States Forbes recently published the Forbes 400 List for 2024, listing the 400 richest people in the United...
3 months ago
13
3 months ago
Forbes recently published the Forbes 400 List for 2024, listing the 400 richest people in the United States. This inspired me to make a histogram to show the distribution of wealth in the United States. It turns out that if you put Elon Musk on the graph, almost the entire US...
Ken Shirriff's blog
Reverse-engineering a three-axis attitude indicator from the F-4 fighter plane We recently received an attitude indicator for the F-4 fighter plane, an instrument that uses a...
4 months ago
11
4 months ago
We recently received an attitude indicator for the F-4 fighter plane, an instrument that uses a rotating ball to show the aircraft's orientation and direction. In a normal aircraft, the artificial horizon shows the orientation in two axes (pitch and roll), but the F-4...
Ken Shirriff's blog
Inside an unusual 7400-series chip implemented with a gate array When I look inside a chip from the popular 7400 series, I know what to expect: a fairly simple...
10 months ago
11
10 months ago
When I look inside a chip from the popular 7400 series, I know what to expect: a fairly simple die, implemented in a straightforward, cost-effective way. However, when I looked inside a military-grade chip built by Integrated Device Technology (IDT)4 I found a very unexpected...
Ken Shirriff's blog
The Intel 8088 processor's instruction prefetch circuitry: a look inside In 1979, Intel introduced the 8088 microprocessor, a variant of the 16-bit 8086 processor. IBM's...
10 months ago
10
10 months ago
In 1979, Intel introduced the 8088 microprocessor, a variant of the 16-bit 8086 processor. IBM's decision to use the 8088 processor in the IBM PC (1981) was a critical point in computer history, leading to the dominance of the x86 architecture that continues to the present.1 One...
Ken Shirriff's blog
Inside the guidance system and computer of the Minuteman III nuclear missile The Minuteman missile was introduced in 1962 as a key part of America's nuclear deterrent. The...
5 months ago
10
5 months ago
The Minuteman missile was introduced in 1962 as a key part of America's nuclear deterrent. The Minuteman III missile is currently the only US land-based intercontinental ballistic missile (ICBM), with 400 missiles ready for launch, spread across five central states.1 The missile...
Ken Shirriff's blog
Two interesting XOR circuits inside the Intel 386 processor Intel's 386 processor (1985) was an important advance in the x86 architecture, not only moving to a...
a year ago
9
a year ago
Intel's 386 processor (1985) was an important advance in the x86 architecture, not only moving to a 32-bit processor but also switching to a CMOS implementation. I've been reverse-engineering parts of the 386 chip and came across two interesting and completely different circuits...
Ken Shirriff's blog
Reverse engineering CMOS, illustrated with a vintage Soviet counter chip I recently came across an interesting die photo of a Soviet1 chip, probably designed in the...
a year ago
9
a year ago
I recently came across an interesting die photo of a Soviet1 chip, probably designed in the 1970s. This article provides an introductory guide to reverse-engineering CMOS circuits, using this chip as an example. Although the chip looks like a tangle of lines at first, its large...
Ken Shirriff's blog
Inside a vintage aerospace navigation computer of uncertain purpose I recently obtained an aerospace computer from the early 1970s, apparently part of a navigation...
8 months ago
9
8 months ago
I recently obtained an aerospace computer from the early 1970s, apparently part of a navigation system. Aerospace computers are an interesting but mostly neglected area of computer hardware, so I'm always delighted to examine one up close. In an era when most computers were large...
Ken Shirriff's blog
Inside the mechanical Bendix Air Data Computer, part 3: pressure transducers MathJax = { tex: { inlineMath: [['$', '$'], ['\\(', '\\)']] }, svg: { fontCache:...
a year ago
9
a year ago
MathJax = { tex: { inlineMath: [['$', '$'], ['\\(', '\\)']] }, svg: { fontCache: 'global' }, chtml: { displayAlign: 'left' } }; MathJax.Hub.Config({ "HTML-CSS": { scale: 175} }); .MathJax {font-size: 1em !important} The Bendix Central Air...
Ken Shirriff's blog
Reverse engineering the 59-pound printer onboard the Space Shuttle The Space Shuttle contained a bulky printer so the astronauts could receive procedures, mission...
6 months ago
9
6 months ago
The Space Shuttle contained a bulky printer so the astronauts could receive procedures, mission plans, weather reports, crew activity plans, and other documents. Needed for the first Shuttle launch in 1981, this printer was designed in just 7 months, built around an Army...
Ken Shirriff's blog
Reverse engineering the barrel shifter circuit on the Intel 386 processor die The Intel 386 processor (1985) was a large step from the 286 processor, moving x86 to a 32-bit...
a year ago
9
a year ago
The Intel 386 processor (1985) was a large step from the 286 processor, moving x86 to a 32-bit architecture. The 386 also dramatically improved the performance of shift and rotate operations by adding a "barrel shifter", a circuit that can shift by multiple bits in one step. The...
Ken Shirriff's blog
Talking to memory: Inside the Intel 8088 processor's bus interface state machine In 1979, Intel introduced the 8088 microprocessor, a variant of the 16-bit 8086 processor. IBM's...
9 months ago
8
9 months ago
In 1979, Intel introduced the 8088 microprocessor, a variant of the 16-bit 8086 processor. IBM's decision to use the 8088 processor in the IBM PC (1981) was a critical point in computer history, leading to the success of the x86 architecture. The designers of the IBM PC selected...
Ken Shirriff's blog
Inside the Intel 386 processor die: the clock circuit Processors are driven by a clock, which controls the timing of each step inside the chip. In this...
a year ago
8
a year ago
Processors are driven by a clock, which controls the timing of each step inside the chip. In this blog post, I'll examine the clock-generation circuitry inside the Intel 386 processor. Earlier processors such as the 8086 (1978) were simpler, using two clock phases internally. The...
Ken Shirriff's blog
The Pentium as a Navajo weaving Hurrying through the National Gallery of Art five minutes before closing, I passed a Navajo weaving...
5 months ago
7
5 months ago
Hurrying through the National Gallery of Art five minutes before closing, I passed a Navajo weaving with a complex abstract pattern. Suddenly, I realized the pattern was strangely familiar, so I stopped and looked closely. The design turned out to be an image of Intel's Pentium...
Ken Shirriff's blog
Standard cells: Looking at individual gates in the Pentium processor Intel released the powerful Pentium processor in 1993, a chip to "separate the really power-hungry...
6 months ago
7
6 months ago
Intel released the powerful Pentium processor in 1993, a chip to "separate the really power-hungry folks from ordinary mortals." The original Pentium was followed by the Pentium Pro, the Pentium II, and others, spawning a long-running brand of high-performance processors, Intel's...
Ken Shirriff's blog
Reverse-engineering an analog Bendix air data computer: part 4, the Mach section MathJax = { tex: { inlineMath: [['$', '$'], ['\\(', '\\)']] }, svg: { fontCache:...
11 months ago
7
11 months ago
MathJax = { tex: { inlineMath: [['$', '$'], ['\\(', '\\)']] }, svg: { fontCache: 'global' }, chtml: { displayAlign: 'left' } }; MathJax.Hub.Config({ "HTML-CSS": { scale: 175} }); .MathJax {font-size: 1em !important} In the 1950s, many fighter...
Ken Shirriff's blog
Reverse engineering standard cell logic in the Intel 386 processor The 386 processor (1985) was Intel's most complex processor at the time, with 285,000...
a year ago
7
a year ago
The 386 processor (1985) was Intel's most complex processor at the time, with 285,000 transistors. Intel had scheduled 50 person-years to design the processor, but it was falling behind schedule. The design team decided to automate chunks of the layout, developing "automatic...
Ken Shirriff's blog
Inside a ferroelectric RAM chip Ferroelectric memory (FRAM) is an interesting storage technique that stores bits in a special...
4 months ago
6
4 months ago
Ferroelectric memory (FRAM) is an interesting storage technique that stores bits in a special "ferroelectric" material. Ferroelectric memory is nonvolatile like flash memory, able to hold its data for decades. But, unlike flash, ferroelectric memory can write data...
Ken Shirriff's blog
Interesting double-poly latches inside AMD's vintage LANCE Ethernet chip I've studied a lot of chips from the 1970s and 1980s, so I usually know what to expect. But an...
a year ago
6
a year ago
I've studied a lot of chips from the 1970s and 1980s, so I usually know what to expect. But an Ethernet chip from 1982 had something new: a strange layer of yellow wiring on the die. After some study, I learned that the yellow wiring is a second layer of resistive polysilicon,...
Ken Shirriff's blog
Inside the mechanical Bendix Air Data Computer, part 5: motor/tachometers The Bendix Central Air Data Computer (CADC) is an electromechanical analog computer that uses gears...
11 months ago
6
11 months ago
The Bendix Central Air Data Computer (CADC) is an electromechanical analog computer that uses gears and cams for its mathematics. It was a key part of military planes such as the F-101 and the F-111 fighters, computing airspeed, Mach number, and other "air data". The rotating...
Ken Shirriff's blog
Inside the tiny chip that powers Montreal subway tickets To use the Montreal subway (the Métro), you tap a paper ticket against the turnstile and it...
7 months ago
5
7 months ago
To use the Montreal subway (the Métro), you tap a paper ticket against the turnstile and it opens. The ticket works through a system called NFC, but what's happening internally? How does the ticket work without a battery? How does it communicate with the turnstile? And how can it...
Ken Shirriff's blog
Inside an IBM/Motorola mainframe controller chip from 1981 In this article, I look inside a chip in the IBM 3274 Control Unit.1 But before I discuss the chip,...
6 months ago
5
6 months ago
In this article, I look inside a chip in the IBM 3274 Control Unit.1 But before I discuss the chip, I need to give some background on mainframes. (I didn't completely analyze the chip, so don't expect a nice narrative or solid conclusions.) Die photo of the Motorola/IBM SC81150...
Ken Shirriff's blog
The first microcomputer: The transfluxor-powered Arma Micro Computer from 1962 What would you say is the first microcomputer?1 The Apple I from 1976? The Altair 8800 from...
11 months ago
5
11 months ago
What would you say is the first microcomputer?1 The Apple I from 1976? The Altair 8800 from 1974? Perhaps the lesser-known Micral N (1973) or Q1 (1972)? How about the Arma Micro Computer from way back in 1962. The Arma Micro Computer was a compact 20-pound transistorized...
Ken Shirriff's blog
The transparent chip inside a vintage Hewlett-Packard floppy drive While repairing an eight-inch HP floppy drive, we found that the problem was a broken interface...
a year ago
4
a year ago
While repairing an eight-inch HP floppy drive, we found that the problem was a broken interface chip. Since the chip was bad, I decapped it and took photos. This chip is very unusual: instead of a silicon substrate, the chip is formed on a base of sapphire, with silicon and metal...
Ken Shirriff's blog
The origin and unexpected evolution of the word "mainframe" What is the origin of the word "mainframe", referring to a large, complex computer? Most sources...
6 hours ago
3
6 hours ago
What is the origin of the word "mainframe", referring to a large, complex computer? Most sources agree that the term is related to the frames that held early computers, but the details are vague.1 It turns out that the history is more interesting and complicated than you'd...