A Test Pattern Generation Technique for Approximate Circuits Based on an ILP-Formulated Pattern Selection Procedure

Intrinsic resiliency of many today's applications opens new design opportunities. Some computation accuracy loss within the so-called resilient kernels does not affect the global quality of results. This has led the scientific community to introduce the approximate computing paradigm that exploits such a concept to boost computing system performances. By applying approximation to different layers, it is possible to design more efficient systems—in terms of energy, area, and performance—at the cost of a slight accuracy loss. In particular, at hardware level, this led to approximate integrated circuits. From the test perspective, this particular class of integrated circuits leads to new challenges. On the other hand, it also offers the opportunity of relaxing test constraints at the cost of a careful selection of so-called approximation-redundant faults. Such faults are classified as tolerable because of the slight introduced error. It follows that improvements in yield and test-cost reduction can be achieved. Nevertheless, conventional automatic test pattern generation (ATPG) algorithms, when not aware of the introduced approximation, generate test vectors covering approximation-redundant faults, thus reducing the yield gain. In this work, we show experimental evidence of such problem and present a novel ATPG technique to deal with it. Then, we extensively evaluate the proposed technique, and show that we are able to achieve an average yield improvement ranging from 19% up to 36% — compared to conventional ATPG—in terms of approximation-redundant fault coverage reduction. In some cases, the improvement can reach up to 100%.

[1]  Christos H. Papadimitriou,et al.  On the complexity of integer programming , 1981, JACM.

[2]  Andreas Gerstlauer,et al.  Multi-level approximate logic synthesis under general error constraints , 2014, 2014 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[3]  Kaushik Roy,et al.  SALSA: Systematic logic synthesis of approximate circuits , 2012, DAC Design Automation Conference 2012.

[4]  Melvin A. Breuer,et al.  Defect and error tolerance in the presence of massive numbers of defects , 2004, IEEE Design & Test of Computers.

[5]  Qiang Xu,et al.  Approximate Computing: A Survey , 2016, IEEE Design & Test.

[6]  A. Land,et al.  An Automatic Method for Solving Discrete Programming Problems , 1960, 50 Years of Integer Programming.

[7]  Fabrizio Lombardi,et al.  Design and Analysis of Approximate Compressors for Multiplication , 2015, IEEE Transactions on Computers.

[8]  Kaushik Roy,et al.  Analysis and characterization of inherent application resilience for approximate computing , 2013, 2013 50th ACM/EDAC/IEEE Design Automation Conference (DAC).

[9]  Arnaud Virazel,et al.  Investigation of Mean-Error Metrics for Testing Approximate Integrated Circuits , 2018, 2018 IEEE International Symposium on Defect and Fault Tolerance in VLSI and Nanotechnology Systems (DFT).

[10]  Jie Han,et al.  Approximate computing: An emerging paradigm for energy-efficient design , 2013, 2013 18th IEEE European Test Symposium (ETS).

[11]  Sandeep K. Gupta,et al.  A new circuit simplification method for error tolerant applications , 2011, 2011 Design, Automation & Test in Europe.

[12]  Melvin A. Breuer,et al.  Reduction of detected acceptable faults for yield improvement via error-tolerance , 2007 .

[13]  T. L. Saaty,et al.  The computational algorithm for the parametric objective function , 1955 .

[14]  Puneet Gupta,et al.  Trading Accuracy for Power with an Underdesigned Multiplier Architecture , 2011, 2011 24th Internatioal Conference on VLSI Design.

[15]  Andrew B. Kahng,et al.  Accuracy-configurable adder for approximate arithmetic designs , 2012, DAC Design Automation Conference 2012.

[16]  Rolf Drechsler,et al.  Approximation-aware testing for approximate circuits , 2018, 2018 23rd Asia and South Pacific Design Automation Conference (ASP-DAC).

[17]  Arnaud Virazel,et al.  On the Comparison of Different ATPG Approaches for Approximate Integrated Circuits , 2018, 2018 IEEE 21st International Symposium on Design and Diagnostics of Electronic Circuits & Systems (DDECS).

[18]  Rakesh Kumar,et al.  On reconfiguration-oriented approximate adder design and its application , 2013, 2013 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[19]  Muhammad Shafique,et al.  A low latency generic accuracy configurable adder , 2015, 2015 52nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[20]  Arnaud Virazel,et al.  Testing approximate digital circuits: Challenges and opportunities , 2018, 2018 IEEE 19th Latin-American Test Symposium (LATS).

[21]  Kaushik Roy,et al.  Substitute-and-simplify: A unified design paradigm for approximate and quality configurable circuits , 2013, 2013 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[22]  Clyde L. Monma,et al.  On the Computational Complexity of Integer Programming Problems , 1978 .

[23]  Sparsh Mittal,et al.  A Survey of Techniques for Approximate Computing , 2016, ACM Comput. Surv..

[24]  Gang Wang,et al.  Enhanced low-power high-speed adder for error-tolerant application , 2009, 2010 International SoC Design Conference.

[25]  Bharat Garg,et al.  ACM: An Energy-Efficient Accuracy Configurable Multiplier for Error-Resilient Applications , 2017, J. Electron. Test..

[26]  Kaushik Roy,et al.  ASLAN: Synthesis of approximate sequential circuits , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[27]  Yi Wu,et al.  An efficient method for multi-level approximate logic synthesis under error rate constraint , 2016, 2016 53nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[28]  Kaushik Roy,et al.  Approximate computing: An integrated hardware approach , 2013, 2013 Asilomar Conference on Signals, Systems and Computers.

[29]  Lukás Sekanina,et al.  EvoApproxSb: Library of approximate adders and multipliers for circuit design and benchmarking of approximation methods , 2017, Design, Automation & Test in Europe Conference & Exhibition (DATE), 2017.

[30]  Sandeep K. Gupta,et al.  Approximate logic synthesis for error tolerant applications , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).