硬件历史研究领域的知名专家Ken Shirriff近日宣布了一项重要发现,他成功定位了1994年Intel奔腾处理器中著名的“FDIV Bug”的根源所在。这一发现不仅揭示了导致Intel历史上首次产品召回的晶体管级问题,还让人们再次回顾了这一成为全球焦点的计算机硬件事件。
Shirriff通过对第一代奔腾处理器的可编程逻辑阵列(PLA)进行详尽的显微镜分析,终于找到了这一历史性计算错误的精确位置。奔腾处理器作为Intel首款采用P5架构的CPU,采用800纳米工艺制造,集成了310万个晶体管。正是由于其相对简单的晶体管数量,Shirriff才能够借助显微镜深入剖析处理器的内部结构。
据Shirriff介绍,这一错误源于奔腾处理器的先进浮点单元,该单元采用了SRT除法算法,显著提升了计算速度。然而,该算法依赖于一个包含2048个单元的查找表,这些单元以112行排列,通过晶体管的存在或缺失来编码从-2到2的值。Shirriff发现,在这个查找表中,有五个单元缺少了必要的晶体管,导致它们默认输出0而非正确的值2。他还发现了另外11个缺失数据点,但幸运的是,这些点并未引发错误。
这一发现不仅解答了多年来关于“FDIV Bug”的疑问,还揭示了Intel是如何通过简单的解决方案来修复这一问题的。在后续的奔腾版本中,Intel将所有未使用的表项填充为2,从而有效地解决了问题,并节省了未来版本上的裸片空间。
Shirriff的研究不仅限于定位问题,他还计划在未来几天内通过博客发布更深入的分析。其中包括探讨是否有可能通过物理修改受影响的奔腾芯片来纠正这一持续了三十年的问题。这一研究无疑将为硬件历史爱好者和专业人士提供宝贵的见解和启示。
Shirriff的这一发现再次证明了硬件研究领域的复杂性和挑战性。即使在今天,随着技术的不断进步和晶体管数量的急剧增加,对处理器内部结构的深入理解和分析仍然是一项极具挑战的任务。然而,正是这些挑战激发了研究人员不断探索和创新的热情。