4 ms·
I guess most people don't realize just how buggy hardware is. Any complicated chip out there will have dozens to hundreds of errata, some completely breaking im
by hmry 4y ago
I guess most people don't realize just how buggy hardware is. Any complicated chip out there will have dozens to hundreds of errata, some completely breaking important features. Firmware writers, system library authors and compiler vendors do a pretty good job covering them up though. (And occasionally the workaround is "don't use the hardware at all and fake it in software instead")
- MattPalmer1086 4y agoYeah. When I was a kid I hit on a relative addressing bug in the 6502 processor. I wrote a fast screen scroll routine in assembler but it just did not work properly. It was inconceivable to me that the hardware was at fault. I just assumed I didn't understand it well enough, and this was pre internet so there were no other sources of information.
- _the_inflator 4y agoVSP or what is the $d011 trickery called that can move the screen from left to right. It is only after 25+ years that I found out on CSDB, that there were several CPU revisions that made the effect somewhat tricky in itself.
- MattPalmer1086 4y agoHuh I never knew about that one. Seems to be a C64 hack. I had a Tangerine Microtan 65: https://en.m.wikipedia.org/wiki/Tangerine_Microtan_65 https://en.m.wikipedia.org/wiki/Tangerine_Microtan_65 It was amazing what people did with hardware back then.
- bombcar 4y agoI remember that the FDIV bug was made "worse" because of Intel apparently not caring that it happened.
- anyfoo 4y agoIt was pretty bad from the get go, though. It was a trivially occurring bug without a good workaround. You literally could not fully trust floating point divisions on that CPU, and you could even see that by just using the Windows calculator or Excel. There were others, like the F00F bug[1], that were bad, but even before someone found an ingenious workaround, it wasn't that relevant to e.g. single user machines. [1] http://www.rcollins.org/ddj/May98/F00FBug.html http://www.rcollins.org/ddj/May98/F00FBug.html [2] [2] If you enjoy that kind of thing, you will enjoy that website in general.
- bombcar 4y agoYep - it was more the response than how bad it was (at the time many CPUs still didn't really have floating-point, especially in the wild). If they had offered to replace ANY processor for anyone who asked, some percentage would have taken them up on it but not many. As it was the "provide proof" part made it much worse.
- anyfoo 4y agoGood point. At the time, if Intel had had a better response to it, perhaps many people would have been fine to continue using their faulty CPU as a Pentium "without FPU", or only in contexts where they did not really care that much (e.g. playing games).
- brewdad 4y agoI understand the why. Many people unaffected would have insisted on a replacement just because it was offered. Younger me would have almost certainly been in that camp. Somewhere between “litigating” your need and Oprah giving away a CPU to everyone was the sweet spot Intel never found.
- anyfoo 4y agoI don't think "Oprah giving away a CPU to everyone" is really one side of the spectrum, though. In this case, everyone affected already bought the "car", and by themselves. I understand that replacing every CPU would have caused serious problems for Intel, but let's not paint it as if people were looking for free stuff. I'm also not sure how many people really would have followed through. You say you would have been in that camp, but most likely you were an "enthusiast"?
- rwmj 4y agoI'm reminded of this Intel Skylake bug where it would execute wrong code in extremely rare circumstances: http://gallium.inria.fr/blog/intel-skylake-bug/ http://gallium.inria.fr/blog/intel-skylake-bug/
- foobiekr 4y agoAt one point, the company I was working for, had the errata for a high performance embedded CPU from a startup. The errata alone - printed as a manual - was bigger than the entire Intel manual stack for the dual core chip we were dealing with at the time including the errata. It was really educational.