یک تاریخنگار برجسته سختافزار و متخصص مهندسی معکوس، موفق به شناسایی دقیق ترانزیستورهای معیوب در اولین پردازنده پنتیوم اینتل شده که به خطای معروف FDIV در سال 1994 و جمعآوری گسترده آن منجر شد. شیریف با استفاده از میکروسکوپ، در سیستم PLA (آرایه منطقی برنامهپذیر) این پردازنده تمرکز کرد و علت اولین بحران بزرگ اینتل را که به 30 سال پیش بازمیگردد، ردیابی کرد.
تصویر زیر اولین پردازنده پنتیوم را با ریزمعماری P5 نشان می دهد، اولین معماری اینتل که شهرت جهانی برای این شرکت به ارمغان آورد. این تراشه که با فناوری 800 نانومتری ساخته شده بود، شامل 3.1 میلیون ترانزیستور است که به دلیل بزرگی، شبکههای آن با میکروسکوپ قابل مشاهدهاند. این در حالی است که تراشههای امروزی با دهها میلیارد ترانزیستور، به این شیوه تقریباً غیرقابل تفسیر هستند.
شناسایی خطای پردازندهای که 475 میلیون دلار به اینتل خسارت زد
مشکل اصلی به واحد محاسباتی ممیز شناور (FPU) مربوط میشود. این واحد با بهرهگیری از الگوریتم تقسیم SRT، عملیات تقسیم را با سرعتی دو برابر تراشههای قبلی انجام میداد. برای اجرای این الگوریتم، جدولی متشکل از 2,048 سلول در PLA طراحی شده بود که مقادیر -2، -1، 0، 1 و 2 را نمایش میداد. اما خطای طراحی باعث شد پنج مقدار در این جدول ترانزیستورهای ضروری خود را از دست بدهند و بهجای مقدار "2"، بهطور پیشفرض "0" در آنها ثبت شود.
در ابتدا اینتل اهمیت خطای FDIV را ناچیز قلمداد کرد و مدعی شد که این خطا تنها هر 27,000 سال یک بار رخ میدهد. اما تحقیقات IBM نشان داد این خطا میتواند هر 24 روز یک بار اتفاق بیفتد. در نهایت، فشارهای مالی و توقف فروش پردازندهها، اینتل را مجبور به فراخوانی تمامی تراشههای معیوب کرد که به ضرری 475 میلیون دلاری منجر شد.
شیریف در تحقیقات اخیر خود، تعداد دادههای از دست رفته را 16 مورد شناسایی کرد، در حالی که پیشتر تصور میشد تنها پنج مورد معیوب وجود دارد. او توضیح میدهد: «11 مورد اضافی به دلیل خوششانسی باعث ایجاد خطا نمیشوند.» اینتل با پر کردن تمامی نقاط خالی جدول با مقدار "2"، این خطا را در نسخههای بعدی پردازنده رفع کرد.
کن شیریف وعده داده است که در روزهای آینده، جزئیات بیشتری از تحقیقات خود را در وبلاگش منتشر کند و بررسی کند که آیا امکان اصلاح پردازندههای معیوب از طریق ویرایش فیزیکی PLA وجود دارد یا خیر.