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 Cores in space: The core memory module from a 1980 Spacelab computer
Core memory is very resistant to radiation. When the Shuttle computers were upgraded to semiconductor memory, radiation became an issue. The solution was to add six extra bits of storage to each word and use ECC. A background process scanned for errors and corrected them. The computer could encounter 100 bit flips per flight, so radiation was significant. (There was even an incident where a single cosmic ray flipped 14 bits.) The other problem with semiconductor memory was its volatility, so the computer had NiCd batteries for backup power to the RAM.

For details on how radiation affected the Space Shuttle's computers, see this paper: https://klabs.org/DEI/Processor/shuttle/oneill_94.pdf

kens··on Cores in space: The core memory module from a 1980 Spacelab computer
I've already written articles about the French computer and FRAM; enjoy :-) https://www.righto.com/2026/05/reverse-engineering-spacelab-... https://www.righto.com/2024/09/ramtron-ferroelectric-fram-di...
kens··on Cores in space: The core memory module from a 1980 Spacelab computer
Author here for all your core memory questions...
kens··on Turns are Better than Radians (2022)
One weird unit for angles is the mil, defined as 6400 mils in a circle. This unit is very useful for artillery, since 1 meter displacement at a distance of 1 km is 1 mil [†]. Thus, you can see how much you missed by, divide by the distance, and easily determine how much you need to adjust your aim in mils. Another interesting thing about artillery is they traditionally do a binary search to get the distance correct, which they call "bracketing". Link: https://unitedtaskforce.net/training/sop/communication/artil...

[†] Note that this isn't exactly correct since it corresponds to pi = 3.2. A mil is almost the same as a milliradian, but 6400 mils in a circle is much more convenient than 6283.18... milliradians in a circle.

kens··on Parametron: 50s Japanese computer that uses neither transistors nor vacuum tubes
The history of computing is usually described as a nice progression from vacuum tubes to transistors and then ICs. But parametrons are only one of the many forgotten technologies that popped up along the way. Magnetic core logic such as transfluxors was used in several computers. Superconducting cryotrons were going to revolutionize computers. Tunnel-diode logic was also briefly the wave of the future. Other significant technologies were microwave logic circuits and electroluminescent logic circuits. I have to say that the 1950s came up with the best names; modern technologies just don't measure up to transfluxors, parametrons, and cryotrons.

See Digital Computer Design Fundamentals, 1962, chapter 6.

kens··on Parametron: 50s Japanese computer that uses neither transistors nor vacuum tubes
I wrote an article on the history of magnetic amplifiers: https://spectrum.ieee.org/the-vacuum-tubes-forgotten-rival

The quick summary is that magnetic amplifiers started in the US in 1901, but Germany came up with much better magnetic alloys during World War II. This led to a post-war boom in mag amps, which were used in industrial control, aerospace, and computers such as the Univac Solid State. These magnetic materials also led to core memory. Transistors mostly killed off mag amps, although PC power supplies used them into the 1990s.

kens··on Can you reverse engineer an ASIC?
I'm too busy trying to reverse-engineer the Intel 8087 floating-point chip, although it would be interesting to look at this puzzle chip.
kens··on Energizing a vacuum-tube flip-flop module from a 1948 IBM system
Thanks for filling in the details! I figured that I was already going into too much history in my article :-)
kens··on Learn how chips are made with this Rollercoaster Tycoon-inspired animation
Cute, but the steps don't make sense. E.g. each cycle shows both an ion gun and wire deposition. But only the first layer would use the ion gun, and only the following layers would have metal deposited. (Front End of Line vs Back End of Line). Not to mention the lack of diffusion and oxidation. The whole "loop" metaphor gives the wrong idea of what's happening.
kens··on Energizing a vacuum-tube flip-flop module from a 1948 IBM system
Author here. I've powered up another tube module from the IBM 604, so let me know if you have questions...
kens··on Show HN: Formally verified 3D CSG: Trust 93 lines spec, not 1000 lines AI code
It's kind of hopeless to try to prove that a microprocessor works according to spec, since you're dealing with physical objects in the real world. For instance, early versions of Intel's 386 processor had a 32-bit multiply problem that only showed up in some chips under particular combinations of temperature, voltage, and frequency, probably due to a transistor that wasn't large enough to provide an electrical margin under worst-case conditions.
kens··on The glass backbone: Why the Army's logistics will break in the next war
Serious question: does Figure 1 in the article make sense to anyone? If you understand the symbols, do you look at the diagram and it's clear how logistics works?
kens··on Using precision editing to study human embryo development shows master gene
The short answer is the "14-day" rule, which doesn't allow development of the embryo beyond 14 days. The article gives specifics under the heading "Ethical and legal compliance"
kens··on Examining circuit boards from the Space Shuttle's I/O Processor
Oops, I've fixed that now.
kens··on Examining circuit boards from the Space Shuttle's I/O Processor
It's unlikely that you'd get a simultaneous tie; you'd expect one computer to go bad before the other. But I think in that case, the astronauts switch to the Backup Flight System, the fifth computer.

Mission STS-9 had two computer failures, causing landing to be delayed by 7 3/4 hours. They carried a sixth computer as a backup for following missions.

As far as how the voting works, each computer has a signal indicating what it thinks the status is of each computer, including itself. (Computers can detect many failures from self-checking, such as parity errors.) Each IOP uses these votes to determine the "redundant set", calculating the votes in hardware. The status is also displayed to the astronauts in a 5×5 grid. Astronauts can power down a computer or reboot it.

kens··on Examining circuit boards from the Space Shuttle's I/O Processor
There have been a fair number of GPC failures [1], and computers have been voted out. I haven't looked closely enough to see how many were "disagreements" versus hard failures or self-check failures.

[1] Search for "GPC" in the Mission Summary report: https://newspaceeconomy.ca/wp-content/uploads/2023/05/space-...

kens··on Examining circuit boards from the Space Shuttle's I/O Processor
Sorry, I don't know anything secret :-)
kens··on Examining circuit boards from the Space Shuttle's I/O Processor
I don't know if these boards were flown. They were coated with conformal coating (which I hate for reverse-engineering), which is usually omitted from prototypes. I believe that bodge wires are okay for flight if they are done properly.
kens··on Examining circuit boards from the Space Shuttle's I/O Processor
Yes, the low density and TTL chips (instead of MOS) helped against radiation. When the Shuttle computers moved to semiconductor RAM, they needed extensive error correction, as well as a process that constantly fixed bit errors, as the memory would get multiple errors per flight due to cosmic rays.

As far as redundancy, it's complicated. During critical flight phases, four computers would run the main software (PASS, Primary Avionics Software System), while the fifth computer was ready with the Backup Flight Software (BFS). The backup software was written by a completely different team to ensure that a software bug couldn't crash all the computers at once. In orbit, they used fewer redundant computers to free up computers for payload operations and stuff.

The four computers constantly checked the results from each other and would vote out a faulty system. Voting ensured that a bad computer couldn't vote out the good ones (Byzantine failure). Moreover, the actuators hydraulically voted on the results from the computers: if one computer tried to push a valve in a different direction, the three good computers would physically overpower the bad computer's action at the level of the hydraulic pistons.

kens··on Examining circuit boards from the Space Shuttle's I/O Processor
Author here if you have questions...
kens··on Solving Wordle using information theory
What I'm interested in is the best starting word. Using Shannon entropy, the paper finds that it is "tares".
kens··on Die analysis of the 8087 math coprocessor's fast bit shifter (2020)
CAD was a very incremental process. Early chips were drawn by hand and the Rubylith masks were cut by hand with the help of a Coordinatograph. Later, Intel used a Xynetics plotter to cut the Rubylith. By 1974, layouts were digitized with a Calma GDS I so repeated cells could be handled automatically. By the time of the 8087, there was a lot of automation.

You might think that the 8087's shifter would be a regular grid, easy to lay out by hand. It turns out to be very optimized and irregular. (I traced it out by hand and it was a pain.)

kens··on Die analysis of the 8087 math coprocessor's fast bit shifter (2020)
Yes, you can use a "logarithmic shifter". The CDC 6600 supercomputer (1964) used that approach. The tradeoff is that you need more stages with the logarithmic approach (six versus two for 64 bits).

If you're using MOS pass transistors for each stage, you lose some voltage at each stage, which limits the number of stages. I think this is why the 8087 (and the 386) used two-stage shifters rather than logarithmic shifters. I don't know how the circuit area compares between the two approaches--two more complex stages vs six simpler stages--but I suspect the two-stage approach wins.

kens··on Die analysis of the 8087 math coprocessor's fast bit shifter (2020)
That's a very interesting board! It came out in 1976 (four years before the 8087) and cost $499 assembled, equivalent to $2900 in current dollars, so it was expensive. It was really a decimal processor built from simple TTL parts, and had four microcoded instructions: add, subtract, multiply, and divide. Arithmetic used the 74LS181, the very popular ALU chip. (It did multiplication with repeated addition; there's no ROM with digit products, unless that was a later version.) The "small RAM" was very small by modern standards: four 4-bit registers that each held 16 digits. Each register was implemented with a 74S189 chip.

The microcode is available, so it would be a fun project to write a simulator that runs the microcode.

Manual and schematics are here if anyone is looking for them: https://bitsavers.org/pdf/northstar/boards/North_Star_Floati...

kens··on Die analysis of the 8087 math coprocessor's fast bit shifter (2020)
I'm here now if anyone has questions. I can't be online all the time :-)
kens··on Show HN: Are You in the Weights?
I score 1%. Is that good or bad?

https://www.intheweights.com/p/ken-shirriff

kens··on Is Meta destroying its engineering organization?
On a complete tangent: there's a drawing of an iceberg halfway through the article, the typical vertical shape with 10% above the surface. It turns out that icebergs don't float that way; they rotate until they are mostly horizontal. It's one of those things that once I found out, I see wrong icebergs everywhere.

For details, read the article https://axbom.com/iceberg/ and try the iceberg simulator https://joshdata.me/iceberger.html or read the tweet that started it https://xcancel.com/GlacialMeg/status/1362557149147058178

kens··on A brief tour of the PDP-11, the most influential minicomputer of all time (2022)
I don't think you can count PDP-10 things (Internet, BASIC, 8080 emulator) to support the influence of the PDP-11, since they were completely different computers. The PDP-10 was a 36-bit mainframe, while the PDP-11 was a 16-bit minicomputer.
kens··on A brief tour of the PDP-11, the most influential minicomputer of all time (2022)
I'd suggest the Datapoint 2200 as the most influential minicomputer of all time since half of you are using an instruction set based on it and it is largely responsible for the creation of the microprocessor.

Now mostly forgotten, the Datapoint 2200 was a programmable desktop computer introduced in 1970. It had a processor built from TTL chips, along with shift-register memory from Intel. Datapoint discussed with Intel and Texas Instruments the possibility of building a single-chip processor to replace the board of TTL chips. TI was first with the TMX 1795 processor, followed by Intel's 8008, both copying the Datapoint 2200 instruction set.

Datapoint decided that these chips didn't have enough performance and fatefully gave up rights to them. TI tried to sell the TMX 1795 to Ford, but got nowhere and abandoned the chip. Intel decided to sell the 8008 as a standalong microprocessor, which was used in early personal computers like the Mark-8. Intel improved the 8008 to form the 8080, then made a somewhat compatible 16-bit version, the 8086, which started the x86 architecture. (Because the Datapoint 2200 was little-endian (to use shift-register memory), x86 is little-endian.)

To summarize its influence, without the Datapoint 2200, the microcomputer industry would have been greatly delayed (since the 4004 wasn't suitable for a personal computer) and x86 wouldn't exist.

kens··on I admire Fabrice Bellard. He is almost certainly a better overall programmer
Thanks!
← PreviousPage 2 of 34Next →