ترجمه مقاله خطا یابی و طراحی برای قابلیت خطایابی
در سال های اخیر ، مسئله خطایابی معماری های پیچیده SoC ، به علت اهمیت و دشواری فزاینده آن در بین توسعه دهندگان مدار های الکتریکی ، نظر محققان را به خود جلب کرده است .
در دنیای دستگاه های الکترونیکی ، خطایابی به فرآیندی سیستماتیک اطلاق میشود که برای اطمینان حاصل کردن از تولید سالم و عاری از خطای یک IC استفاده میشود . این اطمینان از سالم بودن IC به وسیله اِعمال ورودی های مناسب ( که الگوهای خطایابی یا مسیر های خطایابی نامیده میشوند ) و مشاهده و بررسی واکنش مدار ، که باید با نتایج مورد انتظار از شبیه سازی های پیشین برابر باشد ، حاصل میشود . این فرآیند که پیش از نصب و استفاده IC در سیستم های الکترونیکی بزرگتر انجام می پذیرد ، خطایابی صنعتی نامیده میشود . خطایابی صنعتی که تنها یک بار بر روی IC ساخته شده انجام میشود ، بخش مهمی از هزینه های تولید IC را تشکیل میدهد . فرایند خطایابی میتواند متعاقبا و در مراحل بعد که IC جهت استفاده عرضه میشود ، انجام گیرد . این کار برای حصول اطمینان از عملکرد صحیح IC پس از نصب روی دستگاه های نهایی می باشد .
این مرحله که خطایابی دوره ای ، یا – یا متصل(درون خطی) نامیده میشود ، فرآیندی ضروری است ، زیرا مداری که به طور صحیح و درست ساخته شده و طی فرایند ساخت نیز به صورت گسترده خطایابی شده و عاری از خطا تشخیص داده شده است ، باز ممکن است به علت عوامل متعدد در هنگام استفاده ، عملکرد آن دچار نقص و ایراد گردد . از جمله این عوامل میتوان به عمر بالای دستگاه اشاره کرد . همچنین برخی عوامل خارجی مانند دما های بسیار بالا ، ارتعاشات ، میدان های الکترو مغناطیسی ، ذرات القائی و غیره .
حتی ذرات نسبتا ریز و کم انرژی ، به علت ابعاد بسیار کوچک IC هایی که امروزه طراحی و تولید میشوند ، میتوانند در تکنولوژی های امروزی که در سطح میکرونی و حتی کوچکتر تولید میشوند زیان آور باشند . از این رو ، دیگر خطایابی برای اطمینان از عملکرد صحیح یک تراشه ، عملی یک مرحله ای نیست که فقط در طی فرایند تولید صورت گیرد . جهت تشخیص خطاهای عملیاتی ، باید طی عملکرد طبیعی تراشه در محیط مورد نظر ، در فاصله های زمانی منظم ، عمل خطایابی انجام گیرد . [1]
از لحاظ مفهومی ، پیچیدگی خطایابی یک سیستم الکترونیکی ( تراشه یا برد یا یک سیستم) به دو بخش ، که با هم ارتباط نزدیکی دارند ، تقسیم میشود . بخش اول پیچیدگی ایجاد آزمایش ها ، یا الگوهای آزمایش مناسب و کافی برای سیستمی که قرار است خطایابی شود ، میباشد . به این مرحله پیچیدگی ایجاد (انجام) آزمایش گفته میشود . بخش دوم پیچیدگی انجام عملی آزمایش ها است . به این مرحله پیچیدگی اعمال (انجام) آزمایش گفته میشود . ایجاد (طراحی) آزمایش عملی است که فقط یک بار انجام میشود و هزینه آن برای تمامی دستگاه های تولید شده مشابه ، ثابت میباشد ، در حالی که هزینه انجام آزمایش برای هر یک از دستگاه های تست شده محاسبه میشود . در ادامه وارد جزئیات شده و توضیح میدهیم که چگونه این دو بخش پیچیدگی های خطایابی به هم ارتباط پیدا میکنند .
ایجاد (طراحی) آزمایش معمولا به صورت ترکیبی از اعمال دستی و همچنین استفاده از ابزارهای EDA انجام میشود . البته ، رشد فزاینده ابعاد دستگاه های الکترونیکی تولید شده ، موجب افزایش نیاز به استفاده حداکثری از اتوماسیون سازی فرایند ایجاد و طراحی آزمایش گردیده است . با اینحال ، حتی امروزه در بعضی موارد خاص ، مهندسان خطایابی متخصص و خبره ، میتوانند موثرتر از ابزار های اتوماتیک باشند .
طراحی و ایجاد آزمایش ، با اینکه فرآیندی زمان بَر است و به تعداد زیادی اصلاحات و تکرار نیاز دارد ، عملی است که در تمامی موارد و برای یک نوع طراحی مشخص ، فقط یکبار انجام میشود . زمانیکه با یک سری الگوهای آزمایش ، به یک سطح مناسب از پوشش خطا[2] میرسیم ، تمام IC های مشابه که متعاقبا قرار است تولید شوند ، با همان سلسله آزمایش ها ، خطایابی میشوند و “فرایند ایجاد آزمایش” دیگری نیاز نیست مگر اینکه طراحی تغییر کند . ایجاد و طراحی یک سلسله آزمایش ها برای طراحی های پیچیده ، زمان محاسباتی و نیروی انسانی فراوانی مطالبه میکند ، اما پس از طراحی این سلسله آزمایش ها ، و اطمینان از اینکه سطح پوشش خطای بالایی دارند ، فرآیند ایجاد آزمایش ، موفقیت آمیز تلقی میشود .
سخت ترین بخش طراحی و ایجاد آزمایش ، زمان لازم برای ایجاد یک مجموعه آزمایش نیست ( این زمان میتواند از چندین ساعت یا روز تا چندین ماه متغیر باشد ) . بلکه توانایی خودِ فرآیند تولید
[1] خطاهای عملیاتی در سطوح ریز میکرونی ، به صورت زیر طبقه بندی میشوند . خطاهای دایمی که به صورت پایان ناپذیر در همان محل و مکان وجود دارند و به تغییرات فیزیکی برگشت ناپذیری منجر میشوند . خطاهای متناوب که در همان مکان مکررا رخ می دهند و فقط زمانی که فعال شوند منجر به ایجاد خطاهای پشت سر هم می شوند . این خطاها به علت وجود ابزارآلات ناپایدار یا حاشیه ای ناشی از نوسانات فرآیندی نمایان شده و بوسیله تغییرات محیطی فعال میشوند . در بیشتر موارد ، خطاهای متناوب مقدمه رخ دادن خطاهای دائمی را فراهم میکنند . خطاهای ناپایدار (گذرا ، کوتاه) که به صورت نامنظم در مکان های مختلف رخ داده و و مدت زمان کوتاهی طول میکشند . از عوامل ایجاد این خطاها میتوان به ذرات نوترون و آلفا ، نویز های ناشی از اتصالات ، تداخل الکترومغناطیسی و تخلیه بار الکترو استاتیکی اشاره کرد .
[2] پوشش خطایی که توسط مجموعه ای از الگوهای خطایابی به دست آورده میشود ، برابر است با درصدی از تعداد کل خطاهای تراشه ، که توسط مجموعه ای از خطایابی ها شناسایی میشوند . خطاها به مدلی از خطا تعلق دارند که انتزاعی از مکانیسم های خطای فیزیکی میباشند .