HNHacker News
TopNewBestAskShowJobs

kens

23,381 karma · joined October 11, 2010

Ken Shirriff ken.shirriff@gmail.com https://righto.com @righto.com on Bluesky @oldbytes.space/@kenshirriff on Mastodon
submissionscomments
kens··on The adder at the heart of Intel's 8087 floating-point chip
The 8087 has one metal layer, which makes power distribution more challenging. You want to keep power distribution in the metal, so for the most part the pattern is two interdigitated trees for power and ground. There are a few places where the lines need to cross, which is accomplished with a short polysilicon connection underneath. The two clock lines are also kept in metal whenever possible.

The die photo at the start of the article shows some of the power distribution (the thick white lines around the edge and through the die). I have a close-up shot of the adder's metal layer in the article, showing the thick power and ground metal lines that run next to the adder.

As far as capacitors, there are some capacitors for specific things, but no decoupling capacitors. I think the capacitors are mostly to tweak the timing, if a signal needs to be delayed slightly.

kens··on The adder at the heart of Intel's 8087 floating-point chip
In more detail, the microcode engine normally executes one micro-instruction per cycle. For addition, the engine is blocked for one extra cycle to give the result time to percolate through the adder.

There is some complicated timing within a clock cycle with slightly delayed clocks and whatnot, for instance, to precharge the carry lines at the beginning of the operation. The 8087 is mostly synchronous with the clock, but they "cheat" in many places.

kens··on The adder at the heart of Intel's 8087 floating-point chip
I count approximately 2014 transistors (including pull-ups) for the 69-bit adder. Each block of four bits takes approximately 117 transistors.
kens··on The adder at the heart of Intel's 8087 floating-point chip
Even by the time of the Pentium, they had moved to much more complicated adders like Kogge-Stone. I wrote about it here: https://www.righto.com/2025/01/pentium-carry-lookahead-rever...
kens··on The adder at the heart of Intel's 8087 floating-point chip
Author here for your 8087 questions. I find adders and ALUs interesting because they are key to the performance of a system and every system implements them differently.
kens··on Apple didn't revolutionize power supplies; new transistors did (2012)
That was written by Walter Isaacson, who wrote the biography of Steve Jobs.He is a good writer, but that description of a switching power supply is very messed up. You can see the right ideas inside there, struggling to escape.
kens··on Apple didn't revolutionize power supplies; new transistors did (2012)
Switchers have much smaller transformers because the frequency is much higher, >20 kHz vs 60 Hz. (This is the same reason that avionics use 400 Hz power instead of 60 Hz.)
kens··on Apple didn't revolutionize power supplies; new transistors did (2012)
Author here. Can you clarify what you consider Holt's innovative power supply accomplishment to be? I spent an excessive amount of time studying Holt's power supply to find out what made it special, but couldn't find anything particularly important.
kens··on The iPhone's Last Stand?
I noticed the same thing. "The fact that billions of consumers already have iPhones" is a hallucination, not a fact. Billions of consumers have Android phones, but that's not the case for iPhones. (Billions of iPhones have been sold, though.)
kens··on Switzerland wil have a referendum to cap population at 10M
Serious question: what is ONG? I assume it's like LNG (liquefied natural gas), but after multiple searches, all I can come up with is Oklahoma Natural Gas, NGO in French, and On God.
kens··on Powering up a module from the IBM 604: an electronic calculator from 1948
I'd be interested in scanning the drawings if they aren't already scanned. If you want to get rid of the modules, I can set you up with a museum.
kens··on Powering up a module from the IBM 604: an electronic calculator from 1948
Univac had similar single-tube modules (but without the handle), as well as multiple-tube modules. See this video: https://www.youtube.com/watch?v=NVbjXHR6WAY The BRLESC computer used printed-circuit boards that had components and a single tube (parallel to the surface). I have a Burroughs module with 8 tubes.
kens··on Powering up a module from the IBM 604: an electronic calculator from 1948
I don't have the information for the 604, but the 605 used about 36 different types of tube modules. IBM couldn't resist making different types of modules; the 650 had sixteen types of cathode followers alone.
kens··on Powering up a module from the IBM 604: an electronic calculator from 1948
I powered up the module independently, powering a light bulb, so it's a non-computing configuration. (I'm not sure if that's what you're asking.)
kens··on Powering up a module from the IBM 604: an electronic calculator from 1948
Nice summary! For anyone interested in these systems, the book "IBM's Early Computers" provides a detailed history.
kens··on Powering up a module from the IBM 604: an electronic calculator from 1948
One way they get away with using relatively few tubes is that most of the Boolean logic is done with semiconductor (germanium) diodes, using tubes to amplify the results.
kens··on Powering up a module from the IBM 604: an electronic calculator from 1948
Author here for your vacuum tube questions...
kens··on Only 17% of all 64-bit Integers are products of two 32-bit integers
I've been looking at the 8087 NaN circuitry lately. Having 2^53 (or whatever) values for NaN was supposedly a feature: "the large number of NAN values that are available, provide the sophisticated programmer with a tool that can be applied to a variety of special situations." For example, the different NaN values could hold debugging information to track down errors.

See "8087 Numeric Data Processor" page S-74: https://ethw.org/w/images/2/2f/Intel_8086_family_users_numer...

kens··on Microcode inside the Intel 8087 floating-point chip: register exchange
Thanks for the nice comment!
kens··on Microcode inside the Intel 8087 floating-point chip: register exchange
That's basically the RISC approach, using simple one-clock instructions instead of complex microcoded instructions. In the case of the 8087, it made sense to use microcode because the 8087 is running in parallel with the regular 8086 processor. If the 8087 is constantly fetching micro-instructions from RAM, it will get in the way of the 8086. (Note that RISC chips rapidly added floating-point units, even though that goes against the strict RISC ideology.)
kens··on Microcode inside the Intel 8087 floating-point chip: register exchange
Usually, it's not worth the effort of converting microcode into discrete logic to get performance. Among other things, it's a mess to try to fix a bug.

A few exceptions: The different models of the IBM System/360 mainframe are almost all microcoded, except for the high-end machines, which were hard-wired for performance. The design of the Apollo Guidance Computer is microcode, but the implementation is discrete logic. The 8086 and derivatives are microcoded, except NEC created a faster hard-wired version, the V33.

kens··on Microcode inside the Intel 8087 floating-point chip: register exchange
Author here if anyone has questions about the 8087's microcode...
kens··on Reverse engineering circuitry in a Spacelab computer from 1980
I don't know what the clock speed was, but it performed about 525,000 addition instructions per second. (1.9µs addition time)
kens··on Reverse engineering circuitry in a Spacelab computer from 1980
I don't want to be rude, but I am not following your argument here. a) The computer that I'm examining is from 1980, not 1970, so I don't know why you're changing the time period. b) I have the circuit boards in front of me. They have more than two layers. c) You linked to a photo of a completely different computer. d) Drilling PCB holes in a non-regular pattern was trivial in 1975 and how most PCBs were built. Look at the S-100 boards from the Altair 8800 (1974) or look at the Apple I circuit board (1976) for instance.
kens··on Reverse engineering circuitry in a Spacelab computer from 1980
Why do you doubt that these are multi-layer boards? IBM was making four-layer boards exactly like these in 1964 for the System/360 (signals on the top and bottom layers, power and ground in the middle layers).
kens··on Reverse engineering circuitry in a Spacelab computer from 1980
Much of the software was in a language called HAL/S (High-order Assembly Language/Shuttle), using an IBM 360/370 for compilation. Other software was written in Fortran. See https://www.cs.toronto.edu/XPL/hal.html and https://repository.arizona.edu/bitstream/handle/10150/613923...
kens··on Reverse engineering circuitry in a Spacelab computer from 1980
You can see how the traces go between the holes if you zoom in on this photo: https://static.righto.com/images/cimsa/board-back.jpg
kens··on Reverse engineering circuitry in a Spacelab computer from 1980
You're right; I should have said x86-style.
kens··on Reverse engineering circuitry in a Spacelab computer from 1980
The Mitra 125 had memory segmentation. It seems similar to the 8086, with descriptors that specified base address and length for a segment. Accessing memory outside a segment caused a trap.
kens··on Reverse engineering circuitry in a Spacelab computer from 1980
The grid is 0.1" holes because that's the spacing of most components; it's a bit like perfboard. If you're asking why they used a grid instead of a normal-style PCB, I'm not sure. It probably makes manufacturing the boards much easier since you can drill the holes with an assembly line rather than one at a time. The traces go between the holes; the traces are very narrow, so two traces can fit between a pair of holes. That's probably the tradeoff, that your traces need to be very precise and you probably need more layers because of all the holes in the way. The layout was probably done with CAD; PCBs with CAD go way back. IBM was doing circuit boards with CAD back in the early 1960s, using a flying spot of light to draw out the PCBs on photoresist.
← PreviousPage 3 of 34Next →