Arithmetic builtin self test for embedded systems

282 1.8K 0
Arithmetic builtin self test for embedded systems

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

This PDF book contains some OCR errors Arithmetic Built-in Self-Test for Embedded Systems Janusz Rajski Mentor Graphics Corporation, Wilsonville, Oregon Jerzy Tyszer Poznan University of Technology, Poland To join a Prentice Hall PTR Internet mailing list, point to: http://www.prenhall.com/mail_lists/ ISBN 0137564384, October 1997 Prentice Hall P T R Upper Saddle River, NJ 07458 Contents Preface vii 1 4 12 14 17 17 17 19 23 24 28 30 30 32 32 33 35 38 38 42 Built-in Self-Test 1.1 Introduction 1.2 Design for Testability 1.2.1 Controllability and Observability 1.2.2 Ad Hoc Techniques 1.2.3 Scan Designs 1.2.4 Boundary-Scan Architecture 1.2.5 Test Point Insertion 1.3 Generation of Test Vectors 1.3.1 Exhaustive Testing 1.3.2 Pseudo-Exhaustive Testing 1.3.3 Pseudo-Random Testing 1.3.4 Weighted Patterns 1.3.5 Reseeding of Linear Feedback Shift Registers 1.3.6 Diffraction 1.3.7 Pattern Mapping 1.3.8 Scan-Encoded Patterns 1.4 Compaction of Test Responses 1.4.1 Objectives and Requirements 1.4.2 Compaction Schemes 1.4.3 Error Models and Aliasing 1.5 BIST Schemes for Random Logic 1.5.1 Design Rules for BIST 1.5.2 Serial BIST Architectures Contents iv 1.6 1.5.3 1.5.4 1.5.5 1.5.6 BIST 1.6.1 1.6.2 1.6.3 Parallel BIST Architectures BIST controllers Modular BIST Automation of BIST for Memory Arrays Schemes Based on Deterministic Tests Pseudo-Random Testing Transparent BIST 44 47 49 52 53 55 57 57 Generation of Test Vectors 61 2.1 Additive Generators of Exhaustive Patterns 61 2.1.1 Basic Notions 62 2.1.2 Optimal Generators for Single Size Subspaces 65 2.1.3 Operand Interleaving 70 2.1.4 The Best Generators for Subspaces Within a Range of Sizes 72 2.2 Other Generation Schemes 76 2.2.1 Emulation of LFSRs and CAs 76 2.2.2 Weighted Patterns 77 2.2.3 Generators for Delay Testing 79 2.3 Two-Dimensional Generators 81 Test-Response Compaction 3.1 Binary Adders 3.2 l's Complement Adders 3.2.1 Steady State Analysis 3.2.2 Transient Behavior 3.2.3 Detection of Internal Faults 3.3 Rotate-Carry Adders 3.3.1 Fault-Free Operation 3.3.2 Test-Response Compaction 3.3.3 The Compaction Quality 3.4 Cascaded Compaction Scheme Fault Diagnosis 4.1 Analytical Model 4.2 Experimental Validation 4.3 The Quality of Diagnostic Resolution 4.4 Fault Diagnosis in Scan-Based Designs 87 88 90 90 93 100 101 102 104 108 112 117 117 121 122 126 Contents v BIST of Data-Path Kernel 5.1 Testing of ALU 5.1.1 Generation of Test Vectors 5.1.2 Test Application Phase 5.1.3 Compaction of Test Responses 5.1.4 Experimental Validation 5.2 Testing of the MAC Unit 5.3 Testing of the Microcontroller 135 135 137 137 139 139 140 141 Fault Grading 6.1 Fault Simulation Framework 6.2 Functional Fault Simulation 6.2.1 Ripple-Carry Adder 6.2.2 Subtracter 6.2.3 Carry-Lookahead Adder 6.2.4 Arithmetic and Logic Unit 6.2.5 Multiplexor 6.2.6 Array Multiplier 6.2.7 Booth Multiplier 6.3 Experimental Results 6.3.1 Performance of Building Block Models 6.3.2 High-Level Synthesis Benchmark Circuits 6.3.3 Comparison with PROOFS 147 148 150 152 153 153 154 154 154 159 163 164 165 166 High-Level Synthesis 7.1 Implementation-Dependent Fault Grading 7.1.1 Ripple-Carry Adder 7.1.2 Carry-Lookahead Adder 7.1.3 Carry-Skip Adder 7.2 Synthesis Steps 7.3 Simulation Results 173 174 174 174 175 176 178 ABIST at Work 8.1 Testing of Random Logic 8.1.1 Pseudo-Random Testing 8.1.2 Deterministic Testing 8.2 Memory Testing 8.2.1 Test program 8.2.2 Memory Array Faults 8.2.3 Read and Write Logic Faults 8.2.4 Address Decoder Faults 8.2.5 Multiple Faults 185 185 185 187 192 192 194 194 195 195 vi Contents 8.3 8.4 Digital Integrators 8.3.1 Testing of the Unmodified Integrator 8.3.2 Modified Integrator 8.3.3 Register File-Based Integrator Leaking Integrators 8.4.1 Unidirectional Faults 8.4.2 Bidirectional Faults 8.4.3 An Improved Compaction Scheme 196 197 199 203 207 209 215 218 Epilog 223 A Tables of Generators 227 B Assembly Language 245 Bibliography 249 Index 265 Preface T he semiconductor industry, driven by ever-increasing demands for higher performance and reliability, as well as greater functionality and speeds, continuously introduces new higher density technologies and new integrated circuits These circuits, like any other complex systems, not only have to meet the performance and functionality requirements, but they also have to be manufacturable In particular, they have to be highly testable in order to meet extremely high and constantly growing quality requirements The quality of testing is often defined as the number of faulty chips that pass the test for one million chips declared as good Many microelectronics companies have already set their testing quality goals to less than 100 dpm (defects per million), and there is intensive ongoing research to lower this number to less than 10 dpm as targeted in the six sigma project pioneered by Motorola Many integrated circuits are produced in large volume and very often operate at high speeds Since their manufacturing yield strongly depends on the silicon area, and their performance is directly related to the delays on critical paths, it is essential that the testing strategy provides a high fault coverage without a significant area overhead and performance degradation in order to build reliable and competitive products It is a well-known fact that the costs associated with detecting faults rise over thousands of times from the time the product is specified to the time the product is released to customers This is why the most effective way to prevent costly prototyping turns is to consider testing issues as early in the design cycle as possible Tremendous practical importance of this problem generated an immense amount of research in an attempt to develop testing schemes of the ultimate quality The increasing complexity of VLSI circuits, in the absence of a corresponding increase in the number of input and output pins, has made structured design for testability (DFT) and built-in self-test (BIST) two of the most important concepts in testing that profoundly Vlll influenced the area in recent years [16] Scan design is a good example of structured DFT where, in the test mode, all memory elements are connected in scan chains, through which the test vectors can be shifted in and out This solution enhances the controllability and observability of the circuit, and, as far as testing of combinational stuck-at faults is concerned, the circuit can be treated as a combinational network In BIST, the original circuit designed to perform the system function is ap­ pended with additional modules for generation of test patterns and compaction of test responses [16] Thus, the BIST approach can be applied at all levels of testing, starting from wafer and device to system and field testing It is widely accepted that appending these modules to the original circuit satisfies the high fault coverage requirement while reducing the dependence on expensive testing equipment However, it is also agreed that this solution compromises a circuit's area and performance as it inevitably introduces either a hardware overhead or additional delays and increased latency These delays may be excessive for high-speed circuits used in several new applications such as broadband packet switching, digital signal processing (DSP) for the asynchronous transfer mode (ATM), new generations of floating point processors, and others Therefore, BIST schemes are evaluated thoroughly on the basis of the fault coverage they provide, area overhead they require, and the performance penalty they intro­ duce A more detailed survey of existing DFT and BIST schemes is provided in Chapter Further information can be found in [2], [6], [7], and [16] With the cost of testing becoming a significant part of the cost of new mi­ croelectronics products, with inevitably upcoming challenges of new deep submicron technologies, with the increasing role of the hardware-software codesign, and last but not least, with ever-changing customer expectations, a demand for new solutions and tools appears to be relentless In particular, an un­ questionable proliferation of high-performance data-path architectures clearly demonstrates how inadequate existing BIST schemes can be if they are to entail non-intrusive and at-speed testing and yet guarantee a portability of test pro­ cedures Paradoxically, although the vastness of data-path architectures consist of powerful building blocks such as adders, multipliers, or arithmetic and logic units (ALUs) offering a very high computational potential, existing data-path BIST schemes are unfortunate examples of having sophisticated modules on the chip but remaining unable to translate this advantage into efficient nonintrusive testing schemes The approach presented in Chapters through is fundamentally different from the solutions introduced so far It uses several generic building blocks, which are already in the data path, as well as its very flexible and powerful con­ trol circuitry to generate patterns and compact test responses This permits de­ sign of complex software-based, and thus very portable, BIST functions These functions produce test vectors in the form of control signals, such as the type Preface IX of ALU operation, the addresses of registers, the input to shifters, etc., rather than data, as it is done in all other systems In such an environment, the need for extra hardware is either entirely eliminated or drastically reduced, test vec­ tors can be easily distributed to different modules of the system, test responses can be collected in parallel, and there is virtually no performance degradation Furthermore, the approach can be used for at-speed testing, thereby provid­ ing a capability to detect failures that may not be detected by conventional low-speed testing These characteristics make this method an exceptionally at­ tractive testing scheme for a wide range of circuits including high performance DSP systems, microprocessors, and microcontrollers In the following chapters we will discuss several new fundamental concepts and practical scenarios concerned with test generation, test application, and test-response compaction performed by means of building blocks of high perfor­ mance data paths We will show that even the simplest modules provide a very high potential for the integration of their features into a new generation of effi­ cient and portable BIST schemes As described techniques rest predominantly on arithmetic operations, these schemes will be jointly referred to as arithmetic built-in self-test (ABIST) methodology We will demonstrate that the ABIST paradigm virtually eliminates a traditional dichotomy between the functional mode and the testing mode, as testing will be based on regular operations and with no interference into the circuit structure It can be expected that it will create a next integration platform where off-line and on-line BIST schemes will be merged together Chapter introduces several test generation schemes that can be easily implemented in data paths based on adders, multipliers, and ALUs These schemes may replace commonly used LFSR-based test-pattern generators, and consequently allow it to mimic several commonly used generation techniques In particular, a new approach to generate pseudo-exhaustive test patterns by means of arithmetic operations is described The resultant test patterns provide a complete state coverage on subspaces of contiguous bits The Accumulator-Based Compaction (ABC) scheme for parallel compaction of test responses is the subject of Chapter We will demonstrate that the ABC scheme offers a quality of compaction similar to that of the best compactors based on multiple input signature registers (MISRs) or cellular automata (CA) of the same size The presented characteristics can be used to estimate the fault coverage drop for a given circuit under test (CUT) characterized by its detection profile The impact of the compactor's internal faults on the compaction quality is also examined Compaction schemes can be also used to perform fault diagnosis Faults, especially single ones, can be easily identified by collecting signatures and com­ paring them with a dictionary of precomputed signatures Chapter examines the relationship between the size of the compactor, the size of the circuit which Bibliography 255 [80] S S Hirschhorn, M.B Hommel, and C Bures, "Functional Level Sim­ ulation in FANSIM3 - Algorithms, Data Structures, and Results," Proc DAC, pp 248-255, 1981 [81] E.B Hogenauer, "An economical class of digital filters for decimation and interpolation," IEEE Trans Acoustics, Speech and Signal Processing, vol ASSP-29, No 2, pp 155-162, 1981 [82] P.D Hortensius, R.D McLeod, W Pries, D.M Miller, and H.C Card, "Cellular automata-based pseudorandom number generators for built-in self-test," IEEE Trans CAD of IC, vol CAD-8, No 8, pp 842-859, 1989 [83] T.-C Hsiao and S.C Seth, "An analysis of the use of Rademacher-Walsh spectrum in compact testing," IEEE Trans Compute vol C-33, No 10, pp 934-937, 1984 [84] W.J Hurd, "Efficient generation of statistically good pseudonoise by lin­ early interconnected shift registers," IEEE Trans Compute vol C-23, No 2, pp 146-152, 1974 [85] A Ivanov and V.K Agarwal, "An analysis of the probabilistic behavior of linear feedback signature registers," IEEE Trans CAD of IC, vol CAD-8, No 10, pp 1074-1088, 1989 [86] V.S Iyegard and D Brand, "Synthesis of pseudo-random pattern testable designs," Proc ITC, pp 501-508, 1989 [87] S.K Jain and C.E Stroud, "Built-in self testing of embedded memories," IEEE Design and Test of Computers, vol 3, No 4, pp 27-37, 1986 [88] D Kagaris, F Makedon, and S Tragoudas, "A method for pseudoexhaustive test pattern generation," IEEE Trans CAD of IC, vol CAD13, No 9, pp 1170-1178, 1994 [89] D Kagaris and S Tragoudas, "Cost-effective LFSR synthesis for optimal pseudoexhaustive BIST test sets," IEEE Trans VLSI Systems, vol 1, No 4, pp 526-536, 1993 [90] R Kapur, S Patil, T.J Snethen, and T.W Williams, "Design of an ef­ ficient weighted random pattern generation system," Proc ITC, pp 491500, 1994 [91] M.G Karpovsky, S.K Gupta, and D.K Pradhan, "Aliasing and diagnosis probability in MISR and STUMPS using a general error model," Proc ITC, pp 828-839, 1991 256 Bibliography [92] S Karthik, M Aitken, G Martin, S Pappula, B Stettler, P Vishakantaiah, M d'Abreu, and J.A Abraham, "Distributed mixed level logic and fault simulation on the Pentium Pro microprocessor," Proc ITC, pp 160166, 1996 [93] M Kassab, J Rajski, and J Tyszer, "Accumulator-based compaction for built-in self-test of data-path architectures," Proc Asian Test Symposium, pp 241-246, 1992 [94] M Kassab, N Mukherjee, J Rajski, and J Tyszer, "Software accelerated functional fault simulation for data-path architectures," Proc DAC, pp 333-338, 1995 [95] M Kassab, J Rajski, and J Tyszer, "Hierarchical functional fault simu­ lation for high-level synthesis," Proc ITC, pp 596-605, 1995 [96] B Koenemann, "LFSR-coded test patterns for scan designs," Proc Eu­ ropean Test Conf., pp 237-242, 1991 [97] K Kim, D.S Ha, and J.G Tront, "On using signature registers as pseu­ dorandom pattern generators in built-in self-testing," IEEE Trans CAD of IC, vol CAD-7, No 8, pp 919-928, 1988 [98] D.E Knuth, The Art of Computer Programming, vol 1, Addison-Wesley, 1981 [99] D.E Knuth, The Art of Computer Programming, vol 2, Addison-Wesley, 1981 [100] B Koenemann, J Mucha and G Zwiehoff, "Built-in test for complex digital integrated circuits," IEEE J Solid State Circuits, vol SC-15, pp 315-318, 1980 [101] D Komonytsky, "LSI self-test using level-sensitive scan design and signa­ ture analysis," Proc ITC, pp 414-424, 1982 [102] I Koren, Computer Arithmetic Algorithms, Prentice Hall, 1993 [103] A Krasniewski and S Pilarski, "Circular self-test path: a low cost BIST technique for VLSI circuits," IEEE Trans CAD of IC, vol CAD-8, No 1, pp 46-55, 1989 [104] B Krishnamurthy, "A dynamic programming approach to the test point insertion problem," Proc DAC, pp 695-705, 1987 [105] J LeBlanc, "LOCST: A built-in self-test technique," IEEE Design and Test of Computers, vol 1, No 4, pp 42-52, 1984 Bibliography 257 [106] T-C Lee, W.H Wolf, and N.K Jha, "Behavioral synthesis for easy testa­ bility in data path scheduling," Proc ICCAD, pp 616-619, 1992 [107] H.K Lee and D.S Ha, "HOPE: An efficient parallel fault simulator for synchronous sequential Circuits," Proc DAC, pp 336-340, 1992 [108] J Lee, E M Rudnick, and J H Patel, "Architectural-level fault simu­ lation using symbolic data," Proc European Conference on Design Au­ tomation, pp 437-442, 1993 [109] C-J Lin, Y Zorian, and S Bhawmik, "PSBIST: A partial-scan based built-in self-test scheme," Proc ITC, pp 507-516, 1993 [110] H.-K.T Ma, S Devadas, A.R Newton, and A Sangiovanni-Vincentelli, "An incomplete scan design approach to test generation for sequential machines," Proc ITC, pp 730-734, 1988 [Ill] C M Maunder and R.E Tulloss, The Test Access Port and BoundaryScan Architecture, IEEE Computer Society Press, 1990 [112] P Mazumder and J.H Patel, "An efficient built-in self-testing for random access memory," Proc ITC, pp 1072-1077, 1987 [113] P Mazumder and J.H Patel, "Parallel testing for pattern-sensitive faults in semiconductor random-access memories," IEEE Trans Comput., vol C-38, No 3, pp 394-407, 1989 [114] P Mazumder and J.H Patel, "An efficient design of embedded memories and their testability analysis using Markov chains," Journal of Electronic Testing: Theory and Applications, vol 3, pp 235-250, 1992 [115] W.H McAnney and J Savir, "There is information in faulty signatures," Proc ITC, pp 630-636, 1987 [116] E.J McCluskey, "Verification testing - a pseudoexhaustive test tech­ nique," IEEE Trans Comput, vol C-33, No 6, pp 541-546, 1984 [117] E.J McCluskey and S Bozorgui-Nesbat, "Design for autonomous test," IEEE Trans Circuits and Systems, vol CAS-28, No 11, pp 1070-1079, 1981 [118] M.C McFarland, A.C Parker, and R Camposano, "The high-level syn­ thesis of digital systems," Proceedings of the IEEE, pp 301-317, Feb 1990 [119] W Meyer and R Camposano, "Fast hierarchical multi-level fault simu­ lation of sequential circuits with switch-level accuracy," Proc DAC, pp 515-519, 1993 258 Bibliography [120] N Mukherjee, M Kassab, J Rajski, and J Tyszer, "Arithmetic built-in self-test for high-level synthesis," Proc VLSI Test Symposium, pp 132139, 1995 [121] N Mukherjee, J Rajski, and J Tyszer, "On testable multipliers for fixedwidth data-path architectures," Proc ICCAD, pp 541-547, 1995 [122] F Muradali, V.K Agarwal, and B Nadeau-Dostie, "A new procedure for weighted random built-in self-test," Proc ITC, pp 660-669, 1990 [123] B Nadeau-Dostie, A Silburt, and V.K Agarwal, "Serial interfacing for embedded-memory testing," IEEE Design and Test of Computers, vol 7, No 2, pp 52-63, 1990 [124] M Nicolaidis, "Transparent BIST for RAMs," Proc ITC, pp 598-607, 1992 [125] M Nicolaidis, O Kebichi, and V Castro Alves, "Trade-offs in scan path and BIST implementations for RAMs," Journal of Electronic Testing: Theory and Applications, vol 5, No 2/3, pp 273-283, 1994 [126] T.M Niermann, W.T Cheng, and J.H Patel, "PROOFS: A fast, memory efficient sequential circuit fault simulator," IEEE Trans CAD of IC, vol CAD-11, No 2, pp 198-207, 1992 [127] C.A Papachristou and H Konuk, "A linear program driven scheduling and allocation method followed by an interconnect optimization algo­ rithm," Proc DAC, pp 77-83, 1990 [128] C.A Papachristou, S Chiu, and H Harmanani, "A Data Path Synthesis Method for Self-Testable Designs," Proc DAC, pp 378-384, 1991 [129] S Pateras and J Rajski, "Cube-contained random patterns and their application to the complete testing of synthesized multi-level circuits," Proc ITC, pp 473-482, 1991 [130] S Pilarski and K.J Wiebe, "Counter based compaction: An analysis for BIST," Journal of Electronic Testing: Theory and Applications, vol 3, No 1, pp 33-43, 1992 [131] S Pilarski and T Kameda, A probabilistic analysis of test-response com­ paction, IEEE Computer Society Press, 1995 [132] D.K Pradhan and M Chatterjee, "GLFSR - a new pseudo-random pat­ tern generator for BIST," Proc ITC, pp 481-490, 1994 Bibliography 259 [133] J Rajski, "Spherical pseudo-random pattern testing, apparatus and method," USA patent application, 1996 [134] J Rajski and J Tyszer, "Experimental analysis of fault coverage in sys­ tems with signature registers," Proc European Test Conf, pp 45-51, 1991 [135] J Rajski and J Tyszer, "On the diagnostic properties of linear feedback shift registers," IEEE Trans CAD of IC, vol CAD-10, No 10, pp 13161322, 1991 [136] J Rajski and J Tyszer, "The analysis of digital integrators for test re­ sponse compaction," IEEE Trans Circuits and Systems, vol CAS-39, No 5, pp 293-301, 1992 [137] J Rajski and J Tyszer, "Accumulator-based compaction of test re­ sponses," IEEE Trans Comput., vol C-42, No 6, pp 643-650, 1993 [138] J Rajski and J Tyszer, "Test responses compaction in accumulators with rotate carry adders," IEEE Trans CAD of IC, vol CAD-12, No 4, pp 531-539, 1993 [139] J Rajski and J Tyszer, "Recursive pseudo-exhaustive test pattern gen­ eration," IEEE Trans Comput., vol C-42, No 12, pp 1517-1521, 1993 [140] J Rajski and J Tyszer, "Multiplicative window generators of pseudo­ random test vectors," Proc European Test Conf, pp 42-48, 1996 [141] J Rajski and J Tyszer, "On linear dependencies in subspaces of LFSRgenerated sequences," IEEE Trans Compute vol C-45, No 10, pp 12121216, 1996 [142] S.M Reddy, K.K Saluja, and M.G Karpovsky, "A data compression technique for test responses," IEEE Trans Compute vol C-38, No 9, pp 1151-1156, 1988 [143] W.A Rogers and J.A Abraham, "CHIEFS: A concurrent, hierarchical and extensible fault simulator," Proc ITC, pp 710-716, 1985 [144] K.K Saluja, R Sharma, and C.K Kime, "A concurrent testing technique for digital circuits," IEEE Trans CAD of IC, vol CAD-7, No 12, pp 1250-1259, 1988 [145] K.K Saluja, S.H Sing, and K Kinoshita, "Built-in self-testing RAM: a practical alternative," IEEE Design and Test of Computers, vol 4, No 1, pp 42-51, Feb 1987 260 Bibliography 146 J van Sas, F Catthoor, and H De Man "Cellular automata based deter­ ministic self-test strategies for programmable data paths," IEEE Trans CAD ofIC, vol CAD-13, No 7, pp 940-949, 1994 147; Y Savaria, M Yousef, B Kaminska, and M Koudil, "Automatic test point insertion for pseudo-random testing," Proc ISCAS, pp 1960-1963, 1991 148; J Savir, "Syndrome-testable design of combinational circuits," IEEE Trans Comput, vol C-29, No 6, pp 442-451, 1980 149 N.R Saxena and E.J McCluskey, "Extended precision checksums," Proc FTCS, pp 142-147, 1987 150 N.R Saxena and E.J McCluskey, "Analysis of checksums, extendedprecision checksums, and cyclic redundancy," IEEE Trans Comput., vol C-39, No 7, pp 969-975, 1990 1.5 ij N:R: Saxena and J.P Robinson, "Accumulator compression testing," IEEE Trans Comput, vol C-35, No 4, pp 317-321, 1986 152] B.H Seiss, P.M Trouborst, and M.H Schultz, "Test point insertion for scan-based BIST," Proc European Test Conf, pp 253-262, 1991 1531 G Seroussi and N.H Bshouty, "Vector sets for exhaustive testing of logic circuits," IEEE Trans Inf Theory, vol IT-34, No 3, pp 513-522, 1988 1541 M Serra, T Slater, J.C Muzio, and D.M Miller, "The analysis of onedimensional linear cellular automata and their aliasing properties," IEEE Trans CAD of IC, vol.CAD-9, No 7, pp 767-778, 1990 1551 J-E Smith, "Measures of the effectiveness of fault signature analysis," IEEE Trans Comput, vol C-29, No 6, pp 510-514, 1980 1561 J- Steensma, W Geurts, F Cathoor, and H de Man, "Testability analysis in high level datapath synthesis," Journal on Electronic Testing, pp 43-56, 1988 1571 J-H Stewart, "Future testing of large LSI circuits cards," Digest of papers 1979 Semiconductor Test Symp., pp 6-15, 1977 1581 A.P Stroele, "A self-test approach using accumulators as test pattern generators," Proc ISCAS, pp 2120-2123, 1995 1591 C.E Stroud, "Automated BIST for sequential logic synthesis," IEEE De­ sign and Test of Computers, vol 5, No 4, pp 22-32, 1988 Bibliography 261 [160] C.E Stroud, "Built-in self-test for high speed data-path circuitry," Proc ITC, pp 47-56, 1991 [161] A.K Susskind, "Testing by verifying Walsh coefficients," Proc FTCS, pp 206-208, 1981 [162] N Tamarapalli and J Rajski, "Constructive multi-phase test point inser­ tion for scan-based BIST," Proc ITC, pp 649-658, 1996 [163] D.T Tang and C-L Cheng, "Logic test pattern generation using linear codes," IEEE Trans Comput., vol C-33, No 9, pp 845-850, 1984 [164] D.T Tang and L.S Woo, "Exhaustive test pattern generation with con­ stant weight vectors," IEEE Trans Comput., vol C-32, No 12, pp 11451150, 1983 [165] K Thearling and J Abraham, "An easily computed functional level testa­ bility measure," Proc ITC, pp 381-390, 1989 [166] N.A Touba and E.J McCluskey, "Automated logic synthesis of random pattern testable circuits," Proc ITC, pp 174-183, 1994 [167] N.A Touba and E.J McCluskey, "Transformed pseudo-random patterns for BIST," Proc VLSI Test Symp., pp 410-416, 1995 [168] N.A Touba and E.J McCluskey, "Test point insertion based on path tracing," Proc VLSI Test Symp., pp 2-8, 1996 [169] N.A Touba and E.J McCluskey, "Altering a pseudo-random bit sequence for scan-based BIST," Proc ITC, pp 167-175, 1996 [170] R Treuer and V.K Agarwal, "Built-in self-diagnosis for repairable em­ bedded RAMs," IEEE Design and Test of Computers, vol 10, No 2, pp 24-33, June 1993 [171] E Trischler, "Incomplete scan path with an automatic test generation approach," Proc ITC, pp 153-162, 1980 [172] K.-H Tsai, S Hellebrand, J Rajski, and M Marek-Sadowska, "STARBIST: Scan autocorrelated random pattern generation," Proc DAC, 1997 [173] J.G Udell Jr., "Test set generation for pseudo-exhaustive BIST," Proc ICCAD, pp 52-55, 1986 [174] J.G Udell Jr and E.J McCluskey, "Partial hardware partitioning: a new pseudo-exhaustive test implementation," Proc ITC, 1988 262 Bibliography [175] K.D Wagner, C.K Chin, and E.J McCluskey, "Pseudorandom testing," IEEE Trans Comput., vol C-36, No 3, pp 332-343, 1987 [176] J A Waicukauski, V.P Gupta, and S.T Patel, "Diagnosis of BIST failures by PPSFP simulation," Proc ITC, pp 480-484, 1987 [177] J.A Waicukauski, E Lindbloom, E.B Eichelberger, and O.P Forlenza, "A method for generating weighted random test patterns," IBM J Res Develop., vol 33, No 2, pp 149-161, March 1989 [178] L.-T Wang and E.J McCluskey, "Circuits for pseudoexhaustive test pat­ tern generation," IEEE Trans CAD of IC, vol CAD-7, No 10, pp 10681080, 1988 [179] L.-T Wang and E.J McCluskey, "Condensed linear feedback shift reg­ ister (LFSR) testing - a pseudoexhaustive test technique," IEEE Trans Comput., vol C-35, No 4, pp 367-370, 1986 [180] T.W Williams, W Daehn, M Gruetzner, and C.W Starke, "Bounds and analysis of aliasing errors in linear-feedback shift-registers," IEEE Trans CAD ofIC, vol CAD-7, No 1, pp 75-83, 1988 [181] S Wolfram, "Statistical mechanics of cellular automata," Rev Modern Phys., vol 55, pp 601-644, 1983 [182] H.-J Wunderlich, "On computing optimized input probabilities for ran­ dom tests," Proc DAC, pp 392-398, 1987 [183] H.-J Wunderlich, "Multiple distribution for biased random test patterns," Proc ITC, pp 236-244, 1988 [184] H.-J Wunderlich and S Hellebrand, "The pseudoexhaustive test for se­ quential circuits," IEEE Trans CAD of IC, vol CAD-11, No 1, pp 26-32, 1992 [185] H.-J Wunderlich and G Kiefer, "Bit-flipping BIST," Proc ICCAD, pp 337-343, 1996 [186] N Vasanthavada and P.N Marinos, "An operationally efficient scheme for exhaustive test-pattern generation using linear codes," Proc ITC, pp 476-482, 1985 [187] I Voyiatzis, A Paschalis, D Nikolos, and C Halatsis, "Accumulatorbased BIST approach for stuck-open and delay fault testing," Proc Eu­ ropean Test Conf, pp 431-435, 1995 Bibliography 263 [188] V.N Yarmolik, M Nicolaidis, and Kebichi, "Aliasing-free signature analysis for RAM BIST," Proc ITC, pp 368-377, 1994 [189] N Zacharia, J Rajski, and J Tyszer, "Decompression of test data using variable-length seed LFSRs," Proc VLSI Test Symp., pp 426-433, 1995 Bibliography Index accumulator, 61, 62, 78, 82, 87-93, 100-102,104-112,137,138, 140,149,185,192,194,196, 197, 199, 201 adder, 35, 71, 81, 87, 140 l's complement, 90, 93, 121 internal faults, 100 binary, 62, 87, 137 carry-lookahead, 101, 153, 174 carry-skip, 175 ripple-carry, 101, 152, 174 faulty output, 152 rotate-carry, 102, 104, 108,110, 140, 141 address decode faults, 195 address generator, 54 adjacency testing, 79 aliasing probability, 32, 37, 38 iterative calculation, 217 limiting value, 92, 110, 211 maximum value, 96, 99 ALU, 35, 135, 154, 164 area overhead, vii, viii, 10, 58, 61, 173, 206 automated BIST, 47 behavioral synthesis, 173 BEST, 44 bi-directional fault, 215 BILBO, 44, 46 binary heap, 73 BIST controller, 42, 47, 58 bit-slice, 152, 154, 174-176 branch and bound algorithm, 73 bridging faults, 176, 180 built-in self-test, viii, CAD tools, 52 carry, see output carry CEBS, 42 cellular automata, 77, 112 checkerboard pattern, 56 checksum, 35 circular buffer, 188 circular self-test path, 46 clock domain, 40 comb filter, 196 combinational faults, 174 compaction scheme, 32, 165, 178, 185, 187, 193, 199, 208 cascaded, 112, 139, 195 transient behavior, 114 diagnostic resolution, 117 ones-count, 34 transient behavior, 37, 94 comparator, 56, 164 266 compression ratio, 191 concurrent BIST, 47 congruential generation, 82 contiguous subspaces, 63, 72 control path, 173 controllability, 4, 173 counter, 18, 34, 38, 47, 54, 56 coupling faults, 54 datapath, viii, ix, 82, 137, 139, 141, 142,144,173,174,178,180182, 205, 207 data-flow graph, 165, 176 decompressor, 26, 188 cycle, 189 defect level, vii delay faults, 10, 79 Delta-Sigma Modulation, 197 design for testability, vii deterministic patterns, 25 diagnostic program, 128-132 diagnostic resolution, 122 approximation, 125 diagnostic tree, 128 diffraction, 28 digital decimator, 196 easy-to-test faults, 25, 168 edge counting, 34 entropy, 173, 198 error compensation, 112, 195 error models, 36 error pattern, 89, 112, 114 opposite, 98 single, 94 error polynomial, 35 error-free signatures, 127 ex-situ BIST, 40 exhaustive state coverage, 65 exhaustive testing, 17 external faults, 89, 101 injection, 88, 92, 216 Index fault collapsing, 167 fault coverage, 2, 20, 84, 174, 201 fault diagnosis, 117 adaptive approach, 127 fault dictionary, 127 fault dropping, 147, 167 fault list, 121 fault location, 127 fault simulation, 101, 121, 139 concurrent, 169 functional, 148, 150-151 hierarchical, 148, 149 probabilistic, 16 feedback polynomial, 25 finite state machine, 47, 54, 205 full adder, 174, 197 full scan, 84 functional fault model, 148 gain factor, 209 gate level fault simulator, 83 Hamming distance, 28, 79, 80 hard-to-test faults, 25, 168 IEEE 1149.1, 12, 49, 53 in-situ BIST, 40 incrementer, 66, 69, 73 initial value, 66, 73 initialization, input carry, 72, 90, 137, 197 intellectual property, 53 inter-LFSR taps, 188 fc-latency, 63 latency, 64, 73, 178 leaking integrator, 207 LFSR, 19, 33, 54, 75, 76, 78, 79, 112, 121 characteristic polynomial, 19 interconnection network, 188 multiple polynomial, 26 Index 267 type 2, 76 linear dependency, 43, 83 LOCST, 42 LSSD, 10 double-latch design, 11 single-latch design, 11 oscillators, output carry, 66-69, 90, 174 group,175 stored, 104 overflow, 208 oversampling techniques, 196 MAC instruction, 140 MAC module, 135 MAC-based generator, 84, 140, 185 March C test, 55, 192-193 march tests, 54 Markov chain, 37, 57, 89, 91, 210 aperiodicity, 89 double stochastic, 90 irreducibility, 89 microcontroller, 141 microprogram counter, 142 microprogram memory, 5, 142 MISR, 34, 46, 56, 77, 112 mixed congruential generator, 141 mixed-mode generation, 25 Monte Carlo simulations, 82, 199, 201 m-sequence, 19 multiple chip modules, 81 multiple faults, 195 multiplexor, 10, 154, 164 multiplier, 81, 140 array, 141, 154 faulty output, 155 Booth, 141, 159 parity checking, 90 partitioning, pattern mapping, 30 performance degradation, vii-ix, 3, 10, 61, 173, 194, 203, 206 phase shifter, 44 power dissipation, 40 primitive fault, 91 sufficient conditions, 93 primitive polynomial, 19, 38, 83, 188 program memory, 138 PROOFS, 164, 166 propagation profile, 16 pseudo-exhaustive testing, 17 pseudo-random patterns, 19, 84, 121, 185, 191 pseudo-random testing, 19 neighborhood, 77 NPS faults, 54 observability, 5, 173, 180 off-line BIST, 39 on-line BIST, ix, 39 operand interleaving, 71 optimal generators, 65 gradient approach, 75 RAM, 53 random logic, 81, 185 random pattern resistant faults, 23 rank of fault, 89 read/write logic faults, 195 redundancy, redundant faults, Register Transfer Level, 53, 173 reseeding, 25, 76 ROM, 30 RUNBIST, 14, 48 saturation logic, 208 scan cells, 30 scan chains, 8, 81, 185 multiple, 81, 127 scrambling, 55, 199, 201 268 segmentation, 17 self-modifying program, 138 sensitized-path segmentation, 18 sequential depth, 173 serial access design, 55 spherical patterns, 28 SST, 47 state coverage, 62, 178, 198 stuck-at faults, 54, 84, 101,139,152, 154, 176, 180, 181, 191,197, 201, 205 stuck-open faults, 79 STUMPS, 43 subtractor, 153, 164 superposition, 46, 127 syndrome testing, 34 synthesis benchmarks, 163, 178 autoregressive lattice filter, 165 bandpass filter, 165, 181 discrete cosine transform, 165 elliptic wave filter, 165, 178 implementations, 166 terminal faults, 176 test access port, 12 test application time, 10, 17, 81 test confidence, 20 test cube, 25 test data compression, 25, 188-190 test kernel, 135 test length, 20, 21 test points, 6, 15, 173 test-per-clock BIST, 41 test-per-scan BIST, 42 testability, transition counting, 34 transition coverage, 199 transition diagram, 89, 105, 209 transition faults, 54 transition testing, 79 transparent BIST, 57 two-dimensional generator, 43, 81 Index underflow, 208 unidirectional faults, 212 unique signatures, 118 generation, 120 variable-length seeds, 26 verification testing, 18 weighted pseudo-random testing, 23 weighted random patterns, 77 generation, 78 ... Built-in Self- Test tests for redundant faults Moreover, redundant faults may invalidate tests for nonredundant faults Unfortunately, the redundancy is often introduced inadvertently and is therefore... required for the test hardware to perform test- pattern generation and test- response compaction Some performance degradation may be introduced due to the presence of multiplexers needed to apply the test. .. can be tested It reduces the cost of manufacturing testing by shortening the test application / Built-in Self- Test time, minimizing the amount of test data stored, and lowering the cost of test? ?

Ngày đăng: 08/03/2016, 11:20

Mục lục

  • Arithmetic Built-in Self-Test for Embedded Systems

  • Contents

  • Preface

  • 1. Built-in Self-Test

    • 1.1 Introduction

    • 1.2 Design for Testability

      • 1.2.1 Controllability and Observability

      • 1.2.2 Ad Hoc Techniques

      • 1.2.3 Scan Designs

      • 1.2.4 Boundary-Scan Architecture

      • 1.2.5 Test Point Insertion

      • 1.3 Generation of Test Vectors

        • 1.3.1 Exhaustive Testing

        • 1.3.2 Pseudo-Exhaustive Testing

        • 1.3.3 Pseudo-Random Testing

        • 1.3.4 Weighted Patterns

        • 1.3.5 Reseeding of Linear Feedback Shift Registers

        • 1.3.6 Diffraction

        • 1.3.7 Pattern Mapping

        • 1.3.8 Scan-Encoded Patterns

        • 1.4 Compaction of Test Responses

          • 1.4.1 Objectives and Requirements

          • 1.4.2 Compaction Schemes

          • 1.4.3 Error Models and Aliasing

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan