A Model Checking-Based Method of Functional Test Generation for HDL Descriptions

Automated test generation is a promising direction in hardware verification research area. Functional test generation methods based on models are widespread at the moment. In this paper, a functional test generation method based on model checking is proposed and compared to existing solutions. Autom...

Full description

Bibliographic Details
Published in:Труды Института системного программирования РАН
Main Authors: M. S. Lebedev, S. A. Smolov
Format: Article
Language:English
Published: Russian Academy of Sciences, Ivannikov Institute for System Programming 2018-10-01
Subjects:
Online Access:https://ispranproceedings.elpub.ru/jour/article/view/138
_version_ 1848652002606710784
author M. S. Lebedev
S. A. Smolov
author_facet M. S. Lebedev
S. A. Smolov
author_sort M. S. Lebedev
collection DOAJ
container_title Труды Института системного программирования РАН
description Automated test generation is a promising direction in hardware verification research area. Functional test generation methods based on models are widespread at the moment. In this paper, a functional test generation method based on model checking is proposed and compared to existing solutions. Automated model extraction from the hardware design’s source code is used. Supported HDLs include VHDL and Verilog. Several kinds of models are used at different steps of the test generation method: guarded action decision diagram (GADD), high-level decision diagram (HLDD) and extended finite-state machine (EFSM). The high-level decision diagram model (which is extracted from the GADD model) is used as a functional model. The extended finite-state machine model is used as a coverage model. The aim of test generation is to cover all the transitions of the extended finite state machine model. Such criterion leads to the high HDL source code coverage. Specifications based on transition and state constraints of the EFSM are extracted for this purpose. Later, the functional model and the specifications are automatically translated into the input format of the nuXmv model checking tool. nuXmv performs model checking and generates counterexamples. These counterexamples are translated to functional tests that can be simulated by the HDL simulator. The proposed method has been implemented as a part of the HDL Retrascope framework. Experiments show that the method can generate shorter tests than the FATE and RETGA methods providing the same or better source code coverage.
format Article
id doaj-db5cd6bc2a3c4fd88d1b58c262c5cfae
institution Directory of Open Access Journals
issn 2079-8156
2220-6426
language English
publishDate 2018-10-01
publisher Russian Academy of Sciences, Ivannikov Institute for System Programming
record_format Article
spelling doaj-db5cd6bc2a3c4fd88d1b58c262c5cfae2025-11-02T23:33:50ZengRussian Academy of Sciences, Ivannikov Institute for System ProgrammingТруды Института системного программирования РАН2079-81562220-64262018-10-01284415610.15514/ISPRAS-2016-28(4)-3138A Model Checking-Based Method of Functional Test Generation for HDL DescriptionsM. S. Lebedev0S. A. Smolov1Институт системного программирования РАНИнститут системного программирования РАНAutomated test generation is a promising direction in hardware verification research area. Functional test generation methods based on models are widespread at the moment. In this paper, a functional test generation method based on model checking is proposed and compared to existing solutions. Automated model extraction from the hardware design’s source code is used. Supported HDLs include VHDL and Verilog. Several kinds of models are used at different steps of the test generation method: guarded action decision diagram (GADD), high-level decision diagram (HLDD) and extended finite-state machine (EFSM). The high-level decision diagram model (which is extracted from the GADD model) is used as a functional model. The extended finite-state machine model is used as a coverage model. The aim of test generation is to cover all the transitions of the extended finite state machine model. Such criterion leads to the high HDL source code coverage. Specifications based on transition and state constraints of the EFSM are extracted for this purpose. Later, the functional model and the specifications are automatically translated into the input format of the nuXmv model checking tool. nuXmv performs model checking and generates counterexamples. These counterexamples are translated to functional tests that can be simulated by the HDL simulator. The proposed method has been implemented as a part of the HDL Retrascope framework. Experiments show that the method can generate shorter tests than the FATE and RETGA methods providing the same or better source code coverage.https://ispranproceedings.elpub.ru/jour/article/view/138цифровая аппаратурафункциональная верификациястатический анализгенерация тестовохраняемое действиевысокоуровневая решающая диаграммарасширенный конечный автоматпроверка модели
spellingShingle M. S. Lebedev
S. A. Smolov
A Model Checking-Based Method of Functional Test Generation for HDL Descriptions
цифровая аппаратура
функциональная верификация
статический анализ
генерация тестов
охраняемое действие
высокоуровневая решающая диаграмма
расширенный конечный автомат
проверка модели
title A Model Checking-Based Method of Functional Test Generation for HDL Descriptions
title_full A Model Checking-Based Method of Functional Test Generation for HDL Descriptions
title_fullStr A Model Checking-Based Method of Functional Test Generation for HDL Descriptions
title_full_unstemmed A Model Checking-Based Method of Functional Test Generation for HDL Descriptions
title_short A Model Checking-Based Method of Functional Test Generation for HDL Descriptions
title_sort model checking based method of functional test generation for hdl descriptions
topic цифровая аппаратура
функциональная верификация
статический анализ
генерация тестов
охраняемое действие
высокоуровневая решающая диаграмма
расширенный конечный автомат
проверка модели
url https://ispranproceedings.elpub.ru/jour/article/view/138
work_keys_str_mv AT mslebedev amodelcheckingbasedmethodoffunctionaltestgenerationforhdldescriptions
AT sasmolov amodelcheckingbasedmethodoffunctionaltestgenerationforhdldescriptions
AT mslebedev modelcheckingbasedmethodoffunctionaltestgenerationforhdldescriptions
AT sasmolov modelcheckingbasedmethodoffunctionaltestgenerationforhdldescriptions