- freely available
J. Low Power Electron. Appl. 2019, 9(2), 18; https://doi.org/10.3390/jlpea9020018
2. Background of Scan Compression Technology
2.1. Partial Scan
2.2. Fully Scan-Based Techniques
2.2.1. Random Access
2.2.2. Code-Based Techniques
2.2.3. Linear Decompressor Based Techniques
- Linear combinational decompressor: The linear combinational decompressor is made up of combinational logic, which spreads the input test data received from ATE into the output space of the decompressor. The output space of the decompressor is connected into many internal scan chains. The XOR  network is a commonly used circuit in linear decompressors [2,3,12].
- Linear sequential decompressor: These decompressors are constructed using LFSRs, a ring generator and cellular automata [2,3]. There are two types of sequential decompressors.
- Fixed length sequential decompressors: Fixed length sequential decompressor techniques make use of the previous state value of scan slice to calculate new values in current clock cycles. Linear combinational decompressors suffer from handling more specified values in scan load test patterns in the worst-case scenarios. This is handled better in sequential decompressors to achieve better compression. The sequential decompressor performance increases with an increased number of sequential cells. This compression technique gets test load patterns fed from the ATE to the sequential logic (LFSR or cellular automata or ring generators) and then distributes this data to internal scan chains through combinational logic like XOR network. This compression technique suffers from encoding efficiency issues when more care bits are specified in the scan load test set [2,3].
- Variable length sequential decompressor: This scan compression technique makes it possible to vary the number of free variables to be used for each test cube. The method provides improved encoding efficiency but comes at increased cost. The disadvantage of this technique is need for a gating channel. Various variable length linear sequential decompressors have been proposed [2,3].
2.2.4. Broadcasting Based Techniques
- General (without reconfiguration) broadcasting-based techniques: The scan compression technique  proposed supplies scan load test patterns through a single dedicated scan-data-input to multiple scan chains which are connected. Compared to scan mode, this technique reduces TDV and TAT, but suffers from the correlation of specified values in scan cells. The technique proposed in  shares scan-data-in among multiple circuits to supply scan load test patterns. Various scan compression techniques in this category are proposed in [2,3,4,15,16,17].
- Broadcasting techniques with static reconfiguration: The static reconfiguration-based broadcasting scan decompressor techniques use sequential and combinational logic in the decompressor with a reconfiguration capability to handle correlation among scan cells in the scan chains. These techniques are adopted and are currently being used in the industry. In this technique, the reconfiguration of scan chains takes place while applying a new scan load test pattern. The method proposed in Illinois scan dual mode architecture reduces the length of the scan chain in shared scan-data-in mode and reduced TAT [18,19].
- Broadcasting techniques with dynamic reconfiguration: In this scan compression technique, the selection of different configurations of scan chains happens while loading scan load test patterns. This feature of the broadcast scan compression leads to better compression, TAT and TDV. The disadvantage of these techniques is a greater need for control information.
- Broadcasting techniques with streaming dynamic reconfiguration: The streaming decompressor-based broadcasting scan compression  which supports reconfiguration of scan compression for better compression ratio, reduced TAT and TDV. In this technique, each clock cycle is applied when data is fed from the ATE to the decompressor, and the same data is streamed into the internal scan chains in a diagonal fashion; Figure 2a shows the architecture. Figure 3a shows the diagonal correlation introduced in the streaming compression technique. Our proposed AE method is validated using a scan synthesis technique; details are provided in the subsequent sections.
- Broadcasting techniques with non-streaming dynamic reconfiguration: In these scan compression techniques, scan load test data is loaded from ATE into the shift register of the decompressor. Then, data is shifted into each scan slice of the scan chain on a per clock cycle basis. These compression techniques have horizontal dependency, as shown in Figure 3b. These techniques are adopted by the industry and provide better compression, TAT, and TDV, but suffer from compression-induced correlation of scan cells. See [21,22,23,24,25] for more details.
- Broadcasting techniques with patterns overlapping: The theme behind pattern overlapping is to identify the overlap of the scan load test pattern for the given scan load pattern, which is already generated by the ATPG. The test pattern overlap is identified by shifting non-overlapping beginning bits and finding overlapping bits at the end of the current scan load test set with the next scan load test set. This way, a new pattern is created. This technique is good at achieving higher compression ratios and TDV reduction. A statistical analysis-based patterns overlapping method for scan architecture was proposed in . The patterns overlapping-based technique to reduce TDV and TAT was proposed in . Dynamic structures are used to store the test data by encoding sparse test vector. The patterns overlapping technique, which works by exploiting the unknown values in scan load test patterns, is proposed in . The deterministic patterns slice overlapping technique based on LFSR reseeding is proposed in  to reduce TDV.
- Broadcasting techniques with hybrid approach
- Broadcasting and patterns overlapping: This hybrid technique takes advantage of both the broadcasting and the pattern overlapping scan compression techniques. These techniques achieve better compression ratios and TDV. The TAT of these techniques is huge, as they need to figure out the next pattern based on the current to identify the overlapping pattern. A hybrid approach combining broadcast-based scan architecture along with patterns overlapping is proposed in . The broadcast-based patterns overlapping technique was proposed in . It is claimed that it is able to reduce TAT with increased TDV.
- Broadcasting techniques with a mixture of both compression and scan mode: The hybrid approach, which is a combination of scan and compression to improve pattern count in the presence of unknowns in scan unload patterns, is proposed in . This significantly reduces the pattern count. The proposed AE method results in improvements in TC and reductions in TPC, based on an analysis of scan load patterns.
- Broadcasting techniques with circular scan architecture: In this architecture [33,34,35], the first scan load test pattern is loaded into all internal scan chains. Each scan channel output is connected back to the input of the same channel. These chains have the option of getting scan load data from the ATE or the shift-in capture response of current pattern as the next scan load test pattern for the chain. The disadvantage of these techniques is that the pattern being circulated is non-deterministic.
- Broadcasting techniques with tree-based architecture: Scan tree-based compression techniques are based on compatible scan cells considering ATPG generated test patterns. The success of scan tree-based techniques depends on the presence of compatible sets of scan cells. These techniques are not feasible for highly compacted scan test patterns. A scan tree-based compression technique algorithm which is able to handle scan cells having little or no compatibility in the given scan test patterns is proposed in . The dynamically-configurable dual mode scan tree-based compression architecture is proposed in . This works in both scan mode and scan tree mode. A tree-based LFSR which exploits the merits of both input scan-data-in sharing and re-use methodology is presented in  to test both sequential and combinational circuits.
3. Coverage Reduction Cases Because Of Scan Compression
- The fault being detected must have structural correlation on two or more scan cells.
- These two or more scan cells must be present in different scan chains and fan-out from the same data bit/ATE channel.
Sparseness in Output Space of the Decompressor
4. Proposed AE Method
4.1. Scan Cells Exclusion and Care Bits Density
4.2. AE Method
4.3. Flow Chart Showing Execution Flow of the AE Method
5. Aggressive Exclusion of Scan Cells Algorithm from Compression Architecture
|Algorithm 1: GetExtScanChains()|
Ts—Set of scan load test stimulus
Si—Number of Scan-Data-In Ports assigned to scan compression technique
Chains—Array of external chains holding relevant scan cells excluded from compression technique
Let Np = SizeOf(Ts) // Number of scan load test stimulus
Let Skip5Per = Np × (5/100) // Skipping first 5% Patterns
Let C = 1
While (Ts[C] < Skip5Per)
Let C = C + 1
While (C ≤ Np)
Let Tp = Ts[C]
Let Len = Length[Tp]
Let N = Len
While (Len > 0)
If (Tp[Len] == ‘0’ OR Tp[Len] == ‘1’) // considering care bit 0 or 1
SFF[Len] = SFF[Len] + 1
CB = CB + 1
Let Len = Len − 1
Let C = C + 1
O_SFF = ORDER_IN_DESCENDING(SFF, N) // sorting scan cells in descending order based on specified value ranking of scan cell
Let LenExt = FindLenCh() // Finding length of the external scan chains
Let N_Ext = Si / 2 // Number of external scan chains equal to 50% of scan-data-in ports
Let Max = CB × (43/100) // maximum up to 43% of total cbd
Let Min = CB × (12 /100) // minimum 12% of total cbd
Let Chains = CreateExtChains(N_Ext, O_SFF, LenExt, Max, Min) // set of external scan chains
Return Chains // Set of external scan chains
|Algorithm 2: FindLenCh()|
Test Protocol file of compression technique
eChLen—length of an external chain
Read Test protocol file of compression technique
Find length of longest internal scan chain as ‘L’
Find serial register length as ‘Srl’
eChLen = L + Srl // Length of an external scan chain calculation
|Algorithm 3: Function: CreateExtChains()|
N_Ext—Number of external chains to be formed
O_SFF—Set scan cells having specified value in number of scan load test stimulus
LenExt—Length of each external chain being formed
Max—43% value of care bits density
Min—12% value of the care bits density
Chains—To hold scan cells of the external chains
Let Cnt = 1
Let CB = 0
Let N = SizeOf(O_SFF)
Let X = 1
While (Cnt < N)
Let CB = CB + O_SFF[Cnt] // care bits density
If (CB ≤ Max) // Check whether care bits density of scan chain is less than or equal to the maximum limit
Let Chains[N_Ext][x] = O_SFF[Cnt]
If (X < LenExt)
Let X = X + 1
Let X = 1
Let N_Ext = N_Ext − 1
If (CB < Min) // if care bits density is less than the minimum threshold ignore such chains
6. Procedure of Aggressive Exclusion Method
|Algorithm 4: Phase I_FlowOfExecution()|
Verilog_netlist—Verilog netlist which is DUT
Verilog_libraries—Verilog libraries for lib cells
DFT configuration—ATE channels, Internal chains and etc.
TPC—Test Patterns Count
Input scan synthesis configuration, including chains count, ATE channels, and etc.
Invoke scan synthesis and insertion engine
Write out scan synthesized output netlist
Write out scan protocol file
Invoke ATPG engine to generate test patterns for all the faults including stuck-at, transition and etc.
Measure percentage of TC and TPC
|Algorithm 5: PhaseII_FlowOfExecution()|
Verilog _netlist—Verilog netlist which is DUT
Verilog_libraries—Verilog libraries for lib cells
DFT configuration—ATE Channels, Internal scan chains and External scan chains specification
TPC—Test Patterns Count
TCF—Test Coverage at full run of AE method
TPCF—Test Patterns Count at full run of AE method
Input scan synthesis configuration, including internal scan chains, number of the ATE channels, and etc.
Allot 50% scan-data-in ports into the external chains
Allot 50% of scan-data-in ports into compression technique
Specification for external scan chains creation
Invoke scan synthesis and insertion engine
Write out scan synthesized output netlist
Write out scan protocol file
Invoke ATPG engine to generate the test patterns for all the faults including stuck-at, transition and etc.
Measure percentage of TC and TPC at same coverage as produced at Step (8) of Phase I
Measure percentage of TCF and TPCF at the end of full run and compare it with Step (8) of Phase I
7. Experimental Results
Conflicts of Interest
- Kobayashi, S.; Edahiro, M.; Kubo, M. Scan-chain optimization algorithms for multiple scan-paths. In Proceedings of the 1998 Asia and South Pacific Design Automation Conference, Yokohama, Japan, 13 February 1998; IEEE: Piscataway, NJ, USA, 1998; pp. 301–306. [Google Scholar]
- Wang, L.T.; Wu, C.W.; Wen, X. VLSI Test Principles and Architectures: Design for Testability; Elsevier: Amsterdam, The Netherland, 2006. [Google Scholar]
- Touba, N.A. Survey of test vector compression techniques. IEEE Des. Test Comput. 2006, 23, 294–303. [Google Scholar] [CrossRef]
- Kapur, R.; Mitra, S.; Williams, T.W. Historical perspective on scan compression. IEEE Des. Test Comput. 2008, 25, 114–120. [Google Scholar] [CrossRef]
- Agrawal, V.D.; Cheng, T.K.T.; Johnson, D.D.; Lin, T. A complete solution to the partial scan problem. In Proceedings of the International Test Conference 1987, Washington, DC, USA, 30 August–3 September 1987; pp. 44–51. [Google Scholar]
- Park, S. A partial scan design unifying structural analysis and testabilities. Int. J. Electron. 2001, 88, 1237–1245. [Google Scholar] [CrossRef]
- Sharma, S.; Hsiao, M.S. Combination of structural and state analysis for partial scan. In Proceedings of the VLSI Design 2001. Fourteenth International Conference on VLSI Design, Bangalore, India, 7 January 2001; IEEE: Piscataway, NJ, USA, 2001; pp. 134–139. [Google Scholar]
- Chickermane, V.; Patel, J.H. An optimization based approach to the partial scan design problem. In Proceedings of the International Test Conference 1990, Washington, DC, USA, 10–14 September 1990; IEEE: Piscataway, NJ, USA, 1990; pp. 377–386. [Google Scholar]
- Jou, J.Y.; Cheng, K.T. Timing-driven partial scan. IEEE Des. Test Comput. 1995, 12, 52–59. [Google Scholar]
- Kagaris, D.; Tragoudas, S. Retiming-based partial scan. IEEE Trans. Comput. 1996, 45, 74–87. [Google Scholar] [CrossRef]
- Narayanan, S.; Gupta, R.; Breuer, M.A. Optimal configuring of multiple scan chains. IEEE Trans. Comput. 1993, 42, 1121–1131. [Google Scholar] [CrossRef]
- Balakrishnan, K.J.; Touba, N.A. Improving linear test data compression. IEEE Trans. Very Larg. Scale Integr. (VLSI) Syst. 2006, 14, 1227–1237. [Google Scholar] [CrossRef]
- Lee, K.J.; Chen, J.J.; Huang, C.H. Using a single input to support multiple scan chains. In Proceedings of the 1998 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers, San Jose, CA, USA, 8–12 November 1998; IEEE: Piscataway, NJ, USA, 1998; pp. 74–78. [Google Scholar]
- Hsu, F.F.; Butler, K.M.; Patel, J.H. A Case Study on the Implementation of the Illinois Scan Architecture. In Proceedings of the International Test Conference 2001, Baltimore, MD, USA, 1 November 2001; IEEE: Piscataway, NJ, USA, 2001; p. 538. [Google Scholar]
- Hamzaoglu, I.; Patel, J.H. Reducing test application time for full scan embedded cores. In Proceedings of the Digest of Papers. Twenty-Ninth Annual International Symposium on Fault-Tolerant Computing, Madison, WI, USA, 15–18 June 1999; IEEE: Piscataway, NJ, USA, 1999; pp. 260–267. [Google Scholar]
- Shah, M.A.; Patel, J.H. Enhancement of the Illinois scan architecture for use with multiple scan inputs. In Proceedings of the IEEE Computer Society Annual Symposium on VLSI, Lafayette, LA, USA, 19–20 February 2004; IEEE: Piscataway, NJ, USA, 2004; pp. 167–172. [Google Scholar]
- Lee, K.J.; Chen, J.J.; Huang, C.H. Broadcasting test patterns to multiple circuits. IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst. 1999, 18, 1793–1802. [Google Scholar]
- Pandey, A.R.; Patel, J.H. Reconfiguration technique for reducing test time and test data volume in Illinois scan architecture based designs. In Proceedings of the 20th IEEE VLSI Test Symposium (VTS 2002), Monterey, CA, USA, 28 April–2 May 2002; IEEE: Piscataway, NJ, USA, 2002; pp. 9–15. [Google Scholar]
- Jas, A.; Pouya, B.; Touba, N.A. Virtual scan chains: A means for reducing scan length in cores. In Proceedings of the 18th IEEE VLSI Test Symposium, Montreal, QC, Canada, 30 April–4 May 2000; IEEE: Piscataway, NJ, USA, 2000; pp. 73–78. [Google Scholar]
- Chandra, A.; Kapur, R.; Kanzawa, Y. Scalable adaptive scan (SAS). In Proceedings of the Conference on Design, Automation and Test in Europe, Nice, France, 20–24 April 2009; European Design and Automation Association: Leuven, Belgium, 2009; pp. 1476–1481. [Google Scholar]
- Samaranayake, S.; Sitchinava, N.; Kapur, R.; Amin, M.B.; Williams, T.W. Dynamic scan: Driving down the cost of test. Computer 2002, 10, 63–68. [Google Scholar] [CrossRef]
- Li, L.; Chakrabarty, K. Test set embedding for deterministic BIST using a reconfigurable interconnection network. IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst. 2004, 23, 1289–1305. [Google Scholar] [CrossRef]
- Sitchinava, N.; Gizdarski, E.; Samaranayake, S.; Neuveux, F.; Kapur, R.; Williams, T.W. Changing the scan enable during shift. In Proceedings of the 22nd IEEE VLSI Test Symposium, Napa Valley, CA, USA, 25–29 April 2004; IEEE: Piscataway, NJ, USA, 2004; pp. 73–78. [Google Scholar]
- Wang, L.T.; Wen, X.; Furukawa, H.; Hsu, F.S.; Lin, S.H.; Tsai, S.W.; Abdel-Hafez, K.S.; Wu, S. VirtualScan: A new compressed scan technology for test cost reduction. In Proceedings of the 2004 International Conference on Test, Charlotte, NC, USA, 26–28 October 2004; IEEE: Piscataway, NJ, USA, 2004; pp. 916–925. [Google Scholar]
- Han, Y.; Li, X.; Swaminathan, S.; Hu, Y.; Chandra, A. Scan data volume reduction using periodically alterable MUXs decompressor. In Proceedings of the 14th Asian Test Symposium (ATS’05), Calcutta, India, 18–21 December 2005; IEEE: Piscataway, NJ, USA, 2005; pp. 372–377. [Google Scholar]
- Su, C.; Hwang, K. A serial scan test vector compression methodology. In Proceedings of the IEEE International Test Conference—(ITC), Baltimore, MD, USA, 17–21 October 1993; IEEE: Piscataway, NJ, USA, 1993; pp. 981–988. [Google Scholar]
- Jenicek, J.; Novak, O. Test pattern compression based on pattern overlapping. In Proceedings of the 2007 IEEE Design and Diagnostics of Electronic Circuits and Systems (DDECS’07), Krakow, Poland, 11–13 April 2007; IEEE: Piscataway, NJ, USA, 2007; pp. 1–6. [Google Scholar]
- Rao, W.; Bayraktaroglu, I.; Orailoglu, A. Test application time and volume compression through seed overlapping. In Proceedings of the 40th Annual Design Automation Conference, Anaheim, CA, USA, 2–3 June 2003; ACM: New York, NY, USA, 2003; pp. 732–737. [Google Scholar]
- Li, J.; Han, Y.; Li, X. Deterministic and low power BIST based on scan slice overlapping. In Proceedings of the 2005 IEEE International Symposium on Circuits and Systems (ISCAS 2005), Kobe, Japan, 23–26 May 2005; IEEE: Piscataway, NJ, USA, 2005; pp. 5670–5673. [Google Scholar]
- Chloupek, M.; Novak, O. Test pattern compression based on pattern overlapping and broadcasting. In Proceedings of the 2011 10th International Workshop on Electronics, Control, Measurement and Signals (ECMS), Liberec, Czech, 1–3 June 2011; IEEE: Piscataway, NJ, USA, 2011; pp. 1–5. [Google Scholar]
- Chloupek, M.; Novak, O.; Jenicek, J. On test time reduction using pattern overlapping, broadcasting and on-chip decompression. In Proceedings of the 2012 IEEE 15th International Symposium on Design and Diagnostics of Electronic Circuits & Systems (DDECS), Tallinn, Estonia, 18–20 April 2012; IEEE: Piscataway, NJ, USA, 2012; pp. 300–305. [Google Scholar]
- Shantagiri, P.V.; Kapur, R. Handling Unknown with Blend of Scan and Scan Compression. J. Electron. Test. 2018, 34, 135–146. [Google Scholar] [CrossRef]
- Arslan, B.; Orailoglu, A. CircularScan: A scan architecture for test cost reduction. In Proceedings of the Design, Automation and Test in Europe Conference and Exhibition, Paris, France, 16–20 February 2004; IEEE: Piscataway, NJ, USA, 2004; pp. 1290–1295. [Google Scholar]
- Azimipour, M.; Eshghi, M.; Khademzahed, A. A Modification to Circular-Scan Architecture to improve test data compression. In Proceedings of the 15th International Conference on Advanced Computing and Communications (ADCOM 2007), Guwahati, India, 18–21 December 2007; IEEE: Piscataway, NJ, USA, 2007; pp. 27–33. [Google Scholar]
- Azimipour, M.; Fathiyan, A.; Eshghi, M. A parallel Circular-Scan architecture using multiple-hot decoder. In Proceedings of the 2008 15th International Conference on Mixed Design of Integrated Circuits and Systems, Poznan, Poland, 19–21 June 2008; IEEE: Piscataway, NJ, USA, 2008; pp. 475–480. [Google Scholar]
- Banerjee, S.; Chowdhury, D.R.; Bhattacharya, B.B. An efficient scan tree design for compact test pattern set. IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst. 2007, 26, 1331–1339. [Google Scholar] [CrossRef]
- Bonhomme, Y.; Yoneda, T.; Fujiwara, H.; Girard, P. An efficient scan tree design for test time reduction. In Proceedings of the 9th IEEE European Test Symposium (ETS’04), Corsica, France, 23–26 May 2004; IEEE: Piscataway, NJ, USA, 2004; pp. 174–179. [Google Scholar]
- Rau, J.C.; Jone, W.B.; Chang, S.C.; Wu, Y.L. Tree-structured LFSR synthesis scheme for pseudo-exhaustive testing of VLSI circuits. IEE Proc.-Comput. Digit. Technol. 2000, 147, 343–348. [Google Scholar] [CrossRef]
- DFTMAX Ultra New Technology to Address Key Test Challenges. Available online: https://www.synopsys.com/content/dam/synopsys/implementation&signoff/white-papers/dftmax-ultra-wp.pdf (accessed on 5 May 2019).
- TetraMAX. Synopsys ATPG Solution. Available online: http://www.synopsys.com/products/test/tetramax_ds.pdf (accessed on 1 June 2018).
|Test Patterns||Percentage of TC Achieved||Type of Faults|
|First 5% of TPC||56% to 86%||Easy to detect faults including random and deterministic.|
|Last 95% of TPC||18% to 39.17%||Hard-to-detect faults.|
|Name of the Circuit||Overall TPC Reduction|
|C1||Up to 77.13%|
|C2||Up to 76.13%|
|C3||Up to 24.91%|
|C5||Up to 22.68%|
|C6||Up to 17.55%|
|Name of Circuit||Percentage of TC Improvement|
|C1||Up to 1.33%|
|C2||Up to 1.22%|
|C3||Up to 0.09%|
|C4||Up to 0.08%|
|C5||Up to 0.16%|
|C6||Up to 0.16%|
|Circuit||#Scan Cells||#SI/SO||#Chains||Scan Compression||AE Method at Same Coverage||Full Run of AE Method||Improvements||External Chains Contributing|
© 2019 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).