چکیده
در سیستمهای محاسباتی پیچیده، واحدهای پردازش با دستگاههای با اندازه کوچکتری سرو کار دارند که این واحدها به خطاهای گذرا حساس میباشند. یک خطای گذرا در مدار به دلیل نویزهای الکترومغناطیسی، اشعههای کیهانی، تداخل امواج و نویز منبع تغذیه رخ میدهد. تشخیص این خطاها در طی تست آنلاین، بسیار سخت است. از این روی یک تمام جمع کننده مقاوم به خطای کارامد برای تست و تعمیر خطاهای گذرا و دایمی در سینگل نت و مولتی نت (تک شبکه و چند شبکهای) پیشنهاد میشود. به علاوه، معماری پیشنهادی نیز قادر به تشخیص و تعمیر خطاهای دایمی میباشند. این طرح، سربار سخت افزاری نسبتاً کمتری را نسبت به معماری سخت افزار سنتی تحمیل میکند. علاوه بر این، طرح پیشنهادی نیز، کارایی تصحیح و تشخیص خطایی را در مقایسه با طرحهای موجود در اختیار میگذارد.
1-مقدمه
امروزه، سیستم مقاوم به خطا از اهمیت زیادی در زمینههای مهم و حیاتی که در آنها اقدامات فوری انسانی امکان پذیر نیست، برخوردار است. زمینه فضایی، نظارت دفاعی، سیستم نظارت پزشکی و سایر سرویسهای مرتبط با ایمنی و امنیت، نمونههایی از این زمینههای مهم میباشند. وجود خطاهایی در این زمینهها موجب اختلال در عملکرد و کارکرد کل سیستم میشود. پیچیدگی مدارهای مجتمع با پیشرفت فناوری در حال افزایش است. پیشرفت فناوری منجر به کاهش اندازه مدارهای مجتمع میشود. این موجب میشود تا طرح فشرده شده و به خطاهای گذرا، حساستر شوند. دلیل اصلی مربوط به حضور خطای گذرا در مدار مجتمع، نویزهای الکترومغناطیسی، اشعههای کیهانی، تداخل امواج و نویز منبع تغذیه میباشد. علاوه بر این، مقیاس فناوری موجب افزایش شانس حضور خطای دایمی میشود. طرح فشرده برای کاهش نیز خوب است ولی موجب افزایش شانس خرابی سخت افزار در پردازنده پیشرفته میشود (1). به این ترتیب شناسایی این خطاها در طی تست افلاین بسیار سخت است. از این روی این مسائل چالشهایی برای محققانی هستند که در زمینه فنون تصحیح و تشخیص خطای آنلاین کار میکنند. پردازش سیگنال دیجیتال، یک واحد مهم در دستگاههای الکترونیک است. جمع اساسیترین عملیات حسابی انجام شده در سیستمهای یکپارچه سازی کلان مقیاس (VLSI) نظیر پردازندههای سیگنال دیجیتال و ریز پردازندهها (2-5) است. تمام جمع کنندهها برای طیف وسیعی از عملیات در یک مدار محاسباتی مجتمع نظیر ضرب، تقسیم و محاسبه آدرس استفاده میشود (6-11). این تمام جمع کنندهها، هسته هر سیستم میباشند. در اکثر سیستمها، تمام جمع کنندهها در عمق بحرانی قرار دارند و تأثیر معنی داری بر روی عملکرد هر سیستم دارا میباشند. معیارهای طراحی برای تمام جمع کننده معمولاً چندین مورد هستند. تعداد ترانزیستور یک مسئله مهممی باشد که تعیین کننده پیچیدگی سیستم مدارهای محاسباتی نظیر ضرب کننده و واحد منطق محاسباتی (ALU)(12-13) میباشد. از این روی، طراحی یک تمام جمع کننده متحمل به خطا با سربار با مساحت کمتر، از اهمیت زیادی برخوردار است. بسیاری از محققان بر روی انواع مختلف تمام جمع کنندههای مقاوم به خطا (14-17) کار کردهاند. کد باقی مانده محاسباتی برای طراحی نخستین تمام جمع کننده خود آزما استفاده میشود. این جمع کننده قادر به تشخیص تک خطا در یک زمان میباشد (18-19). با این حال، محدودیتهای مربوط به کدهای باقی مانده محاسباتی، شامل مدارهای جست و جوگر پیچیده و ناسازگاری با سیستمهای حافظه خود ازما میباشند (20). پس از این، بسیاری از رویکردهای خود آزما از اجرای مجدد آموزش برای تعمیر خطا وخرابی استفاده میکنند، با این حال این موجب افزایش تأخیر انتشار طراحی میشود. با این حال، در صورتی که خطا دایمی باشد، بازیابی خطا با این رویکرد امکان پذیر نیست (15). در منابع، محققان فنون افزونگی سخت افزار و افزونگی مبتنی بر زمان را برای تشخیص خرابیها و خطاها در مدارهای تمام جمع کننده معرفی کردهاند. این رویکردها محدود به تشخیص تک خطا در یک زمان بوده و قادر به تشخیص موقعیت دقیق خرابی یا خطا نمیباشند. از این روی، این موجب خرابی ماژول دیگر به دلیل انتشار میشود. از این روی، برای حذف این مسائل، یک تمام جمع کننده مقاوم به خطای جدید پیشنهاد میشود. این طرح قادر به تشخیص هر دوی تک خطا و خطای مضاعف علاوه بر خطای دائم با شناسایی موقعیت دقیق خطا میباشد. به علاوه، این طرح قادر به تعمیر همه خطاهای شناسایی شده با سربار کوچکتر واحد تعمیر است. جمع کننده نقلی (CSA) برای طرح پیشنهادی در نظر گرفته میشود زیرا منجر به سریعترین جمع شده و نیز دارای سربار کوچکتری است. ادامه این مقاله به صورت زیر سازمان دهی شده است. در بخش 2، برخی از رویکردهای مورد استفاده برای آزمایش خطا و تعمیر مورد بحث قرار میگیرند. در بخش 3 تمام جمع کننده مقاوم به خطای پیشنهادی، توصیف میشود. نتایج شبیه سازی خود آزما، خود تعمیر و تمام جمع کننده مقاوم به خطا در بخش 4 ارائه شده است. طراحی مقاوم به خطای پیشنهادی با طرح موجود در بخش 5 مقایسه میشود. در بخش 6، ضریب تحمل خطا اجرا میشود. بخش 6 مربوط به نتیجه گیری است.
abstract
In the complex computing system, processing units are dealing with devices of smaller size, which are sensitive to the transient faults. A transient fault occurs in a circuit caused by the electromagnetic noises, cosmic rays, crosstalk and power supply noise. It is very difficult to detect these faults during offline testing. Hence an area efficient fault tolerant full adder for testing and repairing of transient and permanent faults occurred in single and multi-net is proposed. Additionally, the proposed architecture can also detect and repair permanent faults. This design incurs much lower hardware overheads relative to the traditional hardware architecture. In addition to this, proposed design also provides higher error detection and correction efficiency when compared to the existing designs.
1. Introduction
Now days, fault tolerant system is very crucial in the critical applications, where the immediate human action is not possible. Space application, defense surveillance, medical supervisory system and other safety related services are the example of such critical applications. The presence of the faults in such applications can destroy the functionality of the overall system. The complexity of integrated circuits is increasing with the advancement of technology. Technology advancement results in reducing the size of integrated circuits. This makes the design more compact and sensitive to the transient faults. The main reason of the presence of transient fault in the integrated circuit is electromagnetic noises, cosmic rays, cross-talk and power supply noise. In addition to this, technology scaling further increases the chances of the presence of permanent fault also. The compact design is good for reducing the noise but it will increase the chance of hardware failure in the advanced processor [1]. It is very difficult to detect these faults during offline testing. Therefore, these problems are the challenges for the researchers working in the field of on-line fault detection and correction techniques. Digital Signal Processing is an important unit in electronics devices. Addition is a most fundamental arithmetic operation performed in many Very Large Scale Integration (VLSI) systems such as Digital Signal Processors (DSPs) and microprocessors [2–5]. Full adders are used for variety of operations in a complex arithmetic circuit like multiplication, division and address calculation [6– 11]. These full adders are the nucleus of any system. In most of the systems full adders are encountered in critical path and can significantly influence the performance of any system. The design criteria for full adder are usually multifold. Transistor count is the primary concern, which determines the system complexity of the arithmetic circuits like multiplier and Arithmetic Logic Unit (ALU) e.t.c. [12,13]. Therefore, to design a fault tolerant full adder with lesser area overhead is a matter of great importance. Many researchers have been worked on different types of fault tolerant full adders [14–17]. Arithmetic residue code is used for designing the first self checking full adder. This adder can detect the single fault at a time [18,19]. However, the limitations of arithmetic residue codes are its complex checker circuits and incompatibility with its self checking memory systems [20]. After this, many of the self checking approaches used re-execution of instruction for repairing the fault but it will increase the propagation delay of the design up to a great extent. However, fault recovery is not possible in this approach if the faults are permanent [15]. In the literature, researchers have introduced time based redundancy and hardware redundancy techniques to detect the faults in the full adder circuits. These approaches are limited to the single fault detection at a time and can’t detect the exact location of the fault. Hence, it makes the other module faulty due to the propagation of the carry. Therefore, to remove these problems, a new fault tolerant full adder is proposed. This design can detect both single and double fault, in addition to the permanent fault, at a time with the indication of the exact location of fault. Additionally, this design can repair all the detected faults with the smaller area overhead of the repairing unit. Carry select adder (CSA) is considered for the proposed design because it results the fastest addition and also has smaller area overheads. The rest of the paper is organized as follows. In Section 2, some existing approaches used for fault checking and repairing are discussed. In Section 3, the proposed fault tolerant full adder is described. The simulation results of the entire referred self checking, self repairing and proposed fault tolerant full adder are presented in Section 4. The proposed fault tolerant design is compared with the existing design in the Section 5. In Section 6, fault tolerant multiplier is implemented. Section 6 draws the conclusion.
چکیده
1-مقدمه
2-رویکردهای طراحی خود آزما و خودترمیم قبلی
2-1 افزونگی زمانی
2-2 افزونگی سخت افزار
2-3 استفاده مجدد از سخت افزار آگاه از پهنای اپراند (عملوند)(OWHR)
2-4 CSA خودآزما
2-5 جمع کننده خودترمیم
3- طرح پیشنهادی
3-1 ایده اصلی
3-2 جمع کننده خودآزمای پیشنهادی با مکان یابی خطا
3-3 جمع کننده خودترمیم پیشنهادی
3-4 نتایج شبیه سازی و مقایسه
3-5 پوشش خطا و ترمیم
3-6 شرایط خطا
3-7 شرایط عاری از خطا
3-8 مقایسه اطمینان پذیری
3-مقایسه با طرحهای تمام جمع کننده مقاوم به خطای موجود
4-عملکرد طرح تسهیم کننده مقاوم به خطای پیشنهادی
5-نتیجه گیری
abstract
1. Introduction
2. Previous self checking and self repairing design approaches
2.1. Time redundancy
2.2. Hardware redundancy
2.3. Operand width aware hardware reuse (OWHR)
2.4. Self -checking CSA
2.5. Self repairing adder
3. Proposed design
3.1. Main Idea
3.2. Proposed self checking adder with fault localization
3.3. Proposed self repairing adder
3.4. Simulation results and comparison
3.5. Fault coverage and repairing
3.6. Faulty conditions
3.7. Fault-free conditions
3.8. Reliability comparison
3.8. Reliability comparison
4. Comparison with existing fault tolerant full adder designs
5. Performance of proposed fault tolerant multiplier design
6. Conclusion