6 CONCLUSIONS
This paper investigated hierarchical clustering as a
design approach for obtaining minimal set test cases
for functional verification of combinational circuits.
The authors propose a novel distance-based selection
method for choosing a fraction of test cases from the
clusters obtained as an output of the hierarchical clus-
tering process. Furthermore, the quality of clusters is
evaluated based on the score of the proposed diversity
metric. The diversity score is computed as the ratio
of an average value of diversity score across each in-
dividual cluster to the total number of test cases dis-
tributed across all clusters. The results indicate hier-
archical clustering with the distance-based selection
approach can be a promising strategy for obtaining
a wide number of unique test cases with maximum
coverage. In the preliminary work undergone in this
paper, the proposed approach is performed on the cir-
cuits with specific behavior. For example, a multi-
plier does multiplication on all test cases. For circuits
like an arithmetic logic unit (ALU) where a circuit’s
behavior changes by changing the control bits, test
cases should be grouped on the basis of control bits
before clustering and selection. In the future, the au-
thors will investigate this approach for grouping test
cases for sequential circuits, where several factors like
the order of test vectors, previous state, etc. need to be
considered. The extended work by the authors would
also test the feasibility of this approach on other prob-
lem domains such as identifying minimal test cases
for real-world regression datasets.
ACKNOWLEDGEMENTS
We express our sincere and heartfelt gratitude to all
the reviewers, with special mention of reviewer #5,
for their valuable comments and insights which has
greatly helped towards organization and restructuring
of the paper.
This work was supported with the financial sup-
port of the Science Foundation Ireland (SFI) grants
#16/IA/4605.
REFERENCES
Akman, O., Comar, T., Hrozencik, D., and Gonzales,
J. (2019). Chapter 11 - data clustering and self-
organizing maps in biology. In Robeva, R. and
Macauley, M., editors, Algebraic and Combinato-
rial Computational Biology, MSE/Mathematics in
Science and Engineering, pages 351–374. Academic
Press.
Ammann, P. and Knight, J. (1988). Data diversity: an ap-
proach to software fault tolerance. IEEE Transactions
on Computers, 37(4):418–425.
Benvenuto, C. J. (2012). Galois field in cryptography. Uni-
versity of Washington, 1(1):1–11.
Bindra, P., Kshirsagar, M., Vaidya, G., Gupt, K. K., Ryan,
C., and Kshirsagar, V. (2021). Insights into the ad-
vancements of Artificial Intelligence and Machine
Learning, the present state of art, and future prospects:
Seven decades of digital revolution.
Bishop, P. G. (1993). The variation of software survival
time for different operational input profiles (or why
you can wait a long time for a big bug to fail). In
FTCS-23 The Twenty-Third International Symposium
on Fault-Tolerant Computing, pages 98–107. IEEE.
Bushnell, M. L. and Agrawal, V. D. (2002). Essentials of
Electronic Testing for Digital, Memory and Mixed-
Signal VLSI Circuits, volume 17 of Frontiers in Elec-
tronic Testing. Springer US, Boston, MA.
Chan, F., Chen, T., Mak, I., and Yu, Y. (1996). Propor-
tional sampling strategy: guidelines for software test-
ing practitioners. Information and Software Technol-
ogy, 38(12):775–782.
Duran, J. W. and Ntafos, S. C. (1984). An evaluation of
random testing. IEEE Transactions on Software Engi-
neering, SE-10(4):438–444.
Gupt, K. K., Kshirsagar, M., Sullivan, J. P., and Ryan, C.
(2021a). Automatic test case generation for prime
field elliptic curve cryptographic circuits. In 2021
IEEE 17th International Colloquium on Signal Pro-
cessing Its Applications (CSPA), pages 121–126.
Gupt, K. K., Kshirsagar, M., Sullivan, J. P., and Ryan, C.
(2021b). Automatic test case generation for vulner-
ability analysis of galois field arithmetic circuits. In
2021 IEEE 5th International Conference on Cryptog-
raphy, Security and Privacy (CSP), pages 32–37.
Hamming, R. W. (1950). Error detecting and error cor-
recting codes. The Bell System Technical Journal,
29(2):147–160.
McCluskey, E. J. (1987). Exhaustive and pseudo-exhaustive
testing. Technical report, Stanford Univ CA Center for
Reliable Computing.
Muselli, M. and Liberati, D. (2000). Training digital cir-
cuits with hamming clustering. IEEE Transactions on
Circuits and Systems I: Fundamental Theory and Ap-
plications, 47(4):513–527.
Narciso, E. N., Delamaro, M. E., and De Lourdes Dos San-
tos Nunes, F. (2014). Test case selection: A systematic
literature review. International Journal of Software
Engineering and Knowledge Engineering, 24(4):653–
676.
Orso, A. and Rothermel, G. (2014). Software Testing: A
Research Travelogue (2000–2014). In Future of Soft-
ware Engineering Proceedings, FOSE 2014, pages
117–132, New York, NY, USA. Association for Com-
puting Machinery.
Pradhan, M. and Bhattacharya, B. B. (2021). A survey of
digital circuit testing in the light of machine learn-
ing. Wiley Interdisciplinary Reviews: Data Mining
and Knowledge Discovery, 11(1):e1360.
Hierarchical Clustering Driven Test Case Selection in Digital Circuits
595