Fault Detection And Correction Using MLD For Memory Applications

Similar documents
Novel Correction and Detection for Memory Applications 1 B.Pujita, 2 SK.Sahir

I. INTRODUCTION. S Ramkumar. D Punitha

SIC Vector Generation Using Test per Clock and Test per Scan

Efficient Test Pattern Generator for BIST using Multiple Single Input Change Vectors

Design and Implementation of Low Power Linear Feedback Shift Segisters for Vlsi Application

Design of Fault Coverage Test Pattern Generator Using LFSR

ISSN:

Efficient Test Pattern Generation Scheme with modified seed circuit.

FAULT SECURE ENCODER AND DECODER WITH CLOCK GATING

Bit Swapping LFSR and its Application to Fault Detection and Diagnosis Using FPGA

Available online at ScienceDirect. Procedia Computer Science 46 (2015 ) Aida S Tharakan a *, Binu K Mathew b

Low Transition Test Pattern Generator Architecture for Built-in-Self-Test

A New Low Energy BIST Using A Statistical Code

Design of Test Circuits for Maximum Fault Coverage by Using Different Techniques

Controlling Peak Power During Scan Testing

VLSI Technology used in Auto-Scan Delay Testing Design For Bench Mark Circuits

THE USE OF forward error correction (FEC) in optical networks

Scan-shift Power Reduction Based on Scan Partitioning and Q-D Connection

Optimization of Multi-Channel BCH Error Decoding for Common Cases. Russell Dill Master's Thesis Defense April 20, 2015

Implementation of BIST Test Generation Scheme based on Single and Programmable Twisted Ring Counters

Weighted Random and Transition Density Patterns For Scan-BIST

Power Problems in VLSI Circuit Testing

A Modified Clock Scheme for a Low Power BIST Test Pattern Generator

DESIGN OF LOW POWER TEST PATTERN GENERATOR

ECE 715 System on Chip Design and Test. Lecture 22

Low Power Illinois Scan Architecture for Simultaneous Power and Test Data Volume Reduction

LFSR Counter Implementation in CMOS VLSI

Random Access Scan. Veeraraghavan Ramamurthy Dept. of Electrical and Computer Engineering Auburn University, Auburn, AL

Analysis of Low Power Test Pattern Generator by Using Low Power Linear Feedback Shift Register (LP-LFSR)

Research Article Ring Counter Based ATPG for Low Transition Test Pattern Generation

A Novel Low Power pattern Generation Technique for Concurrent Bist Architecture

Transactions Brief. Circular BIST With State Skipping

VLSI System Testing. BIST Motivation

Low Transition-Generalized Linear Feedback Shift Register Based Test Pattern Generator Architecture for Built-in-Self-Test

A New Approach to Design Fault Coverage Circuit with Efficient Hardware Utilization for Testing Applications

DESIGN OF TEST PATTERN OF MULTIPLE SIC VECTORS FROM LOW POWER LFSR THEORY AND APPLICATIONS IN BIST SCHEMES

Survey of low power testing of VLSI circuits

A High- Speed LFSR Design by the Application of Sample Period Reduction Technique for BCH Encoder

Design of Polar List Decoder using 2-Bit SC Decoding Algorithm V Priya 1 M Parimaladevi 2

[Krishna*, 4.(12): December, 2015] ISSN: (I2OR), Publication Impact Factor: 3.785

Design for Test. Design for test (DFT) refers to those design techniques that make test generation and test application cost-effective.

IMPLEMENTATION OF X-FACTOR CIRCUITRY IN DECOMPRESSOR ARCHITECTURE

Diagnosis of Resistive open Fault using Scan Based Techniques

A Literature Review and Over View of Built in Self Testing in VLSI

International Journal of Scientific & Engineering Research, Volume 5, Issue 9, September ISSN

TEST PATTERN GENERATION USING PSEUDORANDOM BIST

Design and Implementation of Uart with Bist for Low Power Dissipation Using Lp-Tpg

A Low Power Delay Buffer Using Gated Driver Tree

Abstract 1. INTRODUCTION. Cheekati Sirisha, IJECS Volume 05 Issue 10 Oct., 2016 Page No Page 18532

Low-Power Scan Testing and Test Data Compression for System-on-a-Chip

Design and Implementation of Encoder for (15, k) Binary BCH Code Using VHDL

An MFA Binary Counter for Low Power Application

FPGA Implementation of Convolutional Encoder And Hard Decision Viterbi Decoder

Test Pattern Generation Using BIST Schemes

Design of a Low Power and Area Efficient Flip Flop With Embedded Logic Module

Built-In Self-Test (BIST) Abdil Rashid Mohamed, Embedded Systems Laboratory (ESLAB) Linköping University, Sweden

An FPGA Implementation of Shift Register Using Pulsed Latches

LOW TRANSITION TEST PATTERN GENERATOR ARCHITECTURE FOR MIXED MODE BUILT-IN-SELF-TEST (BIST)

Instructions. Final Exam CPSC/ELEN 680 December 12, Name: UIN:

Jin-Fu Li Advanced Reliable Systems (ARES) Laboratory. National Central University

AN EFFICIENT LOW POWER DESIGN FOR ASYNCHRONOUS DATA SAMPLING IN DOUBLE EDGE TRIGGERED FLIP-FLOPS

A Technique to Reduce Peak Current and Average Power Dissipation in Scan Designs by Limited Capture

Design of BIST Enabled UART with MISR

A Symmetric Differential Clock Generator for Bit-Serial Hardware

Design and Implementation of Partial Reconfigurable Fir Filter Using Distributed Arithmetic Architecture

Power Optimization by Using Multi-Bit Flip-Flops

Using Embedded Dynamic Random Access Memory to Reduce Energy Consumption of Magnetic Recording Read Channel

Design of Low Power Test Pattern Generator using Low Transition LFSR for high Fault Coverage Analysis

DETERMINISTIC SEED RANGE AND TEST PATTERN DECREASE IN LOGIC BIST

LUT Optimization for Memory Based Computation using Modified OMS Technique

Operating Bio-Implantable Devices in Ultra-Low Power Error Correction Circuits: using optimized ACS Viterbi decoder

MVP: Capture-Power Reduction with Minimum-Violations Partitioning for Delay Testing

Implementation of Low Power Test Pattern Generator Using LFSR

Testing and Power Optimization with Programmable PRPG Technique

VLSI Test Technology and Reliability (ET4076)

Synthesis Techniques for Pseudo-Random Built-In Self-Test Based on the LFSR

Performance Driven Reliable Link Design for Network on Chips

Design of BIST with Low Power Test Pattern Generator

Chapter 2. Digital Circuits

Design Low-Power and Area-Efficient Shift Register using SSASPL Pulsed Latch

HIGH PERFORMANCE AND LOW POWER ASYNCHRONOUS DATA SAMPLING WITH POWER GATED DOUBLE EDGE TRIGGERED FLIP-FLOP

CHAPTER 6 DESIGN OF HIGH SPEED COUNTER USING PIPELINING

March Test Compression Technique on Low Power Programmable Pseudo Random Test Pattern Generator

Long and Fast Up/Down Counters Pushpinder Kaur CHOUHAN 6 th Jan, 2003

Testing Digital Systems II

NUMEROUS elaborate attempts have been made in the

Design And Implimentation Of Modified Sqrt Carry Select Adder On FPGA

data and is used in digital networks and storage devices. CRC s are easy to implement in binary

Area-efficient high-throughput parallel scramblers using generalized algorithms

LOW POWER TEST PATTERN GENERATION USING TEST-PER-SCAN TECHNIQUE FOR BIST IMPLEMENTATION

Response Compaction with any Number of Unknowns using a new LFSR Architecture*

An Efficient Reduction of Area in Multistandard Transform Core

Bit-Serial Test Pattern Generation by an Accumulator behaving as a Non-Linear Feedback Shift Register

Area Efficient Pulsed Clock Generator Using Pulsed Latch Shift Register

An Efficient High Speed Wallace Tree Multiplier

POWER AND AREA EFFICIENT LFSR WITH PULSED LATCHES

CSE 352 Laboratory Assignment 3

Low Power Implementation of Launch-Off- Shift and Launch-Off-Capture Using T-Algorithm

Objectives. Combinational logics Sequential logics Finite state machine Arithmetic circuits Datapath

Design of Low Power Efficient Viterbi Decoder

Transcription:

Fault Detection And Correction Using MLD For Memory Applications Jayasanthi Sambbandam & G. Jose ECE Dept. Easwari Engineering College, Ramapuram E-mail : shanthisindia@yahoo.com & josejeyamani@gmail.com Abstract This paper proposes a error detection mechanism with Majority Logic Decoding and a novel test pattern generator (TPG) for built-in self test. The Majority Logic Decodable codes can correct a large number of errors and they are suitable for memory applications. Our method reduces the memory access time. The reason for using ML decoding is that it is very simple to implement and thus it is very practical and has low complexity. The TPG generates multiple single input change (MSIC)vectors in a pattern. It is flexible to both test per clock and test per scan schemes. The decoder makes minimal area overhead and low power consumption. The TPG can be demonstrated with ISCAS benchmarks,which also achieves target fault coverage. Index Terms Single Event Upset (SEU), Multiple Single Input Change (MSIC), Majority Logic(ML),Test Pattern Generator (TPG). I. INTRODUCTION The SRAM memory failure rates are increasing significantly, therefore posing a major reliability concern for memory applications. The commonly used mitigation technique is error correction code(ecc). The ECC codes are the best way to mitigate memory soft errors. The frequently used ECC codes are SER(Single Error Correction) SEC--DED(Single Error Correction Double Error Detection) RS(Reed Solomon) BCH(Bose Chaudhuri Hocquenghem) Cyclic Codes The above codes are not suitable for mitigating memory soft errors. Because they use more sophisticated decoding algorithms like complex decoders, and they use iterative algorithms. Along with that they are very complex and increase computational costs [1]. Among the ECC codes, cyclic codes are identified to be good because of the higher error correction capability and low decoding complexity [2],[3]. Also it has the property of being Majority Logic Decodable. In this paper one specific type of LDPC codes called Difference Set Cyclic Codes are used. It is widely used in Japanese teletext system or FM multiplex broadcasting system [4]-[6]. The drawback is that for a coded word of N bits it takes N cycles. It poses a big impact on system performance [1]. The solution for this problem is to implement parallel encoders and decoders. But by doing so, the complexity will be increased and so does the power consumption. The memory reading pare will be working all the time. So the number of cycles will be more. This motivated the use of fault detector module that checks only if the codeword contains an error [7]. This ultimately speeds up the average read memory access. A. Prior Work In MLD MLD is based on the number of parity check equations. The majority result of these parity check equation decide the correctness of the bit under decoding. A memory system schematic with MLD is shown in Fig. 1. The data words are encoded in the encoder block. The encoded bits are then stored in the memory. When the memory is read, the codeword is sent to the ML decoder. Here all the bit flips get corrected. 65

The ML decoder is simple and powerful, capable of correcting multiple random bit flips. As illustrated in Fig. 2 the ML decoder consists of four parts:1)a cyclic shift register;2)an x-or matrix;3)a majority gate;4)an x- or. The input signal x is stored into the cyclic shift register and is shifted through all the taps. The intermediate values are used to calculate the parity check equations. The final tap will be producing output signal y, which is the decoded version of input x. While calculating the parity check equations, if the number of 1 s received is greater than the number of 0 s, then it indicates that the current bit under decoding is wrong. Next the signal to correct the bit would be triggered. Otherwise, the bit under decoding would be correct and no further operations are needed. The above procedure is repeated until all the codeword bits have been processed. Finally the parity checksums should be zero, if the codeword has been correctly decoded [8]. It needs as many cycles as the number of bits in the decoder. This is a big impact on system performance. One possibility is to add a separate fault detector module, by calculating the syndrome. So faulty codewords alone are decoded [9]. Since most of the codewords are error free the performance will not be affected. It is not applicable because it adds complexity to the design and also it requires large amount of additional hardware and power consumption. In order to overcome this, a new design and the modified version of ML decoder is presented. B. BIST Techniques The BIST techniques are further classified in to three classes. It is classified into three classes. In the first class, the method used is LFSR tuning. It is mainly used for energy reduction [10]. The second class is low power TPGs. The two LFSR s of different speed are used to control those inputs that have elevated transition densities. Another low power TPG based on the cellular automata to reduce the test power. The third class makes use of the prevention of pseudorandom patterns [11-13]. They have minimum number of test vectors to attain the target fault coverage and therefore reduce the power. Several low power approaches have also been proposed for scan-based BIST. Using multiple scan chains, the TPG can reduce average power consumption and the peak power in the CUT [14]. The proposed method generates SIC sequences and converts them into low transition sequences. This decreases the switching activity. The advantages of the proposed sequences can be summarized as follows. 1) Minimum Transitions The generated vector applied to each scan chain is an SIC vector, which minimizes the input transition and reduce the test power. 2) Uniqueness of patterns The sequence does not contain any repeated patterns. The distinct patterns in the sequence can meet the target fault coverage. 3) Uniform Distribution of Patterns The conventional algorithms use extra hardware to get more correlated test vectors. They may reduce the randomness in the patterns. It is proved that MSIC sequence is uniformly distributed. 4) Low Hardware Overhead It has the benefit of generating a sequence with a sequential decompressor. Hence, it can be easily implemented by hardware. II. PROPOSED MLDD This section presents a modified version of the ML decoder. It has been implemented using DSCC. In this paper a new class of random error correcting cyclic codes is defined. These codes have two desirable features: the binary members of the class are as powerful as the best known codes in the range of interest, and they can be decoded with the simplest known decoding algorithm. Unfortunately, there are relatively few codes with useful parameters in this class, despite the fact that the class is infinite. Because the codes are cyclic they can be encoded easily. The code efficiency for the DSCC code is 0.70. The number of transistors used is 1200.The decoder clock rate is 1.It is very simple ease of design, construction and testing. Consequently they are concluded to be attractive for use 66

in error control systems where forward acting error correction is required. These codes have the following properties: ability to correct large number of errors modular encoder and decoder blocks that allow an efficient hardware implementation; systematic code structure for clean partition of information and code bits in the memory. In general, the decoding algorithm is still the same as the one in the plain ML decoder version. The basic difference is that, instead of decoding all codeword bits by processing the ML decoding during N cycles, the proposed method stops intermediately in the third cycle, as illustrated in Fig. 3. If in the first three cycles of the decoding process, the evaluation of the XOR matrix for all {B j }is 0, the codeword is determined to be error-free and forwarded directly to the output. If the {B j }contain in any of the three cycles at least a 1, the proposed method would continue the whole decoding process in order to eliminate the errors. The additional hardware to perform the error detection is: i) the control unit which triggers a finish flag when no errors are detected after the third cycle and ii) the output tristate buffers. The output tristate buffers are always in high impedance unless the control unit sends the finish signal, so that the current values of the shift register are forwarded to the output. The control unit manages detection process. It uses a counter that counts upto three, which distinguishes the first three iterations of the ML decoding. In these first three iterations, the control unit evaluates {B j } the by combining them with the OR1 function. This value is fed into a three-stage shift register, which holds the results of the last three cycles. In the third cycle, the OR2 gate evaluates the content of the detection register. When the result is 0, the FSM sends out the finish signal indicating that the processed word is error-free. In the other case, if the result is 1, the ML decoding process runs until the end. III PROPOSED MSIC TPG This section develops a TPG scheme that can convert an SIC vector to unique low transition vectors, for multiple scan chains. First, the SIC vector is decompressed to its multiple codewords. Meanwhile, the generated codewords will bit-xor with a same seed vector in turn. Hence, a test pattern with similar test vectors will be applied to all scan chains. The proposed MSIC-TPG consists of an SIC generator, a seed generator, an XOR gate network, and a clock and control block. Fig. 3 Flow Diagram of the MLDD Algorithm A. Reconfigurable Johnson Counter For a short scan length, we develop a reconfigurable Johnson counter to generate an SIC sequence in time domain. it can operate in three modes. 1) Initialization: When RJ_Mode is set to 1 and Init is set to logic 0, the reconfigurable Johnson counter will be initialized to all zero states by clocking CLK2 more than l times. 2) Circular shift register mode: When RJ_Mode and Init are set to logic 1, each stage of the Johnson counter will output a Johnson codeword by clocking CLK2 l times. 3) Normal mode: When RJ_Mode is set to logic 0, the reconfigurable Johnson counter will generate 2l unique SIC vectors by clocking CLK2 2l times. IV RESULTS Thus the double bit error can be detected and corrected using this MLDD. The percentage of errors that can be detected with just one iteration has increased. The memory read access delay of the plain MLDD is code length independent. The MLDD version requires a much lower area overhead ranging from 10.16% to 0.43%. An important final comment is that the area overhead of the MLDD actually decreases with 67

N. Fig. 4. shows the output window for MLDD for double bit error correction. The DSCC code can be compared with the Hamming for the performance and the results are tabulated. The parameters compared are memory usage, time, number of LUT used, input buffer, output buffer, combinational path delay TABLE I Thus the TPG is generated and is checked using ISCAS 89 benchmark circuit. The MSIC sequences are generated and given to the TPG. The system can be used as a real time circuit. V. CONCLUSION A fault detection mechanism, MLDD, has been presented using the DSCCs. Simulation test results show that the proposed technique is able to detect double bit errors. This improves the performance of the design with respect to the traditional MLD approach. Area overhead is reduced compared with other approaches. Combined with the fault detection mechanism the proposed TPG with MSIC sequences can be easily generated. It could be easily implemented by hardware. The TPG can be tested by ISCAS 89 benchmark circuit. Analysis results show that an MSIC sequence had the favourable features of uniform distribution, low input transition density. The MSIC-TPG is scalable to scan length and has negligible impact on the test overhead. The generated MSIC sequences are given to the benchmark circuit and is verified with the LUT. Thus the output of LUT is then given to the MLDD for error correction. VI. REFERENCES [1] S.Lin and D.J.Costello, Error control coding,2 nd ed. Englewood Cliffs, NJ: Prentice- Hall, 2004. [2] I. S. Reed, A class of multiple-error-correcting codes and the decoding scheme, IRE Trans. Inf. Theory, vol. IT-4, pp. 38 49, 1954. [3] J. L. Massey, Threshold Decoding. Cambridge, MA: MIT Press, 1963. [4] Y. Kato and T. Morita, Error correction circuit using difference-set cyclic code, in Proc. ASP-DAC, 2003, pp. 585 586. [5] T. Kuroda, M. Takada, T. Isobe, and O. Yamada, Transmission scheme of high capacity FM multiplex broadcasting system, IEEE Trans. Broadcasting, vol. 42, no. 3, pp. 245 250, Sep. 1996. [6] O. Yamada, Development of an error-correction method for data packet multiplexed with TV signals, IEEE Trans. Commun., vol. COM-35, no. 1, pp. 21 31, Jan. 1987. [7] H. Naeimi and A. DeHon, Fault secure encoder and decoder for NanoMemory applications, IEEE Trans. Very Large Scale Integr. (VLSI) Syst., vol. 17, no. 4, pp. 473 486, Apr. 2009. [8] S. Lin and D. J. Costello, Error Control Coding, 2nd ed. Englewood Cliffs, NJ: Prentice-Hall, 2004. [9] P. Girard, L. Guiller, C. Landrault, S. Pravossoudovitch, J. Figueras, S. Manich, P. Teixeira, and M. Santos, Low-energy BIST design: Impact of the LFSR TPG parameters on the weighted switching activity, in Proc. IEEE Int. Symp. Circuits Syst., vol. 1. Jul. 1999, pp. 110 113. 68

[10] P. Girard, L. Guiller, C. Landrault, and S. Pravossoudovitch, A test vector inhibiting technique for low energy BIST design, in Proc. 17 th IEEE VLSI Test Symp., Apr. 1999, pp. 407 412. [11] S. Manich, A. Gabarro, M. Lopez, J. Figueras, P. Girard, L. Guiller, C. Landrault, S. Pravossoudovitch, P. Teixeira, and M. Santos, Low power BIST by filtering non-detecting vectors, J. Electron. Test.-Theory Appl., vol. 16, no. 3, pp. 193 202, Jun. 2000. [12] S. Manich, A. Gabarro, M. Lopez, J. Figueras, P. Girard, L. Guiller, C. Landrault, S. Pravossoudovitch, P. Teixeira, and M. Santos, Low power BIST by filtering non-detecting vectors, J. Electron. Test.-Theory Appl., vol. 16, no. 3, pp. 193 202, Jun. 2000. 69