硬件歷史研究領域的知名專家Ken Shirriff近日宣布了一項重要發(fā)現(xiàn),他成功定位了1994年Intel奔騰處理器中著名的“FDIV Bug”的根源所在。這一發(fā)現(xiàn)不僅揭示了導致Intel歷史上首次產品召回的晶體管級問題,還讓人們再次回顧了這一成為全球焦點的計算機硬件事件。
Shirriff通過對第一代奔騰處理器的可編程邏輯陣列(PLA)進行詳盡的顯微鏡分析,終于找到了這一歷史性計算錯誤的精確位置。奔騰處理器作為Intel首款采用P5架構的CPU,采用800納米工藝制造,集成了310萬個晶體管。正是由于其相對簡單的晶體管數(shù)量,Shirriff才能夠借助顯微鏡深入剖析處理器的內部結構。
據Shirriff介紹,這一錯誤源于奔騰處理器的先進浮點單元,該單元采用了SRT除法算法,顯著提升了計算速度。然而,該算法依賴于一個包含2048個單元的查找表,這些單元以112行排列,通過晶體管的存在或缺失來編碼從-2到2的值。Shirriff發(fā)現(xiàn),在這個查找表中,有五個單元缺少了必要的晶體管,導致它們默認輸出0而非正確的值2。他還發(fā)現(xiàn)了另外11個缺失數(shù)據點,但幸運的是,這些點并未引發(fā)錯誤。
這一發(fā)現(xiàn)不僅解答了多年來關于“FDIV Bug”的疑問,還揭示了Intel是如何通過簡單的解決方案來修復這一問題的。在后續(xù)的奔騰版本中,Intel將所有未使用的表項填充為2,從而有效地解決了問題,并節(jié)省了未來版本上的裸片空間。
Shirriff的研究不僅限于定位問題,他還計劃在未來幾天內通過博客發(fā)布更深入的分析。其中包括探討是否有可能通過物理修改受影響的奔騰芯片來糾正這一持續(xù)了三十年的問題。這一研究無疑將為硬件歷史愛好者和專業(yè)人士提供寶貴的見解和啟示。
Shirriff的這一發(fā)現(xiàn)再次證明了硬件研究領域的復雜性和挑戰(zhàn)性。即使在今天,隨著技術的不斷進步和晶體管數(shù)量的急劇增加,對處理器內部結構的深入理解和分析仍然是一項極具挑戰(zhàn)的任務。然而,正是這些挑戰(zhàn)激發(fā)了研究人員不斷探索和創(chuàng)新的熱情。